(57)【要約】輝度範囲が限られたディスプレイのための効果的な電気光学伝達関数を実装するためのシステム、装置及び方法が開示される。プロセッサは、表示用のピクセルデータを生成する要求を検出する。プロセッサは、対象ディスプレイの有効輝度範囲の指標を受信する。プロセッサは、画像又はビデオフレームのピクセルデータを、対象ディスプレイの有効輝度範囲に適合するフォーマットで符号化する。一実施形態では、プロセッサは、対象ディスプレイの有効輝度範囲外の輝度値にマッピングされる未使用の出力ピクセル値を有する第１のフォーマットの符号化ピクセルデータを受信する。プロセッサは、符号化ピクセルデータを、第１のフォーマットから、対象ディスプレイの有効輝度範囲に適合する第２のフォーマットの符号化ピクセルデータに変換する。次に、復号器は、符号化ピクセルデータを復号化し、復号化ピクセルデータを対象ディスプレイに送る。【選択図】図８
2021532677.tif 000002
【特許請求の範囲】
【請求項１】
メモリと、
ディスプレイコントローラと、
前記メモリ及び前記ディスプレイコントローラに接続されたプロセッサと、
を備えるシステムであって、
前記プロセッサは、
表示されるピクセルデータを符号化する要求を検出することと、
対象ディスプレイの有効輝度範囲を決定することと、
複数の利用可能な伝達関数のうち、前記対象ディスプレイの前記有効輝度範囲に適合する第１の伝達関数を特定することと、
前記第１の伝達関数で前記ピクセルデータを符号化することと、
前記第１の伝達関数で符号化された前記ピクセルデータを前記ディスプレイコントローラに提供して、前記対象ディスプレイに送ることと、
を行うように構成されている、
システム。
【請求項２】
前記第１の伝達関数は、第２の伝達関数をスケーリングしたバージョンである、
請求項１のシステム。
【請求項３】
前記第２の伝達関数は、符号語のサブセットを、前記対象ディスプレイの前記有効輝度範囲外の輝度値にマッピングする、
請求項２のシステム。
【請求項４】
前記第１の伝達関数は、
最小符号語を、前記対象ディスプレイによって表示可能な最小輝度出力にマッピングし、
最大符号語を、前記対象ディスプレイによって表示可能な最大輝度出力にマッピングし、
符号語を前記最小符号語と前記最大符号語との間に分布させて、人間の目の知覚に対して最適化する、請求項１に記載のシステム。
【請求項５】
前記プロセッサは、前記対象ディスプレイの前記有効輝度範囲の指標を受信するように構成されている、
請求項１のシステム。
【請求項６】
前記第１の伝達関数で前記ピクセルデータを符号化することによって、前記符号語の全ての範囲が、前記対象ディスプレイが生成可能な輝度値にマッピングされる、
請求項１のシステム。
【請求項７】
前記プロセッサは、前記ピクセルデータが前記第１の伝達関数で符号化されたという指標を復号器に伝えるように構成されている、
請求項１のシステム。
【請求項８】
表示されるピクセルデータを符号化する要求を検出することと、
対象ディスプレイの有効輝度範囲を決定することと、
複数の利用可能な伝達関数のうち、前記対象ディスプレイの前記有効輝度範囲に適合する第１の伝達関数を特定することと、
前記第１の伝達関数で前記ピクセルデータを符号化することと、
前記第１の伝達関数で符号化された前記ピクセルデータを前記ディスプレイコントローラに提供して、前記対象ディスプレイに送ることと、を含む、
方法。
【請求項９】
前記第１の伝達関数は、第２の伝達関数をスケーリングしたバージョンである、
請求項８の方法。
【請求項１０】
前記第２の伝達関数は、符号語のサブセットを、前記対象ディスプレイの前記有効輝度範囲外の輝度値にマッピングする、
請求項９の方法。
【請求項１１】
前記第１の伝達関数は、
最小符号語を、前記対象ディスプレイによって表示可能な最小輝度出力にマッピングし、
最大符号語を、前記対象ディスプレイによって表示可能な最大輝度出力にマッピングし、
符号語を前記最小符号語と前記最大符号語との間に分布させて、人間の目の知覚に対して最適化する、
請求項８の方法。
【請求項１２】
前記対象ディスプレイの前記有効輝度範囲の指標を受信することを含む、
請求項８の方法。
【請求項１３】
前記第１の伝達関数で前記ピクセルデータを符号化することによって、前記符号語の全ての範囲が、前記対象ディスプレイが生成可能な輝度値にマッピングされる、
請求項８の方法。
【請求項１４】
前記ピクセルデータが前記第１の伝達関数で符号化されたという指標を復号器に伝えることを含む、
請求項８の方法。
【請求項１５】
メモリと、
複数の計算ユニットと、
を備えるプロセッサであって、
表示されるピクセルデータを符号化する要求を検出することと、
対象ディスプレイの有効輝度範囲を決定することと、
複数の利用可能な伝達関数のうち、前記対象ディスプレイの前記有効輝度範囲に適合する第１の伝達関数を特定することと、
前記第１の伝達関数で前記ピクセルデータを符号化することと、
前記第１の伝達関数で符号化された前記ピクセルデータを前記ディスプレイコントローラに提供して、前記対象ディスプレイに送ることと、
を行うように構成されている、
プロセッサ。
【請求項１６】
前記第１の伝達関数は、第２の伝達関数をスケーリングしたバージョンである、
請求項１５のプロセッサ。
【請求項１７】
前記第２の伝達関数は、符号語のサブセットを、前記対象ディスプレイの前記有効輝度範囲外の輝度値にマッピングする、
請求項１６のプロセッサ。
【請求項１８】
前記第１の伝達関数は、
最小符号語を、前記対象ディスプレイによって表示可能な最小輝度出力にマッピングし、
最大符号語を、前記対象ディスプレイによって表示可能な最大輝度出力にマッピングし、
符号語を前記最小符号語と前記最大符号語との間に分布させて、人間の目の知覚に対して最適化する、
請求項１５のプロセッサ。
【請求項１９】
前記プロセッサは、前記対象ディスプレイの前記有効輝度範囲の指標を受信するように構成されている、
請求項１５のプロセッサ。
【請求項２０】
前記第１の伝達関数で前記ピクセルデータを符号化することによって、前記符号語の全ての範囲が、前記対象ディスプレイが生成可能な輝度値にマッピングされる、
請求項１５のプロセッサ。
【発明の詳細な説明】
【背景技術】
【０００１】
（関連技術の説明）
多くのタイプのコンピュータシステムは、画像、ビデオストリーム及びデータを表示するディスプレイデバイスを含む。したがって、これらのシステムは、通常、画像及びビデオ情報を生成及び／又は操作するための機能を含む。デジタル画像においては、画像内の最小の情報項目は「画素」と呼ばれ、より一般的には「ピクセル」と呼ばれる。一般的な電子ディスプレイ上で特定の色を表現するために、各ピクセルは、所望の色に存在する赤、緑、青の各々の量に対応する３つの値を有することができる。電子ディスプレイの一部のフォーマットには、ピクセルの透明度を表すアルファと呼ばれる４番目の値が含まれる場合がある。このフォーマットは、一般にＡＲＧＢ又はＲＧＢＡと呼ばれる。ピクセルの色を表す別のフォーマットはＹＣｂＣｒであり、Ｙはピクセルの輝度すなわち明るさに対応し、ＣｂとＣｒは、青色差（Ｃｂ）と赤色差（Ｃｒ）を表す２つの色差（クロミナンス）成分に対応する。
【０００２】
輝度は、所定の方向に進む光の単位面積当たりの光度の測光測定値である。輝度は、特定の領域から放出又は反射される光の量を表す。輝度は、特定のビューアングルから表面を見る目によって検出される光量を示す。輝度の測定に使用される単位は、カンデラ／平方メートルである。平方メートルあたりのカンデラは「ニト（ｎｉｔ）」とも呼ばれる。
【０００３】
人間の視覚の研究に基づくと、人間が輝度の差を検出するためには、最小限の輝度の変化がある。高ダイナミックレンジ（ＨＤＲ）タイプのコンテンツの場合、ビデオフレームは、隣接する符号語が知覚可能な明るさの最小ステップに近くなるように、通常、知覚量子化（Perceptual Quantizer）電気光学伝達関数（ＰＱ−ＥＯＴＦ）を使用して符号化される。一般的なＨＤＲディスプレイは、１０ビットの色深度を使用する。つまり、各色成分は０〜１０２３の値の範囲となる。１０ビットで符号化されたＰＱ−ＥＯＴＦでは、１０２４の符号語の各々が０〜１００００ｎｉｔの輝度を表すが、人間の知覚に基づいて、これらの１０２４個のレベルと区別することができるより多くの輝度レベルを有することができる。成分当たり８ビットの色深度では符号語が２５６しかなく、８ビットのみを使用して０〜１００００ｎｉｔの範囲全体を記述すると、輝度の各ジャンプ（jump）がより明確になる。ＰＱ−ＥＯＴＦを使用してビデオフレームを符号化する場合、出力ピクセル値０は最小輝度０ｎｉｔを表し、最大出力ピクセル値（例えば、１０ビット出力値の場合には１０２３）は最大輝度１０，０００ｎｉｔを表す。ただし、現在使用されている一般的なディスプレイは、その輝度レベルに達することができない。したがって、ディスプレイは、ビデオフレーム内で符号化される輝度値の一部を表現することができない。
【０００４】
添付の図面と共に以下の説明を参照することによって、本明細書に記載される方法及びメカニズムの利点をより良く理解することができる。
【図面の簡単な説明】
【０００５】
【図１】コンピューティングシステムの一実施形態のブロック図である。
【図２】ネットワークを介して送信されるビデオビットストリームを符号化するためのシステムの一実施形態のブロック図である。
【図３】コンピューティングシステムの別の実施形態のブロック図である。
【図４】１０ビットのビデオ出力ピクセル値対輝度をプロットするグラフの一実施形態を示す図である。
【図５】ガンマ及び知覚量子化（ＰＱ）電気光学伝達関数（ＥＯＴＦ）曲線のグラフの一実施形態を示す図である。
【図６】ピクセル値を、対象ディスプレイ（target display）に適合するフォーマットに再マッピングするためのグラフの一実施形態を示す図である。
【図７】輝度範囲が限られたディスプレイのために効果的な電気光学伝達関数を使用する方法の一実施形態を示す一般化されたフロー図である。
【図８】ピクセルデータのフォーマット変換を実行する方法の一実施形態を示す一般化されたフロー図である。
【図９】ピクセルデータを処理する方法の一実施形態を示す一般化されたフロー図である。
【図１０】ピクセルデータを符号化するための伝達関数を選択する方法の一実施形態を示す一般化されたフロー図である。
【図１１】コンピューティングシステムの一実施形態のブロック図である。
【発明を実施するための形態】
【０００６】
以下の説明では、本明細書に提示される方法及びメカニズムの十分な理解を提供するために、多くの具体的な詳細が記載される。しかしながら、当業者は、これらの具体的な詳細無しに様々な実施形態が実施され得ることを認識すべきである。場合によっては、本明細書で説明するアプローチを曖昧にすることを回避するために、周知の構造、構成要素、信号、コンピュータプログラム命令及び技術が詳細に示されていない。説明を簡単且つ明確にするために、図に示される要素は必ずしも縮尺通りに描かれていないことが理解されよう。例えば、一部の要素の寸法は、他の要素と比較して誇張される場合がある。
【０００７】
輝度範囲が限られたディスプレイのための効果的な電気光学伝達関数を実装するための様々なシステム、装置及び方法が本明細書に開示されている。プロセッサ（例えば、グラフィックスプロセッシングユニット（ＧＰＵ））は、表示するピクセルデータを符号化する要求を検出する。また、プロセッサは、対象ディスプレイの有効輝度範囲の指標を受信する。指標を受信したことに応じて、プロセッサは、対象ディスプレイの有効輝度範囲にマッピングするフォーマットでピクセルデータを符号化する。言い換えると、フォーマットは、対象ディスプレイによって表示可能な最小輝度値にマッピングされる最小の出力ピクセル値を有し、対象ディスプレイによって表示可能な最大輝度値にマッピングされる最大の出力ピクセル値を有する。
【０００８】
一実施形態では、プロセッサは、対象ディスプレイの有効輝度範囲外の輝度値にマッピングされる１つ以上の出力ピクセル値を有する第１のフォーマットのピクセルデータを受信する。したがって、これらの出力ピクセル値は、有用な情報を伝えることができない。プロセッサは、ピクセルデータを、第１のフォーマットから、対象ディスプレイの有効輝度範囲に適合する第２のフォーマットに変換する。言い換えると、プロセッサは、対象ディスプレイに送信される全ての値が、対象ディスプレイが実際に出力できる値になるように、ピクセル表現曲線をリスケール（rescales）する。次に、復号器は、第２のフォーマットのピクセルデータを復号化し、復号化されたピクセルデータが対象ディスプレイに送られる。
【０００９】
図１を参照すると、コンピューティングシステム１００の一実施形態のブロック図が示されている。一実施形態では、コンピューティングシステム１００は、少なくともプロセッサ１０５Ａ〜１０５Ｎと、入力／出力（Ｉ／Ｏ）インターフェース１２０と、バス１２５と、メモリコントローラ（複数可）１３０と、ネットワークインターフェース１３５と、メモリデバイス（複数可）１４０と、ディスプレイコントローラ（１５０）と、ディスプレイ１５５と、を含む。他の実施形態では、コンピューティングシステム１００は他の構成要素を含み、及び／又は、コンピューティングシステム１００は異なる構成とされる。プロセッサ１０５Ａ〜１０５Ｎは、システム１００に含まれる任意の数のプロセッサを表す。
【００１０】
一実施形態では、プロセッサ１０５Ａは、中央処理装置（ＣＰＵ）等の汎用プロセッサである。一実施形態では、プロセッサ１０５Ｎは、高並列アーキテクチャを有するデータ並列プロセッサである。データ並列プロセッサは、グラフィックスプロセッシングユニット（ＧＰＵ）、デジタルシグナルプロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）等を含む。いくつかの実施形態では、プロセッサ１０５Ａ〜１０５Ｎは、複数のデータ並列プロセッサを含む。一実施形態では、プロセッサ１０５Ｎは、ディスプレイ１５５に送られる複数のピクセルをディスプレイコントローラ１５０に提供するＧＰＵである。
【００１１】
メモリコントローラ（複数可）１３０は、Ｉ／Ｏインターフェース１２０に接続されたプロセッサ１０５Ａ〜１０５Ｎ及びＩ／Ｏデバイス（図示省略）によってアクセス可能な任意の数及びタイプのメモリコントローラを表す。メモリコントローラ（複数可）１３０は、任意の数及びタイプのメモリデバイス（複数可）１４０に接続されている。メモリデバイス（複数可）１４０は、任意の数及びタイプのメモリデバイスを表す。例えば、メモリデバイス（複数可）１４０内のメモリのタイプには、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ＮＡＮＤフラッシュメモリ、ＮＯＲフラッシュメモリ、強誘電体ランダムアクセスメモリ（ＦｅＲＡＭ）等が含まれる。
【００１２】
Ｉ／Ｏインターフェース１２０は、任意の数及びタイプのＩ／Ｏインターフェース（例えば、ＰＣＩ（peripheral component interconnect）バス、ＰＣＩ−Ｘ（PCI-Extended）、ＰＣＩＥ（PCI Express）バス、ギガビットイーサネット（登録商標）（ＧＢＥ）バス、ユニバーサルシリアルバス（ＵＳＢ））を表す。様々な周辺デバイス（図示省略）がＩ／Ｏインターフェース１２０に接続されている。このような周辺機器デバイスは、ディスプレイ、キーボード、マウス、プリンタ、スキャナ、ジョイスティック又は他のタイプのゲームコントローラ、メディア記録デバイス、外部記憶装置、ネットワークインターフェースカード等を含む（がこれらに限定されない）。ネットワークインターフェース１３５は、ネットワークを介してネットワークメッセージを送受信するために使用される。
【００１３】
様々な実施形態では、コンピューティングシステム１００は、コンピュータ、ラップトップ、モバイルデバイス、ゲームコンソール、サーバ、ストリーミングデバイス、ウェアラブルデバイス、又は、任意の様々な他のタイプのコンピューティングシステム若しくはコンピューティングデバイスである。コンピューティングシステム１００の構成要素の数は、実施形態によって異なることに留意されたい。例えば、他の実施形態では、図１に示す数よりも多い又は少ない構成要素が存在する。他の実施形態では、コンピューティングシステム１００は、図１に示されていない他の構成要素を含むことに留意されたい。さらに、他の実施形態では、コンピューティングシステム１００は、図１に示されている以外の方法で構成される。
【００１４】
図２を参照すると、ネットワークを介して送信されるビデオビットストリームを符号化するシステム２００の一実施形態のブロック図が示されている。システム２００は、サーバ２０５と、ネットワーク２１０と、クライアント２１５と、ディスプレイ２２０と、を含む。他の実施形態では、システム２００は、ネットワーク２１０を介してサーバ２０５に接続される複数のクライアントを含むことができ、複数のクライアントは、サーバ２０５によって生成された同じビットストリーム又は異なるビットストリームを受信する。また、システム２００は、複数のクライアントのために複数のビットストリームを生成する複数のサーバ２０５を含むことができる。一実施形態では、システム２００は、ビデオコンテンツのリアルタイムレンダリング及び符号化を実施するように構成されている。他の実施形態では、システム２００は、他のタイプのアプリケーションを実装するように構成されている。一実施形態では、サーバ２０５は、ビデオ又は画像フレームをレンダリングし、符号化器２３０は、これらのフレームをビットストリームに符号化する。次に、符号化されたビットストリームは、ネットワーク２１０を介してクライアント２１５に伝達される。クライアント２１５上の復号器２４０は、符号化されたビットストリームを復号化し、ビデオフレーム又は画像を生成してディスプレイ２５０に送る。
【００１５】
ネットワーク２１０は、無線接続、直接ローカルエリアネットワーク（ＬＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、イントラネット、インターネット、ケーブルネットワーク、パケット交換網、光ファイバネットワーク、ルータ、ストレージエリアネットワーク、若しくは、他のタイプのネットワークを含む、任意のタイプのネットワーク又はネットワークの組み合わせを表す。ＬＡＮの例には、イーサネット（登録商標）ネットワーク、ＦＤＤＩ（Fiber Distributed Data Interface）ネットワーク、トークンリングネットワーク等が含まれる。様々な実施形態では、ネットワーク２１０は、リモートダイレクトメモリアクセス（ＲＤＭＡ）ハードウェア及び／若しくはソフトウェア、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）ハードウェア及び／若しくはソフトウェア、ルータ、リピータ、スイッチ、グリッド、並びに／又は、他の構成要素を含む。
【００１６】
サーバ２０５は、ビデオ／画像フレームをレンダリングし、フレームをビットストリームに符号化するためのソフトウェア及び／又はハードウェアの任意の組み合わせを含む。一実施形態では、サーバ２０５は、１つ以上のサーバの１つ以上のプロセッサ上で実行される１つ以上のソフトウェアアプリケーションを含む。また、サーバ２０５は、ネットワーク通信機能、１つ以上の入出力デバイス、及び／又は、他の構成要素を含む。サーバ２０５のプロセッサ（複数可）は、任意の数及びタイプ（例えば、グラフィックスプロセッシングユニット（ＧＰＵ）、ＣＰＵ、ＤＳＰ、ＦＰＧＡ、ＡＳＩＣ）のプロセッサを含む。プロセッサ（複数可）は、プロセッサ（複数可）によって実行可能なプログラム命令を記憶する１つ以上のメモリデバイスに接続されている。同様に、クライアント２１５は、ビットストリームを復号し、フレームをディスプレイ２５０に送るためのソフトウェア及び／又はハードウェアの任意の組み合わせを含む。一実施形態において、クライアント２１５は、１つ以上のコンピューティングデバイスの１つ以上のプロセッサ上で実行される１つ以上のソフトウェアアプリケーションを含む。クライアント２１５は、コンピューティングデバイス、ゲームコンソール、モバイルデバイス、ストリーミングメディアプレーヤー、又は、他のタイプのデバイスとすることができる。
【００１７】
図３を参照すると、コンピューティングシステム３００の別の実施形態のブロック図が示されている。一実施形態では、システム３００は、ＧＰＵ３０５と、システムメモリ３２５と、ローカルメモリ３３０と、を含む。また、システム３００は、図を曖昧にすることを回避するために図示されていない他の構成要素を含む。ＧＰＵ３０５は、少なくとも、コマンドプロセッサ３３５と、ディスパッチユニット３５０と、計算ユニット３５５Ａ〜３５５Ｎと、メモリコントローラ３２０と、グローバルデータシェア３７０と、レベル１（Ｌ１）キャッシュ３６５と、レベル２（Ｌ２）キャッシュ３６０と、を含む。他の実施形態では、ＧＰＵ３０５は、他の構成要素を含み、図示された構成要素のうち１つ以上を省略し、図３に１つのインスタンスのみが示されている場合でも構成要素の複数のインスタンスを有し、及び／又は、他の適切な方法で構成されている。
【００１８】
様々な実施形態において、コンピューティングシステム３００は、任意の様々なタイプのソフトウェアアプリケーションを実行する。一実施形態では、所定のソフトウェアアプリケーションを実行する一部として、コンピューティングシステム３００のホストＣＰＵ（図示省略）が、ＧＰＵ３０５上で実行されるカーネルを起動する。コマンドプロセッサ３３５は、ホストＣＰＵからカーネルを受け取り、計算ユニット３５５Ａ〜３５５Ｎにディスパッチされるカーネルを、ディスパッチユニット３５０に発行する。計算ユニット３５５Ａ〜３５５Ｎ上で実行されるカーネル内のスレッドは、ＧＰＵ３０５内のグローバルデータシェア３７０、Ｌ１キャッシュ３６５及びＬ２キャッシュ３６０からデータを読み出し、これらにデータを書き込む。図３には示されていないが、一実施形態では、計算ユニット３５５Ａ〜３５５Ｎは、各計算ユニット３５５Ａ〜３５５Ｎ内に１つ以上のキャッシュ及び／又はローカルメモリを含む。
【００１９】
図４を参照すると、１０ビットのビデオ出力ピクセル値対輝度をプロットするグラフ４００の一実施形態の図が示されている。一実施形態では、ビデオソースによって生成された１０ビットのビデオ出力ピクセル値は、０ｎｉｔにマッピングされる最小の出力値と、１００００ｎｉｔにマッピングされる最大の出力値と、を含む。ｎｉｔの輝度に対してプロットされたこの１０ビットビデオ出力ピクセル値がグラフ４００に示されている。本明細書では、「出力ピクセル値」が「符号語」とも呼ばれることに留意されたい。
【００２０】
多くのディスプレイは、１００００ｎｉｔの最大輝度を生成することができない。例えば、一部のディスプレイは、６００ｎｉｔの最大輝度しか生成することができない。グラフ４００に示されている曲線を使用すると、６００ｎｉｔの輝度は１０ビットピクセル値７１３に対応する。これは、最大輝度が６００ｎｉｔのディスプレイの場合、７１３を超える全ての出力ピクセル値が６００ｎｉｔの輝度出力となるので無駄になることを意味する。別の例では、他のタイプのディスプレイは、１０００ｎｉｔの最大輝度しか生成することができない。ピクセル値７６８が１０００ｎｉｔの輝度に対応するため、最大輝度出力が１０００ｎｉｔのディスプレイの場合、７６８を超える全ての出力ピクセル値が無駄になる。
【００２１】
図５を参照すると、ガンマ及び知覚量子化（ＰＱ）電気光学伝達関数（ＥＯＴＦ）曲線のグラフ５００の一実施形態の図が示されている。グラフ５００の実線は、ｙ軸のｎｉｔの輝度に対して、１０ビットのビデオ出力ピクセル値であるｘ軸上にプロットされたガンマ２．２曲線を表す。グラフ５００の破線はＰＱ曲線を表し、ＰＱ曲線はＳＴ．２０８４標準とも呼ばれ、０〜１０，０００ｎｉｔをカバーする。高ダイナミックレンジ（ＨＤＲ）ディスプレイの場合、ガンマ符号化によって量子化エラーが発生することがよくある。したがって、一実施形態では、ＰＱ  ＥＯＴＦ符号化を使用して量子化エラーを低減する。ガンマ２．２曲線と比較すると、ＰＱ曲線は、低輝度範囲において、より多くのレベルでよりゆっくりと増加する。
【００２２】
図６を参照すると、ピクセル値を、対象ディスプレイに適合されたフォーマットに再マッピングするためのグラフ６００の一実施形態の図が示されている。グラフ６００は、ピクセルデータを表示するための符号化に使用可能な３つの異なるＰＱ曲線を示している。これらの曲線は、１０ビットの出力ピクセル値に対して示されている。他の実施形態では、出力ピクセル値の他のビットサイズに対する同様のＰＱ曲線が利用される。
【００２３】
ＰＱ曲線６０５は、輝度範囲が限られたディスプレイでは表示できない輝度値にマッピングされる無駄な符号語をもたらす典型的なＰＱ  ＥＯＴＦ符号化を示している。ＰＱ曲線６０５は、（図５の）グラフ５００に示される破線曲線と同じ曲線を示している。最大輝度が１０００ｎｉｔの対象ディスプレイの場合、部分的ＰＱ曲線６１０を利用して、１０ビット出力ピクセル値を輝度値にマッピングする。部分的ＰＱ曲線６１０の場合、最大１０ビット出力ピクセル値１０２４が、１０００ｎｉｔの輝度にマッピングされる。これにより、出力ピクセル値の全範囲を、対象ディスプレイが実際に生成することができる輝度値にマッピングすることができる。一実施形態では、ＰＱ曲線６０５を係数１０（１００００÷１０００ｎｉｔ）でスケーリング（scaling）することによって部分的ＰＱ曲線６１０が生成される。
【００２４】
最大輝度が１０００ｎｉｔの対象ディスプレイの場合、部分的ＰＱ曲線６１０を利用して、１０ビット出力ピクセル値を輝度値にマッピングする。部分的ＰＱ曲線６１０の場合、最大１０ビット出力ピクセル値１０２４は、６００ｎｉｔの輝度にマッピングされる。このマッピングにより、出力ピクセル値の全範囲で、対象ディスプレイが実際に表示可能な輝度値が生成される。一実施形態では、ＰＱ曲線６０５を係数５０／３（１０００÷６００ｎｉｔ）でスケーリングすることによって部分的ＰＱ曲線６１５が生成される。他の実施形態では、６００又は１０００ｎｉｔ以外の他の最大輝度値を有するディスプレイの輝度値に出力ピクセル値をマッピングするために、他の同様のタイプの部分的ＰＱ曲線が生成される。
【００２５】
図７を参照すると、輝度範囲が限られたディスプレイのために効果的な電気光学伝達関数を使用する方法７００の一実施形態が示されている。説明のために、本実施形態でのステップ及び図８〜図１０のステップを順次示す。しかしながら、記載された方法の様々な実施形態では、記載された要素の１つ以上は、同時に実行され、図示された順序と異なる順序で実行され、又は、完全に省略されることに留意されたい。必要に応じて、他の追加の要素も実行される。本明細書に記載される様々なシステム又は装置の何れも、方法７００を実施するように構成されている。
【００２６】
プロセッサは、表示用のピクセルデータを生成する要求を検出する（ブロック７０５）。実施形態に応じて、ピクセルデータは、表示される画像の一部であるか、表示されるビデオシーケンスのビデオフレームの一部である。また、プロセッサは、対象ディスプレイの有効輝度範囲を決定する（ブロック７１０）。一実施形態では、プロセッサは、対象ディスプレイの有効輝度範囲の指標を受信する。他の実施形態では、プロセッサは、他の適切な技術を使用して、対象ディスプレイの有効輝度範囲を決定する。一実施形態では、対象ディスプレイの有効輝度範囲は、対象ディスプレイによって生成可能な最小輝度及び最大輝度を示す値のペアとして特定される。
【００２７】
次に、プロセッサは、電気光学伝達関数（ＥＯＴＦ）を用いてピクセルデータを符号化して、対象ディスプレイの有効輝度範囲に適合させる（ブロック７１５）。一実施形態では、対象ディスプレイの有効輝度範囲に適合するようにピクセルデータを符号化することは、最小出力ピクセル値（例えば、０）を対象ディスプレイの最小輝度値にマッピングし、最大出力ピクセル値（例えば、１０ビットフォーマットで０ｘ３ＦＦ）を対象ディスプレイの最大輝度値にマッピングすることを含む。次に、最小値と最大値との間の出力ピクセル値は、任意の適切な知覚量子化伝達関数又は他のタイプの伝達関数を使用して、その間でスケーリングされる。知覚量子化伝達関数は、出力ピクセル値を、最小出力ピクセル値と最大出力ピクセル値との間に分布させて、人間の目の知覚に対して最適化する。一実施形態では、プロセッサは、スケーリングされたＰＱ  ＥＯＴＦを使用して、ピクセルデータを最小値と最大値との間で符号化する。方法７００は、ブロック７１５の後に終了する。
【００２８】
図８を参照すると、ピクセルデータのフォーマット変換を実行する方法８００の一実施形態が示されている。プロセッサは、表示用のピクセルデータを生成する要求を検出する（ブロック８０５）。プロセッサは、対象ディスプレイの有効輝度範囲の指標を受信する（ブロック８１０）。次に、プロセッサは、対象ディスプレイの有効輝度範囲と適合しない第１のフォーマットで符号化されたピクセルデータを受信する（ブロック８１５）。言い換えると、第１のフォーマットの符号語範囲の一部は、対象ディスプレイの有効輝度範囲外の輝度値にマッピングされる。一実施形態では、第１のフォーマットは、ガンマ２．２曲線に基づいている。他の実施形態では、第１のフォーマットは、他の様々なタイプのフォーマットである。
【００２９】
次に、プロセッサは、受信したピクセルデータを、第１のフォーマットから、対象ディスプレイの有効輝度範囲に適合する第２のフォーマットに変換する（ブロック８２０）。一実施形態では、第２のフォーマットは、第１のフォーマットと同じ又はそれ以下のピクセル当たりのビット数の構成要素値を使用する。対象ディスプレイの有効輝度範囲を適合させることにより、第２のフォーマットは、ピクセルデータのより帯域幅効率の高い符号化である。一実施形態では、第２のフォーマットは、スケーリングされたＰＱ  ＥＯＴＦに基づいている。他の実施形態では、第２のフォーマットは、他の様々なタイプのフォーマットである。次に、第２のフォーマットで符号化されたピクセルデータが対象ディスプレイに送られる（ブロック８２５）。方法８００は、ブロック８２５の後に終了する。或いは、第２のフォーマットのピクセルデータは、対象ディスプレイに送られるのではなく、ブロック８２０の後に、別のユニットに記憶されるか送信される。
【００３０】
図９を参照すると、ピクセルデータを処理する方法９００の一実施形態が示されている。プロセッサは、表示用のピクセルデータを符号化する要求を検出する（ブロック９０５）。次に、プロセッサは、第１のフォーマットのピクセルデータを受信する（ブロック９１０）。或いは、ブロック９１０において、プロセッサは、第１のフォーマットのピクセルデータをメモリから取得する。プロセッサは、対象ディスプレイの有効輝度範囲の指標を受信する（ブロック９１５）。プロセッサは、ピクセルデータを分析して、第１のフォーマットが対象ディスプレイの有効輝度範囲と適合するかどうかを判別する（条件付きブロック９２０）。言い換えれば、条件付きブロック９２０において、プロセッサは、第１のフォーマットが、出力値範囲のかなりの部分において、対象ディスプレイの有効輝度範囲外の輝度値にマッピングされるかどうかを判別する。一実施形態では、「かなりの部分」は、プログラム可能な閾値よりも大きい部分として定義される。
【００３１】
第１のフォーマットが対象ディスプレイの有効輝度範囲と適合する場合（条件付きブロック９２０：「はい」）、プロセッサは、ピクセルデータを第１のフォーマットで保持する（ブロック９２５）。方法９００は、ブロック９２５の後に終了する。そうではなく、第１のフォーマットが対象ディスプレイの有効輝度範囲と適合しない場合（条件付きブロック９２０：「いいえ」）、プロセッサは、受信したピクセルデータを、第１のフォーマットから、対象ディスプレイの有効輝度範囲と適合する第２のフォーマットに変換する（ブロック９３０）。方法９００は、ブロック９３０の後に終了する。
【００３２】
図１０を参照すると、ピクセルデータを符号化するための伝達関数を選択する方法１０００の一実施形態が示されている。プロセッサは、表示用のピクセルデータを符号化する要求を検出する（ブロック１００５）。要求の検出に応じて、プロセッサは、複数の伝達関数のうち、ピクセルデータを符号化するために選択する伝達関数を決定する（ブロック１０１０）。次に、プロセッサは、対象ディスプレイの有効輝度範囲に適合する第１の伝達関数を用いてピクセルデータを符号化する（ブロック１０１５）。一実施形態では、第１の伝達関数は、第２の伝達関数のスケーリングされたバージョンである。例えば、一実施形態では、第１の伝達関数は、符号語を第１の有効輝度範囲（０〜６００ｎｉｔ）にマッピングし、第２の伝達関数は、符号語を第２の有効輝度範囲（０〜１０，０００ｎｉｔ）にマッピングする。次に、プロセッサは、第１の伝達関数で符号化されたピクセルデータをディスプレイコントローラに提供して、対象ディスプレイに送る（ブロック１０２０）。方法１０００は、ブロック１０２０の後に終了する。
【００３３】
図１１を参照すると、コンピューティングシステム１１００の一実施形態のブロック図が示されている。一実施形態では、コンピューティングシステム１１００は、ディスプレイデバイス１１２０に接続された符号化器１１１０を含む。実施形態に応じて、符号化器１１１０は、ディスプレイデバイス１１２０に直接接続されるか、１つ以上のネットワーク及び／又はデバイスを介してディスプレイデバイス１１２０に接続される。一実施形態では、復号器１１３０は、ディスプレイデバイス１１２０内に統合されている。様々な実装形態では、符号化器１１１０は、ビデオストリームを符号化し、ビデオストリームをディスプレイデバイス１１２０に伝達する。復号器１１３０は、符号化されたビデオストリームを受信し、ディスプレイデバイス１１２０に表示可能なフォーマットに復号化する。
【００３４】
一実施形態では、符号化器１１１０は、ＧＰＵを備えたコンピュータに実装され、コンピュータは、ディスプレイポート（ＤｉｓｐｌａｙＰｏｒｔ）又は高解像度マルチメディアインターフェース（ＨＤＭＩ（登録商標））等のインターフェースを介してディスプレイデバイス１１２０に直接接続される。この実施形態では、符号化器１１１０からディスプレイデバイス１１２０に送信されるビデオストリームの帯域幅制限は、ディスプレイポート又はＨＤＭＩ（登録商標）ケーブルの最大ビットレートになる。ビデオストリームが低ビット深度を使用して符号化される、帯域幅が制限されたシナリオでは、本開示全体を通して説明する符号化技術が有利になり得る。
【００３５】
様々な実施形態では、本明細書で説明した方法及び／又はメカニズムを実施するために、ソフトウェアアプリケーションのプログラム命令が使用される。例えば、汎用プロセッサ又は専用プロセッサによって実行可能なプログラム命令が考えられる。様々な実施形態では、このようなプログラム命令は、高水準プログラミング言語によって表されている。他の実施形態では、プログラム命令は、高水準プログラミング言語からバイナリ形式、中間形式、又は、他の形式にコンパイルされる。或いは、ハードウェアの動作及び設計を記述するプログラム命令が記述される。このようなプログラム命令は、Ｃ言語等の高水準プログラミング言語で表される。或いは、Ｖｅｒｉｌｏｇ等のハードウェア設計言語（ＨＤＬ）が用いられる。様々な実施形態では、プログラム命令は、様々な非一時的なコンピュータ可読記憶媒体に記憶される。記憶媒体は、使用中にコンピューティングシステムによってアクセスされ、プログラムを実行するためにコンピューティングシステムにプログラム命令を提供する。一般的に、このようなコンピューティングシステムは、少なくとも１つ以上のメモリと、プログラム命令を実行するように構成された１つ以上のプロセッサと、を含む。
【００３６】
上述した実施形態は、実施形態の非限定的な例に過ぎないことを強調しておきたい。上記の開示が十分に理解されれば、多くの変形及び修正が当業者に明らかになるであろう。以下の特許請求の範囲は、このような変形及び修正の全てを包含するように解釈されることが意図される。
【図１】
2021532677.tif 000003
【図２】
2021532677.tif 000004
【図３】
2021532677.tif 000005
【図４】
2021532677.tif 000006
【図５】
2021532677.tif 000007
【図６】
2021532677.tif 000008
【図７】
2021532677.tif 000009
【図８】
2021532677.tif 000010
【図９】
2021532677.tif 000011
【図１０】
2021532677.tif 000012
【図１１】
2021532677.tif 000013
【国際調査報告】
2021532677.tif 000014
2021532677.tif 000015