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