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