(57)【要約】      （修正有）【課題】画像の有意な領域において発生する輝度レベルのコントラストを高める。【解決手段】画像全体を構成する多数の領域のそれぞれにおいて、全ピクセルの輝度値の合計を計算する。次に、各フレームの終わりにおける輝度の全合計によりヒストグラムを作成する。その後、輝度範囲が標準化されるように、ヒストグラムのスケールを再設定する。ヒストグラム作成後、フレームの統合輝度ヒストグラムを使用して、適切な伝達関数を作成する。より現実的な伝達関数を提供する個別のピクセルの輝度に比べ、画像内のオブジェクトの平均輝度が強く加重されるため、このようにして、画像の有意なオブジェクト内の詳細が増強される。【選択図】図６
2008072692.tif 000002
【特許請求の範囲】
【請求項１】
適応的コントラスト制御の方法であって、
それぞれが関連ピクセルデータを有する複数のピクセルで形成されたビデオフレームを受領するステップと、
前記受領したビデオフレームデータに対する統合輝度ヒストグラムを生成するステップと、
前記統合輝度ヒストグラムによる伝達関数を生成するステップと、
前記伝達関数を使用して前記ビデオフレームデータを更新するステップと
を備える方法。
【請求項２】
前記統合輝度ヒストグラムを生成するステップは、
前記ビデオフレームを、それぞれがほぼ同じ数のピクセルを有する多数の領域に分割するステップと、
各領域の前記ピクセルのそれぞれに対して輝度値を生成するステップと、
各領域内の前記ピクセルに対する前記輝度値を合計するステップと、
領域輝度値を生成するために、各領域に対する前記合計輝度値を各領域内のピクセル数で割るステップと、
前記領域輝度値を前記ビデオフレームに対して使用して、前記統合輝度ヒストグラムを生成するステップと、を備える請求項１記載の方法。
【請求項３】
更に、
Ｒij、Ｇij、ＢijをピクセルＰijのＲＧＢ色成分として、Ｙij＝（０．２５７＊Ｒij）＋（０．５０４＊Ｇij）＋（０．０９８＊Ｂij）に従って、ピクセルＰijに対するピクセル輝度値Ｙijを提供するステップを備える請求項１記載の方法。
【請求項４】
更に、前記統合輝度ヒストグラムのスケールを定めるステップを備える請求項１記載の方法。
【請求項５】
更に、前記更新されたビデオフレームをディスプレイに表示するステップを備える請求項１記載の方法。
【請求項６】
前記ディスプレイは、ＬＣＤスクリーン、ＯＬＥＤスクリーン、ＤＬＰスクリーン、ＣＲＴ、及びプラズマパネルを含むグループから選択される請求項５記載の方法。
【請求項７】
適応的コントラスト制御のためにコンピュータプロセッサにより実行可能なコンピュータプログラム製品であって、
それぞれが関連ピクセルデータを有する複数のピクセルで形成されたビデオフレームを受領するコンピュータコードと、
前記受領したビデオフレームデータに対する統合輝度ヒストグラムを生成するコンピュータコードと、
前記統合輝度ヒストグラムによる伝達関数を生成するコンピュータコードと、
前記伝達関数を使用して前記ビデオフレームデータを更新するコンピュータコードと、
前記コンピュータコードを格納するコンピュータ読み取り可能な媒体と
を備えるコンピュータプログラム製品。
【請求項８】
前記統合輝度ヒストグラムを生成するステップは、
前記ビデオフレームを、それぞれがほぼ同じ数のピクセルを有する多数の領域に分割するコンピュータコードと、
各領域の前記ピクセルのそれぞれに対して輝度値を生成するコンピュータコードと、
各領域内の前記ピクセルに対する前記輝度値を合計するコンピュータコードと、
領域輝度値を生成するために、各領域に対する前記合計輝度値を各領域内のピクセル数で割るコンピュータコードと、
前記領域輝度値を前記ビデオフレームに対して使用して、前記統合輝度ヒストグラムを生成するコンピュータコードと、を備える請求項７記載のコンピュータプログラム製品。
【請求項９】
更に、
Ｒij、Ｇij、ＢijをピクセルＰijのＲＧＢ色成分として、Ｙij＝（０．２５７＊Ｒij）＋（０．５０４＊Ｇij）＋（０．０９８＊Ｂij）に従って、ピクセルＰijに対するピクセル輝度値Ｙijを提供するコンピュータコードを備える請求項７記載のコンピュータプログラム製品。
【請求項１０】
更に、前記統合輝度ヒストグラムのスケールを定めるコンピュータコードを備える請求項７記載のコンピュータプログラム製品。
【請求項１１】
更に、前記更新されたビデオフレームをディスプレイに表示するコンピュータコードを備える請求項７記載のコンピュータプログラム製品。
【請求項１２】
前記ディスプレイは、ＬＣＤスクリーン、ＯＬＥＤスクリーン、ＤＬＰスクリーン、ＣＲＴ、及びプラズマパネルを含むグループから選択される請求項１１記載のコンピュータプログラム製品。
【請求項１３】
適応的コントラスト制御を提供する装置であって、
それぞれが関連ピクセルデータを有する複数のピクセルで形成されたビデオフレームを受領するように準備されたインタフェースと、
前記受領したビデオフレームデータに対する統合輝度ヒストグラムを生成するヒストグラム生成器と、
前記統合輝度ヒストグラムによる伝達関数を生成する伝達関数生成器と、
前記伝達関数を使用して前記ビデオフレームデータを更新する手段と
を備える装置。
【請求項１４】
前記統合輝度ヒストグラムを生成器は、
前記ビデオフレームを、それぞれがほぼ同じ数のピクセルを有する多数の領域に分割する手段と、
各領域の前記ピクセルのそれぞれに対して輝度値を生成する手段と、
各領域内の前記ピクセルに対する前記輝度値を合計する手段と、
領域輝度値を生成するために、各領域に対する前記合計輝度値を各領域内のピクセル数で割る手段と、
前記領域輝度値を前記ビデオフレームに対して使用して、前記統合輝度ヒストグラムを生成する手段と
を備える請求項１３記載の装置。
【請求項１５】
更に、
Ｒij、Ｇij、ＢijをピクセルＰijのＲＧＢ色成分として、Ｙij＝（０．２５７＊Ｒij）＋（０．５０４＊Ｇij）＋（０．０９８＊Ｂij）に従って、ピクセルＰijに対するピクセル輝度値Ｙijを提供する手段を備える請求項１３記載の装置。
【請求項１６】
更に、前記統合輝度ヒストグラムのスケールを定める手段を備える請求項１３記載の装置。
【請求項１７】
更に、前記更新されたビデオフレームをディスプレイに表示する手段を備える請求項１３記載の方法。
【請求項１８】
前記ディスプレイは、ＬＣＤスクリーン、ＯＬＥＤスクリーン、ＤＬＰスクリーン、ＣＲＴ、及びプラズマパネルを含むグループから選択される請求項１７記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオ及びグラフィックの画質の改善に関する。
【背景技術】
【０００２】
ディスプレイデバイスは、入力データをカラー又はグレースケールの２次元画像としてレンダリングする。入力データは、グラフィックの性質を有し得る。こうしたデバイスの例は、ＰＣディスプレイモニタである。入力データはビデオ信号になり得る。こうしたデバイスの例は、テレビ又はビデオモニタである。入力データは、グラフィックと、埋め込みビデオとの組み合わせになり得る。こうしたデバイスの例は、ウィンドウ内でビデオを表示する一つ以上のアプリケーションによりグラフィックを表示するＰＣディスプレイモニタ、或いは、グラフィック又は全画面ビデオ又はグラフィックとビデオとの組み合わせ、例えばピクチャインピクチャを表示する、２つ以上の入力ポートを備えたＰＣ／ＴＶディスプレイデバイスである。
【０００３】
視聴者は、通常、ディスプレイデバイスの色及びコントラストを手動で制御する。手動制御による問題は、考えられる全ての入力データに最適な表示品質が生じない点にある。例えば、色あせた画像のコントラストを高めるためにコントラスト制御を設定すると、通常の画像ではコントラスト過剰な画像となる。飽和度の高い画像には色飽和設定を低減するのが最適だが、入力を非飽和画像に切り替えた場合、この設定は、次善のものとなる。視聴者が継続的に表示設定を変更して、入力画像の性質に適合させることは、特に入力がビデオシーケンスである時、実用性又は利便性が低い。
【０００４】
コントラスト及び色の手動制御による別の問題は、入力データの性質に対する感度が低いことである。手動コントラスト制御では、輝度成分に倍数因子を適用する。輝度値のダイナミックレンジは有限であるため、影の詳細が見えるように暗い画像のコントラストを高めると、明るいハイライト部分で情報が失われる。この制御の倍数的性質は、大部分が明るい画像のコントラストを高められないことも意味する。
【０００５】
グラフィック又はビデオ画像に画像改善効果を与えるためには、画像コンテンツの性質を知る必要がある。グラフィック又はビデオ材料をフラットパネルディスプレイにおいて正確に表示するためには、材料の様々な品質を測定する必要がある。こうした測定のそれぞれのためにデジタル電子技術を実装することは、無駄になる場合がある。
【０００６】
例えば、図１ａは、代表的な中程度の明るさの画像と、画像の単一ピクセルに基づくヒストグラムである。図１ｂは、暗い（低明度）画像の一例と、画像の単一ピクセルに基づくヒストグラムである。図示したヒストグラムにおいて、水平軸線は、輝度値を表し、垂直軸線は、一定の輝度値を有する個別のピクセルの数を表す。例えば、図１ｂの暗いシーンに対して、輝度ヒストグラムは、殆どのピクセルが低い輝度を有することを示しており、図１ａの中程度の明るさのシーンに対して、輝度スペクトルは、幅が広く、より多くの明度の高いピクセルを示している。更に、暗い画像のヒストグラムを図２ａに示しており、こうした画像においてコントラストを強める伝達曲線を図２ｂに示す。ヒストグラムは、ピクセルの大部分が低輝度範囲にあることを示している。伝達関数は、画像の中輝度及び低輝度領域で輝度を実質的に変化させることなく、画像の高輝度領域において輝度を高める。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、残念なことに、伝達関数は、個別のピクセルの輝度値から導かれるヒストグラムに基づいているため、ピクセル輝度値における（視聴者が気づくとは限らない）小さな変化が、伝達関数と結果的な画像とに不均衡な影響を与える可能性がある。
【０００８】
したがって、必要なものは、上記の問題に対処するシステム及び方法である。本発明は、こうした必要性に対処する。
【課題を解決するための手段】
【０００９】
大まかに言って、本発明は、画像の有意な領域において発生する輝度レベルのコントラストを高めることに関する。本発明は、方法、システム、デバイス、装置、又はコンピュータ読み取り可能な媒体を含む多数の形で実現できる。本発明の幾つかの実施形態を、以下説明する。
【００１０】
一実施形態において、適応的コントラスト制御の方法は、以下の動作、即ち、それぞれが関連ピクセルデータを有する複数のピクセルで形成されたビデオフレームを受領するステップと、受領したビデオフレームデータに対する統合輝度ヒストグラムを生成するステップと、統合輝度ヒストグラムによる伝達関数を生成するステップと、伝達関数を使用してビデオフレームデータを更新するステップとを含む。
【００１１】
別の実施形態において、適応的コントラスト制御のためにコンピュータプロセッサにより実行可能なコンピュータプログラム製品は、それぞれが関連ピクセルデータを有する複数のピクセルで形成されたビデオフレームを受領するコンピュータコードと、受領したビデオフレームデータに対する統合輝度ヒストグラムを生成するコンピュータコードと、統合輝度ヒストグラムによる伝達関数を生成するステップと、伝達関数を使用してビデオフレームデータを更新するコンピュータコードと、コンピュータコードを格納するコンピュータ読み取り可能な媒体とを含む。
【００１２】
更に別の実施形態では、それぞれが関連ピクセルデータを有する複数のピクセルで形成されたビデオフレームを受領するように準備されたインタフェースと、受領したビデオフレームデータに対する統合輝度ヒストグラムを生成するヒストグラム生成器と、統合輝度ヒストグラムによる伝達関数を生成する伝達関数生成器と、伝達関数を使用してビデオフレームデータを更新する手段とを含む、適応的コントラスト制御を提供する装置を説明する。
【００１３】
本発明のその他の態様及び利点は、添付図面と併せて、以下の詳細な説明から明らかとなろう。
【発明を実施するための最良の形態】
【００１４】
次に、添付図面に一例を示した本発明の特定の実施形態を詳細に説明する。以下、本発明を特定の実施形態に関連して説明するが、本発明を説明した実施形態に限定するものではないことは理解されよう。逆に、添付特許請求の範囲に記載した本発明の趣旨及び範囲に入り得る代替物、変形例、及び等価物を含むものである。
【００１５】
本発明の目的は、可能な最善の形でソース画像をレンダリングするために、ＬＣＤの幾分限定された輝度範囲を利用することである。アーチファクトの追加を最小限に抑え、目に見える詳細の量を最大にして、画像の鮮明さを高めるためのものである。本発明では、画像の有意な領域において発生する輝度レベルのコントラストを高める。
【００１６】
例えば、液晶ディスプレイ（ＬＣＤ）、有機発光ダイオード（ＯＬＥＤ）スクリーン、デジタルライトプロセッサ（ＤＬＰ）、陰極線管（ＣＲＴ）、プラズマパネル、又は他の種類のディスプレイといったディスプレイでの提示用の画像を準備する時には、ピクセル輝度レベルを調整することで、画像のコントラストを強めるのが望ましい。伝達曲線は、入力輝度レベルと出力輝度レベルとの間のマッピングを記述するために使用できる。異なる画像は異なる輝度ヒストグラムを有するため、最適なコントラスト増大を得るために、間近の特定の画像に伝達曲線を合わせることが望ましい。
【００１７】
本発明では、画像全体を構成する多数の領域のそれぞれにおいて、全ピクセルの輝度値の合計を計算する。次に、各フレームの終わりにおける輝度の全合計によりヒストグラムを作成する。その後、輝度範囲が標準化されるように、ヒストグラムのスケールを再設定する。例えば、合計２２０の輝度ビンに対して、ビンの平均値が２６５である場合、輝度範囲は、１６乃至２３５にできる。ヒストグラム作成後、フレームの統合輝度ヒストグラムを使用して、適切な伝達関数を作成する。より現実的な伝達関数を提供する個別のピクセルの輝度に比べ、画像内のオブジェクトの平均輝度が強く加重されるため、このようにして、画像の有意なオブジェクト内の詳細が増強される。
【００１８】
図５に示した特定の実施例では、ビデオフレームＦｓをＭピクセル×Ｎピクセル、合計Ｐピクセル（即ち、Ｐ＝Ｍ×Ｎ）の領域Ｒiへと分割し、各ピクセルは、式１に示したように、Ｇ（緑）／２＋Ｒ（赤）／４＋Ｂ（青）／８（ＲＧＢからＹＵＶへの変換のＹ部分の概算）として計算された特定の輝度値Ｙijを有する。
【００１９】
【数１】
2008072692.tif 000003
【００２０】
領域Ｒｉにおける各ピクセルの輝度値を計算後、式（２）を使用して、領域Ｒｉにおける全ピクセルの全輝度値の平均値を計算する。
【００２１】
【数２】
2008072692.tif 000004
【００２２】
次に、統合輝度値Ｙregを使用して、ビデオフレームＦsの統合輝度ヒストグラムＨintを生成し、ヒストグラムから伝達関数Ｔsを提供し、下記のプロセス６００に従い、フレーム毎に適用する。
【００２３】
図６は、本発明の一実施形態によるプロセス６００を詳述するフローチャートである。プロセス６００は、６０２において、ピクセルデータの形態でビデオフレームを受領することで開始される。６０４において、ピクセルデータがＹＵＶ形式ではない場合、６０６において、ピクセルデータをＹＵＶ形式に変換する。何れの場合も、６０８において、ビデオフレームを多数の領域に分割し、６１０において、領域のそれぞれの全ピクセル輝度の合計に基づいて、各領域の輝度値を計算する。６１２では、全領域を含む輝度ヒストグラムを生成する。次に、６１４において、特定のヒストグラム値とフラットヒストグラム値である１との間の差を得ることで、ヒストグラム差分値を生成する。６１６において、ヒストグラム差分値を強度係数ＳFにより乗算し、再びフラット値に加算する。これにより、ヒストグラムは、強度値ゼロ（「０」）が平坦線を発生させ、強度値１がオリジナルのヒストグラムを発生させるように条件付けされる。次に、６１８では、限界より上の任意のヒストグラム値を均等に分け合うことでヒストグラムに再び加算されるような形で、条件付けされたヒストグラム値が限定される（これにより、最終的な伝達関数のあらゆる点で最大傾斜が限定される）。６２０では、伝達関数を値０で開始して、後続の各点において、平坦線のヒストグラムが直線の伝達関数を発生させる（出力値が入力値と等しくなる）ように、ヒストグラムからの対応値を計算に入れることで、条件付きヒストグラムを統合して、伝達関数を形成する。６２２において、伝達関数を適用する。
【００２４】
説明した実施形態では、十分なメモリ（フレームバッファ等）が利用可能な場合、更新済み伝達関数を、その伝達関数の生成元のフレームに適用できるように、伝達関数がフレーム毎に更新されることに留意されたい。そうでない場合、十分なメモリが利用できなければ、更新済み伝達関数は、伝達関数の生成元のフレームに続く適切な数のフレームに適用できる（１又は２フレーム後等）。
【００２５】
本発明の実施形態は、本明細書で開示した装置を含め、デジタル電子回路、或いはコンピュータハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせにおいて実現できる。本発明の装置の実施形態は、プログラム可能なプロセッサで実行するために機械読み取り可能なストレージデバイスで明白に具現化されたコンピュータプログラム製品において実現可能であり、本発明の方法ステップは、命令のプログラムを実行し、入力データを操作して出力を生成することで本発明の機能を実行する、プログラム可能なプロセッサにより実行できる。本発明の実施形態は、データストレージシステムと、少なくとも一つの入力デバイスと、少なくとも一つの出力デバイスとからデータ及び命令を受領し、これらに対してデータ及び命令を送信するように結合された、少なくとも一つのプログラム可能なプロセッサを含む、プログラム可能なシステム上で実行可能な、一つ以上のコンピュータプログラムにおいて実施できるという利点を有する。各コンピュータプログラムは、高レベル手続き型又はオブジェクト指向プログラミング言語において、或いは、望ましい場合には、アセンブリ言語又は機械語において、実現可能であり、何れの場合においても、言語は、コンパイラ型又はインタプリタ型言語にできる。
【００２６】
適切なプロセッサは、一例として、汎用及び特殊用途マイクロプロセッサの両方を含む。一般に、プロセッサは、読み出し専用メモリ及び／又はランダムアクセスメモリから命令及びデータを受領する。一般に、コンピュータは、データファイルを格納する一つ以上の大量記憶デバイスを含み、こうしたデバイスは、内蔵ハードディスク及びリムーバブルディスクのような磁気ディスクと、光磁気ディスクと、光ディスクとを含む。コンピュータプログラムの命令及びデータを明白に具現化するのに適したストレージデバイスは、例えば、ＥＰＲＯＭ、ＥＥＰＲＯＭ、及びフラッシュメモリデバイスのような半導体メモリデバイスと、内蔵ハードディスク及びリムーバブルディスクのような磁気ディスクと、光磁気ディスクと、ＣＤ−ＲＯＭディスクとを含め、あらゆる形態の不揮発性メモリを含む。上記のものは何れもＡＳＩＣ（特定用途向け集積回路）により補足すること、或いは、これに組み込むことが可能である。
【００２７】
以上、本発明の多数の実施例について説明してきたが、本発明の趣旨及び範囲から逸脱することなく様々な変形を施し得ることは理解されよう。したがって、添付特許請求の範囲には他の実施形態が含まれる。
【図面の簡単な説明】
【００２８】
【図１】本発明の一実施形態による、中程度の明るさの画像の一例と、画像に対するヒストグラムとを示す図である。
【図２】本発明の一実施形態による、暗い（低明度）画像の一例と、画像に対するヒストグラムとを示す図である。
【図３】図１に示した画像等のコントラストを強める伝達曲線を示す図である。
【図４】図２に示した画像等のコントラストを強める伝達曲線を示す図である。
【図５】本発明の実施例をグラフィックにより示す図である。
【図６】本発明の一実施形態による、統合輝度ヒストグラムに基づいて伝達関数を生成するプロセスを詳述するフローチャートである。
【図１】
2008072692.tif 000005
【図２】
2008072692.tif 000006
【図３】
2008072692.tif 000007
【図４】
2008072692.tif 000008
【図５】
2008072692.tif 000009
【図６】
2008072692.tif 000010
【外国語明細書】
1. TITLE OF THE INVENTION
INTEGRATED HISTOGRAM AUTO ADAPTIVE CONTRAST CONTROL (ACC)
2. DETAILED DESCRIPTION OF THE INVENTION
BACKGROUND
Field of the Invention
[0001]    This invention generally relates to improving video and graphics quality.
Description of Related Art
[0002]    A display device renders input data as a two-dimensional image in color or grayscale. The input data may be graphical in nature. An example of such a device is a PC display monitor. The input data may be a video signal. An example of such a device is a TV or video monitor. The input data may be a combination of graphics and embedded video. An example of such a device is a PC display monitor displaying graphics with one or applications displaying video in a window, or a PC/TV display device with two or more input ports displaying graphics or full-screen video or a combination of graphics and video, e.g. Picture-in-Picture.
[0003]    A viewer typically manually controls the color and contrast of a display device. The issue with manual control is that it does not result in optimal display quality for all possible input data. For example, setting the contrast control to increase the contrast of a washed out image will result in over-contrasted images for a normal image. Decreasing the color saturation setting for a highly saturated image would be optimal, but if the input changes to a de-saturated image, this setting would now be sub-optimal. It is not feasible or convenient for a viewer to continuously change display settings to adapt to the nature of the input image, particularly when the input is a video sequence.
[0004]    Another problem with manual control of contrast and color is that it is not sensitive to the nature of the input data. Manual contrast control applies a multiplicative factor to the input luma component. Due to the finite dynamic range of luma values, increasing the contrast of a dark image in order to be able to see the shadow details results in loss of information in the bright highlights. The multiplicative nature of this control also implies that there is no possibility of increasing the contrast of a predominantly bright image.
[0005]    In order to apply image improvement effects to graphics or video images it is necessary to know the nature of the image content. In order to correctly display graphics or video material on a flat panel display, various qualities of the material have to be measured. Implementing digital electronics for each of these measurements can be wasteful.
[0006]    For example, Fig. 1a shows representative medium-bright image and a single pixel based histogram for the image.  Fig.1b shows an example dark (low-brightness) image and a single pixel based histogram for the image.  In the shown histograms, the horizontal axis represents luminance values and the vertical axis represents the number of individual pixels having a given luminance value.  For example, for the dark scene in Fig.1b, the luminance histogram indicates that most of the pixels have low luminance, while for the medium-bright scene in Fig. 1a the luminance spectrum is wider, indicating a larger number of brighter pixels.  Furthermore, a histogram for a dark image is shown in Fig. 2a and a transfer curve for enhancing the contrast in such an image is shown in Fig. 2b.  The histogram indicates that most of the pixels are in the low-luminance range.  The transfer function increases luminance in the high-luminance regions of the image without substantially changing the luminance in the mid- and low-luminance regions of the image.
[0007]    Unfortunately, however, since the transfer functions are based upon histograms that are derived from the luminance values of individual pixels, small variations in pixel luminance values (which would not in all likelihood be noticed by a viewer) can have a disproportionate impact on the transfer function and the resulting image.
[0008]    Accordingly, what is needed is a system and method to address the above-identified problems. The present invention addresses such a need.
Summary of the invention
[0009]    Broadly speaking, the invention relates to increasing the contrast for luminance levels that occur in significant areas of the image.  The invention can be implemented in numerous ways, including as a method, system, device, apparatus, or computer readable medium.  Several embodiments of the invention are discussed below.
[0010]    In one embodiment, a method of adaptive contrast control includes the following operations, receiving video frame formed of a plurality of pixels each having associated pixel data, generating an integrated luminance histogram for the received video frame data, generating a transfer function in accordance with the integrated luminance histogram, and updating the video frame data using the transfer function.
[0011]    In another embodiment, computer program product executable by a computer processor for adaptive contrast control includes computer code for receiving video frame formed of a plurality of pixels each having associated pixel data, computer code for generating an integrated luminance histogram for the received video frame data, computer code for generating a transfer function in accordance with the integrated luminance histogram, computer code for updating the video frame data using the transfer function, and computer readable medium for storing the computer code.
[0012]    In still another embodiment, An apparatus for providing adaptive contrast control is described that includes an interface arranged to receive a video frame formed of a plurality of pixels each having associated pixel data, a histogram generator for generating an integrated luminance histogram for the received video frame data, a transfer function generator for generating a transfer function in accordance with the integrated luminance histogram, and a means for updating the video frame data using the transfer function.
[0013]    Other aspects and advantages of the invention will become apparent from the following detailed description taken in conjunction with the accompanying drawings.
DETAILED DESCRIPTION OF SELECTED EMBODIMENTS
[0014]    Reference will now be made in detail to a particular embodiment of the invention an example of which is illustrated in the accompanying drawings.  While the invention will be described in conjunction with the particular embodiment, it will be understood that it is not intended to limit the invention to the described embodiment.  To the contrary, it is intended to cover alternatives, modifications, and equivalents as may be included within the spirit and scope of the invention as defined by the appended claims.
[0015]    The purpose of the invention is to utilize the somewhat limited luminance range of the LCD to render the source images in the best possible way.  The intent is to maximize the amount of visible detail and increase the vividness of the image with minimal addition of artifacts.  The invention provides for increasing the contrast for luminance levels that occur in significant areas of the image.
[0016]    When preparing an image for presentation, for example on a display such as a Liquid Crystal Display (LCD), an Organic Light Emitting Diode (OLED) screen, a Digital Light Processor (DLP), a Cathode Ray Tube (CRT), a plasma panel or other type of display, it is desirable to enhance the contrast of the image by adjusting pixel luminance levels.  A transfer curve can be used for describing a mapping between input luminance levels and output luminance levels.  Since different images have different luminance histograms, it is desirable to tailor the transfer curve to the particular image at hand in order to obtain optimal contrast enhancement.
[0017]    The invention provides for calculating the sum of the luminance values of all pixels in each of a number of regions making up the whole image.  A histogram is then created of all the sums of luminance at the end of each frame.  The histogram is then rescaled such that the luminance range is normalized.  For example, the luminance range can be from 16 to 235 for a total of 220 luminance bins where an average value of the bins is 256.  Once the histogram has been created, an appropriate transfer function is created using the integrated luminance histogram for the frame.  In this way detail within significant objects in the image are enhanced since the average luminance of objects in an image are weighted more than then the luminance of individual pixels providing a more realistic transfer function.
[0018]    In a particular implementation as shown in Fig. 5, a video frame Fs is divided into regions Ri of M pixels by N pixels for a total of P pixels (i.e., P = M x N) each having a particular luminance value Yi,j calculated as G(reen)/2 plus R(ed)/4 plus B(lue)/8 (being an approximation to the Y portion of the RGB to YUV conversion) as shown in eq. 1
Yi,j  =  (0.257 * Ri,j) + (0.504 * Gi,j) + (0.098 * Bi,j)   (eq. 1)
Once the luminance value for each pixel in a region Ri is calculated, an average value of all the luminance values of all the pixels in the region Ri is then calculated using equation (2):
[0019]    
2008072692.tif 000011
[0020]    An integrated luminance histogram Hint for the video frame Fs is then generated using the integrated luminance values{ EMBED Equation.3  , } from which a transfer function Ts is provided and applied on a frame by frame basis according to the process 600 described below.
[0021]    Fig. 6 shows a flowchart detailing a process 600 in accordance with an embodiment of the invention.  The process 600 begins at 602 by receiving a video frame in the form of pixel data.  If, at 604, the pixel data is not YUV format, that the pixel data is converted to YUV format at 606.  In any case, at 608, the video frame is split into a number of regions while at 610, a luminance value for each region is calculated based upon a summation of all pixel luminance values for each of the regions.  At 612, a luminance histogram is generated that includes all regions. Next, at 614 a histogram difference value is generated by taking a difference between a particular histogram value and a flat histogram value of one ("1"). At 616, the histogram difference value is then multiplied by a strength factor SF which is then added back to the flat value.  In this way, the histogram is conditioned such that a strength value of zero ("0") results in a flat line whereas a strength value of one ("1") results in the original histogram.  At 618, the conditioned histogram values are then limited (thereby limiting the maximum slope at any point in the final transfer function) such that any histogram values above the limit are added back into the histogram by sharing them evenly.  At 620, a transfer function is created by integrating the conditioned histogram by starting the transfer function at a value of 0 and then for each subsequent position, add in the corresponding value from the histogram such that a flat line histogram would give a straight line transfer function (where output values would equal input values).  The transfer function is then applied at 622.
[0022]    It should be noted that in the described embodiment, the transfer function is updated every frame such that if sufficient memory is available (such as a frame buffer) the updated transfer function can be applied to the frame from which the transfer function was generated.  Otherwise, if sufficient memory is not available, then the updated transfer function can be applied an appropriate number of frames subsequent to the frame from which it was generated (such as one or two frames later).
[0023]    Embodiments of the invention, including the apparatus disclosed herein, can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. Apparatus embodiments of the invention can be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a programmable processor; and method steps of the invention can be performed by a programmable processor executing a program of instructions to perform functions of the invention by operating on input data and generating output.  Embodiments of the invention can be implemented advantageously in one or more computer programs that are executable on a programmable system including at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and at least one output device. Each computer program can be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language if desired; and in any case, the language can be a compiled or interpreted language.
[0024]    Suitable processors include, by way of example, both general and special purpose microprocessors. Generally, a processor will receive instructions and data from a read-only memory and/or a random access memory. Generally, a computer will include one or more mass storage devices for storing data files; such devices include magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and optical disks. Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM disks. Any of the foregoing can be supplemented by, or incorporated in, ASICs (application-specific integrated circuits).
[0025]    A number of implementations of the invention have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention.  Accordingly, other embodiments are within the scope of the following claims.
3. BRIEF DESCRIPTION OF THE DRAWINGS
[0026]
Fig. 1 shows an example medium-bright image and a histogram for the image, in accordance with an embodiment of the present invention.
Fig. 2 shows an example dark (low-brightness) image and a histogram for the image, in accordance with an embodiment of the present invention.
Fig. 3 shows a transfer curve for enhancing the contrast in such the image shown in Fig. 1.
Fig. 4 shows a transfer curve for enhancing the contrast in such the image shown in Fig. 2.
Fig. 5 graphically illustrates an implementation of the invention.
Fig. 6 shows a flowchart detailing a process for generating a transfer function based upon an integrated luminance histogram in accordance with an embodiment of the invention.
1.  A method of adaptive contrast control, comprising:
receiving video frame formed of a plurality of pixels each having associated pixel data;
generating an integrated luminance histogram for the received video frame data; 
generating a transfer function in accordance with the integrated luminance histogram; and
updating the video frame data using the transfer function.
2.  A method as recited in claim 1, wherein generating the integrated luminance histogram, comprises:
splitting the video frame into a number of regions each having approximately the same number of pixels;
generating a luminance value for each of the pixels for each region;
summing the luminance values for the pixels in each region;
dividing the summed luminance value for each region by the number of pixels in each region to generate a region luminance value; and
generating the integrated luminance histogram using the region luminance values for the video frame.
3.  A method as recited in claim 1, further comprising:
providing a pixel luminance value Yi,j  for a pixel Pij according to Yi,j  =  (0.257 * Ri,j) + (0.504 * Gi,j) + (0.098 * Bi,j) where Ri,j, Gi,j, Bi,j, are RGB color components for a pixel Pij.
4.  A method as recited in claim 1, further comprising:
scaling the integrated luminance histogram.
5.  A method as recited in claim 1, further comprising displaying the updated video frame on a display.
6.  A method as recited in claim 5, wherein the display is selected from the group that includes an LCD screen, an OLED screen, a DLP screen, a CRT and a plasma panel.
7.  Computer program product executable by a computer processor for adaptive contrast control, comprising:
computer code for receiving video frame formed of a plurality of pixels each having associated pixel data;
computer code for generating an integrated luminance histogram for the received video frame data;
computer code for generating a transfer function in accordance with the integrated luminance histogram;
computer code for updating the video frame data using the transfer function; and
computer readable medium for storing the computer code.
8.  Computer program product as recited in claim 7, wherein generating the integrated luminance histogram, comprises:
computer code for splitting the video frame into a number of regions each having approximately the same number of pixels;
computer code for generating a luminance value for each of the pixels for each region;
computer code for summing the luminance values for the pixels in each region;
computer code for dividing the summed luminance value for each region by the number of pixels in each region to generate a region luminance value; and
computer code for generating the integrated luminance histogram using the region luminance values for the video frame.
9.  Computer program product as recited in claim 7, further comprising:
computer code for providing a pixel luminance value Yi,j  for a pixel Pij according to Yi,j  =  (0.257 * Ri,j) + (0.504 * Gi,j) + (0.098 * Bi,j) where Ri,j, Gi,j, Bi,j, are RGB color components for a pixel Pij.
10.  Computer program product as recited in claim 7, further comprising:
computer code for scaling the integrated luminance histogram.
11.  Computer program product as recited in claim 7, further comprising:
computer code for displaying the updated video frame on a display.
12.  Computer program product as recited in claim 11, wherein the display is selected from the group that includes an LCD screen, an OLED screen, a DLP screen, a CRT and a plasma panel.
13.  An apparatus for providing adaptive contrast control, comprising:
an interface arranged to receive a video frame formed of a plurality of pixels each having associated pixel data;
a histogram generator for generating an integrated luminance histogram for the received video frame data;
a transfer function generator for generating a transfer function in accordance with the integrated luminance histogram; and
a means for updating the video frame data using the transfer function.
14.  An apparatus as recited in claim 13, wherein generating the integrated luminance histogram, comprises:
means for splitting the video frame into a number of regions each having approximately the same number of pixels;
means for generating a luminance value for each of the pixels for each region;
means for summing the luminance values for the pixels in each region;
means for dividing the summed luminance value for each region by the number of pixels in each region to generate a region luminance value; and
means for generating the integrated luminance histogram using the region luminance values for the video frame.
15.  An apparatus as recited in claim 13, further comprising:
means for providing a pixel luminance value Yi,j  for a pixel Pij according to Yi,j  =  (0.257 * Ri,j) + (0.504 * Gi,j) + (0.098 * Bi,j) where Ri,j, Gi,j, Bi,j, are RGB color components for a pixel Pij.
16.  An apparatus as recited in claim 13, further comprising:
means for scaling the integrated luminance histogram.
17.  An apparatus as recited in claim 13, further comprising:
means for displaying the updated video frame on a display.
18.  An apparatus as recited in claim 17, wherein the display is selected from the group that includes an LCD screen, an OLED screen, a DLP screen, a CRT and a plasma panel.
1. ABSTRACT
The invention provides for calculating the sum of the luminance values of all pixels in each of a number of regions making up the whole image.  A histogram is then created of all the sums of luminance at the end of each frame.  The histogram is then rescaled such that the luminance range is normalized.  Once the histogram has been created, an appropriate transfer function is created using the integrated luminance histogram for the frame.  In this way detail within significant objects in the image are enhanced since the average luminance of objects in an image are weighted more than then the luminance of individual pixels providing a more realistic transfer function.
2. REPRESENTATIVE DRAWING
Fig.6
2008072692.tif 000012
2008072692.tif 000013
2008072692.tif 000014
2008072692.tif 000015
2008072692.tif 000016
2008072692.tif 000017