(57)【要約】【課題】  複数のプロジェクタが協働して投影する場合の投影画像の形状の設定が煩雑である。【解決手段】  複数のプロジェクタを含む投影システムを制御する制御装置は、複数のプロジェクタそれぞれの投影可能領域を検出する検出手段と、検出手段で検出された各投影可能領域を解析し、複数のプロジェクタが協働して投影する場合の最大領域の中から、投影するコンテンツの形状に基づく投影領域を設定する設定手段とを有することを特徴とする。【選択図】  図９
2018125819.tif 000002
【特許請求の範囲】
【請求項１】
複数のプロジェクタを含む投影システムを制御する制御装置であって、
前記複数のプロジェクタそれぞれの投影可能領域を検出する検出手段と、
前記検出手段で検出された各投影可能領域を解析し、前記複数のプロジェクタが協働して投影する場合の最大領域の中から、投影するコンテンツの形状に基づく投影領域を設定する設定手段とを有することを特徴とする制御装置。
【請求項２】
さらに、前記投影領域に基づき、前記複数のプロジェクタに対して投影画像の形状を補正するよう指示する指示手段を有することを特徴とする請求項１に記載の制御装置。
【請求項３】
さらに、スクリーン上の投影画像を撮像する撮像装置を備え、
前記検出手段は、前記撮像装置が撮影により取得した画像を解析することで、前記投影可能領域を検出することを特徴とする請求項１または２に記載の制御装置。
【請求項４】
前記設定手段は、前記投影領域として、スクリーンの法線方向から見て矩形である様な領域を設定することを特徴とする請求項１ないし３のいずれか１項に記載の制御装置。
【請求項５】
前記複数のプロジェクタが投影する画像の少なくとも一部が重複していることを特徴とする請求項１ないし４のいずれか１項に記載の制御装置。
【請求項６】
複数のプロジェクタを含む投影システムを制御する制御方法であって、
前記複数のプロジェクタそれぞれの投影可能領域を検出する検出工程と、
前記検出工程で検出された各投影可能領域を解析し、前記複数のプロジェクタが協働して投影する場合の最大領域の中から、投影するコンテンツの形状に基づく投影領域を設定する設定工程とを有することを特徴とする制御方法。
【請求項７】
複数のプロジェクタを含む投影システムを制御するプログラムであって、
コンピュータが読み出し実行することで、
前記複数のプロジェクタそれぞれの投影可能領域を検出する検出工程と、
前記検出工程で検出された各投影可能領域を解析し、前記複数のプロジェクタが協働して投影する場合の最大領域の中から、投影するコンテンツの形状に基づく投影領域を設定する設定工程と実行可能とするプログラム。
【請求項８】
請求項７に記載のプログラムをコンピュータにより読みだし可能に格納した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のプロジェクタ（投影装置）を用いた投影システムで、スタック投影またはマルチ投影をする際の投影領域を設定する技術に関する。
【背景技術】
【０００２】
複数のプロジェクタが協働し、投影領域の少なくとも一部を重畳させることで、１つの投影領域を形成する投影システムで、スタック投影やマルチ投影という方法が知られている。これらのスタック投影またはマルチ投影においては、プロジェクタの投影する画像の少なくとも一部が重複していて、各々プロジェクタの投影画像同士の位置を合わせる必要がある。
【０００３】
また、プロジェクタを投影面に正対した位置に設置できない場合がある。この場合、投影面上に台形歪という幾何学歪が発生してしまう。これを解消するために、台形補正（キーストーン補正）という台形歪を信号処理で補正する機能を用いることがある。
【０００４】
スタック投影やマルチ投影を実施する場合、投影画像どうしの厳密な位置合わせと台形補正とを両立することが好ましい。しかしながらその作業は大変煩雑で多くの時間を費やしてしまう。
【０００５】
特許文献１では、マルチ投影やスタック投影において、重畳領域の位置合わせと台形補正とを自動で行うシステムが記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平９−３２６９８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１のようなシステムにおいては、各プロジェクタが、おのおの単独の投影領域が最大となるような投影領域を算出しているので、補正された後の投影画像の形状が、投影画像の元となるコンテンツ画像の形状に対応していない。具体的には、コンテンツ画像が矩形であっても投影画像が矩形にならないことや、コンテンツ画像の一部が欠けた投影画像が投影されることや、投影画像とコンテンツ画像とで縦横比が異なることがあった。
【０００８】
本発明は、上記課題を解決するために、複数のプロジェクタを用いて、投影領域の少なくとも一部を重畳させた投影領域を形成する場合に、その投影領域の設定をなるべく簡易にすることを目的とする。
【０００９】
また、複数のプロジェクタを用いて、投影領域の少なくとも一部を重畳させた投影領域を形成する場合に、その投影領域の形状をコンテンツ画像の形状に対応させることを目的とする。
【課題を解決するための手段】
【００１０】
上記の課題を解決するため、複数のプロジェクタを含む投影システムを制御する制御装置は、複数のプロジェクタそれぞれの投影可能領域を検出する検出手段と、検出手段で検出された各投影可能領域を解析し、複数のプロジェクタが協働して投影する場合の最大領域の中から、投影するコンテンツの形状に基づく投影領域を設定する設定手段とを有することを特徴とする。
【発明の効果】
【００１１】
本発明に記載の方法では、複数のプロジェクタで投影を行う場合の投影領域の形状を簡単に決定し、特に投影画像の欠落や、投影領域の形状が投影画像の縦横比と合わせることが出来る。つまり、補正後の投影画像の形状を、コンテンツ画像の形状と同じにできる。
【図面の簡単な説明】
【００１２】
【図１】スタック投影のシステム構成図
【図２】マルチ投影のシステム構成図
【図３】システムのブロック図
【図４】画像処理部の詳細なブロック図
【図５】減光処理の説明のための図
【図６】変形処理の説明のための図
【図７】自動補正のフローチャート
【図８】メニュー画面を示した図
【図９】スタック投影の自動補正処理を説明するための図
【図１０】スタック投影の自動補正処理におけるフローチャート
【図１１】マルチ投影の自動補正処理を説明するための図
【図１２】マルチ投影の自動補正処理におけるフローチャート
【図１３】スクリーン面内における矩形の向きを説明する図
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態について説明するが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【００１４】
［実施例１］
以下、図と共に本発明の第１の実施形態を説明する。
【００１５】
図１を用いて本実施形態の自動位置合わせシステムの構成について説明する。図１は２台のプロジェクタが協働して投影する投影システムで、自動位置合わせを行うシステムの構成の一例を表した図である。
【００１６】
図１において、２台のプロジェクタの各々から投影される投影画像の全部または大部分が、スクリーン上で重なっている。このような投影形態のことをスタック投影と呼ぶ。スタック投影は、輝度の向上や投影画像の３Ｄ表示のために用いられる。プロジェクタ１００ａ及びプロジェクタ１００ｂは画像を重畳させて表示することによって、一つの画像をスクリーン９００上に投影する。また、プロジェクタ１００ａ、プロジェクタ１００ｂ、ＰＣ２００はＬＡＮにより、相互に通信可能な状態で接続されている。なお、接続形式は相互に通信可能であれば、有線、無線を問わない。
【００１７】
ＰＣ２００は、映像ケーブル３００ａを通じてプロジェクタ１００ａに映像信号を供給する。また、ＰＣ２００は、映像ケーブル３００ｂを通じてプロジェクタ１００ｂに映像信号を供給する。なお、映像信号の形式はＨＤＭＩ（登録商標）やＤＶＩ、ＶＧＡなど、どのような形式を用いても構わない。
【００１８】
撮像装置４００はＵＳＢケーブルあるいはＬＡＮケーブルを介してＰＣ２００と接続されている。ＰＣ２００からの撮影指示に基づいて投影面の撮影を行い、撮影画像をＰＣ２００に送信する。撮像装置４００はＰＣ２００からの指示に基づいて撮影できればよく、カメラの種類は問わない。撮像装置４００は複数であってもよい。
【００１９】
図２は投影面の大画面化・高解像度化のためにプロジェクタ４台を投影面上において、投影画像の一部を重ね合わせる形態を示したものである。投影面の重畳部に対して減光処理（エッジブレンディング）を施すことで重畳部を目立たなくさせている。減光処理についての詳細は後述する。このような投影形態のことをマルチ投影と呼ぶ。この構成では、ＰＣ１台に対して映像ケーブル３００ａ、３００ｂ、３００ｃ、３００ｄを介して４台のプロジェクタを接続している。映像ケーブルやＬＡＮケーブルの接続形式に関しては、図１に示したスタック投影の場合と同じ形式である。
【００２０】
本実施形態では、図１に示すような、２台のプロジェクタを用いるスタック投影について説明するが、プロジェクタやカメラの、台数や配置についてはこれに限らない。
【００２１】
図３は画像補正システムを構成するプロジェクタ１００、ＰＣ２００、映像ケーブル３００、及び撮像装置４００の主要な構成を表す図である。図３を用いて、画像補正システムの構成について説明する。
【００２２】
まず、プロジェクタ１００について説明する。
【００２３】
本実施形態のプロジェクタ１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、投影部１０４、投影制御部１０５、ＶＲＡＭ１０６、操作部１０７、ネットワークＩＦ１０８、画像処理部１０９、映像入力部１１０、光源制御部１１１を有する。また、１１２は上記の各ブロックを接続する内部バスである。
【００２４】
ＣＰＵ１０１は、プロジェクタ１００の各動作ブロックの制御を行う。
【００２５】
ＲＡＭ１０２は、ワークメモリとして一時的に制御プログラムやデータを格納するものである。
【００２６】
ＲＯＭ１０３は、ＣＰＵ１０１の処理手順を記述した制御プログラムを記憶するためのものである。
【００２７】
投影部１０４は、後述する投影制御部１０５によって指示された画像を投影するためのものであり、不図示の液晶パネル、レンズ、光源から構成される。
【００２８】
投影制御部１０５は、ＶＲＡＭ１０６に格納された画像データを読み出し、投影部１０４に投影の指示を出すためのものである。
【００２９】
ＶＲＡＭ１０６は投影部１０４で投影する画像を格納するための領域である。
【００３０】
操作部１０７は、ユーザからの指示を受け付け、ＣＰＵ１０１に対して指示信号を送信するものである。例えば、スイッチやダイヤルから成る。また、操作部１０７は不図示のリモコンからの信号を受信し、受信した信号に対応した指示信号をＣＰＵ１０１に対して送るものであっても良い。
【００３１】
ネットワークＩＦ１０８は外部機器とネットワーク通信を行うためのものである。本実施形態では、ネットワークＩＦ１０８はＰＣ２００との通信に用いられる。
【００３２】
画像処理部１０９は、後述の映像入力部１１０から受信した映像信号にフレーム数、画素数、画像形状などの変更処理を施して、投影制御部１０５に送信するものであり、例えば画像処理用のマイクロプロセッサからなる。また、画像処理部１０９は、専用のマイクロプロセッサである必要はなく、例えば、ＲＯＭ１０３に記憶されたプログラムによって、ＣＰＵ１０１が画像処理部１０９と同様の処理を実行しても良い。画像処理部１０９は、フレーム間引き処理、フレーム補間処理、解像度変換処理、メニュー等のＯＳＤ重畳処理、歪み補正処理（キーストン補正処理）、エッジブレンディングといった機能を実行することが可能である。また、画像処理部１０９は、映像入力部１１０から受信した映像信号以外にも、ＣＰＵ１０１によって再生された画像や映像に対して前述の変更処理を施すこともできる。画像処理部１０９の詳細については後述する。
【００３３】
映像入力部１１０は、外部装置から映像信号を受信するものであり、例えば、コンポジット端子、Ｓ映像端子、Ｄ端子、コンポーネント端子、アナログＲＧＢ端子、ＤＶＩ−Ｉ端子、ＤＶＩ−Ｄ端子、ＨＤＭＩ（登録商標）端子等を含む。また、アナログ映像信号を受信した場合には、受信したアナログ映像信号をデジタル映像信号に変換する。そして、受信した映像信号を、画像処理部１０９に送信する。ここで、外部装置は、映像信号を出力できるものであれば、パーソナルコンピュータ、カメラ、携帯電話、スマートフォン、ハードディスクレコーダ、ゲーム機など、どのようなものであってもよい。本実施形態では、外部装置としてＰＣ２００および映像ケーブル３００を用いる。
【００３４】
光源制御部１１１は、不図示の光源のオン／オフの制御や光量の制御をするものであり、制御用のマイクロプロセッサからなる。また、光源制御部１１１は、専用のマイクロプロセッサである必要はなく、例えば、ＲＯＭ１０３に記憶されたプログラムによって、ＣＰＵ１０１が光源制御部１１１と同様の処理を実行しても良い。また、不図示の光源は、スクリーンに画像を投影するための光を出力するものであり、例えば、ハロゲンランプ、キセノンランプ、高圧水銀ランプ、レーザー光源などであっても良い。
【００３５】
次に自動補正処理を実行する制御装置としても機能するＰＣ２００について説明する。
【００３６】
本実施形態のＰＣ２００は、ＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、操作部２０４、表示部２０５、ネットワークＩＦ２０６、映像出力部２０７、通信部２０８を有する。また、２０９は上記の各ブロックを接続する内部バスである。
【００３７】
ＣＰＵ２０１は、ＰＣ１００の各動作ブロックの制御を行う。
【００３８】
ＲＡＭ２０２はワークメモリとして一時的に制御プログラムやデータを格納するものである。
【００３９】
ＲＯＭ２０３はＣＰＵ２０１の処理手順を記述した各種の制御プログラムを記憶するためのものである。本願明細書で説明する投影画像の自動補正処理プログラムやメニュー画面等の表示制御プログラムは、ＲＯＭ２０３に格納されている。ただし、これらのプログラムはＲＯＭ２０３の代わりに、例えばハードディスクに格納されていても良いし、ＤＶＤは光磁気ディスクなどの各種の記録媒体に格納されていても良い。
【００４０】
操作部２０４はユーザからの指示を受け付け、ＣＰＵ２０１に対して指示信号を送信するものである。例えば、マウスやキーボード、タッチパネルなどから成る。
【００４１】
表示部２０５は画像データやＵＩ画面の表示を行う。表示部２０５は例えば液晶パネルや有機ＥＬパネルである。
【００４２】
ネットワークＩＦ２０６は外部機器とネットワーク通信を行うためのものである。本実施形態では、ＬＡＮ接続されたプロジェクタ１００と通信を行う。なお、本実施形態ではＬＡＮ通信によって投影装置１００の制御をするものとしているが、ＬＡＮ通信に限らずその他の通信方法を用いても良い。例えばシリアル通信（ＲＳ−２３２）を用いても良い。その場合、後述の通信部２０８を介して投影装置１００と接続する。
【００４３】
映像出力部２０７は外部装置に対して映像信号を送信するものであり、例えば、コンポジット端子、Ｓ映像端子、Ｄ端子、コンポーネント端子、アナログＲＧＢ端子、ＤＶＩ−Ｉ端子、ＤＶＩ−Ｄ端子、ＨＤＭＩ（登録商標）端子等を含む。また、本実施形態では、表示部２０５にユーザに補正処理の操作をさせるためのＵＩ画面を表示するものとして説明するが、映像出力部２０７に接続された外部機器に対してＵＩ画面を表示する形式であっても良い。
【００４４】
通信部２０８は撮像装置４００に対して撮影指示や露出補正指示などを含む信号や撮影画像を送受信するためのものであり、例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）などの規格で送受信が行われる。本実施形態ではＰＣ２００と撮像装置４００を通信部２０８によってＵＳＢ接続するものとして説明するが、撮像装置がネットワークによって制御可能であれば、ネットワークＩＦ２０６を介してＬＡＮ接続しても構わない。
【００４５】
次に、本実施形態の構成について詳しく説明する。
【００４６】
図４は、図３の画像処理部１０９の内部構成を詳しく説明するためのブロック図である。
【００４７】
画像処理部１０９は、各種画像処理部１０９ａ、ＯＳＤ重畳部１０９ｂ、減光処理部１０９ｃ、変形処理部１０９ｄを含む。
【００４８】
元画像信号ｓｉｇ０１は、前述のように、映像入力部１１０、ネットワークＩＦ１０８などから入力される。また、タイミング信号ｓｉｇ０２は、元画像信号ｓｉｇ０１に同期した垂直同期信号、水平同期信号、クロックなどのタイミング信号であって、元画像ｓｉｇ０１の供給元から供給される。画像処理部１０９内の各ブロックは、タイミング信号ｓｉｇ０２に基づいて動作するが、画像処理部１０９の内部でタイミング信号を作り直して使用してもよい。
【００４９】
各種画像処理部１０９ａは、ＣＰＵ１０１と連携して、元画像信号ｓｉｇ０１を入力し、各種画像処理を施したりして生成した画像処理信号ｓｉｇ０３をＯＳＤ重畳部１０９ｂに対して出力することができる。各種画像処理とは、画像信号のヒストグラムやＡＰＬをはじめとする統計情報の取得や、ＩＰ変換、フレームレート変換、解像度変換、γ変換、色域変換、色補正、エッジ強調などである。これらの画像処理の詳細については公知であるので説明を割愛する。
【００５０】
ＯＳＤ重畳部１０９ｂは、ＣＰＵ１０１の指示により、ユーザ用のメニューや操作のためのガイド情報をＯＳＤ画像として画像処理信号ｓｉｇ０３に重畳し、生成したＯＳＤ重畳信号ｓｉｇ０４を減光処理部１０９ｃに対して出力することができる。
【００５１】
減光処理部１０９ｃは、プロジェクタ１００のＣＰＵ１０１の指示により、ＯＳＤ重畳部１０９ｂから受信したＯＳＤ重畳信号ｓｉｇ０４に対し、エッジブレンドの減光処理を行なう。そして生成した重畳部減光信号ｓｉｇ０５を変形処理部１０９ｄに対して出力することができる。減光処理としては、マルチ投影の重畳領域において、非重畳領域との境界から端部に向かって徐々に減光するようなゲインをかける。
【００５２】
図５にエッジブレンド処理による投影画像の減光手法を示す。図５（ａ）にプロジェクタ１台の投影画像を示す。投影画像５００ａは、非重畳領域５１０ａと重畳領域５２０ａから構成される。同図（ｂ）に、別のプロジェクタからの投影画像５００ｂ、非重畳領域５１０ｂ、重畳領域５２０ｂを示す。
【００５３】
同図（ｃ）に示す５３０ａ、５３０ｂは、プロジェクタ１００の減光処理部１０９ｃがＯＳＤ重畳信号ｓｉｇ０４に適用するゲインである。非重畳領域５１０ａ，５１０ｂにおいては１．０倍、重畳領域５２０ａ、５２０ｂにおいては、横方向の位置により、非重畳領域との境界を１．０とし、投影画像端において０となるようなゲインとする。同図では、ゲインは直線となっているが、Ｓ字カーブなどにしてもよい。
【００５４】
同図（ｄ）に、合成後の投影画像を示す。重畳領域５４０は、プロジェクタ１００それぞれの重畳領域５２０ａ、５２０ｂの重ね合わせとなっている。均一な画像を投影しているとき、重畳領域５４０の輝度は非重畳領域５１０ａ、５１０ｂと同等であるため、境界が目立たなくなっている。
【００５５】
図２に示したようなマルチ投影の場合において、減光処理部１０９ｃによるエッジブレンド処理が行われる。
【００５６】
変形処理部１０９ｄは、変形の式に基づいて、重畳部減光信号ｓｉｇ０５に変形処理を施し、変形後画像信号ｓｉｇ０６を出力することができる。キーストーン補正は射影変換で実現できるため、プロジェクタ１００のＣＰＵ１０１から射影変換のためのパラメータを入力する。元画像の座標を（ｘｓ、ｙｓ）とすると、変形後画像の座標（ｘｄ、ｙｄ）は式１で表わされる。
【００５７】
【数１】
2018125819.tif 000003
【００５８】
ここで、Ｍは３×３行列で、プロジェクタ１００のＣＰＵ１０１から入力される元画像から変形後画像への射影変換行列である。ｘｓｏ、ｙｓｏは、図６に実線で示す元画像の１つの頂点の座標であり、ｘｄｏ、ｙｄｏは、図６に一点鎖線で示す変形後画像の、元画像の頂点（ｘｓｏ、ｙｓｏ）に対応する頂点の座標値である。
【００５９】
プロジェクタ１００のＣＰＵ１０１から、式１の行列Ｍの逆行列Ｍ−１とオフセット（ｘｓｏ，ｙｓｏ）、（ｘｄｏ，ｙｄｏ）が入力され、式２に従って変形後の座標値（ｘｄ、ｙｄ）に対応する元画像の座標（ｘｓ、ｙｓ）を求める。
【００６０】
【数２】
2018125819.tif 000004
【００６１】
式２に基づいて求められた元画像の座標が整数になれば、元画像座標（ｘｓ、ｙｓ）が持つ画素値をそのまま変換後座標（ｘｄ、ｙｄ）の持つ画素値としてもよい。しかし、式２に基づいて求められた元画像の座標は整数になるとは限らないので、周辺画素の値を用いて補間することで、変形後座標（ｘｄ、ｙｄ）の持つ画素値を求める。補間の方法は、バイリニア、バイキュービック、その他の任意の補間方法を用いればよい。また、式２に基づいて求められた元画像の座標が、元画像領域の範囲外である場合には、その画素値は黒またはユーザが設定した背景色とする。
【００６２】
このようにして、変換後座標の全てについて画素値を求め、変換後画像を作成する。
【００６３】
上記の説明では、プロジェクタ１００のＣＰＵ１０１から、画像処理部１０９に、行列Ｍとその逆行列Ｍ−１とを入力しているが、逆行列Ｍ−１のみを入力して画像処理部１０９の内部で行列Ｍを求めてもよい。あるいは、画像処理部１０９に行列Ｍのみを入力して画像処理部１０９の内部で逆行列Ｍ−１を求めてもよい。
【００６４】
なお、本実施形態において、射影変換によって変形処理を行うものとして説明するが、変形処理の手法は射影変換に限らず、他の手法を用いても構わない。
【００６５】
次に、図７を用いて自動補正のフローについて説明する。このフローはユーザがＰＣ２００の操作部２０４を介して、ＣＰＵ２０１にプログラムの実行を指示したときに開始される。なお、図７の処理フローにおいて、フローの開始条件をユーザがＰＣ２００の操作部２０４を介してプログラムの実行を指示したときとして説明を行うが、開始条件はこれに限らない。
【００６６】
例えば、Ｌｉｎｕｘ（登録商標）のＣｒｏｎやＷｉｎｄｏｗｓのタスク・スケジューラ等を用いて図７の処理フローを定期的に実行させても良い。その場合、ＰＣ２００のＲＡＭ２０２あるいはＲＯＭ２０３に投影モード情報及び補正対象プロジェクタ情報が格納されていれば、Ｓ７０１とＳ７０２を省略することができる。
【００６７】
まず、ＰＣ２００のＣＰＵ２０１は表示部２０５に投影モードの設定を促すメニュー画面を表示する（Ｓ７０１）。ユーザに投影モードの設定を促すメニュー画面を図８（ａ）に示す。ユーザはこのメニュー画面上のプルダウンメニュー８０１を操作して、投影モードを選択する。投影モードとして、スタック投影、マルチ投影が選択可能であり、スタック投影やマルチ投影においては台数や配置についても設定可能である。台数や配置に関しては図８（ａ）のプルダウンメニュー８０１に示したものだけではなく、その他の形態を選択できるようにしても良い。投影モードの選択後、ユーザがメニュー画面８００上の決定ボタン８０２を押下することで、ＰＣ２００のＣＰＵ２０１は自身のＲＡＭ２０２に投影モード情報を格納し、Ｓ７０２に遷移する。
【００６８】
本実施形態では投影モードの選択にプルダウンメニューを用いているが、選択方法はこれに限らない。例えばＧＵＩによってラジオボタンやチェックボックスから入力させても良いし、ＣＵＩを用いても良い。あるいは、投影モード情報を含む設定ファイルを予めＰＣ１００のＲＯＭ１０３に格納しておき、ＣＰＵ１０１にＲＯＭ１０３上の設定ファイルから投影モードを取得させても良い。
【００６９】
投影モードの設定後、ＰＣ２００のＣＰＵ２０１は表示部２０５に補正対象プロジェクタの設定を促すメニュー画面を表示する（Ｓ７０２）。ユーザに補正対象プロジェクタの設定を促すメニュー画面を図８（ｂ）に示す。表示領域８１１にはＳ７０１で設定した投影モード情報が表示される。ユーザはテキストボックス８１２〜８１５に補正対象のプロジェクタのＩＰアドレスを入力する。補正対象のプロジェクタが２台であれば、ユーザはテキストボックス８１２、８１３にＩＰアドレスを入力し、その他のテキストボックスには何も入力をしないことで、ＰＣ２００のＣＰＵ２０１に投影対象プロジェクタの台数とアドレスを認識させる。ＩＰアドレスの入力後、ユーザがメニュー画面８１０上の決定ボタン８１６を押下することで、ＰＣ２００のＣＰＵ２０１は自身のＲＡＭ２０２に投影対象プロジェクタのＩＰアドレス情報を格納し、Ｓ７０３に遷移する。
【００７０】
なお、ＩＰアドレスの入力方法はテキストボックス形式に限らず、チェックボックスなど、その他の形式を用いても良い。ＣＵＩにて入力をさせても良い。あるいは投影対象プロジェクタのＩＰアドレスを含む設定ファイルを予めＰＣ１００のＲＯＭ１０３に格納しておき、ＣＰＵ１０１がＲＯＭ１０３上の設定ファイルからＩＰアドレスを取得させても構わない。
【００７１】
投影モード及び補正対象プロジェクタの設定が完了後、ＰＣ２００のＣＰＵ２０１は自身のＲＡＭ２０２に格納された投影モード情報に基づいて、対応する補正処理方法を選択（Ｓ７０３）し、補正処理を実行する。
【００７２】
図１に示す投影装置２台を用いたスタック投影における自動補正処理（Ｓ７０４）について、図９および図１０を用いて説明する。
【００７３】
図９は、スタック投影の自動補正処理を説明するための、スクリーン９００における図である。図９において、スクリーン９００は平面である。図９において、プロジェクタ１００ａ、１００ｂのそれぞれの投影可能領域９０１ａ、９０１ｂを実線で囲んで図示している。各々のプロジェクタがスクリーンと正対していれば、投影可能な領域９０１ａ、９０１ｂはそれぞれ矩形になるが、ここでは各々のプロジェクタがスクリーンに正対していないため、投影可能領域９０１ａ、９０１ｂがそれぞれ台形になっている。
【００７４】
図１０は、スタック投影の自動補正処理における、ＰＣ２００のフローチャートである。スタック投影の自動補正処理が開始されると、ＰＣ２００は補正対象となる全てのプロジェクタの投影可能な領域を検出する（Ｓ１００１）。すなわち、図９の実線に示されるような、プロジェクタ１００ａおよびプロジェクタ１００ｂの、投影可能領域９０１ａおよび９０１ｂを検出する。投影可能な領域を検出するとは、投影可能な領域内の各点の座標が、ＰＣ２００のＲＡＭ２０２に格納されることを指す。投影可能な領域の検出のために、プロジェクタ１００およびスクリーン９００および撮像装置４００の、位置情報および方向情報と、プロジェクタ１００および撮像装置４００の、光学情報と、を取得しておく。プロジェクタおよびスクリーンおよび撮像装置の、位置情報および方向情報とは、これらの装置が配置されている、位置および向きの情報である。位置情報および方向情報は、プロジェクタ１００およびスクリーン９００および撮像装置４００の、位置および向きを、１つの座標系で表すことができれば、どのようなものであってもよい。プロジェクタおよび撮像装置の、光学情報とは、これらの装置のレンズの焦点距離などの光学に関する情報であり、主に幾何光学に関する情報である。
【００７５】
各装置の位置情報および方向情報および光学情報を取得するには、既知の情報をＰＣ２００のＲＡＭ２０２に与えておき、ＰＣ２００のＣＰＵ２０１が読み出すことによって得ることができる。あるいは、全ての情報が既知でなくても、各装置の位置情報または方向情報または光学情報を取得することもできる。具体的には、各々のプロジェクタ１００からスクリーン９００にテスト画像などの投影画像を投影して、投影画像を撮像装置４００が撮像し、撮像された投影画像のデータをＰＣ２００のＣＰＵ２０１において解析する方法がある。解析によって得られる、位置情報または方向情報または光学情報は、ＰＣ２００のＲＡＭ２０２に格納される。このように、投影と撮像とによって、位置情報または方向情報または光学情報を取得する方法は、公知であるので詳細は割愛する。ＰＣ２００のＣＰＵ２０１は、これらの位置情報と方向情報と光学情報とを用いて、投影可能な領域の座標を計算して、ＲＡＭ２０２に格納することができる。
【００７６】
前述した座標を、例えば、１つのＸＹＺ座標系で表す場合、Ｘ軸、Ｙ軸、Ｚ軸の方向を決めておく必要があり、例えば、複数のプロジェクタの内の１台の、設置されている向きを基準にすることができる。例えば、プロジェクタの外形の上面や下面を基準面とすることができる。以降、説明のために、プロジェクタ１００ａの設置されている向きを基準として、図１のようにプロジェクタ１００ａの横方向をＸ軸、高さ方向をＹ軸、縦方向Ｚ軸とするが、座標系や軸の設定の方法はこれに限らない。また、撮像装置４００やスクリーン９００など、プロジェクタ以外の装置や機器を基準に、座標系を設定してもよい。スクリーン９００が矩形であれば、スクリーンの辺を基準にしてもよい。また、水準器を用いれば、水平を基準とすることもできる。
【００７７】
次に、Ｓ１００１で検出した投影可能領域を解析し、図９の投影可能な領域の内部における、最大領域の矩形９０２（図９の点線）を算出する（図１０のＳ１００２）。ここで言う矩形とは、スクリーン９００を法線方向から見た場合の矩形を指している。矩形は平面であるスクリーン９００と同一の面内にある。このように、まず矩形の法線方向をスクリーン９００の法線方向と一致するように定める。
【００７８】
次に平面のスクリーン９００の面内における、矩形の向きを定める。スクリーン面内においては、図１３の矩形１３０１と矩形１３０２のように、矩形の辺の向きを様々に決めることができる。
【００７９】
本実施形態において矩形の向きは、先述した、プロジェクタ１００ａの横方向であるＸ軸を、スクリーン９００に正射影した方向（図９のｘ）に平行な辺を矩形が持つように決定する。異なる向きにＸＹＺ座標系のＸ軸を設定しておいた場合は、そのＸ軸をスクリーン９００に正射影した方向に平行な辺を矩形が持つように矩形の向きを決定する。
【００８０】
このように、矩形の向きを決定した後に、投影可能な領域の内部において矩形を決定する。具体的には、まず図９におけるプロジェクタ１００ａの投影可能な領域９０１ａの左側の頂点であるＡ０およびＡ３、およびプロジェクタ１００ｂの投影可能な領域９０１ｂの左側の頂点であるＢ０およびＢ３を抽出する。次にこれら４つの頂点の中で、最も右側、すなわちｘ方向の最も右側、である頂点を選ぶ。図９の場合、Ｂ３が選ばれる。Ｂ３を通り、スクリーン９００の面内においてｘ方向に垂直な直線の一部が、最大の矩形（点線）の左辺になる。同様に、Ａ１、Ａ２、Ｂ１、Ｂ２の４頂点の最も左側から右辺が決まり、Ａ０、Ａ１、Ｂ０、Ｂ１の４頂点の最も下側から上辺が決まり、Ａ２、Ａ３、Ｂ２、Ｂ３の４頂点の最も上側から下辺が決まる。ここで言う上下とは、スクリーン９００の面内において、ｘ軸に垂直な方向であり、図９における上下と同じである。このようにして４辺が決められた矩形を、全てのプロジェクタが投影可能な最大の矩形の範囲とする。
【００８１】
次に、このようにして決められた最大の矩形９０２と、コンテンツ画像との、縦横比を比較する（Ｓ１００３）。最大の矩形９０２の縦横比とは、横の辺と縦の辺の長さの比であり、すなわち先述した上辺と右辺の長さの比である。また、コンテンツ画像の縦横比とは、投影の元となる画像の縦横比である。コンテンツ画像の縦横比には、例えば１６：９や４：３といった比が用いられている。コンテンツ画像の縦横比を取得するには、プロジェクタに入力される元画像信号ｓｉｇ０１を、ＬＡＮを経由して、ＰＣ２００のＣＰＵ２０１に送る方法がある。あるいは、コンテンツ画像の縦横比をＲＡＭ２０２に保存しておくことで、ＣＰＵ２０１において値を用いることもできる。
【００８２】
Ｓ１００３において比較した結果に基づき、次に投影の形状と位置とを決定する（Ｓ１００４）。本実施形態においてはコンテンツ画像の比を変えずに投影してユーザに表示することとしている。したがって、図９における補正後の投影領域９０３（図９の破線）のように、形状が矩形であり、かつ、縦横比がコンテンツ画像と同じになるようにしている。最大の矩形９０２が、コンテンツ画像よりも縦長の場合は、補正後の投影領域９０３の下辺の長さを、最大の矩形の下辺の長さと同じにする。その場合、図９のように、補正後の投影領域９０３の左辺と右辺とは、最大の矩形９０２の左辺と右辺とにそれぞれ重なる。そして、補正後の投影領域９０３の左辺の中点を、最大の矩形９０２の左辺の中点と同じになるように上辺および下辺の位置を決定すれば、補正後の投影領域９０３の位置は一意に決まる。また、最大の矩形９０２が、コンテンツ画像よりも横長の場合、補正後の投影領域９０３の左辺の長さを、最大の矩形の左辺の長さと同じにする。その場合、補正後の投影領域９０３の下辺と上辺とは、最大の矩形９０２の下辺と上辺とにそれぞれ重なる。そして、補正後の投影領域９０３の下辺の中点を、最大の矩形９０２の下辺の中点と同じになるように左辺および右辺の位置を決定すれば、補正後の投影領域９０３の位置は一意に決まる。また、最大の矩形９０２とコンテンツ画像の縦横比が同じであった場合、補正後の投影領域９０３は最大の矩形９０２と同じ形状、同じ位置にすることができる。
【００８３】
以上のように、最大の矩形９０２の縦横比によらず、コンテンツ画像と同じ形状の補正後の投影領域９０３を決定することができる。なお、補正後の投影領域９０３の位置の決定においては、最大の矩形９０２の中央ではなく、最大の矩形９０２の内部の任意の位置に配置してよい。例えば、最大の矩形９０２の端に配置してもよい。あるいは、最大の矩形９０２の頂点と、補正後の投影領域９０３の頂点との距離が、最大の矩形９０２の辺の長さに特定の比を乗じた長さと等しくなるようにして決めてもよい。このように、予め位置の決定方法が定められていればよい。また、上述した方法では、補正後の投影領域９０３を最大の矩形９０２の内部において最大化するようにしているが、これに限定されるものではない。投影領域が大きい方がユーザにとって見やすくて好ましい場合もあるが、ユーザが投影領域を小さくして見たい場合もある。この場合、補正後の投影領域９０３の大きさの決定方法を予め定めておくことで、ユーザにとって好ましい表示を行うことが可能になる。補正後の投影領域９０３の大きさは、最大の矩形９０２の大きさに対して相対的に定めてもよいし、既知の座標系の絶対的な長さから定めてもよい。
【００８４】
以上のように、Ｓ１００４において、補正後の投影領域９０３の形状、大きさ、位置が決定される。すなわち補正後の投影領域９０３の座標が決定される。
【００８５】
次に、補正後の投影領域９０３を元に、プロジェクタごとの投影領域を決定する（Ｓ１００５）。本実施形態に記載の、プロジェクタ２台のスタック投影においては、プロジェクタ１００ａおよび１００ｂは、いずれも補正後の投影領域９０３の全体を投影する。
【００８６】
次に、Ｓ１００５で決められた、プロジェクタごとの投影領域を元に、プロジェクタごとの補正を実行する（Ｓ１００６）。各プロジェクタの投影可能な領域、および、補正後の投影領域が算出されているので、それらの相対位置に基づいて、プロジェクタごとのキーストーン補正量を算出することができる。ＰＣ２００のＣＰＵ２０１で算出されたキーストーン補正量は、ＬＡＮを経由して、プロジェクタの変形処理部１０９ｄに送ることができる。プロジェクタの変形処理部１０９ｄは、入力された元画像信号ｓｉｇ０１に対してキーストーン補正を行い、補正された画像を投影することができる。
【００８７】
あるいは、プロジェクタの変形処理部１０９ｄにおけるキーストーン補正を行わないで、プロジェクタごとの補正を実行することもできる。ＰＣ２００のＣＰＵ２０１で算出されたキーストーン補正量に基づいて、ＰＣの映像出力部２０７から出力する画像にキーストーン補正を行ってから、プロジェクタの映像入力部１１０へ画像を送り、元画像信号ｓｉｇ０１として使用する。２つの方法の違いは、キーストーン補正を行う場所が、プロジェクタか、ＰＣかの違いである。
【００８８】
以上のように、投影装置２台を用いたスタック投影における自動補正処理（Ｓ７０４）が終了する。このような自動補正処理の後に、コンテンツ画像を再生して投影すれば、スクリーン上の投影画像の形状は、矩形になる。本実施形態では、投影している画素の集合の外形が矩形に近い状態になる。この外形を矩形とみなした際の縦横比は、コンテンツ画像の縦横比と略同じになる。なお、本実施形態において、スクリーンやプロジェクタに歪みが生じると、投影画像の形状が補正の前後において矩形からずれうるが、ここで説明する趣旨の範囲において本発明を適宜用いることが可能である。
【００８９】
［実施例２］
以下、図と共に本発明の第２の実施形態を説明する。
【００９０】
第２の実施形態では、投影装置２台を用いたマルチ投影における自動補正を示す。システム構成は、図２において、プロジェクタ１００ｃ、１００ｄが無い構成であり、プロジェクタ１００ａ、１００ｂの２台を有するシステムである。それ以外の装置構成は、第１の実施形態と同じである。また、装置のブロック図も図３、図４に示される通り、同じである。
【００９１】
自動補正のフローの図７のＳ７０１〜Ｓ７０３について、投影モードがマルチ投影になる点以外は同じである。Ｓ７０５において、マルチ投影の自動補正処理が実行される。
【００９２】
図１１、図１２を用いてマルチ投影の自動補正処理を説明する。
【００９３】
図１１は、マルチ投影の自動補正処理を説明するための、スクリーン９００における図である。図１１において、スクリーン９００は平面である。図１１において、プロジェクタ１００ａ、１００ｂのそれぞれの投影可能な領域１１０１ａ、１１０１ｂを実線で囲んで図示している。
【００９４】
図１２は、マルチ投影の自動補正処理における、ＰＣ２００のフローチャートである。マルチ投影の自動補正処理が開始されると、ＰＣ２００は補正対象となる全てのプロジェクタの投影可能な領域を検出する（Ｓ１２０１）。Ｓ１２０１での処理内容は、スタック投影における処理Ｓ１００１と同じであるので省略する。
【００９５】
次に、図１１の投影可能な領域の内部における、最大の矩形１１０２（図１１の点線）を算出する（図１２のＳ１２０２）。Ｓ１２０２における矩形の向きの決定方法は、スタック投影における処理Ｓ１００２と同じであるので省略する。
【００９６】
矩形の向きを決定した後に、投影可能な領域の内部において矩形が最大となるようにする。最大の矩形１１０２の４辺の決定方法において、図１１の上辺と下辺との決定方法はスタック投影のＳ１００２と同じであるので省略する。
【００９７】
図１１の左辺と右辺の決定方法はスタック投影のＳ１１０３と異なる。左辺を決定するには、まず図１１におけるプロジェクタ１００ａの投影可能な領域１１０１ａの左側の頂点であるＡ０およびＡ３を抽出する。次にこれら２つの頂点の中で、最も右側、すなわちｘ方向の最も右側、である頂点を選ぶ。図１１の場合、Ａ３が選ばれる。Ａ３を通り、スクリーン９００の面内においてｘ方向に垂直な直線の一部が、最大の矩形（点線）の左辺になる。同様に、Ｂ１、Ｂ２の２頂点の最も左側から右辺が決まる。このようにして４辺が決められた矩形は、マルチ投影として投影可能な範囲において最大化されていると言える。
【００９８】
次に、このようにして決められた最大の矩形１１０２と、コンテンツ画像との、縦横比を比較する（Ｓ１２０３）。Ｓ１２０３における処理の内容はスタック投影における処理Ｓ１００３と同じであるので省略する。
【００９９】
Ｓ１２０３の結果に基づき、次に投影の形状と位置とを決定する（Ｓ１２０４）。Ｓ１２０４において、補正後の投影領域１１０３の形状、大きさ、位置が決定される。すなわち補正後の投影領域１１０３の座標が決定される。本実施形態に記載のマルチ投影の場合、補正後の投影領域１１０３は、各プロジェクタの投影の、重畳領域と非重畳領域とから形成される。
【０１００】
次にＳ１２０１とＳ１２０４の結果に基づき、重畳領域１１０４を決定する（Ｓ１２０５）。重畳領域１１０４は、矩形であり、矩形の１辺を補正後の投影領域１１０３の１辺と平行であるような向きにする。また、重畳領域１１０４は、投影可能な領域１１０１ａおよび投影可能な領域１１０１ｂの共通領域であり、かつ、補正後の投影領域１１０３の内側であるようにする。このような範囲内において、重畳領域１１０４を図１１のように最大化することができる。以上のように、重畳領域１１０４を決定し、それ以外の補正後の投影領域１１０３を非重畳領域として決定することができる。
【０１０１】
次に、プロジェクタごとの投影領域を決定する（Ｓ１２０６）。本実施形態に記載の、プロジェクタ２台のマルチ投影においては、プロジェクタ１００ａが重畳領域１１０４およびそれより左側の非重畳領域を投影する。１００ｂは、重畳領域１１０４およびそれより右側の非重畳領域を投影する。
【０１０２】
次に、Ｓ１２０６で決められた、プロジェクタごとの投影領域を元に、プロジェクタごとの補正を実行する（Ｓ１２０７）。Ｓ１２０７において行われる処理が、スタック投影における処理Ｓ１００６と異なる点は、重畳領域に対して図５で示したエッジブレンド処理を行うことである。それ以外については、同じであるため省略する。
【０１０３】
以上のように、投影装置２台を用いたマルチ投影における自動補正処理（Ｓ７０５）が終了する。このような自動補正処理の後に、コンテンツ画像を再生して投影すれば、スクリーン上の投影画像の形状は、矩形になる。
【０１０４】
第２の実施形態では、プロジェクタの台数を２台として説明したが、台数や配置によらず同様の考え方を用いて本発明が適用される。
【０１０５】
［その他の実施形態］
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、装置に供給することによっても、達成されることは言うまでもない。このとき、供給された装置の制御部を含むコンピュータ（またはＣＰＵやＭＰＵ）は、記憶媒体に格納されたプログラムコードを読み出し実行する。
【０１０６】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１０７】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０１０８】
また、上述のプログラムコードの指示に基づき、装置上で稼動しているＯＳ（基本システムやオペレーティングシステム）などが処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０９】
さらに、記憶媒体から読み出されたプログラムコードが、装置に挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれ、前述した実施形態の機能が実現される場合も含まれることは言うまでもない。このとき、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行う。
【０１１０】
このように、実施形態はその他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、省略、置き換え、変更を行うことができる。
【符号の説明】
【０１１１】
１００、１００ａ、１００ｂ、１００ｃ、１００ｄ  投影装置
１０９  画像処理部
１０９ｃ  減光処理部
１０９ｄ  変形処理部
ｓｉｇ０１  元画像信号
２００  ＰＣ
２０１  ＣＰＵ
２０２  ＲＡＭ
２０４  操作部
２０５  表示部
３００  映像ケーブル
４００  撮像装置
５４０  重畳領域
８００  投影モード設定画面
８１０  補正対象プロジェクタ設定画面
９００  スクリーン
９０１  投影可能な領域
９０２  最大の矩形
９０３  補正後の投影領域
１１０１  投影可能な領域
１１０２  最大の矩形
１１０３  補正後の投影領域
【図１】
2018125819.tif 000005
【図２】
2018125819.tif 000006
【図３】
2018125819.tif 000007
【図４】
2018125819.tif 000008
【図５】
2018125819.tif 000009
【図６】
2018125819.tif 000010
【図７】
2018125819.tif 000011
【図８】
2018125819.tif 000012
【図９】
2018125819.tif 000013
【図１０】
2018125819.tif 000014
【図１１】
2018125819.tif 000015
【図１２】
2018125819.tif 000016
【図１３】
2018125819.tif 000017