JPWO2014103529A1 - 画像復号装置、およびデータ構造 - Google Patents
画像復号装置、およびデータ構造 Download PDFInfo
- Publication number
- JPWO2014103529A1 JPWO2014103529A1 JP2014554222A JP2014554222A JPWO2014103529A1 JP WO2014103529 A1 JPWO2014103529 A1 JP WO2014103529A1 JP 2014554222 A JP2014554222 A JP 2014554222A JP 2014554222 A JP2014554222 A JP 2014554222A JP WO2014103529 A1 JPWO2014103529 A1 JP WO2014103529A1
- Authority
- JP
- Japan
- Prior art keywords
- unit
- picture
- layer
- poc
- nal
- 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
Links
- 238000009795 derivation Methods 0.000 claims description 99
- FMYKJLXRRQTBOR-UBFHEZILSA-N (2s)-2-acetamido-4-methyl-n-[4-methyl-1-oxo-1-[[(2s)-1-oxohexan-2-yl]amino]pentan-2-yl]pentanamide Chemical group CCCC[C@@H](C=O)NC(=O)C(CC(C)C)NC(=O)[C@H](CC(C)C)NC(C)=O FMYKJLXRRQTBOR-UBFHEZILSA-N 0.000 claims description 6
- 239000010410 layer Substances 0.000 description 564
- 239000013598 vector Substances 0.000 description 230
- 238000006073 displacement reaction Methods 0.000 description 118
- 238000000034 method Methods 0.000 description 98
- 230000033001 locomotion Effects 0.000 description 79
- 230000007774 longterm Effects 0.000 description 59
- 238000010586 diagram Methods 0.000 description 54
- 238000013139 quantization Methods 0.000 description 42
- 238000012937 correction Methods 0.000 description 38
- 230000008569 process Effects 0.000 description 37
- 230000001419 dependent effect Effects 0.000 description 24
- 239000011229 interlayer Substances 0.000 description 23
- 238000012545 processing Methods 0.000 description 21
- 230000008707 rearrangement Effects 0.000 description 20
- 230000010354 integration Effects 0.000 description 11
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 238000005286 illumination Methods 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 230000006854 communication Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 238000013469 resistive pulse sensing Methods 0.000 description 3
- 230000007175 bidirectional communication Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005401 electroluminescence Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 241001025261 Neoraja caerulea Species 0.000 description 1
- 101100520665 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) POC4 gene Proteins 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 229920000069 polyphenylene sulfide Polymers 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/188—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/174—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods 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
複数のレイヤ間で同じ時刻を有するピクチャは、同じ表示時刻POCを割り当てる。また、全てのレイヤで同じNALユニットタイプを有することで、POCの初期化タイミングをレイヤ間で同一とし、また、POCの管理長と、POC下位ビットをレイヤ間で同一とするような、全てのレイヤで同じ時刻のピクチャに同じPOCを割り当てるという符号化データの制限を設ける。また、レイヤIDが0以外のRAPピクチャではイントラスライスI_SLICE以外のスライスタイプを備える。
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
しかしながら、非特許文献2においては、同じ時刻のビュー、デプスのピクチャは同じ符号化単位(アクセスユニット)として符号化するという方針のみが表明されているが、符号化データ中で、どのように表示時刻POCを符号化するかが規定されていない、具体的には、表示時刻を管理する変数である表示時刻POCを複数のレイヤ間で等しくする方法が規定されていないために、複数のレイヤ間でPOCが異なる場合、同じ時刻であることをデコーダで判断することが困難であるという課題があった。また、POCの復号において、複数のレイヤで表示時刻POCの初期化タイミングが異なる場合や、表示時刻POCの管理長が異なる場合には、複数のレイヤ間で同じ時刻のピクチャが同じ表示時刻POCを持つことができないため、同じ時刻であることが管理できないという課題があった。
また、非特許文献2においては、RAPピクチャのスライスタイプが、レイヤによらず、イントラスライスに制限されるため、レイヤID=0以外のピクチャがRAPピクチャである場合において、他のピクチャを参照することができず符号化効率が十分ではないという課題があった。
また、非特許文献2においては、レイヤに応じてNALユニットタイプが異なる場合、および、RAPピクチャであるかどうかが異なる場合があるため、複数のレイヤを同じ時刻から再生することが困難であるという課題が有った。
本発明は上記の点に鑑みてなされたものであり、複数のレイヤ間において、表示時刻POCが一致することを可能にする、もしくは、レイヤIDが0以外のレイヤのRAPピクチャで、対象レイヤ以外のピクチャを参照することを可能にする、もしくは、複数のレイヤを同じ時刻から再生することを容易にする画像復号装置、画像符号化装置および、データ構造を提供する。
上記の課題を解決するために、本発明の一態様に係る符号化データ構造は、スライスタイプを規定するスライスヘッダを含み、さらに、上記スライスヘッダは、レイヤIDが0のスライスの場合には、イントラスライスである制限を有し、レイヤIDが0以外のスライスの場合には、イントラスライスであるという制限がないことを特徴としている。
また、本発明の一態様に係る符号化データ構造は、NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データ構造において、上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを含み、上記NALユニットデータに含まれるピクチャパラメータセットは、表示時刻POCの下位ビット最大値MaxPicOrderCntLsbを含み、上記NALユニットデータに含まれるスライスデータは、スライスヘッダとスライスデータから構成され、上記スライスデータは、上記表示時刻POCの下位ビットpic_order_cnt_lsbを含む符号化データにおいて、全てのレイヤにおいて、同じアクセスユニットに格納される、全てのNALユニットは、その含まれるスライスヘッダにおいて、同じ表示時刻POCを含むことを特徴としている。
また、本発明の一態様に係る画像復号装置は、NALユニットヘッダからレイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを復号するNALユニットヘッダ復号部と、ピクチャパラメータセットから、表示時刻POCの下位ビット最大値MaxPicOrderCntLsbを復号するPOC下位ビット最大値復号部と、スライスヘッダから、上記表示時刻POCの下位ビットpic_order_cnt_lsbを復号するPOC下位ビット復号部と、上記NALユニットタイプnal_unit_typeと上記表示時刻POCの下位ビット最大値MaxPicOrderCntLsbと、上記表示時刻POCの下位ビットpic_order_cnt_lsbから上記表示時刻POCの上位ビットを導出するPOC上位ビット導出部と、上記表示時刻POCの上位ビットと上記表示時刻POCの下位ビットの和から上記表示時刻POCを導出するPOC加算部を備え、上記POC上位ビット導出部は、レイヤIDが0であるピクチャのNALユニットタイプnal_unit_typeが上記表示時刻POCを初期化する必要を要するRAPピクチャ(BLAもしくはIDR)である場合に、対象レイヤの上記表示時刻POCの初期化を行うことを特徴としている。
また、本発明の一態様に係る符号化データ構造は、NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データ構造において、上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを含み、レイヤIDが0以外のピクチャのNALユニットヘッダは、同じ表示時刻POCのレイヤIDが0のピクチャのNALユニットヘッダと同じnal_unit_typeを含まなくてならない、という制限を有することを特徴としている。
また、本発明の一態様に係る符号化データ構造は、NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データ構造において、上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを含み、レイヤIDが0以外のピクチャのNALユニットヘッダは、前記ピクチャと同じ出力時刻のレイヤIDが0のピクチャのNALユニットヘッダが、表示時刻POCを初期化する必要を要するRAPピクチャ(BLAもしくはIDR)のNALユニットタイプnal_unit_typeを含む場合には、同じ表示時刻POCのレイヤIDが0のピクチャのNALユニットヘッダと同じnal_unit_typeを含まなくてならない、という制限を有することを特徴としている。
本発明の符号化データ構造によれば、同じ時刻を有する複数のレイヤにおいて、表示時刻POCの初期化が同じ時刻のピクチャで行われるため、表示タイミングをピクチャの時刻を用いて管理する場合などにおいて、同じ時刻のピクチャであることをPOCを用いて管理することが可能となり、参照ピクチャの探索および同期が容易になるという効果を奏する。
また、本発明のレイヤIDに依存したスライスタイプの値の範囲の制限を有する符号化データ構造によれば、レイヤIDが0以外のレイヤのピクチャにおいては、NALユニットタイプがランダムアクセスピクチャ(RAP)の場合においても、同じ表示時刻のレイヤIDが0のピクチャを参照画像として用いることができるため、符号化効率が向上する、という効果を奏する。
(第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のデータ構造について説明する。
本実施形態に係る画像符号化装置2および画像復号装置1の詳細な説明に先立って、画像符号化装置2によって生成され、画像復号装置1によって復号される符号化データ#1のデータ構造について説明する。
(NALユニットレイヤ)
図17は、符号化データ#1におけるデータの階層構造を示す図である。符号化データ#1は、NAL(Network Abstraction Layer)ユニットと呼ばれる単位で符号化される。
図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)
が記述されている。
別子(レイヤ識別子)を表わす”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ピクチャなどがある。
(アクセスユニット)
特定の分類ルールにより集約されたNALユニットの集合のことをアクセスユニットと呼ぶ。レイヤ数が1の場合には、アクセスユニットは1ピクチャを構成するNALユニットの集合である。レイヤ数が1より大きい場合には、アクセスユニットは同じ時刻の複数のレイヤのピクチャを構成するNALユニットの集合である。なお、アクセスユニットの区切りを示すために、符号化データはアクセスユニットデリミタ(Access unit delimiter)と呼ばれるNALユニットを含んでも良い。アクセスユニットデリミタは、符号化データ中にあるアクセスユニットを構成するNALユニットの集合と、別のアクセスユニットを構成するNALユニットの集合の間に含まれる。
特定の分類ルールにより集約されたNALユニットの集合のことをアクセスユニットと呼ぶ。レイヤ数が1の場合には、アクセスユニットは1ピクチャを構成するNALユニットの集合である。レイヤ数が1より大きい場合には、アクセスユニットは同じ時刻の複数のレイヤのピクチャを構成するNALユニットの集合である。なお、アクセスユニットの区切りを示すために、符号化データはアクセスユニットデリミタ(Access unit delimiter)と呼ばれるNALユニットを含んでも良い。アクセスユニットデリミタは、符号化データ中にあるアクセスユニットを構成するNALユニットの集合と、別のアクセスユニットを構成するNALユニットの集合の間に含まれる。
(ビデオパラメータセット)
図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で説明する。
図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は空間スケーラブル、ビット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で、「・・・」として示される部分は、プロファイルもしくはスケーラブルの種別ごとに異なる情報である(詳細は後述する)。
・scalability_mask(図21のSYN501)は、スケーラブルの種別を示す値である。スケーラブルマスクは、各ビットが各スケーラブル種別に対応する。ビット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すなわちレイヤIDが0とレイヤIDが1の符号化データが存在する例を示すが、レイヤの種類およびレイヤの数はこれによらない。
シーケンスレイヤでは、処理対象のシーケンス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すなわちレイヤIDが0とレイヤ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に含まれるスライスの総数)。
ピクチャレイヤでは、処理対象のピクチャPICT(以下、対象ピクチャとも称する)を復号するために画像復号装置1が参照するデータの集合が規定されている。ピクチャPICTは、図2の(b)に示すように、スライスS0〜SNS−1を含んでいる(NSはピクチャPICTに含まれるスライスの総数)。
なお、以下、スライスS0〜SNS−1のそれぞれを区別する必要が無い場合、符号の添え字を省略して記述することがある。また、以下に説明する符号化データ#1に含まれるデータであって、添え字を付している他のデータについても同様である。
(スライスレイヤ)
スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために画像復号装置1が参照するデータの集合が規定されている。スライスSは、図2の(c)に示すように、スライスヘッダSH、および、スライスデータSDATAを含んでいる。
スライスレイヤでは、処理対象のスライス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)と呼ぶこともある。
スライスデータレイヤでは、処理対象のスライスデータ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は、符号化処理の基本的な単位となる。
符号化ツリーレイヤは、図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は、予測ツリーと変換ツリーの間、もしくは、変換ツリーの後に含まれる。
符号化ユニットレイヤは、図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が用いられる。
予測ユニットの予測画像は、予測ユニットに付随する予測パラメータによって導出される。予測パラメータには、イントラ予測の予測パラメータもしくはインター予測の予測パラメータがある。以下、インター予測の予測パラメータ(インター予測パラメータ)について説明する。インター予測パラメータは、予測リスト利用フラグ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を参照するインデックスであることを示す。
次に、参照ピクチャリストの一例について説明する。参照ピクチャリストとは、復号ピクチャバッファ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が用いられる。
次に、ベクトルを導出する際に用いる参照ピクチャの例について説明する。図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ユニットタイプを有する。
本実施例で扱うランダムアクセスピクチャ(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ピクチャの場合)。
・RADLピクチャ(後述)を持つことができる(BLA_W_LP、BLA_W_DLPピクチャの場合)。
・ピクチャ復号時点でPOCは初期化される。
・ピクチャ復号時点でRPSは初期化される。
・他のピクチャの参照の禁止。
・復号順でIDRより後のピクチャから、復号順でIDRより前のピクチャの参照の禁止。
・RASLピクチャ(後述)の禁止。
・RADLピクチャ(後述)を持つことができる(IDR_W_LPピクチャの場合)。
・RADLピクチャ(後述)を持つことができる(BLA_W_LP、BLA_W_DLPピクチャの場合)。
図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ピクチャを持つことできる。
・ピクチャ復号時点で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ピクチャの場合)。
・ピクチャ復号時点でPOCは初期化される。
・他のピクチャの参照の禁止。
・表示順でBLAより後のピクチャから、復号順でBLAより前のピクチャの参照の禁止。
・RASLピクチャ(後述)を持つことができる(BLA_W_LPの場合)。
・RADLピクチャ(後述)を持つことができる(BLA_W_LP、BLA_W_DLPピクチャの場合)。
例えば、図6(d)のCRA4ピクチャの位置からシーケンスの復号を開始する場合を例に説明する。
図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の関係は以下のように相互に変換可能である。そのため、インター予測パラメータとしては、予測リスト利用フラグを用いても良いし、インター予測フラグを用いてもよい。また、以下、予測リスト利用フラグを用いた判定は、インター予測フラグに置き替えても可能である。逆に、インター予測フラグを用いた判定は、予測リスト利用フラグに置き替えても可能である。
インター予測フラグと、予測リスト利用フラグpredFlagL0、predFlagL1の関係は以下のように相互に変換可能である。そのため、インター予測パラメータとしては、予測リスト利用フラグを用いても良いし、インター予測フラグを用いてもよい。また、以下、予測リスト利用フラグを用いた判定は、インター予測フラグに置き替えても可能である。逆に、インター予測フラグを用いた判定は、予測リスト利用フラグに置き替えても可能である。
インター予測フラグ = (predFlagL1<<1) + predFlagL0
predFlagL0 =インター予測フラグ & 1
predFlagL1 =インター予測フラグ >> 1
ここで、>>は右シフト、<<は左シフトである。
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)として符号化される。
予測パラメータの復号(符号化)方法には、マージ予測(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を用いて行われる。
ベクトルmvLXには、動きベクトルと変位ベクトル(disparity vector、視差ベクトル)がある。動きベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、異なる表示時刻(例えば、隣接する離散時刻)における同一のレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。変位ベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、同一の表示時刻における異なるレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。異なるレイヤのピクチャとしては、異なる視点のピクチャである場合、もしくは、異なる解像度のピクチャである場合などがある。特に、異なる視点のピクチャに対応する変位ベクトルを視差ベクトルと呼ぶ。以下の説明では、動きベクトルと変位ベクトルを区別しない場合には、単にベクトルmvLXと呼ぶ。ベクトルmvLXに関する予測ベクトル、差分ベクトルを、それぞれ予測ベクトルmvpLX、差分ベクトルmvdLXと呼ぶ。ベクトルmvLXおよび差分ベクトルmvdLXが、動きベクトルであるか、変位ベクトルであるかは、ベクトルに付随する参照ピクチャインデックスrefIdxLXを用いて行われる。
(画像復号装置の構成)
本実施形態に係る画像復号装置1の構成について説明する。図23は、本実施形態に係る画像復号装置1の構成を示す概略図である。画像復号装置1は、ヘッダ復号部10、ピクチャ復号部11、復号ピクチャバッファ12、参照ピクチャ管理部13を含んで構成される。画像復号装置1は、複数のレイヤを含む画像において特定の時刻のピクチャから復号を開始する後述するランダムアクセス復号処理が可能である。
本実施形態に係る画像復号装置1の構成について説明する。図23は、本実施形態に係る画像復号装置1の構成を示す概略図である。画像復号装置1は、ヘッダ復号部10、ピクチャ復号部11、復号ピクチャバッファ12、参照ピクチャ管理部13を含んで構成される。画像復号装置1は、複数のレイヤを含む画像において特定の時刻のピクチャから復号を開始する後述するランダムアクセス復号処理が可能である。
[ヘッダ復号部10]
ヘッダ復号部10は、画像符号化装置2より供給される符号化データ#1から、NALユニット単位、シーケンス単位、ピクチャ単位、またはスライス単位で復号に利用される情報を復号する。復号された情報は、ピクチャ復号部11及び参照ピクチャ管理部13に出力される。
ヘッダ復号部10は、画像符号化装置2より供給される符号化データ#1から、NALユニット単位、シーケンス単位、ピクチャ単位、またはスライス単位で復号に利用される情報を復号する。復号された情報は、ピクチャ復号部11及び参照ピクチャ管理部13に出力される。
ヘッダ復号部10は、符号化データ#1に含まれるVPSおよびSPSを既定のシンタックス定義に基づいてパースして、シーケンス単位で復号に利用される情報を復号する。例えば、レイヤ数に関する情報がVPSから復号され、復号画像の画像サイズに関連する情報がSPSから復号される。
また、ヘッダ復号部10は、符号化データ#1に含まれるスライスヘッダを既定のシンタックス定義に基づいてパースして、スライス単位で復号に利用される情報を復号する。例えば、スライスタイプがスライスヘッダから復号される。
図24に示すようにヘッダ復号部10は、NALユニットヘッダ復号部211、VPS復号部212、レイヤ情報格納部213、ビューデプス導出部214、POC情報復号部216、スライスタイプ復号部217、参照ピクチャ情報復号部218を備えている。
[NALユニットヘッダ復号部211]
図25は、NALユニットヘッダ復号部211の概略的構成について示した機能ブロック図である。図25に示すように、NALユニットヘッダ復号部211はレイヤID復号部2111とNALユニットタイプ復号部2112を含んで構成される。
図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の場合に復号される。本明細書では、符号化データの構成(シンタックステーブル)と、符号化データ構成が含むシンタックス要素の意味や制限(セマンティクス)を、符号化データ構造と呼ぶ。符号化データ構造は、画像復号装置において符号化データを復号する場合のランダムアクセス性やメモリサイズ、異なる画像復号装置間で同じ動作を補償することに関連すると共に、符号化データの符号化効率にも影響を与える重要な技術要素である。
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[][]を格納する。
図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に格納されたスケーラブルマスクを読み出し、スケーラブルマスクの値に応じて以下の処理を行う。
ビューデプス導出部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に設定する。
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に設定する。
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に設定する。
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に設定する。
[POC情報復号部216]
図35は、POC情報復号部216(POC導出部)の概略的構成について示した機能ブロック図である。図35に示すように、POC情報復号部216はPOC下位ビット最大値復号部2161、POC下位ビット復号部2162、POC上位ビット導出部2163、POC加算部2164を含んで構成される。POC情報復号部216は、POCの上位ビットPicOrderCntMsbとPOCの下位ビットpic_order_cnt_lsbを復号することにより、POCを導出し、ピクチャ復号部11と参照ピクチャ管理部13に出力する。
図35は、POC情報復号部216(POC導出部)の概略的構成について示した機能ブロック図である。図35に示すように、POC情報復号部216はPOC下位ビット最大値復号部2161、POC下位ビット復号部2162、POC上位ビット導出部2163、POC加算部2164を含んで構成される。POC情報復号部216は、POCの上位ビットPicOrderCntMsbとPOCの下位ビットpic_order_cnt_lsbを復号することにより、POCを導出し、ピクチャ復号部11と参照ピクチャ管理部13に出力する。
POC下位ビット最大値復号部2161は、符号化データから対象ピクチャのPOC下位ビット最大値MaxPicOrderCntLsbを復号する。具体的には、POC下位ビット最大値MaxPicOrderCntLsbの対数から定数4を引いた値として符号化されるシンタックス要素log2_max_pic_order_cnt_lsb_minus4を対象ピクチャのパラメータを規定するPPSの符号化データから復号し、以下の式により、POC下位ビット最大値MaxPicOrderCntLsbを導出する。
MaxPicOrderCntLsb = 2( log2_max_pic_order_cnt_lsb_minus4 + 4 )
なお、MaxPicOrderCntLsbは、POCの上位ビットPicOrderCntMsbと下位ビットpic_order_cnt_lsbの区切りを示す。例えば、MaxPicOrderCntLsbが16(log2_max_pic_order_cnt_lsb_minus4=0)の場合には、0〜15までの下位4ビットがpic_order_cnt_lsbで示され、それより上の上位ビットがPicOrderCntMsbで示される。
なお、MaxPicOrderCntLsbは、POCの上位ビットPicOrderCntMsbと下位ビットpic_order_cnt_lsbの区切りを示す。例えば、MaxPicOrderCntLsbが16(log2_max_pic_order_cnt_lsb_minus4=0)の場合には、0〜15までの下位4ビットがpic_order_cnt_lsbで示され、それより上の上位ビットがPicOrderCntMsbで示される。
POC下位ビット復号部2162は符号化データから、対象ピクチャのPOCの下位ビットであるPOC下位ビットpic_order_cnt_lsbを復号する。具体的には、対象ピクチャのスライスヘッダに含まれるpic_order_cnt_lsbを復号する。
POC上位ビット導出部2163は、対象ピクチャのPOCの上位ビットであるPOC上位ビットPicOrderCntMsbを導出する。具体的には、NALユニットヘッダ復号部211から入力された対象ピクチャのNALユニットタイプが、POCの初期化が必要なRAPピクチャであることを示す場合(BLAもしくはIDRの場合)に、以下の式によりPOC上位ビットPicOrderCntMsbを0に初期化する。
PicOrderCntMsb=0
初期化のタイミングは、対象ピクチャの先頭スライス(スライスヘッダに含まれるスライスアドレスが0のスライス、もしくは、対象ピクチャに入力されるスライスの内、画像復号装置に入力される最初のスライス)を復号する時点とする。
初期化のタイミングは、対象ピクチャの先頭スライス(スライスヘッダに含まれるスライスアドレスが0のスライス、もしくは、対象ピクチャに入力されるスライスの内、画像復号装置に入力される最初のスライス)を復号する時点とする。
それ以外のNALユニットタイプの場合には、POC下位ビット最大値復号部2161で復号されたPOC下位ビット最大値MaxPicOrderCntLsb、後述の一時変数prevPicOrderCntLsb、prevPicOrderCntMsbを用いて、以下の式によりPOC上位ビットPicOrderCntMsbを導出する。
if( ( pic_order_cnt_lsb < prevPicOrderCntLsb ) &&
( ( prevPicOrderCntLsb − pic_order_cnt_lsb ) >= ( MaxPicOrderCntLsb / 2 ) ) )
PicOrderCntMsb = prevPicOrderCntMsb + MaxPicOrderCntLsb
else if( (pic_order_cnt_lsb > prevPicOrderCntLsb ) &&
( ( pic_order_cnt_lsb − prevPicOrderCntLsb ) > ( MaxPicOrderCntLsb / 2 ) ) )
PicOrderCntMsb = prevPicOrderCntMsb − MaxPicOrderCntLsb
else
PicOrderCntMsb = prevPicOrderCntMsb
すなわち、pic_order_cnt_lsbがprevPicOrderCntLsbよりも小さく、かつ、prevPicOrderCntLsbとpic_order_cnt_lsbの差が、MaxPicOrderCntLsbの半分以上の場合には、PicOrderCntMsbとして、prevPicOrderCntMsbにMaxPicOrderCntLsbを加えた数を設定する。それ以外で、pic_order_cnt_lsbがprevPicOrderCntLsbよりも大きく、prevPicOrderCntLsbとpic_order_cnt_lsbの差が、MaxPicOrderCntLsbの半分よりも大きい場合には、PicOrderCntMsbとして、prevPicOrderCntMsbからMaxPicOrderCntLsbを引いた数を設定する。それ以外の場合には、PicOrderCntMsbにprevPicOrderCntMsbを設定する。
( ( prevPicOrderCntLsb − pic_order_cnt_lsb ) >= ( MaxPicOrderCntLsb / 2 ) ) )
PicOrderCntMsb = prevPicOrderCntMsb + MaxPicOrderCntLsb
else if( (pic_order_cnt_lsb > prevPicOrderCntLsb ) &&
( ( pic_order_cnt_lsb − prevPicOrderCntLsb ) > ( MaxPicOrderCntLsb / 2 ) ) )
PicOrderCntMsb = prevPicOrderCntMsb − MaxPicOrderCntLsb
else
PicOrderCntMsb = prevPicOrderCntMsb
すなわち、pic_order_cnt_lsbがprevPicOrderCntLsbよりも小さく、かつ、prevPicOrderCntLsbとpic_order_cnt_lsbの差が、MaxPicOrderCntLsbの半分以上の場合には、PicOrderCntMsbとして、prevPicOrderCntMsbにMaxPicOrderCntLsbを加えた数を設定する。それ以外で、pic_order_cnt_lsbがprevPicOrderCntLsbよりも大きく、prevPicOrderCntLsbとpic_order_cnt_lsbの差が、MaxPicOrderCntLsbの半分よりも大きい場合には、PicOrderCntMsbとして、prevPicOrderCntMsbからMaxPicOrderCntLsbを引いた数を設定する。それ以外の場合には、PicOrderCntMsbにprevPicOrderCntMsbを設定する。
なお、一時変数prevPicOrderCntLsb、prevPicOrderCntMsbは、POC上位ビット導出部2163において、以下の手順により導出する。復号順で直前のTemporalIdが0の参照ピクチャをprevTid0Picとした場合、ピクチャprevTid0PicのPOC下位ビットpic_order_cnt_lsbをprevPicOrderCntMsbに、ピクチャrevTid0PicのPOC上位ビットPicOrderCntMsbをprevPicOrderCntMsbに設定する。
図36は、POC情報復号部216の動作を示す図である。図36に示すように、MaxPicOrderCntLsb=16の場合においてPOC=15、18、24、11、32のピクチャが、図の左から右の順に復号される例を示す。ここで、右端のピクチャ(POC=32のピクチャ)を対象ピクチャとする場合、対象ピクチャを復号する時点で、復号順で直前のTemporalID=0のピクチャはPOC=24のピクチャであるからPOC情報復号部216は、ピクチャprevTid0PicとしてPOC=24のピクチャを設定する。ピクチャprevTid0PicのPOC下位ビット、POC上位ビットよりprevPicOrderCntLsb、prevPicOrderCntMsbを、各々8、16と導出する。対象ピクチャのpic_order_cnt_lsbは0、導出されたprevPicOrderCntLsbは8、MaxPicOrderCntLsbの半分が8であるから、上述の判定pic_order_cnt_lsbがprevPicOrderCntLsbよりも小さく、かつ、prevPicOrderCntLsbとpic_order_cnt_lsbの差が、MaxPicOrderCntLsbの半分以上の場合が成立し、POC情報復号部216は、PicOrderCntMsbとして、prevPicOrderCntMsbにMaxPicOrderCntLsbを加えた数を設定する。すなわち、対象ピクチャのPicOrderCntMsbが32(=16+16)と導出される。
POC加算部2164は、POC下位ビット復号部2162で復号されたPOC下位ビットpic_order_cnt_lsbとPOC上位ビット導出部2163で導出されたPOC上位ビットを加算し、以下の式により、POC(PicOrderCntVal)を導出する。
PicOrderCntVal = PicOrderCntMsb + pic_order_cnt_lsb
図36の例では、PicOrderCntMsb=32、pic_order_cnt_lsb=0であるから、対象ピクチャのPOCであるPicOrderCntValが32と導出される。
図36の例では、PicOrderCntMsb=32、pic_order_cnt_lsb=0であるから、対象ピクチャのPOCであるPicOrderCntValが32と導出される。
[POC制限]
以下、本実施形態の符号化データにおけるPOC制限について説明する。POC上位ビット導出部2163で説明したように、POCは、対象ピクチャのNALユニットタイプがPOCの初期化が必要なRAPピクチャであることを示す場合(BLAもしくはIDRの場合)において初期化される。その後、POCは、対象ピクチャのスライスヘッダを復号して得られるpic_order_cnt_lsbを用いて導出される。
以下、本実施形態の符号化データにおけるPOC制限について説明する。POC上位ビット導出部2163で説明したように、POCは、対象ピクチャのNALユニットタイプがPOCの初期化が必要なRAPピクチャであることを示す場合(BLAもしくはIDRの場合)において初期化される。その後、POCは、対象ピクチャのスライスヘッダを復号して得られるpic_order_cnt_lsbを用いて導出される。
図37(a)は、POC制限の説明を説明するための図である。ボックス中の英字はピクチャの名前、数字はPOCを示す(以下同様)。図37(a)では、レイヤIDが0のレイヤにおいて、IDR0、A0、A1、A3、IDR´0、B0、B1が符号化され、レイヤIDが1のレイヤにおいて、IDR0、A0、A1、A3、P4、B5、B6が符号化される。この例では、TIME=4で示される時刻において、レイヤID=0のピクチャはIDR´0と示されるように、POCの初期化が必要なRAPピクチャであるIDRピクチャであるが、レイヤIDが1のレイヤでは、P4と示されるように、POCの初期化が必要なRAPピクチャではない。この場合、レイヤID=0では、IDR´0ピクチャにおいてPOCの初期化が行われるが、レイヤIDが1のレイヤでは、POCの初期化が行われないため、時刻TIME=4以降では、同じ表示時刻のピクチャにおいて、異なるPOCが導出される。例えば、レイヤIDが0のレイヤでは、B1、B2というようにPOC=1、POC=2となるピクチャが、レイヤIDが1のレイヤでは、B5、B6というようにPOC=5、POC=6となるピクチャに対応する。ピクチャ復号部11では、POCを除き、表示時刻を管理する情報がないことから、異なるPOCを備えるピクチャが同じ時刻を有することを管理することは困難である。
(第1のNALユニットタイプ制限)
本実施形態の符号化データ構造は、NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データにおいて、上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを含み、上記NALユニットデータに含まれるピクチャパラメータセットは、表示時刻POCの下位ビット最大値MaxPicOrderCntLsbを含み、上記NALユニットデータに含まれるスライスデータは、スライスヘッダとスライスデータから構成され、上記スライスデータは、表示時刻POCの下位ビットpic_order_cnt_lsbを含む符号化データにおいて、全ての同じ時刻を有する全てのレイヤのピクチャ、すなわち、同じアクセスユニットに含まれる全てのピクチャは、同じ表示時刻POCを有することを特徴とする。
本実施形態の符号化データ構造は、NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データにおいて、上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを含み、上記NALユニットデータに含まれるピクチャパラメータセットは、表示時刻POCの下位ビット最大値MaxPicOrderCntLsbを含み、上記NALユニットデータに含まれるスライスデータは、スライスヘッダとスライスデータから構成され、上記スライスデータは、表示時刻POCの下位ビットpic_order_cnt_lsbを含む符号化データにおいて、全ての同じ時刻を有する全てのレイヤのピクチャ、すなわち、同じアクセスユニットに含まれる全てのピクチャは、同じ表示時刻POCを有することを特徴とする。
上記符号化データ構造によれば、同じ時刻を有するピクチャのNALユニットが同じ表示時刻(POC)を有することが保障されるため、異なるレイヤ間で同じ時刻を有するピクチャであるかの判定を、表示時刻POCを用いて行うことができる。これにより、表示時刻を用いて同じ時刻を有する復号画像を参照することが可能になるという効果を奏する。
なお、アクセスユニットを単位として表示時刻POCによらない時刻の管理を行うことを想定して、「同じアクセスユニットの全てのレイヤは、その含まれるスライスヘッダにおいて、異なる表示時刻POCを有する場合であっても、同じ時刻を有するという制限がある符号化データ構造」を対象とした画像復号装置の場合には、同じ時刻のNALピクチャを識別するためには、アクセスユニットの区切りを明確に識別する必要がある。しかしながら、アクセスユニットの区切りである、アクセスユニットデリミタの符号化は任意であること、アクセスユニットデリミタの符号化を強制する場合にもアクセスユニットの区切りを符号化することが画像符号化装置を複雑化すること、アクセスユニットデリミタが伝送中などにおいて喪失する可能性があることから、画像復号装置がアクセスユニットの区切りを識別することは困難である。従って、同じアクセスユニットに含まれるNALユニットが同じ時刻に対応するという上記条件を用いて、異なるPOCを有する複数のピクチャを同じ時刻のピクチャであると判定し同期をとることは困難である。
以下、異なるレイヤ間で同じ表示時刻POCを有するより具体的な方法として、第1のNALユニットタイプ制限、第2のNALユニットタイプ制限および、第2のPOC上位ビット導出部2163Bを説明する。
本実施形態の符号化データでは、第1のNALユニットタイプ制限として、全ての同じ時刻を有する全てのレイヤのピクチャ、すなわち、同じアクセスユニットの全てのレイヤのピクチャは同じNALユニットタイプを有しなければならないという制限を設ける。例えば、レイヤIDが0においてIDR_W_LPピクチャであれば、同じ時刻のレイヤIDが1のピクチャもIDR_W_LPピクチャであるとする。
上記第1のNALユニットタイプ制限を有する符号化データ構造によれば、同じ時刻を有する複数のレイヤにおいて、表示時刻POCの初期化が同じ時刻のピクチャで行われるため、同じ時刻を有する複数のレイヤのピクチャ間で表示時刻POCを有することができる。これにより、参照ピクチャリストにおける、対象レイヤとは異なるレイヤのピクチャを参照ピクチャとして用いる場合の参照ピクチャ管理、および、3次元画像再生のような、複数のレイヤを同期して再生させる場合に、表示タイミングをピクチャの時刻を用いて管理する場合などにおいて、同じ時刻のピクチャであることをPOCを用いて管理することが可能となり、参照ピクチャの探索および同期が容易になるという効果を奏する。
(第2のNALユニットタイプ制限)
本実施形態の符号化データでは、第2のNALユニットタイプ制限として、レイヤIDが0のレイヤのピクチャが、POCを初期化するピクチャであるRAPピクチャである場合(IDRピクチャもしくはBLAピクチャである場合)には、同じ時刻を有する全てのレイヤのピクチャ、すなわち、同じアクセスユニットの全てのレイヤのピクチャは、POCを初期化するピクチャであるRAPピクチャのNALユニットタイプを有しなければならないという制限を設ける。例えば、レイヤIDが0のピクチャにおいてIDR_W_LP、IDR_N_LP、LBA_W_LP、LBA_W_DLP、LBA_N_LPピクチャであれば、同じ時刻のレイヤ1のピクチャも、IDR_W_LP、IDR_N_LP、LBA_W_LP、LBA_W_DLP、LBA_N_LPの何れかでなくてはならない。という制限を設ける。この場合、レイヤIDが0のピクチャがPOCを初期化するピクチャであるRAPピクチャである場合、例えば、IDRピクチャである場合、同じ時刻のレイヤIDが0以外のピクチャがPOCを初期化するピクチャであるRAPピクチャ以外のピクチャ、例えば、CRAピクチャやRASLピクチャ、RADLピクチャ、TRAILピクチャであってはならない。
本実施形態の符号化データでは、第2のNALユニットタイプ制限として、レイヤIDが0のレイヤのピクチャが、POCを初期化するピクチャであるRAPピクチャである場合(IDRピクチャもしくはBLAピクチャである場合)には、同じ時刻を有する全てのレイヤのピクチャ、すなわち、同じアクセスユニットの全てのレイヤのピクチャは、POCを初期化するピクチャであるRAPピクチャのNALユニットタイプを有しなければならないという制限を設ける。例えば、レイヤIDが0のピクチャにおいてIDR_W_LP、IDR_N_LP、LBA_W_LP、LBA_W_DLP、LBA_N_LPピクチャであれば、同じ時刻のレイヤ1のピクチャも、IDR_W_LP、IDR_N_LP、LBA_W_LP、LBA_W_DLP、LBA_N_LPの何れかでなくてはならない。という制限を設ける。この場合、レイヤIDが0のピクチャがPOCを初期化するピクチャであるRAPピクチャである場合、例えば、IDRピクチャである場合、同じ時刻のレイヤIDが0以外のピクチャがPOCを初期化するピクチャであるRAPピクチャ以外のピクチャ、例えば、CRAピクチャやRASLピクチャ、RADLピクチャ、TRAILピクチャであってはならない。
上記第2のNALユニットタイプ制限を有する符号化データ構造によれば、同じ時刻を有する複数のレイヤにおいて、表示時刻POCの初期化が同じ時刻のピクチャで行われるため、同じ時刻を有する複数のレイヤのピクチャ間で表示時刻POCを有することができる。これにより、参照ピクチャリストにおける、対象レイヤとは異なるレイヤのピクチャを参照ピクチャとして用いる場合の参照ピクチャ管理、および、3次元画像再生のような、複数のレイヤを同期して再生させる場合に、表示タイミングをピクチャの時刻を用いて管理する場合などにおいて、同じ時刻のピクチャであることをPOCを用いて管理することが可能となり、参照ピクチャの探索および同期が容易になるという効果を奏する。
(第2のPOC上位ビット導出部2163B)
第2のPOC上位ビット導出部2163Bを有する画像復号装置は、POC情報復号部216中のPOC上位ビット導出部2163を以下に説明するPOC上位ビット導出部2163Bに置き換えることで構成され、他の手段は既に説明した手段を用いる。
第2のPOC上位ビット導出部2163Bを有する画像復号装置は、POC情報復号部216中のPOC上位ビット導出部2163を以下に説明するPOC上位ビット導出部2163Bに置き換えることで構成され、他の手段は既に説明した手段を用いる。
POC上位ビット導出部2163Bは、対象ピクチャがレイヤIDが0の場合には、NALユニットヘッダ復号部211から入力された対象ピクチャのNALユニットタイプが、POCの初期化が必要なRAPピクチャであることを示す場合(BLAもしくはIDRの場合)に、以下の式によりPOC上位ビットPicOrderCntMsbを0に初期化する。
PicOrderCntMsb=0
対象ピクチャがレイヤIDが0の以外の場合には、対象ピクチャと同じ時刻のレイヤIDが0のピクチャのNALユニットタイプが、POCの初期化が必要なRAPピクチャであることを示す場合(BLAもしくはIDRの場合)に、以下の式によりPOC上位ビットPicOrderCntMsbを0に初期化する。
対象ピクチャがレイヤIDが0の以外の場合には、対象ピクチャと同じ時刻のレイヤIDが0のピクチャのNALユニットタイプが、POCの初期化が必要なRAPピクチャであることを示す場合(BLAもしくはIDRの場合)に、以下の式によりPOC上位ビットPicOrderCntMsbを0に初期化する。
PicOrderCntMsb=0
POC上位ビット導出部2163Bの動作を、図37(b)を用いて説明する。図37(b)は、本実施形態のPOC初期化の説明を説明するための図である。ボックス中の英字はピクチャの名前、数字はPOCを示す(以下同様)。図37(b)では、レイヤID=0において、IDR0、A0、A1、A3、IDR´0、B0、B1が符号化され、レイヤID=1において、IDR0、A0、A1、A3、CRA0、B1、B2が符号化される。この例では、時刻TIME=4において、レイヤ1のピクチャCRAを復号する時点で、同じ時刻のレイヤIDが0のピクチャが、NALユニットヘッダ復号部211から入力された対象ピクチャが、POCの初期化が必要なRAPピクチャであることを示すIDRピクチャ(図37(b)のIDR´0)であるから、POCの初期化が必要なRAPピクチャではないCRAピクチャの場合にもPOCを初期化する。従って、レイヤIDが0のピクチャとレイヤIDが1のピクチャが、POCの初期化が必要なRAPピクチャという点において、揃っていないが、図37(b)の図中の数字が、同じ時刻において、レイヤIDが0のレイヤとレイヤIDが1のピクチャで同じであることから示されるように、POC上位ビット導出部2163Bを備えるPOC復号部によれば、同じ時刻のピクチャが同じPOCを有する。
POC上位ビット導出部2163Bの動作を、図37(b)を用いて説明する。図37(b)は、本実施形態のPOC初期化の説明を説明するための図である。ボックス中の英字はピクチャの名前、数字はPOCを示す(以下同様)。図37(b)では、レイヤID=0において、IDR0、A0、A1、A3、IDR´0、B0、B1が符号化され、レイヤID=1において、IDR0、A0、A1、A3、CRA0、B1、B2が符号化される。この例では、時刻TIME=4において、レイヤ1のピクチャCRAを復号する時点で、同じ時刻のレイヤIDが0のピクチャが、NALユニットヘッダ復号部211から入力された対象ピクチャが、POCの初期化が必要なRAPピクチャであることを示すIDRピクチャ(図37(b)のIDR´0)であるから、POCの初期化が必要なRAPピクチャではないCRAピクチャの場合にもPOCを初期化する。従って、レイヤIDが0のピクチャとレイヤIDが1のピクチャが、POCの初期化が必要なRAPピクチャという点において、揃っていないが、図37(b)の図中の数字が、同じ時刻において、レイヤIDが0のレイヤとレイヤIDが1のピクチャで同じであることから示されるように、POC上位ビット導出部2163Bを備えるPOC復号部によれば、同じ時刻のピクチャが同じPOCを有する。
第2のPOC上位ビット導出部2163Bを有する画像復号装置によれば、同じ時刻を有する複数のレイヤにおいて、表示時刻POCの初期化が、レイヤIDが0のピクチャと同じ時刻のピクチャで行われるため、同じ時刻を有する複数のレイヤのピクチャ間で表示時刻POCを有することができる。これにより、参照ピクチャリストにおける、対象レイヤとは異なるレイヤのピクチャを参照ピクチャとして用いる場合の参照ピクチャ管理、および、3次元画像再生のような、複数のレイヤを同期して再生させる場合に、表示タイミングをピクチャの時刻を用いて管理する場合などにおいて、同じ時刻のピクチャであることをPOCを用いて管理することが可能となり、参照ピクチャの探索および同期が容易になるという効果を奏する。
(POC下位ビット最大値制限)
さらに、本実施形態の符号化データにおけるPOC下位ビット最大値制限について説明する。POC上位ビット導出部2163で説明したように、POCは、対象ピクチャのスライスヘッダ中から復号されるpic_order_cnt_lsbを下位ビットと、既に復号されたピクチャのPOC上位ビットPicOrderCntMsbとpic_order_cnt_lsbにより導出される対象ピクチャのPOC上位ビットPicOrderCntMsbから導出される。POC上位ビットPicOrderCntMsb導出は、POC下位ビット最大値MaxPicOrderCntLsbを単位として更新される。従って、複数のレイヤ間で同じPOCを有するピクチャを復号するためには、POCの上位ビットの更新タイミングが同一であることが必要である。
さらに、本実施形態の符号化データにおけるPOC下位ビット最大値制限について説明する。POC上位ビット導出部2163で説明したように、POCは、対象ピクチャのスライスヘッダ中から復号されるpic_order_cnt_lsbを下位ビットと、既に復号されたピクチャのPOC上位ビットPicOrderCntMsbとpic_order_cnt_lsbにより導出される対象ピクチャのPOC上位ビットPicOrderCntMsbから導出される。POC上位ビットPicOrderCntMsb導出は、POC下位ビット最大値MaxPicOrderCntLsbを単位として更新される。従って、複数のレイヤ間で同じPOCを有するピクチャを復号するためには、POCの上位ビットの更新タイミングが同一であることが必要である。
従って、本実施形態の符号化データでは、POC下位ビット最大値制限として、同じ時刻を有する全てのレイヤのピクチャのパラメータを規定するパラメータセット(例えばPPS)は、同じPOC下位ビット最大値MaxPicOrderCntLsbを有するという制限を設ける。
上記POC下位ビット最大値制限を有する符号化データ構造によれば、同じ時刻を有する複数のレイヤにおいて、表示時刻POC(POC上位ビット)の更新が同じ時刻のピクチャで行われるため、同じ時刻を有する複数のレイヤのピクチャ間で表示時刻POCを有することができる。これにより、参照ピクチャリストにおける、対象レイヤとは異なるレイヤのピクチャを参照ピクチャとして用いる場合の参照ピクチャ管理、および、3次元画像再生のような、複数のレイヤを同期して再生させる場合に、表示タイミングをピクチャの時刻を用いて管理する場合などにおいて、同じ時刻のピクチャであることをPOCを用いて管理することが可能となり、参照ピクチャの探索および同期が容易になるという効果を奏する。
(POC下位ビット制限)
さらに、本実施形態の符号化データにおけるPOC下位ビット制限について説明する。POC上位ビット導出部2163で説明したように、POCは、スライス中のpic_order_cnt_lsbを用いて導出される。従って、複数のレイヤ間で同じPOCを有するピクチャを復号するためには、POCの下位ビットを同一とすることが必要である。
さらに、本実施形態の符号化データにおけるPOC下位ビット制限について説明する。POC上位ビット導出部2163で説明したように、POCは、スライス中のpic_order_cnt_lsbを用いて導出される。従って、複数のレイヤ間で同じPOCを有するピクチャを復号するためには、POCの下位ビットを同一とすることが必要である。
従って、本実施形態の符号化データでは、POC下位ビット制限として、同じ時刻を有する全てのレイヤのピクチャのスライスヘッダは、同じPOC下位ビットpic_order_cnt_lsbを有するという制限を設ける。
上記POC下位ビット制限を有する符号化データ構造によれば、同じ時刻を有する複数のレイヤにおいて、表示時刻POCの下位ビットが同じ時刻のピクチャで同一となるため、同じ時刻を有する複数のレイヤのピクチャ間で表示時刻POCを有することができる。これにより、参照ピクチャリストにおける、対象レイヤとは異なるレイヤのピクチャを参照ピクチャとして用いる場合の参照ピクチャ管理、および、3次元画像再生のような、複数のレイヤを同期して再生させる場合に、表示タイミングをピクチャの時刻を用いて管理する場合などにおいて、同じ時刻のピクチャであることをPOCを用いて管理することが可能となり、参照ピクチャの探索および同期が容易になるという効果を奏する。
同じ時刻を有するNALユニットが同じ表示時刻(POC)を有することが保障される。
同じ時刻を有するNALユニットが同じ表示時刻(POC)を有することが保障される。
[スライスタイプ復号部217]
スライスタイプ復号部217は、符号化データからスライスタイプslice_typeを復号する。スライスタイプslice_typeは、イントラスライスI_SLICE、単予測スライスP_SLICE、双予測スライスB_SLICEのいずれかを有する。イントラスライスI_SLICEは、画面内予測であるイントラ予測のみを有するスライスであり、予測モードとしてイントラモードのみを有する。単予測スライスP_SLICEは、イントラ予測に加えインター予測を有するスライスであるが、参照画像として1つの参照ピクチャリストのみを有する。単予測スライスP_SLICEでは、予測リスト利用フラグpredFlagLXのいずれか一方が1、他方が0の予測パラメータを有することができる。また、単予測スライスP_SLICEでは、インター予測フラグinter_pred_idxとして、1と2の予測パラメータを有する場合を取ることができる。双予測スライスB_SLICEは、イントラ予測、単予測のインター予測に加え、双予測のインター予測を有するスライスである。参照画像として2つの参照ピクチャリストのみを有する場合を許す。すなわち、利用フラグpredFlagLXが両方とも1の場合を取ることができる。また、インター予測フラグinter_pred_idxとして1と2に加え3の予測パラメータを取ることができる。
スライスタイプ復号部217は、符号化データからスライスタイプslice_typeを復号する。スライスタイプslice_typeは、イントラスライスI_SLICE、単予測スライスP_SLICE、双予測スライスB_SLICEのいずれかを有する。イントラスライスI_SLICEは、画面内予測であるイントラ予測のみを有するスライスであり、予測モードとしてイントラモードのみを有する。単予測スライスP_SLICEは、イントラ予測に加えインター予測を有するスライスであるが、参照画像として1つの参照ピクチャリストのみを有する。単予測スライスP_SLICEでは、予測リスト利用フラグpredFlagLXのいずれか一方が1、他方が0の予測パラメータを有することができる。また、単予測スライスP_SLICEでは、インター予測フラグinter_pred_idxとして、1と2の予測パラメータを有する場合を取ることができる。双予測スライスB_SLICEは、イントラ予測、単予測のインター予測に加え、双予測のインター予測を有するスライスである。参照画像として2つの参照ピクチャリストのみを有する場合を許す。すなわち、利用フラグpredFlagLXが両方とも1の場合を取ることができる。また、インター予測フラグinter_pred_idxとして1と2に加え3の予測パラメータを取ることができる。
符号化データ中のスライスタイプslice_typeが取りうる範囲は、NALユニットタイプに応じて定められる。従来技術では、対象ピクチャがランダムアクセスピクチャ(RAP)の場合、すなわち、BLA、IDR、CRAの場合には、対象ピクチャ以外の時刻のピクチャ(例えば、対象ピクチャよりも復号前のピクチャ)を参照せずに再生可能とするために、スライスタイプslice_typeは、イントラスライスI_SLICEのみに制限されていた。この場合、対象ピクチャ以外のピクチャを参照しないため、符号化効率が低いという課題があった。
図38(b)は、従来技術に係るRAPピクチャにおけるスライスタイプを説明する図である。図22を用いて説明したように、RAPピクチャは、他のピクチャの参照は禁止される。すなわち、レイヤIDが0であるか否かに関わらず、イントラスライスI_SLICEに制限されるため、レイヤIDが0以外のピクチャはレイヤIDが0のピクチャを参照することができない。
[スライスタイプ制限]
上記課題を解決するために、本実施形態では、符号化データの制限として以下の制限を行う。本実施形態の第1の符号化データの制限、ベースレイヤの場合(レイヤIDが0の場合)かつNALユニットタイプがランダムアクセスピクチャ(RAPピクチャ)の場合、すなわち、BLA、IDR、CRAの場合には、スライスタイプslice_typeをイントラスライスI_SLICEのみに制限し、レイヤIDが0以外の場合にはスライスタイプを制限しない。この制限によれば、NALユニットタイプがランダムアクセスピクチャ(RAPピクチャ)の場合でも、レイヤIDが0以外の場合には、イントラスライスI_SLICEに加え、インター予測を用いるスライスであるP_SLICE、B_SLICEを取ることができる。すなわち、イントラスライスI_SLICEのみというランダムアクセスピクチャ(RAPピクチャ)に対する制限が緩和される。
上記課題を解決するために、本実施形態では、符号化データの制限として以下の制限を行う。本実施形態の第1の符号化データの制限、ベースレイヤの場合(レイヤIDが0の場合)かつNALユニットタイプがランダムアクセスピクチャ(RAPピクチャ)の場合、すなわち、BLA、IDR、CRAの場合には、スライスタイプslice_typeをイントラスライスI_SLICEのみに制限し、レイヤIDが0以外の場合にはスライスタイプを制限しない。この制限によれば、NALユニットタイプがランダムアクセスピクチャ(RAPピクチャ)の場合でも、レイヤIDが0以外の場合には、イントラスライスI_SLICEに加え、インター予測を用いるスライスであるP_SLICE、B_SLICEを取ることができる。すなわち、イントラスライスI_SLICEのみというランダムアクセスピクチャ(RAPピクチャ)に対する制限が緩和される。
図38に、上記、RAPピクチャにおけるスライスタイプを説明する図である。ボックス中の英字はピクチャの名前、数字はPOCを示す(以下同様)。図38(a)は、本発明の実施形態に係るRAPピクチャにおけるスライスタイプを説明する図である。図38に示す通り、レイヤIDが0のレイヤでは、IDR0、A1、A2、A3、IDR´0、B1、B2のピクチャが復号され、レイヤIDが0以外(ここではレイヤID=1)のレイヤでも、IDR0、A1、A2、A3、IDR´0、B1、B2のピクチャが復号される。レイヤIDが0のRAPピクチャ(ここではIDRピクチャ)はイントラスライスI_SLICEに制限されるが、レイヤIDが0以外のRAPピクチャ(ここではIDRピクチャ)はイントラスライスI_SLICEに制限されず、レイヤIDが0のピクチャを参照することができる。
上記制限の緩和を行った場合にも、ランダムアクセスが可能であることを、再度、図38(a)を参照して説明する。図38に示すように、ランダムアクセスポイントにおいてレイヤIDが0以外のレイヤのピクチャ(図38のIDR0、IDR´0のピクチャ)では、参照ピクチャが、レイヤIDが0のピクチャのみに制限される。すなわち、レイヤ1のランダムアクセスポイントのピクチャの参照ピクチャは、同じランダムアクセスポイント(同じ表示時刻)のレイヤIDが0のピクチャ(レイヤIDが0のIDR0、のピクチャIDR´0のピクチャ)のみである。よって、ランダムアクセスポイントより前のピクチャを復号することなく、ランダムアクセスポイントから復号を開始した場合において、レイヤIDが0のレイヤ、レイヤIDが1のレイヤともにランダムアクセスポイントより表示時刻の後のピクチャを復号可能である。このとき、レイヤIDが1のレイヤのスライスは、レイヤIDが0のピクチャを参照ピクチャとするインター予測を行うため、イントラスライスI_SLICE以外のスライスタイプを有する。
なお、上記制限の緩和には、特定のスケーラブルマスクもしくは特定のプロファイルの場合では緩和するという条件を付けても良い。具体的には、スケーラブルマスクにおいて特定のビットが有効な場合、例えば、デプススケーラブル、ビュースケーラブルが適用される場合(どちらかのスケーラブルのビットが立っている場合)には、上記緩和を適用しても良い。また、スケーラブルマスクが特定の値の場合、例えば、デプススケーラブル、ビュースケーラブル、もしくはデプススケーラブルとビュースケーラブルが適用される場合には、上記緩和を適用しても良い。また、プロファイルがマルチビュープロファイル、マルチビュー+デプスプロファイルの場合には、上記緩和を適用しても良い。
以上のようなレイヤIDに依存したスライスタイプの値の範囲の制限を有する符号化データ構造によれば、レイヤIDが0のレイヤのピクチャにおいては、NALユニットタイプがランダムアクセスピクチャ(RAPピクチャ)の場合において、スライスタイプをイントラスライスI_SLICEに制限し、レイヤIDが0以外のレイヤのピクチャにおいては、NALユニットタイプがランダムアクセスピクチャ(RAPピクチャ)の場合においても、スライスタイプとしてイントラスライスI_SLICEに制限しない。そのため、レイヤIDが0以外のレイヤのピクチャにおいては、NALユニットタイプがランダムアクセスピクチャ(RAP)の場合においても、同じ表示時刻のレイヤIDが0のピクチャを参照画像として用いることができるため、符号化効率が向上する、という効果を奏する。
また、以上のようなレイヤIDに依存したスライスタイプの値の範囲の制限を有する符号化データ構造によれば、レイヤIDが0がランダムアクセスピクチャである場合に、同じ表示時刻のレイヤIDが0以外のピクチャを、符号化効率を低下させることなく、ランダムアクセスピクチャ(RAPピクチャ)とすることができるため、ランダムアクセスが容易になるという効果を奏する。また、IDRもしくはBLAのNALユニットタイプの場合にPOCを初期化する構成において、異なるレイヤ間でPOCの初期化タイミングを同一にするには、レイヤIDが0がIDRもしくはBLAの場合には、レイヤIDが0以外のレイヤでも、IDRもしくはBLAにする必要があるが、この場合でも、レイヤIDが0以外のレイヤのピクチャにおいて、NALユニットタイをPOCの初期化を行うIDRもしくはBLAとしたまま、同じ表示時刻のレイヤIDが0のピクチャを参照画像として用いることができるため、符号化効率が向上する、という効果を奏する。
[参照ピクチャ情報復号部218]
参照ピクチャ情報復号部218は、ヘッダ復号部10の構成要素であり、参照ピクチャに関する情報を符号化データ#1から復号する。参照ピクチャに関する情報には、参照ピクチャセット情報(以下、RPS情報)と、参照ピクチャリスト修正情報(以下、RPL修正情報)が含まれる。
参照ピクチャ情報復号部218は、ヘッダ復号部10の構成要素であり、参照ピクチャに関する情報を符号化データ#1から復号する。参照ピクチャに関する情報には、参照ピクチャセット情報(以下、RPS情報)と、参照ピクチャリスト修正情報(以下、RPL修正情報)が含まれる。
参照ピクチャセット(RPS: Reference Picture Set)は、対象ピクチャ、または、復号順で対象ピクチャに後続するピクチャにおいて、参照ピクチャとして利用される可能性のあるピクチャの集合を表す。RPS情報は、SPSやスライスヘッダから復号される情報であり、各ピクチャの復号時に設定される参照ピクチャセットの導出に用いられる情報である。
参照ピクチャリスト(RPL: Reference Picture List)は、動き補償予測を行う際に参
照すべき参照ピクチャの候補リストである。参照ピクチャリストは2以上存在してもよい。本実施形態では、L0参照ピクチャリスト(L0参照リスト)とL1参照ピクチャリスト(L1参照リスト)を用いるとする。RPL修正情報は、SPSやスライスヘッダから復号される情報であり、参照ピクチャリスト内の参照ピクチャの順序を示す。
照すべき参照ピクチャの候補リストである。参照ピクチャリストは2以上存在してもよい。本実施形態では、L0参照ピクチャリスト(L0参照リスト)とL1参照ピクチャリスト(L1参照リスト)を用いるとする。RPL修正情報は、SPSやスライスヘッダから復号される情報であり、参照ピクチャリスト内の参照ピクチャの順序を示す。
動き補償予測では、参照画像リスト上で参照画像インデックス(refIdx)の位置に記録されている参照ピクチャを利用する。例えば、refIdxの値が0の場合は、参照画像リストの0の位置、すなわち参照画像リストの先頭の参照ピクチャが動き補償予測に用いられる。
なお、参照ピクチャ情報復号部218によるRPS情報およびRPL修正情報の復号処理は、本実施形態における重要な処理であるため、後ほど詳しく説明する。
ここで、参照ピクチャセットと参照ピクチャリストの例を、図40を参照して説明しておく。図40(a)は、動画像を構成するピクチャを表示順に並べて示したものであり、図中の数字は各ピクチャに対応するPOCを表している。POCは、復号ピクチャバッファの説明で後述するように、出力順で昇順となるよう各ピクチャに割り当てられている。“curr”と示されたPOCが9のピクチャが、現在の復号の対象ピクチャである。
図40(b)は、対象ピクチャに適用されるRPS情報の例を示す。対象ピクチャにおける参照ピクチャセット(現RPS)は、当該RPS情報に基づいて導出される。RPS情報には、長期RPS情報と短期RPS情報とが含まれる。長期RPS情報として、現RPSに含めるピクチャのPOCが直接示されている。図40(b)に示す例では、長期RPS情報は、POC=1のピクチャを現RPSに含めることを示している。短期RPS情報には、現RPSに含めるピクチャが、対象ピクチャのPOCに対する差分で記録されている。図中の「Before, dPOC=1」と示された短期RPS情報は、対象ピクチャのPOCに対して1小さいPOCのピクチャを現RPSに含めることを示している。同様に、図中の「Before, dPOC=4」は4小さいPOCのピクチャを示し、「After, dPOC=1」は1大きいPOCのピクチャを現RPSに含めることを示す。なお、「Before」は、対象ピクチャの前方、つまり、対象ピクチャより表示順の早いピクチャを示す。また、「After」は、対象ピクチャの後方、つまり、対象ピクチャより表示順の遅いピクチャを示す。
図40(c)は、対象ピクチャのPOCが0の場合に、図40(b)で例示したRPS情報を適用したときに導出される現RPSの例を示す。長期RPS情報で示されたPOC=1のピクチャが含まれている。また、短期RPS情報で示された、対象ピクチャ(POC=9)より1小さいPOCを有するピクチャ、すなわちPOC=8のピクチャが含まれている。同様に、短期RPS情報で示された、POC=5とPOC=10のピクチャが含まれている。
図40(d)および(e)は、現RPSに含まれる参照ピクチャから生成される参照ピクチャリストの例を示す。参照ピクチャリストの各要素にはインデックス(参照ピクチャインデックス)が付与されている(図中ではidxと記載)。図40(d)は、L0参照リストの例を示す。L0参照リストには、5、8、10、1のPOCを持つ現RPSに含まれる参照ピクチャが、この順で含まれている。図40(e)は、L1参照リストの例を示す。L1参照リストには、10、5、8のPOCを持つ現RPSに含まれる参照ピクチャが、この順で含まれている。なお、L1参照リストの例で示した通り、参照ピクチャリストには、現RPSに含まれる全ての参照ピクチャ(参照可能ピクチャ)を含める必要はない。しかし、参照ピクチャリストの要素数は、最大でも現RPSに含まれる参照ピクチャの数となる。言い換えると、参照ピクチャリストの長さは、現ピクチャで参照可能なピクチャ数以下である。
次に、参照ピクチャリスト修正の例を、図41を参照して説明しておく。図41は、特定の参照ピクチャリストに(図41(a))に対して、RPL修正情報(図41(b))を適用した場合に得られる修正後の参照ピクチャリスト(図41(c))を例示している。図41(a)に示す修正前L0参照リストは、図40(d)で説明したL0参照リストと同一である。図41(b)に示すRPL修正情報は参照ピクチャインデックスの値を要素とするリストになっており、先頭から順に0、2、1、3の値が格納されている。このRPL修正情報は、修正前参照リストに含まれる0、2、1、3の参照ピクチャインデックスで示される参照ピクチャを、この順で修正後L0参照リストの参照ピクチャとすることを示す。図41(c)は修正後L0参照リストを示し、POCが5、10、8、1のピクチャがこの順で含まれている。
(動画像復号処理手順)
画像復号装置1が、入力符号化データ#1から復号画像#2を生成する手順は次のとおりである。
(S11)ヘッダ復号部10は、符号化データ#1からVPS、SPSを復号する。
(S12)ヘッダ復号部10は、符号化データ#1からPPSを復号する。
(S13)符号化データ#1の示すピクチャを順次対象ピクチャに設定する。各対象ピクチャに対して、S14〜S17の処理を実行する。
(S14)ヘッダ復号部10は、符号化データ#1から対象ピクチャに含まれる各スライスのスライスヘッダを復号する。ヘッダ復号部10に含まれる参照ピクチャ情報復号部218は、スライスヘッダからRPS情報を復号して参照ピクチャ管理部13に含まれる参照ピクチャセット設定部131に出力する。また、参照ピクチャ情報復号部218は、スライスヘッダからRPL修正情報を復号して参照ピクチャリスト導出部132に出力する。
(S15)参照ピクチャセット設定部131は、RPS情報と、復号ピクチャバッファ12に記録されている局所復号画像のPOCとメモリ上の位置情報の組み合わせに基づいて、対象ピクチャに適用する参照ピクチャセットRPSを生成して、参照ピクチャリスト導出部132に出力する。
(S16)参照ピクチャリスト導出部132は、参照ピクチャセットRPSと、RPL修正情報に基づいて参照ピクチャリストRPLを生成してピクチャ復号部11に出力する。
(S17)ピクチャ復号部11は、符号化データ#1から対象ピクチャに含まれる各スライスのスライスデータと、参照ピクチャリストRPLに基づいて対象ピクチャの局所復号画像を作成して、対象ピクチャのPOCと関連付けて復号ピクチャバッファに記録する。復号ピクチャバッファに記録された局所復号画像は、POCに基づき決定される適切なタイミングで、外部に復号画像#2として出力される。
画像復号装置1が、入力符号化データ#1から復号画像#2を生成する手順は次のとおりである。
(S11)ヘッダ復号部10は、符号化データ#1からVPS、SPSを復号する。
(S12)ヘッダ復号部10は、符号化データ#1からPPSを復号する。
(S13)符号化データ#1の示すピクチャを順次対象ピクチャに設定する。各対象ピクチャに対して、S14〜S17の処理を実行する。
(S14)ヘッダ復号部10は、符号化データ#1から対象ピクチャに含まれる各スライスのスライスヘッダを復号する。ヘッダ復号部10に含まれる参照ピクチャ情報復号部218は、スライスヘッダからRPS情報を復号して参照ピクチャ管理部13に含まれる参照ピクチャセット設定部131に出力する。また、参照ピクチャ情報復号部218は、スライスヘッダからRPL修正情報を復号して参照ピクチャリスト導出部132に出力する。
(S15)参照ピクチャセット設定部131は、RPS情報と、復号ピクチャバッファ12に記録されている局所復号画像のPOCとメモリ上の位置情報の組み合わせに基づいて、対象ピクチャに適用する参照ピクチャセットRPSを生成して、参照ピクチャリスト導出部132に出力する。
(S16)参照ピクチャリスト導出部132は、参照ピクチャセットRPSと、RPL修正情報に基づいて参照ピクチャリストRPLを生成してピクチャ復号部11に出力する。
(S17)ピクチャ復号部11は、符号化データ#1から対象ピクチャに含まれる各スライスのスライスデータと、参照ピクチャリストRPLに基づいて対象ピクチャの局所復号画像を作成して、対象ピクチャのPOCと関連付けて復号ピクチャバッファに記録する。復号ピクチャバッファに記録された局所復号画像は、POCに基づき決定される適切なタイミングで、外部に復号画像#2として出力される。
[復号ピクチャバッファ12]
復号ピクチャバッファ12には、ピクチャ復号部で復号された各ピクチャの局所復号画像が、レイヤID、当該ピクチャのPOC(Picture Order Count、ピクチャ順序情報。表示時刻)と関連付けられて記録されている。復号ピクチャバッファ12は、所定の出力タイミングで、出力対象のPOCを決定する。その後、当該POCに対応する局所復号画像を、復号画像#2を構成するピクチャの一つとして外部に出力する。
復号ピクチャバッファ12には、ピクチャ復号部で復号された各ピクチャの局所復号画像が、レイヤID、当該ピクチャのPOC(Picture Order Count、ピクチャ順序情報。表示時刻)と関連付けられて記録されている。復号ピクチャバッファ12は、所定の出力タイミングで、出力対象のPOCを決定する。その後、当該POCに対応する局所復号画像を、復号画像#2を構成するピクチャの一つとして外部に出力する。
図28は、復号ピクチャメモリの構成を示す概念図である。図中内部に数字を記したボックスが局所復号画像を示す。数字はPOCを示す。図28の図の通り、複数のレイヤの局所復号画像が、そのレイヤID、POC、局所復号画像に関連づけられて記録される。さらに、レイヤIDに対応するビューIDview_id、デプスフラグdepth_flagも局所復号画像に関連づけられて記録される。
[参照ピクチャ管理部13]
図39は、本実施形態に係る参照ピクチャ管理部13の構成を示す概略図である。参照ピクチャ管理部13は、参照ピクチャセット設定部131と、参照ピクチャリスト導出部132を含んで構成される。
図39は、本実施形態に係る参照ピクチャ管理部13の構成を示す概略図である。参照ピクチャ管理部13は、参照ピクチャセット設定部131と、参照ピクチャリスト導出部132を含んで構成される。
参照ピクチャセット設定部131は、参照ピクチャ情報復号部218で復号されたRPS情報、および、復号ピクチャバッファ12に記録されている局所復号画像とレイヤID、POCの情報に基づいて、参照ピクチャセットRPSを構築して参照ピクチャリスト導出部132に出力する。なお、参照ピクチャセット設定部131の詳細は後述する。
参照ピクチャリスト導出部132は、参照ピクチャ情報復号部218で復号されたRPL修正情報、および、参照ピクチャセット設定部131から入力された参照ピクチャセットRPSに基づいて参照ピクチャリストRPLを生成して、ピクチャ復号部11に出力する。なお、参照ピクチャリスト導出部132の詳細は後述する。
(参照ピクチャ情報復号処理の詳細)
上記復号手順におけるS14の処理のうち、RPS情報およびRPL修正情報の復号処理について詳細を説明する。
上記復号手順におけるS14の処理のうち、RPS情報およびRPL修正情報の復号処理について詳細を説明する。
(RPS情報復号処理)
RPS情報は、参照ピクチャセットを構築するためにSPSまたはスライスヘッダより復号される情報である。RPS情報には以下を含む。
1.SPS短期RPS情報:SPSに含まれる短期参照ピクチャセット情報
2.SPS長期RP情報:SPSに含まれる長期参照ピクチャ情報
3.SH短期RPS情報:スライスヘッダに含まれる短期参照ピクチャセット情報
4.SH長期RP情報:スライスヘッダに含まれる長期参照ピクチャ情報
(1.SPS短期RPS情報)
SPS短期RPS情報は、SPSを参照する各ピクチャから利用され得る複数の短期参照ピクチャセットの情報を含む。なお、短期参照ピクチャセットとは、対象ピクチャに対する相対的な位置(例えば対象ピクチャとのPOC差分)により指定される参照ピクチャ(短期参照ピクチャ)となり得るピクチャの集合である。
RPS情報は、参照ピクチャセットを構築するためにSPSまたはスライスヘッダより復号される情報である。RPS情報には以下を含む。
1.SPS短期RPS情報:SPSに含まれる短期参照ピクチャセット情報
2.SPS長期RP情報:SPSに含まれる長期参照ピクチャ情報
3.SH短期RPS情報:スライスヘッダに含まれる短期参照ピクチャセット情報
4.SH長期RP情報:スライスヘッダに含まれる長期参照ピクチャ情報
(1.SPS短期RPS情報)
SPS短期RPS情報は、SPSを参照する各ピクチャから利用され得る複数の短期参照ピクチャセットの情報を含む。なお、短期参照ピクチャセットとは、対象ピクチャに対する相対的な位置(例えば対象ピクチャとのPOC差分)により指定される参照ピクチャ(短期参照ピクチャ)となり得るピクチャの集合である。
SPS短期RPS情報の復号について、図42を参照して説明する。図42は、ヘッダ復号部10および参照ピクチャ情報復号部218においてSPS復号時に利用されるSPSシンタックス表の一部を例示している。図42の(A)の部分がSPS短期RPS情報に相当する。SPS短期RPS情報には、SPSに含まれる短期参照ピクチャセットの数(num_short_term_ref_pic_sets)、および、各短期参照ピクチャセットの情報(short_term_ref_pic_set(i))が含まれる。
短期参照ピクチャセット情報について、図43を参照して説明する。図43は、ヘッダ復号部10および参照ピクチャ情報復号部218においてSPS復号時、および、スライスヘッダ復号時に利用される短期参照ピクチャセットのシンタックス表を例示している。
短期参照ピクチャセット情報には、対象ピクチャより表示順が早い短期参照ピクチャ数(num_negative_pics)、および、対象ピクチャより表示順が遅い短期参照ピクチャ数(num_positive_pics)が含まれる。なお、以下では、対象ピクチャより表示順が早い短期参照ピクチャを前方短期参照ピクチャ、対象ピクチャより表示順が遅い短期参照ピクチャを後方短期参照ピクチャと呼ぶ。
また、短期参照ピクチャセット情報には、各前方短期参照ピクチャに対して、対象ピクチャに対するPOC差分の絶対値(delta_poc_s0_minus1[i])、および、対象ピクチャの参照ピクチャとして使用される可能性の有無(used_by_curr_pic_s0_flag[i])が含まれる。加えて、各後方短期参照ピクチャに対して、対象ピクチャに対するPOC差分の絶対値(delta_poc_s1_minus1[i])、および、対象ピクチャの参照ピクチャとして使用される可能性の有無(used_by_curr_pic_s1_flag[i])が含まれる。
(2.SPS長期RP情報)
SPS長期RP情報は、SPSを参照する各ピクチャから利用され得る複数の長期参照ピクチャの情報を含む。なお、長期参照ピクチャとは、シーケンス内の絶対的な位置(例えばPOC)により指定されるピクチャである。
SPS長期RP情報は、SPSを参照する各ピクチャから利用され得る複数の長期参照ピクチャの情報を含む。なお、長期参照ピクチャとは、シーケンス内の絶対的な位置(例えばPOC)により指定されるピクチャである。
SPS長期RP情報の復号について、図42を再び参照して説明する。図42の(B)の部分がSPS長期RP情報に相当する。SPS長期RP情報には、SPSで伝送される長期参照ピクチャの有無を示す情報(long_term_ref_pics_present_flag)、SPSに含まれる長期参照ピクチャの数(num_long_term_ref_pics_sps)、および、各長期参照ピクチャの情報が含まれる。長期参照ピクチャの情報には、参照ピクチャのPOC(lt_ref_pic_poc_lsb_sps[i])、および、対象ピクチャの参照ピクチャとして使用される可能性の有無(used_by_curr_pic_lt_sps_flag[i])が含まれる。
なお、上記参照ピクチャのPOCは、参照ピクチャに関連付けられたPOCの値自体であってもよいし、POCのLSB(Least Significant Bit)、すなわち、POCを既定の2の冪乗の数で割った余りの値を用いてもよい。
(3.SH短期RPS情報)
SH短期RPS情報は、スライスヘッダを参照するピクチャから利用され得る単一の短期参照ピクチャセットの情報を含む。
SH短期RPS情報は、スライスヘッダを参照するピクチャから利用され得る単一の短期参照ピクチャセットの情報を含む。
SPS短期RPS情報の復号について、図44を参照して説明する。図44は、ヘッダ復号部10および参照ピクチャ情報復号部218においてスライスヘッダ復号時に利用されるスライスヘッダシンタックス表の一部を例示している。図44の(A)の部分がSH短期RPS情報に相当する。SH短期RPS情報は、短期参照ピクチャセットをSPSで復号済みの短期参照ピクチャセットの中から選択するか、スライスヘッダに明示的に含めるかを示すフラグ(short_term_ref_pic_set_sps_flag)を含む。SPSで復号済の中から選択する場合、復号済の短期参照ピクチャセットを一つ選択する識別子(short_term_ref_pic_set_idx)が含まれる。スライスヘッダに明示的に含める場合は、前述の図7を参照して説明したシンタックス表(short_term_ref_pic_set(idx))に相当する情報が、SPS短期RPS情報に含まれる。
(4.SH長期RP情報)
SH長期RP情報は、スライスヘッダを参照するピクチャから利用され得る長期参照ピクチャの情報を含む。
SH長期RP情報は、スライスヘッダを参照するピクチャから利用され得る長期参照ピクチャの情報を含む。
SH長期RP情報の復号について、図44を再び参照して説明する。図44の(B)の部分がSH長期RP情報に相当する。SH長期RP情報は、対象ピクチャで長期参照ピクチャが利用可能(long_term_ref_pic_present_flag)である場合のみスライスヘッダに含まれる。SPSで1以上の長期参照ピクチャを復号済である場合(num_long_term_ref_pics_sps>0)、SPSで復号済の長期参照ピクチャの中で対象ピクチャで参照され得る参照ピクチャの数(num_long_term_sps)がSH長期RP情報に含まれる。また、スライスヘッダで明示的に伝送される長期参照ピクチャ数(num_long_term_pics)がSH長期RP情報に含まれる。加えて、上記num_long_term_spsの数の長期参照ピクチャをSPSで伝送済の長期参照ピクチャの中から選択する情報(lt_idx_sps[i])がSH長期RP情報に含まれる。さらに、スライスヘッダに明示的に含める長期参照ピクチャの情報として、上記num_long_term_picsの数だけ、参照ピクチャのPOC(poc_lsb_lt [i])、および、対象ピクチャの参照ピクチャとして使用される可能性の有無(used_by_curr_pic_lt_flag[i])が含まれる。
(RPL修正情報復号処理)
RPL修正情報は、参照ピクチャリストRPLを構築するためにSPSまたはスライスヘッダより復号される情報である。RPL修正情報には、SPSリスト修正情報、および、SHリスト修正情報が含まれる。
RPL修正情報は、参照ピクチャリストRPLを構築するためにSPSまたはスライスヘッダより復号される情報である。RPL修正情報には、SPSリスト修正情報、および、SHリスト修正情報が含まれる。
(SPSリスト修正情報)
SPSリスト修正情報はSPSに含まれる情報であり、参照ピクチャリスト修正の制約に係る情報である。SPSリスト修正情報について、図42を再び参照して説明する。図42の(C)の部分がSPSリスト修正情報に相当する。SPSリスト修正情報には、ピクチャに含まれる前スライスで参照ピクチャリストが共通か否かを示すフラグ(restricted_ref_pic_lists_flag)、および、スライスヘッダ内にリスト並べ替えに関する情報が存在するか否かを示すフラグ(lists_modification_present_flag)が含まれる。
SPSリスト修正情報はSPSに含まれる情報であり、参照ピクチャリスト修正の制約に係る情報である。SPSリスト修正情報について、図42を再び参照して説明する。図42の(C)の部分がSPSリスト修正情報に相当する。SPSリスト修正情報には、ピクチャに含まれる前スライスで参照ピクチャリストが共通か否かを示すフラグ(restricted_ref_pic_lists_flag)、および、スライスヘッダ内にリスト並べ替えに関する情報が存在するか否かを示すフラグ(lists_modification_present_flag)が含まれる。
(SHリスト修正情報)
SHリスト修正情報はスライスヘッダに含まれる情報であり、対象ピクチャに適用される参照ピクチャリストの長さ(参照リスト長)の更新情報、および、参照ピクチャリストの並べ替え情報(参照リスト並べ替え情報)が含まれる。SHリスト修正情報について、図45を参照して説明する。図45はヘッダ復号部10および参照ピクチャ情報復号部218においてスライスヘッダ復号時に利用されるスライスヘッダシンタックス表の一部を例示している。図45の(C)の部分がSHリスト修正情報に相当する。
SHリスト修正情報はスライスヘッダに含まれる情報であり、対象ピクチャに適用される参照ピクチャリストの長さ(参照リスト長)の更新情報、および、参照ピクチャリストの並べ替え情報(参照リスト並べ替え情報)が含まれる。SHリスト修正情報について、図45を参照して説明する。図45はヘッダ復号部10および参照ピクチャ情報復号部218においてスライスヘッダ復号時に利用されるスライスヘッダシンタックス表の一部を例示している。図45の(C)の部分がSHリスト修正情報に相当する。
参照リスト長更新情報として、リスト長の更新有無を示すフラグ(num_ref_idx_active_override_flag)が含まれる。加えて、L0参照リストの変更後の参照リスト長を表す情報(num_ref_idx_l0_active_minus1)、および、L1参照リストの変更後の参照リスト長を表す情報(num_ref_idx_l1_active_minus1)が含まれる。
参照リスト並べ替え情報としてスライスヘッダに含まれる情報について、図46を参照して説明する。図46はヘッダ復号部10および参照ピクチャ情報復号部218においてスライスヘッダ復号時に利用される参照リスト並べ替え情報のシンタックス表を例示している。
参照リスト並べ替え情報には、L0参照リスト並べ替え有無フラグ(ref_pic_list_modification_flag_l0)が含まれる。前記フラグの値が1(L0参照リストの並べ替えが有る場合)、かつ、NumPocTotalCurrが2より大きい場合、L0参照リスト並べ替え順序(list_entry_l0[i])が参照リスト並べ替え情報に含まれる。ここで、NumPocTotalCurrは、現ピクチャにおいて利用可能な参照ピクチャの数を表す変数である。したがって、L0参照リストの並べ替えが有る場合であって、かつ、現ピクチャにおいて利用可能な参照ピクチャ数が2より大きい場合にのみ、L0参照リスト並べ替え順序がスライスヘッダに含まれる。
同様に、参照ピクチャがBスライスである場合、つまり、対象ピクチャにおいてL1参照リストが利用可能である場合、L1参照リスト並べ替え有無フラグ(ref_pic_list_modification_flag_l1)が参照リスト並べ替え情報に含まれる。前記フラグの値が1、かつ、NumPocTotalCurrが2より大きい場合、L1参照リスト並べ替え順序(list_entry_l1[i])が参照リスト並べ替え情報に含まれる。言い換えると、L1参照リストの並べ替えが有る場合であって、かつ、現ピクチャにおいて利用可能な参照ピクチャ数が2より大きい場合にのみ、L1参照リスト並べ替え順序がスライスヘッダに含まれる。
(参照ピクチャセット導出処理の詳細)
前述の動画像復号手順におけるS15の処理、すなわち、参照ピクチャセット設定部による参照ピクチャセット導出処理の詳細を説明する。
前述の動画像復号手順におけるS15の処理、すなわち、参照ピクチャセット設定部による参照ピクチャセット導出処理の詳細を説明する。
既に説明したとおり、参照ピクチャセット設定部131は、RPS情報と、復号ピクチャバッファ12に記録されている情報に基づいて、対象ピクチャの復号に用いる参照ピクチャセットRPSを生成する。
参照ピクチャセットRPSは、対象ピクチャ、または、対象ピクチャに復号順で後続のピクチャにおいて、復号時に参照画像として利用可能なピクチャ(参照可能ピクチャ)の集合である。参照ピクチャセットは、参照可能ピクチャの種類に応じて次の2つのサブセットに分けられる。
・現ピクチャ参照可能リストListCurr:復号ピクチャバッファ上のピクチャのうち、対象ピクチャにおける参照可能ピクチャのリスト
・後続ピクチャ参照可能リストListFoll:対象ピクチャでは参照されないが、対象ピクチャに復号順で後続のピクチャで参照可能な復号ピクチャバッファ上のピクチャのリスト
なお、現ピクチャ参照可能リストに含まれるピクチャの数を、現ピクチャ参照可能ピクチャ数NumCurrListと呼ぶ。なお、前述の図46を参照して説明したNumPocTotalCurrは、NumCurrListと同一である。
・現ピクチャ参照可能リストListCurr:復号ピクチャバッファ上のピクチャのうち、対象ピクチャにおける参照可能ピクチャのリスト
・後続ピクチャ参照可能リストListFoll:対象ピクチャでは参照されないが、対象ピクチャに復号順で後続のピクチャで参照可能な復号ピクチャバッファ上のピクチャのリスト
なお、現ピクチャ参照可能リストに含まれるピクチャの数を、現ピクチャ参照可能ピクチャ数NumCurrListと呼ぶ。なお、前述の図46を参照して説明したNumPocTotalCurrは、NumCurrListと同一である。
現ピクチャ参照可能リストは、さらに3つの部分リストから構成される。
・現ピクチャ長期参照可能リストListLtCurr:SPS長期RP情報またはSH長期RP情報により指定される現ピクチャ参照可能ピクチャ。
・現ピクチャ短期前方参照可能リストListStCurrBefore:SPS短期RPS情報またはSH短期RPS情報により指定される現ピクチャ参照可能ピクチャであって、表示順が対象ピクチャより早いもの。
・現ピクチャ短期後方参照可能リストListStCurrAfter:SPS短期RPS情報またはSH短期RPS情報により指定される現ピクチャ参照可能ピクチャであって、表示順が対象ピクチャより早いもの。
・現ピクチャ長期参照可能リストListLtCurr:SPS長期RP情報またはSH長期RP情報により指定される現ピクチャ参照可能ピクチャ。
・現ピクチャ短期前方参照可能リストListStCurrBefore:SPS短期RPS情報またはSH短期RPS情報により指定される現ピクチャ参照可能ピクチャであって、表示順が対象ピクチャより早いもの。
・現ピクチャ短期後方参照可能リストListStCurrAfter:SPS短期RPS情報またはSH短期RPS情報により指定される現ピクチャ参照可能ピクチャであって、表示順が対象ピクチャより早いもの。
後続ピクチャ参照可能リストは、さらに2つの部分リストから構成される。
・後続ピクチャ長期参照可能リストListLtFoll:SPS長期RP情報またはSH長期RP情報により指定される後続ピクチャ参照可能ピクチャ。
・後続ピクチャ短期参照可能リストListStFoll:SPS短期RPS情報またはSH短期RPS情報により指定される現ピクチャ参照可能ピクチャ。
・後続ピクチャ長期参照可能リストListLtFoll:SPS長期RP情報またはSH長期RP情報により指定される後続ピクチャ参照可能ピクチャ。
・後続ピクチャ短期参照可能リストListStFoll:SPS短期RPS情報またはSH短期RPS情報により指定される現ピクチャ参照可能ピクチャ。
参照ピクチャセット設定部131は、NALユニットタイプがIDR以外の場合に、参照ピクチャセットRPS、すなわち、現ピクチャ短期前方参照可能リストListStCurrBefore、現ピクチャ短期後方参照可能リストListStCurrAfter、現ピクチャ長期参照可能リストListLtCurr、後続ピクチャ短期参照可能リストListStFoll、および、後続ピクチャ長期参照可能リストListLtFollを次の手順で生成する。加えて、現ピクチャ参照可能ピクチャ数を表す変数NumPocTotalCurrを導出する。なお、前記各参照可能リストは、以下の処理の開始前に空に設定されているとする。参照ピクチャセット設定部131は、NALユニットタイプがIDRの場合は、参照ピクチャセットRPSを空として導出する。
(S201)SPS短期RPS情報、および、SH短期RPS情報に基づいて、対象ピクチャの復号に用いる単一の短期参照ピクチャセットを特定する。具体的には、SH短期RPS情報に含まれるshort_term_ref_pic_set_spsの値が0である場合、SH短期RPS情報に含まれるスライスヘッダで明示的に伝送された短期RPSを選択する。それ以外(short_term_ref_pic_set_spsの値が1の場合、SH短期RPS情報に含まれるshort_term_ref_pic_set_idxが示す短期RPSを、SPS短期RPS情報に含まれる複数の短期RPSの中から選択する。
(S202)選択された短期RPSに含まれる参照ピクチャ各々のPOCの値を導出し、復号ピクチャバッファ12上に当該POC値と関連付けられて記録されている局所復号画像の位置を検出して、参照ピクチャの復号ピクチャバッファ上の記録位置として導出する。
(S201)SPS短期RPS情報、および、SH短期RPS情報に基づいて、対象ピクチャの復号に用いる単一の短期参照ピクチャセットを特定する。具体的には、SH短期RPS情報に含まれるshort_term_ref_pic_set_spsの値が0である場合、SH短期RPS情報に含まれるスライスヘッダで明示的に伝送された短期RPSを選択する。それ以外(short_term_ref_pic_set_spsの値が1の場合、SH短期RPS情報に含まれるshort_term_ref_pic_set_idxが示す短期RPSを、SPS短期RPS情報に含まれる複数の短期RPSの中から選択する。
(S202)選択された短期RPSに含まれる参照ピクチャ各々のPOCの値を導出し、復号ピクチャバッファ12上に当該POC値と関連付けられて記録されている局所復号画像の位置を検出して、参照ピクチャの復号ピクチャバッファ上の記録位置として導出する。
参照ピクチャのPOC値は、参照ピクチャが前方短期参照ピクチャの場合、対象ピクチャのPOCの値から「delta_poc_s0_minus1[i]+1」の値を減算して導出する。一方、参照ピクチャが後方短期参照ピクチャの場合、対象ピクチャのPOCの値に「delta_poc_s1_minus1[i]+1」の値を加算して導出する。
(S203)短期RPSに含まれる前方参照ピクチャを伝送された順に確認し、関連付けられているused_by_curr_pic_s0_flag[i]の値が1である場合、当該前方参照ピクチャを現ピクチャ短期前方参照可能リストListStCurrBeforeに追加する。それ以外(used_by_curr_pic_s0_flag[i]の値が0)の場合、当該前方参照ピクチャを後続ピクチャ短期参照可能リストListStFollに追加する。
(S204)短期RPSに含まれる後方参照ピクチャを伝送された順に確認し、関連付けられているused_by_curr_pic_s1_flag[i]の値が1である場合、当該後方参照ピクチャを現ピクチャ短期後方参照可能リストListStCurrAfterに追加する。それ以外(used_by_curr_pic_s1_flag[i]の値が0の場合、当該前方参照ピクチャを後続ピクチャ短期参照可能リストListStFollに追加する。
(S205) SPS長期RP情報、および、SH長期RP情報に基づいて、対象ピクチャの復号に用いる長期参照ピクチャセットを特定する。具体的には、num_long_term_spsの数の参照ピクチャを、SPS長期RP情報に含まれ、かつ、対象ピクチャとレイヤIDが等しい参照ピクチャの中から選択して、順に長期参照ピクチャセットに追加する。選択される参照ピクチャは、lt_idx_sps[i]の示す参照ピクチャである。続いて、num_long_term_picsの数の参照ピクチャをSH長期RP情報に含まれる参照ピクチャを順に長期参照ピクチャセットに追加する。対象ピクチャのレイヤIDが0以外の場合には、対象ピクチャとレイヤIDが異なるピクチャ、特に、対象ピクチャの依存レイヤref_layer_idが等しいレイヤID参照ピクチャの中から、対象ピクチャのPOCと等しいPOCを持つ参照ピクチャをさらに長期参照ピクチャセットに追加する。
(S206)長期参照ピクチャセットに含まれる参照ピクチャ各々のPOCの値を導出し、復号ピクチャバッファ12上で対象ピクチャとレイヤIDが等しい参照ピクチャの中から当該POC値と関連付けられて記録されている局所復号画像の位置を検出して、参照ピクチャの復号ピクチャバッファ上の記録位置として導出する。また、対象ピクチャとレイヤIDが異なる参照ピクチャについては、依存レイヤref_layer_idにより指定されたレイヤIDと対象ピクチャのPOCと関連付けられて記録されている局所復号画像の位置を検出して、参照ピクチャの復号ピクチャバッファ上の記録位置として導出する。
(S203)短期RPSに含まれる前方参照ピクチャを伝送された順に確認し、関連付けられているused_by_curr_pic_s0_flag[i]の値が1である場合、当該前方参照ピクチャを現ピクチャ短期前方参照可能リストListStCurrBeforeに追加する。それ以外(used_by_curr_pic_s0_flag[i]の値が0)の場合、当該前方参照ピクチャを後続ピクチャ短期参照可能リストListStFollに追加する。
(S204)短期RPSに含まれる後方参照ピクチャを伝送された順に確認し、関連付けられているused_by_curr_pic_s1_flag[i]の値が1である場合、当該後方参照ピクチャを現ピクチャ短期後方参照可能リストListStCurrAfterに追加する。それ以外(used_by_curr_pic_s1_flag[i]の値が0の場合、当該前方参照ピクチャを後続ピクチャ短期参照可能リストListStFollに追加する。
(S205) SPS長期RP情報、および、SH長期RP情報に基づいて、対象ピクチャの復号に用いる長期参照ピクチャセットを特定する。具体的には、num_long_term_spsの数の参照ピクチャを、SPS長期RP情報に含まれ、かつ、対象ピクチャとレイヤIDが等しい参照ピクチャの中から選択して、順に長期参照ピクチャセットに追加する。選択される参照ピクチャは、lt_idx_sps[i]の示す参照ピクチャである。続いて、num_long_term_picsの数の参照ピクチャをSH長期RP情報に含まれる参照ピクチャを順に長期参照ピクチャセットに追加する。対象ピクチャのレイヤIDが0以外の場合には、対象ピクチャとレイヤIDが異なるピクチャ、特に、対象ピクチャの依存レイヤref_layer_idが等しいレイヤID参照ピクチャの中から、対象ピクチャのPOCと等しいPOCを持つ参照ピクチャをさらに長期参照ピクチャセットに追加する。
(S206)長期参照ピクチャセットに含まれる参照ピクチャ各々のPOCの値を導出し、復号ピクチャバッファ12上で対象ピクチャとレイヤIDが等しい参照ピクチャの中から当該POC値と関連付けられて記録されている局所復号画像の位置を検出して、参照ピクチャの復号ピクチャバッファ上の記録位置として導出する。また、対象ピクチャとレイヤIDが異なる参照ピクチャについては、依存レイヤref_layer_idにより指定されたレイヤIDと対象ピクチャのPOCと関連付けられて記録されている局所復号画像の位置を検出して、参照ピクチャの復号ピクチャバッファ上の記録位置として導出する。
長期参照ピクチャのPOCは、対象ピクチャとレイヤIDが等しい参照ピクチャについては、関連付けて復号されたpoc_lst_lt[i]、または、lt_ref_pic_poc_lsb_sps[i]の値から直接導出される。対象ピクチャとレイヤIDが異なる参照ピクチャについては、対象ピクチャのPOCが設定される。
(S207)長期参照ピクチャセットに含まれる参照ピクチャを順に確認し、関連付けられているused_by_curr_pic_lt_flag[i]、または、used_by_curr_pic_lt_sps_flag[i]の値が1である場合、当該長期参照ピクチャを現ピクチャ長期参照可能リストListLtCurrに追加する。それ以外(used_by_curr_pic_lt_flag[i]、または、used_by_curr_pic_lt_sps_flag[i]の値が0)の場合、当該長期参照ピクチャを後続ピクチャ長期参照可能リストListLtFollに追加する。
(S208)変数NumPocTotalCurrの値を、現ピクチャから参照可能な参照ピクチャの和に設定する。すなわち、変数NumPocTotalCurrの値を、現ピクチャ短期前方参照可能リストListStCurrBefore、現ピクチャ短期後方参照可能リストListStCurrAfter、および、現ピクチャ長期参照可能リストListLtCurrの3つのリストの各要素数の和に設定する。
(S207)長期参照ピクチャセットに含まれる参照ピクチャを順に確認し、関連付けられているused_by_curr_pic_lt_flag[i]、または、used_by_curr_pic_lt_sps_flag[i]の値が1である場合、当該長期参照ピクチャを現ピクチャ長期参照可能リストListLtCurrに追加する。それ以外(used_by_curr_pic_lt_flag[i]、または、used_by_curr_pic_lt_sps_flag[i]の値が0)の場合、当該長期参照ピクチャを後続ピクチャ長期参照可能リストListLtFollに追加する。
(S208)変数NumPocTotalCurrの値を、現ピクチャから参照可能な参照ピクチャの和に設定する。すなわち、変数NumPocTotalCurrの値を、現ピクチャ短期前方参照可能リストListStCurrBefore、現ピクチャ短期後方参照可能リストListStCurrAfter、および、現ピクチャ長期参照可能リストListLtCurrの3つのリストの各要素数の和に設定する。
(参照ピクチャリスト構築処理の詳細)
上記復号手順におけるS16の処理、すなわち、参照ピクチャリスト構築処理の詳細を図1を参照して説明する。既に説明したとおり、参照ピクチャリスト導出部132は、参照ピクチャセットRPSと、RPL修正情報に基づいて参照ピクチャリストRPLを生成する。
上記復号手順におけるS16の処理、すなわち、参照ピクチャリスト構築処理の詳細を図1を参照して説明する。既に説明したとおり、参照ピクチャリスト導出部132は、参照ピクチャセットRPSと、RPL修正情報に基づいて参照ピクチャリストRPLを生成する。
参照ピクチャリストはL0参照リストとL1参照リストの2つのリストから構成される。始めに、L0参照リストの構築手順を説明する。L0参照リストは、以下のS301〜S307に示す手順で構築される。
(S301)暫定L0参照リストを生成して、空のリストに初期化する。
(S302)暫定L0参照リストに対し、現ピクチャ短期前方参照可能リストに含まれる参照ピクチャを順に追加する。
(S303)暫定L0参照リストに対し、現ピクチャ短期後方参照可能リストに含まれる参照ピクチャを順に追加する。
(S304)暫定L0参照リストに対し、現ピクチャ長期参照可能リストに含まれる参照ピクチャを順に追加する。
(S305)参照ピクチャリストが修正される場合(RPL修正情報に含まれるlists_modification_present_flagの値が1の場合)、以下のS306a〜S306bの処理を実行する。そうでない場合(lists_modification_present_flagの値が0の場合)、S307の処理を実行する。
(S306a)L0参照ピクチャの修正が有効な場合(RPL修正情報に含まれるref_pic_list_modification_flag_l0の値が1の場合)であって、かつ、現ピクチャ参照可能ピクチャ数NumCurrListが2に等しい場合、S306bを実行する。そうでない場合、S306cを実行する。
(S306b)RPL修正情報に含まれるリスト並べ替え順序list_entry_l0[i]の値を下記の式により設定し、その後、S306cを実行する。
(S301)暫定L0参照リストを生成して、空のリストに初期化する。
(S302)暫定L0参照リストに対し、現ピクチャ短期前方参照可能リストに含まれる参照ピクチャを順に追加する。
(S303)暫定L0参照リストに対し、現ピクチャ短期後方参照可能リストに含まれる参照ピクチャを順に追加する。
(S304)暫定L0参照リストに対し、現ピクチャ長期参照可能リストに含まれる参照ピクチャを順に追加する。
(S305)参照ピクチャリストが修正される場合(RPL修正情報に含まれるlists_modification_present_flagの値が1の場合)、以下のS306a〜S306bの処理を実行する。そうでない場合(lists_modification_present_flagの値が0の場合)、S307の処理を実行する。
(S306a)L0参照ピクチャの修正が有効な場合(RPL修正情報に含まれるref_pic_list_modification_flag_l0の値が1の場合)であって、かつ、現ピクチャ参照可能ピクチャ数NumCurrListが2に等しい場合、S306bを実行する。そうでない場合、S306cを実行する。
(S306b)RPL修正情報に含まれるリスト並べ替え順序list_entry_l0[i]の値を下記の式により設定し、その後、S306cを実行する。
list_entry_l0[0] = 1
list_entry_l0[1] = 0
(S306c)参照リスト並べ替え順序list_entry_l0[i]の値に基づいて、暫定L0参照リストの要素を並べ換えて、L0参照リストとする。参照ピクチャインデックスrIdxに対応するL0参照リストの要素RefPicList0[rIdx]は、次式により導出される。ここで、RefListTemp0[i]は、暫定L0参照リストのi番目の要素を表す。
list_entry_l0[1] = 0
(S306c)参照リスト並べ替え順序list_entry_l0[i]の値に基づいて、暫定L0参照リストの要素を並べ換えて、L0参照リストとする。参照ピクチャインデックスrIdxに対応するL0参照リストの要素RefPicList0[rIdx]は、次式により導出される。ここで、RefListTemp0[i]は、暫定L0参照リストのi番目の要素を表す。
RefPicList0[ rIdx ] = RefPicListTemp0[ list_entry_l0[ rIdx ] ]
上記の式によれば、参照リスト並べ替え順序list_entry_l0[i]において、参照ピクチャインデックスrIdxの示す位置に記録されている値を参照し、暫定L0参照リストにおいて前記値の位置に記録されている参照ピクチャを、L0参照リストのrIdxの位置の参照ピクチャとして格納する。
(S307)暫定L0参照リストをL0参照リストとする。
上記の式によれば、参照リスト並べ替え順序list_entry_l0[i]において、参照ピクチャインデックスrIdxの示す位置に記録されている値を参照し、暫定L0参照リストにおいて前記値の位置に記録されている参照ピクチャを、L0参照リストのrIdxの位置の参照ピクチャとして格納する。
(S307)暫定L0参照リストをL0参照リストとする。
次にL1参照リストを構築する。なお、L1参照リストも、上記L0参照リストと同様の手順で構築できる。上記L0参照リストの構築手順(S301〜S307)において、L0参照ピクチャ、L0参照リスト、暫定L0参照リスト、list_entry_l0をそれぞれ、L1参照ピクチャ、L1参照リスト、暫定L1参照リスト、list_entry_l1と置き換えればよい。
上記では、図46において、現ピクチャ参照可能ピクチャ数が2の場合にRPL修正情報を省略する例を記載したが、それに限らない。現ピクチャ参照可能ピクチャ数が1の場合にRPL修正情報を省略してもよい。具体的には、参照ピクチャ情報復号部218におけるSHリスト修正情報の復号処理において、参照リスト並べ替え情報を図47に示すシンタックス表に基づいてパースする。図47は、スライスヘッダ復号時に利用される参照リスト並べ替え情報のシンタックス表を例示している。
[ピクチャ復号部11]
ピクチャ復号部11は、符号化データ#1、ヘッダ復号部10より入力されるヘッダ情報、復号ピクチャバッファ12に記録されている参照ピクチャ、および、参照ピクチャリスト導出部132より入力される参照ピクチャリストに基づいて、各ピクチャの局所復号画像を生成して復号ピクチャバッファ12に記録する。
ピクチャ復号部11は、符号化データ#1、ヘッダ復号部10より入力されるヘッダ情報、復号ピクチャバッファ12に記録されている参照ピクチャ、および、参照ピクチャリスト導出部132より入力される参照ピクチャリストに基づいて、各ピクチャの局所復号画像を生成して復号ピクチャバッファ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から入力された符号に基づいて、予測パラメータメモリ307に記憶された予測パラメータを参照してイントラ予測パラメータを生成する。イントラ予測パラメータとは、復号対象ブロックの予測画像をイントラ予測を用いて生成する際に必要な情報であり、例えば、イントラ予測モードIntraPredModeである。
イントラ予測パラメータ復号部304は、入力された符号から、デプスイントラ予測モードdmm_modeを復号する。イントラ予測パラメータ復号部304は、デプスイントラ予測モードdmm_modeを用いて、イントラ予測モードIntraPredModeを以下の式から生成する。
IntraPredMode = dmm_mode + 35
デプスイントラ予測モードdmm_modeが0または1、即ち、MODE_DMM_WFULLまたはMODE_DMM_WFULLDELTAを示している場合には、イントラ予測パラメータ復号部304は、入力された符号から、ウェッジレットパターンインデックスwedge_full_tab_idxを復号する。
デプスイントラ予測モード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を予測パラメータとする。
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を加算した値で各領域を埋めることにより予測ピクチャブロックを生成する。
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の構成について説明する。
次に、インター予測パラメータ復号部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、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は、予測パラメータを導出出来なかった際には、その旨をインターレイヤ変位マージ候補導出部に出力する。本マージ候補は、動き予測のインターレイヤ候補(インタービュー候補)でありインターレイヤマージ候補(動き予測)とも記載する。
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を復号する。
次に、インター予測パラメータ復号制御部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を用いて、隣接ブロックの参照ピクチャインデックスから隣接ブロックが変位ベクトルを備えるか否かを判定する。隣接ブロックが変位ベクトルを備える場合には、その変位ベクトルを出力する。隣接ブロックの予測パラメータに変位ベクトルが無い場合にはゼロベクトルを変位ベクトルとして出力する。
変位ベクトル取得部は、対象PUに隣接するブロックが変位ベクトルを持つ場合には、その変位ベクトルを予測パラメータメモリ307から抽出し、予測パラメータメモリ307を参照し、対象PUに隣接するブロックの予測フラグpredFlagLX、参照ピクチャインデックスrefIdxLXとベクトルmvLXを読み出す。変位ベクトル取得部は、内部にリファレンスレイヤ判定部303111を備える。変位ベクトル取得部は、対象PUに隣接するブロックの予測パラメータを順に読み出し、リファレンスレイヤ判定部303111を用いて、隣接ブロックの参照ピクチャインデックスから隣接ブロックが変位ベクトルを備えるか否かを判定する。隣接ブロックが変位ベクトルを備える場合には、その変位ベクトルを出力する。隣接ブロックの予測パラメータに変位ベクトルが無い場合にはゼロベクトルを変位ベクトルとして出力する。
(リファレンスレイヤ判定部303111)
リファレンスレイヤ判定部303111は、入力された参照ピクチャインデックスrefIdxLXに基づいて、参照ピクチャインデックスrefIdxLXが指す参照ピクチャと、対象ピクチャの関係を示すリファレンスレイヤ情報reference_layer_infoを定める。リファレンスレイヤ情報reference_layer_infoは、参照ピクチャへのベクトルmvLXが変位ベクトルであるか動きベクトルであるかを示す情報である。
リファレンスレイヤ判定部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が動きベクトルであると判定する。
リファレンスレイヤ判定部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、RefPOC(X, Y)は参照ピクチャインデックスX、参照ピクチャリストYで指定される参照ピクチャのPOCである。
なお、復号対象ピクチャのPOCと等しいPOCの参照ピクチャを参照することができる、ということは、その参照ピクチャのレイヤは、復号対象ピクチャのレイヤと異なることを意味する。従って、復号対象ピクチャのPOCと参照ピクチャのPOCが等しい場合には、インターレイヤ予測が行われた(変位ベクトル)、それ以外は同一レイヤ予測が行われた(動きベクトル)と判定する。
<第2の判定方法>
また、リファレンスレイヤ判定部303111は、参照ピクチャインデックスrefIdxLXが示す参照ピクチャに係る視点と復号対象ピクチャに係る視点が異なる場合に、ベクトルmvLXを変位ベクトルであると判定しても良い。具体的には、参照ピクチャインデックスrefIdxLXが示す参照ピクチャのビューIDview_idが復号対象ピクチャのビューIDview_idと異なる場合に、リファレンスレイヤ判定部303111は、ベクトルmvLXが変位ベクトルであると、例えば以下の式により判定する。
また、リファレンスレイヤ判定部303111は、参照ピクチャインデックスrefIdxLXが示す参照ピクチャに係る視点と復号対象ピクチャに係る視点が異なる場合に、ベクトルmvLXを変位ベクトルであると判定しても良い。具体的には、参照ピクチャインデックスrefIdxLXが示す参照ピクチャのビューIDview_idが復号対象ピクチャのビューIDview_idと異なる場合に、リファレンスレイヤ判定部303111は、ベクトルmvLXが変位ベクトルであると、例えば以下の式により判定する。
ViewID == ReflayerViewID (refIdxLX, ListX)
ここで、ViewIDは復号対象ピクチャのビューID、RefViewID(X, Y)は参照ピクチャインデックスX、参照ピクチャリストYで指定される参照ピクチャのビューIDである。
ここで、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が変位ベクトルであると、例えば以下の式により判定しても良い。
また、リファレンスレイヤ判定部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が動きベクトルであると判定する。
ここで、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を含んで構成される。
図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´と表現する。
動き変位補償部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は、残差予測フラグ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, PicWidthInSamplesL − 1, xP + x + (mvDisp[0] >> 2 ) )
xR1 = Clip3( 0, PicWidthInSamplesL − 1, xP + x + (mvDisp[0] >> 2 ) + 1 )
ここで、Clip3(x, y, z)は、zをx以上、y以下に制限(クリップ)する関数である。なお、mvDisp[0]
>> 2は、1/4ペル精度のベクトルにおいて整数成分を導出する式である。
xR1 = Clip3( 0, PicWidthInSamplesL − 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の残差をrefResSamplesL[ xR0, y ]、refResSamplesL[ xR1, y ]により取得する。残差フィルタ部30922は、推定残差deltaLを以下の式で導出する。
w1 = mvDisp[0] − ( ( mvDisp[0] >> 2 ) << 2 )
続いて、残差取得部30921は、残差格納部313から、画素R0、画素R1の残差をrefResSamplesL[ xR0, y ]、refResSamplesL[ xR1, y ]により取得する。残差フィルタ部30922は、推定残差deltaLを以下の式で導出する。
deltaL = ( w0 * refResSamplesL[ xR0, y ] + w1 * refResSamplesL[ xR1, y ] + 2 ) >> 2
上記処理は、変位ベクトルmvDispが小数精度を有する場合に、線形補間により画素を導出していたが、線形補間を用いず、近傍の整数画素を用いても良い。具体的には、残差取得部30921は、対象ブロックの画素に対応する画素として画素xR0のみを取得し、以下の式を用いて推定残差deltaLを導出しても良い。
上記処理は、変位ベクトルmvDispが小数精度を有する場合に、線形補間により画素を導出していたが、線形補間を用いず、近傍の整数画素を用いても良い。具体的には、残差取得部30921は、対象ブロックの画素に対応する画素として画素xR0のみを取得し、以下の式を用いて推定残差deltaLを導出しても良い。
deltaL =refResSamplesL[ xR0, y ]
(照度補償)
照度補償部3093は、照度補償フラグic_enable_flagが1の場合に、入力された動き変位補償画像predSamplesLXに対して、照度補償を行う。照度補償フラグic_enable_flagが0の場合には、入力された動き変位補償画像predSamplesLXをそのまま出力する。照度補償部3093に入力される動き変位補償画像predSamplesLXは、残差予測がオフの場合には、動き変位補償部3091の出力画像であり、残差予測がオンの場合には、残差予測部3092の出力画像である。照度補償は、予測画像生成の対象となる対象ブロックに隣接する隣接領域の動き変位画像の画素値と、隣接領域の復号画像の変化が、対象ブロック内の画素値と、対象ブロックの原画との変化に類似しているとの仮定に基づいて行われる。
(照度補償)
照度補償部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までの変数である。
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に示すテーブルである。
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)の画素である。
また、推定パラメータが上述の整数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)を画素ビット数に合わせる以下の式の処理を行う。
(重み予測)
重み予測部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)である。
ここで、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)である。
ここで、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は所定のシフト量を示す変数である。
ここで、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について、図29を参照して説明する。
(画像符号化装置の概要)
画像符号化装置2は、概略的に言えば、入力画像#10を符号化することによって符号化データ#1を生成し、出力する装置である。
画像符号化装置2は、概略的に言えば、入力画像#10を符号化することによって符号化データ#1を生成し、出力する装置である。
(画像符号化装置の構成)
本実施形態に係る画像符号化装置2の構成例について説明する。図29は、本実施形態に係る画像符号化装置2の構成を示す概略図である。画像符号化装置2は、ヘッダ符号化部10E、ピクチャ符号化部21、復号ピクチャバッファ12、参照ピクチャ決定部13Eを含んで構成される。画像符号化装置2は、複数のレイヤを含む画像において特定の時刻のピクチャから復号を開始する後述するランダムアクセス復号処理が可能である。
本実施形態に係る画像符号化装置2の構成例について説明する。図29は、本実施形態に係る画像符号化装置2の構成を示す概略図である。画像符号化装置2は、ヘッダ符号化部10E、ピクチャ符号化部21、復号ピクチャバッファ12、参照ピクチャ決定部13Eを含んで構成される。画像符号化装置2は、複数のレイヤを含む画像において特定の時刻のピクチャから復号を開始する後述するランダムアクセス復号処理が可能である。
[ヘッダ符号化部10E]
ヘッダ符号化部10Eは、入力画像#10に基づいて、NALユニットヘッダ、SPS、PPS、および、スライスヘッダなどをの、NALユニット単位、シーケンス単位、ピクチャ単位、またはスライス単位で復号に利用される情報を生成し、符号化して出力する。
ヘッダ符号化部10Eは、入力画像#10に基づいて、NALユニットヘッダ、SPS、PPS、および、スライスヘッダなどをの、NALユニット単位、シーケンス単位、ピクチャ単位、またはスライス単位で復号に利用される情報を生成し、符号化して出力する。
ヘッダ符号化部10Eは、符号化データ#1に含まれるVPSおよびSPSを既定のシンタックス定義に基づいてパースして、シーケンス単位で復号に利用される情報を符号化する。例えば、レイヤ数に関する情報がVPSに符号化され、復号画像の画像サイズに関連する情報がSPSに符号化される。
また、ヘッダ符号化部10Eは、符号化データ#1に含まれるスライスヘッダを既定のシンタックス定義に基づいてパースして、スライス単位で復号に利用される情報を符号化する。例えば、スライスタイプがスライスヘッダから符号化される。
図32に示すようにヘッダ符号化部10Eは、NALユニットヘッダ符号化部211E、VPS符号化部212E、レイヤ情報格納部213、ビューデプス導出部214、POC情報符号化部216E、スライスタイプ符号化部217E、参照ピクチャ情報符号化部218Eを備えている。
[NALユニットヘッダ符号化部211E]
図33は、NALユニットヘッダ符号化部211Eの概略的構成について示した機能ブロック図である。図33に示すように、NALユニットヘッダ符号化部211EはレイヤID符号化部2111EとNALユニットタイプ符号化部2112Eを含んで構成される。レイヤID符号化部2111Eは、符号化データにレイヤIDを符号化する。NALユニットタイプ符号化部2112Eは、符号化データにNALユニットタイプを符号化する。
図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を符号化する。
VPS符号化部212Eは、規定のシンタックス定義に基づいて、複数のレイヤで符号化に利用される情報を符号化データにVPSおよびVPS拡張として符号化する。例えば、VPSからは図20に示すシンタックス、VPS拡張から図21に示すシンタックスが符号化される。VPS拡張を符号化するために、フラグvps_extension_flagとして1を符号化する。
図34は、VPS符号化部212Eの概略的構成について示した機能ブロック図である。図34に示すように、VPS符号化部212Eはスケーラブルタイプ符号化部2121Eと次元ID符号化部2122E、依存レイヤ符号化部2123Eを含んで構成される。
VPS符号化部212Eは、図示しない内部のレイヤ数符号化部により、レイヤ数を示すシンタックス要素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までの値を取る。例えばレイヤ1が、レイヤ2、レイヤ3に依存する場合は、依存レイヤ数num_direct_ref_layers[1]=2であり、ref_layer_id [1][0]=2、ref_layer_id [1][1]=3を符号化する。
[参照ピクチャ決定部13E]
参照ピクチャ決定部13Eは、参照ピクチャ情報符号化部218Eと参照ピクチャセット決定部24と参照ピクチャリスト決定部25を内部に備える。
参照ピクチャ決定部13Eは、参照ピクチャ情報符号化部218Eと参照ピクチャセット決定部24と参照ピクチャリスト決定部25を内部に備える。
参照ピクチャセット決定部24は、入力画像#10と復号ピクチャバッファ12に記録されている局所復号画像に基づいて、符号化対象ピクチャの符号化及び局所復号に用いる参照ピクチャセットRPSを決定して出力する。
参照ピクチャリスト決定部25は、入力画像#10と参照ピクチャセットに基づいて、符号化対象ピクチャの符号化及び局所復号に用いる参照ピクチャリストRPLを決定して出力する。
[参照ピクチャ情報符号化部218E]
参照ピクチャ情報符号化部218Eは、ヘッダ符号化部10Eに含まれており、参照ピクチャセットRPSおよび参照ピクチャリストRPLに基づいて、参照ピクチャ情報符号化処理を行い、SPSおよびスライスヘッダに含める、RPS情報およびRPL修正情報を生成する。
参照ピクチャ情報符号化部218Eは、ヘッダ符号化部10Eに含まれており、参照ピクチャセットRPSおよび参照ピクチャリストRPLに基づいて、参照ピクチャ情報符号化処理を行い、SPSおよびスライスヘッダに含める、RPS情報およびRPL修正情報を生成する。
(画像復号装置との対応関係)
画像符号化装置2は、画像復号装置1の各構成と対応する構成を含む。ここで、対応とは、同様の処理、または、逆の処理を行う関係にあるということである。
画像符号化装置2は、画像復号装置1の各構成と対応する構成を含む。ここで、対応とは、同様の処理、または、逆の処理を行う関係にあるということである。
例えば、画像復号装置1が備える参照ピクチャ情報復号部218の参照ピクチャ情報復号処理と、画像符号化装置2が備える参照ピクチャ情報符号化部218Eの参照ピクチャ情報符号化処理とは、同様である。より詳細には、参照ピクチャ情報復号部218は、SPSやスライスヘッダから復号されるシンタックス値としてRPS情報や修正RPL情報を生成する。それに対し、参照ピクチャ情報符号化部218Eは、入力されたRPS情報や修正RPL情報を、SPSやスライスヘッダのシンタックス値として符号化する。
例えば、画像復号装置1において、ビット列から、シンタックス値を復号する処理は、画像符号化装置2において、シンタックス値から、ビット列を符号化する処理と逆の処理としての対応となっている。
(処理の流れ)
画像符号化装置2が、入力画像#10から出力符号化データ#1を生成する手順は次のとおりである。
(S21)入力画像#10を構成する各ピクチャ(対象ピクチャ)に対して、以下のS22〜S29の処理を実行する。
(S22)参照ピクチャセット決定部24は入力画像#10内の対象ピクチャと復号ピクチャバッファ12に記録されている局所復号画像に基づいて参照ピクチャセットRPSを決定して、参照ピクチャリスト決定部25に出力する。また、参照ピクチャセットRPSの生成に必要なRPS情報を導出して、参照ピクチャ情報符号化部218Eに出力する。
(S23)参照ピクチャリスト決定部25は入力画像#10内の対象ピクチャと入力された参照ピクチャセットRPSに基づいて参照ピクチャリストRPLを導出し、ピクチャ符号化部21、および、ピクチャ復号部11に出力する。また、参照ピクチャリストRPLの生成に必要なRPL修正情報を導出して、参照ピクチャ情報符号化部218Eに出力する。
(S24)参照ピクチャ情報符号化部218Eは、参照ピクチャセットRPSおよび参照ピクチャリストRPLに基づいて、SPS、または、スライスヘッダに含めるためのRPS情報およびRPL修正情報を生成する。
(S25)ヘッダ符号化部10Eは、入力画像#10、および、参照ピクチャ決定部13Eで生成されたRPS情報およびRPL修正情報に基づいて、対象ピクチャに適用するSPSを生成して出力する。
(S26)ヘッダ符号化部10Eは、入力画像#10に基づいて、対象ピクチャに適用するPPSを生成して出力する。
(S27)ヘッダ符号化部10Eは、入力画像#10、および、参照ピクチャ決定部13Eで生成されたRPS情報およびRPL修正情報に基づいて、対象ピクチャを構成する各スライスのスライスヘッダを符号化して、符号化データ#1の一部として外部に出力するとともに、ピクチャ復号部11に出力する。
(S28)ピクチャ符号化部21は、入力画像#10に基づいて、対象ピクチャを構成する各スライスのスライスデータを生成して、符号化データ#1の一部として外部に出力する。
(S29)ピクチャ符号化部21は、対象ピクチャの局所復号画像を生成し、対象ピクチャのレイヤIDとPOCに関連付けて復号ピクチャバッファに記録する。
画像符号化装置2が、入力画像#10から出力符号化データ#1を生成する手順は次のとおりである。
(S21)入力画像#10を構成する各ピクチャ(対象ピクチャ)に対して、以下のS22〜S29の処理を実行する。
(S22)参照ピクチャセット決定部24は入力画像#10内の対象ピクチャと復号ピクチャバッファ12に記録されている局所復号画像に基づいて参照ピクチャセットRPSを決定して、参照ピクチャリスト決定部25に出力する。また、参照ピクチャセットRPSの生成に必要なRPS情報を導出して、参照ピクチャ情報符号化部218Eに出力する。
(S23)参照ピクチャリスト決定部25は入力画像#10内の対象ピクチャと入力された参照ピクチャセットRPSに基づいて参照ピクチャリストRPLを導出し、ピクチャ符号化部21、および、ピクチャ復号部11に出力する。また、参照ピクチャリストRPLの生成に必要なRPL修正情報を導出して、参照ピクチャ情報符号化部218Eに出力する。
(S24)参照ピクチャ情報符号化部218Eは、参照ピクチャセットRPSおよび参照ピクチャリストRPLに基づいて、SPS、または、スライスヘッダに含めるためのRPS情報およびRPL修正情報を生成する。
(S25)ヘッダ符号化部10Eは、入力画像#10、および、参照ピクチャ決定部13Eで生成されたRPS情報およびRPL修正情報に基づいて、対象ピクチャに適用するSPSを生成して出力する。
(S26)ヘッダ符号化部10Eは、入力画像#10に基づいて、対象ピクチャに適用するPPSを生成して出力する。
(S27)ヘッダ符号化部10Eは、入力画像#10、および、参照ピクチャ決定部13Eで生成されたRPS情報およびRPL修正情報に基づいて、対象ピクチャを構成する各スライスのスライスヘッダを符号化して、符号化データ#1の一部として外部に出力するとともに、ピクチャ復号部11に出力する。
(S28)ピクチャ符号化部21は、入力画像#10に基づいて、対象ピクチャを構成する各スライスのスライスデータを生成して、符号化データ#1の一部として外部に出力する。
(S29)ピクチャ符号化部21は、対象ピクチャの局所復号画像を生成し、対象ピクチャのレイヤIDとPOCに関連付けて復号ピクチャバッファに記録する。
[POC情報符号化部216E]
図48は、POC情報符号化部216Eの概略的構成について示した機能ブロック図である。図48に示すように、POC情報符号化部216Eは、POC設定部2165、POC下位ビット最大値符号化部2161E、POC下位ビット符号化部2162Eを含んで構成される。POC情報符号化部216Eは、POCの上位ビットPicOrderCntMsbとPOCの下位ビットpic_order_cnt_lsbに分離して符号化される。
図48は、POC情報符号化部216Eの概略的構成について示した機能ブロック図である。図48に示すように、POC情報符号化部216Eは、POC設定部2165、POC下位ビット最大値符号化部2161E、POC下位ビット符号化部2162Eを含んで構成される。POC情報符号化部216Eは、POCの上位ビットPicOrderCntMsbとPOCの下位ビットpic_order_cnt_lsbに分離して符号化される。
POC設定部2165は、同じ時刻の全てのレイヤのピクチャに対して、共通の時刻TIMEを設定する。さらに、POC設定部2165は、対象ピクチャの時刻TIME(共通時刻TIME)に基づいて、対象ピクチャのPOCを設定する。具体的には、対象レイヤのピクチャがPOCを符号化するRAPピクチャである場合(BLAピクチャもしくはIDRピクチャ)において、POCを0に設定し、このときの時刻TIMEを変数TIME_BASEに設定する。TIME_BASEは、POC設定部2165で記録する。
対象レイヤのピクチャがPOCを符号化するRAPピクチャでない場合には時刻TIMEからTIME_BASEを引いた値をPOCに設定する。
POC下位ビット最大値符号化部2161Eは、全てのレイヤにおいて共通のPOC下位ビット最大値MaxPicOrderCntLsbを設定する。符号化データ#1に設定されたPOC下位ビット最大値MaxPicOrderCntLsbを符号化する。具体的には、POC下位ビット最大値MaxPicOrderCntLsbの対数から定数4を引いた値をlog2_max_pic_order_cnt_lsb_minus4として符号化する。
全てのレイヤで共通のPOC下位ビット最大値MaxPicOrderCntLsbを設定することにより、既に説明したPOC下位ビット最大値制限を有する符号化データを生成することができる。
上記POC下位ビット最大値制限を有する符号化データ構造によれば、同じ時刻を有する複数のレイヤにおいて、表示時刻POC(POC上位ビット)の更新が同じ時刻のピクチャで行われるため、同じ時刻を有する複数のレイヤのピクチャ間で同じ表示時刻POCを有することができる。これにより、参照ピクチャリストにおける、対象レイヤとは異なるレイヤのピクチャを参照ピクチャとして用いる場合の参照ピクチャ管理、および、3次元画像再生のような、複数のレイヤを同期して再生させる場合に、表示タイミングをピクチャの時刻を用いて管理する場合などにおいて、同じ時刻のピクチャであることをPOCを用いて管理することが可能となり、参照ピクチャの探索および同期が容易になるという効果を奏する。
POC下位ビット符号化部2162Eは、POC設定部2165から入力された対象ピクチャのPOCから、対象ピクチャのPOC下位ビットpic_order_cnt_lsbを符号化する。具体的には、入力されたPOCのPOC下位ビット最大値MaxPicOrderCntLsbによる剰余、POC%MaxPicOrderCntLsb(もしくはPOC&(MaxPicOrderCntLsb−1))により、POC下位ビットpic_order_cnt_lsbを求め、対象ピクチャのスライスヘッダにpic_order_cnt_lsbを符号化する。
上記POC設定部2165を備える符号化装置によれば、同じ時刻の全てのレイヤのピクチャに対して、共通の時刻TIMEを設定し、POC下位ビット最大値符号化部2161Eにおいて、全てのレイヤにおいて共通のPOC下位ビット最大値MaxPicOrderCntLsbを設定することにより、既に説明したPOC下位ビットpic_order_cnt_lsbを有する符号化データを生成することができる。
上記POC下位ビット制限を有する符号化データ構造によれば、同じ時刻を有する複数のレイヤにおいて、表示時刻POCの下位ビットが同じ時刻のピクチャ間で同一となるため、同じ時刻を有する複数のレイヤのピクチャ間で同じ表示時刻POCを有することができる。これにより、参照ピクチャリストにおける、対象レイヤとは異なるレイヤのピクチャを参照ピクチャとして用いる場合の参照ピクチャ管理、および、3次元画像再生のような、複数のレイヤを同期して再生させる場合に、表示タイミングをピクチャの時刻を用いて管理する場合などにおいて、同じ時刻のピクチャであることをPOCを用いて管理することが可能となり、参照ピクチャの探索および同期が容易になるという効果を奏する。
[POC制限]
(第1のNALユニットタイプ制限)
既に説明したように、本実施形態の符号化データ構造では、第1のNALユニットタイプ制限として、全ての同じ時刻を有する全てのレイヤのピクチャ、すなわち、同じアクセスユニットの全てのレイヤのピクチャは同じNALユニットタイプを有しなければならないという制限を設ける。本実施形態のNALユニットタイプ符号化部2112Eは、第1のNALユニットタイプ制限を備える符号化データを符号化するために、対象ピクチャがレイヤID=0以外のレイヤである場合、同じ時刻のレイヤID=0のピクチャのNALユニットタイプを、対象レイヤのNALユニットタイプとして符号化する。
(第1のNALユニットタイプ制限)
既に説明したように、本実施形態の符号化データ構造では、第1のNALユニットタイプ制限として、全ての同じ時刻を有する全てのレイヤのピクチャ、すなわち、同じアクセスユニットの全てのレイヤのピクチャは同じNALユニットタイプを有しなければならないという制限を設ける。本実施形態のNALユニットタイプ符号化部2112Eは、第1のNALユニットタイプ制限を備える符号化データを符号化するために、対象ピクチャがレイヤID=0以外のレイヤである場合、同じ時刻のレイヤID=0のピクチャのNALユニットタイプを、対象レイヤのNALユニットタイプとして符号化する。
(第2のNALユニットタイプ制限)
既に説明したように、本実施形態の符号化データ構造では、第2のNALユニットタイプ制限として、レイヤIDが0のピクチャが、POCを初期化するRAPである場合(IDRピクチャもしくはBLAピクチャである場合)には、同じ時刻を有する全てのレイヤのピクチャ、すなわち、同じアクセスユニットの全てのレイヤのピクチャは、POCを初期化するピクチャであるRAPピクチャのNALユニットタイプを有しなければならないという制限を設ける。本実施形態のNALユニットタイプ符号化部2112Eは、第2のNALユニットタイプ制限を備える符号化データを符号化するために、対象ピクチャがレイヤID=0以外のレイヤである場合、かつ、レイヤID=0のピクチャのNALユニットタイプがPOCを初期化するRAPである場合、レイヤID=0のピクチャのNALユニットタイプを対象レイヤのNALユニットタイプとして符号化する。
既に説明したように、本実施形態の符号化データ構造では、第2のNALユニットタイプ制限として、レイヤIDが0のピクチャが、POCを初期化するRAPである場合(IDRピクチャもしくはBLAピクチャである場合)には、同じ時刻を有する全てのレイヤのピクチャ、すなわち、同じアクセスユニットの全てのレイヤのピクチャは、POCを初期化するピクチャであるRAPピクチャのNALユニットタイプを有しなければならないという制限を設ける。本実施形態のNALユニットタイプ符号化部2112Eは、第2のNALユニットタイプ制限を備える符号化データを符号化するために、対象ピクチャがレイヤID=0以外のレイヤである場合、かつ、レイヤID=0のピクチャのNALユニットタイプがPOCを初期化するRAPである場合、レイヤID=0のピクチャのNALユニットタイプを対象レイヤのNALユニットタイプとして符号化する。
(第2のPOC上位ビット導出部2163B)
第2のPOC上位ビット導出部2163Bを有する画像符号化装置は、POC情報符号化部216E中のPOC上位ビット導出部2163を以下に説明するPOC上位ビット導出部2163Bに置き換えることで構成され、他の手段は既に説明した手段を用いる。
第2のPOC上位ビット導出部2163Bを有する画像符号化装置は、POC情報符号化部216E中のPOC上位ビット導出部2163を以下に説明するPOC上位ビット導出部2163Bに置き換えることで構成され、他の手段は既に説明した手段を用いる。
POC上位ビット導出部2163Bは、対象ピクチャがレイヤIDが0の場合には、NALユニットヘッダ符号化部211Eから入力された対象ピクチャのNALユニットタイプが、POCの初期化が必要なRAPピクチャであることを示す場合(BLAもしくはIDRの場合)に、以下の式によりPOC上位ビットPicOrderCntMsbを0に初期化する。
PicOrderCntMsb=0
対象ピクチャがレイヤIDが0の以外の場合には、対象ピクチャと同じ時刻のレイヤIDが0のピクチャのNALユニットタイプが、POCの初期化が必要なRAPピクチャであることを示す場合(BLAもしくはIDRの場合)に、以下の式によりPOC上位ビットPicOrderCntMsbを0に初期化する。
対象ピクチャがレイヤIDが0の以外の場合には、対象ピクチャと同じ時刻のレイヤIDが0のピクチャのNALユニットタイプが、POCの初期化が必要なRAPピクチャであることを示す場合(BLAもしくはIDRの場合)に、以下の式によりPOC上位ビットPicOrderCntMsbを0に初期化する。
PicOrderCntMsb=0
第2のPOC上位ビット導出部2163Bを有する画像符号化装置によれば、同じ時刻を有する複数のレイヤにおいて、表示時刻POCの初期化が、レイヤIDが0のピクチャと同じ時刻のピクチャで行われるため、同じ時刻を有する複数のレイヤのピクチャ間で表示時刻POCを有することができる。これにより、参照ピクチャリストにおける、対象レイヤとは異なるレイヤのピクチャを参照ピクチャとして用いる場合の参照ピクチャ管理、および、3次元画像再生のような、複数のレイヤを同期して再生させる場合に、表示タイミングをピクチャの時刻を用いて管理する場合などにおいて、同じ時刻のピクチャであることをPOCを用いて管理することが可能となり、参照ピクチャの探索および同期が容易になるという効果を奏する。
第2のPOC上位ビット導出部2163Bを有する画像符号化装置によれば、同じ時刻を有する複数のレイヤにおいて、表示時刻POCの初期化が、レイヤIDが0のピクチャと同じ時刻のピクチャで行われるため、同じ時刻を有する複数のレイヤのピクチャ間で表示時刻POCを有することができる。これにより、参照ピクチャリストにおける、対象レイヤとは異なるレイヤのピクチャを参照ピクチャとして用いる場合の参照ピクチャ管理、および、3次元画像再生のような、複数のレイヤを同期して再生させる場合に、表示タイミングをピクチャの時刻を用いて管理する場合などにおいて、同じ時刻のピクチャであることをPOCを用いて管理することが可能となり、参照ピクチャの探索および同期が容易になるという効果を奏する。
[スライスタイプ符号化部217E]
スライスタイプ符号化部217Eは、符号化データ#1にスライスタイプslice_typeを符号化する。
スライスタイプ符号化部217Eは、符号化データ#1にスライスタイプslice_typeを符号化する。
[スライスタイプ制限]
本実施形態では、符号化データの制限として以下の制限を行う。本実施形態の第1の符号化データの制限、ベースレイヤの場合(レイヤIDが0の場合)かつNALユニットタイプがランダムアクセスピクチャ(RAP)の場合、すなわち、BLA、IDR、CRAの場合には、スライスタイプslice_typeをイントラスライスI_SLICEとして符号化し、レイヤIDが0以外の場合にはスライスタイプを制限せずに符号化する。
本実施形態では、符号化データの制限として以下の制限を行う。本実施形態の第1の符号化データの制限、ベースレイヤの場合(レイヤIDが0の場合)かつNALユニットタイプがランダムアクセスピクチャ(RAP)の場合、すなわち、BLA、IDR、CRAの場合には、スライスタイプslice_typeをイントラスライスI_SLICEとして符号化し、レイヤIDが0以外の場合にはスライスタイプを制限せずに符号化する。
以上のようなレイヤIDに依存したスライスタイプの値の範囲の制限によれば、レイヤIDが0のレイヤのピクチャにおいては、NALユニットタイプがランダムアクセスピクチャ(RAP)の場合において、スライスタイプをイントラスライスI_SLICEに制限し、レイヤIDが0以外のレイヤのピクチャにおいては、NALユニットタイプがランダムアクセスピクチャ(RAP)の場合においても、スライスタイプとしてイントラスライスI_SLICEに制限しない。そのため、レイヤIDが0以外のレイヤのピクチャにおいては、NALユニットタイプがランダムアクセスピクチャ(RAP)の場合においても、同じ表示時刻のレイヤIDが0のピクチャを参照画像として用いることができるため、符号化効率が向上する、という効果を奏する。
また、以上のようなレイヤIDに依存したスライスタイプの値の範囲の制限によれば、レイヤIDが0がランダムアクセスピクチャである場合に、同じ表示時刻のレイヤIDが0以外のピクチャを、符号化効率を低下させることなく、ランダムアクセスピクチャ(RAP)とすることができるため、ランダムアクセスが容易になるという効果を奏する。また、IDRもしくはBLAのNALユニットタイプの場合にPOCを初期化する構成において、異なるレイヤ間でPOCの初期化タイミングを同一にするには、レイヤIDが0がIDRもしくはBLAの場合には、レイヤIDが0以外のレイヤでも、IDRもしくはBLAにする必要があるが、この場合でも、レイヤIDが0以外のレイヤのピクチャにおいて、NALユニットタイをPOCの初期化を行うIDRもしくはBLAとしたまま、同じ表示時刻のレイヤIDが0のピクチャを参照画像として用いることができるため、符号化効率が向上する、という効果を奏する。
(ピクチャ符号化部21の構成)
次に、本実施形態に係るピクチャ符号化部21の構成について説明する。図30は、本実施形態に係るピクチャ符号化部21の構成を示すブロック図である。ピクチャ符号化部21は、予測画像生成部101、減算部102、DCT・量子化部103、エントロピー符号化部104、逆量子化・逆DCT部105、加算部106、予測パラメータメモリ108、符号化パラメータ決定部110、予測パラメータ符号化部111を含んで構成される。予測パラメータ符号化部111は、インター予測パラメータ符号化部112及びイントラ予測パラメータ符号化部113を含んで構成される。
次に、本実施形態に係るピクチャ符号化部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が生成した予測パラメータを、符号化対象のピクチャ及びブロック毎に予め定めた位置に記憶する。
符号化パラメータ決定部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に対応する手段である。
次に、インター予測パラメータ符号化部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に出力する。
〔まとめ〕
第1の構成の画像復号装置によれば、NALユニットヘッダからレイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを復号するNALユニットヘッダ復号部を備え、上記NALユニットヘッダ復号部で復号される、上記レイヤIDが0以外のピクチャのnal_unit_typeは、上記レイヤIDが0以外のピクチャに対応するレイヤIDが0のピクチャのnal_unit_typeと等しいことを特徴とする。
第1の構成の画像復号装置によれば、NALユニットヘッダからレイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを復号するNALユニットヘッダ復号部を備え、上記NALユニットヘッダ復号部で復号される、上記レイヤIDが0以外のピクチャのnal_unit_typeは、上記レイヤIDが0以外のピクチャに対応するレイヤIDが0のピクチャのnal_unit_typeと等しいことを特徴とする。
第1の構成の符号化データ構造によれば、NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データにおいて、上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを含み、レイヤIDが0以外のNALユニットヘッダは、同じ表示時刻のレイヤIDが0のNALユニットヘッダと同じnal_unit_typeを含まなくてならない、という制限を有することを特徴とする。
上記、第1の構成の画像復号装置および符号化データ構造によれば、レイヤIDが0のピクチャと、レイヤIDが0以外のピクチャが同じnal_unit_typeを含むため、レイヤIDが0のピクチャが、ランダムアクセスポイントである場合には、レイヤIDが0以外のピクチャもランダムアクセスポイントとなり、レイヤIDに関わらず同じ時刻のポイントから、復号を開始することができるため、ランダムアクセス性能が向上するという効果を奏する。
さらに、レイヤIDが0のピクチャが、ランダムアクセスポイントである場合には、レイヤIDが0以外のピクチャもランダムアクセスポイントとなり、レイヤIDに関わらず同じポイントから、復号を開始することができるため、ランダムアクセス性能が向上するという効果を奏する。
第2の構成の画像復号装置によれば、1NALユニットヘッダからレイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを復号するNALユニットヘッダ復号部を備え、上記レイヤIDが0かつ上記nal_unit_typeがRAPピクチャの場合には、上記NALユニットヘッダ復号部で復号される、上記レイヤIDが0に対応するレイヤIDが0以外のピクチャのnal_unit_typeは、上記レイヤIDが0のnal_unit_typeと等しいことを特徴とする。
第2の構成の符号化データ構造によれば、NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データにおいて、上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを含み、レイヤIDが0以外のNALユニットヘッダは、同じ時刻のレイヤIDが0のNALユニットヘッダが、表示時刻を初期化する必要を要するRAPピクチャ(BLAもしくはIDR)のNALユニットタイプnal_unit_typeを含む場合には、同じ表示時刻のレイヤIDが0のNALユニットヘッダと同じnal_unit_typeを含まなくてならない、という制限を有することを特徴とする。
第2の構成の画像復号装置および第2の構成の符号化データ構造によれば、レイヤIDが0のピクチャがランダムアクセスポイントである場合には、レイヤIDが0以外のピクチャもランダムアクセスポイントとなり、レイヤIDに関わらず同じ箇所から、復号を開始することができるため、ランダムアクセス性能が向上するという効果を奏する。
第3の構成の画像復号装置によれば、NALユニットヘッダからレイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを復号するNALユニットヘッダ復号部と、スライスヘッダから、イントラスライスもしくは1つ以上のインタースライスのいずれかを示すスライスタイプを復号するスライスヘッダ復号部を備え、上記レイヤIDが0かつ上記NALユニットタイプnal_unit_typeがRAPピクチャの場合には、上記スライスヘッダ復号部により復号されるスライスタイプはイントラスライスであり、さらに、上記レイヤIDが0以外かつ上記nal_unit_typeがRAPピクチャの場合には、上記スライスヘッダ復号部により復号されるスライスタイプはイントラスライスとインタースライスであることを特徴とする。
第3の構成の符号化データ構造によれば、さらに、スライスタイプを規定するスライスヘッダを含み、さらに、上記スライスヘッダは、レイヤIDが0のスライスの場合には、イントラスライスである制限を有し、レイヤIDが0以外のスライスの場合には、イントラスライスであるという制限がないことを特徴とする符号化データ。
第3の構成の画像復号装置および第3の構成の符号化データ構造によれば、ランダムアクセス性能を保ちながら、レイヤIDが0以外のスライスにおいて、レイヤIDが0のピクチャの復号画像を参照するような、インター予測を用いることができるため、符号化効率が向上するという効果を奏する。
第4の構成の画像復号装置はNALユニットヘッダからレイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを復号するNALユニットヘッダ復号部と、ピクチャパラメータセットから、表示時刻POCの下位ビット最大値MaxPicOrderCntLsbを復号するPOC下位ビット最大値復号部と、
スライスヘッダから、表示時刻POCの下位ビットpic_order_cnt_lsbを復号するPOC下位ビット復号部と、上記NALユニットタイプnal_unit_typeと上記POC下位ビット最大値MaxPicOrderCntLsbと、上記POC下位ビットpic_order_cnt_lsbからPOC上位ビットを導出するPOC上位ビット導出部と、上記POC上位ビットと上記POC下位ビットの和から表示時刻POCを導出するPOC加算部を備える。
スライスヘッダから、表示時刻POCの下位ビットpic_order_cnt_lsbを復号するPOC下位ビット復号部と、上記NALユニットタイプnal_unit_typeと上記POC下位ビット最大値MaxPicOrderCntLsbと、上記POC下位ビットpic_order_cnt_lsbからPOC上位ビットを導出するPOC上位ビット導出部と、上記POC上位ビットと上記POC下位ビットの和から表示時刻POCを導出するPOC加算部を備える。
第4の構成の符号化データ構造はNALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データにおいて、上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを含み、上記NALユニットデータに含まれるピクチャパラメータセットは、表示時刻POCの下位ビット最大値MaxPicOrderCntLsbを含み、上記NALユニットデータに含まれるスライスデータは、スライスヘッダとスライスデータから構成され、上記スライスデータは、表示時刻POCの下位ビットpic_order_cnt_lsbを含む符号化データにおいて、全てのレイヤにおいて、同じアクセスユニットに格納される、全てのNALユニットは、その含まれるスライスヘッダにおいて、同じ表示時刻POCを含むことを特徴とする。
第4の構成の画像復号装置および第4の構成の符号化データ構造によれば、によれば、同じ時刻を有するNALユニットが同じ表示時刻(POC)を有することが保障されるため、異なるレイヤ間で同じ時刻を有するピクチャであるかの判定を、表示時刻POCを用いて行うことができる。これにより、同じ時刻間で復号画像を参照することが可能になるという効果を奏する。
第5の構成の符号化データ構造は、さらに、レイヤIDが0以外のNALユニットヘッダは、同じ表示時刻のレイヤIDが0のNALユニットヘッダが、表示時刻を初期化する必要を要するピクチャのNALユニットタイプnal_unit_typeを含む場合には、同じ表示時刻のレイヤIDが0のNALユニットヘッダと同じnal_unit_typeを含まなくてならない、という制限を有する第4の構成の符号化データ構造。
さらに第5の構成の符号化データ構造によれば、レイヤIDが0のピクチャがIDRもしくはBLAのランダムアクセスポイントであり表示時刻POCが初期化される場合には、レイヤIDが0以外のピクチャも同じようなランダムアクセスポイントとなり、表示時刻POCが初期化される。そのため、レイヤ間で表示時刻POCを一致させることが可能になるという効果を奏する。
第6の構成の符号化データ構造は、さらに全てのレイヤにおいて、同じアクセスユニットに格納される、全てのNALユニットは、対応するピクチャパラメータセットにおいて、同じ下位ビット最大値MaxPicOrderCntLsbを含まなくてはならない、という制限と、全てのレイヤにおいて、同じアクセスユニットに格納される、全てのNALユニットは、その含まれるスライスヘッダにおいて、同じ表示時刻POC下位ビットpic_order_cnt_lsbを含まなくてはならない、という制限を有する第4の構成の符号化データ構造。
第6の構成の符号化データ構造によれば、異なるレイヤ間で同じ下位ビット最大値MaxPicOrderCntLsbを持つことが保障される。そのため、表示時刻POC下位ビットの値に応じて、POCが更新される場合に同じ値に更新され、異なるレイヤ間で表示時刻POCの上位ビットが等しい値になる。さらに、異なるレイヤ間で表示時刻POC下位ビットが等しいことが保障される。そのため、異なるレイヤ間で表示時刻POCの上位ビットと下位ビットが等しい、すなわち、異なるレイヤ間で同じ表示時刻POCを有するという効果を奏する。
第7の構成の画像復号装置は、NALユニットヘッダからレイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを復号するNALユニットヘッダ復号部と、ピクチャパラメータセットから、表示時刻POCの上記下位ビット最大値MaxPicOrderCntLsbを復号するPOC下位ビット最大値復号部と、スライスヘッダから、表示時刻POCの下位ビットpic_order_cnt_lsbを復号するPOC下位ビット復号部と、上記NALユニットタイプnal_unit_typeと上記POC下位ビット最大値MaxPicOrderCntLsbと、上記POCの下位ビットpic_order_cnt_lsbからPOCの上位ビットを導出するPOC上位ビット導出部と、上記POCの上位ビットと上記POCの下位ビットの和から表示時刻POCを導出するPOC加算部を備え、上記POC上位ビット導出部は、レイヤIDが0であるピクチャのNALユニットタイプnal_unit_typeがPOCを初期化するRAPピクチャ(BLAもしくはIDR)である場合に、対象レイヤのPOCの初期化を行うことを特徴とする。
第7の構成の画像復号装置によれば、複数のレイヤID間において、NALユニットタイプnal_unit_typeが異なる場合においても、異なるレイヤ間で同じタイミングでPOCの初期化が行われるため、異なるレイヤ間で同じ表示時刻POCを有することができるという効果を奏する。
なお、上述した実施形態における画像符号化装置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 ヘッダ復号部
10E ヘッダ符号化部
11 ピクチャ復号部
12 復号ピクチャバッファ
13 参照ピクチャ管理部
131 参照ピクチャセット設定部
132 参照ピクチャリスト導出部
13E 参照ピクチャ決定部
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ユニットタイプ復号部
2123 依存レイヤID復号部
211E NALユニットヘッダ符号化部
2111E レイヤID符号化部
2112E NALユニットタイプ符号化部
2123E 依存レイヤ符号化部
212 VPS復号部
2121 スケーラブルタイプ復号部
2122 次元ID復号部
212E VPS符号化部
2121E スケーラブルタイプ符号化部
2122E 次元ID符号化部
213 レイヤ情報格納部
214 ビューデプス導出部
216 POC情報復号部
216E POC情報符号化部
2161 POC下位ビット最大値復号部
2161E POC下位ビット最大値符号化部
2162 POC下位ビット復号部
2162E POC下位ビット符号化部
2163 POC上位ビット導出部
2163B POC上位ビット導出部
2164 POC加算部
2165 POC設定部
217 スライスタイプ復号部
217E スライスタイプ符号化部
218 参照ピクチャ情報復号部
218E 参照ピクチャ情報符号化部
24 参照ピクチャセット決定部
25 参照ピクチャリスト決定部
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 残差格納部
2 画像符号化装置
3 ネットワーク
4 画像表示装置
5 画像伝送システム
10 ヘッダ復号部
10E ヘッダ符号化部
11 ピクチャ復号部
12 復号ピクチャバッファ
13 参照ピクチャ管理部
131 参照ピクチャセット設定部
132 参照ピクチャリスト導出部
13E 参照ピクチャ決定部
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ユニットタイプ復号部
2123 依存レイヤID復号部
211E NALユニットヘッダ符号化部
2111E レイヤID符号化部
2112E NALユニットタイプ符号化部
2123E 依存レイヤ符号化部
212 VPS復号部
2121 スケーラブルタイプ復号部
2122 次元ID復号部
212E VPS符号化部
2121E スケーラブルタイプ符号化部
2122E 次元ID符号化部
213 レイヤ情報格納部
214 ビューデプス導出部
216 POC情報復号部
216E POC情報符号化部
2161 POC下位ビット最大値復号部
2161E POC下位ビット最大値符号化部
2162 POC下位ビット復号部
2162E POC下位ビット符号化部
2163 POC上位ビット導出部
2163B POC上位ビット導出部
2164 POC加算部
2165 POC設定部
217 スライスタイプ復号部
217E スライスタイプ符号化部
218 参照ピクチャ情報復号部
218E 参照ピクチャ情報符号化部
24 参照ピクチャセット決定部
25 参照ピクチャリスト決定部
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 (7)
- スライスタイプを規定するスライスヘッダを含み、さらに、上記スライスヘッダは、レイヤIDが0のスライスの場合には、イントラスライスである制限を有し、レイヤIDが0以外のスライスの場合には、イントラスライスであるという制限がないことを特徴とする符号化データ構造。
- NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データ構造において、
上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを含み、
上記NALユニットデータに含まれるピクチャパラメータセットは、表示時刻POCの下位ビット最大値MaxPicOrderCntLsbを含み、
上記NALユニットデータに含まれるスライスデータは、スライスヘッダとスライスデータから構成され、
上記スライスデータは、上記表示時刻POCの下位ビットpic_order_cnt_lsbを含む符号化データにおいて、
全てのレイヤにおいて、同じアクセスユニットに格納される、全てのNALユニットは、その含まれるスライスヘッダにおいて、同じ表示時刻POCを含むことを特徴とする符号化データ構造。 - 上記符号化データ構造において、さらに、
レイヤIDが0以外のNALユニットヘッダは、同じ値の表示時刻POCを有するレイヤIDが0のNALユニットヘッダが、表示時刻POCを初期化する必要を要するピクチャのNALユニットタイプnal_unit_typeを含む場合には、上記表示時刻POCのレイヤIDが0のピクチャのNALユニットヘッダが有するnal_unit_typeと同じnal_unit_typeを含まなくてならない、という制限を有する請求項2に記載の符号化データ構造。 - 上記符号化データ構造において、さらに
全てのレイヤにおいて、同じアクセスユニットに格納される、全てのNALユニットは、対応するピクチャパラメータセットにおいて、同じ下位ビット最大値MaxPicOrderCntLsbを含まなくてはならない、という制限と、
全てのレイヤにおいて、同じアクセスユニットに格納される、全てのNALユニットは、その含まれるスライスヘッダにおいて、同じ表示時刻POCの下位ビットpic_order_cnt_lsbを含まなくてはならない、という制限を有する請求項2に記載の符号化データ構造。 - NALユニットヘッダからレイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを復号するNALユニットヘッダ復号部と、
ピクチャパラメータセットから、表示時刻POCの下位ビット最大値MaxPicOrderCntLsbを復号するPOC下位ビット最大値復号部と、
スライスヘッダから、上記表示時刻POCの下位ビットpic_order_cnt_lsbを復号するPOC下位ビット復号部と、
上記NALユニットタイプnal_unit_typeと上記表示時刻POCの下位ビット最大値MaxPicOrderCntLsbと、上記表示時刻POCの下位ビットpic_order_cnt_lsbから上記表示時刻POCの上位ビットを導出するPOC上位ビット導出部と、
上記表示時刻POCの上位ビットと上記表示時刻POCの下位ビットの和から上記表示時刻POCを導出するPOC加算部を備え、
上記POC上位ビット導出部は、レイヤIDが0であるピクチャのNALユニットタイプnal_unit_typeが上記表示時刻POCを初期化する必要を要するRAPピクチャ(BLAもしくはIDR)である場合に、対象レイヤの上記表示時刻POCの初期化を行うことを特徴とする画像復号装置。 - NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データ構造において、
上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを含み、
レイヤIDが0以外のピクチャのNALユニットヘッダは、同じ表示時刻POCのレイヤIDが0のピクチャのNALユニットヘッダと同じnal_unit_typeを含まなくてならない、という制限を有する符号化データ構造。 - NALユニットヘッダとNALユニットデータを単位(NALユニット)とし、1つ以上のNALユニットから構成される符号化データ構造において、
上記NALユニットヘッダは、レイヤIDと、NALユニットの種類を規定するNALユニットタイプnal_unit_typeを含み、
レイヤIDが0以外のピクチャのNALユニットヘッダは、前記ピクチャと同じ出力時刻のレイヤIDが0のピクチャのNALユニットヘッダが、表示時刻POCを初期化する必要を要するRAPピクチャ(BLAもしくはIDR)のNALユニットタイプnal_unit_typeを含む場合には、同じ表示時刻POCのレイヤIDが0のピクチャのNALユニットヘッダと同じnal_unit_typeを含まなくてならない、という制限を有する符号化データ構造。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012286712 | 2012-12-28 | ||
JP2012286712 | 2012-12-28 | ||
PCT/JP2013/080245 WO2014103529A1 (ja) | 2012-12-28 | 2013-11-08 | 画像復号装置、およびデータ構造 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2014103529A1 true JPWO2014103529A1 (ja) | 2017-01-12 |
Family
ID=51020628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014554222A Pending JPWO2014103529A1 (ja) | 2012-12-28 | 2013-11-08 | 画像復号装置、およびデータ構造 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20150326866A1 (ja) |
JP (1) | JPWO2014103529A1 (ja) |
WO (1) | WO2014103529A1 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140121315A (ko) * | 2013-04-04 | 2014-10-15 | 한국전자통신연구원 | 참조 픽처 리스트를 이용한 다 계층 기반의 영상 부호화/복호화 방법 및 그 장치 |
US9525883B2 (en) * | 2013-07-15 | 2016-12-20 | Qualcomm Incorporated | Cross-layer alignment of intra random access point pictures |
US9912943B2 (en) * | 2013-07-15 | 2018-03-06 | Qualcomm Incorporated | Signaling of bit rate information and picture rate information in VPS |
US9794558B2 (en) * | 2014-01-08 | 2017-10-17 | Qualcomm Incorporated | Support of non-HEVC base layer in HEVC multi-layer extensions |
US10412387B2 (en) | 2014-08-22 | 2019-09-10 | Qualcomm Incorporated | Unified intra-block copy and inter-prediction |
AU2015327521B2 (en) * | 2014-09-30 | 2018-07-26 | Hfi Innovation Inc. | Method of lookup table size reduction for depth modelling mode in depth coding |
US9918105B2 (en) * | 2014-10-07 | 2018-03-13 | Qualcomm Incorporated | Intra BC and inter unification |
EP3148190A1 (en) * | 2015-09-25 | 2017-03-29 | Thomson Licensing | Method and apparatus for intra prediction in video encoding and decoding |
US10681347B2 (en) * | 2015-09-29 | 2020-06-09 | Lg Electronics Inc. | Method and apparatus of filtering image in image coding system |
US10812822B2 (en) * | 2015-10-02 | 2020-10-20 | Qualcomm Incorporated | Intra block copy merge mode and padding of unavailable IBC reference region |
JP6238255B2 (ja) | 2016-05-25 | 2017-11-29 | 株式会社Nexpoint | 監視カメラシステムによる監視方法及び動画分割装置 |
WO2018066980A1 (ko) * | 2016-10-04 | 2018-04-12 | 김기백 | 영상 데이터 부호화/복호화 방법 및 장치 |
US11284076B2 (en) * | 2017-03-22 | 2022-03-22 | Electronics And Telecommunications Research Institute | Block form-based prediction method and device |
KR20230165889A (ko) | 2018-08-17 | 2023-12-05 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 비디오 코딩의 참조 픽처 관리 |
CN110070541B (zh) * | 2019-04-30 | 2022-09-30 | 合肥工业大学 | 一种适用于小样本数据的图像质量评价方法 |
JP7267885B2 (ja) * | 2019-09-20 | 2023-05-02 | Kddi株式会社 | 画像復号装置、画像復号方法及びプログラム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7586924B2 (en) * | 2004-02-27 | 2009-09-08 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Apparatus and method for coding an information signal into a data stream, converting the data stream and decoding the data stream |
US20100246683A1 (en) * | 2009-03-27 | 2010-09-30 | Jennifer Lois Harmon Webb | Error Resilience in Video Decoding |
-
2013
- 2013-11-08 JP JP2014554222A patent/JPWO2014103529A1/ja active Pending
- 2013-11-08 US US14/652,156 patent/US20150326866A1/en not_active Abandoned
- 2013-11-08 WO PCT/JP2013/080245 patent/WO2014103529A1/ja active Application Filing
Non-Patent Citations (2)
Title |
---|
BENJAMIN BROSS ET AL., HIGH EFFICIENCY VIDEO CODING (HEVC) TEXT SPECIFICATION DRAFT 9, JPN6017034536, 18 December 2012 (2012-12-18), pages pp.31,39,65,97-98 * |
BYEONGDOO CHOI ET AL., POC SIGNALLING FOR CRA PICTURE, JPN6017034535, 27 April 2012 (2012-04-27) * |
Also Published As
Publication number | Publication date |
---|---|
WO2014103529A1 (ja) | 2014-07-03 |
US20150326866A1 (en) | 2015-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6397421B2 (ja) | 画像復号装置及び画像符号化装置 | |
WO2014103529A1 (ja) | 画像復号装置、およびデータ構造 | |
CA2909309C (en) | Harmonized inter-view and view synthesis prediction for 3d video coding | |
KR101662963B1 (ko) | 3d 비디오 코딩을 위한 장치, 방법 및 컴퓨터 프로그램 | |
US9967592B2 (en) | Block-based advanced residual prediction for 3D video coding | |
KR102187723B1 (ko) | 3 차원(3d)비디오 코딩을 위한 진보된 병합 모드 | |
JP6360053B2 (ja) | 照度補償装置、画像復号装置、画像符号化装置 | |
AU2013330031B2 (en) | Method and apparatus for motion information prediction and inheritance in video coding | |
WO2015093565A1 (ja) | 画像復号装置、画像符号化装置および残差予測装置 | |
US20160212437A1 (en) | Image decoding device, image decoding method, image coding device, and image coding method | |
WO2015005331A1 (ja) | 画像復号装置および画像符号化装置 | |
BR112016007760B1 (pt) | Método e aparelho de decodificação de dados de vídeo e método de codificação de dados de vídeo | |
BR112016000866B1 (pt) | Processamento de compensação de iluminação para codificação de vídeo | |
KR20140120900A (ko) | 심도를 갖는 3d 비디오 코딩에서의 멀티-가설 디스패리티 벡터 구성 | |
WO2015056719A1 (ja) | 画像復号装置、画像符号化装置 | |
WO2014103600A1 (ja) | 符号化データ構造、および画像復号装置 | |
WO2015056620A1 (ja) | 画像復号装置、画像符号化装置 | |
JP6118199B2 (ja) | 画像復号装置、画像符号化装置、画像復号方法、画像符号化方法及びコンピュータ読み取り可能な記録媒体。 | |
JP6401707B2 (ja) | 画像復号装置、画像復号方法、および記録媒体 | |
JP2015015626A (ja) | 画像復号装置および画像符号化装置 | |
JP2014204327A (ja) | 画像復号装置および画像符号化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161018 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161018 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170912 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20180306 |