(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-19
(45)【発行日】2023-07-27
(54)【発明の名称】骨格追跡方法、装置およびプログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20230720BHJP
G06T 7/70 20170101ALI20230720BHJP
【FI】
G06T7/00 660B
G06T7/70 A
(21)【出願番号】P 2020033081
(22)【出願日】2020-02-28
【審査請求日】2022-02-07
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100092772
【氏名又は名称】阪本 清孝
(74)【代理人】
【識別番号】100119688
【氏名又は名称】田邉 壽二
(72)【発明者】
【氏名】中塚 智尋
(72)【発明者】
【氏名】田坂 和之
(72)【発明者】
【氏名】西村 仁志
【審査官】笠田 和宏
(56)【参考文献】
【文献】特開2019-016106(JP,A)
【文献】特開2004-118485(JP,A)
【文献】特開平08-101893(JP,A)
【文献】Jihye Hwang,外3名,Pose estimator and tracker using temporal flow maps for limbs,2019 International Joint Conference on Neural Networks (IJCNN),2019年07月14日
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G06T 7/70
(57)【特許請求の範囲】
【請求項1】
関節点の追跡結果に基づいて人物の骨格を推定する骨格追跡装置において、
時系列画像の各フレームから関節点の位置
と各フレームで検出された当該関節点の位置を中心とした局所的範囲の画像特徴である見え特徴量
とを検出する関節点検出手段と、
検出履歴のある関節点ごとに、その位置および見え特徴量の
集合である見え特徴量の履歴を関節点追跡フローとして記憶する記憶手段と、
フレーム画像から検出した各関節点が各関節点追跡フローに対応する確信度を、それぞれの位置および見え特徴量
の類似度に基づいて推定する確信度推定手段と、
確信度が最も高い対応関係にある関節点と関節点追跡フローとの組み合わせに基づいて人物毎に骨格を推定する骨格推定手段とを具備し、
前記確信度推定手段は、フレーム画像から検出した関節点の見え特徴量と検出履歴のある関節点の見え特徴量の集合との類似度に基づいて確信度を推定することを特徴とする骨格追跡装置。
【請求項2】
前記骨格の推定結果に基づいて関節点追跡フローを更新する更新手段を具備したことを特徴とする請求項1に記載の骨格追跡装置。
【請求項3】
前記更新手段は、関節点の位置を確信度が最も高い対応関係にある関節点追跡フローに更新登録し、関節点の見え情報を確信度が最も高い対応関係にある関節点追跡フローに履歴として追加することを特徴とする請求項2に記載の骨格追跡装置。
【請求項4】
前記更新手段は、追加しようとする見え特徴量との類似度が所定の基準値を超える見え特徴量の履歴が関節点追跡フローに既登録であると、当該見え特徴量を追加しないことを特徴とする請求項3に記載の骨格追跡装置。
【請求項5】
前記更新手段は、関節点追跡フローに登録されている見え特徴量の履歴数が所定数を超えると、類似度が所定の基準値を超える見え特徴量ペアの一方を削除することを特徴とする請求項2ないし4のいずれかに記載の骨格追跡装置。
【請求項6】
前記確信度推定手段は、関節点の見え特徴量と関節点追跡フローの各見え特徴量の履歴との類似度を算出し、各類似度の平均値,最大値および中央値のいずれかに基づいて確信度を推定することを特徴とする請求項1ないし5のいずれかに記載の骨格追跡装置。
【請求項7】
コンピュータが関節点の追跡結果に基づいて人物の骨格を推定する骨格追跡方法において、
時系列画像の各フレームから関節点の位置
と各フレームで検出された当該関節点の位置を中心とした局所的範囲の画像特徴である見え特徴量
とを検出し、
検出履歴のある関節点ごとに、その位置および見え特徴量の
集合である見え特徴量の履歴を関節点追跡フローとして記憶し、
フレーム画像から検出した各関節点が各関節点追跡フローに対応する確信度を、それぞれの位置および見え特徴量
の類似度に基づいて推定し、
確信度が最も高い対応関係にある関節点と関節点追跡フローとの組み合わせに基づいて人物毎に骨格を推定
し、
前記確信度は、フレーム画像から検出した関節点の見え特徴量と検出履歴のある関節点の見え特徴量の集合との類似度に基づいて推定されることを特徴とする骨格追跡方法。
【請求項8】
前記骨格の推定結果に基づいて関節点追跡フローを更新することを特徴とする請求項7に記載の骨格追跡方法。
【請求項9】
前記関節点追跡フローを更新する際に、関節点の位置を確信度が最も高い対応関係にある関節点追跡フローに更新登録し、関節点の見え情報を確信度が最も高い対応関係にある関節点追跡フローに履歴として追加することを特徴とする請求項8に記載の骨格追跡方法。
【請求項10】
関節点の追跡結果に基づいて人物の骨格を推定する骨格追跡プログラムにおいて、
時系列画像の各フレームから関節点の位置
と各フレームで検出された当該関節点の位置を中心とした局所的範囲の画像特徴である見え特徴量
とを検出する手順と、
検出履歴のある関節点ごとに、その位置および見え特徴量の
集合である見え特徴量の履歴を関節点追跡フローとして記憶する手順と、
フレーム画像から検出した各関節点が各関節点追跡フローに対応する確信度を、それぞれの位置および見え特徴量
の類似度に基づいて推定する手順と、
確信度が最も高い対応関係にある関節点と関節点追跡フローとの組み合わせに基づいて人物毎に骨格を推定する手順とを、コンピュータに実行させ
、
前記確信度を推定する手順は、フレーム画像から検出した関節点の見え特徴量と検出履歴のある関節点の見え特徴量の集合との類似度に基づいて確信度を推定することを特徴とする骨格追跡プログラム。
【請求項11】
前記骨格の推定結果に基づいて関節点追跡フローを更新する手順を含むことを特徴とする請求項10に記載の骨格追跡プログラム。
【請求項12】
前記更新する手順は、関節点の位置を確信度が最も高い対応関係にある関節点追跡フローに更新登録し、関節点の見え情報を確信度が最も高い対応関係にある関節点追跡フローに履歴として追加することを特徴とする請求項11に記載の骨格追跡プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、骨格追跡方法、装置およびプログラムに係り、特に、時系列画像上で人物の関節点を追跡して骨格を推定する骨格追跡方法、装置およびプログラムに関する。
【背景技術】
【0002】
骨格追跡とは、時系列画像において人物の骨格およびその動きを推定する技術であり、特に、時系列画像内に複数の人物が存在することを前提とした場合、大別して2つのアプローチが存在する。
【0003】
第1のアプローチは、非特許文献1,2に開示されるように、各フレームにおいて人物の関節点を検出し、複数のフレームで検出された全ての関節点についてフレーム内およびフレーム間で最適な接続を求めることで関節点追跡と骨格推定とを同時に行うボトムアップアプローチである。
【0004】
非特許文献1には、入力された時系列画像の全てについて、(1) 関節点検出、(2) 確信度推定(関節点隣接確信度および関節点追跡確信度)および(3) 確信度ベースでの追跡推定を行った後、骨格追跡の結果を出力する技術が開示されている。
【0005】
関節点隣接確信度とは、例えば手首と肘のように、フレーム内の各関節点が四肢などによって直接接続される関節点同士である確信度である。関節点追跡確信度とは、フレーム間の各関節点が同一の関節点である確信度である。確信度ベースの追跡推定では、得られたすべての関節点をノード、推定した確信度をエッジの重みとするグラフを考え、いくつかの制約に従った最適な分割を行うことで人物毎に骨格を推定する。
【0006】
非特許文献2では、フレーム画像を読み込む毎に骨格追跡の推定を行い、かつ二つのフレーム間の関節点の追跡をより効果的に行う。すなわち、注目フレームから関節点を検出し、次に注目フレーム内の関節点同士が隣接している確信度の推定と直前のフレーム内の関節点からの追跡確信度の推定を行う。それぞれの確信度は、学習によって得られたモデルが出力する関節点の存在確率マップ、関節点の隣接方向ベクトルマップ(PAF)および関節点の追跡方向ベクトルマップ(TAF)から求められる。
【0007】
特に、TAFは関節点の動きの表現を含んでおり、前回および今回のPAF、ならびに一つ前のTAFに基づき算出される。非特許文献2では、一つ前のTAFを使うことにより、過去の動きを踏まえて現在の動きを推定することができる。最後に、注目フレームと直前のフレームの関節点をノードとし、推定した確信度を各エッジの重みとするグラフを考え、いくつかの制約に従った最適な分割を行うことで人物毎に骨格を推定する。
【0008】
第2のアプローチは、非特許文献3に開示されるように、各フレームにおいて人物検出および骨格推定を行った後、各人物について追跡を行うトップダウンアプローチである。
【0009】
非特許文献3では、各フレームで人物検出によって求められたバウンディングボックスごとに骨格推定を行い、得られた関節点の次フレームにおける位置をオプティカルフローによって推定する。そして、この推定位置と次フレームで実際に得られた関節点の位置とが最も近い人物同士を対応付けることで追跡が行われる。
【0010】
このアプローチでは各フレームにおける骨格推定が肝要であり、特許文献1は、予め骨格モデルを設定することで画像中に様々な物体が含まれる複雑なシーンにおいても頑健に骨格推定を行う方法を開示している。
【先行技術文献】
【特許文献】
【0011】
【非特許文献】
【0012】
【文献】Iqbal, Umar, Anton Milan, and Juergen Gall. "Posetrack: Joint multi-person pose estimation and tracking." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2017.
【文献】Raaj, Yaadhav, et al. "Efficient Online Multi-Person 2D Pose Tracking with Recurrent Spatio-Temporal Affinity Fields." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2019.
【文献】Xiao, Bin, Haiping Wu, and Yichen Wei. "Simple baselines for human pose estimation and tracking." Proceedings of the European Conference on Computer Vision (ECCV). 2018.
【文献】Cao, Zhe, et al. "OpenPose: realtime multi-person 2D pose estimation using Part Affinity Fields." arXiv preprint arXiv:1812.08008 (2018).
【文献】He, Kaiming, et al. "Deep residual learning for image recognition." Proceedings of the IEEE conference on computer vision and pattern recognition. 2016.
【文献】Doering, Andreas, Umar Iqbal, and Juergen Gall. "Joint flow: Temporal flow fields for multi person tracking." arXiv preprint arXiv:1805.04596 (2018).
【文献】Bewley, Alex, et al. "Simple online and realtime tracking." 2016 IEEE International Conference on Image Processing (ICIP). IEEE, 2016.
【発明の概要】
【発明が解決しようとする課題】
【0013】
非特許文献3が属するトップダウンアプローチは、各フレームで検出された人数に比例して計算コストが増大する懸念がある。また、複数の人物同士が接近するような困難な状況では人物検出、骨格推定が失敗するケースが確認されており、同時にこれらの処理に強く依存する追跡についても性能低下が免れない。骨格推定手法である特許文献1は前述のような骨格推定が困難な状況を解決する機構を持たない上、そもそも追跡処理を考慮していない。
【0014】
非特許文献1,2が開示するボトムアップアプローチでは、検出できた人物すべての骨格推定及び追跡を同時に推定するため、人数の増加が処理時間に与える影響が比較的少ない。さらに、骨格推定と追跡の双方にとって最適な解が求められることから、一方の精度劣化をもう一方によって低減する余地がある。
【0015】
しかしながら、非特許文献1は複数のフレームについて同時に骨格追跡の推定を行うオフライン処理である。その上、現在のフレームと過去の複数のフレームとの間で直接関節点の対応付けをとっており、この対応付けの処理は計算コストが高い。従って、リアルタイム性の求められる状況下では利用しがたいという問題がある。
【0016】
非特許文献2では、前後フレームの間でのみ追跡を行い、直前より過去のフレームの情報については直接利用しない代わりに、直前のフレームにおける動き情報や見えの特徴量を現在のフレームでの推論に再帰的に活用することによって対応付けの処理を減らし、オンラインのリアルタイム処理を可能にしている。
【0017】
しかしながら、前後フレーム間での対応付けによる追跡は遮蔽が頻発した場合に悪影響を受けやすい。また、関節点の動き方向(TAF)と関節点の接続方向(PAF)とを表す二種類のベクトルによって関節点の対応付けを行っていることから、位置さえ似ていれば見た目の大きく異なる関節点同士でも取り違えてしまう場合がある。従って、特にスポーツ映像など複数の人物が接近し相互の遮蔽が発生する状況において課題が残っている。
【0018】
本発明の目的は、上記の技術課題を解決し、追跡中の関節点を遮蔽等の原因でフレーム画像から一時的に検出できないことがあっても、確度の高い追跡を継続して正確な骨格追跡を実現できる骨格追跡方法、装置およびプログラムを提供することにある。
【課題を解決するための手段】
【0019】
上記の目的を達成するために、本発明は、関節点の追跡結果に基づいて人物の骨格を追跡する骨格追跡装置において、以下の構成を具備した点に特徴がある。
【0020】
(1) 時系列画像の各フレームから関節点の位置および見え特徴量を検出する関節点検出手段と、検出履歴のある関節点ごとに、その位置および見え特徴量の履歴を関節点追跡フローとして記憶する記憶手段と、フレーム画像から検出した各関節点が各関節点追跡フローに対応する確信度を、それぞれの位置および見え特徴量に基づいて推定する確信度推定手段と、確信度が最も高い対応関係にある関節点と関節点追跡フローとの組み合わせに基づいて骨格を推定する骨格推定手段とを具備した。
【0021】
(2) 骨格の推定結果に基づいて、関節点の位置を確信度が最も高い対応関係にある関節点追跡フローに更新登録し、関節点の見え情報を確信度が最も高い対応関係にある関節点追跡フローに履歴として追加する更新手段を具備した。
【0022】
(3) 更新手段は、関節点追跡フローを更新する際、追加しようとする見え特徴量との類似度が所定の基準値を超える見え特徴量の履歴が関節点追跡フローに既登録であると当該見え特徴量を追加しないようにした。
【0023】
(4) 更新手段は、関節点追跡フローに登録されている見え特徴量の履歴数が所定数を超えると、類似度が所定の基準値を超える見え特徴量ペアの一方を削除するようにした。
【0024】
(5) 確信度推定手段は、関節点の見え特徴量と関節点追跡フローの各見え特徴量の履歴との類似度を算出し、各類似度の平均値,最大値および中央値のいずれかに基づいて確信度を推定するようにした。
【発明の効果】
【0025】
本発明によれば、以下のような効果が達成される。
【0026】
(1) 検出履歴のある関節点ごとに、その位置および見え特徴量の履歴を関節点追跡フローとして記憶し、フレーム画像から検出した各関節点が各関節点追跡フローに対応する確信度を、それぞれの位置および見え特徴量に基づいて推定し、確信度が最も高い対応関係にある関節点と関節点追跡フローとの組み合わせに基づいて人物の骨格を推定するので、追跡中の関節点を遮蔽等の原因でフレーム画像から一時的に検出できないことがあっても、確度の高い追跡を継続でき、正確な骨格推定が可能になる。
【0027】
(2) 骨格の推定結果に基づいて、関節点の位置を確信度が最も高い対応関係にある関節点追跡フローに更新登録し、関節点の見え情報を確信度が最も高い対応関係にある関節点追跡フローに履歴として追加するので、関節点追跡フローに最新の位置および見え情報を保持できるようになる。
【0028】
(3) 更新手段は、関節点追跡フローを更新する際、追加しようとする見え特徴量との類似度が所定の基準値を超える見え特徴量の履歴が関節点追跡フローに既登録であると当該見え特徴量を追加しないようにしたので、見え特徴量の履歴に多様性を持たせることができ、見え特徴量の変化に頑健な確信度推定が可能になる。
【0029】
(4) 更新手段は、関節点追跡フローに登録されている見え特徴量の履歴数が所定数を超えると、類似度が所定の基準値を超える見え特徴量ペアの一方を削除するようにしたので、関節点追跡フローに登録されている見え特徴量の履歴数を抑えながら多様性をもたせることが可能になると同時に、追跡処理に必要となる記憶容量や計算コストの低減を図ることも可能となる。
【0030】
(5) 確信度推定手段は、関節点の見え特徴量と関節点追跡フローの各見え特徴量の履歴との類似度を算出し、各類似度の平均値,最大値および中央値のいずれかに基づいて確信度を推定するので、関節点の見え特徴量と関節点追跡フローの各見え特徴量の履歴との類似度を実用的かつ定量的に求められるようになる。
【図面の簡単な説明】
【0031】
【
図1】本発明の一実施形態に係る骨格推定装置の主要部の構成を示した図である。
【
図3】関節点追跡フローリストの構成を示した図である。
【
図4】追跡確信度の推定手順を示したフローチャートである。
【
図5】追跡確信度の推定方法を模式的に示した図である。
【
図6】関節点および関節点追跡フローをノードと見なしたグラフ生成および部分グラフ分割の例を示した図である。
【発明を実施するための形態】
【0032】
以下、図面を参照して本発明の実施の形態について詳細に説明する。
図1は、本発明の一実施形態に係る骨格推定装置1の主要部の構成を示した図であり、本実施形態では、複数の人物が写った時系列画像において骨格推定を行うケースを想定し、時系列画像は、1フレームより長い時間継続し、シーンの切り替わりが起こらないものとする。
【0033】
このような骨格推定装置は、CPU、メモリ、インタフェースおよびこれらを接続するバス等を備えた少なくとも1台の汎用のコンピュータやサーバに各機能を実現するアプリケーション(プログラム)を実装することで構成できる。あるいはアプリケーションの一部がハードウェア化またはROM化された専用機や単能機としても構成できる。
【0034】
画像入力部101には、被写体として人物の写ったRGBの時系列画像が入力される。関節点検出部102は、画像入力部101から時系列画像をフレーム単位で取得し、
図2に一例を示した関節点の定義に従い、右手首や右肘などの区別をもって各フレーム画像から関節点を検出する。
【0035】
関節点の検出には任意の既存手法を用いることができる。例えば、骨格推定手法である非特許文献4と同様の手法を用いることができる。すなわち事前学習済みのCNNモデルにフレーム画像を入力し、各関節点の存在確率マップを種類別に出力した上で、確率の高い座標をその関節点の位置とする手法を用いても良い。本実施形態では、関節点ごとにその種別id、位置pの情報および見え特徴量fが取得されて確信度推定部103へ提供される。
【0036】
ここで、関節点の種別idとは各関節点が骨格を構成する右手首や右肘等のいずれであるかを識別する情報である。位置pとは各関節点のフレーム画像上での位置を代表する情報である。見え特徴量fとは、フレーム画像の関節点を中心とした局所的範囲の画像特徴を代表する情報であり、以下に代表的な2つの算出方式を説明する。
【0037】
(1) CNNを用いる方法
【0038】
非特許文献5に開示されるように、関節点の検出位置近傍の画像(例えば、検出位置を中心とする5×5の矩形領域)を事前学習済みのCNNモデルに入力することによって算出する。
【0039】
(2) 前段の処理を活用する方法
【0040】
関節点検出部102において非特許文献4と同様の手段をとった場合、CNNモデルの中間層の出力は入力画像の見え特徴量に相当するものと考えられることから、検出した関節点の位置に相当する箇所の特徴量を見え特徴量として切り出す。
【0041】
記憶部105には、関節点追跡フローリスト105aおよび関節点隣接情報105bが記憶されている。関節点追跡フローリスト105aは、
図3に一例を示したように、検出履歴のある関節点ごとに生成された複数の関節点追跡フローFを含む。各関節点追跡フローFは、当該関節点が所属する人物の識別子ID,関節点種別id、位置pおよび見え特徴量fの履歴から構成される。
【0042】
見え特徴量の履歴とは、同一の関節点が過去の各フレームで検出されたときに抽出された見え特徴量fの集合であり、関節点ごとに数個ないしは数十個の見え特徴量fで構成される。
図3では、例えば関節点ごとに当該関節点を検出できたフレーム位置に見え特徴量fが模式的に○印で記され、検出できなかったフレーム位置には模式的にスペース記号が記されている。
【0043】
位置pとしては、当該関節点が最後に検出されたフレーム画像における位置座標を用いることができる。なお、関節点追跡フローFの位置には、これまでの位置の遷移として動き情報を反映しておくことができる。関節点隣接情報105bは、関節点追跡フロー105aで定義された各関節点の隣接関係を特定する情報である。
【0044】
確信度推定部103は、関節点隣接確信度推定部103aおよび関節点追跡確信度推定部103bを含む。関節点隣接確信度推定部103aは、前記関節点間の隣接関係の定義に従い、関節点検出部102が検出した関節点同士が隣接している確信度を推定する。
【0045】
この確信度推定には任意の既存手法を用いることができる。例えば、骨格推定手法である非特許文献4に開示された手法を採用しても良い。すなわち、事前学習済みのCNNモデルに画像を入力し、その画像上における隣接する関節点間のつながりを表すベクトルマップを出力した上で、検出した関節点間においてその二点間の方向ベクトルと出力ベクトルの類似度により隣接確信度を求める方法である。ただし、この推定方法に依らず、隣接関係が定義されていない関節点間の確信度はすべて0とされる。
【0046】
関節点追跡確信度推定部103bは、今回のフレーム画像から検出した各関節点が、前記記憶部105に保持している関節点追跡フロー105aの各関節点追跡フローリストFに追跡対象として対応付けられる確信度を推定する。
【0047】
図4は、関節点追跡確信度推定部103bによる追跡確信度の推定手順を示したフローチャートであり、
図5は、追跡確信度の推定方法を模式的に示した図である。
【0048】
ステップS1では、関節点検出部102が今回のフレーム画像から検出した複数の関節点の一つに注目する。ステップS2では、関節点追跡フローリストに登録されている複数の関節点追跡フローFのうち、関節点種別idが一致する関節点追跡フローFの一つに注目する。
【0049】
ステップS3では、注目した関節点を注目した関節点追跡フローFに追跡対象として対応付けられる確信度が、両者の位置および見え特徴量の類似度に基づいて推定される。本実施形態では、関節点種別が異なる関節点(ただし左右の別は含まない)と関節点追跡フローとの確信度は位置や見え特徴量の類似度に関わらず全て0とされる。したがって、実質の確信度は位置pおよび見え特徴量fの類似度に基づいて推定される。
【0050】
位置の類似度S1は、関節点の位置と関節点追跡フローリストの位置との間のユークリッド距離dとし、次式(1)に基づいて算出できる。
S1=1/(1+d) (1)
【0051】
見え特徴量の類似度S2は、現フレームで検出された関節点の見え特徴量をf0、関節点追跡フローリストに登録されている各見え特徴量の履歴を[f1, f2…, fn]としたとき、コサイン類似度[f0f1, … ,f0fn]の平均値、中央値あるいは最大値で代表できる。ただし、各見え特徴量の履歴[f0, … ,fn]は一次元ベクトルの形式で表され、長さ1に正規化されているものとする。
【0052】
このように、本実施形態では関節点の見え特徴量と関節点追跡フローの各見え特徴量の履歴との類似度を算出し、各類似度の平均値,最大値および中央値のいずれかに基づいて確信度を推定するので、両者の類似度を実用的かつ定量的に求められるようになる。
【0053】
注目した関節点と注目した関節点追跡フローとの確信度は、位置および見え特徴量の類似度の組み合わせ類似度として、上記のようにして求めた位置類似度S1と見え特徴量類似度S2との積で代表できる。なお、繰り返し処理の一周目など、記憶部に関節点追跡フローが保持されていない場合には、追跡確信度の算出は行わない。
【0054】
ステップS4では、注目した関節点と関節点種別idが一致する全ての関節点追跡フローとの確信度推定が完了したか否かが判断される。完了していなければステップS2へ戻り、注目する関節点追跡フローを切り替えながら上記の処理が繰り返される。
【0055】
注目した関節点と関節点種別idが一致する全ての関節点追跡フローとの確信度推定が終了するとステップS5へ進み、全ての関節点と関節点種別idが一致する全ての関節点追跡フローとの確信度推定が完了したか否かが判断される。完了していなければステップS1へ戻り、注目する関節点を切り替えながら上記の処理が繰り返される。全ての確信度推定が終了すると当該処理を終了する。
【0056】
確信度ベース骨格追跡推定部104は、グラフ生成部104a、部分グラフ分割部104b、更新部104cおよび見え特徴量剪定部104dを含み、確信度が最も高い対応関係にある関節点と関節点追跡フローとの組み合わせに基づいて骨格を推定する。
【0057】
グラフ生成部104aは、
図6に示したように、全ての関節点および関節点追跡フローをノードと見なしてグラフを生成する。各ノード間のエッジの重みは以下のように定義される。
【0058】
すなわち、(1) 関節点ノード間のエッジの重みは、関節点隣接確信度推定部103aが推定した確信度とされる。(2) 関節点ノードと関節点追跡フローノードとの間のエッジの重みは、関節点追跡確信度推定部103bが推定した確信度とされる。(3) 関節点追跡フローノード間のエッジの重みは、後述する関節点追跡フロー間の隣接確信度とされる。なお、繰り返し処理の一周目など、記憶部105に関節点追跡フローが蓄積されていない場合は、関節点ノード間のエッジのみからグラフを構成することで代替する。
【0059】
部分グラフ分割部104bは、上記のようにして生成したグラフを、人体の関節点の構成に関する制約の下、最適な部分グラフに分割することで人物毎の骨格追跡結果を獲得する。本実施形態では、生成したグラフを、例えば非特許文献1,2,6と同様の方法で人物毎の部分グラフに分割する。
【0060】
更新部104cは、人物毎の骨格追跡結果に基づいて関節点追跡フロー105aおよび関節点隣接情報105bを更新する。本実施形態では、同一人物として相互に紐付けられる複数の関節点追跡フローの人物IDを、各関節点追跡フローに既登録の人物IDのうち最頻出のものに更新する。紐付けられる関節点追跡フローがない場合は新しい人物IDが設定される。
【0061】
更新部104cはまた、関節点の見え特徴量fを、対応する関節点追跡フローFに見え特徴量の履歴として追加登録される。更新部104cはさらに、当該関節点の位置pに基づいて、対応する関節点追跡フローFの位置Pを更新する。このとき、位置に関連して位置の動き情報が登録されていれば、この動き情報と今回の位置pとに基づいて次フレームの座標位置を予測し、その予測結果が対応する関節点追跡フローFの位置として更新登録される。
【0062】
例えば、非特許文献7と同様に、カルマンフィルターによって関節点の動きの予測を行い、次フレームにおける関節点位置を予測できる。また、次フレームの画像を得てから、非特許文献3と同様のオプティカルフローを用いる方法や、非特許文献2と同様のTAFを用いる方法によって次フレームにおける関節点位置を予測してもよい。
【0063】
一方、いずれかの人物の骨格に含まれたが、対応する関節点追跡フローFが未登録であった関節点については、当該関節点に対応する関節点追跡フローFが新規登録される。当該関節点追跡フローFには、その位置として前記関節点の位置が登録され、その見え特徴量の履歴として前記関節点の見え特徴量fが登録される。
【0064】
見え特徴量剪定部104dは、関節点追跡フローFに登録されている見え特徴量の個数が一定数を超えた場合に、登録タイミングの古い見え特徴量から順に削除する。あるいは関節点追跡フローFに登録されている見え特徴量から2つを見え特徴量ペアとして抽出し、類似度が所定の基準値を超える見え特徴量ペアの一方を削除する。
【0065】
前記見え特徴量剪定部104dはさらに、今回のフレーム画像から検出した見え特徴量fを関節点追跡フローFに追加する際、追加する見え特徴量fと既登録の見え特徴量fの履歴との類似度を比較し、既登録の見え特徴量fの履歴のいずれかとの類似度が所定の基準値を超える見え特徴量fの追加登録を制限する。あるいは類似度が所定の基準値を超える既登録の見え特徴量履歴と入れ替えることで、記憶容量を制限しながら関節点追跡フローに登録する見え特徴量を多様化すると同時に、追跡処理に必要となる計算コストの低減も図れる。
【0066】
このように、本実施形態によれば検出履歴のある関節点ごとに、その位置および見え特徴量の履歴を関節点追跡フローとして記憶し、フレーム画像から検出した各関節点が各関節点追跡フローに対応する確信度を、それぞれの位置および見え特徴量に基づいて推定し、確信度が最も高い対応関係にある関節点と関節点追跡フローとの組み合わせに基づいて人物の骨格を推定する。したがって、追跡中の関節点を遮蔽等の原因でフレーム画像から一時的に検出できないことがあっても、確度の高い追跡を継続でき、正確な骨格推定が可能になる。
【符号の説明】
【0067】
101…画像入力部,102…関節点検出部,103…確信度推定部,103a…関節点隣接確信度推定部,103b…関節点追跡確信度推定部,104…確信度ベース骨格追跡推定部,104a…グラフ生成部,104b…部分グラフ分割部,104c…更新部,104d…見え特徴量剪定部,105…記憶部,105a…関節点追跡フローリスト,105b…関節点隣接情報