JP2016034050A - 画像復号装置、画像符号化装置および、データ構造 - Google Patents

画像復号装置、画像符号化装置および、データ構造 Download PDF

Info

Publication number
JP2016034050A
JP2016034050A JP2012286710A JP2012286710A JP2016034050A JP 2016034050 A JP2016034050 A JP 2016034050A JP 2012286710 A JP2012286710 A JP 2012286710A JP 2012286710 A JP2012286710 A JP 2012286710A JP 2016034050 A JP2016034050 A JP 2016034050A
Authority
JP
Japan
Prior art keywords
layer
unit
flag
prediction
picture
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012286710A
Other languages
English (en)
Inventor
知宏 猪飼
Tomohiro Igai
知宏 猪飼
内海 端
Tadashi Uchiumi
端 内海
貴也 山本
Takaya Yamamoto
貴也 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2012286710A priority Critical patent/JP2016034050A/ja
Priority to PCT/JP2013/081971 priority patent/WO2014103600A1/ja
Publication of JP2016034050A publication Critical patent/JP2016034050A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】HEVC拡張で定義される次元IDを用いた場合、3次元スケーラブルに必要なデプスフラグおよびビューIDが導出する方法が明確ではないという課題があった。また、依存レイヤにおいて、ビューIDおよびデプスフラグを制限していないため、デコーダのメモリが大きくなることがあった。
【解決手段】ビューIDおよびデプスフラグに対応する次元IDのインデックスをスケーラブルマスクに基づいて定めることにより、次元IDからデプスフラグおよびビューIDを導出する。依存レイヤの次元IDもしくはビューIDを制限することによりデコーダのメモリサイズを低減する。
【選択図】図24

Description

