(57)【要約】      （修正有）【課題】液晶ディスプレイ（ＬＣＤ）上の動きを向上させるための過駆動画素値を自動キャリブレーションする装置、方法を提供する。【解決手段】ＬＣＤ過駆動テーブルに入力するキャリブレーションデータを自動的に算出する行程は、第１の中間調レベルのテストパッチを生成し、ＬＣＤに表示する工程と、第１の中間調レベルのテストパターンに基づいて、第１の信号を生成する工程と、第２の中間調レベルのテストパッチを生成し、ＬＣＤに表示する工程と、第２の中間調レベルのテストパターンに基づいて、第２の信号を生成する工程と、第１および第２の信号に基づいて、ＬＣＤ過駆動テーブルへの入力値を算出する工程と、によって実行される。【選択図】  図２
2005242308.tif 000002
【特許請求の範囲】
【請求項１】
液晶ディスプレイ（ＬＣＤ）に対して画素過駆動テーブルの自動キャリブレーションを実行する方法であって、
第１の中間調レベルのテストパッチを生成し、前記ＬＣＤ上に表示する工程と、
前記第１の中間調レベルの前記テストパターンに基づいて、第１の信号を生成する工程と、
第２の中間調レベルの第２のテストパッチを生成し、表示する工程と、
前記第２の中間調レベルの前記テストパターンに基づいて、第２の信号を生成する工程と、
前記第１の信号および前記第２の信号に基づいて、前記ＬＣＤ過駆動テーブルへの入力値を算出する工程と、を備える、方法。
【請求項２】
請求項１に記載の方法であって、さらに、
前記ＬＣＤ上に黒の背景を表示する工程と、
事前に選択されたＬＣＤパネルの基準位置に対して、テストパッチの位置とサイズとを設定する工程と、を備える、方法。
【請求項３】
請求項２に記載の方法であって、さらに、
前記テストパッチを、交互に出現する複数の中間調パッチのパターンに置き換える工程と、
前記中間調パッチの各々の前に光同期パルスを付与する工程と、を備える、方法。 
【請求項４】
請求項３に記載の方法であって、前記光同期パルスは、
中間調レベル０から中間調レベル２５５まで遷移させる工程と、
前記中間調レベル２５５から前記中間調レベル０まで遷移させる工程と、
前記ＬＣＤパネルが、前記同期パルスと次の遷移の開始との間に、前記中間調０に戻ることを可能とするのに十分な数のフレームに対して、前記ＬＣＤパネル上に各中間調レベルを表示する工程と、を備える、方法。
【請求項５】
液晶ディスプレイ（ＬＣＤ）の自動キャリブレーションを実行するための自動キャリブレーションシステムであって、
処理部と、
前記ＬＣＤおよび前記処理部に接続され、前記処理部の制御下で、第１のタイムスロットに第１の中間調レベルの第１のテストパッチを生成して、前記ＬＣＤ上に表示すると共に、第２のタイムスロットに第２の中間調レベルの第２のテストパッチを生成して、前記ＬＣＤ上に表示するよう構成されたオンスクリーンディスプレイ生成部と、
前記処理部に電気的に接続され、前記第１のパッチおよび前記第２のパッチから受けた光に基づいて、それぞれ、第１の信号および第２の信号を生成するよう構成された光検出部と、
前記第１の信号および前記第２の信号に基づいて、ＬＣＤ過駆動テーブルへの入力値を算出する算出部と、を備える、システム。
【請求項６】
請求項５に記載のシステムであって、前記ＯＳＤ生成部は、前記ＬＣＤ上に黒い背景を表示し、事前に選択されたＬＣＤパネルの基準点に対して、テストパッチの位置とサイズとを設定する、システム。
【請求項７】
請求項６に記載のシステムであって、さらに、
前記ＯＳＤ生成部に接続された光同期パルス生成部を備え、前記ＯＳＤ生成部は、前記テストパッチを、交互に出現する複数の中間調パッチのパターンに置き換え、前記中間調パッチの各々の前に、前記光同期パルス生成部によって生成された光同期パルスを付与する、システム。
【請求項８】
請求項７に記載のシステムであって、前記光同期パルス生成部は、中間調０から中間調２５５まで遷移させて元へ戻し、前記ＬＣＤパネルが、前記同期パルスと次の遷移の開始との間に、前記中間調０に戻ることを可能とするのに十分な数のフレームに対して、前記ＬＣＤパネル上に各中間調レベルを表示することにより、前記光学同期パルスを生成する、システム。
【請求項９】
液晶ディスプレイ（ＬＣＤ）パネルの自動キャリブレーションのためのコンピュータプログラム製品であって、
第１の中間調レベルのテストパッチを生成し、前記ＬＣＤ上に表示するためのコンピュータコードと、
前記第１の中間調レベルの前記テストパターンに基づいて、第１の信号を生成するためのコンピュータコードと、
第２の中間調レベルの第２のテストパッチを生成し、表示するためのコンピュータコードと、
前記第２の中間調レベルの前記テストパターンに基づいて、第２の信号を生成するためのコンピュータコードと、
前記第１の信号および前記第２の信号に基づいて、ＬＣＤ過駆動テーブルへの入力値を算出するためのコンピュータコードと、
前記コンピュータコードを格納するためのコンピュータ読み取り可能な媒体と、を備える、コンピュータプログラム製品。
【請求項１０】
請求項９に記載のコンピュータプログラム製品であって、さらに、
前記ＬＣＤ上に黒の背景を表示するためのコンピュータコードと、
事前に選択されたＬＣＤパネルの基準位置に対して、テストパッチの位置とサイズとを設定するためのコンピュータコードと、を備える、コンピュータプログラム製品。
【請求項１１】
請求項１０に記載のコンピュータプログラム製品であって、さらに、
前記テストパッチを、交互に出現する複数の中間調パッチのパターンに置き換えるためのコンピュータコードと、
前記中間調パッチの各々の前に光同期パルスを付与するためのコンピュータコードと、を備える、コンピュータプログラム製品。
【請求項１２】
請求項１１に記載のコンピュータプログラム製品であって、前記光同期パルスは、
中間調レベル０から中間調レベル２５５まで遷移させるためのコンピュータコードと、
前記中間調レベル２５５から前記中間調レベル０まで遷移させるコンピュータコードと、
前記ＬＣＤパネルが、前記同期パルスと次の遷移の開始との間に、前記中間調０に戻ることを可能とするのに十分な数のフレームに対して、前記ＬＣＤパネル上に各中間調レベルを表示するためのコンピュータコードと、を備える、コンピュータプログラム製品。
【請求項１３】
液晶ディスプレイ（ＬＣＤ）の自動キャリブレーションを実行する方法であって、
前記ＬＣＤ上にテストパターンを表示する工程と、
前記表示されたテストパターンに基づいて、過駆動テーブルへの入力を自動的に行う工程と、を備える、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスプレイ装置に関し、特に、ＬＣＤパネルディスプレイ上の動きの外観を向上させるための方法および装置に関する。
【背景技術】
【０００２】
ＬＣＤパネルの各画素は、標準的な組［０、１、２、．．．、２５５］に離散化された輝度値を取ることが可能であり、かかる画素が３つそろって、各フレーム時間（通例は、６０分の１秒）ごとに更新される任意の色を形成するＲ、Ｇ、および、Ｂの成分を提供する。ＬＣＤ画素に関する問題は、数フレームが経過してようやく、画素が目標値に到達することから、それら画素の入力コマンドへの応答が遅く、その結果、ディスプレイ成果物は、急激に動く物体の「ゴースト」画像が発生し、質の悪いものとなる。ゴースト発生は、ＬＣＤの応答速度が、フレームレートについて行くのに十分な速さでない場合に起きる。この場合、ＬＣＤは、電界の影響で自身を方向付ける液晶の能力に依存するため、１つの画素値から他の画素値への遷移を、所望の期間の範囲で実現できない。したがって、液晶は、光度を変えるために物理的に移動する必要があるため、液晶材料自体の粘性の高い性質が原因となって、ゴースト成果物が出現する。
【０００３】
かかる画質の低下を低減および／または排除するために、１フレーム周期内に目標画素値に達する、もしくは、ほぼ達するように画素値を過駆動することにより、ＬＣＤの応答時間が短縮される。特に、所与の画素の入力電圧を、現行フレームの目標画素値を超える過駆動画素値に偏らせることにより、開始画素と目標画素との間の遷移が加速され、指定のフレーム周期内で、画素が目標画素に駆動されるようになる。ただし、過駆動画素値を効率的に算出するためには、１組の開始および目標画素に対応する適切な過駆動画素値を提供するＬＣＤ過駆動テーブルが用いられる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
したがって、ＬＣＤ制御部においては、ＬＣＤ過駆動ルックアップテーブル（ＬＵＴ）を用いて、現行フレームにおいてＬＣＤパネルへの８ビット値を再配置することで、開始画素値から目標画素値への遷移を高速化する。各パネルで、その液晶素子の応答時間を左右する物理特性が異なっているので、ルックアップテーブルで用いる適切な伝達関数を決定するためには、各パネルの特性を明らかにする必要がある。キャリブレーションを自動的に実行するソフトウェアがなければ、手動で実行する必要がある。キャリブレーションには、８０を超える別個の測定値が必要となるため、手動キャリブレーションには、時間が掛かり、人為的なミスが生じる恐れもある。
【０００５】
したがって、ＬＣＤパネルを自動的にキャリブレーションし、ＬＣＤ過駆動テーブルへの入力に用いられるキャリブレーションデータを算出する方法、システム、および、装置が求められている。
【課題を解決するための手段】
【０００６】
液晶ディスプレイ（ＬＣＤ）パネルの自動キャリブレーションに適した方法、装置、および、システムが提供されている。一実施形態では、その方法は、第１の中間調レベルのテストパッチを生成し、ＬＣＤに表示する工程と、第１の中間調レベルのテストパターンに基づいて、第１の信号を生成する工程と、第２の中間調レベルのテストパッチを生成し、ＬＣＤに表示する工程と、第２の中間調レベルのテストパターンに基づいて、第２の信号を生成する工程と、第１および第２の信号に基づいて、ＬＣＤ過駆動テーブルへの入力値を算出する工程と、によって実行される。
【０００７】
別の実施形態では、液晶ディスプレイ（ＬＣＤ）の自動キャリブレーションを実行するための自動キャリブレーションシステムが開示されている。そのシステムは、処理部と、前記ＬＣＤおよび前記処理部に接続され、前記処理部の制御下で、第１のタイムスロットに第１の中間調レベルの第１のテストパッチを生成して、前記ＬＣＤ上に表示すると共に、第２のタイムスロットに第２の中間調レベルの第２のテストパッチを生成して、前記ＬＣＤ上に表示するよう構成されたオンスクリーンディスプレイ生成部と、を備える。そのシステムは、さらに、前記処理部に接続され、前記第１のパッチおよび前記第２のパッチから受けた光に基づいて、それぞれ、第１の信号および第２の信号を生成するよう構成された光検出部を備える。処理部は、前記第１の信号および前記第２の信号に基づいて、ＬＣＤ過駆動テーブルへの入力値を算出する。
【０００８】
また、液晶ディスプレイ（ＬＣＤ）の自動キャリブレーションのためのコンピュータプログラム製品が開示されている。そのコンピュータプログラム製品は、第１の中間調レベルのテストパッチを生成し、前記ＬＣＤ上に表示するためのコンピュータコードと、前記第１の中間調レベルの前記テストパターンに基づいて、第１の信号を生成するためのコンピュータコードと、第２の中間調レベルの第２のテストパッチを生成し、表示するためのコンピュータコードと、前記第２の中間調レベルの前記テストパターンに基づいて、第２の信号を生成するためのコンピュータコードと、前記第１の信号および前記第２の信号に基づいて、ＬＣＤ過駆動テーブルへの入力値を算出するためのコンピュータコードと、前記コンピュータコードを格納するためのコンピュータ読み取り可能な媒体と、を備える。
【０００９】
さらに別の実施形態では、液晶ディスプレイ（ＬＣＤ）の自動キャリブレーションを実行する方法が開示されている。その方法は、前記ＬＣＤにテストパターンを表示する工程と、前記表示されたテストパターンに基づいて、過駆動テーブルへの入力を自動的に行う工程と、によって実行される。
【発明を実施するための最良の形態】
【００１０】
以下では、添付の図面に一例が示された本発明の特定の実施形態について詳しく説明する。特定の実施形態を参照して本発明の説明を行うが、本発明がその実施形態に限定されることを意図するものではない。逆に、本発明は、添付の特許請求の範囲に規定された発明の趣旨および範囲に含まれる代替、変形、および等価物を網羅する。
【００１１】
８ビット（２５６レベルを表す）の画素ビットサイズ（すなわち深度）を有する特定の実施形態に関して、本発明の説明を行うが、本発明は、１０ビット画素など、他のビット深度の画素を有する実施形態にも適用可能である。
【００１２】
過駆動方法に欠かせないことの１つとして、ＬＣＤパネルの光学応答の特性を正確に決定することが挙げられる。正確なモデルを用いることで、過駆動が、所与の画素に対する応答をより正確に予測できるようになり、それにより、過駆動値と予測画素値とを、より正確に選択できるようになる。液晶は、物理的に回転する必要があるため、その粘性によって、いかに速く回転を実行できるかが決まる。所与のＬＣＤパネルの応答時間を決定するのは、この回転の速度である。
【００１３】
低速のＬＣＤパネルの性能を向上させるためには、まず、例えば、１フレーム時間の終わりまでの各画素の動態を示す一連の測定値を得ることにより、ＬＣＤパネルの性能を特徴付ける。かかる測定値は、始めに開始画素値ｓを有し、次に、目標値ｔとなるよう命令される１または複数の代表画素について取得される（ｓおよびｔは、０から２５５までの整数値）。１フレーム時間で実際に到達した画素値をｐとすると、以下のようになる。
【００１４】
【数１】
2005242308.tif 000003
【００１５】
ここで、ｆsは、ある一定の開始画素ｓに対応する１フレーム画素応答関数である。例えば、開始画素値ｓ＝３２と、目標画素値ｔ＝１９２とを有する画素に対する１フレーム画素応答関数ｆs（ｔ）は、画素値ｐ＝１００までしか到達できない場合、ｆ32（１９２）＝１００と表されることになる。
【００１６】
低速のパネル（１フレーム時間内に、目標のすべてとはいかないまでも、ほとんどの目標に到達できない）について、関数ｍ（ｓ）およびＭ（ｓ）は、それぞれ、１フレーム時間内に到達可能な最小画素値および最大画素値を、最大努力曲線を規定するｓの関数として与える。区間［ｍ（ｓ），Ｍ（ｓ）］の範囲にある画素値ｐに到達するために、画素値ｐを生成する引数、すなわち、１フレーム時間で目標（すなわち、画素値ｐ）を実現する駆動画素値と呼ばれる引数、について式（１）を解く。ｐ＜ｍ（ｓ）の場合には、駆動画素値は、最善努力値０を有すると見なされ、ｍ（ｓ）が、実現される最善努力の結果となる。同様に、ｐ＞Ｍ（ｓ）の場合には、駆動画素値は、２５５であると見なされ、Ｍ（ｓ）が、最善努力の結果となる。したがって、所与の開始画素ｓについては、駆動関数ｇsは、式２によって定義できる。
【００１７】
【数２】
2005242308.tif 000004
【００１８】
このように、過駆動画素値は、画素を、非飽和領域に存在する目標値と、飽和領域ＳMおよびＳmにそれぞれ存在するＭ（ｓ）およびｍ（ｓ）に到達させるのに効果的である。
【００１９】
数多くの非慣性系の方法（すなわち、画素の速度を無視する方法）のいずれかを用いると、各開始画素および各目標画素に対して、１フレーム時間の終わりに目標画素値を最も実現させやすいコマンド画素を示す駆動テーブルを作成することができる。理想的な例では、過駆動テーブルは、２５６の列（０から２５５の範囲で、各開始画素ごとに１つ）と、同じく２５６の行（生じうる各目標ごとに１つ）とを有するルックアップテーブルの形状をなす。しかしながら、そのサイズ（２５６×２５６）のテーブルを格納することは実用的ではないため、例えば、以下の参照シ―ケンスを用いて、３２番目の画素ごとに画素配列をサブサンプリングすることで、より小さい９×９のサイズにして、実行時に必要となるメモリおよび計算リソースの量を大幅に低減する。
【００２０】
【数３】
2005242308.tif 000005
【００２１】
ここで、最後の値は、２５５に切り捨てられる。かかるテーブルの一例として、開始画素が列ｊで与えられ、目標画素が行ｉで与えられるように構成された駆動テーブル１００が、図１に示されている。
【００２２】
過駆動テーブルを活用するには、過駆動ＬＵＴ内に列挙された少なくとも開始および目標画素値の各々に対して、ＬＣＤパネルの応答時間を決定する必要がある。したがって、以下では、任意の数および種類のＬＣＤパネルでの利用に適した本発明の自動キャリブレーション手順を説明する。
【００２３】
図２は、本発明の一実施形態に従って、ＬＣＤ自動キャリブレーション処理を実施するのに適したシステム２００を示す図である。システム２００は、コンピュータ２０８にデータを供給するキャプチャカード２０６にフィルタリング済みのデータを供給するフィルタ２０４と接続された光センサ２０２を備える。なお、光センサ２０２は、ニュージャージー州ニュートンのＴｈｏｒｌａｂｓ社が製造するＰＤＡ５５またはＰＤＡ５００など、数多くの市販の光センサのいずれを用いてもよい。コンピュータ２０８は、キャリブレートされるＬＣＤ２１２を駆動するために用いられるＬＣＤ制御部２１０に、データを供給する。キャリブレーション中、ＬＣＤパネル２１２は、コンピュータ２０８内に存在してＬＣＤ制御部２１０によって仲介される自動キャリブレーションソフトウェア２１６によって決定された通りに、テストシーケンスの間、テストパターン２１４を表示する。本発明の特定の実施形態では、物理的な（電気的な）同期信号に加えて、さらなる同期化のために、（光学的な）同期信号を用いることに注意されたい。しかしながら、この光学的な同期化は、必ず必要となるわけではないため、別の実施例では、省略してもよい。
【００２４】
説明されている実施形態では、テストパターンは、それぞれ任意の中間調レベルを有する複数のパッチ２１４の形態を取る（説明されている実施形態において、テストパターンは、２１４−１ないし２１４−３として概略的に図示されているが、様々なパッチ２１４が、１つずつＬＣＤ２１２上に表示されることに注意されたい）。したがって、適切なＬＣＤキャリブレーションを行うために、システム２００は、フレームの分裂、フレーム落ち、フレームの繰り返し、または、その他の視覚的な異常を生じることなく、出力フレームごとに（任意の中間調レベルで）各パッチ２１４を表示できる必要がある。さらに、パッチ表示コマンドの発行と、ＬＣＤ２１２上での実際の表示との間には、（複数のフレームにおいて）既知の待ち時間が存在し、それにより、表示と、それに対応する光センサ２０２による信号の取り込みとが同期化されることが好ましい。
【００２５】
少ししか値の異ならない中間調レベルの間での遷移の開始点は識別しにくいため、正確な測定のためには、遷移が開始されるフレームを知る必要がある。さらに、中間調のパッチは、ＬＣＤ２１２上で、任意のサイズおよび位置で表示できる必要がある。ＬＣＤ２１２は、行単位でアドレス指定されるため、異なる線の複数の画素においては、ある中間調レベルから次の中間調レベルへの遷移に小さい時間差が存在し、それが、遷移波形のわずかな一時的の「不鮮明化」を引き起こす。この不鮮明化は、パッチの垂直サイズを小さくすることにより低減されるが、パッチは、正確な測定を可能にするために、十分な光を光センサ２０２に供給できるだけの大きさを有する必要がある。説明されている実施形態では、ＬＣＤによって、所与の面積における光のレベルが異なるために、これらの相反する要件（不鮮明化を低減するためのパッチサイズと、十分な光出力の供給）を動的に調整する。また、位置は、センサと、スクリーン上のパッチの位置との間に最良の相関関係を確保するために、動的に変更可能である必要がある。
【００２６】
説明されている実施形態では、オンチップのオンスクリーンディスプレイ（ＯＳＤ）生成部２１８が、メモリ２２２（ＳＲＡＭ２２２）内に実際上格納されたいくつかの「タイル」からなり、画像の不鮮明化を最適化するためのパッチのサイズと、光出力との間の調整を行うＯＳＤ２２０を生成する。したがって、各タイルは、タイルの位置およびサイズ、ハイライトの位置およびサイズ、透明度／混色／点滅の情報、および、ＳＲＡＭ内のタイルデータへのポインタなどの情報を含むデータ構造の形態を取る。タイルデータは、画素データ当たり１、２、または４ビットのデータセットであり、それぞれ、２５６エントリの色ルックアップテーブル（ＣＬＵＴ）のインデックスに展開される。説明されている実施形態では、ＣＬＵＴは、２５６色の２４ビットカラーを含む２５６ワード構造であり、２５６色までの２４ビットカラーを特定のＯＳＤ２２０に表示することが可能である。ここで説明している実施例では、２つのルックアップテーブルが存在し、一方はアクティブで、他方はペンディングである。アクティブＣＬＵＴは、表示されたＯＳＤのために用いられ、ペンディングＣＬＵＴでは、ＬＣＤ２１２上に異常を起こすことなく書き込みを行うことができる。ペンディングＣＬＵＴは、更新が完了すると、アクティブＣＬＵＴと切り換えられてよい。
【００２７】
自動キャリブレーション手順では、１つの中間調の値からなる１つのパッチが、ある時点にスクリーン上に表示されればよいため、ＳＤＲＡＭにはタイルが格納されない。コマンドＳＲＡＭ内の色インデックスは、ＣＬＵＴにインデックスを付け、ＯＳＤ全体をその色で満たす。したがって、２５６の中間調レベルをＣＬＵＴに書き込むことにより、コマンドＳＲＡＭにおける色インデックスを変更するだけで、任意の中間調レベルを表示することができるようになる。さらに、ＯＳＤ２２０の位置およびサイズは、コマンドＳＲＡＭ内の対応するパラメータによって変更することができる。
【００２８】
特定のテストシーケンスが実行されている間に、光センサ２０２（ＬＣＤパネル２１２からの光を集めるような位置に配置されている）は、テストパッチ２０２によって発せられたＬＣＤ光出力をテスト信号Ｓtestに変換することに注意されたい。信号Ｓtestは、様々なテストパターンの画素の遷移を示すものであり、主に、低周波数成分からなり、それ自体、一般に、フレームレートのおよそ数倍ほどの周波数を有する。不要な高周波ノイズすべてを低減するために、信号Ｓtestは、約１ｋＨｚの遮断周波数を有するフィルタ２０４によってフィルタリングされる。フィルタリングされた信号は、次に、コンピュータ２０８上の自動キャリブレーションソフトウェア２１６に入力する準備として、キャプチャカード２０６によってサンプリングされる。
【００２９】
特定のテストシーケンスに対する適切な測定値が、受信され処理されると、コンピュータ２０８は、ＬＣＤ制御部２１０が通常動作中にＬＣＤパネル２１２を制御するために用いるＬＣＤ過駆動テーブル２２４に入力される適切なＬＣＤ過駆動テーブル値を算出する。垂直リフレッシュレートによって、ＬＣＤにおける応答が異なるため、各垂直リフレッシュレートは、別個に測定および記録される必要があることに注意されたい。
【００３０】
また、ＬＣＤ光学応答は、軸上の視野から軸外の視野まで幅広く変化しうるものであり、光検出器で受光される角度が大きいため、ＬＣＤ自体からの軸外の光だけでなく、頭上の蛍光灯や日光など周囲の光によっても、測定が不正確になりうることに注意されたい。したがって、外部コリメータ（図示せず）は、軸外の光を排除することが望ましいが、サンプリングされる光全体を減少させるために、最終的なセンサ出力の信号対ノイズ比が低くなりうる。
【００３１】
ここで、本発明の一実施形態に従ったＬＣＤパネルを自動キャリブレーションするための方法を、図３ないし５を参照して説明する。図３は初期設定処理３００を示す図、図４はパネル応答測定処理４００を示す図、図５はＬＣＤ過駆動テーブル生成処理５００を示す図である。
【００３２】
初期設定処理３００は、ディスプレイを初期化し、データ取得装置（ＤＡＱ装置）をリセットして、サポートされたＤＡＱ装置がＰＣに接続されていることを確認することにより実行される。説明されている実施形態では、ＤＡＱ装置の属性（ゲイン設定、ビット解像度など）をリストするデータ構造が書き込まれ、工程３０２において、ＤＡＱ装置が初期状態にリセットされる。次に、工程３０４において、パネルのデータが読み込まれ、工程３０６において、必要最小限の（２つの）入力チャネルが存在すること、ＤＡＱ装置が８から１６ビットの間のサンプリング解像度を有すること、および、ゲイン設定の配列が順序づけられていることを確認することにより、ＤＡＱ装置のキャリブレーションが行われる。さらに、ＲＧＢ＝（２５５，２５５，２５５）を有する中間調パッチを全画面に表示することにより、過飽和することなく最良の解像度を提供するＤＡＱ装置のゲイン設定を求める。さらに、ボードから提供される同期信号は、指定されたレートで切り換えられるため、センサの電圧が比較的安定することを確実にするために、同期極性が調べられる。
【００３３】
次に、工程３０８において、センサの位置が検出される。ＬＣＤにおける各走査線は、順次にアドレス指定されるため、光センサの垂直位置によって、各ステップの応答の遷移測定を開始すべき正確な瞬間が決まる。アルゴリズムのこの部分は、センサの垂直位置を検出するために重複二分探索を用いて、スクリーン上にパッチを表示する。説明されている実施形態では、ＬＣＤスクリーンの半分の垂直高さを有するパッチが表示される。ＬＣＤパネルの上部、下部、および中央部に位置する３つのパッチが測定される。次いで、最大の光学応答を有するパッチは、次の反復においては、さらに分割される。すなわち、各反復では、前の反復の半分の垂直高さを有するパッチが用いられる。適度な応答（所定の閾値よりも高い）を有する最小のパッチの中心は、センサの垂直方向の中心であると見なされる。この線番号を用いて、垂直同期信号からセンサ中心までのサンプルにおける遅延を算出して、格納する。初期設定が完了すると、工程３１０において、パネルの応答が測定される。
【００３４】
図４は、上述のパネル応答測定動作３１０の特定の実施例として、処理４００を示す図である。工程４０２において、複数の中間調パッチの値を表示して測定することにより中間調レベルが測定され、レベル対応曲線をサンプリングするための中間調レベルが生成される（各中間調レベルは、ノイズの影響を平均化するために複数回サンプリングされる）。次に、工程４０４において、複数のステップの各組み合わせを通して反復することにより、ステップ応答が測定される。例えば、９×９の粗いテーブル（３２中間調レベルごと）は、３６の立ち上がりステップと３６の立ち下がりステップとを必要とする。各反復は、１つの上立ち上がりステップと１つの立ち下がりステップとを測定する。パネルは、低い中間調レベルと高い中間調レベルとを繰り返す。すなわち、各中間調レベルは、選択された数のフレームの間表示され、低から高および高から低への各遷移は、選択された回数繰り返される。所与の中間調レベルを表示するフレームの数は、パネルが新しい中間調レベルに落ち着くことを可能にするため、通常、かなり高く（〜４０フレーム）設定される。各ステップを複数回繰り返して測定を行い、ノイズの影響を平均化する。説明された実施形態では、ＤＡＱ装置は、工程４０８において、測定データを特徴付けアルゴリズムに戻す。ここで、データの各組は、同時に測定された光センサのデータと垂直同期のデータとを含む。測定データは、以下の条件に従う必要がある。すなわち、同期データは、最初の同期パルスの立ち上がりエッジと立ち下がりエッジとを完全に含む必要があり、光センサからの最初の立ち上がりエッジの遷移は、最初の同期化のすぐ後のフレームで起きる必要がある。
【００３５】
ＤＬＬからのサンプルストリームが、上述の第１の条件に従うことを確実にするために、各反復の最初のサンプルにおいて同期信号の極性を検査する工程など、測定処理を通して多くのエラーチェックが実行され、各遷移において、遷移の開始点におけるセンサのサンプルは、上述の中間調レベル測定工程中に得られた対応するレベルに近い必要があることに注意されたい。開始点は、上で設定したアルゴリズムのセンサ位置検出手順中に算出されたものである。測定された遷移の各々は、立ち上がりエッジ遷移が予期される場合には最初から最後まで上昇し、立ち下がりエッジ遷移が予期される場合には降下する。次に、工程４０８において、１０−９０％および０−９９％の立ち上がり時間が、静的な中間調レベルの測定値に基づいて始点および終点のパーセンテージの対応する中間調レベルの値を算出することによって測定される次に、シーケンスの最初のフレームの始めから、データを、必要な始点および終点の中間調レベルと比較して、その間のサンプルの数を算出する。サンプルの数は、立ち上がり／立ち下がり時間を求めるために、ミリ秒の時間に換算される。各ステップを複数回繰り返して測定を行い、ノイズの影響を平均化する。工程４１０において、再び、中間調レベルが測定される。中間調レベルの測定値は、第１の組の測定値から第２の組の測定値まで一貫している必要があるため、工程４１２において、中間調レベルが比較される。中間調レベルが、過度に異なっている場合には、パネルのウォームアップ時間が不十分である、周囲の光のレベルに急激な変化がある、または、測定値の信頼性を著しく損なう同様の影響があることが示唆される。工程４１４において、パネルの測定値は、ファイルに送られる。
【００３６】
必要に応じて、ステップの各組み合わせ（３６の立ち上がりステップと３６の立ち下がりステップ）を通して反復し、１度に１フレームとして各中間調レベルを表示して、２つの中間調レベルのピーク間電圧の差を測定することにより、ピーク間の１フレームのステップ測定を行うことに注意されたい。各ステップは、ノイズと不安定とを平均化するために、３０回繰り返される。この情報は、過駆動されたピーク間の結果と比較するために、後で用いられる。
【００３７】
図５は、動作４１４のファイルに提供されるパネルの測定値に基づいて、過駆動テーブルを生成するための処理５００を示す図である。工程５０２において、ファイルからパネルのデータが読み出され、工程５０４において、各遷移に対してパネル応答が飽和しているか否か判断される。パネル応答が飽和している場合（すなわち、中間調０または２５５に駆動されても、ＬＣＤが、所望の中間調レベルに到達できない場合）には、工程５０６において、飽和点と、飽和点の前の測定値とによって決定される線に沿って補外を行うことにより、飽和した部分と有効な測定値の部分との間の領域で線形補間を維持し、１０ビットの符号付きの値（−５１２から＋５１１）を生成する。一方、パネル応答が飽和していない場合には、工程５０８において、単純な逆線形補間によって、過駆動の値が算出され、いずれの場合でも、工程５１０において、過駆動の値が、過駆動テーブルに割り当てられる。工程５１２において、さらなる測定値データが利用可能である場合には、工程５０２に戻り、ない場合には、処理が終了する。
【００３８】
図６は、本発明を実施するために用いられるシステム６００を示す図である。コンピュータシステム６００は、本発明を実施できるグラフィクスシステムの一例にすぎない。コンピュータシステム６００は、中央処理装置（ＣＰＵ）６１０と、ランダムアクセスメモリ（ＲＡＭ）６２０と、読み出し専用メモリ（ＲＯＭ）６２５と、１または複数の周辺機器６３０と、グラフィクスコントローラ６６０と、一次記憶装置６４０および６５０と、デジタルディスプレイ部６７０とを含む。ＣＰＵ６１０は、さらに、１または複数の入出力装置６９０に接続されてよい。入出力装置６９０は、トラックボール、マウス、キーボード、マイクロホン、タッチセンシティブディスプレイ、変換器型カードリーダ、磁気テープもしくは紙テープリーダ、タブレット、スタイラス、音声もしくは手書き文字認識装置、および別のコンピュータのような他の周知の入力装置などの装置を含むがこれらに限定されない。グラフィックスコントローラ６６０は、画像データおよびそれに対応する基準信号を生成し、デジタル表示部６７０に供給する。画像データは、例えば、ＣＰＵ６１０または外部のエンコード（図示せず）から受信された画素データに基づいて生成することができる。一実施形態では、画像データはＲＧＢフォーマットで提供され、基準信号は当技術分野で周知のＶSYNCおよびＨSYNC信号を含む。しかしながら、本発明は、他のフォーマットの画像データおよび／または基準信号を用いて実施することも可能であることを理解されたい。例えば、画像データは、対応する時間基準信号を備えたビデオ信号データであってもよい。
【００３９】
以上では、いくつかの実施形態のみを説明したが、本発明は、発明の趣旨または範囲を逸脱しない限りにおいて、他の様々な形態で実施することができることを理解されたい。上記の実施例は、例示的であって限定的ではないので、本発明は、本明細書の詳細事項に限定されることはなく、添付された特許請求の範囲と、あらゆる等価物の範囲において、変形可能である。
【００４０】
説明されている実施形態を参照して本発明の説明を行ったが、本発明の範囲内の代替、置換、および等価物が存在する。本発明の処理および装置の両方を実施する多くの別の方法が存在することに注意されたい。したがって、本発明は、本発明の真の趣旨および範囲に含まれる代替、置換、および等価物のすべてを包含するものとして解釈される。
【図面の簡単な説明】
【００４１】
【図１】過駆動テーブルの一例を示す図。
【図２】本発明の一実施形態に従って、ＬＣＤ自動キャリブレーション処理を実施するのに適したシステムを示す図。
【図３】本発明の一実施形態に従って、ＬＣＤパネルの自動キャリブレーションを行うための処理を詳細に示したフローチャートである。
【図４】図３で説明した処理のディスプレイテストパターン工程の特定の実施例を示す図。
【図５】工程４１０の特定の実施例を示す図。
【図６】本発明を実施するために用いられるシステムの一例を示す図。
【図１】
2005242308.tif 000006
【図２】
2005242308.tif 000007
【図３】
2005242308.tif 000008
【図４】
2005242308.tif 000009
【図５】
2005242308.tif 000010
【図６】
2005242308.tif 000011
【外国語明細書】
1. TITLE OF THE INVENTION
LCD OVERDRIVE AUTO-CALIBRATION APPARATUS AND METHOD
2. BACKGROUND OF THE INVENTION
FIELD OF THE INVENTION
[0001] The invention relates to display devices.  More specifically, the invention describes a method and apparatus for enhancing the appearance of motion on an LCD panel display.
OVERVIEW
[0002] Each pixel of an LCD panel can be directed to assume a luminance value discretized to the standard set [0, 1, 2, ..., 255] where a triplet of such pixels provides the R, G, and B components that make up an arbitrary color which is updated each frame time, typically 1/60th of a second.  The problem with LCD pixels is that they respond sluggishly to an input command in that the pixels arrive at their target values only after several frames have elapsed, and the resulting display artifacts ― “ghost” images of rapidly moving objects ― are disconcerting.  Ghosting occurs when the response speed of the LCD is not fast enough to keep up with the frame rate.  In this case, the transition from one pixel value to another cannot be attained within the desired time frame since LCDs rely on the ability of the liquid crystal to orient itself under the influence of an electric field.  Therefore, since the liquid crystal must physically move in order to change intensity, the viscous nature of the liquid crystal material itself contributes to the appearance of ghosting artifacts. 
[0003] In order to reduce and/or eliminate this deterioration in image quality, the LC response time is reduced by overdriving the pixel values such that a target pixel value is reached, or almost reached, within a single frame period.  In particular, by biasing the input voltage of a given pixel to an overdriven pixel value that exceeds the target pixel value for the current frame, the transition between the starting pixel value and target pixel value is accelerated in such a way that the pixel is driven to the target pixel value within the designated frame period.  However, in order to efficiently calculate the overdrive pixel value, an LCD overdrive table is used that provides the appropriate overdrive pixel value that corresponds to a start, target pixel pair.
[0004] Accordingly, in an LCD controller, a LCD overdrive look up table (or LUT) is used to remap 8-bit values to the LCD panel in a current frame in order to speed the transition from the start pixel value to the target pixel value. Since each panel has different physical characteristics governing its liquid crystal element response time, each panel must be characterized to determine the proper transfer function to be used in the lookup table. In the absence of software that automatically performs the calibration, it must be performed manually. Since the calibration requires over 80 separate measurements, manual calibration is time-consuming and fraught with potential for human error.
[0005] Therefore, what is required is a method, system, and apparatus that automatically calibrates LCD panels and calculates the resultant calibration data used in populating an LCD overdrive table.
3. SUMMARY OF THE DISCLOSURE
[0006] What is provided is a method, apparatus, and system suitable for auto-calibrating a liquid crystal display (LCD) panel.  In one embodiment, the method is carried out by generating and displaying on the LCD a test patch at a first grey level, generating a first signal based upon the test pattern at the first grey level, generating and displaying a second test patch at a second grey level, generating a second signal based upon the test pattern at the second grey level, and calculating an entry to an LCD overdrive table based upon the first and the second signal.
[0007] In another embodiment, an auto-calibration system suitable for automatically calibrating a liquid crystal display (LCD) is described.  The system includes a processor unit and an onscreen display generator unit coupled to the LCD and the processor unit arranged to generate and display on the LCD a first test patch at a first grey level at a first time slot and generate and display on the LCD a second test patch at a second grey level at a second time slot under control of the processor unit.  The system also includes a photosensitive detector coupled to the processor unit arranged to generate a first signal and a second signal each based upon light received from the first patch and the second patch, respectively.  The processor in turn calculates an entry to an LCD overdrive table based upon the first and the second signal.
[0008] Computer program product for auto-calibration of a liquid crystal display (LCD).  The computer program product includes computer code for generating and displaying on the LCD a test patch at a first grey level, computer code for generating a first signal based upon the test pattern at the first grey level, computer code for generating and displaying a second test patch at a second grey level, computer code for generating a second signal based upon the test pattern at the second grey level, computer code for calculating an entry to an LCD overdrive table based upon the first and the second signal, and computer readable medium for storing the computer code.
[0009] In yet another embodiment, a method of automatically calibrating a liquid crystal display (LCD) is disclosed.  The method is performed by displaying a test pattern on the LCD and automatically populating an overdrive table based upon the displayed test pattern.
4. DETAILED DESCRIPTION OF SELECTED EMBODIMENTS
[0010] 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.
[0011] It should be noted that even though the invention is described with respect to a specific embodiment having a pixel bit size (or depth) of 8 bits (representative of 256 levels), the invention is also applicable to embodiments having pixels of other bit depths, such as 10-bit pixels.
[0012] One of the keys to the overdrive method is accurate characterization of the LCD panel's optical response. An accurate model allows the overdrive to more accurately predict the response to a given pixel thereby allowing a more accurate selection of overdriven value and predicted pixel values.  The liquid crystals must physically rotate and thus its viscosity determines how quickly this rotation can take place. It is the speed of this rotation that determines the response time of a given LCD panel. 
[0013] In order to improve the performance of slow LCD panels, the performance of the LCD panel is first characterized by, for example, taking a series of measurements that show what each pixel will do by the end of one frame time.  Such measurements are taken for a representative pixel (or pixels) each being initially at a starting pixel value s that is then commanded toward a target value  (where  and  each take on integer values from 0 to 255).  If the pixel value actually attained in one frame time is , then 
(1)  
2005242308.tif 000012
[0014] where is the one-frame pixel-response function corresponding to a fixed start-pixel .  For example, the one-frame pixel response function fs (t) for a pixel having a start pixel value s = 32 and a target pixel value t = 192 that can only reach a pixel value p = 100 is represented as f32(192) = 100.
[0015] For slow panels (where most if not all targets can not be reached within a frame time) functions m(s) and M(s) give the minimum pixel value and maximum pixel value, respectively, reachable in one frame time as functions of  that define maximum-effort curves.  In order to reach a pixel value  that lies within the interval , equation  is solved for the argument that produces pixel value  referred to as the overdrive pixel value that will achieve the goal (i.e., pixel value ) in one frame time.  If , then the overdrive pixel value is taken as having a best-effort value of 0, with  being the best-effort result achieved.  Likewise, if  then the overdrive pixel is taken to be 255, with  being the best-effort result.  Thus, for a given start pixel , overdrive function  can be defined by equation 2 as
(2)  
2005242308.tif 000013
[0016] In this way, the overdrive pixel value is effective in compelling the pixel to reach its target value in the non-saturation region and M(s) and m(s) in the saturation regions SM and Sm, respectively. 
[0017] Using any of a number of non-inertial approaches (i.e., one that ignores pixel velocity) it is possible to create an overdrive table that shows, for each starting pixel and each target pixel, the command pixel that will most-likely cause the target pixel value to be achieved at the end of one frame time.  In an ideal case, the overdrive table is formed of a lookup table with 256 columns ― one for each starting pixel in the range 0 to 255 ― and likewise 256 rows, one for each possible target.  However, it isn’t practical to store a table of that size (256 x 256) so by sub-sampling the pixel array at every 32nd pixel, for example, using a reference sequence:
(3)  
2005242308.tif 000014
[0018] (in which the last entry is truncated to 255), a smaller is developed that greatly reduces the amount of memory and computational resources required at runtime.  One such overdrive table 100  configured in such a way that a start pixel is given by column  and a target pixel by row  is shown in FIG. 1.  
[0019] In order to take advantage of the overdrive table, an LCD panel's  response time must be determined for at least each of the start and target pixel values enumerated in the overdrive LUT.  Therefore, an auto-calibration procedure in accordance with the invention is hereinafter described suitable for use with any number and kind of LCD panels.
[0020] Accordingly, FIG. 2 shows a system 200 suitable for implementing an LCD auto-calibration process in accordance with an embodiment of the invention.  The system 200 includes a photosensor 202 coupled to a filter 204 that in turn provides filtered data to a capture card 206 that provides data to a computer 208.  (It should be noted that the photosensor 202 can be any of a number of commercially available photosensors such as the PDA55 or the PDA500 manufactured by Thorlabs, Inc. of Newton, NJ).  The computer 208, in turn, provides data to an LCD controller unit 210 that is used to drive an LCD 212 being calibrated.  During calibration, the LCD panel 212 displays a test pattern 214 during a test sequence as determined by auto-calibration software 216 resident on the computer 208 and mediated by the LCD controller unit 210.  It should be noted that in one specific embodiment of the invention an (optical) synchronization signal is used for additional synchronization above and beyond the physical (electrical) sync signal. However, this optical sync is not strictly necessary and may be omitted in an alternate implementation
[0021] In the described embodiment, the test pattern takes the form of a number of patches 214 each of an arbitrary grey level (it should be noted that although the test pattern is shown schematically as 214-1 through 214-3, in the described embodiment, the various patches 214 are displayed one at a time on the LCD 212).  Therefore, for proper LCD calibration, the system 200 must be able to display each patch 214 (at an arbitrary grey level) per output frame, with no frame tear, frame drops, repeated frames, or other visible glitches. In addition, there should be a known latency (in frames) between the issuance of a patch display command and its actual display on the LCD 212 thereby synchronizing the display and corresponding signal capture by the photosensor 202. 
[0022] Since the starting point of transitions between grey levels of only slightly different values can be difficult to distinguish, the frame in which the transition starts must be known for accurate measurement.  In addition, the grey patch must be able to be displayed at an arbitrary size and position on the LCD 212. Since the LCD 212 is addressed row by row, there is a small temporal lag in the transition from one grey level to the next in pixels of different lines giving rise to a slight temporal "smearing" of the transition waveform.  This smearing is mitigated by reducing the vertical size of the patch, however, the patch must still be large enough to provide sufficient light for the photosensor 202 to provide accurate measurement.  In the described embodiment, these competing requirements, (patch size to reduce smearing vs. providing sufficient light output) is done dynamically, since different LCDs have different light levels over a given area. Also, the position must be dynamically changeable to ensure the best correlation between sensor and patch position on the screen.
[0023] In the described embodiment, an on-chip On Screen Display (OSD) generator 218 generates an OSD 220 formed of several "tiles" virtually stored in a memory 222 (such as SRAM 222) that mediates between the size of the patch to optimize image smearing and light output.  Accordingly, each tile is formed of a data structure that includes such information as tile position and size, highlight position and size, transparency/blend/blink information, and a pointer to the tile data in SRAM. The tile data is a set of 1, 2, or 4 bit per pixel data, each of which is expanded into an index to a 256 entry color lookup table (CLUT).  In the described embodiment, the CLUT is a 256 word structure containing 256 24-bit colors that allows for up to 256 24-bit colors to be displayed in a particular OSD 220. In the currently described implementation, there are two lookup tables, one active and one pending. The active CLUT is used for the displayed OSD while the pending CLUT can then be written to without causing glitches on the LCD 212. Once the pending CLUT has finished being updated, it can be switched with the active CLUT.
[0024] Since the auto-calibration procedure requires only that a single patch consisting of one grey value be displayed on the screen at a time, no tile is stored in SDRAM. The color index in command SRAM indexes into the CLUT and fills the entire OSD with that color. Therefore, by filling up the CLUT with 256 gray levels, any gray level can be displayed simply by changing the color index in the command SRAM.  In addition, the position and the size of the OSD 220 can be changed by corresponding parameters in command SRAM
[0025] It should be noted that while a particular test sequence is running, the photosensor 202 (placed in such a position to gather light from the LCD panel 212) converts the LCD light output generated by the test patches 202 to a test signal Stest.  The signal Stest is representative of the pixel transitions of the various test patterns it is primarily composed of low frequency components and as such generally has a frequency on the order of just a few times the frame rate.  In order to reduce any spurious high frequency noise, the signal Stest is filtered by the filter 204 having a cutoff frequency of approximately 1kHz.  The filtered signal is then sampled by the capture card 206 in preparation for input to the auto-calibration software 216 on the computer 208.
[0026] Once the appropriate measurements for the particular test sequence has been received and processed, the computer 208 calculates appropriate LCD overdrive table values used to populate an LCD overdrive table 224 used by the LCD controller unit 210 to control the LCD panel 212 during normal operation.  It should be noted that each vertical refresh rate creates a different response in the LCD and must be measured and recorded separately.
[0027] It should also be noted that since the LCD optical response can vary widely from on-axis to off-axis viewing and has a wide acceptance angle into its photoreceptor can cause measuring inaccuracies due to not only off-axis light from the LCD itself but also from environmental ambient light such as overhead fluorescent or sunlight.  Therefore, an external collimator (not shown) may be desirable to eliminate off-axis light, however, the collimator will also reduce the total light sampled and may thus reduce the signal-to-noise ratio of the final sensor output.
A method for auto-calibrating an LCD panel in accordance with an embodiment of the invention will now be discussed with regards to FIGs. 3 through 5 representing an initial set up process 300 (FIG. 3), a panel response measurement process 400 (FIG. 4) and a generating an LCD overdrive table process 500 (FIG. 5).
Accordingly, the initial set up process 300 by initializing the display by resetting the data acquisition device, or DAQ device, by checking that a supported DAQ device is connected to the PC.  In the described embodiment, a data structure that lists the DAQ device properties (gain settings, bit resolution, etc.) is filled out and the DAQ device is reset to an initial state at 302.  Next at 304, panel data is read in while at 306, the DAQ device is calibrated by verifying that the minimum necessary (two) input channels exist, that the DAQ device has a sample resolution between 8 and 16 bits, and that the array of gain settings is ordered.  In addition, a full screen grey patch with RGB=(255,255,255) is displayed to find the gain setting for the DAQ device that provides the best resolution without over-saturation.  In addition, the synchronization signal provided from the board is toggled at the specified rate; the sync polarity is checked to ensure that the sensor voltage is relatively stable.
Next at 308, a sensor position is found.  Since each scan line in the LCD is addressed sequentially, the vertical position of the optical sensor will determine the exact instant each step response transition measurement must start. This part of the algorithm displays patches on the screen using an overlapping binary search to find the sensor's vertical position.  In the described embodiment, patches with a vertical height of one half that of the LCD screen is displayed. Three such patches are measured, covering the top, bottom, and middle of the LCD panel. The patch with the strongest optical response is then subdivided in the next iteration, each of which uses patches with half the vertical height of those of the previous iteration. The midpoint of the smallest patch with a reasonable response (above a defined threshold) is taken to be the sensor's vertical midpoint. Using this line number, the delay in samples from the vertical synchronization signal to the sensor midpoint is calculated and stored.  Once the initial set up is complete, the panel response is measured at 310.
FIG. 4 shows a process 400 that describes a particular implementation of the panel response measurement operation 310 described above.  At 402, grey levels are measured by displaying and measuring multiple grey patch values to generate a grey level to sample level correspondence curve (each grey level is sampled multiple times to average out noise effects).  Next at 404, a step response is measured by iterating through each combination of steps. For example, a 9x9 coarse table (every 32 grey levels), requires 36 rising and 36 falling steps. Each iteration measures one rising and one falling step. The panel alternates between a lower and higher grey level; each grey level is displayed for a chosen number of frames, and each low to high and high to low transition is repeated for a chosen number of times. The number of frames to display a given grey level is usually set quite high (〜40 frames) to allow the panel to settle to the new grey level. Multiple repetitions of each step are measured to average out noise effects.  It should be noted that in the described embodiment, the DAQ device returns the measured data to the characterization algorithm at 408 where each set of data contains both the optical sensor data and the vertical sync data, which are measured simultaneously. The measured data must conform to the following: the sync data must contain the full leading and trailing edge of the first sync pulse, and the first rising edge transition from the optical sensor must occur in the frame immediately following the first sync.
It should be noted that throughout the measurement process,  a number of error checks are performed that include checking the polarity of the sync signal at the first sample of each iteration to help ensure the sample stream from the DLL conform to the first condition above and at each transition, the sensor sample at the transition starting point must be close to the corresponding level obtained during the measure grey levels step above. The starting point is the one calculated during the Find sensor position procedure of the algorithm setup above.  Each measured transition must rise from start to end if expecting a rising edge transition, or fall if expecting a falling edge transition.  Next at 408, rise times of 10-90% and 0-99% are measured by first calculating the corresponding grey level values of the starting and ending percentages based on the static grey level measurements.  Then, from the start of the first frame of the sequence, it compares the data to the starting and ending grey levels required in order to calculate the number of samples in between. The number of samples is translated into time in milliseconds to find the rise/fall times.  Multiple repetitions of each step are measured to average out noise effects.  At 410, the grey levels are measured again and at 412, the grey levels are compared since the grey level measurements must be consistent from the first to the second set of measurements. If they drift excessively, it could indicate insufficient panel warm up time, a sudden change in the ambient light level, or similar effects which could seriously impair the reliability of the measurements.  At 414, the panel measurements are sent to a file.
It should be noted that optionally peak-to-peak one-frame step measurements are performed by iterating through each combination of steps (36 rising and 36 falling steps), displaying each grey level one frame at a time and measuring the peak-to-peak voltage difference between the two grey levels.  Each step is repeated 30 times to average out noise and instability.  This information will be used later to compare to the overdriven peak-to-peak results.
FIG. 5 shows a process 500 for generating an overdrive table based upon the panel measurements provided to the file of the operation 414.  At 502, the panel data is read from the file and at 504 a determination is made that for each transition is the panel response saturated.  If the panel response is saturated (i.e. the LCD cannot reach the desired grey level even if driven to grey 0 or grey 255), then at 506 the an extrapolation  along the line defined by the saturation point and the measurement before the saturation point thereby preserving the linear interpolation in the area between the saturated portion and the valid measurement portion creating a 10-bit signed value, -512 to +511.  On the other hand, if the panel response is not saturated, then at 508 the overdrive value is calculated by simple reverse linear interpolation and in any case, at 510, the overdrive value is assigned to the overdrive table.  At 512, if more measurement data is available, then control is passed back to 502, otherwise the process ends.
[0028] FIG. 6 illustrates a system 600 employed to implement the invention.  Computer system 600 is only an example of a graphics system in which the present invention can be implemented.  System 600 includes central processing unit (CPU) 610, random access memory (RAM) 620, read only memory (ROM) 625, one or more peripherals 630, graphics controller 660, primary storage devices 640 and 650, and digital display unit 670.  CPUs 610 are also coupled to one or more input/output devices 690 that may include, but are not limited to, devices such as, track balls, mice, keyboards, microphones, touch-sensitive displays, transducer card readers, magnetic or paper tape readers, tablets, styluses, voice or handwriting recognizers, or other well-known input devices such as, of course, other computers.  Graphics controller 660 generates image data and a corresponding reference signal, and provides both to digital display unit 670.  The image data can be generated, for example, based on pixel data received from CPU 610 or from an external encode (not shown).  In one embodiment, the image data is provided in RGB format and the reference signal includes the VSYNC and HSYNC signals well known in the art.  However, it should be understood that the present invention could be implemented with image, data and/or reference signals in other formats.  For example, image data can include video signal data also with a corresponding time reference signal.
[0029] Although only a few embodiments of the present invention have been described, it should be understood that the present invention might be embodied in many other specific forms without departing from the spirit or the scope of the present invention.  The present examples are to be considered as illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope of the appended claims along with their full scope of equivalents.
[0030] While this invention has been described in terms of a described embodiment, there are alterations, permutations, and equivalents that fall within the scope of this invention.  It should also be noted that there are many alternative ways of implementing both the process and apparatus of the present invention.  It is therefore intended that the invention be interpreted as including all such alterations, permutations, and equivalents as fall within the true spirit and scope of the present invention.
5. BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 shows an exemplary overdrive table. 
FIG. 2 shows a system suitable for implementing an LCD auto-calibration process in accordance with an embodiment of the invention.  
FIG. 3 shows a flowchart detailing a process for auto-calibrating an LCD panel in accordance with an embodiment of the invention. 
FIG. 4 shows a particular implementation of the display test pattern step of the process described with respect to FIG. 3 above as a process.  
FIG. 5 that shows a particular implementation of the step 410
FIG. 6 illustrates an exemplary system employed to implement the invention.  
1.  A method of auto-calibrating a pixel overdrive table to a liquid crystal display (LCD), comprising:
generating and displaying on the LCD a test patch at a first grey level;
generating a first signal based upon the test pattern at the first grey level;
generating and displaying a second test patch at a second grey level;
generating a second signal based upon the test pattern at the second grey level; and
calculating an entry to the LCD overdrive table based upon the first and the second signal.
2.  The method as recited in claim 1, further comprising:
displaying a black background on the LCD; and
setting a test patch position and size with respect to a pre-selected LCD panel reference point.
3.  The method as recited in claim 2, further comprising:
replacing the test patch with a pattern of alternating grey patches; and
preceding each of the grey patches by an optical sync pulse. 
4.  The method as recited in claim 3, wherein the optical sync pulse comprises:
transitioning from a grey level 0 to a grey level 255; 
transistioning from the grey level 255 to the grey level 0; and
displaying each grey level on the LCD panel for a number of frames sufficiently enough to long to allow the LCD panel to settle back to the grey level 0 between the sync pulse and the start of a next transition.
5.  An auto-calibration system suitable for automatically calibrating a liquid crystal display (LCD), comprising:
a processor unit;
an onscreen display generator unit coupled to the LCD and the processor unit arranged to generate and display on the LCD a first test patch at a first grey level at a first time slot and generate and display on the LCD a second test patch at a second grey level at a second time slot under control of the processor unit;
a photosensitive detector electrically coupled to the processor unit arranged to generate a first signal and a second signal each based upon light received from the first patch and the second patch, respectively; and
calculating an entry to an LCD overdrive table based upon the first and the second signal.
6.  The system as recited in claim 5, wherein the OSD generator displays a black background on the LCD panel and sets a test patch position and size with respect to a pre-selected LCD panel reference point.
7.  The system as recited in claim 6, further comprising:
an optical sync pulse generator coupled to the OSD generator wherein the OSD generator replaces the test patch with a pattern of alternating grey patches and precedes each of the grey patches by an optical sync pulse generated by the optical sync pulse generator. 
8.  The system as recited in claim 7, wherein optical sync pulse generator generates the optical sync pulse by transitioning from a grey level 0 to a grey level 255 and back again and displaying each grey level on the LCD panel for a number of frames sufficiently enough to long to allow the LCD panel to settle back to the grey level 0 between the sync pulse and the start of a next transition.
9.  Computer program product for auto-calibration of a liquid crystal display (LCD) panel, comprising:
computer code for generating and displaying on the LCD a test patch at a first grey level;
computer code for generating a first signal based upon the test pattern at the first grey level;
computer code for generating and displaying a second test patch at a second grey level;
computer code for generating a second signal based upon the test pattern at the second grey level; 
computer code for calculating an entry to an LCD overdrive table based upon the first and the second signal; and
computer readable medium for storing the computer code.
10.  The computer program product as recited in claim 9, further comprising:
computer code for displaying a black background on the LCD; and
computer code for setting a test patch position and size with respect to a pre-selected LCD panel reference point.
11.  The computer program product as recited in claim 10, further comprising:
computer code for replacing the test patch with a pattern of alternating grey patches; and
computer code for preceding each of the grey patches by an optical sync pulse.
12.  The computer program product as recited in claim 11, wherein the optical sync pulse comprises:
computer code for transitioning from a grey level 0 to a grey level 255; 
computer code for transistioning from the grey level 255 to the grey level 0; and
computer code for displaying each grey level on the LCD panel for a number of frames sufficiently enough to long to allow the LCD panel to settle back to the grey level 0 between the sync pulse and the start of a next transition.
13.  A method of automatically calibrating a liquid crystal display (LCD), comprising:
displaying a test pattern on the LCD; and
automatically populating an overdrive table based upon the displayed test pattern.
1. ABSTRACT
A method of auto-calibration of a liquid crystal display (LCD) is described.  The method is carried out by generating and displaying on the LCD a test patch at a first grey level, generating a first signal based upon the test pattern at the first grey level, generating and displaying a second test patch at a second grey level, generating a second signal based upon the test pattern at the second grey level, and calculating an entry to an LCD overdrive table based upon the first and the second signal.
2. REPRESENTATIVE DRAWING
Fig. 2
2005242308.tif 000015
2005242308.tif 000016
2005242308.tif 000017
2005242308.tif 000018
2005242308.tif 000019
2005242308.tif 000020