JP6201770B2 - ジェスチャui装置、ジェスチャui方法及びプログラム - Google Patents

ジェスチャui装置、ジェスチャui方法及びプログラム Download PDF

Info

Publication number
JP6201770B2
JP6201770B2 JP2014005218A JP2014005218A JP6201770B2 JP 6201770 B2 JP6201770 B2 JP 6201770B2 JP 2014005218 A JP2014005218 A JP 2014005218A JP 2014005218 A JP2014005218 A JP 2014005218A JP 6201770 B2 JP6201770 B2 JP 6201770B2
Authority
JP
Japan
Prior art keywords
cursor
area
gesture
region
moving
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.)
Expired - Fee Related
Application number
JP2014005218A
Other languages
English (en)
Other versions
JP2015133059A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014005218A priority Critical patent/JP6201770B2/ja
Priority to US14/515,778 priority patent/US20150199020A1/en
Publication of JP2015133059A publication Critical patent/JP2015133059A/ja
Application granted granted Critical
Publication of JP6201770B2 publication Critical patent/JP6201770B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects

Description

本発明は、ジェスチャUI装置、ジェスチャUI方法及びプログラムに関する。
マウスやキーボードよりも高い直観性を持ち、画面を離れて操作する際のユーザインタフェースとして、ユーザの身振りや手振りによる空間ジェスチャに関する技術が提案されている(例えば、特許文献1、2参照)。ここでは、ユーザが、手やその他の身体の一部を特定の位置へ移動することや特定の移動軌跡で動かすことを「空間ジェスチャ」と呼ぶ。
カーソルの特定の移動軌跡によって画面上の操作対象(例えば、ボタン、メニュー、アイコン等の画面要素)に関連付いた命令を実行する方法の一例を挙げる。例えば、予め定めたジェスチャをマウスで入力することでマウスのボタンを押したり離したりする状態を生成する。これによって、マウスのボタンを押さずにアイコンを選択し、アイコンに関連付いた命令を実行させる方法である。また、例えば、指の動きでカーソルを制御し、オブジェクト周辺にエッジで囲まれた領域を設定し、カーソルが領域に下から入り、下へ出た場合に、その後のカーソルの動きに対応してオブジェクトをドラッグする方法である。
特開平10−91320号公報 特開平11−3177号公報
空間ジェスチャに最低限必要なセンサや認識装置以外のセンサや認識装置を追加することができない、あるいは、操作を簡易にしたいという理由で、空間ジェスチャにおいて操作中又は非操作中のモード変更を行わない場合、false positive(偽陽性)に課題がある。つまり、ユーザの動作を、システムが誤ってジェスチャとして認識し、意図しない操作が実行されてしまうという課題である。
その一例としては、ユーザが周囲の物を使う、飲食をする、体を触るなどの、画面操作を意図しないユーザの身体の動きをジェスチャとして認識してしまうという課題である。他の例としては、ジェスチャが、他のジェスチャの部分となってしまい、意図しないジェスチャを認識してしまうという課題である。
そこで、一側面では、ジェスチャによる入力において誤動作を防止することが可能なユーザインタフェース(以下、「UI」という。)を提供するジェスチャUI装置、ジェスチャUI方法及びプログラムを提供することを目的とする。
一つの案では、ジェスチャによる入力に応じて画面操作を行うジェスチャUI装置であって、第1の操作対象に対するカーソルの位置に基づき、前記第1の操作対象を操作する際には前記カーソルが移動していかないと予測される非操作領域を算出する非操作領域算出部と、カーソルの位置と速度ベクトルとに基づき、前記カーソルが進行していかないと予測される非進行領域を算出する非進行領域算出部と、前記非操作領域と前記非進行領域とから、前記カーソルが移動していかないと予測される非移動領域を算出する非移動領域算出部と、前記非移動領域の境界上を含む内側に前記第1の操作対象以外の第2の操作対象を配置する配置部と、を有するジェスチャUI装置が提供される。
一態様によれば、ジェスチャによる入力において誤動作を防止することができる。
ドラッグの命令方法の一例を示した図。 モード変更に関する誤操作の一例を説明するための図。 一実施形態にかかるジェスチャUI装置の概要を示した図。 一実施形態にかかるジェスチャUI装置の機能構成例を示した図。 一実施形態にかかる非操作領域の算出の一例を示した図。 一実施形態にかかる非進行領域の算出の一例を示した図。 一実施形態にかかる非進行領域の算出の一例を示した図。 一実施形態にかかる非移動領域の算出の一例を示した図。 一実施形態にかかる軌跡算出例及び境界算出の一例を示した図。 一実施形態にかかる移動軌跡の表示の一例を示した図。 一実施形態にかかるドラッグ命令発行処理の一例を示したフローチャート。 一実施形態にかかるドラッグ命令発行処理を説明するための図。 一実施形態にかかる削除命令発行処理の一例を示したフローチャート。 一実施形態にかかる移動軌跡の表示による効果の一例を示した図。 一実施形態にかかる非移動領域の算出の変形例を示した図。 一実施形態にかかる非移動領域の算出の変形例を示した図。 一実施形態にかかる非移動領域の算出の変形例を示した図。 一実施形態にかかる軌跡算出結果の表示にかかる変形例を示した図。 一実施形態にかかる軌跡算出の変形例を説明するための図。 一実施形態にかかるジェスチャUI装置のハードウェア構成の一例を示した図。
以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
[はじめに]
空間ジェスチャでは、容易にモード変更を行う手段を有しない。ここで、「モード」とは、操作中及び非操作中を示すシステムの状態のことで、例えば、同一のカーソル操作をしても、操作中の場合は画面操作を実行し、非操作中の場合は画面操作を実行しないとする。
空間ジェスチャにおけるモード変更の一つの例として手形を用いるものがある。例えば、手形がグーのときに操作中とし、パーのときに非操作中とすることでモード変更を実行する。具体的には、図1の<手形・音声によるドラッグ>に示されるように、ドラッグ対象へ移動後(1)、ユーザは、手形をパーからグーにしてドラッグを開始する(2)。ドラッグしたい位置まで対象をドラッグした後(3)、手形をグーからパーにしてドラッグを解除する(4)。解除後のモードは、通常のカーソル移動となる(5)。以上のモード変更を音声を用いて行った場合、以下のようになる。ドラッグ対象へ移動後(1)、ユーザは、キーワードを発声(例えば「ドラッグ」)し、ドラッグを開始する(2)。ドラッグ後(3)、特定のキーワードを発声(例えば「終了」)し、ドラッグを解除する(4)。解除後のモードは、通常のカーソル移動となる(5)。
モード変更の他の例としては、停留によるモード変更が挙げられる。図1の<停留によるドラッグ>に示されるように、ドラッグ対象へ移動後(1)、ユーザは、一定時間停留してドラッグを開始する(2)。ドラッグ後(3)、一定時間停留してドラッグを解除する(4)。解除後のモードは、通常のカーソル移動となる(5)。停留か否かは、例えば、数秒間停止していたら停留と判定してもよい。
モード変更の他の例としては、ジェスチャをする手以外の身体の部位を用いる方法である。例えば、右手でジェスチャをする場合に、左手の姿勢によって、モード変更をすることができる。あるいは、視線を用いることもできる。例えば、画面上の操作対象付近に視線がある場合に、操作中とし、他の位置に視線がある場合に、非操作中とすることができる。また、ユーザの手と操作する画面との距離を用いる方法として、距離が閾値以下のときに操作中とし、離れているときに非操作中とすることができる。
しかしながら、上記モード変更の例のうち、手形や音声を用いる場合、空間ジェスチャに最低限必要なセンサや認識装置以外に、追加でセンサや認識装置が必要になる。また、上記モード変更に停留を用いる場合、意図せず命令が実行される可能性がある。例えば、停留を用いる場合、意図せずに手を止めた場合であってもドラッグ命令が実行される可能性がある。
次に、停留や手形や音声を使わずにモード変更を行う方法の例を、図2を参照しながら説明する。画面21上には、ボタンやメニュー(以下、総称して「ボタン・メニュー50」ともいう。)、ドラッグ対象51(地図等)の他、一部が開口された輪60が表示されている。このモード変更方法では、輪60の開口部分をカーソル55が横切って輪60の内部に移動することでモード変更が行われ、輪60に関連付けられた何らかの操作が実行される。
このとき、カーソル55の位置に対して輪60をどのような位置に表示し、カーソル55をどのような移動軌跡で操作するかによって、誤操作のし易さが異なってくる。例えば、輪60の開口部分をカーソル55が横切って輪60の内部に移動することで、ドラッグ命令が実行されるとする。図2で示される位置に輪60を表示すると、ユーザが画面21の右上のメニュー50を操作しようとカーソル55を画面21の右上の方向に移動させたとき、図2の移動軌跡に示したように意図せずに輪60の開口部分をカーソル55が横切って輪60の内部に移動してしまう。その結果、意図しないドラッグ命令が実行されるという誤動作が発生する。
これに対して、本発明の一実施形態に係るジェスチャUI装置では、ユーザが意図せずにカーソル55を動かし難い領域を算出し、その領域で行われるジェスチャを、操作対象(例えば、輪60等)に関連付いた命令を実行するためのジェスチャとする。
画面上に表示される操作対象のうち、ボタン・メニュー50は、画面21上に表示されている操作対象であり、第1の操作対象の一例である。一方、輪60は、第1の操作対象以外の第2の操作対象の一例であり、ユーザが意図せずにカーソル55を動かし難い領域内(非移動領域)に表示される。
なお、第2の操作対象は、第1の操作対象と区別して説明するための便宜上の名称であり、実際には、第1の操作対象に関連付いた命令と第2の操作対象に関連付いた命令とは異なる命令に限られない。また、第1の操作対象を表示する図形と第2の操作対象を表示する図形とは同じ形状であってもよい。第2の操作対象は、非移動領域に表示される点において画面上のそれ以外の領域に表示される第1の操作対象と異なる。以下、本実施形態に係るジェスチャUI装置についてその概要、機能及び動作を順に説明する。
[ジェスチャUI装置の概要]
まず、本発明の一実施形態に係るジェスチャUI装置1の概要について、図3を参照しながら説明する。図3は、一実施形態に係るジェスチャUI装置1の概要を示した図である。ジェスチャUI装置1としては、例えば、PCやTV等の画面を有する端末が挙げられる。ジェスチャUI装置1は、身振りや手振り等のユーザの動作でPCやTVなどの画面を操作可能な装置である。ユーザが手やユーザの身体の一部を特定の位置へ移動することや特定の移動軌跡で動かすこと(空間ジェスチャ)を、以下「ジェスチャ」ともいう。
なお、ジェスチャを行うユーザの身体部分は、ユーザの身体の一部または全部であり得る。ジェスチャは、手、腕、足、胴体、頭、視線等の動きや方向であってもよい。ジェスチャは、口の動きや音声であってもよい。
ジェスチャUI装置1は、カメラ10とディスプレイ20とを有し、その上で動作するソフトウェアにより、ジェスチャによる画面操作、すなわち、ジェスチャによる入力操作に対する画面上のユーザインターフェイス(UI)を実現する。ソフトウェアの部分は等価な働きをするハードウェアによって実現されてもよい。
ジェスチャUI装置1は、ハードウェアの機構に関し、特定のものに依存しない。例えば、カメラ10は、ユーザの身体の一部の位置を取得できればよい。例えば、カメラ10は、距離センサ、単眼カメラ、ステレオカメラ等のセンサと物体トラッキング装置とを組み合わせて使用してもよい。カメラ10に替えてジャイロセンサ、加速度センサ、超音波などを用いて位置取得を行える端末を、ユーザが装着してもよい。
ディスプレイ20は、PCのモニタや、TV、プロジェクタ、HMD(Head Mounted Display)等、画面表示ができるものであればよい。
ジェスチャUI装置1では、例えば、カメラ10によりユーザUの手の位置が検出される。検出された手の位置に基づき、離れている画面21上の手の位置に応じた位置にカーソル21aが表示される。そして、表示されたカーソル21aにより画面21上のアイコンの選択等のGUI操作が行われる。このようにして、ユーザUは、ジェスチャにより離れた画面の操作を行うことができる。以下では、本実施形態に係るジェスチャUI装置1について詳細に説明する。
(機能構成)
まず、一実施形態にかかるジェスチャUI装置1の機能構成の一例について説明する。図4は、一実施形態にかかるジェスチャUI装置1の機能構成の一例を示した図である。
ジェスチャUI装置1は、位置取得部31、位置蓄積部32、操作対象取得部33、指示判定部34、非操作領域算出部35、非進行領域算出部36、非移動領域算出部37、軌跡算出部38、境界算出部39、軌跡検出部40、操作部41及び配置部42を有する。
位置取得部31は、ポインティングデバイスやユーザの手など身体の一部の位置から画面上の操作位置(カーソルの位置)を計算する。位置蓄積部32は、位置取得部31が取得したカーソルの位置を一定時間毎に蓄積する。操作対象取得部33は、画面上に表示されている第1の操作対象の位置を取得する。ここでは、図2では、第1の操作対象の一例としてボタン・メニュー50が図示されている。第1の操作対象に関連付いた命令の一例としては、ボタン・メニュー50やアイコンのそれぞれに関連付いた各アプリケーションの実行が挙げられる。
指示判定部34は、カーソルがドラッグ対象51の領域を指し示しているかを判定する。非操作領域算出部35は、画面上のボタン・メニュー50等の第1の操作対象の位置とカーソルの位置とに基づいて第1の操作対象を操作する際にはカーソルが移動しないと予測される領域(以下、「非操作領域」という。)を算出する。
非進行領域算出部36は、カーソルの速度ベクトル(カーソルの向き)とカーソルの位置とに基づいて急旋回せずにはカーソルが移動しない領域(以下、「非進行領域」という。)を算出する。非移動領域算出部37は、非進行領域と非操作領域に基づいて、カーソルが移動していかないと予測される領域(以下、「非移動領域」という。)を算出する。配置部42は、非移動領域の境界上を含む内側に第2の操作対象を配置する。
第2の操作対象に関連付いた命令の一例としては、輪60に関連付いたドラッグの開始や終了、削除、コピー等が挙げられる。本実施形態では、非移動領域において後述されるカーソルの所定の移動軌跡が検出されると第2の操作対象に関連付いた命令を実行するようにモード変更される。一方、所定の移動軌跡を検出しない場合には、モード変更されず、カーソルの操作は、第1の操作対象に対するカーソル移動と判断される。
軌跡算出部38は、非移動領域の境界上を含む領域内を進行する移動軌跡を算出する。境界算出部39は、非移動領域の境界上を含む領域内へのカーソル移動を判定するための境界を算出する。
軌跡検出部40は、軌跡算出部38が算出したカーソルの移動軌跡、および軌跡算出部38が算出した境界へ交差するカーソルの移動軌跡の一方または両方を検出する。操作部41は、上記移動軌跡が検出されたとき、ドラッグなどの第2の操作対象に応じた命令をシステムやアプリケーションに伝達する。
かかる構成の一実施形態にかかるジェスチャUI装置1によれば、非移動領域算出部37において、ユーザが意図せずにカーソルを動かしにくい非移動領域を算出し、この非移動領域で行われるジェスチャを、第2の操作対象に関連づいた命令を実行するためのジェスチャとする。これにより、意図的なジェスチャと、ボタン・メニュー50等の第1の操作対象を操作するためのカーソル移動と、第2の操作対象を操作するための意図的なジェスチャと、を区別することができる。これにより、ジェスチャによる入力において誤動作を防止することができる。以下、各部の機能について更に詳しく説明する。
位置取得部31は、ポインティングデバイスやユーザの手など身体の一部の位置から画面上の操作位置(カーソル位置)を計算する。具体的には、位置取得部31は、ユーザの手の位置や、ポインティングデバイスの位置を取得し、画面上のカーソルの位置を計算する。手の座標系は、ディスプレイ20(表示装置)の画面の法線方向をz軸とし、画面から離れる方向を正とする。画面の平面内の水平方向をx軸、垂直方向をy軸とする。この座標系で位置取得部31は適宜、ユーザの手の座標(x,y,z)を取得する。取得した手の位置に従って、画面上のカーソル座標(x,y)を計算する。カーソルの座標系は、画面の平面内の水平方向をx軸(右方向を正)、垂直方向をy軸(下方向を正)とする。手の座標からカーソルの座標pを算出する計算式の一例として式(1)を挙げる。
Figure 0006201770
ここで、a、b、a、bは、実数の定数で、画面の解像度などから、実験的に定める値である。
位置蓄積部32は、位置取得部31で取得した位置を一定の時間毎に蓄積する。位置蓄積部32は、位置取得部31が算出したカーソル座標p(x,y)を一定の時間毎に記録し、蓄積する。蓄積した座標は、カーソルの移動速度・方向を算出する際に用いる。一定の時間毎とは、例えば1秒間に30回などである。位置蓄積部32は、カーソルの座標を蓄積するだけでなく、カーソルの座標を破棄してもよい。例えば、一定の時間より以前に蓄積されたカーソルの座標を破棄することで、位置蓄積部32に一定の量以上のカーソルの座標が蓄積されないようにすることもできる。
操作対象取得部33は、画面上に表示されているアイコンやボタン、メニュー等の第1の操作対象が配置された領域wを取得する。指示判定部34は、カーソルが第1の操作対象の領域を指し示しているかを判定する。判定方法の一例としては、カーソル位置pが操作対象の領域wへ含まれている時間が、連続でt秒以上かを条件とする方法が挙げられる。tは、実験的に定める正の定数である。
図5(a)に示される画面21上の配置例では、非操作領域算出部35は、ボタン・メニュー50の位置とカーソル55の位置とに基づいて、ボタン・メニュー50を操作する際にはカーソル55が移動していかないと予測される領域である非操作領域R1を算出する。例えば、図5(b)に示されるように、非操作領域算出部35は、現在のカーソル55の位置から見て、ボタン・メニュー50が存在しない方向の領域を非操作領域R1として算出する。
非進行領域算出部36は、カーソル55の速度ベクトルとカーソル55の位置とに基づいて急旋回せずにはカーソル55が進行していかないと予測される領域である非進行領域R2を算出する。例えば、図6(a)に示され例では、非進行領域算出部36は、カーソル55の移動軌跡Drから導かれる、現在のカーソルの移動方向と逆の方向の領域を非進行領域R2として算出する。ここでは、現在のカーソルの移動方向を中心として両側に角度α(定数)の領域を除外した領域が、現在のカーソルの移動方向と逆の方向の領域、つまり、非進行領域R2となる。
空間ジェスチャでは、手を休めるために手を下げることが多い。このときのジェスチャとしては、画面のy軸の正の方向へ手が移動することが多い。このため、非進行領域算出部36は、カーソルの向きと重力方向とに基づき、非進行領域R2を算出してもよい。例えば、図6(b)に示される例のように、図6(a)に示した非進行領域R2以外の領域に加えて、重力方向の領域(ここでは、中心角α×2の領域+y軸の正の方向を中心として中心角β(定数)×2の領域)を除外した領域を非進行領域R2として算出してもよい。カーソル55が停留している場合には、図7に示される例のように、非進行領域算出部36は、重力方向の領域(例えば、y軸の正の方向を中心として中心角β(定数)×2の領域)を除外した領域を非進行領域R2として算出してもよい。
非移動領域算出部37は、非操作領域R1と非進行領域R2とを統合して、意図せずにカーソルが移動していかないと予測される領域である非移動領域Rを算出する。例えば、図8に示されるように、非移動領域算出部37は、非操作領域R1と非進行領域R2との二つの領域が重なる領域(共通領域)を非移動領域Rとして算出してもよい。なお、非操作領域R1及び非進行領域R2の算出は、カーソル55の位置からの方向に依存し、距離に依存しない。このため、非操作領域R1及び非進行領域R2は、非操作方向及び非進行方向に基づき算出されるということができる。
配置部42は、非移動領域Rの境界上又は内部に第2の操作対象を配置する。第2の操作対象は、図10に示されるように、カーソル55の移動方向を誘導する開口を有する輪60等の図形であってもよい。図10の第2の操作対象に関連付けられた命令は、ドラッグである。第2の操作対象は、輪60がなくてドラッグの表示部分61の画像が表示されてもよい。第2の操作対象は、カーソル55の移動方向を誘導する線を有する図形であってもよい。
軌跡算出部38は、非移動領域Rの境界上又は内側を進行するカーソルの移動軌跡、つまり、非移動領域Rに含まれるカーソルの移動軌跡を算出する。境界算出部39は、非移動領域Rの内側へのカーソル移動を判定するための境界、つまり、非移動領域Rに含まれる境界を算出する。
ここでは、軌跡算出部38が算出する移動軌跡と、境界算出部39が算出する境界との少なくとも一方が1つ以上算出されればよい。以下に、軌跡算出部38が算出する移動軌跡の一例と境界算出部39が算出する境界の一例とを示す。
軌跡算出部38が算出する移動軌跡は、特定の方向への直線的な移動軌跡で、その方向は、図9(a)に示されるように、有限の候補(ここでは、移動軌跡の矢印a〜hの8候補)の内の一つ又は複数であるとする。この場合、軌跡算出部38は、移動軌跡の候補が非移動領域Rに含まれるか判定し、含まれるものの一つ又は複数を移動軌跡として算出する。図9(a)では、例えば、非移動領域Rに含まれる移動軌跡の矢印a、e、fが第2の操作対象となり得る。例えば、第2の操作対象として移動軌跡の矢印eのみが表示された場合、移動軌跡の矢印eをたどるジェスチャが検出されたときは、モード変更が実行され、第2の操作対象に関連付けられた命令が実行される。例えば、移動軌跡bをたどるジェスチャが検出されたときは、非移動領域Rに含まれないカーソル移動であるため、モード変更は実行されず、その方向にカーソル55が移動する。なお、配置部42は、第2の操作対象の一例として非移動領域Rに含まれる移動軌跡の矢印a、e、fの少なくともいずれかを画面21上に配置してもよい。
境界算出部39が算出する境界は、カーソルの位置(図9では図示せず)を中心とした同一円周上の円弧で、図9(b)に示されるように、有限の候補(ここでは、境界を示す円弧A〜Hの8候補)の内の一つ又は複数であるとする。この場合、境界算出部39は、境界の候補が非移動領域Rに含まれるか判定し、もっとも含まれる部分が多い候補を境界を示す円弧として算出する。図9(b)では、例えば、円弧E、Fの少なくともいずれかが第2の操作対象となり得る。なお、配置部42は、第2の操作対象の一例として非移動領域Rに含まれる円弧E、Fの少なくともいずれかを画面21上に配置してもよい。
軌跡検出部40では、軌跡算出部38が算出した移動軌跡と一致するカーソルの移動軌跡、または境界算出部39が算出した境界へ交差するカーソルの移動軌跡を検出する。これらの移動軌跡の一致判定は、既存の軌跡認識技術を適用することで実現できる。
軌跡検出部40では、一定の時間、前記のカーソルの移動軌跡を検出しなかった場合に、検出を無効化してもよい。その場合、カーソルが移動して、再び第1の操作対象を指示した場合に、再び検出を有効化する。
算出された移動軌跡と一致するカーソルの移動軌跡、または算出された境界へ交差するカーソルの移動軌跡が検出されたとき、操作部41は、カーソルの移動からモードが切り替えられたと判定する(モード変更の実行)。そして、操作部41は、モード変更後の第2の操作対象の命令を実行する。具体的には、操作部41は、第2の操作対象に関連付いた命令として、例えば、対象のドラッグの開始や終了、対象のコピーや削除などを、システムやアプリケーションに伝達する。
(第2の操作対象の表示例)
配置部42は、ユーザにカーソルの移動方向を誘導するように第2の操作対象を表示することが好ましい。例えば、配置部42は、軌跡検出部40が検出する移動軌跡を画面21上に表示してもよい。最も単純な表示方法は、配置部42が画面21上に検出する移動軌跡をそのまま表示することである。例えば、移動軌跡を一つ表示する例としては、配置部42が図9(a)の矢印fを画面21上に表示したり、図9(b)の円弧Fを画面21上に表示したりすることが挙げられる。また、移動軌跡を複数表示する例としては、配置部42が、図9(a)の矢印a、e、fの二つ以上を画面21上に表示したり、図9(b)の円弧E,Fを画面21上に表示したりすることが挙げられる。
他の方法としては、配置部42が、図10のように切れ目の入った輪60を表示することで、モード変更するためのカーソル55の移動軌跡Drをユーザに示唆する方法がある。図10では、カーソル55が第2の操作対象である輪60の開口を横切って内側に入ったとき、輪60の脇に表示された、輪60に関連付いたドラッグ命令が実行される。配置部42は、カーソル55を切れ目から輪60の内側に入れる際にたどる移動軌跡Drと、軌跡検出部40が検出する移動軌跡とを一致させるように輪60の開口を表示する。ユーザが、誘導されたようにカーソル55を輪60の切れ目から内側へ移動させたときにモード変更が実行され、第2の操作対象である輪60に関連付けたドラッグ命令が実行される。このように、第2の操作対象が、ユーザにカーソルの移動方向を誘導する開口又は線を有する図形である場合、ユーザはモード変更の操作を理解し易く、その操作を学習しやすくなる可能性がある。
配置部42は、図8に示される非移動領域Rをそのまま第2の操作対象を示す図形として表示してもよい。その際、例えば非移動領域Rをスケルトン表示し、画面21全体を見易いように工夫してもよい。この場合、軌跡検出部40は、カーソル55が非移動領域Rの境界を横切り、非移動領域Rの外部から内部に移動するカーソルの動作に対して、ドラッグ対象のドラッグ開始や終了等の命令が実行されてもよい。
[ジェスチャUI処理(ドラッグ命令発行)]
次に、本発明の一実施形態に係るジェスチャUI処理を含むドラッグ命令発行処理について、図11を参照しながら説明する。図11は、本実施形態に係るドラッグ命令発行処理を示したフローチャートである。
まず、指示判定部34は、ドラッグ対象を指示したかを判定し(ステップS10)、ドラッグ対象が指示されるまでステップS10の処理を繰り返す。図12の「1」に示されるように、カーソルがドラッグ対象へ移動し、ドラッグ対象が指示されたと判定された場合、非操作領域算出部35は、ドラッグ対象以外のボタン・メニュー50が配置された領域を取得する(ステップS12)。非操作領域算出部35は、ボタン・メニュー50が配置された領域及びそのときのカーソルの位置に基づき、非操作領域を算出する(ステップS14)。例えば、図5(a)のドラッグ対象51が指示されたとき、ドラッグ対象51以外のボタン・メニュー50が配置された領域が取得され、非操作領域R1が算出される。
非進行領域算出部36は、カーソルの位置及び方向を取得し、非進行領域を算出する(ステップS14)。例えば、図6(a)に示されるように、非進行領域算出部36は、非進行領域R2を算出する。図6(b)及び図7に示されるように、非進行領域算出部36は、カーソルの位置及び方向と、重力方向とに基づき、非進行領域R2を算出してもよい。
次に、非移動領域算出部37は、非操作領域R1と非進行領域R2とを統合した非移動領域を算出する(ステップS14)。例えば、図8に示されるように、非操作領域R1と非進行領域R2とが重なる領域が非移動領域Rとなる。非移動領域Rは、意図せずにカーソルが移動していかないと予測される領域である。よって、ジェスチャによる画面操作において非移動領域Rに第2の操作対象が配置される。
次に、軌跡算出部38は、非移動領域Rに含まれるカーソルの軌跡を算出する(ステップS16)。ここで算出されるカーソルの軌跡には、非移動領域Rの境界上のカーソルの軌跡も含まれる。
次に、軌跡検出部40は、算出した移動軌跡と同一の移動軌跡が検出されたかを判定する(ステップS18)。同一の移動軌跡が検出されないと判定された場合、ステップS10に戻る。一方、同一の移動軌跡が検出された場合、操作部41は、第2の操作対象に関連付けたドラッグ命令(開始)をアプリケーションに送る(ステップS20)。例えば、非移動領域R内に図12の「2」に示されるように、一部が開口された輪60が配置されている場合について説明する。図12の「3」に示されるようにカーソルが開口から輪60の内部に入ると、軌跡検出部40は、算出されたカーソルの軌跡と同一の移動軌跡が検出されたと判定する。ここでは、輪60で示される第2の操作対象にはドラッグの開始・終了の命令が関連付けられているので、前記検出とともにドラッグ命令が開始され、輪60の表示は消える。
図11に戻り、操作部41は、カーソルの位置に応じてドラッグ対象をドラッグする命令を発行する(ステップS22)。図12の「4」に示されるように、ドラッグする命令が発行された状態で、カーソルが移動し、軌跡検出部40によりドラッグ終了位置が指示されたことが検出されると(ステップS24)、非操作領域算出部35は、ドラッグ対象以外のボタン・メニュー50が配置された領域を取得する(ステップS26)。非操作領域算出部35は、ボタン・メニュー50が配置された領域及びそのときのカーソルの位置に基づき、非操作領域を算出する(ステップS28)。非進行領域算出部36は、カーソルの位置及び方向を取得し、非進行領域を算出する(ステップS28)。次に、非移動領域算出部37は、非操作領域R1と非進行領域R2とを統合した非移動領域を算出する(ステップS28)。
次に、軌跡算出部38は、非移動領域Rに含まれるカーソルの軌跡を算出する(ステップS30)。次に、軌跡検出部40は、算出した移動軌跡と同一の移動軌跡が検出されたかを判定する(ステップS32)。同一の移動軌跡が検出されないと判定された場合、ステップS22に戻る。一方、同一の移動軌跡が検出された場合、操作部41は、第2の操作対象に関連付けたドラッグ命令(終了)をアプリケーションに送る(ステップS34)。例えば、非移動領域R内に図12の「5」に示される輪60が表示され、カーソルが開口から輪60の外部に出ると、軌跡検出部40は、同一の移動軌跡が検出されたと判定する。これにより、図12の「6」に示されるように、検出とともにドラッグ命令が終了され、輪60の表示は消え、通常のカーソル移動に戻る。
なお、図12の「3'」に示されるように、カーソルが開口(切れ目)から輪60の内部に入らないときには、輪60の表示は消え、通常のカーソルの移動に戻るようにしてもよい。同様に、図12の「6'」に示されるように、カーソルが開口(切れ目)以外から輪60の外部に出たとき、輪60の表示は消え、ドラッグ命令状態を継続してもよい。
なお、図12の「3」で表示される輪60は、開口を有しなくてもよい。開口がなくても輪60の内部にカーソルが入ることでドラッグの開始を指示できるためである。一方、図12の「5」で表示される輪60は開口を有することが好ましい。開口を用いて輪60の外部にカーソルが出ることでドラッグの終了を指示できるためである。
以上、本実施形態に係るドラッグ命令発行処理について説明した。次に、本実施形態に係る削除命令発行処理について説明する。
[ジェスチャUI処理(削除命令発行)]
次に、本発明の一実施形態に係るジェスチャUI処理を含む削除命令発行処理について、図13を参照しながら説明する。図13は、本実施形態に係る削除命令発行処理を示したフローチャートである。
まず、指示判定部34は、削除対象を指示したかを判定し(ステップS40)、削除対象が指示されるまでステップS40の処理を繰り返す。削除対象が指示されたと判定された場合、非操作領域算出部35は、削除対象以外のボタン・メニュー50が配置された領域を取得する(ステップS42)。非操作領域算出部35は、ボタン・メニュー50が配置された領域及びその時点のカーソルの位置に基づき、非操作領域を算出する(ステップS44)。また、非進行領域算出部36は、カーソルの位置及び方向を取得し、非進行領域を算出する(ステップS44)。
次に、非移動領域算出部37は、非操作領域R1と非進行領域R2とを統合した非移動領域を算出する(ステップS44)。次に、軌跡算出部38は、非移動領域に含まれるカーソルの軌跡を算出する(ステップS46)。
次に、軌跡検出部40は、算出した移動軌跡と同一の移動軌跡が検出されたかを判定する(ステップS48)。同一の移動軌跡が検出されないと判定された場合、ステップS40に戻る。一方、同一の移動軌跡が検出された場合、操作部41は、第2の操作対象に関連付けた操作命令(削除)をアプリケーションに送る(ステップS50)。これにより、第2の操作対象が削除され、輪60の表示は消え、通常のカーソル移動に戻る。
以上に説明したジェスチャUI処理によれば、図14に示されるように、画面上に表示されているボタン・メニュー50等に対して、ドラッグ対象51を操作する輪60は、非移動領域R内又は境界上に配置される。これによれば、第2の操作対象は、非移動領域Rに配置されているため、ユーザは第2の操作対象を操作使用と意図しない限り、カーソルを第2の操作対象の位置に移動しない。例えば、図14の輪60aは図示しない非移動領域R内に表示されるため、ユーザは意図しない限りカーソル55aを移動軌跡M2の方向に移動させることはない。その結果、カーソル55aについて、ボタン・メニュー50を選択するためのカーソルの移動軌跡M1と、輪60aに関連付いたドラッグ命令を実行するためのカーソルの移動軌跡M2とは異なる動線になる。同様に図14のカーソル55bについても、ボタン・メニュー50を選択するためのカーソルの移動軌跡M3と、輪60aに関連付いたドラッグ命令を選択するためのカーソルの移動軌跡M4とは異なる動線になる。
これにより、本実施形態に係るジェスチャUI装置によれば、ジェスチャによる入力において、画面21上に表示されている第1の操作対象に対するカーソル移動のためのジェスチャと、第2の操作対象に関連づいた命令を実行するためのジェスチャとを区別できる。この結果、ジェスチャによる入力において誤動作を防止することができる。また、本実施形態に係るジェスチャUI装置によれば、空間ジェスチャに最低限必要なセンサや認識装置以外のセンサや認識装置を追加する必要がない。また、煩雑なジェスチャを必要とせずに簡易なジェスチャでジェスチャ入力における誤動作を防止することができる。
[変形例]
最後に、上記実施形態の変形例について説明する。まず、非操作領域又は非移動領域の算出方法についての変形例である変形例1〜3について、図15〜図17を参照しながら説明する。
(変形例1)
まず、非移動領域の算出方法の変形例1について、図15を参照して説明する。図15では、画面21上に複数のドラッグ対象70a、70bが表示されている。変形例1では、カーソル55で指示しているドラッグ対象70a以外のドラッグ対象70bをボタン・メニュー50と同じ第1の操作対象とみなして、非移動領域Rが算出される。具体的には、非操作領域算出部35は、ボタン・メニュー50が配置された領域に基づき、ボタン・メニュー50を操作するためにカーソル移動が行われやすい領域を特定し、それ以外の領域を意図せずに行われ難い非操作領域R1として算出する。非操作領域算出部35は、カーソルにより指示されていないドラッグ対象70bが配置された領域に基づき、ドラッグ対象70bを操作するためにカーソル移動が行われやすい領域を特定し、それ以外の領域を意図せずに行われ難い非操作領域rとして算出する。非移動領域算出部37は、非操作領域R1と非操作領域rとの和の領域を非移動領域とする。この結果、変形例1においても、ジェスチャによる入力においてドラッグ対象を含む第1の操作対象に対するカーソル移動のためのジェスチャと、第2の操作対象に関連づいた命令を実行するためのジェスチャとを区別することができる。これにより、ジェスチャによる入力において誤動作を防止することができる。
(変形例2、3)
次に、非移動領域の算出方法の変形例2,3について、図16及び図17を参照して説明する。図16には、画面21上に選択頻度が異なるボタン・メニュー50、52が表示されている。ボタン・メニュー52は、ボタン・メニュー50よりも選択頻度が低い。
変形例2では、選択頻度が低い(例えば、めったに選択されない)ボタン・メニュー52を無視して非移動領域Rが算出される。選択頻度が低いボタン・メニュー52は、予め特定することができる。よって、変形例2では、非操作領域算出部35は、その特定されたボタン・メニュー52を無視して非操作領域R1を算出する。その結果、変形例2では、非操作領域R1には、カーソル55の位置からボタン・メニュー52を選択するために利用され易いカーソルの移動領域も含まれる。これによっても、ボタン・メニュー52はめったに選択されないため、ジェスチャによる入力において第1の操作対象に対するカーソル移動のためのジェスチャと、第2の操作対象に関連づいた命令を実行するためのジェスチャとを区別することができる。これにより、ジェスチャによる入力において誤動作を防止することができる。
変形例3においても、図17に示されるように、画面21上に選択頻度が異なるボタン・メニュー50が表示されている。変形例2では、各ボタン・メニュー50の選択頻度は固定値であったが、変形例3では、各ボタン・メニュー50の選択頻度は可変に設定される。
図17に示すように、第1の操作対象であるボタン・メニュー50が画面21に全体的に位置しているときには非操作領域が空となり、軌跡算出部38や境界算出部39が移動軌跡や境界を算出することが困難になる。そこで、第1の操作対象の選択頻度に対して増加する得点を画面の領域毎にカウントしてもよい。図17(a)では、第1の操作対象の選択頻度が最も多い(A)から最も少ない(D)に段階分けし、それぞれに4から1の得点を設定している。これにより、例えば、図17(a)に示されるように、選択頻度の高い順にボタン・メニュー50が、ボタン・メニューA、B、C、Dに分けられる。この場合、例えば、図17(b)に示されるように、ボタン・メニューA、Bよりも選択頻度が相対的に低いボタン・メニューC、Dを無視して非操作領域R1が算出されてもよい。その他、選択頻度の最も低いボタン・メニューDのみを無視して非操作領域R1を算出してもよいし、選択頻度の最も高いボタン・メニューA以外のボタン・メニューB,C,Dを無視して非操作領域R1を算出してもよい。
(変形例4)
次に、軌跡算出結果の表示にかかる変形例である変形例4について、図18を参照しながら説明する。図18では、軌跡算出の結果、カーソル55の位置から8方向に矢印a〜hが表示されている。変形例4では、移動軌跡を示す矢印に優先順位をつけ、優先順位の高い矢印を表示する。
ボタン・メニュー50の配置に偏りがあると、移動軌跡の算出結果を一定とすることができ、ユーザがジェスチャによる画面操作を学習しやすくなる。例えば、図18に示される非移動領域R内の移動軌跡の矢印b、c、d、fの優先順位が矢印d、c、b、fの順に高く設定されているとする。この場合、配置部42は、最も優先順位の高い移動軌跡の矢印dを画面に配置し、それ以外の移動軌跡c、b、fは配置しないようにしてもよい。または、優先順位の高い順に矢印の線を太くしたり、矢印の線の色を濃くしたり、矢印の大きさを大きくしたりするように、ユーザが学習し易いように移動軌跡の矢印の表示方法を変えてもよい。
(変形例5)
最後に、軌跡算出の変形例である変形例5について、図19を参照しながら説明する。変形例5では、移動軌跡が限定的な場合の簡易的な軌跡算出方法を説明する。図19の点線は、画面21上に表示されている各ボタン・メニュー50を選択する際のカーソルの移動軌跡の代表線(点線)を示す。代表線で示されるように、軌跡算出部38が算出する移動軌跡が、単純で候補が限定的な場合には、先述のような非操作領域R1と非進行領域R2とを算出しなくても、上記実施形態の場合と等価な算出結果を簡易な算出方法で得ることができる。
例えば、非移動領域算出部37は、予め、現在のカーソル55の位置からボタン・メニュー50などの第1の操作対象への移動軌跡を算出しておく。例えば、図19の代表線に示される直線的な移動軌跡を算出する場合、非操作領域算出部35は、各ボタン・メニュー50を選択する際に代表線に対して30°程度の幅を持たせた領域をカーソル55が移動すると予測される領域として算出する。
非移動領域算出部37は、算出したボタン・メニュー50への移動軌跡と類似している軌跡候補の矢印を候補から除く。また、非移動領域算出部37は、現在のカーソルの進行方向と類似している方向の軌跡候補の矢印を除く。こうして残った軌跡候補からひとつの移動軌跡の矢印を選択すればよい。例えば、図19に示した移動軌跡の矢印dを選択してもよい。この場合、第2の操作対象として、矢印dの位置に開口を有する輪60が配置されてもよい。
これによれば、非移動領域内のカーソルの移動軌跡を検出することで、ボタン・メニュー50へ向かう移動軌跡と十分に異なる移動軌跡を採用することができる。これにより、ジェスチャによる入力において第1の操作対象の操作のためのカーソル移動のためのジェスチャと、第2の操作対象に関連づいた命令を実行するためのジェスチャとを区別することができる。これにより、ジェスチャによる入力において誤動作を防止することができる。また、変形例5によれば、移動軌跡が限定的な場合、非操作領域算出部35、非進行領域算出部36、軌跡算出部38の処理を簡易的に実行することができ、ジェスチャ入力から第2の操作対象の表示までの処理を高速化することができる。
(ハードウェア構成例)
最後に、ジェスチャUI装置1のハードウェア構成例について簡単に説明する。図20は、本実施形態にかかるジェスチャUI装置1のハードウェア構成例を示す図である。ジェスチャUI装置1は、入力装置101、表示装置102、外部I/F103、RAM(Random Access Memory)104、ROM(Read Only Memory)105、CPU(Central Processing Unit)106、通信I/F107及びHDD(Hard Disk Drive)108を備え、それぞれがバスBで相互に接続されている。
入力装置101は、カメラ10やキーボードやマウスなどを含み、ジェスチャUI装置1に各操作を入力するのに用いられる。表示装置102は、ディスプレイ20を含み、ユーザのジェスチャ入力に応じて画面上のボタン・メニュー50の操作等を行い、その結果を表示する。
通信I/F107は、ジェスチャUI装置1をネットワークに接続するインタフェースである。これにより、ジェスチャUI装置1は、通信I/F107を介して他の機器と通信可能となる。
HDD108は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、装置全体を制御する基本ソフトウェアであるOS(Operating System)、及びOS上において各種機能を提供するアプリケーションソフトウェアなどがある。また、HDD108は、指示判定処理、非操作領域算出処理、非進行領域算出処理、非移動領域算出処理、軌跡算出処理、境界算出処理及び軌跡検出処理及び操作対象の操作処理を行うためにCPU106により実行されるプログラムを格納する。
外部I/F103は、外部装置とのインタフェースである。外部装置には、記録媒体103aなどがある。ジェスチャUI装置1は、外部I/F103を介して、記録媒体103aの読み取り及び/又は書き込みを行うことができる。記録媒体103aには、CD(Compact Disk)、及びDVD(Digital Versatile Disk)、ならびに、SDメモリカード(SD Memory card)やUSBメモリ(Universal Serial Bus memory)等がある。
ROM105は、不揮発性の半導体メモリ(記憶装置)であり、起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定などのプログラムやデータが格納されている。RAM104は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。CPU106は、上記記憶装置(例えば「HDD」や「ROM」など)から、プログラムやデータをRAM上に読み出し、処理を実行することで、装置全体の制御や搭載機能を実現する演算装置である。
指示判定部34、非操作領域算出部35、非進行領域算出部36、非移動領域算出部37、軌跡算出部38、境界算出部39、軌跡検出部40及び操作部41の各部は、HDD108にインストールされたプログラムがCPU106に実行させる処理により実現される。
位置取得部31は、入力装置101を用いて実現可能である。位置蓄積部32は、例えば、RAM104、HDD108、又はジェスチャUI装置1にネットワークを介して接続される記憶装置を用いて実現可能である。
以上、ジェスチャUI装置、ジェスチャUI方法及びプログラムを上記実施形態により説明したが、本発明は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、上記実施形態及び各変形例において矛盾しない範囲で組み合わせることができる。
以上の説明に関し、更に以下の項を開示する。
(付記1)
ジェスチャによる入力に応じて画面操作を行うジェスチャUI装置であって、
第1の操作対象が表示されている画面上のカーソルの移動方向を予測し、前記予測したカーソルの移動方向に基づき前記カーソルが移動していかないと予測される非移動領域を算出する非移動領域算出部と、
前記非移動領域の境界上を含む内側に前記第1の操作対象以外の第2の操作対象を配置する配置部と、
を有するジェスチャUI装置。
(付記2)
前記配置部は、
前記第2の操作対象としてカーソルの移動方向を誘導する開口又は線を有する図形を表示する、
付記1に記載のジェスチャUI装置。
(付記3)
前記第1の操作対象に対するカーソルの位置に基づき、前記第1の操作対象を操作する際には前記カーソルが移動していかないと予測される非操作領域を算出する非操作領域算出部と、
カーソルの位置と向きとに基づき、前記カーソルが進行していかないと予測される非進行領域を算出する非進行領域算出部と、を有し、
前記非移動領域算出部は、
前記非操作領域と前記非進行領域とから前記非移動領域を算出する、
付記1又は2に記載のジェスチャUI装置。
(付記4)
前記非進行領域算出部は、
カーソルの向きと重力方向との少なくともいずれかに基づき、前記カーソルが進行していかないと予測される非進行領域を算出する、
付記3に記載のジェスチャUI装置。
(付記5)
ジェスチャによる入力に応じて画面操作を行うジェスチャUI方法であって、
第1の操作対象が表示されている画面上のカーソルの移動方向を予測し、前記予測したカーソルの移動方向に基づき前記カーソルが移動していかないと予測される非移動領域を算出し、
前記非移動領域の境界上を含む内側に前記第1の操作対象以外の第2の操作対象を配置する、
処理をコンピュータが実行するジェスチャUI方法。
(付記6)
前記第2の操作対象としてカーソルの移動方向を誘導する開口又は線を有する図形を表示する、
付記5に記載のジェスチャUI方法。
(付記7)
前記非移動領域を算出する処理は、
前記第1の操作対象に対するカーソルの位置に基づき、前記第1の操作対象を操作する際には前記カーソルが移動していかないと予測される非操作領域(R1,図5)を算出する処理と、
カーソルの位置と向きとに基づき、前記カーソルが進行していかないと予測される非進行領域を算出する処理と、を含み、
前記非操作領域と前記非進行領域とから前記非移動領域を算出する、
付記5又は6に記載のジェスチャUI方法。
(付記8)
前記非進行領域を算出する処理は、
カーソルの向きと重力方向との少なくともいずれかに基づき、前記カーソルが進行していかないと予測される非進行領域を算出する、
付記7に記載のジェスチャUI方法。
(付記9)
ジェスチャによる入力に応じて画面操作を行う処理をコンピュータが実行するプログラムであって、
第1の操作対象が表示されている画面上のカーソルの移動方向を予測し、前記予測したカーソルの移動方向に基づき前記カーソルが移動していかないと予測される非移動領域を算出し、
前記非移動領域の境界上を含む内側に前記第1の操作対象以外の第2の操作対象を配置する、
プログラム。
(付記10) 前記第2の操作対象としてカーソルの移動方向を誘導する開口又は線を有する図形を表示する、
付記9に記載のプログラム。
(付記11)
前記非移動領域を算出する処理は、
前記第1の操作対象に対するカーソルの位置に基づき、前記第1の操作対象を操作する際には前記カーソルが移動していかないと予測される非操作領域を算出する処理と、
カーソルの位置と向きとに基づき、前記カーソルが進行していかないと予測される非進行領域を算出する処理と、を含み、
前記非操作領域と前記非進行領域とから前記非移動領域を算出する、
付記9又は10に記載のプログラム。
(付記12)
前記非進行領域を算出する処理は、
カーソルの向きと重力方向との少なくともいずれかに基づき、前記カーソルが進行していかないと予測される非進行領域を算出する、
付記11に記載のプログラム。
1:ジェスチャ入力装置
10:カメラ
20:ディスプレイ
31:位置取得部
32:位置蓄積部
33:操作対象取得部
34:指示判定部
35:非操作領域算出部
36:非進行領域算出部
37:非移動領域算出部
38:軌跡算出部
39:境界算出部
40:軌跡検出部
41:操作部
42:配置部

