JPWO2016203981A1 - 画像復号装置及び画像符号化装置 - Google Patents
画像復号装置及び画像符号化装置 Download PDFInfo
- Publication number
- JPWO2016203981A1 JPWO2016203981A1 JP2017524811A JP2017524811A JPWO2016203981A1 JP WO2016203981 A1 JPWO2016203981 A1 JP WO2016203981A1 JP 2017524811 A JP2017524811 A JP 2017524811A JP 2017524811 A JP2017524811 A JP 2017524811A JP WO2016203981 A1 JPWO2016203981 A1 JP WO2016203981A1
- Authority
- JP
- Japan
- Prior art keywords
- mode
- residual
- flag
- decoding
- unit
- 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.)
- Pending
Links
- 238000005192 partition Methods 0.000 claims abstract description 229
- 238000013139 quantization Methods 0.000 claims description 189
- 238000006243 chemical reaction Methods 0.000 claims description 80
- 238000000638 solvent extraction Methods 0.000 claims description 34
- 230000002829 reductive effect Effects 0.000 claims description 21
- 238000012937 correction Methods 0.000 claims description 15
- 238000000034 method Methods 0.000 abstract description 118
- 238000012545 processing Methods 0.000 abstract description 35
- 230000036961 partial effect Effects 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 69
- 230000000694 effects Effects 0.000 description 44
- 238000010586 diagram Methods 0.000 description 36
- 230000033001 locomotion Effects 0.000 description 36
- 230000005540 biological transmission Effects 0.000 description 33
- 230000009466 transformation Effects 0.000 description 30
- 230000015654 memory Effects 0.000 description 21
- 230000008859 change Effects 0.000 description 13
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 12
- 230000009467 reduction Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000003044 adaptive effect Effects 0.000 description 7
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 7
- 239000000872 buffer Substances 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
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/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/96—Tree coding, e.g. quad-tree 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- 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
-
- 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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- 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/46—Embedding additional information in the video signal during the compression process
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一部領域の残差の情報を低減させる方法と、スライス分割、4分木分割により自由度の高い予測ブロック、変換ブロックを切り替える方法を組み合わせ、効率のよい符号化/復号処理を実現する。ピクチャを符号化ツリーブロック単位に分割して復号する画像復号装置において、上記符号化ツリーブロックを、ルートの符号化ツリーとして再帰的に分割する符号化ツリー分割部を備え、上記符号化ツリーを分割するか否かを示す、符号化ユニット分割フラグを復号するCU分割フラグ復号部と、上記符号化ツリー以下の残差を第1のモードで復号するか、第1のモードとは異なる第2のモードで復号するかを示す、残差モードを復号する残差モード復号部を備える。
Description
本発明は、画像を表す符号化データを復号する画像復号装置、画像を符号化することによって符号化データを生成する画像符号化装置に関する。
動画像を効率的に伝送または記録するために、動画像を符号化することによって符号化データを生成する動画像符号化装置、および、当該符号化データを復号することによって復号画像を生成する動画像復号装置が用いられている。
具体的な動画像符号化方式としては、例えば、H.264/MPEG−4.AVCや、その後継コーデックであるHEVC(High-Efficiency Video Coding)にて提案されている方式(非特許文献1)などが挙げられる。
このような動画像符号化方式においては、動画像を構成する画像(ピクチャ)は、画像を分割することにより得られるスライス、スライスを分割することにより得られる符号化単位(コーディングユニット(Coding Unit)と呼ばれることもある)、及び、符号化単位を分割することより得られるブロックである予測ユニット(PU)、変換ユニット(TU)からなる階層構造により管理され、普通、ブロックごとに符号化/復号される。
また、このような動画像符号化方式においては、通常、入力画像を符号化/復号することによって得られる局所復号画像に基づいて予測画像が生成され、当該予測画像を入力画像(原画像)から減算して得られる予測残差(「差分画像」または「残差画像」と呼ぶこともある)が符号化される。また、予測画像の生成方法としては、画面間予測(インター予測)、および、画面内予測(イントラ予測)が挙げられる。
非特許文献1では、四分木分割を用いて、上述の符号化ユニット及び変換ユニットを実現することにより、自由度の高いブロックサイズを選択し、符号量と精度のバランスをとる技術が知られている。
非特許文献2、非特許文献3、非特許文献4には、ピクチャ単位で内部解像度を低下させることで符号量を低減させるARC(Adaptive Resolution Coding)またはRRU(Reduced resolution update)という技術が知られている。
ITU-T Rec. H.265 (V2), (2014年10月29日公開)
ITU-T Rec. H.263 Annex P and Annex Q
T. Davies, P. Topiwala, "AHG18: Adaptive Resolution Coding (ARC)", JCTVC-G264, 7th Meeting: Geneva, CH, 21-30 November, 2011
Alexis Tourapis, Lowell Winger, "Reduced resolution update mode for enhanced compression", JCTVC-H0447, 8th Meeting: San Jose, CA, USA, 1-10 February, 2012
しかしながら、非特許文献2、非特許文献3、非特許文献4では、自由度の高いブロックサイズ選択を行うスライス分割や四分木分割と内部解像度を低下させる方法を効果的に組み合わせる方法は不明であるとの課題がある。
さらに、解像度変更を行う場合において、解像度変更に伴う符号化データの削減量(量子化)への影響を考慮していないため、固定的な符号量低下及び画質低下が生じるという課題がある。すなわち、解像度変換を行う領域に対する符号量低減及び画質低下を制御する方法が知られていなかった。
本発明の1つの形態は、ピクチャを符号化ツリーブロック単位に分割して復号する画像復号装置において、上記符号化ツリーブロックを、ルートの符号化ツリーとして再帰的に分割する符号化ツリー分割部と、上記符号化ツリーを分割するか否かを示す、符号化ユニット分割フラグを復号するCU分割フラグ復号部と、上記符号化ツリー以下の残差を第1のモードで復号するか、第1のモードとは異なる第2のモードで復号するかを示す、残差モードを復号する残差モード復号部とを備えることを特徴とする。
本発明の1つの形態では、上記残差モード復号部は、最上位の符号化ツリーでのみ、残差モード(rru_flag)を符号化データから復号し、それより下位の符号化ツリーでは、残差モード(rru_flag)を復号しないことを特徴とする。
本発明の1つの形態では、上記残差モード復号部は、指定された階層の符号化ツリーでのみ、残差モードを復号し、それより下位の符号化ツリーでは、指定された階層の符号化ツリー以外では残差モードの復号を省略することを特徴とする。
本発明の1つの形態では、上記CU分割フラグ復号部は、上記残差モードが上記第2のモードで復号することを示す場合、残差モードが上記第1のモードで復号することを示す場合に比べて分割する階層を1つ減らすことを特徴とする。
本発明の1つの形態では、上記CU分割フラグ復号部は、残差モードが上記第1のモードである場合、符号化ツリーのサイズである符号化ブロックサイズ(log2CbSize)が最小符号化ブロック(MinCbLog2Size)よりも大きい場合、符号化データから上記CU分割フラグを復号し、残差モードが上記第2のモードである場合、符号化ツリーのサイズである符号化ブロックサイズ(log2CbSize)が最小符号化ブロック(MinCbLog2Size+1)よりも大きい場合、符号化データから上記CU分割フラグを復号し、それ以外の場合には、上記CU分割フラグの復号を省略し、上記CU分割フラグを分割しないことを示す0を導出することを特徴とする。
本発明の1つの形態では、上記残差モード復号部は、リーフとなる符号化ツリーである符号化ユニットにおいて、残差モードを復号することを特徴とする。
本発明の1つの形態は、さらに、リーフとなる符号化ツリーである符号化ユニットにおいて、残差の復号を省略して復号するか否かを示すスキップフラグを復号するスキップフラグ復号部を備え、上記残差モード復号部は、上記符号化ユニットにおいて、上記スキップフラグが残差を復号しないことを示す場合、残差モードを復号し、それ以外の場合、残差モードを復号しないことを特徴とする。
本発明の1つの形態は、さらに、符号化ユニットが残差を含むか否かを示すCBFフラグを復号するCBFフラグ復号部を備え、上記残差モード復号部は、上記CBFフラグが残差が存在することを示す場合、上記残差モードを復号し、それ以外の場合、上記残差モードが上記第1のモードであることを示す残差モードを導出することを特徴とする。
本発明の1つの形態では、上記残差モード復号部は、符号化ツリーのサイズである符号化ブロックサイズ(log2CbSize)が所定の最小符号化ブロックサイズ(MinCbLog2Size)よりも大きい場合、符号化データから上記残差モードを復号し、それ以外の場合、上記残差モードが符号化データに存在しない場合に、上記残差モードを上記第1のモードとして導出することを特徴とする。
本発明の1つの形態は、さらに、符号化ユニットをさらに予測ブロックに分割するか否かを示すPU分割モードを復号するPU分割モード復号部を備え、上記残差モード復号部は、上記PU分割モードがPU分割しないことを示す値の場合のみ、残差モードを復号し、それ以外の場合には、残差モードを復号しないことを特徴とする。
本発明の1つの形態は、さらに、符号化ユニットをさらに予測ブロックに分割するか否かを示すPU分割モードを復号するPU分割モード復号部を備え、上記PU分割モード復号部は、上記残差モードが上記第2のモードを示す場合、上記PU分割モードの復号を省略し、PU分割しないことを示す値を導出し、上記残差モードが上記第1のモードを示す場合、上記PU分割モードを復号することを特徴とする。
本発明の1つの形態は、さらに、符号化ユニットをさらに予測ブロックに分割するか否かを示すPU分割モードを復号するPU分割モード復号部を備え、上記PU分割モード復号部は、上記残差モードが上記第2のモードを示す場合、符号化ブロックサイズ(log2CbSize)が最小符号化ブロック(MinCbLog2Size)と1の和(MinCbLog2Size+1)と等しい場合に、上記PU分割モードを復号し、上記残差モードが上記第1のモードを示す場合、インターであるか、符号化ブロックサイズ(log2CbSize)が最小符号化ブロック(MinCbLog2Size)と等しい場合に、上記PU分割モードを復号し、それ以外の場合、上記PU分割モードの復号を省略し、PU分割しないことを示す値を導出することを特徴とする。
本発明の1つの形態は、さらに、符号化ユニットをさらに変換ブロックに分割するか否かを示すTU分割モードを復号するTU分割モード復号部を備え、上記TU分割モード復号部は、上記残差モードが上記第2のモードを示す場合、符号化ブロックサイズ(log2CbSize)が最大変換ブロック(MaxTbLog2SizeY)と1の和(MaxTbLog2SizeY+1)以下かつ最小変換ブロック(MinCbLog2Size)と1の和(MinCbLog2Size+1)より大きい場合に、上記TU分割フラグを復号し、上記残差モードが上記第1のモードを示す場合、符号化ブロックサイズ(log2CbSize)が最大変換ブロック(MaxTbLog2Size)以下かつ最小変換ブロック(MinCbLog2Size)より大きい場合に、上記TU分割フラグを復号し、それ以外の場合には、上記TU分割フラグの復号を省略し、分割しないことを示すTU分割フラグの値を導出することを特徴とする。
本発明の1つの形態は、さらに、符号化ユニットをさらに変換ブロックに分割するか否かを示すTU分割モードを復号するTU分割モード復号部を備え、上記TU分割モード復号部は、上記残差モードが上記第2のモードを示す場合、符号化変換デプス(trafoDepth)が、最大符号化デプス(MaxTrafoDepth)と1の差(MaxTrafoDepth―1)未満の場合に、上記TU分割フラグを復号し、上記残差モードが上記第1のモードを示す場合、符号化変換デプス(trafoDepth)が最大符号化デプス(MaxTrafoDepth)未満の場合に、上記TU分割フラグを復号し、それ以外の場合、上記TU分割フラグの復号を省略し、分割しないことを示す値を導出することを特徴とする。
本発明の1つの形態は、さらに、残差を復号する残差復号部と、復号された上記残差を逆量子化する逆量子化する逆量子化部とを備え、上記逆量子化部は、上記残差モードが上記第1のモードの場合、第1の量子化ステップにより逆量子化を行い、上記残差モードが上記第2のモードの場合、上記第1の量子化ステップから導出される第2の量子化ステップにより逆量子化をすることを特徴とする。
本発明の1つの形態は、さらに、量子化ステップ修正値を復号する量子化ステップ制御情報復号を備え、上記逆量子化部は、第1の量子化ステップに上記量子化ステップ修正値を加算することで第2の量子化ステップを導出することを特徴とする。
本発明の1つの形態では、ピクチャをスライス単位に分割して、上記スライスをさらに符号化ツリーブロック単位に分割して復号する画像復号装置において、スライス内の最上位ブロックサイズを可変とすることを特徴とする。
本発明の1つの形態では、スライス先頭の水平位置を示す値と垂直位置を示す値を復号することを特徴とする。
本発明の1つの形態では、スライス先頭の先頭アドレスを示す値を復号し、選択肢となる最上位ブロックサイズの内の最小のブロックサイズに基づいて、スライス先頭位置または対象ブロックの水平位置と垂直位置を導出することを特徴とする。
本発明は、スライス先頭または4分木を構成する階層において、少ない符号量で残差を符号化する残差モードを符号化することにより、自由度の高いブロックサイズ選択を行うスライス分割、四分木分割と、特定領域の残差低減を組み合わせて最適な符号化効率を実現可能とするという効果を奏する。
本発明の一実施形態について図1〜図58を参照して説明する。まず、図2を参照しながら、動画像復号装置(画像復号装置)1および動画像符号化装置(画像符号化装置)2の概要について説明する。図2は、動画像復号装置1の概略的構成を示す機能ブロック図である。
図2に示す動画像復号装置1および動画像符号化装置2は、HEVC(High-Efficiency Video Coding)にて採用されている技術を実装している。動画像符号化装置2は、これらの動画像符号化方式において、エンコーダからデコーダに伝送されることが規定されているシンタックス(syntax)の値をエントロピー符号化して符号化データ#1を生成する。
エントロピー符号化方式としては、コンテキスト適応型可変長符号化(CAVLC:Context-based Adaptive Variable Length Coding)、および、コンテキスト適応型2値算術符号化(CABAC:Context-based Adaptive Binary Arithmetic Coding)が知られている。
CAVLCおよびCABACによる符号化/復号においては、コンテキストに適応した処理が行われる。コンテキストとは、符号化/復号の状況(文脈)のことであり、関連シンタックスの過去の符号化/復号結果により定まるものである。関連シンタックスとしては、例えば、イントラ予測、インター予測に関する各種シンタックス、輝度(Luma)、色差(Chroma)に関する各種シンタックス、およびCU(Coding Unit 符号化単位)サイズに関する各種シンタックスなどがある。また、CABACでは、シンタックスに対応する2値データ(バイナリ列)における、符号化/復号対象となるバイナリの位置をコンテキストとして用いる場合もある。
CAVLCでは、符号化に用いるVLCテーブルを適応的に変更して、各種シンタックスが符号化される。一方、CABACでは、予測モードおよび変換係数等の多値を取り得るシンタックスに対して2値化処理が施され、この2値化処理によって得られた2値データが発生確率に応じて適応的に算術符号化される。具体的には、バイナリ値(0または1)の発生確率を保持するバッファを複数用意し、コンテキストに応じて一つのバッファを選択し、当該バッファに記録されている発生確率に基づいて算術符号化を行う。また、復号/符号化するバイナリ値に基づいて、当該バッファの発生確率を更新することで、コンテキストに応じて適切な発生確率を維持できる。
動画像復号装置1には、動画像符号化装置2が動画像を符号化した符号化データ#1が入力される。動画像復号装置1は、入力された符号化データ#1を復号して動画像#2を外部に出力する。動画像復号装置1の詳細な説明に先立ち、符号化データ#1の構成を以下に説明する。
〔符号化データの構成〕
図3を用いて、動画像符号化装置2によって生成され、動画像復号装置1によって復号される符号化データ#1の構成例について説明する。符号化データ#1は、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャを含む。
図3を用いて、動画像符号化装置2によって生成され、動画像復号装置1によって復号される符号化データ#1の構成例について説明する。符号化データ#1は、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャを含む。
符号化データ#1におけるピクチャレイヤ以下の階層の構造を図3に示す。図3の(a)〜(e)は、それぞれ、ピクチャPICTを規定するピクチャレイヤ、スライスSを規定するスライスレイヤ、符号化ツリーブロック(Coding Tree block)CTBを規定するツリーブロックレイヤ、符号化ツリー(Coding Tree、CT)を規定する符号化ツリーレイヤ、符号化ツリーブロックCTUに含まれる符号化単位(Coding Unit;CU)を規定するCUレイヤを示す図である。
(ピクチャレイヤ)
ピクチャレイヤでは、処理対象のピクチャPICT(以下、対象ピクチャとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。ピクチャPICTは、図3の(a)に示すように、ピクチャヘッダPH、及び、スライスS1〜SNSを含んでいる(NSはピクチャPICTに含まれるスライスの総数)。
ピクチャレイヤでは、処理対象のピクチャPICT(以下、対象ピクチャとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。ピクチャPICTは、図3の(a)に示すように、ピクチャヘッダPH、及び、スライスS1〜SNSを含んでいる(NSはピクチャPICTに含まれるスライスの総数)。
なお、以下、スライスS1〜SNSのそれぞれを区別する必要が無い場合、符号の添え字を省略して記述することがある。また、以下に説明する符号化データ#1に含まれるデータであって、添え字を付している他のデータについても同様である。
ピクチャヘッダPHには、対象ピクチャの復号方法を決定するために動画像復号装置1が参照する符号化パラメータ群が含まれている。ピクチャヘッダPHは、ピクチャー・パラメーター・セット(PPS:Picture Parameter Set)とも称される。
(スライスレイヤ)
スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。スライスSは、図3の(b)に示すように、スライスヘッダSH、及び、ツリーブロックCTU1〜CTUNC(NCはスライスSに含まれるツリーブロックの総数)を含んでいる。
スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。スライスSは、図3の(b)に示すように、スライスヘッダSH、及び、ツリーブロックCTU1〜CTUNC(NCはスライスSに含まれるツリーブロックの総数)を含んでいる。
スライスヘッダSHには、対象スライスの復号方法を決定するために動画像復号装置1が参照する符号化パラメータ群が含まれる。スライスタイプを指定するスライスタイプ指定情報(slice_type)は、スライスヘッダSHに含まれる符号化パラメータの一例である。
スライスタイプ指定情報により指定可能なスライスタイプとしては、(1)符号化の際にイントラ予測のみを用いるIスライス、(2)符号化の際に単予測、又は、イントラ予測を用いるPスライス、(3)符号化の際に単予測、双予測、又は、イントラ予測を用いるBスライスなどが挙げられる。
また、スライスヘッダSHには、動画像復号装置1の備えるループフィルタ(不図示)によって参照されるフィルタパラメータが含まれていてもよい。
(ツリーブロックレイヤ)
ツリーブロックレイヤでは、処理対象のツリーブロックCTU(以下、対象ツリーブロックとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。ツリーブロックCTBは、スライス(ピクチャ)を固定サイズに分割するブロックである。なお、固定サイズのブロックであるツリーブロックにおいて、領域の画像データ(画素)に注目する場合には、ツリーブロック、領域の画像データだけではなく、画像データを復号するための情報(例えば分割情報等)も含める場合には、ツリーユニットと呼ぶことがある。以下、区別せずに単にツリーブロックCTUと呼ぶ。以下、符号化ツリー、符号化ユニットなども、対応する領域の画像データだけではなく、画像データを復号するための情報(例えば分割情報等)も含めて扱う。
ツリーブロックレイヤでは、処理対象のツリーブロックCTU(以下、対象ツリーブロックとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。ツリーブロックCTBは、スライス(ピクチャ)を固定サイズに分割するブロックである。なお、固定サイズのブロックであるツリーブロックにおいて、領域の画像データ(画素)に注目する場合には、ツリーブロック、領域の画像データだけではなく、画像データを復号するための情報(例えば分割情報等)も含める場合には、ツリーユニットと呼ぶことがある。以下、区別せずに単にツリーブロックCTUと呼ぶ。以下、符号化ツリー、符号化ユニットなども、対応する領域の画像データだけではなく、画像データを復号するための情報(例えば分割情報等)も含めて扱う。
ツリーブロックCTUは、ツリーブロックヘッダCTUHと、符号化単位情報CQTを含む。ここで、まず、ツリーブロックCTUと、符号化ツリーCTとの関係について説明すると次のとおりである。
ツリーブロックCTUは、スライス(ピクチャ)を固定サイズに分割するユニットである。
ツリーブロックCTUは、符号化ツリー(CT)を有する。符号化ツリー(CT)は、再帰的な4分木分割により分割されている。この再帰的な4分木分割により得られる木構造及びそのノードのことを以下、符号化ツリー(coding tree)と称する。
以下、符号化ツリーの末端のノードであるリーフ(leaf)に対応するユニットを、符号化ノード(coding node)として参照する。また、符号化ノードは、符号化処理の基本的な単位となるため、以下、符号化ノードのことを、符号化単位(CU)とも称する。つまり、最上位の符号化ツリーCTが、CTU(CQT)であり、末端の符号化ツリーCTが、CUである。
つまり、符号化単位情報CU1〜CUNLは、ツリーブロックCTUを再帰的に4分木分割して得られる各符号化ノード(符号化単位)に対応する情報である。
また、符号化ツリーのルート(root)は、ツリーブロックCTUに対応付けられる。換言すれば、ツリーブロックCTU(CQT)は、複数の符号化ノード(CT)を再帰的に含む4分木分割の木構造の最上位ノードに対応付けられる。
なお、各符号化ノードのサイズは、当該符号化ノードが直接に属する符号化ノード(すなわち、当該符号化ノードの1階層上位のノードのユニット)のサイズの縦横とも半分である。
また、各符号化ノードの取り得るサイズは、符号化データ#1のシーケンスパラメータセットSPSに含まれる、符号化ノードのサイズ指定情報および最大階層深度(maximum hierarchical depth)に依存する。例えば、ツリーブロックCTUのサイズが64×64画素であって、最大階層深度が3である場合には、当該ツリーブロックCTU以下の階層における符号化ノードは、4種類のサイズ、すなわち、64×64画素、32×32画素、16×16画素、および8×8画素の何れかを取り得る。
(ツリーブロックヘッダ)
ツリーブロックヘッダCTUHには、対象ツリーブロックの復号方法を決定するために動画像復号装置1が参照する符号化パラメータが含まれる。具体的には、図3の(c)に示すように、対象ツリーブロックのフィルタ方法を指定するSAOが含まれる。CTUHなど、CTUに含まれる情報を符号化ツリーユニット情報(CTU情報)と呼ぶ。
ツリーブロックヘッダCTUHには、対象ツリーブロックの復号方法を決定するために動画像復号装置1が参照する符号化パラメータが含まれる。具体的には、図3の(c)に示すように、対象ツリーブロックのフィルタ方法を指定するSAOが含まれる。CTUHなど、CTUに含まれる情報を符号化ツリーユニット情報(CTU情報)と呼ぶ。
(符号化ツリー)
符号化ツリーCTは、ツリーブロックを分割するための情報であるツリーブロック分割情報SPを有する。例えば、具体的には、図3の(d)に示すように、ツリーブロック分割情報SPは、対象ツリーブロック全体またはツリーブロックの部分領域を四分割するか否かを示すフラグであるCU分割フラグ(split_cu_flag)であってもよい。CU分割フラグsplit_cu_flagが1の場合には、符号化ツリーCTをさらに4つの符号化ツリーCTに分割する。split_cu_flagが0の場合には、符号化ツリーCTは分割されない末端ノードであることを意味する。符号化ツリーが有するCU分割フラグsplit_cu_flagなどの情報を符号化ツリー情報(CT情報)と呼ぶ。CT情報は、当該符号化ツリーをさらに分割するか否かを示すCU分割フラグsplit_cu_flagの他、当該符号化ツリーとそれ以下の符号化ユニットで適用されるパラメータを含んでいても良い。例えば、CT情報において、符号化データが残差モードを備える場合には、ある復号された残差モードの値は、その残差モードを復号した符号化ツリーとそれ以下の符号化ユニットの残差モードの値として適用される。
符号化ツリーCTは、ツリーブロックを分割するための情報であるツリーブロック分割情報SPを有する。例えば、具体的には、図3の(d)に示すように、ツリーブロック分割情報SPは、対象ツリーブロック全体またはツリーブロックの部分領域を四分割するか否かを示すフラグであるCU分割フラグ(split_cu_flag)であってもよい。CU分割フラグsplit_cu_flagが1の場合には、符号化ツリーCTをさらに4つの符号化ツリーCTに分割する。split_cu_flagが0の場合には、符号化ツリーCTは分割されない末端ノードであることを意味する。符号化ツリーが有するCU分割フラグsplit_cu_flagなどの情報を符号化ツリー情報(CT情報)と呼ぶ。CT情報は、当該符号化ツリーをさらに分割するか否かを示すCU分割フラグsplit_cu_flagの他、当該符号化ツリーとそれ以下の符号化ユニットで適用されるパラメータを含んでいても良い。例えば、CT情報において、符号化データが残差モードを備える場合には、ある復号された残差モードの値は、その残差モードを復号した符号化ツリーとそれ以下の符号化ユニットの残差モードの値として適用される。
(CUレイヤ)
CUレイヤでは、処理対象のCU(以下、対象CUとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。
CUレイヤでは、処理対象のCU(以下、対象CUとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。
ここで、符号化単位情報CUに含まれるデータの具体的な内容の説明をする前に、CUに含まれるデータの木構造について説明する。符号化ノードは、予測ツリー(predictiontree;PT)および変換ツリー(transform tree;TT)のルートのノードとなる。予測ツリーおよび変換ツリーについて説明すると次のとおりである。
予測ツリーにおいては、符号化ノードが1または複数の予測ブロックに分割され、各予測ブロックの位置とサイズとが規定される。別の表現でいえば、予測ブロックは、符号化ノードを構成する1または複数の重複しない領域である。また、予測ツリーは、上述の分割により得られた1または複数の予測ブロックを含む。
予測処理は、この予測ブロックごとに行われる。以下、予測の単位である予測ブロックのことを、予測単位(prediction unit;PU)とも称する。
予測ツリーにおける分割の種類は、大まかにいえば、イントラ予測の場合と、インター予測の場合との2つがある。
イントラ予測の場合、分割方法は、2N×2N(符号化ノードと同一サイズ)と、N×Nとがある。
また、インター予測の場合、分割方法は、2N×2N(符号化ノードと同一サイズ)、2N×N、N×2N、および、N×Nなどがある。
また、変換ツリーにおいては、符号化ノードが1または複数の変換ブロックに分割され、各変換ブロックの位置とサイズとが規定される。別の表現でいえば、変換ブロックは、符号化ノードを構成する1または複数の重複しない領域のことである。また、変換ツリーは、上述の分割より得られた1または複数の変換ブロックを含む。
変換処理は、この変換ブロックごとに行われる。以下、変換の単位である変換ブロックのことを、変換単位(transform unit;TU)とも称する。
(符号化単位情報のデータ構造)
続いて、図3の(e)を参照しながら符号化単位情報CUに含まれるデータの具体的な内容について説明する。図3の(e)に示すように、符号化単位情報CUは、具体的には、CU情報(スキップフラグSKIP、CU予測タイプ情報Pred_type)、PT情報PTI、および、TT情報TTIを含む。
続いて、図3の(e)を参照しながら符号化単位情報CUに含まれるデータの具体的な内容について説明する。図3の(e)に示すように、符号化単位情報CUは、具体的には、CU情報(スキップフラグSKIP、CU予測タイプ情報Pred_type)、PT情報PTI、および、TT情報TTIを含む。
[スキップフラグ]
スキップフラグSKIPは、対象CUについて、スキップモードが適用されているか否かを示すフラグ(skip_flag)であり、スキップフラグSKIPの値が1の場合、すなわち、対象CUにスキップモードが適用されている場合、その符号化単位情報CUにおけるPT情報PTI、TT情報TTIは省略される。なお、スキップフラグSKIPは、Iスライスでは省略される。
スキップフラグSKIPは、対象CUについて、スキップモードが適用されているか否かを示すフラグ(skip_flag)であり、スキップフラグSKIPの値が1の場合、すなわち、対象CUにスキップモードが適用されている場合、その符号化単位情報CUにおけるPT情報PTI、TT情報TTIは省略される。なお、スキップフラグSKIPは、Iスライスでは省略される。
[CU予測タイプ情報]
CU予測タイプ情報Pred_typeは、CU予測方式情報(PredMode)およびPU分割タイプ情報(PartMode)を含む。
CU予測タイプ情報Pred_typeは、CU予測方式情報(PredMode)およびPU分割タイプ情報(PartMode)を含む。
CU予測方式情報(PredMode)は、対象CUに含まれる各PUについての予測画像生成方法として、スキップモード、イントラ予測(イントラCU)、および、インター予測(インターCU)のいずれを用いるのかを指定するものである。なお、以下では、対象CUにおける、スキップ、イントラ予測、および、インター予測の種別を、CU予測モードと称する。
PU分割タイプ情報(PartMode)は、対象符号化単位(CU)の各PUへの分割のパターンであるPU分割タイプを指定するものである。以下、このように、PU分割タイプに従って、対象符号化単位(CU)を各PUへ分割することをPU分割と称する。
PU分割タイプ情報(PartMode)は、例示的には、PU分割パターンの種類を示すインデックスであってもよいし、対象予測ツリーに含まれる各PUの形状、サイズ、および、対象予測ツリー内での位置が指定されていてもよい。なお、PU分割は、予測単位分割タイプとも呼称される。
なお、選択可能なPU分割タイプは、CU予測方式とCUサイズに応じて異なる。また、さらにいえば、選択可能できるPU分割タイプは、インター予測およびイントラ予測それぞれの場合において異なる。また、PU分割タイプの詳細については後述する。
また、Iスライスでない場合、CU予測方式情報(PredMode)の値およびPU分割タイプ情報(PartMode)の値は、CU分割フラグ(split_cu_flag)、スキップフラグ(skip_flag)、マージフラグ(merge_flag;後述)、CU予測方式情報(PredMode)、およびPU分割タイプ情報(PartMode)の組み合わせを指定するインデックス(cu_split_pred_part_mode)によって特定されるようになっていてもよい。cu_split_pred_part_modeのようなインデックスのことを結合シンタックス(あるいは、ジョイント符号)とも称する。
[PT情報]
PT情報PTIは、対象CUに含まれるPTに関する情報である。言い換えれば、PT情報PTIは、PTに含まれる1または複数のPUそれぞれに関する情報の集合である。上述のとおり予測画像の生成は、PUを単位として行われるので、PT情報PTIは、動画像復号装置1によって予測画像が生成される際に参照される。PT情報PTIは、図3の(d)に示すように、各PUにおける予測情報等を含むPU情報PUI1〜PUINP(NPは、対象PTに含まれるPUの総数)を含む。
PT情報PTIは、対象CUに含まれるPTに関する情報である。言い換えれば、PT情報PTIは、PTに含まれる1または複数のPUそれぞれに関する情報の集合である。上述のとおり予測画像の生成は、PUを単位として行われるので、PT情報PTIは、動画像復号装置1によって予測画像が生成される際に参照される。PT情報PTIは、図3の(d)に示すように、各PUにおける予測情報等を含むPU情報PUI1〜PUINP(NPは、対象PTに含まれるPUの総数)を含む。
予測情報PUIは、予測タイプ情報Pred_modeが何れの予測方法を指定するのかに応じて、イントラ予測情報、または、インター予測情報を含む。以下では、イントラ予測が適用されるPUをイントラPUとも呼称し、インター予測が適用されるPUをインターPUとも呼称する。
インター予測情報は、動画像復号装置1が、インター予測によってインター予測画像を生成する際に参照される符号化パラメータを含む。
インター予測パラメータとしては、例えば、マージフラグ(merge_flag)、マージインデックス(merge_idx)、推定動きベクトルインデックス(mvp_idx)、参照画像インデックス(ref_idx)、インター予測フラグ(inter_pred_flag)、および動きベクトル残差(mvd)が挙げられる。
イントラ予測情報は、動画像復号装置1が、イントラ予測によってイントラ予測画像を生成する際に参照される符号化パラメータを含む。
イントラ予測パラメータとしては、例えば、推定予測モードフラグ、推定予測モードインデックス、および、残余予測モードインデックスが挙げられる。
なお、イントラ予測情報では、PCMモードを用いるか否かを示すPCMモードフラグが符号化されていてもよい。PCMモードフラグが符号化されている場合であって、PCMモードフラグがPCMモードを用いることを示しているときには、予測処理(イントラ)、変換処理、および、エントロピー符号化の各処理が省略される。
[TT情報]
TT情報TTIは、CUに含まれるTTに関する情報である。言い換えれば、TT情報TTIは、TTに含まれる1または複数のTUそれぞれに関する情報の集合であり、動画像復号装置1により残差データを復号する際に参照される。なお、以下、TUのことをブロックと称することもある。
TT情報TTIは、CUに含まれるTTに関する情報である。言い換えれば、TT情報TTIは、TTに含まれる1または複数のTUそれぞれに関する情報の集合であり、動画像復号装置1により残差データを復号する際に参照される。なお、以下、TUのことをブロックと称することもある。
TT情報TTIは、図3の(e)に示すように、対象CUが残差データを含むか否かを示す情報CU残差フラグCBP_TU、対象CUの各変換ブロックへの分割パターンを指定するTT分割情報SP_TU、および、TU情報TUI1〜TUINT(NTは、対象CUに含まれるブロックの総数)を含んでいる。
CU残差フラグCBP_TUが0の場合には、対象CUは残差データ、すなわち、TT情報TTIを含まない。CU残差フラグCBP_TUが1の場合には、対象CUは残差データ、すなわち、TT情報TTIを含む。CU残差フラグCBP_TUは、例えば、対象ブロック以下を分割して得られる残差ブロックの全てにおいて残差が存在しないことを示す、残差ルートフラグrqt_root_cbf(Residual Quad Tree Root Coded Block Flag)であっても良い。TT分割情報SP_TUは、具体的には、対象CUに含まれる各TUの形状、サイズ、および、対象CU内での位置を決定するための情報である。例えば、TT分割情報SP_TUは、対象となるノードの分割を行うのか否かを示すTU分割フラグ(split_transform_flag)と、その分割の深度を示すTU深度(TU階層、trafoDepth)とから実現することができる。TU分割フラグsplit_transform_flagは変換(逆変換)を行う変換ブロックを分割するか否かを示すフラグであり、分割する場合にはさらに小さなブロックを用いて変換(逆変換、逆量子化、量子化)が行われる。
また、例えば、CUのサイズが、64×64の場合、分割により得られる各TUは、32×32画素から4×4画素までのサイズを取り得る。
TU情報TUI1〜TUINTは、TTに含まれる1または複数のTUそれぞれに関する個別の情報である。例えば、TU情報TUIは、量子化予測残差を含んでいる。
各量子化予測残差は、動画像符号化装置2が以下の処理1〜3を、処理対象のブロックである対象ブロックに施すことによって生成した符号化データである。
処理1:符号化対象画像から予測画像を減算した予測残差をDCT変換(Discrete Cosine Transform)する;
処理2:処理1にて得られた変換係数を量子化する;
処理3:処理2にて量子化された変換係数を可変長符号化する;
なお、上述した量子化パラメータqpは、動画像符号化装置2が変換係数を量子化する際に用いた量子化ステップQPの大きさを表す(QP=2qp/6)。
処理2:処理1にて得られた変換係数を量子化する;
処理3:処理2にて量子化された変換係数を可変長符号化する;
なお、上述した量子化パラメータqpは、動画像符号化装置2が変換係数を量子化する際に用いた量子化ステップQPの大きさを表す(QP=2qp/6)。
(PU分割タイプ)
PU分割タイプ(PartMode)には、対象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分割タイプ(PartMode)には、対象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を分割して得られる領域のことをパーティションとも称する。
図4の(a)〜(h)に、それぞれの分割タイプについて、CUにおけるPU分割の境界の位置を具体的に図示している。
なお、図4の(a)は、CUの分割を行わない2N×2NのPU分割タイプを示している。
また、図4の(b)、(c)、および(d)は、それぞれ、PU分割タイプが、それぞれ、2N×N、2N×nU、および、2N×nDである場合のパーティションの形状について示している。以下、PU分割タイプが、2N×N、2N×nU、および、2N×nDである場合のパーティションを、まとめて横長パーティションと称する。
また、図4の(e)、(f)、および(g)は、それぞれ、PU分割タイプが、N×2N、nL×2N、および、nR×2Nである場合のパーティションの形状について示している。以下、PU分割タイプが、N×2N、nL×2N、および、nR×2Nである場合のパーティションを、まとめて縦長パーティションと称する。
また、横長パーティションおよび縦長パーティションをまとめて長方形パーティションと称する。
また、図4の(h)は、PU分割タイプが、N×Nである場合のパーティションの形状を示している。図4の(a)および(h)のPU分割タイプのことを、そのパーティションの形状に基づいて、正方形分割とも称する。また、図4の(b)〜(g)のPU分割タイプのことは、非正方形分割とも称する。
また、図4の(a)〜(h)において、各領域に付した番号は、領域の識別番号を示しており、この識別番号順に、領域に対して処理が行われる。すなわち、当該識別番号は、領域のスキャン順を表している。
また、図4の(a)〜(h)において、左上がCUの基準点(原点)であるとする。
[インター予測の場合の分割タイプ]
インターPUでは、上記8種類の分割タイプのうち、N×N(図4の(h))以外の7種類が定義されている。なお、上記4つの非対称的分割は、AMP(Asymmetric Motion Partition、非対称パーティション)と呼ばれることもある。一般に、非対称パーティションにより分割されるCUには、形状またはサイズが異なるパーティションが含まれている。また、対称的分割は、対称パーティションと呼ばれることもある。一般に、対称パーティションにより分割されるCUには、形状およびサイズが一致するパーティションが含まれている。
インターPUでは、上記8種類の分割タイプのうち、N×N(図4の(h))以外の7種類が定義されている。なお、上記4つの非対称的分割は、AMP(Asymmetric Motion Partition、非対称パーティション)と呼ばれることもある。一般に、非対称パーティションにより分割されるCUには、形状またはサイズが異なるパーティションが含まれている。また、対称的分割は、対称パーティションと呼ばれることもある。一般に、対称パーティションにより分割されるCUには、形状およびサイズが一致するパーティションが含まれている。
なお、上述のNの具体的な値は、当該PUが属するCUのサイズによって規定され、nU、nD、nL、および、nRの具体的な値は、Nの値に応じて定められる。例えば、128×128画素のインターCUは、128×128画素、128×64画素、64×128画素、64×64画素、128×32画素、128×96画素、32×128画素、および、96×128画素のインターPUへ分割することが可能である。
[イントラ予測の場合の分割タイプ]
イントラPUでは、次の2種類の分割パターンが定義されている。すなわち、対象CUを分割しない、すなわち対象CU自身が1つのPUとして取り扱われる分割パターン2N×2Nと、対象CUを、4つのPUへと対称的に分割するパターンN×Nと、である。
イントラPUでは、次の2種類の分割パターンが定義されている。すなわち、対象CUを分割しない、すなわち対象CU自身が1つのPUとして取り扱われる分割パターン2N×2Nと、対象CUを、4つのPUへと対称的に分割するパターンN×Nと、である。
したがって、イントラPUでは、図4に示した例でいえば、(a)および(h)の分割パターンを取ることができる。
例えば、128×128画素のイントラCUは、128×128画素、および、64×64画素のイントラPUへ分割することが可能である。
なお、Iスライスの場合、符号化単位情報CUにおいて、PU分割タイプ(PartMode)を特定するためのイントラ分割モード(intra_part_mode)が含まれていてもよい。
〔動画像復号装置〕
以下では、本実施形態に係る動画像復号装置1の構成について、図1〜図24を参照して説明する。
以下では、本実施形態に係る動画像復号装置1の構成について、図1〜図24を参照して説明する。
(動画像復号装置の概要)
動画像復号装置1は、PU毎に予測画像を生成し、生成された予測画像と、符号化データ#1から復号された予測残差とを加算することによって復号画像#2を生成し、生成された復号画像#2を外部に出力する。
動画像復号装置1は、PU毎に予測画像を生成し、生成された予測画像と、符号化データ#1から復号された予測残差とを加算することによって復号画像#2を生成し、生成された復号画像#2を外部に出力する。
ここで、予測画像の生成は、符号化データ#1を復号することによって得られる符号化パラメータを参照して行われる。符号化パラメータとは、予測画像を生成するために参照されるパラメータのことである。符号化パラメータには、画面間予測において参照される動きベクトルや画面内予測において参照される予測モードなどの予測パラメータに加えて、PUのサイズや形状、ブロックのサイズや形状、および、原画像と予測画像との残差データなどが含まれる。以下では、符号化パラメータに含まれる情報のうち、上記残差データを除く全ての情報の集合を、サイド情報と呼ぶ。
また、以下では、復号の対象となるピクチャ(フレーム)、スライス、ツリーブロック、ブロック、および、PUをそれぞれ、対象ピクチャ、対象スライス、対象ツリーブロック、対象ブロック、および、対象PUと呼ぶことにする。
なお、ツリーブロックのサイズは、例えば64×64画素であり、PUのサイズは、例えば、64×64画素、32×32画素、16×16画素、8×8画素や4×4画素などである。しかしながら、これらのサイズは、単なる例示であり、ツリーブロックおよびPUのサイズは以上に示したサイズ以外のサイズであってもよい。
(動画像復号装置の構成)
再び、図2を参照して、動画像復号装置1の概略的構成について説明すると次のとおりである。図2は、動画像復号装置1の概略的構成について示した機能ブロック図である。
再び、図2を参照して、動画像復号装置1の概略的構成について説明すると次のとおりである。図2は、動画像復号装置1の概略的構成について示した機能ブロック図である。
図2に示すように動画像復号装置1は、復号モジュール10、CU情報復号部11、PU情報復号部12、TU情報復号部13、予測画像生成部14、逆量子化・逆変換部15、フレームメモリ16および加算器17を備えている。
[基本復号フロー]
図1は、動画像復号装置1の概略的動作を説明するフローチャートである。
図1は、動画像復号装置1の概略的動作を説明するフローチャートである。
(S1100) 復号モジュール10は、符号化データ#1からSPS、PPSなどのパラメータセット情報を復号する。
(S1200) 復号モジュール10は、符号化データ#1からスライスヘッダ(スライス情報)を復号する。
以下、復号モジュール10は、対象ピクチャに含まれる各CTBについて、S1300からS4000の処理を繰り返すことにより各CTBの復号画像を導出する。
(S1300) CU情報復号部11は、符号化データ#1から符号化ツリーユニット情報(CTU情報)を復号する。
(S1400) CU情報復号部11は、符号化データ#1から符号化ツリー情報(CT情報)を復号する。
(S1500) CU情報復号部11は、符号化データ#1から符号化ユニット情報(CU情報)を復号する。
(S1600) PU情報復号部12は、符号化データ#1から予測ユニット情報(PT情報PTI)を復号する。
(S1700) TU情報復号部13は、符号化データ#1から変換ユニット情報(TT情報TTI)を復号する。
(S2000) 予測画像生成部14は、対象CUに含まれる各PUについて、PT情報PTIに基づいて予測画像を生成する。
(S3000) 逆量子化・逆変換部15は、対象CUに含まれる各TUについて、TT情報TTIに基づいて逆量子化・逆変換処理を実行する。
(S4000) 復号モジュール10は、加算器17により、予測画像生成部14より供給される予測画像Predと、逆量子化・逆変換部15より供給される予測残差Dとを加算することによって、対象CUについての復号画像Pを生成する。
(S5000) 復号モジュール10は、復号画像Pにデブロッキングフィルタやサンプル適応フィルタ(SAO)などのループフィルタをかける。
以下、各モジュールの概略動作を説明する。
[復号モジュール]
復号モジュール10は、バイナリからシンタックス値を復号する復号処理を行う。復号モジュール10は、より具体的には、供給元から供給される符号化データおよびシンタックス種別に基づいて、CABACおよびCAVLC等のエントロピー符号化方式により符号化されているシンタックス値を復号し、復号したシンタックス値を供給元に返す。
[復号モジュール]
復号モジュール10は、バイナリからシンタックス値を復号する復号処理を行う。復号モジュール10は、より具体的には、供給元から供給される符号化データおよびシンタックス種別に基づいて、CABACおよびCAVLC等のエントロピー符号化方式により符号化されているシンタックス値を復号し、復号したシンタックス値を供給元に返す。
以下に示す例では、符号化データおよびシンタックス種別の供給元は、CU情報復号部11、PU情報復号部12、およびTU情報復号部13である。
[CU情報復号部]
CU情報復号部11は、復号モジュール10を用いて、動画像符号化装置2から入力された1フレーム分の符号化データ#1について、ツリーブロックおよびCUレベルでの復号処理を行う。CU情報復号部11は、具体的には、以下の手順により符号化データ#1から、CTU情報、CT情報、CU情報、PT情報PTI、TT情報TTIを復号する。
CU情報復号部11は、復号モジュール10を用いて、動画像符号化装置2から入力された1フレーム分の符号化データ#1について、ツリーブロックおよびCUレベルでの復号処理を行う。CU情報復号部11は、具体的には、以下の手順により符号化データ#1から、CTU情報、CT情報、CU情報、PT情報PTI、TT情報TTIを復号する。
まず、CU情報復号部11は、符号化データ#1に含まれる各種ヘッダを参照して、符号化データ#1を、スライス、ツリーブロックに順次分離する。
ここで、各種ヘッダには、(1)対象ピクチャのスライスへの分割方法についての情報、および(2)対象スライスに属するツリーブロックのサイズ、形状および対象スライス内での位置についての情報が含まれる。
そして、CU情報復号部11は、CT情報として、ツリーブロックヘッダCTUHに含まれるツリーブロック分割情報SP_CTUを復号し、対象ツリーブロックを、CUに分割する。次に、CU情報復号部11は、分割により得られたCUに対応する符号化単位情報(以下、CU情報と称する)を取得する。CU情報復号部11は、ツリーブロックに含まれる各CUを順に対象CUとして、対象CUに対応するCU情報の復号処理を実行する。
CU情報復号部11は、対象CUについて得られる変換ツリーに関するTT情報TTI、および、対象CUについて得られる予測ツリーに関するPT情報PTIを逆多重化する。 なお、TT情報TTIには、上述のとおり、変換ツリーに含まれるTUに対応するTU情報TUIが含まれる。また、PT情報PTIには、上述のとおり、対象予測ツリーに含まれるPUに対応するPU情報PUIが含まれる。
CU情報復号部11は、対象CUについて得られたPT情報PTIをPU情報復号部12に供給する。また、CU情報復号部11は、対象CUについて得られたTT情報TTIをTU情報復号部13に供給する。
より詳細には、CU情報復号部11は、図5に示すように以下の動作を行う。図5は、発明の一実施形態に係るCU情報復号部11(CTU情報復号S1300、CT情報復号S1400)の概略的動作を説明するフローチャートである。
図9は、本発明の一実施形態に係るCU情報のシンタックス表の構成例を示す図である。
(S1311) CU情報復号部11は、符号化データ#1からCTU情報を復号し、再帰的に分割される符号化ツリーCTを管理するための変数を初期化する。具体的には、下記式のように、符号化ツリーの階層を示すCT階層(CT深度、CU階層、CU深度)cqtDepthに0を設定し、符号化ユニットサイズであるCUサイズ(ここでは対数CUサイズlog2CbSize=変換ツリーブロックのサイズ)として符号化ツリーブロックのサイズであるCTBサイズCtbLog2SizeY(CtbLog2Size)を設定する。
cqtDepth = 0
log2CbSize = CtbLog2SizeY
なお、CT階層(CT深度)cqtDepthは最上位階層で0とし、下位層が深くなるにつれて1つづつ大きくなるものとするが、これに限らない。上記では、CUサイズ及びCTBサイズを2の指数乗(4, 8, 16, 32, 64, 128, 256, …など)に限定することで、これらブロックのサイズを2を底とする対数で扱っているが、これに限らない。なお、ブロックサイズが4, 8, 16, 32, 64, 128, 256の場合、各々2, 3, 4, 5, 6, 7, 8が対数値となる。
log2CbSize = CtbLog2SizeY
なお、CT階層(CT深度)cqtDepthは最上位階層で0とし、下位層が深くなるにつれて1つづつ大きくなるものとするが、これに限らない。上記では、CUサイズ及びCTBサイズを2の指数乗(4, 8, 16, 32, 64, 128, 256, …など)に限定することで、これらブロックのサイズを2を底とする対数で扱っているが、これに限らない。なお、ブロックサイズが4, 8, 16, 32, 64, 128, 256の場合、各々2, 3, 4, 5, 6, 7, 8が対数値となる。
以下、CU情報復号部11は再帰的に、符号化ツリーTU(coding_quadtree)を復号する(S1400)。 CU情報復号部11は、最上位(ルート)の符号化ツリーcoding_quadtree( xCtb, yCtb, CtbLog2SizeY, 0 )を復号する(SYN1400)。なお、xCtb, yCtbはCTBの左上座標、CtbLog2SizeYはCTBのブロックサイズ(例えば64, 128, 256)である。
(S1411) CU情報復号部11は、対数CUサイズlog2CbSizeが所定の最小CUサイズMinCbLog2SizeY(最小変換ブロックサイズ)より大きいか否かを判定する(SYN1411)。対数CUサイズlog2CbSizeがMinCbLog2SizeYより大きい場合には、S1421に遷移し、それ以外の場合S1422に遷移する。
(S1421) CU情報復号部11は、対数CUサイズlog2CbSizeがMinCbLog2SizeYより大きいと判定された場合には、SYN1421に示すシンタックス要素であるCU分割フラグ(split_cu_flag)を復号する。
(S1422) CU情報復号部11は、それ以外の場合(対数CUサイズlog2CbSizeがMinCbLog2SizeY以下)、つまり、符号化データ#1にCU分割フラグsplit_cu_flagが現れない場合には、符号化データ#1からのCU分割フラグsplit_cu_flagの復号を省略し、CU分割フラグsplit_cu_flagを0として導出する。
(S1431) CU情報復号部11は、CU分割フラグsplit_cu_flagが0以外(=1)である場合(SYN1431)には、対象符号化ツリーに含まれる1つ以上の符号化ツリーを復号する。ここでは、対数CTサイズlog2CbSize − 1、CT階層 cqtDepth + 1である位置(x0, y0)、(x1, y0)、(x0, y1)、(x1, y1)の4つの下位の符号化ツリーCTを復号する。CU情報復号部11は、下位の符号化ツリーCTにおいても、S1411から開始されるCT復号処理S1400を継続する。
coding_quadtree( x0, y0, log2CbSize − 1, cqtDepth + 1 ) (SYN1441A)
coding_quadtree( x1, y0, log2CbSize − 1, cqtDepth + 1 ) (SYN1441B)
coding_quadtree( x0, y1, log2CbSize − 1, cqtDepth + 1 ) (SYN1441C)
coding_quadtree( x1, y1, log2CbSize − 1, cqtDepth + 1 ) (SYN1441D)
ここで、x0, y0は、対象符号化ツリーの左上座標、x1、y1は、以下の式のように、CT座標に、対象CTサイズ(1<< log2CbSize)の1/2を加えて導出される座標である。
coding_quadtree( x1, y0, log2CbSize − 1, cqtDepth + 1 ) (SYN1441B)
coding_quadtree( x0, y1, log2CbSize − 1, cqtDepth + 1 ) (SYN1441C)
coding_quadtree( x1, y1, log2CbSize − 1, cqtDepth + 1 ) (SYN1441D)
ここで、x0, y0は、対象符号化ツリーの左上座標、x1、y1は、以下の式のように、CT座標に、対象CTサイズ(1<< log2CbSize)の1/2を加えて導出される座標である。
x1 = x0 + ( 1<<( log2CbSize − 1 ) )
y1 = y0 + ( 1<<( log2CbSize − 1 ) )
なお、<<は左シフトを示す。1<<Nは2Nと同値である(以下同様)。同様に以下>>は右シフトを示す。
y1 = y0 + ( 1<<( log2CbSize − 1 ) )
なお、<<は左シフトを示す。1<<Nは2Nと同値である(以下同様)。同様に以下>>は右シフトを示す。
それ以外の場合(CU分割フラグsplit_cu_flagが0の場合)には、符号化ユニットを復号するためS1500に遷移する。
(S1441) 上述のように、再帰的に符号化ツリーcoding_quadtreeを復号する前に、以下の式により、符号化ツリーの階層を示すCT階層cqtDepthに1を加算し、符号化ユニットサイズである対数CUサイズlog2CbSizeを1だけ減算(符号化ユニットサイズを1/2)して更新する。
cqtDepth=cqtDepth+1
log2CbSize=log2CbSize−1
(S1500)CU情報復号部11は、符号化ユニットCUcoding_unit( x0, y0, log2CbSize )を復号する(SYN1450)。ここで、x0, y0は、符号化ユニットの座標である。符号化ツリーのサイズであるlog2CbSizeは、ここでは符号化ユニットのサイズに等しい。
log2CbSize=log2CbSize−1
(S1500)CU情報復号部11は、符号化ユニットCUcoding_unit( x0, y0, log2CbSize )を復号する(SYN1450)。ここで、x0, y0は、符号化ユニットの座標である。符号化ツリーのサイズであるlog2CbSizeは、ここでは符号化ユニットのサイズに等しい。
[PU情報復号部]
PU情報復号部12は、復号モジュール10を用いて、CU情報復号部11から供給されるPT情報PTIについて、PUレベルでの復号処理を行う。PU情報復号部12は、具体的には、以下の手順によりPT情報PTIを復号する。
PU情報復号部12は、復号モジュール10を用いて、CU情報復号部11から供給されるPT情報PTIについて、PUレベルでの復号処理を行う。PU情報復号部12は、具体的には、以下の手順によりPT情報PTIを復号する。
PU情報復号部12は、PU分割タイプ情報Part_typeを参照して、対象予測ツリーにおけるPU分割タイプを決定する。続いて、PU情報復号部12は、対象予測ツリーに含まれる各PUを順に対象PUとして、対象PUに対応するPU情報の復号処理を実行する。
すなわち、PU情報復号部12は、対象PUに対応するPU情報から、予測画像の生成に用いられる各パラメータの復号処理を行う。
PU情報復号部12は、対象PUについて復号したPU情報を、予測画像生成部14に供給する。
より詳細には、CU情報復号部11及びPU情報復号部12は、図6に示すように以下の動作を行う。図6は、S1600に示されるPU情報復号の概略的動作を説明するフローチャートである。
図10は、本発明の一実施形態に係るCU情報、PT情報PTI、TT情報TTIのシンタックス表の構成例を示す図である。図11は、本発明の一実施形態に係るPT情報PTIのシンタックス表の構成例を示す図である。
S1511 CU情報復号部11は、符号化データ#1からスキップフラグskip_flagを復号する。
S1512 CU情報復号部11は、スキップフラグskip_flagが0以外(=1)か否かを判定する。スキップフラグskip_flagが0以外(=1)の場合には、PU情報復号部12は、符号化データ#1からの予測タイプPred_typeであるCU予測方式情報PredModeとPU分割タイプ情報PartModeの復号を省略し、各々、インター予測、分割しない(2N×2N)を導出する。また、スキップフラグskip_flagが0以外(=1)の場合には、TU情報復号部13は、S1700で示される符号化データ#1からのTT情報TTIの復号処理を省略し、対象CUはTU分割なし、かつ、対象CUの量子化予測残差TransCoeffLevel[][]が0であると導出する。
S1611 PU情報復号部12は、符号化データ#1からCU予測方式情報PredMode(シンタックス要素pred_mode_flag)を復号する。
S1621 PU情報復号部12は、符号化データ#1からPU分割タイプ情報PartMode(シンタックス要素part_mode)を復号する。
S1631 PU情報復号部12は、PU分割タイプ情報Part_typeの示すPU分割数に応じて対象CUが含む各PU情報を符号化データ#1から復号する。
例えば、PU分割タイプが2Nx2Nの場合には、CUを1つのPUとする下記の1つのPU情報PUIを復号する。
prediction_unit( x0, y0, nCbS, nCbS ) (SYN1631A)
PU分割タイプが2NxNの場合には、CUを上下に分割する下記の2つのPU情報PUIを復号する。
PU分割タイプが2NxNの場合には、CUを上下に分割する下記の2つのPU情報PUIを復号する。
prediction_unit( x0, y0, nCbS, nCbS ) (SYN1631B)
prediction_unit( x0, y0 + ( nCbS / 2 ), nCbS, nCbS / 2 ) (SYN1631C)
PU分割タイプがNx2Nの場合には、CUを左右に分割する下記の2つのPU情報PUIを復号する。
prediction_unit( x0, y0 + ( nCbS / 2 ), nCbS, nCbS / 2 ) (SYN1631C)
PU分割タイプがNx2Nの場合には、CUを左右に分割する下記の2つのPU情報PUIを復号する。
prediction_unit( x0, y0, nCbS, nCbS ) (SYN1631D)
prediction_unit( x0 + ( nCbS / 2 ), y0, nCbS / 2, nCbS ) (SYN1631E)
PU分割タイプがNxNの場合には、CUを四等分する下記の4つのPU情報PUIを復号する。
prediction_unit( x0 + ( nCbS / 2 ), y0, nCbS / 2, nCbS ) (SYN1631E)
PU分割タイプがNxNの場合には、CUを四等分する下記の4つのPU情報PUIを復号する。
prediction_unit( x0, y0, nCbS, nCbS ) (SYN1631F)
prediction_unit( x0 + ( nCbS / 2 ), y0, nCbS / 2, nCbS ) (SYN1631G)
prediction_unit( x0, y0 + ( nCbS / 2 ), nCbS, nCbS / 2 ) (SYN1631H)
prediction_unit( x0 + ( nCbS / 2 ), y0 + ( nCbS / 2 ), nCbS / 2, nCbS / 2 ) (SYN1631I)
S1632 スキップフラグが1の場合は、PU分割タイプを2Nx2Nとし、1つのPU情報PUIを復号する。
prediction_unit( x0 + ( nCbS / 2 ), y0, nCbS / 2, nCbS ) (SYN1631G)
prediction_unit( x0, y0 + ( nCbS / 2 ), nCbS, nCbS / 2 ) (SYN1631H)
prediction_unit( x0 + ( nCbS / 2 ), y0 + ( nCbS / 2 ), nCbS / 2, nCbS / 2 ) (SYN1631I)
S1632 スキップフラグが1の場合は、PU分割タイプを2Nx2Nとし、1つのPU情報PUIを復号する。
prediction_unit( x0, y0, nCbS, nCbS ) (SYN1631S)
S1700 発明の一実施形態に係るCU情報復号部11(CU情報復号S1500)、PU情報復号部12(PU情報復号S1600)、TU情報復号部13(TT情報復号S1700)の概略的動作を説明するフローチャートである。
S1700 発明の一実施形態に係るCU情報復号部11(CU情報復号S1500)、PU情報復号部12(PU情報復号S1600)、TU情報復号部13(TT情報復号S1700)の概略的動作を説明するフローチャートである。
[TU情報復号部]
TU情報復号部13は、復号モジュール10を用いて、CU情報復号部11から供給されるTT情報TTIについて、TUレベルでの復号処理を行う。TU情報復号部13は、具体的には、以下の手順によりTT情報TTIを復号する。
TU情報復号部13は、復号モジュール10を用いて、CU情報復号部11から供給されるTT情報TTIについて、TUレベルでの復号処理を行う。TU情報復号部13は、具体的には、以下の手順によりTT情報TTIを復号する。
TU情報復号部13は、TT分割情報SP_TUを参照して、対象変換ツリーをノードまたはTUに分割する。なお、TU情報復号部13は、対象ノードについて、さらに分割を行うことが指定されていれば、再帰的にTUの分割処理を行う。
分割処理が終了すると、TU情報復号部13は、対象予測ツリーに含まれる各TUを順に対象TUとして、対象TUに対応するTU情報の復号処理を実行する。
すなわち、TU情報復号部13は、対象TUに対応するTU情報から、変換係数の復元に用いられる各パラメータの復号処理を行う。
TU情報復号部13は、対象TUについて復号したTU情報を、逆量子化・逆変換部15に供給する。
より詳細には、TU情報復号部13は、図7に示すように以下の動作を行う。図7は、発明の一実施形態に係るTU情報復号部13(TT情報復号S1700)の概略的動作を説明するフローチャートである。
(S1711) TU情報復号部13は、符号化データ#1から対象CUが0以外の残差(量子化予測残差)を有するか否かを示すCU残差フラグrqt_root_cbf(SYN1711に示すシンタックス要素)を復号する。
(S1712) TU情報復号部13は、CU残差フラグrqt_root_cbfが0以外(=1)の場合(SYN1712)、TUを復号するためにS1721に遷移する。逆に、CU残差フラグrqt_root_cbfが0の場合には、対象CUのTT情報TTIを符号化データ#1から復号する処理を省略し、TT情報TTIとして、対象CUはTU分割なし、かつ、対象CUの量子化予測残差が0であるとして導出する。
(S1713) TU情報復号部13は、再帰的に分割される変換ツリーを管理するための変数を初期化する。具体的には、下記式のように、変換ツリーの階層を示すTU階層trafoDepthに0を設定し、変換ユニットサイズであるTUサイズ(ここでは対数TUサイズlog2TrafoSize)として符号化ユニットのサイズ(ここでは対数CTサイズlog2CbSize)を設定する。
trafoDepth = 0
log2TrafoSize = log2CbSize
続いて、最上位(ルート)の変換ツリーtransform_tree( x0, y0, x0, y0, log2CbSize, 0, 0 )を復号する(SYN1720)。ここで、x0, y0は、対象CUの座標である。
log2TrafoSize = log2CbSize
続いて、最上位(ルート)の変換ツリーtransform_tree( x0, y0, x0, y0, log2CbSize, 0, 0 )を復号する(SYN1720)。ここで、x0, y0は、対象CUの座標である。
以下、TU情報復号部13は再帰的に、変換ツリーTU(transform_tree)を復号する。
(S1720)。変換ツリーTUは、再帰的な分割により得られるリーフノード(変換ブロック)のサイズが所定のサイズになるように分割される。つまり、変換の最大サイズMaxTbLog2SizeY以下、最小サイズMinTbLog2SizeY以上になるように分割する。例えば最大サイズMaxTbLog2SizeYは64×64を示す6、最小サイズMinTbLog2SizeYは4×4を示す2などが適当である。変換ツリーTUが最大サイズMaxTbLog2SizeYより大きい場合には変換ツリーを分割しないと、変換ブロックが最大サイズMaxTbLog2SizeY以下にならないため、必ず分割する。また、変換ツリーTUが最小サイズMinTbLog2SizeYの場合には分割すると変換ブロックが最小サイズMinTbLog2SizeY未満となるので分割しない。また、再帰的な階層が深くなりすぎないように、対象TUの階層trafoDepthとして最大TU階層(MaxTrafoDepth)以下となるように、制限することが適当である。
(S1721) TU情報復号部13に含まれるTU分割フラグ復号部は、対象TUサイズ(例えば対数TUサイズlog2TrafoSize)が、所定の変換サイズの範囲(ここではMaxTbLog2SizeY以下、MinTbLog2SizeYより大きい)にある、か、対象TUの階層trafoDepthが所定の階層MaxTrafoDepth未満の場合には、TU分割フラグ(split_transform_flag)を復号する。より具体的には、対数TUサイズlog2TrafoSize <=最大TUサイズMaxTbLog2SizeY かつ 対数TUサイズlog2TrafoSize > 最小TUサイズMinTbLog2SizeY かつ TU階層trafoDepth<最大TU階層MaxTrafoDepth の場合には、TU分割フラグ(split_transform_flag)を復号する。
(S1721) TU情報復号部13に含まれるTU分割フラグ復号部は、対象TUサイズ(例えば対数TUサイズlog2TrafoSize)が、所定の変換サイズの範囲(ここではMaxTbLog2SizeY以下、MinTbLog2SizeYより大きい)にある、か、対象TUの階層trafoDepthが所定の階層MaxTrafoDepth未満の場合には、TU分割フラグ(split_transform_flag)を復号する。より具体的には、対数TUサイズlog2TrafoSize <=最大TUサイズMaxTbLog2SizeY かつ 対数TUサイズlog2TrafoSize > 最小TUサイズMinTbLog2SizeY かつ TU階層trafoDepth<最大TU階層MaxTrafoDepth の場合には、TU分割フラグ(split_transform_flag)を復号する。
(S1731) TU情報復号部13に含まれるTU分割フラグ復号部は、S1721の条件に従って、TU分割フラグsplit_transform_flagを復号する。
(S1732) TU情報復号部13に含まれるTU分割フラグ復号部は、それ以外の場合、つまり、符号化データ#1にsplit_transform_flagが現れない場合には、符号化データ#1からのTU分割フラグsplit_transform_flagの復号を省略し、対数TUサイズlog2TrafoSizeが最大TUサイズMaxTbLog2SizeYより大きい場合には、TU分割フラグsplit_transform_flagを分割する(=1)として導出し、それ以外の場合(対数TUサイズlog2TrafoSizeが最小TUサイズMaxTbLog2SizeYと等しい、または、TU階層trafoDepthが最大TU階層MaxTrafoDepthと等しい)には、TU分割フラグsplit_transform_flagを分割しない(=0)として導出する。
(S1741) TU情報復号部13に含まれるTU分割フラグ復号部は、TU分割フラグsplit_transform_flagが分割することを示す0以外(=1)である場合には、対象符号化ユニットCUに含まれる変換ツリーを復号する。ここでは、対数CTサイズlog2CbSize − 1、TU階層 trafoDepth + 1 である位置(x0, y0)、(x1, y0)、(x0, y1)、(x1, y1)の4つの下位の変換ツリーTTを復号する。TU情報復号部13は、さらに下位の符号化ツリーTTにおいてもS1711から開始されるTT情報復号処理S1700を継続する。
transform_tree( x0, y0, x0, y0, log2TrafoSize−1, trafoDepth+1, 0 ) (SYN1741A)
transform_tree( x1, y0, x0, y0, log2TrafoSize−1, trafoDepth+1, 1 ) (SYN1741B)
transform_tree( x0, y1, x0, y0, log2TrafoSize−1, trafoDepth+1, 2 ) (SYN1741C)
transform_tree( x1, y1, x0, y0, log2TrafoSize−1, trafoDepth+1, 3 ) (SYN1741D)
ここで、x0, y0は、対象変換ツリーの左上座標、x1、y1は、以下の式のように、変換ツリー座標(x0, y0)に、対象TUサイズ(1<<log2TrafoSize)の1/2を加えて導出される座標である。
transform_tree( x1, y0, x0, y0, log2TrafoSize−1, trafoDepth+1, 1 ) (SYN1741B)
transform_tree( x0, y1, x0, y0, log2TrafoSize−1, trafoDepth+1, 2 ) (SYN1741C)
transform_tree( x1, y1, x0, y0, log2TrafoSize−1, trafoDepth+1, 3 ) (SYN1741D)
ここで、x0, y0は、対象変換ツリーの左上座標、x1、y1は、以下の式のように、変換ツリー座標(x0, y0)に、対象TUサイズ(1<<log2TrafoSize)の1/2を加えて導出される座標である。
x1 = x0 + ( 1<<( log2TrafoSize − 1 ) )
y1 = y0 + ( 1<<( log2TrafoSize − 1 ) )
それ以外の場合(TU分割フラグsplit_transform_flagが0の場合)には、変換ユニットを復号するためS1751に遷移する。
y1 = y0 + ( 1<<( log2TrafoSize − 1 ) )
それ以外の場合(TU分割フラグsplit_transform_flagが0の場合)には、変換ユニットを復号するためS1751に遷移する。
上述のように、再帰的に変換ツリーtransform_treeを復号する前に、以下の式により、変換ツリーの階層を示すTU階層trafoDepthに1を加算し、対象TUサイズである対数CTサイズlog2TrafoSizeを1だけ減算して更新する。
trafoDepth=trafoDepth+1
log2TrafoSize=log2TrafoSize−1
(S1751)TU情報復号部13は、TU分割フラグsplit_transform_flagが0の場合に、対象TUに残差が含まれているかを示すTU残差フラグを復号する。ここでは、TU残差フラグとして、対象TUの輝度成分において残差が含まれているかを示す輝度残差フラグcbf_lumaを用いるがこれに限らない。
log2TrafoSize=log2TrafoSize−1
(S1751)TU情報復号部13は、TU分割フラグsplit_transform_flagが0の場合に、対象TUに残差が含まれているかを示すTU残差フラグを復号する。ここでは、TU残差フラグとして、対象TUの輝度成分において残差が含まれているかを示す輝度残差フラグcbf_lumaを用いるがこれに限らない。
(S1760)TU情報復号部13は、TU分割フラグsplit_transform_flagが0の場合に、SYN1760に示す変換ユニットTUtransform_unit( x0, y0, xBase, yBase, log2TrafoSize, trafoDepth, blkIdx )を復号する。
図8は、発明の一実施形態に係るTU情報復号部13(TU情報復号S1600)の概略的動作を説明するフローチャートである。
図12は、本発明の一実施形態に係るTT情報TTIのシンタックス表の構成例を示す図である。図13は、本発明の一実施形態に係るTU情報のシンタックス表の構成例を示す図である。
(S1761)TU情報復号部13は、TUに残差が含まれているか(TU残差フラグが0以外か否か)を判定する。なお、ここ(SYN1761)では、TUに残差が含まれているかを、以下の式で導出されるcbfLuma || cbfChromaにより判定しているが、これに限らない。つまり、TU残差フラグとしては、対象TUの輝度成分に残差が含まれているかを示す輝度残差フラグcbf_lumaを用いても良い。
cbfLuma = cbf_luma[ x0 ][ y0 ][ trafoDepth ]
cbfChroma = cbf_cb[ xC ][ yC ][ cbfDepthC ] | | cbf_cr[ xC ][ yC ][ cbfDepthC ])
なお、cbf_cb、cbf_crは、符号化データ#1から復号されるフラグであり、対象TUの色差成分Cb、Crに残差が含まれているか、||は、論理和を示す。ここでは、TUの輝度位置(x0、y0)、色差位置(xC、yC)、TU深度trafoDepth、cfbDepthCのシンタックス要素cbf_luma、cbf_cb、cbf_crから輝度のTU残差フラグcbfLuma、色差のTU残差フラグcbfChromaを導出し、その和(論理和)を対象TUのTU残差フラグとして導出している。
cbfChroma = cbf_cb[ xC ][ yC ][ cbfDepthC ] | | cbf_cr[ xC ][ yC ][ cbfDepthC ])
なお、cbf_cb、cbf_crは、符号化データ#1から復号されるフラグであり、対象TUの色差成分Cb、Crに残差が含まれているか、||は、論理和を示す。ここでは、TUの輝度位置(x0、y0)、色差位置(xC、yC)、TU深度trafoDepth、cfbDepthCのシンタックス要素cbf_luma、cbf_cb、cbf_crから輝度のTU残差フラグcbfLuma、色差のTU残差フラグcbfChromaを導出し、その和(論理和)を対象TUのTU残差フラグとして導出している。
(S1771)TU情報復号部13は、TUに残差が含まれている場合(TU残差フラグが0以外の場合には、QP更新情報(量子化補正値)を復号する。ここで、QP更新情報は、量子化パラメータQPの予測値である量子化パラメータ予測値qPpredからの差分値を示す値である。ここでは、差分値は符号化データのシンタックス要素として絶対値cu_qp_delta_absと符号cu_qp_delta_sign_flagから復号するが、これに限らない。
(S1781)TU情報復号部13は、TU残差フラグ(ここではcbfLuma)が0以外か否かを判定する。
(S1800)TU情報復号部13は、TU残差フラグ(ここではcbfLuma)が0以外の場合には、量子化予測残差を復号する。なお、TU情報復号部13は、量子化予測残差として複数の色成分を順に復号しても良い。図の例では、TU情報復号部13は、TU残差フラグ(ここではcbfLuma)が0以外の場合には、輝度量子化予測残差(第1色成分)residual_coding( x0, y0, log2TrafoSize−rru_flag, 0 )、第2色成分残差フラグcbf_cbが0以外の場合にはresidual_coding( x0, y0, log2TrafoSize−rru_flag, 0 )、、第3色成分量子化予測残差residual_coding( x0, y0, log2TrafoSizeC−rru_flag, 2 )を復号する。
[予測画像生成部]
予測画像生成部14は、対象CUに含まれる各PUについて、PT情報PTIに基づいて予測画像を生成する。具体的には、予測画像生成部14は、対象予測ツリーに含まれる各対象PUについて、対象PUに対応するPU情報PUIに含まれるパラメータに従ってイントラ予測またはインター予測を行うことにより、復号済み画像である局所復号画像P’から予測画像Predを生成する。予測画像生成部14は、生成した予測画像Predを加算器17に供給する。
予測画像生成部14は、対象CUに含まれる各PUについて、PT情報PTIに基づいて予測画像を生成する。具体的には、予測画像生成部14は、対象予測ツリーに含まれる各対象PUについて、対象PUに対応するPU情報PUIに含まれるパラメータに従ってイントラ予測またはインター予測を行うことにより、復号済み画像である局所復号画像P’から予測画像Predを生成する。予測画像生成部14は、生成した予測画像Predを加算器17に供給する。
なお、予測画像生成部14が、動き補償予測パラメータ(動きベクトル、参照画像インデックス、インター予測フラグ)に基づいて対象CUに含まれるPUの予測画像を生成する手法について説明すると以下のとおりである。
インター予測フラグが単予測を示す場合、予測画像生成部14は、参照画像インデックスの示す参照画像の動きベクトルが示す場所に位置する復号画像に相当する予測画像を生成する。
一方、インター予測フラグが双予測を示す場合には、予測画像生成部14は、2組の参照画像インデックスと動きベクトルとの組み合わせのそれぞれについて動き補償により予測画像を生成し、平均を算出することで、または、各予測画像を対象ピクチャと各参照画像との表示時間間隔に基づいて重み付け加算することで、最終的な予測画像を生成する。
[逆量子化・逆変換部]
逆量子化・逆変換部15は、対象CUに含まれる各TUについて、TT情報TTIに基づいて逆量子化・逆変換処理を実行する。具体的には、逆量子化・逆変換部15は、対象変換ツリーに含まれる各対象TUについて、対象TUに対応するTU情報TUIに含まれる量子化予測残差を逆量子化および逆直交変換することによって、画素毎の予測残差Dを復元する。なお、ここで直交変換とは、画素領域から周波数領域への直交変換のことを指す。したがって、逆直交変換は、周波数領域から画素領域への変換である。また、逆直交変換の例としては、逆DCT変換(Inverse Discrete Cosine Transform)、および逆DST変換(Inverse Discrete Sine Transform)等が挙げられる。逆量子化・逆変換部15は、復元した予測残差Dを加算器17に供給する。
逆量子化・逆変換部15は、対象CUに含まれる各TUについて、TT情報TTIに基づいて逆量子化・逆変換処理を実行する。具体的には、逆量子化・逆変換部15は、対象変換ツリーに含まれる各対象TUについて、対象TUに対応するTU情報TUIに含まれる量子化予測残差を逆量子化および逆直交変換することによって、画素毎の予測残差Dを復元する。なお、ここで直交変換とは、画素領域から周波数領域への直交変換のことを指す。したがって、逆直交変換は、周波数領域から画素領域への変換である。また、逆直交変換の例としては、逆DCT変換(Inverse Discrete Cosine Transform)、および逆DST変換(Inverse Discrete Sine Transform)等が挙げられる。逆量子化・逆変換部15は、復元した予測残差Dを加算器17に供給する。
[フレームメモリ]
フレームメモリ16には、復号された復号画像Pが、当該復号画像Pの復号に用いられたパラメータと共に、順次記録される。フレームメモリ16には、対象ツリーブロックを復号する時点において、当該対象ツリーブロックよりも先に復号された全てのツリーブロック(例えば、ラスタスキャン順で先行する全てのツリーブロック)に対応する復号画像が記録されている。フレームメモリ16に記録される復号パラメータの例としては、CU予測方式情報(PredMode)などが挙げられる。
フレームメモリ16には、復号された復号画像Pが、当該復号画像Pの復号に用いられたパラメータと共に、順次記録される。フレームメモリ16には、対象ツリーブロックを復号する時点において、当該対象ツリーブロックよりも先に復号された全てのツリーブロック(例えば、ラスタスキャン順で先行する全てのツリーブロック)に対応する復号画像が記録されている。フレームメモリ16に記録される復号パラメータの例としては、CU予測方式情報(PredMode)などが挙げられる。
[加算器]
加算器17は、予測画像生成部14より供給される予測画像Predと、逆量子化・逆変換部15より供給される予測残差Dとを加算することによって、対象CUについての復号画像Pを生成する。なお、加算器17は、さらに、後述のように、復号画像Pを拡大する処理を実行しても良い。
加算器17は、予測画像生成部14より供給される予測画像Predと、逆量子化・逆変換部15より供給される予測残差Dとを加算することによって、対象CUについての復号画像Pを生成する。なお、加算器17は、さらに、後述のように、復号画像Pを拡大する処理を実行しても良い。
なお、動画像復号装置1において、画像内の全てのツリーブロックに対して、ツリーブロック単位の復号画像生成処理が終わった時点で、動画像復号装置1に入力された1フレーム分の符号化データ#1に対応する復号画像#2が外部に出力される。
<本発明の構成>
本発明の動画像復号装置1は、ピクチャを符号化ツリーブロック単位に分割して復号する画像復号装置で、符号化ツリーブロックを、ルートの符号化ツリーとして再帰的に分割する符号化ツリー分割部(CU情報復号部11)を備え、符号化ツリーを分割するか否かを示す、CU分割フラグを復号するCU分割フラグ復号部と、符号化ツリー以下の残差を第1のモードで復号するか、第1のモードよりとは異なる第2のモードで復号するかを示す、残差モードRRU(rru_flag、解像度変換モード)を復号する残差モード復号部を備える。
本発明の動画像復号装置1は、ピクチャを符号化ツリーブロック単位に分割して復号する画像復号装置で、符号化ツリーブロックを、ルートの符号化ツリーとして再帰的に分割する符号化ツリー分割部(CU情報復号部11)を備え、符号化ツリーを分割するか否かを示す、CU分割フラグを復号するCU分割フラグ復号部と、符号化ツリー以下の残差を第1のモードで復号するか、第1のモードよりとは異なる第2のモードで復号するかを示す、残差モードRRU(rru_flag、解像度変換モード)を復号する残差モード復号部を備える。
以下、残差モードrru_flag=0を第1のモード、残差モードrru_flag=1を第2のモードを例に説明するが、値の割り当てはこれに限らない。また、残差モードは例えば通常の解像度(第1のモード)と、縮小解像度(第2のモード)の2つに限定されず、例えば、第2のモードとして、水平縮小解像度(rru_mode=1)、垂直縮小解像度(rru_mode=2)、水平垂直縮小解像度(rru_mode=3)を用いても良い。
以下、本発明の動画像復号装置1に関し、P1:残差モードに応じたTU情報復号部13のTU情報復号、P2:残差モードに応じたブロック画素値復号、P3:残差モードに応じた量子化制御、P4:残差モードrru_flagの復号、P5:残差モードによるフラグ復号制限、P6:スライスレベルで解像度変更(残差モード変更)の順に説明する。
<<P1:残差モードに応じたTU情報復号>>
既に、図7を用いて説明した通り(S1751、SN1751)、TU情報復号部13は、TU分割フラグsplit_transform_flagが0の場合に、TU残差フラグcbf_lumaを復号する。
既に、図7を用いて説明した通り(S1751、SN1751)、TU情報復号部13は、TU分割フラグsplit_transform_flagが0の場合に、TU残差フラグcbf_lumaを復号する。
(S1760)TU情報復号部13は、変換ユニットTUtransform_unit( x0, y0, xBase, yBase, log2TrafoSize, trafoDepth, blkIdx )を復号し、量子化予測残差をえる。図15は、本発明の一実施形態に係る量子化予測残差情報のシンタックス表の構成例を示す図である。
図16は、発明の一実施形態に係るTU情報復号部13(TU情報復号1760A)の概略的動作を説明するフローチャートである。S1761、S1771、S1781は、TU情報復号S1760で既に説明した通りなので説明を省略する。TU情報復号1760AではS1800の代わりにS1800Aの処理を行う。
(S1800A) TU情報復号部13は、TU残差フラグ(ここではcbfLuma)が0以外の場合には、対象領域(対象TU)の量子化予測残差を復号する。本実施形態では、残差モードrru_flagが第1のモード(=0)の場合には、対象TUに対応する領域のサイズ(TUサイズ)の量子化予測残差を復号し、残差モードrru_flagが第2のモード(!=0)の場合には、TUサイズの半分のサイズの量子化予測残差を復号する。例えば、TUサイズが32×32の場合には、残差モードrru_flagが第1のモード(=0)の場合には、32×32の残差を復号し、残差モードrru_flagが第1のモード(=0)の場合には、16×16の残差を復号する。TUサイズが対数量子化サイズlog2TrafoSizeである場合には、(1<< log2TrafoSize)×(1<< log2TrafoSize)のサイズの量子化予測残差を復号する。なお、量子化サイズは変換のサイズ(逆変換のサイズ)に対応する。
なお、残差モードrru_flagが第2のモード(!=0)の場合に、水平方向のみ量子化予測残差のサイズを半分にすることも可能であり、その場合、残差モードrru_flagが第2のモード(!=0)の場合に、(1<< (log2TrafoSize−1))×(1<< log2TrafoSize)のサイズの量子化予測残差を復号する。
なお、残差モードrru_flagが第2のモード(!=0)の場合に、垂直方向のみ量子化予測残差のサイズを半分にすることも可能であり、その場合、残差モードrru_flagが第2のモード(!=0)の場合に、(1<< log2TrafoSize)×(1<< (log2TrafoSize−1))のサイズの量子化予測残差を復号する。
実際に復号する量子化予測残差ブロックサイズについては対数サイズとしてlog2TrafoSize−rru_flagで導出しても良い。つまり、残差モードrru_flagが第1のモード(=0)の場合、対数量子化予測残差ブロックのサイズは対数TUサイズlog2TrafoSize、残差モードrru_flagが第2のモード(!=0)の場合、対数量子化予測残差ブロックのサイズは対数TUサイズlog2TrafoSize−1とする。
図16のフローチャートを用いて、S1800Aの動作の詳細を説明すると以下になる。
(S1811)TU情報復号部13は、残差モードrru_flagが第1のモード(=0)であるかを判定する。
(S1821)TU情報復号部13は、残差モードrru_flagが第1のモード(=0)の場合、量子化予測残差ブロックのサイズにTUサイズ(対数量子化予測残差ブロックサイズをlog2TrafoSize)とする。量子化予測残差ブロックサイズ(=逆変換サイズ)は、(1<<log2TrafoSize)×(1<<log2TrafoSize)。
(S1822)TU情報復号部13は、残差モードrru_flagが第2のモード(!=0)の場合、量子化予測残差ブロックのサイズにTUサイズの1/2とする(対数量子化予測残差ブロックサイズをlog2TrafoSize-rru_flag= log2TrafoSize-1)とする。量子化予測残差ブロックサイズ(=逆変換サイズ)は、(1<<(log2TrafoSize-1))×(1<<(log2TrafoSize-1))。
(S1831)TU情報復号部13は、量子化予測残差ブロックのサイズ(対数量子化予測残差ブロックサイズ)の残差を導出する。
なお、上記のフローチャートでは、輝度について扱っているが別の色成分についても同様の処理をすれば良い。すなわち、色差のTUサイズがlog2TrafoSizeCの場合、残差モードrru_flagが第1のモード(==0)の場合には、log2TrafoSizeCのサイズの量子化予測残差を復号し、残差モードrru_flagが第2のモード(!=0)の場合には、log2TrafoSizeC−1のサイズの量子化予測残差を復号する。以上の構成では、実際の対象TUサイズ(変換ブロックサイズ)よりも小さい(例えば対象TUサイズの1/2の残差情報)だけの量子化予測残差を符号化データから復号することにより、対象TUサイズの予測残差Dを導出することができ、残差情報の符号量を低減させる効果を奏する。また、残差情報の復号処理を簡略化する効果を奏する。
縮小されたブロックの量子化予測残差を復号して処理する場合には、どこかで拡大することが適当である、以下、予測残差画像の段階で拡大する方法(P2A)と、復号画像の段階で復号する方法(P2B)について説明する。但し、拡大する方法は以下の2つによらず、例えば、復号画像のブロックを保存するフレームバッファに格納する時点で拡大しても良いし、フレームバッファから予測や再生などにおいて読み出す際に拡大しても構わない。
<<P2:残差モードに応じたブロック画素値復号の構成>>
<P2A:残差モードに応じた予測残差D拡大>
動画像復号装置1の一つの構成を説明する。
<P2A:残差モードに応じた予測残差D拡大>
動画像復号装置1の一つの構成を説明する。
図17は、発明の一実施形態に係る予測画像生成部14(予測残差生成S2000)、逆量子化・逆変換部15(逆量子化・逆変換S3000A)、加算器17(復号画像生成S4000)の概略的動作を説明するフローチャートである。
(S2000) 予測画像生成部14は、対象CUに含まれる各PUについて、PT情報PTIに基づいて予測画像を生成する。
(S3000A)
(S3011)逆量子化・逆変換部15は、対象CUに含まれる各TUについて、TT情報TTIに基づいて予測残差残差TransCoeffLevelの逆量子化を実行する。例えば、以下の式により、予測残差残差TransCoeffLevelを逆量子化予測残差d[][]に変換する。
d[ x ][ y ] = Clip3( coeffMin, coeffMax, ( ( TransCoeffLevel[ x ][ y ] * m[ x ][ y ] *levelScale[ qP%6 ] << (qP / 6 ) ) + ( 1 << ( bdShift − 1 ) ) ) >> bdShift )
ここで、coeffMin, coeffMaxは、逆量子化予測残差の最小値と最大値、Clip3(x, y, z)は、zをx以上、y以下の値に制限するクリップ関数である。m[x][y]は、スケーリングリストと呼ばれる周波数位置(x, y)毎の逆量子化の重みを示すマトリックスである。スケーリングリストm[][]は、例えば、PPSから復号しても良いし、m[x][y]として、周波数位置によらない固定値(例えば16)を用いても良い。qPは、対象ブロックの量子化パラメータ(例えば0から51)、levelScale[ qP%6 ]、bdShiftはおのおの量子化パラメータから導出される量子化スケール及び量子化シフト値である。量子化予測残差に、量子化スケールを掛けて、量子化シフト値で右シフトすることにより、整数演算により、小数点精度の量子化ステップを量子化予測残差にかけることと等価な演算を実現している。ここで、変換ブロックサイズをnTbS(=1<< log2TrafoSize)とすると、levelScale[ qP%6 ](=32*2(qP+1)/6)は、たとえば{ 40, 45, 51, 57, 64, 72 }、bdShift = BitDepthY+log2(nTbS)−5から導出すれば良い。
(S3011)逆量子化・逆変換部15は、対象CUに含まれる各TUについて、TT情報TTIに基づいて予測残差残差TransCoeffLevelの逆量子化を実行する。例えば、以下の式により、予測残差残差TransCoeffLevelを逆量子化予測残差d[][]に変換する。
d[ x ][ y ] = Clip3( coeffMin, coeffMax, ( ( TransCoeffLevel[ x ][ y ] * m[ x ][ y ] *levelScale[ qP%6 ] << (qP / 6 ) ) + ( 1 << ( bdShift − 1 ) ) ) >> bdShift )
ここで、coeffMin, coeffMaxは、逆量子化予測残差の最小値と最大値、Clip3(x, y, z)は、zをx以上、y以下の値に制限するクリップ関数である。m[x][y]は、スケーリングリストと呼ばれる周波数位置(x, y)毎の逆量子化の重みを示すマトリックスである。スケーリングリストm[][]は、例えば、PPSから復号しても良いし、m[x][y]として、周波数位置によらない固定値(例えば16)を用いても良い。qPは、対象ブロックの量子化パラメータ(例えば0から51)、levelScale[ qP%6 ]、bdShiftはおのおの量子化パラメータから導出される量子化スケール及び量子化シフト値である。量子化予測残差に、量子化スケールを掛けて、量子化シフト値で右シフトすることにより、整数演算により、小数点精度の量子化ステップを量子化予測残差にかけることと等価な演算を実現している。ここで、変換ブロックサイズをnTbS(=1<< log2TrafoSize)とすると、levelScale[ qP%6 ](=32*2(qP+1)/6)は、たとえば{ 40, 45, 51, 57, 64, 72 }、bdShift = BitDepthY+log2(nTbS)−5から導出すれば良い。
(S3021)逆量子化・逆変換部15は、逆量子化された残差をTT情報TTIに基づいて逆変換を実行し、予測残差Dを導出する。
例えば、以下の式により、逆量子化予測残差d[][]を予測残差g[ x ][ y ]に変換する。まず、逆量子化・逆変換部15は、垂直方向1次元変換により、中間値e[x][y]を導出する。
e[x][y] = Σ (transMatrix[y][j]×d[x][j])
ここで、transMatrix[][]は、変換ブロックサイズnTbS毎に定まるnTbS×nTbSの行列である。4×4変換(nTbS=4)の場合には、例えばtransMatrix[][] ={{29 55 74 84}{74 74 0 −74}{84 −29 −74 55}{55 −84 74 −29}}を用いてもよい。Σの記号は、添え字jについて、j=0.. nTbS−1までの行列transMatrix[y][j]とd[x][j]の積を加算する処理を意味する。つまり、e[x][y]は、d[x][y]の各列(column)であるd[x][j](j=0.. nTbS−1)と行列transMatrixの積から得られる列を並べて得られる。
ここで、transMatrix[][]は、変換ブロックサイズnTbS毎に定まるnTbS×nTbSの行列である。4×4変換(nTbS=4)の場合には、例えばtransMatrix[][] ={{29 55 74 84}{74 74 0 −74}{84 −29 −74 55}{55 −84 74 −29}}を用いてもよい。Σの記号は、添え字jについて、j=0.. nTbS−1までの行列transMatrix[y][j]とd[x][j]の積を加算する処理を意味する。つまり、e[x][y]は、d[x][y]の各列(column)であるd[x][j](j=0.. nTbS−1)と行列transMatrixの積から得られる列を並べて得られる。
逆量子化・逆変換部15は、中間値e[][]をクリップし、g[x][y]を導出する。
g[ x ][ y ] = Clip3( coeffMin, coeffMax, ( e[ x ][ y ] + 64 ) >> 7 )
逆量子化・逆変換部15は、水平方向1次元変換により、予測残差r[x][y]を導出する。
逆量子化・逆変換部15は、水平方向1次元変換により、予測残差r[x][y]を導出する。
r[x][y] =Σ transMatrix[x][j]×g[j][y]
上記記号Σは、添え字jについて、j=0.. nTbS−1までの行列transMatrix[x][j]とg[j][y]の積を加算する処理を意味する。つまり、r[x][y]は、g[x][y]の各行(row)であるg[j][y](j=0.. nTbS−1)と行列transMatrixの積から得られる行を並べて得られる。
上記記号Σは、添え字jについて、j=0.. nTbS−1までの行列transMatrix[x][j]とg[j][y]の積を加算する処理を意味する。つまり、r[x][y]は、g[x][y]の各行(row)であるg[j][y](j=0.. nTbS−1)と行列transMatrixの積から得られる行を並べて得られる。
(S3035)逆量子化・逆変換部15は、残差モードが第2のモードを示す場合(!=0)、逆量子化・逆変換後の予測残差DをTUサイズに拡大する(S3036)。それ以外(残差モードが第1のモードである0)の場合は、逆量子化・逆変換後の予測残差DをTUサイズに拡大しない。
例えば、逆量子化・逆変換部15は、予測残差rlPicSampleL [x][y]を以下の式により拡大する。r´[][][]は拡大後の予測残差である。
tempArray[ n ] = ( fL[ xPhase, 0 ] * rlPicSampleL[xRef−3, yPosRL ] +
fL[ xPhase, 1 ] * rlPicSampleL[xRef−2, yPosRL ] +
fL[ xPhase, 2 ] * rlPicSampleL[xRef−1, yPosRL ] +
fL[ xPhase, 3 ] * rlPicSampleL[xRef−0, yPosRL ] +
fL[ xPhase, 4 ] * rlPicSampleL[xRef+1, yPosRL ] +
fL[ xPhase, 5 ] * rlPicSampleL[xRef+2, yPosRL ] +
fL[ xPhase, 6 ] * rlPicSampleL[xRef+3, yPosRL ] +
fL[ xPhase, 7 ] * rlPicSampleL[xRef+4, yPosRL ] +offset1)>>shift1
r´ = ( fL[ yPhase, 0 ] * tempArray [0 ] +
fL[ yPhase, 1 ] * tempArray [1 ] +
fL[ yPhase, 2 ] * tempArray [2 ] +
fL[ yPhase, 3 ] * tempArray [3 ] +
fL[ yPhase, 4 ] * tempArray [4 ] +
fL[ yPhase, 5 ] * tempArray [5 ] +
fL[ yPhase, 6 ] * tempArray [6 ] +
fL[ yPhase, 7 ] * tempArray [7 ] +offset2)>>shift2
ここで、xRef, yRefRLは、参照画素の整数座標、xPhase、yPhaseは理想参照画素座標と参照画素整数座標のズレを1/16画素精度で表現したフェーズ、fL[i, j]は、フェーズがiの場合に参照画素の整数座標からの相対位置jに応じた重み、offset1、offset2はラウンド用変数で各々(1<<(shift1-1))、(1<<(shift2-1))を用いる、shift1、shift2は重みを乗算した後に元の値の範囲に正規化するためのシフト値である。上記では、分離型フィルタを用いたフィルタ処理により拡大を実現しているが、この限りではない。 例えば拡大率を2倍とする場合、上記値は、対象画素の位置を(x, y)から、xRef = x >> 1、yRefRL=y>>1、xPhase=((x×16)>>1) - xRef×16、yPhase=((y×16)>>1) - xRefRL×16により導出しても良い。
tempArray[ n ] = ( fL[ xPhase, 0 ] * rlPicSampleL[xRef−3, yPosRL ] +
fL[ xPhase, 1 ] * rlPicSampleL[xRef−2, yPosRL ] +
fL[ xPhase, 2 ] * rlPicSampleL[xRef−1, yPosRL ] +
fL[ xPhase, 3 ] * rlPicSampleL[xRef−0, yPosRL ] +
fL[ xPhase, 4 ] * rlPicSampleL[xRef+1, yPosRL ] +
fL[ xPhase, 5 ] * rlPicSampleL[xRef+2, yPosRL ] +
fL[ xPhase, 6 ] * rlPicSampleL[xRef+3, yPosRL ] +
fL[ xPhase, 7 ] * rlPicSampleL[xRef+4, yPosRL ] +offset1)>>shift1
r´ = ( fL[ yPhase, 0 ] * tempArray [0 ] +
fL[ yPhase, 1 ] * tempArray [1 ] +
fL[ yPhase, 2 ] * tempArray [2 ] +
fL[ yPhase, 3 ] * tempArray [3 ] +
fL[ yPhase, 4 ] * tempArray [4 ] +
fL[ yPhase, 5 ] * tempArray [5 ] +
fL[ yPhase, 6 ] * tempArray [6 ] +
fL[ yPhase, 7 ] * tempArray [7 ] +offset2)>>shift2
ここで、xRef, yRefRLは、参照画素の整数座標、xPhase、yPhaseは理想参照画素座標と参照画素整数座標のズレを1/16画素精度で表現したフェーズ、fL[i, j]は、フェーズがiの場合に参照画素の整数座標からの相対位置jに応じた重み、offset1、offset2はラウンド用変数で各々(1<<(shift1-1))、(1<<(shift2-1))を用いる、shift1、shift2は重みを乗算した後に元の値の範囲に正規化するためのシフト値である。上記では、分離型フィルタを用いたフィルタ処理により拡大を実現しているが、この限りではない。 例えば拡大率を2倍とする場合、上記値は、対象画素の位置を(x, y)から、xRef = x >> 1、yRefRL=y>>1、xPhase=((x×16)>>1) - xRef×16、yPhase=((y×16)>>1) - xRefRL×16により導出しても良い。
フィルタ係数fLは、例えば、2倍の拡大で発生する整数位置(フェーズ=0)及び、1/2画素ズレ位置(1/16画素精度のフェーズでは、フェース=8)に対しては、各々、以下の値を用いても良い。
fL[ 0, n] = {0, 0, 0, 64, 0, 0, 0, 0}
fL[ 8, n] = {-1, 4, -11, 40, 40, 11, 4, 1}
また、拡大率は2倍に限定されず、1.33倍、1.6倍、(2倍)、2.66倍、4倍等であっても良い。上記の拡大率は各々、量子化予測残差(逆変換)のサイズが12、10、(8)、6、4の場合に、拡大後のサイズを16に拡大する場合に相当する値である。
fL[ 0, n] = {0, 0, 0, 64, 0, 0, 0, 0}
fL[ 8, n] = {-1, 4, -11, 40, 40, 11, 4, 1}
また、拡大率は2倍に限定されず、1.33倍、1.6倍、(2倍)、2.66倍、4倍等であっても良い。上記の拡大率は各々、量子化予測残差(逆変換)のサイズが12、10、(8)、6、4の場合に、拡大後のサイズを16に拡大する場合に相当する値である。
(S4000) 復号モジュール10は、加算器17により、予測画像生成部14より供給される予測画像Predと、逆量子化・逆変換部15より供給される予測残差Dとを加算することによって、対象CUについての復号画像Pを生成する。
以上の構成では、残差モードが第2のモード(!=0)の場合には、逆量子化・逆変換部15は、変換画像を拡大する。従って、実際の対象TUサイズよりも小さい(例えば対象TUサイズの1/2の残差情報)だけを復号することにより、対象TUサイズの予測残差Dを導出することができ、残差情報の符号量を低減させる効果を奏する。また、残差情報の復号処理を簡略化する効果を奏する。
<P2B:残差モードに応じた復号画像拡大>
動画像復号装置1の一つの構成を説明する。
動画像復号装置1の一つの構成を説明する。
図18は、発明の一実施形態に係る予測画像生成部14(予測残差生成S2000)、逆量子化・逆変換部15(逆量子化・逆変換S3000A)、加算器17(復号画像生成S4000)の概略的動作を説明するフローチャートである。
(S2000) 予測画像生成部14は、対象CUに含まれる各PUについて、PT情報PTIに基づいて予測画像を生成する。
(S3000)逆量子化・逆変換部15は、S3011、S3012の処理により逆量子化・逆変換を行う。
(S3011)逆量子化・逆変換部15は、対象CUに含まれる各TUについて、TT情報TTIに基づいて逆量子化を実行する。逆量子化の詳細は既に説明済みなので省略。
(S3021)逆量子化・逆変換部15は、逆量子化された残差をTT情報TTIに基づいて逆変換を実行し、予測残差Dを導出する。逆変換の詳細は既に説明済みなので省略。
(S4000A)復号モジュール10は、復号画像Pを生成する。
(S4011)復号モジュール10は、加算器17により、予測画像生成部14より供給される予測画像Predと、逆量子化・逆変換部15より供給される予測残差Dとを加算することによって、対象CUについての復号画像Pを生成する。
(S4015)残差モードが第2のモードを示す場合(!=0)、予測画像Predと予測残差Dから復号された復号画像を拡大する(S3036)。それ以外(残差モードが第1のモードである0)の場合は、復号画像を拡大しない。
拡大の詳細は、予測残差画像を拡大するP2Aと同様である。但し、入力はrlPicSampleL [x][y]、予測残差の代わりに、復号画像になり、出力r´[][][]は拡大後の復号画像となる。
以上の構成では、残差モードが第2のモード(!=0)の場合には、復号モジュール10は、復号画像を拡大する。従って、実際の対象領域よりも小さい領域サイズの予測残差情報(例えば対象領域の1/2のサイズの予測残差情報)だけを復号することにより、対象領域の復号画像を導出することができ、残差情報の符号量を低減させる効果を奏する。また、残差情報の復号処理を簡略化する効果を奏する。
<<P3:残差モードに応じた量子化制御の構成例>>
図19は、発明の一実施形態に係る逆量子化・逆変換部15(逆量子化・逆変換S3000B)の概略的動作を説明するフローチャートである。
図19は、発明の一実施形態に係る逆量子化・逆変換部15(逆量子化・逆変換S3000B)の概略的動作を説明するフローチャートである。
(S3005)逆量子化・逆変換部15は、残差モードが第2のモードを示す場合(!=0)、量子化パラメータqPとして第2のQP値を設定する(S3007)。それ以外(残差モードが第1のモードである0)の場合は、量子化パラメータqPとして第1のQP値を設定する。
例えば、逆量子化・逆変換部15は、第1のQP値として、量子化補正値CuQpDeltaValと量子化パラメータ予測値qPpredから導出される以下の値qP1を用いる。
qP1 = qPpred + CuQpDeltaVal
なお、qP1の導出に以下の式を用いても良い。
なお、qP1の導出に以下の式を用いても良い。
qP1 = ( ( qPpred + CuQpDeltaVal + 52 + 2 * QpBdOffsetY )%( 52 + QpBdOffsetY ) ) − QpBdOffsetY
なおQpBdOffsetYは画素値のビットデプス用(例えば8, 10, 12)毎に量子化を調整するための補正値である。
なおQpBdOffsetYは画素値のビットデプス用(例えば8, 10, 12)毎に量子化を調整するための補正値である。
また、逆量子化・逆変換部15は、第2のQP値として、量子化補正値CuQpDeltaValと量子化パラメータ予測値QPpredから導出される以下の値qP2を用いる。量子化パラメータ予測値QPpredは、例えば、対象ブロックの左ブロックのQPと上ブロックのQPの平均値などを用いる。
qP2 = qP1 + offset_rru
ここで、offset_rruは、固定の定数(例えば5や6)でも良いし、スライスヘッダやPPSで符号化される値を用いても良い。
ここで、offset_rruは、固定の定数(例えば5や6)でも良いし、スライスヘッダやPPSで符号化される値を用いても良い。
続いて、逆量子化・逆変換部15は、既に説明したように残差モードに応じて設定された量子化パラメータqP(ここではqP1、qP2)を用いて、逆量子化(S3011)、逆変換(S3021)を行う。
<残差モードに応じた量子化制御の別の構成例>
図20は、発明の一実施形態に係る逆量子化・逆変換部15(逆量子化・逆変換S3000C)の概略的動作を説明するフローチャートである。
図20は、発明の一実施形態に係る逆量子化・逆変換部15(逆量子化・逆変換S3000C)の概略的動作を説明するフローチャートである。
(S3005)残差モードが第1のモードを示す場合(=0)、量子化ステップQPとして通常の量子化ステップQPを設定する。それ以外(残差モードが第2のモードである!=0)の場合は、量子化ステップQPとして通常のQP値にQP修正差分を加え量子化ステップQPを修正する。
例えば、逆量子化・逆変換部15は、QP値として、通常のQP値qPに、QP修正差分offset_rruを加えた値を用いる。
qP = qP + offset_rru
ここで、offset_rruは、固定の定数(例えば5や6)でも良いし、スライスヘッダやPPSで符号化される値を用いても良い。
ここで、offset_rruは、固定の定数(例えば5や6)でも良いし、スライスヘッダやPPSで符号化される値を用いても良い。
続いて、逆量子化・逆変換部15は、既に説明したように残差モードに応じて設定された量子化パラメータqPを用いて、逆量子化(S3011)、逆変換(S3021)を行う。
以上の残差モードに応じた量子化制御によれば、残差モードに応じて量子化パラメータqPを制御することにより、残差モードの適用対象となる領域(例えば、ピクチャ、スライス、CTU、CT、CU、TU)の残差情報の符号量の低減量を適切に制御できる効果を奏する。また、残差情報の符号量は画質と相関することから、結果として、残差モードの適用対象となる領域の画質を適切に制御できる効果を奏する。
なお、上記構成は、発明者が実験的及び解析的に発見した以下の知見による。解像度を1/2にする。実験的には、ある領域のサイズを1/2に縮小して変換を行うと、同一量子化パラメータ(量子化ステップ)では符号量はおおよそ1/2になる。特にピクチャ全体ではなく、残差モードにより、スライスや符号化ユニットなどピクチャの一部の領域の解像度を低下(量子化残差の情報を低下)させると、1/2の符号量に変更することは、符号量を低下させしすぎる、または、依然として符号量の低下が十分ではない、可能性がある。この問題を解決するために、領域単位で量子化を制御するためのパラメータである量子化パラメータ補正(量子化ステップ差分、qpOffset、deltaQP、dQPなどとも呼ばれる)を符号化すると、今度は、量子化パラメータ補正に符号量が必要となり、全体として符号量を低減する効果が小さくなる、または、符号化効率低下を招く、という課題がある。
また、発明者によれば、ある領域のサイズを1/2に縮小して変換を行うと、符号化されるエネルギーは1/2になることが解析的に理解される。すなわち、Nサイズの変換(例えばDCT変換)に比べ、N/2サイズの変換では、面積が1/4になる分、画素領域のエネルギーは1/4になる。それに対し、N/2サイズの変換では、通常、変換時に行われる正規化処理用に割る数(一種の量子化ステップ)が1/2だけ小さく設定し、小さなエネルギーも変換係数として残るように設定する。結果として、ある領域のサイズを1/2に縮小した場合に、変換係数領域で得られるエネルギーは、縮小前の1/2(=1/4*2)となる。この事実は、残差モードとして残差を少なく符号化するモードを選択し、ピクチャの一部領域の解像度を低下(量子化残差の情報を低下)させると、ここでは、符号量を約1/2にような縮小率に合わせて予め決められた削減率だけ、画質が低下することを意味する。削減率が固定的であるため、上述の符号量と同様に、画質が低下しすぎる、または、場合により画質の低下が不十分である、という課題が有る。従来からある量子化パラメータ補正を用いることなく、残差モードにより、量子化を粗くする領域の符号量及び画質を制御する、ということが本実施形態の構成の目的(効果)である。
<<P4:残差モード復号部の構成>>
以下、残差モード復号部の構成の異なる動画像復号装置1の形態を順にさらに説明する。以下、P4a:CTUレイヤの残差モード復号部の構成、P4b:CTレイヤの残差モードの構成、P4c:CUレイヤの残差モードの構成、P4d:TUレイヤの残差モードの構成の順に説明する。
以下、残差モード復号部の構成の異なる動画像復号装置1の形態を順にさらに説明する。以下、P4a:CTUレイヤの残差モード復号部の構成、P4b:CTレイヤの残差モードの構成、P4c:CUレイヤの残差モードの構成、P4d:TUレイヤの残差モードの構成の順に説明する。
<P4a:CTUレイヤの残差モード復号部の構成>
以下、図21〜図23を用いて、動画像復号装置1の一つの構成を説明する。
以下、図21〜図23を用いて、動画像復号装置1の一つの構成を説明する。
図21は、本発明の一実施形態に係る動画像符号化装置によって生成され、上記動画像復号装置によって復号される符号化データのデータ構成を示す図である。図21(c)に示すように、動画像復号装置1は、符号化データ#1中のCTU階層(ここではCTUヘッダ、CTUH)に含まれる残差モードRRU(rru_flag)を復号する。
図22は、本発明の一実施形態に係るCU情報のシンタックス表の構成例を示す図である。
図23は、発明の一実施形態に係るCU情報復号部11(CTU情報復号S1300、CT情報復号S1400A)の概略的動作を説明するフローチャートである。既に説明した図5と比較して、CU情報復号部11はS1300の処理の代わりにS1300Aの処理を行う。すなわち、CU情報復号部11は、符号化ユニット(CU分割フラグやCU情報、PT情報PTI、TT情報TTI)を復号する前に、CU情報復号部11の含む残差モード復号部は符号化データからSYN1305に示される残差モードrru_flagを復号する(S1305)。
それ以外のCU情報復号部11の動作は、図5を用いて既に説明したS1300の処理と同じである。
この構成の残差モード復号部は、最上位の符号化ツリーである符号化ツリーユニットCTUでのみ、符号化データ#1から残差モード(rru_flag)を復号し、それより下位の符号化ツリーでは、残差モード(rru_flag)を復号せず、上位の符号化ツリーで復号された残差モードの値を、下位のツリーにある対象ブロックの残差モードとして用いる。例えば、対象CTの階層がcqtDepthである場合には、上位の符号化ツリーCTであるcqtDepth−1やcqtDepth−2の符号化ツリーCTなどで復号された残差モードの値、CTUヘッダで復号された残差モードの値、または、スライスヘッダやパラメータセットで復号された残差モードの値を用いる。
以上の構成では、ピクチャを構成するスライス未満の最大の単位領域である符号化ツリーユニット(CTUブロック)のみで残差モードrru_flagを符号化データに含めるため、残差モードrru_flagの符号量を抑える効果がある。また、符号化ツリーユニット以下において、4分木によるブロック分割を併用するため、残差モードrru_flagにより残差の構成を変化させる領域においても、自由度の高いブロックサイズでの予測や変換が可能になるという効果を奏する。
簡単にいえば、以上の構成では、残差モードが第1のモードでありブロックサイズが大きい場合と、残差モードが第1のモードでありブロックサイズが小さい場合と、残差モードが第2のモードでありブロックサイズが大きい場合と、残差モードが第2のモードでありブロックサイズが小さい場合の中から最も符号化効率の高いモードを選択可能となるため、符号化効率が向上する効果を奏する。
<残差モードの値に応じたCU分割フラグ復号>
なお、本構成のCTUレベルで残差モードを復号する構成(P4a)や、後述するCTレベルで残差モードを復号する構成(P4b)のように、CU分割フラグを復号する前に、残差モードを復号する構成では、残差モードの値に応じてCU分割フラグを復号することが適当である。以下、この構成について、図23に示す以下のS1411Aの処理を用いて説明する。本構成のCU情報復号部11は、S1411の処理の代わりに、S1411Aの処理を行う。
なお、本構成のCTUレベルで残差モードを復号する構成(P4a)や、後述するCTレベルで残差モードを復号する構成(P4b)のように、CU分割フラグを復号する前に、残差モードを復号する構成では、残差モードの値に応じてCU分割フラグを復号することが適当である。以下、この構成について、図23に示す以下のS1411Aの処理を用いて説明する。本構成のCU情報復号部11は、S1411の処理の代わりに、S1411Aの処理を行う。
(S1411A) CU情報復号部11は、図22のSYN1311Aのシンタックス構成にも示すように、残差モードに応じて、対数CUサイズlog2CbSizeが所定の最小CUサイズMinCbLog2SizeYより大きいか否かを判定する。対数CUサイズlog2CbSize+残差モードrru_modeがMinCbLog2SizeYより大きい場合には、符号化データからSYN1321のシンタックス要素に示されるCU分割フラグsplit_cu_flagを復号し(S1421)、それ以外の場合には、CU分割フラグsplit_cu_flagの復号を省略し、分割しないことを示す0を推定する(S1422)。
なお、残差モードの値を加算による判定式の項(log2CbSize+rru_mode)は、残差モードが0以外では1を加算する処理(log2CbSize+(rru_mode ? 1 : 0))により導出しても良い(以下同様) 上述したS1411Aの処理は、以下の処理と等しい。すなわち、CU情報復号部11は、残差モードが第1のモードである0の場合には、対数CUサイズlog2CbSizeが所定の最小CUサイズMinCbLog2SizeYより大きい場合(符号化ブロックサイズが最小符号化ブロックよりも大きい場合)に、CU分割フラグsplit_cu_flagを復号し(S1421)、それ以外の場合には、CU分割フラグsplit_cu_flagを復号せず分割しないことを示す0を推定する(S1422)。CU情報復号部11は、残差モードが第2のモードである1の場合には、対数CUサイズlog2CbSizeが所定の最小CUサイズMinCbLog2SizeY+1より大きい場合(符号化ブロックサイズが最小符号化ブロック+1よりも大きい場合)に、CU分割フラグsplit_cu_flagを復号し(S1421)、それ以外の場合には、CU分割フラグsplit_cu_flagを復号せず分割しないことを示す0を推定する(S1422)。
上記では、CU情報復号部11に含まれるCU分割フラグ復号部は、残差モードが第2のモードである場合には、分割の閾値である最小CUサイズMinCbLog2SizeYに1を加える。すなわち、残差モードが第1のモードである場合には、CU分割サイズが最小CUサイズMinCbLog2SizeYと等しい場合には領域を分割せずに符号化ツリーの4分木分割を終了するが、残差モードが第2のモードである場合には、上記1の加算により、CU分割フラグが最小CUサイズMinCbLog2SizeY+1と等しい場合に領域を分割せずに符号化ツリーの4分木分割を終了する。このことは、符号化ツリーの4分木分割で可能な最大の階層の深さを、残差モードが第1のモードである場合に比べて、第2のモードである場合に1段階減らすことに対応する。なお、残差モードの値に応じて1を加算による判定式(log2CbSize+rru_mode)はの代わりに、残差モードが0以外では2を加算する処理(log2CbSize+(rru_mode ? 2 : 0))を判定式としても良い。この場合、4分木分割を行う最大の階層の数を、残差モードが第2のモードである場合には、2段階減らすことができる。
以上の構成では、分割しすぎることによりブロックサイズが小さくなりすぎることを防ぐ効果を奏する。また、残差モードrru_flagが第2のモード(!=0)の場合には、残差モードrru_flagが第1のモード(=0)の場合に比べて、1つ低い階層までしか分割を行わない(CU分割フラグを復号しない)ので、CU分割フラグに関するオーバーヘッドを小さくする効果を奏する。
<P4b:CTレイヤの残差モードの構成>
以下、図25〜図27を用いて、動画像復号装置1の別の構成を説明する。
以下、図25〜図27を用いて、動画像復号装置1の別の構成を説明する。
図25は本発明の一実施形態に係る動画像符号化装置によって生成され、上記動画像復号装置によって復号される符号化データのデータ構成を示す図である。図25(c)に示すように、動画像復号装置1は、符号化データ#1中のCT階層に含まれる残差モードrru_flagを復号する。
図26は、本発明の一実施形態に係るCU情報のシンタックス表の構成例を示す図である。
図27は、発明の一実施形態に係るCU情報復号部11(CTU情報復号S1300、CT情報復号S1400B)の概略的動作を説明するフローチャートである。
既に図6を用いて説明したCU情報復号部11とはS1405の残差モードrru_flagを復号する処理が追加された点が異なる。
(S1405) CU情報復号部11は、CTBを分割して符号化ツリー(CT)において、SYN1405に示すシンタックス要素である残差モードrru_flagを復号する。
S1405の動作は、S1305と異なり、最上位階層の符号化ツリー(CTB)より下の階層でも、残差モードrru_flagを復号することができる。
なお、図26のSYN1404に示すように、CU情報復号部11の含む残差モード復号部は、CT階層cqtDepthが特定の条件を満たす場合、例えば、所定の階層rruDepthと等しい場合に、残差モードrru_flagを復号することが望ましい。
なお、CT階層cqtDepthが所定の階層rruDepthと等しい場合に、残差モードrru_flagを復号する、ということは、符号化ツリーが特定のサイズである場合に残差モードを復号する、ことと等価である。従って、CT階層cqtDepthを用いずにCTサイズ(CUサイズ)を用いても良い。
下記式のように、対数CTサイズlog2CbSize == log2RRUSizeの場合、残差モードrru_flagを復号することが望ましい。つまり、SYN1404の代わりに、SYN1404´を用いても良い。
if( cqtDepth == rruDepth) SYN1404
if(log2CbSize == log2RRUSize) SYN1404´
なお、log2RRUSizeは、残差モードを復号するブロックのサイズである。例えば32×32〜256×256を示す5〜8などが適当である。残差モードを復号するブロックのサイズlog2RRUSizeを符号化データに含め、パラメータセットやスライスヘッダで復号する構成でも良い。
if(log2CbSize == log2RRUSize) SYN1404´
なお、log2RRUSizeは、残差モードを復号するブロックのサイズである。例えば32×32〜256×256を示す5〜8などが適当である。残差モードを復号するブロックのサイズlog2RRUSizeを符号化データに含め、パラメータセットやスライスヘッダで復号する構成でも良い。
以上の構成では、残差モードrru_flagにより残差の構成を変化させる領域においても、自由度の高いブロックサイズでの予測や変換が可能になるという効果を奏する。また、残差モードrru_flagは特定の階層のみで復号する場合には、残差モードのオーバーヘッドを小さくする効果を奏する。
なお、既に説明したように、CT階層で残差モードを復号する本構成のCU情報復号部11も、S1411の処理の代わりに、既に説明した図23で説明したS1411Aの処理を用いても良い(図23のSYN1411Aに相当)。
<P4b:CTレイヤの残差モードの構成>
図28は、符号化ツリーレベルのシンタックス表の別の構成例を示す図である。この構成では、SYN1404Aに示すように、CU情報復号部11の含む残差モード復号部はCT階層cqtDepthが特定の条件を満たす場合、例えば、CT階層cqtDepthが所定の階層rruDepth未満の場合に、残差モードrru_flagを復号する。なお、SYN1404Aに!rru_flagの条件が示すように、既に上位の階層で残差モードrru_flagが第2のモード(!=0)であると復号された場合には、残差モードrru_flagの復号を省略する(1のままとする)ことが望ましい。例えば、所定の階層rruDepthが64×64ブロックの階層の場合には、CUサイズが64×64の場合には、残差モードrru_flagを復号する。
図28は、符号化ツリーレベルのシンタックス表の別の構成例を示す図である。この構成では、SYN1404Aに示すように、CU情報復号部11の含む残差モード復号部はCT階層cqtDepthが特定の条件を満たす場合、例えば、CT階層cqtDepthが所定の階層rruDepth未満の場合に、残差モードrru_flagを復号する。なお、SYN1404Aに!rru_flagの条件が示すように、既に上位の階層で残差モードrru_flagが第2のモード(!=0)であると復号された場合には、残差モードrru_flagの復号を省略する(1のままとする)ことが望ましい。例えば、所定の階層rruDepthが64×64ブロックの階層の場合には、CUサイズが64×64の場合には、残差モードrru_flagを復号する。
なお、CT階層cqtDepthが所定の階層rruDepth未満の場合に、残差モードrru_flagを復号する、ということは、符号化ツリーのサイズが比較的大きい、符号化ツリーの階層が小さい場合にのみ残差モードを復号する、ということであるから、CT階層cqtDepthの代わりに、符号化ツリーCTサイズ(CUサイズ)を用いても良い。
下記式のように、対数CTサイズlog2CbSize == log2RRUSizeの場合、残差モードrru_flagを復号することが望ましい。つまり、SYN1404Aの代わりに、SYN1404A´を用いても良い。
if( cqtDepth < rruDepth && !rru_flag) SYN1404A
if(log2CbSize < log2RRUSize && !rru_flag) SYN1404A´
以上の構成では、残差モードrru_flagにより残差の構成を変化させる領域においても、自由度の高いブロックサイズでの予測や変換が可能になるという効果を奏する。また、同時に残差モードのオーバーヘッドを小さくする効果を奏する。
if(log2CbSize < log2RRUSize && !rru_flag) SYN1404A´
以上の構成では、残差モードrru_flagにより残差の構成を変化させる領域においても、自由度の高いブロックサイズでの予測や変換が可能になるという効果を奏する。また、同時に残差モードのオーバーヘッドを小さくする効果を奏する。
<P4c:CUレイヤの残差モードの構成>
以下、図29〜図31を用いて、動画像復号装置1の別の構成を説明する。
以下、図29〜図31を用いて、動画像復号装置1の別の構成を説明する。
図29は本発明の一実施形態に係る動画像符号化装置によって生成され、上記動画像復号装置によって復号される符号化データのデータ構成を示す図である。図29(d)に示すように、動画像復号装置1は、符号化データ#1中のCU分割フラグSPが1である場合にCT階層に含まれる残差モードRRU(rru_flag)を復号する。
図30は、本発明の一実施形態に係るCU情報のシンタックス表の構成例を示す図である。
図31は、発明の一実施形態に係るCU情報復号部11(CTU情報復号S1300、CT情報復号S1400C)の概略的動作を説明するフローチャートである。
CU情報復号部11の処理は、既に図6を用いて説明したS1400の処理に比べ、S1435に示す残差モード復号処理がCU情報復号に追加された点が異なる。
(S1435) CU情報復号部11は、CU分割フラグsplit_cu_flagが1である場合において(S1431、SYN1431)、SYN1435に示すシンタックス要素である残差モードrru_flagを復号する。
S1435の動作は、S1305と異なり、最上位階層の符号化ツリー(CTB)より下の階層でも、残差モードrru_flagを復号することができる。なお、SYN1434に!rru_flagの条件が示すように、既に上位の階層で残差モードrru_flagが一度第2のモード(!=0)であると復号された場合には、残差モードrru_flagの復号を省略し、対象ブロックも第2のモードのままとすることが望ましい。残差モードrru_flagは、対象ブロックまたは対象ブロックの上位階層で復号されるまでは、0に初期化されているものとする。
以上の構成では、残差モードrru_flagにより残差の構成を変化させる領域においても、自由度の高いブロックサイズでの予測や変換が可能になるという効果を奏する。
また、残差モードrru_flagは特定の階層のみで復号する場合には、残差モードのオーバーヘッドを小さくする効果を奏する。
なお、本構成のCU情報復号部11も、S1411の処理の代わりに、既に説明した図23に示す上述のS1411Aの処理を用いても良い。
S1411Aを用いる構成では、さらに、分割しすぎることによりブロックサイズが小さくなりすぎることを防ぐ効果を奏する。また、残差モードrru_flagが第2のモード(!=0)の場合には、残差モードrru_flagが第1のモード(=0)の場合に比べて、1つ低い階層までしか分割を行わない(CU分割フラグを復号しない)ので、CU分割フラグに関するオーバーヘッドを小さくする効果を奏する。
図32は、符号化ツリーレベルのシンタックス表の別の構成例を示す図である。この構成では、SYN1434Aに示すように、CU分割フラグsplit_cu_flagとCT階層cqtDepthが所定の条件を満たす場合に、残差モードrru_flagを復号することが望ましい。例えば、CU分割フラグsplit_cu_flagが1の場合(小CUに分割する場合)には、CT階層cqtDepthが所定の階層rruDepthである場合に、残差モードrru_flagを復号し、CU分割フラグsplit_cu_flagが0の場合(小CUに分割しない場合)には、CT階層cqtDepthが所定の階層rruDepth未満である場合に、残差モードrru_flagを復号する。それ以外の場合には、残差モードrru_flagの復号を省略する。残差モードrru_flagの復号を省略する場合には、上位階層のCTにおいて、残差モードrru_flagが既に復号されている場合には、その残差モードの値を用いる。それ以外の場合には、残差モードrru_flagの値を0とする。
例えば、所定の階層rruDepthが64×64ブロックの階層の場合には、CUサイズが64×64の場合でさらにCUを分割する場合(32×32)に残差モードrru_flagを復号するのと同時に、CUを分割しない場合にも、CUサイズが64×64以上である場合には、残差モードrru_flagを復号する。
<P4c:CUレイヤの残差モードの構成>
以下、図33〜図35を用いて、動画像復号装置1の別の構成を説明する。
以下、図33〜図35を用いて、動画像復号装置1の別の構成を説明する。
図33は本発明の一実施形態に係る動画像符号化装置によって生成され、上記動画像復号装置によって復号される符号化データのデータ構成を示す図である。図33(e)に示すように、動画像復号装置1は、符号化データ#1中のCU階層に含まれる残差モードrru_flagを復号する。
図34は、本発明の一実施形態に係るCU情報、PT情報PTI、TT情報TTIのシンタックス表の構成例を示す図である。
図35は、発明の一実施形態に係るCU情報復号部11(CU情報復号S1500A)、PU情報復号部12(PU情報復号S1600)、TU情報復号部13(TT情報復号S1700)の概略的動作を説明するフローチャートである。
既に図6を用いて説明したCU情報復号部11とはS1505の残差モードrru_flagを復号する処理が追加された点が異なる。
(S1505) CU情報復号部11は、SYN1505に示すシンタックス要素である残差モードrru_flagを復号する。
S1505の動作は、S1305と異なり、最下位階層の符号化ツリーである符号化ユニットCUで、残差モードrru_flagを復号することができる。
以上の構成では、残差モードrru_flagにより残差の構成を変化させる領域においても、4分木を用いた自由度の高いブロックサイズでの予測や変換が可能になるという効果を奏する。また、各符号化ツリー(CT)で、残差モードrru_flagを切り替えることができるため、CTUで切り替える場合よりもさらに自由度の高い構成が可能であるという効果を奏する。
<P4c:CUレイヤの残差モードの構成>
以下、図36〜図38を用いて、動画像復号装置1の別の構成を説明する。
以下、図36〜図38を用いて、動画像復号装置1の別の構成を説明する。
図36は本発明の一実施形態に係る動画像符号化装置によって生成され、上記動画像復号装置によって復号される符号化データのデータ構成を示す図である。図36(e)に示すように、動画像復号装置1は、符号化データ#1中のCU階層に含まれるスキップフラグSKIPの後に位置する残差モードrru_flagを復号する。
図37は、本発明の一実施形態に係るCU情報、PT情報PTI、TT情報TTIのシンタックス表の構成例を示す図である。
図38は、発明の一実施形態に係るCU情報復号部11(CU情報復号S1500B)、PU情報復号部12(PU情報復号S1600)、TU情報復号部13(TU情報復号S1700)の概略的動作を説明するフローチャートである。
既に図6を用いて説明したCU情報復号部11とはS1515の残差モードrru_flagを復号する処理が追加された点が異なる。
(S1515) CU情報復号部11は、スキップフラグが1である場合において(S1512、SYN1512)、SYN1515に示すシンタックス要素である残差モードrru_flagを復号する。それ以外の場合(スキップフラグ=0)、CU情報復号部11は、残差モードrru_flagを省略し、残差モードが第1のモードであることを示す0を導出する。
S1515の動作は、S1305と異なり、最下位階層の符号化ツリーである符号化ユニットCUで、残差モードrru_flagを復号することができる。
以上の構成では、残差モードrru_flagにより残差の構成を変化させた場合にも、自由度の高い4分木での分割が可能になるという効果を奏する。また、各符号化ユニットで、残差モードrru_flagを切り替えることができるため、自由度の高い構成が可能であるという効果を奏する。
さらに、以上の構成では、残差を省略するスキップモードではない場合(残差を符号化する可能性のあるモード)に限り残差モードrru_flagを復号し、残差の存在しない場合であるスキップモードが1の場合には残差モードrru_flagの復号を省略するため、残差モードのオーバーヘッドを小さくする効果を奏する。
<P4d:TUレイヤの残差モードの構成>
以下、図39〜図41を用いて、動画像復号装置1の別の構成を説明する。
以下、図39〜図41を用いて、動画像復号装置1の別の構成を説明する。
図39は本発明の一実施形態に係る動画像符号化装置によって生成され、上記動画像復号装置によって復号される符号化データのデータ構成を示す図である。図39(e)に示すように、動画像復号装置1は、符号化データ#1中のTU階層に含まれるCU残差フラグCBP_TUの後に位置する残差モードrru_flagを復号する。
図40は、変換ツリー情報TTIのシンタックス表の構成例を示す図である。
図41は、発明の一実施形態に係るTU情報復号部13(TU情報復号S1700A)の概略的動作を説明するフローチャートである。
既に図6を用いて説明したCU情報復号部11とはS1715の残差モードrru_flagを復号する処理が追加された点が異なる。本実施形態では、S1700の処理をS1700Aの処理に置き替える。
(S1715) TU情報復号部11は、CU残差フラグrqt_root_cbfが0以外(=1)である場合において(S1712、SYN1712)、SYN1715に示すシンタックス要素である残差モードrru_flagを復号する。それ以外の場合(スキップフラグ=0)、CU情報復号部11は、残差モードrru_flagを省略し、残差モードが第1のモードであることを示す0を導出する。
S1700Aの動作は、S1700と異なり、これ以上分割しない最下位階層(リーフ)の符号化ツリーである符号化ユニットCUで、残差モードrru_flagを復号する(S1715)。
以上の構成では、残差モードrru_flagにより残差の構成を変化させた場合にも、自由度の高い4分木での分割が可能になるという効果を奏する。また、各符号化ユニットで、残差モードrru_flagを切り替えることができるため、自由度の高い構成が可能であるという効果を奏する。
さらに、以上の構成では、CUに残差(予測量子化残差)が存在する場合(CU残差フラグが0以外の場合)に限り残差モードrru_flagを復号し、CUに残差が存在しない場合(CU残差フラグが0の場合)に、残差モードrru_flagの復号を省略するため、残差モードのオーバーヘッドを小さくする効果を奏する。
<<P5:残差モードによるフラグ復号制限>>
<P5a:残差モードによるPU分割フラグ復号制限>
以下、図42〜図43を用いて、動画像復号装置1の別の構成を説明する。
<P5a:残差モードによるPU分割フラグ復号制限>
以下、図42〜図43を用いて、動画像復号装置1の別の構成を説明する。
図42は、本発明の一実施形態に係るCU情報、PT情報PTI、TT情報TTIのシンタックス表の構成例を示す図である。
図43は、発明の一実施形態に係るCU情報復号部11(CU情報復号S1500)、PU情報復号部12(PU情報復号S1600)、TU情報復号部13(TU情報復号S1700)の概略的動作を説明するフローチャートである。
S1611 PU情報復号部12は、符号化データ#1から予測タイプPred_type(CuPredMode、シンタックス要素はpred_mode_flag)を復号する。
S1615 PU情報復号部12の備えるPU分割モード復号部は、残差モードrru_flagが第1のモード(=0)の場合のみ、PU分割タイプPred_typeを復号する(S1621)、それ以外の場合には、PU分割タイプPred_typeの復号を省略し、PU分割タイプとして予測ブロックを分割しないことを示す値(2N×2N)を導出する。
より詳細には、図42のSYN1615に示すように、予測タイプCuPredModeがイントラ(MODE_INTRA)以外、または、対数CTサイズlog2CbSizeが最小対数CTサイズMinCbLog2SizeYである場合、かつ、残差モードrru_flagが0である場合(=!rru_flag)に、符号化データ#1からPU分割タイプを復号する(S1621)、それ以外の場合には、PU分割タイプの復号を省略し、PU分割タイプとして予測ブロックを分割しないことを示す値(2N×2N)を導出する。
上記画像復号装置は、符号化ユニットをさらに予測ブロック(PU)に分割するか否かを示すPU分割モードを復号するPU情報復号部12(PU分割モード復号部)を備え、PU分割モード復号部は、残差モードが「第2のモード」を示す場合には、上記PU分割モードの復号を省略し、上記残差モードが「第1のモード」を示す場合には、上記PU分割モードを復号する。PU情報復号部12は、残差モードが「第2のモード」を示す場合。つまり、PU分割モードの復号が省略される場合には、PU分割しないことを示す値(2Nx2N)を導出する。
以上の構成では、残差モードrru_flagが第1のモード(=0)である場合のみPU分割モードを復号し、残差モードrru_flagが第2のモード(!=0)である場合にはPU分割モードの復号を省略するため、PU分割モードのオーバーヘッドを小さくする効果を奏する。
<P5a:残差モードによるPU分割フラグ復号制限>
以下、図44〜図45を用いて、動画像復号装置1の別の構成を説明する。
以下、図44〜図45を用いて、動画像復号装置1の別の構成を説明する。
図44は、本発明の一実施形態に係るCU情報、PT情報PTI、TT情報TTIのシンタックス表の構成例を示す図である。
図45は、発明の一実施形態に係るCU情報復号部11(CU情報復号S1500)、PU情報復号部12(PU情報復号S1600A)、TU情報復号部13(TU情報復号S1700)の概略的動作を説明するフローチャートである。
(S1615A) PU情報復号部12の備えるPU分割モード復号部は、残差モードrru_flagが第1のモード(=0)の場合のみ、PU分割タイプを復号する(S1621)、それ以外の場合には、PU分割タイプの復号を省略し、PU分割タイプとして分割しないことを示す2N×2Nを導出する。
より詳細には、SYN1615Aに示すように、予測タイプCuPredModeがイントラ(MODE_INTRA)かつ残差モードrru_flagが第1のモード(=0)である場合(=!rru_flag)、または、対数CTサイズlog2CbSizeが最小対数CTサイズMinCbLog2SizeY+残差モードと等しい場合(log2CbSize==(MinCbLog2SizeY+rru_flag)に、符号化データ#からPU分割タイプを復号する(S1621)、それ以外の場合には、PU分割タイプの復号を省略し、PU分割タイプとして予測ブロックを分割しないことを示す2N×2N(=0)を導出する。
なお、対数CTサイズlog2CbSizeが最小対数CTサイズMinCbLog2SizeY+残差モードrru_flagである場合とは、残差モードrru_flagが第1のモード(=0)である場合には、対数CTサイズlog2CbSizeが最小対数CTサイズMinCbLog2SizeYであるか否かを判定し、残差モードrru_flagが第2のモード(!=0)である場合には、対数CTサイズlog2CbSizeが最小対数CTサイズMinCbLog2SizeY+1であるか否かを判定する、ことと等しい。
上記画像復号装置は、符号化ユニットをさらに予測ブロック(PU)に分割するか否かを示すPU分割モードを復号するPU分割モード復号部を備え、PU分割モード復号部は、残差モードが「第2のモード」を示す場合には、上記PU分割モードの復号を省略し、PU分割しないことを示す値(2Nx2N)を導出し、上記残差モードが「第1のモード」を示す場合には、上記PU分割モードを復号する。
さらに、以上の構成では、残差モードrru_flagが第1のモード(=0)である場合のみPU分割モードを復号し、残差モードrru_flagが第2のモード(!=0)である場合にはPU分割モードの復号を省略するため、PU分割モードのオーバーヘッドを小さくする効果を奏する。
<P5b:残差モードによるTU分割フラグ復号制限C>
以下、図46〜図47を用いて、動画像復号装置1の別の構成を説明する。図46は、本発明の一実施形態に係るTT情報TTIのシンタックス表の構成例を示す図である。図47は、発明の一実施形態に係るTU情報復号部13(TU情報復号1700C)の概略的動作を説明するフローチャートである。
以下、図46〜図47を用いて、動画像復号装置1の別の構成を説明する。図46は、本発明の一実施形態に係るTT情報TTIのシンタックス表の構成例を示す図である。図47は、発明の一実施形態に係るTU情報復号部13(TU情報復号1700C)の概略的動作を説明するフローチャートである。
TU情報復号部13に含まれるTU分割フラグ復号部は、対象TUサイズが、所定の変換サイズの範囲に入る、か、対象TUの階層が所定の階層未満の場合には、TU分割フラグ(split_transform_flag)を復号する。より具体的には、図46のSYN1721Cに示すように、対数TUサイズlog2TrafoSize <=最大TUサイズMaxTbLog2SizeYと残差モードの和(MaxTbLog2SizeY+残差モードrru_flag) かつ 対数TUサイズlog2TrafoSize >最小TUサイズMinTbLog2SizeYと残差モードの和(MaxTbLog2SizeY+残差モードrru_flag)
かつ TU階層trafoDepth<最大TU階層MaxTrafoDepthと残差モードの差(MaxTrafoDepth−残差モードrru_flag)の場合には、TU分割フラグ(split_transform_flag)を復号する(S1731)、それ以外の場合、つまり、符号化データにsplit_transform_flagが現れない場合には、TU分割フラグの復号を省略し、対数TUサイズlog2TrafoSizeが最大TUサイズMaxTbLog2SizeY+残差モードrru_flagより大きい場合には、TU分割フラグsplit_transform_flagを1として導出し、それ以外の場合(対数TUサイズlog2TrafoSizeが最小TUサイズMaxTbLog2SizeYと残差モードの和(MaxTbLog2SizeY+残差モードrru_flag)と等しいまたはTU階層trafoDepthが最大TU階層と残差モードの差(MaxTrafoDepth−残差モードrru_flag)と等しい)には、TU分割フラグsplit_transform_flagを分割しないことを示す0として導出する(S1732)。
かつ TU階層trafoDepth<最大TU階層MaxTrafoDepthと残差モードの差(MaxTrafoDepth−残差モードrru_flag)の場合には、TU分割フラグ(split_transform_flag)を復号する(S1731)、それ以外の場合、つまり、符号化データにsplit_transform_flagが現れない場合には、TU分割フラグの復号を省略し、対数TUサイズlog2TrafoSizeが最大TUサイズMaxTbLog2SizeY+残差モードrru_flagより大きい場合には、TU分割フラグsplit_transform_flagを1として導出し、それ以外の場合(対数TUサイズlog2TrafoSizeが最小TUサイズMaxTbLog2SizeYと残差モードの和(MaxTbLog2SizeY+残差モードrru_flag)と等しいまたはTU階層trafoDepthが最大TU階層と残差モードの差(MaxTrafoDepth−残差モードrru_flag)と等しい)には、TU分割フラグsplit_transform_flagを分割しないことを示す0として導出する(S1732)。
本構成は、後述する、残差モードによるTU分割フラグ復号制限Aと残差モードによるTU分割フラグ復号制限Bを組み合わせた構成であり、制限Aの効果と制限Bの効果を奏する。
<P5b:残差モードによるTU分割フラグ復号制限C>
なお、上記では、発明の一実施形態に係るTU情報復号部13は、図46のSYN1721Cに示す条件(=図47のS1721C)に示す条件により、TU分割フラグ(split_transform_flag)を復号する。つまり、対象TUサイズlog2TrafoSizeと、TU階層trafoDepthの両者を用いて、TU分割フラグ(split_transform_flag)を復号するが、以下のS1721Aに示すように対象TUサイズlog2TrafoSizeを用いて条件判定を行っても良い。
なお、上記では、発明の一実施形態に係るTU情報復号部13は、図46のSYN1721Cに示す条件(=図47のS1721C)に示す条件により、TU分割フラグ(split_transform_flag)を復号する。つまり、対象TUサイズlog2TrafoSizeと、TU階層trafoDepthの両者を用いて、TU分割フラグ(split_transform_flag)を復号するが、以下のS1721Aに示すように対象TUサイズlog2TrafoSizeを用いて条件判定を行っても良い。
(S1721A)log2TrafoSize <= (MaxTbLog2SizeY+rru_flag) && log2TrafoSize > (MinTbLog2SizeY+rru_flag)
この構成では、符号化ユニットをさらに変換ブロック(TU)に分割するか否かを示すTU分割モードを復号するTU情報復号部13(TU分割モード復号部)を備え、上記TU分割モード復号部は、上記残差モードが「第2のモード」を示す場合には、符号化ブロックサイズlog2CbSizeが最大変換ブロックMaxTbLog2SizeY+1以下かつ最小変換ブロックMinCbLog2Size+1より大きい場合に、上記TU分割フラグ(split_transform_flag)を復号し、上記残差モードが「第1のモード」を示す場合には、符号化ブロックサイズlog2CbSizeが最大変換ブロックMaxTbLog2SizeY以下かつ最小変換ブロックMinCbLog2Sizeより大きい場合に、上記TU分割フラグ(split_transform_flag)を復号し、それ以外(符号化ブロックサイズlog2CbSizeが最大変換ブロックMaxTbLog2SizeYより大きい、または、最小変換ブロックMinCbLog2Size以下)の場合には、上記TU分割フラグ(split_transform_flag)の復号を省略し、分割しないことを示す値を導出する。
この構成では、符号化ユニットをさらに変換ブロック(TU)に分割するか否かを示すTU分割モードを復号するTU情報復号部13(TU分割モード復号部)を備え、上記TU分割モード復号部は、上記残差モードが「第2のモード」を示す場合には、符号化ブロックサイズlog2CbSizeが最大変換ブロックMaxTbLog2SizeY+1以下かつ最小変換ブロックMinCbLog2Size+1より大きい場合に、上記TU分割フラグ(split_transform_flag)を復号し、上記残差モードが「第1のモード」を示す場合には、符号化ブロックサイズlog2CbSizeが最大変換ブロックMaxTbLog2SizeY以下かつ最小変換ブロックMinCbLog2Sizeより大きい場合に、上記TU分割フラグ(split_transform_flag)を復号し、それ以外(符号化ブロックサイズlog2CbSizeが最大変換ブロックMaxTbLog2SizeYより大きい、または、最小変換ブロックMinCbLog2Size以下)の場合には、上記TU分割フラグ(split_transform_flag)の復号を省略し、分割しないことを示す値を導出する。
すなわち、残差モードrru_flagが第1のモードである0である場合には、通常の最大TUサイズMaxTbLog2SizeY(変換ブロックの最大サイズ)と最小TUサイズMinTbLog2SizeY(変換ブロックの最小サイズ)を用い、残差モードrru_flagが第2のモードである1である場合には、最大サイズとして、通常の最大TUサイズMaxTbLog2SizeYと1の和(MaxTbLog2SizeY+1)、最小TUサイズとして、通常の最小TUサイズMinTbLog2SizeYと1の和(MinTbLog2SizeY+1)を用いる。これは、残差モードが第2のモードである0以外である場合には、対象TU(サイズはnTbS×nTbS、nTbS=1<<log2TrafoSize)の量子化予測残差として、対象TUサイズ(nTbS×nTb)ではなく、例えば対象TUサイズの1/2のサイズ(nTbS/2×nTb/2)の量子化予測残差を復号する(前述の<<P1:残差モードに応じたTU情報復号>>)ことに対応する処理である。
例えば、逆変換対象となるブロック(量子化予測残差ブロック)の最大サイズが32×32(MaxTbLog2SizeY=5)、逆変換対象となるブロックの最小サイズが4×4(MaxTbLog2SizeY=2)の場合、残差モードrru_flagに応じて以下の処理を行う。
残差モードrru_flagが第1のモードである0である場合には、対象TUサイズ(対数TUサイズlog2TrafoSize)が、最大サイズの32×32(MaxTbLog2SizeY=5)より大きい場合には、TU分割フラグsplit_transform_flagの復号を省略して分割することを示す1として導出し、対象TUサイズ(対数TUサイズlog2TrafoSize)が、最小サイズの4×4(MaxTbLog2SizeY=2)と等しい場合には、TU分割フラグsplit_transform_flagの復号を省略して分割しないことを示す0として導出する。
残差モードrru_flagが第2のモードである0以外である場合には、対象TUサイズの1/2(対数TUサイズlog2TrafoSize−1)が、最大サイズの32×32(MaxTbLog2SizeY=5)より大きい場合には、TU分割フラグsplit_transform_flagの復号を省略して分割することを示す1として導出し、対象TUサイズの1/2(対数TUサイズlog2TrafoSize−1)が、最小サイズの4×4(MaxTbLog2SizeY=2)と等しい場合には、TU分割フラグsplit_transform_flagの復号を省略して分割しないことを示す0として導出する。
上記によれば、残差モードが第2のモードに合わせて、逆変換対象となるブロックのサイズが小さくなりすぎないようにする効果を奏する。これにより、必要以上に小さな変換サイズ(2×2変換)を用いることにより、処理が複雑になる、符号化効率上意味の小さい処理を用いることがないという効果を奏する。また、残差モードが第2のモードにのために、専用の小ブロック予測や、小ブロック変換を実装することがない、という効果を奏する。
<P5b:残差モードによるTU分割フラグ復号制限B>
なお、上記では、発明の一実施形態に係るTU情報復号部13は、図46のSYN1721Aに示す条件(=図47のS1721C)に示す条件により、TU分割フラグ(split_transform_flag)を復号する。つまり、対象TUサイズlog2TrafoSizeと、TU階層trafoDepthの両者を用いて、TU分割フラグ(split_transform_flag)を復号するが、以下のS1721Bに示すように対象TU階層trafoDepthを用いて条件判定を行っても良い。
なお、上記では、発明の一実施形態に係るTU情報復号部13は、図46のSYN1721Aに示す条件(=図47のS1721C)に示す条件により、TU分割フラグ(split_transform_flag)を復号する。つまり、対象TUサイズlog2TrafoSizeと、TU階層trafoDepthの両者を用いて、TU分割フラグ(split_transform_flag)を復号するが、以下のS1721Bに示すように対象TU階層trafoDepthを用いて条件判定を行っても良い。
(S1721B) trafoDepth < (MaxTrafoDepth−rru_flag)
上記の構成では、上記画像復号装置は、符号化ユニットをさらに変換ブロック(TU)に分割するか否かを示すTU分割モードを復号するTU分割モード復号部を備え、上記TU分割モード復号部は、上記残差モードが「第2のモード」を示す場合には、符号化変換デプスtrafoDepthが、最大符号化デプスMaxTrafoDepthと1の差(MaxTrafoDepth―1)未満の場合に、上記TU分割フラグsplit_transform_flagを復号し、上記残差モードが「第1のモード」を示す場合には、符号化変換デプスtrafoDepthが最大符号化デプスMaxTrafoDepthY未満の場合に、上記TU分割フラグsplit_transform_flagを復号し、それ以外の場合(対象TU階層trafoDepthの残差モードが「第1のモード」かつ最大符号化デプスMaxTrafoDepthY以上の場合、または残差モードが「第2のモード」かつMaxTrafoDepthY+1以上の場合)には、上記TU分割フラグ(split_transform_flag)の復号を省略し、変換ブロック(TU)を分割しないことを示す値(2Nx2N)を導出する。
上記の構成では、上記画像復号装置は、符号化ユニットをさらに変換ブロック(TU)に分割するか否かを示すTU分割モードを復号するTU分割モード復号部を備え、上記TU分割モード復号部は、上記残差モードが「第2のモード」を示す場合には、符号化変換デプスtrafoDepthが、最大符号化デプスMaxTrafoDepthと1の差(MaxTrafoDepth―1)未満の場合に、上記TU分割フラグsplit_transform_flagを復号し、上記残差モードが「第1のモード」を示す場合には、符号化変換デプスtrafoDepthが最大符号化デプスMaxTrafoDepthY未満の場合に、上記TU分割フラグsplit_transform_flagを復号し、それ以外の場合(対象TU階層trafoDepthの残差モードが「第1のモード」かつ最大符号化デプスMaxTrafoDepthY以上の場合、または残差モードが「第2のモード」かつMaxTrafoDepthY+1以上の場合)には、上記TU分割フラグ(split_transform_flag)の復号を省略し、変換ブロック(TU)を分割しないことを示す値(2Nx2N)を導出する。
上記によれば、残差モードが第2のモードに合わせて、逆変換対象となるブロックのサイズが小さくなりすぎないようにする効果を奏する。
<変形例>
上記制限A、制限B、制限Cについては、さらに以下の式の条件を用いることができる。
上記制限A、制限B、制限Cについては、さらに以下の式の条件を用いることができる。
(S1721A´´)log2TrafoSize <= (MaxTbLog2SizeY+(rru_flag?1:0)) &&log2TrafoSize > (MinTbLog2SizeY+(rru_flag?2:0))
(S1721B´´)trafoDepth < (MaxTrafoDepth−(rru_flag?2:0))
(S1721C´´)log2TrafoSize <= (MaxTbLog2SizeY+(rru_flag?1:0)) &&log2TrafoSize > (MinTbLog2SizeY+(rru_flag?2:0)) && trafoDepth < (MaxTrafoDepth−(rru_flag?2:0))
なお、上記では、残差モードが第2のモードの場合に、最小変換ブロックサイズMinCbLog2Sizeと1の和)(MinCbLog2Size+1)としたが、さらに小さいブロックを制限するために残差モードが第2のモードの場合に、最小変換ブロックサイズMinCbLog2Sizeと2の和)MinCbLog2Size+2)を用いても良い。より具体的には、対数TUサイズlog2TrafoSize <=最大サイズMaxTbLog2SizeY+(残差モードrru_flag?1:0) かつ 対数TUサイズlog2TrafoSize > MinTbLog2SizeY+(残差モードrru_flag?2:0) かつ TU階層trafoDepth<最大TU階層MaxTrafoDepth +残差モードrru_flagの場合には、TU分割フラグ(split_transform_flag)を復号する(S1731)、それ以外の場合、つまり、符号化データにsplit_transform_flagが現れない場合には、TU分割フラグの復号を省略し、対数TUサイズlog2TrafoSizeが最大サイズMaxTbLog2SizeY+(残差モードrru_flag?1:0)より大きい場合には、TU分割フラグsplit_transform_flagを1として導出し、それ以外の場合(対数TUサイズlog2TrafoSizeが最小サイズMaxTbLog2SizeY+(残差モードrru_flag?2:0)と等しいまたはTU階層trafoDepthが最大TU階層MaxTrafoDepthと等しい)には、TU分割フラグsplit_transform_flagを分割しないことを示す0として導出する(S1732)。
(S1721B´´)trafoDepth < (MaxTrafoDepth−(rru_flag?2:0))
(S1721C´´)log2TrafoSize <= (MaxTbLog2SizeY+(rru_flag?1:0)) &&log2TrafoSize > (MinTbLog2SizeY+(rru_flag?2:0)) && trafoDepth < (MaxTrafoDepth−(rru_flag?2:0))
なお、上記では、残差モードが第2のモードの場合に、最小変換ブロックサイズMinCbLog2Sizeと1の和)(MinCbLog2Size+1)としたが、さらに小さいブロックを制限するために残差モードが第2のモードの場合に、最小変換ブロックサイズMinCbLog2Sizeと2の和)MinCbLog2Size+2)を用いても良い。より具体的には、対数TUサイズlog2TrafoSize <=最大サイズMaxTbLog2SizeY+(残差モードrru_flag?1:0) かつ 対数TUサイズlog2TrafoSize > MinTbLog2SizeY+(残差モードrru_flag?2:0) かつ TU階層trafoDepth<最大TU階層MaxTrafoDepth +残差モードrru_flagの場合には、TU分割フラグ(split_transform_flag)を復号する(S1731)、それ以外の場合、つまり、符号化データにsplit_transform_flagが現れない場合には、TU分割フラグの復号を省略し、対数TUサイズlog2TrafoSizeが最大サイズMaxTbLog2SizeY+(残差モードrru_flag?1:0)より大きい場合には、TU分割フラグsplit_transform_flagを1として導出し、それ以外の場合(対数TUサイズlog2TrafoSizeが最小サイズMaxTbLog2SizeY+(残差モードrru_flag?2:0)と等しいまたはTU階層trafoDepthが最大TU階層MaxTrafoDepthと等しい)には、TU分割フラグsplit_transform_flagを分割しないことを示す0として導出する(S1732)。
<<P6:スライス単位での解像度変更>>
上記までは、CTUレベルで残差モードを復号する例を説明してきたが、スライス単位で残差モードを復号しても良い。以下、CTUレベルで残差モードを復号する例を説明する。残差モードは、量子化予測残差を低減するものであり、ある領域の画像を少ない符号量で符号化できる。また、同じ大きさの領域を、それより小さな変換ブロックで復号することができる。逆にいえば、本来の変換ブロックの最大サイズ(例えば64×64)よりも大きな領域(例えば128×128)を変換することができる。そのため、大きなブロックを用いた符号化に有効である。よって、以下の例では、残差モードを解像度変換モードと捉え、残差モード(以下、解像度変換モード)に応じて、符号化ツリーブロックサイズ(最大ブロックサイズ)を変更する画像復号装置を説明する。
上記までは、CTUレベルで残差モードを復号する例を説明してきたが、スライス単位で残差モードを復号しても良い。以下、CTUレベルで残差モードを復号する例を説明する。残差モードは、量子化予測残差を低減するものであり、ある領域の画像を少ない符号量で符号化できる。また、同じ大きさの領域を、それより小さな変換ブロックで復号することができる。逆にいえば、本来の変換ブロックの最大サイズ(例えば64×64)よりも大きな領域(例えば128×128)を変換することができる。そのため、大きなブロックを用いた符号化に有効である。よって、以下の例では、残差モードを解像度変換モードと捉え、残差モード(以下、解像度変換モード)に応じて、符号化ツリーブロックサイズ(最大ブロックサイズ)を変更する画像復号装置を説明する。
<P6共通:スライス別の残差モード>
図49は、本発明の一実施形態に係るピクチャ単位で異なる符号化ツリーブロック(残差モードの値)を用いる構成を説明する図である。本実施形態の動画像符号化装置1のCU復号部11は、符号化データ#1からスライス先頭のスライスヘッダを復号し、スライスヘッダで定義される解像度変換モード(残差モード)を復号する。さらにCU復号部11は、解像度変換モード(残差モード)に応じて、ピクチャ及びスライスを分割する最上位のブロックであるツリーブロック(CTU)のサイズを変更する。例えば、解像度変換モード(残差モード)が第1のモード(=0)に比べ、解像度変換モード(残差モード)が第1のモード(=0)の場合のCTUサイズを2倍とする。より具体的には、CU復号部11は、スライス先頭で解像度変換モード(残差モード)を復号し、解像度変換モード(残差モード)が第1のモード(=0)の場合には、復号された所定のツリーブロックサイズ(CTUサイズ)をピクチャ及びスライスを分割する最上位のブロックであるツリーブロック(CTU)のサイズ(CTUサイズ)として用いて復号を行い、残差モードが第2のモード(=1)の場合には、復号された所定の符号化ツリーブロックサイズの2倍のツリーブロックサイズ(CTUサイズ)をCTUサイズとして用いて復号を行う。既に、P1:残差モードに応じたTU情報復号において説明した通り、TU情報復号部13は、対象スライスの残差モードrru_flagが第1のモード(=0)の場合には、対象スライスに属する対象CUの対象TUに対応する領域のサイズ(TUサイズ)の量子化予測残差を復号し、残差モードrru_flagが第2のモード(!=0)の場合には、TUサイズの半分のサイズの量子化予測残差を復号する。また、復号された所定の符号化ツリーブロックサイズの領域の画像を復号するために、残差モードが第2のモードの場合には、P2aで説明したように予測残差画像を拡大しても良いし、P2bで説明したように復号画像を拡大しても良い。本構成は、以下に説明するP6a、P6bの構成でも同様である。
図49は、本発明の一実施形態に係るピクチャ単位で異なる符号化ツリーブロック(残差モードの値)を用いる構成を説明する図である。本実施形態の動画像符号化装置1のCU復号部11は、符号化データ#1からスライス先頭のスライスヘッダを復号し、スライスヘッダで定義される解像度変換モード(残差モード)を復号する。さらにCU復号部11は、解像度変換モード(残差モード)に応じて、ピクチャ及びスライスを分割する最上位のブロックであるツリーブロック(CTU)のサイズを変更する。例えば、解像度変換モード(残差モード)が第1のモード(=0)に比べ、解像度変換モード(残差モード)が第1のモード(=0)の場合のCTUサイズを2倍とする。より具体的には、CU復号部11は、スライス先頭で解像度変換モード(残差モード)を復号し、解像度変換モード(残差モード)が第1のモード(=0)の場合には、復号された所定のツリーブロックサイズ(CTUサイズ)をピクチャ及びスライスを分割する最上位のブロックであるツリーブロック(CTU)のサイズ(CTUサイズ)として用いて復号を行い、残差モードが第2のモード(=1)の場合には、復号された所定の符号化ツリーブロックサイズの2倍のツリーブロックサイズ(CTUサイズ)をCTUサイズとして用いて復号を行う。既に、P1:残差モードに応じたTU情報復号において説明した通り、TU情報復号部13は、対象スライスの残差モードrru_flagが第1のモード(=0)の場合には、対象スライスに属する対象CUの対象TUに対応する領域のサイズ(TUサイズ)の量子化予測残差を復号し、残差モードrru_flagが第2のモード(!=0)の場合には、TUサイズの半分のサイズの量子化予測残差を復号する。また、復号された所定の符号化ツリーブロックサイズの領域の画像を復号するために、残差モードが第2のモードの場合には、P2aで説明したように予測残差画像を拡大しても良いし、P2bで説明したように復号画像を拡大しても良い。本構成は、以下に説明するP6a、P6bの構成でも同様である。
<P6a:スライス位置導出>
図50は、本発明の一実施形態に係るピクチャ内でスライス毎に異なる符号化ツリーブロック(最上位ブロックサイズ)を用いる構成を説明する図である。本発明では、ピクチャをスライス単位に分割して、上記スライスをさらに符号化ツリーブロック単位に分割して復号する画像復号装置において、スライス内の符号化ツリーブロック(最上位ブロックのサイズ、CTUサイズ)を可変とすることを特徴とする画像復号装置である。CU復号部11は、スライスヘッダにおいて、上記解像度を示す情報である解像度変更モード(残差モード)を復号する残差モード復号部を備える。これにより、ピクチャよりも細かい単位で、量子化予測残差の符号量を制御することができるという効果を奏する。
図50は、本発明の一実施形態に係るピクチャ内でスライス毎に異なる符号化ツリーブロック(最上位ブロックサイズ)を用いる構成を説明する図である。本発明では、ピクチャをスライス単位に分割して、上記スライスをさらに符号化ツリーブロック単位に分割して復号する画像復号装置において、スライス内の符号化ツリーブロック(最上位ブロックのサイズ、CTUサイズ)を可変とすることを特徴とする画像復号装置である。CU復号部11は、スライスヘッダにおいて、上記解像度を示す情報である解像度変更モード(残差モード)を復号する残差モード復号部を備える。これにより、ピクチャよりも細かい単位で、量子化予測残差の符号量を制御することができるという効果を奏する。
図51は、本発明の一実施形態に係るピクチャ内でスライス毎に異なる符号化ツリーブロック(最上位ブロックサイズ)を用いる場合のスライス先頭位置の課題を説明する図である。図51(a)は、符号化ツリーブロックサイズが64×64(解像度変換モード=0)で、0から4のCTUから構成されるスライス#0と、符号化ツリーブロックサイズが128×128(解像度変換モード=1)で、5から7のCTUから構成されるスライス#1を示す。図51(b)は、符号化ツリーブロックサイズが128×128(解像度変換モード=1)で、0から2のCTUから構成されるスライス#0と、符号化ツリーブロックサイズが64×64(解像度変換モード=0)で、3から4のCTUから構成されるスライス#1を示す、符号化ツリーブロックサイズが64×64(解像度変換モード=0)で、5から7のCTUから構成されるスライス#2を示す。スライスアドレスslice_segment_addressがスライス先頭で符号化される場合において、図51(a)のスライス#1と図51(b)のスライス#3は、同じ5のスライスアドレスslice_segment_addressを有するが、スライス先頭の位置(水平位置、垂直位置)が異なる。従来、ピクチャ内で同じ符号化ツリーブロックサイズの場合には、スライスアドレスslice_segment_addressから一意に、スライス先頭の位置を導出することができた。しかしながら、ピクチャ内でスライス毎に符号化ツリーブロックサイズが異なる場合には、スライスアドレスslice_segment_address及び対象スライスの符号化ツリーブロックサイズだけではなく、対象スライスよりもピクチャ上で先に位置するスライスの符号化ツリーブロックサイズにも依存する。従って、スライスアドレスslice_segment_addressから、スライス先頭の位置を導出することができないという課題がある。
図52は、本発明の一実施形態に係るピクチャ内でスライス毎に異なる符号化ツリーブロック(最上位ブロックサイズ)を用いる場合に、スライス先頭位置の水平位置slice_addr_x、垂直位置slice_addr_yを符号化データに含める例を説明する図である。本例では、明示的に、スライス先頭で、スライス先頭位置の水平位置、垂直位置を復号することにより、スライス先頭の位置を導出する。例えば、スライス先頭の水平位置を示す値と垂直位置は、ピクチャ内で利用可能な符号化ツリーブロックの最小値に基づいて設定しても良いし、固定のサイズに基づいて説呈しても良い。図52の(a)例では、スライス#1に対して、(水平位置slice_addr_x、垂直位置slice_addr_y)=(0、1)。ここでは、32×32ブロックに基づいて設定しているため、スライス#1の先頭座標は、(32×slice_addr_x、32×slice_addr_y)の(0、32)となる。図52の(b)例では、スライス#1に対して、(水平位置slice_addr_x、垂直位置slice_addr_y)=(0、2)。スライス#2に対して、(水平位置slice_addr_x、垂直位置slice_addr_y)=(2、2)。ここでは、32×32ブロックに基づいて設定しているため、スライス#1、スライス#2の先頭座標は各々(0、32)、(64、64)となる。つまり、スライス先頭の水平位置を示す値と垂直位置を示す値を復号することを特徴とする。なお、先頭スライスは、スライス先頭位置の水平位置、垂直位置は常に(0,0)であるため、先頭スライス以外のスライスにおいて、スライス先頭位置の水平位置、垂直位置を復号する構成としても良い。
上記構成の画像復号装置によれば、ピクチャ内でスライス毎に異なる符号化ツリーブロック(最上位ブロックサイズ)を用いる場合においても、スライス先頭の位置が特定可能であるという効果を奏する。
図53は、本発明の一実施形態に係るピクチャ内でスライス毎に異なる符号化ツリーブロック(最上位ブロックサイズ)を用いる場合に、スライス先頭位置の水平位置、垂直位置のスライスアドレスslice_segment_addressからの導出方法を説明する図である。本例では、ピクチャ内で利用可能な符号化ツリーブロックの最小値MinCtbSizeYを用いて、スライスアドレスslice_segment_addressから、スライス先頭の位置(xSicePos、ySlicePos)を導出する。まず、スライスアドレスslice_segment_addressをSliceAddrRsに代入する。ピクチャの幅pic_width_in_luma_samplesと高さpic_height_in_luma_samplesから、以下のように、ピクチャを構成する符号化ツリーブロックの最小値MinCtbSizeYの幅PicWidthInMinCtbsYと高さPicHeightInMinCtbsYを導出する。
MinCtbSizeY = 1 << MinCtbLog2SizeY
PicWidthInMinCtbsY = Ceil( pic_width_in_luma_samples ÷MinCtbSizeY )
PicHeightInMinCtbsY = Ceil( pic_height_in_luma_samples ÷MinCtbSizeY )
なお、Ceil(x)は、実数xを、x以上の最小の整数に変換する関数である。続いて、スライス先頭の位置(xSicePos、ySlicePos)を以下の式から導出する。
PicWidthInMinCtbsY = Ceil( pic_width_in_luma_samples ÷MinCtbSizeY )
PicHeightInMinCtbsY = Ceil( pic_height_in_luma_samples ÷MinCtbSizeY )
なお、Ceil(x)は、実数xを、x以上の最小の整数に変換する関数である。続いて、スライス先頭の位置(xSicePos、ySlicePos)を以下の式から導出する。
xSlicePos = (SliceAddrRs% PicWidthInMinCtbsY ) << MinCtbLog2SizeY
ySlicePos = (SliceAddrRs % PicWidthInMinCtbsY ) << MinCtbLog2SizeY
逆にいえば、スライスアドレスslice_segment_addressを、ピクチャ内で利用可能な符号化ツリーブロックの最小値に基づいて設定する。図53の例では、利用可能な符号化ツリーブロックサイズは64×64と128×128であるから、最小値は64×64である。図53(a)では、スライス#1の先頭アドレスを5と設定する(復号する)。括弧内の値が、符号化ツリーブロックサイズが64×64である場合の各領域の番号を示し、この番号が、スライス先頭のアドレスとして符号化される。図53(b)では、スライス#1の先頭アドレスを10と設定する(復号する)。括弧内の値が、符号化ツリーブロックサイズが64×64である場合の各領域の番号を示し、この番号が、スライス先頭のアドレスとして符号化される。
ySlicePos = (SliceAddrRs % PicWidthInMinCtbsY ) << MinCtbLog2SizeY
逆にいえば、スライスアドレスslice_segment_addressを、ピクチャ内で利用可能な符号化ツリーブロックの最小値に基づいて設定する。図53の例では、利用可能な符号化ツリーブロックサイズは64×64と128×128であるから、最小値は64×64である。図53(a)では、スライス#1の先頭アドレスを5と設定する(復号する)。括弧内の値が、符号化ツリーブロックサイズが64×64である場合の各領域の番号を示し、この番号が、スライス先頭のアドレスとして符号化される。図53(b)では、スライス#1の先頭アドレスを10と設定する(復号する)。括弧内の値が、符号化ツリーブロックサイズが64×64である場合の各領域の番号を示し、この番号が、スライス先頭のアドレスとして符号化される。
つまり、スライス先頭の先頭アドレスを示す値を復号し、選択肢となる最上位ブロックサイズの内の最小のブロックサイズに基づいて、スライス先頭位置または対象ブロックの水平位置と垂直位置を導出することを特徴とする。
上記構成の画像復号装置によれば、ピクチャ内でスライス毎に異なる符号化ツリーブロック(最上位ブロックサイズ)を用いる場合においても、スライス先頭の位置が特定可能であるという効果を奏する。
<P6b:解像度変更制限>
図54は、比較例のピクチャ毎に異なる符号化ツリーブロックを用いる構成を説明する図である。図54(a)、(b)は、ピクチャの左端以外にスライス境界がある場合(スライス開始位置の水平座標が0以外の場合)においても、符号化ツリーブロックサイズを変更を行う例を示している。この例では、例えば、図54(a)のように、前のスライスの符号化ツリーブロックサイズに比べ、次のスライスの符号化ツリーブロックサイズがピクチャ左端以外で大きくなる例では、「?」と示された領域をどのスライスに割り当て、どのように復号するかが不明である。また、割り当て方法を定義する場合にも処理が複雑になるという課題が有る。図54(b)は、符号化ツリーブロックサイズがピクチャ左端以外のスライスで、前のスライスよりも小さくなる例では、「?」と示された領域をどのスライスに割り当てるかは比較的容易に解決するが、ラスタスキャン以外のスキャン順が必要になるなど、スライス内の符号化ツリーブロックのスキャン順が異なるものとなるなど、処理が複雑になるという課題が有る。
図54は、比較例のピクチャ毎に異なる符号化ツリーブロックを用いる構成を説明する図である。図54(a)、(b)は、ピクチャの左端以外にスライス境界がある場合(スライス開始位置の水平座標が0以外の場合)においても、符号化ツリーブロックサイズを変更を行う例を示している。この例では、例えば、図54(a)のように、前のスライスの符号化ツリーブロックサイズに比べ、次のスライスの符号化ツリーブロックサイズがピクチャ左端以外で大きくなる例では、「?」と示された領域をどのスライスに割り当て、どのように復号するかが不明である。また、割り当て方法を定義する場合にも処理が複雑になるという課題が有る。図54(b)は、符号化ツリーブロックサイズがピクチャ左端以外のスライスで、前のスライスよりも小さくなる例では、「?」と示された領域をどのスライスに割り当てるかは比較的容易に解決するが、ラスタスキャン以外のスキャン順が必要になるなど、スライス内の符号化ツリーブロックのスキャン順が異なるものとなるなど、処理が複雑になるという課題が有る。
再度、図50を用いて、解像度変更制限について説明する。本実施形態の画像復号装置は、図50に示すようにスライス開始位置がピクチャ左端である場合のみ(スライス開始位置の水平位置が0である場合のみ)で、符号化ツリーブロックサイズ(最上位ブロックサイズ)の変更を行う。つまり、スライス開始位置がピクチャ左端もしくはタイル左端である場合のみ、前のスライスと異なる符号化ツリーブロックサイズを適用する。例えば、図50(a)は、符号化ツリーブロックサイズがピクチャ左端で大きくなる例であり、図50(b)は、符号化ツリーブロックサイズがピクチャ左端で小さくなる例である。
図55は、本発明の一実施形態に係るピクチャの左端に位置するスライスのみで、解像度変更(符号化ツリーブロックの変更)処理を行う例を示す構成のフローチャートである。図55に示すように、本発明の画像復号装置1は、あるスライスのスライス開始位置の水平位置が0である場合のみ(スライス開始位置がピクチャ左端)上記あるスライスの前の(直前の)スライスの解像度変換モードと異なる解像度変換モード(残差モード)を適用する。これはすなわち、あるスライスのスライス開始位置の水平位置が0である場合のみ(スライス開始位置がピクチャ左端)、上記あるスライスの直前の前のスライスと異なる符号化ツリーブロックサイズを用いる。なお、ピクチャを矩形に分割するタイルがスライスの上位構造として用いられる(タイルがスライスを含む)場合には、ピクチャ左端に限らずタイル左端において、解像度変換モード変更(符号化ツリーブロックサイズ変更)を行っても良い。すなわち、本発明の画像復号装置1は、スライス開始位置の水平位置が0もしくはタイル内水平位置が0である場合のみ(スライス開始位置がピクチャ左端もしくはタイルの左端)、前のスライスと異なる解像度変換モード(残差モード)を適用する。本発明の画像復号装置1は、スライスのスライス開始位置の水平位置が0もしくはタイル内水平位置が0である場合のみ(スライス開始位置がピクチャ左端もしくはタイルの左端)、上記スライスの前のスライスと異なる符号化ツリーブロックサイズを適用する。
上記は、本発明の画像復号装置1は、同一ピクチャ内の前のスライスの符号化ツリーブロックサイズと後のスライスの最上位ブロックサイズ(符号化ツリーブロックサイズ)は、後のスライスのスライス開始位置がピクチャ左端(もしくはタイル左端)以外の場合には、等しくなくてはならない、ような符号化データ#1を復号することにより、処理を複雑化することなく、最上位ブロックサイズを変更することができる。本発明の画像復号装置1は、後のスライスのスライス開始位置のピクチャ内水平位置もしくはタイル内水平位置が0の場合以外には、互いに前後するスライスの最上位ブロックサイズは等しくなければならない、ような符号化データ#1を復号する。
図55に示す構成の画像復号装置によれば、スライス毎に異なる符号化ツリーブロック(最上位ブロックサイズ)を用いる場合においてピクチャの左端のみで、解像度変更(符号化ツリーブロックの変更)処理を行うため、符号化ツリーブロックのスキャン処理が容易になるという効果を奏する。
〔動画像符号化装置〕
以下において、本実施形態に係る動画像符号化装置2について、図56を参照して説明する。
以下において、本実施形態に係る動画像符号化装置2について、図56を参照して説明する。
(動画像符号化装置の概要)
動画像符号化装置2は、概略的に言えば、入力画像#10を符号化することによって符号化データ#1を生成し、出力する装置である。
動画像符号化装置2は、概略的に言えば、入力画像#10を符号化することによって符号化データ#1を生成し、出力する装置である。
(動画像符号化装置の構成)
まず、図56を用いて、動画像符号化装置2の構成例について説明する。図56は、動画像符号化装置2の構成について示す機能ブロック図である。図56に示すように、動画像符号化装置2は、符号化設定部21、逆量子化・逆変換部22、予測画像生成部23、加算器24、フレームメモリ25、減算器26、変換・量子化部27、および符号化データ生成部(適応処理手段)29を備えている。
まず、図56を用いて、動画像符号化装置2の構成例について説明する。図56は、動画像符号化装置2の構成について示す機能ブロック図である。図56に示すように、動画像符号化装置2は、符号化設定部21、逆量子化・逆変換部22、予測画像生成部23、加算器24、フレームメモリ25、減算器26、変換・量子化部27、および符号化データ生成部(適応処理手段)29を備えている。
符号化設定部21は、入力画像#10に基づいて、符号化に関する画像データおよび各種の設定情報を生成する。
具体的には、符号化設定部21は、次の画像データおよび設定情報を生成する。
まず、符号化設定部21は、入力画像#10を、スライス単位、ツリーブロック単位に順次分割することにより、対象CUについてのCU画像#100を生成する。
また、符号化設定部21は、分割処理の結果に基づいて、ヘッダ情報H’を生成する。ヘッダ情報H’は、(1)対象スライスに属するツリーブロックのサイズ、形状および対象スライス内での位置についての情報、並びに、(2)各ツリーブロックに属するCUのサイズ、形状および対象ツリーブロック内での位置についてのCU情報CU’を含んでいる。
さらに、符号化設定部21は、CU画像#100、および、CU情報CU’を参照して、PT設定情報PTI’を生成する。PT設定情報PTI’には、(1)対象CUの各PUへの可能な分割パターン、および、(2)各PUに割り付ける可能な予測モード、の全ての組み合わせに関する情報が含まれる。
符号化設定部21は、CU画像#100を減算器26に供給する。また、符号化設定部21は、ヘッダ情報H’を符号化データ生成部29に供給する。また、符号化設定部21は、PT設定情報PTI’を予測画像生成部23に供給する。
逆量子化・逆変換部22は、変換・量子化部27より供給される、ブロック毎の量子化予測残差を、逆量子化、および、逆直交変換することによって、ブロック毎の予測残差を復元する。逆直交変換については、図1に示す逆量子化・逆変換部13について、既に説明したとおりであるので、ここではその説明を省略する。
また、逆量子化・逆変換部22は、ブロック毎の予測残差を、TT分割情報(後述)により指定される分割パターンに従って統合し、対象CUについての予測残差Dを生成する。逆量子化・逆変換部22は、生成した対象CUについての予測残差Dを、加算器24に供給する。
予測画像生成部23は、フレームメモリ25に記録されている局所復号画像P’、および、PT設定情報PTI’を参照して、対象CUについての予測画像Predを生成する。予測画像生成部23は、予測画像生成処理により得られた予測パラメータを、PT設定情報PTI’に設定し、設定後のPT設定情報PTI’を符号化データ生成部29に転送する。なお、予測画像生成部23による予測画像生成処理は、動画像復号装置1の備える予測画像生成部14と同様であるので、ここでは説明を省略する。
加算器24は、予測画像生成部23より供給される予測画像Predと、逆量子化・逆変換部22より供給される予測残差Dとを加算することによって、対象CUについての復号画像Pを生成する。
フレームメモリ25には、復号された復号画像Pが順次記録される。フレームメモリ25には、対象ツリーブロックを復号する時点において、当該対象ツリーブロックよりも先に復号された全てのツリーブロック(例えば、ラスタスキャン順で先行する全てのツリーブロック)に対応する復号画像が、当該復号画像Pの復号に用いられたパラメータと共に、記録されている。
減算器26は、CU画像#100から予測画像Predを減算することによって、対象CUについての予測残差Dを生成する。減算器26は、生成した予測残差Dを、変換・量子化部27に供給する。
変換・量子化部27は、予測残差Dに対して、直交変換および量子化を行うことで量子化予測残差を生成する。なお、ここで直交変換とは、画素領域から周波数領域への直交変換のことをさす。また、逆直交変換の例としては、DCT変換(Discrete Cosine Transform)、およびDST変換(Discrete Sine Transform)等が挙げられる。
具体的には、変換・量子化部27は、CU画像#100、および、CU情報CU’を参照し、対象CUの1または複数のブロックへの分割パターンを決定する。また、決定された分割パターンに従って、予測残差Dを、各ブロックについての予測残差に分割する。
また、変換・量子化部27は、各ブロックについての予測残差を直交変換することによって周波数領域における予測残差を生成した後、当該周波数領域における予測残差を量子化することによってブロック毎の量子化予測残差を生成する。
また、変換・量子化部27は、生成したブロック毎の量子化予測残差と、対象CUの分割パターンを指定するTT分割情報と、対象CUの各ブロックへの可能な全分割パターンに関する情報とを含むTT設定情報TTI’を生成する。変換・量子化部27は、生成したTT設定情報TTI’を逆量子化・逆変換部22および符号化データ生成部29に供給する。
符号化データ生成部29は、ヘッダ情報H’、TT設定情報TTI’、およびPT設定情報PTI’を符号化し、符号化したヘッダ情報H、TT設定情報TTI、およびPT設定情報PTIを多重化して符号化データ#1を生成し、出力する。
(動画像復号装置との対応関係)
動画像符号化装置2は、動画像復号装置1の各構成と対応する構成を含む。ここで、対応とは、同様の処理、または、逆の処理を行う関係にあるということである。
動画像符号化装置2は、動画像復号装置1の各構成と対応する構成を含む。ここで、対応とは、同様の処理、または、逆の処理を行う関係にあるということである。
例えば、上述したように、動画像復号装置1が備える予測画像生成部14の予測画像生成処理と、動画像符号化装置2が備える予測画像生成部23の予測画像生成処理とは、同様である。
例えば、動画像復号装置1において、ビット列から、シンタックス値を復号する処理は、動画像符号化装置2において、シンタックス値から、ビット列を符号化する処理と逆の処理としての対応となっている。
以下では、動画像符号化装置2における各構成が、動画像復号装置1のCU情報復号部11、PU情報復号部12、およびTU情報復号部13とどのような対応となっているかについて説明する。これにより、動画像符号化装置2における各構成の動作・機能はより詳細に明らかになるだろう。
符号化データ生成部29は、復号モジュール10に対応している。より詳しくいえば、復号モジュール10が、符号化データおよびシンタックス種別に基づいてシンタックス値を導出するのに対して、符号化データ生成部29は、シンタックス値およびシンタックス種別に基づいて符号化データを生成する。
符号化設定部21は、上述した動画像復号装置1のCU情報復号部11に対応している。符号化設定部21と、上述したCU情報復号部11とを比較すると次のとおりである。
予測画像生成部23は、上述した動画像復号装置1のPU情報復号部12および予測画像生成部14に対応している。これらを比較すると次のとおりである。
上述のとおり、PU情報復号部12は、動き情報に係る符号化データとシンタックス種別とを復号モジュール10に供給し、復号モジュール10により復号された動き情報に基づいて動き補償パラメータを導出する。また、予測画像生成部14は、導出された動き補償パラメータに基づいて予測画像を生成する。
これに対して、予測画像生成部23は、予測画像生成処理において、動き補償パラメータを決定し、動き補償パラメータに係るシンタックス値とシンタックス種別とを符号化データ生成部29に供給する。
変換・量子化部27は、上述した動画像復号装置1のTU情報復号部13および逆量子化・逆変換部15に対応している。これらを比較すると次のとおりである。
上述したTU情報復号部13が備えるTU分割設定部131は、ノードの分割を行うのか否かを示す情報に係る符号化データおよびシンタックス種別を復号モジュール10に供給し、復号モジュール10により復号されたノードの分割を行うのか否かを示す情報に基づいてTU分割を行う。
さらに、上述したTU情報復号部13が備える変換係数復元部132は、判定情報および変換係数に係る符号化データおよびシンタックス種別を復号モジュール10に供給し、復号モジュール10により復号された判定情報および変換係数に基づいて変換係数を導出する。
これに対して、変換・量子化部27は、TU分割の分割方式を決定し、ノードの分割を行うのか否かを示す情報に係るシンタックス値およびシンタックス種別を符号化データ生成部29に供給する。
また、変換・量子化部27は、予測残差を変換・量子化して得られる量子化変換係数に係るシンタックス値およびシンタックス種別を符号化データ生成部29に供給する。
本実施形態の動画像符号化装置2は、ピクチャを符号化ツリーブロック単位に分割して符号化する画像符号化装置において、上記符号化ツリーブロックを、ルートの符号化ツリーとして再帰的に分割する符号化ツリー分割部を備え、上記符号化ツリーを分割するか否かを示す、符号化ユニット分割フラグを符号化するCU分割フラグ復号部と、上記符号化ツリー以下の残差を第1のモードで復号するか、第1のモードとは異なる第2のモードで符号化するかを示す、残差モードを符号化する残差モード復号部を備える。
<<P1:残差モードに応じたTU情報符号化>>
また、上述した変換・量子化部27の備える変換部は、実際の変換ブロックのサイズ(対象対象TUサイズ)よりも小さい(例えば対象TUサイズの1/2の残差情報)だけの量子化予測残差を符号化データとして符号化することにより残差情報の符号量を低減させる効果を奏する。また、残差情報の符号化処理を簡略化する効果を奏する。 <<P2:残差モードに応じたブロック画素値符号化の構成>>
また、上述した変換・量子化部27の備える変換部は、残差モードが第2のモードの場合には、予測残差を縮小してから変換する。
また、上述した変換・量子化部27の備える変換部は、実際の変換ブロックのサイズ(対象対象TUサイズ)よりも小さい(例えば対象TUサイズの1/2の残差情報)だけの量子化予測残差を符号化データとして符号化することにより残差情報の符号量を低減させる効果を奏する。また、残差情報の符号化処理を簡略化する効果を奏する。 <<P2:残差モードに応じたブロック画素値符号化の構成>>
また、上述した変換・量子化部27の備える変換部は、残差モードが第2のモードの場合には、予測残差を縮小してから変換する。
さらに、上述したTU情報復号部13の備える逆量子化・逆変換部15は、残差モードが第2のモードの場合には、変換画像を拡大する(P2Aに対応)または復号画像(P2B)に対応する。従って、実際の対象領域よりも小さい領域サイズの予測残差情報(例えば対象領域の1/2のサイズの予測残差情報)だけを符号化することにより、対象領域の復号画像を導出することができ、残差情報の符号量を低減させる効果を奏する。また、残差情報の符号化処理を簡略化する効果を奏する。
<<P3:残差モードに応じた量子化制御の構成例>>
動画像符号化装置2は、さらに残差を変換、量子化する変換・量子化部27と、量子化された残差を復号化する符号化データ生成部29を備え、変換・量子化部27は、残差モードが「第2のモード」(0)の場合には、第1の量子化パラメータにより量子化を行い、量子化部は、残差モードが「第1のモード」(1)の場合には、第1の量子化パラメータから導出される第2の量子化パラメータにより量子化をする。
動画像符号化装置2は、さらに残差を変換、量子化する変換・量子化部27と、量子化された残差を復号化する符号化データ生成部29を備え、変換・量子化部27は、残差モードが「第2のモード」(0)の場合には、第1の量子化パラメータにより量子化を行い、量子化部は、残差モードが「第1のモード」(1)の場合には、第1の量子化パラメータから導出される第2の量子化パラメータにより量子化をする。
動画像符号化装置2は、さらに量子化パラメータ修正値を符号化する量子化パラメータ制御情報符号化を備え、逆量子化部は、第2の量子化パラメータを第1の量子化パラメータに量子化ステップ修正値を加算することで導出する。
また、上述したTU情報復号部13の備えるTU符号化部によれば、残差モードに応じて量子化パラメータqPを制御することにより、残差モードの対象となる領域の残差情報の符号量の低減量を適切に制御できる効果を奏する。
<<P4:残差モード符号化部の構成>>
さらに、残差モード符号化部は、最上位の符号化ツリーでのみ、残差モード(rru_flag)を符号化データから符号化し、それより下位の符号化ツリーでは、残差モード(rru_flag)を符号化しない。
さらに、残差モード符号化部は、最上位の符号化ツリーでのみ、残差モード(rru_flag)を符号化データから符号化し、それより下位の符号化ツリーでは、残差モード(rru_flag)を符号化しない。
さらに、残差モード符号化部は、指定された階層の符号化ツリーでのみ、残差モードを符号化し、それより下位の符号化ツリーでは、指定された階層の符号化ツリー以外では残差モードの符号化を省略する。
さらに、分割フラグ符号化部は、残差モードが「第2のモードで符号化すること」を示す場合には、残差モードが「第1のモードで符号化すること」を示す場合に比べて分割する階層を1つ減らす。
さらに、分割フラグ符号化部は、残差モードが第1のモードである場合は、符号化ツリーのサイズである符号化ブロックサイズlog2CbSizeが最小符号化ブロックMinCbLog2Sizeよりも大きい場合に、符号化データからCU分割フラグを符号化し、残差モードが第2のモードである場合は、符号化ツリーのサイズである符号化ブロックサイズlog2CbSizeが最小符号化ブロックMinCbLog2Size+1よりも大きい場合に、符号化データからCU分割フラグを符号化し、それ以外の場合には、CU分割フラグの符号化を省略し、CU分割フラグを分割しないことを示す0と設定する。
さらに、残差モード符号化部は、これ以上、分割を行わない符号化ツリー、すなわち、リーフとなる符号化ツリーである符号化ユニットにおいて、残差モードを符号化する。
さらに、動画像符号化装置2は、これ以上、分割を行わない符号化ツリー、すなわち、リーフとなる符号化ツリーである符号化ユニットにおいて、残差の符号化を省略して符号化するか否かを示すスキップフラグを符号化するスキップフラグ符号化部を備え、残差モード符号化部は、符号化ユニットにおいて、スキップフラグが残差を符号化しないことを示す場合に、残差モードを符号化し、それ以外では残差モードを符号化しない。
さらに、動画像符号化装置2は、符号化ユニットが残差を含むか否かを示すCBFフラグ(rqt_root_flag)を符号化するCBFフラグ符号化部を備え、残差モード符号化部は、CBFフラグが残差が存在することを示す場合(!=0)には、残差モードを符号化し、それ以外の場合には、残差モードが第1のモードであると導出する。
また、上述したTU情報符号化部13の備えるTU符号化部によれば、残差モードrru_flagにより残差の構成を変化させた場合にも、自由度の高い4分木での分割が可能になるという効果を奏する。
<<P5:残差モード符号化部の構成>>
動画像符号化装置2は、符号化ユニットをさらに予測ブロック(PU)に分割するか否かを示すPU分割モードを符号化するPU情報符号化部12(PU分割モード符号化部)を備え、PU分割モード符号化部は、残差モードが「第1のモード」を示す場合には、PU分割モードの符号化を省略し、残差モードが「第2のモード」を示す場合には、PU分割モードを符号化する。PU情報符号化部12は、残差モードが「第1のモード」を示す場合。つまり、PU分割モードの符号化が省略される場合には、PU分割しないことを示す値(2Nx2N)を設定する。
動画像符号化装置2は、符号化ユニットをさらに予測ブロック(PU)に分割するか否かを示すPU分割モードを符号化するPU情報符号化部12(PU分割モード符号化部)を備え、PU分割モード符号化部は、残差モードが「第1のモード」を示す場合には、PU分割モードの符号化を省略し、残差モードが「第2のモード」を示す場合には、PU分割モードを符号化する。PU情報符号化部12は、残差モードが「第1のモード」を示す場合。つまり、PU分割モードの符号化が省略される場合には、PU分割しないことを示す値(2Nx2N)を設定する。
動画像符号化装置2は、符号化ユニットをさらに変換ブロック(TU)に分割するか否かを示すTU分割フラグsplit_transform_flagを符号化するTU分割設定部131を備え、TU分割設定部131は、残差モードが「第1のモード」を示す場合には、符号化ブロックサイズlog2CbSizeが最大変換ブロックMaxTbLog2SizeY+1以下かつ最小変換ブロックMinCbLog2Size+1より大きい場合に、TU分割フラグsplit_transform_flagを符号化し、残差モードが「第2のモード」を示す場合には、符号化ブロックサイズlog2CbSizeが最大変換ブロックMaxTbLog2SizeY以下かつ最小変換ブロックMinCbLog2Sizeより大きい場合に、TU分割フラグ(split_transform_flag)を符号化し、それ以外(符号化ブロックサイズlog2CbSizeが最大変換ブロックMaxTbLog2SizeYより大きい、または、最小変換ブロックMinCbLog2Size以下)の場合には、TU分割フラグsplit_transform_flagの符号化を省略し、分割しないことを示す値を設定する。
〔応用例〕
上述した動画像符号化装置2及び動画像復号装置1は、動画像の送信、受信、記録、再生を行う各種装置に搭載して利用することができる。なお、動画像は、カメラ等により撮像された自然動画像であってもよいし、コンピュータ等により生成された人工動画像(CGおよびGUIを含む)であってもよい。
上述した動画像符号化装置2及び動画像復号装置1は、動画像の送信、受信、記録、再生を行う各種装置に搭載して利用することができる。なお、動画像は、カメラ等により撮像された自然動画像であってもよいし、コンピュータ等により生成された人工動画像(CGおよびGUIを含む)であってもよい。
まず、上述した動画像符号化装置2及び動画像復号装置1を、動画像の送信及び受信に利用できることを、図57を参照して説明する。
図57の(a)は、動画像符号化装置2を搭載した送信装置PROD_Aの構成を示したブロック図である。図57の(a)に示すように、送信装置PROD_Aは、動画像を符号化することによって符号化データを得る符号化部PROD_A1と、符号化部PROD_A1が得た符号化データで搬送波を変調することによって変調信号を得る変調部PROD_A2と、変調部PROD_A2が得た変調信号を送信する送信部PROD_A3と、を備えている。上述した動画像符号化装置2は、この符号化部PROD_A1として利用される。
送信装置PROD_Aは、符号化部PROD_A1に入力する動画像の供給源として、動画像を撮像するカメラPROD_A4、動画像を記録した記録媒体PROD_A5、動画像を外部から入力するための入力端子PROD_A6、及び、画像を生成または加工する画像処理部A7を更に備えていてもよい。図57の(a)においては、これら全てを送信装置PROD_Aが備えた構成を例示しているが、一部を省略しても構わない。
なお、記録媒体PROD_A5は、符号化されていない動画像を記録したものであってもよいし、伝送用の符号化方式とは異なる記録用の符号化方式で符号化された動画像を記録したものであってもよい。後者の場合、記録媒体PROD_A5と符号化部PROD_A1との間に、記録媒体PROD_A5から読み出した符号化データを記録用の符号化方式に従って復号する復号部(不図示)を介在させるとよい。
図57の(b)は、動画像復号装置1を搭載した受信装置PROD_Bの構成を示したブロック図である。図57の(b)に示すように、受信装置PROD_Bは、変調信号を受信する受信部PROD_B1と、受信部PROD_B1が受信した変調信号を復調することによって符号化データを得る復調部PROD_B2と、復調部PROD_B2が得た符号化データを復号することによって動画像を得る復号部PROD_B3と、を備えている。上述した動画像復号装置1は、この復号部PROD_B3として利用される。
受信装置PROD_Bは、復号部PROD_B3が出力する動画像の供給先として、動画像を表示するディスプレイPROD_B4、動画像を記録するための記録媒体PROD_B5、及び、動画像を外部に出力するための出力端子PROD_B6を更に備えていてもよい。図57の(b)においては、これら全てを受信装置PROD_Bが備えた構成を例示しているが、一部を省略しても構わない。
なお、記録媒体PROD_B5は、符号化されていない動画像を記録するためのものであってもよいし、伝送用の符号化方式とは異なる記録用の符号化方式で符号化されたものであってもよい。後者の場合、復号部PROD_B3と記録媒体PROD_B5との間に、復号部PROD_B3から取得した動画像を記録用の符号化方式に従って符号化する符号化部(不図示)を介在させるとよい。
なお、変調信号を伝送する伝送媒体は、無線であってもよいし、有線であってもよい。また、変調信号を伝送する伝送態様は、放送(ここでは、送信先が予め特定されていない送信態様を指す)であってもよいし、通信(ここでは、送信先が予め特定されている送信態様を指す)であってもよい。すなわち、変調信号の伝送は、無線放送、有線放送、無線通信、及び有線通信の何れによって実現してもよい。
例えば、地上デジタル放送の放送局(放送設備など)/受信局(テレビジョン受像機など)は、変調信号を無線放送で送受信する送信装置PROD_A/受信装置PROD_Bの一例である。また、ケーブルテレビ放送の放送局(放送設備など)/受信局(テレビジョン受像機など)は、変調信号を有線放送で送受信する送信装置PROD_A/受信装置PROD_Bの一例である。
また、インターネットを用いたVOD(Video On Demand)サービスや動画共有サービスなどのサーバ(ワークステーションなど)/クライアント(テレビジョン受像機、パーソナルコンピュータ、スマートフォンなど)は、変調信号を通信で送受信する送信装置PROD_A/受信装置PROD_Bの一例である(通常、LANにおいては伝送媒体として無線又は有線の何れかが用いられ、WANにおいては伝送媒体として有線が用いられる)。ここで、パーソナルコンピュータには、デスクトップ型PC、ラップトップ型PC、及びタブレット型PCが含まれる。また、スマートフォンには、多機能携帯電話端末も含まれる。
なお、動画共有サービスのクライアントは、サーバからダウンロードした符号化データを復号してディスプレイに表示する機能に加え、カメラで撮像した動画像を符号化してサーバにアップロードする機能を有している。すなわち、動画共有サービスのクライアントは、送信装置PROD_A及び受信装置PROD_Bの双方として機能する。
次に、上述した動画像符号化装置2及び動画像復号装置1を、動画像の記録及び再生に利用できることを、図58を参照して説明する。
図58の(a)は、上述した動画像符号化装置2を搭載した記録装置PROD_Cの構成を示したブロック図である。図58の(a)に示すように、記録装置PROD_Cは、動画像を符号化することによって符号化データを得る符号化部PROD_C1と、符号化部PROD_C1が得た符号化データを記録媒体PROD_Mに書き込む書込部PROD_C2と、を備えている。上述した動画像符号化装置2は、この符号化部PROD_C1として利用される。
なお、記録媒体PROD_Mは、(1)HDD(Hard Disk Drive)やSSD(Solid State Drive)などのように、記録装置PROD_Cに内蔵されるタイプのものであってもよいし、(2)SDメモリカードやUSB(Universal Serial Bus)フラッシュメモリなどのように、記録装置PROD_Cに接続されるタイプのものであってもよいし、(3)DVD(Digital Versatile Disc)やBD(Blu-ray Disc(登録商標))などのように、記録装置PROD_Cに内蔵されたドライブ装置(不図示)に装填されるものであってもよい。
また、記録装置PROD_Cは、符号化部PROD_C1に入力する動画像の供給源として、動画像を撮像するカメラPROD_C3、動画像を外部から入力するための入力端子PROD_C4、動画像を受信するための受信部PROD_C5、及び、画像を生成または加工する画像処理部C6を更に備えていてもよい。図58の(a)においては、これら全てを記録装置PROD_Cが備えた構成を例示しているが、一部を省略しても構わない。
なお、受信部PROD_C5は、符号化されていない動画像を受信するものであってもよいし、記録用の符号化方式とは異なる伝送用の符号化方式で符号化された符号化データを受信するものであってもよい。後者の場合、受信部PROD_C5と符号化部PROD_C1との間に、伝送用の符号化方式で符号化された符号化データを復号する伝送用復号部(不図示)を介在させるとよい。
このような記録装置PROD_Cとしては、例えば、DVDレコーダ、BDレコーダ、HDD(Hard Disk Drive)レコーダなどが挙げられる(この場合、入力端子PROD_C4又は受信部PROD_C5が動画像の主な供給源となる)。また、カムコーダ(この場合、カメラPROD_C3が動画像の主な供給源となる)、パーソナルコンピュータ(この場合、受信部PROD_C5又は画像処理部C6が動画像の主な供給源となる)、スマートフォン(この場合、カメラPROD_C3又は受信部PROD_C5が動画像の主な供給源となる)なども、このような記録装置PROD_Cの一例である。
図58の(b)は、上述した動画像復号装置1を搭載した再生装置PROD_Dの構成を示したブロックである。図58の(b)に示すように、再生装置PROD_Dは、記録媒体PROD_Mに書き込まれた符号化データを読み出す読出部PROD_D1と、読出部PROD_D1が読み出した符号化データを復号することによって動画像を得る復号部PROD_D2と、を備えている。上述した動画像復号装置1は、この復号部PROD_D2として利用される。
なお、記録媒体PROD_Mは、(1)HDDやSSDなどのように、再生装置PROD_Dに内蔵されるタイプのものであってもよいし、(2)SDメモリカードやUSBフラッシュメモリなどのように、再生装置PROD_Dに接続されるタイプのものであってもよいし、(3)DVDやBDなどのように、再生装置PROD_Dに内蔵されたドライブ装置(不図示)に装填されるものであってもよい。
また、再生装置PROD_Dは、復号部PROD_D2が出力する動画像の供給先として、動画像を表示するディスプレイPROD_D3、動画像を外部に出力するための出力端子PROD_D4、及び、動画像を送信する送信部PROD_D5を更に備えていてもよい。図58の(b)においては、これら全てを再生装置PROD_Dが備えた構成を例示しているが、一部を省略しても構わない。
なお、送信部PROD_D5は、符号化されていない動画像を送信するものであってもよいし、記録用の符号化方式とは異なる伝送用の符号化方式で符号化された符号化データを送信するものであってもよい。後者の場合、復号部PROD_D2と送信部PROD_D5との間に、動画像を伝送用の符号化方式で符号化する符号化部(不図示)を介在させるとよい。
このような再生装置PROD_Dとしては、例えば、DVDプレイヤ、BDプレイヤ、HDDプレイヤなどが挙げられる(この場合、テレビジョン受像機等が接続される出力端子PROD_D4が動画像の主な供給先となる)。また、テレビジョン受像機(この場合、ディスプレイPROD_D3が動画像の主な供給先となる)、デジタルサイネージ(電子看板や電子掲示板等とも称され、ディスプレイPROD_D3又は送信部PROD_D5が動画像の主な供給先となる)、デスクトップ型PC(この場合、出力端子PROD_D4又は送信部PROD_D5が動画像の主な供給先となる)、ラップトップ型又はタブレット型PC(この場合、ディスプレイPROD_D3又は送信部PROD_D5が動画像の主な供給先となる)、スマートフォン(この場合、ディスプレイPROD_D3又は送信部PROD_D5が動画像の主な供給先となる)なども、このような再生装置PROD_Dの一例である。
(ハードウェア的実現およびソフトウェア的実現)
また、上述した動画像復号装置1および動画像符号化装置2の各ブロックは、集積回路(ICチップ)上に形成された論理回路によってハードウェア的に実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェア的に実現してもよい。
また、上述した動画像復号装置1および動画像符号化装置2の各ブロックは、集積回路(ICチップ)上に形成された論理回路によってハードウェア的に実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェア的に実現してもよい。
後者の場合、上記各装置は、各機能を実現するプログラムの命令を実行するCPU、上記プログラムを格納したROM(Read Only Memory)、上記プログラムを展開するRAM(Random Access Memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである上記各装置の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記各装置に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ類、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM(Compact Disc Read-Only Memory)/MOディスク(Magneto-Optical disc)/MD(Mini Disc)/DVD(Digital Versatile Disc)/CD−R(CD Recordable)/ブルーレイディスク(Blu-ray Disc(登録商標))等の光ディスクを含むディスク類、ICカード(メモリカードを含む)/光カード等のカード類、マスクROM/EPROM(Erasable Programmable Read-Only Memory)/EEPROM(登録商標)(Electrically Erasable and Programmable Read-Only Memory)/フラッシュROM等の半導体メモリ類、あるいはPLD(Programmable logic device)やFPGA(Field Programmable Gate Array)等の論理回路類などを用いることができる。
また、上記各装置を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークは、プログラムコードを伝送可能であればよく、特に限定されない。例えば、インターネット、イントラネット、エキストラネット、LAN(Local Area Network)、ISDN(Integrated Services Digital Network)、VAN(Value-Added Network)、CATV(Community Antenna television/Cable Television)通信網、仮想専用網(Virtual Private Network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な媒体であればよく、特定の構成または種類のものに限定されない。例えば、IEEE(Institute of Electrical and ElectronicEngineers)1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL(Asymmetric Digital Subscriber Line)回線等の有線でも、IrDA(Infrared Data Association)やリモコンのような赤外線、Bluetooth(登録商標)、IEEE802.11無線、HDR(High Data Rate)、NFC(Near Field Communication)、DLNA(登録商標)(Digital Living Network Alliance)、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
本発明は、画像データが符号化された符号化データを復号する画像復号装置、および、画像データが符号化された符号化データを生成する画像符号化装置に好適に適用することができる。また、画像符号化装置によって生成され、画像復号装置によって参照される符号化データのデータ構造に好適に適用することができる。
1 動画像復号装置(画像復号装置)
10 復号モジュール
11 CU情報復号部(残差モード復号部、CU分割フラグ復号部)
12 PU情報復号部
13 TU情報復号部(残差モード復号部、TU分割フラグ復号部)
16 フレームメモリ
2 動画像符号化装置(画像符号化装置)
131 TU分割設定部
21 符号化設定部
25 フレームメモリ
29 符号化データ生成部(CU分割フラグ符号化部、TU分割フラグ復号部、残差モード符号化部)
10 復号モジュール
11 CU情報復号部(残差モード復号部、CU分割フラグ復号部)
12 PU情報復号部
13 TU情報復号部(残差モード復号部、TU分割フラグ復号部)
16 フレームメモリ
2 動画像符号化装置(画像符号化装置)
131 TU分割設定部
21 符号化設定部
25 フレームメモリ
29 符号化データ生成部(CU分割フラグ符号化部、TU分割フラグ復号部、残差モード符号化部)
Claims (20)
- ピクチャを符号化ツリーブロック単位に分割して復号する画像復号装置において、
上記符号化ツリーブロックを、ルートの符号化ツリーとして再帰的に分割する符号化ツリー分割部と、
上記符号化ツリーを分割するか否かを示す、符号化ユニット分割フラグを復号するCU分割フラグ復号部と、
上記符号化ツリー以下の残差を第1のモードで復号するか、第1のモードとは異なる第2のモードで復号するかを示す、残差モードを復号する残差モード復号部とを備えることを特徴とする画像復号装置。 - 上記残差モード復号部は、最上位の符号化ツリーでのみ、残差モード(rru_flag)を符号化データから復号し、それより下位の符号化ツリーでは、残差モード(rru_flag)を復号しないことを特徴とする請求項1に記載の画像復号装置。
- 上記残差モード復号部は、指定された階層の符号化ツリーでのみ、残差モードを復号し、それより下位の符号化ツリーでは、指定された階層の符号化ツリー以外では残差モードの復号を省略することを特徴とする請求項1に記載の画像復号装置。
- 上記CU分割フラグ復号部は、上記残差モードが上記第2のモードで復号することを示す場合、残差モードが上記第1のモードで復号することを示す場合に比べて分割する階層を1つ減らすことを特徴とする請求項1に記載の画像復号装置。
- 上記CU分割フラグ復号部は、残差モードが上記第1のモードである場合、
符号化ツリーのサイズである符号化ブロックサイズ(log2CbSize)が最小符号化ブロック(MinCbLog2Size)よりも大きい場合、符号化データから上記CU分割フラグを復号し、
残差モードが上記第2のモードである場合、
符号化ツリーのサイズである符号化ブロックサイズ(log2CbSize)が最小符号化ブロック(MinCbLog2Size+1)よりも大きい場合、符号化データから上記CU分割フラグを復号し、
それ以外の場合には、上記CU分割フラグの復号を省略し、上記CU分割フラグを分割しないことを示す0を導出することを特徴とする請求項1に記載の画像復号装置。 - 上記残差モード復号部は、リーフとなる符号化ツリーである符号化ユニットにおいて、残差モードを復号することを特徴とする請求項1に記載の画像復号装置。
- リーフとなる符号化ツリーである符号化ユニットにおいて、残差の復号を省略して復号するか否かを示すスキップフラグを復号するスキップフラグ復号部を備え、
上記残差モード復号部は、上記符号化ユニットにおいて、
上記スキップフラグが残差を復号しないことを示す場合、残差モードを復号し、
それ以外の場合、残差モードを復号しないことを特徴とする請求項6に記載の画像復号装置。 - 符号化ユニットが残差を含むか否かを示すCBFフラグを復号するCBFフラグ復号部を備え、
上記残差モード復号部は、
上記CBFフラグが残差が存在することを示す場合、上記残差モードを復号し、
それ以外の場合、上記残差モードが上記第1のモードであることを示す残差モードを導出することを特徴とする請求項6に記載の画像復号装置。 - 上記残差モード復号部は、
符号化ツリーのサイズである符号化ブロックサイズ(log2CbSize)が所定の最小符号化ブロックサイズ(MinCbLog2Size)よりも大きい場合、符号化データから上記残差モードを復号し、
それ以外の場合、上記残差モードが符号化データに存在しない場合に、上記残差モードを上記第1のモードとして導出することを特徴とする請求項6に記載の画像復号装置。 - 符号化ユニットをさらに予測ブロックに分割するか否かを示すPU分割モードを復号するPU分割モード復号部を備え、
上記残差モード復号部は、
上記PU分割モードがPU分割しないことを示す値の場合のみ、残差モードを復号し、
それ以外の場合には、残差モードを復号しないことを特徴とする請求項6に記載の画像復号装置。 - 符号化ユニットをさらに予測ブロックに分割するか否かを示すPU分割モードを復号するPU分割モード復号部を備え、
上記PU分割モード復号部は、
上記残差モードが上記第2のモードを示す場合、上記PU分割モードの復号を省略し、PU分割しないことを示す値を導出し、
上記残差モードが上記第1のモードを示す場合、上記PU分割モードを復号することを特徴とする請求項6に記載の画像復号装置。 - 符号化ユニットをさらに予測ブロックに分割するか否かを示すPU分割モードを復号するPU分割モード復号部を備え、
上記PU分割モード復号部は、
上記残差モードが上記第2のモードを示す場合、符号化ブロックサイズ(log2CbSize)が最小符号化ブロック(MinCbLog2Size)と1の和(MinCbLog2Size+1)と等しい場合に、上記PU分割モードを復号し、
上記残差モードが上記第1のモードを示す場合、インターであるか、符号化ブロックサイズ(log2CbSize)が最小符号化ブロック(MinCbLog2Size)と等しい場合に、上記PU分割モードを復号し、
それ以外の場合、上記PU分割モードの復号を省略し、PU分割しないことを示す値を導出することを特徴とする請求項1に記載の画像復号装置。 - 符号化ユニットをさらに変換ブロックに分割するか否かを示すTU分割モードを復号するTU分割モード復号部を備え、
上記TU分割モード復号部は、
上記残差モードが上記第2のモードを示す場合、符号化ブロックサイズ(log2CbSize)が最大変換ブロック(MaxTbLog2SizeY)と1の和(MaxTbLog2SizeY+1)以下かつ最小変換ブロック(MinCbLog2Size)と1の和(MinCbLog2Size+1)より大きい場合に、上記TU分割フラグを復号し、
上記残差モードが上記第1のモードを示す場合、符号化ブロックサイズ(log2CbSize)が最大変換ブロック(MaxTbLog2Size)以下かつ最小変換ブロック(MinCbLog2Size)より大きい場合に、上記TU分割フラグを復号し、
それ以外の場合には、上記TU分割フラグの復号を省略し、分割しないことを示すTU分割フラグの値を導出することを特徴とする請求項1に記載の画像復号装置。 - 符号化ユニットをさらに変換ブロックに分割するか否かを示すTU分割モードを復号するTU分割モード復号部を備え、
上記TU分割モード復号部は、
上記残差モードが上記第2のモードを示す場合、符号化変換デプス(trafoDepth)が、最大符号化デプス(MaxTrafoDepth)と1の差(MaxTrafoDepth―1)未満の場合に、上記TU分割フラグを復号し、
上記残差モードが上記第1のモードを示す場合、符号化変換デプス(trafoDepth)が最大符号化デプス(MaxTrafoDepth)未満の場合に、上記TU分割フラグを復号し、
それ以外の場合、上記TU分割フラグの復号を省略し、分割しないことを示す値を導出することを特徴とする請求項1に記載の画像復号装置。 - 残差を復号する残差復号部と、
復号された上記残差を逆量子化する逆量子化する逆量子化部とを備え、
上記逆量子化部は、
上記残差モードが上記第1のモードの場合、第1の量子化ステップにより逆量子化を行い、
上記残差モードが上記第2のモードの場合、上記第1の量子化ステップから導出される第2の量子化ステップにより逆量子化をすることを特徴とする請求項1に記載の画像復号装置。 - 上記画像復号装置は、量子化ステップ修正値を復号する量子化ステップ制御情報復号を備え、
上記逆量子化部は、第1の量子化ステップに上記量子化ステップ修正値を加算することで第2の量子化ステップを導出することを特徴とする請求項15に記載の画像復号装置。 - ピクチャをスライス単位に分割して、上記スライスをさらに符号化ツリーブロック単位に分割して復号する画像復号装置において、スライス内の最上位ブロックサイズを可変とすることを特徴とする画像復号装置。
- スライス先頭の水平位置を示す値と垂直位置を示す値を復号することを特徴とする請求項16に記載の画像復号装置。
- スライス先頭の先頭アドレスを示す値を復号し、選択肢となる最上位ブロックサイズの内の最小のブロックサイズに基づいて、スライス先頭位置または対象ブロックの水平位置と垂直位置を導出することを特徴とする請求項16に記載の画像復号装置。
- ピクチャを符号化ツリーブロック単位に分割して符号化する画像符号化装置において、
上記符号化ツリーブロックを、ルートの符号化ツリーとして再帰的に分割する符号化ツリー分割部と、
上記符号化ツリーを分割するか否かを示す符号化ユニット分割フラグを符号化するCU分割フラグ復号部と、
上記符号化ツリー以下の残差を第1のモードで復号するか、第1のモードとは異なる第2のモードで符号化するかを示す、残差モードを符号化する残差モード復号部とを備えることを特徴とする画像符号化装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015120967 | 2015-06-16 | ||
JP2015120967 | 2015-06-16 | ||
PCT/JP2016/066495 WO2016203981A1 (ja) | 2015-06-16 | 2016-06-02 | 画像復号装置及び画像符号化装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2016203981A1 true JPWO2016203981A1 (ja) | 2018-04-05 |
Family
ID=57545647
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017524811A Pending JPWO2016203981A1 (ja) | 2015-06-16 | 2016-06-02 | 画像復号装置及び画像符号化装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20180192076A1 (ja) |
JP (1) | JPWO2016203981A1 (ja) |
CN (1) | CN107637081A (ja) |
HK (1) | HK1250587A1 (ja) |
WO (1) | WO2016203981A1 (ja) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10145961B1 (en) * | 2016-04-27 | 2018-12-04 | Rockwell Collins, Inc. | Efficient transform-based quantization processing |
CN110121884B (zh) * | 2016-11-28 | 2023-04-04 | 韩国电子通信研究院 | 用于滤波的方法和装置 |
KR102390413B1 (ko) * | 2017-03-03 | 2022-04-25 | 에스케이텔레콤 주식회사 | 영상 부호화 또는 복호화하기 위한 장치 및 방법 |
KR102354628B1 (ko) * | 2017-03-31 | 2022-01-25 | 한국전자통신연구원 | 부호화 트리 유닛 및 부호화 유닛의 처리를 수행하는 영상 처리 방법, 그를 이용한 영상 복호화, 부호화 방법 및 그 장치 |
US10356411B2 (en) * | 2017-05-30 | 2019-07-16 | Google Llc | Adaptation of scan order entropy coding |
CN109302608B (zh) * | 2017-07-25 | 2021-06-22 | 华为技术有限公司 | 图像处理方法、设备及系统 |
CN115442598A (zh) * | 2017-10-20 | 2022-12-06 | 韩国电子通信研究院 | 图像编码、解码方法以及存储比特流的记录介质 |
JP7109961B2 (ja) * | 2018-03-29 | 2022-08-01 | Kddi株式会社 | 画像復号装置、画像符号化装置、画像処理システム、画像復号方法及びプログラム |
KR101997681B1 (ko) * | 2018-06-11 | 2019-07-08 | 광운대학교 산학협력단 | 양자화 파라미터 기반의 잔차 블록 부호화/복호화 방법 및 장치 |
UA128232C2 (uk) | 2018-08-28 | 2024-05-15 | Хуавей Текнолоджиз Ко., Лтд. | Спосіб і пристрій для розбивання зображення |
CN114071165B (zh) | 2018-09-18 | 2022-09-23 | 华为技术有限公司 | 视频编码器、视频解码器及对应方法 |
CN111107377A (zh) * | 2018-10-26 | 2020-05-05 | 曜科智能科技(上海)有限公司 | 深度图像压缩方法及其装置、设备和存储介质 |
US11936868B2 (en) * | 2018-11-08 | 2024-03-19 | Interdigital Vc Holdings, Inc. | Quantization for video encoding or decoding based on the surface of a block |
JP6835177B2 (ja) * | 2018-11-30 | 2021-02-24 | 株式会社Jvcケンウッド | 画像復号化装置、画像復号化方法及び画像復号化プログラム |
CN111277828B (zh) * | 2018-12-04 | 2022-07-12 | 华为技术有限公司 | 视频编解码方法、视频编码器和视频解码器 |
CN111294603B (zh) * | 2018-12-06 | 2023-09-29 | 华为技术有限公司 | 视频编解码方法及装置 |
EP3893508A4 (en) * | 2018-12-07 | 2022-09-14 | Sharp Kabushiki Kaisha | Moving image decoding device |
PH12019000380A1 (en) * | 2018-12-17 | 2020-09-28 | Nokia Technologies Oy | An apparatus, a method and a computer program for video coding and decoding |
US11323748B2 (en) * | 2018-12-19 | 2022-05-03 | Qualcomm Incorporated | Tree-based transform unit (TU) partition for video coding |
EP3902260A4 (en) | 2018-12-21 | 2022-08-31 | Sharp Kabushiki Kaisha | VIDEO CODING DEVICE AND VIDEO DECODING DEVICE |
MX2021008340A (es) * | 2019-01-08 | 2021-09-30 | Huawei Tech Co Ltd | Método, aparato y sistema de prediccion de imagenes, dispositivo y medio de almacenamiento. |
CN111416975B (zh) | 2019-01-08 | 2022-09-16 | 华为技术有限公司 | 预测模式确定方法和装置 |
WO2020162609A1 (ja) * | 2019-02-08 | 2020-08-13 | シャープ株式会社 | 動画像符号化装置および動画像復号装置 |
JP2022068379A (ja) * | 2019-03-08 | 2022-05-10 | シャープ株式会社 | 画像復号装置 |
KR102204438B1 (ko) * | 2019-03-15 | 2021-01-18 | 삼성전자주식회사 | 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치 |
US11677969B2 (en) | 2019-03-22 | 2023-06-13 | Tencent America LLC | Method and apparatus for video coding |
KR20210019387A (ko) * | 2019-08-12 | 2021-02-22 | 한국항공대학교산학협력단 | 하이 레벨 영상 분할과 영상 부호화/복호화 방법 및 장치 |
US11438616B2 (en) * | 2019-08-27 | 2022-09-06 | Tencent America LLC | Method and apparatus for video coding |
TWI864067B (zh) * | 2019-09-23 | 2024-12-01 | 法商內數位Ce專利控股公司 | 編碼樹分割的方法與設備及其儲存媒體 |
WO2021107663A1 (ko) * | 2019-11-27 | 2021-06-03 | 엘지전자 주식회사 | 영상 디코딩 방법 및 그 장치 |
KR20220093250A (ko) * | 2019-12-23 | 2022-07-05 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 코딩 블록 분할 제한 도출 인코더, 디코더 및 대응 방법 |
JP7360984B2 (ja) * | 2020-03-31 | 2023-10-13 | Kddi株式会社 | 画像復号装置、画像復号方法及びプログラム |
US11445206B2 (en) * | 2020-04-16 | 2022-09-13 | Tencent America LLC | Method and apparatus for video coding |
US20240040130A1 (en) * | 2020-04-22 | 2024-02-01 | Telefonaktiebolaget Lm Ericsson (Publ) | Compresssed picture-in-picture signaling |
KR20220090850A (ko) | 2020-12-23 | 2022-06-30 | 삼성전자주식회사 | 이미지 처리 장치 및 이미지 처리 장치의 동작 방법 |
US11575941B2 (en) * | 2021-03-23 | 2023-02-07 | Tencent America LLC | Parallel processing in video coding |
US11863786B2 (en) * | 2021-05-21 | 2024-01-02 | Varjo Technologies Oy | Method of transporting a framebuffer |
CN115086670B (zh) * | 2022-06-13 | 2023-03-10 | 梧州学院 | 一种面向高清显微视频的低码率编解码方法及系统 |
US20240364863A1 (en) * | 2023-04-25 | 2024-10-31 | Tencent America LLC | Bi-predictive block vector with cu-level weight in ibc |
US20250175634A1 (en) * | 2023-11-27 | 2025-05-29 | Tencent America LLC | Systems and methods for transform partitioning in a recursive intra region |
US20250175635A1 (en) * | 2023-11-27 | 2025-05-29 | Tencent America LLC | Systems and methods for entropy coding for recursive intra region partitioning |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101371584B (zh) * | 2006-01-09 | 2011-12-14 | 汤姆森特许公司 | 提供用于多视图视频编码的降低分辨率的更新模式的方法和装置 |
KR101457894B1 (ko) * | 2009-10-28 | 2014-11-05 | 삼성전자주식회사 | 영상 부호화 방법 및 장치, 복호화 방법 및 장치 |
US20130003855A1 (en) * | 2010-01-12 | 2013-01-03 | Lg Electronics Inc. | Processing method and device for video signals |
KR101487687B1 (ko) * | 2010-01-14 | 2015-01-29 | 삼성전자주식회사 | 큰 크기의 변환 단위를 이용한 영상 부호화, 복호화 방법 및 장치 |
EP2805509A4 (en) * | 2012-01-19 | 2015-07-29 | Magnum Semiconductor Inc | METHOD AND DEVICES FOR PROVIDING AN ADAPTIVE UPGRADE MODE WITH REDUCED RESOLUTION |
WO2013190990A1 (ja) * | 2012-06-22 | 2013-12-27 | シャープ株式会社 | 算術復号装置、算術符号化装置、画像復号装置、および画像符号化装置 |
CN104023233B (zh) * | 2014-06-24 | 2017-05-24 | 华侨大学 | 一种hevc快速帧间预测方法 |
-
2016
- 2016-06-02 CN CN201680034650.5A patent/CN107637081A/zh active Pending
- 2016-06-02 HK HK18109655.7A patent/HK1250587A1/zh unknown
- 2016-06-02 JP JP2017524811A patent/JPWO2016203981A1/ja active Pending
- 2016-06-02 WO PCT/JP2016/066495 patent/WO2016203981A1/ja active Application Filing
- 2016-06-02 US US15/735,979 patent/US20180192076A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
CN107637081A (zh) | 2018-01-26 |
HK1250587A1 (zh) | 2019-01-04 |
US20180192076A1 (en) | 2018-07-05 |
WO2016203981A1 (ja) | 2016-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016203981A1 (ja) | 画像復号装置及び画像符号化装置 | |
JP7200320B2 (ja) | 画像フィルタ装置、フィルタ方法および動画像復号装置 | |
US11743510B2 (en) | Image decoding device and image decoding method | |
JP7001768B2 (ja) | 算術復号装置 | |
WO2016203881A1 (ja) | 算術復号装置及び算術符号化装置 | |
CN109889830B (zh) | 图像解码装置及方法、图像编码装置及方法 | |
US10136161B2 (en) | DMM prediction section, image decoding device, and image coding device | |
WO2014115283A1 (ja) | 画像復号装置、および画像符号化装置 | |
JP5995448B2 (ja) | 画像復号装置、および画像符号化装置 | |
TW202133613A (zh) | 圖像解碼裝置及圖像編碼裝置 | |
CN114930827A (zh) | 使用无损颜色变换的图像编码/解码方法和装置及比特流发送方法 | |
WO2019065488A1 (ja) | 画像復号装置および画像符号化装置 | |
JP2013192118A (ja) | 算術復号装置、画像復号装置、算術符号化装置、および画像符号化装置 | |
CN114902669A (zh) | 使用颜色空间转换对图像编码/解码的方法和装置及发送比特流的方法 | |
JP2013187869A (ja) | 算術復号装置、算術符号化装置、画像復号装置、および画像符号化装置 | |
WO2020004349A1 (ja) | 動画像符号化装置および動画像復号装置 | |
WO2021246284A1 (ja) | 動画像復号装置及び動画像符号化装置 | |
JP2013223049A (ja) | 画像復号装置、および画像符号化装置 | |
JP6162289B2 (ja) | 画像復号装置および画像復号方法 | |
WO2020100833A1 (ja) | 動画像復号装置、動画像符号化装置、動画像復号方法および動画像符号化方法 | |
WO2012043676A1 (ja) | 復号装置、符号化装置、および、データ構造 | |
HK1191484B (en) | Image decoding apparatus, image encoding apparatus, and data structure of encoded data | |
HK1191484A1 (zh) | 圖像解碼裝置、圖像編碼裝置以及編碼數據的數據構造 |