説明

動き検出装置、動き検出システム及びプログラム

【課題】 本発明は、実際の人の動きと同じ感覚でロボットやゲームのキャラクター等を操作することができる技術を提供することを目的とする。
【解決手段】 本発明の動き検出装置は、被験者の動きに伴う複数の筋肉の筋電信号を検出する検出部と、被験者の位置又は被験者の動きに伴う加速度の少なくとも1つを計測する計測部と、複数の筋肉の筋電信号と位置又は加速度の少なくとも1つとからなる被験者の動きのデータを出力する出力部とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、人の動きを検出する動き検出装置、動き検出システム及びプログラムに関する。
【背景技術】
【0002】
従来、ロボットやゲームにおけるキャラクターの3次元的な動きは、多数の操作釦が設けられたコントローラを用いて、それらの釦の操作によって行われていた。
【0003】
特許文献1は、従来の操作釦とともに加速度センサを設けることにより、加速度センサからの出力を利用してゲームにおけるキャラクターを動かしたりやゴルフ等のスポーツを行うコントローラを開示している。
【0004】
特許文献2は、人の筋肉の動きと関節の状態との関係を、筋肉の表面筋電信号(以下、筋電信号)から求まる筋肉の張力と関節の状態とで関係付けてモデル化し、ロボットやゲームにおけるキャラクターを操作する技術を開示している。
【特許文献1】特開2007−241655号公報
【特許文献2】特開2007−136041号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1のコントローラは、釦操作及び人の動きに伴う加速度に基づいて操作するので、ゲームのキャラクターの動きが実際の人の動きと見かけ上同じであったとしても、例えば、ゴルフにおいてクラブやパターを握る力加減で変化するボールの軌道等を、実際の人の動作感覚で再現することはできなかった。
【0006】
一方、特許文献2は、人の筋肉の動きと関節の状態との関係をモデル化するためには、予め筋肉の筋電信号から求まる張力と関節の状態との関係を示すデータが必要であり、そのデータを取得する「学習」を行わなければならなかった。また、関節の状態を表すパラメータ(自由度)が多いために、適切なモデルを作成することも困難であった。
【0007】
上記従来技術が有する問題に鑑み、本発明の目的は、実際の人の動きと同じ感覚でロボットやゲームのキャラクター等を操作することができる技術を提供することにある。
【課題を解決するための手段】
【0008】
この発明の動き検出装置は、被験者の動きに伴う複数の筋肉の筋電信号を検出する検出部と、被験者の位置又は被験者の動きに伴う加速度の少なくとも1つを計測する計測部と、複数の筋肉の筋電信号と位置又は加速度の少なくとも1つとからなる被験者の動きのデータを出力する出力部とを備える。
【0009】
この発明において、検出部は、被験者に装着され、計測部は、被験者に装着又は握持される。
【0010】
この発明において、被験者の心拍数を計測する生体計測部をさらに備える。
【0011】
この発明において、生体計測部は、被験者に装着される。
【0012】
この発明において、計測部は、ジャイロ又は加速度センサである。
【0013】
この発明の動き検出システムは、上記いずれかの動き検出装置と、動き検出装置の出力部からの出力を受け取る入力部を設け、動き検出装置からの被験者の動きのデータに基づいて被験者の動きに関する物理量を算出する演算装置とを備える。
【0014】
この発明のプログラムは、上記動き検出システムの演算装置をコンピュータで実現する。
【発明の効果】
【0015】
本発明によれば、実際の人の動きと同じ感覚でロボットやゲームのキャラクター等を操作することができる。
【発明を実施するための最良の形態】
【0016】
≪一の実施形態の説明≫
図1は、本発明の一の実施形態に係る動き検出システムの全体構成を示す概念図である。本実施形態に係る動き検出システムは、演算装置10、ユーザによって握持されるコントローラ20及びユーザの腕30に装着される筋電信号検出部25を有する。なお、コントローラ20から演算装置10へのデータ転送は、互いに赤外線や電波等の電磁波15による無線で行われる。
【0017】
演算装置10は、動き検出プログラムがインストールされたコンピュータであり、制御部1、メモリ2、記憶装置3及び入出力インタフェース(入出力I/F)4から構成される。制御部1、メモリ2、記憶装置3及び入出力I/F4は、バス5を介して情報伝達可能に接続されている。さらに、入出力I/F4には、加速度センサ22、GND端子23及び筋電信号検出部25からのデータを、無線で受信して受け取る受信装置6、演算処理の途中経過や処理結果を表示する出力装置7及びユーザからの入力を受け付ける入力装置8が接続される。本加速度センサ22は、前後・左右・上下の3次元の加速度をすることが可能である。
【0018】
制御部1は、受信装置6及び入出力I/F4を経由して、加速度センサ22、GND端子23及び筋電信号検出部25からのデータを受け取り、ユーザの動きに関するデータを算出して記憶装置3に保存したり、又はそのデータに基づいてゲームのキャラクター等を動かして出力装置7に表示する。なお、制御部1は、一般的な中央演算装置を用いることができる。一方、出力装置7としてはモニタ等を、入力装置8としてはキーボードやマウス等をそれぞれ適宜選択して使用できる。
【0019】
メモリ2は、制御部1における制御処理の途中経過や、加速度センサ22、GND端子23及び筋電信号検出部25からのデータを一時的に記憶するために用いられる。メモリ2には、不揮発性メモリ等の半導体メモリを適宜選択して用いることができる。
【0020】
記憶装置3は、動き検出プログラムやユーザの動きに関するデータ等を記憶する。記憶装置3に保持されるプログラムやデータは、バス5を介して、制御部1から適宜参照することができる。記憶装置3には、一般的なハードディスク装置、光磁気ディスク装置または脱着可能なメモリカード等の記憶装置を選択して用いることができる。
【0021】
コントローラ20は、ユーザに握持されてユーザの動きを検出し、その検出したデータを演算装置10に無線で送信する。コントローラ20は、出力部21、加速度センサ22及びGND端子23を有する。なお、本実施形態では、コントローラ20は、後述する筋電信号検出部25によるユーザの腕30の伸筋及び屈筋の筋電信号を受け取り(その筋電信号を受け取る入力部は不図示)、加速度センサ22及びGND端子23のデータとともに、出力部21から無線で演算装置10に出力する。
【0022】
加速度センサ22は、ユーザの動きに伴う加速度を計測する。加速度センサ22には、少なくとも2軸方向の加速度を計測できる一般的な加速度センサを用いることができる。
【0023】
GND端子23は、筋電信号検出部25が検出する筋電信号の基準電位を与える。GND端子23は、ユーザがコントローラ20を握持した時に触れるように設置されることで、コントローラ20とユーザとを同電位にして筋電信号の基準電位を与える。GND端子23の設置は、コントローラ20の表面からアルミ等の金属端子が突出するように設置したり、コントローラ20の表面の一部をアルミ等の金属で覆うことで実現される。
【0024】
筋電信号検出部25は、ユーザの腕30に装着され、腕30の筋肉の筋電信号を検出する。筋電信号検出部25は、本実施形態において、ゴムや布等のバンドに、ユーザの肌に直接接地する2つの電極26a及び26bを有する。筋電信号検出部25は、電極26a及び26bが腕30の総指伸筋等の伸筋及び長掌筋等の屈筋の位置にそれぞれ来るように装着される。
【0025】
次に、本実施形態に係る動き検出システムについて、図2のフローチャートを参照しながら説明する。なお、本実施形態では、動き検出プログラムとして、ユーザがパッティングを行うゴルフゲームの場合を考える。
【0026】
ユーザが、入力装置8を使って動き検出プログラムのコマンドを入力、または動き検出プログラムのアイコンをダブルクリックすることにより処理の開始命令を出す。制御部1は、その命令を入出力I/F4を通じて受け付け、記憶装置3に記憶されている動き検出プログラムを実行する。その結果、図2のステップS101からステップS105の処理が行われる。
【0027】
ステップS101:制御部1が、加速度センサ22の初期化を行う。即ち、加速度センサ22は、自身の個体差やコントローラ20への取り付け状態等により、計測される加速度の大きさや向きが実際のものと異なる値や方向を出力する。そこで、制御部1は、コントローラ20が水平な状態に設置して重力方向を計測する等を行い、加速度センサ22の出力を校正する補正値を求める。制御部1は、その補正値をメモリ2又は記憶装置3に記憶する。
【0028】
ステップS102:制御部1が、筋電信号検出部25の初期化を行う。即ち、制御部1は、予め筋電信号検出部25に腕30の伸筋及び屈筋の筋電信号をそれぞれ検出させて、伸筋及び屈筋の張力の規格化のための基準値を求める。理由は、筋電信号又は筋電信号から求まる腕30の筋肉の張力の大きさは、ユーザ毎に異なるだけでなく、同じユーザであっても電極26a及び26bの取り付け位置によって変化してしまうからである。そこで、腕30の筋肉の張力を規格化することによって、ユーザ毎による違いや電極26a及び26bの取り付け位置による影響を除去することを目的とする。
【0029】
具体的には、制御部1は、例えば、出力装置7を介して、ユーザにパッティング等を行わせる指示を出す。制御部1は、筋電信号検出部25によって検出されるユーザのパッティング時の伸筋及び屈筋の筋電信号を、GND端子23による基準電位とともに受信装置6を介して受信し、メモリ2に記憶する。制御部1は、受信した伸筋及び屈筋の筋電信号それぞれについて基準電位との差分を取り、次式(1)で表される2次のローパスフィルタh(t)を用いて低周波成分のみを抽出する。抽出された成分が、伸筋又は屈筋の張力である。
h(t)=6.44×(exp(-10.80t)−exp(-16.52t)) (1)
なお、本実施形態では、式(1)の2次のローパスフィルタを用いたが他のローパスフィルタを適宜選択して用いることができる。制御部1は、伸筋及び屈筋の張力の各々において、最大の値をそれぞれの規格化の基準値としてメモリ2に記憶する。制御部1は、筋電信号検出部25からの筋電信号から求まるユーザの腕30の伸筋及び屈筋の張力を、これらの基準値でそれぞれ割って規格化する。
【0030】
ここで、図3は、(a)ユーザが実際にパッティングした時のパターの角度と(b)ユーザの腕30の筋肉の剛性Stf(スティフネス)の時間変化をそれぞれ示したものである。ここで、筋肉の剛性Stfは、次式(2)のように、規格化された伸筋の張力Eaと規格化された屈筋の張力Ebとの和から求められる。なお、図3は、パターによってボールが打たれた時間(破線の位置で角度が0度)を0として基準にしている。
Stf=Ea+Eb (2)
ステップS103:制御部1が、ユーザにパターの素振りを行わせ、ゴルフゲームのキャラクターにパッティングを行わせるために必要となる物理量を求める。制御部1は、ユーザによるパターの素振りの動作の間、加速度センサ22による加速度、GND端子23による基準電位及び筋電信号検出部25による伸筋及び屈筋の筋電信号のデータを、受信装置6を介して受け取りメモリ2に記憶する。制御部1は、式(2)を用いて、ステップS102と同様の手順により腕30の筋肉の剛性Stfの値を算出する。制御部1は、加速度及び腕30の筋肉の剛性Stfの値の各々のデータを次式(3)、式(4)及び式(5)にそれぞれ代入して、ゴルフゲームにおけるパターのヘッドの速度V、パターのヘッドの位置の変位量(移動距離)L及びボールに与えるパワー(エネルギー)Pの値を算出する。
V=∫A(t)dt (3)
L=∬A(t)dt2 (4)
P=C×Stf (5)
なお、A(t)は加速度センサ22で計測された加速度であり、Cは定数で反発係数に相当するものである。なお、加速度A(t)等の物理量の単位は、MKS単位系等の任意のものを用いることができる。
【0031】
ステップS104:制御部1が、ステップS103で求めた速度V、位置の変位量L及びパワーPの値を運動方程式に代入して、パター及びボールの運動を算出する。制御部1は、その計算結果に基づいてキャラクターにパッティングさせ、それを出力装置7に表示する。
【0032】
図4は、実際に行ったゴルフゲームのパッティングにおいて、複数のユーザによるパターの素振りによって検出された、腕30の筋肉の剛性Stfの時間変化を示す。図4のStfの変化の様子は、図3(b)の実際のユーザによるパッティングと明らかに同じ時間変化を示している。なお、図4において、パターよってボールが打たれた後、いくつかの腕30の筋肉の剛性Stfの値が変化せず一定になっているものは、筋電信号検出部25による筋電信号の検出測定を途中で止めたことによる。
【0033】
ステップS105:制御部1が、キャラクターがボールをカップに入れたか否かの判定をする。ボールがカップに入った場合(YES側)には、制御部1は一連の作業を終了する。入らない場合(NO側)には、ステップS103からステップS104の作業を、ボールがカップに入るまで行う。
【0034】
このように、本実施形態は、加速度センサ22によって計測される加速度と筋電信号検出部25によって検出される筋電信号とを用いることにより、実際の動作と同じ感覚でロボットやゲームのキャラクター等を操作することができる。
≪実施形態の補足事項≫
本実施形態では、動き検出プログラムとして、ゴルフゲームの場合について説明したが、本発明はこれに限定されない。例えば、テニス、バスケット又は野球等のスポーツのゲームやロボットの操作等に対しても応用することできる。
【0035】
なお、本実施形態では、コントローラ20はユーザに握持され、筋電信号検出部25はユーザの腕30に装着されるとしたが、本発明はこれに限定されない。例えば、コントローラ20及び筋電信号検出部25を足に装着して用いることも可能であり、サッカー等のゲームに対しても適用できる。この時、コントローラ20は、ゴムや布等のバンドを用い装着するのが好ましく、筋電信号検出部25の電極26a及び26bが足の伸筋及び屈筋の位置に来るように装着されるのが好ましい。
【0036】
なお、本実施形態では、加速度センサ22を用いて計測された加速度A(t)を式(3)及び式(4)に適用して、速度V及び位置の変位量Lを求めたが、本発明はこれに限定されない。加速度センサ22の代わりにジャイロを用いることもできる。この場合、ジャイロによって計測されるのは速度の変位量Vであり、位置L及び加速度A(t)は、速度の変位量Vを時間についての1階積分及び1階微分をそれぞれ行うことで得られる。
【0037】
なお、本実施形態では、加速度センサ22及び筋電信号検出部25で検出された加速度A(t)や腕30の筋肉の剛性Stfから、速度V、位置の変位量L及びパワーPの物理量を求めたが、本発明はこれに限定されない。例えば、規格化された伸筋の張力Eaと屈筋の張力Ebとの差分を計算すると、腕30の筋肉のトルクTrq(=Ea−Eb)が求められる。この腕30の筋肉のトルクTrqを用いれば、ユーザの運動による消費エネルギーを求めることができる。図5は、その応用例として、図1の動き検出システムにユーザの心拍数等の生体情報を計測する生体計測部27をさらに備える動き検出システムを示す。図5の動き検出システムによって、腕30の筋肉のトルクTrqと生体情報とを併せて用いれば、より正確にユーザの各々の状態に即した消費エネルギーを求めることが可能となる。
【0038】
なお、本実施形態では、加速度センサ22、GND端子23及び筋電信号検出部25のデータを、電磁波15による無線で演算装置10に送信したが、本発明はこれに限定されず、ケーブルによる有線で送信しても良い。この場合には、受信装置6は不要となり、コントローラ20からのケーブルは、入出力I/F4を介して直接演算装置10に接続される。また、本発明はこれに限定されず、コントローラ20の内部でGND端子23による基準電位との差分や式(1)で表される信号処理等の必要な演算を行うことで通信料を減らすことができる。
【0039】
なお、本実施形態では、制御部1は、ステップS101において加速度センサ22の初期化を動き検出プログラムを起動する毎に行うとしたが、本発明はこれに限定されない。例えば、最初の1回のみ、加速度センサ22の初期化を行い、求めた補正値を記憶装置3に記憶し、2回目以降その値を動き検出プログラムが起動される毎に読み込むようにすれば、ステップS101の作業を省略することができる。
【0040】
なお、本実施形態では、筋電信号検出部25は、2つの電極26aと26bとを有するとしたが、本発明はこれに限定されず、2以上の複数の電極を有しても良い。例えば、筋電信号検出部25には、ゴムや布等のバンドに2以上の複数の電極を設け、ユーザの腕30に装着しても良い。この場合、制御部1は、ステップS102の筋電信号検出部25の初期化において、予め筋電信号検出部25の全ての電極からの筋電信号を受信して、電極のうち伸筋及び屈筋それぞれの筋電信号を最も状態良く検出する一対の電極を選択するようにするのが好ましい。これにより、電極の各々が伸筋及び屈筋の位置に正確に装着されているか否かを心配する必要が無くなる。
【0041】
なお、本実施形態では、ステップS102で求めた筋電信号の規格化基準値として、筋電信号検出部25が検出した伸筋及び屈筋の筋電信号それぞれにおいて、最大となる値を用いたが、本実施形態ではこれに限定されず、任意の他の値を規格化基準値として用いることができる。
【0042】
なお、本実施形態では、GND端子23をコントローラ20に設置したが、本発明はこれに限定されない。例えば、筋電信号検出部25に電極26a及び26bとともに、GND端子23を設置しても良い。
【0043】
なお、本実施形態では、筋電信号検出部25による筋電信号は、一度コントローラ20入力されてから演算装置10へ送られるとしたが、本発明はこれに限定されない。例えば、筋電信号検出部25に、出力部21のような出力部を設置することによって、直接筋電信号を演算装置10へ送信しても良い。ただし、この場合、GND端子23は、筋電信号検出部25に設置されていることが好ましい。
【0044】
なお、本発明は、その精神又はその主要な特徴から逸脱することなく他の様々な形で実施することができる。そのため、上述した実施形態はあらゆる点で単なる例示に過ぎず、限定的に解釈してはならない。さらに、特許請求の範囲の均等範囲に属する変形や変更は、全て本発明の範囲内である。
【図面の簡単な説明】
【0045】
【図1】本発明の一の実施形態に係る動き検出システムの全体構成を示す概念図
【図2】本発明の一の実施形態に係る動き検出システムの作業手順を示すフローチャート
【図3】ユーザによる実際のパッティング時の(a)パターの角度と(b)腕30の筋肉の剛性Stfの時間変化を示す図
【図4】ゴルフゲームにおけるユーザによるパッティング時の腕30の筋肉の剛性Stfの時間変化を示す図
【図5】図1の動き検出システムに生体計測部27を加えた動き検出システムの全体構成を示す概念図
【符号の説明】
【0046】
1 制御部、2 メモリ、3 記憶装置、4 入出力I/F、5 バス、6 受信装置、7 出力装置、8 入力装置、10 演算装置、15 電磁波、20 コントローラ、21 出力部、22 加速度センサ、23 GND端子、25 筋電信号検出部、26a、26a 電極、27 生体計測部、30 腕


