IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ オムロン株式会社の特許一覧

特開2022-170090動作解析装置、動作解析方法、動作解析プログラム及び動作解析システム
<>
  • 特開-動作解析装置、動作解析方法、動作解析プログラム及び動作解析システム 図1
  • 特開-動作解析装置、動作解析方法、動作解析プログラム及び動作解析システム 図2
  • 特開-動作解析装置、動作解析方法、動作解析プログラム及び動作解析システム 図3
  • 特開-動作解析装置、動作解析方法、動作解析プログラム及び動作解析システム 図4
  • 特開-動作解析装置、動作解析方法、動作解析プログラム及び動作解析システム 図5
  • 特開-動作解析装置、動作解析方法、動作解析プログラム及び動作解析システム 図6
  • 特開-動作解析装置、動作解析方法、動作解析プログラム及び動作解析システム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022170090
(43)【公開日】2022-11-10
(54)【発明の名称】動作解析装置、動作解析方法、動作解析プログラム及び動作解析システム
(51)【国際特許分類】
   G06T 7/20 20170101AFI20221102BHJP
   G06T 7/00 20170101ALI20221102BHJP
【FI】
G06T7/20 300Z
G06T7/00 350B
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2021075979
(22)【出願日】2021-04-28
(71)【出願人】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100139066
【弁理士】
【氏名又は名称】伊藤 健太郎
(72)【発明者】
【氏名】西田 一貴
(72)【発明者】
【氏名】浅井 恭平
(72)【発明者】
【氏名】赤塚 真由美
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096CA04
5L096DA04
5L096KA04
(57)【要約】
【課題】動作時に意識すべき要因を提示することができる動作解析装置を提供する。
【解決手段】特定の目的を達成するために行われた動作に関する時系列情報を入力とし、動作により生ずる結果に関する結果情報を出力とするように学習させた学習済モデル19bと、解析対象動作に関する対象時系列情報を受け取る受取部12と、受け取られた対象時系列情報を学習済モデル19bに入力して推定される結果情報に基づいて、解析対象動作において、結果情報の推定に寄与する要因を示す説明情報を抽出する抽出部13と、抽出された説明情報に基づいて、解析対象動作に対する解析結果に関する情報を出力する出力部14と、を備える。
【選択図】図1
【特許請求の範囲】
【請求項1】
特定の目的を達成するために行われた動作に関する時系列情報を入力とし、前記動作により生ずる結果に関する結果情報を出力とするように学習させた学習済モデルと、
解析対象動作に関する対象時系列情報を受け取る受取部と、
受け取られた前記対象時系列情報を前記学習済モデルに入力して推定される結果情報に基づいて、前記解析対象動作において、前記結果情報の推定に寄与する要因を示す説明情報を抽出する抽出部と、
抽出された前記説明情報に基づいて、前記解析対象動作に対する解析結果に関する情報を出力する出力部と、
を備える動作解析装置。
【請求項2】
前記受取部は、前記解析対象動作により生じた結果に関する対象結果情報をさらに受け取り、
前記抽出部は、受け取られた前記対象時系列情報を前記学習済モデルに入力して推定される結果情報に基づいて、前記解析対象動作において、前記対象結果情報の推定に寄与する要因を示す説明情報を抽出する、
請求項1記載の動作解析装置。
【請求項3】
前記説明情報には、前記推定に寄与した前記解析対象動作の開始から終了までの間のいずれかのタイミング及び前記推定に寄与した身体部位を示す情報が含まれる、
請求項1又は2記載の動作解析装置。
【請求項4】
前記時系列情報は、骨格データであり、前記身体部位は、関節である、
請求項3記載の動作解析装置。
【請求項5】
プロセッサにより実行される方法であって、
特定の目的を達成するために行われた動作に関する時系列情報を入力とし、前記動作により生ずる結果に関する結果情報を出力とするようにモデルを学習させ、学習済モデルを作成すること、
解析対象動作に関する対象時系列情報を受け取ること、
受け取られた前記対象時系列情報を前記学習済モデルに入力して推定される結果情報に基づいて、前記解析対象動作において、前記結果情報の推定に寄与する要因を示す説明情報を抽出すること、
抽出された前記説明情報に基づいて、前記解析対象動作に対する解析結果に関する情報を出力すること、
を含む動作解析方法。
【請求項6】
コンピュータを、
特定の目的を達成するために行われた動作に関する時系列情報を入力とし、前記動作により生ずる結果に関する結果情報を出力とするように学習させた学習済モデル、
解析対象動作に関する対象時系列情報を受け取る受取部、
受け取られた前記対象時系列情報を前記学習済モデルに入力して推定される結果情報に基づいて、前記解析対象動作において、前記結果情報の推定に寄与する要因を示す説明情報を抽出する抽出部、
抽出された前記説明情報に基づいて、前記解析対象動作に対する解析結果に関する情報を出力する出力部、
として機能させる動作解析プログラム。
【請求項7】
センサ端末と動作解析装置とを備える動作解析システムであって、
前記センサ端末は、
特定の目的を達成するために行われた動作を検知して前記動作に関する時系列情報を出力する検出部と、
出力された前記時系列情報を、解析対象動作に関する対象時系列情報として送信する送信部と、
を備え、
前記動作解析装置は、
前記時系列情報を入力とし、前記動作により生じた結果に関する結果情報を出力とするように学習させた学習済モデルと、
前記対象時系列情報を受け取る受取部と、
受け取られた前記対象時系列情報を前記学習済モデルに入力して推定される結果情報に基づいて、前記解析対象動作において、前記結果情報の推定に寄与する要因を示す説明情報を抽出する抽出部と、
抽出された前記説明情報に基づいて、前記解析対象動作に対する解析結果に関する情報を出力する出力部と、
を備える、
動作解析システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動作解析装置、動作解析方法、動作解析プログラム及び動作解析システムに関する。
【背景技術】
【0002】
各種スポーツの育成現場や工場等の生産現場では、選手の動作や作業者の動作を分析することにより、選手の能力や作業者の技能等を評価することがある。例えば、下記特許文献1には、運動中の選手の動きを客観的に評価する評価システムが開示されている。
【0003】
この評価システムでは、選手の一連の動きを表す動きデータの中から評価対象となるプレイや演技を分類型機械学習を利用して識別し、その識別したプレイや演技の完成度を回帰型機械学習を利用して評価する。これにより、選手のプレイや演技がどの程度完成されたものであるのかを選手やコーチが認識できるようになる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2018-68516号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、スポーツ等をしている際に、今のプレイは上手くいった気がするが何故上手くいったのかはわからないと感じることが多い。例えば、ダーツをプレイしていてボードの中心にダーツが刺さったときに、どのようなタイミングでどの関節を動かしたからボードの中心にダーツを刺すことができたのかを理解することは困難である。
【0006】
特許文献1の評価システムでは、プレイに対する評価を提示することはできるが、どのような要因で上手くいったのかを提示することはできない。
【0007】
そこで、本発明は、動作時に意識すべき要因を提示することができる動作解析装置、動作解析方法、動作解析プログラム及び動作解析システムを提供する。
【課題を解決するための手段】
【0008】
本開示の一態様に係る動作解析装置は、特定の目的を達成するために行われた動作に関する時系列情報を入力とし、動作により生ずる結果に関する結果情報を出力とするように学習させた学習済モデルと、解析対象動作に関する対象時系列情報を受け取る受取部と、受け取られた対象時系列情報を学習済モデルに入力して推定される結果情報に基づいて、解析対象動作において、結果情報の推定に寄与する要因を示す説明情報を抽出する抽出部と、抽出された説明情報に基づいて、解析対象動作に対する解析結果に関する情報を出力する出力部と、を備える。
【0009】
この態様によれば、解析対象動作に関する時系列情報を学習済モデルに入力することで推定される結果情報に基づいて、解析対象動作のどの部分が結果に対してどのように影響を及ぼしているのかを説明する情報を時系列情報から抽出し、その抽出した情報に基づいて、解析対象動作に対する解析結果を出力すること可能となる。
【0010】
上記態様において、受取部は、解析対象動作により生じた結果に関する対象結果情報をさらに受け取り、抽出部は、受け取られた対象時系列情報を学習済モデルに入力して推定される結果情報に基づいて、解析対象動作において、対象結果情報の推定に寄与する要因を示す説明情報を抽出する、こととしてもよい。
【0011】
この態様によれば、学習済モデルの精度が低い場合には、解析対象動作により生じた結果に対して解析対象動作のどの部分がどのように影響を及ぼしているのかを説明する情報を抽出することが可能となる。
【0012】
上記態様において、説明情報には、推定に寄与した解析対象動作の開始から終了までの間のいずれかのタイミング及び推定に寄与した身体部位を示す情報が含まれる、こととしてもよい。
【0013】
この態様によれば、解析対象動作を行うときに、意識すべき身体部位や動きのタイミングをユーザが客観的に認識できるようになる。
【0014】
上記態様において、時系列情報は、骨格データであり、身体部位は、関節である、こととしてもよい。
【0015】
この態様によれば、解析対象動作を行うときに、意識すべき関節や動きのタイミングを骨格データを見ながら客観的に認識できるようになる。
【0016】
本開示の他の態様に係る動作解析方法は、プロセッサにより実行される方法であって、特定の目的を達成するために行われた動作に関する時系列情報を入力とし、動作により生ずる結果に関する結果情報を出力とするようにモデルを学習させ、学習済モデルを作成すること、解析対象動作に関する対象時系列情報を受け取ること、受け取られた対象時系列情報を学習済モデルに入力して推定される結果情報に基づいて、解析対象動作において、結果情報の推定に寄与する要因を示す説明情報を抽出すること、抽出された説明情報に基づいて、解析対象動作に対する解析結果に関する情報を出力すること、を含む。
【0017】
この態様によれば、解析対象動作に関する時系列情報を学習済モデルに入力することで推定される結果情報に基づいて、解析対象動作のどの部分が結果に対してどのように影響を及ぼしているのかを説明する情報を時系列情報から抽出し、その抽出した情報に基づいて、解析対象動作に対する解析結果を出力すること可能となる。
【0018】
本開示の他の態様に係る動作解析プログラムは、コンピュータを、特定の目的を達成するために行われた動作に関する時系列情報を入力とし、動作により生ずる結果に関する結果情報を出力とするように学習させた学習済モデル、解析対象動作に関する対象時系列情報を受け取る受取部、受け取られた対象時系列情報を学習済モデルに入力して推定される結果情報に基づいて、解析対象動作において、結果情報の推定に寄与する要因を示す説明情報を抽出する抽出部、抽出された説明情報に基づいて、解析対象動作に対する解析結果に関する情報を出力する出力部、として機能させる。
【0019】
この態様によれば、解析対象動作に関する時系列情報を学習済モデルに入力することで推定される結果情報に基づいて、解析対象動作のどの部分が結果に対してどのように影響を及ぼしているのかを説明する情報を時系列情報から抽出し、その抽出した情報に基づいて、解析対象動作に対する解析結果を出力すること可能となる。
【0020】
本開示の他の態様に係る動作解析システムは、センサ端末と動作解析装置とを備える動作解析システムであって、センサ端末は、特定の目的を達成するために行われた動作を検知して動作に関する時系列情報を出力する検出部と、出力された時系列情報を、解析対象動作に関する対象時系列情報として送信する送信部と、を備え、動作解析装置は、時系列情報を入力とし、動作により生じた結果に関する結果情報を出力とするように学習させた学習済モデルと、対象時系列情報を受け取る受取部と、受け取られた対象時系列情報を学習済モデルに入力して推定される結果情報に基づいて、解析対象動作において、結果情報の推定に寄与する要因を示す説明情報を抽出する抽出部と、抽出された説明情報に基づいて、解析対象動作に対する解析結果に関する情報を出力する出力部と、を備える。
【0021】
この態様によれば、解析対象動作に関する時系列情報を学習済モデルに入力することで推定される結果情報に基づいて、解析対象動作のどの部分が結果に対してどのように影響を及ぼしているのかを説明する情報を時系列情報から抽出し、その抽出した情報に基づいて、解析対象動作に対する解析結果を出力すること可能となる。
【発明の効果】
【0022】
本発明によれば、動作時に意識すべき要因を提示することができる動作解析装置、動作解析方法、動作解析プログラム及び動作解析システムを提供することができる。
【図面の簡単な説明】
【0023】
図1】本発明の実施形態に係る動作解析システムの構成を例示する図である。
図2】対象結果情報を入力する画面の一例を示す図である。
図3】解析結果に基づいて、センサ端末のディスプレイに表示される映像の一例を示す図である。
図4】本実施形態に係る動作解析装置のハードウェア構成を例示する図である。
図5】本実施形態に係る動作解析装置により実行される学習用データ記憶処理のフローチャートである。
図6】本実施形態に係る動作解析装置により実行されるモデル学習処理のフローチャートである。
図7】本実施形態に係る動作解析装置により実行される動作解析処理のフローチャートである。
【発明を実施するための形態】
【0024】
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」と表記する。)を、図面に基づいて説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
【0025】
§1 適用例
まず、図1を用いて、本発明が適用される場面の一例について説明する。本実施形態に係る動作解析システム100は、例えば、ユーザAの動作をスマートフォン等のセンサ端末20のカメラで撮影し、撮影した映像から抽出されるモーションデータ(時系列情報の一例)とユーザAの動作により生じた結果とを、解析対象動作と解析対象結果として動作解析装置10に送信する。そして、動作解析装置10が、解析対象動作を学習済モデル19bに入力することで推定される結果情報に基づいて、解析対象結果になると推定した場合にどのような要因が寄与したのかを説明する説明情報を抽出し、その説明情報をユーザAの動作を解析した結果としてセンサ端末20に出力する。
【0026】
ここで、動作解析装置10は、解析対象動作を学習済モデル19bに入力することで出力される結果に基づいて、その結果になると推定した場合にどのような要因が寄与したのかを説明する説明情報を抽出することとしてよい。
【0027】
上記ユーザAの動作は、例えば、ダーツのプレイでダーツボードに向けてダーツを投げる動作や、パターゴルフでカップに向けてゴルフボールをパットする動作、卓球で狙ったコースに卓球のボールを打ち返す動作等が該当する。
【0028】
上記ユーザAの動作により生じた結果は、例えば、ダーツボードに向けてダーツを投げる場合には、ダーツがダーツボードの中心に刺さった、ダーツボードの中心より上に外れた、ダーツボードの中心より下に外れた、ダーツボードの中心より右に外れた、ダーツボードの中心より左に外れた、ダーツボードから外れた等が該当する。
【0029】
学習済モデル19bは、ユーザの動作を示すモーションデータを入力とし、その動作により生じた結果に関する結果情報を出力とするように学習させたAIモデルである。例えば、学習済モデル19bは、ダーツをボードに向けて投げる動作を示すモーションデータを入力とし、ダーツがボードの中心に刺さったか否かを示す結果情報を出力とする。学習済モデル19bの詳細は、後述する。
【0030】
上記説明情報には、例えば、解析対象動作の開始から終了までの間のいずれかのタイミング、及び身体部位を示す情報が含まれる。以下に具体的に説明する。
【0031】
解析対象結果の内容が、ダーツがボードの中心に刺さったという内容である場合、説明情報には、「モーションデータの開始3秒後から4秒後まで」というタイミングを示す情報と、「右肘」という身体部位を示す情報とが含まれ得る。この場合、「ボードの中心に刺さったのは、モーションデータの開始3秒後から4秒後までの右肘の動きに要因がある」ということがわかる。つまり、ユーザは、モーションデータの開始3秒後から4秒後までの動きのうち右肘の動きを意識することで、ダーツが中心に刺さる可能性を高められることを学ぶことができる。
【0032】
このように、本実施形態に係る動作解析装置10によれば、動作時に意識すべき要因をユーザに提示することが可能となる。
【0033】
§2 構成例
[機能構成]
次に、図1を用いて、本実施形態に係る動作解析システム100の機能構成について、その一例を説明する。動作解析システム100は、センサ端末20と、動作解析装置10とを備える。センサ端末20と動作解析装置10とは、通信ネットワークNを介して接続される。
【0034】
<センサ端末20>
センサ端末20は、例えば、カメラ付きのスマートフォンであり、ユーザAが動作を行っている場面をカメラで撮影し、撮影した映像からモーションデータを抽出して動作解析装置10に送信する。
【0035】
モーションデータには、例えば、ユーザの骨格の動きを示す骨格データ、ユーザの動きを示す座標値データ及びユーザの動きを示すセンサデータ等が含まれるが、動作解析装置10に送信するのは、モーションデータに限定されない。ユーザの動きを示す時系列情報であればよく、そのような時系列情報には、モーションデータの他、ユーザの動きを撮影した動画も含まれる。
【0036】
骨格データは、例えば、スマートフォンにインストールされる骨格検出アプリケーションによって検出することができる。座標値データは、例えば、センサ端末20の替わりに備えるモーションキャプチャによって測定することができる。センサデータは、例えば、センサ端末20の替わりに備える加速度センサやジャイロセンサによって測定することができる。加速度センサやジャイロセンサはユーザに装着させることが好ましい。動画は、例えば、スマートフォンのカメラによって撮影することができる。なお、動画を用いる場合には、動画を受け取った動作解析装置10で骨格データ等のモーションデータを検出することとすればよい。
【0037】
本実施形態では、例示的に、モーションデータとして骨格データを用いる場合について説明する。
【0038】
センサ端末20は、機能的な構成として、例えば、検知部、入力受付部及び送信部を有する。検知部は、ユーザAの動作を検知し、ユーザAの骨格の動きを示すモーションデータを出力する。
【0039】
入力受付部は、ユーザAの動作により生じた結果に関する結果情報の入力を受け付ける。
【0040】
送信部は、検知部から出力されたモーションデータ及び入力受付部に入力された結果情報を動作解析装置10に送信する。動作解析装置10に送信するモーションデータは、解析対象動作に関するモーションデータ(以下、「対象モーションデータ」という。)として送信される。動作解析装置10に送信する結果情報は、解析対象動作により生じた結果に関する結果情報(以下、「対象結果情報」という。)として送信される。
【0041】
図2に、対象結果情報を入力するための画面を例示する。同図の画面は、ダーツボードに向けてダーツを投げた結果を入力する画面である。センサ端末20のディスプレイには、ダーツが刺さった場所の座標を入力する欄Faと、ダーツを投げた結果を識別するためのラベルIDを入力する欄Fbとが設けられる。座標は、例えば、ダーツボードの中心を原点とするXY座標により表すことができる。ラベルIDは、例えば、ダーツボード上の位置や領域に応じて設定することができる。ダーツボード上の位置や領域として、例えば、ダーツボードの中心、中心よりも上側、中心よりも下側、中心よりも右側、中心よりも左側等を設けることができる。
【0042】
<動作解析装置10>
図1に示す動作解析装置10は、機能的な構成として、例えば、学習部11、受取部12、抽出部13、出力部14及び記憶部19を有する。記憶部19は、例えば、学習用データ19a及び学習済モデル19bを記憶する。各機能構成について、以下に記載する。
【0043】
<学習用データ19a>
学習用データ19aは、特定の目的を達成するために行われる動作に関する時系列情報であるモーションデータと、その動作により生ずる結果に関する結果情報とを含む。モーションデータと結果情報とは対応付けて記憶される。
【0044】
特定の目的を達成するために行われる動作として、例えば、ダーツのプレイでダーツボードに向けてダーツを投げる動作や、パターゴルフでカップに向けてゴルフボールをパットする動作、卓球で狙ったコースに卓球のボールを打ち返す動作等が該当する。
【0045】
結果情報は、上記の動作ごとに複数設定することができる。ユーザは、動作を行った後に、複数設定された結果情報のうち該当する一つの結果情報をセンサ端末20に入力することになる。動作ごとに設定する複数の結果情報を以下に例示する。
【0046】
動作が、ダーツボードに向けてダーツを投げる動作である場合には、ダーツがダーツボードの中心に刺さった、ダーツボードの中心より上に外れた、ダーツボードの中心より下に外れた、ダーツボードの中心より右に外れた、ダーツボードの中心より左に外れた、ダーツボードから外れた等を、結果情報として設定することができる。
【0047】
動作が、カップに向けてゴルフボールをパットする動作である場合には、ボールがカップインした、ボールがカップに届かなかった、ボールがカップよりも遠くまで転がった等を、結果情報として設定することができる。
【0048】
動作が、狙ったコースに卓球のボールを打ち返す動作である場合には、狙ったコースに打てた、狙ったコースよりも上に外れた、狙ったコースよりも下に外れた、狙ったコースよりも右に外れた、狙ったコースよりも左に外れた等を、結果情報として設定することができる。
【0049】
<学習済モデル19b>
学習済モデル19bは、学習用データ19aを用いて学習させたAIモデルであり、後述の学習部11により作成される。
【0050】
<学習部11>
学習部11は、学習用データ19aのモーションデータを入力とし、学習用データ19aの結果情報を出力とするようにAIモデルを学習させることで、学習済モデル19bを作成する。AIモデルを学習させる手法として、例えば、GCN(Graph Convolutional Networks)、ST-GCN(Spatial Temporal GCN)を用いることができる。
【0051】
例えば、ダーツボードに向けてダーツを投げる動作を示すモーションデータを学習済モデル19bに入力すると、ダーツボードの中心にダーツが刺さったか否かを示す結果情報を学習済モデル19bから出力することができる。
【0052】
<受取部12>
受取部12は、対象モーションデータ及び対象結果情報をセンサ端末20から受け取る。
【0053】
<抽出部13>
抽出部13は、対象モーションデータを学習済モデル19bに入力して推定される結果情報に基づいて、対象モーションデータにおいて、対象結果情報の推定に寄与する要因を示す説明情報を抽出する。
【0054】
対象モーションデータを学習済モデル19bに入力して推定される結果情報として、例えば、動作の結果として設定されている複数の結果と、それぞれの結果になる確率とを含むことができる。具体的に、ダーツを投げた結果として、「ボードの中心に刺さった」と、「ボードの中心に刺さらなかった」とが設定されている場合を例にして説明する。
【0055】
この場合、推定される結果情報には、例えば、「ボードの中心に刺さった」確率が40%であり、「ボードの中心に刺さらなかった」確率が60%である、という情報が含まれ得ることになる。
【0056】
ここで、学習済モデル19bの精度が100%又は100%に近ければ、対象モーションデータを入力することで出力される結果と対象結果情報の結果とが一致又は略一致することになる。この場合、抽出部13は、学習済モデル19bから出力される結果に基づいて、その結果に対応する説明情報を抽出することとすればよい。
【0057】
これに対し、学習済モデル19bの精度が低い場合には、学習済モデル19bから出力される結果と、実際の結果とが異なるケースが出現することになる。そのような場合を想定し、抽出部13は、実際の結果である対象結果情報の結果になると推定した条件で、どのような要因が寄与したのかを説明する説明情報を抽出することとしてよい。例えば、実際にダーツを投げた結果が「ボードの中心に刺さった」であったときに、その対象モーションデータを学習済モデル19bに入力して推定された結果情報が、「ボードの中心に刺さった」確率が40%、「ボードの中心に刺さらなかった」確率が60%であったとする。このとき、抽出部13は、学習済モデル19bが「ボードの中心に刺さった」と推定した条件で、どのような要因が寄与したのかを説明する説明情報を抽出する。
【0058】
説明情報には、例えば、結果の推定に寄与した対象モーションデータの開始から終了までの間のいずれかのタイミング、及び結果の推定に寄与した身体部位を示す情報が含まれる。また、対象モーションデータの動きに対して各身体部位がどの程度重要であるのかを示すスコア(動きの重要度)を説明情報に含めてもよい。
【0059】
上記のタイミングは、例えば、対象モーションデータの開始時点からの経過時間(例えば秒)であってもよいし、対象モーションデータの開始時点からの経過フレーム数であってもよい。
【0060】
上記の身体部位は、例えば、肩、肘、手首等の関節により特定することができる。この場合、上記の動きの重要度は、各関節部位ごとに算出する。
【0061】
説明情報を抽出する手法として、例えば、CAM(Class Activation Mapping)、Grad-CAM(Gradient-weighted CAM)、Grad-CAM++、ABN(Attention Branch Network)、HITL-ABN(Human-in-the-loop ABN)等、任意の説明可能なAI(Explainable AI)に基づく可視化手法を用いることができる。
【0062】
<出力部14>
出力部14は、抽出部13により抽出された説明情報に基づいて、解析対象動作に対する解析結果に関する情報を出力する。
【0063】
解析結果に関する情報について、具体例を用いて以下に説明する。
【0064】
(1)結果情報が、「ボードの中心に刺さらなかった」であり、説明情報が、「対象モーションデータの開始3秒後から4秒後まで」というタイミングを示す情報と、「右肘」という身体部位を示す情報とを含む場合:
【0065】
解析結果に関する情報として、「ボードの中心に刺さらなかった」のは、「モーションデータの開始3秒後から4秒後までの右肘の動き」に要因があることを示す情報が出力される。
【0066】
(2)結果情報が、「ボードの中心に刺さった」であり、説明情報が、「対象モーションデータの開始3秒後から4秒後まで」というタイミングを示す情報と、「右肘」及び「右手首」という身体部位を示す情報とを含む場合:
【0067】
解析結果に関する情報として、「ボードの中心に刺さった」のは、「モーションデータの開始3秒後から4秒後までの右肘及び右手首の動き」に要因があることを示す情報が出力される。
【0068】
センサ端末20は、出力部14から出力された解析結果に関する情報に基づいて、カメラで撮影されているユーザの動きに重ね合わせて骨格データを表示する。以下に具体的に説明する。
【0069】
図3は、上記(2)の解析結果に関する情報に基づいて、センサ端末20のディスプレイに表示される映像の一場面である。
【0070】
センサ端末20のディスプレイには、ダーツを投げる動作を繰り返すユーザの映像Maに重ね合わせて、解析結果に関する情報に基づく骨格データMbが表示されている。
【0071】
骨格データMbの各関節部位は、例えば動きの重要度に応じて色分けして表示することができる。例えば、動きの重要度が高くなるに従って、赤、白、青の順に色を変えることとしてもよい。
【0072】
上記(2)の解析結果に関する情報の場合、「開始3秒後から4秒後までの右肘及び右手首の動き」が重要になる。したがって、開始3秒後から4秒後までの骨格データMbのうち、右肘及び右手首の関節部位が青色に表示され、その他の関節部位は赤色に表示されることになる。
【0073】
このような映像を提供することで、ダーツを投げるときにユーザが意識すべき関節部位や動きのタイミングを客観的に認識できようになる。
【0074】
なお、解析結果に関する情報に基づく骨格データを表示する際に、ユーザの動きに重ね合わせて表示することには限定されず、ユーザの周辺に骨格データを並べて表示してもよい。また、カメラで撮影されているユーザの動きに合わせて骨格データを表示することにも限定されない。例えば、モーションデータを抽出する際に用いた動画を保存しておき、その動画を再生したときに、動画のユーザの動きに合わせて骨格データを表示してもよい。また、ユーザの動きに合わせて、動きの重要度のみを表示してもよい。さらに、例えば、「開始3秒後から4秒後までの右肘及び右手首の動きが重要です」という文言を表示することとしてもよい。
【0075】
[ハードウェア構成]
次に、図4を用いて、本実施形態に係る動作解析装置10のハードウェア構成について、その一例を説明する。動作解析装置10は、演算装置に相当するCPU(Central Processing Unit)10aと、記憶部19に相当するRAM(Random Access Memory)10bと、記憶部19に相当するROM(Read only Memory)10cと、通信装置10dと、受取部12に相当する入力装置10eと、出力部14に相当する出力装置10fとを有する。これらの各構成は、バスを介して相互にデータを送受信できるように接続される。なお、本実施形態では動作解析装置10が一台のコンピュータで構成される場合について説明するが、動作解析装置10は、複数のコンピュータを用いて実現されてもよい。
【0076】
CPU10aは、RAM10b又はROM10cに記憶されたプログラムを実行し、データの演算や加工を行う制御部として機能する。CPU10aは、入力装置10eや通信装置10dから種々の入力データを受信し、入力データを演算した結果を出力装置10fから出力したり、RAM10bやROM10cに格納したりする。本実施形態におけるCPU10aは、モーションデータの動作から推定される結果に基づいて、その結果に寄与する要因を説明する解析結果を出力するプログラム(動作解析プログラム)を実行する。なお、演算装置は、CPUに限定されず、例えばGPU(Graphics Processing Unit)等の他のプロセッサであってもよい。
【0077】
RAM10bは、例えば半導体記憶素子で構成され、書き換え可能なデータを記憶する。ROM10cは、例えば半導体記憶素子で構成され、読み出し可能かつ書き換え不可能なデータを記憶する。
【0078】
通信装置10dは、動作解析装置10を外部機器に接続するインターフェースである。通信装置10dは、例えば、LAN(Local Area Network)やインターネット等の通信ネットワークによりセンサ端末20と接続され、センサ端末20からモーションデータを受信する。
【0079】
入力装置10eは、ユーザからデータの入力を受け付けるインターフェースであり、例えば、キーボード、マウス及びタッチパネルを含むことができる。
【0080】
出力装置10fは、CPU10aによる演算結果等を出力するインターフェースである。出力装置10fは、視覚的に表示するインターフェースであってもよい。この場合、例えば、LCD(Liquid Crystal Display)により構成することができる。
【0081】
動作解析プログラムは、RAM10bやROM10c等のコンピュータによって読み取り可能な記憶媒体に記憶されて提供されてもよいし、通信装置10dにより接続される通信ネットワークを介して提供されてもよい。動作解析装置10は、CPU10aが動作解析プログラムを実行することで、図1に示す学習部11、受取部12、抽出部13及び出力部14の動作が実現される。なお、これらの物理的な構成は例示であって、必ずしも独立した構成でなくてもよい。例えば、動作解析装置10は、CPU10aとRAM10bやROM10cとが一体化したLSI(Large-Scale Integration)を備えることとしてもよい。
【0082】
§3 動作例
図5を参照して、本実施形態に係る動作解析装置10により実行される学習用データ記憶処理の一例を説明する。
【0083】
最初に、動作解析装置10の受取部12は、ユーザが特定の目的を達成するために行った動作のモーションデータをセンサ端末20から受信する(ステップS101)。
【0084】
続いて、動作解析装置10の受取部12は、上記ステップS101で受信したモーションデータに対応する結果情報をセンサ端末20から受信する(ステップS102)。
【0085】
続いて、動作解析装置10の記憶部19は、上記ステップS101で受信されたモーションデータと、上記ステップS102で受信された結果情報とを対応付けて、学習用データ19aとして記憶する(ステップS103)。そして、学習用データ記憶処理を終了する。
【0086】
図6を参照して、本実施形態に係る動作解析装置10により実行されるモデル学習処理の一例を説明する。
【0087】
最初に、動作解析装置10の学習部11は、学習用データ19aのモーションデータを入力とし、学習用データ19aの結果情報を出力とするようにAIモデルを学習させる(ステップS201)。
【0088】
続いて、動作解析装置10の記憶部19は、上記ステップS201の学習により作成された学習済モデル19bを記憶する(ステップS202)。そして、モデル学習処理を終了する。
【0089】
図7を参照して、本実施形態に係る動作解析装置10により実行される動作解析処理の一例を説明する。
【0090】
最初に、動作解析装置10の受取部12は、対象モーションデータをセンサ端末20から受信する(ステップS301)。
【0091】
続いて、動作解析装置10の受取部12は、対象モーションデータに対応する対象結果情報をセンサ端末20から受信する(ステップS302)。
【0092】
続いて、動作解析装置10の抽出部13は、上記ステップS301で受信された対象モーションデータを学習済モデル19bに入力して推定される結果情報に基づいて、対象モーションデータにおいて、上記ステップS302で受信された対象結果情報の推定に寄与する要因を示す説明情報を抽出する(ステップS303)。
【0093】
続いて、動作解析装置10の出力部14は、上記ステップS303で抽出された説明情報に基づいて、解析対象動作に対する解析結果に関する情報を出力する(ステップS304)。そして、動作解析処理を終了する。
【0094】
これにより、センサ端末20のディスプレイに、解析結果に関する情報に基づく骨格データを表示できるようになる。
【0095】
前述したように、本実施形態に係る動作解析装置10によれば、解析対象動作に関するモーションデータを学習済モデル19bに入力することで推定される結果情報に基づいて、解析対象動作のどのタイミングにおけるどの身体部位が結果に対してどのように影響を及ぼしているのかを説明する情報をモーションデータから抽出し、その抽出した情報に基づいて、解析対象動作に対する解析結果を出力すること可能となる。
【0096】
さらに、本実施形態に係る動作解析装置10によれば、学習済モデル19bの精度が低い場合には、解析対象動作により実際に生じた結果に対して解析対象動作のどのタイミングにおけるどの身体部位がどのように結果に影響を及ぼしているのかを説明する情報を抽出することが可能となる。
【0097】
それゆえ、本実施形態に係る動作解析装置10によれば、動作時に意識すべき要因を提示することができる。
【0098】
本発明の実施形態は、以下の付記のようにも記載され得る。ただし、本発明の実施形態は、以下の付記に記載した形態に限定されない。また、本発明の実施形態は、付記間の記載を置換したり、組み合わせたりした形態であってもよい。
【0099】
[付記1]
特定の目的を達成するために行われた動作に関する時系列情報を入力とし、前記動作により生ずる結果に関する結果情報を出力とするように学習させた学習済モデル(19b)と、
解析対象動作に関する対象時系列情報を受け取る受取部(12)と、
受け取られた前記対象時系列情報を前記学習済モデル(19b)に入力して推定される結果情報に基づいて、前記解析対象動作において、前記結果情報の推定に寄与する要因を示す説明情報を抽出する抽出部(13)と、
抽出された前記説明情報に基づいて、前記解析対象動作に対する解析結果に関する情報を出力する出力部(14)と、
を備える動作解析装置(10)。
【0100】
[付記2]
前記受取部(12)は、前記解析対象動作により生じた結果に関する対象結果情報をさらに受け取り、
前記抽出部(13)は、受け取られた前記対象時系列情報を前記学習済モデルに入力して推定される結果情報に基づいて、前記解析対象動作において、前記対象結果情報の推定に寄与する要因を示す説明情報を抽出する、
付記1記載の動作解析装置(10)。
【0101】
[付記3]
前記説明情報には、前記推定に寄与した前記解析対象動作の開始から終了までの間のいずれかのタイミング及び前記推定に寄与した身体部位を示す情報が含まれる、
付記1又は2記載の動作解析装置(10)。
【0102】
[付記4]
前記時系列情報は、骨格データであり、前記身体部位は、関節である、
付記3記載の動作解析装置(10)。
【0103】
[付記5]
プロセッサにより実行される方法であって、
特定の目的を達成するために行われた動作に関する時系列情報を入力とし、前記動作により生ずる結果に関する結果情報を出力とするようにモデルを学習させ、学習済モデル(19b)を作成すること、
解析対象動作に関する対象時系列情報を受け取ること、
受け取られた前記対象時系列情報を前記学習済モデル(19b)に入力して推定される結果情報に基づいて、前記解析対象動作において、前記結果情報の推定に寄与する要因を示す説明情報を抽出すること、
抽出された前記説明情報に基づいて、前記解析対象動作に対する解析結果に関する情報を出力すること、
を含む動作解析方法。
【0104】
[付記6]
コンピュータを、
特定の目的を達成するために行われた動作に関する時系列情報を入力とし、前記動作により生ずる結果に関する結果情報を出力とするように学習させた学習済モデル(19b)、
解析対象動作に関する対象時系列情報を受け取る受取部(12)、
受け取られた前記対象時系列情報を前記学習済モデル(19b)に入力して推定される結果情報に基づいて、前記解析対象動作において、前記結果情報の推定に寄与する要因を示す説明情報を抽出する抽出部(13)、
抽出された前記説明情報に基づいて、前記解析対象動作に対する解析結果に関する情報を出力する出力部(14)、
として機能させる動作解析プログラム。
【0105】
[付記7]
センサ端末(20)と動作解析装置(10)とを備える動作解析システム(100)であって、
前記センサ端末(20)は、
特定の目的を達成するために行われた動作を検知して前記動作に関する時系列情報を出力する検出部と、
出力された前記時系列情報を、解析対象動作に関する対象時系列情報として送信する送信部と、
を備え、
前記動作解析装置(10)は、
前記時系列情報を入力とし、前記動作により生じた結果に関する結果情報を出力とするように学習させた学習済モデル(19b)と、
前記対象時系列情報を受け取る受取部(12)と、
受け取られた前記対象時系列情報を前記学習済モデル(19b)に入力して推定される結果情報に基づいて、前記解析対象動作において、前記結果情報の推定に寄与する要因を示す説明情報を抽出する抽出部(13)と、
抽出された前記説明情報に基づいて、前記解析対象動作に対する解析結果に関する情報を出力する出力部(14)と、
を備える、
動作解析システム(100)。
【符号の説明】
【0106】
10…動作解析装置、10a…CPU、10b…RAM、10c…ROM、10d…通信装置、10e…入力装置、10f…出力装置、11…学習部、12…受取部、13…抽出部、14…出力部、19…記憶部、19a…学習用データ、19b…学習済モデル、20…センサ端末、100…動作解析システム、N…通信ネットワーク、A…ユーザ、Ma…ユーザの映像、Mb…骨格データ
図1
図2
図3
図4
図5
図6
図7