《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > 模塊化聯(lián)合碼率控制技術(shù)

模塊化聯(lián)合碼率控制技術(shù)

2009-01-06
作者:董 鑫 李桂苓

  摘 要: 提出將整個(gè)聯(lián)合碼率控制算法分為幾個(gè)控制模塊,調(diào)整模塊算法不影響整體控制策略,從而算法更通用。對系統(tǒng)的幾個(gè)主要模塊:碼率預(yù)測、帶寬分配、量化參數(shù)選擇和緩存器控制的算法進(jìn)行了討論。最后給出了聯(lián)合碼率控制系統(tǒng)性能評價(jià)方法。
  關(guān)鍵詞: 聯(lián)合碼率控制 模塊化 碼率預(yù)測 帶寬分配 量化參數(shù)選擇


  隨著視頻及其伴音壓縮編碼標(biāo)準(zhǔn)MPEG-1、MPEG-2的制訂,以其為基礎(chǔ)的數(shù)字視頻系統(tǒng)應(yīng)用越來越廣。今后,視頻業(yè)務(wù)將大幅度增多,在一傳統(tǒng)的固定帶寬信道內(nèi),盡可能多地同時(shí)傳送多路經(jīng)MPEG壓縮的視頻節(jié)目的技術(shù)會(huì)日趨迫切。
1 聯(lián)合碼率控制技術(shù)概述
  當(dāng)多路可變碼率(VBR)編碼視頻節(jié)目在同一固定帶寬信道內(nèi)傳輸時(shí),可利用統(tǒng)計(jì)復(fù)用技術(shù)使各節(jié)目碼率相互補(bǔ)償,動(dòng)態(tài)分配固定信道,充分利用信道資源。但它存在下列缺點(diǎn):(1)統(tǒng)計(jì)復(fù)用遵循“大數(shù)定律”,只有復(fù)用的業(yè)務(wù)數(shù)目N足夠大(N>10)時(shí),各路碼率相互補(bǔ)償,才能產(chǎn)生高的統(tǒng)計(jì)復(fù)用增益(見第3節(jié))。若信道帶寬有限,同時(shí)傳輸?shù)臉I(yè)務(wù)數(shù)目不多,則復(fù)用后總碼率波動(dòng)仍會(huì)較大,在固定帶寬信道中傳輸容易丟失數(shù)據(jù)。(2)統(tǒng)計(jì)復(fù)用雖可避免各業(yè)務(wù)峰值碼率直接累加,但因圖像內(nèi)容變化不能預(yù)知,故復(fù)用后總輸出碼率在某一時(shí)間段仍可能超過信道帶寬,致使傳輸過程中丟失數(shù)據(jù)。特別是丟失重要信息(如包頭、DCT直流及低頻系數(shù))時(shí),會(huì)嚴(yán)重影響圖像甚至該圖像所在整個(gè)圖像組(GOP)的質(zhì)量。因此單獨(dú)的統(tǒng)計(jì)復(fù)用技術(shù)不適用于同時(shí)傳輸較少視頻業(yè)務(wù)且對圖像質(zhì)量要求較高的數(shù)字視頻廣播領(lǐng)域。
  聯(lián)合碼率控制系統(tǒng)(見圖1)綜合各路視頻節(jié)目統(tǒng)計(jì)數(shù)字量,對總的可用帶寬進(jìn)行統(tǒng)一分配,使復(fù)用后輸出的碼率不超過帶寬,不丟失數(shù)據(jù),且各路節(jié)目質(zhì)量達(dá)到最佳。根據(jù)目前掌握的資料,聯(lián)合碼率控制技術(shù)尚處于研究階段,IBM、PHILIPS和DIVICOM等公司正開展此項(xiàng)研究。


  與獨(dú)立控制MPEG固定碼率編碼中各節(jié)目的碼率不同,聯(lián)合碼率控制系統(tǒng)對各編碼器實(shí)施聯(lián)合控制。系統(tǒng)開始工作時(shí),各編碼器可設(shè)置為相同量化參數(shù);當(dāng)系統(tǒng)預(yù)測到復(fù)用后的碼率超過信道帶寬時(shí),就把有效帶寬按圖像復(fù)雜度重新分配,然后改變量化參數(shù),使各編碼器輸出滿足目標(biāo)碼率。
  一些文獻(xiàn)介紹了各自的聯(lián)合碼率控制算法,但均存在一些缺欠,如:通過監(jiān)測信道緩存器的狀態(tài)調(diào)整碼率的算法[1],由于緩存器狀態(tài)并不直接反映圖像變化,因此碼率調(diào)整會(huì)導(dǎo)致有相同復(fù)雜度圖像的質(zhì)量差別;應(yīng)用專用芯片的算法不能通用[2];用前一GOP編碼結(jié)果預(yù)測碼率[3],使帶寬分配滯后于圖像變化;按自定義的Super GOP(各路節(jié)目對應(yīng)GOP的組合)和Super Frame(在Super GOP內(nèi)各節(jié)目對應(yīng)幀的組合)結(jié)構(gòu)分配帶寬[4],未考慮Super GOP內(nèi)的圖像變化。雖然各算法對節(jié)目質(zhì)量有一定改善,但缺乏對圖像變化、帶寬分配、碼率控制和緩存器狀態(tài)的全面考慮,各節(jié)目質(zhì)量難以達(dá)到最佳。
  為此,本文首次提出模塊化聯(lián)合碼率控制算法,即將整個(gè)碼率控制分為幾個(gè)控制模塊,使模塊算法相對獨(dú)立且其調(diào)整不影響系統(tǒng)控制的策略,算法更通用,能適用不同的編碼芯片。
