【実施例】
【0047】
図1に、反復動作の周期の近似値T
rを、当該動作を表す信号S1、S2に基づいて、現在の動作が終了する前に推定する第1の推定モジュールEST1を含む、反復動作のパラメータをリアルタイムに決定するシステムの例を示す。決定モジュールDETは、安全性のマージンを与えるべく例えば高速近似値Trに1+Δに等しい係数または利得を乗算することにより、第1の推定モジュールEST1により推定された前記周期Trに基づいてスライディングウィンドウのサイズFを決定する。Δは例えば、0〜0.5の間にあってもよい。動作を表す信号S1、S2および第1の推定モジュールEST1から送られたスライディングウィンドウのサイズFに基づいて、スライディングウィンドウにより、動作パラメータを正確に推定する第2のモジュール。
【0048】
図2に、反復動作においてリアルタイムに決定された動作パラメータが当該動作の周期であって、第2の推定モジュールEST2により出力T
pとして配信される場合を例示する。
【0049】
この場合、本発明により、通常は進行中の動作が終了する前に、動作T
rの周期の高速推定を通じて、正確な推定のために第2のモジュールに決定モジュールDETにより最適化されたスライディングウィンドウのサイズFを与えることが可能になるため、第2の推定モジュールEST2が、最早可能時点で、前記周期の正確な推定Tpを実行することができる。この正確な推定ははるかに高速である。
【0050】
周期を計算する場合、第2の推定モジュールEST2は、第1の推定モジュールEST1の入力信号を含んでいるかまたは含んでいない単一の信号または複数の信号に基づいてスライディングウィンドウによる相関を実行する。
【0051】
図3に本発明の一態様による実施形態を「カスケード状態」で示すが、これは
図2のシステムを用いて、別の動作パラメータを正確に推定するスライディングウィンドウのサイズを推定する第1の高速推定モジュールEST’1として機能することにより、周期の高速推定値Tr’として、既に正確に計算されている正確な周期Tpを直接採用することが即座に可能になる。
【0052】
周期の高速推定モジュールEST1は、例えば、文献"Frequency tracking in nonstationary signals using Joint Order Statistics",Proceedings of the International Symposium on Time−Frequency and Time−Scale AnalysA.is 96p,441−444,Marakov,"Un nouvel outil d‘analyse temps−frequence base sur un moyennage a recalage de phase"[A new time−frequency analysis tool based on averaging with phase registration],Gretsi 2009,by M.Jabloun、または"Adaptive spectogram vs. Adaptive pseudo Wigner−Ville distribution for instantaneous frequency estimation",Signal Processing 2003,by S.Chandra Sekharに記述された高速推定を実装することができる。
【0053】
信号S1、S2、またはS3は同一であっても、異なっていてもよく、あるいは、一方が他方を含んでいてもよい。これらは、反復動作を表す信号を送信するセンサーから発せられる。例えば、センサーアセンブリは、少なくとも1個の磁力計、および/または少なくとも1個の加速度計、および/またはジャイロメータ、および/または圧力センサー、および/または心電計、および/または呼吸の量を測定する流量計、および/または呼吸の頻度を測定するセンサーを含んでいてもよい。
【0054】
図4に、本発明が、反復的な歩行動作に関してビデオゲーム分野に適用された例を示す。センサーアセンブリは、各々の脚について、3軸加速度計および3軸磁力計(X、YおよびZ)を含んでいる。各々のモダリティは、本例では合計12個の信号である3次元信号である。これらの信号は一定の間隔でサンプリングされ、受信された各信号はデータに同期可能なように履歴を残す。
【0055】
本構成は、例えば足の側面で、動作に応じてセンサーの主軸の1本の向きを調整すべくセンサーの特定の位置合わせに応答するが、センサーを全く同一のフレームに位置合わせするために、フレーム(U、V、W)の変更を行う処理を適用することも考えられる。フレームのこの変更によっても、
図5に示すように、動作の主方向または主平面を確認可能になる。
【0056】
換言すれば、第1の正規直交フレーム(X、Y、Z)内で信号のフレームの変更は、減少する固有値λ
u、λ
vおよびλ
wへの分解を用いて第1の正規直交フレーム(X、Y、Z)を、自身の軸Uまたは2軸UおよびVが各々前記動作の主軸または主面に対応する第2の正規直交フレーム(U、V、W)で表すことにより実行される。
【0057】
当該信号は実行された動作に関して最大限の情報を含まなければならず、信号が抽出されるセンサーの軸を動作に関して最適な向きに合わせることが必要である。
【0058】
センサーは、例えばセンサーのX軸が最も多くの情報を含む信号の成分を最適な信号/雑音比率を以て測定するように最適な位置に合わされているか、またはフレームの変更が実行されるかのいずれかである。
【0059】
基底(X、Y、Z)から(U、V、W)へのこのフレームの変更を実行するために、固有値分解を用いる。その原理は、係数λ
u、λ
vおよびλ
wをλ
u>λ
v>λ
wとなるように決定することである。センサーの基底は従って、正規直交フレームを形成する各種の軸(U,V,W)の組合せとして記述することができる。分解の特性の一つにより、U軸が動作の主軸であるように新規フレームを定義することが可能になる。
【0060】
例えば、所与の足について、例えば加速度計Aから得られる3個のセンサー信号[Ax,Ay,Az]をウィンドウ上で考慮する必要がある。
【0061】
その後で相関行列Cを計算しなければならない。
【数1】
c(A,B)はAおよびBは相互相関関数である。
【0062】
主成分分析またはPCAの原理によれば、係数λ
u、λ
vおよびλ
wは以下の関係により定義される。
【数2】
D=P
−1CPである。
Pは新規フレームを定義するスイッチング行列、すなわち信号を新規フレーム内で適合させるべく修正可能にする行列である。固有値への分解により、行列Lだけでなくスイッチング行列Pの決定が可能になる。
【0063】
従って、処理操作を適用するために、加速度計A
xではなくA
uの信号を考慮することが可能である。
【0064】
そのような例について、本システムは歩行/走行をシミュレートすべく、プレーヤーの足が地面から離れたとき、または足指の先端が地面に付いているとき、当該プレーヤーが歩行/走行動作を実行していると見なす。以下の非限定的な記述において、この例に対して本発明を適用するものとする。
【0065】
周期により、プレーヤーの歩行の頻度または速度を定義すること、すなわち、プレーヤーがゆっくりまたは足早に歩いているか、または走っているかを決定することが可能になる。歩行の持続期間は、2個の信号S1およびS2に対する相互相関関数により推定することができる。この発想は、2個の信号の相関を最大にする当該2個の信号間の時間シフトを推定することであり、このシフトτ
optは後で、プレーヤーの歩行の周期Tに関係付けられる。より複雑な各種の構成も想定できる。
【0066】
S1=S2=AgxまたはAdxまたはAguまたはAdu、すなわち任意に選ばれた足の成分の自己相関、および可能ならば主動作軸に沿って向けられている。この場合τ
opt=Tである。
【0067】
S1=Agx且つS2=Adx、またはAguまたはAdu、すなわち両足の2個の類似成分間の相関。この場合、2本の軸が同一方向を向き、且つ同じ意味を有することに注意を要する。この場合、τ
opt=T/2である。
【0068】
先の場合、信号の固有値分解の技法による各足の動作主軸の推定を行うことにより軸の共線性を保証することができる。
【0069】
プレーヤーの歩行の周期の変動を追跡可能にすべく、相関の計算は、取得された最新のサンプルと共に信号を因果律的に考慮する信号のウィンドウに依存するが、換言すれば、関心対象の時点より前のサンプルだけを用いる時間ウィンドウを考慮に入れる。信号の周期を決定するには、当該信号の少なくとも1周期を求めることが必要である。
【0070】
2個の信号S1とS2間の相関
【数3】
について以下の式がある。
【数4】
但し、
tは現在の時点瞬間を表し、
τは考慮するシフトを表し、
Itはtに依存する間隔を表す。
【0071】
この関数は、次式により推定することができる。
【数5】
T
fは関心対象である時間ウィンドウのサイズを表し、従って遅延τの変動幅を[0;Tf[として定義する。
【0072】
得られた最新のサンプルを優先して、推定の質を向上させるために、当該計算の範囲内で持続期間T
f−τの重み付けウィンドウW
Tf−τを加算することができ、従って信号の各ウィンドウにウィンドウの時点およびサンプルの時点に比例する特定の重みを適用することが可能になる。相関関数は次いで、以下の関係により計算することができる。
【数6】
但し、αは重み付けウィンドウの時間的指標を表す。
【0073】
上記相関により、後者が最大のとき、信号の周期に対応する最適シフトを決定することが可能になる。
図6に、周期が変動する信号について相関関数をtおよびτの関数として表す。
【0074】
図7に、所与の時点t=35sにおける
図6を通る断面図である。これら2図は、足の成分上の自己相関を有するケースS1=S2=AgxまたはAdxに関するものである。その後、所与の時点で誤差があれば訂正すべく最大値を追跡することが必要である。
【0075】
このステップは従って、スライディングウィンドウの最適に適合されたサイズにより、二次的な値、すなわち周期の倍数を除去することにより最大相関値の探索を容易にする。
【0076】
歩行の持続期間に対応する周期の結果は従って、相関の最大値で決定される値Tである。
【数7】
【0077】
このスキームは従って、相関の計算のために考慮すべき最大シフトに対応する単一のパラメータτ
max(T
f)を必要とする。当該シフトは、このサイズの時間ウィンドウを考慮する必要があるため、最大可能遅延として解釈される。
【0078】
固定パラメータを使用する場合、遅延は一定であるが、速度が加速された場合、最早可能時点に応答することができない。従って、ウィンドウの最大サイズを最も遅い歩調、すなわち数秒、の関数として調整することが必要であろう。従って、狙いは、歩行速度に変化に対するシステムの迅速性を最適化するように解析ウィンドウのサイズを適合的に調整することである。
【0079】
換言すれば、
図7に示すように、相関Γの結果がいくつかのローブを示し、自己相関の場合、その各々の最大値がT、2T、3T、...、kTに位置する(両足の間の相関の場合、各々T/2、3T/2、5T/2、...、(2k+1)T/2)。完全静止信号の理想的な場合において、最大値が大域的最大値であるローブはT(各々T/2)に位置している。しかし、周期が非定常的である信号の場合、大域的最大値はT(各々T/2)ではなく、2Tまたは3T(各々3T/2、5T/2)に位置していることがある。
【0080】
この場合、周期の推定に与えられた結果は従って誤っており、推定された周期は真の値の2または3倍大きいであろう。故に、以下のように修正を行う。
【0081】
Tを大域的最大値の時点とする。
【0082】
最大値が時点T/2またはT/3またはT/4...における最大値に近いローブが存在する場合、時点TはT/2またはT/3またはT/4、すなわち最大可能約数(各々2T/5、2T/3、...)として修正される。
【0083】
時間的連続性を確認すべく第2の検査が可能である。その原理は、Tの値を最新のウィンドウ上で決定された値と比較することにより確認することである。値が変動し過ぎる場合、新規サンプルの取得を待つ。後続ウィンドウ上のTの値は、以前のウィンドウ上の値に近いか、または現在のウィンドウ上のTに近いかのいずれかである。後者の場合、速度の変化があってTの良好な値が見つかったが、一方、動作は変化しておらず、現在のウィンドウ上のTの推定は誤っていて、先行ウィンドウおよび後続ウィンドウ上のTの平均で代替することができる。
【0084】
本発明の一態様によれば、信号の周期の簡単且つ近似的な推定に基づいて、スライディングウィンドウのサイズを予め決定するステップが追加されている。
【0085】
この簡単且つ高速推定の場合、例えば上で引用したMakarovの推定を実装することが可能であり、因果律的に、すなわち過去からのサンプルだけを使用して、信号周期の値のスケールを決定することが可能になる。
【0086】
Marakov推定は、得られる最新のサンプルを考慮することにより、各時点で、非定常信号の周波数を決定可能にする。その原理は、傾向の統計に依存する。信号の各点について、傾向が変化しているか否か、すなわち前の時点で観察された最大値と最小値が保持されているか否かを推定する必要がある。当該傾向が変化している場合、その点は極値でなく、さもなければ極値である。従って、各時点で、以前の極値に対応する時点を確認して、サンプリング周波数が分かれば推定された周期または周波数に変換することができる。
【0087】
当該アルゴリズムは複雑さが緩和されており、従って信号の周期の事前決定に完全に適合されている。この推定に基づいて、パラメータを推定する処理操作が次いで実行されるスライディングウィンドウのサイズを最適な仕方で決定することが実際に可能である。計算を妨げるであろう過去の完了した動作を記述する信号を考慮するのではなく、進行中の動作に対応する信号の最新の周期だけを考慮することが実際により有用である。
【0088】
例えば、磁力計から生じる信号が、より少ないローブを含んでいるため、第1の推定モジュールEST1への入力として用いられる。このMarakov推定は単に、極値の存在を評価することにより信号の傾向の変化を考慮する。各点について、最も近い過去の極値からの距離を決定することが可能である。従って、新規の極値が出現したならば、以前の極値からの距離により周期を推定することが可能である。
【0089】
推定可能な第2のパラメータは振幅、すなわち一歩の長さである。同様に、第2の推定モジュールEST2の正確な相関の結果を用いるか、またはMakarovによる第1の推定モジュールEST1の第1の高速推定の結果に基づいて、歩行動作の信号を含むスライディングウィンドウのサイズを抽出することが必要である。
【0090】
当該振幅は、磁力計から生じた信号を用いて決定され、信号の和の最大値と最小値の差の絶対値に対応している。
【数8】
Sは右足または左足の磁力計信号の和である。
フレームの変更の場合、S(t)=M
x(t)+M
y(t)+M
z(t)またはS(t)=M
u(t)+M
v(t)+M
w(t)である。
【0091】
第3のパラメータは衝撃、すなわち踵と地面の間の衝突力であろう。この値は、センサーの加速に直接関連付けられており、従ってこれらの値に比例する。
【0092】
これらの結果は歩行動作中の加速度の最大値に対応すると考えられる。従って振幅の場合と同様に、第2の推定モジュールEST2の正確な相関の結果を用いるか、またはMakarovによる第1の推定モジュールEST1の第1の高速推定の結果に基づいて、歩行動作に対応する信号のウィンドウを抽出することが必要である。
【0093】
この計算は、加速度信号のノルムであるため、簡単に実行される。
【数9】
【0094】
当該動作の別の特徴は方位であろう。従って、最も自然に磁石の北に対するプレーヤーの方位を考慮することにより、磁力計の信号を用いる。
【0095】
相関計算には重み付けウィンドウが関与する。重み付けの方式は選択可能である。しかし、ウィンドウが直近のサンプルを最重要視するため、方式は性能にほとんど影響を与えない。
【0096】
最後に、センサーの位置に応じて、相関計算に2個の信号(例えばX軸に沿った左の足および右足)だけを用いるようにセンサーの方位の主軸を示すことが有用であろう。
【0097】
また、動作の主軸を決定すべくフレームの変更を適用し、その結果考慮する主軸を自動的に決定することも可能であるが、この計算では複雑さが増す恐れがある。ここでも、実験により、センサーが足の側面に装着されている場合、同じX軸を用いることで良好な堅牢性を維持しながら良好な結果を得ることが可能になることが明らかになっている。
【0098】
歩行頻度を予め決定する利点を示すため、
図8に適合的または非適合的ウィンドウを用いて、歩行の周期または持続期間の結果を示す。
【0099】
図8に示す信号は上から下へ、以下を表す。
−足に装着された加速度計により送信されたX軸に沿った加速度の信号。
−可変ウィンドウサイズの、時間tおよびシフトτの関数としての相関関数。画像の最上部の黒いゾーンは、適合的に調整されたウィンドウのサイズに関連付けられている。本例では0.5秒〜1.7秒の間で変動する。
−本発明に従い、真の値との比較により適合的に推定された周期。
−固定ウィンドウサイズの時間tおよびシフトτの関数としての相関関数。
−真の値との比較により、固定ウィンドウで推定された2秒の周期。
【0100】
従って、速い歩調から遅い歩調への遷移が生じる時点A、B、およびCにおいて、第2のグラフで表す適合的アプローチは、第3のグラフで表す固定サイズのウィンドウの場合より迅速に応答する。時点Dは、遅い歩調から速い歩調への遷移に対応し、この場合その差は信号自体に起因してより微小であるにも拘わらず、応答性は向上している。時点Eは、二つの歩行速度の間をより穏やかに遷移する間は、適合的アプローチの方がより漸進的であることを示すため、興味深い。
【0101】
本発明は、リアルタイム性の向上、並びに、ビデオゲームの場合において各種のプレー方法に関してシステムの堅牢性を向上させるのに有用である。