(57)【要約】  コンテンツカラーボリュームメッセージを処理するためのシステム、方法、およびコンピュータ可読媒体が説明される。いくつかの例では、ビデオデータが取得される。ビデオデータは、カメラから取得されたビデオデータ、符号化ビデオデータ、または復号ビデオデータを含むことができる。ビデオデータに関連するコンテンツカラーボリューム情報が処理される。コンテンツカラーボリューム情報は、ビデオデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示す。たとえば、コンテンツカラーボリューム情報は、1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
2019517205.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータを処理する方法であって、
前記ビデオデータを取得するステップと、
前記ビデオデータに関連するコンテンツカラーボリューム情報を処理するステップとを備え、前記コンテンツカラーボリューム情報が、前記ビデオデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示し、前記コンテンツカラーボリューム情報が、前記1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、前記1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および前記1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む、
方法。
【請求項２】
前記第1のルミナンス値が、正規化最小ルミナンス値を含み、前記第2のルミナンス値が、正規化最大ルミナンス値を含む、請求項1に記載の方法。
【請求項３】
前記第1のルミナンス値が、前記1つまたは複数のピクチャの最小ルミナンス値を導出するために使用され、前記第2のルミナンス値が、前記1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される、請求項1に記載の方法。
【請求項４】
シンタックス要素が、前記ビデオデータとともに提供され、前記シンタックス要素が、前記コンテンツカラーボリューム情報のサブセットがシグナリングされることを示す、請求項1に記載の方法。
【請求項５】
前記コンテンツカラーボリューム情報が、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる、請求項1に記載の方法。
【請求項６】
前記1つまたは複数の色度座標が、前記1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む、請求項1に記載の方法。
【請求項７】
前記3つの色度座標が、前記1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、前記1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および前記1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む、請求項6に記載の方法。
【請求項８】
装置であって、
ビデオデータを記憶するように構成されたメモリと、
プロセッサとを備え、前記プロセッサが、
前記ビデオデータを取得し、
前記ビデオデータに関連するコンテンツカラーボリューム情報を処理するように構成され、前記コンテンツカラーボリューム情報が、前記ビデオデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示し、前記コンテンツカラーボリューム情報が、前記1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、前記1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および前記1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む、
装置。
【請求項９】
前記第1のルミナンス値が、正規化最小ルミナンス値を含み、前記第2のルミナンス値が、正規化最大ルミナンス値を含む、請求項8に記載の装置。
【請求項１０】
前記第1のルミナンス値が、前記1つまたは複数のピクチャの最小ルミナンス値を導出するために使用され、前記第2のルミナンス値が、前記1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される、請求項8に記載の装置。
【請求項１１】
シンタックス要素が、前記ビデオデータとともに提供され、前記シンタックス要素が、前記コンテンツカラーボリューム情報のサブセットがシグナリングされることを示す、請求項8に記載の装置。
【請求項１２】
前記コンテンツカラーボリューム情報が、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる、請求項8に記載の装置。
【請求項１３】
前記1つまたは複数の色度座標が、前記1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む、請求項8に記載の装置。
【請求項１４】
前記3つの色度座標が、前記1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、前記1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および前記1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む、請求項13に記載の装置。
【請求項１５】
ピクチャをキャプチャするためのカメラを有するモバイルデバイスを備える、請求項8に記載の装置。
【請求項１６】
前記ビデオデータを表示するためのディスプレイ
をさらに備える、請求項8に記載の装置。
【請求項１７】
命令を記憶したコンピュータ可読記憶媒体であって、前記命令が、1つまたは複数のプロセッサによって実行されたとき、前記1つまたは複数のプロセッサに、
ビデオデータを取得させ、
前記ビデオデータに関連するコンテンツカラーボリューム情報を処理させ、前記コンテンツカラーボリューム情報が、前記ビデオデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示し、前記コンテンツカラーボリューム情報が、前記1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、前記1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および前記1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む、
コンピュータ可読記憶媒体。
【請求項１８】
前記第1のルミナンス値が、正規化最小ルミナンス値を含み、前記第2のルミナンス値が、正規化最大ルミナンス値を含む、請求項17に記載のコンピュータ可読記憶媒体。
【請求項１９】
前記第1のルミナンス値が、前記1つまたは複数のピクチャの最小ルミナンス値を導出するために使用され、前記第2のルミナンス値が、前記1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される、請求項17に記載のコンピュータ可読記憶媒体。
【請求項２０】
シンタックス要素が、前記ビデオデータとともに提供され、前記シンタックス要素が、前記コンテンツカラーボリューム情報のサブセットがシグナリングされることを示す、請求項17に記載のコンピュータ可読記憶媒体。
【請求項２１】
前記コンテンツカラーボリューム情報が、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる、請求項17に記載のコンピュータ可読記憶媒体。
【請求項２２】
前記1つまたは複数の色度座標が、前記1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む、請求項17に記載のコンピュータ可読記憶媒体。
【請求項２３】
前記3つの色度座標が、前記1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、前記1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および前記1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む、請求項22に記載のコンピュータ可読記憶媒体。
【請求項２４】
装置であって、
ビデオデータを取得するための手段と、
前記ビデオデータに関連するコンテンツカラーボリューム情報を処理するための手段とを備え、前記コンテンツカラーボリューム情報が、前記ビデオデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示し、前記コンテンツカラーボリューム情報が、前記1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、前記1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および前記1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む、
装置。
【請求項２５】
前記第1のルミナンス値が、正規化最小ルミナンス値を含み、前記第2のルミナンス値が、正規化最大ルミナンス値を含む、請求項24に記載の装置。
【請求項２６】
前記第1のルミナンス値が、前記1つまたは複数のピクチャの最小ルミナンス値を導出するために使用され、前記第2のルミナンス値が、前記1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される、請求項24に記載の装置。
【請求項２７】
シンタックス要素が、前記ビデオデータとともに提供され、前記シンタックス要素が、前記コンテンツカラーボリューム情報のサブセットがシグナリングされることを示す、請求項24に記載の装置。
【請求項２８】
前記コンテンツカラーボリューム情報が、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる、請求項24に記載の装置。
【請求項２９】
前記1つまたは複数の色度座標が、前記1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む、請求項24に記載の装置。
【請求項３０】
前記3つの色度座標が、前記1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、前記1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および前記1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む、請求項29に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、ビデオコーディングおよび圧縮に関する。より詳細には、本出願は、ビデオコンテンツのコンテンツカラーボリュームを示すメッセージを生成および処理することに関する。
【背景技術】
【０００２】
多くのデバイスおよびシステムは、ビデオデータが消費のために処理および出力されることを可能にする。デジタルビデオデータは、消費者およびビデオ提供者の需要を満たすための大量のデータを含む。たとえば、ビデオデータの消費者は、高い忠実度、解像度、フレームレートなどを有する最高品質のビデオを所望する。その結果、これらの要求を満たすのに必要な大量のビデオデータが、通信ネットワーク、およびビデオデータを処理および記憶するデバイスに負担をかける。
【０００３】
ビデオデータを圧縮するために、様々なビデオコーディング技法が使用され得る。ビデオコーディングは、1つまたは複数のビデオコーディング規格に従って実行される。たとえば、ビデオコーディング規格は、高効率ビデオコーディング(HEVC:high-efficiency video coding)、アドバンストビデオコーディング(AVC:advanced video coding)、ムービングピクチャエキスパートグループ(MPEG:moving picture experts group)コーディングなどを含む。ビデオコーディングは、概して、ビデオ画像またはシーケンスの中に存在する冗長性を利用する予測方法(たとえば、インター予測、イントラ予測など)を利用する。ビデオコーディング技法の重要な目標は、ビデオ品質の劣化を回避するかまたは最小限に抑えながら、より低いビットレートを使用する形態にビデオデータを圧縮することである。絶えず進化するビデオサービスが利用可能になって、より良好なコーディング効率を有する符号化技法が必要とされる。
【発明の概要】
【課題を解決するための手段】
【０００４】
いくつかの実装形態では、ビデオコンテンツのカラーボリュームを記述する情報を含むメッセージを生成および処理するための、技法およびシステムが説明される。たとえば、ビデオ符号化デバイス(または、他の送信側デバイス)は、符号化されているコンテンツのカラーボリュームを決定することができ、ビデオコンテンツのカラーボリュームを記述するコンテンツカラーボリューム情報を有するコンテンツカラーボリュームメッセージを生成することができる。クライアント側デバイス(たとえば、ビデオ復号デバイス、ビデオプレーヤデバイス、ビデオディスプレイデバイス、または他の好適なデバイス)は、コンテンツカラーボリュームメッセージを受信することができ、コンテンツカラーボリューム情報を処理することができ、コンテンツカラーボリューム情報を使用して、デバイスに適した方法でビデオコンテンツをレンダリングまたは表示することができる。たとえば、ディスプレイを有するデバイスは、ビデオコンテンツの色特性とは異なることがあるディスプレイの色特性を最良に適合させるように、ビデオコンテンツをマッピングすることができる。任意の好適なデバイスが、いかなる特定のアプリケーションまたはプログラムにも制約されることなく、コンテンツカラーボリューム情報を使用してビデオコンテンツをレンダリングまたは表示することができる。場合によっては、カラーボリュームは、ボリュームが決定された、コンテンツの特定の処理ステージにおいて、コンテンツの境界ボリューム(bounding volume)を記述し、コンテンツの後続の処理(たとえば、色空間変換、量子化、アップサンプリング、ダウンサンプリング、および/もしくは圧縮、ならびに/または他の処理)が、結果としてコンテンツの1つまたは複数のサンプルをカラーボリュームの外部に存在させることがある。
【０００５】
コンテンツカラーボリュームメッセージによって記述されるビデオコンテンツのカラーボリュームは、ビデオコンテンツの色域、ならびにビデオコンテンツによって占有される最小ルミナンスおよび最大ルミナンスを含むことができる。最小ルミナンスおよび最大ルミナンスは、ビデオコンテンツがその中に制約されるルミナンス値であり、ビデオコンテンツに対する可能なルミナンス値の範囲を規定する。色域は、最小ルミナンスおよび最大ルミナンスによって提供されるルミナンス値の範囲の中のルミナンス値ごとに、可能なカラー値を含むことができる。いくつかの例では、色域は、ルミナンス値の範囲にわたって不変であり得る。たとえば、最大色域は、ルミナンス値の範囲の中のすべてのルミナンス値に対して使用され得る。他の例では、色域は、範囲の中のルミナンス値のうちの1つまたは複数におけるビデオコンテンツの実際の可能なカラー値に従って、ルミナンス値の範囲にわたって変化することができる。
【０００６】
いくつかの例では、コンテンツカラーボリュームメッセージは、ピクチャごとにシグナリングされ得る。たとえば、コンテンツカラーボリュームメッセージは、ビットストリームの一部であるすべてのピクチャに対して、符号化ビデオビットストリームの中に含められ得る。別の例では、コンテンツカラーボリュームメッセージは、ビットストリームのいくつかのピクチャのみに対して(たとえば、n個のピクチャごとに、すべてのランダムアクセスピクチャにおいて、またはピクチャの他のサブセットにおいて)、符号化ビデオビットストリームの中に含められ得る。いくつかの例では、コンテンツカラーボリュームメッセージは、補足エンハンスメント情報(SEI:supplemental enhancement information)メッセージであり得る。
【０００７】
少なくとも一例によれば、ビデオデータを処理する方法が提供される。方法は、ビデオデータを取得することを備える。方法は、ビデオデータに関連するコンテンツカラーボリューム情報を処理することをさらに備える。コンテンツカラーボリューム情報は、ビデオデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示す。コンテンツカラーボリューム情報は、1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
【０００８】
ビデオデータを処理する別の例では、ビデオデータを記憶するように構成されたメモリとプロセッサとを含む装置が提供される。プロセッサは、ビデオデータを取得するように構成されるとともに、それを行うことができる。プロセッサは、ビデオデータに関連するコンテンツカラーボリューム情報を処理するようにさらに構成されるとともに、それを行うことができる。コンテンツカラーボリューム情報は、ビデオデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示す。コンテンツカラーボリューム情報は、1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
【０００９】
ビデオデータを処理する別の例では、命令を記憶した非一時的コンピュータ可読媒体が提供され、命令は、1つまたは複数のプロセッサによって実行されたとき、1つまたは複数のプロセッサに、ビデオデータを取得させ、ビデオデータに関連するコンテンツカラーボリューム情報を処理させ、コンテンツカラーボリューム情報は、ビデオデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示し、コンテンツカラーボリューム情報は、1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
【００１０】
ビデオデータを処理する別の例では、ビデオデータを取得するための手段を含む装置が提供される。装置は、ビデオデータに関連するコンテンツカラーボリューム情報を処理するための手段をさらに備える。コンテンツカラーボリューム情報は、ビデオデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示す。コンテンツカラーボリューム情報は、1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
【００１１】
いくつかの態様では、第1のルミナンス値は、正規化最小ルミナンス値を含み、第2のルミナンス値は、正規化最大ルミナンス値を含む。
【００１２】
いくつかの態様では、第1のルミナンス値は、1つまたは複数のピクチャの最小ルミナンス値を導出するために使用される。いくつかの態様では、第2のルミナンス値は、1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される。
【００１３】
いくつかの態様では、シンタックス要素がビデオデータとともに提供される。シンタックス要素は、コンテンツカラーボリューム情報のサブセットがシグナリングされることを示す。
【００１４】
いくつかの態様では、コンテンツカラーボリューム情報は、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる。
【００１５】
いくつかの態様では、1つまたは複数の色度座標は、1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む。場合によっては、3つの色度座標は、1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む。
【００１６】
いくつかの態様では、装置は、ピクチャをキャプチャするためのカメラを有するモバイルデバイスを備える。いくつかの態様では、装置は、ビデオデータを表示するためのディスプレイを備える。
【００１７】
少なくとも1つの他の例によれば、ビデオデータを符号化する方法が提供される。方法は、ビデオデータを取得することを備える。方法は、ビデオデータを使用して符号化ビデオビットストリームを生成することをさらに備える。方法は、ビデオデータのためのコンテンツカラーボリューム情報を生成することをさらに備える。コンテンツカラーボリューム情報は、ビデオデータの最小ルミナンスに関連する第1のルミナンス値、ビデオデータの最大ルミナンスに関連する第2のルミナンス値、およびビデオデータの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
【００１８】
ビデオデータを符号化する別の例では、ビデオデータを記憶するように構成されたメモリとプロセッサとを含む装置が提供される。プロセッサは、ビデオデータを取得するように構成されるとともに、それを行うことができる。プロセッサは、ビデオデータを使用して符号化ビデオビットストリームを生成するようにさらに構成されるとともに、それを行うことができる。プロセッサは、ビデオデータのためのコンテンツカラーボリューム情報を生成するようにさらに構成されるとともに、それを行うことができる。コンテンツカラーボリューム情報は、ビデオデータの最小ルミナンスに関連する第1のルミナンス値、ビデオデータの最大ルミナンスに関連する第2のルミナンス値、およびビデオデータの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
【００１９】
ビデオデータを符号化する別の例では、命令を記憶した非一時的コンピュータ可読媒体が提供され、命令は、1つまたは複数のプロセッサによって実行されたとき、1つまたは複数のプロセッサに、ビデオデータを取得させ、ビデオデータを使用して符号化ビデオビットストリームを生成させ、符号化ビデオビットストリームは、ビデオデータのためのコンテンツカラーボリューム情報を含み、コンテンツカラーボリューム情報は、ビデオデータの最小ルミナンスに関連する第1のルミナンス値、ビデオデータの最大ルミナンスに関連する第2のルミナンス値、およびビデオデータの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
【００２０】
ビデオデータを符号化する別の例では、ビデオデータを取得するための手段を含む装置が提供される。装置は、ビデオデータを使用して符号化ビデオビットストリームを生成するための手段をさらに備える。装置は、ビデオデータのためのコンテンツカラーボリューム情報を生成するための手段をさらに備える。コンテンツカラーボリューム情報は、ビデオデータの最小ルミナンスに関連する第1のルミナンス値、ビデオデータの最大ルミナンスに関連する第2のルミナンス値、およびビデオデータの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
【００２１】
いくつかの態様では、ビデオデータを符号化するための上記で説明した方法、装置、およびコンピュータ可読媒体は、コンテンツカラーボリュームメッセージを生成することと、コンテンツカラーボリューム情報をコンテンツカラーボリュームメッセージの中に含めることとをさらに備え得る。いくつかの態様では、ビデオデータを符号化するための上記で説明した方法、装置、およびコンピュータ可読媒体は、コンテンツカラーボリュームメッセージをクライアントデバイスへ送信することをさらに備え得る。いくつかの態様では、ビデオデータを符号化するための上記で説明した方法、装置、およびコンピュータ可読媒体は、符号化ビデオビットストリームをクライアントデバイスへ送信することをさらに備え得る。いくつかの態様では、コンテンツカラーボリュームメッセージは、符号化ビデオビットストリームの中で送信される。いくつかの態様では、コンテンツカラーボリュームメッセージは、符号化ビデオビットストリームとは別個に送信される。いくつかの態様では、コンテンツカラーボリューム情報は、ビットストリームの中で、またはビットストリームとは別個に、ピクチャレベルにおいて含められる。
【００２２】
いくつかの態様では、第1のルミナンス値は、正規化最小ルミナンス値を含み、第2のルミナンス値は、正規化最大ルミナンス値を含む。
【００２３】
いくつかの態様では、第1のルミナンス値は、ビデオデータの最小ルミナンス値を導出するために使用される。いくつかの態様では、第2のルミナンス値は、ビデオデータの最大ルミナンス値を導出するために使用される。
【００２４】
いくつかの態様では、コンテンツカラーボリューム情報は、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる。
【００２５】
いくつかの態様では、1つまたは複数の色度座標は、ビデオコンテンツの3原色を指定する3つの色度座標を含む。場合によっては、3つの色度座標は、ビデオデータの緑色の原色用の緑色の色度座標、ビデオデータの赤色の原色用の赤色の色度座標、およびビデオデータの青色の原色用の青色の色度座標を含む。
【００２６】
いくつかの態様では、装置は、ピクチャをキャプチャするためのカメラを有するモバイルデバイスを備える。
【００２７】
少なくとも1つの他の例によれば、ビデオデータを処理する方法が提供される。方法は、ビデオデータを取得することを備える。方法は、ビデオデータの1つまたは複数のピクチャのためのコンテンツカラーボリューム情報を取得することをさらに備える。コンテンツカラーボリューム情報は、1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。方法は、コンテンツカラーボリューム情報を使用して1つまたは複数のピクチャのコンテンツカラーボリュームを決定することをさらに備える。
【００２８】
ビデオデータを処理する別の例では、ビデオデータを記憶するように構成されたメモリとプロセッサとを含む装置が提供される。プロセッサは、ビデオデータを取得するように構成されるとともに、それを行うことができる。プロセッサは、ビデオデータの1つまたは複数のピクチャのためのコンテンツカラーボリューム情報を取得するようにさらに構成されるとともに、それを行うことができる。コンテンツカラーボリューム情報は、1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。プロセッサは、コンテンツカラーボリューム情報を使用して1つまたは複数のピクチャのコンテンツカラーボリュームを決定するようにさらに構成されるとともに、それを行うことができる。
【００２９】
ビデオデータを処理する別の例では、命令を記憶した非一時的コンピュータ可読媒体が提供され、命令は、1つまたは複数のプロセッサによって実行されたとき、1つまたは複数のプロセッサに、ビデオデータを取得することと、ビデオデータの1つまたは複数のピクチャのためのコンテンツカラーボリューム情報を取得することであって、コンテンツカラーボリューム情報が、1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含むことと、コンテンツカラーボリューム情報を使用して1つまたは複数のピクチャのコンテンツカラーボリュームを決定することとを行わせる。
【００３０】
ビデオデータを処理する別の例では、ビデオデータを取得するための手段を含む装置が提供される。装置は、ビデオデータの1つまたは複数のピクチャのためのコンテンツカラーボリューム情報を取得するための手段をさらに備える。コンテンツカラーボリューム情報は、1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。装置は、コンテンツカラーボリューム情報を使用して1つまたは複数のピクチャのコンテンツカラーボリュームを決定するための手段をさらに備える。
【００３１】
いくつかの態様では、装置はまた、ビデオデータ(たとえば、ビデオビットストリームまたは復号ビデオデータ)を受信するように構成された受信機を含み得る。そのような態様では、ビデオデータを処理するための上記で説明した方法、装置、およびコンピュータ可読媒体は、ビデオデータを取得するために、かつコンテンツカラーボリューム情報を取得するために、符号化ビデオビットストリームを復号することをさらに備え得る。そのような態様では、ビデオデータを処理するための上記で説明した方法、装置、およびコンピュータ可読媒体は、以前に復号されたビデオデータを取得することと、コンテンツカラーボリューム情報を使用して復号ビデオデータを処理することとをさらに備え得る。
【００３２】
いくつかの態様では、第1のルミナンス値は、正規化最小ルミナンス値を含み、第2のルミナンス値は、正規化最大ルミナンス値を含む。
【００３３】
いくつかの態様では、1つまたは複数のピクチャのコンテンツカラーボリュームを決定することは、第1のルミナンス値を使用して1つまたは複数のピクチャの最小ルミナンス値を導出することを含む。いくつかの態様では、1つまたは複数のピクチャのコンテンツカラーボリュームを決定することは、第2のルミナンス値を使用して1つまたは複数のピクチャの最大ルミナンス値を導出することを含む。
【００３４】
いくつかの態様では、コンテンツカラーボリューム情報は、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる。
【００３５】
いくつかの態様では、1つまたは複数の色度座標は、1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む。場合によっては、3つの色度座標は、ビデオデータの緑色の原色用の緑色の色度座標、ビデオデータの赤色の原色用の赤色の色度座標、およびビデオデータの青色の原色用の青色の色度座標を含む。
【００３６】
いくつかの態様では、コンテンツカラーボリュームメッセージは、符号化ビデオビットストリームの中で送信される。いくつかの態様では、コンテンツカラーボリュームメッセージは、符号化ビデオビットストリームとは別個に送信される。いくつかの態様では、コンテンツカラーボリューム情報は、ビットストリームの中で、またはビットストリームとは別個に、ピクチャレベルにおいて含められる。
【００３７】
いくつかの態様では、装置は、ビデオデータを表示するためのディスプレイを含む。いくつかの態様では、装置は、カメラを有するモバイルデバイスを含む。
【００３８】
本概要は、特許請求される主題の主要または不可欠な特徴を識別するものでなく、特許請求される主題の範囲を決定するために独立して使用されるものでもない。本主題は、この特許の明細書全体、いずれかまたはすべての図面、および各請求項の適切な部分への参照によって理解されるべきである。
【００３９】
上記のことは、他の特徴および実施形態とともに、以下の明細書、特許請求の範囲、および添付図面を参照するとより明らかになろう。
【００４０】
本特許または出願ファイルは、カラーで仕上げられた少なくとも1つの図面を含む。カラー図面を有するこの特許または特許出願公開の複製は、請求および必要な手数料の支払いがあり次第、特許庁によって提供される。
【００４１】
本発明の例示的な実施形態が、以下の図面を参照しながら以下で詳細に説明される。
【図面の簡単な説明】
【００４２】
【図１】いくつかの例による符号化デバイスおよび復号デバイスの一例を示すブロック図である。
【図２】いくつかの例による、BT.709色空間におけるビデオコンテンツおよびBT.2020色空間におけるビデオコンテンツに対するスペクトル軌跡および色域の例を示す図である。
【図３】いくつかの例による、ルミナンス値におけるビデオコンテンツのコンテンツ色域の一例を示す図である。
【図４】いくつかの例による、ビデオコンテンツのコンテンツ色域、コンテナ色域、およびディスプレイ色域の例を示す図である。
【図５】いくつかの例による、ビデオコンテンツのコンテンツ色域、コンテナ色域、およびディスプレイ色域の他の例を示す図である。
【図６】いくつかの例による、ビデオコンテンツの可能なルミナンス値の範囲にわたるビデオコンテンツのコンテンツ色域の一例を示す図である。
【図７】いくつかの例による、ビデオコンテンツの可能なルミナンス値の範囲にわたるビデオコンテンツのコンテンツ色域の別の例を示す図である。
【図８】いくつかの例による、カラーコンテンツボリューム補足エンハンスメント情報(SEI)メッセージを有するビデオビットストリームの一例を示す図である。
【図９】いくつかの例による、ビデオデータを処理するプロセスの一例を示すフローチャートである。
【図１０】いくつかの例による、ビデオデータを符号化するプロセスの一例を示すフローチャートである。
【図１１】いくつかの例による、ビデオデータを処理するプロセスの一例を示すフローチャートである。
【図１２】いくつかの例による例示的なビデオ符号化デバイスを示すブロック図である。
【図１３】いくつかの例による例示的なビデオ復号デバイスを示すブロック図である。
【発明を実施するための形態】
【００４３】
本開示のいくつかの態様および実施形態が以下で提供される。当業者に明らかになるように、これらの態様および実施形態のうちのいくつかは独立に適用されてよく、それらのうちのいくつかは組み合わせて適用されてよい。以下の説明では、説明のために、本発明の実施形態の完全な理解をもたらすように具体的な詳細が説明される。しかしながら、様々な実施形態がこれらの具体的な詳細なしに実践され得ることは明らかであろう。図および説明は限定的であることを意図しない。
【００４４】
以下の説明は、例示的な実施形態のみを提供し、本開示の範囲、適用性、または構成を限定することを意図しない。むしろ、例示的な実施形態の以下の説明は、例示的な実施形態を実施することを可能にする説明を当業者に提供する。添付の特許請求の範囲に記載したような本発明の趣旨および範囲から逸脱することなく、様々な変更が要素の機能および構成に加えられ得ることを理解されたい。
【００４５】
本実施形態の十分な理解をもたらすために、以下の説明において具体的な詳細が与えられる。しかしながら、本実施形態がこれらの具体的な詳細なしに実践され得ることが、当業者によって理解されよう。たとえば、不必要な詳細で本実施形態を不明瞭にしないように、回路、システム、ネットワーク、プロセス、および他の構成要素がブロック図の形態で構成要素として示されることがある。他の事例では、本実施形態を不明瞭にすることを避けるために、よく知られている回路、プロセス、アルゴリズム、構造、および技法は、不必要な詳細なしに示されることがある。
【００４６】
また、個々の実施形態がフローチャート、フロー図、データフロー図、構造図、またはブロック図として示されるプロセスとして説明され得ることに留意されたい。フローチャートは逐次プロセスとして動作を説明することがあるが、動作の多くは並列または同時に実行され得る。加えて、動作の順序は並べ替えられてよい。プロセスは、その動作が完了するときに終了するが、図に含まれない追加のステップを有することがある。プロセスは、方法、関数、プロシージャ、サブルーチン、サブプログラムなどに相当し得る。プロセスが関数に相当するとき、その終了は、その関数が呼出し関数またはメイン関数に戻ることに相当し得る。
【００４７】
「コンピュータ可読媒体」という用語は、限定はしないが、ポータブルまたは非ポータブルの記憶デバイス、光記憶デバイス、ならびに命令および/またはデータを記憶、収容、または搬送することができる様々な他の媒体を含む。コンピュータ可読媒体は、データがそこに記憶され得るとともに、ワイヤレスにまたは有線接続を介して伝搬する搬送波および/または一時的な電子信号を含まない、非一時的媒体を含み得る。非一時的媒体の例は、限定はしないが、磁気ディスクもしくは磁気テープ、コンパクトディスク(CD)もしくはデジタル多用途ディスク(DVD)などの光記憶媒体、フラッシュメモリ、メモリ、またはメモリデバイスを含み得る。コンピュータ可読媒体は、プロシージャ、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、クラス、または命令、データ構造、もしくはプログラムステートメントの任意の組合せを表し得る、その上に記憶されたコードおよび/または機械実行可能命令を有し得る。コードセグメントは、情報、データ、引数、パラメータ、またはメモリ内容を渡すことおよび/または受けることによって、別のコードセグメントまたはハードウェア回路に結合され得る。情報、引数、パラメータ、データなどは、メモリ共有、メッセージパッシング、トークンパッシング、ネットワーク送信などを含む、任意の好適な手段を介して渡されてよく、転送されてよく、または送信されてよい。
【００４８】
さらに、実施形態は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはこれらの任意の組合せによって実装されてよい。ソフトウェア、ファームウェア、ミドルウェア、またはマイクロコードで実装されるとき、必要なタスクを実行するためのプログラムコードまたはコードセグメント(たとえば、コンピュータプログラム製品)は、コンピュータ可読媒体または機械可読媒体に記憶され得る。プロセッサは、必要なタスクを実行し得る。
【００４９】
ビデオエンコーダ、ビデオデコーダ、ビデオプレーヤ、ビデオディスプレイ、および/または他のビデオ処理デバイスを使用するビデオ処理およびビデオコーディングのいくつかのシステムおよび方法が、本明細書で説明される。いくつかの例では、ビデオコンテンツのカラーボリュームを記述する情報を含むメッセージを生成および処理するための、1つまたは複数のシステムおよび方法が説明される。メッセージは、補足エンハンスメント情報(SEI)メッセージまたは他の好適なメッセージを含むことができる。クライアント側デバイスは、デバイスのパラメータに従ってビデオコンテンツをレンダリングまたは表示するために、コンテンツカラーボリューム情報を使用することができる。そのようなシステムおよび方法の詳細が、以下でさらに詳細に説明される。
【００５０】
より多くのデバイスおよびシステムが、デジタルビデオデータを消費するための能力を消費者に提供するにつれて、効率的なビデオコーディング技法に対する必要がより重要になる。デジタルビデオデータの中に存在する大量のデータを処理するのに必要な記憶要件および送信要件を低減するために、ビデオコーディングが必要とされる。高いビデオ品質を維持しながらより低いビットレートを使用する形態にビデオデータを圧縮するために、様々なビデオコーディング技法が使用され得る。
【００５１】
図1は、符号化デバイス104および復号デバイス112を含むシステム100の一例を示すブロック図である。符号化デバイス104はソースデバイスの一部であってよく、復号デバイス112は受信デバイスの一部であってよい。ソースデバイスおよび/または受信デバイスは、モバイルもしくは固定の電話ハンドセット(たとえば、スマートフォン、セルラー電話など)、デスクトップコンピュータ、ラップトップもしくはノートブックコンピュータ、タブレットコンピュータ、セットトップボックス、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲーミングコンソール、ビデオストリーミングデバイス、インターネットプロトコル(IP)カメラ、または任意の他の好適な電子デバイスなどの、電子デバイスを含み得る。いくつかの例では、ソースデバイスおよび受信デバイスは、ワイヤレス通信用の1つまたは複数のワイヤレストランシーバを含み得る。本明細書で説明するコーディング技法は、(たとえば、インターネットを介した)ストリーミングビデオ送信、テレビジョン放送もしくは送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例を含む、様々なマルチメディア用途におけるビデオコーディングに適用可能である。いくつかの例では、システム100は、ビデオ会議、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、ゲーミング、および/またはビデオ電話などの適用例をサポートするために、一方向または双方向のビデオ送信をサポートすることができる。
【００５２】
符号化デバイス104(すなわち、エンコーダ)は、符号化ビデオビットストリームを生成するためのビデオコーディング規格またはビデオコーディングプロトコルを使用して、ビデオデータを符号化するために使用され得る。ビデオコーディング規格は、ITU-T H.261、ISO/IEC MPEG-1 Visual、ITU-T H.262またはISO/IEC MPEG-2 Visual、ITU-T H.263、ISO/IEC MPEG-4 Visual、ならびにそのスケーラブルビデオコーディング(SVC:Scalable Video Coding)拡張およびマルチビュービデオコーディング(MVC:Multiview Video Coding)拡張を含むITU-T H.264(ISO/IEC MPEG-4 AVCとも呼ばれる)を含む。より最近のビデオコーディング規格、すなわち高効率ビデオコーディング(HEVC)が、ITU-Tビデオコーディングエキスパートグループ(VCEG:Video Coding Experts Group)とISO/IECムービングピクチャエキスパートグループ(MPEG)とのビデオコーディング共同研究部会(JCT-VC)によって確定された。MV-HEVCと呼ばれるHEVCのマルチビュー拡張、およびSHVCと呼ばれるHEVCのスケーラブル拡張、または任意の他の好適なコーディングプロトコルを含む、HEVCの様々な拡張が、マルチレイヤビデオコーディングを扱い、同様にJCT-VCによって開発されている。
【００５３】
本明細書で説明する多くの実施形態が、HEVC規格またはその拡張を使用する例を提供する。しかしながら、本明細書で説明する技法およびシステムはまた、AVC、MPEG、それらの拡張、あるいはすでに利用可能であるかまたはまだ利用可能もしくは開発済みでない他の好適なコーディング規格などの、他のコーディング規格に適用可能であり得る。したがって、本明細書で説明する技法およびシステムは特定のビデオコーディング規格を参照しながら説明されることがあるが、説明がその特定の規格だけに適用されるものと解釈されるべきでないことを、当業者なら諒解されよう。
【００５４】
図1を参照すると、ビデオソース102は、ビデオデータを符号化デバイス104に提供し得る。ビデオソース102は、ソースデバイスの一部であってよく、またはソースデバイス以外のデバイスの一部であってもよい。ビデオソース102は、ビデオキャプチャデバイス(たとえば、ビデオカメラ、カメラフォン、ビデオフォンなど)、記憶されたビデオを収容するビデオアーカイブ、ビデオデータを提供するビデオサーバもしくはコンテンツプロバイダ、ビデオサーバもしくはコンテンツプロバイダからビデオを受信するビデオフィードインターフェース、コンピュータグラフィックスビデオデータを生成するためのコンピュータグラフィックスシステム、そのようなソースの組合せ、または任意の他の好適なビデオソースを含み得る。
【００５５】
ビデオソース102からのビデオデータは、1つまたは複数の入力ピクチャまたは入力フレームを含み得る。ピクチャまたはフレームは、ビデオの一部である静止画像である。符号化デバイス104のエンコーダエンジン106(または、エンコーダ)は、ビデオデータを符号化して符号化ビデオビットストリームを生成する。いくつかの例では、符号化ビデオビットストリーム(または、「ビデオビットストリーム」もしくは「ビットストリーム」)は、一連の1つまたは複数のコード化ビデオシーケンスである。コード化ビデオシーケンス(CVS:coded video sequence)は、ベースレイヤの中でいくつかの特性を伴うランダムアクセスポイントピクチャを有するアクセスユニット(AU:access unit)から始めて、ベースレイヤの中でいくつかの特性を伴うランダムアクセスポイントピクチャを有する次のAUの直前までの、一連のAUを含む。たとえば、CVSを開始するランダムアクセスポイントピクチャのいくつかの特性は、1に等しいRASLフラグ(たとえば、NoRaslOutputFlag)を含み得る。そうでない場合、ランダムアクセスポイントピクチャ(0に等しいRASLフラグを有する)はCVSを開始しない。アクセスユニット(AU)は、1つまたは複数のコード化ピクチャ、および同じ出力時間を共有するコード化ピクチャに対応する制御情報を含む。ピクチャのコード化スライスは、ビットストリームレベルにおいて、ネットワークアブストラクションレイヤ(NAL:network abstraction layer)ユニットと呼ばれるデータ単位の中にカプセル化される。たとえば、HEVCビデオビットストリームは、NALユニットを含む1つまたは複数のCVSを含み得る。NALユニットの各々は、NALユニットヘッダを有する。一例では、ヘッダは、H.264/AVCに対して1バイト(マルチレイヤ拡張を除いて)、HEVCに対して2バイトである。NALユニットヘッダの中のシンタックス要素は、指定されたビットを取り、したがって、すべての種類のシステム、および特にトランスポートストリーム、リアルタイムトランスポート(RTP)プロトコル、ファイルフォーマットなどの、トランスポートレイヤにとって認識可能である。
【００５６】
ビデオコーディングレイヤ(VCL:video coding layer)NALユニットおよび非VCL NALユニットを含む、NALユニットの2つのクラスがHEVC規格に存在する。VCL NALユニットは、コード化ピクチャデータの1つのスライスまたはスライスセグメント(以下で説明する)を含み、非VCL NALユニットは、1つまたは複数のコード化ピクチャに関係する制御情報を含む。場合によっては、NALユニットはパケットと呼ばれることがある。HEVC AUは、コード化ピクチャデータを含むVCL NALユニット、および(もしあれば)コード化ピクチャデータに対応する非VCL NALユニットを含む。
【００５７】
NALユニットは、ビデオの中のピクチャのコード化表現などの、ビデオデータのコード化表現を形成するビットのシーケンス(たとえば、符号化ビデオビットストリーム、ビットストリームのCVSなど)を含み得る。エンコーダエンジン106は、各ピクチャを複数のスライスに区分することによって、ピクチャのコード化表現を生成する。スライスの中の情報が、同じピクチャ内の他のスライスからのデータに依存することなくコーディングされるように、スライスは他のスライスとは無関係である。スライスは、独立したスライスセグメント、および存在する場合、前のスライスセグメントに依存する1つまたは複数の従属したスライスセグメントを含む、1つまたは複数のスライスセグメントを含む。スライスは、次いで、ルーマサンプルおよびクロマサンプルのコーディングツリーブロック(CTB:coding tree block)に区分される。ルーマサンプルのCTB、およびクロマサンプルの1つまたは複数のCTBは、サンプル用のシンタックスとともにコーディングツリーユニット(CTU:coding tree unit)と呼ばれる。CTUは、HEVC符号化のための基本処理単位である。CTUは、様々なサイズの複数のコーディングユニット(CU:coding unit)に分割され得る。CUは、コーディングブロック(CB:coding block)と呼ばれるルーマサンプルアレイおよびクロマサンプルアレイを含む。
【００５８】
ルーマCBおよびクロマCBは、さらに予測ブロック(PB:prediction block)に分割され得る。PBは、(使用するために利用可能であるかまたは有効にされているとき)インター予測またはイントラブロックコピー予測のために同じ動きパラメータを使用するルーマ成分またはクロマ成分のサンプルのブロックである。ルーマPBおよび1つまたは複数のクロマPBは、関連するシンタックスとともに予測ユニット(PU:prediction unit)を形成する。インター予測の場合、動きパラメータのセット(たとえば、1つまたは複数の動きベクトル、参照インデックスなど)は、PUごとにビットストリームの中でシグナリングされ、ルーマPBおよび1つまたは複数のクロマPBのインター予測のために使用される。イントラブロックコピー予測の場合、動きパラメータのセット(たとえば、1つまたは複数のブロックベクトルなど)も、PUごとにシグナリングされ得、イントラブロックコピー予測のために使用され得る。CBはまた、1つまたは複数の変換ブロック(TB:transform block)に区分され得る。TBは、予測残差信号をコーディングするために同じ2次元変換がそこで適用される、色成分のサンプルの正方形ブロックを表す。変換ユニット(TU:transform unit)は、ルーマサンプルおよびクロマサンプルのTB、ならびに対応するシンタックス要素を表す。
【００５９】
CUのサイズは、コーディングモードのサイズに対応し、形状が正方形であり得る。たとえば、CUのサイズは、8×8サンプル、16×16サンプル、32×32サンプル、64×64サンプル、または対応するCTUのサイズまでの任意の他の適切なサイズであってよい。本明細書で使用する「N×N」という句は、垂直寸法および水平寸法に関してビデオブロックのピクセル寸法(たとえば、8ピクセル×8ピクセル)を指すために使用される。ブロックの中のピクセルは、行および列をなして配置され得る。いくつかの実施形態では、ブロックは、水平方向において垂直方向と同じ数のピクセルを有しなくてもよい。CUに関連するシンタックスデータは、たとえば、1つまたは複数のPUへのCUの区分を記述し得る。区分モードは、CUがイントラ予測モード符号化されるのか、それともインター予測モード符号化されるのかの間で異なり得る。PUは、形状が非正方形であるように区分されてよい。CUに関連するシンタックスデータはまた、たとえば、CTUによる1つまたは複数のTUへのCUの区分を記述し得る。TUは、形状が正方形または非正方形であり得る。
【００６０】
HEVC規格によれば、変換は、変換ユニット(TU)を使用して実行され得る。TUは、異なるCUに対して異なってよい。TUは、所与のCU内のPUのサイズに基づいてサイズ決定され得る。TUは、同じサイズであってよく、またはPUよりも小さくてもよい。いくつかの例では、CUに対応する残差サンプルは、残差4分木(RQT:residual quad tree)と呼ばれる4分木構造を使用して、より小さいユニットに再分割され得る。RQTのリーフノードは、TUに対応し得る。TUに関連するピクセル差分値は、変換係数を生成するように変換され得る。変換係数は、次いで、エンコーダエンジン106によって量子化され得る。
【００６１】
ビデオデータのピクチャがCUに区分されると、エンコーダエンジン106は、予測モードを使用して各PUを予測する。予測ユニットまたは予測ブロックは、次いで、残差(以下で説明する)を得るために元のビデオデータから減算される。CUごとに、予測モードが、シンタックスデータを使用してビットストリームの内部でシグナリングされ得る。予測モードは、イントラ予測(または、イントラピクチャ予測)またはインター予測(または、インターピクチャ予測)を含み得る。イントラ予測は、ピクチャ内で空間的に隣接するサンプル間の相関を利用する。たとえば、イントラ予測を使用すると、たとえば、PUにとっての平均値を見つけるためのDC予測、平坦面をPUに適合させるための平面予測、隣接データから外挿するための方向予測、または任意の他の好適なタイプの予測を使用して、同じピクチャの中の隣接画像データから各PUが予測される。インター予測は、画像サンプルのブロックに対する動き補償予測を導出するために、ピクチャ間の時間的な相関を使用する。たとえば、インター予測を使用すると、(出力順序において現在ピクチャの前または後の)1つまたは複数の参照ピクチャの中の画像データからの動き補償予測を使用して、各PUが予測される。ピクチャエリアを、インターピクチャ予測を使用してコーディングすべきか、それともイントラピクチャ予測を使用してコーディングすべきかという決定は、たとえば、CUレベルにおいて行われ得る。
【００６２】
いくつかの例では、ピクチャの1つまたは複数のスライスは、スライスタイプが割り当てられる。スライスタイプは、Iスライス、Pスライス、およびBスライスを含む。Iスライス(独立に復号可能なイントラフレーム)は、イントラ予測のみによってコーディングされているピクチャのスライスであり、したがって、Iスライスがスライスの任意の予測ユニットまたは予測ブロックを予測するためにフレーム内のデータしか必要としないので、独立に復号可能である。Pスライス(単方向予測フレーム)は、イントラ予測を用いて、かつ単方向インター予測を用いてコーディングされ得るピクチャのスライスである。Pスライス内の各予測ユニットまたは予測ブロックは、イントラ予測またはインター予測のいずれかを用いてコーディングされる。インター予測が適用されるとき、予測ユニットまたは予測ブロックは、1つの参照ピクチャのみによって予測され、したがって、参照サンプルは、1つのフレームの1つの参照領域だけからのものである。Bスライス(双方向予測フレーム)は、イントラ予測を用いて、かつインター予測(たとえば、双予測または単予測のいずれか)を用いてコーディングされ得るピクチャのスライスである。Bスライスの予測ユニットまたは予測ブロックは、2つの参照ピクチャから双方向に予測され得、ここで、各ピクチャは、1つの参照領域に寄与し、2つの参照領域のサンプルセットが重み付けられて(たとえば、等しい重みを用いて、または異なる重みを用いて)、双方向予測ブロックの予測信号を生成する。上述のように、1つのピクチャのスライスは、独立にコーディングされる。場合によっては、ピクチャは、ただ1つのスライスとしてコーディングされ得る。
【００６３】
PUは、予測プロセスに関係するデータ(たとえば、動きパラメータまたは他の好適なデータ)を含み得る。たとえば、PUがイントラ予測を使用して符号化されるとき、PUは、PU用のイントラ予測モードを記述するデータを含み得る。別の例として、PUがインター予測を使用して符号化されるとき、PUは、PU用の動きベクトルを規定するデータを含み得る。PU用の動きベクトルを規定するデータは、たとえば、動きベクトルの水平成分(Δx)、動きベクトルの垂直成分(Δy)、動きベクトルに対する分解能(たとえば、整数精度、1/4ピクセル精度、または1/8ピクセル精度)、動きベクトルが指す参照ピクチャ、参照インデックス、動きベクトル用の参照ピクチャリスト(たとえば、リスト0、リスト1、またはリストC)、またはそれらの任意の組合せを記述し得る。
【００６４】
符号化デバイス104は、次いで、変換および量子化を実行し得る。たとえば、予測に続いて、エンコーダエンジン106は、PUに対応する残差値を計算し得る。残差値は、コーディングされているピクセルの現在ブロック(PU)と現在ブロックを予測するために使用される予測ブロック(たとえば、現在ブロックの予測されたバージョン)との間のピクセル差分値を備え得る。たとえば、予測ブロックを生成した(たとえば、インター予測またはイントラ予測を発した)後、エンコーダエンジン106は、予測ユニットによって生成された予測ブロックを現在ブロックから減算することによって、残差ブロックを生成することができる。残差ブロックは、現在ブロックのピクセル値と予測ブロックのピクセル値との間の差分を定量化するピクセル差分値のセットを含む。いくつかの例では、残差ブロックは、2次元のブロックフォーマット(たとえば、ピクセル値の2次元行列または2次元アレイ)で表され得る。そのような例では、残差ブロックは、ピクセル値の2次元表現である。
【００６５】
予測が実行された後に残ることがある任意の残差データは、ブロック変換を使用して変換され、ブロック変換は、離散コサイン変換、離散サイン変換、整数変換、ウェーブレット変換、他の好適な変換関数、またはそれらの任意の組合せに基づき得る。場合によっては、1つまたは複数のブロック変換(たとえば、サイズ32×32、16×16、8×8、4×4、または他の好適なサイズ)が、各CUにおける残差データに適用され得る。いくつかの実施形態では、エンコーダエンジン106によって実施される変換プロセスおよび量子化プロセスのためにTUが使用され得る。1つまたは複数のPUを有する所与のCUはまた、1つまたは複数のTUを含み得る。以下でさらに詳細に説明するように、残差値は、ブロック変換を使用して変換係数に変換され得、次いで、TUを使用して量子化および走査されて、エントロピーコーディングのためのシリアル化変換係数を生成し得る。
【００６６】
いくつかの実施形態では、CUのPUを使用するイントラ予測コーディングまたはインター予測コーディングに続いて、エンコーダエンジン106は、CUのTUに対する残差データを計算し得る。PUは、空間領域(すなわち、ピクセル領域)におけるピクセルデータを備え得る。TUは、ブロック変換を適用した後の、変換領域における係数を備え得る。前記のように、残差データは、符号化されていないピクチャのピクセルとPUに対応する予測値との間のピクセル差分値に相当し得る。エンコーダエンジン106は、CUに対する残差データを含むTUを形成し得、次いで、TUを変換してCUに対する変換係数を生成し得る。
【００６７】
エンコーダエンジン106は、変換係数の量子化を実行し得る。量子化は、変換係数を量子化することによってさらなる圧縮をもたらして、係数を表すために使用されるデータの量を低減する。たとえば、量子化は、係数の一部または全部に関連するビット深度を低減し得る。一例では、nビット値を有する係数は、量子化の間にmビット値に切り捨てられてよく、nはmよりも大きい。
【００６８】
量子化が実行されると、コード化ビデオビットストリームは、量子化変換係数、予測情報(たとえば、予測モード、動きベクトル、ブロックベクトルなど)、区分情報、および他のシンタックスデータなどの任意の他の好適なデータを含む。コード化ビデオビットストリームの様々な要素が、次いで、エンコーダエンジン106によってエントロピー符号化され得る。いくつかの例では、エンコーダエンジン106は、既定の走査順序を利用して量子化変換係数を走査して、エントロピー符号化され得るシリアル化ベクトルを生成し得る。いくつかの例では、エンコーダエンジン106は適応走査を実行し得る。量子化変換係数を走査してベクトル(たとえば、1次元ベクトル)を形成した後、エンコーダエンジン106は、ベクトルをエントロピー符号化し得る。たとえば、エンコーダエンジン106は、コンテキスト適応型可変長コーディング、コンテキスト適応型バイナリ算術コーディング、シンタックスベースコンテキスト適応型バイナリ算術コーディング、確率間隔区分エントロピーコーディング、または別の好適なエントロピー符号化技法を使用してよい。
【００６９】
前に説明したように、HEVCビットストリームは、VCL NALユニットおよび非VCL NALユニットを含む、NALユニットのグループを含む。VCL NALユニットは、コード化ビデオビットストリームを形成するコード化ピクチャデータを含む。たとえば、コード化ビデオビットストリームを形成するビットのシーケンスが、VCL NALユニットの中に存在する。非VCL NALユニットは、他の情報に加えて、符号化ビデオビットストリームに関係する高レベル情報を有するパラメータセットを含み得る。たとえば、パラメータセットは、ビデオパラメータセット(VPS:video parameter set)、シーケンスパラメータセット(SPS:sequence parameter set)、およびピクチャパラメータセット(PPS:picture parameter set)を含み得る。パラメータセットの目的の例は、ビットレート効率、エラーレジリエンシー、およびシステムレイヤインターフェースを提供することを含む。各スライスは、スライスを復号するために復号デバイス112が使用し得る情報にアクセスするために、単一のアクティブなPPS、SPS、およびVPSを参照する。識別子(ID)は、パラメータセットごとにコーディングされてよく、VPS ID、SPS ID、およびPPS IDを含む。SPSは、SPS IDおよびVPS IDを含む。PPSは、PPS IDおよびSPS IDを含む。各スライスヘッダは、PPS IDを含む。IDを使用すると、アクティブなパラメータセットが所与のスライスに対して識別され得る。
【００７０】
PPSは、所与のピクチャの中のすべてのスライスに適用される情報を含む。このことにより、ピクチャの中のすべてのスライスは、同じPPSを参照する。異なるピクチャの中のスライスも、同じPPSを参照し得る。SPSは、同じコード化ビデオシーケンス(CVS)またはビットストリームの中のすべてのピクチャに適用される情報を含む。前に説明したように、コード化ビデオシーケンスは、ベースレイヤの中で(上記で説明した)いくつかの特性を伴うランダムアクセスポイントピクチャ(たとえば、瞬時復号参照(IDR:instantaneous decode reference)ピクチャもしくはブロークンリンクアクセス(BLA:broken link access)ピクチャ、または他の適切なランダムアクセスポイントピクチャ)から始めて、ベースレイヤの中でいくつかの特性を伴うランダムアクセスポイントピクチャを有する次のアクセスユニット(AU)の直前(または、ビットストリームの末尾)までの、一連のAUである。SPSの中の情報は、コード化ビデオシーケンス内でピクチャからピクチャへと変化しないことがある。コード化ビデオシーケンスの中のピクチャは、同じSPSを使用し得る。VPSは、コード化ビデオシーケンス内またはビットストリーム内のすべてのレイヤに適用される情報を含む。VPSは、コード化ビデオシーケンス全体に適用されるシンタックス要素を有するシンタックス構造を含む。いくつかの実施形態では、VPS、SPS、またはPPSは、符号化ビットストリームとともにインバンド(in-band)で送信され得る。いくつかの実施形態では、VPS、SPS、またはPPSは、コード化ビデオデータを含むNALユニットとは別個の送信の中で、アウトオブバンド(out-of-band)で送信され得る。
【００７１】
ビデオビットストリームはまた、補足エンハンスメント情報(SEI)メッセージを含むことができる。たとえば、SEI NALユニットは、ビデオビットストリームの一部であり得る。場合によっては、SEIメッセージは、復号プロセスによって必要とされない情報を含むことができる。たとえば、SEIメッセージの中の情報は、デコーダがビットストリームのビデオピクチャを復号するのに必須でないことがあるが、デコーダは、ピクチャ(たとえば、復号出力)の表示または処理を改善するためにその情報を使用することができる。SEIメッセージの中の情報は、埋込みメタデータであってよい。例示的な一例では、SEIメッセージの中の情報は、コンテンツの視認性を改善するためにデコーダ側エンティティによって使用され得る。いくつかの事例では、いくつかのアプリケーション規格は、アプリケーション規格に準拠するすべてのデバイスに品質の改善がもたらされ得るように、ビットストリームの中にそのようなSEIメッセージの存在を要求することがある(たとえば、多くの他の例に加えて、SEIメッセージがビデオのすべてのフレームに対して搬送されるフレーム互換平面立体視3DTVビデオフォーマット用のフレームパッキングSEIメッセージの搬送、回復点SEIメッセージの処理、DVBにおけるパンスキャン矩形SEIメッセージの使用)。
【００７２】
符号化デバイス104の出力部110は、符号化ビデオビットストリームデータを構成するNALユニットを、通信リンク120を介して受信デバイスとしての復号デバイス112へ送り得る。復号デバイス112の入力部114は、NALユニットを受信し得る。通信リンク120は、ワイヤレスネットワーク、有線ネットワーク、または有線ネットワークとワイヤレスネットワークとの組合せによって提供される、チャネルを含み得る。ワイヤレスネットワークは、任意のワイヤレスインターフェースまたはワイヤレスインターフェースの組合せを含んでよく、任意の好適なワイヤレスネットワーク(たとえば、インターネットまたは他のワイドエリアネットワーク、パケットベースネットワーク、WiFi(商標)、無線周波数(RF)、UWB、WiFi-Direct、セルラー、ロングタームエボリューション(LTE)、WiMax(商標)など)を含んでよい。有線ネットワークは、任意の有線インターフェース(たとえば、ファイバー、イーサネット(登録商標)、電力線イーサネット(登録商標)、同軸ケーブルを介したイーサネット(登録商標)、デジタル信号ライン(DSL)など)を含んでよい。有線ネットワークおよび/またはワイヤレスネットワークは、基地局、ルータ、アクセスポイント、ブリッジ、ゲートウェイ、スイッチなどの様々な機器を使用して実装され得る。符号化ビデオビットストリームデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調されてよく、受信デバイスへ送信されてよい。
【００７３】
いくつかの例では、符号化デバイス104は、符号化ビデオビットストリームデータをストレージ108に記憶し得る。出力部110は、エンコーダエンジン106から、またはストレージ108から、符号化ビデオビットストリームデータを取り出し得る。ストレージ108は、分散されるかまたは局所的にアクセスされる様々なデータ記憶媒体のうちのいずれかを含み得る。たとえば、ストレージ108は、ハードドライブ、ストレージディスク、フラッシュメモリ、揮発性メモリもしくは不揮発性メモリ、または符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体を含み得る。
【００７４】
復号デバイス112の入力部114は、符号化ビデオビットストリームデータを受信し、デコーダエンジン116に、またはデコーダエンジン116によって後で使用できるようにストレージ118に、ビデオビットストリームデータを提供し得る。デコーダエンジン116は、エントロピー復号すること(たとえば、エントロピーデコーダを使用して)、および符号化ビデオデータを構成する1つまたは複数のコード化ビデオシーケンスの要素を抽出することによって、符号化ビデオビットストリームデータを復号し得る。デコーダエンジン116は、次いで、符号化ビデオビットストリームデータを再スケーリングし得、符号化ビデオビットストリームデータに対して逆変換を実行し得る。残差データが、次いで、デコーダエンジン116の予測ステージに渡される。デコーダエンジン116は、次いで、ピクセルのブロック(たとえば、PU)を予測する。いくつかの例では、逆変換の出力(残差データ)に予測が加算される。
【００７５】
復号デバイス112は、復号ビデオをビデオ宛先デバイス122に出力し得、ビデオ宛先デバイス122は、復号ビデオデータをコンテンツの消費者に表示するためのディスプレイまたは他の出力デバイスを含み得る。いくつかの態様では、ビデオ宛先デバイス122は、復号デバイス112を含む受信デバイスの一部であってよい。いくつかの態様では、ビデオ宛先デバイス122は、受信デバイス以外の別個のデバイスの一部であってよい。
【００７６】
いくつかの実施形態では、ビデオ符号化デバイス104および/またはビデオ復号デバイス112は、それぞれ、オーディオ符号化デバイスおよびオーディオ復号デバイスと統合されてよい。ビデオ符号化デバイス104および/またはビデオ復号デバイス112はまた、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、個別論理、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せなどの、上記で説明したコーディング技法を実施するために必要な他のハードウェアまたはソフトウェアを含んでよい。ビデオ符号化デバイス104およびビデオ復号デバイス112は、複合エンコーダ/デコーダ(コーデック)の一部としてそれぞれのデバイスの中に統合されてよい。符号化デバイス104の具体的な詳細の一例が、図12を参照しながら以下で説明される。復号デバイス112の具体的な詳細の一例が、図13を参照しながら以下で説明される。
【００７７】
HEVC規格の拡張は、MV-HEVCと呼ばれるマルチビュービデオコーディング拡張、およびSHVCと呼ばれるスケーラブルビデオコーディング拡張を含む。MV-HEVC拡張およびSHVC拡張は階層化コーディングの概念を共有し、異なるレイヤが符号化ビデオビットストリームの中に含まれる。コード化ビデオシーケンスの中の各レイヤは、固有のレイヤ識別子(ID)によって扱われる。レイヤIDは、NALユニットが関連付けられたレイヤを識別するために、NALユニットのヘッダの中に存在し得る。MV-HEVCでは、異なるレイヤは、ビデオビットストリームの中で同じシーンの異なるビューを表現することができる。SHVCでは、異なる空間解像度(すなわち、ピクチャ解像度)または異なる再構成忠実度でビデオビットストリームを表現する様々なスケーラブルレイヤが提供される。スケーラブルレイヤは、(レイヤID=0である)ベースレイヤ、および(レイヤID=1、2、...nである)1つまたは複数のエンハンスメントレイヤを含み得る。ベースレイヤは、HEVCの最初のバージョンのプロファイルに準拠し得、ビットストリームの中の最低利用可能レイヤを表現する。エンハンスメントレイヤは、空間解像度、時間分解能もしくはフレームレート、および/または再構成忠実度(すなわち、品質)がベースレイヤと比較して増大している。エンハンスメントレイヤは、階層的に編成され、下位レイヤに依存することがある(または、依存しないこともある)。いくつかの例では、異なるレイヤは、単一規格コーデックを使用してコーディングされ得る(たとえば、HEVC、SHVC、または他のコーディング規格を使用してすべてのレイヤが符号化される)。いくつかの例では、異なるレイヤは、多規格コーデックを使用してコーディングされ得る。たとえば、ベースレイヤがAVCを使用してコーディングされてよく、1つまたは複数のエンハンスメントレイヤがHEVC規格に対するSHVC拡張および/またはMV-HEVC拡張を使用してコーディングされてよい。
【００７８】
一般に、レイヤは、VCL NALユニットのセット、および非VCL NALユニットの対応するセットを含む。NALユニットは、特定のレイヤID値が割り当てられる。レイヤが下位レイヤに依存することがあるという意味で、レイヤは階層的であり得る。レイヤセットとは、自蔵式であるビットストリーム内で表されるレイヤのセットを指し、自蔵式とは、レイヤセット内のレイヤが、復号プロセスにおけるレイヤセットの中の他のレイヤに依存することができるが、いかなる他のレイヤにも復号のために依存しないことを意味する。したがって、レイヤセットの中のレイヤは、ビデオコンテンツを表現できる独立したビットストリームを形成することができる。レイヤセットの中のレイヤのセットは、サブビットストリーム抽出プロセスの動作によって別のビットストリームから取得され得る。レイヤセットは、いくつかのパラメータに従って動作することをデコーダが望むときに復号されるべきレイヤのセットに相当し得る。
【００７９】
ダイナミックレンジは、ビデオコンテンツにおいて利用可能な視感度の範囲、またはディスプレイが再生できる視感度の範囲を規定する。たとえば、標準ダイナミックレンジ(SDR)は、陰極線管ディスプレイの限界に基づく従来のガンマ曲線を使用して、ビデオのダイナミックレンジおよびディスプレイのダイナミックレンジ能力を表す。SDRは、通常、100カンデラ毎平方メートル(cd/m2)という最大ルミナンスに対して熟達されているが、いくつかのディスプレイは、SDRコンテンツを100cd/m2よりも高いピークルミナンスにおいて表示することを選ぶ場合がある。高ダイナミックレンジ(HDR)とは、視感度の範囲がSDRビデオまたはSDRディスプレイよりも大きいビデオまたはディスプレイを表す。たとえば、HDRビデオコンテンツは、2,000cd/m2というルミナンスを可能にすることができる。HDRビデオコンテンツは、ディスプレイがピークルミナンスレベルを提供することをそのように可能にすることができる。
【００８０】
高ダイナミックレンジ(HDR)以外の、より現実的なビデオエクスペリエンスを提供するための別の態様は、色次元である。色次元は、従来、色域によって規定される。図2は、BT.709カラーの赤色、緑色、および青色の原色に基づく、三角形204として標準ダイナミックレンジ(SDR)色域を示す図である。BT.2020カラーの赤色、緑色、および青色の原色に基づく、超高精細テレビジョン(UHDTV)用のもっと広い色域も三角形202として示される。図2はまた、自然色(たとえば、人間の目にとって認識可能な色)の限界を表す、いわゆるスペクトル軌跡(舌状のエリア206によって区切られる)を示す。図2によって示されるように、BT.709原色(曲線204)からBT.2020原色(曲線202)に移ることは、カラーが約70%多いUHDTVサービスを提供することを目的とする。D65と標示された点は、所与の仕様に対する白色を指定する。色域仕様の数個の例が、以下のTable 1(表1)で示される。
【００８１】
【表１】
2019517205.tif 000003
【００８２】
上述のように、HDRは、より低いダイナミックレンジ(たとえば、SDRによって与えられるダイナミックレンジ)を越えて、(ルミナンスに関連する)ピクチャのダイナミックレンジを増大させる。広色域(WCG:wide color gamut)は、より狭い色域を越えて、色実現性を増大させる(たとえば、もっと大きい値の赤色、緑色、および青色)。一緒に、HDRおよびWCGは、ビデオコンテンツのもっと鮮明な表示をもたらすことができる。
【００８３】
カラーボリュームとは、ビデオコンテンツの中に存在するか(すなわち、含まれるか)またはディスプレイが表現できるカラーのセットによって指定される3次元領域を指す。カラーボリュームは、限定はしないが、XYZ色空間、xyY色空間、LAB色空間、およびLUV色空間を含む、様々な色空間において指定され得る。たとえば、xyY色空間におけるカラーボリュームは、(x次元およびy次元での)ビデオコンテンツの色域、ならびにビデオコンテンツによって占有されるかまたはディスプレイが表現できる最小および最大ルミナンス(Y)によって規定される。
【００８４】
現在のビデオコーディング規格(たとえば、HEVCコーディング規格または他の関連するコーディング規格)、およびビデオコンテンツ用のカラー情報に関して、様々な問題が存在する。たとえば、ビデオビットストリームは、ビデオコンテンツ、または簡潔にコンテンツの特性を記述する、いくつかのシンタックス要素を含む。ビデオユーザビリティ情報(VUI:video usability information)は、コンテンツがコーディングされるコンテナ(たとえば、コンテナ色域)を示すパラメータを含む。しかしながら、ビデオビットストリームとともに(たとえば、その外部で、またはそれとは別個に)またはビデオビットストリームの中で(たとえば、その一部として、またはその中に含まれる)シグナリングされる、色域、およびビデオコンテンツによって占有されるカラーボリュームの表示がない。
【００８５】
多くの適用例では、コンテンツによって占有されるカラーボリュームを知ることが有益である。たとえば、コンテンツが、あるカラーボリュームから別のカラーボリュームに(たとえば、コンテンツが占有するカラーボリュームからディスプレイによってサポートされるもっと小さい(コンテンツによって占有されるカラーボリュームと比較して小さい)カラーボリュームに)変換されるべきであるとき、カラーボリュームを知ることが有益な場合がある。別の例では、色域およびカラーボリュームの情報は、第1のカラーボリュームを第2のカラーボリュームに変換するために使用されるカラーボリューム変換関数を記述する際に有益である。特定のコンテンツ用のカラーボリュームがどのように変化するのかという知識も、コンテンツにおける1つまたは複数の後処理ステップを指定するために使用され得る。
【００８６】
たとえば、消費者ディスプレイ側デバイス(たとえば、テレビジョン、モバイルデバイス、仮想現実デバイス、またはディスプレイを有する他の好適なデバイス)は、制作スタジオまたはビデオコンテンツの他の供給元におけるディスプレイの能力とは異なる能力を有することがある。ディスプレイ側デバイスは、受信されたコンテンツを、それらのディスプレイに最良に適合させるようにマッピングすることができる必要がある。例示的な一例では、テレビジョンネットワークは、サムスンのテレビジョンおよびソニーのテレビジョンに動画を送ることがある。ビデオコンテンツをマッピングするために使用され得るカラーマッピングアルゴリズムが存在する。場合によっては、ビデオコンテンツプロバイダは、デバイスが既存のカラーマッピングアルゴリズムを使用することを要求することがある。しかしながら、異なるデバイスの製造業者は、要求されたマッピング情報を使用することを望まない場合があり、それら自体のデバイス用のそれら自体のマッピングアルゴリズムを開発することを好む場合がある。たとえば、サムスンおよびソニーのデバイスは、表示能力および表示特性が異なる場合があり、表示能力および表示特性に従ってコンテンツをマッピングするために、異なるアプリケーションまたはプログラムを使用することがある。そのような場合、異なるデバイスは、要求されたマッピング情報を使用するように調整されないことがある。
【００８７】
ビデオコンテンツのカラーボリュームを記述する情報を含むメッセージを生成および処理するためのシステムおよび方法が、本明細書で説明される。H.265/HEVC、H.264/AVC、BDA、MPEG、DVB、または他の規格などのビデオコーディング規格およびビデオアプリケーション規格に対して、メッセージが定義され得る。本明細書で説明する技法および方法のうちの1つまたは複数は、独立に、または互いに組み合わせて適用され得る。ループの特定の反復内で関連する1つまたは複数のシンタックス要素は、ループのすべての反復に関連してよく、ループの外部でシグナリングされてよく、またはその逆も同様である。
【００８８】
場合によっては、コンテンツカラーボリュームメッセージは、符号化デバイス(たとえば、符号化デバイス104)によって生成され得、復号デバイス(たとえば、復号デバイス112)、プレーヤデバイス、ディスプレイデバイス、および/または任意の他のディスプレイ側もしくはクライアント側デバイスによって受信および処理され得る。たとえば、ビデオ符号化デバイス(または、他の送信側デバイス)は、符号化されているコンテンツのカラーボリュームを決定することができる。例示的な一例では、カラーボリュームは、ピクチャにおける各原色座標の最大値、および(たとえば、赤色-緑色-青色(RGB)空間、xyY色空間、または他の好適な色空間における)ピクチャの最大ルミナンスを使用して決定され得る。カラーボリュームを決定するための他の好適な技法も使用され得る。符号化デバイスは、ビデオコンテンツのカラーボリュームを記述するコンテンツカラーボリューム情報を有する(たとえば、含む)コンテンツカラーボリュームメッセージを生成することができる。クライアント側デバイス(たとえば、ビデオ復号デバイス、ビデオプレーヤデバイス、ビデオディスプレイデバイス、それらの組合せ、または他の好適なデバイス)は、コンテンツカラーボリュームメッセージを受信することができ、コンテンツカラーボリュームメッセージ内のコンテンツカラーボリューム情報を処理することができ、コンテンツカラーボリューム情報を使用して、デバイスに適した方法でビデオコンテンツをレンダリングまたは表示することができる。たとえば、ディスプレイを有するデバイス(たとえば、テレビジョン、モバイルデバイス、または他の好適なデバイス)は、ビデオコンテンツの色特性とは異なることがあるディスプレイの色特性を最良に適合させる(または、最適化する)ように、ビデオコンテンツをマッピングすることができる。任意の好適なデバイスが、いかなる特定のアプリケーションまたはプログラムにも制約されることなく、コンテンツカラーボリューム情報を使用してビデオコンテンツをレンダリングまたは表示することができる。たとえば、デバイスがビデオコンテンツをディスプレイにマッピングまたは変換するために特定のアルゴリズムまたはプログラムを使用することを要求する(すなわち、必要とする)代わりに、カラーボリュームに関するビデオコンテンツの特性がデバイスに提供され得、デバイスは、それ自体のマッピングまたは他のカラーベースアルゴリズムを使用して、そのディスプレイにとって最良品質のビデオをもたらすようにビデオをマッピングまたは変換することができる。コンテンツカラーボリュームメッセージの中のコンテンツカラーボリューム情報はまた、異なるルミナンス間で変換すること(たとえば、HDRから、LDRコンテンツしか表示できないディスプレイ用の低ダイナミックレンジ(LDR)に変換すること)、または他のカラーベース機能などの、カラーマッピング以外の目的のために使用され得る。他の例では、ディスプレイ側デバイスがコンテンツをレンダリングおよび/または表示するために使用される通常の変換チェーン以外のいかなる処理も行わなくてよいことを決定するために、コンテンツカラーボリュームメッセージ内のコンテンツカラーボリューム情報がディスプレイ側デバイスによ��て使用され得る。たとえば、コンテンツカラーボリュームメッセージが、コンテンツが特定の基準を満たすこと、たとえば、コンテンツが、ディスプレイによってサポートされるカラーボリュームよりも小さいかまたはディスプレイのサイズとほぼ同じサイズのカラーボリュームを占有することを記述するとき、ディスプレイ側デバイスは、ディスプレイ側デバイスがコンテンツを最適にレンダリングおよび/または表示するために追加の処理を必要としないと決定し得る。処理の通常のチェーンの外部にある変換プロセス/マッピングアルゴリズムを回避することは、電力消費需要に敏感なデバイス(たとえば、モバイルデバイスまたは他の好適なデバイス)にとって極めて有益な場合がある。追加の処理を回避することはまた、修正された変換プロセスをセットアップおよび/または実行することに関連する遅延を回避するという利点をもたらし得る。たとえば、追加の処理を可能にしながらコンテンツを表示することは、フレームフリーズ(frame freeze)などの悪化した提示という結果になることがある。
【００８９】
コンテンツカラーボリュームメッセージによって記述されるビデオコンテンツのカラーボリュームは、ビデオコンテンツの色域、ならびにビデオコンテンツによって占有される最小ルミナンスおよび最大ルミナンスを含むことができる。図3は、ビデオコンテンツのコンテンツ色域302の一例を示す図である。図3〜図7のx軸およびy軸は、図2に示すグラフのx軸およびy軸に対応し、様々な色域(色域302、402、422、432、502、522、532、622A〜622C、および722A〜722C)は、カラー軌跡206内のカラーを含む。最小ルミナンス値314および最大ルミナンス値312は、ビデオコンテンツがその中に制約されるルミナンス値である。たとえば、最小ルミナンス値314および最大ルミナンス値312は、ビデオコンテンツのルミナンス値の範囲を規定する。
【００９０】
コンテンツ色域302は、最小ルミナンス値314および最大ルミナンス値312によって規定されたルミナンス値の範囲の中の特定のルミナンス値においてビデオコンテンツの可能なクロミナンス(すなわち、カラー)値を規定する、エリアフットプリントを含む。ビデオコンテンツの色域302を記述する原色の色度座標が識別され得る。たとえば、青色の原色用の色度座標xB, yB 316、赤色の原色用の色度座標xR, yR 318、および緑色の原色用の色度座標xG, yG 320が、図3に示される。
【００９１】
前記のように、ビデオコンテンツの色域に加えて、ディスプレイデバイスの色域、およびコンテンツがコーディングされるコンテナの色域も、規定され得る。図4は、ビデオコンテンツの色域402、ビデオコンテンツが提示されるべきディスプレイの色域422、およびビデオコンテンツがコーディングされるコンテナの色域432の例を示す図である。
【００９２】
コンテナ色域432の例示的な一例は、BT.2020色域を含む。たとえば、コンテナがBT.2020コンテナである場合、ビデオコンテンツは、BT.2020コンテナの色域内にあるカラーを含むことができる。前記のように、ビデオビットストリームの中に含められるビデオユーザビリティ情報(VUI)は、コンテナ色域432を示すパラメータを含み得る。たとえば、VUIは、コンテナがBT.2020コンテナであることを指定する情報を含むことができる。VUIの中のコンテナ情報に基づいて、クライアント側デバイスは、図4に示すようなBT.2020コンテナの青色の原色用の座標xB, yB 426、BT.2020コンテナの赤色の原色用の座標xR, yR 428、およびBT.2020コンテナの緑色の原色用の座標xG, yG 430を使用すべきであることを知る。VUIは、SPSまたはVPSなどの、ビットストリームのパラメータセットの中に含まれ得る。
【００９３】
図3に示す色域302と同様に、ビデオコンテンツのコンテンツ色域402は、ルミナンス値の範囲の中の特定のルミナンス値におけるビデオコンテンツの可能なクロミナンス(すなわち、カラー)値を規定する。図4に示す色度座標xB, yB 416、xR, yR 418、およびxG, yG 420は、コンテンツ色域402を規定する原色の座標を提供する。
【００９４】
ディスプレイ色域422の例示的な一例は、広色域(WCG)と見なされるP3色域である。ディスプレイ色域422は、ディスプレイが提示できるカラーの範囲を規定する。ディスプレイ色域422の原色(頂点)は、ディスプレイによって提示され得る最大カラーを表すことができる。多くの場合、ディスプレイデバイスは、コンテナ色域よりも小さい色域を有することがある。図4に示す例では、ディスプレイ色域422はコンテナ色域432よりも小さい。ディスプレイ色域422は、コンテンツ色域402のすべての可能なカラーを包含し、ビデオコンテンツの中に存在することがあるすべてのカラーをディスプレイが提示できることを示す。そのような例では、ディスプレイがビデオコンテンツのすべてのカラーを表示できるので、ディスプレイは、ビデオコンテンツのカラーのいずれもディスプレイの能力を適合させるようにマッピングまたは変換しなくてよい。
【００９５】
しかしながら、場合によっては、ビデオコンテンツのコンテンツ色域が、ディスプレイの色域の外部にあるカラーを含む場合、ディスプレイはそれらのカラーを表示することができない。図5は、ビデオコンテンツの色域502、ビデオコンテンツが提示されるべきディスプレイの色域522、およびビデオコンテンツがコーディングされるコンテナの色域532の例を示す図である。コンテナ色域532は、BT.2020色域または他の好適なコンテナ色域を含むことができる。コンテナ色域532の原色座標は、BT.2020コンテナの青色の原色用の座標xB, yB 526、BT.2020コンテナの赤色の原色用の座標xR, yR 528、およびBT.2020コンテナの緑色の原色用の座標xG, yG 530を含む。
【００９６】
コンテンツ色域502は、ルミナンス値の範囲の中の特定のルミナンス値におけるビデオコンテンツの可能なクロミナンス(すなわち、カラー)値を規定する。図5に示す青色の色度座標xB, yB 516、赤色の色度座標xR, yR 518、および緑色の色度座標xG, yG 520は、コンテンツ色域502を規定する原色の座標を提供する。ディスプレイ色域522は、ディスプレイが提示できるカラーの範囲を規定し、ディスプレイによって提示され得る最大カラーを表す原色によって規定され得る。ディスプレイ色域522は、図4のディスプレイ色域422と類似であり得、P3色域を含むことができる。
【００９７】
図5に示すように、ディスプレイ色域522は、コンテンツ色域502によってカバーされるカラーのすべてを包含するとは限らない。たとえば、コンテンツ色域502の緑色の原色の色度座標xG, yG 520は、ディスプレイが提示できない緑色のカラーに関係する。そのような場合、ディスプレイは、受信されたビデオコンテンツをディスプレイ色域522内にあるカラーにマッピングまたは変換しなければならない。同様に、ディスプレイのルミナンス能力がビデオコンテンツの最小ルミナンスおよび最大ルミナンスを包含しない場合、ディスプレイは、ビデオコンテンツのルミナンス値のうちのいくつかをディスプレイのルミナンス能力にマッピングしなければならない。デバイスは、コンテンツカラーボリュームメッセージのコンテンツカラーボリューム情報を使用してマッピングを実行することができる。たとえば、デバイスは、符号化ビデオビットストリームの中でシグナリングされるメッセージの1つまたは複数のシンタックス要素に基づいて、ビデオコンテンツのコンテンツカラーボリュームを導出することができる。
【００９８】
例示的な一例では、コンテンツカラーボリュームメッセージは、ビデオコンテンツのカラーボリューム(コンテンツ色域502、ならびにコンテンツによって占有される最小ルミナンスおよび最大ルミナンスを含む)を示し、ディスプレイ(または、ディスプレイを有するデバイス)は、コンテンツカラーボリュームメッセージの中のコンテンツカラーボリューム情報に基づいて、緑色の領域に近い、コンテンツの中のいくつかのカラーが、ディスプレイのカラーボリュームの外部にあると認識することができる。ディスプレイがいかなるカラーマッピングも行わない場合、通常の処理チェーンは、ディスプレイのカラーボリュームの外部にあるカラーの再生に起因して、予測できない品質をもたらすことがある。ディスプレイは、コンテンツカラーボリュームがディスプレイカラーボリュームを越えて拡張する程度によって決定され得る、多くのカラーマッピングアルゴリズムのうちの1つを実行し得る。いくつかの例では、ディスプレイ色域522の外部にあるコンテンツ色域502の中の第1のカラーごとに、ディスプレイは、ディスプレイ色域522の中の第2のカラー(たとえば、xy空間におけるユークリッド距離で最も近くのカラー、ディスプレイの白色点(図2に示すような)に向かうカラー、または他の好適なカラー)を選ぶことができ、第1のカラーを表示するために第2のカラーのクロミナンス値を使用することができる。このようにして、ディスプレイは、マッピングアルゴリズムの結果がどうなることになるのかを確信することができる。いくつかの例では、ディスプレイはまた、別のアルゴリズムを選んでコンテンツ色域502全体のディスプレイ色域522の外部への1対1マッピングを実行することができる。コンテンツカラーボリューム情報を有するコンテンツカラーボリュームメッセージが存在することにより、ディスプレイ側デバイスが、もしあれば、どんな処理が行われる必要があるのかを決定することが可能になる。
【００９９】
図6は、ビデオコンテンツの可能なルミナンス値の範囲にわたるビデオコンテンツの様々なコンテンツ色域622A、622B、および622Cの一例を示す図である。可能なルミナンス値の範囲は、最大ルミナンス612および最小ルミナンス614によって規定される。図6の例では、ビデオコンテンツのコンテンツ色域は、ルミナンス値の範囲にわたって不変である。第1のコンテンツ色域622Aが最大ルミナンス値612に対して示される。第2のコンテンツ色域622Bがルミナンス値636に対して示される。第3のコンテンツ色域622Cが最小ルミナンス値614に対して示される。図示のように、コンテンツ色域622A〜622Cのすべてが、異なるルミナンス値612、614、および636に対して同じカラー値フットプリントを有する。
【０１００】
ルミナンス値の範囲の中の異なるルミナンス値に対して使用される色域は、様々な方法で規定され得る。一例では、範囲の中の異なるルミナンス値におけるビデオコンテンツのすべての実際の色域のうちの最大色域が決定され得る。最大色域は、次いで、ルミナンス値の範囲の中のすべてのルミナンス値に対する色域として使用され得る。別の例では、異なるルミナンス値におけるビデオコンテンツの色域の平均色域が決定され得る。平均色域は、次いで、ルミナンス値の範囲の中のすべてのルミナンス値に対する色域として使用され得る。すべてのルミナンス値に対して使用すべき色域を決定するために、任意の他の好適な技法が使用され得る。
【０１０１】
他の例では、色域は、範囲の中のルミナンス値のうちの1つまたは複数におけるビデオコンテンツの実際の可能なカラー値に従って、ルミナンス値の範囲にわたって変化することができる。図7は、ビデオコンテンツの可能なルミナンス値の範囲にわたるビデオコンテンツのコンテンツ色域722A、722B、および722Cの別の例を示す図である。可能なルミナンス値の範囲は、最大ルミナンス712および最小ルミナンス714によって規定される。図7に示す例では、ビデオコンテンツのコンテンツ色域は、ルミナンス値の範囲にわたって変化する。図7に示す各ルミナンス値における色域は、すべてのルミナンス値にわたる事前決定された不変の色域の代わりに、実際の色域を含む。たとえば、第1のコンテンツ色域722Aは最大ルミナンス値712に対して示され、第2のコンテンツ色域722Bはルミナンス値736に対して示され、第3のコンテンツ色域722Cは最小ルミナンス値714に対して示される。図示のように、コンテンツ色域722A〜722Cは、異なるルミナンス値712、714、および736に対して異なるカラー値フットプリントを有する。
【０１０２】
前記のように、クライアント側(すなわち、ディスプレイ側)デバイスは、コンテンツカラーボリュームメッセージのコンテンツカラーボリューム情報を使用して、カラーまたはルミナンスの間のマッピングなどの様々なカラー関連機能を実行することができる。たとえば、デバイスは、符号化ビデオビットストリームの中でシグナリングされるメッセージの1つまたは複数のシンタックス要素に基づいて、ビデオコンテンツのコンテンツカラーボリュームを導出することができる。様々なシンタックス要素、およびコンテンツカラーボリュームメッセージの変数を含む、例示的なシンタックス構造が以下でさらに提供される。
【０１０３】
いくつかの例では、メッセージの中のコンテンツカラーボリューム情報は、コンテンツの色域を記述する原色の色度座標を含むことができる。例示的な例として図3を使用すると、コンテンツカラーボリュームメッセージは、コンテンツ色域302を記述する原色のxB, yB 316色度座標の値、xR, yR 318色度座標の値、およびxG, yG 320色度座標の値を含むことができる。いくつかの例では、ビデオコンテンツの色度座標は、正規化された色度座標として含まれ得る。ビデオコンテンツの原色の色度座標を示すコンテンツカラーボリュームメッセージのシンタックス要素の例示的な一例は、content_gamut_primary_x[c]およびcontent_gamut_primary_y[c]として以下で示され、cは原色成分(たとえば、赤色(R)、緑色(G)、青色(B)、または他の好適な色成分)である。そのようなシンタックス要素の別の例は、ccv_primaries_x[c]およびccv_primaries_y[c]を含む。
【０１０４】
いくつかの例では、コンテンツカラーボリュームメッセージの中のコンテンツカラーボリューム情報は、コンテンツの最小ルミナンス値を導出するために使用される値(本明細書でルミナンス値と呼ぶ)を含むことができる。例示的な一例では、導出は、固定小数点(シンタックス要素がどのようにシグナリングされるのか)から浮動小数点(ニト単位)への変換であってよい。任意の他の好適な技法も使用され得る。最小ルミナンス値を導出するためのルミナンス値を示すコンテンツカラーボリュームメッセージのシンタックス要素の例示的な一例は、content_volume_min_lum_valueとして以下で示される。そのようなシンタックス要素の別の例は、ccv_min_luminance_valueを含む。いくつかの例では、コンテンツカラーボリュームメッセージの中のコンテンツカラーボリューム情報はまた、コンテンツの最大ルミナンス値を導出するために使用されるルミナンス値を含むことができる。固定小数点(シンタックス要素がどのようにシグナリングされるのか)から浮動小数点(ニト単位)への変換技法、または任意の他の好適な技法が、最大ルミナンス値を導出するために使用され得る。最大ルミナンス値を導出するためのルミナンス値を示すコンテンツカラーボリュームメッセージのシンタックス要素の例示的な一例は、content_volume_max_lum_valueとして以下で示される。そのようなシンタックス要素の別の例は、ccv_max_luminance_valueを含む。いくつかの例では、コンテンツカラーボリュームメッセージの中のコンテンツカラーボリューム情報はまた、コンテンツの平均ルミナンス値を導出するために使用される値を含むことができる。平均ルミナンス値を導出するためのルミナンス値を示すコンテンツカラーボリュームメッセージのシンタックス要素の例示的な一例は、ccv_avg_luminance_valueである。
【０１０５】
いくつかの例では、コンテンツカラーボリュームメッセージのコンテンツカラーボリューム情報は、ビデオコンテンツの色域を指定するために使用されるいくつかの原色色度座標を含むことができる。例示的な例として図3を使用すると、(青色の原色用の)xB, yB 316色度座標、(赤色の原色用の)xR, yR318色度座標、および(緑色の原色用の)xG, yG 320色度座標を含む3原色色度座標が、色域を指定するために使用され得る。そのような例では、コンテンツカラーボリュームメッセージの中の個数は、ビデオコンテンツの色域を指定するために3原色色度座標が使用されることを示すように個数3を含むことができる。ビデオコンテンツの色域を指定するために使用される原色色度座標の個数を示すコンテンツカラーボリュームメッセージのシンタックス要素の例示的な一例は、content_gamut_num_primariesとして以下で示される。いくつかの例では、ビデオコンテンツの色域を指定するために使用される原色色度座標の個数は、事前定義または事前設定された個数(たとえば、ビデオコンテンツの3つの色度座標としての事前設定された個数)であり得る。個数が事前設定される例では、ビデオコンテンツの色域を指定するために使用される原色色度座標の個数は、コンテンツカラーボリュームメッセージの中に含まれず、クライアント側デバイスは、事前設定された個数をすでに知っている。
【０１０６】
いくつかの例では、コンテンツカラーボリュームメッセージの中のコンテンツカラーボリューム情報は、コンテンツカラーボリュームを指定するために使用されるいくつかのルミナンス範囲値を含むことができる。いくつかの例では、コンテンツカラーボリュームメッセージは、ルミナンス範囲が等間隔に離間しているのか、それとも明示的にシグナリングされるのかを指定するための、シンタックス要素を含むことができる。シンタックス要素は、複数のタイプの範囲を指定する複数の値を有してよい(たとえば、ある値の場合は線形スケールで等間隔に離間しており、別の値の場合は対数スケールで等間隔に離間しているなど)。
【０１０７】
いくつかの例では、コンテンツカラーボリュームメッセージの中のコンテンツカラーボリューム情報は、コンテンツカラーボリュームを指定するために使用されるルミナンス値を指定するいくつかの値を含むことができる。いくつかの例では、指定された(または、1つもしくは複数の他のシンタックス要素に基づいて推定された)ルミナンス値ごとに、コンテンツカラーボリュームメッセージは、コンテンツカラーボリュームを導出するために使用されるいくつかの色度座標を(たとえば、シンタックス要素の中で)指定することができる。いくつかの例では、コンテンツカラーボリュームメッセージは、コンテンツカラーボリュームを導出するために使用されるカラーの色度座標を(たとえば、シンタックス要素の中で)指定することができる。
【０１０８】
いくつかの例では、コンテンツカラーボリュームメッセージは、補足エンハンスメント情報(SEI)メッセージを含む。たとえば、上記で説明したコンテンツカラーボリューム情報を指定するシンタックス要素は、SEIメッセージの形態をなし得る。図8は、カラーコンテンツボリューム補足エンハンスメント情報(SEI)メッセージを有するビデオビットストリームの一例を示す図である。ビデオビットストリーム800は、VPS841、SPS842、およびPPS843を含む。前に説明したように、ビデオビットストリーム800のピクチャの各スライスは、復号デバイスがスライスを復号するために使用し得る情報にアクセスするために、(たとえば、VPS ID、SPS ID、およびPPS IDを使用して)アクティブなVPS、SPS、およびPPSを参照する。PPS843は、ピクチャ240などの所与のピクチャの中のすべてのスライスに適用される情報を含むことができる。SPS842は、ビデオビットストリーム800の中のすべてのピクチャに、またはビデオビットストリーム800の同じコード化ビデオシーケンス(CVS)の中のすべてのピクチャに適用される情報を含むことができる。VPS841は、ビデオビットストリーム800内またはビデオビットストリーム800のCVS内のすべてのレイヤに適用される情報を含むことができる。たとえば、VPS831は、コード化ビデオシーケンス全体に適用されるシンタックス要素を有するシンタックス構造を含むことができる。図8に示す例では、VPS841、SPS842、およびPPS843は、ビデオビットストリーム800を用いて、インバンドでシグナリングされる。他の例では、VPS841、SPS842、および/またはPPS843は、コード化ビデオデータを含むビットストリーム800のNALユニットとは別個の送信の中で、アウトオブバンドで送信され得る。
【０１０９】
ビデオビットストリーム800はまた、コンテンツカラーボリュームSEIメッセージ844、スライス845、およびスライス846を含む、ピクチャ840に関係する情報を含む。図8の例では1つのSEIメッセージしか示されないが、ビットストリーム800は、ピクチャ840に対して2つ以上のSEIメッセージを含むことができる。たとえば、コンテンツカラーボリューム情報以外の情報をシグナリングするために、追加のSEIメッセージが使用されてよい。図8に示すコンテンツカラーボリュームSEIメッセージ844は、(ピクチャ840に対して)ピクチャごとにシグナリングされる。場合によっては、コンテンツカラーボリュームSEIメッセージ844は、図8に示すようにピクチャごとにシグナリングされなくてよいが、ブロックごとにシグナリングされてよく、ビットストリーム800のいくつかのピクチャのみに対して(たとえば、n個のピクチャごとに、すべてのランダムアクセスピクチャにおいて、またはピクチャの他のサブセットにおいて)シグナリングされてよく、シーケンスレベルごとにシグナリングされてよく(CVSの場合)、レイヤごとにシグナリングされてよく、ビットストリーム800全体に対してシグナリングされてよく、またはそれらの組合せであってよい。また、図8の例ではピクチャ840の2つのスライス845および846しか示されないが、ピクチャ840は3つ以上のスライスに区分され得る。場合によっては、図8に示す情報以外の情報が、ピクチャ840のためのビデオビットストリーム800の中に含まれてよい。
【０１１０】
いくつかの例では、カラーコンテンツボリュームメッセージは、VUIの中に、または1つもしくは複数の他のパラメータセット(たとえば、PPS、SPS、および/またはVPS)の中に含まれ得るか、あるいはHEVC仕様または他の仕様において指定されない手段を使用することができる。
【０１１１】
いくつかの例では、コンテンツカラーボリュームメッセージの中のコンテンツカラーボリューム情報は、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットがコンテンツカラーボリュームメッセージ(たとえば、コンテンツカラーボリュームSEIメッセージ)の中に存在し得ることを、(たとえば、シンタックス要素を使用して)指定することができる。いくつかの例では、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットがシグナリングされ得ることを示すために、シンタックス要素のいくつかの値が使用される。そのような例では、シンタックス要素の他の値は、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットがシグナリングされ得ないことを示すために使用される。
【０１１２】
いくつかの例では、コンテンツカラーボリュームメッセージの中のコンテンツカラーボリューム情報は、コンテンツカラーボリュームメッセージ(たとえば、コンテンツカラーボリュームSEIメッセージ)の中でシグナリングされるいくつかの暗黙的コンテンツカラーボリューム表現を示すシンタックス要素を含むことができる。いくつかの例では、暗黙的ボリューム表現は、コンテンツの色域(たとえば、コンテンツの1つのカラー、いくつかのカラー、またはすべてのカラーを取り囲む色域)に関連する原色、ならびに原色または色成分の各々の最小値および最大値のうちの、1つまたは複数を含むことができる。いくつかの例では、コンテンツカラーボリュームメッセージは、暗黙的コンテンツカラーボリューム表現が示される色空間を指定するシンタックス要素をシグナリングすることができる。
【０１１３】
いくつかの例では、コンテンツカラーボリュームメッセージは、コンテンツカラーボリュームメッセージ(たとえば、コンテンツカラーボリュームSEIメッセージ)の中でシグナリングされるいくつかの明示的コンテンツカラーボリューム表現を示すシンタックス要素をシグナリングすることができる。いくつかの例では、明示的ボリューム表現は、1つの(または、複数の)色成分における範囲を指定する表示、ならびに第1の成分の1つもしくは複数の範囲または1つもしくは複数の値に関連するコンテンツのカラーボリュームの横断面を指定するために使用される第2および第3の成分の1つまたは複数の座標のうちの、1つまたは複数を含むことができる。いくつかの例では、コンテンツカラーボリュームメッセージは、明示的コンテンツカラーボリューム表現が示される色空間を指定するシンタックス要素をシグナリングすることができる。
【０１１４】
いくつかの例では、コンテンツカラーボリュームメッセージは、原色、行列係数、転送特性、およびビデオ範囲(または、複数のビデオ範囲)のうちの少なくとも1つまたは複数を含むビデオ信号情報を、コンテンツカラーボリュームメッセージ(たとえば、コンテンツカラーボリュームSEIメッセージ)の中でシグナリングすることができる。
【０１１５】
図9は、本明細書で説明する技法のうちの1つまたは複数を使用してビデオデータを処理するプロセス900の一例を示すフローチャートである。ブロック902において、プロセス900は、ビデオデータを取得することを含む。いくつかの例では、ビデオデータは、画像キャプチャデバイスによってキャプチャされたビデオピクチャを含むことができる。いくつかの例では、ビデオデータは、符号化ビデオデータ(たとえば、符号化ビデオビットストリーム)を含むことができる。いくつかの例では、ビデオデータは、復号ビデオデータを含むことができる。
【０１１６】
ブロック904において、プロセス900は、ビデオデータに関連するコンテンツカラーボリューム情報を処理することを含む。コンテンツカラーボリューム情報は、ビデオデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示す。コンテンツカラーボリューム情報は、1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
【０１１７】
ビデオデータが、画像キャプチャデバイスによってキャプチャされたビデオピクチャを含む例では、ビデオデータを処理することは、コンテンツカラーボリューム情報を生成することを含むことができる。そのような例では、コンテンツカラーボリューム情報を処理することは、コンテンツカラーボリュームメッセージを生成することと、コンテンツカラーボリューム情報をコンテンツカラーボリュームメッセージの中に含めることとをさらに含むことができる。いくつかの態様では、プロセス900は、コンテンツカラーボリュームメッセージをクライアントデバイスへ(たとえば、符号化ビデオビットストリームの中で、または符号化ビデオビットストリームとは別個に)送信することを含むことができる。
【０１１８】
ビデオデータが符号化ビデオデータ(たとえば、符号化ビデオビットストリーム)を含む例では、コンテンツカラーボリューム情報を処理することは、符号化ビデオデータからコンテンツカラーボリューム情報を復号することと、コンテンツカラーボリューム情報を復号ビデオデータに適用することとを含むことができる。
【０１１９】
ビデオデータが復号ビデオデータを含む例では、コンテンツカラーボリューム情報を処理することは、コンテンツカラーボリューム情報を復号ビデオデータに適用することを含むことができる。そのような例では、処理を実行するデバイス(たとえば、プレーヤデバイス、ディスプレイデバイス、または他の好適なデバイス)は、ビデオデータを復号しなくてよい。
【０１２０】
いくつかの例では、前に説明したように、第1のルミナンス値は、正規化最小ルミナンス値を含み、第2のルミナンス値は、正規化最大ルミナンス値を含む。
【０１２１】
いくつかの実装形態では、第1のルミナンス値は、1つまたは複数のピクチャの最小ルミナンス値を導出するために使用される。いくつかの実装形態では、第2のルミナンス値は、1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される。たとえば、前に説明したように、固定小数点(シンタックス要素がどのようにシグナリングされるのか)から浮動小数点(ニト単位)への変換技法が、最小ルミナンス値および/または最大ルミナンス値を導出するために使用され得る。任意の他の好適な技法も使用され得る。いくつかの実装形態では、第1のルミナンス値は最小ルミナンス値であり、その場合、デバイスは、第1のルミナンス値を最小ルミナンス値として直接使用することができる。いくつかの実装形態では、第2のルミナンス値は最大ルミナンス値であり、その場合、デバイスは、第2のルミナンス値を最大ルミナンス値として直接使用することができる。
【０１２２】
いくつかの例では、シンタックス要素がビデオデータとともに提供される。シンタックス要素は、コンテンツカラーボリューム情報のサブセットがシグナリングされることを示す。たとえば、シンタックス要素は、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットが、コンテンツカラーボリュームメッセージの中に存在することを指定することができる。場合によっては、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットがシグナリングされ得ることを示すために、シンタックス要素のいくつかの値が使用される。シンタックス要素の他の値は、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットがシグナリングされ得ないことを示すために使用され得る。JCTVC-Z1005規格テキストでは、シンタックス要素は、シンタックス要素ccv_min_luminance_value_present_flag、ccv_max_luminance_value_present_flag、およびccv_avg_luminance_value_present_flagに関係する。
【０１２３】
いくつかの実装形態では、コンテンツカラーボリューム情報は、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる。たとえば、コンテンツカラーボリューム情報を含むコンテンツカラーボリュームSEIメッセージが生成され得る。
【０１２４】
いくつかの例では、1つまたは複数の色度座標は、1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む。他の個数の色度座標がシグナリングされ得ることを、当業者は諒解されよう。場合によっては、3つの色度座標は、1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む。
【０１２５】
図10は、本明細書で説明する技法のうちの1つまたは複数を使用してビデオデータを符号化するプロセス1000の一例を示すフローチャートである。1002において、プロセス1000は、ビデオデータを取得することを含む。ビデオデータは、画像キャプチャデバイスによってキャプチャされたビデオピクチャを含むことができる。ビデオデータは、画像キャプチャデバイスから、またはビデオデータを記憶する記憶デバイスから取得され得る。
【０１２６】
1004において、プロセス1000は、ビデオデータを使用して符号化ビデオビットストリームを生成することを含む。ビデオビットストリームは、本明細書で説明する符号化技法を使用して生成され得る。1006において、プロセス1000は、ビデオデータのためのコンテンツカラーボリューム情報を生成することを含む。コンテンツカラーボリューム情報は、ビデオデータの最小ルミナンスに関連する第1のルミナンス値、ビデオデータの最大ルミナンスに関連する第2のルミナンス値、およびビデオデータの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
【０１２７】
いくつかの例では、プロセス1000は、コンテンツカラーボリュームメッセージを生成することを含む。プロセス1000は、コンテンツカラーボリューム情報をコンテンツカラーボリュームメッセージの中に含めることができる。いくつかの実装形態では、プロセス1000は、コンテンツカラーボリュームメッセージをクライアントデバイス(たとえば、デコーダデバイス、プレーヤデバイス、ディスプレイデバイスなど)へ送信することを含むことができる。いくつかの例では、プロセス1000は、符号化ビデオビットストリームをクライアントデバイスへ送信することを含む。場合によっては、コンテンツカラーボリュームメッセージは、符号化ビデオビットストリームの中で(たとえば、ビットストリームの1つまたは複数のパケットまたはNALユニットとして)送信される。場合によっては、コンテンツカラーボリュームメッセージは、符号化ビデオビットストリームとは別個に送信される。いくつかの例では、コンテンツカラーボリューム情報は、ピクチャレベルにおいて生成され得、その場合、コンテンツカラーボリューム情報は、ピクチャのコンテンツカラーボリュームを記述する。他の例では、コンテンツカラーボリューム情報は、ブロックごとに、ビットストリームのいくつかのピクチャのみに対して(たとえば、n個のピクチャごとに、すべてのランダムアクセスピクチャにおいて、またはピクチャの他のサブセットにおいて)、シーケンスレベルごとに(CVSの場合)、レイヤごとにシグナリングされる、ビットストリーム全体に対してシグナリングされる、またはそれらの組合せなどで、他のビデオコンテンツレベルにおいて生成され得る。
【０１２８】
いくつかの例では、前に説明したように、第1のルミナンス値は、正規化最小ルミナンス値を含み、第2のルミナンス値は、正規化最大ルミナンス値を含む。
【０１２９】
いくつかの実装形態では、第1のルミナンス値は、1つまたは複数のピクチャの最小ルミナンス値を導出するために使用される。いくつかの実装形態では、第2のルミナンス値は、1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される。たとえば、前に説明したように、固定小数点(シンタックス要素がどのようにシグナリングされるのか)から浮動小数点(ニト単位)への変換技法が、最小ルミナンス値および/または最大ルミナンス値を導出するために使用され得る。任意の他の好適な技法も使用され得る。いくつかの実装形態では、第1のルミナンス値は最小ルミナンス値であり、その場合、デバイスは、第1のルミナンス値を最小ルミナンス値として直接使用することができる。いくつかの実装形態では、第2のルミナンス値は最大ルミナンス値であり、その場合、デバイスは、第2のルミナンス値を最大ルミナンス値として直接使用することができる。
【０１３０】
いくつかの例では、シンタックス要素がビデオデータとともに提供される。シンタックス要素は、コンテンツカラーボリューム情報のサブセットがシグナリングされることを示す。たとえば、シンタックス要素は、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットが、コンテンツカラーボリュームメッセージの中に存在することを指定することができる。場合によっては、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットがシグナリングされ得ることを示すために、シンタックス要素のいくつかの値が使用される。シンタックス要素の他の値は、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットがシグナリングされ得ないことを示すために使用され得る。JCTVC-Z1005規格テキストでは、シンタックス要素は、シンタックス要素ccv_min_luminance_value_present_flag、ccv_max_luminance_value_present_flag、およびccv_avg_luminance_value_present_flagに関係する。
【０１３１】
いくつかの実装形態では、コンテンツカラーボリューム情報は、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる。たとえば、コンテンツカラーボリューム情報を含むコンテンツカラーボリュームSEIメッセージが生成され得る。
【０１３２】
いくつかの例では、1つまたは複数の色度座標は、1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む。他の個数の色度座標がシグナリングされ得ることを、当業者は諒解されよう。場合によっては、3つの色度座標は、1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む。
【０１３３】
図11は、本明細書で説明する技法のうちの1つまたは複数を使用してビデオデータを処理する別のプロセス1100の一例を示すフローチャートである。1102において、プロセス1100は、ビデオデータを取得することを含む。いくつかの例では、ビデオデータは、符号化ビデオデータ(たとえば、符号化ビデオビットストリーム)を含むことができる。いくつかの例では、ビデオデータは、復号ビデオデータを含むことができる。
【０１３４】
1104において、プロセス1100は、ビデオデータの1つまたは複数のピクチャのためのコンテンツカラーボリューム情報を取得することを含む。コンテンツカラーボリューム情報は、1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む。
【０１３５】
1106において、プロセス1100は、コンテンツカラーボリューム情報を使用して1つまたは複数のピクチャのコンテンツカラーボリュームを決定することを含む。
【０１３６】
いくつかの態様では、プロセス1100は、ビデオデータ(たとえば、ビデオビットストリームまたは復号ビデオデータ)を受信することを含む。ビデオデータが符号化ビデオデータである場合には、プロセス1100は、ビデオデータを取得するために、かつコンテンツカラーボリューム情報を取得するために、符号化ビデオビットストリームを復号することを含む。プロセス1100は、次いで、コンテンツカラーボリューム情報を使用して復号ビデオデータを処理することを含むことができる。ビデオデータが復号ビデオデータである場合には、プロセス1100は、以前に復号されたビデオデータを取得することと、コンテンツカラーボリューム情報を使用して復号ビデオデータを処理することとを含む。ビデオデータは、本明細書で説明する技法(たとえば、ビデオコンテンツのクロミナンス(カラー)値および/またはルミナンス値をディスプレイのクロミナンス能力および/またはルミナンス能力にマッピングすること、あるいはコンテンツカラーボリューム情報の他の好適な使用)を使用して、コンテンツカラーボリューム情報を使用して処理され得る。
【０１３７】
いくつかの例では、前に説明したように、第1のルミナンス値は、正規化最小ルミナンス値を含み、第2のルミナンス値は、正規化最大ルミナンス値を含む。
【０１３８】
いくつかの実装形態では、第1のルミナンス値は、1つまたは複数のピクチャの最小ルミナンス値を導出するために使用される。いくつかの実装形態では、第2のルミナンス値は、1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される。たとえば、前に説明したように、固定小数点(シンタックス要素がどのようにシグナリングされるのか)から浮動小数点(ニト単位)への変換技法が、最小ルミナンス値および/または最大ルミナンス値を導出するために使用され得る。任意の他の好適な技法も使用され得る。いくつかの実装形態では、第1のルミナンス値は最小ルミナンス値であり、その場合、デバイスは、第1のルミナンス値を最小ルミナンス値として直接使用することができる。いくつかの実装形態では、第2のルミナンス値は最大ルミナンス値であり、その場合、デバイスは、第2のルミナンス値を最大ルミナンス値として直接使用することができる。
【０１３９】
いくつかの例では、シンタックス要素がビデオデータとともに提供される。シンタックス要素は、コンテンツカラーボリューム情報のサブセットがシグナリングされることを示す。たとえば、シンタックス要素は、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットが、コンテンツカラーボリュームメッセージの中に存在することを指定することができる。場合によっては、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットがシグナリングされ得ることを示すために、シンタックス要素のいくつかの値が使用される。シンタックス要素の他の値は、コンテンツカラーボリュームを導出するために使用されるシンタックス要素のサブセットがシグナリングされ得ないことを示すために使用され得る。JCTVC-Z1005規格テキストでは、シンタックス要素は、シンタックス要素ccv_min_luminance_value_present_flag、ccv_max_luminance_value_present_flag、およびccv_avg_luminance_value_present_flagに関係する。
【０１４０】
いくつかの実装形態では、コンテンツカラーボリューム情報は、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる。たとえば、コンテンツカラーボリューム情報を含むコンテンツカラーボリュームSEIメッセージが生成され得る。
【０１４１】
いくつかの例では、1つまたは複数の色度座標は、1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む。他の個数の色度座標がシグナリングされ得ることを、当業者は諒解されよう。場合によっては、3つの色度座標は、1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む。
【０１４２】
いくつかの例では、プロセス900、1000、および1100は、図1に示すシステム100などのコンピューティングデバイスまたは装置によって実行され得る。たとえば、プロセス900は、図1および図12に示す符号化デバイス104によって、別のビデオソース側デバイスもしくはビデオ送信デバイスによって、図1および図12に示す復号デバイス112によって、かつ/またはプレーヤデバイス、ディスプレイ、もしくは任意の他のクライアント側デバイスなどの別のクライアント側デバイスによって実行され得る。プロセス1000は、図1および図12に示す符号化デバイス104によって、または別のビデオソース側デバイスもしくはビデオ送信デバイスによって実行され得る。プロセス1100は、図1および図13に示す復号デバイス112によって、またはプレーヤデバイス、ディスプレイ、もしくは任意の他のクライアント側デバイスなどの別のクライアント側デバイスによって実行され得る。場合によっては、コンピューティングデバイスまたは装置は、プロセス900、1000、および1100のステップを実行するように構成されているデバイスのプロセッサ、マイクロプロセッサ、マイクロコンピュータ、または他の構成要素を含み得る。いくつかの例では、コンピューティングデバイスまたは装置は、ビデオフレームを含むビデオデータ(たとえば、ビデオシーケンス)をキャプチャするように構成されたカメラを含み得る。いくつかの例では、ビデオデータをキャプチャするカメラまたは他のキャプチャデバイスは、コンピューティングデバイスとは別個であり、その場合、コンピューティングデバイスは、キャプチャされたビデオデータを受信または取得する。コンピューティングデバイスは、ビデオデータを通信するように構成されたネットワークインターフェースをさらに含み得る。ネットワークインターフェースは、インターネットプロトコル(IP)ベースのデータまたは他のタイプのデータを通信するように構成され得る。いくつかの例では、コンピューティングデバイスまたは装置は、ビデオビットストリームのピクチャのサンプルなどの、出力ビデオコンテンツを表示するためのディスプレイを含み得る。
【０１４３】
プロセス900、1000、および1100は、論理フロー図として図示され、それらの動作は、ハードウェア、コンピュータ命令、またはそれらの組合せで実施され得る動作のシーケンスを表す。コンピュータ命令のコンテキストでは、動作は、1つまたは複数のプロセッサによって実行されたとき、記載する動作を実行し1つまたは複数のコンピュータ可読記憶媒体に記憶されたコンピュータ実行可能命令を表す。一般に、コンピュータ実行可能命令は、特定の機能を実行するかまたは特定のデータタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。動作が説明される順序は、限定として解釈されることを意図せず、説明する任意の数の動作は、プロセスを実施するために任意の順序で、かつ/または並列に組み合わせられ得る。
【０１４４】
追加として、プロセス900、1000、および1100は、実行可能命令を用いて構成された1つまたは複数のコンピュータシステムの制御下で実行されてよく、ハードウェアまたはその組合せによって1つまたは複数のプロセッサ上で集合的に実行するコード(たとえば、実行可能命令、1つもしくは複数のコンピュータプログラム、または1つもしくは複数のアプリケーション)として実装されてよい。上述のように、コードは、たとえば、1つまたは複数のプロセッサによって実行可能な複数の命令を備えるコンピュータプログラムの形態で、コンピュータ可読記憶媒体または機械可読記憶媒体に記憶され得る。コンピュータ可読記憶媒体または機械可読記憶媒体は非一時的であってよい。
【０１４５】
次に、上記で説明した技法の例を提供する様々な例示的な実施形態が説明される。本実施形態は、(その一例が規格文書JCTVC-Z1005に含まれる)規格のシンタックス構造、シンタックス要素、変数、セマンティクス、および他の部分の追加として示される。
【０１４６】
実施形態1
【０１４７】
シンタックス構造およびシンタックスセマンティクスの一例が、上記で参照したカラー情報をシグナリングすることに対して以下で提供される。
【０１４８】
シンタックス構造
【０１４９】
【表２】
2019517205.tif 000004
【０１５０】
セマンティクス
content_color_volume_idは、SEIメッセージの用途を識別するために使用され得る識別番号を含む。content_color_volume_idの値は、0〜232-2(両端値を含む)という範囲の中にあるものとする。
0〜255および512〜231-1というcontent_color_volume_idの値は、アプリケーションによって決定されるように使用され得る。256〜511および231〜232-2というcontent_color_volume_idの値は、ITU-T|ISO/IECによる将来の使用のために予約される。256〜511(両端値を含む)という範囲の中または231〜232-2(両端値を含む)という範囲の中のcontent_color_volume_idの値に遭遇するデコーダは、それを無視するものとする。
1に等しいcontent_color_volume_persistence_cancel_flagは、SEIメッセージが、現在のレイヤに適用され出力順序において前のいかなるコンテンツカラーボリュームSEIメッセージの持続も取り消すことを示す。0に等しいcontent_color_volume_persistence_cancel_flagは、コンテンツカラーボリューム情報が引き続くことを示す。
いくつかの代替形態では、content_color_volume_persistence_cancel_flagがシグナリングされず、コンテンツカラーボリュームSEIメッセージの持続は、現在ピクチャから始まるとともに出力順序において次のコンテンツカラーボリュームSEIメッセージが受信されるかまたは新たなCLVSが開始するときまでのピクチャであるように指定される。他の代替形態では、SEIメッセージがそれに対して持続するピクチャの個数が、POC値(または、POC値から導出される値)を使用して、または別の識別子を使用して、明示的にシグナリングされる。いくつかの代替形態では、持続を規定するために復号順序も使用され得る。
content_gamut_num_primariesは、コンテンツ色域を記述するために使用される原色の個数を指定する。content_gamut_num_primariesの値は、0〜7(両端値を含む)という範囲の中にあるものとする。
content_gamut_primary_x[c]およびcontent_gamut_primary_y[c]は、ISO11664-1(ISO11664-3およびCIE15も参照)において指定されるようなxおよびyのCIE1931定義に従って、それぞれ、コンテンツ色域の原色成分cの正規化されたxおよびy色度座標を0.00002の増分で指定する。赤色、緑色、および青色の原色を使用してコンテンツ色域を記述するために、0に等しいインデックス値cが緑色の原色に対応すべきこと、1に等しいcが青色の原色に対応すべきこと、および2に等しいcが赤色の原色に対応すべきことが示唆される(付属書類Eおよび表E.3も参照)。content_gamut_primaries_x[c]およびcontent_gamut_primaries_y[c]の値は、0〜50 000(両端値を含む)という範囲の中にあるものとする。存在するとき、4、5、および6に等しいインデックスcは、シアン、マゼンタ、および黄色の原色に対応する。
content_volume_min_lum_valueは、コンテンツのカラーボリュームを指定するために使用される最小ルミナンス値を指定する。content_volume_min_lum_valueの値は、0.0001カンデラ毎平方メートルの単位である。
content_volume_max_lum_valueは、コンテンツのカラーボリュームを指定するために使用される最大ルミナンス値を指定する。content_volume_max_lum_valueの値は、0.0001カンデラ毎平方メートルの単位である。
content_volume_num_lum_rangesは、コンテンツボリュームを記述するために使用されるルミナンス範囲の個数を指定する。content_volume_num_lum_rangesの値は、0〜255(両端値を含む)という範囲の中にあるものとする。
1に等しいcontent_volume_equal_lum_ranges_flagは、シンタックス要素content_volume_lum_range_value[i]が明示的にはシグナリングされないことを指定する。0に等しいcontent_volume_equal_lum_ranges_flagは、シンタックス要素content_volume_lum_range_value[i]が明示的にシグナリングされることを指定する。
content_volume_lum_value[i]は、content_volume_min_lum_valueおよびcontent_volume_max_lum_valueと同じユニットの中の、カラーボリュームを指定するために使用される第iのルミナンス値を指定するために使用される。content_volume_lum_values[0]の値はcontent_volume_min_lum_valueに等しいものと推定され、content_volume_lum_values[content_volume_num_lum_ranges]の値はcontent_volume_max_lum_valueに等しいものと推定され、両端値を含む。変数ContentVolumeLuminanceRange[]は、次のように導出される。
for(i=0;i<=content_volume_num_lum_ranges;i++)
ContentVolumeLuminanceRange[i]=content_volume_lum_value[i]
0〜content_volume_num_lum_ranges-1(両端値を含む)という範囲の中のiに対してContentVolumeLuminanceRange[i]の値がContentVolumeLuminanceRange[i+1]よりも小さいことが、ビットストリーム準拠の要件である。
いくつかの代替形態では、ContentVolumeLuminanceRange[i]の値は、ContentVolumeLuminanceRange[i+1]以下であるように指定される。
content_volume_num_chrom[i]は、コンテンツのカラーボリュームを記述するために使用される第iのルミナンス範囲に関連する色度の個数を指定する。content_volume_num_chromの値は、0〜15(両端値を含む)という範囲の中にあるものとする。
content_volume_chrom_x[i][j]およびcontent_volume_chrom_y[i][j]は、ISO11664-1(ISO11664-3およびCIE15も参照)において指定されるようなxおよびyのCIE1931定義に従って、それぞれ、第iのルミナンス範囲に対するカラーボリュームの推定値を導出するために使用される第jの色度座標の正規化されたxおよびy色度座標を0.00002の増分で指定する。content_volume_chrom_x[i][j]およびcontent_volume_chrom_y[i][j]の値は、0〜50 000(両端値を含む)という範囲の中にあるものとする。
iとしての所与の値に対して、convexRegion[i]が、0〜content_volume_num_chrom[i]-1(両端値を含む)という範囲の中のjに対するcontent_volume_chrom_x[i][j]およびcontent_volume_chrom_y[i][j]による色度座標の2次元の凸閉包を指すとする。
0〜content_volume_num_chrom[i]-1(両端値を含む)という範囲の中のjに対して、境界convexRegion[i]がすべての色度座標content_volume_chrom_x[i][j]およびcontent_volume_chrom_y[i][j]を含むことが、ビットストリーム準拠の要件である。
カラーボリュームは、0〜content_volume_num_lum_ranges(両端値を含む)という範囲の中のiに対する座標ContentVolumeLuminanceRange[i]およびconvexRegion[i]を使用して導出される、3D領域colorVolumeBoundingRegion内に含まれるように指定される。領域colorVolumeBoundingRegionは、次のように規定される。すなわち、以下の条件のうちの1つが適用される場合、色度座標(x,y)およびルミナンス値Yを有する任意のカラーがcolorVolumeBoundingRegionの中に含まれる。
-  Yがcontent_volume_lum_max_valueに等しいこと、およびYがconvexRegion[content_volume_lum_max_value]の中に含まれること。
-  Yがcontent_volume_lum_max_valueよりも小さいこと、ならびに(x1,y1)および(x2,y2)が、それぞれ、ContentVolumeLuminanceRange[lumIdx]およびContentVolumeLuminanceRange[lumIdx+1]に属し、kの値が0〜1(両端値を含む)という範囲の中にあり、かつk*x1+(1-k)*x2がxに等しくk*y1+(1-k)*y2がyに等しいような、0〜content_volume_num_lum_ranges(両端値を含む)という範囲の中の少なくとも1つのlumIdxと、色度座標(x1,y1)および(x2,y2)と、実数kとが存在すること。
【０１５１】
一代替形態では、0〜content_volume_num_lum_ranges-1(両端値を含む)という範囲の中のiごとに、ContentVolumeLuminanceRange[i]〜ContentVolumeLuminanceRange[i+1]という範囲の中のルミナンス値に対して、カラーボリュームは、色度座標content_volume_chrom_x[i][j]およびcontent_volume_chrom_y[i][j]によって指定されるcontent_volume_num_chrom[i]個の点の凸閉包内に含まれるように指定される。
【０１５２】
いくつかの代替形態では、content_volume_min_lum_valueおよびcontent_volume_max_lum_valueの最大値は、固定された範囲内にあるように制約される。たとえば、シンタックス要素の値は、10000ニト以下となるように制約されてよい。
【０１５３】
いくつかの代替形態では、シンタックス要素content_volume_min_lum_valueおよびcontent_volume_max_lum_valueは、コンテンツの正規化された最小ルミナンスおよび最大ルミナンスとなるように指定される。
【０１５４】
いくつかの代替形態では、色度点の最小個数がルミナンスごとに指定されるように制約が加えられ、シンタックス要素content_volume_num_chrom[i]は、色度点の最小個数に基づく差分値としてコーディングされる。
【０１５５】
いくつかの代替形態では、カラーボリュームは異なる色空間において記述され、搬送されるシンタックス要素は座標に対応する。たとえば、コード化コンテンツの記述がYCbCr空間におけるものであるとき、凸閉包を記述するために使用されるルミナンス値はルーマコードワードに対応し、凸閉包を記述するために使用される色度座標はクロマコードワードに対応する。そのような代替形態では、ルミナンスおよび色度座標を記述するために使用されるビット数は、ビットストリームの中のルーマ値およびクロマ値のビット深度に等しくてよい。
【０１５６】
別の代替形態では、コンテンツカラーボリュームを記述する凸閉包を指定するために使用されるルミナンス値は、デルタコーディングされた値を使用して指定される。たとえば、シンタックス要素content_volume_lum_range_width[]がシグナリングされる。
content_volume_lum_range_width[i]は、content_volume_min_lum_valueおよびcontent_volume_max_lum_valueと同じユニットの中の第iのルミナンス範囲の幅を指定するために使用される。変数ContentVolumeLuminanceRange[]は、次のように導出される。
ContentVolumeLuminanceRange[0]=content_volume_min_lum_value
for(i=1;i<content_volume_num_lum_ranges;i++)
ContentVolumeLuminanceRange[i]=ContentVolumeLuminanceRange[i-1]+content_volume_lum_range_width[i]
ContentVolumeLuminanceRange[content_volume_num_lum_ranges]=content_volume_max_lum_value
【０１５７】
いくつかの代替形態では、content_volume_equal_lum_ranges_flagは整数としてシグナリングされ、ただし、ある値はコンテンツカラーボリュームを記述するために使用されるルミナンス点が線形領域において等間隔に離間していることを示し、別の値はコンテンツカラーボリュームを記述するために使用されるルミナンス点が対数領域において等間隔に離間していることを示し、別の値はルミナンス点が明示的にシグナリングされることを示す。
【０１５８】
実施形態2
【０１５９】
この実施形態では、コンテンツカラーボリュームを指定するために使用されるルミナンス値をシグナリングが推測することと、いくつかのシンタックス要素の値の推測とに関係する変更を伴って、シンタックス構造は実施形態1におけるものと類似である。コンテンツカラーボリュームの導出も修正される。
【０１６０】
シンタックス構造
【０１６１】
【表３】
2019517205.tif 000005
【０１６２】
セマンティクス
コンテンツカラーボリュームSEIメッセージは、ディスプレイ仕様に従ってコンテンツをマッピングするためにディスプレイデバイスによって利用され得るコンテンツのカラーボリュームを示す。
content_color_volume_idは、SEIメッセージの用途を識別するために使用され得る識別番号を含む。content_color_volume_idの値は、0〜232-2(両端値を含む)という範囲の中にあるものとする。
0〜255および512〜231-1というcontent_color_volume_idの値は、アプリケーションによって決定されるように使用され得る。256〜511および231〜232-2というcontent_color_volume_idの値は、ITU-T|ISO/IECによる将来の使用のために予約される。256〜511(両端値を含む)という範囲の中または231〜232-2(両端値を含む)という範囲の中のcontent_color_volume_idの値に遭遇するデコーダは、それを無視するものとする。
1に等しいcontent_color_volume_persistence_cancel_flagは、SEIメッセージが、現在のレイヤに適用され出力順序において前のいかなるコンテンツカラーボリュームSEIメッセージの持続も取り消すことを示す。0に等しいcontent_color_volume_persistence_cancel_flagは、コンテンツカラーボリューム情報が引き続くことを示す。
content_gamut_primary_x[c]およびcontent_gamut_primary_y[c]は、ISO11664-1(ISO11664-3およびCIE15も参照)において指定されるようなxおよびyのCIE1931定義に従って、それぞれ、コンテンツ色域の0〜2(両端値を含む)という範囲の中のcに対する原色成分cの正規化されたxおよびy色度座標を0.00002の増分で指定する。赤色、緑色、および青色の原色を使用してコンテンツ色域を記述するために、0に等しいインデックス値cが緑色の原色に対応すべきこと、1に等しいcが青色の原色に対応すべきこと、および2に等しいcが赤色の原色に対応すべきことが示唆される(付属書類Eおよび表E.3も参照)。content_gamut_primaries_x[c]およびcontent_gamut_primaries_y[c]の値は、0〜50 000(両端値を含む)という範囲の中にあるものとする。
content_volume_min_lum_valueは、コンテンツのカラーボリュームを指定するために使用される最小ルミナンス値を指定する。content_volume_min_lum_valueの値は、0.0001カンデラ毎平方メートルの単位である。
content_volume_max_lum_valueは、コンテンツのカラーボリュームを指定するために使用される最大ルミナンス値を指定する。content_volume_max_lum_valueの値は、0.0001カンデラ毎平方メートルの単位である。
0に等しいcontent_volume_info_present_flagは、コンテンツカラーボリューム情報を指定する追加のシンタックス要素がSEIメッセージの中に存在しないことを指定する。1に等しいcontent_volume_info_present_flagは、コンテンツカラーボリューム情報を指定する追加のシンタックス要素がSEIメッセージの中に存在することを指定する。
content_volume_num_lum_ranges_minus1+1は、コンテンツボリュームを記述するために使用されるルミナンス範囲の個数を指定する。content_volume_num_lum_ranges_minus1の値は、0〜255(両端値を含む)という範囲の中にあるものとする。存在しないとき、content_volume_num_lum_ranges_minus1の値は0に等しいものと推定される。
変数ContentVolumeNumLumRangesは、content_volume_num_lum_ranges_minus1+1に等しく設定される。
0に等しいcontent_volume_equal_lum_ranges_idcは、シンタックス要素content_volume_lum_value[i]が明示的にシグナリングされることを指定する。1または2に等しいcontent_volume_equal_lum_ranges_idcは、シンタックス要素content_volume_lum_value[i]が明示的にはシグナリングされないことを指定する。content_volume_num_lum_ranges_minus1が0に等しいとき、content_volume_equal_lum_ranges_idcの値は1に等しいものと推定される。content_volume_equal_lum_ranges_idcの値は、0〜2(両端値を含む)という範囲の中にあるものとする。3に等しいcontent_volume_equal_lum_ranges_idcの値は、ITU-T|ISO/IECによる将来の使用のために予約される。
content_volume_lum_value[i]は、content_volume_min_lum_valueおよびcontent_volume_max_lum_valueと同じユニットの中で、content_volume_equal_lum_ranges_idcが0に等しいときにカラーボリュームを指定するために使用される第iのルミナンス値を導出するために使用される。
変数ContentVolumeLuminanceRange[]は、0〜ContentVolumeNumLumRanges(両端値を含む)という範囲の中のiに対して次のように導出される。
ContentVolumeLuminanceRange[0]=content_volume_min_lum_value
lumDiffVal=content_volume_max_lum_value-content_volume_min_lum_value
for(i=1;i<ContentVolumeNumLumRanges;i++)
if(content_volume_equal_lum_ranges_idc==0)
ContentVolumeLuminanceRange[i]=content_volume_lum_value[i]
else if(content_volume_equal_lum_ranges_idc==1){
diffVal=lumDiffVal/ContentVolumeNumLumRanges
ContentVolumeLuminanceRange[i]=ContentVolumeLuminanceRange[i-1]+diffVal
}
else if(content_volume_equal_lum_ranges_idc==2){
logDiffVal=Log10(lumDiffVal)/ContentVolumeNumLumRanges
ContentVolumeLuminanceRange[i]=ContentVolumeLuminanceRange[0]+10(i*logDiffVal)
}
ContentVolumeLuminanceRange[ContentVolumeNumLumRanges]=content_volume_max_lum_value
ただし、「/」演算は、整数に丸めない除算を示す。
content_volume_num_chrom[i]は、コンテンツのカラーボリュームを記述するために使用される第iのルミナンス範囲に関連する色度の個数を指定する。content_volume_num_chrom[i]の値は、0〜15(両端値を含む)という範囲の中にあるものとする。存在しないとき、content_volume_num_chrom[i]の値は3に等しいものと推定される。
content_volume_chrom_x[i][j]およびcontent_volume_chrom_y[i][j]は、ISO11664-1(ISO11664-3およびCIE15も参照)において指定されるようなxおよびyのCIE1931定義に従って、それぞれ、第iのルミナンス値に対するカラーボリュームの推定値を導出するために使用される第jの色度座標の正規化されたxおよびy色度座標を0.00002の増分で指定する。content_volume_chrom_x[i][j]およびcontent_volume_chrom_y[i][j]の値は、0〜50 000(両端値を含む)という範囲の中にあるものとする。
存在しないとき、content_volume_chrom_x[i][c]およびcontent_volume_chrom_y[i][c]の値は、0〜content_volum_num_chrom[i]-1(両端値を含む)という範囲の中のc、および0〜ContentVolumeNumLumRanges(両端値を含む)という範囲の中のiに対して、それぞれ、content_gamut_primary_x[c]およびcontent_gamut_primary_y[c]に等しいものと推定される。
0〜ContentVolumeNumLumRanges(両端値を含む)という範囲の中のiの値ごとに、convexRegion[i]が、0〜content_volume_num_chrom[i]-1(両端値を含む)という範囲の中のjに対する色度座標content_volume_chrom_x[i][j]およびcontent_volume_chrom_y[i][j]の2次元の凸閉包を指すとする。
コンテンツのカラーボリューム、colorVolumeBoundingRegionは、0〜ContentVolumeNumLumRanges-1(両端値を含む)という範囲の中のiに対するcolorVolumeRegions[i]の和集合として規定され、ここで、colorVolumeRegions[i]は、点convexRegion[i]およびconvexRegion[i+1]の3次元の凸閉包として規定される。
【０１６３】
いくつかの代替形態では、カラーボリュームは次のように導出される。
0〜content_volume_num_chrom[i]-1(両端値を含む)という範囲の中のjに対して、convexRegion[i]の境界がすべての色度座標content_volume_chrom_x[i][j]およびcontent_volume_chrom_y[i][j]を含むことが、ビットストリーム準拠の要件である。
カラーボリュームは、0〜ContentVolumeNumLumRanges(両端値を含む)という範囲の中のiに対する座標ContentVolumeLuminanceRange[i]およびconvexRegion[i]を使用して導出される、3D領域colorVolumeBoundingRegion内に含まれるように指定される。領域colorVolumeBoundingRegionは、次のように規定される。すなわち、以下の条件のうちの1つが適用される場合、色度座標(x,y)およびルミナンス値Yを有する任意のカラーがcolorVolumeBoundingRegionの中に含まれる。
-  Yがcontent_volume_lum_max_valueに等しいこと、およびYがconvexRegion[content_volume_lum_max_value]の中に含まれること。
-  Yがcontent_volume_lum_max_valueよりも小さいこと、ならびに(x1,y1)および(x2,y2)が、それぞれ、convexRegion[lumIdx]およびconvexRegion[lumIdx+1]に属し、YがContentVolumeLuminanceRange[lumIdx]以上であるとともにContentVolumeLuminanceRange[lumIdx+1]よりも小さく、かつk*x1+(1-k)*x2がxに等しくk*y1+(1-k)*y2がyに等しいような、色度座標(x1,y1)および(x2,y2)と、0〜1(両端値を含む)という範囲の中の実数kと、0〜ContentVolumeNumLumRanges-1(両端値を含む)という範囲の中の少なくとも1つのlumIdxとが存在すること。
【０１６４】
いくつかの代替形態では、content_volume_equal_lum_ranges_idcが2に等しいとき、変数ContentVolumeLuminanceRange[]は固定小数点実装形態を使用して導出される。
【０１６５】
実施形態3
【０１６６】
この実施形態では、1つまたは複数の暗黙的カラーボリューム表現および1つまたは複数の明示的カラーボリューム表現がシグナリングされ、いくつかのボリューム表現を示すシンタックス要素、および示されるボリューム表現のタイプを指定するインジケータを含む。カラー(color)およびカラー(colour)という用語は、本明細書では同じ意味を有する。
【０１６７】
シンタックス構造
コンテンツカラーボリュームSEIメッセージのシンタックス
【０１６８】
【表４Ａ】
2019517205.tif 000006
【０１６９】
【表４Ｂ】
2019517205.tif 000007
【０１７０】
コンテンツカラーボリュームSEIメッセージのセマンティクス
コンテンツカラーボリュームSEIメッセージは、ディスプレイ仕様に従ってコンテンツをマッピングするためにディスプレイデバイスによって利用され得るコンテンツのカラーボリュームを示す。復号ビデオの色空間がコンテンツカラーボリューム表現の色空間に整合しないとき、変換プロセスは、復号ビデオをカラーボリュームの表現に変換するように導かれ、ボリューム表現は、次いで、SEIメッセージの中に存在するカラーボリューム表現によって記述される。コンテンツカラーボリューム表現が線形領域にあるとき、colour_primaries、transfer_charactreristics、およびmatrix_coeffsが、復号ビデオを線形光領域における表現に変換するために使用される。
content_colour_volume_idは、SEIメッセージの用途を識別するために使用され得る識別番号を含む。content_colour_volume_idの値は、0〜232-2(両端値を含む)という範囲の中にあるものとする。
0〜255および512〜231-1というcontent_colour_volume_idの値は、アプリケーションによって決定されるように使用され得る。256〜511および231〜232-2というcontent_colour_volume_idの値は、ITU-T|ISO/IECによる将来の使用のために予約される。256〜511(両端値を含む)という範囲の中または231〜232-2(両端値を含む)という範囲の中のcontent_colour_volume_idの値に遭遇するデコーダは、それを無視するものとする。
1に等しいcontent_colour_volume_persistence_cancel_flagは、SEIメッセージが、現在のレイヤに適用され出力順序において前のいかなるコンテンツカラーボリュームSEIメッセージの持続も取り消すことを示す。0に等しいcontent_colour_volume_persistence_cancel_flagは、コンテンツカラーボリューム情報が引き続くことを示す。
content_gamut_primary_x[c]およびcontent_gamut_primary_y[c]は、ISO11664-1(ISO11664-3およびCIE15も参照)において指定されるようなxおよびyのCIE1931定義に従って、それぞれ、コンテンツ色域の0〜2(両端値を含む)という範囲の中のcに対する原色成分cの正規化されたxおよびy色度座標を0.00002の増分で指定する。赤色、緑色、および青色の原色を使用してコンテンツ色域を記述するために、0に等しいインデックス値cが緑色の原色に対応すべきこと、1に等しいcが青色の原色に対応すべきこと、および2に等しいcが赤色の原色に対応すべきことが示唆される(付属書類Eおよび表E.3も参照)。content_gamut_primaries_x[c]およびcontent_gamut_primaries_y[c]の値は、0〜50 000(両端値を含む)という範囲の中にあるものとする。
content_volume_min_lum_valueは、コンテンツのカラーボリュームを指定するために使用される最小ルミナンス値を指定する。content_volume_min_lum_valueの値は、0.0001カンデラ毎平方メートルの単位である。
content_volume_max_lum_valueは、コンテンツのカラーボリュームを指定するために使用される最大ルミナンス値を指定する。content_volume_max_lum_valueの値は、0.0001カンデラ毎平方メートルの単位である。
colour_volume_num_implicit_repnは、SEIメッセージの中で指定されるコンテンツの暗黙的ボリューム表現の個数を指定する。colour_volume_num_implicit_repnの値は、0〜7(両端値を含む)という範囲の中にあるものとする。8〜255(両端値を含む)という範囲の中のcolour_volume_num_implicit_repnの値は、ITU-T|ISO/IECによる将来の使用のために予約される。
colour_volume_implicit_repn_type[i]は、シンタックス要素impl_vol_repn_primary_x[i][]、impl_vol_repn_primary_y[i][]、impl_vol_repn_primary_min[i][]、およびimpl_vol_repn_primary_max[i][]、ならびに変数NumValsRepn[i]およびPrimariesPresentFlag[i]の、Table 1(表5)で説明するような解釈を指定する。colour_volume_implicit_repn_type[i]の値は、0〜6(両端値を含む)という範囲の中にあるものとする。7〜255(両端値を含む)という範囲の中のcolour_volume_implicit_repn_type[i]の値は、ITU-T|ISO/IECによる将来の使用のために予約される。
colour_volume_impl_repn_primary_x[i][j]およびcolour_volume_impl_repn_primary_y[i][j]は、ISO11664-1(ISO11664-3およびCIE15も参照)において指定されるようなxおよびyのCIE1931定義に従って、それぞれ、Table 1(表5)から解釈されるような原色ボリューム表現に対する原色成分cの正規化されたxおよびy色度座標を0.00002の増分で指定する。インデックス値から各原色への解釈は、Table 1(表5)で指定されるようになる。colour_volume_impl_repn_primary_x[i][j]およびcolour_volume_impl_repn_primary_y[i][j]の値は、0〜50 000(両端値を含む)という範囲の中にあるものとする。
colour_volume_impl_primary_min[i][j]およびcolour_volume_impl_primary_max[i][j]は、対応する色空間への変換後の信号の、それぞれ、公称の最大値および最小値を0.0001カンデラ毎平方メートルの単位で指定し、ただし、色空間はTable 1(表1)で指定される。存在するとき、colour_volume_impl_primary_min[i][j]は、colour_volume_impl_primary_max[i][j]よりも小さいものとする。
colour_volume_implicit_repn_type[i]が3、4、または6に等しいとき、シンタックス要素colour_volume_impl_repn_primary_min[i][]およびcolour_volume_impl_repn_primary_max[i][]は、2の補数表現でシグナリングされる。colour_volume_implicit_repn_typeが0、1、2、および5に等しいとき、colour_volume_impl_repn_primary_min[i][]およびcolour_volume_impl_repn_primary_max[i][]は、2の補数表現でシグナリングされない。
【０１７１】
【表５】
2019517205.tif 000008
【０１７２】
colour_volume_num_explicit_repnは、SEIメッセージの中で指定されるコンテンツの明示的ボリューム表現の個数を指定する。colour_volume_num_explicit_repnの値は、0〜2(両端値を含む)という範囲の中にあるものとする。3〜255(両端値を含む)という範囲の中のcolour_volume_num_explicit_repnの値は、ITU-T|ISO/IECによる将来の使用のために予約される。
colour_volume_explicit_repn_type[i]は、シンタックス要素colour_volume_expl_num_coord_1[i][j][k]、colour_volume_expl_num_coord_2[i][j][k]、およびcolour_volume_expl_range_value[i][j]の、Table 1(表5)で説明するような解釈を指定する。colour_volume_explicit_repn_type[i]の値は、0〜1(両端値を含む)という範囲の中にあるものとする。2〜255(両端値を含む)という範囲の中のcolour_volume_explicit_repn_type[i]の値は、ITU-T|ISO/IECによる将来の使用のために予約される。
colour_volume_expl_num_ranges_minus2[i]+2は、Table 1(表1)によって指定されるような、色空間におけるコンテンツボリュームの横断面を記述するために第iの明示的表現において使用される範囲の個数を指定する。colour_volume_explicit_num_ranges_minus2[i]の値は、0〜255(両端値を含む)という範囲の中にあるものとする。存在しないとき、colour_volume_explicit_num_ranges_minus2[i]の値は0に等しいものと推定される。
変数ColourVolumeExplNumRanges[i]は、colour_volume_explicit_num_ranges_minus2[i]+2に等しく設定される。
0に等しいcolour_volume_expl_ranges_idc[i]は、シンタックス要素colour_volume_expl_range_value[i][j]が明示的にシグナリングされることを指定する。1または2に等しいcolour_volume_expl_ranges_idc[i]は、1〜ColourVolumeExplNumRanges[i]-1(両端値を含む)という範囲の中のjに対するシンタックス要素colour_volume_expl_range_value[i][j]が明示的にはシグナリングされないことを指定する。colour_volume_expl_num_ranges_minus2が0に等しいとき、colour_volume_expl_ranges_idc[i]の値は1に等しいものと推定される。colour_volume_expl_ranges_idc[i]の値は、0〜2(両端値を含む)という範囲の中にあるものとする。3に等しいcolour_volume_expl_ranges_idc[i]の値は、ITU-T|ISO/IECによる将来の使用のために予約される。
colour_volume_expl_range_val[i][j]は、コンテンツのカラーボリュームを指定するために使用される、colour_volume_explicit_repn_type[i]のセマンティクスおよびTable 1(表1)によって説明されるような、第1の次元の第jの値を導出するために使用される。colour_volume_expl_range_val[i][j]の値は、Table 1(表1)における第1の次元に対して指定されるように0.0001単位の増分である。
変数ColourVolumeExplRange[]は、0〜ColourVolumeExplNumRanges[i](両端値を含む)という範囲の中のiに対して次のように導出される。
ColourVolumeExplRange[i][0]=colour_volume_expl_range_val[i][0]
lumDiffVal=colour_volume_expl_range_val[i][ColourVolumeExplNumRanges[i]]-colour_volume_expl_range_val[i][0]
for(j=1;j<ColourVolumeExplNumRanges[j];i++)
if(colour_volume_expl_ranges_idc==0)
ColourVolumeExplRange[i]=colour_volume_expl_range_val[i][j]
else if(colour_volume_expl_ranges_idc==1){
diffVal=lumDiffVal÷ColourVolumeExplNumRanges[i]
ColourVolumeExplRange[i][j]=ColourVolumeExplRange[i][j-1]+diffVal
}
else if(colour_volume_expl_ranges_idc==2){
logDiffVal=Log10(lumDiffVal)÷ColourVolumeExplNumRanges[i]
ColourVolumeExplRange[i][j]=ColourVolumeExplRange[i][0]+10(j*logDiffVal)
}
ColourVolumeExplRange[i][ColourVolumeExplNumRanges[i]]=colour_volume_expl_range_val[i][ColourVolumeExplNumRanges[i]]
colour_volume_expl_num_coord[i]は、コンテンツのカラーボリュームの第iの明示的表現の第jのルミナンス範囲に関連する点の個数を指定する。colour_volume_expl_num_coord[i]の値は、0〜15(両端値を含む)という範囲の中にあるものとする。
colour_volume_expl_coord_1[i][j][k]およびcolour_volume_expl_coord_2[i][j][k]は、カラーボリュームの推定値を導出するために使用される第jの範囲に対応する第kの座標の、それぞれ、第2および第3の成分の座標を0.00002の増分で指定する。colour_volume_expl_coord_1[i][j][k]およびcolour_volume_expl_coord_2[i][j][k]の値は、0〜50 000(両端値を含む)という範囲の中にあるものとする。
0〜ColourVolumeExplNumRanges[i](両端値を含む)という範囲の中のjとしての値ごとに、convexRegion[i][j]が、0〜colour_volume_expl_num_coord[i]-1(両端値を含む)という範囲の中のkに対する座標colour_volume_expl_coord_1[i][j][k]およびcolour_volume_expl_coord_2[i][j][k]の2次元の凸閉包を指すとする。
コンテンツのカラーボリューム、colourVolumeBoundingRegionは、0〜ColourVolumeExplNumRanges[i]-1(両端値を含む)という範囲の中のjに対するcolourVolumeRegions[i][j]の和集合として規定され、ここで、colourVolumeRegions[i][j]は、点convexRegion[i][j]およびconvexRegion[i][j+1]の3次元の凸閉包として規定される。
【０１７３】
他の代替形態では、明示的ボリューム表現はまた、線形領域におけるRGB成分、非線形領域におけるRGB成分、または非線形領域におけるYCbCrのうちの1つまたは複数に対してシグナリングされ得る。
【０１７４】
いくつかの代替形態では、暗黙的ボリューム表現および明示的ボリューム表現に関連するシンタックス要素は、それぞれのシンタックス要素のセマンティクスで説明するような増分で表され、単位は、表における色表現のためのそれぞれの成分に対して記述される。
【０１７５】
本明細書で説明するコンテンツカラーボリューム技法は、(圧縮の前または後の)圧縮されたビデオフレームまたは圧縮されていないビデオフレームを使用して実施され得る。例示的なビデオ符号化および復号システムは、宛先デバイスによって後で復号されるべき符号化ビデオデータを提供するソースデバイスを含む。詳細には、ソースデバイスは、コンピュータ可読媒体を介して宛先デバイスにビデオデータを提供する。ソースデバイスおよび宛先デバイスは、デスクトップコンピュータ、ノートブック(すなわち、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲーミングコンソール、ビデオストリーミングデバイスなどを含む、広範囲のデバイスのいずれかを備え得る。場合によっては、ソースデバイスおよび宛先デバイスは、ワイヤレス通信のために装備され得る。
【０１７６】
宛先デバイスは、復号されるべき符号化ビデオデータを、コンピュータ可読媒体を介して受信し得る。コンピュータ可読媒体は、ソースデバイスから宛先デバイスへ符号化ビデオデータを移動することが可能な任意のタイプの媒体またはデバイスを備え得る。一例では、コンピュータ可読媒体は、ソースデバイスが符号化ビデオデータをリアルタイムで宛先デバイスに直接送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調されてよく、宛先デバイスへ送信されてよい。通信媒体は、無線周波数(RF)スペクトル、または1つもしくは複数の物理伝送線路などの、任意のワイヤレス通信媒体または有線通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなどの、パケットベースネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイスから宛先デバイスへの通信を容易にするために有用であり得る任意の他の機器を含み得る。
【０１７７】
いくつかの例では、符号化データは、出力インターフェースから記憶デバイスに出力され得る。同様に、符号化データは、入力インターフェースによって記憶デバイスからアクセスされ得る。記憶デバイスは、ハードドライブ、Blu-ray(登録商標)ディスク、DVD、CD-ROM、フラッシュメモリ、揮発性メモリもしくは不揮発性メモリ、または符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体などの、分散されるかまたは局所的にアクセスされる様々なデータ記憶媒体のいずれかを含み得る。さらなる例では、記憶デバイスは、ソースデバイスによって生成された符号化ビデオを記憶し得るファイルサーバまたは別の中間記憶デバイスに相当し得る。宛先デバイスは、記憶デバイスからの記憶されたビデオデータにストリーミングまたはダウンロードを介してアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶するとともにその符号化ビデオデータを宛先デバイスへ送信することが可能な、任意のタイプのサーバであってよい。例示的なファイルサーバは、ウェブサーバ(たとえば、ウェブサイト用の)、FTPサーバ、ネットワーク接続ストレージ(NAS)デバイス、またはローカルディスクドライブを含む。宛先デバイスは、インターネット接続を含む任意の標準的なデータ接続を通じて符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに適したワイヤレスチャネル(たとえば、Wi-Fi接続)、有線接続(たとえば、DSL、ケーブルモデムなど)、またはその両方の組合せを含み得る。記憶デバイスからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組合せであり得る。
【０１７８】
本開示の技法は、ワイヤレスの適用例または設定に必ずしも限定されるとは限らない。技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、動的適応ストリーミングオーバーHTTP(DASH:dynamic adaptive streaming over HTTP)などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されているデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例などの、様々なマルチメディア用途のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システムは、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および/またはビデオ電話などの適用例をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【０１７９】
一例では、ソースデバイスは、ビデオソース、ビデオエンコーダ、および出力インターフェースを含む。宛先デバイスは、入力インターフェース、ビデオデコーダ、およびディスプレイデバイスを含み得る。ソースデバイスのビデオエンコーダは、本明細書で開示する技法を適用するように構成され得る。他の例では、ソースデバイスおよび宛先デバイスは、他の構成要素または構成を含み得る。たとえば、ソースデバイスは、外部カメラなどの外部ビデオソースからビデオデータを受信してよい。同様に、宛先デバイスは、一体型ディスプレイデバイスを含むのではなく、外部のディスプレイデバイスとインターフェースしてよい。
【０１８０】
上記の例示的なシステムは一例にすぎない。ビデオデータを並行して処理するための技法は、任意のデジタルビデオ符号化および/または復号デバイスによって実行され得る。概して、本開示の技法はビデオ符号化デバイスによって実行されるが、技法はまた、通常は「コーデック」と呼ばれるビデオエンコーダ/デコーダによって実行されてよい。その上、本開示の技法はまた、ビデオプリプロセッサによって実行されてよい。ソースデバイスおよび宛先デバイスは、ソースデバイスが宛先デバイスへの送信のためにコード化ビデオデータを生成する、そのようなコーディングデバイスの例にすぎない。いくつかの例では、ソースデバイスおよび宛先デバイスは、デバイスの各々がビデオ符号化および復号構成要素を含むように、実質的に対称的に動作し得る。したがって、例示的なシステムは、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、またはビデオ電話のために、ビデオデバイス間での一方向または双方向のビデオ送信をサポートし得る。
【０１８１】
ビデオソースは、ビデオカメラなどのビデオキャプチャデバイス、以前にキャプチャされたビデオを含むビデオアーカイブ、および/またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースを含み得る。さらなる代替形態として、ビデオソースは、ソースビデオとしてのコンピュータグラフィックスベースデータ、またはライブビデオ、アーカイブされたビデオ、およびコンピュータ生成されたビデオの組合せを生成し得る。場合によっては、ビデオソースがビデオカメラである場合、ソースデバイスおよび宛先デバイスは、いわゆるカメラフォンまたはビデオフォンを形成し得る。しかしながら、上述のように、本開示で説明する技法は、一般に、ビデオコーディングに適用可能であり得、ワイヤレスおよび/または有線の適用例に適用され得る。各事例において、キャプチャされたビデオ、プリキャプチャされたビデオ、またはコンピュータ生成されたビデオは、ビデオエンコーダによって符号化され得る。符号化されたビデオ情報は、次いで、出力インターフェースによってコンピュータ可読媒体上に出力され得る。
【０１８２】
述べたように、コンピュータ可読媒体は、ワイヤレスブロードキャストもしくは有線ネットワーク送信などの一時的媒体、またはハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、Blu-ray(登録商標)ディスクなどの記憶媒体(すなわち、非一時的記憶媒体)、あるいは他のコンピュータ可読媒体を含み得る。いくつかの例では、ネットワークサーバ(図示せず)が、たとえば、ネットワーク送信を介して、ソースデバイスから符号化ビデオデータを受信し得、宛先デバイスに符号化ビデオデータを提供し得る。同様に、ディスクスタンピング施設などの媒体生産施設のコンピューティングデバイスが、ソースデバイスから符号化ビデオデータを受信し得、符号化ビデオデータを収容するディスクを生産し得る。したがって、コンピュータ可読媒体は、様々な例において、様々な形態の1つまたは複数のコンピュータ可読媒体を含むものと理解され得る。
【０１８３】
宛先デバイスの入力インターフェースは、コンピュータ可読媒体から情報を受信する。コンピュータ可読媒体の情報は、ブロックおよび他のコード化ユニット、たとえば、ピクチャグループ(GOP:group of pictures)の特性および/または処理を記述するシンタックス要素を含むとともにビデオエンコーダによって規定されるシンタックス情報を含み得、シンタックス情報はビデオデコーダによっても使用される。ディスプレイデバイスは、復号ビデオデータをユーザに表示し、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなどの、様々なディスプレイデバイスのいずれかを備え得る。本発明の様々な実施形態が説明されている。
【０１８４】
符号化デバイス104および復号デバイス112の具体的な詳細が、それぞれ、図12および図13に示される。図12は、本開示で説明する技法のうちの1つまたは複数を実施し得る例示的な符号化デバイス104を示すブロック図である。符号化デバイス104は、たとえば、本明細書で説明するシンタックス構造(たとえば、VPS、SPS、PPS、または他のシンタックス要素のシンタックス構造)を生成し得る。符号化デバイス104は、ビデオスライス内のビデオブロックのイントラ予測コーディングおよびインター予測コーディングを実行し得る。前に説明したように、イントラコーディングは、所与のビデオフレーム内またはピクチャ内の空間的冗長性を低減または除去するために、空間予測に少なくとも部分的に依拠する。インターコーディングは、ビデオシーケンスの隣接するかまたは周囲にあるフレーム内の時間的冗長性を低減または除去するために、時間予測に少なくとも部分的に依拠する。イントラモード(Iモード)とは、いくつかの空間ベース圧縮モードのうちのいずれかを指し得る。単方向予測(Pモード)または双予測(Bモード)などのインターモードとは、いくつかの時間ベース圧縮モードのうちのいずれかを指し得る。
【０１８５】
符号化デバイス104は、区分ユニット35、予測処理ユニット41、フィルタユニット63、ピクチャメモリ64、加算器50、変換処理ユニット52、量子化ユニット54、およびエントロピー符号化ユニット56を含む。予測処理ユニット41は、動き推定ユニット42、動き補償ユニット44、およびイントラ予測処理ユニット46を含む。ビデオブロック再構成のために、符号化デバイス104はまた、逆量子化ユニット58、逆変換処理ユニット60、および加算器62を含む。フィルタユニット63は、デブロッキングフィルタ、適応ループフィルタ(ALF:adaptive loop filter)、およびサンプル適応オフセット(SAO:sample adaptive offset)フィルタなどの、1つまたは複数のループフィルタを表すことを意図する。フィルタユニット63はループ内フィルタであるものとして図12で示されるが、他の構成では、フィルタユニット63は、ループ後フィルタとして実装されてよい。後処理デバイス57は、符号化デバイス104によって生成された符号化ビデオデータに対して追加の処理を実行し得る。本開示の技法は、いくつかの事例では、符号化デバイス104によって実施され得る。しかしながら、他の事例では、本開示の技法のうちの1つまたは複数は、後処理デバイス57によって実施されてよい。
【０１８６】
図12に示すように、符号化デバイス104はビデオデータを受信し、区分ユニット35はデータをビデオブロックに区分する。区分することはまた、スライス、スライスセグメント、タイル、または他のもっと大きい単位に区分すること、ならびに、たとえば、LCUおよびCUの4分木構造によるビデオブロック区分を含み得る。符号化デバイス104は、概して、符号化されるべきビデオスライス内のビデオブロックを符号化する構成要素を示す。スライスは、複数のビデオブロックに(また場合によっては、タイルと呼ばれるビデオブロックのセットに)分割され得る。予測処理ユニット41は、エラー結果(たとえば、コーディングレート、およびひずみのレベルなど)に基づいて、現在ビデオブロックに対して、複数のイントラ予測コーディングモードのうちの1つ、または複数のインター予測コーディングモードのうちの1つなどの、複数の可能なコーディングモードのうちの1つを選択し得る。予測処理ユニット41は、残差ブロックデータを生成するために加算器50に、また参照ピクチャとして使用するための符号化ブロックを再構成するために加算器62に、得られたイントラまたはインターコード化ブロックを提供し得る。
【０１８７】
予測処理ユニット41内のイントラ予測処理ユニット46は、空間的な圧縮を行うために、コーディングされるべき現在ブロックと同じフレームまたはスライスの中の1つまたは複数の隣接ブロックに対する現在ビデオブロックのイントラ予測コーディングを実行し得る。予測処理ユニット41内の動き推定ユニット42および動き補償ユニット44は、時間的な圧縮を行うために、1つまたは複数の参照ピクチャの中の1つまたは複数の予測ブロックに対する現在ビデオブロックのインター予測コーディングを実行する。
【０１８８】
動き推定ユニット42は、ビデオシーケンス用の所定のパターンに従ってビデオスライス用のインター予測モードを決定するように構成され得る。所定のパターンは、シーケンスの中のビデオスライスを、Pスライス、Bスライス、またはGPBスライスとして指定し得る。動き推定ユニット42および動き補償ユニット44は高度に集積され得るが、概念的な目的のために別個に図示される。動き推定ユニット42によって実行される動き推定は、ビデオブロックに対する動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、参照ピクチャ内の予測ブロックに対する、現在のビデオフレームまたはピクチャ内のビデオブロックの予測ユニット(PU)の変位を示し得る。
【０１８９】
予測ブロックは、絶対差分和(SAD)、2乗差分和(SSD)、または他の差分メトリックによって決定され得るピクセル差分に関して、コーディングされるべきビデオブロックのPUと厳密に一致することが判明したブロックである。いくつかの例では、符号化デバイス104は、ピクチャメモリ64に記憶された参照ピクチャのサブ整数ピクセル位置に対する値を計算し得る。たとえば、符号化デバイス104は、参照ピクチャの1/4ピクセル位置、1/8ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット42は、フルピクセル位置および分数ピクセル位置に対する動き探索を実行し得、分数ピクセル精度を有する動きベクトルを出力し得る。
【０１９０】
動き推定ユニット42は、PUの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライスの中のビデオブロックのPUに対する動きベクトルを計算する。参照ピクチャは、第1の参照ピクチャリスト(リスト0)または第2の参照ピクチャリスト(リスト1)から選択されてよく、その各々はピクチャメモリ64に記憶された1つまたは複数の参照ピクチャを識別する。動き推定ユニット42は、計算された動きベクトルをエントロピー符号化ユニット56および動き補償ユニット44へ送る。
【０１９１】
動き補償ユニット44によって実行される動き補償は、場合によっては、サブピクセル精度への補間を実行する動き推定によって決定される動きベクトルに基づいて、予測ブロックをフェッチまたは生成することを伴い得る。現在ビデオブロックのPUに対する動きベクトルを受信すると、動き補償ユニット44は、参照ピクチャリストの中で動きベクトルが指す予測ブロックの位置を特定し得る。符号化デバイス104は、コーディングされている現在ビデオブロックのピクセル値から予測ブロックのピクセル値を減算することによって残差ビデオブロックを形成し、ピクセル差分値を形成する。ピクセル差分値は、ブロックに対する残差データを形成し、ルーマ差分成分とクロマ差分成分の両方を含み得る。加算器50は、この減算演算を実行する1つまたは複数の構成要素を表す。動き補償ユニット44はまた、ビデオスライスのビデオブロックを復号する際に復号デバイス112によって使用するために、ビデオブロックおよびビデオスライスに関連するシンタックス要素を生成し得る。
【０１９２】
イントラ予測処理ユニット46は、上記で説明したように、動き推定ユニット42および動き補償ユニット44によって実行されるインター予測の代替として、現在ブロックをイントラ予測し得る。詳細には、イントラ予測処理ユニット46は、現在ブロックを符号化するために使用すべきイントラ予測モードを決定し得る。いくつかの例では、イントラ予測処理ユニット46は、たとえば、別個の符号化パスの間、様々なイントラ予測モードを使用して現在ブロックを符号化してよく、イントラ予測処理ユニット46は、テストされたモードの中から使用すべき適切なイントラ予測モードを選択し得る。たとえば、イントラ予測処理ユニット46は、テストされた様々なイントラ予測モードに対してレートひずみ分析を使用してレートひずみ値を計算し得、テストされたモードの中からレートひずみ特性が最良のイントラ予測モードを選択してよい。レートひずみ分析は、概して、符号化ブロックと、符号化ブロックを生成するために符号化された、符号化されていない元のブロックとの間のひずみ(すなわち、エラー)の量、ならびに符号化ブロックを生成するために使用されるビットレート(すなわち、ビット数)を決定する。イントラ予測処理ユニット46は、様々な符号化ブロックに対するひずみおよびレートから比を計算して、どのイントラ予測モードがブロックに対して最良のレートひずみ値を示すのかを決定し得る。
【０１９３】
いずれの場合も、ブロック用のイントラ予測モードを選択した後、イントラ予測処理ユニット46は、ブロック用の選択されたイントラ予測モードを示す情報をエントロピー符号化ユニット56に提供し得る。エントロピー符号化ユニット56は、選択されたイントラ予測モードを示す情報を符号化し得る。符号化デバイス104は、様々なブロック用の符号化コンテキストの構成データ定義、ならびに最確のイントラ予測モード、イントラ予測モードインデックステーブル、およびコンテキストの各々に対して使用すべき修正されたイントラ予測モードインデックステーブルの表示を、送信されるビットストリームの中に含め得る。ビットストリーム構成データは、複数のイントラ予測モードインデックステーブルおよび複数の修正済みイントラ予測モードインデックステーブル(コードワードマッピングテーブルとも呼ばれる)を含み得る。
【０１９４】
予測処理ユニット41がインター予測またはイントラ予測のいずれかを介して現在ビデオブロックに対する予測ブロックを生成した後、符号化デバイス104は、現在ビデオブロックから予測ブロックを減算することによって残差ビデオブロックを形成する。残差ブロックの中の残差ビデオデータは、1つまたは複数のTUの中に含められてよく、変換処理ユニット52に適用され得る。変換処理ユニット52は、離散コサイン変換(DCT)または概念的に類似の変換などの変換を使用して、残差ビデオデータを残差変換係数に変換する。変換処理ユニット52は、ピクセル領域から周波数領域などの変換領域に、残差ビデオデータを変換し得る。
【０１９５】
変換処理ユニット52は、得られた変換係数を量子化ユニット54に送り得る。量子化ユニット54は、変換係数を量子化してビットレートをさらに低減する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって修正され得る。いくつかの例では、量子化ユニット54は、次いで、量子化変換係数を含む行列の走査を実行し得る。代替として、エントロピー符号化ユニット56が走査を実行してもよい。
【０１９６】
量子化に続いて、エントロピー符号化ユニット56は、量子化変換係数をエントロピー符号化する。たとえば、エントロピー符号化ユニット56は、コンテキスト適応型可変長コーディング(CAVLC:context adaptive variable length coding)、コンテキスト適応型バイナリ算術コーディング(CABAC:context adaptive binary arithmetic coding)、シンタックスベースコンテキスト適応型バイナリ算術コーディング(SBAC:syntax-based context-adaptive binary arithmetic coding)、確率間隔区分エントロピー(PIPE:probability interval partitioning entropy)コーディング、または別のエントロピー符号化技法を実行し得る。エントロピー符号化ユニット56によるエントロピー符号化に続いて、符号化ビットストリームは、復号デバイス112へ送信されてよく、または復号デバイス112によって後で送信もしくは取出しができるようにアーカイブされてもよい。エントロピー符号化ユニット56はまた、コーディングされている現在ビデオスライス用の動きベクトルおよび他のシンタックス要素をエントロピー符号化し得る。
【０１９７】
逆量子化ユニット58および逆変換処理ユニット60は、参照ピクチャの参照ブロックとして後で使用できるように、それぞれ、逆量子化および逆変換を適用してピクセル領域における残差ブロックを再構築する。動き補償ユニット44は、参照ピクチャリスト内の参照ピクチャのうちの1つの予測ブロックに残差ブロックを加算することによって、参照ブロックを計算し得る。動き補償ユニット44はまた、動き推定において使用するためのサブ整数ピクセル値を計算するために、1つまたは複数の補間フィルタを再構成残差ブロックに適用し得る。加算器62は、ピクチャメモリ64に記憶するための参照ブロックを生成するために、動き補償ユニット44によって生成された動き補償予測ブロックに再構成残差ブロックを加算する。参照ブロックは、後続のビデオフレームまたはピクチャの中のブロックをインター予測するための参照ブロックとして、動き推定ユニット42および動き補償ユニット44によって使用され得る。
【０１９８】
このようにして、図12の符号化デバイス104は、符号化ビデオビットストリームのためのシンタックスを生成するように構成されたビデオエンコーダの一例を表す。符号化デバイス104は、たとえば、上記で説明したように、CRI SEIメッセージのためのシンタックスを生成し得る。符号化デバイス104は、図9および図10に関して上記で説明したプロセスを含む、本明細書で説明する技法のうちのいずれかを実行し得る。本開示の技法は、概して、符号化デバイス104に関して説明されているが、上述のように、本開示の技法のいくつかはまた、後処理デバイス57によって実施されてよい。
【０１９９】
図13は、例示的な復号デバイス112を示すブロック図である。復号デバイス112は、エントロピー復号ユニット80、予測処理ユニット81、逆量子化ユニット86、逆変換処理ユニット88、加算器90、フィルタユニット91、およびピクチャメモリ92を含む。予測処理ユニット81は、動き補償ユニット82およびイントラ予測処理ユニット84を含む。復号デバイス112は、いくつかの例では、図12からの符号化デバイス104に関して説明した符号化パスとは概して逆の復号パスを実行し得る。復号デバイス112は、図9および図11に関して上記で説明したプロセスを含む、本明細書で説明する技法のうちのいずれかを実行し得る。
【０２００】
復号プロセスの間、復号デバイス112は、符号化デバイス104によって送られた符号化ビデオスライスのビデオブロックおよび関連するシンタックス要素を表す符号化ビデオビットストリームを受信する。いくつかの実施形態では、復号デバイス112は、符号化デバイス104から符号化ビデオビットストリームを受信し得る。いくつかの実施形態では、復号デバイス112は、サーバ、メディアアウェアネットワーク要素(MANE:media-aware network element)、ビデオエディタ/スプライサ、または上記で説明した技法のうちの1つもしくは複数を実施するように構成されたそのような他のデバイスなどのネットワークエンティティ79から、符号化ビデオビットストリームを受信し得る。ネットワークエンティティ79は、符号化デバイス104を含んでも含まなくてもよい。本開示で説明する技法のうちのいくつかは、ネットワークエンティティ79が符号化ビデオビットストリームを復号デバイス112へ送信する前に、ネットワークエンティティ79によって実施され得る。いくつかのビデオ復号システムでは、ネットワークエンティティ79および復号デバイス112は、別個のデバイスの一部であってよく、他の事例では、ネットワークエンティティ79に関して説明する機能は、復号デバイス112を備える同じデバイスによって実行されてよい。
【０２０１】
復号デバイス112のエントロピー復号ユニット80は、ビットストリームをエントロピー復号して、量子化係数、動きベクトル、および他のシンタックス要素を生成する。エントロピー復号ユニット80は、動きベクトルおよび他のシンタックス要素を予測処理ユニット81に転送する。復号デバイス112は、ビデオスライスレベルおよび/またはビデオブロックレベルにおいてシンタックス要素を受信し得る。エントロピー復号ユニット80は、VPS、SPS、およびPPSなどの1つまたは複数のパラメータセットの中の、固定長シンタックス要素と可変長シンタックス要素の両方を処理および構文解析し得る。
【０２０２】
ビデオスライスがイントラコード化(I)スライスとしてコーディングされるとき、予測処理ユニット81のイントラ予測処理ユニット84は、シグナリングされたイントラ予測モード、および現在フレームまたは現在ピクチャの以前に復号されたブロックからのデータに基づいて、現在ビデオスライスのビデオブロックに対する予測データを生成し得る。ビデオフレームがインターコード化(すなわち、B、P、またはGPB)スライスとしてコーディングされるとき、予測処理ユニット81の動き補償ユニット82は、エントロピー復号ユニット80から受信された動きベクトルおよび他のシンタックス要素に基づいて、現在ビデオスライスのビデオブロックに対する予測ブロックを生成する。予測ブロックは、参照ピクチャリスト内の参照ピクチャのうちの1つから生成され得る。復号デバイス112は、ピクチャメモリ92に記憶された参照ピクチャに基づいて、デフォルトの構成技法を使用して、参照フレームリスト、すなわち、リスト0およびリスト1を構成し得る。
【０２０３】
動き補償ユニット82は、動きベクトルおよび他のシンタックス要素を構文解析することによって、現在ビデオスライスのビデオブロックに対する予測情報を決定し、予測情報を使用して、復号されている現在ビデオブロックに対する予測ブロックを生成する。たとえば、動き補償ユニット82は、パラメータセットの中の1つまたは複数のシンタックス要素を使用して、ビデオスライスのビデオブロックをコーディングするために使用された予測モード(たとえば、イントラ予測またはインター予測)、インター予測スライスタイプ(たとえば、Bスライス、Pスライス、またはGPBスライス)、スライス用の1つまたは複数の参照ピクチャリストに対する構成情報、スライスのインター符号化ビデオブロックごとの動きベクトル、スライスのインターコード化ビデオブロックごとのインター予測ステータス、および現在ビデオスライスの中のビデオブロックを復号するための他の情報を決定し得る。
【０２０４】
動き補償ユニット82はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット82は、ビデオブロックの符号化の間に符号化デバイス104によって使用されたような補間フィルタを使用して、参照ブロックのサブ整数ピクセルに対する補間値を計算し得る。この場合、動き補償ユニット82は、符号化デバイス104によって使用された補間フィルタを、受信されたシンタックス要素から決定し得、予測ブロックを生成するためにその補間フィルタを使用し得る。
【０２０５】
逆量子化ユニット86は、ビットストリームの中で提供されるとともにエントロピー復号ユニット80によって復号された量子化変換係数を逆量子化(inverse quantize)または逆量子化(de-quantize)する。逆量子化プロセスは、量子化の程度、および同様に、適用されるべき逆量子化の程度を決定するために、ビデオスライスの中のビデオブロックごとに符号化デバイス104によって計算された量子化パラメータを使用することを含み得る。逆変換処理ユニット88は、ピクセル領域における残差ブロックを生成するために、変換係数に逆変換(たとえば、逆DCTまたは他の好適な逆変換)、逆整数変換、または概念的に類似の逆変換プロセスを適用する。
【０２０６】
動き補償ユニット82が動きベクトルおよび他のシンタックス要素に基づいて現在ビデオブロックに対する予測ブロックを生成した後、復号デバイス112は、逆変換処理ユニット88からの残差ブロックを、動き補償ユニット82によって生成された対応する予測ブロックと加算することによって、復号ビデオブロックを形成する。加算器90は、この加算演算を実行する1つまたは複数の構成要素を表す。所望される場合、(コーディングループ中またはコーディングループ後のいずれかの)ループフィルタも、ピクセル遷移を平滑化するために、または別の方法でビデオ品質を改善するために使用され得る。フィルタユニット91は、デブロッキングフィルタ、適応ループフィルタ(ALF)、およびサンプル適応オフセット(SAO)フィルタなどの、1つまたは複数のループフィルタを表すことを意図する。フィルタユニット91はループ内フィルタであるものとして図13に示されるが、他の構成では、フィルタユニット91は、ループ後フィルタとして実装されてよい。所与のフレームまたはピクチャの中の復号ビデオブロックは、次いで、ピクチャメモリ92に記憶され、ピクチャメモリ92は、後続の動き補償のために使用される参照ピクチャを記憶する。ピクチャメモリ92はまた、図1に示すビデオ宛先デバイス122などのディスプレイデバイス上で後で提示できるように、復号ビデオを記憶する。
【０２０７】
上記の説明では、本出願の態様は、それらの特定の実施形態を参照しながら説明されるが、本発明がそれらに限定されないことを当業者は認識されよう。したがって、本出願の例示的な実施形態が本明細書で詳細に説明されているが、本発明の概念が別の方法で様々に具現化または採用されてよく、従来技術による限定を除いて、添付の特許請求の範囲がそのような変形形態を含むものと解釈されることを意図することを理解されたい。上記で説明した発明の様々な特徴および態様は、個別または一緒に使用され得る。さらに、実施形態は、本明細書のより広い趣旨および範囲から逸脱することなく、本明細書で説明したものを越えた任意の数の環境および適用例において利用され得る。したがって、本明細書および図面は、限定ではなく例示であると見なされるべきである。例示のために、方法は特定の順序で説明された。代替実施形態では、説明された順序とは異なる順序で方法が実行され得ることを諒解されたい。
【０２０８】
構成要素がいくつかの動作を実行する「ように構成される」ものとして説明される場合、そのような構成は、たとえば、動作を実行するように電子回路もしくはハードウェアを設計することによって、動作を実行するようにプログラマブル電子回路(たとえば、マイクロプロセッサ、または他の好適な電子回路)をプログラムすることによって、またはそれらの任意の組合せで達成され得る。
【０２０９】
本明細書で開示する実施形態に関して説明した様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、ファームウェア、またはそれらの組合せとして実装され得る。ハードウェアとソフトウェアとのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップが、全般にそれらの機能に関して上で説明されている。そのような機能が、ハードウェアとして実装されるのか、それともソフトウェアとして実装されるのかは、特定の適用例および全体的なシステムに課される設計制約によって決まる。当業者は、説明した機能を具体的な適用例ごとに様々な方法で実装し得るが、そのような実装決定が本発明の範囲からの逸脱を引き起こすものと解釈されるべきではない。
【０２１０】
本明細書で説明した技法はまた、電子ハードウェア、コンピュータソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。そのような技法は、汎用コンピュータ、ワイヤレス通信デバイスハンドセット、またはワイヤレス通信デバイスハンドセットおよび他のデバイスにおける適用例を含む複数の用途を有する集積回路デバイスなどの、様々なデバイスのいずれかにおいて実施され得る。モジュールまたは構成要素として説明した任意の特徴が、集積論理デバイスの中で一緒に、または個別であるが相互動作可能な論理デバイスとして別個に実装され得る。ソフトウェアで実装される場合、技法は、実行されたとき、上記で説明した方法のうちの1つまたは複数を実行する命令を含むプログラムコードを備える、コンピュータ可読データ記憶媒体によって少なくとも部分的に実現され得る。コンピュータ可読データ記憶媒体は、パッケージング材料を含み得るコンピュータプログラム製品の一部を形成し得る。コンピュータ可読媒体は、同期ダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM)、フラッシュメモリ、磁気または光データ記憶媒体などの、メモリまたはデータ記憶媒体を備え得る。技法は、追加または代替として、伝搬される信号または波などの、命令またはデータ構造の形態でプログラムコードを搬送または通信するとともに、コンピュータによってアクセスされ、読み取られ、かつ/または実行され得る、コンピュータ可読通信媒体によって少なくとも部分的に実現され得る。
【０２１１】
プログラムコードは、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、または他の等価な集積論理回路構成もしくは個別論理回路構成などの、1つまたは複数のプロセッサを含み得るプロセッサによって実行され得る。そのようなプロセッサは、本開示で説明した技法のうちのいずれかを実行するように構成され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成として実装され得る。したがって、本明細書で使用する「プロセッサ」という用語は、上記の構造、上記の構造の任意の組合せ、または本明細書で説明した技法の実装に適した任意の他の構造もしくは装置のいずれかを指し得る。加えて、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のソフトウェアモジュールもしくはハードウェアモジュール内に設けられてよく、または複合ビデオエンコーダ/デコーダ(コーデック)に組み込まれてよい。
【符号の説明】
【０２１２】
100  システム
102  ビデオソース
104  符号化デバイス
106  エンコーダエンジン
108  ストレージ
110  出力部
112  復号デバイス
114  入力部
116  デコーダエンジン
118  ストレージ
120  通信リンク
122  ビデオ宛先デバイス
202  超高精細テレビジョン用の色域
204  標準ダイナミックレンジ色域
206  スペクトル軌跡
302  コンテンツ色域
312  最大ルミナンス値
314  最小ルミナンス値
316  青色の原色用の色度座標
318  赤色の原色用の色度座標
320  緑色の原色用の色度座標
402  コンテンツ色域
422  ディスプレイ色域
432  コンテナ色域
800  ビデオビットストリーム
840  ピクチャ
841  ビデオパラメータセット
842  シーケンスパラメータセット
843  ピクチャパラメータセット
844  コンテンツカラーボリュームSEIメッセージ
847  コンテンツカラーボリューム情報
845〜846  スライス
【図１】
2019517205.tif 000009
【図２】
2019517205.tif 000010
【図３】
2019517205.tif 000011
【図４】
2019517205.tif 000012
【図５】
2019517205.tif 000013
【図６】
2019517205.tif 000014
【図７】
2019517205.tif 000015
【図８】
2019517205.tif 000016
【図９】
2019517205.tif 000017
【図１０】
2019517205.tif 000018
【図１１】
2019517205.tif 000019
【図１２】
2019517205.tif 000020
【図１３】
2019517205.tif 000021
【手続補正書】
【提出日】平成30年11月20日(2018.11.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオビットストリームを処理する方法であって、
前記ビデオビットストリームを取得するステップと、
前記ビデオビットストリームからビデオコンテンツデータを取得するステップと、
前記ビデオコンテンツデータに加えてコンテンツカラーボリューム情報を取得するステップであって、前記コンテンツカラーボリューム情報が、前記ビデオコンテンツデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示し、前記コンテンツカラーボリューム情報が、前記1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、前記1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および前記1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む、ステップと、
前記コンテンツカラーボリューム情報に基づいて前記ビデオコンテンツデータを処理するステップと
を備える方法。
【請求項２】
前記第1のルミナンス値が、正規化最小ルミナンス値を含み、前記第2のルミナンス値が、正規化最大ルミナンス値を含む、請求項1に記載の方法。
【請求項３】
前記第1のルミナンス値が、前記1つまたは複数のピクチャの最小ルミナンス値を導出するために使用され、前記第2のルミナンス値が、前記1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される、請求項1に記載の方法。
【請求項４】
前記コンテンツカラーボリューム情報が、前記コンテンツカラーボリューム情報のサブセットがシグナリングされることを示すシンタックス要素を含む、請求項1に記載の方法。
【請求項５】
前記コンテンツカラーボリューム情報が、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる、請求項1に記載の方法。
【請求項６】
前記1つまたは複数の色度座標が、前記1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む、請求項1に記載の方法。
【請求項７】
前記3つの色度座標が、前記1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、前記1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および前記1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む、請求項6に記載の方法。
【請求項８】
装置であって、
ビデオビットストリームを記憶するように構成されたメモリと、
プロセッサとを備え、前記プロセッサが、
前記ビデオビットストリームを取得することと、
前記ビデオビットストリームからビデオコンテンツデータを取得することと、
前記ビデオコンテンツデータに加えてコンテンツカラーボリューム情報を取得することであって、前記コンテンツカラーボリューム情報が、前記ビデオコンテンツデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示し、前記コンテンツカラーボリューム情報が、前記1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、前記1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および前記1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含むことと、
前記コンテンツカラーボリューム情報に基づいて前記ビデオコンテンツデータを処理することとを行うように構成される、
装置。
【請求項９】
前記第1のルミナンス値が、正規化最小ルミナンス値を含み、前記第2のルミナンス値が、正規化最大ルミナンス値を含む、請求項8に記載の装置。
【請求項１０】
前記第1のルミナンス値が、前記1つまたは複数のピクチャの最小ルミナンス値を導出するために使用され、前記第2のルミナンス値が、前記1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される、請求項8に記載の装置。
【請求項１１】
前記コンテンツカラーボリューム情報が、前記コンテンツカラーボリューム情報のサブセットがシグナリングされることを示すシンタックス要素を含む、請求項8に記載の装置。
【請求項１２】
前記コンテンツカラーボリューム情報が、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる、請求項8に記載の装置。
【請求項１３】
前記1つまたは複数の色度座標が、前記1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む、請求項8に記載の装置。
【請求項１４】
前記3つの色度座標が、前記1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、前記1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および前記1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む、請求項13に記載の装置。
【請求項１５】
ピクチャをキャプチャするためのカメラを有するモバイルデバイスを備える、請求項8に記載の装置。
【請求項１６】
前記ビデオコンテンツデータを表示するためのディスプレイ
をさらに備える、請求項8に記載の装置。
【請求項１７】
命令を記憶したコンピュータ可読記憶媒体であって、前記命令が、1つまたは複数のプロセッサによって実行されたとき、前記1つまたは複数のプロセッサに、
ビデオビットストリームを取得することと、
前記ビデオビットストリームからビデオコンテンツデータを取得することと、
前記ビデオコンテンツデータに加えてコンテンツカラーボリューム情報を取得することであって、前記コンテンツカラーボリューム情報が、前記ビデオコンテンツデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示し、前記コンテンツカラーボリューム情報が、前記1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、前記1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および前記1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含むことと、
前記コンテンツカラーボリューム情報に基づいて前記ビデオコンテンツデータを処理することとを行わせる、
コンピュータ可読記憶媒体。
【請求項１８】
前記第1のルミナンス値が、正規化最小ルミナンス値を含み、前記第2のルミナンス値が、正規化最大ルミナンス値を含む、請求項17に記載のコンピュータ可読記憶媒体。
【請求項１９】
前記第1のルミナンス値が、前記1つまたは複数のピクチャの最小ルミナンス値を導出するために使用され、前記第2のルミナンス値が、前記1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される、請求項17に記載のコンピュータ可読記憶媒体。
【請求項２０】
前記コンテンツカラーボリューム情報が、前記コンテンツカラーボリューム情報のサブセットがシグナリングされることを示すシンタックス要素を含む、請求項17に記載のコンピュータ可読記憶媒体。
【請求項２１】
前記コンテンツカラーボリューム情報が、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる、請求項17に記載のコンピュータ可読記憶媒体。
【請求項２２】
前記1つまたは複数の色度座標が、前記1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む、請求項17に記載のコンピュータ可読記憶媒体。
【請求項２３】
前記3つの色度座標が、前記1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、前記1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および前記1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む、請求項22に記載のコンピュータ可読記憶媒体。
【請求項２４】
装置であって、
ビデオビットストリームを取得するための手段と、
前記ビデオビットストリームからビデオコンテンツデータを取得するための手段と、
前記ビデオコンテンツデータに加えてコンテンツカラーボリューム情報を取得するための手段であって、前記コンテンツカラーボリューム情報が、前記ビデオコンテンツデータの1つまたは複数のピクチャのコンテンツカラーボリュームを示し、前記コンテンツカラーボリューム情報が、前記1つまたは複数のピクチャの最小ルミナンスに関連する第1のルミナンス値、前記1つまたは複数のピクチャの最大ルミナンスに関連する第2のルミナンス値、および前記1つまたは複数のピクチャの色域を記述する1つまたは複数の原色の1つまたは複数の色度座標を含む、手段と、
前記コンテンツカラーボリューム情報に基づいて前記ビデオコンテンツデータを処理するための手段と
を備える装置。
【請求項２５】
前記第1のルミナンス値が、正規化最小ルミナンス値を含み、前記第2のルミナンス値が、正規化最大ルミナンス値を含む、請求項24に記載の装置。
【請求項２６】
前記第1のルミナンス値が、前記1つまたは複数のピクチャの最小ルミナンス値を導出するために使用され、前記第2のルミナンス値が、前記1つまたは複数のピクチャの最大ルミナンス値を導出するために使用される、請求項24に記載の装置。
【請求項２７】
前記コンテンツカラーボリューム情報が、前記コンテンツカラーボリューム情報のサブセットがシグナリングされることを示すシンタックス要素を含む、請求項24に記載の装置。
【請求項２８】
前記コンテンツカラーボリューム情報が、補足エンハンスメント情報(SEI)メッセージの1つまたは複数のシンタックス要素を使用してシグナリングされる、請求項24に記載の装置。
【請求項２９】
前記1つまたは複数の色度座標が、前記1つまたは複数のピクチャの3原色を指定する3つの色度座標を含む、請求項24に記載の装置。
【請求項３０】
前記3つの色度座標が、前記1つまたは複数のピクチャの緑色の原色用の緑色の色度座標、前記1つまたは複数のピクチャの赤色の原色用の赤色の色度座標、および前記1つまたは複数のピクチャの青色の原色用の青色の色度座標を含む、請求項29に記載の装置。
【国際調査報告】
2019517205.tif 000022
2019517205.tif 000023