(57)【要約】情報処理装置に接続され、ユーザの手に装着されるコントローラデバイスであって、ユーザにより把持されるデバイス本体を有し、このデバイス本体上、ユーザが把持したときに、ユーザの少なくとも一部の指の付け根に当接する位置に、指の付け根部分の形状変化に基づくセンサ出力を出力するセンサを配し、当該センサが出力するユーザの指の付け根部分の形状変化に係る情報を受け入れて、接続された情報処理装置に送出するコントローラデバイスである。
2019077652.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置と、
ユーザの手に装着されるコントローラデバイスとを含む情報処理システムであって、
前記コントローラデバイスは、
ユーザにより把持されるデバイス本体を有し、
前記デバイス本体上、ユーザが把持したときに、ユーザの少なくとも一部の指の付け根に当接する位置に、指の付け根部分の形状変化に基づくセンサ出力を出力するセンサを配し、
前記センサが出力する、ユーザの指の付け根部分の形状変化に応じたセンサ出力を受け入れて、前記接続された情報処理装置に送出する制御手段と、
を含む情報処理システム。
【請求項２】
情報処理装置に接続され、ユーザの手に装着されるコントローラデバイスであって、
ユーザにより把持されるデバイス本体を有し、
前記デバイス本体上、ユーザが把持したときに、ユーザの少なくとも一部の指の付け根に当接する位置に、指の付け根部分の形状変化に基づくセンサ出力を出力するセンサを配し、
前記センサが出力する、ユーザの指の付け根部分の形状変化に応じたセンサ出力を受け入れて、前記接続された情報処理装置に送出する制御手段と、
を含むコントローラデバイス。
【請求項３】
請求項２に記載のコントローラデバイスであって、
前記センサは、
圧力センサ、
距離センサ、
歪みセンサ、
静電容量センサ、
の少なくとも一つの種類のセンサを含むコントローラデバイス。
【請求項４】
請求項２に記載のコントローラデバイスであって、
前記センサは、ユーザの手の平の幅方向に複数配列した、
圧力センサ、
距離センサ、
歪みセンサ、
の少なくとも一つの種類のセンサを有し、
前記制御手段は、ユーザの指の付け根部分の形状変化に係る情報として、前記複数配列された各センサのセンサ出力を受け入れて、前記接続された情報処理装置に送出するコントローラデバイス。
【請求項５】
コントローラデバイスに接続される情報処理装置であって、
前記コントローラデバイスは、ユーザにより把持されるデバイス本体を有し、
前記デバイス本体上、ユーザが把持したときに、ユーザの少なくとも一部の指の付け根に当接する位置に、指の付け根部分の形状変化に基づくセンサ出力を出力するセンサとして、ユーザの手の平の幅方向に複数配列した、
圧力センサ、
距離センサ、
歪みセンサ、
の少なくとも一つの種類のセンサを有しており、
前記情報処理装置は、
前記ユーザの指の付け根部分の形状変化に応じたセンサ出力として、前記複数配列された各センサのセンサ出力を、当該コントローラデバイスから受け入れる手段と、
前記受け入れた情報に基づいて、ユーザの指の、手の平の幅方向の動きを推定する処理を行う処理手段と、
を含む情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、コントローラデバイス、及び情報処理装置に関する。
【背景技術】
【０００２】
家庭用ゲーム機等におけるコントローラデバイスは、ユーザが行ったボタン押下やデバイスを振る等の動作を検出して、ゲーム機等の本体に当該検出したユーザの動作を表す情報を送出している。従来、こうしたコントローラデバイスのうちでは、カメラによりユーザの指先を撮像して、ユーザの指の動きを検出するものが知られている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、手の大きさや指の長さは、個人差が大きく、平均的な人の指の可動域に合わせて指先を検出するセンサを配したのでは、ユーザの手の大きさによっては、当該ユーザの指の可動域がカバーできない場合があり、指先の検出が安定的にできない場合があった。【０００４】
本発明は上記実情に鑑みて為されたもので、ユーザの指先の動きを安定的に検出できる情報処理システム、コントローラデバイス、及び情報処理装置を提供することを、その目的の一つとする。
【課題を解決するための手段】
【０００５】
上記従来例の問題点を解決する本発明は、ユーザの手に装着されるコントローラデバイスを含み、このコントローラデバイスがユーザにより把持されるデバイス本体を有し、前記デバイス本体上、ユーザが把持したときに、ユーザの少なくとも一部の指の付け根に当接する位置に、指の付け根部分の形状変化に基づくセンサ出力を出力するセンサを配し、前記センサが出力する、ユーザの指の付け根部分の形状変化に応じたセンサ出力を受け入れて、前記接続された情報処理装置に送出する制御手段を含むこととしたものである。
【発明の効果】
【０００６】
これによりユーザの指先の動きを安定的に検出できる。
【図面の簡単な説明】
【０００７】
【図１】本発明の実施の形態に係る情報処理システムの構成例を表すブロック図である。
【図２】本発明の実施の形態に係るコントローラデバイスの概要を表す斜視図である。
【図３】本発明の実施の形態に係るコントローラデバイスの概要を表す機能ブロック図である。
【図４】本発明の実施の形態に係るコントローラデバイスが検出する指の付け根の形状の変化を表す概略説明図である。
【図５】本発明の実施の形態に係るコントローラデバイスが検出する指の付け根の位置の変化を表す概略説明図である。
【図６】本発明の実施の形態に係るコントローラデバイスの静電容量センサによる検出例を表す説明図である。
【図７】本発明の実施の形態に係る情報処理装置の例を表す機能ブロック図である。
【図８】本発明の実施の形態に係るコントローラデバイスによる指の付け根の位置の検出例を表す説明図である。
【図９】本発明の実施の形態に係るコントローラデバイスにおけるセンサの配置範囲例を表す説明図である。
【発明を実施するための形態】
【０００８】
本発明の実施の形態について図面を参照しながら説明する。なお、以下の説明において各部の大きさやその比、配置等は一例であり、本実施の形態の例は、図示等した大きさや比率、配置に限られるものではない。
【０００９】
本発明の実施の形態に係る情報処理システムは、例えば家庭用ゲーム機等のコンピュータ機器を含むシステムであり、図１に例示するように、家庭用ゲーム機本体等の情報処理装置１と、この情報処理装置１に接続されたコントローラデバイス２０とを含む。
【００１０】
コントローラデバイス２０は、ユーザの左手または右手の少なくとも一方に装着されて固定される。以下の説明において、ユーザの左手に固定されるコントローラデバイス２０と、右手に固定されるコントローラデバイス２０とは同形であってもよい。
【００１１】
このコントローラデバイス２０は、図２にその概要を例示するように、デバイス本体２１０と、このデバイス本体２１０に固定された固定具２２０とを含んで構成される。図２（ａ）はコントローラデバイス２０をその背面側から見た概略斜視図であり、図２（ｂ）は、コントローラデバイス２０をその正面側から見た概略斜視図である。また、このコントローラデバイス２０は、デバイス本体２１０内に、図３に示すように、制御部２１と、記憶部２２と、操作インタフェース２３と、センサ部２４と、通信部２５とを含んだ回路部を備えて構成される。
【００１２】
本実施の形態の例では、固定具２２０は可撓性あるベルトを環状としたものであり、この固定具２２０にユーザの人差指、中指、薬指、及び小指を通し、デバイス本体２１０をユーザの親指の付根（人差指、中指、薬指、及び小指のＭＰ関節に相当する位置）に当接させた位置に固定して用いる。
【００１３】
デバイス本体２１０は、ユーザにより把持される把持部２１１と、操作部２１２と、指動作センサ２１３とを含む。把持部２１１は、本実施の形態の一例では実質的に多角形柱状をなしている。操作部２１２は、把持部２１１から連続して形成されており、図２の例では、ボタン操作部２３１等を含む。指動作センサ２１３は、センサ部２４に含まれるセンサの一つであり、図２に例示するようにデバイス本体２１０上に、当該デバイス本体２１０をユーザが把持したときに、ユーザの少なくとも一部の指の付け根に当接する位置にそれぞれ配される。つまり、例えばコントローラデバイス２０の背面側においては親指の付け根に当接する位置に配され（図２（ａ））、正面側では、人差指、中指、薬指、及び小指の各指の付け根が当接する位置に配される（図２（ｂ））。この指動作センサ２１３は、ユーザの指の付け根部分の形状変化に基づくセンサ出力を出力する。この指動作センサ２１３の詳しい動作については後に述べる。
【００１４】
またこのコントローラデバイス２０の大きさは、ユーザが自然にデバイス本体２１０を把持したときに、その一方端がユーザの親指（いわゆる親指）の先端が到達する位置よりやや外側に位置し、その他方端が、小指の付け根（ＭＰ関節に相当する位置）からやや突出する位置にある程度の大きさとする。なおデバイス２０は、コントローラデバイス２０を装着した状態でユーザが手を開いても、固定具２２０によりユーザの手に固定されるので、落下することはない。
【００１５】
本実施の形態の制御部２１は、ＣＰＵ等のプログラム制御デバイスであり、記憶部２２に格納されたプログラムに従って動作する。本実施の形態ではこの制御部２１は、操作インタフェース２３を介してユーザが操作部２１２のボタン操作部２３１等においてした操作の内容を表す情報の入力を受け、当該情報を、通信部２５を介して情報処理装置１へ出力する。またこの制御部２１は、センサ部２４に含まれるセンサが出力する情報を、通信部２５を介して情報処理装置１へ出力する。
【００１６】
記憶部２２は、メモリデバイス等であり、制御部２１によって実行されるプログラムを保持する。このプログラムは、コンピュータ可読かつ、非一時的な記憶媒体に格納されて提供され、この記憶部２２に複写されたものであってもよい。またこの記憶部２２は、制御部２１のワークメモリとしても動作する。
【００１７】
操作インタフェース２３は、操作部２１２に備えられたボタン操作部２３１等に対してユーザが行った操作の内容を表す情報を制御部２１に出力する。センサ部２４は、指動作センサ２１３を含む少なくとも一つのセンサを含み、当該センサが出力する情報（センサ出力）を制御部２１に出力する。
【００１８】
通信部２５は、ＵＳＢインタフェース等の有線インタフェースや、ブルートゥース（登録商標）等の無線インタフェースであり、制御部２１から入力される指示に従い、種々の情報を情報処理装置１に対して出力している。
【００１９】
情報処理装置１は、図１に例示したように、制御部１１と、記憶部１２と、インタフェース部１３と、出力部１４とを含んで構成されている。制御部１１は、ＣＰＵ等のプログラム制御デバイスであり、記憶部１２に格納されたプログラムに従って動作する。本実施の形態では制御部１１は、コントローラデバイス２０からユーザの指の付け根部分の形状変化に係る情報を受け入れ、当該情報に基づいてユーザの指の動きを推定する。この制御部１１の具体的な処理の内容については、後に詳しく述べる。
【００２０】
記憶部１２は、メモリデバイス等であり、制御部１１によって実行されるプログラムを保持する。このプログラムは、コンピュータ可読かつ、非一時的な記憶媒体に格納されて提供され、この記憶部１２に複写されたものであってもよい。またこの記憶部１２は、制御部１１のワークメモリとしても動作する。
【００２１】
インタフェース部１３は、コントローラデバイス２０に無線又は有線にて接続され、コントローラデバイス２０からユーザの操作の内容を表す情報や、ユーザの指の付け根部分の形状変化に係る情報を受け入れ、制御部１１に出力する。
【００２２】
出力部１４は、例えばＨＤＭＩ（登録商標）インタフェース等、家庭用テレビジョンに対して映像等を出力するインタフェースを有する。この出力部１４は、制御部１１から入力される指示に従い、表示するべき映像の情報を出力する。
【００２３】
次に本実施の形態のコントローラデバイス２０の指動作センサ２１３と、情報処理装置１の制御部１１の動作とについて説明する。
【００２４】
指動作センサ２１３は、圧力センサ、距離センサ、歪みセンサ、静電容量センサ、の少なくとも一つの種類のセンサを含み、ユーザの指の付け根部分の形状変化、及び位置に応じたセンサ出力を出力する。すなわち、人間の手では、人間が指を伸ばした状態（手の平の面と指の向きとが同一面内にあるよう、指をまっすぐに伸ばした状態）においては、手の平の指の付け根部分もこの面内からやや突出している程度となるが（図４（ａ））、指の曲げ方が大きくほど、当該指の付け根部分の曲げた方向への突出量が増大する（図４（ｂ），（ｃ）；元の面を一点鎖線で示す、なおやや誇張して表記している）。
【００２５】
本実施の形態の指動作センサ２１３は、このようなユーザの指の付け根部分の形状変化に応じたセンサ出力を出力する。また指動作センサ２１３は、指の付け根の位置に応じたセンサ出力を、併せて出力してもよい。
【００２６】
すなわち、手の平の幅方向では、隣接する指同士を接触させた状態（図５（ａ））と、指を開いた（隣接する指間を離した）状態（図５（ｂ））とでは、指の付け根の、指を曲げたときに突出する範囲も指の動きに対応して、隣接する指の付け根同士が近接した状態（図５（ａ））と、隣接する指の付け根同士が比較的離れた状態（図５（ｂ））との間で変化する。なお、図５（ｂ）では図５（ａ）における各指の付け根の対応する位置を破線の円で示している。そこで、この幅に応じてセンサを複数配するか、またはこの範囲での指の付け根の位置を検出するセンサを配する。
【００２７】
具体的に、指動作センサ２１３が圧力センサである場合、この圧力センサを、デバイス本体２１０をユーザが把持したときに、ユーザの少なくとも一部の指の付け根に当接する位置に、ユーザの手の平に垂直な方向の圧力に応じたセンサ出力を出力するように配置する。
【００２８】
この例では、指動作センサ２１３は、少なくともユーザの指ごと（親指、人差し指、中指、薬指、小指のそれぞれ）に対応した圧力センサを含む。
【００２９】
そして各圧力センサは、ユーザが対応する指を伸ばした状態では比較的小さい圧力を表すセンサ出力を出力し、ユーザが対応する指を大きく曲げるほど大きい圧力を表すセンサ出力を出力する。指動作センサ２１３は、各指に対応する圧力センサにおけるセンサ出力の情報を、ユーザの指の付け根部分の形状変化に基づく情報として、制御部２１に出力する。そして制御部２１が、当該情報を、通信部２５を介して情報処理装置１へ出力することとなる。
【００３０】
また、指動作センサ２１３が距離センサである場合、距離センサを、デバイス本体２１０をユーザが把持したとき、ユーザの少なくとも一部の指の付け根に当接する位置に、ユーザの手の平に垂直な方向の指の付け根までの距離に応じたセンサ出力を出力するように配置する。
【００３１】
この例では、指動作センサ２１３は、少なくともユーザの指ごと（親指、人差し指、中指、薬指、小指のそれぞれ）に対応した距離センサを含む。
【００３２】
そして各距離センサは、ユーザが対応する指を伸ばした状態では指の付け根の部分が突出しないので、比較的長い距離であることを表すセンサ出力を出力する。また距離センサは、ユーザが対応する指を大きく曲げるほど短い距離であることを表すセンサ出力を出力する。指動作センサ２１３は、各指に対応する距離センサにおけるセンサ出力の情報を、ユーザの指の付け根部分の形状変化に係る情報として、制御部２１に出力する。そして制御部２１が、当該情報を、通信部２５を介して情報処理装置１へ出力することとなる。
【００３３】
さらに指動作センサ２１３が歪みセンサである場合、歪みセンサを、デバイス本体２１０をユーザが把持したとき、ユーザの少なくとも一部の指の付け根に当接する位置に配置し、押圧力による歪みに応じたセンサ出力を出力する。
【００３４】
この例では、指動作センサ２１３は、少なくともユーザの指ごと（親指、人差し指、中指、薬指、小指のそれぞれ）に対応した歪みセンサを含む。各歪みセンサは、ユーザが対応する指を伸ばした状態では指の付け根の部分が突出しないので、比較的小さい力で押圧された状態となり、比較的小さい歪みが検出されている旨のセンサ出力を出力する。またこの例の歪みセンサは、ユーザが対応する指を大きく曲げるほど大きい力で押圧されることとなるので、ユーザが対応する指を大きく曲げるほど大きい歪みを表すセンサ出力を出力する。指動作センサ２１３は、各指に対応する歪みセンサにおけるセンサ出力の情報を、ユーザの指の付け根部分の形状変化に係る情報として、制御部２１に出力する。そして制御部２１が、当該情報を、通信部２５を介して情報処理装置１へ出力することとなる。
【００３５】
また指動作センサ２１３が静電容量センサである場合について説明する。静電容量センサは、例えばタッチパネルであり、所定の面積の面（検出面）内の各所での静電容量に応じたセンサ出力を出力する。このような静電容量センサを用いる場合、静電容量センサは、デバイス本体２１０をユーザが把持したときユーザの指の付け根が当接する範囲の静電容量に応じたセンサ出力を出力するように配される。
【００３６】
静電容量センサは、ユーザが指を伸ばした状態では、当該伸ばしている指の付け根部分での静電容量の変化が小さいとするセンサ出力を出力し、ユーザが指を大きく曲げるほど、当該曲げている指の付け根部分での静電容量の変化が大きいとするセンサ出力を出力する。この静電容量センサのセンサ出力は例えば図６に例示するような、静電容量センサの検出面内の各点での静電容量の変化量を表す情報となる。なお、図６では変化量が大きいほど濃い色となるように示している。
【００３７】
指動作センサ２１３は、この静電容量センサによるセンサ出力の情報を、ユーザの指の付け根部分の形状変化に係る情報として、制御部２１に出力する。そして制御部２１が、当該情報を、通信部２５を介して情報処理装置１へ出力することとなる。
【００３８】
また、静電容量センサは、タッチパネルのように検出面内の各所での静電容量の変化に応じたセンサ出力を出力するものだけでなく、一ヶ所での静電容量の変化に応じたセンサ出力を出力するもの（いわゆる近接スイッチ）もある。この場合の静電容量センサは、圧力センサと同様、少なくともユーザの指ごと（親指、人差し指、中指、薬指、小指のそれぞれ）に対応して設けられ、それぞれ対応する指の曲げ度合いに応じた静電容量の変化量の情報を出力することとなる。
【００３９】
情報処理装置１の制御部１１は、機能的には図７に例示するように、アプリケーション処理部１１０と、検出処理部１２０とを含んで構成される。アプリケーション処理部１１０は、例えばゲームアプリケーションなどのアプリケーションプログラムを実行する。このアプリケーション処理部１１０は、アプリケーションプログラムに従い、検出処理部１２０に対して処理を行うよう指示してもよい。また、このアプリケーション処理部１１０は、例えば、仮想空間内でユーザにより制御されるキャラクタを表示する。このときアプリケーション処理部１１０は、検出処理部１２０が出力するユーザの指の動きを表す情報に基づき、仮想空間内でのキャラクタの姿勢や動作を設定して、表示内容に反映する。
【００４０】
検出処理部１２０は、コントローラデバイス２０から受け入れたユーザの指の付け根部分の形状変化に係る情報に基づき、ユーザの指の動きを表す情報を生成する。例えば、コントローラデバイス２０が指動作センサ２１３としてユーザの指ごとの圧力センサ、距離センサ、歪みセンサ（または近接スイッチ）のセンサ出力を、ユーザの指の付け根部分の形状変化に係る情報として出力している場合、当該情報を受け入れる。
【００４１】
この情報は、例えば親指に関するセンサ出力Ｒ１，人差し指に係るセンサ出力Ｒ２…というように、複数のセンサ出力の情報を含む。制御部１１の検出処理部１２０は、この複数のセンサ出力の情報から、ユーザの各指の動きを表す情報として、各指の曲げ具合を表す情報を生成して出力する。
【００４２】
一例として制御部１１の検出処理部１２０は、ある指に係るセンサ出力の情報Ｒiに基づいて、指の曲げ具合を表す情報Ｂiを、
Ｂi＝αi×Ｒi
（ｉ＝１，２，…５）
として求める。ここでαは、指ごとに実験的に定められる比例定数であり、圧力、歪みセンサを用いる場合においては正の値（指が大きく曲げられるほど、大きい値となるものについては正の値）、距離センサ（あるいは近接スイッチ）が用いられる場合においては負の値（指が大きく曲げられるほど、小さい値となるものについては負の値）とする。またαは各指に共通の値であってもよい。
【００４３】
また、実際には例えば人差し指を曲げたときに、隣接する中指の指の付け根も多少、手の平の面から突出するので、各指の曲げ具合を表す情報を、
Ｂ＝［Ａ］Ｒ      （１）
として求めてもよい。なお、ここでＢは、親指，人差し指，中指，薬指，小指の各指の曲げ具合を表す情報Ｂi（ｉ＝１，２，…５）を配列したベクトルであり、Ｒは対応する各指のセンサ出力の情報Ｒi（ｉ＝１，２，…５）を配列したベクトルである。また［Ａ］は、５×５の行列であり、その要素は、実験的に定める。この例によると、例えば中指の曲げ具合が（行列［Ａ］のｐ行ｑ列目の要素をａpqと表記して）、
Ｂ3＝ａ31Ｒ1＋ａ32Ｒ2＋ａ33Ｒ3＋ａ34Ｒ4＋ａ35Ｒ5
のように表され、中指に隣接する、人差し指に係るセンサ出力に基づく変化ａ32Ｒ2と、薬指に係るセンサ出力に基づく変化ａ34Ｒ4とが、中指に係るセンサ出力に基づく変化ａ33Ｒ3とともに考慮されることとなる。
【００４４】
なお、本実施の形態の一例では、ここでの演算に用いるパラメータ、αiや、［Ａ］の各要素の値等を、機械学習的処理によって学習にて獲得させてもよい。さらにこの場合は、単純な指の曲げ具合の情報だけでなく指の姿勢（第１関節の曲げ具合と第２関節の曲げ具合となど）の情報を出力できるようにしてもよい。すなわち、予め実際に複数人のサンプルユーザに、それぞれ互いに異なる指の姿勢をつくってもらい、測定されたセンサ出力に対する上記演算の応答と、実際の姿勢との相違をフィードバックして、演算に用いるパラメータを調整することを繰り返す。この例では制御部１１の検出処理部１２０は、これにより学習されたパラメータを用いて演算を行い、各指のセンサ出力の情報Ｒiに基づいて、各指の姿勢に関する情報を生成して出力する。
【００４５】
［指の開き具合を検出する例］
また既に述べたように、本実施の形態の指動作センサ２１３は、手の平の幅方向で、隣接する指同士をどの程度開いた（隣接する指間を離した）状態としているかを検出してもよい。この例では、指動作センサ２１３において圧力センサ、距離センサ、歪みセンサ（あるいは近接スイッチ）が用いられる場合、これらの圧力センサ、距離センサ、歪みセンサ（あるいは近接スイッチ）を、ユーザの手の平の幅方向に、指の数を超える複数個配列する。またこの配列範囲は、例えば平均的なユーザが手の指間を開いたときの手の平の幅以上の範囲となるようにしておく。さらに配列は一次元的（直線状）である必要はなく、千鳥状に配列されてもよいし、二次元的にマトリクス状に配列されていてもよい。
【００４６】
そしてこの場合も、各センサにおけるセンサ出力の情報を、ユーザの指の付け根部分の形状変化に係る情報として、制御部２１に出力する。そして制御部２１が、当該情報を、通信部２５を介して情報処理装置１へ出力することとなる。
【００４７】
具体的に、この場合の各センサにおけるセンサ出力の情報は概括的には図８に示すように、手の平の幅方向に沿って複数の点でピークＰを有するセンサ出力の群となる（指の付け根部分は、指を伸ばした状態であっても、指の股部に対応する部分よりは手の平からいくぶん突出しているので、指の付け根部分では圧力、距離等はピークとなる）。なお、図８（ａ）は指間を開いた状態、図８（ｂ）は指間を閉じた状態を示す。
【００４８】
そこで、このようなセンサ出力の情報を受け入れた情報処理装置１の制御部１１は、各ピークの位置を検出して、当該検出位置に指があるとする位置情報を出力する。これにより指が開かれた（隣接する指間が離れた）状態にあるか、指が閉じられた（隣接する指を近づけた）状態にあるかを検出できる。
【００４９】
なお、この例において、タッチパネルのように検出面内の各所での静電容量の変化に応じたセンサ出力を出力する静電容量センサが指動作センサ２１３において用いられている場合は、静電容量の値のピーク位置により、当該検出位置に指があるとする位置情報を出力すればよい。
【００５０】
［センサの種類］
またここまでの説明では、指動作センサ２１３は、圧力センサ、距離センサ、歪みセンサ、静電容量センサのいずれか一つの種類のセンサを備えるものとしたが、本実施の形態はこれに限られず、複数のセンサを併用してもよい。
【００５１】
この場合、制御部１１の検出処理部１２０は、各センサ出力Ｒａi，Ｒｂi…（ｉ＝１，２，…、センサの種類ごとのセンサ出力をＲａ，Ｒｂ…と表記する）に基づき、
Ｂi＝αi×Ｒai＋βi×Ｒbi＋…
のようにユーザの指の曲げ具合を演算する。あるいはセンサの種類ごとに対応する行列［Ａ］，［Ｂ］…を用いて、
Ｂ＝［Ａ］Ｒa＋［Ｂ］Ｒb＋…
というようにユーザの指の曲げ具合を演算する。
【００５２】
またこの例においても、曲げ具合だけでなく指の姿勢の情報が出力できるよう、機械学習の処理等により、各パラメータα，β…または行列［Ａ］，［Ｂ］…を獲得させてもよい。
【００５３】
さらに、センサは、加速度センサや、カメラ、筋電センサ等を併用してもよい。この場合、これらの情報についても上述と同様に、ユーザの指の曲げ具合や指の姿勢の情報の演算に用いる。
【００５４】
［複数のセンサによる検出］
また、本実施の形態の一例において親指については、他の指に比べて可動域が大きいため、指ごとにセンサを配する場合も、親指については複数のセンサを対応させてもよい。一例として図９に概要を例示するようにデバイス本体２１０をユーザが把持したとき、親指の付け根が当接し得る円弧状の範囲Ｑに、複数の親指用のセンサ（圧力センサ、距離センサ、歪みセンサ等）を配することとしてもよい。
【００５５】
この例では、制御部１１の検出処理部１２０は、親指に対応する各センサのセンサ出力Ｒ11，Ｒ12，…Ｒ1iを用い、例えばＢ1＝α11×Ｒ11＋α12×Ｒ12＋…というようにして親指の曲げ具合の値を演算することとしてもよい。またこの場合も、情報処理装置１は、既知の親指の曲げ具合や姿勢とセンサ出力とを教師信号として用いた機械学習によりパラメータ（α11，α12…等）を学習させ、当該学習して得られたパラメータを利用して親指の曲げ具合や姿勢を推定することとしてもよい。
【００５６】
このように、複数ｋ種類のセンサを用い、かつ、各種類のセンサをそれぞれｎκ（κ＝１，２，…ｋ；ｎκはそれぞれ１以上の整数）個用いる場合、（１）式に準じて、パラメータに係る行列αを、Ｎ×５行列（Ｎ＝Σ_κ（ｎκ））として、各指の動きに応じた各センサのセンサ出力に対応する係数を反映してもよい。この場合は、（１）式のＲを１行Ｎ列のベクトルとするよう各センサ出力を配列する。このようにすると（１）式におけるＢは５行１列のベクトルとなり、その出力の解釈はここまでに説明した例と同様となる。
【００５７】
［ユーザごとのキャリブレーション］
なお、本実施の形態の一例では、演算に用いるパラメータに対して、ユーザごとのキャリブレーションを実行してもよい。例えば、情報処理装置１は、ユーザに指を曲げてコントローラデバイス２０を握り込むよう要求し、当該姿勢をユーザがとったときの各センサのセンサ出力（キャリブレーションの際にユーザが指を曲げたときのセンサ出力）を取得する。また、ユーザに指を伸ばすよう要求し、当該姿勢をユーザがとったときの各センサのセンサ出力（キャリブレーションの際にユーザが指を伸ばしたときのセンサ出力）を取得する。これにより、各センサの検出値の範囲を特定し、当該検出値の範囲に合わせて検出ができるよう、演算時のパラメータ（αiや、［Ａ］の各要素の値等）を補正する。またこの場合、情報処理装置１は、センサ出力の値から、キャリブレーションの際にユーザが指を伸ばしたときのセンサ出力の値を引いてから、指の曲げ具合等の演算処理を行うこととしてもよい。
【００５８】
また、情報処理装置１は、ユーザに対して明示的に指の曲げ伸ばしを要求することなく、各センサのセンサ出力を継続的にモニタリングし、センサ出力の最大値と最小値とを記録し、更新することで、使用させながらセンサ出力の最大値と最小値とを得て、キャリブレーションを実行してもよい。
【００５９】
［判断結果の補正］
さらに、本実施の形態の情報処理装置１は、検出処理部１２０の処理において、各指の曲げ具合や姿勢の演算の結果、一般的にユーザがすることのない指のポーズとなっているか否かを判断し、一般的にユーザがすることのない指のポーズとなっていると判断した場合は、予め定めた所定のポーズ（例えば指を自然に開いたポーズ）となっているとする情報を出力してもよい。
【００６０】
具体的には、一般的に薬指だけを曲げた不自然な姿勢は取りにくいが、検出処理部１２０の処理において、各指の曲げ具合や姿勢の演算の結果、薬指が大きく曲げられ、他の指が伸ばされていると判断されたときには、すべての指が伸ばされた状態にあるとの情報を出力することとしてもよい。
【００６１】
また、情報処理装置１は、この判断の頻度（単位時間あたりに一般的にユーザがすることのない指のポーズとなっていると判断した回数）を記録し、この頻度が予め定めた閾値を超える場合、例えば１時間に５回以上、一般的にユーザがすることのない指のポーズとなっていると判断した場合には、センサにエラーがあるものとして、その旨を表す情報をユーザに提示してもよい。
【００６２】
［フィルタリング］
また本実施の形態では、指動作センサ２１３が出力するユーザの指の付け根部分の形状変化に係る情報をそのまま用いるのではなく、所定のフィルタリング処理を施してから演算に用いてもよい。このフィルタリング処理としては例えば、直近の所定回数回分のセンサ出力の算術平均を用いる、移動平均処理等がある。
【００６３】
［ジェスチャ推定］
情報処理装置１は、さらに、上記の演算により得られたユーザの各指の曲げ具合の情報、あるいは姿勢の情報から、ユーザの手のポーズ（ジェスチャ）を推定してもよい。
【００６４】
また、この場合、情報処理装置１は、予め定められたジェスチャとなっているときには、演算により求められたものとは異なる手のポーズとなっている旨の情報を出力してもよい。例えば、人差し指と中指とを伸ばし、それ以外を曲げている場合（いわゆるＶサイン）、特定の国では不適切なジェスチャとして捉えられる場合がある。そこで情報処理装置１は、情報処理装置１が利用されている国や地域の設定情報、及び／又はユーザの年齢設定等の情報を参照して、不適切なジェスチャであると判断したときには、異なるジェスチャが取られていることとなるよう、指の曲げ伸ばしの度合いの情報や指の姿勢の情報を変更してもよい。
【００６５】
［実施形態の効果］
本実施の形態によると、指先の動きとしての指の曲げ伸ばしの情報を直接検出する代わりに、指の曲げ伸ばしに連動する指の付け根の形状変化の情報に基づいて指の曲げ伸ばしの度合いを推定する。ここで指の付け根の形状は、当該指の付け根に接触した状態で測定しやすく、また他の指の影となって検出できないといった状況が生じないので、ユーザの指先の動きを安定的に検出できる。
【符号の説明】
【００６６】
１  情報処理装置、１１  制御部、１２  記憶部、１３  インタフェース部、１４  出力部、２０  コントローラデバイス、２１  制御部、２２  記憶部、２３  操作インタフェース、２４  センサ部、２５  通信部、１１０  アプリケーション処理部、１２０  検出処理部、２１０  デバイス本体、２１１  把持部、２１２  操作部、２１３  指動作検出部、２２０  固定具。
【図１】
2019077652.tif 000003
【図２】
2019077652.tif 000004
【図３】
2019077652.tif 000005
【図４】
2019077652.tif 000006
【図５】
2019077652.tif 000007
【図６】
2019077652.tif 000008
【図７】
2019077652.tif 000009
【図８】
2019077652.tif 000010
【図９】
2019077652.tif 000011
【国際調査報告】
2019077652.tif 000012
2019077652.tif 000013
2019077652.tif 000014
2019077652.tif 000015