(57)【特許請求の範囲】
【請求項１】
入力値を所定の関数により変換して出力値とするために、演算処理装置に入力された入力値を、テクスチャを参照して出力値に変換する演算処理装置によるデータ変換方法であって、
前記演算処理装置が、
Ｍ個のデータによりＭ−１個の区間に等分割された入力範囲と、Ｍよりも小さなＮ個のデータによりＮ−１個の区間に等分割された出力範囲とを、前記入力範囲におけるＭ個のデータからＮ個のデータを非等分割に選択して、前記出力範囲のＮ個のデータとの関連づけがされた第１のテクスチャを参照し、前記入力値を非等分割値に変換する第１のテクスチャ参照手順と、
前記Ｎ−１個の各区間における関数値を、前記関数を表す直交関数の０次及び１次成分により補間した第２のテクスチャを参照して、前記非等分割値の線形近似成分を生成する第２のテクスチャ参照手順と、
前記Ｎ−１個の各区間における前記直交関数の２次以上の成分の展開係数からなるテクスチャ群を補間した第３のテクスチャを参照して、前記非等分割値に応じた展開係数を生成する第３のテクスチャ参照手順と、
前記非等分割値の属する区間から前記直交関数の２次以上の成分の関数値を生成する関数値生成手順と、
前記第３のテクスチャ参照手順により生成された展開係数、及び前記関数値生成手順により生成された関数値の積を算出し、この結果を前記第２のテクスチャ参照手順により生成された線形近似成分に加算して出力値とする加算手順とを実行することを特徴とする演算処理装置によるデータ変換方法。
【請求項２】
請求項１に記載の演算処理装置によるデータ変換方法において、
前記関数値生成手順は、
前記各テクスチャ群における前記直交関数の関数値を記憶した第４のテクスチャを参照して関数値を生成することを特徴とする演算処理装置によるデータ変換方法。
【請求項３】
請求項１又は請求項２に記載の演算処理装置によるデータ変換方法において、
前記直交関数は、ルジャンドル多項式であることを特徴とする演算処理装置によるデータ変換方法。
【請求項４】
請求項１乃至請求項３のいずれか一項に記載の演算処理装置によるデータ変換方法において、
前記第３のテクスチャ参照はＮＥＡＲＥＳＴ読み出しで行なわれることを特徴とする演算処理装置によるデータ変換方法。
【請求項５】
入力値を所定の関数により変換して出力値とするために、入力値を変換するに際して演算処理装置が参照するテクスチャを作成するテクスチャの作成方法であって、
入力範囲をＭ個のデータによりＭ−１個の区間に等分割するとともに、出力範囲をＭよりも小さなＮ個のデータによりＮ−１個の区間に等分割し、入力範囲を各区間に分割するＭ個のデータの中からＮ個のデータを選択し、入力範囲で選択されたＮ個のデータと、出力範囲のＮ個のデータとの関連づけを行って第１のテクスチャを生成する第１のテクスチャ生成手順と、
前記Ｎ−１個の各区間を、前記関数を表す直交関数により展開する直交関数展開手順と、
前記Ｎ−１個の各区間を、前記直交関数の０次及び１次成分により補間して補間テクスチャを算出する補間テクスチャ算出手順と、
前記補間テクスチャにおける各区間が隣り合う境界部分での境界値を算出する境界値算出手順と、
算出された境界値に基づいて、互いに隣接する区間の境界部分での境界値の差が所定の閾値未満であるかを判定する閾値判定手順と、
所定の閾値以上と判定されたら、第１のテクスチャ生成手順から繰り返す再実行手順と、
所定の閾値未満と判定されたら、互いに隣接する区間の境界部分における各区間の境界値の平均値を算出する境界平均値算出手順と、
前記補間テクスチャの各区間における境界値を、前記境界平均値算出手順で算出された平均値に置き換えて第２のテクスチャを生成する第２のテクスチャ生成手順と、
前記補間テクスチャにおける各区間と、前記直交関数における２次以上の展開係数を関連づけて第３のテクスチャを生成する第３のテクスチャ生成手順と、
前記補間テクスチャにおける各区間と、前記直交関数の２次以上の成分の関数値を関連づけて第４のテクスチャを生成する第４のテクスチャ生成手順とからなることを特徴とするテクスチャの作成方法。
【請求項６】
請求項１乃至請求項４のいずれかに記載の演算処理装置によるデータ変換方法を構成する各手順を、コンピュータが実行することを特徴とするプログラム。
【請求項７】
請求項６に記載のプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項８】
光源から射出された光束を画像情報に応じて変調する光変調素子と、この光変調素子で変調された光束を拡大投射する投射光学系と、前記画像情報を処理する画像処理装置とを備えたプロジェクタであって、
前記画像処理装置は、演算処理装置及び記憶装置を備え、
前記記憶装置には、
Ｍ個のデータによりＭ−１個の区間に等分割された入力範囲と、Ｍよりも小さなＮ個のデータによりＮ−１個の区間に等分割された出力範囲とを、入力範囲におけるＭ個のデータからＮ個のデータを非等分割に選択して、出力範囲のＮ個のデータとの関連づけがされた第１のテクスチャと、
前記Ｎ−１個の各区間における関数値を、前記関数を近似する直交関数の０次及び１次成分により補間した第２のテクスチャと、
前記Ｎ−１個の各区間における前記直交関数の２次以上の成分の展開係数からなるテクスチャ群を補間した第３のテクスチャとが記憶されていることを特徴とするプロジェクタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、演算処理装置によるデータ変換方法、このデータ変換方法で参照するテクスチャの作成方法、これらをコンピュータに実行させるプログラム、記録媒体、及びプロジェクタに関する。
【背景技術】
【０００２】
コンピュータ等で行われる画像処理には複雑なデータ変換が含まれている。例えば、入力されたＹＣｂＹｒ等の色表現から、出力するＲＧＢ等への色変換処理や、また出力する色を、画像表示装置の特性やユーザの好みに合わせるための、輝度、彩度の変換等である。尚、これらには非線形なデータ変換処理も含まれる。
このような画像処理においては、リアルタイム性が要求されるため、従来、画像処理専用のＩＣが用いられていた。
【０００３】
しかし、近年の半導体技術の進歩により、ＧＰＵ（Graphics Processing Unit）のような高速、汎用のプログラマブルなＩＣを用いても、リアルタイムの画像処理が可能となってきた。
ところで、前述した専用ＩＣや、汎用のＧＰＵにおける画像処理では、複雑なデータ変換を高速に行うために、テーブル参照を用いたデータ変換が採用されることが多い。
【０００４】
例えば、ある値Ｘを、別の値Ｙに変換する場合、関数Ｆを導入して、Ｙ＝Ｆ（Ｘ）と書けるとする。ここでは単純化のために１入力１出力の対応を考えるが、実際には多入力多出力の対応関係であっても良い。
この時、関数Ｆが簡単な形として書けるものであれば、その関数演算を直接に実行しても良い。しかし、関数Ｆが非常に複雑な形をしている場合、都度、関数演算を実行するには速度上の問題がある。また、それを直接ハードウェア化するためには、その回路規模の問題がある。
【０００５】
このような場合、離散的なＮ個の入力のみを考え、そのそれぞれに対するこの関数ＦによるＮ個の変換値の組を表の形として持ち、Ｆ（Ｘ）を求める処理を、その表の読み出しと読み出された値間の補間による近似値を求める処理に置き換えることが効率的である。
この表を作成する場合、Ｎ個の離散的な入力の選択方法として、等分割法と非等分割法がある。
等分割法は文字通り、可能な入力範囲を等しく分割し、そのそれぞれに対応する関数Ｆの値を持つものである。
この方法は表の参照が容易であり、また補間も容易である。しかし、関数Ｆの変化の複雑な部分の近似精度を上げるためには、より細かな分割が必要となり、全体として分割数の多い冗長な表になる可能性がある。
【０００６】
これを解決する方法が、非等分割法である。非等分割法は、関数Ｆの変化の複雑な部分は細かく、変化の単純な部分は大きく分割することにより、少ない分割数において高精度な表を実現することを可能とするものである。
しかし、与えられた入力に対応する表内の位置を定めるには、何らかの工夫が必要であり、また、補間を行う場合も、より複雑な処理が必要となる。
画像処理を専用ＩＣで行う場合には、これらの非等分割法の課題は大きな問題とはならないが、等分割法での参照機能しか持っていない汎用のＧＰＵでは何らかの工夫が必要となる。
【０００７】
ＧＰＵにおける表読み出し機能は、表を有限個の等間隔に並んだピクセルよりなるテクスチャと呼ばれる画像データとして与え、それをテクスチャ座標と呼ばれる連続値を用いて読み出すものである。
ピクセルの中間となるテクスチャ座標に対応するデータを読み出す場合は、その近傍のピクセル値を用いて、ハードウェア的に補間値が生成される。
つまり入力値に対応する変換値は、等分割に離散的に与えられた表の値から、補間値がハードウェア的に自動的に生成される。尚、この読み出し方法としては、最近傍データ値を用いる読み出し方法（ＮＥＡＲＥＳＴ読み出し）と、近傍の複数のデータ値から線形補間を用いる読み出し方法（ＬＩＮＥＡＲ読み出し）の２種が選択できるのが殆どである。
【０００８】
このような汎用のＧＰＵの機能を用いて、非等分割の表を参照する機能を実現する方法として、表であるテクスチャを、テクスチャ座標を用いて直接に読み出しするのではなく、一旦、テクスチャ座標を変換するためのテクスチャを用いた変換を行い、その変換値で間接的にテクスチャを読み出す方法が提案されている（例えば、非特許文献１参照）。
【０００９】
【非特許文献１】「GPU Gems 2」Jeremy Selan著、Matt Pharr編、Addison-Wesley出版、３８１頁〜３９２頁、２００５年
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、前記非特許文献１に開示される方法では、非等分割された区間内の補間方法としては、汎用のＧＰＵでは、ＮＥＡＲＥＳＴ読み出し又はＬＩＮＥＡＲ読み出しのいずれかを選択するしかなく、誤差が発生してしまう。
この誤差を少なくするためには、分割数を増やす、つまりデータを大きくして対応するしかない。
【００１１】
本発明の目的は、データが大きくなることもなく、かつ、高精度のデータ変換を行うことのできる演算処理装置によるデータ変換方法、テクスチャの作成方法、プログラム、記録媒体、及びプロジェクタを提供することにある。
【課題を解決するための手段】
【００１２】
本発明に係る演算処理装置によるデータ変換方法は、
入力値を所定の関数により変換して出力値とするために、演算処理装置に入力された入力値を、テクスチャを参照して出力値に変換する演算処理装置によるデータ変換方法であって、
前記演算処理装置が、
Ｍ個のデータによりＭ−１個の区間に等分割された入力範囲と、Ｍよりも小さなＮ個のデータによりＮ−１個の区間に等分割された出力範囲とを、前記入力範囲におけるＭ個のデータからＮ個のデータを非等分割に選択して、前記出力範囲のＮ個のデータとの関連づけがされた第１のテクスチャを参照し、前記入力値を非等分割値に変換する第１のテクスチャ参照手順と、
前記Ｎ−１個の各区間における関数値を、前記関数を表す直交関数の０次成分及び１次成分により補間した第２のテクスチャを参照して、前記非等分割値の線形近似成分を生成する第２のテクスチャ参照手順と、
前記Ｎ−１個の各区間における前記直交関数の２次以上の成分の展開係数からなるテクスチャ群を補間した第３のテクスチャを参照して、前記非等分割値に応じた展開係数を生成する第３のテクスチャ参照手順と、
前記非等分割値の属する区間から前記直交関数の２次以上の成分の関数値を生成する関数値生成手順と、
前記第３のテクスチャ参照手順により生成された展開係数、及び前記関数値生成手順により生成された関数値の積を算出し、この結果を前記第２のテクスチャ参照手順により生成された線形近似成分に加算して出力する加算手順とを実行することを特徴とする。
【００１３】
ここで、第１〜第３のテクスチャを参照して最終的に求める関数値を求める関数としては、一次元の関数だけでなく、多次元の関数も含むものである。
また、求める関数を表す直交関数としては、多次元変数の関数を考えることができ、例えば、一次元変数の関数であれば、フーリエ変換、ルジャンドル多項式による変換、二次元変数の関数であれば離散コサイン変換（ＤＣＴ）等が考えられる。
【００１４】
さらに、前述したように汎用のＧＰＵでは、ＮＥＡＲＥＳＴ読み出し又はＬＩＮＥＡＲ読み出しのいずれかを選択するようになっているが、第３のテクスチャ参照においては、ＮＥＡＲＥＳＴ読み出しを採用するのが好ましい。
また、関数値生成手順では、直交関数の２次以上の成分から関数値を直接演算して生成してもよく、各テクスチャ群における直交関数の関数値を記憶した第４のテクスチャを参照して、ＬＩＮＥＡＲ読み出し又はＮＥＡＲＥＳＴ読み出しにより生成してもよい。
【００１５】
この発明によれば、まず、第１のテクスチャ参照手順により、汎用ＧＰＵのように等分割法によるデータ参照しかできない場合であっても、非等分割法によるデータ参照を実現することができ、求める関数に対して非等分割法により最も効率的な区間割付を設定することができるため、演算処理装置における演算処理の効率化を図り、かつデータ量を増やすことなく、求める関数との誤差を少なくすることができる。
【００１６】
次に、第２のテクスチャ参照手順により、求める関数を近似する直交関数の０次及び１次成分により補間された線形近似成分を生成し、第３のテクスチャ参照手順及び関数値生成手順により、求める関数による関数値と線形近似成分による関数値との間の誤差を補間することができるため、前記特許文献のように、等分割区間を多くしてデータ量を大きくすることなく、かつ、求める関数によって入力値を変換した関数値との誤差を少なくすることができる。
従って、多段型で各テクスチャを参照するように構成することで、汎用のＧＰＵであっても入力値の変換を本来の求める関数に応じた高精度の出力値を、高速に算出することができる。
【００１７】
本発明では、前記直交関数は、ルジャンドル多項式であるのが好ましい。
ここで、ルジャンドル多項式は、次の式（１）で与えられる直交関数であり、式（１）における近似する際の多項式の次数ｎは、より大きくすれば大きくする程、精度を向上することができるが、３次程度とするのが好ましい。
【００１８】
【数１】
0004747881.tif 000002
【００１９】
この発明によれば、入力値Ｘに対して関数を用いて出力値Ｙを、式（１）に示されるような簡単な直交関数によって求めることができるので、第１〜第３のテクスチャの構造も簡単化することができ、演算処理装置における演算処理の高速化に寄与することができる。
特に、画像処理のように入力画像信号に対してγ補正や、輝度ムラ、色ムラ変換を行って出力画像信号とするような場合に好適である。
【００２０】
本発明に係るテクスチャの作成方法は、
入力値を所定の関数により変換して出力値とするために、入力値を変換するに際して演算処理装置が参照するテクスチャを作成するテクスチャの作成方法であって、
入力範囲をＭ個のデータによりＭ−１個の区間に等分割するとともに、出力範囲をＭよりも小さなＮ個のデータによりＮ−１個の区間に等分割し、入力範囲を各区間に分割するＭ個のデータの中からＮ個のデータを選択し、入力範囲で選択されたＮ個のデータと、出力範囲のＮ個のデータとの関連づけを行って第１のテクスチャを生成する第１のテクスチャ生成手順と、
前記Ｎ−１個の各区間を、前記関数を表す直交関数により展開する直交関数展開手順と、
前記Ｎ−１個の各区間を、前記直交関数の０次及び１次成分により補間して補間テクスチャを算出する補間テクスチャ算出手順と、
前記補間テクスチャにおける各区間が隣り合う境界部分での境界値を算出する境界値算出手順と、
算出された境界値に基づいて、互いに隣接する区間の境界部分での境界値の差が所定の閾値未満であるかを判定する閾値判定手順と、
所定の閾値以上と判定されたら、第１のテクスチャ生成手順から繰り返す再実行手順と、
所定の閾値未満と判定されたら、互いに隣接する区間の境界部分における各区間の境界値の平均値を算出する境界平均値算出手順と、
前記補間テクスチャの各区間における境界値を、前記境界平均値算出手順で算出された平均値に置き換えて第２のテクスチャを生成する第２のテクスチャ生成手順と、
前記補間テクスチャにおける各区間と、前記直交関数における２次以上の展開係数を関連づけて第３のテクスチャを生成する第３のテクスチャ生成手順と、
前記補間テクスチャにおける各区間と、前記直交関数の２次以上の成分の関数値を関連づけて第４のテクスチャを生成する第４のテクスチャ生成手順とからなることを特徴とする。
【００２１】
この発明によれば、作成された各テクスチャを参照することにより、前述したように、演算処理装置におけるテクスチャを用いたデータ変換を、求める関数に応じて高速にかつ高精度に行うことができる。
また、最初に得られた補間テクスチャにおいて、隣接する区間の境界部分における各区間の境界値がずれていた場合に、再実行手順により第１のテクスチャ生成手順から境界値算出手順を繰り返し、所定の閾値以内となったら、平均値をとって境界部分における境界値を決定しているので、各区間で求められた補間関数値の連続性を確保することができ、ＧＰＵ等の演算処理装置で取り扱うことができる。
【００２２】
本発明は、前述した演算処理装置によるデータ変換方法のみならず、この方法を構成する各手順を、コンピュータが実行することを特徴とするプログラム、及びこのプログラムを記録したコンピュータ読み取り可能な記録媒体としても成立する。そして、これらの発明によれば、前述した作用効果と同様の作用効果を享受できる。
【００２３】
本発明に係るプロジェクタは、
光源から射出された光束を画像情報に応じて変調する光変調素子と、この光変調素子で変調された光束を拡大投射する投射光学系と、前記画像情報を処理する画像処理装置とを備えたプロジェクタであって、
前記画像処理装置は、演算処理装置及び記憶装置を備え、
前記記憶装置には、
Ｍ個のデータによりＭ−１個の区間に等分割された入力範囲と、Ｍよりも小さなＮ個のデータによりＮ−１個の区間に等分割された出力範囲とを、入力範囲におけるＭ個のデータからＮ個のデータを非等分割に選択して、出力範囲のＮ個のデータとの関連づけがされた第１のテクスチャと、
前記第１のテクスチャの出力範囲の各区間における関数値を、前記関数を近似する直交関数の０次及び１次成分により補間した第２のテクスチャと、
前記第１のテクスチャの出力範囲の各区間における前記直交関数の２次以上の成分の展開係数からなるテクスチャ群を補間した第３のテクスチャとが記憶されていることを特徴とする。
【００２４】
この発明によれば、前述した作用と同様の作用により、前述した入力された画像信号を、高速かつ高精度に変換して出力画像信号とすることができるため、変換によりγ補正、色ムラ、輝度ムラ等の少ない投射画像を高速に表示することができる。
【発明を実施するための最良の形態】
【００２５】
次に、本発明の実施の形態について説明する。
〔第１実施形態〕
図１には、本発明の実施形態に係る投射型表示装置としてのプロジェクタ１が示されている。このプロジェクタ１は、光学装置２及び画像処理装置３を備えて構成される。
〔１〕光学装置２の構造
光学装置２は、光源ランプ２１、集光レンズ、ミラー等の光学素子２２、光変調素子としての３枚の液晶パネル２３、クロスダイクロイックプリズム等の色合成光学素子２４、及び投射レンズ２５を備えて構成される。光源ランプ２１から射出された光束は、光学素子２２によって射出光の面内輝度分布の均一化、ＲＧＢの三色光の色分離が行われ、色光毎に各液晶パネル２３に供給され、各液晶パネル２３によって入力画像データに応じた変調が行われた後、色合成光学素子２４によって各色が合成され、投射レンズ２５によってスクリーンＳＣ上に拡大投射される。
【００２６】
光源ランプ２１は、超高圧水銀ランプ等の放電発光管２１１及びリフレクタ２１２を備え、放電発光管２１１から放射された光束は、リフレクタ２１２によって方向が揃えられて射出される。
光学素子２２は、照明光学素子２２１、ダイクロイックミラー２２２、２２３、及びミラー２２４を備えて構成される。
照明光学素子２２１は、光源ランプ２１からの射出光の面内輝度分布を均一にして、被照明領域となる液晶パネル２３の画像形成領域上で重畳する素子であり、複数の小レンズが平面的にマトリクス状に配列され、光源ランプ２１からの照明光を複数の部分光束に分割するマルチレンズアレイや、マルチレンズアレイによって分割された部分光束を集光して液晶パネル２３の画像形成領域上で重畳させる集光レンズ等を備えて構成される。
【００２７】
ダイクロイックミラー２２２、２２３は、光源ランプ２１からの射出光をＲ、Ｇ、Ｂの各色光に分離する色分離光学素子であり、例えば、光路前段のダイクロイックミラー２２２は、赤色光を透過させ、他の色光を反射し、光路後段のダイクロイックミラー２２３は、緑色光を反射して、青色光を透過するようになっている。ミラー２２４は、ダイクロイックミラー２２２、２２３で分離された各色光を曲折して、液晶パネル２３の画像形成領域に供給する。尚、図示を略したが、図１の左側の光路長は他の光路長よりも長くなるため、通常は、ダイクロイックミラー２２３の後段には、レンズ等からなるリレー光学系が配置される。
【００２８】
３枚の液晶パネル２３は、ダイクロイックミラー２２２、２２３で分離された各色光を画像情報に応じて変調する光学素子である。
各液晶パネル２３は、固定画素型の画像生成デバイスとして構成され、画像形成領域上に平面状に配置される複数の固定画素から構成されている。固定画素は、図示を略したが、一対の透明基板上に密閉封入された液晶に電圧を印加するＴＦＴ（Thin Filmed Transistor）をスイッチング素子とし、ＴＦＴのスイッチングにより各画素に印加される電圧が変化することにより、液晶の配向状態が変化することにより、入射光束を入力画像データに応じて変調することが可能となる。
色合成光学素子２４は、平面視で略Ｘ字状に波長選択膜が形成された光学素子であり、各液晶パネル２３で変調された光束は、この色合成光学素子２４において合成されてカラー画像を形成する。
投射レンズ２５は、液晶パネル２３で変調された変調光束を、スクリーンＳＣ上に拡大投射する光学部品であり、鏡筒内に配置される複数の組レンズから構成されている。
【００２９】
〔２〕画像処理装置３の構造
画像処理装置３は、画像信号入力端子４から入力された入力画像データに画像処理を施し、画像処理の結果に基づいて、表示素子駆動手段５により液晶パネル２３を駆動して、入力画像データに応じた適切な画像を形成させるものである。
この画像処理装置３は、プロジェクタ１に内装されるメインボード上に実装されるＧＰＵ（Graphic Processing Unit）６及びメモリ７により構成されている。
ＧＰＵ６は、画像信号入力端子４から入力された入力画像データ（入力値）に対して、色差データからＲＧＢデータへの変換、表示サイズ変換、フレームレート変換、Ｖ−Ｔγ変換等の処理を行い、液晶パネル２３で入力値に応じた適切な画像を形成させる部分である。
【００３０】
このＧＰＵ６は、汎用のグラフィックプロセッサとして構成され、メモリ７に記憶されたテーブル様のテクスチャを参照して種々の変換を実現している。尚、読み出しに際しては、入力座標値に最も近い座標値を持つテクスチャ上のデータを読み出しするＮＥＡＲＥＳＴ読み出し、及び、入力座標値の近傍の値を使って線形変換するＬＩＮＥＡＲ読み出しをこのＧＰＵ６では実行することができる。
メモリ７は、ＧＰＵ６上で実行される種々のソフトウェアの他、ＧＰＵ６が入力値に対する出力値を読み出しする際に用いるテクスチャが記憶されている。
【００３１】
(2-1)ＧＰＵ６内における機能的手段の構成
前述したＧＰＵ６は、図２に示されるように、プログラムとして実行される入力値取得手段６１、スケーリング手段６２、オフセット加算手段６３、オフセット減算手段６４、テクスチャＬＩＮＥＡＲ読み出し手段６５、テクスチャＮＥＡＲＥＳＴ読み出し手段６６、乗算手段６７、加算手段６８、及び出力手段６９を備えて構成される。
また、前述したメモリ７には、ＧＰＵ６で参照するための第１テクスチャ記憶手段７１、第２テクスチャ記憶手段７２、第３テクスチャ記憶手段７３、及び第４テクスチャ記憶手段７４が記憶領域の一部に確保されている。
【００３２】
入力値取得手段６１は、画像信号入力端子４から入力された入力画像データとしての入力値を取得する部分であり、入力値は、表示フレームの画素（ピクセル）に応じた色差、輝度等の画像データである。
スケーリング手段６２は、ある入力範囲のデータが入力されると、スケーリング処理を行い、その範囲を拡大、縮小した結果を出力する。
オフセット加算手段６３は、データが入力されると、その入力データに対して所定のオフセット値を加算してその結果を出力する。
オフセット減算手段６４は、データが入力されると、その入力データに対して所定のオフセット値を減算してその結果を出力する。
【００３３】
テクスチャＬＩＮＥＡＲ読み出し手段６５は、データが入力されると、それを座標値とし、メモリ７に格納されたテクスチャを参照し、入力座標値近傍の前後のデータを読み出し、線形補間を行った結果を出力する。
テクスチャＮＥＡＲＥＳＴ読み出し手段６６は、データが入力されると、それを座標値とし、メモリ７に格納されたテクスチャを参照し、入力座標値に最も近い座標値を持つデータを読み出し、その結果を出力する。
乗算手段６７は、２つのデータが入力されると、各データの積を演算し、その結果を出力する。
加算手段６８は、２つのデータが入力されると、各データの和を演算し、その結果を出力する。
出力手段６９は、各手段で行われた最終的な演算結果を出力する。
【００３４】
(2-2)第１テクスチャ記憶手段７１の構成
第１テクスチャ記憶手段７１には、等分割法でしか入力値を扱えないＧＰＵ６において、非等分割法で取り扱えるようにするデータが記憶されている。
一般に、ＧＰＵ６は、図３に示されるように、ある関数Ｆ（Ｘ）を補間するには、関数Ｆ（Ｘ）の範囲をＭ個のピクセルで等分割し、各ピクセル間のＭ−１個の区間内を線形近似することにより、関数Ｆ（Ｘ）を補間している。このため、ある入力値に対して生成される補間値の精度を向上させるには、Ｍ個のピクセルを十分に大きくとるしかない。
一方、非等分割法により関数Ｆ（Ｘ）を補間するには、図４に示されるように、関数Ｆ（Ｘ）のカーブの急峻な部分は細かく、カーブのなだらかな部分は大きく区間幅を設定し、等分割の場合のＭ個よりも小さなＮ個のピクセルで分割し、Ｎ−１個の区間で線形近似することにより、等分割法よりもはるかに少ないデータでかつ高精度な補間値を得ることができる。
【００３５】
そこで、図５に示されるように、Ｍ個のピクセルで等分割された入力範囲のうち、非等分割となるＮ個のピクセルを選択し、Ｎ個のピクセルで等分割された出力範囲に割り付けることにより、汎用のＧＰＵ６であっても、非等分割法を実行することができるようになる。
このため、第１テクスチャ記憶手段７１には、Ｍ個のピクセルから選択されたＮ個のピクセルを、Ｎ個のピクセルで等分割された出力範囲に割り付けるテーブルが記憶されている。具体的には、第１テクスチャ記憶手段７１には、図６に示されるように、Ｍ個のピクセルで等分割された入力範囲と、Ｎ個のピクセルで等分割された出力範囲とを対応させたテーブルが記憶されており、入力範囲におけるＭ個のピクセルから求める関数Ｆ（Ｘ）を近似するＮ個の非等分割のピクセルが選択され、Ｎ個の非等分割のピクセルと、出力範囲におけるＮ個のピクセルとが関連づけられている。
ＧＰＵ６のテクスチャＬＩＮＥＡＲ読み出し手段６５は、入力値Ｘが入力されると、第１テクスチャ記憶手段７１を参照して非等分割値となる出力値Ｙを出力する。
【００３６】
(2-3)第２テクスチャ記憶手段７２、第３テクスチャ記憶手段７３、及び第４テクスチャ記憶手段７４の構成
入力値Ｘに対して関数Ｆ（Ｘ）により変換して出力値を求める際、本実施形態では、下記式（２）で与えられる直交関数としてのルジャンドル多項式による展開を行って出力値の変換を行っており、関数Ｆ（Ｘ）は、ルジャンドル多項式の線形和に変換される。尚、式（２）における次数ｎは、大きければ大きいほど近似精度が向上することとなるが、ＧＰＵ６の演算処理への負荷や、高速な変換を考慮すると、３次程度でも十分である。
これは、複数の点を結ぶ複雑な曲線が３次のスプライン曲線で精度よく近似されることにも対応する。３次のスプライン曲線は、３次までのルジャンドル関数で、誤差無しに表現することが可能である。
そして、第２テクスチャ記憶手段７２、第３テクスチャ記憶手段７３、及び第４テクスチャ記憶手段７４には、このルジャンドル多項式の各項に関するデータが記憶され、以下、各テクスチャ記憶手段に記憶されたデータについて詳述する。
【００３７】
【数２】
0004747881.tif 000003
【００３８】
第２テクスチャ記憶手段７２には、図７に示されるように、第１テクスチャ記憶手段７１で変換されたＮ個のピクセルで等分割されたＮ−１個の区間のそれぞれで、関数Ｆ（Ｘ）を、式（２）の０次成分及び１次成分で補間した補間値が格納されている。各区間における補間値は、式（２）の線形成分の係数であり、テクスチャＬＩＮＥＡＲ読み出し手段６５に、第１テクスチャ記憶手段７１を参照して出力された値Ｙが入力されると、テクスチャＬＩＮＥＡＲ読み出し手段６５は、Ｎ−１個の区間のうち、入力値Ｙが属する区間を選択し、その区間の係数から演算を行って出力値ＳＵＭとして出力する。
【００３９】
第３テクスチャ記憶手段７４には、図８に示されるように、第１テクスチャ記憶手段７１で変換されたＮ個のピクセルで等分割されたＮ−１個の区間のそれぞれで、式（２）の２次以上の成分の展開係数が記憶されている。具体的には、この第３テクスチャ記憶手段７４は、展開項の次数に応じた各区間の係数が格納されたテクスチャ群として構成され、各区間の係数は、最近傍値として与えられている。
テクスチャＮＥＡＲＥＳＴ読み出し手段６６に、第１テクスチャ記憶手段７１を参照して出力された値Ｙが入力されると、テクスチャＮＥＡＲＥＳＴ読み出し手段６６は、Ｎ−１個の区間のうち、入力値Ｙが属する区間を選択し、その区間におけるルジャンドル多項式の２次成分、３次成分…、ｎ次成分の各係数を出力値Ｃとして出力する。
【００４０】
第４テクスチャ記憶手段７４には、図９に示されるように、Ｎ個のピクセルで等分割されたＮ−１個の区間に亘ってルジャンドル多項式の２次成分、３次成分を拡大した関数値が格納されている。この第４テクスチャ記憶手段７４は、具体的には、各区間における２次成分、３次成分を線形補間した係数を格納したものとして構成されている。
テクスチャＬＩＮＥＡＲ読み出し手段６５に、第１テクスチャ記憶手段７１を参照して出力された値Ｙが入力されると、テクスチャＬＩＮＥＡＲ読み出し手段６６は、図１０に示されるように、Ｎ−１個の区間のうち、入力値Ｙが属する区間を選択し、選択された区間内を、第４テクスチャ記憶手段７４におけるＮ−１個の区間に分割し、入力値Ｙが属する区間を選択して、その区間における２次成分、３次成分…、ｎ次成分の関数値を線形補間によって求め、各成分の関数値を出力値Ｐとして出力する。
つまり、このように第４テクスチャ記憶手段７４において、ルジャンドル多項式の２次以上の成分をＮ−１個の区間に分割しておき、これをＬＩＮＥＡＲ読み出しすることにより、第１テクスチャ記憶手段７１を参照してＮ−１個の区間を、さらにＮ−１個の区間に分割することができるので、関数Ｆ（Ｘ）との誤差を一層少なくすることができる。
【００４１】
〔３〕画像処理装置３の作用
次に、前述したプロジェクタ１を構成する画像処理装置３の作用を、図１１に示されるフローチャートに基づいて説明する。尚、以下の説明では、説明の便宜のために、入力範囲を０〜１とする。
画像信号入力端子４を介してＧＰＵ６にＲＧＢ信号等の画像データが入力されると、この画像データは入力値取得手段６１で取得され、スケーリング手段６２は、入力範囲を０〜１−１／Ｍにスケーリングし、その値を入力値Ｘとして設定する（処理Ｓ１）。
オフセット加算手段６３は、入力値Ｘにオフセット値１／（２Ｍ）を加算する（処理Ｓ２）。
テクスチャＬＩＮＥＡＲ読み出し手段６５は、オフセット値が加算された入力値Ｘで第１テクスチャ記憶手段７１に格納されたテクスチャをＬＩＮＥＡＲ読み出しして、Ｍ−１個の等分割区間内における入力値Ｘを、Ｎ―１個の等分割区間内の非等分割値Ｙに変換する（処理Ｓ３）。
【００４２】
続けて、テクスチャＬＩＮＥＡＲ読み出し手段６５は、非等分割値Ｙを入力値として、第２テクスチャ記憶手段７２に格納されたテクスチャをＬＩＮＥＡＲ読み出しして、その値をＳＵＭとして内部メモリ上にストアする（処理Ｓ４）。
オフセット減算手段６４は、非等分割値Ｙからオフセット値１／（２Ｎ）を減算する（処理Ｓ５）。
スケーリング手段６２は、非等分割値Ｙを（Ｎ／Ｎ＋１）＊frac（（Ｎ＋１）Ｙ）にスケーリングしてその値をＺとして出力する（処理Ｓ６）。尚、fracは、括弧内の小数部を取り出す処理である。
オフセット加算手段６３は、値Ｚにオフセット値１／（２Ｎ）を加算する（処理Ｓ７）。
【００４３】
次に、テクスチャＮＥＡＲＥＳＴ読み出し手段６６は、非等分割値Ｙで第３テクスチャ記憶手段７３に格納されたテクスチャをＮＥＡＲＥＳＴ読み出しして、係数値Ｃを求め、内部メモリ上にストアする（処理Ｓ８）。
テクスチャＬＩＮＥＡＲ読み出し手段６５は、値Ｚで第４テクスチャ記憶手段７４に格納されたテクスチャをＬＩＮＥＡＲ読み出しして、関数値Ｐを求め、内部メモリ上にストアする（処理Ｓ９）。
乗算手段６７は、内部メモリ上にストアされた係数値Ｃと、関数値Ｐの積を取り、加算手段６８は、その値を前記の値ＳＵＭに加える（処理Ｓ１０）。
処理Ｓ８からＳ１０までの処理を全ての組について繰り返し（処理Ｓ１１）、全ての組の処理が終了したら、出力手段６９は、値ＳＵＭを出力値として出力する（処理Ｓ１２）。
【００４４】
〔４〕第１〜第４のテクスチャの作成方法
次に、第１テクスチャ記憶手段７１、第２テクスチャ記憶手段７２、第３テクスチャ記憶手段７３、及び第４テクスチャ記憶手段７４に格納された各テクスチャの作成方法を、図１２に示されるフローチャートに基づいて説明する。
まず、入力範囲をＭ−１個の区間に等分割し、各点の座標をＭｉとする（ｉ＝０からＭ−１）（処理Ｓ１３）。
次に、出力範囲をＮ−１個の区間に等分割し、各点の座標をＮｊとする（ｊ＝０からＮ−１）（処理Ｓ１４）。
そして、入力範囲のＭ個のＭｉからＮ個の点（ピクセル）選択し（処理Ｓ１５）、選択された点を出力範囲のＮ個の点と対応づけ、第１のテクスチャとする（処理Ｓ１６）。
【００４５】
次に、求める関数Ｆ（Ｘ）について、Ｎ−１個の区間のそれぞれでルジャンドル多項式展開し（処理Ｓ１７）、ルジャンドル多項式の０次、１次の成分で線形近似を行う（処理Ｓ１８）。
そして、Ｎｊ点の両側で隣接する区間の線形近似値の切片の差を求め（処理Ｓ１９）、その差が所定の閾値以上であるかどうかを判定する（処理Ｓ２０）。差が閾値以上である場合には、処理Ｓ１５におけるＮ個の点の選択から再度実行する。
差が閾値未満と判定された場合、ＧＰＵ６は、Ｎｊ点の両側に隣接する区間の線形近似値の切片の平均値を、その境界点の値とする（処理Ｓ２１）。
次に、求めたＮｊ点の値とＮｊ点よりなるテクスチャを第２のテクスチャとする（処理Ｓ２２）。
【００４６】
そして、ｊ番目の区間におけるルジャンドル多項式のｐ番目の項の展開係数をＮｊ点に対応付け、それをｐ−２番目の第３のテクスチャとする（処理Ｓ２３）。尚、ｐ−２番目の第３のテクスチャとするのは、０次成分及び１次成分を除外しているためである。
最後に、ｐ次のルジャンドル多項式のＮｊ点における関数値をＮｊと対応付け、それをｐ−２番目の第４のテクスチャとする（処理Ｓ２４）。
【００４７】
〔第２実施形態〕
次に、本発明の第２実施形態について説明する。尚、以下の説明では既に説明した部分と同一の部分については、同一符号を付してその説明を省略する。
前述した第１実施形態に係るＧＰＵ６では、ルジャンドル多項式の各次数の項の関数値を求めるに際しては、テクスチャＬＩＮＥＡＲ読み出し手段６５により、第４テクスチャ記憶手段７４に格納されたテクスチャを参照することにより、関数値の生成を行っていた。
これに対して、第２実施形態に係るＧＰＵ８は、図１３に示されるように、ルジャンドル多項式計算手段８１を備え、これにより直接関数値を求めている点が相違する。
【００４８】
ルジャンドル多項式を構成する各項は、２次関数、３次関数であるため、汎用のＧＰＵ８であっても、入力値の二乗、三乗という形で簡単に計算することができる。
このＧＰＵ８による作用は、図１４に示されるように、基本的には第１実施形態と同様に、処理Ｓ１〜処理Ｓ８を実行するが、処理Ｓ７は省略され、処理Ｓ２５に示されるように、関数値を算出する際には、値Ｚに基づいて各次数の関数値を直接計算して、その値をＰとしている。
このような構成としても、ＧＰＵ８による処理の高速化は損なわれることなく、かつ関数値を直接計算により求めているので、より精度が向上する。
【００４９】
〔実施形態の変形〕
本発明は、前述した実施形態に限定されるものではなく、以下に示すような変形をも含むものである。
前記実施形態では、プロジェクタ１に内蔵されるＧＰＵ６において本発明に係るデータ変換方法を実行していたが、これに限らず、汎用のコンピュータに内蔵されたＧＰＵで本発明に係るデータ変換方法を実行できるようにしてもよい。
前記実施形態では、入力画像データを液晶パネル２３に応じた画像データに変換するために本発明に係るデータ変換方法を採用していたが、これに限らず、通常の関数値を演算処理装置で求める際に、本発明に係るデータ変換方法を採用してもよい。
【００５０】
前記実施形態では、ルジャンドル多項式によって関数Ｆ（Ｘ）を表現していたが、これに限らず、フーリエ変換、ＤＣＴ変換等他の直交関数を用いて表現して、本発明に係るデータ変換方法を実行してもよい。
その他、本発明の実施の際の具体的な構成及び手順は、本発明の目的を達成できる範囲で他の構成等としてもよい。
【図面の簡単な説明】
【００５１】
【図１】本発明の第１実施形態に係るプロジェクタの構成を表す模式図。
【図２】前記実施形態におけるプロジェクタに内蔵されたＧＰＵの構造を表すブロック図。
【図３】前記実施形態における第１のテクスチャの構成を説明するためのグラフ。
【図４】前記実施形態における第１のテクスチャの構成を説明するためのグラフ。
【図５】前記実施形態における第１のテクスチャの構成を説明するためのグラフ。
【図６】前記実施形態における第１のテクスチャの構成を説明するためのグラフ。
【図７】前記実施形態における第２のテクスチャの構成を説明するためのグラフ。
【図８】前記実施形態における第３のテクスチャの構成を説明するためのグラフ。
【図９】前記実施形態における第４のテクスチャの構成を説明するためのグラフ。
【図１０】前記実施形態における第４のテクスチャの構成を説明するためのグラフ。
【図１１】前記実施形態の作用を説明するためのフローチャート。
【図１２】前記実施形態におけるテクスチャを作成する手順を説明するためのフローチャート。
【図１３】本発明の第２実施形態に係るＧＰＵの構造を表すブロック図。
【図１４】前記実施形態の作用を説明するためのフローチャート。
【符号の説明】
【００５２】
１…プロジェクタ、６、８…ＧＰＵ（演算処理装置）、２１…光源ランプ、２３…液晶パネル、６５…テクスチャＬＩＮＥＡＲ読み出し手段、６６…テクスチャＮＥＡＲＥＳＴ読み出し手段、７１…第１テクスチャ記憶手段、７２…第２テクスチャ記憶手段、７３…第３テクスチャ記憶手段、７４…第４テクスチャ記憶手段
【図１】
0004747881.tif 000004
【図２】
0004747881.tif 000005
【図３】
0004747881.tif 000006
【図４】
0004747881.tif 000007
【図５】
0004747881.tif 000008
【図６】
0004747881.tif 000009
【図７】
0004747881.tif 000010
【図８】
0004747881.tif 000011
【図９】
0004747881.tif 000012
【図１０】
0004747881.tif 000013
【図１１】
0004747881.tif 000014
【図１２】
0004747881.tif 000015
【図１３】
0004747881.tif 000016
【図１４】
0004747881.tif 000017