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

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

▶ KDDI株式会社の特許一覧

特許7012631オブジェクト識別装置、識別システムおよび識別方法
<>
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図1
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図2
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図3
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図4
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図5
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図6
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図7
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図8
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図9
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図10
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図11
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図12
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図13
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図14
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図15
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図16
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図17
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図18
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図19
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図20
  • 特許-オブジェクト識別装置、識別システムおよび識別方法 図21
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-20
(45)【発行日】2022-02-14
(54)【発明の名称】オブジェクト識別装置、識別システムおよび識別方法
(51)【国際特許分類】
   G06T 7/70 20170101AFI20220204BHJP
   G06T 7/20 20170101ALI20220204BHJP
   A63B 69/00 20060101ALN20220204BHJP
【FI】
G06T7/70 B
G06T7/20 300Z
A63B69/00 C
【請求項の数】 15
(21)【出願番号】P 2018213719
(22)【出願日】2018-11-14
(65)【公開番号】P2020080096
(43)【公開日】2020-05-28
【審査請求日】2020-12-07
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100092772
【弁理士】
【氏名又は名称】阪本 清孝
(74)【代理人】
【識別番号】100119688
【弁理士】
【氏名又は名称】田邉 壽二
(72)【発明者】
【氏名】徐 建鋒
(72)【発明者】
【氏名】田坂 和之
【審査官】藤原 敬利
(56)【参考文献】
【文献】国際公開第2018/105171(WO,A1)
【文献】特開2017-187954(JP,A)
【文献】特開2017-111774(JP,A)
【文献】特開2005-191964(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00- 7/90
A63B 69/00
(57)【特許請求の範囲】
【請求項1】
カメラ画像をフレームメモリ上に展開して人物オブジェクトの姿勢推定を実行するオブジェクト識別装置において、
複数のユーザ端末が送信したカメラ画像の時系列を取得する手段と、
フレームメモリを仮想的に複数の部分領域に分割する手段と、
フレームメモリの各部分領域に各カメラ画像を配置することで複数のカメラ画像を1フレームに統合した統合フレーム画像を生成する手段と、
前記統合フレーム画像から生成した特徴マップに基づいて、人物オブジェクトの身体パーツの位置および連結性をボトムアップ的アプローチにより一回の推論で推定する姿勢推定手段とを具備したことを特徴とするオブジェクト識別装置。
【請求項2】
前記姿勢推定手段は、異なる部分領域から抽出された身体パーツの連結性を推定対象外とすることを特徴とする請求項1に記載のオブジェクト識別装置。
【請求項3】
前記姿勢推定手段は、部分領域ごとに人物オブジェクトの姿勢を推定することを特徴とする請求項1または2に記載のオブジェクト識別装置。
【請求項4】
前記分割する手段は、前記姿勢推定手段が出力する推定尤度に基づいて、当該推定尤度が高くなるほど分割する部分領域の数を多くすることを特徴とする請求項1ないし3のいずれかに記載のオブジェクト識別装置。
【請求項5】
前記ユーザ端末に対して、送信するカメラ画像のサイズ変更を要求する手段を更に具備したことを特徴とする請求項4に記載のオブジェクト識別装置。
【請求項6】
前記ユーザ端末に対して、カメラ画像の送信周期の変更を要求する手段を更に具備したことを特徴とする請求項4または5に記載のオブジェクト識別装置。
【請求項7】
前記フレームメモリが複数の部分領域に等分割されることを特徴とする請求項1ないし6のいずれかに記載のオブジェクト識別装置。
【請求項8】
前記フレームメモリが非等分割された部分領域を含むことを特徴とする請求項7に記載のオブジェクト識別装置。
【請求項9】
前記統合フレーム画像を生成する手段は、カメラ画像を送信したユーザの属性情報に基づいて、当該カメラ画像を配置する部分領域を決定することを特徴とする請求項1ないし8のいずれかに記載のオブジェクト識別装置。
【請求項10】
前記統合フレーム画像を生成する手段は、m個のカメラ画像を対象に、1番目からn(<m)番目の各カメラ画像をフレームメモリの各部分領域に配置して今回の統合フレーム画像を生成し、次の周期ではn+1番目からm番目の各カメラ画像を前記フレームメモリの各部分領域に配置して統合フレーム画像を生成し、これを後続のm個のカメラ画像ごとに繰り返すことを特徴とする請求項1ないし9のいずれかに記載のオブジェクト識別装置。
【請求項11】
複数のユーザ端末が送信したカメラ画像をオブジェクト識別装置のフレームメモリ上に展開して人物オブジェクトの姿勢推定を実行するオブジェクト識別システムにおいて、
前記各ユーザ端末が、
カメラ映像を所定のサンプリング周期でキャプチャする手段と、
前記キャプチャしたカメラ画像の時系列をオブジェクト識別装置へ送信する手段とを具備し、
前記オブジェクト識別装置が、
各ユーザ端末からカメラ画像の時系列を取得する手段と、
フレームメモリを仮想的に複数の部分領域に分割する手段と、
フレームメモリの各部分領域に各カメラ画像を配置することで複数のカメラ画像を1フレームに統合した統合フレーム画像を生成する手段と、
前記統合フレーム画像から生成した特徴マップに基づいて、人物オブジェクトの身体パーツの位置および連結性をボトムアップ的アプローチにより一回の推論で推定する姿勢推定手段とを具備したことを特徴とするオブジェクト識別システム。
【請求項12】
前記オブジェクト識別装置が、前記ユーザ端末に対してカメラ画像のサイズ変更を要求する手段を更に具備し、
前記ユーザ端末は、前記サイズ変更の要求に応じて、送信するカメラ画像のサイズを変更することを特徴とする請求項11に記載のオブジェクト識別システム。
【請求項13】
前記オブジェクト識別装置が、前記ユーザ端末に対してカメラ画像の送信周期の変更を要求する手段を更に具備し、
前記ユーザ端末は、前記変更の要求に応じて、カメラ画像の送信周期を変更することを特徴とする請求項11または12に記載のオブジェクト識別システム。
【請求項14】
前記ユーザ端末が、カメラ画像をトリミングする手段をさらに具備したことを特徴とする請求項11ないし13のいずれかに記載のオブジェクト識別システム。
【請求項15】
コンピュータが、カメラ画像をフレームメモリ上に展開して人物オブジェクトの姿勢推定を実行するオブジェクト識別方法において、
複数のユーザ端末が送信したカメラ画像の時系列を取得して記憶する手順と、
フレームメモリを仮想的に複数の部分領域に分割する手順と、
フレームメモリの各部分領域に各カメラ画像を配置することで複数のカメラ画像を1フレームに統合した統合フレーム画像を生成する手順と、
前記統合フレーム画像から生成した特徴マップに基づいて、人物オブジェクトの身体パーツの位置および連結性をボトムアップ的アプローチにより一回の推論で推定する手順とを含むことを特徴とするオブジェクト識別方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オブジェクト識別装置、識別システムおよび識別方法に係り、特に、人物オブジェクトを撮影した複数のカメラ画像を対象に身体パーツの位置および連結性をボトムアップ的アプローチにより推定し、各オブジェクトを識別するオブジェクト識別装置、識別システムおよび識別方法に関する。
【背景技術】
【0002】
防犯やマーケティングなどの分野において、カメラ画像に写る多数の人物オブジェクトの行動を識別する各種の技術が提案されている。従来は、カメラ画像から人物オブジェクトを抽出し、各人物オブジェクトのBounding Boxを検出した後に各Boxに対して姿勢推定を行うトップダウン方式を採用していた。しかしながら、トップダウン方式では識別対象の人物オブジェクト数に比例して計算量が増加してしまう。また、人物オブジェクトの抽出に失敗すると、その行動を識別することもできなくなる。
【0003】
このような技術課題に対して、非特許文献1には、Confidence MapとPart Affinity Fields(PAFs)を用いた二つの逐次予測プロセスにより、カメラ画像から抽出した人物オブジェクトの身体パーツの位置および連結性をボトムアップ的アプローチにより推定することで、人物オブジェクト数に関わらずリアルタイムで各オブジェクトの行動を高精度に推定する技術が開示されている。
【0004】
一方、健康の維持あるいは促進を目的として、自宅やトレーニングジムなどの施設でトレーニングを実施することがある。安全かつ有効なトレーニングには専門家の指導が不可欠となるが、自宅でのトレーニングでは専門家の指導を受けることが難しく、自己流のトレーニングになることになる。
【0005】
トレーニングジムにはトレーニング機器が揃い、専門の指導員が常駐する。しかしながら、トレーニングジムまで出向かなければならないので手軽さに欠ける。また、マンツーマンで指導を受けるためには相応のコスト負担を強いられ、時間的な拘束も増すことになる。
【0006】
このような技術課題に対して、特許文献1には、入力画像に映る人物の運動を認識する認識部と、認識された運動の有効性に応じて異なる仮想オブジェクトを入力画像に重畳する表示制御部とを備え、認識部により認識される運動の有効性を示すスコアを算出し、算出結果を入力画像に重畳することで、運動の有効性に関するフィードバックを目に見える形でユーザに呈示する画像処理装置が提案されている。
【0007】
非特許文献2には、トレーニングするユーザを撮影した映像をモーションセンサシステムで分析することで骨格情報を取得し、ユーザの筋力トレーニングの動作を検知し、検知したトレーニング動作を速度、角度の観点から支援する筋力トレーニング支援システムが開示されている。
【先行技術文献】
【特許文献】
【0008】
【文献】特開2013-103010号公報
【非特許文献】
【0009】
【文献】Z. Cao, T. Simon, S. Wei and Y. Sheikh, "Realtime Multi-person 2D Pose Estimation Using Part Affinity Fields," 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Honolulu, HI, 2017, pp. 1302-1310.
【文献】"Kinectを用いた筋力トレーニング支援システム",第77回全国大会講演論文集(P437-438,2015-03-17)
【発明の概要】
【発明が解決しようとする課題】
【0010】
ユーザ端末が送信する各ユーザのカメラ画像をサーバが取得し、適宜の分析アルゴリズムに適用して人物オブジェクトの行動を識別するためには、人物オブジェクトの写ったカメラ画像をGPUのフレームメモリ上に展開し、当該メモリ上で姿勢推定を実行することになる。
【0011】
非特許文献1のような姿勢推定アルゴリズムでは、人物オブジェクトの写ったカメラ画像がGPUのフレームメモリ上に展開される。このとき、一つのカメラ画像をフレームメモリの全域に展開してしまうと、一つのGPUで一つのカメラ画像内の人物の姿勢推定しか行えない。したがって、複数のユーザ端末から同時期に並行して多数のカメラ画像を受信する場合、リアルタイムでのオブジェクト識別を実現するためにはユーザ端末数分のGPUが必要となる。
【0012】
本発明の目的は、上記の技術課題を解決し、一つのGPUが低い処理負荷で複数のカメラ映像に対して同時並行的に姿勢推定を実現できるようにすることで、少ないGPUで、それぞれ別々の場所に存在する多数の人物オブジェクトの識別をリアルタイムで実現できるオブジェクトの識別装置、識別システムおよび識別方法を提供することにある。
【課題を解決するための手段】
【0013】
上記の目的を達成するために、本発明は、カメラ画像をフレームメモリ上に展開して人物オブジェクトの姿勢推定を実行するオブジェクト識別装置において、以下の構成を具備した点に特徴がある。
【0014】
(1) 複数のユーザ端末が送信したカメラ画像の時系列を取得する手段と、フレームメモリを仮想的に複数の部分領域に分割する手段と、フレームメモリの各部分領域に各カメラ画像を配置することで複数のカメラ画像を1フレームに統合した統合フレーム画像を生成する手段と、前記統合フレーム画像から生成した特徴マップに基づいて、人物オブジェクトの身体パーツの位置および連結性をボトムアップ的アプローチにより一回の推論で推定する姿勢推定手段とを具備した。
【0015】
(2) 姿勢推定手段は、異なる部分領域から抽出された身体パーツの連結性を推定対象外とすることで、部分領域ごとに人物オブジェクトの姿勢を推定するようにした。
【0016】
(3) 分割する手段は、姿勢推定手段が出力する推定尤度に基づいて、当該推定尤度が高くなるほど分割する部分領域の数を多くするようにした。
【0017】
(4) ユーザ端末に対して、送信するカメラ画像のサイズ変更を要求する手段を具備した。
【0018】
(5) ユーザ端末に対して、カメラ画像の送信周期の変更を要求する手段を具備した。
【0019】
(6) フレームメモリが非等分割された部分領域を含むようにし、カメラ画像を送信したユーザの属性情報に基づいて、当該カメラ画像を配置する部分領域を決定するようにした。
【0020】
(7) 統合フレーム画像を生成する手段は、m個のカメラ画像を対象に、1番目からn(<m)番目の各カメラ画像をフレームメモリの各部分領域に配置して今回の統合フレーム画像を生成し、次の周期ではn+1番目からm番目の各カメラ画像を前記フレームメモリの各部分領域に配置して統合フレーム画像を生成し、これを後続のm個のカメラ画像ごとに繰り返すようにした。
【発明の効果】
【0021】
本発明によれば、以下のような効果が達成される。
【0022】
(1) フレームメモリを仮想的に複数の部分領域に分割し、各部分領域に各ユーザのカメラ画像を配置することで統合フレーム画像を生成するので、少ないGPU数で多数のユーザの姿勢推定を同時に行えるようになる。
【0023】
(2) 異なる部分領域から抽出された身体パーツの連結性を推定対象外とし、部分領域ごとに人物オブジェクトの姿勢を推定するようにしたので、誤推定を抑制しつつ、複数のユーザの姿勢推定をGPUごとに同時かつ低負荷で行えるようになる。
【0024】
(3) 姿勢の推定尤度に基づいて、当該推定尤度が高くなるほど分割する部分領域の数を多くするようにしたので、信頼性の高い姿勢推定に必要な画像解像度を維持しながら、複数のユーザの姿勢推定をGPUごとに同時かつ低負荷で行えるようになる。
【0025】
(4) ユーザ端末に対して、カメラ画像のサイズ変更を要求する手段を設けたので、フレームメモリの分割数が変更されてカメラ画像のサイズを変更する必要が生じたときでも、サイズ変更の処理負荷が各ユーザ端末に分散されるので負荷集中を防止できるのみならず、サイズの縮小を要求すれば、ユーザ端末からサーバへのトラヒック量が減ぜられる。
【0026】
(5) ユーザ端末に対して、カメラ画像の送信周期の変更を要求する手段を設けたので、カメラ画像を送信するユーザ数が増えても、カメラ画像のバッファ溢れやリアルタイム処理の破綻を防止できるようになる。
【0027】
(6) フレームメモリが非等分割された部分領域を含むようにし、カメラ画像を送信したユーザの属性情報に基づいて、当該カメラ画像を配置する部分領域を決定するようにしたので、ユーザごとに提供するサービスを最適化できるようになる。
【0028】
(7) 統合フレーム画像を生成する手段は、m個のカメラ画像を対象に、1番目からn(<m)番目の各カメラ画像をフレームメモリの各部分領域に配置して今回の統合フレーム画像を生成し、次の周期ではn+1番目からm番目の各カメラ画像を前記フレームメモリの各部分領域に配置して統合フレーム画像を生成し、これを後続のm個のカメラ画像ごとに繰り返すので、GPUごとに、画像解像度の低下を抑えながら、フレームメモリの分割数を超える個数のカメラ画像を同時に処理できるようになる。
【図面の簡単な説明】
【0029】
図1】本発明を適用したトレーニング支援装置の構成を示したブロック図である。
図2】トレーニング支援サーバ(2)およびトレーニングDB(3)の主要部の構成を示した機能ブロック図である。
図3】トレーニングメニューの一覧を示した図である。
図4】トレーニングメニューの内容を管理するトレーニングテーブルの一例を示した図である。
図5】ユーザ端末(1),フレーム画像統合部(28)および姿勢推定部(29)の構成を示したブロック図である。
図6】カメラ画像のトリミング方法の例を示した図である。
図7】フレームメモリを等分割する例を示した図である。
図8】フレームメモリを非等分割する例を示した図である。
図9】上半身を左右に旋回させるバランス診断メニューを示した図である。
図10】左右の踵を一方ずつ順番に上げ下げするバランス診断メニューを示した図である。
図11】ユーザ端末(1)、トレーニング支援サーバ(2)およびトレーニングDB(3)間での通信および各種処理の手順を時系列で示したシーケンスフローである。
図12】トレーニング目的をユーザに選択される画面の例を示した図である。
図13】ユーザ端末の操作手順およびユーザ端末とユーザとの相対位置を調整させる画面の例を示した図である。
図14】体幹バランス診断用のガイダンスの表示例を示した図である。
図15】診断結果の表示例を示した図である。
図16】トレーニングメニューの開始画面の例を示した図である。
図17】今回のトレーニング内容の一覧表示の例を示した図である。
図18】トレーニングごとに内容や注意点の表示例を示した図である。
図19】トータルスコア画面の例を示した図である。
図20】トータルスコアの履歴を時系列で一覧表示する例を示した図である。
図21】フレーム画像統合部(28)による他の統合方法を示した図である。
【発明を実施するための形態】
【0030】
以下、図面を参照して本発明の実施の形態について詳細に説明する。図1は、本発明のオブジェクト識別装置を適用したトレーニング支援装置の主要部の構成を示したブロック図であり、ユーザ端末1、トレーニング支援サーバ2およびトレーニングDB3を主要な構成としている。
【0031】
ユーザ端末1は、動画撮影機能、無線通信機能およびディスプレイを備え、例えばスマートフォンで代替できる。トレーニング支援サーバ2は、ユーザ端末1からトレーニング中のユーザを撮影したトレーニング動画を、Wi-Fi、基地局BSおよびネットワークNW経由で取得し、その映像を分析して適正なトレーニング評価をユーザ端末1へ提供する。トレーニングDB3には、各ユーザの属性情報、多数のトレーニングメニューや診断メニューが記憶されている。
【0032】
図2は、前記トレーニング支援サーバ2およびトレーニングDB3の主要部の構成を示した機能ブロック図であり、トレーニングDB3は、属性情報記憶部31、トレーニングレベル記憶部32、診断メニュー記憶部33およびトレーニングメニュー記憶部34を含む。
【0033】
前記属性情報記憶部31には、ユーザIDごとに当該ユーザの属性情報として、年齢、性別、身長、体重、血圧、既往症などが記憶されている。トレーニングレベル記憶部32には、ユーザIDごとに現在のトレーニングレベルが記憶されている。診断メニュー記憶部33には、複数の診断メニューが記憶されている。
【0034】
トレーニングメニュー記憶部34には、複数のトレーニングメニューが記憶されている。図3は、トレーニングメニュー記憶部34に記憶されているトレーニングメニューの一覧を示した図であり、本実施形態では、「スクワット」、「アームツイスト」、「ウッドチョッパー」など、32種類のトレーニングメニューが用意されている。
【0035】
図4は、前記トレーニングメニューの内容を管理するトレーニングテーブルの一例を示した図であり、トレーニングメニューごとに、その効能(主に鍛える部位)、基準テンポ、左右の有無、音声ガイド識別子、指導ポイントおよびNG閾値等が登録されている。NG閾値とは、有効なトレーニングと認められない閾値条件であり、例えばトレーニングメニューが「スクワット」であれば、下脚の角度が40°以上であると有効なトレーニングと認められない。
【0036】
また、本実施形態では、ユーザのトレーニングレベルや属性情報に応じて最適なトレーニングメニューが選択されるように、多数のトレーニングメニューが複数のグループに分類され、また忌避情報として、例えば高血圧、心臓疾患、腰痛等の既往症ごとに不向きなトレーニングメニューも登録されている。
【0037】
図2へ戻り、前記トレーニング支援サーバ2において、入出力インタフェース21は、各ユーザ端末1との間に通信セッションを確立し、音声、映像またはテキスト等を利用したメッセージの送受信を行う。ユーザ認証部22は、ユーザ端末1から送信されるユーザIDとトレーニングDB3に登録されているユーザIDとを突き合わせることでユーザ認証を実施する。トレーニング目的受付部23は、ユーザがユーザ端末1から指定したトレーニング目的を受け付ける。
【0038】
フレーム画像統合部28および姿勢推定部29は、図5に示したように、各ユーザ端末1と協働して、複数のユーザ端末1から同時期に送信された複数のカメラ画像から、トレーニングするユーザの骨格情報を一回の推論で取得して各ユーザの姿勢推定を実行する。
【0039】
ユーザ端末1において、カメラ部101は、ユーザを動画撮影してカメラ映像を出力する。キャプチャ部102は、カメラ映像を所定のサンプリング周期でキャプチャすることで静止画の時系列に変換する。前記キャプチャ部102によるサンプリング周期は、後に詳述するように、トレーニング支援サーバ2から姿勢推定の尤度に応じてフィードバックされる変更要求に応答して変更され得る。
【0040】
トリミング部103は、図6に示したように、縦長または横長のキャプチャ画像からユーザの映っている中央部を矩形にトリミングする。なお、このようなトリミング処理は、前記カメラ部101で実施するようにしてもよい。画像縮小部104は、フレーム画像統合部28からフィードバックされるサイズ変更要求、あるいはユーザ端末1のネットワーク環境に応じて、前記矩形にトリミングされたカメラ画像の縮小率を変更する。
【0041】
本実施形態では、ユーザ端末1がWiFi経由でネットワークに接続する環境下であれば、例えばサイズが160×160、品質が0.65のJPEGフォーマットで圧縮されるのに対して、有線でネットワークに接続する環境下であれば、サイズが320×320、品質が0.65のJPEGフォーマットで圧縮される。また、4G回線でネットワークに接続する環境下であれば、例えばサイズが160×160、品質が0.45のJPEGフォーマットで圧縮される。
【0042】
送信部105は、縮小された矩形のカメラ画像の時系列(A1,A2,A3…)、(B1,B2,B3…)、(C1,C2,C3…)、(D1,D2,D3…)をWeb socketでトレーニング支援サーバ2へ順次に送信する。前記送信部105によるカメラ画像の送信周期は前記キャプチャ部102によるサンプリング周期に依存する。
【0043】
フレーム画像統合部28において、分割方法決定部281は、同時期にカメラ画像を送信するユーザ端末数、後述する姿勢推定において得られる推定尤度や認識率に基づいてフレームメモリMの分割方法を決定する。本実施形態では、多数のユーザ端末1からカメラ画像が送信されており、姿勢推定の尤度が十分であれば、例えば図7(a),(b)に示したように、フレームメモリMを仮想的に4等分割または9等分割し、各ユーザ端末1にいずれかの部分領域を割り当てる。
【0044】
リサイズ部282は、取得したJPEGフォーマットの各カメラ画像を復号し、更にフレームメモリMの各部分領域のサイズに応じてリサイズする。画像配置部283は、リサイズされた各カメラ画像(a1,a2,a3…)、(b1,b2,b3…)、(c1,c2,c3…)、(d1,d2,d3…)を、各ユーザ端末1に割り当てられた部分領域に順次に配置することで一の統合フレーム画像Iを所定の周期で順次に構築する。
【0045】
姿勢推定部29は、前記非特許文献1と同様に、前記一の統合フレーム画像Iに対して初めに特徴マップ抽出を行う。次いで、抽出した特徴マップに対して、身体パーツの位置をエンコードするConfidence Mapおよび身体パーツ間の連結性をエンコードするPart Affinity Fields(PAFs)を用いた二つの逐次予測プロセスを順次に適用し、統合フレーム画像から抽出した人物オブジェクト(ユーザ)の身体パーツの位置および連結性をボトムアップ的アプローチにより一回の推論で推定することでスケルトンモデルを構築する。
【0046】
このとき、異なる部分領域から抽出された身体パーツの連結性を推定対象外とする処理を実装することで、身体パーツの位置および連結性を部分領域ごとに、すなわちユーザごとにオブジェクトのスケルトンモデルを推定できるようになる。
【0047】
前記推定プロセスで得られる推定尤度は、フレーム画像統合部28に前記フレームメモリMの分割サイズ変更要求としてフィードバックされる。前記分割方法決定部281は、推定尤度が十分に高く、かつカメラ画像を送信するユーザ端末数が所定の閾値を上回っていると、例えば図7(b)に示したように、フレームメモリMを仮想的に9等分割するなどして一フレームに統合するカメラ画像数を増加させる。前記リサイズ部282は、変更後の等分割数に応じてカメラ画像をリサイズする。
【0048】
これに対して、推定尤度が低下して所定の下限値を下回ると、例えば9等分割中であれば4等分割に、4等分割中であれば分割無しとするといったように、1フレームに統合するカメラ画像数を減じ、高い解像度を維持することで十分な推定尤度を確保する。
【0049】
前記姿勢推定部29は、ユーザ端末ごとに抽出された身体パーツの位置および連結性(以下、骨格情報で総称する場合もある)を含む姿勢推定の結果を、後段のバランス診断部24またはトレーニング評価部26へ順次に転送する。
【0050】
このように、本実施形態では姿勢の推定尤度に基づいて、1フレームに統合するカメラ画像数を適応的に変更できるので、推定精度を低下させることなく複数ユーザの行動認識を一つのGPUで同時に行えるようになる。
【0051】
なお、上記の実施形態ではGPUのフレームメモリMを等分割して各部分領域に各カメラ画像を同サイズで配置するものとして説明したが、本発明はこれのみに限定されるものではなく、図8に示したように、例えば契約しているサービスの内容や料金に応じてユーザごとに非等分割することで各部分領域の大きさを異ならせてもよい。
【0052】
このようにすれば、例えば専門的な診断サービスや料金のより高いサービスを契約しているユーザには優先ユーザとしてより大きな部分領域を割り当てることができる。したがって、例えば指先の動きや顔の表情といったように、高解像のカメラ画像でなければ推定できない骨格情報を用いた高度な診断が可能になる。
【0053】
なお、各ユーザが優先ユーザであるか否かの情報は、予めユーザIDと対応付けて当該ユーザの属性情報の一つとして前記属性情報記憶部31に登録しておき、ユーザ認証時にユーザIDに基づいて判別するようにしてもよい。
【0054】
さらに、上記の実施形態では前記姿勢推定部29における推定尤度が低下するとフレームメモリMの分割数を減じるものとして説明したが、フレームメモリMの分割数を減じただけでは各ユーザ端末から取得したカメラ画像の処理が滞ってしまい、トレーニング支援サーバ側にバッファ溢れ等の不都合が生じうる。
【0055】
そこで、本実施形態ではトレーニング支援サーバ2における統合フレーム画像Iの処理レートが各ユーザ端末1によるカメラ画像の送信レートを下回るようになると、トレーニング支援サーバ2から各ユーザ端末1へカメラ画像の送信周期を低下させる変更要求が送信される。
【0056】
各ユーザ端末1では、前記キャプチャ部102が前記変更要求に応答して、ユーザを撮影した動画像から静止画をキャプチャする際のサンプリング周期を長くし、これと同期するようにカメラ画像の送信周期を低下させる。その結果、カメラ画像を送信するユーザ数が増えても、カメラ画像のバッファ溢れやリアルタイム処理の破綻を防止できるようになる。
【0057】
図2へ戻り、バランス診断部24は、診断メニュー選択部241、診断メニュー配信部242および第1行動認識部243を含み、バランス診断運動を実施するユーザの骨格情報から推定した姿勢に基づいて体幹の左右バランスを診断する。
【0058】
前記診断メニュー選択部241は、ユーザの属性情報、トレーニング目的およびトレーニングレベルに基づいて、ユーザの体幹バランスを診断するための診断メニューを前記診断メニュー記憶部33から選択する。診断メニュー配信部242は、前記選択された診断メニューをユーザ端末1へ配信し、そのディスプレイに表示させる。
【0059】
第1行動認識部243は、診断メニューを実施するユーザの診断映像から抽出した骨格情報に基づいてユーザの行動認識を実行する。骨格情報に基づく行動認識手法は、例えば前記非特許文献1に開示されている。バランス診断部24は、行動認識の結果に基づいて当該ユーザの体幹バランスを診断できる。
【0060】
図9,10は、ユーザの体幹バランスを評価するために、前記診断メニュー配信部242により配信される診断メニューの一例を示した図であり、図9のように、上半身を左右に旋回させる診断メニュー、あるいは図10に示したように、左右の踵を一方ずつ順番に上げ下げする診断メニューが各ユーザに配信される。
【0061】
前記第1行動認識部243は、図9の診断メニューを実施するユーザの診断映像から推定したユーザの姿勢およびその変化に基づいて、左旋回の角度と右旋回の角度とを比較し、その差分に基づいて体幹バランスを診断できる。図10の診断メニューを実施するユーザの診断映像を取得すると、左踵を上げた時と右踵を上げた時との腰位置の高さを比較することで体幹バランスを診断できる。
【0062】
体調診断部25は、バランス診断メニューを実施するユーザの映像に基づいて当該ユーザの現在の体調を診断する。このような体調診断は、例えばバランス診断メニューを実施するユーザを撮影した診断映像に基づいて、当該ユーザの動きのテンポを計測することで実現できる。
【0063】
トレーニング評価部26は、トレーニングメニュー選択部261,トレーニングメニュー配信部262、第2行動認識部263、改善ポイント指導部264、トレーニング質判定部265、トレーニング量カウント部266、スコア計算部267および評価結果配信部268を含み、トレーニングを実施するユーザのトレーニング映像から推定した姿勢を分析し、特定部位の遷移を観測することでトレーニングを評価する。
【0064】
前記トレーニングメニュー選択部261は、ユーザのトレーニング目的、体幹バランスの診断結果およびトレーニングレベル、更には必要に応じて当該ユーザの属性情報や体調に基づいて、現時点で当該ユーザに最適なトレーニングメニューを前記トレーニングDB3から選択する。
【0065】
トレーニングメッセージ配信部262は、前記選択されたトレーニングメニューをユーザ端末1へ配信する。第2行動認識部263は、配信したトレーニングメニューを実施するユーザのトレーニング映像から推定した姿勢の変化に基づいて当該ユーザの行動認識を行う。
【0066】
改善ポイント指導部264は、前記ユーザの行動認識の結果に基づいて、前記図4に示した各「指導ポイント」が、対応する各「NG閾値」をクリアしているか否かを判断し、NG閾値をクリアできていなければ当該指導ポイントを改善ポイントとする指導をユーザに対して行う。
【0067】
本実施形態では、例えばトレーニングメニュー「スクワット」に関して、「下脚の角度」が指導ポイントの一つとして登録されており、そのNG閾値が「40°以上」とされている。前記改善ポイント指導部264は、前記行動認識の結果に基づいて下脚の角度を判別し、これが40°以上であれば、音声番号「201」に登録された指導メッセージをトレーニングDB3から選択してユーザ端末1へ配信する。当該指導メッセージには、たとえば「下脚をもっと曲げてください」といった内容が登録されている。なお、指導メッセージは音声メッセージに限定されず、音声付きの映像メッセージであっても良い。
【0068】
トレーニング質判定部265は、前記改善ポイント指導部264が指導した改善ポイントの指導回数やトレーニングのテンポなどに基づいてトレーニングの質を判断する。本実施形態では、改善ポイントの指導回数が多いほど、またトレーニングのテンポとして、例えば所定の動き(例えば、屈伸)に要する時間を計測し、当該テンポが標準テンポから外れるほど、トレーニングの質が低いと判定され、判定結果が例えば0.5(質が低い)~1(質が高い)の値に定量化、正規化される。
【0069】
トレーニング量カウント部266は、前記行動認識の結果を予め用意されている評価ポリシーに適用することでユーザのトレーニング量をカウントする。本実施形態では、配信したトレーニングメニューごとに、骨格の所定部位が所定の順序で所定の遷移条件を充足したことがカウント条件として規定され、トレーニング映像から取得した骨格情報に基づいて、前記カウント条件が充足されるごとにトレーニング量がカウントされる。
【0070】
例えば、提供したトレーニングメニューがスクワットであれば、屈伸した際の膝の角度θ、1回の屈伸に要する時間(テンポ)t、屈伸時における頭と肘との側面視での相対位置Pなどが評価項目として登録されており、前記角度θ,時間tおよび相対位置Pが所定の条件を満足した回数がカウントされる。
【0071】
スコア計算部267は、前記トレーニング量のカウント値に前記トレーニングの質に関する判断結果を反映して今回のトレーニングをスコア化する。本実施形態では、トレーニングの質に応じてトレーニング量のカウント値を減じてスコア化するものとし、例えば、トレーニング量のカウント値が「100」であり、トレーニングの質が「0.8」であれば、スコアは100×0.8=80として計算される。以上のようにしてスコア化された評価結果は、前記評価結果配信部268によりユーザ端末1へ配信される。
【0072】
トレーニング情報更新部27は、前記ユーザIDと対応付けて前記トレーニングレベル記憶部32に記憶されている当該ユーザのトレーニングレベルを今回の評価結果に基づいて更新する。トレーニングレベルは、初めはレベル1からスタートし、トレーニング量の累計が所定の基準値を超えるごとにレベル2、レベル3…レベルN(上級)へと更新される。
【0073】
図11は、前記ユーザ端末1、トレーニング支援サーバ2およびトレーニングDB3間での通信および各種処理の手順を時系列で示したシーケンスフローである。
【0074】
時刻t1において、ユーザがユーザ端末1に予め実装されているトレーニング支援アプリケーションを起動すると、時刻t2では、ユーザ認証が実施されてユーザ端末1とトレーニング支援サーバ2との間に通信セッションが確立される。
【0075】
時刻t3では、図12(a)に示したように、ユーザ端末1のディスプレイ上に、今回のトレーニング目的をユーザに入力させるための選択画面が表示される。ユーザが「ダイエット」を選択すると、同図(b)に示したように、ダイエットを希望する具体的な部位を選択させる画面が表示される。本実施形態では、「全身」,「体幹・お腹周り」,「上半身・二の腕」,「下半身・ピップアップ」のいずれかを選択できる。
【0076】
一方、前記選択画面で「コンディショニング」を選択すると、同図(c)に示したように、気になる症状を選択させる画面が表示される。本実施形態では、「肩こり改善」,「腰痛改善」,「柔軟性向上」のいずれかを選択できる。
【0077】
時刻t4では、前記選択されたトレーニング目的およびその「部位」または「症状」がユーザ端末1からトレーニング支援サーバ2へ送信される。時刻t5では、トレーニング支援サーバ2が、前記ユーザIDに基づいてトレーニングDB3の属性情報記憶部31およびトレーニングレベル記憶部32を参照し、当該ユーザの属性情報およびトレーニングレベルを抽出する。そして、当該抽出した属性情報およびトレーニングレベル、ならびに前記送信されたトレーニング目的に基づいて、前記図9または図10に示したバランス診断メニューを選択する。
【0078】
時刻t6では、前記選択されたバランス診断メニューがユーザ端末1へ送信される。時刻t7では、ユーザ端末1の内蔵カメラが動画撮影モードで起動される。時刻t8では、図13に示したように、ユーザ端末1の操作手順およびユーザ端末1とユーザとの相対位置を調整するための画面が、ユーザ端末1のディスプレイにスクロール形式で表示される。
【0079】
ここで、ユーザが「測定開始」ボタンをタップ等すると、時刻t9では、図14(a)に示したように、ユーザ端末1のディスプレイに、体幹バランス診断用のガイダンスが表示される。ここで、ユーザがメッセージ「画面の人型ガイドに合わせて、カメラの正面に立ってください」に応じて、ディスプレイ上での自身の表示位置をガイドに合わせると、同図(b)に示したように、前記バランス診断メニューが開始され、映像およびメッセージにしたがって体を動かすことが要求される。ユーザが前記バランス診断メニューに基づいて体を動かすと、時刻t10以降、その映像がユーザ端末1からトレーニング支援サーバ2へ診断映像として送信される。
【0080】
時刻t11では、トレーニング支援サーバ2のバランス診断部24において前記ユーザの体幹バランスが評価される。体調診断部25は、バランス診断映像におけるユーザの顔色や動き(テンポ)を分析してユーザの現在の体調を診断する。時刻t12では、前記診断結果がユーザ端末1へ配信される。時刻t13では、図15に示したように、前記診断結果がユーザ端末1のディスプレイに表示される。
【0081】
本実施形態では、ユーザが選択したトレーニング目的「ダイエット」および気になる部位「お腹周り」と共に、体幹バランスの診断結果として「左重心」が表示されている。
【0082】
前記診断結果画面でユーザが「決定」ボタンをタップすると、時刻t14では、トレーニング支援サーバ2のトレーニングメニュー選択部261が、前記体幹バランスの分析結果、トレーニング目的,ユーザのトレーニングレベル及び現在の体調、更には必要に応じて当該ユーザの属性情報を、予め構築されているトレーニングメニュー選択ポリシーに適用することで、現在のユーザに最適なトレーニングメニューを前記トレーニングメニュー記憶部34から選択する。
【0083】
例えば、体調診断の結果が「良好」であれば、体幹バランス、トレーニングレベルおよびトレーニング目的に適合するトレーニングメニューが選択される。これに対して、体調診断の結果が「不調」であれば、体幹バランス、トレーニングレベルおよびトレーニング目的に適合するトレーニングメニューよりも負荷の低いトレーニングメニューが選択される。なお、体調の「不調」の程度によっては今回のトレーニングを推奨しない旨のメッセージが配信されるようにしても良い。
【0084】
また、ユーザの属性情報を更に考慮するのであれば、年齢や性別に応じてトレーニングメニューの負荷を増減させても良い。あるいは、既往症として「高血圧」が登録されているユーザであれば血圧を上昇させにくいトレーニングメニューが選択されえるようにしても良い。同様に、既往症として「腰痛」が登録されているユーザであれば、腰の負担が少ないトレーニングメニューが選択されるようにしても良い。
【0085】
時刻t15では、トレーニング支援サーバ2からユーザ端末1へ、前記選択したトレーニングメニューがトレーニングメニュー配信部262により配信される。時刻t16では、図16に示したように、前記選択されたトレーニングメニューが表示される。
【0086】
図16は、トレーニングメニューの開始画面の例を示した図であり、前記選択されたトレーニングメニューの内容および説明が表示される。
【0087】
本実施形態では、トレーニング数が「4」であり、時間目安が20分であり、トレーニング内容が4回とも「リバースランジ」である旨が表示されている。ユーザは提案されたメニューを完全に消化する必要は無く、例えば時間的な制約や体調から一部を実施したくない場合は、時刻t17において、実施したくないトレーニングの案件をタップ等することでスキップすることもできる。
【0088】
以上のようにして、トレーニングメニューの修正が完了すると、図17に示したように、今回のトレーニング内容が一覧表示される。この場合、前記スキップされたトレーニングはグレーアウトされる。
【0089】
ユーザがトレーニング開始ボタンをタップすると、時刻t18においてトレーニングメニューがスタートし、図18に示したように、実施するトレーニングごとにトレーニング内容や注意点が表示される。
【0090】
時刻t19では、トレーニングするユーザを撮影したトレーニング映像がフレーム単位でトレーニング支援サーバ2へ送信される。時刻t20では、トレーニング支援サーバ2のトレーニング評価部26が、前記トレーニング映像から推定したユーザの姿勢の変化に基づいて行動認識を行う。
【0091】
時刻t21では、前記評価結果がユーザ端末1へ送信され、時刻t22でユーザ端末1のディスプレイに表示される。時刻t23では、今回のスコアを過去のスコアの履歴情報に累積することで既登録のトレーニングレベルが更新される。
【0092】
本実施形態では、トレーニングレベルが例えば第1レベル(初級)から第5レベル(上級)まで規定されており、第nレベルにおいて獲得したスコアの累計が所定の閾値を上回ると、次の第n+1レベルに昇格するように構成されている。
【0093】
図19は、トレーニング後にユーザ端末に表示される評価結果の一例を示した図であり、実施したトレーニング内容、各トレーニングの個別スコアおよびメッセージが時系列で一覧表示されると共に、今回のトレーニングのトータルスコア「390」が表示されている。
【0094】
前記トータルスコアは履歴情報として管理されており、図20に示したように時系列で一覧表示させることもできる。これにより、ユーザはトレーニングの履歴を容易に確認することができるようになり、特にスコアを参照することで、トレーニングレベルが向上していることを客観的に感じることができるので、トレーニングに対するモチベーションの向上が期待できる。
【0095】
図21は、前記フレーム画像統合部28の他の画像統合方法を模式的に示した図である。
【0096】
上記の実施形態では、例えばフレームメモリMを4等分割して4つのカメラ画像(a,b,c,d)を統合[同図(a)]することで、同時に4人のユーザを対象に姿勢推定を実施しているときに、ユーザ数が増えて8つのカメラ画像(a,b,c,d,e,f,g,h)を統合する必要が生じると、フレームメモリMが適応的に9等分割[同図(b)]され、最大で9人のユーザに対して同時に姿勢推定を実施できるものとして説明した。
【0097】
しかしながら、本発明はこれのみに限定されるものではなく、同図(c)に示したように、フレームメモリMの4等分割は維持したまま、統合対象のカメラ画像集合を2つのグループ(a,b,c,d)および(e,f,g,h)に分類し、フレーム単位で統合するグループを順次に切り換えることで、一つのGPUで8人のユーザに対して実質的に同時に姿勢推定を実施できるようにしても良い。
【0098】
すなわち、k番目の処理ではフレームメモリMに一方のグループのカメラ画像集合(a1,b1,c1,d1)を配置し、k+1番目の処理では他方のグループのカメラ画像集合(e1,f1,g1,h1)を配置し、k+2番目の処理では再び一方のグループのカメラ画像集合(a2,b2,c2,d2)を配置し…といったように、各グループのカメラ画像集合を順番に統合するようにしても良い。
【0099】
このように、m個のカメラ画像を対象に、1番目からn(<m)番目の各カメラ画像をフレームメモリの各部分領域に配置して今回の統合フレーム画像を生成し、次の周期ではn+1番目からm番目の各カメラ画像を前記フレームメモリの各部分領域に配置して統合フレーム画像を生成し、これを後続のm個のカメラ画像ごとに繰り返せば、GPUごとに、画像解像度の低下を抑えながら、フレームメモリの分割数を超える個数のカメラ画像を同時に処理できるようになる。
【0100】
なお、トレーニング支援サーバ2におけるフレーム画像の処理レートが各ユーザ端末1によるカメラ画像の送信周期を下回ると、トレーニング支援サーバ側にバッファ溢れ等の不都合が生じうる。そこで、本実施形態でもトレーニング支援サーバ2におけるフレーム画像の処理レートが各ユーザ端末1によるカメラ画像の送信周期を下回ると、トレーニング支援サーバ2から各ユーザ端末1へカメラ画像の送信周期を低下させる変更要求が送信される。
【0101】
各ユーザ端末1は、同図(d)に一例を示したように、前記変更要求に応答して、ユーザを撮影した動画像から静止画をキャプチャする際のサンプリング周期を長くし、これと同期するようにカメラ画像の送信周期を低下させる。
さらに、上記の実施形態では、カメラ画像のキャプチャ部102、トリミング部103および縮小部104をユーザ端末1に設けるものとして説明したが、本発明はこれのみに限定されるものではなく、これらの全てまたは一部をトレーニング支援サーバ2に設けるようにしてもよい。
【符号の説明】
【0102】
1…ユーザ端末,2…トレーニング支援サーバ,3…トレーニングDB,22…ユーザ認証部,23…トレーニング目的受付部,24…バランス診断部,25…体調診断部,26…トレーニング評価部,27…トレーニング情報更新部,28…フレーム画像統合部,29…姿勢推定部,31…属性情報記憶部,32…トレーニングレベル記憶部,33…診断メニュー記憶部,34…トレーニングメニュー記憶部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21