適用于hevc的低延時碼率控制方法及比特數分配方法
【專利摘要】本發明提供一種適用于HEVC的低延時碼率控制方法及比特數分配方法,其中:根據虛擬緩存區的狀態,引入一個來源于緩存區的比特反饋增量,給每一幀預先分配一定量的比特數,這是實現低延時的基礎。然后根據與剩余平均比特數進行加權求和,得到每一幀的預分配比特數。然后根據比特數與拉格朗日乘子的關系得到拉格朗日乘子,再根據拉格朗日乘子與量化參數的關系得到量化參數。最終根據拉格朗日乘子和量化參數調控編碼,使得實際編碼的比特數與預估計比特數相同或者相近。本發明綜合考慮了虛擬緩存區的狀態和宏塊的復雜度來分配比特數,調整拉格朗日乘子和量化參數,使得能夠獲得更高好的低延時特性。
【專利說明】適用于HEVC的低延時碼率控制方法及比特數分配方法
【技術領域】
[0001]本發明涉及一種圖像處理【技術領域】的方法,具體是一種適用于HEVC視頻編碼的低延時碼率控制方法,比特數分配方法以及根據預先分配比特數確定拉格朗日因子和量化參數的方法。
【背景技術】
[0002]隨著視頻編碼技術的發展,各項視頻業務的廣泛應用給人們的生產和生活帶來了極大的便利。為了實現對視頻流碼流大小的控制,在每個視頻編碼標準中,碼率控制都是非常重要的一部分。碼率控制技術就是在盡量保證視頻質量的前提下,動態調整編碼參數,使輸出碼率與傳輸信道的帶寬相適應。根據傳輸信道的碼率是否恒定,碼率控制可以分為VBR和CBR兩種模式。
[0003]傳統的視頻編碼標準中的碼率控制方法主要是通過改變量化參數來實現對視頻碼流大小的控制。但是,Li Houqiang等人在2013年Journal of Selected Topicsin Signal Processing (IEEE 信號處理的選題雜志)上發表的 “Rate Control for HEVCTemporal Scalability using R-λ Model (針對HEVC時域可擴展米用R-λ模型的碼率控制)”一文中,就提出了一種根據改變量化參數和拉格朗日乘子共同控制視頻碼流大小的方法。
[0004]以前的碼率控制方法都是在先前的編碼標準H.263,H.264上實現的,在當前的HEVC編碼標準也有一些碼率控制方法,但是都沒有針對于低延時的方法。在現在的電視會議等視頻業務中,低延時是一個非常重要的指標。因此,適用于低延時的碼率控制方法有著非常重要的作用。
【發明內容】
[0005]本發明針對現有視頻編碼(HEVC)中碼率控制技術的不足,提供一種適用于HEVC的低延時碼率控制方法及比特數分配方法。
[0006]為實現上述目的,本發明通過緩存區狀態和宏塊復雜度權重因子預先估計幀和宏塊的目標比特數。再根據比特數與拉格朗日乘子的關系公式和拉格朗日乘子與量化參數的關系公式確定拉格朗日乘子和量化參數,然后去控制幀和宏塊的編碼使得編碼的比特數與目標分配的比特數相同或者相近,從而實現低延時碼率控制。
[0007]根據本發明的一方面,提供一種確定拉格朗日因子和量化參數的方法,所述方法根據預先分配的比特數,按照比特數(R)與拉格朗日乘子(λ)的關系公式,得到拉格朗日乘子:
[0008]R= α X λ 0
[0009]其中,α和β是兩個模型參數。
[0010]在得到拉格朗日乘子以后,為了簡化量化參數值QP的計算方法,減少復雜度,根據拉格朗日乘子λ與量化參數QP的經驗公式,得到量化參數值:[0011 ] QP = a.In ( λ ) +b
[0012]其中,a和b都是通過大量的訓練得到的常量參數。
[0013]根據本發明的另一個方面,提供一種適用于低延時碼率控制的比特數分配方法,該方法步驟如下:
[0014]①根據預設的目標緩存級和緩存滿度,獲得基于虛擬緩存的目標比特數;
[0015]②根據GOP剩余比特數和剩余幀數得到當前幀的平均可用比特數,根據當前宏塊的復雜度權重因子以及當前幀剩余比特數,得到宏炔基于復雜度權重因子的目標比特數;
[0016]③將①和②中的目標比特數進行加權平均,得到當前幀或宏塊的預分配比特數。
[0017]優選地,為了滿足低延時的要求,預先給當前幀或宏塊分配的比特數與緩存區狀態有關,基于緩存區的比特數為7,計算公式為:
【權利要求】
1.一種確定拉格朗日因子和量化參數的方法,其特征在于:根據預先分配的比特數R,按照比特數R與拉格朗日乘子λ的關系公式,得到拉格朗日乘子: R= α X λ 0 其中,α和β是兩個模型參數; 在得到拉格朗日乘子以后,根據拉格朗日乘子λ與量化參數QP的經驗公式,得到量化參數值:
QP = a.In ( λ ) +b 其中,a和b都是常量參數。
2.一種適用于低延時碼率控制的比特數分配方法,其特征在于該方法步驟如下: ①根據預設的目標緩存級和緩存滿度,獲得基于虛擬緩存的目標比特數; ②根據GOP剩余比特數和剩余幀數得到當前幀的平均可用比特數,根據當前宏塊的復雜度權重因子以及當前幀剩余比特數,得到宏炔基于復雜度權重因子的目標比特數; ③將①和②中的目標比特數進行加權平均,得到當前幀或宏塊的預分配比特數。
3.根據權利要求2所述的比特數分配方法,其特征在于:為了滿足低延時的要求,預先給當前幀或宏塊分配的比特數與緩存區狀態有關,基于緩存區的比特數為?,計算公式為:
其中,R是目標碼率,f是幀率,L是目標緩存級,V是虛擬緩存的滿度,Y是一個常數;根據虛擬緩存區的狀態,預先分配基于緩存區的比特數。
4.根據權利要求2所述的比特數分配方法,其特征在于:為了使得比特分配更加精確,在宏塊級碼率控制中引入了一種數值解法,根據權重因子wm和幀剩余比特數B給當前宏塊分配比特數:
其中的Wm根據下面的數值解法得到:
其中的%和Pni是第m個宏塊的R-λ模型參數,λ表示I中的拉格朗日乘子,ο?χ--表示第m個CTU使用幀級λ時根據I中R-λ模型得出的比特數;NCTU是當前幀所有的宏塊數目; 最終的目標分配比特數,就是預分配比特的加權平均值:
θ是加權因子。
5.一種米用權利要求1所述方法和權利要求2-4任一項所述方法的適用于HEVC低延時的碼率控制的方法,其特征在于:包括以下步驟: 第一步,根據緩存區的狀態和目標碼率幀率,得到當前幀或宏塊預先分配的比特數;第二步,根據比特數與拉格朗日乘子的關系公式獲得拉格朗日乘子,再根據拉格朗日乘子與量化參數的經驗公式獲得量化參數; 第三步,根據優化的拉格朗日乘子和量化參數對每個宏塊進行編碼,使得實際編碼的比特數與預估計比特數相同或者相近。
【文檔編號】H04N19/147GK104079933SQ201410325770
【公開日】2014年10月1日 申請日期:2014年7月9日 優先權日:2014年7月9日
【發明者】王向文, 楊中柱, 駱政屹, 宋利 申請人:上海君觀信息技術有限公司