資源描述:
《h.264編碼技術(shù)實(shí)現(xiàn)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、H.264編碼技術(shù)實(shí)現(xiàn)由于H.264標(biāo)準(zhǔn)引入了數(shù)據(jù)分割等抗誤碼技術(shù),實(shí)現(xiàn)了在復(fù)雜環(huán)境下的使用,可以適應(yīng)不同網(wǎng)絡(luò)的傳輸要求。由于采用高度復(fù)雜的實(shí)現(xiàn)算法,H.264是目前低碼率下壓縮率最高的編碼標(biāo)準(zhǔn),在帶寬不穩(wěn)定的無線網(wǎng)絡(luò)上有著無法比擬的優(yōu)點(diǎn)。H.246技術(shù)介紹H.264并不是明確的規(guī)定一個(gè)編解碼器是如何實(shí)現(xiàn)的,而是規(guī)定了構(gòu)成編碼的比特流的語法、語法元素的語義以及語義元素的解碼過程,為不同制造商的編解碼器提供兼容性,各個(gè)廠商的編碼器和解碼器在此框架下應(yīng)能互通,在實(shí)現(xiàn)上具有較大的靈活性,而且有利用相互競爭[24,25]。H.264編解碼的功能模塊跟一般的編解碼器大致相同,主要包括預(yù)測、變換
2、、量化和熵編碼等功能模塊,H.264編解碼的重要變化主要體現(xiàn)在各個(gè)模塊的細(xì)節(jié)上。H.264是一個(gè)總的視頻壓縮標(biāo)準(zhǔn),為了適應(yīng)不同場合的不同應(yīng)用,H.264規(guī)定了不同的檔次。其每一個(gè)檔次規(guī)定了不同的語法元素和句法,適合于不同的應(yīng)用場合。u基本檔次:利用I片P片支持幀內(nèi)預(yù)測和幀間預(yù)測編碼,支持利用基于上下文的自適應(yīng)的變長編碼進(jìn)行熵編碼(CAVLC)。只要用于會議電視、可視電話、無線通信等實(shí)時(shí)視頻通信。u主要檔次:支持隔行視頻,采用采用加權(quán)預(yù)測的幀內(nèi)編碼和B片的幀間編碼;支持利用基于上下文的自適應(yīng)的算術(shù)編碼(CABAC)。主要用于數(shù)字廣播電視與數(shù)字視頻存儲等。u擴(kuò)展檔次:支持碼流之間的切換(
3、SP片和SI片),改進(jìn)誤碼性能(數(shù)據(jù)分割)、但是不支持隔行視頻和自適應(yīng)算術(shù)編碼(CABAC)。u高級檔次:2004年,視頻聯(lián)合小組又增加了一個(gè)高端檔次用于支持高精度拓展FRExt(FidelityRangeExtensions),該拓展支持更高的像素精度。H.264的4個(gè)檔次具有不同的功能,每個(gè)檔次設(shè)定不同的參數(shù)(如采樣速率、編碼比特率、圖像尺寸等),得到編解碼器不同性能的級。1.H.264編碼器同以往的編碼標(biāo)準(zhǔn),H.264標(biāo)準(zhǔn)沒有明確界定的編解碼(編碼器/解碼器的配對),而是定義視頻流的編解碼方法。H.264仍采用圖像預(yù)測和變換編碼相結(jié)合的編碼結(jié)構(gòu),其編碼器本結(jié)構(gòu)如下圖所示:編碼器
4、采用的仍是變換和預(yù)測的混合編碼法。輸入的幀或場以宏塊為單位被編碼器處理。首先,按幀內(nèi)或幀間預(yù)測編碼的方法進(jìn)行處理。如果采用幀內(nèi)預(yù)測編碼,其預(yù)測值PRED(圖中用P表示)是由當(dāng)前片中前面己編碼的參考圖像經(jīng)運(yùn)動補(bǔ)償(MC)后得出,其中參考圖像用Pn一l表示。為了提高預(yù)測精度,從而提高壓縮比,實(shí)際的參考圖像可在過去或未來(指顯示次序上)已編碼解碼重建和濾波的幀中進(jìn)行選擇。預(yù)測值PRED和當(dāng)前塊相減后,產(chǎn)生一個(gè)殘差塊Dn,經(jīng)塊變換、量化后產(chǎn)生一組量化后的變換系數(shù)X,再經(jīng)嫡編碼,與解碼所需的一些邊信息(如預(yù)測模式量化參數(shù)、運(yùn)動矢量等)一起組成一個(gè)壓縮后的碼流,經(jīng)NAL(網(wǎng)絡(luò)自適應(yīng)層)供傳輸和存
5、儲用。為了提供進(jìn)一步預(yù)測用的參考圖像,編碼器必須有重建圖像的功能。因此必須使殘差圖像經(jīng)反量化、反變換后得到的。與預(yù)測值P相加,得到u。(未經(jīng)濾波的幀)。為了去除編碼解碼環(huán)路中產(chǎn)生的噪聲,為了提高參考幀的圖像質(zhì)量,從而提高壓縮圖像性能,設(shè)置了一個(gè)環(huán)路濾波器,濾波后的輸出。即重建圖像可用作參考圖像。2.H.264核心算法H.264標(biāo)準(zhǔn)的核心思想與現(xiàn)有的其它視頻編解碼標(biāo)準(zhǔn)一致,也是采用變換和預(yù)測的混合編碼方法。但是,H.264在算法的實(shí)現(xiàn)細(xì)節(jié)上使用了不同于其他標(biāo)準(zhǔn)的新技術(shù),使得H.264編碼性能遠(yuǎn)遠(yuǎn)優(yōu)于其他標(biāo)準(zhǔn)。H.264的核心算法主要包括幀內(nèi)預(yù)測模式、整數(shù)變換編碼、先進(jìn)的量化、熵編碼和高
6、級運(yùn)動估計(jì)與補(bǔ)償?shù)?。H.264標(biāo)準(zhǔn)規(guī)定了符合H.264標(biāo)準(zhǔn)的檔次、級別與碼流范圍,但是并沒有規(guī)定具體的編解碼算法。H.264標(biāo)準(zhǔn)自2003年公布以后,世界各地的各個(gè)組織和研究機(jī)構(gòu)都研發(fā)出了自己的H.264編解碼器。這些開源代碼在支持H.264特性、解碼速度和開發(fā)難易度等方面不盡相同。目前流行的開源H.264解碼器主要有以下4種:1)JM:JM系列是H.264標(biāo)準(zhǔn)的官方測試源碼,由德國HHI(HeinrichHertzIntiut)研究所負(fù)責(zé)開發(fā),它注重實(shí)現(xiàn)H.264標(biāo)準(zhǔn)豐富的功能,并沒有專門進(jìn)行優(yōu)化。因此該源代碼的特點(diǎn)是引入各種新特性提高編解碼性能,但是結(jié)構(gòu)冗長、復(fù)雜度高。適合進(jìn)行學(xué)
7、術(shù)研究但是實(shí)用性差。2)X264:X264是由法國巴黎中心學(xué)校的中心研究所的一些學(xué)生在網(wǎng)上組織發(fā)起的,并由眾多視頻編解碼愛好者共同完成的。其目的是實(shí)現(xiàn)實(shí)用的H.264編解碼器。X264摒棄了一些耗時(shí)但是對編碼性能提高不是很大的一些功能模塊,因此其相比較JM系列而言,在程序結(jié)構(gòu)和算法性能方面有了提高。X264實(shí)現(xiàn)了H.264標(biāo)準(zhǔn)的基本檔次編碼器的基本功能和另外兩個(gè)檔次的部分功能。但是它還沒有實(shí)現(xiàn)真正的解碼功能。3)T264:T264是由中國視頻編碼自由組織聯(lián)