亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

編碼二進制形狀信號的方法

文檔序號:7573179閱讀:698來源:國知局
專利名稱:編碼二進制形狀信號的方法
技術領域
本發(fā)明關于一種編碼二進制形狀信號的編碼方法,特別地,關于利用基于上下文的編碼技術的編碼二進制形狀信號的方法。
在諸如可視電話和電視會議系統(tǒng)的數字視頻系統(tǒng)中,需要大量的數字數據來定義每個視頻幀信號,因為視頻幀信號包括稱為象素值的一系列的數字數據。
但是由于傳統(tǒng)的傳輸通道的可用頻帶寬度是有限的,為了通過該通道傳輸大量的數字數據,需要通過使用各種的數據壓縮技術來壓縮或減少數據量,特別是在諸如可視電話和電視會議系統(tǒng)這樣低比特率的視頻信號編碼器的情況中。
用于低比特率的編碼系統(tǒng)的這種編碼視頻信號的技術之一是面向目標的分析-綜合編碼技術,其中輸入視頻圖象被分割成多個目標;并通過不同的編碼通路對定義每個目標的運動、輪廓和象素數據的三組參數進行處理。
這種面向目標的編碼方案的一個例子是所謂的MPEG(運動圖象專家組)階段4(MPEG-4),它設計用于提供一個音頻-視頻編碼標準,用于使得可進行基于內容的交互活動、提高編碼效率和/或在諸如低比特率通信、交互式多媒體(例如游戲、交互式電視等等)和在區(qū)域監(jiān)視的應用中具有廣泛的可用性。
根據MPEG-4,輸入視頻圖象被分割成多個視頻目標平面(UOP),這些視頻目標平面對應于用戶可以訪問及控制的比特流中的各實體。VOP可稱之為目標,可由包圍該目標的其寬和高最小可為16的最小倍數的象素(一個宏塊的尺寸)的有界的矩形表示,使得編碼器可以逐個VOP地即逐個目標地處理輸入視頻圖象。
MPEG-4中所描述的VOP包括形狀信息和顏色信息,顏色信息包括亮度和色度,其中形狀信息由例如二進制息掩碼表示并且與亮度數據有關。在二進制中,一個二進值,例如0,用于表示一個象素,即位于VOP中的目標外邊的背景象素,而另一個二進值,例如1用于表示一個象素,即目標中的目標象素。
一個二進制形狀信號,代表目標的位置和形狀,可以表示為一幀或VOP中的一個二進制字母塊(BAB),例如16×16的二進制象素的塊,其中每個二進制象素有一個二進制值,例如0或1,代表一個目標象素或一個背景象素。
BAB可以用傳統(tǒng)的基于位圖的形狀編碼方法來進行編碼,諸如基于上下文的算術編碼(CAE)方法(參見MPEG-4視頻辨識模型版2.0,國際標準組織,ISO/IEC JTC1/SC29/WG11 N1260,Mar,1996)。
例如,在內部模式中,BAB用傳統(tǒng)的CAE方法編碼,由此產生編碼的BAB。而在相互模式中,代表當前幀(或VOP)中的BAB與前一幀(或VOP)中的最相似的BAB之間的位移的運動矢量及代表二者之間的差異的誤差數據一起通過運動估計和運動補償來找到。誤差數據用傳統(tǒng)的CAE進行編碼以由此產生編碼的誤差數據。然后,編碼的誤差數據及運動矢量組合以形成編碼的BAB。
但是,如上得到的編碼的BAB在一解碼器中解碼成只有預置分辨率的重構圖象。因此,若需要更高分辨率的BAB的圖象,BAB傳統(tǒng)上被編碼為帶有可變倍性,它逐步地增加BAB的解碼圖象的分辨率。即,具有低分辨率的代表BAB的圖象的底層被編碼;基于該底層,附加的信息被加至其上以產生BAB增強層,然后再作編碼。
編碼的數據,即如上述的帶有可變倍性的編碼的BAB被發(fā)送給解碼器以待在那里被解碼。解碼器解碼這種數據有多種方法。一種方法是只有編碼的較低層(例如編碼的底層)被解碼以獲得一較低分辨率的圖象。但是為了提高圖象的分辨率,底層和少數幾個較高層可被解碼。要進一步提高分辨率,可解碼發(fā)送來的所有層,以獲得具有與原始圖象相同的分辨率的圖象,假定即使較高層可能不被解碼較低層在較高層之前被解碼。
如這里所述的帶有可變倍性的編碼和解碼方法不僅能減少誤差,而且可防止位丟失,由此可進行具有相當高分辨率的圖象的傳送。本技術領域的人熟知,無論是底層還是增強層編碼,有效的CAE方法均是十分重要的。
現在參見

