(57)【要約】      （修正有）【課題】パラメータセットに関するビットストリーム制約、及びビットストリーム抽出処理を規定し、レイヤセットを含むビットストリームの抽出処理により生成された、レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止する画像復号装置、及び画像符号化装置を提供する。【解決手段】画像復号装置は、１以上のレイヤからなる復号対象レイヤセットを示すレイヤＩＤリストに基づいて、入力画像符号化データから、復号対象レイヤセットに係る画像符号化データを抽出する画像符号化データ抽出部と、抽出された画像符号化データより、復号対象レイヤセットのピクチャを復号するピクチャ復号部と、を備え、画像符号化データ抽出部から抽出された画像符号化データは、レイヤ識別子が０に等しくない、かつレイヤＩＤリストに含まれないレイヤ識別子を有するnon-VCL NALユニットを含まない。【選択図】図１９
2018082462.tif 000002
【特許請求の範囲】
【請求項１】
入力画像符号化データを復号する画像復号装置であって、
１以上のレイヤからなる復号対象レイヤセットを示すレイヤＩＤリストに基づいて、前記入力画像符号化データから、前記復号対象レイヤセットに係る画像符号化データを抽出する画像符号化データ抽出部と、
前記抽出された画像符号化データより、復号対象レイヤセットのピクチャを復号するピクチャ復号部と、を備え、
前記画像符号化データ抽出部から抽出された前記入力画像符号化データは、レイヤ識別子が０に等しくない、かつ前記レイヤＩＤリストに含まれないレイヤ識別子を有するnon-VCL NALユニットを含まないことを特徴とする画像復号装置。
【請求項２】
前記画像符号化データに含まれるNALユニットのテンポラルＩＤは、前記復号対象レイヤセットの最高次テンポラルＩＤの値以下であることを特徴とする請求項１に記載の画像復号装置。
【請求項３】
前記non-VCL NALユニットは、パラメータセットを有するＮＡＬユニットであることを特徴とする請求項１に記載の画像復号装置。
【請求項４】
前記パラメータセットは、ビデオパラメータセットを含むことを特徴とする請求項２に記載の画像復号装置。
【請求項５】
前記パラメータセットは、シーケンスパラメータセットを含むことを特徴とする請求項３に記載の画像復号装置。
【請求項６】
前記パラメータセットは、ピクチャパラメータセットを含むことを特徴とする請求項３に記載の画像復号装置。
【請求項７】
入力画像符号化データを復号する画像復号方法であって、
１以上のレイヤからなる復号対象レイヤセットを示すレイヤＩＤリストに基づいて、前記入力画像符号化データから、前記復号対象レイヤセットに係る画像符号化データを抽出する画像符号化データ抽出工程と、
前記抽出された画像符号化データより、復号対象レイヤセットのピクチャを復号するピクチャ復号工程と、を備え、
前記画像符号化データ抽出工程で抽出された前記入力画像符号化データは、レイヤ識別子が０に等しくない、かつ前記レイヤＩＤリストに含まれないレイヤ識別子を有するnon-VCL NALユニットを含まないことを特徴とする画像復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像が階層的に符号化された階層符号化データを復号する画像復号装置、および画像を階層的に符号化することによって階層符号化データを生成する画像符号化装置に関する。
【背景技術】
【０００２】
通信システムで伝送される情報、あるいは蓄積装置に記録される情報の１つに画像あるいは動画像がある。従来、これらの画像（以降、動画像を含む）の伝送・蓄積のため、画像を符号化する技術が知られている。
【０００３】
動画像符号化方式としては、AVC（H.264/MPEG-4 Advanced Video Coding）や、その後継コーデックであるHEVC（High-Efficiency Video Coding）が知られている（非特許文献１）。
【０００４】
これらの動画像符号化方式では、通常、入力画像を符号化／復号することによって得られる局所復号画像に基づいて予測画像が生成され、当該予測画像を入力画像（原画像）から減算して得られる予測残差（「差分画像」または「残差画像」と呼ぶこともある）が符号化される。また、予測画像の生成方法としては、画面間予測（インター予測）、および、画面内予測（イントラ予測）が挙げられる。
【０００５】
HEVCでは、60fpsのコンテンツを30fpsで再生する場合のような、時間的に間引いたフレームレートで再生する場合を想定してテンポラルスケーラビリティ（時間スケーラビリティ）を実現する技術が用いられている。具体的には、各ピクチャに時間識別子(TemporalID、サブレイヤ識別子)と呼ばれる数値を割り当て、時間識別子の大きいピクチャは、該時間識別子よりも小さい時間識別子のピクチャを参照しない、という制約を課している。これにより、特定の時間識別子のピクチャのみを間引いて再生する場合には、それよりも大きい時間識別子が付加されたピクチャの復号は不要になる。
【０００６】
また、近年、必要なデータレートに従って、画像を階層的に符号化するスケーラブル符号化技術、又は階層符号化技術が提案されている。代表的なスケーラブル符号化方式（階層符号化方式）としてSHVC（Scalable HEVC）、及びMV-HEVC(MultiView HEVC)が知られている。
【０００７】
SHVCでは、空間スケーラビリティ、時間スケーラビリティ、SNRスケーラビリティをサポートする。例えば空間スケーラビリティの場合、原画像から所望の解像度にダウンサンプリングした画像を下位レイヤとして符号化する。次に上位レイヤではレイヤ間の冗長性を除去するためにレイヤ間予測を行う（非特許文献２）。
【０００８】
MV-HEVCでは、視点スケーラビリティ（ビュースケーラビリティ）をサポートする。例えば、視点画像０（レイヤ０）、視点画像１（レイヤ１）、視点画像２（レイヤ２）の３つの視点画像を符号化する場合、下位レイヤ（レイヤ０）から、上位レイヤである視点画像１、視点画像２をレイヤ間予測により予測することによりレイヤ間の冗長性の除去が可能である（非特許文献３）。
【０００９】
SHVCやMV-HEVC等のスケーラブル符号化方式において利用されるレイヤ間予測には、レイヤ間画像予測とレイヤ間動き予測がある。レイヤ間画像予測では、下位レイヤ（あるいは、対象レイヤとは異なる別レイヤ）の復号済ピクチャのテクスチャ情報（画像）を利用して、対象レイヤの予測画像を生成する。レイヤ間動き予測では、下位レイヤ（あるいは、対象レイヤとは異なる別レイヤ）の復号済ピクチャの動き情報を利用して、対象レイヤの動き情報の予測値を導出する。すなわち、対象レイヤの参照ピクチャとして、下位レイヤ（あるいは、対象レイヤと異なる別レイヤ）の復号済ピクチャを利用することで、レイヤ間予測を行う。
【００１０】
また、レイヤ間の画像情報、あるいは動き情報の冗長性を除去するレイヤ間予測の他にも、符号化データを復号／符号化するために必要な符号化パラメータの集合が規定されているパラメータセット（例えば、シーケンスパラメータセットSPS、やピクチャパラメータセットPPS等）において、レイヤ間で共通する符号化パラメータの冗長性を除去するために、上位レイヤの復号／符号化で利用されるパラメータセット内の一部の符号化パラメータを、下位レイヤの復号／符号化で利用されるパラメータセット内の対応する符号化パラメータから予測（参照、あるいは継承ともいう）し、その符号化パラメータの復号／符号化を省略するパラメータセット間予測がある。例えば、SPSやPPSにおいて通知される、対象レイヤのスケーリングリスト情報（量子化マトリックス）を、下位レイヤのスケーリングリスト情報から予測する技術（パラメータセット間シンタックス予測とも称する）がある。
【００１１】
また、ビュースケーラビリティや、SNRスケーラビリティの場合、各レイヤの復号／符号化で利用されるパラメータセット内で、共通する符号化パラメータが多いため、異なるレイヤ間で共通のパラメータセットを利用し、レイヤ間のサイド情報（パラメータセット）の冗長性を除去する共有パラメータセットという技術がある。例えば、非特許文献２及び３では、レイヤ識別子の値がnuhLayerIdAである下位レイヤの復号／符号化で利用されるSPSやPPS（パラメータセットのレイヤ識別子の値もnuhLayerIdA）が、nuhLayerIdAよりも大きいレイヤ識別子の値（nuhLayerIdB）である上位レイヤの復号／符号化時に利用されることが許容されている。なお、画像の符号化データや、符号化パラメータ等のパラメータセットの符号化データが格納されるNALユニット内のNALユニットヘッダにおいて、レイヤを識別するレイヤ識別子 (nuh_layer_id、またはlayerId、lIdとも称する)、及びレイヤに付随するサブレイヤを識別するテンポラル識別子 (nuh_temporal_id_plus1、またはtemporalId、tIdとも称する)、さらに、NALユニットに格納されている符号化データの種別を表わすNALユニットタイプ（nal_unit_type）が通知される。
【００１２】
また、非特許文献２及び３では、１以上のレイヤから構成される符号化データを復号するために参照する符号化パラメータの集合が規定されているビデオパラメータセットＶＰＳに関して、「ＶＰＳのレイヤ識別子を０とする（nuh_layer_id=0）」というビットストリーム制約がある。
【００１３】
また、非特許文献４では、対象シーケンスを復号するために参照する符号化パラメータの集合が規定されているシーケンスパラメータセットＳＰＳ、及び対象シーケンス内の各ピクチャを復号するために参照する符号化パラメータの集合が規定されているピクチャパラメータセットＰＰＳに関して、「ＳＰＳ及びＰＰＳのレイヤ識別子を０とする（nuh_layer_id=0)」というビットストリーム制約が提案されている。
【先行技術文献】
【非特許文献】
【００１４】
【非特許文献１】「Recommendation H.265 (04/13)」, ITU-T (２０１３年６月７日公開)
【非特許文献２】JCTVC-N1008_v3 「SHVC Draft 3」, Joint Collaborative Team onVideo Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 14th Meeting: Vienna, AT, 25 July - 2 Aug. 2013 (２０１３年８月２０日公開)
【非特許文献３】JCT3V-E1008_v5 「MV-HEVC Draft Text 5」, Joint CollaborativeTeam on 3D Video Coding Extension Development of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 5th Meeting: Vienna, AT, 27 July - 2 Aug. 2013 (２０１３年８月７日公開)
【非特許文献４】JCTVC-O0092_v1 「MV-HEVC/SHVC HLS: On nuh_layer_id of SPS and PPS」, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 15th Meeting: Geneva, CH, 23 Oct. - 1 Nov. 2013 (２０１３年１０月１４日公開)
【発明の概要】
【発明が解決しようとする課題】
【００１５】
しかしながら、従来技術（非特許文献２〜４）におけるＶＰＳ、ＳＰＳ及びＰＰＳに関するレイヤ識別子の制約では、ビットストリーム抽出時に、レイヤ識別子の値がnuhLayerIdAであるレイヤＡとレイヤ識別子の値がnuhLayerIdBであるレイヤＢから構成されるビットストリームがある場合において、ビットストリーム抽出により、レイヤＡの符号化データを破棄しレイヤＢのみの符号化データで構成されるビットストリームを抽出すると、レイヤＢを復号するために必要なレイヤＡのパラメータセット（レイヤ識別子の値がnuhLayerIdA）が破棄されることがある。この場合、抽出されたレイヤＢの符号化データを復号することができないという問題がある。
【００１６】
より具体的には、図１(a)に示すように、レイヤ識別子の値がそれぞれ、L#0 (nuh_layer_id=0)、L#1 (nuh_layer_id=1)、及びL#2 (nuh_layer_id=2)であるレイヤ０(図１(a)上のL#0)、レイヤ１(図１(a)上のL#1)、レイヤ２(図１(a)上のL#2)で構成されるレイヤセットＡ｛LayerIdList={nuh_layer_id=0, nuh_layer_id=1, nuh_layer_id=2}｝を含むビットストリームがあるとする。図１（ａ）のレイヤセットＡの例では、レイヤセットＡにおけるレイヤ間の依存関係が、図１(a)に示すように、レイヤ２のVCL（ビデオ符号化レイヤ）（図１(a)上のVCL L#2）は、レイヤ１のVCL（図１(a)上のVCL L#1）をレイヤ間予測（レイヤ間画像予測、レイヤ間動き予測）の参照レイヤとして依存する（図１上の実線の矢印）。また、パラメータセットの参照関係は、図１(a)上の太線の矢印で示すように、レイヤ０のＶＰＳ（図１(a)上のVPS L#0）は、各レイヤ０〜レイヤ２のパラメータセット、及びＶＣＬ(図１(a)上のSPS L#0, PPS L#0, VCL L#0, SPS L#1, PPS L#1, VCL L#1及びVCL L#2)から参照される。また、レイヤ０のＳＰＳは、レイヤ０のＰＰＳ及びＶＣＬから参照され、レイヤ０のＰＰＳは、レイヤ０のＶＣＬから参照される。同様に、レイヤ１のＳＰＳは、レイヤ１のＰＰＳ、ＶＣＬ、及びレイヤ２のＶＣＬから参照され、レイヤ１のＰＰＳは、レイヤ１のＶＣＬ、及びレイヤ２のＶＣＬから参照される。
【００１７】
このレイヤセットＡを含むビットストリームから、復号対象とする、レイヤセットＡのサブセットであるレイヤセットＢ{LayerIdListTarget={nuh_layer_id=1, nuh_layer_id=2}}のみを含むサブビットストリームを、抽出（ビットストリーム抽出）する（図１(b)）。しかし、レイヤセットＢ内のレイヤ１、及びレイヤ２の符号化データを復号するときに参照する、レイヤ識別子の値がL#0(nuh_layer_id=0)であるパラメータセット（ＶＰＳ（図１(b)上のVPS L#0）は、抽出後のビットストリームには存在しないため、レイヤ１、及びレイヤ２の符号化データを復号することができない場合が発生する。
【００１８】
本発明は、上記問題に鑑みてされたものであり、その目的は、パラメータセットに関するビットストリーム制約、及びビットストリーム抽出処理を規定し、該レイヤセットを含むビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止する画像復号装置、及び画像符号化装置を実現することにある。
【課題を解決するための手段】
【００１９】
上記の課題を解決するために、本発明の一態様に係る画像復号装置は、入力画像符号化データを復号する画像復号装置であって、１以上のレイヤからなる復号対象レイヤセットを示すレイヤＩＤリストに基づいて、前記入力画像符号化データから、前記復号対象レイヤセットに係る画像符号化データを抽出する画像符号化データ抽出部と、前記抽出された画像符号化データより、復号対象レイヤセットのピクチャを復号するピクチャ復号部と、を備え、前記画像符号化データ抽出部から抽出された前記入力画像符号化データは、レイヤ識別子が０に等しくない、かつ前記レイヤＩＤリストに含まれないレイヤ識別子を有するnon-VCL NALユニットを含まないことを特徴とする。
【００２０】
本発明の一態様に係る画像復号方法は、入力画像符号化データを復号する画像復号方法であって、１以上のレイヤからなる復号対象レイヤセットを示すレイヤＩＤリストに基づいて、前記入力画像符号化データから、前記復号対象レイヤセットに係る画像符号化データを抽出する画像符号化データ抽出工程と、前記抽出された画像符号化データより、復号対象レイヤセットのピクチャを復号するピクチャ復号工程と、を備え、前記画像符号化データ抽出工程で抽出された前記入力画像符号化データは、レイヤ識別子が０に等しくない、かつ前記レイヤＩＤリストに含まれないレイヤ識別子を有するnon-VCL NALユニットを含まないことを特徴とする。
【発明の効果】
【００２１】
本発明の一態様によれば、パラメータセットに関するビットストリーム制約、及びビットストリーム抽出処理を規定することで、該レイヤセットを含むビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【図面の簡単な説明】
【００２２】
【図１】あるレイヤセットＡを含むビットストリームから、レイヤセットＡのサブセットであるレイヤセットＢを抽出する際に発生する問題の一例を説明するための図である。（ａ）はレイヤセットＡの一例を示し、（ｂ）はビットストリーム抽出後のレイヤセットＢの一例を示す。
【図２】本発明の一実施形態に係る階層符号化データのレイヤ構造を説明するための図であって、（ａ）は、階層動画像符号化装置側について示しており、（ｂ）は、階層動画像復号装置側について示している。
【図３】あるレイヤセットを構成するレイヤ、およびサブレイヤ（テンポラルレイヤ）の構造を説明するための図である。
【図４】図３に示すレイヤセットよりサブビットストリーム抽出処理により、抽出したレイヤセットのサブセットを構成するレイヤ、およびサブレイヤ（テンポラルレイヤ）を説明するための図である。
【図５】NALユニットレイヤを構成するデータ構造の例を示す図である。
【図６】NALユニットレイヤに含まれるシンタックスの例を示す図である。（ａ）はNALユニットレイヤを構成するシンタックス例を示し、 (ｂ)はNALユニットヘッダのシンタックス例を示す図である。
【図７】本発明の実施形態に係るＮＡＬユニットタイプの値とＮＡＬユニットの種別の関係を示す図である。
【図８】アクセスユニットに含まれるＮＡＬユニットの構成の一例を示す図である。
【図９】本発明の実施形態に係る階層符号化データの構成を説明するための図であって、（ａ）は、シーケンスSEQを既定するシーケンスレイヤ、（ｂ）は、ピクチャPICTを規定するピクチャレイヤ、（ｃ）は、スライスSを規定するスライスレイヤ、（ｄ）は、スライスデータを規定するスライスデータレイヤ、（ｅ）は、スライスデータに含まれる符号化ツリーユニットを規定する符号化ツリーレイヤ、（ｆ）は、符号化ツリーに含まれる符号化単位（Coding Unit; CU）を規定する符号化ユニットレイヤを示す図である。
【図１０】本実施形態に係る共有パラメータセットを説明するための図である。
【図１１】参照ピクチャリスト、及び参照ピクチャを説明するための図である。（ａ）は、参照ピクチャリストの一例を示し、（ｂ）参照ピクチャの一例を示す概念図である。
【図１２】本発明の実施形態に係るＶＰＳのシンタックステーブルの一例である。
【図１３】本発明の実施形態に係るＶＰＳ拡張データのシンタックステーブルの一例である。
【図１４】本実施形態に係るレイヤ依存タイプを説明するための図である。（ａ）は、依存タイプとして、non-VCLの依存の有無を含める一例を示し、(b)は、依存タイプとして、共有パラメータセットの有無、及びパラメータセット間予測の有無を含める一例である。
【図１５】本発明の実施形態に係るＳＰＳのシンタックステーブルの一例である。
【図１６】本発明の実施形態に係るＳＰＳ拡張データのシンタックステーブルの一例である。
【図１７】本発明の実施形態に係るＰＰＳのシンタックステーブルの一例である。
【図１８】本発明の実施形態に係るスライスレイヤのシンタックステーブルの一例である。(a)は、スライスレイヤに含まれるスライスヘッダ、及びスライスデータのシンタックステーブルの一例を示し、（ｂ）は、スライスヘッダのシンタックステーブルの一例を示し、（ｃ）スライスデータのシンタックステーブルの一例を示す。
【図１９】本実施形態に係る階層動画像復号装置の構成を示す概略図である。
【図２０】本実施形態に係る対象レイヤセットピクチャ復号部の構成を示す概略図である。
【図２１】本実施形態に係るピクチャ復号部の動作を説明するためのフローチャートである。
【図２２】本実施形態に係る階層動画像復号装置の構成を示す概略図である。
【図２３】本実施形態に係る対象レイヤセットピクチャ復号部の構成を示す概略図である。
【図２４】本実施形態に係るピクチャ復号部の動作を説明するためのフローチャートである。
【図２５】上記階層動画像符号化装置を搭載した送信装置、および、上記階層動画像復号装置を搭載した受信装置の構成について示した図である。（ａ）は、階層動画像符号化装置を搭載した送信装置を示しており、（ｂ）は、階層動画像復号装置を搭載した受信装置を示している。
【図２６】上記階層動画像符号化装置を搭載した記録装置、および、上記階層動画像復号装置を搭載した再生装置の構成について示した図である。（ａ）は、階層動画像符号化装置を搭載した記録装置を示しており、（ｂ）は、階層動画像復号装置を搭載した再生装置を示している。
【図２７】本実施形態に係るビットストリーム抽出部の動作を説明するためのフローチャートである。
【図２８】本実施形態に係るビットストリーム抽出部の変形例１の動作を説明するためのフローチャートである。
【図２９】本実施形態に係るビットストリーム抽出部の変形例２の動作を説明するためのフローチャートである。
【図３０】本実施形態に係るビットストリーム抽出部の変形例３の動作を説明するためのフローチャートである。
【図３１】間接参照レイヤを説明するための図である。
【発明を実施するための形態】
【００２３】
図２〜図３１に基づいて、本発明の一実施形態に係る階層動画像復号装置１および階層動画像符号化装置２を説明すれば以下のとおりである。
【００２４】
〔概要〕
本実施の形態に係る階層動画像復号装置（画像復号装置）１は、階層動画像符号化装置（画像符号化装置）２によって階層符号化された符号化データを復号する。階層符号化とは、動画像を低品質のものから高品質のものにかけて階層的に符号化する符号化方式のことである。階層符号化は、例えば、SVCやSHVCにおいて標準化されている。なお、ここでいう動画像の品質とは、主観的および客観的な動画像の見栄えに影響する要素のことを広く意味する。動画像の品質には、例えば、“解像度”、“フレームレート”、“画質”、および、“画素の表現精度”が含まれる。よって、以下、動画像の品質が異なるといえば、例示的には、“解像度”等が異なることを指すが、これに限られない。例えば、異なる量子化ステップで量子化された動画像の場合（すなわち、異なる符号化雑音により符号化された動画像の場合）も互いに動画像の品質が異なるといえる。
【００２５】
また、階層符号化技術は、階層化される情報の種類の観点から、（１）空間スケーラビリティ、（２）時間スケーラビリティ、（３）ＳＮＲ（Signal to Noise Ratio）スケーラビリティ、および（４）ビュースケーラビリティに分類されることもある。空間スケーラビリティとは、解像度や画像のサイズにおいて階層化する技術である。時間スケーラビリティとは、フレームレート（単位時間のフレーム数）において階層化する技術である。ＳＮＲスケーラビリティは、符号化雑音において階層化する技術である。また、ビュースケーラビリティは、各画像に対応付けられた視点位置において階層化する技術である。
【００２６】
本実施形態に係る階層動画像符号化装置２及び階層動画像復号装置１の詳細な説明に先立って、まず（１）階層動画像符号化装置２によって生成され、階層動画像復号装置１によって復号される階層符号化データのレイヤ構造を説明し、次いで（２）各レイヤで採用できるデータ構造の具体例について説明を行う。
【００２７】
〔階層符号化データのレイヤ構造〕
ここで、図２を用いて、階層符号化データの符号化および復号について説明すると次のとおりである。図２は、動画像を、下位階層Ｌ３、中位階層Ｌ２、および上位階層Ｌ１の３階層により階層的に符号化／復号する場合について模式的に表わす図である。つまり、図２（ａ）および（ｂ）に示す例では、３階層のうち、上位階層Ｌ１が最上位層となり、下位階層Ｌ３が最下位層となる。
【００２８】
以下において、階層符号化データから復号され得る特定の品質に対応する復号画像は、特定の階層の復号画像（または、特定の階層に対応する復号画像）と称される（例えば、上位階層Ｌ１の復号画像ＰＯＵＴ#Ａ）。
【００２９】
図２（ａ）は、入力画像ＰＩＮ#Ａ〜ＰＩＮ#Ｃをそれぞれ階層的に符号化して符号化データＤＡＴＡ#Ａ〜ＤＡＴＡ#Ｃを生成する階層動画像符号化装置２#Ａ〜２#Ｃを示している。図２（ｂ）は、階層的に符号化された符号化データＤＡＴＡ#Ａ〜ＤＡＴＡ#Ｃをそれぞれ復号して復号画像ＰＯＵＴ#Ａ〜ＰＯＵＴ#Ｃを生成する階層動画像復号装置１#Ａ〜１#Ｃを示している。
【００３０】
まず、図２（ａ）を用いて、符号化装置側について説明する。符号化装置側の入力となる入力画像ＰＩＮ#Ａ、ＰＩＮ#Ｂ、およびＰＩＮ#Ｃは、原画は同じだが、画像の品質（解像度、フレームレート、および画質等）が異なる。画像の品質は、入力画像ＰＩＮ#Ａ、ＰＩＮ#Ｂ、およびＰＩＮ#Ｃの順に低くなる。
【００３１】
下位階層Ｌ３の階層動画像符号化装置２#Ｃは、下位階層Ｌ３の入力画像ＰＩＮ#Ｃを符号化して下位階層Ｌ３の符号化データＤＡＴＡ#Ｃを生成する。下位階層Ｌ３の復号画像ＰＯＵＴ#Ｃを復号するのに必要な基本情報が含まれる（図２において“Ｃ”にて示している）。下位階層Ｌ３は、最下層の階層であるため、下位階層Ｌ３の符号化データＤＡＴＡ#Ｃは、基本符号化データとも称される。
【００３２】
また、中位階層Ｌ２の階層動画像符号化装置２#Ｂは、中位階層Ｌ２の入力画像ＰＩＮ#Ｂを、下位階層の符号化データＤＡＴＡ#Ｃを参照しながら符号化して中位階層Ｌ２の符号化データＤＡＴＡ#Ｂを生成する。中位階層Ｌ２の符号化データＤＡＴＡ#Ｂには、符号化データＤＡＴＡ#Ｃに含まれる基本情報“Ｃ”に加えて、中位階層の復号画像ＰＯＵＴ#Ｂを復号するのに必要な付加的情報（図２において“Ｂ”にて示している）が含まれる。
【００３３】
また、上位階層Ｌ１の階層動画像符号化装置２#Ａは、上位階層Ｌ１の入力画像ＰＩＮ#Ａを、中位階層Ｌ２の符号化データＤＡＴＡ#Ｂを参照しながら符号化して上位階層Ｌ１の符号化データＤＡＴＡ#Ａを生成する。上位階層Ｌ１の符号化データＤＡＴＡ#Ａには、下位階層Ｌ３の復号画像ＰＯＵＴ#Ｃを復号するのに必要な基本情報“Ｃ”および中位階層Ｌ２の復号画像ＰＯＵＴ#Ｂを復号するのに必要な付加的情報“Ｂ”に加えて、上位階層の復号画像ＰＯＵＴ#Ａを復号するのに必要な付加的情報（図２において“Ａ”にて示している）が含まれる。
【００３４】
このように上位階層Ｌ１の符号化データＤＡＴＡ#Ａは、異なる複数の品質の復号画像に関する情報を含む。
【００３５】
次に、図２（ｂ）を参照しながら復号装置側について説明する。復号装置側では、上位階層Ｌ１、中位階層Ｌ２、および下位階層Ｌ３それぞれの階層に応じた復号装置１#Ａ、１#Ｂ、および１#Ｃが、符号化データＤＡＴＡ#Ａ、ＤＡＴＡ#Ｂ、およびＤＡＴＡ#Ｃを復号して復号画像ＰＯＵＴ#Ａ、ＰＯＵＴ#Ｂ、およびＰＯＵＴ#Ｃを出力する。
【００３６】
なお、上位の階層符号化データの一部の情報を抽出（ビットストリーム抽出とも呼ぶ）して、より下位の特定の復号装置において、当該抽出した情報を復号することで特定の品質の動画像を再生することもできる。
【００３７】
例えば、中位階層Ｌ２の階層復号装置１#Ｂは、上位階層Ｌ１の階層符号化データＤＡＴＡ#Ａから、復号画像ＰＯＵＴ#Ｂを復号するのに必要な情報（すなわち、階層符号化データＤＡＴＡ#Ａに含まれる“Ｂ”および“Ｃ”）を抽出して、復号画像ＰＯＵＴ#Ｂを復号してもよい。言い換えれば、復号装置側では、上位階層Ｌ１の階層符号化データＤＡＴＡ#Ａに含まれる情報に基づいて、復号画像ＰＯＵＴ#Ａ、ＰＯＵＴ#Ｂ、およびＰＯＵＴ#Ｃを復号できる。
【００３８】
なお、以上の３階層の階層符号化データに限られず、階層符号化データは、２階層で階層符号化されていてもよいし、３階層よりも多い階層数にて階層符号化されていてもよい。
【００３９】
また、特定の階層の復号画像に関する符号化データの一部または全部を他の階層とは独立して符号化し、特定の階層の復号の際に、他の階層の情報を参照しなくても済むように階層符号化データを構成してもよい。例えば、図２（ａ）および（ｂ）を用いて上述した例では、復号画像ＰＯＵＴ#Ｂの復号に“Ｃ”および“Ｂ”を参照すると説明したが、これに限られない。復号画像ＰＯＵＴ#Ｂが“Ｂ”だけを用いて復号できるように階層符号化データを構成することも可能である。例えば、復号画像ＰＯＵＴ#Ｂの復号に、“Ｂ”だけから構成される階層符号化データと、復号画像ＰＯＵＴ#Ｃを入力とする階層動画像復号装置も構成できる。
【００４０】
なお、ＳＮＲスケーラビリティを実現する場合、入力画像ＰＩＮ#Ａ、ＰＩＮ#Ｂ、およびＰＩＮ#Ｃとして同一の原画を用いた上で、復号画像ＰＯＵＴ#Ａ、ＰＯＵＴ#Ｂ、およびＰＯＵＴ#Ｃが異なる画質となるよう階層符号化データを生成することもできる。その場合、下位階層の階層動画像符号化装置が、上位階層の階層動画像符号化装置に較べて、より大きい量子化幅を用いて予測残差を量子化することで階層符号化データを生成する。
【００４１】
本書では、説明の便宜上、次のとおり用語を定義する。以下の用語は、特に断りがなければ、下記の技術的事項のことを表わすのに用いる。
【００４２】
VCL NALユニット  ：  VCL(Video Coding Layer、ビデオ符号化レイヤ) NALユニットとは、動画像（映像信号）の符号化データを含むNALユニットである。例えば、VCL NALユニットには、スライスデータ（ＣＴＵの符号化データ）、及び当該スライスの復号を通じて共通で利用されるヘッダ情報（スライスヘッダ）が含まれる。また、VCL NALユニットに格納される符号化データを、VCLという。
【００４３】
non-VCL NALユニット  ：  non-VCL(non-Video Coding Layer、非ビデオ符号化レイヤ、非VCL) NALユニットとは、ビデオパラメータセットＶＰＳ、シーケンスパラメータセットＳＰＳ、ピクチャパラメータセットＰＰＳ等の各シーケンスやピクチャを復号する時に利用される符号化パラメータの集合であるヘッダ情報等の符号化データを含むNALユニットである。また、non-VCL NALユニットに格納される符号化データを、non-VCLという。
【００４４】
レイヤ識別子  ：  レイヤ識別子(レイヤIDとも称する)は、階層（レイヤ）を識別するためのものであり、階層と１対１に対応する。階層符号化データには特定の階層の復号画像の復号に必要な部分符号化データを選択するために用いられる識別子が含まれる。特定のレイヤに対応するレイヤ識別子に関連付けられた階層符号化データの部分集合は、レイヤ表現とも呼称される。
【００４５】
一般に、特定の階層の復号画像の復号には、当該階層のレイヤ表現、および／または、当該階層の下位レイヤに対応するレイヤ表現が用いられる。すなわち、対象レイヤの復号画像の復号においては、対象レイヤのレイヤ表現、および／または、対象レイヤの下位レイヤに含まれる１つ以上階層のレイヤ表現が用いられる。
【００４６】
レイヤ  ：  特定の階層（レイヤ）のレイヤ識別子の値(nuh_layer_id, nuhLayerId)をもつVCL NALユニット及びそのVCL NALユニットに関連付けられたnon-VCL NALユニットの集合、あるいは、階層的な関係をもつシンタックス構造の集合の一つである。
【００４７】
上位レイヤ  ：  ある階層よりも上位に位置する階層のことを、上位レイヤと称する。例えば、図２において、下位階層Ｌ３の上位レイヤは、中位階層Ｌ２および上位階層Ｌ１である。また、上位レイヤの復号画像とは、より品質の高い（例えば、解像度が高い、フレームレートが高い、画質が高い等）復号画像のことをいう。
【００４８】
下位レイヤ  ：  ある階層よりも下位に位置する階層のことを、下位レイヤと称する。例えば、図２において、上位階層Ｌ１の下位レイヤは、中位階層Ｌ２および下位階層Ｌ３である。また、下位レイヤの復号画像とは、より品質の低い復号画像のことをいう。
【００４９】
対象レイヤ  ：  復号または符号化の対象となっている階層のことをいう。なお、対象レイヤに対応する復号画像を対象レイヤピクチャと呼ぶ。また、対象レイヤピクチャを構成する画素を対象レイヤ画素と呼ぶ。
【００５０】
参照レイヤ  ：  対象レイヤに対応する復号画像を復号するのに参照される特定の下位レイヤのことを参照レイヤと称する。なお、参照レイヤに対応する復号画像を参照レイヤピクチャと呼ぶ。また、参照レイヤを構成する画素を参照レイヤ画素と呼ぶ。
【００５１】
図２（ａ）および（ｂ）に示した例では、上位階層Ｌ１の参照レイヤは、中位階層Ｌ２および下位階層Ｌ３である。しかしながら、これに限られず、特定の上記レイヤの復号において、下位レイヤのすべてを参照しなくてもよいように階層符号化データを構成することもできる。例えば、上位階層Ｌ１の参照レイヤが、中位階層Ｌ２および下位階層Ｌ３のいずれか一方となるように階層符号化データを構成することも可能である。また、参照レイヤは、対象レイヤの復号に用いられる符号化パラメータ等を予測する際に利用（参照）される、対象レイヤとは異なるレイヤであるとも表現できる。対象レイヤのレイヤ間予測で直接、参照される参照レイヤを直接参照レイヤとも呼ばれる。また、対象レイヤの直接参照レイヤＡのレイヤ間予測で参照される直接参照レイヤＢは、対象レイヤの間接参照レイヤとも呼ばれる。
【００５２】
基本レイヤ  ：  最下層に位置する階層のことを基本レイヤと称する。基本レイヤの復号画像は、符号化データから復号され得るもっとも低い品質の復号画像であり、基本復号画像と呼称される。別の言い方をすれば、基本復号画像は、最下層の階層に対応する復号画像のことである。基本復号画像の復号に必要な階層符号化データの部分符号化データは基本符号化データと呼称される。例えば、上位階層Ｌ１の階層符号化データＤＡＴＡ#Ａに含まれる基本情報“Ｃ”が基本符号化データである。
【００５３】
拡張レイヤ  ：  基本レイヤの上位レイヤは、拡張レイヤと称される。
【００５４】
レイヤ間予測  ：  レイヤ間予測とは、対象レイヤのレイヤ表現と異なる階層（参照レイヤ）のレイヤ表現に含まれるシンタックス要素値、シンタックス要素値より導出される値、および復号画像に基づいて、対象レイヤのシンタックス要素値や対象レイヤの復号に用いられる符号化パラメータ等を予測することである。動き予測に関する情報を参照レイヤの情報から予測するレイヤ間予測のことをレイヤ間動き情報予測と称することもある。また、下位レイヤの復号画像から予測するレイヤ間予測のことをレイヤ間画像予測（あるいはレイヤ間テクスチャ予測）と称することもある。なお、レイヤ間予測に用いられる階層は、例示的には、対象レイヤの下位レイヤである。また、参照レイヤを用いず対象レイヤ内で予測を行うことをレイヤ内予測と称することもある。
【００５５】
テンポラル識別子：  テンポラル識別子（テンポラルＩＤ、時間識別子、サブレイヤＩＤ、あるいはサブレイヤ識別子ともいう）は、時間スケーラビリティに関するレイヤ（以降、サブレイヤ）を識別するための識別子である。テンポラル識別子は、サブレイヤを識別するためのものであり、サブレイヤと１対１に対応する。符号化データには特定のサブレイヤの復号画像の復号に必要な部分符号化データを選択するために用いられるテンポラル識別子が含まれる。特に、最高次（最上位）のサブレイヤのテンポラル識別子を最高次（最上位）テンポラル識別子(highest TemporalId, highestTid)と称する。
【００５６】
サブレイヤ：  サブレイヤとは、テンポラル識別子により特定される時間スケーラビリティに関するレイヤである。空間スケーラビリティ、ＳＮＲスケーラビリティ等、そのほかのスケーラビリティと区別するため、以降サブレイヤと称する（テンポラルレイヤとも称する）。また、以降では、時間スケーラビリティは、基本レイヤの符号化データ、またはあるレイヤを復号するために必要な階層符号化データ、に含まれるサブレイヤによって実現されるものとする。
【００５７】
レイヤセット：  レイヤセットとは、1以上のレイヤからなるレイヤの集合である。
【００５８】
ビットストリーム抽出処理  ：  ビットストリーム抽出処理とは、あるビットストリーム（階層符号化データ、符号化データ）から、対象最高次テンポラル識別子(highest TemporalId, highestTid)、対象レイヤセットに含まれるレイヤを表わすレイヤIDリスト(LayerSetLayerIdList[]、LayerIdList[]ともいう)によって定まる集合（ターゲットセットTargetSetと呼ぶ）に含まれないNALユニットを除去（破棄）し、ターゲットセットに含まれるNALユニットから構成されるビットストリーム（サブビットストリームとも称する）を抽出する処理である。ビットストリーム抽出は、サブビットストリーム抽出とも呼ばれる。なお、レイヤセットに含まれるレイヤＩＤは、レイヤＩＤリストLayerSetLayerIdList[K](K=0…N-1, Nはレイヤセットに含まれるレイヤ数)の各要素に、昇順で格納されているものとする。また、対象最高次テンポラル識別子をHighestTidTargetと称し、対象レイヤセットをLayerSetTargetと称し、対象レイヤセットのレイヤＩＤリスト（対象レイヤＩＤリスト）をLayerIdListTargetとも称する。また、ビットストリーム抽出により生成された、ターゲットセットに含まれるＮＡＬユニットから構成されるビットストリーム（画像符号化データ）を復号対象画像符号化データ（BitstreamToDecode）とも称する。
【００５９】
次に、図３、及び図４を参照して、ビットストリーム抽出処理により、あるレイヤセットＡを含む階層符号化データより、レイヤセットＡのサブセットとなるレイヤセットＢを含む階層符号化データを抽出する例について説明する。
【００６０】
図３は、３つのレイヤ（L#0,L#1,L#2）、及び各レイヤは３つのサブレイヤ(TID1, TID2,TID3)から構成されるレイヤセットＡの構成を表わす。なお、以降では、レイヤセットを構成するレイヤ、及びサブレイヤを、｛レイヤＩＤリスト｛L#0,…,L#N｝、最高次テンポラルID=K｝、あるいは｛LayerIdList={L#0,…,L#N}, HighestTid=K｝と表わす。例えば、図３のレイヤセットＡは、｛レイヤＩＤリスト｛L#0, L#1, L#2｝, 最高次テンポラルID=3｝、あるいは｛LayerIdList=｛L#0, L#1, L#2｝, HighestTid=3｝と表現される。ここで、符号Ｌ♯Ｎは、あるレイヤＮを示し、図３中の各ボックスは、ピクチャを表わし、ボックス内の番号は、復号順の一例を表わす。以降、ピクチャで番号Ｎを、P#Nと表記する（図４についても同様）。
【００６１】
また、各ピクチャ間の矢印は、ピクチャ間の依存方向（参照関係）を表わす。同一レイヤ内の矢印であれば、インター予測に利用される参照ピクチャであることを示す。レイヤ間の矢印であれば、レイヤ間予測に利用される参照ピクチャ（参照レイヤピクチャともいう）であることを表わす。
【００６２】
また、図３中のＡＵは、アクセスユニットを表わし、符号#Ｎは、アクセスユニット番号を表わす。ＡＵ#Ｎは、ある起点（例えば、ランダムアクセス開始点）のＡＵをＡＵ#０とすれば、（Ｎ−１）番目のアクセスユニットであることを表わし、ビットストリームに含まれるＡＵの順番を表わす。すなわち、図３の例であれば、ビットストリーム上で、アクセスユニットは、ＡＵ#０、ＡＵ#１、ＡＵ#２、ＡＵ#３、ＡＵ#４…の順で格納されている。なお、アクセスユニットとは、特定の分類ルールにより集約されたＮＡＬユニットの集合を表わす。図３のＡＵ#０は、ピクチャＰ#１、Ｐ#１、及びＰ#３の符号化データを含むVCL NALの集合とみることができる。なお、アクセスユニットの詳細については後述する。
【００６３】
図３の例では、ターゲットセット（レイヤセットＢ）は、｛LayerIdList=｛L#0,L#1｝、HighestTid=2｝であるから、レイヤセットＡを含むビットストリームから、ターゲットセット（レイヤセットＢ）に含まれないレイヤ、及び最高次テンポラルID(HighestTid=2)より大きいサブレイヤを、ビットストリーム抽出により破棄する。すなわち、レイヤIDリストに含まれないレイヤL#2、及びサブレイヤ(TID3)を有するＮＡＬユニットが破棄され、最終的には、図４に示すように、レイヤセットＢを含むビットストリームが抽出される。図４では、点線のボックスは、破棄されたピクチャを表わし、点線の矢印は、破棄されたピクチャと参照ピクチャ間の依存方向を示す。なお、レイヤL#3、及びTID3のサブレイヤのピクチャを構成するNALユニットは破棄済のため、依存関係は既に断ち切られている。
【００６４】
ＳＨＶＣやＭＶ−ＨＥＶＣでは、ＳＮＲスケーラビリティ、空間スケーラビリティ、時間スケーラビリティ等を実現するために、レイヤ、及びサブレイヤの概念が導入されている。図３、図４で既に説明したように、フレームレートを変更し時間スケーラビリティを実現する場合、ビットストリーム抽出処理により、まず他のピクチャから参照されないピクチャ（最高次テンポラルＩＤ（TID3））の符号化データを破棄する。図３、図４の場合、ピクチャ（１０、１３、１１、１４、１２、１５）の符号化データを破棄することにより、フレームレートが１／２となる符号化データが生成される。
【００６５】
また、ＳＮＲスケーラビリティ、空間スケーラビリティや、ビュースケーラビリティを実現する場合、ビットストリーム抽出により、ターゲットセットに含まれない、レイヤの符号化データを破棄することで、各スケーラビリティの粒度を変更することができる。図３、図４の場合、ピクチャ（３、６、９、１２、１５）の符号化データを破棄することで、スケーラビリティの粒度を粗くした符号化データが生成される。上記処理を繰り返すことで、段階的にレイヤ、サブレイヤの粒度を調整することができる。
【００６６】
なお、図３において、レイヤL#0とレイヤL#1との間にレイヤ間予測等の依存関係がなければ、レイヤセットＡのビットストリームから、ビットストリーム抽出により、単独のレイヤからなる、レイヤセットＡのサブセットであるレイヤセットＣ｛LayerIdList={L#1｝、HighestTid=2｝を含むビットストリームを抽出することも可能である。
【００６７】
なお、以上の用語は、飽くまで説明の便宜上のものであり、上記の技術的事項を別の用語にて表現してもかまわない。
【００６８】
〔階層符号化データのデータ構造について〕
以下、各階層の符号化データを生成する符号化方式として、HEVCおよびその拡張方式を用いる場合について例示する。しかしながら、これに限られず、各階層の符号化データを、MPEG-2や、H.264/AVCなどの符号化方式により生成してもよい。
【００６９】
また、下位レイヤと上位レイヤとが異なる符号化方式によって符号化されていてもよい。また、各階層の符号化データは、互いに異なる伝送路を介して階層動画像復号装置１に供給されてもよいし、同一の伝送路を介して階層動画像復号装置１に供給されてもよい。
【００７０】
例えば、超高精細映像（動画像、４Ｋ映像データ）を基本レイヤおよび１つの拡張レイヤによりスケーラブル符号化して伝送する場合、基本レイヤは、４Ｋ映像データをダウンスケーリングし、インタレース化した映像データをMPEG-2またはH.264/AVCにより符号化してテレビ放送網で伝送し、拡張レイヤは、４Ｋ映像（プログレッシブ）をHEVCにより符号化して、インターネットで伝送してもよい。
【００７１】
＜階層符号化データＤＡＴＡの構造＞
本実施形態に係る画像符号化装置２および画像復号装置１の詳細な説明に先立って、画像符号化装置２によって生成され、画像復号装置１によって復号される階層符号化データＤＡＴＡのデータ構造について説明する。
【００７２】
（ＮＡＬユニットレイヤ）
図５は、階層符号化データＤＡＴＡにおけるデータの階層構造を示す図である。階層符号化データＤＡＴＡは、ＮＡＬ（Network Abstraction Layer）ユニットと呼ばれる単位で符号化される。
【００７３】
ＮＡＬは、動画像符号化処理を行う層であるＶＣＬ（Video Coding Layer）と、符号化データを伝送・蓄積する下位システムとの間における通信を抽象化するために設けられる層である。
【００７４】
ＶＣＬは、画像符号化処理を行う層のことであり、ＶＣＬにおいて符号化が行われる。一方、ここでいう、下位システムは、Ｈ．２６４／ＡＶＣおよびＨＥＶＣのファイルフォーマットや、ＭＰＥＧ−２システムに対応する。以下に示す例では、下位システムは、対象レイヤおよび参照レイヤにおける復号処理に対応する。なお、ＮＡＬでは、ＶＣＬで生成されたビットストリームが、ＮＡＬユニットという単位で区切られて、宛先となる下位システムへ伝送される。
【００７５】
図６（ａ）は、ＮＡＬ（Network Abstraction Layer）ユニットのシンタックステーブルを示す。ＮＡＬユニットには、ＶＣＬで符号化された符号化データ、および、当該符号化データが宛先の下位システムに適切に届けられるためのヘッダ（ＮＡＬユニットヘッダ：nal_unit_header()(図６のSYNNAL01)）が含まれる。ＮＡＬユニットヘッダは、例えば、図６（ｂ）に示すシンタックスで表わされる。ＮＡＬユニットヘッダには、ＮＡＬユニットに格納された符号化データの種類を表わす”nal_unit_type”、格納された符号化データが属するサブレイヤの識別子（テンポラル識別子）を表わす”nuh_temporal_id_plus1”や、格納された符号化データが属するレイヤの識別子（レイヤ識別子）を表わす”nuh_layer_id”（または、nuh_reserved_zero_6bits）が記述されている。一方、ＮＡＬユニットデータ(図６のSYNNAL02)には、後述のパラメータセット、ＳＥＩ、スライスなどが含まれる。
【００７６】
図７は、ＮＡＬユニットタイプの値とＮＡＬユニットの種別の関係を示す図である。図７に示す通り、SYNA101 で示される０から１５の値のＮＡＬユニットタイプを持つＮＡＬユニットは、非ＲＡＰ(ランダムアクセスピクチャ)のスライスである。SYNA102で示される１６から２１の値のＮＡＬユニットタイプを持つＮＡＬユニットは、ＲＡＰ(ランダムアクセスポイントピクチャ、ＩＲＡＰピクチャ)のスライスである。ＲＡＰピクチャには、大きく分けて、ＢＬＡピクチャ、ＩＤＲピクチャ、ＣＲＡピクチャがあり、ＢＬＡピクチャは、さらに、ＢＬＡ＿Ｗ＿ＬＰ、ＢＬＡ＿Ｗ＿ＤＬＰ、ＢＬＡ＿Ｎ＿ＬＰに分類される。ＩＤＲピクチャは、さらに、ＩＤＲ＿Ｗ＿ＤＬＰ、ＩＤＲ＿Ｎ＿ＬＰに分類される。ＲＡＰピクチャ以外のピクチャには、リーディングピクチャ（ＬＰピクチャ）、テンポラルアクセスピクチャ（ＴＳＡピクチャ、ＳＴＳＡピクチャ）、トレイリングピクチャ（ＴＲＡＩＬピクチャ）などがある。なお、各階層における符号化データは、NALユニットに格納されることでNAL多重化されて階層動画像復号装置１に伝送される。
【００７７】
図７のNAL Unit Type Classで示されるように、各ＮＡＬユニットは、ＮＡＬユニットタイプに応じて、ピクチャを構成するデータ(VCLデータ)と、それ以外のデータ（non-VCL）に分類される。ピクチャは、ランダムアクセスピクチャ、リーディングピクチャ、トレイリングピクチャなどのピクチャ種別によらず、全てVCL NALユニットに分類され、ピクチャの復号に必要なデータであるパラメータセットや、ピクチャの補助情報であるＳＥＩ、シーケンスの区切りを表わすアクセスユニットデリミタ(AUD)、エンドオブシーケンス(EOS)、エンドオブビットストリーム(EOB)(図７のSYNA103)などは、non-VCL NALユニットに分類される。
【００７８】
（アクセスユニット）
特定の分類ルールにより集約されたＮＡＬユニットの集合のことをアクセスユニットと呼ぶ。レイヤ数が１の場合には、アクセスユニットは１ピクチャを構成するＮＡＬユニットの集合である。レイヤ数が１より大きい場合には、アクセスユニットは同じ時刻の複数のレイヤのピクチャを構成するＮＡＬユニットの集合である。なお、アクセスユニットの区切りを示すために、符号化データはアクセスユニットデリミタ（Access unit delimiter）と呼ばれるＮＡＬユニットを含んでも良い。アクセスユニットデリミタは、符号化データ中にあるアクセスユニットを構成するＮＡＬユニットの集合と、別のアクセスユニットを構成するＮＡＬユニットの集合の間に含まれる。
【００７９】
図８は、アクセスユニットに含まれるＮＡＬユニットの構成の一例を示す図である。図８に示すように、ＡＵには、ＡＵの先頭であることを示すアクセスユニットデリミタ（ＡＵＤ）、各種パラメータセット（ＶＰＳ、ＳＰＳ、ＰＰＳ）、各種ＳＥＩ（Prefix SEI, Suffix SEI）、レイヤ数が１の場合は１ピクチャを構成するＶＣＬ（slice）、レイヤ数が１より大きい場合はレイヤ数分のピクチャを構成するＶＣＬ、シーケンスの終端を示すＥＯＳ（End of Sequence）、ビットストリームの終端を示すＥＯＢ（End of Bitstream）等のＮＡＬユニットから構成される。なお、図８において、ＶＰＳ、ＳＰＳ、ＳＥＩ、ＶＣＬの後の符号L#K(K=Nmin…Nmax)は、レイヤＩＤを表わす。図８の例では、ＡＵ内に、ＶＰＳを除き、各レイヤL#Nmin〜レイヤL#NmaxのＳＰＳ、ＰＰＳ、ＳＥＩ、ＶＣＬが、レイヤＩＤの昇順で存在する。ＶＰＳは、最低次のレイヤＩＤでのみ送られる。なお、図８において、特定ＮＡＬユニットがＡＵ内に存在するか、または繰り返し存在するかを、矢印によって示している。例えば、特定のＮＡＬユニットがＡＵ内に存在すれば、そのＮＡＬユニットを通過する矢印で示し、特定のＮＡＬユニットがＡＵ内に存在しなければ、そのＮＡＬユニットをスキップする矢印で示している。例えば、ＡＵＤを通らずに、ＶＰＳへ向かう矢印は、ＡＵＤがＡＵ内に存在しない場合を示す。また、最低次以外の上位のレイヤＩＤを有するＶＰＳがＡＵ内に含まれてもよいが、画像復号装置は、最低次以外のレイヤＩＤを有するＶＰＳを無視するものとする。また、各種パラメータセット（ＶＰＳ，ＳＰＳ，ＰＰＳ）や補助情報であるＳＥＩは、図８のように、アクセスユニットの一部として含まれてもよいし、ビットストリームとは別の手段でデコーダに伝達されてもよい。
【００８０】
特に、レイヤ識別子nuhLayerId=0のIRAPピクチャを含むるアクセスユニットを、IRAPアクセスユニット(ランダムアクセスポイント・アクセスユニット)と呼ぶ。また、復号対象レイヤセットに含まれる全レイヤの復号処理の初期化を実施するIRAPアクセスユニットを初期化IRAPアクセスユニットと呼ぶ。また、復号順で、初期化IRAPアクセスユニットから、0以上の非初期化IRAPアクセスユニット(初期化IRAPアクセスユニット以外のアクセスユニット)が続き、次の初期化IRAPアクセスユニットまでのアクセスユニットの集合（ただし、次の初期化IRAPアクセスユニットは除く）を、ＣＶＳ（Coded Video Sequence;符号化ビデオシーケンス、以降ではシーケンスＳＥＱを含む）とも称する。
【００８１】
図９は、階層符号化データＤＡＴＡにおけるデータの階層構造を示す図である。階層符号化データＤＡＴＡは、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャを含む。図９の（ａ）〜（ｆ）は、それぞれ、シーケンスＳＥＱを既定するシーケンスレイヤ、ピクチャＰＩＣＴを規定するピクチャレイヤ、スライスＳを規定するスライスレイヤ、スライスデータを規定するスライスデータレイヤ、スライスデータに含まれる符号化ツリーユニットを規定する符号化ツリーレイヤ、符号化ツリーに含まれる符号化単位（Coding Unit；ＣＵ）を規定する符号化ユニットレイヤを示す図である。
【００８２】
（シーケンスレイヤ）
シーケンスレイヤでは、処理対象のシーケンスＳＥＱ（以下、対象シーケンスとも称する）を復号するために画像復号装置１が参照するデータの集合が規定されている。シーケンスＳＥＱは、図９の（ａ）に示すように、ビデオパラメータセット（Video Parameter Set）シーケンスパラメータセットＳＰＳ（Sequence Parameter Set）、ピクチャパラメータセットＰＰＳ（Picture Parameter Set）、ピクチャＰＩＣＴ、及び、付加拡張情報ＳＥＩ（Supplemental Enhancement Information）を含んでいる。ここで#の後に示される値はレイヤＩＤを示す。図９では、#０と#１、すなわちレイヤＩＤが０とレイヤＩＤが１の符号化データが存在する例を示すが、レイヤの種類およびレイヤの数はこれに限定されない。
【００８３】
（ビデオパラメータセット）
ビデオパラメータセットＶＰＳでは、１以上のレイヤから構成される符号化データを復号するために画像復号装置１が参照する符号化パラメータの集合が規定されている。例えば、後述のシーケンスパラメータセットや他のシンタックス要素が参照するＶＰＳを識別するために用いるＶＰＳ識別子(video_parameter_set_id)や、符号化データに含まれるレイヤ数(vps_max_layers_minus1)、レイヤに含まれるサブレイヤ数(vps_sub_layers_minus1)、符号化データ中で表現される1以上のレイヤからなるレイヤの集合を規定するレイヤセットの数(vps_num_layer_sets_minus1)、レイヤセットを構成するレイヤの集合を規定するレイヤセット構成情報(layer_id_included_flag[i][j])や、レイヤ間の依存関係(直接依存フラグdirect_dependency_flag[i][j]、レイヤ依存タイプdirect_dependency_type[i][j])などが規定されている。ＶＰＳは符号化データ内に複数存在してもよい。その場合、対象シーケンス毎に復号に用いられるＶＰＳが複数の候補から選択される。あるレイヤに属する特定シーケンスの復号に使用されるＶＰＳは、アクティブＶＰＳと呼ばれる。また、基本レイヤと拡張レイヤに適用されるＶＰＳを区別して、基本レイヤ（レイヤＩＤ＝０）に対するＶＰＳをアクティブＶＰＳと呼び、拡張レイヤ（レイヤＩＤ＞０）に対するＶＰＳをアクティブレイヤＶＰＳと呼ぶこともある。以下では、特に断りがなければ、ＶＰＳは、あるレイヤに属する対象シーケンスに対するアクティブＶＰＳを意味する。なお、レイヤID＝nuhLayerIdAであるレイヤの復号で利用される、レイヤID＝nuhLayerIdAであるＶＰＳは、nuhLayerIdAよりも大きいレイヤIDであるレイヤ（nuhLayerIdB、nuhLayerIdB>nuhLayerIdA）の復号に利用されてもよい。
【００８４】
（ＶＰＳに関するビットストリーム制約）
なお、VPSに関して、「VPSのレイヤIDは、アクセスユニット内に含まれるＶＣＬの中で最低次のレイヤIDを有するレイヤIDと等しい、かつ、テンポラルIDは０である（tId=0）である」というビットストリーム制約（ビットストリームコンフォーマンスともいう）がデコーダとエンコーダ間であるものとする。ここで、ビットストリームコンフォーマンスとは、階層動画像復号装置（ここでは本発明の実施形態に係る階層動画像復号装置）が復号するビットストリームが満たす必要がある条件である。同様に、階層動画像符号化装置（ここでは本発明の実施形態に係る階層動画像符号化装置が生成するビットストリームに関しても、上記階層動画像復号装置が復号可能なビットストリームであることを保障するため、上記ビットストリームコンフォーマンスを満たす必要がある。すなわち、ビットストリームコンフォーマンスとして、ビットストリームは、以下の条件ＣＸ１を少なくとも満たさなければならない。
【００８５】
ＣＸ１：「レイヤ識別子nuhLayerIdAであるVPSが、レイヤ識別子nuhLayerIdB(nuhLayerIdB>=nuhLayerIdA)であるレイヤのアクティブVPSであるとき、レイヤ識別子nuhLayerIdAは、アクセスユニット内に含まれるVCLの中で最低次のレイヤ識別子と等しいこと」
なお、ＣＸ１の条件は、次の条件ＣＸ１’のようにも言い換えることができる。
【００８６】
ＣＸ１’：「nuhLayerIdAに等しいレイヤ識別子nuh_layer_idを有するVPSが、nuhLayerIdB(nuhLayerIdB>=nuhLayerIdA)に等しいレイヤ識別子nuh_layer_idを有するレイヤのアクティブVPSであるとき、レイヤ識別子nuhLayerIdAは、アクセスユニット内に含まれるVCLの中で最低次のレイヤ識別子と等しいこと」
上記ビットストリーム制約ＣＸ１（ＣＸ１’）は、換言すれば、対象レイヤが参照するVPSは、対象レイヤセットのNALユニットの集合であるアクセスユニット内に含まれるVCLで、最低次のレイヤ識別子を有するVCLと同一のレイヤに属するということである。
【００８７】
「対象レイヤが参照するVPSは、対象レイヤセットのNALユニットの集合であるアクセスユニット内に含まれるVCLで、最低次のレイヤ識別子を有するVCLと同一のレイヤに属する」ということは、「レイヤセットＡのサブセットであるレイヤセットＢ内のレイヤが、レイヤセットＡにおいては、“レイヤセットＡに含まれるが、レイヤセットＢに含まれない”レイヤのVPSを参照する場合、ビットストリーム抽出により抽出したレイヤセットＢでは、前記VPSと同一の符号化パラメータを有するVPSを、レイヤセットＢに含めること」を意味する。なお、前記VPSと同一の符号化パラメータを有するVPSとは、レイヤ識別子、テンポラル識別子を除き、VPS識別子、及びその他のVPS内のシンタックスが前記VPSと同一であること指す。従って、上記ビットストリーム制約を設けることで、ビットストリーム抽出後のビットストリーム上で、レイヤセットにVPSが含まれないという問題を解消することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【００８８】
（ＶＰＳに関するビットストリーム制約の変形例１）
なお、上記VPSに関する制約は、「VPSのレイヤIDはレイヤセット内で最低次のレイヤID、かつ、テンポラルIDは０である（tId=0）である」としてもよい。
【００８９】
すなわち、ビットストリームコンフォーマンスとして、ビットストリームは、以下の条件ＣＸ２を少なくとも満たさなければならない。
【００９０】
ＣＸ２：「レイヤ識別子nuhLayerIdAであるVPSが、レイヤ識別子nuhLayerIdB(nuhLayerIdB>=nuhLayerIdA)であるレイヤのアクティブVPSであるとき、レイヤ識別子nuhLayerIdAは、レイヤセット内で最低次のレイヤ識別子であること」
なお、ＣＸ２の条件は、次の条件ＣＸ２’のようにも言い換えることができる。
【００９１】
ＣＸ２’：「nuhLayerIdAに等しいレイヤ識別子nuh_layer_idを有するVPSが、nuhLayerIdB(nuhLayerIdB>=nuhLayerIdA)に等しいレイヤ識別子nuh_layer_idを有するレイヤのアクティブVPSであるとき、レイヤ識別子nuhLayerIdAは、レイヤセット内で最低次のレイヤ識別子であること」
上記ビットストリーム制約ＣＸ２（ＣＸ２’）は、換言すれば、対象レイヤが参照するVPSは、対象レイヤセット内で最低次のレイヤ識別子を有するVPSであるということである。
【００９２】
「対象レイヤが参照するVPSは、対象レイヤセット内で最低次のレイヤ識別子を有するVPSである」ということは、「レイヤセットＡのサブセットであるレイヤセットＢ内のレイヤが、レイヤセットＡにおいては、“レイヤセットＡに含まれるが、レイヤセットＢに含まれない”レイヤのVPSを参照する場合、ビットストリーム抽出により抽出したレイヤセットＢでは、前記VPSと同一の符号化パラメータを有するVPSを、レイヤセットＢに含めること」を意味する。
【００９３】
従って、上記ビットストリーム制約を設けることで、ビットストリーム抽出後のビットストリーム上で、レイヤセットにVPSが含まれないという問題を解消することができる。すなわち、図１に示す従来技術で発生しうる課題、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【００９４】
（シーケンスパラメータセット）
シーケンスパラメータセットＳＰＳでは、対象シーケンスを復号するために画像復号装置１が参照する符号化パラメータの集合が規定されている。例えば、対象ＳＰＳが参照するアクティブＶＰＳを表わすアクティブＶＰＳ識別子(sps_video_parameter_set_id)、後述のピクチャパラメータセットや他のシンタックス要素が参照するＳＰＳを識別するために用いるＳＰＳ識別子（sps_seq_parameter_set_id）や、ピクチャの幅や高さが規定される。ＳＰＳは符号化データ内に複数存在してもよい。その場合、対象シーケンス毎に復号に用いられるＳＰＳが複数の候補から選択される。あるレイヤに属する特定シーケンスの復号に使用されるＳＰＳは、アクティブＳＰＳとも呼ばれる。また、基本レイヤと拡張レイヤに適用されるＳＰＳを区別して、基本レイヤに対するＳＰＳをアクティブＳＰＳと呼び、拡張レイヤに対するＳＰＳをアクティブレイヤＳＰＳと呼ぶこともある。以下では、特に断りがなければ、ＳＰＳは、あるレイヤに属する対象シーケンスの復号に利用されるに対するアクティブＳＰＳを意味する。なお、レイヤID＝nuhLayerIdAであるレイヤに属するシーケンスの復号で利用される、レイヤID＝nuhLayerIdAであるＳＰＳは、nuhLayerIdAよりも大きいレイヤIDであるレイヤ（nuhLayerIdB、nuhLayerIdB>nuhLayerIdA）に属するシーケンスの復号に利用されてもよい。以降、特に断りがなければ、SPSのテンポラルIDは０である（tId=0）とする制約（ビットストリーム制約ともいう）がデコーダとエンコーダ間であるものとする。
【００９５】
（ピクチャパラメータセット）
ピクチャパラメータセットＰＰＳでは、対象シーケンス内の各ピクチャを復号するために画像復号装置１が参照する符号化パラメータの集合が規定されている。例えば、対象ＰＰSが参照するアクティブＳＰＳを表わすアクティブＳＰＳ識別子(pps_seq_parameter_set_id)、後述のスライスヘッダや他のシンタックス要素が参照するＰＰＳを識別するために用いるＰＰＳ識別子（pps_pic_parameter_set_id）や、ピクチャの復号に用いられる量子化幅の基準値（pic_init_qp_minus26）や重み付き予測の適用を示すフラグ（weighted_pred_flag）、スケーリングリスト（量子化マトリックス）が含まれる。なお、ＰＰＳは複数存在してもよい。その場合、対象シーケンス内の各ピクチャから複数のＰＰＳの何れかを選択する。あるレイヤに属する特定ピクチャの復号に使用されるＰＰＳはアクティブＰＰＳと呼ばれる。また、基本レイヤと拡張レイヤに適用されるＰＰＳを区別して、基本レイヤに対するＰＰＳをアクティブＰＰＳと呼び、拡張レイヤに対するＰＰＳをアクティブレイヤＰＰＳと呼ぶこともある。以下では、特に断りがなければ、ＰＰＳは、あるレイヤに属する対象ピクチャに対するアクティブＰＰＳを意味する。なお、レイヤID＝nuhLayerIdAであるレイヤに属するピクチャの復号で利用される、レイヤID＝nuhLayerIdAであるＰＰＳは、nuhLayerIdAよりも大きいレイヤIDであるレイヤ（nuhLayerIdB、nuhLayerIdB>nuhLayerIdA）に属するピクチャの復号に利用されてもよい。
【００９６】
なお、アクティブＳＰＳ、及びアクティブＰＰＳは、レイヤ毎に異なるＳＰＳやＰＰＳに設定してもよい。すなわち、レイヤ毎に異なるＳＰＳやＰＰＳを参照して復号処理を実行することができる。
【００９７】
（ピクチャレイヤ）
ピクチャレイヤでは、処理対象のピクチャＰＩＣＴ（以下、対象ピクチャとも称する）を復号するために階層動画像復号装置１が参照するデータの集合が規定されている。ピクチャＰＩＣＴは、図９の（ｂ）に示すように、スライスS0〜SNS-1を含んでいる（NSはピクチャＰＩＣＴに含まれるスライスの総数）。
【００９８】
なお、以下、スライスS0〜SNS-1のそれぞれを区別する必要が無い場合、符号の添字を省略して記述することがある。また、以下に説明する階層符号化データＤＡＴＡに含まれるデータであって、添字を付している他のデータについても同様である。
【００９９】
（スライスレイヤ）
スライスレイヤでは、処理対象のスライスＳ（対象スライスとも称する）を復号するために階層動画像復号装置１が参照するデータの集合が規定されている。スライスＳは、図９の（ｃ）に示すように、スライスヘッダＳＨ、および、スライスデータSDATAを含んでいる。
【０１００】
スライスヘッダＳＨには、対象スライスの復号方法を決定するために階層動画像復号装置１が参照する符号化パラメータ群が含まれる。例えば、対象スライスを復号するために参照するＰＰＳ（アクティブＰＰＳ）を指定するアクティブＰＰＳ識別子（slice_pic_parameter_set_id）が含まれる。なお、アクティブＰＰＳが参照するＳＰＳは、アクティブＰＰＳに含まれるアクティブＳＰＳ識別子（pps_seq_parameter_set_id）により指定される。さらに、アクティブＳＰＳが参照するＶＰＳ（アクティブＶＰＳ）は、アクティブＳＰＳに含まれるアクティブＶＰＳ識別子（sps_video_parameter_set_id）により指定される。
【０１０１】
図１０を例に、本実施例におけるレイヤ間のパラメータセットの共有（共有パラメータセット）を説明する。図１０は、ヘッダ情報とアクセスユニット（ＡＵ）を構成する符号化データの参照関係を表わす。図１０の例では、各ＡＵ内のレイヤL#K(K=Nmin…Nmax)に属するピクチャを構成する各スライスは、参照すべきＰＰＳを指定するアクティブＰＰＳ識別子をスライスヘッダ内に含んでおり、各スライスの復号開始時に該識別子によって復号に用いるＰＰＳ（アクティブＰＰＳ）を指定する（アクティベートするともいう）。なお、同一ピクチャ内では、各スライスから参照される各ＰＰＳ、ＳＰＳ、ＶＰＳの符号化パラメータは同一でなければならない。アクティベートされたＰＰＳの中には、復号処理上参照すべきＳＰＳ（アクティブＳＰＳ）を指定するアクティブＳＰＳ識別子が含まれており、該識別子によって復号に用いるＳＰＳ（アクティブＳＰＳ）を指定する（アクティベートする）。同様に、アクティベートされたＳＰＳの中には、各レイヤに属するシーケンスの復号処理上参照すべきＶＰＳ（アクティブＶＰＳ）を指定するアクティブＶＰＳ識別子が含まれており、該識別子によって復号に用いるＶＰＳ（アクティブＶＰＳ）を指定する（アクティベートする）。
【０１０２】
以上の手順により、各レイヤの符号化データの復号処理を実行するにあたって必要なパラメータセットが確定する。図１０の例では、各パラメータセット（ＶＰＳ、ＳＰＳ、ＰＰＳ）のレイヤ識別子は、あるレイヤセットに属する最低次のレイヤID＝L#Nminであるとする。レイヤID=L#Nminであるスライスは、同一レイヤIDを有するパラメータセットを参照している。すなわち、図１０の例では、AU#iのレイヤID=L#Nminであるスライスは、レイヤID=L#Nminであって、PPS識別子＝０であるＰＰＳを参照し、同ＰＰＳは、レイヤID=L#Nminであって、SPS識別子＝０であるＳＰＳを参照し、同ＳＰＳは、レイヤID=L#Nminであって、VPS識別子＝０であるＶＰＳを参照している。一方、AU#iのレイヤID=L#K(K>Nmin)（図１０では、L#Nmax）であるスライスは、同一レイヤID(=L#K)を有するＰＰＳ、ＳＰＳを参照することも可能であるが、L#Kより下位レイヤL#M(K>M)（図１０では、M=Nmin、L#Nmin）のＰＰＳ、ＳＰＳも参照することが可能である。すなわち、レイヤ間で、共通のパラメータセットを参照することにより、上位レイヤにおいて、下位レイヤと同一の符号化パラメータを有するパラメータセットを重複して送る必要がなくなるため、重複するパラメータセットに関する符号量の低減、及び復号／符号化に係る処理量を低減することが可能である。
【０１０３】
なお、各ヘッダ情報（スライスヘッダ、ＰＰＳ、ＳＰＳ）が参照する上位のパラメータセットの識別子は、図１０の例に限定されない。ＶＰＳであれば、VPS識別子k=0…15の中から選択されてよいし、ＳＰＳであれば、SPS識別子m=0…15の中から選択されてよいし、ＰＰＳであれば、PPS識別子n=0…63の中から選択されてよい。
【０１０４】
また、スライスタイプを指定するスライスタイプ指定情報（slice_type）は、スライスヘッダＳＨに含まれる符号化パラメータの一例である。
【０１０５】
スライスタイプ指定情報により指定可能なスライスタイプとしては、（１）符号化の際にイントラ予測のみを用いるＩスライス、（２）符号化の際に単方向予測、または、イントラ予測を用いるＰスライス、（３）符号化の際に単方向予測、双方向予測、または、イントラ予測を用いるＢスライスなどが挙げられる。
【０１０６】
（スライスデータレイヤ）
スライスデータレイヤでは、処理対象のスライスデータSDATAを復号するために階層動画像復号装置１が参照するデータの集合が規定されている。スライスデータSDATAは、図９の（ｄ）に示すように、符号化ツリーブロック（CTB:Coded Tree Block）を含んでいる。ＣＴＢは、スライスを構成する固定サイズ（例えば６４×６４）のブロックであり、最大符号化単位（ＬＣＵ:Largest Cording Unit）と呼ぶこともある。
【０１０７】
（符号化ツリーレイヤ）
符号化ツリーレイヤは、図９の（ｅ）に示すように、処理対象の符号化ツリーブロックを復号するために階層動画像復号装置１が参照するデータの集合が規定されている。符号化ツリーユニットは、再帰的な４分木分割により分割される。再帰的な４分木分割により得られる木構造のノードのことを符号化ツリー（coding tree）と称する。４分木の中間ノードは、符号化ツリーユニット（CTU:Coded Tree Unit）であり、符号化ツリーブロック自身も最上位のCTUとして規定される。CTUは、分割フラグ（split_flag）を含み、split_flagが１の場合には、４つの符号化ツリーユニットCTUに分割される。split_flagが０の場合には、符号化ツリーユニットCTUは４つの符号化ユニット(CU：Coded Unit)に分割される。符号化ユニットCUは符号化ツリーレイヤの末端ノードであり、このレイヤではこれ以上分割されない。符号化ユニットCUは、符号化処理の基本的な単位となる。
【０１０８】
また、符号化ツリーユニットＣＴＵのサイズ、および、各符号化ユニットのとり得るサイズは、シーケンスパラメータセットＳＰＳに含まれる、最小符号化ノードのサイズ指定情報、および最大符号化ノードと最小符号化ノードの階層深度の差分に依存する。例えば、最小符号化ノードのサイズが８×８画素であって、最大符号化ノードと最小符号化ノードの階層深度の差分が３である場合、符号化ツリーユニットＣＴＵのサイズが６４×６４画素であって、符号化ノードのサイズは、４種類のサイズ、すなわち、６４×６４画素、３２×３２画素、１６×１６画素、および、８×８画素の何れかをとり得る。
【０１０９】
なお、符号化ツリーユニットより復号される対象ピクチャ上の部分領域を符号化ツリーブロック（CTB: Coding Tree block）と呼ぶ。対象ピクチャの輝度成分である輝度ピクチャに対応するCTBは輝度CTBと呼ばれる。換言すると、CTUから復号される輝度ピクチャ上の部分領域は輝度CTBと呼ばれる。一方、CTUから復号される色差ピクチャに対応する部分領域は色差CTBと呼ばれる。一般に、画像の色フォーマットが決まっていれば、輝度CTBサイズと色差CTBサイズは相互に変換可能である。例えば、色フォーマットが4:2:2の場合は、色差CTBサイズは輝度CTBサイズの各半分である。以下の記載では、特に断りがなければ、CTBサイズとは輝度CTBサイズを意味する。また、CTUサイズは、CTUに対応する輝度CTBサイズである。
【０１１０】
（符号化ユニットレイヤ）
符号化ユニットレイヤは、図９の（ｆ）に示すように、処理対象の符号化ユニットを復号するために階層動画像復号装置１が参照するデータの集合が規定されている。具体的には、符号化ユニットＣＵ（coding unit）は、ＣＵヘッダＣＵＨ、予測ツリー、変換ツリーから構成される。ＣＵヘッダＣＵＨでは、符号化ユニットが、イントラ予測を用いるユニットであるか、インター予測を用いるユニットであるかなどが規定される。符号化ユニットは、予測ツリー（prediction tree；ＰＴ）および変換ツリー（transform tree；ＴＴ）のルートとなる。なお、CUに対応するピクチャ上の領域は符号化ブロック（CB:Coding Block）と呼ばれる。輝度ピクチャ上のCBを輝度CB、色差ピクチャ上のCBを色差CBと呼ぶ。CUサイズ（符号化ノードのサイズ）とは、輝度CBサイズを意味する。
【０１１１】
（変換ツリー）
変換ツリー（以下、ＴＴと略称する）は、符号化ユニットＣＵが１または複数の変換ブロックに分割され、各変換ブロックの位置とサイズとが規定される。別の表現でいえば、変換ブロックは、符号化ユニットＣＵを構成する１または複数の重複しない領域のことである。また、変換ツリーは、上述の分割より得られた１または複数の変換ブロックを含む。なお、ＣＵに含まれる変換ツリーに関する情報、及び変換ツリーに包含される情報を、ＴＴ情報と呼ぶ。
【０１１２】
変換ツリーにおける分割には、符号化ユニットと同一のサイズの領域を変換ブロックとして割り付けるものと、上述したツリーブロックの分割と同様、再帰的な４分木分割によるものがある。変換処理は、この変換ブロックごとに行われる。以下、変換の単位である変換ブロックのことを、変換単位（transform unit；ＴＵ）とも称する。
【０１１３】
変換ツリーＴＴには、対象ＣＵの各変換ブロックへの分割パターンを指定するＴＴ分割情報ＳＰ＿ＴＴ、及び量子化予測残差ＱＤ1〜ＱＤNT（ＮＴは、対象ＣＵに含まれる変換単位ＴＵの総数）を含んでいる。
【０１１４】
ＴＴ分割情報ＳＰ＿ＴＴは、具体的には、対象ＣＵに含まれる各変換ブロックの形状、および、対象ＣＵ内での位置を決定するための情報である。例えば、ＴＴ分割情報ＳＰ＿ＴＴは、対象ノードの分割を行うのか否かを示す情報（split_transform_unit_flag）と、その分割の深度を示す情報（transfoDepth）とから実現できる。例えば、ＣＵサイズが、６４×６４の場合、分割により得られる各変換ブロックは、３２×３２画素から４×４画素までのサイズをとり得る。
【０１１５】
各量子化予測残差ＱＤは、階層動画像符号化装置２が以下の処理１〜３を、処理対象の変換ブロックである対象ブロックに施すことによって生成した符号化データである。
【０１１６】
処理１：符号化対象画像から予測画像を減算した予測残差を周波数変換（例えば、ＤＣＴ変換（Discrete Cosine Transform）およびＤＳＴ変換（Discrete Sine Transform）等）する；
処理２：処理１にて得られた変換係数を量子化する；
処理３：処理２にて量子化された変換係数を可変長符号化する；
なお、上述した量子化パラメータｑｐは、階層動画像符号化装置２が変換係数を量子化する際に用いた量子化ステップＱＰの大きさを表わす（ＱＰ＝２qp/6）。
【０１１７】
（予測ツリー）
予測ツリー（以下、ＰＴと略称する）は、符号化ユニットＣＵが１または複数の予測ブロックに分割され、各予測ブロックの位置とサイズとが規定される。別の表現でいえば、予測ブロックは、符号化ユニットＣＵを構成する１または複数の重複しない領域である。また、予測ツリーは、上述の分割により得られた１または複数の予測ブロックを含む。なお、ＣＵに含まれる予測ツリーに関する情報、及び予測ツリーに包含される情報を、ＰＴ情報と呼ぶ。
【０１１８】
予測処理は、この予測ブロックごとに行われる。以下、予測の単位である予測ブロックのことを、予測単位（prediction unit；ＰＵ）とも称する。
【０１１９】
予測ツリーにおける分割の種類は、大まかにいえば、イントラ予測の場合と、インター予測の場合との２つがある。イントラ予測とは、同一ピクチャ内の予測であり、インター予測とは、互いに異なるピクチャ間（例えば、表示時刻間、レイヤ画像間）で行われる予測処理を指す。すなわち、インター予測では、対象レイヤと同一レイヤの参照ピクチャ（レイヤ内参照ピクチャ）または、対象レイヤの参照レイヤ上の参照ピクチャ（レイヤ間参照ピクチャ）のいずれを参照ピクチャとして、参照ピクチャ上の復号画像から予測画像を生成する。
【０１２０】
イントラ予測の場合、分割方法は、２Ｎ×２Ｎ（符号化ユニットと同一サイズ）と、Ｎ×Ｎとがある。
【０１２１】
また、インター予測の場合、分割方法は、符号化データのpart_modeにより符号化され、２Ｎ×２Ｎ（符号化ユニットと同一サイズ）、２Ｎ×Ｎ、２Ｎ×ｎＵ、２Ｎ×ｎＤ、Ｎ×２Ｎ、ｎＬ×２Ｎ、ｎＲ×２Ｎ、および、Ｎ×Ｎなどがある。なお、Ｎ＝２ｍ（ｍは１以上の任意の整数）を意味する。また、分割数は１、２、４のいずれかであるため、ＣＵに含まれるＰＵは１個から４個である。これらのＰＵを順にPU0、PU1、PU2、PU3と表現する。
【０１２２】
（予測パラメータ）
予測ユニットの予測画像は、予測ユニットに付随する予測パラメータによって導出される。予測パラメータには、イントラ予測の予測パラメータ、もしくはインター予測の予測パラメータがある。
【０１２３】
イントラ予測パラメータは、各イントラＰＵについてのイントラ予測（予測モード）を復元するためのパラメータである。予測モードを復元するためのパラメータには、ＭＰＭ（Most Probable Mode、以下同様）に関するフラグであるmpm_flag、ＭＰＭを選択するためのインデクスであるmpm_idx、及び、ＭＰＭ以外の予測モードを指定するためのインデクスであるrem_idxが含まれる。ここで、ＭＰＭとは、対象パーティションで選択される可能性が高い推定予測モードである。例えば、対象パーティションの周辺のパーティションに割り付けられた予測モードに基づいて推定された推定予測モードや、一般的に発生確率の高いＤＣモードやＰｌａｎａｒモードがＭＰＭに含まれ得る。また、以下において、単に“予測モード”と表記する場合、特にことわりのない限り、輝度予測モードのことを指すものとする。色差予測モードについては、“色差予測モード”と表記し、輝度予測モードと区別する。また、予測モードを復元するパラメータには、色差予測モードを指定するためのパラメータであるchroma_modeが含まれる。
【０１２４】
インター予測パラメータは、予測リスト利用フラグpredFlagL0、predFlagL1と、参照ピクチャインデックスrefIdxL0、refIdxL1と、ベクトルmvL0、mvL1から構成される。予測リスト利用フラグpredFlagL0、predFlagL1は、各々L0参照リスト、L1参照リストと呼ばれる参照ピクチャリストが用いられるか否かを示すフラグであり、値が１の場合に対応する参照ピクチャリストが用いられる。２つの参照ピクチャリストが用いられる場合、つまり、predFlagL0=1, predFlagL1=1の場合が、双予測に対応し、１つの参照ピクチャリストを用いる場合、すなわち(predFlagL0, predFlagL1) = (1, 0)もしくは(predFlagL0, predFlagL1) = (0, 1)の場合が単予測に対応する。
【０１２５】
符号化データに含まれるインター予測パラメータを導出するためのシンタックス要素には、例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測識別子inter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXがある。なお、予測リスト利用フラグの各値は、インター予測識別子に基づいて、次のように導出される。
【０１２６】
predFlagL0  ＝インター予測識別子 & 1
predFlagL1  ＝インター予測識別子 >> 1
ここで、“&”は論理積、“>>”は右シフトである。
【０１２７】
（参照ピクチャリストの一例）
次に、参照ピクチャリストの一例について説明する。参照ピクチャリストとは、復号ピクチャバッファに記憶された参照ピクチャからなる列である。図１１(a)は、参照ピクチャリストの一例を示す概念図である。参照ピクチャリストRPL0において、左右に一列に配列された５個の長方形は、それぞれ参照ピクチャを示す。左端から右へ順に示されている符号Ｐ１、Ｐ２、Ｑ０、Ｐ３、Ｐ４は、それぞれの参照ピクチャを示す符号である。同様に、参照ピクチャリストRPL1において、左端から右へ順に示されている符号Ｐ４、Ｐ３、Ｒ０、Ｐ２、Ｐ１は、それぞれの参照ピクチャを示す符号である。Ｐ１等のＰとは、対象レイヤＰを示し、そしてＱ０のＱとは、対象レイヤＰとは異なるレイヤＱを示す。同様に、Ｒ０のＲとは、対象レイヤＰ、及びレイヤＱとは異なるレイヤＲを示す。Ｐ、Ｑ及びＲの添字は、ピクチャ順序番号ＰＯＣを示す。refIdxL0の真下の下向きの矢印は、参照ピクチャインデックスrefIdxL0が、復号ピクチャバッファにおいて、参照ピクチャリストRPL0より参照ピクチャＱ０を参照するインデックスであることを示す。同様に、refIdxL1の真下の下向きの矢印は、参照ピクチャインデックスrefIdxL1が、復号ピクチャバッファにおいて、参照ピクチャリストRPL1より参照ピクチャＰ３を参照するインデックスであることを示す。
【０１２８】
（参照ピクチャの例）
次に、ベクトルを導出する際に用いる参照ピクチャの例について説明する。図１１(b)は、参照ピクチャの例を示す概念図である。図１１(b)において、横軸は表示時刻を示し、縦軸はレイヤ数を示す。図示されている、縦３行、横３列（計９個）の長方形は、それぞれピクチャを示す。９個の長方形のうち、下行の左から２列目の長方形は復号対象のピクチャ（対象ピクチャ）を示し、残りの８個の長方形がそれぞれ参照ピクチャを示す。対象ピクチャから下向きの矢印で示される参照ピクチャＱ２、及びＲ２は対象ピクチャと同じ表示時刻であってレイヤが異なるピクチャである。対象ピクチャcurPic(P2)を基準とするレイヤ間予測においては、参照ピクチャＱ２、またはＲ２が用いられる。対象ピクチャから左向きの矢印で示される参照ピクチャＰ１は、対象ピクチャと同じレイヤであって、過去のピクチャである。対象ピクチャから右向きの矢印で示される参照ピクチャＰ３は、対象ピクチャと同じレイヤであって、未来のピクチャである。対象ピクチャを基準とする動き予測においては、参照ピクチャＰ１又はＰ３が用いられる。
【０１２９】
（マージ予測とAMVP予測）
インター予測パラメータの復号（符号化）方法には、マージ予測（merge）モードとAMVP（Adaptive Motion Vector Prediction、適応動きベクトル予測）モードがある、マージフラグmerge_flagは、これらを識別するためのフラグである。マージ予測モードでも、AMVPモードでも、既に処理済みのブロックの予測パラメータを用いて、対象ＰＵの予測パラメータが導出される。マージ予測モードは、予測リスト利用フラグpredFlagLX（インター予測識別子inter_pred_idc）、参照ピクチャインデックスrefIdxLX、ベクトルmvLXを符号化データに含めずに、既に導出した予測パラメータをそのまま用いるモードであり、AMVPモードは、インター予測識別子inter_pred_idc、参照ピクチャインデックスrefIdxLX、ベクトルmvLXを符号化データに含めるモードである。なおベクトルmvLXは、予測ベクトルを示す予測ベクトルインデックスmvp_LX_idxと差分ベクトル(mvdLX)として符号化される。
【０１３０】
インター予測識別子inter_pred_idcは、参照ピクチャの種類および数を示すデータであり、Pred_L0、Pred_L1、Pred_Biの何れかの値をとる。Pred_L0、Pred_L1は、各々L0参照リスト、L1参照リストと呼ばれる参照ピクチャリストに記憶された参照ピクチャが用いられることを示し、共に１枚の参照ピクチャを用いること（単予測）を示す。L0参照リスト、L1参照リストを用いた予測を各々L0予測、L1予測と呼ぶ。Pred_Biは２枚の参照ピクチャを用いること（双予測）を示し、L0参照リストとL1参照リストに記憶された参照ピクチャの２つを用いることを示す。予測ベクトルインデックスmvp_LX_idxは予測ベクトルを示すインデックスであり、参照ピクチャインデックスrefIdxLXは、参照ピクチャリストに記憶された参照ピクチャを示すインデックスである。なお、LXは、L0予測とL1予測を区別しない場合に用いられる記述方法であり、LXをL0、L1に置き換えることでL0参照リストに対するパラメータとL1参照リストに対するパラメータを区別するする。例えば、refIdxL0はL0予測に用いる参照ピクチャインデックス、refIdxL1はL1予測に用いる参照ピクチャインデックス、refIdx（refIdxLX）は、refIdxL0とrefIdxL1を区別しない場合に用いられる表記である。
【０１３１】
マージインデックスmerge_idxは、処理が完了したブロックから導出される予測パラメータ候補（マージ候補）のうち、いずれかの予測パラメータを復号対象ブロックの予測パラメータとして用いるかを示すインデックスである。
【０１３２】
（動きベクトルと変位ベクトル）
ベクトルmvLXには、動きベクトルと変位ベクトル（disparity vector、視差ベクトル）がある。動きベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、異なる表示時刻（例えば、隣接する離散時刻）における同一のレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。変位ベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、同一の表示時刻における異なるレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。異なるレイヤのピクチャとしては、同一解像度でかつ品質が異なるピクチャである場合、異なる視点のピクチャである場合、もしくは、異なる解像度のピクチャである場合などがある。特に、異なる視点のピクチャに対応する変位ベクトルを視差ベクトルと呼ぶ。以下の説明では、動きベクトルと変位ベクトルを区別しない場合には、単にベクトルmvLXと呼ぶ。ベクトルmvLXに関する予測ベクトル、差分ベクトルを、それぞれ予測ベクトルmvpLX、差分ベクトルmvdLXと呼ぶ。ベクトルmvLXおよび差分ベクトルmvdLXが、動きベクトルであるか、変位ベクトルであるかは、ベクトルに付随する参照ピクチャインデックスrefIdxLXを用いて行われる。
【０１３３】
なお、以上に説明したパラメータは、単独で符号化されていてもよいし、複数のパラメータが複合的に符号化されていてもよい。複数のパラメータが複合的に符号化される場合は、そのパラメータの値の組み合わせに対してインデックスが割り当てられ、割り当てられた当該インデックスが符号化される。また、パラメータが、別のパラメータや、復号済みの情報から導出可能であれば、当該パラメータの符号化を省略できる。
【０１３４】
〔階層動画像復号装置〕
以下では、本実施形態に係る階層動画像復号装置１の構成について、図１９〜図２１を参照して説明する。
【０１３５】
（階層動画像復号装置の構成）
本実施形態に係る階層動画像復号装置１の構成について説明する。図１９は、本実施形態に係る階層動画復号装置１の構成を示す概略図である。階層動画像復号装置１は、外部より供給される階層符号化データＤＡＴＡに含まれる復号対象とする対象レイヤセットLayerSetTargetのレイヤＩＤリストLayerIdListTarget、及び復号対象とするレイヤに付随する最高次のサブレイヤを指定する対象最高次テンポラル識別子HighestTidTargetに基づいて、階層動画像符号化装置２から供給される階層符号化データＤＡＴＡを復号して、対象レイヤセットに含まれる各レイヤの復号画像ＰＯＵＴ#Ｔを生成する。すなわち、階層動画像復号装置１は、対象レイヤセットに含まれる、最低次のレイヤＩＤから最高次のレイヤＩＤまで、昇順で、各レイヤのピクチャの符号化データを復号し、その復号画像（復号ピクチャ）を生成する。言い換えれば、対象レイヤセットのレイヤＩＤリストLayerIdListTarget[0]…LayerIdListTarget[N-1](Nは対象レイヤセットに含まれるレイヤ数)の順で、各レイヤのピクチャの符号化データを復号する。
【０１３６】
図１９に示すように階層動画像復号装置１は、ＮＡＬ逆多重化部１１、及び対象レイヤセットピクチャ復号部１０を含んで構成される。さらに、対象レイヤセットピクチャ復号部１０は、パラメータセット復号部１２、パラメータセット管理部１３、ピクチャ復号部１４、および復号ピクチャ管理部１５を含んで構成される。また、ＮＡＬ逆多重化部１１は、さらにビットストリーム抽出部１７を備える。
【０１３７】
階層符号化データＤＡＴＡには、VCLにより生成されたNALの他に、パラメータセット（VPS、SPS、PPS）やSEI等を含むNALが含まれる。それらのNALはVCL NALに対して非VCL NAL(non-VCL)と呼ばれる。
【０１３８】
ＮＡＬ逆多重化部１１の備えるビットストリーム抽出部１７は、概略的には、外部より供給される対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTarget、及び対象最高次テンポラル識別子HighestTidTargetに基づいて、ビットストリーム抽出処理を行い、階層符号化データＤＡＴＡから、対象最高次テンポラル識別子HighestTidTarget、及び対象レイヤセットLayerSetTargetのレイヤＩＤリストLayerIdListTargetによって定まる集合（ターゲットセットTargetSetと呼ぶ）に含まれるＮＡＬユニットから構成される対象レイヤセット符号化データＤＡＴＡ#Ｔ（BitstreamToDecode）を抽出する。なお、ビットストリーム抽出部１７における本発明との関連性の高い処理の詳細について後述する。
【０１３９】
続いて、ＮＡＬ逆多重化部１１は、ビットストリーム抽出部１７より抽出された対象レイヤセット符号化データＤＡＴＡ#Ｔ（BitstreamToDecode）を逆多重化して、ＮＡＬユニットに含まれるＮＡＬユニットタイプ、レイヤ識別子（レイヤＩＤ）、テンポラル識別子（テンポラルＩＤ）を参照し、対象レイヤセットに含まれるＮＡＬユニットを、対象レイヤセットピクチャ復号部１０へ供給する。
【０１４０】
対象レイヤセットピクチャ復号部１０は、供給された対象レイヤセット符号化データＤＡＴＡ#Ｔに含まれるNALのうち、非VCL NALをパラメータセット復号部１２に、VCL NALをピクチャ復号部１４にそれぞれ供給する。すなわち、対象レイヤセットピクチャ復号部１０は、供給されたＮＡＬユニットのヘッダ（ＮＡＬユニットヘッダ）を復号し、復号したＮＡＬユニットヘッダに含まれるＮＡＬユニットタイプ、レイヤ識別子、及びテンポラル識別子に基づいて、non-VCLの符号化データをパラメータセット復号部１２へ、VCLの符号化データをピクチャ復号部１４へ、復号したＮＡＬユニットタイプ、レイヤ識別子、及びテンポラル識別子と合わせて供給する。
【０１４１】
パラメータセット復号部１２は、入力される非VCL NALからパラメータセット、すなわち、ＶＰＳ、ＳＰＳ、および、ＰＰＳを復号してパラメータセット管理部１３に供給する。なお、パラメータセット復号部１２における本発明との関連性の高い処理の詳細について後述する。
【０１４２】
パラメータセット管理部１３は、復号されたパラメータセットを各パラメータセットの識別子毎に、パラメータセットの符号化パラメータを保持する。具体的には、ＶＰＳであれば、ＶＰＳ識別子(video_parameter_set_id)毎に、ＶＰＳの符号化パラメータを保持する。ＳＰＳであれば、ＳＰＳ識別子(sps_seq_parameter_set_id)毎に、ＳＰＳの符号化パラメータを保持する。ＰＰＳであれば、ＰＰＳ識別子(pps_pic_parameter_set_id)毎に、ＰＰＳの符号化パラメータを保持する。
【０１４３】
また、パラメータセット管理部１３は、後述のピクチャ復号部１４が、ピクチャを復号するために参照するパラメータセット（アクティブパラメータセット）の符号化パラメータを、ピクチャ復号部１４へ供給する。具体的には、まず、ピクチャ復号部１４で復号されたスライスヘッダＳＨに含まれるアクティブＰＰＳ識別子(slice_pic_parameter_set_id)により、アクティブＰＰＳが指定される。次に、指定されたアクティブＰＰＳに含まれるアクティブＳＰＳ識別子（pps_seq_parameter_set_id）により、アクティブＳＰＳが指定される。最後に、アクティブＳＰＳに含まれるアクティブＶＰＳ識別子（sps_video_parameter_set_id）により、アクティブＶＰＳが指定される。その後、指定されたアクティブＰＰＳ、アクティブＳＰＳ、アクティブＶＰＳの符号化パラメータを、ピクチャ復号部１４へ供給する。なお、ピクチャを復号するために参照されるパラメータセットを指定することを、「パラメータセットをアクティベートする」とも呼ぶ。例えば、アクティブＰＰＳ、アクティブＳＰＳ、アクティブＶＰＳを指定することを、それぞれ「ＰＰＳをアクティベートする」、「ＳＰＳをアクティベートする」、「ＶＰＳをアクティベートする」と呼ぶ。
【０１４４】
ピクチャ復号部１４は、入力されるVCL NAL、アクティブパラメータセット（アクティブＰＰＳ、アクティブＳＰＳ、アクティブＶＰＳ），及び参照ピクチャに基づいて復号ピクチャを生成して復号ピクチャ管理部１５へ供給する。供給された復号ピクチャは、復号ピクチャ管理部１５内のバッファに記録される。なお、ピクチャ復号部１４の詳細な説明は後述する。
【０１４５】
復号ピクチャ管理部１５は、入力される復号ピクチャを内部の復号ピクチャバッファ（DPB: Decoded Picture Buffer）に記録するとともに、参照ピクチャリスト生成や出力ピクチャ決定を行う。また、復号ピクチャ管理部１５は、DPBに記録されている復号ピクチャを、所定のタイミングで出力ピクチャＰＯＵＴ#Ｔとして外部に出力する。
【０１４６】
（ビットストリーム抽出部１７）
ビットストリーム抽出部１７は、外部より供給される対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTarget、及び対象最高次テンポラル識別子HighestTidTargetに基づいて、ビットストリーム抽出処理を行い、入力される階層符号化データＤＡＴＡから、対象最高次テンポラル識別子HighestTidTarget、及び対象レイヤセットLayerSetTargetのレイヤＩＤリストLayerIdListTargetによって定まる集合（ターゲットセットTargetSetと呼ぶ）に含まれないNALユニットを除去（破棄）し、ターゲットセットTargetSetに含まれるＮＡＬユニットから構成される対象レイヤセット符号化データＤＡＴＡ#Ｔ(BitstreamToDecode)を抽出し、出力する。
【０１４７】
以下、図２７を参照して、本実施例に係るビットストリーム抽出部１７の概略的な動作について説明する。図２７は、ビットストリーム抽出部１７におけるアクセスユニット単位のビットストリーム抽出処理を示すフロー図である。
【０１４８】
（ＳＧ１０１）ビットストリーム抽出部１７は、図６（ｂ）に示すシンタックス表に従って、供給された対象ＮＡＬユニットのＮＡＬユニットヘッダを復号する。すなわち、ＮＡＬユニットタイプ(nal_unit_type)、レイヤ識別子(nuh_layer_id)、及びテンポラル識別子(nuh_temporal_id_plus1)を復号する。なお、対象ＮＡＬユニットのレイヤ識別子nuhLayerIdは、“nuh_layer_id”に設定され、対象ＮＡＬユニットのテンポラル識別子temporalIdは、“nuh_temporal_id_plus1 - 1”に設定される。
【０１４９】
（ＳＧ１０２）対象ＮＡＬユニットのＮＡＬユニットタイプ(nal_unit_type)が、パラメータセットであるか否かを、図７に示す“nal_unit_type”と“Name of nal_unit_type”に基づいて判定する。ここでは、コンフォーマンス条件ＣＸ１を満たすため、ＮＡＬユニットタイプが、“VPS_NUT”(nal_unit_type==32)であるかを判定する。すなわち、ＮＡＬユニットタイプが、ビデオパラメータセットの場合（SG102でYES）、ステップSG103へ遷移する。それ以外の場合（SG102でNo）、ステップSG105へ遷移する。
【０１５０】
（ＳＧ１０３）対象ＮＡＬユニットのレイヤ識別子がターゲットセットに含まれるか判定する。より具体的には、対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTargetに、対象ＮＡＬユニットのレイヤ識別子と同一の値があるか判定する。対象ＮＡＬユニットのレイヤ識別子が、LayerIdListTargetにある場合(SG103でYes)、ステップSG105へ遷移する。それ以外の場合（SG103でNo）、すなわち、対象ＮＡＬユニットのレイヤ識別子が、LayerIdListTargetにない場合、ステップSG104へ遷移する。
【０１５１】
（ＳＧ１０４）対象ＮＡＬユニットのレイヤ識別子を、LayerIdListTarget内で最低次のレイヤ識別子へ更新する。すなわち、“nuh_layer_id = LayerIdListTarget[0]”へ更新する。
【０１５２】
（ＳＧ１０５）対象ＮＡＬユニットのレイヤ識別子、テンポラル識別子がターゲットセットTargetSetに含まれるか否かを、対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTarget、及び対象最高次テンポラル識別子に基づいて判定する。より具体的には、以下の(1)〜（２）の条件を満たすか判定し、少なくとも何れかの条件を満たす（真である）場合(SG105でYes)、ステップSG106へ遷移する。それ以外の場合(SG105でNo)、ステップSG107へ遷移する。
【０１５３】
（１）「対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTargetに、対象ＮＡＬユニットのレイヤ識別子と同一の値がある」の場合、真と判定し、それ以外の場合（対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTargetに、対象ＮＡＬユニットのレイヤ識別子と同一の値がない）、偽と判定する。
【０１５４】
（２）「対象ＮＡＬユニットのテンポラル識別子が対象最高次テンポラル識別子HighestTidTarget以下である」場合、真と判定し、それ以外の場合（対象ＮＡＬユニットのテンポラル識別子が対象最高次テンポラル識別子HighestTidTargetより大きい）、偽と判定する。
【０１５５】
（ＳＧ１０６）対象ＮＡＬユニットを破棄する。すなわち、対象ＮＡＬユニットは、ターゲットセットTargetSetに含まれないため、ビットストリーム抽出部１７は、入力された階層符号化データＤＡＴＡから、対象ＮＡＬユニットを除去する。
【０１５６】
（ＳＧ１０７）同一アクセスユニット内に、未処理のＮＡＬユニットはあるか判定する。未処理のＮＡＬユニットがある場合（SG107でYes）、対象アクセスユニットを構成するＮＡＬユニット単位のビットストリーム抽出を継続するため、ステップSG101へ遷移する。それ以外の場合（SG107でNo）、ステップSG10Aへ遷移する。
【０１５７】
（ＳＧ１０Ａ）入力された階層符号化データＤＡＴＡに、対象アクセスユニットの次のアクセスユニットがあるか判定する。次のアクセスユニットがある場合(SG10AでYes)、次のアクセスユニットの処理を継続するため、ステップSG101へ遷移する。次ののアクセスユニットがない場合（SG10AでNo）、ビットストリーム抽出処理を終了する。
【０１５８】
以上、実施例１に係るビットストリーム抽出部１７の動作について説明したが、上記ステップに限定されず、実施可能な範囲で、ステップを変更しても構わない。
【０１５９】
以上説明したビットストリーム抽出部１７によれば、外部より供給される対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTarget、及び対象最高次テンポラル識別子HighestTidTargetに基づいて、ビットストリーム抽出処理を行い、入力される階層符号化データＤＡＴＡから、対象最高次テンポラル識別子HighestTidTarget、及び対象レイヤセットLayerSetTargetのレイヤＩＤリストLayerIdListTargetによって定まる集合（ターゲットセットTargetSetと呼ぶ）に含まれないNALユニットを除去（破棄）し、ターゲットセットTargetSetに含まれるＮＡＬユニットから構成される対象レイヤセット符号化データＤＡＴＡ#Ｔ(BitstreamToDecode)を抽出し、出力する。さらに、上記ビットストリーム抽出部１７は、ビデオパラメータセットのレイヤ識別子が前記ターゲットセットTargetSetに含まれない場合には、前記ビデオパラメータセットのレイヤ識別子を、ターゲットセットTargetSet内で、最低次のレイヤ識別子へ更新する（書き換える）ことを特徴とする。
【０１６０】
なお、上記ビットストリーム抽出部１７の動作は、「入力される階層符号化データＤＡＴＡを構成するＡＵには、ＡＵ内で最低次のレイヤ識別子を有するＶＰＳが最大で１つ含まれること」を前提にしているが、これに限定されない。例えば、ＡＵ内で最低次のレイヤ識別子以外のレイヤ識別子を有するＶＰＳが、ＡＵ内に含まれていてもよい。この場合、ビットストリーム抽出部１７は、ステップSG104において、レイヤ識別子の更新対象とするＶＰＳは、ターゲットセットTargetSetに含まれないレイヤ識別子で、最低次のレイヤ識別子とすればよい。通常は、レイヤ識別子“nuhLayerId=0”のＶＰＳが最低次のレイヤ識別子を有するＶＰＳとなるため、該ＶＰＳを更新対象とし、それ以外のターゲットセットTargetSetに含まれないＶＰＳは破棄する。
【０１６１】
以上の本実施例に係るビットストリーム抽出部１７によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットにVPSが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０１６２】
（パラメータセット復号部１２）
パラメータセット復号部１２は、入力される対象レイヤセット符号化データから、対象レイヤセットの復号に用いられるパラメータセット（ＶＰＳ、ＳＰＳ、ＰＰＳ）を復号する。復号されたパラメータセットの符号化パラメータは、パラメータセット管理部１３に供給され、各パラメータセットの有する識別子毎に記録される。
【０１６３】
一般に、パラメータセットの復号は既定のシンタックス表に基づいて実行される。すなわち、シンタックス表の定める手順に従って符号化データからビット列を読み出して、シンタックス表に含まれるシンタックスのシンタックス値を復号する。また、必要に応じて、復号したシンタックス値に基づいて導出した変数を導出して、出力するパラメータセットに含めてもよい。したがって、パラメータセット復号部１２から出力されるパラメータセットは、符号化データに含まれるパラメータセット（VPS、SPS、PPS）に係るシンタックスのシンタックス値、および、該シンタックス値より導出される変数の集合と表現することもできる。
【０１６４】
以下では、パラメータセット復号部１２において復号に使用されるシンタックス表のうち、本発明との関連性が高いシンタックス表を中心に説明する。
【０１６５】
(ビデオパラメータセットVPS)
ビデオパラメータセットVPSは、複数のレイヤに共通するパラメータを規定するためのパラメータセットであり、各VPSを識別するためのVPS識別子、レイヤ情報として、最大レイヤ数情報、レイヤセット情報、及びレイヤ間依存情報が含まれている。
【０１６６】
VPS識別子は、各VPSを識別するための識別子であり、シンタックス“video_parameter_set_id”(図１２のSYNVPS01)としてVPSに含まれている。後述のSPSに含まれるアクティブVPS識別子(sps_video_parameter_set_id)により特定されるVPSが、対象レイヤセット内の対象レイヤの符号化データの復号処理時に参照される。
【０１６７】
最大レイヤ数情報は、階層符号化データ内の最大レイヤ数を表わす情報であり、シンタックス“vps_max_layers_minus1”(図１２のSYNVPS02)としてVPSに含まれている。階層符号化データ内の最大レイヤ数（以下、最大レイヤ数MaxNumLayers）は、（vps_max_layers_minus1+1）の値に設定される。なお、ここで規定される最大レイヤ数は、時間スケーラビリティを除く、その他のスケーラビリティ（ＳＮＲスケーラビリティ、空間スケーラビリティ、ビュースケーラビリティなど）に関するレイヤの最大レイヤ数である。
【０１６８】
最大サブレイヤ数情報は、階層符号化データ内の最大サブレイヤ数を表わす情報であり、シンタックス“vps_max_sub_layers_minus1”(図１２のSYNVPS03)としてVPSに含まれている。階層符号化データ内の最大サブレイヤ数（以下、最大サブレイヤ数MaxNumSubLayers）は、(vps_max_sub_layers_minus1+1)の値に設定される。なお、ここで規定される最大サブレイヤ数とは、時間スケーラビリティに関するレイヤの最大レイヤ数である。
【０１６９】
最大レイヤ識別子情報は、階層符号化データ内に含まれる最高次のレイヤのレイヤ識別子（レイヤＩＤ）を表わす情報であり、シンタックス“vps_max_layer_id”(図１２のSYNVPS04)として、VPSに含まれている。言い換えれば、階層符号化データ内に含まれる、NALユニットのレイヤＩＤ(nuh_layer_id)の最大値である。
【０１７０】
レイヤセット数情報は、階層符号化データに含まれるレイヤセットの総数を表わす情報であり、シンタックス“vps_num_layer_sets_minus1” (図１２のSYNVPS05)として、VPSに含まれている。階層符号化データ内のレイヤセット数（以下、レイヤセット数NumLayerSets）は、(vps_num_layer_sets_minus1+1)の値に設定される。
【０１７１】
レイヤセット情報は、階層符号化データに含まれるレイヤセットを構成するレイヤの集合を表わすリスト（以下、レイヤＩＤリストLayerSetLayerIdList）であり、VPSから復号される。VPSには、ｊ番目のレイヤ(レイヤ識別子nunLayerIdJ)が、ｉ番目のレイヤセットに含まれるか否かを示すシンタックス“layer_id_included_flag[i][j]”（図１２のSYNVPS06）が含まれており、該シンタックスの値が１であるレイヤ識別子を持つレイヤからレイヤセットが構成される。すなわち、レイヤセットｉを構成するレイヤjは、レイヤＩＤリストLayerSetLayerIdList[i]に含まれる。
【０１７２】
ＶＰＳ拡張データ有無フラグ“vps_extension_flag”(図１２のSYNVPS07)は、ＶＰＳがさらにＶＰＳ拡張データvps_extension()(図１２のSYNVPS08)を含むか否かを示すフラグである。なお、本明細書中「ＸＸであるか否かを示すフラグ」、あるいは「ＸＸの有無フラグ」と記す場合、１をＸＸである場合、０をＸＸではない場合とし、論理否定、論理積などでは１を真、０を偽と扱う（以下同様）。但し、実際の装置や方法では真値、偽値として他の値を用いることもできる。
【０１７３】
レイヤ間依存情報は、VPSに含まれるVPS拡張データ(vps_extension())から復号される。VPS拡張データに含まれるレイヤ間依存情報について、図１３を参照して説明する。図１３は、VPS拡張復号時に参照されるシンタックス表の一部であって、レイヤ間依存情報に係る部分を示す。
【０１７４】
VPS拡張データ（vps_extension()）には、レイヤ間依存情報として、直接依存フラグ“direct_dependency_flag[i][j]”(図１３のSYNVPS0A)が含まれている。直接依存フラグdirect_dependency_flag[i][j]は、ｉ番目のレイヤが、ｊ番目のレイヤに直接的に依存しているか否かを示し、直接的に依存している場合に１の値、直接的に依存していない場合に０の値をとる。ここで、ｉ番目のレイヤがｊ番目のレイヤに直接的に依存している場合、ｉ番目のレイヤを対象レイヤとして復号処理を実行する場合に、ｊ番目のレイヤに関するパラメータセット、復号ピクチャや関連する復号済シンタックスが、対象レイヤにより直接的に参照される可能性があることを意味する。逆に、ｉ番目のレイヤがｊ番目のレイヤに直接的に依存していない場合、ｉ番目のレイヤを対象レイヤとして復号処理を実行する場合に、ｊ番目のレイヤに関するパラメータセット、復号ピクチャや関連する復号済シンタックスが直接的に参照されないことを意味する。言い換えると、ｉ番目のレイヤのｊ番目のレイヤに対する直接依存フラグが１である場合、ｊ番目のレイヤはｉ番目のレイヤの直接的な参照レイヤとなりえる。特定のレイヤに対して直接的な参照レイヤとなりえるレイヤの集合、つまり対応する直接依存フラグの値が１であるレイヤの集合を、直接依存レイヤセットと呼ぶ。なお、i＝０、すなわちの０番目のレイヤ（基本レイヤ）は、ｊ番目のレイヤ（拡張レイヤ）とは直接的な依存関係がないため、直接依存フラグ”direct_depedency_flag[i][j]”の値は０であり、図１３のSYNVPS0Aを含むiのループが１から始まることに示されるように、０番目のレイヤ（基本レイヤ）に対するｊ番目のレイヤ（拡張レイヤ）の直接依存フラグの復号/符号化は省略可能である。
【０１７５】
ここで、i番目のレイヤ(レイヤ識別子iNuhLId=nunLayerIdI)に対する直接参照レイヤセットを示す、参照レイヤIDリストRefLayerId[iNuhLId][]、及びi番目のレイヤの参照レイヤであるｊ番目のレイヤが、直接参照レイヤセットの中で、昇順で、何番目の要素であるかを示す直接参照レイヤIDXリストDirectRefLayerIdx[iNuhLId][]は、後述の式により導出される。なお、参照レイヤIDリストRefLayerId[][]は２次元の配列であり、１番目の配列の要素には、対象レイヤ(レイヤi)のレイヤ識別子が格納され、２番目の配列の要素には、直接参照レイヤセットの中で、昇順で、k番目の参照レイヤのレイヤ識別子が格納される。なお、直接参照レイヤIDXリストDirectRefLayerIdx[][]は２次元の配列であり、１番目の配列の要素には、対象レイヤ(レイヤi)のレイヤ識別子が格納され、２番目の配列の要素には、レイヤ識別子が、直接参照レイヤセットの中で、昇順で、何番目の要素であるかを示すインデクス（直接参照レイヤIDX）が格納される。
【０１７６】
上記、参照レイヤIDリスト、及び直接参照レイヤIDXリストは以下の疑似コードで導出される。なお、i番目のレイヤのレイヤ識別子nuhLayerIdは、VPS上で“layer_id_in_nuh[i]”（図１３では不図示）のシンタックスによって表わされる。以降では、i番目のレイヤのレイヤ識別子“layer_id_in_nuh[i]”の表記を短くするため、”nuhLId#i”と表記する。layer_id_in_nuh[j]であれば、”nuhLId#j”である。また、配列NumDirectRefLayers[]は、レイヤ識別子iNuhLIdのレイヤが参照する直接参照レイヤ数を表わす。
【０１７７】
（参照レイヤIDリスト、及び直接参照レイヤIDXリストの導出）
参照レイヤIDリスト、及び直接参照レイヤIDXリストの導出は以下の疑似コードにより実行される。
for(i=0; i< vps_max_layers_minus1+1; i++){
iNuhLId = nuhLId#i;
NumDirectRefLayers[iNuhLId] = 0;
for(j=0; j<i; j++){
if( direct_dependency_flag[i][j]){
RefLayerId[iNuhLId][NumDirectRefLayers[iNuhLId]] = nuhLId#j;
NumDirectRefLayers[iNuhLId]++;
DirectRefLayerIdx[iNuhLId][ nuhLId#j]= NumDirectRefLayers[iNuhLId] - 1;
}
} // end of loop on for(j=0; j<i; i++)
} // end of loop on for(i=0; i< vps_max_layers_minus1+1; i++)
なお、上記疑似コードをステップで表わせば、次の通りである。
【０１７８】
（SL01）i番目のレイヤに関する参照レイヤIDリスト、及び直接参照レイヤIDXリストの導出に係るループの開始点である。ループの開始前に、変数iは０に初期化される。ループ内の処理は、変数iがレイヤ数“ vps_max_layers_minus1+1”未満のときに実行され、ループ内の処理が１回実行される度に、変数iは“１”加算される。
【０１７９】
（SL02）変数iNuhLidに、i番目のレイヤのレイヤ識別子nuhLID#iを設定する。さらに、レイヤ識別子nuhLID#iの直接参照レイヤ数NumDirectRefLyaers[iNuhLID]を０へ設定する。（SL03）j番目のレイヤを、i番目のレイヤに関する参照レイヤIDリスト、及び直接参照レイヤIDXリストへ要素追加に係るループの開始点である。ループの開始前に、変数jは０に初期化される。ループ内の処理は、変数ｊ（ｊ番目のレイヤ）がi番目のレイヤ未満（j<i）のときに実行され、ループ内の処理が１回実行される度に、変数jは“１”加算される。
【０１８０】
（SL04）i番目のレイヤに対するj番目のレイヤの直接依存フラグ(direct_dependency_flag[i][j])を判定する。直接依存フラグが１であれば、ステップSL05〜SL07の処理を実行するため、ステップSL05へ遷移する。直接依存フラグが０であれば、ステップSL05〜SL07の処理を省略し、SL0Aへ遷移する。
【０１８１】
（SL05）参照レイヤIDリストRefLayerId[iNuhLId][]のNumDirectRefLayers[iNuhLId]番目の要素へ、レイヤ識別子nuhLID#jを設定する。
すなわち、RefLayerId[iNuhLId][NumDirectRefLayers[iNuhLId]] = nuhLId#j;
（SL06）直接参照レイヤ数NumDirectRefLayers[iNuhLId]の値を“１”加算する。すなわち、NumDirectRefLayers[iNuhLId]++;
（SL07）直接参照レイヤIDXリストDirectRefLayerIdx[iNuhLid][]のnuhLId#j番目の要素へ、直接参照レイヤインデクス(直接参照レイヤIDX)として、“直接参照レイヤ数-1”の値を設定する。すなわち、
DirectRefLayerIdx[iNuhLId][ nuhLId#j]= NumDirectRefLayers[iNuhLId] - 1;
（SL0A）j番目のレイヤを、i番目のレイヤに関する参照レイヤIDリスト、及び直接参照レイヤIDXリストへ要素追加に係るループの終端である。
【０１８２】
（SL0B）i番目のレイヤの参照レイヤIDリスト、及び直接参照レイヤIDXリストの導出に係るループの終端である。
【０１８３】
以上、説明した、参照レイヤIDリスト、及び直接参照レイヤIDXリストを利用することで、直接参照レイヤセットで、ｋ番目のレイヤのレイヤIDが、全レイヤの中で、何番目の要素（直接参照レイヤIDX）であるか、逆に、直接参照レイヤIDXが、直接参照レイヤセットで、何番目の要素であるかを把握することができる。なお、導出の手順は、上記ステップに限定されず、実施可能な範囲で変更してもよい。
【０１８４】
また、レイヤ間依存情報には、後述のレイヤ依存タイプ(direct_dependency_type[i][j])ビット長Ｍを示すシンタックス“direct_dependency_len_minusN”(レイヤ依存タイプビット長)(図１３のSYNVPS0C)が含まれている。ここで、Ｎはレイヤ依存タイプの種類の総数によって定まる値であり、少なくとも２以上の整数である。なお、ビット長Mの最大値は、例えば、32であり、Ｎ＝２とすれば、direct_dependency_type[i][j]の値域は、0から(2^32 - 2)である。より一般的には、ビット長Ｍ、及びレイヤ依存タイプの総数によって定まるＮで表せば、direct_dependency_type[i][j]の値域は、0から(2^M - N)である。
【０１８５】
レイヤ間依存情報には、i番目のレイヤがとｊ番目のレイヤ間の参照関係を示すレイヤ依存タイプを示すシンタックス“direct_dependency_type[i][j]”(図１３のSYNVPS0D)が含まれている。具体的には、直接依存フラグdirect_dependency_flag[i][j]が1である場合、レイヤ依存タイプ(DirectDepType[i][j] = direct_dependency_type[i][j] + 1)の各ビット値で、ｉ番目のレイヤに対する参照レイヤであるj番目のレイヤのレイヤ依存タイプの種別の有無フラグを示す。例えば、レイヤ依存タイプの種別の有無フラグには、レイヤ間画像予測の有無フラグ(SamplePredEnabledFlag;レイヤ間画像予測有無フラグ)、レイヤ間動き予測の有無フラグ(MotionPredEnabledFlag;レイヤ間動き予測有無フラグ)や、non-VCLの依存の有無フラグ（NonVCLDepEnabledFlag;non-VCL依存有無フラグ）がある。なお、non-VCLの依存有無フラグは、non-VCL NALユニットに含まれるヘッダ情報（SPSやPPSなどのパラメータセット）に関するレイヤ間の依存関係の有無を示す。例えば、後述するレイヤ間でのパラメータセットの共有（共有パラメータセット）の有無や、レイヤ間でのパラメータセット内の一部のシンタックス予測（例えば、スケーリングリスト情報（量子化マトリックス）等）（パラメータセット間シンタックス予測、あるいはパラメータセット間予測ともいう）の有無が含まれる。なお、シンタックス“direct_dependency_type[i][j]”で符号化される値は、図１４の例では、レイヤ依存タイプの値-1、すなわち、“DirectDepType[i][j] - 1”の値である。
【０１８６】
ここで、本実施形態に係るレイヤ依存タイプの値（DirectDepType[i][j] = direct_dependency_type[i][j] + 1）とレイヤ依存タイプの種別の対応関係の一例を図１４(a)に示す。図１４(a)に示すように、レイヤ依存タイプの最下位ビット（０ビット）の値は、レイヤ間画像予測の有無を示し、最下位ビットから1ビット目の値は、レイヤ間動き予測の有無を示し、最下位ビットから(N-1)ビット目の値は、non-VCLの依存の有無を示す。なお、最下位ビットからNビット目から最上位ビット(M-1ビット目)の各ビットは、依存タイプの拡張用ビットである。
【０１８７】
対象レイヤi（レイヤ識別子iNuhLId=nunLayerIdI）に対する参照レイヤjの各レイヤ依存タイプ別有無フラグは、次の式によって導出される。
SamplePredEnabledFlag[iNuhLId][j]=((direct_dependency_type[i][j]+1) & 1 );
MotionPredEnabledFlag[iNuhLId][j]=((direct_dependency_type[i][j]+1) & 2 )>>1;
NonVCLDepEnabledFlag [iNuhLid][j]= ((direct_dependency_type[i][j]+1) & (1<<(N-1)) ) >> (N-1);
あるいは、(direct_dependency_type[i][j]+1)の代わりに、変数DirectDepType[i][j]を用いて、次の式によっても表現できる。 SamplePredEnabledFlag[iNuhLId][j]=((DirectDepType[i][j]) & 1 );
MotionPredEnabledFlag[iNuhLId][j]=((DirectDepType[i][j]) & 2 )>>1;
NonVCLDepEnabledFlag [iNuhLid][j]= ((DirectDepType[i][j]) &
(1<<(N-1)) ) >> (N-1);
なお、図１４(a)の例では、(N-1)ビット目をnon-VCL依存タイプ(non-VCL依存有無フラグ)としているが、これに限定されない。例えば、N=3とし、最下位ビットから2ビット目をnon-VCLの依存タイプの有無を表わすビットとしてもよい。また、各依存タイプ別の有無フラグを示すビット位置は、実施可能な範囲で変更してもよい。なお、上記各有無フラグの導出は、前述した（参照レイヤIDリスト、及び直接参照レイヤIDXリストの導出）において、ステップSL08として実行して導出してもよい。なお、導出の手順は、上記ステップに限定されず、実施可能な範囲で変更してもよい。
【０１８８】
（間接依存フラグ、依存フラグの導出）
ここで、i番目のレイヤが、ｊ番目のレイヤに間接的に依存するか否か（ｊ番目のレイヤは、i番目のレイヤの間接参照レイヤであるか否か）の依存関係を示す間接依存フラグ(IndirectDependencyFlag[i][j])は、直接依存フラグ(direct_dependency_flag[i][j])を参照して、後述の疑似コードにより導出することができる。同様に、i番目のレイヤが、ｊ番目のレイヤに直接的に依存するか（直接依存フラグが１の場合、ｊ番目のレイヤは、i番目のレイヤの直接参照レイヤともいう）、あるいは間接的に依存するか（間接依存フラグが１の場合、ｊ番目のレイヤは、i番目のレイヤの間接参照レイヤともいう）の依存関係を示す依存フラグ(DependencyFlag[i][j])は、直接依存フラグ(direct_dependency_flag[i][j])、及び上記間接依存フラグ（IndirectDepdendencyFlag[i][j]）を参照して、後述の疑似コードにより導出することができる。ここで、図３１を参照しながら、間接参照レイヤについて説明する。図３１では、レイヤ数が、N+1であり、j番目のレイヤ（図３１上のL#j、レイヤｊと呼ぶ）は、i番目のレイヤ（図３１上のL#i、レイヤiと呼ぶ）より下位のレイヤである（j<i）。また、レイヤｊより上位であり、レイヤiより下位であるレイヤｋ(図３１上では、L#k)（j<k<i）があるとする。図３１では、レイヤkは、レイヤjに直接的に依存し（図３１上の実線の矢印、レイヤｊはレイヤｋの直接参照レイヤ、direct_dependency_flag[k][j]==1）、レイヤiは、レイヤｋに直接的に依存する(レイヤkは、レイヤjの直接参照レイヤ、direct_dependency_flag[i][k]==1)。このとき、レイヤiは、レイヤｋを介して、レイヤｊに対して、間接的に依存する（図３１上の点線の矢印）ため、レイヤｊはレイヤiの間接参照レイヤであると呼ぶ。換言すれば、レイヤiが、１又は複数のレイヤｋ(i<k<j)を介して、レイヤjに対して、間接的に依存す場合、レイヤｊは、レイヤiの間接参照レイヤである。
【０１８９】
なお、間接依存フラグIndirectDependencyFlag[i][j]は、ｉ番目のレイヤが、ｊ番目のレイヤに間接的に依存しているか否かを示し、間接的に依存している場合に１の値、間接的に依存していない場合に０の値をとる。ここで、ｉ番目のレイヤがｊ番目のレイヤに間接的に依存している場合、ｉ番目のレイヤを対象レイヤとして復号処理を実行する場合に、ｊ番目のレイヤに関するパラメータセット、復号ピクチャや関連する復号済シンタックスが、対象レイヤにより間接的に参照される可能性があることを意味する。逆に、ｉ番目のレイヤがｊ番目のレイヤに間接的に依存していない場合、ｉ番目のレイヤを対象レイヤとして復号処理を実行する場合に、ｊ番目のレイヤに関するパラメータセット、復号ピクチャや関連する復号済シンタックスが間接的に参照されないことを意味する。言い換えると、ｉ番目のレイヤのｊ番目のレイヤに対する間接依存フラグが１である場合、ｊ番目のレイヤはｉ番目のレイヤの間接的な参照レイヤとなりえる。特定のレイヤに対して間接的な参照レイヤとなりえるレイヤの集合、つまり対応する間接依存フラグの値が１であるレイヤの集合を、間接依存レイヤセットと呼ぶ。なお、i＝０、すなわちの０番目のレイヤ（基本レイヤ）は、ｊ番目のレイヤ（拡張レイヤ）とは間接的な依存関係がないため、間接依存フラグ“IndirectDepedencyFlag[i][j]”の値は０であり、０番目のレイヤ（基本レイヤ）に対するｊ番目のレイヤ（拡張レイヤ）の間接依存フラグの導出は省略可能である。
【０１９０】
また、依存フラグDependencyFlag[i][j]は、ｉ番目のレイヤが、ｊ番目のレイヤに依存しているか否かを示し、依存している場合に１の値、依存していない場合に０の値をとる。なお、依存フラグDependencyFlag[i][j]に関連する、参照や依存については、特に言及しない限り、直接と間接（直接参照、間接参照、直接依存、間接依存）の両方を含むものとする。ここで、ｉ番目のレイヤがｊ番目のレイヤに依存している場合、ｉ番目のレイヤを対象レイヤとして復号処理を実行する場合に、ｊ番目のレイヤに関するパラメータセット、復号ピクチャや関連する復号済シンタックスが、対象レイヤにより参照される可能性があることを意味する。逆に、ｉ番目のレイヤがｊ番目のレイヤに依存していない場合、ｉ番目のレイヤを対象レイヤとして復号処理を実行する場合に、ｊ番目のレイヤに関するパラメータセット、復号ピクチャや関連する復号済シンタックスが参照されないことを意味する。言い換えると、ｉ番目のレイヤのｊ番目のレイヤに対する依存フラグが１である場合、ｊ番目のレイヤはｉ番目のレイヤの直接参照レイヤ、または間接参照レイヤとなりえる。特定のレイヤに対して直接参照レイヤ、または間接参照レイヤとなりえるレイヤの集合、つまり対応する依存フラグの値が１であるレイヤの集合を、依存レイヤセットと呼ぶ。なお、i＝０、すなわちの０番目のレイヤ（基本レイヤ）は、ｊ番目のレイヤ（拡張レイヤ）とは依存関係がないため、依存フラグ“DepedencyFlag[i][j]”の値は０であり、０番目のレイヤ（基本レイヤ）に対するｊ番目のレイヤ（拡張レイヤ）の依存フラグの導出は省略可能である。
【０１９１】
（疑似コード）
for(i=0; i< vps_max_layers_minus1+1; i++){
for(j=0; j<i; j++){
IndirectDependencyFlag[i][j] = 0;
DependencyFlag[i][j] = 0;
for(k=j+1; k<i; k++){
if( direct_dependency_flag[k][j] && direct_dependency_flag[i][k] && !direct_dependency_flag[i][j]){
IndirectDependencyFlag[i][j] = 1;
}
}
DependencyFlag[i][j] = (direct_dependency_flag[i][j] | IndirectDependencyFlag[i][j]);
} // end of loop on for(j=0; j<i; i++)
} // end of loop on for(i=0; i< vps_max_layers_minus1+1; i++)
なお、上記疑似コードをステップで表わせば、次の通りである。
【０１９２】
（SN01）i番目のレイヤに関する間接依存フラグ、及び依存フラグの導出に係るループの開始点である。ループの開始前に、変数iは０に初期化される。ループ内の処理は、変数iがレイヤ数“vps_max_layers_minus1+1”未満のときに実行され、ループ内の処理が１回実行される度に、変数iは“１”加算される。
【０１９３】
（SN02）i番目のレイヤとj番目のレイヤに関する間接依存フラグ、及び依存フラグの導出に係るループの開始点である。ループの開始前に、変数jは０に初期化される。ループ内の処理は、変数ｊ（ｊ番目のレイヤ）がi番目のレイヤ未満（j<i）のときに実行され、ループ内の処理が１回実行される度に、変数jは“1”加算される。
【０１９４】
（SN03）間接依存フラグIndirectDependencyFlag[i][]のｊ番目の要素の値を０、依存フラグDependencyFlag[i][]のｊ番目の要素の値を０へ設定する。すなわち、IndirectDependencyFlag[i][j] = 0、DependencyFlag[i][j] = 0である。
【０１９５】
（SN04）i番目のレイヤに対するj番目のレイヤが間接参照レイヤであるか否かを探索するためのループの開始点である。ループの開始前に、変数ｋは”j+1”に初期化される。ループ内の処理は、変数ｋの値が、変数i未満のときに実行され、ループ内の処理が１回実行される度に、変数kは“１”加算される。
【０１９６】
（SN05）ｊ番目のレイヤがi番目の間接参照レイヤであるかを判定するため、以下の（１）〜（３）の条件を判定する。
【０１９７】
（１）j番目のレイヤが、k番目の直接参照レイヤであるかを判定する。具体的には、ｋ番目のレイヤに対するj番目のレイヤの直接依存フラグ(direct_dependency_flag[k][j])が１であれば、真(直接参照レイヤである)と判定し、直接依存フラグが０（直接参照レイヤでない）であれば、偽と判定する。
【０１９８】
（２）k番目のレイヤが、i番目の直接参照レイヤであるかを判定する。具体的には、i番目のレイヤに対するk番目のレイヤの直接依存フラグ(direct_dependency_flag[i][k])が１であれば、真(直接参照レイヤである)と判定し、直接依存フラグが０(直接参照レイヤでない)であれば、偽と判定する。
【０１９９】
（３）j番目のレイヤが、i番目の直接参照レイヤでないことを判定する。具体的には、i番目のレイヤに対するj番目のレイヤの直接依存フラグ(direct_dependency_flag[i][j])が０（直接参照レイヤでない）であれば、真と判定し、直接依存フラグが１（直接参照レイヤである）であれば、偽と判定する。
【０２００】
上記（１）〜（３）の条件が全て真である場合（すなわち、ｋ番目のレイヤに対するｊ番目のレイヤの直接依存フラグdirect_dependency_flag[k][j]が１、かつ、i番目のレイヤに対するｋ番目のレイヤの直接依存フラグdirect_dependency_flag[i][k]が１、かつ、i番目のレイヤに対するｊ番目のレイヤの直接依存フラグdirect_dependency_flag[i][j]が０）、ステップSN06へ遷移する。それ以外の場合（上記（１）〜（３）のいずれか一つでも偽である場合、すなわち、ｋ番目のレイヤに対するｊ番目のレイヤの直接依存フラグdirect_dependency_flag[k][j]が０、または、i番目のレイヤに対するｋ番目のレイヤの直接依存フラグdirect_dependency_flag[i][k]が０、または、i番目のレイヤに対するｊ番目のレイヤの直接依存フラグdirect_dependency_flag[i][j]が１）であれば、ステップSN06の処理を省略し、ステップSN07へ遷移する。
【０２０１】
（SN06）上記（１）〜（３）の条件が全て真である場合、i番目のレイヤに対するｊ番目のレイヤは間接参照レイヤであると判断し、間接依存フラグIndirectDependencyFlag[i][]のｊ番目の要素の値を１へ設定する。すなわち、IndirectDependencyFlag[i][j] = 1である。
【０２０２】
（SN07）i番目のレイヤに対するj番目のレイヤが間接参照レイヤであるか否かを探索するためのループの終端である。
【０２０３】
（SN08）直接依存フラグ(direct_dependency_flag[i][j])、及び間接依存フラグ(IndirectDependencyFlag[i][j])に基づいて、依存フラグ(DependencyFlag[i][j])の値を設定する。具体的には、直接依存フラグ（direct_dependency_flag[i][j]）の値と、間接依存フラグ（direct_dependency_flag[i][j]）の値の論理和の値を、依存フラグ(DependencyFlag[i][j])の値とする。すなわち、以下の式で導出する。直接依存フラグの値が１、または間接依存フラグの値が１であれば、依存フラグの値は１となる。それ以外の場合（直接依存フラグの値が０、かつ、間接依存フラグの値が０）は、依存フラグの値は０となる。なお、下記導出式は、一例であり、依存フラグに設定される値が同一になる範囲で変更可能である。
DependencyFlag[i][j] = (direct_dependency_flag[i][j] | IndirectDependencyFlag[i][j]);
（SN0A））i番目のレイヤとj番目のレイヤに関する間接依存フラグ、及び依存フラグの導出に係るループの終端である。
【０２０４】
（SN0B）i番目のレイヤに関する間接依存フラグ、及び依存フラグの導出に係るループの終端である。
【０２０５】
以上、説明したように、i番目のレイヤが、ｊ番目のレイヤに間接的に依存する場合の依存関係を示す間接依存フラグ(IndirectDependencyFlag[i][j])を導出することにより、ｊ番目のレイヤが、i番目のレイヤの間接参照レイヤであるかを把握することができる。
【０２０６】
また、i番目のレイヤが、ｊ番目のレイヤに依存する場合（直接依存フラグが１、または間接依存フラグが１の場合）の依存関係を示す依存フラグ(DependencyFlag[i][j])を導出することにより、ｊ番目のレイヤが、i番目のレイヤの直接参照レイヤ、または間接参照レイヤであるかを把握することができる。なお、導出の手順は、上記ステップに限定されず、実施可能な範囲で変更してもよい。例えば、間接依存フラグ、依存フラグの導出は、次の疑似コードによって導出してもよい。
【０２０７】
（疑似コード）
// derive indirect reference layers of layer i
for(i=2; i< vps_max_layers_minus1+1; i++){
for(k=1; k<i; k++){
for(j=0; j<k; j++){
if( (direct_dependency_flag[k][j] || IndirectDependencyFlag[k][j] )
direct_dependency_flag[i][k] && !direct_dependency_flag[i][j]){
IndirectDependencyFlag[i][j] = 1;
}
} // end of loop on for(j=0; j<k; j++)
} // end of loop on for(k=1; k<i; k++)
} // end of loop on for(i=2; i< vps_max_layers_minus1+1; i++)
// derive dependent layers (direct or indirect reference layers) of layer i
for(i=0; i< vps_max_layers_minus1+1; i++){
for(j=0; j<i; j++){
DependencyFlag[i][j] = (direct_dependency_flag[i][j] | IndirectDependencyFlag[i][j]);
} // end of loop on for(j=0; j<i; i++)
} // end of loop on for(i=0; i< vps_max_layers_minus1+1; i++)
なお、上記疑似コードをステップで表わせば、次の通りである。なお、ステップSO01の開始前に、間接依存フラグIndirectDependencyFlag[][]、及び依存フラグDependencyFlga[][]の全ての要素の値は、０で初期化済であるものとする。
【０２０８】
（SO01）i番目のレイヤ(レイヤi)に関する間接依存フラグの導出に係るループの開始点である。ループの開始前に、変数iは２に初期化される。ループ内の処理は、変数iがレイヤ数“vps_max_layers_minus1+1”未満のときに実行され、ループ内の処理が１回実行される度に、変数iは“１”加算される。なお、変数iを２から開始するのは、間接参照レイヤが発生するのはレイヤ数が３レイヤ以上のためである。
【０２０９】
（SO02）i番目のレイヤ(レイヤi)の下位レイヤであって、ｊ番目のレイヤ(レイヤj)の上位レイヤであるｋ番目のレイヤ(レイヤk)(j<k<i)に関するループの開始点である。ループの開始前に、変数iは１に初期化される。ループ内の処理は、変数k（レイヤk）がレイヤi未満（k<i）のときに実行され、ループ内の処理が１回実行される度に、変数kは“1”加算される。なお、変数kを1から開始するのは、間接参照レイヤが発生するのはレイヤ数が３レイヤ以上のためである。
【０２１０】
（SO03）レイヤjがレイヤiの間接参照レイヤであるかを探索するループ開始点である。ループの開始前に、変数jは0に初期化される。ループ内の処理は、変数j（レイヤj）がレイヤk未満（j<k）のときに実行され、ループ内の処理が１回実行される度に、変数jは“1”加算される。
【０２１１】
（SO04）レイヤｊがレイヤiの間接参照レイヤであるかを判定するため、以下の（１）〜（３）の条件を判定する。
【０２１２】
（１）レイヤjが、レイヤkの直接参照レイヤ、または間接参照レイヤであるかを判定する。具体的には、レイヤkに対するレイヤjの直接依存フラグ(direct_dependency_flag[k][j])が１、または、レイヤkに対するレイヤjの間接依存フラグ(IndirectDependencyFlag[k][j])が１であれば、真(直接参照レイヤ、または間接参照レイヤである)と判定する。また、直接依存フラグが０（直接参照レイヤでない）、かつ、間接依存フラグが０（間接参照レイヤでない）であれば、偽と判定する。
【０２１３】
（２）レイヤkが、レイヤiの直接参照レイヤであるかを判定する。具体的には、レイヤiに対するレイヤkの直接依存フラグ(direct_dependency_flag[i][k])が１であれば、真(直接参照レイヤである)と判定し、直接依存フラグが０(直接参照レイヤでない)であれば、偽と判定する。
【０２１４】
（３）レイヤjが、レイヤiの直接参照レイヤでないことを判定する。具体的には、レイヤiに対するレイヤjの直接依存フラグ(direct_dependency_flag[i][j])が０（直接参照レイヤでない）であれば、真と判定し、直接依存フラグが１（直接参照レイヤである）であれば、偽と判定する。
【０２１５】
上記（１）〜（３）の条件が全て真である場合（すなわち、（レイヤkに対するレイヤｊの直接依存フラグが１、あるいは間接依存フラグが１）、かつ、レイヤiに対するレイヤの直接依存フラグdirect_dependency_flag[i][k]が１、かつ、レイヤiに対するレイヤの直接依存フラグdirect_dependency_flag[i][j]が０）、ステップSO05へ遷移する。それ以外の場合（上記（１）〜（３）のいずれか一つでも偽である場合、すなわち、レイヤkに対するレイヤｊの直接依存フラグが０、かつ間接依存フラグが０）、または、レイヤiに対するレイヤの直接依存フラグdirect_dependency_flag[i][k]が０、または、レイヤiに対するレイヤの直接依存フラグdirect_dependency_flag[i][j]が１）であれば、ステップSO05の処理を省略し、ステップSO06へ遷移する。
【０２１６】
（SO05）上記（１）〜（３）の条件が全て真である場合、レイヤｊは、レイヤiの間接参照レイヤであると判断し、間接依存フラグIndirectDependencyFlag[i][]のｊ番目の要素の値を１へ設定する。すなわち、IndirectDependencyFlag[i][j] = 1である。
【０２１７】
（SO06）レイヤjがレイヤiの間接参照レイヤであるかを探索するループの終端である。
【０２１８】
（SO07）レイヤiの下位レイヤであって、レイヤjの上位レイヤであるレイヤk (j<k<i)に関するループの終端である。
【０２１９】
（SO08）レイヤiに関する間接依存フラグの導出に係るループの終端である。
【０２２０】
（S00A）レイヤiに関する依存フラグの導出に係るループの開始点である。ループの開始前に、変数iは０に初期化される。ループ内の処理は、変数iがレイヤ数“vps_max_layers_minus1+1”未満のときに実行され、ループ内の処理が１回実行される度に、変数iは“１”加算される。
【０２２１】
（S00B）レイヤjがレイヤiの依存レイヤ（直接参照レイヤ、または間接参照レイヤ）であるかを探索するループの開始点である。ループの開始前に、変数jは０に初期化される。ループ内の処理は、変数jが変数i未満(j<i)のときに実行され、ループ内の処理が１回実行される度に、変数jは“１”加算される。
【０２２２】
（S00C）直接依存フラグ(direct_dependency_flag[i][j])、及び間接依存フラグ(IndirectDependencyFlag[i][j])に基づいて、依存フラグ(DependencyFlag[i][j])の値を設定する。具体的には、直接依存フラグ（direct_dependency_flag[i][j]）の値と、間接依存フラグ（direct_dependency_flag[i][j]）の値の論理和の値を、依存フラグ(DependencyFlag[i][j])の値とする。すなわち、以下の式で導出する。直接依存フラグの値が１、または間接依存フラグの値が１であれば、依存フラグの値は１となる。それ以外の場合（直接依存フラグの値が０、かつ、間接依存フラグの値が０）は、依存フラグの値は０となる。なお、下記導出式は、一例であり、依存フラグに設定される値が同一になる範囲で変更可能である。
DependencyFlag[i][j] = (direct_dependency_flag[i][j] | IndirectDependency
Flag[i][j]);
（S00D）レイヤjがレイヤiの依存レイヤ（直接参照レイヤ、または間接参照レイヤ）であるかを探索するループの終端である。
【０２２３】
（S00E）レイヤiに関する依存フラグの導出に係るループの終端である。
【０２２４】
以上、説明したように、レイヤiが、レイヤｊに間接的に依存する場合の依存関係を示す間接依存フラグ(IndirectDependencyFlag[i][j])を導出することにより、レイヤjが、レイヤiの間接参照レイヤであるかを把握することができる。また、レイヤiが、レイヤｊに依存する場合（直接依存フラグが１、または間接依存フラグが１の場合）の依存関係を示す依存フラグ(DependencyFlag[i][j])を導出することにより、レイヤｊが、レイヤiの依存レイヤ（直接参照レイヤ、または間接参照レイヤ）であるかを把握することができる。なお、導出の手順は、上記ステップに限定されず、実施可能な範囲で変更してもよい。
【０２２５】
また、上記の例では、i番目のレイヤに対するｊ番目のレイヤが直接参照レイヤ、または間接参照レイヤであるか否かを示す依存フラグDipendecyFlag[i][j]を、全レイヤ内でのインデクスiとｊに対して導出しているが、i番目のレイヤのレイヤ識別子nuhLId#i、及びｊ番目のレイヤのレイヤ識別子nuhLId#jとして、レイヤ識別子間の依存フラグ（レイヤ識別子間依存フラグ）LIdDipendencyFlag[][]を導出してもよい。その場合、上記ステップSN08,又はSO0Cにおいて、レイヤ識別子間依存フラグ(LIdDependencyFlag[][])の１番目の要素を、i番目のレイヤのレイヤ識別子nuhLId#i、２番目の要素をｊ番目のレイヤのレイヤ識別子nuhLId#jとして、レイヤ識別子間依存フラグ(LIdDependencyFlag[nuhLId#i][nuhLId#j])の値を導出する。すなわち、以下の式に示すように、直接依存フラグの値が１、または間接依存フラグの値が１であれば、レイヤ識別子間依存フラグの値は１となる。それ以外の場合（直接依存フラグの値が０、かつ、間接依存フラグの値が０）は、レイヤ識別子間依存フラグの値は０となる。
LIdDependencyFlag[nuhLId#i][nuhLId#j] = (direct_dependency_flag[i][j] | IndirectDependencyFlag[i][j]);
以上、説明したように、レイヤ識別子nuhLId#iであるi番目のレイヤが、レイヤ識別子nuhLId#jであるｊ番目のレイヤに直接的に、または間接的に依存するか示すレイヤ識別子間依存フラグ(Lid0DependencyFlag[nuhLId#i][nuhLId#j])を導出することにより、レイヤ識別子nuhLId#jであるｊ番目のレイヤが、レイヤ識別子nuhLId#iであるi番目のレイヤの直接参照レイヤ、または間接参照レイヤであるかを把握することができる。なお、上記手順は、これに限定されず、実施可能な範囲で変更してもよい。
【０２２６】
(シーケンスパラメータセットSPS)
シーケンスパラメータセットＳＰＳでは、対象シーケンスを復号するために画像復号装置１が参照する符号化パラメータの集合が規定されている。
【０２２７】
アクティブVPS識別子は、対象SPSが参照するアクティブVPSと指定する識別子であり、シンタックス“sps_video_parameter_set_id”(図１５のSYNSPS01)としてSPSに含まれている。なお、パラメータセット復号部１２は、復号対象のシーケンスパラメータセットＳＰＳに含まれるアクティブVPS識別子を復号するとともに、パラメータセット管理部１３から、該アクティブVPS識別子で指定されるアクティブＶＰＳの符号化パラメータを読み出し、以降の復号対象ＳＰＳの各シンタックスを復号する際に該アクティブＶＰＳの符号化パラメータを参照してもよい。なお、復号対象SPSの各シンタックスが、アクティブVPSの符号化パラメータに依存しない場合は、復号対象SPSのアクティブVPS識別子復号時点での、VPSのアクティベート処理は必要ない。
【０２２８】
SPS識別子は、各SPSを識別するための識別子であり、シンタックス“sps_seq_parameter_set_id”(図１５のSYNSPS02)としてSPSに含まれている。後述のPPSに含まれるアクティブSPS識別子(pps_seq_parameter_set_id)により特定されるSPSが、対象レイヤセット内の対象レイヤの符号化データの復号処理時に参照される。
【０２２９】
（ピクチャ情報）
ＳＰＳには、ピクチャ情報として、対象レイヤの復号ピクチャのサイズを定める情報が含まれる。例えば、ピクチャ情報は、対象レイヤの復号ピクチャの幅や高さを表わす情報を含んでいる。SPSから復号されるピクチャ情報には、復号ピクチャの幅（pic_width_in_luma_samples）と復号ピクチャの高さ（pic_height_in_luma_samples）が含まれている（図１５では不図示）。シンタックス“pic_width_in_luma_samples”の値は、輝度画素単位での復号ピクチャの幅に対応する。また、シンタックス“pic_height_in_luma_samples”の値は、輝度画素単位での復号ピクチャの高さに対応する。
【０２３０】
図１５のSYNSPS04に示すシンタックス群は、対象シーケンス全体を通じて利用されるスケーリングリスト（量子化マトリックス）に関する情報（スケーリングリスト情報）である。スケーリングリスト情報の中で、“sps_infer_scaling_list_flag”(SPSスケーリングリスト推定フラグ)は、対象SPSのスケーリングリストに関する情報を、“sps_scaling_list_ref_layer_id”で特定される参照レイヤのアクティブＳＰＳのスケーリングリスト情報から推定するか否かを示すフラグである。SPSスケーリングリスト推定フラグが１の場合、該SPSのスケーリングリスト情報は、“sps_scaling_list_ref_layer_id”で特定される参照レイヤのアクティブＳＰＳのスケーリングリスト情報から推定される（コピーされる）。SPSスケーリングリスト推定フラグが０の場合、SPSでスケーリングリスト情報が、“sps_scaling_list_data_present_flag”に基づいて通知される。
【０２３１】
ＳＰＳ拡張データ有無フラグ“sps_extension_flag”（図１５のSYNSPS05）は、ＳＰＳがさらにＳＰＳ拡張データsps_extension()（図１５のSYNSPS06）を含むか否かを示すフラグである。
【０２３２】
ＳＰＳ拡張データ（sps_extension()）には、例えば、レイヤ間位置対応情報（図１６のSYNSPS0A）等が含まれている。
【０２３３】
(ピクチャパラメータセットPPS)
ピクチャパラメータセットＰＰＳでは、対象シーケンス内の各ピクチャを復号するために画像復号装置１が参照する符号化パラメータの集合が規定されている。
【０２３４】
PPS識別子は、各PPSを識別するための識別子であり、シンタックス“sps_seq_parameter_set_id”(図１５のSYNSPS02)としてPPSに含まれている。後述のスライスヘッダに含まれるアクティブPPS識別子(slice_pic_parameter_set_id)により特定されるPPSが、対象レイヤセット内の対象レイヤの符号化データの復号処理時に参照される。
【０２３５】
アクティブSPS識別子は、対象PPSが参照するアクティブSPSと指定する識別子であり、シンタックス“pps_seq_parameter_set_id”(図１７のSYNSPS02)としてPPSに含まれている。なお、パラメータセット復号部１２は、復号対象のピクチャパラメータセットＰＰＳに含まれるアクティブSPS識別子を復号するとともに、パラメータセット管理部１３から、該アクティブSPS識別子で指定されるアクティブＳＰＳの符号化パラメータを読み出し、さらに、該アクティブSPSが参照するアクティブVPSの符号化パラメータを呼び出し、以降の復号対象ＰＰＳの各シンタックスを復号する際に該アクティブＳＰＳ、及び該アクティブＶＰＳの符号化パラメータを参照してもよい。なお、復号対象PPSの各シンタックスが、アクティブSPS、及びアクティブVPSの符号化パラメータに依存しない場合は、復号対象PPSのアクティブSPS識別子復号時点での、SPS、及びVPSのアクティベート処理は必要ない。
【０２３６】
図１７のSYNPPS03に示すシンタックス群は、対象ＰＰＳを参照するピクチャの復号時に利用されるスケーリングリスト（量子化マトリックス）に関する情報（スケーリングリスト情報）である。スケーリングリスト情報の中で、“pps_infer_scaling_list_flag”(スケーリングリスト推定フラグ)は、対象PPSのスケーリングリストに関する情報を、“pps_scaling_list_ref_layer_id”で特定される参照レイヤのアクティブＰＰＳのスケーリングリスト情報から推定するか否かを示すフラグである。PPSスケーリングリスト推定フラグが１の場合、該PPSのスケーリングリスト情報は、“sps_scaling_list_ref_layer_id”で特定される参照レイヤのアクティブＰＰＳのスケーリングリスト情報から推定される（コピーされる）。PPSスケーリングリスト推定フラグが０の場合、PPSでスケーリングリスト情報が、“sps_scaling_list_data_present_flag”に基づいて通知される。
【０２３７】
（ピクチャ復号部１４）
ピクチャ復号部１４は、入力されるVCL NALユニット、および、アクティブパラメータセットに基づいて復号ピクチャを生成して出力する。
【０２３８】
図２０を用いて、ピクチャ復号部１４の概略的構成を説明する。図２０は、ピクチャ復号部１４の概略的構成を示した機能ブロック図である。
【０２３９】
ピクチャ復号部１４は、スライスヘッダ復号部１４１、CTU復号部１４２を備えている。CTU復号部１４２は、さらに、予測残差復元部１４２１、予測画像生成部１４２２、及びCTU復号画像生成部１４２３を含んでいる。
【０２４０】
（スライスヘッダ復号部１４１）
スライスヘッダ復号部１４１は、入力されるVCL NALユニットとアクティブパラメータセットに基づいてスライスヘッダを復号する。復号したスライスヘッダは、入力されるVCL NALユニットと合わせてCTU復号部１４２に出力する。
【０２４１】
（ＣＴＵ復号部１４２）
ＣＴＵ復号部１４２は、概略的には、入力されるスライスヘッダ、VCL NALユニットに含まれるスライスデータ、及びアクティブパラメータセットに基づいて、ピクチャを構成するスライスに含まれる各CTUに対応する領域の復号画像を復号することで、スライスの復号画像を生成する。ここで、CTUサイズは、アクティブパラメータセットに含まれる、対象レイヤに対するCTBサイズ(図15のSYNSPS03上のlog2_min_luma_coding_block_size_minus3、及びlog2_diff_max_min_luma_coding_block_sizeが対応するシンタックスである)が用いられる。スライスの復号画像は、入力されるスライスヘッダが示すスライス位置へ、復号ピクチャの一部として出力される。CTUの復号画像は、CTU復号部１４２内部の予測残差復元部１４２１、予測画像生成部１４２２、及びCTU復号画像生成部１４２３により生成される。
【０２４２】
予測残差復元部１４２１は、入力のスライスデータに含まれる予測残差情報（ＴＴ情報）を復号して対象CTUの予測残差を生成して出力する。
【０２４３】
予測画像生成部１４２２は、入力のスライスデータに含まれる予測情報（ＰＴ情報）の示す予測方法と予測パラメータに基づいて予測画像を生成して出力する。その際、必要に応じて、参照ピクチャの復号画像や符号化パラメータが利用される。例えば、インター予測、または、レイヤ間画像予測を使用する場合は、復号ピクチャ管理部１５より対応する参照ピクチャを読み出す。
【０２４４】
CTU復号画像生成部１４２３は、入力される予測画像と予測残差を加算して対象CTUの復号画像を生成して出力する。
【０２４５】
＜ピクチャ復号部１４の復号プロセス＞
以下、図２１を参照して、ピクチャ復号部１４における対象レイヤiのピクチャの復号の概略的な動作について説明する。図２１は、ピクチャ復号部１４における対象レイヤiのピクチャを構成するスライス単位の復号プロセスを示すフロー図である。
【０２４６】
（ＳＤ１０１）復号対象スライスの先頭スライスフラグ(first_slice_segment_in_pic_flag)を復号する。先頭スライスフラグが１の場合、復号対象スライスは、ピクチャ内の復号順（以降、処理順）で先頭スライスであり、復号対象スライスの先頭ＣＴＵのピクチャ内でのラスタスキャン順での位置（以降、ＣＴＵアドレス）を０に設定する。さらに、ピクチャ内の処理済みＣＴＵ数のカウンタnumCtu（以降、処理済CTU数numCtu）を０に設定する。先頭スライスフラグが０の場合、後述のＳＤ１０６で復号されるスライスアドレスに基づいて、復号対象スライスの先頭ＣＴＵアドレスを設定する。
【０２４７】
（ＳＤ１０２）復号対象スライスの復号時に参照するアクティブＰＰＳを指定するアクティブＰＰＳ識別子(slice_pic_paramter_set_id)を復号する。
【０２４８】
（ＳＤ１０４）アクティブパラメータセットをパラメータセット管理部１３よりフェッチする。すなわち、復号対象スライスが参照するアクティブＰＰＳ識別子(slice_pic_parameter_set_id)と同一のＰＰＳ識別子(pps_pic_parameter_set_id)を有するＰＰＳをアクティブＰＰＳとし、パラメータセット管理部１３から、アクティブＰＰＳの符号化パラメータをフェッチする（読み出す）。さらに、アクティブＰＰＳ内のアクティブＳＰＳ識別子(pps_seq_parameter_set_id)と同一のＳＰＳ識別子(sps_seq_parameter_set_id)を有するＳＰＳをアクティブＳＰＳとし、パラメータセット管理部１３から、アクティブＳＰＳの符号化パラメータをフェッチする。さらに、アクティブＳＰＳ内のアクティブＶＰＳ識別子(sps_video_parameter_set_id)と同一のＶＰＳ識別子(vps_video_parameter_set_id)を有するＶＰＳをアクティブＶＰＳとし、パラメータセット管理部１３から、アクティブＶＰＳの符号化パラメータをフェッチする。
【０２４９】
（ＳＤ１０５）復号対象スライスが、ピクチャ内の処理順で先頭スライスであるか否かを先頭スライスフラグに基づいて判定する。先頭スライスフラグが０の場合(SD105でYes)、ステップSD106へ遷移する。それ以外の場合(SD105でNo)、ステップSD106の処理をスキップする。なお、先頭スライスフラグが１の場合、復号対象スライスのスライスアドレスは０である。
【０２５０】
（ＳＤ１０６）復号対象スライスのスライスアドレス（slice_segment_address）を復号し、復号対象スライスの先頭ＣＴＵアドレスを設定する。例えば、先頭スライスＣＴＵアドレス＝slice_segment_addressである。
・・・省略・・・
（ＳＤ１０Ａ）ＣＴＵ復号部１４２は、入力されるスライスヘッダ、アクティブパラメータセット、及びVCL NALユニットに含まれるスライスデータ内の各ＣＴＵ情報(図１８のSYNSD01)に基づいて、ピクチャを構成するスライスに含まれる各CTUに対応する領域のCTU復号画像を生成する。さらに、各CTU情報の後に、該CTUが復号対象スライスの終端であるかを示すスライス終端フラグ(end_of_slice_segment_flag)(図１８のSYNSD02)。また、各CTUの復号後に、処理済CTU数numCtuの値を１加算する(numCtu++)。
【０２５１】
（ＳＤ１０Ｂ）該CTUが復号対象スライスの終端であるか否かをスライス終端フラグに基づいて判定する。スライス終端フラグが１の場合(SD10BでYes)、ステップSD10Cへ遷移する。それ以外の場合(SD10BでNo)、後続のCTU情報を復号するため、ステップSD10Aへ遷移する。
【０２５２】
（ＳＤ１０Ｃ）処理済CTU数numCtuが、ピクチャを構成するＣＴＵの総数(PicSizeInCtbsY)に達したか判定する。すなわち、numCtu==PicSizeInCtbsYであるか判定する。numCtuがPicSizeInCtbsYと等しい場合(SD10CでYes)、復号対象ピクチャを構成するスライス単位の復号処理を終了する。それ以外の場合（numCtu<PicSizeInCtbsY）（SD10CでNo）、復号対象ピクチャを構成するスライス単位の復号処理を継続するため、ステップSD101へ遷移する。
【０２５３】
以上、実施例１に係るピクチャ復号部１４の動作について説明したが、上記ステップに限定されず、実施可能な範囲で、ステップを変更しても構わない。
【０２５４】
（動画像復号装置１の効果）
以上説明した本実施形態に係る階層動画像復号装置１（階層画像復号装置）は、外部より供給される対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTarget、及び対象最高次テンポラル識別子HighestTidTargetに基づいて、ビットストリーム抽出処理を行い、入力される階層符号化データＤＡＴＡから、対象最高次テンポラル識別子HighestTidTarget、及び対象レイヤセットLayerSetTargetのレイヤＩＤリストLayerIdListTargetによって定まる集合（ターゲットセットTargetSetと呼ぶ）に含まれないNALユニットを除去（破棄）し、ターゲットセットTargetSetに含まれるＮＡＬユニットから構成される対象レイヤセット符号化データＤＡＴＡ#Ｔ(BitstreamToDecode)を抽出するビットストリーム抽出部１７を備える。さらに、上記ビットストリーム抽出部１７は、ビデオパラメータセットのレイヤ識別子が前記ターゲットセットTargetSetに含まれない場合には、前記ビデオパラメータセットのレイヤ識別子を、ターゲットセットTargetSet内で、最低次のレイヤ識別子へ更新する（書き換える）ことを特徴とする。なお、上記ビットストリーム抽出部１７の動作は、「入力される階層符号化データＤＡＴＡを構成するＡＵには、ＡＵ内で最低次のレイヤ識別子を有するＶＰＳが最大で１つ含まれること」を前提にしているが、これに限定されない。例えば、ＡＵ内で最低次のレイヤ識別子以外のレイヤ識別子を有するＶＰＳが、ＡＵ内に含まれていてもよい。この場合、ビットストリーム抽出部１７は、図２７のステップSG104において、レイヤ識別子の更新対象とするＶＰＳは、ターゲットセットTargetSetに含まれないレイヤ識別子で、最低次のレイヤ識別子とすればよい。通常は、レイヤ識別子“nuhLayerId=0”のＶＰＳが最低次のレイヤ識別子を有するＶＰＳとなるため、該ＶＰＳを更新対象とし、それ以外のターゲットセットTargetSetに含まれないＶＰＳは破棄する。
【０２５５】
従って、本実施形態に係る階層動画像復号装置１によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットにVPSが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０２５６】
また、対象レイヤの復号に利用されるパラメータセット（ＶＰＳ、ＳＰＳ、ＰＰＳ）として、参照レイヤの復号に利用されるパラメータセットを共有（参照）することにより、対象レイヤのパラメータセットに係る復号処理を省略することが可能である。すなわち、より少ない符号量でパラメータセットを復号することができる。
【０２５７】
（ビットストリーム抽出部１７の変形例１）
実施例１に係るビットストリーム抽出部１７では、図２７示すように、ターゲットセットに、ＶＰＳのレイヤ識別子が前記ターゲットセットTargetSetに含まれない場合には、前記ＶＰＳのレイヤ識別子を、ターゲットセットTargetSet内で、最低次のレイヤ識別子へ更新する（書き換える）ことで、ターゲットセットTargetSetに必ずＶＰＳが含まれるようしているが、これに限定されない。例えば、ビットストリーム抽出部１７は、ターゲットセットTargetSetを構成するレイヤIDリストLayerIdListTargetに含まれないＶＰＳは、該ＶＰＳのレイヤ識別子を更新せずに、該ＶＰＳのＮＡＬユニットの破棄を省略し、抽出後のターゲットセットTargetSetのビットストリームに該ＶＰＳが含まれるようにしてもよい。以下では、図２８を参照して、変形例１に係るビットストリーム抽出部１７’の動作について説明する。なお、実施例１に係るビットストリーム抽出部１７と共通の動作については、同一の符号を付与し、説明を省略する。
【０２５８】
（ＳＧ１０２a）対象ＮＡＬユニットのＮＡＬユニットタイプ(nal_unit_type)が、パラメータセットであるか否かを、図７に示す“nal_unit_type”と“Name of nal_unit_type”に基づいて判定する。ここでは、後述するコンフォーマンス条件ＣＹ１を満たすため、ＮＡＬユニットタイプが、“VPS_NUT”(nal_unit_type==32)であるかを判定する。すなわち、ＮＡＬユニットタイプが、ビデオパラメータセットの場合（SG102aでYES）、ステップSG107へ遷移し、該VPSに関するステップSG105a、SG106aの動作を省略する。それ以外の場合（SG102aでNo）、ステップSG105aへ遷移する。
【０２５９】
（ＳＧ１０５a）対象ＮＡＬユニットのレイヤ識別子、テンポラル識別子がターゲットセットTargetSetに含まれるか否かを、対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTarget、及び対象最高次テンポラル識別子に基づいて判定する。詳細な動作については、図２７のステップSG105と同一であるため、説明を省略する。
【０２６０】
（ＳＧ１０６a）対象ＮＡＬユニットを破棄する。すなわち、対象ＮＡＬユニットは、ターゲットセットTargetSetに含まれないため、ビットストリーム抽出部１７’は、入力された階層符号化データＤＡＴＡから、対象ＮＡＬユニットを除去する。
【０２６１】
以上、変形例１に係るビットストリーム抽出部１７’の動作について説明したが、上記ステップに限定されず、実施可能な範囲で、ステップを変更しても構わない。
【０２６２】
以上説明した変形例１に係るビットストリーム抽出部１７’によれば、外部より供給される対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTarget、及び対象最高次テンポラル識別子HighestTidTargetに基づいて、ビットストリーム抽出処理を行い、入力される階層符号化データＤＡＴＡから、NALユニットタイプがＶＰＳであるＮＡＬユニットを除いて、対象最高次テンポラル識別子HighestTidTarget、及び対象レイヤセットLayerSetTargetのレイヤＩＤリストLayerIdListTargetによって定まる集合ターゲットセットTargetSetに含まれないNALユニットを除去（破棄）し、ターゲットセットTargetSetに含まれるＮＡＬユニットから構成される対象レイヤセット符号化データＤＡＴＡ#Ｔ(BitstreamToDecode)を抽出し、出力することを特徴とする。換言すれば、上記ビットストリーム抽出部１７’は、ビデオパラメータセットのレイヤ識別子がターゲットセットTargetSetに含まれない場合には、前記ビデオパラメータセットのＮＡＬユニットを破棄せずに、ターゲットセットTargetSetのビットストリームに、該ＶＰＳを含めている。
【０２６３】
なお、上記ビットストリーム抽出部１７’の動作は、「入力される階層符号化データＤＡＴＡを構成するＡＵには、ＡＵ内で最低次のレイヤ識別子を有するVPSが最大で１つ含まれること」を前提にしているが、これに限定されない。例えば、ＡＵ内で最低次のレイヤ識別子以外のレイヤ識別子を有するＶＰＳが、ＡＵ内に含まれていてもよい。この場合、ビットストリーム抽出部１７’は、ステップSG102aにおいて、「VPSのレイヤ識別子は、ターゲットセットTargetSetに含まれないレイヤ識別子で、最低次のレイヤ識別子であるか？」という条件を追加すればよい。通常は、レイヤ識別子“nuhLayerId=0”のＶＰＳが最低次のレイヤ識別子を有するＶＰＳとなるため、該ＶＰＳをターゲットセットTargetSetに含めるVPSとし、それ以外のターゲットセットTargetSetに含まれないＶＰＳは破棄する。
【０２６４】
以上の変形例１に係るビットストリーム抽出部１７’によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットにVPSが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０２６５】
（ビットストリーム抽出部１７の変形例１に係るＶＰＳの制約）
なお、変形例１に係るビットストリーム抽出部１７’に記載したビットストリーム抽出を行うために、ビットストリームコンフォーマンスとして、ビットストリームは、以下の条件ＣＹ１を少なくとも満たさなければならない。
【０２６６】
ＣＹ１：「ターゲットセットTargetSet（レイヤセット）には、全レイヤで最低次のレイヤ識別子と等しいレイヤ識別子を有するVPSが含まれること」
上記ビットストリーム制約ＣＹ１は、換言すれば、「アクセスユニット内に含まれるVPSは、全レイヤ（アクセスユニットに含まれないレイヤを含む）で最低次のレイヤ識別子を有するVCLと同一のレイヤに属する」ということである。
【０２６７】
「アクセスユニット内に含まれるVPSは、全レイヤ（アクセスユニットに含まれないレイヤを含む）で最低次のレイヤ識別子を有するVCLと同一のレイヤに属する」ということは、「レイヤセットＡのサブセットであるレイヤセットＢ内のレイヤが、レイヤセットＡにおいては、“レイヤセットＡに含まれるが、レイヤセットＢに含まれない”レイヤのVPSを参照する場合、ビットストリーム抽出により抽出したレイヤセットＢでは、前記VPSと同一の符号化パラメータを有するVPSを、レイヤセットＢに含めること」を意味する。なお、前記VPSと同一の符号化パラメータを有するVPSとは、レイヤ識別子、テンポラル識別子を除き、VPS識別子、及びその他のVPS内のシンタックスが前記VPSと同一であること指す。従って、上記ビットストリーム制約を設けることで、ビットストリーム抽出後のビットストリーム上で、レイヤセットにVPSが含まれないという問題を解消することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０２６８】
なお、上記コンフォーマンス条件ＣＹ１では、「ターゲットセットTargetSet（レイヤセット）には、全レイヤで最低次のレイヤ識別子と等しいレイヤ識別子を有するVPSが含まれること」としたが、これに限定されない。例えば、最低次のレイヤ識別子をレイヤ識別子nuhLayerId=0(nuh_layer_id=0)としてもよい。すなわち、ビットストリームコンフォーマンスとして、ビットストリームは、以下の条件ＣＹ２を少なくとも満たさなければならない。
【０２６９】
ＣＹ２：「ターゲットセットTargetSet（レイヤセット）には、レイヤ識別子nuh_layer_id=0と等しいレイヤ識別子を有するVPSが含まれること」
上記コンフォーマンス条件ＣＹ２の場合も、コンフォーマンス条件ＣＹ１と同様の効果を奏する。さらに、従来技術（非特許文献２〜３）の制約（VPSのレイヤ識別子は０である）時において、ビットストリーム抽出時に、TargetSetのあるレイヤが、nuh_layer_id=0のVPSを参照する場合において、TargetSetに含まれない、nuh_layer_id=0のVPSが破棄されることがなくなるため、TargetSetのあるレイヤが復号不可となることを防止することが可能である。
【０２７０】
（ビットストリーム抽出部１７の変形例１a）
さらに、従来技術（非特許文献４）の制約（VPS/SPS/PPSのレイヤ識別子は０であること）時においては、ビットストリームコンフォーマンスとして、ＣＹ２に追加して、ＣＹ３、ＣＹ４を少なくとも満たさなければならない。
【０２７１】
ＣＹ３：「ターゲットセットTargetSet（レイヤセット）には、レイヤ識別子nuh_layer_id=0と等しいレイヤ識別子を有するSPSが含まれること」
ＣＹ４：「ターゲットセットTargetSet（レイヤセット）には、レイヤ識別子nuh_layer_id=0と等しいレイヤ識別子を有するPPSが含まれること」
上記ビットストリーム制約ＣＹ２〜ＣＹ４を適用する場合、変形例１に係るビットストリーム抽出部１７’の動作（図２８のステップG102）を次の処理（ＳＧ１０２a’）へ変更すればよい。
【０２７２】
（ＳＧ１０２a’）対象ＮＡＬユニットのＮＡＬユニットタイプ(nal_unit_type)が、パラメータセットであるか否かを、図７に示す“nal_unit_type”と“Name of nal_unit_type”に基づいて判定する。ここでは、コンフォーマンス条件ＣＹ２〜ＣＹ４を満たすため、ＮＡＬユニットタイプが、“VPS_NUT”(nal_unit_type==32)、または、“SPS_NUT”(nal_unit_type==33)、または、“PPS_NUT”(nal_unit_type==34)、であるかを判定する。すなわち、ＮＡＬユニットタイプが、VPS、SPS、PPSのいずれかのパラメータセットである場合（SG102a’でYES）、ステップSG107へ遷移する。それ以外の場合（SG102aでNo）、ステップSG105aへ遷移する。
【０２７３】
以上のビットストリーム抽出の動作について説明したが、上記ステップに限定されず、実施可能な範囲で、ステップを変更しても構わない。なお、上記変更を加えた、ビットストリーム抽出部１７’を変形例１ａに係るビットストリーム抽出部１７’aとする。
【０２７４】
以上のビットストリーム抽出部１７’aによれば、従来技術（非特許文献４）の制約（VPS/SPS/PPSのレイヤ識別子は０である）時において、ビットストリーム抽出時に、TargetSetのあるレイヤが、nuh_layer_id=0のVPS/SPS/PPSを参照する場合において、TargetSetに含まれない、nuh_layer_id=0のVPS/SPS/PPSが破棄されることがなくなるため、TargetSetのあるレイヤが復号不可となることを防止することが可能である。
【０２７５】
（ビットストリーム抽出部１７の変形例２）
実施例１に係るビットストリーム抽出部１７では、図２７示すように、ターゲットセットに、ＶＰＳのレイヤ識別子が前記ターゲットセットTargetSetに含まれない場合には、前記ＶＰＳのレイヤ識別子を、ターゲットセットTargetSet内で、最低次のレイヤ識別子へ更新する（書き換える）ことで、ターゲットセットTargetSetに必ずＶＰＳが含まれるようしているが、これに限定されない。例えば、ビットストリーム抽出部１７は、ターゲットセットTargetSet内の各レイヤが依存する、ターゲットセットTargetSetを構成するレイヤIDリストLayerIdListTargetに含まれない、参照レイヤ（直接参照レイヤ、及び間接参照レイヤ）に関するVCL及びnon-VCLののＮＡＬユニットの破棄を省略し、抽出後のターゲットセットTargetSetのビットストリームに該VCL及びnon-VCLが含まれるようにしてもよい。以下では、図２９を参照して、変形例２に係るビットストリーム抽出部１７’’の動作について説明する。なお、実施例１に係るビットストリーム抽出部１７と共通の動作については、同一の符号を付与し、説明を省略する。なお、ビットストリーム抽出部１７’’は、ＶＰＳの符号化パラメータから依存レイヤを導出するために、パラメータセット復号部１２におけるＶＰＳの復号手段と同一の機能を有する。図２９は、ビットストリーム抽出部１７’’におけるアクセスユニット単位のビットストリーム抽出処理を示すフロー図である。
【０２７６】
（ＳＧ１０２ｂ）対象ＮＡＬユニットのＮＡＬユニットタイプ(nal_unit_type)が、パラメータセットであるか否かを、図７に示す“nal_unit_type”と“Name of nal_unit_type”に基づいて判定する。ここでは、後述のコンフォーマンス条件ＣＺ１を満たすため、ＮＡＬユニットタイプが、“VPS_NUT”(nal_unit_type==32)であるかを判定する。すなわち、ＮＡＬユニットタイプが、ビデオパラメータセットの場合（SG102ｂでYES）、ステップSG103へ遷移する。それ以外の場合（SG102でNo）、ステップSG105へ遷移する。
【０２７７】
（ＳＧ１０Ｂ）ビットストリーム抽出部１７’’は、ＶＰＳである対象ＮＡＬユニットを復号し、ターゲットセットTargetSetに含まれる各レイヤの依存レイヤ（依存レイヤセット）を導出する。具体的には、（参照レイヤIDリスト、及び直接参照レイヤIDXリストの導出）及び、（間接依存フラグ、依存フラグの導出）において説明した手順に沿って、レイヤ識別子nuhLId#iのi番目のレイヤに対するレイヤ識別子nuhLId#jのｊ番目のレイヤが直接参照レイヤ、または間接参照レイヤであるか否かを示すレイヤ識別子間依存フラグLIdDipendecyFlag[][]を導出する。なお、レイヤ識別子間依存フラグの代わりに、既述のi番目のレイヤ(レイヤ識別子nuhLId#i)に対するｊ番目のレイヤ(レイヤ識別子nuhLId#j)が直接参照レイヤ、または間接参照レイヤであるかを示す依存フラグDependencyFlag[i][j]を導出してもよい。
【０２７８】
（ＳＧ１０５ｂ）対象ＮＡＬユニットのレイヤ識別子、テンポラル識別子がターゲットセットTargetSetに含まれるか否か、または、ターゲットセットTargetSetに含まれるレイヤの依存レイヤであるか否かを、対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTarget、及び対象最高次テンポラル識別子、及び依存フラグ（レイヤ識別子間依存フラグLidDependencyFlag[][]）に基づいて判定する。より具体的には、以下の(1)〜（3）の条件を満たすか判定し、少なくとも何れかの条件を満たす（真である）場合(SG105でYes)、ステップSG106へ遷移する。それ以外の場合(SG105bでNo)、ステップSG107へ遷移する。
【０２７９】
（１）「対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTargetに、対象ＮＡＬユニットのレイヤ識別子と同一の値がある」の場合、真と判定し、それ以外の場合（対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTargetに、対象ＮＡＬユニットのレイヤ識別子と同一の値がない）、偽と判定する。
【０２８０】
（２）「対象ＮＡＬユニットのテンポラル識別子が対象最高次テンポラル識別子HighestTidTarget以下である」場合、真と判定し、それ以外の場合（対象ＮＡＬユニットのテンポラル識別子が対象最高次テンポラル識別子HighestTidTargetより大きい）、偽と判定する。
【０２８１】
（３）対象ＮＡＬユニットのレイヤ識別子nuhLayerIdは、対象レイヤセットLayerSetTargetに含まれる各レイヤ(LayerIdListTarget[k](k=0…n-1,(nはLayerSetTargetに含まれるレイヤ数))に対する直接参照レイヤ、または間接参照レイヤであるかを、レイヤ識別子間依存フラグLIdDepedencyFlag[LayerIdListTarget[k]][nuhLayerId](k=0…n-1)に基づいて判定する。
【０２８２】
具体的には、対象レイヤセットLayerSetTargetに含まれるいずれかのレイヤkにおいて、レイヤ識別子間依存フラグLIdDependencyFlag[LayerIdListTarget[k]][nuhLayerId]の値が１の場合、真と判定し、それ以外の場合（対象レイヤセットLayerSetTargetに含まれる全てのレイヤkにおいて、レイヤ識別子間依存フラグLIdDependencyFlag[[LayerIdListTarget[k]][nuhLayerId]の値が０）、偽と判定する。なお、上記判定は、次の式によっても導出されるDepFlagに基づいてもよい。すなわち、レイヤ識別子間依存フラグLIdDepedencyFlag[LayerIdListTarget[k]][nuhLayerId](k=0…n-1)の論理和であるDepFlagが１の場合は、真と判定し、DepFlagが０の場合は偽と判定する。
DepFlag=0; for(k=0; i<k; i++){ DepFlag |= LIdDependencyFlag[LayerIdListTarget[k]][nuhLayerId]; }
（ＳＧ１０６ｂ）対象ＮＡＬユニットを破棄する。すなわち、対象ＮＡＬユニットは、ターゲットセットTargetSet、またはターゲットセットTargetの依存レイヤに含まれないため、ビットストリーム抽出部１７は、入力された階層符号化データＤＡＴＡから、対象ＮＡＬユニットを除去する。
【０２８３】
以上、変形例２に係るビットストリーム抽出部１７’’の動作について説明したが、上記ステップに限定されず、実施可能な範囲で、ステップを変更しても構わない。
【０２８４】
以上説明した変形例２に係るビットストリーム抽出部１７’’によれば、外部より供給される対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTarget、対象最高次テンポラル識別子HighestTidTarget、及びＶＰＳから導出される依存レイヤ情報（依存フラグ（LIdDependencyFlag[][]、またはDependencyFlag[][]））に基づいて、ビットストリーム抽出処理を行い、入力される階層符号化データＤＡＴＡから、対象最高次テンポラル識別子HighestTidTarget、及び対象レイヤセットLayerSetTargetのレイヤＩＤリストLayerIdListTargetによって定まる集合ターゲットセットTargetSet、及びターゲットセットTargetSetの依存レイヤに含まれないNALユニットを除去（破棄）し、ターゲットセットTargetSet、及びターゲットセットTargetSetの依存レイヤに含まれるＮＡＬユニットから構成される対象レイヤセット符号化データＤＡＴＡ#Ｔ(BitstreamToDecode)を抽出し、出力することを特徴とする。換言すれば、上記ビットストリーム抽出部１７’’は、ターゲットセットTargetSetの依存レイヤに含まれるＮＡＬユニットを破棄せずに、ターゲットセットTargetSetのビットストリームに、該依存レイヤに含まれるＮＡＬユニットを含めている。
【０２８５】
なお、上記ビットストリーム抽出部１７’’の動作は、「入力される階層符号化データＤＡＴＡを構成するＡＵには、ＡＵ内で最低次のレイヤ識別子を有するＶＰＳが最大で１つ含まれること」を前提にしているが、これに限定されない。例えば、ＡＵ内で最低次のレイヤ識別子以外のレイヤ識別子を有するＶＰＳが、ＡＵ内に含まれていてもよい。この場合、ビットストリーム抽出部１７’’は、ステップSG102b〜SG10Bにおいて、レイヤ依存情報を導出する対象とするＶＰＳは、ターゲットセットTargetSetに含まれないレイヤ識別子で、最低次のレイヤ識別子とすればよい。通常は、レイヤ識別子“nuhLayerId=0”のＶＰＳが最低次のレイヤ識別子を有するＶＰＳとなるため、該ＶＰＳからレイヤ依存情報を導出すればよく、それ以外のターゲットセットTargetSetに含まれないＶＰＳは破棄する。
【０２８６】
以上の本実施例に係るビットストリーム抽出部１７’’によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットに、レイヤセット内のレイヤから参照される依存レイヤ（直接参照レイヤ、または間接参照レイヤ）に関するVCL、non-VCLのNALユニットが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０２８７】
（ビットストリーム抽出部１７の変形例２に係るビットストリーム制約）
なお、変形例２に係るビットストリーム抽出部１７’’に記載したビットストリーム抽出を行うために、ビットストリームコンフォーマンスとして、ビットストリームは、以下の条件ＣＺ１を少なくとも満たさなければならない。
【０２８８】
ＣＺ１：「ターゲットセットTargetSet（レイヤセット）には、ターゲットセットTargetSet内の各レイヤが依存(参照)する依存レイヤが含まれること」
上記ビットストリーム制約ＣＺ１は、換言すれば、「レイヤセット内のある対象レイヤが参照する依存レイヤは、同一レイヤセットに含まれること」ということである。
【０２８９】
「レイヤセット内には、レイヤセット内のある対象レイヤが参照する依存レイヤは、同一レイヤセットに含まれること」ということは、「レイヤセットＡのサブセットであるレイヤセットＢ内のレイヤが、レイヤセットＡにおいては、“レイヤセットＡに含まれるが、レイヤセットＢに含まれない”レイヤのVCLまたは、non-VCLを参照するケースを禁止すること」を意味する。従って、上記ビットストリーム制約を設けることで、ビットストリーム抽出後のビットストリーム上で、レイヤセット内のレイヤから参照される依存レイヤ（直接参照レイヤ、または間接参照レイヤ）に関するVCL、non-VCLのNALユニットが含まれないという問題を解消することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０２９０】
（ビットストリーム抽出部１７の変形例３）
さらに、ビットストリーム抽出部１７は、ビットストリーム抽出部１７の変形例１a及び、変形２を組み合わせて構成してもよい。すなわち、「ターゲットセットTargetSet内の各レイヤが依存する参照レイヤ（直接参照レイヤ、及び間接参照レイヤ）のレイヤ識別子がターゲットセットTargetSetに含まれない場合、該レイヤ識別子を有する参照レイヤのVCL及びnon-VCLのNALユニット」の破棄を省略し、かつ、「ターゲットセットTargetSetにレイヤ識別子nuh_layer_id=0が含まれない場合、レイヤ識別子nuh_layer_id=0であるパラメータセット（VPS、SPS、PPS）を含むnon-VCLのNALユニット」の破棄を省略し、抽出後のターゲットセットTargetSetのビットストリームに該VCL及びnon-VCLが含まれるようにしてもよい。この場合、ビットストリームコンフォーマンスとして、コンフォーマンス条件ＣＺ１に加えて、パラメータセット（SPS、PPS）に関するコンフォーマンス条件ＣＡ１、及びＣＡ２を少なくとも満たさなければならない。
【０２９１】
ＣＡ１：「レイヤ識別子nuh_layer_id=layerIdAであるレイヤlayerAに対するアクティブSPSのレイヤ識別子は、０、または、layerIdA、または、レイヤlayerAの直接参照レイヤ、または、間接参照レイヤのレイヤ識別子nuh_layer_idの値と等しいこと」
ＣＡ２：「レイヤ識別子nuh_layer_id=layerIdAであるレイヤlayerAに対するアクティブPPSのレイヤ識別子は、０、または、layerIdA、または、レイヤlayerAの直接参照レイヤ、または、間接参照レイヤのレイヤ識別子nuh_layer_idの値と等しいこと」
上記コンフォーマンス条件ＣＺ１、及びＣＡ１〜ＣＡ２、及び従来の「VPSのレイヤ識別子nuh_layer_idは０であること」を適用する場合、変形例３に係るビットストリーム抽出部１７’’’の動作を、図３０を参照して説明する。なお、変形例３に係るビットストリーム抽出部１７’’と共通の動作については、同一の符号を付与し、説明を省略する。なお、ビットストリーム抽出部１７’’’は、ＶＰＳの符号化パラメータから依存レイヤを導出するために、パラメータセット復号部１２におけるＶＰＳの復号手段と同一の機能を有する。図３０は、ビットストリーム抽出部１７’’’におけるアクセスユニット単位のビットストリーム抽出処理を示すフロー図である。
【０２９２】
（ＳＧ１０２ｂ）対象ＮＡＬユニットのＮＡＬユニットタイプ(nal_unit_type)が、パラメータセットであるか否かを、図７に示す“nal_unit_type”と“Name of nal_unit_type”に基づいて判定する。ここでは、コンフォーマンス条件ＣＺ１を満たすため、ＮＡＬユニットタイプが、“VPS_NUT”(nal_unit_type==32)であるかを判定する。すなわち、ＮＡＬユニットタイプが、ビデオパラメータセットの場合（SG102ｂでYes）、ステップSG10Cへ遷移する。それ以外の場合（SG102bでNo）、ステップSG10Bへ遷移する。
【０２９３】
（ＳＧ１０Ｂ）ビットストリーム抽出部１７’’’は、ＶＰＳである対象ＮＡＬユニットを復号し、ターゲットセットTargetSetに含まれる各レイヤの依存レイヤ（依存レイヤセット）を導出する。図２９のステップSG10Bと処理は同一であるため説明を省略する。
【０２９４】
（ＳＧ１０Ｃ）条件（１）、及び（２）を全て満たすか判定する。
【０２９５】
（１）対象ＮＡＬユニットのＮＡＬユニットタイプ(nal_unit_type)が、パラメータセットである否かを、図７に示す“nal_unit_type”と“Name of nal_unit_type”に基づいて判定する。具体的には、ＮＡＬユニットタイプが、“VPS_NUT”(nal_unit_type==32)、または、“SPS_NUT”(nal_unit_type==33)、または、“PPS_NUT”(nal_unit_type==34)であるかを判定する。すなわち、ＮＡＬユニットタイプが、VPS、SPS、PPSのいずれかのパラメータセットである場合は、真と判定し、それ以外の場合は偽と判定する。
【０２９６】
（２）対象ＮＡＬユニットのレイヤ識別子が０であるか判定する。対象ＮＡＬユニットのレイヤ識別子が０である場合は、真と判定し、それ以外の場合は偽と判定する。
【０２９７】
上記条件（１）及び（２）が全て真の場合（対象ＮＡＬユニットのＮＡＬユニットタイプがパラメータセット（VPS、または、SPS、またはPPS）であり、かつ、対象ＮＡＬユニットのレイヤ識別子が０である）(SG10CでYes)、ステップSG0107へ遷移する。それ以外の場合(SG10CでNo)は、ステップSG105bへ遷移する。
【０２９８】
（ＳＧ１０５ｂ）対象ＮＡＬユニットのレイヤ識別子、テンポラル識別子がターゲットセットTargetSetに含まれるか否か、または、ターゲットセットTargetSetに含まれるレイヤの依存レイヤであるか否かを、対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTarget、及び対象最高次テンポラル識別子、及び依存フラグ（レイヤ識別子間依存フラグLIdDependencyFlag[][]）に基づいて判定する。図２９のステップSG105bと処理は同一であるため説明を省略する。
【０２９９】
（ＳＧ１０６ｂ）対象ＮＡＬユニットを破棄する。すなわち、対象ＮＡＬユニットは、ターゲットセットTargetSetに含まれない、またはターゲットセットTargetSetの各レイヤの依存レイヤでないため、ビットストリーム抽出部１７’’’は、入力された階層符号化データＤＡＴＡから、対象ＮＡＬユニットを除去する。
【０３００】
以上、変形例３に係るビットストリーム抽出部１７’’’の動作について説明したが、上記ステップに限定されず、実施可能な範囲で、ステップを変更しても構わない。
【０３０１】
以上説明した変形例３に係るビットストリーム抽出部１７’’’によれば、外部より供給される対象レイヤセットLayerSetTargetを構成するレイヤのレイヤＩＤリストLayerIdListTarget、対象最高次テンポラル識別子HighestTidTarget、及びＶＰＳから導出される依存レイヤ情報（依存フラグ（LIdDependencyFlag[][]、またはDependencyFlag[][]））に基づいて、ビットストリーム抽出処理を行い、入力される階層符号化データＤＡＴＡから、レイヤ識別子nuh_layer_id=0であるパラメータセット（VPS、SPS、PPS）を含むＮＡＬユニットを除いて、対象最高次テンポラル識別子HighestTidTarget、及び対象レイヤセットLayerSetTargetのレイヤＩＤリストLayerIdListTargetによって定まる集合ターゲットセットTargetSetに含まれないレイヤ識別子を有するNALユニット、及びターゲットセットTargetSet内の各レイヤの依存レイヤのレイヤ識別子を有さないNALユニットを除去（破棄）し、ターゲットセットTargetSetに含まれるレイヤ識別子を有するNALユニット、及びターゲットセットTargetSet内の各レイヤの依存レイヤのレイヤ識別子を有するＮＡＬユニット、及びnuh_layer_id=0であるパラメータセット（VPS/SPS/PPS）を含むＮＡＬユニットから構成される対象レイヤセット符号化データＤＡＴＡ#Ｔ(BitstreamToDecode)を抽出し、出力することを特徴とする。換言すれば、上記ビットストリーム抽出部１７’’’は、ターゲットセットTargetSet内の各レイヤの依存レイヤのレイヤ識別子を有するＮＡＬユニット、及びnuh_layer_id=0であるパラメータセットのＮＡＬユニットを破棄せずに、ターゲットセットTargetSetのビットストリームに、該依存レイヤに含まれるＮＡＬユニット、及びnuh_layer_id=0であるパラメータセットのＮＡＬユニットを含めている。
【０３０２】
なお、上記ビットストリーム抽出部１７’’’の動作は、「入力される階層符号化データＤＡＴＡを構成するＡＵには、ＡＵ内で最低次のレイヤ識別子を有するＶＰＳが最大で１つ含まれること」を前提にしているが、これに限定されない。例えば、ＡＵ内で最低次のレイヤ識別子以外のレイヤ識別子を有するＶＰＳが、ＡＵ内に含まれていてもよい。この場合、ビットストリーム抽出部１７’’’は、ステップSG102b〜SG10Bにおいて、レイヤ依存情報を導出する対象とするＶＰＳは、ターゲットセットTargetSetに含まれないレイヤ識別子で、最低次のレイヤ識別子とすればよい。通常は、レイヤ識別子“nuhLayerId=0”のＶＰＳが最低次のレイヤ識別子を有するＶＰＳとなるため、該ＶＰＳからレイヤ依存情報を導出すればよく、それ以外のターゲットセットTargetSetに含まれないＶＰＳは破棄(あるいは無視)する。
【０３０３】
以上の本実施例に係るビットストリーム抽出部１７’’’によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットに、レイヤセット内のレイヤから参照される依存レイヤ（直接参照レイヤ、または間接参照レイヤ）に関するVCL、non-VCLのNALユニット、及びnuh_layer_id=0であるパラメータセット（VPS/SPS/PPS）のNALユニットが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３０４】
〔階層動画像符号化装置〕
以下では、本実施形態に係る階層動画像符号化装置２の構成について、図２２を参照して説明する。
【０３０５】
（階層動画像符号化装置の構成）
図２２を用いて、階層動画像符号化装置２の概略構成を説明する。図２２は、階層動画像符号化装置２の概略的構成を示した機能ブロック図である。階層動画像符号化装置２は、符号化対象とするレイヤセット（対象レイヤセット）に含まれる各レイヤの入力画像ＰＩＮ#Ｔ(ピクチャ)を符号化して、対象レイヤセットの階層符号化データＤＡＴＡを生成する。すなわち、動画像符号化装置２は、対象レイヤセットに含まれる、最低次のレイヤＩＤから最高次のレイヤＩＤまで、昇順で、各レイヤのピクチャを符号化し、その符号化データを生成する。言い換えれば、対象レイヤセットのレイヤＩＤリストLayerSetLayerIdList[0]…LayerSetIdList[N-1](Nは対象レイヤセットに含まれるレイヤ数)の順で、各レイヤのピクチャを符号化する。なお、階層動画像符号化装置２は、階層動画像復号装置１（及びその変形例を含む）が復号可能なビットストリームであることを保障するため、前述のＣＸ１（ＣＸ１’）、あるいはＣＸ２(ＣＸ２’)、あるいはＣＹ１、あるいはＣＹ２、あるいは（ＣＹ２かつＣＹ３かつＣＹ４）、あるいはＣＺ１、あるいは、（ＣＺ１かつＣＡ１かつＣＡ２かつ「VPSのレイヤ識別子nuh_layer_idは０であること」）のビットストリームコンフォーマンスを満たすように、対象レイヤセットの階層符号化データＤＡＴＡを生成する。上記ビットストリームコンフォーマンスを満たす階層符号化データＤＡＴＡを生成することで、階層復号装置１において、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３０６】
図２２に示すように階層動画像符号化装置２は、対象レイヤセットピクチャ符号化部２０、及びＮＡＬ多重化部２１を含んで備える。さらに、対象レイヤセットピクチャ符号化部２０は、パラメータセット符号化部２２、ピクチャ符号化部２４、復号ピクチャ管理部１５、および符号化パラメータ決定部２６を含んで構成される。
【０３０７】
復号ピクチャ管理部１５は、既に説明した階層動画像復号装置１の備える復号ピクチャ管理部１５と同一の構成要素である。ただし、階層動画像符号化装置２の備える復号ピクチャ管理部１５では、内部のＤＰＢに記録されたピクチャを出力ピクチャとして出力する必要はないため、当該出力は省略可能である。なお、階層動画像復号装置１の復号ピクチャ管理部１５の説明において「復号」として説明した記載は「符号化」と置き換えることで、階層動画像符号化装置２の備える復号ピクチャ管理部１５にも適用できる。
【０３０８】
ＮＡＬ多重化部２１は、入力される対象レイヤセットの各レイヤのVCL、及びnon-VCLを、ＮＡＬユニットに格納することでＮＡＬ多重化した階層動画像符号化データＤＡＴＡ#Ｔを生成し、外部へ出力する。言い換えれば、ＮＡＬ多重化部２１は、対象レイヤセットピクチャ符号化部２０から供給されるnon-VCLの符号化データ、VCLの符号化データ、及び各non-VCL、VCLに対応するＮＡＬユニットタイプ、レイヤ識別子、テンポラル識別子を、ＮＡＬユニットに格納して（符号化して）、ＮＡＬ多重化した階層符号化データＤＡＴＡ#Ｔを生成する。
【０３０９】
符号化パラメータ決定部２６は、符号化パラメータの複数のセットのうち、１つのセットを選択する。符号化パラメータとは、各パラメータセット（ＶＰＳ、ＳＰＳ、ＰＰＳ）に関連した各種パラメータや、ピクチャを符号化するための予測パラメータやこの予測パラメータに関連して生成される符号化の対象となるパラメータである。符号化パラメータ決定部２６は、上記符号化パラメータの複数のセットの各々について情報量の大きさと符号化誤差を示すコスト値を算出する。コスト値は、例えば、符号量と二乗誤差に係数λを乗じた値との和である。符号量は、量子化誤差と符号化パラメータを可変長符号化して得られる対象レイヤセットの各レイヤの符号化データの情報量である。二乗誤差は、入力画像ＰＩＮ#Ｔと予測画像との差分値の二乗値についての画素間の総和である。係数λは、予め設定されたゼロよりも大きい実数である。符号化パラメータ決定部２６は、算出したコスト値が最小となる符号化パラメータのセットを選択し、選択した各符号化パラメータのセットをパラメータセット符号化部２２、及びピクチャ符号化部２４へ供給する。なお、符号化パラメータ決定部２６から出力されるパラメータセットは、符号化データに含まれるパラメータセット（VPS、SPS、PPS）に係るシンタックスのシンタックス値、および、該シンタックス値より導出される変数の集合と表現することもできる。
【０３１０】
パラメータセット符号化部２２は、符号化パラメータ決定部２６から入力される各パラメータセットの符号化パラメータと入力画像に基づいて、入力画像の符号化に用いるパラメータセット（ＶＰＳ、ＳＰＳ、およびＳＰＳ）を設定し、各パラメータセットをnon-VCL NALユニットに格納されるデータとして、ＮＡＬ多重化部２１へ供給する。一般に、パラメータセットの符号化は既定のシンタックス表に基づいて実行される。すなわち、シンタックス表の定める手順に従って、シンタックス表に含まれるシンタックスのシンタックス値を符号化し、ビット列を生成し、符号化データとして出力する。なお、パラメータセット符号化部２２で符号化されるパラメータセットには、階層動画像復号装置１の備えるパラメータセット復号部１２の説明で記載したレイヤ間依存情報(直接依存フラグ、レイヤ依存タイプビット長、レイヤ依存タイプ)を含んでいる。パラメータセット符号化部２２は、レイヤ依存タイプの一部として、non-VCL依存有無フラグを符号化する。なお、パラメータセット符号化部２２は、ＮＡＬ多重化部２１へnon-VCLの符号化データを供給するときに、non-VCLに対応するＮＡＬユニットタイプ、レイヤ識別子、及びテンポラル識別子も付与して出力する。
【０３１１】
また、パラメータセット符号化部２２で生成されるパラメータセットには、該パラメータセットを識別する識別子、及び各レイヤのピクチャを復号するために参照する該パラメータセットが参照するパラメータセット（アクティブパラメータセット）を指定するアクティブパラメータセット識別子が含まれる。具体的には、ビデオパラメータセットＶＰＳであれば、該ＶＰＳを識別するＶＰＳ識別子が含まれる。シーケンスパラメータセットＳＰＳであれば、該ＳＰＳを識別するＳＰＳ識別子(sps_seq_parameter_set_id)、及び該ＳＰＳや他のシンタックスが参照するＶＰＳを特定するアクティブＶＰＳ識別子(sps_video_parameter_set_id)が含まれる。ピクチャパラメータセットＰＰＳであれば、該ＰＰＳを識別するＰＰＳ識別子(pps_pic_parameter_set_id)、及び該ＰＰＳや他のシンタックスが参照するＳＰＳを特定するアクティブＳＰＳ識別子(pps_seq_parameter_set_id)が含まれる。
【０３１２】
ピクチャ符号化部２４は、入力される各レイヤの入力画像ＰＩＮ#Ｔ、符号化パラメータ決定部２６より供給されるパラメータセット、および復号ピクチャ管理部部１５に記録されている参照ピクチャに基づいて、ピクチャを構成するスライスに対応する各レイヤの入力画像の一部を符号化して、当該部分の符号化データを生成し、VCL NALユニットに格納されるデータとして、ＮＡＬ多重化部２１へ供給する。ピクチャ符号化部２４の詳細な説明は後述する。なお、ピクチャ符号化部２４は、ＮＡＬ多重化部２１へVCLの符号化データを供給するときに、VCLに対応するＮＡＬユニットタイプ、レイヤ識別子、及びテンポラル識別子も付与して出力する。
【０３１３】
（ピクチャ符号化部２４）
図２３を参照して、ピクチャ符号化部２４の構成の詳細を説明する。図２３は、ピクチャ符号化部２４の概略的構成を示した機能ブロック図である。
【０３１４】
図２３に示すように、ピクチャ符号化部２４は、スライスヘッダ符号化部２４１、及びＣＴＵ符号化部２４２を含んで構成される。
【０３１５】
スライスヘッダ符号化部２４１は、入力されるアクティブパラメータセットに基づいてスライス単位で入力される各レイヤの入力画像の符号化に用いるスライスヘッダを生成する。生成されたスライスヘッダは、スライス符号化データの一部として出力されるとともに、入力画像と共にＣＴＵ符号化部２４２へ供給される。なお、スライスヘッダ符号化部２４１で生成されるスライスヘッダには、各レイヤのピクチャを復号するために参照するピクチャパラメータセットＰＰＳ(アクティブＰＰＳ)を指定するアクティブＰＰＳ識別子が含まれる。
【０３１６】
ＣＴＵ符号化部２４２は、入力されるアクティブパラメータセット、スライスヘッダに基づいて、入力画像（対象スライス部分）をＣＴＵ単位で符号化して、対象スライスに係るスライスデータおよび復号画像（復号ピクチャ）を生成して出力する。より具体的には、ＣＴＵ符号化部２４２は、パラメータセットが含むCTBサイズの大きさのCTBを単位として対象スライスの入力画像を分割し、各CTBに対応する画像を一つのCTUとして符号化する。CTUの符号化は、予測残差符号化部２４２１、予測画像符号化部２４２２、CTU復号画像生成部２４２３により実行される。
【０３１７】
予測残差符号化部２４２１は、入力される入力画像と予測画像の差分画像を、変換・量子化して得られる量子化残差情報（ＴＴ情報）を、スライス符号化データに含まれるスライスデータの一部として出力する。また、量子化残差情報に逆変換・逆量子化を適用して予測残差を復元し、復元した予測残差をCTU復号画像生成部２４２３に出力する。
【０３１８】
予測画像符号化部２４２２は、符号化パラメータ決定部２６で決定された、対象スライスに含まれる対象CTUの予測方式および予測パラメータに基づいて、予測画像を生成して予測残差符号化部２４２１とCTU復号画像生成部２４２３に出力する。なお、予測方式や予測パラメータの情報は予測情報（ＰＴ情報）として可変長符号化されて、スライス符号化データに含まれるスライスデータの一部として出力される。予測画像符号化部２４２２で選択可能な予測方式には、少なくともレイヤ間画像予測が含まれている。なお、インター予測、または、レイヤ間画像予測を使用する場合は、復号ピクチャ管理部１５より対応する参照ピクチャを読み出す。
【０３１９】
CTU復号画像生成部２４２３は、階層動画像復号装置１の備えるCTU復号画像制生成部１４２３と同一の構成要素であるため、説明を省略する。なお、対象ＣＴＵの復号画像は、復号ピクチャ管理部１５へ供給され、内部のＤＰＢに記録される。
【０３２０】
＜ピクチャ符号化部２４の符号化プロセス＞
以下、図２４を参照して、ピクチャ符号化部２４における対象レイヤiのピクチャの符号化の概略的な動作について説明する。図２４は、ピクチャ符号化部２４における対象レイヤiのピクチャを構成するスライス単位の符号化プロセスを示すフロー図である。
【０３２１】
（ＳＥ１０１）符号化対象スライスの先頭スライスフラグ(first_slice_segment_in_pic_flag)を符号化する。すなわち、スライス単位に分割された入力画像（以降、符号化対象スライス）が、ピクチャ内の符号化順（復号順）（以降、処理順）で先頭スライスであれば、先頭スライスフラグ(first_slice_segment_in_pic_flag)が１である。符号化対象スライスが先頭スライスでなければ、先頭スライスフラグは０である。なお、先頭スライスフラグが１の場合、符号化対象スライスの先頭ＣＴＵアドレスを０に設定する。さらに、ピクチャ内の処理済みＣＴＵ数のカウンタnumCtuを０に設定する。先頭スライスフラグが０の場合、後述のＳＥ１０６で符号化されるスライスアドレスに基づいて、符号化対象スライスの先頭ＣＴＵアドレスを設定する。
【０３２２】
（ＳＥ１０２）符号化対象スライスの符号化時に参照するアクティブＰＰＳを指定するアクティブＰＰＳ識別子(slice_pic_paramter_set_id)を符号化する。
【０３２３】
（ＳＥ１０４）符号化パラメータ決定部２６で決定されたアクティブパラメータセットをフェッチする。すなわち、符号化対象スライスが参照するアクティブＰＰＳ識別子(slice_pic_parameter_set_id)と同一のＰＰＳ識別子(pps_pic_parameter_set_id)を有するＰＰＳをアクティブＰＰＳとし、符号化パラメータ決定部２６から、アクティブＰＰＳの符号化パラメータをフェッチする（読み出す）。さらに、アクティブＰＰＳ内のアクティブＳＰＳ識別子(pps_seq_parameter_set_id)と同一のＳＰＳ識別子(sps_seq_parameter_set_id)を有するＳＰＳをアクティブＳＰＳとし、符号化パラメータ決定部２６から、アクティブＳＰＳの符号化パラメータをフェッチする。さらに、アクティブＳＰＳ内のアクティブＶＰＳ識別子(sps_video_parameter_set_id)と同一のＶＰＳ識別子(vps_video_parameter_set_id)を有するＶＰＳをアクティブＶＰＳとし、符号化パラメータ決定部２６から、アクティブＶＰＳの符号化パラメータをフェッチする。
【０３２４】
（ＳＥ１０５）符号化対象スライスが、ピクチャ内の処理順で先頭スライスであるか否かを先頭スライスフラグに基づいて判定する。先頭スライスフラグが０の場合(SE105でYes)、ステップSE106へ遷移する。それ以外の場合(SE105でNo)、ステップSE106の処理をスキップする。なお、先頭スライスフラグが１の場合、符号化対象スライスのスライスアドレスは０である。
【０３２５】
（ＳＥ１０６）符号化対象スライスのスライスアドレス（slice_segment_address）を符号化する。なお、符号化対象スライスのスライスアドレス（符号化対象スライスの先頭ＣＵＴアドレス）は、例えば、ピクチャ内の処理済ＣＴＵ数のカウンタnumCtuに基づいて設定可能である。この場合、スライスアドレスslice_segment_adress＝numCtuである。すなわち、符号化対象スライスの先頭ＣＴＵアドレス＝numCtuでもある。なお、スライスアドレスの決定方法はこれに限定されず、実施可能な範囲で変更可能である。
・・・省略・・・
（ＳＥ１０Ａ）ＣＴＵ符号化部２４２は、入力されるアクティブパラメータセット、スライスヘッダに基づいて、入力画像（符号化対象スライス）をＣＴＵ単位で符号化して、符号化対象スライスのスライスデータの一部として、ＣＴＵ情報の符号化データ(図１８のSYNSD01)を出力する。また、ＣＴＵ符号化部２４２は、各ＣＴＵに対応する領域のＣＴＵ復号画像を生成し出力する。さらに、各CTU情報の符号化データの後に、該CTUが符号化対象スライスの終端であるかを示すスライス終端フラグ(end_of_slice_segment_flag)(図１８のSYNSD2)を符号化する。該CTUが符号化対象スライスの終端である場合、スライス終端フラグを１へ設定し、それ以外の場合は０へ設定し、符号化する。また、各CTUの符号化後に、処理済CTU数numCtuの値を１加算する(numCtu++)。
【０３２６】
（ＳＥ１０Ｂ）該CTUが符号化対象スライスの終端であるか否かをスライス終端フラグに基づいて判定する。スライス終端フラグが１の場合(SE10BでYes)、ステップSE10Cへ遷移する。それ以外の場合(SE10BでNo)、後続のCTUを符号化するため、ステップSE10Aへ遷移する。
【０３２７】
（ＳＥ１０Ｃ）処理済CTU数numCtuが、ピクチャを構成するＣＴＵの総数(PicSizeInCtbsY)に達したか判定する。すなわち、numCtu==PicSizeInCtbsYであるか判定する。numCtuがPicSizeInCtbsYと等しい場合(SE10CでYes)、符号化対象ピクチャを構成するスライス単位の符号化処理を終了する。それ以外の場合（numCtu<PicSizeInCtbsY）（SE10CでNo）、符号化対象対象ピクチャを構成するスライス単位の符号化処理を継続するため、ステップSE101へ遷移する。
【０３２８】
以上、実施例１に係るピクチャ符号化部２４の動作について説明したが、上記ステップに限定されず、実施可能な範囲で、ステップを変更しても構わない。
【０３２９】
（動画像符号化装置２の効果）
以上説明した本実施形態に係る階層動画像符号化装置２は、階層動画像復号装置１（及びその変形例を含む）が復号可能なビットストリームであることを保障するため、前述のＣＸ１（ＣＸ１’）、あるいはＣＸ２(ＣＸ２’)、あるいはＣＹ１、あるいはＣＹ２、あるいは（ＣＹ２かつＣＹ３かつＣＹ４）、あるいはＣＺ１、あるいは、（ＣＺ１かつＣＡ１かつＣＡ２かつ「VPSのレイヤ識別子nuh_layer_idは０であること」）のビットストリームコンフォーマンスを満たすように、対象レイヤセットの階層符号化データＤＡＴＡを生成する。上記ビットストリームコンフォーマンスを満たす階層符号化データＤＡＴＡを生成することで、階層復号装置１において、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３３０】
また、以上説明した本実施形態に係る階層動画像符号化装置２は、対象レイヤの符号化に利用されるパラメータセット（ＶＰＳ，ＳＰＳ、ＰＰＳ）ととして、参照レイヤの符号化に利用されるパラメータセットを共有することにより、対象レイヤのパラメータセットに係る符号量を削減することが可能である。すなわち、より少ない符号量でパラメータセットを符号化することができる。
【０３３１】
（他の階層動画像符号化／復号システムへの適用例）
上述した階層動画像符号化装置２及び階層動画像復号装置１は、動画像の送信、受信、記録、再生を行う各種装置に搭載して利用できる。なお、動画像は、カメラ等により撮像された自然動画像であってもよいし、コンピュータ等により生成された人工動画像（ＣＧおよびＧＵＩを含む）であってもよい。
【０３３２】
図２５に基づいて、上述した階層動画像符号化装置２および階層動画像復号装置１を、動画像の送信および受信に利用できることを説明する。図２５の（ａ）は、階層動画像符号化装置２を搭載した送信装置ＰＲＯＤ＿Ａの構成を示したブロック図である。
【０３３３】
図２５の（ａ）に示すように、送信装置ＰＲＯＤ＿Ａは、動画像を符号化することによって符号化データを得る符号化部ＰＲＯＤ＿Ａ１と、符号化部ＰＲＯＤ＿Ａ１が得た符号化データで搬送波を変調することによって変調信号を得る変調部ＰＲＯＤ＿Ａ２と、変調部ＰＲＯＤ＿Ａ２が得た変調信号を送信する送信部ＰＲＯＤ＿Ａ３とを備えている。上述した階層動画像符号化装置２は、この符号化部ＰＲＯＤ＿Ａ１として利用される。
【０３３４】
送信装置ＰＲＯＤ＿Ａは、符号化部ＰＲＯＤ＿Ａ１に入力する動画像の供給源として、動画像を撮像するカメラＰＲＯＤ＿Ａ４、動画像を記録した記録媒体ＰＲＯＤ＿Ａ５、動画像を外部から入力するための入力端子ＰＲＯＤ＿Ａ６、及び、画像を生成または加工する画像処理部Ａ７を更に備えていてもよい。図２５の（ａ）においては、これら全てを送信装置ＰＲＯＤ＿Ａが備えた構成を例示しているが、一部を省略しても構わない。
【０３３５】
なお、記録媒体ＰＲＯＤ＿Ａ５は、符号化されていない動画像を記録したものであってもよいし、伝送用の符号化方式とは異なる記録用の符号化方式で符号化された動画像を記録したものであってもよい。後者の場合、記録媒体ＰＲＯＤ＿Ａ５と符号化部ＰＲＯＤ＿Ａ１との間に、記録媒体ＰＲＯＤ＿Ａ５から読み出した符号化データを記録用の符号化方式に従って復号する復号部（不図示）を介在させるとよい。
【０３３６】
図２５の（ｂ）は、階層動画像復号装置１を搭載した受信装置ＰＲＯＤ＿Ｂの構成を示したブロック図である。図２５の（ｂ）に示すように、受信装置ＰＲＯＤ＿Ｂは、変調信号を受信する受信部ＰＲＯＤ＿Ｂ１と、受信部ＰＲＯＤ＿Ｂ１が受信した変調信号を復調することによって符号化データを得る復調部ＰＲＯＤ＿Ｂ２と、復調部ＰＲＯＤ＿Ｂ２が得た符号化データを復号することによって動画像を得る復号部ＰＲＯＤ＿Ｂ３とを備えている。上述した階層動画像復号装置１は、この復号部ＰＲＯＤ＿Ｂ３として利用される。
【０３３７】
受信装置ＰＲＯＤ＿Ｂは、復号部ＰＲＯＤ＿Ｂ３が出力する動画像の供給先として、動画像を表示するディスプレイＰＲＯＤ＿Ｂ４、動画像を記録するための記録媒体ＰＲＯＤ＿Ｂ５、及び、動画像を外部に出力するための出力端子ＰＲＯＤ＿Ｂ６を更に備えていてもよい。図２５の（ｂ）においては、これら全てを受信装置ＰＲＯＤ＿Ｂが備えた構成を例示しているが、一部を省略しても構わない。
【０３３８】
なお、記録媒体ＰＲＯＤ＿Ｂ５は、符号化されていない動画像を記録するためのものであってもよいし、伝送用の符号化方式とは異なる記録用の符号化方式で符号化されたものであってもよい。後者の場合、復号部ＰＲＯＤ＿Ｂ３と記録媒体ＰＲＯＤ＿Ｂ５との間に、復号部ＰＲＯＤ＿Ｂ３から取得した動画像を記録用の符号化方式に従って符号化する符号化部（不図示）を介在させるとよい。
【０３３９】
なお、変調信号を伝送する伝送媒体は、無線であってもよいし、有線であってもよい。また、変調信号を伝送する伝送態様は、放送（ここでは、送信先が予め特定されていない送信態様を指す）であってもよいし、通信（ここでは、送信先が予め特定されている送信態様を指す）であってもよい。すなわち、変調信号の伝送は、無線放送、有線放送、無線通信、及び有線通信の何れによって実現してもよい。
【０３４０】
例えば、地上デジタル放送の放送局（放送設備など）／受信局（テレビジョン受像機など）は、変調信号を無線放送で送受信する送信装置ＰＲＯＤ＿Ａ／受信装置ＰＲＯＤ＿Ｂの一例である。また、ケーブルテレビ放送の放送局（放送設備など）／受信局（テレビジョン受像機など）は、変調信号を有線放送で送受信する送信装置ＰＲＯＤ＿Ａ／受信装置ＰＲＯＤ＿Ｂの一例である。
【０３４１】
また、インターネットを用いたＶＯＤ（Video On Demand）サービスや動画共有サービスなどのサーバ（ワークステーションなど）／クライアント（テレビジョン受像機、パーソナルコンピュータ、スマートフォンなど）は、変調信号を通信で送受信する送信装置ＰＲＯＤ＿Ａ／受信装置ＰＲＯＤ＿Ｂの一例である（通常、ＬＡＮにおいては伝送媒体として無線又は有線の何れかが用いられ、ＷＡＮにおいては伝送媒体として有線が用いられる）。ここで、パーソナルコンピュータには、デスクトップ型ＰＣ、ラップトップ型ＰＣ、及びタブレット型ＰＣが含まれる。また、スマートフォンには、多機能携帯電話端末も含まれる。
【０３４２】
なお、動画共有サービスのクライアントは、サーバからダウンロードした符号化データを復号してディスプレイに表示する機能に加え、カメラで撮像した動画像を符号化してサーバにアップロードする機能を有している。すなわち、動画共有サービスのクライアントは、送信装置ＰＲＯＤ＿Ａ及び受信装置ＰＲＯＤ＿Ｂの双方として機能する。
【０３４３】
図２６に基づいて、上述した階層動画像符号化装置２および階層動画像復号装置１を、動画像の記録および再生に利用できることを説明する。図２６の（ａ）は、上述した階層動画像符号化装置２を搭載した記録装置ＰＲＯＤ＿Ｃの構成を示したブロック図である。
【０３４４】
図２６の（ａ）に示すように、記録装置ＰＲＯＤ＿Ｃは、動画像を符号化することによって符号化データを得る符号化部ＰＲＯＤ＿Ｃ１と、符号化部ＰＲＯＤ＿Ｃ１が得た符号化データを記録媒体ＰＲＯＤ＿Ｍに書き込む書込部ＰＲＯＤ＿Ｃ２と、を備えている。上述した階層動画像符号化装置２は、この符号化部ＰＲＯＤ＿Ｃ１として利用される。
【０３４５】
なお、記録媒体ＰＲＯＤ＿Ｍは、（１）ＨＤＤ（Hard Disk Drive）やＳＳＤ(Solid State Drive)等のように、記録装置ＰＲＯＤ＿Ｃに内蔵されるタイプのものであってもよいし、（２）ＳＤメモリカードやＵＳＢ（Universal Serial Bus）フラッシュメモリ等のように、記録装置ＰＲＯＤ＿Ｃに接続されるタイプのものであってもよいし、（３）ＤＶＤ（Digital Versatile Disc）やＢＤ（Blu-ray Disc:登録商標）等のように、記録装置ＰＲＯＤ＿Ｃに内蔵されたドライブ装置（不図示）に装填されるものであってもよい。
【０３４６】
また、記録装置ＰＲＯＤ＿Ｃは、符号化部ＰＲＯＤ＿Ｃ１に入力する動画像の供給源として、動画像を撮像するカメラＰＲＯＤ＿Ｃ３、動画像を外部から入力するための入力端子ＰＲＯＤ＿Ｃ４、動画像を受信するための受信部ＰＲＯＤ＿Ｃ５、及び、画像を生成または加工する画像処理部Ｃ６を更に備えていてもよい。図２６の（ａ）においては、これら全てを記録装置ＰＲＯＤ＿Ｃが備えた構成を例示しているが、一部を省略しても構わない。
【０３４７】
なお、受信部ＰＲＯＤ＿Ｃ５は、符号化されていない動画像を受信するものであってもよいし、記録用の符号化方式とは異なる伝送用の符号化方式で符号化された符号化データを受信するものであってもよい。後者の場合、受信部ＰＲＯＤ＿Ｃ５と符号化部ＰＲＯＤ＿Ｃ１との間に、伝送用の符号化方式で符号化された符号化データを復号する伝送用復号部（不図示）を介在させるとよい。
【０３４８】
このような記録装置ＰＲＯＤ＿Ｃとしては、例えば、ＤＶＤレコーダ、ＢＤレコーダ、ＨＤＤ（Hard Disk Drive）レコーダなどが挙げられる（この場合、入力端子ＰＲＯＤ＿Ｃ４又は受信部ＰＲＯＤ＿Ｃ５が動画像の主な供給源となる）。また、カムコーダ（この場合、カメラＰＲＯＤ＿Ｃ３が動画像の主な供給源となる）、パーソナルコンピュータ（この場合、受信部ＰＲＯＤ＿Ｃ５又は画像処理部Ｃ６が動画像の主な供給源となる）、スマートフォン（この場合、カメラＰＲＯＤ＿Ｃ３又は受信部ＰＲＯＤ＿Ｃ５が動画像の主な供給源となる）なども、このような記録装置ＰＲＯＤ＿Ｃの一例である。
【０３４９】
図２６の（ｂ）は、上述した階層動画像復号装置１を搭載した再生装置ＰＲＯＤ＿Ｄの構成を示したブロックである。図２６の（ｂ）に示すように、再生装置ＰＲＯＤ＿Ｄは、記録媒体ＰＲＯＤ＿Ｍに書き込まれた符号化データを読み出す読出部ＰＲＯＤ＿Ｄ１と、読出部ＰＲＯＤ＿Ｄ１が読み出した符号化データを復号することによって動画像を得る復号部ＰＲＯＤ＿Ｄ２と、を備えている。上述した階層動画像復号装置１は、この復号部ＰＲＯＤ＿Ｄ２として利用される。
【０３５０】
なお、記録媒体ＰＲＯＤ＿Ｍは、（１）ＨＤＤやＳＳＤなどのように、再生装置ＰＲＯＤ＿Ｄに内蔵されるタイプのものであってもよいし、（２）ＳＤメモリカードやＵＳＢフラッシュメモリなどのように、再生装置ＰＲＯＤ＿Ｄに接続されるタイプのものであってもよいし、（３）ＤＶＤやＢＤなどのように、再生装置ＰＲＯＤ＿Ｄに内蔵されたドライブ装置（不図示）に装填されるものであってもよい。
【０３５１】
また、再生装置ＰＲＯＤ＿Ｄは、復号部ＰＲＯＤ＿Ｄ２が出力する動画像の供給先として、動画像を表示するディスプレイＰＲＯＤ＿Ｄ３、動画像を外部に出力するための出力端子ＰＲＯＤ＿Ｄ４、及び、動画像を送信する送信部ＰＲＯＤ＿Ｄ５を更に備えていてもよい。図２６の（ｂ）においては、これら全てを再生装置ＰＲＯＤ＿Ｄが備えた構成を例示しているが、一部を省略しても構わない。
【０３５２】
なお、送信部ＰＲＯＤ＿Ｄ５は、符号化されていない動画像を送信するものであってもよいし、記録用の符号化方式とは異なる伝送用の符号化方式で符号化された符号化データを送信するものであってもよい。後者の場合、復号部ＰＲＯＤ＿Ｄ２と送信部ＰＲＯＤ＿Ｄ５との間に、動画像を伝送用の符号化方式で符号化する符号化部（不図示）を介在させるとよい。
【０３５３】
このような再生装置ＰＲＯＤ＿Ｄとしては、例えば、ＤＶＤプレイヤ、ＢＤプレイヤ、ＨＤＤプレイヤなどが挙げられる（この場合、テレビジョン受像機等が接続される出力端子ＰＲＯＤ＿Ｄ４が動画像の主な供給先となる）。また、テレビジョン受像機（この場合、ディスプレイＰＲＯＤ＿Ｄ３が動画像の主な供給先となる）、デジタルサイネージ（電子看板や電子掲示板等とも称され、ディスプレイＰＲＯＤ＿Ｄ３又は送信部ＰＲＯＤ＿Ｄ５が動画像の主な供給先となる）、デスクトップ型ＰＣ（この場合、出力端子ＰＲＯＤ＿Ｄ４又は送信部ＰＲＯＤ＿Ｄ５が動画像の主な供給先となる）、ラップトップ型又はタブレット型ＰＣ（この場合、ディスプレイＰＲＯＤ＿Ｄ３又は送信部ＰＲＯＤ＿Ｄ５が動画像の主な供給先となる）、スマートフォン（この場合、ディスプレイＰＲＯＤ＿Ｄ３又は送信部ＰＲＯＤ＿Ｄ５が動画像の主な供給先となる）なども、このような再生装置ＰＲＯＤ＿Ｄの一例である。
【０３５４】
（ハードウェア的実現およびソフトウェア的実現について）
最後に、階層動画像復号装置１、階層動画像符号化装置２の各ブロックは、集積回路（ＩＣチップ）上に形成された論理回路によってハードウェア的に実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェア的に実現してもよい。
【０３５５】
後者の場合、上記各装置は、各機能を実現する制御プログラムの命令を実行するＣＰＵ、上記プログラムを格納したＲＯＭ（Read Only Memory）、上記プログラムを展開するＲＡＭ（Random Access Memory）、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである上記各装置の制御プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、ソースプログラム）をコンピュータで読み取り可能に記録した記録媒体を、上記各装置に供給し、そのコンピュータ（またはＣＰＵやＭＰＵ（Micro Processing Unit））が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【０３５６】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ類、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）／ＭＯ（Magneto-Optical）／ＭＤ（Mini Disc）／ＤＶＤ（Digital Versatile Disk）／ＣＤ−Ｒ（CD Recordable）等の光ディスクを含むディスク類、ＩＣカード（メモリカードを含む）／光カード等のカード類、マスクＲＯＭ／ＥＰＲＯＭ（Erasable Programmable Read-only Memory）／ＥＥＰＲＯＭ（登録商標）（ElectricallyErasable and Programmable Read-only Memory）／フラッシュＲＯＭ等の半導体メモリ類、あるいはＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等の論理回路類などを用いることができる。
【０３５７】
また、上記各装置を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークは、プログラムコードを伝送可能であればよく、特に限定されない。例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ（Local Area Network）、ＩＳＤＮ（Integrated Services Digital Network）、ＶＡＮ（Value-Added Network）、ＣＡＴＶ（Community Antenna Television）通信網、仮想専用網（Virtual Private Network）、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な媒体であればよく、特定の構成または種類のものに限定されない。例えば、ＩＥＥＥ（Institute of Electrical and Electronic Engineers）１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ（Asymmetric DigitalSubscriber Line）回線等の有線でも、ＩｒＤＡ（Infrared Data Association）やリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＩＥＥＥ８０２．１１無線、ＨＤＲ（High Data Rate）、ＮＦＣ（Near Field Communication）、ＤＬＮＡ（登録商標）（Digital Living Network Alliance）、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【０３５８】
〔まとめ〕  
本発明の態様１に係る画像復号装置は、入力画像符号化データを復号する画像復号装置であって、１以上のレイヤからなる復号対象レイヤセットを示すレイヤＩＤリストに基づいて、前記入力画像符号化データから、前記復号対象レイヤセットに係る画像符号化データを抽出する画像符号化データ抽出部と、前記抽出された画像符号化データより、復号対象レイヤセットのピクチャを復号するピクチャ復号部と、を備え、前記画像符号化データ抽出部から抽出された前記入力画像符号化データは、レイヤ識別子が０に等しくない、かつ前記レイヤＩＤリストに含まれないレイヤ識別子を有するnon-VCL NALユニットを含まないことを特徴とする。
【０３５９】
本発明の態様２に係る画像復号装置は、上記態様１において、前記画像符号化データに含まれるNALユニットのテンポラルＩＤは、前記復号対象レイヤセットの最高次テンポラルＩＤの値以下であることを特徴とする。
【０３６０】
本発明の態様３に係る画像復号装置は、上記態様１において、前記non-VCL NALユニットは、パラメータセットを有するＮＡＬユニットであることを特徴とする。
【０３６１】
本発明の態様４に係る画像復号装置は、上記態様２において、前記パラメータセットは、ビデオパラメータセットを含むことを特徴とする。
【０３６２】
本発明の態様５に係る画像復号装置は、上記態様３において、前記パラメータセットは、シーケンスパラメータセットを含むことを特徴とする。
【０３６３】
本発明の態様６に係る画像復号装置は、上記態様３において、前記パラメータセットは、ピクチャパラメータセットを含むことを特徴とする。
【０３６４】
本発明の態様７に係る画像復号方法は、入力画像符号化データを復号する画像復号方法であって、１以上のレイヤからなる復号対象レイヤセットを示すレイヤＩＤリストに基づいて、前記入力画像符号化データから、前記復号対象レイヤセットに係る画像符号化データを抽出する画像符号化データ抽出工程と、前記抽出された画像符号化データより、復号対象レイヤセットのピクチャを復号するピクチャ復号工程と、を備え、前記画像符号化データ抽出工程で抽出された前記入力画像符号化データは、レイヤ識別子が０に等しくない、かつ前記レイヤＩＤリストに含まれないレイヤ識別子を有するnon-VCL NALユニットを含まないことを特徴とする。
【０３６５】
本発明の態様８に係る画像復号装置は、対象レイヤセットのレイヤＩＤリストに基づいて、入力画像符号化データから復号対象画像符号化データを抽出する画像符号化データ抽出部を備える画像復号装置であって、前記画像符号化データ抽出部は、さらに、入力画像符号化データ中で、対象レイヤセットのレイヤＩＤリスト中の最低次レイヤ識別子より小さいレイヤ識別子を有する非ビデオ符号化レイヤＮＡＬユニットのレイヤ識別子を前記最低次レイヤ識別子へ更新するレイヤ識別子更新部を備え、前記画像符号化データ抽出部は、前記レイヤ識別子更新部によってレイヤ識別子が更新された非ビデオ符号化レイヤＮＡＬユニットを含む画像符号化データから、前記対象レイヤセットのレイヤＩＤリストに含まれないレイヤ識別子を有するＮＡＬユニットを破棄し、復号対象画像符号化データを生成することを特徴とする。
【０３６６】
以上の画像復号装置によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットに非ビデオ符号化レイヤのＮＡＬユニットが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３６７】
本発明の態様９に係る画像復号装置は、対象レイヤセットのレイヤＩＤリストに基づいて、入力画像符号化データから復号対象画像符号化データを抽出する画像符号化データ抽出部を備える画像復号装置であって、前記画像符号化データ抽出部は、前記入力画像符号化データから、レイヤ識別子が０であるパラメータセットのＮＡＬユニットを除いて、前記対象レイヤセットのレイヤＩＤリストに含まれないレイヤ識別子を有するＮＡＬユニットを破棄し、復号対象画像符号化データを生成することを特徴とする。
【０３６８】
以上の画像復号装置によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットにレイヤ識別子が０であるパラメータセットのＮＡＬユニットが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３６９】
本発明の態様１０に係る画像復号装置は、対象レイヤセットのレイヤＩＤリストに基づいて、入力画像符号化データから復号対象画像符号化データを抽出する画像符号化データ抽出部を備える画像復号装置であって、前記画像符号化データ抽出部は、さらに、入力画像符号化データ中で、対象レイヤセットに含まれる各レイヤが依存する依存レイヤ情報を導出する依存レイヤ情報導出部を備え、前記画像符号化データ抽出部は、前記入力画像符号化データから、前記依存レイヤ情報導出部によって導出された依存レイヤのＮＡＬユニットを除いて、前記対象レイヤセットのレイヤＩＤリストに含まれないレイヤ識別子を有するＮＡＬユニットを破棄し、復号対象画像符号化データを生成することを特徴とする。
【０３７０】
以上の画像復号装置によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットに、対象レイヤセットに含まれる各レイヤが依存する依存レイヤのＮＡＬユニットが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３７１】
本発明の態様１１に係る画像復号装置は、上記態様８において、さらに、前記非ビデオ符号化レイヤＮＡＬユニットは、パラメータセットを含むＮＡＬユニットであることを特徴とする。
【０３７２】
以上の画像復号装置によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットにパラメータセットのＮＡＬユニットが含まれないという問題を防止することができる。
【０３７３】
本発明の態様１２に係る画像復号装置は、上記態様９または態様１１において、さらに、前記パラメータセットはビデオパラメータセットであることを特徴とする。
【０３７４】
以上の画像復号装置によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットにビデオパラメータセットのＮＡＬユニットが含まれないという問題を防止することができる。
【０３７５】
本発明の態様１３に係る画像復号装置は、上記態様９または態様１１において、さらに、前記パラメータセットはシーケンスパラメータセットであることを特徴とする。
【０３７６】
以上の画像復号装置によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットにシーケンスパラメータセットのＮＡＬユニットが含まれないという問題を防止することができる。
【０３７７】
本発明の態様１４に係る画像復号装置は、上記態様９または態様１１において、さらに、前記パラメータセットはピクチャパラメータセットであることを特徴とする。
【０３７８】
以上の画像復号装置によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットにピクチャパラメータセットのＮＡＬユニットが含まれないという問題を防止することができる。
【０３７９】
本発明の態様１５に係る画像復号装置は、上記態様１０において、さらに、前記依存レイヤは、直接参照レイヤ、または間接参照レイヤであることを特徴とする。
【０３８０】
以上の画像復号装置によれば、ビットストリーム抽出後のビットストリーム上で、レイヤセットに、対象レイヤセットに含まれる各レイヤが依存する直接参照レイヤ、または間接参照レイヤのＮＡＬユニットが含まれないという問題を防止することができる。
【０３８１】
本発明の態様１６に係る画像符号化データは、ある対象レイヤから参照されるビデオパラメータセットは、対象レイヤを含むアクセスユニット内で最低次のレイヤ識別子を有するVCLと同一のレイヤ識別子である、というコンフォーマンス条件を満たす画像符号化データであることを特徴とする。
【０３８２】
以上の画像符号化データによれば、上記画像符号化データより、ビットストリーム抽出によって生成されたサブビットストリームにおいて、レイヤセットにビデオパラメータセットが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３８３】
本発明の態様１７に係る画像符号化データは、ある対象レイヤから参照されるビデオパラメータセットのレイヤ識別子の値は０である、というコンフォーマンス条件を満たす画像符号化データであることを特徴とする。
【０３８４】
以上の画像符号化データによれば、上記画像符号化データより、ビットストリーム抽出によって生成されたサブビットストリームにおいて、レイヤセットにレイヤ識別子が０であるビデオパラメータセットが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３８５】
本発明の態様１８に係る画像符号化データは、上記態様１７において、さらに、ある対象レイヤから参照されるシーケンスパラメータセットのレイヤ識別子の値は０である、というコンフォーマンス条件を満たす画像符号化データであることを特徴とする。
【０３８６】
以上の画像符号化データによれば、上記画像符号化データより、ビットストリーム抽出によって生成されたサブビットストリームにおいて、レイヤセットにレイヤ識別子が０であるシーケンスパラメータセットが含まれないという問題を防止することができる。
【０３８７】
本発明の態様１９に係る画像符号化データは、上記態様１７または態様１８において、さらに、ある対象レイヤから参照されるピクチャパラメータセットのレイヤ識別子の値は０である、というコンフォーマンス条件を満たす画像符号化データであることを特徴とする。
【０３８８】
以上の画像符号化データによれば、上記画像符号化データより、ビットストリーム抽出によって生成されたサブビットストリームにおいて、レイヤセットにレイヤ識別子が０であるピクチャパラメータセットが含まれないという問題を防止することができる。
【０３８９】
本発明の態様２０に係る画像符号化データは、レイヤセットには、レイヤセット内のある対象レイヤから参照される依存レイヤが含まれる、というコンフォーマンス条件を満たすの画像符号化データであることを特徴とする。
【０３９０】
以上の画像符号化データによれば、上記画像符号化データより、ビットストリーム抽出によって生成されたサブビットストリームにおいて、レイヤセットに、レイヤセット内のある対象レイヤから参照される依存レイヤが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３９１】
本発明の態様２１に係る画像符号化装置は、対象レイヤセットのレイヤＩＤリストに基づいて、前記対象レイヤセットに対応する入力レイヤ画像から画像符号化データを生成する画像符号化装置であって、前記画像符号化装置は、前記対象レイヤセット内で、ある対象レイヤから参照される非ビデオ符号化レイヤのレイヤ識別子は、前記対象レイヤセットのアクセスユニット内で最低次のレイヤ識別子を有するVCLと同一のレイヤ識別子である、というコンフォーマンス条件を満たす画像符号化データを生成することを特徴とする。
【０３９２】
以上の画像符号化装置によれば、上記画像符号化装置によって生成された画像符号化データから、ビットストリーム抽出によって生成されたサブビットストリームにおいて、ある対象レイヤから参照される非ビデオ符号化レイヤのＮＡＬユニットが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３９３】
本発明の態様２２に係る画像符号化装置は、対象レイヤセットのレイヤＩＤリストに基づいて、前記対象レイヤセットに対応する入力レイヤ画像から画像符号化データを生成する画像符号化装置であって、前記画像符号化装置は、前記対象レイヤセット内で、ある対象レイヤから参照される非ビデオ符号化レイヤのレイヤ識別子は、前記対象レイヤセットのレイヤＩＤリスト中の最低次のレイヤ識別子である、というコンフォーマンス条件を満たす画像符号化データを生成することを特徴とする。
【０３９４】
以上の画像符号化装置によれば、上記画像符号化装置によって生成された画像符号化データから、ビットストリーム抽出によって生成されたサブビットストリームにおいて、ある対象レイヤから参照される非ビデオ符号化レイヤのＮＡＬユニットが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３９５】
本発明の態様２３に係る画像符号化装置は、対象レイヤセットのレイヤＩＤリストに基づいて、前記対象レイヤセットに対応する入力レイヤ画像から画像符号化データを生成する画像符号化装置であって、前記画像符号化装置は、前記対象レイヤセット内で、各レイヤが依存する依存レイヤが前記対象レイヤセットに含まれること、というコンフォーマンス条件を満たす画像符号化データを生成することを特徴とする。
【０３９６】
以上の画像符号化装置によれば、上記画像符号化装置によって生成された画像符号化データから、ビットストリーム抽出によって生成されたサブビットストリームにおいて、ある対象レイヤから参照される依存レイヤのＮＡＬユニットが含まれないという問題を防止することができる。すなわち、あるレイヤセットのビットストリームから、ビットストリーム抽出処理により生成された、該レイヤセットのサブセットのレイヤセットのみを含むビットストリーム上で復号不可となるレイヤの発生を防止することができる。
【０３９７】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【０３９８】
本発明は、画像データが階層的に符号化された符号化データを復号する階層動画像復号装置、および、画像データが階層的に符号化された符号化データを生成する階層動画像符号化装置に好適に適用することができる。また、階層動画像符号化装置によって生成され、階層動画像復号装置によって参照される階層符号化データのデータ構造に好適に適用することができる。
【符号の説明】
【０３９９】
１…階層動画像復号装置
２…階層動画像符号化装置
１０…対象レイヤセットピクチャ復号部
１１…NAL逆多重化部
１２…パラメータセット復号部
１３…パラメータセット管理部
１４…ピクチャ復号部
１４１…スライスヘッダ復号部
１４２…ＣＴＵ復号部
１４２１…予測残差復元部
１４２２…予測画像生成部
１４２３…ＣＴＵ復号画像生成部
１５…復号ピクチャ管理部
１７…ビットストリーム抽出部（画像符号化データ抽出部）
２０…対象レイヤセットピクチャ符号化部
２１…NAL多重化部
２２…パラメータセット符号化部
２４…ピクチャ符号化部
２６…符号化パラメータ決定部
２４１…スライスヘッダ符号化部
２４２…ＣＴＵ符号化部
２４２１…予測残差符号化部
２４２２…予測画像符号化部
２４２３…ＣＴＵ復号画像生成部
【図１】
2018082462.tif 000003
【図２】
2018082462.tif 000004
【図３】
2018082462.tif 000005
【図４】
2018082462.tif 000006
【図５】
2018082462.tif 000007
【図６】
2018082462.tif 000008
【図７】
2018082462.tif 000009
【図８】
2018082462.tif 000010
【図９】
2018082462.tif 000011
【図１０】
2018082462.tif 000012
【図１１】
2018082462.tif 000013
【図１２】
2018082462.tif 000014
【図１３】
2018082462.tif 000015
【図１４】
2018082462.tif 000016
【図１５】
2018082462.tif 000017
【図１６】
2018082462.tif 000018
【図１７】
2018082462.tif 000019
【図１８】
2018082462.tif 000020
【図１９】
2018082462.tif 000021
【図２０】
2018082462.tif 000022
【図２１】
2018082462.tif 000023
【図２２】
2018082462.tif 000024
【図２３】
2018082462.tif 000025
【図２４】
2018082462.tif 000026
【図２５】
2018082462.tif 000027
【図２６】
2018082462.tif 000028
【図２７】
2018082462.tif 000029
【図２８】
2018082462.tif 000030
【図２９】
2018082462.tif 000031
【図３０】
2018082462.tif 000032
【図３１】
2018082462.tif 000033
【手続補正書】
【提出日】平成30年1月4日(2018.1.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
入力画像符号化データを復号する画像復号装置（１）であって、
１以上のレイヤからなる復号対象レイヤセットに含まれるレイヤを示すレイヤＩＤリストに基づいて、前記入力画像符号化データから、前記復号対象レイヤセットに係る画像符号化データを抽出する画像符号化データ抽出部（１７）と、
前記抽出された画像符号化データより、復号対象レイヤセットのピクチャを復号するピクチャ復号部（１４）と、を備え、
前記入力画像符号化データに含まれるNALユニットのテンポラルＩＤは、前記復号対象レイヤセットの最高次テンポラルＩＤの値以下であり、前記テンポラル識別子は、サブレイヤを識別するためのものであり、前記NALユニットは、non-VCL NALユニットまたはVCL NALユニットであり、
前記レイヤＩＤリストに含まれない、０に等しくないレイヤ識別子を有するnon-VCL NALユニットは、前記抽出された画像符号化データにおいて破棄されることを特徴とする画像復号装置。
【請求項２】
前記non-VCL NALユニットは、パラメータセットを有するＮＡＬユニットであり、前記パラメータセットは、前記対象レイヤセットを復号するために使用されることを特徴とする請求項１に記載の画像復号装置。
【請求項３】
前記パラメータセットは、ビデオパラメータセットを含むことを特徴とする請求項２に記載の画像復号装置。
【請求項４】
前記パラメータセットは、シーケンスパラメータセットを含むことを特徴とする請求項２に記載の画像復号装置。
【請求項５】
前記パラメータセットは、ピクチャパラメータセットを含むことを特徴とする請求項２に記載の画像復号装置。
【請求項６】
入力画像符号化データを復号する画像復号方法であって、
１以上のレイヤからなる復号対象レイヤセットに含まれるレイヤを示すレイヤＩＤリストに基づいて、前記入力画像符号化データから、前記復号対象レイヤセットに係る画像符号化データを抽出する画像符号化データ抽出工程と、
前記抽出された画像符号化データより、復号対象レイヤセットのピクチャを復号するピクチャ復号工程と、を備え、
前記入力画像符号化データに含まれるNALユニットのテンポラルＩＤは、前記復号対象レイヤセットの最高次テンポラルＩＤの値以下であり、前記テンポラル識別子は、サブレイヤを識別するためのものであり、前記NALユニットは、non-VCL NALユニットまたはVCL NALユニットであり、
前記レイヤＩＤリストに含まれない、０に等しくないレイヤ識別子を有するnon-VCL NALユニットは、前記抽出された画像符号化データにおいて破棄されることを特徴とする画像復号方法。