本発明は、ビデオの符号化・復号装置及びその方法、コンピュータプログラムに関する。
背景情報
スケーラブルビデオ符号化とは、コンテンツに関してビットレートや解像度、又はフレームレートが異なる複数の表現を1つのビットストリームが格納できるような符号化構造のことである。スケーラブルビットストリームは、一般的には、利用可能な最低品質ビデオを提供する1層の基本レイヤ(base layer)と、下位レイヤと共に受信・復号されるとビデオ品質を高める1又は複数層の拡張レイヤ(enhancement layer)から構成される。拡張レイヤに対する符号化効率を高めるために、レイヤの符号化表現は、一般に下位レイヤに依存する。
品質スケーラビリティ(信号対ノイズ比又はSN比とも呼ばれる)及び/又は空間スケーラビリティ対応のスケーラブルビデオコーデックは、次のように実装されてもよい。基本レイヤに対しては、従来の非スケーラブルビデオエンコーダ・デコーダが使用される。基本レイヤの再構成/復号ピクチャは、拡張レイヤ用リファレンスピクチャバッファに含められる。インター予測用リファレンスピクチャリストを用いるコーデックでは、基本レイヤ復号ピクチャは、拡張レイヤの復号リファレンスピクチャと同様に、拡張レイヤピクチャの符号化/復号のため、リファレンスピクチャリストに挿入されてもよい。その結果、エンコーダはインター予測リファレンスとして基本レイヤリファレンスピクチャを選択し、通常、リファレンスピクチャインデクスを用いて自身が使用していることを符号化ビットストリームに示すことができる。デコーダは、ビットストリームの例えばリファレンスピクチャインデクスから、拡張レイヤ用インター予測リファレンスとして基本レイヤピクチャが使用されることを復号する。
品質スケーラビリティに加え、空間スケーラビリティやビット深度スケーラビリティ、クロマフォーマットスケーラビリティを通じてスケーラビリティを達成することもできる。空間スケーラビリティでは、基本レイヤピクチャは拡張レイヤよりも高解像度で符号化される。ビット深度スケーラビリティでは、基本レイヤピクチャは拡張レイヤピクチャ(例えば、10又は12ビット)よりも低いビット深度(例えば、8ビット)で符号化される。クロマフォーマットスケーラビリティでは、基本レイヤピクチャは拡張レイヤピクチャ(例えば、4:2:0フォーマット)よりも(例えば、4:4:4フォーマットで符号化され)忠実に色を表現する。
場合によっては、拡張レイヤピクチャ全体ではなく、ピクチャ内の特定の領域のみを拡張(エンハンス)したいこともある。しかし、現在のスケーラブルビデオ符号化ソリューションに実装された場合、こうしたスケーラビリティは複雑になり過ぎたり、符号化効率の低さに悩まされたりすることになる。例えば、ビデオピクチャの特定領域のみを高いビット深度で符号化するよう対象とするようなビット深度を考慮した場合であっても、現在のスケーラブル符号化ソリューションでは、ピクチャ全体を高ビット深度で符号化しなくてはならないため、結果として劇的に複雑化させることになる。クロマフォーマットスケーラビリティの場合、画像の特定領域だけエンハンスさせようとしても、ピクチャ全体のリファレンスメモリは4:4:4フォーマットでなくてはならず、メモリ要件も高くなってしまう。
そこで、ピクチャのタイルセットに対して制限された符号化を示すSEIメッセージを使用することであって、タイルセットの外側のサンプルは利用せずに、タイルセットが独立に復号可能な領域を表わすように、タイルの動き補償が制限されるような、SEIメッセージの使用が提案されてきた。こうした動き制約のあるタイルセットSEIメッセージは、ピクチャ内の特定領域だけをエンハンスするために、符号化効率の改善も提供されるが、レイヤ内予測依存だけを規定するように制限されることになる。
摘要
拡張レイヤピクチャ内の領域の符号化を、品質及び/又は空間解像度を高めつつ、レイヤ間予測の制約が考慮された高い符号化効率で行うために、拡張レイヤピクチャの1つ又は複数のタイルを符号化及び復号する改良方法の導入が求められる。本発明はこうした考察から生み出されたものである。
第1の実施形態に従う方法には、ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを復号する方法であって、
拡張レイヤピクチャのタイルセットに関する情報を取得することと;
ベースレイヤピクチャのタイルセットに関する情報を取得することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を取得することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットを独立に復号可能な領域として復号することと
を含む方法が含まれる。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、レイヤ間予測又はイントラ予測を用い、時間予測を用いずに予測されることを規定する。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、前記ベースレイヤピクチャのタイルセットのみからのレイヤ間予測又はイントラ予測を用い、時間予測を用いずに予測されることを規定する。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、時間予測又はイントラ予測を用い、レイヤ間予測を用いずに予測されることを規定する。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセットの再構成が対応するベースレイヤピクチャのタイルセットの再構成と同一であることを示す。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセットが動きレイヤ間予測制約タイルセットであると規定する。
実施形態によっては、前記符号化制約条件は、レイヤ間予測に用いられるベースレイヤピクチャのタイルセットが動き制約を受けることを示す。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセットがシングルループ復号タイルセットであると規定する。
実施形態によっては、シングルループ復号において、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、前記ベースレイヤピクチャがランダムアクセスピクチャである場合、時間予測又はイントラ予測を用い、レイヤ間予測を用いて予測されることを規定する。
実施形態によっては、前記方法は更に、補助拡張情報(SEI)メッセージから前記拡張レイヤピクチャのタイルセットに関する符号化制約条件を少なくとも一部取得することを含む。
実施形態によっては、前記方法は更に、第1のSEIメッセージから前記タイルセットに対するレイヤ内予測又は時間予測の制約条件を取得し、第2のSEIメッセージから前記タイルセットに対するレイヤ間予測の制約条件を取得することを含む。
実施形態によっては、前記拡張レイヤピクチャのタイルセットは、対応するベースレイヤピクチャのタイルセットに対する拡張情報であって、次のこと:
−前記拡張レイヤピクチャのタイルセットの色差忠実度を対応するベースレイヤピクチャのタイルセットの色差忠実度よりも上げること;
−前記拡張レイヤピクチャのタイルセットのビット深度を対応するベースレイヤピクチャのタイルセットのビット深度よりも上げること;
−前記拡張レイヤピクチャのタイルセットの品質を対応するベースレイヤピクチャのタイルセットの品質よりも上げること;
−前記拡張レイヤピクチャのタイルセットの空間解像度を対応するベースレイヤピクチャのタイルセットの空間解像度よりも上げること
の少なくとも1つを含む拡張情報を含む。
第2の実施形態に従う装置は、ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを復号するように構成されるビデオデコーダであって、
拡張レイヤピクチャのタイルセットに関する情報を取得することと;
ベースレイヤピクチャのタイルセットに関する情報を取得することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を取得することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットを独立に復号可能な領域として復号することと
を遂行するように構成されるビデオデコーダを備える。
第3の実施形態によれば、装置によって利用されるコードで格納されるコンピュータ可読記憶媒体であって、前記コードがプロセッサによって実行されると、前記装置に:
拡張レイヤピクチャのタイルセットに関する情報を取得することと;
ベースレイヤピクチャのタイルセットに関する情報を取得することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を取得することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットを独立に復号可能な領域として復号することと
を遂行させる、コンピュータ可読記憶媒体が提供される。
第4の実施形態によれば、少なくとも1つのプロセッサ及び少なくとも1つのメモリであって、前記少なくとも1つのメモリはそこにコードを格納し、前記コードは、前記少なくとも1つのプロセッサによって実行されると、装置に:
拡張レイヤピクチャのタイルセットに関する情報を取得することと;
ベースレイヤピクチャのタイルセットに関する情報を取得することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を取得することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットを独立に復号可能な領域として復号することと
を遂行させる、少なくとも1つのプロセッサ及び少なくとも1つのメモリが提供される。
第5の実施形態に従う方法には、拡張レイヤピクチャの1つ又は複数のタイルを符号化する方法であって、
拡張レイヤピクチャのタイルセットを規定することと;
ベースレイヤピクチャのタイルセットを規定することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を規定することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットが独立に復号可能な領域を表わすように、該タイルセットを符号化することと
を含む方法が含まれる。
第6の実施形態に従う装置は、ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを符号化するように構成されるビデオエンコーダであって、
拡張レイヤピクチャのタイルセットを規定することと;
ベースレイヤピクチャのタイルセットを規定することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を規定することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットが独立に復号可能な領域を表わすように、該タイルセットを符号化することと
を遂行するように構成されるビデオエンコーダを備える。
第7の実施形態によれば、装置によって利用されるコードで格納されるコンピュータ可読記憶媒体であって、前記コードがプロセッサによって実行されると、前記装置に:
ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを符号化することと;
拡張レイヤピクチャのタイルセットを規定することと;
ベースレイヤピクチャのタイルセットを規定することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を規定することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットが独立に復号可能な領域を表わすように、該タイルセットを符号化することと
を遂行させる、コンピュータ可読記憶媒体が提供される。
第8の実施形態によれば、少なくとも1つのプロセッサ及び少なくとも1つのメモリであって、前記少なくとも1つのメモリはそこにコードを格納し、前記コードは、前記少なくとも1つのプロセッサによって実行されると、装置に:
ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを符号化することと;
拡張レイヤピクチャのタイルセットを規定することと;
ベースレイヤピクチャのタイルセットを規定することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を規定することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットが独立に復号可能な領域を表わすように、該タイルセットを符号化することと
を遂行させる、少なくとも1つのプロセッサ及び少なくとも1つのメモリが提供される。
第9の実施形態によれば、ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを復号するように構成されるビデオデコーダであって、
拡張レイヤピクチャのタイルセットに関する情報を取得することと;
ベースレイヤピクチャのタイルセットに関する情報を取得することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を取得することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットを独立に復号可能な領域として復号することと
を遂行するように構成されるビデオデコーダが提供される。
第10の実施形態によれば、ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを符号化するように構成されるビデオエンコーダであって、
拡張レイヤピクチャのタイルセットを規定することと;
ベースレイヤピクチャのタイルセットを規定することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を規定することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットが独立に復号可能な領域を表わすように、該タイルセットを符号化することと
を遂行するように構成されるビデオエンコーダが提供される。
本発明の深い理解に資すべく、例として添付図面を参照されたい。
本発明の実施形態を採用する電子デバイスを概略的に示す。
本発明の実施形態の採用に適したユーザ装置を概略的に示す。
本発明の実施形態を採用し、無線及び有線ネットワーク接続を用いて接続される複数の電子デバイスも概略的に示す。
本発明の実施形態の実装に適したエンコーダを概略的に示す。
本発明の実施形態に従う符号化処理のフローチャートを示す。
本発明の実施形態に従い、レイヤ間限定タイルセットの符号化制約の実施例を示す。
本発明の実施形態に従い、動きレイヤ間予測制約タイルセットの実施例を示す。
本発明の実施形態に従い、動きレイヤ間予測制約タイルセットの別の実施例を示す。
本発明のある実施形態に従い、拡張レイヤピクチャの制約付きタイルセットを3次元マルチビュービデオ符号化に適用する実施例を示す。
本発明のある実施形態に従うデコーダの概略図を示す。
本発明の実施形態に従う復号処理のフローチャートを示す。
本発明の例示的実施形態の説明
以下では、実施形態を遂行するための好適な装置及び想定される機構について、さらに詳しく説明する。この観点から、まず図1を参照する。図1には、本発明の実施形態に係るコーデックを組み込むことができる例示的装置又は電子デバイス50の概略ブロック図が示されている。
電子デバイス50は例えば、移動端末や無線通信システムにおけるユーザ機器であってもよい。ただし、本発明の実施形態は、符号化及び復号、又はビデオ画像の符号化や復号を要する任意の電子デバイスや装置に実装できることを理解されたい。
装置50は、デバイスを組込んで保護するハウジング30を備えてもよい。装置50はまた、液晶表示の形態でディスプレイ32を備えてもよい。本発明の他の実施形態では、ディスプレイは画像やビデオを表示するのに適した任意適当なディスプレイ技術によるものでもよい。装置50はまた、キーパッド34を備えてもよい。本発明の他の実施形態では、任意適当なデータインタフェースやユーザインタフェースの機構が用いられてもよい。例えば、ユーザインタフェースはタッチセンサ式ディスプレイに属する仮想キーボードやデータ入力システムとして実装されてもよい。装置はマイクロフォン36や、デジタル又はアナログ信号の任意適当な音声入力を備えてもよい。装置50はまた、音声出力デバイスを備えてもよく、本発明の実施形態では次の何れか1つでもよい:イヤホン38,スピーカ,アナログ音声又はデジタル音声出力接続。装置50はまた、バッテリ40を備えてもよい(または、本発明の他の実施形態では、太陽電池や燃料電池,時計仕掛けの発電機などの任意適当な携帯エネルギー装置によって電源供給されてもよい)。装置はまた、他のデバイスと短可視距離通信するための赤外線ポート42を備えてもよい。他の実施形態では、装置50はさらに、ブルートゥース無線通信やUSB/FireWire有線接続などの任意適当な短距離通信ソリューションを備えてもよい。
装置50は、装置50を制御するコントローラ56又はプロセッサを備えてもよい。コントローラ56はメモリ58に接続されてもよい。本発明の実施形態では、メモリは画像形態におけるデータと音声データの両方を格納してもよく、コントローラ56に実装される命令を格納してもよく、あるいはその両方でもよい。また、コントローラ56はコーデック回路54に接続されてもよい。コーデック回路は、音声及び/又はビデオデータの符号化・復号の遂行や、コントローラ56が遂行する符号化・復号を補助するのに適している。
装置50はまた、カードリーダー48とスマートカード46を備えてもよい。例えば、ユーザ情報を提供し、ネットワークでユーザ認証及び認可のための認証情報を提供するのに適したUICC及びUICCリーダーを備えてもよい。
装置50は、コントローラに接続され、無線通信信号を生成するのに適した無線インタフェース回路52を備えてもよい。無線通信は例えば、携帯通信ネットワークや無線通信システム,無線ローカルエリアネットワークでの通信である。また、装置50は無線インタフェース回路52に接続されたアンテナ44を備えてもよい。アンテナは、無線インタフェース回路52で生成された無線信号を他の(1又は複数の)装置へ送信し、無線信号を他の(1又は複数の)装置から受信する。
本発明の実施形態によっては、装置50は個別のフレームを記録又は検出できるカメラを備え、このフレームは処理用のコーデック54又はコントローラに渡される。本発明の他の実施形態では、装置が処理対象のビデオ画像データを伝送及び/又は記憶する前に別のデバイスから受信してもよい。本発明の他の実施形態では、装置50は、符号化用/復号用画像を無線又は有線の何れかで受信してもよい。
図3では、本発明の実施形態において利用可能なシステムの実施例が示されている。システム10は、1つ又は複数のネットワークを通じて通信できる複数の通信デバイスを含む。システム10は任意の無線又は有線ネットワークの組合せを含んでよく、無線携帯電話ネットワーク(GSM(登録商標)やUMTS,CDMAネットワーク等)やIEEE 802.xの何れかの規格で規定される無線ローカルエリアネットワーク(WLAN),ブルートゥース・パーソナルエリアネットワーク,イーサネット(登録商標)・ローカルエリアネットワーク,トークンリング・ローカルエリアネットワーク,広域ネットワーク,インターネットを含んでもよい。ただし、これらに限定されない。
システム10は無線・有線両方の通信デバイスを含んでもよく、本発明の実施形態を実装するのに適した装置50を含んでもよい。
例えば、図3に示すシステムは、携帯電話ネットワーク11とインターネット28を表わす表現を示している。インターネット28への接続は長距離無線接続や短距離無線接続,様々な有線接続を含んでもよいが、これらに限定されない。有線接続には電話回線やケーブル線,電力線,その他同様の通信線が含まれるが、これらに限定されない。
システム10に示される例示的通信デバイスは電子デバイスや装置50,携帯情報端末(PDA)16,PDAと携帯電話14の組合せ,統合通信デバイス(integrated messaging device; IMD)18,デスクトップコンピュータ20,ノート型コンピュータ22を含んでもよい。ただし、これらに限定されない。装置50は固定型でもよく、移動する人が持ち運べる携帯型でもよい。また、装置50は移動手段に配置されてもよい。こうした移動手段には自動車やトラック,タクシー,バス,列車,船/ボート,飛行機,自転車,バイク,その他同様の適切な移動手段が含まれるが、これらに限定されない。
一部の又はさらなる装置は、呼び出し及びメッセージを送受信してもよく、基地局24への無線接続25を介してサービスプロバイダと通信してもよい。基地局24は、携帯電話ネットワーク11とインターネット28間の通信を可能にするネットワークサーバ26に接続されてもよい。システムは、付加的な通信デバイスと様々な種類の通信デバイスを含んでもよい。
通信デバイスは様々な伝送技術を用いて通信してもよく、こうした技術には符号分割多元接続(CDMA)やGSM(登録商標),ユニバーサル携帯電話システム(UMTS),時分割多元接続(TDMA),周波数分割多元接続(FDMA),TCP-IP(transmission control protocol-internet protocol),ショートメッセージサービス(SMS),マルチメディアメッセージサービス(MMS),電子メール,IMS(instant messaging service),ブルートゥース, IEEE 802.11,その他類似の無線通信技術を含む。ただし、これらに限定されない。本発明の様々な実施形態への実装に含まれる通信デバイスは、様々な媒体を介して通信できる。こうした媒体として、無線,赤外線,レーザー,ケーブル接続,その他適切な接続が含まれるが、これらに限定されない。
ビデオコーデックは、入力されたビデオを保存/伝送に適した圧縮表現に変換するエンコーダと、その圧縮表現を可視形態に戻す復元を行えるデコーダから成る。典型的なエンコーダは、ビデオをよりコンパクトな形態で(即ち、低いビットレートで)表現するために、元のビデオシーケンスの情報の一部を切り捨てる。
ITU-T H.263やH.264等の典型的なハイブリッドビデオコーデックは、ビデオ情報を2段階で符号化する。第1段階で、例えば動き補償手段(符号化されるブロックと密接に対応する、先に符号化済みのビデオフレームの1つにある領域を探して示す手段)や空間手段(特定の方法で符号化されるブロックの周辺のピクセル値を用いる手段)によって、特定のピクチャ領域(又は「ブロック」)のピクセル値が予測される。第2段階で、予測誤差、即ちピクセルの予測ブロックとそのピクセルの元のブロックとの間の差が符号化される。これは通常、特定の変換(例えば、離散コサイン変換(DCT)やその変形)を用いてピクセル値の差を変換し、係数を量子化し、量子化済み係数をエントロピー符号化することによって行われる。量子化処理の忠実性を変えることによって、エンコーダはピクセル表現の正確性(ピクチャ品質)と結果として得られる符号化ビデオ表現のサイズ(ファイルサイズ又は伝送ビットレート)との間のバランスを制御することができる。
ビデオ符号化は通常2段階から成る。第1段階で。先に符号化済みのデータに基づいて、ビデオ信号の予測が行われる。第2段階で、予測信号と原信号との間の残差が符号化される。インター予測は時間予測とも呼ばれるが、このインター予測や動き補償、動き補償予測が時間冗長性を小さくする。インター予測では、予測の源泉は先に復号済みのピクチャである。イントラ予測では、同一ピクチャ内の隣接ピクセル同士に相関があることが見込まれるという事実が利用される。イントラ予測は、空間ドメイン又は変換ドメインで行うことができる。すなわち、サンプル値又は変換係数の何れかを予測することができる。イントラ符号化では通常イントラ予測が利用され、インター予測が適用されることはない。
符号化処理の成果として、動きベクトルと量子化変換係数のような符号化パラメータセットがある。多くのパラメータは、最初に空間的又は時間的に隣接するパラメータから予測される場合、それをより効率的にエントロピー符号化することができる。例えば、動きベクトルは空間的に隣接する動きベクトルから予測されてもよく、動きベクトル予測器との相対差のみが符号化されてもよい。ピクチャ内での符号化パラメータの予測、及びイントラ予測は、まとめてインピクチャ予測とも呼ばれる。
図4には、本発明の実施形態を実行するのに適したビデオエンコーダのブロック図が示されている。図4は、ピクセル予測器302と予測誤差エンコーダ303,予測誤差デコーダ304を備えるようなエンコーダを示す。図4はまた、インター予測器306とイントラ予測器308,モードセレクタ310,フィルタ316,リファレンスフレームメモリ318を備えるようなピクセル予測器302の実施形態を示す。ピクセル予測器302は、インター予測器306とイントラ予測器308の両方で符号化される画像300を受信する(インター予測器306はこの画像と動き補償リファレンスフレーム318との間の差を決定し、イントラ予測器308は現フレーム又はピクチャで処理済みの部分のみに基づいて画像ブロックの予測を決定する)。インター予測器とイントラ予測器の両方からの出力はモードセレクタ310に送られる。イントラ予測器308は複数のイントラ予測モードを持っていてよい。したがって、モード毎にイントラ予測が行われ、予測信号がモードセレクタ310に提供されてもよい。モードセレクタ310も画像300のコピーを受信する。
現在のブロックを符号化するためにどの符号化モードが選択されたかに応じて、モードセレクタ310内ではインター予測器306の出力、オプションのイントラ予測器の出力、又は外側エンコーダの出力がモードセレクタの出力に渡される。モードセレクタの出力は第1の加算器321に送られる。第1の加算器は、予測誤差エンコーダ303への入力である第1の予測誤差信号320を生成するために、画像300からピクセル予測器302の出力を引いてもよい。
ピクセル予測器302はさらに、画像ブロック312の予測表現と予測誤差デコーダ304の出力338の合成を仮再構成器339から受取る。仮再構成器された画像314は、イントラ予測器308とフィルタ316に送られてもよい。仮表現を受取るフィルタ316は、その仮表現をフィルタリングし、リファレンスフレームメモリ318に保存される最終再構成画像340を出力する。リファレンスフレームメモリ318は、後の画像300がインター予測動作で比較されるためのリファレンス画像として使用されるように、インター予測器306に接続されてもよい。
ピクセル予測器302の動作は、本技術分野で周知のあらゆるピクセル予測アルゴリズムを遂行するように構成されてもよい。
予測誤差エンコーダ303は、変換ユニット342と量子化器344を備える。変換ユニット342は第1の予測誤差信号320を変換ドメインに変換する。この変換はDCT変換等である。量子化器344は、量子化係数を得るために、DCT係数などの変換ドメイン信号を量子化する。
予測誤差デコーダ304は予測誤差エンコーダ303からの出力を受取り、復号予測誤差信号338を生成するために、予測誤差エンコーダ303とは反対の処理を行う。復号予測誤差信号は第2の加算器339で画像ブロック312の予測表現と合成され、仮再構成画像314を生成する。予測誤差デコーダは、変換信号を再構成するために、DCT係数などの量子化係数値を逆量子化(dequantize)する逆量子化器(dequantizer)361と、再構成された変換信号に対して逆変換を行う逆変換ユニット363を備えるように構成されてもよい。逆変換ユニット363の出力は、(1つ又は複数の)再構成ブロックを含む。予測誤差デコーダはまた、さらに復号された情報とフィルタパラメータに従って再構成マクロブロックをフィルタリングできるマクロブロックフィルタを備えてもよい。
エントロピーエンコーダ330は、予測誤差エンコーダ303の出力を受取り、誤差検出と補正機能を提供するために、その信号に適切なエントロピー符号化/可変長符号化を行うこともできる。
H.264/AVC規格は、ITU-T(国際電気通信連合の電気通信標準化部門)のビデオ符号化専門家グループ(VCEG)及びISO(国際標準化機構)/IEC(国際電気標準会議)の動画専門家グループ(MPEG)による統合ビデオチーム(JVT)によって開発された。H.264/AVC規格はその元となる両標準化機構によって公開されており、ITU-T勧告H.264及びISO/IEC国際規格14496-10と呼ばれる。ISO/IEC14496-10はMPEG-4パート10アドバンスドビデオ符号化(Advanced Video Coding;AVC)として知られている。H.264/AVC規格には複数のバージョンがあり、それぞれが規格に新たな拡張や仕様を統合している。こうした拡張には、スケーラブルビデオ符号化(Scalable Video Coding;SVC)とマルチビュービデオ符号化(Multiview Video Coding;MVC)が含まれる。
高効率ビデオ符号化(High Efficiency Video Coding)規格(HEVC又はH.265/HEVCと呼ばれる)は、VCEGとMPEGの共同研究開発チーム(JCT-VC)によって開発された。この規格はITU-T勧告H.265及びISO/IEC国際規格23008-2と呼ばれ、MPEG-Hパート2高効率ビデオ符号化(High Efficiency Video Coding, HEVC)として知られている。H.265/HEVCの拡張版を開発する標準化プロジェクトも現在進められている。この拡張には、スケーラブル拡張やマルチビュー、3次元、忠実度の拡張が含まれる。
本節では、H.264/AVC及びHEVCの重要な定義やビットストリーム、コーディング構造、概念の一部が、ビデオのエンコーダやデコーダ、符号化方法、復号方法、ビットストリーム構造の例として説明される。本発明の実施形態はこうした例に実装されてもよい。H.264/AVCの重要な定義やビットストリーム、コーディング構造、概念の中には、HEVC規格にあるものと同一のものもある。したがって、以下ではこれらも一緒に説明される。本発明の態様はH.264/AVCやHEVCに限定されるものではない。本明細書は、本発明の一部又は全部が実現される上での可能な原理を説明するためのものである。
例示的実施形態でH.264/AVCやHEVCを説明する場合、H.264/AVCやHEVCドラフト等で規定されているような算術演算子や論理演算子,関係演算子,二値演算子,代入演算子,範囲表記といった共通表記を用いることもある。また、H.264/AVCやHEVCドラフト等で規定されているような共通の数学的関数が用いられてもよい。演算の優先順位・実行順序に関する共通規則は、H.264/AVCやHEVCドラフト等で規定されているように使用されてもよい。
例示的実施形態でH.264/AVCやHEVCを説明する場合、各シンタックス要素の解析処理を規定するために、次の記述子が用いられる。
・ b(8): 任意パターンのビット列を持つバイト(8ビット)。
・ se(v): 左ビットを先頭とする符号付き整数型の指数ゴロム(Exp-Golomb)符号化シンタックス要素。
・ u(n): nビットの符号無し整数。シンタックステーブルでnが"v"であるときは、ビット数が他のシンタックス要素の値に依存して変化する。この記述子に対する解析処理は、最初に記述された最上位ビットを伴う符号無し整数の2進表現として解釈されたビットストリームから、次のnビットによって規定される。
・ ue(v): 左ビットを先頭とする符号無し整数型のExp-Golomb符号化シンタックス要素。
Exp-Golombビット列は、例えば、次の表を用いて符号番号(codeNum)に変換されてもよい。
Exp-Golombビット列に対応する符号番号は、例えば、次の表を用いてse(v)に変換されてもよい。
例示的実施形態でH.264/AVCやHEVCを説明する場合、シンタックス構造とシンタックス要素の意味、復号処理は次のように規定されてもよい。ビットストリーム中のシンタックス要素は太字体で表わされる。各シンタックス要素はそれぞれの名前(下線文字を伴い全て小文字)で記述され、1又は2のシンタックスカテゴリーが使用されたり、符号化表現方法として1又は2の記述子が使用されたりすることもある。復号処理はシンタックス要素の値と先に復号済みのシンタックス要素の値に従って行われる。シンタックス要素の値は、シンタックステーブル又はテキストで使用される際は通常の(太字でない)書式で表わされる。場合によっては、シンタックステーブルはシンタックス要素値から派生する他の変数の値を用いてもよい。こうした変数は、下線文字を伴わず小文字と大文字を用いてシンタックステーブル又はテキストに表わされる。大文字で始まる変数は、現在のシンタックス構造とそれに従属する全てのシンタックス構造の復号用に生成される。大文字で始まる変数は、その変数の元のシンタックス構造を示さずに後のシンタックス構造用として復号処理に使用されてもよい。小文字で始まる変数は、その変数が生成されたコンテキスト内でも使用される。場合によっては、シンタックス要素値又は変数値の数値と変換可能な「ニーモニック」名も使用される。「ニーモニック」名は数値とは無関係に使用されることもある。数値と名前の関連はテキストに規定されている。名前は下線文字で分けられた1つ又は複数の文字列で構成される。各文字列は大文字で始まり、途中で大文字を含んでもよい。
例示的実施形態でH.264/AVCやHEVCを説明する場合、シンタックス構造は次のように規定されてもよい。丸括弧内の一連の文は複文であり、機能的には単文として扱われる。"while"構文は、条件が真であるかどうかの判断を規定し、条件が真であれば、その条件が真でなくなるまで、単文(又は複文)の評価を繰り返し指定する。"do…while"構文は、一旦文の評価を規定した後、条件が真であるかどうかの判断が続き、条件が真であれば、その条件が真でなくなるまで、文の評価を繰り返し指定する。"if…else"構文は、条件が真であるかどうかの判断を規定し、条件が真であれば最初の文の評価を指定し、そうでなければ、代替文の評価を指定する。この構文の"else"節と関連する代替文は、代替文の評価が不要であれば省略できる。"for"構文は、初期値文の評価を指定し、条件判断が続き、条件が真であれば、その条件が真でなくなるまで、最初の文と後に続く文の評価を繰り返し指定する。
数ある従来のビデオコーディング規格と同様にH.264/AVCとHEVCでも、エラーの無いビットストリームの復号処理だけでなくビットストリームの構文と意味についても規定されている。符号化処理は規定されていないが、エンコーダは必ずビットストリームの確認を行わなくてはならない。ビットストリームとデコーダの適合性は、仮想リファレンスデコーダ(Hypothetical Reference Decoder;HRD)を用いて検証できる。標準規格は伝送エラーや伝送損失対策を助けるコーディングツールを含む。しかし、こうしたツールを符号化で使用するのは任意選択であって、誤ったビットストリームに対する復号処理は何も規定されていない。
現存の規格に関する記述と同様に例示的実施形態の記述においても、シンタックス要素はビットストリームで表わされるデータの要素として定義される。シンタックス構造は、特定の順序のビットストリームで表わされる0以上のデータの要素として定義される。
プロファイルは、復号/符号化規格又は標準によって特定されるビットストリームシンタックス全体のサブセットとして規定されてもよい。所与のプロファイルのシンタックスが課す範囲内においても、エンコーダとデコーダの性能が、復号ピクチャの特定のサイズのようなビットストリームのシンタックス要素がとる値に応じて大きく変動するようにすることも可能である。多くの適用事例において、特定のプロファイル内で想定されうるシンタックス利用の全てに対応可能なデコーダを実装することは、実用的でも経済的でもない。この問題に対応するには、レベルを使用することができる。レベルは、復号/符号化規格又は標準によって特定されるビットストリームのシンタックス要素と変数の値に課せられる特定の一組の制約条件として規定されてもよい。こうした制約条件は、値に対する単純な制限であってもよい。あるいは又は加えて、値の算術的組合せ(例えば、ピクチャの幅×ピクチャの高さ×1秒間に復号されるピクチャ数)に対する制約条件の形を取ってもよい。レベルに対する制約条件を特定する他の手段が用いられてもよい。レベルで特定される制約条件の中には、例えば最大ピクチャサイズや最大ビットレート、符号化ユニット毎の最大データレートに関連してもよい。符号化ユニット毎の最大データレートは例えば、単位時間、例えば1秒間におけるマクロブロック数などでもよい。同一のレベルセットが全プロファイルに対して規定されてもよい。好ましくは、例えば、別々のプロファイルであって、各レベルの定義の殆ど又は全ての観点がプロファイル間で共通であるようなプロファイルを実装する端末について、その相互運用を高めることができる。
H.264/AVC又はHEVCのエンコーダへの入力及びH.264/AVC又はHEVCのデコーダからの出力のための基本単位はそれぞれピクチャである。H.264/AVC及びHEVCでは、ピクチャはフレーム又はフィールドの何れかでもよい。フレームは輝度(luma)サンプルと場合により対応する色差(chroma)サンプルの行列を含む。フィールドはフレームの代替サンプル行の組であり、ソース信号がインターレースである場合、エンコーダ入力として用いられてもよい。色差ピクチャは無くてもよく(従ってモノクロサンプリングが用いられる)、輝度ピクチャと比較されるときにサブサンプリングされてもよい。幾つかのクロマフォーマットは次のようにまとめられる。
モノクロサンプリングでは、サンプル配列が1つだけ存在し、名目上輝度配列と見なされる。
4:2:0サンプリングでは、2つの色差配列の各々が輝度配列の半分の高さと半分の幅を有する。
4:2:2サンプリングでは、2つの色差配列の各々が輝度配列と同じ高さと半分の幅を有する。
4:4:4サンプリングでは、別個の色平面が使用されない場合、2つの色差配列の各々が輝度配列と同じ高さと幅を有する。
H.264/AVC及びHEVCでは、サンプル配列を別個の色平面としてビットストリームに符号化し、そのビットストリームから符号化色平面をそれぞれ別々に復号することができる。別個の色平面が用いられる場合、それらの各々は(エンコーダ及び/又はデコーダによって)モノクロサンプリングのピクチャとして別々に処理される。
クロマサブサンプリングが用いられる場合(例えば、4:2:0又は4:2:2クロマサンプリング)、輝度サンプリングに対する色差サンプリングの位置は、エンコーダ側で(例えば、プリプロセスステップや符号化の一部として)決定されてもよい。輝度サンプルの位置に対する色差サンプルの位置は、例えばH.264/AVCやHEVC等の符号化規格で予め規定されていてもよい。あるいは、例えばH.264/AVCやHEVCのVUIの一部としてビットストリームに示されていてもよい。
パーティショニングとは、1つのセットの各要素が正確にサブセットの1つであるように、そのセットを複数のサブセットに分割することとして定義することができる。ピクチャパーティショニングとは、1つのピクチャをそれより小さく互いに重なり合わないユニットに分割することとして定義することができる。ブロックパーティショニングとは、1つのブロックをサブブロックという、より小さく互いに重なり合わないユニットに分割することとして定義することができる。場合によっては、ブロックパーティショニングという用語が複数レベルのパーティショニングを含むと見なされることもある。例えば、1つのピクチャをスライスに分割し、各スライスをH.264/AVCのマクロブロックのような更に小さいユニットに分割することを含んでもよい。ここで、ピクチャ等の1つの同じユニットが複数のパーティショニングを有してもよいことに留意すべきである。例えば、ドラフトHEVC規格の符号化ユニットは、予測ユニットに分割され、更に別の四分木によって別々に変換ユニットに分割される。
H.264/AVCでは、16×16ブロックの輝度サンプルと対応する色差サンプルのブロックがマクロブロックである。例えば4:2:0サンプリングパターンでは、マクロブロックは各色差成分で8×8ブロックの色差サンプルを含む。H.264/AVCでは、ピクチャは1つ又は複数のスライスグループに分割(パーティショニング)され、スライスグループは1つ又は複数のスライスを含む。H.264/AVCでは、スライスは整数のマクロブロックから成り、特定のスライスグループ内でラスタースキャンの順で連続している。
HEVC規格に沿って、例えばピクチャパーティショニングユニットに関する用語が展開されてきた。次の段落では、HEVCの非限定的実施例の用語が与えられる。
高効率ビデオ符号化(HEVC)コーデック等のビデオコーデックによっては、ビデオピクチャは、ピクチャ領域を覆う複数の符号化単位(CU)に分割される。CUは1つ又は複数の予測単位(PU)と1つ又は複数の変換単位(TU)から成る。PUはCU内のサンプルに対する予測処理を規定し、TUはCUのサンプルに対する予測誤差の符号化処理を規定する。通常CUは、正方形のサンプルブロックから成り、既定されている可能なCUサイズのセットから選択可能なサイズを持つ。最大許容サイズのCUはLCU(最大符号化単位)と呼ばれることもあり、ビデオピクチャは重なり合わないLCUに分割される。LCUは、例えば、LCUと分割の結果得られるCUを再帰的に分割することによって更に小さいCUの組合せに分割されることもある。分割の結果得られる各CUは通常、少なくとも1つのPUとそれに関連する少なくとも1つのTUを有する。PUとTUはそれぞれ、予測処理と予測誤差符号化処理の粒度を上げるために、更に小さい複数のPUとTUに分割されることもある。各PUは、それぞれのPU内のピクセルに適用される予測の種類を定義する、それぞれのPUに関連した予測情報(例えば、インター予測されたPUに対しては動きベクトルの情報、イントラ予測されたPUに対してはイントラ予測の方向情報など)を持つ。同様に、各TUは、それぞれのTU内のサンプルに対する予測誤差復号処理を記述する情報(DCT係数情報なども含む)に関連付けられる。通常、各CUに対して予測誤差符号化が適用されるか否かがCUレベルで伝達される。CUに関連する予測誤差の残差がない場合、そのCUに対するTUが存在しないと見做される。ピクチャをCUに分割し、CUをPUとTUに分割することは通常、デコーダがこうした単位から目的の構造を再生できるようにビットストリーム信号で伝えられる。
HEVC規格では、ピクチャはタイルに分割される。タイルは長方形で、整数のLCUを含む。HEVC規格では、タイル分割(パーティショニング)は正規グリッド(regular grid)を形成し、タイルの高さと幅は最大のLCUによって互いに異なる。タイルはビットストリームにおいて、ピクチャ内のラスタースキャン順に連続している。タイルは整数のスライスを含んでもよい。
HEVCでは、スライスは整数のLCUから成る。LCUは、タイル内、又はタイルが使われない場合はピクチャ内でLCUのラスタースキャン順にスキャンされる。スライスは整数のタイルを含んでもよく、あるいはタイルに含まれてもよい。LCU内では、CUは特定のスキャン順序を持つ。
デコーダは、予測されたピクセルのブロック表現を形成して予測誤差を復号するために、エンコーダと同様の予測手段を適用することによって出力ビデオを再構成する(ここで、予測表現の形成は、エンコーダが作成し、圧縮表現に格納された動き情報や空間情報を使用し、予測誤差の復号は、空間ピクセル領域で量子化された予測誤差信号を回復する、予測誤差符号化の逆操作を使用して行われる)。デコーダは、予測及び予測誤差復号手段の適用後、出力ビデオフレームを形成するために、予測信号と予測誤差信号(ピクセル値)を足し合わせる。デコーダ(及びエンコーダ)は、出力ビデオをディスプレイに送るか、後続フレーム用予測リファレンスとしてビデオシーケンスに格納するか、あるいはその両方の前に、出力ビデオの品質を向上するために追加フィルタリング処理を適用することもできる。
典型的なビデオコーデックでは、動き情報は、動き補償された画像ブロックのそれぞれに関連する動きベクトルで示される。こうした動きベクトルはそれぞれ、(エンコーダ側で)符号化されるピクチャ又は(デコーダ側で)復号されるピクチャの画像ブロックと、先に符号化又は復号されたピクチャの1つにおける予測元ブロックとの間の移動量を表わす。動きベクトルを効率よく表現するために、動きベクトルは通常、ブロック固有の予測動きベクトルに関して差動符号化されてもよい。典型的なビデオコーデックにおいて、予測動きベクトルは所定の方法、例えば、隣接ブロックの符号化/復号動きベクトルの中央値を計算することによって生成される。動きベクトル予測を行う別の方法は、時間軸上のリファレンスピクチャにおける隣接ブロック及び/又は同位置のブロックから予測候補のリストを作成し、選択された候補を動きベクトルの予測として信号で伝えるものである。動きベクトルの値の予測に加え、先に符号化/復号されたピクチャのリファレンスインデクスが予測されてもよい。リファレンスインデクスは通常、時間軸上のリファレンスピクチャにおける隣接ブロック及び/又は同位置のブロックから予測される。また、典型的な高効率ビデオコーデックでは追加的な動き情報符号化/復号機構を用い、通常、マージング又はマージモードと呼ばれる。ここで、全ての動きフィールド情報は、利用可能なリファレンスピクチャリストの各々について動きベクトルと対応するリファレンスピクチャインデックスを含んで、予測され、その他の変更/修正を行わずに使用される。同様に、動きフィールド情報の予測は、時間リファレンスピクチャにおける隣接ブロック及び/又はコロケート(co-located)ブロックの動きフィールド情報を用いて行われ、使用された動きフィールド情報は、利用可能な隣接/コロケートブロックの動きフィールド情報が含まれる動きフィールド候補のリストに信号で伝えられる。
典型的なビデオコーデックにおいて、動き補償後の予測残差は最初に(DCTのような)変換カーネルで変換され、次に符号化される。これは、通常残差間にも相関があり、こうした変換が多くの場合でこのような相関を小さくするのに役立ち、より高い効率での符号化を可能にするからである。
典型的なビデオエンコーダは、所期のマクロブロックモード及び関連する動きベクトル等の最適符号化モードを探索するために、ラグランジュ費用関数(Lagrangian cost function)を利用する。この種の費用関数は、非可逆符号化法による(正確な又は推定された)画像歪みと、画像領域のピクセル/サンプル値を表現するのに必要である(正確な又は推定された)情報量を一緒に固定するために、加重ファクタλを用いる。
C = D +λR, (1)
ここで、Cは最小化すべきラグランジュコスト、Dはそのモード及び考慮される動きベクトルによる画像歪み(平均二乗誤差など)、Rはデコーダで画像ブロックを再構成するために要求されるデータ(候補の動きベクトルを表わすためのデータ量を含んでもよい)を表わすのに必要なビット数である。
ビデオ符号化規格及び標準は、エンコーダが符号化ピクチャを符号化スライス等に分割できるようにしてもよい。通常、スライス境界を跨ぐインピクチャ予測は無効である。したがって、スライスは符号化ピクチャを独立に復号される部分に分割する方法だと考えられる。H.264/AVC及びHEVCでは、ピクチャ内でスライス境界を跨ぐ予測が無効でもよい。したがって、スライスは符号化ピクチャを独立に復号される部分に分割する方法だと考えられることもあり、それ故しばしば、伝送の基本単位と見做される。多くの場合、エンコーダは、ピクチャ内予測のどの種類がスライス境界を跨ぐ際に止められているかをビットストリームで示してもよい。この情報は、デコーダの動作によって、どの予測ソースが利用可能であるかを決定する際などで考慮される。例えば、隣接するマクロブロックやCUが別のスライスに存在する場合、その隣接するマクロブロックやCUからのサンプルはイントラ予測には利用できないと見做されてもよい。
次に、幾つかの符号化規格で利用可能なスライスタイプについて分類する。
ラスタースキャン順のスライスは、ラスタースキャン順に連続するマクロブロック又は類似のものから成る符号化セグメントである。例えば、ラスタースキャン順のスライスの実施例には、MPEG-4パート2のビデオパケットや、H.263の空でないマクロブロックグループ(GOB)ヘッダで開始するGOBがある。
矩形スライスは、矩形マクロブロック領域又は同様のものから成る符号化セグメントである。矩形スライスは、高さが1マクロブロック又は類似の列よりも高く、幅がピクチャ全体よりも狭いものでもよい。H.263では任意選択できる矩形スライスサブモードも含まれ、H.261のGOBは矩形スライスと見なすこともできる。
フレキシブルスライスは、所定のマクロブロック(又は類似のもの)を任意の位置で含むことができる。H.264/AVCコーデックでは、複数のスライスグループに対してマクロブロックのグループ化が許容されている。スライスグループは任意のマクロブロック位置を含むことができ、このマクロブロック位置には隣接しないマクロブロックの位置も含まれる。H.264/AVCの特定のプロファイルにおけるスライスには、特定のスライスグループ内におけるラスタースキャン順で少なくとも1つのマクロブロックから成るものもある。
H.264/AVC又はHEVCのエンコーダからの出力及びH.264/AVC又はHEVCのデコーダへの入力のための基本単位はそれぞれ、ネットワーク抽象化層(Network Abstraction Layer;NAL)ユニットである。パケット指向ネットワークでの伝送や構造化ファイルへの格納に対して、NALユニットはパケットや同様の構造にカプセル化されてもよい。H.264/AVC及びHEVCでは、フレーム構造を提供しない伝送や格納の環境に対してバイトストリーム・フォーマットが特定されている。バイトストリーム・フォーマットは、各NALユニットの先頭に開始コードを付与することによってNALユニット同士を分離する。NALユニット境界の誤検出を防止するために、エンコーダはバイト指向開始コードエミュレーション防止アルゴリズムを実行する。これは、開始コードが別の形で生じた場合にNALユニットペイロードにエミュレーション防止バイトを追加する。パケット指向システムとストリーム指向システムとの間の直接的なゲートウェイ動作を可能とするために、バイトストリーム・フォーマットが使用されているか否かに関係なく常に開始コードエミュレーション防止が行われてもよい。NALユニットは、後続データの種類の標示を含むシンタックス構造と、RBSP(raw byte sequence payload)の形態で必要に応じてエミュレーション・プリベンション(emulation prevention)バイトと一緒に散在するデータを含む複数バイトとして定義されてもよい。RBSPは、NALユニットにカプセル化される整数値を含むシンタックス構造として定義されてもよい。RBSPは空であるか、RBSPストップビット及び0に等しいシーケンスビット0個以上に続くシンタックス構造要素を含むデータビット列の形態を持つかの何れかである。
NALユニットはヘッダとペイロードから成る。H.264/AVC及びHEVCでは、NALユニットヘッダはNALユニットの種類と、NALユニットに含まれる符号化スライスがリファレンスピクチャであるか非リファレンスピクチャであるかを示す。
H.264/AVC NALユニットヘッダは2ビットのシンタックス要素nal_ref_idcを含み、これが0のときはNALユニットに含まれる符号化スライスが非リファレンスピクチャの一部であることを示し、0を超えるときはNALユニットに含まれる符号化スライスがリファレンスピクチャの一部であることを示す。SVC及びMVCのNALユニットヘッダは、拡張性とマルチビュー階層の関連する様々な標示を追加で含んでもよい。
HEVCでは、規定されるNALユニットタイプの全てに対して2バイトのNALユニットヘッダが使用される。NALユニットヘッダには、1ビットの予約ビットと6ビットのNALユニットタイプ標示、6ビットの予約フィールド(nuh_layer_idと呼ばれる)、時間レベルに対する3ビットのtemporal_id_plus1標示が含まれる。 temporal_id_plus1シンタックス要素はNALユニットの時間識別子と見なされ、ゼロベースのTemporalId変数は次のように算出することができる:
TemporalId = temporal_id_plus1 - 1
TemporalIdが0のときは、最下位時間レベルに対応する。2つのNALユニットヘッダバイトを含む符号化エミュレーションの開始を避けるために、temporal_id_plus1の値はゼロでない値であることが求められる。選択された値以上のTemporalIdを持つ全てのVCL-NALユニットを除外し、それ以外の全てのVCL-NALユニットを含めることによって生成されたビットストリームが適合するものである。その結果、TIDと等しいTemporalIdを持つピクチャは、TIDを超えるTemporalIdを持つどのピクチャもインター予測リファレンスとして使用しない。
サブレイヤ又は時間サブレイヤは、TemporalId変数の特定の値を持つVCL-NALユニット及び関連する非VCL-NALユニットから成る、時間スケーラブルビットストリームの時間スケーラブルレイヤとして規定されてもよい。例示的実施形態によっては、一般性を失わずに、 変数LayerIdがnuh_layer_idの値から次のように算出される:
LayerId = nuh_layer_id
以下では、特段の指定のない限り、LayerIdとnuh_layer_id、layer_idは相互可換なものとして使用される。
NALユニットヘッダにおいては、nuh_layer_id及び/又は類似のシンタックス要素がスケーラブル階層に関する情報を担うものと想定される。例えば、LayerIdの値であるnuh_layer_id及び/又は類似のシンタックス要素は、別のスケーラブル次元を記述する変数又はシンタックス要素の値に対応付けられてもよい。こうしたスケーラブル次元は例えば、quality_id又は類似の識別子、dependency_id又は類似の識別子、他のタイプのレイヤ識別子、ビュー順序インデクス又は類似のインデクス、ビュー識別子、NALユニットが深度とテクスチャの何れかに関係するかという標示、即ちdepth_flag又は同等の標示子、SVCのpriority_idのような識別子などである。priority_idは、特定の識別値を超える全てのNALユニットがビットストリームから削除された場合に有効なサブビットストリームの抽出を示す。
nuh_layer_id及び/又は類似のシンタックス要素は、スケーラブル特性を示す1つ又は複数のシンタックス要素に分割されてもよい。例えば、nuh_layer_id及び/又は類似のシンタックス要素の中の特定のビット数がdependency_id又は類似の標示子に使用され、nuh_layer_id及び/又は類似のシンタックス要素の中の別の特定のビット数がquality_id又は類似の標示子に使用されてもよい。あるいは、LayerId値又は類似の値を別のスケーラブル次元を記述する変数又はシンタックス要素の値に対応付けることは、例えばビデオパラメータセットやシーケンスパラメータセット、又は別のシンタックス構造に対して提供されてもよい。
NALユニットはビデオ符号化層(Video Coding Layer;VCL)NALユニットと非VCL-NALユニットに分類できる。VCL-NALユニットは通常、符号化スライスNALユニットである。H.264/AVCでは、符号化スライスNALユニットは1つ又は複数の符号化マクロブロックを表わすシンタックス要素を含み、それぞれが非圧縮ピクチャのサンプルブロックに対応する。HEVCでは、符号化スライスNALユニットは1つ又は複数のCUを表わすシンタックス要素を含む。
H.264/AVC及びHEVCでは、符号化スライスNALユニットは瞬時復号リフレッシュ(Instantaneous Decoding Refresh;IDR)ピクチャの符号化スライス又は非IDRピクチャの符号化スライスであると示されることもある。
HEVCでは、符号化スライスNALユニットは次のタイプの中の1つであると示されてもよい。
HEVCでは、ピクチャタイプの略語は次のように定義される:
・ 末尾(TRAIL)ピクチャ;
・ 時間サブレイヤアクセス(TSA);
・ 段階的時間サブレイヤアクセス(STSA);
・ ランダムアクセス復号可能先頭(RADL)ピクチャ
・ ランダムアクセススキップ先頭(RASL)ピクチャ;
・ リンク切れアクセス(Broken Link Access, BLA)ピクチャ;
・ 瞬時復号リフレッシュ(Instantaneous Decoding Refresh, IDR)ピクチャ:
・ クリーンランダムアクセス(CRA)ピクチャ。
ランダムアクセスポイント(RAP)ピクチャはイントラランダムアクセスポイント(IRAP)ピクチャとも呼ばれるが、スライス又はスライスセグメントの各々が16から23の範囲にnal_unit_typeを包括的に有するピクチャのことである。RAPピクチャはイントラ符号化スライスのみを含み、BLAピクチャやCRAピクチャ、あるいはIDRピクチャであってもよい。ビットストリームの最初のピクチャはRAPピクチャである。所与の必須パラメータは、それらがアクティブ化される必要があるときに利用可能であるため、RAPピクチャ及び復号順でそれより後の全ての非RASLピクチャは、復号順でRAPピクチャより前のピクチャに復号処理を行わなくても、正しく復号することができる。RAPピクチャでないイントラ符号化スライスのみを含むビットストリームにピクチャが存在することもある。
HEVCでは、CRAピクチャが復号順でビットストリームの最初のピクチャであってもよく、ビットストリームの後の方で現れてもよい。HEVCではCRAピクチャによって、いわゆる先頭ピクチャが復号順でCRAピクチャの後であるが出力順ではそれより前になる。先頭ピクチャの中のいわゆるRASLピクチャは、リファレンスとしてCRAピクチャより前に復号されるピクチャを用いてもよい。復号順及び出力順で共にCRAピクチャより後のピクチャは、CRAピクチャでランダムアクセスが行われる場合に復号可能となる。それ故、クリーンランダムアクセスは、IDRピクチャのクリーンランダムアクセス機能と同様にして実現される。
CRAピクチャは、関連するRADL又はRASLピクチャを有することもある。CRAピクチャが復号順でビットストリームの最初のピクチャである場合、CRAピクチャは、復号順で符号化ビデオシーケンスの最初のピクチャである。そして、どの関連RASLピクチャもデコーダから出力されず、復号できないかもしれない。その理由は、こうしたピクチャにはビットストリームに未だ現れないピクチャに対するリファレンスが含まれているかもしれないからである。
先頭ピクチャは、出力順で関連RAPピクチャより先のピクチャである。関連RAPピクチャは、(存在する場合は)復号順で前のRAPピクチャである。先頭ピクチャはRADLピクチャ又はRASLピクチャの何れかでもよい。
全てのRASLピクチャは、関連するBLAピクチャ又はCRAピクチャの先頭ピクチャである。関連RAPピクチャがBLAピクチャであるかビットストリームの最初の符号化ピクチャである場合、RASLピクチャは出力されず、正しく復号されないかもしれない。その理由は、RASLピクチャにはビットストリームに未だ現れないピクチャに対するリファレンスが含まれているかもしれないからである。しかし、RASLピクチャの関連RAPピクチャより前のRAPピクチャから復号が始まっていた場合、RASLピクチャは正しく復号することができる。RASLピクチャは、非RASLピクチャの復号処理のリファレンスとして使用されない。全てのRASLピクチャは、存在する場合、復号順で同一の関連RAPピクチャの全ての末尾ピクチャよりも前にある。HEVC規格の初期ドラフトの中には、RASLピクチャが破棄用タグ付き(Tagged for Discard, TFD)ピクチャに対して参照されていたものもあった。
全てのRADLピクチャは先頭ピクチャである。RADLピクチャは、同一の関連RAPピクチャにおける末尾ピクチャの復号処理のリファレンスとして使用されない。全てのRADLピクチャは、存在する場合、復号順で同一の関連RAPピクチャの全ての末尾ピクチャよりも前にある。RADLピクチャは、復号順で関連RAPピクチャより前のどのピクチャも参照しない。したがって、復号が関連RAPピクチャから始まる場合、RADLピクチャは正しく復号することができる。HEVC規格の初期ドラフトの中には、RADLピクチャが復号可能先頭ピクチャ(Decodable Leading Picture, DLP)に対して参照されていたものもあった。
復号可能先頭ピクチャは、CRAピクチャから復号が開始される場合に正しく復号することができるようなピクチャである。換言すれば、復号可能先頭ピクチャは、インター予測でのリファレンスとして最初のCRAピクチャ又はその後のピクチャのみを使用する。復号不可先頭ピクチャは、最初のCRAピクチャから復号が開始される場合に正しく復号することができないようなピクチャである。換言すれば、復号不可先頭ピクチャは、インター予測でのリファレンスとして復号順で最初のCRAピクチャより前のピクチャを使用する。
CRAピクチャから始まるビットストリームの一部が別のビットストリームに含まれる場合、このCRAピクチャに関連するRASLピクチャは、そのリファレンスピクチャが合成ビットストリームにも存在しないかもしれないため、正しく復号されない可能性がある。こうした接合動作を直接的に行うために、CRAピクチャのNALユニットタイプは、それがBLAピクチャであることを示すように変更することができる。BLAピクチャに関連するRASLピクチャは正しく復号できないかもしれず、それ故、出力/表示もされない。また、BLAピクチャに関連するRASLピクチャには復号処理を省略することもある。
BLAピクチャが復号順でビットストリームの最初のピクチャであってもよく、ビットストリームの後の方で現れてもよい。各BLAピクチャは新たな符号化ビデオシーケンスを開始し、復号処理に対してIDRピクチャと同様の影響を及ぼす。しかし、BLAピクチャは空でないリファレンスピクチャセットを特定するシンタックス要素を含む。BLAピクチャは、BLA_W_LPに等しいnal_unit_typeを有する場合、関連RASLピクチャを有することもある。ただし、関連RASLピクチャはデコーダから出力されず、復号できないかもしれない。その理由は、こうしたピクチャにはビットストリームに未だ現れないピクチャに対するリファレンスが含まれているかもしれないからである。BLAピクチャは、BLA_W_LPに等しいnal_unit_typeを有する場合、関連RADLピクチャを有してもよく、この関連RADLピクチャは復号されるべきか特定される。BLAピクチャは、BLA_W_DLPに等しいnal_unit_typeを有する場合、関連RASLピクチャを有さず、関連RADLピクチャを有してもよい。この関連RADLピクチャは復号されるべきか特定される。BLA_W_DLPはBLA_W_RADLとも呼ばれる。BLAピクチャは、BLA_N_LPに等しいnal_unit_typeを有する場合、如何なる関連先頭ピクチャも有さない。
IDR_N_LPに等しいnal_unit_typeを有するIDRピクチャは、ビットストリームに関連先頭ピクチャを有さない。IDR_W_DLPに等しいnal_unit_typeを有するIDRピクチャは、ビットストリームに関連RASLピクチャを有さず、ビットストリームに関連RADLピクチャを有してもよい。IDR_W_DLPはIDR_W_RADLとも呼ばれる。
nal_unit_typeの値がTRAIL_NやTSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、又はRSV_VCL_N14である場合、復号ピクチャは同一時間サブレイヤの他のピクチャに対するリファレンスとして使用されない。すなわち、ドラフトHEVC規格では、nal_unit_typeの値がTRAIL_NやTSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、又はRSV_VCL_N14である場合、復号ピクチャはTemporalIdが同じ値のピクチャのRefPicSetStCurrBefore、RefPicSetStCurrAfter、RefPicSetLtCurrの何れにも含まれない。nal_unit_typeの値がTRAIL_NやTSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、又はRSV_VCL_N14である符号化ピクチャは、TemporalIdが同じ値の他のピクチャの復号可能性に影響を与えないように破棄されてもよい。
末尾ピクチャは、出力順で関連RAPピクチャより後のピクチャとして定義することができる。末尾ピクチャであるピクチャは何れも、そのnal_unit_typeがRADL_N、RADL_R、RASL_N、RASL_Rの何れとも異なる。先頭ピクチャであるピクチャは何れも、復号順で、同一のRAPピクチャに関連する全ての末尾ピクチャより前であるように制限されてもよい。nal_unit_typeがBLA_W_DLP又はBLA_N_LPであるBLAピクチャに関連するRASLピクチャは、ビットストリームには存在しない。RADLピクチャであって、nal_unit_typeがBLA_N_LPであるBLAピクチャ、又はnal_unit_typeがIDR_N_LPであるIDRピクチャに関連するBLAピクチャに関連するRADLピクチャは、ビットストリームには存在しない。CRA又はBLAピクチャに関連するRASLピクチャは何れも、出力順で、CRA又はBLAピクチャに関連するどのRADLピクチャよりも前にあるように制限されてもよい。CRAピクチャに関連するRASLピクチャは何れも、復号順でCRAピクチャより前にある他の何れのRAPピクチャよりも、出力順で後となるように制限されてもよい。
HEVCでは、TSAピクチャタイプとSTSAピクチャタイプという2つのピクチャタイプがあり、時間サブレイヤの切替えポイントを示すために使用することができる。TSA又はSTSAピクチャ(排他的又は包括的)のTemporalIdがN+1に等しくなるまで、TemporalIdがNまでの時間サブレイヤが破棄されてきた場合、TSA又はSTSAピクチャは、TemporalIdがN+1である全ての(復号順で)後続のピクチャの復号を可能にする。TSAピクチャタイプは、TSAピクチャ自体に加え、同一サブレイヤにおいて復号順でそのTSAピクチャより後の全てのピクチャに対して制限を加えてもよい。こうしたピクチャは何れも、同一サブレイヤにおいて復号順でTSAピクチャより前のピクチャからのインター予測の使用が許容されない。またTSAの規定は、上位サブレイヤにおいて復号順でTSAピクチャに続くピクチャに対して制限を加えてもよい。こうしたピクチャは何れも、TSAピクチャとして同一又は上位サブレイヤに属する場合、復号順でTSAピクチャより前のピクチャの参照が許容されない。TSAピクチャは0を超えるTemporalIdを有する。STSAはTSAピクチャと同様であるが、上位サブレイヤにおいて符号化順でSTSAピクチャより後のピクチャに対して制限を加えない。したがって、STSAピクチャが存在するサブレイヤに対してのみアップスイッチングが可能となる。
非VCL-NALユニットは例えば、次のタイプの1つでもよい:
・ シーケンスパラメータセット;
・ ピクチャパラメータセット;
・ 補助拡張情報(supplemental enhancement information;SEI)NALユニット;
・ アクセスユニット区切り;
・ シーケンスNALユニットの一部;ストリームNALユニットの一部;
・ 補充データNALユニット。
パラメータセットは復号ピクチャの再構成に必要であってもよいが、他の非VCL-NALユニットの多くは、復号サンプル値の再構成には必要ない。
符号化ビデオシーケンスで不変のパラメータがシーケンスパラメータセットに含まれてもよい。復号処理に必要なパラメータに加え、シーケンスパラメータセットがビデオユーザビリティ情報(video usability information;VUI)を含んでもよい。これは、バッファリングやピクチャ出力タイミング、レンダリング、リソース予約に重要なパラメータを含む。H.264/AVCでは、シーケンスパラメータセットを含む3つのNALユニットが規定されている。シーケンスパラメータセットNALユニットは、H.264/AVCのVCL-NALユニット用データ全てをシーケンスに含む。シーケンスパラメータセット拡張NALユニットは補助符号化ピクチャ用データを含む。サブセット・シーケンスパラメータセットNALユニットはMVCとSVCのVCL-NALユニット用である。HEVC規格では、シーケンスパラメータセットRBSPには、1つ又は複数のピクチャパラメータセットRBSP、又はバッファリング期間(buffering period)SEIメッセージを含む1つ又は複数のSEI-NALユニットによって参照可能なパラメータが含まれる。ピクチャパラメータセットは、複数の符号化ピクチャで不変であるようなパラメータを含む。ピクチャパラメータセットRBSPは、1つ又は複数の符号化ピクチャの符号化スライスNALユニットによって参照可能なパラメータを含んでもよい。
HEVCでは、複数の符号化スライスで不変であると見なされるが、各ピクチャ又は複数ピクチャに対しては変化することもあるパラメータを含む、適応パラメータセット(APS)が提案されたが、最終的には規格に採用されなかった。APSシンタックス構造は、量子化マトリクス(quantization matrix;QM)や適応サンプルオフセット(adaptive sample offset;SAO),適応ループフィルタリング(adaptive loop filtering;ALF),デブロッキング・フィルタリングに関連するパラメータ又はシンタックス要素を含むように提案されている。APSはNALユニットでもあり、他のNALユニットから参照も予測もされずに符号化されてもよい。シンタックス要素aps_idと呼ばれる識別子はAPS-NALユニットに含まれる。これはスライスヘッダにも含まれ、特定のAPSを表わすために用いられる。APSシンタックス構造はALFパラメータを含むだけでもよい。
HEVC規格はビデオパラメータセット(VPS)NALユニットも含む。ビデオパラメータセットRBSPは、1つ又は複数のシーケンスパラメータセットRBSPによって参照可能なパラメータを含んでもよい。
ビデオパラメータセット(VPS)とシーケンスパラメータセット(SPS)、ピクチャパラメータセット(PPS)の間の関係及び階層は次のように記述できる。VPSは、スケーラビリティ及び/又は3DVの背景では、パラメータセット階層でSPSの1段上に位置する。VPSは、全ての(スケーラブル又はビュー)レイヤに亘って全スライスに共通なパラメータを符号化ビデオシーケンス全体に含んでもよい。SPSは、特定の(スケーラブル又はビュー)レイヤにおける全スライスに共通なパラメータを符号化ビデオシーケンス全体に含み、複数の(スケーラブル又はビュー)レイヤで共有されてもよい。PPSは、特定のレイヤ表現(特定のアクセスユニットにおける特定のスケーラブル又はビューレイヤの表現)における全スライスに共通なパラメータを含み、複数のレイヤ表現における全スライスで共有されるものである。
VPSは、全ての(スケーラブル又はビュー)レイヤに亘って全スライスに適用可能なその他多くの情報を符号化ビデオシーケンス全体に提供しうるが、さらにレイヤの依存表現に関する情報をビットストリームに提供してもよい。HEVCのスケーラブル拡張では、VPSは例えば、NALユニットヘッダから得られるLayerId値を1つ又は複数のスケーラビリティ次元の値にマッピングすることを含んでもよい。こうした値は例えば、SVC及びMVCと同様に定義されるレイヤに関するdependency_id、quality_id、view_id及びdepth_flagに対応してもよい。VPSは1つ又は複数のレイヤに関するプロファイル及びレベル情報を含んでもよく、さらに、レイヤ表現の1つ又は複数の時間軸サブレイヤ(特定のtemporal_id値以下のVCL-NALユニットから成る)に関するプロファイル及び/又はレベルを含んでもよい。
H.264/AVC及びHEVCのシンタックスでは様々なパラメータセットの事例が許容され、各事例は固有の識別子で識別される。パラメータセットに必要なメモリ使用量を制限するために、パラメータセット識別値域は制限されている。H.264/AVC及びHEVC規格では、各スライスヘッダは、そのスライスを含むピクチャの復号に対してアクティブなピクチャパラメータセットの識別子を含む。各ピクチャパラメータセットは、アクティブなシーケンスパラメータセットの識別子を含む。その結果、ピクチャとシーケンスパラメータセットの伝送がスライスの伝送と正確に同期されている必要がない。実際に、アクティブシーケンスとピクチャパラメータセットはそれらが参照される前までに受取られていれば十分であり、スライスデータ用のプロトコルよりも高い信頼性のある伝送機構を使って「帯域外」でパラメータセットを伝送することが可能になる。例えば、パラメータセットはリアルタイム転送プロトコル(Real-time Transport Protocol;RTP)セッション用のセッション記述でのパラメータとして含まれてもよい。パラメータセットは、帯域内で伝送される場合、エラー耐性を高めるために繰り返されることもある。
パラメータセットはスライスや別のアクティブパラメータセットからの参照によってアクティブ化されてもよい。場合によっては、バッファリング期間SEIメッセージのような別のシンタックス構造からの参照によることもある。
SEI-NALユニットは1つ又は複数のSEIメッセージを含んでもよい。これらは出力ピクチャの復号には必要ないが、ピクチャ出力タイミングやエラー検出、エラー隠蔽、リソース予約などの関連処理を補助してもよい。複数のSEIメッセージがH.264/AVC及びHEVCで規定され、ユーザデータのSEIメッセージによって組織や企業が独自に使用するSEIメッセージを規定できる。H.264/AVC及びHEVCは、規定されたSEIメッセージのシンタックスと意味を含むが、受信側でメッセージを取扱う処理については何も定義されない。その結果、エンコーダはSEIメッセージを作成する際、H.264/AVC規格やHEVC規格に従い、デコーダもそれぞれH.264/AVC規格やHEVC規格に準拠する必要がある。しかし、SEIメッセージを出力規定に準じて処理する必要はない。H.264/AVC及びHEVCでSEIメッセージのシンタックスと意味を含める理由の1つは、異なるシステム仕様でも補助情報を同じ様に解釈し相互運用を可能にすることである。システム仕様は符号化側と復号側の両方で特定のSEIメッセージを使用できるように要求するものであり、受信側で特定のSEIメッセージを取扱う処理も規定されてもよい。
符号化ピクチャはピクチャの符号化された表現である。H.264/AVCでの符号化ピクチャは、ピクチャの復号に必要なVCL-NALユニットを含む。H.264/AVCでは、符号化ピクチャはプライマリ符号化ピクチャ又は冗長符号化ピクチャである。プライマリ符号化ピクチャは有効なビットストリームの復号処理で使用される。一方、冗長符号化ピクチャは、プライマリ符号化ピクチャが正しく復号されない場合にだけ復号される冗長表現である。HEVCでは、冗長符号化ピクチャは規定されていない。
H.264/AVCでは、アクセスユニットがプライマリ符号化ピクチャとそれに関連付けられるNALユニットを含む。HEVCでは、アクセスユニットは、特定の分類規則に従って互いに関連付けられ、復号順で連続し、正確に1つの符号化ピクチャを含むNALユニットのセットとして規定される。H.264/AVCでは、アクセスユニット内でのNALユニットの出現順序が次のように制限されている。追加アクセスユニット区切りのNALユニットは、アクセスユニットの起点を示すことができる。この後に0以上のSEI-NALユニットが続く。プライマリ符号化ピクチャの符号化スライスが次に現われる。H.264/AVCでは、プライマリ符号化ピクチャの符号化スライスの後に0以上の冗長符号化ピクチャの符号化スライスが続いてもよい。冗長符号化ピクチャは、ピクチャ又はピクチャの一部の符号化された表現である。冗長符号化ピクチャは、伝送損失や物理記憶媒体でのデータ破損などによってデコーダがプライマリ符号化ピクチャを受取れない場合に復号されてもよい。
H.264/AVCでは、アクセスユニットは補助符号化ピクチャを含んでもよい。これは、プライマリ符号化ピクチャを補助/補完し、表示処理などで使用できるピクチャである。補助符号化ピクチャは例えば、復号ピクチャのサンプルの透過レベルを特定するアルファチャンネルやアルファ面として使用されてもよい。アルファチャンネル又はアルファ面は、レイヤ成分やレンダリングシステムで使用されてもよい。出力ピクチャは、互いに表面で少なくとも一部が透過しているピクチャを重ね合わせることで作成される。補助符号化ピクチャは、モノクロ冗長符号化ピクチャとして同一のシンタックスと意味の制限がある。H.264/AVCでは、補助符号化ピクチャはプライマリ符号化ピクチャと同数のマクロブロックを含む。
H.264/AVCでは、符号化ビデオシーケンスは、連続するアクセスユニットのシーケンスとして定義される。このシーケンスは復号処理の順序であって、IDRアクセスユニットを含んでそこから、次のIDRアクセスユニットを含まずその直前かビットストリームの最後のうち先に出現するところまでの順序である。HEVCでは、符号化ビデオシーケンスは、復号順に、ビットストリームの最初のアクセスユニットであるCRAアクセスユニット、IDRアクセスユニット又はBLAアクセスユニット、0以上の非IDRアクセスユニット又は非BLAアクセスユニットから成るアクセスユニットのシーケンスとして規定されてもよい。非IDRアクセスユニット又は非BLAアクセスユニットには、サブシーケンスIDR/BLAアクセスユニット以外の全てのサブシーケンスアクセスユニットが含まれる。
ピクチャーグループ(GOP)とその特性は次のように定義されてもよい。GOPは、その前のピクチャが復号されたどうかに関係なく復号される。オープンGOPとは、復号処理がその最初のイントラピクチャから開始する場合に、出力順で最初のイントラピクチャより先のピクチャが正しく復号できない様なピクチャグループである。換言すれば、オープンGOPのピクチャは、その前のGOPに属するピクチャを(インター予測で)参照してもよい。H.264/AVCデコーダは、H.264/AVCビットストリームでのリカバリポイントのSEIメッセージによって、オープンGOPの始めのイントラピクチャを認識できる。HEVCデコーダはオープンGOPの始めのイントラピクチャを認識できる。これは、符号化スライスに対して特別なNALユニットタイプであるCRA-NALユニットタイプが使用されるからである。クローズドGOPとは、復号処理がその最初のイントラピクチャから開始する場合に、全ピクチャが正しく復号される様なピクチャグループである。換言すれば、クローズドGOPではその前のGOPに属するピクチャを参照するピクチャは存在しない。H.264/AVC及びHEVCでは、クローズドGOPはIDRアクセスユニットから始まる。HEVCでは、クローズドGOPはBLA_W_DLP又はBLA_N_LPピクチャから開始してもよい。その結果、クローズドGOPの構造はオープンGOPの構造よりも高いエラー回復能力を持つ。しかし、圧縮効率を減らす可能性があるという代償を伴う。オープンGOPの符号化構造は、リファレンスピクチャの選択における高い柔軟性によって、より効率的な圧縮を可能にする。
H.264/AVC及びHEVCのビットストリームシンタックスは、特定のピクチャが別のピクチャのイントラ予測のためのリファレンスピクチャであるかを示す。任意の符号化タイプ(I,P,B)のピクチャは、H.264/AVC及びHEVCのリファレンスピクチャ又は非リファレンスピクチャであり得る。
H.264/AVCは、デコーダでのメモリ消費を制御するために、復号リファレンスピクチャのマーキング処理を特定する。インター予測に用いるリファレンスピクチャの数の最大値はMで表わし、シーケンスパラメータセットで決定される。リファレンスピクチャは、復号されるときに「リファレンスに使用済」とマークされる。リファレンスピクチャの復号で「リファレンスに使用済」とマークされるピクチャの数がMを超える場合、少なくとも1つのピクチャは「リファレンスに未使用」とマークされる。復号リファレンスピクチャのマーキング動作には適応メモリ制御とスライディングウィンドウの2種類がある。復号リファレンスピクチャのマーキング動作モードはピクチャに基づいて選択される。適応メモリ制御は、どのピクチャが「リファレンスに未使用」とマークされているかを明示的に信号で伝えられ、短期リファレンスピクチャに長期インデクスを割当ててもよい。適応メモリ制御は、ビットストリームにメモリ管理制御操作(memory management control operation;MMCO)パラメータの存在を要求してもよい。MMCOパラメータは、復号リファレンスピクチャ・マーキングのシンタックス要素に含まれてもよい。スライディングウィンドウ動作モードが使われ、M枚のピクチャが「リファレンスに使用済」とマークされている場合、「リファレンスに使用済」とマークされている短期リファレンスピクチャの中で最初に復号された短期リファレンスピクチャは「リファレンスに未使用」とマークされる。換言すれば、スライディングウィンドウ動作モードは、短期リファレンスピクチャに関して先入れ先出し(first-in-first-out)バッファ動作となる。
H.264/AVCのメモリ管理制御操作によっては、現ピクチャ以外の全てのリファレンスピクチャを「リファレンスに未使用」とマークする。瞬時復号リフレッシュ(IDR)ピクチャはイントラ符号化スライスのみを含み、リファレンスピクチャに対する同一「リセット」を行う。
HEVC規格では、リファレンスピクチャ・マーキングのシンタックス構造と関連する復号処理は使用されない。その代わり、リファレンスピクチャセット(reference picture set;RPS)のシンタックス構造と復号処理が同じ目的で使用される。特定のピクチャに有効又はアクティブなリファレンスピクチャセットは、そのピクチャに対するリファレンスとして使われる全てのリファレンスピクチャと、復号順で後続の任意のピクチャに対して「リファレンスに使用済」とマークされたままである全てのリファレンスピクチャを含む。リファレンスピクチャセットには6つのサブセットがあり、それぞれRefPicSetStCurr0,RefPicSetStCurr1,RefPicSetStFoll0,RefPicSetStFoll1,RefPicSetLtCurr,及びRefPicSetLtFollと呼ばれる。この6つのサブセットの表記法は次の通りである。「Curr」は現ピクチャのリファレンスピクチャリストに含まれるリファレンスピクチャを表わす。このため、現ピクチャに対するインター予測リファレンスとして使用されてもよい。「Foll」は現ピクチャのリファレンスピクチャリストに含まれないリファレンスピクチャを表わす。ただし、復号順で後続のピクチャではリファレンスピクチャとして使用されてもよい。「St」は短期リファレンスピクチャを表わし、通常、POC値の特定数の最下位ビットで識別される。「Lt」は長期リファレンスピクチャを表わし、特定の方法で識別される。通常、現ピクチャに対するPOC値の差は、前述した特定数の最下位ビットによって表わされるものよりも大きい。「0」は現ピクチャのPOC値よりも小さいPOC値を持つリファレンスピクチャを表わす。「1」は現ピクチャのPOC値よりも大きいPOC値を持つリファレンスピクチャを表わす。RefPicSetStCurr0,RefPicSetStCurr1,RefPicSetStFoll0及びRefPicSetStFoll1はまとめて、リファレンスピクチャセットの短期サブセットと呼ばれる。RefPicSetLtCurr及びRefPicSetLtFollはまとめて、リファレンスピクチャセットの長期サブセットと呼ばれる。
HEVC規格では、リファレンスピクチャセットは、シーケンスパラメータセットで特定され、リファレンスピクチャセットへのインデクスを介してスライスヘッダ用に取込まれてもよい。リファレンスピクチャセットはスライスヘッダで特定されてもよい。リファレンスピクチャセットの長期サブセットは通常スライスヘッダでのみ特定されるが、同じリファレンスピクチャセットの短期サブセットはピクチャパラメータセットで特定されてもよく、スライスヘッダで特定されてもよい。リファレンスピクチャセットは独立に符号化されてもよく、別のリファレンスピクチャセットから予測されてもよい(インターRPS予測と呼ばれる)。リファレンスピクチャセットが独立に符号化される場合、シンタックス構造はタイプの異なるリファレンスピクチャの繰り返しを3ループまで含める。こうしたリファレンスピクチャとは、現ピクチャより小さいPOC値を持つ短期リファレンスピクチャと現ピクチャより大きいPOC値を持つ短期リファレンスピクチャ、長期リファレンスピクチャである。各ループエントリは、「リファレンスに使用済」とマークされるピクチャを特定する。一般に、ピクチャは異なるPOC値で特定される。インターRPS予測は、現ピクチャのリファレンスピクチャセットが先に復号済みのピクチャのリファレンスピクチャセットから予測可能であるという事実を利用する。これは、現ピクチャの全てのリファレンスピクチャは、前のピクチャのリファレンスピクチャであるか、先に復号済みのピクチャそのものであるかの何れかであるからである。したがって、これらのピクチャの中のどれがリファレンスピクチャであり、現ピクチャの予測に用いられるかを示すことだけが必要となる。リファレンスピクチャセット符号化の両方の種類で、各リファレンスピクチャに対してフラグ(used_by_curr_pic_X_flag)が追加で送信される。このフラグは、そのリファレンスピクチャがリファレンスとして現ピクチャに用いられる(*Curr listに含まれる)か、そうでない(*Foll listに含まれる)かを示す。現在のスライス(現スライス)が使うリファレンスピクチャセットに含まれるピクチャは「リファレンスに使用済」とマークされ、現スライスが使うリファレンスピクチャセットに含まれないピクチャは「リファレンスに未使用」とマークされる。現ピクチャがIDRピクチャである場合、RefPicSetStCurr0,RefPicSetStCurr1,RefPicSetStFoll0,RefPicSetStFoll1,RefPicSetLtCurr,及びRefPicSetLtFollは全て空に設定される。
復号ピクチャバッファ(Decoded Picture Buffer;DPB)はエンコーダ及び/又はデコーダで使用されてもよい。復号ピクチャをバッファする理由は2つある。一つはインター予測で参照するためで、もう一つは復号ピクチャを出力順に並べ直すためである。H.264/AVC及びHEVCはリファレンスピクチャのマーキングと出力の並べ換えの両方で相当な柔軟性を与えるため、リファレンスピクチャのバッファリングと出力ピクチャのバッファリングで別々のバッファを使うことはメモリリソースを浪費する可能性がある。このためDPBは、リファレンスピクチャと出力並び替えのための統合された復号ピクチャバッファリング処理を備えてもよい。復号ピクチャは、リファレンスとして使用されず出力される必要がなくなると、DPBから削除されてもよい。
H.264/AVC及びHEVC等の多くの符号化モードでは、インター予測用リファレンスピクチャはリファレンスピクチャリストへのインデクスで示される。このインデクスは可変長符号化で符号化されてもよい。可変長符号化によって多くの場合、インデクスを小さくして対応するシンタックス要素に対してより小さい値を持つことができる。H.264/AVC及びHEVCでは、双予測(B)スライスにはそれぞれ2つのリファレンスピクチャリスト(リファレンスピクチャリスト0及びリファレンスピクチャリスト1)が作成され、インター予測(P)スライスにはそれぞれ1つのリファレンスピクチャ・リスト(リファレンスピクチャ・リスト0)が形成される。
リファレンスピクチャリスト0及びリファレンスピクチャリスト1等のリファレンスピクチャリストは通常、2つのステップで作成される。第1ステップでは、初期リファレンスピクチャリストが作成される。初期リファレンスピクチャリストは例えば、frame_numやPOC,temporal_id,GOP構造などの予測階層に関する情報、又はこれらの組合せに基づいて作成されてもよい。第2ステップでは、リファレンスピクチャリスト並び替え(reference picture list reordering;RPLR)命令によって初期リファレンスピクチャリストが並び替えられてもよい。RPLR命令はリファレンスピクチャリスト変更シンタックス構造とも呼ばれ、スライスヘッダに含まれてもよい。RPLR命令は、各リファレンスピクチャリストの先頭に並べられるピクチャを示す。第2ステップはリファレンスピクチャリスト変更処理とも呼ばれ、RPLR命令がリファレンスピクチャリスト変更シンタックス構造に含まれてもよい。リファレンスピクチャセットが用いられる場合、リファレンスピクチャリスト0はRefPicSetStCurr0,RefPicSetStCurr1,RefPicSetLtCurrをこの順序で含むように初期化されてもよい。リファレンスピクチャリスト1はRefPicSetStCurr1,RefPicSetStCurr0をこの順序で含むように初期化されてもよい。初期リファレンスピクチャリストはリファレンスピクチャリスト変更シンタックス構造を通じて変更されてもよい。初期リファレンスピクチャリストのピクチャはリストに対するエントリインデクスを通じて識別されてもよい。
ビデオ符号化及び/又はビデオ復号に適用されうる種々の予測タイプの分類方法は、サンプル値又は符号化(復号)パラメータに対してどの予測が適用できるかを考慮するものである。
サンプル予測では、特定のピクチャ領域又は「ブロック」のピクセル値又はサンプル値が予測される。こうしたピクセル又はサンプル値は、例えば次の方法の1つ又は複数を用いて予測することができる:
動き補償機構(時間予測、動き補償時間予測、動き補償予測、MCPとも呼ばれる)。これには、符号化されるブロックと合致する、先に符号化済みのビデオフレームの1つにある領域の検索と標示が含まれる。
ビュー間予測。これには、符号化されるブロックと合致する、先に符号化済みのビューコンポーネントの1つにある領域の検索と標示が含まれる。
ビュー合成予測。これには、予測ブロック、又は再構成/復号範囲情報に基づいて導出される予測ブロックがある画像領域の合成が含まれる。
いわゆるSVCの IntraBL(ベースレイヤ)モードのような、再構成/復号サンプルを用いるレイヤ間予測。
レイヤ間残差予測。これは例えば、現在の拡張レイヤブロックの残差ブロックを予測するために、リファレンスレイヤの符号化残差、又は再構成/復号リファレンスレイヤピクチャと対応する再構成/復号拡張レイヤピクチャとの差から算出された残差が用いられてもよい。残差ブロックは、現在の拡張レイヤブロックに対する最終予測ブロックを取得するために、例えば動き補償予測ブロックに追加されてもよい。場合によっては、残差予測は、サンプル予測やシンタックス予測に加わる別のタイプの予測として扱われることもある。
インター予測。これは、空間領域の関係性の検索と標示を含む空間機構によって、ピクセル値又はサンプル値を予測することができる。
シンタックス予測。これはパラメータ予測とも呼ばれ、先に符号化(復号)されたシンタックス要素及び/又は先に算出された変数から、シンタックス要素、及び/又はシンタックス要素から算出されるシンタックス要素値及び/又は変数が予測される。ただし、以下ではシンタックス予測の非限定的実施例が示されている。
動きベクトル予測。これは、例えばインター予測及び/又はビュー間予測のための動きベクトルが、ブロック固有の予測動きベクトルに関して差動符号化されてもよい。多くのビデオコーデックでは、予測動きベクトルは所定の方法、例えば、隣接ブロックの符号化/復号動きベクトルの中央値を計算することによって生成される。動きベクトル予測を行う別の方法は、高度動きベクトル予測(advanced motion vector prediction、AMVP)とも呼ばれ、時間軸上のリファレンスピクチャにおける隣接ブロック及び/又は同位置のブロックから予測候補のリストを作成し、選択された候補を動きベクトルの予測として信号で伝える。動きベクトルの値の予測に加え、先に符号化/復号されたピクチャのリファレンスインデクスが予測されてもよい。リファレンスインデクスは、時間軸上のリファレンスピクチャにおける隣接ブロック及び/又は同位置のブロックから予測される。動きベクトルの差動符号化は、スライス境界を跨ぐときは無効にされる。
CTUからCU、更にPUといったブロックパーティショニングも予測されてもよい。
フィルタパラメータ予測では、サンプル適応オフセットに対するフィルタリングパラメータが予測されてもよい。
ビデオ符号化及び/又はビデオ復号に適用されうる種々の予測タイプの別の分類方法は、予測がどのドメイン又はスケーラビリティタイプに及ぶかを考慮するものである。この分類では、次のタイプの予測の1つ又は複数が導入される。場合によっては、これらは予測方向と呼ばれることもある。
時間予測。これは例えば、通常、同一スケーラビリティレイヤ、同一ビュー、同一コンポーネントタイプ(テクスチャ又は深度)における前のピクチャから予測される、サンプル値又は動きベクトルの時間予測である。
ビュー間予測(クロスビュー予測とも呼ばれる)。これは、通常、同一時刻又はアクセスユニット、同一コンポーネントタイプのビューコンポーネント間で行う予測である。
レイヤ間予測。これは、通常、同一時刻、同一コンポーネントタイプ、同一ビューのレイヤ間で行う予測である。
インター成分予測は、復号処理で用いられるシンタックス要素値やサンプル値、変数値、又は特定のタイプの成分ピクチャから別のタイプの成分ピクチャまでのあらゆるものの予測を含むように定義されてもよい。例えば、インター成分予測は、深度ビュー成分からテクスチャビュー成分を予測すること、又はその逆を含んでもよい。
先に符号化済みの画像からの画像情報を用いた予測アプローチは、インター予測法とも呼ばれる。インター予測は動き補償時間予測のみを含むものと見なされてもよく、あるいは、予測元としてサンプルの中の再構成/復号ブロックが使用される全てのタイプの予測、即ち従来のビュー間予測等を含むものと見なされてもよい。インター予測は、サンプル予測のみを含むものと見なされてもよいが、サンプル予測とシンタックス予測の両方を含むものと見なされてもよい。シンタックス予測及びサンプル予測の結果として、ピクセル又はサンプルの予測ブロックが取得されてもよい。
同一画像内の画像情報を用いた予測アプローチは、イントラ予測法とも呼ばれる。イントラ予測は、サンプル予測のみを含むものと見なされてもよいが、サンプル予測とシンタックス予測の両方を含むものと見なされてもよい。
エンコーダが何らかの形で予測誤差又は残差符号化を用いることによって、予測変数値及び/又は予測ブロックのような予測が改善される場合、これを予測の継承と呼ぶことができる。
領域分割法で知られる符号化技術は、インピクチャ予測とインター予測を制限することに基づいている。ピクチャ内の離隔領域には任意のマクロブロック(又は類似のもの)が含まれ、ピクチャは0以上の重なり合わない離隔領域を含むことができる。ピクチャのどの離隔領域にも掛からないピクチャ領域がある場合、それは残余領域と呼ばれる。離隔領域を符号化する場合、その境界を跨ぐところで少なくとも複数タイプのインピクチャ予測が無効化される。残余領域は、同一ピクチャの離隔領域から予測されてもよい。
符号化離隔領域は、同じ符号化ピクチャにおける他の離隔領域又は残余領域を用いずに復号することができる。ピクチャの残余領域を復号する前に全ての離隔領域の復号が必須であってもよい。実装によっては、離隔領域又は残余領域が少なくとも1つのスライスを含んでもよい。
離隔領域同士で相互に予測し合うピクチャは、離隔領域ピクチャグループにグループ化されてもよい。離隔領域は、同じ離隔領域ピクチャグループ内の他のピクチャで対応する離隔領域からインター予測することができる。その一方で、他の離隔領域からのインター予測又はその離隔領域ピクチャグループ以外からのインター予測を禁止することもできる。残余領域は、任意の離隔領域からインター予測することができる。離隔領域ピクチャグループのピクチャ全体が、結合された離隔領域の形状や位置、大きさであってもよい。
H.264/AVCコーデックにおける離隔領域の符号化は、スライスグループに基づいてもよい。スライスグループのマクロブロック位置のマッピングは、ピクチャパラメータセットで特定されてもよい。H.264/AVCシンタックスには特定のスライスグループパターンを符号化するシンタックスが含まれ、このスライスグループパターンは静的と進化的という2つのタイプに分類することができる。静的スライスグループはピクチャパラメータセットが有効である限り不変であり続け、進化的スライスグループは、ピクチャパラメータセットの対応するパラメータ及びスライスヘッダのスライスグループ変化サイクルパラメータに従ってピクチャ毎に変化することができる。静的スライスグループパターンには、インターリーブやチェッカーボード、矩形配向、自由形状が含まれる。進化的スライスグループパターンには、水平ワイプや垂直ワイプ、ボックスイン、ボックスアウトが含まれる。特に、矩形配向パターンと進化的パターンは離隔領域の符号化に適しており、以下でより慎重に記述する。
矩形配向スライスグループパターンでは、ピクチャ領域内において希望する数の矩形が指定される。前景スライスグループは対応する矩形内にマクロブロック位置を含むが、これより前のスライスグループによって既に割り当てられたマクロブロック位置は除外される。残余スライスグループは、前景スライスグループがカバーしないマクロブロックを含む。
進化的スライスグループは、マクロブロック位置のスキャン順序と、ピクチャ当たりのマクロブロック数で表わしたスライスグループサイズの変化率を示すことによって特定される。各符号化ピクチャは、(スライスヘッダで提供される)スライスグループ変化サイクルパラメータに関連付けられる。変化サイクルに変化率を掛けると、第1のスライスグループにおけるマクロブロックの数が示される。第2のスライスグループには残りのマクロブロック位置が含まれる。
H.264/AVCでは、スライスグループの境界を跨ぐところでインピクチャ予測が無効化されるが、これはスライスグループ境界がスライスの境界にあるためである。したがって、各スライスグループは離隔領域か残余領域である。
各スライスグループはピクチャ内に識別番号を有する。エンコーダは、同一の識別番号を持つスライスグループに属する復号マクロブロックのみを符号化されるスライスグループとして参照する方法で動きベクトルを制限することができる。エンコーダは、端数ピクセル補間のために元サンプルの範囲が必要であり、全ての元サンプルが特定のスライスグループ内に存在していなくてはならないことを考慮しなくてはならない。
H.264/AVCコーデックにはデブロッキングループフィルタが含まれる。ループフィルタリングは4×4ブロック境界の各々に適用されるが、スライス境界ではエンコーダがループフィルタリングを停止することができる。スライス境界でループフィルタリングが止められる場合、デコーダでの完全再構成は、段階的ランダムアクセスの実行時に達成することができる。それ以外では、再構成ピクチャは回復ポイント後であっても中身が不完全であるかもしれない。
H.264/AVC規格の回復ポイントSEIメッセージ及び動き制約スライスグループSEIメッセージは、スライスグループによっては離隔領域として制限された動きベクトルで符号化されるものがあることを示すために使用することができる。デコーダはこの情報を利用して、例えば高速ランダムアクセスを実行したり、残余領域を無視して処理時間を節約したりすることができる。
サブピクチャの概念は、HEVCに関して、例えば文献JCTVC-I0356で提案されている。
<http://phenix.int-evry.fr/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I0356-v1.zip>
これは、H.264/AVCの矩形離隔領域又は矩形動き制約スライスグループセットと同様のものである。文献JCTVC-I0356で提案されているサブピクチャの概念は以下で説明される。ただし、サブピクチャは以下で説明されるものと同一でなくても、同様に規定されたものでもよい点に理解すべきである。サブピクチャの概念では、ピクチャは所定の矩形領域に分割される。各サブピクチャは、1つのピクチャを構成する全てのサブピクチャがSPSやPPS、リファレンスピクチャセットのような同一の大域情報を共有するという点を除いて、独立したピクチャのように処理される。サブピクチャは、幾何学的にはタイルと同様であり、その特性は次の通りであり、シーケンスレベルで特定される、LCUで揃えた矩形領域である。ピクチャの中のサブピクチャは、そのピクチャのサブピクチャラスタースキャンでスキャンされてもよい。各サブピクチャは新たなスライスを開始する。ピクチャに複数のタイルが存在する場合、サブピクチャ境界とタイル境界は揃えられてもよい。サブピクチャを跨ぐループフィルタリングは無くてもよい。サブピクチャの範囲外のサンプル値と動き情報の予測は無くてもよい。サブピクチャ範囲外の1つ又は複数のサンプル値を用いて算出される端数サンプル位置のサンプル値もまた、サブピクチャ内のサンプルをインター予測するために用いられなくてもよい。動きベクトルがサブピクチャの外側の領域を指す場合、ピクチャ境界に対して規定されるパディング処理が適用されてもよい。LCUは、サブピクチャが複数のタイルを含まない限り、サブピクチャ内においてラスタースキャン順でスキャンされる。サブピクチャ内のタイルは、そのピクチャのサブピクチャラスタースキャンでスキャンされてもよい。タイルは、デフォルトで1ピクチャ当たり1タイルの場合を除き、サブピクチャ境界を跨ぐことはできない。ピクチャレベルに利用可能な全ての符号化機構は、サブピクチャレベルでもサポートされる。
スケーラブルビデオ符号化とは、コンテンツに関してビットレートや解像度、又はフレームレートが異なる複数の表現を1つのビットストリームが格納できるような符号化構造のことである。このような場合、受信側は、その特定(例えば、ディスプレイ装置に最適な解像度)に応じて望ましい表現を抽出することができる。あるいは、サーバ又はネットワーク要素が、ネットワーク特性や受信側の処理能力等に応じて受信側に送信されるように、ビットストリームの一部を抽出することもできる。スケーラブルビットストリームは通常、利用可能な最低品質ビデオを提供する1層の基本レイヤ(base layer)と、下位レイヤと共に受信・復号されるとビデオ品質を高める1又は複数層の拡張レイヤ(enhancement layer)から構成される。拡張レイヤに対する符号化効率を高めるために、レイヤの符号化表現は、一般に下位レイヤに依存する。例えば、拡張レイヤの動き情報及びモード情報が下位レイヤから予測されてもよい。同様に、拡張レイヤ予測を作成するために、下位レイヤのピクセルデータを用いることもできる。
スケーラブルビデオ符号化方式によっては、ビデオ信号はベースレイヤ及び1つ又は複数の拡張レイヤに符号化されてもよい。拡張レイヤは時間分解能(すなわち、フレームレート)や空間分解能を上げたり、別のレイヤやその一部によって表わされるビデオコンテンツの品質を単に上げたりしてもよい。各レイヤは、それぞれの全ての従属レイヤと合わせて、特定の空間分解能,時間分解能及び品質レベルでのビデオ信号の一表現となる。本願では、全ての従属レイヤを伴うスケーラブルレイヤを「スケーラブルレイヤ表現」と呼ぶ。特定の忠実度で元の信号表現を生成するために、スケーラブルレイヤ表現に対応するスケーラブルビットストリームの一部が抽出され復号される。
符号化規格によっては、スケーラブルビットストリームの生成が許容される。意味のある復号表現は、スケーラブルビットストリームの特定部分のみを復号することによって生成することができる。スケーラブルビットストリームは、例えばストリーミングサーバでのプレ符号化ユニキャストストリームのレート適応や、様々な能力及び/又は様々なネットワーク条件を有する端末への単一ビットストリームの伝送に使用することができる。スケーラブルビデオ符号化のその他の使用例のリストは、次の文献に掲載されている:ISO/IEC JTC1 SC29 WG11 (MPEG)成果文書N5540、「スケーラブルビデオ符号化の応用及び要件」("Applications and Requirements for Scalable Video Coding")、第64回MPEGミーティング、2003年3月10−14日、於タイ、パタヤ。
場合によっては、特定の位置又は任意の位置の後で拡張レイヤのデータが切り捨てられてもよい。ここで切り捨て位置はそれぞれ、視覚的品質を高めて表現する追加データを含んでもよい。こうしたスケーラビリティは細粒度スケーラビリティ(fine-grained/granularity scalability;FGS)と呼ばれる。
SVCはレイヤ間予測機構を用い、現在再構成済みのレイヤ以外のレイヤ又は次の下位レイヤから特定の情報を予測できる。レイヤ間予測できた情報は、イントラテクスチャと動き,残差のデータを含む。レイヤ間動き予測は、ブロック符号化モードやヘッダ情報などの予測を含み、下位レイヤからの動きが上位レイヤの予測に用いられてもよい。イントラ符号化の場合、下位レイヤの周囲マクロブロックや同位置のマクロブロックからの予測が可能である。こうした予測技術は先に符号化済みのアクセスユニットからの情報を使わないため、イントラ予測技術と呼ばれる。また、下位レイヤからの残差データも現レイヤの予測に用いることができる。
スケーラブルビデオ符号化(復号)は、シングルループ復号で知られる概念を用いて実現されてもよい。シングルループ復号では、復号リファレンスピクチャは復号される最上位レイヤのみで再構成され、それより下位のレイヤのピクチャは完全に復号されなくてもよく、あるいはレイヤ間予測に使用後破棄されてもよい。シングルループ復号では、デコーダは再生に望ましいスケーラブルレイヤ(「希望レイヤ」又は「ターゲットレイヤ」と呼ばれる)に対してだけ動き補償及び完全ピクチャ再構成を遂行する。こうして、マルチループ復号と比べ復号の複雑さを大幅に減らせる。希望レイヤ以外の全てのレイヤは完全に復号される必要がない。これは、符号化ピクチャデータの全て又は一部が希望レイヤの再構成に必要ないからである。ただし、(ターゲットレイヤよりも)下位レイヤは、レイヤ間動き予測のようなレイヤ間のシンタックス又はパラメータ予測に使用されることもある。あるいは又は加えて、下位レイヤはレイヤ間のイントラ予測に使用されてもよく、そのため下位レイヤのイントラ符号化ブロックが復号されなくてはならない場合もある。あるいは又は加えて、レイヤ間残差予測が適用されてもよい。レイヤ間残差予測では、下位レイヤの残差情報がターゲットレイヤの復号に使用されてもよく、その残差情報の復号又は再構成が必要となる場合もある。符号化構成によっては、大部分のピクチャの復号にシングル復号ループが必要となる場合もあるが、いわゆるベース表現(復号ベースレイヤピクチャ等)の再構成のために、第2の復号ループが選択的に適用されてもよい。ベース表現は予測リファレンスとして必要とされてもよいが、出力又は表示はされなくてもよい。
SVCではシングルループ復号が許容されている。これは制約テクスチャ内予測モードを用いることで可能となる。レイヤ間テクスチャ内予測はマクロブロック(MB)であって、そのMB内にベースレイヤの対応するブロックが位置するMBに対して適用可能である。同時に、ベースレイヤにおけるこうしたイントラMBは、制約イントラ予測を使用する(例えば、シンタックス要素"constrained_intra_pred_flag"が1に等しい)。シングルループ復号では、デコーダは再生に望ましいスケーラブルレイヤ(「希望レイヤ」又は「ターゲットレイヤ」と呼ばれる)に対してだけ動き補償及び完全ピクチャ再構成を遂行する。こうして、復号における複雑さを大幅に減らせる。希望レイヤ以外の全てのレイヤは完全に復号される必要がない。これは、レイヤ間予測(レイヤ間テクスチャ内予測,レイヤ間動き予測又はレイヤ間残差予測)に使用されないMBデータの全て又は一部が希望レイヤの再構成に必要ないからである。
単一復号ループは殆どのピクチャの復号に必要であるが、第2の復号ループはベース表現を再構成するために選択的に適用される。このベース表現は、予測リファレンスとして必要であるが、出力又は表示される必要はないので、いわゆるキーピクチャ("store_ref_base_pic_flag"が1に等しい)に対してのみ再構成される。
FGSはSVC規格のドラフトバージョンの一部に含まれていたが、最終版SVC規格からは除外された。よって以降では、FGSはSVC規格のドラフトバージョンの一部を背景として説明される。切り捨てされない拡張レイヤによって提供されるスケーラビリティは、粗粒度スケーラビリティ(coarse-grained/granularity scalability;CGS)と呼ばれる。これは、従来の品質(SNR)スケーラビリティと空間スケーラビリティを合わせて含む。SVC規格はいわゆる中粒度スケーラビリティ(medium-grained/granularity scalability;MGS)をサポートする。MGSでは、高品質ピクチャがSNRスケーラブルレイヤピクチャと同様に符号化されるが、FGSレイヤピクチャと同じ高水準シンタックス要素を用いて、シンタックス要素quality_idが0を超えることによって示される。
SVCドラフトにおけるスケーラビリティ構造は3つのシンタックス要素で特徴付けられる。"temporal_id","dependency_id","quality_id"の3つのシンタックス要素で特徴付けられる。シンタックス要素"temporal_id"は、時間スケーラビリティ階層又は間接的にはフレームレートを示すのに用いられる。"temporal_id"の最大値が小さいピクチャを含むスケーラブルレイヤ表現のフレームレートは、"temporal_id"の最大値が大きいピクチャを含むスケーラブルレイヤ表現のフレームレートよりも低い。所与の時間レイヤは通常、下位時間レイヤ(すなわち、"temporal_id"がより小さい値の時間レイヤ)に依存するが、どの上位時間レイヤにも依存しない。シンタックス要素"dependency_id"は、CGSレイヤ間符号化依存階層を示すのに用いられる(前述の通り、SNRと空間スケーラビリティの両方を含む)。どの時間レベル位置でも、"dependency_id"値が小さいピクチャは、"dependency_id"値が大きいピクチャの符号化におけるレイヤ間予測に用いられてもよい。シンタックス要素"quality_id"は、FGS又はMGSレイヤの品質レベル階層を示すのに用いられる。どの時間レベル位置でも、同一の"dependency_id"値であれば、"quality_id"値がQLであるピクチャは"quality_id"値がQL-1であるピクチャをレイヤ間予測に使用する。0を超える"quality_id"を持つ符号化スライスは、切り捨て可能なFGSスライス又は切り捨て不可能なMGSスライスの何れかとして符号化されてもよい。
単純化するために、同一の"dependency_id"値を持つアクセスユニットにおける全てのデータユニット(SVCの場合、ネットワーク抽象化層ユニット/NALユニットなど)は、依存ユニット又は依存表現と呼ばれる。1依存ユニット内では、同一の"quality_id"値を持つ全てのデータユニットは、品質ユニット又はレイヤ表現と呼ばれる。
復号ベースピクチャとも呼ばれるベース表現は、"quality_id"値が0である依存ユニットにおけるビデオ符号化レイヤ(VCL)NALユニットの復号結果から得られる復号ピクチャで、"store_ref_base_pic_flag"が1に設定される。復号ピクチャとも呼ばれる拡張表現は通常の復号処理結果から得られ、最大依存表現に対して存在する全てのレイヤ表現が復号される。
前述の通り、CGSは空間スケーラビリティとSNRスケーラビリティの両方を含む。空間スケーラビリティは最初に、解像度の異なるビデオ表現をサポートするように設計される。各時刻に対して、VCL-NALユニットは同一アクセスユニットで符号化され、これらのVCL-NALユニットが別々の解像度に対応している。復号中、低解像度VCL-NALユニットは動きフィールド及び残差を提供する。これらは、高解像度ピクチャの最終復号及び再構成によって引き継がれてもよい。従来のビデオ圧縮規格と比較した場合、SVCの空間スケーラビリティは、ベースレイヤが拡張レイヤをクロップ及びズームしたバージョンとなれるように一般化されている。
MGS品質レイヤはFGS品質レイヤと同様に"quality_id"で示される。各依存ユニット(同一の"dependency_id"を持つ)に対して、"quality_id"が0であるレイヤが存在し、"quality_id"が0を超える他のレイヤも存在し得る。"quality_id"が0を超えるこうしたレイヤは、スライスが切り捨て可能スライスとして符号化されたかどうかに応じてMGSレイヤ又はFGSレイヤの何れかである。
FGS拡張レイヤの基本形では、レイヤ間予測のみが使用される。したがって、FGS拡張レイヤは、復号シーケンスで誤差を伝播させず自由に切り捨てできる。しかし、FGSの基本形は圧縮効率が低くなる。この問題は、インター予測リファレンスに低品質ピクチャのみが使用されることで生じる。したがって、インター予測リファレンスとしてFGS拡張ピクチャの使用が提案されている。しかしこうした提案でも、FGSデータの一部が捨てられる際、ドリフトと呼ばれる符号化・復号間の不整合が生じ可能性がある。
SVCドラフト規格の特徴はFGS-NALユニットが自由にドロップされたり、切り捨てられたりできるが、SVCV規格の特徴は、MGS-NALユニットがビットストリームの適合性を損なわず自由にドロップされることができる(しかし、切り捨てられることはできない)。前述の通り、符号化時にこうしたFGS又はMGSデータがインター予測リファレンスに対して使用される場合、データのドロップ又は切り捨てはデコーダ側とエンコーダ側との間で復号ピクチャの不整合を生じさせる。この不整合がドリフトと呼ばれる。
FGS又はMGSデータのドロップ又は切り捨てによるドリフトを制御するために、SVCは次の解決方法を適用してきた。特定の依存ユニットにおいて、("quality_id"が0であるCGSピクチャのみの復号とそれに依存する全ての下位レイヤデータによる)ベース表現は復号ピクチャバッファに格納される。同一の"dependency_id"値を持つ次の依存ユニットを符号化する際、FGS-NAL又はMGS-NALユニットを含む全てのNALユニットはインター予測リファレンス用にベース表現を使用する。その結果、先のアクセスユニットにおけるFGS/MGS-NALユニットのドロップ又は切り捨てによるドリフトは全て、このアクセスユニットで止められる。同一の"dependency_id"値を持つ他の依存ユニットに対して、全てのNALユニットは、高い符号化効率のために、インター予測リファレンス用にこの復号ピクチャを使用する。
NALユニットはそれぞれのNALユニットヘッダにシンタックス要素"use_ref_base_pic_flag"を含む。この要素の値が1である場合、NALユニットの復号ではインター予測処理時にリファレンスピクチャのベース表現を使用する。シンタックス要素"store_ref_base_pic_flag"は、後のピクチャに対してインター予測用に現ピクチャのベース表現を格納するか(値が1の場合)否か(値が0の場合)を特定する。
"quality_id"が0を超えるNALユニットはリファレンスピクチャリスト作成及び加重予測に関するシンタックス要素を含まない。すなわち、シンタックス要素"num_ref_active_lx_minus1"(xは0又は1)やリファレンスピクチャリスト並び替えシンタックステーブル,加重予測シンタックステーブルは存在しない。その結果、MGS又はFGSレイヤは、必要に応じて同一の依存ユニットにおける"quality_id"が0であるNALユニットからこうしたシンタックス要素を引き継がなくてはならない。
SVCでは、リファレンスピクチャリストはベース表現のみ("use_ref_base_pic_flag"が1の場合)又は「ベース表現」とマークされていない復号ピクチャのみ("use_ref_base_pic_flag"が0の場合)の何れかから構成され、同時に両方から構成されることはない。
SVCでは、スケーラブルネスティングSEIメッセージが規定されている。スケーラブルネスティングSEIメッセージは、標示された依存表現や他のスケーラブルレイヤのようなビットストリームのサブセットで、関連するSEIメッセージに関する機構を提供する。スケーラブルネスティングSEIメッセージには、スケーラブルネスティングSEIメッセージそのものとは異なる1つ又は複数のSEIメッセージが含まれる。スケーラブルネスティングSEIメッセージに含まれるSEIメッセージは、ネストSEIメッセージと呼ばれる。スケーラブルネスティングSEIメッセージに含まれないSEIメッセージは、非ネストSEIメッセージと呼ばれる。MVCでは、ネストSEIメッセージが適用されるビューを示すために、スケーラブルネスティングSEIメッセージと同様のSEIメッセージが規定されている。H.264/AVCのマルチビュー及び深度拡張(MVC+Dとも呼ばれる)では、ネストSEIメッセージが適用されるテクスチャビュー及び/又は深度ビューを指定ために、スケーラブルネスティングSEIメッセージと同様の別のSEIメッセージが規定されている。H.265/HEVCにおいても、同様のスケーラブルネスティングSEIメッセージが含まれる。
品質スケーラビリティ(信号対ノイズ比又はSN比とも呼ばれる)及び/又は空間スケーラビリティ対応のスケーラブルビデオコーデックは、次のように実装されてもよい。基本レイヤに対しては、従来の非スケーラブルビデオエンコーダ・デコーダが使用される。基本レイヤの再構成/復号ピクチャは、拡張レイヤ用リファレンスピクチャバッファに含められる。H.264/AVCやHEVC、インター予測用リファレンスピクチャリストを用いる同様のコーデックでは、基本レイヤ復号ピクチャは、拡張レイヤの復号リファレンスピクチャと同様に、拡張レイヤピクチャの符号化/復号のため、リファレンスピクチャリストに挿入されてもよい。その結果、エンコーダはインター予測リファレンスとして基本レイヤリファレンスピクチャを選択し、通常、リファレンスピクチャインデクスを用いて自身が使用していることを符号化ビットストリームに示すことができる。デコーダは、ビットストリームの例えばリファレンスピクチャインデクスから、拡張レイヤ用インター予測リファレンスとして基本レイヤピクチャが使用されることを復号する。復号基本レイヤピクチャは、拡張レイヤ用予測リファレンスとして使用される場合、レイヤ間リファレンスピクチャと呼ばれる。
品質スケーラビリティに加え、次のスケーラビリティモードも存在する:
・ 空間スケーラビリティ:
ベースレイヤピクチャは、拡張レイヤピクチャよりも低い解像度で符号化される。
・ ビット深度スケーラビリティ:
ベースレイヤピクチャは、(例えば10から12ビットの)拡張レイヤピクチャよりも低いビット深度(例えば8ビット)で符号化される。
・ クロマフォーマットスケーラビリティ:
ベースレイヤピクチャは、(例えば4:4:4フォーマットの)拡張レイヤピクチャよりも低い忠実度(例えば4:2:0フォーマット)でクロマ符号化される。
・ 色域スケーラビリティ:
拡張レイヤピクチャは、ベースレイヤピクチャよりも豊富な又は広い色表現範囲を有する。例えば、拡張レイヤは超高精細テレビ(UHDTV、ITU-R BT.2020規格)の色域を有し、ベースレイヤはITU-R BT.709規格の色域を有してもよい。
・ ビュースケーラビリティ:
マルチビュービデオにおいて、複数のレイヤがそれぞれ別々のビューを表現する。
・ 深度スケーラビリティ:
特定のレイヤが通常のカラービデオコンテンツを示し、その他のレイヤが範囲情報や視差、深度等を示すことができる。
・ 補助ピクチャスケーラビリティ:
特定のレイヤがアルファ面等の補助ビデオコンテンツを表現することができる。アルファ面は、例えば透明度又は不透明度の情報提示やクロマキー処理に用いられてもよい。
上記のスケーラビリティ例の全てにおいて、ビットレートの追加オーバーヘッドを最小にするため、拡張レイヤの符号化にベースレイヤ情報を用いることができる。
(ピクチャ全体ではなく)ピクチャ内の特定領域のみをエンハンスしたい場合、現在のスケーラブルビデオ符号化ソリューションでは、オーバーヘッドの複雑さが相対的に増すか、符号化効率を損なうことになる。
例えば、ビデオピクチャの特定領域のみを高いビット深度で符号化しようとする場合であっても、現在のスケーラブル符号化ソリューションでは、ピクチャ全体を高ビット深度で符号化しなくてはならないため、複雑さが劇的に増すことになる。これには、動き補償予測がより大きなメモリ帯域を必要とすることや、全ての動きブロックがより高いビット深度のリファレンスピクセルサンプルにアクセスする必要があること等、多くの要因がある。また、補間及び逆変換には、サンプルのビット深度がより高いため、例えばベースレイヤでは十分であった16ビット処理ではなく、例えば32ビット処理が必要とされることもある。
クロマフォーマットスケーラビリティで画像の特定領域がエンハンスされる場合でも、同様の問題が生じる可能性がある。例えば、拡張レイヤが4:4:4クロマフォーマットを使用する場合、拡張レイヤピクチャ全体の参照メモリも4:4:4フォーマットでなくてはならず、メモリの要件が再び増すことになる。同様に、選択領域(例えば、スポーツ放送における選手とボール等)にのみ空間スケーラビリティが適用されようとする場合、従来の方法では、拡張レイヤ画像全体をフル解像度で格納して保持する必要がある。
SNRスケーラビリティで、ピクチャの関心領域以外の領域に対して如何なる拡張情報も伝送せずに、ピクチャの特定部分のみがエンハンスされる場合、各々のブロックが拡張情報を含むか否かを示すために、十分な量の制御情報が信号で伝えられる必要がある。このオーバーヘッドはビデオシーケンス内の全ピクチャに対して送られる必要があり、ビデオエンコーダの符号化効率を下げることになる。
HEVC拡張ドラフトの文献JCTVC-M0181及びJCTVC-M0235では、動き制約タイルセットSEIメッセージと呼ばれる、タイルセットに対して制限された符号化を示す新しいSEIメッセージが導入される。これは、タイルセットの外側のサンプルは利用せずに、タイルセットが独立に復号可能な領域を表わすように、タイルの動き補償を制限するものである。こうした動き制約のあるタイルセットSEIメッセージは、ピクチャ内の特定領域だけをエンハンスするために、符号化効率の改善も提供されるが、レイヤ内予測依存だけを規定するように制限されることになる。タイルセットは複数のタイルのセットとして規定される。タイルセットは、例えば動き制約タイルセットSEIメッセージに含まれるシンタックス構造で、1つ又は複数の矩形タイル領域を指定する等によって示されてもよい。
以降では、拡張レイヤピクチャ内の領域の符号化を、品質及び/又は空間解像度を高めつつ、レイヤ間予測の制約が考慮された高い符号化効率で行うために、拡張レイヤピクチャの1つ又は複数のタイルを符号化する改良方法が導入される。
この方法は図5に示されている。拡張レイヤピクチャのタイルセットが規定され(500)、ベースレイヤピクチャでもタイルセットが規定される(502)。前記拡張レイヤピクチャのタイルセットに関する符号化制約条件が規定され、符号化制約条件は、前記ベースレイヤピクチャのタイルセットに関連するレイヤ間予測制約条件を少なくとも含む(504)。そして、前記拡張レイヤピクチャのタイルセットは、該タイルセットが独立に復号可能な領域を表わすように、符号化制約条件に従って符号化される(506)。
実施形態に従って、符号化制約条件は、前記拡張レイヤピクチャのタイルセットがレイヤ間限定タイルセットであると規定する。これは、拡張レイヤ(EL)タイルセット内の全サンプルに対してレイヤ間予測のみが使用されるような制限方法で、ELタイルセットが符号化されることを示す。実施形態によっては、符号化制約条件は更に、ELタイルセットに関する残差が信号で伝えられないことを示してもよい。これは、ELタイルセットの再構成が、対応するベースレイヤ(BL)タイルセットであって、レイヤ間処理で処理可能なBLタイルセットの再構成と同一であることを意味する。こうしたレイヤ間処理には、アップサンプリング(空間スケーラビリティの場合)やビット深度スケーリング(ビット深度スケーラビリティの場合)、及び/又は色空間変換(色域スケーラビリティの場合)等がある。実施形態によっては、符号化制約条件は更に、レイヤ間予測に用いられるBLタイルが動き制約を受けることを示してもよい。
図6には、レイヤ間限定タイルセットの符号化制約の実施例を示す。縦縞は、レイヤ間予測のみが許容されるレイヤ間限定タイルセットを示す。換言すれば、ELタイルセット656はBLタイルセット650のみに基づいて予測され、ELタイルセット658はBLタイルセット652のみに基づいて予測され、ELタイルセット660はBLタイルセット654のみに基づいて予測される。ただし、BLタイルセットは動き制約タイルセットでもよく、BLタイルセットの間の矢印によって示されている。換言すれば、BLタイルセット652はBLタイルセット650から動き制約で予測され、この予測にBLタイルセット650以外のサンプルは利用されない。BLタイルセット654も同様に、BLタイルセット652から動き制約で予測される。BLタイルセットとELタイルセットの大きさが同じである必要がないことに留意すべきである。
実施形態に従って、符号化制約条件は、前記拡張レイヤピクチャのタイルセットが動きレイヤ間予測制約タイルセットであると規定する。これは、ELタイルセット内のサンプルが同一レイヤにおける他のタイルに属するサンプルを利用しないように、ELタイルセットの動き補償予測が制限されるような制約方法で、ELタイルセットが符号化されることを示す。そして、BLから選択された0以上のタイルからのサンプルがELタイルセットのレイヤ間予測のためのリファレンスとして使用される又は使用されてもよいように、シーケンス全体でレイヤ間予測が信号で伝えられる。BLからタイルが選択されない場合は、このELタイルセットがレイヤ間予測を使用しないことを意味する。実施形態によっては、符号化制約条件は更に、レイヤ間予測に用いられるBLタイル又はタイルセットが動き制約を受けることを示してもよい。
図7には、動きレイヤ間予測制約タイルセットの実施例が示されている。縦縞のあるELタイルセット706・708・710はそれぞれ、BLタイルセット700・702・704からのサンプルのみを利用し、他のBLタイルからのレイヤ間予測を利用しない。ELタイルセット708がELタイルセット706以外のタイルに属するサンプルを利用せず、ELタイルセット710がELタイルセット708以外のタイルに属するサンプルを利用しないように、ELタイルセットの動き補償予測が制限される。また、縦縞のあるBLタイルセットは動き制約を受ける。
図8には、動きレイヤ間予測制約タイルセットの別の実施例が示されている。ここでは、ELタイルセットのレイヤ間予測用リファレンスとしてBLタイルが使用されないことが示されている。換言すれば、それはレイヤ内予測限定タイルセットであって、ELタイルセットの動き補償予測が図6の場合と同様に制限されつつ、レイヤ間予測が完全に制限されている。
実施形態に従って、符号化制約条件は、前記拡張レイヤピクチャのタイルセットがシングルループ復号タイルセットであると規定する。これは、ELタイルセットを復号するために、関連するBLタイルセットが復号ピクチャバッファに保持される必要がないことを示す。換言すれば、BLタイルセットはレイヤ内予測用リファレンスとして使用されない。BLタイルセットは、イントラ符号化されてIRAPピクチャに在る場合、レイヤ間予測に使用されてもよい。
種々の実施形態において、ピクチャ内でのタイルセットの予測(本願では、予測タイルセットと呼ばれる)が、関連する1つ又は複数の他のピクチャ(本願では、リファレンスタイルセットと呼ばれる)のみから行われるように制約を受ける場合、符号化制約条件は次の1つ又は複数を含んでもよい。
各リファレンスタイルセット以外のサンプル値と、リファレンスタイルセット以外の1つ又は複数の値を用いて算出される端数サンプル位置でのサンプル値は何れも、予測タイルセット内のサンプルの予測のためには使用されない。こうした予測は、例えばインター予測、レイヤ間予測、ビュー間予測、コンポーネント間予測等の何れか又は全てといったあらゆるタイプのサンプル予測でもよい。
リファレンスタイルセット以外のパラメータ値又はシンタックス要素値は、予測タイルセットの予測には使用されない。例えば、リファレンスタイルセット以外の動きベクトルは、予測タイルセット内の時間動きベクトル等のためには使用されない。こうした予測は、あらゆるタイプのシンタックス予測又はパラメータ予測でもよい。
リファレンスタイルセット以外のサンプル値及び/又はシンタックス要素値は、予測タイルセットの残差予測には使用されない。
リファレンスタイルセット以外のサンプル値は、予測タイルセットのサンプル値のフィルタリングやアップサンプリング、インパクティング等、如何なる符号化(復号)処理でも使用されない。
種々の実施形態に従う1つ又は複数の符号化制約条件は、1つ又は複数の標示を用いてビットストリーム中で又はビットストリームに沿って示されてもよい。こうした標示は、1つ又は複数のシンタックス構造における1つ又は複数のシンタックス要素又はシンタックス要素値として符号化されてもよい。エンコーダは、ビットストリームの1つ(又は複数)の標示を符号化してもよい。デコーダは、ビットストリームから1つ(又は複数)の標示を復号してもよい。1つ(又は複数)の標示は、例えばシーケンスパラメータセットやピクチャパラメータセット、補助拡張情報(SEI)メッセージ、スライスヘッダ、それ以外のシンタックス構造の何れか又は全てに存在してもよい。
シンタックス構造は、1つ(又は複数)の標示の範囲や有効性、持続性を決定することができる。例えば、シーケンスパラメータセットに標示が存在する場合、実施形態によっては、その標示が、シーケンスパラメータセットがアクティブである間符号化ビデオシーケンスに対して有効であってもよい。同様に、ピクチャパラメータセットに標示が存在する場合、それが、ピクチャパラメータセットがアクティブである間ピクチャに対して有効であってもよい。あるいは、1つ(又は複数)の標示の範囲/有効性/持続性が、その1つ(又は複数)の標示に含まれてもよく、1つ(又は複数)の標示に関連する別のシンタックス要素に含まれてもよい。実施形態によっては、1つ(又は複数)の標示の範囲や有効性、持続性には、レイヤのセットが含まれてもよい。実施形態によっては、1つ(又は複数)の標示の範囲や有効性、持続性には、ビューやコンポーネントタイプ(例えば、テクスチャ及び/又は深度)、及び/又はスケーラビリティレイヤ(例えば、空間及び/又は品質スケーラビリティレイヤ)の各セットのような、スケーラビリティ次元のセットが含まれてもよい。
ある実施形態によれば、前述のタイルセットの各々に関する標示は、補助拡張情報(SEI)メッセージの形態で実装されてもよい。例えば、動き制約タイルセットのSEIメッセージは、レイヤ内予測制約とレイヤ間予測制約の両方を示すために、追加補正されてもよい。加えて又あるいは、レイヤ内予測制約とレイヤ間予測制約の一方又は両方を示すために、全く新しいSEIメッセージシンタックスが開発されてもよい。
ある実施形態によれば、レイヤ内予測制約とレイヤ間予測制約の一方又は両方を示すために、次のSEIメッセージシンタックスが使用される。
[表1]
このシンタックス要素の意味は次のように規定することができる。
num_sets_in_message_minus1 plus 1は、SEIメッセージで指定された動き制約タイルセットの数を指定する。num_sets_in_message_minus1の値は0以上255以下の範囲でなくてはならない。
mcts_id[ i ] は、i番目に特定されたタイルセットの用途を特定するために(例えば、特定用途のために符号化ビデオシーケンスから抽出すべき領域を特定するために)用いられる識別番号を含む。pan_scan_rect_idの値は0以上232−2以下の範囲でなくてはならない。
0から255及び512から231−1であるmcts_id[ i ]の値は、アプリケーションの決定に従って使用される。256から511及び231から232−2であるmcts_id[ i ]の値は、ITU-T | ISO/IECが将来使用できるように予約されている。デコーダは256から511又は231から232−2の範囲にある値を持つmcts_id[ i ] に直面した場合、それを無視しなくてはならない(ビットストリームから削除して破棄する)。
num_tile_rects_in_set_minus1[ i ] plus 1は、i番目に特定された動き制約タイルセットの中の矩形タイル領域の数を指定する。num_tile_rects_in_set_minus1[ i ]の値は0以上 (num_tile_columns_minus1 + 1) * (num_tile_rows_minus1 + 1) - 1, 以下の範囲でなくてはならない。
top_left_tile_index[ i ][ j ] 及びbottom_right_tile_index[ i ][ j ]は、i番目に特定された動き制約タイルセットの矩形領域における左上タイルのタイル位置と、右下タイルのタイル位置を、ラスタースキャン順でそれぞれ指定する。
exact_sample_value_match_flag[ i ] が0である場合は、符号化ビデオシーケンス内で、i番目に特定された動き制約タイルセット以外の符号化ツリーブロックが復号されず、動き制約タイルセットの境界が復号処理の用途でピクチャ境界として扱われる場合、特定されたタイルセットの各サンプルの値が、そのピクチャの符号化ツリーブロックが全て復号される場合における同じサンプルの値と比べて完全に等しくなくてもよいことを示している。
mcts_nuh_layer_id[ i ][ j ]は、i番目に特定されたタイルセット内におけるj番目の矩形領域を含むピクチャのnuh_layer_id値を指定する。
mc_idc[ i ][ j ] が0である場合は、nuh_layer_idがmcts_nuh_layer_id[ i ][ j ]であるピクチャとの間で、mcts_id[ i ]が同じ値のタイルセットの間でのインター予測処理が制約を受けても受けなくてもどちらでもよいことを特定する。 mc_idc[ i ][ j ]が1である場合は、nuh_layer_idがmcts_nuh_layer_id[ i ][ j ]であるピクチャとの間で、mcts_id[ i ]が同じ値のタイルセットの間でのインター予測処理について、各特定タイルセット以外のサンプル値と、特定タイルセット以外の1つ又は複数の値を用いて算出される端数サンプル位置でのサンプル値の何れもが、特定タイルセット内のサンプルの予測のためには使用されないように、インター予測処理が制約を受けることを特定する。mc_idc[ i ][ j ] が2である場合は、特定タイルセットに対してnuh_layer_idがmcts_nuh_layer_id[ i ][ j ]である何れのピクチャからもインター予測が行われないことを特定する。
ilc_idc[ i ][ j ] が0である場合は、nuh_layer_idがmcts_nuh_layer_id[ i ][ j ]である特定タイルセットに対するレイヤ間予測処理が制約を受けても受けなくてもどちらでもよいことを特定する。ilc_idc[ i ][ j ]が1である場合は、各特定タイルセット以外のサンプル値と、特定タイルセット以外の1つ又は複数の値を用いて算出される端数サンプル位置でのサンプル値の何れもが、nuh_layer_idがmcts_nuh_layer_id[ i ][ j ]である特定タイルセット内のサンプルの予測のためには使用されないように、レイヤ間予測処理が制約を受けることを特定する。ilc_idc[ i ][ j ]が2である場合は、示されたタイルセットに対するレイヤ間予測が行われないことを特定する。
skipped_tile_set_flag[ i ][ j ]が1である場合は、nuh_layer_idがmctsNuhLayerIdである特定タイルセットの内部にある全ての予測ブロックが、nuh_layer_idがRefLayerId[ mctsNuhLayerId ][ NumDirectRefLayers[ mctsNuhLayerId ] - 1 ]であるレイヤ間リファレンスピクチャからレイヤ間予測されることと、特定タイルセットのどの変換ユニットにもresidual_codingシンタックス構造が存在しないことを特定する。skipped_tile_set_flag[ i ][ j ]が0である場合は、nuh_layer_idがmctsNuhLayerIdである特定タイルセットの内部にある全ての予測ブロックがレイヤ間予測されてもされなくてもどちらでもよいことと、特定タイルセットの何れかの変換ユニットにresidual_codingシンタックス構造が存在するか又は何れの変換ユニットにも存在しないことを示す。
skipped_tile_set_flag[ i ][ j ]が1である場合は、ilc_idc[ i ][ j ]は0又は1に等しくなくてはならず、mc_idc[ i ][ j ]は2に等しくなくてはならない。
exact_sample_value_match_flag[ i ] が1である場合は、符号化ビデオシーケンス内で、動き制約タイルセットに属さない符号化ツリーブロックが復号されず、動き制約タイルセットの境界が復号処理の用途でピクチャ境界として扱われる場合、動き制約タイルセットの各サンプルの値が、符号化ビデオシーケンスにおける全てのピクチャの符号化ツリーブロックが全て復号される場合に得られるサンプル値と比べて完全に等しくなることを示している。
ある実施形態によれば、動き制約タイルセットSEIメッセージは、スケーラブルネスティングSEIメッセージ内や他のあらゆるSEIメッセージ又はネスティング機構内でネストされていない場合、nuh_layer_idが0であるピクチャに適用するように特定されてもよい。それ以外の場合、動き制約タイルセットSEIメッセージは、動き制約タイルセットSEIメッセージを含むスケーラブルネスティングSEIメッセージ(又は同等のもの)で特定されるレイヤに適用するように特定されてもよい。複数の動き制約タイルセットSEIメッセージで同じ値のmcts_id[ i ](又は他の同様のタイルセット識別子)が使用される(別々のレイヤに適用される可能性がある)場合、それらは、レイヤ間予測用リファレンスレイヤでmcts_id[ i ]の値が同じタイルセットのみをリファレンスとして用いるようにタイルセットのレイヤ間予測が制約されることを示すために特定されてもよい。
ある実施形態によれば、動き制約タイルセットのSEIメッセージは、タイルセットに関するレイヤ間制約又は時間予測制約を示すように使用されてもよい。動き制約タイルセットのSEIメッセージはスケーラブルネスティングSEIメッセージに含まれることもあるが、如何なるレイヤ間予測制約も示さない。本願ではレイヤ間制約タイルセットSEIメッセージと呼ばれる別のSEIメッセージは、レイヤ間予測制約を示すために次のように特定される。
[表2]
このシンタックス要素の意味は動き制約タイルセットSEIメッセージの等価なシンタックス要素と同じように規定され、追加のシンタックス要素については次のように規定することができる。
num_il_ref[ i ][ j ] は、特定された矩形タイル領域のレイヤ間予測のためのリファレンスとして使用されうるタイル領域の数を指定する。
il_mcts_flag[ i ][ j ][ k ] が0である場合は、il_ref_ts_top_left_tile_index [ i ][ j ][ k ]及びil_ref_ts_bottom_right_tile_index [ i ][ j ][ k ]を用いてk番目のタイル領域が特定されることを示す。
il_mcts_flag[ i ][ j ][ k ] が1である場合は、k番目のタイル領域が動き制約タイルセットであって、レイヤ間予測用リファレンスレイヤの全てにおいてmcts_id[ i ]がil_ref_mcts_id[ i ][ j ][ k ]に等しい動き制約タイルセットであることを特定する。
任意の実施形態に従うレイヤ間予測制約に関する標示は、実施形態によっては、ELタイルセットのシングル復号特性に関連する1つ(又は複数)の標示を含んでもよく、それに追加されてもよい。例えば、ELタイルセットを復号するために、関連するBLタイルセットがDPBに保持される必要がないことを示す追加フラグが、ELタイルセットに関連付けられてもよい。換言すれば、BLタイルセットはレイヤ内予測用リファレンスとして使用されない。BLタイルセットは、イントラ符号化されてIRAPピクチャに在る場合、レイヤ間予測に使用されてもよい。例えば、次のシンタックス又は意味解釈が用いられる。
[表3]
表1のシンタックスと比べると、シンタックス要素single_loop_flag[ i ][ j ]が含まれている。これは0である場合、ilc_idc[ i ][ j ]が示す制約を超える制約をレイヤ間予測が受けても受けなくてもどちらでもよいことを特定する。single_loop_flag[ i ][ j ]が1である場合は、示されたタイルセットに対するレイヤ間予測がIRAPピクチャでないレイヤ間リファレンスピクチャから適用されないことを特定する。
ある実施形態によれば、拡張レイヤタイルセットは、対応するベースレイヤタイルセットに対する拡張情報を含む。この拡張情報には次の少なくとも1つが含まれる:
・ 前記拡張レイヤタイルセットの色差忠実度を対応するベースレイヤタイルセットの色差忠実度よりも上げること;
・ 前記拡張レイヤタイルセットのビット深度を対応するベースレイヤタイルセットのビット深度よりも上げること;
・ 前記拡張レイヤタイルセットの品質を対応するベースレイヤタイルセットの品質よりも上げること;
・ 前記拡張レイヤタイルセットの空間解像度を対応するベースレイヤタイルセットの空間解像度よりも上げること;
・ 色差手段の忠実度を上げること。これは例えば、拡張レイヤタイルセットのクロマフォーマットは4:2:2又は4:4:4であるが、ベースレイヤタイルセットのクロマフォーマットは4:2:0であることを意味する。4:2:0サンプリングでは、2つの色差配列又はピクチャの各々が輝度配列又はピクチャの半分の高さと半分の幅を有する。4:2:2サンプリングでは、2つの色差配列の各々が輝度配列と同じ高さと半分の幅を有する。4:4:4サンプリングでは、2つの色差配列の各々が輝度配列と同じ高さと幅を有する。
ビット深度を上げることは、例えば、拡張レイヤタイルセットに関するサンプルビット深度は10又は12ビットだが、ベースレイヤタイルセットのビット深度は8ビットであることを意味する。
実施形態によっては、単一の拡張レイヤタイルセットが複数の画像特性をエンハンスしてもよい。例えば、1つの拡張レイヤタイルセットがクロマフォーマットとビット深度の両方をエンハンスしてもよい。
実施形態によっては、拡張レイヤタイルセットのサイズや位置が別々のピクチャで変化してもよく、固定されていてもよい。
実施形態によっては、拡張レイヤタイルセットの位置及び/又はサイズがベースレイヤピクチャで使用されるタイルセットと同じでもよい。
フレームパッキングとは複数のフレームがエンコーダ側で符号化のプリプロセスステップで単一フレームにパッキングされる方法であり、フレームパッキングされたフレームは従来の2次元ビデオ符号化方式で符号化される。したがって、デコーダで生成される出力フレームには、エンコーダ側で空間的に1つのフレームにパッキングされた入力フレームに対応する構成フレームが含まれる。フレームにパッキングは立体映像に使用されてもよい。立体映像では、フレームの組であって、その一方が左の目/カメラ/ビューに対応し、もう一方が右の目/カメラ/ビューに対応する組が、単一フレームにパッキングされている。あるいは、フレームパッキングは深度拡張又は視差拡張映像にも使用される。深度/視差拡張映像では、構成フレームの1つが通常の色情報(輝度及び色差情報)を含み、もう1つがこれに対応する深度又は視差情報を表わす。フレームパッキングの使用は、例えばH.264/AVC等のパッキング構成SEIメッセージを用いてビデオビットストリームで伝えられてもよい。あるいは、フレームパッキングの使用はHDMI(登録商標)のようなビデオインタフェースを通じて示されてもよい。またあるいは、フレームパッキングの使用はセッション記述プロトコル(SDP)のような種々の機能を有する交換・モードネゴシエーションプロトコルを用いて示され及び/又はネゴシエーションされてもよい。
深度拡張ビデオは、1つ又は複数の深度ビューを持つ深度ビデオに関連する1つ又は複数のビューを持つテクスチャビデオを指す。深度拡張ビデオに関する様々なアプローチが用いられてもよく、ビデオ+深度(video plus depth;V+D)やマルチビュービデオ+深度(multiview video plus depth;MVD),レイヤ深度ビデオ(layered depth video;LDV)の使用を含む。ビデオ+深度(V+D)表現では、単一のテクスチャビューと個別の深度ビューがそれぞれ、テクスチャピクチャと深度ピクチャのシーケンスとして表現される。MVDは複数のテクスチャビューとそれぞれの深度ビューを含む。LDV表現では、中央ビューのテクスチャと深度が従来通りに表現されるが、他のビューのテクスチャと深度は部分的に表現され、中間ビューの正確なビュー合成に関しては遮蔽されていない領域のみをカバーする。
ある実施形態において、本発明は、ビデオ+深度表現、即ちテクスチャフレームと深度フレームを含むフレームパッキングビデオに適用されてもよい。こうしたフレームパッキングビデオは例えば、サイドバイサイドのフレームパッキング構成を有する。フレームパッキングされたフレームのベースレイヤは同じクロマフォーマットを有してもよい。あるいは、テクスチャ構成フレームは4:2:0フォーマットで深度構成フレームは輝度のみのフォーマットであるような、構成フレームがそれぞれ異なるクロマフォーマットを有してもよい。フレームパッキングされたフレームの拡張レイヤは、ベースレイヤフレームパッキング済みフレームの構成フレームの1つのみに関連していてもよい。拡張レイヤには、ベースレイヤの関連する構成フレームをエンハンスする構成フレームをカバーするタイルセットが含まれる。ELタイルセットは、様々な多の実施形態に従って符号化及び/又は復号される。例えば、拡張レイヤには次の1つ又は複数が含まれる:
・ テクスチャ構成フレームに対するクロマフォーマット拡張;
・ テクスチャ構成フレーム又は深度構成フレームに対するビット深度拡張;
・ テクスチャ構成フレーム又は深度構成フレームに対する空間拡張。
立体映像の圧縮改善を得るための研究から更に分かれたものとして非対称立体ビデオ符号化が知られている。この方式では、2つの符号化ビューの間に品質差がある。これは、人間の視覚系統(Human Visual System、HVS)は、それが受け取る品質がそれより高い品質のビューに近くなるように立体画像を融合するという、広く信じられている仮説による。こうして、2つの符号化ビューの間の品質差を与えることによって圧縮改善を得ることができる。
2つのビューの間の非対称性は、例えば次の方法の1つ又は複数によって得ることができる:
a)解像度混合(mixed-resolution、MR)立体ビデオ符号化。解像度非対称立体ビデオ符号化とも呼ばれ、ビューがそれぞれ異なる空間解像度及び/又は異なる周波数ドメイン特性を有する。典型的には、ビューの1つがローパスフィルターに通され、空間の詳細情報の量が減らされたり、空間解像度が下げられたりする。また、ローパスフィルターを通したビューは通常、より粗いサンプリンググリッドでサンプリングされる。つまり、少ないピクセルで表現することができる。
b)解像度混合クロマサンプリング。あるビューのクロマピクチャが別のビューの関連するクロマピクチャよりも少ないサンプルで表現される。
c)非対称サンプルドメイン量子化。2つのビューのサンプル値が異なるステップサイズで量子化される。例えば、第1のビューの輝度サンプルが0から255の範囲(即ち、サンプル当り8ビット)で表現されるが、第2のビューでは0から159の範囲にスケールされてもよい。量子化ステップを小さくしたことで、第2のビューは第1のビューよりも高い圧縮率で圧縮することができる。輝度と色差サンプルでそれぞれ異なる量子化ステップが使用されてもよい。非対称サンプルドメイン量子化の特別な場合として、各ビューでの量子化ステップ数が2の冪乗に一致するときは、ビット深度非対称立体ビデオ符号化と呼ばれる。
d)非対称変換ドメイン量子化。2つのビューの変換係数が異なるステップサイズで量子化される。その結果、ビューの1つは忠実度が下がり、ブロッキングやリンギング等、視認される符号化アーチファクトの量の増加を被る可能性がある。
e)上記の様々な符号化技術の組合せ。
図9には、前述したタイプの非対称立体ビデオ符号化が描かれている。最初の行は変換符号化のみ行われる高品質ビューを表わす。残りの行は、低品質ビューを生成するように研究されてきた符号化法の複数の組合せを表わす。ビューの生成には、異なるステップ、即ち、ダウンサンプリング、サンプルドメイン量子化、変換ベース符号化を用いている。図9から、ダウンサンプリング又はサンプルドメイン量子化は、この処理チェーンにおける他のステップの適用方法とは無関係に適用可能又は省略可能であることが分かる。同様に、変換ドメイン符号化ステップにおける量子化ステップも、他のステップとは独立に選択可能である。こうして、非対称立体ビデオ符号化の実用化において、図9の(e)行に描いたような組合せ方法で非対称性を得る適切な技術が利用される。
ある実施形態において、本発明は、例えば、サイドバイサイドのフレームパッキング構成で立体映像表現又はマルチビュー映像表現を含むフレームパッキングビデオに適用されてもよい。フレームパッキングされたフレームのベースレイヤは対称立体映像を表現し、両方のビューが概ね同じ視覚品質を有してもよい。あるいは、フレームパッキングされたフレームのベースレイヤが非対称立体映像を表現してもよい。フレームパッキングされたフレームの拡張レイヤは、ベースレイヤフレームパッキング済みフレームの構成フレームの1つのみに関連していてもよい。拡張レイヤは、非対称立体ビデオ符号化を利用するように符号化されてもよい。あるいは、ベースレイヤが非対称立体映像として符号化された場合は、拡張レイヤは対称立体映像表現を提供するように符号化されてもよい。拡張レイヤには、ベースレイヤの関連する構成フレームをエンハンスする構成フレームをカバーするタイルセットが含まれる。ELタイルセットは、様々な多の実施形態に従って符号化及び/又は復号される。例えば、拡張レイヤには次の1つ又は複数が含まれる:
・ 構成フレームの1つに対する空間拡張;
・ 構成フレームの1つに対する品質拡張;
・ 構成フレームの1つに対するクロマフォーマット拡張;
・ 構成フレームの1つに対するビット深度拡張。
ある実施形態において、ベースレイヤが立体映像等あらゆるタイプのフレームパッキングビデオを含み、拡張レイヤが立体映像の左ビューのピクチャのような1種類のみの構成フレームから成るピクチャのシーケンスを含む場合、本発明が適用されてもよい。拡張レイヤは、例えばフレームパッキングベースレイヤの関連するビューの垂直又は水平解像度を上げるように利用されてもよい。ELピクチャ全体はELタイルセットを含むものと見なされ、関連するBLタイルセットはELに対応する構成フレームのみを含むものと見なされてもよい。
本発明の別の態様は、デコーダがベースレイヤピクチャと少なくとも1つの拡張レイヤピクチャを受け取るときの動作である。図10には、本発明のある実施形態に適したビデオデコーダのブロック図が示されている。
デコーダには、受信信号に対して前述のエンコーダのエントロピーエンコーダ330とは逆の動作でエントロピー復号を行うエントロピーデコーダ600が具備されている。エントロピーデコーダ600は、エントロピー復号の結果を予測誤差デコーダ602とピクセル予測器604に出力する。
ピクセル予測器604はエントロピーデコーダ600の出力を受け取る。ピクセル予測器604内の予測器セレクタ614は、イントラ予測やインター予測、補間処理から実行されるべき処理を決定する。予測器セレクタは更に、画像ブロックの予測表現616を第1のコンバイナ613に出力してもよい。画像ブロックの予測表現616は、再構成された予測誤差信号612と結合して仮再構成画像618を生成するように使用される。仮再構成画像618は予測器614で使用されてもよく、フィルタ620に送られてもよい。フィルタ620では、最終再構成信号622を出力するフィルタ処理が適用される。最終再構成信号622はリファレンスフレームメモリ624に格納されてもよい。リファレンスフレームメモリ624は更に予測処理を行う予測器614に接続されてもよい。
予測誤差デコーダ602はエントロピーデコーダ600の出力を受け取る。予測誤差デコーダ602の逆量子化器692はエントロピーデコーダ600の出力を逆量子化し、逆変換ブロック693は逆量子化器692が出力する逆量子化信号に逆変換処理を行ってもよい。エントロピーデコーダ600の出力は、予測誤差信号が適用されないことを示してもよく、この場合、予測誤差デコーダは全て0である出力信号を生成する。
ある実施形態における復号処理は、図11に示すように符号化処理と逆である。したがって、復号処理では、デコーダは拡張レイヤピクチャのタイルセットに関する情報を取得し(1100)、ベースレイヤピクチャのタイルセットに関する情報を取得してもよい(1102)。次にデコーダは、前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャのタイルセットに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を取得してもよい(1104)。次にデコーダは、符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットを独立に復号可能な領域として復号する(1106)。
実施形態によっては前述のように、タイルセットと符号化制約条件に関する情報が1つ又は複数のSEIメッセージから取得されてもよい。
復号ピクチャはリファレンスフレームバッファに配置され、動き補償予測で後のフレームを復号するために使用できるようにしてもよい。例示的実装では、エンコーダ及び/又はデコーダは復号拡張レイヤピクチャとベースレイヤピクチャを別々にリファレンスフレームバッファに配置する。
前述では、タイル及び/又はタイルセットに関連する実施形態が説明されてきたが、名称は違っても同様の概念を用いた実施形態も同等に実現可能である点を理解する必要がある。例えば、タイル又はタイルセットの代わりに矩形スライスを用いた実施形態も実現可能である。第2の実施例では、タイルセットの代わりにスライスグループを用いた実施形態も実現可能である。第3の実施例では、タイルセットでなく離隔領域を用いた実施形態も実現可能である。
前述では、標示情報やシンタックス要素、シンタックス構造の何れか又は全てをビットストリーム又は符号化ビデオシーケンスに符号化すること、及び/又は標示情報やシンタックス要素、シンタックス構造の何れか又は全てをビットストリーム又は符号化ビデオシーケンスから復号することに関連する実施形態が説明されてきた。しかし、標示情報やシンタックス要素、シンタックス構造の何れか又は全てを、符号化スライス等の符号化データレイヤを含むビットストリーム又は符号化ビデオシーケンスの外部のシンタックス構造又はデータユニットに符号化する場合、及び/又は標示情報やシンタックス要素、シンタックス構造の何れか又は全てを、符号化スライス等の符号化データレイヤを含むビットストリーム又は符号化ビデオシーケンスの外部のシンタックス構造又はデータユニットから復号する場合の実施形態も実現可能である点を理解する必要がある。例えば、任意の実施形態に従う標示情報は、実施形態によっては、ビデオパラメータセット又はシーケンスパラメータセットに符号化され、こうしたパラメータセットが、例えばSDP等の制御プロトコルを用いて符号化ビデオシーケンスの外部で送られてもよい。同じ実施例において、受信機が制御プロトコルを用いるなどしてビデオパラメータセット又はシーケンスパラメータセットを取得し、復号用にこのビデオパラメータセット又はシーケンスパラメータセットを提供することもできる。
前述の例示的実施形態は、ビットストリームのシンタックスを用いて記述されていた。しかし、対応する構成及び/又はコンピュータプログラムがビットストリームを生成するエンコーダ及び/又はビットストリームを復号するデコーダに存在できることも理解されるべきである。同様に、エンコーダを参照して例示的実施形態が記述されていたことに対して、結果として得られるビットストリームとデコーダに対応する要素が備わることも理解されるべきである。同様に、デコーダを参照して例示的実施形態が記述されていたことに対して、デコーダによって復号されるビットストリームを生成する構成及び/又はコンピュータプログラムをエンコーダが備えることも理解されるべきである。
前述では、拡張レイヤとベースレイヤに関連して実施形態が説明されてきたが、ベースレイヤが拡張レイヤの何れかのリファレンスレイヤであって、ビットストリーム全体のベースレイヤである必要がない点も理解されるべきである。
前述された本発明の実施形態では、そこに含まれる処理の理解を助ける目的で、別々のエンコーダ装置とデコーダ装置に関するコーデックを説明しているが、こうした装置やその構造、動作が単一のエンコーダ・デコーダ装置/構造/動作として実装されうる点も理解されよう。また本発明の実施形態によっては、コーダとデコーダが共通要素の一部又は全部を共有してもよい。
前述の実施例は電子デバイスのコーデックにおいて動作する本発明の実施形態を記述しているが、以下で記述されるように本発明が任意のビデオコーデックの一部として実装され得ることを理解されたい。したがって例えば、本発明の実施形態は、固定又は有線の通信経路を通じてビデオ符号化を実装し得るビデオコーデックに実装されてもよい。
そしてユーザ装置は、前述の本発明の実施形態に記述されるこうしたビデオコーデックを備えてもよい。「ユーザ機器」との語句は、如何なる種類の無線ユーザ機器を表してもよく、例えば携帯電話やポータブルデータ処理装置、ポータブルWebブラウザであってもよい。
さらに、地上波公共移動通信ネットワーク(public land mobile network;PLMN)が、前述のビデオコーデックを含んでもよい。
一般に、様々な実施形態が、ハードウェア又は特定用途向け回路、ソフトウェア、ロジック、又はそれらの組み合わせで実装されてもよい。例えば、ある場合ではハードウェアで実装されてもよく、一方別の場合では、コントローラやマイクロプロセッサ等のコンピュータデバイスによって実行されるファームウェアやソフトウェアで実装されてもよい。本発明の種々の形態はブロック図,フローチャート,又は他の図的記述を使用して記述ないし図示される。これらのブロック,装置,システム,技術,又はここで記述される方法は、非限定的な例として、ハードウェア,ソフトウェア,ファームウェア,特定用途向け回路やロジック,汎用ハードウェア,コントローラや他のコンピュータデバイス,又はそれらの組み合わせで実装されてもよいと理解されるべきである。
そして本発明の実施形態は、移動デバイスのデータプロセッサによって実行可能なコンピュータソフトウェア,ハードウェア,又はソフトウェアとハードウェアの組合せによって実装されてもよい。またこの点に関して、添付する図面に示される論理フローの任意のブロックが、プログラムのステップや相互接続された論理回路・ブロック・機能、又はプログラムのステップ、論理回路・ブロック・機能の組合せを表現してもよいことに留意されたい。ソフトウェアは、メモリチップ等の物理メディアやプロセッサ内に実装されるメモリブロック,ハードディスクやフレキシブルディスク等の磁気メディア,DVDやそのデータ異形態であるCD等の光学式メディアに格納されてもよい。
メモリは、ローカルな技術環境に適したあらゆる種類のものであってよい。例えば、半導体ベースのメモリデバイス,磁気メモリデバイス・システム,光学式メモリデバイス・システム,固定式・移動式メモリ等の様々な適合するデータ格納技術を用いて実装されてもよい。-データプロセッサは、ローカルな技術環境に適したあらゆる種類のものであってよく、非限定的な例として、1つ又は複数の汎用コンピュータ,特定用途向けコンピュータ,マイクロプロセッサ,デジタル信号プロセッサ(DSP),マルチコアプロセッサ・アーキテクチャに基づくプロセッサを含んでもよい。
本発明の実施形態は、集積回路モジュールのような、様々な要素で実施されることもできる集積回路の設計は多くは自動化されたプロセスである。論理レベルの設計を、半導体基板上にエッチング・形成するための半導体回路設計に変換する複雑で強力なソフトウェアツールが利用可能である。
カリフォルニア州マウンテンビューのSynopsys, Incや、カリフォルニア州サンノゼのCadence Designのような業者が提供するプログラムは、定評のある設計ルールと実績のある設計モジュールのライブラリに基づいて、半導体チップ上に導電経路や要素を配する。半導体回路の設計が完了すると、それは、OpusやGDSII等の標準的な電子フォーマットの形で半導体製造設備又は、いわゆるfabに送られる。
前述の説明は、本発明の非限定的な実施例を十分かつ詳細に記述している。しかし、こうした前述の説明を、添付する図面及び特許請求の範囲と併せて考慮すれば、種々の変更及び適応が可能であることは、本願に関連する技術分野の当業者には明らかであろう。さらに、本発明が教示するこうした事項の全て及び同様の変形は、その全てが本発明の範囲内にある。
第1の実施形態に従う方法には、ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを復号する方法であって、
拡張レイヤピクチャのタイルセットに関する情報を取得することと;
ベースレイヤピクチャのタイルセットに関する情報を取得することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を取得することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットを独立に復号可能な領域として復号することと
を含む方法が含まれる。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、レイヤ間予測又はイントラ予測を用い、時間予測を用いずに予測されることを規定する。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、前記ベースレイヤピクチャのタイルセットのみからのレイヤ間予測又はイントラ予測を用い、時間予測を用いずに予測されることを規定する。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、時間予測又はイントラ予測を用い、レイヤ間予測を用いずに予測されることを規定する。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、レイヤ間予測を用い、時間予測もイントラ予測も用いずに予測されることを規定する。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、レイヤ間予測を用い、時間予測もイントラ予測も用いずに予測されることと、該予測ブロック内の全ての残差が0であることを規定する。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセットの再構成が対応するベースレイヤピクチャのタイルセットの再構成と同一であることを示す。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセットが動きレイヤ間予測制約タイルセットであると規定する。
実施形態によっては、前記符号化制約条件は、レイヤ間予測に用いられるベースレイヤピクチャのタイルセットが動き制約を受けることを示す。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセットがシングルループ復号タイルセットであると規定する。
実施形態によっては、シングルループ復号において、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、前記ベースレイヤピクチャがランダムアクセスピクチャである場合、時間予測又はイントラ予測を用い、レイヤ間予測を用いて予測されることを規定する。
実施形態によっては、前記方法は更に、補助拡張情報(SEI)メッセージから前記拡張レイヤピクチャのタイルセットに関する符号化制約条件を少なくとも一部取得することを含む。
実施形態によっては、前記方法は更に、第1のSEIメッセージから前記タイルセットに対するレイヤ内予測又は時間予測の制約条件を取得し、第2のSEIメッセージから前記タイルセットに対するレイヤ間予測の制約条件を取得することを含む。
実施形態によっては、前記拡張レイヤピクチャのタイルセットは、対応するベースレイヤピクチャのタイルセットに対する拡張情報であって、次のこと:
−前記拡張レイヤピクチャのタイルセットの色差忠実度を対応するベースレイヤピクチャのタイルセットの色差忠実度よりも上げること;
−前記拡張レイヤピクチャのタイルセットのビット深度を対応するベースレイヤピクチャのタイルセットのビット深度よりも上げること;
−前記拡張レイヤピクチャのタイルセットの品質を対応するベースレイヤピクチャのタイルセットの品質よりも上げること;
−前記拡張レイヤピクチャのタイルセットの空間解像度を対応するベースレイヤピクチャのタイルセットの空間解像度よりも上げること
の少なくとも1つを含む拡張情報を含む。
第2の実施形態に従う装置は、ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを復号するように構成されるビデオデコーダであって、
拡張レイヤピクチャのタイルセットに関する情報を取得することと;
ベースレイヤピクチャのタイルセットに関する情報を取得することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を取得することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットを独立に復号可能な領域として復号することと
を遂行するように構成されるビデオデコーダを備える。
第3の実施形態によれば、装置によって利用されるコードで格納されるコンピュータ可読記憶媒体であって、前記コードがプロセッサによって実行されると、前記装置に:
拡張レイヤピクチャのタイルセットに関する情報を取得することと;
ベースレイヤピクチャのタイルセットに関する情報を取得することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を取得することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットを独立に復号可能な領域として復号することと
を遂行させる、コンピュータ可読記憶媒体が提供される。
第4の実施形態によれば、少なくとも1つのプロセッサ及び少なくとも1つのメモリであって、前記少なくとも1つのメモリはそこにコードを格納し、前記コードは、前記少なくとも1つのプロセッサによって実行されると、装置に:
拡張レイヤピクチャのタイルセットに関する情報を取得することと;
ベースレイヤピクチャのタイルセットに関する情報を取得することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を取得することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットを独立に復号可能な領域として復号することと
を遂行させる、少なくとも1つのプロセッサ及び少なくとも1つのメモリが提供される。
第5の実施形態に従う方法には、拡張レイヤピクチャの1つ又は複数のタイルを符号化する方法であって、
拡張レイヤピクチャのタイルセットを規定することと;
ベースレイヤピクチャのタイルセットを規定することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を規定することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットが独立に復号可能な領域を表わすように、該タイルセットを符号化することと
を含む方法が含まれる。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、レイヤ間予測又はイントラ予測を用い、時間予測を用いずに予測されることを規定する。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、前記ベースレイヤピクチャのタイルセットのみからのレイヤ間予測又はイントラ予測を用い、時間予測を用いずに予測されることを規定する。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、時間予測又はイントラ予測を用い、レイヤ間予測を用いずに予測されることを規定する。
実施形態によっては、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセットの再構成が対応するベースレイヤピクチャのタイルセットの再構成と同一であることを示す。
実施形態によっては、前記方法は更に、前記拡張レイヤピクチャのタイルセットが動きレイヤ間予測制約タイルセットであるという符号化制約条件を規定することを含む。
実施形態によっては、前記符号化制約条件は、レイヤ間予測に用いられるベースレイヤピクチャのタイルセットが動き制約を受けることを示す。
実施形態によっては、前記方法は更に、前記拡張レイヤピクチャのタイルセットがシングルループ復号タイルセットであるという符号化制約条件を規定することを含む。
実施形態によっては、シングルループ復号において、前記符号化制約条件は、前記拡張レイヤピクチャのタイルセット内の全ての予測ブロックが、前記ベースレイヤピクチャがランダムアクセスピクチャである場合、時間予測又はイントラ予測を用い、レイヤ間予測を用いて予測されることを規定する。
実施形態によっては、前記方法は更に、補助拡張情報(SEI)メッセージの形態で前記拡張レイヤピクチャのタイルセットに関する符号化制約条件の少なくとも一部を示すことを含む。
実施形態によっては、第1のSEIメッセージは前記タイルセットに対するレイヤ内予測又は時間予測の制約条件を示すために使用され、第2のSEIメッセージは前記タイルセットに対するレイヤ間予測の制約条件を示すために使用される。
実施形態によっては、前記拡張レイヤピクチャのタイルセットは、対応するベースレイヤピクチャのタイルセットに対する拡張情報であって、次のこと:
−前記拡張レイヤピクチャのタイルセットの色差忠実度を対応するベースレイヤピクチャのタイルセットの色差忠実度よりも上げること;
−前記拡張レイヤピクチャのタイルセットのビット深度を対応するベースレイヤピクチャのタイルセットのビット深度よりも上げること;
−前記拡張レイヤピクチャのタイルセットの品質を対応するベースレイヤピクチャのタイルセットの品質よりも上げること;
−前記拡張レイヤピクチャのタイルセットの空間解像度を対応するベースレイヤピクチャのタイルセットの空間解像度よりも上げること
の少なくとも1つを含む拡張情報を含む。
第6の実施形態に従う装置は、
ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを符号化するように構成されるビデオエンコーダであって、
拡張レイヤピクチャのタイルセットを規定することと;
ベースレイヤピクチャのタイルセットを規定することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を規定することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットが独立に復号可能な領域を表わすように、該タイルセットを符号化することと
を遂行するように構成されるビデオエンコーダを備える。
第7の実施形態によれば、装置によって利用されるコードで格納されるコンピュータ可読記憶媒体であって、前記コードがプロセッサによって実行されると、前記装置に:
ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを符号化することと;
拡張レイヤピクチャのタイルセットを規定することと;
ベースレイヤピクチャのタイルセットを規定することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を規定することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットが独立に復号可能な領域を表わすように、該タイルセットを符号化することと
を遂行させる、コンピュータ可読記憶媒体が提供される。
第8の実施形態によれば、少なくとも1つのプロセッサ及び少なくとも1つのメモリであって、前記少なくとも1つのメモリはそこにコードを格納し、前記コードは、前記少なくとも1つのプロセッサによって実行されると、装置に:
ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを符号化することと;
拡張レイヤピクチャのタイルセットを規定することと;
ベースレイヤピクチャのタイルセットを規定することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を規定することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットが独立に復号可能な領域を表わすように、該タイルセットを符号化することと
を遂行させる、少なくとも1つのプロセッサ及び少なくとも1つのメモリが提供される。
第9の実施形態によれば、ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを復号するように構成されるビデオデコーダであって、
拡張レイヤピクチャのタイルセットに関する情報を取得することと;
ベースレイヤピクチャのタイルセットに関する情報を取得することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を取得することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットを独立に復号可能な領域として復号することと
を遂行するように構成されるビデオデコーダが提供される。
第10の実施形態によれば、ベースレイヤ及び少なくとも1つの拡張レイヤを含むスケーラブルビットストリームを符号化するように構成されるビデオエンコーダであって、
拡張レイヤピクチャのタイルセットを規定することと;
ベースレイヤピクチャのタイルセットを規定することと;
前記拡張レイヤピクチャのタイルセットに関する符号化制約条件であって、前記ベースレイヤピクチャに関連するレイヤ間予測制約条件を少なくとも含む符号化制約条件を規定することと;
前記符号化制約条件に従って、前記拡張レイヤピクチャのタイルセットが独立に復号可能な領域を表わすように、該タイルセットを符号化することと
を遂行するように構成されるビデオエンコーダが提供される。