模塊化聯(lián)合碼率控制技術(shù)
摘 要: 提出將整個(gè)聯(lián)合碼率控制算法分為幾個(gè)控制模塊,調整模塊算法不影響整體控制策略,從而算法更通用。對系統的幾個(gè)主要模塊:碼率預測、帶寬分配、量化參數選擇和緩存器控制的算法進(jìn)行了討論。最后給出了聯(lián)合碼率控制系統性能評價(jià)方法。
本文引用地址:http://dyxdggzs.com/article/242274.htm關(guān)鍵詞: 聯(lián)合碼率控制 模塊化 碼率預測 帶寬分配 量化參數選擇
隨著(zhù)視頻及其伴音壓縮編碼標準MPEG-1、MPEG-2的制訂,以其為基礎的數字視頻系統應用越來(lái)越廣。今后,視頻業(yè)務(wù)將大幅度增多,在一傳統的固定帶寬信道內,盡可能多地同時(shí)傳送多路經(jīng)MPEG壓縮的視頻節目的技術(shù)會(huì )日趨迫切。
1 聯(lián)合碼率控制技術(shù)概述
當多路可變碼率(VBR)編碼視頻節目在同一固定帶寬信道內傳輸時(shí),可利用統計復用技術(shù)使各節目碼率相互補償,動(dòng)態(tài)分配固定信道,充分利用信道資源。但它存在下列缺點(diǎn):(1)統計復用遵循“大數定律”,只有復用的業(yè)務(wù)數目N足夠大(N>10)時(shí),各路碼率相互補償,才能產(chǎn)生高的統計復用增益(見(jiàn)第3節)。若信道帶寬有限,同時(shí)傳輸的業(yè)務(wù)數目不多,則復用后總碼率波動(dòng)仍會(huì )較大,在固定帶寬信道中傳輸容易丟失數據。(2)統計復用雖可避免各業(yè)務(wù)峰值碼率直接累加,但因圖像內容變化不能預知,故復用后總輸出碼率在某一時(shí)間段仍可能超過(guò)信道帶寬,致使傳輸過(guò)程中丟失數據。特別是丟失重要信息(如包頭、DCT直流及低頻系數)時(shí),會(huì )嚴重影響圖像甚至該圖像所在整個(gè)圖像組(GOP)的質(zhì)量。因此單獨的統計復用技術(shù)不適用于同時(shí)傳輸較少視頻業(yè)務(wù)且對圖像質(zhì)量要求較高的數字視頻廣播領(lǐng)域。
聯(lián)合碼率控制系統(見(jiàn)圖1)綜合各路視頻節目統計數字量,對總的可用帶寬進(jìn)行統一分配,使復用后輸出的碼率不超過(guò)帶寬,不丟失數據,且各路節目質(zhì)量達到最佳。根據目前掌握的資料,聯(lián)合碼率控制技術(shù)尚處于研究階段,IBM、PHILIPS和DIVICOM等公司正開(kāi)展此項研究。
與獨立控制MPEG固定碼率編碼中各節目的碼率不同,聯(lián)合碼率控制系統對各編碼器實(shí)施聯(lián)合控制。系統開(kāi)始工作時(shí),各編碼器可設置為相同量化參數;當系統預測到復用后的碼率超過(guò)信道帶寬時(shí),就把有效帶寬按圖像復雜度重新分配,然后改變量化參數,使各編碼器輸出滿(mǎn)足目標碼率。
一些文獻介紹了各自的聯(lián)合碼率控制算法,但均存在一些缺欠,如:通過(guò)監測信道緩存器的狀態(tài)調整碼率的算法[1],由于緩存器狀態(tài)并不直接反映圖像變化,因此碼率調整會(huì )導致有相同復雜度圖像的質(zhì)量差別;應用專(zhuān)用芯片的算法不能通用[2];用前一GOP編碼結果預測碼率[3],使帶寬分配滯后于圖像變化;按自定義的Super GOP(各路節目對應GOP的組合)和Super Frame在Super GOP內各節目對應幀的組合)結構分配帶寬[4],未考慮Super GOP內的圖像變化。雖然各算法對節目質(zhì)量有一定改善,但缺乏對圖像變化、帶寬分配、碼率控制和緩存器狀態(tài)的全面考慮,各節目質(zhì)量難以達到最佳。
為此,本文首次提出模塊化聯(lián)合碼率控制算法,即將整個(gè)碼率控制分為幾個(gè)控制模塊,使模塊算法相對獨立且其調整不影響系統控制的策略,算法更通用,能適用不同的編碼芯片。
2 模塊化控制算法
系統可劃分為:碼率預測、帶寬分配、量化參數選擇和緩存器控制等幾個(gè)模塊。圖2只畫(huà)出了節目n與各控制模塊的關(guān)系,其它節目和控制模塊的關(guān)系與之相同。
2.1 碼率預測模塊
碼率預測模塊以選定的時(shí)間段(幀或GOP)為單位,提取各路視頻節目的統計信息。有兩種碼率預測方法:前向預測法[1][2]和反饋預測法[3]。前者是在圖像編碼前,對其進(jìn)行預處理以提取統計數字量??商崛〉慕y計數字量有多種,它們的選擇應與編碼器輸出一定質(zhì)量圖像所需碼率密切相關(guān)。例如,統計數字量10表示編碼器輸出同等質(zhì)量圖像的碼率是統計數字量為5時(shí)的2倍。前向預測法對圖像復雜度變化和場(chǎng)景切換的反映迅速,但節目?jì)热萸Р钊f(wàn)別,活動(dòng)性與復雜度大不相同,要找到能適應任何圖像內容且與輸出碼率密切相關(guān)的統計數字量是個(gè)帶有挑戰性的工作。另外,實(shí)時(shí)前向預測需要預處理芯片,增加系統成本。
反饋預測法是在圖像編碼后,采集編碼過(guò)程中產(chǎn)生的統計數字量(圖2中虛線(xiàn)箭頭),以指導后面圖像編碼。與預處理法相比,反饋法不需對圖像預處理,運算量較小。但統計數字量只能是編碼過(guò)程中產(chǎn)生的一些信息,是用前面圖像的統計數字量預測后面的圖像,因此反饋預測法對圖像復雜度變化和場(chǎng)景切換的反映不如前項預測法快速。但由于圖像內容會(huì )持續一定時(shí)間,所以反饋預測法也能對碼率進(jìn)行預測。
2.2 帶寬分配模塊
帶寬分配模塊可選取多種算法。比較簡(jiǎn)單的算法是將可用信道容量分成Cp、C0兩部分,前者按預測的各路節目碼率分配,使每路節目保持一可接受的圖像質(zhì)量;后者按各種節目預測碼率的方差分配,保證復雜節目得到更多的碼率,使各路節目的圖像質(zhì)量統一[1]。
帶寬分配模塊還可按碼率預測模塊輸出的統計數字量計算各路節目的復雜度,并按其比例分配帶寬[3]。復雜度計算可采用MPEG TM5[5]中相應公式:
C=R×Q
式中,R是圖像編碼的碼率,Q是圖像的平均量化因子(圖像內各宏塊量化因子的平均值)。
另一種算法是先定義Super GOP和Super Frame結構[4],并給每個(gè)Super GOP分配相同的碼率;然后按TM5中碼率分配方法將Super GOP碼率分配給每個(gè)Super Frame;同樣的方法也應用于Super Frame中每一幀的碼率分配。
各節目質(zhì)量統一體現在圖像有相同的失真度上。根據率失真理論[6],復雜圖像應分配給較多的碼率時(shí),其失真度與簡(jiǎn)單圖像相同。所以,無(wú)論采用何種算法分配帶寬,都應使分配給各路節目的目標碼率與其復雜度成正比。
另外,帶寬分配模塊在什么時(shí)間段上分配帶寬也值得考慮。有兩種選擇:以圖像幀或GOP為時(shí)間單位。按幀分配碼率,需先確定任一時(shí)刻各節目的圖像類(lèi)型(各節目的GOP結構不同,其圖像類(lèi)型的變化不同步),以便合理分配碼率。從圖像質(zhì)量的穩定性上考慮,碼率分配應使整個(gè)圖像序列的整體質(zhì)量最優(yōu),而不是某一幀圖像質(zhì)量最佳,大多數視頻節目在GOP內發(fā)生場(chǎng)景切換的幾率很小,且GOP內三種圖像類(lèi)型I、P、B的排列順序具有重復性。從而可按預先確定的比例分配GOP內圖像的碼率,且各幀碼率的波動(dòng)可在GOP內相互補償。如果某一GOP內發(fā)生場(chǎng)景切換,可把這一GOP內余下圖像與下一GOP合成一個(gè)大GOP,使場(chǎng)景切換不影響碼率分配策略。因此,以GOP為單位分配帶寬更合理。
2.3 量化參數選擇
量化參數選擇模塊使各編碼器輸出滿(mǎn)足帶寬分配模塊預分配的目標碼率。量化參數包括量化因子Q和量化矩陣。量化矩陣可在圖像級調整,量化因子Q可在條或宏塊級調整。量化矩陣依人的視覺(jué)空間頻率特性改變,相對穩定。碼率的控制和調整一般通過(guò)改變量化因子實(shí)現。圖3是量化因子與輸出碼率的關(guān)系。
為使圖像主觀(guān)質(zhì)量相對一致,各路節目應盡量使用相同量化因子[3]。量化參數選擇模塊可在量化因子取值范圍(1~31)內搜索,選擇合適的Q使編碼器輸出最接近的目標碼率。由圖3可知,量化因子較小時(shí),其增減1都會(huì )使碼率變化很大。所以,滿(mǎn)足目標碼率的Q有可能不是整數。如選用整數Q,即圖像內每個(gè)宏塊使用相同Q,編碼器輸出可能與目標碼率有偏差,但碼率偏差可在緩存器中相互補償。
圖像平均量化因子也可為小數值,即圖像內條或宏塊選用不同Q值。量化參數選擇模塊可以結合人眼特性,預先確定多種Q的選取模板,供圖像按其活動(dòng)性、復雜度和內容等選用,保證圖像主觀(guān)質(zhì)量最佳。例如,一幅中間部分細節較多的圖像Q若是3.75,可讓圖像邊緣占宏塊總數四分之三的宏塊的Q值取為4,中間部分其它四分之一宏塊的Q值取為3。這樣,不受觀(guān)眾注意的圖像邊緣量化較粗,而圖像中心量化較細,整幅圖像主觀(guān)質(zhì)量最佳。
2.4 緩存器控制
緩存器控制模塊對碼率加入限制以使緩存器不發(fā)生上、下溢[3]??稍O置一緩存器閾值系數α,令輸出的總碼率Bf滿(mǎn)足:
αBs≤Bf≤(1-α)Bs
式中Bs為緩存器容量。如果碼率超出此閾值,緩存器控制模塊指導帶寬分配模塊重新分配帶寬。α決定著(zhù)緩存器利用率的大小,應根據實(shí)際情況靈活選取。
碼率預測、帶寬分配、量化參數選擇和緩存器控制是聯(lián)合碼率控制系統中最重要的幾個(gè)模塊,它們之間并不是獨立、割裂的,而是相互影響、相互制約的。因此,要從使整個(gè)系統性能最佳的角度選擇這幾個(gè)模塊的算法。
3 聯(lián)合碼率控制性能評價(jià)
評價(jià)聯(lián)合碼率控制系統性能有兩項指標:統計復用增益(G)與峰值信噪比(PSNR)。多路MPEG VBR視頻節目的統計復用增益G定義為:在同一固定帶寬信道內,可傳輸的經(jīng)過(guò)復用且具有同等或更佳圖像質(zhì)量的VBR視頻業(yè)務(wù)數目對可傳輸的CBR視頻業(yè)務(wù)數目之比[1]。通常G越大,復用性能越佳,可同時(shí)復用的VBR視頻業(yè)務(wù)數目也越多。
用PSNR評價(jià)聯(lián)合碼率控制系統性能的方法是:求復用后各路VBR視頻節目的峰值信噪比與傳輸同等數目CBR視頻節目時(shí)的峰值信噪比之比,所得PSNR的增加量即表征圖像質(zhì)量的改善程度。峰值信噪比的計算式為:
式中,n(x,y,z)是在象素(x,y,z)上疊加的噪聲,M是總的象素數。
總之,聯(lián)合碼率控制技術(shù)能消除統計復用的信息丟失缺陷,將復用后的視頻業(yè)務(wù)碼率限制在信道容量之內,且各節目的圖像質(zhì)量保持一致,適用于數字視頻廣播。本文首次提出模塊化聯(lián)合碼率控制,將系統分為幾個(gè)控制模塊,模塊算法的調整不影響整體控制策略,其目的是增強算法的通用性,使其適用不同編碼芯片,得到更廣泛的應用。
對模塊化聯(lián)合碼率控制技術(shù),還有很多待研究的課題。包括選擇合適的算法提高系統運算速度和工作性能;研究不僅按圖像復雜度分配碼率,而且通過(guò)設置優(yōu)先級保證重點(diǎn)節目有足夠碼率的方法;研究較“峰值信噪比”更能正確地反映重建圖像主觀(guān)質(zhì)量的客觀(guān)量等。
評論