クラスタに基づいた依存信号

著者らは特許

H04L1 - 受信情報中の誤りを検出または防止するための配置
H04N19/119 - 適応的な再分割の側面,例.長方形または非長方形符号化ブロックへのピクチャの再分割
H04N19/166 - 伝送誤りの量に関するもの,例.ビットエラーレート
H04N19/174 - 領域がスライス,例.ブロックのラインまたはブロックのグループ,であるもの
H04N19/187 - ユニットがスケーラブルビデオレイヤであるもの
H04N19/30 - 階層的技術,例.スケーラビリティ,を用いるもの(H04N19/63が優先)
H04N19/33 - 空間領域でのもの
H04N19/423 - メモリ配置に特徴があるもの(H04N19/433が優先)
H04N19/44 - そのために特別に適合した復号器,例.符号化器と非対称のビデオ復号器
H04N19/50 - 予測符号化を用いるもの(H04N19/61が優先)
H04N19/593 - 空間的予測技術に関するもの
H04N19/65 - 誤り耐性を用いるもの
H04N19/66 - データパーティショニング,すなわち重要度に応じてデータをパケットまたはパーティションに分割すること,に関するもの
H04N19/70 - ビデオ符号化に関連したシンタックス側面に特徴があるもの,例.圧縮標準規格に関連したもの
H04N19/85 - ビデオ圧縮のために特別に適合した前処理または後処理を用いるもの
H04N19/89 - 復号器における伝送誤りの検出のための方法または装置に関するもの
H04N19/91 - エントロピー符号化,例.可変長符号化または算術符号化

の所有者の特許 JP2016527794:

ジーイー ビデオ コンプレッション エルエルシー

 

多層データストリームの層間の相互層依存の信号化が説明される。一方の相互層依存の潜在的な多様性の非常に集中的な制限と他方の相互層依存の非常に複雑な信号との間の良好な妥協案は、ベース層IDによって表現できる異なる値のペア間に相互依存を示している第1相互依存構文構造と、多層データストリームの部分が関連する層に索引を付ける拡張層ID、又は、ベース層IDおよび拡張層IDによって表現できる異なる値のペア間の相互依存を標示している第2相互依存構文構造との方法によって、相互層依存を説明することによって見つけられる。この概念に従って、強調が、一方の信号化できる相互層依存の増大した多様性と他方の相互層依存を信号で伝えるための減少したサイド情報オーバーヘッドとの間にシフトされる。例えば、共通のベース層IDを持つ層のセットは、それぞれ、「クラスタ」と呼ぶ。同じ第2相互依存構文構造が、全てのクラスタ内の相互依存と第1相互依存構文構造を介して互いに関連した全てのクラスタ間の相互依存とを調節するために別々に使用される。代わりに、第2相互依存構文構造の2つの実例が、一方のクラスタ内の層の相互依存と他方の異なるクラスタの層間の相互依存とを説明するために用いられる。増大した多様性または減少したサイド情報オーバーヘッドに置かれた強調とは無関係に、概念を信号で伝えている相互依存は、信号オーバーヘッドを低く保持することを生じる。
【選択図】図3

 

 

本発明は、例えば多層ビデオ符号化の分野などの・・・・に関する。
HEVC基本仕様[非特許文献1]などのビデオ符号器規格、および、多ビュー(view)拡張[非特許文献2、3]などのその拡張は、通常、層にされた符号化シナリオにおいて、ビデオデータの個々の符号化された大きな塊が属する層を信号で伝えるためのメカニズムを引き継ぐ。信号化メカニズムはすぐに利用できることを必要とする(図1の表に与えられたHEVCのNALユニットヘッダー(nuh_layer_id)の中の層識別子と比較してください)。
ビットについてその有限サイズに関して、個々のHEVC構文要素は、スケーラブル層、ビューおよび/または奥行きを識別するために用いられる64個の値を許容する。例えば、現在のHEVC NALユニットヘッダー構文を使っている多ビュービデオに対して、これは、最大64個のビュー、または、32個のビュー+奥行きの組み合わせの制限を暗示している。これは多くの共通のステレオビューシナリオおよび他の応用のために十分であるけれども、光分野画像処理[非特許文献4、5]またはホログラフィックディスプレイ[非特許文献6]のような応用のための100個を超えるビューを有する莫大なカメラ配列は、層識別子のより大きい空間を信号で伝えるために拡張可能なメカニズムを必要とする。
さらに、それらの符号化依存(coding dependencies)もしくは互いの空間関係の観点から、所定の層またはビューをグループ化することによって層識別子の空間を構造化することが有利である。さらに、そのような情報を符号化されたビデオビットストリーム内の既に利用可能な情報から引き出すことが耐えられない計算処理源を必要とするので、構造化された層識別子空間の中の符号化依存のコンパクトな表現も利点がある。
B.ブロス、W.−J.ハン、J.−R.オーム、G.J.サリバン、T.ウィーガント(編集)、「高能率ビデオ符号化(HEVC)テキスト仕様書草稿10」、JCTVC−L1003、ジュネーブ、CH、2013年1月
G.テク、K.ウェグナー、Y.チェン、M.ハンニュクセラ、J.ボイス(編集)、「MV−HEVC草稿テキスト3(ISO/IEC 23008−2 PDAM2)」、JCT3V−C1004、ジュネーブ、CH、2013年1月
G.テク、K.ウェグナー、Y.チェン、S.イア(編集)、「3D−HEVCテストモデル説明書、草稿仕様書」、JCT3V−C1005、ジュネーブ、CH、2013年1月
ウィルバーン、ベネット他、大きいカメラ配列を使用している高性能画像、グラフィックのACMトランスアクション、2005、24。Jg.、Nr.3、S.765−776
ウィルバーン、ベネットS.他、光分野ビデオカメラ、電子画像処理2002、光学と光通信学のための国際協会、2001.S.29−36
ホリマイ ヒデヨシ他、360度水平線視角を持つフルカラー3Dディスプレイシステム、Proc.Int.3Dとコンテンツのシンポジウム、2010、S.7−10

