(57)【要約】【課題】単眼の可視カメラにより取得した画像を用いてモーションセンシングを行うこと。【解決手段】移動体の所定の動作に応じて情報処理装置１に所定の処理を実行させるための情報を記憶する記憶部と、可視カメラ１０６から取得した第１の画像と、第１の画像の前後に取得した第２の画像とを対比することにより第１の画像および第２の画像のいずれかにボケが存在するか否かを判断し、ボケが存在する場合にボケの位置の移動方向を特定して移動体の動作を判断し、記憶部を参照して動作に応じた処理を当該情報処理装置１に実行させるアプリケーション制御部と、を有する。【選択図】図１
2020173521.tif 000002
【特許請求の範囲】
【請求項１】
移動体の所定の動作に応じて当該情報処理装置に所定の処理を実行させるための情報を記憶する記憶部と、
撮像装置から取得した第１の画像と、前記第１の画像の前後に取得した第２の画像とを対比することにより前記第１の画像および前記第２の画像のいずれかにボケが存在するか否かを判断し、ボケが存在する場合にボケの位置の移動方向を特定して前記移動体の動作を判断し、前記記憶部を参照して前記動作に応じた処理を当該情報処理装置に実行させる制御部と、
を有することを特徴とする情報処理装置。
【請求項２】
前記制御部は、前記第１の画像と前記第２の画像とでエッジが存在する部位の変化がある場合にボケが存在すると判断する請求項１に記載の情報処理装置。
【請求項３】
前記制御部は、前記第１の画像と前記第２の画像の輝度差分を用いて前記移動体の動作を判断し、前記記憶部を参照して前記動作に応じた処理を当該情報処理装置に実行させる請求項１に記載の情報処理装置。
【請求項４】
コンピュータが、
撮像装置から取得した第１の画像と、前記第１の画像の前後に取得した第２の画像とを対比することにより前記第１の画像および前記第２の画像のいずれかにボケが存在するか否かを判断し、
ボケが存在する場合にボケの位置の移動方向を特定して前記移動体の動作を判断し、
前記動作に応じた処理を当該情報処理装置に実行させる、
ことを特徴とする情報処理方法。
【請求項５】
コンピュータに、
撮像装置から取得した第１の画像と、前記第１の画像の前後に取得した第２の画像とを対比することにより前記第１の画像および前記第２の画像のいずれかにボケが存在するか否かを判断し、
ボケが存在する場合にボケの位置の移動方向を特定して前記移動体の動作を判断し、
前記動作に応じた処理を当該情報処理装置に実行させる、
処理を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
非接触で、かつ、手の回転動作により入力情報を入力できる技術が知られている。例えば、画像に含まれる棒状の先端部の回転動作により、遊技者の入力情報を受け付ける画像処理装置であって、画像内に含まれる棒状の先端部の座標位置を取得する先端部座標取得手段と、画像を所定の棒状の先端部の回転動作の中心として設定される中心位置を基準として、回転角度に応じて、画像を複数のエリアに区分するとき、先端部座標取得手段により取得された先端部座標が属するエリアが隣接するエリアに移動するとき、回転動作の回転方向、および回転速度を計測し、回転動作による入力情報として出力する計測手段と、回転動作が１周する場合、順次先端部座標取得手段により取得される座標位置の重心位置を計算する重心位置計算手段と、重心位置に、中心位置を移動させるように、画像が区分されたエリアを移動させてエリアを補正する補正量を計算する補正手段とを含む画像処理装置が知られている。
また、手を振る事等を認識するモーションセンシングに関しては、深度センサや近接センサ、またはステレオ式の可視カメラ等を用いる手法が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１２８７６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
深度センサや近接センサ、また、ステレオ式の可視カメラ等を使用せず、広く普及しているノートＰＣ（Personal Computer）やタブレット等が実装している単眼の可視カメラや、ＵＳＢ（Universal Bus）等接続可能な単眼の可視カメラを用いてモーションセンシングができれば便宜である。
１つの側面では、本発明は、単眼の可視カメラにより取得した画像を用いてモーションセンシングを行うことを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、開示の情報処理装置が提供される。この情報処理装置は、移動体の所定の動作に応じて当該情報処理装置に所定の処理を実行させるための情報を記憶する記憶部と、撮像装置から取得した第１の画像と、第１の画像の前後に取得した第２の画像とを対比することにより第１の画像および第２の画像のいずれかにボケが存在するか否かを判断し、ボケが存在する場合にボケの位置の移動方向を特定して移動体の動作を判断し、記憶部を参照して動作に応じた処理を当該情報処理装置に実行させる制御部と、を有している。
【発明の効果】
【０００６】
１態様では、単眼の可視カメラにより取得した画像を用いてモーションセンシングを行うことができる。
【図面の簡単な説明】
【０００７】
【図１】実施の形態の情報処理装置を示す図である。
【図２】実施の形態の情報処理装置のハードウェア構成を示す図である。
【図３】実施の形態の情報処理装置の機能を示すブロック図である。
【図４】記憶部が記憶する情報の一例を説明する図である。
【図５】記憶部が記憶する情報の一例を説明する図である。
【図６】ボケ領域およびモーションを説明する図である。
【図７】エッジの検出の判断を説明する図である。
【図８】状況に応じてアプリケーション制御部が実行する処理を説明する図である。
【図９】アプリケーション制御部の処理を説明するフローチャートである。
【図１０】モーション検出処理を説明するフローチャートである。
【図１１】第１センシング処理を説明するフローチャートである。
【図１２】第２センシング処理を説明するフローチャートである。
【図１３】記憶部が記憶する情報の一例を説明する図である。
【図１４】移動方向判定処理を説明するフローチャートである。
【発明を実施するための形態】
【０００８】
以下、実施の形態の情報処理装置を、図面を参照して詳細に説明する。
【０００９】
以下の図面等において示す各構成の位置、大きさ、形状、範囲などは、発明の理解を容易にするため、実際の位置、大きさ、形状、範囲などを表していない場合がある。このため、本発明は、必ずしも、図面等に開示された位置、大きさ、形状、範囲等に限定されない。
実施の形態において単数形で表される要素は、文面で明らかに示されている場合を除き、複数形を含むものとする。
＜実施の形態＞
図１は、実施の形態の情報処理装置を示す図である。
【００１０】
実施の形態の情報処理装置（コンピュータ）１は、撮像装置が撮像した画像を用いて移動体の特定の動作を解析（モーションセンシング）することにより、情報処理装置１に所定の処理を実行させるソフトウェアを実装している。
移動体としては、例えば操作者（ユーザ）や機械が挙げられる。
情報処理装置１としては、例えば設置型のＰＣやタブレットやスマートフォン等の携帯端末装置等が挙げられる。
【００１１】
図１に示す情報処理装置１が有するディスプレイ１０４ａの画面内には、作業指示書等の電子文書が表示されている。また、ディスプレイ１０４ａの縁部には、単眼の可視カメラ１０６が配置されている。
【００１２】
この情報処理装置１を操作者が使用するシーンの一例としては、情報処理装置１の近傍で何らかの作業をしており、情報処理装置１を操作したいが手が汚れている、濡れている等の理由で直接情報処理装置１に触れることが困難な場合が挙げられる。また、他の例としては、衛生面上、キーボードやマウス等の入力装置に触れられない、触れたくない等の状況が挙げられる。
【００１３】
このような状況において操作者が情報処理装置１に所定の動作を実行させる場合には、例えば、操作者がディスプレイ１０４ａの近傍にて右手を右側から左側に素早く移動させる。これにより、可視カメラ１０６が撮像した画像内にボケが発生する。情報処理装置１は、このボケの発生及びボケが発生した箇所の遷移に応じて操作者の特定の動作を判断し、動作に応じた処理を実行する。図１では電子文書のページをめくる処理を実行する。
この情報処理装置１にて認識可能な動作としては、これに限らず、例えば上下方向の動作や、所定の図形を描画する等が挙げられる。
【００１４】
また、図１に示す例では、情報処理装置１は電子文書のページをめくる処理を実行する例を説明した。しかし、情報処理装置１に実行させる処理はこれに限らず、任意の処理を実行させることができる。また、情報処理装置１以外の他の電子機器に所定の動作を実行させるようにしてもよい。
【００１５】
また、図１に示す例では、ボケを発生させる移動体として手を用いているが、移動体はこれに限らず顔や足等、人体の他の部位や、ペンなどの棒状体を用いることができる。
以下、開示の情報処理装置をより具体的に説明する。
図２は、実施の形態の情報処理装置のハードウェア構成を示す図である。
情報処理装置１は、ＣＰＵ（Central Processing Unit）１０１によって装置全体が制御されている。
ＣＰＵ１０１には、バス１０８を介してＲＡＭ（Random Access Memory）１０２と複数の周辺機器が接続されている。
【００１６】
ＲＡＭ１０２は、情報処理装置１の主記憶装置として使用される。ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に使用する各種データが格納される。
【００１７】
バス１０８には、内蔵メモリ１０３、グラフィック処理装置１０４、入力インタフェース１０５、可視カメラ１０６および通信インタフェース１０７が接続されている。
【００１８】
内蔵メモリ１０３は、データの書き込みおよび読み出しを行う。内蔵メモリ１０３は、情報処理装置１の二次記憶装置として使用される。内蔵メモリ１０３には、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。なお、内蔵メモリとしては、例えばフラッシュメモリ等の半導体記憶装置が挙げられる。
【００１９】
グラフィック処理装置１０４には、ディスプレイ１０４ａが接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をディスプレイ１０４ａの画面に表示させる。ディスプレイ１０４ａとしては、液晶表示装置等が挙げられる。また、ディスプレイ１０４ａは、タッチパネル機能も備えていてもよい。
【００２０】
入力インタフェース１０５には、キーボード１０５ａとマウス１０５ｂとが接続されている。入力インタフェース１０５は、キーボード１０５ａやマウス１０５ｂから送られてくる信号をＣＰＵ１０１に送信する。なお、マウス１０５ｂは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、例えばタッチパネル、タブレット、タッチパッド、トラックボール等が挙げられる。
【００２１】
可視カメラ１０６は、単眼のカメラであり、例えばディスプレイ１０４ａの上部（縁部）に配置されている。可視カメラ１０６は、撮像した動画像をＣＰＵ１０１に送る。
【００２２】
通信インタフェース１０７は、ネットワーク５０に接続されている。通信インタフェース１０７は、ネットワーク５０を介して、他のコンピュータまたは通信機器との間でデータを送受信する。
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
【００２３】
なお、情報処理装置１が可視カメラ１０６を有していなくてもよい。その場合、例えば数千円程度で購入できるＵＳＢ接続可能な単眼の可視カメラを情報処理装置１に接続することで代用できる。このように、可視カメラのセットアップは手軽にできる。
図２に示すようなハードウェア構成の情報処理装置１内には、以下のような機能が設けられる。
図３は、実施の形態の情報処理装置の機能を示すブロック図である。
情報処理装置１は、記憶部１１とアプリケーション制御部１２とＯＳ１３とを有している。
【００２４】
記憶部１１には、所定のモーションに応じてＯＳ１３に所定の処理を実行させるためのキーコード（識別情報）が記憶されている。また、記憶部１１には、可視カメラ１０６が撮像した画像が記憶される。また、記憶部１１には、ボケを検出する対象の画像か否かを識別する情報が記憶される。
図４および図５は、記憶部が記憶する情報の一例を説明する図である。
図４に示すモーションテーブルＴ１には、モーションおよびキーコードの欄が設けられている。横方向に並べられた情報同士が互いに関連付けられている。
モーションの欄には、アプリケーション制御部１２が検出可能なモーションの種別が設定されている。
【００２５】
キーコードの欄には、モーションに応じてＯＳ１３に送信するキーコードが設定されている。このキーコードがＯＳ１３に送信されると、ＯＳ１３は、キーコードに応じた処理（例えば画面遷移等）を実行する。
【００２６】
図５に示すエッジデータ管理テーブルＴ２には、フレームＩＤ、エッジデータ、およびボケ検出対象画像の欄が設けられている。横方向に並べられた情報同士が互いに関連付けられている。
【００２７】
エッジデータ管理テーブルＴ２は、リングバッファ構造になっており、最近の４つのフレームに関するデータが記憶される。このエッジデータ管理テーブルＴ２に記憶されるデータは、アプリケーション制御部１２がボケの検出をする際に使用する。なお、記憶される画像のフレーム数は４フレームに限定されない。
フレームＩＤの欄には、当該フレームを識別するＩＤが設定される。
エッジデータの欄には、当該フレームが備えるエッジに関するデータ（画像内のエッジ分布等）が記憶される。
ボケ検出対象画像の欄には、当該フレームがボケ検出対象画像か否かを識別する情報が設定される。
再び図３に戻って説明する。
アプリケーション制御部１２は、可視カメラ１０６から取得した画像にボケ領域（ボケが発生している領域が閾値以上の領域）が存在するか否かを判断する。
以下、ボケ領域について図を用いて説明する。
図６は、ボケ領域およびモーションを説明する図である。
モノクロ画像にて、操作者が右側から左側へ手を振っている事は明白であるが、画像処理にてエッジ化した二値画像でもそれは明白である。
【００２８】
本実施の形態では、可視カメラ１０６から取得した画像の連続する複数のフレーム毎にエッジを検出する。アプリケーション制御部１２は、検出したエッジを用いることで、ボケの発生およびその領域を推定する。
【００２９】
具体的には、アプリケーション制御部１２は、今回（最新）および過去３フレーム（以下、「処理対象４フレーム」とも言う）の画像のグレースケール画像に変換する。そして、変換したグレースケール画像に含まれるエッジを検出する。図６においては、顔の輪郭や肩の部位等においてエッジが検出されている。
【００３０】
移動体（図６においては手）がエッジの前面を通過した箇所はボケが発生し、エッジが取得されない（取得できなくなる）。図６においては、３つ前のフレームにおいて左肩部分のエッジが検出できていない。顔部分のエッジはほぼ検出できている。これに対し、２つ前のフレームにおいて顔の左側部分のエッジが検出できていない。また、１つ前のフレームにおいて顔の右側部分および右肩部分のエッジが検出できていない。最新フレームにおいて顔の大部分のエッジが検出できている。右肩部分のエッジが検出できていない。アプリケーション制御部１２は、処理対象４フレームの画像を対比し、エッジが取得できなくなった領域が所定の面積以上である場合、処理対象４フレームにはいずれもボケ領域が存在すると判断する。
図７は、エッジの検出の判断を説明する図である。
【００３１】
図７（ａ）は、可視カメラ１０６から取得した画像からアプリケーション制御部１２がエッジを検出できると判断した画像の例である。図７（ｂ）は、アプリケーション制御部１２がエッジを検出できないと判断した画像の例である。エッジが検出できるか否かを判定する方法としては、顔認識等の手法を用いてもよい。具体的には、顔認識ができた場合にはエッジが検出できると判断する。他の簡易的な処理としては、画像を３２×３２等、任意の数のエリアに区分けし、エッジを含むエリア数が所定数以上である場合にエッジが検出できると判断してもよい。アプリケーション制御部１２は、エッジが検出できた画像を、ボケ検出対象の画像であると判定する。再び図６に戻って説明する。
【００３２】
アプリケーション制御部１２は、今回および過去３フレームのうち、ボケ領域が存在するフレームを判断するために、フレーム毎に用意された固有の値（固有値）を用いてフレーム内の所定のエリア毎に、エッジの有無のＯＲ（排他的論理和）を取る処理を実行する。エリアは、画素単体であってもよいし、複数画素の集合体であってもよい。
【００３３】
なお、固有値は一例として、今回のフレームの固有値を「１」、１つ前のフレームの固有値を「２」、２つ前のフレームの固有値を「４」、３つ前のフレームの固有値を「８」とする。
【００３４】
アプリケーション制御部１２は、各フレームにおけるエッジが存在しないエリアには「０」を、エッジが存在するエリアには各固有値を割り当てる。逆の割り当て方法でもよい。
【００３５】
例えば、フレーム内のあるエリアにおいて、処理対象４フレームの合成画像の固有値の合計が「１４（２＋４＋８）」である場合、「過去３フレームの当該エリアにはいずれもエッジが存在している、すなわち、ボケが発生しておらず、今フレームにてエッジが存在しない、すなわち、ボケが発生している」、と判断できる。
【００３６】
この手法にて、アプリケーション制御部１２は、処理対象４フレームそれぞれにおいてボケが発生しているエリアを特定する。そして、アプリケーション制御部１２は、特定したエリアの面積に応じてボケ領域が存在するか否かを判断する。
【００３７】
ボケ領域が存在する場合にアプリケーション制御部１２は、ボケ領域の遷移に応じてモーションを判断する。例えば、ある程度の大きさをもったボケ領域が画面の右から左に遷移していく場合は、操作者が右から左に手を振っていると判断することができる。
そして、アプリケーション制御部１２は、モーションテーブルＴ１を参照して対応するキーコードをＯＳ１３に送信する。
ところでアプリケーション制御部１２は、ボケ領域の遷移に応じたモーションの判断とは別個に、輝度差分を用いたモーションの判断を行うこともできる。
図８は、状況に応じてアプリケーション制御部が実行する処理を説明する図である。
【００３８】
図８（ａ）は、ディスプレイ１０４ａの近傍において、操作者が右側から左側に素早く右手を移動させている。取得した画像からアプリケーション制御部１２がエッジを検出できると判断した場合、アプリケーション制御部１２は、ボケ領域の遷移に応じて移動体の移動方向を求め、かつ、輝度差分を用いて移動体の移動方向を求める処理を実行することができる。これにより、より精度の高い移動方向の特定が可能である。なお、輝度差分を用いて移動体の移動方向を求める処理については、後に詳述する。
【００３９】
図８（ｂ）は、ディスプレイ１０４ａから離れた位置において、操作者が右側から左側に素早く右手を移動させている。この場合もアプリケーション制御部１２は、ボケ領域の遷移に応じて移動体の移動方向を求め、かつ、輝度差分を用いて移動体の移動方向を求める処理を実行する。距離が離れすぎると、ボケ領域が抽出できずに情報処理装置１が操作者の動作を識別できずに情報処理装置１は所定の動作を実行しない。このようにすることで、例えばディスプレイ１０４ａから離れた位置で人が通り過ぎた場合にも画面が切り替わってしまう等の誤動作を抑制することができる。
【００４０】
図８（ｃ）は、ディスプレイ１０４ａの近傍において操作者が、右側から左側に素早く右手を移動させている。しかし、可視カメラ１０６が撮像した画像には操作者が写っておらずエッジが検出できない例を示している。この場合、アプリケーション制御部１２は、輝度差分を用いて移動体の移動方向を求める処理を実行する。
【００４１】
次に、アプリケーション制御部１２の処理を、フローチャートを用いて説明する。なお、以下のフローチャートは一例であり、一部の処理を省略したり、他の処理に置換したりしてもよい。また、一部の処理の手順を入れ替えてもよい。
図９は、アプリケーション制御部の処理を説明するフローチャートである。
［ステップＳ１］  アプリケーション制御部１２は、可視カメラ１０６が取得した画像の入力を待機する。
【００４２】
［ステップＳ２］  アプリケーション制御部１２は、可視カメラ１０６が取得した画像を用いて所定のモーションを検出するモーション検出処理を実行する。なお、モーション検出処理については、後に詳述する。
【００４３】
［ステップＳ３］  アプリケーション制御部１２は、モーションテーブルＴ１を参照し、ステップＳ２のモーション検出処理にて所定のモーションが検出できたか否かを判断する。ステップＳ２のモーション検出処理にて所定のモーションが検出できた場合（ステップＳ３のＹｅｓ）、ステップＳ４に遷移する。ステップＳ２のモーション検出処理にて所定のモーションが検出できていない場合（ステップＳ３のＮｏ）、ステップＳ５に遷移する。
【００４４】
［ステップＳ４］  アプリケーション制御部１２は、モーションテーブルＴ１を参照し、モーションに対応するキーコードをＯＳ１３に送信する。その後、ステップＳ５に遷移する。
【００４５】
［ステップＳ５］  アプリケーション制御部１２は、アプリケーションプログラムの終了要求（プログラム終了要求）を受け取ったか否かを判断する。プログラム終了要求を受け取った場合（ステップＳ５のＹｅｓ）、図９の処理を終了する。プログラム終了要求を受け取っていない場合（ステップＳ５のＮｏ）、ステップＳ１に遷移し、ステップＳ１以降の処理を引き続き実行する。
次に、ステップＳ２におけるモーション検出処理を説明する。
図１０は、モーション検出処理を説明するフローチャートである。
［ステップＳ２１］  アプリケーション制御部１２は、可視カメラ１０６が取得した画像をグレースケールに変換する。その後、ステップＳ２２に遷移する。
【００４６】
［ステップＳ２２］  アプリケーション制御部１２は、可視カメラ１０６から取得した画像のエッジを用いて移動体の移動方向を求める処理（以下、第１センシング処理と言う）を実行する。その後、ステップＳ２３に遷移する。
【００４７】
［ステップＳ２３］  アプリケーション制御部１２は、輝度差分を用いて移動体の移動方向を求める処理（以下、第２センシング処理と言う）を実行する。その後、モーション検出処理を終了する。
次に、ステップＳ２２の第１センシング処理を説明する。
図１１は、第１センシング処理を説明するフローチャートである。
【００４８】
［ステップＳ２２ａ］  アプリケーション制御部１２は、ステップＳ２１にて変換したグレースケールの画像に含まれるエッジを抽出した二値画像を作成する。その後ステップＳ２２ｂに遷移する。
【００４９】
［ステップＳ２２ｂ］  アプリケーション制御部１２は、ステップＳ２２ａにて作成した画像内のエッジの分布を求める。その後、ステップＳ２２ｃに遷移する。
【００５０】
［ステップＳ２２ｃ］  アプリケーション制御部１２は、ステップＳ２２ｂにて求めた分布から例えば図６および図７にて説明した方法を用いてボケ検出対象の画像（ボケ検出対象画像）であるか否かを判定する。その後、ステップＳ２２ｄに遷移する。
【００５１】
［ステップＳ２２ｄ］  アプリケーション制御部１２は、エッジデータ管理テーブルＴ２のボケ検出対象画像の欄を参照する。そして、アプリケーション制御部１２は、処理対象４フレームのいずれかがボケ検出対象画像であるか否かを判断する。処理対象４フレームのいずれかがボケ検出対象画像である場合（ステップＳ２２ｄのＹｅｓ）、ステップＳ２２ｅに遷移する。処理対象４フレームのいずれもボケ検出対象画像ではない場合（ステップＳ２２ｄのＮｏ）、ステップＳ２２ｇに遷移する。
【００５２】
［ステップＳ２２ｅ］  アプリケーション制御部１２は、処理対象４フレームにいずれもボケ領域が存在するか否かを判断する。処理対象４フレームにいずれもボケ領域が存在する場合（ステップＳ２２ｅのＹｅｓ）、ステップＳ２２ｆに遷移する。処理対象４フレームのうちいずれかにボケ領域が存在しない場合（ステップＳ２２ｅのＮｏ）、ステップＳ２２ｇに遷移する。
【００５３】
［ステップＳ２２ｆ］  アプリケーション制御部１２は、ボケの移動方向を判定する処理（第１移動方向判定処理）を実行する。領域の移動方向の推定については、従来公知の方法を用いることができるため、詳細な説明を省略する。その後、ステップＳ２２ｇに遷移する。
【００５４】
［ステップＳ２２ｇ］  アプリケーション制御部１２は、今回のフレームのエッジデータをエッジデータ管理テーブルＴ２に記憶する。その後、第１センシング処理を終了する。
次に、ステップＳ２３の第２センシング処理を説明する。
図１２は、第２センシング処理を説明するフローチャートである。
【００５５】
［ステップＳ２３ａ］  アプリケーション制御部１２は、ステップＳ２１のグレースケール画像と、１フレーム前のグレースケール画像との輝度差にて二値画像を作成する。その後、ステップＳ２３ｂに遷移する。
【００５６】
［ステップＳ２３ｂ］  アプリケーション制御部１２は、ステップＳ２３ａにて作成した二値画像から、結合画素数の小さいものをノイズ要素として除去する。その後、ステップＳ２３ｃに遷移する。これにより、移動している画素の集合の要素（動体要素）が求まる。
【００５７】
［ステップＳ２３ｃ］  アプリケーション制御部１２は、今回のフレームの移動データを計算する。移動データは、移動画素数、動体要素のＸ座標の平均（以下、「移動Ｘ」と言う）、および移動したＹ座標の平均を有している。その後、ステップＳ２３ｄに遷移する。
図１３は、記憶部が記憶する情報の一例を説明する図である。
【００５８】
図１３に示す移動データ管理テーブルＴ３には、フレームＩＤおよび移動データの欄が設けられている。横方向に並べられた情報同士が互いに関連付けられている。
移動データ管理テーブルＴ３は、リングバッファ構造になっており、最近の４つのフレームに関するデータが記憶される。
フレームＩＤの欄には、当該フレームを識別するＩＤが設定される。
移動データの欄には、さらに移動画素数、移動Ｘ座標平均、および移動Ｙ座標平均の欄が設けられている。
移動画素数の欄には、当該フレーム内の移動した画素数が記憶される。
移動Ｘ座標平均の欄には、移動している画素の集合の重心のＸ座標が記憶される。
移動Ｙ座標平均の欄には、移動している画素の集合の重心のＹ座標が記憶される。
再び図１２に戻って説明する。
【００５９】
［ステップＳ２３ｄ］  アプリケーション制御部１２は、処理対象４フレーム全てで移動画素数が閾値以上か否かを判断する。処理対象４フレーム全てで移動画素数が閾値以上である場合（ステップＳ２３ｄのＹｅｓ）、ステップＳ２３ｅに遷移する。処理対象４フレーム全てで移動画素数が閾値以上ではない場合（ステップＳ２３ｄのＮｏ）、ステップＳ２３ｆに遷移する。
【００６０】
［ステップＳ２３ｅ］  アプリケーション制御部１２は、輝度差の移動方向を判定する移動方向判定処理を実行する。なお、移動方向判定処理については、後に詳述する。その後、ステップＳ２３ｆに遷移する。
【００６１】
［ステップＳ２３ｆ］  アプリケーション制御部１２は、今回のフレームの移動データを移動データ管理テーブルＴ３に記憶する。その後、第２センシング処理を終了する。
次に、ステップＳ２３ｅの移動方向判定処理を説明する。
図１４は、移動方向判定処理を説明するフローチャートである。
【００６２】
［ステップＳ２３ｅ１］  アプリケーション制御部１２は、処理対象４フレームの移動Ｘを比較する。そして、今回フレームの移動Ｘ≧１フレーム前の移動Ｘ≧２フレーム前の移動Ｘ≧３フレーム前の移動Ｘか否かを判断する。上記関係を満たす場合（ステップＳ２３ｅ１のＹｅｓ）、ステップＳ２３ｅ２に遷移する。上記関係を満たさない場合（ステップＳ２３ｅ１のＮｏ）、ステップＳ２３ｅ３に遷移する。
【００６３】
［ステップＳ２３ｅ２］  アプリケーション制御部１２は、水平方向の移動量（ステップＳ２３ｅ１における処理対象４フレームの移動Ｘの移動量）が閾値以上か否かを判断する。水平方向の移動量が閾値以上である場合（ステップＳ２３ｅ２のＹｅｓ）、ステップＳ２３ｅ３に遷移する。水平方向の移動量が閾値以上ではない場合（ステップＳ２３ｅ２のＮｏ）、移動方向判定処理を終了する。
［ステップＳ２３ｅ３］  アプリケーション制御部１２は、左方向から右方向へのモーションであると判断する。その後、移動方向判定処理を終了する。
【００６４】
なお、図１４では左方向から右方向への移動を判定する処理について説明したが、他の方向についても同様の処理にて実現可能である。例えば上方向から下方向への移動を判定する場合には、移動Ｙの垂直方向への移動量が閾値以上か否かを判断する。
【００６５】
以上述べたように、情報処理装置１は、移動体の所定の動作に応じて情報処理装置１に所定の処理を実行させるための情報を記憶する記憶部１１と、可視カメラ１０６から取得した第１の画像と、第１の画像の前後に取得した第２の画像とを対比することにより第１の画像および第２の画像のいずれかにボケが存在するか否かを判断し、ボケが存在する場合にボケの位置の移動方向を特定して移動体の動作を判断し、記憶部１１を参照して動作に応じた処理を当該情報処理装置１に実行させるアプリケーション制御部１２と、を有する。これにより、単眼の可視カメラ１０６により取得した画像を用いてモーションセンシングを行うことができる。単眼の可視カメラだけでモーションセンシングを行う例はほぼなく、その要因としては奥行情報を取得することが極めて難しいためであるが、この問題は画像処理技術とその認識するモーション認識種類を絞り込むことで解決をする。
【００６６】
インタラクティブな電子広告や、機器に触れない、触りたくたくないという衛生面が厳守される場所、手が汚れていたり、濡れていたりする、というような状況下で情報処理装置１に所定の動作を実行させることができる。
【００６７】
なお、情報処理装置１が行った処理が、複数の装置によって分散処理されるようにしてもよい。例えば、１つの装置が、第１センシング処理を実行し、他の装置が、第２センシング処理を実行するようにしてもよい。
【００６８】
以上、本発明の情報処理装置、情報処理方法およびプログラムを、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
また、本発明は、前述した各実施の形態のうちの、任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【００６９】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、情報処理装置１が有する機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等が挙げられる。磁気記憶装置には、ハードディスクドライブ、フレキシブルディスク（ＦＤ）、磁気テープ等が挙げられる。光ディスクには、ＤＶＤ、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ／ＲＷ等が挙げられる。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）等が挙げられる。
【００７０】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【００７１】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【００７２】
また、上記の処理機能の少なくとも一部を、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＰＬＤ（Programmable Logic Device）等の電子回路で実現することもできる。
【符号の説明】
【００７３】
１  情報処理装置
１１  記憶部
１２  アプリケーション制御部
１３  ＯＳ
１０４ａ  ディスプレイ
１０６  可視カメラ
Ｔ１  モーションテーブル
Ｔ２  エッジデータ管理テーブル
Ｔ３  移動データ管理テーブル
【図１】
2020173521.tif 000003
【図２】
2020173521.tif 000004
【図３】
2020173521.tif 000005
【図４】
2020173521.tif 000006
【図５】
2020173521.tif 000007
【図６】
2020173521.tif 000008
【図７】
2020173521.tif 000009
【図８】
2020173521.tif 000010
【図９】
2020173521.tif 000011
【図１０】
2020173521.tif 000012
【図１１】
2020173521.tif 000013
【図１２】
2020173521.tif 000014
【図１３】
2020173521.tif 000015
【図１４】
2020173521.tif 000016