(57)【要約】      （修正有）【課題】動画像に含まれる物体を追跡する精度を向上させる物体追跡装置及び物体追跡方法を提供する。【解決手段】物体追跡装置１は、動画像を取得する動画像取得部１３１と、前フレーム画像及び現フレーム画像のそれぞれに、入力された動画像に基づいて当該動画像に含まれる被写体の種別を出力可能な機械学習モデルに含まれる複数の処理層を伝搬させる伝搬制御部１３２と、複数の処理層から選択した後段処理層、及び前段処理層の両方の処理層において共通に活性化している、現フレーム出力と前フレーム出力とを抽出する抽出部１３３と、現フレーム特徴点と前フレーム特徴点とを検出する特徴点検出部１３７と、現フレーム特徴点の位置と、遷移後パーティクルの位置とを比較することにより、遷移後パーティクルの尤度を推定する尤度推定部１３９と、推定された尤度に基づいて、動画像に含まれる物体を追跡する追跡部１４０と、を有する。【選択図】図３
2019185210.tif 000002
【特許請求の範囲】
【請求項１】
撮像装置で生成された動画像を取得する動画像取得部と、
前記動画像に含まれるフレーム画像である前フレーム画像及び前記動画像に含まれる前記前フレーム画像の後のフレーム画像である現フレーム画像のそれぞれに、入力された動画像に基づいて当該動画像に含まれる物体の種別を出力可能な機械学習モデルに含まれる複数の処理層を伝搬させる伝搬制御部と、
前記複数の処理層から選択した後段処理層、及び前記後段処理層の直前の処理層である前段処理層の両方の処理層において共通に活性化している、前記現フレーム画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の現フレーム出力と前記前フレーム画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の前フレーム出力とを抽出する抽出部と、
前記一以上の現フレーム出力に基づいて一以上の現フレーム特徴点を検出し、かつ前記一以上の前フレーム出力に基づいて一以上の前フレーム特徴点を検出する特徴点検出部と、
前記前フレーム画像に関連付けて複数の遷移前パーティクルを生成し、前記一以上の現フレーム特徴点の位置と、前記複数の遷移前パーティクルを所定の物体遷移モデルに則って遷移させた複数の遷移後パーティクルの位置とを比較することにより、前記複数の遷移後パーティクルそれぞれの尤度を推定する尤度推定部と、
前記尤度推定部が推定した前記尤度に基づいて前記複数の遷移後パーティクルから選択した一部の遷移後パーティクルに基づいて、前記動画像に含まれる物体を追跡する追跡部と、
を有する物体追跡装置。
【請求項２】
前記抽出部は、
前記現フレーム画像が前記複数の処理層の一部である前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段現フレーム出力、及び前記前フレーム画像が前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段前フレーム出力から、共通に活性化している一以上の後段現フレーム出力及び一以上の後段前フレーム出力を抽出する後段抽出部と、
前記一以上の後段現フレーム出力及び前記一以上の後段前フレーム出力を活性化させる要因となった前記前段処理層から出力された複数の前段現フレーム出力、及び前記前段処理層から出力された複数の前段前フレーム出力のうち、共通に活性化している一以上の前段現フレーム出力及び一以上の前段前フレーム出力を抽出する前段抽出部と、
を有する、
請求項１に記載の物体追跡装置。
【請求項３】
前記前段抽出部は、前記複数の前段現フレーム出力及び前記複数の前段前フレーム出力のうち、活性化している大きさに基づいて、前記一以上の前段現フレーム出力及び前記一以上の前段前フレーム出力を抽出する、
請求項２に記載の物体追跡装置。
【請求項４】
前記機械学習モデルは、畳み込みニューラルネットワークを含み、
前記後段処理層は、出力層、全結合層、正規化層、プーリング層、及び畳み込み層のうちのいずれかの層である、
請求項２又は３に記載の物体追跡装置。
【請求項５】
前記前段処理層は、全結合層、正規化層、プーリング層、畳み込み層及び入力層のうちのいずれかの層である、
請求項４に記載の物体追跡装置。
【請求項６】
前記抽出部は、前記複数の処理層のうち、最後尾の処理層である最後尾層を後段処理層として選択した場合において、前記最後尾層において共通に活性化している前記一以上の現フレーム出力及び前記一以上の前フレーム出力がない場合、前記最後尾層より前の処理層において共通に活性化している前記一以上の現フレーム出力及び前記一以上の前フレーム出力を抽出する、
請求項１から５のいずれか一項に記載の物体追跡装置。
【請求項７】
前記尤度推定部は、前記遷移後パーティクルが前記一以上の現フレーム特徴点の位置に近ければ近いほど尤度が大きくなるように推定する、
請求項１から６のいずれか一項に記載の物体追跡装置。
【請求項８】
前記尤度推定部は、前記一以上の現フレーム特徴点の位置と、前記一以上の前フレーム特徴点をパーティクルとして用いた一以上の前記遷移前パーティクルを前記所定の物体遷移モデルに則って遷移させた遷移後パーティクルの位置とを比較することにより、一以上の前記遷移後パーティクルそれぞれの尤度を推定する、
請求項１から７のいずれか一項に記載の物体追跡装置。
【請求項９】
前記尤度推定部は、尤度を推定する場合において、尤度を次回以降に推定する場合と異なる規則に基づいて前記前フレーム画像に配置した前記複数の遷移前パーティクルを生成し、前記一以上の現フレーム特徴点の位置と、前記複数の遷移後パーティクルの位置とを比較することにより、前記複数の遷移後パーティクルそれぞれの尤度を推定する、
請求項１から８のいずれか一項に記載の物体追跡装置。
【請求項１０】
前記尤度推定部は、前記一以上の前フレーム特徴点に対応する前記一以上の現フレーム特徴点の位置と、前記複数の遷移後パーティクルの位置とを比較することにより、前記複数の遷移後パーティクルそれぞれの尤度を推定する、
請求項１から９のいずれか一項に記載の物体追跡装置。
【請求項１１】
前記複数の処理層のうち、前記後段処理層として用いる処理層を選択する指示を受け付ける指示受付部をさらに有し、
前記抽出部は、前記指示受付部が受け付けた前記指示が示す前記処理層を、前記後段処理層として使用する、
請求項１から１０のいずれか一項に記載の物体追跡装置。
【請求項１２】
前記抽出部は、前記複数の処理層のうち一つの層を前記後段処理層として選択して前記一以上の現フレーム出力及び前記一以上の前フレーム出力を抽出した後に、前記前段処理層として選択した処理層を前記後段処理層として選択して、別の前記一以上の現フレーム出力及び前記一以上の前フレーム出力を抽出する、
請求項１から１１のいずれか一項に記載の物体追跡装置。
【請求項１３】
撮像装置で生成された動画像を取得するステップと、
前記動画像に含まれるフレーム画像である前フレーム画像及び前記動画像に含まれる前記前フレーム画像の後のフレーム画像である現フレーム画像のそれぞれに、入力された動画像に基づいて当該動画像に含まれる物体の種別を出力可能な機械学習モデルに含まれる複数の処理層を伝搬させるステップと、
前記複数の処理層から選択した後段処理層、及び前記後段処理層の直前の処理層である前段処理層の両方の処理層において共通に活性化している、前記現フレーム画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の現フレーム出力と前記前フレーム画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の前フレーム出力とを抽出するステップと、
前記一以上の現フレーム出力に基づいて一以上の現フレーム特徴点を検出し、かつ前記一以上の前フレーム出力に基づいて一以上の前フレーム特徴点を検出するステップと、
前記前フレーム画像に関連付けて複数の遷移前パーティクルを生成するステップと、
前記一以上の現フレーム特徴点の位置と、前記複数の遷移前パーティクルを所定の物体遷移モデルに則って遷移させた複数の遷移後パーティクルの位置とを比較することにより、前記複数の遷移後パーティクルそれぞれの尤度を推定するステップと、
推定した前記尤度に基づいて前記複数の遷移後パーティクルから選択した一部の遷移後パーティクルに基づいて、前記動画像に含まれる物体を追跡するステップと、
を有する物体追跡方法。
【請求項１４】
前記抽出するステップは、
前記現フレーム画像が前記複数の処理層の一部である前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段現フレーム出力、及び前記前フレーム画像が前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段前フレーム出力から、共通に活性化している一以上の後段現フレーム出力及び一以上の後段前フレーム出力を抽出する前段抽出ステップと、
前記一以上の後段現フレーム出力及び前記一以上の後段前フレーム出力を活性化させる要因となった前記前段処理層から出力された複数の前段現フレーム出力、及び前記前段処理層から出力された複数の前段前フレーム出力のうち、共通に活性化している一以上の前段現フレーム出力及び一以上の前段前フレーム出力を抽出する後段抽出ステップと、
を有する、請求項１３に記載の物体追跡方法。
【請求項１５】
前記前段抽出ステップを実行した後に、前記一以上の前段現フレーム出力及び前記一以上の前段前フレーム出力を、前記複数の後段現フレーム出力及び前記複数の後段前フレーム出力として、前記後段抽出ステップを実行する、
請求項１４に記載の物体追跡方法。
【請求項１６】
前記複数の処理層のそれぞれに対して、前記後段抽出ステップ及び前記前段抽出ステップを実行する、
請求項１４又は１５に記載の物体追跡方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像に含まれる物体を追跡する物体追跡装置及び物体追跡方法に関する。
【背景技術】
【０００２】
従来、パーティクルフィルタを用いて動画像に含まれる物体を追跡する装置が知られている。特許文献１には、パーティクルフィルタを用いて物体の輪郭形状を追跡する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２２４９２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、パーティクルフィルタを用いて動画像に含まれる物体を追跡する場合、フレーム画像から取得した観測値に基づいて推定した、移動後の各パーティクルの尤度を用いる。この場合において、例えば、大きさ又は向きが変化する物体を追跡する場合、複数のフレーム画像間における物体の差異が大きくなり、尤度を推定する精度が悪くなる。また、類似する複数の物体それぞれを追跡する場合、物体の大きさ又は向きが変化することによって複数の物体それぞれの区別ができなくなり、尤度を推定する精度が悪くなる。その結果として、物体を追跡する精度が悪くなるという問題があった。
【０００５】
そこで、本発明はこれらの点に鑑みてなされたものであり、動画像に含まれる物体を追跡する精度を向上させることができる物体追跡装置及び物体追跡方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１の態様に係る物体追跡装置は、撮像装置で生成された動画像を取得する動画像取得部と、前記動画像に含まれるフレーム画像である前フレーム画像及び前記動画像に含まれる前記前フレーム画像の後のフレーム画像である現フレーム画像のそれぞれに、入力された動画像に基づいて当該動画像に含まれる物体の種別を出力可能な機械学習モデルに含まれる複数の処理層を伝搬させる伝搬制御部と、前記複数の処理層から選択した後段処理層、及び前記後段処理層の直前の処理層である前段処理層の両方の処理層において共通に活性化している、前記現フレーム画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の現フレーム出力と前記前フレーム画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の前フレーム出力とを抽出する抽出部と、前記一以上の現フレーム出力に基づいて一以上の現フレーム特徴点を検出し、かつ前記一以上の前フレーム出力に基づいて一以上の前フレーム特徴点を検出する特徴点検出部と、前記前フレーム画像に関連付けて複数の遷移前パーティクルを生成し、前記一以上の現フレーム特徴点の位置と、前記複数の遷移前パーティクルを所定の物体遷移モデルに則って遷移させた複数の遷移後パーティクルの位置とを比較することにより、前記複数の遷移後パーティクルそれぞれの尤度を推定する尤度推定部と、前記尤度推定部が推定した前記尤度に基づいて前記複数の遷移後パーティクルから選択した一部の遷移後パーティクルに基づいて、前記動画像に含まれる物体を追跡する追跡部と、を有する。
【０００７】
前記抽出部は、前記現フレーム画像が前記複数の処理層の一部である前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段現フレーム出力、及び前記前フレーム画像が前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段前フレーム出力から、共通に活性化している一以上の後段現フレーム出力及び一以上の後段前フレーム出力を抽出する後段抽出部と、前記一以上の後段現フレーム出力及び前記一以上の後段前フレーム出力を活性化させる要因となった前記前段処理層から出力された複数の前段現フレーム出力、及び前記前段処理層から出力された複数の前段前フレーム出力のうち、共通に活性化している一以上の前段現フレーム出力及び一以上の前段前フレーム出力を抽出する前段抽出部と、を有してもよい。
【０００８】
前記前段抽出部は、前記複数の前段現フレーム出力及び前記複数の前段前フレーム出力のうち、活性化している大きさに基づいて、前記一以上の前段現フレーム出力及び前記一以上の前段前フレーム出力を抽出してもよい。
【０００９】
前記機械学習モデルは、畳み込みニューラルネットワークを含み、前記後段処理層は、出力層、全結合層、正規化層、プーリング層、及び畳み込み層のうちのいずれかの層であってもよい。
前記前段処理層は、全結合層、正規化層、プーリング層、畳み込み層及び入力層のうちのいずれかの層であってもよい。
【００１０】
前記抽出部は、前記複数の処理層のうち、最後尾の処理層である最後尾層を後段処理層として選択した場合において、前記最後尾層において共通に活性化している前記一以上の現フレーム出力及び前記一以上の前フレーム出力がない場合、前記最後尾層より前の処理層において共通に活性化している前記一以上の現フレーム出力及び前記一以上の前フレーム出力を抽出してもよい。
【００１１】
前記尤度推定部は、前記遷移後パーティクルが前記一以上の現フレーム特徴点の位置に近ければ近いほど尤度が大きくなるように推定してもよい。
【００１２】
前記尤度推定部は、前記一以上の現フレーム特徴点の位置と、前記一以上の前フレーム特徴点をパーティクルとして用いた一以上の前記遷移前パーティクルを前記所定の物体遷移モデルに則って遷移させた遷移後パーティクルの位置とを比較することにより、一以上の前記遷移後パーティクルそれぞれの尤度を推定してもよい。
【００１３】
前記尤度推定部は、尤度を推定する場合において、尤度を次回以降に推定する場合と異なる規則に基づいて前記前フレーム画像に配置した前記複数の遷移前パーティクルを生成し、前記一以上の現フレーム特徴点の位置と、前記複数の遷移後パーティクルの位置とを比較することにより、前記複数の遷移後パーティクルそれぞれの尤度を推定してもよい。
【００１４】
前記尤度推定部は、前記一以上の前フレーム特徴点に対応する前記一以上の現フレーム特徴点の位置と、前記複数の遷移後パーティクルの位置とを比較することにより、前記複数の遷移後パーティクルそれぞれの尤度を推定してもよい。
【００１５】
前記物体追跡装置は、前記複数の処理層のうち、前記後段処理層として用いる処理層を選択する指示を受け付ける指示受付部をさらに有し、前記抽出部は、前記指示受付部が受け付けた前記指示が示す前記処理層を、前記後段処理層として使用してもよい。
【００１６】
前記抽出部は、前記複数の処理層のうち一つの層を前記後段処理層として選択して前記一以上の現フレーム出力及び前記一以上の前フレーム出力を抽出した後に、前記前段処理層として選択した処理層を前記後段処理層として選択して、別の前記一以上の現フレーム出力及び前記一以上の前フレーム出力を抽出してもよい。
【００１７】
本発明の第２の態様に係る物体追跡方法は、撮像装置で生成された動画像を取得するステップと、前記動画像に含まれるフレーム画像である前フレーム画像及び前記動画像に含まれる前記前フレーム画像の後のフレーム画像である現フレーム画像のそれぞれに、入力された動画像に基づいて当該動画像に含まれる物体の種別を出力可能な機械学習モデルに含まれる複数の処理層を伝搬させるステップと、前記複数の処理層から選択した後段処理層、及び前記後段処理層の直前の処理層である前段処理層の両方の処理層において共通に活性化している、前記現フレーム画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の現フレーム出力と前記前フレーム画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の前フレーム出力とを抽出するステップと、前記一以上の現フレーム出力に基づいて一以上の現フレーム特徴点を検出し、かつ前記一以上の前フレーム出力に基づいて一以上の前フレーム特徴点を検出するステップと、前記前フレーム画像に関連付けて複数の遷移前パーティクルを生成するステップと、前記一以上の現フレーム特徴点の位置と、前記複数の遷移前パーティクルを所定の物体遷移モデルに則って遷移させた複数の遷移後パーティクルの位置とを比較することにより、前記複数の遷移後パーティクルそれぞれの尤度を推定するステップと、推定した前記尤度に基づいて前記複数の遷移後パーティクルから選択した一部の遷移後パーティクルに基づいて、前記動画像に含まれる物体を追跡するステップと、を有する。
【００１８】
前記抽出するステップは、前記現フレーム画像が前記複数の処理層の一部である前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段現フレーム出力、及び前記前フレーム画像が前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段前フレーム出力から、共通に活性化している一以上の後段現フレーム出力及び一以上の後段前フレーム出力を抽出する前段抽出ステップと、前記一以上の後段現フレーム出力及び前記一以上の後段前フレーム出力を活性化させる要因となった前記前段処理層から出力された複数の前段現フレーム出力、及び前記前段処理層から出力された複数の前段前フレーム出力のうち、共通に活性化している一以上の前段現フレーム出力及び一以上の前段前フレーム出力を抽出する後段抽出ステップと、を有してもよい。
【００１９】
前記前段抽出ステップを実行した後に、前記一以上の前段現フレーム出力及び前記一以上の前段前フレーム出力を、前記複数の後段現フレーム出力及び前記複数の後段前フレーム出力として、前記後段抽出ステップを実行してもよい。
前記複数の処理層のそれぞれに対して、前記後段抽出ステップ及び前記前段抽出ステップを実行してもよい。
【発明の効果】
【００２０】
本発明によれば、動画像に含まれる物体を追跡する精度を向上させることができるという効果を奏する。
【図面の簡単な説明】
【００２１】
【図１】物体追跡処理の概要を説明するための図である。
【図２】機械学習モデルの構成の一例を示す図である。
【図３】物体追跡装置の構成を示す図である。
【図４】抽出部が行う抽出処理について説明するための図である。
【図５】抽出部が行う抽出処理について説明するための図である。
【図６】抽出部が行う抽出処理について説明するための図である。
【図７】抽出部が行う抽出処理について説明するための図である。
【図８】抽出部が行う抽出処理について説明するための図である。
【図９】抽出部が行う抽出処理について説明するための図である。
【図１０】物体追跡処理の詳細について説明するための図である。
【図１１】物体追跡装置が行う処理の流れを示すフローチャートである。
【図１２】抽出部が行う処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００２２】
［物体追跡装置１の概要］
図１は、物体追跡処理の概要を説明するための図である。時々刻々と変化する観測対象の内部状態を推定する技術として、時系列フィルタを用いた技術がある。時系列フィルタは、動画像に含まれるフレーム画像から観測した観測ベクトルに基づいて、直接観測できない物体の内部状態を推定する手法であり、例えば、パーティクルフィルタである。
【００２３】
パーティクルフィルタでは、観測対象の内部状態の確率分布を、粒子（以下、パーティクルという）の分布で表現する。パーティクルフィルタでは、現時刻における状態の事後確率分布を次時刻における状態の事前確率分布として、当該事前確率分布を表すパーティクル（当該事前確率分布に従って生成されたサンプル集合）の状態から推定されたテンプレートの観測（予測サンプル）と、次時刻における実際の画像（実際の観測）とを比較することで各パーティクルの尤度を求める。
【００２４】
そして、パーティクルフィルタでは、求めた尤度と事前確率分布とからパーティクルの事後確率分布を推定する。パーティクルフィルタでは、次時刻以降、上述の処理を繰り返すことで、動的に変化する観測対象（例えば、追跡対象）の状態が逐次的に推定される。
【００２５】
パーティクルフィルタでは、以下の（１）から（４）の処理を行う。まず、処理（１）では、各サンプル（各パーティクル）について、１期先の時刻における予測サンプルを生成する。処理（２）では、処理（１）で生成された各予測サンプルについて、重み（尤度）を算出、すなわち、観測モデルに従って、観測ベクトルを得る確率（尤度）を推定する。
【００２６】
処理（３）では、重み（尤度）に比例する割合で複数の粒子を復元抽出する。このようにして復元抽出された粒子の分布から、事後確率分布（観測対象の内部状態の確率分布）を取得する。処理（４）では、時刻を進めて処理（１）に戻る。このとき、処理（３）で取得した事後確率分布を、次の時刻の事前確率分布とする。
【００２７】
このように、パーティクルフィルタでは、観測対象の状態を表すパラメータの事前確率分布の予測と、事後確率分布の計算とを繰り返し行うことで、時々刻々変化する、観測対象の状態を表すパラメータを推定する。パーティクルフィルタは、例えば、動画像上の物体（オブジェクト）の位置の追跡に利用される。この場合、パーティクルフィルタでは、物体の位置を表すパラメータから推定される観測（予測サンプル）と、実際の観測（例えば、カメラ等により撮像される画像）とを比較することによって尤度を算出し、算出した尤度に基づいて、パーティクルのリサンプリングを行うことで、観測対象の状態を表すパラメータの事後確率分布を取得することができる。追跡対象の状態を表すパラメータは、例えば、物体の位置を表すパラメータである。
【００２８】
物体追跡装置１は、機械学習モデルＭを用いて、パーティクルフィルタで用いられるパーティクルの移動先ベクトルの尤度を推定することにより、動画像に含まれる物体を追跡する装置である。物体追跡装置１は、例えばコンピュータである。物体は、フレーム画像に含まれる被写体であり、例えば人間又は車両等である。
【００２９】
物体追跡装置１は、撮像装置で生成された動画像を取得する（図１の（１））。撮像装置は、動画像を撮像することができるカメラ又はスマートフォン等である。図１に示す動画像Ａは、物体Ｔである人間が左側から右側に走る様子を写した動画像である。図１に示す動画像Ａに含まれる１フレーム目のフレーム画像Ａ１を前フレーム画像とし、２フレーム目のフレーム画像Ａ２を現フレーム画像とする。前フレーム画像は、動画像に含まれる複数のフレーム画像のうちの１つのフレーム画像である。現フレーム画像は、前フレーム画像の後のフレーム画像であり、物体の追跡を行うフレーム画像である。すなわち、現フレーム画像は、直前に尤度の推定を行ったフレーム画像の次に尤度の推定を行う対象となるフレームである。
【００３０】
物体追跡装置１は、取得した動画像Ａを機械学習モデルＭに入力し、当該機械学習モデルＭに含まれる複数の処理層を伝搬させる（図１の（２））。機械学習モデルＭは、入力された動画像に基づいて当該動画像に含まれる物体の種別を出力するように学習されたモデルである。具体的には、機械学習モデルＭは、入力された動画像に基づいて、当該動画像のフレーム画像それぞれに写っている物体の種別をフレーム画像ごとに出力する。
【００３１】
図２は、機械学習モデルＭの構成の一例を示す図である。機械学習モデルＭは、畳み込みニューラルネットワーク（ＣＮＮ：Convolutional Neural Network）を含む。この場合において、機械学習モデルＭは、入力層Ｍ１、第１の畳み込み層Ｍ２、第２の畳み込み層Ｍ３、第１のプーリング層Ｍ４、正規化層Ｍ５、第３の畳み込み層Ｍ６、第２のプーリング層Ｍ７、第１の全結合層Ｍ８、第２の全結合層Ｍ９、及び出力層Ｍ１０を有する。本明細書においては、隣接する２つの処理層のうち、現フレーム画像及び前フレーム画像が伝搬する際の上流側の処理層を前段処理層と称し、下流側の処理層を後段処理層と称する。
【００３２】
後段処理層となり得る処理層は、第１の畳み込み層Ｍ２、第２の畳み込み層Ｍ３、第１のプーリング層Ｍ４、正規化層Ｍ５、第３の畳み込み層Ｍ６、第２のプーリング層Ｍ７、第１の全結合層Ｍ８、第２の全結合層Ｍ９、及び出力層Ｍ１０のうちのいずれかの層である。また、前段処理層となり得る処理層は、入力層Ｍ１、第１の畳み込み層Ｍ２、第２の畳み込み層Ｍ３、第１のプーリング層Ｍ４、正規化層Ｍ５、第３の畳み込み層Ｍ６、第２のプーリング層Ｍ７、第１の全結合層Ｍ８、及び第２の全結合層Ｍ９のうちのいずれかの層である。物体追跡装置１は、取得した動画像を機械学習モデルＭに入力し、入力層Ｍ１から出力層Ｍ１０までの各処理層を順伝搬させる、すなわち、推論させることにより、動画像に写っている物体Ｔの種別を出力させる。
【００３３】
図１に戻り、物体追跡装置１は、機械学習モデルＭが物体Ｔの種別（例えば、人間、男性又は女性等）を出力するに至った各処理層における計算結果、すなわち、深層学習による抽象度の高い特徴量を用いて、現フレーム画像及び前フレーム画像に共通する特徴点を検出する（図１の（３））。ここで、物体追跡装置１は、共通する特徴点の検出を、各フレーム画像を順伝搬させた順序とは逆の順序で行う。このようにすることで、物体追跡装置１は、抽象度が高い特徴量に基づく特徴点を検出することができる。
【００３４】
物体追跡装置１は、共通する特徴点（例えば、顔、体、手足等に含まれる特徴点）を検出することにより、現フレーム画像に写っている物体Ｔに含まれる特徴点及び前フレーム画像に写っている物体Ｔに含まれる特徴点に対応関係があることを検出する。対応関係は、特徴点が示す現フレーム画像に含まれる画素と、特徴点が示す前フレーム画像に含まれる画素とが一致又は近似した関係である。
【００３５】
物体追跡装置１は、前フレーム画像に関連付けてパーティクルを生成する（図１の（４））。物体追跡装置１は、物体Ｔの動きを予測（例えば、物体Ｔが左側から右側に動く等）して、生成したパーティクルを遷移させる。物体追跡装置１は、検出した前フレーム画像の特徴点と対応関係にある現フレーム画像の特徴点の位置と、遷移させたパーティクルの位置とを比較することにより、各パーティクルの尤度を推定する（図１の（５））。物体追跡装置１は、例えば、前フレーム画像の特徴点と一致した関係にある現フレーム画像の物体Ｔの顔に関する特徴点の位置と、物体Ｔの顔の付近にあるパーティクルの位置とを比較することにより、物体Ｔの顔の付近にあるパーティクルの尤度を推定する。同様に、物体追跡装置１は、体及び手足等の付近にある複数のパーティクルそれぞれの尤度を推定する。
【００３６】
物体追跡装置１は、推定した尤度に基づいて、現フレーム画像に含まれる物体Ｔの位置を推定する（図１の（６））。このように物体追跡装置１は、図１の（１）から（６）の処理を繰り返すことにより、物体Ｔを追跡する。これにより、物体追跡装置１は、抽象度が高い特徴量に基づいて複数のパーティクルそれぞれの尤度を推定することで、動画像に含まれる物体を追跡する精度を向上させることができる。
以下、物体追跡装置１の詳細について説明する。
【００３７】
［物体追跡装置１の構成］
図３は、物体追跡装置１の構成を示す図である。物体追跡装置１は、操作部１１、記憶部１２、及び制御部１３を有する。
【００３８】
操作部１１は、ユーザの操作を受け付ける入力デバイスである。
記憶部１２は、例えば、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）及びハードディスク等の記憶媒体である。記憶部１２は、制御部１３が実行する各種のプログラムを記憶する。
【００３９】
制御部１３は、例えばＣＰＵ（Central Processing Unit）である。制御部１３は、記憶部１２に記憶されているプログラムを実行することにより、物体追跡装置１に係る機能を制御する。制御部１３は、プログラムを実行することにより、動画像取得部１３１、伝搬制御部１３２、抽出部１３３、指示受付部１３６、特徴点検出部１３７、選択部１３８、尤度推定部１３９、及び追跡部１４０として機能する。
動画像取得部１３１は、撮像装置で生成された動画像を取得する。動画像取得部１３１は、例えば、ＨＤＭＩ（High-Definition Multimedia Interface）（登録商標）ケーブルにより接続された撮像装置が撮像した動画像を取得する。動画像取得部１３１は、記憶部１２に記憶されている動画像を取得してもよい。動画像取得部１３１は、取得した動画像を、伝搬制御部１３２に入力する。
【００４０】
伝搬制御部１３２は、動画像取得部１３１から入力された動画像に含まれる現フレーム画像及び前フレーム画像のそれぞれに、機械学習モデルＭに含まれる複数の処理層を伝搬させる。図２に示す例において、伝搬制御部１３２は、まず、動画像に含まれる複数のフレーム画像それぞれに、機械学習モデルＭに含まれる入力層Ｍ１から出力層Ｍ１０までの各処理層を、順に伝搬させる。そして、伝搬制御部１３２は、機械学習モデルＭから出力されたフレーム画像ごとの物体の種別に基づいて、現フレーム画像及び前フレーム画像を選択する。伝搬制御部１３２は、例えば、動画像に含まれる複数のフレーム画像のうち、種別が同一である物体が連続して写っているフレーム画像群を、現フレーム画像及び前フレーム画像として選択する。伝搬制御部１３２は、選択した現フレーム画像及び前フレーム画像を示す情報を抽出部１３３に入力する。
【００４１】
抽出部１３３は、複数の処理層から選択した後段処理層、及び後段処理層の直前の処理層である前段処理層の両方の処理層において共通に活性化している、現フレーム画像に基づいて後段処理層及び前段処理層から出力された一以上の現フレーム出力と前フレーム画像に基づいて後段処理層及び前段処理層から出力された一以上の前フレーム出力とを抽出する。抽出部１３３が行う抽出処理の詳細については後述するが、抽出部１３３は、後段処理層で共通に活性化している現フレーム出力の一部である後段現フレーム出力及び前フレーム出力の一部である後段前フレーム出力を抽出する後段抽出部１３４と、前段処理層で共通に活性化している現フレーム出力の一部である前段現フレーム出力及び前フレーム出力の一部である前段前フレーム出力を抽出する前段抽出部１３５とを有する。
【００４２】
抽出部１３３が抽出する現フレーム出力及び前フレーム出力は、処理層に含まれる複数のユニットのうち、活性化しているユニットを示す情報である。ユニットは、フレーム画像に含まれる一以上の画素である。活性化の定義は、例えば、ユニットの出力値又はユニットの出力値と当該ユニットの結合の重みとの積が、所定の閾値を超えた場合でもよいし、出力の大きい順に所定の個数又は所定の割合に含まれた場合であってもよい。また、全結合層以外の処理層においては、例えば、チャンネルごとに出力の大きい順に所定の個数又は所定の割合に含まれた場合であってもよい。チャンネルは、フィルタ毎に畳み込み演算した出力である。
【００４３】
抽出部１３３は、複数の処理層のうち、最後尾の処理層である最後尾層を後段処理層として選択することが好ましい。しかし、最後尾層において共通に活性化している現フレーム出力及び前フレーム出力がない場合がある。そこで、抽出部１３３は、複数の処理層のうち、最後尾層を後段処理層として選択した場合において、最後尾層において共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力がない場合、最後尾層より前の処理層において共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力を抽出してもよい。
【００４４】
例えば、抽出部１３３が、最後尾層である出力層Ｍ１０を後段処理層として選択した場合において、出力層Ｍ１０において共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力がないとする。この場合において、抽出部１３３は、出力層Ｍ１０より前の各処理層に対して、共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力を繰り返し探索する。抽出部１３３は、例えば、出力層Ｍ１０の直前の処理層である第２の全結合層Ｍ９において共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力があった場合、第２の全結合層Ｍ９を後段処理層として選択する。そして、抽出部１３３は、後段処理層として選択した第２の全結合層Ｍ９において共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力を抽出する。このようにすることで、抽出部１３３は、現フレーム画像と前フレーム画像とで一致する領域が少ない場合であっても、それぞれに写る物体を対応付けることができる。
【００４５】
抽出部１３３は、ユーザによって指定された処理層を後段処理層として選択してもよい。具体的には、指示受付部１３６が、操作部１１を介して、複数の処理層のうち、後段処理層として用いる処理層を選択する指示を受け付ける。そして、抽出部１３３は、指示受付部１３６が受け付けた指示が示す処理層を、後段処理層として使用する。抽出部１３３は、図２に示す例において、ユーザが第２の全結合層Ｍ９を選択した場合に、指示受付部１３６が受け付けた指示が示す第２の全結合層Ｍ９を、後段処理層として使用する。抽出部１３３は、抽出した現フレーム出力と前フレーム出力とを特徴点検出部１３７に入力する。
【００４６】
特徴点検出部１３７は、一以上の現フレーム出力に基づいて一以上の現フレーム特徴点を検出し、かつ一以上の前フレーム出力に基づいて一以上の前フレーム特徴点を検出する。具体的には、特徴点検出部１３７は、まず、一以上の現フレーム出力及び一以上の前フレーム出力に基づいて、対応する特徴点を探索する。そして、特徴点検出部１３７は、対応関係にある一以上の現フレーム出力に基づく一以上の現フレーム特徴点と、一以上の前フレーム出力に基づく一以上の前フレーム特徴点とを検出する。特徴点検出部１３７は、検出した現フレーム特徴点及び前フレーム特徴点を選択部１３８に入力する。
【００４７】
選択部１３８は、特徴点検出部１３７が特定した一以上の現フレーム特徴点及び一以上の前フレーム特徴点から、相互の対応関係に基づいて一部の現フレーム特徴点及び一部の前フレーム特徴点を選択する。具体的には、選択部１３８は、誤検出した対応関係を除去し、除去した後の対応関係に基づく一以上の現フレーム特徴点及び一以上の前フレーム特徴点を選択する。対応関係の誤検出は、現フレーム特徴点及び前フレーム特徴点の対応関係に矛盾が生じている状態である。選択部１３８は、例えば、ＲＡＮＳＡＣ（Random Sampling Consensus）法又は最小２乗メディアン（ＬＭｅｄＳ：Least Median of Square）法に基づいて絞り込みを行うことにより対応関係を除去する。
【００４８】
尤度推定部１３９は、特徴点検出部１３７が検出した一以上の現フレーム特徴点及び一以上の前フレーム特徴点に基づいて、パーティクルフィルタに用いる尤度を推定する。尤度推定部１３９が行う尤度推定処理の詳細については後述するが、尤度推定部１３９は、まず、前フレーム画像に関連付けて複数の遷移前パーティクルを生成し、生成した複数の遷移前パーティクルを所定の物体遷移モデルに則って遷移させる。そして、尤度推定部１３９は、一以上の前フレーム特徴点に対応する一以上の現フレーム特徴点の位置と、遷移させた複数の遷移後パーティクルの位置とを比較することにより、複数の遷移後パーティクルそれぞれの尤度を推定する。
【００４９】
尤度推定部１３９は、選択部１３８が選択した一部の前フレーム特徴点に対応する一部の現フレーム特徴点の位置と、複数の遷移後パーティクルの位置とを比較することにより、複数の遷移後パーティクルそれぞれの尤度を推定してもよい。所定の物体遷移モデルは、物体の動作の特性をモデル化した運動モデルであり、例えば、等速直線運動モデル、又は自己回帰モデル等である。尤度推定部１３９は、推定した複数の遷移後パーティクルそれぞれの尤度を追跡部１４０に入力する。
【００５０】
追跡部１４０は、尤度推定部１３９が推定した複数の遷移後パーティクルそれぞれの尤度に基づいて複数の遷移後パーティクルから選択した一部の遷移後パーティクルに基づいて、動画像に含まれる物体を追跡する。具体的には、追跡部１４０は、まず、尤度推定部１３９が推定した複数の遷移後パーティクルそれぞれの尤度の大きさに基づいて複数の遷移後パーティクルから一部の遷移後パーティクルを選択する。追跡部１４０は、例えば、尤度推定部１３９が推定した複数の遷移後パーティクルそれぞれの尤度の大きい順に、所定の数量の遷移後パーティクルを選択する。所定の数量は、予め物体追跡装置１に設定されている。そして、追跡部１４０は、選択した一部の遷移後パーティクルを重み付き平均によって算出したパラメータに基づいて、現フレーム画像に含まれる物体の位置を推定する。パラメータは、例えば、現フレーム画像に含まれる物体の位置を示す座標値等である。
【００５１】
追跡部１４０は、複数の遷移後パーティクルから選択した一部の遷移後パーティクルそれぞれの尤度の大きさに基づいて、現フレーム画像の後のフレーム画像に含まれる物体を追跡するために用いる複数の遷移前パーティクルを選択する。具体的には、追跡部１４０は、尤度が大きい遷移後パーティクルを複製し、尤度が小さい遷移後パーティクルを消去する。追跡部１４０は、複数の遷移後パーティクルから選択した一部の遷移後パーティクルそれぞれの尤度の大きさに基づいて、所定の数量の遷移後パーティクルを選択してもよい。
【００５２】
［抽出処理］
続いて、抽出部１３３が行う抽出処理について説明する。上述のとおり、抽出部１３３は、後段抽出部１３４及び前段抽出部１３５を有する。後段抽出部１３４は、現フレーム画像が複数の処理層の一部である前段処理層及び後段処理層の順に伝搬したことにより後段処理層から出力された複数の後段現フレーム出力、及び前フレーム画像が前段処理層及び後段処理層の順に伝搬したことにより後段処理層から出力された複数の後段前フレーム出力から、共通に活性化している一以上の後段現フレーム出力及び一以上の後段前フレーム出力を抽出する。
【００５３】
前段抽出部１３５は、一以上の後段現フレーム出力及び一以上の後段前フレーム出力を活性化させる要因となった前段処理層から出力された複数の前段現フレーム出力、及び前段処理層から出力された複数の前段前フレーム出力のうち、共通に活性化している一以上の前段現フレーム出力及び一以上の前段前フレーム出力を抽出する。
【００５４】
図４から図９は、抽出部１３３が行う抽出処理について説明するための図である。図４から図９は、前段処理層から後段処理層に伝搬させた状態を示している。図４から図９において、実線で示すユニットを結合する結合線は、結合するユニットから出力があったことを示し、破線で示す結合線は、結合するユニットから出力が無かったことを示す。また、結合線を示す線の太さは、結合するユニットからの出力の大きさを示す。
【００５５】
図４の場合において、後段処理層は、最後尾層（例えば、出力層又は全結合層等）又は抽出部１３３が選択した最後尾層より前の処理層（全結合層又はプーリング層等）であり、前段処理層は、後段処理層の直前の処理層（例えば、全結合層又はプーリング層等）である。図４においては、後段処理層が出力層Ｍ２０であり、前段処理層が全結合層Ｍ１９であるとして説明する。
【００５６】
図４（ａ）は、抽出前の状態であり、図４（ｂ）は抽出後の状態である。現フレーム画像において、出力層Ｍ２０は、ユニットＵ５、Ｕ８が活性化しており、全結合層Ｍ１９は、ユニットＵ２、Ｕ５、Ｕ６、Ｕ７、Ｕ８が活性化している。前フレーム画像において、出力層Ｍ２０は、ユニットＵ３、Ｕ５が活性化しており、全結合層Ｍ１９は、ユニットＵ２、Ｕ４、Ｕ５、Ｕ８が活性化している。
【００５７】
この場合において、後段抽出部１３４は、後段処理層である出力層Ｍ２０から出力された後段現フレーム出力であるユニットＵ５、Ｕ８、及び出力層Ｍ２０から出力された後段前フレーム出力であるユニットＵ３、Ｕ５を比較する。そして、後段抽出部１３４は、共通に活性化している後段現フレーム出力のユニットＵ５及び後段前フレーム出力のユニットＵ５を抽出する。
【００５８】
続いて、前段抽出部１３５は、後段現フレーム出力のユニットＵ５を活性化させる要因となった前段処理層である全結合層Ｍ１９から出力された前段現フレーム出力であるユニットＵ２、Ｕ５、Ｕ６、及び後段前フレーム出力のユニットＵ５を活性化させる要因となった全結合層Ｍ１９から出力された前段前フレーム出力であるユニットＵ２、Ｕ５、Ｕ８を比較する。そして、前段抽出部１３５は、共通に活性化している前段現フレーム出力のユニットＵ２、Ｕ５、及び前段前フレーム出力のユニットＵ２、Ｕ５を抽出する。
【００５９】
抽出部１３３は、出力層Ｍ２０から全結合層Ｍ１９までの出力を抽出すると、次の処理層に対する出力を抽出する。具体的には、抽出部１３３は、処理層ごとに、共通に活性化している現フレーム出力及び前フレーム出力を抽出する処理を、伝搬制御部１３２が伝搬させた順序とは逆の順序で繰り返し行う。より具体的には、抽出部１３３は、複数の処理層のうち一つの層を後段処理層として選択して一以上の現フレーム出力及び一以上の前フレーム出力を抽出した後に、前段処理層として選択した処理層を後段処理層として選択して、別の一以上の現フレーム出力及び一以上の前フレーム出力を抽出する。このようにすることで、抽出部１３３は、現フレーム画像及び前フレーム画像に対する比較の精度を高めることができる。
【００６０】
図５は、現フレーム画像に基づいて、前段処理層から後段処理層に伝搬させた状態を示している。図６は、前フレーム画像に基づいて、前段処理層から後段処理層に伝搬させた状態を示している。図５及び図６の場合において、後段処理層は、全結合層Ｍ１８であり、前段処理層は、全結合層以外の処理層（例えば、プーリング層又は畳み込み層等）である。図５及び図６においては、前段処理層がプーリング層Ｍ１７であるとして説明する。また、図５及び図６において、前段処理層は、３つのチャンネルを有する。上段の第１チャンネルは、ユニットＵ１１、Ｕ１２、Ｕ１３、Ｕ１４、及びＵ１５を含む。中段の第２チャンネルは、ユニットＵ２１、Ｕ２２、Ｕ２３、Ｕ２４、及びＵ２５を含む。下段の第３チャンネルは、ユニットＵ３１、Ｕ３２、Ｕ３３、Ｕ３４、及びＵ３５を含む。
【００６１】
現フレーム画像において、プーリング層Ｍ１７は、第１チャンネルに含まれるユニットＵ１３及び第２チャンネルに含まれるユニットＵ２１、Ｕ２４が活性化している。前フレーム画像において、全結合層Ｍ１８は、第２チャンネルに含まれるユニットＵ２２、Ｕ２４、Ｕ２５及び第３チャンネルに含まれるユニットＵ３２、Ｕ３３が活性化している。
【００６２】
前段抽出部１３５は、後段現フレーム出力のユニットＵ５を活性化させる要因となった前段処理層であるプーリング層Ｍ１７から出力された前段現フレーム出力、及び後段前フレーム出力のユニットＵ５を活性化させる要因となったプーリング層Ｍ１７から出力された前段前フレーム出力を比較する。前段抽出部１３５は、活性化しているユニットの有無を調べ、活性化している前段現フレーム出力の第１チャンネルに含まれるユニットＵ１３及び第２チャンネルに含まれるＵ２１、Ｕ２４と、前段前フレーム出力の第２チャンネルに含まれるユニットＵ２２、Ｕ２４、Ｕ２５及び第３チャンネルに含まれるＵ３２、Ｕ３３とに着目する。
【００６３】
そして、前段抽出部１３５は、前段現フレーム出力と前段前フレーム出力との両方において活性化しているユニットが存在しているチャンネルが第２チャンネルであることから、前段現フレーム出力の第２チャンネルに含まれるユニットＵ２１、Ｕ２４及び前段前フレーム出力の第２チャンネルに含まれるユニットＵ２２、Ｕ２４、Ｕ２５を抽出する。
【００６４】
図７の場合において、後段処理層は、プーリング層Ｍ１６であり、前段処理層は、プーリング層以外の処理層（例えば、畳み込み層又は正規化層等）である。図７においては、前段処理層が畳み込み層Ｍ１５であるとして説明する。また、図７において、前段処理層は、チャンネルが１つであるとして説明する。現フレーム画像において、プーリング層Ｍ１６は、ユニットＵ５が活性化しており、畳み込み層Ｍ１５は、ユニットＵ３、Ｕ５が活性化している。前フレーム画像において、プーリング層Ｍ１６は、ユニットＵ３が活性化しており、畳み込み層Ｍ１５は、ユニットＵ３、Ｕ４が活性化している。
【００６５】
ここで、抽出部１３３は、画像の圧縮を行うプーリング層においては、直前の処理層からプーリング層に結合している複数のユニットのうち、チャンネルごとに活性化している程度に基づいて出力を抽出する。具体的には、前段抽出部１３５は、複数の前段現フレーム出力及び複数の前段前フレーム出力のうち、活性化している大きさに基づいて、一以上の前段現フレーム出力及び一以上の前段前フレーム出力を抽出する。前段抽出部１３５は、例えば、複数の前段現フレーム出力及び複数の前段前フレーム出力のうち、チャンネルごとに最も大きく活性化している一以上の前段現フレーム出力及び一以上の前段前フレーム出力を抽出する。
【００６６】
この場合において、後段抽出部１３４は、直前の抽出処理において前段処理層として選択したプーリング層Ｍ１６を選択して、プーリング層Ｍ１６から出力された後段現フレーム出力のユニットＵ５、及びプーリング層Ｍ１６から出力された後段前フレーム出力のユニットＵ３を抽出する。そして、前段抽出部１３５は、後段現フレーム出力のユニットＵ３、Ｕ５及び後段前フレーム出力のユニットＵ３、Ｕ４のうち、チャンネルごとに最も大きく活性化している前段現フレーム出力のユニットＵ５、及び前段前フレーム出力のユニットＵ４を抽出する。このようにすることで、前段抽出部１３５は、画像の中で特徴となる領域を特定することができる。
【００６７】
図８の場合において、後段処理層は、畳み込み層Ｍ１４であり、前段処理層は、畳み込み層を含む他の処理層（例えば、正規化層又はプーリング層等）である。図８においては、前段処理層が正規化層Ｍ１３であるとして説明する。また、図８において、前段処理層は、チャンネルが１つであるとして説明する。現フレーム画像において、畳み込み層Ｍ１４は、ユニットＵ５が活性化しており、正規化層Ｍ１３は、ユニットＵ３、Ｕ５、Ｕ６が活性化している。前フレーム画像において、畳み込み層Ｍ１４は、ユニットＵ３が活性化しており、正規化層Ｍ１３は、ユニットＵ３、Ｕ４、Ｕ５が活性化している。
【００６８】
この場合において、後段抽出部１３４は、直前の抽出処理において前段処理層として選択した畳み込み層Ｍ１４を選択して、畳み込み層Ｍ１４から出力された後段現フレーム出力のユニットＵ５、及び畳み込み層Ｍ１４から出力された後段前フレーム出力のユニットＵ３を抽出する。
【００６９】
続いて、前段抽出部１３５は、後段現フレーム出力のユニットＵ５を活性化させる要因となった前段処理層である正規化層Ｍ１３から出力された前段現フレーム出力、及び後段前フレーム出力のユニットＵ４を活性化させる要因となった前段処理層である正規化層Ｍ１３から出力された前段前フレーム出力を比較する。ここで、前段抽出部１３５は、後段処理層が畳み込み層である場合、後段抽出部１３４が後段処理層から抽出したユニットに結合する前段処理層の複数のユニットのうち、前段現フレーム出力と前段前フレーム出力とにおいて位置が相対的に同じであり、かつチャンネルが共通するユニットを抽出する。この場合、前段抽出部１３５は、前段現フレーム出力と前段前フレーム出力とにおいて位置が相対的に同じであり、かつチャンネルが共通するユニットとして、前段現フレーム出力のユニットＵ５、Ｕ６、及び前段前フレーム出力のユニットＵ３、Ｕ４を抽出する。
【００７０】
図９の場合において、後段処理層は、正規化層Ｍ１２であり、前段処理層は、正規化層以外の処理層（例えば、畳み込み層又はプーリング層等）である。図９においては、前段処理層がプーリング層Ｍ１１であるとして説明する。また、図９において、前段処理層は、チャンネルが１つであるとして説明する。現フレーム画像において、正規化層Ｍ１２は、ユニットＵ５が活性化している。前フレーム画像において、正規化層Ｍ１２は、ユニットＵ３が活性化している。
【００７１】
ここで、抽出部１３３は、画像に対して前処理を行う正規化層においては、後段処理層において活性化しているユニットに結合している前段処理層に含まれる複数のユニットのうち、中心のユニットを抽出する。この場合において、後段抽出部１３４は、後段処理層として選択した正規化層Ｍ１２から出力された後段現フレーム出力のユニットＵ５、及び正規化層Ｍ１２から出力された後段前フレーム出力のユニットＵ３を抽出する。
【００７２】
そして、前段抽出部１３５は、正規化層Ｍ５から出力された後段現フレーム出力のユニットＵ５に結合しているプーリング層Ｍ１１のユニットのうち、中心のユニットＵ５を抽出する。同様に、前段抽出部１３５は、正規化層Ｍ１２から出力された後段前フレーム出力のユニットＵ３に結合しているプーリング層Ｍ１１のユニットのうち、中心のユニットＵ３を抽出する。
【００７３】
抽出部１３３は、上述の抽出処理を入力層まで繰り返し行うことが好ましい。しかし、抽出部１３３は、抽出処理を最初の処理層まで行わずに、途中の処理層（例えば、プーリング層又は正規化層等）で終了してもよい。このように、抽出部１３３は、伝搬制御部１３２が伝搬させた順序とは逆の順序で抽出処理を行うことにより、抽象度が高い出力を抽出することができる。
【００７４】
［物体追跡処理］
続いて、物体追跡処理について説明する。図１０は、物体追跡処理の詳細について説明するための図である。図１０に示す白い丸は、尤度推定部１３９又は追跡部１４０が生成したパーティクルであり、黒い丸は、特徴点検出部１３７が検出した特徴点である。白い丸及び黒い丸それぞれの位置は、フレーム画像に位置する白い丸及び黒い丸それぞれの位置関係を示す。例えば、前フレーム特徴点Ｆ１を基準とした場合に、パーティクルＰ２が最も近く、パーティクルＰ３が最も遠い関係である。
【００７５】
まず、尤度推定部１３９は、前フレーム画像に関連付けて複数の遷移前パーティクルを生成する（図１０の（１））。図１０に示すように、尤度推定部１３９は、前フレーム画像に遷移前パーティクルＰ１、Ｐ２、Ｐ３を生成する。具体的には、尤度推定部１３９は、追跡部１４０が選択した遷移前パーティクルＰ１、Ｐ２、Ｐ３が存在する場合、遷移前パーティクルＰ１、Ｐ２、Ｐ３を前フレーム画像に配置する。一方、尤度推定部１３９は、追跡部１４０が生成したパーティクルが存在しない場合、すなわち、尤度を最初に推定する場合、遷移前パーティクルＰ１、Ｐ２、Ｐ３を生成して前フレーム画像に配置する。
【００７６】
続いて、尤度推定部１３９は、配置した複数の遷移前パーティクルを所定の物体遷移モデルに則って遷移させることにより、物体の動きを予測する（図１０の（２））。尤度推定部１３９は、例えば、等速直線運動モデルに則って、遷移前パーティクルＰ１、Ｐ２、Ｐ３を遷移後パーティクルＰ４、Ｐ５、Ｐ６の位置に遷移させる。
【００７７】
続いて、尤度推定部１３９は、一以上の前フレーム特徴点に対応する一以上の現フレーム特徴点の位置と、遷移させた後の複数の遷移後パーティクルの位置とを比較することにより、複数の遷移後パーティクルそれぞれの尤度を推定する（図１０の（３））。具体的には、尤度推定部１３９は、一以上の前フレーム特徴点に対応する一以上の現フレーム特徴点の位置に近い遷移後パーティクルに対して尤度が大きくなるように推定する。尤度推定部１３９は、例えば、前フレーム特徴点Ｆ１に対応する現フレーム特徴点Ｆ２に近い順として、遷移後パーティクルＰ４、Ｐ５、Ｐ６に対して、尤度の大きさが「Ｐ５＞Ｐ４＞Ｐ６」となるように推定する。
【００７８】
尤度推定部１３９は、一以上の前フレーム特徴点に対応しているか否かを問わず、一以上の現フレーム特徴点の位置と、複数の遷移後パーティクルとの位置とを比較することにより、複数の遷移後パーティクルそれぞれの尤度を推定してもよい。尤度推定部１３９は、例えば、遷移後パーティクルと、現フレーム画像内の複数の現フレーム特徴点のうち遷移後パーティクルに最も近い現フレーム特徴点との近さを尤度として推定してもよい。この場合、尤度推定部１３９は、現フレーム特徴点の位置と、遷移後パーティクルの位置との距離の逆数を尤度として推定してもよい。また、尤度推定部１３９は、例えば、遷移後パーティクルと、一以上の現フレーム特徴点との平均的な近さを尤度として推定してもよい。また、尤度推定部１３９は、例えば、遷移後パーティクルと、当該遷移後パーティクルに対応する遷移前パーティクルの最近傍の前フレーム特徴点と対応関係にある現フレーム特徴点との近さを尤度としてもよい。
【００７９】
ところで、尤度推定部１３９が尤度を最初に推定する場合、複数の遷移前パーティクルを配置する基準となる尤度を推定した複数の遷移後パーティクルが存在しない。そこで、尤度推定部１３９は、尤度を最初に推定する場合において、前フレーム画像にランダムに配置した複数の遷移前パーティクルを生成し、一以上の前フレーム特徴点に対応する前記一以上の現フレーム特徴点の位置と、複数の遷移後パーティクルの位置とを比較することにより、複数の遷移後パーティクルそれぞれの尤度を推定する。
【００８０】
このように初期の遷移前パーティクルを前フレーム画像全体にランダムに配置することにより、追跡部１４０は、尤度推定部１３９が推定した尤度に基づいて物体の位置を推定することができる。しかし、遷移前パーティクルを前フレーム画像全体にランダムに配置した場合、物体の位置に配置される遷移前パーティクルの割合が少なくなり、尤度推定部１３９が尤度を推定する精度が悪くなる可能性がある。そこで、尤度推定部１３９は、一以上の前フレーム特徴点に対応する一以上の現フレーム特徴点の位置と、一以上の前フレーム特徴点をパーティクルとして用いた一以上の遷移前パーティクルを所定の物体遷移モデルに則って遷移させた遷移後パーティクルの位置とを比較することにより、一以上の遷移後パーティクルそれぞれの尤度を推定してもよい。
【００８１】
尤度推定部１３９は、例えば、前フレーム特徴点Ｆ１に対応する現フレーム特徴点Ｆ２の位置と、前フレーム特徴点Ｆ１をパーティクルとして用いた遷移前パーティクルを所定の物体遷移モデルに則って遷移させた遷移後パーティクルの位置とを比較することにより、一以上の遷移後パーティクルそれぞれの尤度を推定してもよい。このように抽象度が高い特徴量に基づく特徴点を初期の遷移前パーティクルとして用いることにより、遷移前パーティクルをランダムに配置する場合に比べて、物体の位置に配置される遷移前パーティクルの割合が多くなり、尤度推定部１３９は、尤度を推定する精度を向上させることができる。
【００８２】
続いて、追跡部１４０は、尤度推定部１３９が推定した複数の遷移後パーティクルそれぞれの尤度に基づいて複数の遷移後パーティクルから選択した一部の遷移後パーティクルに基づいて、現フレーム画像に含まれる物体の位置を推定する（図１０の（４））。追跡部１４０は、例えば、尤度推定部１３９が推定した遷移後パーティクルの尤度の大きい順「Ｐ５＞Ｐ４＞Ｐ６」に、所定の数量の遷移後パーティクルを選択する。追跡部１４０は、例えば、所定の数量が２つである場合、尤度推定部１３９が推定した遷移後パーティクルの尤度の大きい順として、遷移後パーティクルＰ４、Ｐ５を選択する。
【００８３】
そして、追跡部１４０は、選択した一部の遷移後パーティクルＰ４、Ｐ５を重み付き平均によって算出したパラメータに基づいて、現フレーム画像に含まれる物体の位置を推定する。追跡部１４０は、例えば、現フレーム画像において、推定した物体の位置を四角い枠で示してもよい。
【００８４】
続いて、追跡部１４０は、複数の遷移後パーティクルから選択した一部の遷移後パーティクルそれぞれの尤度の大きさに基づいて、現フレーム画像の後のフレーム画像に含まれる物体を追跡するために用いる複数の遷移前パーティクルを選択する（図１０の（５））。追跡部１４０は、例えば、尤度が大きい遷移後パーティクルＰ５を、遷移後パーティクルＰ５、Ｐ７、Ｐ８のように複製し、尤度が小さい遷移後パーティクルＰ６を消去する。このように、物体追跡装置１は、物体追跡処理を繰り返すことにより、動画像に含まれる物体を追跡する。
【００８５】
［物体追跡装置１の処理］
続いて、物体追跡装置１が行う処理の流れを説明する。図１１は、物体追跡装置１が行う処理の流れを示すフローチャートである。本フローチャートは、物体追跡装置１が、記憶部１２に動画像が格納され、ユーザによる動画像を圧縮する処理を実行する操作を受け付けたことを契機として開始する。
【００８６】
動画像取得部１３１は、記憶部１２に記憶されている動画像を取得する（Ｓ１）。動画像取得部１３１は、取得した動画像を伝搬制御部１３２に入力する。伝搬制御部１３２は、動画像取得部１３１から入力された動画像に含まれるフレーム画像である現フレーム画像及び前フレーム画像のそれぞれを、機械学習モデルＭに含まれる入力層Ｍ１から出力層Ｍ１０までの複数の処理層に、入力層Ｍ１から順に伝搬させる（Ｓ２）。
【００８７】
抽出部１３３は、後段処理層及び前段処理層の両方の処理層において共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力を抽出する処理を行う（Ｓ３）。図１２は、抽出部１３３が行う処理の流れを示すフローチャートである。抽出部１３３は、指示受付部１３６が、操作部１１を介して、複数の処理層のうち、後段処理層として用いる処理層を選択する指示を受け付けたか否かを判定する（Ｓ３１）。
【００８８】
抽出部１３３は、指示受付部１３６が指示を受け付けたと判定した場合（Ｓ３１においてＹＥＳの場合）、指示受付部１３６が受け付けた指示が示す処理層を、後段処理層として選択する（Ｓ３２）。抽出部１３３は、例えば、指示受付部１３６が第１の全結合層Ｍ８を示す指示を受け付けたと判定した場合、指示受付部１３６が受け付けた指示が示す第１の全結合層Ｍ８を、後段処理層として使用する。一方、抽出部１３３は、指示受付部１３６が指示を受け付けていないと判定した場合（Ｓ３１においてＮＯの場合）、最後尾層（例えば、出力層Ｍ１０）で共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力があるか否かを判定する（Ｓ３３）。
【００８９】
抽出部１３３は、出力層Ｍ１０で共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力があると判定した場合（Ｓ３３においてＹＥＳの場合）、最後尾層である出力層Ｍ１０を、後段処理層として使用する（Ｓ３４）。一方、抽出部１３３は、出力層Ｍ１０で共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力がないと判定した場合（Ｓ３３においてＮＯの場合）、出力層Ｍ１０より前の各処理層に対して、共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力を繰り返し探索する。そして、抽出部１３３は、共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力がある処理層（例えば、第２の全結合層Ｍ９）を、後段処理層として使用する（Ｓ３５）。抽出部１３３は、選択した後段処理層、及び前段処理層の両方の処理層において共通に活性化している、現フレーム画像に基づいて後段処理層及び前段処理層から出力された一以上の現フレーム出力と前フレーム画像に基づいて後段処理層及び前段処理層から出力された一以上の前フレーム出力とを抽出する。
【００９０】
具体的には、まず、後段抽出部１３４は、選択した後段処理層から出力された複数の後段現フレーム出力、及び選択した後段処理層から出力された複数の後段前フレーム出力から、共通に活性化している一以上の後段現フレーム出力及び一以上の後段前フレーム出力を抽出する（Ｓ３６）。そして、前段抽出部１３５は、後段抽出部１３４が抽出した一以上の後段現フレーム出力及び一以上の後段前フレーム出力を活性化させる要因となった前段処理層から出力された複数の前段現フレーム出力、及び前段処理層から出力された複数の前段前フレーム出力のうち、共通に活性化している一以上の前段現フレーム出力及び一以上の前段前フレーム出力を抽出する（Ｓ３７）。
【００９１】
続いて、抽出部１３３は、前段処理層より前に別の処理層があるか否かを判定する（Ｓ３８）。抽出部１３３は、前段処理層（例えば、第２のプーリング層Ｍ７）より前に別の処理層（例えば、第３の畳み込み層Ｍ６）があると判定した場合（Ｓ３８においてＹＥＳの場合）、第２のプーリング層Ｍ７を後段処理層として選択し（Ｓ３９）、処理をＳ３６に戻す。一方、抽出部１３３は、前段処理層（例えば、入力層Ｍ１）より前に別の処理層がないと判定した場合（Ｓ３８においてＮＯの場合）、抽出した一以上の現フレーム出力及び一以上の前フレーム出力を特徴点検出部１３７に入力し、抽出処理を終了する。
【００９２】
図１１に戻り、特徴点検出部１３７は、一以上の現フレーム出力及び一以上の前フレーム出力に基づいて、対応する特徴点を探索し、対応関係にある一以上の現フレーム出力に基づく一以上の現フレーム特徴点と、一以上の前フレーム出力に基づく一以上の前フレーム特徴点とを検出する（Ｓ４）。続いて、選択部１３８は、特徴点検出部１３７が検出した現フレーム特徴点及び前フレーム特徴点に不適切な特徴点があるか否かを判定する（Ｓ５）。選択部１３８は、例えば、ＲＡＮＳＡＣ法に基づいて絞り込みを行う。
【００９３】
選択部１３８は、現フレーム特徴点及び前フレーム特徴点に不適切な特徴点があると判定した場合（Ｓ５においてＹＥＳの場合）、不適切な特徴点、すなわち、誤検出した対応関係にある現フレーム特徴点及び前フレーム特徴点を除去し（Ｓ６）、除去した後の対応関係に基づく一部の現フレーム特徴点及び一部の前フレーム特徴点を選択する。
【００９４】
尤度推定部１３９は、選択部１３８が、現フレーム特徴点及び前フレーム特徴点に不適切な特徴点がないと判定した場合（Ｓ５においてＮＯの場合）、又は誤検出した対応関係を除去した後に、追跡部１４０によって生成された複数の遷移前パーティクルがあるか否かを判定する（Ｓ７）。尤度推定部１３９は、追跡部１４０によって生成された複数の遷移前パーティクルがないと判定した場合（Ｓ７においてＮＯの場合）、複数の遷移前パーティクルを生成する（Ｓ８）。尤度推定部１３９は、一以上の前フレーム特徴点を遷移前パーティクルとして用いてもよい。
【００９５】
尤度推定部１３９は、追跡部１４０によって生成された複数の遷移前パーティクルがあると判定した場合（Ｓ７においてＹＥＳの場合）、又は複数の遷移前パーティクルを生成した後に、前フレーム画像に複数の遷移前パーティクルを配置する（Ｓ９）。尤度推定部１３９は、例えば、追跡部１４０によって生成された複数の遷移前パーティクルにおいては、追跡部１４０が選択した遷移後パーティクルの位置を基準として、前フレーム画像に遷移前パーティクルを配置する。一方、尤度推定部１３９は、例えば、生成した複数の遷移前パーティクルにおいては、一以上の前フレーム特徴点それぞれの位置に遷移前パーティクルを配置する。
【００９６】
続いて、尤度推定部１３９は、現フレーム画像において、前フレーム画像に配置した複数の遷移前パーティクルを、所定の物体遷移モデルに則って遷移させる（Ｓ１０）。尤度推定部１３９は、例えば、等速直線運動モデルに則って、前フレーム画像に配置した複数の遷移前パーティクルを遷移させる。続いて、尤度推定部１３９は、一以上の前フレーム特徴点に対応する一以上の現フレーム特徴点の位置と、遷移させた後の複数の遷移後パーティクルの位置とを比較することにより、複数の遷移後パーティクルそれぞれの尤度を推定する（Ｓ１１）。
【００９７】
続いて、追跡部１４０は、尤度推定部１３９が推定した複数の遷移後パーティクルそれぞれの尤度に基づいて複数の遷移後パーティクルから選択した一部の遷移後パーティクルに基づいて、現フレーム画像に含まれる物体の位置を推定する（Ｓ１２）。その後、追跡部１４０は、複数の遷移後パーティクルから選択した一部の遷移後パーティクルそれぞれの尤度の大きさに基づいて、現フレーム画像の後のフレーム画像に含まれる物体を追跡するために用いる複数の遷移前パーティクルを選択する（Ｓ１３）。
【００９８】
［実施形態における効果］
以上説明したとおり、物体追跡装置１は、取得した動画像に含まれる現フレーム画像及び前フレーム画像のそれぞれに、機械学習モデルＭに含まれる複数の処理層を伝搬させる。物体追跡装置１は、伝搬させた順とは逆の順序で後段処理層及び前段処理層の両方の処理層において共通に活性化している一以上の現フレーム出力及び一以上の前フレーム出力を、処理層ごとに抽出し、対応関係にある現フレーム特徴点及び前フレーム特徴点をそれぞれ検出する。そして、物体追跡装置１は、前フレーム特徴点に対応する現フレーム特徴点の位置と、物体の動きを予測した遷移後パーティクルの位置とを比較することにより推定した尤度に基づいて、動画像に含まれる物体を追跡する。
【００９９】
このようにすることで、物体追跡装置１は、畳み込みニューラルネットワークを含む機械学習モデルＭを使用し、深層学習による抽象度が高い特徴量を求めることにより、フレーム画像間における物体の動きを推定することができる。その結果、物体追跡装置１は、動画像に含まれる物体を追跡する精度を向上させることができる。
【０１００】
物体追跡装置１は、例えば、店舗内行動分析等において、個々の客を追跡することができる。物体追跡装置１は、パーティクルフィルタのシステムモデルを適切に設計することにより、複数の客が交錯する場合であっても、個々の客を分離して追跡することができる。また、物体追跡装置１は、例えば、サッカーの試合において、個々のサッカー選手を追跡することができる。物体追跡装置１は、パーティクルフィルタのシステムモデルを適切に設計することにより、個々のサッカー選手を分離して追跡することができる。
【０１０１】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の分散・統合の具体的な実施の形態は、以上の実施の形態に限られず、その全部又は一部について、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果を合わせ持つ。
【符号の説明】
【０１０２】
１  物体追跡装置
１１  操作部
１２  記憶部
１３  制御部
１３１  動画像取得部
１３２  伝搬制御部
１３３  抽出部
１３４  後段抽出部
１３５  前段抽出部
１３６  指示受付部
１３７  特徴点検出部
１３８  選択部
１３９  尤度推定部
１４０  追跡部
【図１】
2019185210.tif 000003
【図２】
2019185210.tif 000004
【図３】
2019185210.tif 000005
【図４】
2019185210.tif 000006
【図５】
2019185210.tif 000007
【図６】
2019185210.tif 000008
【図７】
2019185210.tif 000009
【図８】
2019185210.tif 000010
【図９】
2019185210.tif 000011
【図１０】
2019185210.tif 000012
【図１１】
2019185210.tif 000013
【図１２】
2019185210.tif 000014