(57)【特許請求の範囲】
【請求項１】
情報処理装置に、
ユーザの所定部位に装着されるセンサから、複数時点における前記所定部位の移動速度に関するデータを順に取得すること、
前記データが所定閾値以上か否かを判定すること、
前記データが所定閾値未満と判定された場合、前記所定閾値未満と判定された時点から第１所定時間前のデータを用いて第１処理の実行を制御すること、
前記データが前記所定閾値以上と判定された場合、前記第１処理とは異なる第２処理の実行を制御すること、を実行させるプログラム。
【請求項２】
前記第１処理の実行を制御することは、
前記データが前記所定閾値以上と判定された時点から第２所定時間内のデータを使用しないことを含む、請求項１に記載のプログラム。
【請求項３】
前記第１処理の実行を制御することは、
前記データが前記所定閾値以上と判定された時点に基づきタイマーを設定し、以降の前記データが前記所定閾値以上と判定されずに当該タイマーが満了するまでの前記第２所定時間内のデータを使用しないことを含む、請求項２に記載のプログラム。
【請求項４】
前記移動速度に関するデータは、第１方向を含む複数方向の移動速度に関するデータを含み、
前記判定することは、
前記第１方向におけるデータが前記所定閾値以上か否かを判定することを含み、
前記第１処理の実行を制御することは、
前記第２所定時間内の前記第１方向及び他の方向におけるデータを使用しないことを含む、請求項２又は３に記載のプログラム。
【請求項５】
前記第２処理の実行を制御することは、
前記第１処理の実行から切り替えて、前記第２処理の実行を制御することを含む、請求項１から４のいずれか一項に記載のプログラム
【請求項６】
前記第１処理は、画面内のポインタの移動処理を含み、
前記第２処理は、クリック処理又はドラッグ処理を含む、請求項１から５のいずれか一項に記載のプログラム。
【請求項７】
情報処理装置が、
ユーザの所定部位に装着されるセンサから、前記所定部位の移動速度に関するデータを順に取得すること、
前記データが所定閾値以上か否かを判定すること、
前記データが所定閾値未満と判定された場合、前記所定閾値未満と判定された時点から第１所定時間前のデータを用いて第１処理の実行を制御すること、
前記データが前記所定閾値以上と判定された場合、前記第１処理とは異なる第２処理の実行を制御すること、を実行する情報処理方法。
【請求項８】
プロセッサを含む情報処理装置であって、
前記プロセッサが、
ユーザの所定部位に装着されるセンサから、前記所定部位の移動速度に関するデータを順に取得すること、
前記データが所定閾値以上か否かを判定すること、
前記データが所定閾値未満と判定された場合、前記所定閾値未満と判定された時点から第１所定時間前のデータを用いて第１処理の実行を制御すること、
前記データが前記所定閾値以上と判定された場合、前記第１処理とは異なる第２処理の実行を制御すること、を実行する情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報処理方法、及び情報処理装置に関する。
【背景技術】
【０００２】
従来、ユーザの頭部の動きを検出するセンサを用いて、マウスなどの入力手段に対するクリック操作などの入力操作を制御する技術が知られている（例えば、特許文献１、２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平４−３０９９９６号公報
【特許文献２】特開平９−２５８８８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術では、頭部の動きを用いて、２つの異なる操作を適切に切り分けることが難しかった。例えば、画面内のマウスポインタによる移動操作と、その他の操作とを切り分ける場合、その他の操作としてクリック操作を例に挙げると、ユーザは、頭部を動かしてポインタを所定位置に合わせ、いざクリック操作を行おうと頭部を動かしたときに、クリック操作として判定されるまでの頭部の動きが移動操作として用いられる結果、ポインタの位置が所定位置からずれてしまい、ユーザにとって所定位置でのクリック操作を指示することは難しかった。
【０００５】
そこで、開示技術は、センサが設けられる所定部位の動きを用いて、少なくとも２つの異なる処理を適切に切り分けることを目的とする。
【課題を解決するための手段】
【０００６】
開示技術の一態様におけるプログラムは、情報処理装置に、ユーザの所定部位に装着されるセンサから、前記所定部位の移動速度に関するデータを順に取得すること、前記データが所定閾値以上か否かを判定すること、前記データが所定閾値未満と判定された場合、前記所定閾値未満と判定された時点から第１所定時間前のデータを用いて第１処理の実行を制御すること、前記データが前記所定閾値以上と判定された場合、前記第１処理とは異なる第２処理の実行を制御すること、を実行させる。
【発明の効果】
【０００７】
開示技術によれば、センサが設けられる所定部位の動きを用いて、少なくとも２つの異なる処理を適切に切り分けることができる。
【図面の簡単な説明】
【０００８】
【図１】実施例における情報処理システムの一例を示す図である。
【図２】実施例における情報処理装置の構成の一例を示すブロック図である。
【図３】実施例における処理装置の構成の一例を示すブロック図である。
【図４】実施例における移動速度に関するデータの一例を示す図である。
【図５】実施例における処理制御に用いられるデータの具体例を示す図である。
【図６】実施例における具体例の判定時点、実行される処理、使用されるデータの時点の関係を示す図である。
【図７】実施例における処理制御に関する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形や技術の適用を排除する意図はない。即ち、本発明は、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、以下の図面の記載において、同一または類似の部分には同一または類似の符号を付して表している。図面は模式的なものであり、必ずしも実際の寸法や比率等とは一致しない。図面相互間においても互いの寸法の関係や比率が異なる部分が含まれていることがある。
【００１０】
［実施例］
実施例では、加速度センサ及び／又は角速度センサ、必要に応じて生体電極を搭載するウエアラブル端末の対象として、アイウエアを例に挙げるが、これに限られない。図１は、実施例における情報処理システム１の一例を示す図である。図１に示す情報処理システム１は、情報処理装置１０と、アイウエア３０とを含み、情報処理装置１０と、アイウエア３０とは、ネットワークを介して接続され、データ通信可能になっている。
【００１１】
アイウエア３０は、例えばブリッジ部分に処理装置２０を搭載する。処理装置２０は、一対のノーズパッド及びブリッジ部を含み、それぞれに生体電極３２、３４、３６を有する。処理装置２０は、３軸加速度センサ及び／又は３軸角速度センサ（６軸センサでもよい）を含んでもよい。なお、生体電極３２、３４、３６は必ずしも必要ではない。
【００１２】
処理装置２０は、センサ信号や眼電位信号等を検出して情報処理装置１０に送信する。処理装置２０の設置位置は、必ずしもブリッジ部分である必要はないが、アイウエア３０が装着された際に、センサ信号や眼電位信号を取得可能な位置に位置決めされればよい。また、処理装置２０は、ブリッジ部分に取り外し可能に設けられてもよい。
【００１３】
情報処理装置１０は、通信機能を有する情報処理装置である。例えば、情報処理装置１０は、パーソナルコンピュータ、タブレット端末、携帯端末等である。情報処理装置１０は、処理装置２０から受信したユーザの頭部の移動に関するデータを取得し、このデータに基づいて複数の操作処理を実行する。操作処理は、例えば、カーソル移動、クリック、ドラッグ、スクロールなどを含む。また、情報処理装置１０は、処理装置２０から、操作処理を命令するコマンドを受信してもよい。
【００１４】
＜情報処理装置１０の構成＞
図２は、実施例における情報処理装置１０の構成の一例を示すブロック図である。情報処理装置１０は、１つ又は複数の処理装置（ＣＰＵ）１１０、１つ又は複数のネットワーク通信インタフェース１２０、メモリ１３０、ユーザインタフェース１５０、及びこれらの構成要素を相互接続するための１つ又は複数の通信バス１７０を含む。
【００１５】
ネットワーク通信インタフェース１２０は、移動体通信用アンテナや無線ＬＡＮ通信用アンテナを通じてネットワークに接続され、処理装置２０との間でデータ通信をすることが可能である。
【００１６】
ユーザインタフェース１５０は、ディスプレイ装置、及び入力装置（キーボード及び／又はマウス、又は他の何らかのポインティングデバイス等）を挙げることができる。ユーザインタフェース１５０は、ディスプレイ装置に表示されるポインタを移動操作することが可能である。
【００１７】
メモリ１３０は、例えば、ＤＲＡＭ、ＳＲＡＭ、他のランダムアクセス固体記憶装置などの高速ランダムアクセスメモリであり、また、１つ又は複数の磁気ディスク記憶装置、光ディスク記憶装置、フラッシュメモリデバイス、又は他の不揮発性固体記憶装置などの不揮発性メモリでもよく、コンピュータ読み取り可能な非一時的な記録媒体でもよい。
【００１８】
メモリ１３０は、情報処理システム１により用いられるデータを記憶する。例えば、メモリ１３０は、アイウエア３０（処理装置２０）から送信されるデータを記憶する。なお、記憶されるデータの一例は、図４を用いて後述される。
【００１９】
また、メモリ１３０の他の例として、ＣＰＵ１１０から遠隔に設置される１つ又は複数の記憶装置でもよい。ある実施形態において、メモリ１３０はＣＰＵ１１０により実行されるプログラム、モジュール及びデータ構造、又はそれらのサブセットを格納する。
【００２０】
ＣＰＵ１１０は、メモリ１３０に記憶されるプログラムを実行することで、取得部１１２、判定部１１３、及び処理制御部１１４を構成する。
【００２１】
取得部１１２は、ユーザの所定部位に装着されるセンサから、所定部位の移動速度に関するデータを順に取得する。例えば、取得部１１２は、所定のサンプリングレートでサンプリングする角速度センサを含む処理装置２０から送信される角速度データを、ネットワーク通信インタフェース１２０を介して順に取得する。センサからデータを取得するとは、直接的又は間接的にデータを取得することを含む。実施例における所定部位は頭部であるが、腕や脚などでもよい。センサは、所定部位の移動速度を計測可能なセンサであり、実施例では、角速度センサや加速度センサが好適である。
【００２２】
判定部１１３は、取得部１１２により取得されるデータが所定閾値以上か否かを判定する。例えば、判定部１１３は、順に取得される角速度データのデータ値が所定閾値以上か否かを判定する。所定閾値は、急な動きを検出できる閾値が予め設定される。例えば、所定部位が頭部の場合は、素早く頭部を横方向や縦方向に振ったりする場合に超えるような閾値が設定されたり、所定部位が腕や脚の場合は、素早く腕や脚を動かした場合に超えるような閾値が設定されたりする。
【００２３】
処理制御部１１４は、少なくとも２つの処理、第１処理と第２処理との処理の実行を制御する。処理の実行の制御には、その処理の実行を命令するコマンドを発行することを含み、また、その処理を実行すること自体を含んでもよい。
【００２４】
処理制御部１１４は、判定部１１３によりデータが所定閾値未満と判定された場合、所定閾値未満と判定された時点（以下、「閾値超判定時点」ともいう。）から第１所定時間前のデータを用いて第１処理の実行を制御する。第１処理は、例えば、画面内のポインタの移動を伴う処理を含む。
【００２５】
処理制御部１１４は、判定部１１３によりデータが所定閾値以上と判定された場合、第１処理とは異なる第２処理の実行を制御する。第２処理は、例えば、所定位置において指示する処理を含む。
【００２６】
ここで、第１処理が画面内のポインタの移動処理であり、第２処理が所定位置における指示処理であり、ユーザが、閾値未満の角速度で頭部を動かしてポインタを移動させ、ポインタが所定位置まできたと判断したら閾値以上の角速度で頭部を動かして指示処理を実行させる場合を例にする。この例によれば、頭部の角速度が閾値に到達するまでには立ち上がり時間を要するため、ユーザが、ポインタが所定位置まできたと判断した時点と、頭部の角速度が閾値以上となる時点とは一致しない。そのため、取得されるデータのうち頭部の角速度が閾値未満のデータをリアルタイムに順に用いて第１処理を実行するとすれば、立ち上がり時間中のデータまでもが移動処理に用いられてしまう結果、所定位置からずれた位置で指示処理が実行されてしまうことになる。
【００２７】
よって、所定閾値以上となるための所定部位の一連の動きに基づくデータにおいて、所定閾値以上となるまでの立ち上がり部分のデータを、第１処理に使用しないようにする。このため、処理制御部１１４は、閾値超判定時点から第１所定時間前のデータを第１処理に用いるようにする。第１所定時間は、ユーザの動きと、ポインタの動きとのタイムラグを小さくするため、例えば０．０５秒から０．２秒まので間の数値とすることが望ましい。なお、第１所定時間は、処理装置２０のセンサのサンプリングレートに基づいて設定されればよい。例えば、サンプリングレートが０．０５秒であれば、０．０５秒単位で第１所定時間が設定されるとよい。
【００２８】
これにより、第１処理は、第１所定時間前のデータを用いて実行し、第２処理は、データが所定閾値以上となった時点で実行することにより、第１処理と第２処理とを適切に切り分けることが可能になる。例えば、第１処理がポインタの移動を伴う処理である場合に、上記処理は好適に実行されうる。
【００２９】
また、処理制御部１１４は、第１処理の実行を制御する際、第２処理を指示するための所定部位の一連の動きに基づくデータが用いられることを回避すべく、データが所定閾値以上と判定された時点から第２所定時間内のデータを使用しないことを含んでもよい。例えば、第２所定時間は、０．４秒や０．５秒などの数値であり、所定閾値以上となるための所定部位の一連の動きの平均時間等が設定されうる。例えば、処理制御部１１４は、閾値超判定時点から第２所定時間が経過するまでは、取得されるデータの移動処理への使用を禁止したり、データの取得自体を中断したりしてもよい。なお、第２所定時間は、データが所定閾値以上と判定された時間から第１所定時間前の時点を、カウントダウンの開始時点としてもよい。
【００３０】
これにより、第２処理を指示するための所定部位の一連の動きに基づくデータを、第１処理の実行のために使用しなくて済み、第１処理と第２処理とをより適切に切り分けることができる。
【００３１】
また、第２所定時間は、データが所定閾値未満と判定されるまでの時間に基づいて設定されてもよい。例えば、判定部１１３は、一度所定閾値以上となったデータが、所定閾値未満となるか否かを判定する。処理制御部１１４は、判定部１１３によりデータが所定閾値未満と判定された場合、当該データを用いて第１処理の実行を制御する。
【００３２】
これにより、第１処理の実行に用いるデータの範囲内（所定閾値未満）になった場合に、すぐに第１処理の実行に移行することが可能になる。
【００３３】
また、処理制御部１１４は、第１の処理の実行を制御する際、データが所定閾値以上と判定された時点に基づきタイマーを設定してもよい。この場合、処理制御部１１４は、タイマーの経過中にデータが閾値以上と判定されずに、このタイマーが満了するまでの時間を第２所定時間とし、この第２所定時間内のデータを使用しないことを含んでもよい。例えば、タイマーの経過中にデータが閾値以上となる場合は、タイマーがリセットされてもよい。なお、タイマーは、データが所定閾値以上と判定された時間から第１所定時間前の時点から、カウントダウンが開始されてもよい。
【００３４】
これにより、タイマーを用いてデータの使用禁止区間を判定することができ、さらに、タイマーの経過中に再びデータが閾値以上となる場合は、タイマーをリセットすることも可能になる。
【００３５】
また、判定部１１３は、移動速度に関するデータが、第１方向を含む複数方向の移動速度に関するデータを含む場合、第１方向におけるデータが所定閾値以上か否かを判定することを含んでもよい。この場合、処理制御部１１４は、第２所定時間内の第１方向及び他の方向におけるデータを第１処理の実行に使用しないことを含んでもよい。例えば、センサが３軸角速度センサの場合、データは方向を含む角速度ベクトルのデータである。具体例として、第１方向を右方向とした場合に、ユーザは所定部位を右方向に素早く動かすと、第２処理が実行されるが、このとき、第２所定時間内は、右方向以外の方向に所定部位が動いても、その動きに対応するデータは第１処理には用いられない。
【００３６】
これにより、データが方向性を持つデータであり、第１方向の移動に基づき第２処理が実行される場合に、他の方向の移動により第１処理が実行されることを防ぐことが可能になる。例えば、第２処理の実行を指示するためのユーザの動き直後の、ユーザの意図しない動きにより、第１処理が実行されてしまうことを防ぐことができる。
【００３７】
また、処理制御部１１４は、データが所定閾値以上と判定された場合に、第１処理の実行から切り替えて、第２処理の実行を制御することを含んでもよい。この場合、判定部１１３は、第１処理の実行に戻る解除条件を満たすか否かを判定してもよい。解除条件が満たされる場合、処理制御部１１４は、第２処理の実行から第１処理の実行に切り替えて制御する。解除条件は、例えば、データが所定閾値以上と判定された時点から第２所定時間を経過すること、及びデータが所定閾値以下となることの少なくとも１つを含む。
【００３８】
これにより、処理制御部１１４は、制御主体を変更することで、確実に２つの処理を切り分けることが可能になる。
【００３９】
また、第１処理は、情報処理装置１０の表示画面内のポインタの移動処理を含み、第２処理は、クリック処理又はドラッグ処理を含んでもよい。例えば、第１処理が、ポインタの一例であるマウスカーソルの移動処理であり、第２処理が、マウスのクリック処理であるとする。この場合、ユーザの頭部（所定部位の一例）の通常の動きに応じてマウスカーソルが画面内を移動し、素早い頭部の動きによりクリック処理が実行されるとき、素早い一例の動きのうちの初期の動き（移動速度に関するデータが所定閾値未満の動き）によりマウスカーソルが移動してしまうことを防ぎ、所定位置でクリック処理を実行することができるようになる。
【００４０】
また、第１処理が、ポインタの一例であるマウスカーソルの移動処理であり、第２処理が、マウスのドラッグ処理であるとする。この場合、ユーザの頭部（所定部位の一例）の通常の動きに応じてマウスカーソルが画面内を移動し、素早い頭部の動きによりドラッグ処理が実行されるとき、素早い一例の動きのうちの初期の動き（移動速度に関するデータが所定閾値未満の動き）によりマウスカーソルが移動してしまうこと（ユーザ所望のアイコン等の位置からずれること）を防ぎ、所定位置のアイコン等を適切に指示してドラッグ処理を実行することができるようになる。
【００４１】
この場合、データが所定閾値以上となりドラッグ処理が実行されると、処理制御部１１４は、所定閾値以上となった後のデータに基づいてドラッグの移動処理の実行を制御する。また、ドラッグ処理の解除条件が設定されることで、処理制御部１１４は、第１処理の実行を制御するようにすればよい。この場合の解除条件は、例えば、データが所定閾値以上となることを含む。
【００４２】
また、移動速度に関するデータは、角速度データや加速度データが適用されうるが、方向性を示すデータを含むことで、処理制御部１１４は、２つ以上の処理の実行を制御するようにしてもよい。例えば、処理制御部１１４は、頭部による左方向の素早い動きを左クリック、右方向の素早い動きを右クリック、下方向の素早い動きをドラッグ開始（通常のマウス操作において移動対象オブジェクト（例えばデスクトップのアイコンなど）上でクリックボタンを押下し続けている状態）、上方向の素早い動きをドラッグ解除（前記通常のマウス操作においてクリックボタンの押下を止める状態）などに対応付けておく。これにより、処理制御部１１４は、移動速度に関するデータが所定閾値以上となる方向に応じて、制御する処理を変更することが可能になる。この場合、各方向に応じた所定閾値は、それぞれの動きに合わせて異なるように設定されてもよい。
【００４３】
＜処理装置２０の構成＞
図３は、実施例における処理装置２０の構成の一例を示すブロック図である。図３に示すように、処理装置２０は、処理部２０２、送信部２０４、６軸センサ２０６、電源部２０８、及び各生体電極３２、３４、３６を有する。また、各生体電極３２、３４、３６は、例えば増幅部を介して電線を用いて処理部２０２に接続される。なお、各生体電極３２、３４、３６は必ずしも必要な構成ではない。また、処理装置２０は、処理データを記憶するメモリを有する。
【００４４】
６軸センサ２０６は、３軸加速度センサ及び３軸角速度センサである。また、これらの各センサは別個に設けられてもよく、いずれか一方のセンサが設けられてもよい。６軸センサ２０６は、検出したセンサ信号を処理部２０２に出力する。
【００４５】
処理部２０２は、６軸センサ２０６から得られるセンサ信号や、必要に応じて各生体電極３２、３４、３６から得られる眼電位信号を処理し、例えば、センサ信号や眼電位信号をパケット化して、このパケットを送信部２０４に出力する。また、処理部２０２は、プロセッサを含み、例えば、処理部２０２は、眼電位信号を用いて、視線の移動速度に関する第２移動速度データを算出してもよい。
【００４６】
また、処理部２０２は、６軸センサ２０６からのセンサ信号を、頭部の動きに関する第１移動速度データとしてもよい。頭部の動きに関する情報は、例えば頭部の上下左右への動きに関する情報である。また、処理部２０２は、６軸センサ２０６から得られるセンサ信号を増幅等するだけでもよい。
【００４７】
送信部２０４は、例えば、処理部２０２によりパケット化された第１移動速度データ又は第２移動速度データを情報処理装置１０に送信する。例えば、送信部２０４は、Ｂｌｕｅｔｏｏｔｈ（登録商標）及び無線ＬＡＮ等の無線通信、又は有線通信によって、第１移動速度データ又は第２移動速度データを情報処理装置１０に送信する。電源部２０８は、処理部２０２、送信部２０４、６軸センサ２０６等に電力を供給する。
【００４８】
また、処理部２０２は、図２に示すＣＰＵ１１０の機能を備えてもよい。例えば、処理部２０２は、取得部１１２、判定部１１３、及び処理制御部１１４を有する。この場合、処理部２０２は、６軸センサ２０６から取得されるセンサ信号（第１移動速度データ）を取得し、第１移動速度データが所定閾値以上であるか否かを判定し、判定結果に応じて第１処理又は第２処理の実行を制御する。この場合の制御は、処理の実行を命令するコマンドを発行することである。
【００４９】
送信部２０４は、処理部２０２により発行されたコマンドを情報処理装置１０に送信する。情報処理装置１０の処理制御部１１４は、処理装置２０の送信部２０４により送信されたコマンドを取得すると、このコマンドに応じた処理を実行する。これにより、処理装置２０側でユーザの動きに応じた処理のコマンドを発行させることができ、情報処理装置１０は、コマンドに応じた処理を実行するだけでよく、既存の情報処理装置１０への適用が容易になる。
【００５０】
＜データ例＞
図４は、実施例における移動速度に関するデータの一例を示す図である。図４に示すデータは、所定のサンプリングレート（例えば２０Ｈｚ＝０．０５秒）により取得されたデータを表す。図４に示す例の場合、例えば判定時点６０では、第１所定時間として０．０５秒が設定されていると、判定時点６０より１つ前の判定時点５９のデータｄ＿５９が第１処理の実行に用いられ、第１所定時間として、０．２秒が設定されていると、判定時点６０より４つ前の判定時点５６のデータｄ＿５６が第１処理の実行に用いられる。なお、移動速度に関するデータとして、眼電位信号に基づく視線の移動速度に関するデータ（第２移動速度データ）も記憶されてもよい。
【００５１】
＜具体例＞
図５は、実施例における処理制御に用いられるデータの具体例を示す図である。図５に示す例では、所定閾値はＴｈ１、サンプリングレートは０．０５秒、第１所定時間はＴＡ（０．０５秒）、第２所定時間はＴＢ（０．４秒）に設定され、移動速度に関するデータは角速度データが用いられるとする。
【００５２】
図５に示す例では、０．８５秒（ｔ１時点）でデータが所定閾値Ｔｈ１以上となる。この場合、処理制御部１１４は、０．８５秒までは、現時点から第１所定時間ＴＡ前のデータ（１つ前のデータ）を用いて第１処理の実行を制御する。例えば、現時点が０．６０秒であれば、０．５５秒のデータを用いて第１処理の実行が制御される。
【００５３】
時刻ｔ１において、判定部１１３はデータが所定閾値以上であると判定した場合、処理制御部１１４は、１つ前の０．８０秒のデータを用いて第１処理の実行を制御するのではなく、第１処理の実行から切り替えて第２処理の実行を制御する。つまり、第１処理の実行に用いられるデータは、０．７５秒目までのＰ１の期間である。
【００５４】
次に、図５に示す例では、判定部１１３は、判定時点ｔ１から第２所定時間ＴＢが経過したか否かを判定する。つまり、判定部１１３は、判定時点ｔ１である０．８５秒から第２所定時間ＴＢの０．４秒を加算した１．２５秒を経過したか否かを判定する。０．８５秒から１．２５秒までの期間Ｐ２のデータは、第１処理に用いられない。
【００５５】
次に、判定部１１３は、閾値超判定時間から第２所定時間が経過したと判定すると、処理制御部１１４は、その判定結果に基づいて、１．２５秒より後の期間Ｐ３のデータを用いて第１処理の実行の制御を再開する。
【００５６】
図５に示す例は、第１処理がマウスカーソルの移動処理、第２処理がクリック処理の場合に好適に適用される例である。また、第２処理がドラッグ処理の場合、例えば、期間Ｐ２のデータはドラッグの開始処理に用いられ、期間Ｐ３のデータは、ドラッグの移動処理に用いられる。
【００５７】
図６は、実施例における具体例の判定時点、実行される処理、使用されるデータの時点の関係を示す図である。図６に示す例では、図５に示すデータについて、第１処理がマウスカーソルの移動処理、第２処理がクリック処理の場合に、どの時点で、どのデータを用いて、どの処理が実行されるかを示す。
【００５８】
図６に示すように、データが所定閾値以上となる判定時点０．８５までは、第１処理が実行され、この第１処理に、第１所定時間前のデータ（この場合１つ前のデータ）が使用される。
【００５９】
判定時点０．８５において、第２処理が実行される。この場合、第２処理がクリック処理であるので、データが所定閾値以上となったという判定結果とその時点の位置情報が使用される。第１処理にはどのデータも使用されない。
【００６０】
判定時点１．２５において、第２所定時間が経過するため、判定時点１．２５までは、処理が実行されず、データも使用されない。判定時点１．３０以降において、第１処理が実行され、この第１処理に、第１所定時間前のデータ（１つ前のデータ）が使用される。
【００６１】
＜動作＞
図７は、実施例における処理制御に関する処理の一例を示すフローチャートである。図７に示す処理は、情報処理装置１０又は処理装置２０のいずれかで実行される処理の一例である。
【００６２】
図７に示すステップＳ１０２において、取得部１１２は、ユーザの所定部位に装着されるセンサから、所定部位の移動速度に関するデータを順に取得する。所定部位は、例えばユーザの頭部であり、移動速度に関するデータは、例えば角速度データである。
【００６３】
ステップＳ１０４において、判定部１１３は、移動速度に関するデータが所定閾値以上であるか否かを判定する。データが所定閾値以上であれば（ステップＳ１０４−ＹＥＳ）、処理はステップＳ１１０に進み、データが所定閾値未満であれば（ステップＳ１０４−ＮＯ）、処理はステップＳ１０６に進む。
【００６４】
ステップＳ１０６において、判定部１１３は、第２所定時間に関するタイマーが設定され、そのタイマーの満了前であるか否かを判定する。タイマーが満了前であれば（ステップＳ１０６−ＹＥＳ）、移動速度に関するデータを使用せずに次のデータが取得され（ステップＳ１０２に戻る）、タイマーが設定されていない、又はタイマーが満了していれば（ステップＳ１０６−ＮＯ）、処理はステップＳ１０８に進む。
【００６５】
ステップＳ１０８において、処理制御部１１４は、所定閾値未満と判定された時点から第１所定時間前のデータを用いて第１処理の実行を制御する。その後、処理はステップＳ１０２に戻る。
【００６６】
ステップＳ１１０において、処理制御部１１４は、判定部１１３によりデータが所定閾値以上と判定された場合、第１処理とは異なる第２処理の実行を制御する。
【００６７】
ステップＳ１１２において、処理制御部１１４は、第２所定時間に関するタイマーをセット（設定）する。このとき、タイマーは、予め決められた時間がセットされる。その後、処理はステップＳ１０２に戻る。よって、所定閾値未満のデータは、第２所定時間内において使用が禁止され、所定閾値以上のデータは、第２所定時間内に複数回使用が可能となり、例えば、第２所定時間内においてポインタを静止させた状態でダブルクリックが実行可能になる。
【００６８】
図７に示す処理が処理装置２０の処理部２０２により実行される場合、処理の制御は、処理の実行を命令するコマンドを発行することを含み、図７に示す処理が情報処理装置１０のＣＰＵ１１０により実行される場合、処理の制御は、処理の実行を命令するコマンドを発行し、コマンドに基づいて処理を実行することを含んでもよい。
【００６９】
なお、図７で説明した処理のフローに含まれる各処理ステップは、処理内容に矛盾を生じない範囲で、任意に順番を変更して又は並列に実行することができるとともに、各処理ステップ間に他のステップを追加してもよい。また、便宜上１ステップとして記載されているステップは、複数ステップに分けて実行することができる一方、便宜上複数ステップに分けて記載されているものは、１ステップとして把握することができる。
【００７０】
以上、実施例によれば、センサが設けられる所定部位の動きを用いて、少なくとも２つの異なる処理を適切に切り分けることができる。例えば、第１処理が、所定部位の動きに応じた移動処理を伴う場合に、開示の技術は好適に機能する。
【００７１】
また、上記実施例では、所定部位の動きとして、ユーザの頭部や腕や脚などの動きを例に挙げたが、眼球の視線の動きを用いてもよい。この場合、各生体電極（センサの一例）から検知されるセンサ信号から眼球の動きを求め、この動きに関するデータ（上記の第２移動速度データ）に基づいて、処理制御部１１４は、処理を制御するようにしてもよい。
【００７２】
なお、実施例において、アイウエア３０に搭載された６軸センサからのセンサ信号を用いて説明したが、上述したように、６軸センサは頭部だけではなく、人体のいずれかの位置に装着されていればよい。
【００７３】
また、実施例において、移動速度データに３軸加速度センサのデータを用いてもよいことは述べたが、この場合、加速度が検出された後に、所定の演算処理によって速度に変換し、変換後の速度のデータが用いられてもよい。
【００７４】
以上、本発明について実施例を用いて説明したが、本発明の技術的範囲は上記実施例に記載の範囲には限定されない。上記実施例に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【符号の説明】
【００７５】
１０  情報処理装置
２０  処理装置
３０  アイウエア
１１０  ＣＰＵ
１１２  取得部
１１３  判定部
１１４  処理制御部
１２０  ネットワーク通信インタフェース
１３０  メモリ
１５０  ユーザインタフェース
２０２  処理部
２０４  送信部
２０６  ６軸センサ
２０８  電源部
【要約】
【課題】センサが設けられる所定部位の動きを用いて、少なくとも２つの異なる処理を適切に切り分けること。
【解決手段】プログラムは、情報処理装置に、ユーザの所定部位に装着されるセンサから、所定部位の移動速度に関するデータを順に取得すること、データが所定閾値以上か否かを判定すること、データが所定閾値未満と判定された場合、所定閾値未満と判定された時点から第１所定時間前のデータを用いて第１処理の実行を制御すること、データが所定閾値以上と判定された場合、第１処理とは異なる第２処理の実行を制御すること、を実行させる。
【選択図】図７【図１】
0006957695.tif 000002
【図２】
0006957695.tif 000003
【図３】
0006957695.tif 000004
【図４】
0006957695.tif 000005
【図５】
0006957695.tif 000006
【図６】
0006957695.tif 000007
【図７】
0006957695.tif 000008