新四季網

Cavlc解碼方法

2023-06-12 11:49:31

專利名稱:Cavlc解碼方法
技術領域:
本發明是關於H.264/AVC視頻解碼器的可變長編碼方面的發明,具體地說,是關於快速參照H.264/AVC規格裡規定的CAVLC表格的方法的發明。
背景技術:
DMB(Digital Multimedia Broadcasting數據多媒體廣播)視頻規格遵循H.264/AVC(Advanced Video Coding先進的視頻編碼)標準。
上述視頻規格是關於視頻比特流有序排列(syntax)及解碼器(decoder)的規格,遵循這一規格的DMB視頻編碼器為了高效地分配數據比特流,使用兩種可變長編碼(Variable Length Coding可變長度編碼)方式。
根據這一規格,對於除了變換的影像數據係數以外的數據,使用UVLC(UniVersal Variable Length Coding通用的可變長度編碼)方式,對於變換的影像數據使用CAVLC(Context-ba sed Adapt iveVariable Length Coding自適應可變長度編碼)方式。
所謂可變長編碼方式,指的是利用信號的統計特性,即,根據信號產生頻率的統計特性,在各個信號的符號裡,分割相互不同長度的比特數的方式,是在現存影像壓縮方式裡一直使用的方式。
H.264/AVC標準規格規定的上述CAVLC方式採用使用變換的影像數據係數的特性的TotalCoeff,TrailingOnes,total_zero,run_before等變量相關的表格,對信號進行編碼的方式。
從操作這種可變長編碼的現存方式來看,其是使用從比特流讀取上述可變長編碼表格定義的編碼的長度相應程度的編碼,將其與上述可變長編碼表格的編碼進行比較的方式。
為了使用這一方式,在最壞的情況下,由於需要比較表格的所有編碼值,需要持續訪問比特流存儲器的過程。因此,存在由於這種非效率的處理過程導致的解碼器處理速度低下的問題。

發明內容
本發明為了解決上述問題,其目的是為使用者提供一種在適用H.264/AVC標準裡規定的視頻解碼方式的所有系統中,參照CAVLC表格的方式,能夠解決計算複雜問題的CAVLC解碼方法。
為了實現上述目的,本發明CAVLC解碼方法包括以下幾個階段從已設定、輸入的上述CAVLC代碼字長度表格重新排列的表格中,選擇希望解碼的變量對應的表格的階段;在上述選擇的表格內,從參考列的第一個代碼字長度開始,按順序讀出上述代碼字長度的比特流的階段;在上述CAVLC代碼字長度表格內部,在與上述參考列一致的列裡,將具有與上述讀出比特流階段的代碼字長度一致的代碼字長度的CAVLC代碼字值表格的值與上述讀出的比特流值進行比較的階段;當上述比較結果是兩值一致時,存儲那時的變量值的階段。
CAVLC解碼方法的特徵是上述重新排列的表格是將上述CAVLC代碼字長度表格按照代碼字長度順序進行重新排列列的表格。
CAVLC解碼方法的特徵是上述參考列是從上述比特流信息包的報頭部分裡包含的信息和解碼的鄰近區域的信息選擇的列。
CAVLC解碼方法還包括以下階段當上述讀出的比特流值是0或者上述比較結果是兩值不一致時,在上述重新排列的表格上的參考列裡,讀出比較值的下一個值對應的代碼字長度的比特流的階段。
本發明CAVLC解碼方法達到如下效果。
第一,由於按順序讀出本發明重新排列的表格指示長度的比特流上的數據,所以,達到減少存儲器訪問時間的效果。
第二,由於與本發明重新排列的表格的長度對應的長度的代碼字表格值進行比較,達到減少比較處理量的效果。
第三,由於將本發明的方法使用到DMB系統的應用領域的編碼處理過程,具有實現解碼器的簡單化和提高處理速度的效果。
第四,具有能夠將其它H.264/AVC標準規格應用到所有應用領域的效果。


