(57)【要約】【課題】  複数の投影装置の投影位置をユーザが簡便に調整することを可能とする投影制御装置を提供することを目的とする。【解決手段】  本発明の投影制御装置２００は、複数のプロジェクタ１００のうち１つのプロジェクタの投影領域を制御する個別調整モードと、複数のプロジェクタ１００のうち２以上のプロジェクタ１００の投影領域を制御する一括調整モードと、を含む複数の調整モードのうちいずれかの調整モードを設定し、設定した調整モードに応じてプロジェクタの投影領域の位置または形状を調整するＣＰＵ２０１を備え、一括調整モードが設定され、かつ、一括調整モードが設定されるより前に個別調整モードで１つのプロジェクタの投影領域の制御が実行されている場合に、ＣＰＵ２０１は、２以上のプロジェクタの投影領域の制御に用いる射影変換行列を補正することを特徴とする。【選択図】  図１０
2019204034.tif 000002
【特許請求の範囲】
【請求項１】
複数の投影装置の投影領域の位置または形状を制御する投影制御装置であって、
前記複数の投影装置のうち１つの投影装置の投影領域を制御する第１調整モードと、前記複数の投影装置のうち２以上の投影装置の投影領域を制御する第２調整モードと、を含む調整モードを設定する設定手段と、
前記設定手段が設定した調整モードに応じて、投影装置の投影領域の位置または形状を調整する調整手段と、
を備え、
前記設定手段が前記第２調整モードを設定し、かつ、前記設定手段が前記第２調整モードを設定するより前に前記第１調整モードで前記１つの投影装置の投影領域の制御が実行されている場合に、前記調整手段は、前記２以上の投影装置の投影領域の制御に用いるパラメータを補正することを特徴とする投影制御装置。
【請求項２】
前記調整手段は、前記第１調整モードで投影領域の制御を実行する度に、前記パラメータの補正を実行することを特徴とする請求項１に記載の投影制御装置。
【請求項３】
前記設定手段が、前記第１調整モードから前記第２調整モードへ切り替えた場合に、前記調整手段は、前記パラメータの補正を実行することを特徴とする請求項１に記載の投影制御装置。
【請求項４】
前記複数の投影装置が投影した投影画像を含む投影面の領域を撮像した画像を取得する取得手段を備え、
前記調整手段は、前記撮像画像において前記複数の投影装置の投影位置のずれが所定の範囲内であるか否かを判定し、前記複数の投影装置の投影位置のずれが所定の範囲内である場合に前記パラメータの補正を実行することを特徴とする請求項１の投影制御装置。
【請求項５】
ユーザによる前記パラメータの補正の実行指示を受け付ける受付手段を備え、
前記調整手段は、前記受付手段が前記実行指示を受け付けたことに応じて、前記パラメータの補正を実行することを特徴とする請求項１に記載の投影制御装置。
【請求項６】
請求項１乃至請求項５のいずれか１項に記載の投影制御装置と、
前記投影制御装置が投影領域の位置または形状を制御することが可能な複数の投影装置と、
を含む投影システム。
【請求項７】
複数の投影装置の投影領域の位置または形状を制御する投影制御装置の制御方法であって、
前記複数の投影装置のうち１つの投影装置の投影領域を制御する第１調整モードと、前記複数の投影装置のうち２以上の投影装置の投影領域を制御する第２調整モードと、を含む調整モードを設定する設定工程と、
前記設定手段が設定した調整モードに応じて、投影装置の投影領域の位置または形状を調整する調整工程と、
を備え、
前記設定工程が前記第２調整モードを設定し、かつ、前記設定手段が前記第２調整モードを設定するより前に前記第１調整モードで前記１つの投影装置の投影領域の制御が実行されている場合に、前記調整工程は、前記２以上の投影装置の投影領域の制御に用いるパラメータを補正することを特徴とする投影制御装置の制御方法。
【請求項８】
前記調整工程は、前記第１調整モードで投影領域の制御を実行する度に、前記パラメータの補正を実行することを特徴とする請求項７に記載の投影制御装置の制御方法。
【請求項９】
前記設定工程が、前記第１調整モードから前記第２調整モードへ切り替えた場合に、前記調整工程は、前記パラメータの補正を実行することを特徴とする請求項７に記載の投影制御装置の制御方法。
【請求項１０】
前記複数の投影装置が投影した投影画像を含む投影面の領域を撮像した画像を取得する取得工程を備え、
前記調整工程は、前記撮像画像において前記複数の投影装置の投影位置のずれが所定の範囲内であるか否かを判定し、前記複数の投影装置の投影位置のずれが所定の範囲内である場合に前記パラメータの補正を実行することを特徴とする請求項７に記載の投影制御装置の制御方法。
【請求項１１】
ユーザによる前記パラメータの補正の実行指示を受け付ける受付工程を備え、
前記調整工程は、前記受付工程が前記実行指示を受け付けたことに応じて、前記パラメータの補正を実行することを特徴とする請求項７に記載の投影制御装置の制御方法。
【請求項１２】
請求項７乃至請求項１１のいずれか１項に記載の投影制御装置の制御方法をプロセッサが実行するためのプログラム。
【請求項１３】
請求項１２に記載の投影制御装置の制御方法をプロセッサが実行するためのプログラムを格納し、前記プロセッサが前記プログラムを読み出し可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の投影装置の投影位置を制御する投影制御装置、その制御方法、投影装置と投影制御装置を含む投影システム、投影制御を実現するためのプログラム、および、そのプログラムを記憶する記憶媒体に関する。
【背景技術】
【０００２】
複数のプロジェクタ（投影装置）が投影する投影画像を投影面上で組み合わせて画像を表示させる投影方法がある。このような投影方法で画像を投影する場合に、予め各投影装置の投影位置を調整する必要がある。
【０００３】
特許文献１にはネットワークに接続した複数のプロジェクタを用いてタイリング投写を行う表示システムが開示されている。この表示システムでは、ネットワークに接続した選択可能な複数のプロジェクタそれぞれのグループ情報と識別情報とを関連付けた画像を表示する。これにより、ユーザはあらかじめタイリング投写に使用することを想定してグループ情報を設定したプロジェクタを、ネットワークに接続した他のプロジェクタと識別することが容易となる。
【０００４】
複数の投影装置で画像を投影する方法のうち、各投影装置の投影画像を重ねて表示するスタック投影では、複数の投影装置の投影位置が重なるように、各投影装置の投影位置を予め調整する必要がある。各投影装置の投影位置を調整するために、各投影装置の投影画像を撮影して、自動的に投影位置を調整するための制御アプリケーションがある。このような自動制御アプリケーションで投影位置を制御した場合、調整中もしくは調整後の外的な要因により投影位置に微小なずれが発生することがあった。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１７‐２６８３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来の制御アプリケーションでは、自動制御アプリケーションで投影位置を制御したあとに、投影位置の調整を個別に手動で実施することがある。この場合、すでに投影位置が調整された投影装置を一つ一つ選択して操作することは煩雑である。また、すでに調整が不要な投影装置の組み合わせに対して投影位置を動かすことにより、さらに投影位置のずれが拡大する恐れがある。
【０００７】
上述の課題に鑑みて、本発明の投影制御装置は、複数の投影装置の投影位置をユーザが簡便に調整することを可能とする投影制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の投影制御装置の一の形態は、複数の投影装置の投影領域の位置または形状を制御する投影制御装置であって、前記複数の投影装置のうち１つの投影装置の投影領域を制御する第１調整モードと、前記複数の投影装置のうち２以上の投影装置の投影領域を制御する第２調整モードと、を含む調整モードを設定する設定手段と、前記設定手段が設定した調整モードに応じて、投影装置の投影領域の位置または形状を調整する調整手段と、を備え、前記設定手段が前記第２調整モードを設定し、かつ、前記設定手段が前記第２調整モードを設定するより前に前記第１調整モードで前記１つの投影装置の投影領域の制御が実行されている場合に、前記調整手段は、前記２以上の投影装置の投影領域の制御に用いるパラメータを補正することを特徴とする。
【発明の効果】
【０００９】
本発明の投影制御装置によれば、複数の投影装置の投影位置の位置調整を行う場合に、ずれが生じた場合でも、その後の調整を正しく行うことが可能となる。したがって、複数の投影装置の投影位置をユーザが簡便に調整することを可能とする。
【図面の簡単な説明】
【００１０】
【図１】投影システム構成の一例を示す図である。
【図２】プロジェクタ及び投影制御装置の機能ブロックを示すブロック図である。
【図３】投影領域調整フローを示すフローチャートである。
【図４】表示部に表示されるＧＵＩを示す第１の模式図である。
【図５】表示部に表示されるＧＵＩを示す第２の模式図である。
【図６】表示部に表示されるＧＵＩを示す第３の模式図である。
【図７】表示部に表示されるＧＵＩを示す第４の模式図である。
【図８】自動位置合わせ処理を示すフローチャートである。
【図９】撮像画像の座標とプロジェクタのパネル座標とを示す模式図である。
【図１０】位置合わせ処理後の投影位置補正処理を示すフローチャートである。
【図１１】投影面に投影するマーカーを示す模式図である。
【図１２】表示部に表示されるＧＵＩを示す第５の模式図である。
【図１３】キーストーン補正における射影変換を示す模式図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の実施例を詳細に説明するが、この発明は以下の実施の形態に限定されない。また、この発明の実施の形態は発明の好ましい形態を示すものであり、発明の範囲を限定するものではない。
【００１２】
図１は、本実施例の投影システム構成の一例を示す図である。投影システムはプロジェクタ１００ａ、１００ｂ、１００ｃ、および１００ｄと、投影制御装置２００と、映像分配器３００と、撮像装置４００とを備える。投影システムは、プロジェクタ１００ａ、１００ｂ、１００ｃ、および１００ｄから投影された投影画像を組み合わせて１つの画像を投影するマルチ投影システムである。
【００１３】
プロジェクタ１００ａは、投影面５００に投影画像Ａを投影する投影装置である。プロジェクタ１００ｂは、投影面５００に投影画像Ｂを投影する投影装置である。プロジェクタ１００ｃは、投影面５００に投影画像Ｃを投影する投影装置である。プロジェクタ１００ｄは、投影面５００に投影画像Ｄを投影する投影装置である。以降、各プロジェクタに対して個別に言及する場合は、それぞれプロジェクタ１００ａ、プロジェクタ１００ｂ、プロジェクタ１００ｃ、およびプロジェクタ１００ｄの符号を付して示す。また、各プロジェクタで共通の構成や処理について言及する場合は、プロジェクタ１００として示す。
【００１４】
各プロジェクタ１００ａ〜１００ｄは、投影画像Ａ〜Ｄを投影面５００上で重ねて投影するスタック投影を行うためにあらかじめ設置されているとする。ただし、ユーザの目視での投影領域の位置の確認とユーザの手動による設置位置の調整とによって、各プロジェクタの投影領域の位置を画素単位で合わせることは困難である。本実施例では、各プロジェクタの投影領域を画素単位で合わせるための投影領域の位置制御は、投影制御装置２００による位置合わせ処理で実行する。
【００１５】
投影制御装置２００は、各プロジェクタ１００ａ〜１００ｄとネットワークを介して接続して、各プロジェクタ１００ａ〜１００ｄを制御する制御用コンピュータであるとする。投影制御装置２００は、表示部と操作部とを備えるノート型のパーソナルコンピュータ（ＰＣ）であるとする。投影システムに含まれるプロジェクタは投影制御装置２００と相互に通信可能に接続される。本実施例では、ＴＣＰ／ＩＰを通信プロトコルとして用いるローカルエリアネットワーク（ＬＡＮ）でプロジェクタ１００および投影制御装置２００の間の通信が行われるものとする。
【００１６】
なお、投影制御装置２００は、スマートフォンやタブレットなど、その他の情報処理装置を用いても良い。プロジェクタ１００と投影制御装置２００との通信は、有線通信であっても無線通信であってもよく、また、通信プロトコルにも特に制限はない。また、投影制御装置２００は、予め定められたコマンドをプロジェクタ１００ａ〜１００ｄに送信することにより、プロジェクタ１００ａ〜１００ｄの動作を制御することができる。プロジェクタ１００ａ〜１００ｄは投影制御装置２００から受信したコマンドに応じた動作を行い、動作の結果を投影制御装置２００に送信する。
【００１７】
映像分配器３００は、投影制御装置２００から受信した映像信号を複製し、プロジェクタ１００ａ〜１００ｄにそれぞれ供給する。
【００１８】
撮像装置４００は、各プロジェクタ１００ａ〜１００ｄが投影した投影画像Ａ〜Ｄを含む投影面５００の領域を撮像して撮像画像を投影制御装置２００に出力するカメラである。撮像装置４００は例えばデジタルカメラ、ウェブカメラ、ネットワークカメラである。あるいは、撮像装置４００は、投影制御装置２００に内蔵されていてもよい。撮像装置４００が投影制御装置２００と別の装置（投影制御装置２００の外部の撮像装置）である場合、撮像装置４００は、直接あるいはネットワークを介して、投影制御装置２００と通信可能に接続される。投影制御装置２００は、撮像装置４００に予め定められたコマンドを送信することにより、撮像装置４００の動作を制御することができる。例えば、撮像装置４００は投影制御装置２００からの要求に応じて投影面５００の撮像を行い、得られた画像データ（撮像画像）を投影制御装置２００に送信することができる。
【００１９】
図２は、投影システムに含まれるプロジェクタ１００及び投影制御装置２００の機能ブロックを示すブロック図である。プロジェクタ１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、投影部１０４、投影制御部１０５、ＶＲＡＭ１０６、操作部１０７、ネットワークＩＦ１０８、画像処理部１０９、映像入力部１１０を有する。これらの機能ブロックは内部バス１１１によって通信可能に接続されている。
【００２０】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１はプロジェクタ１００の各機能ブロックの制御を行う制御プロセッサである。ＣＰＵ１０１は、ＲＯＭ１０３に記憶されているプログラムをＲＡＭ１０２に読み込んで実行することにより、プロジェクタ１００の動作を実現するプログラマブルプロセッサであるとする。
【００２１】
ＲＡＭ１０２は、ＣＰＵ１０１がプログラムを実行する際のワークメモリとして用いられる記憶媒体である。ＲＡＭ１０２には、プログラムやプログラムの実行に用いる変数などが記憶される。また、ＲＡＭ１０２は、他の用途（例えばデータバッファとして）に用いられても良い。
【００２２】
ＲＯＭ１０３はＣＰＵ１０１が実行するプログラム、メニュー画面などの表示に用いるためのＧＵＩデータなど各種の設定値などが記憶される記憶媒体である。ＲＯＭ１０３は書き換え可能であっても良い。
【００２３】
投影部１０４は、光源、投影光学系などを有し、投影制御部１０５から供給される投影用画像に基づいて光学像を投影する。本実施形態では液晶パネルを光学変調素子として用い、光源からの光の反射率もしくは透過率を投影用画像に従って制御することにより、投影用画像に基づく光学像を生成し、投影光学系によって投影面に投影する。
【００２４】
投影制御部１０５は、画像処理部１０９から供給される投影用画像のデータを投影部１０４に供給する。
【００２５】
ＶＲＡＭ１０６は、外部（例えばＰＣやメディアプレーヤー）から受信した投影用画像のデータを格納するビデオメモリである。
【００２６】
操作部１０７は、キーボタン、スイッチ、タッチパネルなどの入力デバイスを有し、ユーザからプロジェクタ１００への指示を受け付ける。ＣＰＵ１０１は操作部１０７の操作を監視しており、操作部１０７の操作を検出すると、検出した操作に応じた処理を実行する。なお、プロジェクタ１００がリモートコントローラを有する場合、操作部１０７はリモートコントローラから受信した操作信号をＣＰＵ１０１に通知する。
【００２７】
ネットワークＩＦ１０８はプロジェクタ１００を通信ネットワークに接続するインタフェースであり、サポートする通信ネットワークの規格に準拠した構成を有する。本実施形態においてプロジェクタ１００は、ネットワークＩＦ１０８を通じて、投影制御装置２００と共通のローカルネットワークに接続される。したがって、プロジェクタ１００と投影制御装置２００との通信はネットワークＩＦ１０８を通じて実行される。
【００２８】
画像処理部１０９は、映像入力部１１０に供給され、ＶＲＡＭ１０６に格納された映像信号に対して様々な画像処理を必要に応じて適用し、投影制御部１０５に供給する。画像処理部１０９は例えば画像処理用のマイクロプロセッサであってよい。あるいは、画像処理部１０９に相当する機能を、ＣＰＵ１０１がＲＯＭ１０３に記憶されたプログラムを実行することによって実現してもよい。
【００２９】
画像処理部１０９が適用可能な画像処理には、フレーム間引き処理、フレーム補間処理、解像度変換処理、メニュー画面などのＯＳＤを重複させる処理、キーストーン補正処理、エッジブレンディング処理などが含まれるが、これらに限定されない。
【００３０】
映像入力部１１０は、外部装置（本実施形態では投影制御装置２００）が出力する映像信号を直接または間接的に受信するインタフェースであり、サポートする映像信号に応じた構成を有する。映像入力部１１０は例えば、コンポジット端子、Ｓ映像端子、Ｄ端子、コンポーネント端子、アナログＲＧＢ端子、ＤＶＩ−Ｉ端子、ＤＶＩ−Ｄ端子、ＨＤＭＩ（登録商標）端子の１つ以上を含む。映像入力部１１０はまた、アナログ映像信号を受信した場合、デジタル映像信号に変換してＶＲＡＭ１０６に格納する。
【００３１】
次に、投影制御装置２００の機能構成について説明する。投影制御装置２００は外部ディスプレイが接続可能な汎用コンピュータであってよく、したがって汎用コンピュータに準じた機能構成を有する。投影制御装置２００は、ＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、操作部２０４、表示部２０５、ネットワークＩＦ２０６、映像出力部２０７、通信部２０８を有する。また、これの機能ブロックは内部バス２０９によって通信可能に接続されている。
【００３２】
ＣＰＵ２０１は、プログラマブルプロセッサの一例であり、例えばＲＯＭ２０３に記憶されているプログラム（ＯＳやアプリケーションプログラム）をＲＡＭ２０２に読み込んで実行することにより、投影制御装置２００の動作を実現する。
【００３３】
ＲＡＭ２０２は、ＣＰＵ２０１がプログラムを実行する際のワークメモリとして用いられる。ＲＡＭ２０２には、プログラムやプログラムの実行に用いる変数などが記憶される。また、ＲＡＭ２０２は、他の用途（例えばデータバッファとして）に用いられてもよい。
【００３４】
ＲＯＭ２０３は書き換え可能であってよい。ＲＯＭ２０３は、ＣＰＵ２０１が実行するプログラム、メニュー画面などの表示に用いるためのＧＵＩデータ、各種の設定値などが記憶される。なお、投影制御装置２００はＲＯＭ２０３よりも大容量の記憶装置（ＨＤＤやＳＳＤ）を有してもよく、この場合ＯＳやアプリケーションプログラムといった容量の大きいプログラムは記憶装置に記憶してもよい。
【００３５】
操作部２０４は、キーボード、ポインティングデバイス（マウスなど）、タッチパネル、スイッチなどの入力デバイスを有し、ユーザから投影制御装置２００への指示を受け付ける。なお、キーボードはソフトウェアキーボードであってもよい。ＣＰＵ２０１は操作部２０４の操作を監視しており、操作部２０４の操作を検出すると、検出した操作に応じた処理を実行する。
【００３６】
表示部２０５は例えば液晶パネルや有機ＥＬパネルである。表示部２０５は、ＯＳやアプリケーションプログラムが提供する画面の表示を行う。なお、表示部２０５は外部装置であってもよい。また、表示部２０５はタッチディスプレイであってもよい。
【００３７】
ネットワークＩＦ２０６は投影制御装置２００を通信ネットワークに接続するインタフェースであり、サポートする通信ネットワークの規格に準拠した構成を有する。本実施形態において投影制御装置２００は、ネットワークＩＦ２０６を通じて、プロジェクタ１００と共通のローカルネットワークに接続される。したがって、投影制御装置２００とプロジェクタ１００との通信はネットワークＩＦ２０６を通じて実行される。
【００３８】
映像出力部２０７は、外部装置（本実施形態ではプロジェクタ１００または映像分配器３００）に映像信号を送信するインタフェースであり、サポートする映像信号に応じた構成を有する。映像出力部２０７は例えば、コンポジット端子、Ｓ映像端子、Ｄ端子、コンポーネント端子、アナログＲＧＢ端子、ＤＶＩ−Ｉ端子、ＤＶＩ−Ｄ端子、ＨＤＭＩ（登録商標）端子の１つ以上を含む。
【００３９】
なお、本実施形態では、プロジェクタ１００の投写領域の調整機能を有する投写制御アプリケーションプログラムのＵＩ画面を表示部２０５に表示するものとするが、映像出力部２０７に接続された外部機器にＵＩ画面を表示させてもよい。
【００４０】
通信部２０８は外部機器と例えばシリアル通信を行うための通信インタフェースであり、代表的にはＵＳＢインタフェースであるが、ＲＳ−２３２Ｃなど他の規格に準じた構成を有しても良い。本実施形態では撮像装置４００が通信部２０８に接続されるものとするが、撮像装置４００と投影制御装置２００との通信方法に特に制限はなく、両者がサポートしている任意の規格に準拠した通信を行うことができる。
【００４１】
次に、キーストーン補正について説明する。キーストーン補正は、投写面の法線方向と投写方向（一般的には投写光学系の光軸）とのずれに応じて投写画像に生じる台形歪みを相殺するように元画像を幾何学的変換（変形）させる補正（幾何補正）である。キーストーン補正は、入力された指示に応じて、プロジェクタ１００のＣＰＵ１０１が実行するとする。画像の幾何学的変換は射影変換によって実現できるため、キーストーン補正を実行することは、幾何補正の補正量である射影変換のパラメータ（制御パラメータ）の決定することに等しい。例えば、ＣＰＵ１０１は、矩形上の元画像の各頂点の移動量と移動方向に基づいて射影変換のパラメータを決定し、画像処理部１０９に与えることができる。
【００４２】
図１３は、キーストーン補正における射影変換を示す模式図である。例えば、元画像の座標を（ｘｓ，ｙｓ）とすると、射影変換による変形後の画像の座標（ｘｄ，ｙｄ）は以下の式１で表わされる。
【００４３】
【数１】
2019204034.tif 000003
【００４４】
ここで、Ｍは３×３行列で、元画像から変形後の画像への射影変換行列である。また、ｘｓｏ、ｙｓｏは、図１３に実線で示す元画像の左上の頂点の座標であり、ｘｄｏ、ｙｄｏは、図１３に一点鎖線で示す変形後の画像において、元画像の頂点（ｘｓｏ，ｙｓｏ）に対応する頂点の座標値である。
【００４５】
ＣＰＵ１０１は、式１の行列Ｍとその逆行列Ｍ−１を、オフセット（ｘｓｏ，ｙｓｏ），（ｘｄｏ，ｙｄｏ）とともに、キーストーン補正のパラメータとして画像処理部１０９に与える。画像処理部１０９は、以下の式２に従い、キーストーン補正後の座標値（ｘｄ，ｙｄ）に対応する元画像の座標（ｘｓ，ｙｓ）を求めることができる。
【００４６】
【数２】
2019204034.tif 000004
【００４７】
式２で得られる元画像の座標ｘｓ，ｙｓがいずれも整数であれば、画像処理部１０９は元画像座標（ｘｓ，ｙｓ）の画素値をそのままキーストーン補正後の画像の座標（ｘｄ，ｙｄ）の画素値とすることができる。一方、式２で得られる元画像の座標が整数にならない場合、画像処理部１０９は、元画像座標（ｘｓ，ｙｓ）に相当する画素値を、複数の周辺画素の値を用いた補間演算により求めることができる。補間演算は、例えばバイリニア、バイキュービックなど、公知の補間演算のいずれかを用いて行うことができる。なお、式２で得られる元画像の座標が、元画像の外部領域の座標である場合、画像処理部１０９は、キーストーン補正後の画像の座標（ｘｄ，ｙｄ）の画素値を黒（０）またはユーザが設定した背景色とする。このようにして、画像処理部１０９は、キーストーン補正後の画像の全座標についての画素値を求め、変換後画像を作成することができる。
【００４８】
ここでは、プロジェクタ１００のＣＰＵ１０１から画像処理部１０９に、行列Ｍとその逆行列Ｍ−１の両方が供給されるものとしたが、いずれか一方の行列だけを供給し、他方の行列は画像処理部１０９が求めてもよい。
【００４９】
なお、キーストーン補正後の画像の頂点の座標は、例えば投写画像の個々の頂点について、頂点が所望の位置に投写されるように操作部１０７を通じてユーザから移動量を入力させることにより取得することができる。この際、移動量の入力を支援するため、ＣＰＵ２０１は、投写制御アプリケーションプログラムの機能を用い、プロジェクタ１００にテストパターンを投写させるようにしてもよい。
【００５０】
したがって、プロジェクタ１００は、キーストーン変形量を得ることによって、投影領域の形状を所望の位置に移動または変形することが可能となる。
【００５１】
次に、投影制御装置２００が実行する投影領域の調整フローを説明する。投影制御装置２００が投写制御アプリケーションプログラムを実行することにより、投影装置の投影領域の位置を調整するフローが実行される。図３は、投影領域調整フローを示すフローチャートである。
【００５２】
Ｓ３０１で投影制御装置２００のＣＰＵ２０１は、投影制御装置２００が通信可能なプロジェクタ１００の中から、投影領域の調整の対象とする複数のプロジェクタを選択する対象プロジェクタ選択処理を実行する。対象プロジェクタ選択処理は、投影制御装置２００とネットワークを介して接続した接続プロジェクタを検出する処理、接続プロジェクタを表示する処理、および対象プロジェクタを決定する処理を含む。
【００５３】
図４は、Ｓ３０１〜Ｓ３０３の処理の実行中に、ＣＰＵ２０１が表示部２０５に表示させる操作画面（Ｇｕｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ、ＧＵＩ）６１０の例を示す模式図である。ユーザは、表示部２０５に表示されたＧＵＩ６１０を、操作部２０４を介して操作することにより、上述の処理の実行を制御することが可能である。ＧＵＩ６１０は、ボタン６１１ａ〜６１１ｄ、リスト６１２、およびチェックボックス６１３ａ〜６１３ｄを含む。
【００５４】
始めに、ＣＰＵ２０１は、投影制御装置２００とネットワークを介して接続した接続プロジェクタを検出する処理を実行する。ボタン６１１ａは、投影制御装置２００とネットワークを介して接続した接続プロジェクタを検出する処理を実行の開始を指示するためのＧＵＩである。ボタン６１１ａが、操作部２０４を介して、押下されたことをＣＰＵ２０１が検出すると、ＣＰＵ２０１は、ネットワークＩＦ２０６を介して、各プロジェクタに各プロジェクタを識別するための識別情報を要求する。具体的には、ＵＤＰなどのプロトコルを用いて識別情報を要求するコマンドを、ネットワーク上にブロードキャストする。なお、識別情報の取得は、ＵＤＰ以外のプロトコルを用いても良い。識別情報は、例えば、プロジェクタ名とＩＰアドレスの少なくとも一方を示す情報であるとする。なお、識別情報は、キーストーン変形量を示す情報を含んでいてもよい。
【００５５】
ネットワークに接続されているプロジェクタ１００のＣＰＵ１０１は、ネットワークＩＦ１０８を介してコマンドを受信すると、自身のプロジェクタを識別するための識別情報を含んだデータを、投影制御装置２００に対して送信する。投影制御装置２００のＣＰＵ２０１は、コマンドに応答したプロジェクタ１００から送信された識別情報を受信する。
【００５６】
次に、ＣＰＵ２０１は、接続プロジェクタを表示する処理を実行する。ＣＰＵ２０１は、取得した識別情報に基づいて、投影制御装置２００とネットワークを介して接続しているプロジェクタ１００のプロジェクタを示す情報を表示部２０５に表示する。リスト６１２は、投影制御装置２００とネットワークを介して接続しているプロジェクタ１００のプロジェクタ名およびＩＰアドレスを示す情報の少なくとも一方を一覧形式で示すリストビューである。なお、リストビュー４０２に表示されるプロジェクタの並び順は、検出された順であってもよいし、特定の規則に基づいてソートしてもよい。
【００５７】
次に、ＣＰＵ２０１は、リストに表示されたプロジェクタから、対象プロジェクタを決定する処理を実行する。
【００５８】
リスト６１２は、各プロジェクタの選択を行うためのチェックボックス６１３を含む。図４に示したように、投影制御装置２００とネットワークを介して４つのプロジェクタ１００ａ〜１００ｄが接続しているとすると、リスト６１２で各プロジェクタの識別情報の横にチェックボックス６１３ａ〜６１３ｄが表示される。ユーザは、チェックボックス６１３ａ〜６１３ｄにチェックを入れることで、投影領域の調整の対象とするプロジェクタ（対象プロジェクタ）を選択する。対象プロジェクタは、スタック投影を行う場合には、投影領域を重畳させるプロジェクタということも可能である。
【００５９】
例えば、対象プロジェクタをプロジェクタ１００ａ（Ｐｒｏｊｅｃｔｏｒ１，１９２．１６８．２５４．２５１）、プロジェクタ１００ｂ（Ｐｒｏｊｅｃｔｏｒ２，１９２．１６８．２５４．２５２）と選択するとする。この場合は、ユーザはＧＵＩ６１０のチェックボックス６１３ｂ、およびチェックボックス６１３ｄにチェックを入れればよい。チェックボックスにチェックが入ったプロジェクタに関する情報（例えば、プロジェクタ名、ＩＰアドレスなど）は投影制御装置２００のＲＡＭ２０２に格納される。なお、後述のテストパターンの投影を行うことで、より投影領域を調整しやすいプロジェクタを対象プロジェクタとして選択してもよい。本実施例では、プロジェクタ１００ａおよびプロジェクタ１００ｂを対象プロジェクタとして選択するとする。処理は、Ｓ３０２に進む。
【００６０】
Ｓ３０２で、各対象プロジェクタがテストパターンを投影するように制御する。ボタン６１１ｂは、対象プロジェクタに対して、テストパターンの投影の開始を指示するためのＧＵＩである。ボタン６１１ｃは、対象プロジェクタに対して、テストパターンの投影の停止を指示するためのＧＵＩである。
【００６１】
ボタン６１１ｂが操作部２０４を介して、押下されたことをＣＰＵ２０１が検出すると、ＣＰＵ２０１は、対象プロジェクタそれぞれに対し、ネットワークＩＦ２０６を通じてテストパターンの表示を指示するコマンドを送信する。テストパターンは、各プロジェクタ１００の表示領域の大きさや位置を確認しやすくするためのテストパターンである。例えば、テストパターンは、格子状の画像であるとする。なお、テストパターンは投影制御装置２００から対象プロジェクタに所定のテストパターンの表示を指示するコマンドを関連付けて送信しても良いし、任意の直線や図形、文字列などをプロジェクタに描画させるコマンドを複数組み合わせて送信しても良い。
【００６２】
ボタン６１１ｃが押下されたことをＣＰＵ２０１が検出すると、ＣＰＵ２０１は対象プロジェクタそれぞれに対し、ネットワークＩＦ２０６を通じてテストパターンの投影の停止を指示するコマンドを送信する。
【００６３】
ボタン６１１ｄは、処理をＳ３０２からＳ３０３に移行させる指示を入力するためのＧＵＩである。ボタン６１１ｄが操作部２０４を介して、押下されたことをＣＰＵ２０１が検出すると、処理はＳ３０３に進む。この時、対象プロジェクタがテストパターンを投影している状態で、処理が進むことが望ましい。
【００６４】
Ｓ３０３で、ＣＰＵ２０１は、位置合わせ処理に用いる撮像装置４００を選択する処理を実行する。Ｓ３０３で、ＣＰＵ２０１は、ユーザの入力に応じて、位置合わせ処理に用いる撮像装置４００の選択を行う。図５は、Ｓ３０３の処理の実行中に、ＣＰＵ２０１が表示部２０５に表示させるＧＵＩ６２０を示す模式図である。ＧＵＩ６２０は、ボタン６２１ａ〜６２１ｃ、ドロップダウンリスト６２２、表示領域６２３、およびチェックボックス６２４を含む。
【００６５】
ボタン６２１ａが操作部２０４を介して押下されたことをＣＰＵ２０１が検出すると、投影制御装置２００のＣＰＵ２０１は、通信部２０８もしくはネットワークＩＦ２０６を介して接続した撮像装置を示す情報（例えば、カメラの製品名）を取得する。そして、ＣＰＵ２０１は、ドロップダウンリスト６２２に取得した情報を表示する。ユーザはドロップダウンリスト６２２に表示された複数のカメラのうちいずれかを位置合わせ処理に用いる撮像装置４００として選択する。なお、撮像装置４００は、複数選択してもよい。
【００６６】
表示領域６２３は、ドロップダウンリスト６２２で選択されたカメラ（撮像装置４００）で撮影した画像を表示する領域である。投影制御装置２００のＣＰＵ２０１が選択された撮像装置４００に対して、撮影を指示するコマンドを送信し、取得した撮像画像に基づいて、表示領域６２３に画像を表示する。表示領域６２３に表示される画像は、選択された撮像装置４００のライブビュー画像であるとする。なお、所定のタイミングで撮像装置４００が撮像した撮像画像に基づく静止画であってもよい。ユーザは表示領域６２３に示された撮像画像に、対象プロジェクタが投影する投影画像（テストパターン）が全て収まっているか否かを確認することができる。ユーザは、対象プロジェクタが投影する投影画像が撮像画像に含まれるように、撮像装置４００の位置や角度、また、ズーム等の光学的な調整を行う。
【００６７】
チェックボックス６２４は撮像装置４００の撮像パラメータ（絞り数値やシャッタースピードなど）を、投影制御装置２００が自動で算出する撮像パラメータの自動設定処理を実行するか否かを設定するためのＧＵＩである。チェックボックス６２４にチェックを入れることによって、撮像パラメータの自動設定処理を実行することが設定される。
【００６８】
ボタン６２１ｂは、処理をＳ３０３からＳ３０１に戻すための指示を入力するＧＵＩである。ボタン６２１ｂが操作部２０４を介して押下されたことをＣＰＵ２０１が検出すると、処理がＳ３０１に戻り、表示部２０５に図４に示すＧＵＩ６１０が表示される。
【００６９】
ボタン６２１ｃは、Ｓ３０３を完了する指示を入力するためのＧＵＩである。ボタン６２１ｂが操作部２０４を介して押下されたことをＣＰＵ２０１が検出すると、処理がＳ３０４に進む。
【００７０】
Ｓ３０４で、自動設定処理の実行指示の有無を判定する。ＣＰＵ２０１は、チェックボックス６２４に入力された指示に応じて、自動設定処理の実行指示の有無を判定する。自動設定処理の実行指示のない場合、処理はＳ３０５に進む。そうでない場合、処理はＳ３１０に進む。
【００７１】
Ｓ３０５で、ＣＰＵ２０１は、撮像装置４００の撮像パラメータの設定処理を実行する。撮像パラメータは、例えば、シャッタースピード、ＩＳＯ感度、絞り数値である。図６は、Ｓ３０５の処理の実行中に、ＣＰＵ２０１が表示部２０５に表示させるＧＵＩ６３０を示す模式図である。ＧＵＩ６３０は、撮像パラメータ設定領域６３１、ドロップダウンリスト６３２ａ〜６３２ｃ、表示領域６３３、およびボタン６３４ａ〜６３４ｃ、を含む。
【００７２】
撮像パラメータ設定領域６３１は、撮像パラメータを設定するためのＧＵＩを表示する領域である。撮像パラメータ設定領域６３１は、それぞれ撮像装置４００のシャッター速度、ＩＳＯ感度、絞り数値を設定するためのドロップダウンリスト６３２ａ〜６３２ｃを含む。ユーザがドロップダウンリスト６３２ａ〜６３２ｃから各撮像パラメータの設定値を選択することにより、撮像装置４００の撮像パラメータを設定する。なお、設定できるカメラのパラメータはこれに限らず、例えばホワイトバランスや測光方式などを設定できるようにしてもよい。
【００７３】
ボタン６３４ａは、撮像装置４００に撮像指示を出力するための指示を入力するＧＵＩである。ボタン６３４ａが操作部２０４を介して押下されたことをＣＰＵ２０１が検出すると、撮像装置４００に撮像指示が出力される。撮像装置４００は、撮像指示に応じて投影面５００を撮像し、取得した画像データ（撮像画像）を投影制御装置２００に出力する。
【００７４】
表示領域６３３は、撮像装置４００から取得した撮像画像に基づいて、画像を表示する表示領域である。このとき取得する撮像画像、および表示する画像は、シャッター速度などの撮像パラメータが正しく設定できたかどうかを確認するためのものなので、静止画であることが望ましいが、ライブビュー画像であっても構わない。
【００７５】
ボタン６３４ｂは、処理をＳ３０５からＳ３０３に戻すための指示を入力するＧＵＩである。ボタン６２１ｂが操作部２０４を介して押下されたことをＣＰＵ２０１が検出すると、処理がＳ３０１に戻り、表示部２０５に図４に示すＧＵＩ６１０が表示される。
【００７６】
ボタン６３４ｃは、Ｓ３０５を完了する指示を入力するためのＧＵＩである。ボタン６３４ｃが操作部２０４を介して押下されたことをＣＰＵ２０１が検出すると、処理がＳ３０６に進む。
【００７７】
Ｓ３１０は、Ｓ３０４でユーザのＧＵＩ操作によって実行された撮像パラメータの実行処理をＣＰＵ２０１の制御により、自動的に実行する自動設定処理である。Ｓ３１０では、ＣＰＵ２０１は、テストパターンを投影するように、対象プロジェクタを一つずつ制御する指示を送信する。また、ＣＰＵ２０１は、対象プロジェクタのうち１つがテストパターンを投影している状態で、撮像装置４００に画像を撮像させる。ＣＰＵ２０１は、得られた撮像画像を解析して、十分な光量が得られているか、および、フォーカス位置があっているか等を判定する。ＣＰＵ２０１は、判定結果に応じて、撮像パラメータを制御し、上述の撮像と判定を繰り返して、最適な撮像パラメータを設定する。Ｓ３１０は、全ての対象プロジェクタに対して、上述の撮像パラメータの設定を完了したことに応じて、Ｓ３０６に進む。
【００７８】
Ｓ３０６は、位置合わせ処理の方法（調整モード）を選択する処理である。図７は、Ｓ３０６の処理の実行中に、ＣＰＵ２０１が表示部２０５に表示させるＧＵＩ６４０を示す模式図である。ＧＵＩ６４０は、ラジオボタン６４１、４点指定ＧＵＩ６４２、ラジオボタン６４３、ドロップダウンリスト６４４、ボタン６４５、ボタン６４６ａ、６４６ｂを含む。
【００７９】
Ｓ３０６で、ユーザは、指定された４点に投影領域の４隅を合わせる４点指定調整モードと、設定された基準プロジェクタの投影領域に他の対象プロジェクタの投影領域を合わせる基準ＰＪ適合モードとのうちいずれかを選択する。ユーザは、ＧＵＩ６４０のラジオボタン６４１およびラジオボタン６４３のいずれかを選択することによって調整モードを選択する。ユーザにより選択された調整モードに関する情報は投影制御装置２００のＣＰＵ２０１が自身のＲＡＭ２０２に格納する。
【００８０】
ユーザがラジオボタン６４１にチェックを入れると、４点指定調整モードが選択される。４点指定調整モードでは、予め定められた４点に個々の投影領域の頂点を合わせるように、各対象プロジェクタの投影領域に対してキーストーン補正等の制御パラメータを自動で決定するモードである。４点指定調整は、例えば、投写面が枠付きのスクリーンである場合のように、投写目標位置が明確な場合に有用である。なお、座標を調整可能な点の数は４点より少なくてもよいし、頂点以外の座標を含む５点以上としてもよい。
【００８１】
４点指定ＧＵＩ６４２は、４点始点調整モードにおいて、投影領域の頂点を合わせる４点をユーザが指定するためのＧＵＩである。例えば、４点指定ＧＵＩ６４２内に表示されたカーソルをユーザが移動させることにより、４点を指定する。
【００８２】
ユーザがラジオボタン６４３にチェックを入れると、基準ＰＪ適合モードが選択される。基準ＰＪ適合モードは、対象プロジェクタのうち設定された基準プロジェクタの投影領域に、他の対象プロジェクタの投写領域を合致させるように、他の対象プロジェクタの投影領域に対するキーストーン補正等の制御パラメータを自動で決定するモードである。このモードで、自動位置合わせが実行されるのは、基準プロジェクタの投写領域の位置が、指定された位置に調整されている場合である。基準プロジェクタ以外のプロジェクタの投写領域を基準プロジェクタの投写領域に合致させるためのキーストーン補正量を自動的に決定する。こちらは、４点指定調整モードとは異なり、投写目標位置が明確ではない場合（例えば壁面への投影など）に有効な機能である。
【００８３】
ドロップダウンリスト６４４は、基準プロジェクタを選択するためのものである。ここで選択可能なプロジェクタはＳ３０１で選択された対象プロジェクタである。ユーザはこのドロップダウンリストから所望のプロジェクタを１台選択し、投影制御装置２００のＣＰＵ２０１は選択されたプロジェクタを基準プロジェクタとして、自身のＲＡＭ２０２に記憶する。
【００８４】
ボタン６４５は、選択された基準プロジェクタに対して、特定のテストパターンを投影する指示を入力するためのＧＵＩである。ボタン６４５が操作部２０４を介して押下されたことをＣＰＵ２０１が検出すると、ＣＰＵ２０１は、ネットワークＩＦ２０６を通して、対象プロジェクタそれぞれに対して特定のテストパターンを表示させるコマンドを送信する。このとき、基準プロジェクタのみ他の対象プロジェクタと色、輝度、形状のいずれかが異なるテストパターンを表示させることで、ユーザが投影面上のどのプロジェクタが基準プロジェクタなのかを容易に確認することができる。
【００８５】
ボタン６４６ａは、処理をＳ３０５からＳ３０４に戻すための指示を入力するＧＵＩである。ボタン６４６ａが操作部２０４を介して押下されたことをＣＰＵ２０１が検出すると、処理がＳ３０４に戻り、表示部２０５に図６に示すＧＵＩ６１０が表示される。
【００８６】
ボタン６４６ｂは、Ｓ３０６を完了し、調整モードを確定する指示を入力するためのＧＵＩである。ボタン６４６ｂが操作部２０４を介して押下されたことをＣＰＵ２０１が検出すると、処理がＳ３０７に進む。
【００８７】
Ｓ３０７で、ＣＰＵ２０１は、選択された調整モードに応じて、対象プロジェクタの投影領域の位置合わせ処理を実行する。図８は、自動位置合わせ処理を示すフローチャートである。
【００８８】
位置合わせ処理では、Ｓ８０１〜Ｓ８０４の処理によって、各対象プロジェクタの液晶パネルの座標系と撮像装置４００カメラの射影変換行列をそれぞれ算出し、自身のＲＡＭ２０２に記憶する。
【００８９】
Ｓ８０１で、ＣＰＵ２０１は、後述する射影変換行列を全ての対象プロジェクタに対して算出したか判定する。全ての対象プロジェクタの射影変換行列が算出されていない場合、処理は、Ｓ８０２に進む。
【００９０】
Ｓ８０２で、ＣＰＵ２０１は、対象プロジェクタのうちいずれか（例えば、プロジェクタ１００ａ）に、テストパターンを表示するようにネットワークＩＦ２０６を介して指示を出力する。Ｓ８０３で、ＣＰＵ２０１は、通信部２０８を介して撮像装置４００に撮影指示を出力し、撮像装置４００から撮像画像を取得する。
【００９１】
Ｓ８０４で、ＣＰＵ２０１は、Ｓ８０３で得られた撮像画像から対象プロジェクタ１００ａが投影したテストパターンの４隅の点（特徴点）の座標を検出し、得られた座標からプロジェクタ１００ａと撮像装置４００との対応関係を示す射影変換行列を算出する。なお、撮像画像の特徴点の検出方法については、画像内の特徴点検出などの公知の技術を用いることが可能である。
【００９２】
図９は、撮像画像の座標とプロジェクタのパネル座標とを示す模式図である。図９を用いて、Ｓ８０４の射影変換行列の算出処理を説明する。図９（ａ）は、撮像装置４００から取得した撮像画像の座標系（カメラ座標平面）を示す模式図である。図９（ｂ）は、Ｓ８０２でテストパターンを表示した対象プロジェクタのパネル座標系（プロジェクタ座標平面）を示す模式図である。プロジェクタ座標平面上の座標を（ｘｉ，ｙｉ）、カメラ座標平面上の座標を（Ｘｉ，Ｙｉ）とすると、射影変換式は式３、式４で表される（ｉは自然数）。このとき、ｉが等しい変数はそれぞれ対応していることを表す。
【００９３】
【数３】
2019204034.tif 000005
【００９４】
【数４】
2019204034.tif 000006
【００９５】
ここで、ａからｈは所定の定数を示す。
【００９６】
上記の式３及び式４を式変形し、行列で表現した式を式５示す。
【００９７】
【数５】
2019204034.tif 000007
【００９８】
このときのＭが射影変換行列である。この射影変換行列は、式３及び式４に対して、対応する４組の点（ｘ１，ｙ１，Ｘ１，Ｙ１）、（ｘ２，ｙ２，Ｘ２，Ｙ２）、（ｘ３，ｙ３，Ｘ３，Ｙ３）、（ｘ４，ｙ４，Ｘ４，Ｙ４）をそれぞれ代入することで算出することができる。すなわち、平面同士の少なくとも４点の座標の対応関係が分かっていれば、射影変換行列を算出することが可能である。
【００９９】
例えば、Ｓ８０２で、選択された対象プロジェクタが四角形のテストパターン（図９（ｂ）の斜線部）を投影する。このとき、撮像画像における投影画像（四角形）の頂点の４点の座標と、対象プロジェクタのパネルにおけるテストパターンの四角形の頂点の４点の座標との対応関係に基づいて、射影変換行列を算出することが可能となる。図９（ａ）のカメラ座標平面のＰ＿ａ，Ｐ＿ｂ，Ｐ＿ｃ，Ｐ＿ｄは、図９（ｂ）のプロジェクタ座標平面のｐ＿ａ，ｐ＿ｂ，ｐ＿ｃ，ｐ＿ｄにそれぞれ対応する。これら既知の４点の対応関係より、射影変換行列を算出する。
【０１００】
得られた射影変換行列を用いることで、未知の座標点の射影変換を実行することが可能となる。例えば、カメラ座標平面の点Ｐ＿ｅに対して、算出した射影変換行列を掛けることで、対応するプロジェクタ座標平面上の点ｐ＿ｅを算出することが可能となる。また、プロジェクタ座標平面上のｐ＿ｅに、算出した射影変換行列の逆行列を掛けることで、対応するカメラ座標平面の点Ｐ＿ｅを算出することが可能となる。
【０１０１】
上述した方法で射影変換行列の算出が可能であるが、算出に用いる際にプロジェクタが投影する画像は四角形でなくても良い。カメラ座標平面とプロジェクタ座標平面同士の少なくとも４点の座標の対応関係を求めることができるような画像であれば、どのようなものであっても良い。
【０１０２】
Ｓ８０１で、全ての対象プロジェクタの射影変換行列が算出されている場合、処理は、Ｓ８０５に進む。
【０１０３】
Ｓ８０５で、ＣＰＵ２０１は、ユーザによって指定された調整モードが４点指定調整モードであるか否かを判定する。Ｓ８０５において、調整モードが４点指定調整モードであると判定された場合、Ｓ８０６に進む。
【０１０４】
Ｓ８０６で、ＣＰＵ２０１は、投影領域の変形後形状を指定するための４点（指定点）を決定する投影形状の指定処理を実行する。処理の詳細については、後述する。処理は、Ｓ８０７に進む。
【０１０５】
Ｓ８０７で、ＣＰＵ２０１は、投影面上で各対象プロジェクタの投影領域が重なり合うように、各対象プロジェクタの投影領域の制御パラメータを決定する。例えば、制御パラメータは、キーストーン変形量であるとする。ＣＰＵ２０１は、ＲＡＭ２０２に記憶されている各対象プロジェクタの射影変換行列を用いて、撮像画像におけるマーカー（指定点）の座標に対応する各対象プロジェクタのプロジェクタ座標平面上の座標（対応指定点）を算出する。具体的には、ＣＰＵ２０１は、各対象プロジェクタの投影領域の４隅が対応指定点に位置するように、各対象プロジェクタのキーストーン変形量を決定する。処理は、Ｓ８０８に進む。
【０１０６】
Ｓ８０５において、調整モードが４点指定調整モードでないと判定された場合、調整モードが基準ＰＪ調整モードであることを意味する。この場合、処理はＳ８０９に進む。
【０１０７】
Ｓ８０９で、ＣＰＵ２０１は、Ｓ３０６で設定された基準プロジェクタの投影領域の位置に基づいて、他の対象プロジェクタの投影領域の制御パラメータを決定する。具体的には、Ｓ８０３で撮影された基準プロジェクタのカメラ座標平面での４隅の位置と、基準プロジェクタ以外の対象プロジェクタの位置と射影変換行列を元に、各対象プロジェクタのキーストーン変形量を決定する。処理は、Ｓ８０８に進む。
【０１０８】
Ｓ８０８で、ＣＰＵ２０１は、Ｓ８０７で算出したキーストーン変形量を各対象プロジェクタにネットワークＩＦ２０６を介して送信する。各対象プロジェクタの画像処理部１０９は、取得したキーストーン変形量に基づいて、入力画像の形状補正を実行する。すなわち、Ｓ８０８は、各対象プロジェクタの投影領域の位置または形状を決定された制御パラメータに基づいて制御する処理である。
【０１０９】
以上の処理によって、選択された対象プロジェクタの投影領域を重畳させる位置合わせ処理が、投影制御装置２００のＣＰＵ２０１により自律的に実行される。
【０１１０】
＜本発明の特徴的な動作＞
Ｓ８０６の投影形状の指定処理について、説明する。図１０は、投影形状の指定処理のフローチャートである。
【０１１１】
Ｓ１１０１でＣＰＵ２０１は、変形後形状を指定するためのマーカーを生成しプロジェクタに投影させる投影制御を実行する。図１１は、投影面に投影するマーカーを示す模式図である。マーカーは、Ｌ字状マーカーが変形後形状の頂点を示すＬ字状のマーカー１２０２〜１２０５と、Ｌ字状マーカー１２０２〜１２０５を結ぶ線分１２０１である。なお、マーカーの形状や色は、投影面において少なくとも４点の座標を指定できるようなものであればどのようなものであっても良い。
【０１１２】
なお、変形後形状を指定するためのマーカーは、ＣＰＵ２０１が生成した画像をネットワークＩＦ２０６或いは映像出力部２０７を介して送信してもよい。或いは、ＣＰＵ２０１が任意の線分や多角形を各対象プロジェクタ１００（プロジェクタ１００ａおよびプロジェクタ１００ｂ）に描画させるコマンドをネットワークＩＦ２０６によって送信してもよい。各対象プロジェクタ１００のＣＰＵ１０１は受信したコマンドに基づいてマーカー画像を描画してもよい。なお、プロジェクタ１００ａと１００ｂで表示されるマーカーは、それぞれ異なる色で描画するように構成しても良い。例えばプロジェクタ１００ａで赤色のマーカーを描画し、プロジェクタ１００ｂで緑色のマーカーを描画すると、マーカー同士が重なっている領域は黄色に表示される。プロジェクタ毎に色を変えて描画することで、マーカーが重なっているか、ずれているかを容易に判別できるようになる。図１１の例では、図を見易くするために、プロジェクタ１００ａ、１００ｂのマーカーが完全に重なっている様子を示したが、スクリーンの揺れなどでＳ９０４の射影変換行列の値がずれた場合は、異なる位置にマーカーが描画されることとなる。Ｓ１１０１でマーカーの表示が完了すると、処理は、Ｓ１１０２に進む。
【０１１３】
Ｓ１１０２で、ＣＰＵ２０１は、変形後形状を指定するためのＧＵＩ画面を表示するように表示部２０５を制御する。図１２は、Ｓ１１０２の処理の実行中に、ＣＰＵ２０１が表示部２０５に表示させるＧＵＩ７１０を示す模式図である。ＧＵＩ７１０は、操作ボタン７１１ａ〜７１１ｄ、表示領域７１２、リスト７１３、チェックボックス７１４、および実行ボタン７１５を含む。
【０１１４】
操作ボタン７１１ａ〜７１１ｄは、それぞれ、対応するマーカーを上下左右に対して移動するための指示を入力するための十字型のボタンである。操作ボタン７１１ａは、左上頂点の変形後形状指定マーカーの操作するためのボタンである。操作ボタン７１１ｂは、右上頂点の変形後形状指定マーカーの操作するためのボタンである。操作ボタン７１１ｃは、は右下頂点の変形後形状指定マーカーの操作するためのボタンである。操作ボタン７１１ｄは、左下頂点の変形後形状指定マーカーの操作するためのボタンである。
【０１１５】
表示領域７１２は、撮像装置４００から取得した投影面５００のライブビュー画像を表示する領域である。ユーザは投影面を直接観察するか、このライブビュー画像を見ながら操作ボタン７１１を操作することで、変形後形状指定マーカーを操作する。
【０１１６】
リスト７１３は、対象プロジェクタの一覧を示すリストである。チェックボックス７１４は、リストに示された対象プロジェクタのうち、調整に用いるプロジェクタを選択するための指示アイコンである。ユーザが、チェックを入れたチェックボックスに対応する対象プロジェクタを調整対象とする。上述したように、本実施例では、対象プロジェクタとしてプロジェクタ１００ａ（Ｐｒｏｊｅｃｔｏｒ１）およびプロジェクタ１００ｂ（Ｐｒｏｊｅｃｔｏｒ２）を選択しているとする。なお、調整は複数台同時、もしくは１台毎に実行することが可能である。
【０１１７】
チェックボックス７１４は、初期状態では全ての対象プロジェクタにチェックが入った状態として表示される。スクリーンの揺れなどの外乱が無かった場合、ＧＵＩ７１０を表示した段階で全ての対象プロジェクタの表示位置にずれが無い状態となる。したがって、その後の調整では、全ての対象プロジェクタの投影位置を同時に調整することが望ましい。一方、スクリーンなどの揺れがある場合、ＧＵＩ７１０を表示した時点で対象プロジェクタの投影位置にずれが発生していることがある。このような場合は、チェックボックス７１４で、調整対象のプロジェクタを選択して個別に投影位置の調整を行い、対象プロジェクタ間の投影位置のずれを解消する。その後に、全ての対象プロジェクタを選択し、全体の表示位置の調整を行うことが望ましい。
【０１１８】
Ｓ１１０３で、ＣＰＵ２０１が、ユーザの操作が完了したか否かを判定する。ＣＰＵ２０１は、操作ボタン７１１が操作された場合、ユーザの操作が完了していないと判定し、処理がＳ１１０４に進む。
【０１１９】
Ｓ１１０４で、ＣＰＵ２０１は、調整対象の対象プロジェクタが複数選択されたか否かを判定する。ＣＰＵ２０１は、２以上の対象プロジェクタに対応するチェックボックス７１４にチェックが入力されている場合に、調整対象の対象プロジェクタが複数選択されたと判定する。調整対象の対象プロジェクタが複数選択されたと判定された場合、処理はＳ１１０５に進む。そうでない場合、処理はＳ１１０７に進む。
【０１２０】
Ｓ１１０５で、調整対象として選択された複数の対象プロジェクタの投影位置の調整に入る前に、選択された複数の対象プロジェクタのうちに個別に投影位置の調整が実行されたプロジェクタがあるか判定する。個別に調整されたプロジェクタがない場合、処理は、Ｓ１１０７に進む。
【０１２１】
個別に調整されたプロジェクタがある場合、Ｓ１１０６で、ＣＰＵ２０１は、個別に調整が行われたプロジェクタに対して、射影変換行列の更新処理を行う。具体的には、まず個別に調整されたプロジェクタ以外の選択されているプロジェクタの射影変換行列と、キーストーン変形に用いている４点の座標から、式５を用いてカメラ座標系における現在のＧＵＩの調整位置を算出する。その後、ＣＰＵ２０１は、個別調整を行ったプロジェクタの現在のキーストーン変形に用いている４点の座標と、先程求めたカメラ座標系における現在のＧＵＩの調整位置が等しいと仮定して、射影変換行列を再度計算しなおしＲＡＭ２０２に記憶する。処理は、Ｓ１１０７に進む。
【０１２２】
スクリーンなどの外乱によって各プロジェクタの投影位置がずれてしまった場合も、リスト７１３で投影位置がずれてしまったプロジェクタを選択して、個別調整を行うことで全体の調整をずれなく行う事が可能となる。
【０１２３】
すなわち、複数の対象プロジェクタの投影領域の位置、または形状を同時に制御する前に、いずれかの対象プロジェクタの投影領域の位置調整が実行されていた場合、位置調整によって当該対象プロジェクタの射影変換行列が変化する。Ｓ１１０６の処理を行わずに、複数の対象プロジェクタの投影領域の調整を実行すると、当該対象プロジェクタの投影位置が、他に対して徐々にずれてしまう。これは、Ｓ９０４で算出した射影変換行列にずれが解消されないため、リストビュー７１３で複数台のプロジェクタを選択して操作した場合、投影位置が徐々にずれていくという現象が起こるためである。
【０１２４】
Ｓ１１０７で、ＣＰＵ２０１は、ＲＡＭ２０２で記憶しているカメラ座標平面における変形後形状の座標を更新する。そして、Ｓ１１０８で、ＣＰＵ２０１は、マーカー画像を再生成し、選択されている対象プロジェクタに投影させる。
【０１２５】
図１２の実行ボタン７１５がユーザによって操作されるまで、操作ボタン７１１、およびチェックボックス７１４は操作可能である。図１２の実行ボタン７１５がユーザによって操作された場合には、Ｓ１１０３でユーザの操作が完了したと判定され、投影形状の指定処理が終了する。投影形状の指定処理が完了すると、図８のフローにおいて、Ｓ８０７に処理が進む。
【０１２６】
以上、説明したように本実施例によれば、本発明によればスタック投影の位置調整を行う場合に、ずれが生じた場合でも、その後の調整を正しく行うことが可能となる。
【０１２７】
なお、上述の投影形状の指定処理では、個別の調整を行った後に、複数台の調整を行ったタイミングで射影変換行列を更新すると説明したが、Ｓ１１０７、Ｓ１１０８の処理後に、常に射影変換行列を更新するように構成しても良い。その場合は、Ｓ１１０８の処理後、個別の調整であるかどうかを判定し、個別調整であれば射影変換行列の更新を行う。例えば、個別調整を行ったプロジェクタと最も位置関係が近いプロジェクタの射影変換行列とキーストーン補正の４点の座標を用いてカメラ座標系における投影位置の４点を算出する。その後、その４点の位置と個別調整を行っているプロジェクタの現在の投影位置の４点が等しいと仮定すれば、個別調整の行っているプロジェクタの射影変換行列を算出することが可能となる。
【０１２８】
また、本実施例では投影形状の指定処理の内部で自動的に射影変換行列の更新を行う例を説明したが、ユーザの指示によって射影変換行列の更新を明示的に行うように構成しても良い。例えば、ＧＵＩ７１０の調整ボタン７１６を、調整対象のプロジェクタを選択後に押下する事によって、ＣＰＵ２０１がユーザからの射影変換行列の更新の指示を受付け、更新処理が行われるように構成しても良い。調整ボタン７１６個別が押下されたことに応じて、調整が行われたプロジェクタのキーストーン変形の４点と調整されていないプロジェクタのキーストーン変形の４点と射影変換行列から個別調整が行われたプロジェクタの射影変換行列の更新を行うことができる。
【０１２９】
また、本実施例ではプロジェクタ同士の位置が等しいという仮定をおくことによって射影変換行列を更新すると述べたが、仮定を置かずに、新たに撮像装置４００で撮影をし直すことによって再度射影変換行列を求めるようにしても良い。撮像装置４００を用いる場合は、例えば個別の調整の完了後に、撮像装置４００で投影面５００を１度撮影して、プロジェクタ同士のずれを認識し、ずれが所定の範囲内であれば、再度射影変換行列の更新を行うといった構成にすることも可能である。
【０１３０】
［その他の実施例］
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、装置に供給することによっても、達成されることは言うまでもない。このとき、供給された装置の制御部を含むコンピュータ（またはＣＰＵやＭＰＵ）は、記憶媒体に格納されたプログラムコードを読み出し実行する。
【０１３１】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１３２】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０１３３】
また、上述のプログラムコードの指示に基づき、装置上で稼動しているＯＳ（基本システムやオペレーティングシステム）などが処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３４】
さらに、記憶媒体から読み出されたプログラムコードが、装置に挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれ、前述した実施形態の機能が実現される場合も含まれることは言うまでもない。このとき、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行う。
【符号の説明】
【０１３５】
１００  プロジェクタ
２００  投影制御装置
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０４  ＨＤＤ
２０５  表示部
２０６  ネットワークＩＦ
２０７  映像出力部
２０８  通信部
２０９  操作部
２１０  内部バス
４００  撮像装置
【図１】
2019204034.tif 000008
【図２】
2019204034.tif 000009
【図３】
2019204034.tif 000010
【図４】
2019204034.tif 000011
【図５】
2019204034.tif 000012
【図６】
2019204034.tif 000013
【図７】
2019204034.tif 000014
【図８】
2019204034.tif 000015
【図９】
2019204034.tif 000016
【図１０】
2019204034.tif 000017
【図１１】
2019204034.tif 000018
【図１２】
2019204034.tif 000019
【図１３】
2019204034.tif 000020