(57)【特許請求の範囲】
【請求項１】
フレーム毎に入力される入力画像の階調特性を階調補正テーブルを用いて変換し、当該変換後の画像を出力画像として順次出力する画像処理装置であって、
前記階調補正テーブルを保持する保持手段と、
前記入力画像が表現可能な輝度値の範囲を複数のレベルに分割した場合に、同じレベルに属する輝度値を有する前記入力画像中の画素の数をレベル毎に集計することで、レベル毎の画素数を示すヒストグラムデータを作成する作成手段と、
第１フレームの入力画像について前記作成手段が作成したヒストグラムデータと、前記第１フレームの入力画像の直前に入力された第２フレームの入力画像について前記作成手段が作成したヒストグラムデータと、を用いて、同じレベルに属する画素数の差をレベル毎に求める計算手段と、
前記計算手段が求めたレベル毎の差に基づいて、前記保持手段が保持する階調補正テーブルを更新するか否かを判断する判断手段と、
前記判断手段が更新すると判断した場合には、前記保持手段が保持する階調補正テーブルを更新する更新手段と、
前記第１フレームの入力画像の階調特性を、前記保持手段が保持する階調補正テーブルを用いて変換した結果を、前記第１フレームの出力画像として出力する手段と
を備え、
前記計算手段は、
前記第１フレームの入力画像について前記作成手段が作成したヒストグラムデータを用いて、最高輝度値が属するレベルと、最低輝度値が属するレベルと、を特定する手段と、
前記第１フレームの入力画像について前記作成手段が作成したヒストグラムデータにおいて最高輝度値が属するレベルから最低輝度値が属するレベルまでの各レベルと、前記第２フレームの入力画像について前記作成手段が作成したヒストグラムデータにおいて当該各レベルに対応する各レベルと、で、対応するレベル同士で前記差を求める手段と、
求めたレベル毎の差の総和を求める手段と、
求めたレベル毎の差のうち、閾値より大きい差の数をカウントする手段とを備え、
前記判断手段は、前記総和が閾値よりも小さい、又は前記差の数が閾値よりも小さい場合には、前記保持手段が保持する階調補正テーブルを更新しないと判断し、前記総和が閾値以上、及び前記差の数が閾値以上である場合には、前記保持手段が保持する階調補正テーブルを更新すると判断する
ことを特徴とする画像処理装置。
【請求項２】
前記更新手段は、
レベルを示す数と当該レベルにおける画素数とに比例する式に基づいて計算した値を当該レベルに対する値として求める処理を各レベルについて行うことで、各レベルについて求めた値を保持する暫定階調補正テーブルを作成し、
前記第２フレームの画像に対して適用された階調補正テーブルと、前記暫定階調補正テーブルと、を予め定めた割合で合成した結果で、前記保持手段が保持する階調補正テーブルを更新することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記判断手段は、前記第１フレームの入力画像について前記作成手段が作成したヒストグラムデータにおいて最低輝度値が属するレベルと、前記第２フレームの入力画像について前記作成手段が作成したヒストグラムデータにおいて最低輝度値が属するレベルと、の差が閾値以上であれば、前記保持手段が保持する階調補正テーブルを更新すると判断することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
階調補正テーブルを保持する保持手段を備え、フレーム毎に入力される入力画像の階調特性を前記階調補正テーブルを用いて変換し、当該変換後の画像を出力画像として順次出力する画像処理装置が行う画像処理方法であって、
前記画像処理装置の作成手段が、前記入力画像が表現可能な輝度値の範囲を複数のレベルに分割した場合に、同じレベルに属する輝度値を有する前記入力画像中の画素の数をレベル毎に集計することで、レベル毎の画素数を示すヒストグラムデータを作成する作成工程と、
前記画像処理装置の計算手段が、第１フレームの入力画像について前記作成工程で作成したヒストグラムデータと、前記第１フレームの入力画像の直前に入力された第２フレームの入力画像について前記作成工程で作成したヒストグラムデータと、を用いて、同じレベルに属する画素数の差をレベル毎に求める計算工程と、
前記画像処理装置の判断手段が、前記計算工程で求めたレベル毎の差に基づいて、前記保持手段が保持する階調補正テーブルを更新するか否かを判断する判断工程と、
前記画像処理装置の更新手段が、前記判断工程で更新すると判断した場合には、前記保持手段が保持する階調補正テーブルを更新する更新工程と、
前記画像処理装置の出力手段が、前記第１フレームの入力画像の階調特性を、前記保持手段が保持する階調補正テーブルを用いて変換した結果を、前記第１フレームの出力画像として出力する工程と
を備え、
前記計算工程は、
前記第１フレームの入力画像について前記作成工程で作成したヒストグラムデータを用いて、最高輝度値が属するレベルと、最低輝度値が属するレベルと、を特定する工程と、
前記第１フレームの入力画像について前記作成工程で作成したヒストグラムデータにおいて最高輝度値が属するレベルから最低輝度値が属するレベルまでの各レベルと、前記第２フレームの入力画像について前記作成工程で作成したヒストグラムデータにおいて当該各レベルに対応する各レベルと、で、対応するレベル同士で前記差を求める工程と、
求めたレベル毎の差の総和を求める工程と、
求めたレベル毎の差のうち、閾値より大きい差の数をカウントする工程とを備え、
前記判断工程では、前記総和が閾値よりも小さい、又は前記差の数が閾値よりも小さい場合には、前記保持手段が保持する階調補正テーブルを更新しないと判断し、前記総和が閾値以上、及び前記差の数が閾値以上である場合には、前記保持手段が保持する階調補正テーブルを更新すると判断する
ことを特徴とする画像処理方法。
【請求項５】
コンピュータを、請求項１乃至３の何れか１項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
【請求項６】
請求項５に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の階調特性を補正するための技術に関するものである。
【背景技術】
【０００２】
近年、映像のディジタル化や高精細化が進んでいる。例えば、テレビやパソコン用のディスプレイに対しても、より品質の高い映像を表示することが求められている。そのためディスプレイにおいては、入力される映像をより高品質に表示するためのさまざまな画像処理が行われるようになってきている。
【０００３】
映像をより高品質に表示するためのひとつの技術として、映像の階調補正を動的に行う、ダイナミックガンマ技術などと呼ばれる技術がある。動的階調補正処理では、入力される映像から何らかの特徴量を抽出し、この抽出した特徴量に基づいて階調補正の関数を生成するなどの処理を行う。
【０００４】
例えば、入力映像の特徴量として輝度のヒストグラムを抽出し、輝度方向のヒストグラムの値が平均化されるように階調補正特性を変換するための関数、あるいは階調補正特性を変換するテーブルを生成するなどの方法が一般的に知られている。
【０００５】
しかし動的な階調補正を行う際に極端な補正を行ってしまうと不自然な映像となってしまったりする。また、短い時間で補正の値を大きく変更すると画面が点滅するように見えたり、画面内の背景等の静止した部分の明るさが時間的に変動してしまい不自然に見える等の問題がある。そのためこれらの問題を改善するためのさまざまな発明が開示されている。
【０００６】
例えば特許文献１に開示された発明においては、映像から抽出した特徴量からシーンチェンジの度合いを求め、それに応じて階調補正の応答速度を変更するという工夫を行い、表示品質を向上させている。
【特許文献１】特開２００６−２７０４１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
動的な階調補正処理を行うに当たってはさらに課題がある。例えば、映像の中の一部分だけが動いたり変化した場合や、カメラを動かして撮影を行うパン動作等で画面全体がゆっくり移動するといった場面において階調補正曲線を変更したとする。この場合、映像の中の動いていない部分や、パン映像の部分に対しても明るさが変化して見えてしまい、不自然な映像となってしまう。
【０００８】
また、映像効果のひとつとしてフェードインという場面がある。例えば初めの場面では画面全体が黒レベルの表示となっていて、時間の経過に伴って次第に輝度が上がっていきだんだん画像が見えてくるという場面が考えられる。この場合、従来の階調補正曲線の変更方法では、輝度が低い画像である場合に輝度を高くする処理を行うため、本来のフェードインの効果に悪影響を与えてしまう。
【０００９】
フェードアウトも同様であり、フェードアウトの例としては、初めの場面では通常の画像が表示されていて、時間の経過に伴って次第に画像の輝度の最小レベルが明るくなっていき、最後は画面全体が白色の表示になるという場面がある。この場合も従来の階調補正曲線の変更方法では、最小輝度が高い画像である場合に、輝度を低くする処理を行うため、本来のフェードアウトの効果に悪影響を与えてしまう。
【００１０】
本発明は、以上の問題に鑑みて成されたものであり、フレーム間の映像の変化に応じた動的階調補正処理を実現する為の技術を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【００１２】
即ち、フレーム毎に入力される入力画像の階調特性を階調補正テーブルを用いて変換し、当該変換後の画像を出力画像として順次出力する画像処理装置であって、
前記階調補正テーブルを保持する保持手段と、
前記入力画像が表現可能な輝度値の範囲を複数のレベルに分割した場合に、同じレベルに属する輝度値を有する前記入力画像中の画素の数をレベル毎に集計することで、レベル毎の画素数を示すヒストグラムデータを作成する作成手段と、
第１フレームの入力画像について前記作成手段が作成したヒストグラムデータと、前記第１フレームの入力画像の直前に入力された第２フレームの入力画像について前記作成手段が作成したヒストグラムデータと、を用いて、同じレベルに属する画素数の差をレベル毎に求める計算手段と、
前記計算手段が求めたレベル毎の差に基づいて、前記保持手段が保持する階調補正テーブルを更新するか否かを判断する判断手段と、
前記判断手段が更新すると判断した場合には、前記保持手段が保持する階調補正テーブルを更新する更新手段と、
前記第１フレームの入力画像の階調特性を、前記保持手段が保持する階調補正テーブルを用いて変換した結果を、前記第１フレームの出力画像として出力する手段と
を備え、
前記計算手段は、
前記第１フレームの入力画像について前記作成手段が作成したヒストグラムデータを用いて、最高輝度値が属するレベルと、最低輝度値が属するレベルと、を特定する手段と、
前記第１フレームの入力画像について前記作成手段が作成したヒストグラムデータにおいて最高輝度値が属するレベルから最低輝度値が属するレベルまでの各レベルと、前記第２フレームの入力画像について前記作成手段が作成したヒストグラムデータにおいて当該各レベルに対応する各レベルと、で、対応するレベル同士で前記差を求める手段と、
求めたレベル毎の差の総和を求める手段と、
求めたレベル毎の差のうち、閾値より大きい差の数をカウントする手段とを備え、
前記判断手段は、前記総和が閾値よりも小さい、又は前記差の数が閾値よりも小さい場合には、前記保持手段が保持する階調補正テーブルを更新しないと判断し、前記総和が閾値以上、及び前記差の数が閾値以上である場合には、前記保持手段が保持する階調補正テーブルを更新すると判断する
ことを特徴とする。
【発明の効果】
【００１５】
本発明の構成によれば、フレーム間の映像の変化に応じた動的階調補正処理を実現することができる。
【発明を実施するための最良の形態】
【００１６】
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の１つである。
【００１７】
［第１の実施形態］
本実施形態では、プロジェクションディスプレイ内部の信号処理回路に適用した画像処理装置について説明する。図１は、本実施形態に係る画像処理装置を適用するプロジェクションディスプレイ内部の信号処理回路の一部を示すブロック図である。
【００１８】
プロジェクションディスプレイはその内部に光源ランプ、照明光学系、ライトバルブ、投射光学系などからなる光学系が構成されている。光源ランプが発生した光は、照明光学系でＲＧＢの３原色に分離され、それぞれライトバルブである液晶パネル（Ｒ）６、液晶パネル（Ｇ）７、液晶パネル（Ｂ）８に照射され変調される。変調光は投影光学系によってプロジェクションディスプレイの前面に配置されたスクリーンに拡大投影されることで画像として表示される。
【００１９】
図１に示す如く、本実施形態に係る画像処理装置は、ＨＤＭＩ端子３、ヒストグラム計測部２、階調補正部４、マイクロコンピュータ１、画像処理部５、液晶パネル（Ｒ）６、液晶パネル（Ｇ）７、液晶パネル（Ｂ）８、により構成されている。
【００２０】
ＨＤＭＩ端子３には、各フレームの画像が映像信号の形態でもって入力される。ここで、ＨＤＭＩ端子３は外部のチューナと接続されており、チューナの出力映像であるＹＣｂＣｒ形式の色差映像信号がＨＤＭＩ端子３に入力されるものとする。また、１フレーム分の映像信号が示す画像の解像度は、横方向に１９２０画素、縦方向に１０８０画素であり、輝度を表すＹ成分、色差を表すＣｂおよびＣｒ成分はそれぞれ１０ビットのディジタル値であるとする。
【００２１】
本実施形態に係る画像処理装置は、マイクロコンピュータ１によるソフトウェア処理と、ハードウェア回路で構成されるヒストグラム計測部２、階調補正部４による処理とにより、入力映像信号に対して動的な階調補正処理を実行するように構成されている。
【００２２】
従って、ＨＤＭＩ端子３に入力された映像信号は、フレーム毎の画像として、階調補正部４、ヒストグラム計測部２に供給され、それぞれのハードウェアにて処理対象となる。また、ヒストグラム計測部２による処理結果は、マイクロコンピュータ１に入力され、マイクロコンピュータ１による処理対象となる。
【００２３】
即ち、本実施形態に係る画像処理装置は、フレーム毎に入力される入力画像の階調特性を階調補正テーブルを用いて変換し、変換後の画像を出力画像として順次出力する。
【００２４】
図７は、マイクロコンピュータ１のハードウェア構成例を示すブロック図である。
【００２５】
ＣＰＵ７０１は、ＲＡＭ７０２やＲＯＭ７０３に格納されているプログラムやデータを用いてマイクロコンピュータ１全体の制御を行うと共に、マイクロコンピュータ１が行う処理として後述する各処理を実行する。
【００２６】
ＲＡＭ７０２には、Ｉ／Ｆ（インターフェース）７０４を介して外部から入力されたデータや、ＲＯＭ７０３からＣＰＵ７０１が読み出したデータなどを一時的に記憶するためのエリアが備わっている。更に、ＲＡＭ７０２には、ＣＰＵ７０１が各種の処理を実行する際に用いるワークエリアも備わっている。即ち、ＲＡＭ７０２は、各種のエリアを適宜提供することができる。
【００２７】
ＲＯＭ７０３には、マイクロコンピュータ１が行う処理として後述する各種の処理をＣＰＵ７０１に実行させるためのプログラムやデータが格納されている。係るプログラムやデータは、ＣＰＵ７０１による制御に従って、適宜ＲＡＭ７０２に読み出される。
【００２８】
Ｉ／Ｆ７０４は、マイクロコンピュータ１をヒストグラム計測部２や階調補正部４に接続する為のインターフェースとして機能するものである。従って、マイクロコンピュータ１は、係るＩ／Ｆ７０４を介してヒストグラム計測部２や階調補正部４とのデータのやり取りを行う。
【００２９】
７０５は、ＣＰＵ７０１、ＲＡＭ７０２、ＲＯＭ７０３、Ｉ／Ｆ７０４の各部を繋ぐバスである。
【００３０】
次に、階調補正部４、ヒストグラム計測部２、マイクロコンピュータ１、において行われる動的階調補正処理について説明する。
【００３１】
ヒストグラム計測部２には、ＨＤＭＩ端子３から１フレーム分の画像（入力画像）が入力される。ヒストグラム計測部２は１フレーム分の入力画像を取得する毎に、係る入力画像のＹ成分のヒストグラムデータを作成する。
【００３２】
ここで、ヒストグラム計測部２によるヒストグラムデータの作成処理について、より詳細に説明する。
【００３３】
ヒストグラム計測部２は、入力画像が表現可能な輝度値（Ｙ成分）の範囲を複数のレベル（ここでは２５６段階）に分割した場合に、同じレベルに属する輝度値を有する入力画像中の画素の数をレベル毎に集計する。これにより、ヒストグラム計測部２は、レベル毎の画素数を示すヒストグラムを、ヒストグラムデータとして作成する。
【００３４】
そして、ヒストグラム計測部２が有するレジスタＨ（０）〜Ｈ（２５５）のそれぞれに、レベル０に属する画素数、レベル１に属する画素数、…、レベル２５５に属する画素数を格納する。もちろん、Ｈ（ｘ）には、レベルｘに属する画素数を格納する。
【００３５】
なお、レジスタＨ（０）〜Ｈ（２５５）は、フレーム毎に使用されるため、次のフレームについて使用する場合には事前に全てのレジスタを０に初期化する。
【００３６】
レジスタＨ（０）〜Ｈ（２５５）に対して値を書き込む場合には、例えば、次のようにして行う。レジスタＨ（０）〜Ｈ（２５５）を全て０に初期化した後、入力画像を構成する画素毎にＹ成分の上位８ビットを参照し、その値に応じてＨ（０）〜Ｈ（２５５）のいずれかのレジスタの値を１増加させる。例えばＹ成分の上位８ビットが０（輝度が一番小さいレベル）であれば、Ｈ（０）を１増加させ、Ｙ成分の上位８ビットが２５５（輝度が一番大きいレベル）であれば、Ｈ（２５５）を１増加させる。
【００３７】
これにより、ヒストグラム計測部２は、１フレーム分の入力画像について、係る入力画像のＹ成分のヒストグラムデータ（レジスタＨ（０）〜Ｈ（２５５）に登録されているデータ）を作成することができる。
【００３８】
ヒストグラムの例を図５に示す。横軸を入力画像のＹ成分を２５６段階に分割した場合の各値Ｋとし、縦軸をヒストグラム値（画素数）Ｈ（Ｋ）とする。実線で示したものが実際に集計することで作成したＨ（Ｋ）であるとする。
【００３９】
ヒストグラム計測部２は、１フレーム分の入力画像についてヒストグラムデータを作成すると、マイクロコンピュータ１に対して割込み信号を出力する。
【００４０】
マイクロコンピュータ１はヒストグラム計測部２から割り込み信号を受けると、図２に示したフローチャートに従った処理を開始する。なお、図２に示す処理をマイクロコンピュータ１が有するＣＰＵ７０１に実行させるためのプログラムやデータは、ＲＯＭ７０３に格納されている。ＣＰＵ７０１は、係るプログラムやデータをＲＡＭ７０２に読み出して実行する。
【００４１】
先ず、ステップＳ２０２では、ＣＰＵ７０１は、Ｉ／Ｆ７０４を介して、上記レジスタＨ（０）〜Ｈ（２５５）のそれぞれのデータをＲＡＭ７０２に読み出す。
【００４２】
次に、ステップＳ２０３では、以降の処理で用いる変数Ｃ、Ｄを共に０に初期化する。
【００４３】
次に、ステップＳ２０５〜ステップＳ２０７の各処理を、変数Ｋをループ変数として、Ｋ＝０からＫ＝２５５までループさせる。即ち、Ｋ＝１，Ｋ＝２，…，Ｋ＝２５４，Ｋ＝２５５のそれぞれについて、ステップＳ２０５〜ステップＳ２０７の処理を行う。
【００４４】
先ず、ステップＳ２０５では、ステップＳ２０２で読み出したヒストグラム値であるＨ（Ｋ）と、直前のフレームにおいてマイクロコンピュータ１が同様に作成したヒストグラム値であるＨｐ（Ｋ）との近似度を求めるための演算を行う。ここで過去のフレームのヒストグラム値Ｈｐ（Ｋ）は、マイクロコンピュータ１がＲＡＭ７０２に保持している値である。ここでＨｐ（Ｋ）が図５に示す点線のようになっているとすると、図５に示すように、フレームの間での動きの量に応じてＨ（Ｋ）とＨｐ（Ｋ）の値に差が発生する。
【００４５】
近似度を求める方法としては、両者の差の平方を誤差成分とし、誤差成分の総和を求める（計算する）やり方が一般的である。そのため本実施形態では以下の式に示す如く、Ｈ（Ｋ）とＨｐ（Ｋ）との差の平方を求め、変数Ｃに加算する。
【００４６】
Ｃ＝Ｃ＋（Ｈ（Ｋ）−Ｈｐ（Ｋ））２
なお、本実施形態では、ヒストグラム値の差の平方を利用することで近似度を求めているが、例えば演算の簡略化のために、平方処理を行わず差だけを利用しても同等の効果を得ることができる。
【００４７】
次に、ステップＳ２０６では、誤差成分、即ち、（Ｈ（Ｋ）−Ｈｐ（Ｋ））２が定数Ｒより大きいか否かを判断する。ここで、定数Ｒは、フレーム間のヒストグラムの変動量が大きいと判断するための閾値であり、フレーム間のヒストグラムの変動量やノイズの影響などを考慮して予め決められた定数である。
【００４８】
ステップＳ２０６における判断の結果、誤差成分が定数Ｒよりも大きい場合には、フレーム間でレベルＫのヒストグラムの変動量が大きいと判断し、処理をステップＳ２０７に進める。一方、誤差成分が定数Ｒ以下である場合には処理をステップＳ２０８に進める。
【００４９】
ステップＳ２０７では、変数Ｄの値を１つインクリメントする。
【００５０】
ステップＳ２０８では、変数Ｋの値が２５５でない限りは変数Ｋの値を１つインクリメントし、ステップＳ２０５以降の処理を繰り返す。
【００５１】
これにより、Ｋ＝０〜２５５の全てについて、誤差成分の総和（＝変数Ｃ）を求めることができると共に、定数Ｒより大きい誤差成分の数（＝変数Ｄ）をカウントすることができる。誤差成分の総和を求めるための処理については一般的には次のような処理となる。即ち、第１フレームの入力画像について作成したヒストグラムデータと、第１フレームの入力画像の直前に入力された第２フレームの入力画像について作成したヒストグラムデータと、を用いて、同じレベルに属する画素数の差をレベル毎に求める。そしてレベル毎に求めた差の総和を、誤差成分の総和として求める。
【００５２】
次に、ステップＳ２０９では、変数Ｃの値が定数Ｍより小さいか、または、変数Ｄの値が定数Ｎより小さいか（フレーム間のヒストグラムの変動量が大きいレベルの数がＮ個より小さいか）を判断する。ここでＭは、フレーム間の近似度が高いか低いかを判断するための閾値であり、予め決められた定数である。またＮは、ヒストグラムが変動したレベルが無いか少ない場合、例えば映像に変化が無いか、変化が少ないか、または映像の中の一部分だけが変化したような状態と、映像の多くの部分が変化した状態とを判別するための閾値であり、予め決められた定数である。
【００５３】
Ｃ＜Ｍ、またはＤ＜Ｎであれば、映像に変化が無いか少ない、または映像の中の一部分だけの変化であってフレーム間の近似度が高いと判断し、処理をステップＳ２１２に進める。
【００５４】
一方、Ｃ≧Ｍ及びＤ≧Ｎであれば（Ｃ、Ｄ共に閾値以上）、処理をステップＳ２１０に進める。
【００５５】
ステップＳ２１０では、階調補正部４が保持している階調補正テーブルの更新を行うべく、新たな階調補正テーブルを算出する。
【００５６】
ここで階調補正テーブルとは本実施形態に係る画像処理装置に入力された画像の階調特性を変換する為に用いるものであり、入力画素値（入力映像信号の値）を引数とし、階調補正テーブルの出力値を出力映像信号の値とすることで階調特性をテーブル変換する。ここでは引数を２５６段階とし、階調補正テーブルの出力値は１０ビット、即ち１０２４段階であるものとする。
【００５７】
図３は、ステップＳ２１０における、階調補正テーブルの算出処理の詳細を示すフローチャートである。
【００５８】
先ず、ステップＳ３０２では、以降の処理で用いる変数Ｓを０に初期化する。
【００５９】
次に、ステップＳ３０４〜ステップＳ３０７の各処理を、変数Ｋをループ変数として、Ｋ＝０からＫ＝２５５までループさせる。即ち、Ｋ＝１，Ｋ＝２，…，Ｋ＝２５４，Ｋ＝２５５のそれぞれについて、ステップＳ３０４〜ステップＳ３０７の処理を行う。
【００６０】
ステップＳ３０４では、変数Ｓが有する値にＨ（Ｋ）の値を加算する。つまりこの時点で変数Ｓには、Ｈ（０）からＨ（Ｋ）までの値を積算した結果が保持されていることになる。
【００６１】
次に、ステップＳ３０５では、変数Ｓと変数Ｋとを用いて、階調補正テーブルＬ（Ｋ）を算出する。以下に、階調補正テーブルＬ（Ｋ）を求める為の処理について、詳細に説明する。
【００６２】
Ｌ（Ｋ）をＫに比例させると、階調補正特性が変更されないような階調補正テーブルとなる。一方で、Ｓはヒストグラムを積算したものであるから、Ｌ（Ｋ）をＳに比例させると、出力される映像信号のヒストグラムを平滑化することになる。しかし現実的には、ヒストグラムを完全に平滑化してしまうと極端な映像となってしまう。そのため、Ｌ（Ｋ）は、ＫとＳとを一定の割合で合成して算出する。合成する割合は階調補正の程度などを考慮して決められる。本実施形態においては、ＫおよびＳの割合を、それぞれ０．５とする。また解像度が１９２０×１０８０画素、階調補正テーブルの出力値が１０ビットであることから、階調補正テーブルＬ（Ｋ）は以下の式１に基づいて求める。
【００６３】
Ｌ（Ｋ）＝｛Ｓ／（１９２０×１０８０）×０．５＋Ｋ／２５５×０．５｝×１０２３      （式１）
係る式１を簡単にすると、以下の式２に示すような形態となる。
【００６４】
Ｌ（Ｋ）＝｛Ｓ／４１４７２００＋Ｋ／５１０｝×１０２３      （式２）
従って、ＣＰＵ７０１は、係る式２を用いて、現在のフレームに対応した階調補正テーブルＬ（Ｋ）を求める。
【００６５】
しかし、フレーム毎に算出した階調補正テーブルをそのまま映像に適用すると、フレーム毎に階調補正テーブルが大きく変化した時に映像の一部の明るさが急に変化したり、点滅して見えたりしてしまうことがあり、問題となる。従って、本実施形態では、ステップＳ３０５で求めた階調補正テーブル（暫定階調補正テーブル）Ｌ（Ｋ）はそのままでは映像には適用しない。
【００６６】
即ち、ステップＳ３０６において、過去の階調補正テーブルＬｐ（Ｋ）と、ステップＳ３０５で求めた階調補正テーブルＬ（Ｋ）とを一定の割合で合成し、現在のフレームに適用するための階調補正テーブルＬ’（Ｋ）を求める。階調補正テーブルＬ’（Ｋ）は、以下の式３に基づいて求める。
【００６７】
Ｌ’（Ｋ）＝Ｌ（Ｋ）×０．１＋Ｌｐ（Ｋ）×０．９      （式３）
現在のフレームについて算出した階調補正テーブルＬ（Ｋ）の割合、過去の階調補正テーブルＬｐ（Ｋ）の割合は、映像に対する階調補正テーブルの応答時間などを考慮して決められる。本実施形態ではそれぞれ０．１、０．９としている。
【００６８】
次に、ステップＳ３０７では、次のフレームで現在の階調補正テーブルＬ’（Ｋ）を利用するため、Ｌ’（Ｋ）をＬｐ（Ｋ）にコピーし、ＲＡＭ７０２に保存する。
【００６９】
次に、ステップＳ３０８では、変数Ｋの値が２５５でない限りは、変数Ｋの値を１つインクリメントし、ステップＳ３０４以降の処理を行う。一方、変数Ｋの値が２５５に達した場合には、図２のステップＳ２１１にリターンする。
【００７０】
図２に戻って、ステップＳ２１１では、ステップＳ２１０で求めた階調補正テーブルＬ’（Ｋ）を、現在のフレームの画像に適用する為の階調補正テーブルとして、階調補正部４に設定する。即ち、それまで階調補正部４が保持していた階調補正テーブルを、ステップＳ２１０で求めた階調補正テーブルＬ’（Ｋ）に更新する。
【００７１】
次に、ステップＳ２１２では、Ｈ（Ｋ）を過去のフレームのヒストグラム値として次のフレームを処理する場合に使用するために、全てのＫについてＨ（Ｋ）をＨｐ（Ｋ）に上書きしてＲＡＭ７０２に保存し、処理を終了する。即ち、次のフレームの画像を処理する場合には、上記処理で用いたＨ（Ｋ）をＨｐ（Ｋ）として用いることになる。
【００７２】
階調補正部４は、ＨＤＭＩ端子３から受けた画像の階調特性を、自身が保持している階調補正テーブルを用いて補正し、補正後の画像を出力画像として、後段の画像処理部５に対して送出する。
【００７３】
画像処理部５は、階調補正部４から受けた画像に対して、コントラスト調整、ブライト調整、色調整、エッジ強調、ノイズ低減処理等々の各種の画像調整処理を施す。これらの画質調整の値は、プロジェクションディスプレイが備える画面上のメニュー機能を使用して、ユーザが調整操作を行うなどの方法で調整される。また、画像処理部５では、プロジェクションディスプレイの各液晶パネル（Ｒ）６、液晶パネル（Ｇ）７、液晶パネル（Ｂ）８のデバイス特性を補正するためのガンマ補正などが施される。
【００７４】
画像処理部５は、画像調整した映像信号を、液晶パネル（Ｒ）６、液晶パネル（Ｇ）７、液晶パネル（Ｂ）８それぞれに与えるアナログ信号に変換する。また同時に、画像処理部５においては各液晶パネルを駆動するための信号を生成し、各液晶パネルに映像信号および駆動信号を供給する。これにより、液晶パネル上の各画素に、映像信号に応じた電圧が与えられる。
【００７５】
以上の説明により、本実施形態によれば、映像の変化が無い若しくは少ない場合には階調補正テーブルは更新しないので、フレーム毎の階調補正結果が大きく異なることはなく、高品質な画像を提示することができる。
【００７６】
即ち、ヒストグラムを利用した小規模な回路あるいは処理によって映像の特定の場面を検出することで、場面によって動的な階調補正処理を行うか行わないかを適切に判断することができるので、より高品質な動的階調補正処理を実現することができる。
【００７７】
［第２の実施形態］
本実施形態では、マイクロコンピュータ１が行う処理のみが第１の実施形態とは異なり、それ以外については第１の実施形態と同じである。以下に、本実施形態においてマイクロコンピュータ１が行う処理について説明する。
【００７８】
マイクロコンピュータ１はヒストグラム計測部２から割り込み信号を受けると、図４に示したフローチャートに従った処理を開始する。なお、図４に示す処理をマイクロコンピュータ１が有するＣＰＵ７０１に実行させるためのプログラムやデータは、ＲＯＭ７０３に格納されている。ＣＰＵ７０１は、係るプログラムやデータをＲＡＭ７０２に読み出して実行する。
【００７９】
先ず、ステップＳ４０２では、ＣＰＵ７０１は、Ｉ／Ｆ７０４を介して、上記レジスタＨ（０）〜Ｈ（２５５）のそれぞれのデータをＲＡＭ７０２に読み出す。ヒストグラム値の例を図６に示す。実線で示したものがＨ（Ｋ）であるとする。
【００８０】
次に、ステップＳ４０４における処理をＦ＝０から順に、Ｆ＝１，…，Ｆ＝２５４，Ｆ＝２５５のそれぞれについて行う。即ち、変数Ｆ＝０から始めて、変数Ｆの値をインクリメントさせながら、Ｈ（Ｆ）＞Ｔとなるまでループを繰り返す。従って、ステップＳ４０４では、Ｈ（Ｆ）の値が予め定められた閾値Ｔよりも大きいか否かを判断する。ここで、閾値Ｔは、ノイズ等の僅かな値を無視するために予め設定されている定数である。
【００８１】
ステップＳ４０４における判断の結果、Ｈ（Ｆ）＞Ｔである場合には係るループを抜け、処理をステップＳ４０６に進める。ここで、Ｈ（Ｆ）＞Ｔを満たすＦは、図６に示したように、Ｈ（Ｋ）の最低輝度レベルの位置（最低輝度値が属するレベル）を示すことになる。
【００８２】
次に、ステップＳ４０６では、上記ループを抜けた際の変数Ｆの値と、過去のフレームにおいて最低輝度レベルを示す変数Ｆｐの値と、の差の絶対値が、Ｖより小さいか否かを判断する。ここでＦｐは、マイクロコンピュータ１がＲＡＭ７０２に保持している値であり、図６に示したように、過去のフレームのヒストグラム値Ｈｐ（Ｋ）の最低輝度レベルの位置を示している。またＶは、フレームの間で最低輝度レベルの変化が大きいかどうかを判定するための閾値であり、予め定められた定数である。
【００８３】
ステップＳ４０６における判断の結果、｜Ｆ−Ｆｐ｜＜Ｖである場合、例えば映像のレベル変化が少ない場合、映像が通常の表示状態から白画面へフェードアウトする場合等で、最低輝度レベルの変化量が小さい場合は、処理をステップＳ４０８に進める。一方、｜Ｆ−Ｆｐ｜≧Ｖである場合には、映像の変化が大きいと判断し、処理をステップＳ４１８に進める。なお、ステップＳ４１８，Ｓ４１９のそれぞれにおける処理は、上記ステップＳ２１０、Ｓ２１１のそれぞれと同じであるので、これらのステップにおける処理についての説明は省略する。
【００８４】
一方、ステップＳ４０８における処理をＧ＝２５５から順に、Ｇ＝２５４，…，Ｇ＝１，Ｇ＝０のそれぞれについて行う。即ち、変数Ｇ＝２５５から始めて、変数Ｇの値をデクリメントさせながら、Ｈ（Ｇ）＞Ｔとなるまでループを繰り返す。従って、ステップＳ４０８では、Ｈ（Ｇ）の値が予め定められた閾値Ｔよりも大きいか否かを判断する。
【００８５】
ステップＳ４０８における判断の結果、Ｈ（Ｇ）＞Ｔである場合には係るループを抜け、処理をステップＳ４１０に進める。ここで、Ｈ（Ｇ）＞Ｔを満たすＧは、図６に示したように、Ｈ（Ｋ）の最高輝度レベルの位置（最高輝度値が属するレベル）を示すことになる。
【００８６】
次に、ステップＳ４１０では、上記ループを抜けた際の変数Ｇの値と、過去のフレームにおいて最高輝度レベルを示す変数Ｇｐの値と、の差の絶対値が、Ｖより小さいか否かを判断する。ここでＧｐは、マイクロコンピュータ１がＲＡＭ７０２に保持している値であり、図６に示したように、過去のフレームのヒストグラム値Ｈｐ（Ｋ）の最高輝度レベルの位置を示している。
【００８７】
ステップＳ４１０における判断の結果｜Ｇ−Ｇｐ｜＜Ｖである場合、例えば映像のレベル変化が少ない場合、黒レベル表示から輝度が上がり通常の表示状態へフェードインする場合等で、最高輝度レベルの変化量が小さい場合、処理をステップＳ４１１に進める。一方、｜Ｇ−Ｇｐ｜≧Ｖである場合には、映像の変化が大きいと判断し、処理をステップＳ４１８に進める。
【００８８】
ステップＳ４１１では、以降の処理で用いる変数Ｃ、Ｄを０に初期化する。
【００８９】
次に、ステップＳ４１３〜ステップＳ４１５の各処理を、変数Ｋをループ変数として、Ｋ＝ＦからＫ＝Ｇまでループさせる。即ち、Ｋ＝Ｆ，Ｋ＝Ｆ＋１，…，Ｋ＝Ｇ−１，Ｋ＝Ｇのそれぞれについて、ステップＳ４１３〜ステップＳ４１５の処理を行う。
【００９０】
先ず、ステップＳ４１３では、ステップＳ２０２で読み出したヒストグラム値であるＨ（Ｋ）と、直前のフレームにおいてマイクロコンピュータ１が同様に作成したヒストグラム値であるＨｐ（Ｋｐ）との近似度を求めるための演算を行う。ここで、現在のフレームのヒストグラムのレベルＫに対応する過去のフレームのヒストグラムのレベルをＫｐとすると、Ｋｐは、Ｆ、Ｇ、および過去のフレームの最低輝度レベルＦｐ、過去のフレームの最高輝度レベルＧｐを考慮すると、以下の式で表される。
【００９１】
Ｋｐ＝Ｆｐ＋（Ｋ−Ｆ）（Ｇｐ−Ｆｐ）／（Ｇ−Ｆ）      （式４）
従って、ステップＳ４１３では、係る式４を用いてＫｐを求め、その後、以下の式５に示す如く、Ｈ（Ｋ）とＨｐ（Ｋｐ）との差（対応するレベル同士の差）の平方を求め、変数Ｃに加算する。
【００９２】
Ｃ＝Ｃ＋（Ｈ（Ｋ）−Ｈｐ（Ｋｐ））２      （式５）
なお、本実施形態では、ヒストグラム値の差の平方を利用することで近似度を求めているが、例えば演算の簡略化のために、平方処理を行わず差だけを利用しても同等の効果を得ることができる。
【００９３】
次に、ステップＳ４１４では、誤差成分、即ち、（Ｈ（Ｋ）−Ｈｐ（Ｋｐ））２が定数Ｒより大きいか否かを判断する。ここで、定数Ｒは、フレーム間のヒストグラムの変動量が大きいと判断するための閾値であり、フレーム間のヒストグラムの変動量やノイズの影響などを考慮して予め決められた定数である。
【００９４】
ステップＳ４１４における判断の結果、誤差成分が定数Ｒよりも大きい場合には、フレーム間でレベルＫのヒストグラムの変動量が大きいと判断し、処理をステップＳ４１５に進める。一方、誤差成分が定数Ｒ以下である場合には処理をステップＳ４１６に進める。
【００９５】
ステップＳ４１５では、変数Ｄの値を１つインクリメントする。
【００９６】
ステップＳ４１６では、変数Ｋの値がＧでない限りは変数Ｋの値を１つインクリメントし、ステップＳ４１２以降の処理を繰り返す。
【００９７】
これにより、Ｋ＝Ｆ〜Ｇの全てについて、誤差成分の総和（＝変数Ｃ）を求めることができると共に、定数Ｒより大きい誤差成分の数（＝変数Ｄ）をカウントすることができる。
【００９８】
次に、ステップＳ４１７では、変数Ｃの値が定数Ｍより小さいか、または、変数Ｄの値が定数Ｎより小さいか（フレーム間のヒストグラムの変動量が大きいレベルの数がＮ個より小さいか）を判断する。ここでＭは、フレーム間の近似度が高いか低いかを判断するための閾値であり、予め決められた定数である。またＮは、ヒストグラムが変動したレベルが無いか少ない場合、例えば映像に変化が無いか、変化が少ないか、または映像の中の一部分だけが変化したような状態と、映像の多くの部分が変化した状態とを判別するための閾値であり、予め決められた定数である。
【００９９】
Ｃ＜Ｍ、またはＤ＜Ｎであれば、映像に変化が無いか少ない、または映像の中の一部分だけの変化であってフレーム間の近似度が高いと判断し、処理をステップＳ４２０に進める。
【０１００】
一方、Ｃ≧Ｍ及びＤ≧Ｎであれば、処理をステップＳ４１８に進める。
【０１０１】
ステップＳ４１８，Ｓ４１９における処理は上述の通り、ステップＳ２１０，Ｓ２１１とそれぞれ同じであるので、これについての説明は省略する。
【０１０２】
そして次に、ステップＳ４２０では、Ｈ（Ｋ）、Ｆ、Ｇを過去のフレームのヒストグラムの情報として次のフレームの処理時に利用するために、それぞれＨｐ（Ｋ）、Ｆｐ、Ｇｐに上書きしてＲＡＭ７０２内に保存し、処理を終了する。
【０１０３】
なお、上記各実施形態では、フレーム毎に階調補正テーブルを補正するか否かを判断しているが、Ｎ（≧２）フレーム毎に行うようにしても良い。
【０１０４】
［その他の実施形態］
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコード（コンピュータプログラム）を記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給する。係る記憶媒体は言うまでもなく、コンピュータ読み取り可能な記憶媒体である。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【０１０５】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０６】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０７】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１０８】
【図１】本発明の第１の実施形態に係る画像処理装置を適用するプロジェクションディスプレイ内部の信号処理回路の一部を示すブロック図である。
【図２】マイクロコンピュータ１が行う処理のフローチャートである。
【図３】ステップＳ２１０における、階調補正テーブルの算出処理の詳細を示すフローチャートである。
【図４】マイクロコンピュータ１が行う処理のフローチャートである。
【図５】ヒストグラムの例を示す図である。
【図６】ヒストグラムの例を示す図である。
【図７】マイクロコンピュータ１のハードウェア構成例を示すブロック図である。
【図１】
0005123713.tif 000002
【図２】
0005123713.tif 000003
【図３】
0005123713.tif 000004
【図４】
0005123713.tif 000005
【図５】
0005123713.tif 000006
【図６】
0005123713.tif 000007
【図７】
0005123713.tif 000008