プロジェクタ、及び画像処理装置
【課題】低製造コストかつコンパクトな装置で、光学系で生じる種々の歪みを補正することができる、プロジェクタ、及び画像処理装置を提供する。
【解決手段】1ライン分の入力画像信号を保持する入力ラインメモリ4aと、入力ラインメモリ4aから転送された入力画像信号を用いて投影レンズ7の歪みに対応する補正を施した中間画像信号を生成する画像処理部5と、1ライン分の中間画像信号を保持する出力ラインメモリ4bと、中間画像信号に従って光源からの光を投影レンズ7に導くLCOS6とを備えており、画像処理部5は、複数ラインの入力画像信号を格納する入力補充バッファ51と、1ライン分の中間画像信号の生成に必要な入力画像信号を格納する入力データバッファ52と、入力補充バッファ51から入力データバッファ52への補充ライン数を計算する補充ライン数計算部531とを備えていることを特徴とする。
【解決手段】1ライン分の入力画像信号を保持する入力ラインメモリ4aと、入力ラインメモリ4aから転送された入力画像信号を用いて投影レンズ7の歪みに対応する補正を施した中間画像信号を生成する画像処理部5と、1ライン分の中間画像信号を保持する出力ラインメモリ4bと、中間画像信号に従って光源からの光を投影レンズ7に導くLCOS6とを備えており、画像処理部5は、複数ラインの入力画像信号を格納する入力補充バッファ51と、1ライン分の中間画像信号の生成に必要な入力画像信号を格納する入力データバッファ52と、入力補充バッファ51から入力データバッファ52への補充ライン数を計算する補充ライン数計算部531とを備えていることを特徴とする。
【発明の詳細な説明】
【技術分野】
【0001】
本実施形態は、プロジェクタ、及び画像処理装置に関する。
【背景技術】
【0002】
従来、プロジェクタの投影レンズは、理想像(プロジェクタに入力された画像)と実際の像(プロジェクタを通して投影される画像)との差異(収差)を抑制させるために、多くの枚数で構成されている。しかし、倍率色収差を抑制するためには、屈折率の異なる素材のレンズの組を多数使用するためにレンズ枚数が多くなり、装置の大型化や製造コストの増大が問題となる。また、樽型や糸巻き型などの歪曲収差を抑制するためには、レンズの材質を工夫したり非球面レンズを採用したりするが、そのレンズの設計コストや製造コストが増大してしまう。
【0003】
そこで、近年では、光学系の要因で発生する倍率色収差や歪曲収差によって画像に歪みなどが生じる場合、入力画像に対して光学系の前処理として電気的に画像処理を行い、光学系で生じる歪みと逆方向の歪みを入力画像に予め与えておく方法が一般的に用いられている。例えば、光学系で画像が樽型に歪む歪曲収差が発生する場合、光学系の前段階で補正処理を施して画像を糸巻き型に変換させておく。
【0004】
従来のプロジェクタにおける補正処理では、入力画像に対してランダムアクセスが必要となるために、フレームメモリを使って入力画像1フレーム分を保持し、必要な画素に対してアクセスする方法が用いられていた。しかしながら、フレームメモリはメモリ量が大きいため、製造コストが高くなってしまったり装置が大型化してしまったりという問題があった。この問題は、画像の入出力に制約が設けられており、ダブルバッファが必要となる場合には特に顕著になってしまう。
【0005】
そこで、この問題を解決するために、フレームメモリのかわりにラインメモリを用いる装置が提案されている。しかしながら、従来提案されている装置では、画像が台形に歪んでいる場合の補正処理にしか言及されておらず、その他の歪み、例えば樽型の歪みや糸巻き型の歪みなどに対する補正ができず、出力画像に歪みが残ってしまうという問題があった。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2002−215114号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
そこで、本実施形態は、以上の点に鑑みてなされたもので、低製造コストかつコンパクトな装置で、光学系で生じる種々の歪みを補正することができる、プロジェクタ、及び画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
本実施形態のプロジェクタは、1ライン分の入力画像信号を保持する入力ラインメモリと、前記入力ラインメモリから転送された入力画像信号を用いて、投影レンズの歪みに対応する補正処理を施した中間画像信号を生成する画像処理部と、1ライン分の前記中間画像信号を保持する出力ラインメモリと、前記中間画像信号に従って光源から照射される光を前記投影レンズに導くLCOSと、を備えており、前記画像処理部は、複数ラインの前記入力画像信号を格納する入力補充バッファと、1ライン分の前記中間画像信号を生成するために必要な入力画像信号を格納する入力データバッファと、前記入力補充バッファから前記入力データバッファに転送する入力画像信号の補充ライン数を計算する補充ライン数計算部とを備えていることを特徴とする。
【図面の簡単な説明】
【0009】
【図1】本実施形態に係わるプロジェクタの構成の一例を説明する図。
【図2】画像処理部5の構成を説明する図。
【図3】LCOS6の画素領域を説明する概略図。
【図4】補正による画素の移動を説明するイメージ図であり、(a)(b)は画像上部のラインについて補正を行う場合の補正前後の画像のイメージ、(c)(d)は画像中央のラインについて補正を行う場合の補正前後の画像のイメージ、(e)(f)は画像下部のラインについて補正を行う場合の補正前後の画像のイメージ、をそれぞれ示している。
【図5】画像処理部5における画像信号の処理の流れを説明するフローチャート。
【図6】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【図7】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【図8】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【図9】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【図10】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【図11】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【発明を実施するための形態】
【0010】
以下、図面を参照して実施形態を説明する。
図1は、第1の実施形態に係わるプロジェクタの構成の一例を説明する図である。プロジェクタ1は、投影する画像を構成する画像信号などを入力する入力部2と、プロジェクタ1内部の各部位を制御して画像信号などのデータの送受信を実行する中央処理装置(以下、CPUと示す)3と、1ライン分の入力画像信号を保持する入力ラインメモリ4aと、1ライン分の中間画像信号を保持する出力ラインメモリ4bと、入力画像信号に対して電気的な画像処理を施す画像処理部5と、反射型の液晶パネルであるLCOS6と、投射レンズ7とを備えて構成されている。
【0011】
なお、図示しないが、プロジェクタ1には光源装置や各種要素レンズなどを備えた照明光学部、照明光学部の制御を行う制御部なども備えている。投射レンズ7や照明光学系などは、少なくとも歪曲収差や倍率色収差を補正するための光学的な技巧(例えば色消しレンズや非球面レンズなど)は具備しておらず、画像を投影するために必要なレンズのみが配置されている。また、プロジェクタ1には、図示しない電源装置が接続されており、各部位に必要な電力が供給されている。
【0012】
図2は、画像処理部5の構成を説明する図である。画像処理部5は、入力ラインメモリ4aからの入力画像信号を保持する入力補充バッファ51と、補正に使用される可能性があるラインに関する入力画像信号を保持する入力データバッファ52と、入力画像信号に補正を施す光学補正回路としての信号処理部53と、信号処理部53で補正処理を施すことにより生成された中間画像信号を逐次格納する出力バッファ54とを備えている。入力補充バッファ51、入力データバッファ52、出力バッファ54はそれぞれ、R画像用、G画像用、B画像用のバッファから構成されている。
【0013】
それぞれの入力補充バッファ51及び入力データバッファ52は、ある程度のライン数(例えば32ライン程度)の画像信号を保持することが可能な容量を有するサーキュラーバッファで構成されている。入力補充バッファ51は、入力ラインメモリ4aから1ライン分ずつ画像信号が補充され、同時に既に格納されている画像信号のうち、最前から格納されている1ライン分の画像信号が破棄されていくことになる。
【0014】
入力データバッファ52には、次に出力すべきラインの画像信号を得るための補正処理に必要となる入力画像信号が格納されていなければならない。この補正処理に必要となる入力画像信号は、規則的に更新される入力補充バッファ51に格納されている入力画像信号とは一致していない。このため、入力補充バッファ51から入力画像信号を適宜読み出して、入力データバッファ52を更新する必要がある。
【0015】
この更新に必要な補充ライン数の算出(入力補充バッファ51から入力データバッファ52に対して転送する入力画像信号のライン数の算出)は、信号処理部53の補充ライン数計算部531で行われる。補充ライン数計算部531における補充ライン数の算出の具体的な方法については後述する。
【0016】
信号処理部53は、以下に示す補正式(1)〜(3)を用いて、入力画像信号の各画素の位置を、中間画像信号の各画素の位置に変換する。画像中心からの距離の二乗をr2、補正パラメータをkx(x=0〜3)、補正前の画像(a×b画素)における各画素の水平方向の座標位置をxi(―2/a≦xi≦2/a)、垂直方向の座標位置をyi(―2/b≦yi≦2/b)、補正後の画像(A×B画素)における各画素の水平方向の座標位置をxo(―2/A≦xo≦2/A)、垂直方向の座標位置をyo(―2/B≦yo≦2/B)とした場合、補正前後の画像の各画素の座標位置(xi、yi)(xo、yo)は、
xi=(k0+k1×r2+k2×r2^2+k3×r2^3)xo … (1)
yi=(k0+k1×r2+k2×r2^2+k3×r2^3)yo … (2)
r2=xo^2+yo^2 … (3)
(ただし、各座標位置は画像中心を原点とする。)
の関係式で表される。なお、補正パラメータをkx(x=0〜3)は色(RGB)ごとに異なる。従って、実際の補正処理では、入力されるR画像、G画像、B画像のそれぞれについて式(1)〜(3)に適切な補正パラメータを代入し、座標変換が行われる。出力バッファ54には1ライン分の中間画像信号が保持され、一定時刻ごとに出力ラインメモリ4bに転送される。
【0017】
図3はLCOS6の画素領域を説明する概略図である。LCOS6は入力画像信号の有効画素領域6aに対して上下左右にマージン領域を付加した画素領域を持つように構成されている。すなわち、入力画像の有効画素領域6aがw0×h0である場合、LCOS6の画素領域は(w0+2×w1)×(h0+2×h1)となる。LCOS6のマージン領域のサイズは、投影レンズ7の歪み特性や歪み補正範囲などを考慮して決定される。
【0018】
次に、入力補充バッファ51及び入力データバッファ52の容量の設定方法と、補充ライン数計算部531における更新に必要なライン数の算出の具体的な方法について、説明する。
【0019】
図4は、補正による画素の移動を説明するイメージ図である。図4の(a)(b)は画像上部のラインについての補正前後の画像のイメージ、(c)(d)は画像中央のラインについての補正前後の画像のイメージ、(e)(f)は画像下部のラインについての補正前後の画像のイメージ、をそれぞれ示している。すなわち、図4(a)、(c)、(e)は補正前における同一フレームの入力画像P1であり、図4(b)、(d)、(f)は補正後の同一フレームの中間画像P2を示している。なお、ここでは一例として光学系で糸巻き型の歪みが発生する場合に、補正によってこれと逆方向の樽型の歪みを画像に与える場合について説明する。
【0020】
中間画像P2において図4(b)に示すように画像上部に位置するラインL2uに配置される画素は、入力画像P1において図4(a)に示すように画像上部に位置する領域L1uに配置されている画素から構成される。すなわち、ラインL2uを構成する画素を信号処理部53で算出する場合、入力画像P1において領域L1uが含まれるラインの画素を入力データバッファ52に保持しておく必要がある。
【0021】
また、中間画像P2において図4(d)に示すように画像中央に位置するラインL2mに配置される画素は、入力画像P1において図4(c)に示すように画像中央に位置する領域L1mに配置されている画素から構成される。すなわち、ラインL2mを構成する画素を信号処理部53で算出する場合、入力画像P1において領域L1mが含まれるラインの画素を入力データバッファ52に保持しておく必要がある。
【0022】
さらに、中間画像P2において図4(f)に示すように画像下部に位置するラインL2bに配置される画素は、入力画像P1において図4(e)に示すように画像下部に位置する領域L1bに配置されている画素から構成される。すなわち、ラインL2bを構成する画素を信号処理部53で算出する場合、入力画像P1において領域L1bが含まれるラインの画素を入力データバッファ52に保持しておく必要がある。
【0023】
このように、中間画像P2の画像中央に近いラインに位置する画素を算出する場合には歪みが少ないため、入力画像P1の画像中央に位置する1乃至数ラインの画素を入力データバッファ52に保持しておけばよい。一方、中間画像P2の画像中央から離れたライン(画像上部ライン、もしくは画像下部ライン)に位置する画素を算出する場合には歪みが大きいため、入力画像P1の画像上部、もしくは画像下部に位置する複数のライン(中間画像P2の画像中央に近いラインに位置する画素を算出する場合に保持する必要があるライン数に比べて多数のライン)の画素を入力データバッファ52に保持する。
【0024】
従って、入力データバッファ52は、歪みが大きく、中間画像P2の最上部に位置するラインの画素を算出するために必要な入力画像P1のライン数H0と、次に算出するライン(中間画像P2の上から2番目に位置するライン)の画素を算出するためのライン数Maを保持するのに十分な容量が必要となる。なお、中間画像P2の最下部に位置するラインの画素を算出するために必要な入力画像P1のライン数は最上部に位置するラインの画素を算出するために必要な入力画像P1のライン数H0と同数である。
【0025】
入力画像P1のライン数をH、光学系での歪み率をXd%とすると、H0は次の式(4)で表される。
H0=H×((Xd/2)/100) … (4)
また、中間画像P2の光学的な中心である主点の座標を(Px、Py)とすると、Maは、補正後の2点(−Px、−Py)と(−Px、−Py+1)の画素に対して計算されるyiの差に2を加えた値とすることができる。なお、2を加えるのは次の理由による。それぞれの画素について計算されるyiの値は小数点となることが多いが、入力データバッファ52に保持されている離散化された画素の座標と対応させるためには整数値に近似する必要がある。この近似によって発生する、それぞれの画素について計算yiの差の最大値が2となるからである。
【0026】
入力データバッファ52の容量の決め方について、具体的な数値をあげて説明する。歪み率が10%のプロジェクタにおいて、FWVGA画像(854×480画素)である入力画像P1の主点が画像中心である場合について考える。正規化された補正係数は、k0=1、k1=−0.01、k2=−0.05、k3=0.02とする。
【0027】
まず、H0については、式(4)に上記の必要な数値を代入すると、
H0=480×((10/2)/100)=24 … (5)
となる。次に、補正後の2点(−427、−240)と(−427、−239)の画素に対し、式(2)、(3)に上記の必要な数値を代入してyiを計算する。
【0028】
(−427、−240)については、
r2=(−1.0)^2+(−240/427)^2=1.315911 … (6)
yi=((1+(−0.01)×1.315911+(−0.05)×(1.315911)^2+0.02×(1.315911)^3)
×(−240)
=−226.9999368 … (7)
となる。次に、(−427、−239)については、
r2=(−1.0)^2+(−239/427)^2=1.313286 … (8)
yi=((1+(−0.01)×1.313286+(−0.05)×(1.313286)^2+0.02×(1.313286)^3)
×(−239)
=‐226.08181578 … (9)
となる。従って、Maは式(7)と式(9)の答えの差に2を加えた数となるので、
Ma=−226.08181578‐(−226.9999368)+2
=2.9181202 … (10)
となる。
【0029】
メモリの実装上、Maは3となり、入力データバッファ52に保持しなければならない最大のライン数は24+3=27ラインとなる。ここで、入力データバッファ52はサーキュラーバッファで構成されているため、その容量は(ライン数)×(入力画像P1の幅)のバイト数を下回らない2のべき乗の数値とする必要がある。従って、上述の例の場合、入力データバッファ52の容量は32KBとなる。同様に、入力補充バッファ51の容量も32KBとなる。
【0030】
次に、補充ライン数計算部531における更新に必要なライン数の算出方法について説明する。補充ライン数計算部531には、次に補正を行う出力ラインのライン番号Moと、現時点で入力データバッファ52に読み込まれている入力画像信号の最大ライン番号Cと、最後に補正を行った出力ラインに関し、入力データバッファ52に格納されている入力画像信号のうち、実際に補正に用いられた画像信号が含まれる最大ライン番号Mとが保持されている。
【0031】
なお、ライン番号とは、1枚のフレームを構成する複数のラインを識別するための番号である。例えば、入力画像P1がFWVGA画像(854×480画素)である場合、ライン番号は、画像最上部のラインから順に、0、1、2、…、478、479、のように付与される。
【0032】
まず、補正を行う出力ラインのライン番号Moが0である、すなわち新しいフレームの最初のラインの補正が行われる場合についての算出方法について説明する。現在入力データバッファ52に格納されている入力画像信号は前のフレームに関するものであるので、以降に行う補正には使用しない。従って、入力データバッファ52に格納されている入力画像信号を廃棄して、新しいフレームの入力画像信号に更新する。新しいフレームからの補正の場合、少なくとも更新に必要となるライン数分のデータを入力データバッファ52に格納する。前述の例の場合は、27ラインとなる。なお、入力データバッファ52に格納することができる全てのラインについて更新してもよい。
【0033】
次に、補正を行う出力ラインのライン番号Moが0以外の数である場合、すなわち同一フレームのラインの補正が行われる場合、現在入力データバッファ52に格納されている入力画像信号も使用することができ、足りない分だけ入力補充バッファ51から入力データバッファ52に補充すればよい。次の出力ラインの補正を行うためには、前の出力ラインに関して実際に補正に用いられた画像信号が含まれる最大ライン番号Mに、次に補正を行うラインの画素を算出するために追加しなくてはならないライン数(=Ma)を足したライン番号までの入力画像信号が入力データバッファ52に格納されていなくてはならない。ここで、入力データバッファ52にはすでにライン番号Cまで入力画像信号が格納されている。従って、更新に必要となるライン数、すなわち入力データバッファ52への補充ライン数は、M+Ma−Cで算出される。
【0034】
次に、本実施形態におけるプロジェクタ1の動作について説明する。ここでは、入力画像信号が入力ラインメモリ4aから画像処理部5に転送され、補正処理を行った後に中間画像信号として出力ラインメモリ4bに出力されるまでの動作について説明する。
【0035】
図5は、画像処理部5及び入力ラインメモリ4a、出力ラインメモリ4bにおける1フレーム分の画像信号の処理の流れを説明するフローチャートである。入力画像は、例えばR画像、G画像、B画像など複数の画像を重畳して構成されており、画像処理部5では個々の画像の入力画像信号を補正処理する。ここではまず、入力画像を構成するひとつの画像(例えばR画像)の入力画像信号に対して補正処理を行う動作について説明する。
【0036】
まず、入力ラインメモリ4aから入力補充バッファ51に入力画像信号が1ライン書き込まれる(S1)。ただし、すでに入力画像信号を書き込むだけの容量が残っていない場合は、最前に書き込まれた入力画像信号が1ライン分破棄される。フレームの最上部のラインが補正される場合は、補正に必要なライン数分の入力画像信号を格納するために、S1が繰り返し実行される。
【0037】
なお、入力画像信号は一定時刻ごとに入力部2、CPU3を介して入力ラインメモリ4aに1ラインずつ書き込まれる。入力画像信号をRGB個々の入力画像信号に分解するタイミングは、入力ラインメモリ4aに書き込まれる以前の入力部2やCPU3で行ってもよいし、入力ラインメモリ4aから入力補充バッファ51に書き込む際に行ってもよく、実装によって選択可能である。
【0038】
次に、補充ライン数計算部531において、入力補充バッファ51から入力データバッファ52へ補充するライン数が計算される(S2)。補充ライン数の具体的な計算方法は上述の通りである。
【0039】
計算の結果、補充ライン数が1ライン以上であると算出された場合(S3、Yes)、ライン番号(C+1)から(M+Ma−C)ライン分の入力画像信号が入力補充バッファ51から入力データバッファ52へ書き込まれる(S4)。ただし、すでに入力画像信号を書き込むだけの容量が残っていない場合は、最前に書き込まれた入力画像信号が(M+Ma−C)ライン分破棄される。
【0040】
一方、計算の結果、補充ライン数が0であると算出された場合(S3、No)、入力補充バッファ51から入力データバッファ52へ入力画像信号を転送する必要がないために、S5に進む。
【0041】
次に、入力データバッファ52に格納されている入力画像信号を用いて補正処理を行い、出力する中間画像信号を1ライン分生成する(S5)。入力画像信号の各画素位置を中間画像信号の各画素位置に変換する具体的な補正処理は、上述の通り式(1)〜(3)を用いて行われる。
【0042】
生成された中間画像信号は、出力データバッファ54に書き込まれ(S6)、出力ラインメモリ4bに読み出される(S7)。
【0043】
出力データバッファ54から読み出されたデータが最後のラインでない場合(S8、No)、S1に戻り、1フレーム分の処理が終了するまでS1〜S7を繰り返す。一方、最後のラインの中間画像信号の生成が終了して出力ラインメモリ4bへの読み出しが完了している場合(S8、Yes)、1フレーム分の補正処理が終了する。なお、新しいフレームの補正処理を行う場合は、入力補充バッファ51のデータを全て破棄し、S1〜S8の処理を行う。
【0044】
以上の処理をパイプライン化し、R画像信号、G画像信号、B画像信号の3つの画像信号に補正を施し中間画像信号を生成、出力する処理の流れについて説明する。図6から図11は、画像処理部5及び入力ラインメモリ4a、出力ラインメモリ4bにおける画像信号のパイプライン処理の流れを説明する概略図である。図6から図11は、それぞれパイプライン処理における連続する6つのステージを示している。
【0045】
ここで、図6に示すステージの前に、入力補充バッファ51には、各入力補充バッファ51に格納することができるライン数から1ライン減じたライン数だけ、入力ラインメモリ4aからそれぞれに対応する入力画像信号が既に書き込まれているとする。例えば、入力補充バッファ51の容量が32KBであり、32ライン分の入力画像信号を格納することができる場合、図6に示すステージの前に、入力補充バッファ51には31ライン分の入力画像信号が既に書き込まれているとする。
【0046】
まず、図6に示すステージでは、入力ラインメモリ4aからR画像用入力補充バッファ51rへ、R画像の入力画像信号が1ライン分書き込まれる(図5、S1に対応)。
【0047】
図7に示すステージでは、補充ライン数計算部531において、R画像用入力補充バッファ51rからR画像用入力データバッファ52rへ補充するライン数が計算され、結果に従って入力画像信号が転送される(図5、S2〜S4に対応)。同時に、入力ラインメモリ4aからG画像用入力補充バッファ51gへ、G画像の入力画像信号が1ライン分書き込まれる(図5、S1に対応)。
【0048】
図8に示すステージでは、信号処理部53においてR画像用入力データバッファ52rに格納されている入力画像信号を用いて補正処理が行われ、R画像用中間画像信号が1ライン分生成される。生成されたR画像用中間画像信号は、R画像用出力データバッファ54rに書き込まれる(図5、S5、S6に対応)。同時に、補充ライン数計算部531において、G画像用入力補充バッファ51gからG画像用入力データバッファ52gへ補充するライン数が計算され、結果に従って入力画像信号が転送される(図5、S2〜S4に対応)。また同時に、入力ラインメモリ4aからB画像用入力補充バッファ51bへ、B画像の入力画像信号が1ライン分書き込まれる(図5、S1に対応)。
【0049】
図9に示すステージでは、R画像用出力データバッファ54rに格納されているR画像用中間画像信号が出力ラインメモリ4bに読み出されるとともに、入力ラインメモリ4aからR画像用入力補充バッファ51rへ、R画像の入力画像信号が次の1ライン分書き込まれる(図5、S7、S8、S1に対応)。同時に、G画像用入力データバッファ52gに格納されている入力画像信号を用い、信号処理部53において補正処理が行われ、G画像用中間画像信号が1ライン分生成される。生成されたG画像用中間画像信号は、G画像用出力データバッファ54gに書き込まれる(図5、S5、S6に対応)。また同時に、補充ライン数計算部531において、B画像用入力補充バッファ51bからB画像用入力データバッファ52bへ補充するライン数が計算され、結果に従って入力画像信号が転送される(図5、S2〜S4に対応)。
【0050】
図10に示すステージでは、補充ライン数計算部531において、R画像用入力補充バッファ51rからR画像用入力データバッファ52rへ補充するライン数が計算され、結果に従って入力画像信号が転送される(図5、S2〜S4に対応)。同時に、G画像用出力データバッファ54gに格納されているG画像用中間画像信号が出力ラインメモリ4bに読み出されるとともに、入力ラインメモリ4aからG画像用入力補充バッファ51gへ、G画像の入力画像信号が次の1ライン分書き込まれる(図5、S7、S8、S1に対応)。また同時に、B画像用入力データバッファ52bに格納されている入力画像信号を用い、信号処理部53において補正処理が行われ、B画像用中間画像信号が1ライン分生成される。生成されたB画像用中間画像信号は、B画像用出力データバッファ54bに書き込まれる(図5、S5、S6に対応)。
【0051】
図11に示すステージでは、R画像用入力データバッファ52rに格納されている入力画像信号を用い、信号処理部53において補正処理が行われ、R画像用中間画像信号が1ライン分生成される。生成されたR画像用中間画像信号は、R画像用出力データバッファ54rに書き込まれる(図5、S5、S6に対応)。同時に、補充ライン数計算部531において、G画像用入力補充バッファ51gからG画像用入力データバッファ52gへ補充するライン数が計算され、結果に従って入力画像信号が転送される(図5、S2〜S4に対応)。また同時に、B画像用出力データバッファ54bに格納されているB画像用中間画像信号が出力ラインメモリ4bに読み出されるとともに、入力ラインメモリ4aからB画像用入力補充バッファ51bへ、B画像の入力画像信号が次の1ライン分書き込まれる(図5、S7、S8、S1に対応)。
【0052】
図11に示すステージの後は、入力ラインメモリ4aから書き込まれる全ての入力画像信号の補正処理が終わって中間画像信号が出力ラインメモリ4bに読み出されるまで図9〜図11に示すステージが繰り返し実行される。
【0053】
なお、以上のパイプライン処理における各ステージの最大所要時間は、フレームレートFと、入力画像のライン数Hとから、1/(F×H×3)となる。あるフレームの最初の出力ラインの補正を行う場合、入力補充バッファ51が必要なライン数の入力画像信号で満たされている必要がある。例えば前述の例において、入力補充バッファ51に書き込むことができるライン数が32である場合、ライン番号0の出力ラインを得るための補正処理を行うためには、入力補充バッファ51に少なくともライン番号0〜26の27本の入力ラインが格納されている必要がある。なお、補正処理に最小限必要な入力ライン(27本)だけでなく、入力補充バッファ51の容量を満たす32本の入力ラインを格納してもよい。
【0054】
図6に示すように、入力ラインメモリ4aから入力補充バッファ51に対して1ラインを書き込む処理は1ステージで行われる。また、入力画像信号は、R、G、Bの3つの画像信号から構成されており、入力補充バッファ51が満たされるまでそれぞれの画像信号に関して1ラインずつ図6の処理が行われる必要がある。従って、入力ラインメモリ4aから入力補充バッファ51に対してライン番号0の入力ラインが書き込まれてから、ライン番号0の出力ラインが出力ラインメモリ4bに読み出されるまでのレイテンシは、(入力補充バッファ51に格納されるラインの本数)×3×(1/(F×H×3))以上となる。
【0055】
このように、プロジェクタ1に入力画像信号に対して逐次補正処理が行われ、投影レンズ7で生じる歪曲収差と逆の歪み特性を持たせた中間画像信号が、CPU3を介してLCOS6に出力される。
【0056】
このように、本実施形態においては、歪みの生じた入力画像信号の補正処理に対し、入力ラインメモリ4aから1ラインずつ書き込まれる入力画像信号を入力補充バッファ51にある程度のライン数蓄積しておき、次の出力ラインを計算するために必要なラインを予め計算し、入力データバッファ52に該当するラインの入力画像信号を書き込んでおく。入力データバッファ52に格納されている入力画像信号を用いて補正処理を行って中間画像信号を1ライン分生成して出力する。この一連の処理を1ラインずつ繰り返し行うことにより、画像処理部5に対する画像信号の入出力メモリとしてフレームメモリでなく入出力ラインメモリ4a、4bを用いることができるため、製造コストを抑制し、また、コンパクトな装置を実現することができる。
【0057】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として例示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0058】
4a…入力ラインメモリ、5…画像処理部、51…入力補充バッファ、52…入力データバッファ、53…信号処理部、531…補充ライン数計算部、54…出力データバッファ、4b…出力ラインメモリ
【技術分野】
【0001】
本実施形態は、プロジェクタ、及び画像処理装置に関する。
【背景技術】
【0002】
従来、プロジェクタの投影レンズは、理想像(プロジェクタに入力された画像)と実際の像(プロジェクタを通して投影される画像)との差異(収差)を抑制させるために、多くの枚数で構成されている。しかし、倍率色収差を抑制するためには、屈折率の異なる素材のレンズの組を多数使用するためにレンズ枚数が多くなり、装置の大型化や製造コストの増大が問題となる。また、樽型や糸巻き型などの歪曲収差を抑制するためには、レンズの材質を工夫したり非球面レンズを採用したりするが、そのレンズの設計コストや製造コストが増大してしまう。
【0003】
そこで、近年では、光学系の要因で発生する倍率色収差や歪曲収差によって画像に歪みなどが生じる場合、入力画像に対して光学系の前処理として電気的に画像処理を行い、光学系で生じる歪みと逆方向の歪みを入力画像に予め与えておく方法が一般的に用いられている。例えば、光学系で画像が樽型に歪む歪曲収差が発生する場合、光学系の前段階で補正処理を施して画像を糸巻き型に変換させておく。
【0004】
従来のプロジェクタにおける補正処理では、入力画像に対してランダムアクセスが必要となるために、フレームメモリを使って入力画像1フレーム分を保持し、必要な画素に対してアクセスする方法が用いられていた。しかしながら、フレームメモリはメモリ量が大きいため、製造コストが高くなってしまったり装置が大型化してしまったりという問題があった。この問題は、画像の入出力に制約が設けられており、ダブルバッファが必要となる場合には特に顕著になってしまう。
【0005】
そこで、この問題を解決するために、フレームメモリのかわりにラインメモリを用いる装置が提案されている。しかしながら、従来提案されている装置では、画像が台形に歪んでいる場合の補正処理にしか言及されておらず、その他の歪み、例えば樽型の歪みや糸巻き型の歪みなどに対する補正ができず、出力画像に歪みが残ってしまうという問題があった。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2002−215114号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
そこで、本実施形態は、以上の点に鑑みてなされたもので、低製造コストかつコンパクトな装置で、光学系で生じる種々の歪みを補正することができる、プロジェクタ、及び画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
本実施形態のプロジェクタは、1ライン分の入力画像信号を保持する入力ラインメモリと、前記入力ラインメモリから転送された入力画像信号を用いて、投影レンズの歪みに対応する補正処理を施した中間画像信号を生成する画像処理部と、1ライン分の前記中間画像信号を保持する出力ラインメモリと、前記中間画像信号に従って光源から照射される光を前記投影レンズに導くLCOSと、を備えており、前記画像処理部は、複数ラインの前記入力画像信号を格納する入力補充バッファと、1ライン分の前記中間画像信号を生成するために必要な入力画像信号を格納する入力データバッファと、前記入力補充バッファから前記入力データバッファに転送する入力画像信号の補充ライン数を計算する補充ライン数計算部とを備えていることを特徴とする。
【図面の簡単な説明】
【0009】
【図1】本実施形態に係わるプロジェクタの構成の一例を説明する図。
【図2】画像処理部5の構成を説明する図。
【図3】LCOS6の画素領域を説明する概略図。
【図4】補正による画素の移動を説明するイメージ図であり、(a)(b)は画像上部のラインについて補正を行う場合の補正前後の画像のイメージ、(c)(d)は画像中央のラインについて補正を行う場合の補正前後の画像のイメージ、(e)(f)は画像下部のラインについて補正を行う場合の補正前後の画像のイメージ、をそれぞれ示している。
【図5】画像処理部5における画像信号の処理の流れを説明するフローチャート。
【図6】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【図7】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【図8】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【図9】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【図10】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【図11】画像処理部5における画像信号のパイプライン処理の流れを説明する概略図。
【発明を実施するための形態】
【0010】
以下、図面を参照して実施形態を説明する。
図1は、第1の実施形態に係わるプロジェクタの構成の一例を説明する図である。プロジェクタ1は、投影する画像を構成する画像信号などを入力する入力部2と、プロジェクタ1内部の各部位を制御して画像信号などのデータの送受信を実行する中央処理装置(以下、CPUと示す)3と、1ライン分の入力画像信号を保持する入力ラインメモリ4aと、1ライン分の中間画像信号を保持する出力ラインメモリ4bと、入力画像信号に対して電気的な画像処理を施す画像処理部5と、反射型の液晶パネルであるLCOS6と、投射レンズ7とを備えて構成されている。
【0011】
なお、図示しないが、プロジェクタ1には光源装置や各種要素レンズなどを備えた照明光学部、照明光学部の制御を行う制御部なども備えている。投射レンズ7や照明光学系などは、少なくとも歪曲収差や倍率色収差を補正するための光学的な技巧(例えば色消しレンズや非球面レンズなど)は具備しておらず、画像を投影するために必要なレンズのみが配置されている。また、プロジェクタ1には、図示しない電源装置が接続されており、各部位に必要な電力が供給されている。
【0012】
図2は、画像処理部5の構成を説明する図である。画像処理部5は、入力ラインメモリ4aからの入力画像信号を保持する入力補充バッファ51と、補正に使用される可能性があるラインに関する入力画像信号を保持する入力データバッファ52と、入力画像信号に補正を施す光学補正回路としての信号処理部53と、信号処理部53で補正処理を施すことにより生成された中間画像信号を逐次格納する出力バッファ54とを備えている。入力補充バッファ51、入力データバッファ52、出力バッファ54はそれぞれ、R画像用、G画像用、B画像用のバッファから構成されている。
【0013】
それぞれの入力補充バッファ51及び入力データバッファ52は、ある程度のライン数(例えば32ライン程度)の画像信号を保持することが可能な容量を有するサーキュラーバッファで構成されている。入力補充バッファ51は、入力ラインメモリ4aから1ライン分ずつ画像信号が補充され、同時に既に格納されている画像信号のうち、最前から格納されている1ライン分の画像信号が破棄されていくことになる。
【0014】
入力データバッファ52には、次に出力すべきラインの画像信号を得るための補正処理に必要となる入力画像信号が格納されていなければならない。この補正処理に必要となる入力画像信号は、規則的に更新される入力補充バッファ51に格納されている入力画像信号とは一致していない。このため、入力補充バッファ51から入力画像信号を適宜読み出して、入力データバッファ52を更新する必要がある。
【0015】
この更新に必要な補充ライン数の算出(入力補充バッファ51から入力データバッファ52に対して転送する入力画像信号のライン数の算出)は、信号処理部53の補充ライン数計算部531で行われる。補充ライン数計算部531における補充ライン数の算出の具体的な方法については後述する。
【0016】
信号処理部53は、以下に示す補正式(1)〜(3)を用いて、入力画像信号の各画素の位置を、中間画像信号の各画素の位置に変換する。画像中心からの距離の二乗をr2、補正パラメータをkx(x=0〜3)、補正前の画像(a×b画素)における各画素の水平方向の座標位置をxi(―2/a≦xi≦2/a)、垂直方向の座標位置をyi(―2/b≦yi≦2/b)、補正後の画像(A×B画素)における各画素の水平方向の座標位置をxo(―2/A≦xo≦2/A)、垂直方向の座標位置をyo(―2/B≦yo≦2/B)とした場合、補正前後の画像の各画素の座標位置(xi、yi)(xo、yo)は、
xi=(k0+k1×r2+k2×r2^2+k3×r2^3)xo … (1)
yi=(k0+k1×r2+k2×r2^2+k3×r2^3)yo … (2)
r2=xo^2+yo^2 … (3)
(ただし、各座標位置は画像中心を原点とする。)
の関係式で表される。なお、補正パラメータをkx(x=0〜3)は色(RGB)ごとに異なる。従って、実際の補正処理では、入力されるR画像、G画像、B画像のそれぞれについて式(1)〜(3)に適切な補正パラメータを代入し、座標変換が行われる。出力バッファ54には1ライン分の中間画像信号が保持され、一定時刻ごとに出力ラインメモリ4bに転送される。
【0017】
図3はLCOS6の画素領域を説明する概略図である。LCOS6は入力画像信号の有効画素領域6aに対して上下左右にマージン領域を付加した画素領域を持つように構成されている。すなわち、入力画像の有効画素領域6aがw0×h0である場合、LCOS6の画素領域は(w0+2×w1)×(h0+2×h1)となる。LCOS6のマージン領域のサイズは、投影レンズ7の歪み特性や歪み補正範囲などを考慮して決定される。
【0018】
次に、入力補充バッファ51及び入力データバッファ52の容量の設定方法と、補充ライン数計算部531における更新に必要なライン数の算出の具体的な方法について、説明する。
【0019】
図4は、補正による画素の移動を説明するイメージ図である。図4の(a)(b)は画像上部のラインについての補正前後の画像のイメージ、(c)(d)は画像中央のラインについての補正前後の画像のイメージ、(e)(f)は画像下部のラインについての補正前後の画像のイメージ、をそれぞれ示している。すなわち、図4(a)、(c)、(e)は補正前における同一フレームの入力画像P1であり、図4(b)、(d)、(f)は補正後の同一フレームの中間画像P2を示している。なお、ここでは一例として光学系で糸巻き型の歪みが発生する場合に、補正によってこれと逆方向の樽型の歪みを画像に与える場合について説明する。
【0020】
中間画像P2において図4(b)に示すように画像上部に位置するラインL2uに配置される画素は、入力画像P1において図4(a)に示すように画像上部に位置する領域L1uに配置されている画素から構成される。すなわち、ラインL2uを構成する画素を信号処理部53で算出する場合、入力画像P1において領域L1uが含まれるラインの画素を入力データバッファ52に保持しておく必要がある。
【0021】
また、中間画像P2において図4(d)に示すように画像中央に位置するラインL2mに配置される画素は、入力画像P1において図4(c)に示すように画像中央に位置する領域L1mに配置されている画素から構成される。すなわち、ラインL2mを構成する画素を信号処理部53で算出する場合、入力画像P1において領域L1mが含まれるラインの画素を入力データバッファ52に保持しておく必要がある。
【0022】
さらに、中間画像P2において図4(f)に示すように画像下部に位置するラインL2bに配置される画素は、入力画像P1において図4(e)に示すように画像下部に位置する領域L1bに配置されている画素から構成される。すなわち、ラインL2bを構成する画素を信号処理部53で算出する場合、入力画像P1において領域L1bが含まれるラインの画素を入力データバッファ52に保持しておく必要がある。
【0023】
このように、中間画像P2の画像中央に近いラインに位置する画素を算出する場合には歪みが少ないため、入力画像P1の画像中央に位置する1乃至数ラインの画素を入力データバッファ52に保持しておけばよい。一方、中間画像P2の画像中央から離れたライン(画像上部ライン、もしくは画像下部ライン)に位置する画素を算出する場合には歪みが大きいため、入力画像P1の画像上部、もしくは画像下部に位置する複数のライン(中間画像P2の画像中央に近いラインに位置する画素を算出する場合に保持する必要があるライン数に比べて多数のライン)の画素を入力データバッファ52に保持する。
【0024】
従って、入力データバッファ52は、歪みが大きく、中間画像P2の最上部に位置するラインの画素を算出するために必要な入力画像P1のライン数H0と、次に算出するライン(中間画像P2の上から2番目に位置するライン)の画素を算出するためのライン数Maを保持するのに十分な容量が必要となる。なお、中間画像P2の最下部に位置するラインの画素を算出するために必要な入力画像P1のライン数は最上部に位置するラインの画素を算出するために必要な入力画像P1のライン数H0と同数である。
【0025】
入力画像P1のライン数をH、光学系での歪み率をXd%とすると、H0は次の式(4)で表される。
H0=H×((Xd/2)/100) … (4)
また、中間画像P2の光学的な中心である主点の座標を(Px、Py)とすると、Maは、補正後の2点(−Px、−Py)と(−Px、−Py+1)の画素に対して計算されるyiの差に2を加えた値とすることができる。なお、2を加えるのは次の理由による。それぞれの画素について計算されるyiの値は小数点となることが多いが、入力データバッファ52に保持されている離散化された画素の座標と対応させるためには整数値に近似する必要がある。この近似によって発生する、それぞれの画素について計算yiの差の最大値が2となるからである。
【0026】
入力データバッファ52の容量の決め方について、具体的な数値をあげて説明する。歪み率が10%のプロジェクタにおいて、FWVGA画像(854×480画素)である入力画像P1の主点が画像中心である場合について考える。正規化された補正係数は、k0=1、k1=−0.01、k2=−0.05、k3=0.02とする。
【0027】
まず、H0については、式(4)に上記の必要な数値を代入すると、
H0=480×((10/2)/100)=24 … (5)
となる。次に、補正後の2点(−427、−240)と(−427、−239)の画素に対し、式(2)、(3)に上記の必要な数値を代入してyiを計算する。
【0028】
(−427、−240)については、
r2=(−1.0)^2+(−240/427)^2=1.315911 … (6)
yi=((1+(−0.01)×1.315911+(−0.05)×(1.315911)^2+0.02×(1.315911)^3)
×(−240)
=−226.9999368 … (7)
となる。次に、(−427、−239)については、
r2=(−1.0)^2+(−239/427)^2=1.313286 … (8)
yi=((1+(−0.01)×1.313286+(−0.05)×(1.313286)^2+0.02×(1.313286)^3)
×(−239)
=‐226.08181578 … (9)
となる。従って、Maは式(7)と式(9)の答えの差に2を加えた数となるので、
Ma=−226.08181578‐(−226.9999368)+2
=2.9181202 … (10)
となる。
【0029】
メモリの実装上、Maは3となり、入力データバッファ52に保持しなければならない最大のライン数は24+3=27ラインとなる。ここで、入力データバッファ52はサーキュラーバッファで構成されているため、その容量は(ライン数)×(入力画像P1の幅)のバイト数を下回らない2のべき乗の数値とする必要がある。従って、上述の例の場合、入力データバッファ52の容量は32KBとなる。同様に、入力補充バッファ51の容量も32KBとなる。
【0030】
次に、補充ライン数計算部531における更新に必要なライン数の算出方法について説明する。補充ライン数計算部531には、次に補正を行う出力ラインのライン番号Moと、現時点で入力データバッファ52に読み込まれている入力画像信号の最大ライン番号Cと、最後に補正を行った出力ラインに関し、入力データバッファ52に格納されている入力画像信号のうち、実際に補正に用いられた画像信号が含まれる最大ライン番号Mとが保持されている。
【0031】
なお、ライン番号とは、1枚のフレームを構成する複数のラインを識別するための番号である。例えば、入力画像P1がFWVGA画像(854×480画素)である場合、ライン番号は、画像最上部のラインから順に、0、1、2、…、478、479、のように付与される。
【0032】
まず、補正を行う出力ラインのライン番号Moが0である、すなわち新しいフレームの最初のラインの補正が行われる場合についての算出方法について説明する。現在入力データバッファ52に格納されている入力画像信号は前のフレームに関するものであるので、以降に行う補正には使用しない。従って、入力データバッファ52に格納されている入力画像信号を廃棄して、新しいフレームの入力画像信号に更新する。新しいフレームからの補正の場合、少なくとも更新に必要となるライン数分のデータを入力データバッファ52に格納する。前述の例の場合は、27ラインとなる。なお、入力データバッファ52に格納することができる全てのラインについて更新してもよい。
【0033】
次に、補正を行う出力ラインのライン番号Moが0以外の数である場合、すなわち同一フレームのラインの補正が行われる場合、現在入力データバッファ52に格納されている入力画像信号も使用することができ、足りない分だけ入力補充バッファ51から入力データバッファ52に補充すればよい。次の出力ラインの補正を行うためには、前の出力ラインに関して実際に補正に用いられた画像信号が含まれる最大ライン番号Mに、次に補正を行うラインの画素を算出するために追加しなくてはならないライン数(=Ma)を足したライン番号までの入力画像信号が入力データバッファ52に格納されていなくてはならない。ここで、入力データバッファ52にはすでにライン番号Cまで入力画像信号が格納されている。従って、更新に必要となるライン数、すなわち入力データバッファ52への補充ライン数は、M+Ma−Cで算出される。
【0034】
次に、本実施形態におけるプロジェクタ1の動作について説明する。ここでは、入力画像信号が入力ラインメモリ4aから画像処理部5に転送され、補正処理を行った後に中間画像信号として出力ラインメモリ4bに出力されるまでの動作について説明する。
【0035】
図5は、画像処理部5及び入力ラインメモリ4a、出力ラインメモリ4bにおける1フレーム分の画像信号の処理の流れを説明するフローチャートである。入力画像は、例えばR画像、G画像、B画像など複数の画像を重畳して構成されており、画像処理部5では個々の画像の入力画像信号を補正処理する。ここではまず、入力画像を構成するひとつの画像(例えばR画像)の入力画像信号に対して補正処理を行う動作について説明する。
【0036】
まず、入力ラインメモリ4aから入力補充バッファ51に入力画像信号が1ライン書き込まれる(S1)。ただし、すでに入力画像信号を書き込むだけの容量が残っていない場合は、最前に書き込まれた入力画像信号が1ライン分破棄される。フレームの最上部のラインが補正される場合は、補正に必要なライン数分の入力画像信号を格納するために、S1が繰り返し実行される。
【0037】
なお、入力画像信号は一定時刻ごとに入力部2、CPU3を介して入力ラインメモリ4aに1ラインずつ書き込まれる。入力画像信号をRGB個々の入力画像信号に分解するタイミングは、入力ラインメモリ4aに書き込まれる以前の入力部2やCPU3で行ってもよいし、入力ラインメモリ4aから入力補充バッファ51に書き込む際に行ってもよく、実装によって選択可能である。
【0038】
次に、補充ライン数計算部531において、入力補充バッファ51から入力データバッファ52へ補充するライン数が計算される(S2)。補充ライン数の具体的な計算方法は上述の通りである。
【0039】
計算の結果、補充ライン数が1ライン以上であると算出された場合(S3、Yes)、ライン番号(C+1)から(M+Ma−C)ライン分の入力画像信号が入力補充バッファ51から入力データバッファ52へ書き込まれる(S4)。ただし、すでに入力画像信号を書き込むだけの容量が残っていない場合は、最前に書き込まれた入力画像信号が(M+Ma−C)ライン分破棄される。
【0040】
一方、計算の結果、補充ライン数が0であると算出された場合(S3、No)、入力補充バッファ51から入力データバッファ52へ入力画像信号を転送する必要がないために、S5に進む。
【0041】
次に、入力データバッファ52に格納されている入力画像信号を用いて補正処理を行い、出力する中間画像信号を1ライン分生成する(S5)。入力画像信号の各画素位置を中間画像信号の各画素位置に変換する具体的な補正処理は、上述の通り式(1)〜(3)を用いて行われる。
【0042】
生成された中間画像信号は、出力データバッファ54に書き込まれ(S6)、出力ラインメモリ4bに読み出される(S7)。
【0043】
出力データバッファ54から読み出されたデータが最後のラインでない場合(S8、No)、S1に戻り、1フレーム分の処理が終了するまでS1〜S7を繰り返す。一方、最後のラインの中間画像信号の生成が終了して出力ラインメモリ4bへの読み出しが完了している場合(S8、Yes)、1フレーム分の補正処理が終了する。なお、新しいフレームの補正処理を行う場合は、入力補充バッファ51のデータを全て破棄し、S1〜S8の処理を行う。
【0044】
以上の処理をパイプライン化し、R画像信号、G画像信号、B画像信号の3つの画像信号に補正を施し中間画像信号を生成、出力する処理の流れについて説明する。図6から図11は、画像処理部5及び入力ラインメモリ4a、出力ラインメモリ4bにおける画像信号のパイプライン処理の流れを説明する概略図である。図6から図11は、それぞれパイプライン処理における連続する6つのステージを示している。
【0045】
ここで、図6に示すステージの前に、入力補充バッファ51には、各入力補充バッファ51に格納することができるライン数から1ライン減じたライン数だけ、入力ラインメモリ4aからそれぞれに対応する入力画像信号が既に書き込まれているとする。例えば、入力補充バッファ51の容量が32KBであり、32ライン分の入力画像信号を格納することができる場合、図6に示すステージの前に、入力補充バッファ51には31ライン分の入力画像信号が既に書き込まれているとする。
【0046】
まず、図6に示すステージでは、入力ラインメモリ4aからR画像用入力補充バッファ51rへ、R画像の入力画像信号が1ライン分書き込まれる(図5、S1に対応)。
【0047】
図7に示すステージでは、補充ライン数計算部531において、R画像用入力補充バッファ51rからR画像用入力データバッファ52rへ補充するライン数が計算され、結果に従って入力画像信号が転送される(図5、S2〜S4に対応)。同時に、入力ラインメモリ4aからG画像用入力補充バッファ51gへ、G画像の入力画像信号が1ライン分書き込まれる(図5、S1に対応)。
【0048】
図8に示すステージでは、信号処理部53においてR画像用入力データバッファ52rに格納されている入力画像信号を用いて補正処理が行われ、R画像用中間画像信号が1ライン分生成される。生成されたR画像用中間画像信号は、R画像用出力データバッファ54rに書き込まれる(図5、S5、S6に対応)。同時に、補充ライン数計算部531において、G画像用入力補充バッファ51gからG画像用入力データバッファ52gへ補充するライン数が計算され、結果に従って入力画像信号が転送される(図5、S2〜S4に対応)。また同時に、入力ラインメモリ4aからB画像用入力補充バッファ51bへ、B画像の入力画像信号が1ライン分書き込まれる(図5、S1に対応)。
【0049】
図9に示すステージでは、R画像用出力データバッファ54rに格納されているR画像用中間画像信号が出力ラインメモリ4bに読み出されるとともに、入力ラインメモリ4aからR画像用入力補充バッファ51rへ、R画像の入力画像信号が次の1ライン分書き込まれる(図5、S7、S8、S1に対応)。同時に、G画像用入力データバッファ52gに格納されている入力画像信号を用い、信号処理部53において補正処理が行われ、G画像用中間画像信号が1ライン分生成される。生成されたG画像用中間画像信号は、G画像用出力データバッファ54gに書き込まれる(図5、S5、S6に対応)。また同時に、補充ライン数計算部531において、B画像用入力補充バッファ51bからB画像用入力データバッファ52bへ補充するライン数が計算され、結果に従って入力画像信号が転送される(図5、S2〜S4に対応)。
【0050】
図10に示すステージでは、補充ライン数計算部531において、R画像用入力補充バッファ51rからR画像用入力データバッファ52rへ補充するライン数が計算され、結果に従って入力画像信号が転送される(図5、S2〜S4に対応)。同時に、G画像用出力データバッファ54gに格納されているG画像用中間画像信号が出力ラインメモリ4bに読み出されるとともに、入力ラインメモリ4aからG画像用入力補充バッファ51gへ、G画像の入力画像信号が次の1ライン分書き込まれる(図5、S7、S8、S1に対応)。また同時に、B画像用入力データバッファ52bに格納されている入力画像信号を用い、信号処理部53において補正処理が行われ、B画像用中間画像信号が1ライン分生成される。生成されたB画像用中間画像信号は、B画像用出力データバッファ54bに書き込まれる(図5、S5、S6に対応)。
【0051】
図11に示すステージでは、R画像用入力データバッファ52rに格納されている入力画像信号を用い、信号処理部53において補正処理が行われ、R画像用中間画像信号が1ライン分生成される。生成されたR画像用中間画像信号は、R画像用出力データバッファ54rに書き込まれる(図5、S5、S6に対応)。同時に、補充ライン数計算部531において、G画像用入力補充バッファ51gからG画像用入力データバッファ52gへ補充するライン数が計算され、結果に従って入力画像信号が転送される(図5、S2〜S4に対応)。また同時に、B画像用出力データバッファ54bに格納されているB画像用中間画像信号が出力ラインメモリ4bに読み出されるとともに、入力ラインメモリ4aからB画像用入力補充バッファ51bへ、B画像の入力画像信号が次の1ライン分書き込まれる(図5、S7、S8、S1に対応)。
【0052】
図11に示すステージの後は、入力ラインメモリ4aから書き込まれる全ての入力画像信号の補正処理が終わって中間画像信号が出力ラインメモリ4bに読み出されるまで図9〜図11に示すステージが繰り返し実行される。
【0053】
なお、以上のパイプライン処理における各ステージの最大所要時間は、フレームレートFと、入力画像のライン数Hとから、1/(F×H×3)となる。あるフレームの最初の出力ラインの補正を行う場合、入力補充バッファ51が必要なライン数の入力画像信号で満たされている必要がある。例えば前述の例において、入力補充バッファ51に書き込むことができるライン数が32である場合、ライン番号0の出力ラインを得るための補正処理を行うためには、入力補充バッファ51に少なくともライン番号0〜26の27本の入力ラインが格納されている必要がある。なお、補正処理に最小限必要な入力ライン(27本)だけでなく、入力補充バッファ51の容量を満たす32本の入力ラインを格納してもよい。
【0054】
図6に示すように、入力ラインメモリ4aから入力補充バッファ51に対して1ラインを書き込む処理は1ステージで行われる。また、入力画像信号は、R、G、Bの3つの画像信号から構成されており、入力補充バッファ51が満たされるまでそれぞれの画像信号に関して1ラインずつ図6の処理が行われる必要がある。従って、入力ラインメモリ4aから入力補充バッファ51に対してライン番号0の入力ラインが書き込まれてから、ライン番号0の出力ラインが出力ラインメモリ4bに読み出されるまでのレイテンシは、(入力補充バッファ51に格納されるラインの本数)×3×(1/(F×H×3))以上となる。
【0055】
このように、プロジェクタ1に入力画像信号に対して逐次補正処理が行われ、投影レンズ7で生じる歪曲収差と逆の歪み特性を持たせた中間画像信号が、CPU3を介してLCOS6に出力される。
【0056】
このように、本実施形態においては、歪みの生じた入力画像信号の補正処理に対し、入力ラインメモリ4aから1ラインずつ書き込まれる入力画像信号を入力補充バッファ51にある程度のライン数蓄積しておき、次の出力ラインを計算するために必要なラインを予め計算し、入力データバッファ52に該当するラインの入力画像信号を書き込んでおく。入力データバッファ52に格納されている入力画像信号を用いて補正処理を行って中間画像信号を1ライン分生成して出力する。この一連の処理を1ラインずつ繰り返し行うことにより、画像処理部5に対する画像信号の入出力メモリとしてフレームメモリでなく入出力ラインメモリ4a、4bを用いることができるため、製造コストを抑制し、また、コンパクトな装置を実現することができる。
【0057】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として例示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0058】
4a…入力ラインメモリ、5…画像処理部、51…入力補充バッファ、52…入力データバッファ、53…信号処理部、531…補充ライン数計算部、54…出力データバッファ、4b…出力ラインメモリ
【特許請求の範囲】
【請求項1】
1ライン分の入力画像信号を保持する入力ラインメモリと、
前記入力ラインメモリから転送された入力画像信号を用いて、投影レンズの歪みに対応する補正処理を施した中間画像信号を生成する画像処理部と、
1ライン分の前記中間画像信号を保持する出力ラインメモリと、
前記中間画像信号に従って光源から照射される光を前記投影レンズに導くLCOSと、
を備えており、前記画像処理部は、複数ラインの前記入力画像信号を格納する入力補充バッファと、1ライン分の前記中間画像信号を生成するために必要な入力画像信号を格納する入力データバッファと、前記入力補充バッファから前記入力データバッファに転送する入力画像信号の補充ライン数を計算する補充ライン数計算部とを備えていることを特徴とする、プロジェクタ。
【請求項2】
複数ラインの入力画像信号を格納する入力補充バッファと、
前記入力補充バッファから転送され、1ライン分の中間画像信号を生成するために必要な入力画像信号を格納する入力データバッファと、
前記入力補充バッファから前記入力データバッファに転送する入力画像信号の補充ライン数を計算する補充ライン数計算部と、
前記入力データバッファに格納されている複数の入力画像信号を用いて、投影レンズの歪みに対応する補正処理を施した前記中間画像信号を1ラインずつ生成する信号処理部と、
を備えていることを特徴とする画像処理装置。
【請求項3】
前記補充ライン計算部は、前記入力データバッファに格納されている前記入力画像信号の第一のライン位置と、前記中間画像信号を1ライン生成するために用いられた前記入力画像信号の第二のライン位置と、前記中間画像信号の第一のラインの生成に用いられる前記入力画像信号の第三のライン位置と前記中間画像信号の第一のラインに隣接する第二のラインの生成に用いられる前記入力画像信号の第四のライン位置との最大差に基づき、前記補充ライン数を計算することを特徴とする、画像処理装置。
【請求項4】
前記補充ライン計算部は、前記中間画像信号が1ライン生成される都度、前記補充ライン数を計算し、
前記入力補充バッファは、前記補充ライン数分の入力画像信号を前記入力データバッファに転送することを特徴とする、請求項2または3に記載の画像処理装置。
【請求項5】
前記入力画像信号は、R、G、Bの信号を含み、パイプラインによって処理されることを特徴とする、請求項2乃至請求項4のいずれかに記載の画像処理装置。
【請求項1】
1ライン分の入力画像信号を保持する入力ラインメモリと、
前記入力ラインメモリから転送された入力画像信号を用いて、投影レンズの歪みに対応する補正処理を施した中間画像信号を生成する画像処理部と、
1ライン分の前記中間画像信号を保持する出力ラインメモリと、
前記中間画像信号に従って光源から照射される光を前記投影レンズに導くLCOSと、
を備えており、前記画像処理部は、複数ラインの前記入力画像信号を格納する入力補充バッファと、1ライン分の前記中間画像信号を生成するために必要な入力画像信号を格納する入力データバッファと、前記入力補充バッファから前記入力データバッファに転送する入力画像信号の補充ライン数を計算する補充ライン数計算部とを備えていることを特徴とする、プロジェクタ。
【請求項2】
複数ラインの入力画像信号を格納する入力補充バッファと、
前記入力補充バッファから転送され、1ライン分の中間画像信号を生成するために必要な入力画像信号を格納する入力データバッファと、
前記入力補充バッファから前記入力データバッファに転送する入力画像信号の補充ライン数を計算する補充ライン数計算部と、
前記入力データバッファに格納されている複数の入力画像信号を用いて、投影レンズの歪みに対応する補正処理を施した前記中間画像信号を1ラインずつ生成する信号処理部と、
を備えていることを特徴とする画像処理装置。
【請求項3】
前記補充ライン計算部は、前記入力データバッファに格納されている前記入力画像信号の第一のライン位置と、前記中間画像信号を1ライン生成するために用いられた前記入力画像信号の第二のライン位置と、前記中間画像信号の第一のラインの生成に用いられる前記入力画像信号の第三のライン位置と前記中間画像信号の第一のラインに隣接する第二のラインの生成に用いられる前記入力画像信号の第四のライン位置との最大差に基づき、前記補充ライン数を計算することを特徴とする、画像処理装置。
【請求項4】
前記補充ライン計算部は、前記中間画像信号が1ライン生成される都度、前記補充ライン数を計算し、
前記入力補充バッファは、前記補充ライン数分の入力画像信号を前記入力データバッファに転送することを特徴とする、請求項2または3に記載の画像処理装置。
【請求項5】
前記入力画像信号は、R、G、Bの信号を含み、パイプラインによって処理されることを特徴とする、請求項2乃至請求項4のいずれかに記載の画像処理装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2013−66134(P2013−66134A)
【公開日】平成25年4月11日(2013.4.11)
【国際特許分類】
【出願番号】特願2011−204934(P2011−204934)
【出願日】平成23年9月20日(2011.9.20)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
【公開日】平成25年4月11日(2013.4.11)
【国際特許分類】
【出願日】平成23年9月20日(2011.9.20)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
[ Back to top ]