WO2023230933A1 - Procédé et appareil de compression d'image, dispositif électronique, puce et support de stockage - Google Patents
Procédé et appareil de compression d'image, dispositif électronique, puce et support de stockage Download PDFInfo
- Publication number
- WO2023230933A1 WO2023230933A1 PCT/CN2022/096492 CN2022096492W WO2023230933A1 WO 2023230933 A1 WO2023230933 A1 WO 2023230933A1 CN 2022096492 W CN2022096492 W CN 2022096492W WO 2023230933 A1 WO2023230933 A1 WO 2023230933A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- code rate
- scan line
- current
- line
- compression parameters
- Prior art date
Links
- 238000007906 compression Methods 0.000 title claims abstract description 297
- 230000006835 compression Effects 0.000 title claims abstract description 277
- 238000000034 method Methods 0.000 title claims abstract description 83
- 230000008569 process Effects 0.000 claims abstract description 26
- 230000002829 reductive effect Effects 0.000 claims abstract description 13
- 230000007423 decrease Effects 0.000 claims description 28
- 230000004044 response Effects 0.000 claims description 25
- 230000009467 reduction Effects 0.000 claims description 6
- 230000000670 limiting effect Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 14
- 230000010355 oscillation Effects 0.000 abstract description 6
- 238000004364 calculation method Methods 0.000 abstract description 3
- 230000000875 corresponding effect Effects 0.000 description 33
- 238000004891 communication Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000009471 action Effects 0.000 description 5
- 230000003247 decreasing effect Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000013139 quantization Methods 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
Definitions
- the present disclosure relates to the field of image compression technology, and in particular, to an image compression method, device, electronic equipment, chip and storage medium.
- image compression methods based on the JPEG-LS standard require residual prediction of pixels to be compressed in adjacent scan lines based on the compression state of the current scan line, and residual prediction of the pixels to be compressed. The difference is quantized to encode and compress the quantized residual.
- the present disclosure provides an image compression method, device, electronic equipment, chip and storage medium to at least solve the technical problems existing in the related technology.
- an image compression method includes:
- the predicted code rate represents the compression parameters for the next scan based on the compression parameters corresponding to the current scan line. After the last scan line of the image is compressed, the final code rate of the image;
- the pixel data of the next scanning line is compressed.
- determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line includes:
- the compression parameter of the current scan line is reduced to obtain the compression parameter of the next scan line.
- determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line includes:
- the compression parameters of the next scan line are determined based on the predicted code rate, the code rate range, and the compression parameters of the current scan line.
- the method before determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line, the method further includes:
- Determining the compression parameters of the next scan line based on the predicted code rate, code rate range and compression parameters of the current scan line includes:
- the compression parameters of the next scan line are determined.
- the upper limit of the current code rate range is adjusted based on the predicted code rate of at least two scan lines before the current scan line and the predicted code rate of the current scan line, include:
- the method further includes:
- the method before determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line, the method further includes:
- the upper limit of the current code rate range is adjusted according to the attenuation factor corresponding to the current scan line.
- the attenuation factor is used to control the upper limit of the code rate to converge to the set target.
- Determining the compression parameters of the next scan line based on the predicted code rate, code rate range and compression parameters of the current scan line includes:
- the compression parameters of the next scan line are determined.
- the method further includes:
- the second line number threshold is obtained based on the total number of lines and the first proportional coefficient
- the second preset line value is determined as the second line number threshold.
- the method further includes:
- the attenuation factor is determined according to the current scan line number and the second line number threshold.
- determining the attenuation factor based on the current number of scanning lines and the second set threshold includes:
- the attenuation factor is obtained according to the current scanning line number and the corresponding relationship.
- the method further includes:
- the code rate range is determined according to the set target code rate and the set range coefficient.
- an image compression device includes:
- Parameter acquisition module used to obtain the compression parameters and code stream length of the current scan line, as well as the total length of the code stream from the first line to the current scan line;
- Code rate prediction module used to determine the predicted code rate of the current scan line based on the code stream length of the current scan line and the total length of the code stream from the first line to the current scan line.
- the predicted code rate representation is based on the current scan line correspondence.
- Parameter determination module used to determine the compression parameters of the next scan line based on the predicted code rate, code rate range and compression parameters of the current scan line;
- Compression module used to compress the pixel data of the next scanning line according to the compression parameters of the next scanning line.
- the parameter determination module is specifically used in the process of determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line:
- the compression parameter of the current scan line is reduced to obtain the compression parameter of the next scan line.
- the parameter determination module is specifically used in the process of determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line:
- the compression parameters of the next scan line are determined based on the predicted code rate, the code rate range, and the compression parameters of the current scan line.
- the device before the parameter determination module determines the compression parameters of the next scan line based on the predicted code rate, code rate range and the compression parameters of the current scan line, the device further includes a range adjustment Module for:
- the parameter determination module is specifically used to:
- the compression parameters of the next scan line are determined.
- the parameter determination module determines the current code rate range based on the predicted code rate of at least two scan lines before the current scan line and the predicted code rate of the current scan line. During the upper limit adjustment process, it is specifically used for:
- the device further includes a range limiting module for:
- the parameter determination module is specifically used in the process of determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line:
- the upper limit of the current code rate range is adjusted according to the attenuation factor corresponding to the current scan line.
- the attenuation factor is used to control the upper limit of the code rate to converge to the set target.
- the parameter determination module is specifically used to:
- the compression parameters of the next scan line are determined.
- the device further includes a second row number threshold determination module, used for:
- the second line number threshold is obtained based on the total number of lines and the first proportional coefficient
- the second preset line value is determined as the second line number threshold.
- the device further includes an attenuation factor determination module for:
- the attenuation factor is determined according to the current scan line number and the second line number threshold.
- the attenuation factor determination module is specifically used in the process of determining the attenuation factor based on the current scan line number and the second line number threshold:
- the attenuation factor is obtained according to the current scanning line number and the corresponding relationship.
- the device further includes a range determination module for:
- the code rate range is determined according to the set target code rate and the set range coefficient.
- an electronic device including:
- Memory for storing instructions executable by the processor
- the processor is configured to execute executable instructions in the memory to implement the steps of the method described in any embodiment of the first aspect.
- a computer-readable storage medium on which a computer program is stored.
- the program is executed by a processor, the steps of the method described in any embodiment of the first aspect are implemented.
- a chip including:
- One or more interface circuits and one or more processors are configured to receive signals from the memory of the electronic device and send the signals to the processor, where the signals include computer instructions stored in the memory;
- the processor executes the computer instructions, the electronic device is caused to execute the image compression method described in any embodiment of the first aspect.
- the predicted code rate of the entire image after compressing the remaining scan lines with the current compression parameters is obtained, and by setting the code rate range and combining the predicted code rate to adjust the compression parameters of the next scan line, so that each scan
- Each row can adjust the compression parameters of the next scanned row in time, so that the code rate after compression based on the compression parameters is controlled within the code rate range. It avoids relying on empirical information to control compression parameters, reduces code rate fluctuations, makes compression losses even and controllable, and improves the lossless probability of the entire image. In addition, since no complex calculation process is involved, the computing pressure on the device can be reduced.
- Figure 1 is a flow chart of an image compression method according to an exemplary embodiment of the present disclosure
- Figure 2 is a flow chart of compression parameter adjustment according to an exemplary embodiment of the present disclosure
- Figure 3 is a flow chart of determining a second row number threshold according to an exemplary embodiment of the present disclosure
- Figure 4 is a comparison diagram of image compression effects according to an exemplary embodiment of the present disclosure.
- Figure 5 is a schematic diagram of an image compression device according to an exemplary embodiment of the present disclosure.
- FIG. 6 is a block diagram of an electronic device according to an exemplary embodiment of the present disclosure.
- first, second, third, etc. may be used in this disclosure to describe various information, the information should not be limited to these terms. These terms are only used to distinguish information of the same type from each other.
- first information may also be called second information, and similarly, the second information may also be called first information.
- word “if” as used herein may be interpreted as "when” or “when” or “in response to determining.”
- Figure 1 shows a flow chart of an image compression method according to an exemplary embodiment of the present disclosure.
- step S101 the compression parameters and code stream length of the current scanning line are obtained, as well as the total length of the code stream from the first line to the current scanning line.
- the compression parameters are used to reflect the degree of compression of the image, and are negatively correlated with the code stream length and code rate of the compressed scan lines.
- the current scan line compress the pixels of the current scan line of the image using the current compression parameters to obtain the compressed code stream length of the current scan line.
- the image is compressed using the compression parameters corresponding to each line to obtain the total length of the code stream from the first line to the current scanning line.
- the quantized prediction residual is encoded by a Golomb encoder, and the compression parameters can be characterized by the quantization step size.
- a large quantization step indicates a high degree of compression for the current scan line, and a small quantization step indicates a low degree of compression for the current scan line.
- the length of the code stream compressed by a larger quantization step is smaller.
- step S102 the predicted code rate of the current scan line is determined based on the code stream length of the current scan line and the total length of the code stream from the first line to the current scan line.
- the predicted code rate represents the compression corresponding to the current scan line.
- the parameter is the final code rate of the image after compression from the next scan line to the last scan line of the image.
- the code stream length of the current scan line and the total length of the code stream from the first line to the current scan line are used to represent the compression status of the current scan line and all historical scan lines.
- the predicted code rate is based on the compression status of the current scan line and the final code rate of the entire image after the remaining scan lines are compressed with the current compression parameters.
- the predicted code rate can be determined by formula (1):
- p represents the predicted code rate
- H represents the total number of lines of the image
- h represents the number of currently scanned lines, which can be obtained through the current row index
- Hh represents the number of remaining unscanned lines of the image
- b line represents the current scanned line.
- the length of the code stream, b total represents the total length of the code stream from the first line to the current scanning line.
- the numerator part of formula (1) represents the final code stream length of the entire image after compressing the remaining scan lines based on the current compression parameters.
- H and W represent the number of pixels in the image based on height and width respectively, and P represents the bit width of the image, which is used to represent the amount of information in each pixel in the image.
- the denominator part in formula (1) represents the total information amount of the image.
- the predicted code rate can be obtained by calculating the proportion of the predicted code stream length to the total amount of information in the image.
- step S103 the compression parameters of the next scan line are determined based on the predicted code rate, the code rate range, and the compression parameters of the current scan line.
- the code rate range is used to limit the fluctuation degree of the predicted code rate, which can be determined by setting a target code rate of the image or multiple experiments.
- the code rate range may include an upper limit and/or a lower limit of the predicted code rate.
- the predicted code rate can be increased or reduced by adjusting the compression parameters of the next scan line so that the predicted code rate returns to the code rate. rate range.
- step S104 the pixel data of the next scanning line is compressed according to the compression parameter of the next scanning line.
- the compression encoding can be controlled by adjusting the compression parameters of the next scanning line to encode and compress the pixels of the next scanning line.
- the quantized prediction residual can be encoded by the Golomb encoder based on the adjusted quantization step size.
- the scheme described in this disclosure obtains the predicted code rate of the entire image after compressing the remaining scan lines with the current compression parameters based on the compression status of the current scan line, and adjusts the code rate of the next scan line by setting the code rate range and combining it with the predicted code rate.
- Compression parameters enable each scan line to adjust the compression parameters of the next scan line in time, so that the code rate after compression based on the compression parameters is controlled within the code rate range. It avoids relying on empirical information or the content characteristics of the image itself to control compression parameters, reduces code rate fluctuations, makes compression losses uniform and controllable, and improves the lossless probability of the entire image. In addition, since no complex calculation process is involved, the computing pressure on the device can be reduced.
- determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line includes:
- the compression parameter of the current scan line is reduced to obtain the compression parameter of the next scan line.
- the predicted code rate of the current scan line exceeds the upper limit of the code rate, which means that the compression degree of the current scan line is too small.
- You can increase the compression parameter of the next scan line that is, increase the compression degree of the next scan line, to reduce Lower the code rate of the next scan line so that the code rate during the compression of the next scan line does not exceed the upper limit of the code rate.
- the predicted code rate of the current scan line is lower than the lower limit of the code rate, it means that the compression degree of the current scan line is too large. You can reduce the compression parameter of the next scan line, that is, reduce the compression degree of the next scan line.
- the code rate of the next scan line is increased so that the code rate during the compression of the next scan line is not lower than the lower limit of the code rate.
- Figure 2 shows a compression parameter adjustment flow chart disclosed in this application according to an exemplary embodiment.
- step S201 it is determined whether the predicted code rate is greater than the upper limit of the code rate.
- step S202 when the predicted code rate is greater than the upper code rate limit, it may be determined whether the current compression parameter is greater than the compression parameter threshold to determine whether the current compression process is in a regular compression mode.
- the compression parameter threshold can be set to 15.
- step S203 when the current compression process is in the normal compression mode, the compression parameters are increased.
- step S204 it is determined whether the predicted code rate is less than the lower limit of the code rate.
- step S205 when the predicted code rate is less than the lower limit of the code rate, it can be determined whether the current compression parameter is less than 0 to determine whether the current compression process is in the compression process, that is, whether the current compression process is in the conventional compression process. model.
- step S206 if the current compression process is in the normal compression mode, the compression parameters are reduced.
- step S207 if the predicted code rate is within the code rate range, the current compression parameters may be maintained.
- the method of maintaining the current compression parameters can also be used to wait for further processing.
- the compression parameter can be increased by adding 1 to the compression parameter and decreased by decrementing the compression parameter by 1 to ensure that the compression parameter variation of adjacent scan lines is controlled at 1 or 0. , to avoid obvious compression losses in the compressed image due to sudden increases or decreases in compression parameters, thereby ensuring uniform compression intensity in the image.
- the scheme described in this disclosure adjusts the compression parameters in time by comparing the predicted code rate of the current scan line with the code rate range so that the code rate of the next scan line is controlled within the code rate range. At the same time, by limiting the compression parameters every The amount of adjustment is to avoid obvious compression loss in the compressed image, thereby ensuring uniform compression intensity in the image.
- determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line includes:
- the compression parameters of the next scan line are determined based on the predicted code rate, the code rate range, and the compression parameters of the current scan line.
- the code rate of different scanning lines of the image is due to the excessive complexity of the image, Due to large fluctuations due to objective reasons, selecting a bit rate range that is too small may cause the compression process to fail to operate normally. Therefore, before determining the bit rate range, scan lines before the first line number threshold can be scanned. For compression limited by a code rate range, the code rate range is determined based on the compression state of the image. In one example, the first line number threshold is 10.
- the code rate range is determined according to the set target code rate and the set range coefficient.
- the set target bit rate represents the final bit rate that the user hopes to compress the current image.
- the set range coefficient may be determined based on the compression state of the scan lines before the first line number threshold. For example, a set target code rate of 110% is determined as the upper limit of the code rate, and a set code rate range of 95% is determined as the lower limit of the code rate to ensure that the code rate during the image compression process always surrounds the set code rate. Target code rate fluctuations.
- the scheme described in this disclosure first performs compression without code rate range restrictions on the first line number threshold and the scanning lines before it, and then determines the code rate range according to the compression state of the image to ensure the compression range. Choose wisely.
- the code rate range is determined according to the target set code rate and the range coefficient to ensure that the code rate during the image compression process always fluctuates around the set target code rate.
- the method before determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line, the method further includes:
- Determining the compression parameters of the next scan line based on the predicted code rate, code rate range and compression parameters of the current scan line includes:
- the compression parameters of the next scan line are determined.
- the prediction of at least two scan lines before the current scan line can be used.
- the code rate and the predicted code rate of the current scan line are obtained, the predicted code rate change trend of the most recent scan lines is obtained, and the code rate range is adaptively adjusted according to the change trend.
- specific code rate range adjustment methods include:
- the overall predicted code rate changes as the number of lines increases, usually showing a W-type or M-type, that is, the prediction at the Nth scanning line
- the predicted code rate of the N+1th scan line is greater than the predicted code rate of the adjacent scan line.
- the most recent scan can be determined by the change trend of the predicted code rate of the adjacent scan lines. Part of the code rate change trend.
- the two predicted code rates corresponding to the current scanning line and its two preceding lines can be determined as the to-be-detected Predicted code rate; when determining the predicted code rate to be detected based on the current scanning line and its first five scanning lines, the current scanning line and the three predictions corresponding to the first two lines and the first four lines can be The code rate is determined as the predicted code rate to be detected, or the three predicted code rates corresponding to the first row, the first three rows and the first five rows from the current scan line are determined as the predicted code rate to be detected, and the code rate is determined according to the predicted code rate to be detected.
- the increase or decrease trend of the predicted code rate is detected to determine the adjustment method for the upper limit of the code rate.
- the predicted code rates corresponding to the first five scan lines adjacent to the current scan line can be fixedly determined as the predicted code rate to be detected, and after the scanning compression of the current scan line is completed, the code rate can be automatically moved to the next line.
- the predicted code rates corresponding to the first five scan lines of the next scan line are determined as the predicted code rates to be detected.
- the scheme described in this disclosure adaptively adjusts the code rate range according to the code rate change trend of the most recent scan lines, so that during the compression process, more code stream lengths are allocated in complex texture areas and less code stream lengths are allocated in simple texture areas.
- the length of the code stream reduces the bit rate oscillation during the encoding process, thereby achieving a reasonable distribution of the code stream during the encoding process and achieving a uniform and excessive effect of reconstructed image quality.
- the method further includes:
- the code rate range can be adaptively adjusted according to the code rate change trend of the most recent scan lines
- the degree of adaptive adjustment of the code rate range should still be limited to a certain extent to avoid the code rate upper limit.
- Unlimited raising or lowering You can limit the number of increases or decreases in the code rate upper limit by setting a threshold for increases and decreases, or you can also set an increase or decrease range value isomorphically to control the specific value of the upper limit of the code rate to remain within an appropriate range.
- the upper limit of the code rate can be adjusted by increasing or decreasing the upper limit of the code rate by 5%, and the result of the increase or decrease in the upper limit of the code rate is marked by the flag bit f. After the upper limit is increased, f is marked as true. After the upper limit is lowered, f is marked as false, so that the upper limit of the code rate cannot be continuously increased or decreased, and can only be adjusted within the range of ⁇ 5%.
- the conditions for increasing and decreasing the code rate upper limit can be expressed by formula (2) and formula (3) respectively.
- P0-P4 represents the predicted code rate corresponding to the five historical scan lines adjacent to the current scan line
- p represents the predicted code rate of the current scan line
- rt represents the set target code rate
- l represents the upper limit distance of 100%.
- the triggering conditions for increasing or decreasing the upper limit of the code rate can be further refined through the difference between the predicted code rate of the current scan line and the set target code rate or the difference between the predicted code rate to be detected.
- the solution described in this disclosure limits the number of increases or decreases in the upper code rate by setting a threshold for the number of increases and a threshold for the number of decreases, or by using a range value to keep the specific value of the upper limit of the code rate within an appropriate range to avoid During the adaptive adjustment process of the upper limit of the code rate, the upper limit of the code rate can increase or decrease without restriction.
- the method before determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line, the method further includes:
- the current upper limit of the code rate range is adjusted according to the attenuation factor corresponding to the current scan line.
- the attenuation factor is used to control the upper limit of the code rate to converge to the set target code. Rate;
- Determining the compression parameters of the next scan line based on the predicted code rate, code rate range and compression parameters of the current scan line includes:
- the compression parameters of the next scan line are determined.
- the final compression code rate in the entire image compression process is constrained by gradually converging the upper limit of the code rate to the set target code rate.
- the attenuation factor is used to control the upper limit of the code rate to converge to a set target code rate.
- the second line number threshold represents the attenuation starting point in the image scanning and compression process. If the code rate upper limit passes through the adaptive adjustment stage before the attenuation starting point, the code rate upper limit is reset at the attenuation starting point. is the initial upper limit, such as the upper limit of the code rate corresponding to the next scan line of the first line number threshold.
- the method further includes:
- the attenuation factor is determined according to the current scan line number and the second line number threshold.
- the attenuation factor can be determined through formula (4):
- decay represents the attenuation factor
- h represents the number of lines currently scanned
- h st represents the second line number threshold, that is, the number of lines from which the attenuation starts. Therefore, the attenuation factor can be expressed by an exponential function with a as the base and the cumulative number of rows after the attenuation starting point as the power.
- the upper limit of the code rate gradually converges to the set target code rate, so as to constrain the final compression code rate in the entire image compression process.
- determining the attenuation factor based on the current number of scanning lines and the second set threshold includes:
- the attenuation factor is obtained according to the current scanning line number and the corresponding relationship.
- the attenuation factor corresponding to each scan line can be obtained by looking up the table. If the table is too large and difficult to obtain, jump point sampling can be performed by setting the step size. Points within the step size range can be calculated through the look-ahead difference between two table lookup results that are close to the table lookup value.
- the attenuation factor corresponding to each scanning line is directly obtained by looking up the table, so as to further reduce the computing pressure of the device.
- the method further includes:
- the second line number threshold is obtained based on the total number of lines and the first proportional coefficient
- the second preset line value is determined as the second line number threshold.
- Figure 3 discloses a second line number threshold determination flowchart according to an exemplary embodiment of the present disclosure, where H represents the total number of lines of the image, and h st represents the second line number threshold.
- the 375th line from the bottom of the image is determined as the second line number threshold
- the tenth line of the total number of image lines is determined as the second line number threshold. Further, in order to avoid that the upper limit of the code rate still cannot converge to the set target code rate at the end of the scan, it can be judged in the tenth line from the bottom of the image whether the convergence of the upper limit of the code rate can be completed based on the current attenuation factor. If If not, the attenuation factor is set to 0, and the set target bit rate is directly determined as the upper limit of the bit rate, so as to complete the convergence of the compression bit rate of the image in a timely manner.
- the scanning compression process is controlled to converge on the upper limit of the code rate at an appropriate convergence starting point, so as to constrain the final result of the entire image compression process. Compression code rate.
- FIG. 4 shows an image compression effect comparison diagram according to an exemplary embodiment of the present disclosure.
- Figure 4 takes as an example whether the bayer image is compressed by the method described in the present disclosure, which can reflect the before and after comparison effect of whether the scheme described in the present disclosure is adopted for image compression.
- the x-axis is the index of the number of scanning lines
- the y-axis is the actual code rate corresponding to each scanning line.
- the code rate oscillation during the image compression process can be significantly reduced, and the actual code rate can be converged to the target code rate faster.
- bit rate control can be achieved for images of different types and sizes.
- the code rate range is adaptively adjusted according to the code rate change trend of the recent scan lines, so that during the compression process, more code stream lengths are allocated in complex texture areas and more code stream lengths are allocated in simple texture areas. , Reduce the bit rate oscillation during the encoding process, thereby achieving a uniform transition of reconstructed image quality, so that the image quality can be effectively controlled.
- the present disclosure also provides embodiments of application function implementation devices and corresponding terminals.
- FIG. 5 A block diagram of an image compression device according to an exemplary embodiment of the present disclosure is shown in Figure 5.
- the device includes:
- Parameter acquisition module used to obtain the compression parameters and code stream length of the current scan line, as well as the total length of the code stream from the first line to the current scan line;
- Code rate prediction module used to determine the predicted code rate of the current scan line based on the code stream length of the current scan line and the total length of the code stream from the first line to the current scan line.
- the predicted code rate representation is based on the current scan.
- the final code rate of the image after the compression parameters corresponding to the row compress the next scan line to the last scan line of the image;
- Parameter determination module used to determine the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line;
- Compression module configured to compress the pixel data of the next scanning line according to the compression parameters of the next scanning line.
- the parameter determination module is specifically used in the process of determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line:
- the compression parameter of the current scan line is reduced to obtain the compression parameter of the next scan line.
- the parameter determination module is specifically used in the process of determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line:
- the compression parameters of the next scan line are determined based on the predicted code rate, the code rate range, and the compression parameters of the current scan line.
- the device before the parameter determination module determines the compression parameters of the next scan line based on the predicted code rate, code rate range and the compression parameters of the current scan line, the device further includes a range adjustment Module for:
- the parameter determination module is specifically used to:
- the compression parameters of the next scan line are determined.
- the parameter determination module determines the upper limit of the current code rate range based on the predicted code rate of at least two scan lines before the current scan line and the predicted code rate of the current scan line. During the adjustment process, it is specifically used for:
- the device further includes a range limiting module for:
- the parameter determination module is specifically used in the process of determining the compression parameters of the next scan line based on the predicted code rate, code rate range, and compression parameters of the current scan line:
- the current upper limit of the code rate range is adjusted according to the attenuation factor corresponding to the current scan line.
- the attenuation factor is used to control the upper limit of the code rate to converge to the set target code. Rate;
- the parameter determination module is specifically used to:
- the compression parameters of the next scan line are determined.
- the device further includes a second row number threshold determination module, used for:
- the second line number threshold is obtained based on the total number of lines and the first proportional coefficient
- the second preset line value is determined as the second line number threshold.
- the device further includes an attenuation factor determination module for:
- the attenuation factor is determined according to the current scan line number and the second line number threshold.
- the attenuation factor determination module is specifically used in the process of determining the attenuation factor based on the current scan line number and the second line number threshold:
- the attenuation factor is obtained according to the current scanning line number and the corresponding relationship.
- the device further includes a range determination module for:
- the code rate range is determined according to the set target code rate and the set range coefficient.
- the device embodiment since it basically corresponds to the method embodiment, please refer to the partial description of the method embodiment for relevant details.
- the device embodiments described above are only illustrative.
- the units described above as separate components may or may not be physically separated.
- the components shown as units may or may not be physical units, that is, they may be located in a place, or can be distributed across multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the disclosed solution. Persons of ordinary skill in the art can understand and implement the method without any creative effort.
- FIG. 6 shows a block diagram of an electronic device according to an exemplary embodiment of the present disclosure.
- the device 600 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, or the like.
- the device 600 may include one or more of the following components: a processing component 602, a memory 604, a power supply component 606, a multimedia component 608, an audio component 610, an input/output (I/O) interface 612, a sensor component 614, and communications component 616.
- Processing component 602 generally controls the overall operations of device 600, such as operations associated with display, phone calls, data communications, camera operations, and recording operations.
- the processing component 602 may include one or more processors 620 to execute instructions to complete all or part of the steps of the above method.
- processing component 602 may include one or more modules that facilitate interaction between processing component 602 and other components.
- processing component 602 may include a multimedia module to facilitate interaction between multimedia component 608 and processing component 602.
- Memory 604 is configured to store various types of data to support operations at device 600 . Examples of such data include instructions for any application or method operating on device 600, contact data, phonebook data, messages, pictures, videos, etc.
- Memory 604 may be implemented by any type of volatile or non-volatile storage device, or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EEPROM), Programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic or optical disk.
- SRAM static random access memory
- EEPROM electrically erasable programmable read-only memory
- EEPROM erasable programmable read-only memory
- EPROM Programmable read-only memory
- PROM programmable read-only memory
- ROM read-only memory
- magnetic memory flash memory, magnetic or optical disk.
- Power component 606 provides power to various components of device 600.
- Power components 606 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to device 600.
- Multimedia component 608 includes a screen that provides an output interface between the device 600 and the user.
- the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user.
- the touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensor may not only sense the boundary of a touch or slide action, but also detect the duration and pressure associated with the touch or slide action.
- multimedia component 608 includes a front-facing camera and/or a rear-facing camera.
- the front camera and/or the rear camera may receive external multimedia data.
- Each front-facing camera and rear-facing camera can be a fixed optical lens system or have a focal length and optical zoom capabilities.
- Audio component 610 is configured to output and/or input audio signals.
- audio component 610 includes a microphone (MIC) configured to receive external audio signals when device 600 is in operating modes, such as call mode, recording mode, and speech recognition mode. The received audio signal may be further stored in memory 604 or sent via communication component 616 .
- audio component 610 includes a speaker for outputting audio signals.
- the I/O interface 612 provides an interface between the processing component 602 and a peripheral interface module, which may be a keyboard, a click wheel, a button, etc. These buttons may include, but are not limited to: Home button, Volume buttons, Start button, and Lock button.
- Sensor component 614 includes one or more sensors for providing various aspects of status assessment for device 600 .
- the sensor component 614 may detect the open/closed state of the device 600, the relative positioning of components, such as the display and keypad of the device 600, the sensor component 614 may detect a change in position of the device 600 or a component of the device 600, The presence or absence of user contact with the device 600, device 600 orientation or acceleration/deceleration and temperature changes of the device 600.
- Sensor assembly 614 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact.
- Sensor assembly 614 may include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications.
- the sensor component 614 may include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
- Communication component 616 is configured to facilitate wired or wireless communication between apparatus 600 and other devices.
- the device 600 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, 4G or 5G or a combination thereof.
- the communication component 616 receives broadcast signals or broadcast related information from an external broadcast management system via a broadcast channel.
- the communications component 616 includes a near field communications (NFC) module to facilitate short-range communications.
- NFC near field communications
- the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.
- RFID radio frequency identification
- IrDA infrared data association
- UWB ultra-wideband
- Bluetooth Bluetooth
- apparatus 600 may be implemented by one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable Gate array (FPGA), controller, microcontroller, microprocessor or other electronic components are implemented for executing the power supply method of the above electronic device.
- ASICs application specific integrated circuits
- DSPs digital signal processors
- DSPDs digital signal processing devices
- PLDs programmable logic devices
- FPGA field programmable Gate array
- controller microcontroller, microprocessor or other electronic components are implemented for executing the power supply method of the above electronic device.
- the present disclosure provides a non-transitory computer-readable storage medium including instructions, such as a memory 604 including instructions.
- the instructions can be executed by the processor 620 of the device 600 to complete the power supply method of the electronic device.
- the non-transitory computer-readable storage medium may be ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, optical data storage device, etc.
- the present disclosure also provides a chip, which specifically includes one or more interface circuits and one or more processors.
- the interface circuit is used to receive signals from a memory of an electronic device and send the signals to the processor.
- the signals include computer instructions stored in memory.
- the processor executes the computer instructions, the electronic device is caused to execute the image compression method described in any one of the disclosure.
- the chip can be a conventional CPU (central processing unit, central processing unit) chip, a GPU (graphics processing unit, graphics processor) chip, etc., or it can be an acceleration chip dedicated to artificial intelligence technology, such as AI (Artificial Intelligence). , artificial intelligence) accelerator, etc.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
La présente divulgation concerne un procédé et un appareil de compression d'image, un dispositif électronique, une puce et un support de stockage. Le procédé consiste : en fonction de la longueur de flux de données d'une ligne de balayage en cours et de la longueur de flux de données totale d'une première ligne à la ligne de balayage en cours, à déterminer un débit de données prédit de la ligne de balayage en cours ; en fonction du débit de données prédit, d'une plage de débit de données, et de paramètres de compression de la ligne de balayage en cours, à déterminer des paramètres de compression d'une ligne de balayage suivante ; et, en fonction des paramètres de compression de la ligne de balayage suivante, à effectuer un traitement de compression sur des données de pixel de la ligne de balayage suivante. La solution de la présente divulgation évite de dépendre d'informations empiriques en vue de la commande de paramètres de compression et le débit de données est limité à la plage de débit de données, réduisant l'oscillation de débit de données, permettant une perte de compression plus uniforme, et améliorant la probabilité d'absence de perte d'une image entière. De plus, étant donné qu'un processus de calcul complexe n'est pas impliqué, la pression de fonctionnement d'un dispositif peut être réduite.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2022/096492 WO2023230933A1 (fr) | 2022-05-31 | 2022-05-31 | Procédé et appareil de compression d'image, dispositif électronique, puce et support de stockage |
CN202280004643.6A CN116438794B (zh) | 2022-05-31 | 2022-05-31 | 图像压缩方法、装置、电子设备、芯片及储存介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2022/096492 WO2023230933A1 (fr) | 2022-05-31 | 2022-05-31 | Procédé et appareil de compression d'image, dispositif électronique, puce et support de stockage |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023230933A1 true WO2023230933A1 (fr) | 2023-12-07 |
Family
ID=87083713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/096492 WO2023230933A1 (fr) | 2022-05-31 | 2022-05-31 | Procédé et appareil de compression d'image, dispositif électronique, puce et support de stockage |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116438794B (fr) |
WO (1) | WO2023230933A1 (fr) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070133678A1 (en) * | 2005-12-13 | 2007-06-14 | Ryuji Sakai | Information processing apparatus, control method and program |
US20080063293A1 (en) * | 2006-09-08 | 2008-03-13 | Eastman Kodak Company | Method for controlling the amount of compressed data |
CN101159871A (zh) * | 2007-11-12 | 2008-04-09 | 中兴通讯股份有限公司 | 宏块组级视频码率控制方法 |
CN102938838A (zh) * | 2012-10-19 | 2013-02-20 | 西安电子科技大学 | 基于jpeg-ls标准的动态码率控制方法 |
CN106658006A (zh) * | 2017-01-12 | 2017-05-10 | 武汉轻工大学 | 一种率失真性能近似最优的jpeg‑ls图像近无损压缩的码率控制方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998053613A1 (fr) * | 1997-05-20 | 1998-11-26 | Motorola Inc. | Appareil, procede et support informatique permettant le codage scalaire d'informations video |
JPH1118083A (ja) * | 1997-06-25 | 1999-01-22 | Sony Corp | ディジタル信号符号化方法及び装置、信号記録媒体並びに信号伝送方法 |
CA2521467C (fr) * | 2003-04-04 | 2008-12-16 | Avid Technology, Inc. | Debit binaire fixe, compression et decompression intratrames d'une image video |
JP4063205B2 (ja) * | 2003-11-20 | 2008-03-19 | セイコーエプソン株式会社 | 画像データ圧縮装置及びエンコーダ |
US7844097B2 (en) * | 2007-12-03 | 2010-11-30 | Samplify Systems, Inc. | Compression and decompression of computed tomography data |
CN103297775B (zh) * | 2013-05-17 | 2016-02-10 | 西安电子科技大学 | 基于联合码率分配和控制的多光谱图像压缩***与方法 |
CN103916675B (zh) * | 2014-03-25 | 2017-06-20 | 北京工商大学 | 一种基于条带划分的低延迟帧内编码方法 |
CN105205521B (zh) * | 2015-09-30 | 2018-09-14 | 立德高科(昆山)数码科技有限责任公司 | 将二维码扫描区域中扫描线更改为选定素材的方法及装置 |
CN109379598B (zh) * | 2018-09-12 | 2021-11-19 | 合肥埃科光电科技有限公司 | 一种基于fpga实现的图像无损压缩方法 |
CN113670608B (zh) * | 2021-07-21 | 2022-09-16 | 广州大学 | 基于后缀树和向量机的故障检测方法、***、装置及介质 |
CN114051144A (zh) * | 2021-11-09 | 2022-02-15 | 京东科技信息技术有限公司 | 视频的压缩方法、装置、计算机设备及存储介质 |
CN114357665B (zh) * | 2022-03-15 | 2022-05-20 | 成都中科翼能科技有限公司 | 一种压气机叶片振动限制值的确定方法 |
-
2022
- 2022-05-31 WO PCT/CN2022/096492 patent/WO2023230933A1/fr unknown
- 2022-05-31 CN CN202280004643.6A patent/CN116438794B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070133678A1 (en) * | 2005-12-13 | 2007-06-14 | Ryuji Sakai | Information processing apparatus, control method and program |
US20080063293A1 (en) * | 2006-09-08 | 2008-03-13 | Eastman Kodak Company | Method for controlling the amount of compressed data |
CN101159871A (zh) * | 2007-11-12 | 2008-04-09 | 中兴通讯股份有限公司 | 宏块组级视频码率控制方法 |
CN102938838A (zh) * | 2012-10-19 | 2013-02-20 | 西安电子科技大学 | 基于jpeg-ls标准的动态码率控制方法 |
CN106658006A (zh) * | 2017-01-12 | 2017-05-10 | 武汉轻工大学 | 一种率失真性能近似最优的jpeg‑ls图像近无损压缩的码率控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116438794A (zh) | 2023-07-14 |
CN116438794B (zh) | 2023-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10511772B2 (en) | Image capturing device having continuous image capture | |
US11606564B2 (en) | Video encoding code rate control method, apparatus, and device, and storage medium | |
EP3171596B1 (fr) | Compression d'image utilisant une quantification adaptative pour des régions d'intérêt | |
CN107230182B (zh) | 一种图像的处理方法、装置以及存储介质 | |
US11061202B2 (en) | Methods and devices for adjusting lens position | |
CN106412702B (zh) | 一种视频片段的截取方法和装置 | |
US10277829B1 (en) | Video capture in low-light conditions | |
EP3173923A1 (fr) | Procédé et dispositif d'affichage d'images | |
JP7166171B2 (ja) | インタフェース画像の表示方法、装置及びプログラム | |
KR20100102186A (ko) | 뎁스 맵 생성을 이용하는 방법 및 장치 | |
EP4007289A1 (fr) | Procédé et appareil de téléversement vidéo, dispositif électronique et support de stockage | |
CN111381746B (zh) | 参数调节方法、装置及存储介质 | |
CN109547782B (zh) | Mpm候选列表构建方法、装置、电子设备及存储介质 | |
US9678868B2 (en) | Method and device for optimizing memory | |
US20220415236A1 (en) | Display control method, display control device and storage medium | |
CN115052150A (zh) | 视频编码方法、装置、电子设备和存储介质 | |
WO2023230933A1 (fr) | Procédé et appareil de compression d'image, dispositif électronique, puce et support de stockage | |
CN105472228B (zh) | 图像处理方法、装置及终端 | |
CN114595785A (zh) | 模型训练方法、装置、电子设备及存储介质 | |
WO2024045967A1 (fr) | Procédé et dispositif de réglage de modèle, dispositif d'affichage et support de stockage | |
CN115469816A (zh) | 存储器的读写切换方法、装置、设备及存储介质 | |
US10979628B2 (en) | Image processing apparatus, image processing system, image processing method, and recording medium | |
EP3575996A1 (fr) | Dispositif de terminal, procédé de détection et appareil | |
KR20080107652A (ko) | 휴대용 단말기의 카메라 기능 수행 방법 | |
CN116634532A (zh) | 终端功耗控制方法、装置和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22944267 Country of ref document: EP Kind code of ref document: A1 |