JP2011186636A - 情報処理装置および方法、並びにプログラム - Google Patents
情報処理装置および方法、並びにプログラム Download PDFInfo
- Publication number
- JP2011186636A JP2011186636A JP2010049477A JP2010049477A JP2011186636A JP 2011186636 A JP2011186636 A JP 2011186636A JP 2010049477 A JP2010049477 A JP 2010049477A JP 2010049477 A JP2010049477 A JP 2010049477A JP 2011186636 A JP2011186636 A JP 2011186636A
- Authority
- JP
- Japan
- Prior art keywords
- vibration
- command
- information
- camera
- feature points
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims description 56
- 230000010365 information processing Effects 0.000 title claims description 13
- 238000003384 imaging method Methods 0.000 claims description 14
- 239000013598 vector Substances 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 9
- 238000010079 rubber tapping Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000007423 decrease Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/016—Input arrangements with force or tactile feedback as computer generated output to the user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Position Input By Displaying (AREA)
Abstract
【課題】カメラにより撮像された画像に基づいて、簡単かつ確実にコマンドを入力できるようにする。
【解決手段】ディスプレイ12上にカメラ11を搭載するパーソナルコンピュータ1において、ユーザが手2でディスプレイ12をタップすると、カメラ11も振動する。カメラ11により撮像された画像が取得され、取得された画像から振動情報が算出され、算出された振動情報に基づいて振動コマンドが判定される。振動コマンドが入力された場合、そのコマンドに対応付けられた所定の処理が制御される。対応する処理として、例えば、音楽プレイヤの再生と停止が制御される。本発明は、例えば、カメラ付きのパーソナルコンピュータに適用できる。
【選択図】図1
【解決手段】ディスプレイ12上にカメラ11を搭載するパーソナルコンピュータ1において、ユーザが手2でディスプレイ12をタップすると、カメラ11も振動する。カメラ11により撮像された画像が取得され、取得された画像から振動情報が算出され、算出された振動情報に基づいて振動コマンドが判定される。振動コマンドが入力された場合、そのコマンドに対応付けられた所定の処理が制御される。対応する処理として、例えば、音楽プレイヤの再生と停止が制御される。本発明は、例えば、カメラ付きのパーソナルコンピュータに適用できる。
【選択図】図1
Description
本発明は情報処理装置および方法、並びにプログラムに関し、特に、簡単かつ確実にコマンドを入力できるようにした情報処理装置および方法、並びにプログラムに関する。
パーソナルコンピュータにおける入力は、キーボードやマウスにより行われることが多い。すなわち、ユーザは、所定のコマンドを入力する場合、キーボードで所定の文字を入力したり、マウスで所定のアイコンをクリックするなどの操作を行う。
キーボードやマウスは、それらを載置する机、テーブルなどを必要とする。そこでパーソナルコンピュータにカメラを搭載し、カメラでユーザの手を撮像し、ユーザのジェスチャを認識してそのジェスチャに応じた処理を行うことが提案されている(例えば特許文献1)。
特開2009−75685号公報
しかしながら、カメラにより撮像された画像からジェスチャを認識する場合、ジェスチャが誤認識されることがある。その結果、入力に時間がかかったり、簡単かつ確実にコマンドを入力することができないことがあった。
本発明は、このような状況に鑑みてなされたものであり、簡単かつ確実にコマンドを入力することができるようにするものである。
本発明の一側面の情報処理装置は、対象物を撮像する撮像手段と、前記撮像手段により撮像された画像を取得する取得手段と、前記取得手段により取得された画像に基づいて、振動情報を算出する算出手段と、前記算出手段により算出された前記振動情報に基づいて、振動コマンドを判定する判定手段と、前記判定手段により判定された前記振動コマンドに基づいて、所定の処理を実行する制御手段とを備える。
前記判定手段により前記振動コマンドが、前記情報処理装置の移動終了後、所定時間内に発生した場合、前記制御手段は、前記所定の処理の実行を禁止することができる。
前記算出手段は、前記取得手段により取得された画像の特徴点の位置および速度ベクトルに基づいて前記振動情報を算出することができる。
前記算出手段は、前記振動の周波数を算出し、前記判定手段は、前記周波数が閾値以上のとき、前記振動を振動コマンドの振動と判定することができる。
前記取得手段は、ユーザのジェスチャをさらに取得し、前記制御手段は、前記判定手段により前記振動コマンドの振動が発生していないと判定された場合、前記所定の処理を実行せずに、前記ジェスチャに対応する処理を実行し、前記判定手段により前記振動コマンドの振動が発生したと判定された場合、前記ジェスチャを無効化することができる。
前記判定手段は、前記速度ベクトルが同じ方向である前記特徴点の数の割合が閾値以上であるとき、前記振動コマンドの振動が発生したと判定することができる。
本発明の一側面の情報処理方法は、対象物を撮像する撮像ステップと、前記撮像ステップの処理により撮像された画像を取得する取得ステップと、前記取得ステップの処理により取得された画像に基づいて、振動情報を算出する算出ステップと、前記算出ステップの処理により算出された前記振動情報に基づいて、振動コマンドを判定する判定ステップと、前記判定ステップの処理により判定された前記振動コマンドに基づいて、所定の処理を実行する制御ステップとを含む。
本発明の一側面のプログラムは、撮像手段により撮像された画像を取得する取得ステップと、前記取得ステップの処理により取得された画像に基づいて、振動情報を算出する算出ステップと、前記算出ステップの処理により算出された前記振動情報に基づいて、振動コマンドを判定する判定ステップと、前記判定ステップの処理により判定された前記振動コマンドに基づいて、所定の処理を実行する制御ステップとをコンピュータに実行させる。
本発明の一側面においては、対象物が撮像され、撮像された画像が取得され、取得された画像に基づいて、振動情報が算出され、算出された振動情報に基づいて、振動コマンドが判定され、判定された振動コマンドに基づいて、所定の処理が実行される。
本発明によれば、簡単かつ確実にコマンドを入力することが可能になる。
図1は、本発明が適用されるパーソナルコンピュータ1の一実施形態としての構成例を示す図である。
図1のノート型のパーソナルコンピュータ1は、本体13と、カメラ11が搭載されているディスプレイ12から構成されている。ディスプレイ12は、本体13に対して開閉自在とされている。
対象物を撮像する撮像手段としてのカメラ11は、単眼カメラ、ステレオカメラ、赤外線カメラ、ビデオカメラ等で構成され、被写体としてのユーザの静止画または動画を撮像する。
パーソナルコンピュータ1は、カメラ11により撮像された画像を取得し、ユーザが手2でカメラ11を搭載するパーソナルコンピュータ1がタップされた振動を振動情報として算出する。
そして、算出された振動情報に基づいて、パーソナルコンピュータ1をタップすることで入力される振動コマンドが認識され、認識された振動コマンドに対応する所定の処理が実行される。
これにより、ユーザは、カメラ11を搭載するパーソナルコンピュータ1を任意の個所をタップすることでパーソナルコンピュータ1の動作を制御することができる。
[パーソナルコンピュータの構成]
図2は、パーソナルコンピュータ1のハードウェアの構成例を示すブロック図である。
コンピュータ1において、CPU22,ROM(Read Only Memory)23,RAM(Random Access Memory)24は、バス25により相互に接続されている。バス25には、さらに、入出力インタフェース26が接続されている。入出力インタフェース26には、カメラ11、キーボード、タッチパネル、タッチパッド、ペンデバイス、マウス、マイクロフォンなどよりなる入力部27、ディスプレイ12、スピーカ(図示せず)などよりなる出力部21、ハードディスクや不揮発性のメモリなどよりなる記憶部28が接続されている。さらに、入出力インタフェース26には、ネットワークインタフェースなどよりなる通信部29、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア31を駆動するドライブ30が接続されている。
以上のように構成されるパーソナルコンピュータ1では、CPU22が、例えば、記憶部28に記憶されているプログラムを、入出力インタフェース26及びバス25を介して、RAM24にロードして実行することにより、上述した一連の処理が行われる。CPU22が実行するプログラムは、パッケージメディアであるリムーバブルメディア31に記録して提供される。なお、パッケージメディアとしては、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等)、光磁気ディスク、もしくは半導体メモリなどが用いられる。あるいは、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。そして、プログラムは、リムーバブルメディア31をドライブ30に装着することにより、入出力インタフェース26を介して、記憶部28にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部29で受信し、記憶部28にインストールすることができる。その他、プログラムは、ROM23や記憶部28に、あらかじめインストールしておくことができる。
なお、パーソナルコンピュータ1が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
図3は、CPU22の機能的構成例を示すブロック図である。
CPU22は、取得部41、検出部42、制御部43、判定部44、算出部45、振動コマンド認識部46、記憶部47、およびジェスチャ認識部48から構成されている。なお、CPU22の各ブロックは、必要に応じて相互に信号を授受することが可能とされている。
CPU22において、取得手段としての取得部41は、各種情報を取得する。検出部42は、カメラ11により撮像された画像から振動を検出するための情報を検出する。制御手段としての制御部43は、各種処理を制御する。判定手段としての判定部44は、処理が所定の条件を満たしているかを判定する。算出手段としての算出部45は、振動情報等を算出する。振動コマンド認識部46は、パーソナルコンピュータ1に与えられた振動によるコマンドを認識する。記憶部47は、所定の情報をRAM24または記憶部28に記憶する。ジェスチャ認識部48は、ジェスチャを認識する。ジェスチャとは、ユーザが手2を3次元空間で移動させたり、所定の形状にして行われる操作である。
[振動コマンド認識処理]
図4は、ユーザのタップの操作を振動コマンドとして認識する振動コマンド認識処理を説明するフローチャートである。振動コマンド認識処理は、ユーザにより、カメラ11と振動コマンドを認識するアプリケーションの起動が指示されたときに実行される。
ステップS1において、取得部41は、カメラ11により撮像された画像を取得する。カメラ11から取得される画像は、例えば、撮像した画像そのものでもよいし、編集された画像、例えば濃淡画像などでもよい。
ステップS2において、検出部42は、取得された画像から複数の特徴点を検出する。特徴点とは、画像中における縦方向と横方向の色(または輝度値)の変化がともに大きい点である。すなわち画素値の変化が大きい画素のうち、画面内に全体的に平均的に分散して位置するように、所定の複数の画素が特徴点としてランダムに選択される。
ステップS3において、制御部43は、検出された特徴点を追跡する。すなわち、特徴点の追跡は、特徴点が検出された2枚の画像(例えば、現在のフレームの画像と1フレーム前の画像)に対して、マッチングの処理や差分を算出する処理を実行することで、同様の値となる画素が同一の特徴点として追跡される。
パーソナルコンピュータ1がタップされた場合の画像中の特徴点を表示する例を図5に示す。図5は、カメラ11を搭載するパーソナルコンピュータ1がタップされた場合に、カメラ11により撮像される画像の表示例を示す図である。
表示窓61には、カメラ11により撮像された画像であって、左右が反転されたミラー画像81−1、認識結果82、特徴点101−1乃至101−9、および特徴点101−1乃至101−9の軌跡102−1乃至102−9が表示されている。
なお、便宜上、符号は、代表的な特徴点と軌跡にのみ付されている。また、以下、特徴点101−1乃至101−9、および軌跡102−1乃至102−9を個々に区別する必要がない場合、単に特徴点101または軌跡102と記載する。
図5の例の表示窓61には、画像81−1として、ユーザと背景画像が表示されている。ここでステップS2の特徴点を検出する処理およびステップS3の特徴点を追跡する処理が実行されると、画像81−1上に特徴点101および対応する軌跡102が表示される。
図5の例では、簡単のため特徴点101−1乃至101−9と対応する軌跡102−1乃至102−9について説明する。
図5の例では、背景画像内の境界上、例えば、天井と蛍光灯の境界上の特徴点101−1乃至101−5や、ユーザと背景画像の境界上、例えば、特徴点101−6乃至101−8などが、特徴点とされている。そして、特徴点101−1乃至101−8のそれぞれに対応する軌跡102−1乃至102−8が表示される。
例えば、ユーザが移動した場合、ユーザと背景画像の境界上の特徴点101−6乃至101−8が移動し、対応する軌跡102−6乃至102−8が表示される。
これに対して、パーソナルコンピュータ1のディスプレイ12がユーザによりタップされると、ディスプレイ12は、本体13に対して開閉自在とされているので、本体13との接合部を中心として、図1において矢印14で示されるように、前後方向に振動する。これによりディスプレイ11の上部に装着されているカメラ11の撮像位置が上下方向に振動する。
なお、追跡は、画像内にまんべんなく配置された特徴点101に対して行われることが望ましい。したがって、例えば特徴点101−3乃至101−5などのように、相互の距離が近い特徴点101はいずれかを削除し、例えば、特徴点101−9のように、それらから充分離れて位置する特徴点101を追跡するのが好ましい。
次に、ディスプレイ11がタップされた場合における特徴点と軌跡の関係について図6と図7を用いて説明する。
図6は、特徴点101の位置の変化を2次元のグラフに示す図である。図6において、横軸は時刻tを表し、縦軸は画面内の縦方向のy座標を表している。y座標においては、特徴点が静止している位置が0とされている。
ディスプレイ11がタップされると、カメラ11が上下に振動し、次第に収束して、ついには静止する。したがって特徴点101の位置は、y座標の0を基準として上下に変化するので、その運動を時間軸に展開して得られる軌跡102に対応する信号103は、図6に示されるように、正弦波状の信号となる。その振幅は次第に小さくなり、ついには0に収束する。
図7は、ディスプレイ11がタップされた場合において、図5の表示窓61上に表示される1つの特徴点101と軌跡102のモデル的表示例を示す図である。
特徴点101のy座標が図6に示されるように周期的に変化するので、特徴点101が、図6の特徴点101−31−1の位置(すなわち、y座標の正のピーク値)にあるとき、特徴点101は、図7Aに示されるように、軌跡102の上端部に位置する。
特徴点101が、図6の特徴点101−31−2の位置(すなわち、y座標の負のピーク値)にあるとき、特徴点101は、図7Bに示されるように、軌跡102の下端部に位置する。
特徴点101が、図6の特徴点101−31−3の位置(すなわち、y座標が0の位置)にあるとき、特徴点101は、図7Cに示されるように、軌跡102の中央部に位置する。
特徴点101と軌跡102が、図7A乃至図7Cのように表示されることで、ユーザは、表示窓61に表示された特徴点101がどちらの方向に移動しているかを判断することができる。
図4に戻り、ステップS3の特徴点追跡処理の後、ステップS4において、判定部44は、特徴点の数が閾値以上であるかを判定する。すなわち、振動情報を算出するために必要な特徴点の数が十分であるかが判定される。振動情報とは、例えば振動の周波数などである。
ステップS4において、特徴点の数が所定の閾値より少ないと判定された場合、すなわち、振動情報を算出するために十分な数の特徴点が存在しないと判定された場合、処理はステップS2に戻り、同様の処理が繰り返される。すなわち新たな特徴点が検出される。
ステップS4において、特徴点の数が所定の閾値以上であると判定された場合、すなわち、振動情報を算出するために十分な数の特徴点が存在すると判定された場合、ステップS5において、算出部45は、特徴点の位置を算出する。
すなわち図5の例では、画像81−1上の特徴点101のx,y座標がそれぞれ算出される。
ステップS6において、算出部45は、複数の特徴点の速度ベクトルを算出する。速度ベクトルは、例えば、ある特徴点101−51の現在のフレームの位置と、1フレーム前の位置との差分を、1フレームの時間で除算することで算出される。
ステップS7において、制御部43は、算出された速度ベクトルに基づいて特徴点をクラスタリングする。クラスタリングとは、データの集合をクラスタという部分集合に切り分ける処理である。
算出された速度ベクトルが同じ方向を向いている特徴点同士を同じクラスタに分類することで、似た動きをする特徴点が1つのグループに分類される。なおクラスタリングには、角度の一次元のヒストグラムを算出する手法、またはk-meansのような既存のクラスタリングの手法を用いることができる。
例えば図5の表示例で、ユーザが移動した場合、ユーザの顔の上に位置する特徴点101−6,101−8,101−9がほぼ同じ方向に移動する。その結果、クラスタリングの処理により、この特徴点101−6,101−8,101−9が1つの部分集合として分類される。これに対して背景画像の上の特徴点101−1乃至101−5,101−7は、移動しない。
一方、ディスプレイ12がタップされた場合、ユーザの顔や背景画像を含む画面の全体が振動するので、特徴点101−1乃至101−9を含むほとんどすべての特徴点が同じ方向に(すなわち上または下方向に)移動する。したがって特徴点101−1乃至101−9を含む多くの特徴点が1つの部分集合として分類される。
そこでステップS8において、判定部44は、同じ方向に動く特徴点の全特徴点に対する割合が閾値以上であるかを判定する。すなわちこれにより、カメラ11を搭載するパーソナルコンピュータ1が振動したかが判定される。
なお本体13に対するディスプレイ12の支持の方法によっては、タップされた場合、ディスプレイ12が回転する場合がある。ステップS8の処理において、同じ方向に動く特徴点の割合が所定の閾値以上かを判定する手法では、カメラ11の中心軸周りの回転の動きは検出できない。
そこでこのような場合、カメラ11から取得した画像の中心を原点とした各特徴点の軌跡の外積を算出することで、ディスプレイ12の回転を検出することができる。
ステップS8において、同じ方向に動く特徴点の割合が所定の閾値より小さいと判定された場合、すなわち、カメラ11を搭載するディスプレイ12が振動していないと判定された場合、ユーザによるタップの操作は実行されていないので、処理はステップS1に戻り、それ以降の処理が繰り返される。
ステップS8において、同じ方向に動く特徴点の割合が所定の閾値以上であると判定された場合、すなわち、カメラ11を搭載するディスプレイ12が振動したと判定された場合、ステップS9において、算出部45は、振動情報として、縦方向の振動の周波数を算出する。
振動の周波数は、特徴点の位置に基づいて算出される単位時間あたりの振動回数により算出される。具体的には図6の信号の周波数が算出される。
縦方向の振動の周波数を算出するのは、図1に示されるノート型のパーソナルコンピュータ1の場合、ディスプレイ12が本体13に対して回動自在に支持されているため、振動方向が縦方向になるためである。
したがって、振動させるデバイスの種類に応じて算出する振動方向を変えてもよい。
ステップS10において、判定部44は、算出された周波数が閾値以上かを判定する。例えばユーザがパーソナルコンピュータ1全体を保持して移動させたような場合、多くの特徴点が同じ方向に移動する。
しかし、この場合の特徴点の移動は、ディスプレイ12がタップされた場合に比べて遅いので、周波数は低い。そこで、周波数を所定の閾値と比較することで、振動の種類がタップの振動であるかが判定される。
ステップS10において算出された周波数が所定の閾値より小さいと判定された場合、すなわち、振動の種類がタップ以外の振動であると判定された場合、ステップS11において、振動コマンド認識部46は、振動の種類をパーソナルコンピュータ1の移動として認識する。
振動の種類が移動として認識された場合の画像中の特徴点とその軌跡を表示した例を図8に示す。
図8は、カメラ11を搭載するパーソナルコンピュータ1の振動の種類が移動として認識された場合に表示される画像の表示例を示す図である。
図8の例の表示窓61には、カメラ11から取得された画像81−2、特徴点101、特徴点の軌跡102が表示されている。図8の例では、特徴点101−51乃至101−54と、それらに対応する軌跡102−51乃至102−54を含む全ての特徴点とそれらに対応する軌跡の形状は同様の形状となっている。
すなわち図7Bに示したように、特徴点101の上側に軌跡102が表示されている。したがってカメラ11を搭載するパーソナルコンピュータ1は、上方向に向かって移動されたことになる。
図4に戻り、ステップS12において、記憶部47は、移動情報を記憶する。移動情報とは、例えば、振動の種類が移動として認識されたときの時刻の情報である。
すなわち移動情報としては、ステップS1乃至ステップS12の処理が繰り返し行われることにより最終的に、カメラ11を搭載するパーソナルコンピュータ1の移動が終了したときの時刻が記憶される。
ステップS10において、算出された周波数が所定の閾値以上であると判定された場合、その振動はユーザによりディスプレイ12がタップされた場合の振動と考えられる。すなわち、ユーザにより振動コマンドが入力された可能性がある。
この場合、ステップS13において、判定部44は、移動終了後、所定時間が経過したかを判定する。すなわち、移動情報に記憶されている時刻から所定時間が経過したかが判定される。
ステップS13において、移動終了後、所定時間が経過していないと判定された場合、すなわち、移動情報に記憶されている時刻からまだ所定時間が経過していない場合、処理はステップS1に戻る。
これによりステップS14,S15のタップを認識し、それに対応する処理の実行が禁止される。
つまり、例えば、ディスプレイ12にカメラ11を搭載するノート型のパーソナルコンピュータ1をテーブルに置いた直後、ディスプレイ12はしばらくの時間振動する。
また、ノート型のパーソナルコンピュータ1のディスプレイ12を閉じた状態から開いた直後、しばらくの時間、ディスプレイ12が振動する。
これらの振動はユーザによりディスプレイ12がタップされた場合の振動と同様の振動であるから、振動コマンドの候補の振動であるが、実際にユーザにより振動コマンドが入力された訳ではない。
そこで、これらの振動が、タップによる振動、つまり振動コマンドの振動と誤認識されるのが防止される。
ステップS13において、移動終了後、所定時間が経過していると判定された場合、すなわち、移動情報に記憶されている時刻から所定時間が経過していると判定された場合、ステップS14において、振動コマンド認識部46は、振動コマンドの種類をタップとして認識する。
つまり、ユーザがディスプレイ12に積極的に振動を与えることで入力した振動コマンドであると認識される。
換言すれば、例えばカメラ11で撮影を行うとき、画像がぶれてしまうので、カメラ11は振動させないようにすることが望まれる。すなわち、その場合の振動はノイズである。
それに対して、タップによる振動はノイズとしての振動ではなく、ユーザが望んで所定の入力を行うために与えるものであり、信号としての振動である。
ステップS15において、制御部43は、タップに対応する処理を実行する。タップに対応する処理とは、タップによる振動コマンドに応じて行われる処理である。
例えば、音楽プレイヤのアプリケーションを操作する場合、制御部43は、タップによる振動コマンドが認識されるごとに音楽プレイヤによる曲の再生と停止が切換えられる。
もちろん、この他、パーソナルコンピュータ1の電源のオンとオフを振動コマンドに対応づけることもできる。
また制御部43は、図5に示されるように、表示窓61内に「SHAKE」と認識結果82を表示する。これはタップによる振動コマンドが認識されたことを意味する。表示窓61がディスプレイ12に表示されていない場合、認識結果82はディスプレイ12内の任意の領域内に表示されてもよい。
ステップS15の処理の後、処理はステップS1に戻り、同様の処理が繰り返される。
このようにカメラ11を搭載するパーソナルコンピュータ1は、カメラ11だけを用いてユーザがディスプレイ12をタップして入力する振動コマンドを認識することができる。
もちろんユーザがタップする箇所は任意であり、ディスプレイ12に限られない。
なお、図4の例では、パーソナルコンピュータ1の振動情報を、特徴点に基づいて算出したが、振動情報を算出する方法はこれに限られない。振動情報は、例えば、ブロックマッチングの手法を使用し、取得された画像全体のオプティカルフローに基づいて算出するようにしてもよい。
[ジェスチャ認識処理]
図4の振動コマンド認識処理は、ジェスチャでコマンドを入力する場合にも適用することができる。図9は、この場合のジェスチャ認識処理を説明するフローチャートである。
図9において、ステップS33乃至S39,S43乃至S49の処理は、図4のステップS1乃至S15の処理と同様の処理である。したがって、その詳細な処理は繰り返しになるので適宜省略する。
ステップS31において、ジェスチャ認識部48は、ジェスチャを認識する。ジェスチャとは、ユーザが所定のコマンドを入力するために、3次元空間で行う手振り、手の形状などの操作である。
ジェスチャの認識は、例えば次のように行われる。すなわち、時間的に前後する2フレームの画像の差分を演算して、移動する手の領域が検出される。そして手の面積の重心が求められ、重心の軌跡を予め用意されているジェスチャの基本パターンと比較することで、最も近い基本パターンのジェスチャが入力されたものとして識される。
ステップS32において、取得部41は、認識されたジェスチャおよびカメラ11により撮像された画像を取得する。
ステップS33において、検出部42は、特徴点を検出する。ステップS34において、制御部43は、特徴点を追跡する。
ステップS35において、判定部44は、特徴点の数が閾値以上かを判定する。特徴点の数が閾値より少ないと判定された場合、処理はステップS33に戻り、それ以降の処理が繰り返される。特徴点の数が閾値以上であると判定された場合、ステップS36において、算出部45は、特徴点の位置を算出する。
ステップS37において、算出部45は、特徴点の速度ベクトルを算出する。ステップS38において、制御部43は、特徴点をクラスタリングする。
ステップS39において、判定部44は、同じ方向に動く特徴点の割合が閾値以上であるかを判定する。同じ方向に動く特徴点の割合が閾値より少ないと判定された場合、ステップS40において、振動コマンド認識部46は、振動なしとして認識する。すなわち、振動コマンドの振動が発生していないと認識する。
ステップS41において、制御部43は、ジェスチャに対応する処理を実行する。これにより、例えば音楽プレイヤにおいて、ユーザがカメラ11の前で行った手の動かし方に応じて、曲を早送りしたり、巻き戻したり、一時停止したりする処理が行われる。
一方、ステップS39において、同じ方向に動く特徴点の割合が閾値以上であると判定された場合、ステップS42において、制御部43は、ジェスチャを無効化する。すなわち制御部43は、ステップS31で認識されたジェスチャに対応する処理の実行を禁止する。
ステップS43において、算出部45は、振動の周波数を算出する。ステップS44において、判定部44は、周波数が閾値以上かを判定する。ステップS44において、周波数が閾値より小さいと判定された場合、ステップS45において、振動コマンド認識部46は、振動を移動として認識する。ステップS46において、記憶部47は、移動情報を記憶する。
ステップS44において、周波数が閾値以上であると判定された場合、ステップS47において、判定部44は、移動終了後、所定時間が経過したかを判定する。
ステップS47において、移動終了後、所定時間が経過したと判定された場合、ステップS48において、振動コマンド認識部46は、振動をタップとして認識する。ステップS49において、制御部43は、タップに対応する処理を実行する。
ステップS41,S46,S49の処理の後、またはステップS47において移動終了後、所定時間が経過していないと判定された場合、処理はステップS1に戻り、同様の処理が繰り返される。
このように、カメラ11を搭載するディスプレイ12が振動している場合、制御部43はジェスチャに対応する処理の実行を禁止する。これにより、ユーザが意図しないジェスチャが誤って認識されることを防止することができる。
なお本明細書では、カメラ11を搭載するノート型のパーソナルコンピュータ1を使用して、タップによる振動コマンドを認識する例を示したが、タップする装置はパーソナルコンピュータ1に限られない。
例えば、カメラ付きのテレビジョン受像機やモニタをタップすることで、電源のオンとオフの操作をするようにしてもよい。
またテレビジョン受像機やモニタのような据え置きデバイスの場合、移動を認識する処理は行わないようにしてもよい。
1 パーソナルコンピュータ, 11 カメラ, 12 ディスプレイ, 22 CPU, 41 取得部, 43 制御部, 44 判定部, 45 算出部
Claims (8)
- 対象物を撮像する撮像手段と、
前記撮像手段により撮像された画像を取得する取得手段と、
前記取得手段により取得された画像に基づいて、振動情報を算出する算出手段と、
前記算出手段により算出された前記振動情報に基づいて、振動コマンドを判定する判定手段と、
前記判定手段により判定された前記振動コマンドに基づいて、所定の処理を実行する制御手段と
を備える情報処理装置。 - 前記判定手段により前記振動コマンドが、前記情報処理装置の移動終了後、所定時間内に発生した場合、前記制御手段は、前記所定の処理の実行を禁止する
請求項1に記載の情報処理装置。 - 前記算出手段は、前記取得手段により取得された画像の特徴点の位置および速度ベクトルに基づいて前記振動情報を算出する
請求項2に記載の情報処理装置。 - 前記算出手段は、前記振動の周波数を算出し、
前記判定手段は、前記周波数が閾値以上のとき、前記振動を振動コマンドの振動と判定する
請求項3に記載の情報処理装置。 - 前記取得手段は、ユーザのジェスチャをさらに取得し、
前記制御手段は、前記判定手段により前記振動コマンドの振動が発生していないと判定された場合、前記所定の処理を実行せずに、前記ジェスチャに対応する処理を実行し、前記判定手段により前記振動コマンドの振動が発生したと判定された場合、前記ジェスチャを無効化する
請求項4に記載の情報処理装置。 - 前記判定手段は、前記速度ベクトルが同じ方向である前記特徴点の数の割合が閾値以上であるとき、前記振動コマンドの振動が発生したと判定する
請求項5に記載の情報処理装置。 - 対象物を撮像する撮像ステップと、
前記撮像ステップの処理により撮像された画像を取得する取得ステップと、
前記取得ステップの処理により取得された画像に基づいて、振動情報を算出する算出ステップと、
前記算出ステップの処理により算出された前記振動情報に基づいて、振動コマンドを判定する判定ステップと、
前記判定ステップの処理により判定された前記振動コマンドに基づいて、所定の処理を実行する制御ステップと
を含む情報処理方法。 - 撮像手段により撮像された画像を取得する取得ステップと、
前記取得ステップの処理により取得された画像に基づいて、振動情報を算出する算出ステップと、
前記算出ステップの処理により算出された前記振動情報に基づいて、振動コマンドを判定する判定ステップと、
前記判定ステップの処理により判定された前記振動コマンドに基づいて、所定の処理を実行する制御ステップと
をコンピュータに実行させるプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010049477A JP2011186636A (ja) | 2010-03-05 | 2010-03-05 | 情報処理装置および方法、並びにプログラム |
US13/014,953 US9465433B2 (en) | 2010-03-05 | 2011-01-27 | Information processing device, method and program |
CN2011100495161A CN102193729A (zh) | 2010-03-05 | 2011-02-28 | 信息处理设备、方法和程序 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010049477A JP2011186636A (ja) | 2010-03-05 | 2010-03-05 | 情報処理装置および方法、並びにプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011186636A true JP2011186636A (ja) | 2011-09-22 |
Family
ID=44530897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010049477A Withdrawn JP2011186636A (ja) | 2010-03-05 | 2010-03-05 | 情報処理装置および方法、並びにプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9465433B2 (ja) |
JP (1) | JP2011186636A (ja) |
CN (1) | CN102193729A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014165917A (ja) * | 2013-02-27 | 2014-09-08 | Samsung Electronics Co Ltd | ディスプレイ装置 |
KR101881525B1 (ko) * | 2012-01-31 | 2018-07-25 | 삼성전자 주식회사 | 디스플레이장치, 업그레이드장치 및 이를 포함하는 디스플레이시스템 및 그 제어방법 |
KR20190051028A (ko) * | 2016-09-13 | 2019-05-14 | 매직 립, 인코포레이티드 | 감각 안경류 |
JP2019220179A (ja) * | 2018-06-15 | 2019-12-26 | イマージョン コーポレーションImmersion Corporation | 限定持続時間触覚効果を提供するシステム、デバイス、及び方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013134795A (ja) * | 2011-12-26 | 2013-07-08 | Jvc Kenwood Corp | 再生装置、モード設定装置、及び再生方法 |
JP5741638B2 (ja) | 2013-06-20 | 2015-07-01 | カシオ計算機株式会社 | 携帯表示装置及び操作検出方法 |
US10855918B2 (en) * | 2018-05-09 | 2020-12-01 | Canon Kabushiki Kaisha | Image processing device, image processing method, image pickup apparatus, and program storage medium that calculates a matching degree between an estimated target of interest and tracked feature points, then selects a feature point to which tracking is continued according to the matching degree |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0980549A (ja) * | 1995-09-13 | 1997-03-28 | Nikon Corp | ブレ補正機構付き光学装置 |
JP5109221B2 (ja) * | 2002-06-27 | 2012-12-26 | 新世代株式会社 | ストロボスコープを使った入力システムを備える情報処理装置 |
US7903084B2 (en) * | 2004-03-23 | 2011-03-08 | Fujitsu Limited | Selective engagement of motion input modes |
EP1806643B1 (en) * | 2006-01-06 | 2014-10-08 | Drnc Holdings, Inc. | Method for entering commands and/or characters for a portable communication device equipped with a tilt sensor |
US8139028B2 (en) * | 2006-02-01 | 2012-03-20 | Synaptics Incorporated | Proximity sensor and method for indicating extended interface results |
US20070176909A1 (en) * | 2006-02-02 | 2007-08-02 | Eric Pavlowski | Wireless Mobile Pen Communications Device With Optional Holographic Data Transmission And Interaction Capabilities |
JP5055018B2 (ja) * | 2006-06-14 | 2012-10-24 | キヤノン株式会社 | 画像処理装置、撮像装置、及び画像処理装置の制御方法 |
JP4961850B2 (ja) * | 2006-06-15 | 2012-06-27 | ソニー株式会社 | 動き検出方法、動き検出方法のプログラム、動き検出方法のプログラムを記録した記録媒体及び動き検出装置 |
US8000557B2 (en) * | 2006-12-13 | 2011-08-16 | Advasense Technologies Ltd. | Method for generating an image and an image generator |
US8462109B2 (en) * | 2007-01-05 | 2013-06-11 | Invensense, Inc. | Controlling and accessing content using motion processing on mobile devices |
US9261979B2 (en) * | 2007-08-20 | 2016-02-16 | Qualcomm Incorporated | Gesture-based mobile interaction |
JP4569613B2 (ja) | 2007-09-19 | 2010-10-27 | ソニー株式会社 | 画像処理装置および画像処理方法、並びにプログラム |
US20090146962A1 (en) * | 2007-12-05 | 2009-06-11 | Nokia Corporation | Mobile communication terminal and method |
JP5451593B2 (ja) * | 2008-06-09 | 2014-03-26 | パナソニック株式会社 | 撮像装置、撮像方法 |
KR101498623B1 (ko) * | 2008-06-25 | 2015-03-04 | 엘지전자 주식회사 | 휴대 단말기 및 그 제어방법 |
JP5274130B2 (ja) * | 2008-07-15 | 2013-08-28 | キヤノン株式会社 | 像振れ補正装置及び光学機器、撮像装置並びに像振れ補正装置の制御方法 |
US8477463B2 (en) * | 2008-10-02 | 2013-07-02 | Lsi Corporation | Vibration based user input for mobile devices |
KR101737829B1 (ko) * | 2008-11-10 | 2017-05-22 | 삼성전자주식회사 | 휴대 단말기의 모션 입력 장치 및 그의 운용 방법 |
JP4564564B2 (ja) * | 2008-12-22 | 2010-10-20 | 株式会社東芝 | 動画像再生装置、動画像再生方法および動画像再生プログラム |
CN103763472B (zh) * | 2009-02-19 | 2017-03-01 | 奥林巴斯株式会社 | 照相机、佩戴型图像显示装置、摄影系统以及摄影方法 |
US8181123B2 (en) * | 2009-05-01 | 2012-05-15 | Microsoft Corporation | Managing virtual port associations to users in a gesture-based computing environment |
-
2010
- 2010-03-05 JP JP2010049477A patent/JP2011186636A/ja not_active Withdrawn
-
2011
- 2011-01-27 US US13/014,953 patent/US9465433B2/en active Active
- 2011-02-28 CN CN2011100495161A patent/CN102193729A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101881525B1 (ko) * | 2012-01-31 | 2018-07-25 | 삼성전자 주식회사 | 디스플레이장치, 업그레이드장치 및 이를 포함하는 디스플레이시스템 및 그 제어방법 |
JP2014165917A (ja) * | 2013-02-27 | 2014-09-08 | Samsung Electronics Co Ltd | ディスプレイ装置 |
KR20190051028A (ko) * | 2016-09-13 | 2019-05-14 | 매직 립, 인코포레이티드 | 감각 안경류 |
KR102257181B1 (ko) | 2016-09-13 | 2021-05-27 | 매직 립, 인코포레이티드 | 감각 안경류 |
US11410392B2 (en) | 2016-09-13 | 2022-08-09 | Magic Leap, Inc. | Information display in augmented reality systems |
US11747618B2 (en) | 2016-09-13 | 2023-09-05 | Magic Leap, Inc. | Systems and methods for sign language recognition |
US12055719B2 (en) | 2016-09-13 | 2024-08-06 | Magic Leap, Inc. | Systems and methods for sign language recognition |
JP2019220179A (ja) * | 2018-06-15 | 2019-12-26 | イマージョン コーポレーションImmersion Corporation | 限定持続時間触覚効果を提供するシステム、デバイス、及び方法 |
KR20190142230A (ko) * | 2018-06-15 | 2019-12-26 | 임머숀 코퍼레이션 | 제한된 기간의 햅틱 효과를 제공하는 시스템, 디바이스 및 방법 |
US10963061B2 (en) | 2018-06-15 | 2021-03-30 | Immersion Corporation | Systems, devices, and methods for providing limited duration haptic effects |
KR102253594B1 (ko) * | 2018-06-15 | 2021-05-18 | 임머숀 코퍼레이션 | 제한된 기간의 햅틱 효과를 제공하는 시스템, 디바이스 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
CN102193729A (zh) | 2011-09-21 |
US9465433B2 (en) | 2016-10-11 |
US20110215995A1 (en) | 2011-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109710071B (zh) | 一种屏幕控制方法和装置 | |
JP2011186636A (ja) | 情報処理装置および方法、並びにプログラム | |
US9690388B2 (en) | Identification of a gesture | |
EP3084577B1 (en) | Selection and tracking of objects for display partitioning and clustering of video frames | |
US8847977B2 (en) | Information processing apparatus to flip image and display additional information, and associated methodology | |
US8379098B2 (en) | Real time video process control using gestures | |
JP6400293B2 (ja) | 電子装置でコンテンツを制御する装置及びその方法 | |
JP2012098771A (ja) | 画像処理装置および方法、並びに、プログラム | |
EP3120228A1 (en) | Object tracking in zoomed video | |
TW201544996A (zh) | 用於一或更多使用者的凝視追蹤 | |
JP2013164834A (ja) | 画像処理装置および方法、並びにプログラム | |
JP6255838B2 (ja) | 表示装置、表示制御方法及びプログラム | |
CN104184985A (zh) | 图像获取的方法及装置 | |
JP2014064110A (ja) | 画像処理装置、画像処理方法及びプログラム | |
KR20140012757A (ko) | 시각 장애 사용자들에 의한 이미지 캡처 및 이미지 검토의 촉진 | |
JP6149862B2 (ja) | 表示制御装置、表示制御システムおよび表示制御方法 | |
US20120139827A1 (en) | Method and apparatus for interacting with projected displays using shadows | |
JP2013013066A5 (ja) | ||
CN104662889B (zh) | 用于在便携式终端中进行拍摄的方法和设备 | |
KR102128955B1 (ko) | 스핀 이미지 생성 방법 및 그 장치 | |
US9665260B2 (en) | Method and apparatus for controlling screen of mobile device | |
JP2011221787A (ja) | 情報処理装置、及びプログラム | |
JP2016029591A (ja) | 情報処理装置、情報処理方法およびプログラム | |
US9761009B2 (en) | Motion tracking device control systems and methods | |
JP2018006961A (ja) | 画像処理装置、動画像選択方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20130507 |