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