(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-08
(45)【発行日】2024-03-18
(54)【発明の名称】符号化装置、復号装置、及びプログラム
(51)【国際特許分類】
H04N 19/12 20140101AFI20240311BHJP
H04N 19/176 20140101ALI20240311BHJP
H04N 19/136 20140101ALI20240311BHJP
【FI】
H04N19/12
H04N19/176
H04N19/136
(21)【出願番号】P 2019223205
(22)【出願日】2019-12-10
【審査請求日】2022-11-10
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001106
【氏名又は名称】弁理士法人キュリーズ
(72)【発明者】
【氏名】根本 慎平
(72)【発明者】
【氏名】岩村 俊輔
(72)【発明者】
【氏名】市ヶ谷 敦郎
【審査官】岩井 健二
(56)【参考文献】
【文献】Liang Zhao, Xin Zhao, Xiang Li, and Shan Liu,Non-CE3/6: Transform selection for MRL,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-O0546,15th Meeting: Gothenburg, SE,2019年06月,pp.1-5
【文献】Jin Heo, et al.,Non-CE3 : Simplification on transform selection for multiple reference line (MRL),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-O0353,15th Meeting: Gothenburg, SE,2019年06月,pp.1-3
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
画像をブロック分割して符号化する符号化装置であって、
符号化対象ブロックに隣接する参照画素列と前記符号化対象ブロックに隣接しない参照画素列とを含む複数の参照画素列の中から選択された参照画素列を用いて前記符号化対象ブロックをイントラ予測により予測するイントラ予測部と、
前記イントラ予測部が出力する予測ブロックと前記符号化対象ブロックとの差分を表す予測残差に対する変換処理を行って変換係数を出力する変換部と、
前記変換部が出力する前記変換係数に対する量子化処理を行って量子化変換係数を出力する量子化部と、
前記量子化変換係数を符号化して符号化データを出力するエントロピー符号化部と、を備え、
前記変換部は、
前記複数の参照画素列の中から選択された前記参照画素列に基づいて、前記変換処理で用いる変換基底を決定する変換基底決定部を有
し、
前記エントロピー符号化部は、
前記複数の参照画素列の中から選択された前記参照画素列を示す参照画素列情報を復号側に伝送し、
前記参照画素列情報が所定の列を示す場合、前記変換基底を示す変換基底情報を伝送しない制御を行うことを特徴とする符号化装置。
【請求項2】
前記変換基底決定部は、
前記複数の参照画素列の中から選択された前記参照画素列に基づいて、水平方向の前記変換処理で用いる水平方向変換基底と垂直方向の前記変換処理で用いる垂直方向変換基底とを決定することを特徴とする請求項
1に記載の符号化装置。
【請求項3】
前記変換基底決定部は、
前記複数の参照画素列の中から選択された前記参照画素列と、前記符号化対象ブロックのブロックサイズとに基づいて、前記変換処理で用いる変換基底を決定することを特徴とする請求項1
又は2に記載の符号化装置。
【請求項4】
符号化データを復号して、復号対象ブロックに対応する量子化変換係数を出力するエントロピー復号部と、
前記復号対象ブロックに隣接する参照画素列と前記復号対象ブロックに隣接しない参照画素列とを含む複数の参照画素列の中から選択された参照画素列を用いて、前記復号対象ブロックをイントラ予測により予測するイントラ予測部と、
前記エントロピー復号部が出力する前記量子化変換係数に対する逆量子化処理を行って変換係数を出力する逆量子化部と、
前記逆量子化部が出力する前記変換係数に対する逆変換処理を行って予測残差を出力する逆変換部と、を備え、
前記逆変換部は、
前記複数の参照画素列の中から選択された前記参照画素列に基づいて、前記逆変換処理で用いる変換基底を決定する変換基底決定部を有
し、
前記エントロピー復号部は、前記複数の参照画素列の中から符号化側で選択された前記参照画素列を示す参照画素列情報を取得し、
前記参照画素列情報が所定の列を示す場合、前記変換基底を示す変換基底情報を取得しない制御を行うことを特徴とする復号装置。
【請求項5】
前記変換基底決定部は、
前記取得された参照画素列情報が示す前記参照画素列に基づいて、前記変換基底を決定することを特徴とする請求項
4に記載の復号装置。
【請求項6】
前記変換基底決定部は、
前記複数の参照画素列の中から選択された前記参照画素列に基づいて、水平方向の前記逆変換処理で用いる水平方向変換基底と垂直方向の前記逆変換処理で用いる垂直方向変換基底とを決定することを特徴とする請求項
5に記載の復号装置。
【請求項7】
前記変換基底決定部は、
前記複数の参照画素列の中から選択された前記参照画素列と、前記復号対象ブロックのブロックサイズとに基づいて、前記逆変換処理で用いる変換基底を決定することを特徴とする請求項5
又は6に記載の復号装置。
【請求項8】
コンピュータを、請求項1乃至
3のいずれか1項に記載の符号化装置として機能させることを特徴とするプログラム。
【請求項9】
コンピュータを、請求項
4乃至
7のいずれか1項に記載の復号装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、符号化装置、復号装置、及びプログラムに関する。
【背景技術】
【0002】
静止画像及び動画像の伝送時又は保存時のデータ量圧縮のため、映像符号化方式の研究が行われている。近年、8K-SHVに代表されるような超高解像度映像の普及が進んでおり、膨大なデータ量の動画像を伝送するための手法としてAVC/H.264及びHEVC/H.265などの符号化方式が知られている。
【0003】
このような符号化技術において、フレーム内の空間的な相関を利用したイントラ予測が用いられている。イントラ予測では、符号化対象ブロックに隣接する復号済み参照画素を参照して、符号化対象ブロック内の各画素を予測して予測ブロックを生成する。符号化装置は、符号化対象ブロックと予測ブロックとの差分(誤差)を表す予測残差に対する変換処理を行って変換係数を生成し、変換係数を量子化及びエントロピー符号化して符号化データを出力する。
【0004】
MPEG(Moving Picture Experts Group)及びITU(International Telecommunication Union)が合同で標準化を行っている次世代映像符号化方式であるVVC(Versatile Video Coding)の規格案では、複数選択肢の参照画素列から1つを選択してイントラ予測に用いるMRL(Multi Reference Line)イントラ予測が採用されている(例えば、非特許文献1参照)。複数選択肢の参照画素列は、符号化対象ブロックに隣接する参照画素列と符号化対象ブロックに隣接しない参照画素列とを含む。
【0005】
また、VVCの規格案では、符号化対象ブロックごとに、DCT(Discrete Cosine Transform)2、DST(Discrete Sine Transform)7、DCT8の合計3つの変換基底を選択的に適用するMTS(Multiple transform selection)が採用されており、予測残差の特性により適した変換を行うことを可能としている。変換基底の切り替えについては、フラグを伝送して切り替える機能と、フラグを伝送せずに符号化対象ブロックのブロックサイズに応じて切り替える機能とを利用可能である。
【先行技術文献】
【非特許文献】
【0006】
【文献】JVET-P2001 “Versatile Video Coding (Draft 7)”
【発明の概要】
【発明が解決しようとする課題】
【0007】
上述のように、変換基底を切り替えるためにフラグを伝送する場合、フラグ分の符号量が増加して符号化効率が低下すると共に、符号化装置側で適切な変換基底を決定するための試行回数が増加して処理量の増大にもつながる。
【0008】
一方で、フラグを伝送せずに符号化対象ブロックのブロックサイズに応じて変換基底を切り替える機能もあるが、予測残差の特性に適した変換基底を適用するのは難しく、符号化効率向上の実現は困難である。
【0009】
そこで、本発明は、変換基底を切り替えるためにフラグを伝送しない場合であっても、予測残差の特性により適した変換基底を適用可能とすることで符号化効率を向上させる符号化装置、復号装置、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
第1の態様に係る符号化装置は、画像をブロック分割して符号化する装置である。前記符号化装置は、符号化対象ブロックに隣接する参照画素列と前記符号化対象ブロックに隣接しない参照画素列とを含む複数の参照画素列の中から選択された参照画素列を用いて、前記符号化対象ブロックをイントラ予測により予測するイントラ予測部と、前記イントラ予測部が出力する予測ブロックと前記符号化対象ブロックとの差分を表す予測残差に対する変換処理を行って変換係数を出力する変換部とを備える。前記変換部は、前記複数の参照画素列の中から選択された前記参照画素列に基づいて、前記変換処理で用いる変換基底を決定する変換基底決定部を有する。
【0011】
第2の態様に係る復号装置は、符号化データを復号して、復号対象ブロックに対応する量子化変換係数を出力するエントロピー復号部と、前記復号対象ブロックに隣接する参照画素列と前記復号対象ブロックに隣接しない参照画素列とを含む複数の参照画素列の中から選択された参照画素列を用いて、前記復号対象ブロックをイントラ予測により予測するイントラ予測部と、前記エントロピー復号部が出力する前記量子化変換係数に対する逆量子化処理を行って変換係数を出力する逆量子化部と、前記逆量子化部が出力する前記変換係数に対する逆変換処理を行って予測残差を出力する逆変換部とを備える。前記逆変換部は、前記複数の参照画素列の中から選択された前記参照画素列に基づいて、前記逆変換処理で用いる変換基底を決定する変換基底決定部を有する。
【0012】
第3の態様に係るプログラムは、コンピュータを、第1の態様に係る符号化装置又は第2の態様に係る復号装置として機能させる。
【発明の効果】
【0013】
本発明によれば、変換基底を切り替えるためにフラグを伝送しない場合であっても、予測残差の特性により適した変換基底を適用可能とすることで符号化効率を向上させる符号化装置、復号装置、及びプログラムを提供できる。
【図面の簡単な説明】
【0014】
【
図1】実施形態に係る符号化装置の構成を示す図である。
【
図2】DCT2(DCT-II)、DCT8(DCT-VIII)、DST7(DST-VII)の合計3つの変換基底を示す図である。
【
図3】実施形態に係る変換基底決定部が出力する変換基底情報を示す図である。
【
図4】実施形態に係るイントラ予測モードの候補を示す図である。
【
図5】実施形態に係るMRLイントラ予測を示す図である。
【
図6】実施形態に係る符号化装置の動作フローを示す図である。
【
図7】実施形態に係る復号装置の構成を示す図である。
【
図8】実施形態に係る復号装置の動作フローを示す図である。
【発明を実施するための形態】
【0015】
図面を参照して、実施形態に係る符号化装置及び復号装置について説明する。実施形態に係る符号化装置及び復号装置は、MPEGに代表される動画像の符号化及び復号をそれぞれ行う。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【0016】
<符号化装置>
まず、本実施形態に係る符号化装置の構成について説明する。
図1は、本実施形態に係る符号化装置1の構成を示す図である。
【0017】
図1に示すように、符号化装置1は、ブロック分割部100と、予測残差生成部110と、変換・量子化部120と、エントロピー符号化部130と、スキャン制御部131と、逆量子化・逆変換部140と、合成部150と、メモリ160と、予測部170とを有する。
【0018】
ブロック分割部100は、動画像を構成するフレーム(或いはピクチャ)単位の入力画像である原画像を複数の画像ブロックに分割し、分割により得た画像ブロックを予測残差生成部110に出力する。画像ブロックのサイズは、例えば32×32画素、16×16画素、8×8画素、又は4×4画素等である。画像ブロックの形状は正方形に限らず長方形(非正方形)であってもよい。画像ブロックは、符号化装置1が符号化を行う単位(すなわち、符号化対象ブロック)であり、且つ復号装置が復号を行う単位(すなわち、復号対象ブロック)である。このような画像ブロックはCU(Coding Unit)と呼ばれることがある。
【0019】
例えば、ブロック分割部100は、画像を構成する輝度信号及び色差信号に対してブロック分割を行うことで、輝度ブロック及び色差ブロックを出力する。輝度信号と色差信号とで分割を独立に制御可能であってもよい。以下において、輝度ブロック及び色差ブロックを特に区別しないときは単に符号化対象ブロックと呼ぶ。
【0020】
予測残差生成部110は、ブロック分割部100が出力する符号化対象ブロックと、符号化対象ブロックを予測部170が予測して得た予測ブロックとの差分(誤差)を表す予測残差を算出する。具体的には、予測残差生成部110は、ブロックの各画素値から予測ブロックの各画素値を減算することにより予測残差を算出し、算出した予測残差を変換・量子化部120に出力する。
【0021】
変換・量子化部120は、ブロック単位で変換処理及び量子化処理を行う。変換・量子化部120は、変換部121と、量子化部122とを有する。
【0022】
変換部121は、予測残差生成部110が出力する予測残差に対して変換処理を行って変換係数を算出し、算出した変換係数を量子化部122に出力する。変換処理とは、予測残差を空間領域から周波数領域に変換する処理をいい、例えば、離散コサイン変換(DCT)や離散サイン変換(DST)、カルーネンレーブ変換(KLT)等をいう。但し、変換処理には、画素領域の信号を周波数領域に変換することなくスケーリング等により調整する変換スキップを含んでもよい。変換部121は、符号化対象ブロックに適用する変換処理に関する情報をエントロピー符号化部130に出力する。
【0023】
変換部121は、複数の変換基底を符号化対象ブロックごとに切り替えるMTSを輝度信号の符号化において用いる。変換部121は、変換基底決定部121aを有する。変換基底決定部121aは、水平方向及び垂直方向のそれぞれについて、DCT-2、DST-7、DCT-8の中から変換基底(変換タイプ)を決定する。すなわち、変換部121は、複数種別の変換処理を切り替えて適用する。変換部121は、決定した変換基底を示す変換基底情報をエントロピー符号化部130及び逆変換部142に出力する。
【0024】
図2は、DCT2(DCT-II)、DCT8(DCT-VIII)、DST7(DST-VII)の合計3つの変換基底(Basis function)を示す図である。
図2において、Nは符号化対象ブロックのサイズを表す。DCT8は、インパルス応答が単調減少となる基底を含む。具体的には、DCT8は、最も低域のフィルタのインパルス応答T
0(j)が単調減少となる変換である(但し、j=0,…,N-1)。DCT8は、変換基底波形の一端が大きい値を持ち開放となる。DST7は、インパルス応答が単調増加となる基底を含む。具体的には、DST7は、最も低域のフィルタのインパルス応答T
0(j)が単調増加となる変換である(但し、j=0,…,N-1)。DST7は、変換基底波形の一端が閉じている。
【0025】
本実施形態では、予測残差に適用する複数種別の変換処理としてDCT2、DCT8、DST7の3つを例に説明するが、上述したような単調増加や単調減少の特徴を持つ基底を含む変換を選択的に切り替えて適用するものであればよく、これら3つの変換基底に限定されない。例えば、DCT1やDCT5などの他のDCT・DSTを用いてもよいし、離散ウェーブレット変換などの変換を用いてもよい。
【0026】
図3は、本実施形態に係る変換基底決定部121aが出力する変換基底情報を示す図である。
【0027】
図3に示すように、変換基底決定部121aは、MTS_CU_flag、MTS_Hor_flag、及びMTS_Ver_flagの合計3つの変換フラグを変換基底情報として出力する。
【0028】
変換基底決定部121aは、水平変換処理及び垂直変換処理の両方にDCT2を適用する場合、MTS_CU_flag=0とする。一方、変換基底決定部121aは、水平変換処理及び垂直変換処理の少なくともいずれか一方にDCT8もしくはDST7を適用する場合、水平変換処理及び垂直変換処理に適用する変換基底の組み合わせに応じてMTS_Hor_flag及びMTS_Ver_flagを設定する。
【0029】
これらの3つの変換フラグは、後述のエントロピー符号化部130によりエントロピー符号化処理を施されてストリーム出力される。但し、エントロピー符号化部130は、MTS_CU_flag=0である場合、MTS_Hor_flag及びMTS_Ver_flagをストリーム出力しなくてもよい。また、詳細については後述するが、エントロピー符号化部130は、符号化対象ブロックにMRLが適用される場合、3つの変換フラグをストリーム出力しなくてもよい。
【0030】
量子化部122は、変換部121が出力する変換係数を量子化パラメータ(Qp)及び量子化行列を用いて量子化し、量子化した変換係数である量子化変換係数をエントロピー符号化部130及び逆量子化・逆変換部140に出力する。
【0031】
エントロピー符号化部130は、量子化部122が出力する量子化変換係数に対してエントロピー符号化を行い、データ圧縮を行って符号化データ(ビットストリーム)を生成し、符号化データを符号化装置1の外部に出力する。エントロピー符号化には、ハフマン符号やCABAC(Context-based Adaptive Binary Arithmetic Coding)等を用いることができる。
【0032】
また、エントロピー符号化部130は、変換処理に関する情報を変換部121から入力し、変換処理に関する情報を符号化データ中で復号側に伝送する。変換処理に関する情報は、上述した変換基底情報を含み得る。
【0033】
さらに、エントロピー符号化部130は、予測処理に関する情報を予測部170から入力し、入力した予測処理に関する情報を符号化データ中で復号側に伝送する。予測処理に関する情報は、後述する参照画素列情報を含み得る。
【0034】
逆量子化・逆変換部140は、ブロック単位で逆量子化処理及び逆変換処理を行う。逆量子化・逆変換部140は、逆量子化部141と、逆変換部142とを有する。
【0035】
逆量子化部141は、量子化部122が行う量子化処理に対応する逆量子化処理を行う。具体的には、逆量子化部141は、量子化部122が出力する量子化変換係数を、量子化パラメータ(Qp)及び量子化行列を用いて逆量子化することにより変換係数を復元し、復元した変換係数を逆変換部142に出力する。
【0036】
逆変換部142は、変換部121が出力する変換基底情報に基づいて、変換部121が行う変換処理に対応する逆変換処理を行う。例えば、変換部121が離散コサイン変換を行った場合には、逆変換部142は逆離散コサイン変換を行う。逆変換部142は、逆量子化部141が出力する変換係数に対して逆変換処理を行って予測残差を復元し、復元した予測残差である復元予測残差を合成部150に出力する。
【0037】
合成部150は、逆変換部142が出力する復元予測残差を、予測部170が出力する予測ブロックと画素単位で合成する。合成部150は、復元予測残差の各画素値と予測ブロックの各画素値を加算して符号化対象ブロックを復号(再構成)し、復号済みブロックをメモリ160に出力する。なお、復号済みブロックは、再構成ブロックと呼ばれることもある。
【0038】
メモリ160は、合成部150が出力する復号済みブロックを記憶し、復号済みブロックをフレーム単位で復号済み画像として蓄積する。メモリ160は、記憶している復号済みブロック若しくは復号済み画像を予測部170に出力する。なお、合成部150とメモリ160との間にループフィルタが介在してもよい。
【0039】
予測部170は、ブロック単位で予測処理を行う。予測部170は、インター予測部171と、イントラ予測部172と、切替部173とを有する。
【0040】
インター予測部171は、フレーム間の相関を利用したインター予測を行う。具体的には、インター予測部171は、メモリ160に記憶された復号済み画像を参照画像として用いて、ブロックマッチングなどの手法により動きベクトルを算出し、符号化対象ブロックを予測してインター予測ブロックを生成し、生成したインター予測ブロックを切替部173に出力する。ここで、インター予測部171は、複数の参照画像を用いるインター予測(典型的には、双予測)や、1つの参照画像を用いるインター予測(片方向予測)の中から最適なインター予測方法を選択し、選択したインター予測方法を用いてインター予測を行う。インター予測部171は、インター予測に関する情報(動きベクトル等)をエントロピー符号化部130に出力する。
【0041】
イントラ予測部172は、フレーム内の空間的な相関を利用したイントラ予測を行う。具体的には、イントラ予測部172は、メモリ160に記憶された復号済み画像のうち、符号化対象ブロックの周辺にある復号済み画素を参照してイントラ予測ブロックを生成し、生成したイントラ予測ブロックを切替部173に出力する。イントラ予測部172は、複数のイントラ予測モードの中から、符号化対象ブロックに適用するイントラ予測モードを選択し、選択したイントラ予測モードを用いて対象ブロックを予測する。
【0042】
図4は、本実施形態に係るイントラ予測モードの候補を示す図である。
図4に示すように、輝度ブロックについて、イントラ予測モードの候補は、0から66までの67通りがある。イントラ予測モードのモード「0」はPlanar予測であり、イントラ予測モードのモード「1」はDC予測であり、イントラ予測モードのモード「2」乃至「66」は方向性予測である。方向性予測において、矢印の方向は参照方向を示し、矢印の起点は予測対象の画素の位置を示し、矢印の終点はこの予測対象画素の予測に用いる参照画素の位置を示す。
【0043】
本実施形態において、イントラ予測部172は、MRLイントラ予測を行う機能を有する。
図5は、本実施形態に係るMRLイントラ予測を示す図である。
図5に示す各円は、画素を表している。
【0044】
図5に示すように、MRLイントラ予測は、イントラ予測において、複数の参照画素列のうちいずれか1つの参照画素列を予測に用いて予測ブロックを生成するとともに、参照画素列を示すシンタックスを復号側に伝送する手法である。
【0045】
図5において、複数の参照画素列が、符号化対象ブロックに隣接する隣接参照画素列(0列目)と、隣接参照画素列よりも外側に位置する第1参照画素列(1列目)と、第1参照画素列よりも外側に位置する第2参照画素列(2列目)とを含む一例を示している。
【0046】
ただし、隣接参照画素列よりも外側に位置する参照画素列については2列目よりも離れた参照画素列を利用しても構わない。例えば、隣接の0列目の参照画素列を隣接参照画素列とし、0列目の参照画素列よりも外側に位置する1列目の参照画素列を第1参照画素列とし、1列目の参照画素列よりも外側に位置する3列目の参照画素列を第2参照画素列としてもよい。
【0047】
従来のイントラ予測では、符号化対象ブロックに隣接する画素を参照画素として用いて符号化対象ブロック内の各画素を予測しており、参照画素に隣接した予測対象画素に対する予測精度が高い。一方、従来のイントラ予測は、参照画素から距離をとった予測対象画素の予測効率が徐々に低下し、絵柄によっては平均的に見ると符号化対象ブロック内の画素の予測精度が必ずしも高くないという欠点がある。この現象に着目し、MRLイントラ予測では、符号化対象ブロックの平均的な予測精度を上げるために、符号化対象ブロックに隣接する画素ではなく、数ラインはなれた画素列を参照画素として用いて予測を行うことを可能としている。
【0048】
例えば、イントラ予測部172は、イントラ予測にMPM(Most Probable Modes)を適用する際に、MRLイントラ予測を適用する。符号化対象ブロック及びその周辺ブロックにおいて利用される予測モードは高い相関があるため、MPMでは、符号化対象ブロックの左及び上のブロックで利用された予測モードと、それらの予測モードに近い方向の予測モードに優先順位をつけて、他の予測モードに対して相対的に少ないデータ量を割り当てる。また、MRLイントラ予測は、Planar予測及びDC予測以外の予測モードに適用される。すなわち、Planar予測及びDC予測は、隣接参照画素列のみを参照する。
【0049】
イントラ予測部172は、参照画素列選択部172aを有する。参照画素列選択部172aは、MRLイントラ予測を適用する場合において、隣接参照画素列(0列目)、第1参照画素列(1列目)、及び第2参照画素列(2列目)の中から、イントラ予測に用いる1つの参照画素列を選択する。上述したように、第2参照画素列は、3列目の参照画素列であってもよい。参照画素列選択部172aは、選択した参照画素列を示す参照画素列情報(参照画素列シンタックス)を変換部121及びエントロピー符号化部130に出力する。また、イントラ予測部172は、イントラ予測モードを示すモード情報(予測モードシンタックス)をエントロピー符号化部130に出力する。
【0050】
切替部173は、インター予測部171が出力するインター予測ブロックとイントラ予測部172が出力するイントラ予測ブロックとを切り替えて、いずれかの予測ブロックを予測残差生成部110及び合成部150に出力する。
【0051】
このように、本実施形態に係る符号化装置1は、符号化対象ブロックに隣接する参照画素列と符号化対象ブロックに隣接しない参照画素列とを含む複数の参照画素列の中から選択された参照画素列を用いて、符号化対象ブロックをイントラ予測により予測するイントラ予測部172と、イントラ予測部172が出力する予測ブロックと符号化対象ブロックとの差分を表す予測残差に対する変換処理を行って変換係数を出力する変換部121とを有する。
【0052】
本実施形態において、変換部121の変換基底決定部121aは、イントラ予測部172がMRLイントラ予測を行う場合、複数の参照画素列の中から選択された参照画素列に基づいて、変換処理で用いる変換基底を決定する。具体的には、変換基底決定部121aは、参照画素列選択部172aが出力する参照画素列情報から参照画素列を特定し、特定した参照画素列と対応付けられた変換基底を決定する。
【0053】
ここで、変換基底決定部121aは、複数の参照画素列の中から選択された参照画素列に基づいて、水平方向の変換処理で用いる水平方向変換基底と垂直方向の変換処理で用いる垂直方向変換基底とを決定する。
【0054】
このように、変換部121の変換基底決定部121aは、MRLイントラ予測で選択された参照画素列に基づいて変換基底を決定する。すなわち、参照画素列と変換基底とを対応付けることにより、変換基底を切り替えるためにフラグを復号側に伝送する必要がなくなる。具体的には、エントロピー符号化部130は、変換基底を示す変換基底情報を伝送せずに、選択された参照画素列を示す参照画素列情報を復号側に伝送する。このため、変換基底を切り替えるためのフラグ分の符号量を削減し、符号化効率を向上させることができると共に、適切な変換基底を決定するための処理量(すなわち、試行回数)を削減できる。
【0055】
表1に、参照画素列と変換基底との対応付けの一例を示す。
【0056】
【0057】
表1に示す例において、MRLイントラ予測で選択された参照画素列が0列目の参照画素列(
図5参照)である場合、変換基底決定部121aは、DST-7を水平方向変換基底及び垂直方向変換基底として決定する。0列目の参照画素列を用いてイントラ予測を行う場合、0列目の参照画素列に隣接するブロック境界領域の予測精度が高く、ブロック境界領域の予測残差はゼロに近いと考えられる。DST7は、変換基底波形の一端が閉じており、このような特徴を持つ予測残差に好適である。ただし表1の参照画素列は一例であり、隣接参照画素列よりも外側に位置する参照画素列については2列目よりも離れた参照画素列(例えば、3列目)を利用しても構わない。
【0058】
MRLイントラ予測で選択された参照画素列が1列目の参照画素列(
図5参照)である場合、変換基底決定部121aは、DCT-2を水平方向変換基底及び垂直方向変換基底として決定する。1列目の参照画素列を用いてイントラ予測を行う場合、ブロックの平均的な予測精度を上げるようなイントラ予測が行われるため、DCT-2を用いることとしている。
【0059】
MRLイントラ予測で選択された参照画素列が2列目の参照画素列(
図5参照)である場合、変換基底決定部121aは、DST-7を水平方向変換基底及び垂直方向変換基底として決定する。2列目の参照画素列を用いてイントラ予測を行う場合、予測残差の特徴が不定であるため、DST-7を用いることとしている。但し、DST-7に代えてDCT-2を用いることとしてもよい。
【0060】
次に、本実施形態に係る符号化装置1の動作フローについて説明する。
図6は、本実施形態に係る符号化装置1の動作フローを示す図である。ここでは、MRLイントラ予測を適用する場合において、変換基底の決定に関する動作のみを示している。
【0061】
図6に示すように、ステップS11において、イントラ予測部172の参照画素列選択部172aは、隣接参照画素列(0列目)、第1参照画素列(1列目)、及び第2参照画素列(2列目)の中から、符号化対象ブロックのイントラ予測に用いる1つの参照画素列を選択する。参照画素列選択部172aは、選択した参照画素列を示す参照画素列情報(参照画素列シンタックス)を変換部121及びエントロピー符号化部130に出力する。
【0062】
ステップS12において、イントラ予測部172は、ステップS11で選択した参照画素列を参照して符号化対象ブロックのイントラ予測を行い、予測ブロックを出力する。ここで、イントラ予測部172は、MPM中のイントラ予測モードを用いてイントラ予測を行ってもよい。
【0063】
ステップS13において、予測残差生成部110は、イントラ予測部172が出力する予測ブロックと符号化対象ブロックとの差分を表す予測残差を生成し、予測残差を変換部121に出力する。
【0064】
一方、ステップS14において、変換部121の変換基底決定部121aは、参照画素列選択部172aが出力する参照画素列情報から参照画素列を特定し、特定した参照画素列と対応付けられた変換基底を決定する。例えば、変換基底決定部121aは、表1に示した対応付けに応じて、参照画素列の番号から変換基底を決定する。
【0065】
ステップS15において、変換部121は、変換基底決定部121aが決定した変換基底を用いて予測残差に対する変換処理を行い、変換係数を出力する。量子化部122は、変換部121が出力する変換係数に対する量子化処理を行い、量子化変換係数を出力する。
【0066】
ステップS16において、エントロピー符号化部130は、量子化部122が出力する量子化変換係数を符号化して符号化データを出力する。ここで、エントロピー符号化部130は、変換部121が出力する変換基底情報を伝送せずに、イントラ予測部172(参照画素列選択部172a)が出力する参照画素列情報を復号側に伝送する。
【0067】
<復号装置>
次に、本実施形態に係る復号装置の構成について、符号化装置1との相違点を主として説明する。
図7は、本実施形態に係る復号装置2の構成を示す図である。
【0068】
図7に示すように、復号装置2は、エントロピー復号部200と、逆量子化・逆変換部210と、合成部220と、メモリ230と、予測部240とを有する。
【0069】
エントロピー復号部200は、符号化データを復号して、復号対象ブロックに対応する量子化変換係数を逆量子化・逆変換部210に出力する。
【0070】
また、エントロピー復号部200は、変換処理に関する情報を取得し、変換処理に関する情報を逆量子化・逆変換部210(逆変換部212)に出力する。変換処理に関する情報は、上述した変換基底情報を含み得る。但し、MRLイントラ予測が適用されている場合、エントロピー復号部200は、変換基底情報を取得しない。
【0071】
さらに、エントロピー復号部200は、予測処理に関する情報を取得し、予測処理に関する情報を予測部240に出力する。予測処理に関する情報は、上述した参照画素列情報を含み得る。エントロピー復号部200は、参照画素列情報を逆量子化・逆変換部210(逆変換部212)に出力する。
【0072】
逆量子化・逆変換部210は、ブロック単位で逆量子化処理及び逆変換処理を行う。逆量子化・逆変換部210は、逆量子化部211と、逆変換部212とを有する。
【0073】
逆量子化部211は、符号化装置1の量子化部122が行う量子化処理に対応する逆量子化処理を行う。逆量子化部211は、エントロピー復号部200が出力する量子化変換係数を、量子化パラメータ(Qp)及び量子化行列を用いて逆量子化することにより、復号対象ブロックの変換係数を復元し、復元した変換係数を逆変換部212に出力する。
【0074】
逆変換部212は、符号化装置1の変換部121が行う変換処理に対応する逆変換処理を行う。逆変換部212は、逆量子化部211が出力する変換係数に対して逆変換処理を行って予測残差を復元し、復元した予測残差(復元予測残差)を合成部220に出力する。
【0075】
逆変換部212は、変換基底決定部212aを有する。変換基底決定部212aは、MRLイントラ予測が適用されていない場合、エントロピー復号部200が出力する変換基底情報に基づいて、逆量子化処理で用いる変換基底を決定する(
図3参照)。
【0076】
一方、MRLイントラ予測が適用されている場合、変換基底決定部212aは、エントロピー復号部200が出力する参照画素列情報に基づいて、逆量子化処理で用いる変換基底を決定する(表1参照)。具体的には、変換基底決定部121aは、参照画素列情報から参照画素列を特定し、特定した参照画素列と対応付けられた変換基底を決定する。ここで、変換基底決定部121aは、選択された参照画素列に基づいて、水平方向の逆変換処理で用いる水平方向変換基底と垂直方向の逆変換処理で用いる垂直方向変換基底とを決定する。
【0077】
合成部220は、逆変換部212が出力する予測残差と、予測部240が出力する予測ブロックとを画素単位で合成することにより、元のブロックを復号(再構成)し、復号済みブロックをメモリ230に出力する。
【0078】
メモリ230は、合成部220が出力する復号済みブロックを記憶し、復号済みブロックをフレーム単位で復号済み画像として蓄積する。メモリ230は、復号済みブロック若しくは復号済み画像を予測部240に出力する。また、メモリ230は、フレーム単位の復号済み画像を復号装置2の外部に出力する。なお、合成部220とメモリ230との間にループフィルタが介在してもよい。
【0079】
予測部240は、ブロック単位で予測を行う。予測部240は、インター予測部241と、イントラ予測部242と、切替部243とを有する。
【0080】
インター予測部241は、フレーム間の相関を利用したインター予測を行う。具体的には、インター予測部241は、エントロピー復号部200が出力するインター予測に関する情報(例えば、動きベクトル情報)に基づいて、メモリ230に記憶された復号済み画像を参照画像として用いて符号化対象ブロックを予測してインター予測ブロックを生成し、生成したインター予測ブロックを切替部243に出力する。
【0081】
イントラ予測部242は、フレーム内の空間的な相関を利用したイントラ予測を行う。具体的には、イントラ予測部242は、エントロピー復号部200が出力するイントラ予測に関する情報(例えば、イントラ予測モード情報)に応じたイントラ予測モードを用いて、メモリ230に記憶された復号済み画像のうち符号化対象ブロックの周辺にある復号済み画素を参照してイントラ予測ブロックを生成し、生成したイントラ予測ブロックを切替部243に出力する。
【0082】
本実施形態において、イントラ予測部242は、MRLイントラ予測を行う機能を有する。イントラ予測部242は、エントロピー復号部200が出力する参照画素列情報に基づいて、複数の参照画素列のうちいずれか1つの参照画素列を予測に用いて予測ブロックを生成する。
【0083】
切替部243は、インター予測部241が出力するインター予測ブロックとイントラ予測部242が出力するイントラ予測ブロックとを切り替えて、いずれかの予測ブロックを合成部220に出力する。
【0084】
このように、本実施形態に係る復号装置2は、復号対象ブロックに隣接する参照画素列と復号対象ブロックに隣接しない参照画素列とを含む複数の参照画素列の中から選択された参照画素列を用いて、復号対象ブロックをイントラ予測により予測するイントラ予測部242と、エントロピー復号部200が出力する量子化変換係数に対する逆量子化処理を行って変換係数を出力する逆量子化部211と、逆量子化部211が出力する変換係数に対する逆変換処理を行って予測残差を出力する逆変換部212とを有する。逆変換部212は、複数の参照画素列の中から選択された参照画素列に基づいて、逆変換処理で用いる変換基底を決定する変換基底決定部212aを有する。
【0085】
また、本実施形態において、エントロピー復号部200は、変換基底を示す変換基底情報を取得せずに、複数の参照画素列の中から符号化側で選択された参照画素列を示す参照画素列情報を取得する。変換基底決定部212aは、取得された参照画素列情報が示す参照画素列に基づいて、変換基底を決定する。
【0086】
このため、本実施形態に係る復号装置2によれば、変換基底を切り替えるためにフラグを伝送しない場合であっても、予測残差の特性により適した変換基底を適用可能とすることで符号化効率を向上させることができる。
【0087】
次に、本実施形態に係る復号装置2の動作フローについて説明する。
図8は、本実施形態に係る復号装置2の動作フローを示す図である。ここでは、MRLイントラ予測を適用する場合において、変換基底の決定に関する動作のみを示している。
【0088】
図8に示すように、ステップS21において、エントロピー復号部200は、符号化データを復号して、復号対象ブロックに対応する量子化変換係数を逆量子化部211に出力する。エントロピー復号部200は、変換基底を示す変換基底情報を取得せずに、符号化側で選択された参照画素列を示す参照画素列情報を取得し、取得した参照画素列情報を逆変換部212及びイントラ予測部242に出力する。
【0089】
ステップS22において、イントラ予測部242は、参照画素列情報が示す参照画素列を参照し、MRLイントラ予測より復号対象ブロックを予測して予測ブロックを出力する。
【0090】
一方、ステップS23において、逆変換部212の変換基底決定部212aは、エントロピー復号部200が出力する参照画素列情報から参照画素列を特定し、特定した参照画素列と対応付けられた変換基底を決定する。例えば、変換基底決定部121aは、表1に示した対応付けに応じて、参照画素列の番号から変換基底を決定する。
【0091】
ステップS24において、逆量子化部211は、エントロピー復号部200が出力する量子化変換係数に対する逆量子化処理を行って変換係数を出力する。逆変換部212は、逆量子化部211が出力する変換係数に対して、ステップS23で決定した変換基底を用いて逆変換処理を行い、予測残差を合成部220に出力する。
【0092】
ステップS25において、合成部220は、逆変換部212が出力する予測残差と、予測部240が出力する予測ブロックとを画素単位で合成することにより、元のブロックを復号(再構成)し、復号済みブロックをメモリ230に出力する。
【0093】
<その他の実施形態>
上述した実施形態において、MRLイントラ予測が適用される場合、選択された参照画素列のみに基づいて変換基底を決定する一例について説明した。しかしながら、選択された参照画素列だけではなく、他の基準に基づいて変換基底を決定してもよい。例えば、選択された参照画素列とブロックサイズとに基づいて変換基底を決定してもよい。
【0094】
すなわち、他の実施形態に係る符号化装置1において、変換基底決定部121aは、複数の参照画素列の中から選択された参照画素列と、符号化対象ブロックのブロックサイズとに基づいて、変換処理で用いる変換基底を決定する。他の実施形態に係る復号装置2において、変換基底決定部212aは、複数の参照画素列の中から選択された参照画素列と、復号対象ブロックのブロックサイズとに基づいて、逆変換処理で用いる変換基底を決定する。
【0095】
例えば、変換基底決定部121a及び212aは、ブロックサイズが所定サイズ以下である場合、表1に示すような対応付けに応じて参照画素列から変換基底を適応的に決定する。一方、ブロックサイズが所定サイズを超える場合、変換基底決定部121a及び212aは、表1に示すような対応付けにかかわらず、予め定められた変換基底(例えば、DCT-2)を決定する。
【0096】
符号化装置1が行う各処理をコンピュータに実行させるプログラムが提供されてもよい。復号装置2が行う各処理をコンピュータに実行させるプログラムが提供されてもよい。プログラムは、コンピュータ読取り可能媒体に記録されていてもよい。コンピュータ読取り可能媒体を用いれば、コンピュータにプログラムをインストールすることが可能である。ここで、プログラムが記録されたコンピュータ読取り可能媒体は、非一過性の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROMやDVD-ROM等の記録媒体であってもよい。
【0097】
符号化装置1が行う各処理を実行する回路を集積化し、符号化装置1を半導体集積回路(チップセット、SoC)により構成してもよい。復号装置2が行う各処理を実行する回路を集積化し、復号装置2を半導体集積回路(チップセット、SoC)により構成してもよい。
【0098】
以上、図面を参照して実施形態について詳しく説明したが、具体的な構成は上述のものに限られることはなく、要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【符号の説明】
【0099】
1 :符号化装置
2 :復号装置
100 :ブロック分割部
110 :予測残差生成部
120 :変換・量子化部
121 :変換部
121a :変換基底決定部
122 :量子化部
130 :エントロピー符号化部
131 :スキャン制御部
140 :逆量子化・逆変換部
141 :逆量子化部
142 :逆変換部
150 :合成部
160 :メモリ
170 :予測部
171 :インター予測部
172 :イントラ予測部
172a :参照画素列選択部
173 :切替部
200 :エントロピー復号部
210 :逆量子化・逆変換部
211 :逆量子化部
212 :逆変換部
212a :変換基底決定部
220 :合成部
230 :メモリ
240 :予測部
241 :インター予測部
242 :イントラ予測部
243 :切替部