従って、例えば、減少したサイド情報オーバーヘッド、および/または、発展したバックワード互換性について、より効率的である多層符号化に関連して・・・・の信号のための概念を提供することが、本応用の目的である。この目的は保留中の独立請求項の主題によって達成される。
本応用の面のうちの1つは、多層データストリームの層間の相互層依存の信号化に関係している。この面によると、一方の相互層依存の潜在的な多様性の非常に集中的な制限と、他方の相互層依存の非常に複雑な信号との間の良好な妥協案は、ベース層IDによって表現可能な異なる値のペア間の相互依存を標示している第1相互依存構文構造と、拡張層IDによって表現可能な異なる値のペア間の相互依存を標示している第2相互依存構文構造との方法によって、相互層依存を説明することによって見付けられる。多層データストリームの部分は、層に索引を付けているベース層IDおよび拡張層IDに関連する。この概念に従って、強調は、一方の信号化できる相互層依存の増大した多様性と、他方の相互層依存を信号で伝えるための減少したサイド情報オーバーヘッドとの間を移行する。例えば、共通のベース層IDを持つ層のセットを、それぞれ「クラスタ(群れ)」と呼ぶ。同じ第2相互依存構文構造は、第1の相互依存構文構造を介して、全てのクラスタ内の、および、互いに関連した全てのクラスタ間の相互依存を調節するために、別々に使用される。代わりに、第2相互依存構文構造の2つの例示が、一方のクラスタ内の層と他方の異なるクラスタの層間との相互依存を説明するために用いられる。増大した多様性または減少したサイド情報オーバーヘッドに置かれた強調とは無関係に、相互依存信号概念が、信号オーバーヘッドを低く保持することを生じる。
本応用の面のうちの1つは、多層ビデオ信号のパケットの各々が関連する層IDの信号に関係している。特にこの面は、この層関係を信号で伝える効率的な方法を達成する。それでも、ベース層IDフィールドの所定の値が、ベース層IDフィールドのベース層ID値が0のように拡張できないと制限される符号でバックワード互換性を維持する。この拡張できないベース層ID値についてこの制限を特に回避する代わりに、多層データストリームの部分の層IDは、ベース層IDフィールドを第1副フィールドおよび第2副フィールドに区分することによって拡張できる方法で信号で伝えられる。ベース層IDフィールドの第1の副フィールドが予め決められた基準を満たせば、いつでも、拡張層IDフィールドが提供される。仮にベース層IDフィールドの第1副フィールドが、予め決められた基準を満たさないならば、拡張層IDフィールドは省略される。前記の拡張できないベース層ID値は、ベース層IDフィールドの第1副フィールドが予め決められた基準を満たさないベース層ID値のグループ内に「隠されて」いる。従って、この拡張できないベース層ID値は別々に処理さるのではなく、前者のグループの部分が処理される。むしろ、仮にベース層IDフィールドの第1副フィールドが、予め決められた基準を満たすならば、拡張値は、拡張値のドメインの第1副セットの中に存在するように、多層データストリーム内の信号で伝えられた拡張層IDフィールドから引き出される。そして、仮にベース層IDフィールドの第1副フィールドが、予め決められた基準を満たさないならば、この拡張値は、拡張値のドメインの第1副セットに解体する値に設定される。個々の部分が関連する層は、その時、ベース層IDフィールドの第2副フィールドから引き出されるクラスタ値と同様の拡張値を使って索引を付けられる。大体、信号効率は、バックワード互換性の維持にも関わらず失われない。
本応用の面のうちの1つは、多層ビデオ信号などの層のための最低1つの特徴の信号(例えばそれぞれの層毎にそれぞれの層が相互層予測を介して直接に関連する依存層の標示)または、前述の第2相互依存構文構造の信号に関係している。この面に従って、最大の構文要素は、多層ビデオ信号のパケットの拡張層IDフィールドの最大限に使われた値を示すために、多層ビデオ信号内で信号が伝えられる。例えば、最大の構文要素の範囲は、多層ビデオ信号のいくつかの部分を横切って拡張している、多層ビデオ信号の予め決められた部分である。従って、この面によると、多層ビデオ信号の相対的に大きい予め決められた部分に対して、拡張層IDフィールドによって信号化できる可能な値の可能なドメインの実際に消費された部分についての知識を得ることは、多層ビデオ信号を受信するデコーダやネットワーク要素などの装置に対して適当である。最低1つの特徴が、ベース層IDフィールド値と拡張層IDフィールド値とのそれぞれの結合のために信号で伝えられる必要はないけれども、むしろ、最大限に仮定された値に基づいて決定された層の最大値のための最低1つの特徴を信号で伝えることは重要である。従って、最低1つの特徴は、層IDを持つ層のために送信/信号することは必要でない。その拡張層IDは、多層ビデオ信号の予め決められた部分内で起こらない。これを越えて、別の実施の形態に従って、最大限に仮定された値の知識は、個々の部分の層IDを信号で伝えるためのサイド情報オーバーヘッドを減らすために、すなわち、多層ビデオ信号のパケット内の拡張層IDフィールドを信号で伝えるために必要なビットを減らすために使用される。
概説された面は結合され又は個々に使用され、上で概説された面の好ましい実例は、従属請求項の主題であり、図に関して後で議論される。
図1は、HEVCのNALユニットヘッダーの構文を示す。 図2は、多層ビデオエンコーダ、ネットワーク要素および多層ビデオデコーダを含む環境を模式的に説明する。多層ビデオエンコーダ、ネットワーク要素および多層ビデオデコーダは、以下の図面において説明された概念のいずれか、または、いずれかの結合によって改善される。 図3は、ネットワーク装置、および、ネットワーク装置に到達する多層データストリーム内のクラスタな方法の層相互依存において信号で伝える概念を模式的に示す。 図4は、図3の概念に従って相互層依存を信号で伝える方法を模式的に説明する。 図5は、図3の信号概念を使う場合に相互層依存を引き出すために、より具体的な例を模式的に説明する。 図6は、層ID拡張を示している構文要素の方法によって拡張されたHEVC構文の一部分を示すことによって、スライスセグメントヘッダーのHEVC構文の可能な拡張を示す。 図7は、図3の信号概念を実施するために、例示的に拡張されたVPS構文の一例を示す。 図8は、図7の例の代案を示す。 図9は、図7の例の代案を示す。 図10は、図7の例の代案を示す。 図11は、拡張層IDフィールドの最大限に仮定された値が、データストリームの中で信号によって伝えられる本応用のより一層の概念を設定するための装置を模式的に示す。 図12は、図11の概念を模式的に説明する。 図13は、拡張層IDフィールドを含むように拡張されたHEVCのスライスセグメントヘッダーを取り出す部分の一例を示す。 図14は、図13の拡張層IDフィールドの長さを示すために、構文要素を含むように拡張されたVPS構文の一例を示す。 図15は、拡張層IDフィールドの最大値を示している構文要素を含むように拡張されたVPS構文の一例を示す。 図16aは、拡張層IDフィールドを含むように拡張されたSEI拡張の構文構造を取り出す部分の一例を示す。 図16bは、拡張層IDフィールドを含むように拡張されたSPS拡張の構文構造を取り出す部分の一例を示す。 図16cは、拡張層IDフィールドを含むように拡張されたPPS拡張の構文構造を取り出す部分の一例を示す。 図17は、図11および図12について説明された最大限に仮定された値に依存している構文部分を、複数回繰り返して通ることによって、ビデオデータストリーム内の層に情報を信号で伝えているVPS構文の一例を示す。 図18は、特定の例に従って、特に、拡張層IDフィールドを示すためにlayer_id_extを使用して、ベース層IDフィールドを示すためにnuh_layer_idを使用して、及び、層IDを示すためにlayerIDを使用して、拡張層IDフィールド、ベース層IDフィールドおよび層IDの間の模式的な例示関係を示す。そして、拡張層IDフィールドの表現可能な値の数が、max_layer_id_ext(plus1)によって示されている。ここでは、例として、LengthOfExtensionを2と等しく設定することによって、拡張層IDフィールドの長さを2に選択することによって3に設定されている。 図19は、拡張層IDフィールドを含むように拡張されたスライスセグメントヘッダーを取り出す部分の一例を示す。 図20aは、ベース層IDフィールドの副フィールドの長さを示す構文要素を含むように拡張されたVPS構文の一例を示す。 図20bは、拡張層IDフィールドを条件付きで明示的に信号で伝えるように修正されたスライスセグメントヘッダー構文を取り出す部分の一例を示す。 図21は、図18の概念に従って実施された関係を使用して層IDを引き出しているネットワーク装置の機能を説明するフローチャートを示す。
本応用の特定の実施の形態を説明する前に、例示的な多層ビデオ符号器の環境が図2に関して説明される。以下で概説される実施の形態と面は有利に使用される。例示的な多層ビデオ符号器の環境のこの概要は、さらに以下で概説される実施の形態を限定するものと理解してはならないけれども、以下の図について例示的に提供される詳細と機能は、より詳細な実施の形態を生じるように以下でさらに概説される実施の形態の可能な拡張の予定を説明するとみなされる。ともかく、以下に提供された説明の多層ビデオ符号器の環境は、以下で概説される実施の形態の利点の理解をより容易にする。
図2は、入力でビデオ素材202を受信する多層ビデオエンコーダ200を説明的に示す。説明の目的だけのために、ビデオ素材202は、ビデオの個々の画像のためのテクスチャーや奥行きなどの複数のビューのそれぞれのためにビデオデータを移送する多ビュービデオ信号として説明される。一般的に、ビデオ素材202は1つの場面の多次元サンプリングを表している。1つの次元は時間tである。すなわち、ビデオ素材202はこの場面を時間的にサンプリングし、従って、1つの時間瞬間(time instant)当たり1つの画像を生じる。さらに、この場面は異なる視点から捕らえられ、従って、1つのビュー当たり1つのビデオ、または、時間瞬間ごとに1つのビュー当たり1つの画像を生じる。さらに、ビデオ素材202は、場面のテクスチャーの空間的サンプリング(すなわち、個々のビュー毎の、場面の色や場面の奥行きマップの空間的サンプリング)に加えて、個々のビュー、または個々のビューの副セットを提供する。図2は、例えば、ハッチングを使用して説明された奥行きマップとハッチングが描かれていないテクスチャーマップまたはイメージとの間で異なる。しかし、さらに以下で概説される実施の形態のどれもが、そのような多ビュー素材に限定されないこと注意するべきである。むしろ、図2の説明は、以下で前面に出された説明を緩和するように提供されただけである。
多層ビデオエンコーダ200は、多層データストリームまたはビデオ信号204の中にビデオ素材202を符号化するように構成されている。特に、多層ビデオエンコーダ200は、相互層予測を使用して、情報量の異なるレベルと一致する異なる層で、多層データストリーム204の中にビデオ素材を符号化する。これは以下を意味している。多層ビデオエンコーダ200は、複数のパケット206を含むように多層データストリームを生成する。パケット206のそれぞれは、異なる層のうちの1つと関連する。多層ビデオエンコーダ200は、例えば、所定のベース層のパケット206の中に、ビデオ素材202(例えば単に1つのビューのテクスチャーまたは同類など)の情報量のあるベースレベルを符号化する。例えば、様々な層のうちのいずれかにパケット206の関連が、個々のパケット206内の層識別構文要素構造208から引き出せる。例えば、層識別構文要素構造208は、個々のパケット206のヘッダー210内に含まれている。例えば、説明の目的のために、数字1、2、および3が、パケット206の中に記入されるように示される。従って、層IDを持つ層がそれぞれ1、2、および3によって説明される。例えば、これらの層の間で、層ID1を持つ層は、情報量のベースレベルを提供する最も低い層またはベース層を形成する。他の層のパケット206は、1以上または様々な情報タイプについてのみ、ベース層のパケット206で利用可能な情報量を増大する。例えば、特定の層のパケット206は、ベース層またはリファレンス層のパケット206内で既に符号化されたビューに加えて、その中で符号化された別のビューを持つ。代わりに、特定の層のパケット206は、ビデオ素材202の場面の奥行き情報(ビューの奥行き情報など)を持ってもよい。そのテクスチャーは、ベース層またはより一般的にはより下の層であるリファレンス層のパケットの中に既に符号化されている。同様に、表面反射率情報は、別の層(すなわち、照明状況とは無関係にその場面内のオブジェクトの表面反射率についての場面の空間サンプリング)のパケットの中に符号化される。そして、さらに、アルファ混合情報は、別の層(すなわち、個々の画像サンプルと一致している場面ポイントの透明度の空間のサンプリング)のパケットの中に符号化される。また、特定の層のパケット206は、特定の色組み合わせ情報を追加し、または、空間解像度を増大する(すなわち、空間解像度改良を提供する)。同様に、特定の層のパケット206は、SNR解像度改良を単に提供する、すなわち、符号化されたビデオ素材の信号対ノイズ比を増大させる。様々な層が関係している限り、多層データストリーム204内の冗長性を避けるために、相互層予測が多層ビデオエンコーダ200によって使用される。すなわち、特定の層のパケット206は、前者の層についてリファレンス層と呼ばれる1つ以上の他の層から得られるように、相互層予測について予測残差をその中で符号化する。相互層予測は、ビデオ素材202を説明している構文要素やパラメータなどの異なる実体に適用される。例えば、特定の層のパケット206によって運ばれた予測残差は、1つ毎の画素に基づいて空間ドメインの中の1つ以上のリファレンス層から得られるように相互層予測を訂正する。代わりに、多層ビデオエンコーダ200は、例えば、変換残差符号化を使用し、相互層予測訂正が変換係数ベース毎にDCTドメインなどの変換ドメイン内で起こる。代わりに又は追加的に、多層ビデオエンコーダ200は、空間的および/または時間的な予測を使用するハイブリッドビデオ符号器タイプであり、例えば、相互層予測は、動作ベクトルの改良に追加的または代替的に関係する。さらに、多層ビデオエンコーダ200は、異なる予測モード(空間的および時間的予測など)が適用されるユニットの中の符号化ブロックの中に、および/または、前記の変換が予測残差上で実行されるユニットの中の変換ブロックの中に、および/または、特定の符号化パラメータがビデオ素材202を符号化するためにセットされるユニットの中の別のブロックの中に、ビデオ素材202の画像を副分割するために、階層的な多ツリー副分割を使用する。そして、改めて別の層のための副分割情報を信号で伝える代わりに、副分割化が1つ以上のベース層のいずれかから完全に採用されるか、または、その副分割情報についての改良が信号で伝えられるかのいずれかである。
層間の相互層依存の方法によって、多層ビデオ信号204の層が、ツリー212の枝を介して相互に関係付けられる。ツリー212の節(ノード)は前記の層によって形成される。層間の相互層依存についての情報を移送する(すなわち、復号化側で利用できる相互依存ツリー212上の情報を提出する)ために、多層ビデオ信号204は、そこに符号化されたそこの情報を持つ。
図2において、例えば、多層ビデオエンコーダ200が、ビデオデータストリーム204の中に、情報214を構成する又は移送するハイレベル構文パケット216を散在させることが説明されている。情報214は、ツリー212の中の相互層依存を説明するために相互依存構文構造を含む。
しかし、ツリー212の情報は、エンコーダおよびデコーダでの欠陥(デフォルト)によって、代替的に知られている又は再建可能である。従って、追加的または代わりに、層関連情報214は、ある層ID拡張機構に関連した情報を含む。特に、多くの応用に対して、層の適度な数は、多層ビデオ信号204を形成するために重要であるけれども、いくつかの別の応用は、層識別構文要素構造208によって信号化可能な非常に小さい数の層から損害を被る。すなわち、層識別構文要素構造208が、高い数の層を必要とするそれらの応用に対して、莫大な数の層に適応するように、層識別構文要素構造208を構成することは、応用の全体の多様性を考慮するとき、高いサイドの情報オーバーヘッドの中に不利を生じさせる。そして、層識別構文要素構造208が適度な数の層にのみ適応するように、層識別構文要素208を構成することは、データストリーム204を根底にしている多層ビデオ符号器によって十分にサポートされることから別の応用を除外する。従って、ある拡張機構は、データストリーム204のモード間で切り替えできるように使用される。ここで、層識別構文要素構造208はより低い適数の層にのみ適応する。そして、層識別構文要素構造が高い数の層および情報214に適応するモードは、これらのモード間の切り替えに追加的または代替的に関与する。
ハイレベル構文パケット216の妥当性の範囲は、多層ビデオ信号204の全体を取り巻くけれども、例えば、それらは多層ビデオ信号204が時間的に分割される大きな塊と関連するように、パケット216が属する予め決められた部分がより小さいことも可能である。それぞれの大きな塊は画像のシーケンスである。例えば、DASHまたは別の適応したストリーミングプロトコルを使用して、多層ビデオエンコーダ200は、ちょうど言及した予め決められた部分のユニットの中のビットストリーム204の中に符号化された層数、ツリー構造212の形式の相互層依存、および/または、層識別構文要素構造208について拡張または不拡張の間の切り替えを変更する。とにかく、ハイレベル構文パケット216を周期的に送信することは、受信者を、ランダムアクセスに基づいて、両者間で多層ビデオ信号214を復号化し始めるために複数のランダムアクセス時間瞬間を持つことができるようにする。
図2は、多層データストリームを受信するための装置も例示的に示す。例えば、オプションのネットワーク要素218は、多層ビデオデータストリーム204を受信し、それを多層ビデオデータストリーム204の受信者に転送するために処理する。従って、図2は、多層ビデオデータストリーム204を復号するように構成された多層ビデオデコーダ220も示す。両方の実体、すなわちネットワーク要素218および多層ビデオデコーダ220は、多層データストリーム204を処理するための装置のための例を形成する。
ネットワーク要素218は、そこから様々な層間の相互層予測を使って、多層データストリーム204を復号できる必要はない。これにもかかわらず、ネットワーク要素218および多層ビデオデコーダ220(すなわち受信者)は、ツリー212によって定義されるように、様々な層とそれらの層間の相互層依存とに関連するパケット206を知らせる必要がある。ネットワーク要素218は、例えば、提供された追加の情報量がネットワーク要素218と多層ビデオデコーダ220との間の別の連結内でそれぞれ予備的に必要ではない層に関連したデータストリーム204のパケット206を除去する。例えば、連結内のビットレート欠点のために、追加の情報量または同類を再生するための受信者の無能力を除去する。同様に、多層ビデオデコーダ220も、現在利用できる計算能力、空間解像度などの再生装置のディスプレイ性能、インプットビューまたは同類の最大数のような外部パラメータに対応した特定の層のパケット206のうちのいくつかを捨てることを決める。すなわち、装置218/220は、パケット206の層識別構文要素構造208を読み取り、もし存在するならば、層間の相互層依存を情報214から引き出し、および/または、情報214に対応した層識別構文要素構造208に関する拡張モードまたは不拡張モードの間で切り替え、および/または、情報214から層に関する別の特徴を読み取ることが可能である。
それを超えて、多層ビデオデコーダ220は、その層と、この層が相互予測依存によって相互に関連した全ての層とに関連したパケット206の情報を収集して使用することによって、所定のレベルに引き上げて、インバウンド(帰航)データストリーム204からビデオ素材202を再構成することができる(ツリー構造212を参照)。すなわち、上で概説したように多層ビデオデコーダ220は、多層ビデオデコーダ220がその層の1つ以上のリファレンス層のパケット206から引き出す相互層予測に関する予測残差として、特定の層のパケット206を使用する。この点について、多層ビデオデコーダ220は、上で概説したように、変換残差復号化、ハイブリッドビデオ復号化、階層的多ツリー副分割化および/または別の符号化概念を使用するデコーダである。
完全性だけのために、図2は、多層ビデオエンコーダ200とデータストリーム204が、異なる時間瞬間または画像に属しているパケット206が互いに挟まれない方法で、時間瞬間毎に連続的アクセスユニット222を形成するように、パケット206がデータストリーム204内に含まれるように例示的に提供されることを示す。それぞれは、そのアクセスユニット222の個々の時間瞬間に属しているパケット206を収集している。その結果、別の時間瞬間に属しているパケット206は、データストリーム204内において、このアクセスユニット222の前又は後に続くかのいずれかである。しかし、この制限は説明目的のために選択されただけであり、データストリーム204内のパケット206のより緩和した配置が代わりに選択されてもよいことは注意するべきである。
以下において、ツリー構造212に従って相互層依存を信号で伝える可能性が、より詳細に説明される。前記したように、この信号は情報214を含む。この可能性に従って、層はクラスタにグループ化される。データストリーム内において、一方のクラスタ間の相互層依存と他方のクラスタ内の層とが、別々に信号で伝えられる。その限りにおいて、以下で前面に出される説明は、相互層依存212を信号で伝えるために、図2の情報214を実施する可能性を表現している。しかし、既に上で注意したように、図3に関して以下に説明される詳細は、図2に発表された詳細に限定されない。むしろ図2は図3に関する説明のための可能な実施貯蔵所と見られるべきである。
図3は、図2のネットワーク要素218または多層ビデオデコーダ220であるネットワーク装置18を説明する。そして、多層データストリーム10は、図2のデータストリーム204のように処理するように構成される。
図3は、層ID lIDによって識別された異なる層で、ビデオ素材をその中に符号化された多層データストリーム10を説明する。個々の層は、情報量の異なるレベルと一致する。この点における可能性は、既に図2に関して議論されているけれども、より容易な理解のために、特定のビューをデータストリーム10に追加している個々の層について考える。しかし、これは図3の説明を制限することを意図しない。個々の層は、代替的に、情報量(例えば、ビューの数および空間解像度の数または同類など)のための異なる手段の結合に一致している。
従って、多層データストリーム10は、図2のパケット206に例示的に一致している複数のパケット12から成る。そのようなパケット12(または206)は、例えばビデオ信号10の中に符号化された個々の画像の波面並列処理を許している副ストリームである。副ストリームは、順に、NALユニット、スライスまたは同類などのより小さいユニットから構成されている。しかし、図2および図3のパケット12またはパケット206は、NALユニット、スライスまたは別のユニットでもあることが、同封して提出される。
個々のパケット12は、異なる層のうちの1つと関連する。そして、多層データストリーム10のビット消費を減らすために、個々のパケット12がデータストリーム10のより低い層の特定の副セットのパケットに「残差」を単に追加するように、相互層予測が使用される。符号14で示されるように、「より低い層」は個々の層毎に小さいドットによって説明される。
図3において示された実施の形態に従って、相互層予測依存は、以下でより詳細に説明され、図において実線16を使用して説明されるように限定される。特に、層IDは、以下において説明されるように、2つの値の連結によって形成される。特に、多層データストリーム10を受信するネットワーク装置は、パケット12毎に、図2のリファレンス記号208を使用して示された層ID構文構造を読み取る。しかし、ここは、ベース層IDフィールド20と、条件付きで、−例えば拡張機構をオンとオフに切り換えるベース層IDフィールドまたはハイレベル構文要素に条件的に依存する−拡張層IDフィールド22とから成る。例示的に、両方のフィールドを持っているパケット12のみが、図において示される。しかし、前記したように、ベース層IDフィールド20の1つ以上の値が、個々のパケット12のためのフィールド22の不存在を信号で伝える。例えば、拡張機能全体は、データストリームの中の拡張フラグを介して、データストリームの中でオン/オフ切り換え可能である。拡張層IDフィールドを必要とする又は必要としない可能な条件は、前記したように、ベース層IDフィールドが0である、または、特定のビットを設定する又は設定しない、または、フィールド20の副部分内の特定の値を仮定する、または、ベース層IDフィールドがある値より大きい又は小さい値を持っていることである。別の例が以下に発表される。
層ID構文構造20と22に基づいて、ネットワーク装置18は、個々のパケット12が関連する層を識別している層ID、すなわちlIDを引き出す。異なる可能性は以下に説明される。ネットワーク装置18は、多層データストリーム10から、例えば前記で識別されたdirect_dependency_flagsを含んでいる第1相互依存構文構造、および、例えば以下で示されたdirect_ext_dependency_flagおよび/またはgeneral_direct_ext_dependency_flagsを含んでいる第2相互依存構文構造も読み取る。第1相互依存構文構造は、ベース層IDフィールド20によって表現可能な異なる値のペア間の相互依存を2進数の方法で示す。これに対して、第2相互依存構文構造は、拡張層IDフィールドによって表現可能な異なる値のペア間の相互依存を2進数の方法で示す。両方の相互依存構文構造に基づいて、ネットワーク装置18は、その時、異なる層(図において符号14で描かれたものなど)の間の相互層予測依存を明らかにしている相互層依存マトリクスを形成する。派生される方法は、以下において、第1および第2相互依存構文構造に関係するフォアーネクストループを使用している擬似符号を使用して説明され、そして、以下の図に関しても説明される。しかし、信号で伝えられた相互層予測依存が、実際にデータストリームにおいて使われることは必要ないことは注意するべきである。むしろ、可能な相互層予測依存の信号化は、デコーダまたは別のネットワーク装置に、相互に関係付けられたパケット、すなわち、リファレンスパケットに先がけて相互層予測依存に従って別のパケットによってリファレンスされたパケットが、適切な順序で利用可能である必要なステップを取ることを指示するためにある。
以下の説明から明らかになるように、相互層依存マトリクス14の構築は、第2相互依存構文構造が、相互層依存マトリクス14がベース層IDフィールド20内の同じ値から引き出され、その結果、それと関連している層IDの層間の相互層予測依存に関連する全ての事例に適用されるように実行される。また、以下に、より詳細に説明された別の実施の形態に従って、第2相互依存構文構造が、例えばベース層IDフィールド20の個々の可能な値に対して、または、ベース層IDフィールド20の可能な値の副セットに対して読み取られ、そして、ビットストリーム10内に数回送信される。一方、第2相互依存構文構造の様々な具体例が、索引付けを使用して、例えば、以下に示された例の中のincluded_nuh_layer_idを使用するなどして、ベースの層IDフィールド20の可能な値に関係付けられる。別の実施の形態においてさえ、構造は、全ての可能な相互層予測依存が許されて、第2相互依存構文構造の方法で、すなわち第1相互依存構文構造が相互依存の存在を示すベース層IDフィールドの異なる値のペア毎に第2相互依存構文構造を送信することによって描写できることにおいて一般化される。
言い換えると、図4においてさらに説明されるように、図3は、別々の相互依存構文構造24と26が、データストリームの個々のパケット内のフィールド20と22によって提供されたベース層IDおよび拡張層IDの範囲の間のインタフェースと一致している両方の相互依存構文構造24と26の範囲の間のインタフェースを持つ階層的な方法で、相互層依存を説明するために使用されることに従って、相互層依存を信号で伝えるための例を示す。フィールド20と22によって提供されるようなベース層IDおよび拡張層IDは、フィールド20と22が構成される個々のパケットの層IDを独自に定義する。拡張層IDおよびベース層IDの結合によって表現可能な全ての表現可能な層IDのセットは、円28内でドット30によって示される。すなわち、個々のドット30は、ベース層IDおよび拡張層IDの異なるカップルに一致している。例えば、層IDは、ベース層IDおよび拡張層IDの連結である。フィールド20だけによって提供されるベース層IDを使用して、層ID30の完全なセット28が、以下のクラスタ32と称される層IDの解体セット32に副分割される。特定のクラスタ32に属している全ての層IDは、同じベース層IDを持つ。以前に図2に関して説明したように、層ID30と関連した層が、ドット30の間の点線を使用して、図4において説明したこれらの相互層依存を持つ相互層予測のためにツリー似の方法で相互に連結される。理解し易くするために、実際の相互層依存の副セットだけが図4において説明される。
ともかく、2つのクラスタ32の間の連結化(このペアの第1クラスタ32の層と第2クラスタ32の層との間の相互層依存の方法による)が、第1相互依存構文構造24の方法によって示される。すなわち、第1相互依存構文構造24は、層間の相互依存を粗く又はクラスタ状(群れ状)に説明する。図4おいて、これらの相互依存は、クラスタ32の間の実線を使って説明される。第1クラスタの最低1つの層が第2クラスタの中の1つのクラスタに連結している第1および第2クラスタ32の全てのペアは、相互連結され、第1相互依存構文構造24において表示されている。第2相互依存構文構造26は、その時、第1相互依存構文構造24によって相互連結されると表示されたクラスタ32のペアの層のどちらが、相互層予測によって互いに実際に関連するかを明確にする。すなわち、第2相互依存構文構造26は、微細粒状の相互依存を明確にする。しかし、第2相互依存構文構造26は、個々のクラスタ32内の層の間の相互依存、すなわち層間の内部クラスタ依存も個別に定義する。図4において、例えば6つのクラスタ32が示され、従って、第2相互依存構文構造26が別のクラスタ32の層間の微細粒状の相互依存を調節するクラスタ32の15個の可能なペアに加えて、第2相互依存構文構造26が相互依存を内部で調節する6つのクラスタを生じる。上で概説したように、そして、以下に更に概説するように、従って、最大で第2相互依存構文構造の1個〜21個の実例34が、つまり、個別にクラスタ当たり1つとクラスタ32の連結されたペア当たり1つとが存在する。明らかに、第2相互依存構文構造26は、第1相互依存構文構造24によって連結されないように信号で伝えられたクラスタ32のペアに対して、信号で伝えられる必要はなく、従って、貴重なサイド情報ビットレートが抑制される。クラスタ32の異なるペアの層の相互層依存を説明するために第2相互依存構文構造26を使う場合において、クラスタ32当たりの層数が、全てのクラスタ32に対して等しいことに注意するべきである。仮に、層IDがベース層IDおよび拡張層IDの連結を使って説明されるならば、これは典型的な例である。しかし、クラスタ32の層数がクラスタ32の間で理論上変わることは注意するべきである。その典型的な例において、第2相互依存構文構造26の個々の実例34が、例えばデータストリーム内でクラスタ32の個々の相互連結されたペアに対して信号で伝えられ、最低1つの実例34が個々のクラスタサイズに対して送信される。
図3は、例えば、層IDが、最も重要な数字としてベース層IDを使い、より重要でない数字として拡張層IDを使うことによって、ベース層IDおよび拡張層IDから得られる場合を説明する。図3は、1つの実例34が1つのクラスタ内の層の相互層依存を記述するために用いられ、別の実例34が異なるクラスタの層間の依存を記述するために用いられる例示的な場合も説明する。完全性のために、図3のマトリクス14が層IDとして多くの線と多くの列を持つことが、注意される。対角線の下半分だけが満たされる。なぜなら、単に、どの層も、相互層予測の方法で、前の層に(すなわち階層的に低い層に)依存するからである。図3の例において、列数は、相互層予測の使用によって別の層(すなわちベース層)に依存する層の層IDと一致している。これらのベース層は、例えば2進数によって示される。2進数のゼロが、個々の層を予測している相互層に関与していない層を示す一方、その層IDは現在の列と一致する。その限りにおいて、図3の実施の形態において、第2相互依存構文構造26はマトリクス14の副マトリクスを多少説明する。
上に既に記述したように、第1相互依存構文構成24および第2相互依存構文構成26は、ハイレベルパケット216内の情報214によって構成される(図2と比較してください)。図5は、第1相互依存構文構造24が符号36で描かれた層クラスタの間の相互依存を明らかにする例を説明する。例えば、ベース層ID2を持つクラスタは、ベース層ID2および1を持つクラスタに依存する。
また、第2相互依存構文構造の第1実例34は、データストリームの中に存在し、副マトリクス38の形式で図5の中に描かれた層の間の内部クラスタ依存を調節する。さらに、図5の例に従って、データストリームは、また、異なるクラスタの層の層状相互依存を調節する第2相互依存構文構造26の実例34を含む。特に、第2実例は、リファレンスされたクラスタのエンハンスメント層ID当たり1つの行、および、リファレンスしているクラスタのエンハンスメント層ID当たり1つの列を持っている副マトリクス40を介して、異なるクラスタの層間の依存を説明する。
図5の例において、副マトリクス38は、マトリクス36がクラスタ間の相互依存を示す個々の位置(すなわち、1が置かれる個々の位置)に置かれ、そのクラスタは同じベース層IDのクラスタ(すなわち、マトリクス36の対角線上にあるクラスタ)である。そして、副マトリクス40は、マトリクス36が異なるベース層IDのクラスタ間の相互依存を「1」で示す位置に置かれる。結果は符号42で示される。
マトリクス42などのマトリクスを介する相互層依存の説明が、相互層依存を説明するための単なる1つの例であることは注意すべきである。別の説明が同様に使われうる。マトリクス36〜40が第1および第2相互依存構文構造によって符号化される方法は、次の通りである。第1相互依存構文構造24は、対角線の下でかつ対角線を含むマトリクス36の各係数に対して、2進値を信号で伝える。マトリクス38を標示する第2相互依存構文構造26の実例34は、対角線の下でかつ対角線を含むマトリクス38の各係数に対して、2進値を信号で伝える。マトリクス40を標示する第2相互依存構文構造26の実例34は、マトリクス40の全ての係数に対して、2進値を信号で伝える。
相互層依存をどのように信号で伝えるかについて可能性を説明した後に、より詳細な実例がHEVC規格の拡張として以下に例示的に提供される。
特に、層識別クラスタ化およびクラスタ依存信号化は、存在する符号器の中に次の通り構築される。
2つの構文要素nuh_layer_idとlayer_id_extが、ビデオビットストリーム内の符号化された層を、いわゆる互いの空間関係などの特性に基づいて依存又は別の物を符号化しているクラスタの中にグループ化するために使用される。クラスタの中への層識別子の構造化は、個々のクラスタ内の等しく構造化された符号化依存を持つクラスタに対して許される。すなわち、定義されたクラスタの全て又は副セット内の符号化依存は、同じである。特定の層のリファレンス層を決めるために、依存フラグの追加のセットとしてクラスタ内の依存を信号で伝えること、および、依存を既存の依存信号化(HEVC拡張のVPS拡張の中のdirect_dependency_flagと比較してください)に結合することは、図6に記述されるように行われる。
0と等しいdirect_ext_dependency_flag[i][j]は、拡張インデックス(索引)jを持つ層が、同じ層クラスタ内の拡張インデックスiを持つ層に対して、直接的リファレンス層でないことを規定する。1と等しいdirect_dependency_flag[i][j]は、拡張インデックスjを持つ層が、同じクラスタ内の拡張インデックスiを持つ層に対して、直接的リファレンス層であることを規定する。direct_ext_dependency_flag[i][j]が、0から(1<<layer_id_ext_len)−1の範囲内のiとjに対して、存在しないとき、それは0に等しいと推定される。
代替えの構文は、未使用の層識別子に依存を符号化することを信号で伝えることを避けるために、max_layer_id_extによってdirect_ext_depencency_flag構文要素のループを制限する。
クラスタ内の及びクラスタ間の符号化依存のより柔軟な信号は次の通り許される。
a)クラスタ毎に基づいてクラスタ内の依存を符号化する信号によって。
b)クラスタ依存セットの数の定義、および、定義されたクラスタ依存セットが適用されるクラスタの識別(例えば、nuh_layer_idによってどちらか一方)によって。
c)クラスタ間の第1依存が信号で伝えられ、2つの依存するクラスタ内の層の第2依存が信号で伝えられる方法の中の依存の階層的信号によって。
d)b)とc)の組み合わせによって。従って、以下のデータが信号で伝えられる。
1.クラスタ間の依存(例えば、リファレンスのペアおよび依存するクラスタ)。
2.リファレンス(リファレンスされた)クラスタおよび依存する(リファレンスしている)クラスタ内の層間の依存を定義しているクラスタ依存セットの数。
3.個々のクラスタ依存セットに対して、クラスタ依存が適用する標示(1において信号で伝えられるように)。
クラスタ内の層間に依存があるとき、c)とd)に対してクラスタが自身に依存できることに注意しなさい。
a)からd)は、構造化のために使用される特性空間(例えばカメラの空間的位置)が均一に使われないとき、層識別子の空間を構造化することを許す。1つの例が、空間密度が一定でない二次元カメラアレイ、または、矩形ではない二次元カメラアレイである。以下は、上記に従って、複数の方法において、クラスタ依存セットの定義を信号で伝えるための構文例を与える。
a)図7は、クラスタ毎に基づいて、クラスタ内の依存を符号化することを定義するビデオパラメータセット(設定)拡張構文について例示的に実施の形態を与える。
0と等しいdirect_dependency_flag[i][j]は、インデックスjを持つ層またはクラスタが、インデックスiを持つ層またはクラスタに対して、直接的なリファレンス層またはリファレンスクラスタでないことを規定する。1と等しいdirect_dependency_flag[i][j]は、インデックスjを持つ層またはクラスタが、インデックスiを持つ層またはクラスタに対して、直接的なリファレンス層またはリファレンスクラスタであることを規定する。direct_dependency_flag[i][j]が、0からvps_max_layers_minus1の範囲内で、iとjに対して存在しないとき、それは0に等しいと推定される。
0と等しいgeneral_direct_ext_dependency_flag[i][j]は、拡張インデックスjを持つ層が、同じ層クラスタ内の拡張インデックスiを持つ層に対して、直接的なリファレンス層ではないことを規定する。1と等しいgeneral_direct_dependency_flag[i][j]は、拡張インデックスjを持つ層が、同じクラスタ内の拡張インデックスiを持つ層に対して、直接的なリファレンス層であることを規定する。general_direct_ext_dependency_flag[i][j]が、0からmax_layer_id_extの範囲内で、iとjに対して存在しないとき、それは0に等しいと推定される。
0と等しいdirect_ext_dependency_flag[i][j][k]は、拡張インデックスkを持つ層が、i番目の層クラスタ内の拡張インデックスjを持つ層に対して、直接的なリファレンス層ではないことを規定する。1と等しいdirect_ext_dependency_flag[i][j][k]は、拡張インデックスkを持つ層が、i番目の層クラスタ内の拡張インデックスjを持つ層に対して、直接的なリファレンス層であることを規定する。direct_ext_dependency_flag[i][j][k]が、0からmax_layer_id_extの範囲内で、i、jおよびkに対して存在しないとき、それは0に等しいと推定される。
b)図8は、クラスタ依存セットの数の信号(number_of_cluster_dependency_sets)を通して、クラスタ内の依存を符号化すること、個々のクラスタ依存セット内の依存(direct_ext_dependency_flag)を符号化すること、および、クラスタ(たとえば、クラスタの個々のnuh_layer_idのためのポジティブなフラグを通して、与えられた構文要素included_nuh_layer_idによって識別されたクラスタ)を適用することを定義するビデオパラメータセット拡張の中の構文について例示的な実施の形態を与える。
c)図9は、クラスタ間の第1依存が信号で伝えられ、および、2つの依存するクラスタ内の層の第2依存だけが信号で伝えられる方法で、依存の階層的な信号のための例示的な実施の形態を与える。
0と等しいdirect_dependency_flag[i][j]は、インデックスjを持つ層またはクラスタが、インデックスiを持つ層またはクラスタに対して、直接的なリファレンス層またはリファレンスクラスタではないことを規定する。1と等しいdirect_dependency_flag[i][j]は、インデックスjを持つ層またはクラスタが、インデックスiを持つ層又はリファレンスクラスタに対して、直接的なリファレンス層又はリファレンスクラスタであることを規定する。direct_dependency_flag[i][j]が、0からvps_max_layers_minus1の範囲内で、iとjに対して存在しないとき、それは0に等しいと推定される。
注記:仮に、layer_id_ext_lenが0より大きければ、direct_dependency_flag[i][j]は、クラスタ間の依存を信号で伝える。そうでなければ(layer_id_ext_lenが0と等しいならば)、direct_dependency_flag[i][j]は、層のための依存を信号で伝える。
0と等しいdirect_ext_dependency_flag[i][j][k][l]は、j番目のクラスタの中のl番目の層が、i番目のクラスタの中のk番目の層に対して、直接的なリファレンス層ではないことを規定する。1と等しいdirect_ext_dependency_flag[i][j][k][l]は、j番目のクラスタの中のl番目の層が、i番目のクラスタの中のk番目の層に対して、直接的なリファレンス層であることを規定する。direct_ext_dependency_flag[i][j][k][l]が存在しないとき、それは0に等しいと推定される。
d)図10は、b)とc)の組み合わせのための例示的な実施の形態を与える。
0と等しいdirect_dependency_flag[i][j]は、インデックスjを持つ層またはクラスタが、インデックスiを持つ層またはクラスタに対して、直接的なリファレンス層またはリファレンスクラスタでないことを規定する。1と等しいdirect_dependency_flag[i][j]は、インデックスjを持つ層またはクラスタが、インデックスiを持つ層またはリファレンスクラスタに対して、直接的なリファレンス層またはリファレンスクラスタであることを規定する。direct_dependency_flag[i][j]が、0からvps_max_layers_minus1の範囲内で、iとjに対して存在しないとき、それは0に等しいと推定される。
注記:仮に、layer_id_ext_lenが0より大きければ、direct_dependency_flag[i][j]は、クラスタ間の依存を信号で伝える。そうでなければ(layer_id_ext_lenが0と等しいならば)、direct_dependency_flag[i][j]は、層のための依存を信号で伝える。
0と等しいdirect_ext_dependency_flag[n][k][l]は、dependency_set_applies_flag[n][i][j]が1に等しいとき、j番目のクラスタの中のl番目の層が、i番目のクラスタの中のk番目の層に対して、直接的なリファレンス層ではないことを規定する。1と等しいdirect_ext_dependency_flag[n][k][l]は、dependency_set_applies_flag[n][i][j]が1に等しいとき、j番目のクラスタの中のl番目の層が、i番目のクラスタの中のk番目の層に対して、直接的なリファレンス層であることを規定する。
0と等しいdependency_set_applies_flag[n][i][j]は、i番目のクラスタの中の層とj番目のクラスタの中の層との間の依存が、direct_ext_dependency_flag[n][k][l]によって規定されないことを規定する。1と等しいdependency_set_applies_flag[n][i][j]は、i番目のクラスタの中の層とj番目のクラスタの中の層との間の依存が、direct_ext_dependency_flag[n][k][l]によって規定されることを規定する。dependency_set_applies_flag[n][i][j]が存在しないとき、それは0に等しいと推定される。dependency_set_applies_flag[n][i][j]が、0から(number_of_cluster_dependency_sets−1)の範囲内で、iとjと全てのnとの特定の結合に対して0と等しいとき、j番目のクラスタの中の層は、i番目のクラスタの中のどの層に対しても、直接的なリファレンス層でないことを含む。
従って、HEVC拡張の中に図2から図5のクラスタに基づいた相互依存信号を実行する上の例において、図2のパケット206はスライスまたはスライスセグメントであり、パケット216は例えばビデオ、画像または連続パラメータセットなどのパラメータセットである。図7の構文例に従って、第1相互依存構文構造24は、i≦jを持つクラスタi、jの各ペアに対して、構文要素direct_dependency_flagを使って信号で伝えられる。ここで、vps_max_layers_minus1は、ベース層ID−1の最大値である。従って、構文要素は、例えば図5の粗いマトリクス36を明らかにする。unique_cluster_dependencies_flagと称する構文要素44は、2つのオプション(第2相互依存構文構造26の1つの実例は全てのベース層IDに提出されて適用される、または、もう1つの実例は個々のベース層ID iに対して送られるのいずれか)の間を区別する。第1ケースにおいて、フラグgeneral_direct_ext_dependency_flagは、共通して、ベース層ID毎に38に従って副マトリクスを築く。第2ケースにおいて、フラグdirect_ext_dependency_flagは、別々に、ベース層ID毎に符号38に従って副マトリクスを築く。unique_cluster_dependencies_flagは、両方のオプションの間を切り替える。従って、図7の場合において、仮に、unique_cluster_dependencies_flagが0に等しいならば、結果として生じる副マトリクス38は、マトリクス36内の、リファレンスしている及びリファレンスされたクラスタIDに等しいように一致している個々のポジションに置かれる。ここで、1はdirect_dependency_flagによって示される。第1相互依存構文構造24が異なるクラスタIDのクラスタ間の相互依存を示す残留ポジションは、予め決められた副マトリクス(すなわち、エンコーダ、ネットワーク要素および多層ビデオデコーダなどの全ての参加装置によって知られている副マトリクス)を使用して、欠陥によって満たされる。1に等しいunique_cluster_dependencies_flagの場合において、第1相互依存構文構造24が、等しいリファレンスされた及びリファレンスしているクラスタIDのポジションで1を示す個々のポジションに対して、このまさしくそのクラスタIDのための別個の副マトリクスが、マトリクス42の中の個々のポジションに、信号で伝えられて置かれる。従って、max_layer_id_extは、vps_max_layers_minus1クラスタのそれぞれの内部の層の数に一致する。
図8の場合、第1相互依存構文構造24は、図7の例と同じ方法で送られる:個々のクラスタIDに対して、クラスタID当たり1つのフラグは、個々のクラスタIDと等しい又はより小さい。フラグcluster_dependency_sets_present_flag46は、上で既に概説していた構文要素general_direct_ext_dependency_flagを使って、図7の第1オプション間を切り換える。第2相互依存構文構造26の実例の数が、構文要素direct_ext_dependency_flagを使って、データストリームの中に提出されることに従う異なるモードが、number_of_cluster_dependency_setsと称される構文要素を使って、明示的に信号で伝えられる。これらの実例は、その時、個々の実例が構文要素included_nuh_layer_id50を使って適用されるクラスタIDを明示的に記載することによって、これらの実例が適用されるクラスタIDに関連する。この手段によって、第2相互依存構文構造26の実例34は、個々のクラスタIDに対して提出されない。むしろ、第2相互依存構文構造26の実例のより小さい数のみが、1と等しいcluster_dependency_sets_present_flagの場合に提出される。個々の実例は、実例に関連するクラスタIDに関連している。また、異なるクラスタの相互依存するペアが関係する限り、欠陥規則がマトリクス42をそのようなポジション(クラスタ対角線の下側)で満たすために適用される。
図9の例に従って、第2相互依存構文構造の信号は、第1相互依存構文構造について差し挟まれた方法で、例示的に信号で伝えられる。しかし、この差し挟みは代わりの実施の形態に従って除外される。ともかく、図9の実施の形態において、副マトリクス38または40(すなわち、第2相互依存構文構造26の実例34)は、第1相互依存構文構造24が相互クラスタ依存を標示する(等しい又は等しくない)クラスタIDの個々のペアに対して提出される。構文例から引き出されるように、副マトリクス40の送信は、副マトリクス38より多いビットdirect_ext_dependency_flagを消費する。これは条件条項52と条件条項54からそれぞれ引き出すことができる。すなわち、クラスタ内部の相互依存規則のために第2相互依存構文構造26の実例を送信することにおいて、カウンターiによって示されたリファレンスしているクラスタIDは、カウンターjによって示されたリファレンスされたクラスタIDに等しく、direct_ext_dependency_flagは、エンハンスメント層IDの結合のために、リファレンス及びリファレンスしている層(リファレンスされた層(ここではl)のエンハンスメント層IDが、リファレンスされた層(ここではk)のエンハンスメント層IDのエンハンスメント層IDより小さい)に対してのみ送信される。すなわち、副マトリクス38のdirect_ext_dependency_flagは、副マトリクス38の対角線の下側のポジションに対してのみ送信される。別の場合において、すなわち、相互依存するクラスタペアi≠jのための第2相互依存構文構造26の実例に対して、完全な副マトリクスが送信される。すなわち、フラグdirect_ext_dependency_flagが、副マトリクス40のそれぞれのポジション毎に送信される。
図10の実施の形態は、図8及び図9の実施の形態の特定の特性:完全な副マトリクスを結合する。すなわち、第2相互依存構文構造26の実例が、つまり数の中のnumber_of_cluster_dependency_setsが提出される。そして、その時、これらの実例のそれぞれは、マトリクス36のグリッドサイトに関連する。ここで、例えば、第2相互依存構文構造26の個々の実例が、第1相互依存構文構造24がそれによってクラスタ独立性の存在を示すために(符号56と比較してください)それらの間で適用される。
言い換えると、図9について説明したように、第2相互依存構文構造26の複数の実例34は、多層データストリームから、つまり、ベース層IDによって表現できる数値であるNを持つ値0<k≦j≦n<Nのペア(j、k)に対して読み取られる。nはNに等しいように設定される。しかし、また、ここに説明されるように、実際に使われたクラスタ濃度の明示的な信号は、送信オーバーヘッドを制限するために使われる。ペア(j、k)は詳察されて(図9の符号24でiとjに亘るループを見てください)、そして、第2相互依存構文構造を読み取ることが、このペア間の相互依存の存在または不存在を示している第1相互依存構文構造に条件付きで依存しているペア(j、k)に対して実行される又は抑制される(図9の「if(direct_dependency_flag[i][j])」を見てください、ここで、i、jはjとkにそれぞれ一致する)。j=kを持つペア(j、k)に対して読み取る第2相互依存構文構造26の実例34は、ベース層ID jを持つそれらの間の層が、ベース層ID jを持つそれらの間の別の層に依存する相互層予測であることを示す。j>kを持つ異なる値のペア(j、k)に対して読み取る第2相互依存構文構造26の実例34は、ベース層ID jを持つそれらの間の層が、ベース層ID kを持つそれらの間の層に依存する相互層予測であることを示す。しかし、図7と同様に、第2相互依存構文構造26の1つの実例が、多層データストリームから読み取られることもある。第2相互依存構文構造26の1つの実例は、個々のクラスタ値ペア(j、j)に対して、共通して示す。ベース層ID jを持つそれらの間の層は、ベース層ID jを持つそれらの間の別の層に依存する相互層予測である。図7の場合、仮に、unique_cluster_dependencies_flagが0に等しい、または、j≠kを持つペア(j、k)に対して共通しているならば、第1相互依存構文構造24は、個々のペア間の相互依存の存在を示す。ベース層ID jを持つそれらの間の層は、ベース層ID kを持つそれらの間の層に依存する相互層予測である。拡張層ID22によって表現できる数値をMと示し、第2相互依存構文構造は、ベース層ID iを持つそれらの間の層が、ベース層ID iを持つそれらの間の別の層に依存する相互層予測であることを示すために、拡張値0<q<p≦m<Mの個々のペア(p、q)に対して1つの2進数の値を含み、そして、拡張値pおよびベース層ID jを持つ層が、拡張値qおよびベース層ID kを持つ層に依存する相互層予測であることを示すために、拡張値0<p、q≦m<Mの個々のペアに対して1つの2進数の値を含む。また、明細書の中の別の場所で説明されるように、mがMと等しいように設定される。しかし、また、ここに説明されるように、実際に使われた拡張濃度の明示的な信号は、送信オーバーヘッドを制限するために使われる。さらに、図8と図10に示すように、インデックス構文構造50が、第2相互依存構文構造の実例をベース層ID値の個々のペア(j、k)に関連付けるために使用される。ここで、図10は、関連構文構造がペア(j、k)毎にフラグを含み、関連構文構造の構造解析が、第1相互依存構文構造がペア(j、k)間の相互依存の不存在(独立性)を示す値0<k≦j≦n<Nのスキップペア(j、k)を含むことを明らかにする。
すなわち、上のセクションの中で説明されたものは、「層識別子クラスタ化とクラスタ依存信号化」として示される。これに関して、装置はビデオデコーダである。このように動作するビデオデコーダは、復号化に対して、(拡張された)層IDによって識別されたビットストリームのパケットを選択することができる。しかし、装置は、代わりに、ネットワーク利用(デコーダなどについての知識)のような外部のファクターに基づいた(拡張された)層IDによって識別されたビットストリームのパケットを捨てることができるネットワーク要素であってもよい。
当然、上で概説された概念は、概念によって改善されるべき符号器の既存のエンコーダも詰め込む。図2の1つのようなエンコーダは、情報量の異なるレベルと一致している異なる層で、相互層予測を使って、ビデオ素材を多層データストリーム10の中に符号化するように構成される。多層データストリームは、それぞれが異なる層のうちの1つと関連する複数のパケット12を含む。各層は、ベース層ID20、または、ベース層ID20及び拡張層ID22によって索引を付けられ、多層データストリームの中に挿入される。第1相互依存構文構造24は、ベース層ID20によって表現できる異なる値のペア間の相互依存を示す。そして、第2相互依存構文構造26は、拡張層ID22によって表現できる異なる値のペア間の相互依存を示す。第1および第2相互依存構文構造をそのように設定することで、第1および第2相互依存構文構造に基づいて、異なる層間の可能な相互層予測依存を明らかにする相互層依存記述14が、組み立て可能である。
次に記述される詳細は、効率的な方法で、層関連の情報を信号で伝える可能性に関する。そのような層関連の情報は、例えば、図2から図10について概説した相互層依存に関する情報を含む。出発点として、しばしば上に示された状況が、個々のパケット206によって構成された層識別構文要素構造208(図2と比較してください)が、図11において描かれたベース層IDフィールド108と拡張層IDフィールド112とから成ることに従って、使われる。図11は、図2の中に示されるネットワーク要素218または多層ビデオデコーダ220などの多層データストリームを処理するための装置100を示す。装置100は、一連のパケット(そのそれぞれが層識別構文要素を含む)から成る多層ビデオ信号を受信するように構成されたレシーバー102を含むとして示される。
レシーバー102によって受信された多層ビデオ信号104(図2の符号204と一致している)は、一連のパケット106(図2の符号206と一致している)から成る。各パケット106は、少なくともベース層IDフィールド108を含む層識別構文要素構造(図2の符号208と一致している)を含み、ハイレベル構文要素またはベース層IDフィールド108または拡張層IDフィールド112の値に無条件に又は条件付きで依存する。
例えば、パケット106は、多層ビデオ信号104が副分割されるNALユニット、スライス、タイル、画、または別のパケットである。また、装置100に含まれた層識別エクステンダー110は、部分113のような複数のパケット106を含む多層ビデオ信号の予め決められた部分に対して、多層ビデオ信号の予め決められた部分113を含むパケット108の拡張層IDフィールド112の最大限に仮定された値を示す多層ビデオ信号から最大構文要素を読み取る。予め決められた部分113は、例えば、符号化されたビデオシーケンス、大きな塊、画像のグループなどである。最大構文要素114は、例えばVPS NALユニットのような部分113の特定のパケット内に含まれる。予め決められた部分113内のパケットのそれぞれに対して、エクステンダー110は、符号108、そして、条件付きで符号112から成る層ID構文構造に基づいて個々のパケットのために層IDを決定する。例えば、構文要素108と112の両方の値の連結は、層IDを生じる。
エクステンダー110は、上で説明された最大構文要素を使って、拡張層IDフィールドのビット長さを引き出す。代わりに、特別な構文要素が、この終わりに使用されてもよい。代わりでも、拡張層IDフィールド112を表すためのビット数は、欠陥(デフォルト)によって固定される。
エクステンダー110は、その時、最大限に仮定された値に基づいて、部分112内の層の最大数を決定する。例えば、エクステンダー110は、部分113に対して、部分113内のパケット106のベース層IDフィールド108のための最大限に仮定された値を示すデータストリーム104から構文要素も読み取り、そして、層の最大数を決定するために両方の最大限に仮定された値を結合する。
エクステンダー110は、層の最大数のそれぞれに対して、多層ビデオ信号の層特徴付け構文部分を、層の最大数と等しい回数繰り返して構文解析することによって、最低1つの特徴を決定する。利点的に、データストリーム104は、それぞれの可能な値に対して(すなわち、拡張層IDフィールド112の全体の濃度全体に対してではなく、この濃度の外の実際に使われた副部分に対して)、最低1つの特徴を信号で伝えることを必要としない。さらに、最大構文要素114は、丁度記載されたように、データストリーム104内の拡張層IDフィールド112の表現ビット数を引き出すように使われさえする。例えば、「特徴」は、別の層または同類に対する相互層予測である。
すなわち図11について、データストリーム204/104内で、重要性の予め決められた部分113内の全てのパケット106/206を考慮するとき、拡張層IDフィールドの表現できる状態の外のいくつが実際に仮定されるかの明示的な信号化を送ることが可能であることが説明される。例えば、拡張層IDフィールド112がNビットのフィールドであるとすると、2N個の拡張層ID120が拡張層IDフィールド112によって表現できる。フィールド112の長さは、固定されるか、または信号で伝えられて、データストリーム内で、図12の点線122を使って示された所定のハイレベル構文要素の方法によって設定される。しかし、いくつかの理由のために、利用できる拡張層IDの全てが、重要性の予め決められた部分113内で使われない。例えば、図12において、7個の表現できる拡張層IDのみが使われることが描かれる、すなわちハッチングの方法によって描かれる。
図11に従って、最大構文要素114が、拡張層IDフィールド112の実際に使われた/仮定された値のこの数を示す。この構文要素114のため、拡張層IDフィールド112の表現できる値の完全な数に対してというよりも、むしろ拡張層IDの実際に仮定された数についてのみ層特定情報をデータストリームの中に挿入することが実現できる。従って、図12の符号122で説明されるように、多層ビデオ信号を構文解析している装置は、例えば、拡張層IDフィールドの実際に利用できる/表現できる値の完全な数よりもむしろ構文要素114によって示された層の最大数に等しい回数だけ、多層ビデオ信号の所定の層特徴付け構文部分124を構文解析する。データストリームによって消費されたサイド情報量は、従ってより低く保持される。例えば図6から図10の例において、拡張層IDフィールド112の表現できる値の最大数と等しいようにこの値(max_layer_id_ext)を設定するよりもむしろ、構文要素114によって示される拡張状態の最大限に仮定された数と等しいようにmax_layer_id_extを設定することが実現できる。従って、「特徴付け構文部分」124は、以前に提出されたフラグdirect_ext_dependency_flagによって具体的に示される。
上で既に概説したように、フィールド112のビット長さの存在/信号化はオプションである。ともかく、構文要素114が実際に使用した/アクティブな拡張層IDの数を示す粒状性/忠実性は、構文要素122によって設定された拡張層IDフィールド112の利用できる/表現できる値の数をより粗く設定することに比べて増大する。好ましくは、構文要素114が拡張層IDフィールド112の実際に仮定された値の数を示す忠実性または粒状性は、実際に仮定された値の正確な数を示すために極めて十分である。代わりに、ものの間のどこかの忠実性/粒状性、および、構文要素122によって提供されたフィールド112の利用できる/表現できる値の最大数の信号化の忠実性/粒状性が同様に実現できる。すなわち、最大構文要素114は、拡張層IDフィールドのビット長さであるnを持つ(n−1)2より小さい又は等しいユニットの中の拡張層IDフィールド108の最大限に仮定された値を示す。
従って、図11と図12に従って、ネットワーク要素または多層ビデオデコーダなどの装置が、レシーバー102およびエクステンダー110を含むことが説明される。レシーバー102は、一連のパケット106から成る多層ビデオ信号104を受信するように構成されている。パケット106のそれぞれは、ベース層IDフィールドおよびことによると条件付きのみで拡張層IDフィールド112から成る層識別構文要素構造を含む。層識別エクステンダー110は、一連のパケット106の外の複数のパケットを含む多層ビデオ信号の予め決められた部分113に対して、多層ビデオ信号104から最大構文要素114読み取るように構成されている。最大構文要素114は、予め決められた部分113によって構成されたパケット106の間の拡張層IDフィールド112の最大限に仮定された値を示す。エクステンダー110は、予め決められた部分113内のパケット106のそれぞれに対して、上で概説されたフィールド108と112のベース層IDと拡張層IDとを連結することなどによって、層識別構文要素構造に基づいた個々のパケット106のための層IDを決定する。エクステンダー110は、また、最大限に仮定された値に基づいた予め決められた部分113内の層の最大数を決定し、層の最大数のそれぞれに対して、層特徴付け構文部分104を、層の最大数と等しい回数繰り返して構文解析することによって、最低1つの特徴を決定する。「層の最大数」は、図11と12の実施の形態を図2〜図10について上記で概説した実施の形態と結合するとき、クラスタ当たり層の最大数を示す。この場合、「層の最大数」の決定は、例えば、最大限に仮定された値を「層の最大数」として直接に採用する。「最低1つの特徴」は、第2相互依存構文構造内の相互層依存を示しているフラグの数である。しかし、特徴の別の例は、個々の層IDに対して設定された一致している符号化パラメータのデータストリーム内の信号化でもある。その場合、「層の最大数」は、使われた又は表現できるベース層IDの数×最大限に仮定された値、すなわち実際に使用された/仮定された拡張層IDの数と等しいように決定される。別の例は同様に実現可能である。ともかく、構文要素114の方法によって実際に仮定された値の伝達は、貴重なサイド情報ビットレートを保存することを可能にする。
図11と図12の概念は、上で既に概説されたように、図2〜図10について上に概説した概念と結合される、または、以前に説明された概念を使わないで単独で使われる。
しかし、図2〜図10について前に提出された上記の説明と同様に、以下の説明は、HEVCの拡張などの既存のビデオ符号器の中に、図11と図12の概念をいかにして築くかの可能性を明らかにする。
HEVCにおいて、層識別子変数(LayerIDと称する)は、ビデオおよびメタデータパケットのヘッダー、例えばビデオまたはメタデータパケットの大きな塊のそれぞれの中において信号で伝えられたnuh_layer_idおよび追加の情報の明示的に信号で伝えられた層識別子から引き出され、その識別のために使われるように、特定のデータパケットの新しい可変のLayerIdを形成する。
図11と図12に従って信号で伝えられた追加の情報は、特定のビデオまたはメタデータパケットがエンハンスメント層(向上層)に属し、それ故、レガシー(古くて機能的には劣るけれども普及していて替えることができない)装置のみベース層と互換性を維持することを与えられた追加の構文要素(ビデオまたはメタデータパケットのヘッダーまたはペイロードのいくらかの部分内のlayer_id_extと比較してください)を含む。ビデオまたはメタデータパケットが、ベース層に属すけれども、有能な装置を処理しているエンハンスメント層によって処理されるとき、デフォルト値はlayer_id_extに対して仮定される。
図13は、HEVC符号化ビデオのエンハンスメント層(nuh_layer_id>0と比較してください)のビデオデータパケットの中に含まれるスライスヘッダーの中の構文要素layer_id_extとして、追加の情報を信号で伝えるスライスセグメントヘッダーのための例を与える。
数学的な操作は、nuh_layer_idとlayer_id_extを、より大きい識別子空間を許し、かつnuh_layer_idとlayer_id_extの2つの値の特別な組み合わせに対して特別であるLayerIdの中に結合するために使われる。数学的な操作は、例えば以下のように、LayerId変数のMSBとしてnuh_layer_idのビットが、そして、LayerId変数のLSBとしてlayer_id_extのビットが使われる(または、逆もまた同様である)。
可変のLayerIdは次の通り決定される。そこで、LengthOfExtensionはビットについてのlayer_id_ext構文要素の長さである。
LayerId=(nuh_layer_id<<LengthOfExtension)+layer_id_ext
図11と図12の概念は、送られたデータ量を効率的に利用するために、ビデオまたはメタデータパケットのヘッダーまたはペイロードのいくらかの部分の追加の情報(上のLengthOfExtensionと比較してください)を伝えるために使用されるビットの量の明示的な信号化を含む。図14は、HEVCビデオパラメータセット拡張構文などのメタデータパケットにおいて信号で伝えているLengthOfExtension値の例示的な構文と意味を与える。
layer_id_ext_lenは、LayerId範囲を拡張するために使われるビット数を示す。
図11と図12の概念は、符号化されたビデオビットストリーム(例えばmax_layer_id_ext)において使われたlayer_id_ext構文要素の最大値の明示的な信号化を含む。それに基づいて、ビデオまたはメタデータパケットのヘッダーまたはペイロードのいくらかの部分の追加の情報(上のLengthOfExtensionと比較してください)を伝えるために必要なビットの最低可能量が、送られたデータ量を効率的に利用するために引き出される。図15は、HEVCビデオパラメータセット拡張構文などのメタデータパケットにおいて信号で伝えているlayer_id_ext構文要素値の最大値の構文と意味を例示的に与える。
max_layer_id_extは、符号化されたビデオシーケンス内のスライスヘッダーの中のlayer_id_ext構文要素の最大値を示す。
発明の上記の拡張に依存しているlayer_id_ext構文要素の意味の2つの例示的なバリエーションが、以下において与えられる。
layer_id_extは、層を識別するために、nuh_layer_idとの結合において使用される。構文要素layer_id_extは、layer_id_ext_lenビットを使って符号化される。存在しないとき、その値は0と推定される。
layer_id_extは、層を識別するために、nuh_layer_idとの結合において使用される。構文要素layer_id_extは、符号化されたCeil(Log2(max_layer_id_ext))ビットである。存在しないとき、その値は0と推定される。
HEVCビデオ符号器規格のパラメータセットまたはSEIメッセージの層識別子は、図16a〜図16cにおいて与えられた依存を構造解析すること無く拡張される。
層にされた符号化シナリオにおいて、図17のビデオパラメータセット拡張のための構文テーブルで例示的に与えられるように、層識別子またはその最大数に関連する信号化は、正規の明示的な層識別子空間(nuh_layer_idの値範囲と比較してください)の代わりに拡張層識別子空間(LayerIdの値範囲と比較してください)をカバーするために適合される。ここで、可変のVpsMaxNumLayersが、次の通り例示的に与えられる。
拡張層の範囲の中の層の最大数を規定している可変のVpsMaxNumLayersは、(vps_max_layers_minus1)*2layer_id_ext_len.+1と等しく設定される。または
拡張層の範囲の中の層の最大数を規定している可変のVpsMaxNumLayersは、(vps_max_layers_minus1)*max_layer_id_ext.+1と等しく設定される。
layer_id_in_nalu[i]は、i番目の層のVCL NALユニットと関連したLayerId値の値を規定する。0からVpsMaxNumLayers−1の範囲内のiに対して、包括的に、存在しないとき、layer_id_in_nalu[i]の値はiに等しいと推定される。
iが0より大きいとき、layer_id_in_nalu[i]は、layer_id_in_nalu[i−1]より大きい。0からvps_max_layers_minus1の範囲内のiに対して、包括的に、可変のLayerIdInVps[layer_id_in_nalu[i]]はiと等しく設定される。
dimension_id[i][j]は、i番目の層のj番目の現在のスケーラビリティ次元タイプの識別子を規定する。dimension_id[i][j]の表現のために使われたビット数は、dimension_id_len_minus1[j]+1ビットである。dimension_id[i][j]が、0からNumScalabilityTypes−1の範囲内のjに対して、存在しないとき、包括的に、dimension_id[i][j]は、((layer_id_in_nalu[i]&((1<<dimBitOffset[j+1])−1))>>dimBitOffset[j])に等しいと推定される。
i番目の層のsmIdx番目のスケーラビリティ次元タイプの識別子を規定している可変のScalabilityId[i][smIdx]、i番目の層のビュー識別子を規定している可変のViewId[layer_id_in_nalu[i]]、および、i番目の層がビュースケーラビリティ拡張層であるかどうかを規定している可変のViewScalExtLayerFlagは、次の通り引き出される。
for(i=1;i<=VpsMaxNumLayers;i++){
lId=layer_id_in_nalu[i]
for(smIdx=0、j=0;smIdx<16;smIdx++)
if(i!=0)&&scalability_mask[smIdx])
ScalabilityId[i][smIdx]=dimension_id[i][j++]
else
ScalabilityId[i][smIdx]=0
ViewId[lId]=ScalabilityId[i][0]
ViewScalExtLayerFlag[lId]=(ViewId[lId]!=ViewId[0])

