(57)【要約】  マーカ（３０２０）は、ユーザの身体の任意の部分であるか、又はユーザに身に付けられる任意の印である。センサ（３０４０）はユーザに身に付けられる。操作領域算出部（２０２０）は、カメラによって生成された撮像画像に写っているマーカ（３０２０）の位置に基づいて、撮像画像に含まれる操作領域を算出する。認識部（２０４０）は、操作領域内に写っている操作体の位置又は動きを算出し、算出した操作体の位置又は動きに基づいて入力操作を認識する。なお、認識部（２０４０）は、センサ（３０４０）の検出結果に基づくタイミングにおいて操作領域内に写っている操作体の位置を算出する。また、認識部（２０４０）は、センサ（３０４０）の検出結果に基づくタイミングを含む時間において操作領域内に写っている操作体の動きを算出する。
2017138545.tif 000002
【特許請求の範囲】
【請求項１】
ユーザに身につけられるか、又はユーザの身体の一部であるマーカと、
ユーザに身に付けられるセンサと、
情報処理装置と、を有し、
前記情報処理装置は、
カメラによって生成された撮像画像に写っている前記マーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出手段と、
前記センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識手段と、
を有する情報処理システム。
【請求項２】
前記マーカは前記ユーザの腕部に身につけられ、
前記操作体は、前記腕部の一部であるか、又は前記腕部によって保持される物体である、
請求項１に記載の情報処理システム。
【請求項３】
前記マーカは前記腕部に含まれる手首に身につけられ、
前記操作領域算出手段は、前記マーカの位置から前記腕部に含まれる手のひらの方向へ所定距離離れた位置を含むように、前記操作領域を算出する、
請求項２に記載の情報処理システム。
【請求項４】
前記マーカは、前記ユーザに身につけられているデバイスのディスプレイ装置に表示される画像であり、
前記センサは前記デバイスに設けられている、
請求項１乃至３いずれか一項に記載の情報処理システム。
【請求項５】
当該情報処理システムは、画面を出力する出力装置を有し、
前記情報処理装置は、前記認識手段によって認識される入力操作の操作対象を含む画面を前記出力装置に出力させる出力制御手段を有する、請求項１乃至４いずれか一項に記載の情報処理システム。
【請求項６】
前記出力装置は、乗り物の窓の一部と重なる領域へ前記画面を出力するようにその乗り物に設置される、請求項５に記載の情報処理システム。
【請求項７】
前記出力制御手段が前記出力装置に出力させる前記画面は、前記乗り物に搭載されているデバイスを操作するための操作画面である、請求項６に記載の情報処理システム。
【請求項８】
カメラによって生成された撮像画像に写っているマーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出手段と、
センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識手段と、を有し、
前記マーカは、ユーザに身につけられるか、又はユーザの身体の一部であり、
前記センサは、ユーザに身に付けられる、情報処理装置。
【請求項９】
コンピュータによって実行される制御方法であって、
カメラによって生成された撮像画像に写っているマーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出ステップと、
センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識ステップと、
を有し、
前記マーカは、ユーザに身につけられるか、又はユーザの身体の一部であり、
前記センサは、ユーザに身に付けられる、制御方法。
【請求項１０】
カメラによって生成された撮像画像に写っているマーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出ステップと、
センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識ステップと、をコンピュータに実行させ、
前記マーカは、ユーザに身につけられるか、又はユーザの身体の一部であり、
前記センサは、ユーザに身に付けられる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理装置、制御方法、及びプログラムに関する。
【背景技術】
【０００２】
ジェスチャ入力等、ユーザが空間上で行った動作をカメラで撮像し、生成された撮像画像を解析することで、情報処理装置に対するユーザの入力操作を認識する技術が開発されている。特許文献１は、ユーザの手のひらのジェスチャ（例えば手のひらを開くジェスチャ）に応じて、その手のひらにメニュー画面を表示したり、そのメニュー画面を切り替えたりする技術を開示している。【０００３】
特許文献２は、ヘッドマウントディスプレイに表示される仮想キーボードを用いて入力を行う技術を開示している。また、特許文献２は、上記仮想キーボードを実空間上の物に固定することで、ヘッドマウントディスプレイの装着者が頭部を動かしても上記仮想キーボードの位置が変化しないようにする技術を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許出願公開第２０１５／００１６７７７号明細書
【特許文献２】特表２０１５−５０４６１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
撮像画像に写っているユーザの手などの動きを解析する場合、ユーザが入力操作のために手などを動かしているのか、別の目的で手などを動かしているのかを区別することが難しい。そのため、ユーザが入力操作を行っていないにも関わらず入力操作が誤って認識されたり、ユーザが入力操作を行っているにも関わらず入力操作が認識されなかったりする可能性がある。【０００６】
本発明は、上記課題に鑑みてなされたものである。本発明の目的は、撮像画像からユーザの入力操作を認識する際の認識精度を向上する技術を提供することである。
【課題を解決するための手段】
【０００７】
本発明の情報処理システムは、１）ユーザに身につけられるか、又はユーザの身体の一部であるマーカと、２）ユーザに身に付けられるセンサと、３）情報処理装置と、を有する。
前記情報処理装置は、１）カメラによって生成された撮像画像に写っている前記マーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出手段と、２）前記センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識手段と、を有する。【０００８】
本発明の情報処理装置は、本発明の情報処理システムが有する情報処理装置である。【０００９】
本発明の制御方法は、コンピュータによって実行される。当該制御方法は、１）カメラによって生成された撮像画像に写っているマーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出ステップと、２）センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識ステップと、を有する。
そして、３）前記マーカは、ユーザに身につけられるか、又はユーザの身体の一部であり、４）前記センサは、ユーザに身に付けられる。【００１０】
本発明のプログラムは、本発明の制御方法が有する各ステップをコンピュータに実行させる。
【発明の効果】
【００１１】
本発明によれば、撮像画像からユーザの入力操作を認識する際の認識精度を向上する技術が提供される。
【図面の簡単な説明】
【００１２】
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。【００１３】
【図１】実施形態１に係る情報処理システムを例示するブロック図である。
【図２】情報処理システムを概念的に説明するための図である。
【図３】情報処理装置を実現する計算機の構成を例示する図である。
【図４】実施形態１の情報処理装置によって実行される処理の流れを例示するフローチャートである。
【図５】センサによって振動が検出された際に、デバイスのディスプレイ装置に表示されている画像が変更される様子を例示する図である。
【図６】マーカを中心とする操作領域を例示する図である。
【図７】マーカで定まる座標系を例示する図であり、はマーカから離れた場所を中心位置とする操作領域を例示する図である。
【図８】において、マーカは、タッチパネルに表示されるマーカ画像である。
【図９】操作体の位置を定める方法を例示する第１の図である。
【図１０】操作体の位置を定める方法を例示する第２の図である。
【図１１】検出対象タイミングを検出対象時間の開始時点とするケースを例示する図である。
【図１２】検出対象タイミングを検出対象時間の終了時点とするケースを例示する図である。
【図１３】ユーザの指がぶれて写っている撮像画像を例示する図である。
【図１４】操作体の位置に基づいて定まる操作を例示する図である。
【図１５】操作体の動きによって定まる形状を入力する入力操作を認識する様子を例示する図である。
【図１６】ジェスチャ入力を例示する図である。
【図１７】操作体の位置や動きが操作領域内における相対的な位置や動きによって表される様子を例示する図である。
【図１８】操作体の位置や動きが、撮像画像全体における相対的な位置や動きによって表される様子を例示する図である。
【図１９】実施形態２の情報処理システムを例示するブロック図である。
【図２０】出力制御部が出力装置に出力させる画面を例示する図である。
【図２１】実施形態２の情報処理装置によって実行される処理の流れを例示するフローチャートである。
【図２２】実施例の情報処理システムの使用環境を例示する図である。
【図２３】メニュー画面を例示する図である。
【図２４】エアコンの操作画面の別の例を示す図である。
【図２５】操作画面がディスプレイ装置に表示される様子を例示する図である。
【図２６】センサが自動車のハンドルに設けられている様子を例示する図である。
【図２７】デバイス１０が利用されないケースを例示する図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。また各ブロック図において、特に説明がない限り、各ブロックは、ハードウエア単位の構成ではなく機能単位の構成を表している。
【００１５】
［実施形態１］
図１は、実施形態１に係る情報処理システム３０００を例示するブロック図である。情報処理システム３０００は、マーカ３０２０、センサ３０４０、及び情報処理装置２０００を有する。マーカ３０２０は、情報処理システム３０００のユーザの身体の任意の部分であるか、又は情報処理システム３０００のユーザに身に付けられる任意の印である。センサ３０４０は、情報処理システム３０００のユーザに身に付けられるセンサである。例えばセンサ３０４０は振動センサである。マーカ３０２０やセンサ３０４０についての詳細な説明は後述する。
【００１６】
情報処理装置２０００は、操作領域算出部２０２０及び認識部２０４０を有する。操作領域算出部２０２０は、カメラによって生成された撮像画像に写っているマーカ３０２０の位置に基づいて、撮像画像に含まれる操作領域を算出する。
【００１７】
認識部２０４０は、撮像画像の上記操作領域内に写っている操作体の位置又は動きを算出する。操作体は、ユーザが操作に利用する任意の物である。例えば操作体は、ユーザの身体の一部（指など）や、ユーザの身体によって保持されている物（ペンなど）である。ここで、認識部２０４０によって算出される操作体の位置は、センサ３０４０の検出結果に基づくタイミングにおいて操作領域内に写っている操作体の位置である。また、認識部２０４０によって算出される操作体の動きは、センサ３０４０の検出結果に基づくタイミングを含む時間において操作領域内に写っている操作体の動きである。
【００１８】
さらに認識部２０４０は、算出した操作体の位置又は動きに基づいて入力操作を認識する。この入力操作の対象は、情報処理装置２０００であってもよいし、他の装置であってもよい。
【００１９】
図２は、情報処理システム３０００を概念的に説明するための図である。図２の例において、情報処理システム３０００を利用するユーザの手首には、時計型のデバイス１０が身に付けられている。マーカ３０２０は、デバイス１０のタッチパネル１４に表示されている画像（以下、マーカ画像）である。
【００２０】
マーカ３０２０は、カメラ２０によって撮像される。操作領域算出部２０２０は、カメラ２０によって生成された撮像画像に写っているマーカ３０２０の位置に基づいて、操作領域４０を算出する。
【００２１】
情報処理装置２０００は、ユーザによる入力操作の認識に、ユーザに身につけられているセンサ３０４０を利用する。図２において、センサ３０４０は、デバイス１０に内蔵されている振動センサである。例えばユーザが入力操作をする際に、指３０で任意の場所をタップするようにすると、センサ３０４０により、そのタップに起因する振動が検出される。こうすると、認識部２０４０は、センサ３０４０によって振動が検出されたタイミングにおける指３０の位置や、センサ３０４０によって振動が検出されたタイミングを含む時間における指３０の動きが、入力操作を表すことを把握できる。よって、認識部２０４０は、そのタイミングに基づいて指３０の位置や動きを算出することで、ユーザが意図した入力操作を正しく認識することができる。
【００２２】
また認識部２０４０は、操作領域４０内から指３０を検出する。こうすることで、指３０を検出するために画像処理を行うべき画像領域を狭くすることができる。よって、入力操作の認識に要する時間が短くなる。
【００２３】
なお、図２を用いて説明した情報処理装置２０００の動作は、情報処理装置２０００の理解を容易にするための例示であり、情報処理装置２０００の動作は上述の例に限定されるわけではない。情報処理装置２０００の動作の詳細やバリエーションについては、以降の記載で説明する。
【００２４】
＜作用・効果＞
撮像画像に写っている操作体の位置又は動きのみを利用してユーザの入力操作を認識しようとすると、入力操作が行われたことを検出することが難しい。そのため、ユーザが入力操作を行っていないにも関わらず入力操作が誤って認識されたり、ユーザが入力操作を行っているにも関わらず入力操作が認識されなかったりする可能性がある。
【００２５】
そこで本実施形態の情報処理装置２０００は、ユーザに身につけられているセンサ３０４０の検出結果に基づくタイミングにおける操作体の位置、又はセンサ３０４０の検出結果に基づくタイミングを含む時間における操作体の動きを解析して入力操作を認識する。そのため、入力操作の際にセンサ３０４０による検出が行われるようにユーザが入力操作を行えば、上記タイミングに基づく操作体の位置や動きは、ユーザの入力操作を表している蓋然性が高い。そのため、ユーザが意図して行った入力操作が正しく認識されるようになり、ユーザが入力操作を行っていないにもかかわらず入力操作が誤って認識されたり、ユーザが入力操作を行っているにもかかわらず入力操作が認識されなかったりすることを防ぐことができる。
【００２６】
また、本実施形態の情報処理装置２０００は、カメラ２０によって生成された撮像画像に写っているマーカ３０２０の位置に基づいて、操作領域４０を算出する。そして、認識部２０４０は、操作領域４０内から操作体の位置又は動きを算出する。こうすることで、操作体を算出するために画像処理を行うべき画像領域を狭くすることができるため、入力操作の認識に要する時間が短くなる。
【００２７】
以下、本実施形態の情報処理装置２０００について、さらに詳細に説明する。
【００２８】
＜情報処理装置２０００のハードウエア構成の例＞
情報処理装置２０００の各機能構成部は、各機能構成部を実現するハードウエア（例：ハードワイヤードされた電子回路など）で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ（例：電子回路とそれを制御するプログラムの組み合わせなど）で実現されてもよい。以下、情報処理装置２０００の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について、さらに説明する。
【００２９】
計算機１０００は種々の計算機である。例えば計算機１０００は、Personal Computer（PC）、サーバマシン、タブレット端末、又はスマートフォンヘッドなどである。また例えば、計算機１０００は、種々の乗り物（自動車、電車、又は航空機など）に搭載されている種々のデバイスを制御する計算機であってもよい。計算機１０００は、情報処理装置２０００を実現するために設計された専用の計算機であってもよいし、汎用の計算機であってもよい。
【００３０】
図３は、情報処理装置２０００を実現する計算機１０００の構成を例示する図である。計算機１０００は、バス１０２０、プロセッサ１０４０、メモリ１０６０、ストレージ１０８０、及び入出力インタフェース１１００を有する。バス１０２０は、プロセッサ１０４０、メモリ１０６０、及びストレージ１０８０が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ１０４０などを互いに接続する方法は、バス接続に限定されない。プロセッサ１０４０は、CPU (Central Processing Unit) や GPU (Graphics Processing Unit) などの演算処理装置である。メモリ１０６０は、RAM (Random Access Memory) や ROM (Read Only Memory) などのメモリである。ストレージ１０８０は、ハードディスク、SSD (Solid State Drive)、又はメモリカードなどの記憶装置である。また、ストレージ１０８０は、RAM や ROM などのメモリであってもよい。
【００３１】
入出力インタフェース１１００は、計算機１０００と入出力デバイスとを接続するためのインタフェースである。図３において、入出力インタフェース１１００にはカメラ２０が接続されている。カメラ２０は、繰り返し撮像を行って、各撮像結果を表す撮像画像を生成する任意のカメラである。なお、カメラ２０は、２次元（２Ｄ）カメラであってもよいし、３次元（３Ｄ）カメラであってもよい。
【００３２】
カメラ２０が設けられる位置は任意である。例えばカメラ２０は、ユーザが情報処理システム３０００を利用する場所の周囲に設けられる。例えば認識部２０４０によって認識される入力操作の対象が乗り物に設けられているデバイス（エアコンなど）である場合、カメラ２０は、その乗り物内においてユーザが座る場所の周辺に設けられる。例えばユーザが上記乗り物の運転手や操縦者である場合、カメラ２０は、運転席や操縦席の周囲（例えば運転席や操縦席の上）に設けられる。
【００３３】
また例えば、カメラ２０は、ユーザが身につけている物に取り付けられてもよい。ユーザが身につけている物とは、例えばユーザの衣服、ユーザが首から提げている社員証、又はヘッドマウントディスプレイなどである。
【００３４】
ストレージ１０８０は情報処理装置２０００の各機能を実現するプログラムモジュールを記憶している。プロセッサ１０４０は、これら各プログラムモジュールを実行することで、そのプログラムモジュールに対応する各機能を実現する。
【００３５】
計算機１０００のハードウエア構成は図３に示した構成に限定されない。例えば、各プログラムモジュールはメモリ１０６０に格納されてもよい。この場合、計算機１０００は、ストレージ１０８０を備えていなくてもよい。また、カメラ２０を計算機１０００に接続する方法は、入出力インタフェース１１００を介して接続する方法に限定されない。例えばカメラ２０は、ネットワークを介して計算機１０００に接続されてもよい。この場合、計算機１０００は、ネットワークに接続するためのネットワークインタフェースを有する。
【００３６】
＜＜センサ３０４０について＞＞
センサ３０４０は、ユーザによる入力操作のタイミングを把握するために利用できる任意のセンサである。例えばセンサ３０４０は、前述した振動センサである。振動センサが設けられる場所は任意である。例えば振動センサは、前述したようにデバイス１０の内部に設けられる。また例えば、振動センサは、ユーザの腕や手などに貼られてもよいし、ユーザの衣服（服の袖など）に設けられてもよい。
【００３７】
センサ３０４０が振動センサである場合、ユーザは、入力操作を行うタイミング又はそれに近いタイミングで、センサ３０４０が身に付けられている箇所又はその付近に対して振動を加える。例えばユーザは、左の手首に振動センサが内蔵されているデバイス１０が身に付けられている状態で、右手を使って左の腕部の任意の箇所に対して振動を加える。その結果、振動センサに対して振動が伝わり、その振動が振動センサによって検出される。
【００３８】
また例えば、ユーザは、入力操作を行うタイミング又はそれに近いタイミングで、センサ３０４０が身に付けられている部位などを用いて、他の場所に振動を加える。例えばユーザは、右の手首に振動センサが内蔵されているデバイス１０が身に付けられている状態で、右手を使って任意の場所（例えば机）に対して振動を加える。その結果、振動センサにも振動が伝わるため、振動センサによる振動の検出が行われる。
【００３９】
なお、センサ３０４０は、振動センサに限定されない。例えばセンサ３０４０は、圧力センサや静電容量センサでもよい。圧力センサや静電容量センサが設けられる場所は任意である。例えば圧力センサや静電容量センサは、デバイス１０のタッチパネルに設けられる。また例えば、圧力センサや静電容量センサは、ユーザの腕や手などに貼られたり巻き付けられたりするシートなどに設けられてもよい。また例えば、圧力センサや静電容量センサは、ユーザの衣服（服の袖など）に設けられてもよい。
【００４０】
センサ３０４０が静電容量センサである場合、ユーザは、センサ３０４０が身に付けられている箇所に触れる。これにより、静電容量センサによって静電容量の変化が検出される。また例えば、センサ３０４０が圧力センサである場合、ユーザは、センサ３０４０が身に付けられている箇所に圧力を加える。これにより、圧力センサによって圧力が検出される。
【００４１】
なお、センサ３０４０による検出を行わせるための動作（振動を加える動作など）は、操作体によって行われてもよいし、操作体以外を用いて行われてもよい。
【００４２】
＜処理の流れ＞
図４は、実施形態１の情報処理装置２０００によって実行される処理の流れを例示するフローチャートである。情報処理装置２０００は、センサ３０４０による検出結果を把握する（Ｓ１０２）。情報処理装置２０００は、撮像画像を取得する（Ｓ１０４）。操作領域算出部２０２０は、撮像画像に写っているマーカ３０２０の位置を算出する（Ｓ１０６）。操作領域算出部２０２０は、算出されたマーカ３０２０の位置に基づいて、撮像画像に含まれる操作領域を算出する（Ｓ１０８）。認識部２０４０は、センサ３０４０の検出結果に基づくタイミングにおける操作領域内の操作体の位置、又はそのタイミングを含む時間における操作領域内の操作体の動きを算出する（Ｓ１１０）。認識部２０４０は、算出した操作体の位置又は動きに基づいて入力操作を認識する（Ｓ１１２）。
【００４３】
なお、情報処理装置２０００によって実行される処理の流れは図４に示した流れに限定されない。例えば、センサ３０４０による検出結果の把握（Ｓ１０２）は、撮像画像の取得（Ｓ１０４）やマーカ３０２０の位置の算出（Ｓ１０６）の後に行われてもよい。
【００４４】
＜撮像画像を取得する方法：Ｓ１０２＞
情報処理装置２０００は、カメラ２０によって生成された撮像画像を取得する（Ｓ１０４）。情報処理装置２０００が撮像画像を取得する方法は様々である。例えば情報処理装置２０００は、カメラ２０から撮像画像を取得する。この場合、情報処理装置２０００とカメラ２０とは通信可能に接続されている。
【００４５】
また、カメラ２０が外部の記憶装置に撮像画像を記憶する場合、情報処理装置２０００は、この記憶装置から撮像画像を取得する。この場合、情報処理装置２０００は、この記憶装置と通信可能に接続されている。
【００４６】
なお、情報処理装置２０００は、カメラ２０によって生成される撮像画像の全てを取得してもよいし、一部のみを取得してもよい。後者の場合、例えば情報処理装置２０００は、認識部２０４０によって操作体の位置又は動きの認識に用いられる操作画像のみを取得する。なお後述するように、認識部２０４０によって操作体の位置又は動きの認識に用いられる操作画像は、センサ３０４０の検出結果に基づくタイミングで定まる。
【００４７】
＜センサ３０４０の検出結果の把握方法：Ｓ１０４＞
情報処理装置２０００は、センサ３０４０の検出結果を把握する（Ｓ１０４）。情報処理装置２０００がセンサ３０４０の検出結果を把握する方法は様々である。以下、その方法を例示する。
【００４８】
＜＜無線通信の利用＞＞
例えば情報処理装置２０００は、センサ３０４０を内蔵するデバイス１０と無線通信を行うことにより、センサの検出結果を示す情報を取得する。この情報を用いて、情報処理装置２０００は、センサ３０４０の検出結果を把握する。
【００４９】
例えばデバイス１０は、センサが所定の大きさ以上の振動を検出したタイミングで、情報処理装置２０００に対して所定の信号を送信する。この場合、情報処理装置２０００は、この所定の信号を受信することにより、「センサ３０４０によって振動が検出された」というセンサの検出結果を取得することができる。
【００５０】
また例えば、デバイス１０は、センサ３０４０によって所定の大きさ以上の振動が検出された場合に、その振動が検出された時点を示す情報を情報処理装置２０００に送信しても良い。
【００５１】
＜＜デバイス１０の外観の変化の検出＞＞
デバイス１０は、センサ３０４０による振動の検出に応じてデバイス１０の外観を変化させてもよい。この場合、情報処理装置２０００は、カメラ２０によって生成された撮像画像を用いてデバイス１０の外観の変化を検出することで、センサ３０４０の検出結果（センサ３０４０によって振動が検出されたこと）を把握する。
【００５２】
例えばデバイス１０がディスプレイ装置を有する場合、デバイス１０は、センサ３０４０によって所定の大きさ以上の振動が検出されたときに、ディスプレイ装置の表示を変更する。より具体的には、デバイス１０は、センサ３０４０によって所定の大きさ以上の振動が検出されたとき、デバイス１０のディスプレイ装置に表示されている画像を変更するか、又は何も表示されていなかったディスプレイ装置に新たに画像を表示する。情報処理装置２０００は、カメラ２０によって繰り返し生成される撮像画像を解析することで、デバイス１０のディスプレイ装置の表示が変更されたことを検出する。これにより、情報処理装置２０００は、センサによって振動が検出されたことを把握する。図５は、センサ３０４０によって振動が検出された際に、デバイス１０のディスプレイ装置に表示されている画像が変更される様子を例示する図である。
【００５３】
また例えば、デバイス１０は、センサ３０４０によって振動が検出された場合に、デバイス１０のディスプレイ装置のバックライトやデバイス１０に設けられた LED（Light Emitting Diode）ライトなどのライトを点灯又は点滅させてもよい。情報処理装置２０００は、カメラ２０によって繰り返し生成される撮像画像を解析することで、これらのライトの点灯や点滅を検出する。これにより、情報処理装置２０００は、センサ３０４０によって振動が検出されたことを把握する。
【００５４】
このように、センサ３０４０による振動の検出に応じてデバイス１０の外観を変化させることによって情報処理装置２０００がその振動の検出を把握すれば、デバイス１０と情報処理装置２０００との間で無線通信を行う必要がない。そのため、他に無線通信の必要性がない限り、デバイス１０や情報処理装置２０００は無線通信の機能を有さなくてよい。
【００５５】
情報処理装置２０００が振動センサ以外のセンサによる検出結果を把握する方法は、振動センサについて説明した上述の方法と同様である。例えばセンサが圧力センサである場合、デバイス１０や情報処理装置２０００は、圧力センサが所定の大きさ以上の圧力を検出したときに、振動センサが所定の大きさ以上の振動を検出したときと同様の処理を行う。また例えば、センサが静電容量センサである場合、デバイス１０や情報処理装置２０００は、静電容量センサが所定の大きさ以上の静電容量の変位を検出したときに、振動センサが所定の大きさ以上の振動を検出したときと同様の処理を行う。
【００５６】
＜マーカ３０２０について＞
マーカ３０２０は、カメラ２０によって生成される撮像画像において少なくともその位置が特定できる任意の印である。例えばマーカ３０２０は、３次元の座標系の決定に利用できるマーカである。３次元の座標系の決定に利用できるマーカは、例えば AR（Augmented Reality）マーカである。ただし、３次元の座標系の決定に利用できるマーカは、参照方向によらず、或る基準点からの相互に直交する３つの方向を一定に得ることができるものであればよく、AR マーカには限定されない。また、マーカ３０２０は、その位置が特定できる印であればよく、必ずしも３次元の座標系の決定に利用できる必要はない。
【００５７】
マーカ３０２０がユーザの身体に身に付けられるものである場合、マーカ３０２０は、ユーザの身体の任意の箇所に取り付けることができる。例えばマーカは、ユーザの腕部に身に付けられる。ここで腕部とは、手及び手から肩にかけての部分を意味する。
【００５８】
例えばこの場合、マーカは、ユーザの腕部に取り付けられたデバイス１０のディスプレイ装置に表示される画像である。デバイス１０は、ディスプレイ装置上に画像を表示する機能を有する任意の電子機器である。なおデバイス１０は、ユーザの腕に直接取り付けられてもよいし、服の上からユーザの腕に取り付けられてもよい。
【００５９】
例えば図２では、マーカ３０２０は、デバイス１０のタッチパネル１４に表示されているマーカ画像である。マーカ画像は、予めデバイス１０に記憶されている画像であってもよいし、デバイス１０の外部にある記憶装置に記憶されている画像であってもよい。後者の場合、デバイス１０は、マーカ画像を記憶装置から取得して表示する。
【００６０】
マーカ３０２０は、上述のようにデバイスに表示されるものに限定されない。またマーカ３０２０は、ユーザの腕部などに直接描画されていてもよいし、ユーザの腕部などにある任意の物に描画されていてもよい。後者の場合、例えばマーカ３０２０は、ユーザの指に取り付けられている指輪、ユーザの手首に取り付けられているリストバンド、又はユーザが着ている服の袖などに描画される。なお、マーカ３０２０は、手で描画されてもよいし、印字されてもよい。
【００６１】
さらにマーカ３０２０は、ユーザの身体の特定の部分であってもよい。例えばマーカ３０２０は、ユーザの手の甲などである。
【００６２】
なお、操作領域算出部２０２０が何をマーカ３０２０として認識するのかを示す情報は、マーカ３０２０に予め設定されていてもよいし、操作領域算出部２０２０からアクセス可能な記憶装置に記憶されていてもよい。
【００６３】
また、操作領域算出部２０２０がマーカ３０２０として扱う物は、一種類であってもよいし、複数種類であってもよい。
【００６４】
＜マーカ３０２０の位置の算出方法：Ｓ１０６＞
操作領域算出部２０２０は、撮像画像に写っているマーカ３０２０の位置を算出する（Ｓ１０６）。そのためマーカ３０２０は、マーカ３０２０として扱うものを特定する情報（マーカ３０２０に関する形状、サイズ、色などについての情報など：以下、マーカ情報）を利用する。この情報は、予め操作領域算出部２０２０に設定されていてもよいし、操作領域算出部２０２０からアクセス可能な記憶装置に記憶されていてもよい。
【００６５】
操作領域算出部２０２０は、マーカ情報を用いて、撮像画像に写っているマーカ３０２０を検出する。そして操作領域算出部２０２０は、検出したマーカの位置を算出する。ここで、画像内から所定の物を検出し、さらにその物の画像内における位置を算出する技術には、既知の様々な技術を利用できる。
【００６６】
＜操作領域４０の算出方法：Ｓ１０８＞
操作領域算出部２０２０は、算出したマーカ３０２０の位置に基づいて、操作領域４０を算出する（Ｓ１０８）。操作領域４０は、マーカ３０２０の位置を基準として定められる任意の領域である。例えば操作領域４０は、マーカ３０２０の位置（例えば中心位置）を中心位置とする所定形状で定まる領域である。この所定形状は、円形や矩形など、任意の形状である。
【００６７】
図６は、マーカ３０２０を中心とする操作領域４０を例示する図である。図６において、操作領域４０は、マーカ３０２０の中心位置を中心位置とし、幅が所定の長さ w であり、高さが所定の長さ h である矩形である。
【００６８】
ただし、マーカ３０２０の位置によって定まる位置は、操作領域４０の中心位置に限定されない。例えば、マーカ３０２０の位置によって操作領域４０の左上端などの位置が定まってもよい。
【００６９】
また例えば操作領域４０は、マーカ３０２０の位置から所定方向に所定距離離れた場所に中心位置などがある領域であってもよい。図７は、マーカ３０２０から離れた場所を中心位置とする操作領域４０を例示する図である。図７の操作領域４０の形状は、図６の操作領域４０の形状と同一である。ただし、図７の操作領域４０の中心位置は、マーカ３０２０から矢印４１によって定まる方向及び距離 d だけ移動した場所である。また図２において、操作領域４０は、マーカ３０２０の位置から、マーカ３０２０が身に付けられている腕部の手のひらの方向へ所定距離離れた場所を中心とする領域である。
【００７０】
なお、矢印４１が表す方向は、撮像画像における座標系で定まる方向であってもよいし、その他の座標系で定まる方向であってもよい。前者の場合、例えば矢印４１は、撮像画像の右方を x 軸方向とし、撮像画像の下方を y 軸方向とする座標系における方向を表す。一方、後者の場合、例えば矢印４１は、マーカ３０２０で定まる座標系における方向を表す。図７は、マーカ３０２０で定まる座標系４２を例示する図である。図８において、マーカ３０２０は、タッチパネル１４に表示されるマーカ画像である。なおこの場合、マーカ画像は、３次元の座標の決定に用いることができる AR マーカなどである。
【００７１】
なお、所定範囲の大きさや形状を表す情報や、どの場所をマーカ３０２０の中心とするかを表す情報（矢印４１の情報など）は、操作領域算出部２０２０に予め設定されていてもよいし、操作領域算出部２０２０からアクセス可能な記憶装置に記憶されていてもよい。
【００７２】
＜操作体について＞
認識部２０４０によって操作体として扱われる物は様々である。例えば認識部２０４０は、ユーザの腕部の一部（指など）や、ユーザの腕部によって保持される物（ペンなど）を操作体として扱う。この場合、ユーザは、カメラ２０の撮像範囲内で指やペンなどを動かすことにより、入力操作を行う。なお、マーカ３０２０がユーザの腕部に身に付けられ、なおかつ操作体がユーザの腕部の一部である場合、マーカ３０２０が身に付けられる腕部と操作体として扱われる腕部は同一（両方とも左腕又は右腕）であってもよいし、異なっていてもよい（片方は左腕、もう片方は右腕）。このことは、操作体がユーザの腕部の一部によって保持される物である場合についても同様である。
【００７３】
また例えば、認識部２０４０は、物やユーザの身体に付されたマーカを操作体として扱ってもよい。例えばこのマーカは、ユーザの身体（指など）に付される。また例えば、このマーカは、ユーザが保持する物（ペンなど）に付される。また例えば、このマーカは、ユーザが身につける物に付される。ユーザに身につけられる物は、例えば前述したセンサが内蔵されているデバイス１０や、ユーザの指にはめられる指輪などである。
【００７４】
認識部２０４０が何を操作体として扱うかを示す情報は、認識部２０４０に予め設定されていてもよいし、認識部２０４０からアクセス可能な記憶装置に記憶されていてもよい。
【００７５】
なお、認識部２０４０が操作体として扱う物は、一種類であってもよいし、複数種類であってもよい。
【００７６】
＜操作体の位置を検出する方法：Ｓ１１０＞
認識部２０４０は、センサ３０４０の検出結果に基づくタイミングにおける操作体の位置を検出する（Ｓ１１０）。以下、「センサ３０４０の検出結果に基づくタイミング」を検出対象タイミングと表記する。
【００７７】
検出対象タイミングは、センサ３０４０によって振動などが検出されたタイミング又はこれに近いタイミングである。例えばセンサ３０４０によって振動などが検出された場合にデバイス１０から情報処理装置２０００へ所定の信号が送信される場合、検出対象タイミングは、情報処理装置２０００がこの所定の信号を受信した時点である。また例えば、センサ３０４０によって振動などが検出された時点を示す情報がデバイス１０から情報処理装置２０００へ送信される場合、検出対象タイミングは、この情報によって示される時点である。また例えば、センサ３０４０によって振動などが検出された場合にデバイス１０の外観に所定の変化が加わる場合、検出対象タイミングは、情報処理装置２０００によってこの所定の変化が検出された時点である。
【００７８】
また、認識部２０４０は、上述した種々のタイミング（情報処理装置２０００がデバイス１０から所定の信号を受信した時点など）よりも所定時間前又は後の時点を検出対象タイミングとしてもよい。
【００７９】
認識部２０４０が前述したどの時点を検出対象タイミングとして扱うかや、上述の所定時間を示す情報は、認識部２０４０に予め設定されていてもよいし、認識部２０４０からアクセス可能な記憶装置に記憶されていてもよい。
【００８０】
認識部２０４０は、検出対象タイミングにおいてカメラ２０によって生成された撮像画像から操作体の位置を検出する。ここで一般に、カメラ２０は間欠的に撮像画像を生成するため（例えば 30 fps（フレーム／秒）の頻度）、検出対象タイミングと一致する時点で生成された撮像画像が無い場合もある。この場合、認識部２０４０は、検出対象タイミングの直前又は直後に生成された撮像画像を用いる。
【００８１】
認識部２０４０は、撮像画像の操作領域４０内から操作体を検出する。ここで、画像の所定領域内に写っている所定のオブジェクトを検出する技術には、既知の技術を利用できる。
【００８２】
認識部２０４０が操作体の位置を定める方法は様々である。例えば認識部２０４０は、操作領域４０の中から操作体を表す領域を割り出す。そして、認識部２０４０は、割り出した領域に含まれる点を、操作体の位置とする。この際、操作体の位置は、操作体を表す領域に含まれる任意の点でよい。
【００８３】
例えば操作体がユーザの身体の一部やユーザに保持されている物体である場合、認識部２０４０は、操作体を表す領域の重心を算出する。そして、認識部２０４０は、操作体を表す領域に含まれ、なおかつその領域の重心から最も遠い点を、操作体の位置とする。この方法によれば、例えば指先やペン先などが操作体の位置となる。
【００８４】
図９は、操作体の位置を定める方法を例示する第１の図である。図９において、操作体はユーザの手である。まず認識部２０４０は、操作領域４０の中からユーザの手を表す領域６０を割り出す。次に認識部２０４０は、領域６０の重心６２を算出する。そして認識部２０４０は、領域６０に含まれる点であり、なおかつ重心６２から最も遠い点６４を、操作体の位置とする。なお、重心６２から最も遠い点が領域６０の中に複数ある場合、例えば認識部２０４０は、これら複数の点のうち、マーカ３０２０から最も遠い点を操作体の位置とする。
【００８５】
ここで、例えば指の腹で入力操作を行う場合など、指先とは少しずれた場所を操作体の位置として扱うことが好ましい場合もある。そこで認識部２０４０は、操作体の重心から最も遠い点６４を算出し、さらにこの点から少しずらした位置（例えばマーカ３０２０へ近づく方向に所定距離ずらした位置）を操作体の位置としてもよい。操作体の重心から最も遠い点６４と操作体の位置との位置関係を表す情報は、認識部２０４０に予め設定されていてもよいし、認識部２０４０からアクセス可能な記憶装置に記憶されていてもよい。
【００８６】
操作体が物やユーザの身体に付されたマーカである場合、例えば認識部２０４０は、撮像画像からこのマーカを表す領域を割り出し、その領域の中心位置などを操作体の位置とする。
【００８７】
また、認識部２０４０が、操作体として検出すべき物を表す参照画像を利用して、操作体を検出するとする。この場合、この参照画像において、操作体の位置を予め定義しておいてもよい。認識部２０４０は、操作領域４０の中から参照画像と類似する領域を割り出す。そして、認識部２０４０は、その領域において、参照画像において定義されている操作体の位置と対応する点を割り出し、その点を操作体の位置として扱う。
【００８８】
図１０は、操作体の位置を定める方法を例示する第２の図である。この例において、操作体はユーザの指である。参照画像１２０は、ユーザの指の形状などを表す参照画像である。操作体の位置１２２は、参照画像において予め定義されている、操作体の位置である。
【００８９】
認識部２０４０は、操作領域４０の中から、参照画像１２０と類似する領域１３０を割り出す。この領域１３０はユーザの指を表す。さらに認識部２０４０は、参照画像１２０を領域１３０にマッピングした際に操作体の位置１２２と対応する点１３２を割り出す。そして、認識部２０４０は点１３２を操作体の位置として扱う。
【００９０】
認識部２０４０が操作体の位置をどのように定めるかを表す情報は、認識部２０４０に予め設定されていてもよいし、認識部２０４０からアクセス可能な記憶装置に記憶されていてもよい。
【００９１】
＜操作体の動きを検出する方法：Ｓ１１０＞
認識部２０４０は、検出対象タイミングを含む時間における操作体の動きを検出する（Ｓ１１０）。以下、「検出対象タイミングを含む時間」を検出対象時間と表記する。
【００９２】
認識部２０４０は、検出対象タイミングを用いて検出対象時間の開始時点及び終了時点を決定する。例えば認識部２０４０は、検出対象タイミングを検出対象時間の開始時点とする。図１１は、検出対象タイミングを検出対象時間の開始時点とするケースを例示する図である。図１１（ａ）の場合、認識部２０４０は、センサ３０４０によって振動が検出された時点を検出対象タイミングとしている。図１１（ｂ）の場合、認識部２０４０は、センサ３０４０によって振動が検出された時点よりも所定時間前の時点を検出対象タイミングとしている。図１１（ｃ）の場合、認識部２０４０は、センサ３０４０によって振動が検出された時点よりも所定時間後の時点を検出対象タイミングとしている。
【００９３】
また例えば、認識部２０４０は、検出対象タイミングを検出対象時間の終了時点とする。図１２は、検出対象タイミングを検出対象時間の終了時点とするケースを例示する図である。図１２（ａ）の場合、認識部２０４０は、センサ３０４０によって振動が検出された時点を検出対象タイミングとしている。図１２（ｂ）の場合、認識部２０４０は、センサ３０４０によって振動が検出された時点よりも所定時間前の時点を検出対象タイミングとしている。図１１（ｃ）の場合、認識部２０４０は、センサ３０４０によって振動が検出された時点よりも所定時間後の時点を検出対象タイミングとしている。
【００９４】
認識部２０４０は、検出対象タイミングを１つ又は２つ用いて検出対象時間を定める。検出対象タイミングを１つ用いて検出対象時間を定める場合、例えば認識部２０４０は、図１１のいずれかの方法で検出対象時間の開始時点を定め、その時間から所定時間後の時点を検出対象時間の終了時点とする。また例えば、認識部２０４０は、図１２のいずれかの方法で検出対象時間の終了時点を定め、その時間から所定時間前の時点を検出対象時間の終了時点とする。
【００９５】
検出対象タイミングを２つ用いて検出対象時間を定める場合、認識部２０４０は、図１１のいずれかの方法で検出対象時間の開始時点を定め、なおかつ図１２のいずれかの方法で検出対象時間の終了時点を定める。
【００９６】
なお、センサ３０４０によって振動が検出される時点以前を検出対象時間の開始時点とする場合（図１１（ａ）又は図１１（ｂ））や、検出対象タイミングを１つのみ用い、なおかつ図１２のように検出対象タイミングによって検出対象時間の終了時点を定める場合、カメラ２０は、センサ３０４０によって振動が検出される前から撮像画像を生成している必要がある。この場合、カメラ２０は、センサ３０４０によって振動が検出される前から撮像を開始する。例えばカメラ２０は、ユーザが情報処理装置２０００の利用を開始してから終了するまでの間、継続して撮像を行う。また、カメラ２０によって生成される撮像画像は、所定期間継続して記憶装置などに記憶される。
【００９７】
一方、センサ３０４０によって振動が検出された時点よりも後の時点を検出対象時間の開始時点とする場合（図１１（ｃ））、カメラ２０は、センサ３０４０によって振動が検出されてから撮像を開始してもよい。この場合、例えばカメラ２０は、デバイス１０又は情報処理装置２０００から、センサ３０４０によって振動が検出された旨の信号を受信し、その信号を受信したタイミングで撮像を開始する。
【００９８】
なお、上述した各所定時間を表す情報は、認識部２０４０に予め設定されていてもよいし、認識部２０４０からアクセス可能な記憶装置に記憶されていてもよい。また、検出対象時間の開始時点の決定に用いる所定時間と、検出対象時間の終了時点に用いる所定時間は、同じであってもよいし、異なっていてもよい。
【００９９】
認識部２０４０は、検出対象時間において生成された撮像画像を用いて操作体の動きを検出する。検出対象時間において生成された撮像画像が複数ある場合、例えば認識部２０４０は、それら複数の撮像画像の操作領域４０それぞれについて画像解析を行うことで、各操作領域４０内の操作体の位置を算出する。そして認識部２０４０は、操作体の位置の変化を表す情報を、操作体の動きを表す情報とする。操作体の位置の変化を表す情報は、例えば操作体の位置を時系列で並べた情報である。
【０１００】
検出対象時間において生成された撮像画像は１つであってもよい。動いている操作体は、１つの撮像画像にぶれた状態で写ることが多い。そこで認識部２０４０は、その１つの撮像画像にぶれて写っている操作体の画像から、操作体の動きを算出する。
【０１０１】
図１３は、ユーザの指がぶれて写っている撮像画像２２を例示する図である。撮像画像２２では、ユーザの指３０が、指３０−Ａから指３０−Ｂへ移動するようにぶれて写っている。認識部２０４０は、指３０−Ａと指３０−Ｂに共通する特徴点の位置の変化を、操作体の動きとして検出する。例えば認識部２０４０は、指３０−Ａの指先と指３０−Ｂの指先の位置の変化によって定まる動き５０を検出する。
【０１０２】
＜認識部２０４０によって認識される入力操作：Ｓ１１２＞
認識部２０４０は、検出した操作体の位置又は動きに基づいて入力操作を認識する（Ｓ１１２）。認識部２０４０は、操作体の位置又は動きに基づいて定まる様々な入力操作を認識できる。以下、認識部２０４０によって認識できる種々の入力操作を例示する。
【０１０３】
＜＜操作体の位置に基づいて定まる入力操作＞＞
例えば認識部２０４０は、操作体の位置に基づいて、複数の選択肢から一つを選択する入力操作（以下、選択操作）を受け付ける。例えば選択操作には、YES 又は NO を選択する操作や、上下を選択する操作などがある。上下を選択する操作には、エアコンの温度又は風向を調節する操作などがある。
【０１０４】
例えば、認識部２０４０は、操作領域４０の上半分の中に操作体が位置している場合には第１の選択肢を選択する操作を認識し、操作領域４０の下半分の中に操作体が位置している場合には第２の選択肢を選択する操作を認識する。
【０１０５】
図１４は、操作体の位置に基づいて定まる操作を例示する図である。図１４において、操作領域４０は、タッチパネル１４に写っているマーカ画像から手の甲の方向へ所定距離離れた位置を中心とする矩形である。図１４（ａ）のように指３０を伸ばすと、指３０は操作領域４０の上半分に収まる。一方、図１４（ｂ）のように指３０を折り曲げると、指３０は操作領域４０の下半分に収まる。
【０１０６】
例えば図１４に示す操作は、エアコンの温度設定の変更に利用できる。ユーザは、エアコンの温度を上げたい際には、図１４（ａ）のように指３０を伸ばした状態で、任意の場所を指３０でタップする。すると認識部２０４０は、センサ３０４０によってタップの振動が検出されたタイミングにおいて、操作領域４０の上半分の中に指３０が位置していることを検出する。そして認識部２０４０は、「上」という入力操作を認識する。この「上」という入力操作を示す信号は、情報処理装置２０００からエアコンの制御装置へ送られる。そしてエアコンの制御装置は、「上」という入力操作に基づき、エアコンの設定温度を所定値（例えば１度）上げる。
【０１０７】
一方ユーザは、エアコンの温度を下げたい際には、図１４（ｂ）のように指３０を折り曲げた状態で、任意の場所を指３０でタップする。すると認識部２０４０は、センサ３０４０によってタップの振動が検出されたタイミングにおいて、操作領域４０の下半分の中に指３０が位置していることを検出する。そして認識部２０４０は、「下」という入力操作を認識する。そして、この「下」という入力操作を示す信号が情報処理装置２０００からエアコンの制御装置へ送られ、この信号を受信したエアコンの制御装置がエアコンの設定温度を所定値（例えば１度）下げる。
【０１０８】
このように、操作領域４０内における操作体の相対位置によって（例えば、操作領域４０の上半分と下半分のどちらに位置しているかによって）入力操作を認識する方法によれば、物理的なボタンやキーボードなどを用いて入力操作する場合と異なり、ユーザは任意の場所で入力操作を行うことができる。よって、入力操作を自由な場所で行え、なおかつ入力装置を見る必要もないため、ユーザは入力操作を容易に行うことができる。
【０１０９】
なお、図１４に示すように操作領域４０を分割する方法は、上半分と下半部に限定されない。例えば認識部２０４０は、操作領域４０を左右に２分割したり、操作領域４０を上下左右に４分割したりしてもよい。
【０１１０】
＜＜操作体の動きに基づいて定まる入力操作＞＞
認識部２０４０は、１）検出した操作体の動きに基づく形状を入力する入力操作を認識としてもよいし、２）検出した操作体の動きに対応する所定の入力操作を認識してもよい。以下、それぞれについて説明する。
【０１１１】
＜＜操作体の動きに基づく形状を入力する入力操作を認識するケース＞＞
図１５は、操作体の動きによって定まる形状を入力する入力操作を認識する様子を例示する図である。図１５（ａ）では、認識部２０４０は、操作体の動き５０−Ａが表す形状５１や、動き５０−Ｂが表す形状５２を入力する入力操作を認識する。例えばこの入力操作は、手書き入力を行う入力操作で利用される。
【０１１２】
図１５（ｂ）では、認識部２０４０は、操作体の動きとは異なる形状ではあるものの、操作体の動きによって形状及び大きさが定まる形状を入力する入力操作を認識する。具体的には、認識部２０４０は、動き５０−Ｃの両端を対角線の両端とする矩形４４や、動き５０−Ｃの両端を直径の両端とする円形５６を入力する入力操作を認識する。例えばこの入力は、ユーザがある範囲を表す入力（選択操作など）を行う際や、所定の図形の描画を行う際に用いられる。
【０１１３】
図１５（ａ）に示した方法と図１５（ｂ）で示した方法のどちらを用いるのかは、予め固定されていてもよいし、ユーザによって設定可能であってもよい。また、上記どちらの方法を用いるのかを示す情報は、認識部２０４０に予め設定されていてもよいし、認識部２０４０からアクセス可能な記憶装置に記憶されていてもよい。
【０１１４】
＜＜操作体の動きに対応する所定の入力操作を認識するケース＞＞
検出した操作体の動きに対応する所定の入力操作は、例えばジェスチャ入力による入力操作である。図１６は、ジェスチャ入力を例示する図である。図１６（ａ）はフリック動作を表し、図１６（ｂ）はピンチイン・ピンチアウト動作を表している。なお、矢印は操作体の動きを表している。
【０１１５】
操作体の動きと、その動きに対応する所定の入力操作とを関連付ける情報は、認識部２０４０に予め設定されていてもよいし、認識部２０４０からアクセス可能な記憶装置に予め記憶されていてもよい。
【０１１６】
＜＜操作体を動かす動作が行われた場所の取り扱いについて＞＞
認識部２０４０は、１）操作体を動かす動作が行われた位置に関係なく、その操作体の動きのみを入力として認識してもよいし、２）操作体の動きと、その操作体を動かす動作が行われた位置との組み合わせを入力として認識してもよい。前者の場合、操作体を動かす動作が撮像画像２２上のどの場所で行われても、同じ操作体の動きは同じ入力を表す。一方後者の場合、操作体を動かす動作が撮像画像２２上のどの場所で行われたかが意味を持つ。例えばユーザが撮像画像に写っている特定の物を丸で囲む入力を行う場合、丸という形状だけでなく、その丸によって何が囲われたかが意味を持つ。
【０１１７】
１）の場合、認識部２０４０は、前述したように認識部２０４０によって検出された操作体の動きで定まる形状や、操作体の動きで定まるジェスチャを、入力として認識する。一方２）の場合、認識部２０４０は、認識部２０４０によって検出された撮像画像２２上の操作体の座標の遷移を入力として認識する。
【０１１８】
認識部２０４０が１）と２）のどちらの方法で入力を認識するのかは、予め認識部２０４０に設定されていてもよいし、認識部２０４０からアクセス可能な記憶装置に記憶されていてもよいし、ユーザによって選択可能であってもよい。
【０１１９】
＜操作体の位置や動きの表し方について＞
認識部２０４０が認識する操作体の位置や動きは、操作領域４０内における相対的な位置や動きであってもよいし、撮像画像全体における相対的な位置や動きであってもよい。
【０１２０】
図１７は、操作体の位置や動きが操作領域４０内における相対的な位置や動きによって表される様子を例示する図である。図１７において、操作領域４０は矩形で表されている。
【０１２１】
図１７（ａ）は、操作体の位置を入力操作として認識するケースである。図１７（ａ）において、操作体の位置である座標 (x1, y1) は、操作領域４０の左上端を原点とし、操作領域４０を平面視した場合における右方向を x 軸とし、操作領域４０を平面視した場合における下方向を y 軸とする座標系における座標である。
【０１２２】
図１７（ｂ）は、操作体の動きを入力操作として認識するケースである。図１７（ｂ）において、操作体の位置は (x2, y2)、(x3, y3)、(x4, y4) の順に変化している。これらの座標はいずれも、図１７（ａ）で説明した座標系における座標である。操作体の動きは、例えばこれらの座標を時系列で並べた情報によって表される。なお、矢印は操作体の軌跡を表す。ただし、図を見やすくするため、上記矢印は、操作体の実際の軌跡とずれた位置に描画されている。
【０１２３】
一方図１８は、操作体の位置や動きが、撮像画像全体における相対的な位置や動きによって表される様子を例示する図である。図１８（ａ）は、操作体の位置を入力操作として認識するケースである。図１８（ａ）において、操作体の位置である座標 (x1, x1) は、撮像画像２２の左上端を原点とし、撮像画像２２を平面視した場合における右方向を x 軸とし、撮像画像２２を平面視した場合における下方向を y 軸とする座標系における座標である。
【０１２４】
図１８（ｂ）は、操作体の動きを入力操作として認識するケースである。図１８（ｂ）において、操作体の位置は (x2, y2)、(x3, y3)、(x4, y4) の順に変化している。これらの座標はいずれも、図１８（ａ）で説明した座標系における座標である。操作体の動きは、例えばこれらの座標を時系列で並べた情報によって表される。なお、図１７（ｂ）と同様に、矢印は操作体の軌跡を表す。
【０１２５】
図１７に示したように操作体の位置や動きを操作領域４０内における相対的な位置や動きで認識する方法は、ユーザが比較的小さな動作で入力操作を行うケースに適している。例えばデバイス１０がユーザの手首に身に付けられており、タッチパネル１４にマーカ画像が表示されるとする。また、操作体がユーザの指であるとする。この場合、例えばユーザは、適当な場所（例えば机上など）にデバイス１０が身に付けられている手首を置く。これにより、マーカ３０２０の位置が概ね固定される。そしてユーザは、手首を支点として指を動かし、入力操作を行う（図１７（ｂ）参照）。ただし、マーカ３０２０の位置は必ずしも固定される必要はない。
【０１２６】
一方、図１８に示したように操作体の位置や動きを撮像画像全体における相対的な位置や動きで認識する方法は、ユーザが比較的大きな動作で入力操作を行うケースに適している。例えばデバイス１０がユーザの手首に身に付けられており、タッチパネル１４にマーカ画像が表示されるとする。また、操作体がユーザの指であるとする。この場合、例えばユーザは、手や腕を全体的に動かして入力操作を行う（図１８（ｂ）参照）。
【０１２７】
操作体の位置や動きを、操作領域４０内における相対的な位置や動きと、撮像画像全体における相対的な位置や動きのどちらによって表すかを示す情報は、認識部２０４０に予め設定されていてもよいし、認識部２０４０からアクセス可能な記憶装置に記憶されていてもよい。また、操作体の位置や動きを表す方法は、操作体の位置や動きを表すことができる任意の方法でよく、上述した２つの方法には限定されない。
【０１２８】
［実施形態２］
図１９は、実施形態２の情報処理システム３０００を例示するブロック図である。以下で説明する点を除き、実施形態２の情報処理システム３０００は、実施形態１の情報処理システム３０００と同様の機能を有する。
【０１２９】
実施形態２の情報処理システム３０００は出力装置３０６０を有する。出力装置３０６０は、画面を出力する任意の装置である。例えば出力装置３０６０は、プロジェクタなど、画面を投影する装置である。また例えば、出力装置３０６０は、画面を表示するディスプレイ装置である。
【０１３０】
実施形態２の情報処理装置２０００は出力制御部２０６０を有する。出力制御部２０６０は、出力装置３０６０に画面を出力させる。出力制御部２０６０が出力装置３０６０に出力させる画面には、認識部２０４０によって認識される入力操作の操作対象が含まれている。
【０１３１】
図２０は、出力制御部２０６０が出力装置３０６０に出力させる画面を例示する図である。図２０において、操作画面７０には、ボタン７２、ボタン７４、カーソル７６、及びアイコン７８、及び設定温度７９が含まれている。アイコン７８は、操作対象をユーザが認識するための絵である。アイコン７８を見ることで、ユーザは、操作対象がエアコンの温度設定であることが分かる。ボタン７２は、エアコンの温度設定を上げるためのボタンである。ボタン７４は、エアコンの温度設定を下げるためのボタンである。カーソル７６は、ユーザの入力操作によって操作される対象を示すカーソルである。設定温度７９は、現在の設定温度を表している。
【０１３２】
図２０（ａ）は、ユーザによる入力操作が行われる前の操作画面７０を表している。例えばボタン７２を押下する入力操作を認識部２０４０が認識すると、エアコンの制御装置に対して「上」という入力を表す信号が送信される。その結果、エアコンの制御装置は、エアコンの設定温度を上げる制御を行う。一方、ボタン７４を押下する入力操作を認識部２０４０が認識すると、エアコンの制御装置に対して「下」という入力を表す信号が送信される。その結果、エアコンの制御装置は、エアコンの設定温度を下げる制御を行う。
【０１３３】
図２０（ｂ）は、ユーザによる入力操作が行われた後の操作画面７０を表している。具体的には、ユーザがボタン７４を押下する入力操作を行った後の操作画面７０を表している。この入力操作の結果、操作画面７０に表示されているエアコンの設定温度は、２４℃から２３℃に変更されている。
【０１３４】
ここで、ユーザがカーソル７６を動かすために行う入力操作は様々である。例えばユーザは、カーソル７６を動かすために操作体を動かす入力操作（例えば指３０をタップしてから指３０を動かす動作）を行う。認識部２０４０は、この操作体の動きを入力操作として認識する。出力制御部２０６０は、この入力操作によって表される動きに基づいて、カーソル７６の表示位置を変化させる。
【０１３５】
また例えば、認識部２０４０が操作体の位置を入力操作として認識し、出力制御部２０６０が認識部２０４０によって認識された操作体の位置に対応する操作画面７０内の位置にカーソル７６を表示させてもよい。
【０１３６】
同様に、ユーザがボタン７２やボタン７４を押下するために行う入力操作は様々である。例えばユーザは、ボタン７２にカーソル７６が重なっている状態で、その位置を入力する入力操作（例えば指３０のタップ）を行う。認識部２０４０は、この操作体の位置と、出力制御部２０６０によって表示されている操作画面７０に関する情報とに基づき、ボタン７２を押下する入力操作を認識する。また例えば、ユーザは、カーソル７６を動かしてボタン７２を囲う入力操作を行ってもよい。認識部２０４０は、この操作体の動きと、出力制御部２０６０によって表示されている操作画面７０に関する情報とに基づいて、ボタン７２を囲う入力操作を認識し、この入力操作をボタン７２を押下する入力操作として認識する。
【０１３７】
なお、撮像画像から認識される操作体の位置や動きを、操作画面７０における位置や動きに対応させる方法は様々である。例えば、操作体の位置や動きが操作領域４０における相対的な位置や動きで表される場合（図１７参照）、認識部２０４０は、操作領域４０内における操作体の位置や動きを表す座標を、操作画面７０内の座標へ変換する。これにより、操作領域４０内における操作体の位置や動きが、操作画面７０内における位置や動きに変換される。
【０１３８】
また例えば、操作体の位置や動きが撮像画像２２内における相対的な位置や動きで表される場合（図１８参照）、認識部２０４０は、撮像画像２２内における操作体の位置や動きを表す座標を、操作画面７０内の座標へ変換する。これにより、撮像画像２２内における操作体の位置や動きが、操作画面７０内における位置や動きに変換される。
【０１３９】
なお、ある座標系における座標を別の座標系における座標に変換する方法には、既知の技術を利用できる。
【０１４０】
＜処理の流れ＞
図２１は、実施形態２の情報処理装置２０００によって実行される処理の流れを例示するフローチャートである。まず情報処理装置２０００は、入力操作の対象を含む表示画面を出力装置３０６０に出力させるトリガとなる入力操作を受け付ける（Ｓ２０２）。この入力操作は、認識部２０４０によって認識される入力操作であってもよいし、その他の入力操作であってもよい。後者の場合、例えば入力操作は、情報処理装置２０００に対して接続されている入力デバイス（スイッチやキーボードなど）に対する操作である。
【０１４１】
その後、出力制御部２０６０は、出力装置３０６０に、操作対象を含む表示画面を出力させる（Ｓ２０４）。さらに情報処理装置２０００は、図４のＳ１０２からＳ１１２の処理を行うことで、操作対象に対する入力操作を認識する。そして出力制御部２０６０は、操作結果を含む表示画面を出力装置３０６０に表示させる。
【０１４２】
操作結果を含む表示画面に次の入力操作の対象が含まれる場合（Ｓ２０６：ＹＥＳ）、図２１の処理は、Ｓ１０２に進む。一方、操作結果を含む表示画面に次の入力操作の対象が含まれない場合（Ｓ２０６：ＮＯ）、図２１の処理は終了する。
【０１４３】
＜ハードウエア構成＞
実施形態２の情報処理装置２０００を実現する計算機のハードウエア構成は、実施形態１と同様に、例えば図３によって表される。ただし、本実施形態の情報処理装置２０００を実現する計算機１０００のストレージ１０８０には、本実施形態の情報処理装置２０００の機能を実現するプログラムモジュールがさらに記憶される。また、出力装置３０６０は、入出力インタフェース１１００を介して計算機１０００に接続される。ただし、出力装置３０６０を計算機１０００に接続する方法は、入出力インタフェース１１００を介して接続する方法に限定されない。例えば出力装置３０６０は、ネットワークを介して計算機１０００に接続されてもよい。この場合、計算機１０００は、ネットワークに接続するためのネットワークインタフェースを有する。
【０１４４】
＜作用・効果＞
本実施形態によれば、出力制御部２０６０により、操作対象に関する情報が出力装置３０６０に出力される。よって、ユーザは操作対象に関する情報を参照しながら入力操作を行うことができる。こうすることで、ユーザにとって情報処理システム３０００の利便性が向上する。
【０１４５】
なお、操作対象に関する情報を出力する方法は、表示画面を出力する方法以外でもよい。例えば情報処理システム３０００は、操作対象に関する情報を音声で出力してもよい。具体的には、現在操作対象となっているデバイスの名称、そのデバイスの操作方法、操作の結果などが音声で出力される。
【０１４６】
［実施例］
実施形態２の情報処理システム３０００について、実施例を通じてさらに詳細に説明する。図２２は、実施例の情報処理システム３０００の使用環境を例示する図である。本実施例において、情報処理システム３０００は自動車９０に乗っている人（例えば運転手）によって利用される。
【０１４７】
ユーザは手首にデバイス１０を身に付ける。デバイス１０は、タッチパネル１４にマーカ画像１６を表示する。情報処理装置２０００は、マーカ画像１６をマーカ３０２０として扱う。このデバイス１０のタッチパネル１４に表示されるマーカ画像１６である。また、デバイス１０には振動センサ１８が内蔵されている。情報処理装置２０００は、この振動センサ１８をセンサ３０４０として扱う。
【０１４８】
カメラ２０は、ユーザの手が置かれる場所（例えばアームレストやハンドル）を撮像するように設置されている。以降の説明では、カメラ２０は、少なくともアームレスト周辺を撮像するように設置されているとする。
【０１４９】
出力装置３０６０は、フロントガラス９２に対して表示画面を投影するプロジェクタ９３である。プロジェクタ９３は、フロントガラス９２に対して表示画面を投影できる任意の位置（例えばダッシュボード上）に設置される。なお、プロジェクタ９３によって表示画面が投影される場所は、フロントガラス９２に限定されない。例えばプロジェクタ９３は、ハンドル上に表示画面を投影してもよい。
【０１５０】
認識部２０４０は、自動車９０に設けられている種々のデバイス（エアコンやカーナビゲーションシステム（以下、カーナビ）の制御装置、又は自動車９０のギアの変速や鍵の開閉を制御する機構）や出力制御部２０６０などに対して指令を送るための入力操作を認識する。例えば入力操作は、ユーザによって行われる。
【０１５１】
まずユーザは、フロントガラス９２にメニュー画面を表示させるための入力操作を行う。この操作は、例えば操作領域４０内の任意の場所をタップする操作である。認識部２０４０がこの操作を認識すると、出力制御部２０６０は、メニュー画面を表示する。
【０１５２】
図２３は、メニュー画面を例示する図である。メニュー画面１００には、ボタン１０２、ボタン１０４、カーソル１０６、及びメニュー１０８が含まれる。ボタン１０２及びボタン１０４は、メニュー１０８に表示される項目を変更するためのボタンである。カーソル１０６は、選択対象の項目を示すカーソルである。メニュー１０８は、選択対象の項目を列挙するメニューである。
【０１５３】
ここで、ユーザがエアコンの温度設定を行うとする。この場合、ユーザは、「エアコン操作」という項目をカーソル１０６が指すように、操作領域４０内で指を移動させる。例えばユーザは、アームレスト上に手首を置いてマーカ画像１６の位置を固定する。これにより、操作領域４０の位置が固定される。ユーザはこの状態で指を移動させる。この場合、操作領域４０は、マーカ画像から手の甲の方向へ所定距離離れた位置を中心とする矩形などである。
【０１５４】
ユーザがエアコン操作という項目を選択すると、例えば図２０に示した操作画面７０が表示される。そして、図２０を用いて説明した方法により、ユーザはエアコンの温度設定を行う。
【０１５５】
また例えば、エアコン操作は、図２４に示す操作画面１１０を用いて行われてもよい。図２４は、エアコンの操作画面の別の例を示す図である。操作画面１１０は、スクロールバー１１２、つまみ１１４、カーソル１１６、アイコン１１８、及び設定温度１１９を含む。カーソル１１６、アイコン１１８、及び設定温度１１９は、図２０のカーソル７６、アイコン７８、及び設定温度７９とそれぞれ同じである。
【０１５６】
スクロールバー１１２は、エアコンの設定温度を変更するためのインタフェースである。ユーザは、つまみ１１４を左に動かすことでエアコンの設定温度を下げ、つまみ１１４を右に動かすことでエアコンの設定温度を上げる。
【０１５７】
まずユーザは、つまみ１１４に重なる位置までカーソル１１６を移動させる。そしてユーザは、例えばつまみ１１４を左に動かす動き５０を行うことで、エアコンの設定温度を下げる。例えば動き５０は、つまみ１１４にカーソル１１６が重なっている状態において指３０でアームレストをタップし、指３０を左にスライドさせてつまみ１１４を左に動かし、指３０を再度タップしてスライド操作を終了する動きである。この場合、認識部２０４０は、前者のタップによる振動に基づく検出タイミングを検出対象時間の開始時点とし、後者のタップによる振動に基づく検出対象タイミングを検出対象時間の終了時点とする。そして認識部２０４０は、検出対象時間において行われた動き５０（スライド操作）を、入力操作として認識する。ただし前述したように、検出対象時間の定め方は検出対象タイミングを２つ用いる方法に限定されない。
【０１５８】
なお、自動車９０のフロントガラス９２に操作画面を表示する方法は、プロジェクタで投影する方法に限定されない。例えば操作画面は、車内に設置されたディスプレイ装置に表示されてもよい。図２５は、操作画面がディスプレイ装置に表示される様子を例示する図である。図２５（ａ）において、ディスプレイ装置９４は、平面視においてフロントガラス９２と重なる領域に設置されている。一方、図２５（ｂ）において、ディスプレイ装置９４は、ハンドルの中央部分に設置されている。なお、図２５（ａ）において、ディスプレイ装置９４は、フロントガラス９２と接触するように設けられてもよいし、フロントガラス９２と接触しないように設けられてもよい。
【０１５９】
表示画面をディスプレイ装置９４に表示することで、プロジェクタ等で投影する方法と比較し、表示画面の明るさなどをユーザにとって見やすい明るさなどに設定しやすいという利点がある。また、図２５（ａ）のように平面視においてフロントガラス９２と重なる領域にディスプレイ装置９４を設置することで、自動車９０の運転手が入力操作を行う際、自動車９０の進行方向を見たまま操作画面を見ることができる。よって、運転中の入力操作が容易になる。
【０１６０】
なお、ディスプレイ装置９４が設置される場所は、図２５に示した場所に限定されない。また、ディスプレイ装置９４は、カーナビのディスプレイ装置であってもよい。
【０１６１】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記各実施形態の組み合わせ、又は上記以外の様々な構成を採用することもできる。
【０１６２】
例えば認識部２０４０は、操作領域４０内ではなく、撮像画像全体から操作体の位置又は動きを検出してもよい。この場合、情報処理装置２０００は、操作領域算出部２０２０を有さなくてもよい。またこの場合、ユーザは、マーカ３０２０を身に付けなくてもよい。
【０１６３】
また例えば、センサ３０４０は、ユーザに身に付けられなくてもよい。この場合、センサ３０４０は、ユーザが情報処理システム３０００を利用する場所の付近に設けられる。例えば前述した実施例において、センサ３０４０は、自動車９０の任意の箇所に設置することができる。例えばセンサ３０４０は、自動車９０のハンドルに設けられる。
【０１６４】
ユーザは、入力操作を行うタイミング又はその前後においてセンサ３０４０による検出が行われるようにする。例えばセンサ３０４０が振動センサである場合、ユーザは、センサ３０４０が設置された場所又はその付近に対して振動を加える。例えばセンサ３０４０が自動車９０のハンドルに設けられている場合、ユーザは、入力操作をする際に手でハンドルをタップするなどの動作をする。
【０１６５】
図２６は、センサ３０４０が自動車９０のハンドルに設けられている様子を例示する図である。図２６において、振動センサ１８がハンドル９６の内部に設けられている。ユーザは、入力操作を行う際に指３２でハンドル９６をタップする。なおこの際、ユーザは、左手で入力操作を行ってもよいし、右手で入力操作を行ってもよい。ユーザが左手で入力操作を行う場合、カメラ２０は、左手付近が撮像される位置に設けられる。またこの場合、デバイス１０は、ユーザの左手の手首などに設けられる。ただし、前述したように認識部２０４０が撮像画像全体から操作体の位置や動きを検出する場合、ユーザは、デバイス１０を身に付けなくてもよい。
【０１６６】
図２７は、デバイス１０が利用されないケースを例示する図である。この場合、情報処理装置２０００は、例えば自動車９０に内蔵される。そして、認識部２０４０は、センサ３０４０によって検出される振動を取得し、所定値以上の大きさの振動が検出された場合に、その振動がユーザによって加えられたものであると判定する。そして認識部２０４０は、この振動が加えられたタイミング又はそのタイミングよりも所定時間前若しくは後の時点を、検出対象タイミングとして扱う。
【０１６７】
なお、振動センサを自動車９０に設ける場合、エンジンの振動などに起因する自動車９０の定常的な揺れによって振動センサに加わる振動と、ユーザによって振動センサに加えられる振動とを区別できることが好ましい。そのために、例えばエンジンの振動などに起因する自動車９０の定常的な揺れのパターンを示したデータを記憶装置に記憶しておく。そして認識部２０４０は、センサ３０４０によって検出される振動から、この定常的な揺れのパターンをフィルタリングし、フィルタリング後の振動について、所定値以上の大きさの振動の検出を行う。認識部２０４０は、フィルタリング後の振動から所定値以上の大きさの振動が検出された場合、入力操作の認識を行う。こうすることで、自動車９０の定常的な揺れに起因して認識部２０４０による入力操作の認識が行われてしまうことを防ぐことができる。つまり、入力操作の誤検出を防ぐことができる。
【０１６８】
また例えば、振動センサを自動車９０に設ける場合、情報処理システム３０００は、エンジンの振動などに起因する定常的な揺れがセンサ３０４０によって検出される間、入力操作を認識しないように構成されてもよい。例えば前述したように、エンジンの振動などに起因する自動車９０の定常的な揺れのパターンを示したデータを記憶装置に記憶しておく。そして認識部２０４０は、この定常的な揺れのパターンが検出される間は、所定値以上の大きさの振動が検出されても、入力操作の認識を行わない。
【０１６９】
このように、エンジンの振動などに起因する定常的な揺れがセンサ３０４０によって検出される間は入力操作を認識しない情報処理システム３０００は、エンジンが停止している時に入力操作を認識する。ここで、自動車９０にアイドリングストップの機能が設けられていると、自動車９０のエンジンは、停車中や信号待ちの間に停止する。よって、情報処理システム３０００は、自動車９０のエンジンが始動していない場合やアイドリングストップ機能が作動している場合、つまりは自動車９０が移動していない場合に、入力操作を受け付けることとなる。こうすることで、ユーザはより安全に情報処理システム３０００を利用することができる。なお、自動車９０はアイドリングストップ機能を備えなくてもよい。
【０１７０】
なお自動車９０などにセンサ３０４０を設ける場合であっても、センサ３０４０は振動センサに限定されない。例えば、センサ３０４０が静電容量センサである場合、ユーザは、センサ３０４０が設置されている場所に触れることで、センサ３０４０に静電容量の変化を検出させる。また例えば、センサ３０４０が圧力センサである場合、ユーザは、センサ３０４０が設置されている場所に圧力を加えることで、センサ３０４０に圧力を検出させる。
【０１７１】
以下、参考形態の例を付記する。
１．  ユーザに身につけられるか、又はユーザの身体の一部であるマーカと、
ユーザに身に付けられるセンサと、
情報処理装置と、を有し、
前記情報処理装置は、
カメラによって生成された撮像画像に写っている前記マーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出手段と、
前記センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識手段と、
を有する情報処理システム。
２．  前記マーカは前記ユーザの腕部に身につけられ、
前記操作体は、前記腕部の一部であるか、又は前記腕部によって保持される物体である、
１．に記載の情報処理システム。
３．  前記マーカは前記腕部に含まれる手首に身につけられ、
前記操作領域算出手段は、前記マーカの位置から前記腕部に含まれる手のひらの方向へ所定距離離れた位置を含むように、前記操作領域を算出する、
２．に記載の情報処理システム。
４．  前記マーカは、前記ユーザに身につけられているデバイスのディスプレイ装置に表示される画像であり、
前記センサは前記デバイスに設けられている、
１．乃至３．いずれか一つに記載の情報処理システム。
５．  当該情報処理システムは、画面を出力する出力装置を有し、
前記情報処理装置は、前記認識手段によって認識される入力操作の操作対象を含む画面を前記出力装置に出力させる出力制御手段を有する、１．乃至４．いずれか一つに記載の情報処理システム。
６．  前記出力装置は、乗り物の窓の一部と重なる領域へ前記画面を出力するようにその乗り物に設置される、５．に記載の情報処理システム。
７．  前記出力制御手段が前記出力装置に出力させる前記画面は、前記乗り物に搭載されているデバイスを操作するための操作画面である、６．に記載の情報処理システム。
８．  カメラによって生成された撮像画像に写っているマーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出手段と、
センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識手段と、を有し、
前記マーカは、ユーザに身につけられるか、又はユーザの身体の一部であり、
前記センサは、ユーザに身に付けられる、情報処理装置。
９．  前記マーカは前記ユーザの腕部に身につけられ、
前記操作体は、前記腕部の一部であるか、又は前記腕部によって保持される物体である、
８．に記載の情報処理装置。
１０．  前記マーカは前記腕部に含まれる手首に身につけられ、
前記操作領域算出手段は、前記マーカの位置から前記腕部に含まれる手のひらの方向へ所定距離離れた位置を含むように、前記操作領域を算出する、
９．に記載の情報処理装置。
１１．  前記マーカは、前記ユーザに身につけられているデバイスのディスプレイ装置に表示される画像であり、
前記センサは前記デバイスに設けられている、
８．乃至１１．いずれか一つに記載の情報処理装置。
１２．  前記認識手段によって認識される入力操作の操作対象を含む画面を出力装置に出力させる出力制御手段を有する、８．乃至１１．いずれか一つに記載の情報処理装置。
１３．  前記出力装置は、乗り物の窓の一部と重なる領域へ前記画面を出力するようにその乗り物に設置される、１２．に記載の情報処理装置。
１４．  前記出力制御手段が前記出力装置に出力させる前記画面は、前記乗り物に搭載されているデバイスを操作するための操作画面である、１３．に記載の情報処理装置。
１５．  コンピュータによって実行される制御方法であって、
カメラによって生成された撮像画像に写っているマーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出ステップと、
センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識ステップと、
を有し、
前記マーカは、ユーザに身につけられるか、又はユーザの身体の一部であり、
前記センサは、ユーザに身に付けられる、制御方法。
１６．  前記マーカは前記ユーザの腕部に身につけられ、
前記操作体は、前記腕部の一部であるか、又は前記腕部によって保持される物体である、
１５．に記載の制御方法。
１７．  前記マーカは前記腕部に含まれる手首に身につけられ、
前記操作領域算出ステップは、前記マーカの位置から前記腕部に含まれる手のひらの方向へ所定距離離れた位置を含むように、前記操作領域を算出する、
１６．に記載の制御方法。
１８．  前記マーカは、前記ユーザに身につけられているデバイスのディスプレイ装置に表示される画像であり、
前記センサは前記デバイスに設けられている、
１５．乃至１７．いずれか一つに記載の制御方法。
１９．  前記制御方法は、前記認識ステップによって認識される入力操作の操作対象を含む画面を出力装置に出力させる出力制御ステップを有する、１５．乃至１８．いずれか一つに記載の制御方法。
２０．  前記出力装置は、乗り物の窓の一部と重なる領域へ前記画面を出力するようにその乗り物に設置される、１９．に記載の制御方法。
２１．  前記出力制御ステップが前記出力装置に出力させる前記画面は、前記乗り物に搭載されているデバイスを操作するための操作画面である、２０．に記載の制御方法。
２２．  カメラによって生成された撮像画像に写っているマーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出ステップと、
センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識ステップと、をコンピュータに実行させ、
前記マーカは、ユーザに身につけられるか、又はユーザの身体の一部であり、
前記センサは、ユーザに身に付けられる、プログラム。
２３．  前記マーカは前記ユーザの腕部に身につけられ、
前記操作体は、前記腕部の一部であるか、又は前記腕部によって保持される物体である、
２２．に記載のプログラム。
２４．  前記マーカは前記腕部に含まれる手首に身につけられ、
前記操作領域算出ステップは、前記マーカの位置から前記腕部に含まれる手のひらの方向へ所定距離離れた位置を含むように、前記操作領域を算出する、
２３．に記載のプログラム。
２５．  前記マーカは、前記ユーザに身につけられているデバイスのディスプレイ装置に表示される画像であり、
前記センサは前記デバイスに設けられている、
２２．乃至２４．いずれか一つに記載のプログラム。
２６．  前記認識ステップによって認識される入力操作の操作対象を含む画面を出力装置に出力させる出力制御ステップをコンピュータに実行させる、１５．乃至１８．いずれか一つに記載のプログラム。
２７．  前記出力装置は、乗り物の窓の一部と重なる領域へ前記画面を出力するようにその乗り物に設置される、２６．に記載のプログラム。
２８．  前記出力制御ステップが前記出力装置に出力させる前記画面は、前記乗り物に搭載されているデバイスを操作するための操作画面である、２９．に記載のプログラム。
【０１７２】
この出願は、２０１６年２月８日に出願された日本出願特願２０１６−０２１５７５号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2017138545.tif 000003
【図２】
2017138545.tif 000004
【図３】
2017138545.tif 000005
【図４】
2017138545.tif 000006
【図５】
2017138545.tif 000007
【図６】
2017138545.tif 000008
【図７】
2017138545.tif 000009
【図８】
2017138545.tif 000010
【図９】
2017138545.tif 000011
【図１０】
2017138545.tif 000012
【図１１】
2017138545.tif 000013
【図１２】
2017138545.tif 000014
【図１３】
2017138545.tif 000015
【図１４】
2017138545.tif 000016
【図１５】
2017138545.tif 000017
【図１６】
2017138545.tif 000018
【図１７】
2017138545.tif 000019
【図１８】
2017138545.tif 000020
【図１９】
2017138545.tif 000021
【図２０】
2017138545.tif 000022
【図２１】
2017138545.tif 000023
【図２２】
2017138545.tif 000024
【図２３】
2017138545.tif 000025
【図２４】
2017138545.tif 000026
【図２５】
2017138545.tif 000027
【図２６】
2017138545.tif 000028
【図２７】
2017138545.tif 000029
【手続補正書】
【提出日】平成30年3月22日(2018.3.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザに身につけられるか、又はユーザの身体の一部であるマーカと、
ユーザに身に付けられるセンサと、
情報処理装置と、
画面を出力する出力装置と、を有し、
前記情報処理装置は、
カメラによって生成された撮像画像に写っている前記マーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出手段と、
前記センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識手段と、
前記認識手段によって認識される入力操作の操作対象を含む画面を前記出力装置に出力させる出力制御手段と、
を有し、
前記出力装置は、乗り物の窓の一部と重なる領域へ前記画面を出力するようにその乗り物に設置される、情報処理システム。
【請求項２】
前記マーカは前記ユーザの腕部に身につけられ、
前記操作体は、前記腕部の一部であるか、又は前記腕部によって保持される物体である、
請求項１に記載の情報処理システム。
【請求項３】
前記マーカは前記腕部に含まれる手首に身につけられ、
前記操作領域算出手段は、前記マーカの位置から前記腕部に含まれる手のひらの方向へ所定距離離れた位置を含むように、前記操作領域を算出する、
請求項２に記載の情報処理システム。
【請求項４】
前記マーカは、前記ユーザに身につけられているデバイスのディスプレイ装置に表示される画像であり、
前記センサは前記デバイスに設けられている、
請求項１乃至３いずれか一項に記載の情報処理システム。
【請求項５】
前記出力制御手段が前記出力装置に出力させる前記画面は、前記乗り物に搭載されているデバイスを操作するための操作画面である、請求項１乃至４いずれか一項に記載の情報処理システム。
【請求項６】
カメラによって生成された撮像画像に写っているマーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出手段と、
センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識手段と、
前記認識手段によって認識される入力操作の操作対象を含む画面を、画面を出力する出力装置に出力させる出力制御手段と、を有し、
前記マーカは、ユーザに身につけられるか、又はユーザの身体の一部であり、
前記センサは、ユーザに身に付けられ、
前記出力装置は、乗り物の窓の一部と重なる領域へ前記画面を出力するようにその乗り物に設置される、情報処理装置。
【請求項７】
コンピュータによって実行される制御方法であって、
カメラによって生成された撮像画像に写っているマーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出ステップと、
センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識ステップと、
前記認識ステップによって認識される入力操作の操作対象を含む画面を、画面を出力する出力装置に出力させる出力制御ステップと、
を有し、
前記マーカは、ユーザに身につけられるか、又はユーザの身体の一部であり、
前記センサは、ユーザに身に付けられ、
前記出力装置は、乗り物の窓の一部と重なる領域へ前記画面を出力するようにその乗り物に設置される、制御方法。
【請求項８】
カメラによって生成された撮像画像に写っているマーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出ステップと、
センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識ステップと、
前記認識ステップによって認識される入力操作の操作対象を含む画面を、画面を出力する出力装置に出力させる出力制御ステップと、をコンピュータに実行させ、
前記マーカは、ユーザに身につけられるか、又はユーザの身体の一部であり、
前記センサは、ユーザに身に付けられ、
前記出力装置は、乗り物の窓の一部と重なる領域へ前記画面を出力するようにその乗り物に設置される、プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明の情報処理システムは、１）ユーザに身につけられるか、又はユーザの身体の一部であるマーカと、２）ユーザに身に付けられるセンサと、３）情報処理装置と、４）画面を出力する出力装置と、を有する。
前記情報処理装置は、１）カメラによって生成された撮像画像に写っている前記マーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出手段と、２）前記センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識手段と、３）前記認識手段によって認識される入力操作の操作対象を含む画面を前記出力装置に出力させる出力制御手段と、を有する。
また、前記出力装置は、乗り物の窓の一部と重なる領域へ前記画面を出力するようにその乗り物に設置される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
本発明の制御方法は、コンピュータによって実行される。当該制御方法は、１）カメラによって生成された撮像画像に写っているマーカの位置に基づいて、前記撮像画像に含まれる操作領域を算出する操作領域算出ステップと、２）センサの検出結果に基づくタイミングにおいて前記操作領域内に写っている操作体の位置を検出するか、又は前記タイミングを含む時間において前記操作領域内に写っている前記操作体の動きを検出し、前記検出した位置若しくは動きに基づいて入力操作を認識する認識ステップと、３）前記認識ステップによって認識される入力操作の操作対象を含む画面を、画面を出力する出力装置に出力させる出力制御ステップと、を有する。
そして、３）前記マーカは、ユーザに身につけられるか、又はユーザの身体の一部であり、４）前記センサは、ユーザに身に付けられる。また、前記出力装置は、乗り物の窓の一部と重なる領域へ前記画面を出力するようにその乗り物に設置される。
【国際調査報告】
2017138545.tif 000030
2017138545.tif 000031
2017138545.tif 000032
2017138545.tif 000033