IP Library › Granted Patent US 8,923,390
Granted Patent B2
US 8,923,390 · App. 12/818,797 · Granted Dec 30, 2014

Scalar quantization using bit-stealing for video processing

Inventors: Oscar Chi Lim Au (Hong Kong, CN); Ngai Man Cheung (Hong Kong, CN); Xingyu Zhang (Shenzhen, CN)
Assignee: The Hong Kong University of Science and Technology
H04N19/00157H04N19/00096H04N19/00278H04N19/00775
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,923,390
App. No.
12/818,797
Granted
Dec 30, 2014
Kind
B2
Abstract

Systems, methods, and apparatus for adaptively zeroing out transform coefficients utilizing a bit-stealing parameter are presented herein. A partitioning component can be configured to separate an image into blocks of video data. Further, a frequency transform component can be configured to transform pixels of a block of the blocks into transform coefficients. Furthermore, a bit-stealing quantization component configured to predefine quantization intervals. Moreover, the bit-stealing quantization component can modify a size of a quantization interval of the quantization intervals based on a variable bit-stealing parameter. Further, the bit-stealing component can quantize a transform coefficient of the transform coefficients, based on the quantization interval, to a quantized coefficient value of quantized coefficient values.

Claims (67)

1. A method, comprising:

dividing, by a system comprising a processor, an image into blocks of video data;

transforming pixels of a block of the blocks into transform coefficients;

setting a value of a variable bit-stealing parameter;

adjusting a size of a quantization interval of quantization intervals and a dead zone based on the variable bit-stealing parameter, wherein sizes of remaining quantization intervals of the quantization intervals are unchanged, and wherein an absolute value of the variable bit-stealing parameter is less than or equal to a determined step size of the quantization intervals minus half of a step size of a selected quantization interval of the quantization intervals associated with the dead zone;

in response to encoded video data being determined to satisfy a defined condition with respect to a relationship between an amount of improvement of a video quality of the video data and a change in size of a bitstream associated with the video data, adding at least one bit to the bitstream based on the variable bit-stealing parameter; and

quantizing the transform coefficients, based on the quantization intervals, by mapping a coefficient value of a transform coefficient of the transform coefficients to a quantized coefficient value, wherein the encoded video data includes the quantized coefficient value.

2. The method of claim 1 , wherein the adjusting the size of the quantization interval comprises adjusting the size of the quantization interval based on a rounding offset not included in the encoded video data.

3. The method claim 1 , further comprising:

updating the variable bit-stealing parameter for at least one of every field of a video sequence of the video data or every frame of the video sequence.

4. The method of claim 1 , further comprising:

updating the variable bit-stealing parameter:

once per video sequence of video sequences related to encoded video data; or

once per predefined sub-sequence of the video sequences.

5. The method of claim 1 , further comprising:

encoding the video data, via the quantizing, based on a type of a macroblock including at least one of an intra type of the macroblock, a predicted type of the macroblock, or a bi-directionally predicted type of the macroblock; and

employing different bit-stealing parameters based on the type.

6. The method of claim 1 , further comprising:

detecting one or more variances of the transform coefficients based on at least one of a frequency, a region of the video data, or a sub-sequence of the video data; and

adjusting the variable bit-stealing parameter based on the one or more variances.

7. The method of claim 1 , further comprising:

partitioning the video data into different regions;

detecting one or more variances of the transform coefficients based on the different regions; and

adjusting the variable bit-stealing parameter based on the one or more variances.

8. The method of claim 1 , further comprising:

partitioning the video data into different sub-sequences;

detecting one or more variances of the transform coefficients based on the different sub-sequences; and

adjusting the variable bit-stealing parameter based on the one or more variances.

9. The method of claim 1 , further comprising:

predicting the block based on an encoded block of the plurality of blocks previously encoded via the quantizing.

10. An encoder, comprising:

a processor configured to execute components, comprising:

a partitioning component configured to separate an image into blocks of video data;

a frequency transform component configured to transform pixels of a block of the blocks into transform coefficients; and

a bit-stealing quantization component configured to:

predefine quantization intervals;

