專利名稱:編碼器及自適應算術編碼的實現方法及裝置的制作方法
技術領域:
本發明涉及熵編碼技術領域,尤其涉及一種編碼器及自適應算術編碼的實現方法及裝置。
背景技術:
H.264標準采用基于上下文的自適應二進制算術編碼(CABAC),實現編碼的高度自適應性和大壓縮率。CABAC以片(slice)為單位對輸入比特流進行編解碼處理,對一個片所包含的頭信息和殘差數據采用相應的建模方式,達到最大限度的冗余壓縮。CABAC在編碼過程中,根據當前比特(bit)及其概率特性,自動調整下一個bit出現0或1的概率,進而改變全局概率空間,并產生相應的碼流。其中,所謂片是指一個圖像被分成很多份后,其中一份稱為一個片單位。
圖1是CABAC對語法元素進行編碼至輸出碼流過程的示意圖,該過程大致為1、對語法元素進行二進制化處理,得到bin串語法元素作為CABAC的編碼對象,可分為不同的類型,可以是一個宏塊類型(mb_type)值,也可以是一個4*4的殘差矩陣。所謂bin,實際也是二進制位bit。為了與經過編碼后最終輸出的bit碼流區分開,稱此處編碼前的碼流為bin串。
2、對bin串做基于上下文的建模CABAC建立了一個基于查表的概率模型。在CABAC給出的對應的表中,概率模型按序號依次排列,并且同一類型的概率模型序號相同。每個bin的概率模型的序列號可根據其語法元素的類型及其相鄰信息在表中查得。該建模過程實際是從對應的表中查得每個bin的概率模型序列號。
3、依次對每個bin進行編碼,同時輸出編碼后的bit碼流圖2是圖1中H.264標準中定義的編碼過程示意圖。
其中,歸一化前的處理過程在圖2中用B標識,該過程具體包括根據輸入的當前bin的概率模型序列號在CABAC給出的對應的表中查找當前bin的概率模型值,以及該當前bin的初始概率空間;并根據H.264規定的算法由該bin及其概率模型值,以及當前bin的初始概率空間計算出歸一化前當前bin的概率空間。其中,概率空間用下限(codIlow)和大小長度(codIrange)組成的二維空間來描述。H.264標準中定義codIlow的取值范圍為0<codIlow<1024;codIrange的取值范圍為2<=codIrange<512。
歸一化處理過程在圖2中用C標識,該過程具體為為了對輸入的當前bin進行編碼,得到對應的bit,還需要對歸一化前當前bin的概率空間進行歸一化處理,得到歸一化后當前bin的概率空間,以更新當前bin的概率空間。
歸一化處理過程內嵌對歸一化前當前bin的概率空間中的codIlow與codIrange值更新處理過程,該更新處理過程是一個循環過程。圖3是H.264標準給出的圖2中循環過程的流程圖。由于該圖3對應的流程為公知技術,在此不再詳細描述。所需要說明的是當codIrange<256,且codIlow<256時,能夠得到bit碼流;當codIrange<256,且256<codIlow<=512時,能夠得到bit碼流;當codIrange>256時,結束歸一化處理。
歸一化處理結束后輸出的codIrange和codIlow對應的概率空間即為歸一化后當前bin的概率空間,歸一化后當前bin的概率空間將作為下一個輸入的bin的初始概率空間。由于codIrange的取值范圍在2至256之間,因此,上述循環過程最多可被執行7次。
輸出當前bin對應的bit碼流在上述歸一化處理的循環過程中,若能夠得到bit碼流,該bit碼流是當前bin對應的bit碼流,那么將該bit碼流輸出。
另外,上述1和2過程在圖1或圖2中用A標識。
上述現有技術遵守H.264標準規定,即,一次循環得到bit碼流時,需要將該bit碼流輸出。采用現有技術,每次輸出bit碼流都將花費一個單元時間。因此,當單次歸一化處理中未有bit碼流輸出,那么對當前bin的編碼處理過程需要花費一個單元時間,這與H.264標準給出的理論統計編碼平均速度相同,即平均1個單位時間處理1個bin;而當單次歸一化處理中有bit碼流輸出,那么對當前bin的編碼處理過程所花費的時間將大于甚至遠大于1個單元時間。
可見,現有的編碼過程需要等待更新當前bin的概率空間與輸出對應的bit碼流全部執行完畢后,才能夠繼續更新下一個bin的概率空間。而實際上,下一個bin與當前bin的依賴關系僅為對歸一化后當前bin的概率空間的依賴,與是否輸出當前bin對應的bit碼流沒有關聯。因此,現有技術存在的問題的是,更新當前bin的概率空間的過程內嵌輸出對應的bit碼流的過程,導致編碼效率不高。
發明內容
有鑒于此,本發明的第一個目的在于提供一種自適應算術編碼的實現方法,提高自適應算術編碼的編碼效率。
本發明的第二個目的在于提供一種自適應算術編碼的實現裝置,提高自適應算術編碼的編碼效率。
本發明的第三個目的在于提供一種編碼器,提高自適應算術編碼的編碼效率。
本發明第一個目的通過以下技術方案實現本發明提供一種自適應算術編碼的實現方法,包括A、接收外部輸入的二進制位bin,并將該bin作為當前bin;B、利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間,并列執行步驟C和步驟D;
C、對所述歸一化前當前bin的概率空間進行第一歸一化處理,并將歸一化后當前bin的概率空間作為從外部輸入的下一個bin的初始概率空間,返回執行步驟A;D、對所述歸一化前當前bin的概率空間進行第二歸一化處理,將經過所述第二歸一化處理得到的當前bin對應的比特bit碼流輸出。
優選地,在執行步驟B之前,該方法進一步包括獲得所述當前bin的概率模型序列號,根據所述當前bin及其概率序列號,獲得所述當前bin的概率模型值。
優選地,所述步驟B具體為根據所述當前bin,以及所述當前bin的概率模型值,并利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間。
優選地,在執行步驟D之前,該方法進一步包括D1、將所述步驟B計算出的歸一化前當前bin的概率空間的計算結果存儲在緩存單元。
本發明第二個目的通過以下技術方案實現本發明提供一種自適應算術編碼的實現裝置,包括接收單元、計算單元、第一歸一化處理單元和第二歸一化處理單元,其中,接收單元,用于接收并存儲外部輸入的bin,將該bin作為當前bin,并將該當前bin提供給所述計算單元;計算單元,用于接收來自所述接收單元的當前bin,利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間,并將所述歸一化前當前bin的概率空間傳送給所述第一歸一化處理單元和所述第二歸一化處理單元;第一歸一化處理單元,用于接收來自所述計算單元的所述歸一化前當前bin的概率空間,并進行歸一化處理,并將歸一化后當前bin的概率空間作為從外部輸入的下一個bin的初始概率空間,傳送給所述計算單元,并通知所述接收單元繼續接收并存儲外部輸入的bin;第二歸一化處理單元,用于接收來自所述計算單元的歸一化前當前bin的概率空間,并進行歸一化處理,將經過歸一化處理得到的當前bin對應的bit碼流輸出。
優選地,所述裝置進一步包括概率模型值獲取單元,用于獲得所述當前bin的概率模型序列號,根據所述當前bin及其概率序列號,獲得所述當前bin的概率模型值,并將所述當前bin的概率模型值傳送給所述計算單元。
優選地,所述裝置進一步包括緩存單元,用于接收并存儲所述計算單元計算出的歸一化前當前bin的概率空間的計算結果,并將該計算結果傳送給所述第二歸一化處理單元。
優選地,所述緩存單元為先入先出緩存器。
優選地,所述第二歸一化處理單元為有限狀態機,所述有限狀態機包括第一狀態和第二狀態,其中,第一狀態為空閑態;第二狀態為進行所述第二歸一化處理中循環過程,輸出一次循環得到的當前bin對應的bit碼流,并將預先設置的循環次數減一后,判斷循環次數是否為零,若是,則跳轉至第一狀態,否則,停留在第二狀態。
本發明第三個目的通過以下技術方案實現本發明提供一種編碼器,包括預編碼裝置和自適應算術編碼的實現裝置,其中,預編碼裝置,用于將輸入編碼器的語法元素二進制化得到對應的bin,將該bin輸入自適應算術編碼的實現裝置;自適應算術編碼的實現裝置包括接收單元、計算單元、第一歸一化處理單元和第二歸一化處理單元,其中,接收單元,用于接收并存儲外部輸入的bin,將該bin作為當前bin,并將該當前bin提供給所述計算單元;計算單元,用于接收來自所述接收單元的當前bin,利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間,并將所述歸一化前當前bin的概率空間傳送給所述第一歸一化處理單元和所述第二歸一化處理單元;第一歸一化處理單元,用于接收來自所述計算單元的所述歸一化前當前bin的概率空間,并進行歸一化處理,并將歸一化后當前bin的概率空間作為從外部輸入的下一個bin的初始概率空間,傳送給所述計算單元,并通知所述接收單元繼續接收并存儲外部輸入的bin;第二歸一化處理單元,用于接收來自所述計算單元的歸一化前當前bin的概率空間,并進行歸一化處理,將經過歸一化處理得到的當前bin對應的bit碼流輸出。
由上述內容可見,本發明提供的技術方案將原先內嵌于更新當前bin的概率空間的過程中的輸出對應的bit碼流的過程分離出來,使計算出歸一化后當前bin的概率空間的過程,即更新當前bin的概率空間的過程,與得出當前bin對應的bit碼流并輸出的過程相互獨立。這樣,當更新完當前bin的概率空間后,就可以繼續更新下一個bin的概率空間,而不再需要等待當前bin對應的bit碼流輸出結束。這樣,更新當前bin的概率空間的整個過程所花費的時間是1個單元時間,對當前bin的概率空間做第二歸一化處理所花費的平均時間也是1個單元時間,兩者同時進行,保證了編碼的平均速度為一個單元時間內處理一個bin,提高了編碼效率。
圖1是CABAC對語法元素進行編碼至輸出碼流過程的示意圖;圖2是圖1中H.264標準中定義的編碼過程的電路結構示意圖;圖3是H.264標準給出的圖2中循環過程的流程圖;圖4是本發明第一較佳實施例中自適應算術編碼的實現方法流程圖;圖5是本發明第二較佳實施例中自適應算術編碼的實現方法流程圖;圖6是本發明自適應算術編碼的實現裝置第一較佳實施例結構示意圖;圖7是本發明自適應算術編碼的實現裝置第二較佳實施例結構示意圖;圖8是本發明自適應算術編碼的實現裝置第三較佳實施例結構示意圖;圖9是圖6中的第二歸一化處理單元604的邏輯實現示意圖;圖10是本發明實施例提供的編碼器較佳實施例的結構示意圖;
圖11是本發明處理圖2中A、B+C過程與現有技術處理A、B+C過程的對比圖。
具體實施例方式
為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖及具體實施例對本發明作進一步詳細描述。
本發明通過在自適應算數編碼過程中,將計算歸一化后當前bin的概率空間,即更新當前bin的概率空間,與輸出對應的bit碼流這兩個部分分離開,來達到提高編碼效率的目的。
圖4是本發明第一較佳實施例中自適應算術編碼的實現方法流程圖,本步驟402、利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間,并列執行步驟403和步驟404。
該步驟中,為計算出歸一化前當前bin的概率空間,還需要從CABAC給出的表中查找到當前bin的概率模型序列號,根據當前bin及其概率序列號,在查找到當前bin的7bit概率模型值。之后,再按照H.264標準規定的相應的算法,根據當前bin、當前bin的7bit概率模型值,并利用當前bin的初始概率空間計算出歸一化前當前bin的概率空間。
本實施例中,在計算出歸一化前當前bin的概率空間后,再同時執行下列步驟403和步驟404,以分離更新當前bin的概率空間和得出當前bin對應的bit碼流并輸出該bit碼流這兩個過程,使該兩個過程相對獨立。
步驟403、對歸一化前當前bin的概率空間進行第一歸一化處理,并將歸一化后當前bin的概率空間作為從外部輸入的下一個bin的初始概率空間,返回執行步驟401。
該步驟中,經過第一歸一化處理得到的歸一化后當前bin的概率空間將作為下一個bin的初始概率空間,在返回執行步驟401后,當下一個bin被輸入后,成為當前bin;那么在繼續執行步驟402時,就根據此時當前bin、該當前bin的概率模型值以及當前bin的初始概率空間計算歸一化后該當前bin的概率空間,此時當前bin的初始概率空間即為歸一化后上一個bin的概率空間。
本實施例中,從步驟401執行到步驟403的過程,用于更新當前bin的概率空間,即用于計算出歸一化后當前bin的概率空間,并為下一個bin提供初始概率空間。從步驟401執行到步驟403的過程可在一個單元時間內完成。
另外,本實施例中,該第一歸一化處理不需要在一次循環得出當前bin對應的bit后將該bit輸出。
步驟404、對歸一化前當前bin的概率空間進行第二歸一化處理,將經過第二歸一化處理得到的當前bin對應的比特bit碼流輸出。
計算歸一化前當前bin的概率空間或計算歸一化后當前bin的概率空間即為計算出對應的當前bin的概率空間中的codIrange和codIlow。
本實施例中,從步驟401執行到步驟404的過程,用于輸出當前bin對應的bit碼流,該過程需要花費1個單元時間。單次從步驟401執行到步驟404的過程,由于可能需要輸出與當前bin對應的bit碼流,因此所需要花費的時間可能大于1個單元時間,但是,對所有輸入的bin的編碼過程而言,按照H.264標準的統計結果,平均每個歸一化過程只有一次循環處理,即至多只有一次bit碼流的輸出。也就是說,單次從步驟401執行到步驟404的過程平均所需要花費的也是1個單元時間。步驟401執行到步驟403的過程以及步驟401執行到步驟404的過程同時進行,并且平均花費1個單元時間,因此,本實施例中,處理1個bin平均花費1個單元時間。
圖5是本發明第二較佳實施例中自適應算術編碼的實現方法流程圖。本實施例基于上述圖4流程,包括以下步驟步驟501、接收外部輸入的bin,并將該bin作為當前bin。
步驟502、利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間,并列執行步驟503和步驟504。
本實施例中,在計算出歸一化前當前bin的概率空間后,再并列執行下列步驟503和步驟504,以分離更新當前bin的概率空間和得出當前bin對應的bit碼流并輸出該bit碼流這兩個過程,使該兩個過程相對獨立。
步驟503、對歸一化前當前bin的概率空間進行第一歸一化處理,并將歸一化后當前bin的概率空間作為從外部輸入的下一個bin的初始概率空間,返回執行步驟501。
本實施例中,從步驟501執行到步驟503的過程,用于更新當前bin的概率空間,即用于計算出歸一化后當前bin的概率空間,并為下一個bin提供初始概率空間。
另外,本實施例中,該第一歸一化處理不需要在一次循環得出當前bin對應的bit碼流后將該bit碼流輸出。
步驟504、將計算出的歸一化前當前bin的概率空間的計算結果存儲在緩存單元。
本實施例中,該緩存單元可以是一個先入先出緩存器。考慮到步驟502單次計算出歸一化前當前bin的概率空間的速度可能比后續第二歸一化處理的單次速度要快,為整合整個處理流程,本實施例中添加上述緩存單元。這樣,步驟502給出的計算結果可以暫存在該緩存單元中,等待被進行第二歸一化處理。
步驟505、從緩存單元讀取歸一化前當前bin的概率空間,對該概率空間進行第二歸一化處理,并將經過第二歸一化處理得到的當前bin對應的比特bit碼流輸出。
本實施例中,第二歸一化處理需要將得到的當前bin對應的bit碼流輸出。
圖5所示實施例中,處理1個bin平均所需要花費的時間也是1個單元時間,原因可參見上述對圖4所示實施例能夠實現處理1個bin平均花費1個單元時間的說明。
本發明基于上述自適應算術編碼的實現方法設計一種自適應算術編碼的實現裝置。圖6是該裝置的第一較佳實施例的結構示意圖。其中,該裝置包括接收單元601、計算單元602、第一歸一化處理單元603和第二歸一化處理單元604。
接收單元601,用于接收并存儲外部輸入的bin,將該bin作為當前bin,并將該當前bin傳輸給計算單元602;計算單元602,用于接收來自接收單元601的當前bin,利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間,并將歸一化前當前bin的概率空間傳送給第一歸一化處理單元603和第二歸一化處理單元604。
第一歸一化單元603,用于接收來自計算單元602的歸一化前當前bin的概率空間,并進行第一歸一化處理,將歸一化后當前bin的概率空間作為從外部輸入的下一個bin的初始概率空間,傳送給計算單元602,并通知接收單元601繼續接收并存儲外部輸入的bin及其概率模型序列號。
第二歸一化處理單元604,用于接收來自計算單元602的歸一化前當前bin的概率空間,并進行第二歸一化處理,將經過第二歸一化處理得到的當前bin對應的比特bit碼流輸出。
圖7是上述裝置的第二較佳實施例的結構示意圖,圖7所示裝置在圖6所示裝置基礎上增加概率模型值獲取單元701,用于獲得當前bin的概率模型序列號,根據當前bin及其概率序列號,獲得當前bin的概率模型值,并將當前bin的概率模型值傳送給計算單元602。
圖8是上述裝置的第三較佳實施例的結構示意圖,圖8所示裝置在圖7所示裝置基礎上增加緩存單元801,用于接收并存儲計算單元602計算出的歸一化前當前bin的概率空間的計算結果,并將該計算結果傳送給第二歸一化處理單元603。緩存單元801可以是一個先入先出緩存器。
在實際應用中,可以將上述圖6、圖7或圖8所示裝置中的接收單元601、計算單元602、第一歸一化處理單元603之間的連接采用現有的組合邏輯電路技術來實現從接收單元601接收到bin至第一歸一化處理單元603計算出該bin的概率空間,這一過程所需要花費的時間為一個單元時間。
圖9是上述圖6、圖7或圖8中的第二歸一化處理單元604的邏輯實現示意圖。該第二歸一化單元可采用現有的有限狀態機技術來實現,該有限狀態機包括兩個狀態第一狀態為空閑態,第二狀態為進行第二歸一化處理中的循環過程,將一次循環得到的當前bin對應的bit碼流,并將預先設置的循環次數減一后,判斷循環次數是否為零,若是,跳到第一狀態,否則,停留在第二狀態。循環次數可通過圖3所示的H.264標準給出的該循環過程的流程預先算出。
有限狀態機的工作過程為先從第一狀態跳到第二狀態,當第二狀態判定循環次數不為零,說明還需要進行循環處理,停留在第二狀態,此時可能有當前bin對應的bit碼流輸出;當第二狀態判定循環次數等于零,跳到第一狀態。
上述圖9中的第二歸一化處理單元604平均進行一次循環處理并輸出對應的bit碼流,這一過程所需要花費的時間是1個單元時間。
本發明還基于上述圖6所示的裝置提供一種編碼器。圖10是該編碼器的一個較佳實施例的結構示意圖,編碼器包括預編碼裝置和自適應算術編碼的實現裝置。
預編碼裝置,用于將輸入編碼器的語法元素二進制化得到對應的bin,將該bin輸入自適應算術編碼的實現裝置。
自適應算術編碼的實現裝置包括圖6所示的各單元,該裝置需要更新當前bin的概率空間,并輸出當前bin對應的bit碼流。該自適應算術編碼的實現裝置還可包括圖7中的概率模型值獲取單元701,與圖8中的緩存單元801。另外,第二歸一化處理單元604的邏輯實現如圖9所示。該第二歸一化處理單元604可以是一個有限狀態機。
圖11是本發明處理圖2中A、B+C過程與現有技術處理A、B+C過程的對比圖。其中,M表示的是現有技術處理圖2中A、B+C過程,N表示的是本發明處理圖2中A、B+C過程。可見,本發明能夠實現上述兩個過程的流水線作業,相對現有技術采用串行處理上述兩過程的方式而言,大大加快了編碼進程。
綜上所述,本發明提供的技術方案通過將原先內嵌于更新當前bin的概率空間的過程中的輸出對應的bit碼流的過程分離出來,使計算出歸一化后當前bin的概率空間的過程,即更新當前bin的概率空間的過程,與得出當前bin對應的bit碼流并輸出的過程相互獨立。這樣,更新當前bin的概率空間的整個過程所花費的時間是1個單元時間,對當前bin的概率空間做第二歸一化處理所花費的平均時間也是1個單元時間,兩者同時進行,保證了編碼的平均速度為一個單元時間內處理一個bin,提高編碼效率。并且,本發明中的第二歸一化處理用有限狀態機實現,能夠使用較少的電路資源,達到較快的編碼速度。此外,本發明中的A和B+C過程采用流水線設計方式,能夠大大加快編碼速度。
權利要求
1.一種自適應算術編碼的實現方法,其特征在于,包括A、接收外部輸入的二進制位bin,將該bin作為當前bin;B、利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間,并列執行步驟C和步驟D;C、對所述歸一化前當前bin的概率空間進行第一歸一化處理,并將歸一化后當前bin的概率空間作為從外部輸入的下一個bin的初始概率空間,返回執行步驟A;D、對所述歸一化前當前bin的概率空間進行第二歸一化處理,將經過所述第二歸一化處理得到的當前bin對應的比特bit碼流輸出。
2.根據權利要求1所述的方法,其特征在于,在執行所述步驟B之前,該方法進一步包括獲得所述當前bin的概率模型序列號,根據所述當前bin及其概率序列號,獲得所述當前bin的概率模型值。
3.根據權利要求2所述的方法,其特征在于,所述步驟B具體為根據所述當前bin,以及所述當前bin的概率模型值,并利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間。
4.根據權利要求1所述的方法,其特征在于,在執行步驟D之前,該方法進一步包括D1、將所述步驟B計算出的歸一化前當前bin的概率空間的計算結果存儲在緩存單元。
5.一種自適應算術編碼的實現裝置,其特征在于,包括接收單元、計算單元、第一歸一化處理單元和第二歸一化處理單元,其中,接收單元,用于接收并存儲外部輸入的bin,將該bin作為當前bin,并將該當前bin提供給所述計算單元;計算單元,用于接收來自所述接收單元的當前bin,利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間,并將所述歸一化前當前bin的概率空間傳送給所述第一歸一化處理單元和所述第二歸一化處理單元;第一歸一化處理單元,用于接收來自所述計算單元的所述歸一化前當前bin的概率空間,并進行歸一化處理,并將歸一化后當前bin的概率空間作為從外部輸入的下一個bin的初始概率空間,傳送給所述計算單元,并通知所述接收單元繼續接收并存儲外部輸入的bin;第二歸一化處理單元,用于接收來自所述計算單元的歸一化前當前bin的概率空間,并進行歸一化處理,將經過歸一化處理得到的當前bin對應的bit碼流輸出。
6.根據權利要求5所述的裝置,其特征在于,所述裝置進一步包括概率模型值獲取單元,用于獲得所述當前bin的概率模型序列號,根據所述當前bin及其概率序列號,獲得所述當前bin的概率模型值,并將所述當前bin的概率模型值傳送給所述計算單元。
7.根據權利要求5或6所述的裝置,其特征在于,所述裝置進一步包括緩存單元,用于接收并存儲所述計算單元計算出的歸一化前當前bin的概率空間的計算結果,并將該計算結果傳送給所述第二歸一化處理單元。
8.根據權利要求9所述的裝置,其特征在于,所述緩存單元為先入先出緩存器。
9.根據權利要求5所述的裝置,其特征在于,所述第二歸一化處理單元為有限狀態機,所述有限狀態機包括第一狀態和第二狀態,其中,第一狀態為空閑態;第二狀態為進行所述第二歸一化處理中循環過程,輸出一次循環得到的當前bin對應的bit碼流,并將預先設置的循環次數減一后,判斷循環次數是否為零,若是,則跳轉至第一狀態,否則,停留在第二狀態。
10.一種編碼器,其特征在于,包括預編碼裝置和自適應算術編碼的實現裝置,其中,預編碼裝置,用于將輸入編碼器的語法元素二進制化得到對應的bin,將該bin輸入自適應算術編碼的實現裝置;自適應算術編碼的實現裝置包括接收單元、計算單元、第一歸一化處理單元和第二歸一化處理單元,其中,接收單元,用于接收并存儲外部輸入的bin,將該bin作為當前bin,并將該當前bin提供給所述計算單元;計算單元,用于接收來自所述接收單元的當前bin,利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間,并將所述歸一化前當前bin的概率空間傳送給所述第一歸一化處理單元和所述第二歸一化處理單元;第一歸一化處理單元,用于接收來自所述計算單元的所述歸一化前當前bin的概率空間,并進行歸一化處理,并將歸一化后當前bin的概率空間作為從外部輸入的下一個bin的初始概率空間,傳送給所述計算單元,并通知所述接收單元繼續接收并存儲外部輸入的bin;第二歸一化處理單元,用于接收來自所述計算單元的歸一化前當前bin的概率空間,并進行歸一化處理,將經過歸一化處理得到的當前bin對應的bit碼流輸出。
全文摘要
本發明提供一種自適應算術編碼的實現方法,包括A、接收外部輸入的二進制位bin,并將該bin作為當前bin;B、利用當前bin的初始概率空間,計算出歸一化前當前bin的概率空間,并列執行步驟C和步驟D;C、對所述歸一化前當前bin的概率空間進行第一歸一化處理,并將歸一化后當前bin的概率空間作為從外部輸入的下一個bin的初始概率空間,返回執行步驟A;D、對所述歸一化前當前bin的概率空間進行第二歸一化處理,將經過所述第二歸一化處理得到的當前bin對應的比特bit碼流輸出。本發明還基于上述方法提供一種編碼器及自適應算術編碼的實現裝置,提高自適應算術編碼的編碼效率。
文檔編號H04N7/30GK1964496SQ200610167248
公開日2007年5月16日 申請日期2006年12月12日 優先權日2006年12月12日
發明者劉子熹 申請人:北京中星微電子有限公司