(57)【特許請求の範囲】
【請求項１】
投写画面に対するユーザーの指示体による指示を受け取ることが可能なインタラクティブプロジェクターであって、
スクリーン面上に前記投写画面を投写する投写部と、
前記投写画面の領域を撮像する第１カメラ及び第２カメラを含む複数台のカメラと、
前記複数台のカメラによって撮像された前記指示体を含む複数の画像に基づいて、前記投写画面に対する前記指示体の三次元位置を検出する位置検出部と、
前記投写部によって前記投写画面の位置を検出するための特定の画像が投写されているときに、前記カメラによって撮像された前記特定の画像を含んだ撮像画像に基づいて、前記投写画面の三次元形状を表す曲面関数を算出する関数算出部と、
前記位置検出部が検出した前記指示体の三次元位置と、前記関数算出部によって算出された前記曲面関数とを用いて、前記指示体の前記投写画面への接触を検出する接触検出部と、を備え、
前記関数算出部は、前記特定の画像を含んだ前記撮像画像に基づいて、前記投写画面上の互いに異なる複数の基準点の三次元位置を検出し、前記複数の基準点の三次元位置に基づいて前記曲面関数を算出する、インタラクティブプロジェクター。
【請求項２】
請求項１に記載のインタラクティブプロジェクターであって、
前記関数算出部は、前記曲面関数を式（１）で表される関数として算出する、インタラクティブプロジェクター。
【数１】
0006459705.tif 000012
（ここで、Ｎ１、Ｎ２、Ｎ３は、Ｐ≧Ｎ１＋Ｎ２＋Ｎ３＋１となるゼロまたは正の整数であり、少なくとも一つは正の整数である。Ｐは、前記基準点の数である。ａｊ、ｂｊ、ｃｊ、ｄは、定数であり、ａｊ、ｂｊ、ｃｊの少なくとも１つはゼロではない。）
【請求項３】
請求項１に記載のインタラクティブプロジェクターであって、
前記関数算出部は、前記曲面関数を式（２）で表される関数として算出する、インタラクティブプロジェクター。
【数２】
0006459705.tif 000013
（ここで、Ｎ１、Ｎ２は、Ｐ≧Ｎ１＋Ｎ２＋１となるゼロまたは正の整数であり、少なくとも一つは正の整数である。Ｐは、前記基準点の数である。ａｊ、ｂｊ、ｄは、定数であり、ａｊ、ｂｊの少なくとも１つはゼロではない。）
【請求項４】
請求項１に記載のインタラクティブプロジェクターであって、
前記関数算出部は、前記曲面関数を式（３）で表される関数として算出する、インタラクティブプロジェクター。
【数３】
0006459705.tif 000014
（ここで、Ｍ１、Ｍ２、Ｍ３は、Ｐ≧Ｍ１＋Ｍ２＋Ｍ３＋１となるゼロまたは正の整数であり、少なくとも一つは正の整数である。Ｐは、前記基準点の数である。ａｋ、ｂｋ、ｃｋ、ｄは、定数であり、ａｋ、ｂｋ、ｃｋの少なくとも１つはゼロではない。）
【請求項５】
請求項１に記載のインタラクティブプロジェクターであって、
前記関数算出部は、前記曲面関数を式（４）で表される関数として算出する、インタラクティブプロジェクター。
【数４】
0006459705.tif 000015
（ここで、Ｍ１、Ｍ２は、Ｐ≧Ｍ１＋Ｍ２＋１となるゼロまたは正の整数であり、少なくとも一つは正の整数である。Ｐは、前記基準点の数である。ａｋ、ｂｋ、ｄは、定数であり、ａｋ、ｂｋの少なくとも１つはゼロではない。）
【請求項６】
請求項１から請求項５までのいずれか一項に記載のインタラクティブプロジェクターは、さらに、
前記接触検出部が前記指示体の前記投写画面への接触を検出しているときの前記指示体の三次元位置に基づいて、前記ユーザーの指示の内容を判定する制御部を備える、インタラクティブプロジェクター。
【請求項７】
インタラクティブプロジェクションシステムであって、
請求項１から請求項６までのいずれか一項に記載のインタラクティブプロジェクターと、
前記投写画面が投写されるスクリーン面を有するスクリーン板と、
前記投写画面への接触時と非接触時とで異なる発光パターンで指示体信号光を発光する発光部を備える自発光指示体と、前記発光部を備えない非発光指示体との少なくともいずれか一方を含む指示体と、
を備えるインタラクティブプロジェクションシステム。
【請求項８】
投写画面に対するユーザーの指示体による指示を受け取ることが可能なインタラクティブプロジェクターの制御方法であって、
スクリーン面上に前記投写画面を投写し、
第１カメラ及び第２カメラを含む複数台のカメラで前記投写画面の領域を撮像し、
前記複数台のカメラによって撮像された前記指示体を含む複数の画像に基づいて、前記投写画面に対する前記指示体の三次元位置を検出し、
前記投写画面の位置を検出するための特定の画像が投写されているときに、前記カメラによって撮像された前記特定の画像を含んだ撮像画像に基づいて、前記投写画面の三次元形状を表す曲面関数を算出し、
検出した前記指示体の三次元位置と、算出された前記曲面関数とを用いて、前記指示体の前記投写画面への接触を検出し、
前記曲面関数を算出する際に、前記特定の画像を含んだ前記撮像画像に基づいて、前記投写画面上の互いに異なる複数の基準点の三次元位置を検出し、前記複数の基準点の三次元位置に基づいて前記曲面関数を算出する、インタラクティブプロジェクターの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、投写画面に対するユーザーの指示体による指示を受け取ることが可能なインタラクティブプロジェクター、そのシステム、及び、そのプロジェクターの制御方法に関する。
【背景技術】
【０００２】
特許文献１，２には、投写画面をスクリーンに投写するとともに、指や発光するペンなどの対象物（object）を含む画像をカメラで撮像し、この撮像画像を用いて対象物の位置を検出することが可能な投写型表示装置（プロジェクター）が開示されている。指などの対象物は、投写画面に対して指示を行うための指示体として利用される。すなわち、プロジェクターは、対象物の先端がスクリーンに接しているときに投写画面に対して描画等の所定の指示が入力されているものと認識し、その指示に応じて投写画面を再描画する。従って、ユーザーは、投写画面をユーザーインターフェースとして用いて、各種の指示を入力することが可能である。このように、スクリーン上の投写画面を入力可能ユーザーインターフェースとして利用できるタイプのプロジェクターを、「インタラクティブプロジェクター」と呼ぶ。また、投写画面に対して指示を行うために利用される対象物を「指示体（pointing element）」と呼ぶ。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１５０６３６号公報
【特許文献２】特表２００８−５２００３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
典型的なインタラクティブプロジェクターでは、指示体の先端がスクリーンに接しているか否かに応じて、指示体によって指示がなされているか否かを判定する。指示体の接触は、指示体の先端とスクリーンとの間の距離に基づいて検出することができる。しかしながら、複数台のカメラを用いて指示体の先端の三次元位置を検出する構成のインタラクティブプロジェクターにおいて、スクリーンが曲面の場合、指示体とスクリーンとの距離の検出精度が高くなく、指示体の接触の検出精度が十分でなかった。そのため、曲面のスクリーンに対する指示体の接触の検出精度の向上が望まれていた。
【課題を解決するための手段】
【０００５】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００６】
（１）本発明の一形態によれば、投写画面に対するユーザーの指示体による指示を受け取ることが可能なインタラクティブプロジェクターが提供される。このインタラクティブプロジェクターは、スクリーン面上に前記投写画面を投写する投写部と、前記投写画面の領域を撮像する第１カメラ及び第２カメラを含む複数台のカメラと、前記複数台のカメラによって撮像された前記指示体を含む複数の画像に基づいて、前記投写画面に対する前記指示体の三次元位置を検出する位置検出部と、前記投写部によって前記投写画面の位置を検出するための特定の画像が投写されているときに、前記カメラによって撮像された前記特定の画像を含んだ撮像画像に基づいて、前記投写画面の三次元形状を表す曲面関数を算出する関数算出部と、前記位置検出部が検出した前記指示体の三次元位置と、前記関数算出部によって算出された前記曲面関数とを用いて、前記指示体の前記投写画面への接触を検出する接触検出部と、を備え、前記関数算出部は、前記特定の画像を含んだ前記撮像画像に基づいて、前記投写画面上の互いに異なる複数の基準点の三次元位置を検出し、前記複数の基準点の三次元位置に基づいて前記曲面関数を算出する。
このインタラクティブプロジェクターでは、投写画面上の複数の三次元位置に基づいて投写画面の三次元形状を表す曲面関数を算出する。指示体の投写画面への接触の検出は、指示体の三次元位置と、投写画面の曲面関数を用いて算出されるので、曲面のスクリーンに対する指示体の接触の検出精度を向上させることができる。
【０００７】
（２）上記インタラクティブプロジェクターにおいて、前記関数算出部は、前記曲面関数を式（１）で表される関数として算出してもよい。
【数１】
0006459705.tif 000002
（ここで、Ｎ１、Ｎ２、Ｎ３は、Ｐ≧Ｎ１＋Ｎ２＋Ｎ３＋１となるゼロまたは正の整数であり、少なくとも一つは正の整数である。Ｐは、前記基準点の数である。ａｊ、ｂｊ、ｃｊ、ｄは、定数であり、ａｊ、ｂｊ、ｃｊの少なくとも１つはゼロではない。）
この構成によれば、投写画面上の基準点の三次元位置に基づいて、容易に投写画面の三次元形状を曲面関数として算出することができる。
【０００８】
（３）上記インタラクティブプロジェクターにおいて、前記関数算出部は、前記曲面関数を式（２）で表される関数として算出してもよい。
【数２】
0006459705.tif 000003
（ここで、Ｎ１、Ｎ２は、Ｐ≧Ｎ１＋Ｎ２＋１となるゼロまたは正の整数であり、少なくとも一つは正の整数である。Ｐは、前記基準点の数である。ａｊ、ｂｊ、ｄは、定数であり、ａｊ、ｂｊの少なくとも１つはゼロではない。）
この構成によれば、同様に、投写画面上の基準点の三次元位置に基づいて、容易に投写画面の三次元形状を曲面関数として算出することができる。
【０００９】
（４）上記インタラクティブプロジェクターにおいて、前記関数算出部は、前記曲面関数を式（３）で表される関数として算出してもよい。
【数３】
0006459705.tif 000004
（ここで、Ｍ１、Ｍ２、Ｍ３は、Ｐ≧Ｍ１＋Ｍ２＋Ｍ３＋１となるゼロまたは正の整数であり、少なくとも一つは正の整数である。Ｐは、前記基準点の数である。ａｋ、ｂｋ、ｃｋ、ｄは、定数であり、ａｋ、ｂｋ、ｃｋの少なくとも１つはゼロではない。）
この構成によれば、投写画面上の基準点の三次元位置に基づいて、より高速に投写画面の三次元形状を曲面関数として算出することができる。
【００１０】
（５）上記インタラクティブプロジェクターにおいて、前記関数算出部は、前記曲面関数を式（４）で表される関数として算出してもよい。
【数４】
0006459705.tif 000005
（ここで、Ｍ１、Ｍ２は、Ｐ≧Ｍ１＋Ｍ２＋１となるゼロまたは正の整数であり、少なくとも一つは正の整数である。Ｐは、前記基準点の数である。ａｋ、ｂｋ、ｄは、定数であり、ａｋ、ｂｋの少なくとも１つはゼロではない。）
この構成によれば、同様に、投写画面上の基準点の三次元位置に基づいて、より高速に投写画面の三次元形状を曲面関数として算出することができる。
【００１１】
（６）上記インタラクティブプロジェクターは、さらに、前記接触検出部が前記指示体の前記投写画面への接触を検出しているときの前記指示体の三次元位置に基づいて、前記ユーザーの指示の内容を判定する制御部を備えていてもよい。
この構成によれば、曲面のスクリーンに対する指示体を用いたユーザーの指示の内容を判定する精度を向上させることができる。
【００１２】
本発明は、種々の形態で実現することが可能であり、例えば、自発光指示体と非発光指示体との少なくともいずれか一方を含む指示体とスクリーンとインタラクティブプロジェクターを備えるシステム、インタラクティブプロジェクターの制御方法又は制御装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した一時的でない記録媒体（non-transitory storage medium）等の様々な形態で実現することができる。
【図面の簡単な説明】
【００１３】
【図１】インタラクティブプロジェクションシステムの斜視図である。
【図２】インタラクションプロジェクションシステムの側面図および正面図である。
【図３】プロジェクターと自発光指示体の内部構成を示すブロック図である。
【図４】自発光指示体と非発光指示体を利用した操作の様子を示す説明図である。
【図５】測定用パターン画像が表示された投写画面を例示した図である。
【図６】曲面形状のスクリーンに測定用パターン画像が投写された第１の図である。
【図７】曲面形状のスクリーンに測定用パターン画像が投写された第２の図である。
【発明を実施するための形態】
【００１４】
Ａ１．システムの概要
図１は、本発明の一実施形態におけるインタラクティブプロジェクションシステム９００の斜視図である。このシステム９００は、インタラクティブプロジェクター１００と、スクリーン板９２０と、自発光指示体７０とを有している。スクリーン板９２０の前面は、投写スクリーン面ＳＳ（projection Screen Surface）として利用される。プロジェクター１００は、支持部材９１０によってスクリーン板９２０の前方かつ上方に固定されている。なお、図１では投写スクリーン面ＳＳを鉛直に配置しているが、投写スクリーン面ＳＳを水平に配置してこのシステム９００を使用することも可能である。
【００１５】
プロジェクター１００は、投写スクリーン面ＳＳ上に投写画面ＰＳ（Projected Screen）を投写する。投写画面ＰＳは、通常は、プロジェクター１００内で描画された画像を含んでいる。プロジェクター１００内で描画された画像がない場合には、プロジェクター１００から投写画面ＰＳに光が照射されて、白色画像が表示される。本明細書において、「投写スクリーン面ＳＳ」（又は「スクリーン面ＳＳ」）とは、画像が投写される部材の表面を意味する。また、「投写画面ＰＳ」とは、プロジェクター１００によって投写スクリーン面ＳＳ上に投写された画像の領域を意味する。通常は、投写スクリーン面ＳＳの一部に投写画面ＰＳが投写される。
【００１６】
自発光指示体７０は、発光可能な先端部７１と、ユーザーが保持する軸部７２と、軸部７２に設けられたボタンスイッチ７３とを有するペン型の指示体である。自発光指示体７０の構成や機能については後述する。このシステム９００では、１つ又は複数の自発光指示体７０とともに、１つ又は複数の非発光指示体８０（非発光のペンや指など）を利用可能である。以下、自発光指示体７０と非発光指示体８０とを区別しない場合は、単に、指示体７８０とも呼ぶ。
【００１７】
図２（Ａ）は、インタラクティブプロジェクションシステム９００の側面図であり、図２（Ｂ）はその正面図である。本明細書では、スクリーン面ＳＳの左右に沿った方向をＸ方向と定義し、スクリーン面ＳＳの上下に沿った方向をＹ方向と定義し、スクリーン面ＳＳの法線に沿った方向をＺ方向と定義している。なお、便宜上、Ｘ方向を「左右方向」とも呼び、Ｙ方向を「上下方向」とも呼び、Ｚ方向を「前後方向」とも呼ぶ。また、Ｙ方向（上下方向）のうち、プロジェクター１００から見て投写画面ＰＳが存在する方向を「下方向」と呼ぶ。なお、図２（Ａ）では、図示の便宜上、スクリーン板９２０のうちの投写画面ＰＳの範囲にハッチングを付している。
【００１８】
プロジェクター１００は、投写画面ＰＳをスクリーン面ＳＳ上に投写する投写レンズ２１０と、投写画面ＰＳの領域を撮像する第１カメラ３１０及び第２カメラ３２０と、指示体７８０に検出光を照明するための検出光照射部４１０とを有している。検出光としては、例えば近赤外光が使用される。２台のカメラ３１０，３２０は、検出光の波長を含む波長領域の光を受光して撮像する第１の撮像機能を少なくとも有している。２台のカメラ３１０，３２０のうちの少なくとも一方は、更に、可視光を含む光を受光して撮像する第２の撮像機能を有し、これらの２つの撮像機能を切り替え可能に構成されている。例えば、２台のカメラ３１０，３２０は、可視光を遮断して近赤外光のみを通過させる近赤外フィルターをレンズの前に配置したりレンズの前から後退させたりすることが可能な近赤外フィルター切換機構（図示せず）をそれぞれ備えることが好ましい。２台のカメラ３１０，３２０は、左右方向（Ｘ方向）の位置が同じで、前後方向（Ｚ方向）に所定の距離を空けて並んで配置されている。２台のカメラ３１０，３２０は、本実施形態に限定されない。例えば、前後方向（Ｚ方向）の位置が同じで、左右方向（Ｘ方向）に所定の距離を空けて並んで配置されてもよい。また、Ｘ，Ｙ，Ｚ全ての方向において位置が異なってもよい。２台のカメラをＺ方向の位置を変えて（前後方向にずらして）配置すると、三角測量による三次元位置の算出におけるＺ座標の精度が高いため、好ましい。
【００１９】
図２（Ｂ）の例は、インタラクティブプロジェクションシステム９００がホワイトボードモードで動作している様子を示している。ホワイトボードモードは、自発光指示体７０や非発光指示体８０を用いて投写画面ＰＳ上にユーザーが任意に描画できるモードである。スクリーン面ＳＳ上には、ツールボックスＴＢを含む投写画面ＰＳが投写されている。このツールボックスＴＢは、処理を元に戻す取消ボタンＵＤＢと、マウスポインターを選択するポインターボタンＰＴＢと、描画用のペンツールを選択するペンボタンＰＥＢと、描画された画像を消去する消しゴムツールを選択する消しゴムボタンＥＲＢと、画面を次に進めたり前に戻したりする前方／後方ボタンＦＲＢと、を含んでいる。ユーザーは、指示体を用いてこれらのボタンにタッチすることによって、そのボタンに応じた処理を行ったり、ツールを選択したりすることが可能である。なお、システム９００の起動直後は、マウスポインターがデフォールトツールとして選択されるようにしてもよい。図２（Ｂ）の例では、ユーザーがペンツールを選択した後、自発光指示体７０の先端部７１をスクリーン面ＳＳに接した状態で投写画面ＰＳ内で移動させることにより、投写画面ＰＳ内に線が描画されてゆく様子が描かれている。この線の描画は、プロジェクター１００の内部の投写画像生成部（後述）によって行われる。
【００２０】
なお、インタラクティブプロジェクションシステム９００は、ホワイトボードモード以外の他のモードでも動作可能である。例えば、このシステム９００は、パーソナルコンピューター（図示せず）から通信回線を介して転送されたデータの画像を投写画面ＰＳに表示するＰＣインタラクティブモードでも動作可能である。ＰＣインタラクティブモードにおいては、例えば表計算ソフトウェアなどのデータの画像が表示され、その画像内に表示された各種のツールやアイコンを利用してデータの入力、作成、修正等を行うことが可能となる。
【００２１】
図３は、インタラクティブプロジェクター１００と自発光指示体７０の内部構成を示すブロック図である。プロジェクター１００は、制御部７００と、投写部２００と、投写画像生成部５００と、位置検出部６００と、接触検出部８００と、撮像部３００と、検出光照射部４１０と、信号光送信部４３０とを有している。
【００２２】
制御部７００は、プロジェクター１００内部の各部の制御を行う。また、制御部７００は、位置検出部６００で検出された指示体７８０の三次元位置、および接触検出部８００による指示体７８０の接触検出に基づいて、指示体７８０によって投写画面ＰＳ上で行われた指示の内容を判定するとともに、その指示の内容に従って投写画像を作成又は変更することを投写画像生成部５００に指令する。
【００２３】
投写画像生成部５００は、投写画像を記憶する投写画像メモリー５１０を有しており、投写部２００によってスクリーン面ＳＳ上に投写される投写画像を生成する機能を有する。投写画像生成部５００は、更に、投写画面ＰＳ（図２（Ｂ））の台形歪みを補正するキーストーン補正部としての機能を有することが好ましい。
【００２４】
投写部２００は、投写画像生成部５００で生成された投写画像をスクリーン面ＳＳ上に投写する機能を有する。投写部２００は、図２で説明した投写レンズ２１０の他に、光変調部２２０と、光源２３０とを有する。光変調部２２０は、投写画像メモリー５１０から与えられる投写画像データに応じて光源２３０からの光を変調することによって投写画像光ＩＭＬを形成する。この投写画像光ＩＭＬは、典型的には、ＲＧＢの３色の可視光を含むカラー画像光であり、投写レンズ２１０によってスクリーン面ＳＳ上に投写される。なお、光源２３０としては、超高圧水銀ランプ等の光源ランプの他、発光ダイオードやレーザーダイオード等の種々の光源を採用可能である。また、光変調部２２０としては、透過型又は反射型の液晶パネルやデジタルミラーデバイス等を採用可能であり、色光別に複数の変調部２２０を備えた構成としてもよい。
【００２５】
検出光照射部４１０は、指示体７８０の先端部を検出するための照射検出光ＩＤＬをスクリーン面ＳＳとその前方の空間にわたって照射する。照射検出光ＩＤＬとしては、例えば近赤外光が使用される。検出光照射部４１０は、カメラ３１０、３２０の撮像タイミングを含む所定の期間にのみ点灯し、他の期間では消灯する。あるいは、検出光照射部４１０は、システム９００の動作中は常に点灯状態に維持されるようにしてもよい。
【００２６】
信号光送信部４３０は、同期用の近赤外光信号である装置信号光ＡＳＬを送信する機能を有する。装置信号光ＡＳＬは、同期用の近赤外光信号であり、プロジェクター１００が起動されると、信号光送信部４３０が自発光指示体７０に対して定期的に発する。自発光指示体７０の先端発光部７７は、装置信号光ＡＳＬに同期して、予め定められた発光パターン（発光シーケンス）を有する近赤外光である指示体信号光ＰＳＬ（後述する）を発する。また、撮像部３００のカメラ３１０，３２０は、指示体７８０の位置検出を行う際に、装置信号光ＡＳＬに同期した所定のタイミングで撮像を実行する。
【００２７】
撮像部３００は、図２で説明した第１カメラ３１０と第２カメラ３２０とを有している。前述したように、２台のカメラ３１０，３２０は、検出光の波長を含む波長領域の光を受光して撮像する機能を有する。図３の例では、検出光照射部４１０によって照射された照射検出光ＩＤＬが指示体７８０で反射され、その反射検出光ＲＤＬが２台のカメラ３１０，３２０によって受光されて撮像される様子が描かれている。２台のカメラ３１０，３２０は、更に、自発光指示体７０の先端発光部７７から発せられる近赤外光である指示体信号光ＰＳＬも受光して撮像する。２台のカメラ３１０，３２０の撮像は、検出光照射部４１０から発せられる照射検出光ＩＤＬがオン状態（発光状態）である第１の期間と、照射検出光ＩＤＬがオフ状態（非発光状態）である第２の期間と、の両方で実行される。位置検出部６００は、これらの２種類の期間における画像を比較することによって、画像内に含まれる個々の指示体が、自発光指示体７０と非発光指示体８０のいずれであるかを判定することができる。
【００２８】
なお、２台のカメラ３１０，３２０の少なくとも一方は、近赤外光を含む光を用いて撮像する機能に加えて、可視光を含む光を用いて撮像する機能を有する。こうすれば、スクリーン面ＳＳ上に投写された投写画面ＰＳをそのカメラで撮像し、その画像を利用して後述するように、関数算出部８２０が投写画面ＰＳの三次元の曲面関数を算出することができる。また、投写画像生成部５００がキーストーン補正を実行することができる。１台以上のカメラを利用したキーストーン補正の方法は周知なので、ここではその説明は省略する。
【００２９】
位置検出部６００は、２台のカメラ３１０，３２０で撮像された画像（以下、「撮像画像」とも呼ぶ。）を分析して、２台のカメラの視差を利用した三角測量の原理によって指示体７８０（自発光指示体７０や非発光指示体８０）の先端部の三次元位置座標を算出する機能を有する。この際、位置検出部６００は、上述の第１の期間と第２の期間における撮像画像を比較することによって、画像内に含まれる個々の指示体７８０が、自発光指示体７０と非発光指示体８０のいずれであるかを判定する（後述する）。位置検出部６００が検出する三次元座標の座標系は、カメラ３１０、３２０のうち、可視光を含む光を用いて撮像する機能を有するカメラの座標系（カメラ座標系）であることが好ましい。また、座標系の原点は、後述する関数算出部８２０が、プロジェクター１００の起動時にスクリーン面ＳＳ上に設定した原点を利用することが好ましい。
【００３０】
接触検出部８００は、指示体７８０（自発光指示体７０や非発光指示体８０）の投写画面ＰＳ（スクリーン面ＳＳ）への接触を検出する。本実施形態の接触検出部８００は、自発光指示体７０の投写画面ＰＳへの接触の検出を、自発光指示体７０が発する指示体信号光ＰＳＬの発光パターンに基づいて実行し、非発光指示体８０の投写画面ＰＳへの接触の検出を、位置検出部６００によって検出された三次元位置座標に基づいて実行する。但し、接触検出部８００は、自発光指示体７０の投写画面ＰＳへの接触の検出を、非発光指示体８０の投写画面ＰＳへの接触の検出方法と同様の方法によって実行してもよい。
【００３１】
本実施形態の接触検出部８００は、投写画面ＰＳ（スクリーン面ＳＳ）の三次元形状を表す曲面関数を算出する関数算出部８２０を含んでいる。接触検出部８００は、非発光指示体８０の投写画面ＰＳへの接触の検出を、位置検出部６００によって検出された非発光指示体８０の三次元位置座標と、関数算出部８２０によって算出された投写画面ＰＳの曲面関数とに基づいて実行する。具体的には、接触検出部８００は、非発光指示体８０の三次元位置座標と、投写画面ＰＳの曲面関数から、非発光指示体８０と投写画面ＰＳとの間の距離の算出し、これらの間の距離がゼロまたはゼロに近い誤差許容値以下になったときに、非発光指示体８０が投写画面ＰＳに接触していると判定する。接触検出部８００による非発光指示体８０の接触の検出方法、および、関数算出部８２０による曲面関数の算出方法については、後に詳述する。
【００３２】
自発光指示体７０には、ボタンスイッチ７３の他に、信号光受信部７４と、制御部７５と、先端スイッチ７６と、先端発光部７７とが設けられている。信号光受信部７４は、プロジェクター１００の信号光送信部４３０から発せられた装置信号光ＡＳＬを受信する機能を有する。先端スイッチ７６は、自発光指示体７０の先端部７１が押されるとオン状態になり、先端部７１が解放されるとオフ状態になるスイッチである。先端スイッチ７６は、通常はオフ状態にあり、自発光指示体７０の先端部７１がスクリーン面ＳＳに接触するとその接触圧によってオン状態になる。先端スイッチ７６がオフ状態のときには、制御部７５は、先端スイッチ７６がオフ状態であることを示す特定の第１の発光パターンで先端発光部７７を発光させることによって、第１の発光パターンを有する指示体信号光ＰＳＬを発する。一方、先端スイッチ７６がオン状態になると、制御部７５は、先端スイッチ７６がオン状態であることを示す特定の第２の発光パターンで先端発光部７７を発光させることによって、第２の発光パターンを有する指示体信号光ＰＳＬを発する。これらの第１の発光パターンと第２の発光パターンは、互いに異なるので、位置検出部６００は、２台のカメラ３１０，３２０で撮像された画像を分析することによって、先端スイッチ７６がオン状態かオフ状態かを識別することが可能である。また、接触検出部８００は位置検出部６００の分析結果に基づいて、自発光指示体７０の投写画面ＰＳへの接触を検出可能である。
【００３３】
自発光指示体７０のボタンスイッチ７３は、先端スイッチ７６と同じ機能を有する。従って、制御部７５は、ユーザーによってボタンスイッチ７３が押された状態では上記第２の発光パターンで先端発光部７７を発光させ、ボタンスイッチ７３が押されていない状態では上記第１の発光パターンで先端発光部７７を発光させる。換言すれば、制御部７５は、先端スイッチ７６とボタンスイッチ７３の少なくとも一方がオンの状態では上記第２の発光パターンで先端発光部７７を発光させ、先端スイッチ７６とボタンスイッチ７３の両方がオフの状態では上記第１の発光パターンで先端発光部７７を発光させる。
【００３４】
但し、ボタンスイッチ７３に対して先端スイッチ７６と異なる機能を割り当てるようにしてもよい。例えば、ボタンスイッチ７３に対してマウスの右クリックボタンと同じ機能を割り当てた場合には、ユーザーがボタンスイッチ７３を押すと、右クリックの指示がプロジェクター１００の制御部７００に伝達され、その指示に応じた処理が実行される。このように、ボタンスイッチ７３に対して先端スイッチ７６と異なる機能を割り当てた場合には、先端発光部７７は、先端スイッチ７６のオン／オフ状態及びボタンスイッチ７３のオン／オフ状態に応じて、互いに異なる４つの発光パターンで発光する。この場合には、自発光指示体７０は、先端スイッチ７６とボタンスイッチ７３のオン／オフ状態の４つの組み合わせを区別しつつ、プロジェクター１００に伝達することが可能である。
【００３５】
図４は、自発光指示体７０と非発光指示体８０を利用した操作の様子を示す説明図である。この例では、自発光指示体７０の先端部７１と非発光指示体８０の先端部８１はいずれもスクリーン面ＳＳから離れている。自発光指示体７０の先端部７１のＸＹ座標（Ｘ７１，Ｙ７１）は、ツールボックスＴＢの消しゴムボタンＥＲＢの上にある。また、ここでは、自発光指示体７０の先端部７１の機能を表すツールとしてマウスポインターＰＴが選択されており、マウスポインターＰＴの先端ＯＰ７１が消しゴムボタンＥＲＢの上に存在するように、マウスポインターＰＴが投写画面ＰＳに描画されている。前述したように、自発光指示体７０の先端部７１の三次元位置は、２台のカメラ３１０，３２０で撮像された画像を用いた三角測量で決定される。従って、投写画面ＰＳ上において、三角測量で決定された先端部７１の三次元位置座標（Ｘ７１，Ｙ７１，Ｚ７１）のうちのＸＹ座標（Ｘ７１，Ｙ７１）の位置にマウスポインターＰＴの先端にある操作ポイントＯＰ７１が配置されようにマウスポインターＰＴが描画される。すなわち、マウスポインターＰＴの先端ＯＰ７１は、自発光指示体７０の先端部７１の三次元位置座標（Ｘ７１，Ｙ７１，Ｚ７１）のうちのＸＹ座標（Ｘ７１，Ｙ７１）に配置され、この位置においてユーザーの指示が行われる。例えば、ユーザーは、この状態で自発光指示体７０の先端部７１を投写画面ＰＳ上に接触させて、消しゴムツールを選択することが可能である。また、ユーザーは、この状態で自発光指示体７０のボタンスイッチ７３を押すことによって、消しゴムツールを選択することも可能である。このように、本実施形態では、自発光指示体７０がスクリーン面ＳＳから離間した状態にある場合にも、ボタンスイッチ７３を押すことによって、先端部７１のＸＹ座標（Ｘ７１，Ｙ７１）に配置される操作ポイントＯＰ７１における投写画面ＰＳの内容に応じた指示をプロジェクター１００に与えることが可能である。
【００３６】
図４（Ｂ）では、また、非発光指示体８０の先端部８１の機能を表すツールとしてペンツールＰＥが選択されており、ペンツールＰＥが投写画面ＰＳに描画されている。前述したように、非発光指示体８０の先端部８１の三次元位置も、２台のカメラ３１０，３２０で撮像された画像を用いた三角測量で決定される。従って、投写画面ＰＳ上において、三角測量で決定された先端部８１の三次元位置座標（Ｘ８１，Ｙ８１，Ｚ８１）のうちのＸＹ座標（Ｘ８１，Ｙ８１）の位置にペンツールＰＥの先端にある操作ポイントＯＰ８１が配置されようにペンツールＰＥが描画される。但し、非発光指示体８０を利用してユーザーが指示をプロジェクター１００に与える際には、非発光指示体８０の先端部８１を投写画面ＰＳ上に接触させた状態でその指示（描画やツールの選択など）が行なわれる。
【００３７】
図４の例では、指示体７８０（自発光指示体７０や非発光指示体８０）の先端部が投写画面ＰＳから離れている場合にも、個々の指示体によって選択されたツール（マウスポインターＰＴやペンツールＰＥ）が投写画面ＰＳに描画されて表示される。従って、ユーザーが指示体の先端部を投写画面ＰＳに接触していない場合にも、その指示体によってどのツールが選択されているのかを理解し易く、操作が容易であるという利点がある。また、ツールの操作ポイントＯＰが指示体の先端部の三次元位置座標のうちのＸＹ座標の位置に配置されるようにそのツールが描画されるので、ユーザーが、利用中のツールの位置を適切に認識できるという利点がある。
【００３８】
なお、このインタラクティブプロジェクションシステム９００は、複数の自発光指示体７０を同時に利用可能に構成されている。この場合には、上述した指示体信号光ＰＳＬの発光パターンは、複数の自発光指示体７０を識別できる固有の発光パターンであることが好ましい。より具体的に言えば、Ｎ個（Ｎは２以上の整数）の自発光指示体７０を同時に利用可能な場合には、指示体信号光ＰＳＬの発光パターンは、Ｎ個の自発光指示体７０を区別できるものであることが好ましい。なお、１組の発光パターンに複数回の単位発光期間が含まれている場合に、１回の単位発光期間では、発光と非発光の２値を表現することができる。ここで、１回の単位発光期間は、自発光指示体７０の先端発光部７７が、オン／オフの１ビットの情報を表現する期間に相当する。１組の発光パターンがＭ個（Ｍは２以上の整数）の単位発光期間で構成される場合には、１組の発光パターンによって２Ｍ−１個の状態を区別できる。従って、１組の発光パターンを構成する単位発光期間の数Ｍは、次式（５）を満足するように設定されることが好ましい。
【数５】
0006459705.tif 000006
ここで、Ｑは自発光指示体７０のスイッチ７３，７６で区別される状態の数であり、本実施形態の例ではＱ＝２又はＱ＝４である。例えば、Ｑ＝４の場合には、Ｎ＝２のときにはＭを３以上の整数に設定し、Ｎ＝３〜４のときにはＭを４以上の整数に設定することが好ましい。このとき、位置検出部６００（又は制御部７００）がＮ個の自発光指示体７０、及び、各自発光指示体７０のスイッチ７３，７６の状態を識別する際には、１組の発光パターンのＭ個の単位発光期間において各カメラ３１０，３２０でそれぞれ撮像されたＭ枚の画像を用いてその識別を実行する。なお、このＭビットの発光パターンは、照射検出光ＩＤＬをオフの状態に維持した状態で指示体信号光ＰＳＬをオン又はオフに設定したパターンであり、カメラ３１０，３２０で撮像される画像には非発光指示体８０が写らない。そこで、非発光指示体８０の位置を検出するために用いる画像を撮像するために、照射検出光ＩＤＬをオン状態とした１ビットの単位発光期間を更に追加することが好ましい。但し、位置検出用の単位発光期間では、指示体信号光ＰＳＬはオン／オフのいずれでも良い。この位置検出用の単位発光期間で得られた画像は、自発光指示体７０の位置検出にも利用することが可能である。
【００３９】
図３に描かれている５種類の信号光の具体例をまとめると以下の通りである。
（１）投写画像光ＩＭＬ：スクリーン面ＳＳに投写画面ＰＳを投写するために、投写レンズ２１０によってスクリーン面ＳＳ上に投写される画像光（可視光）である。
（２）照射検出光ＩＤＬ： 指示体７８０（自発光指示体７０及び非発光指示体８０）の先端部を検出するために、検出光照射部４１０によってスクリーン面ＳＳとその前方の空間にわたって照射される近赤外光である。
（３）反射検出光ＲＤＬ：照射検出光ＩＤＬとして照射された近赤外光のうち、指示体７８０（自発光指示体７０及び非発光指示体８０）によって反射され、２台のカメラ３１０，３２０によって受光される近赤外光である。
（４）装置信号光ＡＳＬ：プロジェクター１００と自発光指示体７０との同期をとるために、プロジェクター１００の信号光送信部４３０から定期的に発せられる近赤外光である。
（５）指示体信号光ＰＳＬ：装置信号光ＡＳＬに同期したタイミングで、自発光指示体７０の先端発光部７７から発せられる近赤外光である。指示体信号光ＰＳＬの発光パターンは、自発光指示体７０のスイッチ７３，７６のオン／オフ状態に応じて変更される。また、複数の自発光指示体７０を識別する固有の発光パターンを有する。
【００４０】
本実施形態において、自発光指示体７０と非発光指示体８０の先端部の位置検出、及び、自発光指示体７０と非発光指示体８０により指示される内容の判別は、それぞれ以下のように実行される。
【００４１】
Ａ２．自発光指示体７０の位置検出方法及び指示内容の判別方法の概要
自発光指示体７０の先端部７１の三次元位置座標（Ｘ７１，Ｙ７１，Ｚ７１）は、位置検出部６００が、２台のカメラ３１０，３２０により撮像された画像を用いて三角測量に従って決定する。この際、自発光指示体７０であるか否かは、所定の複数のタイミングで撮像された画像に先端発光部７７の発光パターンが現れているか否かを判断することによって認識可能である。また、自発光指示体７０の先端部７１がスクリーン面ＳＳに接触しているか否か（すなわち先端スイッチ７６がオンか否か）についても、上記複数のタイミングで撮像された画像における先端発光部７７の発光パターンを用いて判別可能である。位置検出部６００および接触検出部８００によって、自発光指示体７０の先端部７１の三次元位置の検出と、先端部７１のスクリーン面ＳＳへの接触を検出することができる。制御部７００は、位置検出部６００および接触検出部８００の検出結果に基づいて、自発光指示体７０による指示内容を判別して、指示内容に応じた画像を投写画像生成部５００に生成させて、投写部２００によってスクリーン面ＳＳ上に指示内容に応じた画像を投写させる。例えば、図４（Ｂ）に例示したように、先端部７１のＸＹ座標（Ｘ７１，Ｙ７１）の位置がツールボックスＴＢ内のいずれかのボタンの上にある状態で先端スイッチ７６がオンになった場合には、そのボタンのツールが選択される。また、図２（Ｂ）に例示したように、先端部７１のＸＹ座標（Ｘ７１，Ｙ７１）が投写画面ＰＳ内のツールボックスＴＢ以外の位置にある状態で先端スイッチ７６がオンになった場合には、選択されたツールによる処理（例えば描画）が選択される。制御部７００は、自発光指示体７０の先端部７１のＸＹ座標（Ｘ７１，Ｙ７１）を利用し、予め選択されているポインターやマークが投写画面ＰＳ内の位置（Ｘ７１，Ｙ７１）に配置されるように、そのポインターやマークを投写画像生成部５００に描画させる。また、制御部７００は、自発光指示体７０によって指示された内容に従った処理を実行して、投写画像生成部５００にその処理結果を含む画像を描画させる。
【００４２】
Ａ３．非発光指示体８０の位置検出方法及び指示内容の判別方法の概要
非発光指示体８０の先端部８１の三次元位置座標（Ｘ８１，Ｙ８１，Ｚ８１）も、２台のカメラ３１０，３２０により撮像された画像を用いて、三角測量に従って決定される。この際、非発光指示体８０であるか否かは、所定の複数のタイミングで撮像された画像に自発光指示体７０の発光パターンが現れているか否かを判断することによって認識可能である。なお、２台のカメラ３１０，３２０により撮像された２枚の画像における非発光指示体８０の先端部８１の位置は、テンプレートマッチングや特徴抽出等の周知の技術を利用して決定することができる。例えば、テンプレートマッチングによって指である非発光指示体８０の先端部８１を認識する場合には、指に関する複数のテンプレートを予め準備しておき、２台のカメラ３１０，３２０により撮像された画像において、これらのテンプレートに適合する部分を検索することによって指の先端部８１を認識することが可能である。接触検出部８００は、非発光指示体８０の先端部８１がスクリーン面ＳＳに接しているか否かについて、位置検出部６００が三角測量で決定した先端部８１のＺ座標値と、投写画面ＰＳの曲面関数から算出されるスクリーン面ＳＳのＺ座標値との差が微小な許容差以下か否か、すなわち、先端部８１がスクリーン面ＳＳの表面に十分に近いか否かに応じて判定する。この許容差としては、例えば、２ｍｍ〜６ｍｍ程度の小さな値を使用することが好ましい。制御部７００は、接触検出部８００が非発光指示体８０の先端部８１がスクリーン面ＳＳに接していると判定した場合には、その接触位置における投写スクリーン面ＳＳの内容に応じてその指示内容を判別する。また、制御部７００は、位置検出部６００で検出された非発光指示体８０の先端のＸＹ座標（Ｘ８１，Ｙ８１）を利用し、予め選択されているポインターやマークが投写画面ＰＳ内の位置（Ｘ８１，Ｙ８１）に配置されるように、そのポインターやマークを投写画像生成部５００に描画させてもよい。また、制御部７００は、非発光指示体８０によって指示された内容に従った処理を実行して、投写画像生成部５００にその処理結果を含む画像を描画させてもよい。
【００４３】
Ａ４．投写画面ＰＳの曲面関数の算出（その１）
図５は、投写画面ＰＳの曲面関数の算出に使用される測定用パターン画像ＣＰＭが表示された投写画面ＰＳを例示した図である。関数算出部８２０は、以下の方法によって投写画面ＰＳの三次元の曲面関数を算出することができる。まず、投写部２００は、プロジェクター１００の起動時に測定用パターン画像ＣＰＭ（キャリブレーションパターン画像）が表された投写画面ＰＳを投写スクリーン面ＳＳに投射する。測定用パターン画像ＣＰＭは、複数の基準点Ｐｃを含んだ画像であり、測定用パターン画像データとして図示しない記憶部に予め記憶されている。本実施例では、測定用パターン画像ＣＰＭには、２５個の基準点Ｐｃ（Ｐｃ１〜Ｐｃ２５）が縦方向に５個、横方向に５個となるように並んで配置されている。測定用パターン画像ＣＰＭに含まれる基準点Ｐｃの数Ｐは、Ｐ≧３であれば、上記の数に限定されない。但し、基準点Ｐｃは、測定用パターン画像ＣＰＭ内で行列状に規則正しく配列されていることが好ましい。また、基準点Ｐｃは、投写画面ＰＳ上の特定の位置を識別可能な構成であれば、点（ドット）に限定されず、例えば、２つの直線の交点や矩形の角部であってもよい。
【００４４】
投写スクリーン面ＳＳに測定用パターン画像ＣＰＭが表示された投写画面ＰＳが投射されているときに、撮像部３００は、第１カメラ３１０および第２カメラ３２０のうち、第２の撮像機能（可視光を含む光を受光して撮像する機能）を有するカメラによって、測定用パターン画像ＣＰＭが表示された投写画面ＰＳを含む領域を撮影する。これにより測定用パターン画像ＣＰＭを含んだ撮像画像ＣＩが得られる。関数算出部８２０は、得られた撮像画像ＣＩを解析して、撮像画像ＣＩにおける各基準点Ｐｃの位置を検出し、検出された位置から各基準点Ｐｃの三次元位置座標を検出する。関数算出部８２０が検出する三次元座標の座標系は、位置検出部６００が指示体７８０の三次元位置座標を検出するときのカメラ座標系と同じであることが好ましい。基準点Ｐｃの三次元位置座標の検出は、投写部２００と撮像部３００（撮影したカメラ）との視差を利用し、三角測量の原理により検出する能動型のアクティブステレオ法を用いてもよい。なお、基準点Ｐｃの三次元位置座標の検出には、アクティブステレオ法以外の方法（例えば、２つのカメラを用いた受動型のステレオ法）を用いてもよい。これにより、各基準点Ｐｃ１〜Ｐｃ２５の三次元位置座標Ｐｃ１（Ｘｃ１，Ｙｃ１，Ｚｃ１）、Ｐｃ２（Ｘｃ２，Ｙｃ２，Ｚｃ２）、Ｐｃ３（Ｘｃ３，Ｙｃ３，Ｚｃ３）、・・・、Ｐｃ２５（Ｘｃ２５，Ｙｃ２５，Ｚｃ２５）を得ることができる。なお、関数算出部８２０は、基準点Ｐｃ１〜Ｐｃ２５のうちのいずれか一点を座標系の原点として他の基準点Ｐｃの三次元位置座標を算出することが好ましく、基準点Ｐｃ１〜Ｐｃ２５のうち、投写画面ＰＳの中心に位置する基準点Ｐｃ１３を座標系の原点とすることがより好ましい。
【００４５】
関数算出部８２０は、検出した各基準点Ｐｃの三次元位置座標に基づき、投写画面ＰＳの近似曲面を表す曲面関数を算出する。本実施形態の関数算出部８２０は、下記の式（１）をフィッティング関数として算出することが好ましい。
【数１】
0006459705.tif 000007
ここで、Ｎ１、Ｎ２、Ｎ３はＰ≧Ｎ１＋Ｎ２＋Ｎ３＋１を満たすゼロまたは正の整数であり、少なくとも一つは正の整数である。Ｐは基準点Ｐｃの数である。ａｊ、ｂｊ、ｃｊ、ｄは定数であり、ａｊ、ｂｊ、ｃｊの少なくとも１つはゼロではない。本実施形態によれば、投写画面ＰＳの三次元形状がＮ１次のＸとＮ２次のＹとＮ３次のＺを含んだ曲面関数に近似される。なお、Ｎ１、Ｎ２、Ｎ３をＰ≧Ｎ１＋Ｎ２＋Ｎ３＋１とすることによって、基準点Ｐｃの数Ｐを式（１）に含まれる未知数の数（Ｎ１＋Ｎ２＋Ｎ３＋１）以上にすることができ、これらの未知数の値（近似解を含む）を算出することができる。また、上記式（１）から明らかなように、投写画面ＰＳの三次元の曲面関数とは、三次元の平面関数を含んでいる（例えば、Ｎ１、Ｎ２、Ｎ３がすべて１のとき）。関数算出部８２０は、投写部２００が投射する測定用パターン画像ＣＰＭの種類が複数存在する場合には、それぞれの測定用パターン画像ＣＰＭに含まれる基準点Ｐｃの数Ｐに応じてＮ１、Ｎ２、Ｎ３を設定してもよい。
【００４６】
ここでは、測定用パターン画像ＣＰＭに含まれる基準点Ｐｃの数Ｐを２５、式（１）のＮ１、Ｎ２、Ｎ３をすべて４とした場合の一例について説明する。式（１）と、２５箇所の基準点Ｐｃ１〜Ｐｃ２５の三次元位置座標から、以下の式（６）のように２５の連立方程式が成り立つ。未知数の数は、ａ１〜ａ４、ｂ１〜ｂ４、ｃ１〜ｃ４、ｄの１３であるため、式（６）は過剰条件の連立方程式となる。この場合には、例えば、最小二乗法によって近似解を算出することができる。最小二乗法による近似解の算出方法は周知なので、ここではその説明を省略する。上記の未知数の値の算出によって、投写画面ＰＳの曲面関数を算出できる。
【数６】
0006459705.tif 000008
【００４７】
Ａ５．投写画面ＰＳと非発光指示体８０との接触の検出
接触検出部８００は、位置検出部６００によって算出される非発光指示体８０の先端部８１の三次元位置座標（Ｘ８１，Ｙ８１，Ｚ８１）のうちのＸＹ座標（Ｘ８１，Ｙ８１）を関数算出部８２０が算出した投写画面ＰＳの曲面関数に代入することによって、非発光指示体８０の先端部８１をＺ方向に投射したときのスクリーン面ＳＳ上のＺ座標を算出することができる。そして、非発光指示体８０の先端部８１のＺ座標と、スクリーン面ＳＳ上のＺ座標との差分を非発光指示体８０と投写スクリーン面ＳＳとの間の距離とすることができる。そして、この距離が許容差以下となったときに、非発光指示体８０の投写スクリーン面ＳＳへの接触を検出することができる。
【００４８】
図６および図７は、曲面形状のスクリーンに測定用パターン画像ＣＰＭが投写された例を示した図である。図６のスクリーン面ＳＳ１は、左右方向が内側に湾曲した面によって形成されており、図７のスクリーン面ＳＳ２は、上下方向が内側に湾曲した面によって形成されている。本実施形態によれば、関数算出部８２０は、投写画面ＰＳの三次元形状を式（１）のような曲面関数に近似させるため、スクリーン面が曲面であっても、投写画面ＰＳの三次元形状を表す関数と実際のスクリーン面の形状との誤差を低減させることができる。これにより非発光指示体８０の投写スクリーン面ＳＳへの接触を検出する精度の向上を図ることができる。
【００４９】
Ｂ．投写画面ＰＳの曲面関数の算出（その２）
関数算出部８２０は、検出された各基準点Ｐｃの三次元位置座標に基づき、各基準点Ｐｃ１〜Ｐｃ２５の三次元位置座標Ｐｃ１（Ｘｃ１，Ｙｃ１，Ｚｃ１）、Ｐｃ２（Ｘｃ２，Ｙｃ２，Ｚｃ２）、Ｐｃ３（Ｘｃ３，Ｙｃ３，Ｚｃ３）、・・・、Ｐｃ２５（Ｘｃ２５，Ｙｃ２５，Ｚｃ２５）のそれぞれのＺ座標がすべてＺ＝０となる座標系にマッピングするマッピング関数を算出してもよい。そして、位置検出部６００によって検出される非発光指示体８０の先端部８１の三次元位置座標をマッピング関数で変換することによって、変換後の三次元位置座標のうちのＺ座標を先端部８１と投写スクリーン面ＳＳとの間の距離としてもよい。すなわち、接触検出部８００は、変換後の非発光指示体８０の先端部８１のＺ座標が許容値以下の場合に、非発光指示体８０が投写スクリーン面ＳＳと接触したと判定してもよい。
【００５０】
また、例えば、関数算出部８２０は、下記の式（２）をフィッティング関数として、投写画面ＰＳの近似曲面を表す曲面関数を算出してもよい。
【数２】
0006459705.tif 000009
ここで、Ｎ１、Ｎ２はＰ≧Ｎ１＋Ｎ２＋１を満たすゼロまたは正の整数であり、少なくとも一つは正の整数である。ａｊ、ｂｊ、ｄは定数であり、ａｊ、ｂｊの少なくとも１つはゼロではない。この場合、非発光指示体８０の先端部８１の三次元位置座標（Ｘ８１，Ｙ８１，Ｚ８１）に対して、三次元位置座標（Ｘ８１，Ｙ８１，Ｚ８１−Ｚｃ）は、マッピング関数で変換した変換後の非発光指示体８０の先端部８１の三次元位置座標に相当する。この変換後のＺ座標（Ｚ８１−Ｚｃ）は、非発光指示体８０の先端部８１と投写画面ＰＳ（投写スクリーン面ＳＳ）との距離に該当し、Ｚ座標（Ｚ８１−Ｚｃ）がゼロに近い所定値以下のときに非発光指示体８０の先端部８１の投写画面ＰＳへの接触を検出してもよい。この構成によれば、式（２）のＺ座標の項は係数が１の１次項を含むだけなので、未知数の数（Ｎ１＋Ｎ２＋１）を式（１）の未知数の数（Ｎ１＋Ｎ２＋Ｎ３＋１）よりも少なくすることができる。これにより、曲面関数の算出に要する時間の短縮や、算出に要する処理負担の軽減を図ることができる。
【００５１】
Ｃ．投写画面ＰＳの曲面関数の算出（その３）
関数算出部８２０は、上記の式（１）のほかに、下記の式（３）をフィッティング関数としてもよい。
【数３】
0006459705.tif 000010
ここで、Ｍ１、Ｍ２、Ｍ３はＰ≧Ｍ１＋Ｍ２＋Ｍ３＋１を満たすゼロまたは正の整数であり、少なくとも一つは正の整数である。ａｋ、ｂｋ、ｃｋ、ｄは定数であり、ａｋ、ｂｋ、ｃｋの少なくとも１つはゼロではない。この構成によれば、投写画面ＰＳの三次元形状は次数が偶数の項のみの曲面関数に近似される。式（３）は、式（１）と比較して、次数が奇数の項を含んでいないため、次数が同じ関数において、未知数の数を少なくすることができる。これにより、曲面関数の算出に要する時間の短縮や、処理負担の軽減を図ることができる。また、同じ処理量で式（１）より次数の高い曲面関数にフィットさせることができるため、関数をより実際のスクリーン面ＳＳの形状に近似させることができる。実際のスクリーン面として、図６または図７に示したように、スクリーン面の両側面が内側に湾曲したもの、および、スクリーン面の上端部と下端部が内側に湾曲したものが用いられる場合がある。これは、スクリーン面への映り込みを抑制し、スクリーン面の両側面付近や上下端部付近の画像をより見やすくするためである。このようなスクリーン面の曲面関数としては、上記式（３）のような偶数次の項のみを含む関数を使用することが好ましい。このとき、座標系の原点は、投写画面ＰＳの中心に設定することが好ましい。
【００５２】
Ｄ．投写画面ＰＳの曲面関数の算出（その４）
また、式（１）と式（２）との関係と同様に、関数算出部８２０は、式（４）をフィッティング関数として、投写画面ＰＳの曲面関数を算出してもよい。
【数４】
0006459705.tif 000011
ここで、Ｍ１、Ｍ２はＰ≧Ｍ１＋Ｍ２＋１を満たすゼロまたは正の整数であり、少なくとも一つは正の整数である。ａｋ、ｂｋ、ｄは定数であり、ａｋ、ｂｋの少なくとも１つはゼロではない。この構成によれば、式（４）は、式（１）と比較して、Ｚ座標の項に係数がなく、また、次数が奇数の項を含んでいないため、未知数の数を少なくすることができる。これにより、曲面関数の算出に要する時間の短縮や、処理負担の軽減を図ることができる。
【００５３】
Ｅ．変形例
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００５４】
・変形例１
上記実施形態では、撮像部３００が２台のカメラ３１０，３２０を有しているものとしたが、撮像部３００は３台以上のカメラを有していてもよい。後者の場合には、ｍ台（ｍは３以上の整数）のカメラで撮像されたｍ個の画像に基づいて、三次元位置座標（Ｘ，Ｙ，Ｚ）が決定される。例えば、ｍ個の画像から２個の画像を任意に選択して得られるｍＣ２個の組み合わせを用いてそれぞれ三次元位置座標を求め、それらの平均値を用いて最終的な三次元位置座標を決定しても良い。こうすれば、三次元位置座標の検出精度を更に高めることが可能である。
【００５５】
・変形例２
上記実施形態では、インタラクティブプロジェクションシステム９００がホワイトボードモードとＰＣインタラクティブモードとで動作可能であるものとしたが、これらのうちの一方のモードのみで動作するようにシステムが構成されていても良い。また、インタラクティブプロジェクションシステム９００は、これら２つのモード以外の他のモードのみで動作するように構成されていても良く、更に、これら２つのモードを含む複数のモードで動作可能に構成されていてもよい。
【００５６】
・変形例３
上記実施形態では、図３に示した照射検出光ＩＤＬと、反射検出光ＲＤＬと、装置信号光ＡＳＬと、指示体信号光ＰＳＬとがすべて近赤外光であるものとしたが、これらのうちの一部又は全部を近赤外光以外の光としてもよい。
【００５７】
・変形例４
上記実施形態では、自発光指示体７０の接触検出を、自発光指示体７０が発する指示体信号光ＰＳＬの発光パターンに基づいて行っている。しかし、自発光指示体７０の先端部７１の三次元位置は、２台のカメラ３１０，３２０で撮像された画像を用いた三角測量によって求めることができるので、この三次元位置を用いて自発光指示体７０の先端部７１の接触検出を実行することも可能である。
【００５８】
以上、いくつかの実施例に基づいて本発明の実施の形態について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得るとともに、本発明にはその等価物が含まれることはもちろんである。
【符号の説明】
【００５９】
７０…自発光指示体
７１…先端部
７２…軸部
７３…ボタンスイッチ
７４…信号光受信部
７５…制御部
７６…先端スイッチ
７７…先端発光部
８０…非発光指示体
８１…先端部
１００…インタラクティブプロジェクター
２００…投写部
２１０…投写レンズ
２２０…光変調部
２３０…光源
３００…撮像部
３１０…第１カメラ
３２０…第２カメラ
４１０…検出光照射部
４３０…信号光送信部
５００…投写画像生成部
５１０…投写画像メモリー
６００…位置検出部
７００…制御部
７８０…指示体
８００…接触検出部
８２０…関数算出部
９００…インタラクティブプロジェクションシステム
９１０…支持部材
９２０…スクリーン板
【図１】
0006459705.tif 000016
【図２】
0006459705.tif 000017
【図３】
0006459705.tif 000018
【図４】
0006459705.tif 000019
【図５】
0006459705.tif 000020
【図６】
0006459705.tif 000021
【図７】
0006459705.tif 000022