IP Library Granted Patent US 6,891,889
Granted Patent B2
US 6,891,889 · App. 09/947,331 · Granted May 10, 2005

Signal to noise ratio optimization for video compression bit-rate control

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 6,891,889
App. No.
09/947,331
Granted
May 10, 2005
Kind
B2
Abstract

A method of determining a quantization parameter for video compression. A block characteristic for blocks in a video frame is quantized and then used to obtain a candidate quantization parameter. With the candidate quantization parameter, a number of bits for the blocks in the video frame is summed, producing a candidate bit rate. If the candidate bit rate is greater than a predetermined bit rate threshold, the candidate quantization parameter is set as the quantization parameter.

Claims (39)

1. A method of determining a quantization parameter for video compression, the method comprising:

quantizing a block characteristic for blocks in a video frame, producing a quantized block characteristic;

using the quantized block characteristic to obtain a candidate quantization parameter;

using the quantized block characteristic as an index to a look-up table of possible quantization parameter values, wherein producing the look-up table comprises defining a joint probability density function of a quantization parameter and a picture type, applying vector quantization to convert the joint probability density function to a set of code vectors, quantizing the block characteristic, and producing a look-up table with the quantized block characteristic as a table index and the code vectors as the values;

summing a number of bits for the blocks in the video frame producing a candidate bit rate, wherein the quantized block characteristic and the candidate quantization parameter determine the number of bits per block; and

setting the candidate quantization parameter as the quantization parameter for the frame, if the candidate bit rate is greater than a predetermined bit threshold.

2. The method of claim 1 , wherein the method further comprises obtaining a new candidate quantization parameter and performing the summing, if the candidate bit rate is less than the predetermined bit threshold.

3. The method of claim 1 , wherein the method further comprises the quantized block characteristic being the sum of absolute differences for the block.

4. The method of claim 1 , wherein using the quantized block characteristic to obtain a candidate quantization parameter further comprises using the quantized block characteristic as an index to a look-up table of possible quantization parameter values.

5. The method of claim 1 , wherein the code vectors are produced from estimates of a conditional mean value of the quantization parameter.

6. The method of claim 1 , wherein the method further comprises:

perturbing the quantization parameter to obtain a predetermined maximum change, producing a perturbed quantization parameter;

applying vector quantization to obtain a pixel signal-to-noise ratio to quantization parameter relationship for each block of the video frame for the perturbed quantization parameter;

calculating a signal-to-noise efficiency for each value of the perturbed quantization parameter;

selecting the perturbed quantization parameter based upon the signal-to-noise efficiency and the predetermined bit threshold.

7. A video encoder, comprising:

a port to receive video signals;

a memory to store look-up tables of quantized block characteristics indexed to quantization parameter values, wherein creation of the look-up tables comprises defining a joint probability density function of a quantization parameter and a picture type, applying vector quantization to convert the joint probability density function to a set of code vectors, quantizing the block characteristic, and producing a look-up table with the quantized block characteristic as a table index and the code vectors as the values; and

a processor to:

use the quantized block characteristic to obtain a candidate quantization parameter;

sum a number of bits for the blocks in the video frame producing a candidate bit rate, wherein the quantized block characteristic and the candidate quantization parameter determine the number of bits per block; and

set the candidate quantization parameter as the quantization parameter for the frame, if the candidate bit rate is greater than a predetermined bit threshold.

8. The video encoder of claim 7 , wherein the processor is also operable to obtain a new candidate quantization parameter if the candidate bit rate is less than the predetermined bit threshold.

9. The video encoder of claim 7 , wherein the processor is also operable to:

perturb the quantization parameter to obtain a predetermined maximum change, producing a perturbed quantization parameter;

apply vector quantization to obtain a pixel signal-to-noise ratio to quantization parameter relationship for each block of the video frame for the perturbed quantization parameter;

calculate a signal-to-noise efficiency for each value of the perturbed quantization parameter;

select quantization parameters for each block based upon the signal-to-noise efficiency and the predetermined bit threshold.

10. An article containing machine-readable code that, when executed, cause a machine to:

quantize a block characteristic for blocks in a video frame, producing a quantized block characteristic;

use the quantized block characteristic to obtain a candidate quantization parameter;

sum a number of bits for the blocks in the video frame producing a candidate bit rate, wherein the quantized block characteristic and the candidate quantization parameter determine the number of bits per block;

set the candidate quantization parameter as the quantization parameter for the frame, if the candidate bit rate is greater than a predetermined bit threshold;

perturb the quantization parameter to obtain a predetermined maximum change, producing a perturbed quantization parameter;

apply vector quantization to obtain a pixel signal-to-noise ratio to quantization parameter relationship for each block of the video frame for the perturbed quantization parameter;

calculate a signal to noise efficiency for each value of the perturbed quantization parameter; and

select the perturbed quantization parameter based upon the signal-to-noise efficiency and the predetermined bit threshold.

11. The article of claim 10 , wherein the article contains further code that, when executed, causes the machine to obtain a new candidate quantization parameter and perform the summing, if the candidate bit rate is less than the predetermined bit threshold.

12. The article of claim 10 , wherein the code causing the machine to use the quantized block characteristic to obtain a candidate quantization parameter further comprises code that causes the machine to use the quantized block characteristic as an index to a look-up table of possible quantization parameter values.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050937/0001 →
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 047243/0001 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jun 8, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 043079/0001 →
PATENT SECURITY AGREEMENT Recorded Jun 2, 2016
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 038954/0001 →
SECURITY INTEREST Recorded May 12, 2016
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038669/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 4, 2013
From: INTEL CORPORATION
To: MICRON TECHNOLOGY, INC.
Reel/Frame 030747/0001 →