(57)【特許請求の範囲】
【請求項１】
指示体の位置を検出するインタラクティブプロジェクターであって、
スクリーン面に画像を投写する投写部と、
前記指示体の３次元座標値を検出すると共に、前記スクリーン面から離れる方向の座標をＺ座標としたとき、前記指示体のＺ座標値と前記スクリーン面のＺ座標値との間の差分と予め設定された差分閾値との関係に基づいて前記スクリーン面に対する前記指示体の接触の有無を検出する検出部と、
前記指示体のＺ座標値の履歴に基づいて、前記スクリーン面のＺ座標値の補正をする補正部と、
を備え、
前記補正部は、前記指示体のＺ座標値の履歴のデータ数が所定数より少ない間は、前記補正を行なわず、
前記補正部は、前記指示体のＺ座標値のヒストグラムに基づいて前記補正を行い、
前記補正部は、
前記指示体のＸＹ座標値が前回から変化しているときは、前記指示体のＺ座標値を前記ヒストグラムに加算する加算処理を行ない、
前記指示体のＸＹ座標値が前回から変化していないときには、前記加算処理を行なわず、前記補正を行なわない、
インタラクティブプロジェクター。
【請求項２】
請求項１に記載のインタラクティブプロジェクターであって、
前記スクリーン面のうちで前記画像が投写される投写範囲を撮像する複数台のカメラをさらに備え、
前記検出部は、前記複数台のカメラによって撮像された前記指示体を含む複数の画像を用いた三角測量により前記指示体の３次元座標値を検出する、インタラクティブプロジェクター。
【請求項３】
請求項１または２に記載のインタラクティブプロジェクターであって、
前記補正部は、前記指示体のＺ座標値のヒストグラムのピークを示すＺ座標値と、前記スクリーン面のＺ座標値との大小関係に応じて前記補正を行う、インタラクティブプロジェクター。
【請求項４】
請求項１〜３のいずれか一項に記載のインタラクティブプロジェクターであって、
前記補正部は、前記指示体のＺ方向速度がゼロであるときの前記指示体のＺ座標値の履歴に基づいて前記補正を行う、インタラクティブプロジェクター。
【請求項５】
請求項１〜４のいずれか一項に記載のインタラクティブプロジェクターであって、
前記検出部は、前記指示体が前記スクリーン面に接している接触状態と前記指示体が前記スクリーン面に接していない非接触状態のいずれの状態においても、前記指示体のＺ座標値を算出する時、前記履歴を更新する、インタラクティブプロジェクター。
【請求項６】
投写範囲を撮像する複数台のカメラを用いて指示体の位置を検出可能なインタラクティブプロジェクターのＺ座標の補正方法であって、
（ａ）前記指示体の３次元座標値を検出すると共に、スクリーン面から離れる方向の座標をＺ座標としたとき、前記指示体のＺ座標値と前記スクリーン面のＺ座標値との間の差分と予め設定された差分閾値との関係に基づいて前記スクリーン面に対する前記指示体の接触の有無を検出する工程と、
（ｂ）前記指示体のＺ座標値の履歴に基づいて、前記スクリーン面のＺ座標値の補正をする工程と、
を備え、
前記工程（ｂ）において、前記指示体のＺ座標値の履歴のデータ数が所定数より少ない間は、前記補正を行なわず、
前記工程（ｂ）において、前記指示体のＺ座標値のヒストグラムに基づいて前記補正を行い、
前記工程（ｂ）において、
前記指示体のＸＹ座標値が前回から変化しているときは、前記指示体のＺ座標値を前記ヒストグラムに加算する加算処理を行ない、
前記指示体のＸＹ座標値が前回から変化していないときには、前記加算処理を行なわず、前記補正を行なわない、
補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザーの指示体による指示を受け取ることが可能なインタラクティブプロジェクターに関する。
【背景技術】
【０００２】
特許文献１には、投写画面をスクリーンに投写するとともに、指などの対象物（object）を含む画像をカメラで撮像し、この撮像画像を用いて対象物の位置を検出することが可能な投写型表示装置（プロジェクター）が開示されている。指などの対象物は、投写画面に対して指示を行うための指示体として利用される。すなわち、プロジェクターは、対象物の先端がスクリーンに接しているときに投写画面に対して描画等の所定の指示が入力されているものと認識し、その指示に応じて投写画面を再描画する。従って、ユーザーは、投写画面をユーザーインターフェースとして用いて、各種の指示を入力することが可能である。このように、スクリーン上の投写画面を入力可能ユーザーインターフェースとして利用できるタイプのプロジェクターを、「インタラクティブプロジェクター」と呼ぶ。また、投写画面に対して指示を行うために利用される対象物を「指示体（pointing element）」と呼ぶ。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１５０６３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
典型的なインタラクティブプロジェクターでは、指示体が投写画面（スクリーン面）に接触しているか否かに応じて、指示体によって指示がなされているか否かを判定する。従って、スクリーン面に対する指示体の接触検出の精度が重要である。しかしながら、従来技術では、接触検出の精度が必ずしも十分でない場合があり、その検出精度の向上が望まれていた。
【課題を解決するための手段】
【０００５】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
本発明の一形態によれば、指示体の位置を検出するインタラクティブプロジェクターが提供される。このインタラクティブプロジェクターは、スクリーン面に画像を投写する投写部と、前記指示体の３次元座標値を検出すると共に、前記スクリーン面から離れる方向の座標をＺ座標としたとき、前記指示体のＺ座標値と前記スクリーン面のＺ座標値との間の差分と予め設定された差分閾値との関係に基づいて前記スクリーン面に対する前記指示体の接触の有無を検出する検出部と、前記指示体のＺ座標値の履歴に基づいて、前記スクリーン面のＺ座標値の補正をする補正部と、を備え、前記補正部は、前記指示体のＺ座標値の履歴のデータ数が所定数より少ない間は、前記補正を行なわず、前記補正部は、前記指示体のＺ座標値のヒストグラムに基づいて前記補正を行い、前記補正部は、前記指示体のＸＹ座標値が前回から変化しているときは、前記指示体のＺ座標値を前記ヒストグラムに加算する加算処理を行ない、前記指示体のＸＹ座標値が前回から変化していないときには、前記加算処理を行なわず、前記補正を行なわない。
この形態のインタラクティブプロジェクターによれば、指示体のＸＹ座標値が前回から変化していないときには、ヒストグラムへの加算処理を行なわず、スクリーン面のＺ座標値の補正を行なわないので、特殊な事情が発生している場合における座標データがヒストグラムに反映されることを抑制でき、接触検出の検出精度が低下することを抑制できる。
その他、本発明は、以下のような形態又は適用例として実現することも可能である。
【０００６】
（１）本発明の一形態によれば、指示体の位置を検出するインタラクティブプロジェクターが提供される。このインタラクティブプロジェクターは、スクリーン面に画像を投写する投写部と；前記指示体の３次元座標値を検出すると共に、前記スクリーン面から離れる方向の座標をＺ座標としたとき、前記指示体のＺ座標値と前記スクリーン面のＺ座標値との間の差分と予め設定された差分閾値との関係に基づいて前記スクリーン面に対する前記指示体の接触の有無を検出する検出部と；前記指示体のＺ座標値の履歴に基づいて、前記スクリーン面のＺ座標値と、前記指示体のＺ座標値と、前記差分閾値と、のうちの少なくとも一つを補正する補正部と；を備える。
このインタラクティブプロジェクターによれば、指示体のＺ座標値の履歴に基づいて、スクリーン面のＺ座標値と、指示体のＺ座標値と、差分閾値と、のうちの少なくとも一つを補正するので、指示体のＺ座標値とスクリーン面のＺ座標値のいずれかにズレが発生している場合にも、そのズレを補正することができ、スクリーン面に対する指示体の接触の有無を精度良く検出することが可能となる。
【０００７】
（２）上記インタラクティブプロジェクターにおいて、前記スクリーン面のうちで前記画像が投写される投写範囲を撮像する複数台のカメラをさらに備え、前記検出部は、前記複数台のカメラによって撮像された前記指示体を含む複数の画像を用いた三角測量により前記指示体の３次元座標値を検出するものとしてもよい。
この構成によれば、三角測量によって指示体の３次元座標値を精度良く検出できる。
【０００８】
（３）上記インタラクティブプロジェクターにおいて、前記補正部は、前記指示体のＺ座標値のヒストグラムに基づいて前記補正を行うものとしてもよい。
指示体のＺ座標値のヒストグラムには、指示体がスクリーン面に接触している状態が反映されているので、そのヒストグラムに基づいて補正を行うようにすれば、スクリーン面に対する指示体の接触の有無の検出精度を向上できる。
【０００９】
（４）上記インタラクティブプロジェクターにおいて、前記補正部は、前記指示体のＺ座標値のヒストグラムのピークを示すＺ座標値と、前記スクリーン面のＺ座標値との大小関係に応じて前記補正を行うものとしてもよい。
ヒストグラムのピークを示すＺ座標値とスクリーン面のＺ座標値との大小関係はＺ座標のズレを示しているので、この大小関係に応じて補正を行うようにすれば、スクリーン面に対する指示体の接触の有無の検出精度を向上できる。
【００１０】
（５）上記インタラクティブプロジェクターにおいて、前記補正部は、前記指示体のＺ座標値の履歴における最小Ｚ座標値と、前記スクリーン面のＺ座標値との大小関係に応じて前記補正を行うものとしてもよい。
指示体のＺ座標値の履歴における最小Ｚ座標値とスクリーン面のＺ座標値との大小関係は、Ｚ座標のズレを示しているので、この大小関係に応じて補正を行うようにすれば、スクリーン面に対する指示体の接触の有無の検出精度を向上できる。
【００１１】
（６）上記インタラクティブプロジェクターにおいて、前記補正部は、前記指示体のＺ方向速度がゼロであるときの前記指示体のＺ座標値の履歴に基づいて前記補正を行うとしてもよい。
指示体のＺ方向速度がゼロであるときは、指示体がスクリーン面に接触しているものと考えることができる。従って、指示体のＺ方向速度がゼロであるときの指示体のＺ座標値の履歴に基づいて補正を行うようにすれば、スクリーン面に対する指示体の接触の有無の検出精度を向上できる。
【００１２】
本発明は、種々の形態で実現することが可能であり、例えば、スクリーン及び指示体のうちの一方又は両方とインタラクティブプロジェクターとを含むシステム、インタラクティブプロジェクターの制御方法又は制御装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した一時的でない記録媒体（non-transitory storage medium）等の様々な形態で実現することができる。
【図面の簡単な説明】
【００１３】
【図１】プロジェクションシステムの斜視図。
【図２】プロジェクションシステムの側面図及び正面図。
【図３】プロジェクターの内部構成を示すブロック図。
【図４】２台のカメラの配置と向きを示す説明図。
【図５】三角測量で得られるＺ座標値のヒストグラムの例を示す説明図。
【図６】第１実施形態におけるＺ座標補正のフローチャート。
【図７】投写画面上におけるＺ座標補正の区分の例を示す説明図。
【図８】第２実施形態におけるＺ座標補正のフローチャート。
【図９】第３実施形態におけるＺ座標補正のフローチャート。
【発明を実施するための形態】
【００１４】
Ａ．第１実施形態
図１は、本発明の第１実施形態におけるインタラクティブプロジェクションシステム９００の斜視図である。このシステム９００は、インタラクティブプロジェクター１００と、スクリーン板９２０と、自発光指示体７０とを有している。スクリーン板９２０の前面は、投写スクリーン面ＳＳ（projection Screen Surface）として利用される。プロジェクター１００は、支持部材９１０によってスクリーン板９２０の前方かつ上方に固定されている。なお、図１では投写スクリーン面ＳＳを鉛直に配置しているが、投写スクリーン面ＳＳを水平に配置してこのシステム９００を使用することも可能である。
【００１５】
プロジェクター１００は、投写スクリーン面ＳＳ上に投写画面ＰＳ（Projected Screen）を投写する。投写画面ＰＳは、通常は、プロジェクター１００内で描画された画像を含んでいる。プロジェクター１００内で描画された画像がない場合には、プロジェクター１００から投写画面ＰＳに光が照射されて、白色画像が表示される。本明細書において、「投写スクリーン面ＳＳ」（又は「スクリーン面ＳＳ」）とは、画像が投写される部材の表面を意味する。また、「投写画面ＰＳ」とは、プロジェクター１００によって投写スクリーン面ＳＳ上に投写された画像の領域を意味する。通常は、投写スクリーン面ＳＳの一部に投写画面ＰＳが投写される。
【００１６】
自発光指示体７０は、発光可能な先端部７１と、使用者が保持する軸部７２と、軸部７２に設けられたボタンスイッチ７３とを有するペン型の指示体である。自発光指示体７０の構成や機能については後述する。このシステム９００では、１つ又は複数の自発光指示体７０とともに、１つ又は複数の非発光指示体８０（非発光のペンや指など）を利用可能である。
【００１７】
図２（Ａ）は、インタラクティブプロジェクションシステム９００の側面図であり、図２（Ｂ）はその正面図である。本明細書では、投写の左右に沿った方向をＸ方向と定義し、スクリーン面ＳＳの上下に沿った方向をＹ方向と定義し、スクリーン面ＳＳの法線に沿った方向をＺ方向と定義している。なお、便宜上、Ｘ方向を「左右方向」とも呼び、Ｙ方向を「上下方向」とも呼び、Ｚ方向を「前後方向」とも呼ぶ。Ｚ方向は、スクリーン面ＳＳから離れる方向である。また、Ｙ方向（上下方向）のうち、プロジェクター１００から見て投写画面ＰＳが存在する方向を「下方向」と呼ぶ。なお、図２（Ａ）では、図示の便宜上、スクリーン板９２０のうちの投写画面ＰＳの範囲にハッチングを付している。
【００１８】
プロジェクター１００は、投写画面ＰＳをスクリーン面ＳＳ上に投写する投写レンズ２１０と、投写画面ＰＳの領域を撮像する第１カメラ３１０及び第２カメラ３２０と、指示体（自発光指示体７０及び非発光指示体８０）に検出光を照明するための検出光照射部４１０とを有している。検出光としては、例えば近赤外光が使用される。２台のカメラ３１０，３２０は、検出光の波長を含む波長領域の光を受光して撮像する第１の撮像機能を少なくとも有している。２台のカメラ３１０，３２０のうちの少なくとも一方は、更に、可視光を含む光を受光して撮像する第２の撮像機能を有し、これらの２つの撮像機能を切り替え可能に構成されていることが好ましい。例えば、２台のカメラ３１０，３２０は、可視光を遮断して近赤外光のみを通過させる近赤外フィルターをレンズの前に配置したりレンズの前から後退させたりすることが可能な近赤外フィルター切換機構（図示せず）をそれぞれ備えることが好ましい。２台のカメラ３１０，３２０の配置や向きについては更に後述する。
【００１９】
図２（Ｂ）の例は、インタラクティブプロジェクションシステム９００がホワイトボードモードで動作している様子を示している。ホワイトボードモードは、自発光指示体７０や非発光指示体８０を用いて投写画面ＰＳ上にユーザーが任意に描画できるモードである。スクリーン面ＳＳ上には、ツールボックスＴＢを含む投写画面ＰＳが投写されている。このツールボックスＴＢは、処理を元に戻す取消ボタンＵＤＢと、マウスポインターを選択するポインターボタンＰＴＢと、描画用のペンツールを選択するペンボタンＰＥＢと、描画された画像を消去する消しゴムツールを選択する消しゴムボタンＥＲＢと、画面を次に進めたり前に戻したりする前方／後方ボタンＦＲＢと、を含んでいる。ユーザーは、指示体を用いてこれらのボタンをクリックすることによって、そのボタンに応じた処理を行ったり、ツールを選択したりすることが可能である。なお、システム９００の起動直後は、マウスポインターがデフォールトツールとして選択されるようにしてもよい。図２（Ｂ）の例では、ユーザーがペンツールを選択した後、自発光指示体７０の先端部７１をスクリーン面ＳＳに接した状態で投写画面ＰＳ内で移動させることにより、投写画面ＰＳ内に線が描画されてゆく様子が描かれている。この線の描画は、プロジェクター１００の内部の投写画像生成部（後述）によって行われる。
【００２０】
なお、インタラクティブプロジェクションシステム９００は、ホワイトボードモード以外の他のモードでも動作可能である。例えば、このシステム９００は、パーソナルコンピューター（図示せず）から通信回線を介して転送されたデータの画像を投写画面ＰＳに表示するＰＣインタラクティブモードでも動作可能である。ＰＣインタラクティブモードにおいては、例えば表計算ソフトウェアなどのデータの画像が表示され、その画像内に表示された各種のツールやアイコンを利用してデータの入力、作成、修正等を行うことが可能となる。
【００２１】
図３は、インタラクティブプロジェクター１００と自発光指示体７０の内部構成を示すブロック図である。プロジェクター１００は、制御部７００と、投写部２００と、投写画像生成部５００と、位置検出部６００と、撮像部３００と、検出光照射部４１０と、信号光送信部４３０とを有している。
【００２２】
制御部７００は、プロジェクター１００内部の各部の制御を行う。また、制御部７００は、位置検出部６００で検出された指示体（自発光指示体７０や非発光指示体８０）によって投写画面ＰＳ上で行われた指示の内容を判定するとともに、その指示の内容に従って投写画像を作成又は変更することを投写画像生成部５００に指令する。
【００２３】
投写画像生成部５００は、投写画像を記憶する投写画像メモリー５１０を有しており、投写部２００によってスクリーン面ＳＳ上に投写される投写画像を生成する機能を有する。投写画像生成部５００は、更に、投写画面ＰＳ（図２（Ｂ））の台形歪みを補正するキーストーン補正部としての機能を有することが好ましい。
【００２４】
投写部２００は、投写画像生成部５００で生成された投写画像をスクリーン面ＳＳ上に投写する機能を有する。投写部２００は、図２で説明した投写レンズ２１０の他に、光変調部２２０と、光源２３０とを有する。光変調部２２０は、投写画像メモリー５１０から与えられる投写画像データに応じて光源２３０からの光を変調することによって投写画像光ＩＭＬを形成する。この投写画像光ＩＭＬは、典型的には、ＲＧＢの３色の可視光を含むカラー画像光であり、投写レンズ２１０によってスクリーン面ＳＳ上に投写される。なお、光源２３０としては、超高圧水銀ランプ等の光源ランプの他、発光ダイオードやレーザーダイオード等の種々の光源を採用可能である。また、光変調部２２０としては、透過型又は反射型の液晶パネルやデジタルミラーデバイス等を採用可能であり、色光別に複数の光変調部２２０を備えた構成としてもよい。
【００２５】
検出光照射部４１０は、指示体（自発光指示体７０及び非発光指示体８０）の先端部を検出するための照射検出光ＩＤＬをスクリーン面ＳＳとその前方の空間にわたって照射する。照射検出光ＩＤＬとしては、例えば近赤外光が使用される。検出光照射部４１０は、カメラ３１０，３２０の撮像タイミングを含む所定の期間にのみ点灯し、他の期間では消灯する。或いは、検出光照射部４１０は、システム９００の動作中は常に点灯状態に維持されるようにしてもよい。
【００２６】
信号光送信部４３０は、自発光指示体７０によって受信される装置信号光ＡＳＬを送信する機能を有する。装置信号光ＡＳＬは、同期用の近赤外光信号であり、プロジェクター１００の信号光送信部４３０から自発光指示体７０に対して定期的に発せられる。自発光指示体７０の先端発光部７７は、装置信号光ＡＳＬに同期して、予め定められた発光パターン（発光シーケンス）を有する近赤外光である指示体信号光ＰＳＬ（後述）を発する。また、撮像部３００のカメラ３１０，３２０は、指示体（自発光指示体７０及び非発光指示体８０）の位置検出を行う際に、装置信号光ＡＳＬに同期した所定のタイミングで撮像を実行する。
【００２７】
撮像部３００は、図２で説明した第１カメラ３１０と第２カメラ３２０とを有している。前述したように、２台のカメラ３１０，３２０は、検出光の波長を含む波長領域の光を受光して撮像する機能を有する。図３の例では、検出光照射部４１０によって照射された照射検出光ＩＤＬが指示体（自発光指示体７０及び非発光指示体８０）で反射され、その反射検出光ＲＤＬが２台のカメラ３１０，３２０によって受光されて撮像される様子が描かれている。２台のカメラ３１０，３２０は、更に、自発光指示体７０の先端発光部７７から発せられる近赤外光である指示体信号光ＰＳＬも受光して撮像する。２台のカメラ３１０，３２０の撮像は、検出光照射部４１０から発せられる照射検出光ＩＤＬがオン状態（発光状態）である第１の期間と、照射検出光ＩＤＬがオフ状態（非発光状態）である第２の期間と、の両方で実行される。位置検出部６００は、これらの２種類の期間における画像を比較することによって、画像内に含まれる個々の指示体が、自発光指示体７０と非発光指示体８０のいずれであるかを判定することが可能である。
【００２８】
なお、２台のカメラ３１０，３２０の少なくとも一方は、近赤外光を含む光を用いて撮像する機能に加えて、可視光を含む光を用いて撮像する機能を有することが好ましい。こうすれば、スクリーン面ＳＳ上に投写された投写画面ＰＳをそのカメラで撮像し、その画像を利用して投写画像生成部５００がキーストーン補正を実行することが可能である。１台以上のカメラを利用したキーストーン補正の方法は周知なので、ここではその説明は省略する。
【００２９】
位置検出部６００は、２台のカメラ３１０，３２０で撮像された画像を用い、三角測量を利用して指示体（自発光指示体７０や非発光指示体８０）の先端部の３次元位置を決定する機能を有する。この際、位置検出部６００は、自発光指示体７０の発光パターンを利用して、画像内の個々の指示体が自発光指示体７０と非発光指示体８０のいずれであるかについても判定する。
【００３０】
本実施形態において、位置検出部６００は、検出部６１０と補正部６２０とを有している。検出部６１０は、２台のカメラ３１０，３２０によって撮像された指示体８０（又は７０）を含む画像を用いた三角測量によって指示体の３次元座標値を検出する機能と、投写画面ＰＳ（スクリーン面ＳＳ）に対する指示体の接触の有無を検出する機能とを有する。補正部６２０は、指示体８０（又は７０）のＺ座標値の履歴に基づいて、スクリーン面ＳＳのＺ座標値と、三角測量により得られる指示体８０（又は７０）のＺ座標値と、接触判定に用いる差分閾値δＺth（後述する）と、のうちの少なくとも一つを補正する機能を有する。これらの機能については更に後述する。
【００３１】
自発光指示体７０には、ボタンスイッチ７３の他に、信号光受信部７４と、制御部７５と、先端スイッチ７６と、先端発光部７７とが設けられている。信号光受信部７４は、プロジェクター１００の信号光送信部４３０から発せられた装置信号光ＡＳＬを受信する機能を有する。先端スイッチ７６は、自発光指示体７０の先端部７１が押されるとオン状態になり、先端部７１が解放されるとオフ状態になるスイッチである。先端スイッチ７６は、通常はオフ状態にあり、自発光指示体７０の先端部７１がスクリーン面ＳＳに接触するとその接触圧によってオン状態になる。先端スイッチ７６がオフ状態のときには、制御部７５は、先端スイッチ７６がオフ状態であることを示す特定の第１の発光パターンで先端発光部７７を発光させることによって、第１の発光パターンを有する指示体信号光ＰＳＬを発する。一方、先端スイッチ７６がオン状態になると、制御部７５は、先端スイッチ７６がオン状態であることを示す特定の第２の発光パターンで先端発光部７７を発光させることによって、第２の発光パターンを有する指示体信号光ＰＳＬを発する。これらの第１の発光パターンと第２の発光パターンは、互いに異なるので、位置検出部６００は、２台のカメラ３１０，３２０で撮像された画像を分析することによって、先端スイッチ７６がオン状態かオフ状態かを識別することが可能である。
【００３２】
上述のように、本実施形態では、自発光指示体７０の先端部７１がスクリーン面ＳＳに接しているか否かの接触判定を、先端スイッチ７６のオン／オフに応じて行っている。ところで、自発光指示体７０の先端部７１の３次元位置は、２台のカメラ３１０，３２０で撮像された画像を用いた三角測量によって求めることができるので、この３次元位置を用いて自発光指示体７０の先端部７１の接触判定を実行することも可能である。
【００３３】
自発光指示体７０のボタンスイッチ７３は、先端スイッチ７６と同じ機能を有する。従って、制御部７５は、ユーザーによってボタンスイッチ７３が押された状態では上記第２の発光パターンで先端発光部７７を発光させ、ボタンスイッチ７３が押されていない状態では上記第１の発光パターンで先端発光部７７を発光させる。換言すれば、制御部７５は、先端スイッチ７６とボタンスイッチ７３の少なくとも一方がオンの状態では上記第２の発光パターンで先端発光部７７を発光させ、先端スイッチ７６とボタンスイッチ７３の両方がオフの状態では上記第１の発光パターンで先端発光部７７を発光させる。
【００３４】
但し、ボタンスイッチ７３に対して先端スイッチ７６と異なる機能を割り当てるようにしてもよい。例えば、ボタンスイッチ７３に対してマウスの右クリックボタンと同じ機能を割り当てた場合には、ユーザーがボタンスイッチ７３を押すと、右クリックの指示がプロジェクター１００の制御部７００に伝達され、その指示に応じた処理が実行される。このように、ボタンスイッチ７３に対して先端スイッチ７６と異なる機能を割り当てた場合には、先端発光部７７は、先端スイッチ７６のオン／オフ状態及びボタンスイッチ７３のオン／オフ状態に応じて、互いに異なる４つの発光パターンで発光する。この場合には、自発光指示体７０は、先端スイッチ７６とボタンスイッチ７３のオン／オフ状態の４つの組み合わせを区別しつつ、プロジェクター１００に伝達することが可能である。
【００３５】
図３に描かれている５種類の信号光の具体例をまとめると以下の通りである。
（１）投写画像光ＩＭＬ：スクリーン面ＳＳに投写画面ＰＳを投写するために、投写レンズ２１０によってスクリーン面ＳＳ上に投写される画像光（可視光）である。
（２）照射検出光ＩＤＬ： 指示体（自発光指示体７０及び非発光指示体８０）の先端部を検出するために、検出光照射部４１０によってスクリーン面ＳＳとその前方の空間にわたって照射される近赤外光である。
（３）反射検出光ＲＤＬ：照射検出光ＩＤＬとして照射された近赤外光のうち、指示体（自発光指示体７０及び非発光指示体８０）によって反射され、２台のカメラ３１０，３２０によって受光される近赤外光である。
（４）装置信号光ＡＳＬ：プロジェクター１００と自発光指示体７０との同期をとるために、プロジェクター１００の信号光送信部４３０から定期的に発せられる近赤外光である。
（５）指示体信号光ＰＳＬ：装置信号光ＡＳＬに同期したタイミングで、自発光指示体７０の先端発光部７７から発せられる近赤外光である。指示体信号光ＰＳＬの発光パターンは、自発光指示体７０のスイッチ７３，７６のオン／オフ状態に応じて変更される。また、複数の自発光指示体７０を識別する固有の発光パターンを有する。
【００３６】
図４（Ａ）は、２台のカメラ３１０，３２０の配置と向きを示す説明図である。この図は、各カメラ３１０，３２０のカメラ基準位置Ｏ１，Ｏ２を通るＹＺ平面上の配置を示している。第１カメラ３１０は、第２カメラ３２０よりもスクリーン面ＳＳからの垂直距離（Ｚ方向の距離）がより大きな位置に配置されている。２台のカメラ３１０，３２０のそれぞれは、カメラ基準位置Ｏ１，Ｏ２と、画像面ＭＰ１，ＭＰ２（結像面）と、光軸Ｖ１，Ｖ２と、画角２θ１，２θ２とを用いてモデル化されている。
【００３７】
図４（Ａ）では、非発光指示体８０の先端部８１が、投写画面ＰＳから距離δＺだけ離間した状態が描かれている。上述したように、非発光指示体８０の先端部８１の３次元位置は、２台のカメラ３１０，３２０で撮像された画像を利用した三角測量によって決定される。インタラクティブプロジェクションシステム９００では、非発光指示体８０の先端部８１とスクリーン面ＳＳとのＺ方向の距離δＺを精度良く検出することが望まれている。そこで、本実施形態では、２台のカメラ３１０，３２０の配置と向きを工夫することによって、非発光指示体８０の先端部８１とスクリーン面ＳＳとの間のＺ方向の距離δＺの検出精度を向上させている。なお、Ｚ方向の距離δＺの検出精度を、「Ｚ座標の解像度」とも呼ぶ。
【００３８】
図４（Ａ）において、第２カメラ３２０は、第１カメラ３１０よりも投写画面ＰＳからの垂直距離（Ｚ方向の距離）がより小さな位置に配置されている。また、２台のカメラ３１０，３２０は、Ｙ方向の位置が同じ（投写画面ＰＳからの高さが同じ）位置に配置されている。更に、２台のカメラ３１０，３２０の光軸Ｖ１，Ｖ２は互いに平行である。
【００３９】
図４（Ｂ）は、２台のカメラ３１０，３２０の光軸ベクトルＶ１，Ｖ２と投写画面法線ベクトルＮＶとの関係を示している。光軸ベクトルＶ１，Ｖ２は、投写画面法線ベクトルＮＶから斜めに傾いており、光軸ベクトルＶ１，Ｖ２のそれぞれと、投写画面法線ベクトルＮＶとのなす角θ１Ｎ，θ２Ｎは９０°よりも小さい。投写画面法線ベクトルＮＶはＺ方向を向いているので、これらの角度θ１Ｎ，θ２Ｎは、光軸Ｖ１，Ｖ２の方向とＺ方向とのなす角度に相当する。これらの角度θ１Ｎ，θ２Ｎは、０°を超え９０°未満の範囲とすることが可能であるが、５０°〜７０°の範囲内の値とすることが好ましい。本実施形態では、第２カメラ３２０を第１カメラ３１０よりも投写画面ＰＳに近い位置に配置することによって、Ｚ座標の解像度を高めている。
【００４０】
なお、第２カメラ３２０については、その光軸Ｖ２の角度θ２Ｎ（図４（Ｂ））を小さくするほど（Ｚ方向に近づけるほど）、画像面ＭＰ２上におけるＺ方向の距離δＺの像が大きくなるので、Ｚ座標の解像度が高くなる。但し、角度θ２Ｎを過度に小さくすると、画像面ＭＰ２上における投写画面ＰＳのＹ方向の像の幅が過度に小さくなってしまうので、Ｙ座標の解像度が低下する。これらの点からＺ座標とＹ座標の解像度のバランスを考慮すると、第２カメラ３２０の光軸Ｖ２の角度θ２Ｎを５０°〜７０°の範囲内の値とすることが好ましく、６０°〜７０°の範囲とすることが特に好ましい。
【００４１】
第１カメラ３１０については、その光軸Ｖ１の角度θ１Ｎの違いによるＺ座標の解像度の変化は、第２カメラ３２０に比べて小さい。なお、第１カメラ３１０は、第２カメラ３２０よりもＹ座標についてより高い解像度が得られる。一方、第２カメラ３２０は、第１カメラ３１０よりもＺ方向についてより高い解像度が得られる。Ｘ座標の解像度は、２台のカメラ３１０，３２０でほぼ同じ程度である。２台のカメラ３１０，３２０の光軸Ｖ１，Ｖ２の角度θ１Ｎ，θ２Ｎは、これらの点を総合的に考慮して、Ｙ座標とＺ座標の解像度のバランスの良い範囲にそれぞれ設定することが好ましい。具体的には、これらの角度θ１Ｎ，θ２Ｎを、いずれも５０°〜７０°の範囲内の値とすることが好ましく、６０°〜７０°の範囲とすることが特に好ましい。なお、第１カメラ３１０の光軸Ｖ１を第２カメラ３２０の光軸Ｖ２に平行に設定すれば、三角測量における座標変換の計算を簡略化でき、指示体の３次元位置を更に精度良く決定できる点で更に好ましい。
【００４２】
本実施形態では、第２カメラ３２０を第１カメラ３１０よりも投写画面ＰＳに近い位置に配置することによって、Ｚ座標の解像度を高めるとともにＹ座標についても十分に高い解像度を得ることが可能である。但し、２台のカメラ３１０，３２０のＺ方向に沿った位置（Ｚ座標）を同じとしても良い。なお、２台のカメラ３１０，３２０のＸ方向に沿った位置（Ｘ座標）は、同じでも良く、異なっていても良い。２台のカメラ３１０，３２０のＹ方向に沿った位置（Ｙ座標）も同様である。
【００４３】
ところで、プロジェクター１００の使用前（例えばプロジェクター１００の設置時）には、スクリーン面ＳＳの３次元座標に関するキャリブレーションが予め行われる。このキャリブレーションは、例えば、投写部２００（図３）がキャリブレーションのパターンをスクリーン面ＳＳに投写し、カメラ３１０，３２０を可視光撮影モードに切り替えてパターンを撮像し、検出部６１０がその撮像画像におけるパターンの複数箇所の座標を検出してスクリーン面ＳＳの３次元座標を決定することによって実行される。このキャリブレーションが終了すると、検出部６１０が指示体８０がスクリーン面ＳＳに接触しているか否かを判定することが可能となる。但し、キャリブレーション後に、スクリーン面ＳＳやプロジェクター１００が移動したり、或いは、機材（例えばカメラ３１０，３２０）の温度変化による誤差が発生するなどの原因によって、スクリーン面ＳＳのＺ座標値や三角測量で得られるＺ座標値が変動する可能性がある。これらのＺ座標値が変動すると、指示体８０の接触検出の精度が低下し、指示体８０がスクリーン面ＳＳから離れているのに接触状態と判定したり、逆に、指示体８０がスクリーン面ＳＳに接触しているのに非接触状態と判定したりする不具合が発生する。そこで、本実施形態では、三角測量で得られる指示体８０のＺ座標値の履歴に基づいて、Ｚ座標の補正を実行する。
【００４４】
図５は、三角測量で得られる指示体８０のＺ座標値のヒストグラムの例を示す説明図である。ここで、「三角測量で得られる指示体８０のＺ座標値」とは、指示体８０がスクリーン面ＳＳに接触しているか否かに拘わらず、検出部６１０（図３）によって検出された指示体８０の３次元座標値のうちのＺ座標値を意味している。検出部６１０は、指示体８０がスクリーン面ＳＳに接している接触状態と、指示体８０がスクリーン面ＳＳに接していない非接触状態のいずれの状態においても、指示体８０のＺ座標値（正確には、指示体８０の先端部のＺ座標値）を三角測量で算出する度に、そのＺ座標値のヒストグラムを更新する。なお、前述したように、スクリーン面ＳＳのＺ座標値Ｚssは、プロジェクター１００の設置後のキャリブレーションにおいて予め較正されている。典型的な例では、このキャリブレーション後のスクリーン面ＳＳのＺ座標値Ｚssは、ゼロに設定される。なお、キャリブレーション後のスクリーン面ＳＳのＺ座標値Ｚssを、「スクリーン面ＳＳの既知のＺ座標値」とも呼ぶ。後述するＺ座標の補正によってスクリーン面ＳＳのＺ座標値が補正されると、その補正後の値が「スクリーン面ＳＳの既知のＺ座標値」となる。
【００４５】
図５（Ａ）は、三角測量で得られる指示体８０のＺ座標値にズレが無い場合に得られるヒストグラムを示している。この例では、図４（Ａ）と整合させるために、図５（Ａ）の左側方向を＋Ｚ方向（スクリーン面ＳＳから離れる方向）とし、右側方向を−Ｚ方向（スクリーン面ＳＳの裏側に向かう方向）としている。Ｚ座標値にズレが無い場合には、ヒストグラムのピークを示すＺ座標値Ｚpは、スクリーン面のＺ座標値Ｚss（この例ではＺss＝０）に等しい。この理由は、ユーザーが指示体８０を用いてスクリーン面ＳＳ（投写画面ＰＳ）上で指示を行う動作を継続してゆくと、指示体８０がスクリーン面ＳＳに接触している状態で指示体８０の３次元座標値が検出される回数が次第に増加するからである。つまり、スクリーン面ＳＳに接触している状態での指示体８０のＺ座標値は一定の値（この例では０）となるため、そのＺ座標値は、頻度のピークを形成する。
【００４６】
図５（Ｂ）は、三角測量で得られる指示体８０のＺ座標値にズレが有る場合に得られるヒストグラムを示している。この例では、ヒストグラムのピークを示すＺ座標値Ｚpは、スクリーン面のＺ座標値Ｚss（＝０）よりもマイナス側にずれている。また、ヒストグラムの最小Ｚ座標値Ｚminは、ピークのＺ座標値Ｚpよりも更にマイナス側に存在する。このような場合には、指示体８０の接触検出における検出誤差が増大するので、Ｚ座標を補正することが好ましい。
【００４７】
図６は、第１実施形態におけるＺ座標補正のフローチャートである。図６の処理の全体は、一定周期毎に実行される（ステップＳ１１０）。この一定周期は、例えば毎秒６０回〜２４０回に相当する期間に設定される。以下の説明では、指示体８０として指先を用いた場合について説明する。なお、図６の処理の前には、スクリーン面ＳＳの３次元座標に関するキャリブレーションが予め行われているものと仮定する。
【００４８】
ステップＳ１２０では、検出部６１０（図３）が、２台のカメラ３１０，３２０を用いた三角測量によって、指先の３次元座標値を検出する。ステップＳ１３０では検出部６１０が、指先がスクリーン面ＳＳに接触しているか否かを判定する。一般には、この判定は以下に従って行われる。
Ｚmes−Ｚss ≦ δＺth のとき：接触と判定      …（１ａ）
δＺth ＜ Ｚmes−Ｚss のとき：非接触と判定    …（１ｂ）
ここで、Ｚmesは三角測量で検出された指先のＺ座標値、Ｚssはスクリーン面ＳＳの既知のＺ座標値、δＺthは差分閾値である。
すなわち、接触判定では、指示体のＺ座標値Ｚmesとスクリーン面ＳＳのＺ座標値Ｚssとの差分（Ｚmes−Ｚss）が、差分閾値δＺth以下であれば接触と判定され、差分閾値δＺthより大きければ非接触と判定される。なお、差分閾値δＺthとしては、例えば３〜５ｍｍの値が使用される。
【００４９】
ステップＳ１３０において接触と判定された場合にはステップＳ１４０においてタッチ処理が実行され、非接触と判定された場合にはステップＳ１５０において非タッチ処理が実行される。ここで、「タッチ処理」とは、指示体が投写画面ＰＳに接触しているときに、その接触位置に応じて行われる各種の処理を意味する。タッチ処理としては、例えば、線図の描画（図２（Ｂ））や、ツールの選択等の処理がある。また、「非タッチ処理」とは、指示体が投写画面ＰＳに接触していないときに、指示体の３次元位置に応じて行われる各種の処理を意味する。この非タッチ処理としては、例えば、指示体で利用されているツールについて投写画面ＰＳ上における位置を更新して再描画する処理等がある。なお、「非タッチ処理」として何も実行しないものとしてもよい。なお、ステップＳ１４０，Ｓ１５０の処理は、投写画像生成部５００（図３）によって実行される。
【００５０】
ステップＳ１６０では、補正部６２０（図３）が、ステップＳ１２０で得られたＺ座標値を用いてヒストグラムを更新する。ステップＳ１７０では、補正部６２０が、ヒストグラムのピークのＺ座標値Ｚpと、スクリーン面ＳＳの既知のＺ座標値Ｚssとを比較し、この比較結果に応じて以下のようにＺ座標の補正を行う。
（１）Ｚss＜Ｚpの場合：Ｚ座標のプラス補正を行う（ステップＳ１８０）。具体的には、例えば、スクリーン面ＳＳのＺ座標値Ｚssに＋δを加える。
（２）Ｚss＝Ｚpの場合：Ｚ座標の補正は行わない。
（３）Ｚp＜Ｚssの場合：Ｚ座標のマイナス補正を行う（ステップＳ１９０）。具体的には、例えば、スクリーン面ＳＳのＺ座標値Ｚssに−δを加える。
ここで、「δ」は、Ｚ座標の補正で利用する最小補正単位を意味しており、Ｚ座標値のビット数に応じて予め適宜設定される。例えば、この最小補正単位δは、Ｚ座標値の最下位ビットの「０」と「１」の差分に相当する値としてもよい。
【００５１】
図５（Ｂ）の例に示したように、ピークのＺ座標値Ｚpがスクリーン面ＳＳのＺ座標値Ｚssよりも小さい場合には、ステップＳ１９０においてマイナス補正が行われる。この理由は、図５で説明したように、ピークのＺ座標値Ｚpは、指示体８０（指先）がスクリーン面ＳＳに接触している状態に対応するものと考えられるので、Ｚp＜Ｚssとなっている場合にスクリーン面ＳＳのＺ座標値Ｚssをマイナス側に補正すれば正しい値に近づくからである。その後は、この補正後のスクリーン面ＳＳのＺ座標値Ｚssを接触判定に使用すれば、接触判定の精度を向上できる。逆に、ピークのＺ座標値Ｚpがスクリーン面ＳＳのＺ座標値Ｚssよりも大きい場合には、ステップＳ１８０においてプラス補正を行うことによって、接触判定の精度を向上できる。
【００５２】
なお、ステップＳ１８０，Ｓ１９０では、ピークのＺ座標値Ｚpとスクリーン面ＳＳのＺ座標値Ｚssの差分（Ｚp−Ｚss）の大きさに拘わらず、一定の最小補正単位δで補正が行われている。こうすることにより、Ｚ座標が大幅に補正されることに起因して、予期しない不具合（例えば、接触判定と非接触判定とが頻繁に切り替わってしまうこと等）が発生することを防止できる。また、図６の処理は一定周期毎に行われるので、仮に差分（Ｚp−Ｚss）がかなり大きな場合にも、図６の処理が複数回繰り返されるに従って、徐々に差分（Ｚp−Ｚss）が減少してゼロに近づいてゆくので、実際上の問題はない。但し、ステップＳ１８０，Ｓ１９０における補正値としては、最小補正単位δを使用する代わりに、他の補正値を使用しても良い。例えば、補正値として、ピークのＺ座標値Ｚpとスクリーン面ＳＳのＺ座標値Ｚssの差分の絶対値｜Ｚp−Ｚss｜に係数ｋを乗じた値ｋ｜Ｚp−Ｚss｜を使用してもよい。ここで、係数ｋとしては、例えば０．６以上１．０以下の範囲の値を使用可能である。こうすれば、より早期にＺ座標の補正を完了できる。
【００５３】
こうして、ステップＳ１７０〜Ｓ１９０におけるＺ座標の補正処理が終了すると、ステップＳ１１０に戻り、上述したステップＳ１１０〜Ｓ１９０の処理が一定周期毎に繰り返し実行される。
【００５４】
なお、Ｚ座標値のデータ数が少ない間はヒストグラムの信頼性が低いため、Ｚ座標の補正（図６のステップＳ１７０〜Ｓ１９０）を行わないものとしてもよい。すなわち、Ｚ座標値のデータ数が所定数（例えば１００個）を超えた時点以降にＺ座標の補正を行うようにしてもよい。また、ステップＳ１２０で得られた指示体（指先）のＸＹ座標値が前回から変化していないときには、特殊な事情が発生している可能性があるので、ヒストグラムへの加算以降の処理（ステップＳ１６０〜Ｓ１９０）は行わないものとしてもよい。なお、図６の処理は、プロジェクター１００の電源が投入されるごとにリセットされても良く、或いは、プロジェクター１００の電源が落とされた後も補正後のＺ座標値を位置検出部６００内の不揮発性メモリー（図示せず）に保持しておくようにしても良い。
【００５５】
更に、Ｚ座標の補正は、スクリーン面ＳＳ（又は投写画面ＰＳ）全体に対して１つのＺ座標値を割り当てた状態で実施しても良く、或いは、スクリーン面ＳＳ（又は投写画面ＰＳ）を複数の小領域に分割して、それぞれの小領域毎に１つのＺ座標値を割り当てた状態で実施しても良い。
【００５６】
図７は、投写画面ＰＳ上におけるＺ座標補正の区分の例を示す説明図である。図７（Ａ）の例では、投写画面ＰＳの全体に対して同一のＺ座標値が割り当てられており、このＺ座標値に対して図６の補正が実行される。図７（Ｂ）の例では、投写画面ＰＳが複数（ここでは９つ）の小領域ＰＳ１〜ＰＳ９に区分されており、これらの小領域ＰＳ１〜ＰＳ９のそれぞれに対してＺ座標の補正が個別に実行される。後者の場合には、図５に示したヒストグラムも個々の小領域ＰＳ１〜ＰＳ９毎に作成される。なお、投写画面ＰＳ（又はスクリーン面ＳＳ）を複数の小領域ＰＳ１〜ＰＳ９に区分した場合には、複数の小領域ＰＳ１〜ＰＳ９における補正後のＺ座標値を補間して、投写画面ＰＳ（又はスクリーン面ＳＳ）の全体に亘る局所的なＺ座標値を求めるようにしても良い。例えば、或る１つの小領域（例えばＰＳ１）の中心から隣の小領域（例えばＰＳ２）の中心に向かって、補間後のＺ座標値を直線補間又は多項式近似補間により算出してもよい。このような小領域に区分したＺ座標の補正は、以下に説明する他の実施形態にも適用可能である。
【００５７】
なお、図６の処理では、指示体のＺ座標値のヒストグラムのピークにおけるＺ座標値Ｚpに基づいてＺ座標の補正を行うものとしたが、ヒストグラムから得られる他の特性値を用いてＺ座標の補正を行うようにしてもよい。例えば、ヒストグラムのピークにおけるＺ座標値Ｚpと最小Ｚ座標値Ｚminとの平均値（単純平均又は重み付き平均）を用いてＺ座標の補正を行うことも可能である。一般に、指示体のＺ座標値のヒストグラムには、指示体がスクリーン面ＳＳに接触している状態が反映されているので、そのヒストグラムに基づいて補正を行うようにすれば、スクリーン面ＳＳに対する指示体の接触の有無を精度良く検出可能である。
【００５８】
以上のように、第１実施形態では、指示体のＺ座標値のヒストグラムに基づいてスクリーン面のＺ座標値Ｚssを補正するようにしたので、スクリーン面ＳＳに対する指示体の接触検出の精度を向上させることが可能である。
【００５９】
Ｂ．第２実施形態
図８は、第２実施形態におけるＺ座標補正のフローチャートである。図６に示した第１実施形態との違いは、ステップＳ１６０ａ，Ｓ１７０ａだけであり、他のステップは図６と同一である。
【００６０】
ステップＳ１６０ａでは、Ｚ座標値のヒストグラムの更新（図６のステップＳ１６０）の代わりに、最小Ｚ座標値Ｚminを必要に応じて更新する。ここで、「最小Ｚ座標値Ｚmin」とは、図６の処理が複数回繰り返された履歴の中で得られたＺ座標値の最小値を意味する。最小Ｚ座標値Ｚminは、図５（Ｂ）のヒストグラムにも現れているが、最小Ｚ座標値Ｚminを得るためにヒストグラムを作成する必要は無く、単にＺ座標値の履歴の中で最小の値を最小Ｚ座標値Ｚminとして登録すれば良い。ステップＳ１６０ａにおける最小Ｚ座標値Ｚminの更新は、ステップＳ１２０で得られた指先のＺ座標値がそれ以前の最小Ｚ座標値Ｚminよりも小さい場合にのみ実行される。
【００６１】
ステップＳ１７０ａでは、補正部６２０が、最小Ｚ座標値Ｚminと、スクリーン面ＳＳの既知のＺ座標値Ｚssとを比較し、この比較結果に応じて以下のようにＺ座標の補正を行う。
（１）Ｚss＜Ｚminの場合：Ｚ座標のプラス補正を行う（ステップＳ１８０）。
（２）Ｚss＝Ｚminの場合：Ｚ座標の補正は行わない。
（３）Ｚmin＜Ｚssの場合：Ｚ座標のマイナス補正を行う（ステップＳ１９０）。
この補正の結果、第１実施形態と同様に、Ｚ座標値にズレが生じている場合にも、正しい値に補正することが可能となる。
【００６２】
第２実施形態で最小Ｚ座標値Ｚminを用いている理由は、この最小Ｚ座標値ＺminがヒストグラムのピークのＺ座標値Ｚpとほとんど同じで両者の差は十分に小さいので、両者のいずれを用いてもほぼ同様の補正効果が得られるからである。また、最小Ｚ座標値Ｚminを利用する場合には、ヒストグラムを作成する必要が無いので、処理がより簡単であるという利点がある。
【００６３】
このように、第２実施形態では、三角測量で得られた指示体の最小Ｚ座標値Ｚminに基づいて、Ｚ座標の補正を実行するようにしたので、指示体の接触検出の検出精度を向上させることが可能である。なお、最小Ｚ座標値Ｚminは、三角測量で得られる指示体のＺ座標値の履歴から決まる特性であるという意味では、第１実施形態で用いたヒストグラムと共通している。従って、第１実施形態と第２実施形態は、指示体のＺ座標値の履歴に基づいてスクリーン面のＺ座標値Ｚssを補正するという点で共通していることが理解できる。
【００６４】
Ｃ．第３実施形態
図９は、第３実施形態におけるＺ座標補正のフローチャートである。図６に示した第１実施形態との違いは、ステップＳ１４０，Ｓ１５０とステップＳ１６０との間に、ステップＳ１５５を追加した点だけであり、他のステップは図６と同一である。
【００６５】
ステップＳ１５５では、補正部６２０が、指先のＺ方向速度がゼロか否かを判断し、指先のＺ方向速度がゼロである場合にはステップＳ１６０以降のＺ座標補正処理を実行し、一方、指先のＺ方向速度がゼロでない場合にはＺ座標補正処理を行わずにステップＳ１１０に戻る。なお、指先のＺ方向速度がゼロか否かは、今回のステップＳ１２０で得られた指先のＺ座標値と、前回の図６の処理においてステップＳ１２０で得られた指先のＺ座標値との差分がゼロか否かに応じて判定できる。なお、Ｚ方向速度がゼロか否かの判定を
厳密に行う必要はなく、Ｚ方向速度の絶対値が微小な許容誤差以下である場合にはＺ方向速度がゼロであると判定しても良い。
【００６６】
第３実施形態において指先のＺ方向速度がゼロである場合にのみステップＳ１６０以降のＺ座標補正処理を実行する理由は、指先がスクリーン面ＳＳに接触しているときには指先のＺ方向速度がゼロになっていると考えられるからである。第３実施形態では、指先のＺ方向速度がゼロの場合に得られたＺ座標値のヒストグラムが作成されるので、Ｚ座標の補正の信頼性を第１実施形態よりも高めることが可能である。なお、図８に示した第２実施形態においても、第３実施形態と同様に、指先のＺ方向速度がゼロの場合にのみステップＳ１６０ａ以降のＺ座標補正処理を実行するようにしても良い。
【００６７】
・変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００６８】
・変形例１：
上記実施形態では、指先（非発光指示体８０）を用いた場合にＺ座標の補正を行うものとしていたが、自発光指示体７０を用いた場合にも同様にＺ座標の補正を行うものとしてもよい。例えば、ユーザーが自発光指示体７０を用いているか非発光指示体８０を用いているかに拘わらず、図６，図８，又は図９で説明した処理を実行して、Ｚ座標の補正を行うものとしてもよい。但し、自発光指示体７０に関しては、先端スイッチ７６（図３）のオン／オフに応じて接触判定を行うことも可能なので、上述したＺ座標の補正の効果は非発光指示体８０を用いた場合により顕著である。
【００６９】
・変形例２：
Ｚ座標の補正の方法としては、以下のような種々の方法のいずれかを採用することが可能である。
（ａ）スクリーン面ＳＳのＺ座標値Ｚssを補正する（第１実施形態）。
（ｂ）三角測量により得られる指示体のＺ座標値を補正する。
（ｃ）指示体の接触判定で使用される差分閾値δＺthを補正する。
（ｄ）上記（ａ）〜（ｃ）のうちの２つ以上を同時に行う。
なお、Ｚ座標の補正は、スクリーン面ＳＳに対する指示体の接触検出の検出精度を高めるために行われるので、これらの方法（ａ）〜（ｄ）のいずれを採用しても、ほぼ同じ効果が得られる。但し、上記（ａ）〜（ｃ）のうちの２つを同時に行う場合には、１回に補正されるＺ座標値が最小補正単位δの２倍となる。一方、上記（ａ）〜（ｃ）のいずれか１つのみを実行するようにすれば、１回に補正されるＺ座標値が最小補正単位δとなるので、１回当たりの補正量を小さくすることが可能であり、予期しない過補正を防止できる。
【００７０】
・変形例３：
上記実施形態では、投写画面ＰＡが平面状のスクリーン面ＳＳに投写されるものとしていたが、投写画面ＰＳが曲面状のスクリーン面ＳＳに投写されるものとしても良い。この場合にも、２台のカメラで撮像された画像を用い、三角測量を利用して指示体の先端部の３次元位置を決定できるので、指示体の先端部と投写画面の位置関係を決定することが可能である。また、曲面状のスクリーン面ＳＳを利用する場合には、図７（Ｂ）で示したように、投写画面ＰＳ（又はスクリーン面ＳＳ）を複数の小領域に区分し、各小領域に関してＺ座標を補正することにより、接触検出の精度をより高めることが可能である。
【００７１】
・変形例４：
上記実施形態では、投写画面ＰＳの領域（画像が投写される投写範囲）を撮像する撮像部３００が２台のカメラ３１０，３２０を有しているものとしたが、撮像部３００は３台以上のカメラを有していてもよい。後者の場合には、ｍ台（ｍは３以上の整数）のカメラで撮像されたｍ個の画像に基づいて、指示体の３次元座標（Ｘ，Ｙ，Ｚ）が決定される。例えば、ｍ個の画像から２個の画像を任意に選択して得られるｍＣ２個の組み合わせを用いてそれぞれ３次元座標を求め、それらの平均値を用いて最終的な３次元座標を決定しても良い。こうすれば、３次元座標の検出精度を更に高めることが可能である。
【００７２】
・変形例５：
上記実施形態では、複数台のカメラを用い、三角測量によって指示体の３次元座標を検出していたが、これ以外の手段を用いて指示体の３次元座標の検出を行うようにしてもよい。指示体の３次元座標を検出する他の手段としては、例えば、対象物に構造化光を投影して撮像する方式や、ＴｏＦ（Time of Flight）方式を採用することが可能である。
【００７３】
以上、いくつかの実施例に基づいて本発明の実施の形態について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得るとともに、本発明にはその等価物が含まれることはもちろんである。
【符号の説明】
【００７４】
７０…自発光指示体，７１…先端部，７２…軸部，７３…ボタンスイッチ，７４…信号光受信部，７５…制御部，７６…先端スイッチ，７７…先端発光部，８０…非発光指示体，８１…先端部，１００…インタラクティブプロジェクター，２００…投写部，２１０…投写レンズ，２２０…光変調部，２３０…光源，３００…撮像部，３１０…第１カメラ，３２０…第２カメラ，４１０…検出光照射部，４３０…信号光送信部，５００…投写画像生成部，５１０…投写画像メモリー，６００…位置検出部，６１０…検出部，６２０…補正部，７００…制御部，９００…インタラクティブプロジェクションシステム，９１０…支持部材，９２０…スクリーン板
【図１】
0006569361.tif 000002
【図２】
0006569361.tif 000003
【図３】
0006569361.tif 000004
【図４】
0006569361.tif 000005
【図５】
0006569361.tif 000006
【図６】
0006569361.tif 000007
【図７】
0006569361.tif 000008
【図８】
0006569361.tif 000009
【図９】
0006569361.tif 000010