專利名稱:用于編碼交錯(cuò)形狀信息的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于編碼交錯(cuò)形狀信息的方法和設(shè)備;更具體地,涉及一種在未更新場(chǎng)估計(jì)基礎(chǔ)上,通過修改交錯(cuò)形狀信息的編碼方式而進(jìn)行高效編碼的方法和設(shè)備。
在數(shù)字化可視系統(tǒng),如視頻電話,電視會(huì)議和高清晰度電視系統(tǒng)中,需要大量數(shù)字?jǐn)?shù)據(jù)來確定每個(gè)視頻幀信號(hào),這是因?yàn)橐曨l幀信號(hào)中的視頻行信號(hào)包括一系列被稱作象素值的數(shù)字?jǐn)?shù)據(jù)。然而,由于一般傳輸信道的可用帶寬是有限的,為了通過其傳輸大量數(shù)字?jǐn)?shù)據(jù),這就必須采用各種數(shù)據(jù)壓縮技術(shù)以壓縮或減少數(shù)據(jù)量,特別是在如視頻電話和電視會(huì)議系統(tǒng)這樣的低比特率視頻信號(hào)編碼器的情況下,更需要使用數(shù)據(jù)壓縮技術(shù)。
一種針對(duì)低比特率編碼系統(tǒng)的編碼視頻信號(hào)的技術(shù)是所謂的面向目標(biāo)的分析一合成編碼技術(shù),其中輸入的視頻圖象被分成多個(gè)目標(biāo),定義了每個(gè)目標(biāo)的運(yùn)動(dòng)、輪廓和象素?cái)?shù)據(jù)的三組參數(shù)通過不同的編碼信道進(jìn)行處理。
這種面向目標(biāo)的編碼方案的一個(gè)例子就是所謂MPEG(活動(dòng)圖象專家組)階段4(MPEG-4)的方案。這一方案提出了一種音頻-視頻編碼標(biāo)準(zhǔn),這一標(biāo)準(zhǔn)允許在諸如低比特率通信、交互多媒體(例如游戲、交互電視等)和區(qū)域監(jiān)視等應(yīng)用中的基于內(nèi)容的交互性、改進(jìn)的編碼效率和/或通用存取性。
根據(jù)MPEG-4,一個(gè)輸入的視頻圖象被分成許多個(gè)視頻目標(biāo)平面(VOP),對(duì)應(yīng)于比特流中用戶可訪問和處理的實(shí)體。一個(gè)VOP可以稱為一個(gè)目標(biāo),且用圍繞每個(gè)目標(biāo)的一個(gè)封閉矩形表示,矩形的寬和高可以是16象素的最小倍數(shù)(一個(gè)宏塊的尺寸),這樣編碼器可在逐個(gè)VOP的基礎(chǔ)上處理輸入的視頻圖象。
在MPEG-4中所述的VOP包括形狀信息和具有亮度、色度數(shù)據(jù)的紋理信息,其中以二進(jìn)制形狀信號(hào)表示的形狀信息被稱作阿爾法(alpha)平面。阿爾法平面被分成多個(gè)二進(jìn)制阿爾法塊,其中每個(gè)二進(jìn)制阿爾法塊(BAB)一般有16×16個(gè)二進(jìn)制象素。每個(gè)二進(jìn)制象素或被分類成背景象素或目標(biāo)象素,其中背景象素位于阿爾法平面中目標(biāo)的外部,且用二進(jìn)制象素值例如“0”表示,而目標(biāo)象素位于目標(biāo)內(nèi)部且用另一個(gè)二進(jìn)制象素值例如255表示。
可通過使用傳統(tǒng)的基于位圖的形狀編碼方法,如基于上下文的算術(shù)編碼(CAE)技術(shù)及運(yùn)動(dòng)估計(jì)和補(bǔ)償技術(shù),對(duì)BAB內(nèi)的每個(gè)二進(jìn)制象素進(jìn)行編碼。例如,在內(nèi)部模式下,通過使用內(nèi)部CAE技術(shù)對(duì)當(dāng)前BAB中所有二進(jìn)制象素進(jìn)行編碼,從而產(chǎn)生內(nèi)部CAE數(shù)據(jù),其中根據(jù)圍繞BAB中一二進(jìn)制象素的預(yù)定數(shù)目例如10個(gè)二進(jìn)制象素計(jì)算該二進(jìn)制象素的上下文值。在相互模式下,采用相互CAE技術(shù)對(duì)當(dāng)前BAB的所有二進(jìn)制象素進(jìn)行編碼,從而產(chǎn)生相互CAE數(shù)據(jù),其中對(duì)當(dāng)前BAB的一個(gè)二進(jìn)制象素計(jì)算其上下文值,這是根據(jù)當(dāng)前BAB的該二進(jìn)制象素周圍的4個(gè)二進(jìn)制象素和參考BAB,如有界運(yùn)動(dòng)補(bǔ)償BAB中的5個(gè)二進(jìn)制象素進(jìn)行計(jì)算的,(參見MPEG-4視頻檢驗(yàn)?zāi)P桶姹?.0,國(guó)際標(biāo)準(zhǔn)化組織,活動(dòng)圖象和伴隨的音頻信息編碼,ISO/IECJTC1/SC29/WG11 MPEG97/N1642,Bristol,1997年4月,pp28-30)。
在傳統(tǒng)的二進(jìn)制形狀編碼方案中,利用表示或表征BAB編碼類型的BAB類型去改進(jìn)編碼效率。例如,如果BAB中所有的二進(jìn)制象素是目標(biāo)象素,那么表示BAB中所有二進(jìn)制象素都是目標(biāo)象素的BAB類型被編碼,且傳輸給接收端的解碼器以代替象素?cái)?shù)據(jù)本身。所以,通過傳輸BAB類型作為BAB的基本二進(jìn)制形狀信息,可能提高編碼效率。
表1
參見表1,它顯示了傳統(tǒng)技術(shù)中使用的對(duì)于BAB的7個(gè)BAB類型,其中形狀運(yùn)動(dòng)向量差(MVDs)是形狀運(yùn)動(dòng)向量(MVs)和形狀運(yùn)動(dòng)向量預(yù)測(cè)因子(MVPs)之間的差值(參見MPEG-4視頻檢驗(yàn)?zāi)P桶姹?.0,附錄,pp20-30)在表1中,BAB類型‘0’表示BAB的MVDs是0,且BAB對(duì)應(yīng)于未更新,即可用最相似的候選BAB代替該BAB,而BAB類型‘1’說明BAB的MVDs有非零值,且BAB可被最相似的候選BAB代替。BAB類型為‘0’的BAB可只用BAB類型本身表示,而BAB類型為‘1’的BAB可用BAB類型和MVDs一起表示。
BAB類型‘2’表示BAB是透明的,即BAB中的所有二進(jìn)制象素都被認(rèn)為是背景象素,而BAB類型‘3’表示BAB是不透明的,即在BAB中的所有二進(jìn)制象素都代表目標(biāo)象素。只需要BAB類型就可表示BAB類型‘2’或BAB類型‘3’的BAB而無(wú)需其它數(shù)據(jù)。
BAB類型‘4’代表BAB中所有二進(jìn)制象素采用內(nèi)部CAE編碼;BAB類型‘5’說明MVDs是零且BAB中所有二進(jìn)制象素采用相互CAE編碼;BAB類型‘6’表示MVDs有非零值且BAB中所有二進(jìn)制象素采用相互CAE編碼。用BAB類型‘4’或‘5’以及其后的內(nèi)部CAE或相互CAE數(shù)據(jù)來表示具有BAB類型‘4’或‘5’的BAB。表示具有BAB類型‘6’的BAB,除了BAB類型本身外,還需要MVDs和相互CAE數(shù)據(jù)。
參見
圖1,它所示的是一個(gè)傳統(tǒng)的編碼設(shè)備,用于在幀BAB或場(chǎng)BAB基礎(chǔ)上對(duì)VOP的交錯(cuò)形狀信息進(jìn)行自適應(yīng)編碼,其中幀BAB包括M×N個(gè)象素且可以被分成頂部場(chǎng)BAB和底部場(chǎng)BAB,每個(gè)場(chǎng)BAB有M/2×N個(gè)象素,M是一個(gè)正偶數(shù),N是一個(gè)正整數(shù),一般地,M和N的值是16,且頂部場(chǎng)BAB和底部場(chǎng)BAB分別由幀BAB的奇數(shù)象素行和偶數(shù)象素行組成。VOP的交錯(cuò)形狀信息在幀BAB基礎(chǔ)上輸入給幀檢測(cè)電路10。幀檢測(cè)電路10檢查具有例如16×16個(gè)二進(jìn)制象素的當(dāng)前幀BAB是否是透明的,或是不透明的。一般地,當(dāng)當(dāng)前幀BAB中的象素被全0或全255所代替,如果產(chǎn)生的誤差小于預(yù)定的閾值,那么當(dāng)前幀BAB就被認(rèn)為是透明的或是不透明的。如果當(dāng)前幀BAB被認(rèn)為是透明的或是不透明的,那么BAB類型‘2’或‘3’通過多路轉(zhuǎn)換器(MUX)60被傳輸給發(fā)送器(未示出),且當(dāng)前幀BAB的編碼過程結(jié)束。
如果當(dāng)前幀BAB既不是透明的也不是不透明的,那么當(dāng)前幀BAB的交錯(cuò)形狀信息被輸出給編碼類型確定電路20和開關(guān)30。編碼類型確定電路20根據(jù)兩個(gè)相鄰行之間二進(jìn)制象素值的差值,對(duì)當(dāng)前幀BAB計(jì)算其幀和場(chǎng)的相關(guān)性;根據(jù)計(jì)算出的幀和場(chǎng)的相關(guān)性,確定基于幀的編碼和基于場(chǎng)的編碼哪一種更好;如果幀相關(guān)性等于或大于場(chǎng)相關(guān)性,那么編碼類型‘0’被分配給當(dāng)前幀BAB,反之,則編碼類型‘1’被分配給當(dāng)前幀BAB;且將當(dāng)前幀BAB的編碼類型‘0’或‘1’輸出給開關(guān)30和多路轉(zhuǎn)換器60,其中編碼類型‘0’和‘1’分別表明當(dāng)前幀BAB是基于幀編碼和基于場(chǎng)編碼的。例如,可以計(jì)算當(dāng)前幀BAB的所有兩個(gè)可能相鄰的行,即,第1行和第2行,第2行和第3行等等的二進(jìn)制象素差值之和作為幀相關(guān)性;可以計(jì)算所有兩個(gè)可能相鄰的奇數(shù)行,即第1行和第3行,第3行和第5行,等等,或所有兩個(gè)可能相鄰的偶數(shù)行,即第2行和第4行,第4行和第6行,以此類推,它們的二進(jìn)制象素差值之和作為場(chǎng)相關(guān)性。二進(jìn)制差值的和越小,相關(guān)程度越大。
開關(guān)30按編碼類型將當(dāng)前幀BAB的交錯(cuò)形狀信息輸出,如果編碼類型是‘0’,則輸出給幀編碼電路40,如果編碼類型是‘1’,則輸出給場(chǎng)編碼電路50。
幀編碼電路40選擇BAB類型‘0’,‘1’,‘4’,‘5’和‘6’中的一個(gè)作為當(dāng)前幀BAB的BAB類型,并根據(jù)已確定的BAB類型以幀為基礎(chǔ)對(duì)當(dāng)前幀BAB進(jìn)行編碼。如果BAB類型被判定為‘0’,那么由幀編碼電路40輸出給MUX 60的就只有BAB類型,而如果判定的BAB類型是BAB類型‘1’,‘4’,‘5’和‘6’中的一個(gè),那么幀編碼電路40向MUX 60輸出基于幀的當(dāng)前幀BAB的編碼數(shù)據(jù)(或幀編碼數(shù)據(jù))和確定的BAB類型。幀編碼數(shù)據(jù)包括編碼的MVDs和/或內(nèi)部/相互CAE數(shù)據(jù)。
另一方面,如果當(dāng)前幀BAB是從開關(guān)30按編碼類型‘1’輸出給場(chǎng)編碼電路50的話,那么場(chǎng)編碼電路50將當(dāng)前幀BAB分成兩個(gè)場(chǎng)BAB,即頂部場(chǎng)BAB和底部場(chǎng)BAB;選擇BAB類型‘0’,‘1’,‘4’,‘5’和‘6’中的一個(gè)作為頂部場(chǎng)BAB和底部場(chǎng)BAB共同的BAB類型;根據(jù)已確定的BAB類型,以場(chǎng)為基礎(chǔ)分別對(duì)這兩個(gè)場(chǎng)BAB進(jìn)行編碼。值得注意的是,盡管只有一個(gè)BAB類型被分配給兩個(gè)場(chǎng)BAB,但這兩個(gè)場(chǎng)BAB是被分別以場(chǎng)為基礎(chǔ)進(jìn)行編碼的。場(chǎng)BAB類型和場(chǎng)編碼數(shù)據(jù)被傳輸給MUX 60,其中場(chǎng)編碼數(shù)據(jù)(如果有的話)包括兩個(gè)編碼的MVDs和/或兩個(gè)場(chǎng)BAB的內(nèi)部/相互CAE數(shù)據(jù),在場(chǎng)編碼電路50中的編碼方案細(xì)節(jié)將通過表2進(jìn)行詳細(xì)說明。
MUX 60對(duì)BAB類型,編碼類型和/或幀編碼或場(chǎng)編碼數(shù)據(jù)進(jìn)行多路轉(zhuǎn)換,以將當(dāng)前幀BAB的編碼數(shù)據(jù)輸出給發(fā)送器以便發(fā)送。如果在幀檢測(cè)電路10中確定BAB類型是‘2’或‘3’,那么編碼數(shù)據(jù)只由BAB類型組成。如果BAB類型是‘0’,那么編碼數(shù)據(jù)包括編碼類型和BAB類型。如果BAB類型是‘1’,‘4’,‘5’和‘6’中的一個(gè),那么編碼數(shù)據(jù)包括編碼類型,BAB類型,以及取決于編碼類型的幀編碼或場(chǎng)編碼數(shù)據(jù)。
參見表2,它所示的是在場(chǎng)編碼電路50中分配給兩個(gè)場(chǎng)BAB的BAB類型。頂部場(chǎng)BAB類型‘Ti’,即頂部場(chǎng)BAB的BAB類型,和底部場(chǎng)BAB類型‘Bi’,即底部場(chǎng)BAB的BAB類型,對(duì)應(yīng)于表1中的BAB類型‘i’,i是一個(gè)范圍從0到6的整數(shù)。
場(chǎng)編碼電路50分別檢測(cè)頂部場(chǎng)和底部場(chǎng)BAB類型。如果兩個(gè)場(chǎng)BAB類型被判定為是相同的BAB類型‘0’,‘1’,‘4’,‘5’或‘6’,那么這個(gè)被確定了的BAB類型就被分配給這兩個(gè)場(chǎng)BAB。而BAB類型‘2’或‘3’并不分配給兩個(gè)場(chǎng)BAB,這是因?yàn)锽AB類型‘2’或‘3’已在幀檢測(cè)電路10中在幀的基礎(chǔ)上被檢測(cè)出來了。
表2
如果一個(gè)場(chǎng)BAB類型是‘0’,而另一個(gè)是‘1’,那么將BAB類型‘1’分配給兩個(gè)場(chǎng)BAB。如果兩個(gè)場(chǎng)BAB類型中的一個(gè)是‘6’,而另一個(gè)是‘5’,則BAB類型‘6’被分配給兩個(gè)場(chǎng)BAB。對(duì)于余下的情況,兩個(gè)場(chǎng)BAB都根據(jù)BAB類型‘4’,‘5’和‘6’被編碼,且產(chǎn)生最少編碼比特的BAB類型被分配給兩個(gè)場(chǎng)BAB。
在上述傳統(tǒng)幀一場(chǎng)自適應(yīng)編碼技術(shù)中,如果BAB類型是‘2’或‘3’,當(dāng)前幀BAB的編碼數(shù)據(jù)則只包含BAB類型。如果BAB類型被確定為不是‘2’或‘3’,那么就用BAB類型和編碼類型以及幀編碼或場(chǎng)編碼數(shù)據(jù)(如果有的話)表示當(dāng)前幀BAB。根據(jù)這樣的事實(shí),即兩個(gè)場(chǎng)之間的相關(guān)性高于兩個(gè)幀之間的相關(guān)性,且預(yù)期頂部場(chǎng)和底部場(chǎng)BAB的兩個(gè)BAB類型彼此相同,由此自適應(yīng)編碼技術(shù)得到進(jìn)一步發(fā)展。通過執(zhí)行上述的形狀編碼,一些BAB可能需要額外的比特用來表示編碼類型以及用一個(gè)BAB類型分別對(duì)兩個(gè)場(chǎng)BAB進(jìn)行編碼。值得注意地是,優(yōu)選的情況是根據(jù)兩個(gè)場(chǎng)BAB彼此不同的場(chǎng)BAB類型對(duì)其進(jìn)行編碼。但是,這種情況是很少的,這是因?yàn)樵谝曨l信號(hào)的交錯(cuò)形狀信息中,兩個(gè)場(chǎng)BAB有同樣的BAB類型的概率是很高的。通過對(duì)每?jī)蓚€(gè)場(chǎng)BAB只分配一個(gè)BAB類型而節(jié)省的比特可以補(bǔ)償那些額外的比特,這樣提高了編碼效率。
然而,盡管上述的自適應(yīng)編碼技術(shù)能夠提高編碼效率,但還希望有一種進(jìn)一步減少傳輸數(shù)據(jù)量的方法。例如,如果對(duì)具有場(chǎng)BAB類型‘0’和‘6’的兩個(gè)場(chǎng)確定其BAB類型為‘6’,那么就會(huì)有很多比特的損失,這是因?yàn)槟莻€(gè)具有BAB類型‘0’的場(chǎng)BAB將需要MVDs和相互CAE數(shù)據(jù)以代表它,而該場(chǎng)BAB實(shí)際只需用BAB類型‘0’來進(jìn)行編碼。
總之,本發(fā)明的主要目的是提出一種能通過修改交錯(cuò)形狀信息的BAB類型進(jìn)一步減少傳輸數(shù)據(jù)量的方法和設(shè)備。
本發(fā)明的另一個(gè)目的也是提出一種方法和設(shè)備,用于通過有選擇地挑出只用BAB類型說明的BAB,從而進(jìn)一步減少傳輸數(shù)據(jù)量。
根據(jù)本發(fā)明,提出了一種對(duì)交錯(cuò)形狀信號(hào)的目標(biāo)塊進(jìn)行編碼的方法,其中交錯(cuò)形狀信號(hào)包括多個(gè)圖象,每個(gè)圖象被分成有M×N個(gè)象素的塊,象素有第一或第二二進(jìn)制值中的一個(gè)值,M和N分別是正偶數(shù),且目標(biāo)塊或是在M×N個(gè)象素的基礎(chǔ)上進(jìn)行基于幀的編碼,或是在M/2×N個(gè)象素的基礎(chǔ)上被進(jìn)行基于場(chǎng)的編碼,目標(biāo)塊代表當(dāng)前圖象中被編碼的那個(gè)塊,這一過程由如下步驟組成(a)確定是否目標(biāo)塊只用未更新BAB類型進(jìn)行編碼,其中未更新BAB類型表示目標(biāo)塊只由BAB類型本身進(jìn)行編碼,而不需要目標(biāo)塊的其他編碼數(shù)據(jù)。
(b)如果不用未更新BAB類型對(duì)目標(biāo)塊進(jìn)行編碼,那么根據(jù)目標(biāo)塊和它的兩個(gè)場(chǎng)塊之間的相關(guān)程度,選擇基于幀的編碼類型或是基于場(chǎng)的編碼類型作為目標(biāo)塊的編碼類型,其中上述兩個(gè)場(chǎng)塊分別包含目標(biāo)塊的每個(gè)奇數(shù)行和每個(gè)偶數(shù)行,每個(gè)場(chǎng)塊有M/2×N個(gè)象素,編碼類型表示使用基于幀的編碼原則和基于場(chǎng)的編碼原則中的哪一個(gè)對(duì)目標(biāo)塊進(jìn)行編碼。
(c)如果在(b)中選擇了基于場(chǎng)的編碼,那么判斷是否兩個(gè)場(chǎng)塊對(duì)應(yīng)于一場(chǎng)未更新(one-field-no-update),其中所述一場(chǎng)未更新表示兩個(gè)場(chǎng)塊中的至少一個(gè)可用最相似候選場(chǎng)塊替代。
(d)如果兩個(gè)場(chǎng)塊被判定為BAB類型為‘1’的上述一場(chǎng)未更新,那么尋找頂或底(top-or-bottom)和場(chǎng)BAB類型(BAB-type-field),其中上述頂或底指明兩個(gè)場(chǎng)塊中哪一個(gè)被最相似候選場(chǎng)塊所替代,且場(chǎng)BAB類型表示那個(gè)未被頂或底指明的場(chǎng)塊的編碼條件。
(e)對(duì)非數(shù)據(jù)BAB類型,編碼類型,BAB類型,頂或底,和/或場(chǎng)BAB類型進(jìn)行多路轉(zhuǎn)換。
通過結(jié)合附圖對(duì)優(yōu)選實(shí)施例的說明,本發(fā)明上述和其他的目的和特點(diǎn)將會(huì)變得很明顯,其中圖1所示是在二進(jìn)制阿爾法塊(BAB)的基礎(chǔ)上對(duì)交錯(cuò)形狀信息進(jìn)行編碼的傳統(tǒng)設(shè)備。
圖2所示的是根據(jù)本發(fā)明的優(yōu)選實(shí)施例,在BAB基礎(chǔ)上對(duì)交錯(cuò)形狀信息進(jìn)行編碼的設(shè)備的原理框圖。
圖3是如圖2中所示的一場(chǎng)未更新編碼電路的細(xì)節(jié)框圖。
圖4A和4B所示的是根據(jù)本發(fā)明的用于BAB的BAB類型編碼算法流程圖。
參見圖2,它所示的是根據(jù)本發(fā)明的優(yōu)選實(shí)施例的對(duì)當(dāng)前VOP上交錯(cuò)形狀信息進(jìn)行自適應(yīng)編碼的設(shè)備,其中交錯(cuò)形狀信息以二進(jìn)制阿爾法平面的形式出現(xiàn)。二進(jìn)制阿爾法平面被分成多個(gè)幀BAB和有界幀BAB,這些BAB一個(gè)接著一個(gè)地輸入到未更新BAB類型確定電路110,運(yùn)動(dòng)估計(jì)電路170和幀存儲(chǔ)器175。一個(gè)有界幀BAB包括一個(gè)幀BAB和幀BAB周圍的邊界象素,其中邊界象素表示頂部和底部邊界的頂邊界象素和底邊界象素,以及左邊界和右邊界的左邊界象素和右邊界象素,頂邊界和底邊界的寬度分別等于幀BAB上面和下面4個(gè)象素,左邊界和右邊界的寬度分別等于幀BAB左面和右面的2個(gè)象素。有界幀BAB的右邊界象素可能按幀BAB的最右象素而被填充。對(duì)于內(nèi)部CAE和相互CAE來說,邊界象素可用來組成幀BAB中的象素的上下文。
根據(jù)例如先前幀的參考二進(jìn)制阿爾法平面內(nèi)多個(gè)候選幀BAB,運(yùn)動(dòng)估計(jì)電路170對(duì)包含于當(dāng)前有界幀BAB中的當(dāng)前幀BAB進(jìn)行基于幀的運(yùn)動(dòng)估計(jì),其中先前幀是由幀存儲(chǔ)器175輸入的;在候選幀BAB中選擇當(dāng)前幀BAB的預(yù)測(cè)幀BAB,預(yù)測(cè)幀BAB就是最相似的候選幀BAB;對(duì)當(dāng)前幀BAB計(jì)算其形狀運(yùn)動(dòng)向量差值(MVDs);將MVDs和從幀存儲(chǔ)器175中檢索的預(yù)測(cè)有界幀BAB輸出到未更新BAB類型確定電路110和幀編碼電路140,其中預(yù)測(cè)有界幀BAB包括預(yù)測(cè)幀BAB,和寬度等于預(yù)測(cè)BAB周圍1個(gè)象素的邊界象素,以及預(yù)測(cè)有界幀中的邊界象素可用來組成當(dāng)前幀BAB中一個(gè)象素的上下文用于相互CAE。MVDs代表當(dāng)前幀BAB的形狀運(yùn)動(dòng)向量(MVs)和形狀估計(jì)運(yùn)動(dòng)向量(MVPs)之間的差值,MVs表示在當(dāng)前幀BAB和預(yù)測(cè)幀BAB之間的位移。
未更新BAB類型確定電路110檢測(cè)是否當(dāng)前幀BAB的BAB類型對(duì)應(yīng)于‘0’,‘2’,或‘3’。如果檢測(cè)結(jié)果是肯定的,那么BAB類型‘0’,‘2’,或‘3’作為未更新BAB類型B輸出給多路轉(zhuǎn)換器(MUX)160,其中BAB類型‘0’,‘2’或‘3’表示當(dāng)前幀BAB可只用BAB類型本身對(duì)其編碼,而不需額外數(shù)據(jù)。
具體地,當(dāng)前幀BAB可以被分成16個(gè)4×4象素的子塊。如果在BAB的所有子塊和一個(gè)全0子塊之間的誤差小于或等于預(yù)定的閾值,那么該BAB的所有象素可用象素值為‘0’的背景象素代表,且表示“全0”的BAB類型‘2’被分配給這個(gè)BAB,其中全0子塊是二進(jìn)制象素值都為‘0’的子塊。同樣,如果BAB的所有二進(jìn)制象素可以用象素值為‘225’的目標(biāo)象素替代,那么就將表示“全255”的BAB類型‘3’分配給這個(gè)BAB。如果預(yù)定閾值被設(shè)成‘0’,那么“全0”和“全255”分別表示當(dāng)前幀BAB的每個(gè)象素是背景象素和目標(biāo)象素。同樣,如果MVDs是零,且當(dāng)前幀BAB的所有子塊和它們對(duì)應(yīng)的預(yù)測(cè)幀BAB的子塊之間的所有誤差小于或等于預(yù)定閾值,那么當(dāng)前幀BAB可用由運(yùn)動(dòng)估計(jì)電路170輸入的預(yù)測(cè)幀BAB所替代,表示“MVDs=0和未更新”的BAB類型‘0’被分配給這個(gè)BAB。
如果產(chǎn)生了未更新BAB類型B,那么就不需要其他BAB類型確定過程,反之,則當(dāng)前有界幀BAB被輸出給編碼類型確定電路120,幀編碼電路140,以及場(chǎng)BAB發(fā)生器135。編碼類型確定電路120根據(jù)兩個(gè)相鄰行間二進(jìn)制象素值的差,計(jì)算當(dāng)前幀BAB的幀和場(chǎng)相關(guān)性;根據(jù)計(jì)算出的幀和場(chǎng)相關(guān)性,判斷基于幀和基于場(chǎng)的編碼哪一個(gè)更好;如果幀相關(guān)性等于或大于場(chǎng)相關(guān)性,那么將編碼類型E‘0’分配給當(dāng)前幀BAB,反之,則將編碼類型E‘1’分配給當(dāng)前幀BAB;輸出當(dāng)前幀BAB的編碼類型E‘0’或‘1’到幀編碼電路140,場(chǎng)BAB發(fā)生器135及MUX 160,其中編碼類型E‘0’和‘1’分別表示當(dāng)前幀BAB是被基于幀的編碼和基于場(chǎng)的編碼。
當(dāng)編碼類型E為‘0’時(shí)幀編碼電路140被激活,并根據(jù)由編碼類型確定電路120輸入的當(dāng)前有界幀BAB和由運(yùn)動(dòng)估計(jì)電路170輸入的MVDs和預(yù)測(cè)有界幀BAB確定BAB類型‘1’,‘4’,‘5’和‘6’中的一個(gè)作為當(dāng)前幀BAB的BAB類型。幀編碼電路140將確定的BAB類型和幀編碼數(shù)據(jù)輸出給MUX 160,其中幀編碼數(shù)據(jù)表示當(dāng)前幀BAB的基于幀的編碼數(shù)據(jù)。如果BAB類型是1,那么幀編碼數(shù)據(jù)包括編碼的MVDs;如果BAB類型是‘4’,則包括內(nèi)部CAE數(shù)據(jù);如果BAB類型是‘5’,則包括相互CAE數(shù)據(jù);如果BAB類型是‘6’,則包括編碼的MVDs和相互CAE數(shù)據(jù)。
如果饋入的是對(duì)應(yīng)于‘1’的編碼類型E,那么場(chǎng)BAB發(fā)生器135被激活。場(chǎng)BAB發(fā)生器135將當(dāng)前有界幀BAB分成兩個(gè)有界場(chǎng)BAB,即頂部有界場(chǎng)BAB和底部有界場(chǎng)BAB。頂部有界場(chǎng)BAB最好包含當(dāng)前有界幀BAB的每個(gè)奇數(shù)行,并包括一個(gè)頂部場(chǎng)BAB和它的邊界象素,其中頂部場(chǎng)BAB由當(dāng)前幀BAB的奇數(shù)行組成。底部有界場(chǎng)BAB包含當(dāng)前有界幀BAB的每個(gè)偶數(shù)行,還包括一個(gè)底部場(chǎng)BAB和它的邊界象素,其中底部場(chǎng)BAB由當(dāng)前幀BAB的偶數(shù)行組成。場(chǎng)BAB發(fā)生器135將兩個(gè)有界場(chǎng)BAB輸出給一場(chǎng)未更新確定電路180和場(chǎng)運(yùn)動(dòng)估計(jì)電路185。
場(chǎng)運(yùn)動(dòng)估計(jì)電路185對(duì)頂部場(chǎng)BAB和底部場(chǎng)BAB進(jìn)行基于場(chǎng)的運(yùn)動(dòng)估計(jì)。更具體地,場(chǎng)運(yùn)動(dòng)估計(jì)電路185從幀存儲(chǔ)器175檢索例如先前幀的參考二進(jìn)制阿爾法平面,并將檢索的阿爾法平面分成頂阿爾法平面和底阿爾法平面,頂阿爾法平面和底阿爾法平面分別由檢索的阿爾法平面的奇數(shù)行和偶數(shù)行組成。在對(duì)頂部場(chǎng)BAB進(jìn)行的運(yùn)動(dòng)估計(jì)中,首先確定頂部場(chǎng)MVPs。頂部場(chǎng)MVPs可以是先前處理過的場(chǎng)BAB或與頂部場(chǎng)BAB相鄰的幀BAB的MVs中的一個(gè)。此后,根據(jù)頂阿爾法平面和底阿爾法平面中的頂部場(chǎng)MVPs確定多個(gè)候選場(chǎng)BAB,候選場(chǎng)BAB與場(chǎng)BAB有相同的尺寸。然后,根據(jù)候選場(chǎng)BAB,對(duì)頂部場(chǎng)BAB進(jìn)行運(yùn)動(dòng)估計(jì),以確定候選場(chǎng)BAB中的一個(gè)作為預(yù)測(cè)的頂部場(chǎng)BAB。在確定了預(yù)測(cè)的頂部場(chǎng)BAB后,計(jì)算頂部場(chǎng)BAB的MVDs(頂部場(chǎng)MVDs),其中頂部場(chǎng)MVDs用頂部場(chǎng)MVPs和頂部場(chǎng)MVs的差值給出,頂部場(chǎng)MVs表示頂部場(chǎng)BAB和預(yù)測(cè)的頂部場(chǎng)BAB之間的位移。來自于場(chǎng)運(yùn)動(dòng)估計(jì)電路185的頂部場(chǎng)BAB的輸出是一個(gè)頂部場(chǎng)標(biāo)志,它表示預(yù)測(cè)的頂部場(chǎng)BAB所在的頂或底阿爾法平面,和頂部場(chǎng)MVDs,以及從幀存儲(chǔ)器175檢索的預(yù)測(cè)頂部有界場(chǎng)BAB,其中預(yù)測(cè)的頂部有界場(chǎng)BAB包括預(yù)測(cè)的頂部場(chǎng)BAB和在預(yù)測(cè)的頂部場(chǎng)BAB周圍寬度等于1的邊界象素。底部場(chǎng)BAB的運(yùn)動(dòng)估計(jì)方法與上述的方法相似,且輸出底部場(chǎng)BAB的底部場(chǎng)標(biāo)志、底部場(chǎng)MVDs和包括了預(yù)測(cè)的底部場(chǎng)BAB與它的相應(yīng)的邊界象素的預(yù)測(cè)的底部有界場(chǎng)BAB。場(chǎng)運(yùn)動(dòng)估計(jì)電路185的輸出被饋入一場(chǎng)未更新確定電路180。對(duì)于幀BAB和場(chǎng)BAB的運(yùn)動(dòng)估計(jì)的細(xì)節(jié),請(qǐng)參見上述MPEG-4。值得注意的是,可以用與上述運(yùn)動(dòng)估計(jì)的方法不同的方式進(jìn)行運(yùn)動(dòng)估計(jì)。
一場(chǎng)未更新確定電路180判斷是否兩個(gè)場(chǎng)BAB中的一個(gè)對(duì)應(yīng)于BAB類型‘0’或‘1’;且將切換信號(hào)和場(chǎng)數(shù)據(jù)輸出到開關(guān)190,其中切換信號(hào)表示是否兩個(gè)場(chǎng)BAB中至少有一個(gè)可以被它的相應(yīng)的預(yù)測(cè)場(chǎng)BAB所替代,而不考慮相應(yīng)的MVDs值,以及場(chǎng)數(shù)據(jù)包括來自場(chǎng)BAB發(fā)生器135的頂部有界場(chǎng)BAB和底部有界場(chǎng)BAB以及來自場(chǎng)運(yùn)動(dòng)估計(jì)電路185的輸出。具體地說,一場(chǎng)未更新確定電路180檢查是否在頂或底部場(chǎng)BAB與它相應(yīng)的預(yù)測(cè)場(chǎng)BAB之間的誤差小于或等于預(yù)定的閾值,這樣可用相應(yīng)的預(yù)測(cè)場(chǎng)BAB替代頂或底部場(chǎng)BAB。
在開關(guān)190處,兩個(gè)場(chǎng)BAB的場(chǎng)數(shù)據(jù)按切換信號(hào)而被切換。具體地說,如果切換信號(hào)表示頂或底部場(chǎng)BAB可用它相應(yīng)的預(yù)測(cè)場(chǎng)BAB所替代,那么場(chǎng)數(shù)據(jù)被輸出給一場(chǎng)未更新編碼電路200。否則,場(chǎng)數(shù)據(jù)將被輸出到場(chǎng)編碼電路150。
一場(chǎng)未更新編碼電路200根據(jù)本發(fā)明的方案對(duì)兩個(gè)場(chǎng)BAB進(jìn)行編碼。參見圖3,它所示的是根據(jù)本發(fā)明的優(yōu)選實(shí)施例的一場(chǎng)未更新編碼電路200的詳細(xì)框圖,其中場(chǎng)數(shù)據(jù)被輸出到頂或底檢測(cè)電路210和場(chǎng)檢測(cè)電路220。
首先,頂或底檢測(cè)電路210確定是否一場(chǎng)BAB對(duì)應(yīng)于BAB類型‘0’或‘1’作為未更新場(chǎng),并將頂或底(T/B)‘0’或‘1’,輸出到場(chǎng)檢測(cè)電路220和MUX 160,其中T/B‘0’和‘1’分別表明對(duì)應(yīng)于未更新場(chǎng)的底部場(chǎng)BAB和頂部場(chǎng)BAB。如果兩個(gè)場(chǎng)BAB都對(duì)應(yīng)BAB類型‘0’或‘1’,那么最好將頂部場(chǎng)BAB作為未更新場(chǎng)。頂或底檢測(cè)電路210對(duì)已確定的未更新場(chǎng)的MVDs進(jìn)行編碼,即使它的值是零,并將編碼的MVDs傳輸?shù)組UX 160。值得注意地是,即使被確定為未更新場(chǎng)的BAB的BAB類型是‘0’,但根據(jù)本發(fā)明,BAB類型‘1’仍將分配給它,并且值是零的MVDs也被編碼,而在傳統(tǒng)編碼方案中,BAB類型為‘0’的BAB只用BAB類型表示而不對(duì)MVDs編碼。
場(chǎng)檢測(cè)電路220找到另一個(gè)未被頂或底說明的場(chǎng)BAB并根據(jù)場(chǎng)數(shù)據(jù)確定是否場(chǎng)BAB類型,即另一個(gè)場(chǎng)BAB的BAB類型,對(duì)應(yīng)于“未更新”(即,BAB類型為‘0’或‘1’)、“全0”(即,BAB類型‘2’)或“全255”(即,BAB類型‘3’)。如果場(chǎng)BAB類型是“未更新”、“全0”和“全255”中的一個(gè),那么指示另一個(gè)場(chǎng)BAB被定義為“未更新”、“全0”或“全255”的指示信號(hào)S2被輸出到場(chǎng)BAB類型檢測(cè)電路260。如果另一個(gè)場(chǎng)BAB相應(yīng)于“未更新”,則場(chǎng)檢測(cè)電路220將一個(gè)場(chǎng)MVDs(MVDs-field),即另一個(gè)場(chǎng)BAB的MVDs,輸入MVD編碼電路240。如果場(chǎng)BAB類型既不是“未更新”,也不是“全0”和“全255”,那么輸出場(chǎng)MVDs到MVD編碼電路240,并且剩下的場(chǎng)數(shù)據(jù),即另一個(gè)場(chǎng)BAB的有界場(chǎng)BAB和預(yù)測(cè)有界場(chǎng)BAB,被輸出到內(nèi)部或相互確定電路250。
MVD編碼電路240將MVD信號(hào)S3輸出到場(chǎng)BAB類型確定電路260,并對(duì)場(chǎng)MVDs進(jìn)行編碼,以將編碼的場(chǎng)MVDs輸出給內(nèi)部或相互確定電路250和MUX160,其中MVD信號(hào)S3表示是否MVDs等于‘0’。如果場(chǎng)MVDs的值是零,最好不對(duì)其進(jìn)行編碼。
內(nèi)部或相互確定電路250在剩下的場(chǎng)數(shù)據(jù)和編碼的場(chǎng)MVDs的基礎(chǔ)上對(duì)另一個(gè)場(chǎng)BAB執(zhí)行內(nèi)部CAE和相互CAE;比較內(nèi)部CAE數(shù)據(jù)和編碼的場(chǎng)MVDs,以及相互CAE數(shù)據(jù)的比特?cái)?shù);選擇具有較少比特?cái)?shù)的數(shù)據(jù)作為場(chǎng)BAC(二進(jìn)制算術(shù)碼)。內(nèi)部或相互確定電路250輸出內(nèi)部/相互信號(hào)S4給場(chǎng)BAB類型確定電路260并輸出場(chǎng)BAC給MUX 160,其中信號(hào)S4表示另一個(gè)場(chǎng)BAB是被內(nèi)部CAE編碼,或是被相互CAE編碼。
場(chǎng)BAB類型確定電路260根據(jù)信號(hào)S2,S3和S4確定另一個(gè)場(chǎng)BAB的BAB類型,即場(chǎng)BAB類型,‘0’,‘1’,‘2’,‘3’,‘4’,‘5’或‘6’,并輸出場(chǎng)BAB類型到MUX 160。詳細(xì)說明地是,如果S2表示另一個(gè)場(chǎng)BAB對(duì)應(yīng)于“全0”或“全255”,則場(chǎng)BAB類型被確定為‘2’或‘3’,如果S2表示另一個(gè)場(chǎng)BAB對(duì)應(yīng)于“未更新”且S3表示“場(chǎng)MVDs=0”,則場(chǎng)BAB類型被確定為‘0’。如果S2和S3分別表示另一個(gè)場(chǎng)BAB和場(chǎng)MVDs對(duì)應(yīng)“未更新”和非零值,則場(chǎng)BAB類型被設(shè)為‘1’。如果未輸入S2,且S4表明場(chǎng)BAC是內(nèi)部CAE數(shù)據(jù),則場(chǎng)BAB類型被判定為‘4’。如果未輸入S2,而S4表示場(chǎng)BAC是相互CAE數(shù)據(jù),且S3表示場(chǎng)MVDs是零,則場(chǎng)BAB類型被設(shè)成‘5’,最后,如果S4對(duì)應(yīng)相互CAE數(shù)據(jù)且S3對(duì)應(yīng)一個(gè)有非零值的場(chǎng)MVDs,則場(chǎng)BAB類型被判定為‘6’。
參見圖2,如果兩個(gè)場(chǎng)BAB都不對(duì)應(yīng)于BAB類型‘0’或‘1’,則場(chǎng)編碼電路150根據(jù)由一場(chǎng)未更新確定電路180通過開關(guān)190輸入的場(chǎng)數(shù)據(jù)將BAB類型‘4’,‘5’和‘6’中的一個(gè)作為兩個(gè)場(chǎng)BAB共同的BAB類型。在對(duì)兩個(gè)場(chǎng)BAB確定BAB類型的過程中,可使用傳統(tǒng)的比特?cái)?shù)比較方案,其中比較了采用內(nèi)部CAE方案表示兩個(gè)場(chǎng)BAB所需的比特?cái)?shù)(即,表示兩個(gè)場(chǎng)BAB的內(nèi)部CAE數(shù)據(jù)和BAB類型‘4’的比特?cái)?shù))和采用相互CAE技術(shù)表示兩個(gè)場(chǎng)BAB所需的比特?cái)?shù)(即,表示兩個(gè)場(chǎng)BAB的BAB類型‘5’或‘6’和相互CAE數(shù)據(jù),以及如果兩個(gè)場(chǎng)BAB中一個(gè)的MVDs是非零時(shí)的編碼MVDs的比特?cái)?shù));選擇對(duì)應(yīng)于較少比特?cái)?shù)的BAB類型作為兩個(gè)場(chǎng)BAB的BAB類型。請(qǐng)注意,如果兩個(gè)MVDs都是零,則選擇BAB類型‘4’或‘5’作為兩個(gè)場(chǎng)BAB的BAB類型,如果兩個(gè)MVDs中至少有一個(gè)MVDs具有非零值,則確定BAB類型‘4’或‘6’作為兩個(gè)場(chǎng)BAB的BAB類型。這就是說,如果一個(gè)MVDs是零且另一個(gè)有非零值,則BAB類型被確定為‘6’,兩個(gè)MVDs都被編碼。場(chǎng)編碼電路150將編碼的BAB類型‘4’,‘5’或‘6’,和內(nèi)部CAE或相互CAE數(shù)據(jù)作為BAC輸出給MUX 160。如果BAB類型是‘6’,則編碼的MVDs由場(chǎng)編碼電路150輸出到MUX 160。
MUX 160對(duì)從幀編碼電路140、一場(chǎng)未更新編碼電路200和場(chǎng)編碼電路150輸入的未更新BAB類型B、編碼類型E和編碼數(shù)據(jù)進(jìn)行多路轉(zhuǎn)換,以將當(dāng)前幀BAB的多路轉(zhuǎn)換的數(shù)據(jù)輸出到發(fā)送器(未顯示)以便發(fā)送。多路轉(zhuǎn)換方案的細(xì)節(jié)將用表3中所示的比特流向句法所描述。
參見表3,它所示的是根據(jù)本發(fā)明的比特流向句法。
表3<pre listing-type="program-listing"><![CDATA[MB-interlaced-shape-coding(){BAB-typeIf((BAB-type==1)‖(BAB-type>=4))encoding-typeIf((BAB-type==1)‖(BAB-type==6)){MVDs-xMVDs-y}If((BAB-type>=4)&&(encoding-type==4))BACIf(encoding-type==1)Interlaced-shape-information()}//End of MB-binary-shape-codingInterlaced-shape-information(){if(BAB-type==6){MVDs-x-bottomMVDs-y-bottom}if(BAB-type>=4)BAC-fieldIf(BAB-type==1){top-or-bottomBAB-type-fieldIf((BAB-type-field==1)‖(BAB-type-field==6)){MVDs-x-fieldMVDs-y-field}If((BAB-type-field>=4) BAC-field }}//End of Interlaced-shape-information()]]></pre>1比特編碼類型‘0’表示兩個(gè)場(chǎng)BAB作為一個(gè)整體被編碼,即基于幀的編碼,而編碼類型‘1’表明兩個(gè)場(chǎng)BAB是分別被編碼的,即基于場(chǎng)的編碼。
BAB類型是變長(zhǎng)碼,如在1和6比特之間。如果BAB類型對(duì)應(yīng)于‘0’,‘2’或‘3’,它表示當(dāng)前幀BAB是基于幀的編碼,則無(wú)編碼類型跟隨。如果BAB類型是‘1’,‘4’,‘5’和‘6’中的一個(gè),則它的后面跟隨著編碼類型。
1比特的頂或底‘0’表示底部場(chǎng)BAB對(duì)應(yīng)于未更新場(chǎng),而頂或底‘1’表示頂部場(chǎng)BAB對(duì)應(yīng)于未更新場(chǎng)。
場(chǎng)BAB類型‘0’,‘1’,‘2’,‘3’,‘4’,‘5’或‘6’表示另一個(gè)未被指明頂或底的場(chǎng)BAB的BAB類型。
表4
具有編碼類型‘0’的MVDs-x/MVDs-y表示幀BAB的MVDs的水平/垂直分量,而具有編碼類型‘1’的MVDs-x/MVDs-y表示場(chǎng)BAB的場(chǎng)MVDs的水平/垂直分量,如表4所示。
如果編碼類型是‘0’,則BAC是由內(nèi)部CAE或相互CAE產(chǎn)生的幀編碼數(shù)據(jù)。
如果BAB類型是‘4’,‘5’或‘6’且編碼類型是‘1’,則場(chǎng)BAC是由內(nèi)部CAE或相互CAE產(chǎn)生的兩個(gè)場(chǎng)BAB的場(chǎng)編碼數(shù)據(jù)。如果BAB類型是‘1’,編碼類型是‘1’,且場(chǎng)BAB類型是‘4’,‘5’或‘6’,則場(chǎng)BAB是由內(nèi)部CAE或相互CAE產(chǎn)生的另一個(gè)場(chǎng)BAB的場(chǎng)編碼數(shù)據(jù)。
底MVDs-x/底MVDs-y表示底部場(chǎng)BAB的場(chǎng)MVDs的水平/垂直分量。場(chǎng)MVDs-x/場(chǎng)MVDs-y表示未被底或頂說明的另一個(gè)場(chǎng)BAB的場(chǎng)MVDs的水平/垂直分量,其中,如果頂或底是‘1’,則另一個(gè)場(chǎng)BAB指明的是BAB的底部場(chǎng)BAB,而如果頂或底是‘0’,則另一個(gè)場(chǎng)BAB指明的是頂部場(chǎng)BAB。
參見表5,它所示的是在場(chǎng)的基礎(chǔ)上對(duì)當(dāng)前場(chǎng)BAB進(jìn)行編碼的情況下,分配給兩個(gè)場(chǎng)BAB的4種BAB類型,其中頂和底部場(chǎng)BAB類型‘Ti’和‘Bi’對(duì)應(yīng)于傳統(tǒng)的BAB類型‘i’,i是一個(gè)整數(shù),范圍從0到6。BAB類型‘0’,‘2’和‘3’不分配給兩個(gè)場(chǎng)BAB,這是因?yàn)樵谖锤翨AB類型確定電路110中已經(jīng)以幀為基礎(chǔ)檢測(cè)出“MVDs=0,且未更新”、“全0”和“全255”。
表5
參見圖4A和4B,它所示的是根據(jù)本發(fā)明,在BAB基礎(chǔ)上的交錯(cuò)形狀信息的BAB類型編碼算法的流程圖。
在S11步,通過根據(jù)例如先前幀的參考二進(jìn)制阿爾法平面內(nèi)多個(gè)候選幀BAB對(duì)當(dāng)前有界幀BAB內(nèi)的當(dāng)前幀BAB進(jìn)行基于幀地運(yùn)動(dòng)估計(jì),選擇出當(dāng)前幀BAB的預(yù)測(cè)幀BAB,并計(jì)算出當(dāng)前幀BAB的MVDs。
在S13步,在當(dāng)前幀BAB的基礎(chǔ)上確定未更新BAB類型。更為詳細(xì)地說,檢測(cè)當(dāng)前BAB中所有象素能被全0或全255所代替,從而只用BAB類型‘2’或‘3’可代表BAB本身,如果不是這樣,則進(jìn)一步判定當(dāng)前幀BAB的MVDs是零,且BAB被預(yù)測(cè)幀BAB例如最相似候選BAB所替代,從而只用BAB類型‘0’可代表當(dāng)前幀BAB本身。如果當(dāng)前幀BAB被未更新BAB類型‘2’,‘3’,或‘0’,即“全0”、“全255”或“MVDs=0且未更新”所代表,則在S14步,當(dāng)前幀BAB的未更新BAB類型被編碼且不進(jìn)行進(jìn)一步的編碼算法。
如果反之,則在S16步,分別根據(jù)所有兩個(gè)相鄰行和所有兩個(gè)相鄰奇數(shù)行與偶數(shù)行上二進(jìn)制象素差值,計(jì)算出當(dāng)前幀BAB的幀和場(chǎng)相關(guān)性,從而判斷是否當(dāng)前幀BAB的幀相關(guān)性大于它的場(chǎng)相關(guān)性。如果判定基于幀的編碼優(yōu)于基于場(chǎng)的編碼從而使得編碼類型是“基于幀”,即,‘0’,則在S17步,確定BAB類型‘1’,‘4’,‘5’和‘6’中的一個(gè)作為當(dāng)前幀BAB的BAB類型,其中BAB類型‘1’,‘4’,‘5’和‘6’分別代表用“MVDs≠0且未更新”,“內(nèi)部CAE”,“MVDs=0且相互CAE”以及“MVDs≠0且相互CAE”對(duì)當(dāng)前幀BAB進(jìn)行編碼。在S18步,BAB類型‘1’,‘4’,‘5’或‘6’和編碼類型‘0’被編碼;然后,在S19步,根據(jù)BAB類型‘1’,‘4’,‘5’和‘6’,多路轉(zhuǎn)換當(dāng)前幀BAB的幀編碼數(shù)據(jù),并且處理過程結(jié)束,其中幀編碼數(shù)據(jù)包括編碼的MVDs和/或BAC,即,由內(nèi)部/相互CAE技術(shù)產(chǎn)生的內(nèi)部/相互CAE數(shù)據(jù)。
同時(shí),如果在S16步發(fā)現(xiàn)對(duì)應(yīng)于編碼類型‘1’的基于場(chǎng)的編碼優(yōu)于基于幀的編碼,則在S21步,判斷是否當(dāng)前幀BAB的兩個(gè)場(chǎng)BAB對(duì)應(yīng)于一場(chǎng)未更新。換句話說,即檢驗(yàn)是否頂部場(chǎng)BAB或底部場(chǎng)BAB可用相應(yīng)的預(yù)測(cè)場(chǎng)BAB所替代。如果兩個(gè)場(chǎng)BAB與一場(chǎng)未更新并不匹配,則在S22步,根據(jù)比特?cái)?shù)比較方案確定兩個(gè)場(chǎng)BAB的BAB類型‘4’,‘5’或‘6’,比特?cái)?shù)比較方案就是比較在內(nèi)部CAE方案中表示兩個(gè)場(chǎng)BAB所需的比特?cái)?shù)和在相互CAE方案中表示兩個(gè)場(chǎng)BAB所需的比特?cái)?shù);在S23步,表示基于場(chǎng)編碼的場(chǎng)BAB類型‘4’,‘5’或‘6’和編碼類型‘1’被編碼;在S24步,用內(nèi)部/相互CAE原則先后對(duì)兩個(gè)場(chǎng)BAB進(jìn)行編碼,從而產(chǎn)生包括兩個(gè)場(chǎng)BAB的MVDs的場(chǎng)編碼數(shù)據(jù)(如果有的話),和/或內(nèi)部/相互CAE數(shù)據(jù),然后處理過程結(jié)束。
如果在S21步,兩個(gè)場(chǎng)BAB符合一場(chǎng)未更新,這樣兩個(gè)場(chǎng)BAB對(duì)應(yīng)于場(chǎng)BAB類型‘1’,則在S25步判斷是頂部場(chǎng)BAB還是底部場(chǎng)BAB對(duì)應(yīng)于未更新場(chǎng),從而可產(chǎn)生頂或底T/B‘0’或‘1’,然后確定場(chǎng)BAB類型,即另一個(gè)場(chǎng)BAB的BAB類型,而它并不被頂或底指明,其中場(chǎng)BAB類型‘0’,‘1’,‘2’,‘3’,‘4’,‘5’和‘6’分別代表相應(yīng)的另一個(gè)場(chǎng)BAB對(duì)應(yīng)于“場(chǎng)MVDs=0且未更新場(chǎng)”,“場(chǎng)MVDs≠0且未更新場(chǎng)”,“全0”,“全255”,“內(nèi)部CAE”,“場(chǎng)MVDs=0且相互CAE”以及“場(chǎng)MVDs≠0且相互CAE”。在S26步,BAB類型‘1’,編碼類型‘1’,頂或底‘0’或‘1’和場(chǎng)BAB類型‘0’,‘1’,‘2’,‘3’,‘4’,‘5’,或‘6’被依次編碼。在S27步,多路轉(zhuǎn)換另一個(gè)場(chǎng)BAB的場(chǎng)編碼數(shù)據(jù),然后過程結(jié)束,其中另一個(gè)場(chǎng)BAB的場(chǎng)編碼數(shù)據(jù)包括場(chǎng)MVDs,和/或另一個(gè)場(chǎng)BAB的內(nèi)部/相互CAE數(shù)據(jù)。
盡管本發(fā)明只通過了某個(gè)優(yōu)選實(shí)施例進(jìn)行說明,但只要不脫離下面要求所闡述的本發(fā)明的精神和范圍,可以進(jìn)行其他的修改和變動(dòng)。
權(quán)利要求
1.一種對(duì)交錯(cuò)形狀信號(hào)的目標(biāo)塊編碼的方法,其中交錯(cuò)形狀信號(hào)包括多個(gè)圖像,每個(gè)圖像被分成多個(gè)M×N象素塊,這些象素具有第一或第二象素值,M和N分別是正偶數(shù),或是在M×N個(gè)象素的基礎(chǔ)上采用基于幀的編碼方法,或是在M/2×N個(gè)象素的基礎(chǔ)上采用基于場(chǎng)的編碼方法對(duì)目標(biāo)塊進(jìn)行編碼,目標(biāo)塊代表當(dāng)前圖像的待被編碼的一個(gè)塊,該方法包括下述步驟(a)判斷是否只用未更新BAB類型對(duì)目標(biāo)塊編碼,其中未更新BAB類型表示只用BAB類型本身對(duì)目標(biāo)塊編碼,而無(wú)需其他附加編碼數(shù)據(jù);(b)如果不是用未更新BAB類型對(duì)目標(biāo)塊編碼,則根據(jù)目標(biāo)塊和它的兩個(gè)場(chǎng)塊之間的相關(guān)程度,選擇基于幀或是基于場(chǎng)的編碼類型作為目標(biāo)塊的編碼類型,其中所述的兩個(gè)場(chǎng)塊分別包含目標(biāo)塊的每個(gè)奇數(shù)行和每個(gè)偶數(shù)行,每個(gè)場(chǎng)塊有M/2×N個(gè)象素,且編碼類型指明用基于幀的編碼原則還是基于場(chǎng)的編碼原則來編碼目標(biāo)塊;(c)如果在步驟(b)中選擇了基于場(chǎng)的編碼方法,則判斷是否兩個(gè)場(chǎng)塊對(duì)應(yīng)于一場(chǎng)未更新,其中所述的一場(chǎng)未更新表示兩個(gè)場(chǎng)塊中至少有一個(gè)可被最相似的候選場(chǎng)塊所替代;(d)如果兩個(gè)場(chǎng)塊被確定為上述一場(chǎng)未更新的BAB類型‘1’,則找出頂或底和場(chǎng)BAB類型,其中所述的頂或底指明兩個(gè)場(chǎng)塊中哪一個(gè)可被最相似候選場(chǎng)塊所替代,場(chǎng)BAB類型表示未被頂或底指明的另一個(gè)場(chǎng)塊的編碼條件;(e)多路轉(zhuǎn)換非數(shù)據(jù)BAB類型、編碼類型、BAB類型、頂或底和/或場(chǎng)BAB類型。
2.如權(quán)利要求1中所述的方法,其中步驟(c)包括以下步驟(c1)參照當(dāng)前圖像的一個(gè)或多個(gè)參考圖像,對(duì)上述兩個(gè)場(chǎng)塊中的每一個(gè)塊進(jìn)行基于場(chǎng)的運(yùn)動(dòng)估計(jì),從而產(chǎn)生它的最相似候選場(chǎng)塊;(c2)計(jì)算上述每個(gè)場(chǎng)塊和最相似候選場(chǎng)塊之間的場(chǎng)誤差,以便對(duì)上述每個(gè)場(chǎng)塊的場(chǎng)誤差和另一個(gè)預(yù)定閾值作比較;(c3)如果上述每個(gè)場(chǎng)塊的場(chǎng)誤差不大于預(yù)定閾值,則將上述每個(gè)場(chǎng)塊判定為未更新場(chǎng),其中未更新場(chǎng)代表上述每個(gè)場(chǎng)塊可用最相似候選場(chǎng)塊代替;(c4)如果上述兩個(gè)場(chǎng)塊中至少一個(gè)場(chǎng)塊對(duì)應(yīng)于未更新場(chǎng),則分配一場(chǎng)未更新給上述兩個(gè)場(chǎng)塊。
3.如權(quán)利要求2中所述的方法,其中步驟(d)包括以下步驟(d1)判斷另一個(gè)場(chǎng)塊的場(chǎng)BAB類型是否是‘2’或‘3’以產(chǎn)生全0/全255信號(hào),其中場(chǎng)BAB類型‘2’表示另一個(gè)場(chǎng)塊與第一個(gè)參考?jí)K間的誤差不大于預(yù)定閾值,而場(chǎng)BAB類型‘3’表示另一個(gè)場(chǎng)塊與第二個(gè)參考?jí)K之間的誤差不大于預(yù)定閾值,每個(gè)參考?jí)K都有M×N個(gè)象素且第一和第二參考?jí)K的所有象素分別具有第一和第二二進(jìn)制值;(d2)對(duì)另一個(gè)場(chǎng)塊設(shè)定未更新場(chǎng)信號(hào),其中未更新場(chǎng)表示另一個(gè)場(chǎng)塊的場(chǎng)誤差小于預(yù)定閾值,從而另一個(gè)場(chǎng)塊可用最相似候選場(chǎng)塊代替;(d3)計(jì)算另一個(gè)場(chǎng)塊的運(yùn)動(dòng)向量和它通過步驟(c1)的基于場(chǎng)的運(yùn)動(dòng)估計(jì)得到的估計(jì)因子之間的場(chǎng)MVDs以產(chǎn)生一個(gè)場(chǎng)MVD信號(hào),其中場(chǎng)MVD信號(hào)指明是否場(chǎng)MVDs是零;(d4)如果場(chǎng)MVDs不是零,則對(duì)另一個(gè)場(chǎng)塊的場(chǎng)MVDs進(jìn)行編碼,以產(chǎn)生場(chǎng)MVD數(shù)據(jù)(d5)如果場(chǎng)誤差不小于預(yù)定閾值,則產(chǎn)生場(chǎng)內(nèi)部編碼數(shù)據(jù)和場(chǎng)相互編碼數(shù)據(jù),其中場(chǎng)內(nèi)部碼數(shù)據(jù)是在當(dāng)前圖像的預(yù)定象素基礎(chǔ)上,通過對(duì)另一個(gè)場(chǎng)塊的象素進(jìn)行編碼而產(chǎn)生的,而相互編碼數(shù)據(jù)是在當(dāng)前圖像中的預(yù)定象素與另一個(gè)場(chǎng)塊的最相似候選場(chǎng)塊的基礎(chǔ)上,通過對(duì)另一個(gè)場(chǎng)塊的象素進(jìn)行編碼而得到的;(d6)產(chǎn)生一個(gè)場(chǎng)相互/內(nèi)部信號(hào),其中場(chǎng)內(nèi)部/相互信號(hào)是在選定了場(chǎng)內(nèi)部編碼數(shù)據(jù)或場(chǎng)相互編碼數(shù)據(jù)的情況下產(chǎn)生的;(d7)根據(jù)全0/全255信號(hào)、場(chǎng)MVD信號(hào)、未更新場(chǎng)信號(hào)和/或場(chǎng)內(nèi)部/相互信號(hào),確定場(chǎng)BAB類型。
4.如權(quán)利要求3中所述的方法,其中內(nèi)部編碼數(shù)據(jù)是通過采用基于內(nèi)部上下文的算術(shù)編碼(CAE)方法產(chǎn)生的,而相互編碼數(shù)據(jù)是通過相互CAE方法產(chǎn)生的。
5.如權(quán)利要求1中所述的方法,其中未更新BAB類型包括BAB類型‘2’或‘3’,其中BAB類型‘2’表示目標(biāo)塊與第一參考?jí)K之間的誤差不大于預(yù)定閾值,BAB類型‘3’表示目標(biāo)塊與第二參考?jí)K之間的誤差不大于預(yù)定閾值,每個(gè)參考?jí)K有M×N個(gè)象素且第一和第二參考?jí)K的所有象素分別具有第一和第二二進(jìn)制值。
6.如權(quán)利要求5中所述的方法,其中未更新BAB類型進(jìn)一步包括BAB類型‘0’,它表示在目標(biāo)塊的運(yùn)動(dòng)向量和它的運(yùn)動(dòng)向量估計(jì)因子之間的形狀運(yùn)動(dòng)向量差(MVDs)是零,且目標(biāo)塊與最相似候選塊間的誤差不大于預(yù)定閾值,其中最相似候選塊有M×N個(gè)象素,它在當(dāng)前圖像的一個(gè)或多個(gè)參考圖像的多個(gè)候選塊中產(chǎn)生最小的誤差。
7.如權(quán)利要求6中所述的方法,其中上述BAB類型‘0’被確定的過程如下(a1)用上述當(dāng)前圖像的一個(gè)或多個(gè)參考圖像對(duì)目標(biāo)塊進(jìn)行運(yùn)動(dòng)估計(jì),以產(chǎn)生包括最相似候選塊和它的運(yùn)動(dòng)向量的運(yùn)動(dòng)向量信息;(a2)計(jì)算目標(biāo)塊和最相似候選塊之間的誤差,并計(jì)算運(yùn)動(dòng)向量和它的估計(jì)因子之間的MVDs;(a3)分別將MVDs和目標(biāo)塊的誤差與零和預(yù)定閾值進(jìn)行比較;(a4)如果誤差不大于預(yù)定閾值,則確定目標(biāo)塊為未更新,其中未更新表示目標(biāo)塊被最相似候選塊所替代;(a5)如果MVDs是零且目標(biāo)塊對(duì)應(yīng)于未更新,則產(chǎn)生上述的BAB類型‘0’。
8.如權(quán)利要求1中所述的方法,其中該方法在步驟(e)之前,進(jìn)一步包括如下步驟(f).如果在步驟(b)中編碼類型被確定為基于幀,則利用基于幀的編碼原則對(duì)目標(biāo)塊進(jìn)行編碼,以產(chǎn)生具有幀編碼數(shù)據(jù)的BAB類型,其中BAB類型代表幀編碼數(shù)據(jù)的編碼條件;(g).如果上述兩個(gè)場(chǎng)塊未被確定為一場(chǎng)未更新的BAB類型,則采用基于場(chǎng)的編碼原則對(duì)上述兩個(gè)場(chǎng)塊進(jìn)行編碼,以產(chǎn)生具有場(chǎng)編碼數(shù)據(jù)的BAB類型,其中BAB類型代表場(chǎng)編碼數(shù)據(jù)的編碼條件。
9.如權(quán)利要求8中所述的方法,其中在步驟(f)中BAB類型被確定為BAB類型‘1’,‘4’,‘5’和‘6’中的一個(gè),其中BAB類型‘1’,‘4’,‘5’和‘6’分別是‘MVDs≠0且未更新”,“內(nèi)部CAE”,“MVDs=0且相互CAE”,和“MVDs≠0且未更新”。
10.如權(quán)利要求8中所述的方法,其中在步驟(g)中被確定的BAB類型是BAB類型‘4’,‘5’和‘6’中的一個(gè),其中BAB類型‘4’,‘5’和‘6’分別是“內(nèi)部CAE”,“MVDs=0且相互CAE”,以及“MVDs≠0且未更新”。
11.一種對(duì)交錯(cuò)形狀信號(hào)的目標(biāo)塊進(jìn)行編碼的設(shè)備,其中交錯(cuò)形狀信號(hào)包括多個(gè)圖像,每個(gè)圖像被分成多個(gè)M×N個(gè)象素的塊,象素具有第一或第二二進(jìn)制值,M和N分別是正偶數(shù),且目標(biāo)塊或是在M×N個(gè)象素的基礎(chǔ)上被基于幀的編碼技術(shù)所編碼,或是在M/2×N個(gè)象素的基礎(chǔ)上被基于場(chǎng)的編碼技術(shù)所編碼,目標(biāo)塊表示當(dāng)前圖像中將被編碼的那個(gè)塊,該設(shè)備包括未更新BAB類型確定電路,用于確定是否只用未更新BAB類型對(duì)目標(biāo)塊進(jìn)行編碼,其中未更新BAB類型代表只用BAB類型本身對(duì)目標(biāo)塊進(jìn)行編碼,而不需要目標(biāo)塊的其他編碼數(shù)據(jù);編碼類型確定電路,用于在目標(biāo)塊和它的兩個(gè)場(chǎng)塊的相關(guān)程度的基礎(chǔ)上選擇基于幀或是基于場(chǎng)的編碼類型作為其編碼類型,其中上述兩個(gè)場(chǎng)塊分別包含目標(biāo)塊的每個(gè)奇數(shù)行和每個(gè)偶數(shù)行,每個(gè)場(chǎng)塊有M/2×N個(gè)象素,編碼類型指明用于目標(biāo)塊編碼的是基于幀的編碼原則和基于場(chǎng)的編碼原則中的哪一個(gè);一場(chǎng)未更新確定電路,用于判斷是否兩個(gè)場(chǎng)塊對(duì)應(yīng)于一場(chǎng)未更新,其中上述一場(chǎng)未更新表示兩個(gè)場(chǎng)塊中至少有一個(gè)可用最相似候選場(chǎng)塊來替代;一場(chǎng)未更新編碼電路,用于找出頂或底和場(chǎng)BAB類型,其中上述頂或底指明兩個(gè)場(chǎng)塊中哪一個(gè)可被最相似候選場(chǎng)塊替代,場(chǎng)BAB類型表示未被頂或底說明的另一個(gè)場(chǎng)塊的編碼條件;多路轉(zhuǎn)換器,用于多路轉(zhuǎn)換非數(shù)據(jù)BAB類型、編碼類型、BAB類型、頂或底、和/或場(chǎng)BAB類型。
12.如權(quán)利要求11中所述的設(shè)備,其中一場(chǎng)未更新確定電路包括參照當(dāng)前圖像的一個(gè)或多個(gè)參考圖像而對(duì)上述兩個(gè)場(chǎng)塊中的每一個(gè)進(jìn)行運(yùn)動(dòng)估計(jì)的裝置,它可以產(chǎn)生最相似候選場(chǎng)塊;計(jì)算上述每個(gè)場(chǎng)塊與最相似候選場(chǎng)塊間的場(chǎng)誤差以將上述每個(gè)場(chǎng)塊的場(chǎng)誤差與另一個(gè)預(yù)定閾值作比較的裝置;確定上述每個(gè)場(chǎng)塊為未更新場(chǎng)的裝置,其中未更新場(chǎng)表示上述每個(gè)場(chǎng)塊被最相似候選場(chǎng)塊所替代;分配一場(chǎng)未更新給上述兩個(gè)場(chǎng)塊的裝置。
13.如權(quán)利要求12中所述的設(shè)備,其中一場(chǎng)未更新編碼電路包括檢測(cè)另一個(gè)場(chǎng)塊的場(chǎng)BAB類型是否是‘2’或‘3’以產(chǎn)生全0/全255信號(hào)的裝置,其中場(chǎng)BAB類型‘2’表示另一個(gè)場(chǎng)塊與第一參考?jí)K之間的誤差不大于預(yù)定閾值,而場(chǎng)BAB類型‘3’表示另一個(gè)場(chǎng)塊與第二參考?jí)K之間的誤差不大于預(yù)定閾值;每個(gè)參考?jí)K有M×N個(gè)象素,且第一和第二參考?jí)K中所有象素分別有第一和第二二進(jìn)制值;對(duì)另一個(gè)場(chǎng)塊設(shè)置未更新場(chǎng)信號(hào)的裝置,其中未更新場(chǎng)表示另一個(gè)場(chǎng)塊的場(chǎng)誤差小于預(yù)定閾值,這樣另一個(gè)場(chǎng)塊被最相似候選場(chǎng)塊所替代;計(jì)算另一個(gè)場(chǎng)塊的運(yùn)動(dòng)向量和它在基于場(chǎng)的運(yùn)動(dòng)估計(jì)的基礎(chǔ)上的估計(jì)因子之間的場(chǎng)MVDs,以產(chǎn)生場(chǎng)MVD信號(hào)的裝置,其中場(chǎng)MVD信號(hào)指明是否場(chǎng)MVDs是零;如果該MVDs不是零則對(duì)該另一個(gè)場(chǎng)塊的MVDs進(jìn)行編碼,以產(chǎn)生場(chǎng)MVD數(shù)據(jù)的裝置;產(chǎn)生場(chǎng)內(nèi)部編碼數(shù)據(jù)和場(chǎng)相互編碼數(shù)據(jù)的裝置,其中場(chǎng)內(nèi)部編碼數(shù)據(jù)的產(chǎn)生是基于當(dāng)前圖像的預(yù)定象素對(duì)另一個(gè)場(chǎng)塊的象素進(jìn)行編碼而得到的,相互編碼數(shù)據(jù)是在當(dāng)前圖像中預(yù)定象素和另一個(gè)場(chǎng)塊的最相似候選場(chǎng)塊的基礎(chǔ)上,對(duì)另一個(gè)場(chǎng)塊的象素進(jìn)行編碼而產(chǎn)生的;產(chǎn)生場(chǎng)內(nèi)部/相互信號(hào)的裝置,其中場(chǎng)內(nèi)部/相互信號(hào)是在選擇了場(chǎng)內(nèi)部編碼數(shù)據(jù)或場(chǎng)相互編碼數(shù)據(jù)時(shí)產(chǎn)生的;根據(jù)全0/全255信號(hào)、場(chǎng)MVD信號(hào)、未更新場(chǎng)信號(hào)和/或場(chǎng)內(nèi)部/相互信號(hào)判斷場(chǎng)BAB類型的裝置。
14.如權(quán)利要求13中所述的設(shè)備,其中內(nèi)部編碼數(shù)據(jù)的產(chǎn)生是通過基于內(nèi)部上下文的算術(shù)編碼(CAE)方法,而相互編碼數(shù)據(jù)的產(chǎn)生是通過相互CAE方法。
15.如權(quán)利要求11中所述的設(shè)備,其中未更新BAB類型包括BAB類型‘2’或‘3’,其中BAB類型‘2’表示目標(biāo)塊與第一參考?jí)K之間的誤差不大于預(yù)定閾值,BAB類型‘3’表示目標(biāo)塊與第二參考?jí)K之間的誤差不大于預(yù)定閾值,每個(gè)參考?jí)K有M×N個(gè)象素,第一和第二參考?jí)K的所有象素分別具有第一和第二二進(jìn)制值。
16.如權(quán)利要求15中所述的設(shè)備,其中未更新BAB類型進(jìn)一步包括BAB類型‘0’,這代表目標(biāo)塊的運(yùn)動(dòng)向量和它的運(yùn)動(dòng)向量估計(jì)因子之間的形狀運(yùn)動(dòng)向量差(MVDs)是零,且目標(biāo)塊與最相似候選塊間的誤差不大于預(yù)定閾值,其中最相似候選塊有M×N個(gè)象素,它在當(dāng)前圖像的一個(gè)或多個(gè)參考圖象的多個(gè)候選塊中產(chǎn)生最小誤差。
17.如權(quán)利要求16中所述的設(shè)備,其中上述BAB類型‘0’被以下裝置確定對(duì)目標(biāo)塊進(jìn)行運(yùn)動(dòng)估計(jì)的裝置,它參照上述當(dāng)前圖像的一個(gè)或多個(gè)參考圖像進(jìn)行運(yùn)動(dòng)估計(jì)以產(chǎn)生包括最相似候選塊和運(yùn)動(dòng)向量的運(yùn)動(dòng)向量信息;計(jì)算目標(biāo)塊和最相似候選塊之間的誤差以及運(yùn)動(dòng)向量和它的估計(jì)因子之間的MVDs的裝置;分別比較MVDs和目標(biāo)塊的誤差與零和預(yù)定閾值的裝置;確定目標(biāo)塊為未更新的裝置,其中未更新代表目標(biāo)塊被最相似候選塊所替代。
18.如權(quán)利要求11中所述的設(shè)備,還包括基于幀的編碼電路,用于利用基于幀的編碼原則對(duì)目標(biāo)塊進(jìn)行編碼,以產(chǎn)生具有幀編碼數(shù)據(jù)的BAB類型,其中BAB類型表示幀編碼數(shù)據(jù)的編碼條件;基于場(chǎng)的編碼電路,用于利用基于場(chǎng)的編碼原則對(duì)所述兩個(gè)場(chǎng)塊進(jìn)行編碼,以產(chǎn)生具有場(chǎng)編碼數(shù)據(jù)的BAB類型,其中BAB類型表示場(chǎng)編碼數(shù)據(jù)的編碼條件。
19.如權(quán)利要求18中所述的設(shè)備,其中基于幀的編碼電路確定BAB類型‘1’,‘4’,‘5’和‘6’中的一個(gè)作為目標(biāo)塊的BAB類型,其中BAB類型‘1’,‘4’,‘5’和‘6’分別是”“MVDs≠0且未更新”,“內(nèi)部CAE”,“MVDs=0且相互CAE”和“MVDs≠0且未更新。”
20.如權(quán)利要求18所述的設(shè)備,其中基于場(chǎng)的編碼電路確定BAB類型‘4’,‘5’和‘6’中的一個(gè)作為兩個(gè)場(chǎng)塊的BAB類型,其中BAB類型‘4’,‘5’和‘6’分別是“內(nèi)部CAE”,“MVDs=0且相互CAE”和“MVDs≠0且未更新。”
全文摘要
一種對(duì)交錯(cuò)形狀信號(hào)的目標(biāo)塊的BAB類型進(jìn)行編碼的方法。在判定為未更新BAB類型之后,根據(jù)目標(biāo)塊和它的兩個(gè)場(chǎng)塊間的相關(guān)程度選擇基于幀或基于場(chǎng)的編碼類型。如果選擇基于場(chǎng)的編碼類型,則判斷是否上述兩個(gè)場(chǎng)塊對(duì)應(yīng)于一場(chǎng)未更新,說明上述兩個(gè)場(chǎng)塊中至少有一個(gè)場(chǎng)塊需要傳送附加的數(shù)據(jù)。如果上述兩個(gè)場(chǎng)塊被判定為一場(chǎng)未更新,則檢測(cè)頂或底和場(chǎng)BAB類型并編碼。
文檔編號(hào)H04N7/26GK1224977SQ98102780
公開日1999年8月4日 申請(qǐng)日期1998年7月7日 優(yōu)先權(quán)日1998年1月31日
發(fā)明者趙晟烈 申請(qǐng)人:大宇電子株式會(huì)社