7.H.264的效率
H.264將視頻壓縮技術(shù)提升到一個(gè)新的高度。在H.264中,將通過(guò)新的高級(jí)幀內(nèi)預(yù)測(cè)方法對(duì)I幀進(jìn)行編碼。這種方法通過(guò)對(duì)幀中每個(gè)宏塊內(nèi)較小的像素塊進(jìn)行連續(xù)預(yù)測(cè),可以大大減少I幀所占的數(shù)據(jù)位并保持較高的質(zhì)量。這一點(diǎn)可通過(guò)在與進(jìn)行幀內(nèi)編碼的新4×4像素塊相鄰接的前幾個(gè)編碼像素中,尋找匹配的像素來(lái)實(shí)現(xiàn)。通過(guò)重復(fù)利用已編碼的像素值,可以極大地減少需要編碼的位數(shù)。新的幀內(nèi)預(yù)測(cè)功能是H.264技術(shù)的關(guān)鍵部分,實(shí)驗(yàn)證明,這種方法非常有效。與只使用I幀的M-JPEG視頻流相比,只使用I幀的H.264視頻流的文件大小要小得多。
圖6.在由16個(gè)像素塊構(gòu)成的宏塊中,對(duì)其中1個(gè)像素塊內(nèi)的4×4像素進(jìn)行編碼時(shí),幀內(nèi)預(yù)測(cè)所采用的幾種模式的圖示。在宏塊的16個(gè)像素塊中,每個(gè)像素塊都可以使用不同的模式進(jìn)行編碼。
上圖文字:
In this mode, four bottom pixels from the block above are copied vertically into part of an intra-coded macroblock. | 在這種模式中,上方像素塊中的四個(gè)底部像素被垂直拷貝至經(jīng)過(guò)幀內(nèi)編碼的宏塊中。 |
In this mode, four right-most pixels from the block to the left are copied horizontally into part of an intra-coded macroblock. | 在這種模式中,左邊像素塊中的最右側(cè)四個(gè)像素被水平拷貝至經(jīng)過(guò)幀內(nèi)編碼的宏塊中。 |
In this mode, eight bottom pixels from the blocks above are copied diagonally into part of an intra-coded macroblock. | 在這種模式中,上方像素塊中的八個(gè)底部像素被沿對(duì)角線方向拷貝至經(jīng)過(guò)幀內(nèi)編碼的宏塊中。 |
圖7.以上是H.264幀內(nèi)預(yù)測(cè)方法的效率圖示。通過(guò)這種方法,幀內(nèi)預(yù)測(cè)圖像將“免費(fèi)”發(fā)送。只需對(duì)殘留圖像和幀內(nèi)預(yù)測(cè)模式進(jìn)行編碼,就可以生成輸出圖像。
對(duì)P幀和B幀進(jìn)行編碼時(shí)所采用的基于塊的運(yùn)動(dòng)補(bǔ)償,在H.264中也得到了改進(jìn)。H.264編碼器可以在一個(gè)或多個(gè)參考幀的少數(shù)或眾多區(qū)域內(nèi),以低至子像素的精度搜索匹配的塊。為了提高匹配率,可以對(duì)塊的大小和形狀進(jìn)行調(diào)整。在參考幀中,對(duì)于找不到匹配塊的區(qū)域,將會(huì)使用幀內(nèi)編碼的宏塊。H.264基于塊的運(yùn)動(dòng)補(bǔ)償具有高度的靈活性,非常適合人群比較擁擠的監(jiān)控場(chǎng)所,因?yàn)樗軌虮WC較高的質(zhì)量,以滿足嚴(yán)格的應(yīng)用要求。運(yùn)動(dòng)補(bǔ)償是視頻編碼器要求最嚴(yán)格的一個(gè)方面,H.264編碼器實(shí)施運(yùn)動(dòng)補(bǔ)償?shù)牟煌绞揭约捌鋵?shí)施程度,將會(huì)影響視頻壓縮的效率。
對(duì)于H.264,通過(guò)使用環(huán)內(nèi)去塊效應(yīng)濾波器,可以減少在使用M-JPEG和MPEG標(biāo)準(zhǔn)(而不是H.264標(biāo)準(zhǔn))的高度壓縮視頻中通常出現(xiàn)的圖像模糊現(xiàn)象。此過(guò)濾器能夠通過(guò)自適應(yīng)強(qiáng)度使塊邊緣變得平滑,從而確保輸出幾乎完美無(wú)缺的解壓縮視頻。
圖8.從右邊的圖中我們可以看到,在應(yīng)用了去塊效應(yīng)濾波器之后,左圖中高度壓縮圖像的塊狀效應(yīng)已經(jīng)大大降低。