IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本放送協会の特許一覧

特開2023-179648符号化装置、復号装置、及びプログラム
<>
  • 特開-符号化装置、復号装置、及びプログラム 図1
  • 特開-符号化装置、復号装置、及びプログラム 図2
  • 特開-符号化装置、復号装置、及びプログラム 図3
  • 特開-符号化装置、復号装置、及びプログラム 図4
  • 特開-符号化装置、復号装置、及びプログラム 図5
  • 特開-符号化装置、復号装置、及びプログラム 図6
  • 特開-符号化装置、復号装置、及びプログラム 図7
  • 特開-符号化装置、復号装置、及びプログラム 図8
  • 特開-符号化装置、復号装置、及びプログラム 図9
  • 特開-符号化装置、復号装置、及びプログラム 図10
  • 特開-符号化装置、復号装置、及びプログラム 図11
  • 特開-符号化装置、復号装置、及びプログラム 図12
  • 特開-符号化装置、復号装置、及びプログラム 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023179648
(43)【公開日】2023-12-19
(54)【発明の名称】符号化装置、復号装置、及びプログラム
(51)【国際特許分類】
   H04N 19/126 20140101AFI20231212BHJP
   H04N 19/186 20140101ALI20231212BHJP
   H04N 19/70 20140101ALI20231212BHJP
