專利名稱:視頻圖像編解碼中的二進制化的方法和裝置的制作方法
技術領域:
本發(fā)明涉及視頻圖像編解碼技術領域,尤其涉及一種視頻圖像編解碼中的二進制化的方法和裝置。
背景技術:
視頻和圖像編碼技術是數(shù)字視頻和圖像這一重要多媒體信息得以被廣泛應用的基礎和關鍵。當前基于塊的視頻編碼混合框架下,視頻編碼一般包括以下四大塊預測編碼、變換編碼以及量化、環(huán)路濾波、熵編碼。其中熵編碼是為了去除信息的統(tǒng)計冗余,在整個視頻編碼框架中起著重要的作用。在JPEG、H. 264/AVC, AVS以及下一代國際視頻編碼標準HEVC等視頻圖像編碼標準中的熵編碼,都含有對語法元素的二進制化過程。在這些標準中,都是對語法元素是直接進行二進制化的,且對有些語法元素的二進制化并沒用完全考慮到語法元素的分布,比如 H. 264/AVC中的宏塊類型(mb_type)等語法元素。這種二進制化的方法會導致低概率值對應到很短的bin串,而高概率值對應到很長的bin串,一定程度上影響了熵編碼的效率和編碼復雜度。
發(fā)明內容
本發(fā)明的目的在于針對現(xiàn)有技術的不足,提供一種語法元素的二進制化方法和裝置。本發(fā)明的目的是通過以下技術方案來實現(xiàn)的一種語法元素的二進制化的方法, 包括以下步驟
(1)將語法元素A的值、映射到一個新的變量V的值Vi,i= 0,1,2,…,M,M為自然數(shù),代表語法元素A所有取值的個數(shù);所述的映射是一個一一映射,對于i=0,1,2,…,M,Vi 由小到大排列,那么Vi對應的%就不是由小到大的順序;
(2)對變量V的值Vi進行二元化得到長度為Li的bin串,i= 0,1,2,…,M ;變量V的值與bin串之間的關系為以下之一
(a)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;
(b)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡L」。進一步地,在步驟(1)之前還可以包括統(tǒng)計語法元素A的概率分布的步驟和根據(jù)統(tǒng)計得到的所述概率分布建立語法元素A的值與變量V的值之間的所述的一一映射關系的步驟。一種語法元素的二進制化的方法,包括在于以下步驟
(1)根據(jù)從碼流中解析出來的長度為Li的bin串,將所述的bin串反二元化得到變量V 的值Vi,其中i = 0,1,2,…,M,M為自然數(shù),代表變量V所有取值的個數(shù);變量V的值與bin 串之間的關系為以下之一
(a)對于任意的i,j=0, 1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;(b)對于任意的I,j=0, 1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ; (2)將變量V的Vi值映射到語法元素A的值 ,i = 0,1,2,…,M,所述的映射是一一映射,對于i=0,1,2,…,M,Vi由小到大排列,那么Vi對應的 就不是由小到大的順序。進一步地,在步驟(2)之前還可以包括統(tǒng)計語法元素A的概率分布的步驟和根據(jù)統(tǒng)計得到的所述概率分布建立變量V的值與語法元素A的值之間的所述的一一映射關系的步驟。一種語法元素的二進制化的裝置,它主要由一一映射單元和二元化單元相連組成其中,所述一一映射單元將語法元素A的值 ,映射到一個新的變量V的值Vi,i = 0,1,2,…,M,M為自然數(shù),代表語法元素A所有取值的個數(shù);所述的映射是一一映射,對于 i=0, 1,2,···,Μ,Vi由小到大排列,那么Vi對應的 就不是由小到大的順序;所述二元化單元的輸入連接一一映射單元,將變量V的值Vi進行二元化得到長度為Li的bin串,i = 0,1,2,...,M ;變量V的值與bin串之間的關系為以下之一
(a)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;
(b)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡L」。進一步地,還包括統(tǒng)計單元和建立一一映射關系單元,所述統(tǒng)計單元通過建立一一映射關系單元與一一映射單元相連;其中,所述統(tǒng)計單元統(tǒng)計語法元素A的概率分布; 所述建立一一映射關系單元根據(jù)所述語法元素A的概率分布,建立語法元素A的值與變量 V的值之間的一一映射關系。一種語法元素的二進制化的裝置,它主要由反二元化單元和一一映射單元相連組成;其中,所述反二元化單元將從碼流中解析出來的長度為Li的bin串,將其反二進制化得到變量V的值Vi,其中i = 0,1,2,…,M,M為自然數(shù),代表變量V所有取值的個數(shù);變量V的值與bin串之間的關系為以下之一
(a)對于任意的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;
(b)對于任意的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;
所述一一映射單元的輸入連接反二元化單元,將變量V的Vi值映射到語法元素A的值 ai i = 0,1,2,…,M,對于i=0,1,2,…,M,Vi由小到大排列,那么Vi對應的 就不是由小到大的順序。進一步地,還包括統(tǒng)計單元和建立一一映射關系單元,所述統(tǒng)計單元通過建立一一映射關系單元與一一映射單元相連其中,所述統(tǒng)計單元統(tǒng)計語法元素A的概率分布; 所述建立一一映射關系單元根據(jù)所述的概率分布建立變量V的值與語法元素A的值之間的
一一映射關系。本發(fā)明的有益效果是本發(fā)明不直接對語法元素進行二進制化,而是先通過一個一一映射將語法元素的值映射到一個新的變量的值,然后對這個新的變量的值進行二元化。這樣通過一一映射和二元化兩個步驟來完成二進制化的過程,可以使得高概率的變量的值對應的bin串不會長于低概率的變量的值對應的bin串長度,提高編碼效率和降低編碼復雜度。
為了清楚地說明本發(fā)明實施例中的技術方案,下面將對實施例中所需要使用的附
5圖作簡單地介紹。下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是本發(fā)明實施實例5的語法元素的二進制化方法在視頻或圖像編碼過程中的裝置圖2是本發(fā)明實施實例6的語法元素的二進制化方法在視頻或圖像編碼過程中的裝置
圖3是本發(fā)明實施實例7的語法元素的二進制化方法在視頻或圖像解碼過程中的裝置
圖4是本發(fā)明實施實例8的語法元素的二進制化方法在視頻或圖像解碼過程中的裝置圖。
具體實施例方式本發(fā)明的主要原理是將較大概率的語法元素的值二進制化為較短的bin串。本發(fā)明關于語法元素的二進制化的方法,包括以下步驟 步驟1,將語法元素A的值一一映射到一個新的變量V的值。一般地,語法元素A的各個值的概率并不是隨著A的增加而單調變化的,比如 H. 264/AVC中宏塊類型、AVS、H. ^4/AVC中的幀內預測模式等語法元素。該映射可以根據(jù)語法元素A的概率分布,按照概率的大小順序進行映射,比如較大概率的A的值映射到較小的 V的值,或者較大概率的A的值映射到較大的V的值,保證映射后的V的各個值對應的語法元素A的值的概率是隨著V的增加而單調變化的。步驟2,對變量V的各個值進行二元化,得到相應的bin串;
二元化可以使用各種二元碼,例如Huffman碼、一元碼、一元截斷碼、指數(shù)哥倫布碼和可配置變長碼(configurable variable length code)等,或不同二元碼的組合。對變量V 的值V1進行二元化得到長度為Li的bin串,i = 0,1,2,…,M,M是自然數(shù),代表變量V有M 個取值。其特征在于以下之一
(1)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;
(2)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡L」。進一步,在步驟1之前還可以包括以下附屬步驟
附屬步驟1,語法元素A的概率統(tǒng)計,通過在編碼過程中對前面已經(jīng)編碼過的語法元素 A信息進行統(tǒng)計得到,比如可以每編碼100個宏塊(Macroblock,見H. 264/AVC標準中的定義)后統(tǒng)計一次,或者編碼一幀圖像后統(tǒng)計一次等等。附屬步驟2,根據(jù)語法元素A的概率部分,建立語法元素A和變量V之間的一一映射關系,具體步驟如下
附屬步驟2. 1,將語法元素A的各個值按照其概率分布進行排序,大概率的值排在前面,小概率的值排在后面;如果出現(xiàn)語法元素A的多個值的概率相同,則在這些值中,按照語法元素A的值大小進行排序,越小的語法元素A的值排在前面,越大的語法元素A的值排在后面;
附屬步驟2. 2,對排序后的語法元素A的各個值從前到后標號,標號從0開始,到M結束,標號即是V的值,從而建立語法元素A與V之間的一一映射關系,用來指導上述步驟1中的語法元素A到變量V的映射過程。該方法一般用于視頻或圖像編碼過程中。本發(fā)明關于語法元素的二進制化的方法,包括以下步驟 步驟1,將從碼流中解析出來的bin串,反二元化得到變量V的值;
反二元化中從碼流解析出來的bin串可以是各種二元碼,例如Huffman碼、一元碼、一元截斷碼、指數(shù)哥倫布碼和可配置變長碼(configurable variable length code)等,或不同二元碼的組合。將長度為Li Wbin串反二元化得到變量V的值Vi,i =0,1,2,···,Μ,M 是自然數(shù),代表變量V有M個取值。其特征在于以下之一
(1)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;
(2)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡L」。步驟2,將變量V的值一一映射到語法元素A的值;
一般地,語法元素A的各個值的概率并不是隨著A的增加而單調變化的,比如H. 264/ AVC中宏塊類型、AVS、H. 264/AVC中的幀內預測模式等語法元素。該映射可以根據(jù)語法元素A的概率分布,按照概率的大小順序進行映射,比如較小的V的值映射到較大概率的A的值,或者較大的V的值映射到較大概率的A的值,保證映射后的V的各個值對應的語法元素 A的值的概率是隨著V的增加而單調變化的。進一步,在步驟2之前還可以包括以下附屬步驟
附屬步驟1,語法元素A的概率統(tǒng)計,通過在編碼過程中對前面已經(jīng)編碼過的語法元素 A信息進行統(tǒng)計得到,比如可以每編碼100個宏塊(Macroblock,見H. 264/AVC標準中的定義)后統(tǒng)計一次,或者編碼一幀圖像后統(tǒng)計一次等等。附屬步驟2,根據(jù)語法元素A的概率部分,建立語法元素A和變量V之間的一一映射關系,具體步驟如下
附屬步驟2. 1,將語法元素A的各個值按照其概率分布進行排序,大概率的值排在前面,小概率的值排在后面;如果出現(xiàn)語法元素A的多個值的概率相同,則在這些值中,按照語法元素A的值大小進行排序,越小的語法元素A的值排在前面,越大的語法元素A的值排在后面;
附屬步驟2. 2,對排序后的語法元素A的各個值從前到后標號,標號從0開始,到M結束,標號即是V的值,從而建立變量V與語法元素A之間的一一映射關系,用來指導上述步驟2中的變量V到語法元素A到的一一映射過程。該方法一般用于視頻或圖像解碼過程,或者視頻或圖像編碼過程的解碼部分。本發(fā)明關于語法元素的二進制化的裝置,包括一一映射單元和與一一映射單元相連的二元化單元。一一映射單元將語法元素A的值一一映射到一個新的變量V的值。一般地,語法元素A的各個值的概率并不是隨著A的增加而單調變化的,比如 H. 264/AVC中宏塊類型、AVS、H. ^4/AVC中的幀內預測模式等語法元素。該映射可以根據(jù)語法元素A的概率分布,按照概率的大小順序進行映射,比如較大概率的A的值映射到較小的 V的值,或者較大概率的A的值映射到較大的V的值,保證映射后的V的各個值對應的語法元素A的值的概率是隨著V的增加而單調變化的。二元化單元對一一映射單元的輸出結果V的值進行二元化,得到相應的bin串;二元化可以使用各種二元碼,例如Huffman碼、一元碼、一元截斷碼、指數(shù)哥倫布碼和可配置變長碼(configurable variable length code)等,或不同二元碼的組合。對變量V 的值V1進行二元化得到長度為Li的bin串,i = 0,1,2,…,M,M是自然數(shù),代表變量V有M 個取值。其特征在于以下之一
(1)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;
(2)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡L」。進一步,還包括以下兩個單元
統(tǒng)計單元,用來統(tǒng)計語法元素A的概率分布。建立一一映射關系單元根據(jù)統(tǒng)計單元得到的語法元素A的概率分布,建立語法元素A與變量V之間的一一映射關系,用于指導上述一一映射單元中的一一映射過程。該裝置一般用于視頻或圖像編碼過程。本發(fā)明關于語法元素的二進制化的裝置,也可以包括反二元化單元和與反二元化單元相連的一一映射單元
反二元化單元將從碼流中解析出來的bin串,反二進制化得到變量V的值; 反二元化中從碼流解析出來的bin串可以是各種二元碼,例如Huffman碼、一元碼、一元截斷碼、指數(shù)哥倫布碼和可配置變長碼(configurable variable length code)等,或不同二元碼的組合。將長度為Li Wbin串反二元化得到變量V的值Vi,i =0,1,2,···,Μ,M 是自然數(shù),代表變量V有M個取值。其特征在于以下之一
(1)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;
(2)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡L」。一一映射單元將反二進制單元的輸出結果V的值一一映射到語法元素A的值。—般地,語法元素A的各個值的概率并不是隨著A的增加而單調變化的,比如 H. 264/AVC中宏塊類型、AVS、H. ^4/AVC中的幀內預測模式等語法元素。該映射可以根據(jù)語法元素A的概率分布,按照概率的大小順序進行映射,比如較小的V的值映射到較大概率的 A的值,或者較大的V的值映射到較大概率的A的值,保證映射后的V的各個值對應的語法元素A的值的概率是隨著V的增加而單調變化的。進一步,還包括以下兩個單元
統(tǒng)計單元,用來統(tǒng)計語法元素A的概率分布。建立一一映射關系單元根據(jù)統(tǒng)計單元得到的語法元素A的概率分布,建立變量V 與語法元素A之間的一一映射關系,用于指導上述一一映射單元中的一一映射過程。該裝置一般用于視頻或圖像解碼過程,或者是視頻或圖像編碼過程中的解碼部分。為了使本發(fā)明的技術方案和優(yōu)點更加清楚,下面將結合附圖對本發(fā)明做進一步詳細的描述。顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。實施例1
以H. 264/AVC中I slice的mb_type為例,說明本發(fā)明關于語法元素的二進制化方法在視頻或者圖像編碼過程中的實現(xiàn)方法。此處我們采用深度圖像/序列(以下簡稱d印th)
8作為編碼對象。D印th與普通的彩色圖像/序列(以下簡稱color)都可以采用傳統(tǒng)的視頻編碼標準如H. 264/AVC的參考軟件進行編解碼,由于depth不含有色度分量,故可以將mb_ type中的與色度分量有關的值(mb_type值為5 12,17 24)去掉,這樣語法元素mb_type的只剩下10個不同的值。下面對cbpth中的I slice的mb_type的10個值進行二進制化, 具體實施步驟如下
步驟1,將mb_type的10個值(0,1,2,3,4,13,14,15,16,25)映射到一個新的變量V的值。映射結果如表1所示,將亂序的mb_type的值映射到順序排列的V的值。表1所示的這張映射表是在標準中規(guī)定的,對于不同的語法元素,映射表可能不同。而這張表的具體設計原理可以根據(jù)語法元素的概率分布,對語法元素的值進行排序。
表1 :mb_type到V的——映射結果
權利要求
1.一種語法元素的二進制化的方法,其特征在于,包括以下步驟(1)將語法元素A的值、映射到一個新的變量V的值Vi,i= 0,1,2,…,M,M為自然數(shù),代表語法元素A所有取值的個數(shù);所述的映射是一個一一映射,對于i=0,1,2,…,M,Vi 由小到大排列,那么Vi對應的%就不是由小到大的順序;(2)對變量V的值Vi進行二元化得到長度為Li的bin串,i= 0,1,2,…,M ;變量V的值與bin串之間的關系為以下之一(a)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;(b)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡L」。
2.如權利要求1所述的語法元素的二進制化的方法,其特征在于,在步驟(1)之前還可以包括統(tǒng)計語法元素A的概率分布的步驟和根據(jù)統(tǒng)計得到的所述概率分布建立語法元素 A的值與變量V的值之間的所述的一一映射關系的步驟。
3.—種語法元素的二進制化的方法,其特征在于,包括在于以下步驟(1)根據(jù)從碼流中解析出來的長度為Li的bin串,將所述的bin串反二元化得到變量V 的值Vi,其中i = 0,1,2,…,M,M為自然數(shù),代表變量V所有取值的個數(shù);變量V的值與bin 串之間的關系為以下之一(a)對于任意的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;(b)對于任意的I,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;(2)將變量V的Vi值映射到語法元素A的值 ,i= 0,1,2,…,M,所述的映射是一一映射,對于i=0,1,2,…,M,Vi由小到大排列,那么Vi對應的 就不是由小到大的順序。
4.如上述權利要求3所述語法元素的二進制化的方法,其特征在于,在步驟(2)之前還可以包括統(tǒng)計語法元素A的概率分布的步驟和根據(jù)統(tǒng)計得到的所述概率分布建立變量V的值與語法元素A的值之間的所述的一一映射關系的步驟。
5.一種語法元素的二進制化的裝置,其特征在于,它主要由一一映射單元和二元化單元相連組成其中,所述一一映射單元將語法元素A的值 ,映射到一個新的變量V的值 Vi, i = 0, 1, 2,…,M,M為自然數(shù),代表語法元素A所有取值的個數(shù);所述的映射是一一映射,對于i=0,1,2,…,M,Vi由小到大排列,那么Vi對應的 就不是由小到大的順序;所述二元化單元的輸入連接一一映射單元,將變量V的值Vi進行二元化得到長度為Li的bin串, i = 0,1,2,…,M ;變量V的值與bin串之間的關系為以下之一(a)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;(b)對于所有的i,j=0,1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡L」。
6.如權利要求5所述視頻圖像編碼語法元素的二進制化的裝置,其特征在于,還包括統(tǒng)計單元和建立一一映射關系單元,所述統(tǒng)計單元通過建立一一映射關系單元與一一映射單元相連;其中,所述統(tǒng)計單元統(tǒng)計語法元素A的概率分布;所述建立一一映射關系單元根據(jù)所述語法元素A的概率分布,建立語法元素A的值與變量V的值之間的一一映射關系。
7.—種語法元素的二進制化的裝置,其特征在于,它主要由反二元化單元和一一映射單元相連組成;其中,所述反二元化單元將從碼流中解析出來的長度為Li的bin串,將其反二進制化得到變量V的值Vi,其中i = 0,1,2,…,M,M為自然數(shù),代表變量V所有取值的個數(shù);變量V的值與bin串之間的關系為以下之一(a)對于任意的i,j=0, 1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ;(b)對于任意的i,j=0, 1,2,…,M,i乒j,如果Vi < Vj,則必有Li彡Lj ; 所述一一映射單元的輸入連接反二元化單元,將變量V的Vi值映射到語法元素A的值 ai i = 0,1,2,…,M,對于i=0,1,2,…,M,Vi由小到大排列,那么Vi對應的 就不是由小到大的順序。
8.如權利要求7所述語法元素的二進制化的裝置,其特征還在于,還包括統(tǒng)計單元和建立一一映射關系單元,所述統(tǒng)計單元通過建立一一映射關系單元與一一映射單元相連 其中,所述統(tǒng)計單元統(tǒng)計語法元素A的概率分布;所述建立一一映射關系單元根據(jù)所述的概率分布建立變量V的值與語法元素A的值之間的一一映射關系。
全文摘要
本發(fā)明公開了一種視頻圖像編解碼中的二進制化的方法和裝置,本發(fā)明不直接對語法元素進行二進制化,而是先通過一個一一映射將語法元素的值映射到一個新的變量的值,然后對這個新的變量的值進行二元化。這樣通過一一映射和二元化兩個步驟來完成二進制化的過程,可以使得高概率的變量的值對應的bin串不會長于低概率的變量的值對應的bin串長度,提高編碼效率和降低編碼復雜度。
文檔編號H04N7/26GK102404571SQ201110372408
公開日2012年4月4日 申請日期2011年11月22日 優(yōu)先權日2011年11月22日
發(fā)明者朱興國, 虞露 申請人:浙江大學