【特許請求の範囲】
【請求項1】
被験者の動きに伴う複数の筋肉の筋電信号を検出する検出部と、
前記被験者の位置又は前記被験者の動きに伴う加速度の少なくとも1つを計測する計測部と、
前記複数の筋肉の筋電信号と前記位置又は前記加速度の少なくとも1つとからなる前記被験者の動きのデータを出力する出力部と、
を備えることを特徴とする動き検出装置。
【請求項2】
請求項1に記載の動き検出装置において、
前記検出部は、前記被験者に装着され、
前記計測部は、前記被験者に装着又は握持される
ことを特徴とする動き検出装置。
【請求項3】
請求項1又は請求項2に記載の動き検出装置において、
前記被験者の心拍数を計測する生体計測部をさらに備えることを特徴とする動き検出装置。
【請求項4】
請求項3に記載の動き検出装置において、
前記生体計測部は、前記被験者に装着される
ことを特徴とする動き検出装置。
【請求項5】
請求項1ないし請求項4のいずれか1項に記載の動き検出装置において、
前記計測部は、ジャイロ又は加速度センサであることを特徴とする動き検出装置。
【請求項6】
請求項1ないし請求項5のいずれか1項に記載の動き検出装置と、
前記動き検出装置の前記出力部からの出力を受け取る入力部を設け、前記動き検出装置からの前記被験者の動きのデータに基づいて前記被験者の動きに関する物理量を算出する演算装置と、
を備えることを特徴とする動き検出システム。
【請求項7】
請求項6に記載の動き検出システムの前記演算装置をコンピュータで実現することを特徴する動き検出プログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2009−226127(P2009−226127A)
【公開日】平成21年10月8日(2009.10.8)
【国際特許分類】
【出願番号】特願2008−78061(P2008−78061)
【出願日】平成20年3月25日(2008.3.25)
【出願人】(304021417)国立大学法人東京工業大学 (1,821)
【Fターム(参考)】