專利名稱:視頻編碼的全局判決方法
技術(shù)領(lǐng)域:
本發(fā)明屬運(yùn)動(dòng)圖象編碼技術(shù)領(lǐng)域。
在當(dāng)今信息化時(shí)代,圖象的存儲(chǔ)和傳輸變得愈來愈重要。由于圖象原始數(shù)據(jù)信息量十分巨大,要在有限容量的存儲(chǔ)介質(zhì)進(jìn)行存儲(chǔ)和有限容量的信息通道傳輸圖象,圖象數(shù)據(jù)的壓縮,也就是對(duì)運(yùn)動(dòng)圖象進(jìn)行編碼是必不可少的。運(yùn)動(dòng)圖象編碼是通過綜合利用圖象信號(hào)在時(shí)間、空間、統(tǒng)計(jì)三方面的冗余度,以及場(chǎng)景的知識(shí)、人的視覺特性來實(shí)現(xiàn)的。目前較為成熟的編碼方法是綜合了預(yù)測(cè)編碼、變換編碼、熵編碼幾種編碼方法以及運(yùn)動(dòng)補(bǔ)償技術(shù)的混合編碼方法,方框圖如
圖1所示。其編碼實(shí)現(xiàn)實(shí)現(xiàn)方法如下步驟(1)對(duì)輸入的當(dāng)前圖象和上一重建圖象作運(yùn)動(dòng)估計(jì)ME,運(yùn)動(dòng)估計(jì)得到運(yùn)動(dòng)向量MV;(2)根據(jù)運(yùn)動(dòng)向量對(duì)上一重建幀作預(yù)測(cè)P,獲得對(duì)當(dāng)前圖象的預(yù)測(cè)圖象;(3)將當(dāng)前圖象減去當(dāng)前圖象的預(yù)測(cè)圖象得到預(yù)測(cè)誤差PE;(4)對(duì)預(yù)測(cè)誤差作離散余弦變換DCT和量化Q;(5)對(duì)(4)的結(jié)果作變長(zhǎng)編碼VLC得到當(dāng)前編碼圖象;和(6)對(duì)(4)的結(jié)果作逆量化IQ、逆離散余弦變換IDCT得到重建的預(yù)測(cè)誤差,再與當(dāng)前預(yù)測(cè)圖象相加得到當(dāng)前重建圖象,經(jīng)幀存儲(chǔ)器FM變成上一重建圖象。
圖1中各步驟的功能如下·運(yùn)動(dòng)估計(jì)、預(yù)測(cè)及預(yù)測(cè)誤差的計(jì)算(減法器)構(gòu)成預(yù)測(cè)編碼,是為了消除圖象信號(hào)在時(shí)間上的相關(guān)性。圖象在時(shí)間上的相關(guān)性表現(xiàn)為當(dāng)前幀圖象的某一部分是由上一幀圖象的某一部分經(jīng)過運(yùn)動(dòng)而得到的。而運(yùn)動(dòng)是通過運(yùn)動(dòng)向量來描述的,運(yùn)動(dòng)估計(jì)就是要求得運(yùn)動(dòng)向量,而預(yù)測(cè)則是根據(jù)運(yùn)動(dòng)向量來補(bǔ)償、抵消當(dāng)前幀圖象與上一幀圖象部分之間因運(yùn)動(dòng)而產(chǎn)生的信號(hào)的變化?!るx散余弦變換DCT構(gòu)成變換編碼,目的是為了消除圖象信號(hào)在空間上的相關(guān)性。量化Q既是后面熵編碼的需要,又是利用了人的視覺特性來提高編碼的質(zhì)量。·變長(zhǎng)編碼VLC構(gòu)成熵編碼,進(jìn)一步消除了圖象信號(hào)的統(tǒng)計(jì)的相關(guān)性?!つ媪炕疘Q、逆離散余弦變換IDCT、加法器實(shí)現(xiàn)圖象重建,為預(yù)測(cè)提供參照物。
現(xiàn)有實(shí)現(xiàn)上述混合編碼方法的編碼器如圖2所示。圖中塊DCT、塊Q、塊IQ、塊IDCT、塊VLC是指一幀(一幅)圖象中一塊(按國(guó)際標(biāo)準(zhǔn)為8×8象素)為單位進(jìn)離散余弦變換DCT、量化Q、逆量化IQ、逆離散余弦變換IDCT、變長(zhǎng)編碼VLC。宏塊P是指以一幀圖象中一個(gè)宏塊(按國(guó)際標(biāo)準(zhǔn)為6個(gè)塊)為單位進(jìn)行預(yù)測(cè)P。宏塊MV指宏塊的運(yùn)動(dòng)向量。0塊是指塊中8×8個(gè)元素都為0。
該編碼器實(shí)現(xiàn)的工作過程為首先,一幀(一幅)圖象是以一塊(8×8象素)或一宏塊(6個(gè)塊)為單位進(jìn)行編碼的。其次,整個(gè)編碼過程分為兩部分運(yùn)動(dòng)估計(jì)和編碼核心如圖2虛框所示。當(dāng)前幀宏塊首先進(jìn)入運(yùn)動(dòng)估計(jì)部分作運(yùn)動(dòng)估計(jì),運(yùn)動(dòng)估計(jì)得到運(yùn)動(dòng)向量MV,輸入到編碼核心對(duì)當(dāng)前幀宏塊進(jìn)行編碼,具體分為如下步驟首先,對(duì)當(dāng)前幀宏塊和上一重建幀宏塊作運(yùn)動(dòng)估計(jì)。運(yùn)動(dòng)估計(jì)分為整象素搜索和半象素搜索兩步。整象素搜索采用分級(jí)運(yùn)動(dòng)搜索方法,即將搜索域分級(jí)靜止點(diǎn)、小搜索域、大搜索域。這是典型的3級(jí),具體實(shí)現(xiàn)可以有變化,如2級(jí)靜止點(diǎn)、小搜索域,即將小搜索域與大搜索域合并;或4級(jí)靜止點(diǎn)、小搜索域、大搜索域、更大搜索域,即將大搜索域再細(xì)分兩級(jí)。在前兩級(jí)搜索域搜索結(jié)束后要進(jìn)行判斷,判斷是否滿足判據(jù)而可以停止整象素搜索進(jìn)入到半象素搜索和后面的編碼核心,具體的判決準(zhǔn)則可能是多種多樣的。
其次,進(jìn)到編碼核心以后,根據(jù)運(yùn)動(dòng)估計(jì)得到宏塊的運(yùn)動(dòng)向量對(duì)上一重建幀宏塊進(jìn)行預(yù)測(cè)得到當(dāng)前預(yù)測(cè)幀宏塊,然后用減法器將當(dāng)前幀宏塊減去當(dāng)前預(yù)測(cè)幀宏塊計(jì)算預(yù)測(cè)誤差,接著做DCT、Q、熵編碼(VLC)和圖象重建。
這種編碼器的實(shí)現(xiàn)方法的不足在于編碼速度不夠高。對(duì)QCIF格式簡(jiǎn)單運(yùn)動(dòng)圖象序列(如Claire序列),利用Pentium-133 PC仍無法做到軟件實(shí)時(shí)編碼(25幀/秒)。
本發(fā)明的目的在于克服已有技術(shù)的不足之處,在原有編碼方法的基礎(chǔ)上增設(shè)對(duì)圖象中大量不必要運(yùn)算的判斷,提高編碼器速度。
本發(fā)明提出一種視頻編碼的全局判決方法,包括運(yùn)動(dòng)估計(jì)、幀預(yù)測(cè)與預(yù)測(cè)誤差生成,變換與量化,圖象重建、熵編碼四部分;其特征在于在運(yùn)動(dòng)估計(jì)部分,設(shè)置對(duì)分級(jí)搜索塊匹配過程中每級(jí)結(jié)果進(jìn)行判決的全局判決器,判斷當(dāng)前幀圖象的重建誤差是否超過上一幀圖象的重建誤差;這一判決器能對(duì)編碼過程的各部分進(jìn)行控制,即控制(ⅰ)搜索是否停止;(ⅱ)幀差信號(hào)是否送入DCT進(jìn)行變換與處理;本發(fā)明所說的全局判決器采用重建誤差判決準(zhǔn)則。
本發(fā)明所說的重建誤差判決準(zhǔn)則為對(duì)當(dāng)前幀(第k幀)宏塊l,若在運(yùn)動(dòng)估計(jì)中滿足SADl(k)(i,j)≤Ereconl(k),(i,j)∈S,則當(dāng)前運(yùn)動(dòng)估計(jì)可以結(jié)束,(i,j)即為要找的宏塊l的運(yùn)動(dòng)向量,而且宏塊l的其它編碼運(yùn)算,預(yù)測(cè)誤差計(jì)算及DCT、Q、IQ、IDCT都可省去;若不滿足上面不等式,則繼續(xù)進(jìn)行運(yùn)動(dòng)估計(jì)。
本發(fā)明采用的重建誤差判決準(zhǔn)則的原理簡(jiǎn)述如下在運(yùn)動(dòng)估計(jì),通常采用塊匹配法,要計(jì)算宏塊的SAD(Sum of AbsoluteDifference)值,SADl(k)(i,j)=Σm=1NΣn=1N|Io(k)(m,n)-Io(k-l)(m+i,n+j)|,(i,j)∈S--(1)]]>其中SADl(k)為第k幀宏塊l的SAD值,(i,j)為候選的運(yùn)動(dòng)向量,S為搜索域,Io(k)為第k原始幀灰度值,Io(k-l)為第k-1原始幀灰度值,宏塊的大小為N×N。前一幀(第k-l幀)宏塊l的重建誤差Ereconl(k-l)可由下式計(jì)算得到,Ereconl(k-l)=Σm=1NΣn=1N|Io(k-l)(m,n)-Ir(k-l)(m,n)|-----(2)]]>其中Ir(k-l)為第k-l幀重建幀。則重建誤差判決準(zhǔn)則為對(duì)當(dāng)前幀(第k幀)宏塊l,若在運(yùn)動(dòng)估計(jì)中滿足SADl(k)(i,j)≤Ereconl(k),(i,j)∈S, (3)則當(dāng)前運(yùn)動(dòng)估計(jì)可以結(jié)束,(i,j)即為要找的宏塊l的運(yùn)動(dòng)向量,而且宏塊l的其它編碼運(yùn)算,預(yù)測(cè)誤差計(jì)算及DCT、Q、IQ、IDCT都可省去;若不滿足不等式(3),則繼續(xù)進(jìn)行運(yùn)動(dòng)估計(jì)。
本發(fā)明所述的新型視頻編碼器的實(shí)現(xiàn)框圖如圖3所示,其工作過程為首先,對(duì)當(dāng)前幀宏塊和上一重建幀宏塊作運(yùn)動(dòng)估計(jì)。運(yùn)動(dòng)估計(jì)包括整象素搜索和半象素搜索。整象素搜索采用分級(jí)運(yùn)動(dòng)搜索方法,將搜索域分級(jí)靜止點(diǎn)、小搜索域、大搜索域。(這是典型的3級(jí),具體實(shí)現(xiàn)可以有變化,同前)。在每一級(jí)搜索域搜索結(jié)束后,都進(jìn)入全局判決器G,判斷在當(dāng)前這一級(jí)搜索下當(dāng)前輸入宏塊是否滿足重建誤差判據(jù),若滿足則不但當(dāng)前宏塊的搜索過程結(jié)束,而且該宏塊的整個(gè)編碼過程也已結(jié)束,編碼轉(zhuǎn)到下一宏塊;若不滿足則繼續(xù)下一級(jí)的搜索。半象素搜索結(jié)束后得到運(yùn)動(dòng)向量,進(jìn)入編碼核心。
其次,進(jìn)到編碼核心以后,根據(jù)運(yùn)動(dòng)估計(jì)得到宏塊的運(yùn)動(dòng)向量對(duì)上一重建幀宏塊進(jìn)行預(yù)測(cè)得到當(dāng)前預(yù)測(cè)幀宏塊,然后用當(dāng)前幀宏塊減去當(dāng)前預(yù)測(cè)幀宏塊計(jì)算預(yù)測(cè)誤差,接著做DCT、Q、熵編碼(VLC)和圖象重建。
結(jié)合圖3與圖2,可以看出本發(fā)明與現(xiàn)有技術(shù)相比有如下特點(diǎn)第一,在本發(fā)明的運(yùn)動(dòng)估計(jì)中整象素部分,在整象素搜索的每一級(jí)搜索結(jié)束后設(shè)置全局判決器G,判決器G中判據(jù)是一旦滿足,則對(duì)該宏塊的整個(gè)編碼過程就結(jié)束了,也就是不但結(jié)束整象素搜索過程,而且連半象素搜索、整個(gè)編碼核心都不必做了,從而大大提高了編碼的速度。第二,對(duì)判決器G,我們采用了高效的重建誤差判據(jù)。該判據(jù)不但可以控制搜索是否停止,而且還可以控制幀差信號(hào)是否送入DCT進(jìn)行變換與處理。
附圖的簡(jiǎn)要說明圖1為已有的混合編碼方法框2為已有的視頻編碼器結(jié)構(gòu)框3為本發(fā)明的視頻編碼器結(jié)構(gòu)框圖采用本發(fā)明編碼方法實(shí)現(xiàn)視頻編碼器的一種實(shí)施例結(jié)構(gòu)如圖3所示。其工作過程同前所述。本實(shí)施例給出在Pentium-200 PC機(jī)上對(duì)QCIF格式的簡(jiǎn)單序列Claire序列和復(fù)雜序列Foreman序列的編碼參數(shù)及編碼速度如下Claire序列I幀量化參數(shù)為10,P幀量化參數(shù)為10。運(yùn)動(dòng)估計(jì)中的整象素搜索采用兩級(jí)搜索靜止點(diǎn)、小搜索域,區(qū)域長(zhǎng)度為5,每一級(jí)搜索算法為采樣法三步法,塊匹配運(yùn)算采用亞采樣方法。結(jié)果編碼幀率(速率)達(dá)到平均70幀/秒。Foreman序列I幀量化參數(shù)為20,P幀量化參數(shù)為20。運(yùn)動(dòng)估計(jì)中的整象素搜索采用三級(jí)搜索靜止點(diǎn)、小運(yùn)動(dòng)區(qū)域(區(qū)域長(zhǎng)度為4),大搜索域(區(qū)域長(zhǎng)度為10)每一級(jí)搜索算法為三步法,塊匹配運(yùn)算采用亞采樣方法。結(jié)果編碼幀率(速率)達(dá)到平均30幀/秒。
權(quán)利要求
1.一種視頻編碼的全局判決方法,包括運(yùn)動(dòng)估計(jì)、幀預(yù)測(cè)與預(yù)測(cè)誤差生成,變換與量化,圖象重建、熵編碼四部分;其特征在于在運(yùn)動(dòng)估計(jì)部分,設(shè)置對(duì)分級(jí)搜索塊匹配過程中每級(jí)結(jié)果進(jìn)行判決的全局判決器,判斷當(dāng)前幀圖象重建誤差是否超過上一幀圖象的重建誤差;這一判決器能對(duì)編碼過程的各部分進(jìn)行控制,即控制(ⅰ)搜索是否停止;(ⅱ)幀差信號(hào)是否送入DCT進(jìn)行變換與處理;本發(fā)明所說的全局判決器采用重建誤差判決準(zhǔn)則。
2.如權(quán)利要求1所述的視頻編碼的全局判決方法,其特征在于,所說的重建誤差判決準(zhǔn)則為對(duì)當(dāng)前幀(第k幀)宏塊1,若在運(yùn)動(dòng)估計(jì)中滿足SADl(k)(i,j)≤Eeconl(k),(i,j)∈S,則當(dāng)前運(yùn)動(dòng)估計(jì)可以結(jié)束,(i,j)即為要找的宏塊l的運(yùn)動(dòng)向量,而且宏塊l的其它編碼運(yùn)算,預(yù)測(cè)誤差計(jì)算及DCT、Q、IQ、IDCT都可省去。
全文摘要
本發(fā)明屬運(yùn)動(dòng)圖象編碼技術(shù)領(lǐng)域。本發(fā)明包括運(yùn)動(dòng)估計(jì)、幀預(yù)測(cè)與預(yù)測(cè)誤差生成,變換與量化,圖象重建、熵編碼四部分;其特征在于:在運(yùn)動(dòng)估計(jì)部分,設(shè)置對(duì)分級(jí)搜索塊匹配過程中每級(jí)結(jié)果進(jìn)行判決的全局判決器,判斷當(dāng)前幀圖象重建誤差是否超過上一幀圖象的重建誤差;所說的全局判決器采用重建誤差判決準(zhǔn)則。采用本發(fā)明可大大提高了編碼的速度。
文檔編號(hào)H04N7/32GK1212578SQ9811779
公開日1999年3月31日 申請(qǐng)日期1998年9月18日 優(yōu)先權(quán)日1998年9月18日
發(fā)明者朱雪龍, 謝波 申請(qǐng)人:清華大學(xué)