IP Library › Granted Patent US 10,560,696
Granted Patent B2
US 10,560,696 · App. 16/016,691 · Granted Feb 11, 2020

Method for initial quantization parameter optimization in video coding

Inventors: Wei Gao (Hong Kong, HK); Sam Tak Wu Kwong (Hong Kong, HK); Chi Keung Fong (Hong Kong, HK); Hon Wah Wong (Hong Kong, HK); Hon Tung Luk (Hong Kong, HK); Hok Kwan Cheung (Hong Kong, HK); Yiu Fai Yuen (Hong Kong, HK)
Assignee: TFI DIGITAL MEDIA LIMITED
H04N19/124H04N19/159H04N19/172
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 10,560,696
App. No.
16/016,691
Granted
Feb 11, 2020
Kind
B2
Abstract

A machine learning based initial quantization parameter (QP) prediction method, which can effectively optimize RC performance A machine learning framework for initial QP prediction is proposed, where learning labels are built with the criterion of maximizing rate-distortion (RC) performance, which is proved to be much more effective than the QP determination method with the only consideration on sum of the absolute transformed difference (SATD) complexity. Instead of target bits per pixel for intra frame, target bits per pixel for remaining frames is used as sample data to avoid empirically setting intra frame bit allocation, thus improve the prediction accuracy as the real-time updated remaining bits can better reflect the real-time requirements on the level of QPs. In addition, a clipping and decision approach based on the previous initial QP and the target bits per pixel for all remaining frames is proposed, which can help fast QP adaption and quality smoothness.

Claims (263)

1. A method for predicting an initial quantization parameter (QP) for rate control in video coding, comprising:

receiving an input video;

extracting one or more feature vectors from the input video;

feeding the extracted feature vector into a machine learning model; and

predicting one or more initial QPs using the machine learning model,

wherein the feature vector extraction comprises:

determining an initial target bit per pixel, Tbpp o , for an initial frame in the input video;

determining target bits per pixel for remaining frames, Tbpp, in the input video; and

a extracting a feature vector from the determined target bits per pixel for remaining frames, Tbpp, of the input video.

2. A method according to claim 1 , wherein the initial target bit per pixel, Tbpp o , is determined by:

Tbpp

o

=

TBR

FR

×

FP

where TBR is the target bit rate, FR is the frame rate and FP is the number of pixels in a frame of the input video, respectively.

3. A method according to claim 2 , wherein the target bits per pixel for remaining frames, Tbpp, is determined by:

Tbpp

=

Tbpp

0

×

AFN

×

FP

-

∑

i

=

1

CFN

⁢

R

i

(

AFN

-

CFN

)

×

FP

where AFN is the total number of frames, CFN is the number of coded frames and R i is the consumed bits of the i-th frame of the input video, respectively.

4. A method according to claim 1 , wherein the machine learning model is trained by:

receiving a test video;

extracting sample data from the test video;

selecting an optimal initial QP from a plurality of initial QP on the basis of a criterion of performance optimization;

inputting the extracted sample data and corresponding selected optimal initial QP into the machine learning model; and

training the machine learning model to obtain a prediction function for initial QP.

5. A method according to claim 4 , wherein the sample data extraction comprises:

setting a target bit rate for coding the test video;

determining an initial target bit per pixel, Tbpp o , for an initial frame in the test video;

determining target bits per pixel, Tbpp, for remaining frames in the test video; and

extracting sample data from the determined target bits per pixel, Tbpp, for remaining frames.

6. A method according to claim 5 , wherein the initial target bit per pixel, Tbpp 0 , is determined by:

Tbpp

0

=

TBR

FR

×

FP

where TBR is the target bit rate, FR is the frame rate and FP is the number of pixels in a frame of the test video, respectively.

7. A method according to claim 6 , wherein the target bits per pixel for remaining frames, Tbpp, is determined by:

Tbpp

=

Tbpp

0

×

AFN

×

FP

-

∑

i

=

1

CFN

⁢

R

i

(

AFN

-

CFN

)

×

FP

where AFN is the total number of frames, CFN is the number of coded frames and R i is the consumed bits of the i-th frame of the test video, respectively.

8. A method according to claim 4 , wherein the optimal initial QP selection comprises:

coding the test video with one or more coding schemes having different initial QP values;

calculating a rate-distortion (R-D) performance score, RDS i , for each of the coding schemes; and

