專利名稱:一種視頻圖像跳過宏塊的編碼方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種對視頻圖像宏塊類型編碼的方法,尤其是一種當(dāng)編碼圖像含有跳過宏塊時,對視頻圖像的跳過宏塊進行編碼的方法,屬于視頻編碼領(lǐng)域。
背景技術(shù):
數(shù)字電視、新一代移動通信、寬帶網(wǎng)絡(luò)通信、家庭消費電子這些高技術(shù)產(chǎn)業(yè)群的共性技術(shù)集中在以視音頻為主要內(nèi)容的多媒體信息處理技術(shù),特別是數(shù)據(jù)壓縮技術(shù)上。高效的視頻編解碼技術(shù)是實現(xiàn)高質(zhì)量、低成本多媒體數(shù)據(jù)存儲與傳輸?shù)年P(guān)鍵。
在現(xiàn)有的視頻標(biāo)準(zhǔn)中,(如MPEG系列和H.26x系列),都存在一種跳過宏塊模式(Skipped Macroblock)。所謂跳過宏塊是指對此類型宏塊編碼時不需要編碼附加信息(例如運動矢量或殘差),它只在P圖像和B圖像中存在,即只在幀間編碼視頻圖像中存在,幀內(nèi)編碼視頻圖像如I幀中并不存在。跳過宏塊的運動矢量是通過先前處理的相鄰宏塊(時間域或空間域)的運動矢量所導(dǎo)出的,并且沒有殘差數(shù)據(jù)(量化后殘差為0)。由于跳過宏塊的處理不同于其他的宏塊,所以在視頻編碼時,需要將它標(biāo)識出來。
MPEG2標(biāo)準(zhǔn)中采用“宏塊地址增量”(macroblock_address_increment)來處理的。如果macroblock_address_increment大于1,則表示中間有若干跳過宏塊。
H.263標(biāo)準(zhǔn)中通過專門的一位來標(biāo)識是否有編碼數(shù)據(jù),即“編碼宏塊標(biāo)識”(coded macroblock indication),1表示沒有數(shù)據(jù)是跳過宏塊,0表示后面有編碼的宏塊數(shù)據(jù)。
H.264標(biāo)準(zhǔn)中對跳過宏塊采用“游程編碼”(run length)來處理,對跳過數(shù)目進行編碼。這種處理方式與MPEG2的“宏塊地址增量”方法思路相同,都是編碼跳過的宏塊數(shù)目。
現(xiàn)有技術(shù)中,只采用單一方式編碼跳過宏塊類型,編碼的效率不高。對于某些平滑的序列,當(dāng)量化參數(shù)較大時,跳過宏塊很多,此時“宏塊標(biāo)識方式”對每個宏塊都需一位來標(biāo)識是否是跳過宏塊,效率較低;而采用“宏塊地址增量”方式只需用變長碼來編連續(xù)的跳過宏塊數(shù)目。同樣,對某些運動較大的序列,當(dāng)量化參數(shù)較小時,跳過宏塊較少,連續(xù)出現(xiàn)的跳過宏塊數(shù)目也較小,頻繁出現(xiàn)的小數(shù)值并不利于變長碼來編碼,例如數(shù)值3變長碼編碼時可能需要3bit來表示,如果這樣的小數(shù)值很多,并且沒有大的數(shù)值(跳過宏塊持續(xù)出現(xiàn)),此時定長碼可以達到更好的編碼效果。同時,對于用來標(biāo)識非跳過宏塊的單一0值,“宏塊地址增量”方式與“編碼宏塊標(biāo)識”方式的實際編碼位數(shù)是相同的。此時宏塊地址增量方式不能充分發(fā)揮變長碼的優(yōu)勢,編碼效率也大為降低。
在圖像編碼時選擇何種方式編碼跳過宏塊,以取得最好的編碼效率成為視頻編碼領(lǐng)域進一步提高編碼效率的難題之一。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于提出一種跳過宏塊的編碼方法,可以根據(jù)跳過的宏塊的多少來選擇不同編碼方式編碼跳過宏塊,使編碼效率大為提高。
一種視頻圖像跳過宏塊的編碼方法,包括如下步驟步驟一、圖像頭中增加一位來標(biāo)識當(dāng)前圖像跳過宏塊的編碼方式,通過設(shè)置此位來靈活調(diào)整跳過宏塊的編碼方法;步驟二、根據(jù)跳過宏塊的多少,選擇對當(dāng)前圖像中宏塊類型的編碼方式,如果為游程編碼,則執(zhí)行步驟三;如果為跳過宏塊數(shù)與宏塊類型聯(lián)合編碼,則執(zhí)行步驟四;
步驟三、采用游程編碼方式編碼圖像的宏塊類型;執(zhí)行步驟五;步驟四、采用跳過宏塊數(shù)與宏塊類型聯(lián)合的編碼方式編碼圖像的宏塊類型;執(zhí)行步驟五;步驟五、編碼當(dāng)前圖像,寫入碼流。
本發(fā)明通過兩次編碼或通過經(jīng)驗閾值來選擇視頻圖像跳過宏塊的編碼方式,提高了圖像編碼的效率,減少了傳輸及存儲的代價,解決了以往視頻圖像跳過宏塊編碼時,效率低下的問題,并且可用性強,在幀編碼和場編碼時都可有效使用,是一種簡單、實用的技術(shù)方案。
圖1是本發(fā)明嵌入跳過宏塊編碼的通用編碼流程示意圖;圖2是本發(fā)明嵌入跳過宏塊解碼的通用解碼流程示意圖;圖3是一個包括跳過宏塊的圖像宏塊實例的示意圖;圖4是本發(fā)明采用兩次編碼選擇編碼方式的流程圖;圖5是本發(fā)明基于統(tǒng)計信息選擇編碼方式的流程圖。
具體實施例方式
視頻圖像由多個宏塊組成,所以,對視頻圖像進行編碼,首先要編碼宏塊的類型,然后再編碼宏塊本身;編碼完所有的宏塊就完成了圖像的編碼。
本發(fā)明涉及對幀間編碼視頻圖像宏塊類型的編碼,跳過宏塊可以看作是一種特殊的宏塊類型,而對于宏塊本身如運動矢量、殘差等數(shù)據(jù)的編碼,則可以采用任何一種宏塊編碼方式。
本發(fā)明根據(jù)碼率和圖像質(zhì)量需求以及視頻序列特征,跳過宏塊較多的編碼圖像采用游程編碼,跳過宏塊較少的編碼圖像采用跳過宏塊個數(shù)與宏塊類型聯(lián)合的編碼方式,因而能夠更好地適應(yīng)不同應(yīng)用需求,在不同情況下都能選用最有效地跳過宏塊編碼方式,提高編碼的效率。
如圖1所示,本發(fā)明所述技術(shù)方案的編碼過程,包括如下步驟步驟一、圖像頭中增加一位來標(biāo)識當(dāng)前圖像跳過宏塊的編碼方式;步驟二、根據(jù)跳過宏塊的多少,選擇對當(dāng)前圖像中宏塊類型的編碼方式,如果為游程編碼,則執(zhí)行步驟三;如果為跳過宏塊數(shù)與宏塊類型聯(lián)合編碼,則執(zhí)行步驟四;步驟三、將圖像頭的標(biāo)識位,設(shè)定為1,并采用游程編碼方式編碼圖像的宏塊類型;執(zhí)行步驟五;步驟四、將圖像頭的標(biāo)識位,設(shè)定為0,并采用跳過宏塊數(shù)與宏塊類型聯(lián)合的編碼方式編碼圖像的宏塊類型;執(zhí)行步驟五;步驟五、編碼當(dāng)前圖像,寫入碼流。
本發(fā)明由于對視頻圖像的跳過宏塊采用了不同的編碼方式,因此,需要首先改變標(biāo)記的方式,為了減少標(biāo)記,單幀的所有跳過宏塊采用相同的方式進行編碼。圖像頭中包括了許多圖像的信息,通過在圖像頭中增加一位(0或1)可以標(biāo)識當(dāng)前圖像跳過宏塊的編碼方式,比如預(yù)先設(shè)定該位為1表示游程編碼,為0表示跳過宏塊數(shù)與宏塊類型聯(lián)合編碼。
下面為其一個具體實例pb_picture_header() //圖像頭{… … … … … … …skip_code_flag //其值表明了跳過宏塊的編碼方式… … … … … … …next_start_code() //找到碼流的下一圖像頭}pb_picture_header()中圖像頭的增加一位數(shù)據(jù),用于標(biāo)識當(dāng)前圖像跳過宏塊的編碼方式,具體實現(xiàn)如下skip_code_flag長度為1個比特,為1表示編碼方式為游程編碼,為0編碼方式為跳過宏塊數(shù)與宏塊類型聯(lián)合編碼。
編碼完宏塊類型之后,就涉及到宏塊自身數(shù)據(jù)的編碼,即編碼運動矢量和殘差等數(shù)據(jù),然后將數(shù)據(jù)寫入碼流中,完成當(dāng)前宏塊的編碼;依次對當(dāng)前圖像的所有宏塊進行編碼,完成當(dāng)前圖像的編碼;采用上述方式編碼所有的幀間編碼視頻圖像。
如圖2所示,解碼端,首先從碼流的圖像頭pb_picture_header中讀入跳過宏塊編碼標(biāo)志skip_code_flag,判斷skip_code_flag的值,如果為1,則為游程編碼,如果為0,則為聯(lián)合編碼;采用對應(yīng)的方式,完成對宏塊的解碼。
根據(jù)以上的描述,可以看出本發(fā)明的步驟二對當(dāng)前圖像中宏塊類型編碼方式的選擇是本發(fā)明的一個重點,可以采用兩種方法,一種是采用兩次編碼比較編碼性能,擇優(yōu)而定;另一種是通過統(tǒng)計方式來估算待編碼圖像的跳過宏塊的多少,以此來決定采用哪種編碼方式。
圖3所示是一個包含跳過宏塊的幀間編碼視頻圖像的一部分,作為詳細(xì)說明本發(fā)明技術(shù)方案的例子。
如圖4所示是單幀圖像的跳過宏塊編碼方式通過兩次編碼過程來選擇最優(yōu)的方案,步驟如下步驟200、對當(dāng)前編碼圖像的所有宏塊采用游程編碼方式,處理完畢后獲得對應(yīng)的編碼性能參數(shù);步驟201、對當(dāng)前編碼圖像進行二次編碼,其所有宏塊采用跳過宏塊數(shù)與宏塊類型聯(lián)合的編碼方式,處理完畢后獲得對應(yīng)的編碼性能參數(shù);步驟202、綜合比較兩次編碼所獲得的性能參數(shù),選取當(dāng)前圖像最優(yōu)的跳過宏塊編碼方式。
進行比較的性能參數(shù)包括編碼率和信噪比,所述的編碼率指編碼的效率,即壓縮的比例,所述的信噪比指壓縮后的失真情況。選擇哪個參數(shù)作為判斷的依據(jù)要根據(jù)編碼的要求來決定,如果對圖像的壓縮率要求高而對圖像的失真情況要求不高,可以選擇同一信噪比編碼率高的編碼方式;如果對圖像的失真情況要求高,而對壓縮率沒有太高的要求,則選擇同一壓縮率失真小的編碼方式。因為跳過宏塊的編碼對編碼圖像的質(zhì)量影響較小,即對信噪比影響小,此時編碼方式主要是影響編碼的碼率。
下面分別對兩種編碼方式進行介紹游程編碼方式是對于連續(xù)的跳過宏塊,用變長碼(Variable-lengthcoding,VLC)編碼跳過的數(shù)目;而連續(xù)的非跳過宏塊之間必須加編一位“0”值來標(biāo)識,表示沒有跳過宏塊。這樣,碼流中的每個非跳過宏塊都按表1所示結(jié)構(gòu)編碼。在每個宏塊頭先編碼跳過宏塊記數(shù)值(skipped macroblockcounter),然后編碼下一個非跳過宏塊的宏塊類型mb_type(macroblocktype)。此種方式對宏塊類型的原有編碼沒有影響。跳過宏塊個數(shù)則采用變長碼(例如Exp-Golomb)編碼方式。
表1、跳過宏塊游程編碼方式
例如,如圖3所示是待編碼圖像的宏塊類型,每個小格表示一個宏塊,顏色較深的是跳過宏塊。采用游程編碼處理方式(mbx表示第x個宏塊的編碼數(shù)據(jù)),結(jié)果為(0,mb0)(1,mb2)(0,mb3)(4,mb8)(0,mb9)(0,mb10)(0,mb11)(1,mb13)(0,mb14)(2,mb17)跳過宏塊數(shù)與宏塊類型聯(lián)合編碼方式對P圖像按如下方法處理如果是P圖像,則在宏塊類型中增加一種跳過類型(skip mode),根據(jù)其平均出現(xiàn)概率決定其在宏塊類型表中的位置,整個宏塊類型表要隨之調(diào)整。跳過宏塊類型出現(xiàn)的概率根據(jù)圖像的不同而有所不同,可以通過對某一類型的圖像預(yù)先進行統(tǒng)計,來判斷可能出現(xiàn)的概率,從而決定跳過宏塊類型在宏塊類型表中的位置。一般對于B圖像和P圖像,跳過宏塊類型出現(xiàn)的概率較高,可以設(shè)定其mb_type為0。
例如,表2所示為原有的P圖像宏塊類型表(以AVS1.0視頻標(biāo)準(zhǔn)為例)表2、P圖像中宏塊類型
表3所示為增加P_Skip模式的P圖像宏塊類型表。P_Skip模式插入到表的第一項,原有其他項依次后推。宏塊類型采用Exp_Golomb編碼方式。
表3、加入P_Skip模式P圖像中宏塊類型
對于連續(xù)的跳過宏塊,根據(jù)其跳過記數(shù)值使用跳過類型來逐個編碼逐一標(biāo)識。對于非跳過宏塊,使用其對應(yīng)的宏塊類型編碼即可標(biāo)識。這樣通過宏塊類型就能清楚區(qū)分跳過宏塊和非跳過宏塊。
采用聯(lián)合編碼方式對圖3所示的圖像進行編碼,結(jié)果為(mbx表示第x個宏塊編碼數(shù)據(jù)單元,TYPE-mbx表示第x個宏塊的類型)(TYPE-mb0,mb0)(0)(TYPE-mb2,mb2)(TYPE-mb3,mb3)(0)(0)(0)(0)(TYPE-mb8,mb8)(TYPE-mb9,mb9)(TYPE-mb10,mb10)(TYPE-mb11,mb11)(0)(TYPE-mb13,mb13)(TYPE-mb14,mb14)(0)(0)(TYPE-mb17,mb17)。
跳過宏塊數(shù)與宏塊類型聯(lián)合編碼方式對B圖像處理可以采用兩種方式一是采用與P圖像相同的處理方式,加入到原有的宏塊類型表中,這里不再贅述;二是對原有的B圖像Direct模式(B_Direct16×16mode)編碼進行調(diào)整來達到同樣效果。
考慮到B圖像宏塊類型較多,改動原有的宏塊類型表對非跳過宏塊編碼影響較大。這里將Direct和Skipped兩者宏塊類型都用原有的B圖像Direct模式標(biāo)識,而通過編碼CBP來進一步區(qū)分它們。Direct模式不需要編碼運動矢量信息,其運動矢量是導(dǎo)出的,這一點與Skip模式相同,但它可以有殘差數(shù)據(jù)。Skip模式可以看做Direct模式的特殊情況,即殘差數(shù)據(jù)全為0的Direct模式。CBP(Coded Block Pattern)標(biāo)識哪個8×8塊有殘差數(shù)據(jù),如果當(dāng)前宏塊殘差數(shù)據(jù)全部為0,其CBP也就為0。
每個跳過宏塊其編碼方式是Direct模式編碼值緊接CBP為0的編碼值(因為跳過宏塊本來就沒有殘差數(shù)據(jù),CBP應(yīng)該為0),而Direct宏塊其編碼方式是Direct模式編碼值緊接CBP非0的編碼值,其他非跳過宏塊按其對應(yīng)的宏塊類型編碼即可。這樣就能在CBP的協(xié)助下區(qū)分Direct和Skip兩種編碼模式,同時不修改原有的宏塊類型表,因此對其他宏塊編碼模式?jīng)]有影響。具體的編碼如表4所示表4 Direct+CBP方式
解碼處理時,通過讀入的宏塊類型,如果是Direct模式,需讀入其后的CBP數(shù)值。若CBP為0則當(dāng)前宏塊為跳過宏塊,其后的數(shù)據(jù)為下一宏塊;如果不為0,則當(dāng)前宏塊為真正的Direct宏塊,其后的數(shù)據(jù)是當(dāng)前塊的殘差數(shù)據(jù)。
因為兩次編碼來選擇最佳的跳過宏塊編碼方式速度較慢,也可以采用一種自適應(yīng)的模式快速選擇編碼方式。
如圖5所示,每次編碼都統(tǒng)計當(dāng)前幀跳過宏塊的比例Rskip。在編碼下一幀之前,參考前一幀的統(tǒng)計信息,根據(jù)視頻序列的內(nèi)容相關(guān)性,可以預(yù)測下一幀的跳過宏塊比例。如果大于經(jīng)驗閾值Threshold,下一幀跳過宏塊數(shù)目也會較多,此時采用游程編碼方式;如果小于經(jīng)驗閾值Threshold,跳過宏塊數(shù)較少,采用跳過宏塊數(shù)與宏塊類型的聯(lián)合編碼方式。
閾值的選擇與量化參數(shù)(QP)有關(guān),不同的QP值采用不同的閾值。量化參數(shù)(QP)能夠大致控制編碼圖像的質(zhì)量,量化參數(shù)越大,則圖像質(zhì)量變差,碼率降低,壓縮率提高,此時跳過宏塊出現(xiàn)的比例增大。
由于不同的圖像包含的宏塊數(shù)量不同(如高清圖像宏塊數(shù)量多),閾值的變化很大,一般在35-55%之間;為了獲得最佳的編碼效率,也可以采用通過統(tǒng)計的方式,對比兩種編碼方式的效果,本發(fā)明的閾值根據(jù)統(tǒng)計的結(jié)果獲得。由于大多數(shù)情況下,對于編碼可用的資源較多,針對實際的應(yīng)用需求預(yù)先挑選幾個有代表性的碼流,按照前面所述的兩次編碼的方法,統(tǒng)計此種應(yīng)用需求下典型碼流跳過宏塊的分布特征,從而獲得適合當(dāng)前應(yīng)用的最佳經(jīng)驗閾值。亦可以通過軟件在編碼開始時先按兩次編碼的方式編碼多幀幀間編碼圖像,同時統(tǒng)計對應(yīng)的跳過宏塊分布特征,從而獲得當(dāng)前序列的經(jīng)驗閾值,此后序列的編碼全部按照快速模式選擇的方式進行。
例如采用自適應(yīng)快速算法時,當(dāng)QP為37,對于高清序列(1280×720),每個圖像有3600個宏塊,如果前一幀圖像跳過的宏塊總數(shù)大于1440個,當(dāng)前幀的跳過宏塊編碼則采用游程編碼方式;反之,采用聯(lián)合編碼方式。對于CIF序列(352×288),每個圖像有396個宏塊,如果前一幀跳過宏塊數(shù)大于198個,采用游程編碼方式,反之采用聯(lián)合編碼方式。
采用基于統(tǒng)計的自適應(yīng)編碼方法沒有增加空間復(fù)雜度,時間復(fù)雜度方面所新增計算量也非常小,并且由于圖像的時域相關(guān)性,使得這種估計在大多數(shù)的情況下,可以得到很好的編碼效果。
通過對本發(fā)明技術(shù)方案分析可知,該方法對傳統(tǒng)的視頻編解碼流程改動很小,不論是幀編碼還是場編碼都能有效采用,能夠很方便地嵌入傳統(tǒng)的幀場編碼流程。
最后所應(yīng)說明的是以上實施例僅用以說明而非限制本發(fā)明的技術(shù)方案,盡管參照上述實施例對本發(fā)明進行了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解依然可以對本發(fā)明進行修改或者等同替換,而不脫離本發(fā)明的精神和范圍的任何修改或局部替換,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
1.一種視頻圖像跳過宏塊的編碼方法,其特征在于包括如下步驟步驟一、圖像頭中增加一位來標(biāo)識當(dāng)前圖像跳過宏塊的編碼方式,通過設(shè)置此位來靈活調(diào)整跳過宏塊的編碼方法;步驟二、根據(jù)跳過宏塊的多少,選擇對當(dāng)前圖像中宏塊類型的編碼方式,如果為游程編碼,則執(zhí)行步驟三;如果為跳過宏塊數(shù)與宏塊類型聯(lián)合編碼,則執(zhí)行步驟四;步驟三、將圖像頭的標(biāo)識位,設(shè)定為1,并采用游程編碼方式編碼圖像的宏塊類型;執(zhí)行步驟五;步驟四、將圖像頭的標(biāo)識位,設(shè)定為0,并采用跳過宏塊數(shù)與宏塊類型聯(lián)合的編碼方式編碼圖像的宏塊類型;執(zhí)行步驟五;步驟五、編碼當(dāng)前圖像,寫入碼流。
2.根據(jù)權(quán)利要求1所述的視頻圖像跳過宏塊的編碼方法,其特征在于所述的步驟一,包括每個圖像頭增加一位專門用于標(biāo)識當(dāng)前圖像編碼采用的跳過宏塊的編碼方式。
3.根據(jù)權(quán)利要求1所述的視頻圖像的跳過宏塊編碼方法,其特征在于所述的步驟二,選擇對當(dāng)前圖像中宏塊類型的編碼方式,通過兩次編碼過程來選擇;步驟如下步驟200、對當(dāng)前編碼圖像所有宏塊采用游程編碼方式,處理完畢后獲得對應(yīng)的編碼性能參數(shù);步驟201、對當(dāng)前編碼圖像進行二次編碼,其所有宏塊采用跳過宏塊數(shù)與宏塊類型聯(lián)合的編碼方式,處理完畢后獲得對應(yīng)的編碼性能參數(shù);步驟202、綜合比較兩次編碼所獲得的性能參數(shù),選取當(dāng)前圖像最優(yōu)的跳過宏塊編碼方式。
4.根據(jù)權(quán)利要求3所述的視頻圖像的跳過宏塊編碼方法,其特征在于所述的進行比較的性能參數(shù)至少包括信噪比和編碼率。
5.根據(jù)權(quán)利要求1所述的視頻圖像的跳過宏塊編碼方法,其特征在于所述的步驟二,選擇當(dāng)前圖像中宏塊類型的編碼方式,采用基于統(tǒng)計的自適應(yīng)模式選擇來實現(xiàn)快速編碼,包括如下步驟步驟210、編碼每個圖像都統(tǒng)計當(dāng)前圖像跳過宏塊的數(shù)目和比例;步驟211、在編碼下一幀之前,判斷前一圖像中跳過宏塊的比例是否大于經(jīng)驗閾值;步驟212、當(dāng)大于經(jīng)驗閾值時,則執(zhí)行步驟三,采用游程編碼方式;步驟213、當(dāng)小于經(jīng)驗閾值時,則執(zhí)行步驟四,采用跳過宏塊數(shù)與宏塊類型聯(lián)合編碼方式。
6.根據(jù)權(quán)利要求5所述的視頻圖像的跳過宏塊編碼方法,其特征在于所述的經(jīng)驗閾值采用統(tǒng)計的方式獲得。
7.根據(jù)權(quán)利要求1所述的視頻圖像的跳過宏塊編碼方法,其特征在于所述的步驟三,游程編碼方式是對于連續(xù)的跳過宏塊,用變長碼編碼跳過的宏塊數(shù)目;而連續(xù)的非跳過宏塊之間必須加編一位“0”值來標(biāo)識,表示跳過宏塊數(shù)為0。
8.根據(jù)權(quán)利要求1所述的視頻圖像的跳過宏塊編碼方法,其特征在于所述的步驟四,跳過宏塊數(shù)與宏塊類型聯(lián)合的編碼方式對P圖像與B圖像統(tǒng)一處理,在宏塊類型中增加一種跳過類型,根據(jù)其平均出現(xiàn)概率決定其在宏塊類型表中的位置,整個宏塊類型表要隨之調(diào)整;對于跳過宏塊,根據(jù)其跳過記數(shù)值使用跳過類型來逐個編碼,逐一標(biāo)識;對于非跳過宏塊,使用其對應(yīng)的宏塊類型編碼即可標(biāo)識。
9.根據(jù)權(quán)利要求1所述的視頻圖像的跳過宏塊編碼方法,其特征在于所述的步驟四,跳過宏塊數(shù)與宏塊類型聯(lián)合的編碼方式對P圖像和B圖像分別處理如果是P圖像,在原來的宏塊類型表中新增跳過類型,進行編碼;如果是B圖像,修改其原有的Direct模式編碼,每個跳過宏塊其編碼方式是Direct模式編碼值緊接CBP為0的編碼值,而非跳過宏塊其編碼方式是Direct模式編碼值緊接CBP非0的編碼值。
10.根據(jù)權(quán)利要求1所述的視頻圖像的跳過宏塊編碼方法,其特征在于所述的跳過宏塊編碼方法既可以適用于幀編碼,也可以適用于場編碼。
全文摘要
本發(fā)明提出了一種視頻編碼中跳過宏塊的編碼方法,包括如下步驟圖像頭中增加一位來標(biāo)識當(dāng)前圖像跳過宏塊的編碼方式;根據(jù)跳過宏塊的多少,選擇對當(dāng)前圖像中宏塊類型的編碼方式,如果為游程編碼,則將圖像頭的標(biāo)識位,設(shè)定為1,并采用游程編碼方式編碼圖像的宏塊類型;如果為跳過宏塊數(shù)與宏塊類型聯(lián)合編碼,則將圖像頭的標(biāo)識位,設(shè)定為0,并采用跳過宏塊數(shù)與宏塊類型聯(lián)合的編碼方式編碼圖像的宏塊類型;最后,編碼當(dāng)前宏塊的其他數(shù)據(jù),寫入碼流。本發(fā)明通過適應(yīng)性地選擇視頻圖像跳過宏塊的編碼方式,提高了圖像編碼的效率,減少了傳輸及存儲的代價,是一種簡單、實用的技術(shù)方案,本發(fā)明在幀編碼或場編碼中都可有效實施。
文檔編號H04N7/32GK1535018SQ200310116088
公開日2004年10月6日 申請日期2003年12月31日 優(yōu)先權(quán)日2003年12月31日
發(fā)明者文 高, 高文, 鄭俊浩, 馬思偉, 季向陽, 張鵬, 呂巖 申請人:中國科學(xué)院計算技術(shù)研究所