Bitrate reduction techniques for image transcoding
First Claim
1. A method of processing blocks of digital image data comprising:
- scaling one or more quantization tables as a function of a computed scaling factor to create a first quantization table set;
encoding a first portion of a plurality of blocks of pixels of the digital image data using the first quantization table set;
encoding a second portion of a remaining unencoded portion of the plurality of blocks of image data using the first quantization table set;
tracking a difference between a total number of encoded bits of the encoded second portion and a number of bits that ideally should be encoded at the second encoded portion to achieve a target bitrate; and
removing one or more bits of the encoded second portion when the difference is greater than or equal to a threshold, wherein scaling the one or more quantization tables comprises scaling a luma quantization table and a chroma quantization table, wherein the chroma quantization table is scaled more than the luma quantization table, andwherein scaling the luma quantization table and the chroma quantization table comprisesscaling a first portion of the luma quantization table by the computed scaling factor, andscaling a second portion of the luma quantization table and the chroma quantization table by a second scaling factor, wherein the second scaling factor is determined as a function of the computed scaling factor, andwherein the computed scaling factor and second scaling factor are greater than or equal to one, and further wherein the computed scaling factor is smaller than the second scaling factor.
1 Assignment
0 Petitions
Accused Products
Abstract
This disclosure describes techniques for encoding data to compress image data to a reduced size. The techniques may be particularly effective in transcoding an image to a reduced size for transmission. An encoding device may transcode an image to an acceptable file size using bitrate control techniques that affect the entire image uniformly to transcode the image. For example, the encoding device may modify one or more quantization tables as a function of the near linear relationship between bitrate (R) and the number of zero-valued quantized transform coefficients to reduce the file size uniformly over the entire image. Alternatively, or additionally, the encoding device may transcode the image using bitrate control techniques that affect only specific localized regions of the image.
20 Citations
13 Claims
-
1. A method of processing blocks of digital image data comprising:
-
scaling one or more quantization tables as a function of a computed scaling factor to create a first quantization table set; encoding a first portion of a plurality of blocks of pixels of the digital image data using the first quantization table set; encoding a second portion of a remaining unencoded portion of the plurality of blocks of image data using the first quantization table set; tracking a difference between a total number of encoded bits of the encoded second portion and a number of bits that ideally should be encoded at the second encoded portion to achieve a target bitrate; and removing one or more bits of the encoded second portion when the difference is greater than or equal to a threshold, wherein scaling the one or more quantization tables comprises scaling a luma quantization table and a chroma quantization table, wherein the chroma quantization table is scaled more than the luma quantization table, and wherein scaling the luma quantization table and the chroma quantization table comprises scaling a first portion of the luma quantization table by the computed scaling factor, and scaling a second portion of the luma quantization table and the chroma quantization table by a second scaling factor, wherein the second scaling factor is determined as a function of the computed scaling factor, and wherein the computed scaling factor and second scaling factor are greater than or equal to one, and further wherein the computed scaling factor is smaller than the second scaling factor. - View Dependent Claims (2, 3, 4, 5, 12)
-
-
6. A computer-program product for processing digital image data comprising a non-transitory computer readable medium having instructions thereon, the instructions comprising:
-
code for scaling one or more quantization tables as a function of a computed scaling factor to create a first quantization table set; code for encoding a plurality of blocks of pixels of the digital image data using the first quantization table set; code for encoding a second portion of a remaining unencoded portion of the plurality of blocks of image data using the first quantization table set; code for tracking a difference between a total number of encoded bits at the second encoded portion and a number of bits that ideally should be encoded at the second encoded portion to achieve a target bitrate; and code for removing one or more bits of the second encoded portion when the difference is greater than or equal to a threshold, wherein code for scaling the one or more quantization tables comprises code for scaling a luma quantization table and a chroma quantization table, wherein the chroma quantization table is scaled more than the luma quantization table, wherein code for scaling the luma quantization table and the chroma quantization table comprises; code for scaling a first portion of the luma quantization table by the computed scaling factor, code for scaling a second portion of the luma quantization table and the chroma quantization table by a second scaling factor, wherein the second scaling factor is determined as a function of the computed scaling factor, and wherein the computed scaling factor and second scaling factor are greater than or equal to one, and further wherein the computed scaling factor is smaller than the second scaling factor. - View Dependent Claims (7, 8, 9, 10, 11, 13)
-
Specification