JP7170312B2 - プログラム、情報処理装置、及び情報処理方法 - Google Patents

プログラム、情報処理装置、及び情報処理方法 Download PDF

Info

Publication number
JP7170312B2
JP7170312B2 JP2018170328A JP2018170328A JP7170312B2 JP 7170312 B2 JP7170312 B2 JP 7170312B2 JP 2018170328 A JP2018170328 A JP 2018170328A JP 2018170328 A JP2018170328 A JP 2018170328A JP 7170312 B2 JP7170312 B2 JP 7170312B2
Authority
JP
Japan
Prior art keywords
coordinates
angle
vector
circle
time
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.)
Active
Application number
JP2018170328A
Other languages
English (en)
Other versions
JP2020042611A (ja
Inventor
将弘 井出
草平 畠山
英嗣 入江
修一 坂井
桂史 丸山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Tokyo NUC
Original Assignee
University of Tokyo NUC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Tokyo NUC filed Critical University of Tokyo NUC
Priority to JP2018170328A priority Critical patent/JP7170312B2/ja
Publication of JP2020042611A publication Critical patent/JP2020042611A/ja
Application granted granted Critical
Publication of JP7170312B2 publication Critical patent/JP7170312B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Description

本開示は、ユーザーが移動させる物体の軌跡を検出する技術に関する。
近年、ウェアラブルデバイスが広く普及しており、このようなデバイスとのインタラクション手法が種々研究されている。この種のインタラクション手法として、ユーザーが体の一部(指など)或いはデバイスなどの物体を円形に移動させる、いわゆる円形ジェスチャーの軌跡を検出するものがある。更に、検出した円形軌跡の角度を算出し、当該角度に応じた値を入力値として用い、ディスプレイの表示画像のスクロール、デバイスが発する音量の変更、又は文字などの情報の入力などを行うものがある。
円形ジェスチャーの軌跡を検出する手法としては、特許文献1に開示された手法がある。この手法は、物体(ユーザーの体の一部、デバイスなど)の移動を走査(複数の点に分解)し、円形移動の円中心位置を、走査された点の履歴に応じて適合させていくものである。具体的には、新しい点(入力位置)毎に、現在の仮想円の中心位置と、円形移動の現在の出力角度(現在の仮想円の中心位置から現在位置へのベクトルと、正のX軸との間の角度)を算出する。そして、円形移動の現在位置の速度ベクトルと、以前位置の速度ベクトルから、円形移動の軌跡における極値を見出すとともに円中心位置を算出し、現在位置が当該極値の点に至るごとに円中心位置を更新する。特許文献1の手法では、以上のようにして物体の円形移動の軌跡を検出する。
特表2017-537387号公報
ユーザーが円形を描く際、正確な円形とならず凸凹した歪な円形となってしまうことがある。特に、ユーザーの手の平など不安定な場所に対して描く場合や空中で描く場合など、不安定な状況で描く場合には、正確な円形を描くことが特に困難となる。
特許文献1の手法では、上記の通り、円形移動の軌跡における極値を見出すとともに円中心位置を算出し、現在位置が当該極値の点に至るごとに円中心位置を更新する。換言すれば、円形軌跡における凸部(円中心から円外側に向かって突出する凸部)を見出したら、当該凸部に対応する円中心位置に更新する。同様に、円形軌跡における凹部(円中心側に凹んでいる凹部)を見出した場合も、当該凹部を凸部(逆側に突出する凸部)とみなし、当該軌跡に対して当該凸部の突出向きとは反対側の位置を円中心位置とする。このように、特許文献1のものでは、凹部(円中心側に凹んでいる凹部)を含まない凸部のみで構成される円形軌跡を前提としており、円形軌跡における極値に対応する部分(凹部、凸部)が凸部とみなすべきものか凹部とみなすべきものかに拘らず「凸部」とみなし、当該軌跡に対して当該凸部の突出向きとは反対側の位置を円中心位置とする。従って、円形軌跡が凹部(凹部とみなすべきもの)を含むものである場合には、ユーザーが描こうとした円とは全く異なる円を検出してしまうこととなる。このため、特許文献1のものでは、凹部を含む円形軌跡を正確に検出することができない。特に、過度に傾斜した凹凸があるなど複雑な歪となっている場合ほど、検出精度は低くなる。
そこで、本発明は、上記事情に鑑み、円形ジェスチャーの軌跡をより正確に検出することができるプログラム、情報処理装置、及び情報処理方法を提供することを目的とする。
本発明の一態様に係るプログラムは、コンピュータに、ユーザーが移動させる物体の通る座標を検知する検知手順と、第1時刻に検知された物体の座標である第1座標と、第1時刻より後である第2時刻に検知された物体の座標である第2座標の両方を通り、半径が異なる複数の候補円を特定する、候補円特定手順と、候補円ごとに、候補円の中心座標から、第1座標、第2座標、及び第1時刻と第2時刻との間に検知された1つ又は複数の第3座標の各座標までの距離における分散を算出する、分散算出手順と、候補円ごとの分散に基づいて、複数の候補円の中から、ユーザーが物体を移動させた軌跡に対応する1つの円を選択する、選択手順と、を実行させる。
本発明の一態様に係る情報処理装置は、ユーザーが移動させる物体の通る座標を検知する検知部と、第1時刻に検知された物体の座標である第1座標と、第1時刻より後である第2時刻に検知された物体の座標である第2座標の両方を通り、半径が異なる複数の候補円を特定する、候補円特定部と、候補円ごとに、候補円の中心座標から、第1座標、第2座標、及び第1時刻と第2時刻との間に検知された1つ又は複数の第3座標の各座標までの距離における分散を算出する、分散算出部と、候補円ごとの分散に基づいて、複数の候補円の中から、ユーザーが物体を移動させた軌跡に対応する1つの円を選択する、選択部と、を備える。
本発明の一態様に係る情報処理方法では、コンピュータが、ユーザーが移動させる物体の通る座標を検知する検知手順と、第1時刻に検知された物体の座標である第1座標と、第1時刻より後である第2時刻に検知された物体の座標である第2座標の両方を通り、半径が異なる複数の候補円を特定する、候補円特定手順と、候補円ごとに、候補円の中心座標から、第1座標、第2座標、及び第1時刻と第2時刻との間に検知された1つ又は複数の第3座標の各座標までの距離における分散を算出する、分散算出手順と、候補円ごとの分散に基づいて、複数の候補円の中から、ユーザーが物体を移動させた軌跡に対応する1つの円を選択する、選択手順と、を実行する。
本発明によれば、円形ジェスチャーの軌跡をより正確に検出することができるプログラムが提供される。
図1は、本実施形態に係るヘッドマウントディスプレイのハードウェア構成を示す図である。 図2は、本実施形態に係るヘッドマウントディスプレイの機能的構成を示す図である。 図3は、ユーザーが移動させる物体の座標の推移の一例を示す図である。 図4は、図3と同じ仮想平面における複数の領域に特定の情報が対応していることを示す図である。 図5は、図3と同じ仮想平面における複数の領域に特定の情報が対応していることを示す図である。 図6は、ディスプレイの表示画面の一部を示す図である。 図7は、ディスプレイの表示画面の一部を示す図である。 図8は、各候補円における中心座標から物体の軌跡までの距離の分布を示している。 図9は、図8に示す距離の分散を示している。 図10は、ディスプレイの表示画面の一部を示す図である。
以下、添付図面を参照しながら本実施形態について説明する。説明の理解を容易にするため、各図面において同一の構成要素に対しては可能な限り同一の符号を付して、重複する説明は省略する。
本実施形態は、本発明を、ユーザーの頭部に装着可能なディスプレイ装置であるヘッドマウントディスプレイ(Head Mounted Display)に適用した例である。
<1.ヘッドマウントディスプレイのハードウェア構成>
図1は、本実施形態に係るヘッドマウントディスプレイ100のハードウェア構成を示すブロック図である。以下、ヘッドマウントディスプレイ100をHMD100ともいう。図1に示されるように、HMD100(コンピュータ)は、CPU101、ROM102、RAM103、深度センサ104、ディスプレイ105を備えている。
CPU101は、HMD100の動作に関する各種演算処理を実行し、ディスプレイ105に表示する画像の生成等を実行する。ROM102は、HMD100の動作に関する各種プログラムやデータ等を記憶する。RAM103は、CPU101の演算処理結果(ディスプレイ105に表示する画像等)や深度センサ104の検出結果等の各種情報を一時的に記憶する。深度センサ104は、赤外線を照射して物体との距離を検出するセンサである。深度センサ104は、当該物体の座標を検知するために用いられる。ディスプレイ105は、CPU101の演算処理結果(画像等)等の各種情報を表示する。
<2.ヘッドマウントディスプレイの機能的構成>
図2は、本実施形態に係るHMD100の機能的構成を示す模式図である。図2に示されるように、HMD100は、例示的に、検知部110と、候補円特定部120と、分散算出部130と、選択部140とを備えている。これらの各部は、例えば、ROM102に記憶されているプログラムをCPU101が実行することにより実現される。
まず、検知部110について説明する。検知部110は、ユーザーが移動させる物体の座標を検知する機能を有する。検知部110は、深度センサ104を用いて実現される。
検知部110は、物体に施された色の種別に基づいて、当該物体を識別し、当該物体の座標を検知する。具体的には、検知部110は、物体が所定範囲(例えば、ユーザーの手の平)に配置されたら当該物体の検知を開始し、その後、所定時間ごと(例えば、1秒ごと)に当該物体の座標を検知する。なお、検知部110による検知開始のトリガーは、この態様に限られない。例えば、所定速度以上の速度で物体が移動開始したことを検知開始のトリガーとしてもよい。また、常に所定時間ごとに検知を行うようにしてもよい。以上のようにして、検知部110は、ユーザーが移動させる物体の座標を検知することが可能となる。
図3は、ユーザーが円を描く仮想平面、及び当該仮想平面における物体の座標の推移の一例を示す図である。尚、図中のベクトルVSは、X軸正の方向に向かうベクトル(以下、基準ベクトルVSという)である。以下、図3も参照しながら説明する。
検知部110は、物体の移動の検知が開始された時刻(以下、第1時刻という)における物体の座標(X1、Y1)(第1座標)、当該検知が終了した時刻(以下、第2時刻という)における物体の座標(Xn、Yn)(n≧3)(第2座標)、及び第1時刻と第2時刻との間における物体の座標(Xm、Ym)(m=2,…,n-1)(第3座標)を検知することが可能である。
以上のようにして、ユーザーが移動させる物体の座標を検知する検知部110としての機能が、深度センサ104によって実現される。尚、検知部110による物体の座標の検知手法は、深度センサ104を用いた上記のものに限られず、他の技術により実現されてもよい。例えば、物体を撮影した画像を認識し、これに基づいて物体の座標を検知するものであってもよい。また、タッチパッド等の入力装置を用いて物体の座標を入力することにより当該座標を検知するものであってもよい。
次に、候補円特定部120、分散算出部130、選択部140について説明する。
候補円特定部120は、検知部110によって検知された物体の座標に基づいて、ユーザーが描こうとした円に近似する円の候補(以下、候補円という)を特定する。
分散算出部130は、候補円ごとに、候補円の中心座標(x、y)から、座標(X1、Y1)、座標(Xn、Yn)(図3の例では、n=11)、及び第1時刻と第2時刻との間に検知された1つ又は複数の座標(Xm、Ym)(m=2,…,n-1)の各座標までの距離における分散s2を算出する。
選択部140は、候補円ごとの分散s2に基づいて、複数の候補円の中からユーザーが物体を移動させた軌跡に対応する1つの円を選択する。候補円特定部120、分散算出部130、及び選択部140は、CPU101によって実現される。
まず、候補円特定部120について説明する。
候補円特定部120は、候補円の半径Rの長さ(以下、これを「半径r」という)を複数特定する。半径rの最小値minと最大値maxが予め設定されている。候補円特定部120は、最小値min以上かつ最大値max以下の値の半径rを複数特定する。候補円特定部120は、指数関数的に最小値minに近い半径rほど多くなるように、複数の半径rを特定する。このように特定するのは、ユーザーが画面いっぱいに円を描く(最大値maxに近い半径rの円を描く)ことは比較的少なく、また大きい半径rの場合は正確な候補円を特定しにくいなどの理由による。
尚、候補円の半径rを複数特定する方法は上記以外のものであってもよい。例えば、予め設定されたある中央値(例えば、半径r=1.0)、及びその前後に所定間隔(例えば、0.1間隔)ずつずらして得られる所定個(例えば、中央値と、その前後に5個ずつで、計11個)の値を、半径rとして特定する、という方法であってもよい。この方法の場合、0.5,0.6,…,0.9,1.0,1.1,1.2,…,1.5の11個の半径rが特定されることとなる。
候補円特定部120は、座標(X1、Y1)と座標(Xn、Yn)の両方を通る円であって、上記のように特定された半径rの円を、候補円として特定する。これにより、複数の候補円が特定される。
次に、分散算出部130について説明する。
分散算出部130は、各候補円について、下記の連立方程式を解くことにより、候補円の中心座標(x、y)を算出する。
(X1-x)2+(Y1-y)2=r2
(Xn-x)2+(Yn-y)2=r2
分散算出部130は、各候補円について、中心座標(x、y)から、座標(X1、Y1)、座標(Xn、Yn)、及び第1時刻と第2時刻との間に検知された1つ又は複数の座標(Xm、Ym)の各座標までの距離を算出する。つまり、分散算出部130は、各候補円について、中心座標(x、y)から座標(X1、Y1)までの距離D1、中心座標(x、y)から座標(Xn、Yn)までの距離Dn、中心座標から座標(Xm、Ym)までの距離Dm(m=2,…,n-1)を算出する。
分散算出部130は、距離D1、距離Dn、距離Dmの各距離における分散s2を下記式により算出する。
Figure 0007170312000001
(Dμ=(D1+D2+・・・+Dn)/n)
次に、選択部140について説明する。
選択部140は、候補円特定部120によって特定された複数の候補円の中で分散s2に基づいて、1つの円を選択する。より具体的には、選択部140は、複数の候補円の中で分散s2の値が最も小さい1つの円を選択する。尚、分散s2の値の低い順に複数の円を選択する態様であってもよい。
ここで、上記の通り、特許文献1に開示された手法では、円形軌跡における極値に対応する部分(凹部、凸部)が凸部とみなすべきものか凹部とみなすべきものかに拘らず「凸部」とみなし、当該軌跡に対して当該凸部の突出向きとは反対側の位置を円中心位置とする。従って、円形軌跡が凹部(凹部とみなすべきもの)を含むものである場合には、ユーザーが描こうとした円とは全く異なる円を検出してしまうこととなる。このため、特許文献1に開示された手法では、凹部を含む円形軌跡を正確に検出することができない。特に、過度に傾斜した凹凸があるなど複雑な歪となっている場合ほど、検出精度は低くなる。
これに対し、本実施形態では、上記の通り、選択部140は、中心座標(x、y)からの距離(距離D1、距離Dn、距離Dm)における分散s2に基づいて円を選択する。換言すれば、特定の中心座標(x、y)に基づいた値(分散s2)に基づいて円を選択する。従って、円形軌跡に凹部が含まれていても、上記特許文献1のように凸部の突出向きとは反対側の位置を円中心位置(座標)とするようなことは無いので、ユーザーが描こうとした円とは全く異なる円を特定してしまうことが無くなる。よって、本実施形態によれば、ユーザーが凹凸のある円形を描いた場合であっても、上記特許文献1のように円形移動の軌跡における極値に対応する部分(凸部)とは反対側の位置を円中心位置(座標)とする場合よりも高精度に当該軌跡を検出することができる。
引き続き、HMD100の機能的構成について説明する。HMD100は、更に、例示的に、角度算出部150と、情報特定部160と、画像生成部170を備えている。角度算出部150は、選択部140によって選択された円の中心座標(x、y)から座標(X1、Y1)へのベクトルである第1ベクトルV1と、中心座標(x、y)から座標(Xn、Yn)へのベクトルである第2ベクトルV2との間の角度である第1角度A1などの角度を算出する。情報特定部160は、角度算出部150によって算出された角度(第1角度A1など)に基づいて各種情報を特定する。画像生成部170は、角度算出部150によって算出された第1角度A1を示す画像を生成する。角度算出部150、情報特定部160、および画像生成部170もCPU101によって実現される。
まず、角度算出部150について説明する。
角度算出部150は、第1ベクトルV1と第2ベクトルV2の内積と外積を算出し、これらの値に基づいて第1角度A1を算出する。第1角度A1は、上記した通り、「選択部140によって選択された円の中心座標(x、y)から座標(X1、Y1)へのベクトルである第1ベクトルV1と、中心座標(x、y)から座標(Xn、Yn)へのベクトルである第2ベクトルV2との間の角度」である。尚、本実施形態では、図3における反時計回りの向きを正の回転向きとしている。
角度算出部150は、基準ベクトルVSと第1ベクトルV1の内積と外積を算出し、これらの値に基づいて、基準ベクトルVSと第1ベクトルV1との間の角度A2(以下、第2角度A2という)を更に算出する。
以上のようにして、第1角度A1及び第2角度A2を算出する角度算出部150としての機能が、CPU101によって実現される。
次に、情報特定部160について説明する。
図4及び図5は、図3と同じ仮想平面が基準ベクトルVSとの位置関係に応じて複数の領域に分けられ、各領域に特定の情報が対応していることを示している。具体的には、図4は、各領域に文字群(「A~G」、「H~N」、…)が対応していることを示している。図5は、各領域に、文字群「A~G」に含まれる文字(「A」、「B」、…、「G」)が対応していることを示している。図示は省略してあるが、「A~G」以外の文字群においても同様に対応関係が設定されている。
図4に示されるように、図中の上側の領域(つまり、基準ベクトルVSとの角度が「45度以上135度未満」の領域)は、文字群「A~G」が対応している。反時計回りに次の領域(つまり、基準ベクトルVSとの角度が「135度以上225度未満」の領域)は、文字群「H~N」が対応している。反時計回りに次の領域(つまり、基準ベクトルVSとの角度が「225度以上315度未満」の領域)は、文字群「O~U」が対応している。反時計回りに次の領域(つまり、基準ベクトルVSとの角度が「315度以上360度未満」又は「0度以上45度未満」の領域)は、文字群「V~Z,BS,aA」が対応している。尚、「BS」は「Back space」に対応し、「aA」は大文字小文字の変換に対応している。
図5に示されるように、図中の上側の領域(つまり、基準ベクトルVSとの角度が「90度以上180度未満」の領域)は、文字「A」が対応している。反時計回りに次の領域(つまり、基準ベクトルVSとの角度が「180度以上225度未満」の領域)は、文字「B」が対応している。反時計回りに次の領域(つまり、基準ベクトルVSとの角度が「225度以上270度未満」の領域)は、文字「C」が対応している。反時計回りに次の領域(つまり、基準ベクトルVSとの角度が「270度以上315度未満」の領域)は、文字「D」が対応している。反時計回りに次の領域(つまり、基準ベクトルVSとの角度が「315度以上360度未満」の領域)は、文字「E」が対応している。反時計回りに次の領域(つまり、基準ベクトルVSとの角度が「0度以上45度未満」の領域)は、文字「F」が対応している。
尚、円の描き始めは物体の軌跡が安定しにくい(正確な円となりにくい)が、本実施形態においては、上記のように円の書き始めの領域(基準ベクトルVSとの角度が「90度以上180度未満」の領域)の角度範囲が他の領域よりも広くなっている(他領域が「45度」であるのに対して「90度」)ので、比較的容易に、正確な円を描くことができる。
情報特定部160は、図4に示される複数の文字群(「A~G」、「H~N」、…)の中から、第2角度A2に応じた1つの文字群を特定する(換言すれば、第1ベクトルV1が通る1つの領域に対応する文字群を特定する)。次に、情報特定部160は、特定した文字群の中から、第1角度A1に応じた1つの文字を特定する。情報特定部160は、例えば、「第1角度A1に第2角度A2を足した角度」に応じた文字群を特定する(換言すれば、第2ベクトルV2が通る1つの領域に対応する文字を特定する)。図3の第1角度A1及び第2角度A2の場合には、まず、第2角度A2に応じた文字群「A~G」を特定し、次に、第1角度A1に応じた文字「C」を特定する。
HMD100は、このように特定された文字を入力値とする入力装置として機能する。
尚、本実施形態では文字を特定する態様としてあるが、文字以外の情報を特定し、当該情報を入力する態様であってもよい。また、第1角度A1及び第2角度A2を用いて情報を特定する態様であったが、第1角度A1(換言すれば、ユーザーが物体を変位させた量)のみを用いて情報を特定及び入力する態様としてもよい。例えば、第1角度A1に基づいて、ディスプレイ105の表示画像のスクロール、HMD100又は他のデバイスが発する音量の変更等を行う態様としてもよい。
以上のようにして、角度算出部150によって算出された角度に基づいて各種情報を特定する情報特定部160としての機能が、CPU101によって実現される。
次に、画像生成部170について説明する。
画像生成部170は、角度算出部150で算出された第1角度A1を示す画像を生成する。(第1角度A1を示す画像の例については図10を参照)
以上のようにして、画像生成部170としての機能が、CPU101によって実現される。
なお、HMD100の上記機能的構成の一部又は全部が、HMD100以外の装置によって実現されてもよく、コンピュータネットワーク上において実現されてもよい。
<3.ヘッドマウントディスプレイの動作例>
図6は、ディスプレイ105に表示される画像の一部を示す図である。この例では、ユーザーが手に持つ棒状道具RTを移動させたときの軌跡を検出する。棒状道具RTの先端には青色部分Bが形成されており、検知部110は、青色部分Bの青色を検知することにより棒状道具RTを識別し、その座標を検知する。
ユーザーが、その手の平において、円を描くように棒状道具RTを移動させると、検知部110は、第1時刻における座標(X1、Y1)、第2時刻における座標(X11、Y11)、及び第1時刻と第2時刻との間における棒状道具RTの座標(Xm、Ym)(m=2,…,10)を検知する。尚、上記した通り、第1時刻は棒状道具RTの移動の検知が開始された時刻であり、第2時刻は移動途中の現時刻である。
次に、候補円特定部120は、複数の候補円を特定する。候補円特定部120は、上記のように複数の半径rを特定し、その結果、11個の候補円(以下、それぞれ候補円を、候補円C1、候補円C2、…、候補円C11という)を特定する。
図7は、図6と同様にディスプレイ105の表示画面を示す図であり、特定された複数の候補円が表示されている状態を示している。尚、図4では、便宜上、すべての候補円C1、C2、…、C11のうちの一部である候補円C2、C4、C6、C8、C10のみを示し、その他の残りの候補円の図示を省略してある。
各候補円の区別が可能なように、各候補円は互いに異なる色の線で表示される。具体的には、半径rが小さい候補円ほど赤色、半径rが大きい候補円ほど白色で表示される。尚、図7では、便宜上、各候補円の線の太さの違いで候補円の区別が可能となるようにしてある。
次に、分散算出部130は、上記した通り、各候補円について、中心座標(x、y)から座標(X1、Y1)までの距離D1、中心座標(x、y)から座標(Xn、Yn)までの距離Dn、中心座標(x、y)から座標(Xm、Ym)までの距離Dm(m=2,…,n-1)を算出する。図8は、各候補円における中心座標(x、y)から物体の軌跡(座標(X1、Y1)、(Xn、Yn)、座標(Xm、Ym))までの距離の分布を示している。図9は、図8に示す距離の分散s2を示している。この例では、図9に示されるように、候補円C6の分散s2が最も小さいので、選択部140は、候補円C6を選択する。
次に、角度算出部150は、第1角度A1(この例では「183度」)及び第2角度A2(この例では「93度」)を算出する。
次に、情報特定部160は、第2角度A2が「93度」であるので、文字群「A~G」を特定し、第1角度A1が「183度」である(従って、「第1角度A1に第2角度A2を足した角度」が「276度」)ので、文字「D」を特定する。
また、画像生成部170は、第1角度A1(この例では「183度」)を示す画像を生成する。図10に示されるように、ディスプレイ105の画面に「183度」が表示される。尚、図10では、選択部140によって選択された候補円C6の一部である円弧C61(候補円C6を近似円とした場合の物体の軌跡)も表示されている。
<4.変形例>
上記の例では、ユーザーが手に持つ棒状道具RTを移動させたときの軌跡を検出する態様であったが、検出する対象は、ユーザーが移動させる物体であれば特に限定されない。例えば、ユーザーの手を検出対象とし、手を移動させたときの軌跡を検出する態様であってもよい。
例えば、画像認識により、2本の指(例えば、親指と人差し指)の先端を離した状態とくっつけた状態とを識別する態様とすることができる。2本の指の先端を離した状態からくっつけた状態になったら指の座標の検知を開始し(つまり、この時を第1時刻とする)、2本の指を離した状態に戻ったら当該検知を終了する(つまり、この時を第2時刻とする)。このような態様であっても、上記の棒状道具RTの例と同様に、円形ジェスチャーの軌跡を検出することができ、尚且つ同様の効果を得ることができる。なお、開始及び終了のトリガーとなるジェスチャーはこれに限られず、任意のジェスチャーを採用することができる。
また、上記の例では、物体の移動の検知が開始された時刻を第1時刻、当該検知が終了した時刻を第2時刻とし、第1時刻における物体の座標と、第2時刻における物体の座標を通る円を候補円としている。しかしながら、この第1時刻と第2時刻はこのような時刻に限られない。つまり、物体の移動の検知が開始された後の時刻を第1時刻としてもよいし、当該検知が終了する前の時刻を第2時刻としてもよい。
以上、具体例を参照しつつ本実施形態について説明した。しかし、本発明はこれらの具体例に限定されるものではない。これら具体例に、当業者が適宜設計変更を加えたものも、本発明の特徴を備えている限り、本発明の範囲に包含される。前述した各具体例が備える各要素およびその配置、条件、形状などは、例示したものに限定されるわけではなく適宜変更することができる。前述した各具体例が備える各要素は、技術的な矛盾が生じない限り、適宜組み合わせを変えることができる。
100:ヘッドマウントディスプレイ
A1:第1角度
A2:第2角度
V1:第1ベクトル
V2:第2ベクトル
VS:基準ベクトル
C1,C2,…,C11:候補円

Claims (5)

  1. コンピュータに、
    ユーザーが移動させる物体の通る座標を検知する検知手順と、
    第1時刻に検知された前記物体の座標である第1座標と、前記第1時刻より後である第2時刻に検知された前記物体の座標である第2座標の両方を通り、半径が異なる複数の候補円を特定する、候補円特定手順と、
    前記候補円ごとに、前記候補円の中心座標から、前記第1座標、前記第2座標、及び前記第1時刻と前記第2時刻との間に検知された1つ又は複数の第3座標の各座標までの距離における分散を算出する、分散算出手順と、
    前記候補円ごとの前記分散に基づいて、前記複数の候補円の中から、前記ユーザーが前記物体を移動させた軌跡に対応する1つの円を選択する、選択手順と、
    前記選択手順で選択された円の前記中心座標から前記第1座標へのベクトルである第1ベクトルと、前記中心座標から前記第2座標へのベクトルである第2ベクトルとの間の角度である第1角度と、前記中心座標から所定方向に延びるベクトルである基準ベクトルと前記第1ベクトルとの間の角度である第2角度を算出する角度算出手順と、
    前記第2角度に基づいて複数の情報群の中から1つの情報群を特定し、特定した1つの情報群の中から前記第1角度に基づいて情報を特定する、情報特定手順と、を実行させる、
    プログラム。
  2. 前記コンピュータに、 前記角度算出手順で算出された前記第1角度を示す画像を生成する、画像生成手順を更に実行させる、
    請求項1に記載のプログラム。
  3. 前記第1時刻は、前記物体の移動の検知が開始された時刻である、
    請求項1又は請求項2に記載のプログラム。
  4. ユーザーが移動させる物体の通る座標を検知する検知部と、
    第1時刻に検知された前記物体の座標である第1座標と、前記第1時刻より後である第2時刻に検知された前記物体の座標である第2座標の両方を通り、半径が異なる複数の候補円を特定する、候補円特定部と、
    前記候補円ごとに、前記候補円の中心座標から、前記第1座標、前記第2座標、及び前記第1時刻と前記第2時刻との間に検知された1つ又は複数の第3座標の各座標までの距離における分散を算出する、分散算出部と、
    前記候補円ごとの前記分散に基づいて、前記複数の候補円の中から、前記ユーザーが前記物体を移動させた軌跡に対応する1つの円を選択する、選択部と、
    前記選択部で選択された円の前記中心座標から前記第1座標へのベクトルである第1ベクトルと、前記中心座標から前記第2座標へのベクトルである第2ベクトルとの間の角度である第1角度と、前記中心座標から所定方向に延びるベクトルである基準ベクトルと前記第1ベクトルとの間の角度である第2角度を算出する角度算出部と、
    前記第2角度に基づいて複数の情報群の中から1つの情報群を特定し、特定した1つの情報群の中から前記第1角度に基づいて情報を特定する、情報特定部と、を備える、
    情報処理装置。
  5. コンピュータが、
    ユーザーが移動させる物体の通る座標を検知する検知手順と、
    第1時刻に検知された前記物体の座標である第1座標と、前記第1時刻より後である第2時刻に検知された前記物体の座標である第2座標の両方を通り、半径が異なる複数の候補円を特定する、候補円特定手順と、
    前記候補円ごとに、前記候補円の中心座標から、前記第1座標、前記第2座標、及び前記第1時刻と前記第2時刻との間に検知された1つ又は複数の第3座標の各座標までの距離における分散を算出する、分散算出手順と、
    前記候補円ごとの前記分散に基づいて、前記複数の候補円の中から、前記ユーザーが前記物体を移動させた軌跡に対応する1つの円を選択する、選択手順と、
    前記選択手順で選択された円の前記中心座標から前記第1座標へのベクトルである第1ベクトルと、前記中心座標から前記第2座標へのベクトルである第2ベクトルとの間の角度である第1角度と、前記中心座標から所定方向に延びるベクトルである基準ベクトルと前記第1ベクトルとの間の角度である第2角度を算出する角度算出手順と、
    前記第2角度に基づいて複数の情報群の中から1つの情報群を特定し、特定した1つの情報群の中から前記第1角度に基づいて情報を特定する、情報特定手順と、を実行する、
    情報処理方法。
JP2018170328A 2018-09-12 2018-09-12 プログラム、情報処理装置、及び情報処理方法 Active JP7170312B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018170328A JP7170312B2 (ja) 2018-09-12 2018-09-12 プログラム、情報処理装置、及び情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018170328A JP7170312B2 (ja) 2018-09-12 2018-09-12 プログラム、情報処理装置、及び情報処理方法

Publications (2)

Publication Number Publication Date
JP2020042611A JP2020042611A (ja) 2020-03-19
JP7170312B2 true JP7170312B2 (ja) 2022-11-14

Family

ID=69798444

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018170328A Active JP7170312B2 (ja) 2018-09-12 2018-09-12 プログラム、情報処理装置、及び情報処理方法

Country Status (1)

Country Link
JP (1) JP7170312B2 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004303207A (ja) 2003-03-28 2004-10-28 Microsoft Corp ジェスチャの動的フィードバック
JP2011169657A (ja) 2010-02-17 2011-09-01 Alps Electric Co Ltd 磁界検知装置
JP2011227748A (ja) 2010-04-21 2011-11-10 Seiko Epson Corp 画像処理装置、画像処理方法、画像処理プログラム、及び欠陥検出装置
JP2013025579A (ja) 2011-07-21 2013-02-04 Panasonic Corp 文字入力装置及び文字入力プログラム
JP2013196391A (ja) 2012-03-19 2013-09-30 Fujitsu Ltd 情報処理装置、メニュー選択プログラム、及びメニュー選択方法
JP2017537387A (ja) 2014-10-29 2017-12-14 マイクロチップ テクノロジー ジャーマニー ゲーエムベーハー ヒューマンインターフェースデバイスおよび方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004303207A (ja) 2003-03-28 2004-10-28 Microsoft Corp ジェスチャの動的フィードバック
JP2011169657A (ja) 2010-02-17 2011-09-01 Alps Electric Co Ltd 磁界検知装置
JP2011227748A (ja) 2010-04-21 2011-11-10 Seiko Epson Corp 画像処理装置、画像処理方法、画像処理プログラム、及び欠陥検出装置
JP2013025579A (ja) 2011-07-21 2013-02-04 Panasonic Corp 文字入力装置及び文字入力プログラム
JP2013196391A (ja) 2012-03-19 2013-09-30 Fujitsu Ltd 情報処理装置、メニュー選択プログラム、及びメニュー選択方法
JP2017537387A (ja) 2014-10-29 2017-12-14 マイクロチップ テクノロジー ジャーマニー ゲーエムベーハー ヒューマンインターフェースデバイスおよび方法

Also Published As

Publication number Publication date
JP2020042611A (ja) 2020-03-19

Similar Documents

Publication Publication Date Title
JP7191714B2 (ja) デジタルデバイスとの対話のための直接的なポインティング検出のためのシステムおよび方法
US9606618B2 (en) Hand tracker for device with display
TWI569176B (zh) 手寫軌跡識別方法與系統
US10956030B2 (en) Multi-touch based drawing input method and apparatus
TWI567592B (zh) 手勢辨識方法及穿戴式裝置
US9547371B2 (en) User interface apparatus and method for controlling the same
US9529446B2 (en) Re-anchorable virtual panel in three-dimensional space
US11500453B2 (en) Information processing apparatus
JP7170312B2 (ja) プログラム、情報処理装置、及び情報処理方法
US10162420B2 (en) Recognition device, method, and storage medium
US20120206584A1 (en) Integrated input interface
JP6252351B2 (ja) 電子機器
JP2019021338A (ja) 情報処理装置
JP6664018B1 (ja) プログラム及び情報処理装置
WO2021161769A1 (ja) 情報処理装置、情報処理方法、およびプログラム
KR20200063727A (ko) 제스처 인식 방법 및 장치
JP2018026179A (ja) 情報処理装置およびプログラム
JP2017157245A (ja) 情報処理装置およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210909

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210909

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20210910

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220711

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220907

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220927

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221025

R150 Certificate of patent or registration of utility model

Ref document number: 7170312

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150