2 模塊化控制算法
  系統(tǒng)可劃分為:碼率預(yù)測、帶寬分配、量化參數(shù)選擇和緩存器控制等幾個(gè)模塊。圖2只畫出了節(jié)目n與各控制模塊的關(guān)系,其它節(jié)目和控制模塊的關(guān)系與之相同。


2.1 碼率預(yù)測模塊
  碼率預(yù)測模塊以選定的時(shí)間段(幀或GOP)為單位,提取各路視頻節(jié)目的統(tǒng)計(jì)信息。有兩種碼率預(yù)測方法:前向預(yù)測法[1][2]和反饋預(yù)測法[3]。前者是在圖像編碼前,對其進(jìn)行預(yù)處理以提取統(tǒng)計(jì)數(shù)字量??商崛〉慕y(tǒng)計(jì)數(shù)字量有多種,它們的選擇應(yīng)與編碼器輸出一定質(zhì)量圖像所需碼率密切相關(guān)。例如,統(tǒng)計(jì)數(shù)字量10表示編碼器輸出同等質(zhì)量圖像的碼率是統(tǒng)計(jì)數(shù)字量為5時(shí)的2倍。前向預(yù)測法對圖像復(fù)雜度變化和場景切換的反映迅速,但節(jié)目內(nèi)容千差萬別,活動(dòng)性與復(fù)雜度大不相同,要找到能適應(yīng)任何圖像內(nèi)容且與輸出碼率密切相關(guān)的統(tǒng)計(jì)數(shù)字量是個(gè)帶有挑戰(zhàn)性的工作。另外,實(shí)時(shí)前向預(yù)測需要預(yù)處理芯片,增加系統(tǒng)成本。
  反饋預(yù)測法是在圖像編碼后,采集編碼過程中產(chǎn)生的統(tǒng)計(jì)數(shù)字量(圖2中虛線箭頭),以指導(dǎo)后面圖像編碼。與預(yù)處理法相比,反饋法不需對圖像預(yù)處理,運(yùn)算量較小。但統(tǒng)計(jì)數(shù)字量只能是編碼過程中產(chǎn)生的一些信息,是用前面圖像的統(tǒng)計(jì)數(shù)字量預(yù)測后面的圖像,因此反饋預(yù)測法對圖像復(fù)雜度變化和場景切換的反映不如前項(xiàng)預(yù)測法快速。但由于圖像內(nèi)容會(huì)持續(xù)一定時(shí)間,所以反饋預(yù)測法也能對碼率進(jìn)行預(yù)測。
