以下に添付図面を参照して、投射装置、画像補正方法およびプログラムの実施の形態を詳細に説明する。かかる実施形態に示す具体的な数値および外観構成などは、本発明の理解を容易とするための例示にすぎず、特に断る場合を除き、本発明を限定するものではない。なお、本発明に直接関係のない要素は詳細な説明および図示を省略している。
(実施の形態1)
<投射装置の外観>
図1は、実施の形態1に係る投射装置(プロジェクタ装置)1の外観の例を示す図である。図1(a)はプロジェクタ装置1を操作部が設けられる第1面側から見た斜視図、図1(b)はプロジェクタ装置1を操作部と対向する側の第2面側から見た斜視図である。プロジェクタ装置1は、ドラム部10と基台20とを備える。ドラム部10は基台20に対して回転駆動が可能な回転体である。そして、基台20がそのドラム部10を回転可能に支持する支持部や、ドラム部10の回転駆動制御や画像処理制御等の各種制御を行う回路部を有する。
ドラム部10は、基台20の一部である側板部21aおよび21bの内側に設けられた、ベアリングなどからなる、図示しない回転軸によって回転駆動可能に支持される。ドラム部10の内部には、光源と、光源から射出された光を画像データに従い変調する表示素子と、表示素子を駆動する駆動回路と、表示素子で変調された光を外部に投射する光学系を含む光学エンジン部と、光源などを冷却するためのファンなどによる冷却手段とが設けられている。
ドラム部10には、窓部11および13が設けられる。窓部11は、上述した光学系の投射レンズ12から投射された光が外部に照射されるように設けられる。窓部13は、例えば赤外線や超音波などを利用して被投射媒体までの距離を導出する距離センサが設けられる。また、ドラム部10には、ファンによる放熱のための吸排気を行う吸排気口22aを備えている。
基台20の内部には、回路部の各種基板や電源部、ドラム部10を回転駆動するための駆動部などが設けられている。なお、この駆動部によるドラム部10の回転駆動については、後述する。基台20の上記第1面側には、ユーザがこのプロジェクタ装置1を制御するために各種操作を入力するための操作部14と、ユーザが図示しないリモートコントロールコマンダを使用してこのプロジェクタ装置1を遠隔制御する際の、リモートコントロールコマンダから送信された信号を受信する受信部15とが設けられている。操作部14は、ユーザの操作入力を受け付ける各種操作子や、このプロジェクタ装置1の状態を表示するための表示部などを有している。
基台20の上記第1面側および上記第2面側には、それぞれ吸排気口16aおよび16bが設けられ、回転駆動されてドラム部10の吸排気口22aが基台20側を向いた姿勢をとっている場合でも、ドラム部10内の放熱効率を低下させないよう、吸気または排気を行うことが可能となっている。また、筐体の側面に設けられる吸排気口17は、回路部の放熱のための吸排気を行う。
<ドラム部の回転駆動>
図2は、基台20に設けられた駆動部32によるドラム部10の回転駆動について説明するための図である。図2(a)は、ドラム部10のカバーなどを取り去った状態のドラム30と、基台20に設けられた駆動部32の構成を示す図である。ドラム30には、上述の窓部11に対応する窓部34と、窓部13に対応する窓部33とが設けられている。ドラム30は回転軸36を有し、この回転軸36により、支持部31aおよび31bに設けられた、ベアリングを用いた軸受け37に対して回転駆動可能に取り付けられる。
ドラム30の一方の面には、円周上にギア35が設けられている。支持部31bに設けられた駆動部32により、ギア35を介してドラム30が回転駆動される。ギア35の内周部の突起46aおよび46bは、ドラム30の回転動作の始点ならびに終点を検出するために設けられる。
図2(b)は、ドラム30および基台20に設けられた駆動部32の構成をより詳細に示すための拡大図である。駆動部32は、モータ40を有すると共に、モータ40の回転軸により直接駆動されるウォームギア41、ウォームギア41による回転を伝達するギア42aおよび42b、ならびに、ギア42bから伝達された回転をドラム30のギア35に伝達するギア43を含むギア群を有する。このギア群によりモータ40の回転をギア35に伝達することで、ドラム30をモータ40の回転に応じて回転させることができる。モータ40としては、例えば駆動パルスにより所定角度毎の回転制御を行うステッピングモータを適用することができる。
支持部31bに対して、フォトインタラプタ51aおよび51bが設けられる。フォトインタラプタ51aおよび51bは、それぞれ、ギア35の内周部に設けられる突起46bおよび46aを検出する。フォトインタラプタ51aおよび51bの出力信号は、後述する回転制御部104に供給される。実施形態では、フォトインタラプタ51aに突起46bが検出されることで、回転制御部104は、ドラム30の姿勢が回転動作の終点に達した姿勢であると判断する。また、フォトインタラプタ51bに突起46aが検出されることで、回転制御部104は、ドラム30の姿勢が回転動作の始点に達した姿勢であると判断する。
以下、フォトインタラプタ51bに突起46aが検出される位置から、フォトインタラプタ51aに突起46bが検出される位置まで、ドラム30の円周における長さが大きい方の弧を介してドラム30が回転する方向を、正方向とする。すなわち、ドラム30の回転角は、正方向に向けて増加する。
なお、実施形態では、フォトインタラプタ51bが突起46aを検出する検出位置と、フォトインタラプタ51aが突起46bを検出する検出位置との間の回転軸36を挟む角度が270°になるように、フォトインタラプタ51aおよび51b、ならびに、突起46aおよび46bがそれぞれ配される。
例えば、モータ40としてステッピングモータを適用した場合、フォトインタラプタ51bによる突起46aの検出タイミングと、モータ40を駆動するための駆動パルス数とに基づき、ドラム30の姿勢を特定し、投射レンズ12による投射角を求めることができる。
なお、モータ40は、ステッピングモータに限らず、例えばDCモータを適用することもできる。この場合、例えば、図2(b)に示されるように、ギア43に対して同一軸上にギア43と共に回転するコードホイール44を設けると共に、支持部30bに対してフォトリフレクタ50aおよび50bを設け、ロータリエンコーダを構成する。
コードホイール44は、例えば、半径方向に位相が異ならされる透過部45aおよび反射部45bが設けられる。フォトリフレクタ50aおよび50bにより、コードホイール44からのそれぞれの位相の反射光を受光することで、ギア43の回転速度と回転方向とを検出できる。そして、これら検出されたギア43の回転速度および回転方向に基づいてドラム30の回転速度および回動方向が導出される。導出されたドラム30の回転速度および回動方向と、フォトインタラプタ51aによる突起46bの検出結果とに基づき、ドラム30の姿勢を特定し、投射レンズ12による投射角を求めることができる。
上述のような構成において、投射レンズ12による投射方向が鉛直方向に向き、投射レンズ12が完全に基台20に隠れている状態を収容状態(あるいは収容姿勢)という。図3(a)は、収容状態のドラム部10の様子を示す。実施形態では、この収容状態においてフォトインタラプタ51bに突起46aが検出され、後述する回転制御部104により、ドラム30が回転動作の始点に達していると判断される。
なお、以下では、特に記載のない限り、「ドラム部10の方向」および「ドラム部10の角度」がそれぞれ「投射レンズ12による投射方向」および「投射レンズ12による投射角」と同義であるものとする。
例えば、プロジェクタ装置1が起動されると、投射レンズ12による投射方向が上記第1面側を向くように、駆動部32がドラム部10の回転を開始する。その後、ドラム部10は、例えば、ドラム部10の方向すなわち投射レンズ12による投射方向が第1面側において水平になる位置まで回転し、回転を一旦停止したとする。この、投射レンズ12による投射方向が第1面側において水平になった場合の投射レンズ12の投射角を、投射角0°と定義する。図3(b)に、投射角0°のときの、ドラム部10(投射レンズ12)の姿勢の様子を示す。以下、この投射角0°の姿勢のときを基準として、投射角θとなるドラム部10(投射レンズ12)の姿勢を、θ姿勢と呼ぶ。また、投射角0°の姿勢(すなわち、0°姿勢)の状態を初期状態と呼ぶ。
例えば、0°姿勢において画像データが入力され、光源が点灯されたとする。ドラム部10において、光源から射出された光が、駆動回路により駆動された表示素子により画像データに従い変調されて光学系に入射される。そして、画像データに従い変調された光が、投射レンズ12から水平方向に投射され、スクリーンや壁面などの被投射媒体の被投射面に照射される。
ユーザは、操作部14などを操作することで、画像データによる投射レンズ12からの投射を行ったまま、回転軸36を中心に、ドラム部10を回転させることができる。例えば、0°姿勢から正方向にドラム部10を回転させて回転角を90°として(90°姿勢)、投射レンズ12からの光を基台20の底面に対して垂直上向きに投射させることができる。図3(c)は、投射角θが90°のときの姿勢、つまり90°姿勢のドラム部10の様子を示す。
ドラム部10は、90°姿勢からさらに正方向に回転させることができる。この場合、投射レンズ12の投射方向は、基台20の底面に対して垂直上向きの方向から、上記第2面側の方向に変化していく。図3(d)は、ドラム部10が図3(c)の90°姿勢からさらに正方向に回転され、投射角θが180°のときの姿勢、つまり180°姿勢となった様子を示す。実施形態に係るプロジェクタ装置1では、この180°姿勢においてフォトインタラプタ51aに突起46bが検出され、後述する回転制御部104により、ドラム30の回転動作の終点に達したと判断される。
本実施形態によるプロジェクタ装置1は、投射姿勢の変化の説明を分かりやすくするために画像の投射を行ったまま、例えば図3(b)〜図3(d)に示されるようにしてドラム部10を回転させることで、投射レンズ12による投射角に応じて、画像データにおける投射領域を変化(移動)させることができる。投射姿勢の変化の詳細は後述する。これにより、投射された画像の内容および当該投射された画像の被投射媒体における投射位置の変化と、入力された画像データに係る全画像領域における投射する画像として切り出された画像領域の内容および位置の変化とを対応させることができる。したがって、ユーザは、入力画像データに係る全画像領域中のどの領域が投射されているかを、投射された画像の被投影媒体における位置に基づき直感的に把握することができると共に、投射された画像の内容を変更する操作を直感的に行うことができる。
また、光学系は、光学ズーム機構を備えており、操作部14に対する操作により、投射画像が被投射媒体に投射される際の大きさを拡大・縮小することができる。なお、以下では、この光学系による投射画像が被投射媒体に投射される際の大きさの拡大・縮小を、単に「ズーム」ということもある。例えば、光学系がズームを行った場合、投射画像は、そのズームが行われた時点の光学系の光軸を中心に拡大・縮小されることになる。
ユーザがプロジェクタ装置1による投射画像の投射を終了し、操作部14に対してプロジェクタ装置1の停止を指示する操作を行いプロジェクタ装置1を停止させると、先ず、ドラム部10が収容状態に戻るように回転制御される。ドラム部10が鉛直方向を向き、収容状態に戻ったことが検出されると、光源が消灯され、光源の冷却に要する所定時間の後、電源がOFFとされる。ドラム部10を鉛直方向に向けてから電源をOFFとすることで、非使用時に投射レンズ12面が汚れるのを防ぐことができる。
<プロジェクタ装置1の機能的構成>
次に、上述したような、本実施の形態に係るプロジェクタ装置1の各機能ないし動作を実現するための構成について説明する。図4は、プロジェクタ装置1の機能的構成を示すブロック図である。
図4に示すように、プロジェクタ装置1は、光学エンジン部110と、回転機構部105と、回転制御部104と、画角制御部106と、画像制御部103と、拡張機能制御部109と、画像メモリ101と、幾何学的歪み補正部100と、入力制御部119と、制御部120と、操作部14とを主に備えている。ここで、光学エンジン部110は、ドラム部10内部に設けられている。また、回転制御部104と、画角制御部106と、画像制御部102と、拡張機能制御部109と、画像メモリ101と、幾何学的歪み補正部100と、入力制御部119と、制御部120とは、回路部として基台20の基板に搭載される。
光学エンジン部110は、光源111、表示素子114および投射レンズ12を含む。光源111は、例えばそれぞれ赤色(R)、緑色(G)および青色(B)を発光する3のLED(Light Emitting Diode)を含む。光源111から射出されたRGB各色の光束は、それぞれ図示されない光学系を介して表示素子114に照射される。
以下の説明において、表示素子114は、透過型液晶表示素子であり、例えば水平1280画素×垂直720画素のサイズを有するものとする。勿論、表示素子114のサイズはこの例に限定されるものではない。表示素子114は、図示されない駆動回路によって駆動され、RGB各色の光束を画像データに従いそれぞれ変調して射出する。表示素子114から射出された、画像データに従い変調されたRGB各色の光束は、図示されない光学系を介して投射レンズ12に入射され、プロジェクタ装置1の外部に投射される。
なお、表示素子114は、例えばLCOS(Liquid Crystal on Silicon)を用いた反射型液晶表示素子、あるいは、DMD(Digital Micromirror Device)で構成してもよい。その場合、適用する表示素子に応じた光学系及び駆動回路でプロジェクタ装置を構成するものとする。
投射レンズ12は、組み合わされた複数のレンズと、制御信号に応じてレンズを駆動するレンズ駆動部とを有する。例えば、レンズ駆動部は、窓部13に設けられた距離センサからの出力信号に基づき測距された結果に従い投射レンズ12に含まれるレンズを駆動して、フォーカス制御を行う。また、レンズ駆動部は、後述する画角制御部106から供給されるズーム命令に従いレンズを駆動して画角を変化させ、光学ズームの制御を行う。
上述したように、光学エンジン部110は、回転機構部105により360°の回動を可能とされたドラム部10内に設けられる。回転機構部105は、図2を用いて説明した駆動部32と、ドラム部10側の構成であるギア35とを含み、モータ40の回転を利用してドラム部10を所定に回転させる。すなわち、この回転機構部105によって、投射レンズ12の投射方向が変更されることになる。
入力制御部119は、操作部14からのユーザ操作入力をイベントとして受け付ける。制御部120は、プロジェクタ装置1の全体の制御を行う。
回転制御部104は、例えば操作部14に対するユーザ操作に応じた命令を入力制御部119を介して受信し、このユーザ操作に応じた命令に従い、回転機構部105に対して指示を出す。回転機構部105は、上述した駆動部32と、フォトインタラプタ51aおよび51bとを含む。回転機構部105は、回転制御部104から供給される指示に従い駆動部32を制御して、ドラム部10(ドラム30)の回転動作を制御する。例えば、回転機構部105は、回転制御部104から供給される指示に従い駆動パルスを生成して、例えばステッピングモータであるモータ40を駆動する。
一方、回転制御部104に対して、回転機構部105から上述したフォトインタラプタ51aおよび51bの出力と、モータ40を駆動する駆動パルスとが供給される。回転制御部104は、例えばカウンタを有し、駆動パルスのパルス数を計数する。回転制御部104は、フォトインタラプタ51bの出力に基づき突起46aの検出タイミングを取得し、カウンタに計数されたパルス数を、この突起46aの検出タイミングでリセットする。回転制御部104は、カウンタに計数されたパルス数に基づき、ドラム部10(ドラム30)の角度を逐次的に求めることができ、ドラム部10の姿勢(すなわち、投射レンズ12の投射角)を取得できる。投射レンズ12の投射角は、幾何学的歪み補正部100に供給される。このようにして、回転制御部104は、投射レンズ12の投射方向が変更された場合に、変更前の投射方向と変更後の投射方向との間の角度を導出することができる。
画角制御部106は、例えば操作部14に対するユーザ操作に応じた命令を入力制御部119を介して受信し、このユーザ操作に応じた命令に従い、投射レンズ12に対してズーム指示、つまり画角の変更指示を出す。投射レンズ12のレンズ駆動部は、このズーム指示に従いレンズを駆動し、ズーム制御を行う。画角制御部106は、ズーム指示、及びそのズーム指示に係るズーム倍率等から導出された画角を幾何学的歪み補正部100に供給する。
画像制御部103は、画像データを入力し、指定された出力解像度で画像メモリ101に保存する。画像制御部103は、図4に示すように、出力解像度制御部1031と、メモリコントローラ1032とを備えている。
出力解像度制御部1031は、幾何学的歪み補正部100から拡張機能制御部109を介して解像度を受信し、受信した解像度を出力解像度としてメモリコントローラ1032に出力する。
メモリコントローラ1032は、静止画像または動画像の1920画素×1080画素の画像データを入力し、入力した1920画素×1080画素の画像データを、出力解像度制御部1031から入力した出力解像度で画像メモリ101に保存する。
画像メモリ101は、画像データを画像単位で格納する。すなわち、画像データが静止画像データの場合は1枚の静止画像毎に、動画像データの場合は当該動画像データを構成するフレーム画像毎に、対応するデータを格納する。画像メモリ101は、例えば、デジタルハイビジョン放送の規格に対応し、1920画素×1080画素のフレーム画像を1または複数枚格納可能とされている。
なお、入力画像データは、予めサイズが画像メモリ101における画像データの格納単位に対応したサイズに整形されて、プロジェクタ装置1に入力されると好ましい。この例では、入力画像データは、予め1920画素×1080画素に画像サイズを整形されてプロジェクタ装置1に入力される。これに限らず、任意のサイズで入力された画像データを1920画素×1080画素のサイズの画像データに整形する画像整形部を、プロジェクタ装置1のメモリコントローラ1032の前段に設けてもよい。
幾何学的歪み補正部100は、幾何学的歪みの水平方向の補正に係る第1補正係数および垂直方向の補正に係る第2補正係数を算出して、切り出し範囲を求め、画像メモリ101に保存されている画像データから切り出し範囲の領域の画像を切り出して、幾何学的歪み補正、画像処理を行って表示素子114に出力する。
幾何学的歪み補正部100は、図4に示すように、補正制御部108と、メモリコントローラ107と、画像処理部102とを備えている。
補正制御部108は、回転制御部104から投射角を入力し、画角制御部106から画角を入力する。そして、補正制御部108は、入力した投射角と画角とに基づいて、投射方向に応じて投射画像に生じ得る幾何学的歪みを解消するための第1補正係数および第2補正係数を算出して、第1補正係数および第2補正係数をメモリコントローラ107に出力する。
また、補正制御部108は、投射角、画角、第1補正係数および第2補正係数に基づいて、幾何学的歪み補正後の画像データのサイズが前記表示デバイスの表示可能サイズを包含するように、入力画像データからの切り出し範囲を決定し、決定した切り出し範囲をメモリコントローラ107と拡張制御部109に出力する。このとき、補正制御部108は、画像データにおける切り出し領域を、投射レンズ12の投射方向の角度に基づき指定する。
メモリコントローラ107は、画像メモリ101に格納された画像データに係るフレーム画像の全領域から、補正制御部108で決定された切り出し範囲の画像領域を切り出して(抽出して)画像データとして出力する。
また、メモリコントローラ107は、画像メモリ101から切り出した画像データに対して第1補正係数および第2補正係数を用いて幾何学的歪み補正を行って、幾何学的歪み補正後の画像データを画像処理部102に出力する。ここで、第1補正係数、第2補正係数、幾何学的歪み補正の詳細については後述する。
メモリコントローラ107から出力された画像データは、画像処理部102に供給される。画像処理部102は、例えば図示されないメモリを用いて、供給された画像データに対して画像処理を施して、1280画素×720画素の画像データとして表示素子114に出力する。例えば、画像処理部102は、メモリコントローラ107から供給された画像データに対して、サイズが表示素子114のサイズに合致するようにサイズ変換処理を施す。それ以外にも画像処理部102では、様々な画像の処理を施すことが出来る。例えば、画像データに対するサイズ変換処理を、一般的な線形変換処理を用いて行うことができる。なお、メモリコントローラ107から供給された画像データのサイズが表示素子114のサイズと合致している場合は、当該画像データをそのまま出力してもよい。
また、画像のアスペクト比を一定にして補間(オーバーサンプリング)することにより所定の特性の補間フィルタをかけて画像の一部または全部を大きくする、折り返し歪みをとるために縮小率に応じたローパスフィルタをかけて間引き(サブサンプリング)することにより画像の一部または全部を小さくする、又はフィルタをかけずにそのままの大きさとすることもできる。
また、画像が斜め方向に投射されたときに、周辺部でフォーカスがずれて画像がぼけてしまうのを防止するために、ラプラシアンなどのオペレータ(もしくは一次元フィルタを水平方向と垂直方向にかけること)によるエッジ強調処理を行うことで投射された前記ぼけた画像部分のエッジを強調することができる。
さらには、画像処理部102は、投射される画像テクスチャーの周辺部が斜め線を含むような場合には、エッジジャギが目立たないように、局所的なハーフトーンを混入したり、局所的なローパスフィルタを施したりして、エッジジャギをぼかすことで、斜め線がギザギザな線として観察されるのを防止することもできる。
画像処理部102から出力された画像データは、表示素子114に供給される。実際には、この画像データは、表示素子114を駆動する駆動回路に供給される。駆動回路は、供給された画像データに従い表示素子114を駆動する。
拡張制御部109は、補正制御部108から切り出し範囲を入力して、切り出し範囲を含有する解像度を出力解像度として出力解像度制御部1031に出力する。
<画像データの切り出し処理>
次に、本実施形態に係る、メモリコントローラ107による、画像メモリ101に格納される画像データの切り出し処理について説明する。図5は、画像メモリ101に格納される画像データの切り出し処理を説明するための概念図である。図5(a)を参照し、画像メモリ101に格納される画像データ140から指定された切り出し領域の画像データ141を切り出す例について説明する。また、以下の図6〜9を用いた説明では、説明を簡易にするため、画像データに対して幾何学的歪み補正が行われない場合であり、また、画像データの水平方向の画素サイズが表示素子114の水平方向画素サイズに一致している場合を前提に説明する。
画像メモリ101は、例えば垂直方向にライン単位、水平方向に画素単位でアドレスが設定され、ラインのアドレスは、画像(画面)の下端から上端に向けて増加し、画素のアドレスは、画像の左端から右端に向けて増加するものとする。
補正制御部108は、メモリコントローラ107に対して、画像メモリ101に格納されるQライン×P画素の画像データ140の切り出し領域として、垂直方向にラインq0およびラインq1をアドレス指定し、水平方向に画素p0およびp1をアドレス指定する。メモリコントローラ107は、このアドレス指定に従い、画像メモリ101から、ラインq0〜q1の範囲内の各ラインを、画素p0〜p1にわたって読み出す。このとき、読み出し順は、例えば各ラインは画像の上端から下端に向けて読み出され、各画素は画像の左端から右端に向けて読み出されるものとする。画像メモリ101に対するアクセス制御の詳細については、後述する。
メモリコントローラ107は、画像メモリ101から読み出した、ラインq0〜q1、ならびに、画素p0〜p1の範囲の画像データ141を画像処理部102に供給する。画像処理部102では、供給された画像データ141による画像のサイズを表示素子114のサイズに合わせる、サイズ変換処理を行う。一例として、表示素子114のサイズがRライン×S画素である場合、下記の式(1)および式(2)を共に満たす、最大の倍率mを求める。そして、画像処理部102は、画像データ141をこの倍率mで拡大し、図5(b)に例示されるように、サイズ変換された画像データ141’を得る。
m×(p1−p0)≦S …(1)
m×(q1−q0)≦R …(2)
次に、本実施形態による、投射角に応じた切り出し領域の指定(更新)について説明する。図6は、ドラム部10が0°姿勢、すなわち、投射角0°の初期状態の場合の切り出し領域指定の例を示す。
なお、上述した図5では、画像メモリ101に格納されるQライン×P画素の画像データ140の1ラインの画素の中で一部範囲の画素p0〜p1の範囲の画像データ141を切り出す場合を例にあげて説明した。以下に示す図6から図8の例でも、実際には、画像メモリ101に格納される画像データ140の1ラインのうち一部の範囲の画素を切り出すことができる。しかしながら、投射角に応じた切り出し領域の指定(更新)の説明を簡単にするため、以下に示す図6から図8の例では、1ラインの全部の画素を切り出すものとして説明する。
プロジェクタ装置(PJ)1において、画角αの投射レンズ12で、スクリーンなどの被投射媒体である投射面130に対して、投射角0°で画像1310を投射した場合の投射位置を、投射レンズ12から投射される光の光束中心に対応する位置Pos0とする。また、投射角0°では、画像メモリ101に格納される画像データの、投射角0°の姿勢で投射を行うように予め指定された領域の下端のラインSから、ラインLまでの画像データによる画像が投射されるものとする。ラインSからラインLの領域には、ライン数lnのラインが含まれるものとする。
なお、ライン数lnは、表示素子114の最大の有効領域のライン数である。また、画角αは、表示素子114において表示が有効とされている垂直方向の有効領域が最大値を取るときに画像を投射した場合、すなわち、ライン数lnの画像を投射した場合の、投射画像を投射レンズ12から垂直方向に見込む角である。
画角αおよび表示素子114の有効領域について、より具体的な例を用いて説明する。表示素子114は、垂直方向のサイズが720ラインであるとする。例えば、投射画像データの垂直方向のサイズが720ラインであり、表示素子114の全てのラインを用いて投射画像データの投射を行う場合、表示素子114の垂直方向の有効領域が最大値の720ライン(=ライン数ln)となる。画角αは、この場合に投射レンズ12から投射画像の1〜720ラインを見込む角となる。
また、投射画像データの垂直方向のサイズが600ラインであり、表示素子114の720ライン(=ライン数ln)のうち600ラインのみを用いて投射画像データの投射を行う場合も考えられる。このとき、表示素子114の垂直方向の有効領域が600ラインとなる。この場合は、画角αの、有効領域の最大値に対する投射画像データによる有効領域の部分のみが投射される。
補正制御部108は、メモリコントローラ107に対して、画像メモリ101に格納される画像データ140のラインSからラインLまでを切り出して読み出すように指示する。なお、ここでは、水平方向には、画像データ140の左端から右端までを全て読み出すものとする。メモリコントローラ107は、補正制御部108の指示に従い、画像データ140のラインS〜Lの領域を切り出し領域に設定し、設定された切り出し領域の画像データ141を読み出して画像処理部102に供給する。図6の例では、投射面130には、画像データ140のラインSからラインLまでの、ライン数lnの画像データ1410による画像1310が投射される。この場合、画像データ140の全領域のうち、ラインLから上端のラインまでに係る領域の画像データ142による画像は、投射されないことになる。
次に、例えば操作部14に対するユーザ操作によりドラム部10が回転され、投射レンズ12の投射角が角度θとなった場合について説明する。本実施形態では、ドラム部10が回転され投射レンズ12による投射角が変化した場合に、投射角θに応じて画像データ140の画像メモリ101からの切り出し領域が変更される。
投射角θに対する切り出し領域の設定について、図7を用いてより具体的に説明する。例えばドラム部10を、投射レンズ12による投射位置が0°姿勢から正方向に回転させ、投射レンズ12の投射角が角度θ(>0°)になった場合について考える。この場合、投射面130に対する投射位置が、投射角0°の投射位置Pos0に対して上方の投射位置Pos1に移動する。このとき、補正制御部108は、メモリコントローラ107に対して、画像メモリ101に格納される画像データ140に対する切り出し領域を、次の式(3)および式(4)に従い指定する。式(3)は、切り出し領域の下端のラインRSを示し、式(4)は、切り出し領域の上端のラインRLを示す。
RS=θ×(ln/α)+S …(3)
RL=θ×(ln/α)+S+ln …(4)
なお、式(3)および式(4)において、値lnは、投射領域内に含まれるライン数(例えば表示素子114のライン数)を示す。また、値αは投射レンズ12の画角、値Sは、図6を用いて説明した、0°姿勢における切り出し領域の下端のラインをそれぞれ示す。
式(3)および式(4)において、(ln/α)は、画角αがライン数lnを投射する場合の、単位画角当たりのライン数(投射面の形状によって変化する略平均化されたライン数の概念を含む)を示す。したがって、θ×(ln/α)は、プロジェクタ装置1における、投射レンズ12による投射角θに対応するライン数を表す。これは、投射角が角度Δθだけ変化するとき、投射画像の位置が、投射画像におけるライン数{Δθ×(ln/α)}分の距離だけ移動することを意味する。したがって、式(3)および式(4)は、投射角が角度θの場合の投射画像の、画像データ140における下端および上端のライン位置をそれぞれ示す。これは、投射角θにおけるメモリ101上の画像データ140に対する読み出しアドレスに対応する。
このように、本実施形態においては、画像メモリ101から画像データ140を読み出す際のアドレスが、投射角θに応じて指定される。これにより、画像メモリ101から、画像データ140の、投射角θに応じた位置の画像データ1411が読み出され、読み出された画像データ1411に係る画像1311が、投射面130の投射角θに対応する投射位置Pos1に投射される。
そのため、本実施形態によれば、表示素子114のサイズよりも大きいサイズの画像データ140を投射する場合に、投射される画像内の位置と、画像データ内の位置との対応関係が保たれる。また、ドラム30を回転駆動するためのモータ40の駆動パルスに基づき投射角θを求めているため、ドラム部10の回転に対して略遅延の無い状態で投射角θを得ることができると共に、投射画像や周囲の環境に影響されずに投射角θを得ることが可能である。
次に、投射レンズ12による光学ズームを行った場合の切り出し領域の設定について説明する。既に説明したように、プロジェクタ装置1の場合、レンズ駆動部が駆動され投射レンズ12の画角αが増加または減少されることで、光学ズームが行われる。光学ズームによる画角の増加分を角度Δとし、光学ズーム後の投射レンズ12の画角を画角(α+Δ)とする。
この場合、光学ズームにより画角が増加しても、画像メモリ101に対する切り出し領域は変化しない。換言すれば、光学ズーム前の画角αによる投射画像に含まれるライン数と、光学ズーム後の画角(α+Δ)による投射画像に含まれるライン数は、同一である。したがって、光学ズーム後は、光学ズーム前に対して単位角度当たりに含まれるライン数が変化することになる。
光学ズームを行った場合の切り出し領域の指定について、図8を用いてより具体的に説明する。図8の例では、投射角θの状態で、画角αに対して画角Δ分を増加させる光学ズームを行っている。光学ズームを行うことで、投射面130に投射される投射画像は、例えば投射レンズ12に投射される光の光束中心(投射位置Pos2)を共通として、画像1312として示されるように、光学ズームを行わない場合に対して画角Δ分拡大される。
画角Δ分の光学ズームを行った場合、画像データ140に対して切り出し領域として指定されるライン数をlnラインとすると、単位角度当たりに含まれるライン数は、{ln/(α+Δ)}で表される。したがって、画像データ140に対する切り出し領域は、次の式(5)および式(6)により指定される。なお、式(5)および式(6)における各変数の意味は、上述の式(3)および式(4)と共通である。
RS=θ×{ln/(α+Δ)}+S …(5)
RL=θ×{ln/(α+Δ)}+S+ln …(6)
画像データ140から、この式(5)および式(6)に示される領域の画像データ1412が読み出され、読み出された画像データ1412に係る画像1312が、投射レンズ12により、投射面130の投射位置Pos2に対して投射される。
このように、光学ズームを行った場合には、単位角度当たりに含まれるライン数が光学ズームを行わない場合に対して変化し、投射角θの変化に対するラインの変化量が、光学ズームを行わない場合に比べて異なったものとなる。これは、画像メモリ101に対する投射角θに応じた読み出しアドレスの指定において、光学ズームにより増加した画角Δ分のゲインが変更された状態である。
本実施形態においては、画像メモリ101から画像データ140を読み出す際のアドレスは、投射角θと投射レンズ12の画角αに応じて指定される。これにより、光学ズームを行った場合であっても、投射すべき画像データ1412のアドレスを、画像メモリ101に対して適切に指定することができる。したがって、光学ズームを行った場合であっても、表示素子114のサイズよりも大きいサイズの画像データ140を投射する場合に、投射される画像内の位置と、画像データ内の位置との対応関係が保たれる。
次に、画像の投射位置に対してオフセットが与えられた場合について、図9を用いて説明する。プロジェクタ装置1の使用に際して、必ずしも0°姿勢(投射角0°)が投射位置の最下端になるとは限らない。例えば図9に例示されるように、所定の投射角θofstによる投射位置Pos3を、最下端の投射位置にする場合も考えられる。この場合、画像データ1413による画像1313は、オフセットが与えられない場合に比べて、投射角θofstに対応する高さだけ上にずれた位置に投射されることになる。この、画像データ140の最下端のラインを最下端とする画像を投射する際の投射角θを、オフセットによるオフセット角θofstとする。
この場合、例えば、このオフセット角θofstを投射角0°と見做して、画像メモリ101に対する切り出し領域を指定することが考えられる。上述した式(3)および式(4)に当て嵌めると、下記の式(7)および式(8)のようになる。なお、式(7)および式(8)における各変数の意味は、上述の式(3)および式(4)と共通である。
RS=(θ−θofst)×(ln/α)+S …(7)
RL=(θ−θofst)×(ln/α)+S+ln …(8)
<メモリ制御について>
次に、図10〜図13を用いて、画像メモリ101のアクセス制御について説明する。ここで、以下の図10〜13を用いた説明でも、説明を簡易にするため、画像データに対して幾何学的歪み補正が行われない場合を前提に説明する。
画像データは、垂直同期信号VD毎に、画面上水平方向に各ライン毎に画像の左端から右端に向けて各画素が順次伝送され、各ラインは、画像の上端から下端に向けて順次伝送される。なお、以下では、画像データは、デジタルハイビジョン規格に対応した、水平1920画素×垂直1080画素(ライン)のサイズをもつ場合を例として説明する。
以下では、画像メモリ101が、それぞれ独立してアクセス制御が可能な、4つのメモリ領域を含む場合のアクセス制御の例について説明する。すなわち、図10に示されるように、画像メモリ101は、それぞれ水平1920画素×垂直1080画素(ライン)のサイズで画像データの書き込み読み出しに用いられるメモリ101Y1および101Y2の各領域と、それぞれ水平1080画素×垂直画素1920(ライン)のサイズで画像データの書き込み読み出しに用いられるメモリ101T1および101T2の各領域がそれぞれ設けられている。以下、各メモリ101Y1、101Y2、101T1および101T2を、それぞれメモリY1、メモリY2、メモリT1およびメモリT2として説明する。
図11は、メモリコントローラ107による画像メモリ101に対するアクセス制御を説明するためのタイムチャートの一例である。図11(a)は、投射レンズ12の投射角θ、図11(b)は、垂直同期信号VDを示す。また、図11(c)は、メモリコントローラ107に入力される画像データD1、D2、…の入力タイミング、図11(d)〜図11(g)は、それぞれメモリY1、Y2、T1およびT2に対するメモリコントローラ107からのアクセスの例を示す。なお、図11(d)〜図11(g)において、「R」が付されているブロックは、読み出しを示し、「W」が付されているブロックは、書き込みを示す。
メモリコントローラ107に対して、垂直同期信号VD毎に、それぞれ1920画素×1080ラインの画像サイズを持つ画像データD1、D2、D3、D4、D5、D6、…が入力される。各画像データD1、D2、…は、垂直同期信号VDに同期して、垂直同期信号VDの後から入力される。また、各垂直同期信号VDに対応する投射レンズ12の投射角を、それぞれ投射角θ1、θ2、θ3、θ4、θ5、θ6、…とする。投射角θは、このように垂直同期信号VD毎に取得される。
先ず、メモリコントローラ107に対して、画像データD1が入力される。本実施形態によるプロジェクタ装置1は、上述したように、ドラム部10を回転させることで投射レンズ12による投射角θを変化させて投射画像の投射位置を移動させると共に、投射角θに応じて画像データに対する読み出し位置を指定する。そのため、画像データは、垂直方向により長いと都合がよい。一般的には、画像データは、水平方向のサイズが垂直方向のサイズよりも大きいことが多い。そこで例えば、ユーザがカメラを90°回転させて撮像を行い、この撮像で得られた画像データをプロジェクタ装置1に入力することが考えられる。
すなわち、メモリコントローラ107に入力される画像データD1、D2、…による画像は、図12(a)にイメージとして示される画像160のように、画像の内容から判断して正しい向きの画像から90°回転された、横向きの画像とされている。
メモリコントローラ107は、入力された画像データD1を、先ず、メモリY1に対して、画像データD1の入力タイミングに対応したタイミングWD1で書き込む(図11(d)のタイミングWD1)。メモリコントローラ107は、画像データD1を、図12(b)の左側に示されるように、水平方向に向けてライン順にメモリY1に対して書き込む。図12(b)の右側に、こうしてメモリY1に書き込まれた画像データD1による画像161をイメージとして示す。画像データD1は、入力時の画像160と同じイメージの画像161として、メモリY1に書き込まれる。
メモリコントローラ107は、図12(c)に示されるように、メモリY1に書き込んだ画像データD1を、当該画像データD1を書き込んだ垂直同期信号VDの次の垂直同期信号VDの開始と同時のタイミングRD1で、メモリY1から読み出す(図11(d)のタイミングRD1)。
このとき、メモリコントローラ107は、画像データD1を、画像の左下隅の画素を読み出し開始画素として、垂直方向に順次ラインを跨いで画素毎に読み出していく。画像の上端の画素を読み出すと、次は、垂直方向の読み出し開始位置の画素の右隣の画素を読み出し開始画素として、垂直方向に各画素を読み出す。この動作を、画像の右上隅の画素の読み出しが終了するまで、繰り返す。
換言すれば、メモリコントローラ107は、ライン方向を画像の下端から上端に向けた垂直方向として、メモリY1からの画像データD1の読み出しを、当該垂直方向のライン毎に、画像の左端から右端に向けて画素毎に順次読み出す。
メモリコントローラ107は、このようにしてメモリY1から読み出した画像データD1の画素を、図13(a)の左側に示されるように、メモリT1に対して、ライン方向に向けて画素毎に順次書き込んでいく(図11(e)のタイミングWD1)。すなわち、メモリコントローラ107は、メモリY1から例えば1画素を読み出す毎に、読み出したこの1画素をメモリT1に書き込む。
図13(a)の右側は、こうしてメモリT1に書き込まれた画像データD1による画像162のイメージを示す。画像データD1は、水平1080画素×垂直画素1920(ライン)のサイズとしてメモリT1に書き込まれ、入力時の画像160が時計回りに90°回転されて水平方向と垂直方向とが入れ替えられた画像162とされる。
メモリコントローラ107は、メモリT1に対して補正制御部108に指定された切り出し領域のアドレス指定を行い、当該切り出し領域として指定された領域の画像データをメモリT1から読み出す。この読み出しのタイミングは、図11(e)にタイミングRD1として示されるように、画像データD1がメモリコントローラ107に入力されたタイミングに対して、2垂直同期信号VDの分だけ遅延することになる。
本実施形態によるプロジェクタ装置1は、上述したように、ドラム部10を回転させることで投射レンズ12による投射角θを変化させて投射画像の投射位置を移動させると共に、投射角θに応じて画像データに対する読み出し位置を指定する。例えば、画像データD1が、投射角θ1のタイミングでメモリコントローラ107に入力される。この画像データD1による画像を実際に投射するタイミングにおける投射角θは、投射角θ1から、投射角θ1と異なる投射角θ3に変化していることが有り得る。
そのため、メモリT1から画像データD1を読み出す際の切り出し領域は、この投射角θの変化分を見込んで、投射される画像に対応する画像データの領域よりも大きい範囲で読み出すようにする。
図13(b)を用いてより具体的に説明する。図13(b)の左側は、メモリT1に格納される画像データD1による画像163のイメージを示す。この画像163において、実際に投射される領域を投射領域163aとし、他の領域163bは、非投射領域であるとする。この場合、補正制御部108は、メモリT1に対して、投射領域163の画像に対応する画像データの領域よりも、少なくとも、2垂直同期信号VDの期間で投射レンズ12による投射角θが最大に変化した場合の変化分に相当するライン数分大きい切り出し領域170を指定する。
メモリコントローラ107は、画像データD1をメモリT1に書き込んだ垂直同期信号VDの次の垂直同期信号VDのタイミングで、この切り出し領域170からの画像データの読み出しを行う。こうして、投射角θ3のタイミングで、投射を行う画像データがメモリT1から読み出され、後段の画像処理部102を経て表示素子114に供給され、投射レンズ12から投射される。
メモリコントローラ107に対し、画像データD1が入力された垂直同期信号VDの次の垂直同期信号VDのタイミングで、画像データD2が入力される。このタイミングでは、メモリY1は画像データD1が書き込まれている。そのため、メモリコントローラ107は、画像データD2をメモリY2に書き込む(図11(f)のタイミングWD2)。このときの、画像データD2のメモリY2への書き込み順は、上述の画像データD1のメモリY1への書き込み順と同様であり、イメージも同様である(図12(b)参照)。
すなわち、メモリコントローラ107は、画像データD2を、画像の左下隅の画素を読み出し開始画素として、垂直方向に順次ラインを跨いで画素毎に画像の上端の画素まで読み出し、次に垂直方向の読み出し開始位置の画素の右隣の画素を読み出し開始画素として、垂直方向に各画素を読み出す(図11(f)のタイミングRD2)。この動作を、画像の右上隅の画素の読み出しが終了するまで、繰り返す。メモリコントローラ107は、このようにしてメモリY2から読み出した画像データD2の画素を、メモリT2に対して、ライン方向に向けて画素毎に順次書き込んで(図11(g)のタイミングWD2)いく(図13(a)左側参照)。
メモリコントローラ107は、メモリT2に対して補正制御部108に指定された切り出し領域のアドレス指定を行い、当該切り出し領域としてされた領域の画像データを、図11(g)のタイミングRD2でメモリT2から読み出す。このとき、上述したように、補正制御部108は、メモリT2に対して、投射角θの変化分を見込んだ、投射される画像に対応する画像データの領域よりも大きい領域を切り出し領域170として指定する。
メモリコントローラ107は、画像データD2をメモリT2に書き込んだ垂直同期信号VDの次の垂直同期信号VDのタイミングで、この切り出し領域170からの画像データの読み出しを行う。こうして、投射角θ2のタイミングでメモリコントローラ107に入力された画像データD2における切り出し領域170の画像データが、投射角θ4のタイミングでメモリT2から読み出され、後段の画像処理部102を経て表示素子114に供給され、投射レンズ12から投射される。
以降、同様にして、画像データD3、D4、D5、…に対して、メモリY1およびT1の組と、メモリY2およびT2の組とを交互に用いて順次処理していく。
上述のように、本実施形態では、画像メモリ101に対して、水平1920画素×垂直1080画素(ライン)のサイズで画像データの書き込み読み出しに用いられるメモリY1、Y2の領域と、水平1080画素×垂直画素1920(ライン)のサイズで画像データの書き込み読み出しに用いられるメモリT1、T2の領域とをそれぞれ設けている。これは、一般に、画像メモリに用いられるDRAM(Dynamic Random Access Memory)は、水平方向のアクセスに対して、垂直方向のアクセスの方がアクセス速度が遅いためである。他の、水平方向と垂直方向とで同等のアクセス速度を得られる、ランダムアクセス容易なメモリを用いる場合、画像データに応じた容量のメモリを2面用いる構成としてもよい。
<幾何学的歪み補正>
次に、本実施の形態のプロジェクタ装置1による画像データに対する幾何学的歪み補正について説明する。
図14および図15は、プロジェクタ装置1の投影レンズ12のスクリーン1401に対する投射方向と被投射面であるスクリーン1401上に投射される投射画像の関係を示す図である。図14に示すように、投射角が0°で、投影レンズ12の光軸がスクリーン1401に対して垂直になっている場合には、投射画像1402は、プロジェクタ装置1から投射される画像データの形状と同一の矩形状となり、投射画像1402に歪みは生じない。
しかし、図15に示すように、スクリーン1401に対して傾斜させて画像データを投射する場合には、矩形状となるべき投射画像1502が台形状に歪むという、いわゆる台形歪みが発生する。
このため、従来は、投射対象の画像データに対して、スクリーン等の被投射面上の投射画像に生じる台形歪みと逆向きの台形状に変換する台形歪み補正(キーストン補正)等の幾何学的歪み補正を行うことにより、図16に示すように、被投射面上に歪みのない矩形状の投射画像を非投射面上に表示している。
しかしながら、図16に示すように、従来の台形歪み補正(キーストン補正)では、補正が行われた投射画像1601の周囲の領域1602、すなわち補正しなかった場合の投射画像の領域1603と補正後の投射画像の領域1601の差分の領域1602の表示を行わないようにするため、表示デバイス上に黒に相当する画像データを入力するか、表示デバイスを駆動しない制御をしている。従って、表示デバイスの画素領域が有効に利用されず、実際の投影領域の明るさが低下する原因ともなってしまう。
近年では、高解像度のデジタルカメラ等の普及により、映像コンテンツの解像度が向上して、表示デバイスの解像度を上回る場合がある。例えば、解像度が1280画素×720画素の表示デバイスに対して、入力画像として、1920画素×1080画素のフルHDまでサポートしているプロジェクタ装置では、表示デバイスの前段で入力画像をスケーリングして、入力画像の全体を表示デバイスに表示可能とするために解像度のマッチングを図っている。
一方、このようなスケーリングを行わず、図17に示すように、入力画像データの一部の領域の画像を切り出して表示デバイスに表示することも行われる。このような場合にも、投影レンズを傾けると、投射画像に台形歪みが生じるため、台形歪み補正(キーストン補正)を行うと、図18に示すように補正しなかった場合の投射画像の領域と補正後の投射画像の領域の差分の領域の表示を行わないようにするため、表示デバイス上に黒に相当する画像データを入力するか、表示デバイスを駆動しない制御をしている。従って、表示デバイスの画素領域が有効に利用されていない状態になる。但し、この場合は、図17で示したように、出力されている投射画像は入力画像データの一部である。
このため、本実施の形態のプロジェクタ装置1には、図19に示すような、入力された画像データから本来切り出されて残った未使用の領域の画像を、上述の補正後の画像データの周囲の領域1602に使用して、例えば、図20に示すように入力された画像データを全て切り出し、投射画像の垂直方向の中心を幾何学的歪み補正を行わない投射画像と合致するよう投射画像を表示して、周囲の領域1602で欠如していた情報量を補填する。これにより、本実施の形態では、未使用の領域の画像を効果的に活用することで、表示可能領域の有効利用を実現している。図20と図18(b)を比較すると、図20における周囲の領域の面積が減少し、より多くの情報量を表現する(有効利用する)ことができていることがわかる。以下、このような幾何学的歪み補正の詳細を、先ず幾何学的歪み補正を行うための補正係数の算出について、次に情報量を補填する方法について説明する。
幾何学的歪み補正部100の補正制御部108は、上述したとおり、投射角と画角とに基づいて、第1補正係数と第2補正係数を算出する。ここで、第1補正係数は、画像データの水平方向の補正を、第2補正係数は、画像データの垂直方向の補正を行うための補正係数である。補正制御部108は、切り出し範囲の画像データ(切り出し画像データ)を構成するライン毎に第2補正係数を算出する構成としてもよい。
また、補正制御部108は、切り出し範囲の画像データの上辺から下辺の各ラインに対して、第1補正係数から、ライン毎の線形的な縮小率を算出する。
投射角と補正係数との関係、及び投射角に応じて算出される補正係数と台形歪みに対する補正量の詳細について説明する。図21は、実施の形態1における被投射面の主要な投射方向と投射角θとを示す図である。
ここで、投射角θは、投射レンズ12から出射される投射光の光軸の水平方向に対する傾斜角度である。以下では、投射光の光軸が水平方向となる場合を0°として、投射レンズ12を含むドラム部10を上側に回動させる場合、すなわち仰角側をプラス、ドラム部10を下側に回動させる場合、すなわち俯角側をマイナスとする。このとき、投射レンズ12の光軸が真下の床面を向いた収容状態が投射角−90°、投射方向が壁面正面を向いた水平状態が投射角0°、天井の真上を向いた状態が投射角+90°となる。
投射方向cは、隣接する2つの被投射面である壁面と天井との境界の方向である。投射方向eは、壁面の投射画像において、投射画像の移動方向である上下方向と垂直な方向の一対の辺のうちの第1辺に相当する上辺が境界とほぼ一致する場合における投射レンズ12の投射方向である。
投射方向fは、天井の投射画像の上記一対の辺のうち第2辺に相当する下辺が境界とほぼ一致する場合における投射レンズ12の投射方向である。投射方向gは、プロジェクタ装置1の真上の天井の方向であり、投射レンズ12の光軸と天井が直角となっている状態である。このときの投射角は90°となる。
図21の例では、投射方向aのときの投射角は0°、投射方向eのときの投射角は35°、投射方向cのときの投射角は42°、投射方向fのときの投射角は49°となっている。
投射方向wは、投射レンズが真下(−90°)に向いた状態から投射レンズを回動させてプロジェクタ装置1による投射を開始する方向であり、この時の投射角は−45°である。投射方向xは、床面の投射画像において、投射画像の移動方向と垂直な方向の一対の辺のうちの第1辺に相当する上辺が、床面と壁面の境界とほぼ一致する場合における投射レンズの投射方向である。このときの投射角を第2境界開始角度と呼び、第2境界開始角度は−19°となっている。
投射方向yは、隣接ずる2つの被投射面である床面と壁面の境界の方向である。このときの投射角を第2境界角度と呼び、第2境界角度は−12°となっている。
投射方向zは、壁面の投射画像の上記一対の辺のうち第2辺に相当する下辺が床面と壁面の境界とほぼ一致する場合における投射レンズの投射方向である。このときの投射角を第2境界終了角度と呼び、第2境界終了角度は−4°となっている。
以下、幾何学的歪み補正(台形歪み補正を例とする)の一例について説明する。図22は、実施の形態1における投射角と補正係数の関係を示すグラフである。図22において、横軸は投射角θであり、縦軸は第1補正係数である。第1補正係数は、プラスの値とマイナスの値をとり、第1補正係数がプラスの場合には、画像データの台形の上辺の長さを圧縮する補正方向を示し、第1補正係数がマイナスの場合には、画像データの台形の下辺の長さを圧縮する補正方向を示す。また、上述したとおり、第1補正係数が1および−1の場合には、台形歪みに対する補正量はゼロとなり、台形歪み補正は完全に解除されている。
また、図22には、図21で示した投射方向w,x,y,z,a,e,c,f,gをそれぞれの投射角に対応させて示している。図22に示すように、投射方向wにおける投射角(−45°)から投射方向yにおける投射角(−12°)までの範囲では、投射レンズは床面を投射することになる。
また、図22に示すように、投射方向yにおける投射角(−12°)から投射方向aにおける投射角(0°)までの範囲では、投射レンズは壁面を下向きで投射することになる。また、図22に示すように、投射方向aにおける投射角(0°)から投射方向cにおける投射角(42°)までの範囲では、投射レンズは壁面を上向きで投射することになる。
また、図22に示すように、投射方向cにおける投射角(42°)から投射方向gにおける投射角(90°)までの範囲では、投射レンズは天井を投射することになる。
補正制御部108は、図22において実線で示す各投射角θに応じた補正係数に基づいて、台形歪み補正量を算出し、算出された補正量に基づいて画像データに対して台形歪み補正を行う。すなわち、補正制御部108は、回転制御部104から出力される投射角に対応する第1補正係数を算出する。また、補正制御部108は、投射角に基づいて、投射レンズ12の投射方向は、壁面上向きの投射方向、天井面への投射方向、壁面下向きの投射方向、および床面への投射方向のいずれの投射方向であるかを判定し、その投射方向に応じて画像データに対する台形歪み補正の補正方向を導出する。
ここで、図22に示すように、投射方向wのときの投射角(−45°)から投射方向xのときの投射角である第2境界開始角度(−19°)までの間、および投射方向aのときの投射角(0°)から投射方向eのときの投射角である第1境界開始角度(35°)までの間は、補正係数はプラスでかつ徐々に減少しており、台形歪みに対する補正量が徐々に大きくなっている。なお、この間の補正係数ないし補正量は、被投射面に投射される投射画像の形状を矩形に維持するためのものである。
一方、図22に示すように、投射方向xのときの投射角である第2境界開始角度(−19°)から投射方向yのときの投射角である第2境界角度(−12°)までの間、および投射方向eの投射角である第1境界開始角度(35°)から投射方向cのときの投射角である第1境界角度(42°)までの間は、補正係数はプラスでかつ徐々に「1」との差が小さくなるように増加しており、台形歪みの補正の度合いを弱くする方向(台形歪みの補正を解除する方向)となっている。本実施の形態に係るプロジェクタ1では、上述した通り補正係数はプラスでかつ徐々増加し、台形歪みに対する補正量が徐々に小さくなっていく。なお、この増加は線形的に漸増するものでなくとも、この間で連続して漸増するものであれば指数関数的ないし幾何級数的なものであってもよい。
また、図22に示すように、投射方向yのときの投射角である第2境界角度(−12°)から投射方向zのときの投射角である第2境界終了角度(−4°)までの間、および投射方向cのときの投射角である第1境界角度(42°)から投射方向fのときの投射角である第1境界終了角度(49°)までの間は、補正係数はマイナスでかつ徐々に増加しており、台形歪みに対する補正量が徐々に大きくなっている。本実施の形態に係るプロジェクタ1では、上述した通り補正係数はマイナスでかつ徐々増加し、台形歪みに対する補正量が徐々に大きくなっていく。なお、この増加は線形的に漸増するものでなくとも、この間で連続して漸増するものであれば指数関数的ないし幾何級数的なものであってもよい。
一方、図22に示すように、投射方向zのときの投射角である第2境界終了角度(−4°)から投射方向aのときの投射角(0°)までの間、および投射方向fの投射角である第1境界終了角度(49°)から投射方向gのときの投射角(90°)までの間は、補正係数はマイナスでかつ徐々に減少しており、台形歪み補正量が徐々に小さくなっている。なお、この間の補正係数ないし補正量は、被投射面に投射される投射画像の形状を矩形に維持するためのものである。
ここで、補正係数の算出手法について説明する。図23は、第1補正係数の算出を説明するための図である。第1補正係数は、被投射媒体に投射され表示される投射画像の上辺と下辺の比の逆数であり、図23におけるd/eに等しい。従って、台形歪み補正においては、画像データの上辺または下辺をd/e倍に縮小することになる。
ここで、図23に示すように、プロジェクタ装置1から被投射媒体に投射され表示される投射画像の下辺までの投射距離a、プロジェクタ装置1から投射画像の上辺までの距離bとの比をa/bで表すと、d/eは次の式(9)で表される。
そして、図23において、θを投射角、βを画角αの1/2の角度、nをプロジェクタ装置1から壁面までの水平方向の投射距離とすると、次の式(10)が成立する。ただし、0°≦θ<90°、7.83°≦β≦11.52°とする。
この式(10)を変形すると、式(11)が得られる。従って、式(11)から、補正係数は、画角αの1/2の角度βと投射角θとから定められることになる。
この式(11)から、投射角θが0°、すなわち壁面に水平方向に投射画像を投射する場合には、第1補正係数が1となり、この場合、台形歪み補正量はゼロとなる。
また、式(11)から、第1補正係数は、投射角θが増加するに従って小さくなり、この第1補正係数の値に応じて台形歪み補正量大きくなるため、投射角θが増加するに従って顕著になる投射画像の台形歪みを適切に補正することができる。
なお、投射画像を天井に投影する場合は、台形歪み補正の補正方向が入れ替わるので、補正係数はb/aとなる。そして、上述したとおり、補正係数の符号もマイナスとなる。
本実施の形態では、補正制御部108は、投射角が、上述した、投射方向wのときの投射角(−45°)から投射方向xのときの投射角である第2境界開始角度(−19°)までの間、投射方向aのときの投射角(0°)から投射方向eのときの投射角である第1境界開始角度(35°)までの間、投射方向zのときの投射角である第2境界終了角度(−4°)から投射方向aのときの投射角(0°)までの間、および投射方向fの投射角である第1境界終了角度(49°)から投射方向gのときの投射角(90°)までの間は、補正係数を(11)式により算出している。
一方、補正制御部108は、投射角が、投射方向xのときの投射角である第2境界開始角度(−19°)から投射方向yのときの投射角である第2境界角度(−12°)までの間、および投射方向eの投射角である第1境界開始角度(35°)から投射方向cのときの投射角である第1境界角度(42°)までの間は、(11)式に従わず、補正度合いを解除する方向に補正係数を算出する。
また、補正制御部108は、投射角が、投射方向yのときの投射角である第2境界角度(−12°)から投射方向zのときの投射角である第2境界終了角度(−4°)までの間、および投射方向cのときの投射角である第1境界角度(42°)から投射方向fのときの投射角である第1境界終了角度(49°)までの間も、(11)式に従わず、補正度合いを強くする方向に補正係数を算出する。
なお、このような第1補正係数の算出に限定されるものではなく、すべての投射角θに対して(11)式で第1補正係数を算出するように補正制御部108を構成してもよい。
補正制御部108は、画像データの上辺のラインの長さHactに(11)式で示す補正係数k(θ,β)を乗算して、次の(12)式で補正後の上辺のラインの長さHact(θ)を算出して補正する。
補正制御部108は、画像データの上辺の長さの他、上辺のラインから下辺のラインまでの範囲の各ラインの長さの縮小率も算出する。図24は、上辺から下辺までのラインの長さの算出を説明するための図である。
図24に示すように、補正制御部108は、画像データの上辺から下辺までの各ラインの長さhact(y)を、線形となるように次の(13)式により算出して補正する。ここで、Vactは画像データの高さ、すなわちライン数であり、(13)式は、上辺からのyの位置でのラインの長さhact(y)の算出式である。(13)式において、{}の部分がライン毎の縮小率であり、(13)式に示すように、縮小率も、投射角、画角に依存して求められる。
第1補正係数の別の算出方法について説明する。第1補正係数は、投射角0°の投射画像の辺の長さと投射角θの投射画像の辺の長さの比から算出しても良い。この場合、画像データの上辺から下辺までの各ラインの長さhact(y)は、(14)式で表すことができる。
この算出方法を用いた第1補正係数による台形歪み補正では、投射角θに関わらず常に投射角0°の投射画像と同じ大きさの画像を投射することができる。
図25、26は、第2補正係数の算出について説明するための図である。上述した式(3)および式(4)による切り出し領域の指定方法は、投射レンズ12による投射を行う投射面130が、ドラム部10の回転軸36を中心とした円筒であると仮定した、円筒モデルに基づくものである。しかしながら、実際には、投射面130は、投射角θ=0°に対して90°の角をなす垂直な面(以下、単に「垂直な面」と呼ぶ)であることが多いと考えられる。画像データ140から同一のライン数の画像データを切り出して垂直な面に投射した場合、投射角θが大きくなるに連れ、垂直な面に投射される画像が縦方向に伸びることになる。そこで,補正制御部108は、以下のように、第2補正係数を算出し、メモリコントローラ107でこの第2補正係数を用いて、画像データに台形歪み補正を行う。
図25において、位置Bをドラム部10の回転軸36の位置として、位置Bから距離rだけ離れた投射面Wに、投射レンズ12から画像を投射する場合について考える。
上述の円筒モデルでは、位置Bを中心とする半径rの弧Cを投射面として投射画像が投射される。弧Cの各点は、位置Bから等距離であり、投射レンズ12から投射される光の光束中心は、弧Cを含む円の半径となる。したがって、投射角θを0°のθ0からθ1、θ2、…と増加させても、投射画像は常に同じサイズで投射面に対して投射される。
一方、垂直な面である投射面Wに対して投射レンズ12から画像を投射する場合、投射角θをθ0からθ1、θ2、…と増加させると、投射レンズ12から投射された光の光束中心が投射面Wに照射される位置が、正接関数の特性に従い角度θの関数にて変化する。
したがって、投射画像は、投射角θが大きくなるに連れ、下記の式(15)に示される比率Mに従い、上方向に伸びる。
ここで、θを投射角、βを画角αの1/2の角度とし、表示素子114の総ライン数をLとすると、表示素子114上の垂直位置dyのラインを投射する光線の投射角θ´は、(16)式によって算出される。
表示素子114上の垂直位置dyのラインが面Wに投射されたときのラインの高さLh(dy)は、(17)式により算出される。
したがって、表示素子114上の垂直位置dyのラインが面Wに投射されたときのラインの高さLh(dy)の、下辺(dy=L)のラインの高さに対する拡大率ML(dy)は、(18)式により算出される。
第2補正係数は拡大率ML(dy)の逆数であり、表示素子114上の垂直位置dyのライン毎に算出する。
また、第2補正係数は、画角αや投射角θが小さい場合は、表示素子114上の垂直位置dyのライン毎に(18)式から算出せずに、下辺(dy=L)のラインの高さに対する上辺(dy=1)のラインの高さの拡大率ML(1)を、(19)式から求め、中間値については線形補間によって近似して算出してもよい。
第2補正係数の別の算出方法について説明する。第2補正係数は、投射角0°の投射画像の高さと投射角θの投射画像の高さの比から算出してもよい。
θを投射角、βを画角αの1/2の角度としたとき、投射角0°の投射画像の高さに対する投射角θの投射画像の高さの比であるM0は、次の(20)式によって算出できる。
第2補正係数には、M0の逆数を用いることができる。
ここで、θを投射角、βを画角αの1/2の角度とすると、投射角θの投射画像の高さW’は、式(21)で表される。
投射角0°、画角αにおける投射画像の高さは、図25における弧Cの投射角θにおける接線を、投射角θを中心に+β、−βの角度で円の中心から放射される線で区切られた、Lに近似される。高さLは式(22)で表される。
式(21)、(22)により、投射角0°の投射画像の高さに対する投射角θの投射画像の高さの比であるM0は、式(23)で表される。
上述した式(15)によれば、例えば投射角θ=45°の場合、約1.27倍の比率で投射画像が伸びることになる。また、投射面Wが半径rの長さに対してさらに高く、投射角θ=60°での投射が可能である場合、投射角θ=60°においては、約1.65倍の比率で投射画像が伸びることになる。
また、投射面W上の投射画像におけるライン間隔も、図26に例示されるように、投射角θが大きくなるに連れ広くなる。この場合、1つの投射画像内における投射面W上の位置に応じて、上述の式(15)に従いライン間隔が広くなることになる。
そこで、補正制御部108は、投射レンズ12の投射角θに従って、上述の式(18)に示す比率ML(dy)の逆数を第2補正係数として算出して、メモリコントローラ107によりラインの高さにこの第2補正係数を乗じて、投射を行う画像データに対して縮小処理を行うことで、幾何学的歪み補正を行い、画像データの垂直方向の歪みを解消している。
この垂直方向の縮小処理(幾何学的歪み補正処理)は、円筒モデルに基づいて切り取る画像データよりも大き目が望ましい。即ち、垂直な面である投射面Wの高さに依存するが、投射角θ=22.5°、画角α=45°の場合、約1.27倍の比率で投射画像が伸びるので、その逆数の1/1.27倍程度に縮めることになる。
また、補正制御部108は、上述のように算出した第1補正係数、第2補正係数、縮小率から、画像データの切り出し範囲を求めて、拡張機能制御部109とメモリコントローラ107に出力する。
例えば、画角αが10°、投射角θが30°の場合、投射画像は台形状に歪み、台形の上辺の長さは下辺の長さの約1.28倍となる。このため、補正制御部108は、水平方向の歪みを補正するために、第1補正係数を1/1.28と算出して、画像データの上辺の1ライン目を1/1.28倍に縮小し、最終ラインが1倍のスケーリングになるように各ラインの縮小率を線形で設定する。すなわち、画像データの出力の1ライン目の画素数は1280画素から1000画素(1280/1.28=1000)に縮小されることで台形歪み補正する。
但し、この状態では、上述したとおり、1ライン目は280画素(1280−1000=280)の画像データが投射されず有効な投射画素数が減少することになる。そこで、図20に示すような情報量の補填を行うために、メモリコントローラ107が、1ライン目では画像メモリ101から画像データの横解像度の1.28倍の信号を読み出し、この処理を各ラインに対して実施するように、補正制御部108は、画像データの切り出し範囲を決定する。
拡張機能制御部109は、画像制御部103と幾何学的歪み補正部100とを関連付ける役割を果たす。すなわち、従来は、幾何学的歪み補正によって画像データの出力が黒に塗りつぶされていた領域に、画像データの情報を表現させる。このために、拡張機能制御部109は、補正制御部108から入力された切り出し範囲に応じて、出力解像度を画像データの出力の際の解像度1280画素×720画素よりも大きくなるように出力解像度制御部1031に設定する。上述した例では、拡縮率は1倍であるので、拡張機能制御部109は、出力解像度を1920×1080に設定する。
これにより、画像制御部103のメモリコントローラ1032は、入力された画像データを1920×1080の解像度で画像メモリ101に保存することになり、幾何学的歪み補正部100のメモリコントローラ107から、図20に示すような情報量の補填を行った状態での切り出し範囲での画像データの切り出しが可能となる。
また、メモリコントローラ107は、上述のように算出した第1補正係数、縮小率、第2補正係数を用いて、以下のように幾何学的歪み補正を行う。すなわち、メモリコントローラ107は、第1補正係数を、切り出し範囲の画像データの上辺に乗算し、かつ、切り出し範囲の画像データの上辺から下辺の各ラインについて縮小率を乗算する。また、メモリコントローラ107は、切り出し範囲の画像データを構成するラインの画像データから第2補正係数に基づいて表示画素数に応じたラインを生成する。
次に、本実施の形態の幾何学的歪み補正部100による画像データの切り出しと幾何学的歪み補正の例について、従来と比較しながら説明する。上述の図20では、入力された画像データを全て切り出し、投射画像の垂直方向の中心を幾何学的歪み補正を行わない投射画像と合致するよう投射画像を表示する例を説明した。以下図27〜図30を用いて、表示素子114の画素数に応じて入力された画像データを切り出し、投射方向に応じて投射画像に生じ得る幾何学的歪みの領域も含めた切り出し範囲を切り出し画像データとして幾何学的歪み補正を行う例について説明する。
図27は、投射角が0°の場合における画像データの切り出しと、表示素子114上の画像データ、投射画像の例を示す図である。投射角が0°の場合には、図27に示すように、1920画素×1080画素の画像データが入力され(図27(a))、この画像データから表示素子114の解像度である1280画素×720画素が切り出され(図27(b))、幾何学的歪み補正を行わずに(図27(c))、被投射面に投射画像として投射される(図27(d))。
図27は、投射角が0°の場合における画像データの切り出しと、表示素子114上の画像データ、投射画像の例を示す図である。投射角が0°の場合に、1920画素×1080画素の画像データが入力された場合(図27(a))、メモリコントローラ107は、この画像データから表示素子114の解像度である1280画素×720画素の範囲を切り出す(図27(b))。なお、説明の都合上、中央部が切り出されるものとする(以下同様)。そして、メモリコントローラ107は、幾何学的歪み補正を行わずに(図27(c))、被投射面に投射画像として投射する(図27(d))。
図28は、投射角が0°より大きい場合でかつ幾何学的歪み補正を行わない場合における画像データの切り出しと、表示素子114上の画像データ、投射画像の例を示す図である。
投射角が0°より大きい場合に、1920画素×1080画素の画像データが入力された場合(図28(a))、この画像データから表示素子114の解像度である1280画素×720画素の範囲が切り出される(図28(b))。そして、幾何学的歪み補正(台形歪み補正)を行わないため(図28(c))、被投射面には台形歪みが生じた投射画像が投射される(図28(d))。すなわち、水平方向には投射角に応じて台形形状に歪み、垂直方向には投射角に応じて投射面の距離が異なることから、ラインの高さが垂直上方向に拡大していく垂直方向歪が発生する。
図29は、投射角が0°より大きい場合でかつ従来の台形歪み補正を行う場合における画像データの切り出しと、表示素子114上の画像データ、投射画像の例を示す図である。
投射角が0°より大きい場合に、1920画素×1080画素の画像データが入力された場合(図29(a))、この画像データから表示素子114の解像度である1280画素×720画素の範囲が切り出される(図29(b))。そして、切り出された範囲の画像データに対して従来の台形歪み補正が行われる(図29(c))。具体的には、水平方向には投射角応じて図29(c)に示すように台形形状に補正し、垂直方向には、ラインの高さが垂直下方向に拡大していく歪み補正を行う。そして、補正後の画像データが被投射面投射され、矩形状の投射画像が表示される(図29(d))。このとき、投射画像は水平方向、垂直方向とも歪みが補正されているが、表示に寄与しない画素が発生する。
図30は、投射角が0°より大きい場合でかつ本実施の形態の幾何学的歪み補正(台形歪み補正)を行う場合における画像データの切り出しと、表示素子114上の画像データ、投射画像の例を示す図である。
投射角が0°より大きい場合に、1920画素×1080画素の画像データが入力された場合(図30(a))、メモリコントローラ107は、この画像データから投射角に応じた切り出し範囲の台形状の領域分の範囲の画像データを画像メモリ101から切り出す(図30(b))。ここで、切り出し範囲は、補正制御部108によって、水平下辺は1280画素、水平上辺は1280画素に投射角度に応じた第1補正係数の逆数を乗算した値、垂直方向の範囲は入力画像データの高さに第2補正係数の逆数を乗算した値が算出される。
そして、メモリコントローラ107は、切り出された範囲の画像データに対して幾何学的歪み補正を行う(図30(c))。具体的には、メモリコントローラ107は、水平方向には、投射角に応じて図30(c)に示すように台形形状に補正し、垂直方向には、ラインの高さが垂直下方向に拡大していく歪み補正を行う。ここで、図30(b)に示すように、メモリコントローラ107は、投射角に応じた台形領域分の画素を切り出しているので、表示素子114上には1280画素×720画素の画像が展開されることになり、切り出した領域が縮小されることなく投射される(図30(d))。
図30の例に示されるように、入力された画像データから本来切り出されて残った未使用の領域の画像を、幾何学的歪み補正(台形歪み補正)後の画像データの周囲の領域に使用して投射画像を表示して、水平方向および垂直方向の周囲の領域で欠如していた情報量を補填しているので、図29に示す従来の手法に比べて、従来未使用であった領域の画像を効果的に活用して、幾何学的歪み補正(台形歪み補正)後の表示可能領域の有効利用を実現している。
<画像データの投射処理>
次に、プロジェクタ装置1において画像データによる画像を投射する際の処理の流れについて説明する。図31は、実施の形態1の画像投射処理の手順を示すフローチャートである。
ステップS100で、画像データの入力に伴い、当該画像データによる画像の投射に係る各種設定値がプロジェクタ装置1に入力される。入力された各種設定値は、例えば入力制御部119等に取得される。ここで取得される各種設定値は、例えば、画像データによる画像を回転させるか否か、すなわち、当該画像の水平方向と垂直方向とを入れ替えるか否かを示す値、画像の拡大率、投射の際のオフセット角θofstを含む。各種設定値は、プロジェクタ装置1に対する画像データの入力に伴い、データとしてプロジェクタ装置1に入力してもよいし、操作部14を操作することで入力してもよい。
次のステップS101で、プロジェクタ装置1に対して、1フレーム分の画像データが入力され、メモリコントローラ1032により、入力された画像データが取得される。取得された画像データは、画像メモリ101に書き込まれる。
次のステップS102で、画像制御部103は、オフセット角θofstを取得する。次のステップS103で、補正制御部108は、画角αを画角制御部106から取得する。さらに、次のステップS104で、補正制御部108は、投射レンズ12の投射角θを、回転制御部104から取得する。
次のステップS105で、画像データ切り出しおよび幾何学的歪み補正処理が行われる。ここで、画像データ切り出しおよび幾何学的歪み補正処理の詳細について説明する。図32は、実施の形態1の画像データ切り出しおよび幾何学的歪み補正処理の手順を示すフローチャートである。
まず、ステップS301で、補正制御部108は、(11)式により第1補正係数を算出する。次のステップS302で、補正制御部108は、画像データの上辺(第1辺)から下辺(第2辺)までの各ラインの縮小率を、(13)式の{}内の式により算出する。さらに、ステップS303で、補正制御部108は、ライン毎の第2補正係数を(18)式で算出したML(dy)の逆数として求める。
そして、次にステップS304で、補正制御部108は、第1補正係数、第2補正係数から切り出し範囲を上述のように求める。
次に、ステップS305で、メモリコントローラ107は、画像メモリ101の画像データから切り出し範囲の画像データを切り出す。そして、ステップS306で、メモリコントローラ107は、切り出し範囲の画像データに対して、第1補正係数、第2補正係数、縮小率を用いて、上述の幾何学的歪み補正を行い、処理を終了する。
図31に戻り、ステップS105で画像データ切り出しおよび幾何学的歪み補正処理が完了したら、ステップS106において、制御部120は、上述のステップS101で入力された画像データの次のフレームの画像データの入力があるか否かを判定する。
もし、次のフレームの画像データの入力があると判定された場合、制御部120は、処理をステップS101に戻し、当該次のフレームの画像データに対して上述したステップS101〜ステップS105の処理を行う。すなわち、このステップS101〜ステップS105の処理は、例えば画像データの垂直同期信号VDに従い、画像データのフレーム単位で繰り返される。したがって、プロジェクタ装置1は、投射角θの変化に対して、フレーム単位で各処理を追随させることができる。
一方、ステップS106で、次のフレームの画像データが入力されないと判定した場合、制御部120は、プロジェクタ装置1における画像の投射動作を停止させる。例えば、制御部120は、光源111をオフにするように制御すると共に、回転機構部105に対してドラム部10の姿勢を収容状態に戻すように命令を出す。そして、制御部120は、ドラム部10の姿勢が収容状態に戻った後、光源111などを冷却するファンを停止させる。
このように本実施の形態では、画像データに対し幾何学的歪み補正を行う場合において、入力された画像データから本来切り出されて残った未使用の領域の画像を、幾何学的歪み補正後の画像データの周囲の領域に使用して投射画像を表示して、水平方向および垂直方向の周囲の領域で欠如していた情報量を補填する。このため、本実施の形態によれば、従来技術にくらべて、未使用の領域の画像を効果的に活用することで、投写画像の内容についての幾何学的歪み補正を施すとともに、表示可能領域を有効に活用した高品質な投射画像を得ることができる。
特に、本実施の形態のプロジェクタ装置1を用いて、例えば、空や星空等の環境映像を投射する場合には、投射画像が台形状に表示された場合でも、表示できる情報量が多ければ臨場感をより効果的に得ることができる。また、本実施の形態のプロジェクタ装置1で地図画像などを投射する場合は、従来の手法に比べてより広範囲で周辺の情報を投射することが可能となる。
(実施の形態2)
実施の形態1のプロジェクタ装置1では、投射角に応じて生じる投射画像の水平方向の歪みと垂直方向の歪みをと幾何学的歪み補正で解消し、かつ水平方向の領域と垂直方向の領域の双方の領域で情報量を補填していたが、この実施の形態2では、水平方向の歪みを幾何学的歪み補正で解消し、かつ水平方向の領域で情報量を補填して、垂直方向については歪み補正を行わない。
本実施の形態のプロジェクタ装置1の外観、構造、および機能的構成は、実施の形態1と同様である。
本実施の形態では、補正制御部108は、回転制御部104から入力した投射角、画角制御部106から入力した画角とから、上述の(11)式により水平方向の歪み補正のための第1補正係数を算出し、ライン毎の縮小率を(13)式の{}内の式により算出し、垂直方向の歪み補正のための第2補正係数は算出しない。
また、補正制御部108は、投射角、画角、第1補正係数に基づいて、幾何学的歪み補正後の画像データが表示デバイスの表示可能サイズを包含するように、入力された画像データからの切り出し範囲を決定し、決定した切り出し範囲をメモリコントローラ107と拡張制御部109に出力する。
メモリコントローラ107は、画像メモリ101に格納された画像データに係るフレーム画像の全領域から、補正制御部108で決定された切り出し範囲の画像領域を切り出して(抽出して)画像データとして出力する。
また、メモリコントローラ107は、画像メモリ101から切り出した画像データに対して第1補正係数を用いて幾何学的歪み補正を行って、幾何学的歪み補正後の画像データを画像処理部102に出力する。
実施の形態2における画像データの投射処理の流れは、図31を用いて説明した実施の形態1と同様に行われる。実施の形態2では、図31のステップS105における画像データ切り出しおよび幾何学的歪み補正処理が実施の形態1と異なっている。図33は、実施の形態2の画像データ切り出しおよび幾何学的歪み補正処理の手順を示すフローチャートである。
まず、ステップS401で、補正制御部108は、(11)式により第1補正係数を算出する。次のステップS402で、補正制御部108は、画像データの上辺(第1辺)から下辺(第2辺)までの各ラインの縮小率を、(13)式の{}内の式により算出する。
そして、次にステップS403で、補正制御部108は、第1補正係数から切り出し範囲を上述のように求める。
次に、ステップS404で、メモリコントローラ107は、画像メモリ101の画像データから切り出し範囲の画像データを切り出す。そして、ステップS405で、メモリコントローラ107は、切り出し範囲の画像データに対して、第1補正係数、縮小率を用いて、上述の幾何学的歪み補正を行い、処理を終了する。
次に、本実施の形態の幾何学的歪み補正部100による画像データの切り出しと幾何学的歪み補正の例について説明する。
る。
図34は、投射角が0°より大きい場合でかつ本実施の形態の幾何学的歪み補正を行う場合における画像データの切り出しと、表示素子114上の画像データ、投射画像の例を示す図である。
投射角が0°より大きい場合に、1920画素×1080画素の画像データが入力された場合(図34(a))、メモリコントローラ107は、この画像データから投射角に応じた切り出し範囲の台形状の領域分の範囲の画像データを画像メモリ101から切り出す(図34(b))。ここで、切り出し範囲は、補正制御部108によって、水平下辺は1280画素、水平上辺は1280画素に投射角度に応じた第1補正係数の逆数を乗算した値が算出される。
そして、メモリコントローラ107は、切り出された範囲の画像データに対して幾何学的歪み補正を行う(図34(c))。具体的には、メモリコントローラ107は、水平方向には、投射角に応じて図34(c)に示すように台形形状に補正する。ここで、図34(b)に示すように、メモリコントローラ107は、投射角に応じた台形領域分の画素を切り出しているので、表示素子114上には1280画素×720画素の画像が展開されることになり、切り出した領域が縮小されることなく投射される(図34(d))。
このように本実施の形態では、水平方向の歪みを幾何学的歪み補正で解消し、かつ水平方向の領域で情報量を補填して、垂直方向については幾何学的歪み補正を行わないので、実施の形態1と同様の効果を奏する他、補正制御部108の処理負担を軽減することができる。
なお、本実施の形態1,2においては、投射面に亘って前記投射画像を投射させながら移動するように、前記投射部の投射方向を変化させて投射角を導出し、その投射角に応じた幾何学的歪みを解消するための補正量を算出する方法で説明したが、投射方向の変化は、動的である必要はない。即ち、図14、図15で示したように、静止している状態において固定された投射角を用いて補正量を算出してもよい。
さらには、補正量の計算、及び検出方法は、本実施例に記載した方法に拘束されずに、補正量に応じて補正後の前記画像データ領域外の領域も含めた切り出し範囲を決定することもできる。
実施の形態1,2のプロジェクタ装置1は、CPU(Central Processing Unit)などの制御装置と、ROM(Read Only Memory)やRAM(Random Access Memory)などの記憶装置と、HDD、操作部14等のハードウェアを備えた構成となっている。
また、実施の形態1,2のプロジェクタ装置1の回路部として搭載された回転制御部104、画角制御部106、画像制御部103(およびその各部)、拡張機能制御部109、幾何学的歪み補正部100(およびその各部)、入力制御部119、制御部120は、ハードウェアで構成する他、ソフトウェアで実現するように構成してもよい。
ソフトウェアで実現する場合においては、実施の形態1,2のプロジェクタ装置1で実行される画像投射プログラム(画像補正プログラムを含む)は、ROM等に予め組み込まれてコンピュータプログラムプロダクトとして提供される。
実施の形態1,2のプロジェクタ装置1で実行される画像投射プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
さらに、実施の形態1,2のプロジェクタ装置1で実行される画像投射プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、実施の形態1,2のプロジェクタ装置1で実行される画像投射プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
実施の形態1,2のプロジェクタ装置1で実行される画像投射プログラムは、上述した各部(回転制御部104、画角制御部106、画像制御部103(およびその各部)、拡張機能制御部109、幾何学的歪み補正部100(およびその各部)、入力制御部119、制御部120)を含むモジュール構成となっており、実際のハードウェアとしてはCPUが上記ROMから画像投射プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、回転制御部104、画角制御部106、画像制御部103(およびその各部)、拡張機能制御部109、幾何学的歪み補正部100(およびその各部)、入力制御部119、制御部120が主記憶装置上に生成されるようになっている。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。