Claims (5)

  1. ジェスチャによる入力に応じて画面操作を行うジェスチャUI装置であって、
    第1の操作対象に対するカーソルの位置に基づき、前記第1の操作対象を操作する際には前記カーソルが移動していかないと予測される非操作領域を算出する非操作領域算出部と、
    カーソルの位置と速度ベクトルとに基づき、前記カーソルが進行していかないと予測される非進行領域を算出する非進行領域算出部と、
    前記非操作領域と前記非進行領域とから、前記カーソルが移動していかないと予測される非移動領域を算出する非移動領域算出部と、
    前記非移動領域の境界上を含む内側に前記第1の操作対象以外の第2の操作対象を配置する配置部と、
    を有するジェスチャUI装置。
  2. 前記配置部は、
    前記第2の操作対象としてカーソルの移動方向を誘導する開口又は線を有する図形を表示する、
    請求項1に記載のジェスチャUI装置。
  3. 前記非進行領域算出部は、
    カーソルの速度ベクトルと重力方向との少なくともいずれかに基づき、前記カーソルが進行していかないと予測される非進行領域を算出する、
    請求項1または2に記載のジェスチャUI装置。
  4. ジェスチャによる入力に応じて画面操作を行うジェスチャUI方法であって、
    第1の操作対象に対するカーソルの位置に基づき、前記第1の操作対象を操作する際には前記カーソルが移動していかないと予測される非操作領域を算出し、
    カーソルの位置と速度ベクトルとに基づき、前記カーソルが進行していかないと予測される非進行領域を算出し、
    前記非操作領域と前記非進行領域とから、前記カーソルが移動していかないと予測される非移動領域を算出し、
    前記非移動領域の境界上を含む内側に前記第1の操作対象以外の第2の操作対象を配置する、処理をコンピュータが実行するジェスチャUI方法。
  5. ジェスチャによる入力に応じて画面操作を行う処理をコンピュータが実行するプログラムであって、
    第1の操作対象に対するカーソルの位置に基づき、前記第1の操作対象を操作する際には前記カーソルが移動していかないと予測される非操作領域を算出し、
    カーソルの位置と速度ベクトルとに基づき、前記カーソルが進行していかないと予測される非進行領域を算出し、
    前記非操作領域と前記非進行領域とから、前記カーソルが移動していかないと予測される非移動領域を算出し、
    前記非移動領域の境界上を含む内側に前記第1の操作対象以外の第2の操作対象を配置する、
    プログラム。