2.2 帶寬分配模塊
  帶寬分配模塊可選取多種算法。比較簡單的算法是將可用信道容量分成Cp、C0兩部分,前者按預(yù)測的各路節(jié)目碼率分配,使每路節(jié)目保持一可接受的圖像質(zhì)量;后者按各種節(jié)目預(yù)測碼率的方差分配,保證復(fù)雜節(jié)目得到更多的碼率,使各路節(jié)目的圖像質(zhì)量統(tǒng)一[1]。
  帶寬分配模塊還可按碼率預(yù)測模塊輸出的統(tǒng)計(jì)數(shù)字量計(jì)算各路節(jié)目的復(fù)雜度,并按其比例分配帶寬[3]。復(fù)雜度計(jì)算可采用MPEG TM5[5]中相應(yīng)公式:
  C=R×Q
  式中,R是圖像編碼的碼率,Q是圖像的平均量化因子(圖像內(nèi)各宏塊量化因子的平均值)。
  另一種算法是先定義Super GOP和Super Frame結(jié)構(gòu)[4],并給每個(gè)Super GOP分配相同的碼率;然后按TM5中碼率分配方法將Super GOP碼率分配給每個(gè)Super Frame;同樣的方法也應(yīng)用于Super Frame中每一幀的碼率分配。
  各節(jié)目質(zhì)量統(tǒng)一體現(xiàn)在圖像有相同的失真度上。根據(jù)率失真理論[6],復(fù)雜圖像應(yīng)分配給較多的碼率時(shí),其失真度與簡單圖像相同。所以,無論采用何種算法分配帶寬,都應(yīng)使分配給各路節(jié)目的目標(biāo)碼率與其復(fù)雜度成正比。
  另外,帶寬分配模塊在什么時(shí)間段上分配帶寬也值得考慮。有兩種選擇:以圖像幀或GOP為時(shí)間單位。按幀分配碼率,需先確定任一時(shí)刻各節(jié)目的圖像類型(各節(jié)目的GOP結(jié)構(gòu)不同,其圖像類型的變化不同步),以便合理分配碼率。從圖像質(zhì)量的穩(wěn)定性上考慮,碼率分配應(yīng)使整個(gè)圖像序列的整體質(zhì)量最優(yōu),而不是某一幀圖像質(zhì)量最佳,大多數(shù)視頻節(jié)目在GOP內(nèi)發(fā)生場景切換的幾率很小,且GOP內(nèi)三種圖像類型I、P、B的排列順序具有重復(fù)性。從而可按預(yù)先確定的比例分配GOP內(nèi)圖像的碼率,且各幀碼率的波動(dòng)可在GOP內(nèi)相互補(bǔ)償。如果某一GOP內(nèi)發(fā)生場景切換,可把這一GOP內(nèi)余下圖像與下一GOP合成一個(gè)大GOP,使場景切換不影響碼率分配策略。因此,以GOP為單位分配帶寬更合理。
2.3 量化參數(shù)選擇
  量化參數(shù)選擇模塊使各編碼器輸出滿足帶寬分配模塊預(yù)分配的目標(biāo)碼率。量化參數(shù)包括量化因子Q和量化矩陣。量化矩陣可在圖像級調(diào)整,量化因子Q可在條或宏塊級調(diào)整。量化矩陣依人的視覺空間頻率特性改變,相對穩(wěn)定。碼率的控制和調(diào)整一般通過改變量化因子實(shí)現(xiàn)。圖3是量化因子與輸出碼率的關(guān)系。


  為使圖像主觀質(zhì)量相對一致,各路節(jié)目應(yīng)盡量使用相同量化因子[3]。量化參數(shù)選擇模塊可在量化因子取值范圍(1~31)內(nèi)搜索,選擇合適的Q使編碼器輸出最接近的目標(biāo)碼率。由圖3可知,量化因子較小時(shí),其增減1都會(huì)使碼率變化很大。所以,滿足目標(biāo)碼率的Q有可能不是整數(shù)。如選用整數(shù)Q,即圖像內(nèi)每個(gè)宏塊使用相同Q,編碼器輸出可能與目標(biāo)碼率有偏差,但碼率偏差可在緩存器中相互補(bǔ)償。
  圖像平均量化因子也可為小數(shù)值,即圖像內(nèi)條或宏塊選用不同Q值。量化參數(shù)選擇模塊可以結(jié)合人眼特性,預(yù)先確定多種Q的選取模板,供圖像按其活動(dòng)性、復(fù)雜度和內(nèi)容等選用,保證圖像主觀質(zhì)量最佳。例如,一幅中間部分細(xì)節(jié)較多的圖像Q若是3.75,可讓圖像邊緣占宏塊總數(shù)四分之三的宏塊的Q值取為4,中間部分其它四分之一宏塊的Q值取為3。這樣,不受觀眾注意的圖像邊緣量化較粗,而圖像中心量化較細(xì),整幅圖像主觀質(zhì)量最佳。