modify a size of a dead zone and a first quantization interval of the quantization intervals based on a variable bit-stealing parameter, wherein sizes of remaining quantization intervals of the quantization intervals have not been changed;

modify a quantization size of the first quantization interval based on an absolute value of the variable bit-stealing parameter that is less than or equal to a step size of the quantization intervals minus half of another step size of a second quantization interval of the quantization intervals associated with the dead zone;

in response to a determination that quantized video data satisfies a defined condition with respect to a relationship between an amount of improvement of video quality of the video data and a change in size of a bitstream associated with the video data, increase an amount of bits of the bitstream based on the variable bit-stealing parameter; and

quantize a transform coefficient of the transform coefficients, based on the first quantization interval, to a quantized coefficient value of quantized coefficient values.

11. The encoder of claim 10 , wherein the bit-stealing quantization component is further configured to modify the size of the first quantization interval based on a rounding offset not included in encoded data associated with the quantized coefficient values.

12. The encoder of claim 10 , wherein the bit-stealing quantization component is further configured to update the variable bit-stealing parameter every field of a video sequence of the video data associated with the pixels of the block or every frame of the video sequence.

13. The encoder of claim 10 , wherein the bit-stealing quantization component is further configured to:

update the variable bit-stealing parameter once per video sequence of video sequences of the video data associated with the pixels of the block; or

update the variable bit-stealing parameter every pre-defined sub-sequence of the video sequence.

14. The encoder of claim 10 , wherein the bit-stealing quantization component is further configured to:

quantize the transform coefficient based on a type of a macroblock including at least one of an intra type of the macroblock, a predicted type of the macroblock, or a bi-directionally predicted type of the macroblock; and

modify the variable bit-stealing parameter based on the type.

15. The encoder of claim 10 , wherein the bit-stealing quantization component comprises:

a detection component configured to detect one or more variances of the transform coefficients based on at least one of a frequency, a region of the video data, or a sub-sequence of the video data; and

an adjustment component configured to modify the variable bit-stealing parameter based on the one or more variances.

16. The encoder of claim 15 , wherein the bit-stealing quantization component further comprises:

a partition component configured to partition the video data into at least one of different regions or different sub-sequences, wherein the detection component is further configured to detect the one or more variances based on the at least one of the different regions or the different sub-sequences.

17. A non-transitory computer readable medium comprising executable instructions that, in response to execution, cause a system comprising a processor to perform operations, comprising:

transforming pixels of a block of video data into transform coefficients;

setting a variable bit-stealing parameter;

adjusting a size of a quantization interval of the quantization intervals and a dead zone based on the variable bit-stealing parameter, wherein sizes of remaining quantization intervals of the quantization intervals are unchanged, and wherein an absolute value of the variable bit-stealing parameter is less than or equal to a maximum step size of the quantization intervals minus half of a step size of a selected quantization interval of the quantization intervals that is associated with the dead zone;

determining that quantized video data satisfies a defined condition with respect to a relationship between an amount of improvement of video quality of the video data and a change in size of a bitstream associated with the video data;

adding one or more bits to the bitstream based on the variable bit-stealing parameter; and

quantizing the transform coefficients, based on the quantization intervals, into quantized coefficient values.

18. The non-transitory computer readable medium of claim 17 , wherein the adjusting the size of the quantization interval comprises adjusting the size of the quantization interval based on a rounding offset not included in the quantized video data.

19. The non-transitory computer readable medium of claim 17 , wherein the operations further comprise:

updating the variable bit-stealing parameter for at least one of every field of a video sequence of the video data.

20. The non-transitory computer readable medium of claim 17 , wherein the operations further comprise:

partitioning the video data into different regions;

detecting one or more variances of the transform coefficients based on the different regions; and

adjusting the variable bit-stealing parameter based on the one or more variances.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2010
From: AU, OSCAR CHI LIM; CHEUNG, NGAI MAN; ZHANG, XINGYU
To: THE HONG KONG UNIVERSITY OF SCIENCE AND TECHNOLOGY
Reel/Frame 024560/0576 →
Continuity (2)
Provisional Application 61213559 · Jun 19, 2009
Related Publication 20100322306A1 · Dec 23, 2010