(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024169690
(43)【公開日】2024-12-05
(54)【発明の名称】画像復号装置、画像復号方法及びプログラム
(51)【国際特許分類】
H04N 19/119 20140101AFI20241128BHJP
H04N 19/136 20140101ALI20241128BHJP
H04N 19/176 20140101ALI20241128BHJP
H04N 19/52 20140101ALI20241128BHJP
【FI】
H04N19/119
H04N19/136
H04N19/176
H04N19/52
【審査請求】有
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2024166919
(22)【出願日】2024-09-26
(62)【分割の表示】P 2021131823の分割
【原出願日】2019-12-26
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和元年度、総務省、「多様な用途、環境下での高精細映像の活用に資する次世代映像伝送・通信技術の研究開発」委託事業、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】110001564
【氏名又は名称】フェリシテ弁理士法人
(72)【発明者】
【氏名】木谷 佳隆
(72)【発明者】
【氏名】河村 圭
(72)【発明者】
【氏名】海野 恭平
(72)【発明者】
【氏名】内藤 整
(57)【要約】
【課題】予測誤差が低減されることによる符号化性能向上効果及びオブジェクト境界に対して適切なブロック分割境界が選択されることによる主観画質向上効果を実現すること。
【解決手段】本発明に係る画像復号装置200は、矩形分割された対象ブロックに対して、幾何学ブロック分割マージを適用するように構成されているマージ部241A2を備え、マージ部241A2は、幾何学ブロック分割マージの適用有無を特定するように構成されているマージモード特定部241A21を具備し、マージモード特定部241A21は、幾何学ブロック分割マージの適用有無を、対象ブロックのブロックアスペクト比により判定する。
【選択図】
図7
【特許請求の範囲】
【請求項1】
画像復号装置であって、
矩形分割された対象ブロックに対して、幾何学ブロック分割マージを適用するように構成されているマージ部を備え、
前記マージ部は、前記幾何学ブロック分割マージの適用有無を特定するように構成されているマージモード特定部を具備し、
前記マージモード特定部は、前記幾何学ブロック分割マージの適用有無を、前記対象ブロックのブロックアスペクト比により判定することを特徴とする画像復号装置。
【請求項2】
前記マージ特定部は、前記対象ブロックのブロックアスペクト比が8以上である場合、前記対象ブロックに対して前記幾何学ブロック分割マージの適用を禁止することを特徴とする請求項1に記載の画像復号装置。
【請求項3】
矩形分割された対象ブロックに対して、幾何学ブロック分割マージを適用する工程を有する画像復号方法であって、
前記工程は、前記幾何学ブロック分割マージの適用有無を特定する工程Aを有し、
前記工程Aは、前記幾何学ブロック分割マージの適用有無を、前記対象ブロックのブロックアスペクト比により判定することを特徴とする画像復号方法。
【請求項4】
コンピュータを、画像復号装置として機能させるプログラムであって、
前記画像復号装置は、矩形分割された対象ブロックに対して、幾何学ブロック分割マージを適用するように構成されているマージ部を備え、
前記マージ部は、前記幾何学ブロック分割マージの適用有無を特定するように構成されているマージモード特定部を具備し、
前記マージモード特定部は、前記幾何学ブロック分割マージの適用有無を、前記対象ブロックのブロックアスペクト比により判定することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像復号装置、画像復号方法及びプログラムに関する。
【背景技術】
【0002】
非特許文献1及び非特許文献2に、QTBTTT(Quad-Tree-Binary-Tree-Ternary-Tree)と呼ばれる矩形によるブロック分割技術(矩形分割技術)が開示されている。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】Versatile Video Coding(Draft 7)、JVET-N1001
【非特許文献2】ITU-T H.265 High Efficiency Video Coding
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上述の従来技術における矩形によるブロック分割のみでは、ブロック境界に対して任意の方向にオブジェクト境界が現れる場合、オブジェクト境界に対して適切なブロック分割を選択されない可能性があるという問題点があった。
【0005】
そこで、本発明は、上述の課題に鑑みてなされたものであり、矩形分割された対象ブロックに対して、幾何学ブロック分割マージを適用することにより、任意の方向に現れるオブジェクト境界に対して、適切なブロック分割形状が選択されるようになるため、結果的に予測誤差が低減されることによる符号化性能向上効果及びオブジェクト境界に対して適切なブロック分割境界が選択されることによる主観画質向上効果を実現することができる画像復号装置、画像復号方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の第1の特徴は、画像復号装置であって、矩形分割された対象ブロックに対して、幾何学ブロック分割マージを適用するように構成されているマージ部を備え、前記マージ部は、前記幾何学ブロック分割マージの適用有無を特定するように構成されているマージモード特定部を具備し、前記マージモード特定部は、前記幾何学ブロック分割マージの適用有無を、前記対象ブロックのブロックアスペクト比により判定することを要旨とする。
【0007】
本発明の第2の特徴は、矩形分割された対象ブロックに対して、幾何学ブロック分割マージを適用する工程を有する画像復号方法であって、前記工程は、前記幾何学ブロック分割マージの適用有無を特定する工程Aを有し、前記工程Aは、前記幾何学ブロック分割マージの適用有無を、前記対象ブロックのブロックアスペクト比により判定することを要旨とする。
【0008】
本発明の第3の特徴は、コンピュータを、画像復号装置として機能させるプログラムであって、前記画像復号装置は、矩形分割された対象ブロックに対して、幾何学ブロック分割マージを適用するように構成されているマージ部を備え、前記マージ部は、前記幾何学ブロック分割マージの適用有無を特定するように構成されているマージモード特定部を具備し、前記マージモード特定部は、前記幾何学ブロック分割マージの適用有無を、前記対象ブロックのブロックアスペクト比により判定することを要旨とする。
【発明の効果】
【0009】
本発明によれば、矩形分割された対象ブロックに対して、幾何学ブロック分割マージを適用することにより、任意の方向に現れるオブジェクト境界に対して、適切なブロック分割形状が選択されるようになるため、結果的に予測誤差が低減されることによる符号化性能向上効果及びオブジェクト境界に対して適切なブロック分割境界が選択されることによる主観画質向上効果を実現することができる画像復号装置、画像復号方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0010】
【
図1】一実施形態に係る画像処理システム1の構成の一例を示す図である。
【
図2】一実施形態に係る画像符号化装置100の機能ブロックの一例を示す図である。
【
図3】一実施形態に係る画像符号化装置100のインター予測部111の機能ブロックの一例を示す図である。
【
図4】一実施形態に係る画像復号装置200の機能ブロックの一例を示す図である。
【
図5】一実施形態に係る画像復号装置200のインター予測部241の機能ブロックの一例を示す図である。
【
図6】一実施形態に係る画像符号化装置100のインター予測部111のマージ部111A2の機能ブロックの一例を示す図である。
【
図7】一実施形態に係る画像復号装置200のインター予測部241のマージ部241A2の機能ブロックの一例を示す図である。
【
図8】一実施形態に係る画像復号装置200のインター予測部241のマージモード特定部241A21における幾何学ブロック分割マージの適用有無の特定方法の一例について示すフローチャートである。
【
図9】一実施形態に係る画像復号装置200のインター予測部241のマージモード特定部241A21における幾何学ブロック分割マージの適用有無の特定方法の一例について示すフローチャートである。
【
図10】一実施形態に係る画像復号装置200のインター予測部241のマージモード特定部241A21における幾何学ブロック分割マージの適用有無の特定方法の一例について示すフローチャートである。
【
図11】一変更例に係る幾何学ブロック分割パタンの規定方法の一例を示す図である。
【
図12】一変更例に係る幾何学ブロック分割パタンを規定する仰角φの一例を示す図である。
【
図13】一変更例に係る幾何学ブロック分割パタンを規定する位置(距離ρ)の一例について示す図である。
【
図14】一変更例に係る仰角φ及び距離ρの規定方法に関する一例を示す図である。
【
図15】一変更例に係る幾何学ブロック分割パタンを規定する仰角φと距離(位置)ρとの組み合わせを示すインデックステーブルの一例を示す図である。
【
図16】一変更例に係る対象ブロックのブロックサイズ又はブロックアスペクト比に応じた「partition_idx」の復号方法の制御の一例について説明するための図である。
【
図17】一実施形態に係るマージリストへの動き情報登録・剪定処理の一例を示すフローチャートである。
【
図18】一実施形態に係るマージリストへの動き情報登録・剪定処理の結果、構築されたマージリストの一例を示す図である。
【
図19】一実施形態に係る空間マージについて説明するための図である。
【
図20】一実施形態に係る時間マージについて説明するための図である。
【
図21】一実施形態に係る時間マージにおいて継承される動きベクトルのスケーリング処理の一例について説明するための図である。
【
図22】一実施形態に係るヒストリーマージについて説明するための図である。
【
図23】一変更例に係る幾何学ブロック分割マージ有効時の対象ブロックにおける幾何学ブロック分割パタンの一例及び対象ブロックに対する空間マージと時間マージとの位置関係の一例を示す図である。
【
図24】一変更例に係る幾何学ブロック分割マージ有効時の対象ブロックにおける幾何学ブロック分割パタンの一例及び対象ブロックに対する空間マージと時間マージとの位置関係の一例を示す図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、以下の実施形態における構成要素は、適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組み合わせを含む様々なバリエーションが可能である。したがって、以下の実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【0012】
<第1実施形態>
以下、
図1~
図10を参照して、本発明の第1実施形態に係る画像処理システム10について説明する。
図1は、本実施形態に係る画像処理システム10について示す図である。
【0013】
図1に示すように、本実施形態に係る画像処理システム10は、画像符号化装置100及び画像復号装置200を有する。
【0014】
画像符号化装置100は、入力画像信号を符号化することによって符号化データを生成するように構成されている。画像復号装置200は、符号化データを復号することによって出力画像信号を生成するように構成されている。
【0015】
符号化データは、画像符号化装置100から画像復号装置200に対して伝送路を介して送信されてもよい。符号化データは、記憶媒体に格納された上で、画像符号化装置100から画像復号装置200に提供されてもよい。
【0016】
(画像符号化装置100)
以下、
図2を参照して、本実施形態に係る画像符号化装置100について説明する。
図2は、本実施形態に係る画像符号化装置100の機能ブロックの一例について示す図である。
【0017】
図2に示すように、画像符号化装置100は、インター予測部111と、イントラ予測部112と、減算器121と、加算器122と、変換・量子化部131と、逆変換・逆量子化部132と、符号化部140と、インループフィルタ処理部150と、フレームバッファ160とを有する。
【0018】
インター予測部111は、インター予測(フレーム間予測)によって予測信号を生成するように構成されている。
【0019】
具体的には、インター予測部111は、符号化対象のフレーム(以下、対象フレーム)とフレームバッファ160に格納される参照フレームとの比較によって、参照フレームに含まれる参照ブロックを特定し、特定された参照ブロックに対する動きベクトル(mv)を決定するように構成されている。
【0020】
また、インター予測部111は、参照ブロック及び動きベクトルに基づいて符号化対象のブロック(以下、対象ブロック)に含まれる予測信号を対象ブロック毎に生成するように構成されている。インター予測部111は、予測信号を減算器121及び加算器122に出力するように構成されている。ここで、参照フレームは、対象フレームとは異なるフレームである。
【0021】
イントラ予測部112は、イントラ予測(フレーム内予測)によって予測信号を生成するように構成されている。
【0022】
具体的には、イントラ予測部112は、対象フレームに含まれる参照ブロックを特定し、特定された参照ブロックに基づいて予測信号を対象ブロック毎に生成するように構成されている。また、イントラ予測部112は、予測信号を減算器121及び加算器122に出力するように構成されている。
【0023】
ここで、参照ブロックは、対象ブロックについて参照されるブロックである。例えば、参照ブロックは、対象ブロックに隣接するブロックである。
【0024】
減算器121は、入力画像信号から予測信号を減算し、予測残差信号を変換・量子化部131に出力するように構成されている。ここで、減算器121は、イントラ予測又はインター予測によって生成される予測信号と入力画像信号との差分である予測残差信号を生成するように構成されている。
【0025】
加算器122は、逆変換・逆量子化部132から出力される予測残差信号に予測信号を加算してフィルタ処理前復号信号を生成し、かかるフィルタ処理前復号信号をイントラ予測部112及びインループフィルタ処理部150に出力するように構成されている。
【0026】
ここで、フィルタ処理前復号信号は、イントラ予測部112で用いる参照ブロックを構成する。
【0027】
変換・量子化部131は、予測残差信号の変換処理を行うとともに、係数レベル値を取得するように構成されている。さらに、変換・量子化部131は、係数レベル値の量子化を行うように構成されていてもよい。
【0028】
ここで、変換処理は、予測残差信号を周波数成分信号に変換する処理である。かかる変換処理では、離散コサイン変換(DCT:Discrete Cosine Transform)に対応する基底パタン(変換行列)が用いられてもよく、離散サイン変換(DST:Discrete Sine Transform)に対応する基底パタン(変換行列)が用いられてもよい。
【0029】
逆変換・逆量子化部132は、変換・量子化部131から出力される係数レベル値の逆変換処理を行うように構成されている。ここで、逆変換・逆量子化部132は、逆変換処理に先立って、係数レベル値の逆量子化を行うように構成されていてもよい。
【0030】
ここで、逆変換処理及び逆量子化は、変換・量子化部131で行われる変換処理及び量子化とは逆の手順で行われる。
【0031】
符号化部140は、変換・量子化部131から出力された係数レベル値を符号化し、符号化データを出力するように構成されている。
【0032】
ここで、例えば、符号化は、係数レベル値の発生確率に基づいて異なる長さの符号を割り当てるエントロピー符号化である。
【0033】
また、符号化部140は、係数レベル値に加えて、復号処理で用いる制御データを符号化するように構成されている。
【0034】
ここで、制御データは、符号化ブロック(CU:Coding Unit)サイズ、予測ブロック(PU:Prediction Unit)サイズ、変換ブロック(TU:Transform Unit)サイズ等のサイズデータを含んでもよい。
【0035】
また、制御データは後述するようにシーケンスパラメータセット(SPS)、ピクチャパラメータセット(PPS)、スライスヘッダなどのヘッダ情報を含んでも良い。
【0036】
インループフィルタ処理部150は、加算器122から出力されるフィルタ処理前復号信号に対してフィルタ処理を行うとともに、フィルタ処理後復号信号をフレームバッファ160に出力するように構成されている。
【0037】
ここで、例えば、フィルタ処理は、ブロック(符号化ブロック、予測ブロック又は変換ブロック)の境界部分で生じる歪みを減少するデブロッキングフィルタ処理である。
【0038】
フレームバッファ160は、インター予測部111で用いる参照フレームを蓄積するように構成されている。
【0039】
ここで、フィルタ処理後復号信号は、インター予測部111で用いる参照フレームを構成する。
【0040】
(インター予測部111)
以下、
図3を参照して、本実施形態に係る画像符号化装置100のインター予測部111について説明する。
図3は、本実施形態に係る画像符号化装置100のインター予測部111の機能ブロックの一例について示す図である。
【0041】
図3に示すように、インター予測部111は、mv導出部111Aと、AMVR部111Bと、mv洗練化部111Bと、予測信号生成部111Dとを有する。
【0042】
インター予測部111は、動きベクトルに基づいて対象ブロックに含まれる予測信号を生成するように構成されている予測部の一例である。
【0043】
mv導出部111Aは、
図3に示すように、AMVP(Adaptive Motion Vector Prediction)部111A1と、マージ部111A2とを有し、フレームバッファ160からの対象フレーム及び参照フレームを入力とし、動きベクトルを取得するように構成されている。
【0044】
AMVP部111A1は、対象フレームと参照フレームとの比較によって、参照フレームに含まれる参照ブロックを特定し、特定された参照ブロックに対する動きベクトルを探索するように構成されている。
【0045】
また、上述の探索処理を複数の参照フレーム候補に対して行い、対象ブロックで予測に用いる参照フレーム及び動きベクトルを決定し、後段の予測信号生成部111Dに出力する。
【0046】
参照フレーム及び動きベクトルについては、1つのブロックに対して最大2つずつ用いることができる。1つのブロックに対して参照フレーム及び動きベクトルを1組のみ用いる場合を「片予測」と呼び、参照フレームと動きベクトルを2組用いる場合を「双予測」と呼ぶ。以下、1組目を「L0」と呼び、2組目を「L1」と呼ぶ。
【0047】
更に、AMVP部111Aは、上述の決定した動きベクトルを最終的に画像復号装置200に伝送する際に、符号量を削減するために、隣接する符号化済みの動きベクトルから導出された動きベクトル予測子(mvp:motion vector predictor)の候補の中から、かかる対象ブロックの動きベクトルとの差分、すなわち、動きベクトル差分(mvd:motion vector difference)が小さくなるmvpを選択する。
【0048】
このように選択されたmvp及びmvdを示すインデックス及び参照フレームを示すインデックス(以下、Refidx)が符号化部140で符号化され、画像復号装置200に伝送される。かかる処理は、適応動きベクトル予測符号化(AMVP:Adaptive:Motion Vector Preidicion)と一般に呼ばれる。
【0049】
なお、上記の動きベクトルの探索方法、参照フレーム及び動きベクトルの決定方法、mvpの選択方法、mvdの算出方法については、既知の手法を採用することが可能であるため、その詳細については省略する。
【0050】
マージ部111A2は、AMVP部111A1のように、対象ブロックの動き情報を探索して導出し、更に隣接ブロックとの差分としてmvdを伝送することはせず、対象フレーム及び参照フレームを入力として、対象ブロックと同一フレームにある隣接ブロック又は対象フレームと異なるフレームにある同一位置のブロックを参照ブロックとして、当該参照ブロックの動き情報をそのまま継承して利用するように構成されている。かかる処理は、一般に、マージ符号化(以下、マージ)と呼ばれる。
【0051】
当該ブロックがマージの場合、初めに、当該ブロックに対するマージリストが構築される。マージリストは、参照フレームと動きベクトルとの組み合わせが複数列挙されたリストである。各組み合わせには、インデックス(以下、マージインデックス)が振られており、画像符号化装置100は、Refidx及び動きベクトルの組み合わせ情報(以下、動き情報)を個別に符号化する代わりに、上述のマージインデックスのみを符号化し、画像復号装置200側に伝送する。
【0052】
画像符号化装置100側と画像復号装置200側とで、マージリストの構築方法を共通化しておくことで、画像復号装置200側では、マージインデックス情報のみから動き情報を復号することができる。本実施形態に係るマージリストの構築方法及びインター予測ブロックの幾何学ブロック分割方法については後述する。
【0053】
mv洗練化部111Bは、マージ部111A2から出力される動きベクトルを修正する洗練化処理を行うように構成されている。例えば、動きベクトルを修正する洗練化処理としては、非特許文献1に記載のDMVR(Decoder side Motion Vector Refinement)が知られている。本実施形態において、かかる洗練化処理として、非特許文献1に記載の既知の手法を用いることが可能であるため、説明は省略する。
【0054】
予測信号生成部111Cは、参照フレーム及び動きベクトルを入力としてMC予測画像信号を出力するように構成されている。予測信号生成部111Cにおける処理として、非特許文献1に記載の既知の手法を用いることが可能であるため、説明は省略する。
【0055】
(画像復号装置200)
以下、
図4を参照して、本実施形態に係る画像復号装置200について説明する。
図4は、本実施形態に係る画像復号装置200の機能ブロックの一例について示す図である。
【0056】
図4に示すように、画像復号装置200は、復号部210と、逆変換・逆量子化部220と、加算器230と、インター予測部241と、イントラ予測部242と、インループフィルタ処理部250と、フレームバッファ260とを有する。
【0057】
復号部210は、画像符号化装置100によって生成される符号化データを復号し、係数レベル値を復号するように構成されている。
【0058】
ここで、復号は、例えば、符号化部140で行われるエントロピー符号化とは逆の手順のエントロピー復号である。
【0059】
また、復号部210は、符号化データの復号処理によって制御データを取得するように構成されていてもよい。
【0060】
なお、上述したように、制御データは、符号化ブロックサイズ、予測ブロックサイズ、変換ブロックサイズ等のサイズデータを含んでもよい。
【0061】
逆変換・逆量子化部220は、復号部210から出力される係数レベル値の逆変換処理を行うように構成されている。ここで、逆変換・逆量子化部220は、逆変換処理に先立って、係数レベル値の逆量子化を行うように構成されていてもよい。
【0062】
ここで、逆変換処理及び逆量子化は、変換・量子化部131で行われる変換処理及び量子化とは逆の手順で行われる。
【0063】
加算器230は、逆変換・逆量子化部220から出力される予測残差信号に予測信号を加算してフィルタ処理前復号信号を生成し、フィルタ処理前復号信号をイントラ予測部242及びインループフィルタ処理部250に出力するように構成されている。
【0064】
ここで、フィルタ処理前復号信号は、イントラ予測部242で用いる参照ブロックを構成する。
【0065】
インター予測部241は、インター予測部111と同様に、インター予測(フレーム間予測)によって予測信号を生成するように構成されている。
【0066】
具体的には、インター予測部241は、符号化データから復号した動きベクトル及び参照フレームに含まれる参照信号に基づいて予測信号を予測ブロック毎に生成するように構成されている。インター予測部241は、予測信号を加算器230に出力するように構成されている。
【0067】
イントラ予測部242は、イントラ予測部112と同様に、イントラ予測(フレーム内予測)によって予測信号を生成するように構成されている。
【0068】
具体的には、イントラ予測部242は、対象フレームに含まれる参照ブロックを特定し、特定された参照ブロックに基づいて予測信号を予測ブロック毎に生成するように構成されている。イントラ予測部242は、予測信号を加算器230に出力するように構成されている。
【0069】
インループフィルタ処理部250は、インループフィルタ処理部150と同様に、加算器230から出力されるフィルタ処理前復号信号に対してフィルタ処理を行うとともに、フィルタ処理後復号信号をフレームバッファ260に出力するように構成されている。
【0070】
ここで、例えば、フィルタ処理は、ブロック(符号化ブロック、予測ブロック、変換ブロック、あるいはそれらを分割したサブブロック)の境界部分で生じる歪みを減少するデブロッキングフィルタ処理である。
【0071】
フレームバッファ260は、フレームバッファ160と同様に、インター予測部241で用いる参照フレームを蓄積するように構成されている。
【0072】
ここで、フィルタ処理後復号信号は、インター予測部241で用いる参照フレームを構成する。
【0073】
(インター予測部241)
以下、
図5を参照して、本実施形態に係るインター予測部241について説明する。
図5は、本実施形態に係るインター予測部241の機能ブロックの一例について示す図である。
【0074】
図5に示すように、インター予測部241は、mv復号部241Aと、mv洗練化部241Bと、予測信号生成部241Cとを有する。
【0075】
インター予測部241は、動きベクトルに基づいて予測ブロックに含まれる予測信号を生成するように構成されている予測部の一例である。
【0076】
mv復号部241Aは、AMVP部241A1とマージ部241A2とを有し、フレームバッファ260から入力される対象フレーム及び参照フレーム、及び、画像符号化装置100から受信する制御データの復号によって、動きベクトルを取得するように構成されている。
【0077】
AMVP部241A1は、対象フレーム及び参照フレームと、画像符号化装置100から、mvp及びmvdを示すインデックス、Refidxを受信し、動きベクトルを復号するように構成されている。動きベクトルの復号方法については、既知の手法を採用すること可能であるため、その詳細については省略する。
【0078】
マージ部241A2は、画像符号化装置100から、マージインデックスを受信し、動きベクトルを復号するように構成されている。
【0079】
具体的には、マージ部241A2は、画像符号化装置100と同じ方法で、マージリストを構築して、受信したマージインデックスに対応する動きベクトルを構築したマージリストから取得するように構成されている。マージリストの構築方法の詳細は、後述する。
【0080】
mv洗練化部241Bは、mv洗練化部111Bと同様に、動きベクトルを修正する洗練化処理を実行するように構成されている。
【0081】
予測信号生成部241Cは、予測信号生成部111Cと同様に、動きベクトルに基づいて予測信号を生成するように構成されている。
【0082】
なお、幾何学ブロック分割マージ有効時の予測信号生成処理の詳細については、後述する。その他のマージモード有効時の予測信号生成処理は、非特許文献1に記載の既知の技術を本実施形態に用いることが可能であるため、説明を省略する。
【0083】
(マージ部)
以下、
図6及び
図7を参照して、本実施形態に係る画像符号化装置100のインター予測部111のマージ部111A2及び画像復号装置200のインター予測部241のマージ部241A2について説明する。
図6及び
図7は、本実施形態に係る画像符号化装置100のインター予測部111のマージ部111A2及び画像復号装置200のインター予測部241のマージ部241A2の機能ブロックの一例について示す図である。
【0084】
図6に示すように、マージ部111A2は、マージモード特定部111A21と、幾何学ブロック分割部111A22と、マージリスト構築部111A23とを具備している。
【0085】
また、
図7に示すように、マージ部241A2は、マージモード特定部241A21と、幾何学ブロック分割部241A22と、マージリスト構築部241A23とを具備している。
【0086】
マージ部111A2とマージ部241A2との違いは、マージモード特定部111A21及びマージモード特定部241A21、幾何学ブロック分割部111A22及び幾何学ブロック分割部241A22、マージリスト構築部111A23及びマージリスト構築部241A23において、後述する各種インデックスの入出力が逆になっている点にある。
【0087】
すなわち、マージ部111A2において出力された各種インデックスは、マージ部241A2において入力される。それ以外は、マージ部111A2の機能及びマージ部241A2に機能は、同一であるため、以降では、説明を簡素化するため、マージ部241A2に機能について代表して説明する。
【0088】
マージモード特定部241A21は、矩形分割された対象ブロックに対して、幾何学ブロックマージモードの適用有無を特定するように構成されている。
【0089】
マージモードには、幾何学ブロック分割マージ以外に、例えば、非特許文献1に採用されている通常マージ、サブブロックマージ、MMVD(Merge mode with MVD)、CIIP(Combined inter and intra prediction)、IBC(Intra Block Copy)等がある。
【0090】
本実施形態では、これらのマージモードに加えて、幾何学ブロック分割マージを新たに適用することで、仮に矩形分割された対象ブロックに対して、オブジェクト境界が任意の方向に現れる場合であっても、幾何学ブロック分割による適切なブロック分割形状の選択がなされるため、結果的に予測誤差が低減されることによる符号化性能向上効果と、オブジェクト境界近辺での主観画質向上効果が期待できる。
【0091】
幾何学ブロック分割部241A22は、矩形分割された対象ブロックの幾何学ブロック分割パタンを特定し、特定した分割パタンを用いて対象ブロックを幾何学ブロック分割するように構成されている。幾何学ブロック分割パタンの特定方法の詳細については後述する。
【0092】
マージリスト構築部241A23は、対象ブロックに対するマージリストを構築して動き情報を復号するように構成されている。
【0093】
マージリストの構築処理は、動き情報利用可否確認処理、動き情報登録・剪定処理、動き情報復号処理の3ステージで構成されており、それぞれの詳細は、後述する。
【0094】
(マージモード特定部241A21における幾何学ブロック分割マージの適用有無の特定方法)
以下、
図8~
図10を参照して、マージモード特定部241A21における幾何学ブロック分割マージの適用有無の特定方法を説明する。
図8~
図10は、マージモード特定部241A21における幾何学ブロック分割マージの適用有無の特定方法の一例を示すフローチャートである。
【0095】
図8に示すように、マージモード特定部241A21は、通常マージが非適用であり且つCIIPが非適用である場合に、幾何学ブロック分割マージを適用する(対象ブロックのマージモードを幾何学ブロック分割マージ)と特定するように構成されている。
【0096】
具体的には、
図8に示すように、ステップS7-1において、マージモード特定部241A21は、通常マージの適用有無を特定し、通常マージを適用すると特定する場合は、ステップS7-5に進み、通常マージを適用しないと特定する場合は、ステップS7-2に進む。
【0097】
ステップS7-2において、マージモード特定部241A21は、CIIPの適用有無を特定し、CIIPを適用すると特定する場合は、ステップS7-3に進み、CIIPを適用しないと特定する場合は、ステップS7-4に進む。
【0098】
なお、マージモード特定部241A21は、ステップS7-2をスキップして、ステップS7-4に直接進んでもよい。これは、通常マージが非適用である場合に、対象ブロックのマージモードを幾何学ブロック分割マージと特定することを意味する。
【0099】
ステップS7-3において、マージモード特定部241A21は、対象ブロックにCIIPを適用する(対象ブロックのマージモードをCIIP)と特定して、本処理を終了する。
【0100】
なお、画像符号化装置100及び画像復号装置200は、内部パラメータとして、対象ブロックに対する幾何学ブロック分割マージを適用有無の特定結果を保有する。
【0101】
ステップS7-4において、マージモード特定部241A21は、対象ブロックに幾何学ブロック分割マージを適用する(対象ブロックのマージモードを幾何学ブロック分割マージ)と特定して、本処理を終了する。
【0102】
ステップS7-5において、マージモード特定部241A21は、対象ブロックに通常マージを適用する(対象ブロックのマージモードを通常マージ)と特定して、本処理を終了する。
【0103】
なお、
図8のフローチャートにおいて、将来、ステップS7-2が、CIIP以外のマージに置換された場合であっても、マージモード特定部241A21は、置換されたマージの適用可不可の判定結果に応じて、幾何学ブロック分割マージの適用有無を特定してもよい。
【0104】
また、
図8Aのフローチャートにおいて、将来、ステップS7-2とステップS7-4との間に、CIIP以外のマージが追加された場合であっても、マージモード特定部241A21は、追加されたマージの適用可不可の判定結果に応じて、幾何学ブロック分割マージの適用有無を特定してもよい。
【0105】
次に、
図9を用いて、ステップS7-1の通常マージの適用有無の判定条件について説明する。
【0106】
図9に示すように、ステップS7-1-1において、マージモード特定部241A21は、通常マージフラグの復号要否を判定する。
【0107】
マージモード特定部241A21は、ステップS7-1-1の判定条件を満たす、すなわち、通常マージの復号が必要と判定する場合は、ステップS7-1-2に進み、ステップS7-1-1を満たさない、すなわち、通常マージの復号が不要であると判定する場合は、ステップS7-1-3に進む。
【0108】
ここで、マージモード特定部241A21は、通常マージフラグを復号不要と判定した場合は、非特許文献1に記載の方法と同様に、対象ブロックがマージによってインター予測されるかどうかを示す「general_merge_flag」及びサブブロックマージの適用有無を示すサブブロックマージフラグに基づいて、通常マージフラグの値を推定することができる。
【0109】
かかる推定方法については、非特許文献1に記載の方法と同じ方法を本実施形態で用いることが可能であるため、説明は省略する。
【0110】
ステップS7-1-1の通常マージフラグの復号要否判定条件は、CIIPの適用可不可判定条件と幾何学ブロックマージの適用可不可判定条件とによって構成されている。具体的には、以下の通りである。
- CIIPの適用可不可判定条件:
(1)対象ブロックの面積が64画素以上である。
【0111】
(2)SPSレベルのCIIP有効フラグが有効であることを示す(値が1である)。
【0112】
(3)対象ブロックのスキップモードフラグが無効であることを示す(値が0である)
(4)対象ブロックの幅が128画素未満である。
【0113】
(5)対象ブロックの高さが128画素未満である。
- 幾何学ブロックマージの適用可不可判定条件:
(1)対象ブロックの面積が64画素以上である。
【0114】
(6)SPSレベルの幾何学ブロック分割マージ有効フラグが有効であることを示す(値が1である)。
【0115】
(7)幾何学ブロック分割マージに対するマージリストのマージインデックス最大登録可能数(以下、幾何学ブロック分割マージ最大候補数)が1より大きい。
【0116】
(8)対象ブロックの幅が8画素以上である。
【0117】
(9)対象ブロックの高さが8画素以上である。
【0118】
(10)対象ブロックが含まれるスライスタイプがBスライス(双予測スライス)である。
【0119】
マージモード特定部241A21は、CIIPの適用可不可判定条件において、上記条件式(1)から(5)の全てが満たされるとき、CIIPが適用可能であると判定し、それ以外の場合は、CIIPが適用不可能であると判定する。
【0120】
なお、CIIPの適用可不可判定条件の各条件式については、非特許文献1に記載の同一の条件式を本実施形態に用いることが可能であるため、説明は省略する。
【0121】
また、マージモード特定部241A21は、幾何学ブロックマージの適用可不可判定条件において、上述の条件式(1)及び(6)~(10)の全てが満たされるとき、幾何学ブロック分割マージが適用可能であると判定し、それ以外の場合は、幾何学ブロック分割マージが適用不可能であると判定する。
【0122】
かかる条件式(1)及び(6)~(10)についての詳細は、後述する。
【0123】
マージモード特定部241A21は、ステップS7-1-1の通常マージフラグの復号要否判定条件のうち、上述のCIIPの適用可不可判定条件又は幾何学ブロック分割マージの適用可不可判定条件のいずれか一方が満たされる場合、ステップS7-1-2に進み、どちらも満たされない場合は、ステップS7-1-3に進む。
【0124】
なお、ステップS7-1-1の通常マージフラグの復号要否判定条件において、CIIP適用可不可判定条件は除かれてもよい。これは、通常マージフラグの復号要否判定条件において、幾何学ブロック分割マージの適用可不可判定条件のみを追加することを意味する。
【0125】
ステップS7-1-2において、マージモード特定部241A21は、通常マージフラグを復号して、ステップS7-1-3に進む。
【0126】
ステップS7-1-3において、マージモード特定部241A21は、通常マージフラグの値が1であるかどうかを判定し、1である場合は、ステップS7-5に進み、1でない場合は、ステップS7-2に進む。
【0127】
続いて、
図10を用いて、ステップS7-2のCIIPの適用有無の判定条件について説明する。
【0128】
図10に示すように、ステップS7-2-1において、マージモード特定部241A21は、CIIPフラグの復号要否を判定する。
【0129】
マージモード特定部241A21は、ステップS7-2-1を満たす、すなわち、CIIPフラグの復号が必要であると判定する場合は、ステップS7-2-2に進み、ステップS7-2-1を満たさない、すなわち、CIIPフラグの復号が不要であると判定する場合は、ステップS7-2-3に進む。
【0130】
ここで、マージモード特定部241A21は、CIIPフラグを復号不要と判定した場合は、以下のように、CIIPフラグの値を推定する。
【0131】
マージモード特定部241A21は、以下の諸条件を全て満たす場合は、CIIPは有効である、すなわち、CIIPフラグの値は1であるとして扱い、それ以外の場合は、CIIPは無効である、すなわち、CIIPフラグの値は0であるとして扱う。
【0132】
(1)対象ブロックの面積が64画素以上である。
【0133】
(2)通常マージフラグが0である。
【0134】
(3)SPSレベルのCIIP有効フラグが有効であることを示す(値が1である)。
【0135】
(4)対象ブロックのスキップモードフラグが有効であることを示す(値が0である)。
【0136】
(5)対象ブロックの幅が128画素未満である。
【0137】
(6)対象ブロックの高さが128画素未満である。
【0138】
(12)「general_merge_flag」が1である。
【0139】
(13)サブブロックマージフラグが0である。
【0140】
ステップS7-2-1のCIIPフラグの復号要否の判定条件は、上述のCIIP適用可不可判定条件と幾何学ブロック分割マージ可不可判定条件とによって構成されている。
【0141】
マージモード特定部241A21は、CIIP適用可不可条件及び幾何学ブロック分割マージ可不可判定条件のいずれも満たされる場合は、ステップS7-2-2に進み、いずれか一方でも満たされない場合は、ステップS7-2-3に進む。
【0142】
ここで、条件式(1)については、CIIPフラグ復号要否判定条件に入る以前の通常マージフラグの復号要否判定条件で満たすことが判定済みであるため、ステップS7-2-1から除いてもよい。
【0143】
ステップS7-2-2において、マージモード特定部241A21は、CIIPフラグを復号して、ステップS7-1-3に進む。
【0144】
ステップS7-2-3において、マージモード特定部241A21は、CIIPフラグの値が1であるかどうかを判定し、1である場合は、ステップS7-3に進み、1でない場合は、ステップS7-4に進む。
【0145】
(幾何学ブロック分割マージの可不可判定条件の解説)
以下に、幾何学ブロック分割マージ可不可判定条件に係る(1)及び(6)~(10)の詳細について説明する。
(1)幾何学ブロック分割マージが適用可能となる対象ブロックを比較的大きいブロックに制限するため、対象ブロックの面積が64画素以上とする。
(6)SPSレベルで幾何学ブロック分割マージの適用可不可を示すフラグを新たに設ける。かかるフラグが無効である場合は、対象ブロックに対して、幾何学ブロックマージが適用不可であると特定可能であるため、幾何学ブロック分割マージの適用可不可判定条件式に追加する。
(7)非特許文献1のインター予測ブロックの動き補償予測時に必要なメモリバンド幅のワーストケース超過を回避するため、対象ブロックの幅の下限を8画素以上に設定する。
(8)非特許文献1のインター予測ブロックの動き補償予測時に必要なメモリバンド幅のワーストケース超過を回避するため、対象ブロックの高さの下限を8画素以上に設定する。
(9)幾何学ブロック分割マージが適用可能な対象ブロックは、分割境界を跨いで、異なる2つの動き情報を有する。そのため、対象ブロックがBスライスに含まれる場合は、対象ブロックに対して幾何学ブロック分割マージが適用可能と特定可能である。一方で、対象ブロックがBスライス以外に含まれる場合、すなわち、対象ブロックは異なる2つの動きベクトルを持ちようがない場合は、対象ブロックに対して、幾何学ブロック分割マージは適用不可であると特定可能である。
(10)幾何学ブロック分割マージは、上述の通り、異なる2つの動き情報を必要とし、それら異なる2つの動き情報を、マージリスト構築部において、マージリストに登録された異なる2つのマージインデックスに紐づく動き情報から特定(復号)する。そのため、幾何学ブロック分割マージ最大候補数が1以下に設計或いは特定される場合は、対象ブロックに対して幾何学ブロック分割マージは適用不可であると特定可能であるため、幾何学ブロック分割マージ最大候補数を算出するパラメータを幾何学ブロック分割部の内部で持つこととする。この幾何学ブロック分割マージ最大候補数は、通常マージに対するマージリストのマージインデックス最大登録可能数(以下、マージ最大候補数)と同じ値を使用してもよいし、別の値を使用するために、例えば、マージ最大候補数からいくつ候補数を減らすかを規定するフラグを画像符号化装置100から画像復号装置200に伝送して、かかるフラグを復号することで算出してもよい。
【0146】
[変更例1:幾何学ブロック分割マージの可不可判定条件へのブロックアスペクト比による判定条件の追加]
以下、
図11を参照して、本発明の変更例1について、上述の第1実施形態との相違点に着目して説明する。
【0147】
本変更例1において、上述の幾何学ブロック分割マージ可不可判定条件に対して、対象ブロックに対する幾何学ブロック分割マージの適用を更に制限するために、対象ブロックのブロックサイズ(上限)又はブロックアスペクト比による判定を追加してもよい。
【0148】
第1に、幾何学ブロック分割マージが適用可能であると特定される対象ブロックの高さ及び幅のそれぞれの上限を、例えば、64画素以下とする条件式を追加することを考える。
【0149】
かかる高さ及び幅の上限を64画素以下とする理由は、非特許文献1に採用されている仮想パイプラインデータユニット(VPDU:Virtual Pipeline Data Units)と呼ばれる画像復号装置200のパイプライン処理単位を維持するための制約違反を回避するためである。
【0150】
非特許文献1では、VPDUのサイズが64×64画素と設定されているため、幾何学ブロック分割マージの適用対象範囲の上限を64画素とする。
【0151】
一方で、かかる上限を、設計者の意図で、例えば、32画素以下のように更に小さい上限を設定してもよい。
【0152】
幾何学ブロック分割マージは、MC予測画像信号を生成する際に、幾何学ブロック分割境界を跨いで持つ異なる2つの動きベクトルに基づいて生成されたMC予測画像信号を、幾何学ブロック分割境界からの距離によって重み付されたブレンディングマスクテーブルを用いて生成される。
【0153】
対象ブロックの幅及び高さの上限を小さくすれば、かかるブレンディングマスクテーブルのサイズを小さくすることができ、画像符号化装置100及び画像復号装置200のメモリに対して保持される必要がある当該ブレンディングマスクテーブルのサイズを小さくしてメモリの記録容量を小さくできることは実装上望ましい。
【0154】
第2に、幾何学ブロック分割マージが適用可能と特定される対象ブロックのアスペクト比を、例えば、アスペクト比が4以下とする条件式を追加することを考える。
【0155】
かかるアスペクト比が8以上のような細長い矩形ブロックは、自然画像において発生しにくい。そのため、このような矩形ブロックに対して、幾何学ブロック分割マージの適用を禁止すれば、後述する幾何学ブロック分割の分割形状のバリエーション数(矩形ブロック内における幾何学ブロック分割境界の位置及び方向を規定するパラメータのバリエーション数)を削減することが可能となり、画像符号化装置100及び画像復号装置200において、同バリエーションを規定するためのパラメータの記録容量が削減できる効果がある。
【0156】
(幾何学ブロック分割部における幾何学ブロック分割パタンの規定方法)
以下、
図11を参照して、本実施形態に係る幾何学ブロック分割部241A22における幾何学ブロック分割パタンの規定方法について説明する。
図11は、本実施形態に係る幾何学ブロック分割パタンの規定方法の一例を示す図である。
【0157】
幾何学ブロック分割パタンは、例えば、
図11に示すように、幾何学ブロック分割境界線の位置、すなわち、矩形分割された対象ブロックの中心点(以下、中心点)から幾何学ブロック分割境界線(以下、分割境界線)までの距離ρと、分割境界線に対する中心点からの垂線における水平方向からの仰角φの2つのパラメータで規定してもよい。
【0158】
また、かかる距離ρと仰角φとの組み合わせは、インデックスを用いて、画像符号化装置100(マージ部111A2)から画像復号装置200(マージ部241A2)に伝送されてもよい。
【0159】
幾何学ブロック分割パタンを規定する距離ρと角度φとの組み合わせのバリエーションが多いほど、より予測誤差の低減が期待できるが、一方で、距離ρと仰角φとの組み合わせの特定に必要な処理時間の増大、及び、かかる組み合わせを示すためのインデックスの符号長の増大が、トレードオフの関係になるため、設計者の意図で量子化された距離ρ及び仰角φを用いてもよい。
【0160】
ここで、量子化された距離ρは、例えば、所定の画素単位で設計されてもよい。また、量子化された仰角φは、例えば、360度を等分割した角度で設計されてもよい。
【0161】
[変更例2:仰角ρの規定方法]
以下、
図12を参照して、本発明の変更例2について、上述の第1実施形態及び変更例1との相違点に着目して説明する。
図12は、上述の幾何学ブロック分割パタンを規定する仰角φの変更例を示す図である。
【0162】
上述の変更例1では、仰角φの規定方法の一例として、360度を等分割した角度を用いて仰角φを規定する方法を示したが、本変更例では、
図12(b)に示すように、対象ブロックの取り得るブロックのアスペクト比及び水平・垂直方向を用いて仰角φを規定してもよい。
【0163】
例えば、
図12(c)に示すように、仰角φは、逆正接関数を用いて表現され得る。本変更例で、
図12(a)に示すように、合計で24通りの仰角φを規定した例を示している。
【0164】
[変更例3:分割境界線の位置(距離ρ)の規定方法]
以下、
図13を参照して、本発明の変更例3について、上述の第1実施形態及び変更例1~2との相違点に着目して説明する。
図13は、上述の幾何学ブロック分割パタンを規定する位置(距離ρ)の変更例について示す図である。
【0165】
上述の変更例1~2では、対象ブロックの中心点から分割境界線までの垂線距離として、距離ρを規定していたが、本変更例では、
図13に示すように、中心点を含めた、中心点からの水平方向或いは垂直方向における所定距離(所定位置)として、距離ρを規定してもよい。
【0166】
図13の例では、対象ブロックのブロックアスペクト比に応じて、距離ρを2通り規定している。
【0167】
第1に、
図13(a)に示すように、横長ブロックに対して、水平方向のみに距離ρを規定してもよい。
【0168】
第2に、
図13(b)に示すように、縦長ブロックに対して、垂直方向のみに距離ρを規定してもよい。
【0169】
ただし、横長ブロックに対しては仰角φが0度(180度)である限り、また、縦長ブロックに対しては仰角90度(270度)である限り、それぞれ垂直方向及び水平方向の距離ρを規定してもよい。
【0170】
なお、正方形ブロックに対しては、水平方向又は垂直方向のいずれか或いは双方に距離ρを規定してもよい。また、距離ρは、例えば、
図13に示すように、対象ブロックの幅或いは高さを8等分した所定距離(所定位置)に対して、バリエーションを持つこととしてもよい。
【0171】
図13の例では、中心点から水平方向(左右方向)或いは垂直方向(上下方向)に対して、対象ブロックの幅又は高さの0/8倍、1/8倍、2/8倍、3/8倍した距離(位置)に、距離ρを規定している。
【0172】
ここで、横長ブロックの仰角0度(180度)以外及び縦長ブロックの仰角90度(270度)以外で、それぞれ垂直方向及び水平方向の距離(短辺方向の距離)を規定しない理由は、短辺方向に対して距離ρを規定しての幾何学ブロック分割パタンのバリエーション数を増やす効果が、長辺方向に距離ρを規定して幾何学ブロック分割パタンのバリエーションを増やす効果と比較して、小さいためである。
【0173】
幾何学ブロック分割による分割境界線は、
図13に示すように、分割境界線及び上述のように規定された所定距離(所定位置)ρにある点を通り、仰角φに対する垂線として設計できる。
【0174】
なお、本変更例3は、上述の変更例2と組み合わせることが可能であり、仰角φにおいて180度対になる角度については、上述の距離ρに対する垂線が同一になる、すなわち、分割境界線が同一になる。
【0175】
そのため、例えば、0度以上且つ180度未満の範囲内にある仰角φ及び180度以上且つ360度未満の範囲内にある仰角φは、
図13に示すように、中心点を線対称として、左右方向或いは上下方向の距離ρに対して、それぞれ使用を制限することで、幾何学ブロック分割パタンの重複を回避することができる。
【0176】
かかる仰角φの範囲と距離ρの水平方向(左右方向)及び垂直方向(上下方向と組み合わせは、逆にしても同じ幾何学ブロック分割パタンのバリエーションを示すこととなるので、設計者の意図で自由に実装を変更してもよい。
【0177】
[変更例4:仰角φ及び位置(距離)ρの規定方法の変更、バリエーション削減]
以下、
図14~
図15を参照して、本発明の変更例4について、上述の第1実施形態及び変更例1~3との相違点に着目して説明する。
図14は、仰角φ及び距離ρの規定方法に関する変更例を示す図である。
【0178】
上述の変更例2では、ブロックアスペクト比を用いた仰角φの規定方法について説明し、上述の変更例3では、中心点からの水平方向及び垂直方向への所定距離(所定位置)を用いた距離(位置)ρの規定方法について説明した。
【0179】
本変更例では、仰角φ及び距離(位置)ρの実装簡素化のために、
図14(a)~(c)に示すように、所定の距離(位置)ρにある点を通り且つ仰角φが示す線を、分割境界線そのものと規定して実装してもよい。
【0180】
また、幾何学ブロック分割パタンを削減するために、距離ρのバリエーション及び仰角φのバリエーションを、
図14(a)~(c)に示すように削減してもよい。
【0181】
具体的には、
図14(a)~(c)では、上述の変更例3で示した距離ρのバリエーションを対象ブロックの幅或いは高さの0/8倍、2/8倍の2種類に限定している。
【0182】
また、
図14(a)~(c)の例では、仰角φのバリエーションの取り得る値を、分割境界線が通る位置及び対象ブロックのブロックアスペクト比に応じて限定している。これにより、
図14(a)~(c)の例では、幾何学ブロック分割パタンのバリエーションを合計16通りに限定している。
【0183】
(幾何学ブロック分割パタンの特定方法)
以下、
図15を参照して、幾何学ブロック分割パタンの特定方法について説明する。
図15は、上述で説明した幾何学ブロック分割パタンを規定する仰角φと距離(位置)ρとの組み合わせを示すインデックステーブルの一例を示す図である。
【0184】
図15では、幾何学ブロック分割パタンを規定する仰角φ及び距離ρをそれぞれ「angle_idx」及び「distance_idx」で対応付け、更に、それらの組み合わせを「partition_idx」で規定している。
【0185】
例えば、上述の変更例2及び変更例3で示した仰角φ及び距離ρを、
図12のテーブルに記載のように、「angle_idx」及び「distance_idx」でそれぞれ0~23、0~3の整数で規定し、この組み合わせを示す「partition_idx」を復号することで、仰角φ及び距離ρが一意に決まるため、幾何学ブロック分割パタンを一意に特定することができる。
【0186】
画像符号化装置100及び画像復号装置200は、かかる幾何学ブロック分割パタンを示すインデックステーブルを互いに保有し、画像符号化装置100が、幾何学ブロック分割有効時に最も符号化コストが小さくなる幾何学ブロック分割パタンに対応する「partition_idx」を画像復号装置200に伝送し、画像復号装置200の幾何学ブロック分割部241A22は、かかる「partition_idx」を復号する。
【0187】
[変更例5:対象ブロックのサイズまたはアスペクト比に応じた「partition_idx」の復号方法の制御]
以下、
図16を参照して、本発明の変更例5について、上述の第1実施形態及び変更例1~4との相違点に着目して説明する。
図16は、対象ブロックのブロックサイズ又はブロックアスペクト比に応じた「partition_idx」の復号方法の制御の一例について説明するための図である。
【0188】
上述の例では、幾何学ブロック分割パタンの特定方法の一例として、対象ブロックのブロックサイズ又はブロックのアスペクト比に依存しない「partition_idx」の復号方法(固定のインデックステーブルを用いた幾何学ブロック分割パタンの特定方法)が示されていた。
【0189】
一方で、本変更例では、対象ブロックのブロックサイズ又はアスペクト比に応じて、「partition_idx」の復号方法を制御し、符号化効率を更に高める方法が、以下のように考えられる。
【0190】
対象ブロックのブロックサイズ又はアスペクト比に着目すると、
図16に示すように、8×8画素ブロックのような比較的小さいブロックと、32×32画素ブロックのような比較的大きいブロックでは、分割境界線のバリエーション数が同じであっても、ブロックの面積に対する分割境界線の粗密度合が異なる場合がある。
【0191】
同様に、
図16に示すように、横長ブロック及び縦長ブロックの水平・垂直方向で、上述の分割境界線の粗密度合が異なる場合も考えられる。
【0192】
このような場合において、例えば、対象ブロックのブロックサイズ又はブロックアスペクト比に応じて、「partition_idx」から仰角φ及び距離ρを特定するために使用するインデックステーブルを変更してもよい。
【0193】
例えば、ブロックサイズが小さい対象ブロックについては、幾何学ブロック分割パタン数が少ない、すなわち、「partition_idx」の最大値が小さいインデックステーブルを使用し、ブロックサイズが大きい対象ブロックについては、幾何学ブロック分割パタン数が多い、すなわち、「partition_idx」の最大値が大きいインデックステーブルを使用することで、固定のインデックステーブルを使用する上記の例よりも符号化効率を向上することができる。
【0194】
また、このブロックサイズの大小と幾何学ブロック分割パタン数との相関(ブロックサイズと幾何学ブロック分割パタン数の比例関係)を逆にしてもよい。
【0195】
言い換えると、ブロックサイズが小さい対象ブロックについては、幾何学ブロック分割パタン数が多い、すなわち、「partition_idx」の最大値が大きいインデックステーブルを使用し、ブロックサイズが大きい対象ブロックについては、幾何学ブロック分割パタン数が少ない、すなわち、「partition_idx」の最大値が小さいインデックステーブルを使用してもよい。
【0196】
対象ブロックのブロックサイズ及び幾何学ブロック分割パタン数が、比例関係にある場合は、対象ブロックのブロックサイズが異なる場合であっても、分割境界線の粗密度合を均一にできる。
【0197】
そのため、対象ブロック内に生じるオブジェクト境界に対して、幾何学ブロック分割による分割境界線をアラインさせられる確率が、ブロックサイズごとに均一にできる効果が期待できる。
【0198】
一方で、対象ブロックのブロックサイズ及び幾何学ブロック分割パタン数が、反比例関係にある場合は、上述の効果は期待できないが、小さいブロックサイズに限定して、オブジェクト境界に対して、分割境界線をアラインさせられる確率をより増加させられる効果が期待できる。
【0199】
一般に、自然画像において、オブジェクト境界が複雑に走る(複数の任意の方向に現れる)箇所は、小さいブロックで符号化されるケースが多く、一方で、オブジェクト境界が水平や垂直に近い方向に現れる場合は、矩形ブロック分割との誤差が小さいために、大きいブロックで符号化されるケースが多い。
【0200】
そのため、この考え方に基づけば、小さいブロックに対して幾何学ブロック分割パタン数を増やすことで、オブジェクト境界に対して、分割境界線をアラインさせられる確率をより増加させられる効果が期待できるため、結果的に予測誤差の低減効果が期待できる。
【0201】
同様に、横長ブロックについては、水平方向に幾何学ブロック分割パタン数を増やし、逆に垂直方向については幾何学ブロック分割パタン数を減らしてもよい。
【0202】
一方で、縦長ブロックについては、水平方向に幾何学ブロック分割パタン数を増やし、逆に垂直方向については幾何学ブロック分割パタン数を減らしてもよい。
【0203】
また、このブロックアスペクト比の大小と幾何学ブロック分割パタン数との相関は、上述のブロックサイズの大小及び幾何学ブロック分割パタン数の説明で示したように、逆にしてもよい。
【0204】
言い換えると、横長ブロックについては、水平方向に幾何学ブロック分割パタン数を減らし、逆に垂直方向については幾何学ブロック分割パタン数を増やしてもよい。
【0205】
一方で、縦長ブロックについては、水平方向に幾何学ブロック分割パタン数を減らし、逆に垂直方向については幾何学ブロック分割パタン数を増やしてもよい。
【0206】
このように相関を逆にする理由は、上記ブロックサイズの大小と幾何学ブロック分割数の相関の説明で示した考え方と同じであるため、説明は省略する。
【0207】
なお、このブロックアスペクト比に応じた幾何学ブロック分割パタン数の制御方法は、上述のケースと同様に、使用するインデックステーブルを変更することで、実現可能である。
【0208】
その他の実装例として、インデックステーブル自体は固定であるが、対象ブロックのブロックサイズ又はアスペクト比に応じて、インデックステーブル上で復号可能な「partition_idx」の値の範囲を限定する案が考えられる。
【0209】
これは、符号長状態は短くならないため、符号化効率向上には寄与しないが、画像符号化装置100観点では、不要な幾何学ブロック分割パタンにおけるコスト算出までのプロセスが省略可能であるため、符号化処理高速化に寄与できる。
【0210】
<第2実施形態>
以下、
図17~
図22を参照して、本発明の第2実施形態について、上述の第1実施形態との相違点に着目して説明する。
【0211】
(動き情報利用可否確認処理)
以下、本実施形態における動き情報利用可否確認処理について説明する。
【0212】
かかる動き情報利用可否確認処理は、上述の通り、マージリスト構築処理を構成する第1処理ステップである。
【0213】
具体的には、かかる動き情報利用可否確認処理は、対象ブロックに空間的又は時間的に隣接する参照ブロックに、動き情報があるかどうかを確認する。ここで、動き情報の確認方法については、非特許文献1に記載の既知の方法を本実施形態において用いることが可能であるため、説明は省略する。
【0214】
(マージリストへの動き情報登録・剪定処理)
以下、
図17を参照して、本実施形態に係るマージリストへの動き情報登録・剪定処理について説明する。
【0215】
図17は、本実施形態に係るマージリストへの動き情報登録・剪定処理の一例を示すフローチャートである。
【0216】
図17に示すように、本実施形態に係るマージリストへの動き情報登録・剪定処理は、非特許文献1と同様に、合計5つの動き情報登録・剪定処理によって構成されていてもよい。
【0217】
具体的には、かかる動き情報登録・剪定処理は、ステップS14-1の空間マージ、ステップS14-2の時間マージ、ステップS14-3のヒストリーマージ、ステップS14-4のペアワイズ平均マージ、ステップS14-5のゼロマージによって構成されていてもよい。それぞれの処理の詳細については、後述する。
【0218】
図18は、前記マージリストへの動き情報登録・剪定処理の結果、構築されたマージリストの一例を示す図である。マージリストとは、上述の通り、マージインデックスに対応する動き情報を登録したリストである。
【0219】
ここで、マージインデックスの最大数は、非特許文献1では、5と設定されているが、設計者の意図により、自由に設定されてもよい。
【0220】
また、
図18にあるmvL0、mvL1、RefIdxL0、RefIdxL1は、それぞれ参照画像リストL0、L1の動きベクトル及び参照画像インデックスを示す。
【0221】
ここで、参照画像リストL0、L1は、参照フレームが登録されたリストのことを示し、RefIdxによって、その参照フレームが特定される。
【0222】
なお、
図18に示すマージリストには、L0とL1双方の動きベクトル及び参照画像インデックスが示されているが、参照ブロックによっては片予測である場合がある。
【0223】
かかる場合は、1つ(片予測)の動きベクトルと1つの参照画像インデックスがリストに登録される。なお、ステップS15-1からステップS15-4の各処理の前段で、上述の動き情報利用可否確認処理によって、参照ブロックに動き情報が存在しないことが確認された場合は、各処理がスキップされる。
【0224】
(空間マージ)
図19は、空間マージについて説明するための図である。
【0225】
空間マージは、対象ブロックと同一フレームに存在する隣接ブロックから、mv、RefIdx、hpelIfIdxを継承する技術である。
【0226】
具体的には、マージリスト構築部241A23は、
図15に示すような位置関係にある隣接ブロックから、上述のmv、Refidx、hpelfIdxを継承し、マージリストに登録するように構成されている。その処理順は、非特許文献1と同様に、
図19に示すようなB
1⇒A
1⇒B
0⇒A
0⇒B
2という順序であってもよい。
【0227】
(動き情報の剪定処理)
なお、マージリストへの動き情報登録処理は、上述の処理順で行ってもよいが、マージリストに対して、既に登録済みの動き情報と同一の動き情報が登録されないように、非特許文献1と同様に、動き情報の剪定処理を実装してもよい。
【0228】
動き情報の剪定処理を実装する目的は、マージリストに登録される動き情報のバリエーションを増やすことであり、画像符号化装置100の観点では、画像特性に合わせて所定コストが最も小さくなる動き情報が選択できる点にある。
【0229】
他方、画像復号装置200では、画像符号化装置100で選択された動き情報を用いて、予測精度の高い予測信号を生成することができるため、結果的に符号化性能の向上効果が期待できる。
【0230】
空間マージに対する動き情報剪定処理は、例えば、マージリストにB1に対応する動き情報が登録された場合、次の処理順のA1に対応する動き情報の登録処理時に、登録されたB1に対応する動き情報との同一性が確認される。ここで、動き情報の同一性の確認とは、mvとRefIdxが同じであるかの比較である。ここで、同一性が確認されれば、A1に対応する動き情報は、マージリストに登録されない構成となっている。
【0231】
なお、B0に対応する動き情報はB1に対応する動き情報と比較され、A0に対応する動き情報はA1に対応する動き情報と比較され、B2に対応する動き情報はB1とA1に対応する動き情報と比較される構成となっている。なお、比較する位置に対応する動き情報が存在しない場合は、同一性の確認をスキップして、対応する動き情報を登録してもよい。
【0232】
また、非特許文献1では、空間マージによるマージインデックスの登録最大可能数を4と設定しており、隣接ブロックB2に関しては、それまでの空間マージ処理によって、既に4つの動き情報がマージリストに登録されている場合は、隣接ブロックB2の処理がスキップされる。本実施形態では、非特許文献1と同様に、隣接ブロックB2の処理を、既存の動き情報登録数によって判定してもよい。
【0233】
(時間マージ)
図20は、時間マージについて説明するための図である。
【0234】
時間マージは、対象ブロックと異なるフレームに存在するが、同一位置の左下の隣接ブロック(
図17のC
1)又は同一位置にあるブロック(
図17のC
0)を参照ブロックと特定して、動きベクトルと参照画像インデックスを継承する技術である。
【0235】
時間マージリストによる動き情報のマージリストへの登録最大数は、非特許文献1においては1となっており、本実施形態においても、同様の値を用いてもよいし、設計者の意図で変更されてもよい。
【0236】
また、時間マージにおいて継承される動きベクトルは、スケーリングされる。
図21は、そのスケーリング処理を示した図である。
【0237】
具体的には、
図21に示すように、対象ブロックの参照フレームと対象フレームが存在するフレームとの距離tb及び参照ブロックの参照フレームと参照ブロックの参照フレームとの距離tdに基づいて、参照ブロックのmvが、以下のようにスケーリングされる。
【0238】
mv’=(td/tb)×mv
時間マージでは、このスケーリングされたmv’が、マージインデックスに対応する動きベクトルとしてマージリストに登録される。
【0239】
(ヒストリーマージ)
図22は、ヒストリーマージについて説明するための図である。
【0240】
ヒストリーマージは、対象ブロックよりも過去に符号化済みのインター予測ブロックが有する動き情報を、ヒストリーマージテーブルと呼ばれる記録領域に別途記録しておき、上述の空間マージ及び時間マージの処理終了時点で、マージリストに登録された動き情報の登録数が最大数に達していない場合に、ヒストリーマージテーブルに登録された動き情報を順次マージリストに登録するという技術である。
【0241】
図22は、ヒストリーマージテーブルにより、マージリストへ動き情報が登録される処理の一例を示す図である。
【0242】
このヒストリーマージテーブルに登録される動き情報は、ヒストリーマージインデックスで管理され、その最大登録数ついては、非特許文献1において最大6となっているが、同様の値を用いてもよいし、設計者の意図によって変更してもよい。
【0243】
また、このヒストリーマージテーブルへの動き情報の登録処理は、非特許文献1では、FIFO処理を採用している。つまり、ヒストリーマージテーブルの登録された動き情報が、最大登録数に達した場合に、最後に登録されたヒストリーマージインデックスに紐づく動き情報が削除され、新規のヒストリーマージインデックスに紐づく動き情報が順次登録される構成となっている。
【0244】
なお、ヒストリーマージテーブルに登録されている動き情報は、非特許文献1と同様に、対象ブロックがCTUを跨いだ場合、初期化(全ての動き情報をヒストリーマージテーブルから削除)してもよい。
【0245】
(ペアワイズ平均マージ)
ペアワイズ平均マージは、マージリストに既に登録された2組のマージインデックスに紐づく動き情報を用いて、新たな動き情報を生成して、マージリストに登録する技術である。
【0246】
ペアワイズ平均マージに利用する2組のマージインデックスについては、非特許文献1と同様に、マージリストに登録されているマージインデックスの0番目及び1番目を固定で利用してもよいし、或いは、設計者の意図で、別の2組の組み合わせに変更してもよい。
【0247】
ペアワイズ平均マージでは、マージリストに既に登録された2組のマージインデックスに紐づく動き情報を平均化して、新たな動き情報を生成する。
【0248】
具体的には、例えば、2組のマージインデックスに対応する動きベクトルがそれぞれ2つある場合(すなわち、双予測である場合)、L0とL1方向の動きベクトルmvL0P0/mvL0P1、mvL1P0/mvL1P1によって、ペアワイズ平均マージの動きベクトルmvL0Avg/mvL1Avgは、それぞれ以下のように算出される。
【0249】
mvL0Avg=(mvL0P0+mvL0P1)/2
mvL1Avg=(mvL1P0+mvL1P1)/2
ここで、mvL0P0とmvL1P0又はmvL0P1とmvL1P1のいずれかが存在しない場合は、存在しないベクトルがゼロベクトルとして、上述のように計算される。
【0250】
このとき、非特許文献1では、ペアワイズ平均マージインデックスに紐づく参照画像インデックスをマージインデックスP0に紐づく参照画像インデックスRefIdxL0P0/RefIdxL0P1を常に使用するように定められている。
【0251】
(ゼロマージ)
ゼロマージは、上述のペアワイズ平均マージ処理が終了した時点で、マージリストの動き情報の登録数が最大登録数に達していない場合に、ゼロベクトルをマージリストに追加する処理である。登録方法については、非特許文献1に記載の既知の方法を本実施形態で用いることが可能であるため、説明は省略する。
【0252】
(マージリストからの動き情報復号処理)
マージリスト構築部241A23は、上述の動き情報登録・剪定処理の終了後に構築されたマージリストから動き情報を復号するように構成されている。
【0253】
例えば、マージリスト構築部241A23は、マージリスト構築部111A23から伝送されるマージインデックスに対応する動き情報をマージリストから選び出して復号する構成となっている。
【0254】
他方、マージリスト構築部111A23におけるマージインデックスの選定方法は、図示していないが、最も符号化コストが小さくなる動き情報をマージリスト構築部241A23に伝送する構成となっている。
【0255】
ここで、マージインデックスは、マージリストへの登録順序が早い、すなわち、インデックス番号が小さいマージインデックスの方が、符号長が短くなるため(符号化コストが小さくなるため)、マージリスト構築部111A23でインデックス番号が小さいマージインデックスが選定されやすい傾向となる。
【0256】
ここで、マージリスト構築部241A23において、幾何学ブロック分割マージが無効の場合は、対象ブロックに対して、1つのマージインデックスが復号されるが、幾何学ブロックマージが有効時は、対象ブロックに対して、幾何学ブロック分割境界を跨いだ2つの領域m/nが存在するため、異なる2つのマージインデックスm/nがそれぞれ復号される構成となっている。
【0257】
例えば、かかるマージインデックスm/nを以下のように復号することで、マージリスト構築部111A2から伝送されるm/nに対するマージインデックスが仮に同じである場合であっても、m/nに対して異なるマージインデックスを割り当てることが可能となる。
【0258】
m=merge_idx0[xCb][yCb]
n=merge_idx1[xCb][yCb]+(merge_idx1[xCb][yCb]>=m)?1:0
ここで、xCb、yCbは、対象ブロックの最左上の位置する画素値の位置情報である。
【0259】
なお、merge_idx1については、幾何学ブロック分割マージの最大マージ候補数が2個以下である場合、復号しなくてもよい。何故なら、幾何学ブロック分割マージの最大マージ候補数が2個以下である場合、merge_idx1に対応するマージリスト中のマージインデックスは、merge_idx0で選択されたマージリスト中のマージインデックスとは別のもう一つのマージインデックスに特定されるためである。
【0260】
[変更例6:幾何学ブロック分割マージ有効時のマージリスト構築の制御]
以下、
図23及び
図24を参照して、本発明の変更例6について、上述の第2実施形態との相違点に着目して説明する。具体的には、
図23及び
図24を参照して、本変更例に係る幾何学ブロック分割マージ有効時のマージリスト構築の制御について説明する。
【0261】
図23及び
図24は、幾何学ブロック分割マージ有効時の対象ブロックにおける幾何学ブロック分割パタンの一例及び対象ブロックに対する空間マージと時間マージとの位置関係の一例を示す図である。
【0262】
対象ブロックが、
図23に示す幾何学ブロック分割パタンとなる場合、ブロック分割境界線を跨いだ2つの領域m/nに対する最近接の動き情報を有する隣接ブロックは、mに対してはB
2となり、nに対してはB
1/A
1/A
0/B
0/C
1となる。
【0263】
また、対象ブロックが、
図21に示す幾何学ブロック分割パタンとなる場合、分割境界を跨いだ2つの領域m/n対する最近接の動き情報を有する隣接ブロックは、mに対してはC
1となり、nに対してはB
1/A
0/A
1/B
0/B
2となる。
【0264】
幾何学ブロック分割が有効となる場合は、上述m/nに対して最近接となる隣接ブロックの動き情報をマージリストに登録させやすくする方が、予測精度の向上効果が期待できる。
【0265】
また、予測精度向上の観点では、B1/B0やA1/A0のような空間的に類似位置にある動き情報のマージリストへの登録優先度を下げて、B2やC1等の異なる空間位置にある動き情報をマージリストに加えた方が、さらなる予測精度向上効果が期待できる。
【0266】
加えて、上述の通り、最近接の隣接ブロックの動き情報をインデックス番号の小さいマージインデックスとしてマージリストに登録すれば、符号化効率の向上ができる。
【0267】
上述の構成は、例えば、マージリストへの登録優先度を変更したい動き情報がB0及びA0の動き情報である場合、動き情報利用可否確認処理において、これらの位置に仮に動き情報が存在すると確認される場合においても、動き情報を利用不可として扱うことで、B0及びA0に続くB2及びC1に対応する動き情報をマージリストに対して登録する確率を高くできる。
【0268】
[変更例7:その他の動き情報の登録優先度変更方法]
以下に、本発明の変更例7について、上述の第2実施形態及び変更例6との相違点に着目して説明する。上述の変更例6では、幾何学ブロック分割マージ有効時の動き情報の登録優先度の変更処理を、空間マージ処理における所定位置、例えば、B0とA0の動き情報を、例え動き情報が存在する場合または既登録済の動き情報との被同一性が確認される場合であっても利用不可と扱うことで、以降に続く空間的あるいは時間的に隣接する動き情報、例えばB2やC1(C0)の動き情報の登録される確率(優先度)を間接的に高くすることを可能としている。
【0269】
一方で、その他の動き情報の登録優先度を変更する手段について以下で説明する
例えば、
図17で示したマージリストのステップS14-1の空間マージ及びステップS14-2の時間マージの処理順を分解して、直接的に動き情報の登録の順序を変更してもよい。例えば、幾何学ブロック分割マージが適用される場合、空間マージのB
2及び時間マージで登録される動き情報C
1又はC
0(以降、Colと示す)を、空間マージ処理中のB
0とA
0の前で実施する。
【0270】
例えば、以下の2つの実装例が考えられる。
【0271】
実装例1:幾何学ブロック分割マージの適用有無に応じて、通常マージのマージリストとマージリストを分岐させる方法
if ( !merge_geo_flag )
i = 0
if( availableFlagB1 )
mergeCandList[ i++ ] = B1
if( availableFlagA1 )
mergeCandList[ i++ ] = A1
if( availableFlagB0)
mergeCandList[ i++ ] = B0
if( availableFlagA0)
mergeCandList[ i++ ] = A0
if( availableFlagB2 )
mergeCandList[ i++ ] = B2
if( availableFlagC1 )
mergeCandList[ i++ ] = Col
else
i = 0
if( availableFlagB1 )
mergeCandList[ i++ ] = B1
if( availableFlagA1 )
mergeCandList[ i++ ] = A1
if( availableFlagB2)
mergeCandList[ i++ ] = B2
if( availableFlagC1
mergeCandList[ i++ ] = Col
if( availableFlagB0 )
mergeCandList[ i++ ] = B0
if( availableFlagA0 )
mergeCandList[ i++ ] = A0
ここで、merge_geo_flagは、幾何学ブロック分割マージの適用有無の判定結果を保持した内部パラメータであり、同パラメータが0の場合は幾何学ブロック分割マージが非適用、1の場合は適用することを示す。
【0272】
また、availableFlagは、空間マージ及び時間マージの各マージ候補に対する上述の動き情報利用可否確認処理の判定結果を保持した内部パラメータである。同パラメータが0の場合は動き情報が存在しない、1の場合は動き情報が存在することを示す。
【0273】
また、mergeCandListは、各位置における動き情報の登録処理を示す。最初のif文で幾何学ブロック分割マージの適用有無がmerge_geo_flagにより判定され、非適用と判定される場合は通常マージと同様のマージリスト構築処理に入り、適用と判定される場合は通常マージから動き情報利用可否確認処理と動き情報登録・剪定処理を入れ替えた幾何学ブロック分割マージのマージリスト構築処理に入る。
【0274】
実装例2:通常マージと幾何学ブロック分割マージのマージリスト構築を一部共通化させる方法
i = 0
if( availableFlagB1 )
mergeCandList[ i++ ] = B1
if( availableFlagA1 )
mergeCandList[ i++ ] = A1
if( availableFlagB0 && !merge_geo_flag )
mergeCandList[ i++ ] = B0
if( availableFlagA0 && !merge_geo_flag)
mergeCandList[ i++ ] = A0
if( availableFlagB2 )
mergeCandList[ i++ ] = B2
if( availableFlagC1 )
mergeCandList[ i++ ] = Col
if( availableFlagB0 && merge_geo_flag )
mergeCandList[ i++ ] = B0
if( availableFlagA0 && merge_geo_flag)
mergeCandList[ i++ ] = A0
この実装例2は、実装例1について合計の処理段数は増えてしまうが、幾何学ブロック分割マージ向けのマージリストを通常マージリストと一部共通化しているため、実装例1のように、完全に独立のマージリスト構築処理回路のリソースを持たなくてもよいという利点がある。
【0275】
また、上述の構成では、B2及びColの登録優先度を、B0及びA0よりも高くする構成を示したが、B2及びColの登録優先度を、B1及びA1よりも高くしてもよい。その他の構成例として、例えばB2又はColのいずれか一方を、B0及びA0よりも優先度を高くしてもよいし、或いは、B1とA1よりも優先度を高くしてもよい。
【0276】
なお、B2がB1、A1、B0、A0よりも前にマージリストに登録される場合は、上述で示したB2におけるB1、A1、B0、Aに対応する動き情報との同一性確認(比較条件)を撤廃してもよい。一方で、B1及びA1に対応する動き情報の登録時に、B2に対応する動き情報との同一性確認を追加してもよい。
【0277】
また、上述では、マージリスト構築中の動き情報の登録優先度の変更方法を述べたが、マージリスト構築後に、以下に説明する方法で登録優先度を変更してもよい。
【0278】
具体的には、マージリストに動き情報が登録される際に、いずれのマージ処理及びいずれの位置に対応する動き情報が登録されたかを内部パラメータとして、動きベクトルを復号(選定)するまで保存しておく。これにより、マージリスト構築完了後に所定のマージ処理及び所定の位置に対する動き情報、例えば、空間マージB0及びA0により登録された動き情報のマージインデックス番号を、時間マージColのマージインデックス番号と順序変更することで、時間マージColを空間マージB0及びA0よりも優先度を高くできる(小さいマージインデックス番号への対応付け実現可能である)。同様の手法を用いて、上述の間接的或いは直接的な動き情報の登録優先度の順序変更例を実現してもよい。
【0279】
上述のように、動き情報の登録優先度変更をマージリスト構築処理後にて実施する副次効果として、幾何学ブロック分割マージが有効時のマージリスト構築処理を通常マージにおけるマージリスト構築処理と共通化することができる。
【0280】
具体的には、通常マージ及び幾何学ブロック分割マージにおけるマージリスト構築処理内の動き利用可否確認処理と動き情報登録・剪定処理における各マージ処理の処理順序を共通化できることである。
【0281】
[変更例8:ブロックサイズに応じたマージリスト構築順序の変更]
以下、本発明の変更例8について、上述の第2実施形態及び変更例6~7との相違点に着目して説明する。
【0282】
上述の変更例6と変更例7では、動き情報の登録優先度の変更判定基準を、幾何学ブロック分割マージの適用有無に基づいて判定する構成を示した。
【0283】
一方で、本変更例では、かかる判定基準を、幾何学ブロック分割パタンに基づいて判定してもよいし、或いは、対象ブロックのブロックサイズ及びアスペクト比に基づいて判定してもよい。
【0284】
かかる構成によれば、幾何学ブロック分割パタンまでを確認して、マージリストの動き情報の登録優先度を変更することで、予測精度の更なる向上効果が期待できる。
【0285】
(異なる2つの動き情報の選択(復号)方法)
以下で、本実施形態に係る幾何学ブロック分割マージ有効時の異なる2つの動き情報の選択(復号)方法について説明する。
【0286】
幾何学ブロック分割マージ有効時、対象ブロックが分割境界線を跨いで異なる2つの動き情報を有すると上述した。また、この異なる2つの動き情報は、上述したマージリストの中から最も符号化コストが小さいものが符号化装置100で選定され、それぞれの分割領域m/nに対する2つのマージインデックスmerge_geo_idx0とmerge_geo_idx1を用いて、マージリストのマージインデックス番号が指定されて、画像復号装置200に伝送されて、対応する動き情報が復号されると上述した。
【0287】
一方で、指定されたマージインデックス番号に対して、2つの動き情報が登録されている場合、具体的には上述したマージ処理で登録された隣接ブロックが双予測(L0及びL1それぞれに動き情報を持つ)の場合には、その2つの動き情報が1つのマージインデックスに対して登録されている可能性があるため、いずれか一方を選択する必要がある。
【0288】
以下で、その選択方法の一例を説明する。
【0289】
例えば、1つの構成例として、マージリストのマージインデックスの番号順で、復号する動き情報の優先度を予め設定しておく手法である。具体的には、マージインデックス番号の処理順で、例えば偶数番号である0、2、4は、マージインデックスのL0に登録された動き情報を復号することを優先し、奇数番号である1、3、5のマージインデックスは、L1に登録された動き情報の復号を優先する。
【0290】
上述の構成例で、各番号順に対する該当のL0又はL1の動き情報がない場合は、存在する方の動き情報を復号してもよい。また、偶数と奇数に対するL0とL1を逆にしてもよい。
【0291】
その他の構成例も以下に示す。例えば、対象ブロックが含まれる対象フレームに対して、L0及びL1に対応する参照インデックスが示す参照フレームの距離を比較し、距離が近い参照フレームを含む動き情報を優先して復号してもよい。
【0292】
上述のように、幾何学ブロック分割マージが有効時に、分割領域のマージインデックスに対して、異なる2つの動き情報がマージリストに登録されている場合、対象フレームと距離の近い参照フレームを含む動き情報を優先して復号することで、予測誤差の低減効果が期待できる。
【0293】
なお、異なる2つの動き情報に対する参照フレームと対象フレームとの距離差が同じになる場合は、上述のように、マージリストのマージインデックスの番号に対して予め設定した優先度、すなわち、偶数番号である0、2、4はL0に登録された動き情報を優先し、奇数番号である1、3,5はL1に登録された動き情報を優先してもよい。
【0294】
対象フレームのピクチャ順序カウント(POC:Pitcure Order Count)によっては、L0及びL1に含まれる参照フレームとの距離差が同じになるため、上述のように優先度を決定してもよい。
【0295】
或いは、マージリストのマージインデックス番号で、1つ前のインデックス番号で選択された方とは反対のリストを選択してもよい。例えば、マージリストのマージインデックス1番目は、マージインデックス0番目でL0が選択された場合は、反対のリストであるL1を選択することとしてもよい。なお、マージリストのマージインデックス0番目で、当該フレーム距離差が同じである場合、L0を参照してもよい。
【0296】
上述では、対象フレームと参照フレームとの距離の近い動き情報を優先して復号する構成例を示したが、逆に対象フレームと参照フレームの距離が遠い方の動き情報を復号してもよい。
【0297】
また、それぞれの分割領域m/nに対する2つのマージインデックスmerge_geo_idx0とmerge_geo_idx1で、距離が近い方及び距離が遠い方の動き情報を復号するというように、それぞれで動き情報の復号優先度を変えてもよい。
【0298】
(幾何学ブロック分割マージにおける予測信号生成処理)
以下で、本実施形態に係る幾何学ブロック分割マージ有効時の予測信号生成処理方法について説明する。
【0299】
幾何学ブロック分割マージ有効時、対象ブロックが分割境界線を跨いで異なる2つの動き情報を有すると上述した。このとき、対象ブロックに対して、この異なる2つの動きベクトルに基づき生成した動き補償予測信号を、分割境界線からの距離に依存する重みで重み付け平均(ブレンディング)することで、分割境界線に対する画素値のスムージング効果が期待できる。
【0300】
上述の重みは、例えば、1つの幾何学ブロック分割パタンに対して、1つの重みテーブル(ブレンディングテーブル)を画像符号化装置100及び画像復号装置200が持つことで、幾何学ブロック分割パタンが特定できれば、幾何学ブロック分割パタンに適したブレンディング処理が実現できる。
【0301】
上述の実施形態によれば、矩形分割された対象ブロックに対して、幾何学ブロック分割マージを適用することにより、任意の方向に現れるオブジェクト境界に対して、適切なブロック分割形状が選択されるようになるため、結果的に予測誤差が低減されることによる符号化性能向上効果及びオブジェクト境界に対して適切なブロック分割境界が選択されることによる主観画質向上効果を実現することができる。
【0302】
なお、マージリスト構築部111A2は、幾何学ブロック分割マージの適用有無に応じて、動き情報利用可否確認処理時に、所定マージ処理に対する動き情報の存在有無に関わらずに、上述の動き情報を利用不可として扱うように構成されていてもよい。
【0303】
また、マージリスト構築部111A2は、幾何学ブロック分割マージの適用有無に応じて、動き情報登録・剪定処理時に、所定マージ処理に対する動き情報を、マージリストに既登録済みの動き情報との同一性に関わらずに剪定対象として扱う、すなわち、マージリストに新たに登録しないように構成されていてもよい。
【0304】
上述の画像符号化装置100及び画像復号装置200は、コンピュータに各機能(各工程)を実行させるプログラムであって実現されていてもよい。
【0305】
なお、上述の各実施形態では、本発明を画像符号化装置100及び画像復号装置200への適用を例にして説明したが、本発明は、これのみに限定されるものではなく、画像符号化装置100及び画像復号装置200の各機能を備えた画像符号化システム及び画像復号システムにも同様に適用できる。
【符号の説明】
【0306】
10…画像処理システム
100…画像符号化装置
111、241…インター予測部
111A…mv導出部
111A1、241A1…AMVP部
111A2、241A2…マージ部
111B、241B…mv洗練化部
111C、241C…予測信号生成部
111A21、241A21…マージモード特定部
111A22、241A22…幾何学ブロック分割部
111A23、241A23…マージリスト構築部
112、242…イントラ予測部
121…減算器
122、230…加算器
131…変換・量子化部
132、220…逆変換・逆量子化部
140…符号化部
150、250…インループフィルタ処理部
160、260…フレームバッファ
200…画像復号装置
210…復号部