IP Library Granted Patent US 11,330,258
Granted Patent B1
US 11,330,258 · App. 16/880,745 · Granted May 10, 2022

Method and system to enhance video quality in compressed video by manipulating bit usage

Inventor: Akrum Elkhazin (Sunnyvale, CA)
Assignee: Xilinx, Inc.
H04N19/115H04N19/122H04N19/146H04N19/176
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 11,330,258
App. No.
16/880,745
Granted
May 10, 2022
Kind
B1
Abstract

Methods and systems for adjusting bit usage during encoding of the image blocks of a picture or a frame are disclosed. According to one embodiment, a method is provided for adjusting bit usage in video compression. The method includes obtaining an estimated bit or byte size of an image block of a video frame, and determining whether the estimated size is less than a first selected threshold. An adjustment to a quantization parameter (QP) is selected based on the determination, so that the actual bit/byte size of the block may be adjusted according to a target size.

Claims (55)

1. A method for adjusting bit usage in video compression, the method comprising:

obtaining an estimated size of an image block of a video frame, the estimated size being represented as a bit size or a byte size;

computing a plurality of thresholds, wherein computing a particular one of the plurality of thresholds comprises computing a product of: (i) a respective scaling factor, (ii) an estimated frame size, and (iii) a ratio of a pixel size of the image block and a pixel size of the video frame, wherein the respective scaling factors are selected in an increasing order and all scaling factors are greater than zero and less than one;

designating, for each of the plurality of thresholds sorted in an increasing order, a corresponding adjustment to a quantization parameter (QP), the designated adjustments being sorted in a decreasing order;

determining, for each threshold of the plurality of thresholds, whether the estimated size is less than the threshold;

obtaining, for each threshold of the plurality of thresholds, a respective adjustment to the QP based on the determination whether the estimated size is less than the threshold; and

selecting an adjustment to the QP by selecting a minimum from the obtained plurality of respective adjustments.

2. The method of claim 1 , wherein:

determining, for each of the plurality of thresholds, whether the estimated size is less than the threshold comprises determining whether the estimated size is less than a first selected threshold, and

the method further comprising:

selecting the first selected threshold based on:

the estimated frame size;

the ratio of the pixel size of the image block and the pixel size of the video frame; and

a first scaling factor, the first scaling factor being greater than zero and less than one.

3. The method of claim 2 , wherein:

determining whether the estimated size is less than the first selected threshold comprises determining that the estimated size is equal to or greater than the first selected threshold,

the method further comprising determining that the estimated size is less than a second selected threshold; and

selecting an adjustment corresponding to the second selected threshold to the QP based on the determination that that the estimated size is equal to or greater than the first selected threshold but less than a second selected threshold.

4. The method of claim 1 , further comprising:

decreasing the QP by magnitude of the selected adjustment.

5. The method of claim 4 , further comprising:

quantizing the image block according to the decreased QP; and

entropy-encoding the quantized block and the decreased QP,

wherein a standardized encoding process comprises the quantizing and entropy-encoding steps.

6. The method of claim 5 , wherein:

a pixel size of the image block is 4×4, 8×8, 16×16, 32×32, 64×64, or 128×128; and

a pixel size of the video frame is 1280×720, 1920×1080, or 3840×2160.

7. A system for adjusting bit usage in video compression, comprising:

a processor; and

a memory in communication with the processor and comprising instructions which, when executed by the processor, program the processor to:

obtain an estimated size of an image block of a video frame, the estimated size being represented as a bit size or a byte size;

compute a plurality of thresholds, wherein a particular one of the plurality of thresholds is computed by computing a product of: (i) a respective scaling factor, (ii) an estimated frame size, and (iii) a ratio of a pixel size of the image block and a pixel size of the video frame, wherein the respective scaling factors are selected in an increasing order and all scaling factors are greater than zero and less than one;

designate, for each of the plurality of thresholds sorted in an increasing order, a corresponding adjustment to a quantization parameter (QP), the designated adjustments being sorted in a decreasing order;

determine, for each threshold of the plurality of thresholds, whether the estimated size is less than the threshold;

obtain, for each threshold of the plurality of thresholds, a respective adjustment to the QP based on the determination whether the estimated size is less than the threshold; and

select an adjustment to the QP by selecting a minimum from the obtained plurality of respective adjustments.

8. The system of claim 7 , wherein, to determining, for each of the plurality of thresholds, whether the estimated size is less than the threshold, the instructions further program the processor to determine whether the estimated size is less than a first selected threshold, and

the instructions further program the processor to:

select the first selected threshold based on:

the estimated frame size; and

the ratio of the pixel size of the image block and the pixel size of the video frame; and

a first scaling factor, the first scaling factor being greater than zero and less than one.

9. The system of claim 8 , wherein:

to determine whether the estimated size is less than the first selected threshold, the instructions program the processor to determine that the estimated size is equal to or greater than the first selected threshold;

the instructions further program the processor to determine that the estimated size is less than a second selected threshold; and

select an adjustment corresponding to the second selected threshold to the QP based on the determination that that the estimated size is equal to or greater than the first selected threshold but less than a second selected threshold.

10. The system of claim 7 , wherein the instructions further program the processor to:

decrease the QP by magnitude of the selected adjustment.

11. The system of claim 10 , wherein the instructions further program the processor to:

quantize the image block according to the decreased QP; and

entropy-encode the quantized block and the decreased QP,

wherein a standardized encoding process comprises the quantize and entropy-encode operations.

12. The system of claim 7 , wherein:

a pixel size of the image block is 4×4, 8×8, 16×16, 32×32, 64×64, or 128×128; and

a pixel size of the video frame is 1280×720, 1920×1080, or 3840×2160.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2021
From: ELKHAZIN, AKRUM
To: XILINX, INC.
Reel/Frame 058312/0301 →
Continuity (1)
Provisional Application 62851006 · May 21, 2019
Cited By (1)
US 12,567,166