(57)【特許請求の範囲】
【請求項１】
画像を投影する投影面を撮影することによって得られた撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定するポインティング装置において、
画像が投影された投影面を順次撮影する撮影部と、
前記撮影部が撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出する画像変化検出部と、
前記撮影画像の変化と前記変化に対して実行すべき制御との対応関係が予め設定され、前記画像変化検出部が検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行する制御処理部と、を備え、
前記制御処理部は、前記撮影画像の変化として、前記画像変化検出部が前記撮影画像に映し出された投影面画像の回転を検出したときに、予め設定された前記対応関係に従い、対応する制御処理を実行する、
ことを特徴とするポインティング装置。
【請求項２】
予め設定された前記対応関係は、前記投影面画像の回転方向と複数の制御との関係であり、
前記制御処理部は、前記撮影画像の変化として、前記画像変化検出部が前記撮影画像に映し出された投影面画像の回転を検出したときに、前記投影面画像の回転方向を判別し、予め設定された前記対応関係に従い、前記回転方向に応じた異なる制御処理を実行する、
ことを特徴とする請求項１に記載のポインティング装置。
【請求項３】
予め設定された前記対応関係は、前記投影面画像の回転角度と複数の制御との関係であり、
前記制御処理部は、前記画像変化検出部が前記撮影画像に映し出された投影面画像の回転を検出したときに、前記投影面画像の回転角度を判別し、予め設定された前記対応関係に従い、前記回転角度に応じた異なる制御処理を実行する、
ことを特徴とする請求項１又は２に記載のポインティング装置。
【請求項４】
予め設定された前記対応関係は、前記投影面画像の回転時間と複数の制御との関係であり、
前記制御処理部は、前記画像変化検出部が前記撮影画像に映し出された投影面画像の回転を検出したときに、前記投影面画像の回転時間を判別し、予め設定された前記対応関係に従い、前記回転時間に応じた異なる制御処理を実行する、
ことを特徴とする請求項１乃至３のいずれか１項に記載のポインティング装置。
【請求項５】
前記制御処理部は、前記画像変化検出部が前記投影面画像の回転として、４５°以上の回転角度を検出した場合、前記撮影画像を、回転操作による回転方向とは逆方向に９０°回転させる、
ことを特徴とする請求項１乃至４のいずれか１項に記載のポインティング装置。
【請求項６】
前記制御処理部は、前記撮影画像の変化として、前記画像変化検出部が前記撮影画像に映し出された投影面画像のサイズの変化を検出したときに、予め設定された前記対応関係に従い、対応する制御処理を実行する、
ことを特徴とする請求項１乃至５のいずれか１項に記載のポインティング装置。
【請求項７】
前記制御処理は、コマンドの発行であり、
予め設定された前記対応関係は、前記撮影画像の変化とコマンドの発行との関係であり、
前記制御処理部は、前記撮影画像の変化を検出したときに、予め設定された前記対応関係に従い、コマンドを発行する、
ことを特徴とする請求項１乃至６のいずれか１項に記載のポインティング装置。
【請求項８】
発行する前記コマンドは、前記投影面に投影された画像を操作するコマンドであり、
前記制御処理部は、前記撮影画像の変化を検出したときに、予め設定された前記対応関係に従い、前記投影面に投影された画像を操作するコマンドを発行する、
ことを特徴とする請求項７に記載のポインティング装置。
【請求項９】
発行する前記コマンドは、マウスコマンドであり、
前記制御処理部は、前記撮影画像の変化を検出したときに、予め設定された前記対応関係に従い、前記マウスコマンドを発行する、
ことを特徴とする請求項７又は８に記載のポインティング装置。
【請求項１０】
前記撮影部が撮影することによって得られた撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定するポインティング位置特定部を備え、
予め設定された前記対応関係は、前記ポインティング位置の移動距離と前記撮影部の解像度との関係であり、
前記制御処理部は、前記撮影画像の変化として、前記画像変化検出部が前記撮影画像に映し出された前記ポインティング位置の移動を検出したときに、前記ポインティング位置の移動距離を判別し、予め設定された対応関係に従い、判別した移動距離に対応する解像度を設定する、
ことを特徴とする請求項１乃至９のいずれか１項に記載のポインティング装置。
【請求項１１】
予め設定された前記対応関係は、前記撮影部の解像度と前記撮影部の画像フレームレートの設定との関係であり、
前記制御処理部は、前記撮影画像の変化として、前記画像変化検出部が前記撮影画像に映し出された前記ポインティング位置の移動を検出したときに、前記ポインティング位置の移動距離を判別し、予め設定された対応関係に従い、判別した移動距離に対応する解像度を設定するとともに、前記画像フレームレートを設定する、
ことを特徴とする請求項１０に記載のポインティング装置。
【請求項１２】
予め設定された前記対応関係を記憶する記憶部を備え、
前記制御処理部は、前記記憶部に記憶された対応関係を参照して前記操作内容に対応する制御を実行する、
ことを特徴とする請求項１乃至１１のいずれか１項に記載のポインティング装置。
【請求項１３】
画像を投影する投影面を撮影することによって得られた撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定するポインティング装置において、
画像が投影された投影面を順次撮影する撮影部と、
前記撮影部が撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出する画像変化検出部と、
前記撮影画像の変化と前記変化に対して実行すべき制御との対応関係が予め設定され、前記画像変化検出部が検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行する制御処理部と、を備え、
前記制御処理は、マウスコマンドの発行であり、
予め設定された前記対応関係は、前記撮影画像の変化とマウスコマンドの発行との関係であり、
前記制御処理部は、前記撮影画像の変化を検出したときに、予め設定された前記対応関係に従い、マウスコマンドを発行する、
ことを特徴とするポインティング装置。
【請求項１４】
画像が投影された投影面を順次撮影するステップと、
撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出するステップと、
撮影することによって得られた前記撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定するステップと、
前記撮影画像の変化と前記変化に対して実行すべき制御との対応関係が予め設定され、検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行するステップと、を備え、
前記制御処理を実行するステップは、前記撮影画像の変化として、前記撮影画像の変化を検出するステップが前記撮影画像に映し出された投影面画像の回転を検出したときに、予め設定された前記対応関係に従い、対応する制御処理を実行する、
ことを特徴とするポインティング装置の制御方法。
【請求項１５】
画像が投影された投影面を順次撮影するステップと、
撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出するステップと、
撮影することによって得られた前記撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定するステップと、
前記撮影画像の変化と前記変化に対して実行すべき制御との対応関係が予め設定され、検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行するステップと、を備え、
前記制御処理は、マウスコマンドの発行であり、
予め設定された前記対応関係は、前記撮影画像の変化とマウスコマンドの発行との関係であり、
前記制御処理を実行するステップは、前記撮影画像の変化を検出したときに、予め設定された前記対応関係に従い、マウスコマンドを発行する、
ことを特徴とするポインティング装置の制御方法。
【請求項１６】
コンピュータに、
画像が投影された投影面を順次撮影する手順、
撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出する手順、
撮影することによって得られた前記撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定する手順、
前記撮影画像の変化を検出する手順が前記撮影画像に映し出された投影面画像の回転を検出することによって検出する前記撮影画像の変化と前記変化に対して実行すべき制御との対応関係が予め設定され、検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行する手順、
を実行させるためのプログラム。
【請求項１７】
コンピュータに、
画像が投影された投影面を順次撮影する手順、
撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出する手順、
撮影することによって得られた前記撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定する手順、
前記撮影画像の変化と前記変化に対して発行すべきマウスコマンドとの対応関係が予め設定され、検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行する手順、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ポインティング装置、ポインティング装置の制御方法及びプログラムに関するものである。
【背景技術】
【０００２】
従来より、カメラでスクリーンを撮影して、説明者がスクリーン上に指し示したポインティングの位置を特定するポインティング装置がある（例えば、特許文献１参照）。
【０００３】
このようにポインティング位置を特定することができれば、ポインティング装置を用いて、コンピュータのマウスと同じように画像を選択したり、画像を切り替えたりすることができ、位置を指定してスクリーン上に線を描くこともできる。
【０００４】
かかる従来のポインティング装置は、カメラでスクリーンを撮影することにより、拡大表示装置のスクリーンと説明者が所持している指し棒の実像と影の像とを取り込む。そして、ポインティング装置は、説明者の指し棒と影の像との形状に基づいて、説明者が指し示すポインティング位置を取得するようにしている。
【特許文献１】特開平１１−３４５０８７号公報（第５頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、従来のポインティング装置では、マウスと同様のマウスコマンドを発行させるためには、ポインティング装置のボタン操作をしなければならない。説明者は、指し棒を所持しているため、このようなボタン操作を行うことは、説明者にとって繁雑な作業である。
【０００６】
本発明は、このような従来の問題点に鑑みてなされたもので、操作を容易にすることが可能なポインティング装置、ポインティング装置の制御方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
この目的を達成するため、本発明の第１の観点に係るポインティング装置は、
画像を投影する投影面を撮影することによって得られた撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定するポインティング装置において、
画像が投影された投影面を順次撮影する撮影部と、
前記撮影部が撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出する画像変化検出部と、
前記撮影画像の変化と前記変化に対して実行すべき制御との対応関係が予め設定され、前記画像変化検出部が検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行する制御処理部と、を備え、
前記制御処理部は、前記撮影画像の変化として、前記画像変化検出部が前記撮影画像に映し出された投影面画像の回転を検出したときに、予め設定された前記対応関係に従い、対応する制御処理を実行することを特徴とする。
【０００９】
予め設定された前記対応関係は、前記投影面画像の回転方向と複数の制御との関係であり、
前記制御処理部は、前記撮影画像の変化として、前記画像変化検出部が前記撮影画像に映し出された投影面画像の回転を検出したときに、前記投影面画像の回転方向を判別し、予め設定された前記対応関係に従い、前記回転方向に応じた異なる制御処理を実行するようにしてもよい。
【００１０】
予め設定された前記対応関係は、前記投影面画像の回転角度と複数の制御との関係であり、
前記制御処理部は、前記画像変化検出部が前記撮影画像に映し出された投影面画像の回転を検出したときに、前記投影面画像の回転角度を判別し、予め設定された前記対応関係に従い、前記回転角度に応じた異なる制御処理を実行するようにしてもよい。
【００１１】
予め設定された前記対応関係は、前記投影面画像の回転時間と複数の制御との関係であり、
前記制御処理部は、前記画像変化検出部が前記撮影画像に映し出された投影面画像の回転を検出したときに、前記投影面画像の回転時間を判別し、予め設定された前記対応関係に従い、前記回転時間に応じた異なる制御処理を実行するようにしてもよい。
【００１２】
前記制御処理部は、前記画像変化検出部が前記投影面画像の回転として、４５°以上の回転角度を検出した場合、前記撮影画像を、回転操作による回転方向とは逆方向に９０°回転させるようにしてもよい。
【００１３】
前記制御処理部は、前記撮影画像の変化として、前記画像変化検出部が前記撮影画像に映し出された投影面画像のサイズの変化を検出したときに、予め設定された前記対応関係に従い、対応する制御処理を実行するようにしてもよい。
【００１４】
前記制御処理は、コマンドの発行であり、
予め設定された前記対応関係は、前記撮影画像の変化とコマンドの発行との関係であり、
前記制御処理部は、前記撮影画像の変化を検出したときに、予め設定された前記対応関係に従い、コマンドを発行するようにしてもよい。
【００１５】
発行する前記コマンドは、前記投影面に投影された画像を操作するコマンドであり、
前記制御処理部は、前記撮影画像の変化を検出したときに、予め設定された前記対応関係に従い、前記投影面に投影された画像を操作するコマンドを発行するようにしてもよい。
【００１６】
発行する前記コマンドは、マウスコマンドであり、
前記制御処理部は、前記撮影画像の変化を検出したときに、予め設定された前記対応関係に従い、前記マウスコマンドを発行するようにしてもよい。
【００１７】
前記撮影部が撮影することによって得られた撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定するポインティング位置特定部を備え、
予め設定された前記対応関係は、前記ポインティング位置の移動距離と前記撮影部の解像度との関係であり、
前記制御処理部は、前記撮影画像の変化として、前記画像変化検出部が前記撮影画像に映し出された前記ポインティング位置の移動を検出したときに、前記ポインティング位置の移動距離を判別し、予め設定された前記対応関係に従い、判別した移動距離に対応する解像度を設定するようにしてもよい。
【００１８】
予め設定された前記対応関係は、前記撮影部の解像度と前記撮影部の画像フレームレートの設定との関係であり、
前記制御処理部は、前記撮影画像の変化として、前記画像変化検出部が前記撮影画像に映し出された前記ポインティング位置の移動を検出したときに、前記ポインティング位置の移動距離を判別し、予め設定された前記対応関係に従い、判別した移動距離に対応する解像度を設定するとともに、前記画像フレームレートを設定するようにしてもよい。
【００１９】
予め設定された前記対応関係を記憶する記憶部を備え、
前記制御処理部は、前記記憶部に記憶された対応関係を参照して前記操作内容に対応する制御を実行するようにしてもよい。
本発明の第２の観点に係るポインティング装置は、
画像を投影する投影面を撮影することによって得られた撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定するポインティング装置において、
画像が投影された投影面を順次撮影する撮影部と、
前記撮影部が撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出する画像変化検出部と、
前記撮影画像の変化と前記変化に対して実行すべき制御との対応関係が予め設定され、前記画像変化検出部が検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行する制御処理部と、を備え、
前記制御処理は、マウスコマンドの発行であり、
予め設定された前記対応関係は、前記撮影画像の変化とマウスコマンドの発行との関係であり、
前記制御処理部は、前記撮影画像の変化を検出したときに、予め設定された前記対応関係に従い、マウスコマンドを発行することを特徴とする。
【００２０】
本発明の第３の観点に係るポインティング装置の制御方法は、
画像が投影された投影面を順次撮影するステップと、
撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出するステップと、
撮影することによって得られた前記撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定するステップと、
前記撮影画像の変化と前記変化に対して実行すべき制御との対応関係が予め設定され、検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行するステップと、を備え、
前記制御処理を実行するステップは、前記撮影画像の変化として、前記撮影画像の変化を検出するステップが前記撮影画像に映し出された投影面画像の回転を検出したときに、予め設定された前記対応関係に従い、対応する制御処理を実行することを特徴とする。
本発明の第４の観点に係るポインティング装置の制御方法は、
画像が投影された投影面を順次撮影するステップと、
撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出するステップと、
撮影することによって得られた前記撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定するステップと、
前記撮影画像の変化と前記変化に対して実行すべき制御との対応関係が予め設定され、検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行するステップと、を備え、
前記制御処理は、マウスコマンドの発行であり、
予め設定された前記対応関係は、前記撮影画像の変化とマウスコマンドの発行との関係であり、
前記制御処理を実行するステップは、前記撮影画像の変化を検出したときに、予め設定された前記対応関係に従い、マウスコマンドを発行する、
ことを特徴とする。
【００２１】
本発明の第５の観点に係るプログラムは、
コンピュータに、
画像が投影された投影面を順次撮影する手順、
撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出する手順、
撮影することによって得られた前記撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定する手順、
前記撮影画像の変化を検出する手順が前記撮影画像に映し出された投影面画像の回転を検出することによって検出する前記撮影画像の変化と前記変化に対して実行すべき制御との対応関係が予め設定され、検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行する手順、
を実行させるためのものである。
本発明の第６の観点に係るプログラムは、
コンピュータに、
画像が投影された投影面を順次撮影する手順、
撮影することによって得られた前後の撮影画像を比較することにより前記撮影画像の変化を検出する手順、
撮影することによって得られた前記撮影画像の画像処理を行うことにより、前記投影面に対して指し示されたポインティング位置を特定する手順、
前記撮影画像の変化と前記変化に対して発行すべきマウスコマンドとの対応関係が予め設定され、検出した投影面画像の変化に基づいて、予め設定された前記対応関係に従い、対応する制御処理を実行する手順、
を実行させるためのものである。
【発明の効果】
【００２２】
本発明によれば、操作を容易にすることができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施形態に係るポインティング装置を図面を参照して説明する。
（実施形態１）
実施形態１に係るポインティング装置は、図１に示すような画像投影システムに用いられる。即ち、画像投影システムは、プロジェクタ１と、ポインティング装置２と、情報処理装置３と、からなる。
【００２４】
プロジェクタ１は、情報処理装置３から画像データが供給され、供給された画像データに基づいて、投影面としてのスクリーンＳに画像を投影するものである。
【００２５】
ポインティング装置２は、プロジェクタ１が投影した投影画像とスクリーンＳを指し示すポインティング位置とともにスクリーンＳを撮影し、撮影によって得られた撮影画像を画像解析して、投影画像において説明者が指し示しているポインティング位置を特定するものである。
【００２６】
また、本実施形態１のポインティング装置２は、説明者がポインティング装置２を回転させた場合、コマンドを発行するように構成されている。図２に示すように、ポインティング装置２が撮影軸ｖに対して矢印方向に回転すると、撮影画像に映し出された投影面画像としてのスクリーン画像は回転する。ポインティング装置２は、このスクリーン画像の回転を撮影画像の変化として検出し、コマンドを発行する制御処理を実行する。
【００２７】
ポインティング装置２は、光学部１１と、画像処理部１２と、メモリ１３と、操作部（指示ボタン）１４と、演算部１５と、を備える。
【００２８】
光学部１１は、ポインティング位置と投影された投影画像とともにスクリーンＳを順次撮影するものであり、レンズ１１ａと、撮像素子１１ｂと、を備える。レンズ１１ａは、スクリーンＳに投影された投影画像を撮像素子１１ｂに結像させるためのものである。レンズ１１ａには、撮影画像に投影画像が含まれるように比較的広角のレンズが用いられる。
【００２９】
撮像素子１１ｂは、ＣＭＯＳ（Complementary Metal Oxide Semiconductor；相捕型金属酸化膜半導体）、ＣＣＤ（Charge Coupled Device;電荷結合素子）のような、レンズ１１ａによって集光された光に基づく画像信号を生成するためのものである。光学部１１は、撮像素子１１ｂが生成した画像信号を画像処理部１２に供給する。
【００３０】
画像処理部１２は、光学部１１から供給された画像信号をデジタルの画像データに変換し、変換した画像データに対して画像処理を行うものである。メモリ１３は、画像データ、画像に関するデータ等を記憶するものであり、画像処理部１２は、変換した画像データをメモリ１３に記憶する。
【００３１】
また、画像処理部１２は、撮影画像から、図３に示すスクリーン画像Ｓ１の４つの頂点座標を取得する。このため、画像処理部１２は、例えば、撮影画像に対して２値化し、フィルタ処理を施してエッジ画像を取得し、ハフ変換を行うことにより、このエッジ画像からスクリーンＳの辺を検出する。
【００３２】
ハフ変換とは、２次元平面上の直線を構成する点を、回転座標系のρ-θ平面上に投票して、ρ-θ平面上の投票数に変換する変換手法である。画像処理部１２は、このような処理を行うことにより、光学部１１の撮影によって得られたスクリーンＳの辺を検出する。画像処理部１２は、この４つの辺情報をメモリ１３に記憶する。
【００３３】
また、画像処理部１２は、４つの辺情報に基づいて各辺の交点を求める。画像処理部１２は、このように求めた４つの交点をスクリーンＳに対応するスクリーン画像Ｓ１の頂点座標として、メモリ１３に記憶する。
【００３４】
操作部１４は、ポインティング装置２を操作するためのものであり、指示ボタン等を有している。
【００３５】
演算部１５は、ＣＰＵ、ＲＯＭ、ＲＡＭ等を備え、処理された画像データからポインティング位置を特定するとともに、ポインティング装置２を制御するものである。
【００３６】
具体的に、演算部１５は、このような制御処理を行うため、スクリーンＳを一定の間隔をもって順次撮影するようにレンズ１１ａ、撮像素子１１ｂを制御する。
【００３７】
演算部１５は、ポインティング位置を特定するため、ポインティング装置２から供給されたスクリーン画像Ｓ１の座標に基づいて、画像変形処理を行う。
【００３８】
画像変形処理は、スクリーン画像Ｓ１の４つの頂点と撮影画像Ｐ１の４つの頂点とが対応するようにスクリーン画像Ｓ１を変形する処理である。
【００３９】
図３（ａ）は、光学部１１が順次撮影を行うことによって得られた撮影画像Ｐ１を示す。また、図３（ｂ）は、情報処理装置３の画像空間Ｐ２の例を示す。
【００４０】
演算部１５は、図３（ａ）に示すようなスクリーン画像Ｓ１の４つの頂点と、図３（ｂ）に示すような画像空間の４つの頂点Ａ（0,768），Ｂ（0,0），Ｃ（1024,0），Ｃ（1024,0）Ｄ（1024,768）とをそれぞれ対応付ける。
【００４１】
そして、演算部１５は、この対応関係に基づいて座標変換式を取得し、この座標変換式に、図３（ａ）に示すスクリーン画像Ｓ１内の各座標点を代入することにより、画像変形を行う。
【００４２】
図３（ａ）において、点Ｏが撮影画像Ｐ１におけるポインティング位置とすると、演算部１５は、このような画像変形処理を行うことにより、図３（ｂ）に示すような点Ｏ（742,379）を取得する。この点Ｏ（742,379）が、実際に説明者によって指示されたポインティング位置となる。
【００４３】
演算部１５がこのような画像変形を行うことにより、説明者がポインティング装置２を回転させた場合でも、スクリーン画像Ｓ１は補正され、このポインティング装置２の回転はキャンセルされる。本実施形態に係るポインティング装置２は、この点に着目して構成されたものである。
【００４４】
例えば、ポインティング装置２の回転前、撮影によって図４（ａ）に示すような撮影画像Ｐ１が得られたものとする。
【００４５】
一般にプロジェクタ１を用いたプレゼンテーションでは、説明者がスクリーンＳの正面に立つことはなく、スクリーンＳに対して左右のどちらかの位置に存在することが多い。従って、説明者の位置からスクリーンＳを見た場合、ポインティング装置２は、図４（ａ）に示すように変形したスクリーン画像Ｓ１を認識することになる。
【００４６】
ポインティング装置２は、説明者によって所持されて使用されることが想定されるため、この図４（ａ）に示す画像は、説明者がスクリーンＳの特定位置を指し示すときに得られる画像になる。
【００４７】
ポインティング装置２が回転すると、図４（ａ）に示すような撮影画像Ｐ１は、図４（ｂ）に示すような撮影画像Ｐ１に変化し、スクリーン画像Ｓ１は回転する。
【００４８】
演算部１５は、図４（ａ）、（ｂ）に示すように、撮影画像Ｐ１、スクリーン画像Ｓ１に、それぞれ、基準線Ｌ０、中線Ｌ１を設定し、基準線Ｌ０と中線Ｌ１との回転前後の角度θ１，θ２の角度差を求める。
【００４９】
この角度差がスクリーン画像Ｓ１の回転角度であり、説明者がこの回転角度だけポインティング装置２を回転させたことになる。演算部１５は、この回転角度を求めることにより、撮影画像Ｐ１の変化として、撮影画像Ｐ１に映し出されたスクリーン画像Ｓ１の回転を検出する。
【００５０】
尚、ポインティング装置２が４５°以上回転すると、撮影画像に対するスクリーン画像の天地関係が変化するため、実施形態１では、ポインティング装置２の回転角度を４５度未満とする。
【００５１】
この回転角度を検出するため、演算部１５は、まず、レンズ１１ａ、撮像素子１１ｂ、画像処理部１２を制御して、回転前に、スクリーンＳを撮影し、図４（ａ）に示すような撮影画像Ｐ１を取り込む。
【００５２】
この回転前のスクリーン画像Ｓ１の４つの頂点を、それぞれ、Ａ０，Ｂ０，Ｃ０，Ｄ０とする。演算部１５は、スクリーン画像Ｓ１の線分Ａ０−Ｂ０の中点をＥ０、線分Ｃ０−Ｄ０の中点をＦ０として、中点Ｅ０，Ｆ０を結ぶ中線Ｌ１を取得し、中線Ｌ１と基準線Ｌ０との角度θ１を取得する。
【００５３】
ポインティング装置２の回転後、画像処理部１２が取得したスクリーン画像Ｓ１の４つの頂点座標を、それぞれ、Ａ１，Ｂ１，Ｃ１，Ｄ１とする。演算部１５は、スクリーン画像Ｓ１の線分Ａ１−Ｂ１の中点をＥ１、線分Ｃ１−Ｄ１の中点をＦ１として、中点Ｅ１、Ｆ１を結ぶ中線Ｌ１を取得し、中線Ｌ１と基準線Ｌ０との角度θ２を取得する。
【００５４】
そして、演算部１５は、角度θ１と角度θ２との角度差をポインティング装置２の回転角度θとする。演算部１５は、スクリーン画像Ｓ１の角度の変化として、取得した回転角度θをメモリ１３に記憶する。
【００５５】
演算部１５は、レンズ１１ａ、撮像素子１１ｂに、定期的に撮影画像の取り込みを行わせ、画像処理部１２は、スクリーン画像Ｓ１の４つの頂点座標を、１フレーム毎にメモリ１３に記憶する。演算部１５は、各フレーム毎に回転角度θを取得すると、取得した回転角度θをメモリ１３に記憶する。
【００５６】
尚、ポインティング装置２のわずかな回転を除外する必要がある。このため、演算部１５は、メモリ１３から各フレーム毎の回転角度θを集計し、最も頻度が高い角度を、ポインティング装置２の基準角度とする。
【００５７】
また、説明者が無意識にポインティング装置２を回転させてしまう場合もある。このような場合、演算部１５は、不要なコマンドを発行しないように、取得した回転角度θに対して閾値θth1を設定し、基準角度と閾値θth1とを比較する。
【００５８】
この閾値θth1を、例えば、２０°として、演算部１５のＲＯＭは、この閾値θth1を予め記憶する。また、メモリ１３は、撮影画像Ｐ１の変化をスクリーン画像Ｓ１の回転、制御処理をコマンドの発行とし、スクリーン画像Ｓ１の回転とコマンド発行との予め設定された対応関係の情報を記憶する。
【００５９】
演算部１５は、回転角度が２０°を越えたときに説明者がポインティング装置２を意識的に回転させたことを判別し、メモリ１３に記憶されている対応関係を参照して情報処理装置３に特定のコマンドを発行する制御処理を実行する。演算部１５は、例えば、スクリーンＳに投影された投影画像の画像操作をページ送りとして、この特定のコマンドをページ送りのコマンドとする。
【００６０】
情報処理装置３は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ＨＤＤ等を備えたものである。情報処理装置３は、スクリーンＳに投影する画像のデータをプロジェクタ１に供給する。
【００６１】
情報処理装置３は、ポインティング装置２から送信されたポインティング位置情報を受信し、このポインティング位置情報に基づいて種々の処理を実行する。
【００６２】
また、情報処理装置３は、例えば、ポインティング装置２から供給されるコマンドと画像操作とを関連付けておき、ポインティング装置２からページ送りのコマンドが供給されると、ページ送りを行う。
【００６３】
次に実施形態１に係る画像投影システムの動作を説明する。
情報処理装置３は、画像データをプロジェクタ１に供給し、プロジェクタ１は、供給された画像データに基づいて、画像をスクリーンＳに投影する。
【００６４】
演算部１５は、図５に示すフローチャートに従ってポインティング処理（１）を実行する。
【００６５】
演算部１５は、光学部１１を制御して撮影画像の取り込みを行う（ステップＳ１１）。
【００６６】
光学部１１は、演算部１５に制御されて、スクリーンＳを撮影し、撮影画像Ｐ１を取得する。そして、光学部１１は、取得した画像信号を画像処理部１２に供給する。画像処理部１２は、光学部１１から供給された画像信号をデジタルの画像データに変換し、変換した画像データをメモリ１３に記憶する。
【００６７】
また、画像処理部１２は、撮影画像Ｐ１から、スクリーン画像Ｓ１の４つの頂点座標を取得し、取得した４つの頂点座標をメモリ１３に記憶する。
【００６８】
演算部１５は、画像角度取得処理を実行する（ステップＳ１２）。演算部１５は、図６に示すフローチャートに従って、この画像角度取得処理を実行する。
演算部１５は、画像処理部１２がメモリ１３に記憶したスクリーン画像Ｓ１の４つの頂点座標を読み出す（ステップＳ２１）。
【００６９】
演算部１５は、基準線Ｌ０と中線Ｌ１との角度を取得して（ステップＳ２２）、メモリ１３に記憶する（ステップＳ２３）。
【００７０】
演算部１５は、このように画像角度取得処理を実行すると、回転角度取得処理（１）を実行する（図５のステップＳ１３）。演算部１５は、この回転角度取得処理（１）を、図７に示すフローチャートに従って実行する。
【００７１】
演算部１５は、メモリ１３から、撮影画像毎の基準線Ｌ０と中線Ｌ１との角度を読み出す（ステップＳ３１）。
【００７２】
演算部１５は、前後のフレームの角度θ１，θ２の差をスクリーン画像Ｓ１の回転角度θとして、回転角度θを演算する（ステップＳ３２）。
演算部１５は、取得した回転角度θを集計する（ステップＳ３３）。
【００７３】
演算部１５は、このうち、最も頻度の高い回転角度θを取得する（ステップＳ３４）。
演算部１５は、取得した回転角度θが閾値θth1を越えているか否かを判定する（ステップＳ３５）。
【００７４】
越えていないと判定した場合（ステップＳ３５においてＮｏ）、演算部１５は、回転角度θをメモリ１３に記憶せずに、この回転角度取得処理（１）を終了させる。
【００７５】
一方、取得した回転角度θが閾値θth1を越えていると判定した場合（ステップＳ３５においてＹｅｓ）、演算部１５は、この回転角度θをメモリ１３に記憶する（ステップＳ３６）。
【００７６】
演算部１５は、このように回転角度取得処理を実行すると、ポインティング位置特定処理を実行する（図５のステップＳ１４）。演算部１５は、図８に示すフローチャートに従って、このポインティング位置特定処理を実行する。
【００７７】
演算部１５は、画像処理部１２がメモリ１３に記憶したスクリーン画像Ｓ１の４つの頂点座標を読み出す（ステップＳ４１）。
【００７８】
演算部１５は、画像変形を行い（ステップＳ４２）、ポインティング位置を算出する（ステップＳ４３）。
【００７９】
演算部１５は、このようにポインティング位置特定処理を実行すると、メモリ１３から回転角度を読み出し（図５のステップＳ１５）、コマンドを発行する（ステップＳ１６）。そして、演算部１５は、このポインティング処理（１）を終了させる。
【００８０】
そして、情報処理装置３は、ポインティング装置２から、ページ送りを指示するコマンドが供給されると、ページ送りを行う。
【００８１】
以上説明したように、本実施形態１によれば、説明者がポインティング装置２を回転させた場合、演算部１５は、前後の撮影画像Ｐ１における変化として、スクリーン画像Ｓ１の回転を検出する。そして、演算部１５は、スクリーン画像Ｓ１の回転を検出すると、このスクリーン画像Ｓ１の回転とコマンドの発行との対応関係に従い、コマンドを発行するようにした。
【００８２】
従って、説明者は、操作部１４の指示ボタンを操作しなくても、ポインティング装置２を回転させるだけで、情報処理装置３に、ページ送りといった特定のコマンドを発行することができ、操作を容易とすることができる。
【００８３】
そして、スクリーン画像Ｓ１の回転と上記コマンドとの対応付けを行っておけば、ポインティング装置２を回転させるだけで次のページに移行するようになるので、切れ目のない効果的なプレゼンテーションを実現することができる。
【００８４】
また、ポインティング装置２に、座標を特定するようなデジタイズ回路を追加することなく、コマンドを発行できるので、低コスト化を図ることができ、より小型化することができる。
【００８５】
（実施形態２）
実施形態２に係るポインティング装置は、説明者がポインティング装置を回転させたときに、スクリーン画像の回転方向、回転角度に応じて複数のマウスコマンドを発行するようにしたものである。
【００８６】
実施形態２に係るポインティング装置２は、ポインティング装置２の回転方向、回転角度と、マウスコマンドとを、図９（ａ），（ｂ）に示すように対応付けておく。演算部１５のＲＯＭは、この対応関係の情報を予め記憶する。
【００８７】
演算部１５は、図１０に示すフローチャートに従って、ポインティング処理（２）を実行する。
【００８８】
演算部１５は、実施形態１と同様にステップＳ１１〜Ｓ１５を実行する。
演算部１５は、メモリ１３から回転角度を読み出して、読み出した回転角度が１５°を越えているか否かを判定する（ステップＳ５１）。
【００８９】
回転角度が１５°以下と判定した場合（ステップＳ５１においてＮｏ）、演算部１５は、ステップＳ１１に戻る。
【００９０】
一方、回転角度が１５°を越えていると判定した場合（ステップＳ５１においてＹｅｓ）、演算部１５は、ポインティング装置２の回転が右回転か否かを判定する（ステップＳ５２）。
【００９１】
ポインティング装置２の回転が右回転ではなく、左回転であると判定した場合（ステップＳ５２においてＮｏ）、演算部１５は、回転角度が３０°以上か否かを判定する（ステップＳ５３）。
【００９２】
回転角度が３０°以上と判定した場合（ステップＳ５３においてＹｅｓ）、演算部１５は、左ダブルクリックを示すコマンドを発行、送信する（ステップＳ５４）。
【００９３】
回転角度が左３０°未満と判定した場合（ステップＳ５３においてＮｏ）、演算部１５は、左シングルクリックを示すコマンドを発行、送信する（ステップＳ５５）。
【００９４】
次に、ポインティング装置２の回転が右回転と判定した場合（ステップＳ５２においてＹｅｓ）、演算部１５は、回転角度が３０°以上か否かを判定する（ステップＳ５６）。
【００９５】
回転角度が３０°未満と判定した場合（ステップＳ５６においてＮｏ）、演算部１５は、右シングルクリックを示すコマンドを発行、送信する（ステップＳ５７）。
【００９６】
回転角度が３０°以上と判定した場合（ステップＳ５６においてＹｅｓ）、演算部１５は、右ダブルクリックを示すコマンドを発行、送信する（ステップＳ５８）。そして、演算部１５は、再度、ステップＳ１１に戻る。
【００９７】
以上説明したように実施形態２によれば、ポインティング装置２は、スクリーン画像Ｓ１の回転方向、回転角度に対応させてマウスコマンドを発行することにより、操作部１４に専用の指示ボタンを追加することなく、マウスと同様の処理を行うことができる。
【００９８】
（実施形態３）
実施形態３は、実施形態２の応用例であり、実施形態３に係るポインティング装置は、説明者がポインティング装置を回転させたときに、スクリーン画像の回転方向、回転時間に応じて複数のマウスコマンドを発行するようにしたものである。
【００９９】
実施形態３に係るポインティング装置２は、ポインティング装置２の回転方向、回転時間と、マウスコマンドとを、図１１（ａ），（ｂ）に示すように対応付けておく。
【０１００】
この場合、ポインティング装置２は、通常の使用時においても、多少の回転動作を伴うため、演算部１５は、回転角度１５°を検出してから、３０°になるまでの回転時間を計測する。
【０１０１】
尚、図１１（ａ）に示すように、演算部１５は、マウスコマンドがダブルクリックかシングルクリックかを判定するための閾値として、回転時間t_timerに対して、左回転、右回転ともに、例えば、０．５秒を設定する。
【０１０２】
また、この例では、画像を６０ｆｐｓで取り込むことを想定しているので、演算部１５は、フレーム数をカウントし、３０フレームをカウントすることで０．５秒の経過を判断する。
【０１０３】
このため、演算部１５は、このフレーム数をカウントするカウンタを備え、フレーム数をカウントする。このカウント値をt_timerとして、演算部１５は、ポインティング装置２の回転角度が±１５°以下のときには、カウント値t_timerをクリアし、±１５°を越えたときにカウント値t_timerをカウントアップする。
【０１０４】
ポインティング装置２が回転に要する回転時間は、カウント値t_timerが３０未満の場合、０．５秒未満となり、カウント値t_timerが３０以上の場合、０．５秒以上となる。
【０１０５】
このようにして、演算部１５は、回転角度が±３０°を越えた時点のカウンタのカウント値に基づいてポインティング装置２の回転角度の絶対値が１５°〜３０°になるのに要した時間を推定する。
【０１０６】
演算部１５のＲＯＭは、この図１１（ａ）に示す対応関係の情報を予め記憶し、演算部１５は、カウント値t_timerをＲＡＭに記憶する。
【０１０７】
演算部１５は、図１２に示すフローチャートに従ってポインティング処理（３）を実行する。
【０１０８】
演算部１５は、実施形態１と同様にステップＳ１１〜Ｓ１５を実行する。
演算部１５は、取得した回転角度が１５°を越えているか否かを判定する（ステップＳ６１）。
【０１０９】
回転角度が１５°以下と判定した場合（ステップＳ６１においてＮｏ）、演算部１５は、カウント値t_timerに０をセットして（ステップＳ６２）、ステップＳ１１に戻る。
【０１１０】
一方、回転角度が１５°を越えていると判定した場合（ステップＳ６１においてＹｅｓ）、演算部１５は、カウント値t_timerをインクリメントする（ステップＳ６３）。
【０１１１】
演算部１５は、ポインティング装置２の回転角度が３０°以上か否かを判定する（ステップＳ６４）。回転角度が３０°未満と判定した場合（ステップＳ６４においてＮｏ）、演算部１５は、ステップＳ１１に戻る。
【０１１２】
回転角度が３０°以上と判定した場合（ステップＳ６４においてＹｅｓ）、演算部１５は、ポインティング装置２の回転が右回転か否かを判定する（ステップＳ６５）。
【０１１３】
ポインティング装置２の回転が右回転ではなく、左回転であると判定した場合（ステップＳ６５においてＮｏ）、演算部１５は、カウント値t_timerが３０未満か否かを判定する（ステップＳ６６）。
【０１１４】
カウント値t_timerが３０未満と判定した場合（ステップＳ６６においてＹｅｓ）、演算部１５は、回転時間０．５秒未満と判定して、左ダブルクリックを示すコマンドを発行、送信する（ステップＳ６７）。
【０１１５】
カウント値t_timerが３０以上と判定した場合（ステップＳ６６においてＮｏ）、演算部１５は、回転時間０．５秒以上と判定して、左シングルクリックを示すコマンドを発行、送信する（ステップＳ６８）。
【０１１６】
次に、ポインティング装置２の回転が右回転と判定した場合（ステップＳ６５においてＹｅｓ）、演算部１５は、カウント値t_timerが３０未満か否かを判定する（ステップＳ６９）。
【０１１７】
カウント値t_timerが３０以上と判定した場合（ステップＳ６９においてＮｏ）、演算部１５は、回転時間０．５秒以上と判定して、右シングルクリックを示すコマンドを発行、送信する（ステップＳ７０）。
【０１１８】
カウント値t_timerが３０秒未満と判定した場合（ステップＳ６９においてＹｅｓ）、演算部１５は、回転時間０．５秒未満と判定して、右ダブルクリックを示すコマンドを発行、送信する（ステップＳ７１）。そして、演算部１５は、再度、ステップＳ１１に戻る。
【０１１９】
以上説明したように実施形態３によれば、ポインティング装置２は、スクリーン画像Ｓ１の回転方向、回転時間に対応させてマウスコマンドを発行することにより、操作部１４に専用の指示ボタンを追加することなく、マウスと同様の操作を行うことができる。
【０１２０】
（実施形態４）
実施形態４に係る画像投影システムは、操作内容として、説明者がポインティング装置２を４５°以上傾けた場合でも、制御処理としてコマンドの発行を正しく行えるようにしたものである。
【０１２１】
ポインティング装置２が、回転角度０°のとき、図１３（ａ）に示すような撮影画像Ｐ１を取得したとすると、ポインティング装置２が左３０°、左６０°、左９０°傾けられると、撮影画像Ｐ１は、それぞれ、図１３（ｂ），（ｃ），（ｄ）に示すような画像になる。
【０１２２】
そして、ポインティング装置２が左９０°傾けられた場合に、ポインティング装置２の向きを、図１４（ａ）の矢印で示すように、上下方向に変化させた場合、撮影画像Ｐ１におけるスクリーン画像Ｓ１は、図１４（ｂ）の矢印で示すように、撮影画像Ｐ１に対して左右方向に移動してしまう。
【０１２３】
さらに、ポインティング装置２が１８０°回転すると、撮影画像Ｐ１に対するスクリーン画像Ｓ１の上下、左右方向の動きが全く逆になる。
【０１２４】
このように、ポインティング装置２は、原理上、４５°以上回転すると天地方向の判別ができなくなってしまい、ポインティング装置２は、正しいコマンドを情報処理装置３に発行できなくなってしまう。
【０１２５】
そこで、実施形態４にかかるポインティング装置２は、回転角度が４５°以上変化した場合、撮影画像をポインティング装置２の回転方向とは９０°逆方向に回転させる。
【０１２６】
ポインティング装置２は、画像をあたかも動画のように連続的に処理するので、ポインティング装置２の回転角度を監視することにより、ポインティング装置２自体の回転角度をほぼ完全に計測できる。
【０１２７】
そして、ポインティング装置２の回転角度が一度に４５°以上変化することはないと想定される。このため、このような処理を行うことにより、実施形態１〜３と同様の処理を行うことが可能となる。
【０１２８】
ポインティング装置２は、撮影により、遅くとも１秒管に３０フレームのスピードで取り込んでいるため、ポインティング装置２を１回転させるには、0.267秒以上かかる。演算部１５は、ポインティング装置２が１／３０秒間に４５°以上は回転しないという想定の下で、回転角度取得処理（２）を実行する。
【０１２９】
図１５は、この回転角度取得処理（２）を示すフローチャートである。
演算部１５は、図７に示す回転角度取得処理（１）のステップＳ３１〜Ｓ３５を実行した後、回転角度が４５°以上か否かを判定する（ステップＳ３７）。
【０１３０】
回転角度が４５°以上と判定した場合（ステップＳ３７においてＹｅｓ）、演算部１５は、取得した回転角度をポインティング装置２の回転方向とは逆に９０°減算することにより、撮影画像Ｐ１をポインティング装置２の回転方向とは逆に９０°回転する（ステップＳ３８）。
【０１３１】
回転角度が４５°未満と判定した場合（ステップＳ３７においてＮｏ）、演算部１５は、取得した回転角度をメモリ１３に記憶する（ステップＳ３６）。そして、演算部１５は、この回転角度取得処理（２）を終了させる。
【０１３２】
以上説明したように、実施形態４によれば、回転角度が４５°以上となった場合、演算部１５は、回転角度を、ポインティング装置２の回転方向とは逆に９０°減算することにより、撮影画像Ｐ１をポインティング装置２の回転方向とは逆に９０°回転するようにした。
【０１３３】
従って、ポインティング装置２の回転運動を正確に把握することができる。このため、コマンドを生成する場合でも、回転角度の制限がなくなり、ポインティング装置２を大きく回転させることができるようになるので、説明者の操作を容易とすることができる。
【０１３４】
また、常に回転角度を考慮した座標検出を行うことができるので、ポインティング装置２の回転に拘わらず、正確なポインティング動作を行うことができる。
【０１３５】
（実施形態５）
実施形態５に係るポインティング装置は、説明者がポインティング装置をスクリーンに近づけたり遠ざけたりする操作を行ったときに、スクリーン画像のサイズの変化を検出してコマンドを発行するようにしたものである。
【０１３６】
図１６に示すように、説明者Ｐｒが位置Ｘ０にいる場合、ポインティング装置２は、スクリーンＳを含むＹ０−〜Ｙ０＋平面の撮影範囲を撮影するものとする。この場合、ポインティング装置２は、図１７（ａ）に示すような撮影画像Ｐ１を取得する。
【０１３７】
次に、説明者Ｐｒが位置Ｘ１に移動した場合、光学部１１のレンズ１１ａの画角は変わらないので、撮影範囲は、Ｙ１−〜Ｙ１＋となり、ポインティング装置２は、この撮影範囲を撮影することにより、図１７（ｂ）に示すような撮影画像Ｐ１を取得する。
【０１３８】
説明者がスクリーンＳに近づくことにより、スクリーン画像Ｓ１の４つの頂点Ａ０，Ｂ０，Ｃ０，Ｄ０は、それぞれ、Ａ１，Ｂ１，Ｃ１，Ｄ１に変化する。即ち、ポインティング装置２をスクリーンＳに近づけることにより、撮影画像Ｐ１内のスクリーン画像Ｓ１は相対的に大きくなる。
【０１３９】
実施形態５では、この点に着目し、スクリーン画像Ｓ１のサイズが変化したときに、制御処理としてコマンドを発行する。
【０１４０】
即ち、演算部１５は、撮影画像中のスクリーン画像Ｓ１の面積もしくは、各辺の長さが、予め設定された閾値を越えた場合に、情報処理装置３へコマンドを発行する。
【０１４１】
例えば、レンズ１１ａの画角が７０°、スクリーンＳの幅が２ｍであり、ポインティング装置２がスクリーンＳの３ｍ前方に位置している場合、スクリーン画像Ｓ１の横幅は、撮影画像Ｐ１の横幅に対して４７．６％の比率となる。
【０１４２】
一方、ポインティング装置２がスクリーンＳに対し、５０ｃｍ近づけると、撮影画像Ｐ１の横幅に対するスクリーン画像Ｓ１の横幅の比率は、５７．６％となり、５０ｃｍ遠ざけると、その比率は、４０．８％となる。
【０１４３】
この場合、横幅の比率に対し、例えば、閾値５０％が設定されれば、演算部１５は、ポインティング装置２を近づけたり、遠ざけたりする操作がなされたことを判別することができる。
【０１４４】
尚、演算部１５のＲＯＭは、この閾値を予め記憶する。また、メモリ１３は、スクリーン画像Ｓ１の画像サイズの変化率とコマンドの発行との対応関係を予め記憶する。
【０１４５】
次に実施形態５に係る画像投影システムの動作を説明する。
演算部１５は、図１８に示すフローチャートに従って、ポインティング処理（４）を実行する。
即ち、演算部１５は、前回値をクリアする（ステップＳ８１）。
演算部１５は、閾値を設定する（ステップＳ８２）。
演算部１５は、光学部１１を制御して撮影画像の取り込みを行う（ステップＳ８３）。
【０１４６】
演算部１５は、取得した座標を今回値に設定する（ステップＳ８４）。
演算部１５は、前回値があるか否かを判定する（ステップＳ８５）。
前回値がないと判定した場合（ステップＳ８５においてＮｏ）、演算部１５は、今回値を前回値に設定する（ステップＳ８６）。
【０１４７】
前回値があると判定した場合（ステップＳ８５においてＹｅｓ）、演算部１５は、前回値と今回値との差が閾値未満であるか否かを判定する（ステップＳ８７）。
【０１４８】
前回値と今回値との差が閾値以上であると判定した場合（ステップＳ８７においてＮｏ）、演算部１５は、コマンドを発行する（ステップＳ８８）。そして、演算部１５は、再度ステップＳ８３〜Ｓ８８を実行する。
【０１４９】
前回値と今回値との差が閾値未満であると判定した場合（ステップＳ８７においてＹｅｓ）、演算部１５は、コマンドを発行せずに、再度、ステップＳ８３〜Ｓ８８を実行する。
【０１５０】
以上説明したように、実施形態５によれば、ポインティング装置２とスクリーンＳとの間の距離を、撮影画像に対するスクリーン画像Ｓ１のサイズの変化に基づいて、コマンドを発行するようにした。
【０１５１】
従って、ポインティング装置２は、一切、回路を追加せずに、コマンドを情報処理装置３に発行することができる。
【０１５２】
このため、コマンドを、例えば、ページ送りの処理に関連付けておくことにより、説明者は、所持しているポインティング装置２をスクリーンに近づけたり、遠ざけたりすることにより、ページ送りを実行することができ、切れ目のない効果的なプレゼンテーションを行うことができる。
【０１５３】
（実施形態６）
実施形態６に係るポインティング装置は、撮影画像の変化としてポインティング位置の移動を検出したときに、その移動距離を判別し、移動距離が大きいときは、撮影時の解像度を低い解像度に設定するようにしたものである。
【０１５４】
ポインティング装置２によるポインティング位置の特定に際し、１フレーム毎の処理量を低減することができれば、処理時間も短縮され、ポインティング装置２の消費電力を結果的に低減させることも可能となる。
【０１５５】
例えば、レーザポインタの移動が早い場合は、細かいポインティング位置の調整が期待されない場合である。このような場合の解像度は、正確な調整を行うときの解像度よりも低く設定されても、支障はない。
【０１５６】
また、レーザポインタの移動が早い場合、ポインティング位置の移動距離は大きくなる。従って、ポインティング位置の移動距離に基づいて、説明者がレーザポインタを早く移動させたか否かを判別できる。
【０１５７】
演算部１５は、このような考え方に基づいて、ポインティング位置の移動距離に予め閾値を設定し、ポインティング位置の移動距離がこの閾値以上となったときは、説明者による細かいポインティング位置の調整は行われないと判定する。そして、演算部１５は、このように判定した場合には解像度を低く設定する。
【０１５８】
尚、演算部１５は、低い解像度をＱＶＧＡ程度の解像度とし、高い解像度をＶＧＡ程度の解像度として、制御処理を、この解像度の設定とする。また、演算部１５のＲＯＭは、ポインティング位置の移動距離に対して予め設定された閾値を記憶し、メモリ１３は、ポインティング位置の移動距離と解像度との対応関係を予め記憶する。
【０１５９】
そして、演算部１５は、前回取得したポインティング位置の座標を前回値、今回取得したポインティング位置の座標を今回値とする。演算部１５は、前回値と今回値との距離が、予め設定された閾値以上の場合には、メモリ１３が記憶する対応関係を参照して、光学部１１の解像度を小さくし、閾値以下になった場合には、解像度を高くする制御処理を実行する。
【０１６０】
次に、実施形態６に係るポインティング装置２の動作を説明する。
演算部１５は、図１９に示すフローチャートに従って、ポインティング処理（５）を実行する。
【０１６１】
演算部１５は、実施形態５と同様に、前回値をクリアし（ステップＳ９１）、閾値を設定する（ステップＳ９２）。
演算部１５は、解像度を低解像度ＬＯＷに設定する（ステップＳ９３）。
【０１６２】
演算部１５は、撮影画像を取り込み、前回値と今回値との差が閾値未満であるか否かを判定する（ステップＳ９４〜Ｓ９８）。
【０１６３】
前回値と今回値との差が閾値未満であると判定した場合（ステップＳ９８においてＹｅｓ）、演算部１５は、光学部１１の解像度を高解像度ＨＩＧＨに設定する（ステップＳ９９）。
【０１６４】
前回値と今回値との差が閾値以上であると判定した場合（ステップＳ９８においてＮｏ）、演算部１５は、光学部１１の解像度を低解像度ＬＯＷに設定する（ステップＳ１００）。そして、演算部１５は、再度ステップＳ９３〜Ｓ１００を実行する。
【０１６５】
以上説明したように、本実施形態６によれば、ポインティング装置２の移動距離が大きい場合には、光学部１１の解像度を低くしたので、高速移動時には、座標位置特定のための計算処理量を大幅に低減することができる。このため、処理時間を短くすることができ、また、消費電力を低減させることもできる。
【０１６６】
（実施形態７）
実施形態７に係るポインティング装置は、ポインティング装置の動きが速い場合には、解像度を低下させるとともに、フレームレート（frame per second）を高くするようにしたものである。
【０１６７】
フレームレートは、１秒間に何回画面を書き換えることができるかを表す指標である。フレームレートが高いほど画面表示は滑らかになる。一般的なタッチパネルを有するペン型情報端末には、タッチパネルに対する入力は１秒あたり１００ポイント以上の分解能を有しているものが多い。これは自然な手書き入力を実現するための指標となるものである。
【０１６８】
上記実施形態１〜６のようなカメラ式のポインティング装置２においても光学部１１の画像のフレームレートを高くすれば、撮影画像は、より滑らかになる。
【０１６９】
解像度が低くなれば、画像のフレームレートを高くすることが可能になる。例えば、ＶＧＡ解像度で３０ｆｐｓの能力を有しているＣＭＯＳセンサであれば、解像度をＱＶＧＡのクラスに設定することによりデータ転送量は１／４となるので、フレームレートを１００ｆｐｓ以上に設定することもできる。
【０１７０】
実施形態６では、説明者がポインタを早く移動させた場合には、解像度を低くするように設定している。従って、ＱＶＧＡ程度の低解像度ＬＯＷのときのフレームレートを高いフレームレート１００ｆｐｓとし、ＶＧＡ程度の高解像度ＨＩＧＨのときのフレームレートを低いフレームレート３０ｆｐｓとする。メモリ１３は、このポインティング位置の移動距離と、解像度と、フレームレートと、の対応関係を予め記憶する。
【０１７１】
そして、演算部１５は、メモリ１３が記憶するこの対応関係を参照し、解像度を低くしたときには、対応するようにフレームレートを高く設定する制御処理を実行する。
【０１７２】
このような考えに基づいて、演算部１５は、図２０に示すフローチャートに従い、ポインティング処理（６）を実行する。
【０１７３】
演算部１５は、実施形態６と同様、ステップＳ９１〜Ｓ９８を実行する。
前回値と今回値との差が閾値未満と判定した場合（ステップＳ９８においてＹｅｓ）、演算部１５は、光学部１１の解像度を高解像度ＨＩＧＨに設定し（ステップＳ９９）、フレームレートを低いフレームレートに設定する（ステップＳ１０１）。
【０１７４】
前回値と今回値との差が閾値以上と判定した場合（ステップＳ９８においてＮｏ）、演算部１５は、光学部１１の解像度を低解像度ＬＯＷに設定し、フレームレートを高いフレームレートに設定する（ステップＳ１０２）。
【０１７５】
以上説明したように実施形態７によれば、前回値と今回値との差が閾値以上の場合には、ポインティング位置の移動距離が大きいと判定し、光学部１１の解像度を低解像度ＬＯＷに設定し、フレームレートを高くするようにした。
【０１７６】
従って、ポインティング位置のサンプリング数が増えるので、説明者の操作に対して追従することができ、操作性を大幅に改善することができる。このため、レーザポインタでよく用いられるような重要な部分を丸く囲むといった操作に対して、ポインティング位置の自然な動きを実現できる。
【０１７７】
尚、本発明を実施するにあたっては、種々の形態が考えられ、上記実施形態に限られるものではない。
例えば、ポインティング装置２は、ポインティング位置を特定するための画像処理として、画像変形処理の代わりに台形補正処理を行うようにしてもよい。この場合、ポインティング装置２は、スクリーンＳに対する傾斜角度を計測するセンサを備え、計測した傾斜角度に基づいて台形補正を行う。
【０１７８】
実施形態５において、撮影画像のスクリーン画像の面積もしくは各辺の長さが、閾値を越えたときにコマンドを情報処理装置３に発行するようにした。しかし、スクリーン画像Ｓ１の面積の変化もしくは各辺の長さの変化に基づいて発行するコマンドの種類を変えるようにしてもよい。
【０１７９】
このようにすれば、距離の変化量やスピードと複数のコマンドとを対応付けることにより、複数のコマンドを発行できるようになるので、例えば、スライドを戻したり、スライドショーを開始させたりといった複数の処理を簡単な操作で実行させることができる。
【０１８０】
また、画像データをデジタルカメラ等からプロジェクタ２に直接送信するようにしてもよい。このようにすれば、画像投影システムに、情報処理装置２を備えなくてもよくなる。
【０１８１】
上記実施形態１〜７を組み合わせることも可能である。例えば、ポインティング装置２が回転したとき、スクリーンＳに対して前後に移動したとき、ポインティング装置２は、それぞれ、異なるコマンドを発行するようにしてもよい。
【０１８２】
また、上記実施形態１〜７では、プログラムが、それぞれメモリ１３等に予め記憶されているものとして説明した。しかし、ポインティング装置を、装置の全部又は一部として動作させ、あるいは、上述の処理を実行させるためのプログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disk Read-Only Memory）、ＤＶＤ（Digital Versatile Disk）、ＭＯ（Magneto Optical disk）などのコンピュータ読み取り可能な記録媒体に格納して配布し、これを別のコンピュータにインストールし、上述の手段として動作させ、あるいは、上述の工程を実行させてもよい。
【０１８３】
さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
【図面の簡単な説明】
【０１８４】
【図１】本発明の実施形態１に係る画像投影システムの構成を示すブロック図である。
【図２】図１に示すポインティング装置の回転を示す図である。
【図３】ポインティング位置の取得方法を示す図である。
【図４】図１に示すポインティング装置を回転させた場合の基準線と中線との関係を示す図である。
【図５】図１に示す演算部が実行するポインティング処理（１）を示すフローチャートである。
【図６】図１に示す演算部が実行する画像角度取得処理を示すフローチャートである。
【図７】図１に示す演算部が実行する回転角度取得処理（１）を示すフローチャートである。
【図８】図１に示す演算部が実行するポインティング位置特定処理を示すフローチャートである。
【図９】本発明の実施形態２に係るポインティング装置の動作と発行するコマンドとの対応関係を示す図であり、（ａ）、（ｂ）は、それぞれ、その対応関係を示す表、概要図である。
【図１０】演算部が実行するポインティング処理（２）を示すフローチャートである。
【図１１】本発明の実施形態３に係るポインティング装置の動作と発行するコマンドとの対応関係を示す図であり、（ａ）、（ｂ）は、それぞれ、その対応関係を示す表、概要図である。
【図１２】演算部が実行するポインティング処理（３）を示すフローチャートである。
【図１３】本発明の実施形態４に係るポインティング装置が撮影した撮影画像を示す図であり、（ａ）〜（ｄ）は、それぞれ、ポインティング装置の回転角度が、０°，左３０°，左６０°，左９０°の場合の撮影画像を示す。
【図１４】実施形態４に係るポインティング装置の動作を説明するための図であり、（ａ）、（ｂ）は、それぞれ、ポインティング装置を左９０°回転させたときに上下方向に変化させた状態、そのときの撮影画像の変化を示す。
【図１５】演算部が実行する回転角度取得処理（２）を示すフローチャートである。
【図１６】本発明の実施形態５に係るポインティング装置を移動させたときのスクリーンとの位置関係を示す図である。
【図１７】図１６に示すようにポインティング装置を移動させたときの撮影画像を示す図であり、（ａ）は、元の位置におけるスクリーン画像を示し、（ｂ）は、ポインティング装置を移動させたときのスクリーン画像の変化を示す。
【図１８】実施形態５に係る演算部が実行するポインティング処理（４）を示すフローチャートである。
【図１９】実施形態６に係る演算部が実行するポインティング処理（５）を示すフローチャートである。
【図２０】実施形態７に係る演算部が実行するポインティング処理（６）を示すフローチャートである。
【符号の説明】
【０１８５】
１・・・プロジェクタ、２・・・ポインティング装置、３・・・情報処理装置、１１・・・光学部、１２・・・画像処理部、１３・・・メモリ、１５・・・演算部、Ｓ・・・スクリーン
【図１】
0004720579.tif 000002
【図２】
0004720579.tif 000003
【図３】
0004720579.tif 000004
【図４】
0004720579.tif 000005
【図５】
0004720579.tif 000006
【図６】
0004720579.tif 000007
【図７】
0004720579.tif 000008
【図８】
0004720579.tif 000009
【図９】
0004720579.tif 000010
【図１０】
0004720579.tif 000011
【図１１】
0004720579.tif 000012
【図１２】
0004720579.tif 000013
【図１３】
0004720579.tif 000014
【図１４】
0004720579.tif 000015
【図１５】
0004720579.tif 000016
【図１６】
0004720579.tif 000017
【図１７】
0004720579.tif 000018
【図１８】
0004720579.tif 000019
【図１９】
0004720579.tif 000020
【図２０】
0004720579.tif 000021