2.4 緩存器控制
  緩存器控制模塊對碼率加入限制以使緩存器不發(fā)生上、下溢[3]??稍O(shè)置一緩存器閾值系數(shù)α,令輸出的總碼率Bf滿足:
  αBs≤Bf≤(1-α)Bs
  式中Bs為緩存器容量。如果碼率超出此閾值,緩存器控制模塊指導(dǎo)帶寬分配模塊重新分配帶寬。α決定著緩存器利用率的大小,應(yīng)根據(jù)實(shí)際情況靈活選取。
  碼率預(yù)測、帶寬分配、量化參數(shù)選擇和緩存器控制是聯(lián)合碼率控制系統(tǒng)中最重要的幾個(gè)模塊,它們之間并不是獨(dú)立、割裂的,而是相互影響、相互制約的。因此,要從使整個(gè)系統(tǒng)性能最佳的角度選擇這幾個(gè)模塊的算法。
3 聯(lián)合碼率控制性能評價(jià)
  評價(jià)聯(lián)合碼率控制系統(tǒng)性能有兩項(xiàng)指標(biāo):統(tǒng)計(jì)復(fù)用增益(G)與峰值信噪比(PSNR)。多路MPEG VBR視頻節(jié)目的統(tǒng)計(jì)復(fù)用增益G定義為:在同一固定帶寬信道內(nèi),可傳輸?shù)慕?jīng)過復(fù)用且具有同等或更佳圖像質(zhì)量的VBR視頻業(yè)務(wù)數(shù)目對可傳輸?shù)腃BR視頻業(yè)務(wù)數(shù)目之比[1]。通常G越大,復(fù)用性能越佳,可同時(shí)復(fù)用的VBR視頻業(yè)務(wù)數(shù)目也越多。
  用PSNR評價(jià)聯(lián)合碼率控制系統(tǒng)性能的方法是:求復(fù)用后各路VBR視頻節(jié)目的峰值信噪比與傳輸同等數(shù)目CBR視頻節(jié)目時(shí)的峰值信噪比之比,所得PSNR的增加量即表征圖像質(zhì)量的改善程度。峰值信噪比的計(jì)算式為:
  
  式中,n(x、y、z)是在象素(x、y、z)上疊加的噪聲,M是總的象素?cái)?shù)。
  總之,聯(lián)合碼率控制技術(shù)能消除統(tǒng)計(jì)復(fù)用的信息丟失缺陷,將復(fù)用后的視頻業(yè)務(wù)碼率限制在信道容量之內(nèi),且各節(jié)目的圖像質(zhì)量保持一致,適用于數(shù)字視頻廣播。本文首次提出模塊化聯(lián)合碼率控制,將系統(tǒng)分為幾個(gè)控制模塊,模塊算法的調(diào)整不影響整體控制策略,其目的是增強(qiáng)算法的通用性,使其適用不同編碼芯片,得到更廣泛的應(yīng)用。
  對模塊化聯(lián)合碼率控制技術(shù),還有很多待研究的課題。包括選擇合適的算法提高系統(tǒng)運(yùn)算速度和工作性能;研究不僅按圖像復(fù)雜度分配碼率,而且通過設(shè)置優(yōu)先級保證重點(diǎn)節(jié)目有足夠碼率的方法;研究較“峰值信噪比”更能正確地反映重建圖像主觀質(zhì)量的客觀量等。


參考文獻(xiàn)
1 Ajanta Guha and Daniel J.Reininger、Multichannel joint rate control of VBR MPEG encoded video for DBS applications、IEEE Transaction on Consumer Electronics、1994;40(3):616~623
2 DIVICOM.Statmux、www.divicom.com、1999
3 L.Boroczky、A.Y.Ngai and E.F.Westerman.Statistical multiplexing using MPEG-2 video encoders.IBM、1999
4 Limin Wang and Andre Vincent.Bit allocation for joint coding of multiple video programs. SPIE、1997;3024:149~158
5 ISO/IEC JTC1/SC29/WG11/N0400、MPEG-2 Test Model 5、Geneva:ISO/IEC、Doc、1993
6 姚慶棟,畢厚杰,王兆華,徐孟俠.圖像編碼基礎(chǔ).杭州:浙江大學(xué)出版社,1993

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。