【文献】
Lisa Zyga,Skinput turns your arm into a touchscreen (w/ Video),[online],PhysOrg.com,2015年 5月29日,インターネット <http://phys.org/news/2010-03-skinput-arm-touchscreen-video.html>
【文献】
小西 哲平,装着型プロジェクタによる一瞥用パームトップディスプレイの提案,第13回日本バーチャルリアリティ学会大会論文集 [DVD−ROM] 第13回日本バーチャルリアリティ学会大会 論文抄録集 VRSJ2008 Nara VRSJ2008 Nara,日本,日本バーチャルリアリティ学会,2008年 9月24日,pp. 7-10
【文献】
松村 太郎,デジタルとアナログの間,Mac People,日本,株式会社アスキー・メディアワークス,2009年 6月 1日,Vol. 15 No. 6 Issue 244,pp. 72-73
(58)【調査した分野】(Int.Cl.,DB名)
前記入力情報特定部は、前記検出データの波形の特徴をパターンマッチングによって分類することで、タップ位置を特定することを特徴とする、請求項1に記載の入力装置。
前記パターンマッチングは、動的計画法(Dynamic Programming)によるマッチング(DPマッチング)であることを特徴とする、請求項2に記載の入力装置。
前記入力情報特定部は、前記加速度センサによって検出された重力加速度に応じて、タップされる側の腕姿勢を特定し、特定したタップ位置および腕姿勢の組に対応付けられた操作コマンドを出力することを特徴とする、請求項5ないし7のいずれか1項に記載の入力装置。
前記入力情報特定部は、前記重力加速度に応じて、タップされる側の腕姿勢が、腕を挙げた状態、腕を水平にした状態、または、腕を下ろした状態のいずれであるかを特定することを特徴とする、請求項8に記載の入力装置。
前記パターンマッチングは、動的計画法(Dynamic Programming)によるマッチング(DPマッチング)であることを特徴とする、請求項11に記載の入力方法。
コンピュータが、タップすることによる身体の動きの典型的なデータと、タップ位置とを対応付けてテンプレートデータとして保持する記憶部を参照し、該記憶部に格納された典型的なデータと、前記検出データとの間における相関を算出することにより、タップ位置を特定することを特徴とする、請求項10ないし12のいずれか1項に記載の入力方法。
前記検出データの波形の特徴をパターンマッチングによって分類することで、タップ位置を特定する処理を、コンピュータに実行させることを特徴とする、請求項16に記載のプログラム。
前記パターンマッチングは、動的計画法(Dynamic Programming)によるマッチング(DPマッチング)であることを特徴とする、請求項17に記載のプログラム。
タップすることによる身体の動きの典型的なデータと、タップ位置とを対応付けてテンプレートデータとして保持する記憶部を参照し、該記憶部に格納された典型的なデータと、前記検出データとの間における相関を算出することにより、タップ位置を特定する処理を、コンピュータに実行させることを特徴とする、請求項16ないし18のいずれか1項に記載のプログラム。
前記検出データの波形の特徴をルールベースによって分類することで、タップ位置を特定する処理を、コンピュータに実行させることを特徴とする、請求項16に記載のプログラム。
【発明を実施するための形態】
【0020】
第1の展開形態によると、上記第1の視点に係る入力装置が提供される。
【0021】
第2の展開形態によると、前記入力情報特定部は、前記検出データの波形の特徴をパターンマッチングによって分類することで、タップ位置を特定する、入力装置が提供される。
【0022】
第3の展開形態によると、前記パターンマッチングは、動的計画法(Dynamic Programming)によるマッチング(DPマッチング)である、入力装置が提供される。
【0023】
第4の展開形態によると、
タップすることによる身体の動きの典型的なデータと、タップ位置とを対応付けてテンプレートデータとして保持する記憶部をさらに備え、
前記入力情報特定部は、前記記憶部に格納された典型的なデータと前記検出データとの間における相関を算出することにより、タップ位置を特定する、入力装置が提供される。
【0024】
第5の展開形態によると、前記入力情報特定部は、前記検出データの波形の特徴をルールベースによって分類することで、タップ位置を特定する、入力装置が提供される。
【0025】
第6の展開形態によると、前記ルールベースは、多関節構造モデルに基づくルールベースである、入力装置が提供される。
【0026】
第7の展開形態によると、前記身体の動きは、腕の動きである、入力装置が提供される。
【0027】
第8の展開形態によると、前記入力情報特定部は、特定したタップ位置に対応付けられた操作コマンドを出力する、入力装置が提供される。
【0028】
第9の展開形態によると、上記第2の視点に係る入力方法が提供される。
【0029】
第10の展開形態によると、上記第3の視点に係るプログラムが提供される。
【0030】
第11の展開形態によると、上記プログラムを記録したコンピュータ読み取り可能な記録媒体が提供される。
【0031】
第12の展開形態によると、上記第4の視点に係る入力装置が提供される。
【0032】
第13の展開形態によると、上記第5の視点に係る入力方法が提供される。
【0033】
第14の展開形態によると、上記第6の視点に係るプログラムが提供される。
【0034】
第15の展開形態によると、上記入力装置において、
前記検出部は、加速度センサを有するとともに、タップされる側の手首に設けられ、
前記入力情報特定部は、前記加速度センサによって検出された重力加速度に応じてタップされる側の腕姿勢を特定し、特定したタップ位置および腕姿勢に対応付けられた操作コマンドを出力するようにしてもよい。
【0035】
本発明によると、身体の一部をタップすることを入力操作に割り当てることができる。また、本発明によると、入力を検出する装置を腕輪型の小型な装置とすることができ、機器操作のために入力装置を取り出すという作業を無くすることができる。これにより、入力操作に伴う煩雑さが解消され、入力操作に要する時間も削減することができる。
【0036】
さらに、本発明によると、入力エリアを腕等のユーザ本人の身体の一部に割り当てることにより、十分に大きな入力エリアを確保することができ、入力ミスを防ぐことができる。
【0037】
また、本発明によると、複数の入力エリアを割り当てることができるため、複数の種類の入力操作を実現することができ、操作対象となる機器が有する複数の機能に対する入力操作を実現することができる。
【0038】
さらに、本発明によると、身体に接触するという特定の動作を入力操作としているため、入力操作と日常の動作とを識別することができ、ユーザが意図しない入力操作が生じることを防ぐことができる。
【0039】
(実施形態1)
第1の実施形態に係る入力装置について、図面を参照して説明する。
【0040】
図2は、操作対象機器を携帯音楽プレーヤとし、ユーザの腕を入力部とした際の入力エリアの詳細を表した図である。
図2を参照すると、腕上には、機器を操作するための3箇所の入力エリア71〜73が配置されている。本実施形態では、一例として、音楽操作を想定している。前腕の手首側、前腕の上腕側、及び、上腕に設けられた入力エリア71〜73に対して、それぞれ、「選曲の送り」機能、「再生・一時停止」機能、及び、「停止」機能が割り当てられている。
【0041】
ユーザは、片方の手で他方の腕上の入力エリア71〜73をタップすることにより入力を行なう。ユーザは、例えば、音楽を聴きながらランニング、ウォーキング等を行なう際、携帯音楽プレーヤを取り出して、小さい入力キーを操作するという煩わしい行為の代わりに、ユーザ本人の腕をタップすることで、タップ位置に応じた操作を行なうことができる。
【0042】
図1は、本実施形態に係る入力装置の構成を示すブロック図である。
【0043】
図1を参照すると、入力装置は、検出部1、記憶部4、入力情報特定部5、及び、情報提示部6を有する。
【0044】
検出部1は、さらに、接触検出部2を有する。ユーザの身体に対するタップ操作によって腕が動かされたことを検出すると、タップされた側の接触検出部2は、腕の動きに応じた検出データaを出力する。
【0045】
記憶部4は、接触検出部2で検出される、腕の多関節構造に基づく腕の動きに応じた検出データaと、タップ位置との対応関係を、テンプレートデータcとして予め保持している。
【0046】
入力情報特定部5は、検出データaを受けると、記憶部4のテンプレートデータcを参照し、マッチングにより相関値を算出し、最も相関が高いタップ位置を特定し、タップ位置に割り当てられたコマンドを、入力情報特定データdとして出力する。
【0047】
情報提示部6は、入力情報特定データdを受けると、コマンドに相当する音楽の再生・停止等を行なうとともに、これらに付随する画面表示を出力する。
【0048】
図2を参照すると、振動を検出するための接触検出部2は、タップされる側である左手手首に配置されている。
【0049】
図3は、検出部1の詳細な構成を示す図である。
図3を参照すると、検出部1に含まれる接触検出部2は、配線基板10上に設けられた加速度センサ9を有する。加速度センサ9は、腕の動きを3軸の加速度として検出する。ここで、配線基板10に平行で指先方向をX軸とし、配線基板10に平行でX軸に垂直な方向をY軸とし、配線基板10に垂直な方向をZ軸とする。
【0050】
図4は、検出部1の詳細な構造を示す断面図である。
図4を参照すると、配線基板10には、加速度センサ9以外に、メモリ16、演算処理部11、提示内容処理ユニット12及び提示ユニット13が設けられている。また、これらの各部は筐体14によって包装されている。
【0051】
メモリ16は、記憶部4のテンプレートデータcを保持する。演算処理部11は、入力情報特定部5における処理を行う。提示内容処理ユニット12は、情報提示部6においてタップ位置に割り当てられたコマンドにより出力される音楽の再生・停止や画面上のテクスチャを制御する。提示ユニット13は、提示内容処理ユニット12により制御された音信号をスピーカを介して出力し、Bluetooth(登録商標)等の他の提示機器にデータを送信し、又は、制御された画素信号をディスプレイとして出力する。
【0052】
次に、図及びフローチャートを参照して本実施形態の全体の動作について説明する。
【0053】
図5は本実施形態の全体動作を表すフローチャートである。
図5を参照すると、本実施形態の全体の動作は、次の通りである。
【0054】
まず、一方の手で他方の腕上の入力エリア71〜73へのタップ動作が行なわれると、接触検出部2は、サンプリング周期ごとに加速度センサ9で検出した値の時系列データである、振動波形を表す検出データaから、一定時間内のデータを抽出する(ステップS101)。接触検出部2は、例えば、検出データaのうちの、入力が行なわれたことを検出した時刻から一定の時間内で切り取った振動波形を、接触位置特定のためのデータとして抽出する。
【0055】
ステップS101における振動波形は、タップされた側の腕の動きを表す。骨と関節による多関節構造により、タップ位置ごとに腕の動きは異なる。そこで、腕の動きに応じた振動波形とタップ位置との対応関係をテンプレートデータcとして、記憶部4に予め記録しておく。
【0056】
入力情報特定部5は、振動波形を受けると、記憶部4のテンプレートデータcを参照し、マッチングにより相関値を算出し、最も相関が高いタップ位置を特定し、タップ位置に割り当てられたコマンドを入力情報特定データdとして出力する(ステップS102)。
【0057】
最後に、情報提示部6は、特定された入力エリアに割り当てられた所定の記号やデータ、機能を提示する(ステップS103)。
【0058】
次に、各ステップの詳細動作について説明する。
【0059】
図6は、ステップS101における振動波形抽出について説明するための図である。接触検出部2で検出された値の時系列データである振動波形を検出データaとして受け取ると、入力情報特定部5は、検出データaの中で、入力が行なわれたことを基準に一定時間内にあるデータを比較利用データとして抽出する。検出される振動は、
図6(a)に示す接触検出部2での振動波形である。なお、検出データの各時刻における値を逐次処理した場合には、通信に時間を要するため、入力情報特定部5は、一定の時間間隔ごとの検出データをまとめて受け取ることが好ましい。
【0060】
ここで、腕の多関節構造に基づく腕の動きに応じた振動波形と、タップ位置との対応関係について説明する。
【0061】
図7は、タップ位置と腕の動きの関係を示す図である。
【0062】
図7(a)は、腕の上腕と前腕を梁とし、肩と肘の関節を1自由度の回転軸とする多関節構造(多関節剛体)モデルを表す。
【0063】
図7(b)は、上腕へのタップを行なったときの腕の動きを表す。腕全体は、肩関節を中心として時計回りに回転をしている。一方、前腕部分は、慣性により、肘関節を中心として反時計回りに回転している。したがって、手首で加速度を検出している接触検出部2は、Z軸方向について、最初に+方向の加速度を検出する。
【0064】
図7(c)は、前腕へのタップを行なったときの腕の動きを表す。このとき、肘関節は腕が伸びきった状態であるため、肘関節を中心とする回転運動は生じず、肩関節を中心とする回転運動のみが生じる。したがって、接触検出部2は、Z軸方向について、最初に−方向の加速度を検出する。
【0065】
以上のことから、タップ時の腕の動きはタップ位置に依存して変化し、手首に設けられた接触検出部2によって検出される加速度の値も変化する。
【0066】
図8は、タップ位置と時系列データとの関係を示す表である。タップ位置と接触検出部2で検出される腕の動きを表す加速度の3軸の時系列データとの対応関係が、テンプレートデータcとして記憶部4に記録されている。タップされる側の腕の前腕の手首側、前腕の上腕側、上腕の3領域に対して、それぞれ、第1の入力エリア71、第2の入力エリア72、第3の入力エリア73を設定する。
【0067】
次に、記憶部4のテンプレートデータcを参照し、マッチングにより相関値を算出、最も相関が高いタップ位置を特定するステップS102について、さらに詳細に説明する。
【0068】
接触検出部2の時系列データである抽出した振動波形を入力パターンとし、記憶部4に複数あるテンプレートデータcを参照パターンとすると、入力情報特定部5は、入力パターンと参照パターンとの間で、動的計画法(Dynamic Programming)によるマッチング(DPマッチング)に基づいて相関値を算出する。
【0069】
図9は、入力情報を特定するステップ102の動作を詳細に示すフローチャートである。
図9を参照すると、入力情報を特定するステップ102は、接触が検出されると入力パターンと参照パターンとの要素間の距離を算出するステップS201と、算出された要素間の距離を用いて、経路最小コストを算出するステップS202と、算出された経路最小コストを用いて、入力パターンと参照パターンとのパターン間距離を算出するステップS203と、複数の参照パターンの中で最も小さいパターン間距離を示す参照パターンをタップ位置として特定するステップS204とを含む。
【0070】
まず、本実施形態で用いる検出データaから抽出した振動波形は、タップされた側の接触検出部2における腕の動きを表す時系列のデータである。そこで、入力パターンを数式1のように表す。
【0072】
数式1において、添字iは、時系列(i=1,…,I)を表す。
【0073】
時系列データは、それぞれ、X軸、Y軸、Z軸の3軸の加速度データを含むことから、入力パターンの軸方向成分を数式2のように表す。
【0075】
同様に、テンプレートデータcも時系列データであることから、参照パターンを数式3のように表す。
【0077】
数式3において、添字jは時系列(j=1,…,J)を表し、添字kは複数の参照パターンを識別するための添字を表す。
【0078】
時系列データは、それぞれ、X軸、Y軸、Z軸の3軸の加速度データを含むことから、参照パターンの成分を数式4のように表す。
【0080】
DPマッチング法では、入力パターンと参照パターンのパターン間距離を算出する。
図10は、DPマッチング経路図を表す。
図10を参照すると、DP入力パターンと参照パターンとで格子を構成し、その経路上にコストを設定し、その総和が最も小さくなる経路とその総コストを算出する。
【0081】
まず、検出データaとテンプレートデータcとの要素間の距離を算出する(ステップS201)。ここで、要素とは、入力パターンと参照パターンの各時刻における成分のことをいう。
【0082】
格子点(i,j)におけるコストは、数式5の要素間距離として求めることができる。
【0084】
数式5の要素間距離を、すべての格子点において算出する。
【0085】
次に、経路最小コストを算出する(ステップS202)。
図11は、格子点上での最小累積コストについて説明するための図である。
図11参照すると、数式6は、格子点(i,j)における格子点コストとその最小値の算出式として経路最小コストを表す。
【0087】
数式6は、対称型の経路制限を含む。数式6を時系列i,jの小さい値から順に繰り返し適用して、経路最小コストを算出する。
【0088】
次に、パターン間距離を算出する(ステップS203)。数式7は、(I,J)におけるパターン間距離を表す。数式7を用いることで、k番目の参照パターンにおけるパターン間距離が求まる。
【0090】
次に、複数の参照パターンの中で最も相関の高い参照パターンを抽出する(ステップS204)。予め設定された参照パターンのすべてについて、ステップS201〜S203の処理を行い、最小のパターン間距離となった参照パターンを、最も相関が高いタップ位置として特定する。さらに、タップ位置に割り当てられたコマンドを、入力情報特定データdとして出力する。
【0091】
次に、ステップS104における情報提示部6の詳細動作について説明をする。
【0092】
情報提示部6が、入力情報特定部5により特定された入力情報特定データdを受け取ると、ユーザに入力位置に割り当てられた機能を提示する。本実施形態では、音楽操作を想定しているため、各入力エリアに割り当てられた[再生・一時停止]や[選曲の送り]などに応じて音楽データを制御し、スピーカから音の出力を行なう。
【0093】
また、各入力エリアに割り当てられた機能に応じて、Bluetooth等を介してイヤフォンやヘッドフォンなどにデータを送信したり、再生中の音楽のタイトルや実行している機能などをディスプレイに表示したりしてもよい。
【0094】
本実施形態では、DPマッチング法により相関値を算出した。しかし、入力パターンと参照パターンとのマッチングを行なう手法であれば、他のパターンマッチング法を用いるようにしてもよい。
【0095】
また、DPマッチング法の要素間の距離算出法、及び、経路コストを算出するための経路制限の式は、一例として示したものに過ぎず、これらに限られるものではない。
【0096】
また、本実施形態において、腕に対して3つの入力エリア71〜73を設け、各入力エリアにコマンドを割り当てた。しかし、入力エリアの個数、及び割り当てるべきコマンドは、必要に応じて任意に設定することができ、本実施形態の態様に限られるものではない。
【0097】
また、本実施形態において、入力エリア71〜73を、いずれも多関節構造を有する腕に割り当てた。しかし、タップされた側に接触させた加速度センサ9の動きがタップ位置によって異なる部位であれば、入力エリアは腕以外の場所に設定してもよい。また、多関節構造を有する部位に限定するものでもない。
【0098】
また、本実施形態では、検出部を手首に装着した。しかしながら、検出部の装着箇所は、手首に限られるものではない。すなわち、検出部の装着箇所は、上腕、手袋、指輪、足首等であってもよい。さらに、検出部は、ユーザが手に持った機器に配置してもよい。
【0099】
(実施形態2)
第2の実施形態に係る入力装置について、図面を参照して説明する。
【0100】
第1の実施形態では、腕の多関節構造に基づく腕の動きに応じた振動波形に対して、マッチングにより相関値を算出してタップ位置を特定した。一方、本実施形態では、腕の動きに応じた振動波形の特徴量をルールベースに従って分類することで、タップ位置を特定する。
【0101】
図12は、本実施形態の入力装置の構成を表すブロック図である。第1の実施形態では、タップ位置を特定するために、接触検出部2における腕の多関節構造に基づく腕の動きに応じた振動波形とタップ位置との対応関係を、テンプレートデータcとして記憶部4に予め記録しておいた。一方、
図12に示す本実施形態では、接触検出部2において検出された腕の動きに応じた振動波形の特徴量とタップ位置との対応関係を、ルールベースデータeとして記憶部4に予め記録しておく。
【0102】
また、第1の実施形態における入力情報特定部5の代わりに、本実施形態の入力装置は、入力情報特定部15を有する。入力情報特定部15は、検出データaを受けると、ルールベースデータeを参照し、接触検出部2で検出された腕の動きに応じた振動波形の特徴量をルールベースに基づいて分類し、タップ位置を特定する。
【0103】
次に、本実施形態の入力装置の動作について説明する。
【0104】
第1の実施形態では、入力情報特性部5は、接触検出部2で検出された腕の動きに応じた振動波形について、テンプレートデータcとのマッチングによる相関値を算出し、タップ位置を特定していた。一方、本実施形態では、入力情報特性部15は、接触検出部2で検出される腕の動きに応じた振動波形の特徴量を、ルールベースデータeのルールベースに基づいて分類することで、タップ位置を特定する。
【0105】
まず、入力情報特定部15の動作について、詳細に説明する。
【0106】
図13は、本実施形態の入力装置の動作を示すフローチャートである。第1の実施形態ではステップS102において記憶部4のテンプレートデータcを参照し、マッチングにより相関値を算出してタップ位置を特定していた。一方、本実施形態では、ステップS302で、ルールベースデータeを参照し、接触検出部2で検出された腕の動きに応じた振動波形の特徴量を、ルールベースに基づいて分類して、タップ位置を特定する(ステップS302)。
【0107】
図14は、本実施形態に係る入力装置における入力情報特定部15の動作を示すフローチャートである。第1の実施形態において、
図7を参照して説明したように、接触検出部2におけるZ軸方向の最初の加速度の方向が+であれば、第3の入力エリア73(上腕)であり、−であれば、第3の入力エリア73以外の入力エリアであるというように、分類することができる(ステップS401)。
【0108】
次に、接触検出部2におけるZ軸方向加速度の内、主振動となる振動振幅が最も大きくなる振幅量に注目する。
【0109】
図15は、タップ位置と腕の動きの関係を示す図である。
図15(a)、(b)は、それぞれ、肩関節を中心とする腕の運動を示す。
図15(a)は、前腕の上腕側(第2の入力エリア72)へのタップによる、肩関節を中心とする腕の運動を示す。一方、
図15(b)は、前腕の手首側(第1の入力エリア71)へのタップによる、肩関節を中心とする腕の運動を示す。
【0110】
図15(a)と
図15(b)とを比較すると、肩回転軸から距離が遠い第1の入力エリア71に対するタップは、腕に対してより大きいモーメント力を及ぼすため、Z軸方向の加速度がより大きくなる。そこで、基準となる閾値を設け、Z軸方向の最大振幅が閾値以下の場合には、タップ位置は第2の入力エリア72(前腕の上腕側)であり、閾値よりも大きい場合には、タップ位置を第1の入力エリア71(前腕の手首側)であるというように、分類することができる(ステップS402)。
【0111】
本実施形態では、Z軸方向のみの加速度を利用し、ルールベースを作成して分類を行なった。しかし、接触検出部2まわりの角加速度によって発生するX軸方向の加速度を用いたルールベースに基づいて分類してもよい。
【0112】
また、本実施形態では、入力エリア71〜73を上腕、前腕の上腕側、前腕の手首側に設け、いずれも腕の背面側に設けた。しかし、入力エリア71〜73は、同一平面上に設ける必要はない。
【0113】
例えば、入力エリアを手の拳部分に設けた場合には、拳へのタップの方向に応じて5つの入力エリアを設けることができる。すなわち、握りこぶしを作った場合、4つの指の中節による面、拳の側面で母指に近い橈骨側の面、拳の側面で小指側に近い尺骨側の面、拳の下面で掌側の面、拳の上面で手の甲側の面の5つの面を、入力エリアとすることができる。
【0114】
各入力エリアに対してタップを行なった場合、加速度が最初に検出される軸の方向と正負は、それぞれ、X軸−方向、Y軸+方向、Y軸−方向、Z軸+方向、Z軸−方向となる。これらの軸の方向及び正負をルールベースとして用いれば、異なる方向面への入力であっても、タップ位置の特定が可能である。さらに、拳をどこかにぶつけることによる入力を検出するようにしてもよい。
【0115】
(実施形態3)
第3の実施形態に係る入力装置について、図面を参照して説明する。
【0116】
第2の実施形態では、腕上には、機器を操作するための3箇所の入力エリア71〜73があり、タップの衝撃により生じる腕の動きに応じた振動波形の特徴量をルールベースに従って分類することで、タップ位置を特定した。一方、本実施形態では、腕の動きに応じた振動波形の特徴量をルールベースに従って分類するとともに、接触検出部2による検出データpに基づいて、タップされる側の腕姿勢に応じて、同一の入力エリアへの入力に対して異なる操作コマンドを割り当てる。
【0117】
図16は、入力時の腕姿勢と各入力エリアを示す図である。
図16(a)〜(c)は、それぞれ、腕を挙げた状態、腕を水平にした状態、および、腕を下ろした状態を示す。腕姿勢が異なる場合には、各入力エリアに割り当てられている操作コマンドが異なる。
【0118】
本実施形態では、一例として、音楽プレーヤを操作する場合を考える。
図16(a)を参照すると、腕を挙げている状態では、前腕の手首側、前腕の上腕側、上腕に設けられた入力エリア71〜73に対して、それぞれ、「早送り」コマンド、「再生・一時停止」コマンド、「巻き戻し」コマンドが割り当てられている。また、
図16(b)を参照すると、腕を水平にしている状態では、入力エリア71〜73に対して、それぞれ、「選曲の送り」コマンド、「再生・一時停止」コマンド、「停止」コマンドが割り当てられている。さらに、
図16(c)を参照すると、腕を下ろしている状態では、入力エリア71〜73に対して、それぞれ、「消音」コマンド、「音量DOWN」コマンド、「音量UP」コマンドが割り当てられている。
【0119】
図17は、本実施形態の入力装置の構成を示すブロック図である。第2の実施形態では、タップ位置を特定するために、接触検出部2で検出された腕の動きに応じた振動波形の特徴量とタップ位置との対応関係を、ルールベースデータeとして記憶部4に予め記録しておいた(
図12)。一方、本実施形態では、接触検出部2で検出された腕の動きに応じた振動波形の特徴量とタップ位置との対応関係とともに、接触検出部2に基づく腕姿勢を組み合わせ、タップ位置および腕姿勢の組と操作コマンドとの対応関係をルールベースデータgとして予め記憶部4に記録しておく。
【0120】
図17を参照すると、本実施形態の入力装置は、第2の実施形態における入力情報特定部15(
図12)の代わりに、入力情報特定部25を有する。入力情報特定部25は、検出データpを受けると、記憶部4のルールベースデータgを参照し、腕の動きに応じた振動波形の特徴量と接触検出部2で検出された腕姿勢とにより、タップ位置および腕姿勢の組に割り当てられた操作コマンドを特定する。
【0121】
また、タップ位置および腕姿勢の組により特定された操作コマンドに応じて出されるコマンドを、入力情報特定データbとする。
【0122】
次に、本実施形態の入力装置の動作について説明する。
【0123】
図18は、本実施形態に係る入力装置の動作を示すフローチャートである。第2の実施形態の入力装置は、
図13のステップS302及び
図14のステップS401、402において、腕の動きに応じた振動波形の特徴量をルールベースに従ってタップ位置へ分類した。一方、本実施形態の入力装置は、ステップS502において、腕の動きに応じた振動波形の特徴量からルールベースに従ってタップ位置を抽出した後、検出データpに基づいて腕姿勢を抽出し、タップ位置および腕姿勢の組に割り当てられた操作コマンドを特定する(ステップS502)。
【0124】
次に、入力情報特定部25の動作について、詳細に説明する。
【0125】
図19は、本実施形態に係る入力装置における入力情報特定部25の動作を示すフローチャートである。入力情報特定部25は、第2の実施形態において、
図14を参照して説明したように、腕の動きに応じた振動波形の特徴量からルールベースに従ってタップ位置を抽出した後、腕姿勢を抽出する。入力情報特定部25は、一例として、接触検出部2の加速度センサ9によって検出された重力加速度の方向を利用して、腕姿勢を抽出することができる。
【0126】
まず、入力情報特定部25は、重力加速度が検出される方向にしたがって、腕姿勢を判別する(ステップS601)。重力加速度のY方向ないしZ方向の絶対値がX方向の絶対値よりも大きい場合には(ステップS601のYes)、入力情報特定部25は、腕を水平にしている状態(
図16(b))であると特定する。なお、重力加速度を(a
X,a
Y,a
Z)として、sqrt(a
Y2+a
Z2)>abs(a
X)である場合には、入力情報特定部25は、腕を水平にしている状態(
図16(b))であると特定するようにしてもよい。ここで、関数sqrt、absは、それぞれ、平方根および絶対値を表す。
【0127】
一方、重力加速度のX方向の絶対値がY方向およびZ方向の絶対値よりも大きい場合には(ステップS601のNo)、入力情報特定部25は、腕姿勢に応じて重力加速度が検出される向きを分類する(ステップS602)。X方向の加速度が正の場合には(ステップS602のYes)、入力情報特定部25は、腕を下ろしている状態(
図16(c))であると判定する。一方、X方向の加速度が負の場合には(ステップS602のNo)、入力情報特定部25は、腕を挙げている状態(
図16(a))であると判定する。
【0128】
図20は、腕姿勢と時系列データとの関係を示す表である。
図20の時系列データは、タップ時に接触検出部2の加速度センサ9で検出される腕の動きを表す加速度の軸X、Y、Z方向の各要素の検出波形を表す。
【0129】
図20(a)を参照すると、腕姿勢が腕を挙げた状態で、第1の入力エリア71へのタップ入力を行なった場合には、接触検出部2のタップ衝撃検出前において、X軸方向の加速度として、一定の値が検出されている。これは、加速度センサ9に、つねに一定の重力加速度がかかっていることを示す。すなわち、タップ入力のタイミング前の加速度が重力加速度を示す。入力情報特定部25は、この重力加速度の値に応じて腕姿勢を判別する。
【0130】
図20(a)を参照すると、重力加速度のX方向の絶対値がY方向およびZ方向の絶対値よりも大きく(
図19のステップS601のNo)、X方向の加速度が負であることから(
図19のステップS602のNo)、入力情報特定部25は、腕を挙げている状態であると判別する。
【0131】
本実施形態では、タップ位置と腕姿勢との組合せにより割り当てる操作コマンドを変更したが、タップ位置と腕姿勢の変化との組合せにより割り当てる操作コマンドを変更してもよい。
【0132】
また、本実施形態では、腕姿勢を検出するのに加速度センサ9を用い、重力加速度を利用することで腕姿勢を判別し、入力エリアに割り当てられた操作コマンドを特定したが、角度センサやジャイロなど他センサと組み合わせることにより腕姿勢を判別するようにしてもよい。
【0133】
本実施形態のように接触検出部2に加速度センサ9を設けることで、定常状態からの変化量である振動の周期からタップ位置を算出するとともに、重力加速度を利用することで腕姿勢も併せて算出することができる。したがって、本実施形態の入力装置によると、センサを追加することなく、複数の状態量を取得でき、機器の構成を単純にすることができる。
【0134】
本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【0135】
なお、上記実施形態の一部又は全部は、以下の付記として記載することができるものであるが、これらに限定されるものではない。
【0136】
(付記1)ユーザの身体をタップすることにより生起された身体の動きを、検出データとして検出する検出部と、
前記検出データを参照するとともに、前記検出データがタップ位置に依存して変化することに基づいて、タップ位置を特定する入力情報特定部と、を備えていることを特徴とする入力装置。
【0137】
(付記2)前記入力情報特定部は、前記検出データの波形の特徴をパターンマッチングによって分類することで、タップ位置を特定することを特徴とする、付記1に記載の入力装置。
【0138】
(付記3)前記パターンマッチングは、動的計画法(Dynamic Programming)によるマッチング(DPマッチング)であることを特徴とする、付記2に記載の入力装置。
【0139】
(付記4)タップすることによる身体の動きの典型的なデータと、タップ位置とを対応付けてテンプレートデータとして保持する記憶部をさらに備え、
前記入力情報特定部は、前記記憶部に格納された典型的なデータと前記検出データとの間における相関を算出することにより、タップ位置を特定することを特徴とする、付記1乃至3のいずれか一に記載の入力装置。
【0140】
(付記5)前記入力情報特定部は、前記検出データの波形の特徴をルールベースによって分類することで、タップ位置を特定することを特徴とする、付記1に記載の入力装置。
【0141】
(付記6)前記ルールベースは、多関節構造モデルに基づくルールベースであることを特徴とする、付記5に記載の入力装置。
【0142】
(付記7)前記身体の動きは、腕の動きであることを特徴とする、付記1乃至6のいずれか一に記載の入力装置。
【0143】
(付記8)前記入力情報特定部は、特定したタップ位置に対応付けられた操作コマンドを出力することを特徴とする、付記1乃至7のいずれか一に記載の入力装置。
【0144】
(付記9)前記検出部は、振動を検出する加速度センサを備えていることを特徴する、付記1乃至8のいずれか一に記載の入力装置。
【0145】
(付記10)前記検出部は、手首に設けられることを特徴とする、付記7乃至9のいずれか一に記載の入力装置。
【0146】
(付記11)コンピュータが、ユーザの身体をタップすることにより生起された身体の動きを、検出データとして検出する工程と、
前記検出データを参照するとともに、前記検出データがタップ位置に依存して変化することに基づいて、タップ位置を特定する工程と、を含むことを特徴とする入力方法。
【0147】
(付記12)コンピュータが、前記検出データの波形の特徴をパターンマッチングによって分類することで、タップ位置を特定することを特徴とする、付記11に記載の入力方法。
【0148】
(付記13)前記パターンマッチングは、動的計画法(Dynamic Programming)によるマッチング(DPマッチング)であることを特徴とする、付記12に記載の入力方法。
【0149】
(付記14)コンピュータが、タップすることによる身体の動きの典型的なデータと、タップ位置とを対応付けてテンプレートデータとして保持する記憶部を参照し、該記憶部に格納された典型的なデータと、前記検出データとの間における相関を算出することにより、タップ位置を特定することを特徴とする、付記11乃至13のいずれか一に記載の入力方法。
【0150】
(付記15)コンピュータが、前記検出データの波形の特徴をルールベースによって分類することで、タップ位置を特定することを特徴とする、付記11に記載の入力方法。
【0151】
(付記16)前記ルールベースは、多関節構造モデルに基づくルールベースであることを特徴とする、付記15に記載の入力方法。
【0152】
(付記17)前記身体の動きは、腕の動きであることを特徴とする、付記11乃至16のいずれか一に記載の入力方法。
【0153】
(付記18)コンピュータが、特定したタップ位置に対応付けられた操作コマンドを出力する工程を、さらに含むことを特徴とする、付記11乃至17のいずれか一に記載の入力方法。
【0154】
(付記19)ユーザの身体をタップすることにより生起された身体の動きを、検出データとして検出する処理と、
前記検出データを参照するとともに、前記検出データがタップ位置に依存して変化することに基づいて、タップ位置を特定する処理とを、コンピュータに実行させることを特徴とするプログラム。
【0155】
(付記20)前記検出データの波形の特徴をパターンマッチングによって分類することで、タップ位置を特定する処理を、コンピュータに実行させることを特徴とする、付記19に記載のプログラム。
【0156】
(付記21)前記パターンマッチングは、動的計画法(Dynamic Programming)によるマッチング(DPマッチング)であることを特徴とする、付記20に記載のプログラム。
【0157】
(付記22)タップすることによる身体の動きの典型的なデータと、タップ位置とを対応付けてテンプレートデータとして保持する記憶部を参照し、該記憶部に格納された典型的なデータと、前記検出データとの間における相関を算出することにより、タップ位置を特定する処理を、コンピュータに実行させることを特徴とする、付記19乃至21のいずれか一に記載のプログラム。
【0158】
(付記23)前記検出データの波形の特徴をルールベースによって分類することで、タップ位置を特定する処理を、コンピュータに実行させることを特徴とする、付記19に記載のプログラム。
【0159】
(付記24)前記ルールベースは、多関節構造モデルに基づくルールベースであることを特徴とする、付記23に記載のプログラム。
【0160】
(付記25)前記身体の動きは、腕の動きであることを特徴とする、付記19乃至24のいずれか一に記載のプログラム。
【0161】
(付記26)特定したタップ位置に対応付けられた操作コマンドを出力する処理を、さらにコンピュータに実行させることを特徴とする、付記19乃25のいずれか一に記載のプログラム。
【0162】
(付記27)付記19乃至26のいずれか一に記載のプログラムが記録されていることを特徴とする、コンピュータ読み取り可能な記録媒体。
【0163】
(付記28)ユーザの身体をタップすることにより生起された身体の動きを、検出データとして検出する検出部と、
前記検出データを参照するとともに、前記検出データがタップ位置に依存して変化することに基づいて、タップ位置を特定し、特定したタップ位置に対応付けられた操作コマンドを出力する入力情報特定部と、を備えていることを特徴とする入力装置。
【0164】
(付記29)コンピュータが、ユーザの身体をタップすることにより生起された身体の動きを、検出データとして検出する工程と、
前記検出データを参照するとともに、前記検出データがタップ位置に依存して変化することに基づいて、タップ位置を特定する工程と、
特定したタップ位置に対応付けられた操作コマンドを出力する工程と、を含むことを特徴とする入力方法。
【0165】
(付記30)ユーザの身体をタップすることにより生起された身体の動きを、検出データとして検出する処理と、
前記検出データを参照するとともに、前記検出データがタップ位置に依存して変化することに基づいて、タップ位置を特定する処理と、
特定したタップ位置に対応付けられた操作コマンドを出力する処理と、をコンピュータに実行させることを特徴とするプログラム。
【0166】
(付記31)前記検出部は、加速度センサを有し、
前記入力情報特定部は、前記加速度センサによって検出された重力加速度に応じて、タップされる側の腕姿勢を特定し、特定したタップ位置と腕姿勢の組に対応付けられた操作コマンドを出力することを特徴とする、付記5または6に記載の入力装置。
【0167】
(付記32)前記検出部は、タップされる側の手首に設けられることを特徴とする、付記31に記載の入力装置。
【0168】
(付記33)前記入力情報特定部は、前記重力加速度に応じて、タップされる側の腕姿勢が、腕を挙げた状態、腕を水平にした状態、または、腕を下ろした状態のいずれであるかを特定することを特徴とする、付記31または32に記載の入力装置。