selecting the optimal initial QP value which corresponds to the coding scheme achieving the highest R-D performance score.

9. A method according to claim 8 , wherein the rate-distortion (R-D) performance score, RDS i , for an i-th initial QP coding scheme is determined by:

RDS

i

=

C

F

C

i

=

R

F

·

D

F

R

i

·

D

i

where R F , D F and C F are average consumed bits, mean square error (MSE) distortions and residual complexity indicator for a Fixed QP coding, respectively; and C i is the product of a pair of R-D date of the i-th initial QP coding scheme which is approximated by the model:

C i =R i ·D i

where R i and D i are consumed bits and mean square error (MSE) distortions of the i-th initial QP coding scheme, respectively.

10. A method according to claim 1 , wherein the machine learning model is a support vector regression (SVR) and the training the machine learning model comprises:

adopting a radial basis function (RBF) based kernel trick to produce a hyperplane defined by:

f ( x )=ω T ϕ( x )+ b

where ϕ(⋅) is the RBF kernel function, b is the bias term, and co is highly related to the support vector coefficients which depict the relationship between the selected support vectors and the learned hyperplane;

minimizing a cost function, J, to achieve an optimal hyperplane, wherein:

J

=

1

2

⁢

ω

2

+

C

⁢

∑

i

=

1

n

⁢

(

ξ

i

+

ξ

i

*

)

,

s

.

t

.

⁢

{

y

i

-

ω

T

⁢

ϕ

⁡

(

x

i

)

-

b

≤

ɛ

+

ξ

i

*

ω

T

⁢

ϕ

⁡

(

x

i

)

+

b

-

y

i

≤

ɛ

+

ξ

i

ξ

i

,

ξ

i

*

≥

0

,

∀

i

=

1

⁢

⁢

…

⁢

⁢

n

,

ɛ

≥

0

where x i and y i are extracted sample data and corresponding selected optimal initial QP for the i-th test video, respectively, n is number of data samples, ζ i and ζ i * indicate slacks, ε is allowable error and data samples within the ε-tube which will not be penalized, parameter C defines the penalty factor for data samples outside the ε-tube, and parameter ε determines the sensitivity of error zone and thus influences the number of selected support vectors; and

formulating a prediction function, H, based on the support vector, SV, corresponding support vector coefficients, SVCoef, and the bias parameter, b, which are obtained from the achieved optimal hyperplane, wherein:

Pred_IQP= H (SV,SVCoef,ϕ( x ), b )

where x is an input feature vector extracted from and Pre_IQP is an initial QP predicted for an input video.

11. A method according to claim 10 , wherein the prediction errors of the machine learning model are further minimized by tuning learning parameters {g, c} of the machine learning model by grid search, wherein g corresponds to kernel hyperparameter γ in the RBF kernel function and c corresponds to a cost parameter, respectively.

12. A method according to claim 1 , wherein

the input video comprises one or more of intra periods;

the initial QP for an initial intra frame of the first intra period is predicted using the machine learning model;

the initial QP for intra frames in each of following intra periods, Pred_IQP, are predicted using the machine learning model and then determined with a clipping function; wherein the clipping function has a clipping range denoted as [min_IQP, max_IQP] and defined by:

min_IQP

=

{

Prev_IQP

-

deltaQP

,

if

⁢

⁢

Tbpp

>

Tbpp

0

Prev_IQP

,

otherwise

and

max_IQP

=

{

Prev_IQP

,

if

⁢

⁢

Tbpp

>

Tbpp

0

Prev_IQP

+

deltaQP

,

otherwise

,

where Prev_IQP is the previous initial QP predicted by the machine learning model for the intra frame at the previous intra period, deltaQP is the clipping parameter, Tbpp o and Tbpp are the initial target bit per pixel of the intra frame and the target bit per pixel of the remaining inter frames in a following intra period respectively.

13. A method according to claim 12 , wherein the clipping parameter, deltaQP, is set to 2 or 3.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2018
From: GAO, WEI; KWONG, SAM TAK WU; FONG, CHI KEUNG; WONG, HON WAH; LUK, HON TUNG; CHEUNG, HOK KWAN; YUEN, YIU FAI
To: TFI DIGITAL MEDIA LIMITED
Reel/Frame 046186/0273 →
Continuity (1)
Related Publication 20190394466A1 · Dec 26, 2019
Cited By (4)
US 12,368,864 US 12,632,996 US 12,676,985 US 12,739,399