JP2014005218A 2014-01-15 2014-01-15 ジェスチャui装置、ジェスチャui方法及びプログラム Expired - Fee Related JP6201770B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014005218A JP6201770B2 (ja) 2014-01-15 2014-01-15 ジェスチャui装置、ジェスチャui方法及びプログラム
US14/515,778 US20150199020A1 (en) 2014-01-15 2014-10-16 Gesture ui device, gesture ui method, and computer-readable recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014005218A JP6201770B2 (ja) 2014-01-15 2014-01-15 ジェスチャui装置、ジェスチャui方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2015133059A JP2015133059A (ja) 2015-07-23
JP6201770B2 true JP6201770B2 (ja) 2017-09-27

Family

ID=53521345

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014005218A Expired - Fee Related JP6201770B2 (ja) 2014-01-15 2014-01-15 ジェスチャui装置、ジェスチャui方法及びプログラム

Country Status (2)

Country Link
US (1) US20150199020A1 (ja)
JP (1) JP6201770B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016017956A1 (en) * 2014-07-30 2016-02-04 Samsung Electronics Co., Ltd. Wearable device and method of operating the same
US10048835B2 (en) * 2014-10-31 2018-08-14 Microsoft Technology Licensing, Llc User interface functionality for facilitating interaction between users and their environments
EP3324270A1 (en) * 2016-11-16 2018-05-23 Thomson Licensing Selection of an object in an augmented reality environment
KR102488580B1 (ko) * 2017-01-12 2023-01-13 삼성전자주식회사 적응적인 사용자 인터페이스를 제공하기 위한 장치 및 방법
EP3399733A1 (en) * 2017-05-02 2018-11-07 OCE Holding B.V. A system and a method for dragging and dropping a digital object onto a digital receptive module on a pixel display screen
JP6915492B2 (ja) * 2017-10-11 2021-08-04 トヨタ自動車株式会社 表示制御装置
JP2019139332A (ja) * 2018-02-06 2019-08-22 富士通株式会社 情報処理装置、情報処理方法及び情報処理プログラム
USD956059S1 (en) * 2019-02-20 2022-06-28 Textio, Inc. Display screen or portion thereof with animated graphical user interface
USD956058S1 (en) * 2019-02-20 2022-06-28 Textio, Inc. Display screen or portion thereof with animated graphical user interface

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2140164A1 (en) * 1994-01-27 1995-07-28 Kenneth R. Robertson System and method for computer cursor control
JPH08335140A (ja) * 1995-06-07 1996-12-17 Nec Corp カーソル制御方式
JP3511462B2 (ja) * 1998-01-29 2004-03-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 操作画像表示装置およびその方法
JP3477675B2 (ja) * 1999-06-04 2003-12-10 インターナショナル・ビジネス・マシーンズ・コーポレーション ポインタ操作の補助方法
US6717600B2 (en) * 2000-12-15 2004-04-06 International Business Machines Corporation Proximity selection of selectable item in a graphical user interface
US7210107B2 (en) * 2003-06-27 2007-04-24 Microsoft Corporation Menus whose geometry is bounded by two radii and an arc
WO2008010278A1 (fr) * 2006-07-20 2008-01-24 Panasonic Corporation dispositif de commande de SAISIE
WO2009128148A1 (ja) * 2008-04-16 2009-10-22 パイオニア株式会社 遠隔操作装置
US8514251B2 (en) * 2008-06-23 2013-08-20 Qualcomm Incorporated Enhanced character input using recognized gestures
US8245156B2 (en) * 2008-06-28 2012-08-14 Apple Inc. Radial menu selection
JP5276576B2 (ja) * 2009-12-03 2013-08-28 三菱電機株式会社 表示装置
US8914305B2 (en) * 2010-06-30 2014-12-16 Trading Technologies International, Inc. Method and apparatus for motion based target prediction and interaction
WO2012005005A1 (ja) * 2010-07-07 2012-01-12 パナソニック株式会社 端末装置およびgui画面生成方法
WO2013094371A1 (ja) * 2011-12-22 2013-06-27 ソニー株式会社 表示制御装置、表示制御方法およびコンピュータプログラム
JP2014137616A (ja) * 2013-01-15 2014-07-28 Fujitsu Ltd 表示制御装置、表示制御システム及び表示制御方法

