JP2014007643A - 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 - Google Patents
動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 Download PDFInfo
- Publication number
- JP2014007643A JP2014007643A JP2012143055A JP2012143055A JP2014007643A JP 2014007643 A JP2014007643 A JP 2014007643A JP 2012143055 A JP2012143055 A JP 2012143055A JP 2012143055 A JP2012143055 A JP 2012143055A JP 2014007643 A JP2014007643 A JP 2014007643A
- Authority
- JP
- Japan
- Prior art keywords
- block
- transform coefficient
- unit
- coefficient
- encoding
- 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
【課題】サブブロック内の各周波数成分位置における変換係数を符号化する際の演算量や回路規模の大型化を招くことなく、圧縮率を高めることができるようにする。
【解決手段】サブブロック符号化部66が、スキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上であれば、最初の非零の変換係数については、正負符号を可変長符号化せずに絶対値だけを可変長符号化し、その位置差が閾値より小さければ、最初の非零の変換係数についても、正負符号及び絶対値を可変長符号化する。
【選択図】図1
【解決手段】サブブロック符号化部66が、スキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上であれば、最初の非零の変換係数については、正負符号を可変長符号化せずに絶対値だけを可変長符号化し、その位置差が閾値より小さければ、最初の非零の変換係数についても、正負符号及び絶対値を可変長符号化する。
【選択図】図1
Description
この発明は、動画像を高効率で符号化を行う動画像符号化装置及び動画像符号化方法と、高効率で符号化されている動画像を復号する動画像復号装置及び動画像復号方法とに関するものである。
例えば、以下の非特許文献1に記載されている従来の動画像符号化装置では、入力された画像を所定の大きさの最大符号化ブロックに分割し、さらに、最大符号化ブロックをより細かい符号化ブロックに階層分割する。
また、その符号化ブロックをさらに細かい予測ブロックに分割し、その予測ブロックに対する画面内予測や動き補償予測を実施することで予測誤差を生成する。
また、その予測誤差を符号化ブロック内で階層的に変換ブロックに分割し、それぞれの変換係数を算術符号化することで高い圧縮率を達成している。
また、後述する変換係数の正負の符号の一部を他の情報を用いて埋め込む正負符号埋め込み手段を利用することで、さらに圧縮率を向上させている。
また、その符号化ブロックをさらに細かい予測ブロックに分割し、その予測ブロックに対する画面内予測や動き補償予測を実施することで予測誤差を生成する。
また、その予測誤差を符号化ブロック内で階層的に変換ブロックに分割し、それぞれの変換係数を算術符号化することで高い圧縮率を達成している。
また、後述する変換係数の正負の符号の一部を他の情報を用いて埋め込む正負符号埋め込み手段を利用することで、さらに圧縮率を向上させている。
従来の動画像符号化装置では、ヘッダ情報として、正負符号埋め込み手段を利用するか否かを示す正負符号埋め込みフラグ(例えば、正負符号埋め込み手段を利用する場合は“1”、利用しない場合は“0”)を符号化する。
また、変換係数の算術符号化において、変換ブロックのサイズが8×8サイズより大きい場合、例えば、図21に示すように、変換ブロックを4×4サイズのサブブロックに分割し、次のようにして符号化を行う。
また、変換係数の算術符号化において、変換ブロックのサイズが8×8サイズより大きい場合、例えば、図21に示すように、変換ブロックを4×4サイズのサブブロックに分割し、次のようにして符号化を行う。
(1)図21に示すスキャン順にサブブロックを走査するとともに、スキャン順にサブブロック内の変換係数を走査し、スキャン順で最も後ろにある非零の変換係数の位置を“PosLast”として特定する。
(2)PosLastの水平成分であるPosLastXと、PosLastの垂直成分であるPosLastYを算術符号化する。
(3)PosLastを含むサブブロックから逆スキャン順(上記のスキャンと逆順であり、図22の矢印が示す順番)に、当該サブブロック内に非零の変換係数が含まれているか否かを示すSigCoeffGroupFlagを算術符号化する。
SigCoeffGroupFlagが当該サブブロック内に非零の変換係数が含まれている旨を示している場合、以下の(4)〜(8)の処理を行う。
(2)PosLastの水平成分であるPosLastXと、PosLastの垂直成分であるPosLastYを算術符号化する。
(3)PosLastを含むサブブロックから逆スキャン順(上記のスキャンと逆順であり、図22の矢印が示す順番)に、当該サブブロック内に非零の変換係数が含まれているか否かを示すSigCoeffGroupFlagを算術符号化する。
SigCoeffGroupFlagが当該サブブロック内に非零の変換係数が含まれている旨を示している場合、以下の(4)〜(8)の処理を行う。
(4)スキャン順で最初の当該サブブロック内の変換係数の絶対値の和sumAbsを算出し、その絶対値の和sumAbsが偶数である場合、firstNZsign=1、奇数である場合、firstNZSign=−1とする。
(5)逆スキャン順に、当該サブブロック内の変換係数(各周波数成分の位置にある変換係数)が非零であるか否かを示すsignificant_coeff_flagを算術符号化するとともに、スキャン順で最初の非零係数位置をfirstNZPos、最後の非零係数位置をlastNZPosとする。
(6)最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの差が4以上であり、上記の正負符号埋め込みフラグが1である場合には、最初の非零係数位置firstNZPosにおける変換係数の正負の符号がfirstNZsignの正負と一致するよう変換係数の値を調整する。
(7)逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数については、その変換係数の絶対値が1より大きいか否かを示すcoeff_abs_level_greater1_flagを算術符号化する。
(8)逆スキャン順に、coeff_abs_level_greater1_flagが、変換係数の絶対値が1より大きい旨を示している周波数成分位置の変換係数については、その変換係数の絶対値が2より大きいか否かを示すcoeff_abs_level_greater2_flagを算術符号化する。
(5)逆スキャン順に、当該サブブロック内の変換係数(各周波数成分の位置にある変換係数)が非零であるか否かを示すsignificant_coeff_flagを算術符号化するとともに、スキャン順で最初の非零係数位置をfirstNZPos、最後の非零係数位置をlastNZPosとする。
(6)最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの差が4以上であり、上記の正負符号埋め込みフラグが1である場合には、最初の非零係数位置firstNZPosにおける変換係数の正負の符号がfirstNZsignの正負と一致するよう変換係数の値を調整する。
(7)逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数については、その変換係数の絶対値が1より大きいか否かを示すcoeff_abs_level_greater1_flagを算術符号化する。
(8)逆スキャン順に、coeff_abs_level_greater1_flagが、変換係数の絶対値が1より大きい旨を示している周波数成分位置の変換係数については、その変換係数の絶対値が2より大きいか否かを示すcoeff_abs_level_greater2_flagを算術符号化する。
(9)最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの差が予め設定された所定の閾値sign_hiding_threshold以上であり、かつ、正負符号埋め込みフラグが1である場合には、最初の非零係数位置firstNZPosにおける変換係数の正負の符号以外について、逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数の正負の符号を示すcoeff_sign_flagを算術符号化する。
最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの差が閾値sign_hiding_threshold未満であるか、あるいは、正負符号埋め込みフラグが0である場合には、すべての変換係数について、逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数の正負の符号を示すcoeff_sign_flagを算術符号化する。
(10)逆スキャン順に、coeff_abs_level_greater2_flagが、変換係数の絶対値が2より大きい旨を示している周波数成分位置の変換係数について、変換係数の絶対値から3を減じた値であるcoeff_abs_level_minus3を算術符号化する。
(11)最後のサブブロックに至るまで(3)〜(10)を繰り返し実施する。
最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの差が閾値sign_hiding_threshold未満であるか、あるいは、正負符号埋め込みフラグが0である場合には、すべての変換係数について、逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数の正負の符号を示すcoeff_sign_flagを算術符号化する。
(10)逆スキャン順に、coeff_abs_level_greater2_flagが、変換係数の絶対値が2より大きい旨を示している周波数成分位置の変換係数について、変換係数の絶対値から3を減じた値であるcoeff_abs_level_minus3を算術符号化する。
(11)最後のサブブロックに至るまで(3)〜(10)を繰り返し実施する。
このように、条件に応じて、変換係数の正負を示す符号のシグナリングをスキップする正負符号埋め込み手段を用いることにより、符号化情報のオーバヘッドを減らすことができるので、圧縮効率が向上する。
B. Bross,W.−J. Han,J.−R. Ohm,G. J. Sullivan and T. Wiegand,"High efficiency video coding (HEVC) text specification draft 7",doc. JCTVC−I1003,Joint Collaborative Team on Video Coding(JCT−VC)of ITU−T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,9th Meeting,2012
従来の動画像符号化装置は以上のように構成されているので、正負符号埋め込み手段を利用することで、圧縮率を高めることができるが、正負符号埋め込み手段を利用するには、非零の変換係数の位置や、サブブロック内の変換係数の絶対値の和sumAbsなどを算出して保持しなければならず、演算量や回路規模が大きくなる課題があった。
この発明は上記のような課題を解決するためになされたもので、サブブロック内の各周波数成分位置における変換係数を符号化する際の演算量や回路規模の大型化を招くことなく、圧縮率を高めることができる動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法を得ることを目的とする。
この発明に係る動画像符号化装置は、可変長符号化手段が、圧縮データである変換係数をサブブロックに分割し、各々のサブブロックの変換係数をスキャンして圧縮データ系列を生成するとともに、各々のサブブロックの変換係数が非零であるか否かを示す係数パラメータを出力する係数スキャン手段と、係数スキャン手段から出力された係数パラメータを参照して、その圧縮データ系列の中で、その変換係数のスキャン順で最後の非零の変換係数を特定し、その変換係数の位置を示す最後位置情報を可変長符号化する最後位置情報符号化手段と、各々のサブブロックの変換係数の正負符号及び絶対値を可変長符号化する符号絶対値符号化手段とを備え、その符号絶対値符号化手段が、スキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上であれば、最初の非零の変換係数については、当該変換係数が正の値であれば当該変換係数の絶対値が偶数値になるように制御し、当該変換係数が負の値であれば、当該変換係数の絶対値が奇数値になるように制御して、正負符号を可変長符号化せずに絶対値だけを可変長符号化し、その位置差が閾値より小さければ、最初の非零の変換係数についても、正負符号及び絶対値を可変長符号化するようにしたものである。
この発明によれば、符号絶対値符号化手段が、スキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上であれば、最初の非零の変換係数については、当該変換係数の絶対値が偶数であるか否かで正負符号を示すことにより、正負符号を可変長符号化せずに絶対値だけを可変長符号化し、その位置差が閾値より小さければ、最初の非零の変換係数についても、正負符号及び絶対値を可変長符号化するように構成したので、サブブロック内の各周波数成分位置における変換係数を符号化する際の演算量や回路規模の大型化を招くことなく、圧縮率を高めることができる効果がある。
実施の形態1.
図1はこの発明の実施の形態1による動画像符号化装置を示す構成図である。
この実施の形態1の動画像符号化装置が処理対象とする映像信号は、輝度信号と2つの色差信号からなるYUV信号や、ディジタル撮像素子から出力されるRGB信号等の任意の色空間のカラー映像信号のほか、モノクロ画像信号や赤外線画像信号など、映像フレームが水平・垂直2次元のディジタルサンプル(画素)列から構成される任意の映像信号である。
各画素の諧調は8ビットでもよいし、10ビット、12ビットなどの諧調であってもよい。
図1はこの発明の実施の形態1による動画像符号化装置を示す構成図である。
この実施の形態1の動画像符号化装置が処理対象とする映像信号は、輝度信号と2つの色差信号からなるYUV信号や、ディジタル撮像素子から出力されるRGB信号等の任意の色空間のカラー映像信号のほか、モノクロ画像信号や赤外線画像信号など、映像フレームが水平・垂直2次元のディジタルサンプル(画素)列から構成される任意の映像信号である。
各画素の諧調は8ビットでもよいし、10ビット、12ビットなどの諧調であってもよい。
ただし、以下の説明においては、特に断らない限り、入力される映像信号がYUV信号であるものとする。また、2つの色差成分U,Vが輝度成分Yに対して、サブサンプルされた4:2:0フォーマットの信号であるものとする。
なお、映像の各フレームに対応する処理データ単位を「ピクチャ」と称し、この実施の形態1では、「ピクチャ」は順次走査(プログレッシブスキャン)された映像フレームの信号として説明を行う。ただし、映像信号がインタレース信号である場合、「ピクチャ」は映像フレームを構成する単位であるフィールド画像信号であってもよい。
なお、映像の各フレームに対応する処理データ単位を「ピクチャ」と称し、この実施の形態1では、「ピクチャ」は順次走査(プログレッシブスキャン)された映像フレームの信号として説明を行う。ただし、映像信号がインタレース信号である場合、「ピクチャ」は映像フレームを構成する単位であるフィールド画像信号であってもよい。
図1において、符号化制御部1はイントラ予測処理(フレーム内予測処理)又は動き補償予測処理(フレーム間予測処理)が実施される際の処理単位となる符号化ブロックの最大サイズを決定するとともに、最大サイズの符号化ブロックが階層的に分割される際の上限の階層数を決定する処理を実施する。
また、符号化制御部1は利用可能な1以上の符号化モード(1以上のイントラ符号化モード、1以上のインター符号化モード)の中から、階層的に分割される各々の符号化ブロックに適する符号化モードを選択する処理を実施する。
また、符号化制御部1は各々の符号化ブロック毎に、差分画像が圧縮される際に用いられる量子化パラメータ及び変換ブロックサイズを決定するとともに、予測処理が実施される際に用いられるイントラ予測パラメータ又はインター予測パラメータを決定する処理を実施する。量子化パラメータ及び変換ブロックサイズを示す変換ブロック分割フラグは、予測差分符号化パラメータに含まれて、変換・量子化部7、逆量子化・逆変換部8及び可変長符号化部13等に出力される。
また、符号化制御部1は利用可能な1以上の符号化モード(1以上のイントラ符号化モード、1以上のインター符号化モード)の中から、階層的に分割される各々の符号化ブロックに適する符号化モードを選択する処理を実施する。
また、符号化制御部1は各々の符号化ブロック毎に、差分画像が圧縮される際に用いられる量子化パラメータ及び変換ブロックサイズを決定するとともに、予測処理が実施される際に用いられるイントラ予測パラメータ又はインター予測パラメータを決定する処理を実施する。量子化パラメータ及び変換ブロックサイズを示す変換ブロック分割フラグは、予測差分符号化パラメータに含まれて、変換・量子化部7、逆量子化・逆変換部8及び可変長符号化部13等に出力される。
ここで、変換ブロックサイズは、符号化ブロックを四分木状に階層分割することによって決定される。
例えば、変換ブロックを分割する場合と変換ブロックを分割しない場合での符号量や、符号化誤差を加味した評価尺度などに基づいて、評価値が最小になるように変換ブロックを分割するか否かを決定することで、符号量と符号化誤差のトレードオフの観点から最適な変換ブロックの分割形状を決定することができる。
例えば、変換ブロックを分割する場合と変換ブロックを分割しない場合での符号量や、符号化誤差を加味した評価尺度などに基づいて、評価値が最小になるように変換ブロックを分割するか否かを決定することで、符号量と符号化誤差のトレードオフの観点から最適な変換ブロックの分割形状を決定することができる。
例えば、予測ブロックの形状が正方形である予測モードが、符号化ブロックの符号化モードとして選択された場合、符号化ブロックが1つまたは複数の正方形の変換ブロックに階層的に分割されるように構成する。
一方、予測ブロックの形状が長方形である予測モードが、符号化ブロックの符号化モードとして選択された場合、符号化ブロックが1つまたは複数の長方形の変換ブロックに階層的に分割されるように構成する。あるいは、正方形の変換ブロックに分割された後に、さらに下の階層で長方形の変換ブロックに分割されるように構成する。
変換ブロックの分割情報は、階層毎に分割するか否かを示す変換ブロック分割フラグとして可変長符号化部13に出力する。
一方、予測ブロックの形状が長方形である予測モードが、符号化ブロックの符号化モードとして選択された場合、符号化ブロックが1つまたは複数の長方形の変換ブロックに階層的に分割されるように構成する。あるいは、正方形の変換ブロックに分割された後に、さらに下の階層で長方形の変換ブロックに分割されるように構成する。
変換ブロックの分割情報は、階層毎に分割するか否かを示す変換ブロック分割フラグとして可変長符号化部13に出力する。
ブロック分割部2は入力画像(カレントピクチャ)を示す画像信号を入力すると、その入力画像を符号化制御部1により決定された最大サイズの符号化ブロックに分割するとともに、符号化制御部1により決定された上限の階層数に至るまで、その符号化ブロックを階層的に分割する処理を実施する。
切替スイッチ3は符号化制御部1により選択された符号化モードがイントラ符号化モードであれば、ブロック分割部2により分割された符号化ブロックをイントラ予測部4に出力し、符号化制御部1により選択された符号化モードがインター符号化モードであれば、ブロック分割部2により分割された符号化ブロックを動き補償予測部5に出力する処理を実施する。
切替スイッチ3は符号化制御部1により選択された符号化モードがイントラ符号化モードであれば、ブロック分割部2により分割された符号化ブロックをイントラ予測部4に出力し、符号化制御部1により選択された符号化モードがインター符号化モードであれば、ブロック分割部2により分割された符号化ブロックを動き補償予測部5に出力する処理を実施する。
イントラ予測部4は切替スイッチ3からブロック分割部2により分割された符号化ブロックを受けると、その符号化ブロックに対して、イントラ予測用メモリ10により格納されている上記符号化ブロックに隣接している復号済みの画素を用いて、符号化制御部1から出力されたイントラ予測パラメータに基づくフレーム内予測処理を実施することで予測画像を生成する処理を実施する。
即ち、イントラ予測部4は、ブロック分割部2により分割された符号化ブロックにおける輝度成分については、その輝度成分のフレーム内予測を実施して、輝度成分に対する予測画像を生成する。
一方、ブロック分割部2により分割された符号化ブロックにおける色差成分については、符号化制御部1により選択された符号化モードが、イントラ符号化モードにおける方向性予測モードであれば、ブロック分割部2により分割された符号化ブロックにおける色差成分のフレーム内予測を実施して、色差成分に対する予測画像を生成する。
即ち、イントラ予測部4は、ブロック分割部2により分割された符号化ブロックにおける輝度成分については、その輝度成分のフレーム内予測を実施して、輝度成分に対する予測画像を生成する。
一方、ブロック分割部2により分割された符号化ブロックにおける色差成分については、符号化制御部1により選択された符号化モードが、イントラ符号化モードにおける方向性予測モードであれば、ブロック分割部2により分割された符号化ブロックにおける色差成分のフレーム内予測を実施して、色差成分に対する予測画像を生成する。
動き補償予測部5はブロック分割部2により分割された符号化ブロックに対応する符号化モードとして、符号化制御部1によりインター符号化モードが選択された場合、動き補償予測フレームメモリ12により格納されている1フレーム以上の参照画像を用いて、符号化制御部1から出力されたインター予測パラメータに基づいて、その符号化ブロックに対する動き補償予測処理を実施することで予測画像を生成する処理を実施する。
減算部6はブロック分割部2により分割された符号化ブロックから、イントラ予測部4又は動き補償予測部5により生成された予測画像を減算することで、差分画像(=符号化ブロック−予測画像)を生成する処理を実施する。
変換・量子化部7は符号化制御部1から出力された予測差分符号化パラメータに含まれている変換ブロック分割フラグから特定される変換ブロックサイズ単位で、減算部6により生成された差分画像の変換処理(例えば、DCT(離散コサイン変換)やDST(離散サイン変換)、予め特定の学習系列に対して基底設計がなされているKL変換等の直交変換処理)を実施するとともに、その予測差分符号化パラメータに含まれている量子化パラメータを用いて、その差分画像の変換係数を量子化することで、量子化後の変換係数を差分画像の圧縮データとして出力する処理を実施する。
即ち、変換・量子化部7は減算部6により生成された差分画像に対する変換・量子化処理(圧縮処理)を実施する場合、ブロック分割部2により分割された符号化ブロックをさらに階層的に分割して、分割後のブロック単位で変換・量子化処理を実施する。
即ち、変換・量子化部7は減算部6により生成された差分画像に対する変換・量子化処理(圧縮処理)を実施する場合、ブロック分割部2により分割された符号化ブロックをさらに階層的に分割して、分割後のブロック単位で変換・量子化処理を実施する。
逆量子化・逆変換部8は符号化制御部1から出力された予測差分符号化パラメータに含まれている量子化パラメータを用いて、変換・量子化部7から出力された圧縮データを逆量子化し、その予測差分符号化パラメータに含まれている変換ブロック分割フラグから特定される変換ブロックサイズ単位で、逆量子化後の圧縮データの逆変換処理(例えば、逆DCT(逆離散コサイン変換)や逆DST(逆離散サイン変換)、逆KL変換等の逆変換処理)を実施することで、逆変換処理後の圧縮データを局所復号予測差分信号として出力する処理を実施する。
加算部9は逆量子化・逆変換部8から出力された局所復号予測差分信号とイントラ予測部4又は動き補償予測部5により生成された予測画像を示す予測信号を加算することで、局所復号画像を示す局所復号画像信号を生成する処理を実施する。
イントラ予測用メモリ10はイントラ予測部4により次回のイントラ予測処理で用いられる画像として、加算部9により生成された局所復号画像信号が示す局所復号画像を格納するRAMなどの記録媒体である。
イントラ予測用メモリ10はイントラ予測部4により次回のイントラ予測処理で用いられる画像として、加算部9により生成された局所復号画像信号が示す局所復号画像を格納するRAMなどの記録媒体である。
ループフィルタ部11は加算部9により生成された局所復号画像信号に含まれている符号化歪みを補償するために、オフセット値を当該局所復号画像信号に加算したり、複数のディジタルフィルタモードから選択されたフィルタモードでフィルタリングを施すなどの処理を実施し、そのオフセット値及び上記フィルタモードを可変長符号化部13に出力する処理を実施する。また、符号化歪み補償後の局所復号画像信号が示す局所復号画像を参照画像として動き補償予測フレームメモリ12に出力する処理を実施する。
動き補償予測フレームメモリ12は動き補償予測部5により次回の動き補償予測処理で用いられる参照画像として、ループフィルタ部11によるフィルタリング処理後の局所復号画像を格納するRAMなどの記録媒体である。
動き補償予測フレームメモリ12は動き補償予測部5により次回の動き補償予測処理で用いられる参照画像として、ループフィルタ部11によるフィルタリング処理後の局所復号画像を格納するRAMなどの記録媒体である。
可変長符号化部13は変換・量子化部7から出力された圧縮データを可変長符号化するとともに、符号化制御部1から出力された符号化モード及び変換ブロック分割フラグを含む予測差分符号化パラメータ、イントラ予測部4から出力されたイントラ予測パラメータ又は動き補償予測部5から出力されたインター予測パラメータ、符号化ブロックの動き量の予測値を示すインデックスである動きベクトル予測インデックスや動き量の予測差分値を示す差分動きベクトル情報及び参照画像のインデックスを示す参照画像インデックスなどの動き情報、符号化ブロックの分割状況を示すブロック分割情報などの符号化パラメータ、ループフィルタ部11におけるフィルタのオフセット値やフィルタモードなどを示すフィルタパラメータを可変長符号化して、その圧縮データ及び符号化パラメータの符号化データが多重化されているビットストリームを生成する処理を実施する。なお、可変長符号化部13は可変長符号化手段を構成している。
図1では、動画像符号化装置の構成要素である符号化制御部1、ブロック分割部2、切替スイッチ3、イントラ予測部4、動き補償予測部5、減算部6、変換・量子化部7、逆量子化・逆変換部8、加算部9、ループフィルタ部11及び可変長符号化部13のそれぞれが専用のハードウェア(例えば、CPUを実装している半導体集積回路、あるいは、ワンチップマイコンなど)で構成されているものを想定しているが、動画像符号化装置がコンピュータなどで構成される場合、符号化制御部1、ブロック分割部2、切替スイッチ3、イントラ予測部4、動き補償予測部5、減算部6、変換・量子化部7、逆量子化・逆変換部8、加算部9、ループフィルタ部11及び可変長符号化部13の処理内容を記述しているプログラムの全部又は一部を当該コンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにしてもよい。
図2はこの発明の実施の形態1による動画像符号化装置の処理内容を示すフローチャートである。
図2はこの発明の実施の形態1による動画像符号化装置の処理内容を示すフローチャートである。
図3はこの発明の実施の形態1による動画像符号化装置のイントラ予測部4を示す構成図である。
図3において、輝度信号イントラ予測部21はブロック分割部2により分割された符号化ブロックにおける輝度成分のフレーム内予測を実施して、輝度成分に対する予測画像を生成する処理を実施する。
即ち、輝度信号イントラ予測部21はイントラ予測用メモリ10により格納されている上記符号化ブロックに隣接している復号済みの輝度参照画素を参照して、符号化制御部1から出力されたイントラ予測パラメータに基づく輝度成分のフレーム内予測を実施することで、輝度成分に対する予測画像を生成する処理を実施する。
図3において、輝度信号イントラ予測部21はブロック分割部2により分割された符号化ブロックにおける輝度成分のフレーム内予測を実施して、輝度成分に対する予測画像を生成する処理を実施する。
即ち、輝度信号イントラ予測部21はイントラ予測用メモリ10により格納されている上記符号化ブロックに隣接している復号済みの輝度参照画素を参照して、符号化制御部1から出力されたイントラ予測パラメータに基づく輝度成分のフレーム内予測を実施することで、輝度成分に対する予測画像を生成する処理を実施する。
切替スイッチ22は符号化制御部1から出力されたイントラ予測パラメータのうち、色差信号のイントラ符号化モードを示すパラメータが、方向性予測モードである旨を示していれば、予測に用いる参照画素を色差信号方向性イントラ予測部23に与え、色差信号のイントラ符号化モードを示すパラメータが、平滑化輝度相関利用色差信号予測モードである旨を示していれば、予測に用いる参照画素を輝度相関利用色差信号予測部24に出力する処理を実施する。
色差信号方向性イントラ予測部23は切替スイッチ22から受け取った上記符号化ブロックに隣接している復号済みの色差参照画素を参照して、符号化制御部1から出力されたイントラ予測パラメータに基づく色差成分のフレーム内予測を実施することで、色差成分に対する予測画像を生成する処理を実施する。
輝度相関利用色差信号予測部24は切替スイッチ22から受け取った復号済みの画素のうち、符号化ブロックに隣接している復号済みの輝度参照画素及び色差参照画素と、当該符号化ブロック内の復号済みの輝度参照画素を用いて、その符号化ブロックを構成している画素のうち、水平方向及び垂直方向に隣接している複数の画素に係る輝度成分を平滑化して、平滑化後の輝度成分と色差成分の相関を示す相関パラメータを算出し、その相関パラメータと平滑化後の輝度成分を用いて、色差成分に対する予測画像を生成する処理を実施する。
なお、図5はこの発明の実施の形態1による動画像符号化装置のイントラ予測部4の処理内容を示すフローチャートである。
輝度相関利用色差信号予測部24は切替スイッチ22から受け取った復号済みの画素のうち、符号化ブロックに隣接している復号済みの輝度参照画素及び色差参照画素と、当該符号化ブロック内の復号済みの輝度参照画素を用いて、その符号化ブロックを構成している画素のうち、水平方向及び垂直方向に隣接している複数の画素に係る輝度成分を平滑化して、平滑化後の輝度成分と色差成分の相関を示す相関パラメータを算出し、その相関パラメータと平滑化後の輝度成分を用いて、色差成分に対する予測画像を生成する処理を実施する。
なお、図5はこの発明の実施の形態1による動画像符号化装置のイントラ予測部4の処理内容を示すフローチャートである。
図4はこの発明の実施の形態1による動画像符号化装置の輝度相関利用色差信号予測部24を示す構成図である。
図4において、平滑化輝度参照画素縮小部31はイントラ予測用メモリ10により格納されている符号化ブロックを構成している復号済みの輝度参照画素のうち、水平方向及び垂直方向に隣接している複数の輝度参照画素の平滑化処理等を実施することで、縮小輝度参照画素Rec’Lを生成する。
相関算出部32はイントラ予測用メモリ10により格納されている色差参照画素と平滑化輝度参照画素縮小部31により生成された縮小輝度参照画素Rec’Lを用いて、輝度成分と色差成分の相関を示す相関パラメータα,βを算出する処理を実施する。
色差予測画像生成部33は相関算出部32により算出された相関パラメータα,βと平滑化輝度参照画素縮小部31により生成された縮小輝度参照画素Rec’Lを用いて、色差成分に対する予測画像を生成する処理を実施する。
なお、図6はこの発明の実施の形態1による動画像符号化装置の輝度相関利用色差信号予測部24の処理内容を示すフローチャートである。
図4において、平滑化輝度参照画素縮小部31はイントラ予測用メモリ10により格納されている符号化ブロックを構成している復号済みの輝度参照画素のうち、水平方向及び垂直方向に隣接している複数の輝度参照画素の平滑化処理等を実施することで、縮小輝度参照画素Rec’Lを生成する。
相関算出部32はイントラ予測用メモリ10により格納されている色差参照画素と平滑化輝度参照画素縮小部31により生成された縮小輝度参照画素Rec’Lを用いて、輝度成分と色差成分の相関を示す相関パラメータα,βを算出する処理を実施する。
色差予測画像生成部33は相関算出部32により算出された相関パラメータα,βと平滑化輝度参照画素縮小部31により生成された縮小輝度参照画素Rec’Lを用いて、色差成分に対する予測画像を生成する処理を実施する。
なお、図6はこの発明の実施の形態1による動画像符号化装置の輝度相関利用色差信号予測部24の処理内容を示すフローチャートである。
図7はこの発明の実施の形態1による動画像符号化装置の可変長符号化部13を示す構成図である。
図7において、変換係数可変長符号化部51は変換・量子化部7から出力された圧縮データを可変長符号化する処理を実施する。
符号化パラメータ可変長符号化部52は符号化制御部1から出力された符号化モード及び変換ブロック分割フラグを含む予測差分符号化パラメータ、イントラ予測部4から出力されたイントラ予測パラメータ又は動き補償予測部5から出力されたインター予測パラメータ、動き情報、符号化ブロックの分割状況を示すブロック分割情報などの符号化パラメータを可変長符号化する処理を実施する。
図7において、変換係数可変長符号化部51は変換・量子化部7から出力された圧縮データを可変長符号化する処理を実施する。
符号化パラメータ可変長符号化部52は符号化制御部1から出力された符号化モード及び変換ブロック分割フラグを含む予測差分符号化パラメータ、イントラ予測部4から出力されたイントラ予測パラメータ又は動き補償予測部5から出力されたインター予測パラメータ、動き情報、符号化ブロックの分割状況を示すブロック分割情報などの符号化パラメータを可変長符号化する処理を実施する。
ここで、符号化パラメータのうち、最大値や絶対値の最大値が予め決定されている量子化パラメータ(量子化パラメータの予測差分値でもよい)、動きベクトル差分値、参照画像インデックス、ループフィルタのオフセット値などについては、例えば、Exponential Golomb符号に対して、最大値による制限を付与するMax Exponential Golomb符号を適用することにより、符号長をインデックス値に対して対数的な増加に抑制しつつ、符号長をExponential Golomb符号と比べて短くすることができる。
即ち、図24に示すように、インデックス値indexと最大値prefix長であるmax_prefix_lengthが与えられると、以下のステップにしたがって符号を出力する。
(1)2n<index+2を満たす最大の整数値nをprefix_lengthとして得る。
(2)prefix_length個の“0”を出力する第一の符号を出力する。
(3)prefix_lengthがmax_prefix_lengthと等しくない場合には、第二の符号として“1”を出力する。prefix_lengthがmax_prefix_lengthと等しい場合には、第二の符号を出力しない。
(4)index-2prefix_length-1-1をprefix_lengthビットの固定長符号で第三の符号として出力する。
出力された符号は算術符号化してビットストリームに多重化するよう構成してもよい。
なお、図24では、第一の符号として“0”を、第二の符号として“1”を出力するように構成したが、逆に、第一の符号として“1”を、第二の符号として“0”を出力するように構成してもよい。
即ち、図24に示すように、インデックス値indexと最大値prefix長であるmax_prefix_lengthが与えられると、以下のステップにしたがって符号を出力する。
(1)2n<index+2を満たす最大の整数値nをprefix_lengthとして得る。
(2)prefix_length個の“0”を出力する第一の符号を出力する。
(3)prefix_lengthがmax_prefix_lengthと等しくない場合には、第二の符号として“1”を出力する。prefix_lengthがmax_prefix_lengthと等しい場合には、第二の符号を出力しない。
(4)index-2prefix_length-1-1をprefix_lengthビットの固定長符号で第三の符号として出力する。
出力された符号は算術符号化してビットストリームに多重化するよう構成してもよい。
なお、図24では、第一の符号として“0”を、第二の符号として“1”を出力するように構成したが、逆に、第一の符号として“1”を、第二の符号として“0”を出力するように構成してもよい。
このように構成することにより、符号長をインデックス値に対して対数的な増加に抑制しつつ、第二の符号が条件によっては出力されないため、常に第二の符号を出力するExponential Golomb符号と比べて符号長を短くすることができる。
当然、Exponential Golomb符号と同様に、図25に示すように第三の符号として予め設定されたオフセット値prefix_offsetをprefix_lengthに加算した(prefix_offset+prefix_length)の長さの固定長符号としてもよい。この場合、以下のように動作する。
(2)prefix_length個の“1”を出力する第一の符号を出力する。
(3)prefix_lengthがmax_prefix_lengthと等しくない場合には、第二の符号として“0”を出力する。prefix_lengthがmax_prefix_lengthと等しい場合には、第二の符号を出力しない。
当然、Exponential Golomb符号と同様に、図25に示すように第三の符号として予め設定されたオフセット値prefix_offsetをprefix_lengthに加算した(prefix_offset+prefix_length)の長さの固定長符号としてもよい。この場合、以下のように動作する。
(2)prefix_length個の“1”を出力する第一の符号を出力する。
(3)prefix_lengthがmax_prefix_lengthと等しくない場合には、第二の符号として“0”を出力する。prefix_lengthがmax_prefix_lengthと等しい場合には、第二の符号を出力しない。
具体的には、例えば量子化パラメータの予測値との差分値であるdeltaQpを符号化する場合、deltaQpの取りうる範囲が入力画像のビット精度であるbitDepthにより、-26-6×(bitDepth-8)から25+6×(bitDepth-8)の範囲で規定されているとすれば、図26に示すように、deltaQpが0であるか否かを示す情報であるdeltaQpZeroを符号化し、deltaQpが0でない場合にはdeltaQpの正負符号であるdeltaQpSignを符号化すると共に、deltaQpの絶対値であるAbsDeltaQpを用いて、AbsDeltaQp-1をindexとし、prefix_offset=0とする上記Max Exponential Golomb符号を用いて、bitDepthが9以下の場合にはmax_prefix_length=3、bitDepthが10以上15以下であればmax_prefix_length=4として符号化することにより、prefix_lengthがmax_prefix_lengthとなる場合には上記第二の符号を出力せずに済むため、効率よくdeltaQpを符号化することができる。
また、参照画像インデックスであるref_indexを符号化する場合、図27に示すように、当該スライスが取りうる最大の参照画像インデックスであるmax_ref_indexをスライスまたはピクチャのヘッダで符号化すると共に、ref_indexが0であるか否かを示す情報であるrefIndexZeroを符号化し、refIndexZeroが0でない場合には、2n<max_ref_indexを満たす最大のnをmax_prefix_lengthとするprefix_offset=0の上記Max Exponential Golomb符号を用いて、ref_index-1をindexとして符号化することにより、prefix_lengthがmax_prefix_lengthとなる場合には上記第二の符号を出力せずに済むため、効率よくref_indexを符号化することができる。
また、ループフィルタのオフセット値であるsao_offsetを符号化する場合、sao_offsetの取りうる範囲が入力画像のビット精度であるbitDepthにより-2bitDepth-6から2bitDepth-6の範囲で規定されているとすれば、図28に示すように、sao_offsetが0であるか否かを示す情報であるSaoOffsetZeroを符号化し、sao_offsetが0でない場合にはsao_offset正負符号であるsaoOffsetSignを符号化すると共に、sao_offsetの絶対値であるAbsSaoOffsetを用いて、AbsSaoOffset-1をindexとし、prefix_offset=0とする上記Max Exponential Golomb符号を用いて、max_prefix_length=bitDepth-3として符号化することにより、prefix_lengthがmax_prefix_lengthとなる場合には上記第二の符号を出力せずに済むため、効率よくsao_offsetを符号化することができる。
また、動きベクトル差分値であるmvdを符号化する場合、図29に示すように、当該スライスにおける動きベクトルの探索範囲mv_range=2SRのSRの値をスライスまたはピクチャ、あるいはシーケンスのヘッダで符号化すると共に、mvdが0であるか否かを示す情報であるmvdZeroを符号化し、mvdが0でない場合にはmvdの正負符号であるmvdSignを符号化すると共に、mvdの絶対値であるAbsMvdを用いて、AbsMvdが1より大きいか否かを示すAbsMvdGt1を符号化する。AbsMvdが1より大きい場合には、AbsMvd-2をindexとし、prefix_offset=1とする上記Max Exponential Golomb符号を用いて、max_prefix_length=SR+1として符号化することにより、prefix_lengthがmax_prefix_lengthとなる場合には上記第二の符号を出力せずに済むため、効率よくmvdを符号化することができる。
変換係数可変長符号化部51により可変長符号化された圧縮データの符号化データと、符号化パラメータ可変長符号化部52により可変長符号化された符号化パラメータとは多重化されてビットストリームが生成される。
図8は図7の可変長符号化部13における変換係数可変長符号化部51を示す構成図である。
図8において、変換ブロックスキャン部61は変換・量子化部7から出力された圧縮データである変換係数をサブブロックに分割し、各々のサブブロックの変換係数をスキャンして圧縮データ系列を生成するとともに、各々のサブブロックの変換係数が非零であるか否かを示す係数パラメータであるsignificant_coeff_flag及び各々のサブブロックにおける非零係数の有無を示すパラメータであるSigCoeffGroupFlagを出力する処理を実施する。なお、変換ブロックスキャン部61は係数スキャン手段を構成している。
図8において、変換ブロックスキャン部61は変換・量子化部7から出力された圧縮データである変換係数をサブブロックに分割し、各々のサブブロックの変換係数をスキャンして圧縮データ系列を生成するとともに、各々のサブブロックの変換係数が非零であるか否かを示す係数パラメータであるsignificant_coeff_flag及び各々のサブブロックにおける非零係数の有無を示すパラメータであるSigCoeffGroupFlagを出力する処理を実施する。なお、変換ブロックスキャン部61は係数スキャン手段を構成している。
PosLast符号化部62は変換ブロックスキャン部61から出力された係数パラメータであるsignificant_coeff_flagを参照して、その圧縮データ系列の中で、スキャン順(変換ブロックスキャン部61による変換係数のスキャン順)で最も後ろにある非零の変換係数(最後の非零の変換係数)を特定し、その変換係数の位置を示すPosLast(最後位置情報)をサブブロック符号化部66に出力するとともに、そのPosLastを可変長符号化する処理を実施する。なお、PosLast符号化部62は最後位置情報符号化手段を構成している。
係数パラメータ格納用メモリ63は変換ブロックスキャン部61から出力された係数パラメータであるSigCoeffGroupFlagを格納するRAMなどの記録媒体である。
係数パラメータ格納用メモリ63は変換ブロックスキャン部61から出力された係数パラメータであるSigCoeffGroupFlagを格納するRAMなどの記録媒体である。
並列コンテキスト値算出部64は係数パラメータ格納用メモリ63により格納された当該サブブロックの下及び右に隣接するサブブロックの係数パラメータSigCoeffGroupFlagの値に応じて、当該サブブロック内の各周波数成分の位置における係数パラメータsignificant_coeff_flagのコンテキスト値ctxIdxを算出する処理を実施する。
生起確率格納用メモリ65はコンテキスト値ctxIdxに対応する生起確率(算術符号化に用いる生起確率)を格納するRAMなどの記録媒体である。
サブブロック符号化部66は並列コンテキスト値算出部64からスキャン順(変換ブロックスキャン部61による変換係数のスキャン順)でPosLastが示す位置より後ろにある係数パラメータ以外の係数パラメータ(PosLastが示す位置にある係数パラメータと、PosLastが示す位置より前にある係数パラメータ)のコンテキスト値ctxIdxを取得して、生起確率格納用メモリ65から上記コンテキスト値ctxIdxに対応する生起確率を取得し、その生起確率に基づいて上記係数パラメータを算術符号化する処理を実施する。
また、サブブロック符号化部66は、その係数パラメータが非零である旨を示していれば、その係数パラメータに係る変換係数の絶対値及び正負の符号を可変長符号化する処理を実施する。この場合、生起確率格納用メモリ65と異なる生起確率格納用メモリ(変換係数の絶対値等を算術符号化するために、コンテキスト値ctxIdxに対応する生起確率を格納しているメモリ)から、コンテキスト値ctxIdxに対応する生起確率を取得し、その生起確率に基づいて、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術符号化する。
サブブロック符号化部66は並列コンテキスト値算出部64からスキャン順(変換ブロックスキャン部61による変換係数のスキャン順)でPosLastが示す位置より後ろにある係数パラメータ以外の係数パラメータ(PosLastが示す位置にある係数パラメータと、PosLastが示す位置より前にある係数パラメータ)のコンテキスト値ctxIdxを取得して、生起確率格納用メモリ65から上記コンテキスト値ctxIdxに対応する生起確率を取得し、その生起確率に基づいて上記係数パラメータを算術符号化する処理を実施する。
また、サブブロック符号化部66は、その係数パラメータが非零である旨を示していれば、その係数パラメータに係る変換係数の絶対値及び正負の符号を可変長符号化する処理を実施する。この場合、生起確率格納用メモリ65と異なる生起確率格納用メモリ(変換係数の絶対値等を算術符号化するために、コンテキスト値ctxIdxに対応する生起確率を格納しているメモリ)から、コンテキスト値ctxIdxに対応する生起確率を取得し、その生起確率に基づいて、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術符号化する。
ただし、サブブロック符号化部66は、上記のスキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上であれば、最初の非零の変換係数については、正負符号を可変長符号化せずに絶対値だけを可変長符号化し、その位置差が上記閾値より小さければ、最初の非零の変換係数についても、正負符号及び絶対値を可変長符号化する。
なお、サブブロック符号化部66は符号絶対値符号化手段を構成している。
なお、サブブロック符号化部66は符号絶対値符号化手段を構成している。
図9はこの発明の実施の形態1による動画像復号装置を示す構成図である。
図9において、可変長復号部41はイントラ予測処理又は動き補償予測処理が実施される際の処理単位となる符号化ブロックの最大サイズ及び最大サイズの符号化ブロックから階層的に分割されている符号化ブロックの階層数を特定することで、ビットストリームに多重化されている符号化データの中で、最大サイズの符号化ブロック及び階層的に分割されている符号化ブロックに係る符号化データを特定し、各々の符号化データから符号化ブロックに係る圧縮データ、符号化モード、変換ブロック分割フラグを含む予測差分符号化パラメータ、イントラ予測パラメータ/インター予測パラメータ、ブロックの動き量の予測値を示すインデックスである動きベクトル予測インデックスや動き量の予測差分値を示す差分動きベクトル情報及び参照画像のインデックスを示す参照画像インデックスなどの動き情報、ブロック分割情報、ループフィルタのオフセット値やフィルタモードなどを示すフィルタパラメータなどを可変長復号して、その圧縮データ及び予測差分符号化パラメータを逆量子化・逆変換部45に出力するとともに、その符号化モード及びイントラ予測パラメータ/インター予測パラメータを切替スイッチ42に出力する処理を実施する。
図9において、可変長復号部41はイントラ予測処理又は動き補償予測処理が実施される際の処理単位となる符号化ブロックの最大サイズ及び最大サイズの符号化ブロックから階層的に分割されている符号化ブロックの階層数を特定することで、ビットストリームに多重化されている符号化データの中で、最大サイズの符号化ブロック及び階層的に分割されている符号化ブロックに係る符号化データを特定し、各々の符号化データから符号化ブロックに係る圧縮データ、符号化モード、変換ブロック分割フラグを含む予測差分符号化パラメータ、イントラ予測パラメータ/インター予測パラメータ、ブロックの動き量の予測値を示すインデックスである動きベクトル予測インデックスや動き量の予測差分値を示す差分動きベクトル情報及び参照画像のインデックスを示す参照画像インデックスなどの動き情報、ブロック分割情報、ループフィルタのオフセット値やフィルタモードなどを示すフィルタパラメータなどを可変長復号して、その圧縮データ及び予測差分符号化パラメータを逆量子化・逆変換部45に出力するとともに、その符号化モード及びイントラ予測パラメータ/インター予測パラメータを切替スイッチ42に出力する処理を実施する。
ここで、符号化パラメータのうち、最大値や絶対値の最大値が予め決定されている量子化パラメータ(量子化パラメータの予測差分値でもよい)、動きベクトル差分値、参照画像インデックス、ループフィルタのオフセット値などについては、例えば、Exponential Golomb符号に対して、最大値による制限を付与するMax Exponential Golomb符号を適用することにより、符号長をインデックス値に対して対数的な増加に抑制しつつ、符号長をExponential Golomb符号と比べて短くすることができる。
即ち、図24に示すように、最大値prefix長であるmax_prefix_lengthが与えられると、以下のステップにしたがって符号を復号する。
(1)第一の符号である連続する“0”を最大でmax_prefix_length個復号し、その数をprefix_lengthとする。
(2)prefix_lengthがmax_prefix_lengthと等しくない場合には、第二の符号として“1”を復号する。prefix_lengthがmax_prefix_lengthと等しい場合には、第二の符号を復号しない。
(3)prefix_lengthビットの固定長符号を第三の符号として復号し、その値をtempとする。
(4)temp+2n-1-1をindex値として出力する。
なお、図24では、第一の符号として“0”を、第二の符号として“1”を復号するように構成したが、逆に、第一の符号として“1”を、第二の符号として“0”を復号するように構成してもよい。
即ち、図24に示すように、最大値prefix長であるmax_prefix_lengthが与えられると、以下のステップにしたがって符号を復号する。
(1)第一の符号である連続する“0”を最大でmax_prefix_length個復号し、その数をprefix_lengthとする。
(2)prefix_lengthがmax_prefix_lengthと等しくない場合には、第二の符号として“1”を復号する。prefix_lengthがmax_prefix_lengthと等しい場合には、第二の符号を復号しない。
(3)prefix_lengthビットの固定長符号を第三の符号として復号し、その値をtempとする。
(4)temp+2n-1-1をindex値として出力する。
なお、図24では、第一の符号として“0”を、第二の符号として“1”を復号するように構成したが、逆に、第一の符号として“1”を、第二の符号として“0”を復号するように構成してもよい。
当然ビットストリームを算術復号して得られる二値シンボル系列に対して、上記処理を行うよう構成してもよい。このように構成することにより、符号長をインデックス値に対して対数的な増加に抑制しつつ、Exponential Golomb符号と比べて符号長が短いMax Exponential Golomb符号を復号することができる。
当然、Exponential Golomb符号と同様に、図25に示すように第三の符号として予め設定されたオフセット値prefix_offsetをprefix_lengthに加算した(prefix_offset+prefix_length)の長さの固定長符号として復号するよう構成してもよい。この場合、以下のように動作する。
当然、Exponential Golomb符号と同様に、図25に示すように第三の符号として予め設定されたオフセット値prefix_offsetをprefix_lengthに加算した(prefix_offset+prefix_length)の長さの固定長符号として復号するよう構成してもよい。この場合、以下のように動作する。
(1)第一の符号である連続する“1”を最大でmax_prefix_length個復号し、その数をprefix_lengthとする。prefix_lengthがmax_prefix_lengthと等しい場合には、第二の符号を復号しない。
(2)prefix_offset+prefix_lengthビットの固定長符号を第三の符号として復号し、その値をtempとする。
具体的には、例えば量子化パラメータの予測値との差分値であるdeltaQpを復号する場合、deltaQpの取りうる範囲が入力画像のビット精度であるbitDepthにより、-26-6×(bitDepth-8)から25+6×(bitDepth-8)の範囲で規定されているとすれば、図26に示すように、deltaQpが0であるか否かを示す情報であるdeltaQpZeroを復号し、deltaQpが0でないことを示す場合にはdeltaQpの正負符号であるdeltaQpSignを復号すると共に、prefix_offset=0とする上記Max Exponential Golomb符号を用いて、bitDepthが9以下の場合にはmax_prefix_length=3、bitDepthが10以上15以下であればmax_prefix_length=4として復号されたindex値から、deltaQpの絶対値であるAbsDeltaQp=index+1として復号する。delta_Qp_ZeroがdeltaQpが0であることを示す場合には、delta_qp=0が得られ、それ以外の場合にはAbsDeltaQpとdeltaQpSignを用いてdelta_qpが得られる。これにより、prefix_lengthがmax_prefix_lengthとなる場合には上記第二の符号を復号せずに済むため、効率よく符号化されたdelta_qpを好適に復号することができる。
(2)prefix_offset+prefix_lengthビットの固定長符号を第三の符号として復号し、その値をtempとする。
具体的には、例えば量子化パラメータの予測値との差分値であるdeltaQpを復号する場合、deltaQpの取りうる範囲が入力画像のビット精度であるbitDepthにより、-26-6×(bitDepth-8)から25+6×(bitDepth-8)の範囲で規定されているとすれば、図26に示すように、deltaQpが0であるか否かを示す情報であるdeltaQpZeroを復号し、deltaQpが0でないことを示す場合にはdeltaQpの正負符号であるdeltaQpSignを復号すると共に、prefix_offset=0とする上記Max Exponential Golomb符号を用いて、bitDepthが9以下の場合にはmax_prefix_length=3、bitDepthが10以上15以下であればmax_prefix_length=4として復号されたindex値から、deltaQpの絶対値であるAbsDeltaQp=index+1として復号する。delta_Qp_ZeroがdeltaQpが0であることを示す場合には、delta_qp=0が得られ、それ以外の場合にはAbsDeltaQpとdeltaQpSignを用いてdelta_qpが得られる。これにより、prefix_lengthがmax_prefix_lengthとなる場合には上記第二の符号を復号せずに済むため、効率よく符号化されたdelta_qpを好適に復号することができる。
また、参照画像インデックスであるref_indexを復号する場合、図27に示すように、スライスまたはピクチャのヘッダに多重化された当該スライスが取りうる最大の参照画像インデックスであるmax_ref_indexを復号すると共に、ref_indexが0であるか否かを示す情報であるrefIndexZeroを復号し、refIndexZeroが0でない場合には、2n<max_ref_indexを満たす最大のnをmax_prefix_lengthとするprefix_offset=0の上記Max Exponential Golomb符号を用いて復号されたindex値から、ref_index=index+1として復号することにより、prefix_lengthがmax_prefix_lengthとなる場合には上記第二の符号を復号せずに済むため、効率よく符号化されたref_indexを好適に復号することができる。
また、ループフィルタのオフセット値であるsao_offsetを復号する場合、sao_offsetの取りうる範囲が入力画像のビット精度であるbitDepthにより、-2bitDepth-6から2bitDepth-6の範囲で規定されているとすれば、図28に示すように、sao_offsetが0であるか否かを示す情報であるSaoOffsetZeroを復号し、sao_offsetが0でない場合にはsao_offset正負符号であるsaoOffsetSignを復号すると共に、prefix_offset=0とする上記Max Exponential Golomb符号を用いて、max_prefix_length=bitDepth-3として復号することにより得られるindex値から、sao_offsetの絶対値であるAbsSaoOffsetをAbsSaoOffset=index+1として復号することにより、prefix_lengthがmax_prefix_lengthとなる場合には上記第二の符号を復号せずに済むため、効率よく符号化されたsao_offsetを好適に復号することができる。
また、動きベクトル差分値であるmvdを復号する場合、図29に示すように、スライスまたはピクチャ、あるいはシーケンスのヘッダに多重化された当該スライスにおける動きベクトルの探索範囲を表す情報であるSRを復号すると共に、mvdが0であるか否かを示す情報であるmvdZeroを復号し、mvdが0でない場合にはmvdの正負符号であるmvdSignを復号すると共に、mvdの絶対値であるAbsMvdが1より大きいか否かを示すAbsMvdGt1を復号する。AbsMvdGt1がAbsMvdの絶対値が1より大きいことを示している場合には、prefix_offset=1とする上記Max Exponential Golomb符号を用いて、max_prefix_length=SR+1として復号することにより得られるindex値から、AbsMvd=index+2として復号することにより、prefix_lengthがmax_prefix_lengthとなる場合には上記第二の符号を復号せずに済むため、効率よく符号化されたmvdを好適に復号することができる。
なお、可変長復号部41は可変長復号手段を構成している。
なお、可変長復号部41は可変長復号手段を構成している。
切替スイッチ42は可変長復号部41から出力された符号化ブロックに係る符号化モードがイントラ符号化モードである場合、可変長復号部41から出力されたイントラ予測パラメータをイントラ予測部43に出力し、その符号化モードがインター符号化モードである場合、可変長復号部41から出力されたインター予測パラメータを動き補償部44に出力する処理を実施する。
イントラ予測部43はイントラ予測用メモリ47により格納されている符号化ブロックに隣接している復号済みの画素を用いて、切替スイッチ42から出力されたイントラ予測パラメータに基づいて、符号化ブロックに対するフレーム内予測処理を実施することで予測画像を生成する処理を実施する。
イントラ予測部43はイントラ予測用メモリ47により格納されている符号化ブロックに隣接している復号済みの画素を用いて、切替スイッチ42から出力されたイントラ予測パラメータに基づいて、符号化ブロックに対するフレーム内予測処理を実施することで予測画像を生成する処理を実施する。
動き補償部44は動き補償予測フレームメモリ49により格納されている1フレーム以上の参照画像を用いて、切替スイッチ42から出力されたインター予測パラメータに基づいて、符号化ブロックに対する動き補償予測処理を実施することで予測画像を生成する処理を実施する。
逆量子化・逆変換部45は可変長復号部41から出力された予測差分符号化パラメータに含まれている量子化パラメータを用いて、可変長復号部41から出力された符号化ブロックに係る圧縮データを逆量子化し、その予測差分符号化パラメータに含まれている変換ブロック分割フラグから特定される変換ブロックサイズ単位で、逆量子化の圧縮データの逆変換処理(例えば、逆DCT(逆離散コサイン変換)や逆DST(逆離散サイン変換)、逆KL変換等の逆変換処理)を実施することで、逆変換処理後の圧縮データを復号予測差分信号(圧縮前の差分画像を示す信号)として出力する処理を実施する。
即ち、逆量子化・逆変換部45は可変長復号部41から出力された予測差分符号化パラメータに含まれている変換ブロック分割フラグに基づいて階層的に分割された画像信号の変換ブロック形状を特定し、変換ブロック単位で逆量子化処理・逆変換処理を行う。
即ち、逆量子化・逆変換部45は可変長復号部41から出力された予測差分符号化パラメータに含まれている変換ブロック分割フラグに基づいて階層的に分割された画像信号の変換ブロック形状を特定し、変換ブロック単位で逆量子化処理・逆変換処理を行う。
加算部46は逆量子化・逆変換部45から出力された復号予測差分信号とイントラ予測部43又は動き補償部44により生成された予測画像を示す予測信号を加算することで、復号画像を示す復号画像信号を生成する処理を実施する。
イントラ予測用メモリ47はイントラ予測部43により次回のイントラ予測処理で用いられる画像として、加算部46により生成された復号画像信号が示す復号画像を格納するRAMなどの記録媒体である。
ループフィルタ部48は加算部46により生成された復号画像信号に含まれている符号化歪みを補償するために、可変長復号部41から出力されたオフセット値を復号画像信号に加算したり、可変長復号部41から出力されたフィルタモードに基づきフィルタリングを施すなどの処理を実施し、符号化歪み補償後の復号画像信号が示す復号画像を参照画像として動き補償予測フレームメモリ49に出力するとともに、その復号画像を再生画像として外部に出力する処理を実施する。
動き補償予測フレームメモリ49は動き補償部44により次回の動き補償予測処理で用いられる参照画像として、ループフィルタ部48によるフィルタリング処理後の復号画像を格納するRAMなどの記録媒体である。
イントラ予測用メモリ47はイントラ予測部43により次回のイントラ予測処理で用いられる画像として、加算部46により生成された復号画像信号が示す復号画像を格納するRAMなどの記録媒体である。
ループフィルタ部48は加算部46により生成された復号画像信号に含まれている符号化歪みを補償するために、可変長復号部41から出力されたオフセット値を復号画像信号に加算したり、可変長復号部41から出力されたフィルタモードに基づきフィルタリングを施すなどの処理を実施し、符号化歪み補償後の復号画像信号が示す復号画像を参照画像として動き補償予測フレームメモリ49に出力するとともに、その復号画像を再生画像として外部に出力する処理を実施する。
動き補償予測フレームメモリ49は動き補償部44により次回の動き補償予測処理で用いられる参照画像として、ループフィルタ部48によるフィルタリング処理後の復号画像を格納するRAMなどの記録媒体である。
図9では、動画像復号装置の構成要素である可変長復号部41、切替スイッチ42、イントラ予測部43、動き補償部44、逆量子化・逆変換部45、加算部46及びループフィルタ部48のそれぞれが専用のハードウェア(例えば、CPUを実装している半導体集積回路、あるいは、ワンチップマイコンなど)で構成されているものを想定しているが、動画像復号装置がコンピュータなどで構成される場合、可変長復号部41、切替スイッチ42、イントラ予測部43、動き補償部44、逆量子化・逆変換部45、加算部46及びループフィルタ部48の処理内容を記述しているプログラムの全部又は一部を当該コンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにしてもよい。
図10はこの発明の実施の形態1による動画像復号装置の処理内容を示すフローチャートである。
図10はこの発明の実施の形態1による動画像復号装置の処理内容を示すフローチャートである。
図11はこの発明の実施の形態1による動画像復号装置の可変長復号部41を示す構成図である。
図11において、変換係数可変長復号部71はビットストリームに多重化された符号化データから圧縮データである変換係数を可変長復号する処理を実施する。
符号化パラメータ可変長復号部72はビットストリームに多重化された符号化データから符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ/インター予測パラメータ、動き情報、ブロック分割情報などの符号化パラメータを可変長復号する処理を実施する。
図11において、変換係数可変長復号部71はビットストリームに多重化された符号化データから圧縮データである変換係数を可変長復号する処理を実施する。
符号化パラメータ可変長復号部72はビットストリームに多重化された符号化データから符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ/インター予測パラメータ、動き情報、ブロック分割情報などの符号化パラメータを可変長復号する処理を実施する。
図12は図11の可変長復号部41における変換係数可変長復号部71を示す構成図である。
図12において、PosLast復号部81はビットストリームに多重化された符号化データからPosLast(最後位置情報)を可変長復号する処理を実施する。なお、PosLast復号部81は最後位置情報復号手段を構成している。
係数パラメータ格納用メモリ82はサブブロック復号部により可変長復号された係数パラメータである各々のサブブロックにおける非零係数の有無を示すSigCoeffGroupFlagを格納するRAMなどの記録媒体である。
図12において、PosLast復号部81はビットストリームに多重化された符号化データからPosLast(最後位置情報)を可変長復号する処理を実施する。なお、PosLast復号部81は最後位置情報復号手段を構成している。
係数パラメータ格納用メモリ82はサブブロック復号部により可変長復号された係数パラメータである各々のサブブロックにおける非零係数の有無を示すSigCoeffGroupFlagを格納するRAMなどの記録媒体である。
並列コンテキスト値算出部83は係数パラメータ格納用メモリ82により格納された当該サブブロックの下および右に隣接するサブブロックの係数パラメータSigCoeffGroupFlagの値に応じて、当該サブブロック内の各周波数成分の位置における係数パラメータsignificant_coeff_flagのコンテキスト値ctxIdxを算出する処理を実施する。
生起確率格納用メモリ84はコンテキスト値ctxIdxに対応する生起確率(算術復号に用いる生起確率)を格納するRAMなどの記録媒体である。
生起確率格納用メモリ84はコンテキスト値ctxIdxに対応する生起確率(算術復号に用いる生起確率)を格納するRAMなどの記録媒体である。
サブブロック復号部85は並列コンテキスト値算出部83からPosLastが示す位置より後ろにある係数パラメータ以外の係数パラメータ(PosLastが示す位置にある係数パラメータと、PosLastが示す位置より前にある係数パラメータ)のコンテキスト値ctxIdxを取得して、生起確率格納用メモリ84から上記コンテキスト値ctxIdxに対応する生起確率を取得し、その生起確率に基づいてビットストリームに多重化された符号化データから係数パラメータを算術復号する処理を実施する。
また、サブブロック復号部85は、その係数パラメータが非零である旨を示していれば、ビットストリームに多重化された符号化データから、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術復号する処理を実施する。この場合、生起確率格納用メモリ84と異なる生起確率格納用メモリ(変換係数の絶対値等を算術復号するために、コンテキスト値ctxIdxに対応する生起確率を格納しているメモリ)から、コンテキスト値ctxIdxに対応する生起確率を取得し、その生起確率に基づいて、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術復号する。
また、サブブロック復号部85は、その係数パラメータが非零である旨を示していれば、ビットストリームに多重化された符号化データから、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術復号する処理を実施する。この場合、生起確率格納用メモリ84と異なる生起確率格納用メモリ(変換係数の絶対値等を算術復号するために、コンテキスト値ctxIdxに対応する生起確率を格納しているメモリ)から、コンテキスト値ctxIdxに対応する生起確率を取得し、その生起確率に基づいて、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術復号する。
ただし、サブブロック復号部85は、スキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上である場合、最初の非零の変換係数の正負符号を復号せずに絶対値だけを可変長復号し、最後の非零の変換係数の位置がスキャン順で偶数位置であれば、最初の非零の変換係数の正負符号を正とし、最後の非零の変換係数の位置がスキャン順で奇数位置であれば、最初の非零の変換係数の正負符号を負とする。
なお、サブブロック復号部85は符号絶対値復号手段を構成している。
変換係数逆スキャン部86はサブブロック復号部85により算術復号された係数パラメータ、絶対値及び正負の符号からなる変換係数を逆スキャンして圧縮データを生成する処理を実施する。
なお、サブブロック復号部85は符号絶対値復号手段を構成している。
変換係数逆スキャン部86はサブブロック復号部85により算術復号された係数パラメータ、絶対値及び正負の符号からなる変換係数を逆スキャンして圧縮データを生成する処理を実施する。
この実施の形態1の動画像符号化装置は、映像信号の空間・時間方向の局所的な変化に適応して、映像信号を多様なサイズの領域に分割してフレーム内・フレーム間適応符号化を行う。
一般に映像信号は、空間・時間的に信号の複雑さが局所的に変化する特性を有し、空間的に見ると、ある特定の映像フレーム上では、例えば、空や壁などのように、比較的広い画像領域中で均一な信号特性を有する絵柄もあれば、人物や細かいテクスチャを含む絵画などでは、小さい画像領域内で複雑なテクスチャパターンを有する絵柄も混在することがある。
一般に映像信号は、空間・時間的に信号の複雑さが局所的に変化する特性を有し、空間的に見ると、ある特定の映像フレーム上では、例えば、空や壁などのように、比較的広い画像領域中で均一な信号特性を有する絵柄もあれば、人物や細かいテクスチャを含む絵画などでは、小さい画像領域内で複雑なテクスチャパターンを有する絵柄も混在することがある。
時間的に見ても、空や壁は局所的に時間方向の絵柄の変化が小さいが、動く人物や物体は、その輪郭が時間的に剛体・非剛体の運動をするため、時間的な変化が大きい。
符号化処理は、時間・空間的な予測によって、信号電力やエントロピーが小さい予測差分信号を生成して、全体の符号量を削減する処理を行うが、予測処理に用いる予測パラメータをできるだけ大きな画像信号領域に対して均一に適用することができれば、予測パラメータの符号量を小さくすることができる。
一方、時間的・空間的に変化が大きい画像信号パターンに対して、同一の予測パラメータを大きな画像領域に適用すると、予測誤りが増えてしまうため、予測差分信号の符号量を削減することができない。
したがって、時間的・空間的に変化が大きい領域では、予測対象の領域を小さくして、予測処理に用いる予測パラメータのデータ量を増やしても、予測差分信号の電力・エントロピーを低減する方が望ましい。
このような映像信号の一般的な性質に適応している符号化処理を行うため、この実施の形態1の動画像符号化装置では、所定の最大ブロックサイズから映像信号の領域を階層的に分割し、分割領域毎に予測処理や予測差分の符号化処理を適応化する構成を採用している。
符号化処理は、時間・空間的な予測によって、信号電力やエントロピーが小さい予測差分信号を生成して、全体の符号量を削減する処理を行うが、予測処理に用いる予測パラメータをできるだけ大きな画像信号領域に対して均一に適用することができれば、予測パラメータの符号量を小さくすることができる。
一方、時間的・空間的に変化が大きい画像信号パターンに対して、同一の予測パラメータを大きな画像領域に適用すると、予測誤りが増えてしまうため、予測差分信号の符号量を削減することができない。
したがって、時間的・空間的に変化が大きい領域では、予測対象の領域を小さくして、予測処理に用いる予測パラメータのデータ量を増やしても、予測差分信号の電力・エントロピーを低減する方が望ましい。
このような映像信号の一般的な性質に適応している符号化処理を行うため、この実施の形態1の動画像符号化装置では、所定の最大ブロックサイズから映像信号の領域を階層的に分割し、分割領域毎に予測処理や予測差分の符号化処理を適応化する構成を採用している。
次に動作について説明する。
最初に、図1の動画像符号化装置の処理内容を説明する。
まず、符号化制御部1は、イントラ予測処理(フレーム内予測処理)又は動き補償予測処理(フレーム間予測処理)が実施される際の処理単位となる符号化ブロックの最大サイズを決定するとともに、最大サイズの符号化ブロックが階層的に分割される際の上限の階層数を決定する(図2のステップST1)。
最初に、図1の動画像符号化装置の処理内容を説明する。
まず、符号化制御部1は、イントラ予測処理(フレーム内予測処理)又は動き補償予測処理(フレーム間予測処理)が実施される際の処理単位となる符号化ブロックの最大サイズを決定するとともに、最大サイズの符号化ブロックが階層的に分割される際の上限の階層数を決定する(図2のステップST1)。
符号化ブロックの最大サイズの決め方として、例えば、全てのピクチャに対して、入力画像の解像度に応じたサイズに決定する方法が考えられる。
また、入力画像の局所的な動きの複雑さの違いをパラメータとして定量化しておき、動きの激しいピクチャでは最大サイズを小さな値に決定し、動きが少ないピクチャでは最大サイズを大きな値に決定する方法などが考えられる。
上限の階層数については、例えば、入力画像の動きが激しい程、階層数を深くして、より細かい動きが検出できるように設定し、入力画像の動きが少なければ、階層数を抑えるように設定する方法が考えられる。
また、入力画像の局所的な動きの複雑さの違いをパラメータとして定量化しておき、動きの激しいピクチャでは最大サイズを小さな値に決定し、動きが少ないピクチャでは最大サイズを大きな値に決定する方法などが考えられる。
上限の階層数については、例えば、入力画像の動きが激しい程、階層数を深くして、より細かい動きが検出できるように設定し、入力画像の動きが少なければ、階層数を抑えるように設定する方法が考えられる。
また、符号化制御部1は、利用可能な1以上の符号化モード(M種類のイントラ符号化モード、N種類のインター符号化モード)の中から、階層的に分割される各々の符号化ブロックに対応する符号化モードを選択する(ステップST2)。予め用意されているM種類のイントラ符号化モードについては後述する。
ただし、後述するブロック分割部2により階層的に分割された各々の符号化ブロックが更にパーティション単位に分割される場合は、各々のパーティションに対応する符号化モードを選択することが可能である。
以下、この実施の形態1では、各々の符号化ブロックが更にパーティション単位に分割されるものとして説明する。
符号化制御部1による符号化モードの選択方法は、公知の技術であるため詳細な説明を省略するが、例えば、利用可能な任意の符号化モードを用いて、符号化ブロックに対する符号化処理を実施して符号化効率を検証し、利用可能な複数の符号化モードの中で、最も符号化効率がよい符号化モードを選択する方法などがある。
ただし、後述するブロック分割部2により階層的に分割された各々の符号化ブロックが更にパーティション単位に分割される場合は、各々のパーティションに対応する符号化モードを選択することが可能である。
以下、この実施の形態1では、各々の符号化ブロックが更にパーティション単位に分割されるものとして説明する。
符号化制御部1による符号化モードの選択方法は、公知の技術であるため詳細な説明を省略するが、例えば、利用可能な任意の符号化モードを用いて、符号化ブロックに対する符号化処理を実施して符号化効率を検証し、利用可能な複数の符号化モードの中で、最も符号化効率がよい符号化モードを選択する方法などがある。
また、符号化制御部1は、各々の符号化ブロックに含まれているパーティション毎に、差分画像が圧縮される際に用いられる量子化パラメータ及び変換ブロックサイズを決定するとともに、予測処理が実施される際に用いられるイントラ予測パラメータ又はインター予測パラメータを決定する。
符号化制御部1は、量子化パラメータ及び変換ブロックサイズを含む予測差分符号化パラメータを変換・量子化部7、逆量子化・逆変換部8及び可変長符号化部13に出力する。また、予測差分符号化パラメータを必要に応じてイントラ予測部4に出力する。
符号化制御部1は、量子化パラメータ及び変換ブロックサイズを含む予測差分符号化パラメータを変換・量子化部7、逆量子化・逆変換部8及び可変長符号化部13に出力する。また、予測差分符号化パラメータを必要に応じてイントラ予測部4に出力する。
ブロック分割部2は、入力画像を示す映像信号を入力すると、その入力画像を符号化制御部1により決定された最大サイズの符号化ブロックに分割するとともに、符号化制御部1により決定された上限の階層数に至るまで、その符号化ブロックを階層的に分割する。また、その符号化ブロックをパーティション単位に分割する(ステップST3)。
ここで、図13は最大サイズの符号化ブロックが階層的に複数の符号化ブロックに分割される様子を示す説明図である。
図13の例では、最大サイズの符号化ブロックは、第0階層の符号化ブロックB0であり、輝度成分で(L0,M0)のサイズを有している。
また、図13の例では、最大サイズの符号化ブロックB0を出発点として、4分木構造で、別途定める所定の深さまで階層的に分割を行うことによって、符号化ブロックBnを得ている。
ここで、図13は最大サイズの符号化ブロックが階層的に複数の符号化ブロックに分割される様子を示す説明図である。
図13の例では、最大サイズの符号化ブロックは、第0階層の符号化ブロックB0であり、輝度成分で(L0,M0)のサイズを有している。
また、図13の例では、最大サイズの符号化ブロックB0を出発点として、4分木構造で、別途定める所定の深さまで階層的に分割を行うことによって、符号化ブロックBnを得ている。
深さnにおいては、符号化ブロックBnはサイズ(Ln,Mn)の画像領域である。
ただし、LnとMnは同じであってもよいし異なっていてもよいが、図13の例ではLn=Mnのケースを示している。
以降、符号化ブロックBnのサイズは、符号化ブロックBnの輝度成分におけるサイズ(Ln,Mn)と定義する。
ただし、LnとMnは同じであってもよいし異なっていてもよいが、図13の例ではLn=Mnのケースを示している。
以降、符号化ブロックBnのサイズは、符号化ブロックBnの輝度成分におけるサイズ(Ln,Mn)と定義する。
ブロック分割部2では、4分木分割を行うため、常に(Ln+1,Mn+1)=(Ln/2,Mn/2)が成立する。
ただし、RGB信号などのように、全ての色成分が同一サンプル数を有するカラー映像信号(4:4:4フォーマット)では、全ての色成分のサイズが(Ln,Mn)になるが、4:2:0フォーマットを扱う場合、対応する色差成分の符号化ブロックのサイズは(Ln/2,Mn/2)である。
以降、第n階層の符号化ブロックBnで選択しうる符号化モードをm(Bn)と表記する。
ただし、RGB信号などのように、全ての色成分が同一サンプル数を有するカラー映像信号(4:4:4フォーマット)では、全ての色成分のサイズが(Ln,Mn)になるが、4:2:0フォーマットを扱う場合、対応する色差成分の符号化ブロックのサイズは(Ln/2,Mn/2)である。
以降、第n階層の符号化ブロックBnで選択しうる符号化モードをm(Bn)と表記する。
複数の色成分からなるカラー映像信号の場合、符号化モードm(Bn)は、色成分ごとに、それぞれ個別のモードを用いるように構成されてもよいが、以降、特に断らない限り、YUV信号、4:2:0フォーマットの符号化ブロックの輝度成分に対する符号化モードのことを指すものとして説明を行う。
符号化モードm(Bn)には、1つないし複数のイントラ符号化モード(総称して「INTRA」)、1つないし複数のインター符号化モード(総称して「INTER」)があり、符号化制御部1は、上述したように、当該ピクチャで利用可能な全ての符号化モードないしは、そのサブセットの中から、符号化ブロックBnに対して最も符号化効率がよい符号化モードを選択する。
符号化モードm(Bn)には、1つないし複数のイントラ符号化モード(総称して「INTRA」)、1つないし複数のインター符号化モード(総称して「INTER」)があり、符号化制御部1は、上述したように、当該ピクチャで利用可能な全ての符号化モードないしは、そのサブセットの中から、符号化ブロックBnに対して最も符号化効率がよい符号化モードを選択する。
符号化ブロックBnは、図13に示すように、更に1つないし複数の予測処理単位(パーティション)に分割される。
以降、符号化ブロックBnに属するパーティションをPi n(i: 第n階層におけるパーティション番号)と表記する。図14は符号化ブロックBnに属するパーティションPi nを示す説明図である。
符号化ブロックBnに属するパーティションPi nの分割がどのようになされているかは符号化モードm(Bn)の中に情報として含まれる。
パーティションPi nは、すべて符号化モードm(Bn)に従って予測処理が行われるが、パーティションPi n毎に、個別の予測パラメータを選択することができる。
以降、符号化ブロックBnに属するパーティションをPi n(i: 第n階層におけるパーティション番号)と表記する。図14は符号化ブロックBnに属するパーティションPi nを示す説明図である。
符号化ブロックBnに属するパーティションPi nの分割がどのようになされているかは符号化モードm(Bn)の中に情報として含まれる。
パーティションPi nは、すべて符号化モードm(Bn)に従って予測処理が行われるが、パーティションPi n毎に、個別の予測パラメータを選択することができる。
符号化制御部1は、最大サイズの符号化ブロックに対して、例えば、図15に示すようなブロック分割状態を生成して、符号化ブロックBnを特定する。
図15(a)の斜線部分は分割後のパーティションの分布を示し、また、図15(b)は階層分割後のパーティションに符号化モードm(Bn)が割り当てられる状況を4分木グラフで示している。
図15(b)において、□で囲まれているノードが、符号化モードm(Bn)が割り当てられたノード(符号化ブロックBn)を示している。
また、符号化制御部1は、分割後のパーティションに対して、前述の通りに、変換ブロックの分割形状を決定する。
図15(a)の斜線部分は分割後のパーティションの分布を示し、また、図15(b)は階層分割後のパーティションに符号化モードm(Bn)が割り当てられる状況を4分木グラフで示している。
図15(b)において、□で囲まれているノードが、符号化モードm(Bn)が割り当てられたノード(符号化ブロックBn)を示している。
また、符号化制御部1は、分割後のパーティションに対して、前述の通りに、変換ブロックの分割形状を決定する。
切替スイッチ3は、符号化制御部1がイントラ符号化モードを選択すると(m(Bn)∈INTRA)、ブロック分割部2により分割された符号化ブロックBnに属するパーティションPi nをイントラ予測部4に出力し、符号化制御部1がインター符号化モードを選択すると(m(Bn)∈INTER)、その符号化ブロックBnに属するパーティションPi nを動き補償予測部5に出力する。
イントラ予測部4は、切替スイッチ3から符号化ブロックBnに属するパーティションPi nを受けると(ステップST4)、具体的な処理内容は後述するが、符号化制御部1により決定されたイントラ予測パラメータに基づいて、各パーティションPi nに対するイントラ予測処理を実施することにより、イントラ予測画像(Pi n)を生成する(ステップST5)。
以下、この明細書では、Pi nはパーティションを示し、(Pi n)はパーティションPi nの予測画像を示すものとする。
以下、この明細書では、Pi nはパーティションを示し、(Pi n)はパーティションPi nの予測画像を示すものとする。
イントラ予測画像(Pi n)の生成に用いられるイントラ予測パラメータは、動画像復号装置側でも、全く同じイントラ予測画像(Pi n)を生成する必要があるため、可変長符号化部13によってビットストリームに多重化される。
なお、イントラ予測パラメータとして選択できるイントラ予測方向数は、処理対象となるブロックのサイズに応じて異なるように構成してもよい。
大きいサイズのパーティションでは、イントラ予測の効率が低下するため、選択できるイントラ予測方向数を少なくし、小さいサイズのパーティションでは、選択できるイントラ予測方向数を多くするように構成することができる。
例えば、4×4画素パーティションや8×8画素パーティションでは34方向、16×16画素パーティションでは17方向、32×32画素パーティションでは9方向などのように構成してもよい。
なお、イントラ予測パラメータとして選択できるイントラ予測方向数は、処理対象となるブロックのサイズに応じて異なるように構成してもよい。
大きいサイズのパーティションでは、イントラ予測の効率が低下するため、選択できるイントラ予測方向数を少なくし、小さいサイズのパーティションでは、選択できるイントラ予測方向数を多くするように構成することができる。
例えば、4×4画素パーティションや8×8画素パーティションでは34方向、16×16画素パーティションでは17方向、32×32画素パーティションでは9方向などのように構成してもよい。
動き補償予測部5は、切替スイッチ3から符号化ブロックBnに属するパーティションPi nを受けると(ステップST4)、符号化制御部1により決定されたインター予測パラメータに基づいて、各パーティションPi nに対するインター予測処理を実施することにより、インター予測画像(Pi n)を生成する(ステップST6)。
即ち、動き補償予測部5は、動き補償予測フレームメモリ12により格納されている1フレーム以上の参照画像を用いて、符号化制御部1から出力されたインター予測パラメータに基づいて、その符号化ブロックに対する動き補償予測処理を実施することで、インター予測画像(Pi n)を生成する。
インター予測画像(Pi n)の生成に用いられるインター予測パラメータは、動画像復号装置側でも、全く同じインター予測画像(Pi n)を生成する必要があるため、可変長符号化部13によってビットストリームに多重化される。
即ち、動き補償予測部5は、動き補償予測フレームメモリ12により格納されている1フレーム以上の参照画像を用いて、符号化制御部1から出力されたインター予測パラメータに基づいて、その符号化ブロックに対する動き補償予測処理を実施することで、インター予測画像(Pi n)を生成する。
インター予測画像(Pi n)の生成に用いられるインター予測パラメータは、動画像復号装置側でも、全く同じインター予測画像(Pi n)を生成する必要があるため、可変長符号化部13によってビットストリームに多重化される。
減算部6は、イントラ予測部4又は動き補償予測部5から予測画像(Pi n)を受けると、ブロック分割部2により分割された符号化ブロックBnに属するパーティションPi nから、その予測画像(Pi n)を減算することで、その差分画像を示す予測差分信号ei nを生成する(ステップST7)。
変換・量子化部7は、減算部6が予測差分信号ei nを生成すると、符号化制御部1で決定された変換ブロックサイズ単位で、その予測差分信号ei nに対する変換処理(例えば、DCT(離散コサイン変換)やDST(離散サイン変換)、予め特定の学習系列に対して基底設計がなされているKL変換等の直交変換処理)を実施するとともに、その予測差分符号化パラメータに含まれている量子化パラメータを用いて、その予測差分信号ei nの変換係数を量子化することで、量子化後の変換係数である差分画像の圧縮データを逆量子化・逆変換部8及び可変長符号化部13に出力する(ステップST8)。
即ち、変換・量子化部7は、減算部6が予測差分信号ei nを生成すると、予測差分信号ei nに対する変換・量子化処理を実施する場合、ブロック分割部2により分割された符号化ブロックをさらに階層的に分割して、分割後のブロック単位で輝度信号の変換・量子化処理を実施する。
即ち、変換・量子化部7は、減算部6が予測差分信号ei nを生成すると、予測差分信号ei nに対する変換・量子化処理を実施する場合、ブロック分割部2により分割された符号化ブロックをさらに階層的に分割して、分割後のブロック単位で輝度信号の変換・量子化処理を実施する。
逆量子化・逆変換部8は、変換・量子化部7から圧縮データを受けると、符号化制御部1から出力された予測差分符号化パラメータに含まれている量子化パラメータを用いて、その圧縮データを逆量子化し、その予測差分符号化パラメータに含まれている変換ブロック分割フラグから特定される変換ブロックサイズ単位で、逆量子化の圧縮データの逆変換処理(例えば、逆DCT(逆離散コサイン変換)や逆DST(離散サイン変換)、逆KL変換等の逆変換処理)を実施することで、逆変換処理後の圧縮データを局所復号予測差分信号として加算部9に出力する(ステップST9)。
加算部9は、逆量子化・逆変換部8から局所復号予測差分信号を受けると、その局所復号予測差分信号と、イントラ予測部4又は動き補償予測部5により生成された予測画像(Pi n)を示す予測信号とを加算することで、局所復号パーティション画像ないしはその集まりとしての局所復号符号化ブロック画像(以下、「局所復号画像」と称する)を示す局所復号画像信号を生成し、その局所復号画像信号をループフィルタ部11に出力する(ステップST10)。
また、イントラ予測用メモリ10には、イントラ予測に用いるために、当該局所復号画像が格納される。
また、イントラ予測用メモリ10には、イントラ予測に用いるために、当該局所復号画像が格納される。
ループフィルタ部11は、加算部9から局所復号画像信号を受けると、その局所復号画像信号に含まれている符号化歪みを補償し、符号化歪み補償後の局所復号画像信号が示す局所復号画像を参照画像として動き補償予測フレームメモリ12に格納する(ステップST11)。
ここで、符号化歪は変換ブロック境界に沿って発生するため、変換ブロック境界に対して符号化歪の補償を行う。小さい変換ブロックについては、変換ブロック境界の符号化歪が目立ちにくいので、ヘッダで最小ループフィルタ適用ブロックサイズをシグナリングし、変換ブロックサイズが最小ループフィルタ適用ブロックサイズより大きいブロックに対してのみ符号化歪補償を適用するよう構成してもよい。
このようにすれば、不要な符号化歪補償を省略できるので、画質を保ちつつ演算量を削減することができる。また、輝度信号と色差信号では、変換ブロックの分割形状が異なるので、符号化歪補償は輝度信号と色差信号でそれぞれ変換ブロックの分割形状を特定して処理するよう構成する。
なお、ループフィルタ部11によるフィルタリング処理は、入力される局所復号画像信号の最大符号化ブロックあるいは個々の符号化ブロック単位で行ってもよいし、1画面分のマクロブロックに相当する局所復号画像信号が入力された後に1画面分まとめて行ってもよい。
ここで、符号化歪は変換ブロック境界に沿って発生するため、変換ブロック境界に対して符号化歪の補償を行う。小さい変換ブロックについては、変換ブロック境界の符号化歪が目立ちにくいので、ヘッダで最小ループフィルタ適用ブロックサイズをシグナリングし、変換ブロックサイズが最小ループフィルタ適用ブロックサイズより大きいブロックに対してのみ符号化歪補償を適用するよう構成してもよい。
このようにすれば、不要な符号化歪補償を省略できるので、画質を保ちつつ演算量を削減することができる。また、輝度信号と色差信号では、変換ブロックの分割形状が異なるので、符号化歪補償は輝度信号と色差信号でそれぞれ変換ブロックの分割形状を特定して処理するよう構成する。
なお、ループフィルタ部11によるフィルタリング処理は、入力される局所復号画像信号の最大符号化ブロックあるいは個々の符号化ブロック単位で行ってもよいし、1画面分のマクロブロックに相当する局所復号画像信号が入力された後に1画面分まとめて行ってもよい。
ステップST4〜ST10の処理は、ブロック分割部2により分割された全ての符号化ブロックBnに属するパーティションPi nに対する処理が完了するまで繰り返し実施される(ステップST12)。
可変長符号化部13は、変換・量子化部7から出力された圧縮データと、符号化制御部1から出力された符号化モード及び変換ブロック分割フラグを含む予測差分符号化パラメータと、イントラ予測部4から出力されたイントラ予測パラメータ又は動き補償予測部5から出力されたインター予測パラメータとを可変長符号化して、その圧縮データ、符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ/インター予測パラメータの符号化データが多重化されているビットストリームを生成する(ステップST13)。
可変長符号化部13の処理内容の詳細は後述する。
可変長符号化部13は、変換・量子化部7から出力された圧縮データと、符号化制御部1から出力された符号化モード及び変換ブロック分割フラグを含む予測差分符号化パラメータと、イントラ予測部4から出力されたイントラ予測パラメータ又は動き補償予測部5から出力されたインター予測パラメータとを可変長符号化して、その圧縮データ、符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ/インター予測パラメータの符号化データが多重化されているビットストリームを生成する(ステップST13)。
可変長符号化部13の処理内容の詳細は後述する。
次に、イントラ予測部4の処理内容を具体的に説明する。
図16は符号化ブロックBnに属する各パーティションPi nにおいて選択可能なイントラ予測パラメータ(イントラ予測モード)の一例を示す説明図である。
図16の例では、イントラ予測モードに対応する予測方向ベクトルを示しており、選択可能なイントラ予測モードの個数が増えるに従って、予測方向ベクトル同士の相対角度が小さくなるように設計されている。
図16は符号化ブロックBnに属する各パーティションPi nにおいて選択可能なイントラ予測パラメータ(イントラ予測モード)の一例を示す説明図である。
図16の例では、イントラ予測モードに対応する予測方向ベクトルを示しており、選択可能なイントラ予測モードの個数が増えるに従って、予測方向ベクトル同士の相対角度が小さくなるように設計されている。
まず、イントラ予測部4の輝度信号イントラ予測部21は、ブロック分割部2により分割された符号化ブロックにおける輝度成分のフレーム内予測を実施して、輝度成分に対する予測画像を生成する(図5のステップST21)。
以下、輝度信号イントラ予測部21の処理内容を具体的に説明する。
ここでは、イントラ予測部4の輝度信号イントラ予測部21が、パーティションPi nの輝度信号に対するイントラ予測パラメータ(イントラ予測モード)に基づいて、その輝度信号のイントラ予測信号を生成するイントラ処理について説明する。
説明の便宜上、パーティションPi nのサイズをli n×mi n画素とする。
以下、輝度信号イントラ予測部21の処理内容を具体的に説明する。
ここでは、イントラ予測部4の輝度信号イントラ予測部21が、パーティションPi nの輝度信号に対するイントラ予測パラメータ(イントラ予測モード)に基づいて、その輝度信号のイントラ予測信号を生成するイントラ処理について説明する。
説明の便宜上、パーティションPi nのサイズをli n×mi n画素とする。
図17はli n=mi n=4の場合において、パーティションPi n内の画素の予測値を生成する際に用いる画素の一例を示す説明図である。
図17の例では、パーティションPi nに隣接している符号化済みの上パーティションの画素((2×li n+1)個の画素)と、左パーティションの画素((2×mi n)個の画素)を予測に用いる参照画素としているが、予測に用いる画素は、図17に示す画素より多くても少なくてもよい。
また、図17の例では、隣接している1行又は1列分の画素を予測に用いているが、2行又は2列分の画素、あるいは、それ以上の画素を予測に用いてもよい。
図17の例では、パーティションPi nに隣接している符号化済みの上パーティションの画素((2×li n+1)個の画素)と、左パーティションの画素((2×mi n)個の画素)を予測に用いる参照画素としているが、予測に用いる画素は、図17に示す画素より多くても少なくてもよい。
また、図17の例では、隣接している1行又は1列分の画素を予測に用いているが、2行又は2列分の画素、あるいは、それ以上の画素を予測に用いてもよい。
輝度信号イントラ予測部21は、例えば、パーティションPi nに対するイントラ予測モードのインデックス値が2(平均値予測)である場合、上パーティションの隣接画素と左パーティションの隣接画素の平均値をパーティションPi n内の画素の予測値として予測画像を生成する。
イントラ予測モードのインデックス値が2(平均値予測)以外の場合には、インデックス値が示す予測方向ベクトルvp=(dx,dy)に基づいて、パーティションPi n内の画素の予測値を生成する。
予測値を生成する画素(予測対象画素)のパーティションPi n内の相対座標(パーティションの左上画素を原点とする)を(x,y)とすると、予測に用いる参照画素の位置は、下記に示すLと、隣接画素の交点となる。
ただし、kは正のスカラ値である。
イントラ予測モードのインデックス値が2(平均値予測)以外の場合には、インデックス値が示す予測方向ベクトルvp=(dx,dy)に基づいて、パーティションPi n内の画素の予測値を生成する。
予測値を生成する画素(予測対象画素)のパーティションPi n内の相対座標(パーティションの左上画素を原点とする)を(x,y)とすると、予測に用いる参照画素の位置は、下記に示すLと、隣接画素の交点となる。
ただし、kは正のスカラ値である。
参照画素が整数画素位置にある場合、その整数画素を予測対象画素の予測値とする。参照画素が整数画素位置にない場合、参照画素に隣接する整数画素から生成される補間画素を予測値とする。
図17の例では、参照画素が整数画素位置にないので、参照画素に隣接する2画素の平均値を予測値としている。
なお、隣接する2画素のみではなく、隣接する2画素以上の画素から補間画素を生成して予測値としてもよい。
図17の例では、参照画素が整数画素位置にないので、参照画素に隣接する2画素の平均値を予測値としている。
なお、隣接する2画素のみではなく、隣接する2画素以上の画素から補間画素を生成して予測値としてもよい。
輝度信号イントラ予測部21は、同様の手順で、パーティションPi n内の輝度信号のすべての画素に対する予測画素を生成し、その生成したイントラ予測画像(Pi n)を出力する。
イントラ予測画像(Pi n)の生成に用いているイントラ予測パラメータは、上述したように、ビットストリームに多重化するために可変長符号化部13に出力される。
イントラ予測画像(Pi n)の生成に用いているイントラ予測パラメータは、上述したように、ビットストリームに多重化するために可変長符号化部13に出力される。
イントラ予測部4の切替スイッチ22は、符号化制御部1から出力されたイントラ予測パラメータのうち、色差信号のイントラ符号化モードを示すパラメータが、方向性予測モードであるのか、平滑化輝度相関利用色差信号予測モードであるのかを判定する(ステップST22)。
切替スイッチ22は、色差信号のイントラ符号化モードを示すパラメータが、方向性予測モードである旨を示していれば、予測に用いる参照画素を色差信号方向性イントラ予測部23に与え、色差信号のイントラ符号化モードを示すパラメータが、平滑化輝度相関利用色差信号予測モードである旨を示していれば、予測に用いる参照画素を輝度相関利用色差信号予測部24に与える。
切替スイッチ22は、色差信号のイントラ符号化モードを示すパラメータが、方向性予測モードである旨を示していれば、予測に用いる参照画素を色差信号方向性イントラ予測部23に与え、色差信号のイントラ符号化モードを示すパラメータが、平滑化輝度相関利用色差信号予測モードである旨を示していれば、予測に用いる参照画素を輝度相関利用色差信号予測部24に与える。
ここで、図18は色差信号のイントラ予測パラメータと色差イントラ予測モードの対応例を示す説明図である。
図18の例では、色差信号イントラ予測パラメータが“34”である場合には、予測に用いる参照画素が輝度相関利用色差信号予測部24に与えられ、色差信号イントラ予測パラメータが“34”以外である場合には、予測に用いる参照画素が色差信号方向性イントラ予測部23に与えられることになる。
図18の例では、色差信号イントラ予測パラメータが“34”である場合には、予測に用いる参照画素が輝度相関利用色差信号予測部24に与えられ、色差信号イントラ予測パラメータが“34”以外である場合には、予測に用いる参照画素が色差信号方向性イントラ予測部23に与えられることになる。
色差信号方向性イントラ予測部23は、切替スイッチ22から予測に用いる参照画素を受けると、パーティションPi nに隣接している復号済みの色差参照画素を参照して、符号化制御部1から出力されたイントラ予測パラメータに基づく色差成分のフレーム内予測を実施することで、色差成分に対する予測画像を生成する(ステップST23)。
色差信号方向性イントラ予測部23におけるイントラ予測の対象が色差信号であり、イントラ予測の対象が輝度信号である輝度信号イントラ予測部21と異なるが、イントラ予測の処理内容自体は輝度信号イントラ予測部21と同様である。よって、方向性予測、水平予測、垂直予測、DC予測などを行うことにより、色差信号のイントラ予測画像が生成される。
色差信号方向性イントラ予測部23におけるイントラ予測の対象が色差信号であり、イントラ予測の対象が輝度信号である輝度信号イントラ予測部21と異なるが、イントラ予測の処理内容自体は輝度信号イントラ予測部21と同様である。よって、方向性予測、水平予測、垂直予測、DC予測などを行うことにより、色差信号のイントラ予測画像が生成される。
輝度相関利用色差信号予測部24は、切替スイッチ22から予測に用いる参照画素を受けると、符号化ブロックであるパーティションPi nに隣接している復号済みの輝度参照画素及び色差参照画素と、パーティションPi n内の復号済みの輝度参照画素(輝度信号イントラ予測部21により先に生成されたパーティションPi nのイントラ予測画像(Pi n)から得られた局所復号画像内の輝度参照画素)とを用いて、その符号化ブロックを構成している画素のうち、水平方向及び垂直方向に隣接している複数の画素に係る輝度成分を平滑化して、平滑化後の輝度成分と色差成分の相関を示す相関パラメータを算出し、その相関パラメータと平滑化後の輝度成分を用いて、色差成分に対する予測画像を生成する(ステップST24)。
以下、輝度相関利用色差信号予測部24の処理内容を具体的に説明する。
以下、輝度相関利用色差信号予測部24の処理内容を具体的に説明する。
輝度相関利用色差信号予測部24の平滑化輝度参照画素縮小部31は、イントラ予測用メモリ10により格納されているパーティションPi nを構成している復号済みの輝度参照画素(輝度信号イントラ予測部21により先に生成されたパーティションPi nのイントラ予測画像(Pi n)から得られた局所復号画像内の輝度参照画素)のうち、水平方向及び垂直方向に隣接している複数の輝度参照画素の平滑化処理等を実施することで、縮小輝度参照画素Rec’Lを生成する(図6のステップST31)。
即ち、平滑化輝度参照画素縮小部31は、図19に示すように、パーティションPi n内の色差信号の予測ブロック(図中、左側のN×Nのブロック)に対応するブロック(図中、右側の2N×2Nのブロック)内の復号済の画素値である復号済輝度信号と、その復号済輝度信号の上端と左端に隣接している復号済輝度信号とを用いて、縮小輝度参照画素Rec’Lを生成する。
ここで、縮小輝度参照画素Rec’Lは、図20に示すように、YUV4:2:0信号において、色差信号画素と同位相になるように、輝度参照画素RecLに対して、横方向に1:2:1のローパスフィルタ、縦方向に1:1のローパスフィルタを施した後に、縦横に偶数列のみをサブサンプリングすることで得られる。
即ち、平滑化輝度参照画素縮小部31は、図19に示すように、パーティションPi n内の色差信号の予測ブロック(図中、左側のN×Nのブロック)に対応するブロック(図中、右側の2N×2Nのブロック)内の復号済の画素値である復号済輝度信号と、その復号済輝度信号の上端と左端に隣接している復号済輝度信号とを用いて、縮小輝度参照画素Rec’Lを生成する。
ここで、縮小輝度参照画素Rec’Lは、図20に示すように、YUV4:2:0信号において、色差信号画素と同位相になるように、輝度参照画素RecLに対して、横方向に1:2:1のローパスフィルタ、縦方向に1:1のローパスフィルタを施した後に、縦横に偶数列のみをサブサンプリングすることで得られる。
輝度相関利用色差信号予測部24の相関算出部32は、平滑化輝度参照画素縮小部31が縮小輝度参照画素Rec’Lを生成すると、その縮小輝度参照画素Rec’Lと、色差信号の予測ブロックの上端及び左端に隣接している色差信号の復号済の画素値である色差参照画素RecCとを用いて、下記の式(1)及び式(2)に示すように、予測に用いる相関パラメータα,βを算出する(ステップST32)。
式(1),(2)において、Iは処理対象となる色差信号の予測ブロックの1辺の画素数の2倍の値である。
式(1),(2)において、Iは処理対象となる色差信号の予測ブロックの1辺の画素数の2倍の値である。
色差予測画像生成部33は、相関算出部32が相関パラメータα,βを算出すると、その相関パラメータα,βと縮小輝度参照画素Rec’Lを用いて、下記の式(3)に示すように、色差予測画像PredCを生成する(ステップST33)。
なお、イントラ予測は、画面内の未知の領域を既知の領域から予測する手段であるが、輝度信号と色差信号のテクスチャには相関があり、空間方向については、近傍画素同士は画素値の変化が小さいため、予測ブロックに隣接する復号済の輝度信号と色差信号を利用して輝度信号と色差信号の相関パラメータを算出し、その輝度信号と相関パラメータから色差信号を予測することにより、予測効率を向上させることができる。
この際、YUV4:2:0信号では、輝度信号と色差信号の解像度が異なるため、輝度信号をサブサンプリングする必要があるが、ローパスフィルタを施すことによりエイリアシングの発生を抑えることができ、予測効率を向上させることができる。
この際、YUV4:2:0信号では、輝度信号と色差信号の解像度が異なるため、輝度信号をサブサンプリングする必要があるが、ローパスフィルタを施すことによりエイリアシングの発生を抑えることができ、予測効率を向上させることができる。
可変長符号化部13は、上述したように、イントラ予測部4から出力されたイントラ予測パラメータを可変長符号化して、そのイントラ予測パラメータの符号語をビットストリームに多重化するが、イントラ予測パラメータを符号化する際に、複数の方向性予測の予測方向ベクトルの中から、代表的な予測方向ベクトル(予測方向代表ベクトル)を選択し、イントラ予測パラメータを予測方向代表ベクトルのインデックス(予測方向代表インデックス)と予測方向代表ベクトルからの差分を表すインデックス(予測方向差分インデックス)で表して、それぞれのインデックス毎に、確率モデルに応じた算術符号化などのハフマン符号化を行うことで、符号量を削減して符号化するよう構成してもよい。
以下、可変長符号化部13の処理内容を具体的に説明する。
可変長符号化部13は、図7に示すように、変換係数可変長符号化部51及び符号化パラメータ可変長符号化部52から構成されており、符号化パラメータ可変長符号化部52は、符号化制御部1から出力された符号化モード及び変換ブロック分割フラグを含む予測差分符号化パラメータ、イントラ予測部4から出力されたイントラ予測パラメータ又は動き補償予測部5から出力されたインター予測パラメータ、動き情報、符号化ブロックの分割状況を示すブロック分割情報などの符号化パラメータを可変長符号化する。
また、変換係数可変長符号化部51は、変換・量子化部7から出力された圧縮データを可変長符号化する。
可変長符号化部13は、図7に示すように、変換係数可変長符号化部51及び符号化パラメータ可変長符号化部52から構成されており、符号化パラメータ可変長符号化部52は、符号化制御部1から出力された符号化モード及び変換ブロック分割フラグを含む予測差分符号化パラメータ、イントラ予測部4から出力されたイントラ予測パラメータ又は動き補償予測部5から出力されたインター予測パラメータ、動き情報、符号化ブロックの分割状況を示すブロック分割情報などの符号化パラメータを可変長符号化する。
また、変換係数可変長符号化部51は、変換・量子化部7から出力された圧縮データを可変長符号化する。
即ち、変換係数可変長符号化部51の変換ブロックスキャン部61は、変換・量子化部7から圧縮データを受けると、その圧縮データである変換係数をサブブロックに分割し、図21に示すスキャン順に、各々のサブブロックの変換係数を整列することで圧縮データ系列を生成し、その圧縮データ系列をサブブロック符号化部66に出力する。
また、変換ブロックスキャン部61は、各々のサブブロックの変換係数が非零であるか否かを示す係数パラメータであるsignificant_coeff_flagをPosLast符号化部62に出力するとともに、各々のサブブロックにおける非零係数の有無を示すパラメータであるSigCoeffGroupFlagを係数パラメータ格納用メモリ63に格納する。
また、変換ブロックスキャン部61は、各々のサブブロックの変換係数が非零であるか否かを示す係数パラメータであるsignificant_coeff_flagをPosLast符号化部62に出力するとともに、各々のサブブロックにおける非零係数の有無を示すパラメータであるSigCoeffGroupFlagを係数パラメータ格納用メモリ63に格納する。
並列コンテキスト値算出部64は、係数パラメータ格納用メモリ63により格納された当該サブブロックの下及び右に隣接するサブブロックのSigCoeffGroupFlagの値に応じて、当該サブブロック内の各周波数成分の位置におけるsignificant_coeff_flagのコンテキスト値ctxIdxを算出する。
即ち、並列コンテキスト値算出部64は、係数パラメータであるsignificant_coeff_flagの算術符号化に用いる生起確率に対応するコンテキスト値ctxIdxを、図23に示すように、当該サブブロックの下及び右に隣接するサブブロックのSigCoeffGroupFlagの値に応じて、所定のテーブルを選択することによって切り替える。
このようにサブブロック単位に固定のテーブルを参照することにより、サブブロック内の16個のコンテキスト値ctxIdxの並列算出処理を実現することができる。
即ち、並列コンテキスト値算出部64は、係数パラメータであるsignificant_coeff_flagの算術符号化に用いる生起確率に対応するコンテキスト値ctxIdxを、図23に示すように、当該サブブロックの下及び右に隣接するサブブロックのSigCoeffGroupFlagの値に応じて、所定のテーブルを選択することによって切り替える。
このようにサブブロック単位に固定のテーブルを参照することにより、サブブロック内の16個のコンテキスト値ctxIdxの並列算出処理を実現することができる。
サブブロック符号化部66は、並列コンテキスト値算出部64が係数パラメータのコンテキスト値ctxIdxを算出すると、並列コンテキスト値算出部64からスキャン順(変換ブロックスキャン部61による変換係数のスキャン順)でPosLastが示す位置より後ろにある係数パラメータ以外の係数パラメータ(PosLastが示す位置にある係数パラメータと、PosLastが示す位置より前にある係数パラメータ)のコンテキスト値ctxIdxを取得して、生起確率格納用メモリ65から上記コンテキスト値ctxIdxに対応する生起確率を取得する。
サブブロック符号化部66は、生起確率格納用メモリ65からコンテキスト値ctxIdxに対応する生起確率を取得すると、その生起確率に基づいて、その係数パラメータ(PosLastが示す位置にある係数パラメータと、PosLastが示す位置より前にある係数パラメータ)であるsignificant_coeff_flagを算術符号化する。
サブブロック符号化部66は、生起確率格納用メモリ65からコンテキスト値ctxIdxに対応する生起確率を取得すると、その生起確率に基づいて、その係数パラメータ(PosLastが示す位置にある係数パラメータと、PosLastが示す位置より前にある係数パラメータ)であるsignificant_coeff_flagを算術符号化する。
また、サブブロック符号化部66は、その係数パラメータが非零である旨を示していれば、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術符号化する。
この場合、生起確率格納用メモリ65と異なる生起確率格納用メモリ(変換係数の絶対値等を算術符号化するために、コンテキスト値ctxIdxに対応する生起確率を格納しているメモリ)から、コンテキスト値ctxIdxに対応する生起確率を取得し、その生起確率に基づいて、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術符号化する。
この場合、生起確率格納用メモリ65と異なる生起確率格納用メモリ(変換係数の絶対値等を算術符号化するために、コンテキスト値ctxIdxに対応する生起確率を格納しているメモリ)から、コンテキスト値ctxIdxに対応する生起確率を取得し、その生起確率に基づいて、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術符号化する。
ただし、サブブロック符号化部66は、上記のスキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上であれば、最初の非零の変換係数については、正負符号を可変長符号化せずに絶対値だけを可変長符号化し、その位置差が上記閾値より小さければ、最初の非零の変換係数についても、正負符号及び絶対値を可変長符号化する。
以下、サブブロック符号化部66の処理内容を具体的に説明する。
サブブロック符号化部66は、例えば、図21に示すように、4×4サイズのサブブロック単位に、サブブロックの変換係数を次にように算術符号化する。
以下、サブブロック符号化部66の処理内容を具体的に説明する。
サブブロック符号化部66は、例えば、図21に示すように、4×4サイズのサブブロック単位に、サブブロックの変換係数を次にように算術符号化する。
(1)図21に示すスキャンと逆順である逆スキャン順(図22に例示)に、PosLastを含むサブブロックから始めて、当該サブブロック内に非零の変換係数が含まれているか否かを示すSigCoeffGroupFlagを算術符号化する。
SigCoeffGroupFlagが当該サブブロック内に非零の変換係数が含まれている旨を示している場合、以下の(2)〜(8)の処理を行う。
(2)逆スキャン順に、当該サブブロック内の変換係数(各周波数成分の位置にある変換係数)が非零であるか否かを示すsignificant_coeff_flagを、並列コンテキスト値算出部64により算出されたコンテキスト値ctxIdxに対応する生起確率(生起確率格納用メモリ65により格納されている生起確率のうち、当該コンテキスト値ctxIdxによって指定されるメモリ領域に格納されている生起確率)に基づいて算術符号化すると共に、スキャン順で最初の非零係数位置をfirstNZPos、最後の非零係数位置をlastNZPosとする。
(3)上記スキャン順で最初の非零係数位置であるfirstNZPosにおける変換係数の絶対値が偶数である場合firstNZsign=1、奇数である場合firstNZSign=−1とする。
SigCoeffGroupFlagが当該サブブロック内に非零の変換係数が含まれている旨を示している場合、以下の(2)〜(8)の処理を行う。
(2)逆スキャン順に、当該サブブロック内の変換係数(各周波数成分の位置にある変換係数)が非零であるか否かを示すsignificant_coeff_flagを、並列コンテキスト値算出部64により算出されたコンテキスト値ctxIdxに対応する生起確率(生起確率格納用メモリ65により格納されている生起確率のうち、当該コンテキスト値ctxIdxによって指定されるメモリ領域に格納されている生起確率)に基づいて算術符号化すると共に、スキャン順で最初の非零係数位置をfirstNZPos、最後の非零係数位置をlastNZPosとする。
(3)上記スキャン順で最初の非零係数位置であるfirstNZPosにおける変換係数の絶対値が偶数である場合firstNZsign=1、奇数である場合firstNZSign=−1とする。
(4)最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの位置差が4以上であり、上記正負符号埋め込みフラグが1である場合には、最初の非零係数位置firstNZPosにおける変換係数の正負の符号がfirstNZsignの正負と一致するように変換係数の値を調整する。
(5)逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数については、その変換係数の絶対値が1より大きいか否かを示すcoeff_abs_level_greater1_flagを算術符号化する。
(6)逆スキャン順に、coeff_abs_level_greater1_flagが、変換係数の絶対値が1より大きい旨を示している周波数成分位置の変換係数については、その変換係数の絶対値が2より大きいか否かを示すcoeff_abs_level_greater2_flagを算術符号化する。
(5)逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数については、その変換係数の絶対値が1より大きいか否かを示すcoeff_abs_level_greater1_flagを算術符号化する。
(6)逆スキャン順に、coeff_abs_level_greater1_flagが、変換係数の絶対値が1より大きい旨を示している周波数成分位置の変換係数については、その変換係数の絶対値が2より大きいか否かを示すcoeff_abs_level_greater2_flagを算術符号化する。
(7)最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの位置差が予め設定された所定の閾値sign_hiding_threshold以上であり、かつ、正負符号埋め込みフラグが1である場合には、最初の非零係数位置firstNZPosにおける変換係数の正負の符号以外について、逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数については、その変換係数の正負の符号を示すcoeff_sign_flagを算術符号化する。
最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの位置差が閾値sign_hiding_threshold未満であるか、あるいは、正負符号埋め込みフラグが0である場合には、すべての変換係数について、逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数の正負の符号を示すcoeff_sign_flagを算術符号化する。
(8)逆スキャン順に、coeff_abs_level_greater2_flagが、変換係数の絶対値が2より大きい旨を示している周波数成分位置の変換係数については、変換係数の絶対値から3を減じた値であるcoeff_abs_level_minus3を算術符号化する。
最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの位置差が閾値sign_hiding_threshold未満であるか、あるいは、正負符号埋め込みフラグが0である場合には、すべての変換係数について、逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数の正負の符号を示すcoeff_sign_flagを算術符号化する。
(8)逆スキャン順に、coeff_abs_level_greater2_flagが、変換係数の絶対値が2より大きい旨を示している周波数成分位置の変換係数については、変換係数の絶対値から3を減じた値であるcoeff_abs_level_minus3を算術符号化する。
ここでは、変換係数可変長符号化部51が、圧縮データである変換係数を最適な生起確率に基づいて算術符号化を行うものを示したが、符号化パラメータ可変長符号化部52が、生起確率を格納する生起確率格納用メモリ領域を切り替えることで、符号化パラメータ(符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ又インター予測パラメータ、動き情報、ブロック分割情報など)についても、最適な生起確率に基づいて算術符号化を行うように構成してもよい。
ここで、符号化パラメータのうち、最大値や絶対値の最大値が予め決定されている量子化パラメータ(量子化パラメータの予測差分値でもよい)、動きベクトル差分値、参照画像インデックス、ループフィルタのオフセット値などについては、それらのインデックス値と最大値によって決定される。
ここで、符号化パラメータのうち、最大値や絶対値の最大値が予め決定されている量子化パラメータ(量子化パラメータの予測差分値でもよい)、動きベクトル差分値、参照画像インデックス、ループフィルタのオフセット値などについては、それらのインデックス値と最大値によって決定される。
次に、図9の動画像復号装置の処理内容を説明する。
可変長復号部41は、図1の動画像符号化装置により生成されたビットストリームを入力すると、そのビットストリームに対する可変長復号処理を実施して(図10のステップST41)、1フレーム以上のピクチャから構成されるシーケンス単位あるいはピクチャ単位にフレームサイズを復号する。
可変長復号部41は、フレームサイズを復号すると、図1の動画像符号化装置で決定された最大符号化ブロックサイズ(イントラ予測処理又は動き補償予測処理が実施される際の処理単位となる符号化ブロックの最大サイズ)と、分割階層数の上限(最大サイズの符号化ブロックから階層的に分割されている符号化ブロックの階層数)を動画像符号化装置と同様の手順で決定する(ステップST42)。
可変長復号部41は、図1の動画像符号化装置により生成されたビットストリームを入力すると、そのビットストリームに対する可変長復号処理を実施して(図10のステップST41)、1フレーム以上のピクチャから構成されるシーケンス単位あるいはピクチャ単位にフレームサイズを復号する。
可変長復号部41は、フレームサイズを復号すると、図1の動画像符号化装置で決定された最大符号化ブロックサイズ(イントラ予測処理又は動き補償予測処理が実施される際の処理単位となる符号化ブロックの最大サイズ)と、分割階層数の上限(最大サイズの符号化ブロックから階層的に分割されている符号化ブロックの階層数)を動画像符号化装置と同様の手順で決定する(ステップST42)。
例えば、符号化ブロックの最大サイズが、全てのピクチャに対して、入力画像の解像度に応じたサイズに決定されている場合には、先に復号しているフレームサイズに基づいて、図1の動画像符号化装置と同様の手順で、符号化ブロックの最大サイズを決定する。
動画像符号化装置によって、符号化ブロックの最大サイズ及び符号化ブロックの階層数がビットストリームに多重化されている場合には、そのビットストリームから符号化ブロックの最大サイズ及び符号化ブロックの階層数を復号する。
動画像符号化装置によって、符号化ブロックの最大サイズ及び符号化ブロックの階層数がビットストリームに多重化されている場合には、そのビットストリームから符号化ブロックの最大サイズ及び符号化ブロックの階層数を復号する。
可変長復号部41は、符号化ブロックの最大サイズ及び符号化ブロックの階層数を決定すると、最大符号化ブロックを出発点にして、各符号化ブロックの階層的な分割状態を把握することで、ビットストリームに多重化されている符号化データの中で、各符号化ブロックに係る符号化データを特定し、その符号化データから各符号化ブロックに割り当てられている符号化モードを復号する。
そして、可変長復号部41は、その符号化モードに含まれている符号化ブロックBnに属するパーティションPi nの分割情報を参照して、ビットストリームに多重化されている符号化データの中で、各パーティションPi nに係る符号化データを特定する(ステップST43)。
可変長復号部41は、各パーティションPi nに係る符号化データから圧縮データ、変換ブロック分割フラグを含む予測差分符号化パラメータ、イントラ予測パラメータ/インター予測パラメータを可変長復号して、その圧縮データ及び予測差分符号化パラメータを逆量子化・逆変換部45に出力するとともに、符号化モード及びイントラ予測パラメータ/インター予測パラメータを切替スイッチ42に出力する(ステップST44)。
そして、可変長復号部41は、その符号化モードに含まれている符号化ブロックBnに属するパーティションPi nの分割情報を参照して、ビットストリームに多重化されている符号化データの中で、各パーティションPi nに係る符号化データを特定する(ステップST43)。
可変長復号部41は、各パーティションPi nに係る符号化データから圧縮データ、変換ブロック分割フラグを含む予測差分符号化パラメータ、イントラ予測パラメータ/インター予測パラメータを可変長復号して、その圧縮データ及び予測差分符号化パラメータを逆量子化・逆変換部45に出力するとともに、符号化モード及びイントラ予測パラメータ/インター予測パラメータを切替スイッチ42に出力する(ステップST44)。
例えば、予測方向代表インデックスと予測方向差分インデックスがビットストリームに多重化されている場合には、その予測方向代表インデックスと予測方向差分インデックスをそれぞれの確率モデルに応じた算術復号などによりエントロピー復号し、その予測方向代表インデックスと予測方向差分インデックスからイントラ予測パラメータを特定するようにする。
これにより、動画像符号化装置側で、イントラ予測パラメータの符号量を削減している場合でも、イントラ予測パラメータを正しく復号することができる。
これにより、動画像符号化装置側で、イントラ予測パラメータの符号量を削減している場合でも、イントラ予測パラメータを正しく復号することができる。
なお、可変長復号部41は、図11に示すように、変換係数可変長復号部71と符号化パラメータ可変長復号部72から構成されており、変換係数可変長復号部71は、ビットストリームに多重化された符号化データから圧縮データである変換係数を可変長復号し、符号化パラメータ可変長復号部72は、ビットストリームに多重化された符号化データから符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ/インター予測パラメータ、動き情報、ブロック分割情報などの符号化パラメータを可変長復号するものであるが、変換係数可変長復号部71の処理内容の詳細は後述する。
切替スイッチ42は、可変長復号部41から出力された符号化ブロックBnに属するパーティションPi nの符号化モードがイントラ符号化モードである場合、可変長復号部41から出力されたイントラ予測パラメータをイントラ予測部43に出力し、その符号化モードがインター符号化モードである場合、可変長復号部41から出力されたインター予測パラメータを動き補償部44に出力する。
イントラ予測部43は、可変長復号部41からイントラ予測パラメータを受けると(ステップST45)、図1のイントラ予測部4と同様に、そのイントラ予測パラメータに基づいて、各パーティションPi nに対するイントラ予測処理を実施することにより、イントラ予測画像(Pi n)を生成する(ステップST46)。
即ち、イントラ予測部43は、可変長復号部41からイントラ予測パラメータを受けると、動画像符号化装置の輝度信号イントラ予測部21と同様に、例えば、パーティションPi nに対するイントラ予測モードのインデックス値が2(平均値予測)である場合、上パーティションの隣接画素と左パーティションの隣接画素の平均値をパーティションPi n内の画素の予測値として予測画像を生成する。
イントラ予測モードのインデックス値が2(平均値予測)以外の場合には、インデックス値が示す予測方向ベクトルvp=(dx,dy)に基づいて、パーティションPi n内の画素の予測値を生成する。
イントラ予測部43は、同様の手順で、パーティションPi n内の輝度信号のすべての画素に対する予測画素を生成し、その生成したイントラ予測画像(Pi n)を出力する。
即ち、イントラ予測部43は、可変長復号部41からイントラ予測パラメータを受けると、動画像符号化装置の輝度信号イントラ予測部21と同様に、例えば、パーティションPi nに対するイントラ予測モードのインデックス値が2(平均値予測)である場合、上パーティションの隣接画素と左パーティションの隣接画素の平均値をパーティションPi n内の画素の予測値として予測画像を生成する。
イントラ予測モードのインデックス値が2(平均値予測)以外の場合には、インデックス値が示す予測方向ベクトルvp=(dx,dy)に基づいて、パーティションPi n内の画素の予測値を生成する。
イントラ予測部43は、同様の手順で、パーティションPi n内の輝度信号のすべての画素に対する予測画素を生成し、その生成したイントラ予測画像(Pi n)を出力する。
動き補償部44は、切替スイッチ42からインター予測パラメータを受けると、動画像符号化装置の動き補償予測部5と同様に、そのインター予測パラメータに基づいて、各パーティションPi nに対するインター予測処理を実施することにより、インター予測画像(Pi n)を生成する(ステップST47)。
即ち、動き補償部44は、動き補償予測フレームメモリ49により格納されている1フレーム以上の参照画像を用いて、そのインター予測パラメータに基づくパーティションPi nに対する動き補償予測処理を実施することで、インター予測画像(Pi n)を生成する。
即ち、動き補償部44は、動き補償予測フレームメモリ49により格納されている1フレーム以上の参照画像を用いて、そのインター予測パラメータに基づくパーティションPi nに対する動き補償予測処理を実施することで、インター予測画像(Pi n)を生成する。
逆量子化・逆変換部45は、可変長復号部41から変換ブロック分割フラグを含む予測差分符号化パラメータを受けると、その予測差分符号化パラメータに含まれている量子化パラメータを用いて、変換ブロック分割フラグに従って決定される変換ブロックサイズ毎に、可変長復号部41から出力された符号化ブロックに係る圧縮データを逆量子化し、その予測差分符号化パラメータに含まれている変換ブロック分割フラグから特定される変換ブロックサイズ単位で、逆量子化後の圧縮データの逆変換処理(例えば、逆DCT(逆離散コサイン変換)や逆DST(逆離散サイン変換)、逆KL変換等の逆変換処理)を実施することで、逆変換処理後の圧縮データを復号予測差分信号(圧縮前の差分画像を示す信号)として加算部46に出力する(ステップST48)。
加算部46は、逆量子化・逆変換部45から出力された復号予測差分信号と、イントラ予測部43又は動き補償部44により生成された予測画像(Pi n)を示す予測信号とを加算することで、復号パーティション画像ないしはその集まりとしての復号画像を示す復号画像信号を生成し、その復号画像信号をループフィルタ部48に出力する(ステップST49)。
また、イントラ予測用メモリ47には、イントラ予測に用いるために、当該復号画像が格納される。
また、イントラ予測用メモリ47には、イントラ予測に用いるために、当該復号画像が格納される。
ループフィルタ部48は、加算部46から復号画像信号を受けると、その復号画像信号に含まれている符号化歪みを補償し、符号化歪み補償後の復号画像信号が示す復号画像を参照画像として動き補償予測フレームメモリ49に格納するとともに、その復号画像を再生画像として出力する(ステップST50)。
ここで、符号化歪は変換ブロック境界に沿って発生するため、変換ブロック境界に対して符号化歪の補償を行う。小さい変換ブロックについては、変換ブロック境界の符号化歪が目立ちにくいので、ヘッダで最小ループフィルタ適用ブロックサイズをシグナリングし、変換ブロックサイズが最小ループフィルタ適用ブロックサイズより大きいブロックに対してのみ符号化歪補償を適用するよう構成してもよい。
ここで、符号化歪は変換ブロック境界に沿って発生するため、変換ブロック境界に対して符号化歪の補償を行う。小さい変換ブロックについては、変換ブロック境界の符号化歪が目立ちにくいので、ヘッダで最小ループフィルタ適用ブロックサイズをシグナリングし、変換ブロックサイズが最小ループフィルタ適用ブロックサイズより大きいブロックに対してのみ符号化歪補償を適用するよう構成してもよい。
このようにすれば、不要な符号化歪補償を省略できるので画質を保ちつつ演算量を削減することができる。また、輝度信号と色差信号では変換ブロックの分割形状が異なるので、符号化歪補償は輝度信号と色差信号でそれぞれ変換ブロックの分割形状を特定して処理
するよう構成する。
なお、ループフィルタ部48によるフィルタリング処理は、入力される復号画像信号の最大符号化ブロックあるいは個々の符号化ブロック単位で行ってもよいし、1画面分のマクロブロックに相当する復号画像信号が入力された後に1画面分まとめて行ってもよい。
ステップST43〜ST49の処理は、全ての符号化ブロックBnに属するパーティションPi nに対する処理が完了するまで繰り返し実施される(ステップST51)。
するよう構成する。
なお、ループフィルタ部48によるフィルタリング処理は、入力される復号画像信号の最大符号化ブロックあるいは個々の符号化ブロック単位で行ってもよいし、1画面分のマクロブロックに相当する復号画像信号が入力された後に1画面分まとめて行ってもよい。
ステップST43〜ST49の処理は、全ての符号化ブロックBnに属するパーティションPi nに対する処理が完了するまで繰り返し実施される(ステップST51)。
以下、可変長復号部41における変換係数可変長復号部71の処理内容を具体的に説明する。
PosLast復号部81は、図1の動画像符号化装置により生成されたビットストリームを入力すると、そのビットストリームに多重化されたPosLast符号化データ(PosLast符号化部62により可変長符号化された符号化データ)を算術復号して、PosLastの水平成分であるPosLastXと、PosLastの垂直成分であるPosLastYとを得ることにより、圧縮データ系列のスキャン順で最後の非零係数の位置を示すPosLastを算出し、PosLastをサブブロック復号部85に出力する。
PosLast復号部81は、図1の動画像符号化装置により生成されたビットストリームを入力すると、そのビットストリームに多重化されたPosLast符号化データ(PosLast符号化部62により可変長符号化された符号化データ)を算術復号して、PosLastの水平成分であるPosLastXと、PosLastの垂直成分であるPosLastYとを得ることにより、圧縮データ系列のスキャン順で最後の非零係数の位置を示すPosLastを算出し、PosLastをサブブロック復号部85に出力する。
並列コンテキスト値算出部83は、動画像符号化装置の並列コンテキスト値算出部64と同様に、係数パラメータ格納用メモリ82により格納された復号済みの係数パラメータであるsignificant_coeff_flagをサブブロック内の周波数成分の位置の組み合わせに応じてグループ分けし、グループ単位で並列に上記係数パラメータのコンテキスト値ctxIdxを算出する。
即ち、並列コンテキスト値算出部83は、係数パラメータであるsignificant_coeff_flagの算術復号に用いる生起確率に対応するコンテキスト値ctxIdxを、図23に示すように、当該サブブロックの下及び右に隣接するサブブロックのSigCoeffGroupFlagの値に応じて、所定のテーブルを選択することによって切り替える。
このようにサブブロック単位に固定のテーブルを参照することにより、サブブロック内の16個のコンテキスト値ctxIdxの並列算出処理を実現することができる。
即ち、並列コンテキスト値算出部83は、係数パラメータであるsignificant_coeff_flagの算術復号に用いる生起確率に対応するコンテキスト値ctxIdxを、図23に示すように、当該サブブロックの下及び右に隣接するサブブロックのSigCoeffGroupFlagの値に応じて、所定のテーブルを選択することによって切り替える。
このようにサブブロック単位に固定のテーブルを参照することにより、サブブロック内の16個のコンテキスト値ctxIdxの並列算出処理を実現することができる。
サブブロック復号部85は、並列コンテキスト値算出部83が係数パラメータのコンテキスト値ctxIdxを算出すると、並列コンテキスト値算出部83から、PosLast復号部81より出力されたPosLastが示す位置より後ろにある係数パラメータ以外の係数パラメータ(PosLastが示す位置にある係数パラメータと、PosLastが示す位置より前にある係数パラメータ)のコンテキスト値ctxIdxを取得して、生起確率格納用メモリ84から上記コンテキスト値ctxIdxに対応する生起確率を取得する。
サブブロック復号部85は、生起確率格納用メモリ84からコンテキスト値ctxIdxに対応する生起確率を取得すると、その生起確率に基づいてビットストリームに多重化された符号化データ(サブブロック符号化部66により算術符号化された符号化データ)から係数パラメータを算術復号する。
サブブロック復号部85は、生起確率格納用メモリ84からコンテキスト値ctxIdxに対応する生起確率を取得すると、その生起確率に基づいてビットストリームに多重化された符号化データ(サブブロック符号化部66により算術符号化された符号化データ)から係数パラメータを算術復号する。
また、サブブロック復号部85は、その係数パラメータが非零である旨を示していれば、ビットストリームに多重化された符号化データから、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術復号する。
この場合、生起確率格納用メモリ84と異なる生起確率格納用メモリ(変換係数の絶対値等を算術復号するために、コンテキスト値ctxIdxに対応する生起確率を格納しているメモリ)から、コンテキスト値ctxIdxに対応する生起確率を取得し、その生起確率に基づいて、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術復号する。
この場合、生起確率格納用メモリ84と異なる生起確率格納用メモリ(変換係数の絶対値等を算術復号するために、コンテキスト値ctxIdxに対応する生起確率を格納しているメモリ)から、コンテキスト値ctxIdxに対応する生起確率を取得し、その生起確率に基づいて、その係数パラメータに係る変換係数の絶対値及び正負の符号を算術復号する。
ただし、サブブロック復号部85は、スキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上である場合、最初の非零の変換係数の正負符号を復号せずに絶対値だけを可変長復号し、最後の非零の変換係数の位置がスキャン順で偶数位置であれば、最初の非零の変換係数の正負符号を正とし、最後の非零の変換係数の位置がスキャン順で奇数位置であれば、最初の非零の変換係数の正負符号を負とする。
以下、サブブロック復号部85の処理内容を具体的に説明する。
サブブロック復号部85は、例えば、図21に示すように、4×4サイズのサブブロック単位に、ビットストリームに多重化された符号化データを算術復号する。
以下、サブブロック復号部85の処理内容を具体的に説明する。
サブブロック復号部85は、例えば、図21に示すように、4×4サイズのサブブロック単位に、ビットストリームに多重化された符号化データを算術復号する。
(1)図21に示すスキャンと逆順である逆スキャン順(図22に例示)に、PosLastを含むサブブロックから始めて、当該サブブロック内に非零の変換係数が含まれているか否かを示すSigCoeffGroupFlagを算術復号する。
SigCoeffGroupFlagが当該サブブロック内に非零の変換係数が含まれている旨を示している場合、以下の(2)〜(7)の処理を行う。
(2)逆スキャン順に、当該サブブロック内の変換係数(各周波数成分の位置にある変換係数)が非零であるか否かを示すsignificant_coeff_flagを、並列コンテキスト値算出部83により算出されたコンテキスト値ctxIdxに対応する生起確率(生起確率格納用メモリ84により格納されている生起確率のうち、当該コンテキスト値ctxIdxによって指定されるメモリ領域に格納されている生起確率)に基づいて算術復号するとともに、スキャン順で最初の非零係数位置をfirstNZPos、最後の非零係数位置をlastNZPosとする。
SigCoeffGroupFlagが当該サブブロック内に非零の変換係数が含まれている旨を示している場合、以下の(2)〜(7)の処理を行う。
(2)逆スキャン順に、当該サブブロック内の変換係数(各周波数成分の位置にある変換係数)が非零であるか否かを示すsignificant_coeff_flagを、並列コンテキスト値算出部83により算出されたコンテキスト値ctxIdxに対応する生起確率(生起確率格納用メモリ84により格納されている生起確率のうち、当該コンテキスト値ctxIdxによって指定されるメモリ領域に格納されている生起確率)に基づいて算術復号するとともに、スキャン順で最初の非零係数位置をfirstNZPos、最後の非零係数位置をlastNZPosとする。
(3)逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数については、その変換係数の絶対値が1より大きいか否かを示すcoeff_abs_level_greater1_flagを算術復号する。
coeff_abs_level_greater1_flagが、変換係数の絶対値が1より大きくないことを示す場合には、当該周波数成分位置の変換係数の絶対値として1を出力する。
(4)スキャン順に、coeff_abs_level_greater1_flagが、変換係数の絶対値が1より大きい旨を示している周波数成分位置の変換係数については、その変換係数の絶対値が2より大きいか否かを示すcoeff_abs_level_greater2_flagを算術復号する。
coeff_abs_level_greater2_flagが、変換係数の絶対値が2より大きくないことを示す場合には、当該周波数成分位置の変換係数の絶対値として2を出力する。
coeff_abs_level_greater1_flagが、変換係数の絶対値が1より大きくないことを示す場合には、当該周波数成分位置の変換係数の絶対値として1を出力する。
(4)スキャン順に、coeff_abs_level_greater1_flagが、変換係数の絶対値が1より大きい旨を示している周波数成分位置の変換係数については、その変換係数の絶対値が2より大きいか否かを示すcoeff_abs_level_greater2_flagを算術復号する。
coeff_abs_level_greater2_flagが、変換係数の絶対値が2より大きくないことを示す場合には、当該周波数成分位置の変換係数の絶対値として2を出力する。
(5)最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの位置差が予め設定された所定の閾値sign_hiding_threshold以上であり、かつ、正負符号埋め込みフラグが1である場合には、最初の非零係数位置firstNZPosにおける変換係数の正負の符号以外について、逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数については、その変換係数の正負の符号を示すcoeff_sign_flagを算術復号し、当該周波数成分位置の変換係数の絶対値に対する正負の符号を決定する。
最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの位置差が閾値sign_hiding_threshold未満であるか、あるいは、正負符号埋め込みフラグが0である場合には、すべての変換係数について、逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数の正負の符号を示すcoeff_sign_flagを算術復号する。
最後の非零係数位置lastNZPosと最初の非零係数位置firstNZPosとの位置差が閾値sign_hiding_threshold未満であるか、あるいは、正負符号埋め込みフラグが0である場合には、すべての変換係数について、逆スキャン順に、significant_coeff_flagが非零である旨を示している周波数成分位置の変換係数の正負の符号を示すcoeff_sign_flagを算術復号する。
(6)逆スキャン順に、coeff_abs_level_greater2_flagが、変換係数の絶対値が2より大きい旨を示している周波数成分位置の変換係数については、変換係数の絶対値から3を減じた値であるcoeff_abs_level_minus3を算術復号する。
当該周波数成分位置の変換係数の絶対値をcoeff_abs_level_minus3の値に3を加えた値とし、coeff_sign_flagにより当該周波数成分位置の変換係数の絶対値に対する正負の符号を決定する。
(7)また、最初の非零係数位置firstNZPosにおける変換係数の正負符号を復号しない場合には、firstNZPosにおける変換係数の絶対値が偶数である場合には正、奇数である場合には負の値であると決定する。
当該周波数成分位置の変換係数の絶対値をcoeff_abs_level_minus3の値に3を加えた値とし、coeff_sign_flagにより当該周波数成分位置の変換係数の絶対値に対する正負の符号を決定する。
(7)また、最初の非零係数位置firstNZPosにおける変換係数の正負符号を復号しない場合には、firstNZPosにおける変換係数の絶対値が偶数である場合には正、奇数である場合には負の値であると決定する。
変換係数逆スキャン部86は、処理対象となる変換ブロックにおいて、サブブロック復号部85により算術復号された係数パラメータ、絶対値及び正負の符号からなる変換係数を図22に示す逆スキャン順に整列して圧縮データを生成し、その圧縮データを出力する。
ここでは、変換係数可変長復号部71が、圧縮データである変換係数を最適な生起確率に基づいて算術復号を行うものを示したが、符号化パラメータ可変長復号部72が、生起確率を格納する生起確率格納用メモリ領域を切り替えることで、符号化パラメータ(符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ又インター予測パラメータ、動き情報、ブロック分割情報など)についても、最適な生起確率に基づいて算術復号を行うように構成してもよい。
なお、各確率状態メモリ領域の初期値は、異なる複数種類の初期値テーブルのいずれかを用いて、スライスまたはピクチャの先頭で初期化される。
なお、各確率状態メモリ領域の初期値は、異なる複数種類の初期値テーブルのいずれかを用いて、スライスまたはピクチャの先頭で初期化される。
以上で明らかなように、この実施の形態1によれば、サブブロック符号化部66が、スキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上であれば、最初の非零の変換係数については、当該変換係数が正の値であれば、当該変換係数の絶対値が偶数値になるように制御し、当該変換係数が負の値であれば、当該変換係数の絶対値が奇数値になるように制御して、正負符号を可変長符号化せずに絶対値だけを可変長符号化し、その位置差が閾値より小さければ、最初の非零の変換係数についても、正負符号及び絶対値を可変長符号化するように構成したので、サブブロック内の各周波数成分位置における変換係数を符号化する際の演算量や回路規模の大型化を招くことなく、圧縮率を高めることができる効果を奏する。
なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
1 符号化制御部、2 ブロック分割部、3 切替スイッチ、4 イントラ予測部、5 動き補償予測部、6 減算部、7 変換・量子化部、8 逆量子化・逆変換部、9 加算部、10 イントラ予測用メモリ、11 ループフィルタ部、12 動き補償予測フレームメモリ、13 可変長符号化部(可変長符号化手段)、21 輝度信号イントラ予測部、22 切替スイッチ、23 色差信号方向性イントラ予測部、24 輝度相関利用色差信号予測部、31 平滑化輝度参照画素縮小部、32 相関算出部、33 色差予測画像生成部、41 可変長復号部(可変長復号手段)、42 切替スイッチ、43 イントラ予測部、44 動き補償部、45 逆量子化・逆変換部、46 加算部、47 イントラ予測用メモリ、48 ループフィルタ部、49 動き補償予測フレームメモリ、51 変換係数可変長符号化部、52 符号化パラメータ可変長符号化部、61 変換ブロックスキャン部(係数スキャン手段)、62 PosLast符号化部(最後位置情報符号化手段)、63 係数パラメータ格納用メモリ、64 並列コンテキスト値算出部、65 生起確率格納用メモリ、66 サブブロック符号化部(符号絶対値符号化手段)、71 変換係数可変長復号部、72 符号化パラメータ可変長復号部、81 PosLast復号部(最後位置情報復号手段)、82 係数パラメータ格納用メモリ、83 並列コンテキスト値算出部、84 生起確率格納用メモリ、85 サブブロック復号部(符号絶対値復号手段)、86 変換係数逆スキャン部。
Claims (4)
- 入力画像の圧縮データを可変長符号化して、上記圧縮データの符号化データが多重化されたビットストリームを生成する可変長符号化手段を備え、
上記可変長符号化手段は、上記圧縮データである変換係数をサブブロックに分割し、各々のサブブロックの変換係数をスキャンして圧縮データ系列を生成するとともに、各々のサブブロックの変換係数が非零であるか否かを示す係数パラメータを出力する係数スキャン手段と、上記係数スキャン手段から出力された係数パラメータを参照して、上記圧縮データ系列の中で、その変換係数のスキャン順で最後の非零の変換係数を特定し、その変換係数の位置を示す最後位置情報を可変長符号化する最後位置情報符号化手段と、各々のサブブロックの変換係数の正負符号及び絶対値を可変長符号化する符号絶対値符号化手段とを備え、
上記符号絶対値符号化手段は、上記スキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上であれば、上記最初の非零の変換係数については、正負符号を可変長符号化せずに絶対値だけを可変長符号化し、上記位置差が上記閾値より小さければ、上記最初の非零の変換係数についても、正負符号及び絶対値を可変長符号化する
ことを特徴とする動画像符号化装置。 - ビットストリームに多重化された符号化データから階層的に分割されている各々のサブブロックに係る圧縮データを可変長復号する可変長復号手段を備え、
上記可変長復号手段は、上記ビットストリームに多重化された符号化データから、各々のサブブロックにおける変換係数のスキャン順で、上記サブブロック内の最後の非零の変換係数の位置を示す最後位置情報を可変長復号する最後位置情報復号手段と、各々のサブブロックの変換係数の正負符号及び絶対値を可変長復号する符号絶対値復号手段とを備え、
上記符号絶対値復号手段は、上記スキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上である場合、上記最初の非零の変換係数の正負符号を復号せずに絶対値だけを可変長復号し、上記最後の非零の変換係数の位置が上記スキャン順で偶数位置であれば、上記最初の非零の変換係数の正負符号を正とし、上記最後の非零の変換係数の位置が上記スキャン順で奇数位置であれば、上記最初の非零の変換係数の正負符号を負とする
ことを特徴とする動画像復号装置。 - 可変長符号化手段が、入力画像の圧縮データを可変長符号化して、上記圧縮データの符号化データが多重化されたビットストリームを生成する可変長符号化処理ステップを備え、
上記可変長符号化処理ステップは、上記可変長符号化手段の係数スキャン手段が、上記圧縮データである変換係数をサブブロックに分割し、各々のサブブロックの変換係数をスキャンして圧縮データ系列を生成するとともに、各々のサブブロックの変換係数が非零であるか否かを示す係数パラメータを出力する係数スキャン処理ステップと、上記可変長符号化手段の最後位置情報符号化手段が、上記係数スキャン処理ステップで出力された係数パラメータを参照して、上記圧縮データ系列の中で、その変換係数のスキャン順で最後の非零の変換係数を特定し、その変換係数の位置を示す最後位置情報を可変長符号化する最後位置情報符号化処理ステップと、上記可変長符号化手段の符号絶対値符号化手段が、各々のサブブロックの変換係数の正負符号及び絶対値を可変長符号化する符号絶対値符号化処理ステップとを備え、
上記符号絶対値符号化処理ステップは、上記スキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上であれば、上記最初の非零の変換係数については、正負符号を可変長符号化せずに絶対値だけを可変長符号化し、上記位置差が上記閾値より小さければ、上記最初の非零の変換係数についても、正負符号及び絶対値を可変長符号化する
ことを特徴とする動画像符号化方法。 - 可変長復号手段が、ビットストリームに多重化された符号化データから階層的に分割されている各々のサブブロックに係る圧縮データを可変長復号する可変長復号処理ステップを備え、
上記可変長復号処理ステップは、上記可変長復号手段の最後位置情報復号手段が、上記ビットストリームに多重化された符号化データから、各々のサブブロックにおける変換係数のスキャン順で、上記サブブロック内の最後の非零の変換係数の位置を示す最後位置情報を可変長復号する最後位置情報復号処理ステップと、上記可変長復号手段の符号絶対値復号手段が、各々のサブブロックの変換係数の正負符号及び絶対値を可変長復号する符号絶対値復号処理ステップとを備え、
上記符号絶対値復号処理ステップは、上記スキャン順で、各々のサブブロック内の最初の非零の変換係数の位置と最後の非零の変換係数の位置との位置差が所定の閾値以上である場合、上記最初の非零の変換係数の正負符号を復号せずに絶対値だけを可変長復号し、上記最後の非零の変換係数の位置が上記スキャン順で偶数位置であれば、上記最初の非零の変換係数の正負符号を正とし、上記最後の非零の変換係数の位置が上記スキャン順で奇数位置であれば、上記最初の非零の変換係数の正負符号を負とする
ことを特徴とする動画像復号方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012143055A JP2014007643A (ja) | 2012-06-26 | 2012-06-26 | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012143055A JP2014007643A (ja) | 2012-06-26 | 2012-06-26 | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014007643A true JP2014007643A (ja) | 2014-01-16 |
Family
ID=50105000
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012143055A Pending JP2014007643A (ja) | 2012-06-26 | 2012-06-26 | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014007643A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015177343A (ja) * | 2014-03-14 | 2015-10-05 | 三菱電機株式会社 | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 |
WO2015194922A1 (ko) * | 2014-06-20 | 2015-12-23 | 삼성전자 주식회사 | 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 |
WO2018030294A1 (ja) * | 2016-08-10 | 2018-02-15 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 符号化装置、復号装置、符号化方法及び復号方法 |
-
2012
- 2012-06-26 JP JP2012143055A patent/JP2014007643A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015177343A (ja) * | 2014-03-14 | 2015-10-05 | 三菱電機株式会社 | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 |
WO2015194922A1 (ko) * | 2014-06-20 | 2015-12-23 | 삼성전자 주식회사 | 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 |
WO2018030294A1 (ja) * | 2016-08-10 | 2018-02-15 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 符号化装置、復号装置、符号化方法及び復号方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101791242B1 (ko) | 영상 부호화/복호화 장치 및 방법 | |
KR101728285B1 (ko) | 화상 부호화 장치, 화상 부호화 방법, 화상 복호 장치, 화상 복호 방법 및 기억 매체 | |
JP7012809B2 (ja) | 画像符号化装置、動画像復号装置、動画像符号化データ及び記録媒体 | |
JP2018082498A (ja) | 画像符号化装置、画像符号化方法、画像復号装置および画像復号方法 | |
WO2013065402A1 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
KR101749855B1 (ko) | 컬러 화상 부호화 장치, 컬러 화상 복호 장치, 컬러 화상 부호화 방법 및 컬러 화상 복호 방법 | |
WO2013001730A1 (ja) | 画像符号化装置、画像復号装置、画像符号化方法および画像復号方法 | |
WO2013108684A1 (ja) | 動画像復号装置、動画像符号化装置、動画像復号方法及び動画像符号化方法 | |
JP2014123988A (ja) | 画像復号装置及び画像復号方法 | |
WO2013114992A1 (ja) | カラー動画像符号化装置、カラー動画像復号装置、カラー動画像符号化方法及びカラー動画像復号方法 | |
JPWO2014049981A1 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2012186763A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2012023613A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2015076781A (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
JP2012023611A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
WO2012176387A1 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2014007643A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2013168913A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2015008341A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2015019257A (ja) | カラー動画像符号化装置、カラー動画像復号装置、カラー動画像符号化方法及びカラー動画像復号方法 | |
JP2014204311A (ja) | カラー画像符号化装置、カラー画像復号装置、カラー画像符号化方法及びカラー画像復号方法 | |
JP2014090327A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2014090326A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2013126145A (ja) | カラー動画像符号化装置、カラー動画像復号装置、カラー動画像符号化方法及びカラー動画像復号方法 | |
WO2014049982A1 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 |