【FI】
H04N19/126
H04N19/186
H04N19/70
【審査請求】有
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2023175536
(22)【出願日】2023-10-10
(62)【分割の表示】P 2022144830の分割
【原出願日】2021-04-20
(31)【優先権主張番号】P 2020075834
(32)【優先日】2020-04-22
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001106
【氏名又は名称】弁理士法人キュリーズ
(72)【発明者】
【氏名】岩村 俊輔
(72)【発明者】
【氏名】根本 慎平
(72)【発明者】
【氏名】市ヶ谷 敦郎
(57)【要約】      (修正有)
【課題】符号化対象ブロック毎に符号化する符号化装置、復号装置及びプログラムを提供する。
【解決手段】符号化装置1は、符号化対象ブロックに対応する予測ブロックを成分毎に生成する予測部180と、符号化対象ブロックと予測ブロックとの差を表す予測残差を成分ごとに生成する残差生成部110と、前記成分毎の予測残差に対して色空間変換処理を行う色空間変換部112と、前記予測残差に対して変換処理を行うことで変換係数を生成する変換部121と、前記変換係数に対する量子化処理に用いるスケーリングリストを決定する量子化制御部123と、前記決定したスケーリングリストを用いて、前記変換係数に対して前記量子化処理を行う量子化部122と、を備える。量子化制御部は、前記色空間変換処理に基づいて前記スケーリングリストを決定する。
【選択図】図1
【特許請求の範囲】
【請求項1】
第1成分、第2成分、及び第3成分を含む3つ以上の成分により構成される画像を分割して生成した符号化対象ブロックごとに符号化する符号化装置であって、
前記符号化対象ブロックに対応する予測ブロックを成分ごとに生成する予測部と、
前記符号化対象ブロックと前記予測ブロックとの差を表す予測残差を成分ごとに生成する残差生成部と、
前記成分ごとの予測残差を更新するための更新処理により新たな予測残差を生成する残差更新部と、
前記新たな予測残差に対して変換処理を行うことで変換係数を生成する変換部と、
前記変換係数に対する量子化処理に用いる成分ごとのスケーリングリストを決定する量子化制御部と、
前記決定された成分ごとのスケーリングリストを用いて、前記変換係数に対して前記量子化処理を行う量子化部と、
前記更新処理に基づく前記成分ごとのスケーリングリストの決定動作を行うか否かを示す情報を含むシーケンスパラメータセットを出力するエントロピー符号化部と、を備えることを特徴とする符号化装置。
【請求項2】
第1成分、第2成分、及び第3成分を含む3つ以上の成分により構成される画像を分割して生成した復号対象ブロックごとに復号する復号装置であって、
ビットストリームから前記復号対象ブロックの量子化変換係数を成分ごとに復号するエントロピー復号部と、
前記復号対象ブロックに対応する予測ブロックを成分ごとに生成する予測部と、
逆量子化処理に用いる成分ごとのスケーリングリストを決定する逆量子化制御部と、
前記決定された成分ごとのスケーリングリストを用いて前記量子化変換係数に対する前記逆量子化処理を行うことで変換係数を生成する逆量子化部と、
前記変換係数に対して逆変換処理を行うことで予測残差を生成する逆変換部と、
前記予測残差を更新するための更新処理により新たな予測残差を生成する残差更新部と、を備え、
前記エントロピー復号部は、前記更新処理に基づく前記成分ごとのスケーリングリストの決定動作を行うか否かを示す情報を含むシーケンスパラメータセットを取得することを特徴とする復号装置。
【請求項3】
コンピュータを請求項1に記載の符号化装置として機能させることを特徴とするプログラム。
【請求項4】
コンピュータを請求項2に記載の復号装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、符号化装置、復号装置、及びプログラムに関する。
【背景技術】
【0002】
VVC規格案においては、入力映像のクロマフォーマットが4:4:4である場合、原画像を分割した符号化対象ブロックとその予測ブロックとの差分である予測残差を得た後に、予測残差の色空間(RGB空間)をYCgCo空間に変換し、色空間変換後の予測残差に対して変換処理・エントロピー符号化処理等の符号化処理を行う適応色変換(ACT:Adaptive Colour Transform)と呼ばれる技術が採用されている(非特許文献1参照)。
【0003】
符号化装置は、符号化対象ブロックごとにACTを適用するか否かを制御可能であり、符号化対象ブロックごとにACT適用フラグをストリーム出力する。このため、ACTにより、RGB空間において予測残差に対して変換処理・量子化処理を適用する符号化対象ブロックと、予測残差をRGB空間からYCgCo空間に変換した上で変換処理・量子化処理を適用する符号化対象ブロックとが画像(ピクチャ)全体で混在することとなる。
【0004】
ところで、VVCでは、予測残差に対して変換処理を施して得られた変換係数の量子化において、周波数成分ごとに量子化ステップを制御するスケーリングリスト(量子化行列とも呼ばれる)が導入されている。スケーリングリストは、入力映像信号を構成する3つの色成分(例えば、輝度成分、第1色差成分、及び第2色差成分)のそれぞれに対して個別に設定可能となっており、符号化装置は、スケーリングリストを適用するか否か、及び、適用する場合にはどのようなスケーリングリストを適用するかを示す情報を復号側にシグナリングする。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】JVET-Q2001 “Versatile Video Coding (Draft 8)”
【発明の概要】
【0006】
第1の態様に係る符号化装置は、第1成分、第2成分、及び第3成分を含む3つ以上の成分により構成される画像を分割して生成した符号化対象ブロックごとに符号化する符号化装置であって、前記符号化対象ブロックに対応する予測ブロックを成分ごとに生成する予測部と、前記符号化対象ブロックと前記予測ブロックとの差を表す予測残差を成分ごとに生成する残差生成部と、前記成分ごとの予測残差に対して色空間変換処理を行う色空間変換部と、前記予測残差に対して変換処理を行うことで変換係数を生成する変換部と、前記変換係数に対する量子化処理に用いるスケーリングリストを決定する量子化制御部と、前記決定されたスケーリングリストを用いて、前記変換係数に対して前記量子化処理を行う量子化部と、を備え、前記量子化制御部は、前記色空間変換処理に基づいて前記スケーリングリストを決定することを要旨とする。
【0007】
第2の態様に係る復号装置は、第1成分、第2成分、及び第3成分を含む3つ以上の成分により構成される画像を分割して生成した復号対象ブロックごとに復号する復号装置であって、ビットストリームから前記復号対象ブロックの量子化変換係数を成分ごとに復号するエントロピー復号部と、前記復号対象ブロックに対応する予測ブロックを成分ごとに生成する予測部と、変換係数に対する逆変換処理に用いるスケーリングリストを決定する逆量子化制御部と、前記量子化変換係数に対する逆変換処理を行うことで前記変換係数を生成する逆量子化部と、前記決定されたスケーリングリストを用いて前記変換係数に対して前記逆変換処理を行うことで予測残差を生成する逆変換部と、前記予測残差に対して色空間逆変換処理を行う色空間逆変換部と、前記予測残差と前記予測ブロックとを合成することで復号ブロックを生成する合成部と、を備え、前記逆量子化制御部は、前記色空間逆変換処理に基づいて前記スケーリングリストを決定することを要旨とする。
【0008】
第3の態様に係るプログラムは、コンピュータを第1の態様に係る符号化装置として機能させる。
【0009】
第4の態様に係るプログラムは、コンピュータを第2の態様に係る復号装置として機能させる。
【図面の簡単な説明】
【0010】
図1】実施形態に係る符号化装置の構成を示す図である。
図2】実施形態に係る量子化制御部の動作を示す図である。
図3】実施形態に係る復号装置の構成を示す図である。
図4】エントロピー符号化部が出力するビットストリームを示す図である。
図5】NALユニットのタイプを示す図である。
図6】VPS、SPS、PPS、及びAPSの関係を示す図である。
図7】変更例1に係るSPSの一例を示す図である。
図8】変更例1に係る量子化制御部及び逆量子化制御部の動作を示す図である。
図9】変更例2に係るSPSの一例を示す図である。
図10】変更例2に係る量子化制御部及び逆量子化制御部の動作を示す図である。
図11】変更例3に係るSPSの一例を示す図である。
図12】変更例3に係る量子化制御部及び逆量子化制御部の動作を示す図である。
図13】変更例3に係るACT適用フラグと第2フラグとの関係を示す図である。
【発明を実施するための形態】
【0011】
ACTにより、符号化対象ブロックごとに予測残差の色空間変換の有無が制御可能であることから、RGB映像である入力映像を符号化する際に、隣接する2つの符号化対象ブロックのうち、一方がACTを適用する符号化対象ブロックであり、他方がACTを適用しない符号化対象ブロックであり得る。
【0012】
表1に示すように、ACTを適用する符号化対象ブロックについては、予測残差がRGB空間からYCgCo空間に変換された後に、Y成分の予測残差に第1スケーリングリストが適用され、Cg成分の予測残差に第2スケーリングリストが適用され、Co成分の予測残差に第3スケーリングリストが適用される。一方、ACTを適用しない符号化対象ブロックについては、予測残差がRGB空間のまま、R成分の予測残差に第1スケーリングリストが適用され、G成分の予測残差に第2スケーリングリストが適用され、B成分の予測残差に第3スケーリングリストが適用される。
【0013】
【表1】
【0014】
一般的に、RGB空間における輝度成分の多くはG成分に集中することが知られており、RGB空間の映像に用いるスケーリングリストは、輝度信号がG成分に主に含まれていることを前提に設計される。輝度信号は、色差信号と比較して高い周波数成分を多く含むことが知られていることから、輝度信号に適用するよう設計されたスケーリングリストは、色差信号に適用するよう設計されたスケーリングリストと性質が大きく異なる可能性が高い。
【0015】
しかしながら、ACTを予測残差に適用することにより、輝度信号を多く含まないR成分に対して設計した第1スケーリングリストがACTによる変換後のY成分に適用されるため、本来性質の異なる成分に対して適用するよう設計されたスケーリングリストが適用されてしまい、視覚的な劣化を生じる恐れがある。
【0016】
そこで、本開示は、ACTを適用する場合であっても画質の劣化を抑制することを目的とする。
【0017】
図面を参照して、実施形態に係る符号化装置及び復号装置について説明する。実施形態に係る符号化装置及び復号装置は、MPEG(Moving Picture Experts Group)に代表される動画像の符号化及び復号をそれぞれ行う。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【0018】
<符号化装置>
まず、本実施形態に係る符号化装置の構成について説明する。図1は、本実施形態に係る符号化装置1の構成を示す図である。
【0019】
図1に示すように、符号化装置1は、ブロック分割部100と、残差生成部110と、切替部111と、色空間変換部112と、変換・量子化部120と、量子化制御部123と、エントロピー符号化部130と、逆量子化・逆変換部140と、合成部150と、ループフィルタ160と、メモリ170と、予測部180とを有する。
【0020】
ブロック分割部100は、動画像を構成するフレーム(或いはピクチャ)単位の入力画像である原画像を複数の画像ブロックに分割し、分割により得た画像ブロックを残差生成部110に出力する。画像ブロックのサイズは、例えば32×32画素、16×16画素、8×8画素、又は4×4画素等である。画像ブロックの形状は正方形に限らず長方形(非正方形)であってもよい。画像ブロックは、符号化装置1が符号化処理を行う単位(すなわち、符号化対象ブロック)であり、且つ復号装置が復号処理を行う単位(すなわち、復号対象ブロック)である。このような画像ブロックはCU(Coding Unit)と呼ばれることがある。
【0021】
本実施形態において、入力画像がRGB信号であり、クロマフォーマットが4:4:4である場合について主として説明する。RGB空間は、第1色空間の一例である。「R」成分は第1成分に相当し、「G」成分は第2成分に相当し、「B」成分は第3成分に相当する。ブロック分割部100は、画像を構成するR成分、G成分、及びB成分のそれぞれに対してブロック分割を行うことでブロックを出力する。以下の符号化装置の説明において、各成分を区別しないときは単に符号化対象ブロックと呼ぶ。
【0022】
残差生成部110は、ブロック分割部100が出力する符号化対象ブロックと、符号化対象ブロックを予測部180が予測して得た予測ブロックとの差分(誤差)を表す予測残差を算出する。具体的には、残差生成部110は、符号化対象ブロックの各画素値から予測ブロックの各画素値を減算することにより予測残差を算出し、算出した予測残差を切替部111に出力する。本実施形態において、残差生成部110は、各成分の符号化対象ブロックと、各成分の予測ブロックとの差分により各成分の予測残差を生成する。
【0023】
切替部111は、残差生成部110が出力する各成分の予測残差を変換・量子化部120及び色空間変換部112のいずれか一方に出力する。切替部111は、色空間変換処理(ACT)を行わない場合は予測残差を変換・量子化部120に出力し、色空間変換処理を行う場合は予測残差を色空間変換部112に出力する。
【0024】
色空間変換部112は、各成分の予測残差に対して色空間変換処理を行い、色空間変換処理後の予測残差を変換・量子化部120に出力する。色空間変換部112は、符号化対象ブロックの予測残差のR成分、G成分、及びB成分について下記のような変換計算を行うことで、新たな予測残差を生成する。
【0025】
Co=R-B
t=B+(Co>>1)
Cg=G-t
Y=t+(Cg>>1)
【0026】
但し、「>>」は右シフト演算を表す。また、「Y」成分は第1成分に相当し、「Gg」成分は第2成分に相当し、「Co」成分は第3成分に相当する。このようなYCgCo空間は、第2色空間の一例である。
【0027】
色空間変換部112は、符号化対象ブロックごとに色変換処理を行うか否かを制御可能である。エントロピー符号化部130は、当該符号化ブロックに対して色変換処理を行ったか否かを示すフラグ(ACT適用フラグ)をビットストリーム中でシグナリングする。
【0028】
なお、色空間変換部112における色空間変換処理は各成分に対する加算・減算・乗算・除算・シフト処理などにより新たな成分により構成される予測残差を生成すればよく、必ずしも色空間変換を行う必要はない。また、色空間変換処理は、すべての成分に影響を及ぼす変換である必要はない。例えば、色空間変換部112は、第1成分を変更せずに維持し、第2成分と第3成分との平均値を新たな第2成分とし、第2成分と第3成分との差分を新たな第3成分とする、という色空間変換処理を適用してもよい。
【0029】
変換・量子化部120は、ブロック単位で変換処理及び量子化処理を行う。変換・量子化部120は、変換部121と、量子化部122とを有する。
【0030】
変換部121は、切替部111又は色空間変換部112が出力する予測残差(色空間変換処理の適用の有無にかかわらず予測残差と呼ぶ)に対して変換処理を行って変換係数を算出し、算出した変換係数を量子化部122に出力する。具体的には、変換部121は、予測残差に対してブロック単位で変換処理を行うことで成分ごとの変換係数を生成する。変換処理は、例えば離散コサイン変換(DCT)、離散サイン変換(DST)、及び/又は離散ウェーブレット変換などの周波数変換であればよい。また、変換部121は、変換処理に関する情報をエントロピー符号化部130に出力する。
【0031】
変換処理には、HEVC(High Efficiency Video Codec)やVVC(Versatile Video Coding)規格案で採用されている、変換処理を行わない変換スキップを含む。HEVCの変換スキップモードでは水平及び垂直の変換処理を行わずに、予測残差に対しスケーリングを施すことによって変換係数としているが、本実施形態に係る変換スキップは、水平のみ変換処理を適用する変換や垂直のみ変換処理を適用する変換も含む。また、変換部121は、変換処理により得られた変換係数に対してさらに変換処理を適用する二次変換処理を行ってもよい。また、二次変換処理は、変換係数の一部の領域のみに適用してもよい。
【0032】
量子化制御部123は、変換部121により生成された変換係数に対する量子化処理に用いるスケーリングリスト(量子化行列)を決定する。ここで、スケーリングリストとして、すべてのスケーリングリストの要素の値が等しい(例えば、すべての要素の値が16である)均一な(フラットな)スケーリングリストをあらかじめ規定する。量子化制御部123は、要素ごとに異なる値を設定された不均一なスケーリングリストを複数設定可能とする。なお、サイズが大きいブロックに対して用いるスケーリングリストを小さいサイズで定義し、実際に用いる際に拡大する場合、必ずしもすべての要素に異なる値が設定されるとは限らない。エントロピー符号化部130は、どのスケーリングリストを用いて量子化処理を行うかを示す情報をストリーム出力する。なお、不均一なスケーリングリストは、スケーリングリストの要素の値として少なくとも部分的に異なる値を設定可能なスケーリングリスト、すなわち、可変なスケーリングリストでもある。
【0033】
本実施形態において、量子化制御部123は、色空間変換部112が色空間変換処理を行うか否かに基づいてスケーリングリストを決定する。具体的には、量子化制御部123は、スケーリングリストの要素の値が少なくとも部分的に異なる不均一なスケーリングリストを用いる旨を設定した場合において、色空間変換部112が色空間変換処理を行うか(すなわち、切替部111が予測残差を色空間変換部112に出力したか)否かに基づいて、不均一なスケーリングリストを用いるか又は均一なスケーリングリストを用いるかを決定する。
【0034】
例えば、量子化制御部は、色空間変換部112が色空間変換処理を行わない場合、量子化部122が量子化処理に用いるスケーリングリストとして不均一なスケーリングリストを決定する。一方、色空間変換部112が色空間変換処理を行う場合、量子化制御部123は、量子化部122が量子化処理に用いるスケーリングリストとして均一なスケーリングリストを決定する。
【0035】
ここで、不均一なスケーリングリストは色成分ごとに設定されるため、対象とする成分に応じて性質が異なる。このため、1つの画像(ピクチャ)内において、ACTを適用する符号化対象ブロックとACTを適用しない符号化対象ブロックとが混在する場合、不均一なスケーリングリストを適用すると、画質の劣化を引き起こす。本実施形態においては、色空間変換部112が色空間変換処理を行う場合(すなわち、ACTを適用する場合)、均一なスケーリングリストを用いることにより、画質の劣化を抑制可能である。
【0036】
量子化部122は、変換部121から出力される変換係数を量子化パラメータ及びスケーリングリストを用いて量子化し、量子化した変換係数をエントロピー符号化部130及び逆量子化・逆変換部140に出力する。ここで、量子化部122における量子化処理に用いるスケーリングリストは量子化制御部123により決定される。また、量子化部122は、量子化処理に関する情報(具体的には、量子化処理で用いた量子化パラメータ及びスケーリングリストの情報)を、エントロピー符号化部130及び逆量子化部141に出力する。
【0037】
なお、量子化パラメータは、1つのブロックに対して1つの値が設定されるパラメータである。具体的には、量子化パラメータは、ブロック内の各変換係数に対して共通して適用されるパラメータであって、量子化の粗さ(ステップサイズ)を定めるパラメータである。
【0038】
スケーリングリストは、1つのブロック内の成分ごとに設定される値からなる行列(量子化行列)を構成する。具体的には、スケーリングリストは、ブロックサイズに応じてi×j要素の成分ごとに設定される値(重み付け係数)からなり、変換係数の低周波から高周波にわたる成分ごとに量子化の粗さを調整するために用いられる。エントロピー符号化部130は、不均一なスケーリングリストについては復号側にシグナリングする。なお、このような不均一なスケーリングリストは、ユーザ定義のスケーリングリストと呼ばれてもよいし、明示的なスケーリングリストと呼ばれてもよい。
【0039】
エントロピー符号化部130は、量子化部122が出力する量子化変換係数に対してエントロピー符号化を行い、データ圧縮を行ってビットストリーム(符号化データ)を生成し、ビットストリームを復号側に出力する。エントロピー符号化には、ハフマン符号及び/又はCABAC(Context-based Adaptive Binary Arithmetic Coding)等を用いることができる。また、エントロピー符号化部130は、変換部121から入力された変換処理に関する情報をビットストリームに含めて復号側にシグナリングしたり、予測部180から入力された予測処理に関する情報をビットストリームに含めて復号側にシグナリングしたりする。さらに、エントロピー符号化部130は、ACTの適用有無を示す色空間変換フラグを符号化対象ブロックごとにビットストリームに含めて復号側にシグナリングする。以下において、このような色空間変換フラグをACT適用フラグとも呼ぶ。ACT適用フラグがオン(“1”)の場合、対応する符号化対象ブロックにACTが適用されることを示す。ACT適用フラグがオフ(“0”)の場合、対応する符号化対象ブロックにACTが適用されないことを示す。なおACT適用フラグの代わりにACT非適用フラグを用いてもよい。その場合には、ACT非適用フラグがオン(“1”)の場合、対応する符号化対象ブロックにACTが適用されないことを示す。ACT非適用フラグがオフ(“0”)の場合、対応する符号化対象ブロックにACTが適用されることを示す。
【0040】
逆量子化・逆変換部140は、ブロック単位で逆量子化処理及び逆変換処理を行う。逆量子化・逆変換部140は、逆量子化部141と、逆変換部142とを有する。
【0041】
逆量子化部141は、量子化部122が行う量子化処理に対応する逆量子化処理を行う。具体的には、逆量子化部141は、量子化部122が出力する量子化変換係数を、量子化パラメータ(Qp)及びスケーリングリストを用いて逆量子化することにより変換係数を復元し、復元した変換係数を逆変換部142に出力する。ここで、逆量子化部141における逆量子化処理に用いるスケーリングリストは量子化制御部123により決定される。
【0042】
逆変換部142は、変換部121が出力する変換種別情報に基づいて、変換部121が行う変換処理に対応する逆変換処理を行う。例えば、変換部121が離散コサイン変換を行った場合、逆変換部142は逆離散コサイン変換を行う。逆変換部142は、逆量子化部141が出力する変換係数に対して逆変換処理を行って予測残差を復元し、復元した予測残差である復元予測残差を合成部150に出力する。
【0043】
合成部150は、逆変換部142が出力する復元予測残差を、予測部180が出力する予測ブロックと画素単位で合成する。合成部150は、復元予測残差の各画素値と予測ブロックの各画素値を加算して符号化対象ブロックを復号(再構成)し、復号済みブロックをループフィルタ160に出力する。なお、復号済みブロックは、再構成ブロックと呼ばれることもある。
【0044】
ループフィルタ160は、合成部150が出力する復号済みブロックに対してフィルタ処理を行い、フィルタ処理後の復号済みブロックをメモリ170に出力する。
【0045】
メモリ170は、ループフィルタ160が出力するフィルタ処理後の復号済みブロックを記憶し、復号済みブロックをフレーム単位で復号済み画像として蓄積する。メモリ170は、記憶している復号済みブロック若しくは復号済み画像を予測部180に出力する。
【0046】
予測部180は、ブロック単位で予測処理を行う。予測部180は、符号化対象ブロックに対するイントラ予測及びインター予測などの予測処理を施すことにより成分ごとの予測ブロックを生成する。本実施形態に係る予測部180は、インター予測部181と、イントラ予測部182と、切替部183とを有する。
【0047】
インター予測部181は、フレーム間の相関を利用したインター予測を行う。具体的には、インター予測部181は、メモリ170に記憶された復号済み画像を参照画像として用いて、ブロックマッチングなどの手法により動きベクトルを算出し、符号化対象ブロックを予測してインター予測ブロックを生成し、生成したインター予測ブロックを切替部183に出力する。ここで、インター予測部181は、複数の参照画像を用いるインター予測(典型的には、双予測)や、1つの参照画像を用いるインター予測(片方向予測)の中から最適なインター予測方法を選択し、選択したインター予測方法を用いてインター予測を行う。インター予測部181は、インター予測に関する情報(動きベクトル等)をエントロピー符号化部130に出力する。
【0048】
イントラ予測部182は、フレーム内の空間的な相関を利用したイントラ予測を行う。具体的には、イントラ予測部182は、メモリ170に記憶された復号済み画像のうち、符号化対象ブロックの周辺にある復号済み画素を参照してイントラ予測ブロックを生成し、生成したイントラ予測ブロックを切替部183に出力する。イントラ予測部182は、複数のイントラ予測モードの中から、符号化対象ブロックに適用するイントラ予測モードを選択し、選択したイントラ予測モードを用いて符号化対象ブロックを予測する。
【0049】
切替部183は、インター予測部181が出力するインター予測ブロックとイントラ予測部182が出力するイントラ予測ブロックとを切り替えて、いずれかの予測ブロックを残差生成部110及び合成部150に出力する。
【0050】
このように、本実施形態に係る符号化装置1は、第1成分、第2成分、及び第3成分を含む3つ以上の成分により構成される画像を分割して生成した符号化対象ブロックごとに符号化する。符号化装置1は、符号化対象ブロックに対応する予測ブロックを成分ごとに生成する予測部180と、符号化対象ブロックと予測ブロックとの差を表す予測残差を成分ごとに生成する残差生成部110と、予測残差に対して色空間変換処理を行う色空間変換部と、予測残差に対して変換処理を行うことで変換係数を生成する変換部121と、変換係数に対する量子化処理に用いるスケーリングリストを決定する量子化制御部123と、決定されたスケーリングリストを用いて、変換係数に対して量子化処理を行う量子化部122とを有する。
【0051】
次に、本実施形態に係る量子化制御部123の動作について説明する。図2は、本実施形態に係る量子化制御部123の動作を示す図である。量子化制御部123は、符号化対象ブロックごとに図2の動作を行う。なお、図2の動作は、ACT(色空間変換処理)以外の要因に基づき不均一なスケーリングリストを用いる旨が設定されたことを前提とした動作である。具体的には、図2の動作は、当該符号化対象ブロックが属するシーケンスに対して不均一なスケーリングリストの適用が有効化(イネーブル)されており、且つ、当該シーケンスに対してACTの適用が有効化されていることを前提とした動作である。
【0052】
図2に示すように、ステップS11において、量子化制御部123は、符号化対象ブロックに対してACT(色空間変換処理)を適用するか否か(すなわち、当該符号化対象ブロックに対応するACT適用フラグがオンであるか否か)を判定する。
【0053】
符号化対象ブロックに対してACTを適用しない場合(ステップS11:NO)、ステップS12において、量子化制御部123は、当該符号化対象ブロックに対応する量子化処理に用いるスケーリングリストとして、不均一なスケーリングリストを決定する。不均一なスケーリングリストは、RGB空間の各成分の特性に合わせて設計されたものであってもよい。例えば、不均一なスケーリングリストは、輝度信号がG成分に主に含まれていることを前提に設計されたものであってもよい。例えば、量子化制御部123は、R成分の予測残差に対して、不均一な第1スケーリングリストを適用し、G成分の予測残差に対して、不均一な第2スケーリングリストを適用し、B成分の予測残差に対して、不均一な第3スケーリングリストを適用する。
【0054】
一方、符号化対象ブロックに対してACTを適用する場合(ステップS11:YES)、ステップS12において、量子化制御部123は、当該符号化対象ブロックに対応する量子化処理に用いるスケーリングリストとして、均一なスケーリングリストを決定する。均一なスケーリングリストは、事前設定されたスケーリングリスト、すなわち、符号化側及び復号側で予め共有しているスケーリングリストである。例えば、量子化制御部123は、Y成分の予測残差、Cg成分の予測残差、及びCo成分の予測残差のそれぞれに対して、均一なスケーリングリストを適用する。
【0055】
このように、本実施形態に係る符号化装置1は、ACTを適用する場合、均一なスケーリングリストを用いる。これにより、1つの画像(ピクチャ)内においてACTを適用する符号化対象ブロックとACTを適用しない符号化対象ブロックとが混在する場合であっても、画質の劣化を抑制可能である。
【0056】
<復号装置>
次に、本実施形態に係る復号装置について、符号化装置1との相違点を主として説明する。図3は、本実施形態に係る復号装置2の構成を示す図である。
【0057】
図3に示すように、復号装置2は、エントロピー復号部200と、逆量子化・逆変換部210と、逆量子化制御部214と、切替部215と、色空間逆変換部216と、合成部220と、ループフィルタ230と、メモリ240と、予測部250とを有する。
【0058】
エントロピー復号部200は、符号化データ(ビットストリーム)を復号して、復号対象ブロックに対応する量子化変換係数を逆量子化・逆変換部210に出力する。また、エントロピー復号部200は、変換処理及び量子化処理に関する情報を取得し、変換処理及び量子化処理に関する情報を逆量子化・逆変換部210に出力する。さらに、エントロピー復号部200は、予測処理に関する情報を取得し、予測処理に関する情報を予測部250に出力する。エントロピー復号部200は、符号化対象ブロックごとの色空間変換フラグを取得し、取得した色空間変換フラグを逆量子化制御部214及び切替部215に出力する。
【0059】
逆量子化制御部214は、色空間変換フラグに基づいて、符号化装置1の量子化制御部123と同様な動作を行う(図2参照)。
【0060】
逆量子化・逆変換部210は、ブロック単位で逆量子化処理及び逆変換処理を行う。逆量子化・逆変換部210は、逆量子化部211と、逆変換部212とを有する。
【0061】
逆量子化部211は、符号化装置1の量子化部122が行う量子化処理に対応する逆量子化処理を行う。逆量子化部211は、エントロピー復号部200が出力する量子化変換係数を、量子化パラメータ(Qp)及びスケーリングリストを用いて逆量子化することにより、復号対象ブロックの変換係数を復元し、復元した変換係数を逆変換部212に出力する。ここで、逆量子化部211による逆量子化処理に用いるスケーリングリストは、逆量子化制御部214により決定される。
【0062】
逆変換部212は、符号化装置1の変換部121が行う変換処理に対応する逆変換処理を行う。逆変換部212は、逆量子化部211が出力する変換係数に対して逆変換処理を行って予測残差を復元し、復元した予測残差(復元予測残差)を切替部215に出力する。
【0063】
切替部215は、色空間変換フラグに基づいて、逆変換部212が出力する各成分の予測残差を合成部220及び色空間逆変換部216のいずれか一方に出力する。切替部111は、色空間逆変換処理(ACT)を行わない場合は予測残差を変換・量子化部120に出力し、色空間逆変換処理を行う場合は予測残差を色空間逆変換部216に出力する。
【0064】
色空間逆変換部216は、符号化装置1の色空間変換部112が行う色空間変換処理の逆処理である色空間逆変換処理を行い、色空間逆変換処理後の予測残差を合成部220に出力する。具体的には、復元後の予測残差のY成分、Cg成分、Co成分を用いて下記のような逆変換計算を行う。
【0065】
t=Y-(Cg>>1)
G=Cg+t
B=t-(Co>>1)
R=Co+B
【0066】
合成部220は、切替部215又は色空間逆変換部216が出力する予測残差と、予測部250が出力する予測ブロックとを画素単位で合成することにより、元のブロックを復号(再構成)し、復号済みブロックをループフィルタ230に出力する。
【0067】
ループフィルタ230は、合成部220が出力する復号済みブロックに対してフィルタ処理を行い、フィルタ処理後の復号済みブロックをメモリ240に出力する。
【0068】
メモリ240は、合成部220が出力する復号済みブロックを記憶し、復号済みブロックをフレーム単位で復号済み画像として蓄積する。メモリ240は、復号済みブロック若しくは復号済み画像を予測部250に出力する。また、メモリ240は、フレーム単位の復号済み画像を復号装置2の外部に出力する。
【0069】
予測部250は、ブロック単位で成分ごとに予測を行う。予測部250は、インター予測部251と、イントラ予測部252と、切替部253とを有する。
【0070】
インター予測部251は、フレーム間の相関を利用したインター予測を行う。具体的には、インター予測部251は、エントロピー復号部200が出力するインター予測に関する情報(例えば、動きベクトル情報)に基づいて、メモリ240に記憶された復号済み画像を参照画像として用いて符号化対象ブロックを予測してインター予測ブロックを生成し、生成したインター予測ブロックを切替部253に出力する。
【0071】
イントラ予測部252は、フレーム内の空間的な相関を利用したイントラ予測を行う。具体的には、イントラ予測部252は、エントロピー復号部200が出力するイントラ予測に関する情報(例えば、イントラ予測モード情報)に応じたイントラ予測モードを用いて、メモリ240に記憶された復号済み画像のうち符号化対象ブロックの周辺にある復号済み画素を参照してイントラ予測ブロックを生成し、生成したイントラ予測ブロックを切替部253に出力する。
【0072】
切替部253は、インター予測部251が出力するインター予測ブロックとイントラ予測部252が出力するイントラ予測ブロックとを切り替えて、いずれかの予測ブロックを合成部220に出力する。
【0073】
このように、本実施形態に係る復号装置2は、第1成分、第2成分、及び第3成分を含む3つ以上の成分により構成される画像を分割して生成した復号対象ブロックごとに復号する。復号装置2は、ビットストリームから復号対象ブロックの量子化変換係数を成分ごとに復号するエントロピー復号部200と、復号対象ブロックに対応する予測ブロックを成分ごとに生成する予測部250と、変換係数に対する逆変換処理に用いるスケーリングリストを決定する逆量子化制御部214と、量子化変換係数に対する逆変換処理を行うことで変換係数を生成する逆量子化部211と、決定されたスケーリングリストを用いて変換係数に対して逆変換処理を行うことで予測残差を生成する逆変換部212と、予測残差に対して色空間逆変換処理を行う色空間逆変換部216と、予測残差と予測ブロックとを合成することで復号ブロックを生成する合成部220とを有する。
【0074】
逆量子化制御部214は、色空間逆変換処理(色空間変換フラグ)に基づいてスケーリングリストを決定する。本実施形態において、逆量子化制御部214は、不均一なスケーリングリストを用いる旨を符号化側が設定した場合において、色空間逆変換部216が色空間逆変換処理を行うか否かに基づいて、不均一なスケーリングリストを用いるか又は均一なスケーリングリストを決定する。
【0075】
例えば、不均一なスケーリングリストを用いる旨を符号化側が設定した場合において、逆量子化制御部214は、色空間逆変換部216が色空間逆変換処理を行わない場合、逆量子化処理に用いるスケーリングリストとして不均一なスケーリングリストを決定する。色空間逆変換部216が色空間逆変換処理を行う場合、逆量子化制御部214は、逆量子化処理に用いるスケーリングリストとして均一なスケーリングリストを決定する。
【0076】
このように、本実施形態に係る復号装置2は、ACTを適用する場合、均一なスケーリングリストを用いる。これにより、1つの画像(ピクチャ)内においてACTを適用する符号化対象ブロックとACTを適用しない符号化対象ブロックとが混在する場合であっても、画質の劣化を抑制可能である。
【0077】
<変更例1>
次に、実施形態の変更例1について、上述した実施形態との相違点を主として説明する。
【0078】
符号化装置1のエントロピー符号化部130は、色空間変換処理に基づくスケーリングリストの決定動作を行うか否かを示す情報(制御フラグ)を含むシーケンスパラメータセット(SPS)又はアダプテーションパラメータセット(APS)を出力してもよい。復号装置2のエントロピー復号部200は、色空間逆変換処理に基づくスケーリングリストの決定動作を行うか否かを示す情報を含むSPS又はAPSを取得してもよい。
【0079】
符号化装置1のエントロピー符号化部130は、クロマフォーマットが4:4:4か否かに応じて、当該制御フラグをシグナリングしてもよいし、SPSなどにおいてACTがシーケンスに対して適用可能であるか否かに応じて当該制御フラグのシグナリングを制御するよう構成してもよい。具体的には、SPSにおいて、ACTを符号化対象シーケンスに対して適用可能とする旨を示すフラグがシグナリングされた場合にのみ当該制御フラグをシグナリングするよう構成してもよい。また、APSにおいて色差信号に対するスケーリングリストが当該APSに含まれるか否かを示すフラグに応じて当該制御フラグのシグナリングを制御するよう構成してもよい。具体的には、APSにおいて、前記色差信号に対するスケーリングリストが含まれる場合にのみ当該制御フラグをシグナリングするよう構成してもよい。
【0080】
図4は、エントロピー符号化部130が出力するビットストリームを示す図である。
【0081】
図4(a)に示すように、ビットストリームは、複数のNALユニットと、各NALユニットの先頭に設けられるスタートコードとからなる。スタートコードは4byteであり、NALユニット内ではこの0001(=0x00000001)が発生しないよう制御されている。図4(b)に示すように、各NALユニットは、NALユニットヘッダとペイロードとからなる。
【0082】
図5は、NALユニットのタイプを示す図である。NALユニットのタイプは、NALユニットヘッダ内のnal_unit_typeにより識別される。NALユニットのタイプは、VCL(Video Coding Layer)クラスとnon-VCLクラスとに分類される。VCLクラスは、符号化対象CTU(Coding Tree Unit)を含むスライスの符号化ビットストリームに対応するクラスである。VCLクラスは、復号に必要な制御情報、例えば、VPS(Video Parameter Set)、SPS(Sequence Parameter Set)、PPS(Picture Parameter Set)、及びAPS(Adaptation Parameter Set)に対応するクラスである。VPS、SPS、PPS、及びAPSは、それぞれ異なるNALユニットによりシグナリングされる。
【0083】
図6は、VPS、SPS、PPS、及びAPSの関係を示す図である。
【0084】
図6に示すように、VPSは、自身のID(vps_video_parameter_set_id)を持ち、SPSから参照される。VPSは、ビットストリームの復号全体に関する情報を格納する。例えば、VPSは、最大レイヤ枚数及びDPB(Decoded Picture Buffer)などの情報を含む。
【0085】
SPSは、自身のID(sps_seq_parameter_set_id)を持ち、PPSから参照される。また、SPSは、自身が参照するVPSのID(sps_video_parameter_set_id)を持つ。SPSは、シーケンスの復号に必要な情報を格納する。例えば、SPSは、クロマフォーマット、最大の幅・高さ、ビット深度、サブピクチャ情報(個数、各サブピクチャの開始座標、幅、高さなど)、各符号化ツール(各機能)のシーケンス単位でのオン・オフ制御、及び/又はVUI(Video usability information)などの情報を含む。シーケンス単位でのオン・オフ制御の情報は、スケーリングリストを適用するか否かを示すフラグ(sps_scaling_list_enebled_flag)を含む。
【0086】
PPSは、自身のID(pps_pic_parameter_set_id)を持ち、PH(Picture Header)から参照される。また、PPSは、自身が参照するSPSのID(pps_seq_parameter_set_id)を持つ。PPSは、ピクチャ(Picture)の復号に必要な情報を格納する。例えば、PPSは、ピクチャの幅・高さ、タイル分割情報(縦横のタイル数、各行・列の幅・高さなどの定義)、スライス分割情報(スライス分割形状(rect/non-rect)、及び/又はrectの場合は各rectの幅・高さ方向のタイル数)などの情報を含む。
【0087】
PHは、ピクチャごとのヘッダ情報である。PHを参照するのはピクチャ内のスライスである。スライスは、自身が含まれるピクチャを暗黙的に判別できるのでPHのIDは定義する必要ない。一方、PHは、参照先のPPSのID(ph_pic_parameter_set_id)を保持する。PHは、当該ピクチャに対する制御情報を格納する。例えば、PHは、当該ピクチャに対する各符号化ツール(各機能)のオン・オフ制御などの情報を含む。PHは、ALF、LMCS、及びスケーリングリストのそれぞれのツールの適用オン・オフを示す情報を含む。ピクチャ単位でのオン・オフ制御の情報は、スケーリングリストを適用するか否かを示すフラグ(ph_scaling_list_present_flag)を含む。PHは、1つ以上のツールを適用する場合、当該ツールのパラメータ情報を格納するAPSのIDを含む。
【0088】
APSは、ALF、LMCS、スケーリングリストなどの比較的多くのパラメータを伝送する必要がある符号化ツールのためのパラメータ伝送用のシンタックス構造である。APSは、自身のIDを保持しており、このIDはPHから参照される。
【0089】
本変更例に係る制御情報(制御フラグ)をSPS中でシグナリングすることで、複数のスケーリングリストを規定する場合であっても、1つの制御フラグにより量子化処理を制御できるため、フラグ情報量を削減できる。一方、上述した実施形態及びその変更例に係る制御情報(制御フラグ)をAPS中でシグナリングすることで、設定する複数のスケーリングリストごとに適用するスケーリングリストを色空間変換の適用に応じて制御するか否かを決定できるため、より柔軟な量子化処理が可能となる。
【0090】
図7は、本変更例に係るSPS(seq_parameter_set_rbsp)の一例を示す図である。ここではSPSを例に挙げて説明するが、同様なシンタックス構造をAPSに適用してもよい。
【0091】
図7に示すように、SPSは、対応するシーケンスについて不均一なスケーリングリストの適用を有効化するか否かを示すフラグ(sps_explicit_scaling_list_enabled_flag)と、対応するシーケンスについてACTの適用を有効化するか否かを示すフラグ(sps_act_enabled_flag)とを含む。
【0092】
さらに、フラグ(sps_explicit_scaling_list_enabled_flag)がオン(“1”)であって、且つフラグ(sps_act_enabled_flag)がオン(“1”)である場合、すなわち、不均一なスケーリングリスト及びACTのいずれも有効化されている場合、SPSは、均一なスケーリングリストの適用を可能とするか否かを示す第1フラグ(sps_scaling_list_for_act_disabled_flag)を含む。
【0093】
本変更例において、第1フラグ(sps_scaling_list_for_act_disabled_flag)がオン(“1”)である場合、ACTが適用されたブロックに対して不均一なスケーリングリストが適用されないこと(すなわち、均一なスケーリングリストが適用されること)を示す。一方、第1フラグ(sps_scaling_list_for_act_disabled_flag)がオフ(“0”)である場合、ACTが適用されたブロックに対して不均一なスケーリングリストを適用可能であることを示す。
【0094】
このように、符号化装置1のエントロピー符号化部130は、均一なスケーリングリストの適用を可能とするか否かを示す第1フラグを含むSPSを出力する。復号装置2のエントロピー復号部200は、当該第1フラグを含むSPSを取得する。
【0095】
次に、本変更例に係る量子化制御部123及び逆量子化制御部214の動作について説明する。量子化制御部123及び逆量子化制御部214の動作は同様であるため、ここでは逆量子化制御部214の動作を例に挙げて説明する。
【0096】
図8は、本変更例に係る逆量子化制御部214の動作を示す図である。逆量子化制御部214は、復号対象ブロックごとに図8の動作を行う。具体的には、図8の動作は、当該復号対象ブロックが属するシーケンスに対して不均一なスケーリングリストの適用が有効化されており、且つ、当該シーケンスに対してACTの適用が有効化されていることを前提とした動作である。
【0097】
図8に示すように、ステップS11において、逆量子化制御部214は、復号対象ブロックに対して色空間逆変換処理(ACT)を適用するか否か(すなわち、当該復号対象ブロックに対応するACT適用フラグがオンであるか否か)を判定する。
【0098】
復号対象ブロックに対してACTを適用しない場合(ステップS11:NO)、すなわち、復号対象ブロックがRGB空間のブロックである場合、ステップS12において、逆量子化制御部214は、当該復号対象ブロックに対応する逆量子化処理に用いるスケーリングリストとして、不均一なスケーリングリストを決定する。
【0099】
一方、復号対象ブロックに対してACTを適用する場合(ステップS11:YES)、すなわち、復号対象ブロックがYCgCo空間のブロックである場合、ステップS21において、逆量子化制御部214は、第1フラグ(sps_scaling_list_for_act_disabled_flag)がオンであるか否かを判定する。
【0100】
第1フラグ(sps_scaling_list_for_act_disabled_flag)がオンである場合(ステップS21:YES)、ステップS13において、逆量子化制御部214は、当該復号対象ブロックに対応する逆量子化処理に用いるスケーリングリストとして、均一なスケーリングリストを決定する。一方、第1フラグ(sps_scaling_list_for_act_disabled_flag)がオフである場合(ステップS21:NO)、ステップS12において、逆量子化制御部214は、当該復号対象ブロックに対応する逆量子化処理に用いるスケーリングリストとして、不均一なスケーリングリストを決定する。
【0101】
<変更例2>
次に、実施形態の変更例2について、上述した実施形態及びその変更例1との相違点を主として説明する。
【0102】
上述した実施形態及びその変更例1において、不均一なスケーリングリストがRGB空間向けに設計されていることを前提としていた。しかしながら、ACTが適用される符号化対象ブロックの割合が多い場合、不均一なスケーリングリストがYCgCo空間向けに設計されていてもよい。本変更例では、不均一なスケーリングリストがYCgCo空間向けに設計されているものとする。
【0103】
本変更例において、不均一なスケーリングリストを用いる旨を符号化装置1が設定した場合において、量子化制御部123は、色空間変換部112が色空間変換処理(ACT)を行わない場合、スケーリングリストとして均一なスケーリングリストを決定し、色空間変換部112が色空間変換処理を行う場合、スケーリングリストとして不均一なスケーリングリストを決定する。エントロピー符号化部130は、均一なスケーリングリストの適用を可能とするか否かを示す第1フラグを含むSPS又はAPSを出力してもよい。
【0104】
本変更例において、不均一なスケーリングリストを用いる旨を符号化装置1が設定した場合において、逆量子化制御部214は、色空間逆変換部216が色空間逆変換処理(ACT)を行わない場合、スケーリングリストとして均一なスケーリングリストを決定し、色空間逆変換部216が色空間逆変換処理を行う場合、スケーリングリストとして不均一なスケーリングリストを決定する。エントロピー復号部200は、均一なスケーリングリストの適用を可能とするか否かを示す第1フラグを含むSPS又はAPSを取得してもよい。
【0105】
図9は、本変更例に係るSPS(seq_parameter_set_rbsp)の一例を示す図である。ここではSPSを例に挙げて説明するが、同様なシンタックス構造をAPSに適用してもよい。
【0106】
図9に示すように、SPSは、対応するシーケンスについて不均一なスケーリングリストの適用を有効化するか否かを示すフラグ(sps_explicit_scaling_list_enabled_flag)と、対応するシーケンスについてACTの適用を有効化するか否かを示すフラグ(sps_act_enabled_flag)とを含む。
【0107】
さらに、フラグ(sps_explicit_scaling_list_enabled_flag)がオン(“1”)であって、且つフラグ(sps_act_enabled_flag)がオン(“1”)である場合、すなわち、不均一なスケーリングリスト及びACTのいずれも有効化されている場合、SPSは、均一なスケーリングリストの適用を可能とするか否かを示す第1フラグ(sps_scaling_list_for_non_act_disabled_flag)を含む。
【0108】
本変更例において、第1フラグ(sps_scaling_list_for_non_act_disabled_flag)がオン(“1”)である場合、ACTが適用されないブロックに対して不均一なスケーリングリストが適用されないこと(すなわち、均一なスケーリングリストが適用されること)を示す。一方、第1フラグ(sps_scaling_list_for_non_act_disabled_flag)がオフ(“0”)である場合、ACTが適用されないブロックに対して不均一なスケーリングリストを適用可能であることを示す。
【0109】
このように、符号化装置1のエントロピー符号化部130は、均一なスケーリングリストの適用を可能とするか否かを示す第1フラグを含むSPSを出力する。復号装置2のエントロピー復号部200は、当該第1フラグを含むSPSを取得する。
【0110】
次に、本変更例に係る量子化制御部123及び逆量子化制御部214の動作について説明する。量子化制御部123及び逆量子化制御部214の動作は同様であるため、ここでは逆量子化制御部214の動作を例に挙げて説明する。
【0111】
図10は、本変更例に係る逆量子化制御部214の動作を示す図である。逆量子化制御部214は、復号対象ブロックごとに図10の動作を行う。具体的には、図10の動作は、当該復号対象ブロックが属するシーケンスに対して不均一なスケーリングリストの適用が有効化されており、且つ、当該シーケンスに対してACTの適用が有効化されていることを前提とした動作である。
【0112】
図10に示すように、ステップS31において、逆量子化制御部214は、復号対象ブロックに対して色空間逆変換処理(ACT)を適用するか否か(すなわち、当該復号対象ブロックに対応するACT適用フラグがオンであるか否か)を判定する。
【0113】
復号対象ブロックに対してACTを適用する場合(ステップS31:YES)、すなわち、復号対象ブロックがYCgCo空間のブロックである場合、ステップS34において、逆量子化制御部214は、当該復号対象ブロックに対応する逆量子化処理に用いるスケーリングリストとして、不均一なスケーリングリストを決定する。
【0114】
一方、復号対象ブロックに対してACTを適用しない場合(ステップS31:NO)、すなわち、復号対象ブロックがRGB空間のブロックである場合、ステップS32において、逆量子化制御部214は、第1フラグ(sps_scaling_list_for_non_act_disabled_flag)がオンであるか否かを判定する。
【0115】
第1フラグ(sps_scaling_list_for_non_act_disabled_flag)がオンである場合(ステップS32:YES)、ステップS33において、逆量子化制御部214は、当該復号対象ブロックに対応する逆量子化処理に用いるスケーリングリストとして、均一なスケーリングリストを決定する。一方、第1フラグ(sps_scaling_list_for_non_act_disabled_flag)がオフである場合(ステップS32:NO)、ステップS34において、逆量子化制御部214は、当該復号対象ブロックに対応する逆量子化処理に用いるスケーリングリストとして、不均一なスケーリングリストを決定する。
【0116】
<変更例3>
次に、実施形態の変更例3について、上述した実施形態及びその変更例1、2との相違点を主として説明する。
【0117】
本変更例では、不均一なスケーリングリストがRGB空間向けに設計されているか又はYCgCo空間向けに設計されているかを符号化装置1が指定する。不均一なスケーリングリストがRGB空間向けに設計されている場合、上述した変更例1と同様な動作になり、不均一なスケーリングリストがYCgCo空間向けに設計されている場合、上述した変更例2と同様な動作になる。
【0118】
上述したように、符号化装置1において、色空間変換処理(ACT)は、RGB空間からYCgCo空間への変換を予測残差に対して行う処理である。本変更例において、エントロピー符号化部130は、不均一なスケーリングリストがRGB空間向けに設計されているか又はYCgCo空間向けに設計されているかを示す第2フラグを含むSPS又はAPSを出力する。
【0119】
不均一なスケーリングリストを用いる旨を符号化装置1が設定し、均一なスケーリングリストの適用を可能とすることを第1フラグが示し、且つ不均一なスケーリングリストがRGB空間向けに設計されていることを第2フラグが示す場合において、量子化制御部123は、色空間変換部112が色空間変換処理を行わない場合、スケーリングリストとして不均一なスケーリングリストを決定し、色空間変換部が色空間変換処理を行う場合、スケーリングリストとして均一なスケーリングリストを決定する。
【0120】
一方、不均一なスケーリングリストを用いる旨を符号化装置1が設定し、均一なスケーリングリストの適用を可能とすることを第1フラグが示し、且つ不均一なスケーリングリストがYCgCo空間向けに設計されていることを第2フラグが示す場合において、量子化制御部123は、色空間変換部112が色空間変換処理を行わない場合、スケーリングリストとして均一なスケーリングリストを決定し、色空間変換部112が色空間変換処理を行う場合、スケーリングリストとして不均一なスケーリングリストを決定する。
【0121】
上述したように、復号装置2において、色空間逆変換処理(ACT)は、YCgCo空間からRGB空間への変換を予測残差に対して行う処理である。エントロピー復号部200は、不均一なスケーリングリストがRGB空間向けに設計されているか又はYCgCo空間向けに設計されているかを示す第2フラグを含むSPS又はAPSを取得する。
【0122】
不均一なスケーリングリストを用いる旨を符号化装置1が設定し、均一なスケーリングリストの適用を可能とすることを第1フラグが示し、且つ不均一なスケーリングリストがRGB空間向けに設計されていることを第2フラグが示す場合において、逆量子化制御部214は、色空間逆変換部216が色空間逆変換処理を行わない場合、スケーリングリストとして不均一なスケーリングリストを決定し、色空間逆変換部216が色空間逆変換処理を行う場合、スケーリングリストとして均一なスケーリングリストを決定する。
【0123】
一方、不均一なスケーリングリストを用いる旨を符号化装置1が設定し、均一なスケーリングリストの適用を可能とすることを第1フラグが示し、且つ不均一なスケーリングリストがYCgCo空間向けに設計されていることを第2フラグが示す場合において、逆量子化制御部214は、色空間逆変換部216が色空間逆変換処理を行わない場合、スケーリングリストとして均一なスケーリングリストを決定し、色空間逆変換部216が色空間逆変換処理を行う場合、スケーリングリストとして不均一なスケーリングリストを決定する。
【0124】
図11は、本変更例に係るSPS(seq_parameter_set_rbsp)の一例を示す図である。ここではSPSを例に挙げて説明するが、同様なシンタックス構造をAPSに適用してもよい。
【0125】
図11に示すように、SPSは、対応するシーケンスについて不均一なスケーリングリストの適用を有効化するか否かを示すフラグ(sps_explicit_scaling_list_enabled_flag)と、対応するシーケンスについてACTの適用を有効化するか否かを示すフラグ(sps_act_enabled_flag)とを含む。
【0126】
また、フラグ(sps_explicit_scaling_list_enabled_flag)がオン(“1”)であって、且つフラグ(sps_act_enabled_flag)がオン(“1”)である場合、すなわち、不均一なスケーリングリスト及びACTのいずれも有効化されている場合、SPSは、均一なスケーリングリストの適用を可能とするか否かを示す第1フラグ(sps_scaling_list_for_alternative_colour_space_disabled_flag)を含む。
【0127】
本変更例において、第1フラグ(sps_scaling_list_for_alternative_colour_space_disabled_flag)がオン(“1”)である場合、第2フラグにより指定される色空間と異なる色空間のブロックに対して不均一なスケーリングリストが適用されないこと(すなわち、均一なスケーリングリストが適用されること)を示す。一方、第1フラグ(sps_scaling_list_for_alternative_colour_space_disabled_flag)がオフ(“0”)である場合、第2フラグにより指定される色空間にかかわらず不均一なスケーリングリストが適用されることを示す。
【0128】
さらに、第1フラグ(sps_scaling_list_for_alternative_colour_space_disabled_flag)がオン(“1”)である場合、SPSは、不均一なスケーリングリストがRGB空間向けに設計されているか又はYCgCo空間向けに設計されているかを示す第2フラグ(sps_scaling_list_designate_rgb_flag)を含む。
【0129】
第2フラグ(sps_scaling_list_designate_rgb_flag)がオン(“1”)である場合、不均一なスケーリングリストがRGB空間向けに設計されていることを示す。一方、第2フラグ(sps_scaling_list_designate_rgb_flag)がオフ(“0”)である場合、不均一なスケーリングリストがYCgCo空間向けに設計されていることを示す。
【0130】
このように、符号化装置1のエントロピー符号化部130は、均一なスケーリングリストの適用を可能とするか否かを示す第1フラグと、不均一なスケーリングリストがRGB空間向けに設計されているか又はYCgCo空間向けに設計されているかを示す第2フラグとを含むSPSを出力する。復号装置2のエントロピー復号部200は、当該第1フラグ及び第2フラグを含むSPSを取得する。
【0131】
次に、本変更例に係る量子化制御部123及び逆量子化制御部214の動作について説明する。量子化制御部123及び逆量子化制御部214の動作は同様であるため、ここでは逆量子化制御部214の動作を例に挙げて説明する。
【0132】
図12は、本変更例に係る逆量子化制御部214の動作を示す図である。逆量子化制御部214は、復号対象ブロックごとに図12の動作を行う。具体的には、図12の動作は、当該復号対象ブロックが属するシーケンスに対して不均一なスケーリングリストの適用が有効化されており、且つ、当該シーケンスに対してACTの適用が有効化されていることを前提とした動作である。
【0133】
図12に示すように、ステップS41において、逆量子化制御部214は、第1フラグ(sps_scaling_list_for_alternative_colour_space_disabled_flag)がオンであるか否かを判定する。
【0134】
第1フラグ(sps_scaling_list_for_alternative_colour_space_disabled_flag)がオフである場合(ステップS41:NO)、ステップS44において、逆量子化制御部214は、当該復号対象ブロックに対応する逆量子化処理に用いるスケーリングリストとして、不均一なスケーリングリストを決定する。
【0135】
一方、第1フラグ(sps_scaling_list_for_alternative_colour_space_disabled_flag)がオンである場合(ステップS41:YES)、ステップS42において、逆量子化制御部214は、ACT適用フラグが第2フラグ(sps_scaling_list_designate_rgb_flag)と等しいか否かを判定する。すなわち、ステップS42においては、逆量子化制御部214は、
・ACT適用フラグが当該ブロックに対してACTを適用する旨を示し、かつ、第2フラグが、スケーリングリストがRGB空間用に設計されている旨を示している場合か、又は
・ACT適用フラグが当該ブロックに対してACTを適用しない旨を示し、かつ、第2フラグが、スケーリングリストがYCgCo空間向けに設計されている旨を示す場合に、ステップS42はYESと判定する。図13は、本変更例に係るACT適用フラグと第2フラグとの関係を示す図である。図13に示すように、ACT適用フラグが第2フラグ(sps_scaling_list_designate_rgb_flag)と等しい場合(ステップS42:YES)、ステップS43において、逆量子化制御部214は、不均一なスケーリングリストを適用しない(すなわち、均一なスケーリングリストを適用する)こととする。これに対し、ACT適用フラグが第2フラグ(sps_scaling_list_designate_rgb_flag)と異なる場合(ステップS42:NO)、ステップS44において、逆量子化制御部214は、不均一なスケーリングリストを適用することとする。
【0136】
<変更例のまとめ>
上述した変更例1乃至3をまとめると、次の表2のようになる。いずれの変更例においても、ACTを適用するブロックとACTを適用しないブロックとが混在していても画質の劣化を抑制可能である。
【0137】
【表2】
【0138】
<その他の実施形態>
上述実施形態において、各フラグのオンの意味合いとオフの意味合いとを入れ替えてもよい。例えば、disabled_flagに代えてenabled_flagを用いてもよいし、enabled_flagに代えてdisabled_flagを用いてもよい。
【0139】
上述した符号化装置1が行う各処理をコンピュータに実行させるプログラムが提供されてもよい。また、復号装置2が行う各処理をコンピュータに実行させるプログラムが提供されてもよい。プログラムは、コンピュータ読取り可能媒体に記録されていてもよい。コンピュータ読取り可能媒体を用いれば、コンピュータにプログラムをインストールすることが可能である。ここで、プログラムが記録されたコンピュータ読取り可能媒体は、非一過性の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROMやDVD-ROM等の記録媒体であってもよい。
【0140】
符号化装置1が行う各処理を実行する回路を集積化し、符号化装置1を半導体集積回路(チップセット、SoC)により構成してもよい。復号装置2が行う各処理を実行する回路を集積化し、復号装置2を半導体集積回路(チップセット、SoC)により構成してもよい。
【0141】
以上、図面を参照して実施形態について詳しく説明したが、具体的な構成は上述のものに限られることはなく、要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【0142】
本願は、日本国特許出願第2020-075834号(2020年4月22日出願)の優先権を主張し、その内容の全てが本願明細書に組み込まれている。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13