??? H.264是一個(gè)需要許可證才能使用的開放標(biāo)準(zhǔn),可支持最當(dāng)今市場(chǎng)上最高效的視頻壓縮技.?H.264是最新的視頻壓縮標(biāo)準(zhǔn),它也稱為MPEG-4Part10或AVC(高級(jí)視頻編碼)。據(jù)預(yù)測(cè),在未來(lái)幾年內(nèi)H.264將成為行業(yè)首選的視頻標(biāo)準(zhǔn) 在不影響圖像質(zhì)量的情況下,與采用M-JPEG和MPEG-4Part2標(biāo)準(zhǔn)相比,H.264編碼器可使數(shù)字視頻文件的大小分別減少80%和50%以上。這意味著視頻文件所需的網(wǎng)絡(luò)帶寬和存儲(chǔ)空間將大大降低?;蛘邚牧硪粋€(gè)角度來(lái)說(shuō),在某一特定比特率下,視頻圖像質(zhì)量將得到顯著提高。
??? H.264由電信和IT行業(yè)的標(biāo)準(zhǔn)化組織聯(lián)合制定,與先前標(biāo)準(zhǔn)相比,H.264有望得到更廣泛的應(yīng)用。
??? H.264已經(jīng)應(yīng)用于手機(jī)和數(shù)字視頻播放器等新一代電子產(chǎn)品中,并且迅速獲得廣大最終用戶的青睞。在線視頻存儲(chǔ)公司和電信公司等服務(wù)提供商也開始采用H.264標(biāo)準(zhǔn)。
??? 在視頻監(jiān)控行業(yè),H.264將很可能以最快速度應(yīng)用于那些需要高幀速和高分辨率的監(jiān)控場(chǎng)所,例如高速公路、機(jī)場(chǎng)和娛樂(lè)場(chǎng)所等。對(duì)于這些監(jiān)控場(chǎng)所而言,使用30/25fps(NTSC/PAL)的幀速已經(jīng)成為一種通行的標(biāo)準(zhǔn)。然而,由于H.264能夠減少帶寬和存儲(chǔ)需求,具有顯著的經(jīng)濟(jì)性,因此可以幫助企業(yè)最大限度節(jié)省成本。
??? 此外,由于H.264這種極其高效的壓縮技術(shù)能夠在不影響圖像質(zhì)量的前提下,對(duì)大文件進(jìn)行大比例壓縮并降低比特率,因此有望提高百萬(wàn)像素?cái)z像機(jī)的普及速度。然而,事物都有其兩面性。雖然H.264能夠節(jié)省網(wǎng)絡(luò)帶寬和存儲(chǔ)成本,然而它卻對(duì)網(wǎng)絡(luò)攝像機(jī)和顯示終端提出了更高的性能要求。
2.H.264的發(fā)展
??? H.264是ITU-T的視頻編碼專家組(VCEG)和ISO/IEC運(yùn)動(dòng)圖像專家組(MPEG)聯(lián)合制定的新一代視頻壓縮標(biāo)準(zhǔn)。ITU-T是一個(gè)代表國(guó)際電信聯(lián)盟協(xié)調(diào)制定電信標(biāo)準(zhǔn)的部門。ISO是指國(guó)際標(biāo)準(zhǔn)化組織。IEC是指國(guó)際電工委員會(huì),負(fù)責(zé)制定所有電子、電氣和相關(guān)技術(shù)的標(biāo)準(zhǔn)。H.264是ITU-T所使用的名稱,而ISO/IEC將其命名為MPEG-4Part10/AVC,因?yàn)樗淼氖荕PEG-4系列標(biāo)準(zhǔn)中的一個(gè)新標(biāo)準(zhǔn)。MPEG-4系列標(biāo)準(zhǔn)包括了MPEG-4Part2等標(biāo)準(zhǔn),MPEG-4Part2是一個(gè)應(yīng)用于基于IP的視頻編碼器和網(wǎng)絡(luò)攝像機(jī)的標(biāo)準(zhǔn)。
為了解決先前視頻壓縮標(biāo)準(zhǔn)中存在的不足,H.264的目標(biāo)是支持:
??? 高效壓縮,在某一特定的視頻質(zhì)量下,與采用任何其它視頻標(biāo)準(zhǔn)相比,可以使比特率平均降低50%。
??? 更強(qiáng)大的容錯(cuò)能力,能夠糾正各種網(wǎng)絡(luò)的傳輸錯(cuò)誤
??? 低時(shí)延功能,并能夠在更高時(shí)延的情況下提供更高質(zhì)量的圖像
??? 通過(guò)簡(jiǎn)單的句法規(guī)范簡(jiǎn)化實(shí)施
??? 精確匹配解碼,嚴(yán)格規(guī)定了編碼器和解碼器如何進(jìn)行數(shù)值計(jì)算,以避免錯(cuò)誤累積
??? 此外,H.264還能夠靈活地支持有著不同比特率要求的各種監(jiān)控應(yīng)用。例如,在娛樂(lè)視頻應(yīng)用(包括廣播、衛(wèi)星電視、有線電視和DVD)中,H.264能夠以高時(shí)延實(shí)現(xiàn)1-10Mbit/秒的性能。而對(duì)于電信服務(wù)來(lái)說(shuō),H.264能夠以低時(shí)延實(shí)現(xiàn)低于1Mbit/秒的比特率。
3.視頻壓縮的工作原理
??? 視頻壓縮通過(guò)減少和去除冗余視頻數(shù)據(jù)的方式,達(dá)到有效發(fā)送和存儲(chǔ)數(shù)字視頻文件的目的。在壓縮過(guò)程中,需要應(yīng)用壓縮算法對(duì)源視頻進(jìn)行壓縮以創(chuàng)建壓縮文件,以便進(jìn)行傳輸和存儲(chǔ)。要想播放壓縮文件,則需要應(yīng)用相反的解壓縮算法對(duì)視頻進(jìn)行還原,還原后的視頻內(nèi)容與原始的源視頻內(nèi)容幾乎完全相同。壓縮、發(fā)送、解壓縮和顯示文件所需的時(shí)間稱為延時(shí)。在相同處理能力下,壓縮算法越高級(jí),延時(shí)就越長(zhǎng)。
視頻編解碼器(編碼器/解碼器)是指兩個(gè)協(xié)同運(yùn)行的壓縮-解壓算法。使用不同標(biāo)準(zhǔn)的視頻編解碼器通常彼此之間互不兼容;也就是說(shuō),使用一種標(biāo)準(zhǔn)進(jìn)行壓縮的視頻內(nèi)容無(wú)法使用另外一種標(biāo)準(zhǔn)進(jìn)行解壓縮。例如,MPEG-4Part2解碼器就不能與H.264編碼器協(xié)同運(yùn)行。這是因?yàn)橐环N算法無(wú)法正確地對(duì)另外一個(gè)算法的輸出信號(hào)進(jìn)行解碼,然而我們可以在同一軟件或硬件中使用多種不同的算法,以支持對(duì)多種格式的文件進(jìn)行壓縮。
??? 由于不同的視頻壓縮標(biāo)準(zhǔn)會(huì)使用不同的方法來(lái)減少數(shù)據(jù)量,因此壓縮結(jié)果在比特率、質(zhì)量和延時(shí)方面也各不相同。
??? 此外,由于編碼器的設(shè)計(jì)者可能會(huì)選擇使用某個(gè)標(biāo)準(zhǔn)所定義的不同工具集,因此,即使是使用相同壓縮標(biāo)準(zhǔn)的編碼器之間,其壓縮結(jié)果也可能會(huì)存在差異。不過(guò),只要編碼器的輸出信號(hào)符合標(biāo)準(zhǔn)的格式以及解碼器的要求,就可以采用不同的實(shí)施方式。這是非常有利的,因?yàn)椴煌膶?shí)施方式可實(shí)現(xiàn)不同的目標(biāo),滿足不同的預(yù)算要求。對(duì)用于管理光介質(zhì)存儲(chǔ)的非實(shí)時(shí)專業(yè)軟件編碼器來(lái)說(shuō),應(yīng)該能夠比用于視頻會(huì)議的集成在手持設(shè)備中的實(shí)時(shí)硬件編碼器提供質(zhì)量更高的編碼視頻。因此,即使是某個(gè)指定的標(biāo)準(zhǔn)也無(wú)法保證提供指定的比特率或質(zhì)量。而且,如果不事先確定實(shí)施方式,一個(gè)標(biāo)準(zhǔn)就無(wú)法與其它標(biāo)準(zhǔn)進(jìn)行正確的性能對(duì)比,甚至也無(wú)法與同一標(biāo)準(zhǔn)的其它實(shí)施方式進(jìn)行正確的性能對(duì)比。
??? 與編碼器不同,解碼器必須實(shí)施某個(gè)標(biāo)準(zhǔn)的所有必需部分,才能對(duì)符合標(biāo)準(zhǔn)的比特流進(jìn)行解碼。這是因?yàn)闃?biāo)準(zhǔn)中明確規(guī)定了解壓縮算法應(yīng)如何對(duì)壓縮視頻的每個(gè)比特進(jìn)行還原。
??? 下圖是在相同圖像質(zhì)量水平下,采用下列視頻標(biāo)準(zhǔn)的比特率對(duì)比:M-JPEG,MPEG-4Part2(無(wú)運(yùn)動(dòng)補(bǔ)償)、MPEG-4Part2(有運(yùn)動(dòng)補(bǔ)償)和H.264(基準(zhǔn)類)。
圖1.對(duì)于視頻序列樣本來(lái)說(shuō),使用H.264編碼器能夠比使用有運(yùn)動(dòng)補(bǔ)償?shù)腗PEG-4編碼器降低50%的比特率(bps)。在沒有運(yùn)動(dòng)補(bǔ)償?shù)那闆r下,H.264編碼器的效率至少比MPEG-4編碼器高3倍,比M-JPEG編碼器高6倍。
????
4.H.264類別和等級(jí)
??? 參與制定H.264標(biāo)準(zhǔn)的聯(lián)合組織致力于創(chuàng)建一個(gè)簡(jiǎn)單明了的解決方案,最大限度地限制選項(xiàng)和特性的數(shù)量。和其它視頻標(biāo)準(zhǔn)一樣,H.264標(biāo)準(zhǔn)的一個(gè)重要方面是通過(guò)類別(算法特性集)和等級(jí)(性能等級(jí))中提供的功能,以最佳的方式支持常見應(yīng)用和通用格式。
??? H.264有7個(gè)類別,每個(gè)類別都針對(duì)某一類特定的應(yīng)用。此外,每個(gè)類別都定義了編碼器能夠使用哪些特性集,并限制了解碼器在實(shí)施方面的復(fù)雜性。
??? 網(wǎng)絡(luò)攝像機(jī)和視頻編碼器最有可能使用的是基準(zhǔn)類別,此類別主要針對(duì)計(jì)算資源有限的應(yīng)用。對(duì)于嵌入在網(wǎng)絡(luò)視頻產(chǎn)品中的實(shí)時(shí)編碼器來(lái)說(shuō),在特定的可用性能下,基準(zhǔn)類別最為適用。此類別能夠?qū)崿F(xiàn)低延時(shí),這對(duì)監(jiān)控視頻來(lái)說(shuō)是一個(gè)很重要的要求,而且對(duì)于支持PTZ網(wǎng)絡(luò)攝像機(jī)實(shí)現(xiàn)實(shí)時(shí)的平移/傾斜/縮放(PTZ)控制來(lái)說(shuō)尤為重要。
??? H.264分為11個(gè)功能等級(jí),對(duì)性能、帶寬和內(nèi)存需求進(jìn)行了限制。每個(gè)等級(jí)都規(guī)定了從QCIF到HDTV等各種分辨率所對(duì)應(yīng)的比特率和編碼速率(每秒宏塊數(shù))。分辨率越高,要求的等級(jí)就越高。
5.幀的基本知識(shí)
??? 根據(jù)H.264的不同類別,編碼器會(huì)使用不同類型的幀,例如I幀、P幀和B幀。
??? I幀(幀內(nèi)編碼幀)是一種自帶全部信息的獨(dú)立幀,無(wú)需參考其它圖像便可獨(dú)立進(jìn)行解碼。視頻序列中的第一個(gè)幀始終都是I幀。如果所傳輸?shù)谋忍亓髟獾狡茐?,則需要將I幀用作新查看器的起始點(diǎn)或重新同步點(diǎn)。I幀可以用來(lái)實(shí)現(xiàn)快進(jìn)、快退以及其它隨機(jī)訪問(wèn)功能。如果新的客戶端將參與查看視頻流,編碼器將以相同的時(shí)間間隔或者根據(jù)要求自動(dòng)插入I幀。I幀的缺點(diǎn)在于它們會(huì)占用更多的數(shù)據(jù)位,但從另一方面看,I幀不會(huì)產(chǎn)生可覺察的模糊現(xiàn)象。
??? P幀(幀間預(yù)測(cè)編碼幀)需要參考前面的I幀和/或P幀的不同部分才能進(jìn)行編碼。與I幀相比,P幀通常占用更少的數(shù)據(jù)位,但其缺點(diǎn)是,由于P幀對(duì)前面的P和I參考幀有著復(fù)雜的依賴性,因此對(duì)傳輸錯(cuò)誤非常敏感。
??? B幀(雙向預(yù)測(cè)編碼幀)需要同時(shí)以前面的幀和后面的幀作為參考幀。
圖2.帶有I幀、B幀和P幀的典型視頻序列。P幀只需要參考前面的I幀或P幀,而B幀則需要同時(shí)參考前面和后面的I幀或P幀。
??? 當(dāng)視頻解碼器逐個(gè)幀地對(duì)比特流進(jìn)行解碼以便重構(gòu)視頻時(shí),必須始終從I幀開始解碼。如果使用了P幀和B幀,則必須與參考幀一起解碼。
??? 在H.264基準(zhǔn)類中,僅使用I幀和P幀。由于基準(zhǔn)類沒有使用B幀,所以可以實(shí)現(xiàn)低延時(shí),因此是網(wǎng)絡(luò)攝像機(jī)和視頻編碼器的理想選擇。
6.減少數(shù)據(jù)量的基本方法
??? 可以通過(guò)各種方法在一個(gè)圖像幀內(nèi)或者在一系列幀之間減少視頻數(shù)據(jù)量。
??? 在某個(gè)圖像幀內(nèi),只需要?jiǎng)h除不必要的信息就可以減少數(shù)據(jù)量,但這樣做會(huì)導(dǎo)致圖像的分辨率下降。
??? 在一系列的幀內(nèi),可以通過(guò)差分編碼這樣的方法來(lái)減少視頻數(shù)據(jù)量,包括H.264在內(nèi)的大多數(shù)視頻壓縮標(biāo)準(zhǔn)都采用這種方法。在差分編碼中,會(huì)將一個(gè)幀與參考幀(即前面的I幀或P幀)進(jìn)行對(duì)比,然后只對(duì)那些相對(duì)于參考幀來(lái)說(shuō)發(fā)生了變化的像素進(jìn)行編碼。通過(guò)這種方法,可以降低需要進(jìn)行編碼和發(fā)送的像素值。
??圖3.對(duì)M-JPEG格式來(lái)說(shuō),上述序列中的三個(gè)圖像分別作為獨(dú)立的圖像(I幀)進(jìn)行編碼和發(fā)送,彼此之間互不依賴。
圖4.對(duì)差分編碼(包括H.264在內(nèi)的大多數(shù)視頻壓縮標(biāo)準(zhǔn)都采用這種方法)來(lái)說(shuō),只有第一個(gè)圖像(I幀)是將全幀圖像信息進(jìn)行編碼。
??? 如果是根據(jù)像素塊(宏塊)而不是單個(gè)的像素來(lái)檢測(cè)差別并進(jìn)行差分編碼,還可以進(jìn)一步減少需要編碼的信息量;因此,可以對(duì)更大的區(qū)域進(jìn)行對(duì)比,而只需對(duì)那些存在重大差別的塊進(jìn)行編碼。此外,對(duì)發(fā)生更改的區(qū)域位置進(jìn)行標(biāo)記的相關(guān)開銷也將大大降低。
??? 然而,如果視頻中存在大量物體運(yùn)動(dòng)的話,差分編碼將無(wú)法顯著減少數(shù)據(jù)量。這時(shí),可以采用基于塊的運(yùn)動(dòng)補(bǔ)償技術(shù)?;趬K的運(yùn)動(dòng)補(bǔ)償考慮到視頻序列中構(gòu)成新幀的大量信息都可以在前面的幀中找到,但可能會(huì)在不同的位置上。所以,這種技術(shù)將一個(gè)幀分為一系列的宏塊。然后,通過(guò)在參考幀中查找匹配塊的方式,逐塊地構(gòu)建或者“預(yù)測(cè)”一個(gè)新幀(例如P幀)。如果發(fā)現(xiàn)匹配的塊,編碼器只需要對(duì)參考幀中發(fā)現(xiàn)匹配塊的位置進(jìn)行編碼。與對(duì)塊的實(shí)際內(nèi)容進(jìn)行編碼相比,只對(duì)運(yùn)動(dòng)矢量進(jìn)行編碼可以減少所占用的數(shù)據(jù)位。
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視頻流的文件大小要小得多。
??? 測(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ú)缺的解壓縮視頻。
圖7.從右邊的圖中我們可以看到,在應(yīng)用了去塊效應(yīng)濾波器之后,左圖中高度壓縮圖像的塊狀效應(yīng)已經(jīng)大大降低。
??? H.264代表著視頻壓縮技術(shù)的一個(gè)重大飛躍。由于該技術(shù)具有更精確的預(yù)測(cè)能力和更高的容錯(cuò)能力,因此可實(shí)現(xiàn)更高的壓縮效率。它將有可能推動(dòng)視頻編碼器進(jìn)一步向前發(fā)展,從而能夠在同樣的比特率下提供更高質(zhì)量的視頻流、更高的幀速以及更高的分辨率(與先前的標(biāo)準(zhǔn)相比);或者反過(guò)來(lái)說(shuō),能夠在同樣的視頻質(zhì)量下降低比特率。
??? H.264是ITU、ISO和IEC首次在視頻壓縮方面聯(lián)合制定的一個(gè)通用國(guó)際標(biāo)準(zhǔn)。由于其具有高度的靈活性,H.264已廣泛應(yīng)用于各種領(lǐng)域中,例如:高清DVD(例如藍(lán)光)、數(shù)字視頻廣播(包括高清TV)、在線視頻存儲(chǔ)(例如YouTube)、3G移動(dòng)電話、軟件(例如QuickTime、Flash和蘋果計(jì)算機(jī)公司的MacOSX操作系統(tǒng)等),以及家用電視游戲機(jī)(例如PlayStation3等)。在眾多行業(yè)的支持下,以及在為滿足個(gè)人消費(fèi)者和專業(yè)用戶需求的應(yīng)用的推動(dòng)下,H.264有望取代當(dāng)今市場(chǎng)中使用的其它壓縮標(biāo)準(zhǔn)和方法。
??? 隨著H.264格式更加廣泛地應(yīng)用于網(wǎng)絡(luò)攝像機(jī)、視頻編碼器和視頻管理軟件,系統(tǒng)設(shè)計(jì)商和集成商將需要確保他們所選擇的產(chǎn)品和廠商能夠支持這一全新的開放標(biāo)準(zhǔn)。就目前來(lái)說(shuō),能夠同時(shí)支持H.264和M-JPEG的網(wǎng)絡(luò)視頻產(chǎn)品具有最高的靈活性和集成能力,因此是用戶的理想選擇。
評(píng)論
查看更多