当然、上で概説された概念は、概念によって改善される符号器の既存のエンコーダも詰め込む。図2のようなエンコーダは、一連のパケット106から成る多層ビデオ信号104の中にビデオ信号を符号化するように構成されている。パケット106のそれぞれは、ベース層IDフィールド108と拡張層IDフィールド112から成る層識別構文構造を含む。さらに、このエンコーダは、複数のパケットを含む多層ビデオ信号の予め決められた部分113に対して、最大構文要素114を多層ビデオ信号の中に挿入し、多層ビデオ信号の予め決められた部分113を含むパケットの拡張層IDフィールド108の最大限に仮定された値を示し、最大限に仮定された値に基づいて多層ビデオ信号の予め決められた部分内の層の最大数を決定し、層の最大数のそれぞれに対して、多層ビデオ信号の層特徴付け構文部分124を層の最大数と等しい回数繰り返し書くことによって、多層ビデオ信号104の中に最低1つの特徴を信号で伝えるように構成されている。例えば、エンコーダは、部分113の符号化を終えるまで、ストリーム104の出力を延期する。
以下の図面は、多層データストリームに含まれたパケットの層IDを信号で伝える概念、および、どのような推論のためでも、0などのベース層IDの特定の値が、そこにおいて拡張層IDを付加した可能性から除外されることを要求することが必要な場合において、バックワード互換性を解決すること無く拡張メカニズムを使って、この層IDを効率的に信号で伝えることを達成する可能性を扱う。後者の必要性は以下の非対称を生じる:ベース層IDの殆んど全ての可能な値に対して、拡張層IDを付加することが実現できる。これは以下の非対称を生じる:ベース層IDの殆んど全ての値に対して、拡張層IDの付加が実現でき、従って、ベース層IDの殆んど全ての値の数×層ID値を表現可能な拡張層IDの表現可能な値の数を生じる。しかし、限定されたベース層ID値は、どのような拡張層IDでも付加する可能性を除く。従って、この非対称が受け入れられるか、または、ベース層IDの禁じられた値が、拡張メカニズムを使う場合において使われないかのいずれかである。以下に発表された解決は、より効率的な方法でこの問題を克服する。
今回、この次の概念の説明は、ちょうど概説された制限が正確に適用されるHEVC規格の可能な拡張について直ちに概説される。しかし、以下で概説された概念は、例えば層識別拡張メカニズムの上に同様な制限を課す別の符号器にも移送可能である。
HEVCの制限は、上で概説したように、ベース層が拡張できないことである。ゆえに、HEVC規格に従うために、層id拡張値layer_id_extは、0と等しいnuh_layer_idを持つ層に対して、信号で伝えることができない。従って、0と等しいnuh_layer_idに関連したクラスタは、ベース層自身のみを含むことができる。そのような異なるクラスタの中の層の等しくない数は不適当である。
問題は、以下に概説された概念によって解決できる。それは、クラスタおよびクラスタ内の層id拡張値を、上の説明とは異なる方法で引き出す。それは、0と等しいnuh_layer_idに対して複数の層を持つことができないので、複数の層を持たない制限は、0と等しくない別のnuh_layer_id値に拡張される。これらの限定されたnuh_layer_id値に属する層は、そのとき、層の等しい数を持つクラスタを形成するために、無制限のnuh_layer_id値からの層と結合される。
基本的なアイデアは、nuh_layer_idが、例えばビットマスキングによって2つの値に分離されることである。1つの値は、クラスタを決定するために用いられる。この方法の異なるnuh_layer_id値は同じクラスタに属することができる。もう1つの値は、layer_id_ext値の存在を決定し(それゆえ、仮に、複数の層がnuh_layer_id値に属することができるならば、決定し)、そして、LayerId派生においてlayer_id_ext_valueに追加のオフセットを決定するために利用される。
基本的なアイデアの実施の形態のための例は、以下において与えられ、図18において説明される。従って、図18は、3と等しいmax_layer_id_ext(2と等しいLengthOfExtension)の例示的な場合に対して、layer_id_extとnuh_layer_idとLayerIdとの間の関係のための例を提供する。
この例のみにおいて、6ビットnuh_layer_id値のうち5個の最も重要なビットが、クラスタを決定するために用いられる。ゆえに、異なる最も重要でないビットを持つ2つのnuh_layer_id値が、1つのクラスタに属している。
仮に、最も重要でないビットが0と等しいならば、layer_id_ext値は、nuh_layer_idおよびuh_layer_idに属する1つの層のみに対して、信号で伝えられない。定義によって、この層は、5個の最も重要なビットによって規定されたクラスタ内の0と等しいlayer_id_extを持つ層である。さもなければ、仮に、最も重要でないビットが1と等しいならば、複数の層はnuh_layer_id値に属する。個々の層に対して、layer_id_ext値は明示的に信号で伝えられ、個々の層は5個の最も重要なビットによって規定されたクラスタに属する。
図19の構文テーブルは実施の形態のために使われる。それはパケット206のヘッダー、すなわちスライスセグメントのヘッダー、または、より精密なその破片を示す。
nuh_layer_idの最も重要でないビットが0と等しいとき、Layer_id_extは存在しない。それが存在しないとき、それは0に等しいと推定される。可変のLayerIdは次の通り決定される。ここで、LengthOfExtensionは、ビットについてのlayer_id_ext構文要素の長さである。
LayerId=((nuh_layer_id>>1)<<LengthOfExtension)+layer_id_ext
別の実施の形態において、可変のadd_layer_id_ext_lenは、ビットストリ−ム、例えばVPSにおいて信号で伝えられる。(前に説明した実施の形態が、1と等しいadd_layer_id_ext_lenを持つこの実施の形態の特別な場合であることに注意してください)。6ビットnuh_layer_id構文要素の最も重要なビット(6−add_layer_id_ext_len)は、クラスタを決定するために使われる。最も重要でないビットadd_layer_id_ext_lenは、layer_id_extが推定されるかどうかを規定する。さらに、それらはlayer_id_ext値に追加のオフセットを規定する。図20aおよび図20bの構文テーブルは、実施の形態を示すために用いられる。
実施の形態において、nuh_layer_idの最も重要でないビット(add_layer_id_ext_len)が1と等しいとき、layer_id_extのみが存在する。layer_id_extが存在しないとき、それは0に等しいと推定される。可変のLayerIdは次の通り決定される。ここで、LengthOfExtensionは、ビットについてのlayer_id_ext構文要素の長さである。
LayerId=
((nuh_layer_id>>add_layer_id_ext_len)<<LengthOfExtension)+layer_id_ext+layerIdExtOffset
従って、図18〜図20bについて上で概説された概念に従って、図2において描かれた多層ビデオデコーダのネットワーク要素などの装置は、相互層予測を使って、ビデオ素材が、情報量の異なるレベルに一致している異なる層で符号化される多層データストリームを処理するように構成される。装置は、多層データストリームを含むパケットのそれぞれに対して、以下のことを行う。個々のパケットは、上で既に説明したように、異なる層のうちの1つと関連している。
特に、図21に示すように、装置は、多層データストリームから、または、より精密であるように現在のパケットから、ベース層IDフィールド308を読み取る。ベース層IDフィールドは第1副フィールド308aと第2副フィールド308bとを含む。例えば、第1副フィールドは、フィールド308の1つ以上の最も重要でないビットによって形成される。一方、第2副フィールド308bは、フィールド308の別の最も重要なビットによって形成される。図20bの例において示されるように、add_layer_id_ext_lenと称される高レベル構文要素310は、副フィールド308aの長さを定義する。
ステップ312において、装置はベース層IDフィールド308を読み取った後、ステップ314において、副フィールド308aが、予め決められた基準を満たすかどうかをチェックする。例えば、仮に、副フィールドが1つであるか、または「全く同じシーケンス」であるならば、基準は満たされる。予め決められた基準が満たされる場合、装置は、ステップ318において、データストリームから、または、より精密であるように、現在のパケットから拡張層IDフィールド316を読み取る。そして、ステップ320において、拡張値が拡張値のドメインの第1副セット内にあるように、拡張層IDフィールドを使って拡張値を引き出す。ステップ320における引き出しは、フィールド316内のビット表現の単なるコピーと一致する。拡張層IDフィールド316内の値が0などの特定の値を仮定しないことは、データストリームの要件である。さらに以下で概説されるように、ベース層IDフィールド308の副フィールド308aが基準を満たさない場合、後者の値が確保される。
ステップ320の後、装置は、第2副フィールド308bの可能な値のドメインからクラスタ値のドメイン上にマッピングすることによって、クラスタ値を第2副フィールド308bから引き出す。現在のパケットが関連する層、すなわち、フィールド308および316を構成している層が、ステップ324において、ステップ320と322において引き出されたクラスタと拡張値を使って索引を付けられる。例えば、クラスタおよび拡張値は、例えば最も重要な数字のためのクラスタ値を使って、お互いに単に連結される。副フィールド308bに基づいたクラスタ値322の引き出しは、また、例えば、クラスタ値の2進数の表現として、副フィールド308bのビットの直接的な使用から成る。
しかし、仮に、ステップ314のチェックが、予め決められた基準が合致しないならば、装置は、現在のパケットに対して多層データストリームから拡張層IDフィールドを読み取ることを控える。むしろ、装置は、ステップ326において、拡張値を0に設定することなどによって、拡張値のドメインの第1副セットに解体する値の上に拡張値を設定し、そして、クラスタ値のドメインの上に第2副フィールド308bの可能な値のドメインからマッピングすることによって、クラスタ値を第2副フィールド308bから引き出す。ステップ322と328の引き出しは、同じマッピングを使って実行される。次に、現在のパケットの層IDは、ステップ326と328において設定されて引き出されたクラスタと拡張値から決定される。ここで、仮に、クラスタと拡張値がステップ320と322において引き出されるならば、層IDの決定が同じ方法で再び実行される。
図21の説明を図18の実施の形態に関連させて、第1副フィールド308aは、1ビットの長さであり、特にフィールド308のLSBである。仮に、このLSB308aが勝ち取られて、拡張層IDフィールド316にわたる拡張値の前記ドメインが{0、1、2、3}であり、図18の場合において、layer_id_ext、すなわちフィールド316が2ビットの長さであるならば、予め決められた基準が満たされる。従って、拡張値のドメイン、すなわちステップ320における引き出しの共通ドメインの第1副セットは、{1、2、3}である。特に、ステップ320における引き出しは、図18の例の中で、拡張層IDフィールドに適用されたユニットのマトリクスの方法によって実施される。代わりに、いくらかの別の計算が、第1副フィールド308aの値をユニットのマトリクス応用の結果に追加するように使われる。従って、ステップ326において、拡張値は、{1、2、3}に解体する値、すなわち0に設定される。引き出し322と328において使われたマッピングは同じであるけれども、代わりに異なっていてもよい。マッピングは特にバイジェクティブ(bijective)である。
ステップ324の中のインデックスの決定は、図18において説明されるように、より重要な数字を設定するためのクラスタ値と、より重要でない数字を設定するための拡張値とを使用する。従って、図18において説明したように、layer_id_extフィールド、すなわち拡張層IDフィールド316は、nuh_layer_id、すなわちベース層IDフィールド308のLSBが1である場合に単に存在する。その他の場合は、layer_id_extフィールドは0であると推定される。従って、layer_id_extとnuh_layer_idの結合に対して層IDのマッピングは、完全に対称であり、未使用のビット表現は存在しない。layer_id_extの推定された値は、layer_id_extを移送することによって、データストリームの中で利用される。その結果、layer_id_extの移送のためのデータストリームの中に亘るビットが、実のところ、layer_id_extが3つの異なる値{1、2、3}を単に仮定するという事実を説明するように減少する。例えば、2進数の単項符号は、エントロピー符号化/復号化を使って、データストリームの中に符号化され、かつ、そこから復号化された2進数のストリングスの上に、{1、2、3}の3つの要素をマップするために使用される。
従って、相互エイリアスが後ろの概念について記述される。相互層予測を使って、情報量の異なるレベルに一致している異なる層でビデオ素材が符号化される多層データストリームを処理するように構成された装置。それぞれが異なる層のうちの1つと関連する複数のパケットを含む多層データストリーム。多層データストリームのパケットのそれぞれに対して、多層データストリームからベース層IDフィールドを読み取るように構成された装置。第1副フィールドおよび第2副フィールドを含むベース層IDフィールド。ベース層IDフィールドの第1副フィールドが、予め決められた基準を満たすかどうかについてのチェック。
仮に、ベース層IDフィールドの第1副フィールドが、予め決められた基準を満たすならば、多層データストリームから拡張層IDフィールドを読み取り、拡張値が拡張値のドメインの第1副セット内にあるように、拡張層IDフィールドを使って拡張値を引き出し、そして、第2副フィールドの可能な値のドメインからクラスタ値のドメイン上にマッピングすることによって、クラスタ値を第2副フィールドから引き出しなさい。
仮に、ベース層IDフィールドの第1副フィールドが、予め決められた基準を満たさないならば、多層データストリームから拡張層IDフィールドを読み取ることを控え、拡張値を拡張値のドメインの第1副セットに解体する値に設定し、そして、第2副フィールドの可能な値のドメインからクラスタ値のドメイン上にマッピングすることによって、クラスタ値を第2副フィールドから引き出しなさい。
ここで、装置は、個々のパケットが、クラスタと拡張値を使って関連する層に索引を付ける。予め決められた基準が多層データストリームから読み取られることに注意するべきである。上で説明したように、「第1副フィールド」は、「予め決められた基準」が「仮に1つならば」、1ビットの長さおよび特にLSBである。「拡張値のドメイン」は、例えば{0、1、2、3}である。「第1副セット」は{1、2、3}である。「拡張層IDフィールドを使って」は、代わりに、ユニットのマトリクス応用の結果に第1副フィールドの値を加えている、拡張層IDフィールドに適用されたユニットのマトリクスである。「拡張値に解体する値に設定しなさい」は、「0に」設定することである。「第1副フィールドの可能な値のドメインからクラスタ値のドメイン上にマッピングすること」は、両方の場合に対して同じである。しかし、代わりに異なっていてもよい。マッピングはバイジェクティブである。「クラスタと拡張値を使って、個々のパケットが関連する層に索引を付ける」は、例えば、より重要でない数字を設定するために、より重要な数字および拡張値を設定することに対して、クラスタ値を使うことを含む。
後ろの概念は、相互層予測を使って、情報量の異なるレベルに一致している異なる層で、ビデオ素材202を多層データストリーム204の中に符号化するように構成された符号器の中に直接に移送される。多層データストリームは、それぞれが異なる層の1つと関連する複数のパケット206を含む。個々のパケットが関連する層が、クラスタと拡張値によって唯一に決定される。符号器は、仮に、拡張値が拡張値のドメインの第1副セット内にあるならば、多層データストリームのパケット206のそれぞれに対して、第2副フィールドを設定するためのクラスタ値を使って、予め決められた基準を満たすために第1副フィールドを設定することで、第1副フィールド308aおよび第2副フィールド308bを含むベース層IDフィールド308を多層データストリームの中に挿入するように構成されている。そして、符号器は、拡張層IDを設定するための拡張値を使って、拡張層IDを多層のデータストリームの中に挿入するように構成されている。そして、符号器は、仮に、拡張値が拡張値のドメインの第1副セットに解体する値に等しいならば、予め決められた基準を満たさないように、第2副フィールドを設定するためのクラスタ値を使って、第1副フィールドを設定することで、多層のデータストリームの中に、拡張層IDフィールドを挿入することおよびベース層IDフィールド308を挿入312することを控えるように構成されている。すなわち、符号器は、復号器が、正しい層IDを上で概説した方法で引き出して、復号側または受信側について上で概説したこれらに比較した逆マッピングをこの終わりに使うように、データストリームを生成する。
上の説明を要約すると、同じく、エンハンスメント層データの層識別子、クラスタの中の層識別子のグループ化およびクラスタ内の符号化依存の効率的な信号に対して、拡張メカニズムが提供される。
上に発表された詳細は、層にされた符号化シナリオの中のエンハンスメント層のデータに適用される。一方、ベース層のデータは不変に置かれる。層にされた符号化シナリオのベース層は、ベース層とエンハンスメント層のデータパケットの共通のヘッダー構文の中の層識別子(nuh_layer_idと比較してください)を通じて識別される。
上の例では、受信者側の個々の装置はビデオデコーダである。従って動作するビデオデコーダは、復号化のための(拡張された)layerIDによって識別されたビットストリームのパケットを選ぶことができる。しかし、装置は、代わりに、ネットワーク利用、復号器についての知識などの外部のファクターに基づいて、(拡張された)layerIDによって識別されるビットストリームのパケットを捨てることができるネットワーク要素である。
上の実施の形態の全てにおいて、多層データストリームは、別の層から予測された層相互層が、1つ以上のさらなるビュー、奥行き情報、表面反射率情報、色組み合わせ情報、空間解像度改良およびSNR解像度改良を追加するように、相互層予測を使って、異なる層にてその中で符号化されたビデオ素材を持つ。
いくつかの面が装置の文脈において説明されたけれども、これらの面が、また、ブロックまたは装置が方法ステップまたは方法ステップの特徴に対応する対応方法の説明を表現することは明らかである。相似的に、方法ステップの文脈において説明された面は、また、対応する装置の対応するブロックまたはアイテムまたは特徴の説明を表現する。方法ステップのうちのいくつかまたは全ては、例えばマイクロプロセッサー、プログラム可能なコンピュータ、または電子回路のようなハードウェア装置によって(または使って)実行される。いくつかの実施の形態において、最も重要な方法ステップのうちの約1つ以上は、そのような装置によって実行される。
上で述べられた発明の符号化された信号は、デジタル記憶媒体に蓄えられるか、または、無線通信媒体のような通信媒体またはインターネットのような有線通信媒体で移送される。
特定の実行要件に依存することによって、本発明の実施の形態はハードウェアまたはソフトウェアにおいて実行できる。実行は、個々の方法が実行されるようなプログラム可能なコンピュータシステムと協力し(または、協力する可能性があり)、そこに蓄えられた電子的に読み取り可能な制御信号を持つデジタル記憶媒体(例えばフロッピー(登録商標)ディスク、DVD、ブルーレイ、CD、ROM、PROM、EPROM、EEPROMまたはフラッシュメモリ)を使って実行できる。従って、デジタル記憶媒体は読み取り可能なコンピュータであってもよい。
本発明に従ったいくつかの実施の形態は、ここに説明された方法のうちの1つが実行されるように、プログラム可能なコンピュータシステムと協力する可能性がある電子的に読み取り可能な制御信号を持つデータキャリアを含む。
一般に、本発明の実施の形態は、プログラム符号を持つコンピュータプログラム製品として実行できる。コンピュータにおいてコンピュータプログラム製品が稼働するとき、プログラム符号は方法のうちの1つを実行するために操作される。例えば、プログラム符号は機械的に読み取り可能なキャリアに蓄えられてもよい。
別の実施の形態は、ここに説明された方法のうちの1つを実行するためのコンピュータプログラムを含み、機械的に読み取り可能なキャリアに蓄えられる。
すなわち、本発明の方法の実施の形態は、従って、コンピュータプログラムがコンピュータにおいて稼働するとき、ここに説明された方法のうちの1つを実行するためのプログラム符号を持つコンピュータプログラムである。
従って、本発明の方法の別の実施の形態は、ここに説明された方法のうちの1つを実行するためのコンピュータプログラムを含む、その上において記録されるデータキャリア(またはデジタル記憶媒体、またはコンピュータ可読媒体)である。データキャリア、デジタル記憶媒体、または記録された媒体は、一般に実在し、および/または、非移行である。
従って、本発明の方法の別の実施の形態は、ここに説明された方法のうちの1つを実行するためのコンピュータプログラムを表現しているデータストリームまたは一連の信号である。データストリームまたは一連の信号は、例えばデータ通信接続(例えばインターネット)を介して転送されるように構成される。
別の実施の形態は、ここに説明された方法のうちの1つを実行するように構成された、または適用された処理手段(例えばコンピュータまたはプログラム可能な論理デバイス)を含む。
別の実施の形態は、ここに説明された方法のうちの1つを実行するためのコンピュータプログラムをインストールしているコンピュータを含む。
本発明に従う別の実施の形態は、レシーバーに対して、ここに記述された方法のうちの1つを実行するためのコンピュータプログラムを転送する(例えば、電子的にまたは光学的に)ように構成された装置またはシステムを含む。例えば、受信器は、コンピュータ、モバイル装置、メモリー装置または同類である。例えば、装置またはシステムは、コンピュータプログラムを受信器に転送するためのファイルサーバーを含む。
いくつかの実施の形態において、プログラム可能な論理デバイス(例えば、フィールドプログラム可能ゲートアレイ)は、ここに説明された方法の機能のいくつかまたは全てを実行するために使用される。いくつかの実施の形態において、フィールドプログラム可能ゲートアレイは、ここに説明された方法のうちの1つを実行するために、マイクロプロセッサーと協働する。一般に、方法は、どのようなハードウェア装置によっても好ましく実行される。
上に説明された実施の形態は、本発明の原則のためにのみ説明される。ここに説明された配置と詳細の部分修正と変化は、この分野における熟練した者に明白であることは理解される。従って、切迫した特許の請求項の範囲のみによって制限され、ここの実施の形態の説明と例示の方法によって提出された特定の詳細によって制限されない。
本発明は、例えば多層ビデオ符号化の分野などのクラスタに基づいた依存信号に関する。
従って、例えば、減少したサイド情報オーバーヘッド、および/または、発展したバックワード互換性について、より効率的である多層符号化に関連してクラスタに基づいた依存信号のための概念を提供することが、本応用の目的である。この目的は保留中の独立請求項の主題によって達成される。



  1. ビデオ素材が相互層予測を使用して情報量の異なるレベルと一致している異なる層で符号化される、多層データストリーム(10)を処理するように構成され、前記多層データストリームは複数のパケット(12)を含み、前記複数のパケット(12)のそれぞれは前記異なる層の1つと関連し、それぞれの層はベース層ID(20)、または、ベース層ID(20)および拡張層ID(22)によって索引を付けられ、
    前記ベース層ID(20)によって表現できる異なる値のペア間の相互依存を示している第1相互依存構文構造(24)、および、前記拡張層ID(22)によって表現できる異なる値のペア間の相互依存を示している第2相互依存構文構造(26)を、前記多層データストリームから読み取るように構成され、
    前記第1相互依存構文構造および前記第2相互依存構文構造に基づいて、前記異なる層間の可能な相互層予測依存を明らかにしている相互層依存記述(14)を組み立てるように構成されていることを特徴とする装置。

  2. ペア(j、k)間の相互依存の存在または不存在を表示している前記第1相互依存構文構造に条件付きで依存しているペア(j、k)に対して、前記多層データストリームから前記第2相互依存構文構造(26)を読み取る又は抑制しながら読み取ることによって、前記多層データストリームから、すなわち、前記ベース層IDによって表現できる数値であるNを持つ、前記ベース層IDによって表現できる値0<k≦j≦n<Nの異なるペア(j、k)に対して、前記第2相互依存構文構造(26)の複数の実例(34)を読み取るように構成され
    j=kを持つペア(j、k)に対して読み取る前記第2相互依存構文構造(26)の前記実例(34)は、ベース層ID jを持つそれらの間の層が、ベース層ID jを持つそれらの間の別の層に依存する相互層予測であることを示し、そして、k<jを持つペア(j、k)に対して読み取る前記第2相互依存構文構造(26)の前記実例(34)は、ベース層ID jを持つそれらの間の層が、ベース層ID kを持つそれらの間の層に依存する相互層予測であることを示していること、
    を特徴とする請求項1に記載の装置。

  3. 前記多層データストリームから前記第2相互依存構文構造(26)の1つの実例を読み取り、前記ベース層IDによって表現できる数値であるNを有して、前記第2相互依存構文構造(26)の1つの実例が、
    前記ベース層IDによって表現できる値0<i≦n<Nのそれぞれに共通して、ベース層ID iを持つそれらの間の層が、ベース層ID iを持つそれらの間の別の層に依存する相互層予測であるか、または、
    0<k<j≦n<Nを持つペア(j、k)のセットのそれぞれに共通して、ベース層ID jを持つそれらの間の層が、ベース層ID kを持つそれらの間の層に依存する相互層予測であるかのいずれかである、
    ことを示すように構成されていること、を特徴とする請求項1に記載の装置。

  4. 前記第2相互依存構文構造(26)の実例のそれぞれに対して、前記ベース層IDによって表現できる数値であるNを有して、前記ベース層IDによって表現できる値0<k≦j≦n<Nのペア(j、k)の個々の副セットを持つ前記第2相互依存構文構造(26)の個々の実例を関連付ける関連構文構造と一緒に、前記多層データストリームから前記第2相互依存構文構造(26)の実例を読み取るように構成されていること、を特徴とする請求項1に記載の装置。

  5. 前記関連構文構造がペア(j、k)毎にフラグを含み、
    前記第1相互依存構文構造がペア(j、k)間の相互依存の不存在を示す、値0<k≦j≦n<Nのスキップペア(j、k)を持つ前記関連構文構造を構文解析するように構成されていること、を特徴とする請求項4に記載の装置。

  6. 前記拡張層ID(22)によって表現できる数値がMであり、前記第2相互依存構文構造が、
    ベース層ID jを持つそれらの間の層が、ベース層ID jを持つそれらの間の別の層に依存する相互層予測であることを示すために、拡張値0<q<p≦m<Mのペア(p、q)毎に1つの2進数の値を含み、および
    拡張値p及びベース層ID jを持つ層が、拡張値q及びベース層ID k<jを持つ層に依存する相互層予測であることを示すために、拡張値0<p、q≦m<Mのペア(p、q)毎に1つの2進数の値を含む、
    を特徴とする請求項1〜請求項5のいずれかに記載の装置。

  7. 前記多層データストリームにおいて、前記ベース層IDによって表現できるN値の間の最大限に仮定される値の明示的な信号からnを引き出す、および/または、前記多層データストリームにおいて、前記拡張層IDによって表現できるM値の間の最大限に仮定される値の明示的な信号からmを引き出すように構成されていること、を特徴とする請求項1〜請求項6のいずれかに記載の装置。

  8. 前記第1相互依存構文構造(24)が、層の異なるセットの間の相互依存を定義し、前記第2相互依存構文構造(26)が、依存するセットの中の層の間の相互依存を定義していること、を特徴とする請求項1〜請求項7のいずれかに記載の装置。

  9. 前記第1相互依存構文構造および前記パケットのベース層IDに基づいて、共通のベース層IDをそれぞれ持つ層のセットのユニットの中のパケットを捨てるように構成されていること、を特徴とする請求項1〜請求項8のいずれかに記載の装置。

  10. 前記第1相互依存構文構造、前記第2相互依存構文構造、前記パケットのベース層IDおよび前記パケットの拡張層IDに基づいて、さらに個々の層を捨てるように構成されていること、を特徴とする請求項9に記載の装置。

  11. 前記相互層予測と前記相互層依存マトリクスとを使って、前記多層ビデオ信号を復号するように構成されたビデオデコーダ、または
    前記相互層依存マトリクスに基づいて、前記多層ビデオ信号のパケットを捨てるように構成されたネットワーク要素であること、を特徴とする請求項1〜請求項10のいずれかに記載の装置。

  12. 別の層から相互層予測されたどんな層でも、更なるビュー、奥行き情報、アルファ混合情報、色組み合わせ情報、空間の解像度改良およびSNR解像度改良のうちの1つ以上を追加するように、前記多層ビデオ信号が相互層予測を使用して前記異なる層で符号化された前記ビデオ素材を持つこと、を特徴とする請求項1〜請求項11のいずれかに記載の装置。

  13. ビデオ素材が相互層予測を使用して、情報量の異なるレベルと一致している異なる層で符号化される、多層データストリーム(10)を処理するように構成され、前記多層データストリームは複数のパケット(12)を含み、前記複数のパケット(12)のそれぞれは前記異なる層の1つと関連し、それぞれの層はベース層ID(20)、または、ベース層ID(20)および拡張層ID(22)によって索引を付けられ、
    前記ベース層ID(20)によって表現できる異なる値のペア間の相互依存を示している第1相互依存構文構造(24)、および、前記拡張層ID(22)によって表現できる異なる値のペア間の相互依存を示している第2相互依存構文構造(26)を、前記多層データストリームから読み取るように構成され、
    前記第1相互依存構文構造および前記第2相互依存構文構造に基づいて、前記異なる層の間の可能な相互層予測依存を明らかにしている相互層依存記述(14)を組み立てるように構成されていることを特徴とする装置。

  14. 相互層予測を使用して、情報量の異なるレベルと一致している異なる層で、多層データストリーム10の中にビデオ素材を符号化するように構成され、前記多層データストリームは複数のパケット(12)を含み、前記複数のパケット(12)のそれぞれは前記異なる層の1つと関連し、それぞれの層はベース層ID(20)、または、ベース層ID(20)および拡張層ID(22)によって索引を付けられ、
    前記ベース層ID(20)によって表現できる異なる値のペア間の相互依存を示している第1相互依存構文構造(24)、および、前記拡張層ID(22)によって表現できる異なる値のペア間の相互依存を示している第2相互依存構文構造(26)を、前記多層データストリームの中に挿入するように構成され、
    前記第1相互依存構文構造および前記第2相互依存構文構造に基づいて、前記異なる層の間の可能な相互層予測依存を明らかにしている相互層依存記述(14)が組み立てられるように、前記第1相互依存構文構造および前記第2相互依存構文構造が設定されていることを特徴とするエンコーダ。

  15. 相互層予測を使用して、情報量の異なるレベルと一致している異なる層で、多層データストリーム10の中にビデオ素材を符号化し、前記多層データストリームは複数のパケット(12)を含み、前記複数のパケット(12)のそれぞれは前記異なる層の1つと関連し、それぞれの層はベース層ID(20)、または、ベース層ID(20)および拡張層ID(22)によって索引を付けられ、
    前記ベース層ID(20)によって表現できる異なる値のペア間の相互依存を示している第1相互依存構文構造(24)、および、前記拡張層ID(22)によって表現できる異なる値のペア間の相互依存を示している第2相互依存構文構造(26)を、前記多層データストリームの中に挿入し、
    前記第1相互依存構文構造および前記第2相互依存構文構造に基づいて、前記異なる層の間の可能な相互層予測依存を明らかにしている相互層依存記述(14)が組み立てられるように、前記第1相互依存構文構造および前記第2相互依存構文構造を設定することを特徴とする符号化方法。

  16. プログラム符号がコンピュータ上で実行されると、前記コンピュータが請求項13または請求項15の方法を実行する、前記プログラム符号を有するコンピュータプログラム。

 

 

