JP2013118424A - 画像復号装置、画像符号化装置、および符号化データのデータ構造 - Google Patents
画像復号装置、画像符号化装置、および符号化データのデータ構造 Download PDFInfo
- Publication number
- JP2013118424A JP2013118424A JP2011250187A JP2011250187A JP2013118424A JP 2013118424 A JP2013118424 A JP 2013118424A JP 2011250187 A JP2011250187 A JP 2011250187A JP 2011250187 A JP2011250187 A JP 2011250187A JP 2013118424 A JP2013118424 A JP 2013118424A
- Authority
- JP
- Japan
- Prior art keywords
- prediction unit
- syntax
- prediction
- unit division
- 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
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】同じPU分割タイプのグループに属するPU分割タイプの性質を活用した効率のよい符号化/復号処理を実現する。
【解決手段】動画像復号装置1は、対象CUについて、PUグループに属する長方形PU分割タイプを復元した場合、該PUグループに属する長方形PU分割タイプそれぞれに対して、復号前よりも短い符号が復号されるよう適応処理する可変テーブル適応部1015を備える。
【選択図】図1
【解決手段】動画像復号装置1は、対象CUについて、PUグループに属する長方形PU分割タイプを復元した場合、該PUグループに属する長方形PU分割タイプそれぞれに対して、復号前よりも短い符号が復号されるよう適応処理する可変テーブル適応部1015を備える。
【選択図】図1
Description
本発明は、画像を表す符号化データを復号する画像復号装置、画像を符号化することによって符号化データを生成する画像符号化装置、および、これらの間で受信される動画像符号化データのデータ構造に関する。
動画像を効率的に伝送または記録するために、動画像を符号化することによって符号化データを生成する動画像符号化装置、および、当該符号化データを復号することによって復号画像を生成する動画像復号装置が用いられている。
具体的な動画像符号化方式としては、例えば、H.264/MPEG−4.AVC、VCEG(Video Coding Expert Group)における共同開発用コーデックであるKTAソフトウェアに採用されている方式、TMuC(Test Model under Consideration)ソフトウェアに採用されている方式や、その後継コーデックであるHEVC(High-Efficiency Video Coding)にて提案されている方式(非特許文献1)などが挙げられる。
このような動画像符号化方式においては、動画像を構成する画像(ピクチャ)は、画像を分割することにより得られるスライス、スライスを分割することにより得られる符号化単位(コーディングユニット(Coding Unit)と呼ばれることもある)、及び、符号化単位を分割することより得られるブロックおよびパーティションからなる階層構造により管理され、普通、ブロックごとに符号化/復号される。
また、このような動画像符号化方式においては、通常、入力画像を符号化/復号することによって得られる局所復号画像に基づいて予測画像が生成され、当該予測画像を入力画像(原画像)から減算して得られる予測残差(「差分画像」または「残差画像」と呼ぶこともある)が符号化される。また、予測画像の生成方法としては、画面間予測(インター予測)、および、画面内予測(イントラ予測)が挙げられる。
イントラ予測においては、同一フレーム内の局所復号画像に基づいて、当該フレームにおける予測画像が順次生成される。
一方、インター予測においては、フレーム全体が復号された参照フレーム(復号画像)内の参照画像に対し、動きベクトルを用いた動き補償を適用することによって、予測対象フレーム内の予測画像が予測単位(例えば、ブロック)毎に生成される。
また、インター予測については、符号化処理の単位となる符号化単位を非対称のパーティション(PU)にPU分割する技術(AMP; Asymmetric Motion Partition)が提案されている(非特許文献1)。
AMPでは、横方向および縦方向の長方形のPU分割タイプが複数定義されている。具体的に例示すると、横方向の長方形PUには、2N×N、2N×nU、2N×nDの3種類のPU分割タイプがある。また、縦方向の長方形PUには、N×2N、nL×2N、およびnR×2Nの3種類のPU分割タイプがある。
また、PU分割タイプは、CU分割フラグ、スキップフラグ、マージフラグおよびCU予測モードの情報と結合されたシンタックスcu_split_pred_part_modeとして復号/符号化される。図37および図38にcu_split_pred_part_modeのシンタックス値の定義テーブルを示す。図37は、CUWidth(CUの幅)>8の場合の定義テーブルJ101を示しており、図38は、CUWidth(CUの幅)=8の場合の定義テーブルJ102を示している。
また、符号化処理においては、各シンタックス値が、エントロピー符号化方式により符号化される。
エントロピー符号化方式としては、コンテキスト適応型可変長符号化(CALVC:Context-based Adaptive Variable Length Coding)、および、コンテキスト適応型2値算術符号化(CABAC:Context-based Adaptive Binary Arithmetic Coding)が知られている。
ここで、CAVLCについて、より詳しく説明すると次のとおりである。VLC(Variable Length Coding)方法による符号化では、シンタックス(syntax)値と、コード番号(codeNum)との対応付けを示すコード番号変換情報と、コード番号と、ビット列との対応付けを示すビット変換情報とが用いられる。これらの情報は、テーブルの形式で表現されている場合や、パラメータを導出するための算出式(例えば、シンタックス値からコード番号を求めるための計算式)により表現されている場合や、これらの組み合わせが用いられる場合がある。CAVLCによる符号化では、このような変換処理を、コンテキストに基づいて適応的に行う(Context-based Adaptive)。
CAVLCによる符号化は、具体的には、次の手順により行われる。まず、コード番号変換情報を用いて、シンタックス値が、コード番号に変換される。次に、ビット変換情報を用いて、コード番号が、ビット列に変換される。
また、符号化の際には、コンテキストに応じて、複数のVLC方法のうちの1つが、適応的に選択されて符号化が行われる。
ここで、コンテキストとは、符号化/復号の状況(文脈)のことであり、関連シンタックスの過去の符号化/復号結果のことを指す。関連シンタックスとしては、例えば、イントラ予測、インター予測に関する各種シンタックス、輝度(Luma)、色差(Chroma)に関する各種シンタックス、およびCU(Coding Unit 符号化単位)サイズに関する各種シンタックスなどがある。
また、非特許文献1では、CAVLCについて、各PU分割タイプに対応付けるコード番号を可変テーブルにより適応的に切り替えることで符号量を削減する技術が提案されている。具体的に説明すれば次のとおりである。
まず、cu_split_pred_part_modeに対応するコード番号は、truncated unary符号を用いて符号化/復号される。したがって、小さいコード番号には短い符号が割り当てられる。
上述の可変テーブルの適応では、復号/符号化するシンタックス値(PU分割タイプ)がより小さいコード番号に対応付けられるように可変テーブルの要素を調整することで実現される。従って、直近に発生したシンタックス値には、より小さいコード番号が割り当てられる。ゆえに、直近に発生したシンタックス値には、より短い符号が割り当てられる。
画像の局所的性質から、同一のシンタックス値(同一のPU分割タイプ)が連続して発生し易いという性質があるため、直近に発生したシンタックス値に、より短い符号を割り当てることで符号量を削減することができる。
「WD4: Working Draft 4 of High-Efficiency Video Coding (JCTVC-F803_d1)」, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 6th Meeting: Torino, IT, 14-22 July, 2011(2011年9月8日公開)
上述のとおり、同一方向の長方形PUを含むPU分割タイプは複数ある(縦および横について、それぞれ3種類)。また、同一方向の長方形PUを含むPU分割タイプのうち、いずれかのPU分割タイプが選択された場合、同じグループに属する他のPU分割タイプも発生しやすい。しかしながら、現状の可変テーブルの適応では、このような性質が十分に考慮されていない。
本発明は、上記問題を鑑みてなされたものであり、その目的は、同じPU分割タイプのグループに属するPU分割タイプの性質を活用した効率のよい符号化/復号処理を実現することができる画像復号装置、画像符号化装置、および符号化データのデータ構造を提供することにある。
上記の課題を解決するために、本発明に係る画像復号装置は、符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成して画像を復元する画像復号装置において、上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、上記長方形予測単位分割タイプが2以上属している予測単位分割タイプ群が規定されており、処理対象となる符号化単位について、上記予測単位分割タイプ群に属する長方形予測単位分割タイプを復元した場合、該予測単位分割タイプ群に属する長方形予測単位分割タイプそれぞれに対して、復号前よりも短い符号が復号されるよう適応処理する適応処理手段を備えることを特徴とする。
上記画像復号装置は、所定の予測単位分割タイプにより、符号化単位を1以上の数に分割して予測単位を得る。
具体的な、所定の予測単位分割タイプとしては、例えば、PU分割タイプが、2N×2N、2N×N、2N×nU、2N×nD、N×2N、nL×2N、nR×2N、および、N×Nなどが挙げられる。
さらにいえば、上記予測単位分割タイプの例において、長方形の予測単位への予測単位分割タイプは、2N×N、2N×nU、2N×nD、N×2N、nL×2N、nR×2Nである。また、これらの予測単位分割タイプは、横長矩形予測単位への予測単位分割タイプである2N×N、2N×nU、2N×nDと、縦長矩形予測単位への予測単位分割タイプであるN×2N、nL×2N、nR×2Nとにグループ分けすることもできる。
予測単位分割タイプ群は、上記長方形予測単位分割タイプが2以上属しているグループである。上記の例でいえば、例えば、横長の長方形の予測単位への予測単位分割タイプである2N×N、2N×nU、2N×nDを1つのグループとすることができる。また、上述した長方形の予測単位への予測単位分割タイプすべてを1つのグループとすることも可能である。
ところで、分割の方向が同じであるような、一部の関連する予測単位分割タイプが、連続して発生する状況がある。例えば、水平に近いエッジが存在するような領域では、横長矩形の予測単位を含む各予測単位分割タイプの発生確率が上がる傾向がある。
上記構成によれば、処理対象となる符号化単位について、上記予測単位分割タイプ群に属する長方形予測単位分割タイプを復元した場合、該予測単位分割タイプ群に属する長方形予測単位分割タイプそれぞれに対して、復号前よりも短い符号が復号されるよう適応処理する。
これにより、上述のような状況において、同じ予測単位分割タイプ群に属する長方形予測単位分割タイプに短い符号が割り当てられることで、符号量を削減することができる。
本発明に係る画像復号装置では、上記予測単位分割タイプ群は、横長矩形予測単位への予測単位分割タイプの集合、および、縦長矩形予測単位への予測単位分割タイプの集合の和集合として規定されていることが好ましい。
テクスチャが複雑な領域では、非正方形の予測単位分割タイプが連続して発生するという性質がある。
上記構成によれば、上記予測単位分割タイプ群が、横長矩形予測単位への予測単位分割タイプのグループおよび縦長矩形予測単位への予測単位分割タイプのグループの両方を含む。このため、このようにテクスチャが複雑な領域において、上記予測単位分割タイプ群に含まれる非正方形の予測単位分割タイプに対して短い符号を復号するようにできる。その結果、符号量の削減を図ることができるという効果を奏する。
本発明に係る画像復号装置では、上記予測単位分割タイプ群は、横長矩形予測単位への予測単位分割タイプの集合、または、縦長矩形予測単位への予測単位分割タイプの集合として規定されていることが好ましい。
上記構成によれば、上記予測単位分割タイプ群は、横長矩形予測単位への予測単位分割タイプのグループまたは縦長矩形予測単位への予測単位分割タイプのグループである。横長矩形予測単位、または、縦長矩形予測単位が連続して発生するような状況下において、符号量の削減をはかることができるという効果を奏する。
例えば、横長矩形予測単位が連続して発生するような状況において、横長矩形予測単位分割タイプに対して、短い符号を復号するようにできるため、符号量の削減を図ることができる。
本発明に係る画像復号装置では、符号化データに含まれる各符号からコード番号を復号する復号手段と上記予測単位分割タイプ群と、該予測単位分割タイプ群に対応するコード番号との対応付けを含む可変テーブルを参照して、符号化データから復号されたコード番号に対応する予測単位分割タイプ群を取得する予測単位分割タイプ群取得手段を備え、上記適応処理手段による上記適応処理は、取得した上記予測単位分割タイプ群に対して、より小さいコード番号が対応付けられるよう上記可変テーブルを更新する可変テーブル適応処理であることが好ましい。
上記構成によれば、いわゆる可変テーブル適応処理が行われる。すなわち、符号化データでは、各シンタックスに対応するコード番号が符号化されており、可変テーブルにおいて、コード番号と、予測単位分割タイプ群とが対応付けられている。そして、より小さいコード番号には、より短い符号が割り当てられる。
また、予測単位分割タイプ群と対応付けられているコード番号が復号されたときに、当該予測単位分割タイプ群に対して短い符号が復号されるように、可変テーブル適応処理により可変テーブルが更新される。
この可変テーブル適応処理とは、例えば、復号されたコード番号に対応付けられている予測単位分割タイプ群と、復号されたコード番号よりも1小さいコード番号に対応付けられている予測単位分割タイプ群とを入れ替える処理である。
また、可変テーブルでは、インター2N×2Nのように、予測単位分割タイプ群に属さないような予測単位分割タイプが、コード番号と対応付けられていてもかまわない。また、このような予測単位分割タイプを入れ替え処理の対象としてもよい。
また、可変テーブルでは、所定のコード番号の発生回数をカウントするカウンタを備えていてもよく、カウンタの値が所定以上になったときに可変テーブル適応処理を行ってもよい。
このような可変テーブル適応処理を採用することで、例えば、CAVLC符号化方式による復号における適応処理を実現することができる。
本発明に係る画像復号装置では、予測単位分割タイプが、上記予測単位分割タイプ群取得手段が取得した上記予測単位分割タイプ群に属するいずれの長方形予測単位分割タイプであるかを特定するための追加情報を復元する追加情報復元手段を備えることが好ましい。
上記構成によれば、予測単位分割タイプが、予測単位分割タイプ群に属する場合、さらに、予測単位分割タイプが予測単位分割タイプ群に属するいずれの長方形予測単位分割タイプであるかを特定するための追加情報を復元し、最終的な予測単位分割タイプを特定することができる。
本発明に係る画像復号装置では、上記予測単位分割タイプ群は、対称パーティションの予測単位分割タイプと、非対称パーティションの予測単位分割タイプとを含み、上記追加情報では、対称パーティションの予測単位分割タイプに対して、非対称パーティションの予測単位分割タイプに比べて短い符号が割り当てられていることが好ましい。
自然画像においては、統計上、対称パーティションの予測単位分割タイプのほうが、非対称パーティションの予測単位分割タイプと比べて発生確率が高い傾向がある。
上記構成によれば、追加情報について、発生確率が高い対称パーティションの予測単位分割タイプに対して、非対称パーティションの予測単位分割タイプに比べて短い符号が割り当てられているため、符号量の削減を図ることができるという効果を奏する。
本発明に係る画像復号装置では、処理対象となる符号化単位における予測単位分割タイプが、上記予測単位分割タイプ群に含まれるか否かを示すバイナリ値を算術復号する算術復号手段を備え、上記適応処理手段による上記適応処理は、上記バイナリ値の算術復号において用いる確率テーブルを更新する処理であることが好ましい。
確率テーブルとは、例えば、CABAC符号化方式においてステートと呼ばれる算術符号化に用いられるバイナリ値(0または1)の発生確率を示すインデックスである。上記構成では、処理対象となる符号化単位における予測単位分割タイプが、上記予測単位分割タイプ群に含まれるか否かを示すバイナリ値に、独立の確率テーブルを設定する。
そして、適応処理において、上記バイナリ値の算術復号において用いる確率テーブルを更新することで、発生確率が高い上記バイナリ値に対して短い符号を復号することができる。
このような適応処理を採用することで、例えば、CABAC符号化方式による復号における適応処理を実現することができる。
本発明に係る画像復号装置では、処理対象となる符号化単位における予測単位分割タイプが、横長矩形予測単位への予測単位分割タイプの集合として規定されている上記予測単位分割タイプ群、および、縦長矩形予測単位への予測単位分割タイプの集合として規定されている上記予測単位分割タイプ群のいずれに含まれるかを示すバイナリ値を算術復号する算術復号手段を備え、上記適応処理手段による上記適応処理は、上記バイナリ値の算術復号において用いる確率テーブルを更新する処理であることが好ましい。
上記構成によれば、処理対象となる符号化単位における予測単位分割タイプが、横長矩形予測単位への予測単位分割タイプの集合として規定されている上記予測単位分割タイプ群、および、縦長矩形予測単位への予測単位分割タイプの集合として規定されている上記予測単位分割タイプ群のいずれに含まれるかを示すバイナリ値に、独立の確率テーブルを設定する。
上記構成を採用することによっても、CABAC符号化方式による復号における適応処理を実現することができる。
上記の課題を解決するために、本発明に係る画像符号化装置は、符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成する画像符号化装置において、上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、上記長方形予測単位分割タイプが2以上属している予測単位分割タイプ群が規定されており、処理対象となる符号化単位について、上記予測単位分割タイプ群に属する長方形予測単位分割タイプが発生した場合、該予測単位分割タイプ群に属する長方形予測単位分割タイプそれぞれに対して、発生前よりも短い符号が割り当てられるよう適応処理する適応処理手段を備えることを特徴とする。
上記の課題を解決するために、本発明に係る符号化データのデータ構造は、予測画像を生成するための予測単位を得るために、符号化単位を1以上の数に分割する分割方式である所定の予測単位分割タイプを特定するための予測単位分割情報を含む符号化データのデータ構造において、上記符号化データを復号する画像復号装置において、上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、上記長方形予測単位分割タイプが2以上属している予測単位分割タイプ群が規定されており、上記符号化データは、符号化されている予測単位分割タイプが上記予測単位分割タイプ群に属するいずれの長方形予測単位分割タイプであるかを特定するための追加情報を含むことを特徴とする。
なお、上記画像復号装置に対応する構成を備える画像符号化装置、および、これらの間で送受信される符号化データのデータ構造も本発明の範疇に入る。上記のように構成された画像符号化装置および符号化データのデータ構造によれば、本発明に係る画像復号装置と同様の効果を奏することができる。
上記の課題を解決するために、本発明に係る画像復号装置では、符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成して画像を復元する画像復号装置において、上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、取り得る値の少なくとも一部が、予測単位分割タイプの特定に用いる値であるシンタックスであって、前記予測単位分割タイプの特定に用いる値の少なくとも一つの値は、長方形予測単位分割タイプを2以上含む予測単位分割タイプ群に対応付けられた値であるシンタックスを復号するシンタックス復号手段と、上記予測単位分割タイプ群に含まれる予測単位分割タイプが復号された場合に、前記予測単位分割タイプ群に対してより小さいコード番号が割り当てられるよう、前記シンタックスの復号に用いる可変テーブルを更新する適応処理手段を備える。
上記長方形予測単位は、サイズが16×8画素、8×16画素、32×8画素、8×32画素等の縦長矩形または横長矩形の予測単位であって、16×16画素、32×32画素等の正方形の予測単位を含まない。
上記構成によれば、処理対象となる符号化単位について、上記シンタックス値として上記長方形予測単位を2以上含む予測単位分割タイプ群に対応する値を復元した場合、当該シンタックス値が復号前よりも小さいコード番号が割り当てられるよう可変テーブルが更新される。
一般に小さいコード番号には短い符号が割り当てられるため、上記更新処理によって当該シンタックス値に対してより短い符号が割り当てられる。したがって、上記更新処理によって、上記長方形予測単位を2以上含む予測単位分割タイプ群に対してより短い符号が割り当てられる。
自然画像においては、画像が複雑な領域では、同じサイズの符号化単位を用いる場合、非正方形の長方形の予測単位が、種類を問わず発生しやすい傾向がある。そのため、ある長方形予測単位が発生した場合、当該長方形予測単位を含め他の長方形予測単位の発生確率が高くなる。すなわち、連続して発生する長方形予測単位が、同じ長方形予測単位分割タイプ群に属する可能性が高くなる。ゆえに、同じ長方形予測単位分割タイプ群に対応するシンタックス値が連続して発生し易くなる。そのため、上記更新処理により、長方形予測単位分割タイプ群が発生した場合に、当該長方形予測単位分割タイプ群により短い符号を割り当てることができるため、符号量を削減できる。
本発明に係る画像復号装置では、上記シンタックスは、符号化単位分割情報、スキップフラグ、マージフラグ、および、CU予測方式情報の少なくとも一つと、予測単位分割タイプ情報との結合シンタックスであることが好ましい。
上記構成によれば、符号化単位毎に符号化単位分割情報、スキップフラグ、マージフラグ、および、CU予測方式情報の少なくとも一部を予測単位分割タイプ情報と合わせて復号する構成において、適応処理を実現できる。
本発明に係る画像復号装置では、上記シンタックスは、符号化単位分割情報、スキップフラグ、CU予測方式情報、および予測単位分割タイプの結合シンタックスであることが好ましい。
上記構成によれば、符号化単位分割情報、スキップフラグ、CU予測方式情報、および予測単位分割タイプを予測単位分割タイプ情報と合わせて復号する構成において、適応処理を実現できる。
本発明に係る画像復号装置では、上記シンタックスは、スキップフラグ、マージフラグ、CU予測方式情報、および予測単位分割タイプの結合シンタックスであることが好ましい。
上記構成によれば、スキップフラグ、マージフラグ、CU予測方式情報、および予測単位分割タイプを予測単位分割タイプ情報と合わせて復号する構成において、適応処理を実現できる。
本発明に係る画像復号装置では、上記予測単位分割タイプ群として、長方形の予測単位を含む対称パーティションの予測単位分割タイプの集合である、対称長方形予測単位分割タイプ群と、長方形の予測単位を含む非対称パーティションの予測単位分割タイプの集合である、非対称長方形予測単位分割タイプ群とが少なくとも規定され、上記シンタックスの取り得る第一の値が、上記対称長方形予測単位分割タイプ群に対応付けられた値であり、上記シンタックスの取り得る第二の値が、上記非対称長方形予測単位分割タイプ群に対応付けられた値であることが好ましい。
上記の構成によれば、対称長方形予測単位分割タイプ群と、非対称長方形予測単位分割タイプ群に異なるシンタックス値が対応付けられている。また、各予測単位分割タイプ群が復号された際には、対応するシンタックス値により短い符号が割り当てられるよう適応処理が行われる。
一般に、対称パーティションの方が非対称パーティションに較べて発生しやすい傾向があり、長方形予測単位が連続して発生する領域においては、対称パーティションの長方形予測単位のみが連続して発生する領域と、対称パーティション、非対称パーティションを問わず長方形予測単位が連続して発生する領域がある。対称長方形予測単位群と非対称長方形予測単位群とに異なるシンタックス値を割り当てることで、前者のケースにおいて、対称長方形予測単位に対してより短い符号を割り当てることができるため、符号量が削減できる。
本発明に係る画像復号装置では、上記予測単位分割タイプ群として、イントラ符号化単位における長方形の予測単位を含む、イントラ長方形予測単位分割タイプ群と、インター符号化単位における長方形の予測単位を含む、インター長方形予測単位分割タイプ群とが少なくとも規定され、上記シンタックスの取り得る第一の値が、上記イントラ長方形予測単位分割タイプ群に対応付けられた値であり、上記シンタックスの取り得る第二の値が、上記インター長方形予測単位分割タイプ群に対応付けられた値であることが好ましい。
上記の構成によれば、インター長方形予測単位分割タイプ群と、イントラ長方形予測単位分割タイプ群に異なるシンタックス値が割り当てられている。また、各予測単位分割タイプ群が復号された際には、対応するシンタックス値により短い符号が割り当てられるよう適応処理が行われる。
一般に、イントラ長方形予測単位分割タイプ群は、インター長方形予測単位分割タイプ群に較べて複雑な領域で選択されやすい傾向がある。上記の構成によれば、複雑度が高い領域でイントラ長方形予測単位分割タイプ群が連続して発生する場合に、同予測単位分割タイプ群に対して短い符号を割り当てられる。また、それ以外の領域で、インター長方形予測単位分割タイプ群が連続して発生する場合にも、同予測単位分割タイプ群に対して短い符号が割り当てられるため、符号量が削減できる。
上記の課題を解決するために、本発明に係る画像符号化装置では、符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成する画像符号化装置において、上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、取り得る値の少なくとも一部が、予測単位分割タイプの特定に用いる値であるシンタックスであって、前記予測単位分割タイプの特定に用いる値の少なくとも一つの値は、長方形予測単位分割タイプを2以上含む予測単位分割タイプ群に対応付けられた値であるシンタックスを符号化するシンタックス符号化手段と、上記予測単位分割タイプ群に含まれる予測単位分割タイプが発生した場合に、前記予測単位分割タイプ群に対してより小さいコード番号が割り当てられるよう、前記シンタックスの復号に用いる可変テーブルを更新する適応処理手段を備える。
なお、上記画像復号装置に対応する構成を備える画像符号化装置も本発明の範疇に入る。上記のように構成された画像符号化装置によれば、本発明に係る画像復号装置と同様の効果を奏することができる。
本発明に係る画像復号装置は、符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成して画像を復元する画像復号装置において、上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、上記長方形予測単位分割タイプが2以上属している予測単位分割タイプ群が規定されており、処理対象となる符号化単位について、上記予測単位分割タイプ群に属する長方形予測単位分割タイプを復元した場合、該予測単位分割タイプ群に属する長方形予測単位分割タイプそれぞれに対して、復号前よりも短い符号が復号されるよう適応処理する適応処理手段を備える構成である。
本発明に係る画像符号化装置は、符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成する画像符号化装置において、上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、上記長方形予測単位分割タイプが2以上属している予測単位分割タイプ群が規定されており、処理対象となる符号化単位について、上記予測単位分割タイプ群に属する長方形予測単位分割タイプが発生した場合、該予測単位分割タイプ群に属する長方形予測単位分割タイプそれぞれに対して、発生前よりも短い符号が割り当てられるよう適応処理する適応処理手段を備える構成である。
本発明に係る符号化データのデータ構造は、予測画像を生成するための予測単位を得るために、符号化単位を1以上の数に分割する分割方式である所定の予測単位分割タイプを特定するための予測単位分割情報を含む符号化データのデータ構造において、上記符号化データを復号する画像復号装置において、上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、上記長方形予測単位分割タイプが2以上属している予測単位分割タイプ群が規定されており、上記符号化データは、符号化されている予測単位分割タイプが上記予測単位分割タイプ群に属するいずれの長方形予測単位分割タイプであるかを特定するための追加情報を含むデータ構造である。
本発明に係る画像復号装置では、符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成して画像を復元する画像復号装置において、上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、取り得る値の少なくとも一部が、予測単位分割タイプの特定に用いる値であるシンタックスであって、前記予測単位分割タイプの特定に用いる値の少なくとも一つの値は、長方形予測単位分割タイプを2以上含む予測単位分割タイプ群に対応付けられた値であるシンタックスを復号するシンタックス復号手段と、上記予測単位分割タイプ群に含まれる予測単位分割タイプが復号された場合に、前記予測単位分割タイプ群に対してより小さいコード番号が割り当てられるよう、前記シンタックスの復号に用いる可変テーブルを更新する適応処理手段を備える。
本発明に係る画像符号化装置では、符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成する画像符号化装置において、上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、取り得る値の少なくとも一部が、予測単位分割タイプの特定に用いる値であるシンタックスであって、前記予測単位分割タイプの特定に用いる値の少なくとも一つの値は、長方形予測単位分割タイプを2以上含む予測単位分割タイプ群に対応付けられた値であるシンタックスを符号化するシンタックス符号化手段と、上記予測単位分割タイプ群に含まれる予測単位分割タイプが発生した場合に、前記予測単位分割タイプ群に対してより小さいコード番号が割り当てられるよう、前記シンタックスの復号に用いる可変テーブルを更新する適応処理手段を備える。
よって、上述のような状況において、同じ予測単位分割タイプ群に属する長方形予測単位分割タイプに短い符号が割り当てられることで、符号量を削減することができる。
本発明の一実施形態について図1〜図36を参照して説明する。まず、図2を参照しながら、動画像復号装置(画像復号装置)1および動画像符号化装置(画像符号化装置)2の概要について説明する。図2は、動画像復号装置1の概略的構成を示す機能ブロック図である。
図2に示す動画像復号装置1および動画像符号化装置2は、H.264/MPEG−4 AVC規格に採用されている技術、VCEG(Video Coding Expert Group)における共同開発用コーデックであるKTAソフトウェアに採用されている技術、TMuC(Test Model under Consideration)ソフトウェアに採用されている技術、および、その後継コーデックである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)〜(d)は、それぞれ、ピクチャPICTを規定するピクチャレイヤ、スライスSを規定するスライスレイヤ、ツリーブロック(Tree block)TBLKを規定するツリーブロックレイヤ、ツリーブロックTBLKに含まれる符号化単位(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が参照する符号化パラメータ群が含まれている。例えば、動画像符号化装置2が符号化の際に用いた可変長符号化のモードを示す符号化モード情報(entropy_coding_mode_flag)は、ピクチャヘッダPHに含まれる符号化パラメータの一例である。
entropy_coding_mode_flagが0の場合、当該ピクチャPICTは、CAVLC(Context-based Adaptive Variable Length Coding)によって符号化されている。また、entropy_coding_mode_flagが1である場合、当該ピクチャPICTは、CABAC(Context-based Adaptive Binary Arithmetic Coding)によって符号化されている。
なお、ピクチャヘッダPHは、ピクチャー・パラメーター・セット(PPS:Picture Parameter Set)とも称される。
(スライスレイヤ)
スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。スライスSは、図3の(b)に示すように、スライスヘッダSH、及び、ツリーブロックTBLK1〜TBLKNC(NCはスライスSに含まれるツリーブロックの総数)を含んでいる。
スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。スライスSは、図3の(b)に示すように、スライスヘッダSH、及び、ツリーブロックTBLK1〜TBLKNC(NCはスライスSに含まれるツリーブロックの総数)を含んでいる。
スライスヘッダSHには、対象スライスの復号方法を決定するために動画像復号装置1が参照する符号化パラメータ群が含まれる。スライスタイプを指定するスライスタイプ指定情報(slice_type)は、スライスヘッダSHに含まれる符号化パラメータの一例である。
スライスタイプ指定情報により指定可能なスライスタイプとしては、(1)符号化の際にイントラ予測のみを用いるIスライス、(2)符号化の際に単予測、又は、イントラ予測を用いるPスライス、(3)符号化の際に単予測、双予測、又は、イントラ予測を用いるBスライスなどが挙げられる。
また、スライスヘッダSHには、動画像復号装置1の備えるループフィルタ(不図示)によって参照されるフィルタパラメータが含まれていてもよい。
(ツリーブロックレイヤ)
ツリーブロックレイヤでは、処理対象のツリーブロックTBLK(以下、対象ツリーブロックとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。
ツリーブロックレイヤでは、処理対象のツリーブロックTBLK(以下、対象ツリーブロックとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。
ツリーブロックTBLKは、ツリーブロックヘッダTBLKHと、符号化単位情報CU1〜CUNL(NLはツリーブロックTBLKに含まれる符号化単位情報の総数)とを含む。ここで、まず、ツリーブロックTBLKと、符号化単位情報CUとの関係について説明すると次のとおりである。
ツリーブロックTBLKは、イントラ予測またはインター予測、および、変換の各処理ためのブロックサイズを特定するためのユニットに分割される。
ツリーブロックTBLKの上記ユニットは、再帰的な4分木分割により分割されている。この再帰的な4分木分割により得られる木構造のことを以下、符号化ツリー(coding tree)と称する。
以下、符号化ツリーの末端のノードであるリーフ(leaf)に対応するユニットを、符号化ノード(coding node)として参照する。また、符号化ノードは、符号化処理の基本的な単位となるため、以下、符号化ノードのことを、符号化単位(CU)とも称する。
つまり、符号化単位情報CU1〜CUNLは、ツリーブロックTBLKを再帰的に4分木分割して得られる各符号化ノード(符号化単位)に対応する情報である。
また、符号化ツリーのルート(root)は、ツリーブロックTBLKに対応付けられる。換言すれば、ツリーブロックTBLKは、複数の符号化ノードを再帰的に含む4分木分割の木構造の最上位ノードに対応付けられる。
なお、各符号化ノードのサイズは、当該符号化ノードが直接に属する符号化ノード(すなわち、当該符号化ノードの1階層上位のノードのユニット)のサイズの縦横とも半分である。
また、各符号化ノードの取り得るサイズは、符号化データ#1のシーケンスパラメータセットSPSに含まれる、符号化ノードのサイズ指定情報および最大階層深度(maximum hierarchical depth)に依存する。例えば、ツリーブロックTBLKのサイズが64×64画素であって、最大階層深度が3である場合には、当該ツリーブロックTBLK以下の階層における符号化ノードは、4種類のサイズ、すなわち、64×64画素、32×32画素、16×16画素、および8×8画素の何れかを取り得る。
(ツリーブロックヘッダ)
ツリーブロックヘッダTBLKHには、対象ツリーブロックの復号方法を決定するために動画像復号装置1が参照する符号化パラメータが含まれる。具体的には、図3の(c)に示すように、対象ツリーブロックの各CUへの分割パターンを指定するツリーブロック分割情報SP_TBLK、および、量子化ステップの大きさを指定する量子化パラメータ差分Δqp(qp_delta)が含まれる。
ツリーブロックヘッダTBLKHには、対象ツリーブロックの復号方法を決定するために動画像復号装置1が参照する符号化パラメータが含まれる。具体的には、図3の(c)に示すように、対象ツリーブロックの各CUへの分割パターンを指定するツリーブロック分割情報SP_TBLK、および、量子化ステップの大きさを指定する量子化パラメータ差分Δqp(qp_delta)が含まれる。
ツリーブロック分割情報SP_TBLKは、ツリーブロックを分割するための符号化ツリーを表す情報であり、具体的には、対象ツリーブロックに含まれる各CUの形状、サイズ、および、対象ツリーブロック内での位置を指定する情報である。
なお、ツリーブロック分割情報SP_TBLKは、CUの形状やサイズを明示的に含んでいなくてもよい。例えばツリーブロック分割情報SP_TBLKは、対象ツリーブロック全体またはツリーブロックの部分領域を四分割するか否かを示すフラグであるCU分割フラグ(split_coding_unit_flag)の集合であってもよい。その場合、ツリーブロックの形状やサイズを併用することで各CUの形状やサイズを特定できる。
また、量子化パラメータ差分Δqpは、対象ツリーブロックにおける量子化パラメータqpと、当該対象ツリーブロックの直前に符号化されたツリーブロックにおける量子化パラメータqp’との差分qp−qp’である。
(CUレイヤ)
CUレイヤでは、処理対象のCU(以下、対象CUとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。
CUレイヤでは、処理対象のCU(以下、対象CUとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。
ここで、符号化単位情報CUに含まれるデータの具体的な内容の説明をする前に、CUに含まれるデータの木構造について説明する。符号化ノードは、予測ツリー(prediction tree;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の(d)を参照しながら符号化単位情報CUに含まれるデータの具体的な内容について説明する。図3の(d)に示すように、符号化単位情報CUは、具体的には、スキップモードフラグSKIP、CU予測タイプ情報Pred_type、PT情報PTI、および、TT情報TTIを含む。
続いて、図3の(d)を参照しながら符号化単位情報CUに含まれるデータの具体的な内容について説明する。図3の(d)に示すように、符号化単位情報CUは、具体的には、スキップモードフラグSKIP、CU予測タイプ情報Pred_type、PT情報PTI、および、TT情報TTIを含む。
[スキップフラグ]
スキップフラグSKIPは、対象CUについて、スキップモードが適用されているか否かを示すフラグ(skip_flag)であり、スキップフラグSKIPの値が1の場合、すなわち、対象CUにスキップモードが適用されている場合、その符号化単位情報CUにおけるPT情報PTIは省略される。なお、スキップフラグSKIPは、Iスライスでは省略される。
スキップフラグSKIPは、対象CUについて、スキップモードが適用されているか否かを示すフラグ(skip_flag)であり、スキップフラグSKIPの値が1の場合、すなわち、対象CUにスキップモードが適用されている場合、その符号化単位情報CUにおけるPT情報PTIは省略される。なお、スキップフラグ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_coding_unit_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の(d)に示すように、対象CUの各変換ブロックへの分割パターンを指定するTT分割情報SP_TU、および、TU情報TUI1〜TUINT(NTは、対象CUに含まれるブロックの総数)を含んでいる。
TT分割情報SP_TUは、具体的には、対象CUに含まれる各TUの形状、サイズ、および、対象CU内での位置を決定するための情報である。例えば、TT分割情報SP_TUは、対象となるノードの分割を行うのか否かを示す情報(split_transform_flag)と、その分割の深度を示す情報(trafoDepth)とから実現することができる。
また、例えば、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分割タイプには、対象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分割タイプには、対象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を備えている。
[復号モジュール]
復号モジュール10は、バイナリからシンタックス値を復号する復号処理を行う。復号モジュール10は、より具体的には、供給元から供給される符号化データおよびシンタックス種別に基づいて、CABACおよびCAVLC等のエントロピー符号化方式により符号化されているシンタックス値を復号し、復号したシンタックス値を供給元に返す。
復号モジュール10は、バイナリからシンタックス値を復号する復号処理を行う。復号モジュール10は、より具体的には、供給元から供給される符号化データおよびシンタックス種別に基づいて、CABACおよびCAVLC等のエントロピー符号化方式により符号化されているシンタックス値を復号し、復号したシンタックス値を供給元に返す。
以下に示す例では、符号化データおよびシンタックス種別の供給元は、CU情報復号部11、PU情報復号部12、およびTU情報復号部13である。
なお、図5を用いて、復号モジュール10がCAVLCの符号化方式により復号を行う場合について概略的に説明すると次のとおりである。図5は、可変テーブルを用いたCAVLC符号化/復号処理の概略について示す図である。
復号モジュール10は、入力される符号化データのバイナリ列(bin)からシンタックス値を復号するためのVLC方式により復号処理を行う。
復号モジュール10は、シンタックスやコンテキストに対応するVLC方式を用いて、符号化データのビット列からコード番号を復号する。VLC方式とは、ビット列と、コード番号とを対応付ける方式のことである。VLC方式としては、例えば、ビット列とコード番号とを対応付けるテーブルを用いる方式や、ビット列からコード番号を導出するための導出式を用いる方式などが挙げられる。
さらに、復号モジュール10は、コード番号とシンタックス値とが対応付けられた可変テーブルを参照し、復号したコード番号に対応するシンタックス値を導出する。
さらに、復号モジュール10は、可変テーブルを、コード番号の復号結果に応じて適応的に更新する。可変テーブルの更新とは、例えば、あるコード番号に対応付けられているシンタックス値と、当該あるコード番号より1小さいコード番号に対応付けられているシンタックス値とを入れ替える処理のことをいう。
このように、コード番号の復号結果に応じて可変テーブルを適応的に更新する処理のことを可変テーブル適応処理と称する。可変テーブル適応処理の詳細については後述する。
このようにして、復号モジュール10における復号処理が完了する。なお、復号モジュール10の詳細については、後述する。
[CU情報復号部]
CU情報復号部11は、復号モジュール10を用いて、動画像符号化装置2から入力された1フレーム分の符号化データ#1について、ツリーブロックおよびCUレベルでの復号処理を行う。CU情報復号部11は、具体的には、以下の手順により符号化データ#1を復号する。
CU情報復号部11は、復号モジュール10を用いて、動画像符号化装置2から入力された1フレーム分の符号化データ#1について、ツリーブロックおよびCUレベルでの復号処理を行う。CU情報復号部11は、具体的には、以下の手順により符号化データ#1を復号する。
まず、CU情報復号部11は、符号化データ#1に含まれる各種ヘッダを参照して、符号化データ#1を、スライス、ツリーブロックに順次分離する。
ここで、各種ヘッダには、(1)対象ピクチャのスライスへの分割方法についての情報、および(2)対象スライスに属するツリーブロックのサイズ、形状および対象スライス内での位置についての情報が含まれる。
そして、CU情報復号部11は、ツリーブロックヘッダTBLKHに含まれるツリーブロック分割情報SP_TBLKを参照して、対象ツリーブロックを、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に供給する。
[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に供給する。
[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に供給する。
[予測画像生成部]
予測画像生成部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は、予測画像生成部14より供給される予測画像Predと、逆量子化・逆変換部15より供給される予測残差Dとを加算することによって、対象CUについての復号画像Pを生成する。
なお、動画像復号装置1において、画像内の全てのツリーブロックに対して、ツリーブロック単位の復号画像生成処理が終わった時点で、動画像復号装置1に入力された1フレーム分の符号化データ#1に対応する復号画像#2が外部に出力される。
(CU情報復号部および復号モジュールの詳細)
次に、図1を用いて、CU情報復号部11および復号モジュール10の構成例について説明する。図1は、動画像復号装置1において、CU予測情報を復号するための構成、すなわちCU情報復号部11および復号モジュール10の構成について例示する機能ブロック図である。
次に、図1を用いて、CU情報復号部11および復号モジュール10の構成例について説明する。図1は、動画像復号装置1において、CU予測情報を復号するための構成、すなわちCU情報復号部11および復号モジュール10の構成について例示する機能ブロック図である。
以下、CU情報復号部11および復号モジュール10の順で、各部の構成について説明する。
(CU情報復号部)
図1に示すように、CU情報復号部11は、結合シンタックス決定部(追加情報復元手段)111、PU分割タイプ定義テーブル113、およびPU分割タイプ残余情報定義テーブル114を備える。
図1に示すように、CU情報復号部11は、結合シンタックス決定部(追加情報復元手段)111、PU分割タイプ定義テーブル113、およびPU分割タイプ残余情報定義テーブル114を備える。
PU分割タイプ定義テーブル113およびPU分割タイプ残余情報定義テーブル114は、結合シンタックス(cu_split_pred_part_mode)の定義テーブル112を構成する。
[PU分割タイプ定義テーブル]
PU分割タイプ定義テーブル113は、結合シンタックスcu_split_pred_part_modeのシンタックス値と、CU分割フラグ(split_coding_unit_flag)、スキップフラグ(skip_flag)、マージフラグ(merge_flag)、CU予測方式情報(PredMode)、およびPU分割タイプ情報(PartMode)の組み合わせとを対応付けるテーブルである。
PU分割タイプ定義テーブル113は、結合シンタックスcu_split_pred_part_modeのシンタックス値と、CU分割フラグ(split_coding_unit_flag)、スキップフラグ(skip_flag)、マージフラグ(merge_flag)、CU予測方式情報(PredMode)、およびPU分割タイプ情報(PartMode)の組み合わせとを対応付けるテーブルである。
CU分割フラグ、スキップフラグ、マージフラグ(merge_flag)、CU予測方式情報(PredMode)、およびPU分割タイプ情報(PartMode)のそれぞれについては、すでに説明したとおりであるので、その説明を省略する。
PU分割タイプ定義テーブル113では、PU分割タイプは、正方形、横長矩形、縦長矩形のいずれかのグループに属するように定義されている。すなわち、PU分割タイプ定義テーブル113では、横長矩形PUを含むPU分割タイプ(2N×N/2N×nU/2N×nD)を1つのグループにして、そのグループを示すインデックスが割り当てられる。縦長矩形PUを含むPU分割タイプ(N×2N/nL×2N/nR×2N)も同様である。なお、以下において、横長矩形PUを含むPU分割タイプのグループを、横長矩形PUグループと称し、縦長矩形PUを含むPU分割タイプのグループを、縦長矩形PUグループと称する。
図6を用いて、PU分割タイプ定義テーブル113の一構成例であるPU分割タイプ定義テーブル113Aについて説明すると次の通りである。図6は、CUWidth>8の場合におけるPU分割タイプ定義テーブル113Aの構成例を示す図である。
図6に示すように、PU分割タイプ定義テーブル113Aでは、cu_split_pred_part_modeに対応付けて、split_coding_unit_flag ,skip_flag, merge_flag,PredMode,PartModeの組み合わせが定義される。図中において“-”とあるのは、このような組み合わせにおいて値が設定されていないことを示している。すなわち、split_coding_unit_flagが、1の場合、当該CUでは、さらにCU分割が行われるため、skip_flag, merge_flag,PredMode,PartModeの値は設定されない。
また、例えば、cu_split_pred_part_mode=3では、CU分割、スキップ、および、マージは行われないこと(split_coding_unit_flag ,skip_flag, merge_flagは、ともに“0”)、PredMode=MODE_INTER,PartMode=PART_2N×2Nであることが定義されている。
なお、cu_split_pred_part_mode=4、5において、“escape”と示しているのは、グループに属するPU分割タイプを特定するために、さらに追加のシンタックス値が復号されることを示している。追加のシンタックス値とは、以下に示すPU分割タイプ残余情報定義テーブル114に定義されているシンタックスrem_part_modeである。rem_part_modeは、PU分割タイプが、同じPUグループに属するいずれであるかを特定するための情報を示す。
[PU分割タイプ残余情報定義テーブル]
PU分割タイプ残余情報定義テーブル114は、“escape”指定がされているcu_split_pred_part_modeについて追加で復号されるrem_part_modeの値と、PartModeとを対応付けるテーブルである。
PU分割タイプ残余情報定義テーブル114は、“escape”指定がされているcu_split_pred_part_modeについて追加で復号されるrem_part_modeの値と、PartModeとを対応付けるテーブルである。
図7を用いて、PU分割タイプ残余情報定義テーブル114の一構成例であるPU分割タイプ残余情報定義テーブル114Aについて説明すると次のとおりである。図7は、CUWidth>8の場合におけるPU分割残余情報定義テーブル114Aの構成例を示す図である。
図7に示すように、PU分割タイプ残余情報定義テーブル114Aでは、“escape”が指定されたcu_split_pred_part_modeについて、rem_part_modeおよびPartModeの対応付けが定義される。
すなわち、PU分割タイプ残余情報定義テーブル114Aでは、cu_split_pred_part_modeの値が、横長矩形PUグループを示す場合(図6においては“4”)、または、縦長矩形PUグループを示す場合(図6においては“5”)について、追加で復号されるrem_part_modeと、PartModeとの対応付けが定義される。
例えば、PU分割タイプ残余情報定義テーブル114Aでは、cu_split_pred_part_mode=4(横長矩形PUグループ)の場合、rem_part_modeは、“0”、“1”、または“2”の値をとり、それぞれ、PartMode“PART_2N×N”、“PART_2N×nU”、および“PART_2N×nD”に対応していることが定義されている。
なお、図7では、rem_part_modeのシンタックスの値(value)と、値に割り当てられているビット列(binary)とを併記している。
また、対称パーティションのrem_part_modeの値は、非対称パーティションのrem_part_modeの値に比べて、短い符号が割り当てられていることが好ましい。例えば、図7に示すように、2N×Nに対して、2N×nUおよび2N×nDよりも短い符号が割り当てられていることが好ましい。
これは、統計的に対称パーティションの発生確率のほうが、非対称パーティションの発生確率よりも高い傾向があるためである。このように、発生確率が高い対称パーティションに短い符号を割り当てることにより、符号量の削減を図ることが可能である。
また、パーティション数が少ないPU分割タイプにより短い符号が割り当てられていることが好ましい。例えば、2N×2NのCUを2個の2N×NサイズのPUに分割するPU分割タイプに対しては、4個の2N×0.5NサイズのPUに分割するPU分割タイプに比べて短い符号を割り当てることが好ましい。
[結合シンタックス決定部]
結合シンタックス決定部111は、復号モジュール10を用いて、cu_split_pred_part_modeを復号し、復号したcu_split_pred_part_modeに基づいて、結合シンタックス(cu_split_pred_part_mode)の定義テーブル112を参照してCU予測方式情報(PredMode)やPU分割タイプ(PartMode)等の値を決定する。
結合シンタックス決定部111は、復号モジュール10を用いて、cu_split_pred_part_modeを復号し、復号したcu_split_pred_part_modeに基づいて、結合シンタックス(cu_split_pred_part_mode)の定義テーブル112を参照してCU予測方式情報(PredMode)やPU分割タイプ(PartMode)等の値を決定する。
結合シンタックス決定部111は、CU予測モードの符号化データおよびシンタックス種別cu_split_pred_part_modeを、復号モジュール10に供給する。また、結合シンタックス決定部111は、復号モジュール10から、復号されたcu_split_pred_part_modeのシンタックス値を取得する。
そして、結合シンタックス決定部111は、結合シンタックス(cu_split_pred_part_mode)の定義テーブル112に基づいて、cu_split_pred_part_modeの値からPU分割タイプの値を導出する。また、“escape”指定がされているcu_split_pred_part_modeの場合、復号モジュール10によって、rem_part_modeを追加で復号し、復号したrem_part_modeを用いてPU分割タイプ残余情報定義テーブル114Aを参照することで最終的なPU分割タイプの値を導出する。結合シンタックス決定部111の動作詳細については、後述する。
なお、CU情報復号部11は、結合シンタックス決定部111が、PU分割タイプの値を導出したあと、図8に示すようなPUサイズテーブルDF11を用いて、PUの個数およびPUサイズを決定してもよい。
図8について説明すると次のとおりである。図8に示すPUサイズテーブルDF11では、CUのサイズと、PU分割タイプ(イントラCUおよびインターCU)に応じて、PUの個数およびサイズが定義されている。なお、表中の“d”は、CUの分割深度を示す。
PUサイズテーブルDF11では、CUのサイズとして、64×64、32×32、16×16、および8×8の4つが定義されている。また、CUの分割深度dはCUの最大サイズに対する分割の深度を表す値であり、最大CUサイズが64×64である場合にはd=0が64×64、d=1が32×32、d=2が16×16、d=3が8×8のCUサイズを示す。最大CUサイズが決まれば、CUサイズとCUの分割深度は1対1に対応する。したがって、以降の記載にあるCUサイズに基づく判定処理は、CUの分割深度に基づく判定処理として実現してもよい。逆に、CUの分割深度に基づく判定処理は、CUサイズに基づく判定処理として実現してもよい。
また、PUサイズテーブルDF11では、CUのサイズに対して、各PU分割タイプにおけるPUの個数およびサイズが定義されている。
例えば、64×64のインターCUであって、2N×N分割である場合は、PUは2個でサイズは共に64×32である。
また、64×64のインターCUであって、2N×nU分割である場合は、PUは2個でサイズは64×16と64×48とである。
また、8×8のイントラCUであって、N×N分割である場合は、PUは4個でサイズはすべて4×4である。
なお、スキップCUのPU分割タイプは、2N×2Nと推定される。また、表中、“−”で示している箇所は、選択できないPU分割タイプであることを示している。
すなわち、CUサイズが、8×8の場合、インターCUにおいて、非対称パーティション(2N×nU、2N×nD、nL×2N、およびnR×2N)のPU分割タイプは選択不可である。また、インターCUの場合、N×NのPU分割タイプは、選択不可である。
また、イントラ予測では、CUサイズが、8×8の場合のみ、N×NのPU分割タイプを選択することが可能である。
なお、一般的には、CUサイズが最小CUサイズである場合に非対称パーティションは選択不可に設定される。
(復号モジュール)
図1に示すように、復号モジュール10は、結合シンタックス復号部(復号手段、予測単位分割タイプ群取得手段、追加情報復元手段、算術復号手段)1011、可変テーブル記憶部1012、VLC方式選択部1013、可変テーブル選択部1014、および可変テーブル適応部1015(適応処理手段)を備える。
図1に示すように、復号モジュール10は、結合シンタックス復号部(復号手段、予測単位分割タイプ群取得手段、追加情報復元手段、算術復号手段)1011、可変テーブル記憶部1012、VLC方式選択部1013、可変テーブル選択部1014、および可変テーブル適応部1015(適応処理手段)を備える。
[結合シンタックス復号部]
結合シンタックス復号部1011は、結合シンタックス決定部111から供給される符号化データおよびシンタックス種別“cu_split_pred_part_mode”に基づいて、VLC方式選択部1013、可変テーブル選択部1014、および可変テーブル適応部1015にアクセスし、符号化データに含まれるバイナリからシンタックス値の復号を行う。結合シンタックス復号部1011の具体的な動作詳細については後述する。
結合シンタックス復号部1011は、結合シンタックス決定部111から供給される符号化データおよびシンタックス種別“cu_split_pred_part_mode”に基づいて、VLC方式選択部1013、可変テーブル選択部1014、および可変テーブル適応部1015にアクセスし、符号化データに含まれるバイナリからシンタックス値の復号を行う。結合シンタックス復号部1011の具体的な動作詳細については後述する。
[可変テーブル記憶部]
可変テーブル記憶部1012には、各種シンタックスに対応する可変テーブルが記憶されている。必ずしも1種類のシンタックスに対して1個の可変テーブルが対応していなくてもよく、例えば、CUサイズに応じて、同一のシンタックスに対して異なる可変テーブルが対応付けられていてもよい。
可変テーブル記憶部1012には、各種シンタックスに対応する可変テーブルが記憶されている。必ずしも1種類のシンタックスに対して1個の可変テーブルが対応していなくてもよく、例えば、CUサイズに応じて、同一のシンタックスに対して異なる可変テーブルが対応付けられていてもよい。
可変テーブルでは、コード番号と、シンタックス値とが対応付けられている。また、可変テーブルは、復号されるコード番号に応じて、コード番号とシンタックス値の対応が更新される。
例えば、シンタックス種別“cu_split_pred_part_mode(結合シンタックス)”に対応する可変テーブルについて説明すれば次のとおりである。すなわち、可変テーブル記憶部1012には、CUサイズに応じて、8×8CU結合シンタックス1012A、16×16CU結合シンタックス1012B、32×32CU結合シンタックス1012C、および、64×64CU結合シンタックス1012Dの4つが定義されている。
[VLC方式選択部]
VLC方式選択部1013は、既定の定義に基づき、シンタックス種別に応じて、符号化データからコード番号を復号するために用いるVLC方式を設定する。
VLC方式選択部1013は、既定の定義に基づき、シンタックス種別に応じて、符号化データからコード番号を復号するために用いるVLC方式を設定する。
例えば、VLC方式選択部1013は、シンタックス種別“cu_split_pred_part_mode”については、対象CUのサイズ(いいかえれば、対象CUの分割深度(CUのデプス、depth))に基づいて最大値を設定し、当該最大値に応じてVLC方式を選択する。具体的には、VLC方式選択部1013は、CUサイズが8×8(CUデプスが3)の場合には、最大値を5と設定し、CUサイズが8×8より大きい(CUデプスが3より小さい)場合には、最大値を6に設定する。そして、VLC方式選択部1013は、VLC方式として、設定した最大値に対応するtruncated unary符号を選択する。
また、例えば、VLC方式選択部1013は、シンタックス種別“rem_part_mode”については、最大値2に対応するtruncated unary符号を選択する。
なお、設定される最大値は、各シンタックス値の取り得る値の数から1を引いた数であることが好ましい。rem_part_modeの場合、特定のCUサイズに対して適用可能なPUグループであって、同一方向の長方形を含むPUグループに属するPU分割タイプの種類の数から1を引いた値であることが好ましい。
横長矩形PUグループに属するPU分割タイプの場合、2N×N、2N×nU、2N×nDの3種類であるため、この場合、最大値は2と設定することが好ましい。
また、VLC方式選択部1013は、設定したVLC方式を結合シンタックス復号部1011に通知する。
なお、最大値cMaxの場合のtruncated unary符号によるコード番号(codeNum)の復号は次の疑似コードに規定される処理により実現できる。ここで、read_bits(1)は符号化データから1bitのバイナリを読み出してその値を返す関数である。
leadingZeroBits = -1
for( b = 0; !b && leadingZeroBits < cMax; leadingZeroBits++ )
b = read_bits( 1 )
codeNum = leadingZeroBits
[可変テーブル選択部]
可変テーブル選択部1014は、既定の定義に基づき、対象シンタックスの種類に応じて、可変テーブルの適用有無および適用する可変テーブルを選択する。
具体的には、可変テーブル選択部1014は、シンタックス種別“cu_split_pred_part_mode”については、可変テーブルを適用することを決定し、CUサイズ応じた可変テーブルを可変テーブル記憶部1012から選択する。
また、可変テーブル選択部1014は、シンタックス種別“rem_part_mode”については、可変テーブルを適用しないことを決定する。
また、可変テーブル選択部1014は、可変テーブルの適用有無および選択した可変テーブルを結合シンタックス復号部1011に通知する。
[可変テーブル選択部および可変テーブル記憶部についての補足事項]
(1) 上述のとおり、可変テーブル選択部1014は、PU分割タイプが、正方形、横長矩形、縦長矩形のいずれのグループに属するかを選択する情報を含むシンタックス(例えば、結合シンタックス(cu_split_pred_part_mode))に対しては、可変テーブルを適用し、横長矩形(縦長矩形)PUグループのうちのいずれのPU分割タイプかを特定する情報(例えば、rem_part_mode)に対しては可変テーブルを適用しないことが好ましい。
(1) 上述のとおり、可変テーブル選択部1014は、PU分割タイプが、正方形、横長矩形、縦長矩形のいずれのグループに属するかを選択する情報を含むシンタックス(例えば、結合シンタックス(cu_split_pred_part_mode))に対しては、可変テーブルを適用し、横長矩形(縦長矩形)PUグループのうちのいずれのPU分割タイプかを特定する情報(例えば、rem_part_mode)に対しては可変テーブルを適用しないことが好ましい。
これは、前者のほうが、後者に比べて同一のシンタックス値が連続する確率が高いためにである。例えば、cu_split_pred_part_modeのほうが、rem_part_modeよりも、同一のシンタックス値が連続する確率が高い。
(2) 可変テーブル選択部1014および可変テーブル記憶部1012は、cu_split_pred_part_modeに関し、全てのCUサイズにおいて可変テーブルを適用する構成でなくてもかまわない。一部のCUサイズにのみ可変テーブルを適用するよう構成してもよい。例えば、可変テーブル選択部1014は、64×64CUでは、可変テーブルを適用せず、他のCUサイズでは可変テーブルを適用する構成であってもよい。
(2) 可変テーブル選択部1014および可変テーブル記憶部1012は、cu_split_pred_part_modeに関し、全てのCUサイズにおいて可変テーブルを適用する構成でなくてもかまわない。一部のCUサイズにのみ可変テーブルを適用するよう構成してもよい。例えば、可変テーブル選択部1014は、64×64CUでは、可変テーブルを適用せず、他のCUサイズでは可変テーブルを適用する構成であってもよい。
なお、8×8CUと、それ以外のCUとでは、cu_split_pred_part_modeの値域(最大値)が異なるため、異なる可変テーブルを用いることが好ましい。
より一般化していえば、最小サイズのCUと、それ以外のCUとでは、cu_split_pred_part_modeの値域(最大値)が異なる。よって、最小サイズのCUと、それ以外のCUとでは、異なる可変テーブルを用いることが好ましい。
(3) 可変テーブル選択部1014が、CUサイズに応じた可変テーブルを選択することに説明したが、具体的には、可変テーブル選択部1014は、次のようにして可変テーブルを選択することができる。
(3) 可変テーブル選択部1014が、CUサイズに応じた可変テーブルを選択することに説明したが、具体的には、可変テーブル選択部1014は、次のようにして可変テーブルを選択することができる。
まず、可変テーブル選択部1014は、CUのデプス(depth)から、可変テーブルの識別情報(table)を導出する次の式(1)を用いて、CUサイズに応じた可変テーブルを選択してもよい。
table = SplitTableCounter[depth] … (1)
上記式(1)において、SplitTableCounterは、引数となるCUのデプス(depth)に応じた可変テーブルを返す関数である。
(4) 可変テーブル選択部1014および可変テーブル記憶部1012は、cu_split_pred_part_modeに関し、一部のCUサイズの間で、可変テーブルを共有する構成であってもよい。これにより、可変テーブルのメモリサイズを削減することができる。
上記式(1)において、SplitTableCounterは、引数となるCUのデプス(depth)に応じた可変テーブルを返す関数である。
(4) 可変テーブル選択部1014および可変テーブル記憶部1012は、cu_split_pred_part_modeに関し、一部のCUサイズの間で、可変テーブルを共有する構成であってもよい。これにより、可変テーブルのメモリサイズを削減することができる。
具体的には、可変テーブル選択部1014は、可変テーブルを共有する構成において、以下のようにして可変テーブルを選択してもよい。
まず、可変テーブルを選択するための中間的な選択テーブルmtblを設ける。選択テーブルmtblは、各LCUサイズについて、それぞれのCUデプスにおいて選択される可変テーブルのIDが設定される。選択テーブル(mtbl)では、可変テーブルを共有するCUに対して同じ値(中間テーブルID)が設定されるように定義される。
また、可変テーブル選択部1014は、LCUサイズを示すインデックス(log2_lcu_size_minus4)と、CUデプス(depth)に応じて選択テーブル(mtbl)を参照することで、中間テーブルID(id)を取得する。
選択テーブルmtblの例および可変テーブルの識別情報の導出の疑似コードを以下に示す。
<<疑似コード1>> 16×16CU、32×32CUおよび64×64CUで共有する例
log2_lcu_size_minus4 = log2(LCU size) -4 // 0:16x16, 1:32x32, 2:64x64 …(A)
mtbl[3][4] = {
{0, 1, -1, -1}, // LCU=16x16
{0, 0, 1, -1}, // LCU=32x32
{0, 0, 0, 1}, // LCU=64x64 … 64x64CU, 32x32CU, 16x16CUは、id=0, 8x8CUは、id=1
} …(B)
id = mtbl[LCU_size_idx][depth] //LCU_size_idx = log2_lcu_size_minus4 … (C)
table = SplitTableCounter[id] … (D)
行(A):LCUサイズの対数値から4を引いた値を、LCUサイズを示すインデックスとする。なお、表記の便宜上、LCU_size_idx = log2_lcu_size_minus4とする。
log2_lcu_size_minus4 = log2(LCU size) -4 // 0:16x16, 1:32x32, 2:64x64 …(A)
mtbl[3][4] = {
{0, 1, -1, -1}, // LCU=16x16
{0, 0, 1, -1}, // LCU=32x32
{0, 0, 0, 1}, // LCU=64x64 … 64x64CU, 32x32CU, 16x16CUは、id=0, 8x8CUは、id=1
} …(B)
id = mtbl[LCU_size_idx][depth] //LCU_size_idx = log2_lcu_size_minus4 … (C)
table = SplitTableCounter[id] … (D)
行(A):LCUサイズの対数値から4を引いた値を、LCUサイズを示すインデックスとする。なお、表記の便宜上、LCU_size_idx = log2_lcu_size_minus4とする。
行(B):mtblを定義する。Mtblは、CUサイズ毎に定義される。また、mtblは3行、4列の配列として定義されている。
1行目には、LCU=16x16について定義している。1列目は、depth=0、すなわち16×16CUのとき、id=0であることを定義している。また、2列目は、depth=1、すなわち8×8CUのとき、id=1であることを定義している。なお、mtblでは、depth=0,1,2,3が定義可能だが、LCU=16x16等で、” -1”が設定されている列は、そのようなdepthが存在しないことを示している。
2行目には、LCU=32x32について定義している。2行目では、depth=0の32×32CUと、depth=1の16×16CUとの間で、同じid=0が設定される。また、depth=2の8×8CUでは、id=1が設定される。
3行目には、LCU=64x64について定義している。LCUサイズ=64の場合、depth=0, 1, 2, 3は、それぞれ64x64CU, 32x32CU, 16x16CU, 8x8CUに対応する。3行目では、64×64CU、32×32CU、および16×16CUの間で、同じid=0が設定される。また、8×8CUは、これらのCUサイズとは異なるid=1が設定される。
行(C):LCU_size_idxと、depthとに応じてmtblを参照して、中間テーブルIDを取得する。
行(D):SplitTableCounter関数に、idを適用して最終的なテーブルID(table)を取得する。
<<疑似コード2>> 32×32CUおよび64×64CUで共有する例(mtblのみ)
mtbl[3][4] = {
{1, 2, -1, -1}, // 16x16CUは、id=1, 8x8CUは、id=2
{0, 1, 2, -1}, // 32x32CUは、id=0, 16x16CUは、id=1, 8x8CUは、id=2
{0, 0, 1, 2} // 64x64CU, 32x32CUは、id=0, 16x16CUは、id=1, 8x8CUは、id=2
}
疑似コード1と同様に、32×32CUおよび64×64CUでid=0のテーブルを共有する場合、上記のとおり定義することができる。なお、疑似コード2では、16×16CU、および、8×8CUについて、それぞれ個別のテーブルが設定されている。
mtbl[3][4] = {
{1, 2, -1, -1}, // 16x16CUは、id=1, 8x8CUは、id=2
{0, 1, 2, -1}, // 32x32CUは、id=0, 16x16CUは、id=1, 8x8CUは、id=2
{0, 0, 1, 2} // 64x64CU, 32x32CUは、id=0, 16x16CUは、id=1, 8x8CUは、id=2
}
疑似コード1と同様に、32×32CUおよび64×64CUでid=0のテーブルを共有する場合、上記のとおり定義することができる。なお、疑似コード2では、16×16CU、および、8×8CUについて、それぞれ個別のテーブルが設定されている。
[可変テーブル適応部]
可変テーブル適応部352は、復号されたコード番号に基づいて、選択されている可変テーブルについて可変テーブル適応処理を行う。
可変テーブル適応部352は、復号されたコード番号に基づいて、選択されている可変テーブルについて可変テーブル適応処理を行う。
図9を用いて、可変テーブル適応部352が行う可変テーブル適応処理について説明すると次のとおりである。
図9に示すように、可変テーブル1012は、コード番号codeNumと、シンタックス値Sx(xは=0,1,2…。以下、Sxのことを可変テーブルの要素と称する)とが対応付けられたテーブルである。なお、Sxは、シンタックス値を指し示すテーブルインデックスであっても構わない。
図9の左側に示すように、codeNum=2のS2には、“0”が、codeNum=3の要素S3には、“2”が格納されているとする。
ここで、コード番号(codeNum)“3”が復号された場合、可変テーブル適応部352は、codeNum=3の要素S3と、codeNum=2の要素S2とを入れ替える(以後、この入れ替えをスワップと称する)。これにより、要素S2=2、要素S3=0となる。
codeNum=3の要素S3が復号されたということは、要素S3の発生確率が高い状況と推定することができる。可変テーブル適応部352は、可変テーブルにおいてスワップを行うことで、発生確率が高いと推定される要素“0”に、より小さいコード番号であるcodeNum=2が対応付ける。
(処理の流れ)
以下において,図10および図11を用いて、結合シンタックス決定部111および結合シンタックス復号部1011の処理の流れについて説明する。
以下において,図10および図11を用いて、結合シンタックス決定部111および結合シンタックス復号部1011の処理の流れについて説明する。
[結合シンタックス決定部]
図10を用いて、結合シンタックス決定部111の処理の流れについて説明する。図10は、結合シンタックス決定部111における予測モード決定処理の流れについて示したフローチャートである。
図10を用いて、結合シンタックス決定部111の処理の流れについて説明する。図10は、結合シンタックス決定部111における予測モード決定処理の流れについて示したフローチャートである。
まず、結合シンタックス決定部111は、結合シンタックス復号部1011にアクセスして、CU分割フラグ(split_coding_unit_flag)、スキップフラグ(skip_flag)、マージフラグ(merge_flag)、CU予測方式情報(PredMode)、およびPU分割タイプ(PartMode)の組み合わせに係る結合シンタックスcu_split_pred_part_modeのシンタックス値を取得する(S11)。
次に、結合シンタックス決定部111は、cu_split_pred_part_modeのシンタックス値を用いて、PU分割定義テーブル113を参照して、CU分割フラグ(split_coding_unit_flag)、スキップフラグ(skip_flag)、マージフラグ(merge_flag)、およびCU予測方式情報(PredMode)の各値を導出する(S12)。
次に、結合シンタックス決定部111は、CU分割フラグの値が“1(CU分割する)”か否かを判定する(S13)。
CU分割フラグの値が“1”である場合(S13においてYES)、結合シンタックス決定部111は、対象CUに対してCU分割を適用し、分割した各CUを対象CUとして(S14)、順番に処理を開始する(S11に戻る)。
一方、CU分割フラグの値が“1”でない場合(S13においてNO)、結合シンタックス決定部111は、cu_split_pred_part_modeの値が、横長矩形PUグループを示すか否かを判定する(S15)。
cu_split_pred_part_modeの値が、横長矩形PUグループを示す場合(S15においてYES;例えば、CUサイズが8×8より大きく、かつ、cu_split_pred_part_modeの値が“4”である場合)、結合シンタックス決定部111は、結合シンタックス復号部1011にアクセスして、PU分割タイプの残余情報(rem_part_mode)のシンタックス値を取得し(S17)、S18に処理を進める。
一方、cu_split_pred_part_modeの値が、横長矩形PUグループを示していない場合(S15においてNO)、結合シンタックス決定部111は、さらに、cu_split_pred_part_modeの値が、縦長矩形PUグループを示すか否かを判定する(S16)。
cu_split_pred_part_modeの値が、縦長矩形PUグループを示す場合(S16においてYES;例えば、CUサイズが8×8より大きく、かつ、cu_split_pred_part_modeの値が“5”である場合))、結合シンタックス決定部111は、結合シンタックス復号部1011にアクセスして、PU分割タイプの残余情報(rem_part_mode)のシンタックス値を取得し(S17)、S18に処理を進める。
一方、cu_split_pred_part_modeの値が、縦長矩形PUグループを示していない場合(S16においてNO)、結合シンタックス決定部111は、S18に処理を進める。
結合シンタックス決定部111は、cu_split_pred_part_modeの値、および、S17において復号されていればrem_part_modeの値に基づいて、PartModeの値を導出し(S18)、処理を終了する。
[結合シンタックス復号部]
図11を用いて、結合シンタックス復号部1011の処理の流れについて説明する。図11は、結合シンタックス復号部1011における予測モード復号処理の流れについて示したフローチャートである。
図11を用いて、結合シンタックス復号部1011の処理の流れについて説明する。図11は、結合シンタックス復号部1011における予測モード復号処理の流れについて示したフローチャートである。
まず、結合シンタックス復号部1011は、VLC方式選択部1013にアクセスして、VLC方式選択部1013によって選択されたVLC方式を設定する(S21)。
次に、結合シンタックス復号部1011は、設定したVLC方法を用いて、符号化データからコード番号を復号する(S22)。
次に、結合シンタックス復号部1011は、可変テーブル選択部1014にアクセスして、復元の対象となるシンタックスへの可変テーブルの適用有無を取得し、可変テーブルを適用するか否かを判定する(S23)。
可変テーブルを適用する場合(S23においてYES)、結合シンタックス復号部1011は、可変テーブル選択部1014にアクセスして、可変テーブル選択部1014によって選択された可変テーブルを取得し、シンタックス値を導出するために用いる可変テーブルとして設定する(S24)。
続いて、結合シンタックス復号部1011は、設定した可変テーブルを参照し、復号されたコード番号に対応するシンタックス値を取得する(S25)。
さらに、結合シンタックス復号部1011は、可変テーブル適応部1015に対して、可変テーブルおよびコード番号を供給するとともに、可変テーブル適応処理の実行を指示する(S26)。
一方、可変テーブルを適用しない場合(S23においてNO)、結合シンタックス復号部1011は、コード番号の値をシンタックス値として設定する(S27)。
S25またはS27において、シンタックス値が決定されると、結合シンタックス復号部1011は、シンタックス値を出力し(S28)、処理を終了する。
(作用・効果)
以上に示したとおり、動画像復号装置1は、CUを所定のPU分割タイプにより1以上の数に分割して得られるPUごとに予測画像を生成して画像を復元する動画像復号装置1において、上記所定のPU分割タイプとして、長方形PUへのPU分割タイプである長方形PU分割タイプが複数種類存在し、上記長方形PU分割タイプが2以上属しているPUグループが規定されており、対象CUについて、上記PUグループに属する長方形PU分割タイプを復元した場合、該PUグループに属する長方形PU分割タイプそれぞれに対して、復号前よりも短い符号が復号されるよう適応処理する可変テーブル適応部1015を備える構成である。
以上に示したとおり、動画像復号装置1は、CUを所定のPU分割タイプにより1以上の数に分割して得られるPUごとに予測画像を生成して画像を復元する動画像復号装置1において、上記所定のPU分割タイプとして、長方形PUへのPU分割タイプである長方形PU分割タイプが複数種類存在し、上記長方形PU分割タイプが2以上属しているPUグループが規定されており、対象CUについて、上記PUグループに属する長方形PU分割タイプを復元した場合、該PUグループに属する長方形PU分割タイプそれぞれに対して、復号前よりも短い符号が復号されるよう適応処理する可変テーブル適応部1015を備える構成である。
上記構成により、以下の(1)〜(3)の効果を奏する。
(1)符号量削減
上記構成によれば、例えば、横長矩形PUグループの属するPU分割タイプ(例えば、2N×Nが復号された場合、横長矩形PUグループに対応するシンタックス値に対して、より小さいコード番号が割り当てられるように可変テーブルが更新される。
上記構成によれば、例えば、横長矩形PUグループの属するPU分割タイプ(例えば、2N×Nが復号された場合、横長矩形PUグループに対応するシンタックス値に対して、より小さいコード番号が割り当てられるように可変テーブルが更新される。
従って、横長矩形PUグループに属するPU分割タイプが連続して発生するような状況において、符号量を削減することができる。
上記状況について、図12および図13を用いて、さらに詳しく説明すると次のとおりである。
画像の局所的性質から同一のPU分割タイプが連続して発生しやすいように、一部の関連するPU分割タイプが連続して発生する状況もある。
例えば、図12に示すように、水平に近いエッジE1が存在するような領域では、横長矩形のPUを含む全てのPU分割タイプの発生確率が上がる。図12は、異なる種類の横長矩形PU分割タイプが連続して発生する状況の例を示している。
図12について、さらに説明しておくと、次のとおりである。同図では、cu11〜cu16までの6つの16×16サイズの符号化単位が横一列に並んでいる。スキャン順は、cu11〜cu16の順であるとする。
また、cu11〜cu16の領域において、ほぼ水平で右上がりのエッジE1が存在する。このとき、cu11では、PU分割タイプ:2N×nDが選択されている。また、cu12〜cu15では、2N×Nが選択されている。また、cu16では、2N×nUが選択されている。
このように、ほぼ水平で右上がりのエッジE1が存在するような領域では、横長矩形のPUグループに属するいずれかのPU分割タイプが連続して選択される状況がある。
なお、このような状況では、領域の中ほどにおいて、対称パーティションである2N×NのPU分割タイプが連続して選択される傾向があるといえる。
また、図13を用いて、異なる種類の横長矩形PU分割タイプが連続して発生する状況の別の例について説明すると次のとおりである。
図13では、32×32サイズのcu21の右側に、4つに符号化単位を含む32×32サイズのcu22(ツリーブロック)が隣接している。スキャン順は、cu21、cu22の順であるとする。そして、水平に近いエッジE1が、cu21およびcu22の上方に存在する。
cu21は、2N×nUのPU分割タイプが設定されており、上側のパーティションにエッジE1が存在する。
また、cu22は、4つの16×16CUであるcu220〜cu223を含む。スキャン順は、cu220〜cu223の順であるとする。cu220およびcu221には、2N×NのPU分割タイプが設定されており、それぞれ上側のパーティションにエッジE1が存在する。
また、cu222およびcu223には、2N×2NのPU分割タイプが設定されている。
図13に示すように、符号化単位のサイズが異なる場合でも、異なる種類の横長矩形PU分割タイプが連続して発生する状況がある。
(2)可変テーブルのサイズ削減
上記構成によれば、横長(縦長)矩形PUグループに対応するシンタックス値を可変テーブルの要素とするため、各PU分割タイプに対応するシンタックス値をそれぞれ可変テーブルの要素とする場合と比べて、可変テーブルのサイズを削減することができる。
上記構成によれば、横長(縦長)矩形PUグループに対応するシンタックス値を可変テーブルの要素とするため、各PU分割タイプに対応するシンタックス値をそれぞれ可変テーブルの要素とする場合と比べて、可変テーブルのサイズを削減することができる。
(3)AMP使用時と非使用時のアルゴリズム共通化
AMP(横長矩形:2N×nU/2N×nD、縦長矩形:nL×2N/nR×2N)の使用可否によらず、cu_split_pred_part_modeの復号処理(可変テーブル、VLCに関するもの)を変更しなくても済む。
AMP(横長矩形:2N×nU/2N×nD、縦長矩形:nL×2N/nR×2N)の使用可否によらず、cu_split_pred_part_modeの復号処理(可変テーブル、VLCに関するもの)を変更しなくても済む。
上記構成によれば、AMPの使用可否に応じて、rem_part_modeの復号を行えばよい。すなわち、AMPの使用可の場合、rem_part_modeの復号を行い、AMPの使用不可の場合、rem_part_modeの復号を行わない。
そのため、PU分割タイプの自由度(AMPの使用可否)の制限を、構成を大幅に変更することなく容易に行うことができる。
なお、AMPの使用可否は、例えば、SPSにおけるAMP分割を禁止するフラグ(例えば、sps_disable_amp_split)によりエンコーダ側から伝送される。
(シンタックス構成例)
次に、動画像復号装置1に適用されるシンタックスの構成例について説明する。まず、図14を用いて、非特許文献1におけるシンタックスの例を示す。図14は、符号化ツリー(coding tree)レベル(ツリーブロックレイヤ)のシンタックス表SYN100を示す図である。なお、以下ではエンコーダ側の動作について説明する。また、図14において、x0,y0は、処理対象となるCU内の左上画素の座標を示す。後に説明する図15および図16についても同様である。また、図14〜図16において“A && B”は、“AかつB”の論理積演算を示しており、“A || B”は、“AまたはB”の論理和演算を示す。
次に、動画像復号装置1に適用されるシンタックスの構成例について説明する。まず、図14を用いて、非特許文献1におけるシンタックスの例を示す。図14は、符号化ツリー(coding tree)レベル(ツリーブロックレイヤ)のシンタックス表SYN100を示す図である。なお、以下ではエンコーダ側の動作について説明する。また、図14において、x0,y0は、処理対象となるCU内の左上画素の座標を示す。後に説明する図15および図16についても同様である。また、図14〜図16において“A && B”は、“AかつB”の論理積演算を示しており、“A || B”は、“AまたはB”の論理和演算を示す。
図14に示すように、シンタックス表SYN100では、entropy_coding_mode_flagが“0”であり(SYN1001の”!entropy_coding_flag”に対応)、かつ、スライスタイプが、Iスライスでない(SYN1001の“slice_type != I”に対応)場合、cu_split_pred_part_modeが復号される(SYN1002)。言い換えると、エントロピー符号化方式としてCAVLCが適用され、かつ、非Iスライス(BスライスまたはPスライス)である場合にcu_split_pred_part_modeが復号される。
次に、図15および図16を用いて、動画像復号装置1に適用されるシンタックス表の構成例について説明する。図15は、符号化ツリー(coding tree)レベル(ツリーブロックレイヤ)のシンタックス表SYN11の構成例を示す図である。
図15に示すシンタックス表SYN11について説明する。同図に示すシンタックス表SYN11のSYN111およびSYN112は、それぞれ上述のSYN1001およびSYN1002と同様であるのでその説明を省略する。
続いて、CUサイズが、最小でなく(“log2CUSize > Log2MinCUSize”に対応)、かつ(SYN113)、cu_split_pred_part_modeが、“4”または(SYN114)“5”であった場合(SYN115)、rem_part_mode[x0][y0]を復号する(SYN116)。言い換えると、CUサイズが最小でなく、かつ、cu_split_pred_part_modeの値が横長矩形PUグループまたは縦長矩形PUグループに対応する値である場合、rem_part_mode[x0][y0]を復号する。なお、以上の例では、最小CUは、8×8であるとしたが、これに限られない。すなわち、最小CUを16×16CUとすることも可能であり、非最小のCUを16×16CUよりも大きいCUとすることも可能である。
図16は、符号化ツリー(coding tree)レベル(ツリーブロックレイヤ)のシンタックス表SYN12の構成例を示す図である。シンタックス表SYN12は、AMP分割を禁止する場合の構成例である。
図16に示すシンタックス表SYN12のSYN121およびSYN122は、それぞれ上述のSYN111およびSYN112と同様であるのでその説明を省略する。
続いて、CUサイズが、最小でなく、かつ(SYN123)、AMP分割が禁止されておらず(“!sps_disable_amp_split”)かつ(SYN124)、cu_split_pred_part_modeが、“4”または(SYN125)“5”であった場合(SYN126)、rem_part_mode[x0][y0]を復号する(SYN127)。なお、sps_disable_amp_splitは、上述のとおりSPSにおいて符号化されるパラメータである。
(変形例)
以下において、動画像復号装置1の好ましい変形例について説明する。
以下において、動画像復号装置1の好ましい変形例について説明する。
[1]結合シンタックス(ジョイント符号)を使わない例
CU分割フラグ(split_coding_unit_flag)、スキップフラグ(skip_flag)、マージフラグ(merge_flag)、CU予測方式情報(PredMode)、およびPU分割タイプ情報(PartMode)の情報を結合したシンタックスであるsplit_pred_part_modeを用いる構成について説明したが、これに限られず、このような結合シンタックスを用いない構成とすることも可能である。例えば、CU分割フラグやスキップフラグを独立に復号することも可能である。
CU分割フラグ(split_coding_unit_flag)、スキップフラグ(skip_flag)、マージフラグ(merge_flag)、CU予測方式情報(PredMode)、およびPU分割タイプ情報(PartMode)の情報を結合したシンタックスであるsplit_pred_part_modeを用いる構成について説明したが、これに限られず、このような結合シンタックスを用いない構成とすることも可能である。例えば、CU分割フラグやスキップフラグを独立に復号することも可能である。
そこで、本変形例では、以上で説明した結合シンタックスの定義テーブル112を、図17に示すようなシンタックス定義テーブル112Aに変更する。
CUサイズが16×16以上の場合(非最小CUの場合)について定義されているシンタックス(pred_part_mode)の定義テーブル112Aの一構成例である。
図17に示すシンタックス定義テーブル112Aは、pred_part_modeと、PredModeおよびPartModeの組を対応付けるテーブルである。なお、可変テーブルは、pred_part_modeに対して適用する。
図17に示すように、定義テーブル112Aにおいて、pred_part_modeの値は、“0”、“1”、“2”、および“3”の値を取り、それぞれ「インターCUでCUとPUとが一致」、「インターCUで横長矩形PUグループ」、「インターCUで縦長矩形PUグループ」、および「イントラCU」に対応する。
pred_part_modeが“1(escape)”であるときは、結合シンタックス決定部111は、「インターCUで横長矩形PUグループ」のうちのいずれのPU分割タイプであるかを特定するため、さらに“rem_part_mode”を復号することを結合シンタックス復号部1011に指示する。
また、pred_part_modeが“2(escape)”であるとき、結合シンタックス決定部111は、「インターCUで縦長矩形PUグループ」のうちのいずれのPU分割タイプであるかを特定するため、さらに“rem_part_mode”を復号することを結合シンタックス復号部1011に指示する。
なお、rem_part_modeと、PartModeとの対応付けは、図7に示したPU分割タイプ残余情報定義テーブル114Aにおける定義と同様であるので、ここではその説明を省略する。
次に、図18および図19を用いて、本変形例におけるシンタックス表の構成例について説明する。図18および図19は、符号化ツリーレベルのシンタックス表SYN21および符号化単位(coding unit)レベルのシンタックスSYN22を示す図である。
まず、図18を用いて、符号化ツリーレベルのシンタックス表SYN21について説明する。
図18に示すように、スライスタイプがIスライスでない場合(SYN211)、split_coding_unit_flagが独立して復号される(SYN212)。
次に、図19を用いて、符号化単位レベルのシンタックス表SYN22を示について説明する。
図19に示すように、符号化単位レベルでは、まず、スライスタイプがIスライスでない場合(SYN221)、skip_flagが独立して復号される(SYN222)。また、スキップモードである場合、スキップ処理が行われる(SYN223)。
スキップモードでない場合は以下のとおり処理が行われる。まず、entropy_coding_flagが“1”である場合(SYN224)、“pred_type”が復号される(SYN225)。
一方、entropy_coding_flagが“1”でない場合、pred_part_modeが復号される(SYN226)。さらに、CUサイズが、最小でなく、かつ(SYN227)、cu_split_pred_part_modeが、“1”または(SYN228)“2”であった場合(SYN229)、rem_part_mode[x0][y0]が復号される(SYN230)。
[2]縦横を区別しない例
以上の説明では、横長矩形PUグループと縦長矩形PUグループとを別のグループとする構成であったが、以下では、縦・横の区別をせずに長方形を含むPU分割タイプをまとめる場合の構成例について説明する。すなわち、以下に示す変形例では、非正方形のPU分割タイプを一つのグループとして取り扱う。
以上の説明では、横長矩形PUグループと縦長矩形PUグループとを別のグループとする構成であったが、以下では、縦・横の区別をせずに長方形を含むPU分割タイプをまとめる場合の構成例について説明する。すなわち、以下に示す変形例では、非正方形のPU分割タイプを一つのグループとして取り扱う。
以下に示す変形例は、結合シンタックスsplit_pred_part_modeの代わりにpred_part_modを用いる。pred_part_modeは、概略的に言えば、PredModeおよびPartModeを特定するためのシンタックスである。また、可変テーブルは、pred_part_modeに対して適用する。
[2−1]horz_part_flagを用いる場合
以下の変形例では、PU分割タイプが横長矩形PUグループに属するか、それとも縦長矩形PUグループに属するかを指定するhorz_part_flagを導入する。
以下の変形例では、PU分割タイプが横長矩形PUグループに属するか、それとも縦長矩形PUグループに属するかを指定するhorz_part_flagを導入する。
また、本変形例では、上述したpred_part_modeを用いる。そこで、本変形例では、以上で説明したシンタックスの定義テーブル112を、図20および図21に示すようなシンタックスの定義テーブルに変更する。
図20は、CUサイズが16×16以上の場合(非最小CUの場合)について定義されているpred_part_modeのシンタックス定義テーブル112B1の一構成例を示す図である。図21は、CUサイズが8×8の場合(最小CUの場合)について定義されているpred_part_modeのシンタックス定義テーブル112B2の一構成例である。定義テーブル112B1および112B2は、pred_part_modeと、PredModeおよびPartModeの組を対応付けるテーブルである。
まず、図20に示す定義テーブル112B1について説明する。同図に示すように、定義テーブル112B1において、pred_part_modeの値は、“0”、“1”、および“2”の値を取り、それぞれ「インターCUで正方形PUを含むPU分割タイプ」、「インターCUで非正方形PUを含むPU分割タイプ」および「イントラCU」に対応する。さらにいえば、pred_part_mode“1”では、インター予測における横長矩形PU分割タイプおよび縦長矩形PU分割タイプの6つのPU分割タイプがグループ化されている。
pred_part_modeが“1(escape)”であるときは、「インターCUで非正方形PUを含むPU分割タイプ」のうちのいずれのPU分割タイプであるかを特定するため、さらに“horz_part_flag”および“rem_part_mode”が復号される。
horz_part_flagが“1”のときは、PU分割タイプが横長矩形PUグループに属することを示す。また、horz_part_flagが“0”のときは、PU分割タイプが縦長矩形PUグループに属することを示す。
そして、結合シンタックス決定部111は、最終的にPU分割タイプを、PUグループに属するいずれのPU分割タイプであるかを示す“rem_part_mode”に基づいて決定する。
次に、図21に示す定義テーブル112B2について説明する。同図に示すように、定義テーブル112B2において、pred_part_modeの値は、“0”、“1”、および“2”の値を取り、それぞれ「インターCUで正方形PUを含むPU分割タイプ」、「インターCUで非正方形PUを含むPU分割タイプ」および「イントラCU」に対応する。この点は、図20に示す定義テーブル112B1と同様であるが、以下において異なる。
すなわち、定義テーブル112B2では、pred_part_modeが“1”である場合および“2”である場合の両方において、escapeが指定されている。
pred_part_modeが“1”である場合は、「インターCUで非正方形PUを含むPU分割タイプ」、すなわち横長および縦長のどちらのPU分割タイプであるかを特定するため、さらに“horz_part_flag”が復号される。“horz_part_flag”が“1”であるとき、PU分割タイプは、横長矩形の2N×Nである。また、“horz_part_flag”が“0”であるとき、縦長矩形のPU分割タイプは、N×2Nである。
pred_part_modeが“2”である場合は、「イントラCU」のうち、2N×2NおよびN×NのどちらのPU分割タイプであるかを特定するため、さらに“rem_part_mode”が復号される。“rem_part_mode”が“0”であるとき、PU分割タイプは、2N×2Nである。また、“rem_part_mode”が“1”であるとき、PU分割タイプは、N×Nである。
次に、図22を用いて、本変形例におけるシンタックス表の構成例について説明する。図22は、符号化ツリーレベルのシンタックス表SYN31を示す図である。
図22に示すように、SYN311〜SYN316までは、図19を用いて示したシンタックス表におけるSYN221〜SYN226と同様であるので、その説明を省略する。
続いて、pred_part_modeが“1”である場合(SYN317)、さらにhorz_part_flagが復号される(SYN318)。ここでさらに、CUサイズが、最小でない場合(SYN319)、rem_part_modeが復号される(SYN320)。
(作用・効果)
以上に示したように、PUグループは、横長矩形PU分割タイプの集合、および、縦長矩形PU分割タイプの集合の和集合として規定されている。
以上に示したように、PUグループは、横長矩形PU分割タイプの集合、および、縦長矩形PU分割タイプの集合の和集合として規定されている。
テクスチャが複雑な領域では非正方形のPU分割タイプが連続して発生するという性質がある。このため、上記構成によれば、非正方形のPU分割タイプが連続して発生するような状況において、上記PUグループに属する非正方形の各PU分割タイプに、より短い符号が復号されるよう可変テーブル適応処理が行われるため、符号量の削減を図ることができる。
なお、図20に示した定義テーブル112B1では、horz_part_flagを用いて縦横矩形を区別する構成であったが、図23を用いて以下に示すように、horz_part_flagを用いない構成とすることもできる。
図23は、CUサイズが16×16以上の場合(非最小CUの場合)について定義されているシンタックス(pred_part_mode)の定義テーブル112B1の別の構成例である定義テーブル112B1’を示す。
図23に示すように、定義テーブル112B1’において、pred_part_modeの値は、“0”、“1”、および“2”の値を取り、それぞれ「インターCUで正方形PUを含むPU分割タイプ」、「インターCUで非正方形PUを含むPU分割タイプ」および「イントラCU」に対応する。定義テーブル112B1’と定義テーブル112B1との違いは、定義テーブル112B1’では、非正方形PUの6つのPU分割タイプに対して、縦横矩形区別なくrem_part_modeの値が割り当てられている点である。
図23に示す例では、“0”、“2”、および“4”に、それぞれ横長矩形PU分割タイプの“PART_2N×N”、“PART_2N×nU”、および“PART_2N×nD”が割り当てられている。また、“1”、“3”、および“5”に、それぞれ縦長矩形PU分割タイプの“PART_N×2N”、“PART_nL×2N”、および“PART_nR×2N”が割り当てられている。なお、上記のようにpred_part_modeの値とPU分割タイプの値の関係を既定することで、CUサイズが16×16以上の場合と8×8の場合とで、同一のPU分割タイプに対して同じpred_part_modeの値が対応付けられているという利点がある。
[2−2]さらに、結合シンタックス(ジョイント符号)を用いる場合
変形例[2−1]では、pred_part_modeを使用する構成について説明した。以下では、pred_part_modeの代わりに、cu_split_pred_part_modeを使用する構成について説明する。
変形例[2−1]では、pred_part_modeを使用する構成について説明した。以下では、pred_part_modeの代わりに、cu_split_pred_part_modeを使用する構成について説明する。
そこで、本変形例では、以上で説明したシンタックスの定義テーブル112B1および112B2を、図24および図25に示すような結合シンタックスの定義テーブルに変更する。
図24は、CUサイズが16×16以上の場合(非最小CUの場合)について定義されているcu_split_pred_part_modeの結合シンタックス定義テーブル112B3の一構成例を示す図である。図25は、CUサイズが8×8の場合(最小CUの場合)について定義されているcu_split_pred_part_mode の結合シンタックス定義テーブル112B4の一構成例である。
まず、図24に示す結合シンタックス定義テーブル112B3について説明する。同図に示すように、結合シンタックス定義テーブル112B3において、cu_split_pred_part_modeの値は、“0”〜“5”の値を取る。
“0”は、CU分割に対応しており、“1”は、スキップモードに対応している。また、“2”は、マージを行うインター2N×2Nに対応している。
また、“3”、“4”、および“5”は、「インターCUで正方形PUを含むPU分割タイプ」、それぞれ「インターCUで非正方形PUを含むPU分割タイプ」および「イントラCU」に対応する。
“3”、“4”、および“5”の定義は、図20を用いて示した定義テーブル112B1の“0”、“1”、および“2”と実質的に同様であるので、その説明を省略する。
“4”において、escapeが指定されており、結合シンタックス決定部111が、さらに“horz_part_flag”および“rem_part_mode”を復号することを結合シンタックス復号部1011に指示する点については、図20を用いて示した定義テーブル112B1の“1”と同様である。
次に、図25に示す結合シンタックス定義テーブル112B4について説明する。同図に示すように、結合シンタックス定義テーブル112B4において、pred_part_modeの値は、“0”、“1”、“2”、“3”および“4”の値を取り、それぞれ「CU分割」、「スキップモード」、「マージを行うインター2N×2N」、「インターCUで正方形PUを含むPU分割タイプ」、「インターCUで非正方形PUを含むPU分割タイプ」および「イントラCU」に対応する。
なお、“2”、“3”、および“4”の定義は、図21を用いて示した定義テーブル112B2の“0”、“1”、および“2”と実質的に同様であるので、その説明を省略する。
[2−2−1]さらに、結合シンタックスの定義テーブルを共通化する場合
上記の変形例2−2では、CUサイズが16×16以上の場合と、CUサイズが8×8(最小CUサイズ)の場合で異なる結合シンタックス(cu_split_pred_part_mode)の定義テーブルを設定する構成を示したが、以下では、図39を用いて、定義テーブルを共通化する構成について説明する。
上記の変形例2−2では、CUサイズが16×16以上の場合と、CUサイズが8×8(最小CUサイズ)の場合で異なる結合シンタックス(cu_split_pred_part_mode)の定義テーブルを設定する構成を示したが、以下では、図39を用いて、定義テーブルを共通化する構成について説明する。
まず、図39に示す、CUサイズが16×16以上の場合とCUサイズが8×8の場合に共通に用いることのできる結合シンタックス(cu_split_pred_part_mode)の定義テーブル112B6について説明する。同図に示すように、結合シンタックス定義テーブル112B6において、cu_split_pred_part_modeの値は、“0”〜“5”の値を取る。
“0”〜“4”の定義は、図24を用いて示した定義テーブル112B3の対応する各値の定義と実質的に同様であるので、その説明を省略する。なお、cu_split_pred_part_modeの値が“4”である場合、escapeが指定されており、結合シンタックス決定部111が“horz_part_flag”および“rem_part_mode”を併用して最終的なPU分割タイプ(PartMode)の値を決定する。なお、horz_part_flagの値は、CUサイズに依らず復号されて復号された値が設定される。一方、rem_part_modeの値は、CUサイズが16×16以上の場合には復号された値が設定されるが、CUサイズが8×8の場合には既定値である“0”の値が設定される。
ここで、“5”の定義について説明すると次のとおりである。cu_split_pred_part_modeの値が“5”である場合、escapeが指定されており、結合シンタックス決定部111が“rem_part_mode”の値を併用して最終的なPU分割タイプの値を決定する。なお、rem_part_modeの値は、CUサイズが8×8の場合には復号された値が設定されるが、CUサイズが16×16以上の場合には既定値である“0”の値が設定される。
定義テーブル112B6では、CUサイズに依らずcu_split_pred_part_modeのシンタックス値とCU分割フラグの対応関係の規定が含まれている。しかしながら、最小CUサイズ(CUサイズ8×8)においては、CU分割は適用されないため、cu_split_pred_part_modeの値域は、最小CUサイズのCUでは1〜5、非最小CUサイズのCUでは0〜5となる。cu_split_pred_part_modeの値が前記値域内の値となるように、可変テーブルにおいて、最小CUサイズでは、0〜4のコード番号と1〜5のcu_split_pred_part_modeのシンタックス値を1対1で対応付けることが好ましい。また、非最小CUサイズでは、0〜5のコード番号と0〜5のcu_split_pred_part_modeのシンタックス値を1対1で対応付けることが好ましい。
なお、図40を用いて、前記のような可変テーブルにおけるコード番号(codeNum)とcu_split_pred_part_modeのシンタックス値との対応付けを実現する際に適用する可変テーブルの初期化について説明すると次のとおりである。図40に、前記のような可変テーブルにおけるコード番号(codeNum)とcu_split_pred_part_modeのシンタックス値を実現する際に適用する可変テーブル初期化用のテーブルの例を示す。図40に基づいた可変テーブルの初期化では、CU分割深度(cuDepth)が0〜2の場合、すなわち非最小CUサイズの場合に、0〜5のコード番号それぞれに対応する可変テーブル要素を、コード番号と同じ値のシンタックス値に設定する。また、cuDepthが3の場合、すなわち最小CUサイズの場合に、0〜4のコード番号それぞれに対応する可変テーブル要素を、コード番号に1を加えた値に設定する。なお、上記図40に基づいた可変テーブルの初期化は、コード番号codeNumに対応する可変テーブルの要素をdecTable[codeNum]と示す場合に、以下のように表現することもできる。
decTable[codeNum] = codeNum (CUサイズが非最小CUサイズの場合)
decTable[codeNum] = codeNum + 1 (CUサイズが最小CUサイズの場合)
[2−3]さらに、AMPを禁止する場合
以上では、AMPを用いた構成について示したが、以下の変形例では、図26を用いて、縦横を区別しない構成において、さらにAMPを用いない場合の構成について説明する。図26は、CUサイズが16×16以上の場合(非最小CUの場合)について定義されているシンタックス(pred_part_mode)の定義テーブル112B5の一構成例を示す図である。本変形例においても、上述のhorz_part_flagを導入する。
decTable[codeNum] = codeNum + 1 (CUサイズが最小CUサイズの場合)
[2−3]さらに、AMPを禁止する場合
以上では、AMPを用いた構成について示したが、以下の変形例では、図26を用いて、縦横を区別しない構成において、さらにAMPを用いない場合の構成について説明する。図26は、CUサイズが16×16以上の場合(非最小CUの場合)について定義されているシンタックス(pred_part_mode)の定義テーブル112B5の一構成例を示す図である。本変形例においても、上述のhorz_part_flagを導入する。
図26に示すように、定義テーブル112B5において、pred_part_modeの値は、“0”、“1”、および“2”の値を取り、それぞれ「インターCUで正方形PUを含むPU分割タイプ」、「インターCUで非正方形PUを含むPU分割タイプ」および「イントラCU」に対応する。この点は、図20に示す定義テーブル112B1と同様であるが、以下において異なる。
すなわち、定義テーブル112B5では、escapeが指定されているpred_part_modeが“1”では、AMPに関する非対称PUが定義されていないため、図21に示した定義テーブル112B2と同様、“horz_part_flag”によってPU分割タイプが特定される。すなわち、本変形例では、結合シンタックス決定部111、および、結合シンタックス復号部1011が、rem_part_modeを復号しなくても構わない。
なお、CUサイズが8×8の場合(最小CUの場合)については、図21に示した定義テーブル112B2を用いることができるので、ここではその説明を省略する。
[2−4]さらに、CABACを用いる場合
以上では、CAVLCを用いた構成について示したが、以下の変形例では、図27を用いて、縦横を区別しない構成において、さらにCABACを用いる構成について説明する。
以上では、CAVLCを用いた構成について示したが、以下の変形例では、図27を用いて、縦横を区別しない構成において、さらにCABACを用いる構成について説明する。
CABAC利用時に縦長矩形および横長矩形を区別なく長方形PUをグループ化するには、図27に示したバイナリ設定方式TBL11を用いてPU分割タイプ(pred_type)の情報を動画像符号化装置2側でバイナリ化しておき、動画像復号装置1側では、結合シンタックス復号部1011が、図27においてsquare_flagで示した位置に相当するバイナリの復号に独立のコンテキストを用いればよい。言い換えれば、上記バイナリの算術復号において用いる確率テーブルを独立に設定し、更新しても構わない。
図27に示すバイナリ設定方式TBL11は、CU>8×8の場合、および、CU==8×8の場合について定義している。
CU>8×8の場合、intra_flag, square_flag, horz_part_flag, rem_part_mode がバイナリ化される。intra_flag, square_flag, horz_part_flagは、1ビット、rem_part_mode は、1または2ビットによりバイナリ化される。なお、同図において、“-”は、そのパラメータがバイナリ化されないことを示している。また、horz_part_flagは、横長矩形PU分割タイプか、縦長矩形PU分割タイプであるかを示している。
square_flagの位置のバイナリは、対象CUが、インター2N×2NのPU分割タイプ(正方形PU分割タイプ)か、それ以外のインターPU分割タイプ(非正方形PU分割タイプ)を表す情報である。図27に示す例では、square_flagは、バイナリ列の2ビット目においてバイナリ化される。
例えば、インターPU分割タイプの場合、2N×2NのPU分割タイプをバイナリ化するときは、square_flagとして“1”がバイナリ化される。それ以外のPU分割タイプのときは、square_flagとして“0”がバイナリ化される。
結合シンタックス復号部1011が、当該バイナリに独立のコンテキストを用いて算術復号することで、長方形PUが連続する状況において符号化効率が向上する。
なお、図27では、説明の便宜上、2ビット目のバイナリ位置にsquare_flagという名前を付しており、このバイナリ位置に独立のコンテキストを設定することにしているが、これに限られない。
すなわち、(1)pred_typeをバイナリ化する際のあるバイナリが、PU分割タイプが長方形(非正方形)か、それ以外(正方形)かを示す情報であること、および(2)当該バイナリに独立のコンテキストを設定して算術符号化すること、により符号化効率の向上を図ることが可能である。
[3]インター2N×2Nフラグの利用
PU分割タイプの情報を、上述したシンタックスとは別のシンタックスとの組み合わせにより表現することもできる。以下の変形例では、上述したpred_part_modeとインター2N×2Nフラグとを組み合わせてPU分割タイプを表現する構成について説明する。インター2N×2Nフラグは、インター2N×2Nの適用有無を示すフラグである。
PU分割タイプの情報を、上述したシンタックスとは別のシンタックスとの組み合わせにより表現することもできる。以下の変形例では、上述したpred_part_modeとインター2N×2Nフラグとを組み合わせてPU分割タイプを表現する構成について説明する。インター2N×2Nフラグは、インター2N×2Nの適用有無を示すフラグである。
本変形例では、以上で説明した結合シンタックスの定義テーブル112を、図28に示すようなシンタックス定義テーブルに変更する。また、可変テーブルは、pred_part_modeに対して適用する。また、インター2N×2Nフラグには、インター2N×2N以外のPU分割タイプに割り当てられている符号よりも短い符号を割り当てておく。
図28は、CUサイズが16×16以上の場合(非最小CUの場合)について定義されているインター2N×2Nフラグ(inter 2Nx2N flag)およびpred_part_modeの組に関するシンタックス定義テーブル112Cの一構成例を示す図である。
本変形例では、まず、PU分割タイプが、インター2N×2Nであれば、インター2N×2Nフラグにより、PU分割タイプが特定される。
そして、PredMode・PartModeが、インター2N×2Nでない場合において、pred_part_modeが、PredModeおよびPartModeに対応付けられる。
すなわち、図28に示すように、定義テーブル112Cにおいて、pred_part_modeの値は、“0”、“1”、および“2”の値を取り、それぞれ「インターCUで横長矩形PUグループ」、「インターCUで縦長矩形PUグループ」、および「イントラCU」に対応する。
pred_part_modeが“0(escape)”であるとき、結合シンタックス決定部111は、「インターCUで横長矩形PUグループ」のうちのいずれのPU分割タイプであるかを特定するため、さらに“rem_part_mode”を復号することを結合シンタックス復号部1011に指示する。
また、pred_part_modeが“1(escape)”であるとき、結合シンタックス決定部111は、「インターCUで縦長矩形PUグループ」のうちのいずれのPU分割タイプであるかを特定するため、さらに“rem_part_mode”を復号することを結合シンタックス復号部1011に指示する。
なお、rem_part_modeと、PartModeとの対応付けは、図7に示したPU分割タイプ残余情報定義テーブル114Aにおける定義と同様であるので、ここではその説明を省略する。
次に、図29を用いて、本変形例におけるシンタックス表の構成例について説明する。図29は、符号化単位レベルのシンタックス表SYN41を示す図である。
図29に示すシンタックス表SYN41のSYN411〜SYN415は、それぞれ図19のSYN221〜SYN225と同様であるのでその説明を省略する。
entropy_coding_flagが“1”でない場合、以下のとおりに処理が行われる。まず、inter_2Nx2N_flag(SYN416)およびpred_part_mode(SYN417)が復号される。
続いて、CUサイズが、最小でなく、かつ(SYN418)、cu_split_pred_part_modeが、“0”または(SYN419)“1”であった場合(SYN420)、rem_part_mode[x0][y0]が復号される(SYN421)。
(作用・効果)
インター2N×2NのPU分割タイプは、他のPU分割タイプに比べて、発生確率が高い傾向がある。
インター2N×2NのPU分割タイプは、他のPU分割タイプに比べて、発生確率が高い傾向がある。
上記変形例によれば、PU分割タイプのうち、発生確率が高いインター2N×2Nには、他のPU分割タイプより短い符号が割り当てられる。また、インター2N×2Nは、可変テーブルの適応処理の対象から外れている。
他のPU分割タイプである「インターCUで横長矩形PUグループ」、「インターCUで縦長矩形PUグループ」、および「イントラCU」には、可変テーブルの適応処理が適用されるので、過去の復号履歴に基づいて、これらのPU分割タイプについては、発生確率の高いPU分割タイプに、インター2N×2Nより長い符号であってより短い符号が割り当てられる。
このように、上述のようにインター2N×2Nの適用有無を示すフラグを独立に復号することにより、可変テーブルの状態によらず常にインター2N×2Nに短い符号を割り当てることができる。その結果、符号量の削減を図ることができる。
なお、本変形例は、pred_part_modeの代わりに結合シンタックスcu_split_pred_part_modeを使用する場合にも適用可能である。
[4]可変テーブル適応処理の変形例
以上の説明では、横長矩形PUグループおよび縦長矩形PUグループに対して可変テーブルの適応処理を行っていた。以上の説明では、例えば、横長矩形PUグループに対して、1つのシンタックス値を割り当て、当該シンタックスに対して可変テーブルを適用するよう構成していた。そして、当該構成において、横長矩形PU分割タイプの1つが選択された場合に、他の横長矩形PU分割タイプに対しても短い符号が割り当てられるように可変テーブルの適応処理が行われていた。
以上の説明では、横長矩形PUグループおよび縦長矩形PUグループに対して可変テーブルの適応処理を行っていた。以上の説明では、例えば、横長矩形PUグループに対して、1つのシンタックス値を割り当て、当該シンタックスに対して可変テーブルを適用するよう構成していた。そして、当該構成において、横長矩形PU分割タイプの1つが選択された場合に、他の横長矩形PU分割タイプに対しても短い符号が割り当てられるように可変テーブルの適応処理が行われていた。
しかしながら、これに限られず、横長矩形PUグループおよび縦長矩形PUグループを用いない構成とすることも可能である。
以下の変形例では、以上に説明した動画像復号装置1を以下のとおり変更する。
(1)横長矩形PUグループに属する各PU分割タイプおよび縦長矩形PUグループに属する各PU分割タイプに独立のシンタックス値を割り当てる。例えば、結合シンタックスの定義テーブル112を、横長矩形PUグループに属する各PU分割タイプおよび縦長矩形PUグループに属する各PU分割タイプに独立のシンタックス値を割り当てたテーブルに変更する。可変テーブルは、上記独立のシンタックス値に対して適用する(以下、可変テーブル1012Eと称する)。
(2)同一のPUグループに属するPU分割タイプについて可変テーブル適応処理を行う。例えば、可変テーブル適応部1015が、可変テーブル1012Eの適応処理において、横長矩形PUグループに属するPU分割タイプが選択された場合、当該PU分割タイプに割り当てられる符号が短くなるよう可変テーブルにおいてスワップ処理を行うとともに、同一グループに属するPU分割タイプに割り当てられる符号も短くなるよう可変テーブルを適応するよう変更する。
図30を用いて、具体的に説明すると次のとおりである。図30は、横長矩形PUグループに属する各PU分割タイプおよび縦長矩形PUグループに属する各PU分割タイプに対して独立のシンタックス値を割り当てた場合の可変テーブル適応処理の例を示す図である。
図30に示す状態ST11は、可変テーブル1012Eの初期状態を例示している。可変テーブル1012Eには,コード番号「0」〜「6」に対して、それぞれ、PU分割タイプのシンタックス値「2N×2N」、「2N×N」、「N×2N」、「2N×nU」、「2N×nD」、「nL×2N」、および「nR×2N」が対応付けられている。
ここで、「N×2N」に対応付けられているコード番号「2」が復号されると、可変テーブル適応部1015が、可変テーブル1012Eにおいて「N×2N」と同一のPUグループを選択する。状態ST12に遷移する。可変テーブル1012Eにおいて網掛けを付している部分が、N×2Nと同一の縦長矩形PUグループに属するPU分割タイプである。
状態ST12では、可変テーブル1012Eにおいて、コード番号「5」および「6」に対して、それぞれ「N×2N」と同一の縦長矩形PUグループに属する「nL×2N」および「nR×2N」が対応付けられている。
さらに、可変テーブル適応部1015は、選択した各PU分割タイプに短い符号が割り当てられるように可変テーブル1012Eを更新する。具体的には、可変テーブル適応部1015は、状態12において矢印にて示しているように、小さいコード番号から順に選択したPU分割タイプについてスワップを行う。状態ST13に遷移する。
状態ST13では、可変テーブル適応処理により、コード番号「2」に対応付けられていた「N×2N」が、コード番号「1」に対応付けられていた「2N×N」と、スワップされている。すなわち、コード番号「1」には、「N×2N」が対応付けられた状態となる。以下、同様に、スワップにより、コード番号「4」および「5」に対して、それぞれ、「nL×2N」および「nR×2N」が対応付けられる。
[5]CABACの適用
以上に説明した構成では、縦横を区別する構成において、CAVLCによる復号方法を用いる構成であった。しかしながら、縦横を区別する構成において、算術符号化(CABAC)を適用してもよい。
以上に説明した構成では、縦横を区別する構成において、CAVLCによる復号方法を用いる構成であった。しかしながら、縦横を区別する構成において、算術符号化(CABAC)を適用してもよい。
例えば、コード番号をVLCテーブルに基づいて復号すると説明したが、このVLCテーブルに基づいてコード番号に対応するバイナリ列(bin)を定義した上で、当該バイナリ列を算術符号化を用いて復号してもよい。
また、可変テーブル適応処理に相当する処理は、CABACの仕組みにより実現可能である。すなわち、「横長矩形PUグループに属するPU分割タイプが復号された場合、横長矩形PUグルプに属する他のPU分割タイプに割り当てられる符号を短くする」ことは、可変テーブルに代えて、CABACの仕組みを用いて実現することができる。なお、縦長矩形PUグループについても同様である。
具体的には、結合シンタックス復号部1011において次のようにして、CABACによる算術復号を行えばよい。すなわち、結合シンタックス復号部1011は、あるバイナリ(1bit)を、横長矩形PU分割を用いるか縦長矩形PU分割を用いるかの情報として割り当てられていると解釈し、当該バイナリに対して独立のコンテキストを設定すればよい。
例えば、図31に示すテーブルTBL21において定義されるように、バイナリ列を構成することができる。図31は、算術符号化されるバイナリ列の一構成例を示す図である。
図31に示すように、テーブルTBL21では、横長矩形PU分割を用いるか縦長矩形PU分割を用いるかの情報として、horz_part_flagというバイナリを設定している。
horz_part_flagが“1”である場合、横長矩形PU分割を用いることを示し、“0”である場合、縦長矩形PU分割を用いることを示す。
また、結合シンタックス復号部1011は、horz_part_flagに独立のコンテキストを設定し、テーブルTBL21に基づいて算術復号を行うことができる。
[6]カウンタを用いた可変テーブル適応
可変テーブル適応部1015は、図32に示すカウンタ、または、図33に示す差分カウンタを用いてスワップを行ってもよい。
可変テーブル適応部1015は、図32に示すカウンタ、または、図33に示す差分カウンタを用いてスワップを行ってもよい。
まず、図32を用いて、回数カウンタ(カウンタ)355およびsumカウンタ(カウンタ)356付きの可変テーブル1012Fの構成について説明する。図32は、回数カウンタ355およびsumカウンタ356付き可変テーブル1012Fについて示す図である。
可変テーブル1012Fは、コード番号codeNumと、テーブルインデックスsxとが対応付けられたテーブルである。図32では、rank=0〜rank=4に対して、テーブルインデックスs0〜s4が対応付けられている。なお、rank=5以降は省略している。
回数カウンタ355は、コード番号codeNum=0、1、および2の発生回数をカウントするためのカウンタテーブルである。図32に示すように、回数カウンタ355では、コード番号codeNum=0、1、および2について、それぞれカウンタc0、c1、およびc2が設けられている。また、回数カウンタ355は、コード番号codeNum=0、1、および2のように小さいランクにのみ設定されることが好ましい。
sumカウンタ356は、回数カウンタ355に含まれる各カウンタの値の合計を保持するカウンタである。図32では、sumカウンタ356が保持する値をsumと表記している。
可変テーブル適応部1015は、復号されたコード番号codeNumの回数をカウントし、当該コード番号codeNumに対応するカウンタの値に反映する。また、カウントアップにより、カウンタ番号nのカウンタcnのカウンタの値が、カウンタ番号n−1のカウンタcn−1の値以上となったときに、可変テーブル適応部1015は、テーブルインデックスsnおよびsn−1をスワップするとともに、カウンタcnの値およびcn−1の値をスワップする。
なお、コード番号codeNum≧2の場合、テーブルインデックスsrank−1およびsrankをスワップしてもよい。
なお、各カウンタの値の合計値sumが所定の値(例えば、15)となった場合、可変テーブル適応部1015は、カウンタをリセットする。この処理を正規化(Normalization)という。正規化は、カウンタ値の過度な増加を抑制する目的で行う。
このように回数カウンタ355およびsumカウンタ356付きの可変テーブル1012Fを用いた場合の可変テーブル適応処理では、可変テーブル1012Fに格納されるテーブルインデックスを所定の条件でスワップする。また、所定のカウントごとに、正規化を実行してカウンタ値の過度な増加を抑制する。
次に、図33を用いて、差分値カウンタ(カウンタ)354付き可変テーブル1012Gの構成について説明する。図33は、差分値カウンタ354付き可変テーブル1012Gについて示す図である。
差分値カウンタ354は、あるコード番号codeNumの発生回数と、当該あるコード番号よりも1小さいコード番号codeNum−1の発生回数との差分近似値を保持するカウンタである。
図33に示すように、差分値カウンタ354は、コード番号codeNum=0の発生回数と、cn=1の発生回数との差分近似値を保持する差分値カウンタc’1、および、コード番号codeNum=1の発生回数と、rank=2の発生回数との差分近似値を保持する差分値カウンタc’2を備える。なお、以下では、差分値カウンタc’1のことを、コード番号codeNum=1に対応する差分値カウンタとも称する。差分値カウンタc’2のことを、コード番号codeNum=2に対応する差分値カウンタとも称する。
なお、差分値カウンタの値は、規定のタイミング(例えば、ピクチャの復号開始時やスライスの復号開始時)でリセットされる。差分値カウンタのリセットは、全ての差分値カウンタの値を0に設定する。差分値カウンタのリセットで、差分値カウンタの値を0以外の値に設定しても構わない。
可変テーブル適応部1015は、コード番号codeNum=1が復号されたときであって、差分値カウンタc’1の値が0でないとき、差分値カウンタc’1の値を1減少させるとともに、差分値カウンタc’2の値を1増加させる。
また、可変テーブル適応部1015は、コード番号codeNum=1が復号されたときであって、差分値カウンタc’1の値が0であるとき、差分値カウンタc’2の値を1増加させるとともに、テーブルインデックスs0およびs1をスワップする。
また、可変テーブル適応部1015は、コード番号codeNum=2が復号されたときであって、かつ差分値カウンタc’2が0でないとき、差分値カウンタc’2の値を1減少させる。
また、可変テーブル適応部1015は、コード番号codeNum=2が復号されたときであって、かつ差分値カウンタc’2が0であるとき、テーブルインデックスs1およびs2をスワップする。
なお、コード番号codeNum≧3の場合、可変テーブル適応部1015は、テーブルインデックスsrank−1およびsrankをスワップしてもよい。
[7]パーティション数が同一のPU分割タイプをグループ化する例
以下では、パーティション数が等しいPU分割タイプを一つのグループとして取り扱う場合の構成例について説明する。
以下では、パーティション数が等しいPU分割タイプを一つのグループとして取り扱う場合の構成例について説明する。
本変形例では、[2−2]の変形例において説明した、非最小CUサイズに適用する結合シンタックスの定義テーブル112B3(図24)を図41に示すシンタックス定義テーブル112B7に変更する。また、[2−2]の変形例において説明した、最小CUサイズに適用する結合シンタックスの定義テーブル112B4(図25)を図42に示すシンタックス定義テーブル112B8に変更する。
まず、図41を用いて、非最小CUサイズに適用する結合シンタックスの定義テーブル112B7について説明する。図41は、CUサイズが16×16以上の場合(非最小CUの場合)について定義されているcu_split_pred_part_modeに関するシンタックス定義テーブル112B7の一構成例を示す図である。
定義テーブル112B7において、cu_split_pred_part_modeの値は、“0”〜“4”の値を取る。“3”の値は「CU内のパーティション数が1であるPU分割タイプのグループ」、“4”の値は「CU内のパーティション数が2であるPU分割タイプのグループ」に対応する。“0”〜“2”の各値の定義は、定義テーブル112B3と同様であり省略する。
cu_split_pred_part_modeが“3”の場合は、結合シンタックス決定部111は、「CU内のパーティション数が1であるPU分割タイプ」のうちのいずれのPU分割タイプであるかを特定するため、さらに“rem_part_mode”を復号することを結合シンタックス復号部1011に指示する。この場合、rem_part_modeの値が0であればPredModeがMODE_INTERであることを示し、rem_part_modeの値が1であればPredModeの値がMODE_INTRAに設定される。PartModeの値はPart_2Nx2Nに設定される。
cu_split_pred_part_modeが“4”の場合は、結合シンタックス決定部111は、「CU内のパーティション数が2であるPU分割タイプ」のうちのいずれのPU分割タイプであるかを特定するため、さらに“horz_part_flag”および“rem_part_mode”を復号することを結合シンタックス復号部1011に指示する。この場合、rem_part_modeと、PartModeとの対応付けは、図7に示したPU分割タイプ残余情報定義テーブル114Aにおける定義と同様であるので説明を省略する。
次に、図42を用いて、最小CUサイズに適用する結合シンタックスの定義テーブル112B8について説明する。図42は、CUサイズが8×8の場合(最小CUの場合)について定義されているcu_split_pred_part_modeに関するシンタックス定義テーブル112B8の一構成例を示す図である。
定義テーブル112B8において、cu_split_pred_part_modeの値は、“0”〜“4”の値を取る。“2”の値は「CU内のパーティション数が1であるPU分割タイプのグループ」、“3”の値は「CU内のパーティション数が2であるPU分割タイプのグループ」に対応する。“4”の値は「CU内のパーティション数が4であるPU分割タイプのグループ」に対応する。“0”および“1”の値の定義は、図25の定義テーブル112B4と同様であり省略する。
cu_split_pred_part_modeの値が“2”および“3”の場合は、前述の図41の定義テーブル112B7において、cu_split_pred_part_modeがそれぞれ“3”および“4”の場合と同じであり説明を省略する。ただし、最小CUサイズにおいては、非対称パーティションを適用しないため、「CU内のパーティション数が2である」場合にrem_part_modeの情報を復号する必要はない。
cu_split_pred_part_modeが“4”の場合は、「CU内のパーティション数が4であるPU分割タイプ」ことを示すが、本変形例においては、パーティション数が4となるのはPU分割タイプがPart_NxNであるイントラCUのみであるため、対応する値をPredModeおよびPartModeの値として設定する。
(作用・効果)
一般的に複雑な領域は多数のパーティションに分割される傾向にあり、従ってCU内に多数のパーティションを含む分割タイプが選択されやすい。領域の複雑さは局所的に変化するため、特定の領域に対しては同一の分割数の分割タイプが連続して選択されやすい傾向にある。したがって、同一の分割数、すなわち、CU内のパーティション数が等しい分割タイプをグループに設定することで、領域の複雑さに応じて適切な分割数のPU分割タイプに対して他のPU分割タイプに較べて短い符号が割り当てることができるため、符号量を削減できる。
[8]異なる結合シンタックスの例
上記の変形例[2]では、縦・横の区別をせずに長方形を含むPU分割タイプをまとめる場合であって、PU分割タイプの復号に用いるシンタックスとして結合シンタックスを用いる場合の構成例について、説明した。変形例[2]における結合シンタックスは、CU分割フラグ、スキップフラグ、マージフラグ、CU予測方式情報、およびPU分割タイプ情報の組み合わせを指定するインデックスであったが、異なる組合せを指定するインデックス(結合シンタックス)を用いても良い。
一般的に複雑な領域は多数のパーティションに分割される傾向にあり、従ってCU内に多数のパーティションを含む分割タイプが選択されやすい。領域の複雑さは局所的に変化するため、特定の領域に対しては同一の分割数の分割タイプが連続して選択されやすい傾向にある。したがって、同一の分割数、すなわち、CU内のパーティション数が等しい分割タイプをグループに設定することで、領域の複雑さに応じて適切な分割数のPU分割タイプに対して他のPU分割タイプに較べて短い符号が割り当てることができるため、符号量を削減できる。
[8]異なる結合シンタックスの例
上記の変形例[2]では、縦・横の区別をせずに長方形を含むPU分割タイプをまとめる場合であって、PU分割タイプの復号に用いるシンタックスとして結合シンタックスを用いる場合の構成例について、説明した。変形例[2]における結合シンタックスは、CU分割フラグ、スキップフラグ、マージフラグ、CU予測方式情報、およびPU分割タイプ情報の組み合わせを指定するインデックスであったが、異なる組合せを指定するインデックス(結合シンタックス)を用いても良い。
[8−1]結合シンタックスが、CU分割フラグ、スキップフラグ、CU予測方式情報、およびPU分割タイプ情報の組み合わせを指定するインデックスの場合(結合シンタックスが、マージフラグに係る情報を含まない場合)
以下、上記の結合シンタックスを用いる場合の変形例(変形例[8−1])の詳細を、図面を参照して説明する。
以下、上記の結合シンタックスを用いる場合の変形例(変形例[8−1])の詳細を、図面を参照して説明する。
本変形例では、[2−2]の変形例において説明した、非最小CUサイズに適用する結合シンタックスの定義テーブル112B3(図24)を図43に示すシンタックス定義テーブル112B9に変更する。また、[2−2]の変形例において説明した、最小CUサイズに適用する結合シンタックスの定義テーブル112B4(図25)を図44に示すシンタックス定義テーブル112B10に変更する。各定義テーブルの詳細を説明すると次の通りである。
図43は、CUサイズが16×16以上の場合(非最小CUの場合)について定義されているシンタックス(cu_split_pred_part_mode)の定義テーブル112B9の一構成例である。
図43に示すシンタックス定義テーブル112B9は、シンタックス値cu_split_pred_part_mode、horz_part_flag、rem_part_mode、およびintra_part_modeの組と、変数値split_coding_unit_flag、skip_flag、PredMode、およびPartModeの組を対応付けるテーブルである。なお、可変テーブルは、cu_split_pred_part_modeに対して適用する。
図43に示すように、定義テーブル112B9において、cu_split_pred_part_modeの値は、“0”、“1”、“2”、“3”、および“4”の値を取り、それぞれ「小CUに分割されるCU」、「スキップCU」、「インターCUであってPUサイズとCUサイズが等しいCU」、「インターCUで長方形PUグループ」、および「イントラCU」に対応する。
cu_split_pred_part_modeが“3(escape)”であるときは、結合シンタックス決定部111は、「インターCUで長方形PUグループ」のうちのいずれのPU分割タイプであるかを特定するため、さらに“horz_part_flag”と“rem_part_mode”を復号することを結合シンタックス復号部1011に指示する。
なお、horz_part_flagとrem_part_modeの組と、PartModeとの対応付けは、変形例[2−1]の場合と同様であるので、ここではその説明を省略する。
図44は、CUサイズが8×8の場合(最小CUの場合)について定義されているシンタックス(cu_split_pred_part_mode)の定義テーブル112B10の一構成例である。
図44に示すシンタックス定義テーブル112B10は、シンタックス値cu_split_pred_part_mode、horz_part_flag、rem_part_mode、およびintra_part_modeの組と、変数値split_coding_unit_flag、skip_flag、PredMode、およびPartModeの組を対応付けるテーブルである。なお、可変テーブルは、cu_split_pred_part_modeに対して適用する。
図44に示すように、定義テーブル112B10において、cu_split_pred_part_modeの値は、“1”、“2”、“3”、および“4”の値を取る。それぞれの値の意味については、前述の図43を用いて説明したシンタックス定義テーブル112B9におけるcu_split_pred_part_modeの値と同様であり、説明を省略する。
cu_split_rped_part_modeが“3(escape)”であるときは、結合シンタックス決定部111は、「インターCUで長方形PUグループ」のうちのいずれのPU分割タイプであるかを特定するため、さらに“horz_part_flag”を復号することを結合シンタックス復号部1011に指示する。結合シンタックス決定部111は、PU分割タイプ(PartMode)を、horz_part_flagの値が“0”の場合はPART_Nx2Nに、horz_part_flagの値が“1”の場合はPART_2NxNに設定する。
cu_split_pred_part_modeが“4(escape)”であるときは、結合シンタックス決定部111は、「イントラCU」のうちのいずれのPU分割タイプであるかを特定するため、さらに“intra_part_mode”を復号することを結合シンタックス復号部1011に指示する。結合シンタックス決定部111は、intra_part_modeの値が“0”であれば、PU分割タイプ(PartMode)をPART_2Nx2Nに設定し、値が1であれば、PART_NxNに設定する。
さらに、本変形例では、符号化単位レベルのシンタックスとして、図45に示すSYN51を用いる。図45を用いて、本変形例におけるシンタックス表の構成例について説明する。図45は、符号化単位(coding unit)レベルのシンタックスSYN51を示す図である。
図45に示すように、スライスタイプがIスライスでなく、かつentropy_coding_mode_flagが“1”の場合(SYN511)、skip_flagが独立して復号される(SYN512)。また、スキップモードである場合、スキップ処理が行われる(SYN513)。
スキップモードでない場合は以下のとおり処理が行われる。まず、entropy_coding_mode_flagが“1”である場合(SYN514)、“pred_type”が復号される(SYN515)。
一方、entropy_coding_flagが“1”でない場合、以下のとおり処理が行われる。まず、slice_typeが“I”(対象スライスがI_Slice)またはcu_split_pred_part_modeの値が“4”である場合(SYN516)であって、さらに対象CUサイズが最小である場合、“intra_part_mode”が復号される(SYN517)。
次に、slice_typeが“I”(対象スライスがI_Slice)ではなく、かつ、cu_split_pred_part_modeの値が“3”である場合(SYN518)、horz_part_flagが復号される(SYN519)。さらに、CUサイズが最小でない場合、rem_part_mode[x0][y0]が復号される(SYN520)。
(作用・効果)
上記、変形例[8−1]の構成によれば、結合シンタックスが、CU分割フラグ、スキップフラグ、CU予測方式情報、およびPU分割タイプ情報の組み合わせを指定する場合にも、非正方形のPU分割タイプが連続して発生するような状況において、上記PUグループに属する非正方形の各PU分割タイプに、より短い符号が復号されるよう可変テーブル適応処理が行われるため、符号量の削減を図ることができる。言い換えると、結合シンタックスが、マージフラグに係る情報を含まない場合でも、上記符号量削減効果が得られる。
上記、変形例[8−1]の構成によれば、結合シンタックスが、CU分割フラグ、スキップフラグ、CU予測方式情報、およびPU分割タイプ情報の組み合わせを指定する場合にも、非正方形のPU分割タイプが連続して発生するような状況において、上記PUグループに属する非正方形の各PU分割タイプに、より短い符号が復号されるよう可変テーブル適応処理が行われるため、符号量の削減を図ることができる。言い換えると、結合シンタックスが、マージフラグに係る情報を含まない場合でも、上記符号量削減効果が得られる。
[8−2]結合シンタックスが、マージフラグ、スキップフラグ、CU予測方式情報、およびPU分割タイプ情報の組み合わせを指定するインデックスである場合(結合シンタックスが、CU分割フラグの情報を含まない場合)
以下、上記の結合シンタックスを用いる場合の変形例(変形例[8−2])の詳細を、図面を参照して説明する。
以下、上記の結合シンタックスを用いる場合の変形例(変形例[8−2])の詳細を、図面を参照して説明する。
本変形例では、[8−1]の変形例において説明した、非最小CUサイズに適用する結合シンタックスの定義テーブル112B10(図43)を図46に示すシンタックス定義テーブル112B11に変更する。また、[8−1]の変形例において説明した、最小CUサイズに適用する結合シンタックスの定義テーブル112B10(図44)を図47に示すシンタックス定義テーブル112B12に変更する。各定義テーブルの詳細を説明すると次の通りである。
図46は、CUサイズが16×16以上の場合(非最小CUの場合)について定義されているシンタックス(cu pred_part_mode)の定義テーブル112B11の一構成例である。
図46に示すシンタックス定義テーブル112B11は、シンタックス値cu_pred_part_mode、horz_part_flag、rem_part_mode、およびintra_part_modeの組と、変数値merge_flag、skip_flag、PredMode、およびPartModeの組を対応付けるテーブルである。なお、可変テーブルは、cu_pred_part_modeに対して適用する。また、CU分割フラグを(split_coding_unit_flag)の値は結合シンタックスcu_pred_part_modeとは独立に復号される。
図46に示すように、定義テーブル112B11において、cu_pred_part_modeの値は、“0”、“1”、“2”、“3”、および“4”の値を取り、それぞれ「スキップCU」、「マージCU」、「インターCUであってPUサイズとCUサイズが等しいCU」、「インターCUで長方形PUグループ」、および「イントラCU」に対応する。
cu_pred_part_modeが“3(escape)”であるときは、結合シンタックス決定部111は、「インターCUで長方形PUグループ」のうちのいずれのPU分割タイプであるかを特定するため、さらに“horz_part_flag”と“rem_part_mode”を復号することを結合シンタックス復号部1011に指示する。
なお、horz_part_flagとrem_part_modeの組と、PartModeとの対応付けは、変形例[2−1]の場合と同様であるので、ここではその説明を省略する。
図47は、CUサイズが8×8の場合(最小CUの場合)について定義されているシンタックス(cu_pred_part_mode)の定義テーブル112B12の一構成例である。
図47に示すシンタックス定義テーブル112B12は、シンタックス値cu_pred_part_mode、horz_part_flag、rem_part_mode、およびintra_part_modeの組と、変数値skip_flag、merge_flag、PredMode、およびPartModeの組を対応付けるテーブルである。なお、可変テーブルはcu_pred_part_modeに対して適用する。
図47に示すように、定義テーブル112B12において、cu_pred_part_modeの値は、“0”、“1”、“2”、“3”、および“4”の値を取る。それぞれの値の意味については、図46を用いて説明したシンタックス定義テーブル112B11におけるcu_pred_part_modeの値と同様であり、説明を省略する。
cu pred_part_modeが“3(escape)”であるときは、結合シンタックス決定部111は、「インターCUで長方形PUグループ」のうちのいずれのPU分割タイプであるかを特定するため、さらに“horz_part_flag”を復号することを結合シンタックス復号部1011に指示する。なお、horz_part_flagとPartModeとの対応付けは、変形例[8−1]の場合と同様であり説明を省略する。
cu pred_part_modeが“4(escape)”であるときは、結合シンタックス決定部111は、「イントラCU」のうちのいずれのPU分割タイプであるかを特定するため、さらに“intra_part_mode”を復号することを結合シンタックス復号部1011に指示する。なお、intra_part_modeとPartModeの対応付けは、変形例[8−1]の場合と同様であり、説明を省略する。
本変形例で用いる、符号化単位レベルのシンタックスとしては、変形例[8−1]で説明した図45に示すSYN51において、結合シンタックスcu_split_pred_part_modeを結合シンタックスcu_pred_part_modeに置き換えたものが利用できる。
(作用・効果)
上記、変形例[8−2]の構成によれば、結合シンタックスが、マージフラグ、スキップフラグ、CU予測方式情報、およびPU分割タイプ情報の組み合わせを指定するインデックスである場合でも、非正方形のPU分割タイプが連続して発生するような状況において、上記PUグループに属する非正方形の各PU分割タイプに、より短い符号が復号されるよう可変テーブル適応処理が行われるため、符号量の削減を図ることができる。言い換えると、結合シンタックスが、CU分割フラグに係る情報を含まない場合でも、上記符号量削減効果が得られる。
上記、変形例[8−2]の構成によれば、結合シンタックスが、マージフラグ、スキップフラグ、CU予測方式情報、およびPU分割タイプ情報の組み合わせを指定するインデックスである場合でも、非正方形のPU分割タイプが連続して発生するような状況において、上記PUグループに属する非正方形の各PU分割タイプに、より短い符号が復号されるよう可変テーブル適応処理が行われるため、符号量の削減を図ることができる。言い換えると、結合シンタックスが、CU分割フラグに係る情報を含まない場合でも、上記符号量削減効果が得られる。
[9]非対称パーティションをグループ化する例
以下では、非対称パーティションに分類されるPU分割タイプを一つのグループとして取り扱う場合の構成例について説明する。
以下では、非対称パーティションに分類されるPU分割タイプを一つのグループとして取り扱う場合の構成例について説明する。
本変形例では、[2−1]の変形例において説明した、非最小CUサイズに適用する結合シンタックスの定義テーブル112B3(図24)を図48に示すシンタックス定義テーブル112B13に変更する。また、[2−1]の変形例において説明した、最小CUサイズに適用する結合シンタックスの定義テーブル112B4(図25)を図49に示すシンタックス定義テーブル112B14に変更する。
まず、図48を用いて、非最小CUサイズに適用する結合シンタックスの定義テーブル112B13について説明する。図48は、CUサイズが16×16以上の場合(非最小CUの場合)について定義されているcu_split_pred_part_modeに関するシンタックス定義テーブル112B13の一構成例を示す図である。
定義テーブル112B13において、cu_split_pred_part_modeの値は、“0”〜“6”の値を取る。“4”の値は「インターCUの長方形PUグループ、かつ、対称パーティションであるPU分割タイプのグループ」、“5”の値は「インターCUの長方形PUグループ、かつ、非対称パーティションであるPU分割タイプのグループ」に対応する。“0”〜“3”の各値の定義は、図24の定義テーブル112B3と同様であり省略する。また、定義テーブル112B13における“6”の定義は、図24の定義テーブル112B3の“5”の値の定義と同様であり省略する。
cu_split_pred_part_modeが“4”または“5”の場合は、結合シンタックス決定部111は、長方形PUの長辺の方向を特定するシンタックスであるhorz_part_flagを復号することを結合シンタックス復号部1011に指示する。cu_split_pred_part_modeが“5”の場合は、さらに、PU分割タイプを特定するため、さらに“rem_part_mode”を復号することを結合シンタックス復号部1011に指示する。この場合、rem_part_modeの値が「0」であればPU分割タイプが「PART_2NxnU」または「PART_nLx2N」であることを示し、rem_part_modeの値が1であればPU分割タイプが「PART_2NxnD」または「PART_nLx2N」であることを示す。
次に、図49を用いて、最小CUサイズに適用する結合シンタックスの定義テーブル112B14について説明する。図49は、CUサイズが8×8の場合(最小CUの場合)について定義されているcu_split_pred_part_modeに関するシンタックス定義テーブル112B14の一構成例を示す図である。
定義テーブル112B14において、cu_split_pred_part_modeの値は、“0”〜“4”の値を取る。“0”、“1”、“2”、“3”、“4”の値は図48の定義テーブル112B13における定義の“1”、“2”、“3”、“4”、“6”のそれぞれの値の定義と同様であり省略する。
cu_split_pred_part_modeが“3”の場合は、結合シンタックス決定部111は、長方形PUの長辺の方向を特定するシンタックスであるhorz_part_flagを復号することを結合シンタックス復号部1011に指示する。
cu_split_pred_part_modeが“4”の場合は、結合シンタックス決定部111は、イントラCUにおけるPU分割タイプを特定するシンタックスであるintra_part_modeを復号することを結合シンタックス復号部1011に指示する。
(作用・効果)
前述のように、一般的に長方形PUを含むPU分割タイプをグループ化することで符号量削減効果が得られる。しかしながら、長方形PUを含むPU分割タイプ全てをグループ化すると、非対称パーティションが非最小CUにおいてのみ適用可能である場合には、最小CUか非最小CUかに応じて「長方形PUグループ」に属するPU分割タイプの種類が異なり、結果として「長方形PUグループ」に属するPU分割タイプの種類を特定するためのプロセスが、対象CUが最小CUか非最小CUかに応じて異なるという問題が生じる。例えば、非最小CUではrem_part_modeの復号が必要だが、最小CUではrem_part_modeの復号が不要であるという違いが生じる。上記、変形例[9]の構成では、長方形PUグループを、対称パーティションより構成されるグループと非対称パーティションより構成されるグループに分けることで、「対称パーティションである長方形PU」に属するPU分割タイプを特定する処理が最小CUと非最小CUで共通となる。
前述のように、一般的に長方形PUを含むPU分割タイプをグループ化することで符号量削減効果が得られる。しかしながら、長方形PUを含むPU分割タイプ全てをグループ化すると、非対称パーティションが非最小CUにおいてのみ適用可能である場合には、最小CUか非最小CUかに応じて「長方形PUグループ」に属するPU分割タイプの種類が異なり、結果として「長方形PUグループ」に属するPU分割タイプの種類を特定するためのプロセスが、対象CUが最小CUか非最小CUかに応じて異なるという問題が生じる。例えば、非最小CUではrem_part_modeの復号が必要だが、最小CUではrem_part_modeの復号が不要であるという違いが生じる。上記、変形例[9]の構成では、長方形PUグループを、対称パーティションより構成されるグループと非対称パーティションより構成されるグループに分けることで、「対称パーティションである長方形PU」に属するPU分割タイプを特定する処理が最小CUと非最小CUで共通となる。
以上、説明した本実施形態および各変形例について、特に可変テーブルを利用する場合について整理すると以下の通りである。
<長方形PUグループの適用対象シンタックスについて>
変形例[2−1]、変形例[2−2]、変形例[2−2−1]、変形例[8−1]、変形例[8−2]に記載したように、PU分割タイプのうち長方形PUをグループ化する方法は、PU分割情報が独立のシンタックスである場合にも、他の様々なシンタックス(例えば、CU分割フラグ、skip_flag、merge_flag等)との結合シンタックスである場合にも適用できる。また、変形例[3]に示したように、PU分割情報の一部(例えば、インター2N×2N分割フラグ)を別に復号する場合でも適用できる。言い換えると、取り得る値の一部が、PU分割タイプを特定する情報に対応する値であるシンタックスを、長方形PUのグループ化対象としている。
<長方形PUグループについて>
変形例[2]に示したように、選択可能な全ての非正方形の長方形PUをグループ化する場合に効果が得られ。さらに、本実施形態や変形例[1]に示したように、非正方形の長方形PUの一部をグループ化することでも効果が得られる。すなわち、CUを非正方形の長方形PUに分割するPU分割タイプを2以上含むPU分割タイプをグループ化することで効果が得られる。
<可変テーブルの適応について>
本実施形態、変形例[2]、変形例[2−1]、変形例[2−2]、変形例[2−2−1]、変形例[3]、変形例[8−1]、変形例[8−2]の記載によれば、取り得る値の少なくとも一つの値が長方形PUを含むPU分割タイプのグループに対応する値であるシンタックスに対して可変テーブルを設定している。そして、長方形PUグループに対応する値が復号された場合に、前記PU分割タイプに対してより小さいコード番号を割り当てよう可変テーブルを更新することで、本発明における符号量削減の効果が得られる。
<長方形PUグループの適用対象シンタックスについて>
変形例[2−1]、変形例[2−2]、変形例[2−2−1]、変形例[8−1]、変形例[8−2]に記載したように、PU分割タイプのうち長方形PUをグループ化する方法は、PU分割情報が独立のシンタックスである場合にも、他の様々なシンタックス(例えば、CU分割フラグ、skip_flag、merge_flag等)との結合シンタックスである場合にも適用できる。また、変形例[3]に示したように、PU分割情報の一部(例えば、インター2N×2N分割フラグ)を別に復号する場合でも適用できる。言い換えると、取り得る値の一部が、PU分割タイプを特定する情報に対応する値であるシンタックスを、長方形PUのグループ化対象としている。
<長方形PUグループについて>
変形例[2]に示したように、選択可能な全ての非正方形の長方形PUをグループ化する場合に効果が得られ。さらに、本実施形態や変形例[1]に示したように、非正方形の長方形PUの一部をグループ化することでも効果が得られる。すなわち、CUを非正方形の長方形PUに分割するPU分割タイプを2以上含むPU分割タイプをグループ化することで効果が得られる。
<可変テーブルの適応について>
本実施形態、変形例[2]、変形例[2−1]、変形例[2−2]、変形例[2−2−1]、変形例[3]、変形例[8−1]、変形例[8−2]の記載によれば、取り得る値の少なくとも一つの値が長方形PUを含むPU分割タイプのグループに対応する値であるシンタックスに対して可変テーブルを設定している。そして、長方形PUグループに対応する値が復号された場合に、前記PU分割タイプに対してより小さいコード番号を割り当てよう可変テーブルを更新することで、本発明における符号量削減の効果が得られる。
以上から、本発明における動画像復号装置は、次のように表現することもできる。
本発明にける動画像復号装置は、取り得る値の一部が、PU分割タイプを特定する情報に対応する値であるシンタックスを復号する動画像復号装置であって、前記PU分割タイプを特定する情報に対応する値の少なくとも一つの値は、CUを非正方形の長方形PUに分割するPU分割タイプを2以上含むPU分割タイプグループに対応付けられた値であり、前記PU分割タイプグループに含まれるPU分割タイプが復号された場合に、前記PU分割タイプグループにより小さいコード番号が割り当てられるよう、前記シンタックスに対応する可変テーブルの更新処理が実行されることを特徴とする。
〔動画像符号化装置〕
以下において、本実施形態に係る動画像符号化装置2について、図34を参照して説明する。
〔動画像符号化装置〕
以下において、本実施形態に係る動画像符号化装置2について、図34を参照して説明する。
(動画像符号化装置の概要)
動画像符号化装置2は、概略的に言えば、入力画像#10を符号化することによって符号化データ#1を生成し、出力する装置である。
動画像符号化装置2は、概略的に言えば、入力画像#10を符号化することによって符号化データ#1を生成し、出力する装置である。
(動画像符号化装置の構成)
まず、図34を用いて、動画像符号化装置2の構成例について説明する。図34は、動画像符号化装置2の構成について示す機能ブロック図である。図34に示すように、動画像符号化装置2は、符号化設定部21、逆量子化・逆変換部22、予測画像生成部23、加算器24、フレームメモリ25、減算器26、変換・量子化部27、および符号化データ生成部(適応処理手段)29を備えている。
まず、図34を用いて、動画像符号化装置2の構成例について説明する。図34は、動画像符号化装置2の構成について示す機能ブロック図である。図34に示すように、動画像符号化装置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は、シンタックス値およびシンタックス種別に基づいて符号化データを生成する。
再び、図5を参照し、符号化データ生成部29がCAVLCの符号化方式により符号化を行う場合について概略的に説明すると次のとおりである。
符号化データ生成部29は、シンタックス値とコード番号とが対応付けられた可変テーブルを参照し、入力されたシンタックス値に対応するコード番号を導出する。
さらに、符号化データ生成部29は、可変テーブルを、シンタックス値の発生に応じて適応的に更新する。
なお、可変テーブルによるコード番号−シンタックス値の間の変換は、動画像復号装置1および動画像符号化装置2の間では、1対1で対応している。このため、可変テーブルに関する処理については、復号モジュール10のものと対応しているので、その詳細な説明を省略する。
さらに、符号化データ生成部29は、シンタックスやコンテキストに対応するVLC方式を用いて、コード番号から符号化データのビット列を符号化する。VLC方式についても、復号モジュール10のものと対応しているので、その詳細な説明を省略する。
このようにして、符号化データ生成部29における符号化処理が完了する。
なお、符号化データ生成部29は、復号モジュール10が備える結合シンタックス復号部1011、可変テーブル記憶部1012、VLC方式選択部1013、可変テーブル選択部1014、および可変テーブル適応部1015と同様の構成を備えていてもよい。
符号化設定部21は、上述した動画像復号装置1のCU情報復号部11に対応している。符号化設定部21と、上述したCU情報復号部11とを比較すると次のとおりである。
上述したCU情報復号部11は、結合シンタックスに係る符号化データとシンタックス種別とを復号モジュール10に供給し、復号モジュール10により復号された結合シンタックスに基づいてPU分割タイプ等を決定する。
これに対して、符号化設定部21は、PU分割タイプ等を決定して結合シンタックスを生成し、結合シンタックスに係るシンタックス値とシンタックス種別とを符号化データ生成部29に供給する。
なお、符号化設定部21は、CU情報復号部11が備える結合シンタックス決定部111、結合シンタックス(cu_split_pred_part_mode)の定義テーブル112と同様の構成を備えていてもよい。
予測画像生成部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に供給する。
(変形例との対応関係)
[1]’結合シンタックス(ジョイント符号)を使わない例
符号化データ生成部29は、CU分割フラグ(split_coding_unit_flag)、スキップフラグ(skip_flag)、マージフラグ(merge_flag)、CU予測方式情報(PredMode)、およびPU分割タイプ情報(PartMode)の情報を結合したシンタックスであるsplit_pred_part_modeを用いてもよいし、このような結合シンタックスを用いない構成とすることも可能である。また、pred_partモードを用いる構成を採用することができる。
[1]’結合シンタックス(ジョイント符号)を使わない例
符号化データ生成部29は、CU分割フラグ(split_coding_unit_flag)、スキップフラグ(skip_flag)、マージフラグ(merge_flag)、CU予測方式情報(PredMode)、およびPU分割タイプ情報(PartMode)の情報を結合したシンタックスであるsplit_pred_part_modeを用いてもよいし、このような結合シンタックスを用いない構成とすることも可能である。また、pred_partモードを用いる構成を採用することができる。
具体的な構成は、例えば、動画像復号装置1の変形例[1]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[1]の説明における「結合シンタックス決定部111」、「結合シンタックス復号部1011」、「定義テーブル112A」、および「復号(する)」を、それぞれ、「符号化設定部21」、「符号化データ生成部29」、「定義テーブル112Aに相当する構成」、および「符号化(する)」と読み替えるものとする。
[2]’縦横を区別しない例
符号化データ生成部29は、横長矩形PUグループと縦長矩形PUグループとを区別してもよいし、両者を区別せずに非正方形のPU分割タイプを一つのグループとして取り扱ってもよい。
符号化データ生成部29は、横長矩形PUグループと縦長矩形PUグループとを区別してもよいし、両者を区別せずに非正方形のPU分割タイプを一つのグループとして取り扱ってもよい。
[2−1]’horz_part_flagを用いる場合
PU分割タイプが横長矩形PUグループに属するか、それとも縦長矩形PUグループに属するかを指定するhorz_part_flagを用いることができる。
PU分割タイプが横長矩形PUグループに属するか、それとも縦長矩形PUグループに属するかを指定するhorz_part_flagを用いることができる。
具体的な構成は、例えば、動画像復号装置1の変形例[2−1]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[2−1]の説明における「結合シンタックス決定部111」、「シンタックス定義テーブル112B1」、「シンタックス定義テーブル112B2」、および「復号(する)」を、それぞれ、「符号化設定部21」、「シンタックス定義テーブル112B1に相当する構成」、「シンタックス定義テーブル112B2に相当する構成」、および「符号化(する)」と読み替えるものとする。
[2−2]’ さらに、結合シンタックス(ジョイント符号)を用いる場合
符号化設定部21および符号化データ生成部29は、変形例[2−1]’で使用した pred_part_modeの代わりに、cu_split_pred_part_modeを使用する構成であってもよい。
符号化設定部21および符号化データ生成部29は、変形例[2−1]’で使用した pred_part_modeの代わりに、cu_split_pred_part_modeを使用する構成であってもよい。
具体的な構成は、例えば、動画像復号装置1の変形例[2−2]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[2−2]の説明における「結合シンタックス決定部111」、「結合シンタックス復号部1011」、「定義テーブル112B3」、「定義テーブル112B4」、および「復号(する)」を、それぞれ、「符号化設定部21」、「符号化データ生成部29」、「定義テーブル112B3に相当する構成」、「定義テーブル112B4に相当する構成」、および「符号化(する)」と読み替えるものとする。
[2−2−1]’さらに、結合シンタックスの定義テーブルを共通化する場合
符号化設定部21および符号化データ生成部29は、縦横を区別しない構成において、さらに結合シンタックスの定義テーブルを共通化する構成であってもよい。
符号化設定部21および符号化データ生成部29は、縦横を区別しない構成において、さらに結合シンタックスの定義テーブルを共通化する構成であってもよい。
具体的な構成は、例えば、動画像復号装置1の変形例[2−2−1]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[2−2−1]の説明における「結合シンタックス決定部111」、「定義テーブル112B6」、「可変テーブル初期化用のテーブル」および「復号(する)」を、それぞれ、「符号化設定部21」、「定義テーブル112B6に相当する構成」、「可変テーブル初期化用のテーブルに相当する構成」および「符号化(する)」と読み替えるものとする。
[2−3]’さらに、AMPを禁止する場合
符号化設定部21および符号化データ生成部29は、縦横を区別しない構成において、さらにAMPを用いない構成であってもよい。具体的な構成は、例えば、動画像復号装置1の変形例[2−3]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[2−3]の説明における「結合シンタックス決定部111」、「結合シンタックス復号部1011」、「定義テーブル112B5」、および「復号(する)」を、それぞれ、「符号化設定部21」、「符号化データ生成部29」、「定義テーブル112B5に相当する構成」、および「符号化(する)」と読み替えるものとする。
符号化設定部21および符号化データ生成部29は、縦横を区別しない構成において、さらにAMPを用いない構成であってもよい。具体的な構成は、例えば、動画像復号装置1の変形例[2−3]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[2−3]の説明における「結合シンタックス決定部111」、「結合シンタックス復号部1011」、「定義テーブル112B5」、および「復号(する)」を、それぞれ、「符号化設定部21」、「符号化データ生成部29」、「定義テーブル112B5に相当する構成」、および「符号化(する)」と読み替えるものとする。
[2−4]’さらに、CABACを用いる場合
符号化設定部21および符号化データ生成部29は、縦横を区別しない構成において、さらにCABACを用いる構成であってもよい。具体的な構成は、例えば、動画像復号装置1の変形例[2−4]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[2−4]の説明における「結合シンタックス復号部1011」、および「(算術)復号(する)」を、それぞれ、「符号化データ生成部29」、および、「(算術)符号化(する)」と読み替えるものとする。また、変形例[2−4]の説明におけるバイナリ化は、「符号化データ生成部29」が行うこととする。
符号化設定部21および符号化データ生成部29は、縦横を区別しない構成において、さらにCABACを用いる構成であってもよい。具体的な構成は、例えば、動画像復号装置1の変形例[2−4]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[2−4]の説明における「結合シンタックス復号部1011」、および「(算術)復号(する)」を、それぞれ、「符号化データ生成部29」、および、「(算術)符号化(する)」と読み替えるものとする。また、変形例[2−4]の説明におけるバイナリ化は、「符号化データ生成部29」が行うこととする。
[3]’ インター2N×2Nフラグの利用
符号化設定部21および符号化データ生成部29は、pred_part_modeとインター2N×2Nフラグとを組み合わせてPU分割タイプを表現する構成であってもよい。
符号化設定部21および符号化データ生成部29は、pred_part_modeとインター2N×2Nフラグとを組み合わせてPU分割タイプを表現する構成であってもよい。
具体的な構成は、例えば、動画像復号装置1の変形例[3]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[3]の説明における「結合シンタックス決定部111」、「結合シンタックス復号部1011」、「シンタックス定義テーブル112C」、および「復号(する)」を、それぞれ、「符号化設定部21」、「符号化データ生成部29」、「シンタックス定義テーブル112Cに相当する構成」、および「符号化(する)」と読み替えるものとする。
[4]’可変テーブル適応処理の変形例
符号化設定部21および符号化データ生成部29は、各PU分割タイプに独立のシンタックス値を割り当てて可変テーブル適応処理を行う構成であってもよい。
符号化設定部21および符号化データ生成部29は、各PU分割タイプに独立のシンタックス値を割り当てて可変テーブル適応処理を行う構成であってもよい。
具体的な構成は、例えば、動画像復号装置1の変形例[4]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[4]の説明における「可変テーブル適応部1015」、「可変テーブル1012E」、および「復号(する)」を、それぞれ、「符号化データ生成部29」、「可変テーブル1012Eに相当する構成」、および「符号化(する)」と読み替えるものとする。また、シンタックス値の発生回数に応じて、可変テーブル適応処理が行われるものとする。
[5]’CABACの適用
符号化データ生成部29は、縦横を区別する構成において、CABACによる算術符号化を行ってもかまわない。
符号化データ生成部29は、縦横を区別する構成において、CABACによる算術符号化を行ってもかまわない。
具体的な構成は、例えば、動画像復号装置1の変形例[5]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[5]の説明における「結合シンタックス復号部1011」、「テーブルTBL21」、および「(算術)復号(する)」を、それぞれ、「符号化データ生成部29」、「テーブルTBL21に相当する構成」、および「(算術)符号化(する)」と読み替えるものとする。
[6]’カウンタを用いた可変テーブル適応
符号化データ生成部29は、カウンタを用いた可変テーブル適応を行ってもよい。具体的な構成は、例えば、動画像復号装置1の変形例[6]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[6]の説明における「結合シンタックス復号部1011」、「可変テーブル1012F」、「可変テーブル1012G」、および「復号(する)」を、それぞれ、「符号化データ生成部29」、「可変テーブル1012Fに相当する構成」、「可変テーブル1012Gに相当する構成」、および「符号化(する)」と読み替えるものとする。また、シンタックス値の発生回数に応じて、可変テーブル適応処理が行われるものとする。
符号化データ生成部29は、カウンタを用いた可変テーブル適応を行ってもよい。具体的な構成は、例えば、動画像復号装置1の変形例[6]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[6]の説明における「結合シンタックス復号部1011」、「可変テーブル1012F」、「可変テーブル1012G」、および「復号(する)」を、それぞれ、「符号化データ生成部29」、「可変テーブル1012Fに相当する構成」、「可変テーブル1012Gに相当する構成」、および「符号化(する)」と読み替えるものとする。また、シンタックス値の発生回数に応じて、可変テーブル適応処理が行われるものとする。
[7]’ パーティション数が同一のPU分割タイプをグループ化する例
符号化データ生成部29は、パーティション数が同一のPU分割タイプをグループ化する構成であってもよい。具体的な構成は、例えば、動画像復号装置1の変形例[7]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[7]の説明における「結合シンタックス復号部1011」、「シンタックス定義テーブル112B7」、「シンタックス定義テーブル112B8」、および「復号(する)」を、それぞれ、「符号化データ生成部29」、「シンタックス定義テーブル112B7に相当する構成」、「シンタックス定義テーブル112B8に相当する構成」、および「符号化(する)」と読み替えるものとする。
符号化データ生成部29は、パーティション数が同一のPU分割タイプをグループ化する構成であってもよい。具体的な構成は、例えば、動画像復号装置1の変形例[7]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[7]の説明における「結合シンタックス復号部1011」、「シンタックス定義テーブル112B7」、「シンタックス定義テーブル112B8」、および「復号(する)」を、それぞれ、「符号化データ生成部29」、「シンタックス定義テーブル112B7に相当する構成」、「シンタックス定義テーブル112B8に相当する構成」、および「符号化(する)」と読み替えるものとする。
[8]’異なるシンタックスの例
符号化設定部21および符号化データ生成部29は、結合シンタックスとして、CU分割フラグ、スキップフラグ、マージフラグ、CU予測方式情報、およびPU分割タイプ情報の組み合わせ以外の組み合わせを用いる構成であってもよい。
符号化設定部21および符号化データ生成部29は、結合シンタックスとして、CU分割フラグ、スキップフラグ、マージフラグ、CU予測方式情報、およびPU分割タイプ情報の組み合わせ以外の組み合わせを用いる構成であってもよい。
[8−1]’結合シンタックスがマージフラグに係る情報を含まない場合
符号化設定部21および符号化データ生成部29は、結合シンタックスの値がマージフラグに係る情報含まない構成であってもよい。具体的な構成は、動画像復号装置1の変形例[8−1]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[8−1]の説明における「結合シンタックス決定部111」、「結合シンタックス復号部1011」、「シンタックス定義テーブル112B9」、「シンタックス定義テーブル112B10」、および「復号(する)」を、それぞれ、「符号化設定部21」、「符号化データ生成部29」、「シンタックス定義テーブル112B9に相当する構成」、「シンタックス定義テーブル112B10に相当する構成」、および「符号化(する)」と読み替えるものとする。
符号化設定部21および符号化データ生成部29は、結合シンタックスの値がマージフラグに係る情報含まない構成であってもよい。具体的な構成は、動画像復号装置1の変形例[8−1]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[8−1]の説明における「結合シンタックス決定部111」、「結合シンタックス復号部1011」、「シンタックス定義テーブル112B9」、「シンタックス定義テーブル112B10」、および「復号(する)」を、それぞれ、「符号化設定部21」、「符号化データ生成部29」、「シンタックス定義テーブル112B9に相当する構成」、「シンタックス定義テーブル112B10に相当する構成」、および「符号化(する)」と読み替えるものとする。
[8−2]’結合シンタックスがCU分割フラグの情報を含まない場合
符号化設定部21および符号化データ生成部29は、結合シンタックスの値がCU分割フラグの情報を含まない構成であってもよい。具体的な構成は、動画像復号装置1の変形例[8−2]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[8−2]の説明における「結合シンタックス決定部111」、「結合シンタックス復号部1011」、「シンタックス定義テーブル112B11」、「シンタックス定義テーブル112B12」、および「復号(する)」を、それぞれ、「符号化設定部21」、「符号化データ生成部29」、「シンタックス定義テーブル112B11に相当する構成」、「シンタックス定義テーブル112B12に相当する構成」、および「符号化(する)」と読み替えるものとする。
符号化設定部21および符号化データ生成部29は、結合シンタックスの値がCU分割フラグの情報を含まない構成であってもよい。具体的な構成は、動画像復号装置1の変形例[8−2]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[8−2]の説明における「結合シンタックス決定部111」、「結合シンタックス復号部1011」、「シンタックス定義テーブル112B11」、「シンタックス定義テーブル112B12」、および「復号(する)」を、それぞれ、「符号化設定部21」、「符号化データ生成部29」、「シンタックス定義テーブル112B11に相当する構成」、「シンタックス定義テーブル112B12に相当する構成」、および「符号化(する)」と読み替えるものとする。
[9]’非対称パーティションをグループ化する場合
符号化データ生成部29は、非対称パーティションをグループ化する構成であってもよい。具体的な構成は、動画像復号装置1の変形例[9]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[9]の説明における「結合シンタックス復号部1011」、「シンタックス定義テーブル112B13」、「シンタックス定義テーブル112B14」、および「復号(する)」を、それぞれ、「符号化データ生成部29」、「シンタックス定義テーブル112B13に相当する構成」、「シンタックス定義テーブル112B14に相当する構成」、および「符号化(する)」と読み替えるものとする。
[付記事項1]
上記の実施形態における動画像復号装置および動画像符号化装置の説明では、インターCUのPU分割タイプの一部に長方形PUグループに属するPU分割タイプが含まれる場合の例を説明したが、それに限られない。例えば、イントラCUのPU分割タイプの一部に非正方形の長方形PUグループに属するPU分割タイプが含まれる場合、結合シンタックスcu_split_pred_part_modeの値としてイントラCUにおける非正方形の長方形PUグループに対応する値を設定してもよい。イントラCUにおいても、長方形PUグループに属するPU分割タイプは、領域の複雑度が類似した領域で選択される傾向にあるため、適応処理により符号量が削減できる。なお、イントラCUとインターCUにともに長方形PUを含むPU分割が選択可能である場合は、イントラCUにおける長方形PUグループとインターCUにおける長方形PUグループを別に設定することが好ましい。言い換えると、結合シンタックスのある値をイントラCUの長方形PUグループに対応付けるとともに、結合シンタックスの別の値をインターCUの長方形PUグループに対応付けることが好ましい。一般にイントラCUはインターCUに較べて複雑な領域で選択される傾向がある。そのため、同じ長方形PUグループであっても、イントラCUかインターCUかによって、複雑度の異なる領域において選択される傾向がある。ゆえに、イントラCUの長方形PUグループとインターCUの長方形PUグループに別の値を設定することで、領域の複雑度に応じて適切なグループにより短い符号を割り当てることができるため、符号化効率が向上する。
符号化データ生成部29は、非対称パーティションをグループ化する構成であってもよい。具体的な構成は、動画像復号装置1の変形例[9]において説明したものと同様であるので、ここでは説明を省略する。ただし、変形例[9]の説明における「結合シンタックス復号部1011」、「シンタックス定義テーブル112B13」、「シンタックス定義テーブル112B14」、および「復号(する)」を、それぞれ、「符号化データ生成部29」、「シンタックス定義テーブル112B13に相当する構成」、「シンタックス定義テーブル112B14に相当する構成」、および「符号化(する)」と読み替えるものとする。
[付記事項1]
上記の実施形態における動画像復号装置および動画像符号化装置の説明では、インターCUのPU分割タイプの一部に長方形PUグループに属するPU分割タイプが含まれる場合の例を説明したが、それに限られない。例えば、イントラCUのPU分割タイプの一部に非正方形の長方形PUグループに属するPU分割タイプが含まれる場合、結合シンタックスcu_split_pred_part_modeの値としてイントラCUにおける非正方形の長方形PUグループに対応する値を設定してもよい。イントラCUにおいても、長方形PUグループに属するPU分割タイプは、領域の複雑度が類似した領域で選択される傾向にあるため、適応処理により符号量が削減できる。なお、イントラCUとインターCUにともに長方形PUを含むPU分割が選択可能である場合は、イントラCUにおける長方形PUグループとインターCUにおける長方形PUグループを別に設定することが好ましい。言い換えると、結合シンタックスのある値をイントラCUの長方形PUグループに対応付けるとともに、結合シンタックスの別の値をインターCUの長方形PUグループに対応付けることが好ましい。一般にイントラCUはインターCUに較べて複雑な領域で選択される傾向がある。そのため、同じ長方形PUグループであっても、イントラCUかインターCUかによって、複雑度の異なる領域において選択される傾向がある。ゆえに、イントラCUの長方形PUグループとインターCUの長方形PUグループに別の値を設定することで、領域の複雑度に応じて適切なグループにより短い符号を割り当てることができるため、符号化効率が向上する。
〔応用例〕
上述した動画像符号化装置2及び動画像復号装置1は、動画像の送信、受信、記録、再生を行う各種装置に搭載して利用することができる。なお、動画像は、カメラ等により撮像された自然動画像であってもよいし、コンピュータ等により生成された人工動画像(CGおよびGUIを含む)であってもよい。
上述した動画像符号化装置2及び動画像復号装置1は、動画像の送信、受信、記録、再生を行う各種装置に搭載して利用することができる。なお、動画像は、カメラ等により撮像された自然動画像であってもよいし、コンピュータ等により生成された人工動画像(CGおよびGUIを含む)であってもよい。
まず、上述した動画像符号化装置2及び動画像復号装置1を、動画像の送信及び受信に利用できることを、図27を参照して説明する。
図35の(a)は、動画像符号化装置2を搭載した送信装置PROD_Aの構成を示したブロック図である。図35の(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を更に備えていてもよい。図35の(a)においては、これら全てを送信装置PROD_Aが備えた構成を例示しているが、一部を省略しても構わない。
なお、記録媒体PROD_A5は、符号化されていない動画像を記録したものであってもよいし、伝送用の符号化方式とは異なる記録用の符号化方式で符号化された動画像を記録したものであってもよい。後者の場合、記録媒体PROD_A5と符号化部PROD_A1との間に、記録媒体PROD_A5から読み出した符号化データを記録用の符号化方式に従って復号する復号部(不図示)を介在させるとよい。
図35の(b)は、動画像復号装置1を搭載した受信装置PROD_Bの構成を示したブロック図である。図35の(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を更に備えていてもよい。図35の(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を、動画像の記録及び再生に利用できることを、図36を参照して説明する。
図36の(a)は、上述した動画像符号化装置2を搭載した記録装置PROD_Cの構成を示したブロック図である。図36の(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を更に備えていてもよい。図36の(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の一例である。
図36の(b)は、上述した動画像復号装置1を搭載した再生装置PROD_Dの構成を示したブロックである。図36の(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を更に備えていてもよい。図36の(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 Electronic Engineers)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情報復号部
16 フレームメモリ
111 結合シンタックス決定部(追加情報復元手段)
112 定義テーブル
113 PU分割タイプ定義テーブル
114 PU分割タイプ残余情報定義テーブル
1011 結合シンタックス復号部(復号手段、予測単位分割タイプ群取得手段、追加情報復元手段、算術復号手段)
1012 可変テーブル記憶部
1013 VLC方式選択部
1014 可変テーブル選択部
1015 可変テーブル適応部(適応処理手段)
2 動画像符号化装置(画像符号化装置)
21 符号化設定部
25 フレームメモリ
29 符号化データ生成部(適応処理手段)
10 復号モジュール
11 CU情報復号部
16 フレームメモリ
111 結合シンタックス決定部(追加情報復元手段)
112 定義テーブル
113 PU分割タイプ定義テーブル
114 PU分割タイプ残余情報定義テーブル
1011 結合シンタックス復号部(復号手段、予測単位分割タイプ群取得手段、追加情報復元手段、算術復号手段)
1012 可変テーブル記憶部
1013 VLC方式選択部
1014 可変テーブル選択部
1015 可変テーブル適応部(適応処理手段)
2 動画像符号化装置(画像符号化装置)
21 符号化設定部
25 フレームメモリ
29 符号化データ生成部(適応処理手段)
Claims (17)
- 符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成して画像を復元する画像復号装置において、
上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、
取り得る値の少なくとも一部が、予測単位分割タイプの特定に用いる値であるシンタックスであって、前記予測単位分割タイプの特定に用いる値の少なくとも一つの値は、長方形予測単位分割タイプを2以上含む予測単位分割タイプ群に対応付けられた値であるシンタックスを復号するシンタックス復号手段と、
上記予測単位分割タイプ群に含まれる予測単位分割タイプが復号された場合に、前記予測単位分割タイプ群に対してより小さいコード番号が割り当てられるよう、前記シンタックスの復号に用いる可変テーブルを更新する適応処理手段を備えることを特徴とする画像復号装置。 - 上記シンタックスは、符号化単位分割情報、スキップフラグ、マージフラグ、および、CU予測方式情報の少なくとも一つと、予測単位分割タイプ情報との結合シンタックスであることを特徴とする請求項1に記載の画像復号装置。
- 上記シンタックスは、符号化単位分割情報、スキップフラグ、CU予測方式情報、および予測単位分割タイプの結合シンタックスであることを特徴とする請求項2に記載の画像復号装置。
- 上記シンタックスは、スキップフラグ、マージフラグ、CU予測方式情報、および予測単位分割タイプの結合シンタックスであることを特徴とする請求項2に記載の画像復号装置。
- 上記予測単位分割タイプ群として、長方形の予測単位を含む対称パーティションの予測単位分割タイプの集合である、対称長方形予測単位分割タイプ群と、長方形の予測単位を含む非対称パーティションの予測単位分割タイプの集合である、非対称長方形予測単位分割タイプ群とが少なくとも規定され、
上記シンタックスの取り得る第一の値が、上記対称長方形予測単位分割タイプ群に対応付けられた値であり、
上記シンタックスの取り得る第二の値が、上記非対称長方形予測単位分割タイプ群に対応付けられた値であることを特徴とする請求項1から4のいずれか1項に記載の画像復号装置。 - 上記予測単位分割タイプ群として、イントラ符号化単位における長方形の予測単位を含む、イントラ長方形予測単位分割タイプ群と、インター符号化単位における長方形の予測単位を含む、インター長方形予測単位分割タイプ群とが少なくとも規定され、
上記シンタックスの取り得る第一の値が、上記イントラ長方形予測単位分割タイプ群に対応付けられた値であり、
上記シンタックスの取り得る第二の値が、上記インター長方形予測単位分割タイプ群に対応付けられた値であることを特徴とする請求項1から5のいずれか1項に記載の画像復号装置。 - 符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成する画像符号化装置において、
上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、
取り得る値の少なくとも一部が、予測単位分割タイプの特定に用いる値であるシンタックスであって、前記予測単位分割タイプの特定に用いる値の少なくとも一つの値は、長方形予測単位分割タイプを2以上含む予測単位分割タイプ群に対応付けられた値であるシンタックスを符号化するシンタックス符号化手段と、
上記予測単位分割タイプ群に含まれる予測単位分割タイプが発生した場合に、前記予測単位分割タイプ群に対してより小さいコード番号が割り当てられるよう、前記シンタックスの復号に用いる可変テーブルを更新する適応処理手段を備えることを特徴とする画像符号化装置。 - 符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成して画像を復元する画像復号装置において、
上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、
上記長方形予測単位分割タイプが2以上属している予測単位分割タイプ群が規定されており、
処理対象となる符号化単位について、上記予測単位分割タイプ群に属する長方形予測単位分割タイプを復元した場合、該予測単位分割タイプ群に属する長方形予測単位分割タイプそれぞれに対して、復号前よりも短い符号が復号されるよう適応処理する適応処理手段を備えることを特徴とする画像復号装置。 - 上記予測単位分割タイプ群は、横長矩形予測単位への予測単位分割タイプの集合、および、縦長矩形予測単位への予測単位分割タイプの集合の和集合として規定されていることを特徴とする請求項8に記載の画像復号装置。
- 上記予測単位分割タイプ群は、横長矩形予測単位への予測単位分割タイプの集合、または、縦長矩形予測単位への予測単位分割タイプの集合として規定されていることを特徴とする請求項8に記載の画像復号装置。
- 符号化データに含まれる各符号からコード番号を復号する復号手段と
上記予測単位分割タイプ群と、該予測単位分割タイプ群に対応するコード番号との対応付けを含む可変テーブルを参照して、符号化データから復号されたコード番号に対応する予測単位分割タイプ群を取得する予測単位分割タイプ群取得手段を備え、
上記適応処理手段による上記適応処理は、取得した上記予測単位分割タイプ群に対して、より小さいコード番号が対応付けられるよう上記可変テーブルを更新する可変テーブル適応処理であることを特徴とする請求項8から10のいずれか1項に記載の画像復号装置。 - 予測単位分割タイプが、上記予測単位分割タイプ群取得手段が取得した上記予測単位分割タイプ群に属するいずれの長方形予測単位分割タイプであるかを特定するための追加情報を復元する追加情報復元手段を備えることを特徴とする請求項11に記載の画像復号装置。
- 上記予測単位分割タイプ群は、対称パーティションの予測単位分割タイプと、非対称パーティションの予測単位分割タイプとを含み、
上記追加情報では、対称パーティションの予測単位分割タイプに対して、非対称パーティションの予測単位分割タイプに比べて短い符号が割り当てられていることを特徴とする請求項12に記載の画像復号装置。 - 処理対象となる符号化単位における予測単位分割タイプが、上記予測単位分割タイプ群に含まれるか否かを示すバイナリ値を算術復号する算術復号手段を備え、
上記適応処理手段による上記適応処理は、上記バイナリ値の算術復号において用いる確率テーブルを更新する処理であることを特徴とする請求項8に記載の画像復号装置。 - 処理対象となる符号化単位における予測単位分割タイプが、横長矩形予測単位への予測単位分割タイプの集合として規定されている上記予測単位分割タイプ群、および、縦長矩形予測単位への予測単位分割タイプの集合として規定されている上記予測単位分割タイプ群のいずれに含まれるかを示すバイナリ値を算術復号する算術復号手段を備え、
上記適応処理手段による上記適応処理は、上記バイナリ値の算術復号において用いる確率テーブルを更新する処理であることを特徴とする請求項14に記載の画像復号装置。 - 符号化単位を所定の予測単位分割タイプにより1以上の数に分割して得られる予測単位ごとに予測画像を生成する画像符号化装置において、
上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、
上記長方形予測単位分割タイプが2以上属している予測単位分割タイプ群が規定されており、
処理対象となる符号化単位について、上記予測単位分割タイプ群に属する長方形予測単位分割タイプが発生した場合、該予測単位分割タイプ群に属する長方形予測単位分割タイプそれぞれに対して、発生前よりも短い符号が割り当てられるよう適応処理する適応処理手段を備えることを特徴とする画像符号化装置。 - 予測画像を生成するための予測単位を得るために、符号化単位を1以上の数に分割する分割方式である所定の予測単位分割タイプを特定するための予測単位分割情報を含む符号化データのデータ構造において、
上記符号化データを復号する画像復号装置において、上記所定の予測単位分割タイプとして、長方形の予測単位への予測単位分割タイプである長方形予測単位分割タイプが複数種類存在し、上記長方形予測単位分割タイプが2以上属している予測単位分割タイプ群が規定されており、
上記符号化データは、上記予測単位分割タイプ群が指定されたときに、符号化されている予測単位分割タイプが上記予測単位分割タイプ群に属するいずれの長方形予測単位分割タイプであるかを特定するための追加情報を含むことを特徴とする符号化データのデータ構造。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011250187A JP2013118424A (ja) | 2011-11-04 | 2011-11-15 | 画像復号装置、画像符号化装置、および符号化データのデータ構造 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011242841 | 2011-11-04 | ||
JP2011242841 | 2011-11-04 | ||
JP2011250187A JP2013118424A (ja) | 2011-11-04 | 2011-11-15 | 画像復号装置、画像符号化装置、および符号化データのデータ構造 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013118424A true JP2013118424A (ja) | 2013-06-13 |
Family
ID=48712720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011250187A Pending JP2013118424A (ja) | 2011-11-04 | 2011-11-15 | 画像復号装置、画像符号化装置、および符号化データのデータ構造 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013118424A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109716775A (zh) * | 2016-09-20 | 2019-05-03 | 株式会社Kt | 用于处理视频信号的方法和装置 |
CN110140354A (zh) * | 2016-10-05 | 2019-08-16 | 交互数字Vc控股公司 | 编码和解码方法以及对应设备 |
CN110463203A (zh) * | 2017-03-31 | 2019-11-15 | 松下电器(美国)知识产权公司 | 图像编码装置、图像解码装置、图像编码方法及图像解码方法 |
JP2019535175A (ja) * | 2016-10-05 | 2019-12-05 | インターデジタル ヴイシー ホールディングス, インコーポレイテッド | 2分木分割モードコード化の方法及び機器 |
-
2011
- 2011-11-15 JP JP2011250187A patent/JP2013118424A/ja active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109716775A (zh) * | 2016-09-20 | 2019-05-03 | 株式会社Kt | 用于处理视频信号的方法和装置 |
CN109716775B (zh) * | 2016-09-20 | 2023-08-22 | 株式会社Kt | 用于处理视频信号的方法和装置 |
JP7088917B2 (ja) | 2016-10-05 | 2022-06-21 | インターデジタル マディソン パテント ホールディングス, エスアーエス | 符号化方法、復号方法、および対応するデバイス |
JP2019535175A (ja) * | 2016-10-05 | 2019-12-05 | インターデジタル ヴイシー ホールディングス, インコーポレイテッド | 2分木分割モードコード化の方法及び機器 |
JP2019537299A (ja) * | 2016-10-05 | 2019-12-19 | インターデジタル ヴイシー ホールディングス, インコーポレイテッド | 符号化方法、復号方法、および対応するデバイス |
US11228759B2 (en) | 2016-10-05 | 2022-01-18 | Interdigital Madison Patent Holdings, Sas | Encoding and decoding methods and corresponding devices |
JP2022130449A (ja) * | 2016-10-05 | 2022-09-06 | インターデジタル マディソン パテント ホールディングス, エスアーエス | 符号化方法、復号方法、および対応するデバイス |
JP7319188B2 (ja) | 2016-10-05 | 2023-08-01 | インターデジタル マディソン パテント ホールディングス, エスアーエス | 2分木分割モードコード化の方法及び機器 |
CN110140354A (zh) * | 2016-10-05 | 2019-08-16 | 交互数字Vc控股公司 | 编码和解码方法以及对应设备 |
US11889073B2 (en) | 2016-10-05 | 2024-01-30 | Interdigital Madison Patent Holdings, Sas | Encoding and decoding methods and corresponding devices |
JP7434422B2 (ja) | 2016-10-05 | 2024-02-20 | インターデジタル マディソン パテント ホールディングス, エスアーエス | 符号化方法、復号方法、および対応するデバイス |
CN110463203A (zh) * | 2017-03-31 | 2019-11-15 | 松下电器(美国)知识产权公司 | 图像编码装置、图像解码装置、图像编码方法及图像解码方法 |
CN110463203B (zh) * | 2017-03-31 | 2023-07-14 | 松下电器(美国)知识产权公司 | 图像解码方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7001768B2 (ja) | 算術復号装置 | |
US11627337B2 (en) | Image decoding device | |
JP6190494B2 (ja) | 画像復号装置、画像復号方法および画像符号化装置 | |
KR101881869B1 (ko) | 오프셋 복호 장치, 오프셋 부호화 장치, 화상 필터 장치 및 데이터 구조 | |
US10148974B2 (en) | Image decoding device, image encoding device, and data structure of encoded data | |
WO2016203881A1 (ja) | 算術復号装置及び算術符号化装置 | |
WO2013047811A1 (ja) | 画像復号装置、画像復号方法および画像符号化装置 | |
US10136161B2 (en) | DMM prediction section, image decoding device, and image coding device | |
JP7469904B2 (ja) | 画像復号装置、画像符号化装置、画像復号方法及び画像符号化方法 | |
WO2019065488A1 (ja) | 画像復号装置および画像符号化装置 | |
WO2013065431A1 (ja) | 画像復号装置、画像復号方法および画像符号化装置 | |
JP2013118424A (ja) | 画像復号装置、画像符号化装置、および符号化データのデータ構造 | |
WO2020184366A1 (ja) | 画像復号装置 | |
JP2013223049A (ja) | 画像復号装置、および画像符号化装置 | |
AU2015264943B2 (en) | Image decoding device, image encoding device, and data structure of encoded data | |
JP2016076904A (ja) | Dcオフセット情報復号装置、画像復号装置、およびdcオフセット情報符号化装置。 | |
JP2013251827A (ja) | 画像フィルタ装置、画像復号装置、画像符号化装置、およびデータ構造 | |
JP2020195013A (ja) | 画像復号装置および画像符号化装置 |