圖1A-1C,示出了具有上下文值的二進制象素組以解釋傳統(tǒng)的CAE方法。后面,參考圖1A-1C說明傳統(tǒng)CAE方法的一個方面。
CAE方法是一種編碼一幀或VOP內的BAB的技術。每個BAB是一個M×N的(如16×16)二進制象素的塊,其中M、N是正偶數。編碼一VOP或幀內的BAB的順序通常是根據所謂的光柵掃描順序。
該CAE方法首先計算待編碼的BAB內的每個二進制象素的上下文值。一個BAB內的二進制象素的上下文值代表該二進制象素位于一個具有以預置的順序存儲的概率值的預定的概率表內的位置的索引。因此,通過參考由二進制象素的上下文值所表示的概率值就可確認該二進制象素是一具有二制值0的背景象素還是一具有二進制值1的目標象素。
此后,該BAB內的所有二進制象素的上下文值被編碼以生成包括編碼的上下文值的編碼的BAB以待經過一個發(fā)送器發(fā)送到一解碼器。
解碼器對編碼的上下文值進行解碼以得到重構的上下文值?;诿總€重構的上下文值,在解碼器處從概率表(與上述的編碼過程中使用的相同)中找到相應二進制象素的概率值,來重構具有如0或1值的每個二進制象素,由此來產生該BAB的重構的BAB。
本技術領域公知的是環(huán)繞每個二進制象素周圍的二進制象素的上下文值可被用于計算該二進制象素的上下文值,由此改變CAE編碼BAB的效率。傳統(tǒng)的CAE編碼方法中使用的利用環(huán)繞在該二進制象素周圍的二進制象素的上下文值來計算一二進制象素的上下文值的方法將在下面結合附圖1A-1C詳細說明。
在圖1A中,示出了一BAB或一原始BAB內的二進制象素組100,包括具有上下文值C0-C9的二進制象素和位于X處的二進制象素,X處的二進制象素稱為二進制象素X,二進制象素組100將用于計算二進制象素X的上下文值。在內部模式中,二進制象素X的上下文值(稱為C)根據公式(1)利用10個上下文值C0-C9來計算公式(1)C=Σk=09(Ck)2k]]>公式(1)中,Ck代表具有上下文值Ck的二進制象素的二進制值1或0。
在圖1B中,示出了當前幀(或VOP)內的BAB中的二進制象素組110,其中二進制象素組110包括具有上下文值C’0~C’3的二進制象素和位于Y處的一個二進制象素,Y處的二進制象素稱為二進制象素Y。在相互模式中,在當前幀內,二進制象素組110中的二進制象素的上下文值C’0~C’3用于計算二進制象素Y的上下文值C’。
在圖1C中,示出了包含在當前幀(或VOP)的最相似前一幀(或VOP)內的BAB中的二進制象素組120,其中在相互模式中,上下文值C’4~C’8是前一幀(或VOP)中要考慮的計算上下文值C’的上下文值。假定前一幀內的BAB中的具有上下文值C’6的二進制象素對應于或匹配圖1B中的二進制象素Y。
現參考圖1B和1C,上下文值C’如公式(2)利用上下文值C’0-C’8來計算,其中C’k代表具有上下文值C’k的二進制象素的二進制值1或0。公式(2)C′=Σk=08(Ck′)2k]]>然后BAB內的每個二進制象素的概率值就基于如上求得的上下文值利用預定的概率表找到,來由此產生包括如1或0二進制值的每個BAB的重構的BAB。重構的BAB與原始的BAB作比較以提供一個分別包括例如1和0的第一和第二二進制值的誤差數據塊。在這種情況中,第一二進制值代表BAB中的二進制象素的值與重構的BAB中的位于同一位置的二進制象素的值不同。
接下來,利用傳統(tǒng)的編碼方法(如基于參考輪廓)(RCB)編碼方法)來編碼誤差數據塊以通過發(fā)送器將編碼的誤差數據塊耦合到解碼器。
此外,為了提高傳統(tǒng)CAE方法中的編碼效率,編碼多個模式信號以逐個基于BAB發(fā)送而不是對BAB的二進制象素的所有的編碼的上下文值進行發(fā)送。例如,根據一傳統(tǒng)的模式編碼方法中,一個相互/內部模式信號(它表示編碼器是處于相互模式還是內部模式)、一個模式信號(它表明BAB內的所有象素是背景象素還是目標象素)、和一個模式信號(它表明相互模式中的運動矢量為0)可被編碼以進行發(fā)送。解碼器根據編碼的上下文值、編碼的誤差數據塊和編碼的模式信號(如上所述的)盡量與原始BAB近似地生成重構的BAB。
但是,在如上所述的傳統(tǒng)的CAE方法中,因為存在大量的表示重構的BAB和原始的BAB間的差異的誤差數據,因此就不可避免地要分配相當大的數據位以編碼和發(fā)送BAB。并且上述的傳統(tǒng)模式編碼方法限制了BAB的編碼效率。
因此,本發(fā)明的一個主要目的是提供一種基于上下文的編碼二進制形狀信號的方法,它能進一步提高編碼效率。根據本發(fā)明提供了1、一種基于當前幀和包括多個BAB的前一幀的對當前幀中的M×N二進制象素的二進制字母塊進行編碼的方法,M,N分別為正偶數,其中每個二進制象素具有一個或者代表目標象素或者代表背景象素的二進制值,所述方法包括(a)從BAB的第一或第二水平行開始每隔一水平行取樣BAB的水平行,以產生(M/2)×N的二進制象素的第一個塊,其中,第一水平行是BAB的最上面的水平行;(b)從第一個塊的第一或第二垂直行開始每隔一行地取樣第一個塊的垂直行,以產生(M/2)×(N/2)的二進制象素的第一取樣塊作為一個底層,其中第一垂直行是第一個塊的最左邊的行;(c)若(N/2)×條第一取樣塊的垂直行位于步驟(b)取樣的垂直行處,則通過在步驟(b)中未被取樣的垂直行的位置處順序插入(N/2)數目的重構的垂直行來產生一個重構的(M/2)×N的二進制象素的第一個塊,重構的垂直行是基于第一取樣塊的垂直行產生的,重構的垂直行的稱為第一目的象素的每個二進制象素是通過利用相應的第一上下文值基于一預定的概率表而生成的,其中第一目的象素的相應的第一上下文值是通過8個二進制象素的上下文值計算出的,這8個象素包括位于前一幀中的第一目的象素同一位置處的一個二進制象素及位于重構的第一個塊內的第一目的象素的分別左上角、左邊、左下角、上方、右上角、右邊和右下角處的7個二進制象素;及(d)若重構的第一個塊的(M/2)數目的水平行位于步驟(a)中被取樣的水平行處,則通過在步驟(a)中未被取樣的水平行處順序插入(M/2)數目的重構的水平行來產生一稱之為第一重構的BAB的M×N的二進制象素的重構的BAB,重構的水平行基于重構的第一個塊的水平行產生,稱為第二目的象素的每個二進制象素基于預定的概率表根據相應的上下文值來產生,其中第二目的象素的相應的上下文值是通過8個象素的上下文值計算出的,這8個象素包括與位于前一幀中的第二目的象素同一位置處的一個二進制象素及位于重構的BAB內的第二目的象素的分別左上角、上方、右上角、左邊、左下角、下邊和右下角處的7個二進制象素。
本發(fā)明的上述及其它目的和特征將從下面的結合附圖的優(yōu)選實施例的說明中變得顯而易見,其中圖1A-1C表示的是標有他們的上下文值的二進制象素組來描述一種傳統(tǒng)的基于上下文的算述編碼(CAE)方法。
圖2A-2D表示的是標有他們的上下文值的二進制象素組來說明根據本發(fā)明的基于上下文的算述編碼(CAE)方法。
根據本發(fā)明,提供了一種利用基于上下文的算術編碼(CAE)方法的編碼二進制形狀信號的方法。在圖2A~2D中,顯示了標有他們的上下文值的二進制象素組,在描述根據本發(fā)明的優(yōu)選實施例的CAE方法中將用到它們。
下面,參考圖2A~2D,將說明基于當前幀和包括多個BAB的前一幀的對當前幀或視頻目標平面(VOP)內的M×N的二進制象素(例如16×16的二進制象素)的二進制字母塊(BAB)或原始BAB進行編碼的CAE方法,其中每個二進制象素具有一個表示目標象素或背景象素的二進制值,M、N分別為正偶數。
為編碼M×N的二進制象素的BAB,BAB首先被取樣或再取樣。即,在BAB的水平取樣過程中,從BAB的第一或第二水平行開始每隔一行地取樣BAB的水平行來生成(M/2)×N的二進制象素的第一個塊,其中第一水平行是BAB的最上面的水平行。然后,在第一個塊的垂直取樣過程中,從第一個塊的第一或第二垂直行開始每隔一行地取樣第一個塊的垂直行來生成(M/2)×(N/2)的二進制象素的第一取樣塊作為底層,其中第一垂直行是第一個塊的最左邊一行。利用傳統(tǒng)的CAE方法對底層編碼來產生編碼的底層。
詳細地說,在內部模式中,第一取樣塊即該底層是利用傳統(tǒng)的基于位圖的方法(例如CAE方法)來編碼以提供編碼的底層。而在相互模式中,第一取樣塊是基于前一幀內的相應的BAB以上述描述的產生當前幀內的第一取樣塊相同的方式獲取,然后前一幀內的第一取樣塊被存儲起來。之后,與當前幀內的第一取樣塊最相似的前一幀內的第一取樣塊被檢測出來作為預測的第一取樣塊,這是通過比較當前幀內的第一取樣塊與前一幀內的各第一取樣塊檢測出的。
然后,得到一由具有水平分量和垂直分量的二維矢量表示的運動矢量,其中該運動矢量表示當前幀內的第一取樣塊與前一幀內的預測第一取樣塊之間的位移。編碼該運動矢量以生成一編碼的運動矢量。表示當前幀內的第一取樣塊與預測的第一取樣塊之間的差異的誤差數被編碼,由此產生編碼的誤差數據。然后,編碼的運動矢量和編碼的誤差數據被組合來提供編碼的底層。
此外,基于編碼的誤差數據和預測的第一取樣塊得到當前幀內的重構的第一取樣塊,其中當前幀內的重構的第一取樣塊被存儲并用于下一幀的第一取樣塊的運動估計過程。
之后,將描述的BAB增強層編碼過程。首先,在內部模式中,利用傳統(tǒng)的重構方法(如利用傳統(tǒng)CAE方法的掃描內插(SI)技術)來得到重構的BAB。也就是,通過例如利用傳統(tǒng)的CAE方法的SI技術來生成重構的(M/2)×N的二進制象素的第一個塊。詳細地說,若第一取樣塊的(N/2)數目的垂直行位于垂直取樣過程中取樣的垂直行處則通過在第一個塊的垂直取樣過程中未被取樣的垂直行處順序插入(N/2)數目的重構的垂直行來生成重構的第一個塊,其中重構的垂直行是基于第一取樣塊的垂直行生成的,重構的垂直行的每個二進制象素是通過由傳統(tǒng)的CAE方法生成的相應的上下文值而獲得的。
于是,若重構的第一個塊的(M/2)數目的水平行位于在水平取樣過程中被取樣水平行處則通過在BAB的水平取樣過程中未被取樣的水平行處順序地插入(M/2)數目的重構的水平行來獲得重構的M×N的二進制象素的BAB,其中重構的水平行是基于重構的第一個塊的水平行生成的,重構的水平行的各二進制象素是通過由傳統(tǒng)的CAE方法生成的相應的上下文值而得到。
同時,在相互模式中,重構的BAB是通過利用根據本發(fā)明的一個優(yōu)選實施例中的重構方法而得到的。詳細地講,若第一取樣塊的(N/2)數目的垂直行位于垂直取樣過程中被取樣的垂直行處則通過在第一個塊的垂直取樣過程中未被取樣的垂直行處順序插入重構的(N/2)數目的垂直行而得到重構的第一個塊,其中重構的垂直行是基于第一取樣塊的垂直行生成的,重構的垂直行的每個二進制象素是通過根據本發(fā)明的CAE方法所生成的相應的上下文值而得到的。
那么,若重構的第一個塊的(M/2)數目的水平行位于水平取樣過程中被取樣的水平行處則在BAB的水平取樣過程中未被取樣的水平行處順序插入重構的(M/2)數目的水平行來得到重構的M×N的二進制象素的BAB,其中重構的水平行是基于重構的第一個塊的各水平行產生的,重構的各水平行的每個二進制象素是通過根據本發(fā)明的CAE方法所生成的相應的上下文值來得到的。
下面將詳細描述根據本發(fā)明的優(yōu)選實施例的CAE方法。此后,重構的垂直行的每個二進制象素都將稱為第一目的象素,相似地,重構的水平行的每個二進制象素都被稱為第二目的象素。為簡化起見,后面假定上述采樣的水平行和垂直行都為偶數號行。
參見圖2A和2B,示出了二進制象素組200和205,其中二進制象素200和205中的未劃線的區(qū)域分別代表當前幀和前一幀內的重構的第一個塊的二進制象素組;二進制象素組200中的劃線區(qū)域代表將被重構為重構的水平行的象素的二進制象素組,二進制象素組205中的劃線區(qū)域代表已被重構為前一幀內的重構的水平行的象素的二進制象素組。
在圖2A中,示出了第一目的象素A,代表位于重構的第一個塊內的第一目的象素A的左上方、左邊、左下方、上邊和右上方、右邊、右下方的V0~V3和V5~V7也示于其中。這些上下文值是已知的。但第一目的象素A下方的二進制象素的上下文值是未知的,因此空著。
稱之為第一上下文值V的第一目的象素A的上下文值是根據下述公式(3)利用上下文值V0~V3和V5~V7及位于前一幀(或VOP)中的第一目的象素A的同一位置處的二進制象素的上下文值(稱為A4,如圖2B所示)計算出來的。公式(3)V=Σk=07(Vk)2k]]>在公式(3)中,Vk代表具有上下文值Vk的二進制象素的二進制值1或0。當沒有其上下文值為Vk的二進制象素時,Vk設為0。根據公式(3)求得的第一上下文值V可能具有0~255范圍內的個值。用這種方法,重構的垂直行上的二進制值未知的所有二進制象素的上下文值都求出來。然后在一預定義的概率表內查找求得的上下文值,生成重構的第一塊。
在上述的本發(fā)明的優(yōu)選實施例中,k代表計算第一目的象素A的第一上下文值中用到的8個上下文值中的上下文值Vk的順序。它的順序為左垂直行和上水平行在先。這也可替換為例如稱為光柵掃描順序的順序,這時預定的概率表也要相應地改變。
參見圖2C和2D,分別示出了當前幀和前一幀內的二進制象素組210和215。在圖2C中,示出了第二目的象素B,也示出了分別代表位于第二目的象素B的左上方、上方、右上方、左邊和左下方、下方和右下方的二進制象素的上下文值的V’0~V’3和V’5~V’7。這些上下文值是已知的。但第二目的象素B的右邊的二進制象素的上下文值是未知的,因此空著。
稱之為第二上下文值的第二目的象素B的上下文值是根據下邊的公式(4)通過上下文值V’0~V’3和V’5~V’7及位于前一幀內(或VOP)的第二目的象素B的同一位置的二進制象素的上下文值(稱之為V’4,如圖2D所示)計算的;公式(4)V′=Σk=07(Vk′)2k]]>在公式(4)中,V’k代表其上下文值為V’k的二進制象素的二進制值1或0。當沒有其上下文值為Vk’聽二進制象素時,V’k設為0。根據公式(4)求得的第二上下文值V’可以具有0~255范圍內的一個值。用這種方法,重構的水平行上的其二進制值未知的所有二進制象素的上下文值均可求得。然后在預定的概率表中查找求得的上下文值生成重構的BAB。
在本發(fā)明的上述優(yōu)選實施例中,k代表計算第二目的象素B的第二上下文值中用到的8個上下文值V’k的順序,它遵從光柵掃描順序。這可改變?yōu)槔缟线吽叫泻妥筮叴怪毙性谙鹊捻樞?。這時預定的概率表要相應地改變。因此應當注意,預定的概率表上的上下文值的記錄的順序在預定的概率表是根據該順序而準備的條件下可以改變。
在相互模式中,根據本發(fā)明的CAE方法得到的重構的BAB(本發(fā)明的方法可稱之為一種內插方法)與傳統(tǒng)的方法相比能減小重構的BAB與原始的BAB之間的誤差。根據本發(fā)明的內插方法得到的重構的BAB以后將被之為第一重構的BAB。
然而,在相互模式的某些情況中,利用插入而不是內插的方法的本發(fā)明的CAE方法將更能減小重構的BAB與原始的BAB之間的誤差。因此,根據本發(fā)明的優(yōu)選實施例,選擇插入和內插方法中更好的一種來提高編碼效率。
例如,在相互模式中,通過下面說明的插入方法可得到M×N的二進制象素的重構的BAB。詳細地講,首先,從前一幀(或VOP)內的各相應的(M/2)×N的二進制象素的第一個塊中減去前一幀(或VOP)內的(M/2)×(N/2)的二進制象素的第二取樣塊。從前一幀(或VOP)內的各相應的BAB中減去前一幀(或VOP)內的各相應的第一個塊來產生并存儲前一幀(或VOP)內的(M/2)×N的二進制象素的第二個塊。
通過從基于當前幀(或VOP)中的BAB或原始的BAB得到的(M/2)×N的二進制象素的第一個塊中減去(M/2)×(N/2)的二進制象素的第一取樣塊得到當前幀內的(M/2)×(N/2)的二進制象素的第二取樣塊。然后,基于運動矢量,在前一幀內的各第二取樣塊中找出與當前幀內的第二取樣塊最相似的一個第二取樣塊作為預測的第二取樣塊。
若當前幀內的第一取樣塊的垂直行位于其偶數號垂直行,則將預測的第二取樣塊的垂直行順序放到或插入到其奇數號垂直行。結果,通過插入方法就生成了當前幀內的(M/2)×N的二進制象素的重構的第一個塊。
之后,在相互模式中,通過從M×N的二進制象素的BAB中減去(M/2)×N的二進制象素的第一個塊可得到當前幀(或VOP)內的(M/2)×N的二進制象素的第二個塊。然后,基于運動矢量,在前一幀內的各第二個塊中找到與當前幀內的第二個塊最相似的一個第二個塊作為預測的第二個塊。若當前幀內的BAB的水平行位于其偶數號水平行則將預測的第二個塊的水平行順序地放到或插入其奇數號行。結果,通過插入方法就生成了M×N的二進制象素的重構的BAB,它將被稱為第二重構的BAB。
根據本發(fā)明的優(yōu)選實施例,分別對第一和第二重構的BAB進行編碼來分別產生編碼的第一和第二重構的BAB,然后分別計算編碼的第一和第二數據位數。并將二者進行比較。
若第一數據位數等于或小于第二數據位數,選擇第一重構的BAB和編碼的第一重構的BAB作為選擇的重構的BAB和選擇的編碼的重構的BAB。否則,即第一數據位數大于第二數據位數,則分別選擇第二重構的BAB和編碼的第二重構的BAB作為選擇的重構的BAB和選擇的編碼的重構的BAB。
然后編碼代表當前幀內的BAB二進制象素原始的BAB與選擇的重構的BAB之間的差異的誤差數據,由此來利用傳統(tǒng)的誤差數據塊編碼方法(例如基于參考輪廓的編碼(RCB)方法)生成編碼的誤差數據塊。
同時,在相互模式中,與第一和第二重構的BAB和誤差數據塊的編碼相關地生成模式信號,其中該模式信號代表以下四種模式之一。即,四種模式信號中的每一個是代表下述四種模式之一的模式信號(1)第一模式,表明第一重構的BAB被選擇為選擇的重構的BAB;在選擇的重構的BAB和原始的BAB之間沒有誤差,因此不必要對選擇的重構的BAB作編碼;所以選擇的重構的BAB未作編碼;(2)第二模式,表示第一重構的BAB被選擇為選擇的重構的BAB;在選擇的重構的BAB和原始的BAB之間存在一些誤差,由此使得必需編碼選擇的重構的BAB;因此選擇的重構的BAB已被編碼;(3)第三模式,表明第二重構的BAB被選擇為選擇的重構的BAB;在選擇的重構的BAB和原始的BAB之間不存在誤差,不需要對選擇的重構的BAB編碼;因此選擇的重構的BAB未被編碼;(4)第四模式,表示第二重構的BAB被選擇為選擇的重構的BAB;在選擇的重構的BAB和原始的BAB之間存在一些誤差,因此需要對選擇的重構的BAB編碼;所以已對選擇的重構的BAB編碼。
然后,模式信號被編碼以產生編碼的模式信號。然后,與上述四種模式之一相關的編碼的模式信號、選擇的編碼的重構的BAB、及編碼的誤差數據塊被合成來產生編碼的增強層。
根據本發(fā)明,增強層編碼效率可以通過在CAE方法中使用改進的上下文值和恰當地在編碼二進制形狀信號(例如BAB)中組合模式信號來提高。
雖然僅關于特定的優(yōu)選的實施例對本發(fā)明進行了描述,但在不脫離后面的權利要求中所限定的本發(fā)明的精神和范圍的情況下可以做出各種修改和變化。
權利要求
1.一種基于當前幀和包括多個BAB的前一幀的對當前幀中的M×N二進制象素的二進制字母塊進行編碼的方法,M,N分別為正偶數,其中每個二進制象素具有一個或者代表目標象素或者代表背景象素的二進制值,所述方法包括(a)從BAB的第一或第二水平行開始每隔一水平行取樣BAB的水平行,以產生(M/2)×N的二進制象素的第一個塊,其中,第一水平行是BAB的最上面的水平行;(b)從第一個塊的第一或第二垂直行開始每隔一行地取樣第一個塊的垂直行,以產生(M/2)×(N/2)的二進制象素的第一取樣塊作為一個底層,其中第一垂直行是第一個塊的最左邊的行;(c)若(N/2)條第一取樣塊的垂直行位于步驟(b)取樣的垂直行處,則通過在步驟(b)中未被取樣的垂直行的位置處順序插入(N/2)數目的重構的垂直行來產生一個重構的(M/2)×N的二進制象素的第一個塊,重構的垂直行是基于第一取樣塊的垂直行產生的,重構的垂直行的稱為第一目的象素的每個二進制象素是通過利用相應的第一上下文值基于一預定的概率表而生成的,其中第一目的象素的相應的第一上下文值是通過8個二進制象素的上下文值計算出的,這8個象素包括位于前一幀中的第一目的象素同一位置處的一個二進制象素及位于重構的第一個塊內的第一目的象素的分別左上角、左邊、左下角、上方、右上角、右邊和右下角處的7個二進制象素;及(d)若重構的第一個塊的(M/2)數目的水平行位于步驟(a)中被取樣的水平行處,則通過在步驟(a)中未被取樣的水平行處順序插入(M/2)數目的重構的水平行來產生一稱之為第一重構的BAB的M×N的二進制象素的重構的BAB,重構的水平行基于重構的第一個塊的水平行產生,稱為第二目的象素的每個二進制象素基于預定的概率表根據相應的上下文值來產生,其中第二目的象素的相應的上下文值是通過8個象素的上下文值計算出的,這8個象素包括與位于前一幀中的第二目的象素同一位置處的一個二進制象素及位于重構的BAB內的第二目的象素的分別左上角、上方、右上角、左邊、左下角、下邊和右下角處的7個二進制象素。
2.根據權利要求1的方法,其中步驟(a)取樣BAB的偶數號水平行來生成該第一個塊,步驟(b)取樣第一個塊的偶數號的水平行來生成第一取樣塊。
3.根據權利要求2的方法,其中當前幀和前一幀分別由當前視頻目標平臺(VOP)和前一VOP替換。
4.根據權利要求2的方法,其中在步驟(C)中,稱為V的第一相應上下文值根據下面的公式(1)利用所述的8個二進制象素的上下文值V0~V7來計算公式(1)V=Σk=07(Vk)2k]]>其中Vk代表具有上下文值Vk的二進制象的一二進制值0或1,當沒有具有上下文值Vk的二進制象素時,Vk設為0。
5.根據權利要求4的方法,其中在步驟(d)中,稱為V’的第二相應上下文值是根據下面的公式(2)利用所述的8個二進制象素的上下文值V’0~V’7來計算公式(2)V′=Σk=07(Vk′)2k]]>其中V’k代表具有上下文值V’k的二進制象素的二進制值,當沒有具有上下文值V’k的二進制象素時,V’k設置為0。
6.根據權利要求5的方法,還包括在步驟(d)后的以下步驟(e)在內部模式,利用基于位圖的編碼方法編碼第一取樣塊來產生編碼的底層;及(f)在相互模式,基于前一幀內的相應BAB,以步驟(a)和(b)中描述的生成當前幀內的第一取樣塊的相同的方式獲得第一取樣塊,然后存儲前一幀內的第一取樣塊;比較當前幀內的第一取樣塊和前一幀內的第一取樣塊來檢測前一幀內的與當前幀內的第一取樣塊最相似的第一取樣塊作為預測的第一取樣塊;得到一由具有水平和垂直分量的二維矢量表示的運動矢量,它表示當前幀內的第一取樣塊與預測的第一取樣塊間的位移;編碼該運動矢量來生成一編碼的運動矢量;編碼表示當前幀內的第一取樣塊與預測的第一取樣塊之間的差異的誤差數據來產生編碼的誤差數據;及組合編碼的運動矢量及編碼的誤差數據來提供編碼的底層數據。
7.根據權利要求6的方法,在步驟(f)之后,在相互模式中還包括以下的步驟(g)從前一幀內的每個(M/2)×N的二進制象素的相應第一個塊中減去前一幀內的每個(M/2)×(N/2)的二進制象素的第二取樣塊,從前一幀內的每個相應的BAB中減去前一幀內的每個相應的第一個塊來生成并存儲前一幀內的(M/2)×N的二進制象素的第二個塊;(h)從當前幀內的(M/2)×N的二進制象素的第一個塊中減去當前幀內的(M/2)×(N/2)的二進制象素的第一取樣塊來生成當前幀內的(M/2)×(N/2)的二進制象素的第二取樣塊;(i)基于運動矢量在前一幀內的各第二取樣塊中找出與當前幀內的第二取樣塊最相似的一個第二取樣塊作為預測的第二取樣塊;(j)若當前幀內的第一取樣塊的垂直行位于偶數號的垂直行則將預測的第二取樣塊的垂直行順序地放于其奇數號行處作為奇數號的垂直行;(k)從當前幀內的M×N的二進制象素的BAB中減去當前幀內的(M/2)×N的二進制象素的第一個塊來生成當前幀內的(M/2)×N的二進制象素的第二個塊;(l)基于運動矢量在前一幀內的各第二個塊中找出與當前幀內的第二個塊最相似的一個第二個塊作為預測的第二個塊;及(m)若當前幀內的第一個塊的水平行位于偶數號水平行則通過將預測的第二個塊的水平行順序地放于奇數號行處作為其奇數號行來生成稱為第二重構的BAB的重構的M×N的二進制象素的BAB。
8.根據權利要求7的方法,在相互模式中,在(m)步之后還包括以下的步驟(n)分別地編碼第二和第二重構的BAB來生成第一和第二編碼的重構BAB;(o)分別計算第一和第二編碼的重構的BAB的第一和第二數據位數;(p)比較第一和第二數據位數,若第一數據位數小于或等于第二數據位數則選擇第一重構的BAB和第一編碼的重構的BAB分別作為選擇的重構的BAB和選擇的編碼的重構的BAB;若第一數據位數大于第二數據位數則選擇第二重構的BAB和第二編碼的重構的BAB分別作為選擇的重構的BAB和選擇的編碼的重構的BAB;及(q)編碼表示稱為原始BAB的當前幀內的BAB與選擇的重構的BAB之間的差異的誤差數據塊來產生一編碼的誤差數據塊。
9.根據權利要求8的方法,在相互模式中,在步驟(q)之后還包括下面一步驟(r)產生模式信號,每個模式信號是代表以下四種模式之一的一個模式信號(1)第一模式,表明第一重構的BAB被選擇為選擇的重構的BAB;在選擇的重構的BAB和原始的BAB之間沒有誤差,因此不必要對選擇的重構的BAB作編碼;所以選擇的重構的BAB未作編碼;(2)第二模式,表示第一重構的BAB被選擇為選擇的重構的BAB;在選擇的重構的BAB和原始的BAB之間存在一些誤差,由此使得必需編碼選擇的重構的BAB;因此選擇的重構的BAB已被編碼;(3)第三模式,表明第二重構的BAB被選擇為選擇的重構的BAB;在選擇的重構的BAB和原始的BAB之間不存在誤差,不需要對選擇的重構的BAB編碼;因此選擇的重構的BAB未被編碼;(4)第四模式,表示第二重構的BAB被選擇為選擇的重構的BAB;在選擇的重構的BAB和原始的BAB之間存在一些誤差,因此需要對選擇的重構的BAB編碼;所以已對選擇的重構的BAB編碼。
10.根據權利要求9的方法,在相互模式中,在步驟(r)之后還包括以下的一步(s)編碼模式信號來產生編碼的模式信號;及(t)組合與四種模式之一有關的編碼的模式信號、選擇的編碼的重構的BAB和編碼的誤差信號塊來提供一編碼的增強層。
11.根據權利要求10的方法,其中M和N均為16。
全文摘要
一種基于當前幀和前一幀對當前幀內的一二進制字母塊(BAB)編碼的方法。BAB的偶數號水平行被取樣來生成第一個塊,第一塊的偶數號垂直行再被取樣生成第一取樣塊。然后,通過分別在奇數號垂直行和水平行處順序插入重構的垂直行和水平行來生成重構的第一個塊和重構的BAB。上述過程中,重構的垂直和水平行的第一和第二二進制象素的二進制值分別基于預定的概率表利用相應的第一和第二上下文值得到。
文檔編號H04N7/26GK1210429SQ9711704
公開日1999年3月10日 申請日期1997年10月7日 優(yōu)先權日1997年8月30日
發(fā)明者韓錫源 申請人:大宇電子株式會社
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1