Also Published As

Publication number Publication date
US20150199020A1 (en) 2015-07-16
JP2015133059A (ja) 2015-07-23

Similar Documents

Publication Publication Date Title
JP6201770B2 (ja) ジェスチャui装置、ジェスチャui方法及びプログラム
US9529527B2 (en) Information processing apparatus and control method, and recording medium
US9658764B2 (en) Information processing apparatus and control method thereof
US10635184B2 (en) Information processing device, information processing method, and program
US10318146B2 (en) Control area for a touch screen
KR101356368B1 (ko) 어플리케이션 전환 장치 및 방법
JP6370893B2 (ja) 検出されたジェスチャーに基づいてデバイス動作を実行するためのシステムおよび方法
JP5448370B2 (ja) 情報処理装置及びその制御方法、プログラム、記憶媒体
US9128526B2 (en) Operation control device, operation control method, and computer-readable recording medium for distinguishing an intended motion for gesture control
US7849421B2 (en) Virtual mouse driving apparatus and method using two-handed gestures
US20150212683A1 (en) Information display device and display information operation method
US20150234572A1 (en) Information display device and display information operation method
US9880684B2 (en) Information processing apparatus, method for controlling information processing apparatus, and storage medium
KR20160058117A (ko) 미래 사용자 입력을 예측한 상태 변화에 관한 정보를 사용하는 사용자 입력에 대한 반응을 제공하는 시스템 및 방법
US20110283212A1 (en) User Interface
KR20130105725A (ko) 콘텐츠의 양 손 제어에 기반한 컴퓨터 비전
US10402080B2 (en) Information processing apparatus recognizing instruction by touch input, control method thereof, and storage medium
JP2006235832A (ja) 処理装置、情報処理方法、およびプログラム
CN103809903B (zh) 用于控制虚拟屏幕的方法和装置
US9569019B2 (en) Adaptive touch panel display
EP2646892B1 (en) Instantaneous panning using a groove metaphor
US10126856B2 (en) Information processing apparatus, control method for information processing apparatus, and storage medium
KR101294201B1 (ko) 휴대형 장치 및 그 조작 방법
KR102057803B1 (ko) 인터랙션 마우스 장치, 제어방법, 프로그램 및 컴퓨터 판독가능 기록매체
JP7380103B2 (ja) 情報処理装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160905

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170630

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: 20170801

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170814

R150 Certificate of patent or registration of utility model

Ref document number: 6201770

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees