(57)【要約】【課題】投影装置に対するユーザ操作の検出精度を向上させることを課題とする。【解決手段】投影部は、投影面に投影画像を投影する。撮像部は、撮像領域を撮像し、撮像画像を生成する。画像検出部は、操作対象画像に一致する投影画像内の画像を表す一致画像を検出する。第１座標算出部は、投影画像に対する撮像領域の位置を特定する第１座標を算出する。第２座標算出部は、投影画像に対する一致画像の位置を特定する第２座標を算出する。移動情報算出部は、第１座標と第２座標とから、撮像領域を移動させるための移動情報を算出する。撮像制御部は、移動情報にしたがって、撮像領域を移動させるように、撮像部による撮像を制御する。操作検出部は、一致画像に対するユーザ操作を検出する。投影制御部は、投影画像を生成し、投影部による投影を制御する。【選択図】図２
2014153769.tif 000002
【特許請求の範囲】
【請求項１】
投影面に投影画像を投影する投影部と、
撮像可能な領域を表す撮像領域を撮像し、撮像画像を生成する撮像部と、
ユーザの操作対象となる画像を表す操作対象画像に一致する前記投影画像内の画像を表す一致画像を検出する画像検出部と、
前記投影画像に対する前記撮像領域の位置を特定する第１座標を算出する第１座標算出部と、
前記投影画像に対する前記一致画像の位置を特定する第２座標を算出する第２座標算出部と、
前記第１座標と前記第２座標とから、前記撮像領域を移動させるための移動情報を算出する移動情報算出部と、
前記移動情報にしたがって、前記撮像領域を移動させるように、前記撮像部による撮像を制御する撮像制御部と、
前記撮像画像を用いて、前記一致画像に対するユーザ操作を検出する操作検出部と、
検出された前記ユーザ操作に応じて投影画像を生成し、生成した投影画像の前記投影部による投影を制御する投影制御部と
を有することを特徴とする投影システム。
【請求項２】
前記移動情報算出部は、現在の前記撮像領域の重心となる座標から、前記一致画像の重心となる座標への移動量を、前記移動情報として算出することを特徴とする請求項１に記載の投影システム。
【請求項３】
前記移動情報算出部は、前記第１座標から前記第２座標への移動量であって、現在の前記第１座標と前記第２座標との対応する座標間で距離が最小となる移動量を、前記移動情報として算出することを特徴とする請求項１に記載の投影システム。
【請求項４】
前記第１座標と前記第２座標とから、前記撮像領域が前記一致画像を包含しているか否かを判定する包含判定部をさらに有し、
前記移動情報算出部は、前記撮像領域が前記一致画像を包含していると判定された場合に、前記移動情報を算出することを特徴とする請求項１〜３の何れか一つに記載の投影システム。
【請求項５】
前記第１座標と前記第２座標とから、前記撮像領域が前記一致画像を包含しているか否かを判定する包含判定部と、
前記撮像領域が前記一致画像を包含していないと判定された場合に、前記第１座標と前記第２座標とから、前記撮像領域の面積が前記一致画像の面積よりも小さいか否かを判定する面積判定部と、をさらに有し、
前記移動情報算出部は、前記撮像領域の面積が前記一致画像の面積よりも小さいと判定された場合に、前記移動情報を算出することを特徴とする請求項１又は２に記載の投影システム。
【請求項６】
前記投影制御部は、現在の前記第１座標から、前記撮像領域を表示させた投影画像を生成することを特徴とする請求項５に記載の投影システム。
【請求項７】
前記移動情報算出部は、複数の前記一致画像が検出された場合に、複数の前記一致画像から任意の一致画像を選択し、現在の前記撮像領域の重心となる座標から、選択した任意の前記一致画像の重心となる座標への移動量を、前記移動情報として算出することを特徴とする請求項１に記載の投影システム。
【請求項８】
前記移動情報算出部は、複数の前記一致画像が検出された場合に、現在の前記撮像領域の重心となる座標から、複数の前記一致画像の重心となる座標それぞれへの移動量を算出し、最小となる移動量を、前記移動情報として算出することを特徴とする請求項１に記載の投影システム。
【請求項９】
前記移動情報算出部は、複数の前記一致画像が検出された場合に、複数の前記一致画像の面積を算出し、算出した面積に応じて一致画像を選択し、現在の前記撮像領域の重心となる座標から、選択した前記一致画像の重心となる座標への移動量を、前記移動情報として算出することを特徴とする請求項１に記載の投影システム。
【請求項１０】
前記移動情報算出部は、複数の前記一致画像が検出された場合に、複数の前記一致画像から任意の一致画像を順次選択し、現在の前記撮像領域の重心となる座標から、順次選択した任意の前記一致画像の重心となる座標への移動量を、前記移動情報として算出することを特徴とする請求項１に記載の投影システム。
【請求項１１】
前記移動情報算出部は、複数の前記一致画像が検出された場合に、予め決定された複数の前記一致画像の優先順位にしたがって一致画像を順次選択し、現在の前記撮像領域の重心となる座標から、順次選択した前記一致画像の重心となる座標への移動量を、前記移動情報として算出することを特徴とする請求項１に記載の投影システム。
【請求項１２】
撮像領域の移動に関する設定事項を表す移動設定を行なう移動設定部をさらに有し、
前記移動情報算出部は、前記移動設定に応じて前記移動情報を算出することを特徴とする請求項７〜１１の何れか一つに記載の投影システム。
【請求項１３】
前記投影制御部は、現在の前記第１座標と前記第２座標とから、現在の前記撮像領域に含まれる前記一致画像の表示を、所定の表示に変化させた投影画像を生成することを特徴とする請求項７〜１１の何れか一つに記載の投影システム。
【請求項１４】
ユーザの操作対象となる画像を表す操作対象画像に一致する投影画像内の画像を表す一致画像を検出する画像検出ステップと、
前記投影画像に対する、撮像可能な領域を表す撮像領域の位置を特定する第１座標を算出する第１座標算出ステップと、
前記投影画像に対する、前記一致画像の位置を特定する第２座標を算出する第２座標算出ステップと、
前記第１座標と前記第２座標とから、前記撮像領域を移動させるための移動情報を算出する移動情報算出ステップと、
前記移動情報にしたがって、前記撮像領域を移動させるように、撮像装置による撮像を制御する撮像制御ステップと、
前記撮像装置によって撮像された撮像画像を用いて、前記一致画像に対するユーザ操作を検出する操作検出ステップと、
検出された前記ユーザ操作に応じて投影画像を生成し、生成した投影画像の投影装置による投影を制御する投影制御ステップと
をコンピュータに実行させるための制御プログラム。
【請求項１５】
前記移動情報算出ステップは、現在の前記撮像領域の重心となる座標から、前記一致画像の重心となる座標への移動量を、前記移動情報として算出することを特徴とする請求項１４に記載の制御プログラム。
【請求項１６】
前記移動情報算出ステップは、前記第１座標から前記第２座標への移動量であって、現在の前記第１座標と前記第２座標との対応する座標間で距離が最小となる移動量を、前記移動情報として算出することを特徴とする請求項１４に記載の制御プログラム。
【請求項１７】
前記第１座標と前記第２座標とから、前記撮像領域が前記一致画像を包含しているか否かを判定する包含判定ステップをさらに実行させ、
前記移動情報算出ステップは、前記撮像領域が前記一致画像を包含していると判定された場合に、前記移動情報を算出することを特徴とする請求項１４〜１６の何れか一つに記載の制御プログラム。
【請求項１８】
前記第１座標と前記第２座標とから、前記撮像領域が前記一致画像を包含しているか否かを判定する包含判定ステップと、
前記撮像領域が前記一致画像を包含していないと判定された場合に、前記第１座標と前記第２座標とから、前記撮像領域の面積が前記一致画像の面積よりも小さいか否かを判定する面積判定ステップと、をさらに実行させ、
前記移動情報算出ステップは、前記撮像領域の面積が前記一致画像の面積よりも小さいと判定された場合に、前記移動情報を算出することを特徴とする請求項１４又は１５に記載の制御プログラム。
【請求項１９】
ユーザの操作対象となる画像を表す操作対象画像に一致する投影画像内の画像を表す一致画像を検出する画像検出部と、
前記投影画像に対する、撮像可能な領域を表す撮像領域の位置を特定する第１座標を算出する第１座標算出部と、
前記投影画像に対する、前記一致画像の位置を特定する第２座標を算出する第２座標算出部と、
前記第１座標と前記第２座標とから、前記撮像領域を移動させるための移動情報を算出する移動情報算出部と、
前記移動情報にしたがって、前記撮像領域を移動させるように、撮像装置による撮像を制御する撮像制御部と、
前記撮像装置によって撮像された撮像画像を用いて、前記一致画像に対するユーザ操作を検出する操作検出部と、
検出された前記ユーザ操作に応じて投影画像を生成し、生成した投影画像の投影装置による投影を制御する投影制御部と
を有することを特徴とする制御装置。
【請求項２０】
ユーザの操作対象となる画像を表す操作対象画像に一致する投影画像内の画像を表す一致画像を検出する画像検出ステップと、
前記投影画像に対する、撮像可能な領域を表す撮像領域の位置を特定する第１座標を算出する第１座標算出ステップと、
前記投影画像に対する、前記一致画像の位置を特定する第２座標を算出する第２座標算出ステップと、
前記第１座標と前記第２座標とから、前記撮像領域を移動させるための移動情報を算出する移動情報算出ステップと、
前記移動情報にしたがって、前記撮像領域を移動させるように、撮像装置による撮像を制御する撮像制御ステップと、
前記撮像装置によって撮像された撮像画像を用いて、前記一致画像に対するユーザ操作を検出する操作検出ステップと、
検出された前記ユーザ操作に応じて投影画像を生成し、生成した投影画像の投影装置による投影を制御する投影制御ステップと
を含むことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、投影システム、制御プログラム、制御装置及び制御方法に関する。
【背景技術】
【０００２】
従来、プロジェクタ等の投影装置によってスクリーン等の投影面に投影される投影画像に対して、電子ペン等のポインティングデバイスを利用してポインティング位置を移動させることにより、投影装置を操作する技術が知られている。これに対して、ポインティングデバイスを利用しなくても投影装置を操作する技術も存在する。例えば、ユーザの所定動作であるジェスチャをカメラで認識し、ジェスチャに対応する操作を投影装置に対して実行する技術が知られている。また、投影画像に含まれるボタン等の操作対象を操作するための動作がユーザによって行なわれた場合に、この動作をカメラで認識し、操作対象の操作に対応する処理を投影装置に対して実行させる技術も知られている。これらの技術は、例えば、会議等のプレゼンテーションや、店舗においてコンテンツをユーザに表示するような用途が想定される。
【０００３】
また、これらの技術においては、ポインティング位置に応じた投影装置の操作が実行されることから、現在のポインティング位置を高精度に検出できることが望ましい。ポインティング位置を高精度に検出するための技術としては、例えば、投影面の所定箇所をマーキングした画像を保持しておき、マーキングした画像と現在投影されている画像との差分をとることにより、ポインティング位置を検出するものがある。かかる技術では、マーカを常時表示させることなく、現在のポインティング位置を検出できる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来技術では、投影装置に対するユーザ操作を検出することができない場合があるという問題がある。具体的には、ユーザの動作をカメラによって認識することで投影装置を操作する状況において、カメラによって撮像可能な領域を表す撮像領域が投影画像よりも小さい場合に、投影装置に対する操作を検出することができない場合がある。撮像領域が投影画像よりも小さくなるケースは、投影面とカメラとの距離が近いことで発生する。つまり、プレゼンテーションやコンテンツの表示等の用途において、投影面とカメラとの距離を十分に確保できない場合には、上記のような問題が発生する。
【０００５】
本発明は、上記に鑑みてなされたものであって、投影装置に対するユーザ操作の検出精度を向上させることが可能である投影システム、制御プログラム、制御装置及び制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するため、本発明に係る投影システムは、投影面に投影画像を投影する投影部と、撮像可能な領域を表す撮像領域を撮像し、撮像画像を生成する撮像部と、ユーザの操作対象となる画像を表す操作対象画像に一致する前記投影画像内の画像を表す一致画像を検出する画像検出部と、前記投影画像に対する前記撮像領域の位置を特定する第１座標を算出する第１座標算出部と、前記投影画像に対する前記一致画像の位置を特定する第２座標を算出する第２座標算出部と、前記第１座標と前記第２座標とから、前記撮像領域を移動させるための移動情報を算出する移動情報算出部と、前記移動情報にしたがって、前記撮像領域を移動させるように、前記撮像部による撮像を制御する撮像制御部と、前記撮像画像を用いて、前記一致画像に対するユーザ操作を検出する操作検出部と、検出された前記ユーザ操作に応じて投影画像を生成し、生成した投影画像の前記投影部による投影を制御する投影制御部とを有する。
【０００７】
また、本発明に係る制御プログラムは、ユーザの操作対象となる画像を表す操作対象画像に一致する投影画像内の画像を表す一致画像を検出する画像検出ステップと、前記投影画像に対する、撮像可能な領域を表す撮像領域の位置を特定する第１座標を算出する第１座標算出ステップと、前記投影画像に対する、前記一致画像の位置を特定する第２座標を算出する第２座標算出ステップと、前記第１座標と前記第２座標とから、前記撮像領域を移動させるための移動情報を算出する移動情報算出ステップと、前記移動情報にしたがって、前記撮像領域を移動させるように、撮像装置による撮像を制御する撮像制御ステップと、前記撮像装置によって撮像された撮像画像を用いて、前記一致画像に対するユーザ操作を検出する操作検出ステップと、検出された前記ユーザ操作に応じて投影画像を生成し、生成した投影画像の投影装置による投影を制御する投影制御ステップとをコンピュータに実行させる。
【０００８】
また、本発明に係る制御装置は、ユーザの操作対象となる画像を表す操作対象画像に一致する投影画像内の画像を表す一致画像を検出する画像検出部と、前記投影画像に対する、撮像可能な領域を表す撮像領域の位置を特定する第１座標を算出する第１座標算出部と、前記投影画像に対する、前記一致画像の位置を特定する第２座標を算出する第２座標算出部と、前記第１座標と前記第２座標とから、前記撮像領域を移動させるための移動情報を算出する移動情報算出部と、前記移動情報にしたがって、前記撮像領域を移動させるように、撮像装置による撮像を制御する撮像制御部と、前記撮像装置によって撮像された撮像画像を用いて、前記一致画像に対するユーザ操作を検出する操作検出部と、検出された前記ユーザ操作に応じて投影画像を生成し、生成した投影画像の投影装置による投影を制御する投影制御部とを有する。
【０００９】
また、本発明に係る制御方法は、ユーザの操作対象となる画像を表す操作対象画像に一致する投影画像内の画像を表す一致画像を検出する画像検出ステップと、前記投影画像に対する、撮像可能な領域を表す撮像領域の位置を特定する第１座標を算出する第１座標算出ステップと、前記投影画像に対する、前記一致画像の位置を特定する第２座標を算出する第２座標算出ステップと、前記第１座標と前記第２座標とから、前記撮像領域を移動させるための移動情報を算出する移動情報算出ステップと、前記移動情報にしたがって、前記撮像領域を移動させるように、撮像装置による撮像を制御する撮像制御ステップと、前記撮像装置によって撮像された撮像画像を用いて、前記一致画像に対するユーザ操作を検出する操作検出ステップと、検出された前記ユーザ操作に応じて投影画像を生成し、生成した投影画像の投影装置による投影を制御する投影制御ステップとを含む。
【発明の効果】
【００１０】
本発明の一つの様態によれば、投影装置に対するユーザ操作の検出精度を向上させることができるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、本実施の形態に係る投影システムの構成例を示す図である。
【図２】図２は、実施の形態１に係る装置構成例を示す機能ブロック図である。
【図３】図３は、実施の形態１に係る一致画像の検出処理を説明する図である。
【図４】図４は、実施の形態１に係る撮像領域の移動量算出処理を説明する図である。
【図５】図５は、実施の形態１に係る移動量算出処理の流れの例を示すフローチャートである。
【図６】図６は、実施の形態２に係る装置構成例を示す機能ブロック図である。
【図７】図７は、実施の形態２に係る撮像領域の移動を説明する図である。
【図８】図８は、実施の形態２に係る移動量算出処理の流れの例を示すフローチャートである。
【図９】図９は、実施の形態３に係る装置構成例を示す機能ブロック図である。
【図１０】図１０は、実施の形態３に係る撮像領域の移動を説明する図である。
【図１１】図１１は、実施の形態３に係る移動量算出処理の流れの例を示すフローチャートである。
【図１２】図１２は、実施の形態４に係る装置構成例を示す機能ブロック図である。
【図１３】図１３は、実施の形態４に係る撮像領域の移動を示す図である。
【図１４】図１４は、実施の形態４に係る移動量算出処理の流れの例を示すフローチャートである。
【図１５】図１５は、実施の形態５に係る装置構成例を示す機能ブロック図である。
【図１６】図１６は、実施の形態５に係る撮像領域の移動を示す図である。
【図１７】図１７は、実施の形態５に係る移動量算出処理の流れの例を示すフローチャートである。
【図１８】図１８は、実施の形態６に係る装置構成例を示す機能ブロック図である。
【図１９】図１９は、実施の形態６に係る撮像領域の移動を示す図である。
【図２０】図２０は、実施の形態６に係る移動量算出処理の流れの例を示すフローチャートである。
【図２１】図２１は、実施の形態７に係る装置構成例を示す機能ブロック図である。
【図２２】図２２は、実施の形態７に係る撮像領域の移動を示す図である。
【図２３】図２３は、実施の形態７に係る移動量算出処理の流れの例を示すフローチャートである。
【図２４】図２４は、実施の形態７の変形例に係る撮像領域の移動を示す図である。
【図２５】図２５は、実施の形態７の変形例に係る移動量算出処理の流れの例を示すフローチャートである。
【図２６】図２６は、実施の形態８に係る装置構成例を示す機能ブロック図である。
【図２７】図２７は、実施の形態８に係る移動量算出処理の流れの例を示すフローチャートである。
【図２８】図２８は、撮像領域のフィードバックの例を示す図である。
【図２９】図２９は、オブジェクトのフィードバックの例を示す図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照して、本発明に係る投影システム、制御プログラム、制御装置及び制御方法の実施の形態を説明する。なお、以下の実施の形態により本発明が限定されるものではない。また、各実施の形態は、内容を矛盾させない範囲で適宜組み合わせることができる。
【００１３】
（実施の形態１）
［システム構成］
図１を用いて、本実施の形態に係る投影システムの構成を説明する。図１は、本実施の形態に係る投影システムの構成例を示す図である。
【００１４】
図１に示すように、投影システム１０は、撮像装置２０と、投影装置３０と、制御装置１００とを有する。これらのうち、撮像装置２０は、投影面に投影される投影画像を撮像し、撮像画像を生成するカメラ等である。かかる撮像装置２０は、制御装置１００に接続される。以下では、撮像装置２０が撮像可能な領域を「撮像領域」と呼ぶ場合がある。撮像領域は、撮像装置２０と投影面との距離に応じて大きさが変化する。投影装置３０は、投影面に投影画像を投影するプロジェクタ等である。かかる投影装置３０は、制御装置１００に接続される。
【００１５】
制御装置１００は、撮像装置２０によって生成された撮像画像から、投影画像でのユーザ操作を検出し、検出したユーザ操作に応じて新たな投影画像を生成し、投影装置３０による投影画像の投影を制御する。また、制御装置１００は、撮像装置２０によって生成された撮像画像をもとに、撮像領域を移動させるための移動情報を算出して、撮像装置２０による撮像を制御する。上述したように、撮像領域は、撮像装置２０と投影面との距離に応じて大きさが変化する。このため、制御装置１００は、投影画像でのユーザ操作を実現するために、撮像領域を移動させるための移動情報を算出する。なお、各装置の接続は、有線及び無線の何れであっても良い。
【００１６】
例えば、投影システム１０は、会議等のプレゼンテーションや、店舗においてコンテンツをユーザに表示する用途で利用される。すなわち、ユーザは、投影画像に配置されたボタン画像等のオブジェクトに、手を近づけたり触れたりするユーザ操作を行なう。このようなユーザ操作が行なわれることにより、オブジェクトに対する操作が行なわれたこととして、操作に応じた投影画像の切り替え等が実現する。また、ユーザ操作を実現するためには、撮像領域にオブジェクトが含まれていなければならない。投影システム１０の用途によっては、投影面と撮像装置２０との距離を十分に確保できない可能性もあり、撮像領域が投影画像を包含できないケースが発生する。このため、制御装置１００は、撮像画像をもとに、撮像領域を移動させるための移動情報を算出している。
【００１７】
［実施の形態１に係る装置構成］
図２を用いて、実施の形態１に係る装置構成を説明する。図２は、実施の形態１に係る装置構成例を示す機能ブロック図である。
【００１８】
図２に示すように、撮像装置２０は、撮像部２１を有する。撮像部２１は、制御装置１００による制御により、撮像可能な領域を表す撮像領域を撮像し、撮像画像を生成する。そして、撮像装置２０は、生成した撮像画像を制御装置１００に対して送信する。撮像画像は、撮像領域を撮像した画像であるため、投影面と撮像装置２０との距離によっては投影画像全てを含む画像ではない場合がある。投影装置３０は、投影部３１を有する。投影部３１は、制御装置１００による制御により、投影面に投影画像を投影する。
【００１９】
制御装置１００は、記憶部１１０と、制御部１２０とを有する。これらのうち、記憶部１１０は、制御部１２０による各種処理で利用されるデータや、制御部１２０による各種処理結果を記憶し、撮像画像記憶部１１１を有する。撮像画像記憶部１１１は、撮像装置２０によって撮像された撮像画像を記憶する。また、記憶部１１０は、例えば、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置である。
【００２０】
制御部１２０は、制御プログラム、各種の処理手順等を規定したプログラム及び所要データを格納するための内部メモリを有する。かかる制御部１２０は、画像検出部１２１ａと、第１座標算出部１２１ｂと、第２座標算出部１２１ｃと、包含判定部１２１ｄと、移動情報算出部１２１ｅと、撮像制御部１２１ｆとを有する。これらの機能ブロックによる処理は、主に撮像装置２０を制御するために実行される。また、制御部１２０は、操作検出部１２２ａと、投影制御部１２２ｂとを有する。これらの機能ブロックによる処理は、主に投影装置３０を制御するために実行される。また、制御部１２０は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路、又は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等の電子回路である。
【００２１】
画像検出部１２１ａは、投影画像内に配置されたユーザ操作のためのオブジェクトを検出する。より具体的には、画像検出部１２１ａは、ユーザの操作対象となる画像を表す操作対象画像を取得する。操作対象画像は、記憶部１１０に記憶されていても良いし、外部の記憶装置やサーバ装置等から取得されても良い。また、画像検出部１２１ａは、撮像画像を撮像画像記憶部１１１から取得する。そして、画像検出部１２１ａは、取得した操作対象画像と撮像画像とから、操作対象画像に一致する投影画像内の画像を表す一致画像を検出する。一致画像は、投影画像内に配置されたユーザ操作のためのオブジェクトに対応する。ここで、画像検出部１２１ａによる一致画像の検出処理のために、撮像制御部１２１ｆは、撮像装置２０のカメラレンズの方向を制御することにより、撮像領域を移動させる。これにより、撮像部２１は、撮像領域を移動しながら撮像することにより、複数の撮像画像を生成する。
【００２２】
図３は、実施の形態１に係る一致画像の検出処理を説明する図である。図３上段の左方は、デフォルトの状態を表している。図３上段の左方に示すように、撮像領域３は、ボタン画像２が配置された投影画像１よりも小さい。また、投影画像１、ボタン画像２及び撮像領域３は、方形である。このような状態において、制御装置１００は、投影装置３０の電源が投入されたときや、投影される投影画像１が切り替わったとき等に、以下の処理を開始する。
【００２３】
撮像制御部１２１ｆは、投影画像１に埋め込まれた各頂点の座標情報を探索させるために、撮像領域３を投影画像１の左上方向に移動させるように撮像装置２０に対して指示する。指示を受けた撮像部２１は、投影画像１の左上の頂点の座標情報を検出する。そして、撮像制御部１２１ｆは、検出された投影画像１の左上の頂点座標に、撮像領域３の左上の頂点が重なるように、撮像装置２０に対して指示する。指示を受けた撮像部２１は、図３上段の右方に示すように、投影画像１の左上の頂点座標に、撮像領域３の左上の頂点が重なるように撮像領域３を移動し、このときの撮像領域３を撮像して撮像画像を生成する。生成された撮像画像は、撮像制御部１２１ｆを介して、撮像画像記憶部１１１に格納される。
【００２４】
その後、撮像制御部１２１ｆは、図３中段の右方、図３中段の左方及び図３下段の左方に示すように、投影画像１の各頂点座標と、撮像領域３の対応する各頂点とが重なるように、撮像領域を順次移動させる指示を撮像装置２０に対して行なう。これらにより、撮像画像記憶部１１１には、撮像部２１によって生成された複数の撮像画像が記憶される。図３に示した例では、投影画像１の左上の頂点の座標情報が検出されたときに撮像された撮像画像に、ボタン画像２が含まれている。そして、図３下段の右方に示すように、撮像制御部１２１ｆは、投影画像１全体の検出が終了すると、撮像領域３の位置をデフォルトの状態へ戻すように撮像部２１を制御する。また、撮像制御部１２１ｆは、デフォルトの状態における撮像領域３についても撮像するように撮像装置２０に指示する。これにより、撮像画像記憶部１１１には、デフォルトの状態で撮像された撮像画像も含まれる。
【００２５】
投影画像１全体の検出処理終了後、画像検出部１２１ａは、操作対象画像を取得するとともに、撮像画像記憶部１１１から複数の撮像画像を取得する。そして、画像検出部１２１ａは、複数の撮像画像内において、操作対象画像と一致する一致画像を検出することにより、投影画像内に配置されたボタン画像２を検出する。
【００２６】
第１座標算出部１２１ｂは、投影画像に対する撮像領域の位置を特定するための座標を表す第１座標を算出する。より具体的には、第１座標算出部１２１ｂは、投影画像の左下の頂点座標を（０，０）としたときの投影画像に対する、現在の撮像領域の頂点座標全てを算出する。現在の撮像領域の頂点座標は、撮像画像記憶部１１１に記憶された複数の撮像画像から求められる。算出される現在の撮像領域の頂点座標は、デフォルトの状態における撮像領域の頂点座標となる（図３上段の左方参照）。
【００２７】
第２座標算出部１２１ｃは、投影画像に対する一致画像の位置を特定するための座標を表す第２座標を算出する。より具体的には、第２座標算出部１２１ｃは、投影画像の左下の頂点座標を（０，０）としたときの投影画像に対する、ボタン画像の頂点座標全てを算出する。ボタン画像の頂点座標は、撮像画像記憶部１１１に記憶された複数の撮像画像から求められる。
【００２８】
包含判定部１２１ｄは、撮像領域が一致画像を包含しているか否かを判定する。より具体的には、包含判定部１２１ｄは、第１座標算出部１２１ｂによって算出された現在の撮像領域の各頂点座標と、第２座標算出部１２１ｃによって算出されたボタン画像の各頂点座標とから、現在の撮像領域がボタン画像を包含しているか否かを判定する。そして、包含判定部１２１ｄは、現在の撮像領域がボタン画像を包含しているか否かの判定結果を、移動情報算出部１２１ｅに対して通知する。
【００２９】
ここで、包含判定部１２１ｄによる判定処理の一例を説明する。以下のように、各頂点座標について比較すれば良い。
【００３０】
左下の頂点座標の比較。
「ボタン画像の左下の頂点のｘ座標＜撮像領域の左下の頂点のｘ座標」であれば、現在の撮像領域がボタン画像を包含していない判定結果となる。
「撮像領域の左下の頂点のｘ座標＜＝ボタン画像の左下の頂点のｘ座標」であれば、判定できないため、次の比較を行なう。
「ボタン画像の左下の頂点のｙ座標＜撮像領域の左下の頂点のｙ座標」であれば、現在の撮像領域がボタン画像を包含していない判定結果となる。
「撮像領域の左下の頂点のｙ座標＜＝ボタン画像の左下の頂点のｙ座標」であれば、判定できないため、次の比較を行なう。
【００３１】
左上の頂点座標の比較。
「ボタン画像の左上の頂点のｘ座標＜撮像領域の左上の頂点のｘ座標」であれば、現在の撮像領域がボタン画像を包含していない判定結果となる。
「撮像領域の左上の頂点のｘ座標＜＝ボタン画像の左上の頂点のｘ座標」であれば、判定できないため、次の比較を行なう。
「撮像領域の左上の頂点のｙ座標＜ボタン画像の左上の頂点のｙ座標」であれば、現在の撮像領域がボタン画像を包含していない判定結果となる。
「ボタン画像の左上の頂点のｙ座標＜＝撮像領域の左上の頂点のｙ座標」であれば、判定できないため、次の比較を行なう。
【００３２】
右下の頂点座標の比較。
「撮像領域の右下の頂点のｘ座標＜ボタン画像の右下の頂点のｘ座標」であれば、現在の撮像領域がボタン画像を包含していない判定結果となる。
「ボタン画像の右下の頂点のｘ座標＜＝撮像領域の右下の頂点のｘ座標」であれば、判定できないため、次の比較を行なう。
「ボタン画像の右下の頂点のｙ座標＜撮像領域の右下の頂点のｙ座標」であれば、現在の撮像領域がボタン画像を包含していない判定結果となる。
「撮像領域の右下の頂点のｙ座標＜＝ボタン画像の右下の頂点のｙ座標」であれば、判定できないため、次の比較を行なう。
【００３３】
右上の頂点座標の比較。
「撮像領域の右上の頂点のｘ座標＜ボタン画像の右上の頂点のｘ座標」であれば、現在の撮像領域がボタン画像を包含していない判定結果となる。
「ボタン画像の右上の頂点のｘ座標＜＝撮像領域の右上の頂点のｘ座標」であれば、判定できないため、次の比較を行なう。
「撮像領域の右上の頂点のｙ座標＜ボタン画像の右上の頂点のｙ座標」であれば、現在の撮像領域がボタン画像を包含していない判定結果となる。
「ボタン画像の右上の頂点のｙ座標＜＝撮像領域の右上の頂点のｙ座標」であれば、現在の撮像領域がボタン画像を包含している判定結果となる。
【００３４】
移動情報算出部１２１ｅは、撮像領域を移動させるための移動情報を算出する。より具体的には、移動情報算出部１２１ｅは、包含判定部１２１ｄから判定結果を受け付ける。このとき、移動情報算出部１２１ｅは、現在の撮像領域がボタン画像を包含していないと判定された場合に、第１座標算出部１２１ｂによって算出された現在の撮像領域の各頂点座標から、現在の撮像領域の重心となる座標を算出する。また、移動情報算出部１２１ｅは、現在の撮像領域がボタン画像を包含していないと判定された場合に、第２座標算出部１２１ｃによって算出されたボタン画像の各頂点座標から、ボタン画像の重心となる座標を算出する。
【００３５】
そして、移動情報算出部１２１ｅは、現在の撮像領域の重心となる座標から、ボタン画像の重心となる座標への移動量を、移動情報として算出する。なお、移動情報算出部１２１ｅは、現在の撮像領域がボタン画像を包含していると判定された場合に、撮像領域を移動させなくてもユーザ操作を受け付けることが可能であるため、移動量を「０」とする移動情報を算出する。その後、移動情報算出部１２１ｅは、算出した移動量を撮像制御部１２１ｆに対して通知する。
【００３６】
ここで、移動情報算出部１２１ｅによる移動量算出処理の一例を説明する。以下のように、各頂点座標からｘ方向とｙ方向との中点座標をそれぞれ求めることにより重心となる座標を求め、求めた中点座標間を移動するための値を撮像領域の移動量とすれば良い。
【００３７】
現在の撮像領域の重心となる座標。
「ｘ座標＝
（撮像領域の左下の頂点のｘ座標＋撮像領域の右上の頂点のｘ座標）÷２」
「ｙ座標＝
（撮像領域の左下の頂点のｙ座標＋撮像領域の右上の頂点のｙ座標）÷２」
【００３８】
ボタン画像の重心となる座標。
「ｘ座標＝
（ボタン画像の左下の頂点のｘ座標＋ボタン画像の右上の頂点のｘ座標）÷２」
「ｙ座標＝
（ボタン画像の左下の頂点のｙ座標＋ボタン画像の右上の頂点のｙ座標）÷２」
【００３９】
算出される移動量。
「ｘ座標＝
ボタン画像の重心となる座標のｘ座標−現在の撮像領域の重心となる座標のｘ座標」
「ｙ座標＝
ボタン画像の重心となる座標のｙ座標−現在の撮像領域の重心となる座標のｙ座標」
【００４０】
撮像制御部１２１ｆは、撮像部２１による撮像を制御する。より具体的には、撮像制御部１２１ｆは、移動情報算出部１２１ｅから撮像領域の移動量を受け付けて、受け付けた移動量にしたがって、撮像領域を移動させるように撮像部２１による撮像を制御する。なお、撮像制御部１２１ｆは、移動情報算出部１２１ｅによって通知された移動量が「０」である場合には、撮像部２１に対する制御を行なわない。
【００４１】
図４は、実施の形態１に係る撮像領域の移動を説明する図である。図４上段に示した例において、ボタン画像２の各頂点座標は、（１，９）、（１，１１）、（５，９）、（５，１１）である。同様に、撮像領域３の各頂点座標は、（６，４）、（６，８）、（１２，４）、（１２，８）である。投影画像１は、上記の各頂点座標を有するボタン画像２と撮像領域３とを含んでいる。
【００４２】
上述した状態において、移動情報算出部１２１ｅは、撮像領域３の各頂点座標から、現在の撮像領域３の重心となる座標（９，６）を算出する。図４において、撮像領域３の重心となる座標は、黒四角で表している。また、移動情報算出部１２１ｅは、ボタン画像２の各頂点座標から、ボタン画像２の重心となる座標（３，１０）を算出する。図４において、ボタン画像２の重心となる座標は、黒丸で表している。
【００４３】
そして、移動情報算出部１２１ｅは、現在の撮像領域３の重心となる座標（９，６）から、ボタン画像２の重心となる座標（３，１０）への移動量を算出する。かかる移動量の算出では、「ｘ方向＝３−９＝−６」、「ｙ方向＝１０−６＝＋４」となるので、現在の撮像領域３を、ｘ方向に「−６」移動させ、ｙ方向に「＋４」移動させる移動量「（−６，＋４）」が得られる。その後、撮像制御部１２１ｆは、現在の撮像領域３をｘ方向に「−６」移動させ、ｙ方向に「＋４」移動させるための移動量「（−６，＋４）」を撮像装置２０に対して送信する。これらにより、図４下段に示すように、ボタン画像２の重心となる座標に、撮像領域３の重心となる座標が重なった移動結果が得られる。
【００４４】
操作検出部１２２ａは、投影画像内のオブジェクトに対するユーザ操作を検出する。より具体的には、操作検出部１２２ａは、撮像画像記憶部１１１から撮像画像を取得し、取得した撮像画像からボタン画像に対するユーザ操作を検出する。操作検出部１２２ａによるユーザ操作の検出は、撮像部２１による撮像領域の移動処理後に行なわれる。
【００４５】
投影制御部１２２ｂは、投影装置３０による投影画像の投影を制御する。より具体的には、投影制御部１２２ｂは、操作検出部１２２ａによって検出されたユーザ操作に応じて投影画像を生成し、生成した投影画像の投影部３１による投影を制御する。
【００４６】
［実施の形態１に係る移動量算出処理フロー］
次に、図５を用いて、実施の形態１に係る移動量算出処理の流れについて説明する。図５は、実施の形態１に係る移動量算出処理の流れの例を示すフローチャートである。
【００４７】
図５に示すように、第１座標算出部１２１ｂは、現在の撮像領域の頂点座標を算出する（ステップＳ１０１）。また、第２座標算出部１２１ｃは、ボタン画像の頂点座標を算出する（ステップＳ１０２）。そして、包含判定部１２１ｄは、現在の撮像領域にボタン画像が包含されているか否かを判定する（ステップＳ１０３）。
【００４８】
このとき、包含判定部１２１ｄによって包含されていないと判定された場合に（ステップＳ１０３：Ｎｏ）、移動情報算出部１２１ｅは、第１座標算出部１２１ｂによって算出された頂点座標から、現在の撮像領域の重心となる座標を算出する（ステップＳ１０４）。また、移動情報算出部１２１ｅは、第２座標算出部１２１ｃによって算出された頂点座標から、ボタン画像の重心となる座標を算出する（ステップＳ１０５）。
【００４９】
そして、移動情報算出部１２１ｅは、現在の撮像領域の重心となる座標から、ボタン画像の重心となる座標への移動量を算出する（ステップＳ１０６）。なお、包含判定部１２１ｄによって包含されていると判定された場合に（ステップＳ１０３：Ｙｅｓ）、移動情報算出部１２１ｅは、現在の撮像領域を移動させなくても良いため、移動量を「０」とする（ステップＳ１０７）。
【００５０】
［実施の形態１による効果］
本実施の形態は、撮像領域の重心となる座標から、ボタン画像の重心となる座標への移動量を算出し、算出した移動量により撮像領域がボタン画像に重なるように移動させる制御を撮像装置に対して行なう。この結果、本実施の形態によれば、投影面と撮像装置との距離を十分に確保できない場合であっても、投影装置に対するユーザ操作の検出精度を向上させることができる。
【００５１】
（実施の形態２）
上記実施の形態１では、ユーザ操作のためのオブジェクトの重心に、撮像領域の重心を重ねるための撮像領域の移動量を算出する場合を説明した。実施の形態２では、撮像領域のより小さい移動量を算出する場合を説明する。
【００５２】
［実施の形態２に係る装置構成］
図６を用いて、実施の形態２に係る装置構成を説明する。図６は、実施の形態２に係る装置構成例を示す機能ブロック図である。実施の形態２では、実施の形態１と同様の構成については同一の符号を付し、同様の構成については詳細な説明を省略する場合がある。具体的には、以下に示す移動情報算出部２２１ｅ以外の機能及び構成、処理は実施の形態１と同様である。
【００５３】
図６に示すように、撮像装置２０は、撮像部２１を有する。また、投影装置３０は、投影部３１を有する。制御装置２００は、記憶部１１０と、制御部２２０とを有する。これらのうち、記憶部１１０は、撮像画像記憶部１１１を有する。制御部２２０は、画像検出部１２１ａと、第１座標算出部１２１ｂと、第２座標算出部１２１ｃと、包含判定部１２１ｄと、移動情報算出部２２１ｅと、撮像制御部１２１ｆとを有する。また、制御部２２０は、操作検出部１２２ａと、投影制御部１２２ｂとを有する。
【００５４】
移動情報算出部２２１ｅは、撮像領域の移動量が最小となる移動情報を算出する。より具体的には、移動情報算出部２２１ｅは、包含判定部１２１ｄから判定結果を受け付ける。このとき、移動情報算出部２２１ｅは、現在の撮像領域がボタン画像を包含していないと判定された場合に、撮像領域の各頂点座標とボタン画像の各頂点座標との対応する座標間で、距離が最小となる移動量を算出する。
【００５５】
ここで、移動情報算出部２２１ｅによる移動量算出処理の一例を説明する。以下のように、対応する各頂点座標間での移動量を求め、求めた移動量が最小となる値を撮像領域の移動量とすれば良い。
【００５６】
左下の頂点の座標間の移動量。
「ｘ方向の移動量＝ボタン画像の左下の頂点のｘ座標−撮像領域の左下の頂点のｘ座標」
「ｙ方向の移動量＝ボタン画像の左下の頂点のｙ座標−撮像領域の左下の頂点のｙ座標」
【００５７】
左上の頂点の座標間の移動量。
「ｘ方向の移動量＝ボタン画像の左上の頂点のｘ座標−撮像領域の左上の頂点のｘ座標」
「ｙ方向の移動量＝ボタン画像の左上の頂点のｙ座標−撮像領域の左上の頂点のｙ座標」
【００５８】
右下の頂点の座標間の移動量。
「ｘ方向の移動量＝ボタン画像の右下の頂点のｘ座標−撮像領域の右下の頂点のｘ座標」
「ｙ方向の移動量＝ボタン画像の右下の頂点のｙ座標−撮像領域の右下の頂点のｙ座標」
【００５９】
右上の頂点の座標間の移動量。
「ｘ方向の移動量＝ボタン画像の右上の頂点のｘ座標−撮像領域の右上の頂点のｘ座標」
「ｙ方向の移動量＝ボタン画像の右上の頂点のｙ座標−撮像領域の右上の頂点のｙ座標」
【００６０】
図７は、実施の形態２に係る撮像領域の移動を説明する図である。図７上段に示した例において、ボタン画像２の各頂点座標は、（１，９）、（１，１１）、（５，９）、（５，１１）である。同様に、撮像領域３の各頂点座標は、（６，４）、（６，８）、（１２，４）、（１２，８）である。投影画像１は、上記の各頂点座標を有するボタン画像２と撮像領域３とを含んでいる。
【００６１】
上述した状態において、移動情報算出部２２１ｅは、左下の頂点の座標間の移動量「ｘ方向＝１−６＝−５」、「ｙ方向＝９−４＝＋５」を算出する。これにより、現在の撮像領域３をｘ方向に「−５」移動させ、ｙ方向に「＋５」移動させる移動量「（−５，＋５）」が得られる。移動量「（−５，＋５）」の距離は、「１０」となる。
【００６２】
また、移動情報算出部２２１ｅは、左上の頂点の座標間の移動量「ｘ方向＝１−６＝−５」、「ｙ方向＝１１−８＝＋３」を算出する。これにより、現在の撮像領域３をｘ方向に「−５」移動させ、ｙ方向に「＋３」移動させる移動量「（−５，＋３）」が得られる。移動量「（−５，＋３）」の距離は、「８」となる。
【００６３】
また、移動情報算出部２２１ｅは、右下の頂点の座標間の移動量「ｘ方向＝５−１２＝−７」、「ｙ方向＝９−４＝＋５」を算出する。これにより、現在の撮像領域３をｘ方向に「−７」移動させ、ｙ方向に「＋５」移動させる移動量「（−７，＋５）」が得られる。移動量「（−７，＋５）」の距離は、「１２」となる。
【００６４】
また、移動情報算出部２２１ｅは、右上の頂点の座標間の移動量「ｘ方向＝５−１２＝−７」、「ｙ方向＝１１−８＝＋３」を算出する。これにより、現在の撮像領域３をｘ方向に「−７」移動させ、ｙ方向に「＋３」移動させる移動量「（−７，＋３）」が得られる。移動量「（−７，＋３）」の距離は、「１０」となる。
【００６５】
そして、移動情報算出部２２１ｅは、座標間の距離が最小となる移動量「（−５，＋３）」を移動情報として算出する。算出された移動量「（−５，＋３）」は、撮像制御部１２１ｆを介して撮像装置２０に送信され、撮像装置２０によって撮像領域３の移動が行なわれる。これらにより、図７下段に示すように、ボタン画像２の左上の頂点座標に、撮像領域３の左上の頂点座標が重なった移動結果が得られる。
【００６６】
［実施の形態２に係る移動量算出処理フロー］
次に、図８を用いて、実施の形態２に係る移動量算出処理の流れについて説明する。図８は、実施の形態２に係る移動量算出処理の流れの例を示すフローチャートである。なお、図８は、図５に示した「ステップＳ１０３：Ｎｏ」の後の処理を表している。すなわち、図８は、撮像領域にボタン画像が包含されていない場合における移動量算出処理の流れを表している。
【００６７】
図８に示すように、移動情報算出部２２１ｅは、第１座標算出部１２１ｂによって算出された頂点座標と、第２座標算出部１２１ｃによって算出された頂点座標との、対応する座標間それぞれの距離を算出する（ステップＳ２０１）。そして、移動情報算出部２２１ｅは、撮像領域とボタン画像とで、左下の頂点の座標間の距離が最小であるか否かを判定する（ステップＳ２０２）。
【００６８】
このとき、移動情報算出部２２１ｅは、左下の頂点の座標間の距離が最小であると判定した場合に（ステップＳ２０２：Ｙｅｓ）、左下の頂点の座標間の移動量を移動情報とする（ステップＳ２０３）。一方、移動情報算出部２２１ｅは、左下の頂点の座標間の距離が最小でないと判定した場合に（ステップＳ２０２：Ｎｏ）、撮像領域とボタン画像とで、左上の頂点の座標間の距離が最小であるか否かを判定する（ステップＳ２０４）。
【００６９】
このとき、移動情報算出部２２１ｅは、左上の頂点の座標間の距離が最小であると判定した場合に（ステップＳ２０４：Ｙｅｓ）、左上の頂点の座標間の移動量を移動情報とする（ステップＳ２０５）。一方、移動情報算出部２２１ｅは、左上の頂点の座標間の距離が最小でないと判定した場合に（ステップＳ２０４：Ｎｏ）、撮像領域とボタン画像とで、右下の頂点の座標間の距離が最小であるか否かを判定する（ステップＳ２０６）。
【００７０】
このとき、移動情報算出部２２１ｅは、右下の頂点の座標間の距離が最小であると判定した場合に（ステップＳ２０６：Ｙｅｓ）、右下の頂点の座標間の移動量を移動情報とする（ステップＳ２０７）。一方、移動情報算出部２２１ｅは、右下の頂点の座標間の距離が最小でないと判定した場合に（ステップＳ２０６：Ｎｏ）、右上の頂点の座標間の移動量を移動情報とする（ステップＳ２０８）。
【００７１】
［実施の形態２による効果］
本実施の形態は、撮像領域の頂点座標とボタン画像の頂点座標との、対応する頂点の座標間の距離を求め、求めた距離が最小となる座標間の移動量を、撮像領域の移動量として算出する。この結果、本実施の形態によれば、撮像領域の移動に要する処理負荷や処理時間を抑制しつつ、投影装置に対するユーザ操作の検出精度を向上させることができる。
【００７２】
（実施の形態３）
上記実施の形態１では、ユーザ操作のためのオブジェクトの重心に、撮像領域の重心を重ねるための撮像領域の移動量を算出する場合を説明した。実施の形態３では、オブジェクトの面積と、撮像領域の面積とに応じて、撮像領域の移動量を算出する場合を説明する。
【００７３】
［実施の形態３に係る装置構成］
図９を用いて、実施の形態３に係る装置構成を説明する。図９は、実施の形態３に係る装置構成例を示す機能ブロック図である。実施の形態３では、実施の形態１と同様の構成については同一の符号を付し、同様の構成については詳細な説明を省略する場合がある。具体的には、以下に示す包含判定部３２１ｄ、移動情報算出部３２１ｅ、面積判定部３２１ｇ以外の機能及び構成、処理は実施の形態１と同様である。
【００７４】
図９に示すように、撮像装置２０は、撮像部２１を有する。また、投影装置３０は、投影部３１を有する。制御装置３００は、記憶部１１０と、制御部３２０とを有する。これらのうち、記憶部１１０は、撮像画像記憶部１１１を有する。制御部３２０は、画像検出部１２１ａと、第１座標算出部１２１ｂと、第２座標算出部１２１ｃと、包含判定部３２１ｄと、移動情報算出部３２１ｅと、撮像制御部１２１ｆと、面積判定部３２１ｇとを有する。また、制御部３２０は、操作検出部１２２ａと、投影制御部１２２ｂとを有する。
【００７５】
包含判定部３２１ｄは、撮像領域が一致画像を包含しているか否かを判定する。より具体的には、包含判定部３２１ｄは、第１座標算出部１２１ｂによって算出された現在の撮像領域の各頂点座標と、第２座標算出部１２１ｃによって算出されたボタン画像の各頂点座標とから、現在の撮像領域がボタン画像を包含しているか否かを判定する。そして、包含判定部３２１ｄは、現在の撮像領域がボタン画像を包含しているか否かの判定結果を、面積判定部３２１ｇに対して通知する。
【００７６】
面積判定部３２１ｇは、撮像領域の面積が一致画像の面積よりも小さいか否かを判定する。より具体的には、面積判定部３２１ｇは、包含判定部３２１ｄから判定結果を受け付ける。このとき、面積判定部３２１ｇは、現在の撮像領域がボタン画像を包含していないと判定された場合に、第１座標算出部１２１ｂによって算出された現在の撮像領域の各頂点座標から、現在の撮像領域の面積を算出する。また、面積判定部３２１ｇは、現在の撮像領域がボタン画像を包含していないと判定された場合に、第２座標算出部１２１ｂによって算出されたボタン画像の各頂点座標から、ボタン画像の面積を算出する。そして、面積判定部３２１ｇは、現在の撮像領域の面積とボタン画像の面積との大きさを比較し、比較結果を移動情報算出部３２１ｅに対して通知する。
【００７７】
移動情報算出部３２１ｅは、撮像領域を移動させるための移動情報を算出する。より具体的には、移動情報算出部３２１ｅは、面積判定部３２１ｇから判定結果を受け付ける。このとき、移動情報算出部３２１ｅは、現在の撮像領域の面積がボタン画像の面積よりも小さいと判定された場合に、第１座標算出部１２１ｂによって算出された現在の撮像領域の各頂点座標から、現在の撮像領域の重心となる座標を算出する。また、移動情報算出部３２１ｅは、現在の撮像領域の面積がボタン画像の面積よりも小さいと判定された場合に、第２座標算出部１２１ｃによって算出されたボタン画像の各頂点座標から、ボタン画像の重心となる座標を算出する。
【００７８】
そして、移動情報算出部３２１ｅは、現在の撮像領域の重心となる座標から、ボタン画像の重心となる座標への移動量を、移動情報として算出する。なお、移動情報算出部３２１ｅは、現在の撮像領域がボタン画像を包含していると判定されていれば、撮像領域を移動させなくてもユーザ操作を受け付けることが可能であるため、移動量を「０」とする移動情報を算出する。
【００７９】
また、移動情報算出部３２１ｅは、現在の撮像領域の面積がボタン画像の面積よりも大きいと判定された場合に、撮像領域の各頂点座標とボタン画像の各頂点座標との対応する座標間で、距離が最小となる移動量を算出する。すなわち、移動情報算出部３２１ｅは、実施の形態２で説明したように、撮像領域の移動量が最小となる移動情報を算出する。その後、移動情報算出部３２１ｅは、算出した移動量を撮像制御部１２１ｆに対して通知する。なお、現在の撮像領域の面積がボタン画像の面積よりも大きいと判定された場合であっても、ボタン画像の重心となる座標に、現在の撮像領域の重心となる座標を重ねるための移動量を算出しても良い。
【００８０】
図１０は、実施の形態３に係る撮像領域の移動を説明する図である。なお、図１０では、撮像領域の面積がボタン画像の面積よりも小さい場合を例に挙げて説明する。図１０上段に示した例において、ボタン画像２の各頂点座標は、（１，９）、（１，１１）、（５，９）、（５，１１）である。同様に、撮像領域３の各頂点座標は、（８，５）、（８，７）、（１０，５）、（１０，７）である。投影画像１は、上記の各頂点座標を有するボタン画像２と撮像領域３とを含んでいる。
【００８１】
上述した状態において、移動情報算出部３２１ｅは、撮像領域３の各頂点座標から、現在の撮像領域３の重心となる座標（９，６）を算出する。図１０において、撮像領域３の重心となる座標は、黒四角で表している。また、移動情報算出部３２１ｅは、ボタン画像２の各頂点座標から、ボタン画像２の重心となる座標（３，１０）を算出する。図１０において、ボタン画像２の重心となる座標は、黒丸で表している。
【００８２】
そして、移動情報算出部３２１ｅは、現在の撮像領域３の重心となる座標（９，６）から、ボタン画像２の重心となる座標（３，１０）への移動量を算出する。かかる移動量の算出では、「ｘ方向＝３−９＝−６」、「ｙ方向＝１０−６＝＋４」となるので、現在の撮像領域３を、ｘ方向に「−６」移動させ、ｙ方向に「＋４」移動させる移動量「（−６，＋４）」が得られる。その後、撮像制御部１２１ｆは、現在の撮像領域３をｘ方向に「−６」移動させ、ｙ方向に「＋４」移動させるための移動量「（−６，＋４）」を撮像装置２０に対して送信する。これらにより、図１０下段に示すように、ボタン画像２の重心となる座標に、撮像領域３の重心となる座標が重なった移動結果が得られる。
【００８３】
［実施の形態３に係る移動量算出処理フロー］
次に、図１１を用いて、実施の形態３に係る移動量算出処理の流れについて説明する。図１１は、実施の形態３に係る移動量算出処理の流れの例を示すフローチャートである。なお、図１１は、図５に示した「ステップＳ１０３：Ｎｏ」の後の処理を表している。すなわち、図１１は、撮像領域にボタン画像が包含されていない場合における移動量算出処理の流れを表している。
【００８４】
図１１に示すように、面積判定部３２１ｇは、第１座標算出部１２１ｂによって算出された現在の撮像領域の各頂点座標から、現在の撮像領域の面積を算出するとともに、第２座標算出部１２１ｃによって算出されたボタン画像の各頂点座標から、ボタン画像の面積を算出する（ステップＳ３０１）。そして、面積判定部３２１ｇは、現在の撮像領域の面積がボタン画像の面積よりも大きいか否かを判定する（ステップＳ３０２）。
【００８５】
このとき、面積判定部３２１ｇによって撮像領域の面積がボタン画像の面積よりも小さいと判定された場合に（ステップＳ３０２：Ｎｏ）、移動情報算出部３２１ｅは、第１座標算出部１２１ｂによって算出された頂点座標から、現在の撮像領域の重心となる座標を算出する（ステップＳ３０３）。また、移動情報算出部３２１ｅは、第２座標算出部１２１ｃによって算出された頂点座標から、ボタン画像の重心となる座標を算出する（ステップＳ３０４）。
【００８６】
そして、移動情報算出部３２１ｅは、現在の撮像領域の重心となる座標から、ボタン画像の重心となる座標への移動量を算出する（ステップＳ３０５）。なお、面積判定部３２１ｇによって撮像領域の面積がボタン画像の面積よりも大きいと判定された場合に（ステップＳ３０２：Ｙｅｓ）、移動情報算出部３２１ｅは、実施の形態２と同様に、撮像領域とボタン画像との対応する頂点の座標間の距離が最小となる移動量を、移動情報として算出する（ステップＳ３０６）。
【００８７】
［実施の形態３による効果］
本実施の形態は、撮像領域の面積がボタン画像の面積よりも小さい場合に、撮像領域の重心となる座標から、ボタン画像の重心となる座標への移動量を、撮像領域の移動量として算出する。この結果、本実施の形態によれば、撮像領域の面積がボタン画像の面積よりも小さい場合であっても、ボタン画像の重心に撮像領域の重心を重ねることで、ユーザ操作の操作性を向上させることができる。
【００８８】
（実施の形態４）
上記実施の形態１では、投影画像にユーザ操作のためのオブジェクトが単数存在する場合の、撮像領域の移動量の算出について説明した。実施の形態４では、投影画像にユーザ操作のためのオブジェクトが複数存在する場合の、撮像領域の移動量の算出について説明する。
【００８９】
［実施の形態４に係る装置構成］
図１２を用いて、実施の形態４に係る装置構成を説明する。図１２は、実施の形態４に係る装置構成例を示す機能ブロック図である。実施の形態４では、実施の形態１と同様の構成については同一の符号を付し、同様の構成については詳細な説明を省略する場合がある。具体的には、以下に示す移動情報算出部４２１ｅ以外の機能及び構成、処理は実施の形態１と同様である。
【００９０】
本実施の形態に係る画像検出部１２１ａによる処理では、複数の撮像画像内において、操作対象画像と一致する一致画像を複数検出することにより、投影画像内に配置されたボタン画像を複数検出するものとする。また、本実施の形態に係る包含判定部１２１ｄによる処理では、現在の撮像領域がボタン画像全てを包含しているか否かが判定される。また、本実施の形態に係る第２座標算出部１２１ｃによる処理では、ボタン画像全ての頂点座標全てが算出される。
【００９１】
図１２に示すように、撮像装置２０は、撮像部２１を有する。また、投影装置３０は、投影部３１を有する。制御装置４００は、記憶部１１０と、制御部４２０とを有する。これらのうち、記憶部１１０は、撮像画像記憶部１１１を有する。制御部４２０は、画像検出部１２１ａと、第１座標算出部１２１ｂと、第２座標算出部１２１ｃと、包含判定部１２１ｄと、移動情報算出部４２１ｅと、撮像制御部１２１ｆとを有する。また、制御部４２０は、操作検出部１２２ａと、投影制御部１２２ｂとを有する。
【００９２】
移動情報算出部４２１ｅは、撮像領域を移動させるための移動情報を算出する。より具体的には、移動情報算出部４２１ｅは、画像検出部１２１ａによって複数のボタン画像が検出された旨を受け付けるとともに、包含判定部１２１ｄから判定結果を受け付ける。このとき、移動情報算出部４２１ｅは、現在の撮像領域がボタン画像全てを包含していないと判定された場合に、第１座標算出部１２１ｂによって算出された現在の撮像領域の各頂点座標から、現在の撮像領域の重心となる座標を算出する。
【００９３】
また、移動情報算出部４２１ｅは、現在の撮像領域がボタン画像全てを包含していないと判定された場合に、複数のボタン画像から任意のボタン画像を選択する。そして、移動情報算出部４２１ｅは、第２座標算出部１２１ｃによって算出されたボタン画像全ての各頂点座標から、選択した任意のボタン画像の重心となる座標を算出する。
【００９４】
続いて、移動情報算出部４２１ｅは、現在の撮像領域の重心となる座標から、選択した任意のボタン画像の重心となる座標への移動量を、移動情報として算出する。なお、移動情報算出部４２１ｅは、現在の撮像領域がボタン画像全てを包含していると判定された場合に、撮像領域を移動させなくてもユーザ操作を受け付けることが可能であるため、移動量を「０」とする移動情報を算出する。その後、移動情報算出部４２１ｅは、算出した移動量を撮像制御部１２１ｆに対して通知する。
【００９５】
図１３は、実施の形態４に係る撮像領域の移動を示す図である。図１３上段に示した例において、投影画像１は、ボタン画像２ａ、ボタン画像２ｂ、ボタン画像２ｃ及び撮像領域３を含んでいる。また、撮像領域３は、何れのボタン画像も包含していない。
【００９６】
上述した状態において、移動情報算出部４２１ｅは、第１座標算出部１２１ｂによって算出された現在の撮像領域３の各頂点座標から、現在の撮像領域３の重心となる座標を算出する。そして、移動情報算出部４２１ｅは、複数のボタン画像のうち、ボタン画像２ｃを選択する。そして、移動情報算出部４２１ｅは、第２座標算出部１２１ｃによって算出されたボタン画像２ｃの頂点座標から、ボタン画像２ｃの重心となる座標を算出する。続いて、移動情報算出部４２１ｅは、現在の撮像領域３の重心となる座標から、ボタン画像２ｃの重心となる座標への移動量を、移動情報として算出する。これらにより、図１３下段に示すように、ボタン画像２ｃの重心となる座標に、撮像領域３の重心となる座標が重なった移動結果が得られる。
【００９７】
［実施の形態４に係る移動量算出処理フロー］
次に、図１４を用いて、実施の形態４に係る移動量算出処理の流れについて説明する。図１４は、実施の形態４に係る移動量算出処理の流れの例を示すフローチャートである。
【００９８】
図１４に示すように、第１座標算出部１２１ｂは、現在の撮像領域の頂点座標を算出する（ステップＳ４０１）。また、第２座標算出部１２１ｃは、ボタン画像全ての頂点座標を算出する（ステップＳ４０２）。そして、包含判定部１２１ｄは、現在の撮像領域にボタン画像全てが包含されているか否かを判定する（ステップＳ４０３）。
【００９９】
このとき、包含判定部１２１ｄによって全てが包含されていないと判定された場合に（ステップＳ４０３：Ｎｏ）、移動情報算出部４２１ｅは、第１座標算出部１２１ｂによって算出された頂点座標から、現在の撮像領域の重心となる座標を算出する（ステップＳ４０４）。また、移動情報算出部４２１ｅは、複数のボタン画像から任意のボタン画像を選択し、第２座標算出部１２１ｃによって算出された頂点座標から、選択したボタン画像の重心となる座標を算出する（ステップＳ４０５）。
【０１００】
そして、移動情報算出部４２１ｅは、現在の撮像領域の重心となる座標から、選択したボタン画像の重心となる座標への移動量を算出する（ステップＳ４０６）。なお、包含判定部１２１ｄによって全てが包含されていると判定された場合に（ステップＳ４０３：Ｙｅｓ）、移動情報算出部４２１ｅは、現在の撮像領域を移動させなくても良いため、移動量を「０」とする（ステップＳ４０７）。
【０１０１】
［実施の形態４による効果］
本実施の形態は、撮像領域の重心となる座標から、複数のボタン画像のうち、選択した任意のボタン画像の重心となる座標への移動量を算出し、算出した移動量により撮像領域が選択したボタン画像に重なるように移動させる制御を撮像装置に対して行なう。この結果、本実施の形態によれば、投影装置に対するユーザ操作の検出精度を向上させることができる。
【０１０２】
（実施の形態５）
上記実施の形態４では、投影画像にユーザ操作のためのオブジェクトが複数存在するときに、任意のオブジェクトを選択し、選択した任意のオブジェクトの重心となる座標に、撮像領域の重心となる座標を重ねるための移動量を算出する場合を説明した。実施の形態５では、投影画像にユーザ操作のためのオブジェクトが複数存在するときに、撮像領域のより小さい移動量を算出する場合を説明する。
【０１０３】
［実施の形態５に係る装置構成］
図１５を用いて、実施の形態５に係る装置構成を説明する。図１５は、実施の形態５に係る装置構成例を示す機能ブロック図である。実施の形態５では、実施の形態１と同様の構成については同一の符号を付し、同様の構成については詳細な説明を省略する場合がある。具体的には、以下に示す移動情報算出部５２１ｅ以外の機能及び構成、処理は実施の形態１と同様である。
【０１０４】
本実施の形態に係る画像検出部１２１ａによる処理では、複数の撮像画像内において、操作対象画像と一致する一致画像を複数検出することにより、投影画像内に配置されたボタン画像を複数検出するものとする。また、本実施の形態に係る包含判定部１２１ｄによる処理では、現在の撮像領域がボタン画像全てを包含しているか否かが判定される。また、本実施の形態に係る第２座標算出部１２１ｃによる処理では、ボタン画像全ての頂点座標全てが算出される。
【０１０５】
図１５に示すように、撮像装置２０は、撮像部２１を有する。また、投影装置３０は、投影部３１を有する。制御装置５００は、記憶部１１０と、制御部５２０とを有する。これらのうち、記憶部１１０は、撮像画像記憶部１１１を有する。制御部５２０は、画像検出部１２１ａと、第１座標算出部１２１ｂと、第２座標算出部１２１ｃと、包含判定部１２１ｄと、移動情報算出部５２１ｅと、撮像制御部１２１ｆとを有する。また、制御部５２０は、操作検出部１２２ａと、投影制御部１２２ｂとを有する。
【０１０６】
移動情報算出部５２１ｅは、撮像領域を移動させるための移動情報を算出する。より具体的には、移動情報算出部５２１ｅは、画像検出部１２１ａによって複数のボタン画像が検出された旨を受け付けるとともに、包含判定部１２１ｄから判定結果を受け付ける。このとき、移動情報算出部５２１ｅは、現在の撮像領域がボタン画像全てを包含していないと判定された場合に、第１座標算出部１２１ｂによって算出された現在の撮像領域の各頂点座標から、現在の撮像領域の重心となる座標を算出する。また、移動情報算出部５２１ｅは、現在の撮像領域がボタン画像全てを包含していないと判定された場合に、第２座標算出部１２１ｃによって算出されたボタン画像全ての各頂点座標から、ボタン画像全てについて重心となる座標を算出する。
【０１０７】
そして、移動情報算出部５２１ｅは、現在の撮像領域の重心となる座標と、ボタン画像それぞれの重心となる座標との距離を算出する。続いて、移動情報算出部５２１ｅは、算出した距離のうち最小となる距離に対応する移動量を、移動情報として算出する。なお、移動情報算出部５２１ｅは、現在の撮像領域がボタン画像全てを包含していると判定された場合に、撮像領域を移動させなくてもユーザ操作を受け付けることが可能であるため、移動量を「０」とする移動情報を算出する。その後、移動情報算出部５２１ｅは、算出した移動量を撮像制御部１２１ｆに対して通知する。
【０１０８】
図１６は、実施の形態５に係る撮像領域の移動を示す図である。図１６上段に示した例において、投影画像１は、ボタン画像２ａ、ボタン画像２ｂ、ボタン画像２ｃ及び撮像領域３を含んでいる。また、撮像領域３は、何れのボタン画像も包含していない。
【０１０９】
上述した状態において、移動情報算出部５２１ｅは、第１座標算出部１２１ｂによって算出された現在の撮像領域３の各頂点座標から、現在の撮像領域３の重心となる座標を算出する。また、移動情報算出部５２１ｅは、第２座標算出部１２１ｃによって算出されたボタン画像２ａ、ボタン画像２ｂ及びボタン画像２ｃそれぞれの各頂点座標から、ボタン画像２ａ、ボタン画像２ｂ及びボタン画像２ｃそれぞれの重心となる座標を算出する。
【０１１０】
そして、移動情報算出部５２１ｅは、現在の撮像領域３の重心となる座標と、ボタン画像２ａ、ボタン画像２ｂ及びボタン画像２ｃそれぞれの重心となる座標との距離を算出する。続いて、移動情報算出部５２１ｅは、算出した距離を比較し、最小となる距離に対応する移動量を移動情報として算出する。これらにより、図１６下段に示すように、ボタン画像２ｂの重心となる座標に、撮像領域３の重心となる座標が重なった移動結果が得られる。
【０１１１】
［実施の形態５に係る移動量算出処理フロー］
次に、図１７を用いて、実施の形態５に係る移動量算出処理の流れについて説明する。図１７は、実施の形態５に係る移動量算出処理の流れの例を示すフローチャートである。なお、図１７は、図１４に示した「ステップＳ４０３：Ｎｏ」の後の処理を表している。すなわち、図１７は、撮像領域にボタン画像全てが包含されていない場合における移動量算出処理の流れを表している。
【０１１２】
図１７に示すように、移動情報算出部５２１ｅは、第１座標算出部１２１ｂによって算出された頂点座標から、現在の撮像領域の重心となる座標を算出する（ステップＳ５０１）。また、移動情報算出部５２１ｅは、第２座標算出部１２１ｃによって算出された各頂点座標から、ボタン画像それぞれの重心となる座標を算出する（ステップＳ５０２）。
【０１１３】
そして、移動情報算出部５２１ｅは、現在の撮像領域の重心となる座標と、ボタン画像それぞれの重心となる座標との距離を算出する（ステップＳ５０３）。続いて、移動情報算出部５２１ｅは、算出した距離を比較し、最小となる距離に対応する移動量を移動情報として算出する（ステップＳ５０４）。
【０１１４】
［実施の形態５による効果］
本実施の形態は、撮像領域の重心となる座標と、複数のボタン画像それぞれの重心となる座標との距離を求め、最小となる距離に対応する移動量を移動情報として算出する。この結果、本実施の形態によれば、撮像領域の移動に要する処理負荷や処理時間を抑制しつつ、投影装置に対するユーザ操作の検出精度を向上させることができる。
【０１１５】
（実施の形態６）
上記実施の形態４では、投影画像にユーザ操作のためのオブジェクトが複数存在するときに、任意のオブジェクトを選択し、選択した任意のオブジェクトの重心となる座標に、撮像領域の重心となる座標を重ねるための移動量を算出する場合を説明した。実施の形態６では、投影画像にユーザ操作のためのオブジェクトが複数存在するときに、オブジェクトの面積に応じて撮像領域の移動量を算出する場合を説明する。
【０１１６】
［実施の形態６に係る装置構成］
図１８を用いて、実施の形態６に係る装置構成を説明する。図１８は、実施の形態６に係る装置構成例を示す機能ブロック図である。実施の形態６では、実施の形態１と同様の構成については同一の符号を付し、同様の構成については詳細な説明を省略する場合がある。具体的には、以下に示す移動情報算出部６２１ｅ以外の機能及び構成、処理は実施の形態１と同様である。
【０１１７】
本実施の形態に係る画像検出部１２１ａによる処理では、複数の撮像画像内において、操作対象画像と一致する一致画像を複数検出することにより、投影画像内に配置されたボタン画像を複数検出するものとする。また、本実施の形態に係る包含判定部１２１ｄによる処理では、現在の撮像領域がボタン画像全てを包含しているか否かが判定される。また、本実施の形態に係る第２座標算出部１２１ｃによる処理では、ボタン画像全ての頂点座標全てが算出される。
【０１１８】
図１８に示すように、撮像装置２０は、撮像部２１を有する。また、投影装置３０は、投影部３１を有する。制御装置６００は、記憶部１１０と、制御部６２０とを有する。これらのうち、記憶部１１０は、撮像画像記憶部１１１を有する。制御部６２０は、画像検出部１２１ａと、第１座標算出部１２１ｂと、第２座標算出部１２１ｃと、包含判定部１２１ｄと、移動情報算出部６２１ｅと、撮像制御部１２１ｆとを有する。また、制御部６２０は、操作検出部１２２ａと、投影制御部１２２ｂとを有する。
【０１１９】
移動情報算出部６２１ｅは、撮像領域を移動させるための移動情報を算出する。より具体的には、移動情報算出部６２１ｅは、画像検出部１２１ａによって複数のボタン画像が検出された旨を受け付けるとともに、包含判定部１２１ｄから判定結果を受け付ける。このとき、移動情報算出部６２１ｅは、現在の撮像領域がボタン画像全てを包含していないと判定された場合に、第１座標算出部１２１ｂによって算出された現在の撮像領域の各頂点座標から、現在の撮像領域の重心となる座標を算出する。また、移動情報算出部６２１ｅは、現在の撮像領域がボタン画像全てを包含していないと判定された場合に、第２座標算出部１２１ｃによって算出されたボタン画像全ての各頂点座標から、ボタン画像全ての面積を算出する。
【０１２０】
そして、移動情報算出部６２１ｅは、算出したボタン画像全ての面積を比較し、面積が最大となるボタン画像を選択する。続いて、移動情報算出部６２１ｅは、選択したボタン画像の重心となる座標を算出する。その後、移動情報算出部６２１ｅは、現在の撮像領域の重心となる座標から、選択したボタン画像の重心となる座標への移動量を、移動情報として算出する。なお、移動情報算出部６２１ｅは、現在の撮像領域がボタン画像全てを包含していると判定された場合に、撮像領域を移動させなくてもユーザ操作を受け付けることが可能であるため、移動量を「０」とする移動情報を算出する。そして、移動情報算出部６２１ｅは、算出した移動量を撮像制御部１２１ｆに対して通知する。
【０１２１】
図１９は、実施の形態６に係る撮像領域の移動を示す図である。図１９上段に示した例において、投影画像１は、ボタン画像２ａ、ボタン画像２ｂ、ボタン画像２ｃ及び撮像領域３を含んでいる。また、撮像領域３は、何れのボタン画像も包含していない。
【０１２２】
上述した状態において、移動情報算出部６２１ｅは、第１座標算出部１２１ｂによって算出された現在の撮像領域３の各頂点座標から、現在の撮像領域３の重心となる座標を算出する。また、移動情報算出部６２１ｅは、第２座標算出部１２１ｃによって算出されたボタン画像２ａ、ボタン画像２ｂ及びボタン画像２ｃそれぞれの各頂点座標から、ボタン画像２ａ、ボタン画像２ｂ及びボタン画像２ｃそれぞれの面積を算出する。
【０１２３】
そして、移動情報算出部６２１ｅは、算出した面積が最大となるボタン画像２ｃを選択する。続いて、移動情報算出部６２１ｅは、選択したボタン画像２ｃの重心となる座標を算出する。その後、移動情報算出部６２１ｅは、現在の撮像領域３の重心となる座標から、ボタン画像２ｃの重心となる座標への移動量を、移動情報として算出する。これらにより、図１９下段に示すように、ボタン画像２ｃの重心となる座標に、撮像領域３の重心となる座標が重なった移動結果が得られる。
【０１２４】
なお、複数のボタン画像のうち、面積が最大となるボタン画像に移動させなくても良く、何れのボタン画像に移動させるかは、任意に変更可能である。
【０１２５】
［実施の形態６に係る移動量算出処理フロー］
次に、図２０を用いて、実施の形態６に係る移動量算出処理の流れについて説明する。図２０は、実施の形態６に係る移動量算出処理の流れの例を示すフローチャートである。なお、図２０は、図１４に示した「ステップＳ４０３：Ｎｏ」の後の処理を表している。すなわち、図２０は、撮像領域にボタン画像全てが包含されていない場合における移動量算出処理の流れを表している。
【０１２６】
図２０に示すように、移動情報算出部６２１ｅは、第２座標算出部１２１ｃによって算出された各頂点座標から、ボタン画像全ての面積を算出し、算出した面積が最大となるボタン画像を選択する（ステップＳ６０１）。そして、移動情報算出部６２１ｅは、第１座標算出部１２１ｂによって算出された各頂点座標から、現在の撮像領域の重心となる座標を算出する（ステップＳ６０２）。続いて、移動情報算出部６２１ｅは、選択したボタン画像の重心となる座標を算出する（ステップＳ６０３）。その後、移動情報算出部６２１ｅは、現在の撮像領域の重心となる座標から、選択したボタン画像の重心となる座標への移動量を算出する（ステップＳ６０４）。
【０１２７】
［実施の形態６による効果］
本実施の形態は、撮像領域の重心となる座標から、複数のボタン画像のうち、面積の大きさに応じて選択したボタン画像の重心となる座標への移動量を算出する。この結果、本実施の形態によれば、投影装置に対するユーザ操作の操作性及び検出精度を向上させることができる。換言すると、面積が最大となるボタン画像は投影画像内で頻繁に操作され得るものであることから、面積が最大となるボタン画像に撮像領域を重ねることで、ユーザ操作の操作性及び検出精度を向上させることができる。
【０１２８】
（実施の形態７）
上記実施の形態４では、投影画像にユーザ操作のためのオブジェクトが複数存在するときに、任意のオブジェクトを選択し、選択した任意のオブジェクトの重心となる座標に、撮像領域の重心となる座標を重ねるための移動量を算出する場合を説明した。実施の形態７では、投影画像にユーザ操作のためのオブジェクトが複数存在するときに、オブジェクトそれぞれに撮像領域を順次移動させるための移動量を算出する場合を説明する。
【０１２９】
［実施の形態７に係る装置構成］
図２１を用いて、実施の形態７に係る装置構成を説明する。図２１は、実施の形態７に係る装置構成例を示す機能ブロック図である。実施の形態７では、実施の形態１と同様の構成については同一の符号を付し、同様の構成については詳細な説明を省略する場合がある。具体的には、以下に示す移動情報算出部７２１ｅ以外の機能及び構成、処理は実施の形態１と同様である。
【０１３０】
本実施の形態に係る画像検出部１２１ａによる処理では、複数の撮像画像内において、操作対象画像と一致する一致画像を複数検出することにより、投影画像内に配置されたボタン画像を複数検出するものとする。また、本実施の形態に係る包含判定部１２１ｄによる処理では、現在の撮像領域がボタン画像全てを包含しているか否かが判定される。また、本実施の形態に係る第２座標算出部１２１ｃによる処理では、ボタン画像全ての頂点座標全てが算出される。
【０１３１】
図２１に示すように、撮像装置２０は、撮像部２１を有する。また、投影装置３０は、投影部３１を有する。制御装置７００は、記憶部１１０と、制御部７２０とを有する。これらのうち、記憶部１１０は、撮像画像記憶部１１１を有する。制御部７２０は、画像検出部１２１ａと、第１座標算出部１２１ｂと、第２座標算出部１２１ｃと、包含判定部１２１ｄと、移動情報算出部７２１ｅと、撮像制御部１２１ｆとを有する。また、制御部７２０は、操作検出部１２２ａと、投影制御部１２２ｂとを有する。
【０１３２】
移動情報算出部７２１ｅは、撮像領域を移動させるための移動情報を算出する。より具体的には、移動情報算出部７２１ｅは、画像検出部１２１ａによって複数のボタン画像が検出された旨を受け付けるとともに、包含判定部１２１ｄから判定結果を受け付ける。このとき、移動情報算出部７２１ｅは、現在の撮像領域がボタン画像全てを包含していないと判定された場合に、第１座標算出部１２１ｂによって算出された現在の撮像領域の各頂点座標から、現在の撮像領域の重心となる座標を算出する。
【０１３３】
また、移動情報算出部７２１ｅは、現在の撮像領域がボタン画像全てを包含していないと判定された場合に、複数のボタン画像から任意のボタン画像を選択する。そして、移動情報算出部７２１ｅは、第２座標算出部１２１ｃによって算出されたボタン画像全ての各頂点座標から、選択した任意のボタン画像の重心となる座標を算出する。
【０１３４】
続いて、移動情報算出部７２１ｅは、現在の撮像領域の重心となる座標から、選択した任意のボタン画像の重心となる座標への移動量を、移動情報として算出する。なお、移動情報算出部７２１ｅは、現在の撮像領域がボタン画像全てを包含していると判定された場合に、撮像領域を移動させなくてもユーザ操作を受け付けることが可能であるため、移動量を「０」とする移動情報を算出する。その後、移動情報算出部７２１ｅは、算出した移動量を撮像制御部１２１ｆに対して通知する。
【０１３５】
また、移動情報算出部７２１ｅは、移動量の通知後、ユーザ操作が行なわれずに所定時間が経過した場合に、他のボタン画像を選択する。ユーザ操作が行なわれたか否かについては、操作検出部１２２ａによってユーザ操作が検出されたか否かを判定すれば良い。つまり、ユーザ操作が行なわれた場合には、次の投影画像に切り替えられているため、次の投影画像に対する処理が開始されることになる。
【０１３６】
そして、移動情報算出部７２１ｅは、選択した他のボタン画像の重心となる座標を算出する。続いて、移動情報算出部７２１ｅは、現在の撮像領域の重心となる座標から、選択した他のボタン画像の重心となる座標への移動量を、移動情報として算出する。ここで、現在の撮像領域の重心となる座標は、任意のボタン画像の重心となる座標と同一の状態であるため、既に算出している任意のボタン画像の重心となる座標を、現在の撮像領域の重心となる座標として利用すれば良い。その後、移動情報算出部７２１ｅは、算出した移動量を撮像制御部１２１ｆに対して通知する。このように、移動情報算出部７２１ｅは、ユーザ操作が行なわれるまでの間、所定時間ごとに、ボタン画像を順次選択していき、順次選択したボタン画像に撮像領域を重ねるための移動量を算出していく。また、選択するボタン画像が一巡した場合には、任意のボタン画像を新たに選択しても良いが、一巡目で選択した順序で撮像領域を移動させるようにすれば、移動量を再度算出しなくても良いため、処理負荷を抑制することができる。
【０１３７】
図２２は、実施の形態７に係る撮像領域の移動を示す図である。図２２上段に示した例において、投影画像１は、ボタン画像２ａ、ボタン画像２ｂ、ボタン画像２ｃ及び撮像領域３を含んでいる。また、撮像領域３は、何れのボタン画像も包含していない。
【０１３８】
上述した状態において、移動情報算出部７２１ｅは、第１座標算出部１２１ｂによって算出された現在の撮像領域３の各頂点座標から、現在の撮像領域３の重心となる座標を算出する。また、移動情報算出部７２１ｅは、複数のボタン画像のうち、ボタン画像２ｃを選択する。そして、移動情報算出部７２１ｅは、第２座標算出部１２１ｃによって算出されたボタン画像２ｃの頂点座標から、ボタン画像２ｃの重心となる座標を算出する。続いて、移動情報算出部７２１ｅは、現在の撮像領域３の重心となる座標から、ボタン画像２ｃの重心となる座標への移動量を、移動情報として算出する。これらにより、図２２中段上方に示すように、ボタン画像２ｃの重心となる座標に、撮像領域３の重心となる座標が重なった移動結果が得られる。
【０１３９】
撮像領域３の移動後、移動情報算出部７２１ｅは、ユーザ操作が行なわれずに所定時間が経過した場合に、複数のボタン画像のうち、ボタン画像２ａを選択する。そして、移動情報算出部７２１ｅは、第２座標算出部１２１ｃによって算出されたボタン画像２ａの頂点座標から、ボタン画像２ａの重心となる座標を算出する。続いて、移動情報算出部７２１ｅは、ボタン画像２ｃの重心となる座標と同一となっている現在の撮像領域３の重心となる座標から、ボタン画像２ａの重心となる座標への移動量を、移動情報として算出する。これらにより、図２２中段下方に示すように、ボタン画像２ａの重心となる座標に、撮像領域３の重心となる座標が重なった移動結果が得られる。
【０１４０】
撮像領域３の移動後、移動情報算出部７２１ｅは、ユーザ操作が行なわれずに所定時間が経過した場合に、複数のボタン画像のうち、ボタン画像２ｂを選択する。そして、移動情報算出部７２１ｅは、第２座標算出部１２１ｃによって算出されたボタン画像２ｂの頂点座標から、ボタン画像２ｂの重心となる座標を算出する。続いて、移動情報算出部７２１ｅは、ボタン画像２ａの重心となる座標と同一となっている現在の撮像領域３の重心となる座標から、ボタン画像２ｂの重心となる座標への移動量を、移動情報として算出する。これらにより、図２２下段に示すように、ボタン画像２ｂの重心となる座標に、撮像領域３の重心となる座標が重なった移動結果が得られる。
【０１４１】
このように、ユーザ操作が行なわれなければ、所定時間の経過ごとに、ボタン画像を順次選択していき、撮像領域を移動させる処理を実行する。また、上記のように、ボタン画像の選択が一巡するまでは、一度選択したボタン画像を選択しないようにすることが好ましい。
【０１４２】
［実施の形態７に係る移動量算出処理フロー］
次に、図２３を用いて、実施の形態７に係る移動量算出処理の流れについて説明する。図２３は、実施の形態７に係る移動量算出処理の流れの例を示すフローチャートである。なお、図２３は、図１４に示した「ステップＳ４０３：Ｎｏ」の後の処理を表している。すなわち、図２３は、撮像領域にボタン画像全てが包含されていない場合における移動量算出処理の流れを表している。
【０１４３】
図２３に示すように、移動情報算出部７２１ｅは、第１座標算出部１２１ｂによって算出された頂点座標から、現在の撮像領域の重心となる座標を算出する（ステップＳ７０１）。また、移動情報算出部７２１ｅは、複数のボタン画像から任意のボタン画像を選択し、第２座標算出部１２１ｃによって算出された頂点座標から、選択したボタン画像の重心となる座標を算出する（ステップＳ７０２）。
【０１４４】
そして、移動情報算出部７２１ｅは、現在の撮像領域の重心となる座標から、選択したボタン画像の重心となる座標への移動量を算出する（ステップＳ７０３）。その後、移動情報算出部７２１ｅは、所定時間が経過したか否かを判定する（ステップＳ７０４）。このとき、移動情報算出部７２１ｅは、所定時間が経過したと判定した場合に（ステップＳ７０４：Ｙｅｓ）、操作検出部１２２ａによるユーザ操作の検出をもとに、ユーザ操作が行なわれたか否かを判定する（ステップＳ７０５）。一方、移動情報算出部７２１ｅは、所定時間が経過していないと判定した場合に（ステップＳ７０４：Ｎｏ）、所定時間が経過するまで待機する。
【０１４５】
また、移動情報算出部７２１ｅは、ユーザ操作が行なわれていないと判定した場合に（ステップＳ７０５：Ｎｏ）、再度ステップＳ７０１の処理を実行する。但し、ステップＳ７０１における処理では、２回目以降に撮像領域の移動量を算出する場合、現在の撮像領域と重なっているボタン画像の重心となる座標を利用する。また、ステップＳ７０２における処理では、選択するボタン画像が一巡した場合、重心を再度算出しなくても良い。一方、移動情報算出部７２１ｅは、ユーザ操作が行なわれたと判定した場合に（ステップＳ７０５：Ｙｅｓ）、移動量算出処理を終了する。
【０１４６】
［実施の形態７による効果］
本実施の形態は、撮像領域の重心となる座標から、順次選択したボタン画像の重心となる座標への移動量を算出する。この結果、本実施の形態によれば、投影装置に対するユーザ操作の検出精度を向上させることができる。
【０１４７】
（実施の形態７の変形例）
上記実施の形態７では、投影画像にユーザ操作のためのオブジェクトが複数存在するときに、オブジェクトそれぞれに撮像領域を順次移動させるための移動量を算出する場合を説明した。実施の形態７の変形例では、投影画像にユーザ操作のためのオブジェクトが複数存在するときに、オブジェクトの優先順位にしたがって、撮像領域を順次移動させるための移動量を算出する場合を説明する。なお、実施の形態７の変形例では、図２１に示した実施の形態７に係る装置構成の機能ブロックを用いて説明する。
【０１４８】
図２４は、実施の形態７の変形例に係る撮像領域の移動を示す図である。図２４上段に示した例において、投影画像１は、ボタン画像２ａ、ボタン画像２ｂ、ボタン画像２ｃ及び撮像領域３を含んでいる。また、撮像領域３は、何れのボタン画像も包含していない。また、図２４上段に示した円形で囲まれた数字は、各ボタン画像の優先順位を表している。図２４の例において、優先順位は、ボタン画像２ｃ、ボタン画像２ｂ、ボタン画像２ａの順に高い。
【０１４９】
上述した状態において、移動情報算出部７２１ｅは、第１座標算出部１２１ｂによって算出された現在の撮像領域３の各頂点座標から、現在の撮像領域３の重心となる座標を算出する。また、移動情報算出部７２１ｅは、撮像領域３を移動させる、オブジェクトの優先順位の情報を取得する。かかる優先順位の情報は、記憶部１１０に記憶されていても良いし、外部の記憶装置やサーバ装置等から取得されても良い。また、優先順位の情報は、操作対象画像（オブジェクトに対応）と優先順位とが対応付けられている。これにより、画像検出部１２１ａによって検出された一致画像（オブジェクトに対応）の優先順位を認識できるため、投影画像１内に配置されたオブジェクトの優先順位も認識できる。
【０１５０】
そして、移動情報算出部７２１ｅは、取得した優先順位にしたがって、複数のボタン画像のうち、ボタン画像２ｃを選択する。続いて、移動情報算出部７２１ｅは、第２座標算出部１２１ｃによって算出されたボタン画像２ｃの頂点座標から、ボタン画像２ｃの重心となる座標を算出する。その後、移動情報算出部７２１ｅは、現在の撮像領域３の重心となる座標から、ボタン画像２ｃの重心となる座標への移動量を、移動情報として算出する。これらにより、図２４中段上方示すように、ボタン画像２ｃの重心となる座標に、撮像領域３の重心となる座標が重なった移動結果が得られる。
【０１５１】
撮像領域３の移動後、移動情報算出部７２１ｅは、ユーザ操作が行なわれずに所定時間が経過した場合に、複数のボタン画像のうち、ボタン画像２ｃの次に優先順位の高いボタン画像２ｂを選択する。そして、移動情報算出部７２１ｅは、第２座標算出部１２１ｃによって算出されたボタン画像２ｂの頂点座標から、ボタン画像２ｂの重心となる座標を算出する。続いて、移動情報算出部７２１ｅは、ボタン画像２ｃの重心となる座標と同一となっている現在の撮像領域３の重心となる座標から、ボタン画像２ｂの重心となる座標への移動量を、移動情報として算出する。これらにより、図２４中段下方に示すように、ボタン画像２ｂの重心となる座標に、撮像領域３の重心となる座標が重なった移動結果が得られる。
【０１５２】
撮像領域３の移動後、移動情報算出部７２１ｅは、ユーザ操作が行なわれずに所定時間が経過した場合に、複数のボタン画像のうち、ボタン画像２ｂの次に優先順位の高いボタン画像２ａを選択する。そして、移動情報算出部７２１ｅは、第２座標算出部１２１ｃによって算出されたボタン画像２ａの頂点座標から、ボタン画像２ａの重心となる座標を算出する。続いて、移動情報算出部７２１ｅは、ボタン画像２ｂの重心となる座標と同一となっている現在の撮像領域３の重心となる座標から、ボタン画像２ａの重心となる座標への移動量を、移動情報として算出する。これらにより、図２４下段に示すように、ボタン画像２ａの重心となる座標に、撮像領域３の重心となる座標が重なった移動結果が得られる。
【０１５３】
このように、ユーザ操作が行なわれなければ、所定時間の経過ごとに、優先順位にしたがってボタン画像を選択していき、撮像領域を移動させる処理を実行する。優先順位は、ユーザ操作が行なわれる頻度の高いオブジェクトに対して高く設定すれば良い。これにより、ユーザ操作が行なわれる頻度の高いオブジェクトが、撮像領域の最初の移動対象となるので、投影画像の切り替えも迅速に行なわれることになる。
【０１５４】
［実施の形態７の変形例に係る移動量算出処理フロー］
次に、図２５を用いて、実施の形態７の変形例に係る移動量算出処理の流れについて説明する。図２５は、実施の形態７の変形例に係る移動量算出処理の流れの例を示すフローチャートである。なお、図２５は、図１４に示した「ステップＳ４０３：Ｎｏ」の後の処理を表している。すなわち、図２５は、撮像領域にボタン画像全てが包含されていない場合における移動量算出処理の流れを表している。
【０１５５】
図２５に示すように、移動情報算出部７２１ｅは、第１座標算出部１２１ｂによって算出された頂点座標から、現在の撮像領域の重心となる座標を算出する（ステップＳ８０１）。また、移動情報算出部７２１ｅは、オブジェクトの優先順位を取得し、取得した優先順位にしたがってボタン画像を選択して、第２座標算出部１２１ｃによって算出された頂点座標から、選択したボタン画像の重心となる座標を算出する（ステップＳ８０２）。
【０１５６】
そして、移動情報算出部７２１ｅは、現在の撮像領域の重心となる座標から、選択したボタン画像の重心となる座標への移動量を算出する（ステップＳ８０３）。その後、移動情報算出部７２１ｅは、所定時間が経過したか否かを判定する（ステップＳ８０４）。このとき、移動情報算出部７２１ｅは、所定時間が経過したと判定した場合に（ステップＳ８０４：Ｙｅｓ）、操作検出部１２２ａによるユーザ操作の検出をもとに、ユーザ操作が行なわれたか否かを判定する（ステップＳ８０５）。一方、移動情報算出部７２１ｅは、所定時間が経過していないと判定した場合に（ステップＳ８０４：Ｎｏ）、所定時間が経過するまで待機する。
【０１５７】
また、移動情報算出部７２１ｅは、ユーザ操作が行なわれていないと判定した場合に（ステップＳ８０５：Ｎｏ）、再度ステップＳ８０１の処理を実行する。但し、ステップＳ８０１における処理では、２回目以降に撮像領域の移動量を算出する場合、現在の撮像領域と重なっているボタン画像の重心となる座標を利用する。また、ステップＳ８０２における処理では、選択するボタン画像が一巡した場合、重心を再度算出しなくても良い。一方、移動情報算出部７２１ｅは、ユーザ操作が行なわれたと判定した場合に（ステップＳ８０５：Ｙｅｓ）、移動量算出処理を終了する。
【０１５８】
［実施の形態７の変形例による効果］
本実施の形態は、撮像領域の重心となる座標から、優先順位にしたがって順次選択したボタン画像の重心となる座標への移動量を算出する。この結果、本実施の形態によれば、ユーザニーズのより高いオブジェクトを優先して操作可能にすることができるので、投影装置に対するユーザ操作の操作性を向上させることができる。
【０１５９】
（実施の形態８）
上記実施の形態４〜７では、投影画像にユーザ操作のためのオブジェクトが複数存在する場合の、撮像領域の移動量の算出について種々説明した。実施の形態８では、撮像領域の移動量の算出を、種々の中から設定する場合を説明する。
【０１６０】
［実施の形態８に係る装置構成］
図２６を用いて、実施の形態８に係る装置構成を説明する。図２６は、実施の形態８に係る装置構成例を示す機能ブロック図である。実施の形態８では、実施の形態１と同様の構成については同一の符号を付し、同様の構成については詳細な説明を省略する場合がある。具体的には、以下に示す移動設定情報記憶部８１２、移動情報算出部８２１ｅ、移動設定部８２１ｈ以外の機能及び構成、処理は実施の形態１と同様である。
【０１６１】
本実施の形態に係る画像検出部１２１ａによる処理では、複数の撮像画像内において、操作対象画像と一致する一致画像を複数検出することにより、投影画像内に配置されたボタン画像を複数検出するものとする。また、本実施の形態に係る包含判定部１２１ｄによる処理では、現在の撮像領域がボタン画像全てを包含しているか否かが判定される。また、本実施の形態に係る第２座標算出部１２１ｃによる処理では、ボタン画像全ての頂点座標全てが算出される。
【０１６２】
図２６に示すように、撮像装置２０は、撮像部２１を有する。また、投影装置３０は、投影部３１を有する。制御装置８００は、記憶部８１０と、制御部８２０とを有する。これらのうち、記憶部８１０は、撮像画像記憶部１１１と、移動設定情報記憶部８１２とを有する。
【０１６３】
移動設定情報記憶部８１２は、撮像領域の移動に関する設定事項を表す移動設定情報を記憶する。より具体的には、移動設定情報記憶部８１２は、撮像領域に最も近いボタン画像に撮像領域を移動させる移動設定情報、最も大きいボタン画像に撮像領域を移動させる移動設定情報、撮像領域を任意のボタン画像に順次移動させる移動設定情報、又は、優先順位にしたがって選択されたボタン画像に撮像領域を移動させる移動設定情報を記憶する。すなわち、本実施の形態では、上記何れかの移動設定情報が移動設定情報記憶部８１２に記憶されており、移動設定情報に対応する移動量算出処理を実行する。また、移動設定情報が移動設定情報記憶部８１２に記憶されていなければ、任意のボタン画像に撮像領域を移動させるための移動量算出処理が実行される。各移動設定情報に対応する移動量算出処理は、上記実施の形態５〜７で説明したものである。また、任意のボタン画像に撮像領域を移動させるための移動量算出処理は、上記実施の形態４で説明したものである。
【０１６４】
制御部８２０は、画像検出部１２１ａと、第１座標算出部１２１ｂと、第２座標算出部１２１ｃと、包含判定部１２１ｄと、移動情報算出部８２１ｅと、撮像制御部１２１ｆと、移動設定部８２１ｈとを有する。また、制御部８２０は、操作検出部１２２ａと、投影制御部１２２ｂとを有する。
【０１６５】
移動設定部８２１ｈは、撮像領域の移動に関する設定事項を設定する。より具体的には、移動設定部８２１ｈは、撮像領域の移動について、撮像領域に最も近いボタン画像に撮像領域を移動させる、最も大きいボタン画像に撮像領域を移動させる、撮像領域を任意のボタン画像に順次移動させる、又は、優先順位にしたがって選択されたボタン画像に撮像領域を移動させる、等の移動設定情報を受け付ける。ユーザは、制御装置８００にネットワークを介して接続された端末等から、事前に設定を行なう。そして、移動設定部８２１ｈは、受け付けた移動設定情報を移動設定情報記憶部８１２に格納する。
【０１６６】
移動情報算出部８２１ｅは、移動設定情報に応じて、撮像領域を移動させるための移動情報を算出する。より具体的には、移動情報算出部８２１ｅは、移動設定情報記憶部８１２から移動設定情報を取得する。そして、移動情報算出部８２１ｅは、取得した移動設定情報に応じて、撮像領域に最も近いボタン画像に撮像領域を移動させるための移動量、最も大きいボタン画像に撮像領域を移動させるための移動量、撮像領域を任意のボタン画像に順次移動させるための移動量、又は、優先順位にしたがって選択されたボタン画像に撮像領域を移動させるための移動量を、適宜算出する。各移動量の算出については、実施の形態５〜７と同様である。また、移動設定情報が移動設定情報記憶部８１２に存在しない場合には、実施の形態４と同様に、任意のボタン画像に撮像領域を移動させるための移動量が算出される。
【０１６７】
［実施の形態８に係る移動量算出処理フロー］
次に、図２７を用いて、実施の形態８に係る移動量算出処理の流れについて説明する。図２７は、実施の形態８に係る移動量算出処理の流れの例を示すフローチャートである。なお、図２７は、図１４に示した「ステップＳ４０３：Ｎｏ」の後の処理を表している。すなわち、図２７は、撮像領域にボタン画像全てが包含されていない場合における移動量の算出処理の流れを表している。
【０１６８】
図２７に示すように、移動情報算出部８２１ｅは、移動設定情報記憶部８１２に移動設定情報が存在するか否かを判定する（ステップＳ９０１）。このとき、移動情報算出部８２１ｅは、移動設定情報が存在しないと判定した場合に（ステップＳ９０１：Ｎｏ）、任意のボタン画像を選択し、現在の撮像領域の重心となる座標から、選択した任意のボタン画像の重心となる座標への移動量を算出する（ステップＳ９０２）。
【０１６９】
一方、移動情報算出部８２１ｅは、移動設定情報が存在すると判定した場合に（ステップＳ９０１：Ｙｅｓ）、撮像領域に最も近いボタン画像に撮像領域を移動させる移動設定情報であるか否かを判定する（ステップＳ９０３）。このとき、移動情報算出部８２１ｅは、撮像領域に最も近いボタン画像に撮像領域を移動させる移動設定情報であると判定した場合に（ステップＳ９０３：Ｙｅｓ）、該移動設定情報に応じた移動量算出処理を実行し、移動量を算出する（ステップＳ９０４）。
【０１７０】
一方、移動情報算出部８２１ｅは、撮像領域に最も近いボタン画像に撮像領域を移動させる移動設定情報でないと判定した場合に（ステップＳ９０３：Ｎｏ）、最も大きいボタン画像に撮像領域を移動させる移動設定情報であるか否かを判定する（ステップＳ９０５）。このとき、移動情報算出部８２１ｅは、最も大きいボタン画像に撮像領域を移動させる移動設定情報であると判定した場合に（ステップＳ９０５：Ｙｅｓ）、該移動設定情報に応じた移動量算出処理を実行し、移動量を算出する（ステップＳ９０６）。
【０１７１】
一方、移動情報算出部８２１ｅは、最も大きいボタン画像に撮像領域を移動させる移動設定情報でないと判定した場合に（ステップＳ９０５：Ｎｏ）、撮像領域を任意のボタン画像に順次移動させる移動設定情報であるか否かを判定する（ステップＳ９０７）。このとき、移動情報算出部８２１ｅは、撮像領域を任意のボタン画像に順次移動させる移動設定情報であると判定した場合に（ステップＳ９０７：Ｙｅｓ）、該移動設定情報に応じた移動量算出処理を実行し、移動量を算出する（ステップＳ９０８）。
【０１７２】
一方、移動情報算出部８２１ｅは、撮像領域を任意のボタン画像に順次移動させる移動設定情報でないと判定した場合に（ステップＳ９０７：Ｎｏ）、優先順位にしたがって選択されたボタン画像に撮像領域を移動させる移動設定情報であるから、該移動設定情報に応じた移動量算出処理を実行し、移動量を算出する（ステップＳ９０９）。
【０１７３】
［実施の形態８による効果］
本実施の形態は、撮像領域の移動量算出処理を、何れの処理で実行すれば良いかがわかる移動設定情報にしたがって実行する。この結果、本実施の形態によれば、ユーザの所望する移動量算出処理が実行されるので、投影装置に対するユーザ操作の操作性を向上させることができる。
【０１７４】
（実施の形態９）
さて、これまで本発明に係る投影システム１０の実施の形態について説明したが、上述した実施の形態以外にも種々の異なる形態にて実施されて良いものである。そこで、（１）撮像領域のフィードバック、（２）オブジェクトのフィードバック、（３）撮像領域やオブジェクトの形、（４）構成、（５）プログラム、について異なる実施の形態を説明する。
【０１７５】
（１）撮像領域のフィードバック
上記実施の形態では、撮像領域の面積がボタン画像の面積よりも小さい場合に、ユーザ操作を容易にするために、ボタン画像の重心となる座標に、撮像領域の重心となる座標を重ねるための移動量を算出する場合を説明した。本実施の形態では、ユーザ操作を容易にするために、撮像領域をフィードバックしても良い。
【０１７６】
図２８は、撮像領域のフィードバックの例を示す図である。図２８に示した例において、投影画像１は、ボタン画像２と、撮像領域３とを含んでいる。また、図２８に示した例は、撮像領域３を移動させたときの状態を表している。図２８に示すように、撮像領域３を移動させたときに、該撮像領域３は、ユーザ操作の検出が可能な範囲をユーザに認識させるために、太枠等で表示される。このような投影画像１は、投影制御部１２２ｂによって生成される。
【０１７７】
上述してきた実施の形態では、撮像領域をユーザに意識させずにユーザ操作の検出精度を向上させていた。但し、撮像領域の面積がボタン画像の面積よりも小さい場合には、ボタン画像の領域全てでユーザ操作を検出することができない。このため、本実施の形態では、撮像領域を表示させた投影画像を生成することで、撮像領域をユーザに意識させユーザ操作の検出精度を向上させる。なお、撮像領域の表示は、枠を表示させるだけでなく、撮像領域を点滅させる等、現在の撮像領域をユーザに認識させることが可能であれば、どのような手法を採用しても良い。
【０１７８】
（２）オブジェクトのフィードバック
上記実施の形態では、投影画像にユーザ操作のためのオブジェクトが複数存在する場合の、撮像領域の移動量の算出について説明した。本実施の形態では、ユーザ操作を容易にするために、オブジェクトをフィードバックしても良い。
【０１７９】
図２９は、オブジェクトのフィードバックの例を示す図である。図２９に示した例において、投影画像１は、ボタン画像２ａと、ボタン画像２ｂと、ボタン画像２ｃと、撮像領域３とを含んでいる。また、図２９に示した例は、撮像領域３を移動させたときの状態を表している。図２９に示すように、撮像領域３を移動させたときに、該撮像領域３に含まれるボタン画像２ｃは、他のボタン画像とは異なる色に変化させる等、所定の表示に変化させる。このような投影画像１は、投影制御部１２２ｂによって生成される。
【０１８０】
上述してきた実施の形態では、現在の撮像領域をユーザに意識させずにユーザ操作の操作性を向上させていた。但し、投影画像内に複数のオブジェクトが存在する場合には、何れのオブジェクトが操作可能なオブジェクトであるかをユーザが認識することが困難である。このため、本実施の形態では、現在の撮像領域に含まれるオブジェクトの色を変化させた投影画像を生成することで、操作可能なオブジェクトをユーザに認識させユーザ操作の操作性を向上させる。なお、オブジェクトの表示の変化は、色を変化させるだけでなく、オブジェクトを点滅させたり透過させたりする等、現在の操作可能なオブジェクトをユーザに認識させることが可能であれば、どのような手法を採用しても良い。また、現在の撮像領域に含まれるオブジェクトとは、オブジェクトの配置や撮像領域の大きさによっては複数のオブジェクトが含まれる可能性もあるため、詳細には、撮像領域の移動先となっているオブジェクトである。
【０１８１】
（３）撮像領域やオブジェクトの形
上記実施の形態では、投影画像や撮像領域、オブジェクト等の形を方形であることとして説明した。本実施の形態では、これらが方形でなくても良い。例えば、投影画像や撮像領域、オブジェクト等が円形であれば、該円形を含む最小の方形を採用する。つまり、投影画像や撮像領域、オブジェクト等を含む最小の方形を利用して、上述してきた移動量算出処理を実行すれば良い。但し、撮像領域については、方形ではない撮像領域を含む最小の方形を採用すると、撮像領域自体が大きくなりすぎる可能性もあり、実際にはユーザ操作を検出できない領域まで含むことになるため、撮像領域に含まれる最大の方形を採用しても良い。また、オブジェクトは、ボタン画像だけでなく、コンボボックスやグループボックス等、他のオブジェクトであっても良い。
【０１８２】
（４）構成
また、上記文書中や図面中等で示した処理手順、制御手順、具体的名称、各種のデータやパラメタ等を含む情報は、特記する場合を除いて任意に変更することができる。また、図示した各装置の各構成要素は、機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散又は統合の具体的形態は、図示のものに限られず、その全部又は一部を各種の負担や使用状況等に応じて、任意の単位で機能的又は物理的に、分散又は統合することができる。
【０１８３】
上記実施の形態では、撮像装置２０、投影装置３０及び制御装置１００を有する投影システム１０として説明したが、これらの装置は、任意の単位で機能的又は物理的に、分散又は統合することができる。例えば、撮像装置２０、投影装置３０及び制御装置１００を一体型の装置として実現しても良いし、制御装置１００及び投影装置３０のみを一体型の装置として実現しても良く、これらの組み合わせは変更可能である。また、制御装置１００は、ネットワークに接続されたサーバ装置上に配置しても良い。
【０１８４】
また、上記実施の形態では、複数のオブジェクトが存在する場合に、現在の撮像領域にボタン画像全てが包含されているか否かを判定し、ボタン画像全てが包含されていなければ、撮像領域の移動量を算出することとして説明した。本実施の形態では、ボタン画像全てが包含されていなくても、撮像領域の移動量を「０」としても良い。例えば、撮像領域に含まれるボタン画像の数や、ボタン画像全ての数に対する撮像領域に含まれるボタン画像の数の割合等が一定以上であれば、撮像領域の移動量を「０」としても良い。また、上述したように、各実施の形態は、内容を矛盾させない範囲で適宜組み合わせることが可能である。
【０１８５】
（５）プログラム
また、制御装置１００で実行される制御プログラムは、一つの様態として、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。また、制御装置１００で実行される制御プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、制御装置１００で実行される制御プログラムをインターネット等のネットワーク経由で提供又は配布するように構成しても良い。また、制御プログラムを、ＲＯＭ等に予め組み込んで提供するように構成しても良い。
【０１８６】
制御装置１００で実行される制御プログラムは、上述した各部（画像検出部１２１ａ、第１座標算出部１２１ｂ、第２座標算出部１２１ｃ、包含判定部１２１ｄ、移動情報算出部１２１ｅ、撮像制御部１２１ｆ、操作検出部１２２ａ、投影制御部１２２ｂ）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が記憶媒体から制御プログラムを読み出して実行することにより、上記各部が主記憶装置上にロードされ、画像検出部１２１ａ、第１座標算出部１２１ｂ、第２座標算出部１２１ｃ、包含判定部１２１ｄ、移動情報算出部１２１ｅ、撮像制御部１２１ｆ、操作検出部１２２ａ、投影制御部１２２ｂが主記憶装置上に生成されるようになっている。
【符号の説明】
【０１８７】
１０  投影システム
２０  撮像装置
２１  撮像部
３０  投影装置
３１  投影部
１００  制御装置
１１０  記憶部
１１１  撮像画像記憶部
１２０  制御部
１２１ａ  画像検出部
１２１ｂ  第１座標算出部
１２１ｃ  第２座標算出部
１２１ｄ  包含判定部
１２１ｅ  移動情報算出部
１２１ｆ  撮像制御部
１２２ａ  操作検出部
１２２ｂ  投影制御部
【先行技術文献】
【特許文献】
【０１８８】
【特許文献１】特許第４７１０７３４号公報
【特許文献２】特開２００５−３３９２６９号公報
【図１】
2014153769.tif 000003
【図２】
2014153769.tif 000004
【図３】
2014153769.tif 000005
【図４】
2014153769.tif 000006
【図５】
2014153769.tif 000007
【図６】
2014153769.tif 000008
【図７】
2014153769.tif 000009
【図８】
2014153769.tif 000010
【図９】
2014153769.tif 000011
【図１０】
2014153769.tif 000012
【図１１】
2014153769.tif 000013
【図１２】
2014153769.tif 000014
【図１３】
2014153769.tif 000015
【図１４】
2014153769.tif 000016
【図１５】
2014153769.tif 000017
【図１６】
2014153769.tif 000018
【図１７】
2014153769.tif 000019
【図１８】
2014153769.tif 000020
【図１９】
2014153769.tif 000021
【図２０】
2014153769.tif 000022
【図２１】
2014153769.tif 000023
【図２２】
2014153769.tif 000024
【図２３】
2014153769.tif 000025
【図２４】
2014153769.tif 000026
【図２５】
2014153769.tif 000027
【図２６】
2014153769.tif 000028
【図２７】
2014153769.tif 000029
【図２８】
2014153769.tif 000030
【図２９】
2014153769.tif 000031