專利名稱:嵌入式實時視頻壓縮系統中的低復雜度的比特率控制方法
技術領域:
本發明涉及視頻處理的技術領域,尤指一種應用于嵌入式實時視頻壓縮系統中的低復雜度的比特率控制方法。
背景技術:
數字視頻技術廣泛地應用于通信和廣播領域中,特別是90年代以來,隨著因特網和移動通信的迅速發展,視頻信息和多媒體信息在因特網和移動網絡中的傳輸處理成為了當前的熱門技術。2003年3月,ITU-T/IS0正式公布了 H. 264視頻壓縮標準,由于其相比以往標準的出色的性能,被人們稱為新一代視頻編碼標準。具體而言,相比于H. 263或MPEG-4,在同樣畫質下,其數碼率能降低一半左右,或者說在同樣比特率下,其峰值信噪比(PSNR)明顯提
尚ο在因特網和移動通信的視頻傳輸中,由于傳輸通道頻寬的限制,比特率控制(bit rate control)則扮演著重要角色。由于比特率控制并不是H. 264標準的一部分,但ITU-T/ ISO開發團隊為了輔助實作,因此設計了比特率控制算法。其通過調整參數來滿足目標比特率,其中,舉例來說量化(Quantization)是一個可以用來解決視頻壓縮上增加壓縮率的方法,比特率控制即是通過調整量化參數(Quantization Parameters,QP)值來達到這個目的。為了滿足期望的比特率,比特率控制需要考慮三種議題,包括失真(Distortion)、 復雜度(Complexity)、及頻寬限制(BW constrain),其如下所述。(1)失真依據T. Berger所提出的比特率失真定理(Rate-DistortionTheory)指出,如
圖1所示失真度和比特率上有二次曲線對應關系,失真度越低,壓縮率越差,相對上比特率就越差,視頻畫面質量越佳,反之,失真度越高,壓縮率越好,相對上比特率就越好, 視頻畫面質量越差。比特率控制希望能達到在最小的失真(Distortion)下有最好的畫質。(2)復雜度比特率控制在不同的應用上會有不同的計算復雜度限制。在實時的視頻編譯碼系統中,則須滿足實時性的要求,因此在嵌入式實時視頻壓縮系統中,則希望比特率控制方法可以減少計算的復雜度并能滿足效能,且可達到壓縮率上的要求。(3)頻寬限制其是在網絡應用上的考慮,希望在網絡傳輸時沒有延遲的問題,亦即在編碼端的編碼緩沖區及譯碼端的譯碼緩沖區不會有溢出(overflow)或下溢 (underflow)問題。圖2是一現有比特率控制的示意圖,比特率控制(Rate Control)模塊200使用幀(Frame)為基本單位。如圖2所示,其具有幾個初始值,例如初始的QP值、需求的比特流率、緩沖區的大小,所述初始值經由使用者接口模塊210輸出。第一幀經由比特配置模塊220計算出一組目標比特流(Target Bits),并輸出至基本單位比特配置模塊230。而幀比特模塊230計算并產生一組目標比特流(Target Bits),并輸出至R-Q模塊(亦可稱為R-D模塊)240。R-Q模塊240連接至平均絕對失真(MeanAbsolute Distortion)模塊250及編碼模塊270。R-Q模塊240接收平均絕對失真模塊250輸出的平均絕對失真(Mean Absolute Distortion)值,并接收編碼模塊270輸出一個為前一幀做完編碼后的比特流數 (bitsnumbers of a bitstream),通過這三個值求出一個 QP 值。QP 限制器(QP-Iimiter) 模塊260對R-Q模塊240輸出的QP值進行微調進而使得編碼畫面能夠平順(Smooth),QP 限制器模塊260再將微調后QP值輸入編碼模塊270,用以對視頻數據流進行編碼。在H. 264中,比特率控制方法較以前的視頻壓縮算法更有彈性,其可分別針對圖框、切片、區塊進行比特率控制。由比特率的觀點,比特率控制方法又可分為如下所述的固定比特率(Constant Bit Rate, CBR)及可變比特率(Variable Bit Rate, VBR)(1)固定比特率(CBR)如圖3所示,其以壓縮率為主要考慮,進而調整QP值,但會犧牲畫面質量。其依據一組固定的需求比特率(Demanded BitRate),通過調整QP值來使編碼模塊270編碼后的比特率不超過需求比特率,其會有較佳的壓縮率,但遇到移動量較大的視頻,就會犧牲畫面質量。同時,固定比特率(CBR)方法只能獲得在滿足比特率的條件下的QP值。然而,當連續幾張畫面內容處于靜止或僅有少量移動,所產生的比特流率很小,此時QP是有往下調整的空間。(2)可變比特率(VBR)如圖4所示,其以畫面的穩定質量做考慮,有較佳的畫面質量,但犧牲壓縮率,在實時視頻編碼系統上并不適用。目前H. 264標準的比特率方法使用了平均絕對失真模塊250及R-D模塊240以求出最佳的壓縮預測模式(prediction mode),達到比特流率和畫質的水平。然而其卻有如下的缺點1.平均絕對失真模塊250使用公式(1)以計算絕對平均殘差值(Mean Absolute Difference, MAD)
權利要求
1.一種低復雜度的比特率控制方法,其應用于一嵌入式實時視頻壓縮系統中,用以設定一視頻數據流中一現行幀的量化參數值,從而能滿足預先決定的一目標比特率,進而維持視頻畫面的質量,該比特率控制方法包含步驟A)接收一前一幀的數據流長度、量化參數值及一使用者層指標;B)判斷一現行幀是否為一I幀或一第一 P幀,當該現行幀不為該I幀或該第一 P幀時, 執行步驟C);C)判斷該前一幀的數據流長度是否大于一第一目標比特率,其中,當該前一幀的數據流長度大于該第一目標比特率時,執行步驟D);D)增加該前一幀的量化參數值,用以產生一第一量化參數值,以及設定該現行幀的量化參數值為該第一量化參數值;E)判斷該現行幀的量化參數值是否大于一量化參數上限值,當該現行幀的量化參數值大于該量化參數上限值時,執行步驟F);以及F)設定該現行幀的量化參數值為該量化參數上限值,進而依據該現行幀的量化參數值調整該現行幀的比特率。
2.根據權利要求1所述的比特率控制方法,其還包含G)當該前一幀的數據流長度不大于該第一目標比特率時,再判斷該前一幀的數據流長度是否小于一第二目標比特率,若該前一幀的數據流長度小于該第二目標比特率時,執行步驟H);以及H)減少該前一幀的量化參數值,用以產生一第二量化參數值,以及設定該現行幀的量化參數值為該第二量化參數值。
3.根據權利要求1所述的比特率控制方法,其還包含I)當該現行幀的量化參數值不大于該量化參數上限值時,再判斷該現行幀的量化參數值是否小于一量化參數下限值,其中,當該現行幀的量化參數值小于該量化參數下限值時, 執行步驟J),否則,則依據該現行幀的量化參數值調整該現行幀的比特率,以及J)設定該現行幀的量化參數值為該量化參數下限值,并依據該現行幀的量化參數值調整該現行幀的比特率。
4.根據權利要求2所述的比特率控制方法,其還包含K)當該前一幀的數據流長度不小于該第二目標比特率,設定該現行幀的量化參數值為該前一幀的量化參數值,進而依據該現行幀的量化參數值調整該現行幀的比特率。
5.根據權利要求1所述的比特率控制方法,其還包含L)如步驟B)判定該現行幀為該I幀或該第一 P幀,則設定該現行幀的量化參數值為一預設的量化參數值,進而依據該現行幀的量化參數值調整該現行幀的比特率。
6.根據權利要求1所述的比特率控制方法,其中,該第一目標比特率、該量化參數上限值、一第二目標比特率、一量化參數下限值使用一使用者層指標經由一量化參數-比特流率關聯表查表而獲得。
7.根據權利要求6所述的比特率控制方法,其中,該量化參數-比特流率關聯表包含一使用者層指標字段、一目標比特率字段、一量化參數上限值字段、及一量化參數下限值字段。
8.根據權利要求7所述的比特率控制方法,其中,該使用者層指標字段的值越大,其對應的目標比特率越小。
9.根據權利要求8所述的比特率控制方法,其中,每一該量化參數下限值字段均為相同的數值。
10.根據權利要求9所述的比特率控制方法,其中,每一該量化參數上限值字段的數值為
全文摘要
本發明提出一種嵌入式實時視頻壓縮系統中的低復雜度的比特率控制方法,其用以決定一視頻數據流中一現行幀的量化參數值,其依據一使用者層指標由一QP-比特率關聯表格經查表獲得量化參數值的范圍,進而調整量化參數值。由于有較低的計算復雜度,可應用實時視頻編碼系統上,從而達到實時的處理,同時,在滿足目標比特率的情況下,本發明的方法可讓量化參數值收斂至最佳值,而有較佳畫面質量。
文檔編號H04N7/26GK102316313SQ20101021805
公開日2012年1月11日 申請日期2010年6月29日 優先權日2010年6月29日
發明者余家豪, 林立浩, 陳家明 申請人:凌陽科技股份有限公司