【文献】
Jianle Chen, et.al.,SHVC Working Draft 2,JCTVC-M1008_v3[online],2013年 6月14日,URL,http://phenix.int-evry.fr/jct/doc_end_user/documents/13_Incheon/wg11/JCTVC-M1008-v3.zip
(58)【調査した分野】(Int.Cl.,DB名)
前記階層情報は、前記現在のピクチャが参照することのできる前記ピクチャの前記階層のIDに対する情報であり、前記階層情報はスライスヘッダーに含まれて受信されることを特徴とする請求項1に記載のピクチャの復号化方法。
前記フラグ情報が1であり、前記階層の個数が1より大きく、前記全体のビットストリームに含まれている全ての階層が一つの参照階層を用いるものでなければ、階層参照ピクチャ個数情報を受信してパーシングする前記ステップを実行することを特徴とする請求項1に記載のピクチャの復号化方法。
前記階層情報は、前記現在のピクチャが参照することのできる前記ピクチャの前記階層のIDに対する情報であり、前記階層情報はスライスヘッダーに含まれて受信されることを特徴とする請求項6に記載のピクチャの復号化装置。
【発明を実施するための形態】
【0020】
以下、図面を参照しつつ、本発明の実施形態に対し具体的に説明する。本明細書の実施形態の説明において、関連する公知の構成または機能に対する具体的な説明が本明細書の要旨を濁し得ると判断される場合は、その詳細な説明は省略する。
【0021】
ある構成要素が他の構成要素に『連結されて』いるか『接続されて』いると言及されたときは、その他の構成要素に直接的に連結されているか接続されていることもあり得るが、中間に他の構成要素が存在することもあり得ると理解されなければならないはずである。併せて、本発明で特定の構成を『含む』と記述する内容は、当該構成以外の構成を排除するものではなく、追加的な構成が本発明の実施または本発明の技術的思想の範囲に含まれ得ることを意味する。
【0022】
第1、第2などの用語は多様な構成要素の説明に用いられ得るが、前記構成要素等は前記用語等によって限定されてはならない。前記用語等は、一つの構成要素を他の構成要素から区別する目的にだけ用いられる。例えば、本発明の権利範囲を外れることなく第1構成要素は第2構成要素に命名されてよく、同様に第2構成要素も第1構成要素に命名されてよい。
【0023】
さらに、本発明の実施形態に表れる構成部等は、互いに異なる特徴的な機能等を表わすために独立的に図示されるものであって、各構成部が分離したハードウェアや一つのソフトウェアの構成単位からなることを意味しない。つまり、各構成部は、説明の便宜上、それぞれの構成部で並べて含んだものであって、各構成部のうち少なくとも二つの構成部が合わせられて一つの構成部でなるか、一つの構成部が複数個の構成部に分けられて機能を行うことができ、このような各構成部の統合された実施形態及び分離した実施形態も、本発明の本質から外れない限り、本発明の権利範囲に含まれる。
【0024】
さらに、一部の構成要素は、本発明で本質的な機能を行う必須の構成要素ではなく、ただ性能を向上させるための選択的な構成要素であり得る。本発明は、ただ性能の向上のために用いられる構成要素を除いた、本発明の本質を具現するために必須の構成部のみを含んで具現されてよく、ただ性能の向上のために用いられる選択的な構成要素を除いた必須の構成要素のみを含んだ構造も本発明の権利範囲に含まれる。
【0025】
図1は、ピクチャ符号化装置の一実施形態に係る構成を示すブロック図である。スケーラブル(scalable)ビデオ符号化/復号化方法または装置は、スケーラビリティ(scalability)を提供しない一般的なピクチャ符号化/復号化方法または装置の拡張(extension)によって具現されてよく、
図1のブロック図は、スケーラブルビデオ符号化装置の基礎となり得るピクチャ符号化装置の一実施形態を示す図である。
【0026】
図1に示す通り、前記ピクチャ符号化装置100は、動き推定部111、動き補償部112、イントラ予測部120、スイッチ115、減算器125、変換部130、量子化部140、エントロピー符号化部150、逆量子化部160、逆変換部170、加算器175、フィルタ部180及びデコーディングされたピクチャバッファ190を含む。
【0027】
ピクチャ符号化装置100は、入力ピクチャに対してイントラ(intra)モードまたはインタ(inter)モードで符号化を行い、ビットストリーム(bit stream)を出力することができる。イントラ予測は画面内予測、インタ予測は画面間予測を意味する。イントラモードの場合、スイッチ115がイントラに切り換えられ、インタモードの場合、スイッチ115がインタに切り換えられる。ピクチャ符号化装置100は、入力ピクチャの入力ブロックに対する予測ブロックを生成した後、入力ブロックと予測ブロックの差分を符号化することができる。
【0028】
イントラモードの場合、イントラ予測部120は、現在のブロック周辺の既に符号化されたブロックの画素値を利用して空間的予測を行い、予測ブロックを生成することができる。
【0029】
インタモードの場合、動き推定部111は、動き推定過程でデコーディングされたピクチャバッファ190に保存されている参照ピクチャから、入力ブロックと最もよくマッチされる領域を捜して動きベクターを求めることができる。動き補償部112は、動きベクターとデコーディングされたピクチャバッファ190に保存されている参照ピクチャを利用して動き補償を行うことにより、予測ブロックを生成することができる。
【0030】
減算器125は、入力ブロックと生成された予測ブロックの差分により残余ブロック(residual block)を生成することができる。変換部130は、残余ブロックに対し変換(transform)を行って変換係数(transform coefficient)を出力することができる。また、量子化部140は、入力された変換係数を量子化パラメータに従って量子化し、量子化された係数(quantized coefficient)を出力することができる。
【0031】
エントロピー符号化部150は、量子化部140で算出された値、または符号化過程で算出された符号化パラメータ値などに基づき、シンボル(symbol)を確率分布に従いエントロピー符号化してビットストリーム(bit stream)を出力することができる。エントロピー符号化方法は、多様な値を有するシンボルの入力を受け、統計的な重複性を取り除きながら、復号可能な二進数の列で表現する方法である。
【0032】
ここで、シンボルとは、符号化/復号化対象構文要素(syntax element)及び符号化パラメータ(coding parameter)、残余信号(residual signal)の値などを意味する。符号化パラメータは、符号化及び復号化に必要な媒介変数であって、構文要素のように符号化装置で符号化されて復号化装置に伝えられる情報だけでなく、符号化或いは復号化過程で類推可能な情報を含むことができ、ピクチャを符号化または復号化するときに必要な情報を意味する。符号化パラメータは、例えば、イントラ/インタ予測モード、移動/動きベクター、参照ピクチャ索引、符号化ブロックパターン、残余信号の有無、変換係数、量子化された変換係数、量子化パラメータ、ブロックの大きさ、ブロック分割情報などの値または統計を含むことができる。さらに、残余信号は、原信号と予測信号の差を意味することができ、かつ、原信号と予測信号の差が変換(transform)された形態の信号、または原信号と予測信号の差が変換され量子化された形態の信号を意味することもできる。残余信号は、ブロック単位では残余ブロックと言える。
【0033】
エントロピー符号化が適用される場合、高い発生確率を有するシンボルに少ない数のビットが割り当てられ、低い発生確率を有するシンボルに多い数のビットが割り当てられてシンボルが表現されることにより、符号化対象シンボル等に対するビット列の大きさが縮小し得る。したがって、エントロピー符号化を介しピクチャ符号化の圧縮性能が高くなり得る。
【0034】
エントロピー符号化のため、指数ゴロム(exponential golomb)、CAVLC(Context-Adaptive Variable Length Coding)、CABAC(Context-Adaptive Binary Arithmetic Coding)のような符号化方法が用いられてよい。例えば、エントロピー符号化部150には、可変長さ符号化(VLC:Variable Length Coding/Code)テーブルのようなエントロピー符号化を行うためのテーブルが保存されてよく、エントロピー符号化部150は、保存された可変長さ符号化(VLC)テーブルを用いてエントロピー符号化を行うことができる。さらに、エントロピー符号化部150は、対象シンボルの二進化(binarization)方法及び対象シンボル/ビン(bin)の確率モデル(probability model)を導き出した後、導き出された二進化方法または確率モデルを用いてエントロピー符号化を行うこともできる。
【0035】
量子化された係数は、逆量子化部160で逆量子化され、逆変換部170で逆変換されてよい。逆量子化、逆変換された係数は、加算器175を介し予測ブロックと加えられて復元ブロックが生成されてよい。
【0036】
復元ブロックはフィルタ部180を経て、フィルタ部180は、デブロッキングフィルタ(deblocking filter)、SAO(Sample Adaptive Offset)、ALF(Adaptive Loop Filter)のうち少なくとも一つ以上を復元ブロックまたは復元ピクチャに適用することができる。フィルタ部180を経た復元ブロックは、デコーディングされたピクチャバッファ190に保存されてよい。
【0037】
図2は、ピクチャ復号化装置の一実施形態に係る構成を示すブロック図である。
図1で前述したところのように、スケーラブルビデオ符号化/復号化方法または装置は、スケーラビリティを提供しない一般的なピクチャ符号化/復号化方法または装置の拡張によって具現されてよく、
図2のブロック図は、スケーラブルビデオ復号化装置の基礎となり得るピクチャ復号化装置の一実施形態を示す図である。
【0038】
図2に示す通り、前記ピクチャ復号化装置200は、エントロピー復号化部210、逆量子化部220、逆変換部230、イントラ予測部240、動き補償部250、フィルタ部260及びデコーディングされたピクチャバッファ270を含む。
【0039】
ピクチャ復号化装置200は、符号化装置から出力されたビットストリームの入力を受けてイントラモードまたはインタモードで復号化を行い、再構成されたピクチャ、即ち、復元ピクチャを出力することができる。イントラモードの場合、スイッチがイントラに切り換えられ、インタモードの場合、スイッチがインタに切り換えられ得る。ピクチャ復号化装置200は、入力を受けたビットストリームから復元された残余ブロック(residual block)を得て予測ブロックを生成した後、復元された残余ブロックと予測ブロックを加えて再構成されたブロック、即ち、復元ブロックを生成することができる。
【0040】
エントロピー復号化部210は、入力されたビットストリームを確率分布に従ってエントロピー復号化し、量子化された係数(quantized coefficient)形態のシンボルを含んだシンボル等を生成することができる。エントロピー復号化方法は、二進数の列の入力を受けて各シンボルを生成する方法である。エントロピー復号化方法は、前述したエントロピー符号化方法と類似する。
【0041】
量子化された係数は、逆量子化部220で逆量子化されて逆変換部230で逆変換され、量子化された係数が逆量子化/逆変換された結果、復元された残余ブロック(residual block)が生成され得る。
【0042】
イントラモードの場合、イントラ予測部240は、現在のブロック周辺の既に符号化されたブロックの画素値を利用して空間的予測を行い、予測ブロックを生成することができる。インタモードの場合、動き補償部250は、動きベクター及びデコーディングされたピクチャバッファ270に保存されている参照ピクチャを利用して動き補償を行うことにより、予測ブロックを生成することができる。
【0043】
復元された残余ブロックと予測ブロックは加算器255を介して加えられ、加えられたブロックはフィルタ部260を経る。フィルタ部260は、デブロッキングフィルタ、SAO、ALFのうち少なくとも一つ以上を復元ブロックまたは復元ピクチャに適用することができる。フィルタ部260は、再構成されたピクチャ、即ち、復元ピクチャを出力する。復元ピクチャは、デコーディングされたピクチャバッファ270に保存されて画面間予測に用いられてよい。
【0044】
前記ピクチャ復号化装置200に含まれているエントロピー復号化部210、逆量子化部220、逆変換部230、イントラ予測部240、動き補償部250、フィルタ部260及びデコーディングされたピクチャバッファ270のうち、ピクチャの復号化に直接的に係わる構成要素等、例えば、エントロピー復号化部210、逆量子化部220、逆変換部230、イントラ予測部240、動き補償部250、フィルタ部260などを他の構成要素と区分して復号化部またはデコーディング部に表現することができる。
【0045】
さらに、ピクチャ復号化装置200は、ビットストリームに含まれているエンコードされたピクチャに係わる情報をパーシングする、図示していないパーシング部をさらに含むことができる。パーシング部は、エントロピー復号化部210を含むこともでき、エントロピー復号化部210に含まれてもよい。このようなパーシング部はまた、デコーディング部の一つの構成要素として具現されてもよい。
【0046】
図3は、本発明が適用可能な、複数階層を利用したスケーラブルビデオコーディング構造の一実施形態を概略的に示す概念図である。
図3におけるGOP(Group of Picture)は、ピクチャ群、即ち、ピクチャのグループを表わす。
【0047】
ピクチャデータを伝送するためには伝送媒体が必要であり、その性能は、多様なネットワーク環境によって伝送媒体別に差がある。このような多様な伝送媒体またはネットワーク環境への適用のため、スケーラブルビデオコーディング方法が提供されてよい。
【0048】
スケーラブルビデオコーディング方法は、階層(layer)間のテクスチャ情報、動き情報、残余信号などを活用し、階層間の重複性を取り除いて符号化/復号化性能を高めるコーディング方法である。スケーラブルビデオコーディング方法は、伝送ビット率、伝送エラー率、システム資源などの周辺の条件に従い、空間的、時間的、画質的観点で多様なスケーラビリティを提供することができる。
【0049】
スケーラブルビデオコーディングは、多様なネットワーク状況に適用可能なビットストリームを提供することができるよう、複数階層(multiple layers)構造を用いて行われてよい。例えば、スケーラブルビデオコーディング構造は、一般的なピクチャ符号化方法を利用し、ピクチャデータを圧縮して処理する基本階層を含むことができ、基本階層の符号化情報及び一般的なピクチャ符号化方法を共に用いてピクチャデータを圧縮処理する向上階層を含むことができる。
【0050】
ここで、階層(layer)は、空間(spatial、例えば、ピクチャの大きさ)、時間(temporal、例えば、符号化の順、ピクチャ出力の順、フレーム率)、画質、複雑度などを基準に区分されるピクチャまたはビットストリーム(bitstream)の集まりを意味する。また、基本階層は、下位階層、参照階層または基本階層(Base layer)、向上階層は上位階層、向上階層(Enhancement layer)を意味することができる。さらに、複数の階層は相互間に従属性を有することもできる。
【0051】
図3に示す通り、例えば、基本階層は、SD(standard definition)、15Hzのフレーム率、1Mbpsのビット率で定義されてよく、第1向上階層は、HD(high definition)、30Hzのフレーム率、3.9Mbpsのビット率で定義されてよく、第2向上階層は、4K-UHD(ultra high definition)、60Hzのフレーム率、27.2Mbpsのビット率で定義されてよい。前記フォーマット(format)、フレーム率、ビット率などは一つの実施形態であって、必要に応じて別に定められてよい。さらに、用いられる階層の数も本実施形態に限定されず、状況に応じて別に定められてよい。
【0052】
例えば、伝送帯域幅が4Mbpsであれば、前記第1向上階層HDのフレーム率を減らして15Hz以下で伝送することができる。スケーラブルビデオコーディング方法は、前記
図3の実施形態で前述した方法によって時間的、空間的、画質的スケーラビリティを提供することができる。
【0053】
ビットストリーム内の複数の階層を支援するビデオの符号化及び復号化、即ち、スケーラブルコーディング(scalable coding)の場合、複数の階層間には強い関連性(correlation)が存在するため、かかる関連性を利用して予測を行えば、データの重複要素を取り除くことができ、ピクチャの符号化性能を向上させることができる。他の階層の情報を利用して予測の対象となる現在の階層の予測を行うことを、以下では階層間予測(inter-layer prediction)と表現する。スケーラブルビデオコーディングは、以下の符号化観点ではスケーラブルビデオ符号化、復号化観点ではスケーラブルビデオ復号化と同じ意味を有する。
【0054】
複数の階層は、解像度、フレーム率、カラーフォーマットのうち少なくとも一つが互いに異なることがあり、階層間予測時の解像度の調節のため、階層のアップサンプリングまたはダウンサンプリングが行われてよい。
【0055】
図4は、本発明の一実施形態に基づき、空間画質階層及び視点階層を概略的に示す概念図である。
【0056】
図示されている通り、ビットストリームは複数の階層を含むことができる。
【0057】
ビットストリームは、空間(spatial)及び画質(quality)は同一であるものの、相違する視点(view)に対する複数の視点階層(視点1、視点2、視点3)を含むことができる。
【0058】
さらに、ビットストリームは、視点は同一であるものの、空間及び画質が相違する階層で構成されてもよい。空間画質階層はSD級階層とHD級階層に分類されてよく、SD級階層とHD級階層は再度基本階層と向上階層で構成されてよい。
【0059】
図示されている通り、空間、画質及び視点が混在されている階層を識別するため、各階層は識別子(layer_id)で互いに区分することができる。各識別子が如何なる階層(例えば、視点階層、空間及び画質階層)なのか、階層内で上位階層なのか下位階層なのかに対する情報は、VPS(video parameter set)またはSPS(sequence parameter set)、NALユニットヘッダー(nal unit header)などに含まれてシグナリングされてよい。
【0060】
前述した通り、階層間の関連性を利用して階層間予測を行う場合、少なくとも一つ以上の下位階層を参照して上位階層を予測することになる。以下、説明の便宜のため、予測が行われる階層を対象階層と命名し、対象階層の予測に利用または参照される階層を参照階層と表現する。
【0061】
本発明は、同じスライス内のブロック等を符号化する場合、一つ以上の参照階層を利用して符号化するに際し、空間、画質、視点スケーラビリティの符号化効率を考慮した効率的な参照階層リストの生成及び管理のための発明である。
【0062】
通常、画面間予測は、現在のピクチャの以前のピクチャまたは以後のピクチャのうち少なくとも一つを参照ピクチャとし、参照ピクチャに基づき現在のブロックに対する予測を行うことができる。現在のブロックの予測に利用されるピクチャを、参照ピクチャ(reference picture)または参照フレーム(reference frame)という。
【0063】
参照ピクチャ内の領域は、参照ピクチャを指示する参照ピクチャインデックス(refIdx)及び動きベクター(motion vector)などを利用して表わすことができる。
【0064】
画面間予測は、参照ピクチャ及び参照ピクチャ内で現在のブロックに対応する参照ブロックを選択し、現在のブロックに対する予測ブロックを生成することができる。
【0065】
画面間予測で符号化装置及び復号化装置は、現在のブロックの動き情報を導き出した後、導き出された動き情報に基づき画面間予測及び/または動き補償を行うことができる。このとき、符号化装置及び復号化装置は、復元された周辺ブロック(neighboring block)及び/または既に復元されたコル(col)ピクチャ(collocated picture)内で現在のブロックに対応されるコル(col)ブロック(collocated block)の動き情報を利用することにより、符号化/復号化効率を向上させることができる。
【0066】
ここで、復元された周辺ブロックは、既に符号化及び/または復号化されて復元された現在のピクチャ内のブロックであって、現在のブロックに隣接したブロック及び/または現在のブロックの外部コーナーに位置したブロックを含むことができる。さらに、符号化装置及び復号化装置は、コルピクチャ内で現在のブロックと空間的に対応される位置に存在するブロックを基準に所定の相対的な位置を決定することができ、前記決定された所定の相対的な位置(前記現在のブロックと空間的に対応される位置に存在するブロックの内部及び/または外部の位置)に基づき前記コルブロックを導き出すことができる。ここで、一例として、コルピクチャは、参照ピクチャリストに含まれている参照ピクチャのうち一つのピクチャに該当されてよい。
【0067】
画面間予測は、現在のブロックとのレジデュアル(residual)信号が最小化され、動きベクターの大きさもまた最小になるように予測ブロックを生成することができる。
【0068】
一方、動き情報の導出方式は、現在のブロックの予測モードによって変わり得る。インタ予測のために適用される予測モードには、AMVP(Advanced Motion Vector Predictor)、マージ(merge)などがあり得る。
【0069】
一例として、AMVP(Advanced Motion Vector Predictor)が適用される場合、符号化装置及び復号化装置は、復元された周辺ブロックの動きベクター及び/またはコルブロックの動きベクターを利用して予測動きベクターの候補リストを生成することができる。つまり、復元された周辺ブロックの動きベクター及び/またはコルブロックの動きベクターは、予測動きベクターの候補として用いられ得る。符号化装置は、前記リストに含まれている予測動きベクターの候補の中から選択された最適の予測動きベクターを指示する予測動きベクターインデックスを復号化装置に伝送することができる。このとき、復号化装置は、前記予測動きベクターインデックスを利用し、予測動きベクターの候補リストに含まれている予測動きベクターの候補の中から、現在のブロックの予測動きベクターを選択することができる。
【0070】
符号化装置は、現在のブロックの動きベクターと予測動きベクターとの間の動きベクターの差分(MVD:Motion Vector Difference)を求めることができ、これを符号化して復号化装置に伝送することができる。このとき、復号化装置は、受信された動きベクターの差分を復号化することができ、復号化された動きベクターの差分と予測動きベクターの和を介し現在のブロックの動きベクターを導き出すことができる。
【0071】
符号化装置はさらに、参照ピクチャを指示する参照ピクチャインデックスなどを復号化装置に伝送することができる。
【0072】
復号化装置は、周辺ブロックの動き情報等を利用して現在のブロックの動きベクターを予測し、符号化装置から受信した動きベクターに対する差分値を利用して現在のブロックに対する動きベクターを誘導することができる。復号化装置は、誘導した動きベクターと符号化装置から受信した参照ピクチャインデックス情報に基づき、現在のブロックに対する予測ブロックを生成することができる。
【0073】
他の例として、マージ(merge)が適用される場合、符号化装置及び復号化装置は、復元された周辺ブロックの動き情報及び/またはコルブロックの動き情報を利用し、マージ候補リストを生成することができる。つまり、符号化装置及び復号化装置は、復元された周辺ブロック及び/またはコルブロックの動き情報が存在する場合、これを現在のブロックに対するマージ候補として用いることができる。
【0074】
符号化装置は、マージ候補リストに含まれているマージ候補の中から、最適の符号化効率を提供することのできるマージ候補を現在のブロックに対する動き情報として選択することができる。このとき、前記選択されたマージ候補を指示するマージインデックスがビットストリームに含まれて復号化装置に伝送されてよい。復号化装置は、前記伝送されたマージインデックスを利用し、マージ候補リストに含まれているマージ候補の中から一つを選択することができ、前記選択されたマージ候補を現在のブロックの動き情報として決定することができる。よって、マージモードが適用される場合、復元された周辺ブロック及び/またはコルブロックの動き情報が、現在のブロックの動き情報としてそのまま用いられ得る。復号化装置は、予測ブロックと符号化装置から伝送されるレジデュアルを加えて現在のブロックを復元することができる。
【0075】
前述したAMVP及びマージモードでは、現在のブロックの動き情報を導き出すため、復元された周辺ブロックの動き情報及び/またはコルブロックの動き情報が用いられ得る。
【0076】
画面間予測に利用される他のモードのうち一つであるスキップモードの場合、周辺ブロックの情報をそのまま現在のブロックに利用することができる。したがって、スキップモードの場合、符号化装置は、現在のブロックの動き情報として如何なるブロックの動き情報を利用するのかを指示する情報以外に、レジデュアルなどのようなシンタックス情報を復号化装置に伝送しない。
【0077】
符号化装置及び復号化装置は、前記導き出された動き情報に基づいて現在のブロックに対する動き補償を行うことにより、現在のブロックの予測ブロックを生成することができる。ここで、予測ブロックは、現在のブロックに対する動き補償の遂行の結果で生成された、動き補償されたブロックを意味することができる。さらに、複数の動き補償されたブロックは、一つの動き補償されたピクチャを構成することができる。
【0078】
復号化装置は、符号化装置から受信したスキップフラグ、マージフラグなどを確認し、現在のブロックのインタ予測に必要な動き情報、例えば、動きベクター、参照ピクチャインデックスなどに関する情報をこれに対応して誘導することができる。
【0079】
予測が行われる処理単位と予測方法及び具体的な内容が定められる処理単位は、互いに異なり得る。例えば、予測ブロック単位で予測モードが定められて変換ブロック単位で予測が行われてもよく、予測ブロック単位で予測モードが定められて変換ブロック単位で画面内予測が行われてもよい。
【0080】
図5は、本発明の一実施形態に係る符号化装置において、上位階層の符号化を行う方法を説明するための制御フローチャートである。
【0081】
以下では、
図5を参照して、少なくとも一種類以上のスケーラビリティ (例えば、空間、画質、視点スケーラビリティ)を支援しながら多階層構造を用いるビデオ符号化方法において、上位階層の符号化を行う方法、より具体的に、対象ピクチャが参照することのできる参照階層リストを構成する方法に対し検討してみる。
【0082】
先ず、符号化装置は、現在の符号化対象ピクチャが参照することのできる階層のリストを構成する(S510)。
【0083】
符号化装置は、現在の符号化対象階層の下位階層等のうち、現在の符号化対象階層が符号化するとき、同一視点内で参照することのできる少なくとも一つ以上の階層を含む参照階層リストを構成することができる。参照階層リストは、下記で説明された方法のうち少なくとも一つによって構成され得る。
【0084】
第一の実施形態によれば、符号化装置は、全体のビットストリームで現在の符号化対象階層と同一の階層等が参照することのできる参照階層リストを構成することができる。
【0085】
符号化装置は、対象階層と同一の階層等が参照可能な参照階層等を任意の順に構成して参照階層リストを生成することができる。
【0086】
または、参照階層等のうち、layer_id値が対象階層のlayer_id値との差が小さい階層(即ち、近い階層)から大きい階層の順に構成されてよい。
【0087】
または、現在の符号化対象階層の参照階層リストは、参照階層等のうち、優先順位(priority)が高い階層から低い階層の順に構成されてよい。
【0088】
優先順位と係わる情報は、NALユニットヘッダー(NALU header)或いはビデオパラメータセット(video parameter set)などに含まれてシグナリングされてよい。
【0089】
または、現在の符号化対象階層と同一視点を有する階層に対しては、現在の符号化対象階層と空間解像度の差が小さい階層から大きい階層の順に参照階層リストが構成されてよい。このとき、同一の空間解像度での画質参照階層の順は、現在の符号化対象階層のlayer_id値との差が小さい階層(即ち、近い階層)から大きい階層の順であってよい。
【0090】
追加的に、現在の符号化対象階層の視点と近い視点から遠い視点の順に、階層等を参照階層リストに含ませることができる。同一の視点内の階層等を参照階層リストに含ませる順は、前述した現在の符号化対象階層と同一の視点を有する階層等と同一の方式を適用することができる。
【0091】
例えば、
図4のようなビットストリーム構造でlayer_idがnである階層の参照階層リストは、layer_idがn-1、n-2、n-3、n-4、n-5、n-6、n-7、n-8、n-9、n-10、n-11である階層の順に構成されてよい。
【0092】
または、現在の符号化対象階層と同一視点の参照階層を含む参照階層リストは、現在の符号化対象階層と空間解像度の差が小さい階層から大きい階層の順に構成されてよい。このとき、同一の空間解像度での画質参照階層の順は、符号化を図る量子化パラメータ(quantization parameter)値が低い値から高い値の順(即ち、復号時の画質が良好な階層から低い階層の順)であってよい。
【0093】
追加的に、現在の符号化対象階層の視点と近い視点から遠い視点の順に、階層等を参照階層リストに含ませることができる。同一の視点内の階層等を参照階層リストに含ませる順は、前述した現在の符号化対象階層と同一の視点を有する階層等と同一の方式を適用することができる。
【0094】
対象階層が参照する参照階層に対しては、ビットストリーム内でシグナリングされるlayer_idを利用して記述されてよい。参照階層を記述しているビデオパラメータセット(video parameter set)に対する例は、表1及び表2の通りである。
【表1】
【0095】
表1に示す通り、num_direct_ref_layers[i]はi番目の階層(即ち、nuh_layer_id[i]のlayer_idを有する階層)が直接的に参照する参照階層の数を表わす。
【0096】
ref_layer_id[i][j]は、i番目の階層が参照するj番目の参照階層のlayer_idを表わす。
つまり、ref_layer_id[i][j]は、layer_idがnuh_layer_id[i]である階層が、layer_idがnuh_layer_id[j]である階層を参照することを意味する。
【表2】
【0097】
表2に示す通り、direct_dependency_flag[i][j]が1であれば、i番目の階層(即ち、nuh_layer_id[i]のlayer_idを有する階層)がj番目の参照階層(即ち、nuh_layer_id[j]のlayer_idを有する階層)を直接的に参照することを表わす。
【0098】
max_one_active_ref_layer_flagが1であれば、全体のビットストリームで各ピクチャ(picture)、即ち、i番目の階層の階層間予測のため、最大一つのピクチャが用いられることを表わす。max_one_active_ref_layer_flagが0であれば、ビットストリーム内の特定のピクチャ、即ち、i番目の階層の階層間予測のため、一つより多いピクチャが用いられてもよいことを表わすことができる。または、max_one_active_ref_layer_flagが0である場合は、i番目の階層が階層間予測を用いないことを表わすこともできる。
【0099】
一方、max_one_active_ref_layer_flagは階層ごとにシグナリングされてもよく、全体のビットストリームで一回だけシグナリングされてもよい。
【0100】
max_one_active_ref_layer_flagが全体のビットストリームで一回シグナリングされるとき、全ての階層が一つの参照階層のみを参照するとき、max_one_active_ref_layer_flagの値は1になり得る。よって、max_one_active_ref_layer_flag値が0であっても、特定の階層の参照階層の個数を表わすslice_numdirect_ref_layers値が「1」となり得る。
【0101】
参照階層リストを構成する第二の実施形態によれば、符号化装置は、現在符号化を図る対象ピクチャが参照可能な参照階層リストを構成することができる。これは、現在符号化を図るピクチャの現在の符号化対象階層が参照することのできる参照階層リストを構成することであって、下記方法のうち一つで構成することができる。
【0102】
符号化装置は、参照階層等を任意の順に構成し、現在の符号化対象ピクチャが参照することのできる参照階層リストを生成することができる。
【0103】
または、符号化装置は、参照階層等のうち、layer_id値が符号化対象階層のlayer_id値との差が小さい階層 (即ち、近い階層)から大きい階層の順に構成し、参照階層リストを生成することができる。
【0104】
または、参照階層リストは、対象階層と同一視点を有する参照階層等のうち、優先順位(priority)が高い階層から低い階層の順に構成されてよい。
【0105】
このとき、優先順位と係わる情報は、NALユニットヘッダー(NALU header)或いはビデオパラメータセット(video parameter set)などに含まれてシグナリングされてよい。
【0106】
または、現在の符号化対象階層と同一視点の階層等で構成され得る参照階層リストは、現在の符号化対象階層と空間解像度の差が小さい階層から大きい階層の順に構成されてよい。このとき、同一の空間解像度を有する参照階層の順は、現在の符号化対象階層のlayer_id値との差が小さい階層(即ち、近い階層)から大きい階層の順であってよい。
【0107】
追加的に、現在の符号化対象階層の視点と近い視点から遠い視点の順に、階層等を参照階層リストに含ませることができる。同一の視点内の階層等を参照階層リストに含ませる順は、前述した現在の符号化対象階層と同一の視点を有する階層等と同一の方式を適用することができる。
【0108】
例えば、
図4のようなビットストリーム構造でlayer_idがnである階層の参照階層リストは、layer_idがn-1、n-2、n-3、n-4、n-5、n-6、n-7、n-8、n-9、n-10、n-11である階層の順に構成されてよい。
【0109】
または、現在の符号化対象階層と同一視点を有する階層等で構成される参照階層リストは、参照階層等のうち、現在の符号化対象階層と空間解像度の差が小さい階層から大きい階層の順に構成されてよい。このとき、同一の空間解像度での画質参照階層の順は、符号化を図る量子化パラメータ(quantization parameter)値が低い値から高い値の順(即ち、復号時の画質が良好な階層から低い階層の順)であってよい。
【0110】
追加的に、現在の符号化対象階層の視点と近い視点から遠い視点の順に、階層等を参照階層リストに含ませることができる。同一の視点内の階層等を参照階層リストに含ませる順は、前述した現在の符号化対象階層と同一の視点を有する階層等と同一の方式を適用することができる。
【0111】
現在の符号化対象階層の当該スライスが符号化するとき参照することのできる参照階層は、多様な方法を介して記述されてよい。以下、表3から表24を参照しつつ、スライスヘッダー(slice header)で参照階層等を記述してシグナリングすることを説明する。
【0112】
表3から表11に対応する実施形態によれば、スライスヘッダーは、ビデオパラメータセットでシグナリングされる全体のビットストリームで、現在の符号化対象階層と同一の階層等が参照することのできる参照階層等のサブセット(sub-set)のうち、現在符号化を図る当該スライスが参照することのできる階層等の情報を含んでいる。
【0113】
このとき、現在符号化を図る当該スライスが階層間予測を用いて符号化される場合にだけ、表3から表10のシンタックスのうちいずれか一つが適用されてもよい。
【表3】
【0114】
表3に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0115】
ref_layer_id[j]は、当該ピクチャが直接的に参照するj番目の参照階層のlayer_idを表わす。
【表4】
【0116】
表4に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0117】
ref_layer_id_delta[j]は、当該ピクチャが直接的に参照するj番目の参照階層のlayer_idと、j-1番目の参照階層のlayer_idとの差を表わす。このとき、レイヤーidの差分が『0』に近いほど、現在のピクチャは、現在のピクチャが該当する階層と近いlayer_idを有する参照階層を参照することを意味する。このとき、ref_layer_id_delta[0]は、0番目の参照階層のlayer_idと、現在のピクチャが属する階層のlayer_idとの差を表わす。
【表5】
【0118】
表5に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0119】
ref_layer_idx_delta[j]:当該ピクチャが直接的に参照するj番目の参照階層のインデックス(ビデオパラメータセットで記述されたインデックス基準)と、j-1番目の参照階層のインデックス(ビデオパラメータセットで記述されたインデックス基準)との差を表わす。このとき、ref_layer_idx_delta[0]は0番目の参照階層のインデックスを表わす。
【表6】
【0120】
表6に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0121】
ref_layer_idx[j]は、当該ピクチャが直接的に参照するj番目の参照階層のインデックス(ビデオパラメータセットで記述されたインデックス基準)を表わす。
【表7】
【0122】
表7に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id (即ち、nuh_layer_id )を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。slice_num_direct_ref_layersが『0』の場合は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一の階層に該当する参照階層を現在のピクチャの参照階層として用いることができるとのことを意味する。
【0123】
ref_layer_id[j]は、当該ピクチャが直接的に参照するj番目の参照階層のlayer_idを表わす。
【表8】
【0124】
表8に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。slice_num_direct_ref_layersが『0』の場合は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一の階層に該当する参照階層を現在のピクチャの参照階層として用いることができるとのことを表わす。
【0125】
ref_layer_id_delta[j]は、当該ピクチャが直接的に参照するj番目の参照階層のlayer_idと、j-1番目の参照階層のlayer_idとの差を表わす。このとき、レイヤーidの差分が『0』に近いほど、現在のピクチャは、現在のピクチャが該当する階層と近いlayer_idを有する参照階層を参照することを意味する。ref_layer_id_delta[0]は、0番目の参照階層のlayer_idと、現在のピクチャが該当する階層のlayer_idとの差を表わす。
【表9】
【0126】
表9に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0127】
slice_num_direct_ref_layersが『0』の場合、ビデオパラメータセットでシグナリングされる当該ピクチャと同一の階層に該当する参照階層を現在のピクチャの参照階層として用いることができるとのことを表わす。
【0128】
ref_layer_idx_delta[j]は、当該ピクチャが直接的に参照するj番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)と、j-1番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)との差を表わす。ref_layer_idx_delta[0]は、0番目の参照階層のインデックスを表わす。
【表10】
【0129】
表10に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0130】
slice_num_direct_ref_layersが『0』の場合は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一の階層に該当する参照階層を現在のピクチャの参照階層として用いることができるとのことを意味する。
【0131】
ref_layer_idx[j]は、当該ピクチャが直接的に参照するj番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)を表わす。
【0132】
表11から表14に対応する実施形態によれば、ビデオパラメータセットでシグナリングされる現在の符号化対象階層と同一の階層等が参照することのできる参照階層等を、現在符号化を図る当該スライスで同様に用いるのか否かを知らせるフラグ、例えば、layer_dependency_vps_flagをスライスヘッダーにシグナリングする。
【0133】
フラグが『1』の場合は、ビデオパラメータセットでシグナリングされる参照階層情報が用いられ、フラグが『0』の場合は、スライスヘッダーで記述される参照階層等の情報が用いられ得る。
【0134】
このとき、現在符号化を図る当該スライス或いはピクチャが階層間予測を用いて符号化する場合にだけ、表11から表14のシンタックスのうちいずれか一つが適用されてもよい。
【表11】
【0135】
表11に示す通り、layer_dependency_vps_flagは、参照階層情報をスライスヘッダーまたはスライスセグメントヘッダー(slice segment header)でシグナリングするのか否かを表わす。layer_dependency_vps_flagが『0』の場合、スライスセグメントヘッダーで参照階層情報をシグナリングする。layer_dependency_vps_flagが『1』の場合は、スライスセグメントヘッダーで参照階層情報をシグナリングせず、ビデオパラメータセット拡張(VPS extension)でシグナリングされた参照階層情報を当該ピクチャの参照階層情報として用いることができる。
【0136】
slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0137】
ref_layer_id[j]は、当該ピクチャが直接的に参照するj番目の参照階層の layer_idを表わす。
【表12】
【0138】
表12に示す通り、layer_dependency_vps_flagは、参照階層情報をスライスヘッダーまたはスライスセグメントヘッダーでシグナリングするのか否かを表わす。layer_dependency_vps_flagが『0』の場合、スライスセグメントヘッダーで参照階層情報をシグナリングする。layer_dependency_vps_flagが『1』の場合は、スライスセグメントヘッダーで参照階層情報をシグナリングせず、ビデオパラメータセット拡張(VPS extension)でシグナリングされた参照階層情報を当該ピクチャの参照階層情報として用いることができる。
【0139】
slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0140】
ref_layer_id_delta[j]は、当該ピクチャが直接的に参照するj番目の参照階層のlayer_idと、j-1番目の参照階層のlayer_idとの差を表わす。ref_layer_id_delta[0]は、ref_layer_id[0]と現在のピクチャのlayer_idとの差を表わす。
【表13】
【0141】
表13に示す通り、layer_dependency_vps_flagは、参照階層情報をスライスヘッダーまたはスライスセグメントヘッダーでシグナリングするのか否かを表わす。layer_dependency_vps_flagが『0』の場合、スライスセグメントヘッダーで参照階層情報をシグナリングする。layer_dependency_vps_flagが『1』の場合は、スライスセグメントヘッダーで参照階層情報をシグナリングせず、ビデオパラメータセット拡張(VPS extension)でシグナリングされた参照階層情報を当該ピクチャの参照階層情報として用いることができる。
【0142】
slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0143】
ref_layer_idx_delta[j]は、当該ピクチャが直接的に参照するj番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)と、j-1番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)との差を表わす。ref_layer_idx_delta[0]は、0番目の参照階層のインデックスを表わす。
【表14】
【0144】
表14に示す通り、layer_dependency_vps_flagは、参照階層情報をスライスヘッダーまたはスライスセグメントヘッダーでシグナリングするのか否かを表わす。layer_dependency_vps_flagが『0』の場合、スライスセグメントヘッダーで参照階層情報をシグナリングする。layer_dependency_vps_flagが『1』の場合は、スライスセグメントヘッダーで参照階層情報をシグナリングせず、ビデオパラメータセット拡張(VPS extension)でシグナリングされた参照階層情報を当該ピクチャの参照階層情報として用いることができる。
【0145】
slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0146】
ref_layer_idx[j]は、当該ピクチャが直接的に参照するj番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)を表わす。
【0147】
表15から表18に対応する実施形態によれば、現在符号化を図る当該スライスの参照階層の数がスライスヘッダーに含まれてシグナリング(例えば、slice_num_direct_ref_layers)されてよい。このとき、参照階層等は、シグナリングされた参照階層の数が、ビデオパラメータセットでシグナリングされる現在の符号化対象階層と同一の階層等が参照することのできる参照階層の数(例えば、NumDirectRefLayers[nuh_layer_id])と同一でない場合にだけシグナリングされる。
【0148】
このとき、現在符号化を図る当該スライスが階層間予測を用いて符号化する場合、表15から表18のシンタックスのうちいずれか一つが適用されてもよい。
【表15】
【0149】
表15に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一である場合は、ビデオパラメータセット拡張(VPS extension)でシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用い、NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一でない場合は、スライスセグメントヘッダーでシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用いる。
【0150】
ref_layer_id[j]は、当該ピクチャが直接的に参照するj番目の参照階層のlayer_idを表わす。
【表16】
【0151】
表16に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一である場合は、ビデオパラメータセット拡張(VPS extension)でシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用い、NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一でない場合は、スライスセグメントヘッダーでシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用いる。
【0152】
ref_layer_id_delta[j]は、当該ピクチャが直接的に参照するj番目の参照階層のlayer_idと、j-1番目の参照階層のlayer_idとの差を表わす。ref_layer_id_delta[0]は、ref_layer_id[0]と現在のピクチャのlayer_idとの差を表わす。
【表17】
【0153】
表17に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一である場合は、ビデオパラメータセット拡張(VPS extension)でシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用い、NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一でない場合は、スライスセグメントヘッダーでシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用いる。
【0154】
ref_layer_idx_delta[j]は、当該ピクチャが直接的に参照するj番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)と、j-1番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)との差を表わす。ref_layer_idx_delta[0]は、0番目の参照階層のインデックスを表わす。
【表18】
【0155】
表18に示す通り、slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一である場合は、ビデオパラメータセット拡張(VPS extension)でシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用い、NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一でない場合は、スライスセグメントヘッダーでシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用いる。
【0156】
ref_layer_idx[j]は、当該ピクチャが直接的に参照するj番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)を表わす。
【0157】
本発明のさらに他の実施形態によれば、現在符号化を図る当該スライスが階層間予測を用いて符号化する場合に対し、表19から表24に示されている信号等がシグナリングされてよい。
【0158】
表2に示す通り、ビデオパラメータセットで現在の符号化対象階層と同一の階層等が参照することのできる参照階層の数が最大一つなのか否かを知らせるフラグ(例えば、max_one_active_ref_layer_flag)がシグナリングされ、当該フラグが『0』であるとき、表19から表24が適用されてよい。つまり、表19から表24を参照し、現在の符号化対象階層と同一の階層等が二つ以上の参照階層を有する場合、現在符号化を図る当該スライスの参照階層の数をシグナリング(例えば、slice_num_direct_ref_layers)する実施形態に対して記述される。
【0159】
具体的に、表19、表21、表23は、ビデオパラメータセットでシグナリングされる参照階層等を当該スライスで同様に用いるのか否かを知らせるフラグ(例えば、layer_dependency_vps_flag)がスライスヘッダーでシグナリングされ、当該フラグが『1』の場合は、ビデオパラメータセットでシグナリングされる参照階層情報が用いられ、フラグが『0』の場合は、スライスヘッダーで参照階層等を記述してシグナリングする。
【0160】
表20、表22、表24に係る実施形態は、現在符号化を図る当該スライスの参照階層の数(例えば、slice_num_direct_ref_layers)が、ビデオパラメータセットでシグナリングされる現在の符号化対象階層と同一の階層等が参照することのできる参照階層の数と同一でない場合にだけ参照階層等をシグナリングする。
【表19】
【0161】
表19に示す通り、inter_layer_pred_enabled_flagが『1』であれば、当該ピクチャが階層間予測を用いることを表わし、inter_layer_pred_enabled_flagが『0』であれば、階層間予測を用いないことを表わす。
【0162】
layer_dependency_vps_flagは、参照階層情報をスライスヘッダー(スライスセグメントヘッダー)でシグナリングするのか否かを表わす。layer_dependency_vps_flagが『0』の場合、参照階層情報をスライスヘッダーでシグナリングすることを表わし、layer_dependency_vps_flagが『1』の場合は、スライスセグメントヘッダーで参照階層情報をシグナリングせず、ビデオパラメータセット拡張(VPS extension)でシグナリングされた参照階層情報を当該ピクチャの参照階層情報として用いることを表わす。
【0163】
slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。max_one_active_ref_layer_flagが『1』の場合は、NumActiveRefLayerPics = 1(NumActiveRefLayerPics = slice_num_driect_ref_layers)になるので、slice_num_direct_ref_layersはシグナリングされない。
【0164】
ref_layer_idx[i]は、当該ピクチャが直接的に参照するi番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)を表わす。
【表20】
【0165】
表20に示す通り、inter_layer_pred_enabled_flagが『1』であれば、当該ピクチャが階層間予測を用いることを表わし、inter_layer_pred_enabled_flagが『0』であれば、階層間予測を用いないことを表わす。
【0166】
slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一である場合は、ビデオパラメータセット拡張(VPS extension)でシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用い、NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一でない場合は、スライスセグメントヘッダーでシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用いる。
【0167】
ref_layer_idx[i]は、当該ピクチャが直接的に参照するi番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)を表わす。
【表21】
【0168】
表21に示す通り、inter_layer_pred_enabled_flagが『1』であれば、当該ピクチャが階層間予測を用いることを表わし、inter_layer_pred_enabled_flagが『0』であれば、階層間予測を用いないことを表わす。
【0169】
layer_dependency_vps_flagは、参照階層情報をスライスヘッダー(スライスセグメントヘッダー)でシグナリングするのか否かを表わす。layer_dependency_vps_flagが『0』の場合、参照階層情報をスライスヘッダーでシグナリングすることを表わし、layer_dependency_vps_flagが『1』の場合は、スライスセグメントヘッダーで参照階層情報をシグナリングせず、ビデオパラメータセット拡張(VPS extension)でシグナリングされた参照階層情報を当該ピクチャの参照階層情報として用いることを表わす。
【0170】
layer_dependency_vps_flagが『1』であれば、slice_num_direct_ref_layersはNumDirectRefLayers[nuh_layer_id]値と同一であり得、ref_layer_idx[i]はiとみなされてよい。
layer_dependency_vps_flag値がシグナリングされない場合は、『0』の値にみなされてよい。max_one_active_ref_layer_flag値が『1』の場合は、layer_dependency_vps_flagは『0』の値を有することができる。
【0171】
slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0172】
max_one_active_ref_layer_flagが『1』の場合は、NumActiveRefLayerPics = 1(NumActiveRefLayerPics = slice_num_driect_ref_layers)になるので、slice_num_direct_ref_layersはシグナリングされない。
【0173】
ref_layer_idx[i]は、当該ピクチャが直接的に参照するi番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)を表わす。
【表22】
【0174】
表22に示す通り、inter_layer_pred_enabled_flagが『1』であれば、当該ピクチャが階層間予測を用いることを表わし、inter_layer_pred_enabled_flagが『0』であれば、階層間予測を用いないことを表わす。
【0175】
slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わすか、ピクチャの階層間予測に用いられる階層参照ピクチャの数を表わすことができる。slice_num_direct_ref_layersに特定される参照階層の数または階層参照ピクチャの数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一である場合は、ビデオパラメータセット拡張(VPS extension)でシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用い、NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一でない場合は、スライスセグメントヘッダーでシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用いる。
【0176】
ref_layer_idx[i]は、当該ピクチャが直接的に参照するi番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)を表わす。
【0177】
表22のNumDirecRefLayers[nuh_layer_id]は、ビデオパラメータセット拡張で受信される階層依存性情報に基づいて誘導されてよい。階層依存性情報は、シンタックス要素direct_dependency_flag[i][j]にシグナリングされてよく、全体のビットストリームでi番目のインデックスを有する階層がj番目の階層を直接的に参照するのか否かを表わす。このような階層依存性情報により、全体のビットストリームでi番目の階層が参照する参照階層の情報を把握することができる。
【0178】
つまり、direct_dependency_flag[i][j]のようなフラグ情報(参照階層情報)を介し、現在の階層がビットストリーム全体で参照することのできる参照階層の個数を誘導することができる。
【0179】
現在の階層のnuh_layer_id値が0より大きく、即ち、現在の階層が基本階層ではなく、誘導された参照階層の個数が0より大きければ、現在の階層内の現在のピクチャのデコーディングに階層間予測が用いられるのか否かを表わすフラグ情報(inter_layer_pred_enabled_flag)が受信される。
【0180】
inter_layer_pred_enabled_flagが1であり、NumDirectRefLayers[nuh_layer_id]が1より大きく(NumDirectRefLayers[nuh_layer_id ] > 1)、全体のビットストリームに含まれている全ての階層が一つの参照階層を用いるものでなければ(!max_one_active_ref_layer_flag)、現在のピクチャの階層間予測のために用いられ得る参照ピクチャの個数を特定することのできる参照ピクチャ個数情報(slice_num_direct_ref_layers)が受信される。以下では、階層間予測のために用いられ得る参照ピクチャを階層参照ピクチャ(inter layer reference picture)と表現し、階層参照ピクチャの個数を特定することのできる情報を階層参照ピクチャ個数情報と表現する。
【0181】
もし、現在のピクチャの属した階層が参照する参照階層の個数が最大一つであれば、現在のピクチャが参照する階層の数も一つになる。
【0182】
階層参照ピクチャ個数情報は、num_inter_layer_ref_pics_minus1のようなシンタックス要素にシグナリングされてもよい。
【0183】
階層参照ピクチャの個数(NumActiveRefLayerPics)は、シグナリングされる階層参照ピクチャ情報の値(slice_num_direct_ref_layersの場合)に特定されてよく、階層参照ピクチャ個数情報に1を足した値(num_inter_layer_ref_pics_minus1の場合)に特定されてもよい。
【0184】
参照階層の個数(NumDirecRefLayers[nuh_layer_id])と階層参照ピクチャの個数(NumActiveRefLayerPics)が同一でなければ(NumDirectRefLayers[ nuh_layer_id ] != NumActiveRefLayerPics)、参照階層のうち現在のピクチャが参照する参照階層に対する階層情報(ref_layer_idx [i])が受信される。
【0185】
階層情報は、現在のピクチャが参照することのできる参照ピクチャの階層のIDに対する情報であってよい。
【表23】
【0186】
表23に示す通り、inter_layer_pred_enabled_flagが『1』であれば、当該ピクチャが階層間予測を用いることを表わし、inter_layer_pred_enabled_flagが『0』であれば、階層間予測を用いないことを表わす。
【0187】
layer_dependency_vps_flagは、参照階層情報をスライスヘッダー(スライスセグメントヘッダー)でシグナリングするのか否かを表わす。layer_dependency_vps_flagが『0』の場合、参照階層情報をスライスヘッダーでシグナリングすることを表わし、layer_dependency_vps_flagが『1』の場合は、スライスセグメントヘッダーで参照階層情報をシグナリングせず、ビデオパラメータセット拡張(VPS extension)でシグナリングされた参照階層情報を当該ピクチャの参照階層情報として用いることを表わす。
【0188】
slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。
【0189】
max_one_active_ref_layer_flagが『1』の場合は、NumActiveRefLayerPics = 1(NumActiveRefLayerPics = slice_num_driect_ref_layers)になるので、slice_num_direct_ref_layersはシグナリングされない。
【0190】
ref_layer_idx_delta[j]は、当該ピクチャが直接的に参照するj番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)と、j-1番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)との差を表わす。ref_layer_idx_delta[0]は、0番目の参照階層のインデックスを表わす。
【表24】
【0191】
表24に示す通り、inter_layer_pred_enabled_flagが『1』であれば、当該ピクチャが階層間予測を用いることを表わし、inter_layer_pred_enabled_flagが『0』であれば、階層間予測を用いないことを表わす。
【0192】
slice_num_direct_ref_layersは、当該ピクチャが直接的に参照する参照階層の数を表わす。slice_num_direct_ref_layersに特定される参照階層の数は、ビデオパラメータセットでシグナリングされる当該ピクチャと同一のlayer_id(即ち、nuh_layer_id)を有する階層等が参照する参照階層の数(即ち、NumDirectRefLayers[nuh_layer_id])と同一であるか小さくなければならない。NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一である場合は、ビデオパラメータセット拡張(VPS extension)でシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用い、NumDirectRefLayers[nuh_layer_id]値とslice_num_direc_ref_layers値が同一でない場合は、スライスセグメントヘッダーでシグナリングされる参照階層情報を当該ピクチャの参照階層情報として用いる。
【0193】
ref_layer_idx_delta[j]は、当該ピクチャが直接的に参照するj番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)と、j-1番目の参照階層のインデックス(ビデオパラメータセットに記述されたインデックス基準)との差を表わす。ref_layer_idx_delta[0]は、0番目の参照階層のインデックスを表わす。
【0194】
このとき、スライスヘッダーで記述される当該スライスが符号化するときに参照することのできる階層等は、全体のビットストリームで現在の符号化対象階層と同一の階層等が参照することのできる参照階層等のサブセットであってよい。
【0195】
例えば、スライスヘッダーにシグナリングされる参照階層等は、ビデオパラメータセットでシグナリングされる現在の符号化対象階層と同一の階層等が参照することのできる参照階層リストのサブセットであってよい。
【0196】
さらに、
図5に戻り、現在の符号化対象階層のピクチャが参照することのできる階層のリストを構成した符号化装置は、現在の符号化対象ピクチャの画面間予測のため対象階層が参照することのできる参照階層の復元されたピクチャが含まれている参照ピクチャ集合(reference picture set)を構成し、参照ピクチャ形態表示(reference picture marking)を行う(S520)。
【0197】
このとき、符号化装置は、参照階層リストに含まれているピクチャ等で構成された復元されたピクチャに可用なのか(available)を確認し、可用である場合、当該復元ピクチャを参照ピクチャ集合に含ませ、可用でない場合、当該復元ピクチャを『no reference picture』と表示することができる。
【0198】
参照階層リストに含まれているピクチャ等で構成された参照ピクチャ集合(以下、第1集合)は『used for long term reference』に表示され、現在の符号化対象ピクチャの画面間予測時に長期参照ピクチャ(long-term reference picture)に取り扱われてよい。
【0199】
第1集合、即ち、参照階層リストに含まれているピクチャ等で構成された参照ピクチャ集合以外に、現在の符号化対象階層と同一の階層のピクチャ等でなる画面間予測のための参照ピクチャ集合は、多様な形態で存在することができる。
【0200】
画面間予測のための参照ピクチャ集合は、現在の符号化対象ピクチャの画面間予測に用いられ、ディスプレーの順で現在の符号化対象ピクチャを基準に以前である短期参照ピクチャ(short-term reference picture)(第2集合)、現在の符号化対象ピクチャの画面間予測に用いられ、ディスプレーの順で現在の符号化対象ピクチャを基準に以後である短期参照ピクチャ(第3集合)、現在の符号化対象ピクチャの画面間予測のための長期参照ピクチャ(第4集合)、現在の符号化対象ピクチャ以後に符号化することのできるピクチャのための短期参照ピクチャ(第5集合)、現在の符号化対象ピクチャ以後に符号化することのできるピクチャのための長期参照ピクチャ(第6集合)で構成されてよい。
【0201】
その後、符号化装置は、参照ピクチャ集合と参照ピクチャ形態に従って参照ピクチャリストを生成する(S530)。
【0202】
符号化装置は、前記のような幾多の参照ピクチャ集合に基づき、参照ピクチャ集合の特性と参照ピクチャ形態に従って現在の符号化対象ピクチャの参照ピクチャリストを生成することができる。
【0203】
一例として、符号化装置は、現在の符号化対象ピクチャと同一の階層のピクチャ等からなる参照ピクチャ集合等で構成された画面間参照ピクチャリストL0及びL1に、ステップS520で生成された参照階層リストで構成された参照ピクチャ集合を次のように追加して最終の参照ピクチャリストを生成することができる。
【0204】
この場合、符号化装置は、参照ピクチャリストの生成の都度、固定された位置に参照階層の復元されたピクチャを追加することもでき、効率的な符号化のため、参照ピクチャリストを生成した後、さらに参照階層の復元されたピクチャの位置を変更することもできる。
【0205】
参照ピクチャリストの生成の都度、固定された位置に参照階層の復元されたピクチャを追加する場合、L0リストの生成時に第1集合を最後或いは一番目(ref_idx=0)或いは二番目(ref_idx=1)の位置から追加することができる。
【0206】
参照階層の復元されたピクチャをL0リストの中間位置に追加する場合、当該位置及びそれ以後にあるピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0207】
または、符号化装置は、L0リストの生成時に、一番目(ref_idx=0)或いは二番目(ref_idx=1)の位置から参照階層リストを構成する参照ピクチャの数ほどの参照ピクチャ等を第1集合で代替することができる。
【0208】
符号化装置は、L0リストの生成時に、第1集合を任意のシグナリングされた位置から追加することができる。第1集合がリストの中間位置に追加される場合、当該位置及びそれ以後にあったピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0209】
または、符号化装置は、L0リストの生成時に、任意のシグナリングされた位置から参照階層リストを構成する参照ピクチャの数ほどの参照ピクチャ等を第1集合で代替することができる。
【0210】
または、符号化装置は、L0リストの生成時に、第1集合の参照階層リストに含まれているそれぞれのピクチャ等を任意の互いに異なる位置に追加することができる。このとき、符号化装置は、追加されたピクチャ等の当該位置及びそれ以後にあったピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0211】
または、符号化装置は、L0リストの生成時に、任意の互いに異なる位置にある参照ピクチャ等を、第1集合の参照階層リストに含まれているそれぞれのピクチャ等で代替することができる。
【0212】
または、符号化装置は、L1リストの生成時に、第1集合を最後或いは一番目(ref_idx=0)或いは二番目(ref_idx=1)の位置に追加することができる。
【0213】
参照階層をL1リストの中間位置に追加する場合、符号化装置は、当該位置及びそれ以後にあるピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0214】
または、符号化装置は、L1リストの生成時に、一番目(ref_idx=0)或いは二番目(ref_idx=1)の位置から参照階層リストで構成された参照ピクチャ集合の数ほどの参照ピクチャ等を第1集合で代替することができる。
【0215】
符号化装置は、L1リストの生成時に、第1集合を任意のシグナリングされた位置から追加することができる。第1集合がリストの中間位置に追加される場合、当該位置及びそれ以後にあったピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0216】
または、符号化装置は、L1リストの生成時に、任意のシグナリングされた位置から参照階層リストを構成する参照ピクチャの数ほどの参照ピクチャ等を第1集合で代替することができる。
【0217】
または、符号化装置は、L1リストの生成時に、第1集合の参照階層リストに含まれているそれぞれのピクチャ等を任意の互いに異なる位置に追加することができる。このとき、符号化装置は、追加されたピクチャ等の当該位置及びそれ以後にあったピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0218】
または、符号化装置は、L1リストの生成時に、任意の互いに異なる位置にある参照ピクチャ等を、第1集合の参照階層リストに含まれているそれぞれのピクチャ等で代替することができる。
【0219】
一方、参照ピクチャリストを生成した後、さらに効率的な符号化のため参照階層の復元されたピクチャの位置を変更する場合、スライスヘッダー或いはピクチャパラメータセットに含まれ得る符号化パラメータを利用し、参照階層の復元されたピクチャの位置を参照ピクチャリストの如何なる位置へも変更させることができる。
【0220】
参照階層リストが生成されると、符号化装置は、参照ピクチャリスト内の参照ピクチャを利用し、現在の符号化対象ピクチャに対する動き推定及び動き補償を行うことができる(S540)。
【0221】
符号化装置は、通常の画面間予測方法により、参照ピクチャリスト内の参照ピクチャを利用して、現在の符号化対象ピクチャに対する動き推定及び動き補償を行うことができる。
【0222】
図6は、本発明の一実施形態に係る復号化装置において、上位階層の復号化を行う方法を説明するための制御フローチャートである。本発明に係る復号化装置は、少なくとも一つ以上のスケーラビリティ(例えば、空間、画質、視点スケーラビリティ)を支援し、多階層構造を支援するビデオ構造で上位階層の復号化を行う。
【0223】
図6に示す通り、先ず、復号化装置は、現在の復号化対象ピクチャが参照することのできる階層等のリストを構成する(S610)。
【0224】
ビットストリームが少なくとも一種類以上のスケーラビリティ(例えば、空間、画質、視点スケーラビリティ)を支援すれば、本発明の一実施形態に係る復号化装置は、少なくとも一つ以上の階層に対する参照階層リストを構成することができる。このような構成を有する参照階層リスト等は、現在の復号化対象ピクチャを復号化するために用いられ得る。
【0225】
復号化装置は、ビデオパラメータセット等に含まれてシグナリングされる現在の復号化対象階層の参照階層情報を利用し、下記のような参照階層リストを構成することができる。
【0226】
本発明の一実施形態によれば、復号化装置は、全体のビットストリームで現在の復号化対象階層と同一の階層等が参照することのできる参照階層リストを構成することができる。参照階層リストは、現在の復号化対象ピクチャの属した階層と同一の階層に属したピクチャ等を復号化するために用いられてよく、ビデオパラメータセットでシグナリングされる現在の復号化対象階層の参照階層情報に基づいて構成されてよい。
【0227】
例えば、復号化装置は、表1に示す通り、シグナリングされるnuh_layer_id[i]の値のうち、現在の復号化対象ピクチャの属した階層と同一のnuh_layer_id値を有する階層の参照階層等(ref_layer_id)で参照階層リストを構成することができる。
【0228】
シグナリングされた参照階層情報を利用した参照階層リストの構成において、リスト内での参照階層の順は、次の方法のうち一つで決められてよい。
【0229】
先ず、参照階層は、表1及び表2でシグナリングされる順に構成されてよい。
【0230】
または、復号化装置は、layer_id値が復号化対象階層のlayer_id値との差が小さい階層(即ち、近い階層)から大きい階層の順に参照階層リストを構成することができる。
【0231】
または、復号化装置は、優先順位(priority)が高い階層から低い階層の順に空間画質参照階層リストを構成することができる。
【0232】
このとき、優先順位に対する情報は、NALユニットヘッダー或いはビデオパラメータセット等でシグナリングされてよい。
【0233】
または、復号化装置は、現在の復号化対象と同一視点を有する参照階層等のうち、現在の復号化対象階層と空間解像度の差が小さい階層から大きい階層の順に空間画質参照階層リストを構成することができる。
【0234】
このとき、同一の空間解像度での画質参照階層の順は、現在の復号化対象階層のlayer_id値との差が小さい階層(即ち、近い階層)から大きい階層の順に構成することができる。
【0235】
さらに、現在の復号化対象階層の視点と近い視点から遠い視点の順に階層等が参照階層リストに含まれてよく、同一の視点内の階層等が参照階層リストに含まれる順は、前で記述した現在の復号化対象階層と同一視点の階層等と同一の方式を適用することができる。
【0236】
例えば、
図4のようなビットストリーム構造で、layer_idがnである階層の参照階層リストは、layer_idがn-1、n-2、n-3、n-4、n-5、n-6、n-7、n-8、n-9、n-10、n-11である階層の順に構成されてよい。
【0237】
または、現在の復号化対象階層と同一視点を有する階層等のうち、現在の復号化対象階層と空間解像度の差が小さい階層から大きい階層の順に構成されてよい。このとき、同一の空間解像度での画質参照階層の順は、復号化を図る量子化パラメータ(quantization parameter)値が低い値から高い値の順(即ち、復号時の画質が良好な階層から低い階層の順)であってよい。
【0238】
さらに、現在の復号化対象階層の視点と近い視点から遠い視点の順に階層等が参照階層リストに含まれてよく、同一の視点内の階層等が参照階層リストに含まれる順は、前で記述した現在の復号化対象階層と同一視点の階層等と同一の方式を適用することができる。
【0239】
本発明の他の実施形態に基づき、復号化装置は、現在復号化を図るピクチャの現在の復号化対象階層(或いは当該スライス)が参照可能な参照階層リストを構成することができ、構成された参照階層リストは、現在の復号化対象ピクチャを復号化するために用いられ得る。
【0240】
復号化装置は、現在の復号化対象階層のスライスヘッダーでシグナリングされる参照階層情報を利用して参照階層リストを構成することができる。
【0241】
現在の復号化対象ピクチャが一つ以上のスライスに分けられている場合も、スライスヘッダーでシグナリングされる参照階層情報は同一であってもよく、スライスごとに異なる参照階層情報を有することもできる。
【0242】
復号化装置は、表3から表24までのいずれか一つによってシグナリングされる情報に基づき、参照階層等で参照階層リストを構成することができる。
【0243】
このとき、スライスヘッダーでシグナリングされる参照階層等は、全体のビットストリームで現在の復号化対象階層と同一の階層等が参照することのできる参照階層等のサブセットであってよい。
【0244】
例えば、スライスヘッダーにシグナリングされる参照階層等は、ビデオパラメータセットでシグナリングされる現在の復号化対象階層と同一の階層等が参照することのできる参照階層リストのサブセットであってよい。
【0245】
シグナリングされるか、シグナリングされた情報を活用して得られる参照階層情報(ref_layer_id)を利用した参照階層リストの構成において、参照階層リスト内で参照階層の順は、下記のように多様に構成することができる。
【0246】
先ず、復号化装置は、表3から表24までのいずれか一つによってシグナリングされる順に、参照階層を参照階層リストに追加することができる。
【0247】
または、復号化装置は、参照階層のlayer_id値が復号化対象階層のlayer_id値との差が小さい階層(即ち、近い階層)から大きい階層の順に構成して空間画質参照階層リストを生成することができる。
【0248】
または、参照階層リストは、参照階層等のうち、優先順位(priority)が高い階層から低い階層の順に構成されてよい。
【0249】
このとき、優先順位と係わる情報は、NALユニットヘッダー(NALU header)或いはビデオパラメータセット(video parameter set)などに含まれてシグナリングされてよい。
【0250】
または、現在の復号化対象階層と同一視点を有する参照階層リストは、現在の復号化対象階層と空間解像度の差が小さい階層から大きい階層の順に構成されてよい。このとき、同一の空間解像度を有する画質参照階層の順は、現在の復号化対象階層のlayer_id値との差が小さい階層(即ち、近い階層)から大きい階層の順であってよい。
【0251】
この場合、さらに、現在の復号化対象階層の視点と近い視点から遠い視点の順に階層等が参照階層リストに含まれてよく、同一の視点内の階層等が参照階層リストに含まれる順は、前で記述した現在の復号化対象階層と同一視点の階層等と同一の方式を適用することができる。
【0252】
例えば、
図4のようなビットストリーム構造で、layer_idがnである階層の参照階層リストは、layer_idがn-1、n-2、n-3、n-4、n-5、n-6、n-7、n-8、n-9、n-10、n-11である階層の順に構成されてよい。
【0253】
または、現在の復号化対象階層と同一視点を有する階層等のうち、現在の復号化対象階層と空間解像度の差が小さい階層から大きい階層の順に参照階層リストが構成されてよい。このとき、同一の空間解像度での画質参照階層の順は、復号化を図る量子化パラメータ(quantization parameter)値が低い値から高い値の順(即ち、復号時の画質が良好な階層から低い階層の順)であってよい。
【0254】
この場合、さらに、現在の復号化対象階層の視点と近い視点から遠い視点の順に階層等が参照階層リストに含まれてよく、同一の視点内の階層等が参照階層リストに含まれる順は、前で記述した現在の復号化対象階層と同一視点の階層等と同一の方式を適用することができる。構成された参照階層リストは、当該スライスを復号化するために用いられ得る。
【0255】
最大限に参照することのできる階層の数はビットストリーム全体に対し制限されてよく、これはビデオパラメータセット、シーケンスパラメータセット或いはスライスヘッダーなどでシグナリングされてもよく、プロファイル及びレベルによって制約を設けることもできる。
【0256】
復号化装置は、構成された参照階層リストに対し追加シグナリング(例えば、スライスヘッダーのような上位レベルのシグナリング)がある場合、シグナリングで表現する内容に従ってリスト内での順を変更することができる。
【0257】
次に、復号化装置は、現在の復号化対象ピクチャの画面間予測のため、参照階層の復元されたピクチャを含む参照ピクチャ集合を構成し、参照ピクチャ形態を表示する(S620)。
【0258】
復号化装置は、現在の復号化対象ピクチャの画面間予測のため、参照階層の復元されたピクチャを含む参照ピクチャ集合(reference picture set)を構成し、参照ピクチャ形態を表示(reference picture marking)することができる。
【0259】
即ち、復号化装置は、参照階層リストに含まれているピクチャ等で構成された参照ピクチャ集合(第1集合)を構成する。このとき、参照階層リストに含まれているピクチャが復元されたピクチャに可用なのか(available)を確認し、可用である場合、当該復元ピクチャを参照ピクチャ集合に含ませ、可用でない場合、当該復元ピクチャを『no reference picture』と表示することができる。
【0260】
第1集合は『used for long term reference』に表示し、現在の復号化対象ピクチャの画面間予測時に長期参照ピクチャとして取り扱うことができる。
【0261】
復号化装置は、第1集合、即ち、参照階層リストに含まれているピクチャ等で構成された参照ピクチャ集合以外に、現在の復号化対象階層と同一の階層のピクチャからなる、画面間予測のための下記のように多様な参照ピクチャ集合を構成することができる。
【0262】
参照ピクチャ集合等は、現在の復号化対象ピクチャの画面間予測に用いられ、ディスプレーの順で現在の復号化対象ピクチャを基準に以前である短期参照ピクチャ(第2集合)、現在の復号化対象ピクチャの画面間予測に用いられ、ディスプレーの順で現在の復号化対象ピクチャを基準に以後である短期参照ピクチャ(第3集合)、現在の復号化対象ピクチャの画面間予測のための長期参照ピクチャ(第4集合)、現在の復号化対象ピクチャ以後に復号化することのできるピクチャのための短期参照ピクチャ(第5集合)、現在の復号化対象ピクチャ以後に復号化することのできるピクチャのための長期参照ピクチャ(第6集合)のうち少なくとも一つであってよい。
【0263】
その後、復号化装置は、参照ピクチャ集合と参照ピクチャ形態に従って参照ピクチャリストを生成する(S630)。
【0264】
復号化装置は、参照ピクチャ集合と参照ピクチャ形態に従って現在の復号化対象ピクチャの参照ピクチャリストを生成することができる。つまり、復号化装置は、第1集合と前記第2集合から第4集合を組み合わせて参照ピクチャリストを生成することができる。
【0265】
例えば、復号化装置は、現在の復号化対象ピクチャの参照ピクチャリストの生成において、現在の復号化対象ピクチャと同一の階層のピクチャ等からなる参照ピクチャ集合等で構成された画面間参照ピクチャリストL0及びL1に、第1集合に含まれている参照階層リストで構成された参照ピクチャ集合を追加し、最終の参照ピクチャリストを生成することができる。
【0266】
この場合、参照ピクチャリストの生成の都度、固定された位置に参照階層の復元されたピクチャを追加することもでき、効率的な符号化のため、参照階層の復元されたピクチャの位置を変更することもできる。
【0267】
参照ピクチャリストの生成の都度、固定された位置に参照階層の復元されたピクチャを追加する場合、L0リストの生成時に、第1集合を最後或いは一番目(ref_idx=0)或いは二番目(ref_idx=1)の位置から追加することができる。
【0268】
参照階層をL0リストの中間位置に追加する場合、当該位置以後にあるピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0269】
または、復号化装置は、L0リストの生成時に、一番目(ref_idx=0)或いは二番目(ref_idx=1)の位置から、参照階層リストを構成する参照ピクチャの数ほどの参照ピクチャ等を第1集合で代替することができる。
【0270】
または、復号化装置は、L0リストの生成時に、第1集合を任意のシグナリングされた位置から追加することができる。このとき、リストの中間位置に追加する場合、当該位置及びそれ以後にあったピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0271】
復号化装置は、L0リストの生成時に、任意のシグナリングされた位置から、参照階層リストを構成する参照ピクチャの数ほどの参照ピクチャ等を第1集合で代替することができる。
【0272】
復号化装置は、L0リストの生成時に、第1集合に含まれているそれぞれのピクチャ等を任意の互いに異なる位置に追加することができる。このとき、追加されたピクチャ等の当該位置及びそれ以後にあったピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0273】
復号化装置は、L0リストの生成時に、第1集合に含まれているそれぞれのピクチャ等で任意の互いに異なる位置にある参照ピクチャ等を代替することができる。
【0274】
または、復号化装置は、L1リストの生成時に、第1集合を最後或いは一番目(ref_idx=0)或いは二番目(ref_idx=1)の位置に追加することができる。
【0275】
参照階層をL1リストの中間位置に追加する場合、当該位置以後にあるピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0276】
または、復号化装置は、L1リストの生成時に、一番目(ref_idx=0)或いは二番目(ref_idx=1)の位置から、参照階層リストを構成する参照ピクチャの数ほどの参照ピクチャ等を第1集合で代替することができる。
【0277】
復号化装置は、L1リストの生成時に、第1集合を任意のシグナリングされた位置から追加することができる。このとき、リストの中間位置に追加する場合、当該位置及びそれ以後にあったピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0278】
復号化装置は、L1リストの生成時に、任意のシグナリングされた位置から、参照階層リストを構成する参照ピクチャの数ほどの参照ピクチャ等を第1集合で代替することができる。
【0279】
復号化装置は、L1リストの生成時に、第1集合に含まれているそれぞれのピクチャ等を任意の互いに異なる位置に追加することができる。このとき、追加されたピクチャ等の当該位置及びそれ以後にあったピクチャ等のリストにおけるインデックスを追加した参照階層の数(参照階層リストを構成する参照ピクチャの数)ほどずつ増加させることができる。
【0280】
復号化装置は、L1リストの生成時に、第1集合に含まれているそれぞれのピクチャ等で、任意の互いに異なる位置にある参照ピクチャ等を代替することができる。
【0281】
一方、参照ピクチャリストを生成した後、さらに効率的な符号化のため、参照階層の復元されたピクチャの位置を変更する場合、スライスヘッダー或いはピクチャパラメータセットに含まれ得る符号化パラメータを利用し、参照階層の復元されたピクチャの位置を参照ピクチャリストの如何なる位置へも変更することができる。
【0282】
参照階層リストが生成されると、参照ピクチャリスト内の参照ピクチャを利用し、現在の復号化対象ピクチャに対する動き推定及び動き補償を行うことができる(S640)。
【0283】
現在の階層の現在の復号化対象ブロックが画面間予測を行う場合、復号化装置は、参照ピクチャリスト内の参照ピクチャを利用し、現在の復号化対象ブロックに対する動き補償を行うことができる。
【0284】
図7は、本発明の一実施形態に係るピクチャデコーディング装置の制御ブロック図である。
【0285】
図示されている通り、デコーディング装置は、ピクチャ情報をパーシングするパーシング部710と、パーシング部710のピクチャ情報を利用して現在のピクチャを予測するデコーディング部720とを含む。
【0286】
パーシング部710は、現在の階層がビットストリーム全体で参照することのできる参照階層に対する階層依存性情報を受信してパーシングし、現在の階層内の現在のピクチャのデコーディングに階層間予測が用いられる場合、参照階層のうち現在のピクチャが参照する参照階層に対する階層情報を受信してパーシングする。
【0287】
階層依存性情報は、ビデオパラメータセット拡張に含まれて受信されてよい。
【0288】
一方、現在のピクチャが参照する参照階層に対する階層情報は、現在のピクチャが参照することのできる参照ピクチャの階層のIDに対する情報であり、階層情報はスライスヘッダーに含まれてよい。
【0289】
このとき、階層依存性情報に基づき、現在の階層がビットストリーム全体で参照することのできる参照階層の個数が誘導されてよい。
【0290】
パーシング部710は、誘導された参照階層の個数が0より大きければ、現在の階層内の現在のピクチャのデコーディングに階層間予測が用いられるのか否かを表わすフラグ情報を受信してパーシングすることができる。
【0291】
フラグ情報が1であり、参照階層の個数が1より大きく、全体のビットストリームに含まれている全ての階層が一つの参照階層を用いるものでなければ、パーシング部710は、現在のピクチャの階層間予測のために用いられ得る階層参照ピクチャの個数を特定することのできる階層参照ピクチャ個数情報を受信してパーシングすることができる。
【0292】
階層参照ピクチャの個数は、階層参照ピクチャ個数情報に1を足した値に特定されてよい。つまり、階層参照ピクチャ個数情報は、階層参照ピクチャの個数から1を引いた値でシグナリングされてよい。
【0293】
このとき、階層情報は、参照階層の個数と階層参照ピクチャの個数とが同一でない場合にだけ受信されてよい。
【0294】
デコーディング部720は、階層情報に基づいて現在のピクチャのデコーディングを行うことができる。
【0295】
図8は、本発明の一実施形態に係るピクチャデコーディング装置のデコーディング方法を説明するための制御フローチャートである。
【0296】
先ず、デコーディング装置は、現在の階層がビットストリーム全体で参照することのできる参照階層に対する階層依存性情報を受信してパーシングする(S810)。
【0297】
階層依存性情報は、ビデオパラメータセット拡張に含まれて受信されてよい。
【0298】
その後、デコーディング装置は、階層依存性情報に基づき、現在の階層がビットストリーム全体で参照することのできる参照階層の個数を誘導する(S820)。
【0299】
参照階層の個数が0より大きければ、デコーディング装置は、現在の階層内の現在のピクチャのデコーディングに階層間予測が用いられるのか否かを表わすフラグ情報を受信してパーシングすることができる(S830)。
【0300】
フラグ情報が1であり、参照階層の個数が1より大きく、全体のビットストリームに含まれている全ての階層が最大一つの参照階層を用いるものでなければ、デコーディング装置は、現在のピクチャの階層間予測のために用いられ得る階層参照ピクチャの個数を特定することのできる階層参照ピクチャ個数情報を受信してパーシングすることができる(S840)。
【0301】
階層参照ピクチャの個数は、シグナリングされる階層参照ピクチャ情報の値に特定されてもよく、階層参照ピクチャ個数情報に1を足した値に特定されてよい。
【0302】
ステップS820で誘導された参照階層の個数と、ステップS840で確認された階層参照ピクチャの個数とが同一でなければ(S850)、デコーディング装置は、参照階層のうち現在のピクチャが参照する参照階層に対する階層情報を受信してパーシングする(S860)。
【0303】
つまり、デコーディング装置は、現在の階層内の現在のピクチャのデコーディングに階層間予測が行われ、前記条件等が満足すれば、階層情報を受信する。
【0304】
階層情報は、現在のピクチャが参照することのできる参照ピクチャの階層のIDに対する情報であってよく、ビットストリームでスライスヘッダーに含まれて受信されてよい。
【0305】
階層情報が把握されると、デコーディング装置は、階層情報に基づいて現在のピクチャのデコーディングを行う(S870)。
【0306】
一方、参照階層の個数と階層参照ピクチャの個数とが同一であれば、VPSでシグナリングされた階層依存性情報に基づいて現在のピクチャをデコーディングする(S880)。
【0307】
このように、本発明による場合、一つ以上の参照階層を含んだ参照ピクチャリストを効率よく生成及び管理し、符号化/復号化効率を向上させることのできるピクチャの符号化/復号化方法、及びこれを利用する装置が提供される。
【0308】
さらに、参照階層の復元されたピクチャを含み、参照ピクチャリストを生成するとき、参照ピクチャリスト内での参照階層等の復元されたピクチャの位置、及び参照階層の復元されたピクチャの間の順を調整することのできるピクチャの符号化/復号化方法、及びこれを利用する装置が提供される。
【0309】
前述した実施形態で、方法等は一連のステップまたはブロックでフローチャートに基づき説明されているが、本発明は、ステップ等の順に限定されるものではなく、あるステップは、前述したところと異なるステップと異なる順に、または同時に発生することができる。さらに、当該技術分野で通常の知識を有する者であれば、フローチャートに示されたステップ等が排他的でなく、他のステップが含まれるか、フローチャートの一つまたはそれ以上のステップが、本発明の範囲に影響を及ぼすことなく削除され得ることを理解することができるはずである。
【0310】
前述した実施形態は、多様な態様の例示を含む。多様な態様を表わすためのあらゆる可能な組み合わせを記述することはできないが、当該技術分野の通常の知識を有する者は、他の組み合わせが可能であることを認識することができるはずである。よって、本発明は、特許請求の範囲内に属する全ての他の交替、修正及び変更を含むと言える。