本発明は、画像復号装置、画像符号化装置および、データ構造。
複数視点の画像符号化技術には、複数の視点の画像を符号化する際に画像間の視差を予測することによって情報量を低減する視差予測符号化や、その符号化方法に対応した復号方法が提案されている(例えば、非特許文献1)。視点画像間の視差を表すベクトルを変位ベクトルと呼ぶ。変位ベクトルは、水平方向の要素(x成分)と垂直方向の要素(y成分)を有する2次元のベクトルであり、1つの画像を分割した領域であるブロック毎に算出される。また、複数視点の画像を取得するには、それぞれの視点に配置されたカメラを用いることが一般的である。複数視点の符号化では、各視点画像は、複数のレイヤにおいてそれぞれ異なるレイヤとして符号化される。複数のレイヤから構成される動画像の符号化方法は、一般に、スケーラブル符号化又は階層符号化と呼ばれる。スケーラブル符号化では、レイヤ間で予測を行うことで、高い符号化効率を実現する。レイヤ間で予測を行わずに基準となるレイヤは、ベースレイヤ、それ以外のレイヤは拡張レイヤと呼ばれる。レイヤが視点画像から構成される場合のスケーラブル符号化を、ビュースケーラブル符号化と呼ぶ。このとき、ベースレイヤはベースビュー、拡張レイヤは非ベースビューとも呼ばれる。さらに、ビュースケーラブルに加え、レイヤがテクスチャレイヤ(画像レイヤ)とデプスレイヤ(距離画像レイヤ)から構成される場合のスケーラブル符号化を、3次元スケーラブル符号化と呼ばれる。
また、スケーラブル符号化には、ビュースケーラブル符号化の他、空間的スケーラブル(ベースレイヤとして解像度の低いピクチャ、拡張レイヤが解像度の高いピクチャを処理)、SNRスケーラブル符号化(ベースレイヤとして画質の低いピクチャ、拡張レイヤとして解像度の高いピクチャを処理)等がある。スケーラブル符号化では、例えばベースレイヤのピクチャを、拡張レイヤのピクチャの符号化において、参照ピクチャとして用いることがある
また、非特許文献1においては、HEVCのスケーラブル符号化技術のパラメータ構造として、符号化データをNALユニットとしてパケット化するときに、用いるNALユニットヘッダの構造と、複数のレイヤの拡張方法を規定するビデオパラメータセットの構造が知られている。非特許文献1では、画像符号化データをパケット化するNALユニットにおいて、レイヤを識別するためのIDであるレイヤID(layer_id)を符号化することが知られており、また、複数レイヤに共通するパラメータを規定するビデオパラメータセットでは、拡張方法を指定するスケーラブルマスクscalable_mask、各レイヤの次元を示すdimension_id、各レイヤの符号化データがどのレイヤに依存するかを示す、依存レイヤのレイヤIDref_layer_idなどが符号化される。スケーラブルマスクでは、空間、画質、デプス、ビューのスケーラブル種別ごとにオンオフが指定できる。ビューのスケーラブルをオン、もしくは、デプスとビューのスケーラブルをオンとしたものが、3Dスケーラブルに相当する。
非特許文献2においては、HEVCベースの3次元スケーラブル符号化技術として、ビュースケーラブルとデプススケーラブルを用いる技術が知られている。非特許文献2においては、デプスを符号化する技術として、デプスと同時刻のテクスチャの復号画像を用いてデプスの予測画像を予測するデプスイントラ予測(DMM)、デプスと同時刻のテクスチャの動き補償パラメータを、デプスの動き補償パラメータとして用いる動きパラメータ継承(MPI)技術が知られている。また、非特許文献2においては、レイヤIDの0ビット目をデプスとテクスチャの識別に用いるデプスフラグdepth_flagに用い、レイヤIDの1ビット目以上を、ビューIDに用いる技術が知られている。レイヤIDに基づいてデプスか否かを判定し、デプスと判定される場合にのみ、デプス符号化技術であるデプスイントラ予測、動きパラメータ継承をデコーダで用いることができるか否かを示すフラグenable_dmm_flag、use_mpi_flagを符号化する。また、非特許文献2においては、同じ時刻のビュー、デプスのピクチャは同じ符号化単位(アクセスユニット)として符号化することが記述されている。
"NAL unit header and parameter set designs for HEVC extensions",JCTVC-K1007,JCTVC Shanghai, CN, 10-19 October 2012 G. Tech, K. Wegner, Y. Chen, S. Yea, "3D-HEVC Test Model 1", JCT3V-A1005, JCT3V 1st meeting, Stockholm, SE, 16-20 July, 2012
しかしながら、非特許文献1の符号化データ構造を、3次元スケーラブルに適用する場合には、非特許文献1の符号化データ構造に含まれる次元IDdimension_idから、復号するピクチャの種別の識別に必要なデプスフラグdepth_flagとビューID(view_id)を導出する必要があるが、この方法が明確ではないという課題があった。また、次元IDdimension_idから、デプスフラグdepth_flagとビューID(view_id)を導出する場合には、非特許文献2のようなレイヤIDから、直接、デプスフラグdepth_flagとビューID(view_id)を導出する場合に比べ、導出が複雑になるという課題があった。
しかしながら、非特許文献2のデプス用の符号化ツールの利用可能性を示すフラグの場合には、依存レイヤの種別、例えば、依存レイヤのデプスフラグやビューIDが考慮されていないために、デプス用符号化ツールが利用不可能な場合にも利用可能として判定されることがあるという課題があった。また、ビューIDが考慮されていないという課題があった本発明は上記の点に鑑みてなされたものであり、次元IDdimension_idを用いて、デプスフラグとビューIDの導出を可能にする、もしくは依存レイヤを考慮したデプスツールのオンオフ制御を可能にする、画像復号装置、画像符号化装置および、データ構造を提供する。
第1の構成の画像復号装置によれば、1つ以上のレイヤのパラメータを規定するビデオパラメータセットから、スケーラブルの種別を示すスケーラブルマスクと、次元IDを復号するビデオパラメータセット復号部と、レイヤIDと次元IDの関係を格納するレイヤパラメータ格納部と、NALユニットヘッダからレイヤIDを復号するレイヤID復号部と、さらに、上記レイヤID復号部で復号された対象レイヤのレイヤIDから、上記レイヤパラメータ格納部に格納された次元IDを参照し、対象レイヤのビューIDとデプスフラグを導出するビューデプス導出部を備える。
第1の構成の画像復号装置によれば、3次元スケーラブルに関わるビューIDとデプスフラグが、空間スケーラブルや画質スケーラビリティと同じ構造のビデオパラメータから導出可能になるという効果を奏する。
第1の構成の画像復号装置はさらに、上記ビデオパラメータセット復号部は、1つ以上のレイヤに対して、第1の次元IDと第2の次元IDを復号し、上記レイヤパラメータ格納部に格納し、
上記ビューデプス導出部は、上記レイヤパラメータ格納部に格納された、対象レイヤに対応する第1の次元IDをビューIDとして割り当て、上記レイヤパラメータ格納部に格納された、対象レイヤに対応する第2の次元IDをデプスフラグとして割り当てることを特徴としても良い。
以上の構成の画像復号装置によれば、レイヤの種別がスケーラブルの種類に応じて意味が変化する次元IDによって規定された場合においても、ビューIDとデプスフラグを導出することが可能であるという効果を奏する。
第1の構成の画像復号装置はさらに、シーケンスパラメータセットから、ツールの使用可能性を規定するツール有効性フラグを復号するツール有効性情報復号部を備え、
前記ツール有効性情報復号部は、上記第2の次元IDから割り当てられた対象レイヤのデプスフラグが1の場合にのみ、前記ツール有効性フラグを復号することを特徴としても良い。
以上の構成の画像復号装置によれば、レイヤの種別がスケーラブルの種類に応じて意味が変化する次元IDによって規定された場合においても、デプスに特化したツールの利用可能性を冗長性な符号を復号することなく、復号することが可能であるという効果を奏する。
第2の構成の画像復号装置は、上記ビデオパラメータセット復号部は、さらに、レイヤの依存関係を示す依存レイヤIDを復号する依存レイヤID復号部を備え、
上記ツール有効性情報復号部は、上記ビューデプス導出部において上記依存レイヤIDのレイヤを規定する上記ビデオパラメータセットから導出された依存レイヤのビューIDが、上記ビューデプス導出部において復号された対象レイヤのビューIDと等しい場合にのみ、前記ツール有効性フラグを復号することを特徴とする。
一般に、依存レイヤのビューIDが、対象レイヤのビューIDと等しくない場合には、依存レイヤの情報(例えば依存レイヤの画像や予測パラメータ)と、対象レイヤの情報とは変位ベクトル分だけのずれが発生している。そのため、変位ベクトルを考慮しないツールでは、依存レイヤのビューIDが、対象レイヤのビューIDと等しくない場合には符号化効率が低下する。以上、第2の構成の画像復号装置によれば、画像復号装置によれば、依存レイヤのビューIDが、対象レイヤのビューIDと等しい場合にのみ、ツール有効性フラグを符号化データから復号するため、このような符号化効率が低い場合を防ぐ効果を奏する。
第3の構成の画像復号装置は、上記ビデオパラメータセット復号部は、さらに、レイヤの依存関係を示す依存レイヤIDを復号する依存レイヤID復号部を備え、上記ツール有効性情報復号部は、上記次元ID復号部において上記依存レイヤIDのレイヤを規定する上記ビデオパラメータセットから導出された依存レイヤのデプスフラグが、デプスではないことを示す場合のみ、前記ツール有効性フラグを復号することを特徴とする。
第3の構成の画像復号装置によれば、依存レイヤのデプスフラグが、デプスである場合には、ツールが禁止されるため、デプスを復号する場合において、依存レイヤのために、符号化パラメータを格納する必要が無くなる、これにより、デコーダのメモリを削減する効果を奏する。
第4の構成の符号化データ構造は、NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データにおいて、上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALLユニットタイプnal_unit_typeを含み、上記NALユニットデータに含まれるビデオパラメータセットにおいて、スケーラブルの種別を示すスケーラブルマスクと、スケーラブルの種別ごとの内容を示す次元IDが規定される符号化データ構造であって、次元IDがレイヤIDによって規定されることを特徴とする。
第4の構成の符号化データ構造によれば、3次元スケーラブルのビデオパラメータが、空間スケーラブルや画質スケーラビリティと同じ構造のビデオパラメータを持つという性質をた後ながら、ビデオパラメータで指定されたマッピング規則を用いることなく、簡易な方法でレイヤIDから、デプスフラグとビューIDを導出することができるという効果を奏する。
第4の構成の符号化データ構造は、さらに前記符号化データは、複数の次元IDを含み第1の次元IDが、レイヤIDの1ビット目以上からビューIDとして規定され、第2の次元IDが、レイヤIDの0ビット目からデプスフラグとして規定されることを特徴としても良い。
第5の構成の画像復号装置は、上記ビデオパラメータセット復号部は、さらに、各レイヤのレイヤの有効性を示すレイヤ有効性フラグを復号するレイヤ有効性フラグ復号部を備えることを特徴とする。
第5の構成の画像復号装置によれば、レイヤ有効フラグvalid_layer_flag[i]によって、符号化データに存在しないレイヤを明示的に示すことにより、VPSで規定される最大レイヤ数よりも小さいレイヤIDがデコーダ側に届いていない場合、そのレイヤが始めから存在しないか否かを識別することができるという効果を奏する。
第5の構成の符号化データ構造は、NALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データにおいて、
上記NALユニットデータに含まれるビデオパラメータセットにおいて、スケーラブルの種別を示すスケーラブルマスクと、スケーラブルの種別ごとの内容を示す次元IDと、有効なレイヤを示すレイヤ有効性フラグが規定される。
本発明の画像復号装置によれば、3次元スケーラブルに関わるビューIDとデプスフラグが、空間スケーラブルや画質スケーラビリティと同じ符号化データ構造のビデオパラメータから導出可能になるという効果を奏する。
本発明の画像復号装置によれば、冗長性な符号を復号することなく、デプスに特化したツールの利用可能性を復号することが可能であるという効果を奏する。
本発明の画像復号装置によれば、依存レイヤのビューIDが、対象レイヤのビューIDと等しい場合にのみ、ツール有効性フラグを符号化データから復号するため、符号化効率が低い冗長なフラグを防ぐ効果を奏する。
本発明の画像復号装置によれば、依存レイヤのデプスフラグがデプスである場合にはツールが禁止することにより、デコーダのメモリを削減する効果を奏する。
本発明の実施形態に係る画像伝送システムの構成を示す概略図である。 本実施形態に係る符号化データ#1のデータの階層構造を示す図である。 参照ピクチャリストの一例を示す概念図である。 参照ピクチャの例を示す概念図である。 本実施形態に係るピクチャ復号部11の構成を示す概略図である。 本実施形態に係るインター予測パラメータ復号部303の構成を示す概略図である。 本実施形態に係るマージ予測パラメータ導出部3036の構成を示す概略図である。 本実施形態に係るAMVP予測パラメータ導出部3032の構成を示す概略図である。 ベクトル候補の一例を示す概念図である。 本実施形態に係るイントラ予測画像生成部310の構成を示す概略図である。 本実施形態に係るインター予測画像生成部309の構成を示す概略図である。 本実施形態に係る残差予測の概念図である。 本実施形態に係る照度補償の概念図である。 本実施形態に係る照度補償で用いるテーブルを示す図である。 本発明の実施形態に係るイントラ予測画像生成部310で処理されるデプスイントラ予測を説明するための図である。 本発明の実施形態に係るイントラ予測画像生成部310で処理されるデプスイントラ予測を説明するための図である。 本発明の実施形態に係るNALユニットの構成を示す概略図である。 本発明の実施形態に係るNALユニットの符号化データの構成を示す図である。 本発明の実施形態に係るNALユニットタイプの値とNALユニットの種別の関係を示す図である。 本発明の実施形態に係るVPSの符号化データの構成を示す図である。 本発明の実施形態に係るVPS拡張の符号化データの構成を示す図である。 本発明の実施形態に係るランダムアクセスピクチャの構成を示す図である。 本発明の実施形態に係る画像復号装置1の概略的構成について示した機能ブロック図である。 本発明の実施形態に係るヘッダ復号部10の概略的構成について示した機能ブロック図である。 本発明の実施形態に係るNALユニットヘッダ復号部211の概略的構成について示した機能ブロック図である。 本発明の実施形態に係るVPS復号部212の概略的構成について示した機能ブロック図である。 本発明の実施形態に係るレイヤ情報格納部213で格納される情報を示す図である。 本実施形態に係るピクチャ構造の構成を示す概略図である。 本実施形態に係る画像符号化装置2の構成を示す概略図である。 本実施形態に係るピクチャ符号化部21の構成を示すブロック図である。 本実施形態に係るインター予測パラメータ符号化部112の構成を示す概略図である。 本実施形態に係るヘッダ復号部10の概略的構成について示した機能ブロック図である。 本実施形態に係るNALユニットヘッダ符号化部211Eの概略的構成について示した機能ブロック図である。 本実施形態に係るVPS符号化部212Eの概略的構成について示した機能ブロック図である。 本発明の実施形態に係るヘッダ復号部10Bの概略的構成について示した機能ブロック図である。 本発明の実施形態に係るツール有効性情報復号部215の概略的構成について示した機能ブロック図である。 本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの構成を示す図である。 本発明の実施形態に係るツール有効性情報復号部215Bの概略的構成について示した機能ブロック図である。 本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの別の構成を示す図である。 本発明の実施形態に係るツール有効性情報復号部215Cの概略的構成について示した機能ブロック図である。 本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの別の構成を示す図である。 本発明の実施形態に係るツール有効性情報復号部215Dの概略的構成について示した機能ブロック図である (a)は本発明の実施形態に係るVPS復号部212Dの概略的構成について示した機能ブロック図である。(b)は本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの別の構成を示す図である。 本発明の実施形態に係るツール有効性情報符号化部215Eの概略的構成について示した機能ブロック図である。 本発明の実施形態に係るヘッダ符号化部10BEの概略的構成について示した機能ブロック図である。 本発明の実施形態に係るツール有効性情報符号化部215BEの概略的構成について示した機能ブロック図である。 本発明の実施形態に係るツール有効性情報符号化部215CEの概略的構成について示した機能ブロック図である。
(第1の実施形態)
以下、図面を参照しながら本発明の実施形態について説明する。
図1は、本実施形態に係る画像伝送システム5の構成を示す概略図である。
画像伝送システム5は、複数のレイヤ画像を符号化した符号を伝送し、伝送された符号を復号した画像を表示するシステムである。画像伝送システム5は、画像符号化装置2、ネットワーク3、画像復号装置1及び画像表示装置4を含んで構成される。
画像符号化装置2には、複数のレイヤ画像(テクスチャ画像ともいう)を示す信号T(入力画像#10)が入力される。レイヤ画像とは、ある解像度及びある視点で視認もしくは撮影される画像である。複数のレイヤ画像を用いて3次元画像を符号化するビュースケーラブル符号化を行う場合、複数のレイヤ画像のそれぞれは、視点画像と呼ばれる。ここで、視点は撮影装置の位置又は観測点に相当する。例えば、複数の視点画像は、被写体に向かって左右の撮影装置のそれぞれが撮影した画像である。画像符号化装置2は、この信号のそれぞれを符号化して符号化データ#1(符号化データ)を生成する。符号化データ#1の詳細については、後述する。視点画像とは、ある視点において観測される2次元画像(平面画像)である。視点画像は、例えば2次元平面内に配置された画素毎の輝度値、又は色信号値で示される。以下では、1枚の視点画像又は、その視点画像を示す信号をピクチャ(picture)と呼ぶ。また、複数のレイヤ画像を用いて空間スケーラブル符号化を行う場合、その複数のレイヤ画像は、解像度の低いベースレイヤ画像と、解像度の高い拡張レイヤ画像からなる。複数のレイヤ画像を用いてSNRスケーラブル符号化を行う場合、その複数のレイヤ画像は、画質の低いベースレイヤ画像と、画質の高い拡張レイヤ画像からなる。なお、ビュースケーラブル符号化、空間スケーラブル符号化、SNRスケーラブル符号化を任意に組み合わせて行っても良い。
ネットワーク3は、画像符号化装置2が生成した符号化データ#1を画像復号装置1に伝送する。ネットワーク3は、インターネット(internet)、広域ネットワーク(WAN:Wide Area Network)、小規模ネットワーク(LAN:Local Area Network)又はこれらの組み合わせである。ネットワーク3は、必ずしも双方向の通信網に限らず、地上波ディジタル放送、衛星放送等の放送波を伝送する一方向又は双方向の通信網であっても良い。また、ネットワーク3は、DVD(Digital Versatile Disc)、BD(Blue−ray Disc)等の符号化データ#1を記録した記憶媒体で代替されても良い。
画像復号装置1は、ネットワーク3が伝送した符号化データ#1のそれぞれを復号し、それぞれ復号した複数の復号レイヤ画像Td(復号視点画像Td、復号画像#2)を生成する。
画像表示装置4は、画像復号装置1が生成した複数の復号レイヤ画像Td(復号画像#2)の全部又は一部を表示する。例えば、ビュースケーラブル符号化においては、全部の場合、3次元画像(立体画像)や自由視点画像が表示され、一部の場合、2次元画像が表示される。画像表示装置4は、例えば、液晶ディスプレイ、有機EL(Electro−luminescence)ディスプレイ等の表示デバイスを備える。また、空間スケーラブル符号化、SNRスケーラブル符号化では、画像復号装置1、画像表示装置4が高い処理能力を有する場合には、画質の高い拡張レイヤ画像を表示し、より低い処理能力しか有しない場合には、拡張レイヤほど高い処理能力、表示能力を必要としないベースレイヤ画像を表示する。
<符号化データ#1の構造>
本実施形態に係る画像符号化装置2および画像復号装置1の詳細な説明に先立って、画像符号化装置2によって生成され、画像復号装置1によって復号される符号化データ#1のデータ構造について説明する。
(NALユニットレイヤ)
図17は、符号化データ#1におけるデータの階層構造を示す図である。符号化データ#1は、NAL(Network Abstraction Layer)ユニットと呼ばれる単位で符号化される。
NALは、動画像符号化処理を行う層であるVCL(Video Coding Layer)と、符号化データを伝送・蓄積する下位システムとの間における通信を抽象化するために設けられる層である。
VCLは、画像符号化処理を行う層のことであり、VCLにおいて符号化が行われる。一方、ここでいう、下位システムは、H.264/AVCおよびHEVCのファイルフォーマットや、MPEG−2システムに対応する。以下に示す例では、下位システムは、対象レイヤおよび参照レイヤにおける復号処理に対応する。なお、NALでは、VCLで生成されたビットストリームが、NALユニットという単位で区切られて、宛先となる下位システムへ伝送される。
図18(a)は、NAL(Network Abstraction Layer)ユニットのシンタックステーブルを示す。NALユニットには、VCLで符号化された符号化データ、および、当該符号化データが宛先の下位システムに適切に届けられるためのヘッダ(NALユニットヘッダ:nal_unit_header())が含まれる。なお、NALユニットヘッダは、例えば、図18(b)に示すシンタックスで表わされる。NALユニットヘッダには、NALユニットに格納された符号化データの種類を表わす”nal_unit_type”、格納された符号化データが属するサブレイヤの識別子(テンポラル識別子)を表わす”nuh_temporal_id_plus1”や、格納された符号化データが属するレイヤの識別子(レイヤ識別子)を表わす”nuh_layer_id”(または、nuh_reserved_zero_6bits)が記述されている。NALユニットデータには、後述のパラメータセット、SEI、スライスなどが含まれる。
図19は、NALユニットタイプの値とNALユニットの種別の関係を示す図である。図19に示す通り、SYNA101 で示される0から15の値のNALユニットタイプを持つNALユニットは、非RAP(ランダムアクセスピクチャ)のスライスである。SYNA102 で示される16から21の値のNALユニットタイプを持つNALユニットは、RAP(ランダムアクセスピクチャ)のスライスである。RAPピクチャには、大きく分けて、BLAピクチャ、IDRピクチャ、CRAピクチャがあり、BLAピクチャは、さらに、BLA_W_LP、BLA_W_DLP、BLA_N_LPに分類される。IDRピクチャは、さらに、IDR_W_DLP、IDR_N_LPに分類される。RAPピクチャ以外のピクチャには後述のLPピクチャ、TSAピクチャ、STSAピクチャ、TRAILピクチャなどがある。
図20は、本発明の実施形態に係るVPS(Video Parameter Set)の符号化データの構成を示す図である。一部シンタック要素について意味を示すと、次の通りである。VPSは、複数のレイヤに共通するパラメータを規定するためのパラメータセットである。パラメータセットは、ピクチャを圧縮データである符号化データからID(video_parameter_set_id)を用いて参照される。
・video_parameter_set_id(図20のSYNA401)は、各VPSを識別するための識別子である。
・vps_temporal_id_nesting_flag(図20のSYNA402)は、当該VPSを参照するピクチャにおけるインター予測に関して、追加の制約をするか否かを表わすフラグである。
・vps_max_num_sub_layers_minus1(図20のSYNA403)は、少なくとも基本レイヤを含む階層符号化データに関して、時間スケーラビリティを除く、その他のスケーラビリティに関するレイヤの数の上限値MaxNumLayersを算出するために用いるシンタックスである。なお、レイヤ数の上限値MaxNumLayersは、MaxNumLayers = vps_max_num_sub_layers_minus1 + 1によって表わされる。階層符号化データが基本レイヤのみで構成される場合は、vps_max_num_sub_layers_minus1 = 0となる。
・vps_extension_flag(図20のSYNA404)は、VPSがさらにVPS拡張を含むか否かを示すフラグである。
・vps_extension_data_flag(図20のSYNA405)は、VPS拡張本体であり、具体的には図21で説明する。
なお、本明細書中「XXであるか否かを示すフラグ」と記す場合、1をXXである場合、0をXXではない場合とし、論理否定、論理積などでは1を真、0を偽と扱う(以下同様)。但し、実際の装置や方法では真値、偽値として他の値を用いることもできる。
図21は、本発明の実施形態に係るVPS拡張の符号化データの構成を示す図である。一部シンタックス要素について意味を示すと、次の通りである。本明細書では、符号化データの構成(シンタックステーブル)と、符号化データ構成が含むシンタックス要素の意味や制限(セマンティクス)を、符号化データ構造と呼ぶ。符号化データ構造は、画像復号装置において符号化データを復号する場合のランダムアクセス性やメモリサイズ、異なる画像復号装置間で同じ動作を補償することに関連すると共に、符号化データの符号化効率にも影響を与える重要な技術要素である。
・scalability_mask(図21のSYN501)は、スケーラブルの種別を示す値である。スケーラブルマスクは、各ビットが各スケーラブル種別に対応する。ビット1(1ビット目)は空間スケーラブル、ビット2は画質スケーラブル、ビット3はデプススケーラブル、ビット4はビュースケーラブルに対応する。各ビットが1である場合に対応するスケーラブル種別が有効であることを意味する。複数のビットが1であることも可能であり、例えばscalability_maskが12の場合は、ビット3とビット4が1であるから、デプススケーラブルとビュースケーラブルが有効である。すなわち、複数のビューとデプスを含む3Dスケーラブルを意味する。
・dimension_id_len_minus1(図21のSYN502)は、スケーラブルの種別ごとに含まれる次元IDdimention_idの数num_dimensionsを示す。num_dimensions=dimension_id_len_minus1[1]+1である。例えば、num_dimensionsは、スケーラブルの種別がデプスの場合2、ビューの場合には視点数が復号される。
・次元IDdimention_id(図21のSYN503)は、スケーラブルの種別ごとのピクチャの種別を示す情報である。
・依存レイヤ数num_direct_ref_layers(図21のSYN504)は、依存レイヤref_layer_idの数を示す情報である。
・依存レイヤref_layer_id(図21のSYN505)は、対象レイヤが参照するレイヤのレイヤIDを示す情報である。
・図21のSYN506で、「・・・」として示される部分は、プロファイルもしくはスケーラブルの種別ごとに異なる情報である(詳細は後述する)。
図2は、符号化データ#1におけるデータの階層構造を示す図である。符号化データ#1は、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャを含む。図2の(a)〜(f)は、それぞれ、シーケンスSEQを既定するシーケンスレイヤ、ピクチャPICTを規定するピクチャレイヤ、スライスSを規定するスライスレイヤ、スライスデータを規定するスライスデータレイヤ、スライスデータに含まれる符号化ツリーユニットを規定する符号化ツリーレイヤ、符号化ツリーに含まれる符号化単位(Coding Unit;CU)を規定する符号化ユニットレイヤを示す図である。
(シーケンスレイヤ)
シーケンスレイヤでは、処理対象のシーケンスSEQ(以下、対象シーケンスとも称する)を復号するために画像復号装置1が参照するデータの集合が規定されている。シーケンスSEQは、図2の(a)に示すように、ビデオパラメータセット(Video Parameter Set)シーケンスパラメータセットSPS(Sequence Parameter Set)、ピクチャパラメータセットPPS(Picture Parameter Set)、ピクチャPICT、及び、付加拡張情報SEI(Supplemental Enhancement Information)を含んでいる。ここで#の後に示される値はレイヤIDを示す。図2では、#0と#1すなわちレイヤ0(レイヤIDが0のレイヤ)とレイヤ1(レイヤIDが1のレイヤ)の符号化データが存在する例を示すが、レイヤの種類およびレイヤの数はこれによらない。
ビデオパラメータセットVPSは、複数のレイヤから構成されている動画像において、複数の動画像に共通する符号化パラメータの集合および動画像に含まれる複数のレイヤおよび個々のレイヤに関連する符号化パラメータの集合が規定されている。
シーケンスパラメータセットSPSでは、対象シーケンスを復号するために画像復号装置1が参照する符号化パラメータの集合が規定されている。例えば、ピクチャの幅や高さが規定される。
ピクチャパラメータセットPPSでは、対象シーケンス内の各ピクチャを復号するために画像復号装置1が参照する符号化パラメータの集合が規定されている。例えば、ピクチャの復号に用いられる量子化幅の基準値(pic_init_qp_minus26)や重み付き予測の適用を示すフラグ(weighted_pred_flag)が含まれる。なお、PPSは複数存在してもよい。その場合、対象シーケンス内の各ピクチャから複数のPPSの何れかを選択する。
(ピクチャレイヤ)
ピクチャレイヤでは、処理対象のピクチャPICT(以下、対象ピクチャとも称する)を復号するために画像復号装置1が参照するデータの集合が規定されている。ピクチャPICTは、図2の(b)に示すように、スライスS0〜SNS-1を含んでいる(NSはピクチャPICTに含まれるスライスの総数)。
なお、以下、スライスS0〜SNS-1のそれぞれを区別する必要が無い場合、符号の添え字を省略して記述することがある。また、以下に説明する符号化データ#1に含まれるデータであって、添え字を付している他のデータについても同様である。
(スライスレイヤ)
スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために画像復号装置1が参照するデータの集合が規定されている。スライスSは、図2の(c)に示すように、スライスヘッダSH、および、スライスデータSDATAを含んでいる。
スライスヘッダSHには、対象スライスの復号方法を決定するために画像復号装置1が参照する符号化パラメータ群が含まれる。スライスタイプを指定するスライスタイプ指定情報(slice_type)は、スライスヘッダSHに含まれる符号化パラメータの一例である。
スライスタイプ指定情報により指定可能なスライスタイプとしては、(1)符号化の際にイントラ予測のみを用いるIスライス、(2)符号化の際に単方向予測、または、イントラ予測を用いるPスライス、(3)符号化の際に単方向予測、双方向予測、または、イントラ予測を用いるBスライスなどが挙げられる。
なお、スライスヘッダSHには、上記シーケンスレイヤに含まれる、ピクチャパラメータセットPPSへの参照(pic_parameter_set_id)を含んでいても良い。
(スライスデータレイヤ)
スライスデータレイヤでは、処理対象のスライスデータSDATAを復号するために画像復号装置1が参照するデータの集合が規定されている。スライスデータSDATAは、図2の(d)に示すように、符号化ツリーブロック(CTB:Coded Tree Block)を含んでいる。CTBは、スライスを構成する固定サイズ(例えば64×64)のブロックであり、最大符号化単位(LCU:Largest Cording Unit)と呼ぶこともある。
(符号化ツリーレイヤ)
符号化ツリーレイヤは、図2の(e)に示すように、処理対象の符号化ツリーブロックを復号するために画像復号装置1が参照するデータの集合が規定されている。符号化ツリーユニットは、再帰的な4分木分割により分割される。再帰的な4分木分割により得られる木構造のノードのことを符号化ツリー(coding tree)と称する。4分木の中間ノードは、符号化ツリーユニット(CTU:Coded Tree Unit)であり、符号化ツリーブロック自身も最上位のCTUとして規定される。CTUは、分割フラグ(split_flag)を含み、split_flagが1の場合には、4つの符号化ツリーユニットCTUに分割される。split_flagが0の場合には、符号化ツリーユニットCTUは4つの符号化ユニット(CU:Coded Unit)に分割される。符号化ユニットCUは符号化ツリーレイヤの末端ノードであり、このレイヤではこれ以上分割されない。符号化ユニットCUは、符号化処理の基本的な単位となる。
また、符号化ツリーブロックCTBのサイズ64×64画素の場合には、符号化ユニットのサイズは、64×64画素、32×32画素、16×16画素、および、8×8画素の何れかをとり得る。
(符号化ユニットレイヤ)
符号化ユニットレイヤは、図2の(f)に示すように、処理対象の符号化ユニットを復号するために画像復号装置1が参照するデータの集合が規定されている。具体的には、符号化ユニットは、CUヘッダCUH、予測ツリー、変換ツリー、CUヘッダCUFから構成される。CUヘッダCUHでは、符号化ユニットが、イントラ予測を用いるユニットであるか、インター予測を用いるユニットであるかなどが規定される。符号化ユニットは、予測ツリー(prediction tree;PT)および変換ツリー(transform tree;TT)のルートとなる。CUヘッダCUFは、予測ツリーと変換ツリーの間、もしくは、変換ツリーの後に含まれる。
予測ツリーは、符号化ユニットが1または複数の予測ブロックに分割され、各予測ブロックの位置とサイズとが規定される。別の表現でいえば、予測ブロックは、符号化ユニットを構成する1または複数の重複しない領域である。また、予測ツリーは、上述の分割により得られた1または複数の予測ブロックを含む。
予測処理は、この予測ブロックごとに行われる。以下、予測の単位である予測ブロックのことを、予測単位(prediction unit;PU)とも称する。
予測ツリーにおける分割の種類は、大まかにいえば、イントラ予測の場合と、インター予測の場合との2つがある。イントラ予測とは、同一ピクチャ内の予測であり、インター予測とは、互いに異なるピクチャ間(例えば、表示時刻間、レイヤ画像間)で行われる予測処理を指す。
イントラ予測の場合、分割方法は、2N×2N(符号化ユニットと同一サイズ)と、N×Nとがある。
また、インター予測の場合、分割方法は、符号化データのpart_modeにより符号化され、2N×2N(符号化ユニットと同一サイズ)、2N×N、2N×nU、2N×nD、N×2N、nL×2N、nR×2N、および、N×Nなどがある。なお、2N×nUは、2N×2Nの符号化ユニットを上から順に2N×0.5Nと2N×1.5Nの2領域に分割することを示す。2N×nDは、2N×2Nの符号化ユニットを上から順に2N×1.5Nと2N×0.5Nの2領域に分割することを示す。nL×2Nは、2N×2Nの符号化ユニットを左から順に0.5N×2Nと1.5N×2Nの2領域に分割することを示す。nR×2Nは、2N×2Nの符号化ユニットを左から順に1.5N×2Nと0.5N×1.5Nの2領域に分割することを示す。分割数は1、2、4のいずれかであるため、CUに含まれるPUは1個から4個である。これらのPUを順にPU0、PU1、PU2、PU3と表現する。
また、変換ツリーにおいては、符号化ユニットが1または複数の変換ブロックに分割され、各変換ブロックの位置とサイズとが規定される。別の表現でいえば、変換ブロックは、符号化ユニットを構成する1または複数の重複しない領域のことである。また、変換ツリーは、上述の分割より得られた1または複数の変換ブロックを含む。
変換ツリーにおける分割には、符号化ユニットと同一のサイズの領域を変換ブロックとして割り付けるものと、上述したツリーブロックの分割と同様、再帰的な4分木分割によるものがある。
変換処理は、この変換ブロックごとに行われる。以下、変換の単位である変換ブロックのことを、変換単位(transform unit;TU)とも称する。
(予測パラメータ)
予測ユニットの予測画像は、予測ユニットに付随する予測パラメータによって導出される。予測パラメータには、イントラ予測の予測パラメータもしくはインター予測の予測パラメータがある。以下、インター予測の予測パラメータ(インター予測パラメータ)について説明する。インター予測パラメータは、予測リスト利用フラグpredFlagL0、predFlagL1と、参照ピクチャインデックスrefIdxL0、refIdxL1と、ベクトルmvL0、mvL1から構成される。予測リスト利用フラグpredFlagL0、predFlagL1は、各々L0参照リスト、L1参照リストと呼ばれる参照ピクチャリストが用いられるか否かを示すフラグであり、値が1の場合に対応する参照ピクチャリストが用いられる。2つの参照ピクチャリストが用いられる場合、つまり、predFlagL0=1, predFlagL1=1の場合が、双予測に対応し、1つの参照ピクチャリストを用いる場合、すなわち(predFlagL0, predFlagL1) = (1, 0)もしくは(predFlagL0, predFlagL1) = (0, 1)の場合が単予測に対応する。なお、予測リスト利用フラグの情報は、後述のインター予測フラグinter_pred_idxで表現することもできる。通常、後述の予測画像生成部、予測パラメータメモリでは、予測リスト利用フラグが用いれ、符号化データから、どの参照ピクチャリストが用いられるか否かの情報を復号する場合にはインター予測フラグinter_pred_idxが用いられる。
符号化データに含まれるインター予測パラメータを導出するためのシンタックス要素には、例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idx、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXがある。
(参照ピクチャリストの一例)
次に、参照ピクチャリストの一例について説明する。参照ピクチャリストとは、復号ピクチャバッファ12に記憶された参照ピクチャからなる列である。図3は、参照ピクチャリストの一例を示す概念図である。参照ピクチャリスト601において、左右に一列に配列された5個の長方形は、それぞれ参照ピクチャを示す。左端から右へ順に示されている符号、P1、P2、Q0、P3、P4は、それぞれの参照ピクチャを示す符号である。P1等のPとは、視点Pを示し、そしてQ0のQとは、視点Pとは異なる視点Qを示す。P及びQの添字は、ピクチャ順序番号POCを示す。refIdxLXの真下の下向きの矢印は、参照ピクチャインデックスrefIdxLXが、復号ピクチャバッファ12において参照ピクチャQ0を参照するインデックスであることを示す。
(参照ピクチャの例)
次に、ベクトルを導出する際に用いる参照ピクチャの例について説明する。図4は、参照ピクチャの例を示す概念図である。図4において、横軸は表示時刻を示し、縦軸は視点を示す。図4に示されている、縦2行、横3列(計6個)の長方形は、それぞれピクチャを示す。6個の長方形のうち、下行の左から2列目の長方形は復号対象のピクチャ(対象ピクチャ)を示し、残りの5個の長方形がそれぞれ参照ピクチャを示す。対象ピクチャから上向きの矢印で示される参照ピクチャQ0は対象ピクチャと同表示時刻であって視点が異なるピクチャである。対象ピクチャを基準とする変位予測においては、参照ピクチャQ0が用いられる。対象ピクチャから左向きの矢印で示される参照ピクチャP1は、対象ピクチャと同じ視点であって、過去のピクチャである。対象ピクチャから右向きの矢印で示される参照ピクチャP2は、対象ピクチャと同じ視点であって、未来のピクチャである。対象ピクチャを基準とする動き予測においては、参照ピクチャP1又はP2が用いられる。
(ランダムアクセスピクチャ)
本実施例で扱うランダムアクセスピクチャ(RAP)の構成について説明する。図22は、ランダムアクセスピクチャの構成を説明する図である。RAPには、IDR(Instantaneous Decoding Refresh)、CRA(Clean Randum Access)、BLA(Broken Link Access)の3種類がある。あるNALユニットが、RAPピクチャのスライスを含むNALユニットであるか否かは、NALユニットタイプにより識別される。IDR_W_LP、IDR_N_LP、CRA、BLA_W_LP、BLA_W_DLP、BLA_N_LPのNALユニットタイプは、各々、後述のIDR_W_LPピクチャ、IDR_N_LPピクチャ、CRAピクチャ、BLA_W_LPピクチャ、BLA_W_DLPピクチャ、BLA_N_LPピクチャに対応する。すなわち、上記ピクチャのスライスを含むNALユニットは、上述のNALユニットタイプを有する。
図22(a)は、RAPピクチャが先頭ピクチャ以外にない場合である。ボックス中の英字はピクチャの名前、数字はPOCを示す(以下同様)。図中左から右に表示順が並ぶ。IDR0、A1、A2、B4、B5、B6が、IDR0、B4、A1、A2、B6、B5の順で復号される。以下、図22(a)のB4で示されるピクチャがRAPピクチャに変更される場合を、図22(b)から図22(g)に示す。
図22(b)は、IDRピクチャ(特にIDR_W_LPピクチャ)が挿入される例である。本例では、IDR0、IDR´0、A1、A2、B2、B1の順で復号される。2つのIDRピクチャを区別するために時刻が先(復号順も先)のピクチャをIDR0、時刻が後のピクチャをIDR´0ピクチャと呼ぶ。本例のIDRピクチャを含め全てのRAPピクチャは、他のピクチャの参照は禁止される。他のピクチャの参照は、RAPピクチャのスライスを後述のようにイントラI_SLICEに制限することで行われる(この制限は、後述の実施例では、レイヤIDが0以外のレイヤに対して緩和される)。よって、RAPピクチャ自身は、他のピクチャの復号によらず独立して復号が可能である。さらに、IDRピクチャの復号時点で、後述のリファレンスピクチャセット(RPS)が初期化される。そのため、IDRピクチャ以前に復号されたピクチャを用いた予測、例えば、B2からIDR0への予測は禁止される。ピクチャA3は、RAP(ここではIDR´0)の表示時刻POCより前の表示時刻POCを有するが、RAPピクチャよりも後に復号される。このようなRAPピクチャよりも後に復号されるが、RAPピクチャよりも前に再生されるピクチャをLeadingピクチャ(LPピクチャ)と呼ぶ。RAPピクチャ、LPピクチャ以外のピクチャは、RAPピクチャよりも後に復号され、再生されるピクチャであり一般にTRAILピクチャと呼ばれる。IDR_W_LPは、Instantaneous Decoding Refresh With Leading Pictureの略であり、ピクチャA3のようなLPピクチャが含まれていても良い。ピクチャA2は、図22(a)の例では、IDR0とPOC4のピクチャを参照していたが、IDRピクチャの場合には、IDR´0を復号した時点で、RPSが初期化されるため、A2からIDR´0への参照は禁止される。またIDRピクチャを復号した時点で、POCは初期化される。
以上をまとめると、IDRピクチャは以下の制約を有するピクチャである。
・ピクチャ復号時点でPOCは初期化される
・ピクチャ復号時点でRPSは初期化される
・他のピクチャの参照の禁止
・復号順でIDRより後のピクチャから、復号順でIDRより前のピクチャの参照の禁止
・RASLピクチャ(後述)の禁止
・RADLピクチャ(後述)を持つことができる(IDR_W_LPピクチャの場合)。
図22(c)は、IDRピクチャ(特にIDR_N_LPピクチャ)が挿入される例である。IDR_N_LPは、Instantaneous Decoding Refresh No Leading Pictureの略であり、LPピクチャの存在が禁止される。従って、図22(b)のA3ピクチャの存在が禁止される。よって、A3ピクチャは、IDR´0ピクチャの代わりに、IDR0ピクチャを参照することで、IDR´0ピクチャより前に復号される必要がある。
図22(d)は、CRAピクチャが挿入される例である。本例では、IDR0、CRA4、A1、A2、B6、B5の順で復号される。CRAピクチャでは、IDRピクチャと異なり、RPSの初期化は行われない。従って、復号順でRAP(ここではCRA)より後のピクチャから、復号順でRAP(ここではCRA)より前のピクチャの参照の禁止(A2からCRA4への参照禁止)は、必要とされない。しかしながら、RAPピクチャであるCRAピクチャから復号を開始する場合には、CRAより表示順が後のピクチャは復号可能であることが必要なため、表示順でRAP(CRA)より後のピクチャから、復号順でRAP(CRA)より前のピクチャの参照の禁止(B6からIDR0への参照禁止)は必要とされる。なお、CRAではPOCは初期化されない。
以上をまとめると、CRAピクチャは以下の制約を有するピクチャである。
・ピクチャ復号時点でPOCは初期化されない
・ピクチャ復号時点でRPSは初期化されない
・他のピクチャの参照の禁止
・表示順でCRAより後のピクチャから、復号順でCRAより前のピクチャの参照の禁止
・RADLピクチャとRASLピクチャを持つことできる。
図22(e)から(g)は、BLAピクチャの例である。BLAピクチャはCRAピクチャを含む符号化データの編集などにより、CRAピクチャを先頭としてシーケンスを再構成した場合に利用されるRAPピクチャであり、以下の制限を有する。
・ピクチャ復号時点でPOCは初期化される
・他のピクチャの参照の禁止
・表示順でBLAより後のピクチャから、復号順でBLAより前のピクチャの参照の禁止・RASLピクチャ(後述)を持つことができる(BLA_W_LPの場合)
・RADLピクチャ(後述)を持つことができる(BLA_W_LP、BLA_W_DLPピクチャの場合)。
図22(e)は、BLAピクチャ(特にBLA_W_LPピクチャ)を用いる例である。BLA_W_LPは、Broken Link Access With Leading Pictureの略であり、LPピクチャの存在が許容される。CRA4ピクチャをBLA_W_LPピクチャに置き換えた場合、BLAピクチャのLPピクチャであるA2ピクチャ、A3ピクチャは符号化データ中に存在しても良い。しかしながら、A2ピクチャは、BLA_W_LPピクチャよりも前に復号されるピクチャであるから、BLA_W_LPピクチャを先頭ピクチャとして編集した符号化データでは符号化データ中に存在しない。BLA_W_LPピクチャではそのような復号不可能なLPピクチャをRASL(random access skipped leading)ピクチャとして扱い、復号、表示しないことで対応する。なお、A3ピクチャは、復号可能なLPピクチャであり、このようなピクチャはRADL(random access decodable leading)ピクチャと呼ばれる。上記RASLピクチャ、RADLピクチャはRASL_NUT、RADL_NUTのNALユニットタイプにより識別される。
図22(f)は、BLAピクチャ(特にBLA_W_DLPピクチャ)を用いる例である。BLA_W_DLPは、Broken Link Access With Decorable Leading Pictureの略であり、復号可能なLPピクチャの存在が許容される。よって、BLA_W_DLPピクチャでは、図22(e)と異なり、復号不可能なLPピクチャ(RASL)であるA2ピクチャは、符号化データ中に存在を許されない。復号可能なLPピクチャ(RADL)であるA3ピクチャは符号化データ中に存在が許される。
図22(g)は、BLAピクチャ(特にBLA_N_LPピクチャ)を用いる例である。BLA_N_LPは、Broken Link Access No Leading Pictureの略であり、LPピクチャの存在が許容されない。よって、BLA_N_DLPピクチャでは、図22(e)、図22(f)と異なり、A2ピクチャ(RASL)だけでなく、A3ピクチャ(RADL)も符号化データ中に存在を許されない。
(インター予測フラグと予測リスト利用フラグ)
インター予測フラグと、予測リスト利用フラグpredFlagL0、predFlagL1の関係は以下のように相互に変換可能である。そのため、インター予測パラメータとしては、予測リスト利用フラグを用いても良いし、インター予測フラグを用いてもよい。また、以下、予測リスト利用フラグを用いた判定は、インター予測フラグに置き替えても可能である。逆に、インター予測フラグを用いた判定は、予測リスト利用フラグに置き替えても可能である。
インター予測フラグ = (predFlagL1<<1) + predFlagL0
predFlagL0 =インター予測フラグ & 1
predFlagL1 =インター予測フラグ >> 1
ここで、>>は右シフト、<<は左シフトである。
(マージ予測とAMVP予測)
予測パラメータの復号(符号化)方法には、マージ予測(merge)モードとAMVP(Adaptive Motion Vector Prediction、適応動きベクトル予測)モードがある、マージフラグmerge_flagは、これらを識別するためのフラグである。マージ予測モードでも、AMVPモードでも、既に処理済みのブロックの予測パラメータを用いて、対象PUの予測パラメータが導出される。マージ予測モードは、予測リスト利用フラグpredFlagLX(インター予測フラグinter_pred_idx)、参照ピクチャインデックスrefIdxLX、ベクトルmvLXを符号化データに含めずに、既に導出した予測パラメータをそのまま用いるモードであり、AMVPモードは、インター予測フラグinter_pred_idx、参照ピクチャインデックスrefIdxLX、ベクトルmvLXを符号化データに含めるモードである。なおベクトルmvLXは、予測ベクトルを示す予測ベクトルインデックスmvp_LX_idxと差分ベクトル(mvdLX)として符号化される。
インター予測フラグinter_pred_idcは、参照ピクチャの種類および数を示すデータであり、Pred_L0、Pred_L1、Pred_Biの何れかの値をとる。Pred_L0、Pred_L1は、各々L0参照リスト、L1参照リストと呼ばれる参照ピクチャリストに記憶された参照ピクチャが用いられることを示し、共に1枚の参照ピクチャを用いること(単予測)を示す。L0参照リスト、L1参照リストを用いた予測を各々L0予測、L1予測と呼ぶ。Pred_Biは2枚の参照ピクチャを用いること(双予測)を示し、L0参照リストとL1参照リストに記憶された参照ピクチャの2つを用いることを示す。予測ベクトルインデックス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を用いて行われる。
(画像復号装置の構成)
本実施形態に係る画像復号装置1の構成について説明する。図23は、本実施形態に係る画像復号装置1の構成を示す概略図である。画像復号装置1は、ヘッダ復号部10、ピクチャ復号部11、復号ピクチャバッファ12、参照ピクチャ管理部13を含んで構成される。画像復号装置1は、複数のレイヤを含む画像において特定の時刻のピクチャから復号を開始する後述するランダムアクセス復号処理が可能である。
[ヘッダ復号部10]
ヘッダ復号部10は、画像符号化装置2より供給される符号化データ#1から、NALユニット単位、シーケンス単位、ピクチャ単位、またはスライス単位で復号に利用される情報を復号する。復号された情報は、ピクチャ復号部11及び参照ピクチャ管理部13に出力される。
ヘッダ復号部10は、符号化データ#1に含まれるVPSおよびSPSを既定のシンタックス定義に基づいてパースして、シーケンス単位で復号に利用される情報を復号する。例えば、レイヤ数に関する情報がVPSから復号され、復号画像の画像サイズに関連する情報がSPSから復号される。
また、ヘッダ復号部10は、符号化データ#1に含まれるスライスヘッダを既定のシンタックス定義に基づいてパースして、スライス単位で復号に利用される情報を復号する。例えば、スライスタイプがスライスヘッダから復号される。
図24は、ヘッダ復号部10の概略的構成について示した機能ブロック図である。図24に示すようにヘッダ復号部10は、NALユニットヘッダ復号部211、VPS復号部212(ビデオパラメータセット復号部)、レイヤ情報格納部213、ビューデプス導出部214、ツール有効性情報復号部215を備えている。
[NALユニットヘッダ復号部211]
図25は、NALユニットヘッダ復号部211の概略的構成について示した機能ブロック図である。図25に示すように、NALユニットヘッダ復号部211はレイヤID復号部2111とNALユニットタイプ復号部2112を含んで構成される。
レイヤID復号部2111は、符号化データからレイヤIDを復号する。NALユニットタイプ復号部2112は、符号化データからNALユニットタイプを復号する。レイヤIDは、例えば0から63の6ビットの情報であり、レイヤIDが0のレイヤは、ベースレイヤを示す。NALユニットタイプは、例えば0から63の6ビットの情報であり、NALユニットに含まれるデータの種別を示す。後述するようにデータの種別には、例えば、VPS、SPS、PPSなどのパラメータセット、IDRピクチャ、CRAピクチャ、LBAピクチャなどのRPSピクチャ、LPピクチャなどの非RPSピクチャ、SEIなどがNALユニットタイプから識別される。
[VPS復号部212]
VPS復号部212は、符号化データに含まれるVPSおよびVPS拡張から規定のシンタックス定義に基づいて、複数のレイヤで復号に利用される情報を復号する。例えば、VPSからは図20に示すシンタックス、VPS拡張から図21に示すシンタックスが復号される。VPS拡張は、フラグvps_extension_flagが1の場合に復号される。
図26は、VPS復号部212の概略的構成について示した機能ブロック図である。図26に示すように、VPS復号部212はスケーラブルタイプ復号部2121と次元ID復号部2122、依存レイヤID復号部2123を含んで構成される。
VPS復号部212は、図示しない内部のレイヤ数復号部により、符号化データからレイヤ数を示すシンタックス要素vps_max_layers_minus1を復号し、次元ID復号部2122、依存レイヤID復号部2123に出力すると共に、レイヤ情報格納部213に格納する。
スケーラブルタイプ復号部2121は、符号化データからスケーラブルマスクscalable_maskを復号し、次元ID復号部2122に出力すると共に、レイヤ情報格納部213に格納する。
次元ID復号部2122は、符号化データから次元IDdimension_idを復号し、レイヤ情報格納部213に格納する。具体的には、次元ID復号部2122は、まずスケーラブルマスクの各ビットを操作し、1であるビットの数NumScalabilityTypesを導出する。例えば、scalable_mask=1の場合は、ビット0(0ビット目)のみが1なのでNumScalabilityTypes=1、scalable_mask=12の場合は、ビット2(=4)とビット3(=8)の2つが1であるのでNumScalabilityTypes=2である。
なお、本実施形態ではLSB側からみて1個目のビットをビット0(0ビット目)と表現する。つまりN個目のビットをビットN−1と表現する。
続いて、次元ID復号部2122は、レイヤi、スケーラブルの種別j毎に次元IDdimension_id[i][j]を復号する。レイヤIDのインデックスiは1からvps_max_layers_minus1までの値、スケーラブル種別を示すインデックスjは0〜NumScalabilityTypes-1までの値を取る。
依存レイヤID復号部2123は、符号化データから依存レイヤ数num_direct_ref_layersと依存レイヤフラグref_layer_idを復号し、レイヤ情報格納部213に格納する。具体的には、レイヤiごとに依存レイヤ数num_direct_ref_layersの数だけdimension_id[i][j]を復号する。レイヤIDのインデックスiは1からvps_max_layers_minus1までの値、依存レイヤフラグのインデックスjは、0〜num_direct_ref_layers-1までの値を取る。例えばレイヤIDが1のレイヤが、レイヤIDが2のレイヤ、レイヤIDが3のレイヤに依存する場合は、2つのレイヤに依存するため依存レイヤ数num_direct_ref_layers[]=2であり、依存レイヤIDは2つ、すなわちref_layer_id [1][0]=2、ref_layer_id [1][1]=3となる。
[レイヤ情報格納部213]
図27は、本発明の実施形態に係るレイヤ情報格納部213で格納される情報を示す図である。図27では、レイヤ数が6(vps_max_layers_minus1=5)の場合で、スケーラブルマスクが3Dスケーラブルを意味する場合(デプススケーラブルを意味するビット3とビュースケーラブルを示すビット4がどちらも1の場合の場合、つまり、scalable_mask=24の場合)を示している。図27に示すように、レイヤ情報格納部213では、レイヤ数vps_max_layers_minus1とスケーラブルマスクscalable_maskの他、レイヤ毎(layer_id=0からlayer_id=5まで)の、個々の次元IDdimension_id[][]と依存レイヤref_layer_id[][]を格納する。
[ビューデプス導出部214]
ビューデプス導出部214は、ビューデプス導出部214に入力された対象レイヤのレイヤIDlayer_id(以下対象layer_id)に基づいて、レイヤ情報格納部213を参照し、対象レイヤのビューIDview_idとデプスフラグdepth_flagを導出する。具体的には、ビューデプス導出部214は、レイヤ情報格納部213に格納されたスケーラブルマスクを読み出し、スケーラブルマスクの値に応じて以下の処理を行う。
スケーラブルマスクがデプススケーラブルを意味する場合(デプススケーラブルを示すビット3が1の場合の場合、つまり、scalable_mask=8の場合)、ビューデプス導出部214は、ビューIDを示す次元IDview_dimension_idに0を設定し、以下の式によりview_idとdepth_flagを導出する。
view_dimension_id = 0
depth_flag = dimension_id[layer_id][view_dimension_id]
すなわち、ビューデプス導出部214は、対象layer_idに対応するdimension_id[][]をレイヤ情報格納部213から読み出しデプスフラグdepth_flagに設定する。ビューIDは0に設定する。
スケーラブルマスクがビュースケーラブルを意味する場合(ビュースケーラブルを示すビット4が1の場合の場合、つまり、scalable_mask=16の場合)、ビューデプス導出部214は、デプスフラグを示す次元IDdepth_dimension_idに0を設定し、以下の式によりview_idとdepth_flagを導出する。
depth_dimension_id = 0
view_id = dimension_id[layer_id][depth_dimension_id]
depth_flag = 0
すなわち、ビューデプス導出部214は、対象layer_idに対応するdimension_id[][]をレイヤ情報格納部213から読み出しビューIDview_idに設定する。デプスフラグdepth_flagは0に設定する。
スケーラブルマスクが3Dスケーラブルを意味する場合(デプススケーラブルを意味するビット3とビュースケーラブルを示すビット4がどちらも1の場合の場合、つまり、scalable_mask=24の場合)ビューデプス導出部214は、デプスフラグを示す次元IDdepth_dimension_idに0、ビューIDを示す次元IDview_dimension_idに1を設定し、以下の式によりview_idとdepth_flagを導出する。
depth_dimension_id = 0
view_dimension_id = 1
depth_flag = dimension_id[layer_id][depth_dimension_id]
view_id = dimension_id[layer_id][view_dimension_id]
すなわち、ビューデプス導出部214は、対象layer_idに対応する2つのdimension_id[][]をレイヤ情報格納部213から読み出し一方をデプスフラグdepth_flag、他方をview_idに設定する。
以上の構成では、ビューデプス導出部214は、スケーラブルの種別がデプススケーラブルを含む場合、対象レイヤがテクスチャであるか、デプスであるかを示すデプスフラグdepth_flagに相当するdimention_idを読み出し、デプスフラグdepth_flagに設定する。また、スケーラブルの種別がビュースケーラブルを含む場合、ビューIDview_idに相当するdimention_idを読み出し、ビューIDview_idに設定する。なお、スケーラブルの種別がデプススケーラブルかつビュースケーラブルの場合、2つのdimension_idを読み出し、各々をdepth_flagとview_idに設定する。
[ツール有効性情報復号部215]
ツール有効性情報復号部215は、VPS、SPS、PPSなどのパラメータセットから、特定のツールが使用可能か否かを表すフラグ(ツール有効性フラグ)を復号する。ツール有効性フラグは、例えば、インタービュー予測フラグmulti_view_mv_pred_flag、残差予測フラグmulti_view_residual_pred_flag、デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flagなどがある。インタービュー予測フラグmulti_view_mv_pred_flag、残差予測フラグmulti_view_residual_pred_flagは、対象レイヤがベースレイヤ以外の場合に利用可能なツールであり、デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flagは、対象レイヤがデプスピクチャである場合に利用可能なツールである。
ツール有効性情報復号部215は、ツール有効性フラグが符号化データ中に存在するか否かを判定し、ツール有効性フラグが符号化データ中に存在する場合には、ツール有効性フラグを符号化データから抽出して復号し、ツール有効性フラグが符号化データ中に存在しない場合には、ツール有効性フラグとしてツールが有効でない(使用しないこと)を意味する0を導出する。
図36は、ツール有効性情報復号部215の概略的構成について示した機能ブロック図である。図36に示すように、ツール有効性情報復号部215は対象レイヤデプス判定部2151を含んで構成される。
対象レイヤデプス判定部2151は、入力されたレイヤIDlayer_idに基づいて、対象レイヤがデプスであるか否かを判定する。具体的には、ビューデプス導出部214に対象layer_idを入力し、ビューデプス導出部214からデプスフラグdepth_flagを得る。
ツール有効性情報復号部215は、対象レイヤがベースレイヤ以外の場合に利用可能なツール(インタービュー予測フラグmulti_view_mv_pred_flag、残差予測フラグmulti_view_residual_pred_flag)のツール有効性フラグを、対象レイヤlayer_idが0以外の場合に符号化データから復号し、対象レイヤlayer_idが0の場合には、符号化データを参照せずに、0として導出する。
ツール有効性情報復号部215は、対象レイヤがデプスの場合に利用可能なツール(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)のツール有効性フラグを、導出されたデプスフラグdepth_flagが1の場合に符号化データから復号し、導出されたデプスフラグdepth_flagが0の場合には、符号化データを参照せずに0として導出する。
図37は、本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの構成の一部を示す図である。図37の符号化データのSYNX801に示す「・・・」には、図21に示すVPS拡張の符号化データが含まれる(逆に、図37の符号化データは、図21のSYN506に含まれる)。図37のVPS拡張データは、マルチビュープロファイルもしくはスケーラブルタイプがデプススケーラブルを示す場合に含まれる情報である。図37の構成の符号化データは、ツール有効性情報復号部215により復号される符号化データである。図37のSYNX802に示す部分は、ビューデプス導出部214が、デプスフラグを示す次元IDdepth_dimension_idに0、ビューIDを示す次元IDview_dimension_idに1を設定する動作に相当する。図37のSYNX803に示す通り、本実施形態の符号化データは、対象レイヤlayer_idが0以外(図ではiが0以外の場合)に、対象レイヤがベースレイヤ以外の場合に利用可能なツールのツール有効性フラグ(インタービュー予測フラグmulti_view_mv_pred_flag、残差予測フラグmulti_view_residual_pred_flag)を含む。また、図37のSYNX804に示す通り、対象レイヤがデプスの場合に利用可能なツール(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)のツール有効性フラグを、対象レイヤlayer_idに対応するデプスに相当する次元IDが0以外(図ではdimension_id[ i ][ depth_dimension_id ])に、対象レイヤがデプスピクチャの場合に利用可能なツールのツール有効性フラグ(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)を含む。対象レイヤがデプスの場合に利用可能なツールのツール有効性フラグデプスを含む場合にのみ含むため、ツール有効性フラグが常に0であることが分かっているような対象ピクチャがデプスではない場合において、冗長なデータを含むことがない。
以上の構成の画像復号装置によれば、1つ以上のレイヤのパラメータを規定するビデオパラメータセットから、スケーラブルの種別を示すスケーラブルマスクと、次元IDを復号するビデオパラメータセット復号部と、レイヤIDと次元IDの関係を格納するレイヤパラメータ格納部と、NALユニットヘッダからレイヤIDを復号するレイヤID復号部と、さらに、上記レイヤID復号部で復号された対象レイヤのレイヤIDから、上記レイヤパラメータ格納部に格納された次元IDを参照し、対象レイヤのビューIDとデプスフラグを導出するビューデプス導出部を備えことにより、3次元スケーラブルに関わるビューIDとデプスフラグが、空間スケーラブルや画質スケーラビリティと同じ符号化データ構造のビデオパラメータから導出可能になるという効果を奏する。
以上の構成のVPS復号部212によれば、デプスで利用されるツール有効性フラグに対して、スケーラブルマスクの値に応じて、デプスフラグに対応する次元IDを特定し、特定された次元IDから導出されたデプスフラグが1の場合にのみ、ツール有効性フラグを復号する。これによりレイヤの種別がスケーラブルの種類に応じて意味が変化する次元IDによって規定された場合においても、冗長性な符号を復号することなく、デプスに特化したツールの利用可能性を復号することが可能であるという効果を奏する。
図35は、ヘッダ復号部10の別の構成であるヘッダ復号部10Bの概略的構成について示した機能ブロック図である。図35に示すようにヘッダ復号部10Bは、NALユニットヘッダ復号部211、VPS復号部212B(ビデオパラメータセット復号部)、レイヤ情報格納部213、ビューデプス導出部214、ツール有効性情報復号部215Bを備えている。図24と異なり、ヘッダ復号部10Bの備えるツール有効性情報復号部215Bは、依存レイヤも入力され、依存レイヤに基づいてツール有効性を判定する。 (ツール有効性情報復号部215B)
図38は、ツール有効性情報復号部215の別の構成であるツール有効性情報復号部215Bの概略的構成について示した機能ブロック図である。図38に示すように、ツール有効性情報復号部215Bは対象レイヤデプス判定部2151と参照レイヤビュー判定部2152を含んで構成される。対象レイヤデプス判定部2151は既に説明した通りであり、対象レイヤのデプスフラグを導出する。
参照レイヤビュー判定部2152は、対象レイヤlayer_idのビューIDと依存レイヤのビューIDが一致するか否かを以下の手順で判定する。まず、参照レイヤビュー判定部2152は、対象レイヤlayer_idをビューデプス導出部214に出力し、以下のように対象レイヤのビューIDview_idを得る。
view_id = dimension_id [layer_id] [view_dimension_id]
ここで、view_dimension_idはをビューIDの次元IDを示すインデックスである。
続いて、レイヤ情報格納部213から、依存レイヤのビューIDref_layer_id[layer_id]を読み出し、ビューデプス導出部214に出力し、以下のように依存レイヤのビューIDref_view_idを得る。
ref_view_id = dimension_id [ref_layer_id[layer_id]] [view_dimension_id]
最後に参照レイヤビュー判定部2152は、最後に、対象レイヤlayer_idのビューIDview_idと依存レイヤのビューIDref_view_idが一致するか否か判定する。すなわち以下の式が成り立つ場合に1、成り立たない場合に0とする。
(dimension_id [layer_id] [view_dimension_id] == dimension_id [ref_layer_id[layer_id]] [view_dimension_id])
ツール有効性情報復号部215Bは、参照レイヤビュー判定部2152の判定に基づいて、対象レイヤlayer_idのビューIDと依存レイヤのビューIDが一致する場合に、対象レイヤがデプスの場合に利用可能なツール(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)のツール有効性フラグを、符号化データから復号し、一致しない場合には、符号化データを参照せずに0として導出する。
ここで、ツール有効性情報復号部215Bは、さらに対象レイヤがデプスであるかを考慮し、導出されたデプスフラグdepth_flagが1の場合かつ対象レイヤlayer_idのビューIDと依存レイヤのビューIDが一致する場合に、ツール有効性フラグを符号化データから復号し、それ以外の場合は、符号化データを参照せずに0として導出しても良い。
図39は、ツール有効性情報復号部215Bにより復号される、本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの構成の一部を示す図である。図39の符号化データのSYNX1001に示す「・・・」には、図21に示すVPS拡張の符号化データが含まれる。図39のSYNX1002に示す部分は、ビューデプス導出部214が、デプスフラグを示す次元IDdepth_dimension_idに0、ビューIDを示す次元IDview_dimension_idに1を設定する動作に相当する。図39のSYNX1003に示す通り本実施形態の符号化データは、対象レイヤlayer_idが0以外(図ではiが0以外の場合)に、対象レイヤがベースレイヤ以外の場合に利用可能なツールのツール有効性フラグ(インタービュー予測フラグmulti_view_mv_pred_flag、残差予測フラグmulti_view_residual_pred_flag)を含む。また、図39のSYNX1004に示す通り対象レイヤがデプスの場合に利用可能なツール(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)のツール有効性フラグを、対象レイヤlayer_idに対応するデプスに相当する次元IDが0以外(図ではdimension_id[ i ][ depth_dimension_id ])で、かつ、対象レイヤlayer_idのビューIDと依存レイヤのビューIDが一致する場合(dimension_id [layer_id ] [view_dimension_id] == dimension_id [ref_layer_id[layer_id] ] [view_dimension_id]) に、対象レイヤがデプスピクチャの場合に利用可能なツールのツール有効性フラグ(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)を含む。
上記の構成のツール有効性情報復号部215Bを備える画像復号装置および上記、図39を用いて説明した符号化データ構造によれば、ヘッダ復号部10Bにおいて、レイヤの依存関係を示す依存レイヤIDを復号する依存レイヤID復号部2123を含むVPS復号部212Bを備え、依存レイヤのビューIDが、対象ピクチャのビューIDと等しい場合のみ、対象レイヤがデプスの場合に利用可能なツールのツール有効性フラグを復号する。一般に、依存レイヤのビューIDが、対象レイヤのビューIDと等しくない場合には、依存レイヤの情報(例えば依存レイヤの局所復号画像や予測パラメータ)と、対象レイヤの情報(例えば、対象レイヤの対象画像や予測パラメータ)とは、同じ座標を有する領域(例えば同じ左上座標、同じサイズのPU)でも異なるオブジェクトに対応する。すなわち、同じオブジェクトに対応する領域の座標が、対象レイヤと依存レイヤとでは、変位ベクトル分だけのずれが発生している。そのため、変位ベクトルを導出し、補正を行わないツール(例えば、デプスピクチャの場合に利用可能なツールであるデプスイントラ予測や動きパラメータ継承MPI)では、依存レイヤのビューIDが、対象レイヤのビューIDと等しくない場合には符号化効率が低下する。上記画像復号装置によれば、依存レイヤのビューIDが、対象レイヤのビューIDと等しい場合にのみ、ツール有効性フラグを符号化データから復号するため、このような符号化効率が低い場合に冗長なフラグが符号化されることを防ぐ効果を奏する。
(ツール有効性情報復号部215C)
図40は、ツール有効性情報復号部215のさらに別の構成であるツール有効性情報復号部215Cの概略的構成について示した機能ブロック図である。図40に示すように、ツール有効性情報復号部215Cは、対象レイヤデプス判定部2151と参照レイヤデプス判定部2153から構成される。対象レイヤデプス判定部2151は既に説明した通りであり、対象レイヤのデプスフラグを導出する。なお、ツール有効性情報復号部215Cを備えるVPS復号部212C(ビデオパラメータセット復号部)は、図35のVPS復号部212Bにおいて、ツール有効性情報復号部215Bをツール有効性情報復号部215Cに置き換えた構成を備える。
参照レイヤデプス判定部2153は、依存レイヤがテクスチャピクチャであるか(デプスフラグが0であるか)否かを以下の手順で判定する。参照レイヤデプス判定部2153は、対象レイヤlayer_idをビューデプス導出部214に出力し、以下のように対象レイヤのデプスフラグdepth_flagを得る。
depth_flag = dimension_id [layer_id] [depth_dimension_id]
ここで、view_dimension_idはをデプスフラグの次元IDを示すインデックスである。
続いて、レイヤ情報格納部213から、依存レイヤのビューIDref_layer_id[layer_id]を読み出し、ビューデプス導出部214に出力し、以下のように依存レイヤのデプスフラグref_depth_flagを得る。
ref_depth_flag = dimension_id [ref_layer_id[layer_id]] [depth_dimension_id]
最後に、参照レイヤデプス判定部2153は、依存レイヤがテクスチャピクチャであるか(デプスフラグref_depth_flagが0であるか)否かを判定する。ここでは、以下の式が成り立つ場合に1、成り立たない場合に0とする。
(!dimension_id [ref_layer_id[layer_id]] [depth_dimension_id])
なお、!Xは、値Xが0の場合に真(1)、1の場合に偽(0)とする関数である。
ツール有効性情報復号部215Cは、依存レイヤがテクスチャピクチャである場合(!ref_depth_flagが1の場合)に、対象レイヤがデプスの場合に利用可能なツール(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)のツール有効性フラグを、符号化データから復号し、テクスチャピクチャではない場合には、符号化データを参照せずに0として導出する。
ツール有効性情報復号部215Cは、さらに対象レイヤがデプスであるかを考慮し、導出されたデプスフラグdepth_flagが1の場合かつ対象レイヤがテクスチャピクチャである場合にツール有効性フラグを符号化データから復号し、それ以外の場合は、符号化データを参照せずにツール有効性フラグを0として導出しても良い。
図41(a)は、ツール有効性情報復号部215Cにより復号される、本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの構成を示す図である。図39の符号化データのSYNX1001に示す「・・・」には、図21に示すVPS拡張の符号化データが含まれる。図41(a)のSYNX1202に示す部分は、ビューデプス導出部214が、デプスフラグを示す次元IDdepth_dimension_idに0、ビューIDを示す次元IDview_dimension_idに1を設定する動作に相当する。図41(a)のSYNX1203に示す通り本実施形態の符号化データ構造は、対象レイヤlayer_idが0以外(図ではiが0以外の場合)に、対象レイヤがベースレイヤ以外の場合に利用可能なツールのツール有効性フラグ(インタービュー予測フラグmulti_view_mv_pred_flag、残差予測フラグmulti_view_residual_pred_flag)を含む。また、図41(a)のSYNX1204に示す通り、対象レイヤlayer_idに対応するデプスに相当する次元IDが0以外(図ではdimension_id[ i ][ depth_dimension_id ])で、かつ、依存レイヤがテクスチャピクチャである場合(!dimension_id [ref_layer_id[layer_id] ] [depth_dimension_id])に、対象レイヤがデプスピクチャの場合に利用可能なツールのツール有効性フラグ(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)を含む。
上記の構成のツール有効性情報復号部215Cを備える画像復号装置は、ヘッダ復号部10Cにおいて、レイヤの依存関係を示す依存レイヤIDを復号する依存レイヤID復号部2123を含むVPS復号部212Cを備え、依存レイヤのデプスフラグが、デプスではないことを示す場合のみ、対象レイヤがデプスの場合に利用可能なツールのツール有効性フラグを復号する。
上記のツール有効性情報復号部215Cを備える画像復号装置および上記、図41(a)を用いて説明した符号化データ構造によれば、依存レイヤのデプスフラグがデプスである場合にはツールが禁止されるため、デプスピクチャの場合に利用可能なツールはテクスチャのレイヤのピクチャもしくは符号化パラメータのみに依存する。この場合、デプスのレイヤもしくは符号化パラメータには依存しないため、デプスのレイヤを復号する場合において、後続のレイヤのために符号化パラメータを格納する必要が無くなり、後続のレイヤのために符号化パラメータを格納する必要があるのはテクスチャのレイヤを復号する場合に限定されるため、デコーダのメモリを削減する効果を奏する。
(ツール有効性情報復号部215B、ツール有効性情報復号部215Cの別の構成)
本実施形態のツール有効性情報復号部は、上述のツール有効性情報復号部215B、ツール有効性情報復号部215Cの両者の特徴を備えるツール有効性情報復号部215BCであっても良い。
図41(b)は、ツール有効性情報復号部215BCにより復号される、本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの構成を示す図である。図41(b)のSYNX1201〜SYNX1203は、図41(a)と同じ構造なので説明を省略する。
ツール有効性情報復号部215BCは、対象レイヤlayer_idに対応するデプスに相当する次元IDが0以外(図ではdimension_id[ i ][ depth_dimension_id ])で、かつ、依存レイヤがテクスチャピクチャである場合(!dimension_id [ref_layer_id[layer_id] ] [depth_dimension_id])に、かつ、かつ、対象レイヤlayer_idのビューIDと依存レイヤのビューIDが一致する場合(dimension_id [layer_id ] [view_dimension_id] == dimension_id [ref_layer_id[layer_id] ] [view_dimension_id]) に、対象レイヤがデプスピクチャの場合に利用可能なツールのツール有効性フラグ(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)を復号する。
また、図41(b)のSYNX1204BCに示す通り、本実施形態の符号化データ構造は、対象レイヤlayer_idに対応するデプスに相当する次元IDが0以外(図ではdimension_id[ i ][ depth_dimension_id ])で、かつ、依存レイヤがテクスチャピクチャである場合(!dimension_id [ref_layer_id[layer_id] ] [depth_dimension_id])に、かつ、かつ、対象レイヤlayer_idのビューIDと依存レイヤのビューIDが一致する場合(dimension_id [layer_id ] [view_dimension_id] == dimension_id [ref_layer_id[layer_id] ] [view_dimension_id]) に、対象レイヤがデプスピクチャの場合に利用可能なツールのツール有効性フラグを含む。
上記のツール有効性情報復号部215BCを備える画像復号装置および上記、図41(b)を用いて説明した符号化データ構造によれば、対象レイヤのビューIDと等しい場合にのみ、ツール有効性フラグを符号化データから復号するため、符号化効率が低い場合に冗長なフラグが符号化されることを防ぐ効果を奏すると共に、依存レイヤのデプスフラグがデプスである場合にはツールが禁止されるため、デコーダのメモリを削減する効果を奏する。
(ヘッダ復号部10D)
以下、ヘッダ復号部10の別の構成であるヘッダ復号部10Dを説明する。ヘッダ復号部10Dは、NALユニットヘッダ復号部211、VPS復号部212D、レイヤ情報格納部213、ビューデプス導出部214D、ツール有効性情報復号部215Dを含んで構成される。
図43(a)は、VPS復号部212Dの概略的構成について示した機能ブロック図である。図42に示すように、VPS復号部212Dはスケーラブルタイプ復号部2121と次元ID復号部2122、依存レイヤID復号部2123、レイヤ有効性フラグ復号部2124を含んで構成される。スケーラブルタイプ復号部2121、次元ID復号部2122、依存レイヤID復号部2123は既に説明済みであるので、詳細の説明を省略する。
レイヤ有効性フラグ復号部2124は、レイヤi毎にレイヤ有効性フラグvalid_layer_flag[i]を復号する。レイヤIDのインデックスiは1からvps_max_layers_minus1までの値である。レイヤ有効性フラグvalid_layer_flag[i]は、レイヤiに対応するピクチャが符号化データ中に存在するか否かを示す。レイヤ有効性フラグvalid_layer_flag[i]が0の場合には、符号化データ中に、レイヤiのピクチャが存在してはならない。レイヤ有効性フラグvalid_layer_flag[i]が1の場合には、符号化データ中に、レイヤiのピクチャが存在しても良い。
図43(b)は、本実施形態のツール有効性情報復号部215Dにより復号される、本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの構成を示す図である。図43(b)のSYNX1401に示すvalid_layer_flag[i]が、上述のレイヤ有効性フラグである。
本実施形態のヘッダ復号部10Dを含む画像復号装置が復号する符号化データは、次元IDについて以下の式の制限を設ける。
「dimension_id[ layer_id ][ 1 ]はlayer_id >>1と等しくなくてはならない」
「dimension_id[ layer_id ][ 0 ]はlayer_id % 2と等しくなくてはならない」
すなわちビューIDに対応する次元IDdimension_id[ layer_id ][ 1 ]は、レイヤIDの所定の範囲のビットの値を設定し(例えば下位1ビット目から下位6ビット目)、デプスフラグに対応する次元IDdimension_id[ layer_id ][ 0 ]は、レイヤIDの所定の位置の1ビット(例えば、下位0ビット目)の値を設定する。
上記制限を備える符号化データは、レイヤIDの所定の範囲のビットの値がビューIDであり、レイヤIDの所定の位置の1ビット(例えば、下位0ビット目)の値がデプスフラグであるという関係がある。
ビューデプス導出部214Dは、レイヤIDを所定のビットだけ左シフトすることでビューIDを、レイヤIDの2の剰余(もしくは1との論理積)を取ることにより、以下の式により、ビューIDとデプスフラグdepth_flagを導出する。
ViewIdx = layer_id >> 1
DepthFlag = layer_id%2
なお、上記の符号化データの制限、ビューデプス導出部214Dの処理は、スケーラブルマスクが3Dスケーラブルを意味する場合(デプススケーラブルを意味するビット3とビュースケーラブルを示すビット4がどちらも1の場合の場合、つまり、scalable_mask=24の場合)に行われる。
スケーラブルマスクがビュースケーラブルの場合(ビュースケーラブルを示すビット4が1の場合の場合、つまり、scalable_mask=16の場合)、符号化データは以下の制限を受ける。
「dimension_id[ layer_id ][ 0 ]はlayer_idと等しくなくてはならない」
また、ビューデプス導出部214Dは以下の式によりビューIDを導出する。
ViewIdx = layer_id
スケーラブルマスクがデプススケーラブルの場合(デプススケーラブルを示すビット3が1の場合の場合、つまり、scalable_mask=8の場合)、符号化データは以下の制限を受ける。
「dimension_id[ layer_id ][ 0 ]はlayer_id % 2と等しくなくてはならない」
また、ビューデプス導出部214Dは以下の式によりデプスフラグを導出する。
DepthFlag = layer_id%2
以上に説明した符号化データの制限によれば、ビューIDに対応する第1の次元IDが、レイヤIDの1ビット目以上と等しく、デプスフラグに対応する第2の次元IDが、レイヤIDの0ビット目と等しく制限されることにより、VPSを復号して初めて導出される次元IDを参照することなく、NALユニットヘッダに復号されるレイヤIDのみを参照することで、ビューIDとデプスフラグを導出することができる。そのため、ビューIDとデプスフラグを導出する処理が容易になるという効果を奏する。
以上に説明した符号化データの制限の場合、レイヤ数が6の3Dスケーラブル画像においては、レイヤID=0がビューID=0のテクスチャ、レイヤID=1がビューID=0のデプス、レイヤID=2がビューID=1のテクスチャ、レイヤID=3がビューID=1のデプス、レイヤID=4がビューID=2のテクスチャ、レイヤID=5がビューID=2のデプスに対応する。この場合、テクスチャとデプスのカメラの位置や数が異なる場合、例えば、ビューID=0、ビューID=2のテクスチャと、ビューID=1のデプスから構成される画像の場合、上述のようにレイヤ数を6として符号化する必要があるが、実際には、レイヤID=0、3、4のみが符号化され、レイヤID=1(ビューID=0のデプス)、レイヤID=2(ビューID=1のテクスチャ)、レイヤID=5(ビューID=2のデプス)は符号化されない。そのため、デコーダでは、このような符号化されないレイヤが、符号化データ中に始めから存在しないか、符号化データには存在したが、ネットワークのパケットロスなどにより、デコーダに届いていないかを識別することができないという課題がある。
そこで、以上に説明したレイヤ有効フラグvalid_layer_flag[i]によって、符号化データに存在しないレイヤを明示的に示すことにより、VPSで規定される最大レイヤ数よりも小さいレイヤIDがデコーダ側に届いていない場合、そのレイヤが始めから存在しないか否かを識別することができるという効果を奏する。レイヤ有効フラグvalid_layer_flag[i]によりデコーダにおいてレイヤが存在するか否かを識別することができる場合、デコーダでは、レイヤが存在するが届いていない場合に、エンコーダ側に再送を要求することや、デコーダでは表示を行わず、次のRAPピクチャから再度再生を再開するなどを行うことができる、
[ランダムアクセスとNALユニットタイプ制限]
3Dスケーラブルの符号化データでステレオ映像を再生する場合には、例えば、レイヤID=0のベースビューのテクスチャレイヤ、レイヤID=1のベースビューのデプスレイヤ、レイヤID=2の依存ビューのテクスチャレイヤ、レイヤID=3の依存ビューのデプスレイヤを復号し、ベースビューのテクスチャピクチャを左目用画像、レイヤID=0からレイヤID=3のピクチャから合成される合成画像を右目用画像として再生する。この場合、同じ時刻の複数のレイヤの画像の復号が必要になる。そのため、符号化データの途中から再生するためには、複数のレイヤの画像についてランダムアクセスが必要になる。
(第1のNALユニットタイプ制限)
本実施形態の符号化データでは、第1のNALユニットタイプ制限として、全ての同じ時刻を有する全てのレイヤのピクチャ、すなわち、同じアクセスユニットの全てのレイヤのピクチャはNALユニットタイプを有しなければならないという制限を設ける。例えば、レイヤIDが0のピクチャがIDR_W_LPピクチャであれば、同じ時刻のレイヤIDが1のピクチャもIDR_W_LPピクチャであるとする。
(第2のNALユニットタイプ制限)
本実施形態の符号化データでは、第2のNALユニットタイプ制限として、レイヤIDが0のピクチャが、RAPピクチャである場合(IDR、BLA、CRAである場合)には、同じ時刻を有する全てのレイヤのピクチャ、すなわち、同じアクセスユニットの全てのレイヤのピクチャは、いずれかのRAPのNALユニットタイプを有しなければならないという制限を設ける。
上記、第1のNALユニットタイプ制限、及び、第2のNALユニット制限を有する符号化データ構成によれば、同じ時刻を有する複数のレイヤのピクチャは、同じタイミングでRAPピクチャを有する。これにより、複数のレイヤのピクチャをランダムアクセス再生する際に、任意のレイヤにおけるRAPピクチャのタイミングから、ランダムアクセスが可能になるという効果を奏する。
上記、NALユニットタイプ制限を有する符号化データに対して、画像復号装置1は、ヘッダ復号部10、ピクチャ復号部11、復号ピクチャバッファ12、参照ピクチャ管理部13を用いて、以下の処理により、複数のレイヤを含む画像において特定の時刻のピクチャから復号を行う。
画像復号装置1は、レイヤIDが0のピクチャがRAPピクチャである場合において、復号の対象とする全てのレイヤのピクチャを復号する。上記3Dスケーラブルの符号化データの例であれば、レイヤID=0からレイヤID=3のピクチャを復号する。この時、NALユニットタイプ制限を有する符号化データであれば、レイヤIDが0のピクチャがRAPピクチャである場合においては、レイヤID=1からレイヤID=3のピクチャのRAPピクチャであるため、以下の制限を有する。
・他時刻のピクチャの参照の禁止
・再生順でRAPピクチャより後のピクチャから、復号順でRAPピクチャよりも前のピクチャの参照の禁止
従って、復号対象となる全てのレイヤのピクチャにおいて、復号開始対象とするRAPピクチャおよびそれ以後のピクチャを復号することができる。
なお、従来技術の符号化データにおいては、レイヤIDが0のピクチャがRAPピクチャである場合において、同じ時刻を有する複数のレイヤのピクチャがRAPピクチャであるとは限らない。従って、符号化データの途中から復号を開始する場合においては、復号対象とする全てのレイヤ、上記3Dスケーラブルの符号化データの例であれば、レイヤID=0からレイヤID=3のレイヤのピクチャが全てRAPピクチャであることを確認し、全てのレイヤにおいてRAPピクチャであると確認された場合に限り、復号を開始する。この場合には復号開始するピクチャの特定には、符号化データを走査し、レイヤIDが0のレイヤのピクチャからRAPピクチャであるピクチャを探索し、次に、復号対象のレイヤ全てにおいて探索されたピクチャがRAPピクチャであるかをテストする。全てのレイヤのピクチャがRAPピクチャである場合には探索を終了し、それ以外の場合には、レイヤIDが0のレイヤにおけるRAPピクチャの探索を再開する必要が有り、復号の処理量が大きくなるという課題が有る。
[復号ピクチャバッファ12]
復号ピクチャバッファ12には、ピクチャ復号部で復号された各ピクチャの局所復号画像が、レイヤID、当該ピクチャのPOC(Picture Order Count、ピクチャ順序情報)と関連付けられて記録されている。復号ピクチャバッファ12は、所定の出力タイミングで、出力対象のPOCを決定する。その後、当該POCに対応する局所復号画像を、復号画像#2を構成するピクチャの一つとして外部に出力する。
図28は、復号ピクチャメモリの構成を示す概念図である。図中内部に数字を記したボックスが局所復号画像を示す。数字はPOCを示す。図28の図の通り、複数のレイヤの局所復号画像が、そのレイヤID、POC、局所復号画像に関連づけられて記録される。さらに、レイヤIDに対応するビューIDview_id、デプスフラグdepth_flagも局所復号画像に関連づけられて記録される。
[ピクチャ復号部11]
ピクチャ復号部11は、符号化データ#1、ヘッダ復号部10より入力されるヘッダ情報、復号ピクチャバッファ12に記録されている参照ピクチャ、および、参照ピクチャリスト導出部15より入力される参照ピクチャリストに基づいて、各ピクチャの局所復号画像を生成して復号ピクチャバッファ12に記録する。
図5は、本実施形態に係るピクチャ復号部11の構成を示す概略図である。ピクチャ復号部11は、エントロピー復号部301、予測パラメータ復号部302、予測パラメータメモリ(予測パラメータ記憶部)307、予測画像生成部308、逆量子化・逆DCT部311、及び加算部312を含んで構成される。
また、予測パラメータ復号部302は、インター予測パラメータ復号部303及びイントラ予測パラメータ復号部304を含んで構成される。予測画像生成部308は、インター予測画像生成部309及びイントラ予測画像生成部310を含んで構成される。
エントロピー復号部301は、外部から入力された符号化データ#1に対してエントロピー復号を行って、個々の符号(シンタックス要素)を分離し復号する。分離された符号には、予測画像を生成するための予測情報および、差分画像を生成するための残差情報などがある。
エントロピー復号部301は、分離した符号の一部を予測パラメータ復号部302に出力する。分離した符号の一部とは、例えば、予測モードPredMode、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idx、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXである。どの符号を復号するか否かの制御は、予測パラメータ復号部302の指示に基づいて行われる。エントロピー復号部301は、量子化係数を逆量子化・逆DCT部311に出力する。この量子化係数は、符号化処理において、残差信号に対してDCT(Discrete Cosine Transform、離散コサイン変換)を行い量子化して得られる係数である。
インター予測パラメータ復号部303は、エントロピー復号部301から入力された符号に基づいて、予測パラメータメモリ307に記憶された予測パラメータを参照してインター予測パラメータを復号する。
インター予測パラメータ復号部303は、復号したインター予測パラメータを予測画像生成部308に出力し、また予測パラメータメモリ307に記憶する。インター予測パラメータ復号部303の詳細については後述する。
イントラ予測パラメータ復号部304は、エントロピー復号部301から入力された符号とツール有効性情報復号部215から入力されたデプスイントラ予測フラグenable_dmm_flagに基づいて、予測パラメータメモリ307に記憶された予測パラメータを参照してイントラ予測パラメータを生成する。イントラ予測パラメータとは、復号対象ブロックの予測画像をイントラ予測を用いて生成する際に必要な情報であり、例えば、イントラ予測モードIntraPredModeである。
デプスイントラ予測フラグenable_dmm_flagが1の場合には、イントラ予測パラメータ復号部304は、入力された符号から、デプスイントラ予測モードdmm_modeを復号する。イントラ予測パラメータ復号部304は、デプスイントラ予測モードdmm_modeを用いて、イントラ予測モードIntraPredModeを以下の式から生成する。
IntraPredMode = dmm_mode + 35
デプスイントラ予測フラグenable_dmm_flagが0の場合には、デプスイントラ予測モードdmm_modeを復号しない。すなわち、デプスイントラ予測による予測画像生成を行わない。対象レイヤがテクスチャの場合には、デプスイントラ予測フラグenable_dmm_flagを0とすれば、デプスイントラ予測を行わない場合に、無駄にデプスイントラ予測モードdmm_modeを復号することがないため、冗長なフラグの符号化を防ぐことができる。
デプスイントラ予測モードdmm_modeが0または1、即ち、MODE_DMM_WFULLまたはMODE_DMM_WFULLDELTAを示している場合には、イントラ予測パラメータ復号部304は、入力された符号から、ウェッジレットパターンインデックスwedge_full_tab_idxを復号する。
デプスイントラ予測モードdmm_modeが、MODE_DMM_WFULLDELTAまたはMODE_DMM_CPREDTEXDELTAである場合には、イントラ予測パラメータ復号部304は、入力された符号から、DC1絶対値、DC1符号、DC2絶対値、DC2符号を復号する。デプスイントラ予測モードdmm_modeは、DC1絶対値、DC1符号、DC2絶対値、DC2符号から量子化オフセットDC1DmmQuantOffsetDC1、量子化オフセットDC2DmmQuantOffsetDC2を以下の式より生成する。
DmmQuantOffsetDC1 = ( 1 - 2 *dmm_dc_1_sign_flag ) * dmm_dc_1_abs
DmmQuantOffsetDC2 = ( 1 - 2 *dmm_dc_2_sign_flag ) * dmm_dc_2_abs
イントラ予測パラメータ復号部304は、生成したイントラ予測モードIntraPredMode、デルタエンド、量子化オフセットDC1DmmQuantOffsetDC1、量子化オフセットDC2DmmQuantOffsetDC2と復号したウェッジレットパターンインデックスwedge_full_tab_idxを予測パラメータとする。
イントラ予測パラメータ復号部304は、イントラ予測パラメータを予測画像生成部308に出力し、また予測パラメータメモリ307に記憶する。
予測パラメータメモリ307は、予測パラメータを、復号対象のピクチャ及びブロック毎に予め定めた位置に記憶する。具体的には、予測パラメータメモリ307は、インター予測パラメータ復号部303が復号したインター予測パラメータ、イントラ予測パラメータ復号部304が復号したイントラ予測パラメータ及びエントロピー復号部301が分離した予測モードpredModeを記憶する。記憶されるインター予測パラメータには、例えば、予測リスト利用フラグpredFlagLX(インター予測フラグinter_pred_idx)、参照ピクチャインデックスrefIdxLX、ベクトルmvLXがある。
予測画像生成部308には、エントロピー復号部301から入力された予測モードpredModeが入力され、また予測パラメータ復号部302から予測パラメータが入力される。また、予測画像生成部308は、復号ピクチャバッファ12から参照ピクチャを読み出す。予測画像生成部308は、予測モードpredModeが示す予測モードで、入力された予測パラメータと読み出した参照ピクチャを用いて予測ピクチャブロックP(予測画像)を生成する。
ここで、予測モードpredModeがインター予測モードを示す場合、インター予測画像生成部309は、インター予測パラメータ復号部303から入力されたインター予測パラメータと読み出した参照ピクチャを用いてインター予測により予測ピクチャブロックPを生成する。予測ピクチャブロックPはPUに対応する。PUは、上述したように予測処理を行う単位となる複数の画素からなるピクチャの一部分、つまり1度に予測処理が行われる復号対象ブロックに相当する。
インター予測画像生成部309は、予測リスト利用フラグpredFlagLXが1である参照ピクチャリスト(L0参照リスト、もしくはL1参照リスト)に対し、参照ピクチャインデックスrefIdxLXで示される参照ピクチャから、復号対象ブロックを基準としてベクトルmvLXが示す位置にある参照ピクチャブロックを復号ピクチャバッファ12から読み出す。インター予測画像生成部309は、読み出した参照ピクチャブロックについて予測を行って予測ピクチャブロックPを生成する。インター予測画像生成部309は、生成した予測ピクチャブロックPを加算部312に出力する。
予測モードpredModeがイントラ予測モードを示す場合、イントラ予測画像生成部310は、イントラ予測パラメータ復号部304から入力されたイントラ予測パラメータと読み出した参照ピクチャを用いてイントラ予測を行う。具体的には、イントラ予測画像生成部310は、復号対象のピクチャであって、既に復号されたブロックのうち復号対象ブロックから予め定めた範囲にある参照ピクチャブロックを復号ピクチャバッファ12から読み出す。予め定めた範囲とは、復号対象ブロックがいわゆるラスタースキャンの順序で順次移動する場合、例えば、左、左上、上、右上の隣接ブロックのうちのいずれかであり、イントラ予測モードによって異なる。ラスタースキャンの順序とは、各ピクチャにおいて、上端から下端まで各行について、順次左端から右端まで移動させる順序である。
イントラ予測画像生成部310は、読み出した参照ピクチャブロックと、入力された予測パラメータを用いて予測ピクチャブロックを生成する。図10は、本実施形態に係るイントラ予測画像生成部310の構成を示す概略図である。イントラ予測画像生成部310は、方向予測部3101とDMM予測部3102を含んで構成される。
イントラ予測画像生成部310は、予測パラメータに含まれるイントラ予測モードIntraPredModeの値が34以下であれば、方向予測部3101において、例えば、非特許文献3に記載されているイントラ予測を用いて予測ピクチャブロックを生成する。
イントラ予測モードIntraPredModeの値が35以上の場合には、イントラ予測画像生成部310は、DMM予測部3102において、デプスイントラ予測を用いて予測ピクチャブロックを生成する。
図15は、イントラ予測画像生成部310で処理されるデプスイントラ予測を説明するための図である。デプスマップには、オブジェクト内ではほとんど画素値が変わらず、オブジェクトの境界では鋭いエッジが発生する特徴があるため、デプスイントラ予測では、図15(a)に示すように、対象ブロックをオブジェクトのエッジに沿った2つの領域に分割し、各領域を各々の予測値で埋めることによって予測ピクチャブロックを生成する。イントラ予測画像生成部310は、図15(b)に示すような、対象ブロックの分割方法を示す情報であるウェッジレットパターンを生成する。ウェッジレットパターンは、対象ブロックの幅x高さ分の大きさのあるマトリックスであり、要素ごとに0または1が設定されており、対象ブロックの各画素が2つの領域のうちどちらに属するかを示している。
イントラ予測モードIntraPredModeの値が35の場合には、イントラ予測画像生成部310は、デプスイントラ予測におけるMODE_DMM_WFULLモードを用いて予測ピクチャブロックを生成する。イントラ予測画像生成部310は、まず、ウェッジレットパターンリストを生成する。以下、ウェッジレットパターンリストの生成方法について説明する。
イントラ予測画像生成部310は、まず、全要素が0のウェッジレットパターンを生成する。次に、イントラ予測画像生成部310は、ウェッジレットパターン内に、開始位置Sp(xs,ys)と終了位置Ep(xe,ye)を設定する。図16の(a)の場合では、初期値として、開始位置Sp(xs,ys)=(0,0)、終了位置Ep(xe,ye)=(0,0)と設定し、開始位置Spと終了位置Epの間をBresenhamのアルゴリズムを用いて線分を引き、その線分上及び線分より左側の座標に対応する要素を1に設定する(図16(a)中の灰色の要素)。イントラ予測画像生成部310は、生成したウェッジレットパターンをウェッジレットパターンリストに格納する。続けて、イントラ予測画像生成部310は、開始位置SpのX座標と終了位置EpのY座標に1を加算し、同様の方法でウェッジレットパターンを生成する。これを開始位置Spもしくは終了位置Epがウェッジレットパターンの範囲を超えるまで続ける。
図16の(b)の場合では、初期値として、開始位置Sp(xs,ys)=(blocksize-1,0)、終了位置Ep(xe,ye)=(blocksize-1,0)と設定し、開始位置SpのY座標に1を加算、終了位置EpのX座標に1を減算することを繰り返しながら、図16(a)と同様の方法でウェッジレットパターンを生成し、ウェッジレットパターンリストに追加する。なお、blocksizeとは対象ブロックの幅及び高さのサイズを示す。
図16の(c)の場合では、初期値として、開始位置Sp(xs,ys)=(blocksize-1, blocksize-1)、終了位置Ep(xe,ye)=(blocksize-1, blocksize-1)と設定し、開始位置SpのX座標及び終了位置EpのY座標に1を減算することを繰り返しながら、図16(a)と同様の方法でウェッジレットパターンを生成し、ウェッジレットパターンリストに追加する。
図16の(d)の場合では、初期値として、開始位置Sp(xs,ys)=(0, blocksize-1)、終了位置Ep(xe,ye)=(0, blocksize-1)と設定し、開始位置SpのY座標に1を減算、終了位置EpのX座標に1を加算することを繰り返しながら、図16(a)と同様の方法でウェッジレットパターンを生成し、ウェッジレットパターンリストに追加する。
図16の(e)の場合では、初期値として、開始位置Sp(xs,ys)=(0,0)、終了位置Ep(xe,ye)=(0, blocksize-1)と設定し、開始位置SpのX座標及び終了位置EpのX座標に1を加算することを繰り返しながら、図16(a)と同様の方法でウェッジレットパターンを生成し、ウェッジレットパターンリストに追加する。
図16の(f)の場合では、初期値として、開始位置Sp(xs,ys)=(blocksize-1 ,0)、終了位置Ep(xe,ye)=(0,0)と設定し、開始位置SpのY座標及び終了位置EpのY座標に1を加算することを繰り返しながら、図16(a)と同様の方法でウェッジレットパターンを生成し、ウェッジレットパターンリストに追加する。
イントラ予測画像生成部310は、上記、図16の(a)から(f)の方法のうちいずれか、もしくは、全ての方法を用いて、ウェッジレットパターンリストを生成する。
次に、イントラ予測画像生成部310は、予測パラメータに含まれるウェッジレットパターンインデックスwedge_full_tab_idxを用いてウェッジレットパターンリストからウェッジレットパターンを選択する。イントラ予測画像生成部310は、ウェッジレットパターンに従って予測ピクチャブロックを2つの領域に分割し、領域毎に予測値dmmPredPartitionDC1、dmmPredPartitionDC2を導出する。予測値の導出方法としては、例えば、領域に隣接する参照ピクチャブロックの画素値の平均値を予測値とする。領域に隣接する参照ピクチャブロックが無い場合には、画素のビット深度をBitDepthとした場合、1 << ( BitDepth - 1 )を予測値とする。イントラ予測画像生成部310は、予測値dmmPredPartitionDC1、dmmPredPartitionDC2で各領域を埋めることで予測ピクチャブロックを生成する。
イントラ予測モードIntraPredModeの値が36の場合には、イントラ予測画像生成部310は、デプスイントラ予測におけるMODE_DMM_WFULLDELTAモードを用いて予測ピクチャブロックを生成する。まず、イントラ予測画像生成部310は、MODE_DMM_WFULLモードの時と同様に、ウェッジレットパターンリストからウェッジレットパターンを選択し、領域毎に予測値dmmPredPartitionDC1、dmmPredPartitionDC2を導出する。
次に、イントラ予測画像生成部310は、予測パラメータに含まれる量子化オフセットDC1DmmQuantOffsetDC1、量子化オフセットDC2DmmQuantOffsetDC2を用いて、デプスイントラ予測オフセットdmmOffsetDC1, dmmOffsetDC2を、量子化パラメータをQPとして場合、以下の式により導出する。
dmmOffsetDC1 = DmmQuantOffsetDC1 * Clip3( 1, ( 1 << BitDepthY ) - 1, 2^((QP/10)-2)
dmmOffsetDC2 = DmmQuantOffsetDC2 * Clip3( 1, ( 1 << BitDepthY ) - 1, 2^((QP/10)-2)
イントラ予測画像生成部310は、予測値dmmPredPartitionDC1、dmmPredPartitionDC2それぞれにイントラ予測オフセットdmmOffsetDC1, dmmOffsetDC2を加算した値で各領域を埋めることにより予測ピクチャブロックを生成する。
イントラ予測モードIntraPredModeの値が37の場合には、イントラ予測画像生成部310は、デプスイントラ予測におけるMODE_DMM_CPREDTEXモードを用いて予測ピクチャブロックを生成する。イントラ予測画像生成部310は、対応ブロックを復号ピクチャバッファ12から読みだす。イントラ予測画像生成部310は、対応ブロックの画素値の平均値を算出する。イントラ予測画像生成部310は、算出した平均値を閾値とし、対応ブロックを閾値以上の領域1と閾値以下の領域2に分ける。イントラ予測画像生成部310は、領域1、領域2と同じ形状で、予測ピクチャブロックを2つの領域に分割する。イントラ予測画像生成部310は、MODE_DMM_WFULLモードの時と同様の方法を用いて、領域毎に予測値dmmPredPartitionDC1、dmmPredPartitionDC2を導出する。イントラ予測画像生成部310は、予測値dmmPredPartitionDC1、dmmPredPartitionDC2で各領域を埋めることで予測ピクチャブロックを生成する。
イントラ予測モードIntraPredModeの値が38の場合には、イントラ予測画像生成部310は、デプスイントラ予測におけるMODE_DMM_CPREDTEXDELTAモードを用いて予測ピクチャブロックを生成する。まず、イントラ予測画像生成部310は、MODE_DMM_CPREDTEXモードと同様に、予測ピクチャブロックを2つの領域に分割し、領域毎に予測値dmmPredPartitionDC1、dmmPredPartitionDC2を導出する。次に、イントラ予測画像生成部310は、MODE_DMM_WFULLDELTAモードと同様に、イントラ予測オフセットdmmOffsetDC1, dmmOffsetDC2を導出し、予測値dmmPredPartitionDC1、dmmPredPartitionDC2それぞれにイントラ予測オフセットdmmOffsetDC1, dmmOffsetDC2を加算した値で各領域を埋めることにより予測ピクチャブロックを生成する。
イントラ予測画像生成部310は、生成した予測ピクチャブロックPを加算部312に出力する。
逆量子化・逆DCT部311は、エントロピー復号部301から入力された量子化係数を逆量子化してDCT係数を求める。逆量子化・逆DCT部311は、求めたDCT係数について逆DCT(Inverse Discrete Cosine Transform、逆離散コサイン変換)を行い、復号残差信号を算出する。逆量子化・逆DCT部311は、算出した復号残差信号を加算部312に出力する。
加算部312は、インター予測画像生成部309及びイントラ予測画像生成部310から入力された予測ピクチャブロックPと逆量子化・逆DCT部311から入力された復号残差信号の信号値を画素毎に加算して、参照ピクチャブロックを生成する。加算部312は、生成した参照ピクチャブロックを復号ピクチャバッファ12に記憶し、生成した参照ピクチャブロックをピクチャ毎に統合した復号レイヤ画像Tdを外部に出力する。
(インター予測パラメータ復号部の構成)
次に、インター予測パラメータ復号部303の構成について説明する。
図6は、本実施形態に係るインター予測パラメータ復号部303の構成を示す概略図である。インター予測パラメータ復号部303は、インター予測パラメータ復号制御部3031、AMVP予測パラメータ導出部3032、加算部3035及びマージ予測パラメータ導出部3036を含んで構成される。
インター予測パラメータ復号制御部3031は、インター予測に関連する符号(シンタックス要素の復号をエントロピー復号部301に指示し、符号化データに含まれる符号(シンタックス要素)を例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idx、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを抽出する。
インター予測パラメータ復号制御部3031は、まず、をマージフラグ抽出する。インター予測パラメータ復号制御部3031が、あるシンタックス要素を抽出すると表現する場合は、あるシンタックス要素の復号をエントロピー復号部301に指示し、該当のシンタックス要素を符号化データから読み出すことを意味する。ここで、マージフラグが示す値が1、すなわち、マージ予測モードを示す場合、インター予測パラメータ復号制御部3031は、マージ予測に係る予測パラメータとして、マージインデックスmerge_idxを抽出する。インター予測パラメータ復号制御部3031は、抽出したマージインデックスmerge_idxをマージ予測パラメータ導出部3036に出力する。
マージフラグmerge_flagが0、すなわち、AMVP予測モードを示す場合、インター予測パラメータ復号制御部3031は、エントロピー復号部301を用いて符号化データからAMVP予測パラメータを抽出する。AMVP予測パラメータとして、例えば、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXがある。インター予測パラメータ復号制御部3031は、抽出したインター予測フラグinter_pred_idxから導出した予測リスト利用フラグpredFlagLXと、参照ピクチャインデックスrefIdxLXをAMVP予測パラメータ導出部3032及び予測画像生成部308(図5)に出力し、また予測パラメータメモリ307(図5)に記憶する。インター予測パラメータ復号制御部3031は、抽出したベクトルインデックスmvp_LX_idxをAMVP予測パラメータ導出部3032に出力する。インター予測パラメータ復号制御部3031は、抽出した差分ベクトルmvdLXを加算部3035に出力する。
図7は、本実施形態に係るマージ予測パラメータ導出部3036の構成を示す概略図である。マージ予測パラメータ導出部3036は、マージ候補導出部30361とマージ候補選択部30362を備える。マージ候補導出部30361は、マージ候補格納部303611と、拡張マージ候補導出部303612と、基本マージ候補導出部303613とMPI候補導出部303614を含んで構成される。
マージ候補格納部303611は、拡張マージ候補導出部303612及び基本マージ候補導出部303613から入力されたマージ候補を格納する。なお、マージ候補は、予測リスト利用フラグpredFlagLX、ベクトルmvLX、参照ピクチャインデックスrefIdxLXを含んで構成されている。マージ候補格納部303611において、格納されたマージ候補には、所定の規則に従ってインデックスが割り当てられる。例えば、拡張マージ候補導出部303612またはMPI候補導出部303614から入力されたマージ候補には、インデックスとして「0」を割り当てる。
MPI候補導出部303614は、対象ブロックのレイヤがデプスレイヤであり、なお且つ、動きパラメータ継承を用いることが可能であれば、即ち、デプスフラグdepth_flag及び動きパラメータ継承フラグuse_mpi_flagが共に1の場合に、対象レイヤとは異なるレイヤの動き補償パラメータを用いて、マージ候補を導出する。対象レイヤとは異なるレイヤとしては、例えば、対象のデプスピクチャと同一ビューIDview_id、同一POCを持つテクスチャレイヤのピクチャである。
MPI候補導出部303614は、対象レイヤとは異なるレイヤのピクチャ中の、対象ブロックと同一座標のブロック(対応ブロックとも呼ぶ)の予測パラメータを予測パラメータメモリ307から読みだす。
対応ブロックのサイズが対象ブロックよりも小さい場合には、MPI候補導出部303614は、対応するテクスチャピクチャ中の対象ブロックと同一座標のCTUの分割フラグsplit_flagと、該CTUに含まれる複数のブロックの予測パラメータを読み出す。
対応ブロックのサイズが対象ブロックよりも大きい場合には、MPI候補導出部303614は、対応ブロックの予測パラメータを読み出す。
MPI候補導出部303614は、読みだした予測パラメータをマージ候補としてマージ候補格納部303611に出力する。なお、CTUの分割フラグsplit_flagも読みだした場合には、該分割情報もマージ候補に含める。
拡張マージ候補導出部303612は、変位ベクトル取得部3036122と、インターレイヤマージ候補導出部3036121とインターレイヤ変位マージ候補導出部3036123を含んで構成される。
拡張マージ候補導出部303612は、対象ブロックのレイヤがデプスレイヤでない、又は、動きパラメータ継承を用いることが不可能であれば、即ち、デプスフラグdepth_flagまたは動きパラメータ継承フラグuse_mpi_flagのどちらかが0の場合に、マージ候補を導出する。なお、拡張マージ候補導出部303612は、デプスフラグdepth_flag及び動きパラメータ継承フラグuse_mpi_flagが共に1である場合に、マージ候補を導出してもよい。この場合には、マージ候補格納部303611は、拡張マージ候補導出部303612とMPI候補導出部303614が導出するマージ候補に異なるインデックスを割り当てる。
変位ベクトル取得部3036122は、まず、復号対象ブロックに隣接する複数の候補ブロック(例えば、左、上、右上に隣接するブロック)から順に変位ベクトルを取得する。具体的には、候補ブロックの一つを選択し、選択した候補ブロックのベクトルが変位ベクトルであるか動きベクトルであるかを、候補ブロックの参照ピクチャインデックスrefIdxLXを用いてリファレンスレイヤ判定部303111(後述)を用いて判定し変位ベクトルが有る場合には、それを変位ベクトルとする。候補ブロックに変位ベクトルがない場合には、次の候補ブロックを順に走査する。隣接するブロックに変位ベクトルがない場合、変位ベクトル取得部3036122は、時間的に別の表示順の参照ピクチャに含まれるブロックの対象ブロックに対応する位置のブロックの変位ベクトルの取得を試みる。変位ベクトルが取得できなかった場合には、変位ベクトル取得部3036122は、変位ベクトルとしてゼロベクトルを設定する。変位ベクトル取得部3036122は、変位ベクトルをインターレイヤマージ候補導出部3036121及びインターレイヤ変位マージ候補導出部に出力する。
インターレイヤマージ候補導出部3036121は、変位ベクトル取得部3036122から変位ベクトルを入力される。インターレイヤマージ候補導出部3036121は、別レイヤ(例えばベースレイヤ、ベースビュー)の復号対象ピクチャと同一POCを持つピクチャ内から、変位ベクトル取得部3036122から入力された変位ベクトルだけが示すブロックを選択し、該ブロックが有する動きベクトルである予測パラメータを予測パラメータメモリ307から読み出す。より具体的には、インターレイヤマージ候補導出部3036121が読みだす予測パラメータは、対象ブロックの中心点を起点にしたときに、起点の座標に変位ベクトルを加算した座標を含むブロックの予測パラメータである。
参照ブロックの座標(xRef、yRef)は、対象ブロックの座標が(xP、yP)、変位ベクトルが(mvDisp[0]、mvDisp[1])、対象ブロックの幅と高さがnPSW、nPSHの場合に以下の式により導出する。
xRef = Clip3( 0, PicWidthInSamplesL - 1, xP + ( ( nPSW - 1 ) >> 1 ) + ( ( mvDisp[0] + 2 ) >> 2 ) )
yRef = Clip3( 0, PicHeightInSamplesL - 1, yP + ( ( nPSH - 1 ) >> 1 ) + ( ( mvDisp[1] + 2 ) >> 2 ))
なお、インターレイヤマージ候補導出部3036121は、予測パラメータが動きベクトルか否かを、インター予測パラメータ復号制御部3031に含まれる後述するリファレンスレイヤ判定部303111の判定方法において偽(変位ベクトルではない)と判定した方法により判定する。インターレイヤマージ候補導出部3036121は、読みだした予測パラメータをマージ候補としてマージ候補格納部303611に出力する。また、インターレイヤマージ候補導出部3036121は、予測パラメータを導出出来なかった際には、その旨をインターレイヤ変位マージ候補導出部に出力する。本マージ候補は、動き予測のインターレイヤ候補(インタービュー候補)でありインターレイヤマージ候補(動き予測)とも記載する。
インターレイヤ変位マージ候補導出部3036123は、変位ベクトル取得部3036122から変位ベクトルを入力される。インターレイヤ変位マージ候補導出部3036123は、入力された変位ベクトルと、変位ベクトルが指す先のレイヤ画像の参照ピクチャインデックスrefIdxLX(例えば、復号対象ピクチャと同一POCを持つベースレイヤ画像のインデックス)をマージ候補としてマージ候補格納部303611に出力する。本マージ候補は、変位予測のインターレイヤ候補(インタービュー候補)でありインターレイヤマージ候補(変位予測)とも記載する。
基本マージ候補導出部303613は、空間マージ候補導出部3036131と時間マージ候補導出部3036132と結合マージ候補導出部3036133とゼロマージ候補導出部3036134を含んで構成される。
空間マージ候補導出部3036131は、所定の規則に従って、予測パラメータメモリ307が記憶している予測パラメータ(予測リスト利用フラグpredFlagLX、ベクトルmvLX、参照ピクチャインデックスrefIdxLX)を読み出し、読み出した予測パラメータをマージ候補として導出する。読み出される予測パラメータは、復号対象ブロックから予め定めた範囲内にあるブロック(例えば、復号対象ブロックの左下端、左上端、右上端にそれぞれ接するブロックの全部又は一部)のそれぞれに係る予測パラメータである。導出されたマージ候補はマージ候補格納部303611に格納される。
時間マージ候補導出部3036132は、復号対象ブロックの右下の座標を含む参照画像中のブロックの予測パラメータを予測パラメータメモリ307から読みだしマージ候補とする。参照画像の指定方法は、例えば、スライスヘッダに置いて指定された参照ピクチャインデックスrefIdxLXでも良いし、復号対象ブロックに隣接するブロックの参照ピクチャインデックスrefIdxLXのうち最小のものを用いて指定しても良い。導出されたマージ候補はマージ候補格納部303611に格納される。
結合マージ候補導出部3036133は、既に導出されマージ候補格納部303611に格納された2つの異なる導出済マージ候補のベクトルと参照ピクチャインデックスを、それぞれL0、L1のベクトルとして組み合わせることで結合マージ候補を導出する。導出されたマージ候補はマージ候補格納部303611に格納される。
ゼロマージ候補導出部3036134は、参照ピクチャインデックスrefIdxLXが0であり、ベクトルmvLXのX成分、Y成分が共に0であるマージ候補を導出する。導出されたマージ候補はマージ候補格納部303611に格納される。
マージ候補選択部30362は、マージ候補格納部303611に格納されているマージ候補のうち、インター予測パラメータ復号制御部3031から入力されたマージインデックスmerge_idxに対応するインデックスが割り当てられたマージ候補を、対象PUのインター予測パラメータとして選択する。マージ候補選択部30362は選択したマージ候補を予測パラメータメモリ307(図5)に記憶するとともに、予測画像生成部308(図5)に出力する。なお、マージ候補選択部30362が、MPI候補導出部303614が導出したマージ候補を選択し、なお且つ、該マージ候補が分割フラグsplit_flagを含んでいる場合には、分割フラグsplit_flagによって分割されたブロックそれぞれに対応する複数の予測パラメータが予測パラメータメモリ307に記憶され、予測画像生成部308に出力される。
図8は、本実施形態に係るAMVP予測パラメータ導出部3032の構成を示す概略図である。AMVP予測パラメータ導出部3032は、ベクトル候補導出部3033と予測ベクトル選択部3034を備える。ベクトル候補導出部3033は、参照ピクチャインデックスrefIdxに基づいて予測パラメータメモリ307(図5)が記憶するベクトル(動きベクトル又は変位ベクトル)をベクトル候補として読み出す。読み出されるベクトルは、復号対象ブロックから予め定めた範囲内にあるブロック(例えば、復号対象ブロックの左下端、左上端、右上端にそれぞれ接するブロックの全部又は一部)のそれぞれに係るベクトルである。
予測ベクトル選択部3034は、ベクトル候補導出部3033が読み出したベクトル候補のうち、インター予測パラメータ復号制御部3031から入力されたベクトルインデックスmvp_LX_idxが示すベクトル候補を予測ベクトルmvpLXとして選択する。予測ベクトル選択部3034は、選択した予測ベクトルmvpLXを加算部3035に出力する。
図9は、ベクトル候補の一例を示す概念図である。図9に示す予測ベクトルリスト602は、ベクトル候補導出部3033において導出される複数のベクトル候補からなるリストである。予測ベクトルリスト602において、左右に一列に配列された5個の長方形は、それぞれ予測ベクトルを示す領域を示す。左端から2番目のmvp_LX_idxの真下の下向きの矢印とその下のmvpLXは、ベクトルインデックスmvp_LX_idxが、予測パラメータメモリ307においてベクトルmvpLXを参照するインデックスであることを示す。
候補ベクトルは、復号処理が完了したブロックであって、復号対象ブロックから予め定めた範囲のブロック(例えば、隣接ブロック)を参照し、参照したブロックに係るベクトルに基づいて生成される。なお、隣接ブロックには、対象ブロックに空間的に隣接するブロック、例えば、左ブロック、上ブロックの他、対象ブロックに時間的に隣接するブロック、例えば、対象ブロックと同じ位置で、表示時刻が異なるブロックから得られたブロックを含む。
加算部3035は、予測ベクトル選択部3034から入力された予測ベクトルmvpLXとインター予測パラメータ復号制御部から入力された差分ベクトルmvdLXを加算してベクトルmvLXを算出する。加算部3035は、算出したベクトルmvLXを予測画像生成部308(図5)に出力する。
(インター予測パラメータ復号制御部の構成)
次に、インター予測パラメータ復号制御部3031の構成について説明する。インター予測パラメータ復号制御部3031は、図10に示すように、マージインデックス復号部30312、ベクトル候補インデックス復号部30313、及び図示しない、分割モード復号部、マージフラグ復号部、インター予測フラグ復号部、参照ピクチャインデックス復号部、ベクトル差分復号部を含んで構成される。分割モード復号部、マージフラグ復号部、マージインデックス復号部、インター予測フラグ復号部、参照ピクチャインデックス復号部、ベクトル候補インデックス復号部30313、ベクトル差分復号部は各々、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idx、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを復号する。
追加予測フラグ復号部30311は、内部に、追加予測フラグ判定部30314を備える。追加予測フラグ判定部30314は、追加予測フラグxpred_flagを符号化データに含まれるか否か(符号化データから読み出して復号するか否か)を判定する。追加予測フラグ判定部30314において、追加予測フラグを符号化データに符号化データに含めると判定された場合には、追加予測フラグ復号部30311は、エントロピー復号部301に、追加予測フラグの復号を通知し、エントロピー復号部301を通じて符号化データから、追加予測フラグに対応するシンタックス要素を抽出する。逆に、追加予測フラグ判定部30314において、符号化データに含めないと判定した場合には、追加予測フラグに、追加予測を示す値(ここでは1)を導出(infer)する。追加予測フラグ判定部30314については後述する。
(変位ベクトル取得部)
変位ベクトル取得部は、対象PUに隣接するブロックが変位ベクトルを持つ場合には、その変位ベクトルを予測パラメータメモリ307から抽出し、予測パラメータメモリ307を参照し、対象PUに隣接するブロックの予測フラグpredFlagLX、参照ピクチャインデックスrefIdxLXとベクトルmvLXを読み出す。変位ベクトル取得部は、内部にリファレンスレイヤ判定部303111を備える。変位ベクトル取得部は、対象PUに隣接するブロックの予測パラメータを順に読み出し、リファレンスレイヤ判定部303111を用いて、隣接ブロックの参照ピクチャインデックスから隣接ブロックが変位ベクトルを備えるか否かを判定する。隣接ブロックが変位ベクトルを備える場合には、その変位ベクトルを出力する。隣接ブロックの予測パラメータに変位ベクトルが無い場合にはゼロベクトルを変位ベクトルとして出力する。
(リファレンスレイヤ判定部303111)
リファレンスレイヤ判定部303111は、入力された参照ピクチャインデックスrefIdxLXに基づいて、参照ピクチャインデックスrefIdxLXが指す参照ピクチャと、対象ピクチャの関係を示すリファレンスレイヤ情報reference_layer_infoを定める。リファレンスレイヤ情報reference_layer_infoは、参照ピクチャへのベクトルmvLXが変位ベクトルであるか動きベクトルであるかを示す情報である。
対象ピクチャのレイヤと参照ピクチャのレイヤが同じレイヤである場合の予測を、同一レイヤ予測と呼び、この場合に得られるベクトルは動きベクトルである。対象ピクチャのレイヤと、参照ピクチャのレイヤが異なるレイヤである場合の予測をインターレイヤ予測と呼び、この場合に得られるベクトルは変位ベクトルである。
ここで、リファレンスレイヤ判定部303111の判定処理の例について、第1の判定方法から第3の判定方法を説明する。リファレンスレイヤ判定部303111は、第1の判定方法から第3の判定方法のいずれか、又は、それらの方法のうち任意の組み合わせを用いてもよい。
<第1の判定方法>
リファレンスレイヤ判定部303111は、参照ピクチャインデックスrefIdxLXが示す参照ピクチャに係る表示時刻(POC:Picture Order Count、ピクチャ順序番号)が復号対象ピクチャに係る表示時刻(POC)と等しい場合に、ベクトルmvLXが変位ベクトルであると判定する。POCは、ピクチャを表示する順序を示す番号であって、そのピクチャが取得された表示時刻を示す整数(離散時刻)である。変位ベクトルと判定しなかった場合には、リファレンスレイヤ判定部303111は、ベクトルmvLXが動きベクトルであると判定する。
具体的には、参照ピクチャインデックスrefIdxLXが示す参照ピクチャのピクチャ順序番号POCが復号対象ピクチャのPOCと等しい場合、リファレンスレイヤ判定部303111は、ベクトルmvLXが変位ベクトルであると、例えば以下の式により判定する。
POC == ReflayerPOC (refIdxLX, ListX)
ここで、POCは復号対象ピクチャのPOC、RefPOC(X, Y)は参照ピクチャインデックスX、参照ピクチャリストYで指定される参照ピクチャのPOCである。
なお、復号対象ピクチャのPOCと等しいPOCの参照ピクチャを参照することができる、ということは、その参照ピクチャのレイヤは、復号対象ピクチャのレイヤと異なることを意味する。従って、復号対象ピクチャのPOCと参照ピクチャのPOCが等しい場合には、インターレイヤ予測が行われた(変位ベクトル)、それ以外は同一レイヤ予測が行われた(動きベクトル)と判定する。
<第2の判定方法>
また、リファレンスレイヤ判定部303111は、参照ピクチャインデックスrefIdxLXが示す参照ピクチャに係る視点と復号対象ピクチャに係る視点が異なる場合に、ベクトルmvLXを変位ベクトルであると判定しても良い。具体的には、参照ピクチャインデックスrefIdxLXが示す参照ピクチャのビューIDview_idが復号対象ピクチャのビューIDview_idと異なる場合に、リファレンスレイヤ判定部303111は、ベクトルmvLXが変位ベクトルであると、例えば以下の式により判定する。
ViewID == ReflayerViewID (refIdxLX, ListX)
ここで、ViewIDは復号対象ピクチャのビューID、RefViewID(X, Y)は参照ピクチャインデックスX、参照ピクチャリストYで指定される参照ピクチャのビューIDである。
ビューIDview_idは、それぞれの視点画像を識別する情報である。変位ベクトルに係る差分ベクトルdvdLXは、異なる視点のピクチャ間で得られ、同一の視点のピクチャ間からは得られないことに基づく。なお、変位ベクトルと判定しなかった場合には、リファレンスレイヤ判定部303111は、ベクトルmvLXが動きベクトルであると判定する。
なお、個々の視点画像はレイヤの一種であるから、ビューIDview_idが異なると判定された場合には、リファレンスレイヤ判定部303111は、ベクトルmvLXを変位ベクトル(インターレイヤ予測が行われた)、それ以外は動きベクトル(同一レイヤ予測が行われた)と判定する。
<第3の判定方法>
また、リファレンスレイヤ判定部303111は、参照ピクチャインデックスrefIdxLXが示す参照ピクチャに係るレイヤIDlayer_idと復号対象ピクチャに係るレイヤIDlayer_idが異なる場合に、ベクトルmvLXが変位ベクトルであると、例えば以下の式により判定しても良い。
layerID != ReflayerID (refIdxLX, ListX)
ここで、layerIDは復号対象ピクチャのレイヤID、ReflayerID(X, Y)は参照ピクチャインデックスX、参照ピクチャリストYで指定される参照ピクチャのレイヤIDである。レイヤIDlayer_idは、1枚のピクチャが複数の階層(レイヤ)のデータを含んで構成される場合において、それぞれのレイヤを識別するデータである。異なる視点のピクチャが符号化された符号化データにおいて、レイヤIDは、視点によって異なる値を有することに基づく。すなわち、変位ベクトルに係る差分ベクトルdvdLXは、対象ピクチャと、異なるレイヤに係るピクチャとの間で得られるベクトルである。なお、変位ベクトルと判定しなかった場合には、リファレンスレイヤ判定部303111は、ベクトルmvLXが動きベクトルであると判定する。
なお、レイヤIDlayer_idが異なる場合には、リファレンスレイヤ判定部303111は、ベクトルmvLXを変位ベクトル(インターレイヤ予測が行われた)、それ以外は動きベクトル(同一レイヤ予測が行われた)と判定する。
(インター予測画像生成部309)
図11は、本実施形態に係るインター予測画像生成部309の構成を示す概略図である。インター予測画像生成部309は、動き変位補償部3091、残差予測部3092、照度補償部3093、重み予測部3094を含んで構成される。
(動き変位補償)
動き変位補償部3091は、インター予測パラメータ復号部303から入力された、予測リスト利用フラグpredFlagLX、参照ピクチャインデックスrefIdxLX、動きベクトルmvLXに基づいて、復号ピクチャバッファ12から、参照ピクチャインデックスrefIdxLXで指定された参照ピクチャの対象ブロックの位置を起点として、ベクトルmvLXだけずれた位置にあるブロックを読み出すことによって動き変位補償画像を生成する。ここで、ベクトルmvLXが整数ベクトルでない場合には、動き補償フィルタ(もしくは変位補償フィルタ)と呼ばれる小数位置の画素を生成するためのフィルタを施して、動き変位補償画像を生成する。一般に、ベクトルmvLXが動きベクトルの場合、上記処理を動き補償と呼び、変位ベクトルの場合は変位補償と呼ぶ。ここでは総称して動き変位補償と表現する。以下、L0予測の動き変位補償画像をpredSamplesL0、L1予測の動き変位補償画像をpredSamplesL1と呼ぶ。両者を区別しない場合predSamplesLXと呼ぶ。以下、動き変位補償部3091で得られた動き変位補償画像predSamplesLXに、さらに残差予測および照度補償が行われる例を説明するが、これらの出力画像もまた、動き変位補償画像predSamplesLXと呼ぶ。なお、以下の残差予測および照度補償において、各手段の入力画像と出力画像を区別する場合には、入力画像をpredSamplesLX、出力画像をpredSamplesLX´と表現する。
(残差予測)
残差予測部3092は、残差予測フラグres_pred_flagが1の場合に、入力された動き変位補償画像predSamplesLXに対して、残差予測を行う。残差予測フラグres_pred_flagが0の場合には、入力された動き変位補償画像predSamplesLXをそのまま出力する。インター予測パラメータ復号部303から入力された変位ベクトルmvDispと、残差格納部313に格納された残差refResSamplesを用いて、動き変位補償部3091で得られた動き変位補償画像predSamplesLXに対し残差予測を行う。残差予測は、予測画像生成の対象とする対象レイヤ(第2のレイヤ画像)とは異なる参照レイヤ(第1のレイヤ画像)の残差を、対象レイヤの予測した画像である動き変位補償画像predSamplesLXに加えることにより行われる。すなわち、参照レイヤと同様の残差が対象レイヤにも生じると仮定して、既に導出された参照レイヤの残差を対象レイヤの残差の推定値として用いる。ベースレイヤ(ベースビュー)では同じレイヤの画像のみが参照画像となる。従って、参照レイヤ(第1のレイヤ画像)がベースレイヤ(ベースビュー)である場合には、参照レイヤの予測画像は動き補償による予測画像であることから、対象レイヤ(第2のレイヤ画像)による予測においても、動き補償による予測画像である場合に、残差予測は有効である。すなわち、残差予測は対象ブロックが動き補償の場合に有効であるという特性を持つ。
残差予測部3092は、図示しない残差取得部30921と、残差フィルタ部30922から構成される。図12は、残差予測を説明するための図である。対象レイヤ上の対象ブロックに対応する対応ブロックは、参照レイヤ上の画像の対象ブロックの位置を起点として、参照レイヤと対象レイヤの位置関係を示すベクトルである変位ベクトルmvDispだけずれた位置になるブロックに位置する。従って、残差予測に用いる残差は、変位ベクトルmvDispだけずれた位置にある残差を用いる。具体的には、残差取得部30921は、対象ブロックの画素の座標(x, y)を、対象ブロックの変位ベクトルmvDispの整数画素成分だけずらした位置の画素を導出する。変位ベクトルmvDispが小数精度であることを考慮し、残差取得部30921は、対象ブロックの画素の座標が(xP、yP)である場合に対応する画素R0のX座標xR0と、画素R0の隣接画素R1のX座標xR1を以下の式により導出する。
xR0 = Clip3( 0, PicWidthInSamples - 1, xP + x + (mvDisp[0] >> 2 ) )
xR1 = Clip3( 0, PicWidthInSamples - 1, xP + x + (mvDisp[0] >> 2 ) + 1 )
ここで、Clip3(x, y, z)は、zをx以上、y以下に制限(クリップ)する関数である。なお、mvDisp[0]
>> 2は、1/4ペル精度のベクトルにおいて整数成分を導出する式である。
残差取得部30921は、変位ベクトルmvDispで指定される座標の小数画素位置(mvDisp[0] - ( ( mvDisp[0] >> 2 ) << 2 ) )に応じて、画素R0の重み係数w0と、画素R1の重み係数w1を以下の式により導出する。
w0 = 4 - mvDisp[0] + ( ( mvDisp[0] >> 2 ) << 2 )
w1 = mvDisp[0] - ( ( mvDisp[0] >> 2 ) << 2 )
続いて、残差取得部30921は、残差格納部313から、画素R0、画素R1の残差をrefResSamples[ xR0, y ]、refResSamples[ xR1, y ]により取得する。残差フィルタ部30922は、推定残差deltaLを以下の式で導出する。
delta = ( w0 * refResSamples[ xR0, y ] + w1 * refResSamples[ xR1, y ] + 2 ) >> 2

上記処理は、変位ベクトルmvDispが小数精度を有する場合に、線形補間により画素を導出していたが、線形補間を用いず、近傍の整数画素を用いても良い。具体的には、残差取得部30921は、対象ブロックの画素に対応する画素として画素xR0のみを取得し、以下の式を用いて推定残差deltaLを導出しても良い。
delta =refResSamples[ xR0, y ]
(照度補償)
照度補償部3093は、照度補償フラグic_enable_flagが1の場合に、入力された動き変位補償画像predSamplesLXに対して、照度補償を行う。照度補償フラグic_enable_flagが0の場合には、入力された動き変位補償画像predSamplesLXをそのまま出力する。照度補償部3093に入力される動き変位補償画像predSamplesLXは、残差予測がオフの場合には、動き変位補償部3091の出力画像であり、残差予測がオンの場合には、残差予測部3092の出力画像である。照度補償は、予測画像生成の対象となる対象ブロックに隣接する隣接領域の動き変位画像の画素値と、隣接領域の復号画像の変化が、対象ブロック内の画素値と、対象ブロックの原画との変化に類似しているとの仮定に基づいて行われる。
照度補償部3093は、図示しない照度パラメータ推定部30931と、照度補償フィルタ部30932から構成される。
照度パラメータ推定部30931は、対象ブロック(対象予測ユニット)の画素を、参照ブロックの画素から推定するための推定パラメータを求める。図13は、照度補償を説明するための図である。図13では、対象ブロックの周囲の画素Lと、対象ブロックから変位ベクトルだけずれた位置にある、参照レイヤ画像上の参照ブロックの周囲の画素Cの位置を示している。
照度パラメータ推定部30931は、上記対象ブロックの周囲の画素L(L0〜LN−1)と上記参照ブロックの周囲の画素C(C0〜CN−1)から、推定パラメータ(照度変化パラメータ)aとbを最小2乗法を用いて以下の式より求める。
LL = ΣLi × Li
LC = ΣLi × Ci
L = ΣLi
C = ΣCi
a = (N*LC - L*C) / (N*CC - C*C)
b = (LL*C - LC*L) / (N*CC - C*C)
ここでΣはiに対して和をとる関数。iは0〜N−1までの変数である。
以上は、推定パラメータが小数の場合であるため上記式も小数演算で行う必要がある。なお、装置としては、推定パラメータおよびパラメータの導出は整数であることが望ましい。
以下、推定パラメータが整数の場合を説明する。照度補償部3093は、以下の式によ推定パラメータ(照度変化パラメータ)icaidx、ickidx、icbidxを導出する。
k3 = Max( 0, bitDepth + Log2( nCbW >> nSidx ) - 14 )
k2 = Log2( (2*(nCbW >> nSidx)) >> k3 )
a1 = ( LC << k2 ) - L*C
a2 = ( LL << k2 ) - L*L
k1 = Max( 0, Log2( abs( a2 ) ) - 5 ) - Max( 0, Log2( abs( a1 ) ) - 14 ) + 2
a1s = a1 >> Max(0, Log2( abs( a1 ) ) - 14 )
a2s = abs( a2 >> Max(0, Log2( abs( a2 ) ) - 5 ) )
a3 = a2s < 1 ? 0 : Clip3( -215, 215-1, (a1s*icDivCoeff + ( 1 << ( k1 ? 1 ) ) ) >> k1 )
icaidx = a3 >> Max( 0, Log2( abs( a3 ) ) - 6 )
ickidx = 13 - Max( 0, Log2( abs( icaidx ) ) - 6 )
icbidx = ( L - ( ( icaidx*C ) >> k1 ) + ( 1 << ( k2 - 1 ) ) ) >> k2
ここで、bitDepthは、画素のビット幅(通常8〜12)、nCbWは、対象ブロックの幅、Max(x,y)はxとyの最大値を求める関数、Log2(x)はxの2の対数を求める関数、abs(x)はxの絶対値を求める関数である。また、icDivCoeffは、a2sを入力として所定の定数を導出する図14に示すテーブルである。
照度補償部3093の備える照度補償フィルタ部30932は、照度パラメータ推定部30931が導出した推定パラメータを用いて、対象画素から、照度変化を補償した画素を導出する。例えば、推定パラメータが小数a、bの場合には次の式により求める。
predSamples[ x ][ y ] = a * predSamples[ x ][ y ] + b
ここで、predSamplesは対象ブロック中の座標(x, y)の画素である。
また、推定パラメータが上述の整数icaidx、ickidx、icbidxの場合には次の式により求める。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( ( ( (predSamplesL0[ x ][ y ] + offset1 ) >> shift1) * ica0) >> ick0) + icb0 )
(重み予測)
重み予測部3094は、入力される動き変位画像predSamplesLXに重み係数を乗算することにより予測ピクチャブロックP(予測画像)を生成する。入力される動き変位画像predSamplesLXは、残差予測、照度補償が行われる場合には、それらが施された画像である。参照リスト利用フラグの一方(predFlagL0もしくはpredFlagL1)が1の場合(単予測の場合)で、重み予測を用いない場合には入力された動き変位画像predSamplesLX(LXはL0もしくはL1)を画素ビット数に合わせる以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( predSamplesLX[ x ][ y ] + offset1 ) >> shift1 )
ここで、shift1=14−bitDepth、offset1=1<<(shift1−1)である。
また、参照リスト利用フラグの両者(predFlagL0もしくはpredFlagL1)が1の場合(双予測の場合)で、重み予測を用いない場合には、入力された動き変位画像predSamplesL0、predSamplesL1を平均し画素ビット数に合わせる以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( predSamplesL0[ x ][ y ] + predSamplesL1[ x ][ y ] + offset2 ) >> shift2 )
ここで、shift2=15−bitDepth、offset2=1<<(shift2−1)である。
さらに、単予測の場合で、重み予測を行う場合には、重み予測部3094は、重み予測係数w0とオフセットo0を導出し、以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( (predSamplesLX[ x ][ y ] * w0 + 2log2WD - 1) >> log2WD ) + o0 )
ここで、log2WDは所定のシフト量を示す変数である。
さらに、双予測の場合で、重み予測を行う場合には、重み予測部3094は、重み予測係数w0、w1、o0、o1を導出し、以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( predSamplesL0 [ x ][ y ] * w0 + predSamplesL1[ x ][ y ] * w1 + ((o0 + o1 + 1) << log2WD) ) >> (log2WD + 1) )
〔画像符号化装置〕
以下において、本実施形態に係る画像符号化装置2について、図29を参照して説明する。
(画像符号化装置の概要)
画像符号化装置2は、概略的に言えば、入力画像#10を符号化することによって符号化データ#1を生成し、出力する装置である。
(画像符号化装置の構成)
本実施形態に係る画像符号化装置2の構成例について説明する。図29は、本実施形態に係る画像符号化装置2の構成を示す概略図である。画像符号化装置2は、ヘッダ符号化部10E、ピクチャ符号化部21、復号ピクチャバッファ12、参照ピクチャ決定部13Eを含んで構成される。画像符号化装置2は、複数のレイヤを含む画像において特定の時刻のピクチャから復号を開始する後述するランダムアクセス復号処理が可能である。
[ヘッダ符号化部10E]
ヘッダ符号化部10Eは、入力画像#10に基づいて、NALユニットヘッダ、SPS、PPS、および、スライスヘッダなどをの、NALユニット単位、シーケンス単位、ピクチャ単位、またはスライス単位で復号に利用される情報を生成し、符号化して出力する。
ヘッダ符号化部10Eは、符号化データ#1に含まれるVPSおよびSPSを既定のシンタックス定義に基づいてパースして、シーケンス単位で復号に利用される情報を符号化する。例えば、レイヤ数に関する情報がVPSに符号化され、復号画像の画像サイズに関連する情報がSPSに符号化される。
また、ヘッダ符号化部10Eは、符号化データ#1に含まれるスライスヘッダを既定のシンタックス定義に基づいてパースして、スライス単位で復号に利用される情報を符号化する。例えば、スライスタイプがスライスヘッダから符号化される。
図32は、ヘッダ符号化部10Eの概略的構成について示した機能ブロック図である。図32に示すようにヘッダ符号化部10Eは、NALユニットヘッダ符号化部211E、VPS符号化部212E、レイヤ情報格納部213、ビューデプス導出部214、ツール有効性情報符号化部215Eを備えている。レイヤ情報格納部213、ビューデプス導出部214は、ヘッダ復号部10で既に説明済みであるので、詳細の説明は省略する。
[NALユニットヘッダ符号化部211E]
図33は、NALユニットヘッダ符号化部211Eの概略的構成について示した機能ブロック図である。図33に示すように、NALユニットヘッダ符号化部211EはレイヤID符号化部2111EとNALユニットタイプ符号化部2112Eを含んで構成される。
レイヤID符号化部2111Eは、符号化データにレイヤIDを符号化する。NALユニットタイプ符号化部2112Eは、符号化データにNALユニットタイプを符号化する。
[VPS符号化部212E]
VPS符号化部212Eは、規定のシンタックス定義に基づいて、複数のレイヤで符号化に利用される情報を符号化データにVPSおよびVPS拡張として符号化する。例えば、VPSからは図20に示すシンタックス、VPS拡張から図21に示すシンタックスが符号化される。VPS拡張を符号化するために、フラグvps_extension_flagとして1を符号化する。
図34は、VPS符号化部212Eの概略的構成について示した機能ブロック図である。図34に示すように、VPS符号化部212Eはスケーラブルタイプ符号化部2121Eと次元ID符号化部2122E、依存レイヤ符号化部2123Eを含んで構成される。
VPS符号化部212は、図示しない内部のレイヤ数符号化部により、レイヤ数を示すシンタックス要素vps_max_layers_minus1を符号化する。
スケーラブルタイプ符号化部2121Eは、レイヤ情報格納部213から、スケーラブルマスクscalable_maskを読み出して符号化データに符号化する。次元ID符号化部2122Eは、レイヤi、スケーラブルの種別j毎に次元IDdimension_id[i][j]を符号化する。レイヤIDのインデックスiは1からvps_max_layers_minus1までの値、スケーラブル種別を示すインデックスjは0〜NumScalabilityTypes-1までの値を取る。
依存レイヤ符号化部2123Eは、符号化データに依存レイヤ数num_direct_ref_layersと依存レイヤフラグref_layer_idを符号化する。具体的には、レイヤi、ごとに依存レイヤ数num_direct_ref_layersの数だけdimension_id[i][j]を符号化する。レイヤIDのインデックスiは1からvps_max_layers_minus1までの値、依存レイヤフラグのインデックスjは、0〜num_direct_ref_layers-1までの値を取る。例えばレイヤIDが1のレイヤが、レイヤIDが2のレイヤ、レイヤIDが3のレイヤに依存する場合は、依存レイヤ数num_direct_ref_layers[1]=2であり、ref_layer_id [1][0]=2、ref_layer_id [1][1]=3を符号化する。
[ツール有効性情報符号化部215E]
ツール有効性情報符号化部215Eは、VPS、SPS、PPSなどのパラメータセットに、特定のツールが使用可能か否かを表すフラグ(ツール有効性フラグ)を符号化する。ツール有効性情報符号化部215Eは、ツール有効性フラグが符号化データ中に存在するか否か(符号化データ中に含めるか否か)を判定し、ツール有効性フラグが符号化データ中に存在する場合には、ツール有効性フラグを符号化データに符号化する。
図44は、ツール有効性情報符号化部215Eの概略的構成について示した機能ブロック図である。図44に示すように、ツール有効性情報符号化部215Eは対象レイヤデプス判定部2151を含んで構成される。
対象レイヤデプス判定部2151は、入力されたレイヤIDlayer_idに基づいて、対象レイヤがデプスであるか否かを判定する。具体的には、対象layer_idをビューデプス導出部214に入力し、デプスフラグdepth_flagを得る。
ツール有効性情報符号化部215Eは、対象レイヤがベースレイヤ以外の場合に利用可能なツール(インタービュー予測フラグmulti_view_mv_pred_flag、残差予測フラグmulti_view_residual_pred_flag)のツール有効性フラグを、対象レイヤlayer_idが0以外の場合に符号化データに符号化する。
ツール有効性情報符号化部215Eは、対象レイヤがデプスの場合に利用可能なツール(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)のツール有効性フラグを、導出されたデプスフラグdepth_flagが1の場合に符号化データに符号化する。
図37は、本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの構成の一部を示す図である。図37の詳細は既に説明したので説明を省略する。
以上の構成の画像符号化装置によれば、1つ以上のレイヤのパラメータを規定するビデオパラメータセットから、スケーラブルの種別を示すスケーラブルマスクと、次元IDを符号化するビデオパラメータセット符号化部と、レイヤIDと次元IDの関係を格納するレイヤパラメータ格納部と、NALユニットヘッダからレイヤIDを符号化するレイヤID符号化部と、さらに、上記レイヤID符号化部で符号化された対象レイヤのレイヤIDから、上記レイヤパラメータ格納部に格納された次元IDを参照し、対象レイヤのビューIDとデプスフラグを導出するビューデプス導出部を備えことにより、3次元スケーラブルに関わるビューIDとデプスフラグが、空間スケーラブルや画質スケーラビリティと同じ構造のビデオパラメータから導出可能になるという効果を奏する。
以上の構成のVPS符号化部212Eによれば、デプスで利用されるツール有効性フラグに対して、スケーラブルマスクの値に応じて、デプスフラグに対応する次元IDを特定し、特定された次元IDから導出されたデプスフラグが1の場合にのみ、ツール有効性フラグを符号化する。これによりレイヤの種別がスケーラブルの種類に応じて意味が変化する次元IDによって規定された場合においても、冗長性な符号を符号化することなく、デプスに特化したツールの利用可能性を符号化することが可能であるという効果を奏する。
図46は、ツール有効性情報符号化部215Eの別の構成であるツール有効性情報符号化部215BEの概略的構成について示した機能ブロック図である。図46に示すように、ツール有効性情報符号化部215BEは対象レイヤデプス判定部2151と参照レイヤビュー判定部2152を含んで構成される。対象レイヤデプス判定部2151は既に説明した通りであり、対象レイヤのデプスフラグを導出する。
参照レイヤビュー判定部2152は、対象レイヤlayer_idのビューIDと依存レイヤのビューIDが一致するか否か判定する。判定方法は、既に説明済みであるので詳細は省略する。
図45は、ヘッダ符号化部10Eの別の構成例であるヘッダ符号化部10BEの概略的構成について示した機能ブロック図である。ヘッダ符号化部10BEは、NALユニットヘッダ符号化部211E、VPS符号化部212E、レイヤ情報格納部213、ビューデプス導出部214、ツール有効性情報符号化部215BEを備えている。NALユニットヘッダ符号化部211E、VPS符号化部212Eは、ヘッダ符号化部10Eで既に説明済みであるので、詳細の説明は省略する。レイヤ情報格納部213、ビューデプス導出部214は、ヘッダ復号部10で既に説明済みであるので、詳細の説明は省略する。
ツール有効性情報符号化部215BEは、参照レイヤビュー判定部2152の判定に基づいて、対象レイヤlayer_idのビューIDと依存レイヤのビューIDが一致する場合に、対象レイヤがデプスの場合に利用可能なツール(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)のツール有効性フラグを、符号化データに符号化し、一致しない場合には、符号化データに符号化しない。
ここで、ツール有効性情報符号化部215BEは、さらに対象レイヤがデプスであるかを考慮し、導出されたデプスフラグdepth_flagが1の場合かつ対象レイヤlayer_idのビューIDと依存レイヤのビューIDが一致する場合に、ツール有効性フラグを符号化データに符号化し、それ例外の場合は、符号化データに符号化しない構成でも良い。
図39は、ツール有効性情報符号化部215BEにより符号化される、本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの構成の一部を示す図である。図39の詳細は既に説明済みであるので説明を省略する。
上記画像符号化装置によれば、依存レイヤのビューIDが、対象レイヤのビューIDと等しい場合にのみ、ツール有効性フラグを符号化データに符号化するため、このような符号化効率が低い場合を防ぐ効果を奏する。
図47は、ツール有効性情報符号化部215Eのさらに別の構成であるツール有効性情報符号化部215CEの概略的構成について示した機能ブロック図である。図47に示すように、ツール有効性情報符号化部215CEは対象レイヤデプス判定部2151と参照レイヤデプス判定部2153から構成される。対象レイヤデプス判定部2151は既に説明した通りであり、対象レイヤのデプスフラグを導出する。
参照レイヤデプス判定部2153は、依存レイヤがテクスチャピクチャであるか(デプスフラグが0であるか)否かを判定する。判定方法は、既に説明済みであるので詳細は省略する。
ツール有効性情報符号化部215CEは、依存レイヤがテクスチャピクチャである場合(!ref_depth_flagが1の場合)に、対象レイヤがデプスの場合に利用可能なツール(デプスイントラ予測フラグenable_dmm_flag、動きパラメータ継承フラグuse_mpi_flag)のツール有効性フラグし、それ以外の場合には、符号化データに符号化しない。
ツール有効性情報符号化部215CEは、さらに対象レイヤがデプスであるかを考慮し、導出されたデプスフラグdepth_flagが1の場合かつ対象レイヤがテクスチャピクチャである場合に符号化データに符号化し、それ以外の場合には、符号化データに符号化しない構成でも良い。
図41は、ツール有効性情報符号化部215CEにより符号化される、本発明の実施形態に係るツール有効性フラグに関するVPS拡張の符号化データの構成を示す図である。図41の詳細は既に説明したため説明を省略する。
上記VPS符号化部212(ビデオパラメータセット符号化部)によれば、レイヤの依存関係を示す依存レイヤIDを符号化する依存レイヤID符号化部を備え、上記ツール有効性情報符号化部は、上記次元ID符号化部において上記依存レイヤIDのレイヤを規定する上記ビデオパラメータセットから導出された依存レイヤのデプスフラグが、デプスではないことを示す場合のみ、前記ツール有効性フラグを符号化する。
上記の構成によれば、依存レイヤのデプスフラグがデプスである場合にはツールが禁止されるため、デプスピクチャの場合に利用可能なツールはテクスチャのレイヤのピクチャもしくは符号化パラメータのみに依存する。この場合、デプスのレイヤもしくは符号化パラメータには依存しないため、デプスのレイヤを復号する場合において、後続のレイヤのために符号化パラメータを格納する必要が無くなる、後続のレイヤのために符号化パラメータを格納する必要があるのはテクスチャのレイヤを復号する場合に限定されるため、本符号化装置で生成した符号化データを復号するデコーダのメモリを削減する効果を奏する。
[ランダムアクセスとNALユニットタイプ制限]
既に、画像復号装置1において説明した用に、本実施形態の符号化データでは、第1のNALユニットタイプ制限もしくは第2のNALユニットタイプ制限を行う符号化データを生成する。
画像符号化装置2は、第1のNALユニットタイプ制限の場合には、複数のレイヤのピクチャを符号化する場合において、レイヤIDが0以外のピクチャのNALユニットタイプを、レイヤIDが0のピクチャのNALユニットタイプと等しくするように符号化データを生成する。より具体的には、画像符号化装置2の含む参照ピクチャ管理部13は、複数のレイヤにおいて同じピクチャ構造(GOP構造)を有するように符号化することで行うことができる。すなわち、レイヤIDが0以外のピクチャ(例えばレイヤIDがMのピクチャ)が参照する参照ピクチャを、レイヤIDが0のピクチャが参照するピクチャのPOCと等しいレイヤIDがMのピクチャに限定することで、第1のNALユニットタイプ制限を有する符号化データを生成することができる。
なお、画像符号化装置2が、対象ピクチャと異なるレイヤピクチャを用いて符号化効率を向上させた符号化データを生成する場合には、符号化対象とするレイヤがRAPピクチャでない場合において、レイヤIDが0以外のピクチャ(例えばレイヤIDがMのピクチャ)が参照する参照ピクチャを、レイヤIDが0のピクチャが参照するピクチャのPOCと等しいレイヤIDがMのピクチャもしくは、同じPOCを有する対象とするレイヤと異なるレイヤIDのピクチャとすることで、第1のNALユニットタイプ制限を有する符号化データを生成することができる。
画像符号化装置2は、第2のNALユニットタイプ制限の場合には、複数のレイヤのピクチャを符号化する場合において、レイヤIDが0のピクチャがRAPピクチャのNALユニットタイプの場合には、レイヤIDが0以外のピクチャもRAPピクチャのNALユニットタイプとなるように符号化データを生成する。
より具体的には、画像符号化装置2の含む参照ピクチャ管理部13は、レイヤIDが0のピクチャがRAPピクチャである場合において、レイヤIDが0以外のピクチャのスライスをIスライスに限定し、レイヤIDが0のピクチャと同じNALユニットタイプを用いることで第2のNALユニットタイプ制限を有する符号化データを生成することができる。
(ピクチャ符号化部21の構成)
次に、本実施形態に係るピクチャ符号化部21の構成について説明する。図30は、本実施形態に係るピクチャ符号化部21の構成を示すブロック図である。ピクチャ符号化部21は、予測画像生成部101、減算部102、DCT・量子化部103、エントロピー符号化部104、逆量子化・逆DCT部105、加算部106、予測パラメータメモリ108、符号化パラメータ決定部110、予測パラメータ符号化部111を含んで構成される。予測パラメータ符号化部111は、インター予測パラメータ符号化部112及びイントラ予測パラメータ符号化部113を含んで構成される。
予測画像生成部101は、外部から入力されたレイヤ画像Tの視点毎の各ピクチャについて、そのピクチャを分割した領域であるブロック毎に予測ピクチャブロックPを生成する。ここで、予測画像生成部101は、予測パラメータ符号化部111から入力された予測パラメータに基づいて復号ピクチャバッファ12から参照ピクチャブロックを読み出す。予測パラメータ符号化部111から入力された予測パラメータとは、例えば、動きベクトル又は変位ベクトルである。予測画像生成部101は、符号化対象ブロックを起点として予測された動きベクトル又は変位ベクトルが示す位置にあるブロックの参照ピクチャブロックを読み出す。予測画像生成部101は、読み出した参照ピクチャブロックについて複数の予測方式のうちの1つの予測方式を用いて予測ピクチャブロックPを生成する。予測画像生成部101は、生成した予測ピクチャブロックPを減算部102に出力する。なお、予測画像生成部101は、既に説明した予測画像生成部308と同じ動作であるため予測ピクチャブロックPの生成の詳細は省略する。
予測画像生成部101は、予測方式を選択するために、例えば、レイヤ画像に含まれるブロックの画素毎の信号値と予測ピクチャブロックPの対応する画素毎の信号値との差分に基づく誤差値を最小にする予測方式を選択する。予測方式を選択する方法は、これには限られない。
符号化対象のピクチャがベースビューピクチャである場合には、複数の予測方式とは、イントラ予測、動き予測及びマージ予測である。動き予測とは、上述のインター予測のうち、表示時刻間の予測である。マージ予測とは、既に符号化されたブロックであって、符号化対象ブロックから予め定めた範囲内にあるブロックと同一の参照ピクチャブロック及び予測パラメータを用いる予測である。符号化対象のピクチャがノンベースビューピクチャである場合には、複数の予測方式とは、イントラ予測、動き予測、マージ予測、及び変位予測である。変位予測(視差予測)とは、上述のインター予測のうち、別レイヤ画像(別視点画像)間の予測である。さらに、動き予測、マージ予測、及び変位予測である。変位予測(視差予測)に対して、追加予測(残差予測および照度補償)を行う場合と行わない場合の予測がある。
予測画像生成部101は、イントラ予測を選択した場合、予測ピクチャブロックPを生成する際に用いたイントラ予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
予測画像生成部101は、動き予測を選択した場合、予測ピクチャブロックPを生成する際に用いた動きベクトルmvLXを予測パラメータメモリ108に記憶し、インター予測パラメータ符号化部112に出力する。動きベクトルmvLXは、符号化対象ブロックの位置から予測ピクチャブロックPを生成する際の参照ピクチャブロックの位置までのベクトルを示す。動きベクトルmvLXを示す情報には、参照ピクチャを示す情報(例えば、参照ピクチャインデックスrefIdxLX、ピクチャ順序番号POC)を含み、予測パラメータを表すものであっても良い。また、予測画像生成部101は、インター予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
予測画像生成部101は、変位予測を選択した場合、予測ピクチャブロックPを生成する際に用いた変位ベクトルを予測パラメータメモリ108に記憶し、インター予測パラメータ符号化部112に出力する。変位ベクトルdvLXは、符号化対象ブロックの位置から予測ピクチャブロックPを生成する際の参照ピクチャブロックの位置までのベクトルを示す。変位ベクトルdvLXを示す情報には、参照ピクチャを示す情報(例えば、参照ピクチャインデックスrefIdxLX、ビューIDview_id)を含み、予測パラメータを表すものであっても良い。また、予測画像生成部101は、インター予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
予測画像生成部101は、マージ予測を選択した場合、選択した参照ピクチャブロックを示すマージインデックスmerge_idxをインター予測パラメータ符号化部112に出力する。また、予測画像生成部101は、マージ予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
上記の、動き予測、変位予測、マージ予測において、予測画像生成部101は、追加予測として残差予測を行う場合には、既に説明したように予測画像生成部101に含まれる残差予測部3092において残差予測を行い、追加予測として照度補償を行う場合には、既に説明したように予測画像生成部101に含まれる照度補償部3093において照度補償予測を行う。
減算部102は、予測画像生成部101から入力された予測ピクチャブロックPの信号値を、外部から入力されたレイヤ画像Tの対応するブロックの信号値から画素毎に減算して、残差信号を生成する。減算部102は、生成した残差信号をDCT・量子化部103と符号化パラメータ決定部110に出力する。
DCT・量子化部103は、減算部102から入力された残差信号についてDCTを行い、DCT係数を算出する。DCT・量子化部103は、算出したDCT係数を量子化して量子化係数を求める。DCT・量子化部103は、求めた量子化係数をエントロピー符号化部104及び逆量子化・逆DCT部105に出力する。
エントロピー符号化部104には、DCT・量子化部103から量子化係数が入力され、符号化パラメータ決定部110から符号化パラメータが入力される。入力される符号化パラメータには、例えば、参照ピクチャインデックスrefIdxLX、ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLX、予測モードpredMode、及びマージインデックスmerge_idx等の符号がある。
エントロピー符号化部104は、入力された量子化係数と符号化パラメータをエントロピー符号化して符号化データ#1を生成し、生成した符号化データ#1を外部に出力する。
逆量子化・逆DCT部105は、DCT・量子化部103から入力された量子化係数を逆量子化してDCT係数を求める。逆量子化・逆DCT部105は、求めたDCT係数について逆DCTを行い、符号化残差信号を算出する。逆量子化・逆DCT部105は、算出した符号化残差信号を加算部106に出力する。
加算部106は、予測画像生成部101から入力された予測ピクチャブロックPの信号値と逆量子化・逆DCT部105から入力された符号化残差信号の信号値を画素毎に加算して、参照ピクチャブロックを生成する。加算部106は、生成した参照ピクチャブロックを復号ピクチャバッファ12に記憶する。
予測パラメータメモリ108は、予測パラメータ符号化部111が生成した予測パラメータを、符号化対象のピクチャ及びブロック毎に予め定めた位置に記憶する。
復号ピクチャバッファ12は、加算部106が生成した参照ピクチャブロックを、符号化対象のピクチャ及びブロック毎に予め定めた位置に記憶する。
符号化パラメータ決定部110は、符号化パラメータの複数のセットのうち、1つのセットを選択する。符号化パラメータとは、上述した予測パラメータやこの予測パラメータに関連して生成される符号化の対象となるパラメータである。予測画像生成部101は、これらの符号化パラメータのセットの各々を用いて予測ピクチャブロックPを生成する。
符号化パラメータ決定部110は、複数のセットの各々について情報量の大きさと符号化誤差を示すコスト値を算出する。コスト値は、例えば、符号量と二乗誤差に係数λを乗じた値との和である。符号量は、量子化誤差と符号化パラメータをエントロピー符号化して得られる符号化データ#1の情報量である。二乗誤差は、減算部102において算出された残差信号の残差値の二乗値についての画素間の総和である。係数λは、予め設定されたゼロよりも大きい実数である。符号化パラメータ決定部110は、算出したコスト値が最小となる符号化パラメータのセットを選択する。これにより、エントロピー符号化部104は、選択した符号化パラメータのセットを符号化データ#1として外部に出力し、選択されなかった符号化パラメータのセットを出力しない。
予測パラメータ符号化部111は、予測画像生成部101から入力されたパラメータに基づいて予測ピクチャを生成する際に用いる予測パラメータを導出し、導出した予測パラメータを符号化して符号化パラメータのセットを生成する。予測パラメータ符号化部111は、生成した符号化パラメータのセットをエントロピー符号化部104に出力する。
予測パラメータ符号化部111は、生成した符号化パラメータのセットのうち符号化パラメータ決定部110が選択したものに対応する予測パラメータを予測パラメータメモリ108に記憶する。
予測パラメータ符号化部111は、予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合、インター予測パラメータ符号化部112を動作させる。予測パラメータ符号化部111は、予測モードpredModeがイントラ予測モードを示す場合、イントラ予測パラメータ符号化部113を動作させる。
インター予測パラメータ符号化部112は、符号化パラメータ決定部110から入力された予測パラメータに基づいてインター予測パラメータを導出する。インター予測パラメータ符号化部112は、インター予測パラメータを導出する構成として、インター予測パラメータ復号部303(図5等、参照)がインター予測パラメータを導出する構成と同一の構成を含む。インター予測パラメータ符号化部112の構成については、後述する。
イントラ予測パラメータ符号化部113は、符号化パラメータ決定部110から入力された予測モードpredModeが示すイントラ予測モードIntraPredModeをインター予測パラメータのセットとして定める。
次に、インター予測パラメータ符号化部112の構成について説明する。インター予測パラメータ符号化部112は、インター予測パラメータ復号部303に対応する手段である。
図31は、本実施形態に係るインター予測パラメータ符号化部112の構成を示す概略図である。
インター予測パラメータ符号化部112は、インター予測パラメータ符号化制御部1031、マージ予測パラメータ導出部1121、AMVP予測パラメータ導出部1122、減算部1123、及び予測パラメータ統合部1126を含んで構成される。
マージ予測パラメータ導出部1121は、上述のマージ予測パラメータ導出部3036(図7参照)と同様な構成を有する。
インター予測パラメータ符号化制御部1031は、インター予測に関連する符号(シンタックス要素の符号化をエントロピー符号化部104に指示し、符号化データ#1に含まれる符号(シンタックス要素)を例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idx、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを符号化する。
マージ予測パラメータ導出部1121には、予測画像生成部101から入力された予測モードpredModeがマージ予測モードを示す場合、符号化パラメータ決定部110からマージインデックスmerge_idxが入力される。マージインデックスmerge_idxは、予測パラメータ統合部1126に出力される。マージ予測パラメータ導出部1121は、マージ候補のうちマージインデックスmerge_idxが示す参照ブロックの参照ピクチャインデックスrefIdxLX、ベクトルmvLXを予測パラメータメモリ108から読み出す。マージ候補とは、符号化対象となる符号化対象ブロックから予め定めた範囲にある参照ブロック(例えば、符号化対象ブロックの左下端、左上端、右上端に接する参照ブロックのうち)であって、符号化処理が完了した参照ブロックである。
AMVP予測パラメータ導出部1122は、上述のAMVP予測パラメータ導出部3032(図8参照)と同様な構成を有する。
AMVP予測パラメータ導出部1122には、予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合、符号化パラメータ決定部110からベクトルmvLXが入力される。AMVP予測パラメータ導出部1122は、入力されたベクトルmvLXに基づいて予測ベクトルmvpLXを導出する。AMVP予測パラメータ導出部1122は、導出した予測ベクトルmvpLXを減算部1123に出力する。なお、参照ピクチャインデックスrefIdx及びベクトルインデックスmvp_LX_idxは、予測パラメータ統合部1126に出力される。
減算部1123は、符号化パラメータ決定部110から入力されたベクトルmvLXからAMVP予測パラメータ導出部1122から入力された予測ベクトルmvpLXを減算して差分ベクトルmvdLXを生成する。差分ベクトルmvdLXは予測パラメータ統合部1126に出力する。
予測画像生成部101から入力された予測モードpredModeがマージ予測モードを示す場合には、予測パラメータ統合部1126は、符号化パラメータ決定部110から入力されたマージインデックスmerge_idxをエントロピー符号化部104に出力する。
予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合には、予測パラメータ統合部1126は、次の処理を行う。
予測パラメータ統合部1126は、符号化パラメータ決定部110から入力された参照ピクチャインデックスrefIdxLX及びベクトルインデックスmvp_LX_idx、減算部1123から入力された差分ベクトルmvdLXを統合する。予測パラメータ統合部1126は、統合した符号をエントロピー符号化部104に出力する。
なお、上述した実施形態における画像符号化装置2、画像復号装置1の一部、例えば、エントロピー復号部301、予測パラメータ復号部302、予測画像生成部101、DCT・量子化部103、エントロピー符号化部104、逆量子化・逆DCT部105、符号化パラメータ決定部110、予測パラメータ符号化部111、エントロピー復号部301、予測パラメータ復号部302、予測画像生成部308、逆量子化・逆DCT部311をコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、画像符号化装置2、画像復号装置1のいずれかに内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
また、上述した実施形態における画像符号化装置2、画像復号装置1の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現しても良い。画像符号化装置2、画像復号装置1の各機能ブロックは個別にプロセッサ化しても良いし、一部、または全部を集積してプロセッサ化しても良い。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現しても良い。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いても良い。
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
本発明は、画像データが符号化された符号化データを復号する画像復号装置、および、画像データが符号化された符号化データを生成する画像符号化装置に好適に適用することができる。また、画像符号化装置によって生成され、画像復号装置によって参照される符号化データのデータ構造に好適に適用することができる。
1…画像復号装置
2…画像符号化装置
3…ネットワーク
4…画像表示装置
5…画像伝送システム
10…ヘッダ復号部
10B…ヘッダ復号部
10BE…ヘッダ符号化部
10C…ヘッダ復号部
10D…ヘッダ復号部
10E…ヘッダ符号化部
11…ピクチャ復号部
12…復号ピクチャバッファ
13…参照ピクチャ管理部
13E…参照ピクチャ決定部
15…参照ピクチャリスト導出部
101…予測画像生成部
102…減算部
103…DCT・量子化部
1031…インター予測パラメータ符号化制御部
104…エントロピー符号化部
105…逆量子化・逆DCT部
106…加算部
108…予測パラメータメモリ
110…符号化パラメータ決定部
111…予測パラメータ符号化部
112…インター予測パラメータ符号化部
1121…マージ予測パラメータ導出部
1122…AMVP予測パラメータ導出部
1123…減算部
1126…予測パラメータ統合部
113…イントラ予測パラメータ符号化部
21…ピクチャ符号化部
211…NALユニットヘッダ復号部
2111…レイヤID復号部
2112…NALユニットタイプ復号部
211E…NALユニットヘッダ符号化部
2111E…レイヤID符号化部
2112E…NALユニットタイプ符号化部
212…VPS復号部(ビデオパラメータセット復号部)
212B…VPS復号部(ビデオパラメータセット復号部)
212C…VPS復号部(ビデオパラメータセット復号部)
212D…VPS復号部(ビデオパラメータセット復号部)
2121…スケーラブルタイプ復号部
2122…次元ID復号部
2123…依存レイヤID復号部
2124…レイヤ有効性フラグ復号部
212E…VPS符号化部(ビデオパラメータセット符号化部)
2121E…スケーラブルタイプ符号化部
2122E…次元ID符号化部
2123E…依存レイヤ符号化部
213…レイヤ情報格納部(レイヤパラメータ格納部)
214…ビューデプス導出部
214D…ビューデプス導出部
215…ツール有効性情報復号部
2151…対象レイヤデプス判定部
2152…参照レイヤビュー判定部
2153…参照レイヤデプス判定部
215B…ツール有効性情報復号部
215C…ツール有効性情報復号部
215BC…ツール有効性情報復号部
215D…ツール有効性情報復号部
215E…ツール有効性情報符号化部
215BE…ツール有効性情報符号化部
215CE…ツール有効性情報符号化部
301…エントロピー復号部
302…予測パラメータ復号部
303…インター予測パラメータ復号部
3031…インター予測パラメータ復号制御部
30311…追加予測フラグ復号部
303111…リファレンスレイヤ判定部
30312…マージインデックス復号部
30313…ベクトル候補インデックス復号部
30314…追加予測フラグ判定部
3032…AMVP予測パラメータ導出部
3033…ベクトル候補導出部
3034…予測ベクトル選択部
3035…加算部
3036…マージ予測パラメータ導出部
30361…マージ候補導出部
303611…マージ候補格納部
303612…拡張マージ候補導出部
3036121…インターレイヤマージ候補導出部
3036122…変位ベクトル取得部
3036123…インターレイヤ変位マージ候補導出部
303613…基本マージ候補導出部
3036131…空間マージ候補導出部
3036132…時間マージ候補導出部
3036133…結合マージ候補導出部
3036134…ゼロマージ候補導出部
303614…MPI候補導出部
30362…マージ候補選択部
304…イントラ予測パラメータ復号部
307…予測パラメータメモリ
308…予測画像生成部
309…インター予測画像生成部
3091…変位補償部
3092…残差予測部
30921…残差取得部
30922…残差フィルタ部
3093…照度補償部
30931…照度パラメータ推定部
30932…照度補償フィルタ部
3094…予測部
310…イントラ予測画像生成部
3101…方向予測部
3102…DMM予測部
311…逆量子化・逆DCT部
312…加算部
313…残差格納部

Claims (5)

  1. 1つ以上のレイヤのパラメータを規定するビデオパラメータセットから、スケーラブルの種別を示すスケーラブルマスクと、次元IDを復号するビデオパラメータセット復号部と、
    レイヤIDと次元IDの関係を格納するレイヤパラメータ格納部と、
    NALユニットヘッダからレイヤIDを復号するレイヤID復号部と
    さらに、上記レイヤID復号部で復号された対象レイヤのレイヤIDから、上記レイヤパラメータ格納部に格納された次元IDを参照し、対象レイヤのビューIDとデプスフラグを導出するビューデプス導出部を備える画像復号装置。
  2. 上記画像復号装置は、さらに、ツールの使用可能性を規定するツール有効性フラグを復号するツール有効性情報復号部を備え、
    上記ビデオパラメータセット復号部は、さらに、レイヤの依存関係を示す依存レイヤIDを復号する依存レイヤID復号部を備え、
    上記ツール有効性情報復号部は、上記ビューデプス導出部において上記依存レイヤIDのレイヤを規定する上記ビデオパラメータセットから導出された依存レイヤのビューIDが、上記ビューデプス導出部において復号された対象レイヤのビューIDと等しい場合にのみ、前記ツール有効性フラグを復号することを特徴とする請求項1に記載の画像復号装置。
  3. 上記ビデオパラメータセット復号部は、さらに、レイヤの依存関係を示す依存レイヤIDを復号する依存レイヤID復号部を備え、
    上記ツール有効性情報復号部は、上記次元ID復号部において上記依存レイヤIDのレイヤを規定する上記ビデオパラメータセットから導出された依存レイヤのデプスフラグが、デプスではないことを示す場合のみ、前記ツール有効性フラグを復号することを特徴とする請求項1に記載の画像復号装置。
  4. NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データにおいて、
    上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALLユニットタイプnal_unit_typeを含み、
    上記NALユニットデータに含まれるビデオパラメータセットにおいて、スケーラブルの種別を示すスケーラブルマスクと、スケーラブルの種別ごとの内容を示す次元IDが規定される符号化データであって、
    次元IDがレイヤIDによって規定されることを特徴とする符号化データ構造。
  5. 上記ビデオパラメータセット復号部は、さらに、各レイヤのレイヤの有効性を示すレイヤ有効性フラグを復号するレイヤ有効性フラグ復号部を備えることを特徴とする請求項1から請求項3に記載の画像復号装置。
JP2012286710A 2012-12-28 2012-12-28 画像復号装置、画像符号化装置および、データ構造 Pending JP2016034050A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012286710A JP2016034050A (ja) 2012-12-28 2012-12-28 画像復号装置、画像符号化装置および、データ構造
PCT/JP2013/081971 WO2014103600A1 (ja) 2012-12-28 2013-11-27 符号化データ構造、および画像復号装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012286710A JP2016034050A (ja) 2012-12-28 2012-12-28 画像復号装置、画像符号化装置および、データ構造

Publications (1)

Publication Number Publication Date
JP2016034050A true JP2016034050A (ja) 2016-03-10

Family

ID=51020694

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012286710A Pending JP2016034050A (ja) 2012-12-28 2012-12-28 画像復号装置、画像符号化装置および、データ構造

Country Status (2)

Country Link
JP (1) JP2016034050A (ja)
WO (1) WO2014103600A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020181434A1 (en) * 2019-03-08 2020-09-17 Zte Corporation Parameter set signaling in digital video
JP2022515031A (ja) * 2019-06-04 2022-02-17 テンセント・アメリカ・エルエルシー ビデオコーディングのための方法、機器及びコンピュータ・プログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5680812B1 (ja) * 2013-07-05 2015-03-04 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置
JP7453212B2 (ja) * 2019-03-26 2024-03-19 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020181434A1 (en) * 2019-03-08 2020-09-17 Zte Corporation Parameter set signaling in digital video
JP2022515031A (ja) * 2019-06-04 2022-02-17 テンセント・アメリカ・エルエルシー ビデオコーディングのための方法、機器及びコンピュータ・プログラム
US11516501B2 (en) 2019-06-04 2022-11-29 Tencent America LLC Method and apparatus for video coding using a subblock-based affine motion model

Also Published As

Publication number Publication date
WO2014103600A1 (ja) 2014-07-03

Similar Documents

Publication Publication Date Title
JP6397421B2 (ja) 画像復号装置及び画像符号化装置
WO2014103529A1 (ja) 画像復号装置、およびデータ構造
CA2909309C (en) Harmonized inter-view and view synthesis prediction for 3d video coding
US9967592B2 (en) Block-based advanced residual prediction for 3D video coding
KR101662963B1 (ko) 3d 비디오 코딩을 위한 장치, 방법 및 컴퓨터 프로그램
JP6469588B2 (ja) 残差予測装置、画像復号装置、画像符号化装置、残差予測方法、画像復号方法、および画像符号化方法
JP6360053B2 (ja) 照度補償装置、画像復号装置、画像符号化装置
WO2016125685A1 (ja) 画像復号装置、画像符号化装置および予測ベクトル導出装置
EP2966868B1 (en) Method for motion information prediction and inheritance in video coding
WO2015056719A1 (ja) 画像復号装置、画像符号化装置
WO2015056620A1 (ja) 画像復号装置、画像符号化装置
WO2014103600A1 (ja) 符号化データ構造、および画像復号装置
JP6118199B2 (ja) 画像復号装置、画像符号化装置、画像復号方法、画像符号化方法及びコンピュータ読み取り可能な記録媒体。
JPWO2015141696A1 (ja) 画像復号装置、画像符号化装置および予測装置
JP6401707B2 (ja) 画像復号装置、画像復号方法、および記録媒体
JP2015015626A (ja) 画像復号装置および画像符号化装置
JP2014204327A (ja) 画像復号装置および画像符号化装置