(57)【特許請求の範囲】
【請求項１】
操作面に対して操作を行う指示体、及び前記指示体とは異なる対象物を検出する検出部と、
前記操作面を含む範囲を撮影した撮影画像を形成する撮影部と、
前記撮影画像に基づいて、前記操作面に対する前記対象物の動きと、前記操作面に対する前記指示体の位置とを検出することにより、前記指示体による操作を入力として検出するか否かを判定する制御部と、
を有することを特徴とする位置検出装置。
【請求項２】
前記検出部は、前記指示体の位置又は動きを検出し、前記制御部は、前記検出部が検出する前記指示体の位置又は動きに基づき入力を検出する、ことを特徴とする請求項１記載の位置検出装置。
【請求項３】
前記制御部は、前記指示体と前記操作面との距離、及び、前記対象物と前記操作面との距離に基づいて、前記指示体の位置又は動きを入力として検出するか否かを判定する、ことを特徴とする請求項１又は２記載の位置検出装置。
【請求項４】
前記制御部は、前記指示体と前記操作面との距離が、前記対象物と前記操作面との距離よりも離れている場合に、前記指示体の位置又は動きを入力として検出しないと判定する、ことを特徴とする請求項３記載の位置検出装置。
【請求項５】
前記制御部は、前記検出部が複数の前記対象物を検出した場合に、前記操作面との距離が、前記指示体と前記操作面との距離よりも近い前記対象物の位置又は動きを入力として検出する、ことを特徴とする請求項４記載の位置検出装置。
【請求項６】
前記制御部は、前記操作面との距離が、前記指示体と前記操作面との距離よりも近い前記対象物が複数検出された場合に、これら複数の前記対象物の間の距離の変化を、前記撮影部の撮影画像に基づいて求め、求めた距離の変化に基づいて前記操作面に対する前記対象物の動きを入力として検出する、ことを特徴とする請求項５記載の位置検出装置。
【請求項７】
前記制御部は、前記撮影部の撮影画像に基づいて、それぞれの前記対象物の前記操作面に対する相対位置の経時変化を求めることにより、複数の前記対象物の間の距離の変化を検出する、ことを特徴とする請求項６記載の位置検出装置。
【請求項８】
前記制御部は、前記検出部が検出する前記対象物が、前記指示体を把持した操作者の手指である場合に、前記対象物の位置又は動きを入力として検出する、ことを特徴とする請求項４記載の位置検出装置。
【請求項９】
前記制御部は、前記検出部が複数の対象物を検出した場合に、検出した複数の前記対象物のそれぞれを前記操作者に対応付けて、前記操作者ごとに操作を検出する、ことを特徴とする請求項１から８のいずれか一項に記載の位置検出装置。
【請求項１０】
投射面に画像を投射する投射部と、
前記投射面に対して操作を行う指示体、及び前記指示体とは異なる対象物を検出する検出部と、
前記投射面を含む範囲を撮影した撮影画像を形成する撮影部と、
前記撮影画像に基づいて、前記投射面に対する前記対象物の動きと、前記投射面に対する前記指示体の位置とを検出することにより、前記指示体による操作を入力として検出するか否かを判定する制御部と、
を有することを特徴とするプロジェクター。
【請求項１１】
操作面に対して操作を行う指示体、及び前記指示体とは異なる対象物を検出する検出ステップと、
前記操作面を含む範囲を撮影した撮影画像を形成する撮影ステップと、
前記撮影ステップで撮影された前記撮影画像に基づいて、前記操作面に対する前記対象物の動きと、前記操作面に対する前記指示体の位置とを検出することにより、前記指示体による操作を入力として検出するか否かを判定する判定ステップと、
を有することを特徴とする位置検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置検出装置、プロジェクター、及び、位置検出方法に関する。
【背景技術】
【０００２】
従来、タブレットデバイスにおいて、ペンの操作と、指等による操作とを検出するものが知られている（例えば、特許文献１〜３参照）。この種の装置は、意図しない指等による操作を検出してしまうことを防ぐ構成を具備する。例えば、特許文献１の構成は、指等による入力情報の後に連続してペンによる入力情報が存在する場合に、指等による入力情報を削除する。特許文献２の構成は、専用ペンの電磁誘導式タブレットへの接近を検知した場合に、タッチ入力を無効にする。特許文献３の構成は、感圧タブレットの一部の感度を低くなるように設定する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−１２４２３９号公報
【特許文献２】特開平９−１３８７３０号公報
【特許文献３】特開平５−１４３２２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１〜３の構成は、ペンや指の接触による電流強度の変化により操作を検出するタブレットや、感圧式或いは電磁誘導方式を採用したタブレットであるが、ペンや指による位置入力操作が可能な構成は他にも挙げられる。しかしながら、多彩な位置入力操作が可能であるほど、操作者が意図しない操作を、入力操作として検出してしまう可能性がある。
本発明は上記課題に鑑みてなされたものであり、操作者の意図しない操作を入力として検出しないようにすることができる位置検出装置、プロジェクター、及び、位置検出方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明の位置検出装置は、操作面に対して操作を行う指示体、及び前記指示体とは異なる対象物を検出する検出部と、前記操作面を含む範囲を撮影した撮影画像を形成する撮影部と、前記撮影画像に基づいて、前記操作面に対する前記対象物の動きと、前記操作面に対する前記指示体の位置とを検出することにより、前記指示体による操作を入力として検出するか否かを判定する制御部とを有することを特徴とする。
本発明によれば、入力として検出すべき操作を判定することで、操作者の意図しない操作を入力として検出することを防止できる。
【０００６】
また、上記位置検出装置において、前記検出部は、前記指示体の位置又は動きを検出し、前記制御部は、前記検出部が検出する前記指示体の位置又は動きに基づき入力を検出することを特徴とする。
本発明によれば、指示体の位置又は動きを操作として検出させることができる。
【０００７】
また、上記位置検出装置において、前記制御部は、前記指示体と前記操作面との距離、及び、前記対象物と前記操作面との距離に基づいて、前記指示体の位置又は動きを入力として検出するか否かを判定することを特徴とする。
本発明によれば、指示体及び対象物の操作面との距離により、指示体の位置または動きを入力として検出するかどうかを適切に判定できる。また、操作者は、指示体及び対象物の操作面との距離により、指示体の位置又は動きを検出するのか、対象物の位置又は動きを検出するのかを切り替えることができる。
【０００８】
また、上記位置検出装置において、前記制御部は、前記指示体と前記操作面との距離が、前記対象物と前記操作面との距離よりも離れている場合に、前記指示体の位置又は動きを入力として検出しないことを特徴とする。
本発明によれば、指示体の操作面との距離が、対象物と操作面との距離よりも離れている場合に、指示体の位置又は動きを入力として検出しないようにすることができる。
【０００９】
また、上記位置検出装置において、前記制御部は、前記検出部が複数の前記対象物を検出した場合に、前記操作面との距離が、前記指示体と前記操作面との距離よりも近い前記対象物の位置又は動きを入力として検出することを特徴とする。
本発明によれば、操作面との距離が、指示体と操作面との距離よりも近い複数の対象物の位置又は動きを操作として検出できる。従って、複数の対象物による操作が可能となる。
【００１０】
また、上記位置検出装置において、前記操作面との距離が、前記指示体と前記操作面との距離よりも近い前記対象物が複数検出された場合に、これら複数の前記対象物の間の距離の変化を、前記撮影部の撮影画像に基づいて求め、求めた距離の変化に基づいて前記操作面に対する前記対象物の動きを入力として検出することを特徴とする。
本発明によれば、複数の対象物間の距離の変化を、操作面に対する対象物の動きによる入力として検出できる。
【００１１】
また、上記位置検出装置において、前記制御部は、前記撮影部の撮影画像に基づいて、それぞれの前記対象物の前記操作面に対する相対位置の経時変化を求めることにより、複数の前記対象物の間の距離の変化を検出することを特徴とする。
本発明によれば、それぞれの対象物の操作面に対する相対位置の経時変化を求めて、複数の対象物間の距離の変化を検出できる。
【００１２】
また、上記位置検出装置において、前記制御部は、前記検出部が検出する前記対象物が、前記指示体を把持した操作者の手指である場合に、前記対象物の位置又は動きを入力として検出することを特徴とする。
本発明によれば、指示体を把持した操作者の手指によって操作することが可能となる。
【００１３】
また、上記位置検出装置において、前記制御部は、前記検出部が複数の対象物を検出した場合に、検出した複数の前記対象物のそれぞれを前記操作者に対応付けて、前記操作者ごとに操作を検出することを特徴とする。
本発明によれば、対象物による操作を操作者ごとに検出できる。
【００１４】
本発明のプロジェクターは、投射面に画像を投射する投射部と、前記投射面に対して操作を行う指示体、及び前記指示体とは異なる対象物を検出する検出部と、前記投射面を含む範囲を撮影した撮影画像を形成する撮影部と、前記撮影画像に基づいて、前記投射面に対する前記対象物の動きと、前記投射面に対する前記指示体の位置とを検出することにより、前記指示体による操作を入力として検出するか否かを判定する制御部とを有することを特徴とする。
本発明によれば、入力として検出すべき操作を判定することで、操作者の意図しない操作を入力として検出することを防止できる。
【００１５】
本発明の位置検出方法は、操作面に対して操作を行う指示体、及び前記指示体とは異なる対象物を検出する検出ステップと、前記操作面を含む範囲を撮影した撮影画像を形成する撮影ステップと、前記撮影ステップで撮影された前記撮影画像に基づいて、前記操作面に対する前記対象物の動きと、前記操作面に対する前記指示体の位置とを検出することにより、前記指示体による操作を入力として検出するか否かを判定する判定ステップと、を有することを特徴とする。
本発明によれば、入力として検出すべき操作を判定することで、操作者の意図しない操作を入力として検出することを防止できる。
【図面の簡単な説明】
【００１６】
【図１】プロジェクターの設置状態を示す図である。
【図２】プロジェクター及び指示体の機能ブロック図である。
【図３】プロジェクターが検出する指示操作を示す図である。
【図４】プロジェクターが検出する指示操作を示す図である。
【図５】プロジェクターの動作手順を示すフローチャートである。
【図６】ステップＳ９の詳細を示すフローチャートである。
【発明を実施するための形態】
【００１７】
図１は、プロジェクター（位置検出装置）１００の設置状態を示す図である。
プロジェクター１００は、スクリーンＳＣ（操作面）の直上又は斜め上方に設置され、斜め下方のスクリーンＳＣに向けて画像を投射する。スクリーンＳＣは、壁面に固定され、又は床面に立設された平板又は幕である。本発明は、この例に限定されず、壁面をスクリーンＳＣとして使用することも可能である。この場合、スクリーンＳＣとして使用される壁面の上部にプロジェクター１００を取り付けるとよい。
【００１８】
プロジェクター１００は、ＰＣ（パーソナルコンピューター）、ビデオ再生装置、ＤＶＤ再生装置、Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ（ブルーレイディスク）再生装置等の画像供給装置に接続される。プロジェクター１００は、画像供給装置から供給されるアナログ画像信号又はデジタル画像データに基づいて、スクリーンＳＣに画像を投射する。また、プロジェクター１００は、内蔵する記憶部６０（図２）や外部接続される記憶媒体に記憶された画像データを読み出して、この画像データに基づきスクリーンＳＣに画像を表示してもよい。
【００１９】
プロジェクター１００は、スクリーンＳＣに対するユーザー（操作者）の指示操作を検出する。スクリーンＳＣに対する指示操作には、ペン型の指示体７０、又はユーザーの手指である指示体８０（対象物）が利用される。また、ユーザーの指示操作には、指示体７０又は指示体８０により、スクリーンＳＣ上の位置を指定（指示）する操作、スクリーンＳＣ上の位置を連続して指示する操作等が含まれる。スクリーンＳＣ上の位置を連続して指示する操作とは、例えば、指示体７０、８０をスクリーンＳＣに対して動かし、文字や図形等を描く操作である。プロジェクター１００は、指示されたスクリーンＳＣの位置を検出する検出処理を繰り返し行うことで、ユーザーがスクリーンＳＣ上の位置を連続して指示する操作の指示位置の軌跡（動き）を検出できる。
【００２０】
指示体７０の先端部７１には、押圧された場合に動作する操作スイッチ７５（図２）が内蔵される。指示体７０の先端部７１を壁やスクリーンＳＣに押しつける操作がされると、操作スイッチ７５がオンになる。指示体７０は、ユーザーが棒状の軸部７２を手に持って、先端部７１をスクリーンＳＣに接触させるように操作される。また、指示体７０は、先端部７１をスクリーンＳＣに押しつける操作も行われる。指示体７０は、先端部７１に、赤外光を発する送受信部７４（図２）を備える。送受信部７４は、操作スイッチ７５がオンの場合と、オフの場合とで、赤外光の点灯パターンを変更する。
プロジェクター１００は、指示体７０が発する赤外光に基づき、先端部７１の位置を、指示位置として検出する。また、プロジェクター１００は、指示体７０が発する赤外光の点灯パターンに基づいて、指示体７０が壁やスクリーンＳＣに押しつけられているか否かを判定する。
【００２１】
また、プロジェクター１００は、指示体８０としてのユーザーの手指の指示位置を検出する。プロジェクター１００は、指示体８０による指示位置として、ユーザーの手指の位置と、手指がスクリーンＳＣに接触する接触位置とのいずれかを検出することができ、どちらを指示位置とするかを設定することもできる。また、プロジェクター１００は、指示体８０と、スクリーンＳＣとの距離を算出する。また、プロジェクター１００は、ユーザーの複数本の指による指示操作が行われた場合に、これら複数本の指による指示位置を全て検出することも可能である。また、プロジェクター１００は、複数本の指とスクリーンＳＣとの距離をそれぞれに算出することも可能である。
【００２２】
プロジェクター１００は、ユーザーが指示体７０、８０により行った指示操作を検出して、検出した指示操作をスクリーンＳＣの表示画像に反映させる。具体的には、プロジェクター１００は、指示位置に図形を描画したり文字や記号を配置したりする処理、指示位置の軌跡に沿って図形を描画する処理、描画した図形や配置した文字又は記号を消去する処理等を行う。また、プロジェクター１００は、スクリーンＳＣに描画された図形、配置された文字又は記号を画像データとして保存することもでき、外部の装置に出力することもできる。
さらに、プロジェクター１００は、指示位置を検出することによりポインティングデバイスとして動作し、スクリーンＳＣ上の指示位置の座標を出力してもよい。また、この座標を用いて、プロジェクター１００に対してＧＵＩ（Graphical User Interface）操作を行うこともできる。
【００２３】
図２は、プロジェクター１００の構成を示す構成図である。
プロジェクター１００は、外部の装置に接続されるインターフェイスとして、Ｉ／Ｆ（インターフェイス）部１１及び画像Ｉ／Ｆ（インターフェイス）部１２を備える。Ｉ／Ｆ部１１及び画像Ｉ／Ｆ部１２は有線接続用のコネクターを備え、上記コネクターに対応するインターフェイス回路を備えていてもよい。また、Ｉ／Ｆ部１１及び画像Ｉ／Ｆ部１２は、無線通信インターフェイスを備えていてもよい。有線接続用のコネクター及びインターフェイス回路としては有線ＬＡＮ、ＩＥＥＥ１３９４、ＵＳＢ等に準拠したものが挙げられる。また、無線通信インターフェイスとしては無線ＬＡＮやＢｌｕｅｔｏｏｔｈ（登録商標）等に準拠したものが挙げられる。画像Ｉ／Ｆ部１２には、ＨＤＭＩ（登録商標）インターフェイス等の画像データ用のインターフェイスを用いることもできる。画像Ｉ／Ｆ部１２は、音声データが入力されるインターフェイスを備えてもよい。
【００２４】
Ｉ／Ｆ部１１は、ＰＣ等の外部の装置との間で各種データを送受信するインターフェイスである。Ｉ／Ｆ部１１は、画像の投射に関するデータ、プロジェクター１００の動作を設定するデータ等を入出力する。後述する制御部３０は、Ｉ／Ｆ部１１を介して外部の装置とデータを送受信する機能を有する。
画像Ｉ／Ｆ部１２は、デジタル画像データが入力されるインターフェイスである。本実施形態のプロジェクター１００は、画像Ｉ／Ｆ部１２を介して入力されるデジタル画像データに基づき画像を投射する。なお、プロジェクター１００は、アナログ画像信号に基づき画像を投射する機能を備えていてもよく、この場合、画像Ｉ／Ｆ部１２は、アナログ画像用のインターフェイスと、アナログ画像信号をデジタル画像データに変換するＡ／Ｄ変換回路とを備えてもよい。
【００２５】
プロジェクター１００は、光学的な画像の形成を行う投射部２０を備える。投射部２０は、光源部２１、光変調装置２２及び投射光学系２３を有する。光源部２１は、キセノンランプ、超高圧水銀ランプ、ＬＥＤ（Light Emitting Diode）又はレーザー光源等からなる光源を備える。また、光源部２１は、光源が発した光を光変調装置２２に導くリフレクター及び補助リフレクターを備えていてもよい。さらに、プロジェクター１００は、投射光の光学特性を高めるためのレンズ群（図示略）、偏光板、又は光源が発した光の光量を光変調装置２２に至る経路上で低減させる調光素子等を備えていてもよい。
【００２６】
光変調装置２２は、例えばＲＧＢの三原色に対応した３枚の透過型液晶パネルを備え、この液晶パネルを透過する光を変調して画像光を生成する。光源部２１からの光はＲＧＢの３色の色光に分離され、各色光は対応する各液晶パネルに入射する。各液晶パネルを通過して変調された色光はクロスダイクロイックプリズム等の合成光学系によって合成され、投射光学系２３に射出される。
【００２７】
投射光学系２３は、光変調装置２２により変調された画像光をスクリーンＳＣ方向へ導き、スクリーンＳＣ上に結像させるレンズ群を備える。また、投射光学系２３は、スクリーンＳＣの表示画像の拡大・縮小及び焦点の調整を行うズーム機構、フォーカスの調整を行うフォーカス調整機構を備えていてもよい。プロジェクター１００が短焦点型である場合、投射光学系２３に、画像光をスクリーンＳＣに向けて反射する凹面鏡を備えていてもよい。
【００２８】
投射部２０は、制御部３０の制御に従って光源部２１を点灯させる光源駆動部４５、及び制御部３０の制御に従って光変調装置２２を動作させる光変調装置駆動部４６に接続される。光源駆動部４５は、光源部２１の点灯、消灯の切り替えを行い、光源部２１の光量を調整する機能を有していてもよい。
【００２９】
プロジェクター１００は、投射部２０が投射する画像を処理する画像処理系を備える。この画像処理系は、プロジェクター１００を制御する制御部３０、記憶部６０、操作検出部１７、画像処理部４０、光源駆動部４５及び光変調装置駆動部４６を含む。また、画像処理部４０にはフレームメモリー４１が接続され、制御部３０には位置検出部５０が接続される。これらの各部を画像処理系に含めてもよい。
【００３０】
制御部３０は、所定の制御プログラム６１を実行することによりプロジェクター１００の各部を制御する。記憶部６０は、制御部３０が実行する制御プログラム６１、及び制御部３０が処理するデータを不揮発的に記憶する。記憶部６０は、指示体７０及び指示体８０の少なくとも一方による指示位置の座標と、指示位置の軌跡を示す軌跡データと、タッチ情報と、距離情報とをユーザーの位置情報に対応づけて記憶する。なお、これらの情報の詳細については後述する。
【００３１】
画像処理部４０は、制御部３０の制御に従って、画像Ｉ／Ｆ部１２を介して入力される画像データを処理し、光変調装置駆動部４６に画像信号を出力する。画像処理部４０が実行する処理は、３Ｄ（立体）画像と２Ｄ（平面）画像の判別処理、解像度変換処理、フレームレート変換処理、歪み補正処理、デジタルズーム処理、色調補正処理、輝度補正処理等である。画像処理部４０は、制御部３０により指定された処理を実行し、必要に応じて、制御部３０から入力されるパラメーターを使用して処理を行う。また、上記のうち複数の処理を組み合わせて実行することも勿論可能である。
画像処理部４０は、フレームメモリー４１に接続されている。画像処理部４０は、画像Ｉ／Ｆ部１２から入力される画像データをフレームメモリー４１に展開して、展開した画像データに対し上記の各種処理を実行する。画像処理部４０は、処理後の画像データをフレームメモリー４１から読み出して、この画像データに対応するＲ、Ｇ、Ｂの画像信号を生成し、光変調装置駆動部４６に出力する。
光変調装置駆動部４６は、光変調装置２２の液晶パネルに接続される。光変調装置駆動部４６は、画像処理部４０から入力される画像信号に基づいて液晶パネルを駆動し、各液晶パネルに画像を描画する。
【００３２】
操作検出部１７は、入力デバイスとして機能するリモコン受光部１８及び操作パネル１９に接続され、リモコン受光部１８及び操作パネル１９を介した操作を検出する。
リモコン受光部１８は、プロジェクター１００のユーザーが使用するリモコン（図示略）がボタン操作に対応して送信した赤外線信号を受光する。リモコン受光部１８は、上記リモコンから受光した赤外線信号をデコードして、上記リモコンにおける操作内容を示す操作データを生成し、制御部３０に出力する。
操作パネル１９は、プロジェクター１００の外装筐体に設けられ、各種スイッチ及びインジケーターランプを有する。操作検出部１７は、制御部３０の制御に従い、プロジェクター１００の動作状態や設定状態に応じて操作パネル１９のインジケーターランプを適宜点灯及び消灯させる。この操作パネル１９のスイッチが操作されると、操作されたスイッチに対応する操作データが操作検出部１７から制御部３０に出力される。
【００３３】
位置検出部５０は、スクリーンＳＣに対する指示体７０、８０の指示位置、又はスクリーンＳＣに対する指示体７０、８０の動きを検出する。位置検出部５０は、撮影部５１、撮影制御部５２、送信部５３及び検出部５５の各部を備える。また、検出部５５は、物体検出部５５１と、動き検出部５５２とを備える。
【００３４】
撮影部５１は、指示体７０、８０の指示位置を検出するために、スクリーンＳＣとその周辺部とを含む範囲（操作面を含む範囲）を撮影範囲として撮影した撮影画像を形成する。
撮影部５１は、赤外光による撮影と、可視光による撮影とを、それぞれ実行できる。具体的には、赤外光を撮影する赤外用撮像素子、可視光を撮影する可視光用撮像素子、赤外用撮像素子のインターフェイス回路、及び、可視光用撮像素子のインターフェイス回路を備えた構成とすることができる。また、１つの撮像素子により可視光と赤外光との撮影を行う構成であってもよい。また、例えば、撮影部５１に、撮像素子に入射する光の一部を遮るフィルターを設け、撮像素子に赤外光を受光させる場合に、主に赤外領域の光を透過するフィルターを撮像素子の前に配置させてもよい。撮像素子は限定されず、ＣＣＤ、ＣＭＯＳのいずれであってもよいし、他の素子を用いてもよい。
【００３５】
撮影部５１の赤外光による撮影時の撮影方向および撮影範囲（画角）は、投射光学系２３と同じ方向、または略同じ方向を向き、投射光学系２３がスクリーンＳＣ上に画像を投射する範囲をカバーする。同様に、撮影部５１の可視光による撮影時の撮影方向および撮影範囲は、投射光学系２３と同じ方向、または略同じ方向を向き、投射光学系２３がスクリーンＳＣ上に画像を投射する範囲をカバーする。撮影部５１は、赤外光で撮影した撮影画像のデータ、及び、可視光で撮影した撮影画像のデータを、それぞれ出力する。
【００３６】
撮影制御部５２は、制御部３０の制御に従って撮影部５１を制御し、撮影部５１に撮影を実行させる。撮影制御部５２は、撮影部５１の撮影画像のデータを取得して、検出部５５に出力する。また、撮影制御部５２は、取得した撮影画像のデータを制御部３０に出力する。制御部３０は、撮影制御部５２から入力される撮影画像のデータを記憶部６０に記憶させる。
撮影部５１が可視光で撮影した撮影画像には、スクリーンＳＣ、スクリーンＳＣに投射された投射画像、及び、撮影範囲内に存在するユーザーが写る。また、撮影部５１が赤外光で撮影する撮影画像には、指示体７０が発する赤外光の像が写る。
【００３７】
送信部５３は、撮影制御部５２の制御に従って、指示体７０に対して赤外線信号を送信する。送信部５３は、赤外ＬＥＤ等の光源を有し、この光源を撮影制御部５２の制御に従って点灯及び消灯させる。
【００３８】
物体検出部５５１は、撮影制御部５２の撮影画像のデータから、人物が写った人物領域を検出する。人物領域は、撮影画像において人物の像を含む領域である。物体検出部５５１による人物領域の検出は、一般的に知られた方法を用いることができる。例えば、物体検出部５５１は、入力された撮影画像のデータのエッジを検出して、人の形状にマッチする領域を人物領域として検出する。また、物体検出部５５１は、色情報（輝度、色度等）が所定時間内に変化する領域を検出して、検出した領域のサイズが所定値以上のものや、検出した領域の経時的な移動範囲が所定範囲内のものを人物領域として検出してもよい。
物体検出部５５１は、人物領域を検出すると、検出した人物領域に基づいて、ユーザーの位置を特定する。例えば、物体検出部５５１は、撮影画像のデータの水平方向における、人物領域の中心座標をユーザーの位置を示す位置情報として算出する。物体検出部５５１は、撮影画像のデータから人物領域を複数検出した場合には、ユーザーの位置を示す位置情報も、人物領域に応じて複数検出する。
また、物体検出部５５１は、検出した人物領域に基づいて、ユーザーの身体の部位（例えば、頭部、肩、手、足等）を認識し、ユーザーの姿勢を検出する。ユーザーの姿勢とは、例えば、立位、座位、しゃがんだ状態、腕組みした状態などの体勢を指すが、スクリーンＳＣ側を向いているかスクリーンと反対側を向いているか等の身体の向きを含んでもよい。物体検出部５５１は、検出したユーザーの姿勢に基づいて、ユーザーがスクリーンＳＣに対する指示操作を行い得る姿勢にあるか否かを判定する。物体検出部５５１は、例えば、ユーザーの姿勢が両腕を組んだ姿勢であると判定した場合、ユーザーがスクリーンＳＣに対する操作を行い得る姿勢にないと判定する。ユーザーがスクリーンＳＣに対する操作を行い得る姿勢にないと判定した場合、物体検出部５５１は、このユーザーが検出された人物領域に対する指示体８０の検出等処理を中止してもよい。
【００３９】
また、物体検出部５５１は、撮影画像のデータの人物領域から、ユーザーの手指の画像を検出して指示体８０を検出する。ユーザーの手指とは、１本または複数の指のみであってもよいし、手全体であってもよく、指を含む手の一部であってもよい。物体検出部５５１は、人物領域から、予め定めた手指の形状や特徴に近い領域を、指示体８０の領域として検出する。
また、物体検出部５５１は、検出した指示体８０が指し示すスクリーンＳＣの指示位置の座標を算出する。物体検出部５５１は、検出した指示体８０の領域から手指の先端（指先）を特定し、特定した手指の先端の位置を指示位置として検出する。物体検出部５５１は、指示体８０の指示位置の座標を、撮影画像のデータにおける座標で算出する。また、物体検出部５５１は、検出した指示位置の座標から、スクリーンＳＣの表示画像上に仮想的に設けられた座標軸における座標を算出する。撮影画像のデータにおける座標は、プロジェクター１００とスクリーンＳＣとの距離、投射光学系２３におけるズーム率、プロジェクター１００の設置角度、撮影部５１とスクリーンＳＣとの距離等の様々な要素の影響を受ける。物体検出部５５１は、事前に実施されるキャリブレーションの結果に基づき、撮影画像のデータにおける指示位置の座標から、スクリーンＳＣの表示画像における指示位置の座標を算出する。キャリブレーションでは、所定のパターン画像を投射部２０からスクリーンＳＣに投射して、表示されたパターン画像を撮影部５１で撮影する。撮影部５１の撮影したパターン画像に基づいて、撮影画像のデータにおける座標と、スクリーンＳＣの表示画像上の座標との対応関係（座標変換パラメーター）が導かれる。
【００４０】
また、物体検出部５５１は、検出した指示体８０とスクリーンＳＣとの距離を検出する。物体検出部５５１は、検出した手指の先端と、スクリーンＳＣとの距離を撮影画像のデータに基づいて判定する。例えば、物体検出部５５１は、撮影画像のデータから指の画像と、指の影の画像とを検出して、検出した画像の間の距離に基づいて、手指の先端とスクリーンＳＣとの距離を求める。
また、物体検出部５５１は、撮影画像のデータから複数の人物領域を検出した場合には、各人物領域について、指示体８０と、指示体８０の指示位置の座標とを検出し、検出した指示体８０とスクリーンＳＣとの距離を算出する。
【００４１】
物体検出部５５１は、指示体８０の指示位置の座標と、指示体８０とスクリーンＳＣとの距離を示す距離情報とを、該当のユーザーの位置情報と共に制御部３０に出力する。制御部３０は、指示位置の座標と、距離情報とをユーザーの位置情報に対応付けて記憶部６０に記憶させる。
【００４２】
また、物体検出部５５１は、指示体７０の指示位置の座標を検出する。物体検出部５５１は、撮影部５１が赤外光で撮影した撮影画像のデータに写った赤外光の像を検出して、指示体７０の指示位置の座標を検出する。撮影部５１の撮影画像のデータから指示体７０を特定する方法の詳細については後述する。
物体検出部５５１は、指示体７０の指示位置の座標を検出すると、キャリブレーションの結果に基づいて、撮影画像のデータにおける指示位置の座標から、スクリーンＳＣの表示画像における指示位置の座標を算出する。また、物体検出部５５１は、指示体７０の先端がスクリーンＳＣに接しているか否かを判定する。指示体７０の先端がスクリーンＳＣに接しているか否かの判定方法についても後述する。
【００４３】
また、物体検出部５５１は、検出した指示体７０の指示位置の座標に基づいて、指示体７０を対応付けるユーザーを特定する。すなわち、物体検出部５５１は、指示体７０を手に持って操作しているユーザーを特定する。撮影画像のデータから複数の人物領域が検出される場合、複数のユーザーが指示体７０を使用している場合もある。このため、物体検出部５５１は、検出した人物領域と、指示体７０の指示位置の座標（撮影画像のデータにおける座標）とに基づいて、指示体７０とユーザーの位置情報とを対応付ける。物体検出部５５１は、指示体７０の指示位置の座標が、どの人物領域に含まれるか、又はどの人物領域に最も近いかによって指示体７０とユーザーの位置情報とを対応付ける。
物体検出部５５１は、指示体７０とユーザーの位置情報とを対応付けると、指示体７０の指示位置の座標と、タッチ情報とを、対応付けたユーザーの位置情報と共に制御部３０に出力する。タッチ情報とは、指示体７０がスクリーンＳＣに接触しているか否かを示す情報である。
【００４４】
動き検出部５５２は、制御部３０によって指示された指示体７０、８０の動きを検出する。動き検出部５５２は、不図示のメモリーを備え、物体検出部５５１により検出される、指示体７０、８０の指示位置の座標をメモリーに一時的に記憶して、指示体７０、８０のスクリーンＳＣに対する相対位置の経時変化を求める。動き検出部５５２は、メモリーに記憶させた指示体７０、８０の指示位置の座標に基づいて、各指示体７０、８０の指示位置の動きを表す軌跡データを作成する。動き検出部５５２は、作成した指示体７０、８０の指示位置の軌跡データを、制御部３０に出力する。
制御部３０は、動き検出部５５２から入力される指示体７０、８０の指示位置の軌跡データを、該当するユーザーの位置情報に対応付けて記憶部６０に記憶させる。また、制御部３０は、指示体７０、８０の指示位置の軌跡データに基づいて、指示体７０、８０による指示操作を検出する。
【００４５】
指示体７０は、制御部７３、送受信部７４、操作スイッチ７５及び電源部７６を備え、これらの各部は軸部７２（図１）に収容される。制御部７３は、送受信部７４及び操作スイッチ７５に接続され、操作スイッチ７５のオン／オフ状態を検出する。送受信部７４は、赤外ＬＥＤ等の光源と、赤外光を受光する受光素子とを備え、制御部７３の制御に従って光源を点灯及び消灯させるとともに、受光素子の受光状態を示す信号を制御部７３に出力する。
電源部７６は、電源として乾電池又は二次電池を有し、制御部７３、送受信部７４及び操作スイッチ７５の各部に電力を供給する。指示体７０は、電源部７６からの電源供給をオン／オフする電源スイッチを備えていてもよい。
【００４６】
ここで、位置検出部５０と指示体７０との相互の通信により、撮影部５１の撮影画像のデータから指示体７０の指示位置を特定する方法について説明する。
制御部３０は、指示体７０による操作を検出する場合に、撮影制御部５２を制御して、送信部５３から同期用の信号を送信させる。すなわち、撮影制御部５２は、制御部３０の制御に従って、送信部５３の光源を所定の周期で点灯させる。送信部５３が周期的に発する赤外光が、位置検出部５０と指示体７０とを同期させる同期信号として機能する。
一方、制御部７３は、電源部７６から電源の供給が開始され、所定の初期化動作を行った後、プロジェクター１００の送信部５３が発する赤外光を、送受信部７４により受光する。送信部５３が周期的に発する赤外光を送受信部７４により受光すると、制御部７３は、この赤外光のタイミングに同期させて、予め設定された指示体７０に固有の点灯パターンで、送受信部７４の光源を点灯（発光）させる。また、制御部７３は、操作スイッチ７５の操作状態に応じて、送受信部７４の点灯パターンを切り替える。このため、プロジェクター１００の物体検出部５５１は、複数の撮影画像のデータに基づいて、指示体７０の操作状態、すなわち先端部７１がスクリーンＳＣに押しつけられているか否かを判定できる。
また、制御部７３は、電源部７６から電源が供給されている間、上記のパターンを繰り返し実行する。つまり、送信部５３は、指示体７０に対し、同期用の赤外線信号を周期的に送信し、指示体７０は、送信部５３が送信する赤外線信号に同期して、予め設定された赤外線信号を送信する。
【００４７】
位置検出部５０の撮影制御部５２は、撮影部５１による撮影タイミングを、指示体７０が点灯するタイミングに合わせる制御を行う。この撮影タイミングは、撮影制御部５２が送信部５３を点灯させるタイミングに基づいて決定される。物体検出部５５１は、撮影部５１の撮影画像のデータに指示体７０の光の像が写っているか否かにより、指示体７０が点灯するパターンを特定できる。物体検出部５５１は、複数の撮影画像のデータに基づいて、指示体７０の先端部７１がスクリーンＳＣに押しつけられているか否かを判定して、タッチ情報を生成する。
指示体７０の点灯パターンは、指示体７０の個体毎に固有のパターン、又は複数の指示体７０に共通のパターンと個体毎に固有のパターンとを含むものとすることができる。この場合、撮影制御部５２は、撮影画像のデータに複数の指示体７０が発する赤外光の像が含まれる場合に、各々の像を、異なる指示体７０の像として区別できる。
【００４８】
制御部３０は、記憶部６０に記憶された制御プログラム６１を読み出して実行することにより投射制御部３１、判定部３２及び検出制御部３３の機能を実現し、プロジェクター１００の各部を制御する。
【００４９】
投射制御部３１は、操作検出部１７から入力される操作データに基づいて、ユーザーがリモコンを操作して行った操作内容を取得する。投射制御部３１は、ユーザーが行った操作に応じて画像処理部４０、光源駆動部４５及び光変調装置駆動部４６を制御して、スクリーンＳＣに画像を投射させる。
また、投射制御部３１は、画像処理部４０を制御して、上述した３Ｄ（立体）画像と２Ｄ（平面）画像の判別処理、解像度変換処理、フレームレート変換処理、歪み補正処理、デジタルズーム処理、色調補正処理、輝度補正処理等を実行させる。また、投射制御部３１は、画像処理部４０の処理に合わせて光源駆動部４５を制御し、光源部２１の光量を制御する。
【００５０】
判定部３２は、物体検出部５５１から、指示体８０の指示位置の座標及び距離情報と、指示体７０の指示位置の座標及び距離情報とを入力する。
判定部３２は、入力された指示体７０のスクリーンＳＣとの距離と、指示体８０のスクリーンＳＣとの距離とを比較して、指示体７０の指示位置又は動きを、指示操作として検出するか否かを判定する。判定部３２は、指示体７０とスクリーンＳＣとの距離が、指示体８０とスクリーンＳＣとの距離よりも離れている場合に、指示体７０を、指示操作の検出対象から除外する。すなわち、判定部３２は、指示体７０、８０のうちスクリーンＳＣにより近い側を、スクリーンＳＣに対する指示操作の検出候補として選択する。
また、判定部３２は、指示操作の検出候補として選択した指示体８０であって、指示体８０とスクリーンＳＣとの距離が所定距離以内である場合に、この指示体８０を、指示操作を検出する指示体として選択する。物体検出部５５１により検出された指示体であっても、スクリーンＳＣとの距離が所定距離以内にない指示体の指示操作は検出しないようにする。
なお、指示体７０、８０がスクリーンＳＣに接しているか否かを判定して、スクリーンＳＣに対する指示操作を検出する指示体を選択するものであってもよい。例えば、判定部３２は、指示体８０がスクリーンＳＣに接し、指示体７０がスクリーンＳＣに接していないと判定する場合、指示体８０は、指示体７０よりもスクリーンＳＣに近い位置にあると判定できる。また、指示体８０はスクリーンＳＣに接しているため、判定部３２は、スクリーンＳＣとの距離が所定距離以内にあると判定できる。
【００５１】
判定部３２は、選択した指示体８０の動きを、動き検出部５５２に検出させる。判定部３２は、選択した指示体８０のスクリーンＳＣに対する動きを示す軌跡データを動き検出部５５２から入力し、入力した軌跡データに基づいて指示体８０の指示操作を検出する。指示操作には、上述したように、指示体８０によるスクリーンＳＣの位置を指示する操作や、指示体８０のスクリーンＳＣに対する動きが含まれる。
判定部３２は、スクリーンＳＣに対する指示体８０の動きと、スクリーンＳＣに対する指示体７０の位置とを検出することにより、指示体７０を、指示操作の検出対象とするか否かを判定する。判定部３２により、指示体７０とスクリーンＳＣとの距離が、スクリーンＳＣと指示体８０との距離よりも離れると判定される場合、「スクリーンＳＣに対する指示体７０の位置」の条件が満たされる。
また、指示体８０の軌跡データに基づいて、指示体８０がスクリーンＳＣの一定位置（指示位置）から所定時間動かないと判定部３２により判定される場合、「スクリーンＳＣに対する指示体８０の動き」の条件が満たされる。例えば、図３に示すように、指示体７０を把持した手の指でスクリーンＳＣをタッチしている場合、指示体８０としての手の指が、指示体７０よりもスクリーンＳＣに近い。この場合、判定部３２は、指示体８０がスクリーンＳＣの一定位置から所定時間以上動かなければ、軌跡データに基づく指示体８０の動きを、スクリーンＳＣに対する位置の指示操作と判定する。この場合、判定部３２は、例えば、指示体８０により指示された指示位置の座標に、指示体８０による指示であることを示す識別データと、描画した図形や配置した文字又は記号を消去する消去コマンドとを付加して検出制御部３３に出力する。
【００５２】
また、同一の人物領域から、複数の指示体８０が検出される場合、判定部３２は、これらの複数の指示体８０の動きを動き検出部５５２に検出させる。
判定部３２は、動き検出部５５２により検出される、複数の指示体８０それぞれの軌跡データに基づいて、指示体８０間の距離の変化を判定する。例えば、図４に示すように指示体８０間の距離が時間経過とともに広がる場合、判定部３２は、これらの指示体８０の動きは、スクリーンＳＣに対する指示操作であると判定する。この場合、判定部３２は、これらの指示体８０の動きを、スクリーンＳＣに表示される表示画像を拡大させる指示操作と判定する。この場合、判定部３２は、表示画像を拡大させる指示コマンドと、各指示体８０の軌跡データから求めた表示画像の拡大率と、指示体８０による指示であることを示す識別データを検出制御部３３に出力する。
また、図４とは逆に、指示体８０間の距離が時間経過とともに狭くなる場合にも、判定部３２は、複数の指示体８０の動きを、スクリーンＳＣに対する指示操作であると判定する。この場合、判定部３２は、これらの指示体８０の動きを、表示画像を縮小させる指示操作であると判定する。この場合、判定部３２は、表示画像を縮小させる指示コマンドと、各指示体８０の軌跡データから求めた表示画像の縮小率と、指示体８０による指示であることを示す識別データとを検出制御部３３に出力する。
【００５３】
また、判定部３２は、物体検出部５５１により複数のユーザーの手指が指示体８０として検出された場合、まず、検出された指示体８０と、ユーザーとを対応付ける。すなわち、１人のユーザーから複数の指示体８０が検出される場合もあるため、判定部３２は、スクリーンＳＣと各指示体８０との距離に基づいて、ユーザーごとに、指示操作を検出する指示体８０を１つ選択する。そして、判定部３２は、検出された各指示体８０の動きが、指示操作に該当するか否かをユーザーごとに判定する。判定部３２は、動き検出部５５２から入力される各指示体８０の軌跡データに基づいて、指示操作をそれぞれに検出する。
【００５４】
検出制御部３３は、位置検出部５０を制御して、指示体７０、８０の検出を実行させる。
また、検出制御部３３は、判定部３２から、判定部３２が検出した指示体７０又は８０の指示操作に応じたデータを取得する。例えば、判定部３２が検出した指示操作が、スクリーンＳＣに描画された文字を消去する指示である場合、検出制御部３３は、判定部３２から、指示体８０による指示位置の座標と、指示体８０の指示であることを示す識別データと、消去コマンドとを入力する。検出制御部３３は、判定部３２から取得したデータに従い、描画された文字を消去する指示を画像処理部４０に通知する。画像処理部４０は、検出制御部３３の指示に従って、フレームメモリー４１に展開された画像データの該当の指示位置に重畳された文字を消去する。
【００５５】
また、判定部３２が検出した指示操作が、表示画像を拡大させる指示である場合、検出制御部３３は、判定部３２から、表示画像を拡大させる指示コマンドと、表示画像の拡大率と、指示体８０の指示であることを示す識別データとを入力する。
検出制御部３３は、判定部３２の指示に従い、画像処理部４０に、表示画像の拡大を指示する。画像処理部４０は、フレームメモリー４１に展開された画像データを、検出制御部３３から指示された拡大率で拡大処理し、処理した画像データに基づく画像信号を光変調装置駆動部４６に出力する。
【００５６】
また、検出制御部３３は、判定部３２から、指示体７０又は８０の指示操作に応じたコマンドと、指示位置の座標又は指示位置の軌跡データと、指示体７０による指示であるのか指示体８０による指示であるのかを示す識別データとを入力する。この他に、検出制御部３３は、指示体７０による指示である場合に、タッチ情報や距離情報を判定部３２から入力し、指示体８０による指示である場合に、距離情報を判定部３２から入力する。
検出制御部３３は、判定部３２から、例えば、図形描画のコマンドを入力した場合、判定部３２から取得した指示位置の座標又は指示位置の軌跡に基づいて画像処理部４０に図形を描画させる。また、検出制御部３３は、画像処理部４０に、描画した図形を画像Ｉ／Ｆ部１２に入力される入力画像に重畳して投射させる処理を行う。
また、検出制御部３３は、判定部３２から入力されるコマンドに応じて、取得した指示位置の座標又は指示位置の軌跡データをＩ／Ｆ部１１に接続されたＰＣ等の外部の装置に出力してもよい。この場合、検出制御部３３は、取得した指示位置の座標又は指示位置の軌跡を、Ｉ／Ｆ部１１に接続された外部の装置のオペレーティングシステムにおいて、座標入力デバイスの入力として認識されるデータフォーマットに変換して出力してもよい。例えば、Ｉ／Ｆ部１１にＷｉｎｄｏｗｓ（登録商標）オペレーティングシステムで動作するＰＣが接続された場合、オペレーティングシステムにおいてＨＩＤ（Human Interface Device）の入力データとして処理されるデータを出力する。また、検出制御部３３は、指示位置の座標又は指示位置の軌跡データとともに、これらのデータが指示体７０の操作によるものであるか指示体８０の操作によるものであるのかを識別するデータ、及びタッチ情報や距離情報を外部の装置に出力してもよい。
【００５７】
図５及び図６は、プロジェクター１００の処理手順を示すフローチャートである。
まず、位置検出部５０の検出部５５は、撮影部５１により撮影された撮影画像のデータを撮影制御部５２から入力する（ステップＳ１）。制御部３０の検出制御部３３は、撮影制御部５２を制御して、撮影部５１に撮影範囲を撮影させる。撮影部５１は、赤外光による撮影と可視光による撮影とを交互に実行する。撮影制御部５２は、撮影部５１により撮影された撮影画像のデータを位置検出部５０に出力する。
【００５８】
位置検出部５０の物体検出部５５１は、入力された撮影画像のデータから人物が写った人物領域を検出する（ステップＳ２）。物体検出部５５１は、撮影画像のデータから人物領域を検出することができなかった場合（ステップＳ２／ＮＯ）、ステップＳ７の処理に移行する（ステップＳ７）。また、物体検出部５５１は、撮影画像のデータから人物領域を検出した場合（ステップＳ２／ＹＥＳ）、検出した人物領域ごとに、ユーザーの位置、姿勢を検出する（ステップＳ３）。物体検出部５５１は、例えば、撮影画像のデータの水平方向における、人物領域の中心座標値をユーザーの位置を示す位置情報として算出する。また、物体検出部５５１は、撮影画像のデータから人物領域を複数検出した場合には、ユーザーの位置を示す位置情報も、人物領域に応じて複数検出する。また、物体検出部５５１は、検出した人物領域に基づいて、ユーザーの頭部、肩、手、足等の人体の部位を認識し、ユーザーの姿勢を検出する（ステップＳ３）。
【００５９】
物体検出部５５１は、検出したユーザーの位置、姿勢に基づいて、ユーザーが、スクリーンＳＣに対する操作を行い得る位置、姿勢にあるか否かを判定する（ステップＳ４）。例えば、ユーザーとスクリーンＳＣとの距離が離れている場合や、ユーザーが両腕を組んでいる場合には、物体検出部５５１は、ユーザーがスクリーンＳＣに対する指示操作を行い得る姿勢にないと判定する。
ステップＳ４が否定判定の場合（ステップＳ４／ＮＯ）、物体検出部５５１は、該当ユーザーの人物領域に対する処理を中止し、ステップＳ２において他の人物領域を検出しているか否かを判定する（ステップＳ５）。肯定判定の場合（ステップＳ５／ＹＥＳ）、物体検出部５５１は、他の人物領域に対してステップＳ３及び４の処理を行う。また、否定判定の場合（ステップＳ５／ＮＯ）、ステップＳ１に戻り、検出部５５は、撮影部５１により撮影された撮影画像のデータを撮影制御部５２から入力する（ステップＳ１）。
【００６０】
また、ステップＳ４が肯定判定の場合（ステップＳ４／ＹＥＳ）、物体検出部５５１は、撮影画像のデータの人物領域から、ユーザーの手指の画像を検出して指示体８０を検出する。物体検出部５５１は、人物領域から、予め定めた手指の形状や特徴に近い領域を、指示体８０の領域として検出する。また、物体検出部５５１は、検出した指示体８０の領域から指示体８０が指し示すスクリーンＳＣの指示位置の座標を算出する（ステップＳ６）。物体検出部５５１は、検出した指示体８０の領域から手指の先端（指先）を特定して、特定した手指の先端の位置を指示位置の座標として検出する。また、物体検出部５５１は、検出した指示体８０の指示位置の座標を、スクリーンＳＣの表示画像における指示位置の座標に変換する。また、物体検出部５５１は、指示体８０とスクリーンＳＣとの距離とを検出する。物体検出部５５１は、座標変換した指示体８０の指示位置の座標と、指示体８０とスクリーンＳＣとの距離情報とを、該当するユーザーの位置情報と共に制御部３０に出力する。制御部３０は、物体検出部５５１から指示体８０の指示位置の座標と、距離情報と、ユーザーの位置情報とが入力されると、入力された指示体８０の指示位置の座標と、距離情報とを該当のユーザーの位置情報に対応付けて記憶部６０に記憶させる。
【００６１】
次に、物体検出部５５１は、赤外光によって撮影された撮影画像のデータに、指示体７０の発する赤外光が写っているか否かを判定して指示体７０を検出する（ステップＳ７）。物体検出部５５１は、撮影画像のデータに、指示体７０の発する赤外光を検出した場合、検出した赤外光の撮影画像のデータにおける位置を、指示体７０の指示位置の座標として検出する（ステップＳ８）。また、物体検出部５５１は、指示体７０の先端部７１がスクリーンＳＣに押しつけられているか否かを判定する。指示体７０の制御部７３は、操作スイッチ７５の操作状態に応じて送受信部７４の点灯パターンを切り替える。物体検出部５５１は、撮影部５１の複数の撮影画像のデータに基づいて送受信部７４の点灯パターンを判定し、指示体７０の先端部７１がスクリーンＳＣに押しつけられているか否かを判定する。また、物体検出部５５１は、撮影部５１の可視光によって撮影された撮影画像のデータに基づいて、指示体７０とスクリーンＳＣとの距離を算出する。物体検出部５５１は、例えば、撮影画像のデータから指示体７０の画像と、指示体７０の影の画像とを検出して、検出した画像の間の距離に基づいて、指示体７０の先端とスクリーンＳＣとの距離を求める。
物体検出部５５１は、指示体７０の指示位置の座標と、タッチ情報と、距離情報とを、該当するユーザーの位置情報と共に制御部３０に出力する。制御部３０は、物体検出部５５１から入力される指示体７０の指示位置の座標と、タッチ情報と、距離情報とを該当のユーザーの位置情報に対応付けて記憶部６０に記憶させる。
【００６２】
次に、判定部３２は、動き検出部５５２に、指示体８０の動きを示す軌跡データを生成させ、動き検出部５５２から取得した指示体８０の軌跡データと、指示体７０の指示位置の座標とに基づいて、指示体７０を無効にするか否かを判定する（ステップＳ９）。この処理の詳細は、図６に示す。判定部３２は、指示体７０を無効にすると判定すると（ステップＳ１０／ＹＥＳ）、指示体７０に関するデータ、例えば、指示体７０の指示位置の座標を無効にして、検出制御部３３には出力しない。この場合、判定部３２は、指示体８０の軌跡データや、指示体８０の指示位置の座標から検出した指示操作に応じたデータを検出制御部３３に出力する。検出制御部３３は、取得した座標及びデータに基づいて、予め設定された処理を実行する（ステップＳ１１）。例えば、判定部３２から、指示位置の座標と、指示体８０による指示であることを示す識別データと、消去コマンドとが入力されると、検出制御部３３は、指示された位置に描画された図形や配置した文字又は記号を消去する指示を画像処理部４０に通知する。画像処理部４０は、検出制御部３３から通知された指示に従い、フレームメモリー４１に展開された画像データの該当位置に重畳された図形、文字又は記号を消去する。
また、検出制御部３３は、判定部３２から、画像を拡大させる指示コマンドと、各指示体８０の軌跡データから求めた表示画像の拡大率と、指示体８０による指示であることを示す識別データとが入力された場合、画像処理部４０に、表示画像の拡大を指示する。画像処理部４０は、フレームメモリー４１に展開された画像データを、検出制御部３３から指示された拡大率で拡大処理し、処理した画像データに基づく画像信号を光変調装置駆動部４６に出力する。
【００６３】
また、ステップＳ１０において、指示体７０を無効にしないと判定すると（ステップＳ１０／ＮＯ）、判定部３２は、動き検出部５５２に、指示体７０の動きを検出するように、指示する。判定部３２は、動き検出部５５２から入力される指示体７０の動きを表す軌跡データに基づいて、指示体７０による指示操作を検出する。そして、判定部３２は、検出した指示操作に応じたデータを検出制御部３３に出力する。検出制御部３３は、判定部３２から取得したデータに基づいて、予め設定された処理を実行する（ステップＳ１２）。例えば、検出制御部３３は、判定部３２から取得した指示位置の座標又は指示位置の軌跡に基づいて画像処理部４０に図形を描画させ、描画した図形を画像Ｉ／Ｆ部１２に入力される入力画像に重畳して投射させる処理を行う。
【００６４】
次に、判定部３２は、すべてのユーザーの指示操作を検出したか否かを判定する（ステップＳ１３）。ステップＳ６において検出した指示体８０の指示位置の座標や、ステップＳ８で検出した指示体７０の指示位置の座標は、ユーザーの位置情報に対応付けられて、記憶部６０に記憶される。判定部３２は、記憶部６０に位置情報を記憶したすべてのユーザーについて、ステップＳ９〜Ｓ１２の処理を実行済みであるか否かを判定する。否定判定の場合（ステップＳ１３／ＮＯ）、判定部３２は、ステップＳ９からの処理を実行する。また、肯定判定の場合（ステップＳ１３／ＹＥＳ）、ステップＳ１に戻り、検出部５５は、撮影画像のデータを撮影制御部５２から入力する。
【００６５】
図６は、図５のステップＳ９の詳細を示すフローチャートである。
まず、判定部３２は、指示体７０を検出した場合に、検出した指示体７０がスクリーンＳＣに接しているか否かを判定する（ステップＳ２１）。判定部３２は、タッチ情報に基づいて、指示体７０がスクリーンＳＣに接しているか否かを判定する。肯定判定の場合（ステップＳ２１／ＹＥＳ）、判定部３２は、指示体７０を無効にはしないと判定して（ステップＳ２９）、この処理フローを終了させる。この後、判定部３２は、動き検出部５５２に、指示体７０の動きを検出させ、動き検出部５５２から入力される指示体７０の軌跡データに基づいて、指示体７０による指示操作を検出する。
【００６６】
また、ステップＳ２１が否定判定の場合（ステップＳ２１／ＮＯ）、判定部３２は、指示体８０を検出している場合に、検出した指示体８０がスクリーンＳＣに接しているか否かを判定する（ステップＳ２２）。判定部３２は、物体検出部５５１が検出した指示体８０とスクリーンＳＣとの距離情報に基づいて、指示体８０がスクリーンＳＣに接しているか否かを判定する。否定判定の場合（ステップＳ２２／ＮＯ）、指示体７０及び８０がスクリーンＳＣに接していないので、図５に示すＳ１３に進み、他のユーザーの指示操作を検出したか否かを判定する（ステップＳ１３）。
また、肯定判定の場合（ステップＳ２２／ＹＥＳ）、判定部３２は、指示体８０とスクリーンＳＣとの距離が、指示体７０とスクリーンＳＣとの距離よりも近いと判定する。また、判定部３２は、指示体８０がスクリーンＳＣに接しているため、指示体８０とスクリーンＳＣとの距離が所定距離以内であると判定する。このため、判定部３２は、指示体８０を、指示操作を検出する指示体として選択する。
次に、判定部３２は、同一ユーザーの複数の指示体８０がスクリーンＳＣに接しているか否かを判定する（ステップＳ２３）。判定部３２は、ユーザーの位置情報に、複数の指示体８０の指示位置が対応付けられているか否かを判定する。同一ユーザーの位置情報に、複数の指示体８０の指示位置が対応付けられている場合、判定部３２は、対応付けられた他の指示体８０がスクリーンＳＣに接しているか否かを判定する（ステップＳ２３）。
【００６７】
ステップＳ２３が否定判定の場合（ステップＳ２３／ＮＯ）、判定部３２は、スクリーンＳＣに接した指示体８０の動きを、動き検出部５５２に検出させる（ステップＳ２４）。その後、判定部３２は、動き検出部５５２から入力される指示体８０の軌跡データに基づいて、指示体８０による指示操作を検出したか否かを判定する（ステップＳ２５）。例えば、図３に示すように、指示体７０を把持した手の指でスクリーンＳＣをタッチしている場合、指示体８０としての手の指が、指示体７０よりもスクリーンＳＣに近い。この場合、判定部３２は、指示体８０がスクリーンＳＣの一定位置から所定時間以上動かなければ、軌跡データに基づく指示体８０の動きを、スクリーンＳＣに対する位置の指示操作と判定する。ステップＳ２５が肯定判定の場合（ステップＳ２５／ＹＥＳ）、判定部３２は、指示体７０を無効にする（ステップＳ３０）。すなわち、判定部３２は、指示体７０に関するデータ、例えば、指示体７０の指示位置の座標を無効にして、検出制御部３３には出力しないようにする。また、判定部３２は、例えば、指示体８０により指示された指示位置の座標に、指示体８０による指示であることを示す識別データと、消去コマンドとを付加して検出制御部３３に出力する。
なお、指示体８０は、指示体７０を把持した手とは反対側の手であってもよい。例えば、右手で指示体７０を把持している場合に、指示体８０としての左手の動きを動き検出部５５２により検出するものであってもよい。
また、ステップＳ２５が否定判定の場合（ステップＳ２５／ＮＯ）、判定部３２は、指示体７０を無効にせずに（ステップＳ２９）、動き検出部５５２に、指示体７０の動きを検出させる。判定部３２は、動き検出部５５２から入力される指示体７０の軌跡データに基づいて、指示体７０による指示操作を検出する。
【００６８】
また、ステップＳ２３が肯定判定の場合（ステップＳ２３／ＹＥＳ）、判定部３２は、動き検出部５５２に、スクリーンＳＣに接した複数の指示体８０の動きを検出させる（ステップＳ２６）。その後、判定部３２は、動き検出部５５２から入力される複数の指示体８０の軌跡データに基づいて、複数の指示体８０による指示操作を検出したか否かを判定する（ステップＳ２７）。まず、判定部３２は、複数の手指の軌跡データに基づいて、指示体８０としての手指の間隔を広げる動きを検出したか否かを判定する（ステップＳ２７）。判定部３２は、例えば、左手と右手の間隔を広げる動きや、同じ手の指の間隔を広げる動きを検出したか否かを判定する。肯定判定の場合（ステップＳ２７／ＹＥＳ）、判定部３２は、指示体８０の指示操作を検出したため、指示体７０を無効にすると判定する（ステップＳ３０）。すなわち、判定部３２は、指示体７０に関するデータ、例えば、指示体７０の指示位置の座標を無効にして、検出制御部３３には出力しないようにする。
また、否定判定の場合（ステップＳ２７／ＮＯ）、判定部３２は、複数の手指の軌跡データに基づいて、指示体８０としての手指の間隔を狭める動きを検出したか否かを判定する（ステップＳ２８）。判定部３２は、例えば、左手と右手の間隔を狭める動きや、同じ手の指の間隔を狭める動きを検出したか否かを判定する。肯定判定の場合（ステップＳ２８／ＹＥＳ）、判定部３２は、指示体８０の指示操作を検出したため、指示体７０を無効にすると判定する（ステップＳ３０）。また、否定判定の場合（ステップＳ２８／ＮＯ）、判定部３２は、指示体７０を無効にはしないと判定し（ステップＳ２９）、この処理フローを終了する。この後、判定部３２は、動き検出部５５２に、指示体７０の動きを検出させる。判定部３２は、動き検出部５５２から入力される指示体７０の軌跡データに基づいて、指示体７０による指示操作を検出する。
【００６９】
なお、図６に示すフローチャートでは、プロジェクター１００は、指示体７０又は８０がスクリーンＳＣに接している場合に、動き検出部５５２に、指示体８０のスクリーンＳＣに対する動きを検出させるとして説明した。これ以外に、指示体８０がスクリーンＳＣに接していなくても、指示体８０とスクリーンＳＣとの距離が近接している場合に、動き検出部５５２に、指示体８０の動きを検出させ、検出した指示体８０の動きから指示操作を検出するものであってもよい。
【００７０】
以上説明したように、本実施形態のプロジェクター１００は、検出部５５と、撮影部５１と、制御部３０とを備える。検出部５５は、スクリーンＳＣに対して操作を行う指示体７０、及び指示体７０とは異なる指示体８０を検出する。撮影部５１は、スクリーンＳＣを含む範囲を撮影した撮影画像を形成する。制御部３０は、判定部３２により、撮影画像のデータに基づいて、スクリーンＳＣに対する指示体８０の動きと、スクリーンＳＣに対する指示体７０の位置を検出することにより、指示体７０による操作を入力として検出するか否かを判定する。従って、ユーザーの意図しない操作を入力として検出しないようにすることができる。
【００７１】
また、検出部５５は、指示体７０の位置又は動きを検出し、制御部３０は、指示体８０の位置又は動きに基づき入力を検出する。従って、制御部３０の判定結果に応じて、検出部５５に、指示体７０又は指示体８０の位置又は動きを操作として検出させることができる。
【００７２】
また、制御部３０は、指示体７０とスクリーンＳＣとの距離、及び、指示体８０とスクリーンＳＣとの距離に基づいて、指示体７０の位置又は動きを入力として検出するか否かを判定する。従って、指示体７０及び指示体８０のスクリーンＳＣとの距離を変更することで、指示体７０の位置又は動きを検出するのか、指示体８０の位置又は動きを検出するのかを切り替えることができる。
【００７３】
また、制御部３０は、指示体７０とスクリーンＳＣとの距離が、指示体８０とスクリーンＳＣとの距離よりも離れている場合に、指示体７０の位置又は動きを入力として検出しない。従って、指示体７０のスクリーンＳＣとの距離を、指示体８０とスクリーンＳＣとの距離よりも離れている場合に、指示体７０の位置又は動きを入力として検出しないようにすることができる。
【００７４】
また、制御部３０は、検出部５５が複数の指示体８０を検出した場合に、スクリーンＳＣとの距離が、指示体７０とスクリーンＳＣとの距離よりも近い指示体８０の位置又は動きを入力として検出する。従って、スクリーンＳＣとの距離が、指示体７０とスクリーンＳＣとの距離よりも近い複数の指示体８０の位置又は動きを操作として検出することができる。
【００７５】
また、制御部３０は、スクリーンＳＣとの距離が、指示体７０とスクリーンＳＣとの距離よりも近い指示体８０が複数検出された場合に、これら複数の指示体８０の間の距離の変化を、撮影部５１の撮影画像のデータに基づいて求める。制御部３０は、求めた距離の変化に基づいてスクリーンＳＣに対する指示体８０の動きを入力として検出する。従って、複数の指示体８０間の距離の変化を、スクリーンＳＣに対する指示体８０の動きとして検出することができる。
【００７６】
また、制御部３０は、撮影部５１の撮影画像のデータに基づいて、それぞれの指示体８０のスクリーンＳＣに対する相対位置の経時変化を求めることにより、複数の指示体８０の間の距離の変化を検出する。従って、複数の指示体８０それぞれのスクリーンＳＣに対する相対位置の経時変化を求めて、複数の指示体８０間の距離の変化を検出することができる。
【００７７】
また、制御部３０は、検出部５５が検出する指示体８０が、指示体７０を把持したユーザーの手指である場合に、指示体８０の位置又は動きを入力として検出する。従って、指示体７０を把持したままのユーザーの手指によって操作することが可能となる。
【００７８】
また、制御部３０は、検出部５５が複数の指示体８０を検出した場合に、検出した複数の指示体８０それぞれをユーザーに対応付けて、指示体８０による操作をユーザーごとに検出部５５に検出させる。従って、指示体８０による操作をユーザーごとに検出することができる。
【００７９】
なお、上述した実施形態及び変形例は本発明を適用した具体的態様の例に過ぎず、本発明を限定するものではなく、異なる態様として本発明を適用することも可能である。例えば、指示体７０、８０は、ペン型の指示体７０やユーザーの手指である指示体８０に限定されず、レーザーポインターや指示棒等を用いてもよく、その形状やサイズは限定されない。
【００８０】
また、上記実施形態では、位置検出部５０は、撮影部５１によりスクリーンＳＣを撮影して指示体７０の位置を特定するものとしたが、本発明はこれに限定されない。例えば、撮影部５１は、プロジェクター１００の本体に設けられ、投射光学系２３の投射方向を撮影するものに限定されない。撮影部５１をプロジェクター１００本体とは別体として位置検出装置を構成し、撮影部５１がスクリーンＳＣの側方や正面から撮影を行うものとしてもよい。さらに、複数の撮影部５１を配置し、これら複数の撮影部５１の撮影画像のデータに基づいて、検出部５５が指示体７０、８０の位置を検出してもよい。さらに、位置検出部５０と、制御部３０の判定部３２及び検出制御部３３の機能を、プロジェクターとは独立した位置検出装置として実現することもできる。また、プロジェクター以外の表示装置に、位置検出部５０と、制御部３０の判定部３２及び検出制御部３３の機能を持たせて、位置検出装置として動作させる態様も実現可能である。
【００８１】
また、上記実施形態では、プロジェクター１００から指示体７０に対し、送信部５３が発する赤外線信号を用いて指示体７０に同期用の信号を送信する構成を説明したが、同期用の信号は赤外線信号に限定されない。例えば、電波通信や超音波無線通信により同期用の信号を送信する構成としてもよい。この構成は、電波通信や超音波無線通信により信号を送信する送信部５３をプロジェクター１００に設け、同様の受信部を指示体７０に設けることで実現できる。
【００８２】
また、上述した実施形態では、指示体７０の先端部７１がスクリーンＳＣに押しつけられているか否かを、送受信部７４の点灯パターンに基づいて判定する例を説明したが、本発明はこれに限定されない。例えば、指示体７０の先端部７１がスクリーンＳＣに押しつけられているか否かを、指示体８０と同様に、撮影画像のデータから指示体７０の画像と、指示体７０の影の画像とを検出することで、判定してもよい。
【００８３】
また、上記実施形態では、光源が発した光を変調する光変調装置２２として、ＲＧＢの各色に対応した３枚の透過型の液晶パネルを用いた構成を例に挙げて説明したが、本発明はこれに限定されるものではない。例えば、３枚の反射型液晶パネルを用いた構成としてもよいし、１枚の液晶パネルとカラーホイールを組み合わせた方式を用いてもよい。また、３枚のデジタルミラーデバイス（ＤＭＤ）を用いた方式、１枚のデジタルミラーデバイスとカラーホイールを組み合わせたＤＭＤ方式等により構成してもよい。光変調装置として１枚のみの液晶パネル又はＤＭＤを用いる場合には、クロスダイクロイックプリズム等の合成光学系に相当する部材は不要である。また、液晶パネル及びＤＭＤ以外にも、光源が発した光を変調可能な光変調装置であれば問題なく採用できる。
【００８４】
また、図２に示したプロジェクター１００の各機能部は機能的構成を示すものであって、具体的な実装形態は特に制限されない。つまり、必ずしも各機能部に個別に対応するハードウェアが実装される必要はなく、一つのプロセッサーがプログラムを実行することで複数の機能部の機能を実現する構成とすることも勿論可能である。また、上記実施形態においてソフトウェアで実現される機能の一部をハードウェアで実現してもよく、あるいは、ハードウェアで実現される機能の一部をソフトウェアで実現してもよい。その他、プロジェクター１００の他の各部の具体的な細部構成についても、本発明の趣旨を逸脱しない範囲で任意に変更可能である。
【符号の説明】
【００８５】
２０…投射部、２１…光源部、２２…光変調装置、２３…投射光学系、３０…制御部、３１…投射制御部、３２…判定部、３３…検出制御部、４０…画像処理部、５０…位置検出部、５１…撮影部、５２…撮影制御部、５３…送信部、５５…検出部、６０…記憶部、７０…指示体、８０…指示体（対象物）、１００…プロジェクター（位置検出装置）、５５１…物体検出部、５５２…動き検出部、ＳＣ…スクリーン（操作面）。
【図１】
0006350175.tif 000002
【図２】
0006350175.tif 000003
【図３】
0006350175.tif 000004
【図４】
0006350175.tif 000005
【図５】
0006350175.tif 000006
【図６】
0006350175.tif 000007