(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-11-01
(45)【発行日】2022-11-10
(54)【発明の名称】判定プログラム、判定装置、アルゴリズム生成装置、および判定システム
(51)【国際特許分類】
A63B 69/00 20060101AFI20221102BHJP
A63B 71/06 20060101ALI20221102BHJP
【FI】
A63B69/00 Z
A63B71/06 M
(21)【出願番号】P 2018061628
(22)【出願日】2018-03-28
【審査請求日】2021-03-16
(73)【特許権者】
【識別番号】000005935
【氏名又は名称】美津濃株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】板花 俊希
(72)【発明者】
【氏名】岡本 英也
(72)【発明者】
【氏名】川端 洋明
(72)【発明者】
【氏名】植田 真弘
(72)【発明者】
【氏名】吉田 満美
【審査官】石原 豊
(56)【参考文献】
【文献】特開2015-085030(JP,A)
【文献】特開2014-180483(JP,A)
【文献】特開2013-143996(JP,A)
【文献】米国特許第08573982(US,B1)
【文献】米国特許第09558399(US,B1)
【文献】米国特許出願公開第2018/0056123(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
A63B 69/00-71/06
(57)【特許請求の範囲】
【請求項1】
コンピュータによって実行される判定プログラムであって、
前記コンピュータに、
被験者の腕に装着されたセンサからの検出出力を取得するステップと、
前記検出出力を用いて前記被験者の走行における腕振りパターンを判定するステップと、
判定された前記腕振りパターンを出力するステップとを実行させ、
前記腕振りパターンを判定するステップは、
前記被験者の腕振りパターンが前腕が外に開くパターンであるか否か、
前記被験者の腕振りパターンが常に肘を曲げ、大きな振幅で前後に腕を振っている普通のパターンであるか否か、および、
前記被験者の腕振りパターンが、後ろで肘が伸びるパターンであるか、または、常に肘が伸びるパターンであるか、
のうち少なくともいずれかを判定することを含み、
前記被験者の腕振りパターンが前腕が外に開くパターンであるか否かを、被験者の手首の幅方向に沿う軸周りの角速度または被験者の手首を貫く方向に沿う軸方向の加速度を用いて判定し、
前記被験者の腕振りパターンが
前記普通のパターンであるか否かを、被験者の腕の長手方向の加速度を用いて判定し、
前記被験者の腕振りパターンが後ろで肘が伸びるパターンであるかまたは常に肘が伸びるパターンであるかを、被験者の腕の長手方向に交わりかつ被験者の手の平を貫く方向に沿う軸周りの角速度または被験者の手首の幅方向に沿う軸方向の加速度を用いて判定する
、判定プログラム。
【請求項2】
コンピュータによって実行される判定プログラムであって、
前記コンピュータに、
被験者の腕に装着されたセンサからの検出出力を取得するステップと、
前記検出出力を用いて前記被験者の走行における腕振りパターンを判定するステップと、
判定された前記腕振りパターンを出力するステップとを実行させ、
前記腕振りパターンを判定するステップは、
前記被験者の腕振りパターンが前腕が外に開くパターンであるか否か、
前記被験者の腕振りパターンが常に肘を曲げ、大きな振幅で前後に腕を振っている普通のパターンであるか否か、および、
前記被験者の腕振りパターンが、後ろで肘が伸びるパターンであるか、または、常に肘が伸びるパターンであるか、
のうち少なくともいずれかを判定することを含み、
前記判定プログラムは、前記コンピュータに、
所与の腕振りパターンに関連付けられた、前記センサからの複数種類の検出出力に基づいて、前記複数種類の検出出力の中から前記所与の腕振りパターンに寄与する検出出力の種類を特定するとともに、特定された前記種類の検出出力に対する前記所与の腕振りパターンについての閾値を生成するステップと、
前記生成された閾値を記憶装置に格納するステップと、を実行させ、
前記検出出力を用いて前記被験者の腕振りパターンを判定するステップは、特定された前記種類の検出出力について、前記記憶装置に格納された前記閾値を用いて、前記被験者の腕振りパターンが前記所与の腕振りパターンに該当するか否かを判断することを含む
、判定プログラム。
【請求項3】
前記センサからの検出出力は、被験者の腕の挙動を表わす複数種類の検出出力を含み、
前記被験者の腕振りパターンを判定するステップでは、前記複数種類の検出出力のうち前記腕振りパターンに関連付けられた種類の検出出力が用いられる、請求項1
または請求項2に記載の判定プログラム。
【請求項4】
請求項1~
3のいずれか1項に記載の判定プログラムを格納したメモリーと、前記コンピュータと、前記センサとを備える、判定装置。
【請求項5】
被験者の走行中の腕振りパターン判定用のアルゴリズム生成装置であって、
前記腕振りパターン判定は、コンピュータによって実行されるステップであって、
被験者の腕に装着されたセンサからの検出出力を取得するステップと、
前記検出出力を用いて前記被験者の走行における腕振りパターンを判定するステップと、
判定された前記腕振りパターンを出力するステップと、を含み、
前記腕振りパターンを判定するステップは、前記被験者の走行における腕振りパターンが、
前記被験者の腕振りパターンが前腕が外に開く第1のパターンであるか否か、
前記被験者の腕振りパターンが
、常に肘を曲げ、大きな振幅で前後に腕を振っている、第2のパターンであるか否か、および、
前記被験者の腕振りパターンが、後ろで肘が伸びる第3のパターンであるか、または、常に肘が伸びる第4のパターンであるか、のうち少なくともいずれかを判定することを含み、
前記第1ないし第4のパターンに関連付けられた、センサからの複数種類の検出出力に基づいて、前記複数種類の検出出力の中から前記第1ないし第4のパターンのそれぞれに寄与する種類の検出出力を特定するとともに、特定された前記種類の検出出力に対する前記第1ないし第4のパターンのそれぞれについての閾値を生成する、アルゴリズム生成装置。
【請求項6】
前記第1ないし第4のパターンに関連付けられた検出出力に基づいて、前記第1ないし第4のパターンのそれぞれに寄与する検出出力に対する前記閾値を更新する、請求項
5に記載のアルゴリズム生成装置。
【請求項7】
通信端末に、前記閾値を、前記第1ないし第4のパターンのそれぞれに関連付けて送信する通信インターフェースをさらに備える、請求項
5または請求項
6に記載のアルゴリズム生成装置。
【請求項8】
請求項
5~請求項
7のいずれか1項に記載のアルゴリズム生成装置と通信端末とを備えた判定システムであって、
前記通信端末は、
被験者の腕に装着されたセンサからの検出出力を用いて、特定された前記種類の検出出力について、生成された前記閾値を用いて、前記被験者の腕振りパターンが前記第1ないし第4のパターンの少なくともいずれかに該当するか否かを判断するプロセッサを含む、判定システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、走行中の被験者の腕振りパターンの判定に関する。
【背景技術】
【0002】
従来、ランナーの走行に関するパターンを自動的に判定する技術が種々提案されている。たとえば、特許第5314224号公報(特許文献1)は、トレッドミル上を走行する被験者についての身体動作情報を取得し、取得した身体動作情報から特徴を抽出し、抽出された特徴を所与の演算式に適用することにより当該被験者のランニングフォーム得点を算出する、ランニングフォーム診断システムを提案する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記システムは、トレッドミルを利用するため、判定に大掛かりな施設を要し、また、被験者が判定のために特定の場所(トレッドミルが設置された場所)で走行することを要する。ランナーの中には、所望の場所を走行しているときの走行について判定を望む者もいる。
【0005】
本開示は、かかる実情に鑑み考え出されたものであり、その目的は、大掛かりな設備を必要とせず、かつ、ランナーの所望する場所で、ランナーに走行についての判定を与えることを可能にする技術を提供することである。
【課題を解決するための手段】
【0006】
本開示のある局面に従うと、コンピュータによって実行される判定プログラムが提供される。判定プログラムは、コンピュータに、被験者の腕に装着されたセンサからの検出出力を取得するステップと、検出出力を用いて被験者の腕振りパターンを判定するステップと、判定された腕振りパターンを出力するステップとを実行させる。
【0007】
センサからの検出出力は、被験者の腕の挙動を表わす複数種類の検出出力を含んでいてもよい。被験者の腕振りパターンを判定するステップでは、複数種類の検出出力のうち腕振りパターンに関連付けられた種類の検出出力が用いられてもよい。
【0008】
腕振りパターンを判定するステップは、被験者の手首の幅方向に沿う軸周りの角速度または被験者の手首を貫く方向に沿う軸方向の加速度を用いて、被験者の腕振りパターンが第1腕振りパターンであるか否かを判定することを含んでいてもよい。
【0009】
腕振りパターンを判定するステップは、被験者の腕の長手方向の加速度を用いて、被験者の腕振りパターンが第2腕振りパターンであるか否かを判定することを含んでいてもよい。
【0010】
腕振りパターンを判定するステップは、被験者の腕の長手方向に交わりかつ被験者の手の平を貫く方向に沿う軸周りの角速度または被験者の手首の幅方向に沿う軸方向の加速度を用いて、被験者の腕振りパターンが第3腕振りパターンであるかまたは第4腕振りパターンであるかを判定することを含んでいてもよい。
【0011】
判定プログラムは、コンピュータに、所与の腕振りパターンに関連付けられた、センサからの複数種類の検出出力に基づいて、複数種類の検出出力の中から所与の腕振りパターンに寄与する検出出力の種類を特定するとともに、特定された種類の検出出力に対する所与の腕振りパターンについての閾値を生成するステップと、生成された閾値を記憶装置に格納するステップとを実行させてもよい。検出出力を用いて被験者の腕振りパターンを判定するステップは、特定された種類の検出出力について、記憶装置に格納された閾値を用いて、被験者の腕振りパターンが所与の腕振りパターンに該当するか否かを判断することを含んでいてもよい。
【0012】
本開示の他の局面に従うと、判定装置は、上記判定プログラムを格納したメモリーと、コンピュータと、センサとを備える。
【0013】
本開示のさらに他の局面に従うと、被験者の腕振りパターン判定用のアルゴリズム生成装置であって、所与の腕振りパターンに関連付けられた、センサからの複数種類の検出出力に基づいて、複数種類の検出出力の中から所与の腕振りパターンに寄与する種類の検出出力を特定するとともに、特定された種類の検出出力に対する所与の腕振りパターンについての閾値を生成する、アルゴリズム生成装置が提供される。
【0014】
アルゴリズム生成装置は、所与の腕振りパターンに関連付けられた検出出力に基づいて、所与の腕振りパターンに寄与する検出出力に対する閾値を更新してもよい。
アルゴリズム生成装置は、通信端末に、閾値を、所与の腕振りパターンに関連付けて送信する通信インターフェースをさらに備えていてもよい。
【0015】
本開示のさらに他の局面に従うと、上記のアルゴリズム生成装置と通信端末とを備えた判定システムが提供される。通信端末は、被験者の腕に装着されたセンサからの検出出力を用いて、特定された種類の検出出力について、生成された閾値を用いて、被験者の腕振りパターンが所与の腕振りパターンに該当するか否かを判断するプロセッサを含む。
【発明の効果】
【0016】
被験者の腕に装着されたセンサからの検出出力を用いて、被験者の腕振りパターンが判定される。これにより、トレッドミルのような大掛かりな設備を必要とせず、かつ、ランナーの所望する場所で、ランナーに走行についての判定を与えることが可能になる。
【図面の簡単な説明】
【0017】
【
図1】腕振りパターン判定のために被験者が走行している状態を模式的に示す図である。
【
図2】端末100のハードウェア構成を表わす図である。
【
図3】端末100が被験者の腕に装着されているときの検出方向の定義の一例を説明するための図である。
【
図4】腕振りパターン判定システムの機能的な構成の一例を示す図である。
【
図5】パターン「普通」と判定される腕振りのパターンの一例を説明するための図である。
【
図6】パターン「前腕が外に開く」と判定される腕振りのパターンの一例を説明するための図である。
【
図7】パターン「常に肘が伸びる」と判定される腕振りのパターンを説明するための図である。
【
図8】パターン「後ろで肘が伸びる」と判定される腕振りのパターンを説明するための図である。
【
図9】腕振りパターンの判定のために実行される処理のフローチャートである。
【
図10】ステップS40のサブルーチンのフローチャートである。
【
図11】腕振りパターンの判定結果の出力画面の例を示す図である。
【
図12】腕振りパターンの判定結果の出力画面の他の例を示す図である。
【
図13】機械学習による判定アルゴリズムの生成を説明するための図である。
【
図14】判定アルゴリズムを生成するための変数群として想定される変数の種類を説明するための図である。
【発明を実施するための形態】
【0018】
以下、図面を参照しつつ、腕振りパターンの判定に関する実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。
【0019】
[1.腕振りパターン判定の概要]
図1を参照して、本開示における腕振りパターン判定の概要を説明する。
図1は、腕振りパターン判定のために被験者が走行している状態を模式的に示す図である。
【0020】
図1に示されるように、被験者900は、腕に端末100を装着した状態で走行する。端末100は、慣性センサ(たとえば、加速度センサ、ジャイロセンサ、等)を内蔵する。当該慣性センサは、被験者の走行中の腕の挙動を検出する。端末100は、当該検出結果を用いて走行における腕振りパターンを判定する。
【0021】
[2.端末のハードウェア構成]
図2は、端末100のハードウェア構成を表わす図である。
図2を参照して、端末100の構成の一例について説明する。
【0022】
端末100は、たとえばスマートフォン等の汎用的な情報処理装置であってもよいし、腕振りパターンの専用機器であってもよい。端末100は、CPU(Central Processing Unit)20と、アンテナ23と、通信装置24と、入力スイッチ25と、フラッシュメモリ27と、RAM(Random Access Memory)28と、ROM(Read-Only Memory)29と、メモリカード駆動装置30と、マイク32と、スピーカ33と、音声信号処理回路34と、モニタ35と、LED(Light Emitting Diode)36と、通信インターフェイス37と、バイブレータ38と、GPS(Global Positioning System)アンテナ39と、GPSモジュール40と、加速度センサ41と、ジャイロセンサ42とを備える。メモリカード駆動装置30には、メモリカード31が装着され得る。
【0023】
CPU20は、端末100に対して与えられる命令に基づいて端末100の動作を制御するための処理を実行する。アンテナ23によって受信された信号は、通信装置24によってフロントエンド処理が行なわれ、処理後の信号は、CPU20に送られる。
【0024】
入力スイッチ25は、たとえばタッチセンサまたはハードウェアボタン等であり、端末100に対する命令の入力を受け付ける。入力された当該命令に応じた信号は、CPU20に入力される。
【0025】
音声信号処理回路34は、マイク32に入力された音声を、予め定められた処理を施した後、CPU20に入力する。音声信号処理回路34は、また、CPU20からの命令に従って、スピーカ33から音声を出力する。
【0026】
フラッシュメモリ27は、CPU20から送られるデータを格納する。CPU20は、フラッシュメモリ27等の記憶装置に格納されたプログラムを実行する。
【0027】
RAM28は、CPU20によって生成されるデータ等を一時的に保持する。ROM29は、端末100に予め定められた動作を実行させるためのプログラムあるいはデータを格納する。CPU20は、ROM29から当該プログラムまたはデータを読み出し、端末100の動作を制御する。
【0028】
メモリカード駆動装置30は、メモリカード31に格納されているデータを読み出し、CPU20に送出する。CPU20は、メモリカード31に格納されたプログラムを実行してもよい。メモリカード駆動装置30は、CPU20によって出力されるデータを、メモリカード31の記憶領域に書き込む。
【0029】
モニタ35は、タッチ操作式のモニタである。モニタ35は、CPU20から取得されるデータに基づいて、当該データによって規定される画像を表示する。
【0030】
LED36は、CPU20から出力される信号に基づいて発光する。ある局面において、通信インターフェイス37は、WiFi(Wireless Fidelity)、Bluetooth(登録商標)、NFC(Near Field Communication)等の規格に従って外部の機器と通信する。別の局面において、通信インターフェイス37は、データ通信用のケーブルの装着を受け付ける。通信インターフェイス37は、CPU20から出力される信号を発信する。あるいは、通信インターフェイス37は、端末100の外部から受信した信号に含まれるデータを、CPU20に対して送信する。
【0031】
バイブレータ38は、CPU20から出力される信号に基づいて、予め定められた周波数で発振動作を実行する。
【0032】
GPSアンテナ39は、たとえば4つ以上の衛星からそれぞれ送信されるGPS信号を受信する。受信された各GPS信号は、GPSモジュール40に入力される。GPSモジュール40は、各GPS信号と公知の技術とを用いて測位処理を実行し、端末100の位置情報を取得する。
【0033】
加速度センサ41は、端末100に作用する加速度を検出する。ある局面において、加速度センサ41は、3軸加速度センサとして実現される。ジャイロセンサ42は、端末100に作用する角速度を検出する。加速度センサ41およびジャイロセンサ42のそれぞれによって検出された加速度,角速度は、CPU20に入力される。
【0034】
[3.センサによる検出における方向の定義]
【0035】
本明細書では、特記する場合を除いて、加速度センサ41によって検出される加速度およびジャイロセンサ42によって検出される角速度についての方向を、一貫して同じ記号を用いて参照する。
図3は、端末100が被験者の腕に装着されているときの検出方向の定義の一例を説明するための図である。
【0036】
被験者の腕ARに端末100が装着されている。
図3に示された状態では、端末100に設けられたモニタ35は、被験者による視認が可能な位置に配置されている。
【0037】
図3中の3軸(X軸,Y軸,Z軸)は、端末100に内蔵されている加速度センサ41およびジャイロセンサ42に対して定義されている3軸を表わす。X軸は、腕ARの長手方向に沿った方向を表す。Y軸は、被験者の手首の幅方向を表す。Z軸は、被験者の手の平を貫く方向を表す。
【0038】
加速度センサ41は、X軸、Y軸、およびZ軸のそれぞれに沿った方向における加速度を検出する。「Ax」「Ay」「Az」のそれぞれは、X軸、Y軸、およびZ軸のそれぞれに沿った方向における加速度の検出出力に利用される。
【0039】
ジャイロセンサ42は、X軸、Y軸、およびZ軸のそれぞれの周りの回転方向における角速度を検出する。「Gx」「Gy」「Gz」のそれぞれは、X軸、Y軸、およびZ軸のそれぞれの軸にの周りの回転方向における角速度の検出出力に利用される。
【0040】
[4.機能構成]
図4は、本実施の形態の腕振りパターン判定システムの機能的な構成の一例を示す図である。
図4に示されるように、腕振りパターン判定システム400は、センサ部410と、判定部420と、アルゴリズム生成部430と、判定アルゴリズム440と、出力部450とを含む。
【0041】
センサ部410は、たとえば慣性センサによって実現され、被験者の腕の挙動を検出する。判定部420は、センサ部410の検出出力を判定アルゴリズム440に適合することにより、被験者の腕振りパターンを判定する。判定アルゴリズム440は、たとえば、検出出力の種類と当該検出出力についての判定に利用するための閾値とを含み、記憶装置に格納される。アルゴリズム生成部430は、判定アルゴリズム440を生成する。
【0042】
一例では、センサ部410は、加速度センサ41およびジャイロセンサ42によって構成される。判定部420は、所与のプログラム(「判定プログラム」と呼ぶ)を実行するCPU20によって実現される。アルゴリズム生成部430は、情報処理機能を有する装置(たとえば、後述する
図13のコンピュータ1300)によって実現される。判定アルゴリズム440は、フラッシュメモリ27に格納される、判定プログラムおよび判定プログラムに利用されるデータによって構成される。出力部450は、スピーカ33、モニタ35、および/またはLED36によって構成される。
【0043】
ただし、上記の構成の分配は単なる一例である。各機能がどの装置によって実現されるかについては、種々の態様が可能である。
【0044】
他の例では、腕振りパターン判定システムは、スマートフォンと、スマートフォンとは別体のセンサユニットと、サーバーとを含む。センサユニットは、被験者の腕に装着される。センサ部410は、センサユニットによって実現される。判定部420および出力部450は、スマートフォンによって実現される。アルゴリズム生成部430は、サーバによって実現される。判定アルゴリズム440は、サーバに格納され、スマートフォンは、判定の際にはサーバと通信し、当該判定アルゴリズム440を読み出しながら、判定を実行する。なお、判定アルゴリズム440のスマートフォンへの入力は、判定アルゴリズム440を格納している記録媒体(USBメモリ等)をスマートフォンに装着するなど、通信回線を利用することなく、直接的に実現されてもよい。
【0045】
さらに他の例では、腕振りパターン判定システムは、スマートフォンのみによって実現される。すなわち、センサ部410、判定部420、アルゴリズム生成部430、および出力部450は、スマートフォンによって実現され、判定アルゴリズム440はスマートフォンに設けられた記憶装置に格納される。
【0046】
さらに他の例では、腕振りパターン判定システムは、スマートフォンと、判定結果を出力するコンピュータとによって実現される。センサ部410、判定部420、およびアルゴリズム生成部430は、スマートフォンによって実現され、判定アルゴリズム440はスマートフォンに設けられた記憶装置に格納される。出力部450は、コンピュータによって実現される。スマートフォンは、腕振りパターンの判定結果をコンピュータに出力する。コンピュータは、スマートフォンからの出力に従った情報(たとえば、後述する
図11の画面1100等)を出力する。
【0047】
[5.腕振りパターン]
本明細書では、CPU20は、被験者の走行中の腕の振りが4つの腕振りパターンのうちのいずれかであるかを判定する。以下、4つの腕振りパターンについて説明する。なお、このような判定態様は単なる一例である。CPU20は、被験者の走行中の腕の振りが、5以上のパターンまたは3以下のパターンのいずれかに該当すると判定してもよいし、1つ以上の予め定められたパターンのいずれにも該当しないと判定してもよい。
【0048】
(1)パターン「普通」
図5は、パターン「普通」と判定される腕振りのパターンの一例を説明するための図である。
図5は、ランナーの左腕の3つの状態ST11~ST13を示す。
【0049】
ランナーの左腕は、たとえば、状態ST11と状態ST13との間で交互に変化する。状態ST12は、状態ST11と状態ST13の中間の状態を表す。
図5に示されたパターンでは、ランナーは、常に肘を適度に曲げ、比較的大きな振幅で前後に腕を振っている。
【0050】
(2)パターン「前腕が外に開く」
図6は、パターン「前腕が外に開く」と判定される腕振りのパターンの一例を説明するための図である。
図6では、ランナーの正面についての2つの状態ST21~ST22が示されている。
【0051】
ランナーは、状態ST21と状態ST22とを交互に繰り返す。状態ST21は、ランナーが、右腕ARRを後方に位置させた際に正面から見て右腕が開いている状態を表す。状態ST22は、ランナーが、左腕ARLを後方に位置させた際に正面から見て左腕が開いている状態を表す。
図6に示されたパターンでは、ランナーは、左右方向に腕を開いている。
【0052】
(3)パターン「常に肘が伸びる」
図7は、パターン「常に肘が伸びる」と判定される腕振りのパターンを説明するための図である。
図7では、ランナーの左腕の3つの状態ST11~ST13が示されている。
【0053】
ランナーの左腕は、たとえば、状態ST31と状態ST33との間で交互に変化する。状態ST32は、状態ST31と状態ST33の中間の状態を表す。
図7に示されたパターンでは、パターン「普通」に対して、全体的に肘の曲げが足りない。
【0054】
(4)パターン「後ろで肘が伸びる」
図8は、パターン「後ろで肘が伸びる」と判定される腕振りのパターンを説明するための図である。
図8では、ランナーの左腕の3つの状態ST41~ST43が示されている。
【0055】
ランナーの左腕は、たとえば、状態ST41と状態ST43との間で交互に変化する。状態ST42は、状態ST41と状態ST43の中間の状態を表す。
図8に示されたパターンでは、パターン「普通」に対して、ランナーの前方では十分に肘が曲げられているが、ランナーの後方では肘の曲げが足りない。
【0056】
[6.処理の流れ]
図9は、CPU20が腕振りパターンの判定のために実行する処理のフローチャートである。CPU20は、たとえば、端末100にインストールされた腕振りパターン判定アプリケーション(以下、「判定アプリ」という)の処理として、
図9の処理を実行する。CPU20は、判定アプリにおいて判定開始の条件が満たされたことに応じて、
図9の処理を実行する。
【0057】
判定開始条件の一例は、入力スイッチ25に対して操作がなされたことである。端末100を装着した被験者は、入力スイッチ25を操作した後、走行を開始する。これにより、当該走行に対する判定のための処理が開始される。
【0058】
判定開始条件の他の例は、開始用のタイミングが到来したことである。たとえば、CPU20は、カメラのセルフタイマーのように、被験者が入力スイッチ25を操作してから10秒後に、
図9の処理を開始する。CPU20は、スピーカ33からカウントダウン用の音声を出力することによって、
図9の処理の開始のタイミングを被験者に報知してもよい。
【0059】
図9を参照して、ステップS10にて、CPU20は、被験者の走行中に加速度センサ41およびジャイロセンサ42が検出したデータを取得する。ステップS20にて、CPU20は、判定終了の条件が満たされたか否かを判断する。判定終了の条件の一例は、判定開始から一定時間(たとえば、10秒間)が経過したことである。他の例は、入力スイッチ25に対して終了のための操作がなされたことである。さらに他の例は、加速度センサ41において検出される加速度が、所与の時間以上継続して、全ての方向について所与の値を下回ったことである。
【0060】
CPU20は、判定終了の条件が満たされたと判断すると(ステップS20にてYES)、ステップS30へ制御を進め、そうでなければ(ステップS20にてNO)、ステップS10へ制御を戻す。
【0061】
ステップS30にて、CPU20は、ステップS10にて取得されたデータを用いて、腕振りパターンの判定に必要な変数を算出する。一例では、ステップS10のデータの取得は一定時間(たとえば、1秒間)ごとに実施され、取得されたデータは蓄積される。上記変数の算出には、蓄積されたデータの全てまたは平均値が利用され得る。
【0062】
図9の処理において利用される変数について説明する。
【0063】
図9の処理において、CPU20は、以下の3つの変数を利用する。
・GyI/GzI
・AxMin/AyMin
・GzMax
【0064】
ここで、本明細書における検出出力および変数に用いる記号について説明する。
本明細書では、以下の規則に従って、記号を使用する。
【0065】
A:加速度センサ41の検出出力
G:ジャイロセンサ42の検出出力
x:
図3のX軸
y:
図3のY軸
z:
図3のZ軸
I:所与の時間内(例えば、10秒間、又は判定開始から判定終了まで)の積分値
Max:所与の時間内(例えば、10秒間、又は判定開始から判定終了まで)の最大値
Min:所与の時間内(例えば、10秒間、又は判定開始から判定終了まで)の最小値
【0066】
上記規則に従うと、
図9において利用される3つの変数のうち、「GyI/GzI」は、「GzI」に対する「GyI」の比を表わす。「GzI」は、Z軸周りの角速度の積算値を表わす。「GyI」は、Y軸周りの角速度の積算値を表わす。
【0067】
「AxMin/AyMin」は、「AyMin」に対する「AxMin」の比を表わす。「AyMin」は、Y軸方向の加速度の最小値を表わす。「AxMin」は、X軸方向の加速度の最小値を表わす。
【0068】
「GzMax」は、Z軸周りの角速度の最大値を表わす。
【0069】
ステップS40にて、CPU20は、ステップS30にて算出された変数を用いて、被験者の走行における腕振りパターンを判定する。
図10は、ステップS40のサブルーチンのフローチャートである。
図10を参照して、ステップS40のサブルーチンの内容を説明する。
【0070】
ステップS400にて、CPU20は、ステップS30にて算出された「GyI/GzI」の値が、第1の閾値(Th1)以上であるか否かを判断する。CPU20は、「GyI/GzI」がTh1以上であると判断すると(ステップS400にてYES)、ステップS402へ制御を進め、そうでなければ(ステップS400にてNO)、ステップS404へ制御を進める。
【0071】
ステップS402にて、CPU20は、被験者の腕振りパターンをパターン「前腕が外に開く」(
図6)と判定し、
図9へ制御を戻す。
【0072】
ステップS404にて、CPU20は、ステップS30にて算出された「AxMin/AyMin」の値が、第2の閾値(Th2)以上であるか否かを判断する。CPU20は、「AxMin/AyMin」がTh2以上であると判断すると(ステップS404にてYES)、ステップS406へ制御を進め、そうでなければ(ステップS404にてNO)、ステップS408へ制御を進める。
【0073】
ステップS406にて、CPU20は、被験者の腕振りパターンをパターン「普通」(
図5)と判定し、
図9へ制御を戻す。
【0074】
ステップS408にて、CPU20は、ステップS30にて算出された「GzMax」の値が、第3の閾値(Th3)以上であるか否かを判断する。CPU20は、「GzMax」がTh3以上であると判断すると(ステップS408にてYES)、ステップS410へ制御を進め、そうでなければ(ステップS408にてNO)、ステップS412へ制御を進める。
【0075】
ステップS410にて、CPU20は、被験者の腕振りパターンをパターン「後ろで肘が伸びる」(
図8)と判定し、
図9へ制御を戻す。ステップS412にて、CPU20は、被験者の腕振りパターンをパターン「常に肘が伸びる」(
図7)と判定し、
図9へ制御を戻す。
【0076】
図9に戻って、CPU20は、ステップS40にて腕振りパターンを判定した後、ステップS50にて、判定結果を出力する。判定結果の出力は、音声であってもよいし、振動であってもよいし、表示であってもよいし、これらの組合せであってもよい。
【0077】
図9および
図10を参照して説明された処理では、加速度センサ41およびジャイロセンサ42によって検出された種々の検出出力のうち、
図5~
図8を参照して説明された各パターンに対応する検出出力を用いて、被験者の腕振りパターンがそれぞれのパターンに該当するか否か判断される。
【0078】
(パターン「前腕が外に開く」)
たとえば、ステップS400にて「GyI/GzI」の値が第1の閾値(Th1)以上であると判断されると、ステップS402にて、被験者の腕振りパターンがパターン「前腕が外に開く」であると判定される。「GyI」は、Y軸回りの角速度の積分値である。Y軸は、被験者の手首の幅方向を表す。したがって、被験者の手首の幅方向に沿う軸周りの角速度を用いて、被験者の腕振りパターンがパターン「前腕が外に開く」(第1腕振りパターン)であるか否かが判定される。なお、被験者の腕振りパターンがパターン「前腕が外に開く」がであるとの判定には、Y軸周りの角速度の代わりに、または、Y軸周りの角速度と合わせて、Z軸方向の加速度が用いられてもよい。
【0079】
(パターン「普通」)
ステップS404にて「AxMin/AyMin」の値が第2の閾値(Th2)以上であると判断されると、ステップS406にて、被験者の腕振りパターンがパターン「普通」であると判定される。「AxMin」は、X軸方向の加速度の最小値である。X軸は、被験者の腕の長手方向を表す。したがって、被験者の腕の長手方向の加速度を用いて、被験者の腕振りパターンがパターン「普通」(第2腕振りパターン)であるか否かが判定される。
【0080】
(パターン「後ろで肘が伸びる」「常に肘が伸びる」)
ステップS408にて「GzMax」の値が第3の閾値(Th3)以上であると判断されると、ステップS410にて、被験者の腕振りパターンがパターン「後ろで肘が伸びる」であると判定される。
ステップS408にて「GzMax」の値が第3の閾値(Th3)未満であると判断されると、ステップS412にて、被験者の腕振りパターンがパターン「常に肘が伸びる」であると判定される。
Z軸は、被験者の腕の長手方向に交わりかつ被験者の手の平を貫く方向に沿う軸を表わす。したがって、被験者の腕の長手方向に交わりかつ被験者の手の平を貫く方向に沿う軸周りの角速度を用いて、被験者の腕振りパターンがパターン「後ろで肘が伸びる」またはパターン「常に肘が伸びる」であるかが判定される。この意味において、パターン「後ろで肘が伸びる」は、第3腕振りパターンの一例であり、また、パターン「常に肘が伸びる」が第4腕振りパターンの一例である。なお、被験者の腕振りパターンがパターン「後ろで肘が伸びる」またはパターン「常に肘が伸びる」であるかの判定には、Z軸周りの角速度の代わりに、または、Z軸周りの角速度と合わせて、Y軸方向に沿う加速度の加速度が用いられてもよい。
【0081】
[7.出力例]
図11は、ある走行についての、腕振りパターンの判定結果の出力画面の例を示す図である。
図12は、
図11とは別の走行についての、腕振りパターンの判定結果の出力画面の例を示す図である。CPU20は、たとえばステップS50(
図9)において、端末100のモニタ35に、
図11または
図12の画面を表示してもよい。
【0082】
図11に示された画面1100において、欄1101は、腕振りパターンの判定結果を表示する。
図11の「女の子走りです」は、パターン「前腕が外に開く」を意味する。
図12に示された画面1200において、欄1201は、腕振りパターンの判定結果を表示する。
図12の「いい腕振りです」は、パターン「普通」を意味する。
【0083】
画面1100において、欄1102は、判定のために算出された3種類の変数(「GyI/GzI」「AxMin/AyMin」「GzMax」)のそれぞれの数値を表示する。
【0084】
画面1200の欄1202は、画面1100の欄1102に相当する情報を表示する。
【0085】
CPU20は、スピーカ33から音声を出力することによって、判定結果を出力してもよい。端末100は、被験者の走行中に複数回腕振りパターンを判定してもよい。たとえば、被験者が30分間継続して走行する場合に、CPU20は、当該被験者の1分ごとの走行に対して腕振りパターンを判定し、音声および/または表示で判定結果を出力してもよい。これにより、被験者は、走行しながら、判定結果を取得できるため、判定結果に応じて腕振りパターンを修正することができる。
【0086】
[8.判定アルゴリズムの生成・更新]
判定アルゴリズムは、専門家の見識に基づいて生成されてもよいし、機械学習によって生成されてもよい。
図13は、機械学習による判定アルゴリズムの生成を説明するための図である。
【0087】
図13において、コンピュータ1300は、機械学習によって判定アルゴリズムを生成する情報処理装置(アルゴリズム生成装置)の一例である。コンピュータ1300は、たとえば、判定アルゴリズム生成用のプログラムを記憶する記憶装置と、当該判定アルゴリズム生成用のプログラムを実行するためのプロセッサとを含む。
【0088】
判定アルゴリズムを生成するための教師データとして、所与の腕振りパターンに関連付けられて取得された変数群が準備される。
図14は、判定アルゴリズムを生成するための変数群として想定される変数の種類を説明するための図である。
【0089】
図14には、「各軸方向の活動の大きさ(35変数)」と「各軸方向への活動比率(81変数)」からなる、116種類の変数が示されている。
【0090】
「各軸方向の活動の大きさ(35変数)」として、7種類の検出出力と、それらについての5つの項目が挙げられている。7種類の検出出力は、X軸,Y軸,Z軸のそれぞれの加速度(Ax,Ay,Az)と、3種類の加速度の合成加速度(Are)と、X軸,Y軸,Z軸のそれぞれの軸周りの角速度(Gx,Gy,Gz)とを含む。5つの項目は、絶対値の積分値(I)、最大値(Max)、最小値(Min)、微分値の最大値(MaxDif)、および、微分値の最小値(MinDif)を含む。7種類の検出出力のそれぞれについて5つの項目が準備されることにより、35種類の変数が得られる。
【0091】
「各軸方向への活動比率(81変数)」として、積分値の比率(9変数)と、最大値・最小値の比率(72変数)とが示される。積分値の比率(9種類)は、2種類の加速度の比(6種類)と、2種類の角速度の比(3種類)とを含む。
【0092】
最大値・最小値の比率(72変数)は、「加速度最大・最小:21変数」と、「ジャイロ最大・最小:15変数」と、「加速度変化最大・最小:21変数」と、「ジャイロ変化最大・最小:15変数」とを含む。
【0093】
「加速度最大・最小:21変数」に含まれる21の変数のそれぞれは、加速度の最大値および最小値からなる群から選択された2種類の値の比である。「ジャイロ最大・最小:15変数」に含まれる15の変数のそれぞれは、角速度の最大値および最小値からなる群から選択された2種類の値の比である。「加速度変化最大・最小:21変数」に含まれる21の変数のそれぞれは、加速度の微分値の最大値および最小値からなる群から選択された2種類の値の比である。「ジャイロ変化最大・最小:15変数」に含まれる15の変数のそれぞれは、角速度の微分値の最大値および最小値からなる群から選択された2種類の値の比である。
【0094】
判定アルゴリズムの生成では、複数の走行のそれぞれについて、教師データとして、腕振りパターンの名称と、
図14の116種類の変数とが、セットで供給される。判定アルゴリズム生成用プログラムは、この教師データを利用して、所与の腕振りパターンに寄与する変数の種類を特定するとともに、当該所与の腕振りパターンであると判定するための特定された種類の変数についての閾値を決定する。CPU20は、上記判定アルゴリズム生成用プログラムの実行中に決定した閾値を、腕振りパターンに関連付けて、判定アルゴリズムの一部としてフラッシュメモリ27に格納する。これにより、生成された判定アルゴリズムは、特定された変数の種類と、決定された閾値とを含む。
【0095】
本実施の形態では、CPU20が、判定アルゴリズムを生成し、生成された判定アルゴリズムを「判定アプリ」に組み込むことにより、
図9および
図10に示された処理を実行してもよい。すなわち、コンピュータ1300は、端末100によって実現されてもよい。
【0096】
サーバが、判定アルゴリズムを生成し、生成された判定アルゴリズムを端末100に供給してもよい。すなわち、コンピュータ1300は、サーバによって実現されてもよい。サーバは、定期的に、または、作業者の指示に応じて、機械学習により判定アルゴリズムを更新し、更新後の判定アルゴリズムを端末100に共有してもよい。判定アルゴリズムの更新の一例は、所与の腕振りパターン(および他の腕振りパターン)に関連付けられた検出出力を用いて、当該所与の腕振りパターンの判定に寄与する検出出力の閾値を更新することである。サーバは、通信インタフェースを備えていてもよい。端末100には、当該通信インタフェースを介して通信によって、判定アルゴリズムが供給されてもよい。
【0097】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0098】
20 CPU、24 通信装置、25 入力スイッチ、27 フラッシュメモリ、28 RAM、29 ROM、30 メモリカード駆動装置、31 メモリカード、32 マイク、33 スピーカ、34 音声信号処理回路、35 モニタ、37 通信インターフェイス、38 バイブレータ、40 モジュール、41 加速度センサ、42 ジャイロセンサ、100 端末、400 腕振りパターン判定システム、410 センサ部、420 判定部、430 アルゴリズム生成部、440 判定アルゴリズム、450 出力部、900 被験者、1100,1200 画面、1300 コンピュータ。