(57)【要約】  固定小数点実装を使用して、高ダイナミックレンジおよびまたは広色域ビデオデータを処理すること。ビデオデータを処理する方法は、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージを受信することと、復号ビデオデータを受信することと、１つまたは複数のＳＥＩメッセージ中の情報に従って、固定小数点算出を使用して、復号ビデオデータに対して逆ダイナミックレンジ調整プロセスを実行することとを含み得る。
2018533278.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータを処理する方法であって、前記方法が、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信することと、
復号ビデオデータを受信することと、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行することと
を備える、方法。
【請求項２】
前記１つまたは複数のシンタックス要素を受信することが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信することを備え、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、請求項１に記載の方法。
【請求項３】
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、請求項２に記載の方法。
【請求項４】
小数ビットの前記第１の数と、小数ビットビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定すること
をさらに備える、請求項３に記載の方法。
【請求項５】
前記パラメータを決定することは、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定することと、
所定の小数正確さに基づいて、前記パラメータを決定するために最終結果をクリッピングすることと
をさらに備える、請求項４に記載の方法。
【請求項６】
前記パラメータを決定することが、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定すること
をさらに備える、請求項４に記載の方法。
【請求項７】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、前記方法が、
前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定すること
をさらに備える、請求項１に記載の方法。
【請求項８】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのためのサンプル値の所定のレンジに対するインデックスを含み、前記方法が、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定することと、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定することと
をさらに備える、請求項１に記載の方法。
【請求項９】
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信することと、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行することと、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、
をさらに備える、請求項１に記載の方法。
【請求項１０】
前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に前記復号ビデオデータを表示すること
をさらに備える、請求項１に記載の方法。
【請求項１１】
ビデオデータを処理するように構成された装置であって、前記装置が、
復号ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサと
を備え、前記１つまたは複数のプロセッサが、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信することと、
前記復号ビデオデータを受信することと、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行することと
を行うように構成された、装置。
【請求項１２】
前記１つまたは複数のプロセッサが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信することを行うようにさらに構成されたことを受信し、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、請求項１１に記載の装置。
【請求項１３】
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、請求項１２に記載の装置。
【請求項１４】
前記１つまたは複数のプロセッサが、
小数ビットの前記第１の数と、部分ビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定すること
を行うようにさらに構成された、請求項１３に記載の装置。
【請求項１５】
前記パラメータを決定するために、前記１つまたは複数のプロセッサは、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定することと、
所定の小数正確さに基づいて、前記パラメータを決定するための最終結果をクリッピングすることと
を行うようにさらに構成された、請求項１４に記載の装置。
【請求項１６】
前記パラメータを決定するために、前記１つまたは複数のプロセッサが、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定すること
を行うようにさらに構成された、請求項１４に記載の装置。
【請求項１７】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、ここにおいて、前記１つまたは複数のプロセッサが、
前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定すること
を行うようにさらに構成された、請求項１１に記載の装置。
【請求項１８】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのサンプル値の所定のレンジに対するインデックスを含み、ここにおいて、前記１つまたは複数のプロセッサが、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定することと、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定することと
を行うようにさらに構成された、請求項１１に記載の装置。
【請求項１９】
前記１つまたは複数のプロセッサが、
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信することと、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行することと、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、
を行うようにさらに構成された、請求項１１に記載の装置。
【請求項２０】
前記装置は、
前記１つまたは複数のプロセッサが、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に、前記復号ビデオデータを表示するように構成されたディスプレイ
をさらに備える、請求項１１に記載の装置。
【請求項２１】
前記装置が、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの１つまたは複数を備える、請求項１１に記載の装置。
【請求項２２】
ビデオデータを処理するように構成された装置であって、前記装置が、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信するための手段と、
復号ビデオデータを受信するための手段と、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行するための手段と
を備える、装置。
【請求項２３】
前記１つまたは複数のシンタックス要素を受信するための前記手段が、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信するための手段を備え、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、請求項２２に記載の装置。
【請求項２４】
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、請求項２３に記載の装置。
【請求項２５】
小数ビットの前記第１の数と、部分ビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定するための手段
をさらに備える、請求項２４に記載の装置。
【請求項２６】
前記パラメータを決定するための前記手段は、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定するための手段と、
所定の小数正確さに基づいて、前記パラメータを決定するための最終結果をクリッピングするための手段と
をさらに備える、請求項２５に記載の装置。
【請求項２７】
前記パラメータを決定するための前記手段が、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定するための手段
をさらに備える、請求項２５に記載の装置。
【請求項２８】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、前記装置が、
前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定するための手段
をさらに備える、請求項２２に記載の装置。
【請求項２９】
前記情報が、前記復号ビデオデータのサンプル値または１つまたは複数の色コンポーネントの所定のレンジに対するインデックスを含み、前記装置が、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定するための手段と、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定するための手段と
をさらに備える、請求項２２に記載の装置。
【請求項３０】
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信するための手段と、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行するための手段と、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、
をさらに備える、請求項２２に記載の装置。
【請求項３１】
前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に前記復号ビデオデータを表示するための手段
をさらに備える、請求項２２に記載の装置。
【請求項３２】
実行されたとき、ビデオデータを処理するように構成されたデバイスの１つまたは複数のプロセッサに、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信することと、
前記復号ビデオデータを受信することと、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行することと
を行わせる命令を記憶するコンピュータ可読記憶媒体。
【請求項３３】
前記命令が、前記１つまたは複数のプロセッサに、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信することをさらに行わせ、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、請求項３２に記載のコンピュータ可読記憶媒体。
【請求項３４】
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、請求項３３に記載のコンピュータ可読記憶媒体。
【請求項３５】
前記命令が、前記１つまたは複数のプロセッサに、
小数ビットの前記第１の数と、部分ビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定すること
をさらに行わせる、請求項３４に記載のコンピュータ可読記憶媒体。
【請求項３６】
前記命令は、前記１つまたは複数のプロセッサに、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定することと、
所定の小数正確さに基づいて、前記パラメータを決定するための最終結果をクリッピングすることと
をさらに行わせる、請求項３５に記載のコンピュータ可読記憶媒体。
【請求項３７】
前記命令が、前記１つまたは複数のプロセッサに、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定すること
をさらに行わせる、請求項３５に記載のコンピュータ可読記憶媒体。
【請求項３８】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、ここにおいて、前記命令が、前記１つまたは複数のプロセッサに、
前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定すること
をさらに行わせる、請求項３２に記載のコンピュータ可読記憶媒体。
【請求項３９】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのサンプル値の所定のレンジに対するインデックスを含み、ここにおいて、前記命令が、前記１つまたは複数のプロセッサに、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定することと、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定することと
をさらに行わせる、請求項３２に記載のコンピュータ可読記憶媒体。
【請求項４０】
前記命令が、前記１つまたは複数のプロセッサに、
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信することと、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行することと、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、
をさらに行わせる、請求項３２に記載のコンピュータ可読記憶媒体。
【請求項４１】
前記命令が、前記１つまたは複数のプロセッサに、
前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に前記復号ビデオデータを表示すること
をさらに行わせる、請求項３２に記載のコンピュータ可読記憶媒体。
【請求項４２】
ビデオデータを処理する方法であって、前記方法が、
固定小数点算出を使用してビデオデータに対してダイナミックレンジ調整プロセスを実行することと、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することと、
を備える、方法。
【請求項４３】
前記１つまたは複数のシンタックス要素を発生することが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を発生することを備え、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、請求項４２に記載の方法。
【請求項４４】
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、請求項４３に記載の方法。
【請求項４５】
前記情報が、前記ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含む、請求項４２に記載の方法。
【請求項４６】
前記情報が、前記復号ビデオデータのサンプル値の所定のレンジに対するインデックスを含む、請求項４２に記載の方法。
【請求項４７】
カメラを用いて前記ビデオデータをキャプチャすること
をさらに備える、請求項４２に記載の方法。
【請求項４８】
ビデオデータを処理するように構成された装置であって、前記装置が、
ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサと
を備え、前記１つまたは複数のプロセッサが、
固定小数点算出を使用して前記ビデオデータに対してダイナミックレンジ調整プロセスを実行することと、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することと、
を行うように構成された、装置。
【請求項４９】
前記１つまたは複数のプロセッサが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を発生することを行うようにさらに構成され、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、請求項４８に記載の装置。
【請求項５０】
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、請求項４９に記載の装置。
【請求項５１】
前記情報が、前記ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含む、請求項４８に記載の装置。
【請求項５２】
前記情報が、前記復号ビデオデータのサンプル値の所定のレンジに対するインデックスを含む、請求項４８に記載の装置。
【請求項５３】
前記装置が、
前記ビデオデータをキャプチャするように構成されたカメラ
をさらに備える、請求項４８に記載の装置。
【請求項５４】
前記装置が、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの１つまたは複数を備える、請求項４８に記載の装置。
【請求項５５】
ビデオデータを処理するように構成された装置であって、前記装置が、
固定小数点算出を使用してビデオデータに対してダイナミックレンジ調整プロセスを実行するための手段と、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生するための手段と
を備える、装置。
【請求項５６】
実行されたとき、ビデオデータを処理するように構成されたデバイスの１つまたは複数のプロセッサに、
固定小数点算出を使用して前記ビデオデータに対してダイナミックレンジ調整プロセスを実行することと、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することと
を行わせる命令を記憶するコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]  本出願は、その各々の内容全体が参照により本明細書に組み込まれる、２０１５年９月２１日に出願された米国仮出願第６２／２２１，５８６号、２０１５年１０月２日に出願された米国仮出願第６２／２３６，８０４号、および２０１５年１０月１３日に出願された米国仮出願第６２／２４１，０６３号の利益を主張する。
【０００２】
[0002]  本開示はビデオ処理に関する。
【背景技術】
【０００３】
[0003]  デジタルビデオ能力は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダー、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ１０，アドバンストビデオコーディング（ＡＶＣ：Advanced Video Coding）、ＩＴＵ−Ｔ  Ｈ．２６５，高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）によって定義された規格、およびそのような規格の拡張に記載されているビデオコーディング技法など、ビデオコーディング技法を実装する。ビデオデバイスは、そのようなビデオコーディング技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および／または記憶し得る。
【０００４】
[0004]  ビデオコーディング技法は、ビデオシーケンスに固有の冗長性を低減または除去するための空間（イントラピクチャ）予測および／または時間（インターピクチャ）予測を含む。ブロックベースのビデオコーディングでは、ビデオスライス（たとえば、ビデオフレームまたはビデオフレームの一部分）が、ツリーブロック、コーディングユニット（ＣＵ：coding unit）および／またはコーディングノードと呼ばれることもある、ビデオブロック（video block）に区分され得る。ピクチャのイントラコード化（Ｉ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間予測を使用して符号化される。ピクチャのインターコード化（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間予測、または他の参照ピクチャ中の参照サンプルに対する時間予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【０００５】
[0005]  空間予測または時間予測は、コーディングされるべきブロックのための予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルと、コード化ブロックと予測ブロックとの間の差分を示す残差データとに従って符号化される。イントラコード化ブロックは、イントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換され、残差変換係数が生じ得、その残差変換係数は、次いで量子化され得る。最初に２次元アレイで構成される量子化された変換係数は、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するために、エントロピーコーディングが適用され得る。
【０００６】
[0006]  キャプチャ（capture）され、コーディングされ、表示され得る色値の総数が、色域（color gamut）によって定義され得る。色域は、デバイスがキャプチャする（たとえば、カメラ）か、または再現する（たとえば、ディスプレイ）ことができる、色のレンジ（range）を指す。しばしば、色域はデバイスごとに異なる。ビデオコーディングのために、ビデオコーディングプロセスにおける各デバイスが同じ色域中でピクセル値を処理するように構成され得るように、ビデオデータ（video data）のためのあらかじめ定義された色域が使用され得る。いくつかの色域は、ビデオコーディングのために旧来使用されてきた色域よりも大きいレンジの色を用いて定義される。より大きいレンジの色を用いたそのような色域は、広色域（ＷＣＧ：wide color gamut）と呼ばれることがある。
【０００７】
[0007]  ビデオデータの別のアスペクトはダイナミックレンジ（dynamic range）である。ダイナミックレンジは、一般に、ビデオ信号の最大輝度（maximum brightness）と最小輝度（minimum brightness）（たとえば、ルミナンス（luminance））との間の比として定義される。過去に使用された一般的なビデオデータのダイナミックレンジは、標準ダイナミックレンジ（ＳＤＲ：standard dynamic range）を有すると見なされる。ビデオデータのための他の例示的な仕様は、最大輝度と最小輝度との間のより大きい比を有する色データを定義する。そのようなビデオデータは、高ダイナミックレンジ（ＨＤＲ：high dynamic range）を有するものとして説明される。
【発明の概要】
【０００８】
[0008]  本開示は、固定小数点実装（fixed-point implementation）を使用して、ビデオデータのコンポーネントのダイナミックレンジ調整（dynamic range adjustment）を実装するための例示的な技法およびデバイスについて説明する。説明される技法は、Ｈ．２６４／ＡＶＣ、Ｈ．２６５／ＨＥＶＣに限定されないビデオコーディング規格、および高ダイナミックレンジ（ＨＤＲ）コンテンツを符号化および復号するように構成された他の規格に適用可能である。
【０００９】
[0009]  本開示の一例では、ビデオデータを処理する方法は、逆ダイナミックレンジ調整プロセス（inverse dynamic range adjustment process）を実行するためのパラメータ（parameter）をどのように決定すべきかを指定する情報（information）を含んでいる１つまたは複数のシンタックス要素（syntax element）を受信することと、復号ビデオデータ（decoded video data）を受信することと、受信された情報に従って、固定小数点算出（fixed-point computing）を使用して、復号ビデオデータに対して逆ダイナミックレンジ調整プロセスを実行することとを備える。
【００１０】
[0010]  本開示の別の例では、ビデオデータを処理するように構成された装置は、復号ビデオデータを記憶するように構成されたメモリと、１つまたは複数のプロセッサとを備え、１つまたは複数のプロセッサは、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信することと、復号ビデオデータを受信することと、受信された情報に従って、固定小数点算出を使用して、復号ビデオデータに対して逆ダイナミックレンジ調整プロセスを実行することとを行うように構成される。
【００１１】
[0011]  本開示の別の例では、ビデオデータを処理するように構成された装置は、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信するための手段と、復号ビデオデータを受信するための手段と、受信された情報に従って、固定小数点算出を使用して、復号ビデオデータに対して逆ダイナミックレンジ調整プロセスを実行するための手段とを備える。
【００１２】
[0012]  別の例では、本開示は、実行されたとき、ビデオデータを処理するように構成されたデバイスの１つまたは複数のプロセッサに、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信することと、復号ビデオデータを受信することと、受信された情報に従って、固定小数点算出を使用して、復号ビデオデータに対して逆ダイナミックレンジ調整プロセスを実行することとを行わせる命令（instruction）を記憶するコンピュータ可読記憶媒体（computer-readable storage medium）について説明する。
【００１３】
[0013]  本開示の別の例では、ビデオデータを処理する方法は、固定小数点算出（fixed-point computing）を使用して、ビデオデータに対してダイナミックレンジ調整プロセス（dynamic range adjustment process）を実行することと、固定小数点算出を使用して、ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することとを備える。
【００１４】
[0014]  本開示の別の例では、ビデオデータを処理するように構成された装置は、ビデオデータを記憶するように構成されたメモリと、１つまたは複数のプロセッサとを備え、１つまたは複数のプロセッサは、固定小数点算出を使用して、ビデオデータに対してダイナミックレンジ調整プロセスを実行することと、固定小数点算出を使用して、ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することとを行うように構成される。
【００１５】
[0015]  本開示の別の例では、ビデオデータを処理するように構成された装置は、固定小数点算出を使用して、ビデオデータに対してダイナミックレンジ調整プロセスを実行するための手段と、固定小数点算出を使用して、ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生するための手段とを備える。
【００１６】
[0016]  別の例では、本開示は、実行されたとき、ビデオデータを処理するように構成されたデバイスの１つまたは複数のプロセッサに、固定小数点算出を使用して、ビデオデータに対してダイナミックレンジ調整プロセスを実行することと、固定小数点算出を使用して、ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することとを行わせる命令を記憶するコンピュータ可読記憶媒体について説明する。
【００１７】
[0017]  １つまたは複数の例の詳細が添付の図面および以下の説明に記載される。他の特徴、目的、および利点は、説明、図面、および特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１８】
【図１】[0018]  本開示の技法を実装するように構成された例示的なビデオ符号化および復号システムを示すブロック図。
【図２】[0019]  色再マッピング情報（ＣＲＩ：color remapping information）プロセスの一般的な構造を示す概念図。
【図３】[0020]  ＨＤＲデータの概念を示す概念図。
【図４】[0021]  例示的な色域を示す概念図。
【図５】[0022]  ＨＤＲ／ＷＣＧ表現コンバージョン（representation conversion）の一例を示す流れ図。
【図６】[0023]  ＨＤＲ／ＷＣＧ逆コンバージョン（inverse conversion）の一例を示す流れ図。
【図７】[0024]  知覚的に均一なコードレベルから線形ルミナンスへの（ＳＤＲとＨＤＲとを含む）ビデオデータコンバージョンのために利用される電気光学伝達関数（ＥＯＴＦ：Electro-optical transfer function）の例を示す概念図。
【図８】[0025]  本開示の技法に従って動作する例示的なＨＤＲ／ＷＣＧコンバージョン装置を示すブロック図。
【図９】[0026]  本開示の技法による例示的なＨＤＲ／ＷＣＧ逆コンバージョン装置を示すブロック図。
【図１０】[0027]  本開示の技法を実装し得るビデオエンコーダの一例を示すブロック図。
【図１１】[0028]  本開示の技法を実装し得るビデオデコーダの一例を示すブロック図。
【図１２】[0029]  本開示の１つの例示的なビデオ処理技法を示すフローチャート。
【図１３】[0030]  本開示の別の例示的なビデオ処理技法を示すフローチャート。
【発明を実施するための形態】
【００１９】
[0031]  本開示は、高ダイナミックレンジ（ＨＤＲ）および広色域（ＷＣＧ）表現をもつビデオデータの処理および／またはコーディングに関する。より詳細には、本開示の技法は、（たとえば、浮動小数点処理動作（floating point processing operation）とは対照的に）固定小数点処理動作（fixed point processing operation）を使用して、ビデオデータコンポーネント（video data component）のレンジ調整を実行するための技法を含む。本明細書で説明される技法およびデバイスは、ＨＤＲおよびＷＣＧビデオデータを含む、ビデオデータをコーディングするために利用されるハイブリッドベースのビデオコーディングシステム（たとえば、Ｈ．２６５／ＨＥＶＣ、Ｈ．２６４／ＡＶＣなど）の圧縮効率を改善し得る。
【００２０】
[0032]  ハイブリッドベースのビデオコーディング規格を含むビデオコーディング規格は、ＩＴＵ−Ｔ  Ｈ．２６１、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、およびそれのスケーラブルビデオコーディング（ＳＶＣ：Scalable Video Coding）拡張とマルチビュービデオコーディング（ＭＶＣ：Multiview Video Coding）拡張とを含む、（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４を含む。新しいビデオコーディング規格、すなわち、高効率ビデオコーディング（Ｈ．２６５とも呼ばれるＨＥＶＣ）の設計が、ＩＴＵ−Ｔビデオコーディングエキスパートグループ（ＶＣＥＧ：Video Coding Experts Group）とＩＳＯ／ＩＥＣモーションピクチャエキスパートグループ（ＭＰＥＧ：Motion Picture Experts Group）とのジョイントコラボレーションチームオンビデオコーディング（ＪＣＴ−ＶＣ：Joint Collaboration Team on Video Coding）によって確定された。ＨＥＶＣワーキングドラフト１０（ＷＤ１０）と呼ばれるＨＥＶＣドラフト仕様、Ｂｒｏｓｓら、「High efficiency video coding (HEVC) text specification draft 10 (for FDIS & Last Call)」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３とＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１とのジョイントコラボレーティブチームオンビデオコーディング（ＪＣＴ−ＶＣ）、第１２回会議、ジュネーブ、スイス、２０１３年１月１４〜２３日、ＪＣＴＶＣ−Ｌ１００３ｖ３４は、
http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v34.zipから入手可能である。確定されたＨＥＶＣ規格はＨＥＶＣバージョン１と呼ばれる。
【００２１】
[0033]  不具合報告（defect report）、Ｗａｎｇら、「High efficiency video coding (HEVC) Defect Report」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３とＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１とのジョイントコラボレーティブチームオンビデオコーディング（ＪＣＴ−ＶＣ）、第１４回会議、ウィーン、オーストリア、２０１３年７月２５日〜８月２日、ＪＣＴＶＣ−Ｎ１００３ｖ１は、
http://phenix.int-evry.fr/jct/doc_end_user/documents/14_Vienna/wg11/JCTVC-N1003-v1.zipから利用可能である。確定されたＨＥＶＣ規格ドキュメントは、ITU-T H.265, Series H: Audiovisual and Multimedia Systems, Infrastructure of audiovisual services - Coding of moving video, High efficiency video coding、国際電気通信連合（ＩＴＵ）の電気通信標準化部門、２０１３年４月として公開されており、確定されたＨＥＶＣ規格の別のバージョンは、２０１４年１０月に発行された。Ｈ．２６５／ＨＥＶＣ仕様テキストのコピーは、http://www.itu.int/rec/T-REC-H.265-201504-I/enからダウンロードされ得る。
【００２２】
[0034]  図１は、本開示の技法を利用し得る例示的なビデオ符号化および復号システム１０を示すブロック図である。図１に示されているように、システム１０は、宛先デバイス１４によって後で復号されるべき符号化ビデオデータを与えるソースデバイス１２を含む。特に、ソースデバイス１２は、コンピュータ可読媒体１６を介して宛先デバイス１４にビデオデータを与える。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス（set-top box）、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイス、ブロードキャスト受信機デバイスなどを含む、広範囲にわたるデバイスのいずれかを備え得る。いくつかの場合には、ソースデバイス１２および宛先デバイス１４は、ワイヤレス通信のために装備され得る。
【００２３】
[0035]  宛先デバイス１４は、コンピュータ可読媒体１６を介して復号されるべき符号化ビデオデータを受信し得る。コンピュータ可読媒体１６は、ソースデバイス１２から宛先デバイス１４に符号化ビデオデータを移動することが可能な任意のタイプの媒体またはデバイスを備え得る。一例では、コンピュータ可読媒体１６は、ソースデバイス１２が、符号化ビデオデータを宛先デバイス１４にリアルタイムで直接送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤードまたはワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルまたは１つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイス１２から宛先デバイス１４への通信を可能にするために有用であり得る任意の他の機器を含み得る。
【００２４】
[0036]  他の例では、コンピュータ可読媒体１６は、ハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、Ｂｌｕ−ｒａｙ（登録商標）ディスク、または他のコンピュータ可読媒体などの非一時的記憶媒体を含み得る。いくつかの例では、ネットワークサーバ（図示せず）は、たとえば、ネットワーク送信を介して、ソースデバイス１２から符号化ビデオデータを受信し、その符号化ビデオデータを宛先デバイス１４に与え得る。同様に、ディスクスタンピング設備など、媒体製造設備のコンピューティングデバイスは、ソースデバイス１２から符号化ビデオデータを受信し、その符号化ビデオデータを含んでいるディスクを生成し得る。したがって、コンピュータ可読媒体１６は、様々な例において、様々な形態の１つまたは複数のコンピュータ可読媒体を含むことが理解されよう。
【００２５】
[0037]  いくつかの例では、符号化データは、出力インターフェース２２からストレージデバイスに出力され得る。同様に、符号化データは、入力インターフェースによってストレージデバイスからアクセスされ得る。ストレージデバイスは、ハードドライブ、Ｂｌｕ−ｒａｙディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例では、ストレージデバイスは、ソースデバイス１２によって発生された符号化ビデオを記憶し得るファイルサーバまたは別の中間ストレージデバイスに対応し得る。宛先デバイス１４は、ストリーミングまたはダウンロードを介してストレージデバイスから記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶することと、符号化ビデオデータを宛先デバイス１４に送信することとが可能な任意のタイプのサーバであり得る。例示的なファイルサーバとしては、（たとえば、ウェブサイトのための）ウェブサーバ、ＦＴＰサーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブがある。宛先デバイス１４は、インターネット接続を含む、任意の標準のデータ接続を通して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、ワイヤード接続（たとえば、ＤＳＬ、ケーブルモデムなど）、またはその両方の組合せを含み得る。ストレージデバイスからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組合せであり得る。
【００２６】
[0038]  本開示の技法は、必ずしもワイヤレス適用例または設定に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、動的適応ストリーミングオーバーＨＴＴＰ（ＤＡＳＨ）などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどの適用例をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００２７】
[0039]  図１の例では、ソースデバイス１２は、ビデオソース１８と、ビデオプリプロセッサユニット１９およびビデオエンコーダ２０を含むビデオ符号化ユニット２１と、出力インターフェース２２とを含む。宛先デバイス１４は、入力インターフェース２８と、ビデオポストプロセッサユニット３１およびビデオデコーダ３０を含むビデオ復号ユニット２９と、ディスプレイデバイス３２とを含む。本開示によれば、ソースデバイス１２のビデオプリプロセッサユニット１９および／またはビデオエンコーダ２０、ならびに宛先デバイス１４のビデオポストプロセッサユニット３１および／またはビデオデコーダ３０は、固定小数点実装を用いてＨＤＲおよびＷＣＧビデオデータのより効率的な圧縮を可能にするためにいくつかの色空間中でビデオデータに適用されるシグナリングおよび関係する動作を含む、本開示の技法を実装するように構成され得る。いくつかの例では、ビデオプリプロセッサユニット１９はビデオエンコーダ２０とは別個であり得る。他の例では、ビデオプリプロセッサユニット１９はビデオエンコーダ２０の一部であり得る。同様に、いくつかの例では、ビデオポストプロセッサユニット３１はビデオデコーダ３０とは別個であり得る。他の例では、ビデオポストプロセッサユニット３１はビデオデコーダ３０の一部であり得る。他の例では、ソースデバイスおよび宛先デバイスは他のコンポーネントまたは構成を含み得る。たとえば、ソースデバイス１２は、外部カメラなど、外部ビデオソース１８からビデオデータを受信し得る。同様に、宛先デバイス１４は、内蔵ディスプレイデバイスを含むのではなく、外部ディスプレイデバイスとインターフェースし得る。
【００２８】
[0040]  図１の図示されたシステム１０は一例にすぎない。ＨＤＲおよびＷＣＧビデオデータを処理するための技法は、任意のデジタルビデオ符号化および／またはビデオ復号デバイスによって実行され得る。さらに、本開示の技法はまた、ビデオプリプロセッサおよび／またはビデオポストプロセッサ（たとえば、ビデオプリプロセッサユニット１９およびビデオポストプロセッサユニット３１）によって実行され得る。概して、ビデオプリプロセッサは、符号化の前に（たとえば、ＨＥＶＣ符号化の前に）ビデオデータを処理するように構成された任意のデバイスであり得る。概して、ビデオポストプロセッサは、復号の後に（たとえば、ＨＥＶＣ復号の後に）ビデオデータを処理するように構成された任意のデバイスであり得る。ソースデバイス１２および宛先デバイス１４は、ソースデバイス１２が宛先デバイス１４への送信のためのコード化ビデオデータを発生するような、コーディングデバイスの例にすぎない。いくつかの例では、デバイス１２、１４は、デバイス１２、１４の各々が、ビデオ符号化および復号コンポーネント、ならびに、ビデオプリプロセッサおよびビデオポストプロセッサ（たとえば、それぞれ、ビデオプリプロセッサユニット１９およびビデオポストプロセッサユニット３１）を含むように、実質的に対称的に動作し得る。したがって、システム１０は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、またはビデオテレフォニーのための、ビデオデバイス１２とビデオデバイス１４との間の一方向または双方向のビデオ送信をサポートし得る。
【００２９】
[0041]  ソースデバイス１２のビデオソース１８は、ビデオカメラなどのビデオキャプチャデバイス、前にキャプチャされたビデオを含んでいるビデオアーカイブ、および／またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースを含み得る。さらなる代替として、ビデオソース１８は、ソースビデオとしてのコンピュータグラフィックスベースのデータ、またはライブビデオとアーカイブビデオとコンピュータ発生ビデオとの組合せを発生し得る。いくつかの場合には、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラフォンまたはビデオフォンを形成し得る。ただし、上述のように、本開示で説明される技法は、概してビデオコーディングおよびビデオ処理に適用可能であり得、ワイヤレスおよび／またはワイヤード適用例に適用され得る。各場合において、キャプチャされたビデオ、プリキャプチャされたビデオ、またはコンピュータ発生ビデオは、ビデオ符号化ユニット２１によって符号化され得る。符号化されたビデオ情報は、次いで、出力インターフェース２２によってコンピュータ可読媒体１６上に出力され得る。
【００３０】
[0042]  宛先デバイス１４の入力インターフェース２８はコンピュータ可読媒体１６から情報を受信する。コンピュータ可読媒体１６の情報は、ビデオエンコーダ２０によって定義され、またビデオ復号ユニット２９によって使用される、ブロックおよび他のコード化ユニット、たとえば、ピクチャグループ（ＧＯＰ）の特性および／または処理を記述するシンタックス要素を含む、シンタックス情報を含み得る。ディスプレイデバイス３２は、復号ビデオデータをユーザに対して表示し、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
【００３１】
[0043]  図示のように、ビデオプリプロセッサユニット１９は、ビデオソース１８からビデオデータを受信する。ビデオプリプロセッサユニット１９は、ビデオデータを、ビデオエンコーダ２０を用いて符号化するのに好適である形態にコンバートするために、ビデオデータを処理するように構成され得る。たとえば、ビデオプリプロセッサユニット１９は、（たとえば、非線形伝達関数を使用する）ダイナミックレンジ圧縮、より圧縮したまたはロバストな色空間への色コンバージョン、および／あるいは浮動−整数表現コンバージョンを実行し得る。ビデオエンコーダ２０は、ビデオプリプロセッサユニット１９によって出力されたビデオデータに対してビデオ符号化を実行し得る。ビデオデコーダ３０は、ビデオデータを復号するためにビデオエンコーダ２０の逆を実行し得、ビデオポストプロセッサユニット３１は、ビデオデータを表示に好適な形態にコンバートするために、ビデオプリプロセッサユニット１９の逆を実行し得る。たとえば、ビデオポストプロセッサユニット３１は、表示に好適なビデオデータを発生するために、整数−浮動コンバージョン、圧縮したまたはロバストな色空間からの色コンバージョン、および／またはダイナミックレンジ圧縮の逆を実行し得る。
【００３２】
[0044]  ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、またはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアのための命令を記憶し、本開示の技法を実行するために１つまたは複数のプロセッサを使用してその命令をハードウェアで実行し得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも、それぞれのデバイス中で複合エンコーダ／デコーダ（コーデック）の一部として統合され得る。
【００３３】
[0045]  ビデオプリプロセッサユニット１９およびビデオポストプロセッサユニット３１はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、またはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアのための命令を記憶し、本開示の技法を実行するために１つまたは複数のプロセッサを使用してその命令をハードウェアで実行し得る。上記で説明されたように、ビデオプリプロセッサユニット１９およびビデオポストプロセッサユニット３１は、それぞれ、ビデオエンコーダ２０およびビデオデコーダ３０とは別個のデバイスである。他の例では、ビデオプリプロセッサユニット１９は単一のデバイス中でビデオエンコーダ２０と統合し得、逆ビデオポストプロセッサユニット３１は単一のデバイス中でビデオデコーダ３０と統合され得る。
【００３４】
[0046]  いくつかの例では、ビデオエンコーダ２０およびビデオデコーダ３０は、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、およびそれのスケーラブルビデオコーディング（ＳＶＣ）拡張と、マルチビュービデオコーディング（ＭＶＣ）拡張と、ＭＶＣベースの３次元ビデオ（３ＤＶ）拡張とを含む、（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４などのビデオ圧縮規格に従って動作する。いくつかの事例では、ＭＶＣベースの３ＤＶに準拠する任意のビットストリームは、ＭＶＣプロファイル、たとえば、ステレオハイプロファイルに準拠するサブビットストリームを常に含んでいる。さらに、Ｈ．２６４／ＡＶＣへの３ＤＶコーディング拡張、すなわちＡＶＣベース３ＤＶを発生するための取り組みが進行中である。ビデオコーディング規格の他の例としては、ＩＴＵ−Ｔ  Ｈ．２６１、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、およびＩＴＵ−Ｔ  Ｈ．２６４、ＩＳＯ／ＩＥＣ  Ｖｉｓｕａｌがある。他の例では、ビデオエンコーダ２０およびビデオデコーダ３０は、ＨＥＶＣ規格に従って動作するように構成され得る。
【００３５】
[0047]  ＨＥＶＣおよび他のビデオコーディング規格では、ビデオシーケンスは一般に一連のピクチャを含む。ピクチャは「フレーム」と呼ばれることもある。ピクチャは、ＳL、ＳCb、およびＳCrと示される３つのサンプルアレイを含み得る。ＳLはルーマサンプルの２次元アレイ（すなわち、ブロック）である。ＳCbはＣｂクロミナンスサンプルの２次元アレイである。ＳCrはＣｒクロミナンスサンプルの２次元アレイである。クロミナンスサンプルは、本明細書では「クロマ」サンプルと呼ばれることもある。他の事例では、ピクチャはモノクロームであり得、ルーマサンプルのアレイのみを含み得る。
【００３６】
[0048]  ビデオエンコーダ２０は、コーディングツリーユニット（ＣＴＵ：coding tree unit）のセットを発生し得る。ＣＴＵの各々は、ルーマサンプルのコーディングツリーブロックと、クロマサンプルの２つの対応するコーディングツリーブロックと、それらのコーディングツリーブロックのサンプルをコーディングするために使用されるシンタックス構造とを備え得る。モノクロームピクチャまたは３つの別個の色平面を有するピクチャでは、ＣＴＵは、単一のコーディングツリーブロックと、そのコーディングツリーブロックのサンプルをコーディングするために使用されるシンタックス構造（syntax structure）とを備え得る。コーディングツリーブロックはサンプルのＮ×Ｎブロックであり得る。ＣＴＵは「ツリーブロック」または「最大コーディングユニット」（ＬＣＵ：largest coding unit）と呼ばれることもある。ＨＥＶＣのＣＴＵは、Ｈ．２６４／ＡＶＣなど、他のビデオコーディング規格のマクロブロックに広い意味で類似し得る。しかしながら、ＣＴＵは、必ずしも特定のサイズに限定されるとは限らず、１つまたは複数のコーディングユニット（ＣＵ）を含み得る。スライスは、ラスタ走査において連続的に順序付けられた整数個のＣＴＵを含み得る。
【００３７】
[0049]  本開示は、サンプルの１つまたは複数のブロックと、サンプルの１つまたは複数のブロックのサンプルをコーディングするために使用されるシンタックス構造とを指すために、「ビデオユニット（video unit）」または「ビデオブロック（video block）」という用語を使用し得る。例示的なタイプのビデオユニットは、ＨＥＶＣにおけるＣＴＵ、ＣＵ、ＰＵ、変換ユニット（ＴＵ）、または他のビデオコーディング規格におけるマクロブロック、マクロブロックパーティションなどを含み得る。
【００３８】
[0050]  コード化ＣＴＵを発生するために、ビデオエンコーダ２０は、コーディングツリーブロックをコーディングブロックに分割するためにＣＴＵのコーディングツリーブロックに対して４分木区分を再帰的に実行し得、したがって「コーディングツリーユニット（coding tree unit）」という名称がある。コーディングブロックはサンプルのＮ×Ｎブロックである。ＣＵは、ルーマサンプルアレイとＣｂサンプルアレイとＣｒサンプルアレイとを有するピクチャのルーマサンプルのコーディングブロックと、そのピクチャのクロマサンプルの２つの対応するコーディングブロックと、それらのコーディングブロックのサンプルをコーディングするために使用されるシンタックス構造とを備え得る。モノクロームピクチャまたは３つの別個の色平面を有するピクチャでは、ＣＵは、単一のコーディングブロックと、そのコーディングブロックのサンプルをコーディングするために使用されるシンタックス構造とを備え得る。
【００３９】
[0051]  ビデオエンコーダ２０は、ＣＵのコーディングブロックを１つまたは複数の予測ブロックに区分し得る。予測ブロックは、同じ予測が適用されるサンプルの矩形（すなわち、正方形または非正方形）ブロックであり得る。ＣＵの予測ユニット（ＰＵ）は、ピクチャのルーマサンプルの予測ブロックと、クロマサンプルの２つの対応する予測ブロックと、予測ブロックサンプルを予測するために使用されるシンタックス構造とを備え得る。モノクロームピクチャまたは３つの別個の色平面を有するピクチャでは、ＰＵは、単一の予測ブロックと、その予測ブロックサンプルを予測するために使用されるシンタックス構造とを備え得る。ビデオエンコーダ２０は、ＣＵの各ＰＵのルーマ予測ブロック、Ｃｂ予測ブロック、およびＣｒ予測ブロックのための予測ルーマブロック、予測Ｃｂブロック、および予測Ｃｒブロックを発生し得る。
【００４０】
[0052]  ビデオエンコーダ２０は、ＰＵのための予測ブロックを発生するためにイントラ予測またはインター予測を使用し得る。ビデオエンコーダ２０がＰＵの予測ブロックを発生するためにイントラ予測を使用する場合、ビデオエンコーダ２０は、ＰＵに関連するピクチャの復号サンプルに基づいてＰＵの予測ブロックを発生し得る。
【００４１】
[0053]  ビデオエンコーダ２０が、ＰＵの予測ブロックを発生するためにインター予測を使用する場合、ビデオエンコーダ２０は、ＰＵに関連するピクチャ以外の１つまたは複数のピクチャの復号サンプルに基づいて、ＰＵの予測ブロックを発生し得る。インター予測は、単方向インター予測（すなわち、単予測）または双方向インター予測（すなわち、双予測）であり得る。単予測または双予測を実行するために、ビデオエンコーダ２０は、現在スライスに対して、第１の参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ０）と第２の参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ１）とを発生し得る。
【００４２】
[0054]  参照ピクチャリストの各々は１つまたは複数の参照ピクチャを含み得る。単予測を使用するとき、ビデオエンコーダ２０は、参照ピクチャ内の参照ロケーションを決定するために、ＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１のいずれかまたは両方の中の参照ピクチャを探索し得る。さらに、単予測を使用するとき、ビデオエンコーダ２０は、参照ロケーションに対応するサンプルに少なくとも部分的に基づいて、ＰＵのための予測サンプルブロックを発生し得る。さらに、単予測を使用するとき、ビデオエンコーダ２０は、ＰＵの予測ブロックと参照ロケーションとの間の空間変位を示す単一の動きベクトルを発生し得る。ＰＵの予測ブロックと参照ロケーションとの間の空間変位を示すために、動きベクトルは、ＰＵの予測ブロックと参照ロケーションとの間の水平変位を指定する水平コンポーネントを含み得、ＰＵの予測ブロックと参照ロケーションとの間の垂直変位を指定する垂直コンポーネントを含み得る。
【００４３】
[0055]  ＰＵを符号化するために双予測を使用するとき、ビデオエンコーダ２０は、ＲｅｆＰｉｃＬｉｓｔ０中の参照ピクチャ中の第１の参照ロケーションと、ＲｅｆＰｉｃＬｉｓｔ１中の参照ピクチャ中の第２の参照ロケーションとを決定し得る。ビデオエンコーダ２０は、次いで、第１および第２の参照ロケーションに対応するサンプルに少なくとも部分的に基づいて、ＰＵのための予測ブロックを発生し得る。さらに、ＰＵを符号化するために双予測を使用するとき、ビデオエンコーダ２０は、ＰＵのサンプルブロックと第１の参照ロケーションとの間の空間変位を示す第１の動きと、ＰＵの予測ブロックと第２の参照ロケーションとの間の空間変位を示す第２の動きとを発生し得る。
【００４４】
[0056]  ビデオエンコーダ２０がＣＵの１つまたは複数のＰＵのための予測ルーマブロック、予測Ｃｂブロック、および予測Ｃｒブロックを発生した後、ビデオエンコーダ２０は、ＣＵのためのルーマ残差ブロックを発生し得る。ＣＵのルーマ残差ブロック中の各サンプルは、ＣＵの予測ルーマブロックのうちの１つ中のルーマサンプルとＣＵの元のルーマコーディングブロック中の対応するサンプルとの間の差分を示す。さらに、ビデオエンコーダ２０はＣＵのためのＣｂ残差ブロックを発生し得る。ＣＵのＣｂ残差ブロック中の各サンプルは、ＣＵの予測Ｃｂブロックのうちの１つ中のＣｂサンプルとＣＵの元のＣｂコーディングブロック中の対応するサンプルとの間の差分を示し得る。ビデオエンコーダ２０はＣＵのためのＣｒ残差ブロックをも発生し得る。ＣＵのＣｒ残差ブロック中の各サンプルは、ＣＵの予測Ｃｒブロックのうちの１つ中のＣｒサンプルとＣＵの元のＣｒコーディングブロック中の対応するサンプルとの間の差分を示し得る。
【００４５】
[0057]  さらに、ビデオエンコーダ２０は、ＣＵのルーマ残差ブロックと、Ｃｂ残差ブロックと、Ｃｒ残差ブロックとを、１つまたは複数のルーマ変換ブロックと、Ｃｂ変換ブロックと、Ｃｒ変換ブロックとに分解するために４分木区分を使用し得る。変換ブロックは、同じ変換が適用されるサンプルの矩形ブロックであり得る。ＣＵの変換ユニット（ＴＵ）は、ルーマサンプルの変換ブロックと、クロマサンプルの２つの対応する変換ブロックと、変換ブロックサンプルを変換するために使用されるシンタックス構造とを備え得る。モノクロームピクチャまたは３つの別個の色平面を有するピクチャでは、ＴＵは、単一の変換ブロックと、変換ブロックサンプルを変換するために使用されるシンタックス構造とを備え得る。したがって、ＣＵの各ＴＵは、ルーマ変換ブロック、Ｃｂ変換ブロック、およびＣｒ変換ブロックに関連し得る。ＴＵに関連するルーマ変換ブロックはＣＵのルーマ残差ブロックのサブブロックであり得る。Ｃｂ変換ブロックはＣＵのＣｂ残差ブロックのサブブロックであり得る。Ｃｒ変換ブロックはＣＵのＣｒ残差ブロックのサブブロックであり得る。
【００４６】
[0058]  ビデオエンコーダ２０は、ＴＵのためのルーマ係数ブロックを発生するために、ＴＵのルーマ変換ブロックに１つまたは複数の変換を適用し得る。係数ブロックは変換係数の２次元アレイであり得る。変換係数はスカラー量であり得る。ビデオエンコーダ２０は、ＴＵのためのＣｂ係数ブロックを発生するために、ＴＵのＣｂ変換ブロックに１つまたは複数の変換を適用し得る。ビデオエンコーダ２０は、ＴＵのためのＣｒ係数ブロックを発生するために、ＴＵのＣｒ変換ブロックに１つまたは複数の変換を適用し得る。
【００４７】
[0059]  係数ブロック（たとえば、ルーマ係数ブロック、Ｃｂ係数ブロックまたはＣｒ係数ブロック）を発生した後に、ビデオエンコーダ２０は、係数ブロックを量子化し得る。量子化は、概して、変換係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、さらなる圧縮を行うプロセスを指す。さらに、ビデオエンコーダ２０は、変換係数を逆量子化し、ピクチャのＣＵのＴＵの変換ブロックを再構成するために変換係数に逆変換を適用し得る。ビデオエンコーダ２０は、ＣＵのコーディングブロックを再構成するためにＣＵのＴＵの再構成された変換ブロックとＣＵのＰＵの予測ブロックとを使用し得る。ピクチャの各ＣＵのコーディングブロックを再構成することによって、ビデオエンコーダ２０はピクチャを再構成し得る。ビデオエンコーダ２０は、再構成されたピクチャを復号ピクチャバッファ（ＤＰＢ：decoded picture buffer）に記憶し得る。ビデオエンコーダ２０は、インター予測およびイントラ予測のためにＤＰＢ中の再構成されたピクチャを使用し得る。
【００４８】
[0060]  ビデオエンコーダ２０が係数ブロックを量子化した後に、ビデオエンコーダ２０は、量子化された変換係数を示すシンタックス要素をエントロピー符号化し得る。たとえば、ビデオエンコーダ２０は、量子化された変換係数を示すシンタックス要素に対してコンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：Context-Adaptive Binary Arithmetic Coding）を実行し得る。ビデオエンコーダ２０は、エントロピー符号化シンタックス要素をビットストリーム中に出力し得る。
【００４９】
[0061]  ビデオエンコーダ２０は、コード化ピクチャと関連データとの表現を形成するビットのシーケンスを含むビットストリームを出力し得る。ビットストリームは、ネットワークアブストラクションレイヤ（ＮＡＬ：network abstraction layer）ユニットのシーケンスを備え得る。ＮＡＬユニットの各々はＮＡＬユニットヘッダを含み、ローバイトシーケンスペイロード（ＲＢＳＰ：raw byte sequence payload）をカプセル化する。ＮＡＬユニットヘッダは、ＮＡＬユニットタイプコードを示すシンタックス要素を含み得る。ＮＡＬユニットのＮＡＬユニットヘッダによって指定されるＮＡＬユニットタイプコードは、ＮＡＬユニットのタイプを示す。ＲＢＳＰは、ＮＡＬユニット内にカプセル化された整数個のバイトを含んでいるシンタックス構造であり得る。いくつかの事例では、ＲＢＳＰは０ビットを含む。
【００５０】
[0062]  異なるタイプのＮＡＬユニットは、異なるタイプのＲＢＳＰをカプセル化し得る。たとえば、第１のタイプのＮＡＬユニットはピクチャパラメータセット（ＰＰＳ：picture parameter set）のためのＲＢＳＰをカプセル化し得、第２のタイプのＮＡＬユニットはコード化スライスのためのＲＢＳＰをカプセル化し得、第３のタイプのＮＡＬユニットは補足エンハンスメント情報（ＳＥＩ：Supplemental Enhancement Information）のためのＲＢＳＰをカプセル化し得、以下同様である。ＰＰＳは、０個またはそれ以上のコード化ピクチャ全体に適用されるシンタックス要素を含んでいることがあるシンタックス構造である。（パラメータセットおよびＳＥＩメッセージのためのＲＢＳＰとは対照的に）ビデオコーディングデータのためのＲＢＳＰをカプセル化するＮＡＬユニットは、ビデオコーディングレイヤ（ＶＣＬ：video coding layer）ＮＡＬユニットと呼ばれることがある。コード化スライスをカプセル化するＮＡＬユニットは、本明細書ではコード化スライスＮＡＬユニットと呼ばれることがある。コード化スライスのためのＲＢＳＰは、スライスヘッダとスライスデータとを含み得る。
【００５１】
[0063]  ビデオデコーダ３０はビットストリームを受信し得る。さらに、ビデオデコーダ３０は、ビットストリームからシンタックス要素を復号するために、ビットストリームをパースし得る。ビデオデコーダ３０は、ビットストリームから復号されたシンタックス要素に少なくとも部分的に基づいてビデオデータのピクチャを再構成し得る。ビデオデータを再構成するためのプロセスは、概して、ビデオエンコーダ２０によって実行されるプロセスに相反し得る。たとえば、ビデオデコーダ３０は、現在ＣＵのＰＵのための予測ブロックを決定するためにＰＵの動きベクトルを使用し得る。ビデオデコーダ３０は、ＰＵのための予測ブロックを発生するためにＰＵの１つまたは複数の動きベクトルを使用し得る。
【００５２】
[0064]  さらに、ビデオデコーダ３０は、現在ＣＵのＴＵに関連する係数ブロックを逆量子化し得る。ビデオデコーダ３０は、現在ＣＵのＴＵに関連する変換ブロックを再構成するために、係数ブロックに対して逆変換を実行し得る。ビデオデコーダ３０は、現在ＣＵのＰＵのための予測サンプルブロックのサンプルを現在ＣＵのＴＵの変換ブロックの対応するサンプルに加算することによって、現在ＣＵのコーディングブロックを再構成し得る。ピクチャの各ＣＵのためのコーディングブロックを再構成することによって、ビデオデコーダ３０はピクチャを再構成し得る。ビデオデコーダ３０は、出力のためにおよび／または他のピクチャを復号する際に使用するために、復号ピクチャを復号ピクチャバッファに記憶し得る。
【００５３】
[0065]  補足エンハンスメント情報（ＳＥＩ）メッセージ（supplemental enhancement information (SEI) message）は、一般に、デコーダ（たとえば、ビデオデコーダ３０）によってビットストリームを復号するために必須でない情報を搬送するために、しばしばビデオビットストリーム中に含まれる。ＳＥＩメッセージ中に含まれている情報は、復号された出力の表示または処理を改善する際に有用であり得、たとえばそのような情報は、コンテンツの視認性を改善するためにデコーダ側エンティティによって使用され得る。適用規格に準拠するすべてのデバイスに品質の改善がもたらされ得るように、いくつかの適用規格が、ビットストリーム中のそのようなＳＥＩメッセージの存在（たとえば、ＥＴＳＩ − ＴＳ  １０１  ５４７−２、Digital Video Broadcasting (DVB) Plano-stereoscopic 3DTV; Part 2: Frame compatible plano-stereoscopic 3DTVで説明される、ＳＥＩメッセージがビデオのあらゆるフレームのために搬送される、フレーム互換平面立体視３ＤＴＶビデオフォーマット（frame-compatible plano-stereoscopic 3DTV video format）のためのフレームパッキングＳＥＩメッセージの搬送、たとえば、３ＧＰＰ（登録商標）  ＴＳ  ２６．１１４  ｖ１３．０．０、3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; IP Multimedia Subsystem (IMS); Multimedia Telephony; Media handling and interaction (Release 13)で説明される、リカバリポイントＳＥＩメッセージの処理、または、たとえば、ＥＴＳＩ−ＴＳ  １０１  １５４、Digital Video Broadcasting (DVB); Specification for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Streamで説明される、ＤＶＢにおけるパンスキャン走査矩形ＳＥＩメッセージ（pan-scan scan rectangle SEI message）の使用）を規定することがあることも可能である。
【００５４】
[0066]  トーンマッピング情報ＳＥＩメッセージは、ルーマサンプルまたはＲＧＢコンポーネントサンプルの各々をマッピングするために使用される。ｔｏｎｅ＿ｍａｐ＿ｉｄの異なる値が異なる目的を定義するために使用され、それに応じて、トーンマップＳＥＩメッセージのシンタックスも修正される。ｔｏｎｅ＿ｍａｐ＿ｉｄのための１の値は、ＳＥＩメッセージが、ＲＧＢサンプルを最小値（minimum value）および最大値（maximum value）にクリッピングする（clip）ことを可能にする。ｔｏｎｅ＿ｍａｐ＿ｉｄのための３の値は、ピボット点の形態のルックアップテーブルのシグナリングを可能にする。しかしながら、適用されたとき、同じ値が、すべてのＲＧＢコンポーネントに適用されるか、またはルーマコンポーネントのみに適用される。
【００５５】
[0067]  ニー関数（knee function）ＳＥＩメッセージは、正規化された線形領域中の復号ピクチャのＲＧＢコンポーネントのマッピングを示すために使用される。入力および出力最大ルミナンス値も示され、ルックアップテーブルが、入力ルミナンス値を出力ルミナンス値にマッピングする。同じルックアップテーブルが、すべての３つの色コンポーネント（color component）に適用される。
【００５６】
[0068]  ＨＥＶＣ規格において定義された色再マッピング情報（ＣＲＩ）ＳＥＩメッセージは、１つの色空間中のピクチャを別の色空間にマッピングするために使用される情報を伝達するために使用される。一例では、ＣＲＩ  ＳＥＩメッセージのシンタックスは、３つの部分、すなわち、第１のルックアップテーブル（プリＬＵＴ）と、その後に続く色再マッピング係数を示す３×３行列と、その後に続く第２のルックアップテーブル（ポストＬＵＴ）とを含む。各色コンポーネント、たとえば、Ｒ、Ｇ、ＢまたはＹ、Ｃｂ、Ｃｒについて、独立したＬＵＴが、プリＬＵＴとポストＬＵＴの両方のために定義される。ＣＲＩ  ＳＥＩメッセージはまた、ｃｏｌｏｕｒ＿ｒｅｍａｐ＿ｉｄと呼ばれるシンタックス要素を含み、それの異なる値が、ＳＥＩメッセージの異なる目的を示すために使用され得る。図２は、ＣＲＩ  ＳＥＩメッセージによって指定された色再マッピング情報プロセスの一般的な構造を示す。
【００５７】
[0069]  ダイナミックレンジ調整（ＤＲＡ）ＳＥＩメッセージ。たとえば、Ｄ．Ｂｕｇｄａｙｃｉ  Ｓａｎｓｌｉ、Ａ．Ｋ．Ｒａｍａｓｕｂｒａｍｏｎｉａｎ、Ｄ．Ｒｕｓａｎｏｖｓｋｙｙ、Ｓ．Ｌｅｅ、Ｊ．Ｓｏｌｅ、Ｍ．Ｋａｒｃｚｅｗｉｃｚ、Dynamic range adjustment SEI message、ｍ３６３３０、ＭＰＥＧ会議、ワルシャワ、ポーランド、２０１５年６月２２〜２６日で説明されるように、ダイナミックレンジ調整ＳＥＩメッセージは、ビデオコーディング規格の一部として採用されなかったが、ＳＥＩメッセージは、入力サンプルをマッピングするために、スケールおよびオフセット数の１つのセットのシグナリングを含む。ＳＥＩメッセージはまた、異なるコンポーネントのための異なるルックアップテーブルのシグナリングを可能にし、また、同じスケールおよびオフセットが２つ以上のコンポーネントのために使用されるべきであるとき、シグナリング最適化を可能にする。スケールおよびオフセット数は、固定長正確さでシグナリングされる。
【００５８】
[0070]  次世代ビデオ適用例は、ＨＤＲおよびＷＣＧをもつキャプチャされた風景を表すビデオデータを用いて動作することが予期される。利用されるダイナミックレンジおよび色域のパラメータは、ビデオコンテンツの２つの独立した属性であり、デジタルテレビジョンおよびマルチメディアサービスの目的のためのそれらの仕様は、いくつかの国際規格によって定義される。たとえば、ＩＴＵ−Ｒ  Ｒｅｃ．ＢＴ．７０９、「Parameter values for the HDTV standards for production and international programme exchange」、およびＩＴＵ−Ｒ  Ｒｅｃ．ＢＴ．２０２０、「Parameter values for ultra-high definition television systems for production and international programme exchange」は、それぞれ、標準色域を越えて拡張する標準ダイナミックレンジ（ＳＤＲ）および色プライマリなど、ＨＤＴＶ（高精細度テレビジョン）およびＵＨＤＴＶ（超高精細度テレビジョン）のためのパラメータを定義する。Ｒｅｃ．ＢＴ．２１００、「Image parameter values for high dynamic range television for use in production and international programme exchange」は、伝達関数と、広色域表現をサポートするプライマリを含む、ＨＤＲテレビジョン使用のための表現とを定義する。他のシステムにおいてダイナミックレンジおよび色域属性を指定する他の規格開発機関（ＳＤＯ：standards developing organization）文献もあり、たとえば、ＤＣＩ−Ｐ３色域はＳＭＰＴＥ−２３１−２（米国映画テレビ技術者協会（Society of Motion Picture and Television Engineers））において定義され、ＨＤＲのいくつかのパラメータはＳＭＰＴＥ−２０８４において定義される。ビデオデータのためのダイナミックレンジおよび色域の簡単な説明が以下で与えられる。
【００５９】
[0071]  ダイナミックレンジは、一般に、ビデオ信号の最大輝度（たとえば、ルミナンス）と最小輝度との間の比として定義される。ダイナミックレンジは、「ｆストップ」に関して測定され得、ここで、１つのｆストップは、信号のダイナミックレンジの２倍に対応する。ＭＰＥＧの定義では、１６個よりも多いｆストップをもつ輝度変動を起用するコンテンツは、ＨＤＲコンテンツと呼ばれる。いくつかの項では、１０個のｆストップと１６個のｆストップとの間のレベルは、中間ダイナミックレンジとして見なされるが、それは他の定義ではＨＤＲと見なされる。本開示のいくつかの例では、ＨＤＲビデオコンテンツは、標準ダイナミックレンジ（たとえば、ＩＴＵ−Ｒ  Ｒｅｃ．ＢＴ．７０９によって指定されたビデオコンテンツ）をもつ旧来使用されるビデオコンテンツよりも高いダイナミックレンジを有する任意のビデオコンテンツであり得る。
【００６０】
[0072]  人間の視覚系（ＨＶＳ：human visual system）は、ＳＤＲコンテンツおよびＨＤＲコンテンツよりもはるかに大きいダイナミックレンジを知覚することが可能である。しかしながら、ＨＶＳは、ＨＶＳのダイナミックレンジをいわゆる同時レンジに狭くするための適応機構を含む。同時レンジの幅は、現在の照明状況（たとえば、現在の輝度）に依存し得る。厳密なレンジは各個人およびディスプレイに基づいて変動し得るが、ＨＤＴＶのＳＤＲ、ＵＨＤＴＶの予想されるＨＤＲおよびＨＶＳダイナミックレンジによって与えられるダイナミックレンジの可視化が図３に示されている。
【００６１】
[0073]  現在のビデオ適用例およびサービスは、ＩＴＵ  Ｒｅｃ．７０９によって規制され、約０．１〜１００（しばしば「ニト（nit）」と呼ばれる）カンデラ（candela）（ｃｄ）毎ｍ２の輝度（たとえば、ルミナンス）のレンジを一般にサポートするＳＤＲを与え、１０個未満のｆストップをもたらす。いくつかの例示的な次世代ビデオサービスは、最高１６個のｆストップのダイナミックレンジを与えることが予想される。そのようなコンテンツのための詳細な仕様は現在開発中であるが、いくつかの初期パラメータは、ＳＭＰＴＥ−２０８４およびＩＴＵ−Ｒ  Ｒｅｃ．２０２０において指定されている。
【００６２】
[0074]  ＨＤＲ以外のより現実的なビデオエクスペリエンスのための別の態様は色次元である。色次元は一般に色域によって定義される。図４は、ＳＤＲ色域（ＢＴ．７０９色プライマリに基づく三角形１００）、およびＵＨＤＴＶのためのそのより広い色域（ＢＴ．２０２０色プライマリに基づく三角形１０２）を示す概念図である。図４はまた、自然色の範囲を表す、（舌形のエリア１０４によって画定された）いわゆるスペクトル軌跡を示す。図３によって示されているように、ＢＴ．７０９（三角形１００）色プライマリからＢＴ．２０２０（三角形１０２）色プライマリに移動することは、約７０％より多くの色をもつＵＨＤＴＶサービスを与えることを目的とする。Ｄ６５は、ＢＴ．７０９および／またはＢＴ．２０２０仕様のための例示的な白色を指定する。
【００６３】
[0075]  ＤＣＩ−Ｐ３色空間、ＢＴ．７０９色空間、およびＢＴ．２０２０色空間のための色域仕様の例が表１に示されている。
【００６４】
【表１】
2018533278.tif 000003
【００６５】
[0076]  表１に見られるように、色域は、白色点のＸ値およびＹ値によって、ならびに原色（たとえば、赤（Ｒ）、緑（Ｇ）、および青（Ｂ））のｘ値およびｙ値によって定義され得る。ｘ値およびｙ値は、ＣＩＥ１９３１色空間によって定義されるように、色の色度（ＸおよびＺ）および輝度（Ｙ）から導出された正規化された値を表す。ＣＩＥ１９３１色空間は、（たとえば、波長に関して）純粋な色と人間の眼がどのようにそのような色を知覚するかとの間のリンクを定義する。
【００６６】
[0077]  ＨＤＲ／ＷＣＧビデオデータは、一般に、４：４：４クロマフォーマットおよび極めて広い色空間（たとえば、ＣＩＥ  ＸＹＺ）を用いて、コンポーネントごとに極めて高い精度で（浮動小数点さえ）獲得され、記憶される。この表現は高精度をターゲットにし、ほとんど数学的に可逆である。しかしながら、ＨＤＲ／ＷＣＧビデオデータを記憶するためのそのようなフォーマットは、多くの冗長性を含み得、圧縮目的のために最適でないことがある。ＨＶＳベースの仮定を用いたより低い精度のフォーマットが、一般に、最先端のビデオ適用例のために利用される。
【００６７】
[0078]  圧縮の目的のためのビデオデータフォーマットコンバージョンプロセスの一例は、図５に示されているように、３つの主要なプロセスを含む。図５の技法は、ソースデバイス１２によって実行され得る。線形ＲＧＢデータ１１０は、ＨＤＲ／ＷＣＧビデオデータであり得、浮動小数点表現で記憶され得る。線形ＲＧＢデータ１１０は、ダイナミックレンジ圧縮のために非線形伝達関数（ＴＦ）１１２を使用して圧縮され得る。伝達関数１１２は、任意の数の非線形伝達関数、たとえば、ＳＭＰＴＥ−２０８４において定義されているＰＱ  ＴＦを使用して、線形ＲＧＢデータ１１０を圧縮し得る。いくつかの例では、色コンバージョンプロセス１１４は、ハイブリッドビデオエンコーダによる圧縮により好適であるより圧縮したまたはロバストな色空間（たとえば、ＹＵＶまたはＹＣｒＣｂ色空間）に、圧縮されたデータをコンバートする。このデータは、次いで、コンバートされたＨＤＲ’データ１１８を生成するために、浮動−整数表現量子化ユニット１１６を使用して量子化される。この例では、ＨＤＲ’データ１１８は整数表現にある。ＨＤＲ’データは、現在、ハイブリッドビデオエンコーダ（たとえば、ＨＥＶＣ技法を適用するビデオエンコーダ２０）による圧縮により好適なフォーマットにある。図５に示されているプロセスの順序は、一例として与えられ、他の適用例において異なり得る。たとえば、色コンバージョンはＴＦプロセスに先行し得る。さらに、追加の処理、たとえば、空間サブサンプリングが色コンポーネントに適用され得る。
【００６８】
[0079]  デコーダ側における逆コンバージョンは図６に示されている。図６の技法は、宛先デバイス１４によって実行され得る。コンバートされたＨＤＲ’データ１２０は、ハイブリッドビデオデコーダ（たとえば、ＨＥＶＣ技法を適用するビデオデコーダ３０）を使用してビデオデータを復号することを通して、宛先デバイス１４において取得され得る。ＨＤＲ’データ１２０は、次いで、逆量子化ユニット１２２によって逆量子化され得る。次いで、逆色コンバージョンプロセス１２４が、逆量子化されたＨＤＲ’データに適用され得る。逆色コンバージョンプロセス１２４は、色コンバージョンプロセス１１４の逆であり得る。たとえば、逆色コンバージョンプロセス１２４は、ＨＤＲ’データをＹＣｒＣｂフォーマットからＲＧＢフォーマットにコンバートし得る。次に、逆伝達関数１２６が、線形ＲＧＢデータ１２８を再作成するために、伝達関数１１２によって圧縮されたダイナミックレンジを再加算するために、データに適用され得る。
【００６９】
[0080]  図５に示されている技法は、次に、より詳細に説明される。概して、伝達関数は、量子化による誤差がルミナンス値のレンジに（ほぼ）わたって知覚的に均一になるように、データのダイナミックレンジを圧縮するためにデータ（たとえば、ＨＤＲ／ＷＣＧビデオデータ）に適用される。そのような圧縮は、より少ないビットを用いてデータが表されることを可能にする。一例では、伝達関数は、１次元（１Ｄ）非線形関数であり得、たとえば、Ｒｅｃ．７０９におけるＳＤＲのために指定されるように、エンドユーザ表示の電気光学伝達関数（ＥＯＴＦ）の逆を反映し得る。別の例では、伝達関数は、ＨＶＳ知覚対輝度変化、たとえば、ＨＤＲのためのＳＭＰＴＥ−２０８４において指定されたＰＱ伝達関数を近似し得る。ＯＥＴＦの逆プロセスは、コードレベルをルミナンスにマッピングする、ＥＯＴＦ（電気光学伝達関数）である。図７は、ＥＯＴＦとして使用される非線形伝達関数のいくつかの例を示す。伝達関数はまた、各Ｒ、ＧおよびＢコンポーネントに別個に適用され得る。
【００７０】
[0081]  本開示のコンテキストでは、「信号値」または「色値」という用語は、画像要素のための（Ｒ、Ｇ、Ｂ、またはＹなどの）特定の色コンポーネントの値に対応するルミナンスレベルについて説明するために使用され得る。信号値は、一般に、線形光源レベル（ルミナンス値）を表す。「コードレベル」または「デジタルコード値」という用語は、画像信号値のデジタル表現を指し得る。一般に、そのようなデジタル表現は非線形信号値を表す。ＥＯＴＦは、ディスプレイデバイス（たとえば、ディスプレイデバイス３２）に与えられた非線形信号値とディスプレイデバイスによって生成された線形色値との間の関係を表す。
【００７１】
[0082]  ＲＧＢが、一般に画像キャプチャセンサーによって生成されるデータのタイプであるので、ＲＧＢデータは、一般に、入力色空間として利用される。しかしながら、ＲＧＢ色空間は、それのコンポーネントの間で高い冗長性を有し、圧縮した表現のために最適でない。より圧縮したおよびよりロバストな表現を達成するために、ＲＧＢコンポーネントは、一般に、圧縮により好適であるより無相関な色空間、たとえば、ＹＣｂＣｒにコンバートされる（たとえば、色変換が実行される）。ＹＣｂＣｒ色空間は、異なる、あまり相関しないコンポーネントにおいて、ルミナンス（Ｙ）および色情報（ＣｒＣｂ）の形態で輝度を分離する。このコンテキストでは、ロバストな表現は、条件付きビットレートにおいて圧縮されたとき、誤差耐性のより高いレベルを起用する色空間を指し得る。
【００７２】
[0083]  色変換に続いて、ターゲット色空間中の入力データは、依然として、高ビット深度（たとえば浮動小数点正確さ）で表され得る。高ビット深度データは、たとえば、量子化プロセスを使用して、ターゲットビット深度にコンバートされ得る。いくつかの研究は、ＰＱ伝達と組み合わせた１０〜１２ビット正確さが、丁度可知差（ＪＮＤ：Just-Noticeable Difference）を下回るひずみをもつ１６個のｆストップのＨＤＲデータを与えるのに十分であることを示す。概して、ＪＮＤは、差が（たとえば、ＨＶＳによって）それとわかるようになるために、何か（たとえば、ビデオデータ）が変更しなければならない量である。１０ビット正確さで表されたデータは、さらに、最先端のビデオコーディングソリューションのほとんどを用いてコーディングされ得る。この量子化は、不可逆コーディングの要素であり、コンバートされたデータにもたらされる不正確さの源である。
【００７３】
[0084]  次世代ＨＤＲ／ＷＣＧビデオ適用例は、ＨＤＲおよびＣＧの異なるパラメータにおいてキャプチャされたビデオデータを用いて動作することが予期される。異なる構成の例は、最高１０００ニトの、または最高１０，０００ニトのピーク輝度をもつＨＤＲビデオコンテンツのキャプチャであり得る。異なる色域の例としては、ＢＴ．７０９、ＢＴ．２０２０同様にＳＭＰＴＥ指定Ｐ３、または他のものがあり得る。
【００７４】
[0085]  また、将来利用されるべき、すべての他の現在使用されている色域を組み込む（またはほとんど組み込む）、単一の色空間、たとえば、ターゲット色コンテナが予期される。そのようなターゲット色コンテナの一例は、ＢＴ．２０２０である。単一のターゲット色コンテナのサポートは、低減された数の動作点（たとえば、色コンテナ、色空間、色コンバージョンアルゴリズムなどの数）および／または低減された数の必要とされるアルゴリズムがデコーダ（たとえば、ビデオデコーダ３０）によってサポートされるべきであるので、ＨＤＲ／ＷＣＧシステムの規格化、実装および展開を著しく簡略化することになる。
【００７５】
[0086]  そのようなシステムの一例では、ターゲット色コンテナ（たとえばＢＴ．２０２０）とは異なるネイティブ色域（たとえばＰ３またはＢＴ．７０９）を用いてキャプチャされたコンテンツは、処理より前に（たとえば、ビデオ符号化より前に）ターゲットコンテナにコンバートされ得る。以下は、そのようなコンバージョンのいくつかの例である。ＢＴ．７０９からＢＴ．２０２０色コンテナへのＲＧＢコンバージョン。
【００７６】
【数１】
2018533278.tif 000004
【００７７】
Ｐ３からＢＴ．２０２０色コンテナへのＲＧＢコンバージョン。
【００７８】
【数２】
2018533278.tif 000005
【００７９】
[0087]  このコンバージョン中に、Ｐ３またはＢＴ．７０９色域においてキャプチャされた信号の各コンポーネント（たとえば、ＲＧＢ、ＹＵＶ、ＹＣｒＣｂなど）によって占有される値レンジは、ＢＴ．２０２０表現において低減され得る。データが浮動小数点正確さで表されるので喪失はないが、色コンバージョン（たとえば、以下の式３に示されているＲＧＢからＹＣｒＣＢへのコンバージョン）および量子化（以下の式４中の例）と組み合わせられたとき、値レンジの縮小は、入力データのための増加された量子化誤差をもたらす。
【００８０】
【数３】
2018533278.tif 000006
【００８１】
【数４】
2018533278.tif 000007
【００８２】
式（４）において、ＤY’は、量子化されたＹ’コンポーネントであり、ＤCbは、量子化されたＣｂであり、ＤCrは、量子化されたＣｒコンポーネントである。＜＜という用語はビット単位右シフトを表す。ＢｉｔＤｅｐｔｈY、ＢｉｔＤｅｐｔｈCr、およびＢｉｔＤｅｐｔｈCbはそれぞれ、量子化されたコンポーネントの所望のビット深度である。
【００８３】
[0088]  さらに、現実世界のコーディングシステムでは、低減されたダイナミックレンジを用いて信号をコーディングすることは、コード化クロマコンポーネントのための正確さの著しい喪失をもたらし得、コーディングアーティファクト、たとえば、色ミスマッチおよび／または色ブリーディングとして視聴者によって観測されることになる。
【００８４】
[0089]  上記で説明された問題に対処するために、後続の技法が考慮され得る。１つの例示的な技法は、ネイティブ色空間におけるＨＤＲコーディングを伴う。そのような技法では、ＨＤＲビデオコーディングシステムは、様々なタイプの現在知られている色域をサポートし、ビデオコーディング規格の拡張が将来の色域をサポートすることを可能にすることになる。このサポートは、異なる色コンバージョン変換、たとえばＲＧＢからＹＣｂＣｒへの、およびそれらの逆変換をサポートすることのみに限定されないことになり、また、色域の各々に調整された変換関数を指定することになる。ツールのそのような多様性のサポートは、複雑であり、費用がかかることになる。
【００８５】
[0090]  別の例示的な技法は、色域アウェア（aware）ビデオコーデックを含む。そのような技法では、仮想ビデオエンコーダは、低減されたダイナミックレンジから生じるひずみを低減するために、入力信号のネイティブ色域を推定し、コーディングパラメータ（たとえば、コード化クロマコンポーネントのための量子化パラメータ）を調整するように構成される。しかしながら、そのような技法は、すべての入力データが整数点正確さにおいて一般的なコーデックに与えられるので、上記の式（４）中で行われる量子化により起こり得る正確さの喪失を復元することが可能でないであろう。
【００８６】
[0091]  本開示は、色域コンバージョンによってＨＤＲ信号表現にもたらされるダイナミックレンジ変化を補償するために、ダイナミックレンジ調整（ＤＲＡ）を実行するための技法、方法、および装置について説明する。ダイナミックレンジ調整は、色ミスマッチ、色ブリーディングなどを含む、色域コンバージョンによって引き起こされるひずみを防ぐ、および／または少なくするのを助け得る。本開示の１つまたは複数の例では、ＤＲＡは、（たとえば、ソースデバイス１２による）エンコーダ側における量子化より前に、および（たとえば、宛先デバイス１４による）デコーダ側における逆量子化の後に、ターゲット色空間、たとえば、ＹＣｂＣｒの各色コンポーネントの値に対して行われる。
【００８７】
[0092]  図８は、本開示の技法に従って動作する例示的なＨＤＲ／ＷＣＧコンバージョン装置を示すブロック図である。図８において、実線はデータフローを指定し、破線は制御信号を指定する。本開示の技法は、ソースデバイス１２のビデオプリプロセッサユニット１９によって実行され得る。上記で説明されたように、ビデオプリプロセッサユニット１９は、ビデオエンコーダ２０とは別個のデバイスであり得る。他の例では、ビデオプリプロセッサユニット１９は、ビデオエンコーダ２０と同じデバイスに組み込まれ得る。
【００８８】
[0093]  図８に示されているように、ＲＧＢネイティブＣＧビデオデータ２００が、ビデオプリプロセッサユニット１９に入力される。ビデオプリプロセッサユニット１９によるビデオ前処理のコンテキストでは、ＲＧＢネイティブＣＧビデオデータ２００は、入力色コンテナによって定義される。入力色コンテナが、ビデオデータ２００を表すために使用される色プライマリのセット（たとえば、ＢＴ．７０９、ＢＴ．２０２０、Ｐ３など）を指定する。本開示の一例では、ビデオプリプロセッサユニット１９は、ＲＧＢネイティブＣＢビデオデータ２００の色コンテナと色空間の両方を、ＨＤＲ’データ２１６のためのターゲット色コンテナおよびターゲット色空間にコンバートするように構成され得る。入力色コンテナのように、ターゲット色コンテナが、ＨＤＲ’データ２１６を表すために使用されるセットまたは色プライマリを指定し得る。本開示の一例では、ＲＧＢネイティブＣＢビデオデータ２００は、ＨＤＲ／ＷＣＧビデオであり得、ＢＴ．２０２０またはＰ３色コンテナ（または任意のＷＣＧ）を有し、ＲＧＢ色空間中にあり得る。別の例では、ＲＧＢネイティブＣＢビデオデータ２００は、ＳＤＲビデオであり得、ＢＴ．７０９色コンテナを有し得る。一例では、ＨＤＲ’データ２１６のためのターゲット色コンテナは、ＨＤＲ／ＷＣＧビデオ（たとえば、ＢＴ．２０２０色コンテナ）のために構成されていることがあり、ビデオ符号化のためにより最適な色空間（たとえば、ＹＣｒＣｂ）を使用し得る。
【００８９】
[0094]  本開示の一例では、ＣＧコンバータ２０２が、ＲＧＢネイティブＣＧビデオデータ２００の色コンテナを、入力色コンテナ（たとえば、第１の色コンテナ）からターゲット色コンテナ（たとえば、第２の色コンテナ）にコンバートするように構成され得る。一例として、ＣＧコンバータ２０２は、ＲＧＢネイティブＣＧビデオデータ２００を、ＢＴ．７０９色表現からＢＴ．２０２０色表現にコンバートし得、それの例が以下に示されている。
【００９０】
[0095]  ＲＧＢ  ＢＴ．７０９サンプル（Ｒ709、Ｇ709、Ｂ709）をＲＧＢ  ＢＴ．２０２０サンプル（Ｒ2020、Ｇ2020、Ｂ2020）にコンバートするためのプロセスは、適切なコンバージョン行列を使用して、最初にＸＹＺ表現にコンバートし、その後にＸＹＺからＲＧＢ  ＢＴ．２０２０へのコンバージョンが続くことを伴う、２ステップコンバージョンを用いて実装され得る。
【００９１】
【数５】
2018533278.tif 000008
【００９２】
[0096]  ＸＹＺからＲ2020Ｇ2020Ｂ2020（ＢＴ．２０２０）へのコンバージョン
【００９３】
【数６】
2018533278.tif 000009
【００９４】
同様に、単一のステップおよび推奨方法は以下の通りである。
【００９５】
【数７】
2018533278.tif 000010
【００９６】
[0097]  ＣＧコンバージョンの後の得られたビデオデータが、図８中のＲＧＢターゲットＣＧビデオデータ２０４として示されている。本開示の他の例では、入力データと出力ＨＤＲ’データとのための色コンテナは同じであり得る。そのような例では、ＣＧコンバータ２０２は、ＲＧＢネイティブＣＧビデオデータ２００に対してコンバージョンを実行する必要はない。
【００９７】
[0098]  次に、伝達関数ユニット２０６が、ＲＧＢターゲットＣＧビデオデータ２０４のダイナミックレンジを圧縮する。伝達関数ユニット２０６は、図５を参照しながら上記で説明されたのと同じ様式でダイナミックレンジを圧縮するために、伝達関数を適用するように構成され得る。色コンバージョンユニット２０８が、ＲＧＢターゲットＣＧ色データ２０４を、入力色コンテナの色空間（たとえば、ＲＧＢ）からターゲット色コンテナの色空間（たとえば、ＹＣｒＣｂ）にコンバートする。図５を参照しながら上記で説明されたように、色コンバージョンユニット２０８は、ハイブリッドビデオエンコーダ（たとえば、ビデオエンコーダ２０）による圧縮により好適であるより圧縮したまたはロバストな色空間（たとえば、ＹＵＶまたはＹＣｒＣｂ色空間）に、圧縮されたデータをコンバートする。
【００９８】
[0099]  調整ユニット２１０が、ＤＲＡパラメータ推定ユニット２１２によって導出されたＤＲＡパラメータに従って、色コンバートされたビデオデータのダイナミックレンジ調整（ＤＲＡ）を実行するように構成される。概して、ＣＧコンバータ２０２によるＣＧコンバージョンおよび伝達関数ユニット２０６によるダイナミックレンジ圧縮の後に、得られたビデオデータの実際の色値は、特定のターゲット色コンテナの色域のために割り振られたすべての利用可能なコードワード（たとえば、各色を表す特有のビットシーケンス）を使用しないことがある。すなわち、いくつかの状況では、入力色コンテナから出力色コンテナへのＲＧＢネイティブＣＧビデオデータ２００のコンバージョンは、得られた圧縮されたビデオデータがすべての可能な色表現を効率的に利用しないように、ビデオデータの色値（たとえば、ＣｒおよびＣｂ）を過度に圧縮し得る。上記で説明されたように、色のための値の低減されたレンジを用いて信号をコーディングすることは、コード化クロマコンポーネントのための正確さの著しい喪失をもたらし得、コーディングアーティファクト、たとえば、色ミスマッチおよび／または色ブリーディングとして視聴者によって観測されることになる。
【００９９】
[0100]  調整ユニット２１０は、特定のターゲット色コンテナのために利用可能なコードワードを十分に利用するために、ダイナミックレンジ圧縮および色コンバージョンの後に、ビデオデータ、たとえば、ＲＧＢターゲットＣＧビデオデータ２０４の色コンポーネント（たとえば、ＹＣｒＣｂ）にＤＲＡパラメータを適用するように構成され得る。調整ユニット２１０は、ピクセルレベルにおいてビデオデータにＤＲＡパラメータを適用し得る。概して、ＤＲＡパラメータは、ターゲット色コンテナのために利用可能なできるだけ多くのコードワードに実際のビデオデータを表すために使用されるコードワードを拡大する関数を定義する。
【０１００】
[0101]  本開示の一例では、ＤＲＡパラメータは、ビデオデータのコンポーネントに適用されるスケールおよびオフセット値を含む。概して、ビデオデータの色コンポーネントの値レンジが低いほど、大きいスケーリングファクタが使用され得る。オフセットパラメータ（offset parameter）は、色コンポーネントの値の中心をターゲット色コンテナのための利用可能なコードワードの中心に置くために使用され得る。たとえば、ターゲット色コンテナが色コンポーネントごとに１０２４個のコードワードを含む場合、オフセット値は、中心コードワードがコードワード５１２（たとえば、最中間コードワード）に移動されるように選定され得る。他の例では、オフセットパラメータは、ターゲット色コンテナ中の全体的な表現が、コーディングアーテファクトをなくす際により効率的であるように、出力コードワードへの入力コードワードのより良いマッピングを与えるために使用され得る。
【０１０１】
[0102]  一例では、調整ユニット２１０は、以下のように、ターゲット色空間（たとえば、ＹＣｒＣｂ）中のビデオデータにＤＲＡパラメータを適用する。
【０１０２】
【数８】
2018533278.tif 000011
【０１０３】
ここで、信号コンポーネントＹ’、Ｃｂ’およびＣｒ’は、ＲＧＢからＹＣｂＣｒへのコンバージョン（式３中の例）から生成された信号である。Ｙ’、Ｃｒ’およびＣｒ’は、ビデオデコーダ３０によって復号されたビデオ信号でもあり得ることに留意されたい。Ｙ’’、Ｃｂ’’、およびＣｒ’’は、ＤＲＡパラメータが各色コンポーネントに適用された後のビデオ信号の色コンポーネントである。上記の例に見られるように、各色コンポーネントは、異なるスケールおよびオフセットパラメータに関係する。たとえば、ｓｃａｌｅ１およびｏｆｆｓｅｔ１がＹ’コンポーネントのために使用され、ｓｃａｌｅ２およびｏｆｆｓｅｔ２がＣｂ’コンポーネントのために使用され、ｓｃａｌｅ３およびｏｆｆｓｅｔ３がＣｒ’コンポーネントのために使用される。これはただの一例であることを理解されたい。他の例では、同じスケールおよびオフセット値が、あらゆる色コンポーネントのために使用され得る。
【０１０４】
[0103]  他の例では、各色コンポーネントは、複数のスケールおよびオフセットパラメータに関連し得る。たとえば、ＣｒまたはＣｂ色コンポーネントのためのクロマ値の実際の分散は、コードワードの異なるパーティションまたはレンジについて異なり得る。一例として、中心コードワード（たとえば、コードワード５１２）の下にあるよりも、中心コードワードの上で使用されるより多くの特有のコードワードがあり得る。そのような例では、調整ユニット２１０は、中心コードワードを上回る（たとえば、中心コードワードよりも大きい値を有する）クロマ値のためにスケールおよびオフセットパラメータの１つのセットを適用し、中心コードワードを下回る（たとえば、中心コードワードよりも小さい値を有する）クロマ値のためにスケールおよびオフセットパラメータの異なるセットを適用するように構成され得る。
【０１０５】
[0104]  上記の例に見られるように、調整ユニット２１０は、線形関数としてスケールおよびオフセットＤＲＡパラメータを適用する。したがって、調整ユニット２１０が、色コンバージョンユニット２０８による色コンバージョンの後にターゲット色空間中でＤＲＡパラメータを適用することは必要でない。これは、色コンバージョンが、それ自体が線形プロセスであるからである。したがって、他の例では、調整ユニット２１０は、色コンバージョンプロセスの前にネイティブ色空間（たとえば、ＲＧＢ）中のビデオデータにＤＲＡパラメータを適用し得る。この例では、色コンバージョンユニット２０８は、調整ユニット２１０がＤＲＡパラメータを適用した後に色コンバージョンを適用することになる。
【０１０６】
[0105]  本開示の別の例では、調整ユニット２１０は、以下のように、ターゲット色空間またはネイティブ色空間のいずれか中でＤＲＡパラメータを適用し得る。
【０１０７】
【数９】
2018533278.tif 000012
【０１０８】
この例では、パラメータｓｃａｌｅ１、ｓｃａｌｅ２、ｓｃａｌｅ３、ｏｆｆｓｅｔ１、ｏｆｆｓｅｔ２、およびｏｆｆｓｅｔ３は、上記で説明されたのと同じ意味を有する。パラメータｏｆｆｓｅｔＹは、信号の輝度を反映するパラメータであり、Ｙ’の平均値に等しくなり得る。他の例では、オフセットＹと同様のオフセットパラメータが、入力および出力表現中の中心値のマッピングをより良く保存するために、Ｃｂ’およびＣｒ’コンポーネントのために適用され得る。
【０１０９】
[0106]  本開示の別の例では、調整ユニット２１０は、ネイティブ色空間またはターゲット色空間以外の色空間中でＤＲＡパラメータを適用するように構成され得る。概して、調整ユニット２１０は、以下のように、ＤＲＡパラメータを適用するように構成され得る。
【０１１０】
【数１０】
2018533278.tif 000013
【０１１１】
ここで、信号コンポーネントＡ、ＢおよびＣは、ターゲット色空間とは異なる色空間、たとえば、ＲＧＢまたは中間色空間中の信号コンポーネントである。
【０１１２】
[0107]  本開示の他の例では、調整ユニット２１０は、ＤＲＡを実行するためにビデオに線形伝達関数を適用するように構成される。そのような伝達関数は、ダイナミックレンジを圧縮するために伝達関数ユニット２０６によって使用される伝達関数とは異なる。上記で定義されたスケールおよびオフセットという用語と同様に、調整ユニット２１０によって適用される伝達関数は、ターゲット色コンテナ中の利用可能なコードワードに色値を拡大し、色値をそれの中心に置くために使用され得る。ＤＲＡを実行するために伝達関数を適用することの一例が、以下に示されている。
【０１１３】
【数１１】
2018533278.tif 000014
【０１１４】
ＴＦ２という用語は、調整ユニット２１０によって適用される伝達関数を指定する。いくつかの例では、調整ユニット２１０は、コンポーネントの各々に異なる伝達関数を適用するように構成され得る。
【０１１５】
[0108]  本開示の別の例では、調整ユニット２１０は、単一のプロセスにおいて、色コンバージョンユニット２０８の色コンバージョンと一緒にＤＲＡパラメータを適用するように構成され得る。すなわち、調整ユニット２１０と色コンバージョンユニット２０８との線形関数は組み合わせられ得る。ｆ１およびｆ２が、ＲＧＢからＹＣｂＣｒへの行列とＤＲＡスケーリングファクタとの組合せである、組み合わせられた適用例の一例が、以下に示されている。
【０１１６】
【数１２】
2018533278.tif 000015
【０１１７】
[0109]  本開示の別の例では、ＤＲＡパラメータを適用した後に、調整ユニット２１０は、ビデオデータが、あるターゲット色コンテナのために指定されたコードワードのレンジ外に値を有するのを防ぐために、クリッピングプロセスを実行するように構成され得る。いくつかの状況では、調整ユニット２１０によって適用されるスケールおよびオフセットパラメータは、いくつかの色コンポーネント値が、許容可能なコードワードのレンジを超えることを引き起こし得る。この場合、調整ユニット２１０は、レンジを超えるコンポーネントの値をレンジ中の最大値にクリッピングするように構成され得る。
【０１１８】
[0110]  調整ユニット２１０によって適用されるＤＲＡパラメータは、ＤＲＡパラメータ推定ユニット２１２によって決定され得る。ＤＲＡパラメータ推定ユニット２１２がＤＲＡパラメータを更新する頻度および時間インスタンスは、フレキシブルである。たとえば、ＤＲＡパラメータ推定ユニット２１２は、時間レベルでＤＲＡパラメータを更新し得る。すなわち、ピクチャのグループ（ＧＯＰ）、または単一のピクチャ（フレーム）について、新しいＤＲＡパラメータが決定され得る。この例では、ＲＧＢネイティブＣＧビデオデータ２００は、ＧＯＰまたは単一のピクチャであり得る。他の例では、ＤＲＡパラメータ推定ユニット２１２は、空間レベルで、たとえば、スライスタイルにおいて、またはブロックレベルでＤＲＡパラメータを更新し得る。このコンテキストでは、ビデオデータのブロックは、マクロブロック、コーディングツリーユニット（ＣＴＵ）、コーディングユニット、またはブロックの任意の他のサイズおよび形状であり得る。ブロックは、正方形、矩形、または任意の他の形状であり得る。したがって、ＤＲＡパラメータは、より効率的な時間および空間予測ならびにコーディングのために使用され得る。
【０１１９】
[0111]  本開示の一例では、ＤＲＡパラメータ推定ユニット２１２は、ＲＧＢネイティブＣＧビデオデータ２００のネイティブ色域とターゲット色コンテナの色域との対応に基づいてＤＲＡパラメータを導出し得る。たとえば、ＤＲＡパラメータ推定ユニット２１２は、ネイティブ色域（たとえば、ＢＴ．７０９）およびターゲット色コンテナの色域（たとえば、ＢＴ．２０２０）を前提として、スケールおよびオフセット値を決定するためにあらかじめ定義されたルールのセットを使用し得る。
【０１２０】
[0112]  たとえば、ネイティブ色域およびターゲット色コンテナが、ｘｙ空間中の色プライマリ座標および白色点座標の形態で定義されると仮定する。ＢＴ．７０９およびＢＴ．２０２０のためのそのような情報の一例が、以下の表２に示されている。
【０１２１】
【表２】
2018533278.tif 000016
【０１２２】
[0113]  一例では、ＢＴ．２０２０はターゲット色コンテナの色域であり、ＢＴ．７０９はネイティブ色コンテナの色域である。この例では、調整ユニット２１０は、ＹＣｂＣｒターゲット色空間にＤＲＡパラメータを適用する。ＤＲＡパラメータ推定ユニット２１２は、以下のように、ＤＲＡパラメータを推定し、それを調整ユニット２１０にフォワーディングするように構成され得る。
【０１２３】
【数１３】
2018533278.tif 000017
【０１２４】
[0114]  別の例として、ＢＴ．２０２０がターゲット色域であり、Ｐ３がネイティブ色域であり、ＤＲＡがＹＣｂＣｒターゲット色空間中で適用される場合、ＤＲＡパラメータ推定ユニット２１２は、次のようにＤＲＡパラメータを推定するように構成され得る。
【０１２５】
【数１４】
2018533278.tif 000018
【０１２６】
[0115]  上記の例では、ＤＲＡパラメータ推定ユニット２１２は、あるネイティブ色域およびあるターゲット色域を前提として、使用すべきＤＲＡパラメータを示すルックアップテーブルを調べることによって、上記のスケールおよびオフセット値を決定するように構成され得る。他の例では、ＤＲＡパラメータ推定ユニット２１２は、たとえば、表２に示されているように、ネイティブ色域およびターゲット色域のプライマリおよび白色空間値からＤＲＡパラメータを計算するように構成され得る。
【０１２７】
[0116]  たとえば、プライマリ座標（ｘＸｔ、ｙＸｔ）によって指定されたターゲット（Ｔ）色コンテナを考慮し、ここで、ＸはＲ、Ｇ、Ｂ色コンポーネントを示す。
【０１２８】
【数１５】
2018533278.tif 000019
【０１２９】
および、プライマリ座標（ｘＸｎ、ｙＸｎ）によって指定されたネイティブ（Ｎ）色域を考慮し、ここで、ＸはＲ、Ｇ、Ｂ色コンポーネントを示す。
【０１３０】
【数１６】
2018533278.tif 000020
【０１３１】
両方の色域のための白色点座標は、ｗｈｉｔｅＰ＝（ｘＷ、ｙＷ）に等しい。ＤＲＡパラメータ推定ユニット２１２は、プライマリ座標〜白色点の間の距離の関数としてＤＲＡのためのｓｃａｌｅ２およびｓｃａｌｅ３パラメータを導出し得る。そのような推定の一例が、以下に与えられる。
【０１３２】
【数１７】
2018533278.tif 000021
【０１３３】
[0117]  いくつかの例では、ＤＲＡパラメータ推定ユニット２１２は、ネイティブ色域のあらかじめ定義されたプライマリ値からでなく、ＲＧＢネイティブＣＧビデオデータ２００中の色値の実際の分散からｐｒｉｍｅＮ中のプライマリ座標を決定することによってＤＲＡパラメータを推定するように構成され得る。すなわち、ＤＲＡパラメータ推定ユニット２１２は、ＲＧＢネイティブＣＧビデオデータ２００中に存在する実際の色を分析し、ＤＲＡパラメータを計算するために、上記で説明された関数におけるそのような分析から決定されたプライマリ色値および白色点を使用するように構成され得る。算出を容易にするために、上記で定義されたいくつかのパラメータの近似がＤＲＡとして使用され得る。たとえば、ｓｃａｌｅ３＝２．１７３５はｓｃａｌｅ３＝２に近似され得、これは、いくつかのアーキテクチャにおけるより容易な実装を可能にする。
【０１３４】
[0118]  本開示の他の例では、ＤＲＡパラメータ推定ユニット２１２は、ターゲット色コンテナの色域だけでなく、ターゲット色空間に基づいてＤＲＡパラメータを決定するように構成され得る。コンポーネント値の値の実際の分散は色空間ごとに異なり得る。たとえば、クロマ値分散は、一定でないルミナンスを有するＹＣｂＣｒ色空間と比較して一定のルミナンスを有するＹＣｂＣｒ色空間について異なり得る。ＤＲＡパラメータ推定ユニット２１２は、ＤＲＡパラメータを決定するために異なる色空間の色分散を使用し得る。
【０１３５】
[0119]  本開示の他の例では、ＤＲＡパラメータ推定ユニット２１２は、ビデオデータを前処理および／または符号化することに関連するいくつかのコスト関数を最小限に抑えるように、ＤＲＡパラメータのための値を導出するように構成され得る。一例として、ＤＲＡパラメータ推定ユニット２１２は、量子化ユニット２１４によってもたらされる量子化誤差を最小限に抑えたＤＲＡパラメータを推定するように構成され得る上記の（たとえば、式（４）を参照）。ＤＲＡパラメータ推定ユニット２１２は、適用されたＤＲＡパラメータの異なるセットを有しているビデオデータに対して量子化誤差テストを実行することによって、そのような誤差を最小限に抑え得る。別の例では、ＤＲＡパラメータ推定ユニット２１２は、知覚的に、量子化ユニット２１４によってもたらされる量子化誤差を最小限に抑えるＤＲＡパラメータを推定するように構成され得る。ＤＲＡパラメータ推定ユニット２１２は、適用されるＤＲＡパラメータの異なるセットを有しているビデオデータに対する知覚的誤差テストに基づいて、そのような誤差を最小限に抑え得る。ＤＲＡパラメータ推定ユニット２１２は、次いで、最も低い量子化誤差を生成したＤＲＡパラメータを選択し得る。
【０１３６】
[0120]  別の例では、ＤＲＡパラメータ推定ユニット２１２は、調整ユニット２１０によって実行されたＤＲＡとビデオエンコーダ２０によって実行されたビデオ符号化の両方に関連するコスト関数を最小限に抑えるＤＲＡパラメータを選択し得る。たとえば、ＤＲＡパラメータ推定ユニット２１２は、ＤＲＡパラメータの複数の異なるセットを用いて、ＤＲＡを実行し、ビデオデータを符号化し得る。ＤＲＡパラメータ推定ユニット２１２は、次いで、ＤＲＡおよびビデオ符号化から生じるビットレート、ならびにこれらの２つの不可逆プロセスによってもたらされるひずみの重み付き和を形成することによって、ＤＲＡパラメータの各セットのためのコスト関数を計算し得る。ＤＲＡパラメータ推定ユニット２１２は、次いで、コスト関数を最小限に抑えるＤＲＡパラメータのセットを選択し得る。
【０１３７】
[0121]  ＤＲＡパラメータ推定のための上記の技法の各々では、ＤＲＡパラメータ推定ユニット２１２は、そのコンポーネントに関する情報を使用して、各コンポーネントのために別個にＤＲＡパラメータを決定し得る。他の例では、ＤＲＡパラメータ推定ユニット２１２は、クロスコンポーネント情報（cross-component information）を使用してＤＲＡパラメータを決定し得る。たとえば、Ｃｒコンポーネントのために導出されたＤＲＡパラメータは、ＣｂコンポーネントのためのＤＲＡパラメータを導出するために使用され得る。
【０１３８】
[0122]  ＤＲＡパラメータを導出することに加えて、ＤＲＡパラメータ推定ユニット２１２は、符号化ビットストリーム中でＤＲＡパラメータをシグナリングするように構成され得る。ＤＲＡパラメータ推定ユニット２１２は、ＤＲＡパラメータを示す１つまたは複数のシンタックス要素を直接シグナリングし得るか、またはシグナリングのためにビデオエンコーダ２０に１つまたは複数のシンタックス要素を与えるように構成され得る。パラメータのそのようなシンタックス要素は、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１が、それのネイティブ色コンテナ中のビデオデータを再構成するために、ビデオプリプロセッサユニット１９のプロセスの逆を実行し得るように、ビットストリーム中でシグナリングされ得る。ＤＲＡパラメータをシグナリングするための例示的な技法は、以下で説明される。
【０１３９】
[0123]  一例では、ＤＲＡパラメータ推定ユニット２１２は、メタデータとして符号化ビデオビットストリーム中で、補足エンハンスメント情報（ＳＥＩ）メッセージ中で、ビデオユーザビリティ情報（ＶＵＩ）中で、ビデオパラメータセット（ＶＰＳ）中で、シーケンスパラメータセット（ＳＰＳ）中で、ピクチャパラメータセット中で、スライスヘッダ中で、ＣＴＵヘッダ中で、またはビデオデータのサイズ（たとえば、ＧＯＰ、ピクチャ、ブロック、マクロブロック、ＣＴＵなど）のためのＤＲＡパラメータを示すのに好適な任意の他のシンタックス構造中で１つまたは複数のシンタックス要素をシグナリングし得る。
【０１４０】
[0124]  いくつかの例では、１つまたは複数のシンタックス要素は、ＤＲＡパラメータを明示的に示す。たとえば、１つまたは複数のシンタックス要素は、ＤＲＡのための様々なスケールおよびオフセット値であり得る。他の例では、１つまたは複数のシンタックス要素は、ＤＲＡのためのスケールおよびオフセット値を含むルックアップテーブルへの１つまたは複数のインデックス（index）であり得る。さらに別の例では、１つまたは複数のシンタックス要素は、ＤＲＡのために使用するための線形伝達関数を指定するルックアップテーブルへのインデックスであり得る。
【０１４１】
[0125]  他の例では、ＤＲＡパラメータは明示的にシグナリングされず、むしろ、ビデオプリプロセッサユニット１９とビデオポストプロセッサユニット３１の両方が、ビットストリーム識別可能な形態であるビデオデータの同じ情報および／または特性を使用する同じあらかじめ定義されたプロセスを使用してＤＲＡパラメータを導出するように構成される。一例として、ビデオポストプロセッサユニット３１は、符号化ビットストリーム中でビデオデータのネイティブ色コンテナならびに符号化ビデオデータのターゲット色コンテナを示すように構成され得る。ビデオポストプロセッサユニット３１は、次いで、上記で定義されたのと同じプロセスを使用してそのような情報からＤＲＡパラメータを導出するように構成され得る。いくつかの例では、ネイティブおよびターゲット色コンテナを識別する１つまたは複数のシンタックス要素は、シンタックス構造で供給される。そのようなシンタックス要素は明示的に色コンテナを示し得るか、またはルックアップテーブルへのインデックスであり得る。別の例では、ビデオプリプロセッサユニット１９は、特定の色コンテナのための色プライマリおよび白色点のＸＹ値を示す１つまたは複数のシンタックス要素をシグナリングするように構成され得る。別の例では、ビデオプリプロセッサユニット１９は、ＤＲＡパラメータ推定ユニット２１２によって実行された分析に基づいて、ビデオデータ中の実際の色値の色プライマリおよび白色点（コンテンツプライマリおよびコンテンツ白色点）のＸＹ値を示す１つまたは複数のシンタックス要素をシグナリングするように構成され得る。
【０１４２】
[0126]  一例として、コンテンツ中の色を含んでいる最も小さい色域の色プライマリがシグナリングされ得、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１において、ＤＲＡパラメータは、コンテナプライマリとコンテンツプライマリの両方を使用して導出される。一例では、コンテンツプライマリは、上記で説明されたように、Ｒ、ＧおよびＢのためのｘおよびｙコンポーネントを使用してシグナリングされ得る。別の例では、コンテンツプライマリは、２つの知られているプライマリセット間の比としてシグナリングされ得る。たとえば、コンテンツプライマリは、（ＧおよびＢコンポーネントのためのａｌｆａgおよびａｌｆａbの場合と同様の式を用いて）ＢＴ．７０９プライマリとＢＴ．２０２０プライマリとの間の線形位置、ｘr_content＝ａｌｆａr＊ｘr_bt709＋（１−ａｌｆａr）＊ｘr_bt2020としてシグナリングされ得、ここで、パラメータａｌｆａrは、２つの知られているプライマリセット間の比を指定する。いくつかの例では、シグナリングされたおよび／または導出されたＤＲＡパラメータは、ＨＤＲ／ＷＣＧビデオデータのコーディングのために利用される重み付け予測ベースの技法を可能にするために、ビデオエンコーダ２０および／またはビデオデコーダ３０によって使用され得る。
【０１４３】
[0127]  重み付け予測を利用するビデオコーディング方式では、現在コーディングされているピクチャＳｃのサンプルが、重み（Ｗwp）およびオフセット（Ｏwp）を用いてとられた参照ピクチャＳｒの（単方向予測のための）サンプルから予測され、これは、予測サンプルＳｐを生じる。
【０１４４】
【数１８】
2018533278.tif 000022
【０１４５】
[0128]  ＤＲＡを利用するいくつかの例では、参照ピクチャのサンプルと現在コーディングされているピクチャのサンプルとは、異なるパラメータ、すなわち現在ピクチャのための｛ｓｃａｌｅ１cur，ｏｆｆｓｅｔ１cur｝および参照ピクチャのための｛ｓｃａｌｅ１ref，ｏｆｆｓｅｔ１ref｝を採用するＤＲＡを用いて処理され得る。そのような実施形態では、重み付け予測のパラメータは、たとえば、以下のように、ＤＲＡから導出され得る。
【０１４６】
【数１９】
2018533278.tif 000023
【０１４７】
[0129]  調整ユニット２１０がＤＲＡパラメータを適用した後に、ビデオプリプロセッサユニット１９は、次いで、量子化ユニット２１４を使用してビデオデータを量子化し得る。量子化ユニット２１４は、図４に関して上記で説明されたのと同じ様式で動作し得る。量子化後に、ビデオデータは、次に、ＨＤＲ’データ２１６のターゲットプライマリのターゲット色空間およびターゲット色域において調整される。ＨＤＲ’データ２１６は、次いで、圧縮のためにビデオエンコーダ２０に送られ得る。
【０１４８】
[0130]  図９は、本開示の技法による例示的なＨＤＲ／ＷＣＧ逆コンバージョン装置を示すブロック図である。図９に示されているように、ビデオポストプロセッサユニット３１が、図８のビデオプリプロセッサユニット１９によって実行された技法の逆を適用するように構成され得る。他の例では、ビデオポストプロセッサユニット３１の技法は、ビデオデコーダ３０に組み込まれ、それによって実行され得る。
【０１４９】
[0131]  一例では、ビデオデコーダ３０は、ビデオエンコーダ２０によって符号化されたビデオデータを復号するように構成され得る。次いで、復号ビデオデータ（ターゲット色コンテナ中のＨＤＲ’データ３１６）は、ビデオポストプロセッサユニット３１にフォワーディングされる。逆量子化ユニット３１４が、図８の量子化ユニット２１４によって実行された量子化プロセスを反転させるために、ＨＤＲ’データ３１６に対して逆量子化プロセスを実行する。
【０１５０】
[0132]  ビデオデコーダ３０はまた、図８のＤＲＡパラメータ推定ユニット２１２によって生成された１つまたは複数のシンタックス要素のうちのいずれかを復号し、それをビデオポストプロセッサユニット３１のＤＲＡパラメータ導出ユニット３１２に送るように構成され得る。ＤＲＡパラメータ導出ユニット３１２は、上記で説明されたように、１つまたは複数のシンタックス要素に基づいてＤＲＡパラメータを決定するように構成され得る。いくつかの例では、１つまたは複数のシンタックス要素は、ＤＲＡパラメータを明示的に示す。他の例では、ＤＲＡパラメータ導出ユニット３１２は、図８のＤＲＡパラメータ推定ユニット２１２によって使用された同じ技法を使用してＤＲＡパラメータを導出するように構成される。
【０１５１】
[0133]  ＤＲＡパラメータ導出ユニット３１２によって導出されたパラメータは、逆調整ユニット３１０に送られる。逆調整ユニット３１０は、調整ユニット２１０によって実行された線形ＤＲＡ調整の逆を実行するためにＤＲＡパラメータを使用する。逆調整ユニット３１０は、調整ユニット２１０のための上記で説明された調整技法のいずれかの逆を適用し得る。さらに、調整ユニット２１０の場合と同様に、逆調整ユニット３１０は、逆色コンバージョンの前または後に逆ＤＲＡを適用し得る。したがって、逆調整ユニット３１０は、ターゲット色コンテナまたはネイティブ色コンテナ中のビデオデータに対してＤＲＡパラメータを適用し得る。いくつかの例では、逆調整ユニット３１０は、逆量子化ユニット３１４の前に逆調整を適用するように配置され得る。
【０１５２】
[0134]  逆色コンバージョンユニット（inverse color conversion unit）３０８が、ターゲット色空間（たとえば、ＹＣｂＣｒ）からネイティブ色空間（たとえば、ＲＧＢ）にビデオデータをコンバートする。次いで、逆伝達関数３０６が、ビデオデータのダイナミックレンジを圧縮解除（uncompact）するために、伝達関数２０６によって適用された伝達関数の逆を適用する。いくつかの例では、彼得られたビデオデータ（ＲＧＢターゲットＣＧ３０４）は、依然としてターゲット色域中にあるが、現在、ネイティブダイナミックレンジおよびネイティブ色空間中にある。次に、逆ＣＧコンバータ３０２が、ＲＧＢネイティブＣＧ３００を再構成するために、ネイティブ色域にＲＧＢターゲットＣＧ３０４をコンバートする。
【０１５３】
[0135]  いくつかの例では、追加の後処理技法が、ビデオポストプロセッサユニット３１によって採用され得る。ＤＲＡを適用することは、ビデオを、それの実際のネイティブ色域の外側に置き得る。量子化ユニット２１４および逆量子化ユニット３１４によって実行される量子化ステップ、ならびに調整ユニット２１０および逆調整ユニット３１０によって実行されるアップサンプリングおよびダウンサンプリング技法は、ネイティブ色コンテナ中の得られた色値が、ネイティブ色域の外側になることの原因となり得る。ネイティブ色域（または、上記で説明されたように、シグナリングされた場合、実際の最も小さいコンテンツプライマリ）が知られているとき、ＤＲＡのための後処理として意図された色域に色値（たとえば、ＲＧＢまたはＣｂおよびＣｒ）を変換するために、追加のプロセスが、ＲＧＢネイティブＣＧビデオデータ３０４に適用され得る。他の例では、そのような後処理は、量子化の後に、またはＤＲＡ適用の後に適用され得る。
【０１５４】
[0136]  上述のように、いくつかのＳＥＩメッセージが、ビデオデータの様々な色コンポーネントのためのダイナミックレンジ調整情報に関する情報を伝達するために使用され得る。上記で説明されたおよび以下でより詳細に説明されるようなコンポーネントスケーリングＳＥＩメッセージは、ビデオデータの様々な色コンポーネントのためのマッピング情報を示すために使用され得るスケールファクタ、オフセット、およびレンジ（たとえば、コードワード値のパーティション）のセットを伝達し得る。マッピング情報は、再構成されたＨＤＲビデオデータの全体的な品質、または後方互換性が望まれるいくつかの場合には再構成されたＳＤＲビデオデータの品質が改善されるように、あるいは表示能力のためにより好適な再構成された出力を製作するために、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１に、サンプル値（sample value）の異なるレンジをどのように拡大または縮小すべきかを示すために使用され得る。
【０１５５】
[0137]  以下の表３は、コンポーネントスケーリングＳＥＩメッセージのシンタックス構造の一変形形態を与える。以下のシンタックス要素の名称が、以下の例で説明されるものとは異なるプレフィックス「ｈｄｒ＿ｒｅｃｏｎ＿」を含んでいるが、シンタックス要素の名称がｃｏｍｐｏｎｅｎｔ＿ｓｃａｌｉｎｇとしてプレフィックスされる場合、シンタックステーブルは場合によっては同じであることに留意されたい。
【０１５６】
[0138]  
【０１５７】
【表３】
2018533278.tif 000024
【０１５８】
[0139]  表３のＳＥＩシンタックスのセマンティクスは、以下で提示される。
【０１５９】
[0140]  マッピングプロセスは、区分線形関数マップ［ｃ］（）、ｃ＝０．．ｈｄｒ＿ｒｅｃｏｎ＿ｎｕｍ＿ｃｏｍｐｓ＿ｍｉｎｕｓ１の場合に基づき、これは、以下のように、［０，1]  における値ｘを値ｙ＝ｍａｐ［ｃ］（ｘ）にマッピングする。
−  両端値を含む、０〜ｈｄｒ＿ｒｅｃｏｎ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］−１のレンジ中のｉの場合、以下が適用される。
−  値ＳｃａｌｅＶａｌｕｅ［ｃ］［ｉ］は、シンタックス要素ｈｄｒ＿ｒｅｃｏｎ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］のセマンティクスにおいて説明されるように導出される。
−  値ＲａｎｇｅＶａｌｕｅ［ｃ］［ｉ］は、シンタックス要素ｈｄｒ＿ｒｅｃｏｎ＿ｒａｎｇｅ＿ｖａｌ［ｃ］［ｉ］のセマンティクスにおいて説明されるように導出される。
−  両端値を含む、０〜ｈｄｒ＿ｒｅｃｏｎ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］−１のレンジ中のｉの場合、値ＩｎｐｕｔＲａｎｇｅｓ［ｃ］［ｉ］およびＯｕｔｐｕｔＲａｎｇｅｓ［ｃ］［ｉ］は、以下のように導出される。
−  ｉが０に等しい場合、以下が適用される。
【０１６０】
【数２０】
2018533278.tif 000025
【０１６１】
−  他の場合（ｉが０に等しくない）、以下が適用される。
【０１６２】
【数２１】
2018533278.tif 000026
【０１６３】
−  両端値を含む、０〜ｈｄｒ＿ｒｅｃｏｎ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］−１のレンジ中のｉの場合、値ＯｆｆｓｅｔＶａｌｕｅ［ｃ］［ｉ］は、以下のように導出される。
【０１６４】
【数２２】
2018533278.tif 000027
【０１６５】
−  パラメータｙ＝ｍａｐ［ｃ］（ｘ）は、以下のように導出される。
−  ｘがＯｕｔｐｕｔＲａｎｇｅｓ［ｃ］〔０〕よりも小さいかまたはそれに等しい場合、以下が適用される。
【０１６６】
【数２３】
2018533278.tif 000028
【０１６７】
−  そうではなく、ｘがＯｕｔｐｕｔＲａｎｇｅｓ［ｃ］［ｈｄｒ＿ｒｅｃｏｎ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］］よりも大きい場合、以下が適用される。
【０１６８】
【数２４】
2018533278.tif 000029
【０１６９】
−  他の場合、以下が適用される。
【０１７０】
【数２５】
2018533278.tif 000030
【０１７１】
[0141]  コンポーネントスケーリング情報ＳＥＩメッセージ、およびコンポーネントのダイナミックレンジを調整するために適用可能である他のパラメータに関連するいくつかの問題が識別されている。特に、スケールおよびオフセット値、ならびにサンプル値（たとえば、ＲＧＢ値、ＹＣｒＣｂ値、ＹＵＶ値、ＸＹＺ値など）のためのコードワードのレンジを導出するための浮動小数点数の使用に関係する問題が識別されている。たとえば、ビットストリーム中でシグナリングされるスケール値は、逆ダイナミックレンジ調整プロセスを実行するために、デコーダ側において、たとえば、ビデオポストプロセッサ３１によって使用される。しかしながら、サンプル値のレンジを算出するためにおよびマッピングプロセスを算出するために、スケール値を使用するために、逆方向演算（reciprocal operation）が、ビデオポストプロセッサ３１において実行される。コンポーネントスケーリングＳＥＩメッセージのための前の例示的なセマンティクスは、サンプル値を用いて乗算されるべき逆数（たとえば、スケール値の逆数、またはスケール値および加算されたオフセット値の逆数）の使用を指定する。そのような逆方向演算においてもたらされる誤差は、逆数が、発生されたあらゆるサンプル値に適用されるので、順方向演算（forward operation）における潜在的誤差よりも有意になることになる。
【０１７２】
[0142]  コンポーネントスケーリングＳＥＩメッセージのセマンティクスは、サンプル値のレンジの導出プロセス、および浮動小数点演算に関する色コンポーネント（たとえば、サンプル値）のコードワードの各レンジに対するマッピングプロセス（たとえば、スケールおよびオフセット値の適用）を示す。これは、異なるコンピューティングシステムにおける様々な浮動小数点演算実装に基づく再構成されたＨＤＲ出力における差分をもたらすことがある。
【０１７３】
[0143]  本出願は、ＳＥＩシグナリングおよび処理を使用してコンポーネントスケーリング情報の通信を改善するためのいくつかの技法、またはＨ．２６５／ＨＥＶＣ、Ｈ．２６４／ＡＶＣ、ＢＤＡ、ＭＰＥＧまたは他のものなど、ビデオコーディング規格において指定され得る他の同様のシグナリング技法について説明する。後続の態様のうちの１つまたは複数は、独立して、または、特定の例におけるこれらの態様のうちの他のものとの好適な組合せで適用され得ることを認識されたい。
【０１７４】
[0144]  概して、本開示は、ビデオエンコーダ２０および／またはビデオプリプロセッサユニット１９が、コンポーネントサンプル値（たとえば、色コンポーネント値）の１つまたは複数のサンプル値レンジのためのスケール値をシグナリングするように構成され得る技法について説明する。スケール値は、ビデオデコーダ３０およびビデオポストプロセッサユニット３１が、入力サンプル値を含んでいる特定のサンプル値レンジのために指定されたスケール値を入力サンプル値に乗算し、コンポーネントスケーリング情報の一部としてパラメータに基づいて算出されたオフセットを加算することによって、コンポーネントの入力サンプル値から出力サンプル値を取得するためのマッピングプロセスを実行するように構成され得るように指定される。
【０１７５】
[0145]  本開示の別の例では、色コンポーネントのコードワードのレンジのサイズおよび数を算出するために浮動小数点実装を使用するのではなく、ビデオエンコーダ２０および／またはビデオプリプロセッサユニット１９は、固定小数点算出実装を使用して、色コンポーネントのコードワードのレンジのサイズおよび数を導出するように構成され得る。たとえば、ビデオエンコーダ２０および／またはビデオプリプロセッサユニット１９は、ダイナミックレンジ調整マッピングプロセスのパラメータを決定および適用するために、所定の数の小数ビット（fractional bit）を使用するように構成され得る。小数ビットの数は、ダイナミックレンジ調整プロセスの各パラメータ（たとえば、各色コンポーネント（コードワード）のための値のレンジ、スケール値、およびオフセット値）について異なり得ることに留意されたい。
【０１７６】
[0146]  たとえば、ビデオプリプロセッサユニット１９は、色コンポーネントのためのコードワードのレンジのサイズおよび数を通信するために使用される任意のパラメータまたはシンタックス要素（たとえばｈｄｒ＿ｒｅｃｏｎ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］）に対して整数演算を実行するように構成され得る。ビデオプリプロセッサユニット１９は、使用される固定小数点実装におけるレンジのサイズおよび数の任意の計算の小数部分によって使用されるビット数を追跡するように構成され得る。ビデオプリプロセッサユニット１９および／またはビデオエンコーダ２０は、ＳＥＩメッセージ（たとえば、ｈｄｒ＿ｒｅｃｏｎ＿ｏｆｆｓｅｔ＿ｆｒａｃ＿ｂｉｔ＿ｄｅｐｔｈ、ｈｄｒ＿ｒｅｃｏｎ＿ｓｃａｌｅ＿ｆｒａｃ＿ｂｉｔ＿ｄｅｐｔｈ）中の小数部分において使用されるビット数をシグナリングするように構成され得るか、または、小数部分において使用されるビット数は所定の値であり得る。ビデオデコーダ３０は、小数部分におけるビット数を示すＳＥＩメッセージ中のシンタックス要素を復号するように構成され得、ビデオポストプロセッサユニット３１は、逆ダイナミックレンジ調整プロセスのパラメータのうちの１つまたは複数のための小数部分における同じビット数を使用して、逆ダイナミックレンジ調整を実行するように構成され得る。
【０１７７】
[0147]  本開示の一例では、マッピングプロセスのためのレンジおよび／または他のパラメータを決定するとき、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、異なるパラメータのシグナリングされた小数ビット深度が異なるとき、パラメータのために実行された算出の正確さができるだけ保持されるように、そのようなパラメータを決定するように構成され得る。たとえば、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、特定のパラメータを決定するために使用される任意の中間計算ステップにおける小数ビットの数を累算する（accumulate）ことによって、最小値に丸めることによりもたらされる誤差を保持するように構成され得る。ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、次いで、特定のパラメータの最終値を、特定のパラメータを決定および／または計算する最後のステップにおいて所望の小数正確さ（desired fractional accuracy）にするために、クリッピングプロセスを実行し得る。別の例では、パラメータのシグナリングされた小数ビット深度が同じであるとき、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、中間ステップにおける小数ビットの数を累算し、パラメータの最終値を（１つまたは複数の）最後のステップにおいて所望の正確さにするために、クリッピングを実行するように構成され得る。
【０１７８】
[0148]  別の例では、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、計算プロセスの１つまたは複数の中間ステップにおいてパラメータの値を、またはパラメータのために取得された値の小数部分が所定の値に低減されるようにパラメータの値をクリッピングおよび／またはトランケートする（truncate）ように構成され得る。すなわち、クリッピングを実行するためにパラメータのための最終値を決定するまで待つのではなく、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、パラメータを決定するために実行される計算の中間値をクリッピングし得る。そのようなクリッピングまたはトランケーションは、ＳＥＩメッセージ中で示される小数ビットの数に基づき得る。別の例では、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、動作／ステップがクリッピングなしに実行されると、小数ビットの累算された数が、ある所定の値、たとえば中間値を記憶するために使用されるレジスタのビット深度を超えることになると決定されたとき、特定の動作／ステップの前に特定のパラメータを計算するときに使用される中間値をクリッピングおよび／またはトランケートするように構成され得る。
【０１７９】
[0149]  本開示の別の例では、ビデオプリプロセッサユニット１９および／またはビデオポストプロセッサユニット３１は、色コンポーネントの固定表現のために定義された定義された最小値と最大値とに基づく所定のサンプル値レンジに従って、スケール、オフセットおよびレンジ値を導出するように構成され得る。たとえば、色コンポーネントの固定表現は、定義された値の複数のレンジ、たとえば、値の「標準」レンジ、値の「フル」レンジ、および「制限付き」レンジ値を有し得る。値の「フル」レンジは、値の「標準」レンジ（たとえば、ＹＣｂＣｒ色空間の８ビット標準レンジ表現、Ｙコンポーネントは、両端値を含む、１６〜２３５のレンジ中の値をとり得、ＣｂおよびＣｒコンポーネントは、両端値を含む、１６から２４０の間の値をとり得る）と比較して、特定のコンポーネントの最小値と最大値との間のより大きいスパンを有し得る（たとえば、ＹＣｂＣｒ色空間の８ビットフルレンジ表現の場合、Ｙ、Ｃｂ、およびＣｒコンポーネントは、両端値を含む、０〜２５５の激怒中の値をとることができる）。値の「制限付き」レンジは、値の「標準」レンジと比較して、特定のコンポーネントの最小値と最大値との間のより小さいスパンを有し得る（たとえば、ＹＣｂＣｒ色空間の１０ビット制限付きレンジ表現の場合、Ｙ、Ｃｂ、およびＣｒコンポーネントは、両端値を含む、４〜１０１９のレンジ中の値をとり得る）。
【０１８０】
[0150]  一例では、ビデオエンコーダ２０および／またはビデオプリプロセッサユニット１９は、どんなサンプルレンジ（たとえばフル、制限付き、標準、または他のもの）が使用されるかに基づいて、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１に、サンプルの最小および最大許容値（たとえば、色コンポーネント値）を示すために（たとえば、ＳＥＩメッセージ中で）シンタックス要素をシグナリングするように構成され得る。別の例では、ビデオエンコーダ２０および／またはビデオプリプロセッサユニット１９は、どんなサンプルレンジ（たとえばフル、制限付き、標準）が使用されるかに基づいて、ビデオデコーダに、サンプルの最小および最大許容値を示す１つまたは複数のシンタックス値を（たとえば、ＳＥＩメッセージ中で）シグナリングするように構成され得る。ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、次いで、受信された最小値と受信された最大値とに基づいて逆ダイナミックレンジ調整プロセスのために許可されるコンポーネント値のレンジを決定し得る。
【０１８１】
[0151]  別の例では、ビデオエンコーダ２０および／またはビデオプリプロセッサユニット１９は、スケール値が符号付き（signed）であるのか符号なし（unsigned）であるのかを示すために、（たとえば、ＳＥＩメッセージ中で）フラグをシグナリングするように構成され得る。この例では、任意のＳＥＩメッセージのパースプロセス（parsing process）は、フラグの値にかかわらず同じである。
【０１８２】
[0152]  後続のセクションは、前のセクションにおいて開示された例示的な技法を使用する実施形態のいくつかの例を含む。この実施形態では、コンポーネントスケーリング関数がルックアップテーブルとしてシグナリングされ、ルックアップテーブルを定義する点をシグナリングするために使用されるビット数もシグナリングされる。一例では、ルックアップは、区分線形マッピング関数を定義する。ルックアップテーブルのための点は、区分線形マッピングを定義する（ｘ，ｙ）座標に対応する。シグナリングされる明示的点を有しないサンプル値のために、値は隣接ピボット点に基づいて補間される。
【０１８３】
[0153]  レンジおよび出力サンプル値の導出プロセスは、以下のように定義される。
【０１８４】
[0154]  サンプルｙ＝ｍａｐ［ｃ］（ｘ）への、コンポーネントｃからのサンプルｘのマッピングは、以下のように指定される。
−  ＤｅｆａｕｌｔＰｒｅｃＳｈｉｆｔの値を９に等しく設定する
−  変数ｍｉｎＳａｍｐｌｅＶａｌおよびｍａｘＳａｍｐｌｅＶａｌを、コンテンツのサンプルレンジによって定義された最小および最大サンプル値を示すものとする。
−  両端値を含む、０〜ｈｄｒ＿ｒｅｃｏｎ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］−１のレンジ中のｉの場合、変数ＳｃａｌｅＶａｌｕｅ［ｃ］［ｉ］は、以下のように導出される。
【０１８５】
【数２６】
2018533278.tif 000031
【０１８６】
−  両端値を含む、０〜ｈｄｒ＿ｒｅｃｏｎ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］−１のレンジ中のｉの場合、変数ＲａｎｇｅＶａｌｕｅ［ｃ］［ｉ］は、以下のように導出される。
【０１８７】
−  ｈｄｒ＿ｒｅｃｏｎ＿ｅｑｕａｌ＿ｒａｎｇｅｓ＿ｆｌａｇ［ｃ］が０に等しい場合、以下が適用される。
【０１８８】
【数２７】
2018533278.tif 000032
【０１８９】
−  他の場合（ｈｄｒ＿ｒｅｃｏｎ＿ｅｑｕａｌ＿ｒａｎｇｅｓ＿ｆｌａｇ［ｃ］が１に等しい）、以下が適用される。
【０１９０】
【数２８】
2018533278.tif 000033
【０１９１】
ここで、サンプルレンジが０〜１に正規化されたとき、ＩｎｐｕｔＤｙｎａｍｉｃＲａｎｇｅＶａｌｕｅは１に等しい。
−  両端値を含む、０〜ｈｄｒ＿ｒｅｃｏｎ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］のレンジ中のｉの場合、変数ＩｎｐｕｔＲａｎｇｅｓ［ｃ］［ｉ］およびＯｕｔｐｕｔＲａｎｇｅｓ［ｃ］［ｉ］は、以下のように導出される。
【０１９２】
−  ｉが０に等しい場合、以下が適用される。
【０１９３】
【数２９】
2018533278.tif 000034
【０１９４】
【数３０】
2018533278.tif 000035
【０１９５】
−  他の場合（ｉが０に等しくない）、以下が適用される。
【０１９６】
【数３１】
2018533278.tif 000036
【０１９７】
【数３２】
2018533278.tif 000037
【０１９８】
−  両端値を含む、０〜ｈｄｒ＿ｒｅｃｏｎ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］−１のレンジ中のｉの場合、パラメータＯｆｆｓｅｔＶａｌｕｅ［ｃ］［ｉ］は、以下のように導出される。
【０１９９】
【数３３】
2018533278.tif 000038
【０２００】
−  パラメータｙ＝ｍａｐ［ｃ］（ｘ）は、以下のように導出される。
【０２０１】
−  変数ｂｉｔＤｅｐｔｈＤｅｌｔａは、ＤｅｆａｕｌｔＰｒｅｃＳｈｉｆｔ＋ｈｄｒ＿ｒｅｃｏｎ＿ｏｆｆｓｅｔ＿ｆｒａｃ＿ｂｉｔ＿ｄｅｐｔｈ−ＢｉｔＤｅｐｔｈに等しく設定される
−  （ｘ＜＜ｂｉｔＤｅｐｔｈＤｅｌｔａ）がＯｕｔｐｕｔＲａｎｇｅｓ［ｃ］〔０〕よりも小さいかまたはそれに等しい場合、以下が適用される。
【０２０２】
【数３４】
2018533278.tif 000039
【０２０３】
−  そうではなく、（ｘ＜＜ｂｉｔＤｅｐｔｈＤｅｌｔａ）がＯｕｔｐｕｔＲａｎｇｅｓ［ｃ］［ｈｄｒ＿ｒｅｃｏｎ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］］よりも大きい場合、以下が適用される。
【０２０４】
【数３５】
2018533278.tif 000040
【０２０５】
−  他の場合、以下が適用される。
【０２０６】
【数３６】
2018533278.tif 000041
【０２０７】
代替的に、ｍｉｎＳａｍｐｌｅＶａｌおよびｍａｘＳａｍｐｌｅＶａｌに基づくサンプルレンジの調整は、ＯｆｆｓｅｔＶａｌｕｅに対して実行されず、むしろ以下のように、ＩｎｐｕｔＲａｎｇｅｓおよびＯｕｔｐｕｔＲａｎｇｅｓに対して実行される。
【０２０８】
【数３７】
2018533278.tif 000042
【０２０９】
[0155]  本開示は、ＳＥＩシグナリングおよび処理またはＨ．２６５／ＨＥＶＣ、Ｈ．２６４／ＡＶＣ、ＢＤＡ、ＭＰＥＧまたは他のものなど、ビデオコーディング規格において指定されるまたは指定されることになる他の手段を使用してコンポーネントスケーリング情報の搬送を改善するためのいくつかの技法を与える。これらの技法のうちの１つまたは複数は、独立して、または、他のものとの組合せで適用され得る。さらに、ダイナミックレンジプロセスの固定小数点実装を実行するためのＳＥＩメッセージ中の情報をシグナリングおよび／または使用するための上記で説明された技法は、情報をシグナリング／受信するための以下で説明されるシンタックス構造のうちの１つまたは複数を利用し得る。
【０２１０】
[0156]  いくつかの例では、ビデオエンコーダ２０は、各コンポーネントのために、本開示で説明されるように、ダイナミックレンジ調整を適用する前に、それを下回るすべてのコンポーネント値が第１のコンポーネント値にクリッピングされる第１の調整されていないコンポーネント値を決定する第１のオフセット値を含む、グローバルオフセット値を含む１つまたは複数のＳＥＩメッセージをシグナリングし得る。デコーダ３０は、そのようなＳＥＩメッセージのうちの１つまたは複数を受信し、ＳＥＩメッセージ中の情報をパースおよび／または復号し、ならびにビデオポストプロセッサ３１に情報を受け渡し得る。
【０２１１】
[0157]  いくつかの例では、各コンポーネントのために、ビデオエンコーダ２０は、第１のオフセット値がダイナミックレンジ調整の後にそれにマッピングされる調整された値を指定する、第２のオフセット値を含む１つまたは複数のＳＥＩメッセージをシグナリングし得る。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２１２】
[0158]  別の例では、第１のグローバルオフセット値も第２のグローバルオフセット値も、ＳＥＩメッセージ中でシグナリングされない。代わりに、デコーダ３０は、第１のグローバルオフセットおよび第２のグローバルオフセットの値が、デコーダ３０がシーケンスごとに決定するかまたは外部手段によって受信するかのいずれかの一定値、所定の値、あるいはシグナリングされた値であると仮定する。別の例では、ビデオエンコーダ２０はＳＥＩメッセージ中で第１のグローバルオフセット値をシグナリングするが、第２のグローバルオフセット値はＳＥＩメッセージ中でシグナリングされない。代わりに、ビデオデコーダ３０は、それの値が、デコーダ３０がシーケンスごとに決定するかまたは外部手段によって受信されたかのいずれかの一定値、所定の値、あるいはシグナリングされた値であると推論する。またさらなる例では、ビデオエンコーダ２０はＳＥＩメッセージ中で第２のグローバルオフセット値をシグナリングするが、第１のグローバルオフセット値はＳＥＩメッセージ中でシグナリングされない。代わりに、ビデオデコーダ３０は、第１のグローバルオフセット値が、デコーダ３０がシーケンスごとに決定するかまたは外部手段によって受信されたかのいずれかの一定値、所定の値、あるいはシグナリングされた値であると推論する。
【０２１３】
[0159]  いくつかの例では、ビデオエンコーダ２０は、デコーダ３０によって受信され、グローバルオフセット値とローカルスケールおよびオフセット値の両方、ならびに調整されていない値のレンジのパーティション、および調整された値のレンジのパーティションを含む、他のグローバルまたはローカルパラメータを導出するためにデコーダ３０によって使用されるオフセット値をシグナリングし得る。
【０２１４】
[0160]  いくつかの例では、ビデオエンコーダ２０は、入力表現値（すなわち、コンポーネント値）のレンジがダイナミックレンジ調整中に分割されたパーティションの数を含む１つまたは複数のＳＥＩメッセージをシグナリングし得る。一例では、パーティションの数は、２の累乗（すなわち１、２、４、８、１６など）であるように制約され得、パーティションの数は、対数としてシグナリングされる（たとえば、８つのパーティションは３＝ｌｏｇ2８としてシグナリングされる）。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２１５】
[0161]  いくつかの例では、クロマコンポーネントのためのパーティションの数は、ルーマコンポーネントのためのパーティションの数とは異なり得る。パーティションの数は、２＋１の累乗であるように制約され、対数としてシグナリングされ、マイナス０に向けて丸め得る。このようにして、中間クロマをもつピクセルはそれら自体の値を有することができ、そのパーティションのサイズは他のパーティションよりも小さくなり得る。そのような例では、中間クロマは、中央値の周りのクロマの値（たとえば、クロマ値が、−０．５から０．５の間、または、１０ビット表現において−５１２から５１１の間にわたるとき、０）を指し得る。２の累乗としてパーティションの数を制約することは、エンコーダ２０が整数値のための実際の値よりも少ないビットで値の対数を表すことが可能であり得るので、エンコーダ２０がビットを節約することを可能にし得る。２＋１の累乗にパーティションの数を制約することは、少なくとも１つのパーティションが中間クロマ値に専用であり得ることを保証し得、いくつかの例では、中間クロマ値に対応するパーティションの幅は、残りよりも小さくなり得る。他の例では、そのようなパーティションは、他のパーティションのうちの１つまたは複数よりも大きくなり得る。
【０２１６】
[0162]  いくつかの例では、デコーダ３０は、グローバルオフセット値とローカルスケールおよびオフセット値の両方、ならびに調整されていないコンポーネント値のレンジのパーティションの実際のサイズ、および／または調整されたコンポーネント値のレンジのパーティションのサイズを含む、他のグローバルまたはローカルパラメータを導出するためにパーティションのシグナリングされた数を使用し得る。
【０２１７】
[0163]  いくつかの例では、エンコーダ２０は、各パーティションのために、入力コンポーネント値および対応するマッピングされた出力コンポーネント値のレンジを指定するローカルスケールおよびローカルオフセット値を含み得る１つまたは複数のＳＥＩメッセージをシグナリングし得る。いくつかの例では、エンコーダ２０は、スケールおよびオフセットをシグナリングするためにシンタックス要素によって使用されるビット数を含むＳＥＩメッセージをシグナリングし得る。他の例では、エンコーダ２０は、シンタックス要素におけるスケールおよびオフセットの小数部分を表すために使用されるビット数を示すＳＥＩメッセージをシグナリングし得る。他の例では、エンコーダ２０は、スケールパラメータ（scale parameter）の整数部分が符号付き表現中でシグナリングされることを示す１つまたは複数のＳＥＩメッセージまたはシンタックス要素をシグナリングし得る。いくつかの例では、符号付き表現は２の補数である。他の例では、符号付き表現は符号付き絶対値（signed magnitude）表現である。ビデオデコーダ３０は、そのようなＳＥＩメッセージおよび／またはシンタックス要素を受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２１８】
[0164]  他の例では、エンコーダ２０は、最初に、調整されたコンポーネントまたは表現値のレンジを算出し、次いで、スケール値を使用して、調整されていない表現中の対応するレンジを算出するために、各オフセット値を連続的に使用し得る。たとえば、１つのオフセット値が使用されて、調整されたコンポーネントのために導出またはシグナリングされたグローバルオフセット値の値を使用して、調整されたコンポーネント中の第１のパーティションのレンジを算出し、続いて、スケール値および調整された表現の第１のパーティションのレンジを使用して、調整されていない表現の対応するパーティション中のレンジを導出し、調整された表現の第１のパーティションと調整されていない表現の対応するパーティションとのそれぞれのレンジを用いて、パーティションの境界を示す調整されたレンジの第１のパーティションと調整されていない表現の対応するパーティションとのために導出されたそれぞれの値を導出し得る。これに続いて、別のオフセット値が使用されて、前のステップにおいて導出された調整されたコンポーネント中の第１のパーティションの境界値を使用して、調整されたコンポーネント中の第２のパーティションのレンジを算出し、続いて、スケール値および調整された表現の第２のパーティションのレンジを使用して、調整されていない表現のレンジを導出し得、調整された表現の第２のパーティションと調整されていない表現の対応するパーティションとのそれぞれのレンジを用いて、それぞれの表現の境界を示す調整された表現および調整されていない表現中のパーティションのためのそれぞれの値が導出される。この方法は、すべてのレンジおよび境界が、調整された表現および調整されていない表現中のすべてのパーティションのために導出されるまで、繰り返される。別の例では、エンコーダ２０は、最初に、調整されていないコンポーネントまたは表現値のレンジを算出し、次いで、スケール値を使用して、調整された表現中の対応するレンジを算出するために、各オフセット値を連続的に使用し得る。言い換えれば、スケールおよびオフセット値が適用されるコンポーネントまたは表現は、調整されていない表現と調整された表現との間でスワップされ得る。
【０２１９】
[0165]  いくつかの例では、スケールおよびオフセット値をシグナリングするためにシンタックス要素によって使用されるビット数は、コンポーネントに依存し得る。他の例では、デフォルトビット数が定義され、これらの数が明示的にシグナリングされないときに使用される。
【０２２０】
[0166]  いくつかの例では、エンコーダ２０は、出力表現（すなわち、出力コンポーネント）のパーティションの長さが等しいかどうかを示すシンタックス要素をシグナリングし得る。そのような例では、エンコーダ２０は、１つまたは複数のパーティションのためにオフセット値をシグナリングしないことがある。デコーダ３０は、いくつかの例では、オフセット値が等しいと推論し得る。別の例では、デコーダ３０は、パーティションが等しい長さのものであると仮定し得、そのように示すシンタックス要素を受信しないことがある。いくつかの例では、デコーダ３０は、シグナリングされたシンタックス要素および表現のあらかじめ定義された総動的レンジから各パーティションのサイズを導出し得る。
【０２２１】
[0167]  他の例では、各パーティションのためのピボット点ならびに各パーティションのためのスケールおよびオフセット値をシグナリングするのではなく、ビデオエンコーダ２０は、１つまたは複数またはすべてのパーティションのサイズとともに、各パーティションのための導関数またはスケール値を示す１つまたは複数のＳＥＩメッセージをシグナリングし得る。この手法は、エンコーダ２０が、各パーティションのためのローカルオフセット値をシグナリングすることを回避することを可能にし得る。代わりに、いくつかの例では、エンコーダ２０は、１つまたは複数のＳＥＩメッセージ中で、１つまたは複数のパーティションのためのパーティションサイズおよびスケール値（または導関数）をシグナリングすることが可能であり得る。（より高い正確さを必要とし得る）各パーティションまたは区分のためのローカルオフセット値は、デコーダ３０によって決定または導出され得る。
【０２２２】
[0168]  いくつかの例では、エンコーダ２０は、いくつかのパーティションのためのオフセットおよびスケール値のためのいくつかのデフォルト値を指定するモード値を示す１つまたは複数のＳＥＩメッセージをシグナリングし得る。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２２３】
[0169]  いくつかの例では、エンコーダ２０は、コンポーネントのサブセットの持続性が定義され得、コンポーネントのサブセットのコンポーネントスケール値が更新され得るように、ＳＥＩメッセージの持続性を定義する値を示す１つまたは複数のＳＥＩメッセージをシグナリングし得る。ＳＥＩメッセージの持続性は、ＳＥＩのインスタンスにおいてシグナリングされた値が適用され得るピクチャを示す。いくつかの例では、ＳＥＩメッセージの持続性は、ＳＥＩメッセージの１つのインスタンスにおいてシグナリングされた値が、ＳＥＩメッセージが適用されるピクチャのすべてのコンポーネントに対応して適用され得るように定義される。他の例では、ＳＥＩメッセージの持続性は、ＳＥＩの１つのインスタンスにおいてシグナリングされた値が、コンポーネントのサブセットに対応して適用されるように示され得るように、定義され、ここにおいて、ＳＥＩのインスタンスにおける値が適用されないコンポーネントは、適用可能な値を有しないことがあるか、または、ＳＥＩメッセージの別のインスタンスにおいてシグナリングされる適用可能な値を有し得るかのいずれかである。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２２４】
[0170]  いくつかの例では、エンコーダ２０は、復号された出力に実行されるべき後処理ステップを示すシンタックス要素を含む１つまたは複数のＳＥＩメッセージをシグナリングし得る。各シンタックス要素は、特定のプロセス（たとえばコンポーネントをスケーリングすること、色変換、アップサンプリング／ダウンサンプリングフィルタなど）に関連し得、シンタックス要素の各値は、プロセスに関連する特定のパラメータのセットが使用されることを指定し得る。いくつかの例では、プロセスに関連するパラメータは、ビットストリームの一部であるＳＥＩメッセージを使用して、または他の手段を通して送信され得るメタデータとして、ビデオエンコーダ２０によってシグナリングされる。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２２５】
[0171]  いくつかの例では、エンコーダ２０は、入力表現（すなわち、入力コンポーネント値）を出力表現（すなわち、出力コンポーネント値）にマッピングするための区分線形モデル関数を記述するおよび／またはそれを構築するために使用され得るシンタックス要素または１つまたは複数のＳＥＩメッセージをシグナリングし得る。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。他の例では、あらかじめ定義された仮定が、入力表現を出力表現にマッピングするための区分線形モデル関数を記述するおよび／または構築するために使用され得る。
【０２２６】
[0172]  いくつかの例では、エンコーダ２０は、ＳＥＩメッセージ中でシグナリングされるスケールおよびオフセットパラメータが、第２のコンポーネントの異なる値の関数として第１のコンポーネントに適用されるべきスケールの変動を表すことを示す１つまたは複数のシンタックス要素を含み得る１つまたは複数のＳＥＩメッセージをシグナリングし得る。
【０２２７】
[0173]  いくつかの例では、エンコーダ２０は、第２のコンポーネントの異なる値の関数として第１のコンポーネントに対してスケールとともに適用されるべきであるかまたは適用され得るオフセットパラメータを示す１つまたは複数のＳＥＩメッセージをシグナリングし得る。いくつかの例では、エンコーダ２０は、第２のコンポーネントの異なる値の関数として第１のコンポーネントに対してスケールとともに適用されるべきであるかまたは適用され得るオフセットパラメータを示す１つまたは複数の追加のシンタックス要素を含み得る１つまたは複数のＳＥＩメッセージをシグナリングし得る。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２２８】
[0174]  いくつかの例では、エンコーダ２０は、デコーダ側で使用される電気光学伝達関数特性が電気光学伝達関数特性の第１のセットと同様であるとき、ＳＥＩメッセージシグナリングされたスケール、オフセット、および他のダイナミックレンジ調整パラメータが適用されるように、その電気光学伝達関数特性の第１のセットを示す第１のシンタックス要素を含む１つまたは複数のＳＥＩメッセージをシグナリングし得る。
【０２２９】
[0175]  別の例では、エンコーダ２０は、電気光学伝達関数特性の第１のセットまたは同様の特性をもつものがデコーダ３０によって使用されるとき、（１つまたは複数の）ＳＥＩメッセージ中のシグナリングされたオフセット、スケールおよび他のダイナミックレンジパラメータが、ＨＤＲ出力の最良の再構成のために適用されるべきであることを示す１つまたは複数のＳＥＩメッセージをシグナリングし得る。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２３０】
[0176]  別の例では、エンコーダ２０は、対応する逆電気光学伝達関数特性がデコーダ側において適用されるとき、光電子伝達関数特性の第１のセット、およびシグナリングされたスケール、オフセットならびに他のダイナミックレンジ調整パラメータが、デコーダ３０によって適用されることを示す１つまたは複数のＳＥＩメッセージをシグナリングし得る。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２３１】
[0177]  他の例では、エンコーダ２０は、電気光学／光電子特性の異なるセットを示す２つ以上のＳＥＩメッセージが存在し、現在ピクチャ適用可能であるとき、１つのＳＥＩメッセージのみが適用されるような状況をシグナリングし得る。エンコーダは、異なるタイプのデコーダまたは異なる能力をもつデコーダを満たすために、電気光学／光電子特性の異なるセットをシグナリングし得る。たとえば、デコーダ側におけるいくつかのディスプレイは、適切な領域中のコード化コンポーネント値を線形光にコンバートするために、ＰＴ  ＥＯＴＦを適用し得るが、他のディスプレイ、たとえばレガシーディスプレイは、線形光にコンバートするためにガンマＥＯＴＦを適用し得る。エンコーダが送る特定の特性をもつ各ＳＥＩは、いくつかのタイプのディスプレイに適するかまたはそれに有益であり得、他のタイプのディスプレイに適さないかまたはそれに有益でないことがあり、たとえば、ＰＱ  ＥＯＴＦ特性をもつＳＥＩメッセージが、コーディングされたビデオを線形光にコンバートするためにＰＱ  ＥＯＴＦを適用するディスプレイに好適であり得る。デコーダ３０は、どのＳＥＩメッセージが適用されるべきであるかを決定し、適用規格に基づいて、エンドユーザデバイスに基づいて、受信される信号に基づいて、または外部手段を通して受信された別の指示に基づいてそのような選定を行う。たとえば、デコーダ３０は、現在ピクチャに適用される第１のＳＥＩメッセージ中の第１のシンタックス要素が、ＳＥＩメッセージがＰＱ  ＯＥＴＦの逆を用いて適用されるべきであることを示し、現在ピクチャに適用される第２のＳＥＩメッセージ中の第１のシンタックス要素が、ＳＥＩメッセージが（ＢＢＣ、またはＰＨなどの）別の伝達関数を用いて適用されるべきであることを示すと決定し得、デコーダ３０またはエンドユーザデバイスは、デバイスがＰＱ  ＥＯＴＦを使用するので、第１のＳＥＩメッセージ中のパラメータを適用することを選定し得る。いくつかの例では、デコーダが準拠する適用規格が、特性の特定のセットをもつＳＥＩメッセージが使用されるべきであることを指定し得る。
【０２３２】
[0178]  他の例では、エンコーダ２０は、伝達特性の複数のセットに対応するパラメータを搬送するＳＥＩメッセージをシグナリングし得る。他の例では、エンコーダ２０は、その目的で異なるＳＥＩメッセージをシグナリングし得る。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る
[0179]  いくつかの例では、エンコーダ２０は、ＳＥＩメッセージの適用可能性を示すシンタックス要素を含む１つまたは複数のＳＥＩメッセージをシグナリングし得る。ＳＥＩメッセージの適用可能性は、限定はしないが、（１）スケールおよびオフセットが適用されるコンポーネント、（２）コンポーネントスケーリングが適用される位置、ならびに／または（３）追加のスケーリングパラメータがシグナリングされるかどうかを含み得る。
【０２３３】
[0180]  説明されたように、エンコーダ２０は、スケールおよびオフセットが適用されるコンポーネントを示すシンタックス要素を含む１つまたは複数のＳＥＩメッセージをシグナリングし得る。以下は、そのような適用例のいくつかの例を記載する。たとえば、シンタックス要素の１つの値は、第１のコンポーネントインデックスのためのシグナリングされたパラメータが、ＲＧＢコンポーネントに適用されるべきであることを示し得る。別の値は、第１のコンポーネントインデックスのためのシグナリングされたパラメータが、ルーマコンポーネントに適用されるべきであり、第２のインデックスおよび第３のインデックスのためのシグナリングされたパラメータが、ＣｂおよびＣｒコンポーネントに適用されるべきであることを示し得る。別の値は、第１のコンポーネントインデックスのためのシグナリングされたパラメータが、Ｒ、ＧおよびＢコンポーネントに適用されるべきであり、第２のインデックスおよび第３のインデックスのためのシグナリングされたパラメータが、ＣｂおよびＣｒコンポーネントに適用されるべきであることを示し得る。別の値は、最初の３つのインデックスのためのシグナリングされたパラメータが、ルーマ、ＣｂおよびＣｒコンポーネントに適用され、残りのインデックスに対応するシグナリングされたパラメータが、色補正のために適用されることを示し得る。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２３４】
[0181]  また説明されたように、エンコーダ２０は、コンポーネントスケーリングが適用される位置を示すシンタックス要素を含む１つまたは複数のＳＥＩメッセージをシグナリングし得る。ビデオの復号の後に、およびビデオポストプロセッサ３１中で、デコーダ側でいくつかのプロセスが行われる。ＳＥＩに関連するプロセスが適用されるべきである位置を示すシンタックス要素のシグナリング、言い換えれば、ＳＥＩ中の情報を使用することに関連するプロセスの先行するまたは後続の動作のサブセットの指示は、ビデオを処理するために、ビデオデコーダ３０またはビデオポストプロセッサ３１にとって役立つことになる。たとえば、そのようなシンタックス要素は、たとえば、アップサンプリングの前または後にＹＣｂＣｒコンポーネントにコンポーネントスケーリングが適用される位置を示し得る。別の例では、シンタックス要素は、コンポーネントスケーリングがデコーダ側でない量子化の前に適用されることを示し得る。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２３５】
[0182]  また説明されたように、エンコーダ２０は、たとえば色補正のために、スケーリングおよびパラメータの追加のセットがシグナリングされるかどうかを示すシンタックス要素を含む１つまたは複数のＳＥＩメッセージをシグナリングし得る。パラメータの追加のセットは、特定の色域を適合させるために、色コンポーネントをマッピングするための色補正のために、または、ＶＵＩ中のｔｒａｎｓｆｅｒ＿ｃｈａｒａｃｔｅｒｉｓｔｉｃｓシンタックス要素によって示された伝達関数とは異なる伝達関数が適用されるとき、コンポーネント値の補正のために使用され得る。
【０２３６】
[0183]  他の例では、エンコーダ２０は、上記の態様を示すために、異なるシンタックス要素、たとえば、ＳＥＩがどの（１つまたは複数の）コンポーネントに適用されるかを示す１つのシンタックス要素、ＳＥＩがＳＤＲ互換コンテンツのＨＤＲ互換に適用されるかどうかを示す１つのシンタックス要素、およびコンポーネントスケーリングＳＥＩメッセージが適用されるべきである（１つまたは複数の）位置を示す１つのシンタックス要素をシグナリングし得る。
【０２３７】
[0184]  コンポーネントスケーリングＳＥＩメッセージパラメータが適用されるコンポーネントの数が２つ以上であるとき、エンコーダ２０は、スケールおよびオフセットパラメータの適用がコンポーネントのインデックスに基づいて連続的に行われ得ることを示すシンタックス要素を含む１つまたは複数のＳＥＩメッセージをシグナリングし得る。たとえば、第１のコンポーネントのスケールおよびオフセットパラメータに基づくマッピングが適用され得、次いで、たとえば、第２のコンポーネントのためにシグナリングされたスケールおよびオフセットを使用する第２のコンポーネントのマッピングが、第１のコンポーネントの値に依存し得る。いくつかの例では、これは、たとえば、第１のコンポーネントのマッピングされた値が使用されるべきであることを指定するシンタックス要素によってよって示される。ビデオデコーダ３０は、そのようなＳＥＩメッセージを受信し、情報をパースおよび／または復号し、ビデオポストプロセッサ３１にその情報を受け渡し得る。
【０２３８】
[0185]  別の例では、ビデオエンコーダ２０は、ＳＥＩ後処理が適用されない場合でも、ＨＤＲ１０受信機が閲覧可能なＨＤＲビデオを復号し、見せることができるように、１つまたは複数のＳＥＩメッセージ中で、または、ビットストリーム中でシグナリングされる値を制約し得る。（１つまたは複数の）ＳＥＩメッセージは、そうあること（たとえば、ビットストリームがＨＤＲ１０後方互換性があるビットストリームであること）を示すためのシンタックス要素を含み得る。
【０２３９】
[0186]  このセクションは、本開示の１つまたは複数の態様によって開示される技法を使用するいくつかの例を含む。
例１
[0187]  この例１では、コンポーネントスケーリング関数がルックアップテーブルとしてシグナリングされ、ルックアップテーブルを定義する点をシグナリングするために使用されるビット数もシグナリングされる。シグナリングされる明示的点を有しないサンプル値のために、値は隣接ピボット点に基づいて補間される。
【０２４０】
【表４】
2018533278.tif 000043
【０２４１】
コンポーネントスケーリングＳＥＩメッセージのセマンティクス
コンポーネントスケーリングＳＥＩメッセージは、復号ピクチャの様々なコンポーネントに対してスケーリング動作を実行するための情報を与える。スケーリング動作が実行されるべきである色空間およびコンポーネントは、ＳＥＩメッセージ中でシグナリングされるシンタックス要素の値によって決定される。
ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄは、コンポーネントスケーリングＳＥＩメッセージの目的を識別するために使用され得る識別番号を含んでいる。ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの値は、両端値を含む、０〜２32−２のレンジ中にあるものとする。ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの値は、コンポーネントスケーリングＳＥＩメッセージ色空間を指定する、または、コンポーネントスケーリングＳＥＩメッセージが線形領域中で適用されるのか、非線形領域中で適用されるのかを指定するために使用され得る。
両端値を含む、０〜２５５の、および、両端値を含む、５１２〜２31−１のｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの値は、適用によって決定されたように使用され得る。両端値を含む、２５６〜５１１の、および、両端値を含む、２31〜２32−２のｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの値は、ＩＴＵ−Ｔ｜ＩＳＯ／ＩＥＣによる将来の使用のために予約される。デコーダは、両端値を含む、２５６〜５１１のレンジ中の、または、両端値を含む、２31〜２32−２のレンジ中のｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの値を含んでいるすべてのコンポーネントスケール情報ＳＥＩメッセージを無視するものとし、ビットストリームは、そのような値を含んでいないものとする。
注１−ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄは、異なるディスプレイシナリオに好適であるコンポーネントスケーリングプロセスをサポートするために使用され得る。たとえば、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの異なる値は、スケーリングが適用される異なるディスプレイビット深度または異なる色空間に対応し得る。
代替的に、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄはまた、スケーリングがいくつかのタイプのディスプレイまたはデコーダ、たとえばＨＤＲ、ＳＤＲへの互換性のために実行されるかどうかを識別するために使用され得る。
１に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｃａｎｃｅｌ＿ｆｌａｇは、コンポーネントスケーリング情報ＳＥＩメッセージが、現在レイヤに適用される出力順序で前のコンポーネント情報ＳＥＩメッセージの持続性を消去することを示す。０に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｃａｎｃｅｌ＿ｆｌａｇは、コンポーネントスケーリング情報が続くことを示す。
ｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔｅｎｃｅ＿ｆｌａｇは、現在レイヤのためのコンポーネントスケーリング情報ＳＥＩメッセージの持続性を指定する。
０に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔｅｎｃｅ＿ｆｌａｇは、コンポーネントスケーリング情報が現在復号ピクチャのみに適用されることを指定する。
ｐｉｃＡを現在ピクチャとする。１に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔｅｎｃｅ＿ｆｌａｇは、以下の条件のいずれかが真になるまで、コンポーネントスケーリング情報が出力順序で現在レイヤのために持続することを指定する。
−  現在レイヤの新しいＣＬＶＳが開始する。
−  ビットストリームが終了する。
−  ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの同じ値をもち、現在レイヤに適用可能な、コンポーネントスケーリング情報ＳＥＩメッセージを含んでいるアクセスユニット中の現在レイヤ中のピクチャｐｉｃＢが出力され、それについて、ＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＢ）がＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＡ）よりも大きく、ここで、ＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＢ）およびＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＡ）が、それぞれ、ｐｉｃＢのためのピクチャ順序カウントのための復号プロセスの呼出しの直後のｐｉｃＢおよびｐｉｃＡのＰｉｃＯｒｄｅｒＣｎｔＶａｌ値である。
ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｃｏｍｐｓ＿ｍｉｎｕｓ１＋１は、コンポーネントスケーリング関数が指定されるコンポーネントの数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｃｏｍｐｓ＿ｍｉｎｕｓ１は、両端値を含む、０〜２のレンジ中にあるものとする。
ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｃｏｍｐｓ＿ｍｉｎｕｓ１が２よりも小さく、ｃ番目のコンポーネントのコンポーネントスケーリングパラメータがシグナリングされないとき、（ｃ−１）番目のコンポーネントのコンポーネントスケーリングパラメータに等しいと推論される。
代替的に、ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｃｏｍｐｓ＿ｍｉｎｕｓ１が２よりも小さく、ｃ番目のコンポーネントのコンポーネントスケーリングパラメータがシグナリングされないとき、ｃ番目のコンポーネントのコンポーネントスケーリングパラメータは、効果的にそのコンポーネントのスケーリングがないように、デフォルト値に等しいと推論される。
代替的に、コンポーネントスケーリングパラメータの推論は、ＳＥＩメッセージが適用される色空間に基づいて指定され得る。
−  色空間がＹＣｂＣｒであり、ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｃｏｍｐｓ＿ｍｉｎｕｓ１が１に等しいとき、コンポーネントスケーリングパラメータはＣｂコンポーネントとＣｒコンポーネントの両方に適用される。
−  色空間がＹＣｂＣｒであり、ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｃｏｍｐｓ＿ｍｉｎｕｓ１が２に等しいとき、第１および第２のコンポーネントスケーリングパラメータがＣｂおよびＣｒコンポーネントに適用される。
一代替形態では、異なる推論は、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの値に基づいてまたは明示的シンタックス要素に基づいて指定される。
代替的に、制約が以下のように加えられる。
ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｃｏｍｐｓ＿ｍｉｎｕｓ１の値が、ＣＬＶＳ内のｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの所与の値をもつすべてのコンポーネントスケーリングＳＥＩメッセージについて同じであるとすることが、ビットストリームコンフォーマンスのための制約である。
ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８＋８は、シンタックス要素ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］をシグナリングするために使用されるビット数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８の値は、両端値を含む、０〜８のレンジ中にあるものとする。
コンポーネントスケーリングＳＥＩメッセージがレンジ０．０〜１．０中の正規化された浮動小数点表現中にある入力に適用されるとき、ＳＥＩメッセージは、入力ビデオを、ｃｏｌｏｕｒ＿ｒｅｍａｐ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８＋８に等しいビット深度をもつコンバートされたビデオ表現にコンバートするために実行される量子化動作の仮想結果を指す。
コンポーネントスケーリングＳＥＩメッセージが、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８＋８に等しくないビット深度を有する入力に適用されるとき、ＳＥＩメッセージは、入力ビデオ表現を、ｃｏｌｏｕｒ＿ｒｅｍａｐ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８＋８に等しいビット深度をもつコンバートされたビデオ表現にコンバートするために実行されるトランスコーディング動作の仮想結果を指す。
ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８＋８は、シンタックス要素ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］をシグナリングするために使用されるビット数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８の値は、両端値を含む、０〜８のレンジ中にあるものとする。
コンポーネントスケーリングＳＥＩメッセージが浮動小数点表現中にある入力に適用されるとき、ＳＥＩメッセージは、コンポーネントスケーリングＳＥＩメッセージの処理の後に取得されるｃｏｌｏｕｒ＿ｒｅｍａｐ＿ｏｕｔｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８＋８に等しいビット深度をもつビデオ表現をレンジ０．０〜１．０中の浮動小数点表現にコンバートするために実行される逆量子化動作の仮想結果を指す。
代替的に、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］およびｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］をシグナリングするために使用されるビット数は、それぞれ、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈおよびｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈとして、または言い換えると、８を減算することなしにシグナリングされる。
ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］＋１は、コンポーネントスケーリング関数を定義するために使用されるピボット点の数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］は、両端値を含む、０〜（１＜＜Ｍｉｎ（ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８＋８，ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８＋８））−１のレンジ中にあるものとする。
ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］は、入力ピクチャのｃ番目のコンポーネントのｉ番目のピボット点を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］の値は、両端値を含む、０〜（１＜＜ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８［ｃ］＋８）−１のレンジ中にあるものとする。ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］の値は、両端値を含む、１〜ｃｏｍｐ＿ｓｃａｌｅ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］のレンジ中のｉの場合、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ−1]  の値よりも大きいかまたはそれに等しくなるものとする。
ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］は、出力ピクチャのｃ番目のコンポーネントのｉ番目のピボット点を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］の値は、両端値を含む、１〜（１＜＜ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８［ｃ］＋８）−１のレンジ中にあるものとする。ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］の値は、両端値を含む、１〜ｃｏｍｐ＿ｓｃａｌｅ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］のレンジ中のｉの場合、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ−1]  の値よりも大きいかまたはそれに等しくなるものとする。
入力および出力の両方のためのサンプル値が、それぞれ、両端値を含む、０〜（１＜＜ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８［ｃ］＋８）−１、および、両端値を含む、０〜（１＜＜ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ＿ｍｉｎｕｓ８［ｃ］＋８）−１のレンジ中にある、入力信号表現ｘおよび出力信号表現ｙをマッピングするプロセスは、以下のように指定される。
【０２４２】
【数３８】
2018533278.tif 000044
【０２４３】
[0188]  一代替形態では、入力ピボット点ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］および出力ピボット点ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］は、隣接する値の差分、たとえば、ｄｅｌｔａ＿ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｐｏｉｎｔ［］［］およびｄｅｌｔａ＿ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｐｏｉｎｔ［］［］としてコーディングされ、シンタックス要素は、指数ゴロムコードを使用してコーディングされる。
別の代替形態では、入力および出力表現値をマッピングするプロセスは、限定はしないが、スプラインおよび３次補間を含む他の補間方法によって指定される。
【０２４４】
例２
[0189]  この例２は、例１で説明されたＳＥＩシンタックス構造と比較して異なるシンタックス構造を示す。このシンタックス構造では、マッピング関数は、ピボット点の代わりにスケールおよびオフセットに関して説明される。
【０２４５】
【表５】
2018533278.tif 000045
【０２４６】
ｃｏｍｐ＿ｓｃａｌｅ＿ｂｉｔ＿ｄｅｐｔｈ＿ｓｃａｌｅ＿ｖａｌは、シンタックス要素ｃｏｍｐ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］をシグナリングするために使用されるビット数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｂｉｔ＿ｄｅｐｔｈ＿ｓｃａｌｅ＿ｖａｌの値は、両端値を含む、０〜２４のレンジ中にあるものとする。
ｃｏｍｐ＿ｓｃａｌｅ＿ｌｏｇ２＿ｄｅｎｏｍ＿ｓｃａｌｅ＿ｖａｌは、スケール値の底２の分母を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｌｏｇ２＿ｄｅｎｏｍ＿ｓｃａｌｅ＿ｖａｌの値は、両端値を含む、０〜１６のレンジ中にあるものとする。
ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｉｎｐｕｔ＿ｖａｌ［ｃ］＋１は、コンポーネントスケーリング関数を定義するために使用される、それを下回るすべての入力表現値がＣｏｍｐＳｃａｌｅＯｆｆｓｅｔＯｕｔｐｕｔＶａｌ［ｃ］〔０〕にクリッピングされる入力サンプル値を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］は、両端値を含む、０〜（１＜＜ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ）−１のレンジ中にあるものとする。ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｉｎｐｕｔ＿ｖａｌ［ｃ］を表すために使用されるビット数は、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈである。
ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｏｕｔｐｕｔ＿ｖａｌ［ｃ］＋１は、ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｉｎｐｕｔ＿ｖａｌ［ｃ］を下回るすべての入力表現値がクリッピングされるべきである出力サンプル値を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］は、両端値を含む、０〜（１＜＜ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ）−１のレンジ中にあるものとする。ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｏｕｔｐｕｔ＿ｖａｌ［ｃ］を表すために使用されるビット数は、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈである。
ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］＋１は、コンポーネントスケーリング関数を定義するために使用されるピボット点の数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］は、両端値を含む、０〜（１＜＜Ｍｉｎ（ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ，ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ）−１のレンジ中にあるものとする。
両方のためのサンプル値、入力表現が、両端値を含む、０〜（１＜＜ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ）−１のレンジ中にあり、出力表現が、両端値を含む、０〜（１＜＜ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ）−１のレンジ中にある入力信号表現ｘおよび出力信号表現ｙをマッピングするプロセスは、以下のように指定される。
【０２４７】
【数３９】
2018533278.tif 000046
【０２４８】
ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］は、ｃ番目のコンポーネントのｉ番目のサンプル値領域のオフセット値を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］を表すために使用されるビット数は、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈに等しい。
ｃｏｍｐ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］は、ｃ番目のコンポーネントのｉ番目のサンプル値領域点のスケール値を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｖａｌ［ｃ］を表すために使用されるビット数は、ｃｏｍｐ＿ｓｃａｌｅ＿ｂｉｔ＿ｄｅｐｔｈ＿ｓｃａｌｅ＿ｖａｌに等しい。
両端値を含む、０〜ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］のレンジ中のｉの場合の変数ＣｏｍｐＳｃａｌｅＯｆｆｓｅｔＯｕｔｐｕｔＶａｌ［ｃ］［ｉ］およびＣｏｍｐＳｃａｌｅＯｆｆｓｅｔＩｎｐｕｔＶａｌ［ｃ］［ｉ］は、以下のように導出される。
【０２４９】
【数４０】
2018533278.tif 000047
【０２５０】
一代替形態では、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］が、以下のように、０〜ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］のレンジ中のｉの場合の、ＣｏｍｐＳｃａｌｅＯｆｆｓｅｔＯｕｔｐｕｔＶａｌ［］［ｉ］を直接計算するために、およびＣｏｍｐＳｃａｌｅＯｆｆｓｅｔＩｎｐｕｔＶａｌ［］［ｉ］を間接的に計算するために使用される。
【０２５１】
【数４１】
2018533278.tif 000048
【０２５２】
一代替形態では、両端値を含む、０〜ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］のレンジ中のｉの場合のｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］はシグナリングされず、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］の値は、スケールが指定される、ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］の等間隔に離間した間隔に基づいて導出される。両端値を含む、０〜ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］−１のレンジ中のｉの場合のｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］の値は、以下のように導出される。
【０２５３】
【数４２】
2018533278.tif 000049
【０２５４】
別の代替形態では、０〜ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］のレンジ中のｉの場合のｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］は、以下のように計算される。
【０２５５】
【数４３】
2018533278.tif 000050
【０２５６】
一代替形態では、ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ＿ｍｉｎｕｓ１［ｃ］をシグナリングする代わりに、ピボット点の数が、ｌｏｇ２＿ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ［ｃ］を使用してシグナリングされ、ここで、（１＜＜ｌｏｇ２＿ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｐｏｉｎｔｓ［ｃ］）は、ｃ番目のコンポーネントのためのピボット点の数を指定する。
代替的に、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［］およびｃｏｍｐ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［］の各々は、浮動小数点数として、または指数および仮数をもつ２つのシンタックス要素としてシグナリングされる。
別の代替形態では、ｃｏｍｐ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］のシグナリングは、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｕｔｐｕｔ＿ｐｏｉｎｔ［ｃ］［ｉ］によって置き換えられる。
シンタックス要素の残りのセマンティクスは、例１で説明されたものと同様である。
例３
[0190]  例３で説明されるこの方法は、コンポーネントスケーリング関数が独立して更新されることを可能にされることを除いて、例２で説明された代替形態の方法と同様である。
【０２５７】
【表６】
2018533278.tif 000051
【０２５８】
コンポーネントスケーリングＳＥＩメッセージのセマンティクス
以下のシンタックス要素を除いて、セマンティクスは例２と同様である。
ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｓｃａｌｅ＿ｒｅｇｉｏｎｓ［ｃ］は、シンタックス要素ｃｏｍｐ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］がｃのコンポーネントのためにシグナリングされる領域の数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｓｃａｌｅ＿ｒｅｇｉｏｎｓ［ｃ］は、両端値を含む、０〜（１＜＜ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈ）−１のレンジ中にあるものとする。
０に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔ＿ｃｏｍｐｏｎｅｎｔ＿ｆｌａｇ［ｃ］は、ｃ番目のコンポーネントのためのコンポーネントスケーリングパラメータが、ＳＥＩメッセージ中で明示的にシグナリングされることを指定する。１に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔ＿ｃｏｍｐｏｎｅｎｔ＿ｆｌａｇ［ｃ］は、ｃ番目のコンポーネントのためのコンポーネントスケーリングパラメータが、ＳＥＩメッセージ中で明示的にシグナリングされず、それが、出力順序で、前のピクチャに適用されるコンポーネントスケーリングＳＥＩメッセージのｃ番目のコンポーネントのコンポーネントスケーリングパラメータから持続することを指定する。
コンポーネントスケーリングＳＥＩメッセージがＩＲＡＰアクセスユニット中に存在するとき、ｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔ＿ｃｏｍｐｏｎｅｎｔ＿ｆｌａｇ［ｃ］の値は、存在するとき、０に等しいものとすることが、ビットストリームコンフォーマンスの要件である。
代替的に、以下の条件が加えられる。
コンポーネントスケーリングＳＥＩメッセージが、ＩＲＡＰアクセスユニットでないアクセスユニット中に存在し、ｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔ＿ｃｏｍｐｏｎｅｎｔ＿ｆｌａｇ［ｃ］が１に等しいとき、両端値を含む、出力順序で現在ピクチャに先行し、復号順序で前のＩＲＡＰピクチャに出力順序で続く、少なくとも１つのピクチャがあり、その結果、その１つのピクチャが、１に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔｅｎｃｅ＿ｆｌａｇをもつコンポーネントスケーリングＳＥＩメッセージに関連することが、ビットストリームコンフォーマンスの要件である。
ｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔｅｎｃｅ＿ｆｌａｇは、現在レイヤのためのコンポーネントスケーリング情報ＳＥＩメッセージの持続性を指定する。
０に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔｅｎｃｅ＿ｆｌａｇは、コンポーネントスケーリング情報が現在復号ピクチャのみに適用されることを指定する。
ｐｉｃＡを現在ピクチャとする１に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔｅｎｃｅ＿ｆｌａｇは、以下の条件のいずれかが真になるまで、ｃ番目のコンポーネントのコンポーネントスケーリング情報が出力順序で現在レイヤのために持続することを指定する。
−  現在レイヤの新しいＣＬＶＳが開始する。
−  ビットストリームが終了する。
−  ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの同じ値および０に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔ＿ｃｏｍｐｏｎｅｎｔ＿ｆｌａｇ［ｃ］をもち、現在レイヤに適用可能な、コンポーネントスケーリング情報ＳＥＩメッセージを含んでいるアクセスユニット中の現在レイヤ中のピクチャｐｉｃＢが出力され、それについて、ＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＢ）がＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＡ）よりも大きく、ここで、ＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＢ）およびＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＡ）が、それぞれ、ｐｉｃＢのためのピクチャ順序カウントのための復号プロセスの呼出しの直後のｐｉｃＢおよびｐｉｃＡのＰｉｃＯｒｄｅｒＣｎｔＶａｌ値である。
例４
[0191]  この例４では、スケール領域をシグナリングするための異なる方法が開示される。
【０２５９】
【表７】
2018533278.tif 000052
【０２６０】
コンポーネントスケーリングＳＥＩメッセージセマンティクスの変更
シンタックス要素のセマンティクスは、以下を除いて、前の例で説明されたものと同様である。
ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｂｅｇｉｎ＿ｖａｌ［ｃ］［ｉ］は、スケール値ｃｏｍｐ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］が適用可能であるサンプル値レンジの開始を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｂｅｇｉｎ＿ｖａｌ［ｃ］を表すために使用されるビット数は、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈに等しい。
ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｅｎｄ＿ｖａｌ［ｃ］［ｉ］は、スケール値ｃｏｍｐ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］が適用可能である例示的な値レンジの終了を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｅｎｄ＿ｖａｌ［ｃ］を表すために使用されるビット数は、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈに等しい。
ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｂｅｇｉｎ＿ｖａｌおよびｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｅｎｄ＿ｖａｌによって明示的に指定されない領域のために、それらの領域のためのｃｏｍｐ＿ｓｃａｌｅ＿ｖａｌｕｅ［ｃ］［ｉ］は、０に等しいと推論される。
【０２６１】
[0192]  代替的に、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｅｎｄ＿ｖａｌ［ｃ］［ｉ］はシグナリングされず、代わりに、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｅｎｄ＿ｖａｌ［ｃ］［ｉ］とｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｂｅｇｉｎ＿ｖａｌ［ｃ］［ｉ］との間の差分がシグナリングされ、デコーダ側において導出されたｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｅｎｄ＿ｖａｌ［ｃ］［ｉ］の値。
【０２６２】
[0193]  別の代替形態では、出力サンプルレンジがそれにスプリットされる領域の総数が指定され、スケール領域がそれのために明示的にシグナリングされる領域の数がシグナリングされる。
【０２６３】
【表８】
2018533278.tif 000053
【０２６４】
ｃｏｍｐ＿ｓｃａｌｅ＿ｔｏｔ＿ｓｃａｌｅ＿ｒｅｇｉｏｎｓ［ｃ］は、サンプル値がそれにスプリットされる等長サンプル値レンジの総数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｔｏｔ＿ｓｃａｌｅ＿ｒｅｇｉｏｎｓ［ｃ］を表すために使用されるビット数は、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｎｐｕｔ＿ｂｉｔ＿ｄｅｐｔｈに等しい。
一代替形態では、ｃｏｍｐ＿ｓｃａｌｅ＿ｔｏｔ＿ｓｃａｌｅ＿ｒｅｇｉｏｎｓ［ｃ］サンプル値レンジは、長さが正確に等しくないことがあるが、領域長さの整数正確さを説明することに極めてほぼ等しい。
ｃｏｍｐ＿ｓｃａｌｅ＿ｒｅｇｉｏｎ＿ｉｄｘ［ｃ］［ｉ］は、スケール値ｃｏｍｐ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］が適用されるサンプル値レンジのインデックスを指定する。シンタックス要素ｃｏｍｐ＿ｓｃａｌｅ＿ｒｅｇｉｏｎ＿ｉｄｘ［ｃ］の長さは、Ｃｅｉｌ（Ｌｏｇ２（ｃｏｍｐ＿ｓｃａｌｅ＿ｔｏｔ＿ｓｃａｌｅ＿ｒｅｇｉｏｎｓ［ｃ］））ビットである。
代替形態
代替的に、クロマ中間の周りの領域（１０ビットデータの場合５１１）は、より小さいサイズ、ｐ．ｅ．他の領域の半分のサイズを有する。
例５
【０２６５】
【表９】
2018533278.tif 000054
【０２６６】
コンポーネントスケールＳＥＩメッセージのセマンティクス
コンポーネントスケーリングＳＥＩメッセージは、復号ピクチャの様々なコンポーネントに対してスケーリング動作を実行するための情報を与える。スケーリング動作が実行されるべきである色空間およびコンポーネントは、ＳＥＩメッセージ中でシグナリングされるシンタックス要素の値によって決定される。
ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄは、コンポーネントスケーリングＳＥＩメッセージの目的を識別するために使用され得る識別番号を含んでいる。ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの値は、両端値を含む、０〜２32−２のレンジ中にあるものとする。ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの値は、コンポーネントスケーリングＳＥＩメッセージ色空間を指定する、または、コンポーネントスケーリングＳＥＩメッセージが線形領域中で適用されるのか、非線形領域中で適用されるのかを指定するために使用され得る。
いくつかの例では、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄは、ＨＤＲ再構成プロセスの構成を指定することができる。いくつかの例では、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの特定の値は、３つのコンポーネントのためのスケーリングパラメータのシグナリングに関連し得る。Ｒ’，Ｇ’，Ｂ’色空間のサンプルに適用されるべき第１のコンポーネントのスケーリング、後続の２つのコンポーネントのパラメータは、ＣｒおよびＣｂのスケーリングのために適用される。
また別のｃｏｍｐ＿ｓｃａｌｅ＿ｉｄ値の場合、ｈｄｒ再構成プロセスは、３つのコンポーネントのためのパラメータを利用することができ、スケーリングは、ルーマ、ＣｒおよびＣｂ色コンポーネントのサンプルに適用される。
また別のｃｏｍｐ＿ｓｃａｌｅ＿ｉｄ値では、ｈｄｒ再構成プロセスは、４つのコンポーネントのためのシグナリングを利用することができ、ルーマ、ＣｒおよびＣｂスケーリングに適用されるべき４つのコンポーネントのうちの３つ、ならびに色補正のパラメータをもたらすための第４のコンポーネント。
いくつかの例では、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄ値のいくつかのレンジは、ＳＤＲ後方互換がある構成において行われるＨＤＲ再構成に関連し得るが、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄ値の別のレンジは、後方互換性がない構成に行われるＨＤＲ再構成に関連し得る。
両端値を含む、０〜２５５の、および、両端値を含む、５１２〜２31−１のｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの値は、適用によって決定されたように使用され得る。両端値を含む、２５６〜５１１の、および、両端値を含む、２31〜２32−２のｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの値は、ＩＴＵ−Ｔ｜ＩＳＯ／ＩＥＣによる将来の使用のために予約される。デコーダは、両端値を含む、２５６〜５１１のレンジ中の、または、両端値を含む、２31〜２32−２のレンジ中のｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの値を含んでいるすべてのコンポーネントスケール情報ＳＥＩメッセージを無視するものとし、ビットストリームは、そのような値を含んでいないものとする。
注１−ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄは、異なるディスプレイシナリオに好適であるコンポーネントスケーリングプロセスをサポートするために使用され得る。たとえば、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの異なる値は、スケーリングが適用される異なるディスプレイビット深度または異なる色空間に対応し得る。
代替的に、ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄはまた、スケーリングがいくつかのタイプのディスプレイまたはデコーダ、たとえばＨＤＲ、ＳＤＲへの互換性のために実行されるかどうかを識別するために使用され得る。
１に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｃａｎｃｅｌ＿ｆｌａｇは、コンポーネントスケーリング情報ＳＥＩメッセージが、現在レイヤに適用される出力順序で前のコンポーネント情報ＳＥＩメッセージの持続性を消去することを示す。０に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｃａｎｃｅｌ＿ｆｌａｇは、コンポーネントスケーリング情報が続くことを示す。
ｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔｅｎｃｅ＿ｆｌａｇは、現在レイヤのためのコンポーネントスケーリング情報ＳＥＩメッセージの持続性を指定する。
０に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔｅｎｃｅ＿ｆｌａｇは、コンポーネントスケーリング情報が現在復号ピクチャのみに適用されることを指定する。
ｐｉｃＡを現在ピクチャとする。１に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｐｅｒｓｉｓｔｅｎｃｅ＿ｆｌａｇは、以下の条件のいずれかが真になるまで、コンポーネントスケーリング情報が出力順序で現在レイヤのために持続することを指定する。
−  現在レイヤの新しいＣＬＶＳが開始する。
−  ビットストリームが終了する。
−  ｃｏｍｐ＿ｓｃａｌｅ＿ｉｄの同じ値をもち、現在レイヤに適用可能な、コンポーネントスケーリング情報ＳＥＩメッセージを含んでいるアクセスユニット中の現在レイヤ中のピクチャｐｉｃＢが出力され、それについて、ＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＢ）がＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＡ）よりも大きく、ここで、ＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＢ）およびＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＡ）が、それぞれ、ｐｉｃＢのためのピクチャ順序カウントのための復号プロセスの呼出しの直後のｐｉｃＢおよびｐｉｃＡのＰｉｃＯｒｄｅｒＣｎｔＶａｌ値である。
ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｂｉｔ＿ｄｅｐｔｈは、シンタックス要素ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］をシグナリングするために使用されるビット数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｂｉｔ＿ｄｅｐｔｈの値は、両端値を含む、０〜１５のレンジ中にあるものとする。
ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｂｉｔ＿ｄｅｐｔｈは、シンタックス要素ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］およびｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］をシグナリングするために使用されるビット数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｂｉｔ＿ｄｅｐｔｈの値は、両端値を含む、０〜１５のレンジ中にあるものとする。
ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｆｒａｃ＿ｂｉｔ＿ｄｅｐｔｈは、ｃ番目のコンポーネントのｉ番目のパーティションのスケールパラメータの小数部分を示すために使用されるＬＳＢの数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｆｒａｃ＿ｂｉｔ＿ｄｅｐｔｈの値は、両端値を含む、０〜１５のレンジ中にあるものとする。ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｆｒａｃ＿ｂｉｔ＿ｄｅｐｔｈの値は、ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｂｉｔ＿ｄｅｐｔｈの値よりも小さいかまたはそれに等しいものとする。
ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｆｒａｃ＿ｂｉｔ＿ｄｅｐｔｈは、ｃ番目のコンポーネントのｉ番目のパーティションのオフセットパラメータおよびｃ番目のコンポーネントのグローバルオフセットの小数部分を示すために使用されるＬＳＢの数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｆｒａｃ＿ｂｉｔ＿ｄｅｐｔｈの値は、両端値を含む、０〜１５のレンジ中にあるものとする。ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｆｒａｃ＿ｂｉｔ＿ｄｅｐｔｈの値は、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｂｉｔ＿ｄｅｐｔｈの値よりも小さいかまたはそれに等しいものとする。
ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｃｏｍｐｓ＿ｍｉｎｕｓ１＋１は、コンポーネントスケーリング関数が指定されるコンポーネントの数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｃｏｍｐｓ＿ｍｉｎｕｓ１は、両端値を含む、０〜２のレンジ中にあるものとする。
ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］は、出力サンプルレンジがそれに区分されるレンジの数を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］の値は、両端値を含む、０〜６３のレンジ中にあるものとする。。
１に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｅｑｕａｌ＿ｒａｎｇｅｓ＿ｆｌａｇ［ｃ］は、その出力サンプルレンジが、ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］のほぼ等しいパーティションに区分されることを示し、パーティション幅は明示的にシグナリングされない。０に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｅｑｕａｌ＿ｒａｎｇｅｓ＿ｆｌａｇ［ｃ］は、出力サンプルレンジが、それのすべてが同じサイズのものであるとは限らないｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］パーティションに区分され得ることを示し、パーティション幅は明示的にシグナリングされる。
ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］は、ｃ番目のコンポーネントのための有効な入力データレンジの最も小さい値をマッピングするために使用されるオフセット値を導出するために使用される。ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］の長さは、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｂｉｔ＿ｄｅｐｔｈビットである。
ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］は、ｃ番目のコンポーネントのｉ番目のパーティションのその幅を導出するために使用されるオフセット値を導出するために使用される。ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］の長さは、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｂｉｔ＿ｄｅｐｔｈビットである。
変数ＣｏｍｐＳｃａｌｅＳｃａｌｅＶａｌ［ｃ］［ｉ］は以下のように導出される。
【０２６７】
【数４４】
2018533278.tif 000055
【０２６８】
ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］は、ｃ番目のコンポーネントのｉ番目のパーティションのその幅を導出するために使用されるオフセット値を導出するために使用される。ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］の長さは、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｂｉｔ＿ｄｅｐｔｈビットである。ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］がシグナリングされるとき、ＣｏｍｐＳｃａｌｅＯｆｆｓｅｔＶａｌ［ｃ］［ｉ］の値は以下のように導出される。
【０２６９】
【数４５】
2018533278.tif 000056
【０２７０】
代替的に、変数ＣｏｍｐＳｃａｌｅＳｃａｌｅＶａｌ［ｃ］［ｉ］およびＣｏｍｐＳｃａｌｅＯｆｆｓｅｔＶａｌ［ｃ］［ｉ］は、以下のように導出される。
【０２７１】
【数４６】
2018533278.tif 000057
【０２７２】
ｃｏｍｐ＿ｓｃａｌｅ＿ｅｑｕａｌ＿ｒａｎｇｅｓ＿ｆｌａｇ［ｃ］が１に等しいとき、ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］はシグナリングされず、ＣｏｍｐＳｃａｌｅＯｆｆｓｅｔＶａｌ［ｃ］［ｉ］の値は以下のように導出される。
【０２７３】
【数４７】
2018533278.tif 000058
【０２７４】
０〜ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］のレンジ中のｉの場合の変数ＣｏｍｐＳｃａｌｅＯｕｔｐｕｔＲａｎｇｅｓ［ｃ］［ｉ］およびＣｏｍｐＳｃａｌｅＯｕｔｐｕｔＲａｎｇｅｓ［ｃ］［ｉ］は、以下のように導出される。
【０２７５】
【数４８】
2018533278.tif 000059
【０２７６】
一代替形態では、ＣｏｍｐＳｃａｌｅＯｕｔｐｕｔＲａｎｇｅｓ［］［］およびＣｏｍｐＳｃａｌｅＯｕｔｐｕｔＲａｎｇｅｓ［］［］の値は、以下のように導出される。
【０２７７】
【数４９】
2018533278.tif 000060
【０２７８】
両方のためのサンプル値、入力表現が、０〜１のレンジ中に正規化され、出力表現が、および０〜１のレンジ中にある、（整数点ならびに浮動小数点の両方をカバーするために使用され得る）入力信号表現ｘおよび出力信号表現ｙをマッピングするプロセスは、以下のように指定される。
【０２７９】
【数５０】
2018533278.tif 000061
【０２８０】
一代替形態では、ＣｏｍｐＳｃａｌｅＯｕｔｐｕｔＲａｎｇｅｓ［ｃ］〔０〕の値は、許容サンプル値レンジに基づいて設定される。代替的に、入力値ｖａｌＩｎを出力値ｖａｌＯｕｔにマッピングするプロセスは、以下のように定義される。
【０２８１】
【数５１】
2018533278.tif 000062
【０２８２】
一代替形態では、ｍ＿ｏｆｆｓｅｔ２は、ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］÷（１＜＜ｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｆｒａｃ＿ｂｉｔ＿ｄｅｐｔｈ）に等しく、ｍ＿ｐＡｔｆＳｃａｌｅ［ｃ］［ｉ］は、ＣｏｍｐＳｃａｌｅＳｃａｌｅＶａｌ［ｃ］［ｉ］に等しく、ｍ＿ｐＡｔｆＤｅｌｔａ［ｉ］は、ｃ番目のコンポーネントのためのＣｏｍｐＳｃａｌｅＯｆｆｓｅｔＶａｌ［ｃ］［ｉ］に等しく、ｐＳｃａｌｅおよびｐＯｆｆｓｅｔは、ｍ＿ＡｔｆＳｃａｌｅおよびｍ＿ｐＡｔｆＤｅｌｔａから導出されたスケールおよびオフセットパラメータである。逆演算はそれに応じて定義されることになる。
例６
いくつかの例では、たとえば例５における、上記で説明されたシグナリング方法のうちのいくつかは、後続の擬似コードに示されているように利用され得る。
ｍ＿ａｔｆＮｕｍｂｅｒＲａｎｇｅｓは、マッピングされたデータのためのダイナミックレンジ区分の数を指定する、所与のｃのためのシンタックス要素ｃｏｍｐ＿ｓｃａｌｅ＿ｎｕｍ＿ｒａｎｇｅｓ［ｃ］のための項である。
ｍ＿ｐＡｔｆＲａｎｇｅＩｎは、ＣｏｍｐＳｃａｌｅＩｎｐｕｔＲａｎｇｅｓのための項であり、２つの連結されたパーティション、たとえば、ｉおよびｉ＋１間の境界を指定する入力サンプル値を含むｍ＿ａｔｆＮｕｍｂｅｒＲａｎｇｅｓ＋１のアレイサイズである。
ｍ＿ｐＡｔｆＲａｎｇｅＯｕｔは、ＣｏｍｐＳｃａｌｅＯｕｔｐｕｔＲａｎｇｅｓのための項であり、２つの連結されたパーティション、たとえばｉおよびｉ＋１間の境界を指定する出力サンプル値を含むｍ＿ａｔｆＮｕｍｂｅｒＲａｎｇｅｓ＋１のアレイサイズである。
ｍ＿ｐＡｔｆＳｃａｌｅ２は、変数ＣｏｍｐＳｃａｌｅＳｃａｌｅＶａｌ［ｃ］のための項であり、各パーティションのためのスケール値を含むｍ＿ａｔｆＮｕｍｂｅｒＲａｎｇｅｓのアレイサイズである。
ｍ＿ｐＡｔｆＯｆｆｓｅｔ２は、各パーティションのためのオフセット値を含むｍ＿ａｔｆＮｕｍｂｅｒＲａｎｇｅｓのアレイアレイサイズである。
ｍ＿ｏｆｆｓｅｔ２は、ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｖａｌのための項である。
この例では、区分線形モデルのパラメータは、アルゴリズム１の場合のように決定された形態シンタックス要素であり得る。
アルゴリズム１：
【０２８３】
【数５２】
2018533278.tif 000063
【０２８４】
決定されると、区分線形モデルは、アルゴリズム２の場合のように出力サンプル値ｏｕｔＶａｌｕｅを決定するために、入力サンプル値ｉｎＶａｌｕｅに適用され得る。
アルゴリズム２：
【０２８５】
【数５３】
2018533278.tif 000064
【０２８６】
アルゴリズム３の場合のように行われるべき逆プロセス。
アルゴリズム３：
【０２８７】
【数５４】
2018533278.tif 000065
【０２８８】
[0194]  いくつかの例では、２つの連結されたパーティションｉおよびｉ＋１間の境界サンプル値（ｍ＿ｐＡｔｆＲａｎｇｅＩｎまたはｍ＿ｐＡｔｆＲａｎｇｅＯｕｔのエントリ）は、アルゴリズム２およびアルゴリズム３に示されているように、ｉパーティションに属する代わりに、ｉ＋１に属するとして、別様に解釈され得る。
【０２８９】
[0195]  いくつかの例では、アルゴリズム３に示されている逆プロセスは、ｍ＿ｐＡｔｆＳｃａｌｅ２［ｊ］による除算の代わりに、ｍ＿ｐＡｔｆＩｎｖｅｒｓｅＳｃａｌｅ２値による乗算を用いて実装され得る。そのような例では、ｍ＿ｐＡｔｆＳｃａｌｅ２［ｊ］の値は、事前にｍ＿ｐＡｔｆＳｃａｌｅ２［ｊ］から決定される。
【０２９０】
[0196]  いくつかの例では、ｍ＿ｐＡｔｆＩｎｖｅｒｓｅＳｃａｌｅ２［ｊ］は、１／ｍ＿ｐＡｔｆＳｃａｌｅ２［ｊ］としてデコーダ側において決定される。
【０２９１】
[0197]  いくつかの例では、ｍ＿ｐＡｔｆＩｎｖｅｒｓｅＳｃａｌｅ２［ｊ］は、エンコーダ側において算出され、ビットストリームを通してシグナリングされ得る。そのような例では、アルゴリズム１、２および３において与えられた動作は、それに応じて調整される。
【０２９２】
[0198]  様々な例
[0199]  いくつかの例では、提案されたシグナリング機構は、たとえばビデオコーディングシステムの圧縮効率を改善するために、入力信号のサンプルのための動的レンジ調整を可能にするために利用され得る区分関数をモデル化するために使用され得る。
【０２９３】
[0200]  いくつかの例では、提案されたシグナリング機構は、ＯＥＴＦによって、たとえば、ＳＴ．２０８４のＰＱ  ＴＦ、または他のものによって生成されたコードワード（Ｒ、Ｇ、Ｂサンプルの非線形表現）に適用され得る区分関数をモデル化するために使用され得る。
【０２９４】
[0201]  いくつかの例では、提案されたシグナリング機構は、ＹＣｂＣｒ色表現のサンプルに適用され得る区分関数をモデル化するために使用され得る。
【０２９５】
[0202]  いくつかの例では、提案されたシグナリング機構は、ＳＤＲ互換性をもつＨＤＲ／ＷＣＧソリューションに利用され得る区分関数をモデル化するために使用され得る。
【０２９６】
[0203]  いくつかの例では、提案されたシグナリング機構は、浮動小数点表現中のサンプルに適用され得る区分関数をモデル化するために使用され得る。また別の例では、提案されたシグナリング機構および得られた関数は、整数表現、たとえば１０ビットにおけるサンプルに適用され得る。
【０２９７】
[0204]  いくつかの例では、提案されたシグナリング機構は、ルックアップテーブルの形態でサンプルに適用され得る区分関数をモデル化するために使用され得る。また別の例では、提案されたシグナリングは、乗算器の形態でサンプルに適用され得る関数をモデル化するために使用され得る。
組合せおよび拡張
[0205]  上記の例では、線形モデルは、各領域（すなわち、スケール＋オフセット）のために仮定され、本開示の技法はまた、たとえば、２つの代わりに３つのパラメータを必要とする二次の多項式をもつ、より高次の多項式モデルのために適用可能であり得る。シグナリングおよびシンタックスは、このシナリオのために適切に拡張されることになる。
【０２９８】
[0206]  上記で説明された態様の組合せおよび本開示の技法の一部が可能である。
【０２９９】
[0207]  ツールボックス組合せ：本開示で説明されるＳＥＩの目標とやや同様の目標をターゲットにすることがあるいくつかのＨＤＲ方法がある。ＨＤＲ方法のうちの２つ以上を適応するが、同時に、フレームごとに適用可能なＳＥＩ処理の数を限定するために、単一のＳＥＩ中にこれらの方法（のうちの１つまたは複数）を組み合わせることが提案される。提案されたシンタックス要素は、各インスタンスにおいて適用されるための特定の方法を示すことになる。たとえば、２つの可能な方法がＳＥＩにある場合、シンタックス要素は使用されるべき１つを示すフラグであることになる。
例７
[0208]  この例では、スケールパラメータのシグナリングは、負スケールが送信され得るように変更され、シグナリングされたスケールパラメータは、様々なコンポーネントの異なるレンジのために適用されるべきスケールの変数を示す。例５に関する変更は以下である。
【０３００】
【表１０】
2018533278.tif 000066
【０３０１】
ＳＥＩメッセージのセマンティクスの変更
１に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｎｅｇａｔｉｖｅ＿ｓｃａｌｅｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］から導出されたスケールパラメータの整数部分が符号付き整数として表されることを指定する。０に等しいｃｏｍｐ＿ｓｃａｌｅ＿ｎｅｇａｔｉｖｅ＿ｓｃａｌｅｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］から導出された整数部分スケールパラメータが符号なし整数として表されることを指定する。
【０３０２】
[0209]  一代替形態では、オフセットパラメータの別のセットは、第２のコンポーネントの値の関数として第１のコンポーネントに対してスケールとともに適用されるオフセットを定義するために使用されるｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｖａｌとともにシグナリングされる。
【０３０３】
[0210]  符号付き整数表現は、限定はしないが、２の補数表記法および符号付き絶対値表現（符号のための１ビットおよび整数部分中の残りのビット）を含む。下記の導出は、符号付き絶対値表現のために与えられる。導出は、符号付き表現の他の形態のために同様に定義され得る。
変数ＣｏｍｐＳｃａｌｅＳｃａｌｅＶａｌ［ｃ］［ｉ］は以下のように導出される。
【０３０４】
【数５５】
2018533278.tif 000067
【０３０５】
ｃｏｍｐ＿ｓｃａｌｅ＿ｎｅｇａｔｉｖｅ＿ｓｃａｌｅ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１に等しいとき、ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｂｉｔ＿ｄｅｐｔｈの値が、ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｆｒａｃ＿ｂｉｔ＿ｄｅｐｔｈよりも大きいかまたはそれに等しいものとすることが、ビットストリームコンフォーマンスの要件である
ｃｏｍｐ＿ｓｃａｌｅ＿ｄｅｐｅｎｄｅｎｔ＿ｃｏｍｐｏｎｅｎｔ＿ｉｄは、ビデオの様々なコンポーネントへのスケールおよびオフセットパラメータの適用を指定する。ｃｏｍｐ＿ｓｃａｌｅ＿ｄｅｐｅｎｄｅｎｔ＿ｃｏｍｐｏｎｅｎｔ＿ｉｄが０に等しいとき、シンタックス要素ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］、ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］およびｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］は、ｃ番目のコンポーネントの入力および出力値のマッピングを識別するために使用される。ｃｏｍｐ＿ｓｃａｌｅ＿ｄｅｐｅｎｄｅｎｔ＿ｃｏｍｐｏｎｅｎｔ＿ｉｄが０よりも大きいとき、ｃｏｍｐ＿ｓｃａｌｅ＿ｄｅｐｅｎｄｅｎｔ＿ｃｏｍｐｏｎｅｎｔ＿ｉｄ−１は、シンタックス要素ｃｏｍｐ＿ｓｃａｌｅ＿ｇｌｏｂａｌ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］、ｃｏｍｐ＿ｓｃａｌｅ＿ｓｃａｌｅ＿ｖａｌ［ｃ］［ｉ］およびｃｏｍｐ＿ｓｃａｌｅ＿ｏｆｆｓｅｔ＿ｖａｌ［ｃ］［ｉ］が、サンプルの（ｃｏｍｐ＿ｓｃａｌｅ＿ｄｅｐｅｎｄｅｎｔ＿ｃｏｍｐｏｎｅｎｔ＿ｉｄ−１）番目のコンポーネントの値の関数として、サンプルのｃ番目のコンポーネントに適用されるべきスケールパラメータのマッピングを指定するように、コンポーネントのインデックスを指定する。
セマンティクスの残りは、例５で説明されたものと同様である。
例８
[0211]  この例では、ＡＴＦパラメータのビット深度はコンポーネントに依存する。各コンポーネントのために、シンタックス要素のビット深度は明示的に信号である。さらに、それらのシンタックス要素のためのデフォルトビット深度がある。ビット深度が明示的にシグナリングされないとき、デフォルト値が割り当てられる。フラグは、デフォルト値が適用されるのか、それらが明示的にシグナリングされるのかを示し得る。
【０３０６】
[0212]  下記の表はこれらの概念の一例を示す。ＡＴＦパラメータのシンタックス要素は、スケールｈｄｒ＿ｒｅｃｏｎ＿ｓｃａｌｅ＿ｖａｌ［］［］およびレンジｈｄｒ＿ｒｅｃｏｎ＿ｒａｎｇｅ＿ｖａｌ［］［］である。対応するビット深度（整数および小数部分）を示すシンタックス要素は、後続の要素である。
【０３０７】
【数５６】
2018533278.tif 000068
【０３０８】
ここで、ｃはコンポーネントインデックスである。スケールおよびオフセット（レンジ）のためのデフォルトビット深度は、以下のように設定され得る。
【０３０９】
【数５７】
2018533278.tif 000069
【０３１０】
[0213]  また、パラメータの正確さは、ＡＴＦパラメータおよび色調整パラメータについて異なり得る。また、デフォルト値は、コンポーネントごとに、および色調整パラメータについて異なり得る。この例では、デフォルト値は同じであると仮定される。
【０３１１】
【表１１】
2018533278.tif 000070
【０３１２】
2018533278.tif 000071
【０３１３】
例９
[0214]  新しいＨＤＲソリューションの望ましいプロパティは、それが、ＨＤＲ１０のように、以前のＨＤＲソリューションに後方互換性があることである。シンタックス要素は、そうであることを示し得る。これはビットストリームの特性を示し、ＨＤＲデコーダは、非ＡＴＦバージョンがすでに閲覧可能である場合、いくつかの状況下では、逆ＡＴＦ処理に対して計算リソースを費やさないことを決定し得る。
【０３１４】
[0215]  一例では、ｈｄｒ＿ｒｅｃｏｎ＿ｉｄシンタックス要素のいくつかの値は、ＨＤＲ１０後方互換性を示すために、またはどの程度まで後方互換性があるかを示すために予約される。
【０３１５】
[0216]  別の例では、フラグ（ｈｄｒ＿ｒｅｃｏｎ＿ｈｄｒ１０＿ｂｃ）がこの状況を示す。
【０３１６】
[0217]  一例では、シグナリングされたＨＤＲ１０後方互換性は、ビットストリームが閲覧可能であることを示す。代替的に、それは、シグナリングされた値のいくつかの特定のプロパティ、たとえば、それらがこのプロパティを保証する値のレンジであることを示し得る。たとえば、制約は、スケールが０．９〜１．１の間であるということであり得る。
【０３１７】
[0218]  図１０は、本開示の技法を実装し得るビデオエンコーダ２０の一例を示すブロック図である。ビデオエンコーダ２０は、ビデオプリプロセッサユニット１９によって処理されたターゲット色コンテナ中のビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間冗長性を低減または除去するために空間予測に依拠する。インターコーディングは、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオの時間冗長性を低減または除去するために時間予測に依拠する。イントラモード（Ｉモード）は、いくつかの空間ベースコーディングモードのいずれかを指し得る。単方向予測（Ｐモード）または双予測（Ｂモード）などのインターモードは、いくつかの時間ベースコーディングモードのいずれかを指し得る。
【０３１８】
[0219]  図１０に示されているように、ビデオエンコーダ２０は、符号化されるべきビデオフレーム内の現在ビデオブロックを受信する。図１０の例では、ビデオエンコーダ２０は、モード選択ユニット４０と、ビデオデータメモリ４１と、復号ピクチャバッファ６４と、加算器５０と、変換処理ユニット５２と、量子化ユニット５４と、エントロピー符号化ユニット５６とを含む。モード選択ユニット４０は、動き補償ユニット４４と、動き推定ユニット４２と、イントラ予測ユニット４６と、パーティションユニット４８とを含む。ビデオブロック再構成のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換処理ユニット６０と、加算器６２とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタ処理するための（図１０に示されていない）デブロッキングフィルタも含まれ得る。所望される場合、デブロッキングフィルタは、一般に、加算器６２の出力をフィルタ処理することになる。（ループ中またはループ後の）追加のフィルタもデブロッキングフィルタに加えて使用され得る。そのようなフィルタは、簡潔のために示されていないが、所望される場合、（ループ内フィルタとして）加算器５０の出力をフィルタ処理し得る。
【０３１９】
[0220]  ビデオデータメモリ４１は、ビデオエンコーダ２０のコンポーネントによって符号化されるべきビデオデータを記憶し得る。ビデオデータメモリ４１に記憶されるビデオデータは、たとえば、ビデオソース１８から取得され得る。復号ピクチャバッファ６４は、たとえば、イントラコーディングモードまたはインターコーディングモードでビデオエンコーダ２０によってビデオデータを符号化する際に使用するための参照ビデオデータを記憶する参照ピクチャメモリであり得る。ビデオデータメモリ４１および復号ピクチャバッファ６４は、同期ＤＲＡＭ（ＳＤＲＡＭ）を含むダイナミックランダムアクセスメモリ（ＤＲＡＭ）、磁気抵抗ＲＡＭ（ＭＲＡＭ）、抵抗性ＲＡＭ（ＲＲＡＭ（登録商標））、または他のタイプのメモリデバイスなど、様々なメモリデバイスのいずれかによって形成され得る。ビデオデータメモリ４１および復号ピクチャバッファ６４は、同じメモリデバイスまたは別個のメモリデバイスによって与えられ得る。様々な例では、ビデオデータメモリ４１は、ビデオエンコーダ２０の他のコンポーネントとともにオンチップであるか、またはそれらのコンポーネントに対してオフチップであり得る。
【０３２０】
[0221]  符号化プロセス中に、ビデオエンコーダ２０は、コーディングされるべきビデオフレームまたはスライスを受信する。フレームまたはスライスは複数のビデオブロックに分割され得る。動き推定ユニット４２および動き補償ユニット４４は、時間予測を行うために、１つまたは複数の参照フレーム中の１つまたは複数のブロックに対する受信されたビデオブロックのインター予測コーディングを実行する。イントラ予測処理ユニット４６は、代替的に、空間予測を行うために、コーディングされるべきブロックと同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対する受信されたビデオブロックのイントラ予測コーディングを実行し得る。ビデオエンコーダ２０は、たとえば、ビデオデータのブロックごとに適切なコーディングモードを選択するために、複数のコーディングパスを実行し得る。
【０３２１】
[0222]  その上、パーティションユニット４８は、前のコーディングパスにおける前の区分方式の評価に基づいて、ビデオデータのブロックをサブブロックに区分し得る。たとえば、パーティションユニット４８は、初めにフレームまたはスライスをＬＣＵに区分し、レートひずみ分析（たとえば、レートひずみ最適化）に基づいてＬＣＵの各々をサブＣＵに区分し得る。モード選択ユニット４０は、さらに、サブＣＵへのＬＣＵの区分を示す４分木データ構造を生成し得る。４分木のリーフノードＣＵは、１つまたは複数のＰＵと１つまたは複数のＴＵとを含み得る。
【０３２２】
[0223]  モード選択ユニット４０は、たとえば、エラー結果に基づいてコーディングモード、すなわち、イントラまたはインターのうちの１つを選択し得、残差ブロックデータを発生するために、得られたイントラコード化ブロックまたはインターコード化ブロックを加算器５０に与え、参照フレームとして使用するための符号化ブロックを再構成するために、得られたイントラコード化ブロックまたはインターコード化ブロックを加算器６２に与える。モード選択ユニット４０はまた、動きベクトル、イントラモードインジケータ、パーティション情報、および他のそのようなシンタックス情報など、シンタックス要素をエントロピー符号化ユニット５６に与える。
【０３２３】
[0224]  動き推定ユニット４２と動き補償ユニット４４とは、高度に統合され得るが、概念的な目的のために別個に示されている。動き推定ユニット４２によって実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを発生するプロセスである。動きベクトルは、たとえば、現在ピクチャ（または他のコード化ユニット）内でコーディングされている現在ブロックに対する参照ピクチャ（または他のコード化ユニット）内の予測ブロックに対する現在ビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位を示し得る。予測ブロックは、絶対差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of square difference）、または他の差分メトリックによって決定され得るピクセル差分に関して、コーディングされるべきブロックにぴったり一致することがわかるブロックである。いくつかの例では、ビデオエンコーダ２０は、復号ピクチャバッファ６４に記憶された参照ピクチャのサブ整数ピクセル位置の値を計算し得る。たとえば、ビデオエンコーダ２０は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット４２は、フルピクセル位置と分数ピクセル位置とに対して動き探索を実行し、分数ピクセル精度で動きベクトルを出力し得る。
【０３２４】
[0225]  動き推定ユニット４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライス中のビデオブロックのＰＵのための動きベクトルを計算する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択され得、それらの各々が、復号ピクチャバッファ６４に記憶された１つまたは複数の参照ピクチャを識別する。動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。
【０３２５】
[0226]  動き補償ユニット４４によって実行される動き補償は、動き推定ユニット４２によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは発生することを伴い得る。この場合も、動き推定ユニット４２および動き補償ユニット４４は、いくつかの例では、機能的に統合され得る。現在ビデオブロックのＰＵのための動きベクトルを受信すると、動き補償ユニット４４は、動きベクトルが参照ピクチャリストのうちの１つにおいてそれを指す予測ブロックの位置を特定し得る。加算器５０は、以下で説明されるように、コーディングされている現在ビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差分値を形成することによって、残差ビデオブロックを形成する。概して、動き推定ユニット４２はルーマコンポーネントに対して動き推定を実行し、動き補償ユニット４４は、クロマコンポーネントとルーマコンポーネントの両方のためにルーマコンポーネントに基づいて計算された動きベクトルを使用する。モード選択ユニット４０はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０が使用するためのビデオブロックとビデオスライスとに関連するシンタックス要素を発生し得る。
【０３２６】
[0227]  イントラ予測処理ユニット４６は、上記で説明されたように、動き推定ユニット４２と動き補償ユニット４４とによって実行されるインター予測の代替として、現在ブロックをイントラ予測し得る。特に、イントラ予測処理ユニット４６は、現在ブロックを符号化するために使用すべきイントラ予測モードを決定し得る。いくつかの例では、イントラ予測処理ユニット４６は、たとえば、別個の符号化パス中に、様々なイントラ予測モードを使用して現在ブロックを符号化し得、イントラ予測処理ユニット４６（または、いくつかの例では、モード選択ユニット４０）は、テストされたモードから使用するのに適切なイントラ予測モードを選択し得る。
【０３２７】
[0228]  たとえば、イントラ予測処理ユニット４６は、様々なテストされたイントラ予測モードのためのレートひずみ分析を使用してレートひずみ値を計算し、テストされたモードの中で最良のレートひずみ特性を有するイントラ予測モードを選択し得る。レートひずみ分析は、概して、符号化ブロックと、符号化ブロックを生成するために符号化された元の符号化されていないブロックとの間のひずみ（またはエラー）の量、ならびに符号化ブロックを生成するために使用されるビットレート（すなわち、ビット数）を決定する。イントラ予測処理ユニット４６は、どのイントラ予測モードがブロックについて最良のレートひずみ値を呈するかを決定するために、様々な符号化ブロックのひずみおよびレートから比を計算し得る。
【０３２８】
[0229]  ブロックのためのイントラ予測モードを選択した後に、イントラ予測処理ユニット４６は、ブロックのための選択されたイントラ予測モードを示す情報をエントロピー符号化ユニット５６に与え得る。エントロピー符号化ユニット５６は、選択されたイントラ予測モードを示す情報を符号化し得る。ビデオエンコーダ２０は、複数のイントラ予測モードインデックステーブルおよび複数の変更されたイントラ予測モードインデックステーブル（コードワードマッピングテーブルとも呼ばれる）と、様々なブロックの符号化コンテキストの定義と、コンテキストの各々について使用すべき、最確イントラ予測モード、イントラ予測モードインデックステーブル、および変更されたイントラ予測モードインデックステーブルの指示とを含み得る構成データを送信ビットストリーム中に含み得る。
【０３２９】
[0230]  ビデオエンコーダ２０は、コーディングされている元のビデオブロックから、モード選択ユニット４０からの予測データを減算することによって残差ビデオブロックを形成する。加算器５０は、この減算演算を実行する１つまたは複数のコンポーネントを表す。変換処理ユニット５２は、離散コサイン変換（ＤＣＴ）または概念的に同様の変換などの変換を残差ブロックに適用し、残差変換係数値を備えるビデオブロックを生成する。変換処理ユニット５２は、ＤＣＴと概念的に同様である他の変換を実行し得る。ウェーブレット変換、整数変換、サブバンド変換または他のタイプの変換も使用され得る。いずれの場合も、変換処理ユニット５２は、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、残差情報をピクセル値領域から周波数領域などの変換領域に変換し得る。変換処理ユニット５２は、得られた変換係数を量子化ユニット５４に送り得る。
【０３３０】
[0231]  量子化ユニット５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって修正され得る。いくつかの例では、量子化ユニット５４は、次いで、量子化された変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット５６が走査を実行し得る。
【０３３１】
[0232]  量子化の後に、エントロピー符号化ユニット５６は量子化された変換係数をエントロピーコーディングする。たとえば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）、確率間隔区分エントロピー（ＰＩＰＥ）コーディングまたは別のエントロピーコーディング技法を実行し得る。コンテキストベースエントロピーコーディングの場合、コンテキストは近隣ブロックに基づき得る。エントロピー符号化ユニット５６によるエントロピーコーディングの後に、符号化ビットストリームは、別のデバイス（たとえば、ビデオデコーダ３０）に送信されるか、あるいは後で送信するかまたは取り出すためにアーカイブされ得る。
【０３３２】
[0233]  逆量子化ユニット５８および逆変換処理ユニット６０は、たとえば、参照ブロックとして後で使用するために、ピクセル領域中で残差ブロックを再構成するために、それぞれ逆量子化および逆変換を適用する。動き補償ユニット４４は、残差ブロックを復号ピクチャバッファ６４のフレームのうちの１つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、動き推定において使用するためのサブ整数ピクセル値を計算するために、再構成された残差ブロックに１つまたは複数の補間フィルタを適用し得る。加算器６２は、復号ピクチャバッファ６４に記憶するための再構成されたビデオブロックを生成するために、動き補償ユニット４４によって生成された動き補償予測ブロックに再構成された残差ブロックを加算する。再構成されたビデオブロックは、後続のビデオフレーム中のブロックをインターコーディングするために、動き推定ユニット４２および動き補償ユニット４４によって参照ブロックとして使用され得る。
【０３３３】
[0234]  図１１は、本開示の技法を実装し得るビデオデコーダ３０の一例を示すブロック図である。特に、ビデオデコーダ３０は、上記で説明されたように、ビデオポストプロセッサユニット３１によって次いで処理され得るターゲット色コンテナにビデオデータを復号し得る。図１１の例では、ビデオデコーダ３０は、エントロピー復号ユニット７０と、ビデオデータメモリ７１と、動き補償ユニット７２と、イントラ予測処理ユニット７４と、逆量子化ユニット７６と、逆変換処理ユニット７８と、復号ピクチャバッファ８２と、加算器８０とを含む。ビデオデコーダ３０は、いくつかの例では、ビデオエンコーダ２０（図１０）に関して説明された符号化パスに概して相反する復号パスを実行し得る。動き補償ユニット７２は、エントロピー復号ユニット７０から受信された動きベクトルに基づいて予測データを発生し得、イントラ予測ユニット７４は、エントロピー復号ユニット７０から受信されたイントラ予測モードインジケータに基づいて予測データを発生し得る。
【０３３４】
[0235]  ビデオデータメモリ７１は、ビデオデコーダ３０のコンポーネントによって復号されるべき、符号化ビデオビットストリームなどのビデオデータを記憶し得る。ビデオデータメモリ７１に記憶されるビデオデータは、たとえば、コンピュータ可読媒体１６から、たとえば、カメラなどのローカルビデオソースから、ビデオデータのワイヤードまたはワイヤレスネットワーク通信を介して、あるいは物理データ記憶媒体にアクセスすることによって取得され得る。ビデオデータメモリ７１は、符号化ビデオビットストリームからの符号化ビデオデータを記憶するコード化ピクチャバッファ（ＣＰＢ）を形成し得る。復号ピクチャバッファ８２は、たとえば、イントラコーディングモードまたはインターコーディングモードでビデオデコーダ３０によってビデオデータを復号する際に使用するための参照ビデオデータを記憶する参照ピクチャメモリであり得る。ビデオデータメモリ７１および復号ピクチャバッファ８２は、同期ＤＲＡＭ（ＳＤＲＡＭ）を含むダイナミックランダムアクセスメモリ（ＤＲＡＭ）、磁気抵抗ＲＡＭ（ＭＲＡＭ）、抵抗性ＲＡＭ（ＲＲＡＭ）、または他のタイプのメモリデバイスなど、様々なメモリデバイスのいずれかによって形成され得る。ビデオデータメモリ７１および復号ピクチャバッファ８２は、同じメモリデバイスまたは別個のメモリデバイスによって与えられ得る。様々な例では、ビデオデータメモリ７１は、ビデオデコーダ３０の他のコンポーネントとともにオンチップであるか、またはそれらのコンポーネントに対してオフチップであり得る。
【０３３５】
[0236]  復号プロセス中に、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化ビデオスライスのビデオブロックと、関連するシンタックス要素とを表す符号化ビットストリームを受信する。ビデオデコーダ３０のエントロピー復号ユニット７０は、量子化された係数と、動きベクトルまたはイントラ予測モードインジケータと、他のシンタックス要素とを発生するために、ビットストリームをエントロピー復号する。エントロピー復号ユニット７０は、動きベクトルと他のシンタックス要素とを動き補償ユニット７２に転送する。ビデオデコーダ３０は、ビデオスライスレベルおよび／またはビデオブロックレベルでシンタックス要素を受信し得る。
【０３３６】
[0237]  ビデオスライスがイントラコード化（Ｉ）スライスとしてコーディングされるとき、イントラ予測処理ユニット７４は、シグナリングされたイントラ予測モードと、現在フレームまたはピクチャの、前に復号されたブロックからのデータとに基づいて、現在ビデオスライスのビデオブロックのための予測データを発生し得る。ビデオフレームがインターコード化（すなわち、ＢまたはＰ）スライスとしてコーディングされるとき、動き補償ユニット７２は、エントロピー復号ユニット７０から受信された動きベクトルと他のシンタックス要素とに基づいて、現在ビデオスライスのビデオブロックのための予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの１つ内の参照ピクチャのうちの１つから生成され得る。ビデオデコーダ３０は、復号ピクチャバッファ８２に記憶された参照ピクチャに基づいて、デフォルト構成技法を使用して、参照ピクチャリスト、リスト０およびリスト１を構成し得る。動き補償ユニット７２は、動きベクトルと他のシンタックス要素とをパースすることによって現在ビデオスライスのビデオブロックのための予測情報を決定し、復号されている現在ビデオブロックのための予測ブロックを生成するために、その予測情報を使用する。たとえば、動き補償ユニット７２は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード（たとえば、イントラまたはインター予測）と、インター予測スライスタイプ（たとえば、ＢスライスまたはＰスライス）と、スライスのための参照ピクチャリストのうちの１つまたは複数のための構成情報と、スライスの各インター符号化ビデオブロックのための動きベクトルと、スライスの各インターコード化ビデオブロックのためのインター予測ステータスと、現在ビデオスライス中のビデオブロックを復号するための他の情報とを決定するために、受信されたシンタックス要素のうちのいくつかを使用する。
【０３３７】
[0238]  動き補償ユニット７２はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット７２は、参照ブロックのサブ整数ピクセルのための補間値を計算するために、ビデオブロックの符号化中にビデオエンコーダ２０によって使用された補間フィルタを使用し得る。この場合、動き補償ユニット７２は、受信されたシンタックス要素からビデオエンコーダ２０によって使用された補間フィルタを決定し、予測ブロックを生成するためにその補間フィルタを使用し得る。
【０３３８】
[0239]  逆量子化ユニット７６は、ビットストリーム中で与えられ、エントロピー復号ユニット７０によって復号された量子化された変換係数を逆量子化（inverse quantize）、すなわち、量子化解除（de-quantize）する。逆量子化プロセスは、量子化の程度を決定し、同様に、適用されるべき逆量子化の程度を決定するための、ビデオスライス中のビデオブロックごとにビデオデコーダ３０によって計算される量子化パラメータＱＰYの使用を含み得る。逆変換処理ユニット７８は、ピクセル領域において残差ブロックを生成するために、逆変換、たとえば、逆ＤＣＴ、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用する。
【０３３９】
[0240]  動き補償ユニット７２が、動きベクトルと他のシンタックス要素とに基づいて現在ビデオブロックのための予測ブロックを発生した後に、ビデオデコーダ３０は、逆変換処理ユニット７８からの残差ブロックを動き補償ユニット７２によって生成された対応する予測ブロックと加算することによって、復号ビデオブロックを形成する。加算器８０は、この加算演算を実行する１つまたは複数のコンポーネントを表す。所望される場合、ブロッキネスアーティファクトを除去するために、復号ブロックをフィルタ処理するためにデブロッキングフィルタも適用され得る。ピクセル遷移を平滑化するか、または場合によってはビデオ品質を改善するために、（コーディングループ中またはコーディングループ後のいずれかの）他のループフィルタも使用され得る。所与のフレームまたはピクチャ中の復号ビデオブロックは、次いで、後続の動き補償のために使用される参照ピクチャを記憶する復号ピクチャバッファ８２に記憶される。復号ピクチャバッファ８２はまた、図１のディスプレイデバイス３２などのディスプレイデバイス上での後の表示のための復号ビデオを記憶する。
【０３４０】
[0241]  図１２は、本開示の１つの例示的なビデオ処理技法を示すフローチャートである。図１２の技法は、ビデオエンコーダ２０および／またはビデオプリプロセッサユニット１９によって実行され得る。図１２の例では、ソースデバイス１２は、カメラを使用してビデオデータをキャプチャする（１２００）ように構成され得る。ビデオエンコーダ２０および／またはビデオプリプロセッサユニット１９は、固定小数点算出を使用して、ビデオデータに対してダイナミックレンジ調整プロセスを実行する（１２１０）ように構成され得る。ビデオエンコーダ２０および／またはビデオプリプロセッサユニット１９は、固定小数点算出を使用して、ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生する（１２２０）ようにさらに構成され得る。
【０３４１】
[0242]  一例では、ビデオエンコーダ２０および／またはビデオプリプロセッサユニット１９は、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で１つまたは複数のシンタックス要素を発生することによって、１つまたは複数のシンタックス要素を発生するように構成され得る。一例では、パラメータは、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える。別の例では、情報は、レンジパラメータを決定するために使用される小数ビットの第１の数、スケールパラメータを決定するために使用される小数ビットの第２の数、およびオフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す。別の例では、情報は、ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含む。別の例では、情報は、復号ビデオデータのサンプル値の所定のレンジ（predetermined range）に対するインデックスを含む。
【０３４２】
[0243]  図１３は、本開示の別の例示的なビデオ処理技法を示すフローチャートである。図１３の技法は、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１によって実行され得る。本開示の一例では、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信し（１３００）、復号ビデオデータを受信する（１３１０）ように構成され得る。
【０３４３】
[0244]  ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、受信された情報から逆ダイナミックレンジ調整プロセスのためのパラメータを決定し（１３２０）、受信された情報と決定されたパラメータとに従って、固定小数点算出を使用して、復号ビデオデータに対して逆ダイナミックレンジ調整プロセスを実行する（１３３０）ようにさらに構成され得る。宛先デバイス１４は、復号ビデオデータに対して逆ダイナミックレンジ調整プロセスを実行した後に復号ビデオデータを表示する（display）（１３４０）ようにさらに構成され得る。
【０３４４】
[0245]  本開示の一例では、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で１つまたは複数のシンタックス要素を受信するように構成され得る。一例では、パラメータは、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える。別の例では、情報は、レンジパラメータを決定するために使用される小数ビットの第１の数、スケールパラメータを決定するために使用される小数ビットの第２の数、およびオフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す。
【０３４５】
[0246]  本開示の別の例では、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、小数ビットの第１の数、小数ビットの第２の数、または小数ビットの第３の数のうちの少なくとも１つが互いに異なる場合、パラメータを決定するために使用される任意の中間計算プロセス（intermediate calculation process）中に任意の小数ビットを累算することによって、パラメータを決定し、所定の小数正確さ（predetermined fractional accuracy）に基づいて、パラメータを決定するための最終結果（final result）をクリッピングするように構成され得る。
【０３４６】
[0247]  本開示の別の例では、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える小数ビットをトランケートすることによってパラメータを決定するように構成され得る。
【０３４７】
[0248]  別の例では、情報は、復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、受信された最小値と受信された最大値とに基づいてパラメータを決定するように構成され得る。
【０３４８】
[0249]  別の例では、情報は、復号ビデオデータの１つまたは複数の色コンポーネントのためのサンプル値の所定のレンジに対するインデックスを含み、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、受信されたインデックスに基づいて復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを決定し、決定された最小値と決定された最大値とに基づいてパラメータを決定するように構成され得る。
【０３４９】
[0250]  本開示の別の例では、ビデオデコーダ３０および／またはビデオポストプロセッサユニット３１は、パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信し、ＳＥＩメッセージ中の情報に対してパースプロセスを実行するように構成され得、ここにおいて、パースプロセスは、シンタックス要素の値にかかわらず同じである。
【０３５０】
[0251]  本開示のいくつかの態様は、説明の目的でＨＥＶＣ規格の拡張に関して説明された。ただし、本開示で説明された技法は、まだ開発されていない他の規格またはプロプライエタリビデオコーディングプロセスを含む、他のビデオコーディングプロセスのために有用であり得る。
【０３５１】
[0252]  本開示で説明されたビデオコーダは、ビデオエンコーダまたはビデオデコーダを指し得る。同様に、ビデオコーディングユニットは、ビデオエンコーダまたはビデオデコーダを指し得る。同様に、ビデオコーディングは、適用可能なとき、ビデオ符号化またはビデオ復号を指し得る。
【０３５２】
[0253]  上記例に応じて、本明細書で説明された技法のいずれかのいくつかの行為またはイベントが、異なるシーケンスで実行され得、全体的に追加、マージ、または除外され得る（たとえば、すべての説明された行為またはイベントが本技法の実施のために必要であるとは限らない）ことを認識されたい。その上、いくつかの例では、行為またはイベントは、連続的にではなく、たとえば、マルチスレッド処理、割込み処理、または複数のプロセッサを通して同時に実行され得る。
【０３５３】
[0254]  １つまたは複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとして、コンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベース処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応する、コンピュータ可読記憶媒体を含み得るか、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む通信媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明された技法の実装のための命令、コードおよび／またはデータ構造を取り出すために、１つまたは複数のコンピュータあるいは１つまたは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０３５４】
[0255]  限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用してウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用されるディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびＢｌｕ−ｒａｙディスク（disc）を含み、ここで、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０３５５】
[0256]  命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）などの１つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用される「プロセッサ」という用語は、上記の構造、または本明細書で説明された技法の実装に好適な他の構造のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明された機能は、符号化および復号のために構成された専用ハードウェアおよび／またはソフトウェアモジュール内に与えられるか、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素で十分に実装され得る。
【０３５６】
[0257]  本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置で実装され得る。本開示では、開示される技法を実行するように構成されたデバイスの機能的態様を強調するために、様々なコンポーネント、モジュール、またはユニットが説明されたが、それらのコンポーネント、モジュール、またはユニットは、必ずしも異なるハードウェアユニットによる実現を必要とするとは限らない。むしろ、上記で説明されたように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明された１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作可能なハードウェアユニットの集合によって与えられ得る。
【０３５７】
[0258]  様々な例が説明された。これらおよび他の例は、以下の特許請求の範囲内に入る。
【図１】
2018533278.tif 000072
【図２】
2018533278.tif 000073
【図３】
2018533278.tif 000074
【図４】
2018533278.tif 000075
【図５】
2018533278.tif 000076
【図６】
2018533278.tif 000077
【図７】
2018533278.tif 000078
【図８】
2018533278.tif 000079
【図９】
2018533278.tif 000080
【図１０】
2018533278.tif 000081
【図１１】
2018533278.tif 000082
【図１２】
2018533278.tif 000083
【図１３】
2018533278.tif 000084
【手続補正書】
【提出日】平成30年6月4日(2018.6.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオデータを処理する方法であって、前記方法が、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信することと、ここにおいて、前記情報が、レンジパラメータを決定するために使用される小数ビットの第１の数、スケールパラメータを決定するために使用される小数ビットの第２の数、またはオフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、
復号ビデオデータを受信することと、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行することと
を備える、方法。
【請求項２】
前記１つまたは複数のシンタックス要素を受信することが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信することを備え、ここにおいて、前記パラメータが、前記レンジパラメータ、前記スケールパラメータ、または前記オフセットパラメータのうちの１つまたは複数を備える、請求項１に記載の方法。
【請求項３】
小数ビットの前記第１の数と、小数ビットビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定すること
をさらに備える、請求項１に記載の方法。
【請求項４】
前記パラメータを決定することは、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定することと、
所定の小数正確さに基づいて、前記パラメータを決定するために最終結果をクリッピングすることと
をさらに備える、請求項３に記載の方法。
【請求項５】
前記パラメータを決定することが、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定すること
をさらに備える、請求項３に記載の方法。
【請求項６】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、前記方法が、
前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定すること
をさらに備える、請求項１に記載の方法。
【請求項７】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのためのサンプル値の所定のレンジに対するインデックスを含み、前記方法が、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定することと、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定することと
をさらに備える、請求項１に記載の方法。
【請求項８】
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信することと、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行することと、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、
をさらに備える、請求項１に記載の方法。
【請求項９】
前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に前記復号ビデオデータを表示すること
をさらに備える、請求項１に記載の方法。
【請求項１０】
ビデオデータを処理するように構成された装置であって、前記装置が、
復号ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサと
を備え、前記１つまたは複数のプロセッサが、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信することと、ここにおいて、前記情報が、レンジパラメータを決定するために使用される小数ビットの第１の数、スケールパラメータを決定するために使用される小数ビットの第２の数、またはオフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、
前記復号ビデオデータを受信することと、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行することと
を行うように構成された、装置。
【請求項１１】
前記１つまたは複数のプロセッサが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信することを行うようにさらに構成されたことを受信し、ここにおいて、前記パラメータが、前記レンジパラメータ、前記スケールパラメータ、または前記オフセットパラメータのうちの１つまたは複数を備える、請求項１０に記載の装置。
【請求項１２】
前記１つまたは複数のプロセッサが、
小数ビットの前記第１の数と、部分ビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定すること
を行うようにさらに構成された、請求項１０に記載の装置。
【請求項１３】
前記パラメータを決定するために、前記１つまたは複数のプロセッサは、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定することと、
所定の小数正確さに基づいて、前記パラメータを決定するための最終結果をクリッピングすることと
を行うようにさらに構成された、請求項１２に記載の装置。
【請求項１４】
前記パラメータを決定するために、前記１つまたは複数のプロセッサが、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定すること
を行うようにさらに構成された、請求項１２に記載の装置。
【請求項１５】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、ここにおいて、前記１つまたは複数のプロセッサが、
前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定すること
を行うようにさらに構成された、請求項１０に記載の装置。
【請求項１６】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのサンプル値の所定のレンジに対するインデックスを含み、ここにおいて、前記１つまたは複数のプロセッサが、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定することと、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定することと
を行うようにさらに構成された、請求項１０に記載の装置。
【請求項１７】
前記１つまたは複数のプロセッサが、
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信することと、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行することと、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、を行うようにさらに構成された、請求項１０に記載の装置。
【請求項１８】
前記装置は、
前記１つまたは複数のプロセッサが、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に、前記復号ビデオデータを表示するように構成されたディスプレイ
をさらに備える、請求項１０に記載の装置。
【請求項１９】
前記装置が、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの１つまたは複数を備える、請求項１０に記載の装置。
【請求項２０】
ビデオデータを処理するように構成された装置であって、前記装置が、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信するための手段と、ここにおいて、前記情報が、レンジパラメータを決定するために使用される小数ビットの第１の数、スケールパラメータを決定するために使用される小数ビットの第２の数、またはオフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、
復号ビデオデータを受信するための手段と、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行するための手段と
を備える、装置。
【請求項２１】
前記１つまたは複数のシンタックス要素を受信するための前記手段が、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信するための手段を備え、ここにおいて、前記パラメータが、前記レンジパラメータ、前記スケールパラメータ、または前記オフセットパラメータのうちの１つまたは複数を備える、請求項２０に記載の装置。
【請求項２２】
小数ビットの前記第１の数と、部分ビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定するための手段
をさらに備える、請求項２０に記載の装置。
【請求項２３】
前記パラメータを決定するための前記手段は、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定するための手段と、
所定の小数正確さに基づいて、前記パラメータを決定するための最終結果をクリッピングするための手段と
をさらに備える、請求項２２に記載の装置。
【請求項２４】
前記パラメータを決定するための前記手段が、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定するための手段
をさらに備える、請求項２２に記載の装置。
【請求項２５】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、前記装置が、
前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定するための手段
をさらに備える、請求項２０に記載の装置。
【請求項２６】
前記情報が、前記復号ビデオデータのサンプル値または１つまたは複数の色コンポーネントの所定のレンジに対するインデックスを含み、前記装置が、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定するための手段と、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定するための手段と
をさらに備える、請求項２０に記載の装置。
【請求項２７】
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信するための手段と、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行するための手段と、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、
をさらに備える、請求項２０に記載の装置。
【請求項２８】
前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に前記復号ビデオデータを表示するための手段
をさらに備える、請求項２０に記載の装置。
【請求項２９】
実行されたとき、ビデオデータを処理するように構成されたデバイスの１つまたは複数のプロセッサに、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信することと、ここにおいて、前記情報が、レンジパラメータを決定するために使用される小数ビットの第１の数、スケールパラメータを決定するために使用される小数ビットの第２の数、またはオフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、
前記復号ビデオデータを受信することと、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行することと
を行わせる命令を記憶するコンピュータ可読記憶媒体。
【請求項３０】
前記命令が、前記１つまたは複数のプロセッサに、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信することをさらに行わせ、ここにおいて、前記パラメータが、前記レンジパラメータ、前記スケールパラメータ、または前記オフセットパラメータのうちの１つまたは複数を備える、請求項２９に記載のコンピュータ可読記憶媒体。
【請求項３１】
前記命令が、前記１つまたは複数のプロセッサに、
小数ビットの前記第１の数と、部分ビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定すること
をさらに行わせる、請求項２９に記載のコンピュータ可読記憶媒体。
【請求項３２】
前記命令は、前記１つまたは複数のプロセッサに、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定することと、
所定の小数正確さに基づいて、前記パラメータを決定するための最終結果をクリッピングすることと
をさらに行わせる、請求項３１に記載のコンピュータ可読記憶媒体。
【請求項３３】
前記命令が、前記１つまたは複数のプロセッサに、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定すること
をさらに行わせる、請求項３１に記載のコンピュータ可読記憶媒体。
【請求項３４】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、ここにおいて、前記命令が、前記１つまたは複数のプロセッサに、  前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定すること
をさらに行わせる、請求項２９に記載のコンピュータ可読記憶媒体。
【請求項３５】
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのサンプル値の所定のレンジに対するインデックスを含み、ここにおいて、前記命令が、前記１つまたは複数のプロセッサに、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定することと、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定することと
をさらに行わせる、請求項２９に記載のコンピュータ可読記憶媒体。
【請求項３６】
前記命令が、前記１つまたは複数のプロセッサに、
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信することと、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行することと、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、
をさらに行わせる、請求項２９に記載のコンピュータ可読記憶媒体。
【請求項３７】
前記命令が、前記１つまたは複数のプロセッサに、
前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に前記復号ビデオデータを表示すること
をさらに行わせる、請求項２９に記載のコンピュータ可読記憶媒体。
【請求項３８】
ビデオデータを処理する方法であって、前記方法が、
固定小数点算出を使用してビデオデータに対してダイナミックレンジ調整プロセスを実行することと、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することと、ここにおいて、前記情報が、レンジパラメータを決定するために使用される小数ビットの第１の数、スケールパラメータを決定するために使用される小数ビットの第２の数、またはオフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、
を備える、方法。
【請求項３９】
前記１つまたは複数のシンタックス要素を発生することが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を発生することを備え、ここにおいて、前記パラメータが、前記レンジパラメータ、前記スケールパラメータ、または前記オフセットパラメータのうちの１つまたは複数を備える、請求項３８に記載の方法。
【請求項４０】
前記情報が、前記ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含む、請求項３８に記載の方法。
【請求項４１】
前記情報が、前記復号ビデオデータのサンプル値の所定のレンジに対するインデックスを含む、請求項３８に記載の方法。
【請求項４２】
カメラを用いて前記ビデオデータをキャプチャすること
をさらに備える、請求項３８に記載の方法。
【請求項４３】
ビデオデータを処理するように構成された装置であって、前記装置が、
ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサと
を備え、前記１つまたは複数のプロセッサが、
固定小数点算出を使用して前記ビデオデータに対してダイナミックレンジ調整プロセスを実行することと、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することと、ここにおいて、前記情報が、レンジパラメータを決定するために使用される小数ビットの第１の数、スケールパラメータを決定するために使用される小数ビットの第２の数、またはオフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、
を行うように構成された、装置。
【請求項４４】
前記１つまたは複数のプロセッサが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を発生することを行うようにさらに構成され、ここにおいて、前記パラメータが、前記レンジパラメータ、前記スケールパラメータ、または前記オフセットパラメータのうちの１つまたは複数を備える、請求項４３に記載の装置。
【請求項４５】
前記情報が、前記ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含む、請求項４３に記載の装置。
【請求項４６】
前記情報が、前記復号ビデオデータのサンプル値の所定のレンジに対するインデックスを含む、請求項４３に記載の装置。
【請求項４７】
前記装置が、
前記ビデオデータをキャプチャするように構成されたカメラ
をさらに備える、請求項４３に記載の装置。
【請求項４８】
前記装置が、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの１つまたは複数を備える、請求項４３に記載の装置。
【請求項４９】
ビデオデータを処理するように構成された装置であって、前記装置が、
固定小数点算出を使用してビデオデータに対してダイナミックレンジ調整プロセスを実行するための手段と、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生するための手段と、ここにおいて、前記情報が、レンジパラメータを決定するために使用される小数ビットの第１の数、スケールパラメータを決定するために使用される小数ビットの第２の数、またはオフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、
を備える、装置。
【請求項５０】
実行されたとき、ビデオデータを処理するように構成されたデバイスの１つまたは複数のプロセッサに、
固定小数点算出を使用して前記ビデオデータに対してダイナミックレンジ調整プロセスを実行することと、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することと、ここにおいて、前記情報が、レンジパラメータを決定するために使用される小数ビットの第１の数、スケールパラメータを決定するために使用される小数ビットの第２の数、またはオフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、
を行わせる命令を記憶するコンピュータ可読記憶媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０３５７
【補正方法】変更
【補正の内容】
【０３５７】
[0258]  様々な例が説明された。これらおよび他の例は、以下の特許請求の範囲内に入る。
以下に、本願の出願当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ビデオデータを処理する方法であって、前記方法が、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信することと、  復号ビデオデータを受信することと、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行することと
を備える、方法。
［Ｃ２］
前記１つまたは複数のシンタックス要素を受信することが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信することを備え、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、Ｃ１に記載の方法。
［Ｃ３］
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、Ｃ２に記載の方法。
［Ｃ４］
小数ビットの前記第１の数と、小数ビットビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定すること
をさらに備える、Ｃ３に記載の方法。
［Ｃ５］
前記パラメータを決定することは、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定することと、
所定の小数正確さに基づいて、前記パラメータを決定するために最終結果をクリッピングすることと
をさらに備える、Ｃ４に記載の方法。
［Ｃ６］
前記パラメータを決定することが、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定すること
をさらに備える、Ｃ４に記載の方法。
［Ｃ７］
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、前記方法が、
前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定すること
をさらに備える、Ｃ１に記載の方法。
［Ｃ８］
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのためのサンプル値の所定のレンジに対するインデックスを含み、前記方法が、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定することと、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定することと
をさらに備える、Ｃ１に記載の方法。
［Ｃ９］
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信することと、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行することと、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、をさらに備える、Ｃ１に記載の方法。
［Ｃ１０］
前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に前記復号ビデオデータを表示すること
をさらに備える、Ｃ１に記載の方法。
［Ｃ１１］
ビデオデータを処理するように構成された装置であって、前記装置が、
復号ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサと
を備え、前記１つまたは複数のプロセッサが、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信することと、
前記復号ビデオデータを受信することと、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行することと
を行うように構成された、装置。
［Ｃ１２］
前記１つまたは複数のプロセッサが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信することを行うようにさらに構成されたことを受信し、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、Ｃ１１に記載の装置。
［Ｃ１３］
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、Ｃ１２に記載の装置。
［Ｃ１４］
前記１つまたは複数のプロセッサが、
小数ビットの前記第１の数と、部分ビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定すること
を行うようにさらに構成された、Ｃ１３に記載の装置。
［Ｃ１５］
前記パラメータを決定するために、前記１つまたは複数のプロセッサは、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定することと、
所定の小数正確さに基づいて、前記パラメータを決定するための最終結果をクリッピングすることと
を行うようにさらに構成された、Ｃ１４に記載の装置。
［Ｃ１６］
前記パラメータを決定するために、前記１つまたは複数のプロセッサが、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定すること
を行うようにさらに構成された、Ｃ１４に記載の装置。
［Ｃ１７］
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、ここにおいて、前記１つまたは複数のプロセッサが、
前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定すること
を行うようにさらに構成された、Ｃ１１に記載の装置。
［Ｃ１８］
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのサンプル値の所定のレンジに対するインデックスを含み、ここにおいて、前記１つまたは複数のプロセッサが、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定することと、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定することと
を行うようにさらに構成された、Ｃ１１に記載の装置。
［Ｃ１９］
前記１つまたは複数のプロセッサが、
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信することと、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行することと、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、を行うようにさらに構成された、Ｃ１１に記載の装置。
［Ｃ２０］
前記装置は、
前記１つまたは複数のプロセッサが、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に、前記復号ビデオデータを表示するように構成されたディスプレイ
をさらに備える、Ｃ１１に記載の装置。
［Ｃ２１］
前記装置が、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの１つまたは複数を備える、Ｃ１１に記載の装置。
［Ｃ２２］
ビデオデータを処理するように構成された装置であって、前記装置が、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信するための手段と、
復号ビデオデータを受信するための手段と、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行するための手段と
を備える、装置。
［Ｃ２３］
前記１つまたは複数のシンタックス要素を受信するための前記手段が、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信するための手段を備え、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、Ｃ２２に記載の装置。
［Ｃ２４］
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、Ｃ２３に記載の装置。
［Ｃ２５］
小数ビットの前記第１の数と、部分ビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定するための手段
をさらに備える、Ｃ２４に記載の装置。
［Ｃ２６］
前記パラメータを決定するための前記手段は、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定するための手段と、
所定の小数正確さに基づいて、前記パラメータを決定するための最終結果をクリッピングするための手段と
をさらに備える、Ｃ２５に記載の装置。
［Ｃ２７］
前記パラメータを決定するための前記手段が、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定するための手段
をさらに備える、Ｃ２５に記載の装置。
［Ｃ２８］
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、前記装置が、
前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定するための手段
をさらに備える、Ｃ２２に記載の装置。
［Ｃ２９］
前記情報が、前記復号ビデオデータのサンプル値または１つまたは複数の色コンポーネントの所定のレンジに対するインデックスを含み、前記装置が、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定するための手段と、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定するための手段と
をさらに備える、Ｃ２２に記載の装置。
［Ｃ３０］
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信するための手段と、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行するための手段と、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、
をさらに備える、Ｃ２２に記載の装置。
［Ｃ３１］
前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に前記復号ビデオデータを表示するための手段
をさらに備える、Ｃ２２に記載の装置。
［Ｃ３２］
実行されたとき、ビデオデータを処理するように構成されたデバイスの１つまたは複数のプロセッサに、
逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を受信することと、  前記復号ビデオデータを受信することと、
受信された前記情報に従って、固定小数点算出を使用して、前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行することと
を行わせる命令を記憶するコンピュータ可読記憶媒体。
［Ｃ３３］
前記命令が、前記１つまたは複数のプロセッサに、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を受信することをさらに行わせ、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、Ｃ３２に記載のコンピュータ可読記憶媒体。
［Ｃ３４］
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、Ｃ３３に記載のコンピュータ可読記憶媒体。
［Ｃ３５］
前記命令が、前記１つまたは複数のプロセッサに、
小数ビットの前記第１の数と、部分ビットの前記第２の数と、小数ビットの前記第３の数とを使用して前記パラメータを決定すること
をさらに行わせる、Ｃ３４に記載のコンピュータ可読記憶媒体。
［Ｃ３６］
前記命令は、前記１つまたは複数のプロセッサに、
小数ビットの前記第１の数、小数ビットの前記第２の数、または小数ビットの前記第３の数のうちの少なくとも１つが互いに異なる場合、前記パラメータを決定するために使用される任意の中間計算プロセス中に任意の小数ビットを累算することによって、前記パラメータを決定することと、
所定の小数正確さに基づいて、前記パラメータを決定するための最終結果をクリッピングすることと
をさらに行わせる、Ｃ３５に記載のコンピュータ可読記憶媒体。
［Ｃ３７］
前記命令が、前記１つまたは複数のプロセッサに、
前記パラメータを決定するために使用されるすべての中間計算プロセス中に所望の小数正確さを越える任意の小数ビットをトランケートすることによって前記パラメータを決定すること
をさらに行わせる、Ｃ３５に記載のコンピュータ可読記憶媒体。
［Ｃ３８］
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含み、ここにおいて、前記命令が、前記１つまたは複数のプロセッサに、  前記受信された最小値と前記受信された最大値とに基づいて前記パラメータを決定すること
をさらに行わせる、Ｃ３２に記載のコンピュータ可読記憶媒体。
［Ｃ３９］
前記情報が、前記復号ビデオデータの１つまたは複数の色コンポーネントのサンプル値の所定のレンジに対するインデックスを含み、ここにおいて、前記命令が、前記１つまたは複数のプロセッサに、
前記受信されたインデックスに基づいて、前記復号ビデオデータの前記１つまたは複数の色コンポーネントのための最小値と最大値とを決定することと、
前記決定された最小値と前記決定された最大値とに基づいて前記パラメータを決定することと
をさらに行わせる、Ｃ３２に記載のコンピュータ可読記憶媒体。
［Ｃ４０］
前記命令が、前記１つまたは複数のプロセッサに、
前記パラメータが符号付きであるのか符号なしであるのかを示すシンタックス要素を受信することと、
前記ＳＥＩメッセージ中の前記情報に対してパースプロセスを実行することと、ここにおいて、前記パースプロセスが、前記シンタックス要素の値にかかわらず同じである、をさらに行わせる、Ｃ３２に記載のコンピュータ可読記憶媒体。
［Ｃ４１］
前記命令が、前記１つまたは複数のプロセッサに、
前記復号ビデオデータに対して前記逆ダイナミックレンジ調整プロセスを実行した後に前記復号ビデオデータを表示すること
をさらに行わせる、Ｃ３２に記載のコンピュータ可読記憶媒体。
［Ｃ４２］
ビデオデータを処理する方法であって、前記方法が、
固定小数点算出を使用してビデオデータに対してダイナミックレンジ調整プロセスを実行することと、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することと、
を備える、方法。
［Ｃ４３］
前記１つまたは複数のシンタックス要素を発生することが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を発生することを備え、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、Ｃ４２に記載の方法。
［Ｃ４４］
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、Ｃ４３に記載の方法。
［Ｃ４５］
前記情報が、前記ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含む、Ｃ４２に記載の方法。
［Ｃ４６］
前記情報が、前記復号ビデオデータのサンプル値の所定のレンジに対するインデックスを含む、Ｃ４２に記載の方法。
［Ｃ４７］
カメラを用いて前記ビデオデータをキャプチャすること
をさらに備える、Ｃ４２に記載の方法。
［Ｃ４８］
ビデオデータを処理するように構成された装置であって、前記装置が、
ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサと
を備え、前記１つまたは複数のプロセッサが、
固定小数点算出を使用して前記ビデオデータに対してダイナミックレンジ調整プロセスを実行することと、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することと、
を行うように構成された、装置。
［Ｃ４９］
前記１つまたは複数のプロセッサが、１つまたは複数の補足エンハンスメント情報（ＳＥＩ）メッセージ中で前記１つまたは複数のシンタックス要素を発生することを行うようにさらに構成され、ここにおいて、前記パラメータが、レンジパラメータ、スケールパラメータ、またはオフセットパラメータのうちの１つまたは複数を備える、Ｃ４８に記載の装置。
［Ｃ５０］
前記情報が、前記レンジパラメータを決定するために使用される小数ビットの第１の数、前記スケールパラメータを決定するために使用される小数ビットの第２の数、および前記オフセットパラメータを決定するために使用される小数ビットの第３の数のうちの１つまたは複数を示す、Ｃ４９に記載の装置。
［Ｃ５１］
前記情報が、前記ビデオデータの１つまたは複数の色コンポーネントのための最小値と最大値とを含む、Ｃ４８に記載の装置。
［Ｃ５２］
前記情報が、前記復号ビデオデータのサンプル値の所定のレンジに対するインデックスを含む、Ｃ４８に記載の装置。
［Ｃ５３］
前記装置が、
前記ビデオデータをキャプチャするように構成されたカメラ
をさらに備える、Ｃ４８に記載の装置。
［Ｃ５４］
前記装置が、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの１つまたは複数を備える、Ｃ４８に記載の装置。
［Ｃ５５］
ビデオデータを処理するように構成された装置であって、前記装置が、
固定小数点算出を使用してビデオデータに対してダイナミックレンジ調整プロセスを実行するための手段と、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生するための手段と
を備える、装置。
［Ｃ５６］
実行されたとき、ビデオデータを処理するように構成されたデバイスの１つまたは複数のプロセッサに、
固定小数点算出を使用して前記ビデオデータに対してダイナミックレンジ調整プロセスを実行することと、
固定小数点算出を使用して、前記ダイナミックレンジ調整プロセスに対して、逆ダイナミックレンジ調整プロセスを実行するためのパラメータをどのように決定すべきかを指定する情報を含んでいる１つまたは複数のシンタックス要素を発生することと
を行わせる命令を記憶するコンピュータ可読記憶媒体。
【国際調査報告】
2018533278.tif 000085
2018533278.tif 000086