TWI396446B - 情境適應性二元算術編碼與解碼之系統與方法 - Google Patents

情境適應性二元算術編碼與解碼之系統與方法 Download PDF

Info

Publication number
TWI396446B
TWI396446B TW097138375A TW97138375A TWI396446B TW I396446 B TWI396446 B TW I396446B TW 097138375 A TW097138375 A TW 097138375A TW 97138375 A TW97138375 A TW 97138375A TW I396446 B TWI396446 B TW I396446B
Authority
TW
Taiwan
Prior art keywords
binary
context
decoding
syntax
value
Prior art date
Application number
TW097138375A
Other languages
English (en)
Other versions
TW200920141A (en
Inventor
Yuan Teng Chang
Original Assignee
Ind Tech Res Inst
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ind Tech Res Inst filed Critical Ind Tech Res Inst
Publication of TW200920141A publication Critical patent/TW200920141A/zh
Application granted granted Critical
Publication of TWI396446B publication Critical patent/TWI396446B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4006Conversion to or from arithmetic code
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

情境適應性二元算術編碼與解碼之系統與方法
本發明主要有關於影像編碼與解碼,特別係有關於一種情境適應性二元算術編碼(context-based adaptive binary arithmetic encoding,CABAC)與解碼之系統與方法。
情境適應性二元算術之編碼與解碼是制定於標準H.264/AVC中主要型(main profile)和高等型(high profile)的一種熵(entropy)編碼方法。第1圖係顯示根據標準H.264/AVC中高等型等級4.1的一範例位元串流10之結構,根據第1圖,位元串流10可包括多個資料截片(未標示號碼),且每個資料截片可包括一截片標頭層11和一截片資料層12,該截片資料層12可包括多個巨集區塊(MB)13,其中上述每個巨集區塊可包括一或多個句法元素(SE)14,每個句法元素14有一數值且可包括一或多個二進制元素15,其中上述二進制元素為一二元值0或1。
情境適應性二元算術編碼與解碼之演算法簡述於下。第2A圖係顯示情境適應性二元算術編碼與解碼之一編碼演算法流程圖,根據第2A圖,在編碼一截片資料層之第一句法元素之前,步驟20初始化了459組情境模式;上述每個情境模式包括一6位元的機率狀態索引值(pStateIdx) 和一具有二進制元素值之單位元大概率符號(valMPS)。將句法元素編碼需要有4個主要的步驟,包括二進制化、情境模式選擇、二元算術編碼、以及位元產生步驟;於步驟21,一句法元素根據其數值被轉換為一二進制元素字串,該字串由一個或多個二元位元所組成;接著於步驟22,根據一情境模式索引值(ctxIdx),針對上述二進制元素字串中的每個二進制元素從459組情境模式中挑選出其中一組;在步驟23,一二元算術編碼器(BAE)根據所挑選出的情境模式,對一二進制元素進行編碼;在該二進制元素完成編碼後,上述二元算術編碼器進行再正規化,並於步驟24更新上述挑選出的情境模式;然後,步驟25再產生編碼後的位元資料。
第2B圖係顯示情境適應性二元算術編碼與解碼之一解碼演算法流程圖,根據第2B圖,在解碼一句法元素之二進制元素之前,步驟20初始化了上述459組情境模式;將一句法元素中的每個二進制元素解碼需要有3個主要的步驟,包括情境模式選擇、二元算術解碼、以及反二進制化步驟;在步驟22,根據一情境模式索引值(ctxIdx),挑選出對應於一二進制元素之一情境模式,其中上述情境模式索引值可為一常數,或由先前解碼後的二進制元素或鄰近區塊之資訊所決定的一數值;在步驟26,一二元算術解碼器(BAD)根據所挑選出的情境模式,對上述二進制元素進行解碼;此外,上述二元算術解碼器於步驟24更新上述挑選出的情境模式,並且輸出上述二進制元素之一數 值;重複上述情境模式的更新步驟和二進制元素的輸出步驟,直到產出上述句法元素之一二進制元素字串為止;然後,將上述解碼後的二進制元素字串反二進制化,以產生上述句法元素之數值。
從第2A和2B圖可發現,如情境模式的初始化和情境模式的挑選都是編碼與解碼程序中共有的運算,所以需要一個能夠將情境適應性二元算術之編碼與解碼程序整合的系統,此外,也需要一個以管線流架構執行上述情境適應性二元算術之編碼與解碼之系統。
依據本發明之技術揭露一實施範例,一種情境適應性二元算術編碼與解碼系統,該系統包括一計算裝置,用以計算對應於執行編碼之一第一二進制元素和執行解碼的一第二二進制元素之一者之一索引值;一記憶體,以叢集為單位儲存複數情境模式,其中對應於上述第一二進制元素和上述第二二進制元素之一者之上述索引值與上述情境模式之一者相關;以及一二元算術單元,用以根據與上述索引值相關之上述情境模式作為編碼上述第一二進制元素之一編碼器或解碼上述第二二進制元素之一解碼器。
依據本發明之技術揭露另一實施範例,一種情境適應性二元算術管線流編碼與解碼方法,該方法包括在一第一時脈週期根,讀取與具有M個二進制元素之一句法元素相 關之複數情境模式,自至少一鄰近區塊取得資訊,並且據上述自至少一鄰近區塊所取得之上述資訊爲上述句法元素計算出一變數;在一第二時脈週期,根據上述變數計算出對應於上述句法元素之一第一二進制元素的一第一索引值,並且根據上述第一索引值載入對應於上述第一二進制元素之上述情境模式之一者;在一第三時脈週期,根據對應於上述第一二進制元素之上述情境模式之一者在一編碼程序和一解碼程序之一者處理上述第一二進制元素,並且於處理完上述第一二進制元素後更新上述情境模式之一者;在上述第三時脈週期,根據上述變數計算出對應於上述句法元素之一第二二進制元素的一第二索引值,並且根據上述第二索引值載入對應於上述第二二進制元素之上述情境模式之一者;以及在一第四時脈週期,根據對應於上述第二二進制元素之上述情境模式之一者在上述編碼程序和上述解碼程序之一者處理上述第二二進制元素,並且於處理完上述第二二進制元素後更新上述情境模式之一者。
依據本發明之技術揭露另一實施範例,一種情境適應性二元算術管線流編碼與解碼方法,該方法包括在一第一時脈週期,讀取相關於一第一句法元素之複數情境模式,自至少一鄰近區塊取得資訊,並且根據該資訊計算出一變數;在一第二時脈週期,根據上述變數計算對應於上述第一句法元素之一第一二進制元素之一第一索引值,並且根據上述第一索引值載入對應於上述第一句法元素之上述第一二進制元素之上述情境模式之一者;在上述第二時脈週 期,讀取相關於一第二句法元素之複數情境模式,其中上述第一句法元素與上述第二句法元素在資料處理程序中是同時出現的;在一第三時脈週期,根據相關於上述第一句法元素之上述第一二進制元素之上述情境模式之一者,解碼上述第一句法元素之上述第一二進制元素,並且取得上述第一句法元素之上述第一二進制元素值;在上述第三時脈週期,根據上述變數計算對應於上述第二句法元素之一第一二進制元素之一第一索引值,並且針對上述第一句法元素之上述第一二進制元素值等級之一者,根據上述第一索引值載入對應於上述第二句法元素之上述第一二進制元素之上述情境模式之一者;以及在上述第三時脈週期,根據上述變數計算對應於上述第一句法元素之一第二二進制元素之一第二索引值,並且針對上述第一句法元素之上述第一二進制元素值等級之另一者,根據上述第二索引值載入對應於上述第一句法元素之上述第二二進制元素之上述情境模式之一者。
關於本發明其他附加的特徵與優點,部份將於實施方式中揭露、部份可從實施方式中明顯觀察得到、部份則可由實施過程中習得。本發明之特徵與優點將可由附屬項專利宣告範圍所指出的要素與組合方式得以實現。
上述發明內容和接下來的實施方式僅為本發明之範例與說明,然其並非用以限定本發明的範圍,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
為使本發明之上述目的、特徵和優點能更明顯易懂,下文特舉一些實施範示例,並配合所附圖式,作詳細說明如下:第3A圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統之編碼程序之管線流階段圖。根據第3A圖,情境適應性二元算術編碼與解碼系統之編碼程序之管線流階段可包括二進制化階段、情境模式選擇階段、二元算術編碼階段、以及位元產生階段。在二進制化階段,一句法元素之數值可被轉換成一二進制元素字串,情境適應性二元算術編碼與解碼系統根據句法元素之類別可採用五種二進制化方案,這五種二進制化方案包括定長碼方案、一元碼方案、截斷一元碼方案、樹狀結構碼方案、連接一元碼k階指數哥倫布碼方案,這五種二進制化方案所對應的二進制字串最大長度如下表格1所示:
在情境模式選擇階段,可根據一情境模式索引值「ctxIdx」從459組情境模式中針對上述句法元素中的每個 二進制元素挑選一組情境模式,用以幫助編碼一句法元素的每個「正規」二進制元素,其中的情境模式索引值ctxIdx是從方程式(1)所得到:
其中上述之參數ctxIdxOffset和參數ctxCatOffset可分別由句法元素之類別和剩餘區塊之類別得到,而參數ctxIdxInc則可由方程式(2)和(3)得到:
其中方程式(2)中的a、b、以及c是常數,方程式(2)中的condTermFlagA及condTermFlagB是根據鄰近區塊的資訊所得到。舉例說明,參數condTermFlagA可由一左方區塊或巨集區塊的資訊得到,參數condTermFlagB可由一上方區塊或巨集區塊的資訊得到。
上述情境模式選擇階段可進一步分割為四個子階段:取得鄰近區塊(簡稱GNB子階段)、計算參數condTermFlag(簡稱CTF子階段)、計算情境模式索引值ctxIdx(簡稱CCI子階段)、以及取得一情境模式(簡稱CML子階段),其中的GNB子階段在CTF子階段之前進行,而GNB子階段和CTF子階段皆可與二進制化階段平行進行。
在二元算術編碼階段,可使用三個編碼引擎,包括一 「標準」引擎、一「繞道」引擎、以及一「終止」引擎。可在開始編碼一第一巨集區塊之一截片的同時,初始化變數codILow和codIRange,變數codILow和codIRange的值可在編碼程序進行的過程中被改變。一二進制元素中的每個二進制元素將被這三種編碼引擎中的其中之一進行編碼,其中的標準引擎在編碼時需要一個對應於上述二進制元素的情境模式,而該情境模式由一6位元的機率狀態索引值pStateIdx和一單位元的大概率符號valMPS所組成,此外,可在標準編碼程序更新上述情境模式。
在二元算術編碼階段,當變數codIRange的值小於256時,可能會需要進行一再正規化程序,變數codIRange和codILow的值可被增大一倍,直到codIRange的值不再小於256為止,同時,位元產生階段可反覆產出編碼後的位元資料。
第3B圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統之解碼程序之管線流階段圖。根據第3B圖,情境適應性二元算術編碼與解碼系統之解碼程序之管線流階段可包括情境模式選擇階段、二元算術解碼階段、以及反二進制化階段。在情境模式選擇階段,可根據一計算出的情境模式索引值ctxIdx選出一情境模式,其中的情境模式索引值ctxIdx如先前所述,由已解碼的二進制元素或由鄰近區塊之資訊所決定,可為一常數或數值,根據所選出的情境模式,可在二元算術階段解碼一句法元素之一二進制元素。此外,可更新上述選出 的情境模式,並產生上述二進制元素之數值,此情境模式之更新與二進制元素之產生步驟可不斷重複直到上述句法元素之二進制元素字串產生為止。隨後,反二進制化上述解碼後的二進制元素字串以產生上述句法元素之數值。並且,當變數codIRange的數值小於256時,在二元算術解碼階段中的標準解碼引擎可能需要一再正規化程序。直到上述變數codIRange不再小於256為止,變數codIRange的值可被增大一倍,且變數codIOffset可連接一位元串流中的單位元資料。
第3C圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統之編碼與解碼程序之管線流階段圖。根據第3C圖,情境適應性二元算術編碼與解碼系統之編碼與解碼程序之管線流階段整合了如第3A所示之情境適應性二元算術編碼與解碼系統之編碼階段,和如第3B圖所示之情境適應性二元算術編碼與解碼系統之解碼階段。在一情境適應性二元算術編碼與解碼系統之編碼程序中,執行了上述二進制化階段與位元產生階段,而不執行反二進制化階段。另一方面,在一情境適應性二元算術編碼與解碼系統之解碼程序中,不執行上述二進制化階段與位元產生階段,而執行反二進制化階段。
第4圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統。根據第4圖,情境適應性二元算術編碼與解碼系統40可包括一二進制轉換器(BZ)41、計算裝置42和43、一二元算術單元(BAU) 44、一反二進制轉換器(DB)45、一位元產生器(BG)46、以及記憶體31和39。情境模式可在編碼或解碼程序前先被初始化,而用來初始化這459組情境模式的變數則儲存在記憶體31中,例如此記憶體可為一1762乘16位元的唯讀記憶體(ROM)。一初始化模組47,用以初始化上述459組情境模式,然後將初始化之情境模式以叢集(cluster)為單位儲存於記憶體32中,例如此記憶體可為一單埠隨機存取記憶體(RAM)。在控制器(未標示於圖中)的控制之下,透過一「情境模式讀取」(CMR)運算將一情境模式叢集從記憶體32中讀出然後寫入記憶體33中,記憶體33可包括但不限於一暫存器,上述CMR運算可於上述GNB、CTF、或BZ階段執行,該階段可包括一二進制化階段和部份情境模式選擇階段。
上述二進制轉換器41可用於上述GNB、CTF、或BZ階段,將一句法元素(以SE-value標示)之數值二進制化為一二進制元素字串,在同一個階段中,可從一個或多個鄰近區塊取得資訊(即GNB階段),舉例說明,從一上方區塊或巨集區塊取得的資訊可儲存於一緩衝暫存記憶體34,從一左方區塊或巨集區塊取得的資訊可儲存於另一緩衝暫存記憶體35。上述第一計算裝置42可根據從一個或多個鄰近區塊所取得的資訊,計算出對應於上述二進制元素字串之一二進制元素之參數condTermFlag,如上述方程式(2)所示。以上述表格1中的句法元素mb_skip_flag為例,如果左方區塊之句法元素mb_skip_flag值等於1或者 未取得左方區塊,則把參數condTermFlagA設為0,否則把參數condTermFlagA設為1,同理,參數condTermFlagB的值可由上方區塊或巨集區塊之資訊獲得,上述二進制轉換器41與上述第一計算裝置42之產出可儲存於一第一暫存器36。
在其他情境模式選擇階段CCI或CML中,一第二計算裝置43可根據上述方程式(1)計算出一情境模式索引值ctxIdx,根據此第二計算裝置43所計算出的情境模式索引值,可從上述記憶體33中擷取取一情境模式。根據此情境模式,可從一第一查找表(LUT)51中,例如此查找表可為一8乘256位元之查找表(LUT),產生一第一小概率符號概率範圍值rLPS (range of least probable symbol)。根據上述句法元素之6位元的機率狀態索引值pStateIdx,可從上述第一查找表51中找到上述第一小概率符號概率範圍值,該第一小概率符號概率範圍值可用於二元算術單元(BAU)44中的一後續編碼或解碼程序,上述第一小概率符號概率範圍值可作為一多路控制器48的一第一輸入,而從一第二查找表52所得的一第二小概率符號概率範圍值可作為上述多路控制器48的一第二輸入,該第二小概率符號概率範圍值乃上述第二查找表52根據由上述二元算術單元(BAU)取得的一更新後的情境模式所產生的,上述多路控制器48從上述第一小概率符號概率範圍值與第二小楖率符號概率範圍值之中擇一儲存於一第二暫存器37中。在一範例中,當上述被挑選出代表目前二進制元素 的情境模式不同於前一二進制元素之代表情境模式時,多路控制器48可選擇輸出第一小概率符號概率範圍值,而當上述被挑選出代表目前二進制元素的情境模式和前一二進制元素之代表情境模式相同時,多路控制器48可選擇輸出第二小概率符號概率範圍值。在目前的範例中,上述第一查找表51與第二查找表52是兩個不同的查找表。然而在另一範例中,上述第一查找表51與第二查找表52可為一個相同的查找表。
上述二元算術單元44可根據一句法元素之類別和二進制元素索引值(binIdx)編碼一標準二進制元素、一繞道二進制元素、以及一終止二進制元素。一些句法元素和其所對應之編碼引擎列於表格2如下:
在一「情境模式讀取」運算中,從上述記憶體32中讀出上述初始化後之情境模式並將之存入記憶體33中,每處理完一個標準二進制元素,就需要將該更新後的情境模式寫回記憶體33,然後上述編碼後的參數可被轉送至上述位元產生器46,由此位元產生器進一步產生一編碼後的位元串流,上述位元產生器46可從一先進先出(FIFO)裝置38,例如此先進先出裝置可為一8乘11位元之暫存器,擷取如「EncodeFlush」、「low_renorm」、以及「range_lnz_renorm」等參數,並且產出上述編碼後位元串流的資料訊號,包括位元長度(bits_len)和位元資料(bits_data)。上述情境模式選擇階段與二元算術編碼階段可重複進行直到一句法元素的所有二進制元素都完成編碼。
上述二元算術單元44亦可根據一句法元素之類別和二進制元素索引值(binIdx)解碼一標準二進制元素、一繞道二進制元素、以及一終止二進制元素。上述初始化後之情境模式在一「情境模式讀取」運算中,被從上述記憶 體32中讀出並存入記憶體33中,一解碼後的二進制元素可被轉送至一緩衝暫存記憶體39,每解碼了一個二進制元素,上述被挑選出的情境模式就可被更新並寫回記憶體33,上述反二進制轉換器45可判定上述句法元素的所有二進制元素是否都完成解碼,並且當上述句法元素完成解碼後,根據儲存於緩衝暫存記憶體39中的解碼後的二進制元素,產生一句法元素值(SE_value),該訊號SE_value可被傳送至一H.264解析器單元(未標示於圖中)或一剩餘單元(未標示於圖中),以進行一剩餘區塊之解析流程。在一實施例中,上述訊號SE_value在一「鄰近緩衝暫存記憶體更新」(NBU)的運算中,被寫回上述第一緩衝暫存記憶體34和第一緩衝暫存記憶體35,上述情境模式選擇階段和二元算術解碼階段或反二進制化階段可重複進行直到反二進制轉換器45偵測到上述句法元素已完成解碼並且設定一完成訊號SE_Valid,例如將之設為高位準。如果上述句法元素的所有二進制元素都已完成解碼,上述更新後的情境模式將於一「情境模式寫入」(CMW)運算,從記憶體33中被讀出並寫入記憶體32。
第5A圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統之編碼程序之管線流機制圖。根據第5A、3A、3C、以及第4圖,可將一句法元素之數值二進制化為一二進制元素串流,該二進制元素串流由二進制元素0、二進制元素1、以及二進制元素2所組成。可從一個或多個鄰近區塊取得資訊(即GNB階 段),可計算得到參數condTermFlag(即CTF階段),此外,也可讀取經初始化的情境模式(即CMR階段),圖中從GNB指向CTF的虛線箭頭代表GNB執行逾CTF之前。
在週期1,可計算得到情境模式索引值「ctxIdx」(即CCI階段),且可挑選並載入一二進制元素0的情境模式(即CML階段)。
在週期2,可編碼二進制元素0(即BAU階段),然後可更新被挑選出的二進制元素0的情境模式(即CMU階段),此外,可計算得到情境模式索引值「ctxIdx」(即CCI階段),且可挑選並載入一二進制元素1的情境模式(即CML階段)。
在週期3,一二進制元素0之位元串流可被產生(即BG階段),可編碼二進制元素1並更新被挑選出的二進制元素1的情境模式(即CMU階段),此外,可計算得到情境模式索引值「ctxIdx」(即CCI階段),且可挑選並載入一二進制元素2的情境模式(即CML階段)。
在週期4,一二進制元素1之二進制元素串流可被產生(即BG階段),可編碼二進制元素2(即BAU階段),然後可更新被挑選出的二進制元素2的情境模式(即CMU階段)。
在週期5,一二進制元素2之二進制元素串流可被產出(即BG階段)。
在此管線流機制中,可運用資料遞交技巧去處理CML 階段與CMU階段之間的資料相依性,如果二進制元素i+1與二進制元素i擁有相同的情境模式索引值ctxIdx,在BAU階段中,可由多路控制器48挑選出二進制元素i之更新後的情境模式。另一資料相依性可能發生於CCI和BAU階段在解碼過程中,其中二進制元素i+1的CCI運算可能會需要用到二進制元素i之數值,此相依性使用管線暫停機制解決,至多一個巨集區塊只會有五個週期的延遲。
第5B-1和5B-2圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統之解碼程序之管線流機制圖。根據第5B-1、5B-2、3B、3C、以及第4圖,在週期0,可從多個鄰近區塊取得資訊(即GNB階段),並計算得到參數condTermFlag(即CTF階段),此外,可讀取經初始化的情境模式(即CMR階段)。
在週期1,可計算得到情境模式索引值「ctxIdx」(即CCI階段),且可挑選並載入一二進制元素0的情境模式(即CML階段)。
在週期2,可解碼二進制元素0(即BAU階段),然後可更新被挑選出的二進制元素0的情境模式(即CMU階段),該更新後的情境模式可被傳送至記憶體33,二進制元素0之一解碼後的二進制元素值可儲存於上述緩衝記憶體39,上述反二進制轉換器45 (DB)可偵測上述句法元素之解碼程序完成與否並且設定訊號SE_Valid之位準,例如將之設為低位準,此外,可計算得到情境模式索引值「ctxIdx」(即CCI階段),且可挑選並載入一二進 制元素1的情境模式(即CML階段)。
在週期3,可解碼一二進制元素1並更新對應於二進制元素1之挑選出的情境模式,該更新後的情境模式可被傳送至記憶體33,上述反二進制轉換器45 (DB)可偵測上述句法元素之解碼程序完成與否並且保持訊號SE_Valid為低位準,此外,可計算得到情境模式索引值「ctxIdx」(即CCI階段),且可挑選並載入一二進制元素2的情境模式(即CML階段)。
在週期4,類似週期3,可解碼一二進制元素2並更新二進制元素2被挑選出的情境模式,該更新後的情境模式可被傳送至記憶體33,二進制元素2之一解碼後的二進制元素值可儲存於上述緩衝記憶體39,上述反二進制轉換器45 (DB)可偵測上述句法元素之解碼程序完成與否並且保持訊號SE_Valid為低位準,此外,可計算得到情境模式索引值「ctxIdx」(即CCI階段),且可挑選並載入一二進制元素3的情境模式(即CML階段)。
在週期5,可解碼一二進制元素3並更新二進制元素3被挑選出的情境模式,該更新後的情境模式可被傳送至記憶體33,二進制元素3之一解碼後的二進制元素值可儲存於上述緩衝記憶體39,上述反二進制轉換器45 (DB)可偵測上述句法元素之解碼程序完成與否並且保持訊號SE_Valid為高位準。
接著在週期6,儲存於記憶體33的更新後之情境模式可經由情境模式寫入(CMW)運算之後寫回記憶體32, 此外,上述反二進制轉換器45可產生上述句法元素之數值,該數值即為訊號SE_Valid,並且透過上述鄰近緩衝暫存記憶體更新(NBU)運算將該訊號SE_Valid寫入到上述第一緩衝記憶體34和第二緩衝記憶體35。
根據第5A、5B-1、以及5B-2圖,上述情境模式讀取(CMR)運算可於一時脈內執行完畢,爲確保這一點,相同的一句法元素所使用的情境模式可置於上述記憶體33中的相同位址。第6A圖係顯示根據先前技術一實施例所述之複數情境模式(CMs)於一記憶體之存置方式,因為每個情境模式之長度皆為7位元,所以記憶體中一最小資料匯流排的寬度可為105(15乘7)位元,而且上述句法元素「significant _coeff _flag 」可利用15組情境模式,成為所有句法元素中長度最長的句法元素。然而,這樣的置放方式卻會造成記憶體空間未被有效運用。
第6B圖係顯示根據本發明技術之一實施範例所述之情境模式於一記憶體之存置方式。在一實施例中,將459組情境模式分隔為38個叢集,如下所示: (1)mb_skip_flag and mb_field_decoding_flag for I and P slice; (2)mb_skip_flag and mb_field_decoding_flag for B sli ce; (3)mb_type and sub_mb_ytpe for I and P slice; (4)mb_type and sub_mb_type for B slice; (5)prev_intra4x4_pred_mode_flag, prev_mtra8x8_pred_mode_flag, rem_mtra4x4_pred_mode, rem_intra8x8_pred_mode, intra_chroma_pred_mode and mb_qp_delta; (6)mvd_10 and mvd_ll; (7)ref_idx_10, ref_idx_ll and transform_size_8x8_flag; (8)coded_block_pattem; (9)coded_block_flag and coeff_abs_level_minusl for luma DC block; (10)coded_block_flag and coeff_abs_level_minusl for luma AC block; (11)coded_block_flag and coeff_abs_level_minusl for 4x4 luma block; (12)coded_block_flag and coeff_abs_level_minusl for chroma DC block; (13)coded_block_flag and coeff_abs_level_minusl for chroma AC block; (14)coded_block_flag and coeffabs_level_minusl for 8x8 luma block; (15)significant_coeff_flag for frame-coded luma DC block; (16)last_significant_coeff_flag for frame-coded luma DC block; (17)significant_coeff_flag for field_coded luma DC block; (18)last_significant_coeff_flag for field-coded luma DC block; (19)significant_coeff_flag for frame-coded luma AC block; (20)last_significant_coeff_flag for frame-coded luma AC block; (21)significant_coeff_flag for field-coded luma AC block; (22)last_significant_coeff_flag for field-coded luma AC block; (23)significant_coeff_flag for frame-coded 4x4 luma block (24)last_significant_coeff_flag for frame-coded 4x4 luma block; (25)significant_coeff_flag for field-coded 4x4 luma block; (26)last_significant_coeff_flag for ifeld-coded 4x4 luma block; (27)significant_coeff_flag for frame-coded chroma DC block; (28)last_significant_coeff_flag for frame-coded chroma DC block; (29)significant_coeff_flag for field-coded chroma DC block; (30)last_significant_coeff_flag for field-coded chroma DC block; (31)significant_coeff_flag for frame-coded chroma AC block; (32)last_significant_coeff_flag for frame-coded chroma AC block; (33)significant_coeff_flag for field-coded chroma AC block; (34)last_significant_coeff_flag for field-coded chroma AC block; (35)significant_coeff_flag for frame-coded 8x8 luma block; (36)last_significant_coeff_flag for frame-coded 8x8 luma block; (37)significant_coeff_flag for field-coded 8x8 luma block; and (38)last_significant_coeff_flag for field-coded 8x8 luma block.
上述38叢集可根據以下的規則放置於一記憶體中。
規則1:#CMs (SEi)+#CMs (SEi+1 )+…+#CMs (SEi+n )15,其中上述參數SEi 代表一第i個句法元素,且參數#CMs (SEi )代表用於編碼或解碼上述參數SEi 之情境模式數量。
規則2:SEi 、SEi+1 、…、SEi+n 依編碼或解碼順序排列。
運用了上述規則1與規則2後,如果用於一句法元素之情境模式數量小於或等於15個,則這些情境模式可以叢集為單位被整理存放於記憶體中相同的位址。根據第6B圖,每個叢集佔據一筆記憶體空間,並且可於一時脈週期被載入至一暫存器庫,例如此暫存器庫可由15個7位元之暫存器所組成。這樣的置放方式可降低記憶體空間的使用 量,從662位元組降至460位元組。另外,這樣的置放方式亦可降低記憶體的存取頻率,舉例說明,在處理完句法元素「mb _skip _flag 」之後,因為句法元素「mb _skip _flag 」與「mb _field _decoding _flag 」都屬於同一個叢集且句法元素「mb_skip_flag 」可能在被解碼的過程中已經被載入了,所以句法元素「mb _field _decoding _flag 」之情境模式就不需要再另外載入。與第6A圖所示之置放方式比較起來,第6B圖所示之目前的技術能夠讓記憶體的使用比較有效率。
第7A圖係顯示句法元素SCF[i]和LSCF[i]之間的情境模式轉換,根據第7A圖,一單二進制元素的句法元素「last_significant_coeff_flag[i]」(即LSCF[i])之處理,如H.264標準之規範,可待另一單二進制元素之句法元素「significant_coeff_flag[i]」(即SCF[i])被處理後再進行,其中上述句法元素SCF[i]和LSCF[i]之處理包含編碼與解碼的運算。在目前的範例中,一情境模式之轉換可發生於句法元素SCF[i]於週期3中完成解碼與句法元素LSCF[i]於週期4中開始解碼這兩個時間點之間,上述句法元素SCF[i]可決定在位置i之一係數是否非零,且上述句法元素LSCF[i]可指出位置i之後的句法元素是否全為零。如果句法元素SCF[i]之數值為1,則句法元素LSCF[i]存在,在此情況下,如果句法元素LSCF[i]之數值亦為1,則後續句法元素SCF全為零且不需要處理,反之,如果句法元素SCF[i]之數值為0,則句法元素LSCF[i]就不需要處理,而且可編 碼句法元素SCF[i+1],如下表格3所示:
相較於第7B圖所示之管線流機制,上述之情境模式轉換,根據H.264標準,可能需佔用管線流運作中的三個停滯的週期。第7B圖係顯示根據本發明技術之一實施範例所述之句法元素SCF[i]和LSCF[i]之一管線流處理機制。並且,第7C圖係顯示根據本發明技術之一實施範例所述之包括句法元素LSCF之暫存器庫71之一記憶體70。根據第7B圖,在週期0,可從多個鄰近區塊取得資訊(即GNB階段),並計算得到參數condTermFlag(即CTF階段),此外,可將經初始化之情境模式或句法元素SCF之情境模式叢集載入(即CMR階段)至上述記憶體70中的一暫存器庫72,如第7C圖所示。
在週期1,可計算得到情境模式索引值「ctxIdx」(即CCI階段),且可挑選並載入上述句法元素SCF[i]之一情境模式(即CML階段),此外,可將經初始化之情境模式或句法元素LSCF之情境模式叢集載入(即CMR階段)至上述記憶體70中的一暫存器庫71。
在週期2,可解碼上述句法元素SCF[i]之二進制元素 (即BAU階段),然後可更新針對上述句法元素SCF[i]之二進制元素所挑選出的情境模式(即CMU階段),如果上述句法元素SCF[i]之二進制元素之解碼後二進制元素值為1,代表句法元素LSCF[i]存在,且可計算得到情境模式索引值「ctxIdx」(即CCI階段),並可挑選和載入上述句法元素LSCF[i]之二進制元素之一情境模式(即CML階段)。如果上述句法元素SCF[i]之二進制元素之解碼後二進制元素值為0,代表句法元素LSCF[i]不需要處理,且可計算得到情境模式索引值「ctxIdx」(即CCI階段),並可挑選並載入上述句法元素SCF[i+1]之二進制元素之一情境模式(即CML階段)。
在週期3,可解碼上述句法元素LSCF[i]或SCF[i+1]之二進制元素,並更新針對上述句法元素LSCF[i]或SCF[i+1]之二進制元素所挑選出的情境模式。表格4列出一個解析度1920乘1080的影像序列在不同位元速率8M、22M、47M、以及51M bps下,每個截片的情境模式轉換數量,以本發明之管線流機制在51M bps下,每個截片大約可節省3乘382284個時脈週期。
第8圖係顯示根據本發明技術之一實施範例所述之一二進制轉換器80之電路,該二進制轉換器80可產生一二進制元素字串,且其長度係根據一句法元素之數值se_value與類別Slice_type所決定。在第3圖中,二進制轉換器80可包括5個ROM表格81~85,上述句法元素「mb _type andsub _mb _type 」可透過樹狀結構表格81產出一二進制元素字串,另,截斷表格82由句法元素「intra _chroma _prad _mode 」所使用,一元碼表格83由句法元素「ref _idx 」和「mb _qp _delta 」所使用,上述句法元素「mvd 」和「coefficient_abs_level_minusl 」可由一字首部份與字尾部分所組成,其中「mvd 」和「coefficient _abs _level _minusl 」的字首部份可包括複數截斷一元碼,其中「mvd 」的字尾部份可包括一連接一元碼3階指數哥倫布碼,而「coefficient _abs _level _minusl 」的字尾部份可包括一連接一元碼0階指數哥倫布碼。所以,一連接一元碼0階指數哥倫布碼表格84和一連接一元碼3階指數哥倫布碼表格85可結合多路控制器801和802,分別用以二進制化上述兩個句法元素之字尾部份。上述一元碼表格83與一多路控制器803可用以二進制化上述字首部份,一連接裝置86把多路控制器803所輸出的上述二進制元素字串之字首部份UEG_prefix_Bins和多路控制器804 所輸出的上述二進制元素字串之字尾部份UEG_Suffix_Bins連接在一起。然後,把上述句法元素之類別當作一控制器訊號,使一多路控制器805產生一二進制元素字串BinString。上述二進制轉換器80之另一電路運作範例將於第12A圖進行探討。
第9圖係顯示根據本發明技術一實施範例所述一二元算術單元90之電路,該二元算術單元90可包括用於情境適應性二元算術編碼與解碼系統之編碼與解碼程序之一標準引擎、一繞道引擎、以及一終止引擎。變數codIOffset(在表格5中以Offset標示)和變數codILow(在表格5中以Low標示)可於二元算術編碼的過程中被更新,另一方面,變數codIRange和codIOffset可於二元算術解碼的過程中被更新。根據H.264標準的規範,用於更新變數codIRange、codILow、以及codIOffset的演算法分別列於表格5、表格6、以及表格7如下:
表格5至7顯示在不同引擎和不同條件下,該如何重新填入上述三變數之數值。根據第9圖,除了變數Low、Offset、以及range之外,還有變數「binVal」、「valMPS」、「rLPS」也被輸入至上述二元算術單元90。其中的變數 「binVal」可由上述二進制轉換器80之多路轉換器805所產生,如第8圖所示。且變數「valMPS」和「rLPS」之數值決定於其所對應之情境模式被決定之時,上述二元算術單元90可更新變數range、Offset、以及Low之數值,並且輸出更新後的變數new_range、new_offset、以及new_low之數值。上述二元算術單元90之另一電路運作範例將於第12B圖進行探討。
上述二元算術單元90可包括一再正規化裝置,該再正規化裝置用於當上述二元算術單元進行編碼和解碼程序之變數codIRange小於256時,進行一再正規化程序。第10圖係顯示根據本發明技術一實施範例所述一再正規化裝置100之電路,圖中的再正規化裝置100可從上述二元算術單元90接收變數new_range、new_offset、以及new_low之數值,一前導零偵測(LZD)裝置101可決定需要把變數codIRange、codILow、以及codIOffset中的多少個位元往左位移,當上述情境適應性二元算術編碼與解碼系統在編碼模式下且變數codIRange的值小於256時,可將上述三個參數range_lzn_renorm、low_renorm、以及EncodeFlush放入一先進先出裝置102。上述再正規化裝置100之另一範例電路將於第12C圖進行探討。
第11圖係顯示根據本發明技術一實施範例所述一位元產生器110之電路,圖中的位元產生器110可包括一控制執行流程之有限狀態機(FSM),一前導零偵測裝置111用於偵測一變數low_mux之前導零數量,其中變數 low_mux是第10圖中從先進先出裝置102的變數low_renorm中挑選出來的。一前導壹偵測(LOD)裝置112用以偵測一變數low_mux之前導壹數量。上述位元產出裝置110可產生三個輸出訊號「bit-write-enable」(bwe)、「bits_len」、以及「bits」,其中的訊號「bits」代表一編碼位元串流,訊號「bits_len」代表該編碼位元串流之長度,訊號「bwe」代表訊號「bits」為合法。上述位元產出裝置110之另一電路運作範例將於第12D圖進行探討。
列於表格1中的句法元素「mb_type」的編碼流程之電路運作範例顯示於第12A至12D圖,第12A圖係顯示第8圖中二進制轉換器80之一範例電路,根據第12A圖,句法元素mb_type有一I截片類別與一數值,例如此數值為25。此外,可從表格1發現句法元素mb_type之二進制化類別是樹狀結構。針對句法元素mb_type之截片類別和數值,上述樹狀結構表格81可產生一輸出值2'b11,該輸出值代表一長度為二位元之二進位數值「11」。上述多路控制器805根據一值為0之選擇器訊號se_type,選擇上述樹狀結構表格81之輸出值2'b11為其輸出,因此,上述二進制轉換器80根據上述數值為25之句法元素,將上述句法元素二進制化為一二進制元素字串2'b11。
第12B圖係顯示第9圖中二元算術單元90之一電路運作範例,根據第12B圖,變數「binVal」之起始數值為1,該值即為上述二進制元素字串2'b11之第一二進制元素值。變數「binVal」之次一數值也是1,該值即為上述二進 制元素字串2'b11之第二也是最後的二進制元素值。在表示法「1(1)」中,括號外的1指的是變數「binVal」之起始數值,而在括號裡的1指的是變數「binVal」之次一數值。此外,可假設在編碼變數「binVal」的時候,變數「valMPS」、「Low」、「range」、以及「rLPS」之初始值分別為0、374、458、以及150。變數「Offset」用於解碼程序而非編碼程序,所以沒有值。
比較裝置901比較變數「binVal」與「valMPS」的值之後可輸出一數值0。一第一加法器905將變數「range」的值減去變數「rLPS」的值後輸出一數值308。在一編碼程序中,多路控制器902、903、906、907、以及910的選擇器訊號「decoder」可設為0,且多路控制器902、903、906、907、以及910可根據上述控制器訊號選擇輸入端0為一輸出。在其他範例中,在一解碼程序中,選擇器訊號「decoder」可設為1,如此一來,上述二元算術單元90就能夠根據多路控制器之選擇腳位來決定要作為一情境適應性二元算術編碼與解碼系統之編碼器或解碼器。此外,當在編碼一標準二進制元素時,一多路控制器909之選擇器訊號「dec_mode」可設為00。一第二加法器912將多路控制器904和906之輸出值374和308加總成一數值682並將該數值輸出。多路控制器907和908之控制器訊號來自於多路控制器902之輸出。接著,多路控制器909的輸出變數new_range的值為150,且多路控制器910的輸出變數new_offset和new_low的值為682。既然變數new_range 的值小於256,則需要執行一再正規化程序。
第12C圖係顯示第10圖中再正規化裝置100之一電路運作範例,根據第12C圖,上述二元算術單元90之輸出變數new_range、new_offset、以及new_low可作為再正規化裝置100之輸入。由於上述前導零偵測裝置101之輸入值為150,150的二進位表示法為010010110,前導零數量為1,故該裝置輸出一數值1。根據上述前導零偵測裝置101之輸出,一第一左位移器103將010010110向左位移一個位元,使之成為100101100,其值為300,大於256,且為輸入變數new_range的兩倍值,也就是說,第12B圖中變數「range」的值被更新為300,此更新後的值可用於編碼次一二進制元素。此外,根據上述前導零偵測器之輸出,一第二左位移器108將一多路控制器104之輸出值682向左位移一個位元,該值之二進位表示法為010010110,左移後,得到0101010100,值為340。及閘模組107可將二元格式之0101010100和值為10'hlff之變數mask_bits作一及邏輯運算,然後得到一數值340,其中10'hlff表示一長度為10位元的16進位數值1ff,其二進位表示法為0111111111。
變數low_renorm和range_lzn_renorm的值是由多路控制器105和106的輸出而定。如果目前由一終止引擎進行編碼之一終止二進制元素的數值不為0,變數EncodeFlush的值則設為0;反之,如果上述終止二進制元素的數值為0,變數EncodeFlush的值則設為1。將變數low_renorm、 range_lzn_renorm、以及EncodeFlush的值放進先進先出裝置102。
第12D圖係顯示第11圖中位元產生器110之一範例電路,根據第12D圖,上述再正規化裝置100決定了變數low_renorm和range_lzn的值,其中變數low_renorm的值為682,二進位表示法為1010101010;另,其中變數range_lzn的值為1。一多路控制器113將變數low_renorm的二進位值1010101010的第9到第4個位元101010取出,然後填入變數low_mux。根據上述多路控制器114,上述前導壹偵測器111偵測出變數low_mux的前導壹數量為1,然後將此數量值輸入至一多路控制器114。根據上述多路控制器114之輸出,一左位移器115將1010101010向左位移一個位元,得到一新的二進位值0101010100。可假設變數bitOutStanding的值為2,且不增加其值。既然上述訊號bwe為高位準,則可產生一值為0之二位元串流。
往回參照第12B圖,在第一二進制元素編碼後,第二也是最後一二進制元素也編碼完畢。在再正規化裝置100對第一二進制元素進行編碼的過程中,變數Low和range的值也得到更新。假設變數valMPS和rLPS的值分別為0和2。將多路控制器909之控制器訊號「dec_mode」設為10,代表是終止模式,因為最後一二進制元素也已編碼完畢。由於變數new_range的值為298,大於256,故在再正規化裝置100中則不再將其值倍增。再往回參照第12C圖,變數range_out的值為298。
本發明雖以範例揭露如上,然其並非用以限定本發明的範圍,任何熟習此項技藝者,在不脫離本發明之精神和範圍內,當可做些許的更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
10‧‧‧位元串流
11‧‧‧截片標頭
12‧‧‧截片資料
13‧‧‧巨集區塊
14‧‧‧句法元素
15‧‧‧二進制元素
20‧‧‧初始化情境模式
21、41、80‧‧‧二進制轉換器
22‧‧‧情境模式選擇器
23‧‧‧二元算術編碼器
24‧‧‧更新情境模式
25、46、110‧‧‧位元產生器
26‧‧‧二元算術解碼器
27、45‧‧‧反二進制轉換器
31、32、33、39‧‧‧記憶體
34、35‧‧‧緩衝暫存記憶體
36‧‧‧第一暫存器
37‧‧‧第二暫存器
38、102‧‧‧先進先出裝置
40‧‧‧情境適應性二元算術編碼與解碼系統
42、43‧‧‧計算裝置
44、90‧‧‧二元算術單元
47‧‧‧初始化模組
48、801、802、803、804、805、902、903、904、906、907、908、909、910、104、105、106、113、114‧‧‧多路控制器
51‧‧‧第一查找表
52‧‧‧第二查找表
81‧‧‧樹狀結構表格
82‧‧‧截斷表格
83‧‧‧一元碼表格
84‧‧‧連接一元碼0階指數哥倫布碼表格
85‧‧‧連接一元碼3階指數哥倫布碼表格
86‧‧‧連接裝置
901‧‧‧比較裝置
905‧‧‧第一加法器
912‧‧‧第二加法器
100‧‧‧再正規化裝置
101、112‧‧‧前導零偵測裝置
103‧‧‧第一左位移器
107‧‧‧及閘模組
108‧‧‧第二左位移器
111‧‧‧前導壹偵測裝置
115‧‧‧左位移器
SE_Value、SE_Valid‧‧‧訊號
ctxIdx‧‧‧情境模式索引值
EncodeFlush、low_renorm、range_lnz_renorm‧‧‧參數
bits_len、bits_data、bwe、bits‧‧‧訊號
inb_skip_flag、mb_field_decoding_flag、mb_type、sub_mb_type、prev_intra4x4_pred_mode_flag、coded_block_flag、significant_coeff_flag、last_significant_coeff_flag、coeff_abs_level_minusl、SCF[i]、LSCF[i]、SCF[i+1]、mvd‧‧‧句法元素
ctxBlockCat‧‧‧情境區塊類別
Slice_type‧‧‧句法元素類別
se_value‧‧‧句法元素數值
UEG_Prefix_Bins‧‧‧二進制元素字串之字首部份
UEG_Suffix_Bins‧‧‧二進制元素字串之字尾部份
BinString‧‧‧二進制元素字串
binVal、valMPS、Low、Offset、range、rLPS、rMPS、mask_bits、new_range、new_offset、new_low、range_out、offset_out、low_out、bitOutStanding、low_mux‧‧‧變數
decoder、bypass、Decoder&Terminate、dec_mode‧‧‧選 擇器訊號
第1圖係顯示根據標準H.264/AVC中高等型等級4.1的一範例位元串流之結構。
第2A圖係顯示情境適應性二元算術編碼與解碼之一編碼演算法流程圖。
第2B圖係顯示情境適應性二元算術編碼與解碼之一解碼演算法流程圖。
第3A圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統之編碼程序之管線流階段圖。
第3B圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統之解碼程序之管線流階段圖。
第3C圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統之編碼與解碼程序之管線流階段圖。
第4圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統。
第5A圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統之編碼程序之管線流機制圖。
第5B-1圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統之解碼程序之管線 流機制圖之時脈週期0至時脈週期3。
第5B-2圖係顯示根據本發明技術之一實施範例所述之情境適應性二元算術編碼與解碼系統之解碼程序之管線流機制圖之時脈週期4至時脈週期6。
第6A圖係顯示根據先前技術一實施例所述之情境模式於一記憶體之存置方式。
第6B圖係顯示根據本發明技術之一實施範例所述之情境模式於一記憶體之存置方式。
第7A圖係顯示句法元素SCF[i]和LSCF[i]之間的情境模式轉換。
第7B圖係顯示根據本發明技術之一實施範例所述之句法元素SCF[i]和LSCF[i]之一管線流處理機制。
第7C圖係顯示根據本發明技術之一實施範例所述之包括句法元素LSCF之暫存器庫之一記憶體。
第8圖係顯示根據本發明技術之一實施範例所述之一二進制轉換器之電路。
第9圖係顯示根據本發明技術之一實施範例所述之一二元算術單元之電路。
第10圖係顯示根據本發明技術之一實施範例所述之一再正規化裝置之電路。
第11圖係顯示根據本發明技術之一實施範例所述之一位元產生器之電路。
第12A圖係顯示第8圖中二進制轉換器之一電路運作範例。
第12B圖係顯示第9圖中二元算術單元之一電路運作範例。
第12C圖係顯示第20圖中再正規化裝置之一電路運作範例。
第12D圖係顯示第11圖中位元產生器之一電路運作範例。
31、32、33、39‧‧‧記憶體
34、35‧‧‧緩衝暫存記憶體
36‧‧‧第一暫存器
37‧‧‧第二暫存器
38‧‧‧先進先出裝置
40‧‧‧情境適應性二元算術編碼與解碼系統
41‧‧‧二進制轉換器
42、43‧‧‧計算裝置
44‧‧‧二元算術單元
45‧‧‧反二進制轉換器
46‧‧‧位元產生器
47‧‧‧初始化模組
48‧‧‧多路控制器
51‧‧‧第一查找表
52‧‧‧第二查找表

Claims (30)

  1. 一種情境適應性二元算術編碼與解碼系統,包括:一計算裝置,用以計算對應於執行編碼的一第一二進制元素和執行解碼的一第二二進制元素之一者之一索引值;一記憶體,以叢集為單位儲存複數情境模式,其中每一叢集被載入為處理之一單一單位,至少一叢集包括了以句法元素處理之一順序排列之多重情境模式,對應於上述第一二進制元素和上述第二二進制元素之一者之上述索引值與上述情境模式之一者相關;以及一二元算術單元,用以根據與上述索引值相關之上述情境模式作為編碼上述第一二進制元素之一編碼器或解碼上述第二二進制元素之一解碼器之一者。
  2. 如申請專利範圍第1項所述之情境適應性二元算術編碼與解碼系統,更包括一二進制轉換器,用以根據一句法元素之數值將上述句法元素二進制化為一二進制元素字串。
  3. 一種情境適應性二元算術編碼與解碼系統,包括:一計算裝置,用以計算對應於執行編碼的一第一二進制元素和執行解碼的一第二二進制元素之一者之一索引值;一記憶體,以叢集為單位儲存複數情境模式,其中對應於上述第一二進制元素和上述第二二進制元素之一者之上述索引值與上述情境模式之一者相關;以及 一二元算術單元,用以根據與上述索引值相關之上述情境模式作為編碼上述第一二進制元素之一編碼器或解碼上述第二二進制元素之一解碼器之一者,其中上述二元算術單元包括至少一個由一選擇器訊號所控制的多路控制器,而上述選擇器訊號之數值與上述第一二進制元素的編碼狀態和上述第二二進制元素的解碼狀態之一者相關。
  4. 如申請專利範圍第1項所述之情境適應性二元算術編碼與解碼系統,其中上述二元算術單元包括一前導零偵測器,用以偵測上述二元算術單元的一第一輸出於二元型態所具有前導零之一既定數目;以及一左位移器,用以在上述第一輸出小於一預設值的情況下,把上述第一輸出的二元型態向左位移上述既定數目之位元。
  5. 如申請專利範圍第2項所述之情境適應性二元算術編碼與解碼系統,更包括一位元產生器,用以產生對應於上述二進制元素字串中每個二進制元素之一位元字串。
  6. 如申請專利範圍第1項所述之情境適應性二元算術編碼與解碼系統,更包括:一緩衝暫存記憶體,儲存對應於一句法元素中每個二進制元素之一二進制元素值;以及一反二進制轉換器,偵測上述句法元素之解碼程序是否完成,並且當上述句法元素之解碼程序完成時,根據上述句法元素中每個二進制元素的二進制元素值輸出一句法元素值。
  7. 如申請專利範圍第1項所述之情境適應性二元算術 編碼與解碼系統,更包括:一第一緩衝暫存記憶體,儲存來自一上方區塊之資訊;一第二緩衝暫存記憶體,儲存來自一左方區塊之資訊,其中上述計算裝置包括一第一計算模組,根據上述第一緩衝暫存記憶體與上述第二緩衝暫存記憶體所儲存之資訊計算出一第一變數。
  8. 如申請專利範圍第7項所述之情境適應性二元算術編碼與解碼系統,其中上述計算裝置包括一第二計算模組,根據上述第一變數值計算出上述索引值。
  9. 如申請專利範圍第1項所述之情境適應性二元算術編碼與解碼系統,其中上述二元算術單元用以更新與上述索引值相關之上述情境模式,並將更新的上述情境模式儲存於上述記憶體。
  10. 如申請專利範圍第9項所述之情境適應性二元算術編碼與解碼系統,更包括:一第一查找表,用以根據與上述索引值相關之上述情境模式產生一第二變數之一第一數值;一第二查找表,用以根據更新的上述情境模式產生上述第二變數之一第二數值;以及一多路控制器,選取上述第一數值與上述第二數值之一者。
  11. 如申請專利範圍第1項所述之情境適應性二元算術編碼與解碼系統,其中上述記憶體包括一第一暫存器庫,儲存一句法元素「last_significant_coeff_flag」(LSCF)之 情境模式叢集;以及一第二暫存器庫,儲存其他句法元素之情境模式叢集。
  12. 如申請專利範圍第1項所述之情境適應性二元算術編碼與解碼系統,其中上述記憶體用以於複數記憶體位址儲存情境模式叢集,其中上述情境模式叢集滿足以下條件: 其中參數SEi 表示一第i個句法元素,參數#CMS(SEi )表示依序處理參數SEi 、SEi+1 、...、SEi+n 過程中所使用的上述情境模式之數量,參數P表示所有上述句法元素中各句法元素之上述情境模式之一情境模式組之最大數量。
  13. 一種情境適應性二元算術編碼與解碼方法,適用於一管線流,包括:在一第一時脈週期根,讀取與具有M個二進制元素之一句法元素相關之複數情境模式,自至少一鄰近區塊取得資訊,並且據上述自至少一鄰近區塊所取得之上述資訊為上述句法元素計算出一變數;在一第二時脈週期,根據上述變數計算出對應於上述句法元素之一第一二進制元素的一第一索引值,並且根據上述第一索引值載入對應於上述第一二進制元素之上述情境模式之一者;在一第三時脈週期,根據對應於上述第一二進制元素之上述情境模式之一者在一編碼程序和一解碼程序之一者處理上述第一二進制元素,並且於處理完上述第一二進制元素後更新上述情境模式之一者; 在上述第三時脈週期,根據上述變數計算出對應於上述句法元素之一第二二進制元素的一第二索引值,並且根據上述第二索引值載入對應於上述第二二進制元素之上述情境模式之一者;以及在一第四時脈週期,根據對應於上述第二二進制元素之上述情境模式之一者在上述編碼程序和上述解碼程序之一者處理上述第二二進制元素,並且於處理完上述第二二進制元素後更新上述情境模式之一者。
  14. 如申請專利範圍第13項所述之情境適應性二元算術編碼與解碼方法,更包括:在一第i+1時脈週期,根據上述變數計算對應於上述句法元素之一第i個二進制元素之一第i個索引值,並且根據上述第i個索引值載入對應於上述第i個二進制元素之上述情境模式之一者;以及在一第i+2時脈週期,根據相關於上述第i個二進制元素之上述情境模式之一者,在一編碼程序和一解碼程序之一者處理上述第i個二進制元素,並且於處理完上述第i個二進制元素後更新上述情境模式之一者,其中i小於上述M值。
  15. 如申請專利範圍第13項所述之情境適應性二元算術編碼與解碼方法,更包括:在一第i+1時脈週期,根據上述變數計算對應於上述句法元素之一第i個二進制元素之一第i個索引值,並且根據上述第i個索引值載入對應於上述第i個二進制元素之上 述情境模式之一者;在一第i+2時脈週期,編碼上述第i個二進制元素,並且更新相關於上述第i個二進制元素之上述情境模式之一者;以及在一第i+3時脈週期,產生對應於上述第i個二進制元素之一編碼位元字串。
  16. 如申請專利範圍第15項所述之情境適應性二元算術編碼與解碼方法,更包括:在上述第i+1時脈週期,根據上述變數計算對應於上述句法元素之一第i+1個二進制元素之一第i+1個索引值,並且根據上述第i+1個索引值載入對應於上述第i+1個二進制元素之上述情境模式之一者;在上述第i+3時脈週期,編碼上述第i+1個二進制元素,並且更新相關於上述第i+1個二進制元素之上述情境模式之一者;以及在一第i+4時脈週期,產生對應於上述第i+1個二進制元素之一編碼位元字串。
  17. 如申請專利範圍第16項所述之情境適應性二元算術編碼與解碼方法,更包括:在上述第i+2時脈週期,根據上述變數計算對應於上述句法元素之一第i+2個二進制元素之一第i+2個索引值,並且根據上述第i+2個索引值載入對應於上述第i+2個二進制元素之上述情境模式之一者;在上述第i+4時脈週期,編碼上述第i+2個二進制元 素,並且更新相關於上述第i+2個二進制元素之上述情境模式之一者;以及在一第i+5時脈週期,產生對應於上述第i+2個二進制元素之一編碼位元字串。
  18. 如申請專利範圍第13項所述之情境適應性二元算術編碼與解碼方法,更包括:在一第i+1時脈週期,根據上述變數計算對應於上述句法元素之一第i個二進制元素之一第i個索引值,並且根據上述第i個索引值載入對應於上述第i個二進制元素之上述情境模式之一者;在一第i+2時脈週期,解碼上述第i個二進制元素,並且更新相關於上述第i個二進制元素之上述情境模式之一者;以及在上述第i+2時脈週期,儲存對應於上述第i個二進制元素之一解碼二進制元素值,並且偵測上述句法元素之解碼程序是否已完成。
  19. 如申請專利範圍第18項所述之情境適應性二元算術編碼與解碼方法,更包括:在一第i+2時脈週期,根據上述變數計算對應於上述句法元素之一第i+1個二進制元素之一第i+1個索引值,並且根據上述第i+1個索引值載入對應於上述第i+1個二進制元素之上述情境模式之一者;在一第i+3時脈週期,解碼上述第i+1個二進制元素,並且更新相關於上述第i+1個二進制元素之上述情境模式 之一者;以及在上述第i+3時脈週期,儲存對應於上述第i+1個二進制元素之一解碼二進制元素值,並且偵測上述句法元素之解碼程序是否已完成。
  20. 如申請專利範圍第19項所述之情境適應性二元算術編碼與解碼方法,更包括:在一第i+3時脈週期,根據上述變數計算對應於上述句法元素之一第i+2個二進制元素之一第i+2個索引值,並且根據上述第i+2個索引值載入對應於上述第i+2個二進制元素之上述情境模式之一者;在一第i+4時脈週期,解碼上述第i+2個二進制元素,並且更新相關於上述第i+2個二進制元素之上述情境模式之一者;以及在上述第i+4時脈週期,儲存對應於上述第i+2個二進制元素之一解碼二進制元素值,並且偵測上述句法元素之解碼程序是否已完成。
  21. 如申請專利範圍第20項所述之情境適應性二元算術編碼與解碼方法,更包括:在一第M+1時脈週期,根據上述變數計算對應於上述句法元素之一第M個二進制元素之一第M個索引值,並且根據上述第M個索引值載入對應於上述第M個二進制元素之上述情境模式之一者;在一第M+2時脈週期,解碼上述第M個二進制元素,並且更新相關於上述第M個二進制元素之上述情境模式之 一者;以及在上述第M+2時脈週期,儲存對應於上述第M個二進制元素之一解碼二進制元素值,並且偵測上述句法元素之解碼程序是否已完成。
  22. 如申請專利範圍第21項所述之情境適應性二元算術編碼與解碼方法,更包括:在上述M+2時脈週期,反二進制化上述句法元素,並且取得上述句法元素之數值;以及在一第M+3時脈週期,寫回相關於上述每個第i個二進制元素的上述複數情境模式,其中i值由1到M。
  23. 如申請專利範圍第22項所述之情境適應性二元算術編碼與解碼方法,更包括:在上述第M+3時脈週期,將上述句法元素之數值寫入一第一緩衝暫存記憶體與一第二緩衝暫存記憶體,其中上述第一緩衝暫存記憶體用以儲存來自一上方區塊的資訊,其中上述第二緩衝暫存記憶體用以儲存來自一左方區塊的資訊。
  24. 如申請專利範圍第13項所述之情境適應性二元算術編碼與解碼方法,更包括:在上述第一時脈週期,根據上述句法元素之一數值將上述句法元素二進制化成一二進制元素字串。
  25. 如申請專利範圍第13項所述之情境適應性二元算術編碼與解碼方法,更包括:以叢集為單位將情境模式儲存於一記憶體的複數記憶 體位址儲存,其中上述情境模式叢集滿足以下條件: 其中參數SEi 表示一第i個句法元素,參數#CMs(SEi )表示依序處理參數SEi 、SEi+1 、...、SEi+n 過程中所使用的上述情境模式之數量,參數P表示所有上述句法元素中各句法元素之上述情境模式之一情境模式組之最大數量。
  26. 一種情境適應性二元算術編碼與解碼方法,適用於一管線流,包括:在一第一時脈週期,讀取相關於一第一句法元素之複數情境模式,自至少一鄰近區塊取得資訊,並且根據該資訊計算出一變數;在一第二時脈週期,根據上述變數計算對應於上述第一句法元素之一第一二進制元素之一第一索引值,並且根據上述第一索引值載入對應於上述第一句法元素之上述第一二進制元素之上述情境模式之一者;在上述第二時脈週期,讀取相關於一第二句法元素之複數情境模式,其中上述第一句法元素與上述第二句法元素在資料處理程序中是同時出現的;在一第三時脈週期,根據相關於上述第一句法元素之上述第一二進制元素之上述情境模式之一者,解碼上述第一句法元素之上述第一二進制元素,並且取得上述第一句法元素之上述第一二進制元素值;在上述第三時脈週期,根據上述變數計算對應於上述第二句法元素之一第一二進制元素之一第一索引值,並且 針對上述第一句法元素之上述第一二進制元素值等級之一者,根據上述第一索引值載入對應於上述第二句法元素之上述第一二進制元素之上述情境模式之一者;以及在上述第三時脈週期,根據上述變數計算對應於上述第一句法元素之一第二二進制元素之一第二索引值,並且針對上述第一句法元素之上述第一二進制元素值等級之另一者,根據上述第二索引值載入對應於上述第一句法元素之上述第二二進制元素之上述情境模式之一者。
  27. 如申請專利範圍第26項所述之情境適應性二元算術編碼與解碼方法,其中上述第一句法元素包括一句法元素「significant_coeff__flag」,並且上述之第二句法元素包括一句法元素「last_significant_coeff_flag」。
  28. 如申請專利範圍第26項所述之情境適應性二元算術編碼與解碼方法,更包括:在一第i+1時脈週期,根據上述變數計算對應於上述第一句法元素之一第i個二進制元素之一第i個索引值,並且根據上述第i個索引值載入對應於上述第一句法元素之上述第i個二進制元素之上述情境模式之一者;在一第i+2時脈週期,根據相關於上述第一句法元素之上述第i個二進制元素之上述情境模式之一者,解碼上述第一句法元素之上數第i個二進制元素,並且取得上述第一句法元素之上述第i個二進制元素之一數值;在上述第i+2時脈週期,根據上述變數計算對應於上述第二句法元素之一第i個二進制元素之一第i個索引值, 並且針對上述第一句法元素之上數第i個二進制元素值等級之一者,根據上述第i個索引值載入上述第二句法元素之上數第i個二進制元素之上述情境模式之一者;以及在上述第i+2時脈週期,根據上述變數計算對應於上述第一句法元素之一第i+1個二進制元素之一第i+1個索引值,並且針對上述第一句法元素之第i個二進制元素值等級之另一者,根據上述第i+1個索引值載入上述第一句法元素之上數第i+1個二進制元素之上述情境模式之一者。
  29. 如申請專利範圍第26項所述之情境適應性二元算術編碼與解碼方法,更包括:以叢集為單位將情境模式儲存於一記憶體的複數記憶體位址儲存,其中上述情境模式叢集滿足以下條件: 其中參數SEi 表示一第i個句法元素,參數#CMs(SEi )表示依序處理參數SEi 、SEi+1 、...、SEi+n 過程中所使用的上述情境模式之數量,參數P表示所有上述句法元素中各句法元素之上述情境模式之一情境模式組之最大數量。
  30. 如申請專利範圍第26項所述之情境適應性二元算術編碼與解碼方法,更包括:指定一第一暫存器庫儲存對應於上述第二句法元素「last_significant_coeff_flag」(LSCF)之一情境模式叢集;以及指定一第二暫存器庫儲存對應於上述其他句法元素, 包括上述第一句法元素,之複數情境模式叢集。
TW097138375A 2007-10-16 2008-10-06 情境適應性二元算術編碼與解碼之系統與方法 TWI396446B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US98025607P 2007-10-16 2007-10-16
US12/189,457 US7777654B2 (en) 2007-10-16 2008-08-11 System and method for context-based adaptive binary arithematic encoding and decoding

Publications (2)

Publication Number Publication Date
TW200920141A TW200920141A (en) 2009-05-01
TWI396446B true TWI396446B (zh) 2013-05-11

Family

ID=40352378

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097138375A TWI396446B (zh) 2007-10-16 2008-10-06 情境適應性二元算術編碼與解碼之系統與方法

Country Status (5)

Country Link
US (1) US7777654B2 (zh)
EP (3) EP2978136A1 (zh)
JP (1) JP4886755B2 (zh)
KR (1) KR100955418B1 (zh)
TW (1) TWI396446B (zh)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008289125A (ja) * 2007-04-20 2008-11-27 Panasonic Corp 算術復号化装置及びその方法
JP4382840B2 (ja) * 2007-08-20 2009-12-16 Nttエレクトロニクス株式会社 2値算術符号化装置
US20100040136A1 (en) * 2008-08-13 2010-02-18 Horizon Semiconductors Ltd. Method for performing binarization using a lookup table
TWI482499B (zh) * 2008-10-03 2015-04-21 Ind Tech Res Inst 影像訊號處理裝置和方法
CN101500164B (zh) * 2008-12-31 2011-09-28 深圳市同洲电子股份有限公司 算术编码的打包输出的方法和装置
KR101527085B1 (ko) * 2009-06-30 2015-06-10 한국전자통신연구원 인트라 부호화/복호화 방법 및 장치
WO2011048098A1 (en) 2009-10-20 2011-04-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, audio decoder, method for encoding an audio information, method for decoding an audio information and computer program using a detection of a group of previously-decoded spectral values
WO2011086067A1 (en) 2010-01-12 2011-07-21 Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, audio decoder, method for encoding and decoding an audio information, and computer program obtaining a context sub-region value on the basis of a norm of previously decoded spectral values
US7961122B1 (en) * 2010-02-03 2011-06-14 Himax Media Solutions, Inc. Multi-bin CABAC bypass bin decoder
ES2904650T3 (es) 2010-04-13 2022-04-05 Ge Video Compression Llc Codificación de vídeo que usa subdivisiones multiárbol de imágenes
CN106454371B (zh) 2010-04-13 2020-03-20 Ge视频压缩有限责任公司 解码器、数组重建方法、编码器、编码方法及存储介质
CN106067984B (zh) 2010-04-13 2020-03-03 Ge视频压缩有限责任公司 跨平面预测
TWI678916B (zh) 2010-04-13 2019-12-01 美商Ge影像壓縮有限公司 樣本區域合倂技術
TWI403170B (zh) * 2010-05-21 2013-07-21 Univ Nat Chiao Tung 背景調適性二進制算術解碼裝置及其解碼方法
US9591320B2 (en) 2010-07-15 2017-03-07 Texas Instruments Incorporated Context and bypass encoding video
EP2599315B1 (en) * 2010-07-28 2019-09-04 Nokia Technologies Oy Method and apparatus for providing complexity balanced entropy coding
HUE040406T2 (hu) * 2010-08-17 2019-03-28 Samsung Electronics Co Ltd Video dekódolási eljárás felhasználva variábilis fa szerkezetû transzformációs egységet
CN102231830B (zh) * 2010-11-23 2013-04-17 浙江大学 用于上下文算术编解码的运算单元
CN102595108B (zh) * 2011-01-05 2017-02-01 中兴通讯股份有限公司 一种语法元素的编码方法及装置
WO2012134246A2 (ko) * 2011-04-01 2012-10-04 엘지전자 주식회사 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
US10123053B2 (en) * 2011-05-23 2018-11-06 Texas Instruments Incorporated Acceleration of bypass binary symbol processing in video coding
CA2837532C (en) 2011-06-23 2018-10-02 Panasonic Corporation Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
USRE47366E1 (en) 2011-06-23 2019-04-23 Sun Patent Trust Image decoding method and apparatus based on a signal type of the control parameter of the current block
KR102067683B1 (ko) 2011-06-24 2020-01-17 선 페이턴트 트러스트 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치
JPWO2012176465A1 (ja) 2011-06-24 2015-02-23 パナソニック株式会社 復号方法及び復号装置
CN106878715B (zh) 2011-06-27 2019-05-28 太阳专利托管公司 编码方法及编码装置
AU2012277215B2 (en) 2011-06-28 2016-07-07 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
PL2728864T3 (pl) * 2011-06-28 2018-05-30 Nec Corporation Sposób kodowania parametru kwantowania wideo i sposób dekodowania parametru kwantowania wideo
MX2013010892A (es) 2011-06-29 2013-12-06 Panasonic Corp Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
US9258565B1 (en) * 2011-06-29 2016-02-09 Freescale Semiconductor, Inc. Context model cache-management in a dual-pipeline CABAC architecture
US8798139B1 (en) 2011-06-29 2014-08-05 Zenverge, Inc. Dual-pipeline CABAC encoder architecture
JP5905884B2 (ja) 2011-06-30 2016-04-20 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 復号方法及び復号装置
KR102060619B1 (ko) 2011-06-30 2019-12-30 선 페이턴트 트러스트 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치
MY193611A (en) 2011-07-01 2022-10-20 Samsung Electronics Co Ltd Method and apparatus for entropy encoding using hierarchical data unit, and method and apparatus for decoding
CN103765885B (zh) 2011-07-11 2017-04-12 太阳专利托管公司 图像解码方法、图像编码方法、图像解码装置、图像编码装置及图像编解码装置
EP2988511A1 (en) * 2011-08-04 2016-02-24 MediaTek Inc. Method and apparatus for reordered binarization of syntax elements in cabac
EP2779643A4 (en) * 2011-11-08 2015-09-02 Samsung Electronics Co Ltd METHOD AND DEVICE FOR VIDEO ARITHMETIC ENCODING, AND METHOD AND DEVICE FOR VIDEO ARITHMETIC DECODING
WO2013068548A2 (en) 2011-11-11 2013-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Efficient multi-view coding using depth-map estimate for a dependent view
IN2014KN00990A (zh) 2011-11-11 2015-10-09 Fraunhofer Ges Forschung
US20130272373A1 (en) * 2011-11-15 2013-10-17 Intel Corporation Video encoder with 2-bin per clock cabac encoding
WO2013072484A1 (en) 2011-11-18 2013-05-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Multi-view coding with efficient residual handling
US9729884B2 (en) 2012-01-18 2017-08-08 Lg Electronics Inc. Method and device for entropy coding/decoding
US9860527B2 (en) 2012-01-19 2018-01-02 Huawei Technologies Co., Ltd. High throughput residual coding for a transform skipped block for CABAC in HEVC
US10616581B2 (en) * 2012-01-19 2020-04-07 Huawei Technologies Co., Ltd. Modified coding for a transform skipped block for CABAC in HEVC
US20130188736A1 (en) 2012-01-19 2013-07-25 Sharp Laboratories Of America, Inc. High throughput significance map processing for cabac in hevc
US9654772B2 (en) 2012-01-19 2017-05-16 Qualcomm Incorporated Context adaptive entropy coding with a reduced initialization value set
US9743116B2 (en) 2012-01-19 2017-08-22 Huawei Technologies Co., Ltd. High throughput coding for CABAC in HEVC
US9654139B2 (en) 2012-01-19 2017-05-16 Huawei Technologies Co., Ltd. High throughput binarization (HTB) method for CABAC in HEVC
KR102097668B1 (ko) 2012-01-20 2020-04-06 지이 비디오 컴프레션, 엘엘씨 변환 계수 코딩
CN103220509B (zh) * 2012-01-21 2017-12-15 中兴通讯股份有限公司 自适应控制算术编码bin数量的方法、编码器和解码器
TWI514851B (zh) * 2012-02-15 2015-12-21 Novatek Microelectronics Corp 影像編碼/解碼系統與其方法
CN103260023A (zh) * 2012-02-21 2013-08-21 联咏科技股份有限公司 图像编码/解码系统与其方法
US10158855B2 (en) * 2012-03-08 2018-12-18 Sun Patent Trust Image decoding method, and image decoding apparatus using a selected context related to neighboring coefficients
US9584802B2 (en) * 2012-04-13 2017-02-28 Texas Instruments Incorporated Reducing context coded and bypass coded bins to improve context adaptive binary arithmetic coding (CABAC) throughput
ES2729781T3 (es) * 2012-06-01 2019-11-06 Velos Media Int Ltd Dispositivo de decodificación aritmética, aparato de decodificación de imágenes, dispositivo de codificación aritmética y aparato de codificación de imágenes
KR101835358B1 (ko) 2012-10-01 2018-03-08 지이 비디오 컴프레션, 엘엘씨 향상 레이어 예측에 대한 인터-레이어 예측 기여를 이용한 스케일러블 비디오 코딩
US10009606B2 (en) * 2012-10-11 2018-06-26 Nvidia Corporation Low power context adaptive binary arithmetic decoder engine
CA2908115C (en) * 2013-07-08 2019-02-12 Mediatek Singapore Pte. Ltd. Method of simplified cabac coding in 3d video coding
US9455743B2 (en) * 2014-05-27 2016-09-27 Qualcomm Incorporated Dedicated arithmetic encoding instruction
US9854253B2 (en) * 2014-06-30 2017-12-26 Qualcomm Incorporated Method for motion vector difference (MVD) and intra block copy vector difference (BVD) coding of screen content video data
US10158874B2 (en) * 2015-09-30 2018-12-18 Apple Inc. Parallel bypass and regular bin coding
US10264264B2 (en) * 2016-09-24 2019-04-16 Apple Inc. Multi-bin decoding systems and methods
CN117651149A (zh) * 2018-09-10 2024-03-05 华为技术有限公司 视频解码方法及视频解码器
CN113038140B (zh) * 2019-12-24 2024-05-28 扬智电子科技(成都)有限公司 上下文适应性二进制算术编码的视频解码方法与其视频解码装置
CN113141508B (zh) * 2020-01-17 2024-03-26 阿里巴巴集团控股有限公司 算术编码器及实现算术编码的方法和图像编码方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050088324A1 (en) * 2003-10-22 2005-04-28 Ikuo Fuchigami Device for arithmetic decoding/encoding, and device using the same
US6900748B2 (en) * 2003-07-17 2005-05-31 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Method and apparatus for binarization and arithmetic coding of a data value
US7079057B2 (en) * 2004-08-05 2006-07-18 Samsung Electronics Co., Ltd. Context-based adaptive binary arithmetic coding method and apparatus
US20070115154A1 (en) * 2005-11-18 2007-05-24 Samsung Electronics Co., Ltd. Method of decoding bin values using pipeline architecture and decoding device therefor

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3461640B2 (ja) * 1995-11-24 2003-10-27 パナソニック コミュニケーションズ株式会社 算術符号化・復号化装置
JP3459759B2 (ja) * 1997-09-29 2003-10-27 キヤノン株式会社 算術復号化装置
US7599435B2 (en) * 2004-01-30 2009-10-06 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Video frame encoding and decoding
US20050259747A1 (en) * 2004-05-21 2005-11-24 Broadcom Advanced Compression Group, Llc Context adaptive binary arithmetic code decoder for decoding macroblock adaptive field/frame coded video data
JP4327036B2 (ja) * 2004-07-15 2009-09-09 株式会社東芝 算術符号復号化方法及びその装置
KR100648258B1 (ko) * 2004-08-02 2006-11-23 삼성전자주식회사 고속의 디코딩을 수행하는 파이프라인 구조의 내용 기반적응적 이진 산술 디코더
US7224412B2 (en) * 2004-08-16 2007-05-29 Rightech Corporation Ceiling suction type digital television device
US20060126744A1 (en) * 2004-12-10 2006-06-15 Liang Peng Two pass architecture for H.264 CABAC decoding process
KR100694098B1 (ko) * 2005-04-04 2007-03-12 한국과학기술원 산술 복호 방법 및 그 장치
US7804903B2 (en) * 2005-06-27 2010-09-28 Intel Corporation Hardware-based CABAC decoder
CN100584025C (zh) * 2005-08-04 2010-01-20 华为技术有限公司 一种基于内容自适应的算术解码系统及装置
CN100466739C (zh) * 2005-10-12 2009-03-04 华为技术有限公司 Cabac解码系统及方法
JP2007116501A (ja) * 2005-10-21 2007-05-10 Victor Co Of Japan Ltd 算術符号復号化装置。
KR100644713B1 (ko) * 2005-10-31 2006-11-10 삼성전자주식회사 컨텍스트 기반 적응적 이진 산술 코딩 복호기에서 원소구문을 복호화하는 방법 및 이를 위한 복호화 장치
KR100717052B1 (ko) * 2005-11-08 2007-05-10 삼성전자주식회사 Cabac 복호기에서 이진 산술 복호화와 이진 매칭을병렬 처리하는 원소 구문의 복호화 방법 및 이를 위한복호화 장치
US7983343B2 (en) * 2006-01-12 2011-07-19 Lsi Corporation Context adaptive binary arithmetic decoding for high definition video
JP2008113348A (ja) * 2006-10-31 2008-05-15 Sony Corp 符号化復号装置、復号方法、並びにプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6900748B2 (en) * 2003-07-17 2005-05-31 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Method and apparatus for binarization and arithmetic coding of a data value
US20050088324A1 (en) * 2003-10-22 2005-04-28 Ikuo Fuchigami Device for arithmetic decoding/encoding, and device using the same
US7079057B2 (en) * 2004-08-05 2006-07-18 Samsung Electronics Co., Ltd. Context-based adaptive binary arithmetic coding method and apparatus
US20070115154A1 (en) * 2005-11-18 2007-05-24 Samsung Electronics Co., Ltd. Method of decoding bin values using pipeline architecture and decoding device therefor

Also Published As

Publication number Publication date
EP2051383A3 (en) 2014-08-06
EP2922208A1 (en) 2015-09-23
KR100955418B1 (ko) 2010-05-04
KR20090038808A (ko) 2009-04-21
US7777654B2 (en) 2010-08-17
EP2051383A2 (en) 2009-04-22
TW200920141A (en) 2009-05-01
JP4886755B2 (ja) 2012-02-29
US20090096643A1 (en) 2009-04-16
JP2009100474A (ja) 2009-05-07
EP2978136A1 (en) 2016-01-27

Similar Documents

Publication Publication Date Title
TWI396446B (zh) 情境適應性二元算術編碼與解碼之系統與方法
JP4313771B2 (ja) 画像および/またはビデオ符号器と復号器における変換係数を符号化するための方法と装置および対応するコンピュータプログラムと対応するコンピュータによる読み出し可能な記憶媒体
US6677869B2 (en) Arithmetic coding apparatus and image processing apparatus
KR102393305B1 (ko) 엔트로피 인코딩 및 디코딩 방식
US7365660B2 (en) Method and device for decoding syntax element in CABAC decoder
US7385535B2 (en) Decoding system and method based on context-based adaptive binary arithmetic coding
KR101662136B1 (ko) 움직임 벡터 차분값의 엔트로피 코딩
KR100648258B1 (ko) 고속의 디코딩을 수행하는 파이프라인 구조의 내용 기반적응적 이진 산술 디코더
US8711019B1 (en) Context-based adaptive binary arithmetic coding engine
WO2013068731A1 (en) Data encoding and decoding
JP5264706B2 (ja) 算術デコーディング方法及びデバイス
KR102123620B1 (ko) 대용량 병렬 처리를 위해 비디오 신호를 엔트로피 인코딩 또는 엔트로피 디코딩하는 방법 및 장치
Kim et al. High speed decoding of context-based adaptive binary arithmetic codes using most probable symbol prediction
JP6159240B2 (ja) 二値算術符号化装置、二値算術符号化方法及び二値算術符号化プログラム
KR101108674B1 (ko) 엔트로피 코딩의 성능 향상 방법 및 상기 방법을 이용한 비디오 코딩 방법 및 장치
Pastuszak High-speed architecture of the CABAC probability modeling for H. 265/HEVC encoders
KR100207428B1 (ko) 허프만 코드 변환에 적응적인 고속 가변장 복호화 장치 및 방법
JP5933037B2 (ja) 二値算術符号化スキーム
KR102109768B1 (ko) Uhd 영상의 고속 처리를 위한 cabac 이진 산술 부호화기
KR20240004520A (ko) 신경망 파라미터를 디코딩하는 장치, 방법 및 컴퓨터 프로그램과 업데이트 모델을 사용하여 신경망 파라미터를 인코딩하는 장치, 방법 및 컴퓨터 프로그램
KR100189875B1 (ko) 허브만 부호 복호화장치
Lo et al. Design of a High-Throughput CABAC Encoder
Chang High-throughput architecture for H. 264/AVC CABAC encoding and decoding system