(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-02-16
(45)【発行日】2023-02-27
(54)【発明の名称】予測画像補正装置、画像符号化装置、画像復号装置、及びプログラム
(51)【国際特許分類】
H04N 19/117 20140101AFI20230217BHJP
H04N 19/139 20140101ALI20230217BHJP
H04N 19/14 20140101ALI20230217BHJP
H04N 19/176 20140101ALI20230217BHJP
H04N 19/82 20140101ALI20230217BHJP
【FI】
H04N19/117
H04N19/139
H04N19/14
H04N19/176
H04N19/82
(21)【出願番号】P 2018178118
(22)【出願日】2018-09-21
【審査請求日】2021-08-20
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001106
【氏名又は名称】弁理士法人キュリーズ
(72)【発明者】
【氏名】岩村 俊輔
(72)【発明者】
【氏名】市ヶ谷 敦郎
(72)【発明者】
【氏名】根本 慎平
【審査官】清山 昂平
(56)【参考文献】
【文献】特開2011-066569(JP,A)
【文献】特開2014-131162(JP,A)
【文献】特表2007-503775(JP,A)
【文献】特開2011-030175(JP,A)
【文献】国際公開第2018/123800(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N19/00-19/98
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
画像を構成するブロックごとにインター予測をして得られた予測画像を補正する予測画像補正装置であって、
前記インター予測が行われた対象ブロックに適用された動きベクトルと、前記対象ブロックに隣接する復号済みの1又は複数の隣接ブロックに適用された動きベクトルとの比較により、前記1又は複数の隣接ブロックについて前記対象ブロックとの動きの連続性を評価する連続性評価部と、
前
記隣接ブロックの復号画像のうち前記対象ブロックとの境界領域の復号画像を用いて、前記対象ブロックの予測画像のうち
前記隣接ブロックとの境界領域の予測画像を補正する補正部と、を備え
、
前記対象ブロックは、複数の小領域に分割され、
前記補正部は、前記小領域ごとに評価した前記連続性に基づいて、前記予測画像を補正することを特徴とする予測画像補正装置。
【請求項2】
画像を構成するブロックごとにインター予測をして得られた予測画像を補正する予測画像補正装置であって、
前記インター予測が行われた対象ブロックに適用された動きベクトルと、前記対象ブロックに隣接する復号済みの1又は複数の隣接ブロックに適用された動きベクトルとの比較により、前記1又は複数の隣接ブロックについて前記対象ブロックとの動きの連続性を評価する連続性評価部と、
前記隣接ブロックの復号画像のうち前記対象ブロックとの境界領域の復号画像を用いて、前記対象ブロックの予測画像のうち前記隣接ブロックとの境界領域の予測画像を補正する補正部と、を備え、
前記補正部は、前記隣接ブロックの予測残差を更に用いて前記補正を行うことを特徴とする予測画像補正装置。
【請求項3】
前記連続性評価部により評価された前記連続性が予め定めた値よりも低い前記隣接ブロックが存在する場合に、前記連続性が予め定めた値よりも低い前記隣接ブロックの予測残差のうち前記対象ブロックとの境界領域の予測残差のエネルギーを算出する残差エネルギー算出部をさらに備え、
前記補正部は、前記連続性が予め定めた値よりも低い前記隣接ブロックが存在し、かつ前記残差エネルギー算出部により算出された前記エネルギーが閾値よりも小さい場合に、前記補正を行うことを特徴とする請求項2に記載の予測画像補正装置。
【請求項4】
インター予測を行うインター予測部と、請求項1
乃至請求項3のいずれか1項に記載の予測画像補正装置と、を備えることを特徴とする画像符号化装置。
【請求項5】
インター予測を行うインター予測部と、請求項1
乃至請求項3のいずれか1項に記載の予測画像補正装置と、を備えることを特徴とする画像復号装置。
【請求項6】
コンピュータを請求項1
乃至請求項3のいずれか1項に記載の予測画像補正装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、予測画像補正装置、画像符号化装置、画像復号装置、及びプログラムに関する。
【背景技術】
【0002】
非特許文献1に記載のHEVCに代表される従来の映像符号化方式では、画像符号化装置は、原画像をブロックに分割し、ブロックごとにインター予測とイントラ予測とを切り替えながら予測を行い、予測により得られた予測画像の誤差を表す予測残差に対し直交変換、量子化、エントロピー符号化を施すことにより、ストリーム出力するように構成されている。
【0003】
かかる映像符号化方式におけるインター予測では、符号化対象のブロック(Coding Unit : CU)に適用する動きベクトルが、当該符号化対象CUに隣接する隣接CUに適用する動きベクトルと異なる場合には、符号化対象CUの予測画像及び隣接CUの予測画像は特徴が大きく異なる。
【0004】
図1に示す従来の映像符号化方式の例では、オブジェクト#1は左上に動いており、オブジェクト#2は右上に動いているものとする。オブジェクト#1のみが含まれる符号化対象CUの左側に位置する隣接CU#1に対するインター予測では、オブジェクト#1の動きと同様の動きベクトル(MV#3)が適用される可能性が高い。符号化対象CUは、オブジェクト#1及びオブジェクト#2の両方を含むオブジェクト境界に位置するが、多くの領域をオブジェクト#1が占めることから、左側に隣接する隣接CU#1の動きベクトル(MV#2)と同様の動きベクトル(MV#1)が符号化対象CUに適用される可能性が高い。
【0005】
隣り合うCU同士の動きベクトルが同様である場合には、CUの境界領域の動きの連続性は高く、予測精度は高くなる可能性が高い。一方、
図1の符号化対象CUの上側に隣接するCU#2はオブジェクト#2を多く含むことから、オブジェクト#2の動きと同様の動きベクトル(MV#3)が適用される可能性が高い。すなわち、符号化対象CUに適用する動きベクトル(MV#1)とCU#1に適用する動きベクトル(MV#3)は大きく異なる可能性が高い。このような隣り合うCU同士の動きベクトルが大きく異なる場合には、これらのCUのどちらか少なくとも一方にオブジェクト境界が含まれる可能性が高い。
【先行技術文献】
【非特許文献】
【0006】
【文献】Recommendation ITU-T H.265,(12/2016), “High efficiency video coding”, International Telecommunication Union
【発明の開示】
【発明が解決しようとする課題】
【0007】
オブジェクト境界における動きベクトルの不連続性は予測精度の低下を招き、符号化効率が低下してしまう問題がある。HEVCでは、この問題を解決するため、ループフィルタにおいて、符号化対象CUに適用した動きベクトルと隣接ブロックに適用した動きベクトルとの差が予め規定した値より大きいか否かに応じて、ブロック歪を除去するデブロッキングフィルタを適用するか否かを制御する手法が導入されている。
【0008】
しかしながら、予測(インター予測)においては、上記の動きベクトルの不連続性にかかわらず同一の処理が適用されているため、直交変換係数の伝送に必要な情報量がオブジェクト境界付近のブロックで増大し、符号化効率が低下してしまう問題がある。
【0009】
そこで、本発明は、インター予測を行う場合において符号化効率を向上させることが可能な予測画像補正装置、画像符号化装置、画像復号装置、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
第1の特徴に係る予測画像補正装置は、画像を構成するブロックごとにインター予測をして得られた予測画像を補正する予測画像補正装置であって、前記インター予測が行われた対象ブロックに適用された動きベクトルと、前記対象ブロックに隣接する復号済みの1又は複数の隣接ブロックに適用された動きベクトルとの比較により、前記1又は複数の隣接ブロックについて前記対象ブロックとの動きの連続性を評価する連続性評価部と、前記連続性評価部により評価された前記連続性が予め定めた値よりも低い隣接ブロックが存在する場合に、前記連続性が予め定めた値よりも低い隣接ブロックの復号画像のうち前記対象ブロックとの境界領域の復号画像を用いて、前記対象ブロックの予測画像のうち前記連続性が予め定めた値よりも低い隣接ブロックとの境界領域の予測画像を補正する補正部とを備えることを要旨とする。
【0011】
第2の特徴に係る画像符号化装置は、インター予測を行うインター予測部と、第1の特徴に係る予測画像補正装置とを備えることを要旨とする。
【0012】
第3の特徴に係る画像復号装置は、インター予測を行うインター予測部と、第1の特徴に係る予測画像補正装置とを備えることを要旨とする。
【0013】
第4の特徴に係るプログラムは、コンピュータを第1の特徴に係る予測画像補正装置として機能させることを要旨とする。
【発明の効果】
【0014】
本発明によれば、インター予測を行う場合において符号化効率を向上させることが可能な予測画像補正装置、画像符号化装置、画像復号装置、及びプログラムを提供できる。
【図面の簡単な説明】
【0015】
【
図2】実施形態に係る画像符号化装置の構成を示す図である。
【
図3】実施形態に係る画像符号化装置における予測画像補正部の構成を示す図である。
【
図4】実施形態に係る予測画像補正部の動作を説明するための図である。
【
図5】実施形態に係る予測画像補正部における連続性評価部の動作を説明するための図である。
【
図6】実施形態に係る予測画像補正部における補正部の動作を説明するための図である。
【
図7】実施形態に係る予測画像補正部における補正部の動作の具体例を説明するための図である。
【
図8】実施形態に係る画像符号化装置における予測画像補正部の動作を示す図である。
【
図9】実施形態に係る画像復号装置の構成を示す図である。
【
図10】実施形態に係る画像復号装置の予測画像補正部の構成を示す図である。
【
図11】変更例に係る動作を説明するための図である。
【
図12】変更例に係る予測画像補正部の構成を示す図である。
【
図13】変更例に係る予測画像補正部における残差エネルギー算出部の動作を説明するための図である。
【
図14】変更例に係る予測画像補正部における補正部の動作を説明するための図である。
【
図15】その他の実施形態に係る動作を説明するための図である。
【発明を実施するための形態】
【0016】
図面を参照して、実施形態に係る画像符号化装置及び画像復号装置について説明する。実施形態に係る画像符号化装置及び画像復号装置は、MPEGに代表される動画の符号化及び復号をそれぞれ行う。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【0017】
<画像符号化装置>
まず、本実施形態に係る画像符号化装置について説明する。
図2は、本実施形態に係る画像符号化装置1の構成を示す図である。
【0018】
図2に示すように、画像符号化装置1は、ブロック分割部100と、減算部110と、変換・量子化部120と、エントロピー符号化部130と、逆量子化・逆変換部140と、合成部150と、メモリ部160と、予測部170とを備える。
【0019】
ブロック分割部100は、動画像を構成するフレーム(或いはピクチャ)単位の入力画像を複数のブロックに分割し、分割により得たブロックを減算部110に出力する。ブロックのサイズは、例えば32×32画素、16×16画素、8×8画素、又は4×4画素等である。ブロックの形状は正方形に限らず、長方形であってもよい。ブロックは、画像符号化装置1が符号化を行う単位及び画像復号装置が復号を行う単位である。以下において、かかるブロックをCU(Coding Unit)と称する。
【0020】
減算部110は、ブロック分割部100から入力された符号化対象CUと、符号化対象CUを予測部170が予測して得た予測画像との差分(誤差)を表す予測残差を算出する。具体的には、減算部110は、CUの各画素値から予測画像の各画素値を減算することにより予測残差を算出し、算出した予測残差を変換・量子化部120に出力する。
【0021】
変換・量子化部120は、CU単位で直交変換処理及び量子化処理を行う。変換・量子化部120は、変換部121と、量子化部122とを備える。
【0022】
変換部121は、減算部110から入力された予測残差に対して直交変換処理を行って直交変換係数を算出し、算出した直交変換係数を量子化部122に出力する。直交変換とは、例えば、離散コサイン変換(DCT:Discrete Cosine Transform)や離散サイン変換(DST:Discrete Sine Transform)、カルーネンレーブ変換(KLT: Karhunen Loeve Transform)等をいう。
【0023】
量子化部122は、変換部121から入力された直交変換係数を量子化パラメータ(Qp)及び量子化行列を用いて量子化し、量子化した直交変換係数をエントロピー符号化部130及び逆量子化・逆変換部140に出力する。なお、量子化パラメータ(Qp)は、CU内の各直交変換係数に対して共通して適用されるパラメータであって、量子化の粗さを定めるパラメータである。量子化行列は、各直交変換係数を量子化する際の量子化値を要素として有する行列である。
【0024】
エントロピー符号化部130は、量子化部122から入力された直交変換係数に対してエントロピー符号化を行い、データ圧縮を行って符号化ストリーム(ビットストリーム)を生成し、符号化ストリームを画像符号化装置1の外部に出力する。エントロピー符号化には、ハフマン符号やCABAC(Context-based Adaptive Binary Arithmetic Coding;コンテキスト適応型2値算術符号)等を用いることができる。なお、エントロピー符号化部130は、予測部170から予測に関する制御情報が入力され、入力された制御情報のエントロピー符号化も行う。
【0025】
逆量子化・逆変換部140は、CU単位で逆量子化処理及び逆直交変換処理を行う。逆量子化・逆変換部140は、逆量子化部141と、逆変換部142とを備える。
【0026】
逆量子化部141は、量子化部122が行う量子化処理に対応する逆量子化処理を行う。具体的には、逆量子化部141は、量子化部122から入力された直交変換係数を、量子化パラメータ(Qp)及び量子化行列を用いて逆量子化することにより直交変換係数を復元し、復元した直交変換係数を逆変換部142に出力する。
【0027】
逆変換部142は、変換部121が行う直交変換処理に対応する逆直交変換処理を行う。例えば、変換部121が離散コサイン変換を行った場合には、逆変換部142は逆離散コサイン変換を行う。逆変換部142は、逆量子化部141から入力された直交変換係数に対して逆直交変換処理を行って予測残差を復元し、復元した予測残差である復元予測残差を合成部150に出力する。
【0028】
合成部150は、逆変換部142から入力された復元予測残差を、予測部170から入力された予測画像と画素単位で合成する。合成部150は、復元予測残差の各画素値と予測画像の各画素値を加算して符号化対象CUを再構成(復号)し、復号したCU単位の復号画像をメモリ部160に出力する。かかる復号画像は、再構成画像と称されることがある。
【0029】
メモリ部160は、合成部150から入力された復号画像を記憶する。メモリ部160は、復号画像をフレーム単位で記憶する。メモリ部160は、記憶している復号画像を予測部170に出力する。さらに、メモリ部160は、インター予測部172において算出された動きベクトルをCUごとに記憶する。なお、メモリ部160は、複数のメモリにより構成されてもよい。また、合成部150とメモリ部160との間にループフィルタが設けられてもよい。
【0030】
予測部170は、CU単位で予測を行う。予測部170は、イントラ予測部171と、インター予測部172と、予測画像補正部173と、切替部174とを備える。予測画像補正部173は、予測画像補正装置に相当する。
【0031】
イントラ予測部171は、メモリ部160に記憶された復号画像のうち、符号化対象CUの周辺にある復号画素値を参照してイントラ予測画像を生成し、生成したイントラ予測画像を切替部174に出力する。また、イントラ予測部171は、複数のイントラ予測モードの中から、対象CUに適用する最適なイントラ予測モードを選択し、選択したイントラ予測モードを用いてイントラ予測を行う。イントラ予測部171は、選択したイントラ予測モードに関する制御情報をエントロピー符号化部130に出力する。
【0032】
インター予測部172は、メモリ部160に記憶された復号画像を参照画像として用いて、ブロックマッチングなどの手法により動きベクトルを算出し、符号化対象CUを予測してインター予測画像を生成し、生成したインター予測画像を当該動きベクトルと共に予測画像補正部173に出力する。また、インター予測部172は、CUごとに算出した動きベクトルをメモリ部160に出力し、当該動きベクトルをメモリ部160に記憶させる。インター予測部172は、複数の参照画像を用いるインター予測(典型的には、双予測)や、1つの参照画像を用いるインター予測(片方向予測)の中から最適なインター予測方法を選択し、選択したインター予測方法を用いてインター予測を行う。インター予測部172は、インター予測に関する制御情報(動きベクトル等)をエントロピー符号化部130に出力する。
【0033】
予測画像補正部173は、インター予測部172から入力されたインター予測画像を補正し、補正後のインター予測画像を切替部174に出力する。具体的には、予測画像補正部173は、符号化対象CUに適用された動きベクトルをインター予測部172から取得し、符号化対象CUに隣接する復号済みのブロック群の動きベクトル及び復号済みのブロック群の符号化対象CUとの境界領域の復号画像をメモリ部160から取得し、取得した情報に基づいて符号化対象CUのインター予測画像を補正する。予測画像補正部173の詳細については後述する。
【0034】
切替部174は、イントラ予測部171から入力されるイントラ予測画像と予測画像補正部173から入力されるインター予測画像とを切り替えて、いずれかの予測画像を減算部110及び合成部150に出力する。
【0035】
次に、予測画像補正部173について説明する。
図3は、画像符号化装置1の予測画像補正部173の構成を示す図である。
【0036】
図3に示すように、予測画像補正部173は、連続性評価部173aと、補正部173bとを備える。
【0037】
連続性評価部173aは、符号化対象CUに隣接する復号済みの1又は複数の隣接CUに適用された動きベクトルをメモリ部160から取得する。例えば、
図4に示すように、符号化対象CUに隣接する復号済みのCU#1乃至CU#7が復号済みCU群に含まれる場合、連続性評価部173aは、CU#1乃至CU#7のそれぞれについてインター予測に適用された動きベクトルを取得する。
【0038】
なお、
図4において、連続性評価部173aは、符号化対象CUの上側及び左側に隣接する復号済みCUの動きベクトルを取得しているが、右側や下側のCUが復号済みである場合には、右側や下側のCUに適用した動きベクトルをさらに取得してもよい。
【0039】
そして、連続性評価部173aは、符号化対象CUに適用された動きベクトルと、隣接する復号済みCU群に適用された動きベクトルとの比較により、隣接する復号済みCU群について符号化対象CUとの動きの連続性を評価し、評価結果を補正部173bに出力する。
【0040】
具体的には、連続性評価部173aは、符号化対象CUに適用されるベクトルと復号済みCUの動きベクトルとのL1ノルムが予め規定した閾値未満である場合には連続性が高いと評価する。一方、当該L1ノルムが閾値以上である場合には連続性が低いと評価する。但し、連続性の指標値としてはL1ノルムに限定されるものではなく、他の指標値を用いてもよい。
【0041】
例えば、
図5に示すように、連続性評価部173aは、符号化対象CUに隣接する復号済みのCU#1乃至CU#7のそれぞれの動きベクトルについて、符号化対象CUの動きベクトルとの差(距離)を表すL1ノルムを算出し、CU#1乃至CU#7のそれぞれについて算出したL1ノルムを閾値と比較する。
【0042】
図5に示す例において、CU#1に対応するL1ノルム、CU#2に対応するL1ノルム、CU#3に対応するL1ノルム、CU#4に対応するL1ノルム、及びCU#5に対応するL1ノルムは、閾値以上であるため、これらの隣接CUは符号化対象CUとの連続性が低いということになる。一方、CU#6に対応するL1ノルム及びCU#7に対応するL1ノルムは、閾値未満であるため、これらの隣接CUは符号化対象CUとの連続性が高いということになる。なお、CU#1乃至CU#7のいずれも連続性が高いと評価された場合、補正部173bによる符号化対象CUのインター予測画像の補正を省略してもよい。
【0043】
本実施形態において、動きベクトルは、X軸及びY軸方向のベクトル値のほか、参照する復号済みフレームを示すフラグ(例えば、HEVCにおけるinter_pred_idc,ref_idx)を含むものとする。連続性評価部173aは、隣接ブロックとの動きベクトルの連続性の評価にあたっては、符号化対象CUを含むフレーム(現フレーム)と符号化対象CUの参照先の復号済みフレームとの時間的な距離(POC距離)と、現フレームと隣接する復号済みCUの参照先の復号済みフレームとのPOC距離とに応じて、当該隣接する復号済みCUに適用した動きベクトルのベクトル値をスケーリングしたのちに連続性を評価してもよい。
【0044】
補正部173bは、符号化対象CUのインター予測画像を補正するために、符号化対象CUに隣接する復号済みCU群の復号画像のうち、少なくとも符号化対象CUとの境界領域の復号画像をメモリ部160から取得する。
【0045】
例えば、
図4に示すように、補正部173bは、符号化対象CUに隣接する復号済みのCU#1乃至CU#7のそれぞれの復号画像のうち、符号化対象CUとの境界領域の復号画像をメモリ部160から取得する。
【0046】
なお、符号化対象CUとの境界領域とは、符号化対象CUに隣接する復号済み画素を含む領域をいうが、符号化対象CUからN画素(N>1)までの復号済み画素からなる領域を境界領域としてもよい。
【0047】
また、
図4に示す例において、補正部173bは、符号化対象CUに隣接する復号済みのCU#1乃至CU#7のすべてについて境界領域の復号画像を取得せずに、CU#1乃至CU#7のうち連続性評価部173aにより連続性が低いと評価されたCU#1乃至CU#5(
図5参照)のみについて境界領域の復号画像を取得してもよい。
【0048】
そして、補正部173bは、連続性評価部173aにより連続性が低いと評価された隣接CU(所定隣接ブロック)が存在する場合に、当該隣接CUの復号画像のうち少なくとも符号化対象CUとの境界領域の復号画像を用いて、符号化対象CUのインター予測画像のうち少なくとも当該隣接CUとの境界領域の予測画像を補正する。
【0049】
具体的には、補正部173bは、連続性評価部173aにおいて連続性が低いと評価された隣接CUと符号化対象CUとのブロック境界について、符号化対象CUの予測画像を当該隣接CUの復号画像の値を用いて補正する。例えば、
図6に示すように、補正部173bは、連続性評価部173aにおいて連続性が低いと評価された隣接CU#1乃至CU#5と符号化対象CUとのブロック境界について、符号化対象CUのインター予測画像を当該隣接CU#1乃至CU#5の復号画像の値を用いて補正する。
【0050】
ここで、補正部173bによる補正の方法の具体例について説明する。符号化対象CU(幅M、高さN)に適用する動きベクトルを用いて生成したインター予測画像をpred[i,j](i=0…M-1,j=0…N-1)とし、隣接する復号済みCUの復号画像をrec[i,j](i=-1,j=-1…N及びi=-1…M,j=-1)とするとき、補正部173bは、
図7に示す式により補正後のインター予測画像pred’[i,j]を算出する。
【0051】
図7(a)は符号化対象CUのインター予測画像の左側のブロック境界領域を補正する例を示し、
図7(b)は符号化対象CUのインター予測画像の上側のブロック境界領域を補正する例を示し、
図7(c)は符号化対象CUのインター予測画像の左上の角のブロック境界領域を補正する例を示している。インター予測画像において、ブロック境界から2画素までをブロック境界領域として補正しているが、ブロック境界からM画素(M≧3)までをブロック境界領域として補正してもよい。
【0052】
このようにして符号化対象CUのインター予測画像を補正すると、補正部173bは、補正後のインター予測画像を、切替部174を介して減算部110及び合成部150に出力する。
【0053】
次に、予測画像補正部173の動作について説明する。
図8は、画像符号化装置1の予測画像補正部173の動作を示す図である。
【0054】
図8に示すように、ステップS101において、連続性評価部173aは、インター予測が行われた符号化対象CUに適用された動きベクトルと、復号済みの隣接ブロックに適用された動きベクトルとの比較により、隣接ブロックについて符号化対象CUとの動きの連続性を評価する。
【0055】
連続性評価部173aにより評価された連続性が所定値よりも低い所定隣接ブロックが存在する場合(ステップS102:YES)、ステップS103において、補正部173bは、所定隣接ブロックの復号画像のうち少なくとも符号化対象CUとの境界領域の復号画像を用いて、符号化対象CUの予測画像のうち少なくとも所定隣接ブロックとの境界領域の予測画像を補正する。
【0056】
このように、予測画像補正部173によれば、動きベクトルの不連続性を考慮して予測画像を補正することにより、オブジェクト境界付近のブロックについて直交変換係数の伝送に必要な情報量を低減できるため、インター予測を行う場合における符号化効率を向上させることができる。
【0057】
<画像復号装置>
次に、本実施形態に係る画像復号装置について説明する。但し、上記の画像符号化装置1と同様な動作については重複する説明を省略する。
図9は、本実施形態に係る画像復号装置2の構成を示す図である。
【0058】
図9に示すように、画像復号装置2は、エントロピー復号部200と、逆量子化・逆変換部210と、合成部220と、メモリ部230と、予測部240とを備える。
【0059】
エントロピー復号部200は、画像符号化装置1により生成された符号化ストリームを復号し、量子化された直交変換係数を逆量子化・逆変換部210に出力する。また、エントロピー復号部200は、予測(イントラ予測及びインター予測)に関する制御情報を取得し、取得した制御情報を予測部240に出力する。
【0060】
逆量子化・逆変換部210は、CU単位で逆量子化処理及び逆直交変換処理を行う。逆量子化・逆変換部210は、逆量子化部211と、逆変換部212とを備える。
【0061】
逆量子化部211は、画像符号化装置1の量子化部122が行う量子化処理に対応する逆量子化処理を行う。逆量子化部211は、エントロピー復号部200から入力された量子化直交変換係数を、量子化パラメータ(Qp)及び量子化行列を用いて逆量子化することにより、復号対象CUの直交変換係数を復元し、復元した直交変換係数を逆変換部212に出力する。
【0062】
逆変換部212は、画像符号化装置1の変換部121が行う直交変換処理に対応する逆直交変換処理を行う。逆変換部212は、逆量子化部211から入力された直交変換係数に対して逆直交変換処理を行って予測残差を復元し、復元した予測残差(復元予測残差)を合成部220に出力する。
【0063】
合成部220は、逆変換部212から入力された予測残差と、予測部240から入力された予測画像とを画素単位で合成することにより、元のCUを再構成(復号)し、CU単位の復号画像をメモリ部230に出力する。
【0064】
メモリ部230は、合成部220から入力された復号画像を記憶する。メモリ部230は、復号画像をフレーム単位で記憶する。さらに、メモリ部230は、インター予測部242において算出された動きベクトルをCUごとに記憶する。メモリ部230は、フレーム単位の復号画像を画像復号装置2の外部に出力する。なお、メモリ部230は、複数のメモリにより構成されてもよい。合成部220とメモリ部230との間にループフィルタが設けられてもよい。
【0065】
予測部240は、CU単位で予測を行う。予測部240は、イントラ予測部241と、インター予測部242と、予測画像補正部243と、切替部244とを備える。予測画像補正部243は、予測画像補正装置に相当する。
【0066】
イントラ予測部241は、メモリ部230に記憶された復号画像を参照し、エントロピー復号部200から入力された制御情報に従って、復号対象CUをイントラ予測により予測することによりイントラ予測画像を生成し、生成したイントラ予測画像を切替部244に出力する。
【0067】
インター予測部242は、メモリ部230に記憶された復号画像を参照画像として用いて、復号対象CUをインター予測により予測する。インター予測部242は、エントロピー復号部200から入力された制御情報に従ってインター予測を行うことによりインター予測画像を生成し、生成したインター予測画像を予測画像補正部243に出力する。
【0068】
予測画像補正部243は、インター予測部242から入力されたインター予測画像を補正し、補正後のインター予測画像を切替部244に出力する。具体的には、予測画像補正部243は、復号対象CUに適用された動きベクトルをインター予測部242から取得し、復号対象CUに隣接する復号済みのブロック群の動きベクトル及び復号済みのブロック群の復号対象CUとの境界領域の復号画像をメモリ部230から取得し、取得した情報に基づいて復号対象CUのインター予測画像を補正する。予測画像補正部243の詳細については後述する。
【0069】
切替部244は、イントラ予測部241から入力されるイントラ予測画像と予測画像補正部243から入力されるインター予測画像とを切り替えて、いずれかの予測画像を合成部220に出力する。
【0070】
次に、予測画像補正部243について説明する。
図10は、画像復号装置2の予測画像補正部243の構成を示す図である。
【0071】
図10に示すように、予測画像補正部243は、連続性評価部243aと、補正部243bとを備える。連続性評価部243a及び補正部243bの動作は、画像符号化装置1の連続性評価部173a及び補正部173bの動作と同様であるため、以下では連続性評価部243a及び補正部243bの動作について簡単に説明する。
【0072】
連続性評価部243aは、復号対象CUに隣接する復号済みの1又は複数の隣接CUに適用された動きベクトルをメモリ部230から取得する。
【0073】
そして、連続性評価部243aは、復号対象CUに適用された動きベクトルと、隣接する復号済みCU群に適用された動きベクトルとの比較により、隣接する復号済みCU群について復号対象CUとの動きの連続性を評価し、評価結果を補正部243bに出力する。
【0074】
補正部243bは、復号対象CUのインター予測画像を補正するために、復号対象CUに隣接する復号済みCU群の復号画像のうち、少なくとも復号対象CUとの境界領域の復号画像をメモリ部230から取得する。
【0075】
そして、補正部243bは、連続性評価部243aにより連続性が低いと評価された隣接CU(所定隣接ブロック)が存在する場合に、当該隣接CUの復号画像のうち少なくとも復号対象CUとの境界領域の復号画像を用いて、復号対象CUのインター予測画像のうち少なくとも当該隣接CUとの境界領域の予測画像を補正する。具体的には、補正部243bは、連続性評価部243aにおいて連続性が低いと評価された隣接CUと復号対象CUとのブロック境界について、復号対象CUの予測画像を当該隣接CUの復号画像の値を用いて補正する。
【0076】
このようにして復号対象CUのインター予測画像を補正すると、補正部243bは、補正後のインター予測画像を、切替部244を介して合成部220に出力する。
【0077】
なお、画像復号装置2の予測画像補正部243の動作フローについては
図8と同様であるが、
図8に示した動作フローにおいて「符号化対象CU」を「復号対象CU」と読み替える。
【0078】
このように、予測画像補正部243によれば、動きベクトルの不連続性を考慮して予測画像を補正することにより、インター予測を行う場合における符号化効率を向上させることができる。
【0079】
<変更例>
上記の実施形態において、復号済みの隣接ブロックとの連続性の評価において、符号化対象CU(又は復号対象CU)に適用した動きベクトルと復号済みの隣接CUに適用した動きベクトルとの比較により連続性が高いか否かを評価し、連続性が低いことに応じてインター予測画像を補正していた。
【0080】
しかしながら、かかる方法において、補正が適切に機能しない場合がある。例えば、
図11に示すように、符号化対象CUと符号化対象CUの上側の隣接CU#2とは動きベクトルが互いに異なるため、符号化対象CUにおける上側のブロック境界領域に対して補正が行われることになる。
【0081】
しかしながら、オブジェクト#1及び#2のオブジェクト境界は隣接CU#2における下側のブロック境界領域に含まれている。このような場合、符号化対象CUのインター予測画像に補正を施すと、インター予測画像の劣化を引き起こす可能性がある。
【0082】
そこで、本変更例では、上記の実施形態と同様な動きベクトルの比較に加えて、復号済みの隣接ブロックにおける予測残差(残差信号)のエネルギーに応じて補正の有無を決定する。
【0083】
図11に示す例において、オブジェクト#1及び#2のオブジェクト境界は隣接CU#2における下側のブロック境界領域に含まれているため、当該下側のブロック境界領域における予測残差のエネルギーは大きくなる可能性が高い。かかる場合、符号化対象CUのインター予測画像に対して補正を行わないようにする。一方、下側のブロック境界領域における予測残差のエネルギーが小さい場合には、符号化対象CUのインター予測画像に対して補正を行うようにする。
【0084】
本変更例に係る画像符号化装置1について説明する。本変更例において、画像符号化装置1のメモリ部160は、符号化対象CUに隣接する復号済みCUの予測残差を記憶する。各ブロック処理において得られた予測残差をメモリ部160に記憶させることで、その後のブロックの処理の際に、メモリ部160に記憶された予測残差を利用できる。
【0085】
メモリ部160は、減算部110が出力する予測残差を記憶してもよいし、逆変換部142が出力する予測残差を記憶してもよい。予測画像補正部173は、メモリ部160に記憶された隣接ブロックの予測残差のうち、符号化対象CUとの境界領域の予測残差を取得する。
【0086】
図12は、本変更例に係る予測画像補正部173の構成を示す図である。
図12に示すように、本変更例に係る予測画像補正部173は、上記の実施形態と同様な連続性評価部173a及び補正部173bに加えて、残差エネルギー算出部173cを備える。
【0087】
残差エネルギー算出部173cは、符号化対象CUに隣接する復号済み隣接ブロックのブロック境界付近の予測残差をメモリ部160から取得し、取得した復号済み隣接ブロックのブロック境界付近の予測残差のエネルギーを算出し、エネルギーの算出値(隣接残差エネルギー)を補正部173bに出力する。
【0088】
例えば、
図13に示すように、残差エネルギー算出部173cは、符号化対象CUに隣接する復号済み隣接ブロックCU#1乃至CU#7のそれぞれのブロック境界付近の予測残差のエネルギーを算出する。エネルギーを算出する領域は符号化対象CUのブロック境界から法線方向に予め規定したライン数分とすることとする。但し、ライン数はブロックサイズに応じて可変であってもよい。
【0089】
また、符号化対象CUの角では、水平垂直方向に規定ライン数分の領域を残差エネルギー算出の領域とする。例えば、左上の角については、符号化対象CUの左上座標を(0,0)とした場合に、(-N,-N)から(-1,-1)までの領域を残差エネルギー算出の領域とする(Nはあらかじめ規定したライン数)。
【0090】
具体的には、残差エネルギー算出部173cは、算出領域内の予測残差の絶対値の平均を残差エネルギーとすることができる。但し、予測残差のエネルギーを領域ごとに算出する指標であれば、二乗和の平均など他の指標であってもかまわない。
【0091】
なお、残差エネルギー算出部173cは、符号化対象CUに隣接する復号済みのCU#1乃至CU#7のすべてについて境界領域の予測残差のエネルギーを算出せずに、CU#1乃至CU#7のうち連続性評価部173aにより連続性が低いと評価されたCU#1乃至CU#5(
図5参照)のみについて境界領域の予測残差のエネルギーを算出してもよい。
【0092】
補正部173bは、連続性評価部173aにより連続性が低いと評価された隣接ブロックのうち、残差エネルギー算出部173cにより算出されたエネルギーが予め規定した閾値よりも小さい隣接ブロックの境界領域の復号画像を用いて、符号化対象CUのインター予測画像を補正する。
【0093】
例えば、
図14に示すように、符号化対象CUに隣接するCU#1乃至CU#7のうち連続性評価部173aによりCU#1乃至CU#5の連続性が低いと評価され、且つ、残差エネルギー算出部173cにより算出されたエネルギーが閾値よりも小さいCUがCU#1乃至CU#3であるとする。すなわち、CU#4乃至CU#7について残差エネルギー算出部173cにより算出されたエネルギーは閾値よりも大きい。
【0094】
かかる場合、補正部173bは、CU#1乃至CU#3のブロック境界領域の復号画像を用いて、符号化対象CUのインター予測画像のブロック境界領域を補正する。一方、補正部173bは、CU#4乃至CU#7のブロック境界領域の復号画像を符号化対象CUのインター予測画像の補正に用いない。
【0095】
なお、本変更例においては画像符号化装置1を例に挙げて説明したが、本変更例に係る動作を画像復号装置2にも適用可能である。
【0096】
<その他の実施形態>
上記の実施形態及び変更例において、符号化対象CU(又は復号対象CU)が複数の小領域に分割される場合について特に考慮していなかった。しかしながら、符号化対象CU(又は復号対象CU)が複数の小領域に分割される場合にも本発明を適用可能である。
【0097】
例えば、
図15に示すように、符号化対象CUの内部を小領域に分割し、小領域ごとに異なる動きベクトルを適用できる場合、連続性評価部173aは、隣接する復号済みCUに最も近い位置の小領域に適用した動きベクトルと当該隣接する復号済みCUに適用した動きベクトルとの動きの連続性を評価する。
【0098】
画像符号化装置1が行う各処理をコンピュータに実行させるプログラム及び画像復号装置2が行う各処理をコンピュータに実行させるプログラムにより提供されてもよい。また、プログラムは、コンピュータ読取り可能媒体に記録されていてもよい。コンピュータ読取り可能媒体を用いれば、コンピュータにプログラムをインストールすることが可能である。ここで、プログラムが記録されたコンピュータ読取り可能媒体は、非一過性の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROMやDVD-ROM等の記録媒体であってもよい。
【0099】
また、画像符号化装置1が行う各処理を実行する回路を集積化し、画像符号化装置1を半導体集積回路(チップセット、SoC)として構成してもよい。同様に、画像復号装置2が行う各処理を実行する回路を集積化し、画像復号装置2を半導体集積回路(チップセット、SoC)として構成してもよい。
【0100】
以上、図面を参照して実施形態について詳しく説明したが、具体的な構成は上述のものに限られることはなく、要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【符号の説明】
【0101】
1 :画像符号化装置
2 :画像復号装置
100 :ブロック分割部
110 :減算部
120 :変換・量子化部
121 :変換部
122 :量子化部
130 :エントロピー符号化部
140 :逆量子化・逆変換部
141 :逆量子化部
142 :逆変換部
150 :合成部
160 :メモリ部
170 :予測部
171 :イントラ予測部
172 :インター予測部
173 :予測画像補正部
173a :連続性評価部
173b :補正部
173c :残差エネルギー算出部
174 :切替部
200 :エントロピー復号部
210 :逆量子化・逆変換部
211 :逆量子化部
212 :逆変換部
220 :合成部
230 :メモリ部
240 :予測部
241 :イントラ予測部
242 :インター予測部
243 :予測画像補正部
243a :連続性評価部
243b :補正部
244 :切替部