Patent trol of patentswamp
類似の特許
【課題】ビデオ符号化のサンプル適応オフセット処理の方法を提供する。
【解決手段】ビデオ符号化システムにおける再構成ピクチャのパフォーマンスを改善する修正されたSAO処理の方法を提供する。一実施態様において、SAO−サインスレショルドが導入されて、現在の再構成画素と隣接再構成画素間の差異のサインを決定する。負のSAO−サインスレショルドより大きく、正のSAO−サインスレショルドより小さい差分値の範囲が割り当てられて、0のサイン値を有する。別の態様において、SAO−オフセット値は、SAO−ビット−シフト値を、SAO−オフセット絶対値に左方移動させることによる結果により、SAO−オフセットサインを増加させることにより生成される。さらに別の実施態様において、SAO−オフセット絶対値は、トランケーティドライス(TR)コードにより符号化され、最大TR値は構文要素により示される。
【選択図】 図9
多層ビデオ信号のパケットの各々が関連する層IDの信号が説明される。特に、この層関係を信号で伝える効率的な方法を達成する。それでも、ベース層IDフィールドの所定の値が、ベース層IDフィールドのベース層ID値が0のように拡張できないと制限される符号でバックワード互換性を維持する。この拡張できないベース層ID値についてこの制限を特に回避する代わりに、多層データストリームの部分の層IDは、ベース層IDフィールドを第1副フィールドおよび第2副フィールドに区分することによって拡張できる方法で信号で伝えられる。ベース層IDフィールドの第1の副フィールドが予め決められた基準を満たせば、いつでも、拡張層IDフィールドが提供される。仮にベース層IDフィールドの第1副フィールドが、予め決められた基準を満たさないならば、拡張層IDフィールドは省略される。前記の拡張できないベース層ID値は、ベース層IDフィールドの第1副フィールドが予め決められた基準を満たさないベース層ID値のグループ内に「隠されて」いる。従って、この拡張できないベース層ID値は別々に処理さるのではなく、前者のグループの部分が処理される。むしろ、仮にベース層IDフィールドの第1副フィールドが、予め決められた基準を満たすならば、拡張値は、拡張値のドメインの第1副セットの中に存在するように、多層データストリーム内の信号で伝えられた拡張層IDフィールドから引き出される。そして、仮にベース層IDフィールドの第1副フィールドが、予め決められた基準を満たさないならば、この拡張値は、拡張値のドメインの第1副セットに解体する値に設定される。個々の部分が関連する層は、その時、ベース層IDフィールドの第2副フィールドから引き出されるクラスタ値と同様の拡張値を使って索引を付けられる。大体、信号効率は、バックワード互換性の維持にも関わらず失われない。
【選択図】図21
残差差分パルスコード変調(RDPCM)が残差ブロックに適用されるとき、コーディング技法を調和させるための技法について説明する。いくつかの例では、そのような残差ブロックに使用される走査順序は、残差ブロックが現在のブロックをイントラ予測することから生成されるとき、および残差ブロックが現在のブロックをインター予測またはイントラブロックコピー予測することから生成されるときと同じであることが必要である場合がある。
算術又はレンジコーダタイプの複数のモデルを用いた,複数の記号の連続を符号化するための方法であって:
‐各モデルを帰属基準と関連付けるステップ;
‐各記号に関して,各記号が帰属する符号化モデルを前記基準に従って決定するために,前記連続を縦断するステップ;
‐対応する前記モデルにおける各記号の発生確率を決定するステップ;
‐各記号を連続的に符号化することによって,前記連続を縦断するステップ;及び
‐このようにして得られたコードからファイルを形成するステップ
を含む方法。
【選択図】図4
【課題】効率的なエントロピー符号化処理を行うことができるデータ符号化装置及びデータ符号化方法を提供すること。
【解決手段】符号化のためのデータセットの入力データ値のデータ符号化方法であって、現在の入力データ値に従って、範囲変数により定義される一連のコード値の複数の補足サブレンジのうちの1つを選択し、上記現在の入力データ値を上記選択されたサブレンジ内のコード値に割り当て、上記割り当てられたコード値及び上記選択されたサブレンジのサイズに基づいて上記一連のコード値を修正し、上記一連のコード値を定義する上記範囲変数が所定の最小サイズより小さいか否かを検出し、上記範囲変数が上記所定の最小サイズより小さい場合、上記一連のコード値が少なくとも上記所定の最小サイズになるまで上記範囲変数を連続的に増加させ、当該サイズ増加動作に応じて、符号化データビットを出力し、1群の入力データ値を符号化した後、上記範囲変数をゼロに等しい少なくとも1つの最下位ビットを有する所定の利用可能な範囲変数値のサブセットから選択された値に設定するデータ符号化方法を提供する。
【選択図】図32〜図32F
マルチレイヤビデオデータを符号化、復号、送信、または受信することを含み得る、マルチレイヤビデオデータをコーディングするためのシステム、方法、およびデバイスが開示される。本システム、方法、およびデバイスは、一連のレイヤのための情報を含むビデオパラメータセット(VPS)を送信または受信し得、各レイヤは視覚信号情報を含む。本システム、方法、およびデバイスは、VPS中のレイヤごとにシグナリングされた視覚信号情報に基づいてビデオデータをコーディング(符号化または復号)し得る。
前景および透過マスクを含む少なくとも1つの合成画像を有するビデオシーケンスについて、ビデオ符号器は、符号化された前景画像および符号化された透過マスクを、符号化された透過マスクがバイナリ透過マスクとして復号されるべきであるか否かを示すフラグと共に送信する。復号されたバイナリ透過マスクのクリッピングにおいて使用するために復号器にクリップ値をシグナリングすることができる。
高効率ビデオコーディング(HEVC)コーディングモードとは異なる深度コーディングモードを使用してマルチビュー・プラス・深度フォーマットで表される3次元(3D)ビデオデータのための深度データを符号化および復号するための技術が説明されている。3D−HEVCプロセスにおいて利用可能な追加の深度イントラコーディングモードの例は、深度モデリングモード(DMM)、簡略深度コーディング(SDC)モード、およびチェーンコーディングモード(CCM)のうちの少なくとも2つを含む。それに加えて、追加の深度インターコーディングモードの一例は、インターSDCモードを含む。一例において、これらの技術は、HEVCシンタックスから分離している深度モデリングテーブル内に3Dビデオデータのための深度データをコーディングするために使用される深度イントラコーディングモードをシグナリングすることを含む。別の例において、本開示の技術は、深度コーディングモードのうちの2つまたはそれより多くにまたがって3Dビデオデータのための深度データの残差情報のシグナリングを統合することを含む。
【選択図】図11
本発明の実施形態は、奥行き情報符号化および復号化方法、奥行き情報符号化および復号化装置を開示し、3Dビデオ圧縮符号化技術に関する。前記符号化方法は、奥行き数値をインデックス番号で示すデータ構造である奥行きマッピングルックアップテーブルにおけるすべての要素を値の昇順で配置することと、前記奥行きマッピングルックアップテーブルにおける最初の要素の値を符号化してビットストリームに書き込むことと、前記奥行きマッピングルックアップテーブルにおける最初の要素以外の各要素の値と奥行きマッピングルックアップテーブルにおけるインデックス番号が当該要素のインデックス番号より小さい要素の値との差をそれぞれ符号化してビットストリームに書き込むこととを含む。本発明の実施形態は、奥行き情報復号化方法、奥行き情報符号化および復号化装置を開示する。本発明の技術的解決手段により、奥行き情報符号化および復号化効率を向上させ、奥行き情報が符号化される場合のリソース占有率を低下させる。
【選択図】図1
係数レベルコード化のためのゴロムコードを定義するために使用されるライスパラメータの値を更新するための技法について説明する。ライスパラメータによって定義されるゴロムコードは、係数グループ(CG)中の少なくとも1つの係数のための係数レベルの残りの絶対値をコード化するために使用され得る。本技法によれば、ライスパラメータの値は、ライスパラメータの最大値又はライスパラメータの値の変数増分のいずれかの最小値の選択に基づいて更新される。変数増分は、ライスパラメータの値と、コード化されている現在の係数のための係数レベルの絶対値とに基づいて決定される。変換ブロックに変換が適用されるかどうかに基づいて、係数レベルコード化のためのゴロムコードを定義するために使用されるライスパラメータの値を調整するための技法についても説明する。
To top