圖1是普通的二元搜索樹的示意圖。
圖2是本發明包含Total_Coeff的total_zeros的CAVLC表格及其二元樹構造的示意圖。
圖3是本發明包含重新排列的Total_Coeff的total_zeros的CAVLC代碼字長度表格的示意圖。
圖4a到4d是根據本發明,重新排列的H.264/AVC使用的CAVLC變量各自的代碼字長度表格的示意圖。
圖5是為了說明本發明CAVLC解碼方法,根據H.264/AVC規格,包含Total_Coeff的Total_zeros的CAVLC代碼字長度表格的示意圖。
圖6是為了說明本發明CAVLC解碼方法,根據H.264/AVC規格,包含Total_Coeff的Total_zeros的CAVLC代碼字值表格的示意圖。
圖7是本發明CAVLC解碼過程的流程圖。
具體實施例方式
以下,將參照附圖對本發明CAVLC解碼方法實施例的結構和作用加以說明。
可變長編碼(VLCVariable Length Coding)的基本概念是根據數據產生的統計特性,對於統計特性大的信號符號,分配少數比特,對於統計特性小的信號符號,分配多數比特,對產生的信號進行編碼,減少平均的編碼信號的比特分配長度。
關於這種方式的基本原理可以通過哈夫曼方式進行簡單地說明。由於這一編碼方式和執行編碼方式的過程受到二元樹構造的影響,所以,本發明提出了使用二元樹進行檢索的方法。
圖1是普通的二元搜索樹的示意圖。
如圖1所示,二元搜索樹(Binary Search Tree)具有對稱構造,母樹有兩個子樹(母樹上位節點,子樹下位節點),左子樹是1,右子樹是0。
利用二元搜索樹,將N個值進行比較,能夠處理log2N階段計算的複雜度。儘管這一方式是利用階層的數據構造,能夠迅速檢索的算法,但是,由於每次都要構成新的二元搜索樹,存在處理過程複雜的缺點。
但是,如果通過視頻編碼器規定的CAVLC編碼表格的長度單位進行處理,很容易求得具有類似上述階層構造的表格。
因此,為了運行可變長編碼方式,根據本發明,應該參照容易構成具有階層構造的CAVLC編碼表格,為了與現存的CAVLC編碼表格進行比較,通過從檢索所有情況下的樹的方式中脫離,快速地檢索預想的編碼,提高編碼器的處理速度及改善編碼器的負荷。下面,參照附圖,對其進行詳細說明。
圖2顯示了本發明CAVLC表格及其二元樹構造的示意圖。
尤其是,圖2的表格是包含Total_Coeff的total_zeros的CAVLC表格。上述表格顯示了將第一個列變換成二元樹構造的示意圖。
上述表格的橫軸是Total_Coeff(coeff_token),即,顯示了在影像的編碼過程中DCT(Discrete Cosine Transform離散餘弦變換),量子化(Quantization)的數據中,係數不是0的個數。豎軸是total_zero,即,顯示了在上述數據中係數是0的個數,在上述橫軸和豎軸內部,顯示代碼字值。上述代碼字值是遵循H.264/AVC CAVLC規格的值。
如圖2所示,從表格的第一個列開始,將表現的代碼字值向二元樹變換,這跟前面提到的二元樹使用的方式一樣,使用左子樹是1,右子樹是0的方法。
即,將表格的第一個代碼字值---1比特表現的1通過二元樹第一個水平的左子樹表現,由於右子樹在上述CAVLC代碼字表格裡不具有用1比特表現的0代碼字,不表現,然後,由於存在3比特的值,將右子樹擴張,各自分配第三個水平的值。
按照上述方法,最後的子樹分配最長的編碼,右邊的最下面的子樹分配代碼字值是0的代碼字。在圖2中,由於在二元樹裡對應的表格的代碼字中,不存在值是0的代碼字,右邊子樹最好是空的子樹。
同樣,如果按照相同的方法,將其它表格的代碼字也向二元樹變換,能夠看出CAVLC表格具有階層構造,能夠按照發生概率高低順序進行排列。
即,跟前面提到的一樣,由於VLC算法上將發生概率高的信號分配長度短的比特,能夠按照發生概率高低順序進行(代碼字長度短的順序)排列。
而且,二元樹的深度與檢索值的計算複雜度有密切的關係。即,二元樹的深度越深,二元樹的構造越不對稱,檢索計算越複雜。
為了構成上述二元樹,正如上面提到的那樣,應該將各個代碼字分配到二元樹的深度(水平)中,各個代碼字的二元樹的水平和代碼字長度相關。
因此,為了便於構成二元樹,為了以代碼字的長度為基準,構成代碼字,進行比較,需要重新構成排列各個表格的代碼字長度的表格。下面,參照圖3對其進行說明。
圖3是本發明包含重新排列的Total_Coeff的total_zeros的CAVLC代碼字長度表格的示意圖。
如圖3所示,新構成的表格根據圖2的二元樹水平,按照發生概率(代碼字長度順序)高低順序進行重新排列列。但是,在CAVLC表格的相同列裡,當由0構成的代碼字的長度並不是最長的長度時,即,當不是二元樹的最下面的水平時,最後排列。
另一方面,參照圖4a到4d,對按照相同的方法,根據本發明,重新排列的H.264/AVC使用的CAVLC變量各自的代碼字長度表格進行說明。
即,圖4a顯示的4×4區域是根據各個代碼字的長度重新排列包含Total_Coeff的Total_Zeros的示意圖。圖4b是根據各個代碼字的長度重新排列包含Chroma DC的Total_Coeff的Total_Zeros的示意圖。圖4c是根據各個代碼字的長度重新排列CAVLC的run_before變量的示意圖。圖4d是根據各個代碼字的長度重新排列Total_Coeff和TrailingOnes變量的示意圖。圖4e是根據各個代碼字的長度重新排列Chroma的Total_Coeff和TrailingOnes變量的示意圖。
上述圖4e的表格的代碼字長度是7時,全部由0構成(0000 000),這一表格代碼字長度是8的『0000 0011』和『0000 0010』的兩種情況以後進行比較。
即,像前面說明的那樣,在CAVLC表格的相同列裡,當由0構成的代碼字的長度不是最長的長度時,由於需要進行分配,最後進行比較。
繼續,如果出現0,由於比較下一個長度分配的代碼字,所以,為了查找上述『0000 000』的代碼字,變換比較的代碼字長度順序。
同樣,對H.264/AVC規格的CAVLC各個變量分配的表格進行重新排列時,通過將其應用到解碼(decoding)過程中,不重複讀出比特的過程,按照發生概率高的順序依次進行比較。下面,參照附圖對這種解碼過程進行詳細說明。
圖5和圖6是根據普通的H.264/AVC CAVLC規格打開的表格。圖5是為了說明本發明CAVLC解碼方法,根據H.264/AVC規格,包含Total_Coeff的Total_zeros的CAVLC代碼字長度表格的示意圖。圖6是為了說明本發明CAVLC解碼方法,根據H.264/AVC規格,包含Total_Coeff的Total_zeros的CAVLC代碼字值表格的示意圖。
即,當按照普通的CAVLC方法對編碼的數據進行解碼時,首先,通過包含在傳送信息包的報頭裡的信息和解碼的鄰近區域的信息,獲得參考CAVLC表格的第幾列的信息後,從存儲器中讀出在上述圖5中顯示的代碼字長度的表格中,從相應列的第一個值開始依次分配的長度比特流(傳送的信息包的數據)。
將上述讀出的值對應的代碼字值與圖6中顯示的代碼字值的表格進行比較,當兩個值一致時,獲得那時的Total_Coeff值和total_zero值,對於其它變量,使用同樣的方法,獲得相應的值,進行解碼。
但是,此時,如圖4的表格所示,我們可以知道,普通的CAVLC規格的表格內的代碼字長度沒有按照一定的順序排列。因此,需要將已經讀出的比特再次讀出。這是一種效率非常低的方法。
因此,本發明通過使用圖3的表格,不重複讀出比特的過程,按照發生概率高低順序進行比較。圖7是本發明CAVLC解碼過程的流程圖。下面,參照圖7對本發明CAVLC解碼方法的流程圖進行詳細說明。(為了便於說明,存儲器裡輸入的比特流從010l011…開始,以包含圖3、圖5及圖6的TotalCoeff的total_zeros變量為例進行說明。而且,假定信息包報頭裡包含的信息和解碼的鄰近區域的信息參考CAVLC表格的第一個列)最初,從重新排列的表格中選擇希望解碼的變量對應的表格(S10)。由於本發明中以包含TotalCoeff的total_zeros變量為例,選擇圖3的表格。
在上述選擇的表格裡,K=0。即,讀出第一個值對應的長度的比特流(S20,S30)。即,由於圖3中第一個列的第一個值是1,讀出1比特長度,從上述例示的比特流中讀出0。
確認上述讀出的值是否是0(S40),如果是0,將K值增加一(S60),如果不是0,將CAVLC表格與編碼值進行比較。(S50)按照上述例子,由於讀出的值是0,將K值增加一。此時,當增加的K值對應的表格的代碼字值是0時,結束處理過程,當不是0時,進入上述S30階段。(S70)即,在圖3的表格中,由於沒有涉及數字的區域是0,代表著不能夠讀出其它代碼字,結束處理過程。
因此,按照上述例子,由於增加的K值裡對應的圖3表格裡的值是3,(由於不是0,不結束處理過程),讀出3比特長度的比特流(S30)上述讀出的值是010,由於其不是0,將其與CAVLC表格進行比較。(S50)此時,根據圖4的表格,當代碼字長度是3時,存在total_zeros是l和total_zeros是2兩種情況。
首先,當total_zeros是1時,通過圖5的表格,確認代碼字值,由於這一值是3,可以知道,與從上述比特流中讀出的010代表的2值不一致。(如果將上述010變換成為10進數是2)。
將上述與當total_zeros是2時進行比較,由於圖5的表格的代碼字值是2,可以知道與從上述比特流中讀出的010代表的2值一致。
因此,存儲此時的Total_Coeff值與total_zeros值(S80),結束,進入下一個解碼階段。
為了更進一步提高使用上述方法的本發明CAVLC解碼方法的效率,這次,存儲器輸入的比特流從110101…開始,以包括圖3、圖5及圖6的TotalCoeff的total_zeros變量為例進行說明,假設信息包報頭裡包含的信息和解碼的鄰近區域的信息參照CAVLC表格的第四列進行說明。
最初,通過圖3的表格,可以知道第四列的第一個值是3。
因此,在圖4的表格裡,第四列中,查找代碼字長度是3,total_zeros可能是1,4,5,6,8。
首先,當total_zeros是1時,在圖5的表格裡,代碼字值是7,這代表著與上述代碼字長度3比特流讀出的二元樹的110值代表的6不一致。
因此,當下一個total_zeros是4時,在圖5的表格中,代碼字值是6,由於這代表著與上述代碼字長度3比特流讀出的二元樹的110值代表的6一致,存儲此時的變量值,進入下一個解碼階段。
如果按照現存方法查找上述這些值,至少需要5次以上的比較過程,但是,通過使用本發明的方法,只需要兩次比較過程,就能夠獲得需要的值。
通過上述的說明內容,相關專業人員完全可以在不偏離本項發明技術思想的範圍內,進行多樣的變更以及修改。
因此,本項發明的技術性範圍並不局限於說明書上的內容,必須要根據權利範圍來確定其技術性範圍。
權利要求
1.一種CAVLC解碼方法,根據H.264/AVC規格,利用具有各自變量的CAVLC代碼字長度表格和CAVLC代碼字值表格,對編碼的比特流進行解碼,其特徵包括以下階段從已設定、輸入的上述CAVLC代碼字長度表格重新排列的表格中,選擇希望解碼的變量對應的表格的階段;在上述選擇的表格內,從參考列的第一個代碼字長度開始,按順序讀出上述代碼字長度的比特流的階段;在上述CAVLC代碼字長度表格內部,在與上述參考列一致的列裡,將具有與上述讀出比特流階段的代碼字長度一致的代碼字長度的CAVLC代碼字值表格的值與上述讀出的比特流值進行比較的階段;當上述比較結果是兩值一致時,存儲那時的變量值的階段。
2.如權利要求1所述CAVLC解碼方法,其特徵為上述重新排列的表格將上述CAVLC代碼字長度表格按照代碼字長度順序進行重新排列。
3.如權利要求1所述CAVLC解碼方法,其特徵為上述參考列是從上述比特流信息包的報頭部分裡包含的信息和解碼的鄰近區域的信息選擇的列。
4.如權利要求項1所述的CAVLC解碼方法,包括以下階段為特徵當上述讀出的比特流值是0或者上述比較結果是兩值不一致時,在上述重新排列的表格上的參考列裡,讀出比較值的下一個值對應的代碼字長度的比特流的階段。
全文摘要
本發明涉及到CAVLC解碼方法,根據H.264/AVC規格,利用具有各自變量的CAVLC代碼字長度表格和CAVLC代碼字值表格,對編碼的比特流進行解碼,其包括從已設定輸入的CAVLC代碼字長度表格重新排列的表格中,選擇希望解碼的變量對應表格;在選擇的表格內,從參考列的第一個代碼字長度開始,按順序讀出代碼字長度的比特流;在CAVLC代碼字長度表格內部,在與參考列一致的列,將具有與讀出比特流階段的代碼字長度一致的代碼字長度的CAVLC代碼字值表格的值與讀出的比特流值比較;當比較結果兩值一致時,存儲變量值。根據重新排列的表格指示的長度依次讀出比特流上的數據,能減少存儲器訪問時間,可減少將CAVLC代碼字進行比較的複雜計算。
文檔編號H03M7/40GK1780398SQ200410084328
公開日2006年5月31日 申請日期2004年11月18日 優先權日2004年11月18日
發明者吳浚煥 申請人:上海樂金廣電電子有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