(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-28
(45)【発行日】2024-06-05
(54)【発明の名称】画像復号装置、画像復号方法及びプログラム
(51)【国際特許分類】
H04N 19/50 20140101AFI20240529BHJP
H04N 19/105 20140101ALI20240529BHJP
H04N 19/159 20140101ALI20240529BHJP
H04N 19/176 20140101ALI20240529BHJP
【FI】
H04N19/50
H04N19/105
H04N19/159
H04N19/176
(21)【出願番号】P 2021129394
(22)【出願日】2021-08-05
【審査請求日】2023-07-24
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和元年度、総務省、「多様な用途、環境下での高精細映像の活用に資する次世代映像伝送・通信技術の研究開発」委託事業、産業技術力強化法第17条の適用を受ける特許出願
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】110001564
【氏名又は名称】フェリシテ弁理士法人
(72)【発明者】
【氏名】木谷 佳隆
【審査官】岩井 健二
(56)【参考文献】
【文献】国際公開第2020/106190(WO,A1)
【文献】Max Blaser, Johannes Sauer, and Mathias Wien,Description of SDR and 360° video coding technology proposal by RWTH Aachen University,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVETJ0023-v1,10th Meeting: San Diego, US,2018年04月,pp.1-14
【文献】Ruoyang Yu, et al.,Modifications of motion storage in geometric partition mode,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-R0213,18th Meeting: by teleconference,2020年04月,pp.1-5
【文献】Yoshitaka Kidani, Haruhisa Kato, and Kei Kawamura,AHG12: GPM with inter and intra prediction,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29,JVET-W0110-v2,23rd Meeting, by teleconference,2021年07月,pp.1-3
【文献】Yoshitaka Kidani, et al.,EE2-related: Combination of JVET-X0078 (Test 7/8), JVET-X0147 (Proposal-2), and GPM direct motion st,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29,JVET-X0166-v3,24th Meeting, by teleconference,2021年10月,pp.1-5
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
画像復号装置であって、
幾何学分割モードに対する動き情報を導出して動き補償画素を生成するように構成されているインター予測部と、
前記幾何学分割モードに対するイントラ予測モードを導出してイントラ予測画素を生成するように構成されているイントラ予測部と、
前記幾何学分割モードが適用された復号対象ブロックの動き情報又はイントラ予測モードと、インター予測及びイントラ予測のいずれかが適用されたかを判定可能な予測種別とを含む予測情報を保存又は出力するように構成されている予測情報バッファと、を備えることを特徴とする画像復号装置。
【請求項2】
前記インター予測部及び前記イントラ予測部は、前記復号対象ブロックを構成するサブブロック単位で算出される被保存予測情報種別に応じて、前記サブブロック単位に適用された前記予測情報の内容及び前記予測情報の保存方法を制御するように構成されていることを特徴とする請求項1に記載の画像復号装置。
【請求項3】
前記インター予測部は、前記サブブロックが有する前記被保存予測情報種別が0又は1を示す場合で且つ前記サブブロックが有する前記予測種別がインター予測である場合、前記予測情報バッファに、
前記予測種別として、インター予測を保存し、
前記動き情報として、前記被保存予測情報種別が0又は1の前記サブブロックに適用された動き情報を保存し、
前記イントラ予測モードとしては、何も保存しないように構成されていることを特徴とする請求項2に記載の画像復号装置。
【請求項4】
前記インター予測部は、前記サブブロックが有する前記被保存予測情報種別が2を示す場合で且つ前記サブブロックが有する前記予測種別が前記被保存予測情報種別が0及び1の前記サブブロックに適用された異なる2つのインター予測から構成される場合は、前記予測情報バッファに、
前記予測種別として、インター予測を保存し、
前記動き情報として、前記被保存予測情報種別が0及び1の前記サブブロックに適用されたゼロベクトルではない動き情報を保存し、
前記イントラ予測モードとしては、何も保存しないように構成されていることを特徴とする請求項2に記載の画像復号装置。
【請求項5】
前記インター予測部及び前記イントラ予測部は、前記サブブロックが有する前記被保存予測情報種別が2を示す場合で且つ前記サブブロックが有する前記予測種別が前記被保存予測情報種別が0又は1の前記サブブロックに適用されたインター予測又はイントラ予測から構成される場合は、前記予測情報バッファに、
前記予測種別として、インター予測を保存し、
前記動き情報として、前記被保存予測情報種別が0又は1の前記サブブロックのうちインター予測が適用された方の動き情報を保存し、
前記イントラ予測モードとして、前記被保存予測情報種別が0又は1の前記サブブロックのうちイントラ予測が適用された方のイントラ予測モードを保存するように構成されていることを特徴とする請求項2に記載の画像復号装置。
【請求項6】
前記イントラ予測部は、前記サブブロックが有する前記被保存予測情報種別が0又は1を示す場合で且つ前記サブブロックが有する前記予測種別がイントラ予測である場合は、前記予測情報バッファに、
前記予測種別として、イントラ予測を保存し、
前記動き情報として、ゼロベクトルから構成される動き情報を保存し、
前記イントラ予測モードとして、前記被保存予測情報種別が0又は1の前記サブブロックに適用されたイントラ予測モードを保存するように構成されていることを特徴とする請求項2に記載の画像復号装置。
【請求項7】
前記イントラ予測部は、前記サブブロックが有する前記被保存予測情報種別が2を示す場合で且つ前記サブブロックが有する前記予測種別がイントラ予測である場合は、前記予測情報バッファに、
前記予測種別として、イントラ予測を保存し、
前記動き情報として、ゼロベクトルから構成される動き情報を保存し、
前記イントラ予測モードとして、前記被保存予測情報種別が0及び1の前記サブブロックに適用されたイントラ予測モードの双方を保存するように構成されていることを特徴とする請求項2に記載の画像復号装置。
【請求項8】
前記イントラ予測部は、前記サブブロックが有する前記被保存予測情報種別が2を示す場合で且つ前記サブブロックが有する前記予測種別がイントラ予測である場合は、前記予測情報バッファに、
前記予測種別として、イントラ予測を保存し、
前記動き情報として、ゼロベクトルから構成される動き情報を保存し、
前記イントラ予測モードとして、前記被保存予測情報種別が0又は1の前記サブブロックに適用されたイントラ予測モードのいずれか一方を所定の方法により選択して保存するように構成されていることを特徴とする請求項2に記載の画像復号装置。
【請求項9】
前記インター予測部及び前記イントラ予測部は、前記動き情報を保存する場合に、前記動き情報を構成するパラメータの1つである動きベクトルとして、マージ動きベクトル差分又はインターテンプレートマッチングで修正された後の動きベクトルを保存するように構成されていることを特徴とする請求項1~5のいずれか一項に記載の画像復号装置。
【請求項10】
前記インター予測部は、前記動き情報を保存する場合に、前記動き情報を構成するパラメータの1つとして、SIF、IBC又はLICの適用有無を示すフラグのそれぞれが無効を示す値を前記予測情報バッファに保存するように構成されていることを特徴とする請求項1~9のいずれか一項に記載の画像復号装置。
【請求項11】
前記予測情報バッファは、前記幾何学分割モードが適用された前記復号対象ブロックに保存される前記予測情報に応じて、前記予測情報の削除方法を制御するように構成されていることを特徴とする請求項1に記載の画像復号装置。
【請求項12】
前記予測情報バッファは、
前記幾何学分割モードが適用された前記復号対象ブロックに保存される前記予測情報が前記動き情報である場合は、前記動き情報がフレーム内或いはフレーム外から参照されなくなる場合に、前記予測情報を削除し、
前記幾何学分割モードが適用された前記復号対象ブロックに保存される前記予測情報が前記イントラ予測モードである場合は、前記動き情報がフレーム内から参照されなくなる場合に、前記予測情報を削除するように構成されていることを特徴とする請求項11に記載の画像復号装置。
【請求項13】
画像復号装置であって、
幾何学分割モードに対する動き情報を導出して動き補償画素を生成するように構成されているインター予測部と、
前記幾何学分割モードに対するイントラ予測モードを導出してイントラ予測画素を生成するように構成されているイントラ予測部と、
前記幾何学分割モードが適用された復号対象ブロックの動き情報又はイントラ予測モードと、インター予測及びイントラ予測のいずれかが適用されたかを判定可能な予測種別とを含む予測情報を保存又は出力するように構成されている予測情報バッファと、
前記動き補償画素及び前記イントラ予測画素を所定の重み値で加重平均して新たな予測画素を合成するように構成されている合成部と、を備えることを特徴とする画像復号装置。
【請求項14】
前記合成部は、前記動き補償画素及び前記イントラ予測画素を所定の重み値で加重平均して新たな予測画素を合成する際の所定の重み値を、前記予測情報バッファに保存されるサブブロック単位の予測情報に基づいて判定することを特徴とする請求項13に記載の画像復号装置。
【請求項15】
画像復号装置であって、
幾何学分割モードに対する動き情報を導出して動き補償画素を生成するように構成されているインター予測部と、
前記幾何学分割モードに対するイントラ予測モードを導出してイントラ予測画素を生成するように構成されているイントラ予測部と、
前記幾何学分割モードが適用された復号対象ブロックの動き情報又はイントラ予測モードと、インター予測及びイントラ予測のいずれかが適用されたかを判定可能な予測種別とを含む予測情報を保存又は出力するように構成されている予測情報バッファと、
ブロック境界に対してデブロッキングフィルタを適用する際の境界強度値を判定してデブロッキングフィルタを適用するように構成されているインループフィルタ処理部と、を備えることを特徴とする画像復号装置。
【請求項16】
前記インループフィルタ処理部は、前記予測情報バッファに保存されるサブブロック単位の予測情報に基づいて境界強度値を判定することを特徴とする請求項15に記載の画像復号装置。
【請求項17】
前記予測情報バッファに保存されるサブブロック単位の予測情報は、予測種別及び動き情報及びイントラ予測モードで構成されることを特徴とする請求項14又は16に記載の画像復号装置。
【請求項18】
画像復号方法であって、
幾何学分割モードに対する動き情報を導出して動き補償画素を生成する工程と、
前記幾何学分割モードに対するイントラ予測モードを導出してイントラ予測画素を生成する工程と、
前記幾何学分割モードが適用された復号対象ブロックの動き情報又はイントラ予測モードと、インター予測及びイントラ予測のいずれかが適用されたかを判定可能な予測種別とを含む予測情報を保存又は出力する工程と、を備えることを特徴とする画像復号方法。
【請求項19】
コンピュータを、画像復号装置として機能させるプログラムであって、
前記画像復号装置は、
幾何学分割モードに対する動き情報を導出して動き補償画素を生成するように構成されているインター予測部と、
前記幾何学分割モードに対するイントラ予測モードを導出してイントラ予測画素を生成するように構成されているイントラ予測部と、
前記幾何学分割モードが適用された復号対象ブロックの動き情報又はイントラ予測モードと、インター予測及びイントラ予測のいずれかが適用されたかを判定可能な予測種別とを含む予測情報を保存又は出力するように構成されている予測情報バッファと、を備えることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像復号装置、画像復号方法及びプログラムに関する。
【背景技術】
【0002】
非特許文献1では、GPM(Geometric Partitioning Mode)が開示されている。
【0003】
GPMは、矩形ブロックを斜めに2分割しそれぞれを動き補償する。具体的には、GPMにおいて、分割された2領域は、それぞれマージモードの動きベクトルにより動き補償され、重み付き平均により合成される。斜めの分割パターンとしては、角度と位置とによって64パターンが用意されている。
【先行技術文献】
【非特許文献】
【0004】
【文献】ITU-T H.266/VVC
【文献】JVET-U0100、「Compression efficiency methods beyond VVC」
【文献】JVET-W0097、「EE2-related Combination of EE2-3.3,EE2-3.4 and EE2-3.5」
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、非特許文献1で開示されているGPMは、マージモードに限定されているため、符号化性能の改善余地があるという問題点があった。 そこで、本発明は、上述の課題に鑑みてなされたものであり、GPMにおいてイントラ予測モードを追加する場合の予測情報及び予測情報の保存方法を規定することで、符号化性能を向上させることができる画像復号装置、画像復号方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の第1の特徴は、画像復号装置であって、幾何学分割モードに対する動き情報を導出して動き補償画素を生成するように構成されているインター予測部と、前記幾何学分割モードに対するイントラ予測モードを導出してイントラ予測画素を生成するように構成されているイントラ予測部と、前記幾何学分割モードが適用された復号対象ブロックの動き情報又はイントラ予測モードと、インター予測及びイントラ予測のいずれかが適用されたかを判定可能な予測種別とを含む予測情報を保存又は出力するように構成されている予測情報バッファと、を備えることを要旨とする。
【0007】
本発明の第2の特徴は、画像復号装置であって、幾何学分割モードに対する動き情報を導出して動き補償画素を生成するように構成されているインター予測部と、前記幾何学分割モードに対するイントラ予測モードを導出してイントラ予測画素を生成するように構成されているイントラ予測部と、前記幾何学分割モードが適用された復号対象ブロックの動き情報又はイントラ予測モードと、インター予測及びイントラ予測のいずれかが適用されたかを判定可能な予測種別とを含む予測情報を保存又は出力するように構成されている予測情報バッファと、前記動き補償画素及び前記イントラ予測画素を所定の重み値で加重平均して新たな予測画素を合成するように構成されている合成部と、を備えることを要旨とする。
【0008】
本発明の第3の特徴は、画像復号装置であって、幾何学分割モードに対する動き情報を導出して動き補償画素を生成するように構成されているインター予測部と、前記幾何学分割モードに対するイントラ予測モードを導出してイントラ予測画素を生成するように構成されているイントラ予測部と、前記幾何学分割モードが適用された復号対象ブロックの動き情報又はイントラ予測モードと、インター予測及びイントラ予測のいずれかが適用されたかを判定可能な予測種別とを含む予測情報を保存又は出力するように構成されている予測情報バッファと、ブロック境界に対してデブロッキングフィルタを適用する際の境界強度値を判定してデブロッキングフィルタを適用するように構成されているインループフィルタ処理部と、を備えることを要旨とする。
【0009】
本発明の第4の特徴は、画像復号方法であって、幾何学分割モードに対する動き情報を導出して動き補償画素を生成する工程と、前記幾何学分割モードに対するイントラ予測モードを導出してイントラ予測画素を生成する工程と、前記幾何学分割モードが適用された復号対象ブロックの動き情報又はイントラ予測モードと、インター予測及びイントラ予測のいずれかが適用されたかを判定可能な予測種別とを含む予測情報を保存又は出力する工程と、を備えることを要旨とする。
【0010】
本発明の第5の特徴は、コンピュータを、画像復号装置として機能させるプログラムであって、前記画像復号装置は、幾何学分割モードに対する動き情報を導出して動き補償画素を生成するように構成されているインター予測部と、前記幾何学分割モードに対するイントラ予測モードを導出してイントラ予測画素を生成するように構成されているイントラ予測部と、前記幾何学分割モードが適用された復号対象ブロックの動き情報又はイントラ予測モードと、インター予測及びイントラ予測のいずれかが適用されたかを判定可能な予測種別とを含む予測情報を保存又は出力するように構成されている予測情報バッファと、を備えることを要旨とする。
【発明の効果】
【0011】
本発明によれば、GPMにおいてイントラ予測モードを追加する場合の予測情報及び予測情報の保存方法を規定することで、符号化性能を向上させることができる画像復号装置、画像復号方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0012】
【
図1】
図1は、一実施形態に係る画像処理システム1の構成の一例を示す図である。
【
図2】
図2は、一実施形態に係る画像符号化装置100の機能ブロックの一例を示す図である。
【
図3】
図3は、一実施形態に係る画像復号装置200の機能ブロックの一例を示す図である。
【
図4】
図4は、非特許文献1に開示されている幾何学分割モードにより、矩形の復号対象ブロックが幾何学分割モードの分割線によって、幾何学形状の分割領域Aと分割領域Bに2分割されるケースの一例を示す図である。
【
図5】
図5は、非特許文献1で開示されているマージ候補リストの構築方法を示す図である。
【
図6】
図6は、本実施形態に係るGPMに対するイントラ予測モードの適用の一例を示す。
【
図7】
図7は、本実施形態に係るGPMに対するイントラ予測モードの適用の一例を示す。
【
図8】
図8は、非特許文献1及び本実施形態に係るGPMの各分割領域A/Bの予測画素に対する重み係数wの値の一例を示す図である。
【
図9】
図9は、GPMの分割線の角度を規定するangleIdxの一例を示す図である。
【
図11】
図11は、非特許文献1で開示されている被保存予測情報種別及び本実施形態に係る被保存予測情報種別が4×4画素サブブロックごとに特定される例を示す図である。
【
図12】
図12は、GPM適用ブロックを構成するサブブロックのsTypeの値に応じて保存される非特許文献1で開示されている動き情報及び本実施形態に係る予測情報の一覧を示す図である。
【
図13】
図13は、
図4のような異なる2つのインター予測から構成されるGPMに対して保存される予測情報の一例を示す図である。
【
図14】
図14は、
図6のようなイントラ予測とインター予測から構成されるGPMに対して保存される予測情報の一例を示す図である。
【
図15】
図15は、
図7のような異なる2つのイントラ予測から構成されるGPMに対して保存される予測情報の一例を示す図である。
【
図16】
図16は、本実施形態に係る合成部243が予測情報バッファ244に保存される予測情報を用いて復号対象ブロックに隣接する隣接ブロックに幾何学分割モードが適用される場合の復号対象ブロックのインター・イントラ結合予測の重み値判定を制御する一例を示す図である。
【
図17】
図17は、インループフィルタ処理部250が隣り合うブロック境界に適用するデブロッキングフィルタの一例を示す図である。
【発明を実施するための形態】
【0013】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、以下の実施形態における構成要素は、適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組み合わせを含む様々なバリエーションが可能である。したがって、以下の実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【0014】
<第1実施形態>
以下、
図1~
図15を参照して、本発明の第1実施形態に係る画像処理システム10について説明する。
図1は、本実施形態に係る画像処理システム10について示す図である。
【0015】
(画像処理システム10)
図1に示すように、本実施形態に係る画像処理システム10は、画像符号化装置100及び画像復号装置200を有する。
【0016】
画像符号化装置100は、入力画像信号(ピクチャ)を符号化することによって符号化データを生成するように構成されている。画像復号装置200は、符号化データを復号することによって出力画像信号を生成するように構成されている。
【0017】
ここで、かかる符号化データは、画像符号化装置100から画像復号装置200に対して伝送路を介して送信されてもよい。また、符号化データは、記憶媒体に格納された上で、画像符号化装置100から画像復号装置200に提供されてもよい。
【0018】
(画像符号化装置100)
以下、
図2を参照して、本実施形態に係る画像符号化装置100について説明する。
図2は、本実施形態に係る画像符号化装置100の機能ブロックの一例について示す図である。
【0019】
図2に示すように、画像符号化装置100は、インター予測部111と、イントラ予測部112と、合成部113と、予測情報バッファ114と、減算器121と、加算器122と、変換・量子化部131と、逆変換・逆量子化部132と、符号化部140と、インループフィルタ処理部150と、フレームバッファ160とを有する。
【0020】
インター予測部111は、インター予測(フレーム間予測)によってインター予測信号を生成するように構成されている。
【0021】
具体的には、インター予測部111は、符号化対象フレーム(対象フレーム)とフレームバッファ160に格納される参照フレームとの比較によって、参照フレームに含まれる参照ブロックを特定し、特定された参照ブロックに対する動きベクトル(MV:Motion Vector)を決定するように構成されている。ここで、参照フレームは、対象フレームとは異なるフレームである。
【0022】
また、インター予測部111は、参照ブロック及び動きベクトルに基づいて符号化対象ブロック(以下、対象ブロック)に含まれるインター予測信号を対象ブロック毎に生成するように構成されている。
【0023】
また、インター予測部111は、インター予測信号を合成部113に出力するように構成されている。
【0024】
また、インター予測部111は、
図2には図示していないが、インター予測の制御に関する情報(具体的には、インター予測モードや動きベクトルや参照フレームリストや参照フレーム番号等の情報)を符号化部140に出力するように構成されている。
【0025】
イントラ予測部112は、イントラ予測(フレーム内予測)によってイントラ予測信号を生成するように構成されている。
【0026】
具体的には、イントラ予測部112は、対象フレームに含まれる参照ブロックを特定し、特定された参照ブロックに基づいてイントラ予測信号を対象ブロック毎に生成するように構成されている。ここで、参照ブロックは、対象ブロックについて参照されるブロックである。例えば、参照ブロックは、対象ブロックに隣接するブロックである。
【0027】
また、イントラ予測部112は、イントラ予測信号を合成部113に出力するように構成されている。
【0028】
また、イントラ予測部112は、
図2には図示していないが、イントラ予測の制御に関する情報(具体的には、イントラ予測モード等の情報)を符号化部140に出力するように構成されている。
【0029】
合成部113は、インター予測部111から入力されたインター予測信号又は/且つイントラ予測部112から入力されたイントラ予測信号を、予め設定された重み係数を用いて合成し、合成された予測信号(以下、まとめて予測信号と記載)を減算器121及び加算器122に出力するように構成されている。
【0030】
予測情報バッファ114は、インター予測部111又はイントラ予測部112から入力される予測情報を保存する、或いは、保存された予測情報をインター予測部111又はイントラ予測部112又は合成部113又はインループフィルタ処理部150に出力するように構成されている。ここで、予測情報の詳細については後述する。
【0031】
ここで、合成部113のインター予測信号又は/且つイントラ予測信号の合成処理に関しては、非特許文献1と同様の構成を本実施形態でも取ること可能であるため、説明は省略する。
【0032】
減算器121は、入力画像信号から予測信号を減算し、予測残差信号を変換・量子化部131に出力するように構成されている。ここで、減算器121は、イントラ予測又はインター予測によって生成される予測信号と入力画像信号との差分である予測残差信号を生成するように構成されている。
【0033】
加算器122は、逆変換・逆量子化部132から出力される予測残差信号に合成部113から出力される予測信号を加算してフィルタ処理前復号信号を生成し、かかるフィルタ処理前復号信号をイントラ予測部112及びインループフィルタ処理部150に出力するように構成されている。
【0034】
ここで、フィルタ処理前復号信号は、イントラ予測部112で用いる参照ブロックを構成する。
【0035】
変換・量子化部131は、予測残差信号の変換処理を行うとともに、係数レベル値を取得するように構成されている。さらに、変換・量子化部131は、係数レベル値の量子化を行うように構成されていてもよい。
【0036】
ここで、変換処理は、予測残差信号を周波数成分信号に変換する処理である。かかる変換処理としては、離散コサイン変換(Discrete Cosine Transform、以下、DCTと記す)に対応する基底パタン(変換行列)が用いられてもよく、離散サイン変換(Discrete Sine Transform、以下、DSTと記す)に対応する基底パタン(変換行列)が用いられてもよい。
【0037】
また、変換処理としては、非特許文献1で開示されている複数の変換基底から予測残差信号の係数の偏りに適したものを水平・垂直方向毎に選択可能とするMTS(Multiple Transform Selection)や、1次変換後の変換係数をさらに低周波数領域に集中させることで符号化性能を改善するLFNST(Low Frequecny Non-Separable Transform)が用いられてもよい。
【0038】
逆変換・逆量子化部132は、変換・量子化部131から出力される係数レベル値の逆変換処理を行うように構成されている。ここで、逆変換・逆量子化部132は、逆変換処理に先立って、係数レベル値の逆量子化を行うように構成されていてもよい。
【0039】
ここで、逆変換処理及び逆量子化は、変換・量子化部131で行われる変換処理及び量子化とは逆の手順で行われる。
【0040】
符号化部140は、変換・量子化部131から出力された係数レベル値を符号化し、符号化データを出力するように構成されている。
【0041】
ここで、例えば、符号化は、係数レベル値の発生確率に基づいて異なる長さの符号を割り当てるエントロピー符号化である。
【0042】
また、符号化部140は、係数レベル値に加えて、復号処理で用いる制御データを符号化するように構成されている。
【0043】
ここで、制御データは、符号化ブロックサイズ、予測ブロックサイズ、変換ブロックサイズ等のブロックサイズに関する情報(フラグやインデックス)を含んでもよい。
【0044】
また、制御データは、後述する画像復号装置200における逆変換・逆量子化部220の逆変換・逆量子化処理やインター予測部241のインター予測信号生成処理やイントラ予測部242のイントラ予測信号生成処理や合成部243のインター予測信号又は/且つイントラ予測信号の合成処理やインループフィルタ処理部250のフィルタ処理等の制御に必要な情報(フラグやインデックス)を含んでもよい。
【0045】
なお、非特許文献1では、これらの制御データは、シンタックスと呼称され、その定義は、セマンティクスと呼称されている。
【0046】
また、制御データは、後述するシーケンス・パラメータ・セット(SPS:Sequence Parameter Set)やピクチャ・パラメータ・セット(PPS:Picutre Parameter Set)やピクチャヘッダ(PH:Picture Header)やスライスヘッダ(SH:Slice Header)等のヘッダ情報を含んでもよい。
【0047】
インループフィルタ処理部150は、加算器122から出力されるフィルタ処理前復号信号に対してフィルタ処理を行うとともに、フィルタ処理後復号信号をフレームバッファ160に出力するように構成されている。
【0048】
ここで、例えば、フィルタ処理は、ブロック(符号化ブロック、予測ブロック又は変換ブロック)の境界部分で生じる歪みを減少するデブロッキングフィルタ処理や画像符号化装置100から伝送されるフィルタ係数やフィルタ選択情報、画像の絵柄の局所的な性質等に基づいてフィルタを切り替える適応ループフィルタ処理である。
【0049】
フレームバッファ160は、インター予測部111で用いる参照フレームを蓄積するように構成されている。
【0050】
ここで、フィルタ処理後復号信号は、インター予測部111で用いる参照フレームを構成する。
【0051】
(画像復号装置200)
以下、
図3を参照して、本実施形態に係る画像復号装置200について説明する。
図3は、本実施形態に係る画像復号装置200の機能ブロックの一例について示す図である。
【0052】
図3に示すように、画像復号装置200は、復号部210と、逆変換・逆量子化部220と、加算器230と、インター予測部241と、イントラ予測部242と、合成部243と、予測情報バッファ224と、インループフィルタ処理部250と、フレームバッファ260とを有する。
【0053】
復号部210は、画像符号化装置100によって生成される符号化データを復号し、係数レベル値を復号するように構成されている。
【0054】
ここで、復号は、例えば、符号化部140で行われるエントロピー符号化とは逆の手順のエントロピー復号である。
【0055】
また、復号部210は、符号化データの復号処理によって制御データを取得するように構成されていてもよい。
【0056】
ここで、制御データは、上述した復号ブロック(上述の画像符号化装置100における符号化対象ブロックと同義。以下、まとめて対象ブロックと記載)のブロックサイズに関する情報を含んでもよい。
【0057】
また、制御データは、逆変換・逆量子化部220の逆変換・逆量子化処理やインター予測部241やイントラ予測部242の予測画素生成処理やインループフィルタ処理部250のフィルタ処理等の制御に必要な情報(フラグやインデックス)が含んでもよい。
【0058】
また、制御データは、上述したシーケンス・パラメータ・セット(SPS:Sequence Parameter Set)やピクチャ・パラメータ・セット(PPS:Picutre Parameter Set)やピクチャヘッダ(PH:Picture Header)やスライスヘッダ(SH:Slice Header)等のヘッダ情報を含んでもよい。
【0059】
逆変換・逆量子化部220は、復号部210から出力される係数レベル値の逆変換処理を行うように構成されている。ここで、逆変換・逆量子化部220は、逆変換処理に先立って、係数レベル値の逆量子化を行うように構成されていてもよい。
【0060】
ここで、逆変換処理及び逆量子化は、変換・量子化部131で行われる変換処理及び量子化とは逆の手順で行われる。
【0061】
インター予測部241は、インター予測部111と同様に、インター予測(フレーム間予測)によってインター予測信号を生成するように構成されている。
【0062】
具体的には、インター予測部241は、符号化データから復号した動きベクトル及び参照フレームに含まれる参照信号に基づいてインター予測信号を生成するように構成されている。インター予測部241は、インター予測信号を合成部243に出力するように構成されている。
【0063】
イントラ予測部242は、イントラ予測部112と同様に、イントラ予測(フレーム内予測)によってイントラ予測信号を生成するように構成されている。
【0064】
具体的には、イントラ予測部242は、対象フレームに含まれる参照ブロックを特定し、特定された参照ブロックに基づいてイントラ予測信号を予測ブロック毎に生成するように構成されている。イントラ予測部242は、イントラ予測信号を合成部243に出力するように構成されている。
【0065】
合成部243は、合成部113と同様に、インター予測部241から入力されたインター予測信号又は/且つイントラ予測部242から入力されたイントラ予測信号を、予め設定された重み係数を用いて合成し、合成された予測信号(以下、まとめて予測信号と記載)を加算器230に出力するように構成されている。
【0066】
予測情報バッファ244は、予測情報バッファ114と同様に、インター予測部221又はイントラ予測部222から入力される予測情報を保存する、或いは、保存された予測情報をインター予測部241又はイントラ予測部242又は合成部243又はインループフィルタ処理部250に出力するように構成されている。ここで、予測情報の詳細については後述する。
【0067】
加算器230は、逆変換・逆量子化部220から出力される予測残差信号に合成部243から出力される予測信号を加算してフィルタ処理前復号信号を生成し、かかるフィルタ処理前復号信号をインループフィルタ処理部250に出力するように構成されている。
【0068】
ここで、フィルタ処理前復号信号は、イントラ予測部242で用いる参照ブロックを構成する。
【0069】
インループフィルタ処理部250は、インループフィルタ処理部150と同様に、加算器230から出力されるフィルタ処理前復号信号に対してフィルタ処理を行うとともに、フィルタ処理後復号信号をフレームバッファ260に出力するように構成されている。
【0070】
ここで、例えば、フィルタ処理は、ブロック(符号化ブロック、予測ブロック、変換ブロック或いはそれらを分割したサブブロック)の境界部分で生じる歪みを減少するデブロッキングフィルタ処理や、画像符号化装置100から伝送されるフィルタ係数やフィルタ選択情報や画像の絵柄の局所的な性質等に基づいてフィルタを切り替える適応ループフィルタ処理である。
【0071】
フレームバッファ260は、フレームバッファ160と同様に、インター予測部241で用いる参照フレームを蓄積するように構成されている。
【0072】
ここで、フィルタ処理後復号信号は、インター予測部241で用いる参照フレームを構成する。
【0073】
(幾何学分割モード)
以下、
図4~
図7を用いて、復号部210とインター予測部241とイントラ予測部242に係る非特許文献1で開示されている幾何学分割モード(GPM)及び本実施形態に係る第1の幾何学分割モード(GPM)へのイントラ予測モードへの適用について説明する。
【0074】
図4は、非特許文献1に開示されている幾何学分割モードにより、矩形の復号対象ブロックが幾何学分割モードの分割線Lによって、幾何学形状の分割領域Aと分割領域Bに2分割されるケースの一例を示す。
【0075】
ここで、非特許文献1で開示されている幾何学分割モードの分割線Lは、角度と位置とによって64パターンが用意されている。
【0076】
また、非特許文献1に係るGPMは、分割領域A及び分割領域Bのそれぞれに対して、インター予測の1種である通常マージモードを適用し、インター予測(動き補償)画素を生成する。
【0077】
具体的には、かかるGPMでは、非特許文献1で開示されているマージ候補リストを構築し、かかるマージ候補リスト及び画像符号化装置100から伝送される各分割領域A/Bに対する2つのマージインデックス(merge_gpm_idx0、merge_gpm_idx1)に基づいて、各分割領域A/Bの動きベクトル(mvA、mvB)及び参照フレームを導出して、参照ブロック、すなわち、インター予測(又は、動き補償)ブロックを生成し、最終的に各分割領域A/Bのインター予測画素が、予め設定された重みによって加重平均されて合成される。
【0078】
図5は、非特許文献1で開示されているマージ候補リストの構築方法を示す図である。
【0079】
かかるマージ候補リストは、
図5に示すように、2つの予測方向を示すリスト0(L0)及びリスト1(L1)から構成され、さらに各リストに対して複数の後述する動き情報の候補をリストに構築する。
【0080】
非特許文献1で開示されているGPMの分割領域A/Bの動き情報は、分割領域A/Bに対するmerge_gpm_idx0/merge_gpm_idx1及び
図5に示すGPM向けのマージ候補リスト(MergeCandList[m,n])によって導出される。
【0081】
ここで、merge_gpm_idx0及びmerge_gpm_idx1に基づいて導出される動き情報が極力重複しないように、merge_gpm_idx0及びmerge_gpm_idx1で選択される動き情報の導出対象となるリスト番号は、
図5のXに示すようにMergeCandListの偶数番号と奇数番号とで入れ子構造になっている。
【0082】
具体的には、merge_gpm_idx0及びmerge_gpm_idx1に基づき、以下のm及びnを計算する。
【0083】
m=merge_gpm_idx0[xCb][yCb]
n=merge_gpm_idx1[xCb][yCb]+((merge_gpm_idx1[xCb][yCb]>=m)?1:0)
このように算出されたmの値に基づき、分割領域Aの動き情報を構成する動きベクトル、参照画像インデックス及び予測リストフラグが、以下のように導出される。
【0084】
まず、Xの値をm&0x01(mの値が偶数であるか否かの判定)及びn&0x01(nの値が偶数であるか否かの判定)から算出する。ここで、算出されたXが0の場合は、Xの値を(1-X)とする。
【0085】
最後に、分割領域Aの動きベクトルmvA、参照画像インデックスrefIdxA、予測リストフラグpreListFlagA、分割領域Bの動きベクトルmvB、参照画像インデックスrefIdxB、予測リストフラグpreListFlagBを、それぞれ以下のように導出する。
【0086】
mvA=mvLXM
refIdxA=refIdxLXM
preListFlagA=X
mvB=mvLXN
refIdxB=refIdxLXN
preListFlagB=X
ここで、M及びNは、それぞれマージ候補リストにおけるm及びnが示すマージ候補の番号、すなわち、
M=MergeCandList[m]
N=MergeCandList[n]
である。
【0087】
図6及び
図7は、本実施形態に係るGPMに対するイントラ予測モードの適用の一例を示す。
【0088】
具体的に、
図6は、各分割領域A/Bに対してイントラ予測(modeX)及びインター予測が適用される場合の本実施形態に係るGPMの構成例を示す。
図7は、各分割領域にA/B対して、異なる2つのイントラ予測(modeX、modeY)が適用される場合の本実施形態に係るGPMの構成例を示す。
【0089】
ここで、本実施形態に係る第1のGPMでは、各分割領域A/Bに対しては、通常マージモード或いはイントラ予測モードのいずれも適用することができ、さらにイントラ予測モードの種別は、対象ブロックの分割形状(分割線)に応じて限定する。
【0090】
また、本実施形態に係る第2のGPMでは、復号対象ブロックにおけるイントラ予測モードを追加適用したGPMの適用の可不可及びGPM適用時の各分割領域A/Bにおける予測モード種別の特定方法に関して規定している。
【0091】
これにより、イントラ予測モードを追加適用したGPMが適切に復号対象ブロックに適用されると共に、最適な予測モードが特定されることで、結果として符号化性能のさらなる改善余地を実現することができる。
【0092】
(GPMの重み係数)
以下、
図8~
図10を用いて、復号部210、インター予測部241、イントラ予測部242及び合成部243に係る非特許文献1及び本実施形態に係るGPMの重み係数wについて説明する。
【0093】
図8は、非特許文献1及び本実施形態に係るGPMの各分割領域A/Bの予測画素に対する重み係数wの値の一例を示す図である。
【0094】
インター予測部241又はイントラ予測部242によって生成された各分割領域A/Bの予測画素が、合成部243で重み係数wによって合成(加重平均)される。
【0095】
非特許文献1において、重み係数wの値は、0~8の値が用いられており、本実施形態でも、かかる重み係数wの値を用いてもよい。ここで、重み係数wの値0、8は、非ブレンディング領域(非Blending領域)を示し、重み係数wの値1~7は、ブレンディング領域(Blending)を示す。
【0096】
なお、本実施形態において、重み係数wの計算方法は、非特許文献1と同様の方法で、画素位置(xL、yL)及び対象ブロックサイズから算出されるオフセット値(offsetX、offsetY)、
図9に示す幾何学分割モード(GPM)の分割線の角度を規定するangleIdxから算出される変位(diplacementX、diplacementY)及び
図10に示すdiplacementX、diplacementYから算出されるテーブル値disLutから、以下のように算出するように構成することができる。
【0097】
weightIdx=(((xL+offsetX)<<1)+1)×disLut[diplacementX]+(((yL+offsetY)<<1)+1)×disLut[diplacementY]
weightIdxL=partFlip?32+weightIdx:32-weightIdx
w=Clip3(0,8,(weightIdxL+4)>>3)
【0098】
(被保存動き情報種別および被保存予測情報種別)
以下、
図11を用いて、復号部210、インター予測部241、イントラ予測部242及び予測情報バッファ244に非特許文献1で開示されている被保存動き情報種別及び本実施形態に係る被保存予測情報種別について説明する。
【0099】
図11は、非特許文献1で開示されている被保存予測情報種別及び本実施形態に係る被保存予測情報種別が4×4画素サブブロックごとに特定される例を示す図である。
【0100】
両者の計算方法は、以下に示すように同じであるが、
図8に示すように、保存される情報が、非特許文献1では動き情報であるのに対して、本実施形態では予測情報である点が異なる。
【0101】
第1に、被保存動き情報種別の値及び被保存予測情報種別の値(計算方法が同じであるため、以降では、便宜的に、いずれの値もsTypeとして定義する)は、非特許文献1と同様に、4×4画素サブブロック単位のインデックス(xSbIdx、ySbIdx)、上述の重み係数wと同様に算出されるオフセット値(offsetX、offsetY)、変位(diplacementX、diplacementY)及びテーブル(disLut)から、以下のように計算される。
【0102】
motionIdx=(((4×xSbIdx+offsetX)<<1)+5)×disLut[diplacementX]+(((4×ySbIdx+offsetY)<<1)+5)×disLut[diplacementY]
sType=Abs(motionIdx)<32?2:(motionIdx<=0?(1-isFlip):isFlip)
ここで、sTypeの値は、
図11に示すように、0,1,2の3種類の値から構成され、それぞれの値に応じて、予測情報バッファ244に保存される動き情報及び予測情報が、以下のように、インター予測部241及びイントラ予測部242によって制御される。
【0103】
sTypeの値が0の場合は、非特許文献1では分割領域Aの動き情報を保存し、本実施形態では分割領域Aの予測情報を保存する。
【0104】
sTypeの値が1の場合は、非特許文献1では分割領域Bの動き情報を保存し、本実施形態では分割領域Bの予測情報を保存する。
【0105】
sTypeの値が2の場合は、非特許文献1では分割領域A及び分割領域Bの動き情報又は分割領域Bのみの動き情報を保存し、本実施形態では分割領域A及び分割領域Bの予測情報又は分割領域Bのみの予測情報を保存する。
【0106】
ここで、保存される動き情報及び予測情報については後述する。
【0107】
なお、上述のsTypeの算出単位及び後述する動き情報又は予測情報の保存単位を、上述の4×4画素サブブロック単位から、設計者の意図で変更してもよい。
【0108】
具体的には、保存する情報量を削減するために、上述のsTypeの算出単位及び後述する動き情報又は予測情報の保存単位を8×8画素や16×16画素等と大きくしてもよい。
【0109】
或いは、保存する情報量が増えるが、他のブロックやフレームから参照される際の動き情報又は予測情報の精度を向上させるために、上述のsTypeの算出単位及び後述する動き情報又は予測情報の保存単位を2×2画素等と小さくしてもよい。
【0110】
(予測情報バッファに保存される動き情報及び予測情報)
以下、
図12及び
図13を用いて、インター予測部241から予測情報バッファ244に保存される非特許文献1で開示されている動き情報及び本実施形態にかかる予測情報についてそれぞれ説明する。
【0111】
図12は、GPM適用ブロックを構成するサブブロックのsTypeの値に応じて保存される非特許文献1で開示されている動き情報及び本実施形態に係る予測情報の一覧を示す図である。
【0112】
第1に、非特許文献1で開示されているGPMで最終的に保存される動き情報は、以下のパラメータから構成される。
・予測方向(predFlagL0、predFlagL1)
・L0及びL1の動きベクトル(mvL0、mvL1)
・L0及びL1の参照画像インデックス(refIdxL0、refIdxL1)
・BcwIdx
なお、予測方向(predFlagL0、predFlagL1)は、後述するsTypeに応じて保存されるサブブロックの予測方向を示すパラメータであり、predFlagL0の値及びpredFlagL1の値に基づいて、L0片予測、L1片予測、L0/L1双予測の3種類に分類される。
【0113】
ここで、L0片予測とは、L0リストから導出した1つの動きベクトルによるインター予測であり、predFlagL0が1であり且つpredFlagL1が0であるケースが、この条件を示す値としてそれぞれ保存される。
【0114】
また、L1片予測とは、L1リストから導出した1つの動きベクトルによるインター予測であり、predFlagL0が0であり且つpredFlagL1が1であるケースが、この条件を示す値としてそれぞれ保存される。
【0115】
また、L0/L1双予測とは、L0リスト及びL1リストのそれぞれから導出した2つの動きベクトルによるインター予測であり、predFlagL0が1であり且つpredFlagL1が1であるケースが、この条件を示す値としてそれぞれ保存される。
【0116】
また、L0及びL1の動きベクトル(mvL0、mvL1)は、上述のリスト番号L0及びL1に対する動きベクトルである。
【0117】
また、L0及びL1の参照画像インデックス(refIdxL0、refIdxL1)は、それぞれmvL0及びmvL1が参照する参照フレームを示すインデックスである。
【0118】
また、BcwIdxは、非特許文献1で開示されているBCW(Bi-prediction with CU-level weights)の重み係数の値を特定するインデックスである。
【0119】
これらの非特許文献1で開示されている予測情報バッファ244に保存される動き情報に対して、本実施形態において予測情報バッファ244に保存される予測情報として、
図12に示すように、予測種別及びイントラ予測モードが保存されるパラメータとして追加される。
【0120】
ここで、予測種別は、
図12に示すようにインター予測(Inter)とイントラ予測(Intra)のいずれかを示す内部パラメータである。
【0121】
また、本実施形態に係る予測情報として、
図12に示すように、hpeIfIdxやIBC FlagやLIC Flagが追加されてもよい。
【0122】
ここで、hpeIfIdx及びIBC Flagは、それぞれ非特許文献1で開示されているSIF(Switchable Interpolation Filter)及びIBC(Intra Block Copy)、及び、非特許文献2で開示されているLIC(Local Illumination Compensation)の適用有無を特定するフラグである。
【0123】
(被保存予測情報種別に応じて保存される予測情報の詳細)
以下、
図13~
図15を用いて、本実施形態に係るインター予測部241又はイントラ予測部242が被保存予測情報種別sTypeに応じて、予測情報バッファ244に保存する予測情報の詳細を説明する。
【0124】
図13は、
図4のような異なる2つのインター予測から構成されるGPMに対して保存される予測情報の一例を示す図である。以下に、sTypeの値に応じて保存さされる各予測情報の詳細を説明する。
【0125】
第1に、予測種別は、全てのsType領域でインター予測(Inter)であることが保存される。
【0126】
第2に、predFlagL0、predFlagL1、mvL0、mvL1、refIdxL0及びrefIdxL1は、sTypeの値と、上述の分割領域A/Bの動きベクトルの導出先を示すマージ候補リストのリスト番号を示すpredListFlagA及びpredListFlagBの値とに応じて、非特許文献1に開示されている方法と同様に、以下のように保存される。
【0127】
まず、sType=0の場合は、以下のように計算される。
【0128】
predFlagL0=(predListFlagA==0)?1:0
predFlagL1=(predListFlagA==0)?0:1
refIdxL0=(predListFlagA==0)?refIdxA:-1
refIdxL1=(predListFlagA==0)?-1:refIdxA
mvL0=(predListFlagA==0)?mvA:0
mvL1=(predListFlagA==0)?0:mvA
次に、sType=1の場合、又は、sType=2且つpredListFlagA+predListFlagB≠1の場合は、以下のように計算される。
【0129】
predFlagL0=(predListFlagB==0)?1:0
predFlagL1=(predListFlagB==0)?0:1
refIdxL0=(predListFlagB==0)?refIdxB:-1
refIdxL1=(predListFlagB==0)?-1:refIdxB
mvL0=(predListFlagB==0)?mvB:0
mvL1=(predListFlagB==0)?0:mvB
ここで、predListFlagA+predListFlagB≠1は、分割領域A/Bのリスト番号が一致する場合を示す。このとき、動きベクトルの重複を避けるため、sType=2の場合であっても分割領域Bの動きベクトルのみを保存する構成としている。
【0130】
次に、sType=2且つpredListFlagA+predListFlagB=1の場合は、以下のように計算される。
【0131】
predFlagL0=1
predFlagL1=1
refIdxL0=(predListFlagA==0)?refIdxA:refIdxB
refIdxL1=(predListFlagA==0)?refIdxB:refIdxA
mvL0=(predListFlagA==0)?mvA:mvB
mvL1=(predListFlagA==0)?mvB:mvA
ここで、predListFlagA+predListFlagB=1は、分割領域A/Bのリスト番号が一致しない場合を示す。このとき、分割領域A/Bの2つ動きベクトルをそのまま保存する構成としている。
【0132】
なお、
図13では図示していないが、上述のmvL0及びmvL1は、非特許文献2で開示されているGPMに対するMMVD(Merge with Motion Vector Difference)やInter TM(Template Matching)により修正される前の動きベクトルを保存してもよい。
【0133】
或いは、上述のmvL0及びmvL1は、非特許文献2で開示されているGPMに対するMMVDやInter TMにより修正された後の動きベクトルであってもよい。
【0134】
修正後の動きベクトルを保存する場合は、当該GPM適用ブロックから動きベクトルを取得して予測画素を生成する予測ブロックの予測精度が向上する。
【0135】
一方、修正前の動きベクトルを保存する場合は、当該GPMから動きベクトルを参照する予測ブロックの予測精度の向上は期待できないが、当該GPMブロックに対するMMVD及びInter TMの処理完了を待たずに、当該GPM適用ブロックの参照元ブロックの動きベクトルの導出処理を開始できるようになるため、復号処理時間の削減が期待できる。
【0136】
なお、修正前後のいずれの動きベクトルを保存するかは、後述する
図13~
図15に対しても同様に選択可能である。
【0137】
次に、イントラ予測モードは、全てのsType領域で保存しないとしてもよい。或いは、全てのsType領域でイントラ予測が無効であることを示す値が保存されてもよい。なぜなら、
図13に示す構成では、全ての領域がインター予測であるため、対象ブロックに適用されたイントラ予測モードが存在しえないためである。
【0138】
次に、BcwIdx、hpeIfIdx、IBC Flag、LIC Flagは、全てのsType領域で無効である値ことを示す値が保存されてもよい。なぜなら、BCW、SIF、IBC及びLICは、いずれもGPMと排他の符号化ツールであるため、GPMが適用された対象ブロックでは、これらの符号化ツールが無効であることが自明であるためである。
【0139】
関連して、
図12及び
図13には図示していないが、IBCで使用される動きベクトルは保存しなくてもよいし、ゼロベクトルが保存されてもよい。これらのパラメータは、後述する
図14及び
図15においても、同様の構成を取ることができるため、
図14及び
図15におけるこれらパラメータの詳細の説明は、以降では省略する。
【0140】
図14は、
図6のようなイントラ予測とインター予測から構成されるGPMに対して保存される予測情報の一例を示す図である。以下に、sTypeの値に応じて保存される各予測情報の詳細を説明する。
【0141】
第1に、sTyper=1の場合にインター予測が適用されている分割領域(Interの分割領域)で保存される予測情報は、
図13で説明した同領域の予測情報と同一の構成を取ることができるため、説明を省略する。
【0142】
第2に、sTyper=0の場合にイントラ予測が適用されている分割領域(Intraの分割領域)で保存される予測情報は、
図14に示すように以下のように保存される。
【0143】
予測種別=Intra
predFlag0=0
predFlag1=0
mvL0=0
mvL1=0
refIdxL0=-1
refIdxL1=-1
イントラ予測モード=modeX
ここで、かかる分割領域では、イントラ予測が適用されているため、上述のように、予測種別としてIntraが保存され、イントラ予測モードとしてmodeXが保存される。
【0144】
なお、変更例として、例えば、非特許文献1のように、隣接からサブブロック単位でイントラ予測種別のみを参照し、イントラ予測モードを参照しない符号化ツールしか含まれていない場合は、予測種別としてIntraを保存しつつ、イントラ予測モードを保存しない構成をとってもよい。
【0145】
一方で、動き情報を持たないため、上述のようにpredFlag0及びpredFlagL1として0を保存し、mvL0及びmvL1として0(ゼロベクトルを意味する)を保存し、refIdxL0及びrefIdxL1として‐1(参照フレームが存在しないことを意味する)を保存してもよい。
【0146】
或いは、変更例として、予測情報バッファ244のバッファ領域の容量の逼迫を回避するために、これらの動き情報を保存しない構成をとってもよい。
【0147】
第3に、sTyper=2の場合にイントラ予測及びインター予測が適用されている分割領域(Intra+Interの分割領域)で保存される予測情報は、
図14に示すように以下のように保存される。
【0148】
予測種別=Inter
predFlag0=(predListFlagB==0)?1:0
predFlag1=(predListFlagB==0)?0:1
refIdxL0=(predListFlagB==0)?refIdxB:-1
refIdxL1=(predListFlagB==0)?-1:refIdxB
mvL0=(predListFlagB==0)?mvB:0
mvL1=(predListFlagB==0)?0:mvB
イントラ予測モード=modeX
ここで、かかる分割領域では、sType=1のイントラ予測が適用されているため、予測情報のうち、予測種別及びイントラ予測モードとしては、上述の通り、sType=1で保存されるものと同じパラメータが保存される。
【0149】
また、かかる分割領域では、sType=2のインター予測が適用されているため、予測情報のうち、動き場情報に係るパラメータとしては、上述の通り、sType=2で保存されるものと同じパラメータが保存される。
【0150】
図15は、
図7のような異なる2つのイントラ予測から構成されるGPMに対して保存される予測情報の一例を示す図である。以下に、sTypeの値に応じて保存さされる各予測情報の詳細を説明する。
【0151】
第1に、全てのsType領域で保存される予測情報のうち、イントラ予測モード以外のパラメータは、
図14で説明したsType=0の場合にIntraの分割領域で保存されるパラメータと同一の構成を取ることができるため、説明を省略する。
【0152】
第2に、sType=0の領域及びsType=1の領域のイントラ予測モードとしては、
図15に示すように、各領域で適用された異なる2つのイントラ予測モードmodeX及びmodeYがそれぞれ保存される。
【0153】
第3に、sType=2の領域では、
図15に示すように、sType=0の領域及びsType=1の領域のイントラ予測モードの双方を保存してもよいし、いずれか1つのイントラ予測モードを保存してもよい。
【0154】
前者については、例えば、2つのイントラ予測モードが画像符号化装置100及び画像復号装置200で使用可能か場合は、2つのイントラ予測モードを保存する構成をとってもよい。
【0155】
後者については、例えば、決め打ちでsType=0のイントラ予測モードをsType=2のイントラ予測モードとして選択してもよい。
【0156】
或いは、例えば、4×4画素サブブロックがいずれのイントラ予測モードから支配的に生成されたかを、例えば、4×4画素サブブロックをさらに細分割した2×2画素サブブロック単位で計算して、支配的なイントラ予測モードをsType=2の領域のイントラ予測モードとして選択してもよい。
【0157】
或いは、当該サブブロックが有する2つのイントラ予測モードが示す方向に存在する隣接する参照画素と当該サブブロックとの距離が小さい方をsType=2のイントラ予測モードとして選択してもよい。
【0158】
以上に説明した予測情報及び予測情報の保存方法を用いることで、GPMにイントラ予測を追加する場合の予測情報を、フレーム内或いはフレーム外から適切に参照することができるため、結果的に符号化性能の向上が期待できる。
【0159】
なお、以上で説明した予測情報バッファ244に保存される予測情報のうち、イントラ予測モード以外のパラメータについては、フレーム内或いはフレーム外から参照されなくなった場合に、予測情報バッファ244から削除してもよい。
【0160】
また、当該パラメータ分の保存領域を、予測情報バッファ244に確保している場合は、初期化してもよい。ここで、フレーム外から参照されなくなるタイミングは、フレームバッファ260(フレームバッファ160)から当該GPM適用ブロックが含まれるフレームが削除されるタイミングと同じである。
【0161】
さらに、予測情報バッファ244に保存される予測情報のうち、イントラ予測モードについては、フレーム内から参照されなくなった場合に、予測情報バッファ244から削除してもよい。また、当該イントラ予測モード分だけの保存領域を、予測情報バッファ244に確保している場合は、初期化してもよい。
【0162】
(隣接ブロックに幾何学分割モードが適用される場合のインター・イントラ結合予測の重み値判定制御方法)
以下、
図16を用いて、本実施形態に係る合成部243が予測情報バッファ244に保存される予測情報を用いて復号対象ブロックに隣接する隣接ブロックに幾何学分割モードが適用される場合の復号対象ブロックのインター・イントラ結合予測の重み値判定を制御する方法を説明する。
【0163】
図16は、本実施形態に係る合成部243が予測情報バッファ244に保存される予測情報を用いて復号対象ブロックに隣接する隣接ブロックに幾何学分割モードが適用される場合の復号対象ブロックのインター・イントラ結合予測の重み値判定を制御する一例を示す図である。
【0164】
ここで、非特許文献1に開示されているインター・イントラ結合予測(CIIP:Combined Inter and Intra Prediction)は、復号対象ブロックのインター予測画素(動き補償画素)PInter及びイントラ予測画素PIntraを所定の重み値wtで加重平均して新たな予測画素PCIIPを合成する技術である。
【0165】
かかる所定の重み値wtは、復号対象ブロックの左及び上に隣接する2つの隣接ブロックが有する予測種別によって以下のように算出される。
【0166】
まず、上側の隣接ブロックがイントラ予測ブロックである場合は、内部パラメータisIntraTopが1に設定される。それ以外の場合は、isIntraTopが0に設定される。
【0167】
次に、左側の隣接ブロックがイントラ予測ブロックである場合は、内部パラメータisIntraLeftが1に設定される。それ以外の場合は、isIntraLeftが0に設定される。
【0168】
次に、isIntraTop及びisIntraLeftによって、重み値wtが以下3つのパターンで判定される。
【0169】
第1に、isIntraTop+isIntraLeft=2の場合(すなわち、2つの隣接ブロック双方がイントラ予測ブロックである場合)、wt=3に設定される。
【0170】
第2に、isIntraTop+isIntraLeft=1の場合(すなわち、2つの隣接ブロックのうちいずれか一方がイントラ予測ブロックであり、もう一方がインター予測ブロックである場合)、wt=2に設定される。
【0171】
第3に、それ以外の場合(すなわち、2つの隣接ブロック双方がインター予測ブロックである場合)、wt=1に設定される。
【0172】
最後に、合成部243は、かかる重み値wtを用いて、下記式のように、PCIIPを算出する。
【0173】
P
CIIP=((4―wt)×P
inter+wt×P
intra+2)>>2
非特許文献1においては、上述のCIIPの重み値wtの判定において、隣接ブロックが有する予測種別を用いていたため、例えば、
図16に示すように、隣接ブロックにGPMが適用される場合で且つ隣接ブロックのGPMがインター予測且つイントラ予測で構成される場合において、隣接ブロックの予測種別をインター予測として判定する構成となっている。
【0174】
これに対して、本実施形態では、CIIPの重み値wtの判定において、隣接ブロックが有する予測種別を用いずに、復号対象ブロックに隣接する4×4画素サブブロック単位で保存された予測種別を用いて判定する構成をとる。
【0175】
なお、この隣接4x4画素サブブロックが有する予測種別を用いた判定は、上述したisIntraTop及びisIntraLeftによる隣接ブロックと同じ判定式を用いてもよい。
【0176】
これにより、
図16に示すようなケースで、復号対象ブロックにCIIPが適用される場合で且つ復号対象ブロックに隣接する隣接ブロックにインター予測及びイントラ予測で構成されるGPMが適用さる場合において、適切にGPMの分割領域を考慮したサブブロック単位で保存される予測情報を用いて、復号対象ブロックのCIIPの所定の重み値wtを判定できるため、予測性能の向上効果が期待できる。
【0177】
(幾何学分割モードが適用される場合のデブロッキングフィルタの境界強度値判定制御)
以下、
図17を用いて、本実施形態に係るインループフィルタ処理部250が予測情報バッファ244に保存される予測情報を用いて隣り合うブロック境界に適用するデブロッキングフィルタの境界強度値判定を制御する方法を説明する。
【0178】
図17は、インループフィルタ処理部250が隣り合うブロック境界に適用するデブロッキングフィルタの一例を示す図である。
【0179】
ここで、非特許文献1に開示されているデブロッキングフィルタは、隣り合うブロック境界に発生するブロック境界歪を平滑化する技術である。
【0180】
かかるデブロッキングフィルタの適用対象は、輝度ブロック及び色差ブロック双方であり、後述する境界強度(BS:Boundary Strength)の値に応じて、輝度ブロックに対するデブロッキングフィルタの適用有無又はフィルタ強度を判定するとともに、色差ブロックに対するデブロッキングフィルタの適用有無又はフィルタ強度を判定する。
【0181】
非特許文献1に開示されている判定する当該BS値の判定条件は、以下の6つの条件のそれぞれに対して、インループフィルタ部250が輝度信号(
図16のY)及び色差信号(
図16のU及びV)にそれぞれの値を決定する。
【0182】
条件1:判定対象画素が含まれる2つのブロックのうち、少なくとも1つのブロックが有する予測種別がイントラ予測である又はCIIPフラグが有効値を示す場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ2、2及び2に設定する。
【0183】
条件2:判定対象画素が含まれる2つのブロックのうち、少なくとも1つが非ゼロの係数を持つ場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ1、1及び1に設定する。
【0184】
条件3:判定対象画素が含まれる2つのブロックのうち、一方のブロックが有するIBCフラグが有効値を示し、もう一方のブロックが有する予測種別がインター予測である場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ1、1及び1に設定する。
【0185】
条件4:判定対象画素が含まれる2つのブロックが有する予測種別がインター予測であり、それぞれのブロックが有するMVの絶対値差が0.5輝度画素以上である場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ1、0及び0に設定する。
【0186】
条件5:判定対象画素が含まれる2つのブロックが有する予測種別がインター予測であり、それぞれのブロックが有する参照フレーム(すなわち、refIdx)が異なる場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ1、0及び0に設定する。
【0187】
条件6:条件1から条件5に該当しない場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ0、0及び0に設定する。
【0188】
ここで、非特許文献1では、上述の通り、判定対象画素が含まれる2つのブロックの予測種別の判定、CIIP適用ブロックであるか否かの判定、IBC適用ブロックであるか否かの判定及び動きベクトルの絶対値差の判定を、インループフィルタ部250がブロック単位で有する予測種別やCIIPやIBCの適用有無を示すブロック単位のフラグより判定する構成をとっている。
【0189】
これに対して、本実施形態では、予測情報バッファ244に4×4画素サブブロックで保存されている予測情報を用いて、インループフィルタ部250が判定する構成をとる。すなわち、上述した条件1から条件6を以下のように変更する。
【0190】
条件1:判定対象画素が含まれる2つのサブブロックのうち、少なくとも1つのサブブロックが有する予測種別がイントラ予測である又はCIIPフラグが有効値を示す場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ2、2及び2に設定する。
【0191】
条件2:判定対象画素が含まれる2つのサブブロックのうち、少なくとも1つが非ゼロの係数を持つ場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ1、1及び1に設定する。
【0192】
条件3:判定対象画素が含まれる2つのサブブロックのうち、一方のサブブロックが有するIBCフラグが有効値を示し、もう一方のブロックが有する予測種別がインター予測である場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ1、1及び1に設定する。
【0193】
条件4:判定対象画素が含まれる2つのサブブロックが有する予測種別がインター予測であり、それぞれのブロックが有するMVの絶対値差が0.5輝度画素以上である場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ1、0及び0に設定する。
【0194】
条件5:判定対象画素が含まれる2つのサブブロックが有する予測種別がインター予測であり、それぞれのブロックが有する参照フレーム(すなわち、refIdx)が異なる場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ1、0及び0に設定する。
【0195】
条件6:条件1から条件5に該当しない場合は、判定対象画素のY成分、U成分及びV成分のBS値をそれぞれ0、0及び0に設定する。
【0196】
なお、本実施形態におけるBS値は、上述の通り、ブロック単位の予測情報に基づいて決定される非特許文献1の各条件の値と同じ値を用いてもよい。
【0197】
これにより、
図17に示すような、イントラ予測が追加されたGPMの適用ブロックに対するデブロッキングフィルタのBS値判定において、非特許文献1に開示されている構成例よりも、判定対象画素に対するBS値を正確に判定できるため、ブロック境界歪の平滑化が最適化されて、結果として符号化性能が向上する。
【0198】
上述の画像符号化装置100及び画像復号装置200は、コンピュータに各機能(各工程)を実行させるプログラムであって実現されていてもよい。
【0199】
なお、上述の各実施形態では、本発明を画像符号化装置100及び画像復号装置200への適用を例にして説明したが、本発明は、これのみに限定されるものではなく、画像符号化装置100及び画像復号装置200の各機能を備えた画像符号化システム及び画像復号システムにも同様に適用できる。
【符号の説明】
【0200】
10…画像処理システム
100…画像符号化装置
111、241…インター予測部
112、242…イントラ予測部
113、243…合成部
114、224…予測情報バッファ
121…減算器
122、230…加算器
131…変換・量子化部
132、220…逆変換・逆量子化部
140…符号化部
150、250…インループフィルタ処理部
160、260…フレームバッファ
200…画像復号装置
210…復号部