JP2012043194A - 情報処理装置、情報処理方法およびプログラム - Google Patents
情報処理装置、情報処理方法およびプログラム Download PDFInfo
- Publication number
- JP2012043194A JP2012043194A JP2010184006A JP2010184006A JP2012043194A JP 2012043194 A JP2012043194 A JP 2012043194A JP 2010184006 A JP2010184006 A JP 2010184006A JP 2010184006 A JP2010184006 A JP 2010184006A JP 2012043194 A JP2012043194 A JP 2012043194A
- Authority
- JP
- Japan
- Prior art keywords
- operation vector
- user
- vector
- information processing
- unit
- 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
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
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
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
【課題】ユーザの自然な身体の動きによって所望の操作指示を取得する。
【解決手段】情報処理装置100は、ユーザUの身体の特定部分P1の動きに基づく操作ベクトルV1を取得する取得部110と、取得された操作ベクトルV1の方向を補正する補正部120と、補正された操作ベクトルV2に従って処理を実行する処理部130と、を備える。このような構成によれば、ユーザUの自然な身体の動きから、情報処理装置100によって提供される機能においてユーザUが所望する方向の操作指示を取得することができ、ユーザUは身体の動きを意識的に調整することなく、情報処理装置100を思い通りに制御することができる。
【選択図】図3
【解決手段】情報処理装置100は、ユーザUの身体の特定部分P1の動きに基づく操作ベクトルV1を取得する取得部110と、取得された操作ベクトルV1の方向を補正する補正部120と、補正された操作ベクトルV2に従って処理を実行する処理部130と、を備える。このような構成によれば、ユーザUの自然な身体の動きから、情報処理装置100によって提供される機能においてユーザUが所望する方向の操作指示を取得することができ、ユーザUは身体の動きを意識的に調整することなく、情報処理装置100を思い通りに制御することができる。
【選択図】図3
Description
本発明は、情報処理装置、情報処理方法およびプログラムに関し、特に、ユーザの身体の動きに基づく操作指示を取得する情報処理装置、情報処理方法およびプログラムに関する。
近年、ユーザの身体の動きに基づいて、PC(Personal Computer)などの情報処理装置に対する操作指示を取得する技術が開発されている。ユーザの身体の動きは、例えば、装着されたマーカ、把持されたコントローラ、またはスペックルパターンを用いた画像解析などによってユーザの手などの身体の部分を認識し、さらに、三角測量、またはTOF(Time Of Flight)などの三次元計測手法によって、認識された身体の部分の位置を特定することによって取得される。
このような技術の例として、特許文献1には、スペックルパターンを用いた画像解析によって識別されたユーザのジェスチャーを、コンピュータアプリケーションに対する入力として用いる技術が記載されている。また、特許文献2には、ユーザが存在する物理空間をシステム上の仮想空間にマッピングし、物理空間において取得したユーザの動きを、仮想空間におけるカーソルの制御に反映させる技術が記載されている。
しかし、例えば、腕を水平に伸ばした状態で、手を左右方向に移動させようとすると、その手の軌跡が肩の関節を中心とした略円弧状になるように、ユーザの身体の自然な動きは、必ずしも直線的ではない。これに対して、PCなどのアプリケーションでは、例えば幅方向、高さ方向、奥行き方向などへの直線的な動きが想定されていることが多い。
そのため、例えば特許文献1および2に記載のように、ユーザの身体の動きを情報処理装置に対する操作指示として用いる場合、ユーザが直線的な動きを意図しているにもかかわらず、実際の身体の動きは直線的ではなく、ユーザが意図した通りの操作指示を取得することが難しいという問題があった。
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、ユーザの自然な身体の動きによって所望の操作指示を取得することが可能な、新規かつ改良された情報処理装置、情報処理方法およびプログラムを提供することにある。
上記課題を解決するために、本発明のある観点によれば、ユーザの身体の特定部分の動きに基づく操作ベクトルを取得する取得部と、上記取得された操作ベクトルの方向を補正する補正部と、上記補正された操作ベクトルに従って処理を実行する処理部と、を備える情報処理装置が提供される。
このような構成によれば、ユーザの自然な身体の動きから、情報処理装置によって提供される機能においてユーザが所望する方向の操作指示を取得することができ、ユーザは身体の動きを意識的に調整することなく、情報処理装置を思い通りに制御することができる。
上記補正部は、上記取得された操作ベクトルの方向を、上記処理のために定められた1または複数の方向のうちのいずれかの方向に補正してもよい。
上記補正部は、上記取得された操作ベクトルの方向と上記処理のために定められた1または複数の方向のうちのいずれかの方向とのなす角度が、第1の閾値よりも小さい場合に、上記操作ベクトルの方向を補正してもよい。
上記取得部は、上記取得部が処理の単位とする単位時間における、上記身体の特定部分の移動の始点から終点に向かうベクトルとして上記操作ベクトルを取得してもよい。
上記補正部は、上記取得された操作ベクトルの大きさが、第2の閾値よりも大きい場合に、上記取得された操作ベクトルの方向を補正してもよい。
上記取得部は、上記ユーザの身体の中心部分の位置を取得し、上記補正部は、上記身体の中心部分の位置からの距離が第3の閾値よりも大きい領域における上記身体の特定部分の動きについて、上記取得された操作ベクトルの方向を補正してもよい。
上記取得された操作ベクトルは、上記ユーザが位置する3次元空間における幅、高さ、および奥行きのそれぞれの方向の成分を含みうる3次元ベクトルであってもよい。
上記情報処理装置は、仮想的な3次元空間においてオブジェクトを表示させる表示制御部をさらに備え、上記処理部は、上記補正された操作ベクトルに従って、上記表示制御部が表示させる上記オブジェクトを移動させてもよい。
上記補正部は、上記取得された操作ベクトルの方向を、上記仮想的な3次元空間における幅、高さ、および奥行きのうちのいずれかの方向に補正してもよい。
上記補正部は、上記取得された操作ベクトルの方向が、上記仮想的な3次元空間における幅、高さ、および奥行きのそれぞれの方向のうちのいずれかと、第4の閾値よりも小さい角度をなす場合に、上記操作ベクトルの方向を補正してもよい。
また、上記課題を解決するために、本発明の別の観点によれば、ユーザの身体の特定部分の動きに基づく操作ベクトルを取得するステップと、上記取得された操作ベクトルの方向を補正するステップと、上記補正された操作ベクトルに従って処理を実行するステップと、を含む情報処理方法が提供される。
また、上記課題を解決するために、本発明のさらに別の観点によれば、ユーザの身体の特定部分の動きに基づく操作ベクトルを取得する取得部と、上記取得された操作ベクトルの方向を補正する補正部と、上記補正された操作ベクトルに従って処理を実行する処理部と、としてコンピュータを機能させるプログラムが提供される。
以上説明したように本発明によれば、ユーザの自然な身体の動きによって所望の操作指示を取得することができる。
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
なお、説明は以下の順序で行うものとする。
1.装置構成
2.操作ベクトルの補正
2−1.方向による判定
2−2.大きさによる判定
2−3.位置による判定
2−4.複数の方向の間での判定
3.変形例
3−1.補正パターンの変形例(1)
3−2.補正パターンの変形例(2)
4.まとめ
1.装置構成
2.操作ベクトルの補正
2−1.方向による判定
2−2.大きさによる判定
2−3.位置による判定
2−4.複数の方向の間での判定
3.変形例
3−1.補正パターンの変形例(1)
3−2.補正パターンの変形例(2)
4.まとめ
<1.装置構成>
まず、図1および図2を参照して、本発明の一実施形態に係る装置構成について説明する。
まず、図1および図2を参照して、本発明の一実施形態に係る装置構成について説明する。
図1は、本発明の一実施形態に係る情報処理装置100を含むシステムの概略的な構成を示す図である。図1を参照すると、情報処理装置100は、3次元空間Srに位置するユーザUによって操作される。ユーザUには、情報処理装置100によって制御される表示画面200が提示される。表示画面200では、仮想的な3次元空間Svにおいてオブジェクト210が表示される。ユーザUは、オブジェクト210を移動させるための情報処理装置100に対する操作として、身体の特定部分P1を移動させる。情報処理装置100の取得部110は、この身体の特定部分P1の動きに基づく操作ベクトルV1を取得する。
(システムの構成例)
情報処理装置100は、例えばPC、テレビなどでありうる。情報処理装置100は、取得部110および表示画面200と一体になった筐体として図示されているが、これには限られず、例えば、取得部110および表示画面200と、その他の部分とが互いに別体であって、ケーブル等で接続されていてもよい。また、ユーザUと同じ場所には取得部110および表示画面200だけがあり、その他の部分は別の場所にあって、ネットワークを介して取得部110および表示画面200と接続されていてもよい。
情報処理装置100は、例えばPC、テレビなどでありうる。情報処理装置100は、取得部110および表示画面200と一体になった筐体として図示されているが、これには限られず、例えば、取得部110および表示画面200と、その他の部分とが互いに別体であって、ケーブル等で接続されていてもよい。また、ユーザUと同じ場所には取得部110および表示画面200だけがあり、その他の部分は別の場所にあって、ネットワークを介して取得部110および表示画面200と接続されていてもよい。
ユーザUは、情報処理装置100を操作するユーザである。ユーザUは、3次元空間Srに位置している。3次元空間Srでは、取得部110に対向するユーザUからみた幅方向がx軸方向、高さ方向がy軸方向、奥行き方向がz軸方向として定義される。ユーザUは、3次元空間Srにおいて、身体の特定部分P1を移動させる。ここでは、身体の特定部分P1は、ユーザUの右手である。
なお、ユーザUは、必ずしも1人でなくてもよく、複数であってもよい。身体の特定部分P1は、ユーザUの身体の他の部分、例えば、左手、足、膝、肘、頭、顔などであってもよく、1人のユーザUに対して、例えば右手と左手のように複数認識されてもよい。複数のユーザUの身体の特定部分P1が認識される、または、単一のユーザUの複数の身体の特定部分P1が認識される場合、情報処理装置100は、複数の身体の特定部分P1のそれぞれから操作ベクトルV1を取得してもよいし、複数の身体の特定部分P1の全体から単一の操作ベクトルV1を取得してもよい。
操作ベクトルV1は、身体の特定部分P1の動きに基づくベクトルである。操作ベクトルV1は、ある時間における身体の特定部分P1の移動の始点から終点に向かうベクトルとして取得される。ある時間とは、例えば、情報処理装置100の取得部110が処理の単位とする単位時間でありうる。
また、操作ベクトルV1は、3次元空間Srにおける3次元ベクトルである。従って、操作ベクトルV1は、x軸方向、y軸方向、およびz軸方向のそれぞれの方向の成分を含みうる。操作ベクトルV1は、必ずしも3次元ベクトルでなくてもよく、例えば3次元空間Srにおける3次元ベクトルが次元圧縮された2次元ベクトル、つまりx軸およびy軸の方向の成分だけを含むベクトルであってもよい。
表示画面200は、例えばLCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、または有機EL(Electro-Luminescence)パネルなどでありうる。表示画面200では、仮想的な3次元空間Svにおいてオブジェクト210が表示される。仮想的な3次元空間Svは、ユーザUが位置する3次元空間Srに対応する座標系を有する。具体的には、表示画面200に対する幅方向がx軸、高さ方向がy軸、奥行き方向がz軸として定義される。表示画面200に表示されるのは、必ずしも仮想的な3次元空間Svでなくてもよく、例えば2次元平面であって、3次元ベクトルとして取得された操作ベクトルV1が次元圧縮されて2次元ベクトルとして処理に用いられてもよい。
なお、表示画面200は、情報処理装置100の一部として図示されているが、これには限られず、例えば、独立した筐体を有して、ケーブル等で情報処理装置100に接続されてもよい。また、後述のように情報処理装置100が表示画面200を制御しない場合、表示画面200は、システムに含まれなくてもよい。
(システムの動作例)
上記のようなシステムにおいて、例えば、情報処理装置100は、ユーザUに、動画または音楽などのコンテンツの再生機能を提供する。コンテンツの再生機能において、オブジェクト210は、例えば、コンテンツ、コンテンツを選択するためのポインタ、およびコンテンツに対する操作を示すボタンとして、仮想的な3次元空間Svに表示される。コンテンツを表すオブジェクト210は、仮想的な3次元空間Svにおいて、x軸方向、y軸方向、およびz軸方向に配列される。
上記のようなシステムにおいて、例えば、情報処理装置100は、ユーザUに、動画または音楽などのコンテンツの再生機能を提供する。コンテンツの再生機能において、オブジェクト210は、例えば、コンテンツ、コンテンツを選択するためのポインタ、およびコンテンツに対する操作を示すボタンとして、仮想的な3次元空間Svに表示される。コンテンツを表すオブジェクト210は、仮想的な3次元空間Svにおいて、x軸方向、y軸方向、およびz軸方向に配列される。
まず、ユーザUは、ポインタを表すオブジェクト210を、身体の特定部分P1の動きを用いた操作によって移動させる。情報処理装置100の取得部110は、3次元空間Srにおける身体の特定部分P1の動きに基づいて操作ベクトルV1を取得する。
次に、ユーザUは、ポインタを表すオブジェクト210を、所望のコンテンツを表すオブジェクト210に重複させ、オブジェクト210の選択動作をする。例えば、情報処理装置100の取得部110は、身体の特定部分P1の位置に加えて、身体の特定部分P1の動作を認識し、例えば手を握るなどの特定の動作をオブジェクト210の選択動作として取得する。
さらに、ユーザUは、ポインタおよび選択されたコンテンツを表すオブジェクト210を、所望の操作、例えば再生操作を示すボタンを表すオブジェクト210に重複させ、オブジェクト210の選択動作を解除する。以上の操作によって、情報処理装置100が提供するコンテンツの再生機能において、ユーザUが所望するコンテンツが再生される。
なお、情報処理装置100は、必ずしも表示画面200を制御する必要はない。例えば、情報処理装置100は、表示画面200を用いない機能、例えば音楽コンテンツの再生機能だけを提供し、身体の特定部分P1の動きに応じて、出力する音声の音量または音質などを調整してもよい。上述のように、このような場合、表示画面200はシステムに含まれなくてもよい。
図2は、本発明の一実施形態に係る情報処理装置100の機能構成を示すブロック図である。図2を参照すると、情報処理装置100は、取得部110、補正部120、処理部130、記憶部140、および表示制御部150を有する。補正部120および処理部130などの機能は、CPU(Central Processing Unit)160によって実現されうる。
取得部110は、ユーザUの身体の特定部分P1の動きに基づく操作ベクトルV1を取得する。取得部110は、例えば、身体の特定部分P1に装着されたマーカ、身体の特定部分P1に把持されたコントローラ、または身体の特定部分P1のスペックルパターンを用いた画像解析などによって、身体の特定部分P1を認識し、さらに、三角測量、またはTOFなどの三次元計測手法によって、身体の特定部分P1の位置を特定する。取得部110は、後述するように、ユーザUの身体の中心部分P2(図示せず)の位置を取得しうる。取得部110は、上記の機能を実現するために、例えば、カメラ、または赤外線の発光部および受光部などを含みうる。また、取得部110は、解析および計測のためのプロセッサを含んでもよい。プロセッサの機能は、CPU160を用いて実現されてもよい。
補正部120は、取得された操作ベクトルV1の方向を補正する。補正部120によって補正された操作ベクトルを、操作ベクトルV2とする。補正部120は、取得部110によって取得された操作ベクトルV1の方向を、後述する処理部130が実行する処理のために定められた1または複数の方向のうちのいずれかに補正して、操作ベクトルV2とする。具体的な補正の処理については後述する。補正部120の機能は、CPU160を用いて実現されてもよく、また、専用の回路構成によって実現されてもよい。
ここで、上記の定められた方向とは、x軸方向、y軸方向、およびz軸方向である。補正部120は、後述する判定処理によって、取得された操作ベクトルV1の方向を、上記の定められた方向のうちのいずれの方向に補正するかを判定する。また、補正部120は、後述する判定処理によって、取得された操作ベクトルV1の方向を補正せず、そのままベクトルV2としてもよい。なお、本明細書においては、取得された操作ベクトルV1の方向が補正されなかった場合でも、補正部120による判定処理を経たベクトルを、補正された操作ベクトルV2として扱う。
処理部130は、補正された操作ベクトルV2に従って処理を実行する。処理部130は、表示制御部150が表示画面200に表示させる仮想的な3次元空間Svにおいて、補正された操作ベクトルV2に従ってオブジェクト210を移動させる。処理部130が実行する処理はこれには限られず、情報処理装置100が提供する機能に関するいかなる処理であってもよい。例えば、処理部130は、情報処理装置100が提供する音楽コンテンツの再生機能において、補正された操作ベクトルV2に従って音量または音質を調整してもよい。処理部130の機能は、CPU160を用いて実現されてもよく、また、専用の回路構成によって実現されてもよい。
また、処理部130は、情報処理装置100が提供する機能に応じて、複数の種類の処理を実行してもよい。例えば、処理部130は、情報処理装置100が動画コンテンツの再生機能を提供する場合には、表示制御部150を介してオブジェクト210を移動させる処理を実行し、音楽コンテンツの再生機能を提供する場合には、音量または音質を調整する処理を実行してもよい。つまり、例えば、情報処理装置100がPCである場合、処理部130は、PCが提供するアプリケーションごとに異なった処理を実行してもよい。上述のように、補正部120が操作ベクトルV1の方向を補正する方向は、処理部130が実行する処理のために定められるため、処理部130が複数の種類の処理を実行する場合、補正部120が操作ベクトルV1の方向を補正する方向も、処理ごとに異なりうる。
記憶部140には、情報処理装置100における処理に必要なデータが格納される。記憶部140は、例えばRAM(Random Access Memory)、またはROM(Read Only Memory)などの記憶装置でありうる。また、記憶部140は、光ディスク、磁気ディスク、または半導体メモリなどのリムーバブル記憶媒体であってもよく、記憶装置とリムーバブル記憶媒体を組み合わせたものであってもよい。
表示制御部150は、図1において示された表示画面200を用いて、仮想的な3次元空間Svにおいてオブジェクト210を表示させる。表示制御部150は、例えば表示のための演算処理を実行するプロセッサを含む。プロセッサの機能は、例えばGPU(Graphical Processing Unit)によって実現されてもよく、またCPU160を用いて実現されてもよい。
CPU160は、記憶部140に格納されたプログラムを実行することによって、情報処理装置100の各部の機能をソフトウェアとして実現する。記憶部140に格納されたプログラムは、リムーバブル記憶媒体に格納されて提供されるものであってもよく、また通信部(図示せず)を介してネットワーク上からダウンロードされるものであってもよい。
なお、上記の情報処理装置100のそれぞれの構成要素は、必ずしも1つの筐体に含まれなくてもよく、例えばネットワーク上の異なる場所に配置されていて、ネットワークを介して協働して情報処理装置100の機能を提供するものであってもよい。
<2.操作ベクトルの補正>
次に、図3〜図8を参照して、本発明の一実施形態における操作ベクトルの補正について説明する。
次に、図3〜図8を参照して、本発明の一実施形態における操作ベクトルの補正について説明する。
図3は、本発明の一実施形態に係る操作ベクトルV1の補正を概略的に説明するための図である。図3を参照すると、身体の特定部分P1の軌跡上の点を結ぶベクトルとして取得された操作ベクトルV1a〜V1dの方向が補正されて、操作ベクトルV2a〜V2dになる。なお、ここでは、簡単のために、情報処理装置100の処理部130が実行する処理のために定められた方向のうち、x軸を例として説明するが、y軸方向、およびz軸方向についても同様である。また、ここでは、簡単のために、操作ベクトルV1がx−z平面上にある場合について説明するが、y軸方向の成分が含まれる場合についても同様である。
ユーザUは、例えばオブジェクト210をx軸方向に移動させるために、3次元空間Svにおいて、x軸方向の直線的な動きを意図して、身体の特定部分P1を移動させる。操作ベクトルV1a〜V1dは、そのときの身体の特定部分P1の動きを、取得部110が処理の単位とする単位時間のフレームによって分割し、それぞれのフレームにおける身体の特定部分P1の移動の始点から終点に向かうベクトルを操作ベクトルV1として取得したものである。ユーザUの身体の自然な動きは、必ずしも直線的ではないため、ユーザUがx軸方向の直線的な動きを意図しても、実際の身体の特定部分P1の動きは曲線的になり、操作ベクトルV1a〜V1dは、例えば図示されているように、曲線上の点を結ぶベクトルとして取得されることが多いと考えられる。
そこで、補正部120は、取得された操作ベクトルV1a〜V1dの方向を、すべてx軸方向になるように補正して、補正された操作ベクトルV2a〜V2dにする。補正された操作ベクトルV2a〜V2dを結合すると、取得された操作ベクトルV1a〜V1dに対応するx軸方向の直線的な動きが得られる。補正された操作ベクトルV2a〜V2dに従って処理部130が処理を実行することで、ユーザUは、意図した通りに情報処理装置100を操作することができる。
[2−1.方向による判定]
図4は、図3に示される場合における、操作ベクトルV1の方向による補正の有無の判定について説明するための図である。図4を参照すると、取得された操作ベクトルV1e〜V1hについて、操作ベクトルV1の方向がx軸方向となす角度θと、第1の閾値θTとの比較によって、操作ベクトルV1の方向が補正されるか否かが判定される。
図4は、図3に示される場合における、操作ベクトルV1の方向による補正の有無の判定について説明するための図である。図4を参照すると、取得された操作ベクトルV1e〜V1hについて、操作ベクトルV1の方向がx軸方向となす角度θと、第1の閾値θTとの比較によって、操作ベクトルV1の方向が補正されるか否かが判定される。
情報処理装置100の処理部130が実行する処理のために定められた方向がx軸方向、y軸方向、およびz軸方向であっても、ユーザがそれ以外の方向にオブジェクト210を移動させることを意図する場合がある。以下、図4、図5および図6を参照して、x軸方向について、ユーザUがx軸方向以外の方向にオブジェクト210を移動させることを意図した場合に、オブジェクト210を移動させるための操作ベクトルV1がx軸方向に補正されないように、補正部120が、取得された操作ベクトルV1の方向をx軸方向に補正するか否かについて判定する処理について説明する。
上記の判定に用いられる第1の閾値θTは、例えば、情報処理装置100が提供する機能に応じて予め設定されていてもよく、また、取得部110による身体の特定部分P1の実際の動きの取得結果を用いて調整可能であってもよい。取得された操作ベクトルV1の方向がx軸方向となす角度θが、第1の閾値θTよりも小さい場合、すなわち、操作ベクトルV1の方向が、x軸方向とあまりずれていない場合、補正部120は、ユーザUがx軸方向の動きを意図して身体の特定部分P1を移動させていると判断し、取得された操作ベクトルV1の方向をx軸方向に補正して、操作ベクトルV2とする。一方、取得された操作ベクトルV1の方向がx軸方向となる角度θが、角度θよりも小さくない場合、すなわち、操作ベクトルV1の方向が、x軸とある程度以上ずれている場合、補正部120は、ユーザUがx軸方向以外の方向の動きを意図して身体の特定部分P1を移動させていると判断し、取得された操作ベクトルV1の方向を補正せず、そのまま操作ベクトルV2とする。
図示されている例において、取得された操作ベクトルV1eの方向がx軸となす角度θeは、第1の閾値θTよりも小さい。よって、補正部120は、操作ベクトルV1eの方向をx軸方向に補正して、補正された操作ベクトルV2eにする。一方、取得された操作ベクトルV1fの方向がx軸方向となす角度θfは、第1の閾値θTよりも大きい。よって、補正部120は、操作ベクトルV1fの方向を補正せず、そのまま補正された操作ベクトルV2fにする。さらに、取得された操作ベクトルV1gの方向がx軸方向となす角度θgは、第1の閾値θTよりも小さい。よって、補正部120は、操作ベクトルV1gの方向をx軸方向に補正して、補正された操作ベクトルV2gにする。また、取得された操作ベクトルV1hの方向がx軸方向となす角度θhは、第1の閾値θTよりも小さい。よって、補正部120は、操作ベクトルV1hの方向をx軸方向に補正して、補正された操作ベクトルV2hにする。
以上のような、角度θを用いた判定によって、取得された操作ベクトルV1e〜V1hは、方向がx軸方向に補正される操作ベクトルV1e、V1g、およびV1hと、方向が補正されない操作ベクトルV1fとに分けられる。補正部120は、操作ベクトルV1e、V1g、V1hのそれぞれの方向をx軸方向に補正し、操作ベクトルV1fの方向を補正しない。これによって、ユーザUは、例えば「だいたいx軸方向」を意図した場合には正確にx軸方向にオブジェクト210を移動させることができ、「x軸とは明らかに違う方向」を意図した場合には、x軸方向とは異なる意図した方向にオブジェクト210を移動させることができる。
[2−2.大きさによる判定]
図5は、図3に示される場合における、操作ベクトルV1の大きさによる補正の有無の判定について説明するための図である。図5を参照すると、取得された操作ベクトルV1i〜V1mについて、操作ベクトルV1の大きさrと、第2の閾値rTとの比較によって、操作ベクトルV1の方向が補正されるか否かが判定される。
図5は、図3に示される場合における、操作ベクトルV1の大きさによる補正の有無の判定について説明するための図である。図5を参照すると、取得された操作ベクトルV1i〜V1mについて、操作ベクトルV1の大きさrと、第2の閾値rTとの比較によって、操作ベクトルV1の方向が補正されるか否かが判定される。
上記の判定に用いられる第2の閾値rTは、例えば、情報処理装置100が提供する機能に応じて予め設定されていてもよく、また、取得部110による身体の特定部分P1の実際の動きの取得結果を用いて調整可能であってもよい。取得された操作ベクトルV1の大きさrが、第2の閾値rTよりも大きい場合、すなわち、身体の特定部分P1がある程度速く移動した場合、補正部120は、ユーザUが大まかな動きを意図して身体の特定部分P1を移動させていると判断し、取得された操作ベクトルV1の方向をx軸方向に補正して、操作ベクトルV2とする。一方、取得された操作ベクトルV1の大きさrが、第2の閾値rTよりも大きくない場合、すなわち、身体の特定部分P1がゆっくり移動した場合、補正部120は、ユーザUが細かい動きを意図して身体の特定部分P1を移動させていると判断し、取得された操作ベクトルV1の方向を補正せず、そのまま操作ベクトルV2とする。
図示されている例において、取得された操作ベクトルV1iの大きさriは、第2の閾値rTよりも小さい。よって、補正部120は、操作ベクトルV1iの方向を補正せず、そのまま操作ベクトルV2iにする。一方、取得された操作ベクトルV1jの大きさrjは、第2の閾値rTよりも大きい。よって、補正部120は、操作ベクトルV1jの方向をx軸方向に補正して、補正された操作ベクトルV2jにする。さらに、取得された操作ベクトルV1kの大きさrkは、第2の閾値rTよりも小さい。よって、補正部120は、操作ベクトルV1kの方向を補正せず、そのまま操作ベクトルV2kにする。また、取得された操作ベクトルV1mの大きさrmは、ベクトルの大きさrmよりも小さい。よって、補正部120は、操作ベクトルV1mの方向を補正せず、そのまま操作ベクトルV2mにする。
以上のような、操作ベクトルの大きさrによる判定によって、取得された操作ベクトルV1i〜V1mは、方向がx軸方向に補正される操作ベクトルV1jと、方向が補正されない操作ベクトルV1i、V1k、およびV1mとに分けられる。補正部120は、操作ベクトルV1jの方向をx軸方向に補正し、操作ベクトルV1i、V1k、およびV1mの方向を補正しない。これによって、ユーザUは、例えば「大雑把な移動」を意図した場合には、特に意識しなくても自動的にx軸方向にオブジェクトを移動させることができ、「細かい調整」を意図した場合には、意図したそのままの方向にオブジェクトを移動させることができる。
なお、第2の閾値rTを用いた判定は、第1の閾値θTを用いた判定と組み合わせることができる。例えば、操作ベクトルV1の大きさが第2の閾値rTより大きく、かつ、操作ベクトルの方向とx軸とがなす角度θが、第1の閾値θTよりも小さい場合に、操作ベクトルV1の方向をx軸方向に補正してもよい。また、操作ベクトルV1の大きさが、第2の閾値rTよりも大きい場合と、そうでない場合との間で、第1の閾値θTの値が変化してもよい。具体的には、操作ベクトルV1の大きさが第2の閾値rTよりも大きい場合の第1の閾値θTの値が、そうでない場合の第1の閾値θTの値よりも大きく設定されてもよい。
[2−3.位置による判定]
図6は、図3に示される場合における、ユーザUの位置による補正の有無の判定について説明するための図である。図6を参照すると、ユーザUの身体の中心部分P2からの距離が第3の閾値である距離dTよりも大きい領域D1と、それ以外の領域D2とが設定されることによって、操作ベクトルV1の方向が補正されるか否かが判定される。
図6は、図3に示される場合における、ユーザUの位置による補正の有無の判定について説明するための図である。図6を参照すると、ユーザUの身体の中心部分P2からの距離が第3の閾値である距離dTよりも大きい領域D1と、それ以外の領域D2とが設定されることによって、操作ベクトルV1の方向が補正されるか否かが判定される。
図示されている場合において、情報処理装置100の取得部110は、例えばユーザUの身体の特定部分P1の位置を取得したのと同様の手法によって、身体の中心部分P2の位置を取得する。補正部120は、3次元空間Srにおいて、身体の中心部分P2からの距離が第3の閾値である距離dTよりも大きい領域D1と、それ以外の領域D2とを設定する。距離dTは、例えば、情報処理装置100が提供する機能に応じて予め設定されていてもよく、また、身体の特定部分P1の実際の動きの取得結果を用いて調整可能であってもよい。
ここで、身体の中心部分P2に近い領域D2は、ユーザUが身体の特定部分P1を身体の正面近くで移動させており、x軸方向へ直線的に身体の特定部分P1を移動させることが比較的容易であると推定される領域である。一方、身体の中心部分P2から遠い領域D1は、ユーザUが身体の特定部分P1を身体の正面から遠いところで移動させており、例えば関節の構造のために、x軸方向へ直線的に身体の特定部分P1を移動させることが困難であると推定される領域である。
従って、図示された例において、身体の特定部分P1が領域D1において移動した場合、すなわち、身体の特定部分P1が、ユーザUの身体の中心部分P2からある程度遠い領域で移動した場合、補正部120は、取得された操作ベクトルV1の方向を処理のために定められた方向に補正して操作ベクトルV2にする。一方、身体の特定部分P1が領域D2において移動した場合、すなわち、身体の特定部分P1が、ユーザUの身体の中心部分P2に近い領域で移動した場合、補正部120は、取得された操作ベクトルV1の方向を補正せず、そのまま操作ベクトルV2にする。
以上のように、補正部120は、領域D1および領域D2を設定して、取得された操作ベクトルV1の方向を補正するか否かを判定する。これによって、ユーザUは、身体の特定部分P1をx軸方向に直線状に移動させることが比較的容易な領域D2においては、身体の特定部分P1の動きをそのままオブジェクト210の移動に反映させることができ、身体の特定部分P1をx軸方向に直線状に移動させることが比較的難しい領域D1においては、身体の特定部分P1の移動の方向がx軸方向からいくらかずれたとしても、オブジェクト210の移動の方向をx軸方向にする補正を受けることができる。
[2−4.複数の方向の間での判定]
図7は、本発明の一実施形態に係る操作ベクトルの補正における、複数の方向の間での判定処理について説明するための図である。図7を参照すると、取得された操作ベクトルV1の方向は、x軸方向と角度θxをなし、y軸方向と角度θyをなし、z軸方向と角度θzをなす。なお、x軸方向、y軸方向、およびz軸方向は、いずれも、情報処理装置100の処理部130が実行する処理のために定められた方向である。また、操作ベクトルV1の方向の補正についての判定のための第1の閾値として、第1の閾値θTが定められている。
図7は、本発明の一実施形態に係る操作ベクトルの補正における、複数の方向の間での判定処理について説明するための図である。図7を参照すると、取得された操作ベクトルV1の方向は、x軸方向と角度θxをなし、y軸方向と角度θyをなし、z軸方向と角度θzをなす。なお、x軸方向、y軸方向、およびz軸方向は、いずれも、情報処理装置100の処理部130が実行する処理のために定められた方向である。また、操作ベクトルV1の方向の補正についての判定のための第1の閾値として、第1の閾値θTが定められている。
図示された例において、補正部120は、取得された操作ベクトルV1の方向を、x軸方向、y軸方向、およびz軸方向のうちのいずれの方向に補正するか、または、補正しないかを判定する。第1の閾値θTを用いたこの判定の処理について、以下で図8を参照して説明する。
図8は、図7に示される場合における、複数の方向の間での判定処理を示すフローチャートである。図8を参照すると、取得された操作ベクトルV1の方向がx軸方向、y軸方向、およびz軸方向となす角度である角度θx、角度θy、および角度θzを、それぞれ第1の閾値θTと比較することによって、操作ベクトルV1の方向をどの方向に補正するか、または補正しないかが判定される。
まず、補正部120は、取得された操作ベクトルV1の方向とx軸方向とのなす角度θxが、第1の閾値θTよりも小さいか否かを判定する(ステップS101)。ここで、角度θxが第1の閾値θTよりも小さい場合、補正部120は、操作ベクトルV1のy軸方向およびz軸方向の成分を0にする(ステップS103)。すなわち、補正部120は、操作ベクトルV1の方向をx軸方向に補正する。
一方、ステップS101において、角度θxが第1の閾値θTよりも小さくない場合、補正部120は、取得された操作ベクトルV1の方向とy軸方向とのなす角度θyが、第1の閾値θTよりも小さいか否かを判定する(ステップS105)。ここで、角度θyが第1の閾値θTよりも小さい場合、補正部120は、操作ベクトルV1のz軸方向およびx軸方向の成分を0にする(ステップS107)。すなわち、補正部120は、操作ベクトルV1の方向をy軸方向に補正する。
一方、ステップS105において、角度θyが第1の閾値θTよりも小さくない場合、補正部120は、取得された操作ベクトルV1の方向とz軸方向とのなす角度θzが、第1の閾値θTよりも小さいか否かを判定する(ステップS109)。ここで、角度θzが第1の閾値θTよりも小さい場合、補正部120は、操作ベクトルV1のz軸方向およびy軸方向の成分を0にする(ステップS111)。すなわち、補正部120は、操作ベクトルV1の方向をz軸方向に補正する。
一方、ステップS109において、角度θzが第1の閾値θTよりも小さくない場合、補正部120は、取得された操作ベクトルV1の方向を補正せずに、処理を終了する。
以上の処理によって、取得された操作ベクトルV1の方向がx軸方向、y軸方向、およびz軸方向となす角度である角度θx、角度θy、および角度θzのうち、第1の閾値θTよりも小さいものがあれば、操作ベクトルV1の方向はその角度に対応する方向に補正される。操作ベクトルV1の方向がx軸方向、y軸方向、およびz軸方向のそれぞれに補正される範囲が重複しないために、第1の閾値θTは、45°(=それぞれの軸が互いになす角度の半分)以下の値とすることが望ましい。
なお、上記の例において、角度θx、角度θy、および角度θzは、取得された操作ベクトルV1と、x軸方向、y軸方向、またはz軸方向とがなす角度の絶対値としたが、これには限られない。角度θx、角度θy、および角度θzは、正負を有する値として取得されてもよい。例えば、角度θxについて、操作ベクトルV1のz軸成分が正である場合には正、操作ベクトルV1のz軸成分である場合には負の値としてもよい。この場合、第1の閾値θTとの比較の代わりに、角度θxが所定の角度の範囲(例えば、−30°よりも大きく、+10°よりも小さい範囲)にあるか否かによって、操作ベクトルV1の方向をx軸方向に補正するか否かを判定してもよい。補正部120は、角度θy、および角度θzについても、同様の判定をしてもよい。
<3.変形例>
次に、図9および図10を参照して、本発明の一実施形態における、操作ベクトルの方向の補正パターンの2つの変形例について説明する。
次に、図9および図10を参照して、本発明の一実施形態における、操作ベクトルの方向の補正パターンの2つの変形例について説明する。
[3−1.補正パターンの変形例(1)]
図9は、本発明の一実施形態における、操作ベクトルV1の方向の補正パターンの変形例を示す図である。図9を参照すると、オブジェクト210aは、x軸方向、y軸方向、およびz軸方向の辺によって構成された略立方体である。本変形例に係る補正パターンは、x軸方向、y軸方向、およびz軸方向に加えて、オブジェクト210aの中心からオブジェクト210aのそれぞれの頂点に向かう方向、すなわち略立方体の中心から各頂点に向かう方向m1〜m8を含む。この場合、情報処理装置100の処理部130が実行する処理のために定められた方向は上記の11の方向である。
図9は、本発明の一実施形態における、操作ベクトルV1の方向の補正パターンの変形例を示す図である。図9を参照すると、オブジェクト210aは、x軸方向、y軸方向、およびz軸方向の辺によって構成された略立方体である。本変形例に係る補正パターンは、x軸方向、y軸方向、およびz軸方向に加えて、オブジェクト210aの中心からオブジェクト210aのそれぞれの頂点に向かう方向、すなわち略立方体の中心から各頂点に向かう方向m1〜m8を含む。この場合、情報処理装置100の処理部130が実行する処理のために定められた方向は上記の11の方向である。
本変形例に係る補正パターンが有効な場合は、例えば、オブジェクト210aの斜め方向の動きが多用されるような場合である。この場合、ユーザUは、x軸方向、y軸方向、およびz軸方向にオブジェクト210aを移動させるのに加えて、方向m1〜m8にオブジェクト210aを移動させる場合も多いため、これらの方向についても、身体の特定部分P1の曲線的な動きが直線的な動きに補正されることが有効である。
[3−1.補正パターンの変形例(2)]
図10は、本発明の一実施形態における、操作ベクトルV1の方向の補正パターンの別の変形例を示す図である。図10を参照すると、オブジェクト210bは、x−z平面に配列された略六角形のセル上に配置されるオブジェクトである。本変形例に係る補正パターンは、オブジェクト210が配置されるセルの中心から各辺に向かう方向m11〜m16を含む。この場合、情報処理装置100の処理部130が実行する処理のために定められた方向は、上記の6の方向である。
図10は、本発明の一実施形態における、操作ベクトルV1の方向の補正パターンの別の変形例を示す図である。図10を参照すると、オブジェクト210bは、x−z平面に配列された略六角形のセル上に配置されるオブジェクトである。本変形例に係る補正パターンは、オブジェクト210が配置されるセルの中心から各辺に向かう方向m11〜m16を含む。この場合、情報処理装置100の処理部130が実行する処理のために定められた方向は、上記の6の方向である。
本変形例に係る補正パターンが有効な場合は、例えば、ゲームなどにおいて、略六角形のセルがx−z平面上に配列され、ユーザUがその上で他のオブジェクト210cを移動させるような場合である。この場合、ユーザUは、他のセルが隣接するセルの辺の方向にオブジェクト210cを動かすことが多いため、ユーザの動きは方向m11〜m16のうちのいずれかに補正されることが有効である。
<4.まとめ>
本発明の一実施形態において、情報処理装置100の補正部120は、取得された操作ベクトルV1の方向を、処理部130が実行する処理のために定められた1または複数の方向のうちのいずれかの方向に補正しうる。このような構成によれば、処理部130が実行する処理に応じて、取得された操作ベクトルV1が補正される方向を定めることができる。定められる方向は、1つの方向には限られず、処理においてユーザUが多く用いる複数の方向とすることができる。また、情報処理装置100が複数の機能を提供する場合には、それぞれの機能に応じて操作ベクトルV1が補正される方向が定められるため、ユーザUは、利用する機能ごとに最適な操作ベクトルV1の補正を利用することができる。
本発明の一実施形態において、情報処理装置100の補正部120は、取得された操作ベクトルV1の方向を、処理部130が実行する処理のために定められた1または複数の方向のうちのいずれかの方向に補正しうる。このような構成によれば、処理部130が実行する処理に応じて、取得された操作ベクトルV1が補正される方向を定めることができる。定められる方向は、1つの方向には限られず、処理においてユーザUが多く用いる複数の方向とすることができる。また、情報処理装置100が複数の機能を提供する場合には、それぞれの機能に応じて操作ベクトルV1が補正される方向が定められるため、ユーザUは、利用する機能ごとに最適な操作ベクトルV1の補正を利用することができる。
また、補正部120は、取得された操作ベクトルV1の方向と、処理部130が実行する処理のために定められた1または複数の方向のうちのいずれかの方向とのなす角度θが、第1の閾値θTよりも小さい場合に、操作ベクトルV1の方向を補正しうる。このような構成によれば、上記の定められた方向からの角度のずれを用いて、ユーザUが上記の定められた方向のいずれかの方向を意図して身体の特定部分P1を移動させている場合と、上記の定められた方向とは異なる方向を意図して身体の特定部分P1を移動させている場合とを識別することができる。よって、ユーザUの必要に応じて、操作ベクトルV1の方向を補正するか否かを切り替えることができる。
また、取得部110は、取得部110が処理の単位とする単位時間における、身体の特定部分P1の移動の始点から終点に向かうベクトルとして操作ベクトルV1を取得しうる。このような構成によれば、操作ベクトルV1の大きさrから、身体の特定部分P1の移動の速さを推定することができる。
また、補正部120は、取得された操作ベクトルV1の大きさが、第2の閾値rTよりも大きい場合に、取得された操作ベクトルV1の方向を補正しうる。このような構成によれば、身体の特定部分P1の移動の速さを用いて、ユーザUが大雑把な移動を意図して身体の特定部分P1を移動させている場合と、細かい調整を意図して身体の特定部分P1を移動させている場合とを識別することができる。よって、ユーザUの必要に応じて、操作ベクトルV1の方向を補正するか否かを切り替えることができる。
また、取得部110は、ユーザUの身体の中心部分P2の位置を取得し、補正部120は、身体の中心部分P2の位置からの距離が第3の閾値である距離dTよりも大きい領域D1における身体の特定部分P1の動きについて、取得された操作ベクトルV1の方向を補正しうる。このような構成によれば、ユーザUの身体の中心部分P2から身体の特定部分P1までの距離を用いて、ユーザUが身体の特定部分P1を直線的に動かすことが比較的易しい領域で身体の特定部分P1を移動させているのか、身体の特定部分P1を直線的に動かすことが比較的難しい領域で身体の特定部分P1を移動させているのかを識別することができる。よって、ユーザUの必要に応じて、操作ベクトルV1の方向を補正するか否かを切り替えることができる。
また、取得された操作ベクトルV1は、ユーザUが位置する3次元空間Srにおける幅であるx軸、高さであるy軸、および奥行きであるz軸のそれぞれの方向の成分を含みうる3次元ベクトルでありうる。このような構成によれば、身体の特定部分P1を直線的に動かすことが特に難しい、奥行きであるz軸方向の成分を含むような操作ベクトルV1について、方向を補正して直線的な動きを取得することができる。
また、情報処理装置100は、仮想的な3次元空間Svにおいてオブジェクト210を表示させる表示制御部150をさらに備え、処理部130は、補正された操作ベクトルV2に従って、表示制御部150が表示させるオブジェクト210を移動させうる。このような構成によれば、ユーザUが方向を視覚的に認識するオブジェクト210の移動処理において、ユーザUが意図したオブジェクト210の直線的な動きを実現することができ、ユーザUによるオブジェクト210の操作の快適性を向上させることができる。
また、補正部120は、取得された操作ベクトルV1の方向を、仮想的な3次元空間Svにおける幅であるx軸、高さであるy軸、および奥行きであるz軸のうちのいずれかの方向に補正しうる。このような構成によれば、仮想的な3次元空間Svにおいて、ユーザUが特に認識しやすい幅、高さ、および奥行きの方向について、意図したとおりの直線的な動きが実現されることによって、ユーザUによるオブジェクト210の操作の快適性を向上させることができる。
また、補正部120は、取得された操作ベクトルV1の方向が、仮想的な3次元空間Svにおける幅であるx軸、高さであるy軸、および奥行きであるz軸のそれぞれの方向のうちのいずれかと、第4の閾値である角度θTよりも小さい角度をなす場合に、上記操作ベクトルの方向を補正しうる。このような構成によれば、仮想的な3次元空間Svにおいて、ユーザUが特に認識しやすい幅、高さ、および奥行きの方向について、ユーザUの必要に応じて、操作ベクトルV1の方向を補正するか否かを切り替えることができる。
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
100 情報処理装置
110 取得部
120 補正部
130 処理部
150 表示制御部
210 オブジェクト
Sr 3次元空間
Sv 仮想的な3次元空間
U ユーザ
P1 身体の特定部分
P2 身体の中心部分
V1 取得された操作ベクトル
V2 補正された操作ベクトル
110 取得部
120 補正部
130 処理部
150 表示制御部
210 オブジェクト
Sr 3次元空間
Sv 仮想的な3次元空間
U ユーザ
P1 身体の特定部分
P2 身体の中心部分
V1 取得された操作ベクトル
V2 補正された操作ベクトル
Claims (12)
- ユーザの身体の特定部分の動きに基づく操作ベクトルを取得する取得部と、
前記取得された操作ベクトルの方向を補正する補正部と、
前記補正された操作ベクトルに従って処理を実行する処理部と、
を備える情報処理装置。 - 前記補正部は、前記取得された操作ベクトルの方向を、前記処理のために定められた1または複数の方向のうちのいずれかの方向に補正する、
請求項1に記載の情報処理装置。 - 前記補正部は、前記取得された操作ベクトルの方向と前記処理のために定められた1または複数の方向のうちのいずれかの方向とのなす角度が、第1の閾値よりも小さい角度をなす場合に、前記操作ベクトルの方向を補正する、
請求項2に記載の情報処理装置。 - 前記取得部は、前記取得部が処理の単位とする単位時間における、前記身体の特定部分の移動の始点から終点に向かうベクトルとして前記操作ベクトルを取得する、
請求項1〜3のいずれか1項に記載の情報処理装置。 - 前記補正部は、前記取得された操作ベクトルの大きさが、第2の閾値よりも大きい場合に、前記取得された操作ベクトルの方向を補正する、
請求項4に記載の情報処理装置。 - 前記取得部は、前記ユーザの身体の中心部分の位置を取得し、
前記補正部は、前記身体の中心部分の位置からの距離が第3の閾値よりも大きい領域における前記身体の特定部分の動きについて、前記取得された操作ベクトルの方向を補正する、
請求項1〜5のいずれか1項に記載の情報処理装置。 - 前記取得された操作ベクトルは、前記ユーザが位置する3次元空間における幅、高さ、および奥行きのそれぞれの方向の成分を含みうる3次元ベクトルである、
請求項1〜6のいずれか1項に記載の情報処理装置。 - 仮想的な3次元空間においてオブジェクトを表示させる表示制御部をさらに備え、
前記処理部は、前記補正された操作ベクトルに従って、前記表示制御部が表示させる前記オブジェクトを移動させる、
請求項7に記載の情報処理装置。 - 前記補正部は、前記取得された操作ベクトルの方向を、前記仮想的な3次元空間における幅、高さ、および奥行きのうちのいずれかの方向に補正する、
請求項8に記載の情報処理装置。 - 前記補正部は、前記取得された操作ベクトルの方向が、前記仮想的な3次元空間における幅、高さ、および奥行きのそれぞれの方向のうちのいずれかと、第4の閾値よりも小さい角度をなす場合に、前記操作ベクトルの方向を補正する、
請求項9に記載の情報処理装置。 - ユーザの身体の特定部分の動きに基づく操作ベクトルを取得するステップと、
前記取得された操作ベクトルの方向を補正するステップと、
前記補正された操作ベクトルに従って処理を実行するステップと、
を含む情報処理方法。 - ユーザの身体の特定部分の動きに基づく操作ベクトルを取得する取得部と、
前記取得された操作ベクトルの方向を補正する補正部と、
前記補正された操作ベクトルに従って処理を実行する処理部と、
としてコンピュータを機能させるプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010184006A JP2012043194A (ja) | 2010-08-19 | 2010-08-19 | 情報処理装置、情報処理方法およびプログラム |
US13/207,778 US9507414B2 (en) | 2010-08-19 | 2011-08-11 | Information processing device, information processing method, and program |
CN201110236751.XA CN102375540B (zh) | 2010-08-19 | 2011-08-12 | 信息处理装置、信息处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010184006A JP2012043194A (ja) | 2010-08-19 | 2010-08-19 | 情報処理装置、情報処理方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012043194A true JP2012043194A (ja) | 2012-03-01 |
Family
ID=45595056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010184006A Withdrawn JP2012043194A (ja) | 2010-08-19 | 2010-08-19 | 情報処理装置、情報処理方法およびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9507414B2 (ja) |
JP (1) | JP2012043194A (ja) |
CN (1) | CN102375540B (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012164115A (ja) * | 2011-02-07 | 2012-08-30 | Fujitsu Ltd | 操作制御装置,操作制御プログラムおよび操作制御方法 |
WO2013005665A1 (ja) * | 2011-07-04 | 2013-01-10 | 株式会社ニコン | 電子機器及び入力方法 |
JP5383885B1 (ja) * | 2012-10-04 | 2014-01-08 | 株式会社Nttドコモ | 情報処理装置 |
WO2017208619A1 (ja) * | 2016-05-31 | 2017-12-07 | ソニー株式会社 | 情報処理装置、情報処理方法およびプログラム |
JP6293953B1 (ja) * | 2017-04-04 | 2018-03-14 | 京セラ株式会社 | 電子機器、プログラムおよび制御方法 |
JP2018181307A (ja) * | 2018-02-14 | 2018-11-15 | 京セラ株式会社 | 電子機器、プログラムおよび制御方法 |
WO2021140543A1 (ja) * | 2020-01-06 | 2021-07-15 | 三菱電機株式会社 | ジェスチャ検出装置およびジェスチャ検出方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6389275B2 (ja) * | 2014-12-09 | 2018-09-12 | 旭化成株式会社 | 位置方位検出装置及び位置方位検出プログラム |
MX2019005382A (es) * | 2016-11-11 | 2019-08-12 | Ericsson Telefon Ab L M | Soporte de una aplicacion de software de realidad aumentada. |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6154758A (en) * | 1994-05-13 | 2000-11-28 | Apple Computer, Inc. | Text conversion method for computer systems |
JP2002358149A (ja) * | 2001-06-01 | 2002-12-13 | Sony Corp | ユーザ入力装置 |
US20040095311A1 (en) * | 2002-11-19 | 2004-05-20 | Motorola, Inc. | Body-centric virtual interactive apparatus and method |
EP1851750A4 (en) * | 2005-02-08 | 2010-08-25 | Oblong Ind Inc | SYSTEM AND METHOD FOR CONTROL SYSTEM BASED ON GESTURES |
JP4917615B2 (ja) | 2006-02-27 | 2012-04-18 | プライム センス リミティド | スペックルの無相関を使用した距離マッピング(rangemapping) |
JP5060798B2 (ja) * | 2007-02-23 | 2012-10-31 | 任天堂株式会社 | 情報処理プログラムおよび情報処理装置 |
US8050886B2 (en) * | 2008-08-15 | 2011-11-01 | Apple Inc. | Motion plane correction for MEMs-based input devices |
JP5454133B2 (ja) * | 2009-12-25 | 2014-03-26 | 富士通株式会社 | 検知情報補正装置、可搬型装置、検知情報補正方法、およびコンピュータプログラム |
-
2010
- 2010-08-19 JP JP2010184006A patent/JP2012043194A/ja not_active Withdrawn
-
2011
- 2011-08-11 US US13/207,778 patent/US9507414B2/en active Active
- 2011-08-12 CN CN201110236751.XA patent/CN102375540B/zh not_active Expired - Fee Related
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012164115A (ja) * | 2011-02-07 | 2012-08-30 | Fujitsu Ltd | 操作制御装置,操作制御プログラムおよび操作制御方法 |
WO2013005665A1 (ja) * | 2011-07-04 | 2013-01-10 | 株式会社ニコン | 電子機器及び入力方法 |
JPWO2013005665A1 (ja) * | 2011-07-04 | 2015-02-23 | 株式会社ニコン | 電子機器及び入力方法 |
US9347968B2 (en) | 2011-07-04 | 2016-05-24 | Nikon Corporation | Electronic device and input method |
JP5383885B1 (ja) * | 2012-10-04 | 2014-01-08 | 株式会社Nttドコモ | 情報処理装置 |
JP2014075055A (ja) * | 2012-10-04 | 2014-04-24 | Ntt Docomo Inc | 情報処理装置 |
WO2017208619A1 (ja) * | 2016-05-31 | 2017-12-07 | ソニー株式会社 | 情報処理装置、情報処理方法およびプログラム |
JP6293953B1 (ja) * | 2017-04-04 | 2018-03-14 | 京セラ株式会社 | 電子機器、プログラムおよび制御方法 |
JP2018180647A (ja) * | 2017-04-04 | 2018-11-15 | 京セラ株式会社 | 電子機器、プログラムおよび制御方法 |
US10712828B2 (en) | 2017-04-04 | 2020-07-14 | Kyocera Corporation | Electronic device, recording medium, and control method |
JP2018181307A (ja) * | 2018-02-14 | 2018-11-15 | 京セラ株式会社 | 電子機器、プログラムおよび制御方法 |
WO2021140543A1 (ja) * | 2020-01-06 | 2021-07-15 | 三菱電機株式会社 | ジェスチャ検出装置およびジェスチャ検出方法 |
JPWO2021140543A1 (ja) * | 2020-01-06 | 2021-07-15 |
Also Published As
Publication number | Publication date |
---|---|
US9507414B2 (en) | 2016-11-29 |
US20120047466A1 (en) | 2012-02-23 |
CN102375540B (zh) | 2018-07-10 |
CN102375540A (zh) | 2012-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2012043194A (ja) | 情報処理装置、情報処理方法およびプログラム | |
US20210034161A1 (en) | Object motion tracking with remote device | |
US10737146B2 (en) | Headset visual displacement for motion correction | |
US11508137B2 (en) | Storage medium storing information processing program, information processing apparatus, information processing system, and information processing method for enlarging/reducing an object in a virtual space | |
US10984508B2 (en) | Demonstration devices and methods for enhancement for low vision users and systems improvements | |
US11645809B2 (en) | Intelligent stylus beam and assisted probabilistic input to element mapping in 2D and 3D graphical user interfaces | |
US10739936B2 (en) | Zero parallax drawing within a three dimensional display | |
US20140300547A1 (en) | Indirect 3D Scene Positioning Control | |
US11178385B2 (en) | Synthetic stereoscopic content capture | |
US20180143693A1 (en) | Virtual object manipulation | |
US20110261048A1 (en) | Electronic device and method for displaying three dimensional image | |
US20130222363A1 (en) | Stereoscopic imaging system and method thereof | |
US20160334884A1 (en) | Remote Sensitivity Adjustment in an Interactive Display System | |
US20130181971A1 (en) | Automatic Plane Alignment in 3D Environment | |
US11688148B2 (en) | Methods and systems for selection of objects | |
JP2017004356A (ja) | 仮想空間位置指定方法、プログラム、プログラムを記録した記録媒体、および、装置 | |
CN116848495A (zh) | 用于选择虚拟对象以进行扩展现实交互的设备、方法、系统和介质 | |
EP3850468B1 (en) | Snapping range for augmented reality objects | |
CN104063191A (zh) | 一种信息处理的方法及电子设备 | |
EP4312105A1 (en) | Head-mounted display and image displaying method | |
US11789584B1 (en) | User interface for interacting with an affordance in an environment | |
JP2018097477A (ja) | 表示制御方法および当該表示制御方法をコンピュータに実行させるためのプログラム | |
JP2020204873A (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: 20131105 |