(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024016484
(43)【公開日】2024-02-07
(54)【発明の名称】トレーニング動作カウントプログラム、トレーニング動作カウント装置、およびトレーニング動作カウントシステム
(51)【国際特許分類】
G06T 7/20 20170101AFI20240131BHJP
【FI】
G06T7/20 300Z
【審査請求】未請求
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2022118641
(22)【出願日】2022-07-26
(71)【出願人】
【識別番号】304020498
【氏名又は名称】サクサ株式会社
(74)【代理人】
【識別番号】100098394
【弁理士】
【氏名又は名称】山川 茂樹
(72)【発明者】
【氏名】植田 大介
(72)【発明者】
【氏名】秋山 和俊
(72)【発明者】
【氏名】深井 伸晃
(72)【発明者】
【氏名】小関 吉則
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096FA52
5L096FA64
5L096FA69
5L096FA79
5L096GA51
(57)【要約】
【課題】トレーニング動作の撮影に関する自由度が大きく、高いユーザビリティを得る。
【解決手段】本発明のトレーニング動作カウント装置10では、記憶装置15に、トレーニング動作の際に、同一関節を基準として互いの位置関係が変化する身体の骨格における2つの部位を記憶しておき、演算処理装置16が、トレーニング動作を撮影した映像の身体の骨格情報から2つの部位Pa,Pbの位置を示す位置情報を取得し、これらの位置情報に基づいて2つの部位Pa,Pbを結ぶ直線Lpの長さLを検出し、直線Lpの長さLを予め設定されている判定データ15Cと比較し、得られた比較結果に基づいてトレーニング動作の有効性を判定する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
トレーニング動作の際に、同一関節を基準として互いの位置関係が変化する身体の骨格における2つの部位を記憶する記憶装置と、前記トレーニング動作を撮影した映像の身体の骨格情報から取得した前記2つの部位の位置関係の変化に基づいて、前記トレーニング動作の回数をカウントする演算処理装置とを備えるトレーニング動作カウント装置で実行されるトレーニング動作カウントプログラムであって、
前記演算処理装置に、
前記骨格情報から前記2つの部位の位置を示す位置情報を取得する位置情報取得ステップと、
前記位置情報に基づいて前記2つの部位を結ぶ直線の長さを検出し、前記直線の長さを予め設定されている長さ判定データと比較し、得られた比較結果に基づいて前記トレーニング動作の有効性を判定する動作判定ステップと、
前記有効性が認められたトレーニング動作の回数をカウントするカウントステップと
を実行させることを特徴とするトレーニング動作カウントプログラム。
【請求項2】
前記動作判定ステップは、予め設定されている基準値に対する前記直線の長さの変化率を予め設定されている変化率判定データと比較し、得られた比較結果に基づいて前記トレーニング動作の有効性を判定するステップからなる
ことを特徴とする請求項1に記載のトレーニング動作カウントプログラム。
【請求項3】
トレーニング動作の際に、同一関節を基準として互いの位置関係が変化する身体の骨格における2つの部位を記憶する記憶装置と、前記トレーニング動作を撮影した映像の身体の骨格情報から取得した前記2つの部位の位置関係の変化に基づいて、前記トレーニング動作の回数をカウントする演算処理装置とを備え、
前記演算処理装置は、
前記骨格情報から前記2つの部位の位置を示す位置情報を取得する位置情報取得部と、
前記位置情報に基づいて前記2つの部位を結ぶ直線の長さを検出し、検出した直線の長さを予め設定されている長さ判定データと比較し、得られた比較結果に基づいて前記トレーニング動作の有効性を判定する動作判定部と、
前記有効性が認められたトレーニング動作の回数をカウントするカウント部と
を備えることを特徴とするトレーニング動作カウント装置。
【請求項4】
請求項3に記載のトレーニング動作カウント装置と、
前記トレーニング動作を撮影した映像を、通信回線を介して前記トレーニング動作カウント装置へ送信するカメラ端末と
を備え、
前記トレーニング動作カウント装置は、前記カメラ端末から受信した前記映像に基づいて前記トレーニング動作の回数をカウントする
ことを特徴とするトレーニング動作カウントシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、トレーニング動作を撮影した映像を解析して有効性のある動作の回数をカウントするトレーニング動作カウント技術に関する。
【背景技術】
【0002】
人が健康の維持や促進を目的として個人的にトレーニング動作を行う場合、そのトレーニング動作を容易かつ客観的に評価する必要がある。このようなトレーニング動作を評価するための技術として、従来、トレーニング動作を撮影した映像を解析して身体の骨格情報を抽出し、得られた骨格情報から検出した身体の姿勢変化が、所定の判定条件を充足しているか否かに基づいて、トレーニング動作の有効性を評価し、有効性が認められた動作の回数を自動的にカウントするトレーニング動作カウント技術が提案されている(例えば、特許文献1など参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
前述した従来技術では、トレーニング動作の有効性を判定する判定条件として、そのトレーニング動作で繰り返される特徴的な姿勢における関節動作の角度を予め設定しておき、映像を解析して得られた骨格情報から対象となる関節の角度を取得して、判定条件と比較している。例えばスクワット動作であれば、映像から得られた膝を曲げた時の膝角度が判定角度を満たしていれば、カウント適否を判断するための重要な姿勢の1つであるしゃがんだ姿勢であると判定される。
【0005】
しかしながら、対象となる関節の角度は、トレーニング動作を撮影するカメラの位置によって変化しやすい。このため、有効な姿勢か否かを正確に判定するためには、カメラと身体の向きを厳密に調整する必要があるという問題点があった。
【0006】
例えば、膝角度が60度である姿勢の場合、カメラの位置が膝の真横方向にある場合に正しく60度と検出できる。これは、膝角度を特定する3つの部位が存在する平面を、その平面の垂直方向からカメラで撮影しているからである。しかし、カメラの位置が真横方向から前後斜め方向にずれると、60度の膝角度は60度より大きな角度として検出される。これは、カメラの位置ずれによって、膝角度を特定する3つの部位が存在する平面を、前後斜め方向から撮影することになるからである。
【0007】
したがって、従来において、有効な姿勢か否かを正確に判定するには、トレーニング内容すなわち判定対象となる関節動作に応じて、カメラの位置や身体の向きを精度よく調整する必要がある。このため、従来技術は、トレーニング動作の撮影に関する自由度が乏しく、トレーニング動作をカウントする技術として、高いユーザビリティを得ることができない。
【0008】
本発明はこのような課題を解決するためのものであり、トレーニング動作の撮影に関する自由度が大きく、高いユーザビリティを得ることができるトレーニング動作カウント技術を提供することを目的としている。
【課題を解決するための手段】
【0009】
このような目的を達成するために、本発明にかかるトレーニング動作カウントプログラムは、トレーニング動作の際に、同一関節を基準として互いの位置関係が変化する身体の骨格における2つの部位を記憶する記憶装置と、前記トレーニング動作を撮影した映像の身体の骨格情報から取得した前記2つの部位の位置関係の変化に基づいて、前記トレーニング動作の回数をカウントする演算処理装置とを備えるトレーニング動作カウント装置で実行されるトレーニング動作カウントプログラムであって、前記演算処理装置に、前記骨格情報から前記2つの部位の位置を示す位置情報を取得する位置情報取得ステップと、前記位置情報に基づいて前記2つの部位を結ぶ直線の長さを検出し、前記直線の長さを予め設定されている長さ判定データと比較し、得られた比較結果に基づいて前記トレーニング動作の有効性を判定する動作判定ステップと、前記有効性が認められたトレーニング動作の回数をカウントするカウントステップとを実行させるように構成されている。
【0010】
また、本発明にかかるトレーニング動作カウントプログラムの一構成例は、前記動作判定ステップは、予め設定されている基準値に対する前記直線の長さの変化率を予め設定されている変化率判定データと比較し、得られた比較結果に基づいて前記トレーニング動作の有効性を判定するステップからなるように構成されている。
【0011】
また、本発明にかかるトレーニング動作カウント装置は、トレーニング動作の際に、同一関節を基準として互いの位置関係が変化する身体の骨格における2つの部位を記憶する記憶装置と、前記トレーニング動作を撮影した映像の身体の骨格情報から取得した前記2つの部位の位置関係の変化に基づいて、前記トレーニング動作の回数をカウントする演算処理装置とを備え、前記演算処理装置は、前記骨格情報から前記2つの部位の位置を示す位置情報を取得する位置情報取得部と、前記位置情報に基づいて前記2つの部位を結ぶ直線の長さを検出し、検出した直線の長さを予め設定されている長さ判定データと比較し、得られた比較結果に基づいて前記トレーニング動作の有効性を判定する動作判定部と、前記有効性が認められたトレーニング動作の回数をカウントするカウント部とを備えるように構成されている。
【0012】
また、本発明にかかるトレーニング動作カウントシステムは、上記のトレーニング動作カウント装置と、前記トレーニング動作を撮影した映像を、通信回線を介して前記トレーニング動作カウント装置へ送信するカメラ端末とを備え、前記トレーニング動作カウント装置は、前記カメラ端末から受信した前記映像に基づいて前記トレーニング動作の回数をカウントするように構成されている。
【発明の効果】
【0013】
本発明によれば、トレーニング動作を撮影した映像を解析して有効性のある動作の回数をカウントする場合、トレーニング動作の撮影に関する自由度が大きく、高いユーザビリティを得ることができる。
【図面の簡単な説明】
【0014】
【
図1】
図1は、第1の実施の形態にかかるトレーニング動作カウント装置の構成を示すブロック図である。
【
図2】
図2は、部位データの構成例を示す説明図である。
【
図4】
図4は、第1の実施の形態にかかる判定データの構成例を示す説明図である。
【
図5】
図5は、スクワット動作で用いる2つの部位と直線の関係(側面)を示す説明図である。
【
図6】
図6は、基準姿勢からの基準値の検出を示す説明図である。
【
図7】
図7は、第1の実施の形態にかかるトレーニング動作カウント装置の動作を示すフローチャートである。
【
図8】
図8は、スクワット動作で用いる2つの部位と直線の関係(正面)を示す説明図である。
【
図9】
図9は、腕立て伏せ動作で用いる2つの部位と直線の関係(側面)を示す説明図である。
【
図10】
図10は、腹筋動作で用いる2つの部位と直線の関係(側面)を示す説明図である。
【
図11】
図11は、第2の実施の形態にかかる判定データの構成例を示す説明図である。
【
図12】
図12は、第2の実施の形態にかかるトレーニング動作カウント装置の動作を示すフローチャートである。
【発明を実施するための形態】
【0015】
次に、本発明の実施の形態について図面を参照して説明する。
[第1の実施の形態]
まず、
図1を参照して、本発明の第1の実施の形態にかかるトレーニング動作カウント装置について説明する。
図1は、第1の実施の形態にかかるトレーニング動作カウント装置の構成を示すブロック図である。
【0016】
このトレーニング動作カウント装置10は、全体としてPCやサーバーなどのコンピュータからなり、トレーニング動作を撮影した映像を解析して有効性のあるトレーニング動作の回数を自動的にカウントするように構成されている。
【0017】
[本発明の原理]
一般に、トレーニング動作において、ある関節を動かした場合、その関節に接続されている2つの骨が関節を中心として回動するため、2つの骨のなす角度が変化する。この際、変化するのは2つの骨のなす角度だけでなく、これら2つの骨のうち関節とは反対側に位置するそれぞれの部位の位置関係も大きく変化する。ここで、これら2つの部位の位置関係の変化は、これら2つの部位を結ぶ直線の長さの変化として検出することができる。また、部位Pa,Pbを結ぶ直線Lpは、骨格情報が得られれば特定できるため、関節動作時における直線の長さの変化度合は、カメラの位置や身体の向きが変化しても、その影響を受けにくい。
【0018】
本発明は、これら2つの部位を結ぶ直線の長さが持つ特徴に着目し、トレーニング動作を撮影した映像から2つの部位の位置を検出して、これら2つの部位を結ぶ直線の長さを検出し、得られた直線の長さと予め設定されている判定データとの比較結果に基づいて、トレーニング動作の有効性を判定し、有効性が認められたトレーニング動作の回数を自動的にカウントするように構成したものである。
【0019】
トレーニング動作カウント装置10は、主な構成として、通信I/F11、操作入力装置12、画面表示装置13、カメラ14、記憶装置15、および演算処理装置16を備えている。
【0020】
[通信I/F]
通信I/F11は、インターネットなどの通信網NWを経由した通信回線LNを介してスマートホンなどのカメラ端末20と接続し、各種データ通信を行うことにより、トレーニング動作の映像などの各種データをやり取りするように構成されている。本実施の形態では、カメラ端末20で撮影されたトレーニング動作の映像を、通信I/F11を介してトレーニング動作カウント装置10が受信し、得られた映像に基づいてトレーニング動作の動作回数をカウントする場合を例として説明する。
【0021】
このようなトレーニング動作カウント装置10とカメラ端末20とを含むシステムをトレーニング動作カウントシステムという。トレーニング動作カウントシステムでは、トレーニング動作カウント装置10で得られた動作回数などのカウント結果をカメラ端末20へ送信することも可能である。
【0022】
[操作入力装置]
操作入力装置12は、キーボード、マウス、タッチキーなどの操作入力装置からなり、オペレータやユーザの操作を検出して演算処理装置16へ出力する機能を有している。
【0023】
[画面表示装置]
画面表示装置13は、LCDなどの画面表示装置からなり、演算処理装置16から出力された、メニュー画面、設定画面、出力画面などの各種画面を画面表示するように構成されている。
【0024】
[カメラ]
カメラ14は、イメージセンサを用いた撮影装置からなり、映像を撮影して演算処理装置16へ出力するように構成されている。カメラ14は、ノートPCのようにトレーニング動作カウント装置10に予め搭載されているカメラを用いてもよく、ウェブカメラなどの外付けカメラを、有線または無線インターフェースを介してトレーニング動作カウント装置10に接続して用いてもよい。
【0025】
なお、本実施の形態では、カメラ端末20で撮影されたトレーニング動作の映像を、通信I/F11を介してトレーニング動作カウント装置10が取得する場合を例に説明する。
【0026】
[記憶装置]
記憶装置15は、ハードディスクや半導体メモリなどの記憶装置からなり、演算処理装置16で実行する各種演算処理に用いる処理データや、トレーニング動作カウントプログラム等のプログラム15Pを記憶するように構成されている。
【0027】
プログラム15Pは、演算処理装置16のCPUと協働することにより、トレーニング動作有効性判定処理や動作カウント処理などを実行する各種の処理部を実現する。プログラム15Pは、通信回線LNを介して接続された外部装置や記録媒体(ともに図示せず)から予め読み込まれて、記憶装置15に保存される。
【0028】
記憶装置15で記憶する主な処理データとして、映像データ15A、部位データ15B、および判定データ15Cがある。
[映像データ]
映像データ15Aは、カメラ端末20で撮影したトレーニング動作の映像を示す映像データである。
【0029】
[部位データ]
部位データ15Bは、トレーニング動作の有効性を判定するのに用いる部位を示す設定データである。
図2は、部位データの構成例を示す説明図である。
図2の例では、トレーニング動作ごとに、動作の基準となる関節Pjと、この関節Pjに骨を介して接続されて関節Pjを中心として個別に回動する2つの部位Pa,Pbとが登録されている。
【0030】
例えば、スクワット動作の場合、このスクワット動作で最も大きく動作する関節の1つである「膝」が関節Pjとして設定されている。また、この「膝」と大腿骨を介して接続されている「腰」が部位Paとして設定され、同じく「膝」と脛骨を介して接続されている「踵」が部位Pbとして設定されている。有効性判定処理において関節Pjは用いないため、部位データ15Bから省いてもよい。
【0031】
図3は、骨格情報を示す説明図である。ここでは、スクワット動作のしゃがんだ姿勢を示す骨格情報が示されている。骨格情報は、主となる関節の座標位置と各関節を結ぶ線分が含まれている。この骨格情報は、人物領域推定技術SSD(Single Shot Multibox Detector)や骨格抽出技術CPN(Cascaded Pyramid Network)、さらにはConfidence MapとPart Affinity Fields(PAFs)を組み合わせた逐次予測プロセスなど、公知の手法で映像から抽出できる。
図2に登録される部位は、骨格情報に含まれる関節を用いる場合が一般的であるが、各関節を結ぶ線分(
図3中の太線)の途中または延長線上に設けた点であってもよい。
【0032】
[判定データ]
判定データ(長さ判定データ)15Cは、部位Pa,Pbを結ぶ直線(補助線)Lpの長さLに基づき、トレーニング動作の有効性を判定するための設定データである。
図4は、第1の実施の形態にかかる判定データの構成例を示す説明図である。
【0033】
図4の例では、トレーニング動作ごとに、第1判定範囲SL1と第2判定範囲SL2とが登録されている。例えば、スクワット動作の場合、第1判定範囲SL1には「60cm以上」という判定範囲が設定されており、第2判定範囲SL2には「40cm以下」という判定範囲が設定されている。なお、画素から長さへの変換は公知の方法から求めればよい。
【0034】
トレーニング動作は、特徴的な複数の姿勢を順に繰り返し作る動作であると捉えることができ、これら複数の姿勢が順に確認されて初めて有効なトレーニング動作と云える。
【0035】
図4の例では、第1および第2の姿勢からなる2つの姿勢でトレーニング動作が構成されているものとし、第1の姿勢か否かを判定するための判定データが第1判定範囲SL1であり、第2の姿勢か否かを判定するための判定データが第2判定範囲SL2である。これら第1判定範囲SL1と第2判定範囲SL2の値については、予め複数の人から第1および第2の姿勢における直線Lpの長さLを検出し、これらを統計処理して得られた結果に基づいて、それぞれ決定すればよい。
【0036】
[演算処理装置]
演算処理装置16は、CPUとその周辺回路を有し、記憶装置15のプログラム15Pを読み出してCPUと協働させることにより、トレーニング動作有効性判定処理や動作カウント処理などを実行する各種の処理部を実現する。演算処理装置16で実現される主な処理部として、映像取得部16A、位置情報取得部16B、動作判定部16C、および動作カウント部16Dがある。
【0037】
[映像取得部]
映像取得部16Aは、通信I/F11から通信網NWを介してカメラ端末20とデータ通信を行うことにより、カメラ端末20で撮影されたトレーニング動作の映像を取得し、記憶装置15に映像データ15Aとして保存するように構成されている。
【0038】
[位置情報取得部]
位置情報取得部16Bは、映像データ15Aを解析して身体の骨格情報を抽出し、得られた骨格情報から、部位データ15Bのうち対象となるトレーニング動作に対応する2つの部位Pa,Pbの位置情報(座標情報)を取得するように構成されている。
【0039】
[動作判定部]
動作判定部16Cは、位置情報取得部16Bで取得した位置情報に基づいて、2つの部位Pa,Pbを結ぶ直線Lpの長さLを検出するように構成されている。
図5は、スクワット動作で用いる2つの部位と直線の関係(側面)を示す説明図である。スクワット動作の場合、部位Paは腰に相当し、部位Pbは踵に相当する。
【0040】
図5(a)の立ち上がった第1の姿勢において、部位Pa,Pbの位置関係は大きく離れた状態にあり、
図5(b)のしゃがんだ第2の姿勢において、部位Pa,Pbの位置関係は第1の姿勢のときより近づいた状態にある。このため、
図5(b)における直線Lpの長さL2は、
図5(a)における直線Lpの長さL1より短い。
【0041】
また、動作判定部16Cは、検出した直線Lpの長さLを、判定データ15Cの第1判定範囲SL1および第2判定範囲SL2と比較し、その比較結果に基づいて、第1および第2の姿勢か否かを判定することにより、これら第1および第2の姿勢から構成されるトレーニング動作の有効性を判定するように構成されている。
【0042】
判定データ15Cが前述した
図4のように設定されている場合、
図5に示したスクワット動作については、直線Lpの長さLが60cm以上(第1判定範囲SL1)であれば、
図5(a)の立ち上がった第1の姿勢が検出されたと判定される。
【0043】
また、直線Lpの長さLが40cm以下(第2判定範囲SL2)であれば、
図5(b)のしゃがんだ第2の姿勢が検出されたと判定される。これら姿勢判定処理は、映像データ15Aを構成する個々のフレームについて、連続してあるいは間欠的に実行すればよい。
【0044】
動作判定部16Cで検出される直線Lpの長さLは、人によって多少のばらつきがあり、有効性判定の誤差の要因となりうる場合がある。このようなばらつきの影響を抑制する場合には、カウント動作開始前にユーザの身長をカメラ端末20や操作入力装置12から入力し、動作判定部16Cが、所定の数式を用いてその身長から直線Lpの長さの基準値L0を計算し、得られた基準値L0にある程度のばらつき幅を加えたものを第1判定範囲SL1および第2判定範囲SL2として判定データ15Cに設定してもよい。
【0045】
また、基準値L0については、予め正立姿勢などの基準姿勢を撮影して映像データ15Aに含めておき、その基準姿勢から基準値L0を抽出してもよい。
図6は、基準姿勢からの基準値の検出を示す説明図である。
【0046】
図6に示すように、位置情報取得部16Bが、正立姿勢からなる基準姿勢の骨格情報から部位Pa,Pbの位置情報を取得して、動作判定部16Cが部位Pa,Pbを結ぶ直線Lpの長さLすなわち基準値L0を検出し、動作判定部16Cが、得られた基準値L0にある程度のばらつき幅を加えたものを第1判定範囲SL1および第2判定範囲SL2として判定データ15Cに設定してもよい。
【0047】
[動作カウント部]
動作カウント部16Dは、動作判定部16Cで第1および第2の姿勢が交互に検出された場合、トレーニング動作を構成する一連の動作が正しく行われたと判断して、動作回数をカウントアップするように構成されている。また、動作カウント部16Dは、得られたカウント結果を画面表示装置13で画面表示するようにしてもよく、通信I/F11から通信回線LNを介してカメラ端末20へ通知し、カメラ端末20で画面表示するようにしてもよい。
【0048】
[第1の実施の形態の動作]
次に、
図7を参照して、本実施の形態にかかるトレーニング動作カウント装置10の動作について説明する。
図7は、第1の実施の形態にかかるトレーニング動作カウント装置の動作を示すフローチャートである。ここでは、カウント動作を開始する前に、映像データ15Aと部位データ15Bが予め記憶装置15に保存されているものとする。
【0049】
なお、カウント動作を開始する前に、ユーザに合わせた判定データ15Cを設定してもよい。この場合には、動作判定部16Cが、カウント動作開始前にカメラ端末20や操作入力装置12から入力したユーザの身長を取得して、その身長に所定の係数を積算することにより、直線Lpの長さの基準値L0を計算し、得られた基準値L0にある程度のばらつき幅を加えたものを第1判定範囲SL1および第2判定範囲SL2として判定データ15Cに設定すればよい。この際、基準値L0については、前述したように、映像データ15Aに含まれる基準姿勢から基準値L0を検出してもよい。
【0050】
カウント動作において、まず、位置情報取得部16Bは、映像データ15Aの任意の1フレームを解析して身体の骨格情報を抽出し、得られた骨格情報から、部位データ15Bのうち対象となるトレーニング動作に対応する2つの部位Pa,Pbの位置情報(座標情報)を取得する(位置情報取得ステップ)(ステップ100)。
【0051】
続いて、動作判定部16Cは、位置情報取得部16Bで取得した位置情報に基づいて、2つの部位Pa,Pbを結ぶ直線Lpの長さLを検出する(ステップ101)。
【0052】
この後、動作判定部16Cは、検出された直線Lpの長さLを、判定データ15Cの第1判定範囲SL1と比較し、その比較結果に基づいて第1の姿勢か否かを判定する(ステップ102)。ここで、長さLが第1判定範囲SL1の範囲外である場合(ステップ102:NO)、ステップ100へ戻って後続するフレームに関する処理を実行する。
【0053】
ステップ102において、長さLが第1判定範囲SL1の範囲内である場合(ステップ102:YES)、位置情報取得部16Bは、第1の姿勢が検出されたと判定し、続く第2の姿勢を検出するため、映像データ15Aの後続するフレームを解析して身体の骨格情報を抽出し、得られた骨格情報から、部位データ15Bのうち対象となるトレーニング動作に対応する2つの部位Pa,Pbの位置情報(座標情報)を取得する(ステップ103)。
【0054】
続いて、動作判定部16Cは、位置情報取得部16Bで取得した位置情報に基づいて、2つの部位Pa,Pbを結ぶ直線Lpの長さLを検出する(ステップ104)。
【0055】
この後、動作判定部16Cは、検出された直線Lpの長さLを、判定データ15Cの第2判定範囲SL2と比較し、その比較結果に基づいて第2の姿勢か否かを判定する(動作判定ステップ)(ステップ105)。ここで、長さLが第2判定範囲SL2の範囲外である場合(ステップ105:NO)、ステップ103へ戻って後続するフレームに関する処理を実行する。
【0056】
ステップ105において、長さLが第2判定範囲SL2の範囲内である場合(ステップ105:YES)、動作カウント部16Dは、動作判定部16Cで第1および第2の姿勢が交互に検出されたことから、トレーニング動作を構成する一連の動作が正しく行われたと判断して、動作回数をカウントアップする(カウントステップ)(ステップ106)。
【0057】
この後、動作判定部16Cは、カウント動作を終了するか判断する(ステップ107)。この際、動作回数が規定回数に到達したり、カウント動作の中止操作が行われたりした場合、終了と判断すればよい。
【0058】
ステップ107において、カウント動作を継続する場合(ステップ107:NO)、ステップ100に戻って後続するフレームに関する処理を実行する。
【0059】
一方、カウント動作を終了する場合(ステップ107:YES)、動作判定部16Cは、カウント結果を画面表示装置13やカメラ端末20へ出力し(ステップ108)、一連の処理を終了する。
【0060】
このように、トレーニング動作の有効性は、2つの部位Pa,Pbを結ぶ直線Lpの長さLと判定データ15Cとの比較結果に基づいて判定される。この際、骨格情報が得られれば部位Pa,Pbを結ぶ直線Lpが特定できるため、関節動作時における長さLの変化度合は、カメラの位置や身体の向きが変化しても、その影響を受けにくいことがわかる。
【0061】
図8は、スクワット動作で用いる2つの部位と直線の関係(正面)を示す説明図である。前述した
図5では、トレーニング動作を人の側面から撮影した場合を例として説明したが、
図8に示すように、人の正面から撮影した場合でも前述と同様にして、直線Lpの長さLを容易に検出できる。
【0062】
また、以上では、スクワット動作を例にして説明したが、他のトレーニング動作についても同様に実施できる。
図9は、腕立て伏せ動作で用いる2つの部位と直線の関係(側面)を示す説明図である。
図10は、腹筋動作で用いる2つの部位と直線の関係(側面)を示す説明図である。いずれの場合も、2つの部位Pa,Pbを結ぶ直線Lpの長さLを容易に検出できることがわかる。
【0063】
また、これらについても、骨格情報が得られれば部位Pa,Pbを結ぶ直線Lpが特定できるため、関節動作時における長さLの変化度合は、カメラの位置や身体の向きが変化しても、その影響を受けにくいことがわかる。
【0064】
[第1の実施の形態の効果]
このように、本実施の形態は、記憶装置15で、身体を構成する骨格のうち、トレーニング動作の際に、同一関節を基準として個別に回動するとともに互いの位置関係が変化する、2つの部位を記憶しておき、演算処理装置16が、トレーニング動作を撮影した映像から身体の骨格情報を抽出し、この骨格情報から2つの部位Pa,Pbの位置を示す位置情報を取得し、これら位置情報に基づいて2つの部位Pa,Pbを結ぶ直線Lpの長さLを検出し、直線Lpの長さLを予め設定されている判定データ15Cと比較し、得られた比較結果に基づいてトレーニング動作の有効性を判定するように構成したものである。
【0065】
これにより、トレーニング動作の有効性が、2つの部位を結ぶ直線Lpの長さLに基づいて判定されるため、カメラの位置や身体の向きが変化しても、その影響を受けにくい。このため、関節の角度に基づいてトレーニング動作の有効性を判定する場合と比較して、カメラの位置や身体の向きの調整を厳密に行う必要がなくなる。したがって、トレーニング動作の撮影に関する自由度が大きく、高いユーザビリティを得ることができる。
【0066】
[第2の実施の形態]
次に、本発明の第2の実施の形態について説明する。第1の実施の形態では、2つの部位Pa,Pbを結ぶ直線Lpの長さLを検出し、予め設定されている判定データ(長さ判定データ)15Cと比較する場合について説明した。本実施の形態では、予め設定された基準値L0に対する、検出した直線Lpの長さLの変化率Rを検出し、予め設定されている判定データ(変化率判定データ)15Cと比較する場合について説明する。
【0067】
[判定データ]
判定データ(変化率判定データ)15Cは、基準値L0に対する、検出した直線Lpの長さLの変化率Rに基づき、トレーニング動作の有効性を判定するための設定データである。
図11は、第2の実施の形態にかかる判定データの構成例を示す説明図である。
【0068】
図11の例では、トレーニング動作ごとに、第1判定範囲SR1と第2判定範囲SR2とが登録されている。例えば、スクワット動作の場合、第1判定範囲SR1には「90%以上」という判定範囲が設定されており、第2判定範囲SR2には「60%以下」という判定範囲が設定されている。
【0069】
[動作判定部]
動作判定部16Cは、検出した直線Lpの長さLを予め設定された基準値L0で除算することにより、予め設定された基準値L0に対する、検出した直線Lpの長さLの変化率Rを検出し、判定データ15Cの第1判定範囲SR1および第2判定範囲SR2と比較し、その比較結果に基づいて、第1および第2の姿勢か否かを判定することにより、これら第1および第2の姿勢から構成されるトレーニング動作の有効性を判定するように構成されている。
【0070】
基準値L0については、予め複数の人から基準姿勢における直線Lpの長さLを検出し、これらを統計処理して得られた結果に基づいて、決定すればよい。また、第1の実施の形態と同様に、カウント動作開始前にユーザの身長をカメラ端末20や操作入力装置12から入力し、動作判定部16Cが、その身長に所定の係数を積算することにより、直線Lpの長さLの基準値L0を計算してもよい。さらには、予め基準姿勢を撮影して映像データ15Aに含めておき、その基準姿勢から基準値L0を抽出してもよい。
【0071】
判定データ15Cが前述した
図11の例のように設定されている場合、前述した
図5に示したスクワット動作については、変化率Rが第1判定範囲SR1の90%以上であれば、
図5(a)の立ち上がった第1の姿勢が検出されたと判定される。また、変化率Rが第2判定範囲SR2の60%以下であれば、
図5(b)のしゃがんだ第2の姿勢が検出されたと判定される。
【0072】
なお、本実施の形態にかかるその他の構成については、第1の実施の形態と同様であり、ここでの説明は省略する。
【0073】
[第2の実施の形態の動作]
次に、
図12を参照して、本実施の形態にかかるトレーニング動作カウント装置10の動作について説明する。
図12は、第2の実施の形態にかかるトレーニング動作カウント装置の動作を示すフローチャートである。ここでは、カウント動作を開始する前に、映像データ15Aと部位データ15Bが予め記憶装置15に保存されているものとする。
【0074】
なお、カウント動作を開始する前に、ユーザに合わせた基準値L0を設定してもよい。この場合には、動作判定部16Cが、カウント動作開始前にカメラ端末20や操作入力装置12から入力したユーザの身長を取得して、その身長に所定の係数を積算することにより、直線Lpの長さLの基準値L0を計算すればよい。また、基準値L0については、前述したように、映像データ15Aに含まれる基準姿勢から基準値L0を検出してもよい。さらに、第壱の実施の形態と同様に、得られた基準値L0に基づいて、判定データ15Cを変更してもよい。
【0075】
カウント動作において、まず、位置情報取得部16Bは、映像データ15Aの任意の1フレームを解析して身体の骨格情報を抽出し、得られた骨格情報から、部位データ15Bのうち対象となるトレーニング動作に対応する2つの部位Pa,Pbの位置情報(座標情報)を取得する(ステップ200)。
【0076】
続いて、動作判定部16Cは、位置情報取得部16Bで取得した位置情報に基づいて、2つの部位Pa,Pbを結ぶ直線Lpの長さLを検出し、基準値L0に対する長さLの変化率Rを検出する(ステップ201)。
【0077】
この後、動作判定部16Cは、検出された変化率Rを、判定データ15Cの第1判定範囲SR1と比較し、その比較結果に基づいて第1の姿勢か否かを判定する(ステップ202)。ここで、変化率Rが第1判定範囲SR1の範囲外である場合(ステップ202:NO)、ステップ200へ戻って後続するフレームに関する処理を実行する。
【0078】
ステップ202において、変化率Rが第1判定範囲SR1の範囲内である場合(ステップ202:YES)、位置情報取得部16Bは、映像データ15Aの後続するフレームを解析して身体の骨格情報を抽出し、得られた骨格情報から、部位データ15Bのうち対象となるトレーニング動作に対応する2つの部位Pa,Pbの位置情報(座標情報)を取得する(ステップ203)。
【0079】
続いて、動作判定部16Cは、位置情報取得部16Bで取得した位置情報に基づいて、2つの部位Pa,Pbを結ぶ直線Lpの長さLを検出し、基準値L0に対する長さLの変化率Rを検出する(ステップ204)。
【0080】
この後、動作判定部16Cは、検出された変化率Rを、判定データ15Cの第2判定範囲SR2と比較し、その比較結果に基づいて第2の姿勢か否かを判定する(ステップ205)。ここで、変化率Rが第2判定範囲SR2の範囲外である場合(ステップ205:NO)、ステップ203へ戻って後続するフレームに関する処理を実行する。
【0081】
ステップ205において、変化率Rが第2判定範囲SR2の範囲内である場合(ステップ205:YES)、動作カウント部16Dは、動作判定部16Cで第1および第2の姿勢が交互に検出されたことから、トレーニング動作を構成する一連の動作が正しく行われたと判断して、動作回数をカウントアップする(ステップ206)。
【0082】
この後、動作判定部16Cは、カウント動作を終了するか判断する(ステップ207)。この際、動作回数が規定回数に到達したり、カウント動作の中止操作が行われたりした場合、終了と判断すればよい。
【0083】
ステップ207において、カウント動作を継続する場合(ステップ207:NO)、ステップ200に戻って後続するフレームに関する処理を実行する。
【0084】
一方、カウント動作を終了する場合(ステップ207:YES)、動作判定部16Cは、カウント結果を画面表示装置13やカメラ端末20へ出力し(ステップ208)、一連の処理を終了する。
【0085】
このように、トレーニング動作の有効性は、2つの部位Pa,Pbを結ぶ直線Lpの長さLの基準値L0に対する変化率Rと判定データ15Cとの比較結果に基づいて判定される。この際、骨格情報が得られれば部位Pa,Pbを結ぶ直線Lpが特定できるため、前述の
図8に示したように、人の正面から撮影した場合でも前述と同様にして、直線Lpの長さLを容易に検出でき、関節動作時における変化率Rの変化度合は、カメラの位置や身体の向きが変化しても、その影響を受けにくいことがわかる。
【0086】
また、以上の説明では、スクワット動作を例にして説明したが、他のトレーニング動作についても同様に実施できる。前述の
図9や
図10に示したように、腕立て伏せ動作や腹筋動作の場合にも、2つの部位Pa,Pbを結ぶ直線Lpの長さLさらには変化率Rを容易に検出できる。また、これらについても、骨格情報が得られれば部位Pa,Pbを結ぶ直線Lpが特定できるため、関節動作時における変化率Rの変化度合は、カメラの位置や身体の向きが変化しても、その影響を受けにくいことがわかる。
【0087】
[第2の実施の形態の効果]
このように、本実施の形態は、演算処理装置16が、トレーニング動作の有効性を判定する際、予め設定されている基準値L0に対する直線Lpの長さLの変化率Rを、予め設定されている判定データ15Cと比較し、得られた比較結果に基づいてトレーニング動作の有効性を判定するように構成したものである。
【0088】
これにより、トレーニング動作の有効性が、基準値L0に対する2つの部位Pa,Pbを結ぶ直線Lpの長さLの変化率Rに基づいて判定されるため、関節動作時における変化率Rの変化度合は、カメラの位置や身体の向きが変化しても、その影響を受けにくい。このため、関節の角度に基づいてトレーニング動作の有効性を判定する場合と比較して、カメラの位置や身体の向きの調整を厳密に行う必要がなくなる。
【0089】
したがって、トレーニング動作の撮影に関する自由度が大きく、高いユーザビリティを得ることができる。また、直線Lpの長さLと比較して、その変化率Rは、人による長さLのばらつきからの影響を受けにくい。このため、第1の実施の形態と比較して、より安定したトレーニング動作の有効性判定さらにはカウント動作を実現できる。
【0090】
[実施の形態の拡張]
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。また、各実施形態については、矛盾しない範囲で任意に組み合わせて実施することができる。
【符号の説明】
【0091】
10…トレーニング動作カウント装置、11…通信I/F、12…操作入力装置、13…画面表示装置、14…カメラ、15…記憶装置、15A…映像データ、15B…部位データ、15C…判定データ、16…演算処理装置、16A…映像取得部、16B…位置情報取得部、16C…動作判定部、16D…動作カウント部、20…カメラ端末、LN…通信回線、NW…通信網、Pa,Pb…部位、Pj…関節、Lp…直線、L,L1,L2…長さ、L0…基準値、SL1,SR1…第1判定範囲、SL2,SR2…第2判定範囲、R…変化率。