JP6560702B2 - 算術復号装置、算術符号化装置、算術復号方法、および、算術符号化方法 - Google Patents
算術復号装置、算術符号化装置、算術復号方法、および、算術符号化方法 Download PDFInfo
- Publication number
- JP6560702B2 JP6560702B2 JP2017040790A JP2017040790A JP6560702B2 JP 6560702 B2 JP6560702 B2 JP 6560702B2 JP 2017040790 A JP2017040790 A JP 2017040790A JP 2017040790 A JP2017040790 A JP 2017040790A JP 6560702 B2 JP6560702 B2 JP 6560702B2
- Authority
- JP
- Japan
- Prior art keywords
- context
- unit
- frequency
- sub
- block
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/18—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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/436—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
図2を用いて、動画像符号化装置2によって生成され、動画像復号装置1によって復号される符号化データ#1の構成例について説明する。符号化データ#1は、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャを含む。
ピクチャレイヤでは、処理対象のピクチャPICT(以下、対象ピクチャとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。ピクチャPICTは、図2の(a)に示すように、ピクチャヘッダPH、及び、スライスS1〜SNSを含んでいる(NSはピクチャPICTに含まれるスライスの総数)。
スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。スライスSは、図2の(b)に示すように、スライスヘッダSH、及び、ツリーブロックTBLK1〜TBLKNC(NCはスライスSに含まれるツリーブロックの総数)を含んでいる。
ツリーブロックレイヤでは、処理対象のツリーブロックTBLK(以下、対象ツリーブロックとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。
ツリーブロックヘッダTBLKHには、対象ツリーブロックの復号方法を決定するために動画像復号装置1が参照する符号化パラメータが含まれる。具体的には、図2の(c)に示すように、対象ツリーブロックの各CUへの分割パターンを指定するツリーブロック分割情報SP_TBLK、および、量子化ステップの大きさを指定する量子化パラメータ差分Δqp(qp_delta)が含まれる。
CUレイヤでは、処理対象のCU(以下、対象CUとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。
続いて、図2の(d)を参照しながら符号化単位情報CUに含まれるデータの具体的な内容について説明する。図2の(d)に示すように、符号化単位情報CUは、具体的には、スキップモードフラグSKIP、CU予測タイプ情報Pred_type、PT情報PTI、および、TT情報TTIを含む。
スキップフラグSKIPは、対象CUについて、スキップモードが適用されているか否かを示すフラグであり、スキップフラグSKIPの値が1の場合、すなわち、対象CUにスキップモードが適用されている場合、その符号化単位情報CUにおけるPT情報PTIは省略される。なお、スキップフラグSKIPは、Iスライスでは省略される。
CU予測タイプ情報Pred_typeは、CU予測方式情報PredModeおよびPU分割タイプ情報PartModeを含む。CU予測タイプ情報のことを単に予測タイプ情報と呼ぶこともある。
PT情報PTIは、対象CUに含まれるPTに関する情報である。言い換えれば、PT情報PTIは、PTに含まれる1または複数のPUそれぞれに関する情報の集合である。上述のとおり予測画像の生成は、PUを単位として行われるので、PT情報PTIは、動画像復号装置1によって予測画像が生成される際に参照される。PT情報PTIは、図2の(d)に示すように、各PUにおける予測情報等を含むPU情報PUI1〜PUINP(NPは、対象PTに含まれるPUの総数)を含む。
TT情報TTIは、CUに含まれるTTに関する情報である。言い換えれば、TT情報TTIは、TTに含まれる1または複数のTUそれぞれに関する情報の集合であり、動画像復号装置1により残差データを復号する際に参照される。なお、以下、TUのことをブロックと称することもある。
処理2:処理1にて得られた変換係数を量子化する;
処理3:処理2にて量子化された変換係数を可変長符号化する;
なお、上述した量子化パラメータqpは、動画像符号化装置2が変換係数を量子化する際に用いた量子化ステップQPの大きさを表す(QP=2qp/6)。
PU分割タイプには、対象CUのサイズを2N×2N画素とすると、次の合計8種類のパターンがある。すなわち、2N×2N画素、2N×N画素、N×2N画素、およびN×N画素の4つの対称的分割(symmetric splittings)、並びに、2N×nU画素、2N×nD画素、nL×2N画素、およびnR×2N画素の4つの非対称的分割(asymmetric splittings)である。なお、N=2m(mは1以上の任意の整数)を意味している。以下、対称CUを分割して得られる領域のことをパーティションとも称する。
インターPUでは、上記8種類の分割タイプのうち、N×N(図3の(h))以外の7種類が定義されている。なお、上記4つの非対称的分割は、AMP(Asymmetric Motion Partition)と呼ばれることもある。
イントラPUでは、次の2種類の分割パターンが定義されている。すなわち、対象CUを分割しない、すなわち対象CU自身が1つのPUとして取り扱われる分割パターン2N×2Nと、対象CUを、4つのPUへと対称的に分割するパターンN×Nと、である。
次に、図4を用いて、TU分割タイプについて説明する。TU分割のパターンは、CUのサイズ、分割の深度(trafoDepth)、および対象PUのPU分割タイプにより定まる。
図5は、量子化残差情報QD(図5ではresidual_coding_cabac()と表記)に含まれる各シンタックスを示す表である。
以下では、本実施形態に係る動画像復号装置1について図1、図7〜図25を参照して説明する。動画像復号装置1は、H.264/MPEG−4 AVC規格に採用されている技術、VCEG(Video Coding Expert Group)における共同開発用コーデックであるKTAソフトウェアに採用されている技術、TMuC(Test Model under Consideration)ソフトウェアに採用されている技術、および、その後継コーデックであるHEVC(High-Efficiency Video Coding)にて提案されている技術を実装している復号装置である。
図8は、可変長符号復号部11の要部構成を示すブロック図である。図8に示すように、可変長符号復号部11は、量子化残差情報復号部111、予測パラメータ復号部112、予測タイプ情報復号部113、および、フィルタパラメータ復号部114を備えている。
予測画像生成部12は、各パーティションについての予測タイプ情報Pred_typeに基づいて、各パーティションがインター予測を行うべきインター予測パーティションであるのか、イントラ予測を行うべきイントラ予測パーティションであるのかを識別する。そして、前者の場合には、インター予測画像Pred_Interを生成すると共に、生成したインター予測画像Pred_Interを予測画像Predとして加算器14に供給し、後者の場合には、イントラ予測画像Pred_Intraを生成すると共に、生成したイントラ予測画像Pred_Intraを加算器14に供給する。なお、予測画像生成部12は、処理対象PUに対してスキップモードが適用されている場合には、当該PUに属する他のパラメータの復号を省略する。
動きベクトル復元部12aは、各インター予測パーティションに関する動きベクトルmvを、そのパーティションに関する動きベクトル残差と、他のパーティションに関する復元済みの動きベクトルmv’とから復元する。具体的には、(1)推定動きベクトルインデックスにより指定される推定方法に従って、復元済みの動きベクトルmv’から推定動きベクトルを導出し、(2)導出した推定動きベクトルと動きベクトル残差とを加算することによって動きベクトルmvを得る。なお、他のパーティションに関する復元済みの動きベクトルmv’は、フレームメモリ15から読み出すことができる。動きベクトル復元部12aは、復元した動きベクトルmvを、対応する参照画像インデックスRIと共に、インター予測画像生成部12bに供給する。
インター予測画像生成部12bは、画面間予測によって、各インター予測パーティションに関する動き補償画像mcを生成する。具体的には、動きベクトル復元部12aから供給された動きベクトルmvを用いて、同じく動きベクトル復元部12aから供給された参照画像インデックスRIによって指定される適応フィルタ済復号画像P_ALF’から動き補償画像mcを生成する。ここで、適応フィルタ済復号画像P_ALF’は、既にフレーム全体の復号が完了した復号済みの復号画像に対して、ループフィルタ16によるフィルタ処理を施すことによって得られる画像であり、インター予測画像生成部12bは、適応フィルタ済復号画像P_ALF’を構成する各画素の画素値をフレームメモリ15から読み出すことができる。インター予測画像生成部12bによって生成された動き補償画像mcは、インター予測画像Pred_Interとして予測方式決定部12dに供給される。
イントラ予測画像生成部12cは、各イントラ予測パーティションに関する予測画像Pred_Intraを生成する。具体的には、まず、可変長符号復号部11から供給されたイントラ予測パラメータPP_Intraに基づいて予測モードを特定し、特定された予測モードを対象パーティションに対して、例えば、ラスタスキャン順に割り付ける。
予測方式決定部12dは、各パーティションが属するPUについての予測タイプ情報Pred_typeに基づいて、各パーティションがインター予測を行うべきインター予測パーティションであるのか、イントラ予測を行うべきイントラ予測パーティションであるのかを決定する。そして、前者の場合には、インター予測画像生成部12bにて生成されたインター予測画像Pred_Interを予測画像Predとして加算器14に供給し、後者の場合には、イントラ予測画像生成部12cにて生成されたイントラ予測画像Pred_Intraを予測画像Predとして加算器14に供給する。
逆量子化・逆変換部13は、(1)符号化データ#1の量子化残差情報QDから復号された変換係数Coeffを逆量子化し、(2)逆量子化によって得られた変換係数Coeff_IQに対して逆DCT(Discrete Cosine Transform)変換等の逆周波数変換を施し、(3)逆周波数変換によって得られた予測残差Dを加算器14に供給する。なお、量子化残差情報QDから復号された変換係数Coeffを逆量子化する際に、逆量子化・逆変換部13は、可変長符号復号部11から供給された量子化パラメータ差分Δqpから量子化ステップQPを導出する。量子化パラメータqpは、直前に逆量子化及び逆周波数変換したTUに関する量子化パラメータqp’に量子化パラメータ差分Δqpを加算することによって導出でき、量子化ステップQPは、量子化ステップqpから例えばQP=2pq/6によって導出できる。また、逆量子化・逆変換部13による予測残差Dの生成は、TUあるいはTUを分割したブロックを単位として行われる。
・C(u)=1 (u≠0)
・C(v)=1/√2 (v=0)
・C(v)=1 (v≠0)
(加算器14)
加算器14は、予測画像生成部12から供給された予測画像Predと、逆量子化・逆変換部13から供給された予測残差Dとを加算することによって復号画像Pを生成する。生成された復号画像Pは、フレームメモリ15に格納される。
ループフィルタ16は、(1)復号画像Pにおけるブロック境界、またはパーティション境界の周辺の画像の平滑化(デブロック処理)を行うデブロッキングフィルタ(DF:Deblocking Filter)としての機能と、(2)デブロッキングフィルタが作用した画像に対して、フィルタパラメータFPを用いて適応フィルタ処理を行う適応フィルタ(ALF:Adaptive Loop Filter)としての機能とを有している。
量子化残差情報復号部111は、符号化データ#1に含まれる量子化残差情報QDから、各周波数成分(uiPosX、uiPosY)についての量子化された変換係数Coeff(uiPosX、uiPosY)を復号するための構成である。ここで、uiPosXおよびuiPosYは、周波数領域における各周波数成分の位置を表すインデックスであり、それぞれ、上述した水平方向周波数uおよび垂直方向周波数vに対応するインデックスである。また、量子化残差情報QDに含まれる各種のシンタックスは、コンテキスト適応型2値算術符号化(CABAC:(Context-based Adaptive Binary Arithmetic Coding))によって符号化されている。なお、以下では、量子化された変換係数Coeffを、単に、変換係数Coeffと呼ぶこともある。
算術符号復号部130は、量子化残差情報QDに含まれる各ビットをコンテキストを参照して復号するための構成であり、図1に示すように、コンテキスト記録更新部131及びビット復号部132を備えている。
コンテキスト記録更新部131は、各コンテキストインデックスctxIdxによって管理されるコンテキスト変数CVを記録及び更新するための構成である。ここで、コンテキスト変数CVには、(1)発生確率が高い優勢シンボルMPS(most probable symbol)と、(2)その優勢シンボルMPSの発生確率を指定する確率状態インデックスpStateIdxとが含まれている。
ビット復号部132は、コンテキスト記録更新部131に記録されているコンテキスト変数CVを参照し、量子化残差情報QDに含まれる各ビット(Binとも呼ぶ)を復号する。また、復号して得られたBinの値を変換係数復号部120の備える各部に供給する。また、復号して得られたBinの値は、コンテキスト記録更新部131にも供給され、コンテキスト変数CVを更新するために参照される。
図1に示すように、変換係数復号部120は、ラスト位置復号部121、スキャン順テーブル格納部122、係数復号制御部123、係数有無フラグ復号部、係数値復号部125、復号係数記憶部126を備えている。
ラスト位置復号部121は、ビット復号部132より供給される復号ビット(Bin)を解釈し、シンタックスlast_significant_coeff_x及びlast_significant_coeff_yを復号する。復号したシンタックスlast_significant_coeff_x及びlast_significant_coeff_yは、係数復号制御部123に供給される。また、シンタックスlast_significant_coeff_x及びlast_significant_coeff_yの復号に用いたコンテキストインデックスctxIdxは、コンテキスト記録更新部131に供給される。
スキャン順テーブル格納部122には、処理対象のTUのサイズ、スキャン方向の種別を表すスキャンインデックス、及びスキャン順に沿って付与された周波数成分識別インデックスを引数として、処理対象の周波数成分の周波数領域における位置を与えるテーブルが格納されている。
係数復号制御部123は、量子化残差情報復号部111の備える各部における復号処理の順序を制御するための構成である。係数復号制御部123は、ラスト位置復号部121から供給されるシンタックスlast_significant_coeff_x及びlast_significant_coeff_yを参照し、順スキャンに沿った最後の非0変換係数の位置を特定すると共に、特定した最後の非0変換係数の位置を起点とするスキャン順であって、スキャン順テーブル格納部122に格納されたスキャン順テーブルよって与えられるスキャン順の逆スキャン順に、各周波数成分の位置(uniPosX、uniPosY)を、係数有無フラグ復号部に供給する。
係数値復号部125は、ビット復号部132から供給される各Binを解釈し、シンタックスcoeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag、及びcoeff_abs_level_minus3を復号すると共に、これらのシンタックスを復号した結果に基づき、処理対象の周波数成分における変換係数(より具体的には非0変換係数)の値を導出する。また、各種シンタックスの復号に用いたコンテキストインデックスctxIdxは、コンテキスト記録更新部131に供給される。導出された変換係数の値は、復号係数記憶部126に格納される。
復号係数記憶部126は、係数値復号部125によって復号された変換係数の各値を記憶しておくための構成である。また、復号係数記憶部126には、係数有無フラグ復号部によって復号されたシンタックスsignificant_coeff_flagの各値が記憶される。復号係数記憶部126によって記憶されている変換係数の各値は、逆量子化・逆変換部13に供給される。
本実施形態に係る係数有無フラグ復号部は、周波数領域を、周波数の大きさに応じて1または複数の部分領域に分類し、部分領域毎に定められた導出方法によってコンテキストインデックスctxIdxを導出すると共に、導出したコンテキストインデックスctxIdxを用いて非0変換係数の有無を示すシンタックスsignificant_coeff_flagを復号するための構成である。
図1には、本実施形態に係る係数有無フラグ復号部の第1の構成例としての係数有無フラグ復号部124が示されている。
周波数分類部124aは、周波数領域における復号対象の周波数成分の位置に応じて、当該周波数成分を複数の部分領域の何れかに分類すると共に、低周波位置コンテキスト導出部124b、周辺参照コンテキスト導出部124c、及び高周波位置コンテキスト導出部124dの何れかによって導出されたコンテキストインデックスctxIdxを、当該復号対象の周波数成分に割り付けるための構成である。
TH2= table[log2(sz)]
閾値をszサイズから計算で求める場合には、テーブルを削減できることが可能である。例えば、TH2=sz−2のように、サイズと所定の定数との差もしくは和で計算する方法や、TH2=sz×7/8、TH2=sz×7>>3のように、サイズと定数の積および除算、シフトにより求める方法が望ましい。
低周波位置コンテキスト導出部124bは、復号対象の周波数成分が、低周波数側の部分領域に含まれる場合に、当該周波数成分に対するコンテキストインデックスctxIdxを、周波数領域における当該周波数成分の位置に基づいて導出するための構成である。本明細書において、対象周波数成分の位置に基づいて導出された、或いは導出するコンテキストを「位置コンテキスト」とも表現する。位置コンテキストは、ある変換係数の位置の係数有無フラグのコンテキストを、既に復号された係数有無フラグの値によらずに決定されるものであるため、係数有無フラグのコンテキスト導出と、係数有無フラグの復号を並列で行うことができるという効果がある。
なお、NXはコンテキストインデックスの開始点を表す定数である。周波数領域のサイズが4×4及び8×8で用いるコンテキスト数が各々N4個、N8個の場合には、周波数領域のサイズが16×16および32×32の開始点はNX=N4+N8になる。
なお、固定値(開始点NX)は、色コンポーネントや周波数領域のサイズに応じて選択しても良い。
周辺参照コンテキスト導出部124cは、復号対象の周波数成分に対するコンテキストインデックスctxIdxを、当該周波数成分の周辺の周波数成分について復号済みの非0変換係数の数に基づいて導出するための構成である。本明細書において、対象周波数成分の周辺の周波数成分について復号済みの非0変換係数を参照して導出された、或いは導出するコンテキストを「周辺参照コンテキスト」とも表現する。
ここでは、カウント数cntを固定値(ここでは4)にクリップする処理によって多対一変換処理を行っている。
ここで、min(A、B)は、A及びBのうち最小のものの値をとる関数である。すなわち、A<Bであれば、min(A、B)=Aである。また、cntは、対象周波数成分の周辺の周波数成分について復号された非0変換係数の数(カウント数)を表している。図10(a)は、処理順序が逆スキャン順である場合の対象周波数成分xと、対象周波数成分xの位置周辺に設定された参照領域RRに含まれる周波数成分である参照周波数成分c1〜c5とを表している。図10(a)に示すように、参照周波数成分の各々について復号された変換係数の値をc1〜c5と表すことにすると、対象周波数成分xについてのcntは、例えば以下の式によって導出することができる。
ここで、各項は、()内の引数が真である場合に1をとり、()内の引数が偽である場合に0をとるものとする。
高周波位置コンテキスト導出部124dは、復号対象の周波数成分が、高周波数側の部分領域に含まれる場合に、当該周波数成分に対するコンテキストインデックスctxIdxを、周波数領域における当該周波数成分の位置に基づいて導出するための構成である。
ここで、記号「>>」は、右ビットシフトを表している。また、shift及びmaxR3としては、例えば、shift=4、maxR3=3を用いればよいが本実施形態はこれに限定されるものではない。
対象周波数領域のサイズが16×16である場合:
ctxIdx=NX+13+min(maxR3、(uiPosX+uiPosY−TH2)>>shift)
を用い、
対象周波数領域のサイズが32×32である場合:
ctxIdx=NX+13+maxR3+1+min(maxR3、(uiPosX+uiPosY−TH2)>>shift)
を用いる構成が挙げられる。
対象周波数領域のサイズが16×16である場合:
ctxIdx=NX+13+min(3、(uiPosX+uiPosY−14)>>4)
を用い、
対象周波数領域のサイズが32×32である場合:、
ctxIdx=NX+13+min(3、(uiPosX+uiPosY−30)>>4)
を用いる構成が挙げられる。
対象周波数領域のサイズが16×16である場合:
ctxIdx=NX+13+min(3、(uiPosX+uiPosY−TH2)>>3)
を用い、
対象周波数領域のサイズが32×32である場合:
ctxIdx=NX+13+min(3、(uiPosX+uiPosY−TH2)>>4)
を用いる構成が挙げられる。
対象周波数領域のサイズが16×16である場合:
ctxIdx=NX+13+min(R3maz、(uiPosX+uiPosY−TH2)>>3)
を用い、
対象周波数領域のサイズが32×32である場合:
ctxIdx=NX+13+R3max+1+min(R3max、(uiPosX+uiPosY−TH2)>>4)
を用いる構成が挙げられる。
なお、固定値(開始点NX)は、色コンポーネントや周波数領域のサイズに応じて選択しても良い。
本実施形態に係る係数有無フラグ復号部の第2の構成例について、図12、13を参照して説明する。図12は、本構成例に係る係数有無フラグ復号部124−1の構成を示すブロック図である。また、図13は、非0変換係数カウント部124fが非0変換係数の数をカウントするスキャン列を説明するための図である。
また、部分領域R1に属する周波数成分に対しては、以下の式を用いてコンテキストインデックスctxIdxを導出する。
また、部分領域R2に属する周波数成分に対して、以下の式を用いてコンテキストインデックスctxIdxを導出する。
一方、部分領域R3に属する周波数成分に対しては、前スキャン列コンテキスト導出部124eが以下の方法により、コンテキストインデックスctxIdxを導出する。
前スキャン列コンテキスト導出部124eは、復号対象の周波数成分が、高周波数側の部分領域に含まれる場合に、当該周波数成分に対するコンテキストインデックスctxIdxを、スキャン順で1つ前のスキャン列に含まれる非0変換係数の数に基づいて導出するための構成である。
ここで、last_cntは、1つ前のスキャン列において出現した非0変換係数の数を示している。また、linetblは、スキャン列によって存在する非0変換係数の数が異なることから、非0変換係数の数を正規化するための係数テーブルであり、以下の式により生成される。
linetbl(x)=2shift1/(2×sz−x−1) (x≧sz)
また、shift=shift1+2であり、例えば、shift1=3である(以下同様)。
last_cnt=(last_cnt´>>1)+curr_cnt
となる。
一方、周波数成分の位置が、uiPosX≦uiPosYを満たす場合は、下記の式によりコンテキストインデックスctxIdxを導出する。
ここで、last_cntxは、uiPosX>uiPosYを満たす、1つ前のスキャン列で出現した非0変換係数の数であり、last_cntyは、uiPosX≦uiPosYと満たす、1つ前のスキャン列で出現した非0変換係数の数である。すなわち、1つ前のスキャン列のうち、中央より右上方向のスキャン列がlast_cntxのカウントの対象となり、中央より左下方向のスキャン列がlast_cntyのカウントの対象となる(図13(b))。
ここで、
shifttbl[k]=Int(log2(numLineCoeff[k]/maxR3))
であり、numLineCoeff[k]はkの位置のスキャン列における非0変換係数の数である。また、Intは、引数の小数点以下を切り捨てることを示している。
本実施形態に係る係数有無フラグ復号部の第3の構成例について、図14、15を参照して説明する。図14は、本構成例に係る係数有無フラグ復号部124−2の構成を示すブロック図である。また、図15(a)〜(i)は、周辺参照コンテキスト導出部124gがコンテキストを導出するときに参照する周波数成分を示す図である。なお、図10(a)と図10(b)の関係において既に示したように、図15(a)〜(i)の場合においても、対応する順スキャンの場合の参照周波数成分の位置は、逆スキャンの場合の参照周波数成分の各々の位置を、対象周波数成分xに対して、X軸方向およびY軸方向に反転することで求められる。そのため、本発明は、significant_coeff_flagを順スキャンで行う場合にも適用することができる。
また、部分領域R1に属する周波数成分に対しては、以下の式を用いてコンテキストインデックスctxIdxを導出する。
また、部分領域R2に属する周波数成分に対して、以下の式を用いてコンテキストインデックスctxIdxを導出する。
一方、部分領域R3に属する周波数成分に対しては、周辺参照コンテキスト導出部124gが以下の方法により、コンテキストインデックスctxIdxを導出する。
周辺参照コンテキスト導出部124gは、復号対象の周波数成分に対するコンテキストインデックスctxIdxを、当該周波数成分の周辺の周波数成分について復号済みの非0変換係数の数に基づいて導出するための構成である。
また、cnt2は、以下の式により算出する。
ここで、c1、c3、c4は、図15の(i)に示す、対象周波数成分xの周辺の周波数成分について復号された変換係数である。
cnt2=(c1!=0)+(c3!=0)
になる。
CtxIdx=NX+8+cnt2
を用いてコンテキストインデックスctxIdxを導出し、対象周波数領域のサイズが32×32の場合は、
CtxIdx=NX+8+cnt2
を用いて、コンテキストインデックスctxIdxを導出する。
CtxIdx=NX+13+cnt2
とする。
以下では、係数有無フラグ復号部124−2による他の処理例について図48〜図50を参照して説明する。
TH=Max(width、height)>>2
TH2=3×Max(width、height)>>4
によって定められる。ここで、widthは、周波数成分を単位として表現された対象周波数領域の幅を示しており、heightは周波数成分を単位として表現された対象周波数領域の高さを示している。例えば16×4変換と呼ばれる対象周波数領域の幅が16成分(16画素に対応)、高さが4成分(4画素に対応)であるとき、width=16、height=4である。
また、周波数分類部124aは、図49に示すように、対象変換係数の周波数成分上の位置(xC、yC)をあるサブブロックサイズ(ここでは4)で割った値(サブブロック座標)に応じて、以下の式のように、サブブロック座標でのX座標とY座標の和と閾値TH2の比較を用いて、互いに参照数の異なる部分領域R2と部分領域R3を分類する。
ここで2つの部分領域を区別する閾値TH2は、TH2×サブブロックサイズ(=4)が、対象周波数領域のサイズsz(=Max(width、height))よりも小さいことを満たすことが好ましい。この場合、対象周波数成分の周辺の周波数成分が参照可能か否かの判定を省略することができる。例えば、
3×Max(width、height)>>4
はMax(width、height)×3/4であるため、この上記関係を満たす。
TH2=3×Max(width、height)>>4
TH2=(3×Max(width、height)>>4)+4
図49は、図48(a)に示す部分領域R0〜R3のそれぞれに含まれる周波数領域に割り付けるコンテキストインデックスであって、輝度に関するコンテキストインデックスcxtIdxを導出する導出処理を示す擬似コードである。図49において、領域R0のコンテキスト導出は、位置コンテキスト導出部124bによって行われ、領域R1〜領域R3のコンテキスト導出は、周辺参照コンテキスト導出部124gによって行われる。
このように、コンテキストインデックスsigCtxは、開始点sigCtxOffsetR1とオフセット値ctxCntの和により求められる。ここで、本構成のオフセット値ctxCntは、カウント数に応じて得られる値であり、ここでは、カウント数を約1/2にするように右シフトして得られる値であり
ctxCnt=(cnt+1)>>1 ・・・(eq.A4)
によって定まる。
この場合には、コンテキストインデックスを以下で算出する。
なお、非0変換係数のカウント数cntを算出する際には、対象変換係数の周波数成分上の位置(xC、yC)に応じて参照する変換係数を変更しても良い。例えば、図49に示す擬似コードでは、位置に応じて、c1、c2、c3、c4、c5の5つを参照するか、もしくは、c1、c2、c4、c5の4つを参照するかを切り替える。
{
cnt = (c1!=0) + (c2!=0) + (c4!=0) + (c5!=0);
} else{
cnt= (c1!=0) + (c2!=0) + (c3!=0) + (c4!=0) + (c5!=0);
}
また、周辺参照コンテキスト導出部124gは、例えば、部分領域R2に属する周波数成分に対しては、部分領域R1とは異なる開始点(ここではsigCtxOffsetR2)を用いて以下の式を用いてコンテキストインデックスsigCtxを導出し、その導出結果sigCtxを周波数分類部124aに供給する。
なお、オフセット値ctxCntの計算方法は、部分領域R1と同様である。また、上記では、2以下にクリップする処理を加えているが、これも多対一変換処理と言える。
部分領域R3の開始点は、部分領域R2と同じくsigCtxOffsetR2を用いる。これにより既に説明したようにコンテキスト共有により高い符号化効率と、少ないコンテキスト数を同時に実現することができる。
ctxCnt = cnt;
このように高周波成分の部分領域R3では、低周波数成分の部分領域R1、R2よりも少ない参照数によりカウント数cntを算出するため処理量が削減される。
ここで、参照数の異なる部分領域R2及び部分領域R3において、参照数が多い方の部分領域(R2)では、右シフト等によりカウント数を多対一変換する処理(集約処理とも呼ぶ)を行ってオフセット値ctxCntを求めてコンテキストインデックスを算出するが、参照数が少ない方の部分領域(R3)では、カウント数を減らす処理を行わずにそのままコンテキストインデックスを算出する。部分領域R3では、部分領域R2に比べカウント数の集約処理を削除することができるため処理量が削減される。なお、2つの部分領域の処理上のデザイン統一を優先して、2つの部分領域で同様に集約処理を行う(部分領域R3で右シフトなどを行う)ことも構わない。なお、カウント数の多対一変換処理は、カウント数の値域を圧縮する処理であると捉えることもできる。
ここで、pref_y_flagは、変換係数の偏りを考慮して導出される垂直優先フラグpref_y_flagであり、この垂直優先フラグによりcntyとcntxのいずれを参照するかを決定する。なお、垂直優先フラグは、以下の3つの方法により、判定することができる。
uiPosY>uiPosXのときtrueとする。すなわち、
pref_y_flag=uiPosY>uiPosX ? true:false
とする。
last_significant_coeff_x<last_significant_coeff_yのときtrueとする。すなわち、
pref_y_flag=last_significant_coeff_x<last_significant_coeff_y ? true:false
とする。
last_cntx<last_cntyのときtrueとする。すなわち、
pref_y_flag=last_cntx<last_cnty ? true:false
とする。
また、cnty及びcntxは、対象周波数成分の周辺の周波数成分のうち、参照対象となった周波数成分について復号された非0変換係数の数を表している。cnty及びcntxを導出するために参照される周波数成分の数は2〜4であり、上述したcntの参照数5よりも少ない。なお、以下では、cnty及びcntxを優先参照カウントとも呼称する。
cntx=(c1!=0)+(c2!=0)+(c3!=0)+(c4!=0)
ここで、各項は、()内の引数が真である場合に1をとり、()内の引数が偽である場合に0をとるものとする。以下、同様である。
cntx=(c1!=0)+(c2!=0)+(c3!=0)
なお、参照数が3の場合は、図15の(e)に示すc3、c4、c5、図15の(f)に示すc1、c2、c4を参照し、以下の式によりcnty及びcntxを算出してもよい。
cntx=(c1!=0)+(c2!=0)+(c4!=0)
また、参照数が2の場合は、図15の(g)に示すc3、c5、図15の(h)に示すc1、c2を参照し、以下の式によりcnty及びcntxを算出してもよい。
cntx=(c1!=0)+(c2!=0)
以上のように、本構成例に係る係数有無フラグ復号部によれば、各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの位置周辺に設定された参照領域に含まれる復号済みの非0変換係数の数に基づいて導出し、上記複数の部分領域のうち高周波数側の部分領域において設定される上記参照領域は、低周波数側の部分領域において設定される上記参照領域よりも小さいので、低周波数側の部分領域において設定される参照領域と高周波数側の部分領域において設定される参照領域とが同じ大きさを有する従来の構成に比べて、高周波数側でのコンテキストインデックスの導出処理のための処理量を削減することができると共に、高い符号化効率を実現することができる。
本実施形態に係る係数有無フラグ復号部の第4の構成例について、図17を参照して説明する。本構成例は、第1の構成例と第3の構成例をあわせた構成である。なお、上記第1〜第3の構成例で示した部材と同一の機能を有する部材には、同一の符号を付し、その説明を省略する。
また、部分領域R1に属する周波数成分に対しては、周辺参照コンテキスト導出部124gが、以下の式を用いてコンテキストインデックスctxIdxを導出する。
また、部分領域R2に属する周波数成分に対して、周辺参照コンテキスト導出部124gが、以下の式を用いてコンテキストインデックスctxIdxを導出する。
また、周辺参照コンテキスト導出部124gは、部分領域R3に属する周波数成分に対して、低周波数の領域R1、R2で用いるcntよりも参照数の少ないcnt2(限定参照カウント)を用いて、以下の式によりコンテキストインデックスctxIdxを導出する。なお、本例においても、cnt2のことを限定参照カウントとも呼称する。
本構成例に係る高周波位置コンテキスト導出部124dは、部分領域R4に属する周波数成分に対して、以下の式を用いてコンテキストインデックスctxIdxを導出する。
上記の例では、部分領域R4のコンテキスト数は1つであるため、部分領域R4であると判定された場合に、さらにコンテキストインデックスctxIdxを導出する処理は不要である。発明者の実験では、コンテキスト数を1つとした場合にも閾値TH4を適切に定めることにより高い符号化効率を実現したまま処理量の削減が可能であることを確認している。
ctxIdx=(sz==16)? NX+13:NX+14
や、X座標とY座標の比較により2つを区別する構成
ctxIdx=(uiPosY>uiPosX)? NX+13:NX+14
などが可能である。
また、図18に示すように、本実施形態で用いる周波数分類部124a´は、5つの部分領域R0〜R4に分類する。より具体的には、以下の分類処理を行う。
TH3 = sz+6
この周波数領域のサイズが16×16の場合にはTH2=14、TH3=22、32×32の場合にはTH2=28、TH3=38である。
TH3 = sz+8
つまり、周波数領域のサイズが16×16の場合にはTH2=16、TH3=24とし、周波数領域のサイズが32×32の場合にはTH2=32、TH3=40と設定してもよい。
TH2 = sz×a2/b2+c2
TH3 = sz×a3/b3+c3
である。ここで、a2、b2、c2、a3、b3、c3は所定の定数である。b2およびb3での除算はシフト演算で処理が可能である。一般に閾値を大きくする方が符号化効率は高くなるが、処理量が削減される高周波数側の部分空間R3、部分空間R4の面積が小さくなるため処理量削減の効果は減少する。
TH3 = sz×a/b+c
閾値は比率a/bもしくは加算cで制御できる。閾値をa/bで制御する場合には、高周波数側の部分空間の面積と、低周波数側の部分空間の面積比は、サイズszによらないが、加算cで制御する場合にはサイズによる。発明者の実験では、32×32では16×16に比べ部分領域R4の面積比が大きくなっても良いことから、TH3の算出では加算cを用いることが適当である。このような例は、既に説明した式以外に、以下の式も適当である。
TH3 = sz+12
なお、発明者の実験によると、大きな処理量低減を得るためには、TH2はsz−2以下とすることが良く、高い符号化効率を実現するにはTH3はsz以上とすることが良い。例えば、以上の式以外に、以下の式が適当である。また、TH2=sz−1とする場合にも、部分領域R1において対象周波数成分の周辺の周波数成分が参照可能か否かの判定を省略することができる。このため、処理量低減効果は若干低減するものの、保守的にするならばTH2=sz−1としても良い。
TH3 = sz×11>>3
以上のように、本構成例に係る係数有無フラグ復号部によれば、所定の閾値TH2より高周波数側の部分領域では、各変換係数有無フラグに割り付けるコンテキストインデックスの取り得る値の範囲が、低周波数側の部分領域において設定される上記参照領域において取り得る値の範囲よりも小さいため、高周波数側でのコンテキストインデックスの導出処理のための処理量を削減することができる。さらに別の閾値TH3より高周波数側の部分領域においては、コンテキストインデックスを位置に基づいて導出するので、さらに処理量を削減することができる。
本実施形態に係る係数有無フラグ復号部の第5の構成例について、図19〜図21を参照して説明する。図19は、本構成例に係る係数有無フラグ復号部124−3の構成を示すブロック図である。また、図20は、非0変換係数の数をカウントするスキャン列を説明するための図である。また、図21(a)〜(c)は、コンテキストを導出するときに産参照する対象を説明するための図である。
また、部分領域R1に属する周波数成分に対しては、以下の式を用いてコンテキストインデックスctxIdxを導出する。
また、部分領域R2に属する周波数成分に対して、以下の式を用いてコンテキストインデックスctxIdxを導出する。
一方、部分領域R3に属する周波数成分に対しては、高周波領域コンテキスト導出部124hが以下の方法により、コンテキストインデックスctxIdxを導出する。
高周波領域コンテキスト導出部124hは、復号対象の周波数成分に対するコンテキストインデックスctxIdxを、当該周波数成分の周辺の周波数成分について復号済みの非0変換係数の数、および1つ前のスキャン列に含まれる非0変換係数の数に基づいて導出するための構成である。
ここで、c1、c3は、図21の(a)に示す、対象周波数成分xの周辺の周波数成分について復号された変換係数である。
ここで、閾値THcとしては、例えば、THc=1を用いればよいが、これは本実施形態を限定するものではなく、THcとして、uiPosX、uiPosYに依存する閾値を用いてもよい。より具体的には、対象周波数成分が属するスキャン列に沿った周波数成分の数と正の相関を有する閾値を用いてもよい。
ここで、last_cnt2は、2つ前のスキャン列において出現した非0変換係数の数を示している。
last_cnt=curr_cnt
ここで、curr_cntは、上述のように、現スキャン列の非0変換係数の数を表している。
以上のように、本構成例に係る係数有無フラグ復号部によれば、上記複数の部分領域のうち高周波数側の部分領域における現スキャン列に沿った各変換係数有無フラグに割り付けるコンテキストインデックスを、前スキャン列に沿った非0変換係数の数と、対象周波数領域における該変換係数有無フラグの位置周辺に設定された参照領域に含まれる復号済みの非0変換係数の数とに基づいて導出するものであり、上記複数の部分領域のうち高周波数側の部分領域において設定される上記参照領域は、低周波数側の部分領域において設定される上記参照領域よりも小さいので、従来の構成に比べて、高周波数側でのコンテキストインデックスの導出処理のための処理量をより効果的に削減できると共に、高い符号化効率を実現することができる。
ここで、優先参照カウントcnty’は、例えば、図21(b)に示す参照周波数成分について復号済みの変換係数c3、c5を用いて、
cnty’=(c3!=0)+(c5!=0)
によって導出する構成としてもよいし、図21(c)に示す参照周波数成分について復号済みの変換係数c1、c2を用いて、
cntx’=(c1!=0)+(c2!=0)
によって導出する構成としてもよい。
本実施形態に係る係数有無フラグ復号部の第6の構成例について、図22を参照して説明する。図22は、本構成例に係る係数有無フラグ復号部124−4の構成を示すブロック図である。
一方、部分領域R1に属する周波数成分に対しては、周辺参照コンテキスト導出部124kが以下の方法により、コンテキストインデックスctxIdxを導出する。
また、部分領域R2に属する周波数成分に対しては、周辺参照コンテキスト導出部124kが以下の方法により、コンテキストインデックスctxIdxを導出する。
また、部分領域R3に属する周波数成分に対しては、周辺参照コンテキスト導出部124kが以下の方法により、コンテキストインデックスctxIdxを導出する。
ここで、pref_y_flag、cnty、cntxについては上述したためここでは説明を省略する。
以上、本実施形態に係る変換係数復号部120について、主に係数有無フラグ復号部の構成例を中心に説明したが、本実施形態に係る変換係数復号部120の構成は、上記の例に限られるものではない。
uiPosX+uiPosY<TH2
を満たす周波数成分についての変換係数のみを復号するよう制限する構成とする。
uiPosX+uiPosY<TH2
周波数領域の位置をサブブロックの大きさ(ここでは4)で割って得られるサブブロック位置を用いて、以下の式のように、サブブロック座標のX座標とY座標の和と閾値との比較を行っても良い。
すなわち、上記対象周波数領域のサイズをszと表すとき、処理量削減と符号化効率削減のバランス上は、上記閾値THおよびTH2は、判定にX座標及びY座標の和を用いる場合にはsz以下の値、サブブロックのX座標及びY座標の和を用いる場合には、sz/サブブロック以下の大きさを有することが好ましい。上記TH、TH2はこの関係を満たす。
TH2=(3×Max(width、height)>>4)+4
上記のように構成された符号化データ#1によれば、各単位領域に対応する各対象周波数領域における高周波数側の変換係数を復号するか否かを示す制限フラグを含んでおり、変換係数復号部120は、上記制限フラグが、高周波数側の変換係数を復号しないことを示している場合には、当該高周波数側の変換係数の復号処理を省略することができるので、変換係数を復号するための処理量が削減される。
また、対象TUのサイズが8×8画素等の比較的小さいサイズである場合、変換係数復号部120の備える係数有無フラグ復号部は、以下の式を用いてコンテキストインデックスctxIdxを導出し、各周波数成分に割り付ける構成としてもよい。
ここで、
tbl={0、1、1、2、2、3、3、3}
である。
ctxIdx=N8+4×tbl[uiPosY]+tbl[uiPosX]
tbl={0、0、1、1、2、2、3、3}
によって導出するものである。
tbl={0、1、1、2、2、3、3、3}
図25(c)は、本構成例に係る係数有無フラグ復号部によって導出されたctxIdxHの例を示している。
tbl={0、1、1、2、2、3、3、3}
図25(d)は、本構成例に係る係数有無フラグ復号部によって導出されたctxIdxVの例を示している。
ctxIdx=pref_y_flag? ctxIdxV:ctxIdxH
によってコンテキストインデックスctxIdxを導出する構成としてもよい。
本実施形態に係る係数有無フラグ復号部は、周波数領域の全体を1つのブロック(変換ブロック)として係数有無フラグを復号するのではなく、周波数領域の全体を示す1つのブロックをたとえば4×4のサブブロックに分割し、サブブロックの単位で係数有無フラグを復号する構成としてもよい。
図31は、本実施形態に係る係数有無フラグ復号部の第7の構成例としての係数有無フラグ復号部124−Aを示すブロック図である。また、図33は、係数有無フラグ復号部124−Aにおける復号処理の流れを示すフローチャートである。
サブブロック係数有無フラグ復号部X1は、ビット復号部132より供給されるBinを解釈し、周波数領域を構成する各サブブロックの中に少なくとも1つ非0の変換係数が存在するか否かを示すサブブロック係数有無フラグ(significant_coeffgroup_flag)を復号する(図33のステップSY1)。
係数有無フラグ復号部124−Aの備える周波数分類部124aは、周波数領域における復号対象の周波数成分の位置に応じて、当該周波数成分を複数の部分領域の何れかに分類すると共に、低周波位置コンテキスト導出部124b、及び周辺参照コンテキスト導出部124cの何れかによって導出されたコンテキストインデックスctxIdxを、当該復号対象の周波数成分に割り付ける(図33のステップSY3)。
yCG=uiPosY>>2 ・・・(eq.A2)
ここで、xCG=0、1、...、(sz−1)>>2であり、yCG=0、1、...、(sz−1)>>2であるとする。
********************************************************************
if( xCG+yCG<THA){
if( uiPosX+uiPosY<THZ ) {
R0へ分類
}
else{// if( uiPosX+uiPosY>=THZ)
R1へ分類
}
else{//if( xCG+yCG>=THA ){
R2へ分類
}
}
********************************************************************
ここで、閾値THZとして2を用いる。THAは、THA≧THZ/4を満たす閾値を表している。具体的な値としては、例えば、周波数領域のサイズ(処理対象TUのサイズ)に関わらず、THA=1とすればよい。また、周波数領域のサイズlog2TrafoSizeを用いて、THA=1<<(log2TrafoSize-2)としてもよい。すなわち、周波数領域のサイズが16×16である場合、THA=1とし、周波数領域のサイズが32×32である場合、THA=2としてもよい。このように、周波数領域のサイズに応じて、異なる閾値を用いる構成としてもよい。また、閾値THZを1としても良い。
係数有無フラグ復号部124−Aの備える低周波位置コンテキスト導出部124bは、復号対象の周波数成分が、低周波数側の部分領域に含まれる場合に、当該周波数成分に対するコンテキストインデックスctxIdxを、周波数領域における当該周波数成分の位置に基づいて導出する。
なお、NXはコンテキストインデックスの開始点を表す定数である。周波数領域のサイズが4×4及び8×8で用いるコンテキスト数が各々N4個、N8個の場合には、周波数領域のサイズが16×16および32×32の開始点はNX=N4+N8になる。
係数有無フラグ復号部124−Aの備える周辺参照コンテキスト導出部124cは、復号対象の周波数成分に対するコンテキストインデックスctxIdxを、当該周波数成分の周辺の周波数成分について復号済みの非0変換係数の数cntに基づいて導出する。
ここで、tempは、
temp=(cnt+1)>>1
によって定まる。
ここで、tempは、上記の場合と同様に、
temp=(cnt+1)>>1
によって定まる。
ここで、(eq.A6)における各項は、()内の比較が真である場合に1をとり、()内の比較が偽である場合に0をとるものとする。
また、対象とする変換係数のサブブロック内の位置に応じて、数式(eq.A6)と数式(eq.A7)との何れかを用いて変換係数を導出する構成としてもよい。すなわち、対象とする変換係数のサブブロック内の位置に応じて、変換係数の導出に用いる参照成分を変更する構成としてもよい。
・uiPosX+uiPosY<2を満たす周波数成分を部分領域R0に分類する。
(1)uiPosX+uiPosY<THZを満たす周波数成分を部分領域R0に分類する。
ctxIdx=NX+3+min(2,temp) ・・・(eq.A4)
temp=(cnt+1)>>1
を用い、さらにcntは4点参照、例えば、数式(eq.A7)を用いる構成でも良い。この構成では、サブブロック内の係数有無フラグの復号に用いるコンテキスト導出を簡略化することができる。
また、次の条件によりR0、R1へ分類してもよい。
*******************************************************************
if ( xCG+yCG==0 ){
if( uiPosX+uiPosY<THZ ){
R0へ分類
}
else {// if( uiPosX+uiPosY>=THZ)
R1へ分類
}
}
else{//if( xCG+yCG>0 )
R1へ分類
}
*******************************************************************
上記分類処理によれば、サブブロック位置(xCG、yCG)が(0、0)以外の部分におけるサブブロック内での周波数成分を分類するための分岐処理をなくすことができる。
*******************************************************************
If log2TrafoSize is less than or equal to 3, sigCtx is derived as follows.
shift = log2TrafoSize = = 3 ? 1 : 0 sigCtx = ( shift * 15 ) + ( ( yC >> shift ) << 2 ) + ( xC >> shift )
If cIdx is equal to 0 and log2TrafoSize is larger than 3, sigCtx is derived as follows
If xC + yC is less than 1, sigCtx is derived as follows.
sigCtx = 31
Otherwise if (xC>>2) + (yC>>2) is less than 1 << (uiLog2BlkSize-4), sigCtx is derived as follows.
temp = significant_coeff_flag[ xC + 1 ][ yC ] + significant_coeff_flag[ xC + 2 ][ yC ] + significant_coeff_flag[ xC ][ yC + 1 ] + significant_coeff_flag[ xC + 1 ][ yC + 1 ] + significant_coeff_flag[ xC ][ yC + 2 ] temp = ( temp + 1) >>1 sigCtx = 32 + Min( 2, temp )
Otherwise ((xC>>2) + (yC>>2) is greater than or equal to 1 << (uiLog2BlkSize-4))), sigCtx is derived using previously decoded bins of the syntax element significant_coeff_flag as follows.
The variable ctxCnt is initialized as follows.
ctxCnt = 0
When xC is less than ( 1 << log2TrafoSize ) ? 1, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 1 ][ yC ]
When xC and yC are less than ( 1 << log2TrafoSize ) ? 1, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 1 ][ yC + 1 ]
When xC is less than ( 1 << log2TrafoSize ) ? 2, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 2 ][ yC ]
When yC is less than ( 1 << log2TrafoSize ) ? 2 and ctxCnt is less than 3,the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC ][ yC + 2 ]
ctxCnt =(ctxCnt + 1) >>1 sigCtx = 35 + ctxCnt
If cIdx is greater than 0 and log2TrafoSize is larger than 3, sigCtx is derived as follows
If xC + yC is less than 1, sigCtx is derived as follows.
sigCtx = 31
Otherwise (xC + yC is greater than or equal to 1), sigCtx is derived using previously decoded bins of the syntax element significant_coeff_flag as follows.
The variable ctxCnt is initialized as follows.
ctxCnt = 0
When xC is less than ( 1 << log2TrafoSize ) ? 1, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 1 ][ yC ]
When xC and yC are less than ( 1 << log2TrafoSize ) ? 1, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 1 ][ yC + 1 ]
When xC is less than ( 1 << log2TrafoSize ) ? 2, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 2 ][ yC ]
When yC is less than ( 1 << log2TrafoSize ) ? 1, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC ][ yC + 1 ]
When yC is less than ( 1 << log2TrafoSize ) ? 2 and ctxCnt is less than 3, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC ][ yC + 2 ]
ctxCnt =((ctxCnt + 1) >>1 sigCtx = 32 + ctxCnt
*******************************************************************
以下では、係数有無フラグ復号部の第7の構成例において、変換ブロックサイズが16×16、32×32のときに、周波数領域を部分領域R0、R1、R2へ分割し、R0では低周波位置コンテキスト、R1では図10(a)に示す5つの参照周波数成分(c1、c2、c3、c4、c5)を、R2では、図36(a)に示す4つの参照周波数成分(c1、c2、c4、c5)を用いて周辺参照コンテキストによりコンテキストインデックスctxIdxを導出する場合の疑似コードを示す。なお、疑似コード中のsigCtxは、ctxIdxと同義である。
*******************************************************************
If log2TrafoSize is less than or equal to 3, sigCtx is derived as follows.
shift = log2TrafoSize = = 3 ? 1 : 0 sigCtx = ( shift * 15 ) + ( ( yC >> shift ) << 2 ) + ( xC >> shift )
If cIdx is equal to 0 and log2TrafoSize is larger than 3, sigCtx is derived as follows
If xC + yC is less than 1, sigCtx is derived as follows.
sigCtx = 31
Otherwise if xC + yC is less than 1 << (uiLog2BlkSize-2), sigCtx is derived as follows.
temp = significant_coeff_flag[ xC + 1 ][ yC ] + significant_coeff_flag[ xC + 2 ][ yC ] + significant_coeff_flag[ xC ][ yC + 1 ] + significant_coeff_flag[ xC + 1 ][ yC + 1 ] + significant_coeff_flag[ xC ][ yC + 2 ] temp = ( temp + 1) >>1 sigCtx = 32 + Min( 2, temp )
Otherwise (xC + yC is greater than or equal to 1 << (uiLog2BlkSize-2)), sigCtx is derived using previously decoded bins of the syntax element significant_coeff_flag as follows.
The variable ctxCnt is initialized as follows.
ctxCnt = 0
When xC is less than ( 1 << log2TrafoSize ) ? 1, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 1 ][ yC ]
When xC and yC are less than ( 1 << log2TrafoSize ) ? 1, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 1 ][ yC + 1 ]
When xC is less than ( 1 << log2TrafoSize ) ? 2, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 2 ][ yC ]
When yC is less than ( 1 << log2TrafoSize ) ? 2 and ctxCnt is less than 3, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC ][ yC + 2 ]
ctxCnt =(ctxCnt + 1) >>1 sigCtx = 35 + ctxCnt
If cIdx is greater than 0 and log2TrafoSize is larger than 3, sigCtx is derived as follows
If xC + yC is less than 1, sigCtx is derived as follows.
sigCtx = 31
Otherwise if xC + yC is less than 1 << (uiLog2BlkSize-2), sigCtx is derived as follows.
temp = significant_coeff_flag[ xC + 1 ][ yC ] + significant_coeff_flag[ xC + 2 ][ yC ] + significant_coeff_flag[ xC ][ yC + 1 ] + significant_coeff_flag[ xC + 1 ][ yC + 1 ] + significant_coeff_flag[ xC ][ yC + 2 ]
temp = ( temp + 1) >>1 sigCtx = 32 + Min( 2, temp )
Otherwise (xC + yC is greater than or equal to 1 << (uiLog2BlkSize-2)), sigCtx is derived using previously decoded bins of the syntax element significant_coeff_flag as follows.
The variable ctxCnt is initialized as follows.
ctxCnt = 0
When xC is less than ( 1 << log2TrafoSize ) ? 1, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 1 ][ yC ]
When xC and yC are less than ( 1 << log2TrafoSize ) ? 1, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 1 ][ yC + 1 ]
When xC is less than ( 1 << log2TrafoSize ) ? 2, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC + 2 ][ yC ]
When yC is less than ( 1 << log2TrafoSize ) ? 2 and ctxCnt is less than 3, the following applies.
ctxCnt = ctxCnt + significant_coeff_flag[ xC ][ yC + 2 ]
ctxCnt =(ctxCnt + 1) >>1 sigCtx = 32 + ctxCnt
*******************************************************************
<係数有無フラグ復号部の第8の構成例>
図37は、本実施形態に係る係数有無フラグ復号部の第8の構成例としての係数有無フラグ復号部124−Bを示すブロック図である。本構成例に係る係数有無フラグ復号部124−Bにおける復号処理の流れは、図33に示したフローチャートを参照して説明される。
係数有無フラグ復号部124−Bの備えるサブブロック係数有無フラグ復号部X1は、ビット復号部132より供給されるBinを解釈し、周波数領域を構成する各サブブロックの中に少なくとも1つ非0の変換係数が存在するか否かを示すサブブロック係数有無フラグ(significant_coeffgroup_flag)を復号する(図33のステップSY1)。
係数有無フラグ復号部124−Bの備える周波数分類部124aは、周波数領域における復号対象の周波数成分の位置に応じて、当該周波数成分を複数の部分領域の何れかに分類すると共に、低周波位置コンテキスト導出部124b、周辺参照コンテキスト導出部124c、及び高周波位置コンテキスト導出部124dの何れかによって導出されたコンテキストインデックスctxIdxを、当該復号対象の周波数成分に割り付ける(図33のステップSY3)。
yCG=uiPosY>>2 ・・・(eq.B2)
ここで、xCG=0、1、...、(sz−1)>>2であり、yCG=0、1、...、(sz−1)>>2であるとする。
*******************************************************************
if( xCG+yCG<THB ) {
if( uiPosX+uiPosY<THZ){
R0へ分類
}
else if( uiPosX+uiPosY<TH1 ){
R1へ分類
} else{ //if(uiPosX+uiPosY>=TH1)
R2へ分類
}
else{// if(xCG+yCG>=THB)
R3へ分類
}
*******************************************************************
ここで、閾値THZには2を用いる。また、TH1及びTHBの具体的な値としては、例えば、周波数領域のサイズ(処理対象TUのサイズ)log2TrafoSizeを用いて、
TH1=5、
THB=1<<(log2TrafoSize-2)
とすればよい。また、周波数領域のサイズが16×16である場合、TH1=5、THB=4とし、周波数領域のサイズが32×32である場合、TH1=5、THB=8としてもよい。
また、閾値TH1及びTHBは周波数領域のサイズlog2TrafoSizeを用いて、
TH1=5、
THB=1<<(log2TrafoSize-4)
と設定してもよい。すなわち、周波数領域のサイズが16×16である場合、TH1=5、THB=1とし、周波数領域のサイズが32×32である場合、TH1=5、THB=2と設定する。また、他の値に設定することもできる。
TH1=5、
THB=1<<(log2TrafoSize−3)
と設定してもよい。すなわち、周波数領域のサイズが16×16である場合、TH1=5、THB=2とし、周波数領域のサイズが32×32である場合、TH1=5、THB=4と設定する。このように、周波数領域のサイズに応じて、異なる閾値を用いる構成としてもよい。
係数有無フラグ復号部124−Bの備える低周波位置コンテキスト導出部124bは、復号対象の周波数成分が、低周波数側の部分領域に含まれる場合に、当該周波数成分に対するコンテキストインデックスctxIdxを、周波数領域における当該周波数成分の位置に基づいて導出する。
なお、NXはコンテキストインデックスの開始点を表す定数である。周波数領域のサイズが4×4及び8×8で用いるコンテキスト数が各々N4個、N8個の場合には、周波数領域のサイズが16×16および32×32の開始点はNX=N4+N8になる。
係数有無フラグ復号部124−Bの備える周辺参照コンテキスト導出部124cは、復号対象の周波数成分に対するコンテキストインデックスctxIdxを、当該周波数成分の周辺の周波数成分について復号済みの非0変換係数の数cntに基づいて導出する。
なお、部分領域R1において、非0変換係数のカウント数cntは、図10(a)または図10(b)に示す(C1、C2、C3、C4、C5)を用いて、以下の式(eq.B5)によって導出する。
また、係数有無フラグ復号部124−Bの備える周辺参照コンテキスト導出部124cは、部分領域R2に属する周波数成分に対して、以下の式(eq.B6)を用いてコンテキストインデックスctxIdxを導出すると共に、導出したコンテキストインデックスctxIdxを周波数分類部124aに供給する。
なお、部分領域R2において、非ゼロ変換係数のカウント数cntは、図36(a)に示す参照周波数成分(c1、c2、c4、c5)を用いて、対象とする変換係数の位置の、処理順で直前(処理順が逆スキャン順である場合には、対象とする変換係数の位置の下側)に位置する座標(c3)の変換係数を参照しないようにした以下の式(eq.B7)によって導出する。このような処理は、ある位置の係数有無フラグの復号に用いるコンテキスト導出を、直前の係数有無フラグの値を参照せずに行うことができるため、コンテキスト導出処理と復号処理とを並列に処理することができる。
ここで、式(eq.B7)の各項は、()内の比較が真である場合に1をとり、()内の比較が偽である場合に0をとるものとする。
係数有無フラグ復号部124−Bの備える高周波位置コンテキスト導出部124dは、復号対象の周波数成分が、高周波数側の部分領域に含まれる場合に、当該周波数成分に対するコンテキストインデックスctxIdxを、周波数領域における当該周波数成分の位置と、当該周波数成分の属するサブブロックの位置に基づいて導出する。
ここで、記号「>>」は、右ビットシフトを表している。また、shift及びmaxR3としては、例えば、対象周波数領域のサイズが16×16の場合は、shift=0、maxR3=3を用い、対象周波数領域のサイズが32×32の場合は、shift=1、maxR3=3を用いればよいが本実施形態はこれに限定されるものではない。
*******************************************************************
if( xCG+yCG<THA ){
if( uiPosX+uiPosY<THZ ){
R0へ分類
}
else {// if(uiPosX+uiPosY>THZ)
R1へ分類
}
}
else if( xCG+yCG<THB ){
R2へ分類
}
else{ // if( xCG+yCG>=THB)
R3へ分類
}
*******************************************************************
ここで、閾値THZには2を用いる。また、THA及びTHBの具体的な値としては、例えば、周波数領域のサイズ(処理対象TUのサイズ)log2TrafoSizeを用いて、
THA=1<<(log2TrafoSize-4)、
THB=1<<(log2TrafoSize-2)
とすればよい。また、周波数領域のサイズが16×16である場合、THA=1、THB=4とし、周波数領域のサイズが32×32である場合、THA=2、THB=8としてもよい。また、閾値THBは、周波数領域のサイズlog2TrafoSizeを用いて、
THB=1<<(log2TrafoSize-3)
と設定してもよい。すなわち、周波数領域のサイズが16×16である場合、THB=2とし、周波数領域のサイズが32×32である場合、THB=4と設定する。このように、周波数領域のサイズに応じて、異なる閾値を用いる構成としてもよい。
*******************************************************************
If log2TrafoSize is less than or equal to 3, sigCtx is derived as follows.
shift = log2TrafoSize = = 3 ? 1 : 0
sigCtx = ( shift * 15 ) + ( ( yC >> shift ) << 2 ) + ( xC >> shift )
If cIdx is equal to 0 and log2TrafoSize is larger than 3, sigCtx is derived as follows
If xC + yC is less than 1, sigCtx is derived as follows.
sigCtx = 31
Otherwise if (xC>>2) + (yC>>2) is less than 1 << (uiLog2BlkSize-4), sigCtx is derived as follows.
temp = significant_coeff_flag[ xC + 1 ][ yC ] + significant_coeff_flag[ xC + 2 ][ yC ] + significant_coeff_flag[ xC + 1 ][ yC + 1 ] + significant_coeff_flag[ xC ][ yC + 2 ] temp = ( temp + 1) >>1 sigCtx = 32 + Min( 2, temp )
Otherwise if (xC>>2) + (yC>>2) is less than 1 << (uiLog2BlkSize-2), sigCtx is derived as follows.
temp = significant_coeff_flag[ xC + 1 ][ yC ] + significant_coeff_flag[ xC + 2 ][ yC ] + significant_coeff_flag[ xC ][ yC + 1 ] + significant_coeff_flag[ xC + 1 ][ yC + 1 ] + significant_coeff_flag[ xC ][ yC + 2 ]
temp = ( temp + 1) >>1 sigCtx = 35 + Min( 2, temp )
Otherwise (xC>>2) + (yC>>2) is greater than or equal to 1 << (uiLog2BlkSize-2), sigCtx is derived using previously decoded bins of the syntax element significant_coeff_flag as follows.
sigCtx = 38
If cIdx is greater than 0 and log2TrafoSize is larger than 3, sigCtx is derived as follows
If xC + yC is less than 1, sigCtx is derived as follows.
sigCtx = 31
Otherwise if(xC>>2)+(yC>>2)is less than 1 << (uiLog2BlkSize-3), sigCtx is derived using previously decoded bins of the syntax element significant_coeff_flagas follows.
temp = significant_coeff_flag[ xC + 1 ][ yC ] + significant_coeff_flag[ xC + 2 ][ yC ] + significant_coeff_flag[ xC + 1 ][ yC + 1 ] + significant_coeff_flag[ xC ][ yC + 2 ]
temp = ( temp + 1) >>1 sigCtx = 35 + Min( 2, temp )
Otherwise if((xC>>2)+ (yC>>2) is greater than or equal to 1 << (uiLog2BlkSize-3))) sigCtx is derived using previously decoded bins of the syntax element significant_coeff_flag as follows.
sigCtx = 38
*******************************************************************
<係数有無フラグ復号部の第8の構成例の他の構成例>
以下では、係数有無フラグ復号部124−Bによる他の処理例について図48、図52〜図53を参照して説明する。
閾値TH2を用いて、周波数分類部124aは、図52に示すように、対象変換係数の周波数成分上の位置(xC、yC)をあるサブブロックサイズ(ここでは4)で割った値に応じて、互いに参照数の異なる部分領域R2と部分領域R3を分類する。
ここで2つの部分領域を区別する閾値TH2は、既に説明した通りTH2×サブブロックサイズ(=4)が、対象周波数領域のサイズMax(width、height)よりも小さいことを満たすことが好ましい。
ここで、ctxcCntは、カウント数に応じて得られる値である。ここでは、カウント数を多対一変換する処理(集約処理)により集約して得る。すなわち、以下の式のように、約1/2にするように右シフトして得られる値であり
ctxCnt=(cnt+1)>>1
によって定まる。また、右シフトによらず、以下のようにカウント数を固定値(ここでは3)にクリップする処理により多対一変換を行っても良い。
なお、非0変換係数のカウント数cntは、次の擬似コードのように、対象変換係数の周波数成分上の位置(xC、yC)に応じて、c1、c2、c3、c4、c5の5つの既に復号済みの変換係数を参照するか、もしくは、c1、c2、c4、c5の4つの既に復号済みの変換係数を参照することで算出する。
))
{
cnt = (c1!=0) + (c2!=0) + (c4!=0) + (c5!=0);
} else{
cnt= (c1!=0) + (c2!=0) + (c3!=0) + (c4!=0) + (c5!=0);
}
また、周辺参照コンテキスト導出部124cは、例えば、図48(a)に示す部分領域R2に属する周波数成分に対して、以下の式を用いてコンテキストインデックスsigCtxを導出し、その導出結果sigCtxを周波数分類部124aに供給する。
なお、非0変換係数のカウント数cntの計算方法は、部分領域R1と同様である。
高周波数成分である部分領域R3では、低周波数成分の部分領域R1、R2と異なり位置コンテキストによりコンテキストを導出するため、処理量が削減される。
なお、高周波位置コンテキスト導出部124dにおいて、周囲参照コンテキスト導出部124cで用いるコンテキストを用いることもできる。すなわち、周囲参照コンテキストを用いる部分領域と、位置コンテキストを用いる高周波領域の部分領域とでコンテキストを共有することができる。このような構成について図54〜図56を用いて具体例を説明する。
すなわち、周辺参照コンテキスト導出部124cにおいてオフセット値ctxCnt = 0として求められる部分領域R2で用いるコンテキストを、高周波位置コンテキスト導出部124dの導出する部分領域R3のコンテキストとしても用いる。なお、2つの処理を統一するために、部分領域R3では以下の式で、コンテキストインデックスを導出しても良い。
sigCtx = sigCtxOffsetR2 + Min(2, ctxCnt);
この場合、部分領域R2では、オフセット値ctxCntをカウント値cntから求め、部分領域R3では、オフセット値ctxCntを0固定で求める。
但しctxCnt = 0。
但しctxCnt = 0である。
sigCtx = sigCtxOffsetR1 + ctxCnt;
上記の構成は、コンテキストインデックス導出手段(高周波位置コンテキスト導出部124d、周囲参照コンテキスト導出部124c)により導出される、輝度に関するコンテキストインデックスであって、高周波数側に属する部分領域で用いるコンテキストインデックスの値が、低周波数側に属する部分領域で用いるコンテキストインデックスの範囲以外の値であり、上記コンテキストインデックス導出手段により導出される、色差に関するコンテキストインデックスであって、高周波数側に属する部分領域で用いるコンテキストインデックスの値が、低周波数側に属する部分領域で用いるコンテキストインデックスの範囲内である、と表現することもできる。
以下では、係数有無フラグ復号部124−Bによるコンテキスト更新遅延除去を考慮した処理例について図48、図52〜図53を参照して説明する。
(xC & 3) + (yC & 3 << 2)
の演算により、ラスタスキャン上のアドレスを得た後、図57(b)に示すテーブルを参照することによって、オフセット値ctxCntを得る。なお、オフセット値ctxCntの算出は、テーブルを用いることなくサブブロック内のカウンタcntInSubBlockを用いることで通常の演算で算出することができる。図57(d)は、この演算の例である。カウンタcntInSubBlockは、サブブロックのスキャン順に0、1、2、3、・・・、15の値をとるものとする。この場合、カウンタcntInSubBlockと2の剰余(&1)によって、オフセット値ctxCntを算出することができる。なお、カウントcntInSubBlockの値は逆スキャン順に0、1、2、3、・・・、15の値をとっても良い。
ここで、ctxcCntは、多対一変換する処理(集約処理)、ここでは以下の式のようにカウント数を約1/2にするように右シフトする処理によって得る。
なお、多対一変換する処理は、以下のようにカウント数を固定値(ここでは3)にクリップする処理でも良い。
なお、非0変換係数のカウント数cntは、次の擬似コードのように、対象変換係数の周波数成分上の位置(xC、yC)に応じて、c1、c2、c3、c4、c5の5つの既に復号済みの変換係数を参照するか、もしくは、c1、c2、c4、c5の4つの既に復号済みの変換係数を参照することで算出する。
))
{
cnt = (c1!=0) + (c2!=0) + (c4!=0) + (c5!=0);
} else{
cnt= (c1!=0) + (c2!=0) + (c3!=0) + (c4!=0) + (c5!=0);
}
また、周辺参照コンテキスト導出部124cは、例えば、図48(a)に示す部分領域R2に属する周波数成分に対して、以下の式を用いてコンテキストインデックスsigCtxを導出し、その導出結果sigCtxを周波数分類部124aに供給する。
なお、非0変換係数のカウント数cntの計算方法は、部分領域R1と同様である。
このオフセット値と、部分領域R3用のコンテキストインデックスの開始点sigCtxOffsetR3との和により、以下の式によって、コンテキストインデックスsigCtxを導出し、その導出結果sigCtx を周波数分類部124aに供給する。
高周波数成分である部分領域R3では、位置コンテキストによりコンテキストを導出するため処理量を削減と、コンテキスト導出処理と復号処理と、コンテキストの保持する状態のアップデートに伴う遅延削除によるスループット向上効果を得ることができる。
色差の場合には以下の式でコンテキストインデックスsigCtxを導出する。
上記処理によって、コンテキスト共有によりコンテキスト用のメモリを低減しながら、位置コンテキストによりコンテキストを導出するため処理量の削減と、コンテキスト導出処理と復号処理と、コンテキストの保持する状態のアップデートとに伴う遅延削除によるスループット向上効果を得ることができる。
本実施形態に係る係数有無フラグ復号部の第9の構成例について、図40を参照して説明する。本構成例は、第4の構成例に係る周波数分類部124aにおいて、周波数領域を部分領域R0〜R5へ分類する際の条件を変更したものである。なお、上記第7〜第8の構成例で示した部材と同一の機能を有する部材には、同一の符号を付し、その説明を省略する。
係数有無フラグ復号部124−Cの備えるサブブロック係数有無フラグ復号部X1は、ビット復号部132より供給されるBinを解釈し、周波数領域を構成する各サブブロックの中に少なくとも1つ非0の変換係数が存在するか否かを示すサブブロック係数有無フラグ(siginificant_coeffgroup_flag)を復号する(図33のステップSY1)。
係数有無フラグ復号部124−Cの備える周波数分類部124aは、周波数領域における復号対象の周波数成分の位置に応じて、当該周波数成分を複数の部分領域の何れかに分類すると共に、低周波位置コンテキスト導出部124b、周辺参照コンテキスト導出部124c、及び高周波数位置コンテキスト導出部124dの何れかによって導出されたコンテキストインデックスctxIdxを、当該復号対象の周波数成分に割り付ける(図33のステップSY3)。
yCG=uiPosY>>2 ・・・(eq.C2)
ここで、xCG=0、1、...、(sz−1)>>2であり、yCG=0、1、...、(sz−1)>>2であるとする。
*******************************************************************
if( xCG+yCG<THC ){
if( uiPosX+uiPosY<THZ ){
R0へ分類
}
else if( uiPosX+uiPosY<TH1){
R1へ分類
}
else { //if(uiPosX+uiPosY>=TH1)
R2へ分類
}
}
else if( xCG+yCG<THD ){
R3へ分類
}
else { // if(xCG+yCG>=THD
R4へ分類
}
*******************************************************************
ここで、閾値THZは2を用いる。また、閾値TH1=5である。また、閾値THC、及びTHDの具体的な値としては、例えば、周波数領域のサイズlog2TrafoSizeを用いて、次のように設定すればよい。
THD=1<<(log2TrafoSize−2)+2
すなわち、周波数領域のサイズが16×16である場合、THC=4、THD=6とし、周波数領域のサイズが32×32である場合、THC=8、THD=10と設定する。このように、周波数領域のサイズに応じて、異なる閾値を用いる構成としてもよい。
係数有無フラグ復号部124−Cの備える低周波位置コンテキスト導出部124bは、復号対象の周波数成分が、低周波数側の部分領域に含まれる場合に、当該周波数成分に対するコンテキストインデックスctxIdxを、周波数領域における当該周波数成分の位置に基づいて導出する。
なお、NXはコンテキストインデックスの開始点を表す定数である。周波数領域のサイズが4×4及び8×8で用いるコンテキスト数が各々N4個、N8個の場合には、周波数領域のサイズが16×16および32×32の開始点はNX=N4+N8になる。
係数有無フラグ復号部124−Cの備える周辺参照コンテキスト導出部124cは、復号対象の周波数成分に対するコンテキストインデックスctxIdxを、当該周波数成分の周辺の周波数成分について復号済みの非0変換係数の数cntに基づいて導出する。
temp=(cnt+1)>>1
ctxIdx=NX+6+min(2、temp) ・・・(eq.C5)
temp=(cnt+1)>>1
なお、部分領域R1、及びR2において、非0変換係数のカウント数cntは、図10(a)または図10(b)に示す(C1、C2、C3、C4、C5)を用いて、以下の式(eq.C6)によって導出する。
あるいは、図36(a)に示す参照周波数成分(c1、c2、c4、c5)を用いて、対象とする変換係数の位置の、処理順で直前(処理順が逆スキャン順である場合には、対象とする変換係数の位置の下側)に位置する座標(c3)の変換係数を参照しないようにした以下の式(eq.C7)によって導出してもよい。このような処理は、ある位置の係数有無フラグの復号に用いるコンテキスト導出を、直前の係数有無フラグの値を参照せずに行うことができるため、コンテキスト導出処理と復号処理とを並列に処理することができる。
また、本構成例に係る辺参照コンテキスト導出部124cは、部分領域R3に属する周波数成分に対して、以下の式(eq.C8)を用いてコンテキストインデックスctxIdxを導出し、その導出結果ctxIdxを周波数分類部124aに供給する。
temp=(cnt+1)>>1
また、部分領域R3において、非ゼロ変換係数のカウント数cntは、図15(i)に示す3つの参照周波数成分(c1、c3、c4)を用いて、以下の式(eq.C9)によって導出する。
ここで、各項は、()内の比較が真である場合に1をとり、()内の比較が偽である場合に0をとるものとする。
(係数有無フラグ復号部124−Cの備える高周波位置コンテキスト導出部124d)
係数有無フラグ復号部124−Cの備える高周波位置コンテキスト導出部124dは、復号対象の周波数成分が、高周波数側の部分領域に含まれる場合に、当該周波数成分に対するコンテキストインデックスctxIdxを、周波数領域における当該周波数成分の位置に基づいて導出する。
ここで、shift及びmaxR3としては、例えば、対象周波数領域のサイズが16×16の場合は、shift=0、maxR3=3を用い、対象周波数領域のサイズが32×32の場合は、shift=1、maxR3=3を用いればよいが、本実施形態はこれに限定されるものではない。
*******************************************************************
if( xCG+yCG<THE ){
if( uiPosX+uiPosY<THZ ){
R0へ分類
}
else{ // if( uiPosX+uiPosY>=THZ )
R1へ分類
}
}
else if( xCG+yCG<THF ){
R2へ分類
}
else if( xCG+yCG<THG ){
R3へ分類
}
else{ // xCG+yCG>=THG
R4へ分類
}
*******************************************************************
ここで、閾値THZは2を用いる。また、閾値THE、THF及びTHGの具体的な値としては、例えば、周波数領域のサイズ(処理対象TUのサイズ)log2TrafoSizeを用いて、
THE=1
THF=1<<(log2TrafoSize-2)
THG=1<<(log2TrafoSize-2)+2
と設定すればよい。すなわち、周波数領域のサイズが16×16である場合、THE=1、THF=2、THG=4とし、周波数領域のサイズが32×32である場合、THE=1、THF=4、THG=10としてもよい。このように、周波数領域のサイズに応じて、異なる閾値を用いる構成としてもよい。
(1)uiPosX+uiPosY<THZ、かつ、xCG+yCG<THGを満たす周波数成分を部分領域R0に分類する。
*******************************************************************
if ( xCG+yCG<THG ){
if( uiPosX+uiPosY<THZ ){
R0へ分類
}
else{ //if( uiPosX+uiPosY>=THZ)
R1へ分類
}
}
else {// if( xCG+yCG>=THG)
R4へ分類}
*******************************************************************
以上のように、本構成例に係る係数有無フラグ復号部124−Cにおいて、周波数分類部124aは、対象周波数領域を、処理対象の変換係数有無フラグの位置と、その変換係数有無フラグが属するサブブロックの位置に応じて、少なくとも3つの部分領域に分類するものであり、
周辺参照コンテキスト導出部124cは、
第1の部分領域(部分領域R1またはR2)では、復号済みの非0変換係数をN1個(N1は自然数)参照し、
第2の部分領域(部分領域R3)では、復号済みの非0変換係数をN2個(N2はN2<N1を満たす自然数)参照することによって、コンテキストインデックスを導出し、
第3の部分領域(部分領域R4)では、高周波位置コンテキスト導出部124dが、変換係数有無フラグの属するサブブロックの位置に応じて、コンテキストインデックスを導出する。
本実施形態に係る動画像符号化装置2の構成について図26〜図28を参照して説明する。動画像符号化装置2は、H.264/MPEG−4 AVC規格に採用されている技術、VCEG(Video Coding Expert Group)における共同開発用コーデックであるKTAソフトウェアに採用されている技術、TMuC(Test Model under Consideration)ソフトウェアに採用されている技術、および、その後継コーデックであるHEVC(High-Efficiency Video Coding)にて提案されている技術を実装している符号化装置である。以下では、既に説明した部分と同じ部分については同じ符号を付し、その説明を省略する。
予測画像生成部21は、処理対象LCUを、1または複数の下位CUに再帰的に分割し、各リーフCUをさらに1または複数のパーティションに分割し、パーティション毎に、画面間予測を用いたインター予測画像Pred_Inter、または、画面内予測を用いたイントラ予測画像Pred_Intraを生成する。生成されたインター予測画像Pred_Interおよびイントラ予測画像Pred_Intraは、予測画像Predとして、加算器24および減算器28に供給される。
イントラ予測画像生成部21aは、画面内予測によって、各パーティションに関する予測画像Pred_Intraを生成する。具体的には、(1)各パーティションついてイントラ予測に用いる予測モードを選択し、(2)選択した予測モードを用いて、復号画像Pから予測画像Pred_Intraを生成する。イントラ予測画像生成部21aは、生成したイントラ予測画像Pred_Intraを、予測方式制御部21dに供給する。
動きベクトル検出部21bは、各パーティションに関する動きベクトルmvを検出する。具体的には、(1)参照画像として利用する適応フィルタ済復号画像P_ALF’を選択し、(2)選択した適応フィルタ済復号画像P_ALF’において対象パーティションを最良近似する領域を探索することによって、対象パーティションに関する動きベクトルmvを検出する。ここで、適応フィルタ済復号画像P_ALF’は、既にフレーム全体の復号が完了した復号済みの復号画像に対して、ループフィルタ26による適応的フィルタ処理を施すことによって得られる画像であり、動きベクトル検出部21bは、適応フィルタ済復号画像P_ALF’を構成する各画素の画素値をフレームメモリ25から読み出すことができる。動きベクトル検出部21bは、検出した動きベクトルmvを、参照画像として利用した適応フィルタ済復号画像P_ALF’を指定する参照画像インデックスRIと共に、インター予測画像生成部21c及び動きベクトル冗長性削除部21eに供給する。
インター予測画像生成部21cは、画面間予測によって、各インター予測パーティションに関する動き補償画像mcを生成する。具体的には、動きベクトル検出部21bから供給された動きベクトルmvを用いて、動きベクトル検出部21bから供給された参照画像インデックスRIによって指定される適応フィルタ済復号画像P_ALF’から動き補償画像mcを生成する。動きベクトル検出部21bと同様に、インター予測画像生成部21cは、適応フィルタ済復号画像P_ALF’を構成する各画素の画素値をフレームメモリ25から読み出すことができる。インター予測画像生成部21cは、生成した動き補償画像mc(インター予測画像Pred_Inter)を、動きベクトル検出部21bから供給された参照画像インデックスRIと共に、予測方式制御部21dに供給する。
予測方式制御部21dは、イントラ予測画像Pred_Intra及びインター予測画像Pred_Interを符号化対象画像と比較し、イントラ予測を行うかインター予測を行うかを選択する。イントラ予測を選択した場合、予測方式制御部21dは、イントラ予測画像Pred_Intraを予測画像Predとして加算器24及び減算器28に供給すると共に、イントラ予測画像生成部21aから供給されるイントラ予測パラメータPP_Intraを可変長符号符号化部27に供給する。一方、インター予測を選択した場合、予測方式制御部21dは、インター予測画像Pred_Interを予測画像Predとして加算器24及び減算器28に供給すると共に、参照画像インデックスRI、並びに、後述する動きベクトル冗長性削除部21eから供給された推定動きベクトルインデックスPMVI及び動きベクトル残差MVDをインター予測パラメータPP_Interとして可変長符号符号化部27に供給する。また、予測方式制御部21dは、イントラ予測画像Pred_Intra及びインター予測画像Pred_Interのうち何れの予測画像を選択したのかを示す予測タイプ情報Pred_typeを可変長符号符号化部27に供給する。
動きベクトル冗長性削除部21eは、動きベクトル検出部21bによって検出された動きベクトルmvにおける冗長性を削除する。具体的には、(1)動きベクトルmvの推定に用いる推定方法を選択し、(2)選択した推定方法に従って推定動きベクトルpmvを導出し、(3)動きベクトルmvから推定動きベクトルpmvを減算することにより動きベクトル残差MVDを生成する。動きベクトル冗長性削除部21eは、生成した動きベクトル残差MVDを、選択した推定方法を示す推定動きベクトルインデックスPMVIと共に、予測方式制御部21dに供給する。
変換・量子化部22は、(1)符号化対象画像から予測画像Predを減算した予測残差Dに対してブロック(変換単位)毎にDCT変換(Discrete Cosine Transform)等の周波数変換を施し、(2)周波数変換により得られた変換係数Coeff_IQを量子化し、(3)量子化により得られた変換係数Coeffを可変長符号符号化部27及び逆量子化・逆変換部23に供給する。なお、変換・量子化部22は、(1)量子化の際に用いる量子化ステップQPをTU毎に選択し、(2)選択した量子化ステップQPの大きさを示す量子化パラメータ差分Δqpを可変長符号符号化部28に供給し、(3)選択した量子化ステップQPを逆量子化・逆変換部23に供給する。ここで、量子化パラメータ差分Δqpとは、周波数変換及び量子化するTUに関する量子化パラメータqp(例えばQP=2pq/6)の値から、直前に周波数変換及び量子化したTUに関する量子化パラメータqp’の値を減算して得られる差分値のことを指す。
・C(u)=1 (u≠0)
・C(v)=1/√2 (v=0)
・C(v)=1 (v≠0)
(逆量子化・逆変換部23)
逆量子化・逆変換部23は、(1)量子化された変換係数Coeffを逆量子化し、(2)逆量子化によって得られた変換係数Coeff_IQに対して逆DCT(Discrete Cosine Transform)変換等の逆周波数変換を施し、(3)逆周波数変換によって得られた予測残差Dを加算器24に供給する。量子化された変換係数Coeffを逆量子化する際には、変換・量子化部22から供給された量子化ステップQPを利用する。なお、逆量子化・逆変換部23から出力される予測残差Dは、変換・量子化部22に入力される予測残差Dに量子化誤差が加わったものであるが、ここでは簡単のために共通の呼称を用いる。逆量子化・逆変換部23のより具体的な動作は、動画像復号装置1の備える逆量子化・逆変換部13とほぼ同様である。
加算器24は、予測方式制御部21dにて選択された予測画像Predを、逆量子化・逆変換部23にて生成された予測残差Dに加算することによって、(局所)復号画像Pを生成する。加算器24にて生成された(局所)復号画像Pは、ループフィルタ26に供給されると共にフレームメモリ25に格納され、イントラ予測における参照画像として利用される。
可変長符号符号化部27は、(1)変換・量子化部22から供給された量子化後の変換係数Coeff並びにΔqp、(2)予測方式制御部21dから供給された量子化パラメータPP(インター予測パラメータPP_Inter、および、イントラ予測パラメータPP_Intra)、(3)予測タイプ情報Pred_type、および、(4)ループフィルタ26から供給されたフィルタパラメータFPを可変長符号化することによって、符号化データ#1を生成する。
減算器28は、予測方式制御部21dにて選択された予測画像Predを、符号化対象画像から減算することによって、予測残差Dを生成する。減算器28にて生成された予測残差Dは、変換・量子化部22によって周波数変換及び量子化される。
ループフィルタ26は、(1)復号画像Pにおけるブロック境界、またはパーティション境界の周辺の画像の平滑化(デブロック処理)を行うデブロッキングフィルタ(DF:Deblocking Filter)としての機能と、(2)デブロッキングフィルタが作用した画像に対して、フィルタパラメータFPを用いて適応フィルタ処理を行う適応フィルタ(ALF:Adaptive Loop Filter)としての機能を有している。
量子化残差情報符号化部271は、量子化された変換係数Coeff(uiPosX、uiPosY)をコンテキスト適応型2値算術符号化(CABAC:(Context-based Adaptive Binary Arithmetic Coding))することによって、量子化残差情報QDを生成する。生成された量子化残差情報QDに含まれるシンタックスは、図5に示した通りである。
図28は、量子化残差情報符号化部271の構成を示すブロック図である。図28に示すように、量子化残差情報符号化部271は、変換係数符号化部220及び算術符号符号化部230を備えている。
算術符号符号化部230は、変換係数符号化部220から供給される各Binをコンテキストを参照して符号化することによって量子化残差情報QDを生成するための構成であり、図1に示すように、コンテキスト記録更新部231及びビット符号化部232を備えている。
コンテキスト記録更新部231は、各コンテキストインデックスctxIdxによって管理されるコンテキスト変数CVを記録及び更新するための構成である。ここで、コンテキスト変数CVには、(1)発生確率が高い優勢シンボルMPS(most probable symbol)と、(2)その優勢シンボルMPSの発生確率を指定する確率状態インデックスpStateIdxとが含まれている。
ビット符号化部232は、コンテキスト記録更新部231に記録されているコンテキスト変数CVを参照し、変換係数符号化部220の備える各部から供給される各Binを符号化することによって量子化残差情報QDを生成する。また、符号化したBinの値はコンテキスト記録更新部231にも供給され、コンテキスト変数CVを更新するために参照される。
図28に示すように、変換係数符号化部220は、ラスト位置符号化部221、スキャン順テーブル格納部222、係数符号化制御部223、係数有無フラグ符号化部、係数値符号化部225、符号化係数記憶部226及びシンタックス導出部227を備えている。
シンタックス導出部227は、変換係数Coeff(uiPosX、uiPosY)の各値を参照し、対象周波数領域におけるこれらの変換係数を特定するためのシンタックスlast_significant_coeff_x、last_significant_coeff_y、significant_coeff_flag、coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag、及びcoeff_abs_level_minus3の各値を導出する。導出された各シンタックスは、符号化係数記憶部226に供給される。また、導出されたシンタックスのうちlast_significant_coeff_x、last_significant_coeff_yは、係数符号化制御部223及びラスト位置符号化部221にも供給される。また、導出されたシンタックスのうちsignificant_coeff_flagは、係数有無フラグ符号化部224もに供給される。なお、各シンタックスが示す内容については上述したためここでは説明を省略する。
ラスト位置符号化部221は、シンタックス導出部227より供給されるシンタックスlast_significant_coeff_x、last_significant_coeff_yを符号化する。また、これらのシンタックスを符号化して得られた各Binをビット符号化部232に供給する。また、シンタックスlast_significant_coeff_x及びlast_significant_coeff_yの符号化に用いたコンテキストインデックスctxIdxは、コンテキスト記録更新部231に供給される。
スキャン順テーブル格納部222には、処理対象のTUのサイズ、スキャン方向の種別を表すスキャンインデックス、及びスキャン順に沿って付与された周波数成分識別インデックスを引数として、処理対象の周波数成分の周波数領域における位置を与えるテーブルが格納されている。このようなスキャン順テーブルの一例としては、図5に示したScanOrderが挙げられる。
係数符号化制御部223は、量子化残差情報符号化部271の備える各部における符号化処理の順序を制御するための構成である。係数符号化制御部223は、シンタックス導出部227より供給されるシンタックスlast_significant_coeff_x及びlast_significant_coeff_yを参照し、順スキャンに沿った最後の非0変換係数の位置を特定すると共に、特定した最後の非0変換係数の位置を起点とするスキャン順であって、スキャン順テーブル格納部222に格納されたスキャン順テーブルよって与えられるスキャン順の逆スキャン順に、各周波数成分の位置(uiPosX、uiPosY)を、係数有無フラグ符号化部に供給する。
係数値符号化部225は、シンタックス導出部227から供給されるシンタックスcoeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag、及びcoeff_abs_level_minus3を符号化する。また、これらのシンタックスを符号化して得られた各Binをビット符号化部232に供給する。また、これらのシンタックスの符号化に用いたコンテキストインデックスctxIdxは、コンテキスト記録更新部231に供給される。
符号化係数記憶部226は、シンタックス導出部227によって導出されたシンタックスの各値を記憶しておくための構成である。特に、符号化係数記憶部226には、シンタックス導出部227によって導出されたシンタックスsignificant_coeff_flagの各値が記憶される。
本実施形態に係る係数有無フラグ符号化部は、周波数領域を、周波数の大きさに応じて1または複数の部分領域に分類し、部分領域毎に定められた導出方法によってコンテキストインデックスctxIdxを導出すると共に、導出したコンテキストインデックスctxIdxを用いて非0変換係数の有無を示すシンタックスsignificant_coeff_flagを符号化するための構成である。
図28には、本実施形態に係る係数有無フラグ符号化部の第1の構成例としての係数有無フラグ符号化部224が示されている。
周波数分類部224aは、周波数領域における符号化対象の周波数成分の位置に応じて、当該周波数成分を複数の部分領域の何れかに分類すると共に、低周波位置コンテキスト導出部224b、周辺参照コンテキスト導出部224c、及び高周波位置コンテキスト導出部224dの何れかによって導出されたコンテキストインデックスctxIdxを、当該符号化対象の周波数成分に割り付けるための構成である。
低周波位置コンテキスト導出部224bは、符号化対象の周波数成分が、低周波数側の部分領域に含まれる場合に、当該周波数成分に対するコンテキストインデックスctxIdxを、周波数領域における当該周波数成分の位置に基づいて導出するための構成である。
周辺参照コンテキスト導出部224cは、符号化対象の周波数成分に対するコンテキストインデックスctxIdxを、当該周波数成分の周辺の周波数成分について符号化済みの非0変換係数の数に基づいて導出するための構成である。
高周波位置コンテキスト導出部224dは、符号化対象の周波数成分が、高周波数側の部分領域に含まれる場合に、当該周波数成分に対するコンテキストインデックスctxIdxを、周波数領域における当該周波数成分の位置に基づいて導出するための構成である。
本実施形態に係る係数有無フラグ符号化部は、動画像復号装置1の備える係数有無フラグ復号部124−1に対応する構成としてもよい。
本実施形態に係る係数有無フラグ符号化部は、動画像復号装置1の備える係数有無フラグ復号部124−2に対応する構成としてもよい。
本実施形態に係る係数有無フラグ符号化部は、動画像復号装置1の備える係数有無フラグ復号部124’に対応する構成としてもよい。
本実施形態に係る係数有無フラグ符号化部は、動画像復号装置1の備える係数有無フラグ復号部124−3に対応する構成としてもよい。
本実施形態に係る係数有無フラグ符号化部は、動画像復号装置1の備える係数有無フラグ復号部124−4に対応する構成としてもよい。
図44は、係数有無フラグ復号部124−Aに対応する係数有無フラグ符号化部224−Aの構成を示すブロック図である。また、図43は、本構成例に係る係数有無フラグ符号化部224−Aの動作の流れを示すフローチャートである。
サブブロック係数有無フラグ符号化部X2は、シンタックス導出部227より供給された対象変換ブロックの周波数領域を構成する各サブブロックの中に少なくとも1つ非0の変換係数が存在するか否かを示すサブブロック係数有無フラグ(significant_coeffgroup_flag)を符号化する(図43のステップSY1’)。また、サブブロック係数有無フラグを符号化して得られた各Binをビット符号化部232に供給する。
係数有無フラグ符号化部224−Aの備える周波数分類部224aは、周波数領域における符号化対象の周波数成分の位置に応じて、当該周波数成分を複数の部分領域の何れかに分類すると共に、低周波位置コンテキスト導出部224b、及び周辺参照コンテキスト導出部224cの何れかによって導出されたコンテキストインデックスctxIdxを、当該符号化対象の周波数成分に割り付ける(図43のステップSY3’)。
係数有無フラグ符号化部224−Aの備える低周波位置コンテキスト導出部224bは、符号化対象の周波数成分が、低周波側の部分領域に含まれる場合、当該周波数成分に対するコンテキストインデックスctxIdxを、周波数領域における当該周波数成分の位置に基づいて導出する。
係数有無フラグ符号化部224−Aの備える周辺参照コンテキスト導出部224cは、符号化対象の周波数成分に対するコンテキストインデックスctxIdxを、当該周波数成分の周辺の周波数成分について符号化済みの非0変換係数の数に基づいて導出する。
図45は、係数有無フラグ復号部124−Bに対応する係数有無フラグ符号化部224−Bの構成を示すブロック図である。また、係数有無フラグ符号化部224−Bの動作の流れは、図43に示すフローチャートを用いて説明される。
係数有無フラグ符号化部224−Bの備えるサブブロック係数有無フラグ符号化部X2は、シンタックス導出部227より供給された対象変換ブロックの周波数領域を構成する各サブブロックの中に少なくとも1つ非0の変換係数が存在するか否かを示すサブブロック係数有無フラグ(significant_coeffgroup_flag)を符号化する(図43のステップSY1’)。また、サブブロック係数有無フラグを符号化して得られた各Binをビット符号化部232に供給する。
係数有無フラグ符号化部224−Bの備える周波数分類部224aは、周波数領域における符号化対象の周波数成分の位置に応じて、当該周波数成分を複数の部分領域の何れかに分類すると共に、低周波位置コンテキスト導出部224b、周辺参照コンテキスト導出部224c、及び高周波位置コンテキスト導出部224dの何れかによって導出されたコンテキストインデックスctxIdxを、当該符号化対象の周波数成分に割り付ける(図43のステップSY3’)。
係数有無フラグ符号化部224−Bの備える低周波位置コンテキスト導出部224bは、部分領域R0に属する周波数成分に対して、係数有無フラグ復号部124−Bにおける低周波位置コンテキスト導出部124bと同様の処理により、コンテキストインデックスctxIdxを導出し、その導出結果ctxIdxを周波数分類部224aへ供給する。
係数有無フラグ符号化部224−Bの備える周辺参照コンテキスト導出部224cは、部分領域R1、及びR2に属する周波数成分に対して、係数有無フラグ復号部124−Bにおける周辺参照コンテキスト導出部124cと同様の処理により、コンテキストインデックスctxIdxを導出し、その導出結果ctxIdxを周波数分類部224aへ供給する。
係数有無フラグ符号化部224−Bの備える高周波位置コンテキスト導出部224dは、符号化対象の周波数成分が、高周波数側の部分領域に含まれる場合に、当該周波数に対するコンテキストインデックスctxIdxを、周波数領域における当該周波数成分の位置と、当該周波数成分の属するサブブロックの位置に基づて導出する。
図46は、係数有無フラグ復号部124−Cに対応する係数有無フラグ符号化部224−Cの構成を示すブロック図である。また、係数有無フラグ符号化部224−Cの動作の流れは、図43に示すフローチャートを用いて説明される。
係数有無フラグ符号化部224−Cの備えるサブブロック係数有無フラグ符号化部X2は、係数有無フラグ符号化部224−Bの係数有無フラグ符号化部X2と同様であるため、説明を省略する。
係数有無フラグ符号化部224−Cの備える周波数分類部224aは、周波数領域における符号化対象の周波数成分の位置に応じて、当該周波数成分を複数の部分領域の何れかに分類すると共に、低周波位置コンテキスト導出部224b、周辺参照コンテキスト導出部224c、及び高周波位置コンテキスト導出部224dの何れかによって導出されたコンテキストインデックスctxIdxを、当該符号化対象の周波数成分に割り付ける(図43のステップSY3’)。
係数有無フラグ符号化部224−Cの備える低周波位置コンテキスト導出部224bは、部分領域R0に属する周波数成分に対して、係数有無フラグ復号部124−Cにおける低周波位置コンテキスト導出部124bと同様の処理により、コンテキストインデックスctxIdxを導出し、その導出結果ctxIdxを周波数分類部224aへ供給する。
係数有無フラグ符号化部224−Cの備える周辺参照コンテキスト導出部224cは、部分領域R1、R2、及びR3に属する周波数成分に対して、係数有無フラグ復号部124−Cにおける周辺参照コンテキスト導出部124cと同様の処理により、コンテキストインデックスctxIdxを導出し、その導出結果ctxIdxを周波数分類部224aへ供給する。
係数有無フラグ符号化部224−Cの備える高周波位置コンテキスト導出部224dは、部分領域R4に属する周波数成分に対して、係数有無フラグ復号部124−Cにおける高周波位置コンテキスト導出部124dと同様の処理により、コンテキストインデックスctxIdxを導出し、その導出結果ctxIdxを周波数分類部224aへ供給する。
周辺参照コンテキスト導出部224cは、
第1の部分領域(部分領域R1またはR2)では、復号済みの非0変換係数をN1個(N1は自然数)参照し、
第2の部分領域(部分領域R3)では、復号済みの非0変換係数をN2個(N2はN2<N1を満たす自然数)参照することによって、コンテキストインデックスを導出し、
第3の部分領域(部分領域R4)では、高周波位置コンテキスト導出部224dが、変換係数有無フラグの属するサブブロックの位置に応じて、コンテキストインデックスを導出する。
以上、本実施形態に係る変換係数符号化部220について、主に係数有無フラグ符号化部の構成例を中心に説明したが、本実施形態に係る変換係数符号化部220の構成は、上記の例に限られるものではない。
uiPosX+uiPosY<TH2
を満たす周波数成分についての変換係数のみを符号化するよう制限する構成とし、当該制限を適用したか否かを示すフラグhigh_coeff_restriction_flagを、符号化データ#1のシーケンスパラメータセットSPSに含める構成としてもよい。
また、対象TUのサイズが8×8画素である場合、変換係数符号化部220の備える係数有無フラグ符号化部は、以下の式を用いてコンテキストインデックスctxIdxを導出し、各周波数成分に割り付ける構成としてもよい。
ここで、
tbl={0、1、1、2、2、3、3、3}
である。
以下では、本実施形態に係る動画像復号装置の他の例としての動画像復号装置3について図61〜図73を参照して説明する。以下では、既に説明した部分と同じ部分については同じ符号を付し、その説明を省略する。
スキャン順テーブル格納部122には、処理対象のTU(ブロック)のサイズ、スキャン方向の種別を表すスキャンインデックス、及びスキャン順に沿って付与された周波数成分識別インデックスを引数として、処理対象の周波数成分の周波数領域における位置を与えるテーブルが格納されている。
係数復号制御部123は、量子化残差情報復号部Y111の備える各部における復号処理の順序を制御するための構成である。
ブロックサイズが所定のサイズ以下である場合、係数復号制御部123は、ラスト係数位置復号部121から供給されるシンタックスlast_significant_coeff_x及びlast_significant_coeff_yを参照し、順スキャンに沿った最後の非0変換係数の位置を特定すると共に、特定した最後の非0変換係数の位置を起点とするスキャン順であって、スキャン順テーブル格納部122に格納されたスキャン順テーブルよって与えられるスキャン順の逆スキャン順に、各周波数成分の位置(xC、yC)を、係数有無フラグ復号部Y124及び復号係数記憶部126に供給する。
ブロックサイズが所定のサイズよりも大きい場合、係数復号制御部123は、ラスト係数位置復号部121から供給されるシンタックスlast_significant_coeff_x及びlast_significant_coeff_yを参照し、順スキャンに沿った最後の非0変換係数の位置を特定すると共に、特定した最後の非0変換係数を含むサブブロックの位置を起点とするスキャン順であって、スキャン順テーブル格納部122に格納されたサブブロックスキャン順テーブルによって与えられるスキャン順の逆スキャン順に、各サブブロックの位置(xCG、yCG)を、サブブロック係数有無フラグ復号部Y127に供給する。
サブブロック係数有無フラグ復号部Y127は、ビット復号部132から供給される各Binを解釈し、各サブブロック位置(xCG、yCG)によって指定されるシンタックスsignificant_coeffgroup_flag[xCG][yCG]を復号する。また、サブブロック係数有無フラグ復号部Y127は、算術符号復号部130にてシンタックスsignificant_coeffgroup_flag[xCG][yCG]のBinを復号するために用いられるコンテキストを決定するためのコンテキストインデックスctxIdxを算出する。算出されたコンテキストインデックスctxIdxは、コンテキスト記録更新部131に供給される。ここで、シンタックスsignificant_coeffgroup_flag[xCG][yCG]は、サブブロック位置(xCG、yCG)によって指定されるサブブロックに、少なくとも1つの非0変換係数が含まれている場合に1をとり、非0変換係数が1つも含まれていない場合に0をとるシンタックスである。復号されたシンタックスsignificant_coeffgroup_flag[xCG][yCG]の値は、復号係数記憶部126に格納される。
本実施形態に係る係数有無フラグ復号部Y124は、各係数位置(xC、yC)によって指定されるシンタックスsignificant_coeff_flag[xC][yC]を復号する。復号されたシンタックスsignificant_coeff_flag[xC][yC]の値は、復号係数記憶部126に格納される。また、量係数有無フラグ復号部Y124は、算術符号復号部130にてシンタックスsignificant_coeff_flag[xC][yC]のBinを復号するために用いられるコンテキストを決定するためのコンテキストインデックスctxIdxを算出する。算出されたコンテキストインデックスctxIdxは、コンテキスト記録更新部131に供給される。
係数値復号部Y125は、ビット復号部132から供給される各Binを解釈し、処理対象の周波数成分における変換係数(より具体的には非0変換係数)の値を導出する。また、各種シンタックスの復号に用いたコンテキストインデックスctxIdxは、コンテキスト記録更新部131に供給される。導出された変換係数の値は、復号係数記憶部126に格納される。
復号係数記憶部126は、係数値復号部Y125によって復号された変換係数の各値を記憶しておくための構成である。また、復号係数記憶部126には、量係数有無フラグ復号部Y124によって復号されたシンタックスsignificant_coeff_flagの各値が記憶される。復号係数記憶部126によって記憶されている変換係数の各値は、逆量子化・逆変換部13に供給される。
図62、図63は、従来技術の量子化残差情報QDの構成を示す。図62及び図63は、従来技術の量子化残差情報QD(図62ではresidual_coding_cabac()と表記)に含まれる各シンタックスが示されている。
図64〜図66は、本実施形態の第1の構成の量子化残差情報QDに含まれる各シンタックスが示されている。
本符号化データを復号する係数有無フラグ復号部Y124および係数値復号部Y125は、簡略化フラグcabac_lowcomp_flagの値に応じて、通常処理と簡略化処理を切り替えることができる。cabac_lowcomp_flagは、SPS、PPS、スライスヘッダなどに含まれる上位レベル簡略化フラグxps_cabac_lowcomp_flagの値と、ラスト位置に応じて導出される。以下、簡略化フラグcabac_lowcomp_flagの導出方法を説明する。
以下では、図65を参照して、本符号化データを復号する係数値復号部Y125の簡略化を行わない場合の処理を説明する。まず、係数値復号部Y125は、サブブロック単位での外部ループ(LP_Y70)と、サブブロック内の変換係数を復号する内部ループ(LP_Y71〜LP_Y75)の2重ループ処理により、変換係数を復号する。
逆に、サブブロック係数有無フラグsignificant_coeffgroup_flagを用いない場合には、ラスト位置以外の場合について、コンテキストを用いてsignificant_coeff_flagを復号する(SYN_Y72)。
以上の処理によって、変換係数の値が復号される。
次に、図66を参照して、本符号化データを復号する係数有無フラグ復号部Y124および係数値復号部Y125の簡略化を行う場合の処理を説明する。
ここで、coeff_abs_level_minus1のバイナリ化は、ゴロム符号やハフマン符号などを用いればよい。
本実施形態の第2の簡略化構成では、図66に代わり図67のシンタックス構成を用いる。図67は、本実施形態の第2の簡略化構成の量子化残差情報QDに含まれる各シンタックスが示されている。
本実施形態の第2の簡略化構成では、係数有無フラグ復号部Y124で処理される第1の内部ループの処理が異なる。以下、図67に示される第1の内部ループ処理を説明する。
本実施形態の第3の簡略化構成では、図67に代わり図68のシンタックス構成を用いる。図68は、本実施形態の第3の簡略化構成の量子化残差情報QDに含まれる各シンタックスが示されている。
係数値復号部Y125の基本的な動作は第2の構成と同じであるが、第2の構成では、サブブロック内の処理において、符号フラグcoeff_sign_flag、絶対値−1の値coeff_abs_level_minus1を異なる内部ループで処理するが、第3の構成では、以下に示すように2つのシンタックスを一つの内部ループで処理する。
ここで、coeff_abs_level_minus1のバイナリ化は、ゴロム符号やハフマン符号などを用いればよい。
以下、より適応的に簡略化を行う係数値復号部Y124の処理を説明する。図72、図73で説明した簡略化フラグcabac_lowcomp_flagの導出方法では、各周波数領域での変換係数を復号する最初の時点でラスト位置を参照することにより簡略化を行うか否かを設定していたが、以下の処理では、各周波数領域での変換係数を復号する最初の時点ではコンテキストを用いて復号処理を行い、周波数領域を構成する周波数成分を復号結果に応じて途中からコンテキストを用いた復号からバイパスによる復号に切り替える。
本実施形態の第4、第5の簡略化構成では、各々図69、図70のシンタックス構成を用いる。図69、図70では、本実施形態の第4、第5の簡略化構成の量子化残差情報QDに含まれる各シンタックスが示されている。
係数値復号部Y125は、第1の内部ループ、第2の内部ループの処理を行う。
以上、第4の構成の符号化データおよび本符号化データを復号する量子化残差情報復号部によれば、変換係数の絶対値であるcoeff_abs_level及び変換係数の絶対値−1であるcoeff_abs_level_minus1をバイパスで符号化することにより、復号処理のスループットを向上させる。非0変換係数の有無を示すフラグの内、significant_coeffgroup_flagを非バイパスとし、significant_coeff_flagをバイパスとすることによって高い符号化効率を維持したまま高いスループットの処理が可能になる。
係数値復号部Y125は、第1の内部ループ、第2の内部ループの処理を行う。
以下では、本実施形態に係るさらなる他の動画像符号化装置である動画像符号化装置4について図74を参照して説明する。以下では、既に説明した部分と同じ部分については同じ符号を付し、その説明を省略する。
図74は、量子化残差情報符号化部Y271の構成を示すブロック図である。図74に示すように、量子化残差情報符号化部Y271は、変換係数符号化部Y220及び算術符号符号化部230を備えている。
図74に示すように、変換係数符号化部Y220は、ラスト位置符号化部221、スキャン順テーブル格納部222、係数符号化制御部223、係数有無フラグ符号化部Y224、係数値符号化部Y225、符号化係数記憶部226、サブブロック係数有無フラグY227、及びシンタックス導出部Y228を備えている。
シンタックス導出部Y228は、変換係数Coeff(xC、yC)の各値を参照し、対象周波数領域におけるこれらの変換係数を特定するためのシンタックスlast_significant_coeff_x、last_significant_coeff_y、significant_coeff_flag、coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag、及びcoeff_abs_level_minus3の各値を導出する。導出された各シンタックスは、符号化係数記憶部226に供給される。また、導出されたシンタックスのうちlast_significant_coeff_x、last_significant_coeff_yは、係数符号化制御部223及びラスト位置符号化部221にも供給される。また、導出されたシンタックスのうちsignificant_coeff_flagは、係数有無フラグ符号化部Y224にも供給される。なお、各シンタックスが示す内容については上述したためここでは説明を省略する。
スキャン順テーブル格納部222には、処理対象のTU(ブロック)のサイズ、スキャン方向の種別を表すスキャンインデックス、及びスキャン順に沿って付与された周波数成分識別インデックスを引数として、処理対象の周波数成分の周波数領域における位置を与えるテーブルが格納されている。このようなスキャン順テーブルの一例としては、図4及び図5に示したScanOrderが挙げられる。
係数符号化制御部223は、量子化残差情報符号化部Y271の備える各部における符号化処理の順序を制御するための構成である。
ブロックサイズが所定のサイズ以下(例えば4×4成分、8×8成分等)である場合、係数符号化制御部223は、シンタックス導出部228より供給されるシンタックスlast_significant_coeff_x及びlast_significant_coeff_yを参照し、順スキャンに沿った最後の非0変換係数の位置を特定すると共に、特定した最後の非0変換係数の位置を起点とするスキャン順であって、スキャン順テーブル格納部222に格納されたスキャン順テーブルよって与えられるスキャン順の逆スキャン順に、各周波数成分の位置(xC、yC)を、係数有無フラグ符号化部に供給する。
ブロックサイズが所定のサイズよりも大きい場合、係数符号化制御部223は、シンタックス導出部Y228から供給されるシンタックスlast_significant_coeff_x及びlast_significant_coeff_yを参照し、順スキャンに沿った最後の非0変換係数の位置を特定すると共に、特定した最後の非0変換係数を含むサブブロックの位置を起点とするスキャン順であって、スキャン順テーブル格納部222に格納されたサブブロックスキャン順テーブルよって与えられるスキャン順の逆スキャン順に、各サブブロックの位置(xCG、yCG)を、サブブロック係数有無フラグ符号化部Y227に供給する。
係数値符号化部Y225では、通常処理を行う場合と簡略化処理を行う場合で処理が異なる。通常処理を行う場合には、シンタックス導出部Y228から供給されるシンタックスcoeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、coeff_sign_flag、及びcoeff_abs_level_minus3を示すBinを生成する。動画像復号装置3で説明した通り、簡略化処理を行う場合には、第1〜第3の簡略化構成では、coeff_sign_flag、及びcoeff_abs_level_minus1を示すBinを生成する。第4〜第5の簡略化構成では、coeff_sign_flag、及びcoeff_abs_level_minus1、coeff_abs_levelを示すBinを生成する。
本実施形態に係る係数有無フラグ符号化部Y224は、各位置(xC、yC)によって指定されるシンタックスsignificant_coeff_flag[xC][yC]を符号化する。より具体的には、各位置(xC、yC)によって指定されるシンタックスsignificant_coeff_flag[xC][yC]を示すBinを生成する。生成された各Binは、ビット符号化部232に供給される。また、係数有無フラグ符号化部224は、算術符号符号化部230にてシンタックスsignificant_coeff_flag[xC][yC]のBinを符号化するために用いられるコンテキストを決定するためのコンテキストインデックスctxIdxを算出する。算出されたコンテキストインデックスctxIdxは、コンテキスト記録更新部231に供給される。
係数有無フラグ設定部224eは、シンタックス導出部Y228から供給されるシンタックスsignificant_coeff_flag[xC][yC]を示すBinを生成する。生成したBinは、ビット符号化部232に供給される。また、係数有無フラグ設定部224eは、対象サブブロックに含まれるsignificant_coeff_flag[xC][yC]の値を参照し、対象サブブロックに含まれる全てのsignificant_coeff_flag[xC][yC]が0である場合、すなわち、当該対象サブブロックに非0変換係数が含まれていない場合に、当該対象サブブロックに関するsignificant_coeffgroup_flag[xCG][yCG]の値を0に設定し、そうでない場合に当該対象サブブロックに関するsignificant_coeffgroup_flag[xCG][yCG]の値を1に設定する。このように値が付されたsignificant_coeffgroup_flag[xCG][yCG]は、サブブロック係数有無フラグ符号化部Y227に供給される。
上述した動画像符号化装置2及び動画像復号装置1は、動画像の送信、受信、記録、再生を行う各種装置に搭載して利用することができる。なお、動画像は、カメラ等により撮像された自然動画像であってもよいし、コンピュータ等により生成された人工動画像(CGおよびGUIを含む)であってもよい。
上述した動画像復号装置1、および動画像符号化装置2の各ブロックは、集積回路(ICチップ)上に形成された論理回路によってハードウェア的に実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェア的に実現してもよい。
本明細書には、少なくとも以下の発明が記載されている。
対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、
処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、
各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、
各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、
を備え、
上記コンテキストインデックス導出手段は、上記複数の部分領域のうち高周波数側の部分領域に属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの位置に基づいて導出する、
ことを特徴とする算術復号装置。
対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、
処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、
各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、
各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、
を備え、
上記コンテキストインデックス導出手段は、各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの位置周辺に設定された参照領域に含まれる復号済みの非0変換係数の数に基づいて導出するものであり、
上記複数の部分領域のうち高周波数側の部分領域において設定される上記参照領域は、低周波数側の部分領域において設定される上記参照領域よりも小さい、
ことを特徴とする算術復号装置。
上記コンテキストインデックス導出手段は、上記部分領域毎に定まる所定の開始点と、上記部分領域毎に定まる変数とを加算することによってコンテキストインデックスを導出するものであり、上記変数の導出方法の異なる複数の部分領域について、開始点を同じ値に設定することにより、コンデキストインデックスの導出方法の異なる当該複数の部分領域において、共通のコンテキストを用いるものであることを特徴とするA2.に記載の算術復号装置。
上記分割手段は、上記対象周波数領域を、処理対象の変換係数有無フラグの位置に応じて、少なくとも3つの部分領域に分類するものであり、上記コンテキストインデックス導出手段は、第1の部分領域では、復号済みの非0変換係数をN1個(N1は自然数)参照し、第2の部分領域では、復号済みの非0変換係数をN2個(N2はN2<N1を満たす自然数)参照することによって、コンテキストインデックスを導出し、第3の部分領域では、変換係数有無フラグの位置に応じて、コンテキストインデックスを導出することを特徴とするA1.からA3.の何れか1項に記載の算術復号装置。
上記コンテキストインデックス導出手段は、上記複数の部分領域のうち高周波数側の部分領域における現スキャン列に沿った各変換係数有無フラグに割り付けるコンテキストインデックスを、前スキャン列に沿った非0変換係数の数に更に基づいて導出する、
ことを特徴とするA2.に記載の算術復号装置。
対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、
処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、
各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを各スキャン列に沿って順次導出するコンテキストインデックス導出手段と、
各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、
を備え、
上記コンテキストインデックス導出手段は、上記複数の部分領域のうち高周波数側の部分領域における現スキャン列に沿った各変換係数有無フラグに割り付けるコンテキストインデックスを、前スキャン列に沿った非0変換係数の数に基づいて導出する、
ことを特徴とする算術復号装置。
対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、
処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、
各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、
各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、
を備え、
上記コンテキストインデックス導出手段は、各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの位置周辺に設定された参照領域に含まれる復号済みの非0変換係数の数に基づいて導出するものであり、
上記参照領域に含まれる復号済みの変換係数の数は、4以下である、
ことを特徴とする算術復号装置。
対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、
処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、
各部分領域に対して、互いに異なるコンテキストインデックスを割り付けるコンテキストインデックス割り付け手段と、
各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグを、該変換係数有無フラグが属する部分領域に割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、
を備え、
上記複数の部分領域のうち低周波数側の部分領域は、高周波数側の部分領域よりも小さい、
ことを特徴とする算術復号装置。
上記分割手段は、変換係数有無フラグのX座標とY座標のと和を示すSUMに応じて、上記対象周波数領域を、複数の部分領域に分割するものであり、上記分割手段は、上記SUMと、上記対象周波数領域のサイズszに応じて定まる第1の閾値TH2との大小関係に応じて、上記対象周波数領域を、少なくとも低周波数側の部分領域と上記高周波数側の部分領域に分割し、第1の閾値TH2がsz以上であることを特徴とするA1.に記載の算術復号装置。
上記分割手段は、変換係数有無フラグのX座標とY座標のと和を示すSUMに応じて、上記対象周波数領域を、複数の部分領域に分割するものであり、上記分割手段は、上記SUMと、上記対象周波数領域のサイズszに応じて定まる第1の閾値TH2との大小関係に応じて、上記対象周波数領域を、少なくとも上記低周波数側の部分領域と上記高周波数側の部分領域に分割し、第1の閾値TH2がsz−2以下であることを特徴とするA2.に記載の算術復号装置。
上記分割手段は、変換係数有無フラグのX座標とY座標のと和を示すSUMに応じて、上記対象周波数領域を、複数の部分領域に分割するものであり、上記分割手段は、上記SUMと、上記対象周波数領域のサイズszに応じて定まる第1の閾値TH2との大小関係に応じて、上記対象周波数領域を、上記第1の部分領域と上記第2の部分領域に分割し、上記SUMと、上記対象周波数領域のサイズszに応じて定まる第2の閾値TH3との大小関係に応じて、上記対象周波数領域を、上記第2の部分領域と上記第3の部分領域に分割し、上記第1の閾値TH2がsz−2以下であり、上記第2の閾値TH3がsz以上であることを特徴とするA4.に記載の算術復号装置。
A1.からA11.の何れか1項に記載の算術復号装置と、
上記算術復号装置によって復号された変換係数を逆周波数変換することによって残差画像を生成する逆周波数変換手段と、
上記逆周波数変換手段によって生成された残差画像と、生成済みの復号画像から予測された予測画像とを加算することによって復号画像を生成する復号画像生成手段と、
を備えていることを特徴とする画像復号装置。
対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって符号化データを生成する算術符号化装置であって、
処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、
各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、
各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術符号化するシンタックス符号化手段と、
を備え、
上記コンテキストインデックス導出手段は、上記複数の部分領域のうち高周波数側の部分領域に属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの位置に基づいて導出する、
ことを特徴とする算術符号化装置。
符号化対象画像と予測画像との残差画像を単位領域毎に周波数変換することによって変換係数を生成する変換係数生成手段と、
A13.に記載の算術符号化装置と、
を備えており、
上記算術符号化装置は、上記変換係数生成手段によって生成された変換係数を表す各種のシンタックスを算術符号化することによって符号化データを生成するものである、
ことを特徴とする画像符号化装置。
対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られる符号化データのデータ構造であって、
各単位領域に対応する各対象周波数領域における高周波数側の変換係数を復号するか否かを示す制限フラグを含み、
上記符号化データを復号する算術復号装置は、上記制限フラグが、高周波数側の変換係数を復号しないことを示している場合には、当該高周波数側の変換係数を復号しない、
ことを特徴とする符号化データのデータ構造。
また、本明細書には、少なくとも以下の発明が記載されている。
対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、
処理対象の単位領域に対応する対象周波数領域を所定サイズのサブブロックに分割するサブブロック分割手段と、
上記サブブロック分割手段により分割された各サブブロックについて、該サブブロックに非0変換係数が少なくとも1つ含まれるか否かを表すサブブロック係数有無フラグを復号するサブブロック係数有無フラグ復号手段と、
対象周波数領域を、各周波数成分、及び、各サブブロックの少なくとも何れかを分割単位として複数の部分領域に分割する分割手段と、
各部分領域に属する各変換係数が0である否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、
各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割りつけられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、
を備え、
対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が少なくとも1つ含まれることを示している場合であって、当該対象サブブロックが、対象周波数領域において高周波数側の部分領域に属するものである場合、上記コンテキストインデックス導出手段は、当該対象サブブロックに属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における当該対象サブブロックの位置に基づいて導出し、
対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が含まれていないことを示している場合、当該対象サブブロックに属する全ての変換係数の各々についての変換係数有無フラグを、該変換係数が0であることを示すものとして復号処理を行う、
を特徴とする算術復号装置。
上記分割手段は、変換係数有無フラグの属するサブブロックのX座標及びY座標の和と、上記対象周波数領域のサイズに応じて定まる閾値THAとの大小関係に応じて、上記対象周波数領域を、少なくとも低周波数側の部分領域と上記高周波数側の部分領域とに分割するものであり、
上記対象周波数領域の各辺に沿った周波数成分の数をszと表すとき、上記閾値THAは、sz/16以上の値を有する
ことを特徴とするB1.に記載の算術復号装置。
対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、
処理対象の単位領域に対応する対象周波数領域を所定サイズのサブブロックに分割するサブブロック分割手段と、
上記サブブロック分割手段により分割された各サブブロックについて、該サブブロックに非0変換係数が少なくとも1つ含まれるか否かを表すサブブロック係数有無フラグを復号するサブブロック係数有無フラグ復号手段と、
対象周波数領域を、各周波数成分、及び、各サブブロックの少なくとも何れかを分割単位として複数の部分領域に分割する分割手段と、
各部分領域に属する各変換係数が0である否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、
各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割りつけられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、
を備え、
対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が少なくとも1つ含まれることを示している場合であって、当該対象サブブロックが、対象周波数領域において高周波数側および低周波数側の何れかの部分領域に属するものである場合、上記コンテキストインデックス導出手段は、当該対象サブブロックに属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの属するサブブロックの位置に基づいて選択された高周波数側用の参照領域および低周波数側用の参照領域のいずれかの参照領域であって、対象周波数領域における該変換係数有無フラグの位置周辺に設定された参照領域に含まれる復号済の非0変換係数の数に基づいて導出し、
対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が含まれていないことを示している場合、当該対象サブブロックに属する全ての変換係数の各々についての変換係数有無フラグを、該変換係数が0であることを示すものとして復号処理を行う、
を特徴とする算術復号装置。
対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、
処理対象の単位領域に対応する対象周波数領域を所定サイズのサブブロックに分割するサブブロック分割手段と、
上記サブブロック分割手段により分割された各サブブロックについて、該サブブロックに非0変換係数が少なくとも1つ含まれるか否かを表すサブブロック係数有無フラグを復号するサブブロック係数有無フラグ復号手段と、
対象周波数領域を、各周波数成分、及び、各サブブロックの少なくとも何れかを分割単位として複数の部分領域に分割する分割手段と、
各部分領域に属する各変換係数が0である否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、
各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割りつけられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、
を備え、
対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が少なくとも1つ含まれることを示している場合であって、当該対象サブブロックが、対象周波数領域において高周波数側の部分領域に属するものである場合、上記コンテキストインデックス導出手段は、当該対象サブブロックに属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの位置周辺に設定された参照領域に含まれる復号済の非0変換係数であって、処理順で該変換係数有無フラグの直前に復号された非0変換係数を除く非0変換係数の数に基づいて導出し、
対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が含まれていないことを示している場合、当該対象サブブロックに属する全ての変換係数の各々についての変換係数有無フラグを、該変換係数が0であることを示すものとして復号処理を行う、
を特徴とする算術復号装置。
上記分割手段は、上記対象周波数領域を少なくとも3つの部分領域に分割するものであり、上記コンテキストインデックス導出手段は、第1の部分領域では、復号済みの非0変換係数をN1個(N1は自然数)参照し、第2の部分領域では、復号済みの非0変換係数をN2個(N2はN2<N1を満たす自然数)参照することによって、コンテキストインデックスを導出し、第3の部分領域では、変換係数有無フラグの位置に応じて、コンテキストインデックスを導出することを特徴とするB3.またはB4.に記載の算術復号装置。
上記分割手段は、変換係数有無フラグの属するサブブロックのX座標及びY座標の和と、上記対象周波数領域のサイズに応じて定まる閾値THBとの大小関係に応じて、上記対象周波数領域を、少なくとも低周波数側の部分領域と上記高周波数側の部分領域とに分割するものであり、
上記対象周波数領域の各辺に沿った周波数成分の数をszと表すとき、上記閾値THBは、sz/4以下の値を有する
ことを特徴とするB3.に記載の算術復号装置。
上記分割手段は、変換係数有無フラグの属するサブブロックのX座標及びY座標の和と、上記対象周波数領域のサイズに応じて定まる閾値THBとの大小関係に応じて、上記対象周波数領域を、上記第1の部分領域と上記第2の部分領域とに分割すると共に、変換係数有無フラグの属するサブブロックのX座標及びY座標の和と、上記対象周波数領域のサイズに応じて定まる閾値THCとの大小関係に応じて、上記対象周波数領域を、上記第2の部分領域と上記第3の部分領域とに分割するものであり、
上記対象周波数領域の各辺に沿った周波数成分の数をszと表すとき、上記閾値THBは、sz/4以下の値を有し、上記閾値THCは、(sz/4)+2以上の値を有する
ことを特徴とするB5.に記載の算術復号装置。
B1.からB7.の何れか1項に記載の算術復号装置と、
上記算術復号装置によって復号された変換係数を逆周波数変換することによって残差画像を生成する逆周波数変換手段と、
上記逆周波数変換手段によって生成された残差画像と、生成済みの復号画像から予測された予測画像とを加算することによって復号画像を生成する復号画像生成手段と、
を備えていることを特徴とする画像復号装置。
対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって符号化データを生成する算術符号化装置であって、
処理対象の単位領域に対応する対象周波数領域を所定サイズのサブブロックに分割するサブブロック分割手段と、
上記サブブロック分割手段により分割された各サブブロックについて、該サブブロックに非0変換係数が少なくとも1つ含まれるか否かを表すサブブロック係数有無フラグを符号化するサブブロック係数有無フラグ符号化手段と、
対象周波数領域を、各周波数成分、及び、各サブブロックの少なくとも何れかを分割単位として複数の部分領域に分割する分割手段と、
各部分領域に属する各変換係数が0である否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、
各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割りつけられたコンテキストインデックスによって指定される確率状態に基づいて算術符号化するシンタックス符号化手段と、
を備え、
対象サブブロックについて符号化されるサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が少なくとも1つ含まれることを示している場合であって、当該対象サブブロックが、対象周波数領域において高周波数側の部分領域に属するものである場合、上記コンテキストインデックス導出手段は、当該対象サブブロックに属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における当該対象サブブロックの位置に基づいて導出し、
対象サブブロックについて符号化されるサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が含まれていないことを示している場合、当該対象サブブロックに属する全ての変換係数の各々についての変換係数有無フラグを、該変換係数が0であることを示すものとして符号化処理を行う、
を特徴とする算術符号化装置。
符号化対象画像と予測画像との残差画像を単位領域毎に周波数変換することによって変換係数を生成する変換係数生成手段と、
B9.に記載の算術符号化装置と、
を備えており、
上記算術符号化装置は、上記変換係数生成手段によって生成された変換係数を表す各種のシンタックスを算術符号化することによって符号化データを生成するものである、
ことを特徴とする画像符号化装置。
対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られる符号化データのデータ構造であって、
上記単位領域に対応する周波数領域を分割して得られた所定サイズの各サブブロックについて、該サブブロックに非0変換係数が少なくとも1つ含まれるか否かを表すサブブロック係数有無フラグを含み、
上記符号化データを復号する復号装置は、
対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が少なくとも1つ含まれることを示している場合であって、当該対象サブブロックが、対象周波数領域において高周波数側の部分領域に属するものである場合、当該対象サブブロックに属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における当該対象サブブロックの位置に基づいて導出すると共に、各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割りつけられたコンテキストインデックスによって指定される確率状態に基づいて算術復号し、
対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が含まれていないことを示している場合、当該対象サブブロックに属する全ての変換係数の各々についての変換係数有無フラグを、該変換係数が0であることを示すものとして復号処理を行う、
ことを特徴とする符号化データのデータ構造。
また、本明細書には、少なくとも以下の発明が記載されている。
本発明の一態様に係る算術復号装置は、対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、処理対象の単位領域に対応する対象周波数領域を所定サイズのサブブロックに分割するサブブロック分割手段と、上記サブブロック分割手段により分割された各サブブロックについて、該サブブロックに非0変換係数が少なくとも1つ含まれるか否かを表すサブブロック係数有無フラグを復号するサブブロック係数有無フラグ復号手段と、対象周波数領域を、各周波数成分、及び、各サブブロックの少なくとも何れかを分割単位として複数の部分領域に分割する分割手段と、各部分領域に属する各変換係数が0である否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割りつけられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、を備え、対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が少なくとも1つ含まれることを示している場合であって、当該対象サブブロックが、対象周波数領域において高周波数側の部分領域に属するものである場合、上記コンテキストインデックス導出手段は、当該対象サブブロックに属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における当該対象サブブロックの位置に基づいて導出し、対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が含まれていないことを示している場合、当該対象サブブロックに属する全ての変換係数の各々についての変換係数有無フラグを、該変換係数が0であることを示すものとして復号処理を行う、ことを特徴としている。
上記分割手段は、上記対象周波数領域を少なくとも低周波数側と高周波数側の2つの部分領域に分割するものであり、上記コンテキストインデックス導出手段は、低周波数側に属する部分領域の少なくとも1つでは、復号済みの非0変換係数を参照することによって、コンテキストインデックスを導出し、高周波数側に属する部分領域では、周波数領域上の位置に基づく値、または固定的な所定の値をコンテキストインデックスとして導出することが好ましい。
また、上記算術復号装置において、上記コンテキストインデックス導出手段により導出される、高周波数側に属する部分領域で用いるコンテキストインデックスの値が、低周波数側に属する部分領域で用いるコンテキストインデックスの範囲内であることが好ましい。
また、上記算術復号装置において、上記コンテキストインデックス導出手段により導出される、輝度に関するコンテキストインデックスであって、高周波数側に属する部分領域で用いるコンテキストインデックスの値が、低周波数側に属する部分領域で用いるコンテキストインデックスの範囲以外の値であり、上記コンテキストインデックス導出手段により導出される、色差に関するコンテキストインデックスであって、高周波数側に属する部分領域で用いるコンテキストインデックスの値が、低周波数側に属する部分領域で用いるコンテキストインデックスの範囲内であることが好ましい。
また、上記分割手段は、上記対象周波数領域を少なくとも低周波数側と高周波数側の2つの部分領域に分割するものであり、上記コンテキストインデックス導出手段は、低周波数側に属する部分領域の少なくとも1つにおいて、N1(N1は自然数)個以上の復号済みの非0変換係数を参照することによって、コンテキストインデックスを導出し、高周波数側に属する部分領域において、N2個(N2はN2<N1を満たす自然数)の復号済みの非0変換係数を参照することによって、コンテキストインデックスを導出することが好ましい。
また、上記コンテキストインデックス導出手段は、低周波数側に属する部分領域では、復号済みの非0変換係数の数を多対一変換することによってコンテキストインデックスを導出し、高周波数側に属する部分領域では、非0変換係数の数をコンテキストインデックスとして導出することが好ましい。
また、上記分割手段は、変換係数有無フラグのX座標及びY座標の和、もしくは、変換係数有無フラグの属するサブブロックのX座標及びY座標の和と、上記対象周波数領域の幅及び高さの最大値で得られるサイズに応じて定まる閾値THAとの大小関係に応じて、上記対象周波数領域を、少なくとも低周波数側の部分領域と上記高周波数側の部分領域とに分割するものであり、上記対象周波数領域のサイズをszと表すとき、上記閾値THAは、X座標及びY座標の和である場合にはsz以下の値、サブブロックのX座標及びY座標の和である場合には、sz/サブブロックの大きさ以下の値であることが好ましい。
本発明の一態様に係る算術復号装置は、対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、処理対象の単位領域に対応する対象周波数領域を所定サイズのサブブロックに分割するサブブロック分割手段と、上記サブブロック分割手段により分割された各サブブロックについて、該サブブロックに非0変換係数が少なくとも1つ含まれるか否かを表すサブブロック係数有無フラグを復号するサブブロック係数有無フラグ復号手段と、対象周波数領域を、各周波数成分、及び、各サブブロックの少なくとも何れかを分割単位として複数の部分領域に分割する分割手段と、各部分領域に属する各変換係数が0である否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割りつけられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、を備え、対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が少なくとも1つ含まれることを示している場合であって、当該対象サブブロックが、対象周波数領域において高周波数側および低周波数側の何れかの部分領域に属するものである場合、上記コンテキストインデックス導出手段は、当該対象サブブロックに属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの属するサブブロックの位置に基づいて選択された高周波数側用の参照領域および低周波数側用の参照領域のいずれかの参照領域であって、対象周波数領域における該変換係数有無フラグの位置周辺に設定された参照領域に含まれる復号済の非0変換係数の数に基づいて導出し、対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が含まれていないことを示している場合、当該対象サブブロックに属する全ての変換係数の各々についての変換係数有無フラグを、該変換係数が0であることを示すものとして復号処理を行う、ことを特徴としている。
本発明の一態様に係る算術復号装置は、対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、処理対象の単位領域に対応する対象周波数領域を所定サイズのサブブロックに分割するサブブロック分割手段と、上記サブブロック分割手段により分割された各サブブロックについて、該サブブロックに非0変換係数が少なくとも1つ含まれるか否かを表すサブブロック係数有無フラグを復号するサブブロック係数有無フラグ復号手段と、対象周波数領域を、各周波数成分、及び、各サブブロックの少なくとも何れかを分割単位として複数の部分領域に分割する分割手段と、各部分領域に属する各変換係数が0である否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割りつけられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、を備え、対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が少なくとも1つ含まれることを示している場合であって、当該対象サブブロックが、対象周波数領域において高周波数側の部分領域に属するものである場合、上記コンテキストインデックス導出手段は、当該対象サブブロックに属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの位置周辺に設定された参照領域に含まれる復号済の非0変換係数であって、処理順で該変換係数有無フラグの直前に復号された非0変換係数を除く非0変換係数の数に基づいて導出し、対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が含まれていないことを示している場合、当該対象サブブロックに属する全ての変換係数の各々についての変換係数有無フラグを、該変換係数が0であることを示すものとして復号処理を行う、ことを特徴としている。
また、上記算術復号装置において、上記分割手段は、上記対象周波数領域を少なくとも3つの部分領域に分割するものであり、上記コンテキストインデックス導出手段は、第1の部分領域では、復号済みの非0変換係数をN1個(N1は自然数)参照し、第2の部分領域では、復号済みの非0変換係数をN2個(N2はN2<N1を満たす自然数)参照することによって、コンテキストインデックスを導出し、第3の部分領域では、変換係数有無フラグの位置に応じて、コンテキストインデックスを導出することが好ましい。
また、上記算術復号装置において、上記分割手段は、変換係数有無フラグの属するサブブロックのX座標及びY座標の和と、上記対象周波数領域のサイズに応じて定まる閾値THBとの大小関係に応じて、上記対象周波数領域を、少なくとも低周波数側の部分領域と上記高周波数側の部分領域とに分割するものであり、上記対象周波数領域の各辺に沿った周波数成分の数をszと表すとき、上記閾値THBは、sz/4以下の値を有することが好ましい。
また、上記算術復号装置において、上記分割手段は、変換係数有無フラグの属するサブブロックのX座標及びY座標の和と、上記対象周波数領域のサイズに応じて定まる閾値THBとの大小関係に応じて、上記対象周波数領域を、上記第1の部分領域と上記第2の部分領域とに分割すると共に、変換係数有無フラグの属するサブブロックのX座標及びY座標の和と、上記対象周波数領域のサイズに応じて定まる閾値THCとの大小関係に応じて、上記対象周波数領域を、上記第2の部分領域と上記第3の部分領域とに分割するものであり、上記対象周波数領域の各辺に沿った周波数成分の数をszと表すとき、上記閾値THBは、sz/4以下の値を有し、上記閾値THCは、(sz/4)+2以上の値を有することが好ましい。
本発明の一態様に係る画像復号装置は、上記算術復号装置と、上記算術復号装置によって復号された変換係数を逆周波数変換することによって残差画像を生成する逆周波数変換手段と、上記逆周波数変換手段によって生成された残差画像と、生成済みの復号画像から予測された予測画像とを加算することによって復号画像を生成する復号画像生成手段と、を備えていることを特徴としている。
本発明の一態様に係る算術符号化装置は、対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって符号化データを生成する算術符号化装置であって、処理対象の単位領域に対応する対象周波数領域を所定サイズのサブブロックに分割するサブブロック分割手段と、上記サブブロック分割手段により分割された各サブブロックについて、該サブブロックに非0変換係数が少なくとも1つ含まれるか否かを表すサブブロック係数有無フラグを符号化するサブブロック係数有無フラグ符号化手段と、対象周波数領域を、各周波数成分、及び、各サブブロックの少なくとも何れかを分割単位として複数の部分領域に分割する分割手段と、各部分領域に属する各変換係数が0である否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割りつけられたコンテキストインデックスによって指定される確率状態に基づいて算術符号化するシンタックス符号化手段と、を備え、対象サブブロックについて符号化されるサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が少なくとも1つ含まれることを示している場合であって、当該対象サブブロックが、対象周波数領域において高周波数側の部分領域に属するものである場合、上記コンテキストインデックス導出手段は、当該対象サブブロックに属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における当該対象サブブロックの位置に基づいて導出し、対象サブブロックについて符号化されるサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が含まれていないことを示している場合、当該対象サブブロックに属する全ての変換係数の各々についての変換係数有無フラグを、該変換係数が0であることを示すものとして符号化処理を行う、ことを特徴としている。
本発明の一態様に係る画像符号化装置は、符号化対象画像と予測画像との残差画像を単位領域毎に周波数変換することによって変換係数を生成する変換係数生成手段と、上記算術符号化装置と、を備えており、上記算術符号化装置は、上記変換係数生成手段によって生成された変換係数を表す各種のシンタックスを算術符号化することによって符号化データを生成するものである、ことを特徴としている。
また、本発明の一態様に係る符号化データのデータ構造は、対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られる符号化データのデータ構造であって、上記単位領域に対応する周波数領域を分割して得られた所定サイズの各サブブロックについて、該サブブロックに非0変換係数が少なくとも1つ含まれるか否かを表すサブブロック係数有無フラグを含み、上記符号化データを復号する復号装置は、対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が少なくとも1つ含まれることを示している場合であって、当該対象サブブロックが、対象周波数領域において高周波数側の部分領域に属するものである場合、当該対象サブブロックに属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における当該対象サブブロックの位置に基づいて導出すると共に、各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割りつけられたコンテキストインデックスによって指定される確率状態に基づいて算術復号し、対象サブブロックについて復号されたサブブロック係数有無フラグが、当該対象サブブロックに非0変換係数が含まれていないことを示している場合、当該対象サブブロックに属する全ての変換係数の各々についての変換係数有無フラグを、該変換係数が0であることを示すものとして復号処理を行う、ことを特徴としている。
また、本発明の一態様に係る算術復号装置は、対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、M1個(M1は自然数)のシンタックスを復号して各変換係数の値を復号する通常モードと、M2個(M2はM2<M1を満たす自然数)のシンタックスを復号して各変換係数の値を復号する簡略化モードとを選択的に用いることによって各変換係数の値を復号することを特徴としている。
上記算術復号装置は、各シンタックスに割りつけられたコンテキストによって指定される確率状態に基づいた算術復号、及び、コンテキストを用いずに固定の確率状態に基づいた算術復号の何れかの算術復号によって、各シンタックスを復号するシンタックス復号手段を備え、上記シンタックス復号手段は、通常モードでは上記M1個のシンタックスについてコンテキストを用いて復号を行い、簡略化モードでは上記M2個のシンタックスについてコンテキストを用いて復号を行うことが好ましい。
また、上記算術復号装置は、処理対象の単位領域に対応する対象周波数領域を所定サイズのサブブロックに分割するサブブロック分割手段と、上記サブブロック分割手段により分割された各サブブロックについて、該サブブロックに非0変換係数が少なくとも1つ含まれるか否かを表すサブブロック係数有無フラグを復号するサブブロック係数有無フラグ復号手段を備え、通常モードでは、上記サブブロック係数有無フラグと、変換係数が0である否かを示す変換係数有無フラグとをコンテキストを用いて復号し、簡略化モードでは、上記サブブロック係数有無フラグをコンテキストを用いて復号し、上記変換係数有無フラグをコンテキストを用いずに復号することが好ましい。
また、上記算術復号装置は、通常モードにおいて、変換係数が0である否かを示す変換係数有無フラグsignificant_coeff_flag、変換係数の絶対値が1より大きいか否かを示すシンタックスcoeff_abs_greater1_flag、変換係数の絶対値が2より大きいか否かを示すシンタックスcoeff_abs_greater2_flag、変換係数の絶対値から3を減算した値を示すシンタックスcoeff_abs_minus3、及び変換係数の符号を示すシンタックスcoeff_signを復号し、簡略化モードにおいて、上記変換係数有無フラグsignificant_coeff_flag、変換係数の絶対値から1を減算した値を示すシンタックスcoeff_abs_minus1、及び変換係数の符号を示すシンタックスcoeff_signを復号することが好ましい。
また、上記算術復号装置は、通常モードにおいて、上記変換係数有無フラグsignificant_coeff_flag、変換係数の絶対値が1より大きいか否かを示す上記シンタックスcoeff_abs_greater1_flag、及び変換係数の絶対値が2より大きいか否かを示す上記シンタックスcoeff_abs_greater2_flagをコンテキストを用いて復号し、簡略化モードにおいて、上記変換係数有無フラグsignificant_coeff_flag、変換係数の絶対値から1を減算した値を示す上記シンタックスcoeff_abs_minus1、及び変換係数の符号を示す上記シンタックスcoeff_signをコンテキストを用いずに復号することが好ましい。
また、上記算術復号装置は、通常モードにおいて、上記変換係数有無フラグsignificant_coeff_flag、変換係数の絶対値が1より大きいか否かを示す上記シンタックスcoeff_abs_greater1_flag、及び変換係数の絶対値が2より大きいか否かを示す上記シンタックスcoeff_abs_greater2_flagをコンテキストを用いて復号し、簡略化モードにおいて、変換係数の絶対値から1を減算した値を示す上記シンタックスcoeff_abs_minus1、及び変換係数の符号を示す上記シンタックスcoeff_signをコンテキストを用いずに復号することが好ましい。
また、上記算術復号装置は、簡略化モードにおいて、変換係数の絶対値から1を減算した値を示す上記シンタックスcoeff_abs_minus1と、変換係数の符号を示す上記シンタックスcoeff_signとを連続して復号することが好ましい。
また、上記算術復号装置は、通常モードにおいて、変換係数が0である否かを示す変換係数有無フラグsignificant_coeff_flag、変換係数の絶対値が1より大きいか否かを示すシンタックスcoeff_abs_greater1_flag、変換係数の絶対値が2より大きいか否かを示すシンタックスcoeff_abs_greater2_flag、変換係数の絶対値から3を減算した値を示すシンタックスcoeff_abs_minus3、及び変換係数の符号を示すシンタックスcoeff_signを復号し、簡略化モードにおいて、変換係数の絶対値から1を減算した値を示すシンタックスcoeff_abs_minus1、変換係数の絶対値coeff_abs、及び変換係数の符号を示すシンタックスcoeff_signを復号することが好ましい。
また、上記算術復号装置は、通常モードにおいて、上記変換係数有無フラグsignificant_coeff_flag、変換係数の絶対値が1より大きいか否かを示す上記シンタックスcoeff_abs_greater1_flag、及び変換係数の絶対値が2より大きいか否かを示す上記シンタックスcoeff_abs_greater2_flagをコンテキストを用いて復号し、簡略化モードにおいて、変換係数の絶対値から1を減算した値を示す上記シンタックスcoeff_abs_minus1、及び変換係数の符号を示すシンタックスcoeff_signをコンテキストを用いずに復号することが好ましい。
また、上記算術復号装置は、変換係数のラスト位置のX座標及びY座標の和と、所定の閾値との大小比較に応じて、前記ラスト位置のX座標及びY座標の和の方が大きい場合に上記簡略化モードを選択し、それ以外の場合には、上記通常モードを選択することが好ましい。
また、上記算術復号装置は、前記ラスト位置のX座標及びY座標の和の方が多い場合に、それ以外の場合よりもコンテキストを用いて復号するシンタックスの数を減らすことが好ましい。
また、上記算術復号装置は、周波数領域の幅と高さとが同じ場合と、周波数領域の幅と高さとが異なる場合とにおいて、上記閾値として異なる値を用いることが好ましい。
また、上記算術復号装置は、対象周波数領域を、各周波数成分、及び、各サブブロックの少なくとも何れかを分割単位として複数の部分領域に分割する分割手段と、各部分領域に属する各変換係数が0である否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段とを備え、あるサブブロックにおいて、変換係数有無フラグの数が所定の数以上である場合には、当該あるサブブロックの次に処理するサブブロックにおいてコンテストを用いずに変換係数有無フラグを復号することが好ましい。
また、本発明の一態様に係る算術符号化装置は、対象画像を単位領域毎に周波数変換することによって周波数成分毎に得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって符号化データを生成する算術符号化装置であって、M1個(M1は自然数)のシンタックスを用いて各変換係数の値を符号化する通常モードと、M2個(M2はM2<M1を満たす自然数)のシンタックスを用いて各変換係数の値を符号化する簡略化モードとを選択的に用いることによって各変換係数の値を符号化することを特徴としている。
本発明の一態様に係る算術復号装置は、対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、を備え、上記コンテキストインデックス導出手段は、上記複数の部分領域のうち高周波数側の部分領域に属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの位置に基づいて導出する、ことを特徴としている。
また、本発明の一態様に係る算術復号装置は、対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、を備え、上記コンテキストインデックス導出手段は、各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの位置周辺に設定された参照領域に含まれる復号済みの非0変換係数の数に基づいて導出するものであり、上記複数の部分領域のうち高周波数側の部分領域において設定される上記参照領域は、低周波数側の部分領域において設定される上記参照領域よりも小さい、ことを特徴としている。
また、上記コンテキストインデックス導出手段は、上記部分領域毎に定まる所定の開始点と、上記部分領域毎に定まる変数とを加算することによってコンテキストインデックスを導出するものであり、上記変数の導出方法の異なる複数の部分領域について、開始点を同じ値に設定することにより、コンデキストインデックスの導出方法の異なる当該複数の部分領域において、共通のコンテキストを用いるものであることが好ましい。
また、上記分割手段は、上記対象周波数領域を、処理対象の変換係数有無フラグの位置に応じて、少なくとも3つの部分領域に分類するものであり、上記コンテキストインデックス導出手段は、第1の部分領域では、復号済みの非0変換係数をN1個(N1は自然数)参照し、第2の部分領域では、復号済みの非0変換係数をN2個(N2はN2<N1を満たす自然数)参照することによって、コンテキストインデックスを導出し、第3の部分領域では、変換係数有無フラグの位置に応じて、コンテキストインデックスを導出することが好ましい。
また、上記算術復号装置において、上記コンテキストインデックス導出手段は、上記複数の部分領域のうち高周波数側の部分領域における現スキャン列に沿った各変換係数有無フラグに割り付けるコンテキストインデックスを、前スキャン列に沿った非0変換係数の数に更に基づいて導出する、ことが好ましい。
また、本発明の一態様に係る算術復号装置は、対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを各スキャン列に沿って順次導出するコンテキストインデックス導出手段と、各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、を備え、上記コンテキストインデックス導出手段は、上記複数の部分領域のうち高周波数側の部分領域における現スキャン列に沿った各変換係数有無フラグに割り付けるコンテキストインデックスを、前スキャン列に沿った非0変換係数の数に基づいて導出する、ことを特徴としている。
また、本発明の一態様に係る算術復号装置は、対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、を備え、上記コンテキストインデックス導出手段は、各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの位置周辺に設定された参照領域に含まれる復号済みの非0変換係数の数に基づいて導出するものであり、上記参照領域に含まれる復号済みの変換係数の数は、4以下である、ことを特徴としている。
また、本発明の一態様に係る算術復号装置は、対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られた符号化データを復号する算術復号装置であって、処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、各部分領域に対して、互いに異なるコンテキストインデックスを割り付けるコンテキストインデックス割り付け手段と、各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグを、該変換係数有無フラグが属する部分領域に割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術復号するシンタックス復号手段と、を備え、上記複数の部分領域のうち低周波数側の部分領域は、高周波数側の部分領域よりも小さいことを特徴としている。
また、上記分割手段は、変換係数有無フラグのX座標とY座標のと和を示すSUMに応じて、上記対象周波数領域を、複数の部分領域に分割するものであり、上記分割手段は、上記SUMと、上記対象周波数領域のサイズszに応じて定まる第1の閾値TH2との大小関係に応じて、上記対象周波数領域を、少なくとも低周波数側の部分領域と上記高周波数側の部分領域に分割し、第1の閾値TH2がsz以上であることが好ましい。
また、上記分割手段は、変換係数有無フラグのX座標とY座標のと和を示すSUMに応じて、上記対象周波数領域を、複数の部分領域に分割するものであり、上記分割手段は、上記SUMと、上記対象周波数領域のサイズszに応じて定まる第1の閾値TH2との大小関係に応じて、上記対象周波数領域を、少なくとも上記低周波数側の部分領域と上記高周波数側の部分領域に分割し、第1の閾値TH2がsz−2以下であることが好ましい。
また、上記分割手段は、変換係数有無フラグのX座標とY座標のと和を示すSUMに応じて、上記対象周波数領域を、複数の部分領域に分割するものであり、上記分割手段は、上記SUMと、上記対象周波数領域のサイズszに応じて定まる第1の閾値TH2との大小関係に応じて、上記対象周波数領域を、上記第1の部分領域と上記第2の部分領域に分割し、上記SUMと、上記対象周波数領域のサイズszに応じて定まる第2の閾値TH3との大小関係に応じて、上記対象周波数領域を、上記第2の部分領域と上記第3の部分領域に分割し、上記第1の閾値TH2がsz−2以下であり、上記第2の閾値TH3がsz以上であることが好ましい。
また、本発明の一態様に係る画像復号装置は、上記算術復号装置と、上記算術復号装置によって復号された変換係数を逆周波数変換することによって残差画像を生成する逆周波数変換手段と、上記逆周波数変換手段によって生成された残差画像と、生成済みの復号画像から予測された予測画像とを加算することによって復号画像を生成する復号画像生成手段と、を備えていることを特徴としている。
また、本発明の一態様に係る算術符号化装置は、対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって符号化データを生成する算術符号化装置であって、処理対象の単位領域に対応する対象周波数領域を複数の部分領域に分割する分割手段と、各部分領域に属する各変換係数が0であるか否かを示すシンタックスである各変換係数有無フラグに割り付けるコンテキストインデックスを導出するコンテキストインデックス導出手段と、各部分領域に属する各変換係数有無フラグを、該変換係数有無フラグに割り付けられたコンテキストインデックスによって指定される確率状態に基づいて算術符号化するシンタックス符号化手段と、を備え、上記コンテキストインデックス導出手段は、上記複数の部分領域のうち高周波数側の部分領域に属する各変換係数有無フラグに割り付けるコンテキストインデックスを、対象周波数領域における該変換係数有無フラグの位置に基づいて導出する、ことを特徴としている。
また、本発明の一態様に係る画像符号化装置は、符号化対象画像と予測画像との残差画像を単位領域毎に周波数変換することによって変換係数を生成する変換係数生成手段と、上記算術符号化装置と、を備えており、上記算術符号化装置は、上記変換係数生成手段によって生成された変換係数を表す各種のシンタックスを算術符号化することによって符号化データを生成するものである、ことを特徴としている。
また、本発明の一態様に係る符号化データのデータ構造は、対象画像を単位領域毎に周波数変換して得られる各変換係数について、該変換係数を表す各種シンタックスを算術符号化することによって得られる符号化データのデータ構造であって、各単位領域に対応する各対象周波数領域における高周波数側の変換係数を復号するか否かを示す制限フラグを含み、上記符号化データを復号する算術復号装置は、上記制限フラグが、高周波数側の変換係数を復号しないことを示している場合には、当該高周波数側の変換係数を復号しない、ことを特徴としている。
11 可変長符号復号部
111 量子化残差情報復号部(算術復号装置)
120 変換係数復号部
124 係数有無フラグ復号部
124a 周波数分類部(分割手段、コンテキストインデックス導出手段)
124b 低周波位置コンテキスト導出部(コンテキストインデックス導出手段)
124c,124g 周辺参照コンテキスト導出部(コンテキストインデックス導出手段)
124d 高周波位置コンテキスト導出部(コンテキストインデックス導出手段)
X1 サブブロック係数有無フラグ復号部(サブブロック係数有無フラグ復号手段)
130 算術符号復号部
131 コンテキスト記録更新部
132 ビット復号部(シンタックス復号手段)
2 動画像符号化装置(画像符号化装置)
27 可変長符号符号化部
271 量子化残差情報符号化部(算術符号化装置)
220 変換係数符号化部
224 係数有無フラグ符号化部
224a 周波数分類部(分割手段、シンタックス符号化手段)
224b 低周波位置コンテキスト導出部
224c 周辺参照コンテキスト導出部
224d 高周波位置コンテキスト導出部(コンテキストインデックス導出手段)
X2 サブブロック係数有無フラグ符号化部(サブブロック係数有無フラグ符号化手段)
230 算術符号符号化部
231 コンテキスト記録更新部
232 ビット符号化部(シンタックス符号化手段)
Claims (8)
- コンテキストに応じてフラグを復号する算術復号装置であって、
変換単位内のサブブロック位置によって指定されるサブブロックに、非ゼロ変換係数が含まれているか否かを示すサブブロック係数有無フラグに割り付ける第1のコンテキストインデックスと、該サブブロック内の変換係数が非0変換係数であるか否かを示す変換係数有無フラグに割り付ける第2のコンテキストインデックスと、を導出するコンテキストインデックス導出手段と、
上記第1のコンテキストインデックスによって指定される第1の確率状態に基づいて、上記サブブロック係数有無フラグを復号し、上記第2のコンテキストインデックスによって指定される第2の確率状態に基づいて、上記変換係数有無フラグを復号する変換係数有無フラグ復号手段と、を備え、
上記変換係数有無フラグは、上記サブブロック係数有無フラグの値が1の場合に復号され、
上記コンテキストインデックス導出手段は、変換単位のサイズが16×16の場合には、上記サブブロック位置を、該変換単位を4×4個に分割した4×4サブブロックの位置に設定し、該変換単位のサイズが32×32の場合には、上記サブブロック位置を、該変換単位を8×8個に分割した4×4サブブロックの位置に設定し、該4×4サブブロックの位置に応じて異なる方法により、上記第2のコンテキストインデックスを導出することを特徴とする算術復号装置。 - 上記第2のコンテキストインデックスは、上記変換単位のサイズに関わらず、上記4×4サブブロックの位置のX座標とY座標の和が1未満か、1以上かに応じて導出されることを特徴とする請求項1に記載の算術復号装置。
- 上記4×4サブブロックの位置に基づいて、上記第2のコンテキストインデックスのオフセットを変更することを特徴とする請求項1または請求項2に記載の算術復号装置。
- コンテキストに応じてフラグを符号化する算術符号化装置であって、
変換単位内のサブブロック位置によって指定されるサブブロックに、非ゼロ変換係数が
含まれているか否かを示すサブブロック係数有無フラグに割り付ける第1のコンテキストインデックスと、該サブブロック内の変換係数が非0変換係数であるか否かを示す変換係数有無フラグに割り付ける第2のコンテキストインデックスと、を導出するコンテキストインデックス導出手段と、
上記第1のコンテキストインデックスによって指定される第1の確率状態に基づいて、上記サブブロック係数有無フラグを符号化し、上記第2のコンテキストインデックスによって指定される第2の確率状態に基づいて、上記変換係数有無フラグを符号化する変換係数有無フラグ符号化手段と、を備え、
上記変換係数有無フラグは、上記サブブロック係数有無フラグの値が1の場合に符号化され、
上記コンテキストインデックス導出手段は、変換単位のサイズが16×16の場合には、上記サブブロック位置を、該変換単位を4×4個に分割した4×4サブブロックの位置に設定し、該変換単位のサイズが32×32の場合には、上記サブブロック位置を、該変換単位を8×8個に分割した4×4サブブロックの位置に設定し、該4×4サブブロックの位置に応じて異なる方法により、上記第2のコンテキストインデックスを導出することを特徴とする算術符号化装置。 - 上記第2のコンテキストインデックスは、上記変換単位のサイズに関わらず、上記4×4サブブロックの位置のX座標とY座標の和が1未満か、1以上かに応じて導出されることを特徴とする請求項4に記載の算術符号化装置。
- 上記4×4サブブロックの位置に基づいて、上記第2のコンテキストインデックスのオフセットを変更することを特徴とする請求項4または請求項5に記載の算術符号化装置。
- コンテキストに応じてフラグを復号する算術復号方法であって、
変換単位内のサブブロック位置によって指定されるサブブロックに、非ゼロ変換係数が含まれているか否かを示すサブブロック係数有無フラグに割り付ける第1のコンテキストインデックスと、該サブブロック内の変換係数が非0変換係数であるか否かを示す変換係数有無フラグに割り付ける第2のコンテキストインデックスと、を導出するコンテキストインデックス導出ステップと、
上記第1のコンテキストインデックスによって指定される第1の確率状態に基づいて、上記サブブロック係数有無フラグを復号し、上記第2のコンテキストインデックスによって指定される第2の確率状態に基づいて、上記変換係数有無フラグを復号する変換係数有無フラグ復号ステップと、を含み、
上記変換係数有無フラグは、上記サブブロック係数有無フラグの値が1の場合に復号され、
上記コンテキストインデックス導出ステップは、変換単位のサイズが16×16の場合には、上記サブブロック位置を、該変換単位を4×4個に分割した4×4サブブロックの位置に設定し、該変換単位のサイズが32×32の場合には、上記サブブロック位置を、該変換単位を8×8個に分割した4×4サブブロックの位置に設定し、該4×4サブブロックの位置に応じて異なる方法により、上記第2のコンテキストインデックスを導出することを特徴とする算術復号方法。 - コンテキストに応じてフラグを符号化する算術符号化方法であって、
変換単位内のサブブロック位置によって指定されるサブブロックに、非ゼロ変換係数が含まれているか否かを示すサブブロック係数有無フラグに割り付ける第1のコンテキストインデックスと、該サブブロック内の変換係数が非0変換係数であるか否かを示す変換係数有無フラグに割り付ける第2のコンテキストインデックスと、を導出するコンテキストインデックス導出ステップと、
上記第1のコンテキストインデックスによって指定される第1の確率状態に基づいて、
上記サブブロック係数有無フラグを符号化し、上記第2のコンテキストインデックスによって指定される第2の確率状態に基づいて、上記変換係数有無フラグを符号化する変換係数有無フラグ符号化手段と、を含み、
上記変換係数有無フラグは、上記サブブロック係数有無フラグの値が1の場合に符号化され、
上記コンテキストインデックス導出ステップは、変換単位のサイズが16×16の場合には、上記サブブロック位置を、該変換単位を4×4個に分割した4×4サブブロックの位置に設定し、該変換単位のサイズが32×32の場合には、上記サブブロック位置を、該変換単位を8×8個に分割した4×4サブブロックの位置に設定し、該4×4サブブロックの位置に応じて異なる方法により、上記第2のコンテキストインデックスを導出することを特徴とする算術符号化方法。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011242840 | 2011-11-04 | ||
JP2011242840 | 2011-11-04 | ||
JP2011264156 | 2011-12-01 | ||
JP2011264156 | 2011-12-01 | ||
JP2012009447 | 2012-01-19 | ||
JP2012009447 | 2012-01-19 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013541794A Division JPWO2013065702A1 (ja) | 2011-11-04 | 2012-10-31 | 算術復号装置、画像復号装置、算術符号化装置、画像符号化装置、および、算術復号方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017123685A JP2017123685A (ja) | 2017-07-13 |
JP6560702B2 true JP6560702B2 (ja) | 2019-08-14 |
Family
ID=48192047
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013541794A Pending JPWO2013065702A1 (ja) | 2011-11-04 | 2012-10-31 | 算術復号装置、画像復号装置、算術符号化装置、画像符号化装置、および、算術復号方法 |
JP2017040790A Active JP6560702B2 (ja) | 2011-11-04 | 2017-03-03 | 算術復号装置、算術符号化装置、算術復号方法、および、算術符号化方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013541794A Pending JPWO2013065702A1 (ja) | 2011-11-04 | 2012-10-31 | 算術復号装置、画像復号装置、算術符号化装置、画像符号化装置、および、算術復号方法 |
Country Status (8)
Country | Link |
---|---|
US (6) | US9525876B2 (ja) |
EP (1) | EP2775713B1 (ja) |
JP (2) | JPWO2013065702A1 (ja) |
CN (3) | CN109120930B (ja) |
IN (1) | IN2014CN03598A (ja) |
MX (2) | MX338671B (ja) |
MY (1) | MY167316A (ja) |
WO (1) | WO2013065702A1 (ja) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10091529B2 (en) * | 2010-07-09 | 2018-10-02 | Samsung Electronics Co., Ltd. | Method and apparatus for entropy encoding/decoding a transform coefficient |
MX2013008534A (es) * | 2011-12-21 | 2013-08-12 | Panasonic Corp | Metodo de codificacion de imagen, metodo de decodificacion de imagen, aparato codificador de imagen y aparato decodificador de imagen. |
US9743116B2 (en) | 2012-01-19 | 2017-08-22 | Huawei Technologies Co., Ltd. | High throughput coding 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 |
US10616581B2 (en) | 2012-01-19 | 2020-04-07 | Huawei Technologies Co., Ltd. | Modified coding for a transform skipped block for CABAC in HEVC |
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 |
CN111683255B (zh) * | 2012-01-20 | 2022-08-02 | 索尼公司 | 有效度图编码的复杂度降低 |
MY200990A (en) * | 2012-07-02 | 2024-01-29 | Samsung Electronics Co Ltd | Entrophy Coding of a Video and Entropy Decoding of a Video |
US9619229B2 (en) | 2012-12-27 | 2017-04-11 | Intel Corporation | Collapsing of multiple nested loops, methods and instructions |
JP6569665B2 (ja) * | 2014-03-25 | 2019-09-04 | 株式会社ソシオネクスト | 画像復号装置、画像復号方法、及び集積回路 |
EP2958328A1 (en) * | 2014-06-20 | 2015-12-23 | Thomson Licensing | Method and device for signaling in a bitstream a picture/video format of an LDR picture and a picture/video format of a decoded HDR picture obtained from said LDR picture and an illumination picture |
US9781424B2 (en) * | 2015-01-19 | 2017-10-03 | Google Inc. | Efficient context handling in arithmetic coding |
EP3751304A1 (en) | 2015-05-12 | 2020-12-16 | HERE Global B.V. | Compressing and decompressing data about radio signals |
EP3099072A1 (en) * | 2015-05-28 | 2016-11-30 | Parabola Research Limited | Method, system and device for image and video coding |
WO2017041271A1 (en) * | 2015-09-10 | 2017-03-16 | Mediatek Singapore Pte. Ltd. | Efficient context modeling for coding a block of data |
US10531102B2 (en) * | 2015-09-10 | 2020-01-07 | Samsung Electronics Co., Ltd. | Encoding device, decoding device, and encoding and decoding method thereof |
EP3349445A4 (en) * | 2015-09-11 | 2019-03-20 | KT Corporation | METHOD AND DEVICE FOR PROCESSING VIDEO SIGNAL |
US10440399B2 (en) * | 2015-11-13 | 2019-10-08 | Qualcomm Incorporated | Coding sign information of video data |
US20170311003A1 (en) * | 2016-04-20 | 2017-10-26 | Mediatek Inc. | Method and apparatus for performing entropy encoding with sign data removal and associated method and apparatus for performing entropy decoding with sign data recovery |
CN113411579B (zh) | 2016-05-13 | 2024-01-23 | 夏普株式会社 | 图像解码装置及其方法、图像编码装置及其方法 |
US10694202B2 (en) * | 2016-12-01 | 2020-06-23 | Qualcomm Incorporated | Indication of bilateral filter usage in video coding |
KR20180089290A (ko) * | 2017-01-31 | 2018-08-08 | 세종대학교산학협력단 | 영상의 부호화/복호화 방법 및 장치 |
US10484695B2 (en) * | 2017-10-23 | 2019-11-19 | Google Llc | Refined entropy coding for level maps |
US11252420B2 (en) * | 2017-12-15 | 2022-02-15 | Lg Electronics Inc. | Image coding method on basis of secondary transform and device therefor |
FI3514968T3 (fi) | 2018-01-18 | 2023-05-25 | Blackberry Ltd | Menetelmiä ja laitteita pistepilvien entropiakoodausta varten |
EP3553745B1 (en) | 2018-04-09 | 2021-09-01 | BlackBerry Limited | Methods and devices for binary entropy coding of point clouds |
EP3562156A1 (en) * | 2018-04-27 | 2019-10-30 | InterDigital VC Holdings, Inc. | Method and apparatus for adaptive context modeling in video encoding and decoding |
US10645381B2 (en) | 2018-04-30 | 2020-05-05 | Google Llc | Intra-prediction for smooth blocks in image/video |
KR102533654B1 (ko) * | 2018-07-02 | 2023-05-18 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 종속 스칼라 양자화에 적합한 변환 계수의 엔트로피 코딩 |
AU2019298063B2 (en) * | 2018-07-02 | 2022-10-13 | Huawei Technologies Co., Ltd. | Apparatus and method for filtering in video coding |
BR112021005558A2 (pt) * | 2018-09-24 | 2021-06-29 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | aparelho para codificar e decodificar um bloco de coeficientes de transformação, codificador para codificar e decodificador para decodificar um bloco de coeficiente de transformação, método para codificar e decodificar um bloco de coeficientes de transformação, corrente de dados |
WO2020073884A1 (en) * | 2018-10-08 | 2020-04-16 | Mediatek Singapore Pte. Ltd. | Method and apparatus of last significant coefficient coding in image and video coding |
US10728557B2 (en) * | 2018-10-24 | 2020-07-28 | Sony Corporation | Embedded codec circuitry for sub-block based entropy coding of quantized-transformed residual levels |
EP3884669A1 (en) * | 2018-11-21 | 2021-09-29 | InterDigital VC Holdings, Inc. | Residual coding with reduced usage of local neighborhood |
JP2021510943A (ja) * | 2018-12-17 | 2021-04-30 | エルジー エレクトロニクス インコーポレイティド | 高周波ゼロイングに基づいて変換係数スキャン順序を決定する方法及び装置 |
WO2020171592A1 (ko) * | 2019-02-19 | 2020-08-27 | 엘지전자 주식회사 | 영상 코딩 시스템에서 레지듀얼 정보를 사용하는 영상 디코딩 방법 및 그 장치 |
US10939107B2 (en) | 2019-03-01 | 2021-03-02 | Sony Corporation | Embedded codec circuitry for sub-block based allocation of refinement bits |
EP3939296A1 (en) * | 2019-03-12 | 2022-01-19 | FRAUNHOFER-GESELLSCHAFT zur Förderung der angewandten Forschung e.V. | Selective inter-component transform (ict) for image and video coding |
JP7484923B2 (ja) * | 2019-09-06 | 2024-05-16 | ソニーグループ株式会社 | 画像処理装置および方法 |
CN115299064A (zh) | 2020-03-11 | 2022-11-04 | 抖音视界有限公司 | 基于颜色格式的自适应参数集信令通知 |
WO2021244420A1 (en) | 2020-05-31 | 2021-12-09 | Beijing Bytedance Network Technology Co., Ltd. | Palette mode with local dual tree modetype definition |
JP2024058010A (ja) * | 2022-10-13 | 2024-04-25 | Kddi株式会社 | メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラム |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7336711B2 (en) * | 2001-11-16 | 2008-02-26 | Ntt Docomo, Inc. | Image encoding method, image decoding method, image encoder, image decode, program, computer data signal, and image transmission system |
JP2003319391A (ja) * | 2002-04-26 | 2003-11-07 | Sony Corp | 符号化装置および方法、復号装置および方法、記録媒体、並びにプログラム |
EP2290989B1 (en) * | 2002-05-28 | 2015-01-28 | Sharp Kabushiki Kaisha | Method and systems for image intra-prediction mode estimation, communication, and organization |
JP2005130099A (ja) * | 2003-10-22 | 2005-05-19 | Matsushita Electric Ind Co Ltd | 算術復号装置、算術符号化装置、算術符号化・復号装置、携帯端末装置、動画像撮影装置、及び、動画像記録・再生装置 |
US7379608B2 (en) * | 2003-12-04 | 2008-05-27 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. | Arithmetic coding for transforming video and picture data units |
JP2006140758A (ja) * | 2004-11-12 | 2006-06-01 | Toshiba Corp | 動画像符号化方法、動画像符号化装置および動画像符号化プログラム |
WO2007081116A1 (en) * | 2006-01-07 | 2007-07-19 | Electronics And Telecommunications Research Institute | Method and apparatus for video data encoding and decoding |
JP4424522B2 (ja) * | 2006-07-13 | 2010-03-03 | 日本電気株式会社 | 符号化及び復号化装置ならびに符号化方法及び復号方法 |
TWI341657B (en) * | 2007-04-03 | 2011-05-01 | Nat Univ Tsing Hua | Cabac decoding method |
HUE037656T2 (hu) * | 2010-04-13 | 2018-09-28 | Fraunhofer Ges Forschung | Valószínûség intervallum partícionáló kódoló és dekódoló |
HUE040296T2 (hu) * | 2010-04-13 | 2019-02-28 | Ge Video Compression Llc | Szignifikancia térképek és transzformációs együttható blokkok kódolása |
US8976861B2 (en) * | 2010-12-03 | 2015-03-10 | Qualcomm Incorporated | Separately coding the position of a last significant coefficient of a video block in video coding |
EP3349360B1 (en) * | 2011-01-14 | 2019-09-04 | GE Video Compression, LLC | Entropy encoding and decoding scheme |
CN107517384B (zh) * | 2011-06-16 | 2020-06-30 | Ge视频压缩有限责任公司 | 解码器、编码器、解码方法、编码方法以及存储介质 |
US20130016789A1 (en) * | 2011-07-15 | 2013-01-17 | General Instrument Corporation | Context modeling techniques for transform coefficient level coding |
JP6130839B2 (ja) * | 2011-10-06 | 2017-05-17 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | エントロピー符号化 |
US9191670B2 (en) * | 2012-01-17 | 2015-11-17 | Qualcomm Incorporated | Throughput improvement for CABAC coefficient level coding |
-
2012
- 2012-10-31 IN IN3598CHN2014 patent/IN2014CN03598A/en unknown
- 2012-10-31 WO PCT/JP2012/078086 patent/WO2013065702A1/ja active Application Filing
- 2012-10-31 MX MX2014005246A patent/MX338671B/es active IP Right Grant
- 2012-10-31 MY MYPI2014001261A patent/MY167316A/en unknown
- 2012-10-31 MX MX2016005051A patent/MX346677B/es unknown
- 2012-10-31 JP JP2013541794A patent/JPWO2013065702A1/ja active Pending
- 2012-10-31 CN CN201810874147.1A patent/CN109120930B/zh active Active
- 2012-10-31 CN CN201810874148.6A patent/CN109120927B/zh active Active
- 2012-10-31 US US14/354,946 patent/US9525876B2/en active Active
- 2012-10-31 CN CN201280053701.0A patent/CN103907349B/zh active Active
- 2012-10-31 EP EP12846191.0A patent/EP2775713B1/en active Active
-
2016
- 2016-10-25 US US15/333,363 patent/US20170041635A1/en not_active Abandoned
-
2017
- 2017-03-03 JP JP2017040790A patent/JP6560702B2/ja active Active
-
2018
- 2018-02-01 US US15/885,856 patent/US10158887B2/en active Active
- 2018-10-16 US US16/161,115 patent/US10547870B2/en active Active
-
2019
- 2019-12-06 US US16/705,598 patent/US10897632B2/en active Active
-
2020
- 2020-11-30 US US17/106,234 patent/US11310530B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20190052905A1 (en) | 2019-02-14 |
CN109120930B (zh) | 2021-03-26 |
US9525876B2 (en) | 2016-12-20 |
US20200154140A1 (en) | 2020-05-14 |
US10897632B2 (en) | 2021-01-19 |
MX338671B (es) | 2016-04-27 |
US20180160144A1 (en) | 2018-06-07 |
CN109120930A (zh) | 2019-01-01 |
EP2775713B1 (en) | 2021-06-16 |
JP2017123685A (ja) | 2017-07-13 |
MY167316A (en) | 2018-08-16 |
CN109120927B (zh) | 2021-05-18 |
MX346677B (es) | 2017-03-29 |
CN103907349B (zh) | 2018-08-28 |
IN2014CN03598A (ja) | 2015-07-31 |
US20170041635A1 (en) | 2017-02-09 |
CN109120927A (zh) | 2019-01-01 |
US10158887B2 (en) | 2018-12-18 |
US20210084335A1 (en) | 2021-03-18 |
US20140307801A1 (en) | 2014-10-16 |
US11310530B2 (en) | 2022-04-19 |
EP2775713A4 (en) | 2015-05-06 |
EP2775713A1 (en) | 2014-09-10 |
US10547870B2 (en) | 2020-01-28 |
WO2013065702A1 (ja) | 2013-05-10 |
MX2014005246A (es) | 2014-08-22 |
CN103907349A (zh) | 2014-07-02 |
JPWO2013065702A1 (ja) | 2015-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6560702B2 (ja) | 算術復号装置、算術符号化装置、算術復号方法、および、算術符号化方法 | |
US11627337B2 (en) | Image decoding device | |
JP7001768B2 (ja) | 算術復号装置 | |
JP6957715B2 (ja) | 画像フィルタ装置、フィルタ方法および動画像復号装置 | |
JP6190361B2 (ja) | 算術復号装置、画像復号装置、算術符号化装置、および画像符号化装置 | |
US10547861B2 (en) | Image decoding device | |
JP6134651B2 (ja) | 算術復号装置、算術符号化装置および算術復号方法 | |
WO2016203881A1 (ja) | 算術復号装置及び算術符号化装置 | |
WO2013046990A1 (ja) | オフセット復号装置、オフセット符号化装置、画像フィルタ装置、および、データ構造 | |
JP2013192118A (ja) | 算術復号装置、画像復号装置、算術符号化装置、および画像符号化装置 | |
JP2013187869A (ja) | 算術復号装置、算術符号化装置、画像復号装置、および画像符号化装置 | |
WO2012090962A1 (ja) | 画像復号装置、画像符号化装置、および符号化データのデータ構造、ならびに、算術復号装置、算術符号化装置 | |
JP2013223051A (ja) | 算術復号装置、画像復号装置、算術符号化装置、および画像符号化装置 | |
WO2012081706A1 (ja) | 画像フィルタ装置、フィルタ装置、復号装置、符号化装置、および、データ構造 | |
WO2019142764A1 (ja) | 動画像符号化装置、動画像復号装置および動画像フィルタ装置 | |
JP2022188825A (ja) | 画像復号装置及び画像符号化装置 | |
JP2021010050A (ja) | 動画像符号化装置、動画像復号装置、およびフィルタ装置 | |
JP2013251827A (ja) | 画像フィルタ装置、画像復号装置、画像符号化装置、およびデータ構造 | |
JP2021057620A (ja) | 画像フィルタ装置、画像復号装置、画像符号化装置、およびデータ構造 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180306 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180423 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180821 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181003 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20190305 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190530 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20190607 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190625 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190719 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6560702 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |