[第1の実施形態]
図1は、第1の実施形態に係る物体追跡装置の機能的構成を示す図である。
図1のように、本実施形態の物体追跡装置1は、映像取得部110と、追跡部120と、移動先予測部130と、優先カメラ決定部140と、出力部150と、記憶部190とを備える。
映像取得部110は、複数のカメラ2のそれぞれにより撮像された複数の映像を取得する。映像取得部110は、取得した複数の映像を、撮像したカメラ2を識別可能な態様で、記憶部190に映像データ191として記憶させる。取得する複数の映像は、所定の撮像エリア内をそれぞれ異なる視野で撮像する態様で配置された複数のカメラ2のそれぞれにより撮像された映像である。所得する複数の映像は、それぞれ、第1の時刻から第2の時刻までの期間に撮像された区間を含む映像である。以下の説明では、複数のカメラ2のそれぞれにより撮像された複数の映像を、単に複数の映像という。
追跡部120は、複数の映像から追跡対象である物体を検出して追跡する。追跡部120は、複数の映像のそれぞれにおける同一時刻に撮像されたフレームの組を処理単位として、時系列に、フレームの組から物体を検出して追跡する処理を行う。また、本実施形態の物体追跡装置1における追跡部120は、追跡中である記憶部190に記憶させた優先カメラ情報195を利用して、追跡対象である物体を検出して追跡する。優先カメラ情報195は、追跡処理の対象となるフレームの組に含まれるフレームのうちの、追跡部120が追跡中の物体を追跡する処理で優先すべきフレームを撮像したカメラを示す情報を含む。追跡部120は、例えば、追跡中の物体を1組のフレームから検出して追跡する際の該物体を検出するフレームの絞り込みに、優先カメラ情報195を利用する。例えば、1組のフレームから1個の追跡中の物体を検出する場合に、追跡部120は、該フレームの組に含まれる複数のフレームのうちの優先カメラ情報195において検出難度が閾値以下であるカメラにより撮像されたフレームのみを、該物体を検出するフレームに決定する。
追跡部120は、1組のフレームのうちの優先カメラ情報195を利用して決定した検出難度の低い複数のフレームのそれぞれから、追跡中の物体を検出して追跡する。追跡部120は、既知の検出方法に従って、フレーム内の追跡中の物体を検出する。例えば、追跡部120は、フレーム内で追跡中である物体の映像内での特徴との類似度が最も高くなる領域を、該物体を示す領域として検出する。追跡中である物体の映像内での特徴は、例えば、記憶部190に記憶させた物体特徴情報193に格納されている。映像内での特徴は、色についての特徴、形状についての特徴、及びテクスチャについての特徴のいずれであってもよい。色についての特徴には、例えば、画素値そのもの、色ヒストグラム、及び輝度ヒストグラム等がある。形状についての特徴には、例えば、HaarLike特徴量、Histograms of Oriented. Gradients(HOG)特徴量、及びScaled Invariance. Feature Transform(SIFT)特徴量がある。テクスチャについての特徴には、例えば、Local Binary Pattern(LBP)特徴量がある。
また、追跡部120は、1組のフレームに含まれる全てのフレームを処理の対象として、新たに追跡対象とする物体を検出する。追跡部120は、既知の検出方法に従って、フレーム内の新たに追跡対象とする物体を検出する。追跡対象である物体を新たに検出した場合、追跡部120は、該物体の映像内での特徴を示す情報を、記憶部190の物体特徴情報193に格納する。
また、追跡部120は、追跡中の物体の三次元位置、及び新たに追跡対象とする物体の実空間における三次元位置を算出する。追跡部120は、既知の算出方法に従って、フレーム内の物体についての実空間における三次元位置を算出する。例えば、追跡部120は、1個の物体を検出した複数のフレームのそれぞれにおける該物体の位置と、複数のフレームのそれぞれを撮像した複数のカメラ2の視野とに基づいて、検出した物体の実空間における三次元位置を算出する。追跡部120は、算出した三次元座標を、記憶部190の物***置情報194に格納する。
移動先予測部130は、フレームの組から算出した物体の三次元位置の時間変化に基づいて、該物体の移動先を予測する。移動先予測部130は、物***置情報194に格納された物体の三次元位置に基づいて、次フレームの組の撮像時刻における物体の三次元位置を算出する。例えば、移動先予測部130は、時刻tのフレームの組から算出した物体の位置と、該フレームの組よりも前のフレームの組(例えば時刻t-Δtのフレームの組)から算出した物体の位置とに基づいて、次フレームの組の撮像時刻における物体の位置を算出する。
優先カメラ決定部140は、移動先予測部130における物体の移動先の予測結果に基づいて、次フレームの組に含まれる複数のフレームのそれぞれから追跡対象である物体を検出する際の検出難度を決定し、優先カメラ情報195を更新する。本実施形態の物体追跡装置1における優先カメラ決定部140は、二次元位置算出部141と、検出難度推定部142と、更新部143とを含む。
二次元位置算出部141は、追跡中である物体の移動先の予測結果に基づいて、1組のフレームに含まれるフレーム毎に、次フレームの撮像時刻におけるフレーム平面内での該物体の二次元位置を算出する(予測する)。フレーム平面は、カメラの視野及び焦点距離に基づいて実空間に設定される、撮像範囲内の物体の投影面(投影領域)を含む平面である。フレーム平面内での二次元位置は、実空間における投影面内の位置(言い換えるとフレーム内の位置)を示す二次元座標の座標軸を基準とした位置である。すなわち、二次元位置算出部141において算出される物体の二次元位置は、フレームの外側となる場合もある。
検出難度推定部142は、追跡中である物体毎に、フレーム内での各物体の移動先を示す二次元位置と、背景情報192と、物体特徴情報193とに基づいて、複数の映像のそれぞれにおける次フレームのそれぞれから該物体を検出する際の難度を推定する。本実施形態の物体追跡装置1における検出難度推定部142は、奥側情報取得部142aと、奥側影響度算出部142bと、難度算出部142cとを含む。
奥側情報取得部142aは、フレーム毎に、追跡中である1個の物体のフレーム内での移動先において該物体の奥側であって該物体の周囲に存在する他物体の特徴を取得する。奥側情報取得部142aは、背景情報192及び物体特徴情報193から他物体の特徴を取得する。背景情報192は、追跡対象である物体がカメラの視野内に存在しない状態で撮像した映像における特徴(例えば、床面や建物等の特徴)を含む。また、追跡対象である物体が移動物体の一部分である場合、奥側情報取得部142aは、他物体の特徴として、追跡対象である物体とともに移動する付随部位の特徴も取得する。例えば、追跡対象である物体が人の頭部である場合、奥側情報取得部142aは、人の首から下の部分を付随部位とし、頭部の特徴とともに付随部位の特徴を取得する。
奥側影響度算出部142bは、追跡中である1個の物体の特徴と、取得した奥側情報に基づいて抽出される該1個の物体の周囲の特徴とに基づいて、次フレームから1個の物体を検出する際に該物体の奥側の状態が検出精度に与える奥側影響度DBGを算出する。奥側影響度算出部142bは、例えば、追跡中である1個の物体の特徴と該1個の物体の周囲の特徴との類似度が高くなるほど、奥側影響度DBGが大きくなる換算式を用いて、奥側影響度DBGを算出する。
難度算出部142cは、1組のフレームに含まれるフレーム毎に算出した1個の物体についての奥側影響度DBGに基づいて、該1個の物体に対する次フレームでの検出難度DCPを算出する。本実施形態の物体追跡装置1における難度検出部142cは、奥側影響度DBGを検出難度DCPとする。
更新部143は、検出難度推定部142で算出した検出難度DCPに基づいて、記憶部190の優先カメラ情報195を更新する。
出力部150は、映像データ191及び物***置情報194を含む各種情報を外部装置3に出力する。外部装置3は、例えば、物***置情報194に基づいて映像データ191に人の移動経路を合成する処理を含む、各種処理を行う装置である。
このように、本実施形態の物体追跡装置1では、優先カメラ情報195を利用して、複数のカメラのそれぞれにより撮像した複数の映像から追跡中の物体を検出して追跡する。この種の物体追跡装置1は、例えば、複数の人が移動する空間を複数のカメラにより撮像した映像から人を検出して追跡する物体追跡システムに適用される。
図2は、物体追跡システムのシステム構成例を示す図である。
図2のように、物体追跡システム10Aは、例えば、物体追跡装置1と、8台のカメラ2(2A~2H)とを含む。
8台のカメラ2は、それぞれ、所定の撮像エリア6内の映像を異なった位置から撮像するよう配置される。撮像エリア6は、例えば、各種スポーツにおける競技エリアである。撮像エリア6がバスケットボールの競技エリアである場合、8台のカメラ2は、それぞれ、人(選手)7A~7E及び8A~8Eが移動するバスケットコートの映像を異なった位置から撮像する。8台のカメラ2は、それぞれ、撮像した映像のデータを物体追跡装置1に送信する。図2の物体追跡システム10Aでは、インターネット等の通信ネットワーク4に接続された中継器5が、8台のカメラ2のそれぞれが出力した映像データを集約し通信ネットワーク4を介して物体追跡装置1に送信する。物体追跡装置1は、受信した複数の映像に基づいて、映像内の人(選手)7A~7E及び8A~8Eのそれぞれを検出し、三次元位置を算出して追跡する。また、物体追跡装置1は、例えば、映像内の人7A~7E及び8A~8Eの追跡結果(三次元位置の時間変化)をサーバ装置3A等の外部装置に出力する。サーバ装置3Aは、例えば、8台のカメラ2のそれぞれにより撮像された映像に、映像内の人7A~7E及び8A~8Eの位置関係を示す情報等を付与し、図示しないクライアント装置に向けて配信する。
図2の物体追跡システム10Aにおける物体追跡装置1は、8台のカメラ2のそれぞれにより撮像した複数の映像のそれぞれにおける同一時刻のフレーム内での追跡対象の物体の位置関係に基づいて、追跡対象の物体の三次元位置を算出する。しかしながら、追跡対象である物体(人)は撮像エリア6内を移動しているため、全ての選手が、同一時刻のフレームの全てに写っているとは限らない。例えば、図2の撮像エリア6内にいる人7Dは、8台のカメラ2A~2Hのうちの、第1のカメラ2A、第3のカメラ2C、及び第7のカメラ2Gのそれぞれにより撮像された映像には写っていない。このため、複数のフレームから追跡中の人7Dを検出する場合に第1のカメラ2A、第3のカメラ2C、及び第7のカメラ2Gのそれぞれにより撮像されたフレームを除外することで、物体追跡装置1は、人7Dを追跡する処理を効率よく行うことが可能となる。また、例えば、人7Dの特徴と、人7Dの奥側で該人7Dと重なる他物体の特徴とが類似しているフレームから人7Dを検出する場合には、フレーム(映像)内での人7Dと他物体との境界が不明瞭となり、人7Dの検出精度が低下する。追跡中の物体の検出精度が低下すると、該物体の三次元位置の算出精度が低下し、物体の三次元位置を正しく追跡することが困難となる。このため、本実施形態の物体追跡装置1では、上記のように、優先カメラ情報195を利用して追跡対象である物体を追跡することで、該物体の追跡精度を向上させる。
図3は、優先カメラ情報の内容を説明する図である。
図3の優先カメラ情報195におけるIDは、追跡中である物体(例えば人)を識別する識別子である。また、図3の優先カメラ情報195におけるcam1~cam8は、それぞれ、映像を撮像する8台のカメラ2(2A~2H)を識別する識別子である。すなわち、図3の優先カメラ情報195には、8台のカメラ2A~2Hのそれぞれにより撮像した映像における同一時刻のフレームのそれぞれから追跡中である1個の物体を検出する際の、フレーム毎の検出難度DCPが登録されている。検出難度DCPは、フレームから所定の物体を検出する際の難易度を示す数値であり、本実施形態では、数値が大きいほど検出することが難しくなるようにしている。また、図3の優先カメラ情報195の検出難度DCPにおける「--」は、フレームの撮像時刻における物体の位置がカメラの視野外(撮像範囲外)であることを示している。すなわち、優先カメラ情報195は、追跡中である物体が写っているフレームを撮像したカメラを示す情報と、追跡中である物体が写っているフレームから該物体を検出する際の難度を示す情報とを含む。例えば、ID=1の物体は、cam3、cam4、及びcam6のそれぞれが割り当てられたカメラのそれぞれにより撮像されたフレームには写っていない。また、cam1、cam2、cam5、cam7、及びcam8のそれぞれが割り当てられたカメラのそれぞれにより撮像された5枚のフレームのうちでID=1の物体を最も検出しやすいフレームは、cam7が割り当てられたカメラにより撮像されたフレームである。
本実施形態の物体追跡装置1では、追跡部120において映像(フレーム)から物体を検出して追跡する際に、1組のフレームに含まれる複数のフレームのそれぞれにおける該物体の検出難度DCPを示す優先カメラ情報195を利用する。このため、追跡部120は、優先カメラ情報195に基づいて、複数の映像のなかから物体を検出して追跡する映像(フレーム)を、検出対象である物体が写っており、かつ検出しやすいフレームのみに絞り込むことが可能となる。例えば、ID=1の物体を追跡する場合、追跡部120は、優先カメラ情報195に基づいて、cam3、cam4、及びcam6のそれぞれが割り当てられたカメラのそれぞれにより撮像されたフレームから該物体を検出する処理を省略することが可能となる。また、例えば、物体を検出するフレームの条件を検出難度DCPが10以下のフレームとした場合、追跡部120は、優先カメラ情報195に基づいて、ID=1の物体を検出して追跡するフレームを4枚に絞り込むことが可能となる。更に、優先カメラ情報195に基づいて物体を検出するフレームを絞り込む場合、例えば、物体を検出するフレームの条件は、検出難度DCPが10以下であり、かつ検出難度DCPが小さいフレームから順に3枚のフレームとすることも可能である。このように、優先カメラ情報195に基づいて追跡中の物体を検出するフレームを絞り込むことで、本実施形態の物体追跡装置1では、映像内の物体を検出する際の検出精度が向上し該物体の追跡精度を向上する。また、優先カメラ情報195に基づいて追跡中の物体を検出するフレームを絞り込むことで、本実施形態の物体追跡装置1では、追跡部120が行う処理の量を軽減することが可能となる。
また、優先カメラ情報195は、例えば、追跡中の物体が複数である場合に該複数の物体の追跡順序の決定に利用可能である。すなわち、追跡部120は、優先カメラ情報195に基づいて、追跡中である複数の物体のうちの検出しやすい物体から順に、検出難度DCPの低いフレームから該物体を検出して追跡することが可能となる。
例えば、図3の優先カメラ情報195における各物体についての検出難度DCPのうちの、値が小さいものから順に3個の検出難度DCPの和SDを算出すると、ID=1の物体についての和SD(1)は9.0となる。また、ID=2~4の物体のそれぞれについての和SD(2)~SD(4)を算出すると、それぞれ、SD(2)=17.8、SD(3)=16.4、及びSD(4)=35.6となる。この場合、追跡部120では、ID=1の物体、ID=3の物体、ID=2の物体、及びID=4の物体の順に、追跡処理を行うことが好ましい。
映像から追跡対象である物体を検出する際の検出難度は、該物体の検出精度と関係があり、検出難度が高いほど検出精度が低くなる傾向がある。このため、1枚のフレームから複数の物体を検出する場合、複数の物体のうちの検出難度が高い物体の候補となる位置がフレーム内の複数箇所で検出されることがある。この場合、複数の物体のうちの検出難度が低い物体を先に検出しておくと、検出難度が高い物体の候補となる複数箇所のうちのいずれかが検出難度の低い物体の検出位置と重なる場合に該位置を候補から除外することが可能となる。このため、本実施形態の物体追跡装置1では、優先カメラ情報195を利用して複数の物体の追跡順を決定することにより、検出難度が高い物体の検出位置の誤りを防ぐことが可能となり、物体の検出精度が向上する。
このように、本実施形態の物体追跡装置1では、優先カメラ情報195を利用して追跡中である物体を検出して追跡することにより、追跡中である物体の検出精度が向上し、物体の追跡精度が向上する。
本実施形態の物体追跡装置1は、例えば、複数のカメラ2のそれぞれから映像を取得する処理と並列に、取得した複数の映像から追跡対象である物体を検出して追跡する処理を行う。複数の映像から追跡対象である物体を検出して追跡する処理として、本実施形態の物体追跡装置1は、例えば、図4のフローチャートに沿った処理を行う。
図4は、第1の実施形態に係る物体追跡装置が行う処理を説明するフローチャートである。
本実施形態の物体追跡装置1は、複数の映像から追跡対象である物体を検出して追跡する処理として、時系列ループ処理(ステップS1~S6)を行う。時系列ループ処理は、複数の映像のそれぞれにおける同一時刻に撮像されたフレームの組毎に行う処理である。物体追跡装置1は、例えば、時系列ループ処理の開始端(ステップS1)において、処理の対象とする同一時刻tに撮像されたフレームの組を選択する。また、物体追跡装置1は、例えば、時系列ループ処理の終了端(ステップS6)において、所定のフレームの組まで時系列ループ処理を行ったか否かを判定する。所定のフレームの組まで時系列ループ処理を行った場合、物体追跡装置1は、該時系列ループ処理を終了する。未処理のフレームの組がある場合、物体追跡装置1は、フレームの組を指定する時刻tを更新して時系列ループ処理を続ける。
処理の対象とするフレームの組を選択した後、物体追跡装置1は、優先カメラ情報195を利用した物体追跡処理(ステップS2)を行う。ステップS2の物体追跡処理は、物体追跡装置1の追跡部120が行う。
追跡部120が行う物体追跡処理は、現在処理の対象となっているフレームの組に含まれるフレームから追跡中である物体を検出する第1の検出処理と、該フレームの組に含まれるフレームから新たに追跡対象とする物体を検出する第2の検出処理とを含む。また、追跡部120が行う物体追跡処理は、第1の検出処理及び第2の検出処理により検出した物体の三次元位置を算出する処理を含む。
第1の検出処理では、追跡部120は、追跡中である物体毎に、優先カメラ情報195に基づいて該物体を検出するフレームを複数選択し、選択した複数のフレームのそれぞれから物体を検出する。追跡部120は、既知の検出方法に従い、選択したフレームのそれぞれから追跡対象となっている物体を検出する。例えば、追跡部120は、物***置情報194に格納された検出対象である物体の予測位置に基づいてフレーム内に該物体の探索範囲を設定し、該探索範囲内において該物体の特徴量との類似度が最も高くなる部分領域を探索する。この場合、追跡部120は、探索範囲内において物体の特徴量との類似度が最も高くなる部分領域を追跡対象の物体が写っている領域として検出する。
第2の検出処理では、追跡部120は、現在処理の対象となっているフレームの組に含まれるフレーム毎に、追跡対象とする物体の条件を満たし、かつまだ追跡を開始していない物体を検出する。追跡部120は、既知の検出方法に従い、新たに追跡対象とする物体を検出する。例えば、追跡部120は、フレーム毎に、追跡対象とする物体の条件を満たす領域を探索し、該物体の条件を満たす領域のうちの追跡中である物体の検出位置とは重ならない領域を、新たな追跡対象とする物体が写っている領域として検出する。
物体の三次元位置を算出する処理では、追跡部120は、追跡対象である物体毎に、該物体を検出した複数のフレームのそれぞれにおける検出位置に基づいて、実空間における物体の三次元位置を算出する。追跡部120は、既知の算出方法に従って、物体の三次元位置を算出する。例えば、追跡部120は、視体積交差法により、物体を検出した複数のフレームから該物体の三次元位置を算出する。
ステップS2の物体追跡処理を終えると、物体追跡装置1は、次に、追跡中の物体があるか否かを判定する(ステップS3)。追跡中の物体がある場合(ステップS3;YES)、物体追跡装置1は、次に、次フレームにおける追跡中の物体の位置を予測し(ステップS4)、優先カメラ情報更新処理(ステップS5)を行う。その後、物体追跡装置1は、所定のフレームの組まで時系列ループ処理を行ったか否かを判定する(ステップS6)。一方、追跡中の物体がない場合(ステップS3;NO)、物体追跡装置1は、ステップS4及びS5の処理をスキップして、所定のフレームの組まで時系列ループ処理を行ったか否かを判定する(ステップS6)。
追跡中の物体がある場合に物体追跡装置1が行うステップS4の処理は、物体追跡装置1の移動先予測部130が行う。移動先予測部130は、既知の予測方法に従い、次フレームにおける物体の三次元位置を予測する。例えば、移動先予測部130は、現在処理の対象となっているフレームの組に基づいて算出した物体の三次元位置と、該フレームの組よりも前のフレームの組に基づいて算出した物体の三次元位置とにより、次フレームでの物体の三次元位置を予測する(算出する)。
ステップS4の処理の後に物体追跡装置1が行うステップS5の優先カメラ決定処理は、物体追跡装置1の優先カメラ決定部140が行う。優先カメラ決定部140は、次フレームにおける物体の三次元位置の予測結果に基づいて、各カメラで撮像した映像(フレーム)内での物体の移動先を算出し、該移動先における奥側情報を取得する。奥側情報は、予測した次フレームでの物体の移動先において、該物体の奥側で該物体と重なる背景及び他物体の特徴を示す情報である。その後、優先カメラ決定部140は、追跡中の物体の特徴と取得した背景情報との類似性に基づいて、次フレームにおける物体の検出難度DCPを算出し、優先カメラ情報195の検出難度DCPを更新する。
このように、本実施形態の物体追跡装置1が行う、複数の映像から物体を検出して追跡する処理は、優先カメラ情報195を利用した物体追跡処理(ステップS2)と、優先カメラ情報195を更新する優先カメラ決定処理(ステップS5)を含む。
優先カメラ情報195を利用した物体追跡処理(ステップS2)は、上記のように、物体追跡装置1の追跡部120が行う。本実施形態の物体追跡装置1における追跡部120は、物体追跡処理として、例えば、図5のフローチャートに沿った処理を行う。
図5は、優先カメラ情報を利用した物体追跡処理の内容を説明するフローチャートである。
追跡部120は、図5のように、まず、追跡中の物体があるか否かを判定する(ステップS201)。追跡部120は、例えば、記憶部190の物体特徴情報193を参照して追跡中の物体があるか否かを判定する。追跡中の物体がある場合(ステップS201;YES)、追跡部120は、次に、現在処理の対象となっているフレームの組に含まれるフレームから追跡中の物体を検出して追跡する物体別ループ処理(ステップS202~S205)を行う。
追跡部120は、例えば、物体別ループ処理(ステップS202~S205)の開始端(ステップS202)において、追跡中である物体のなかから処理の対象とする物体を1個選択する。追跡部120は、所定の選択規則に従って、処理の対象とする物体を選択する。物体の選択規則は、例えば、物体特徴情報193、或いは優先カメラ情報195に登録された順序で選択するという規則とする。また、物体の選択規則は、例えば、優先カメラ情報195における検出難度DCPの和SDが小さい物体から順に選択するという規則としてもよい。
処理の対象とする物体を選択すると、追跡部120は、次に、優先カメラ情報195に基づいて、選択した物体の追跡に利用するカメラを決定する(ステップS203)。追跡部120は、優先カメラ情報195において選択した物体と対応付けられている各カメラの優先度を示す情報に基づいて、物体の追跡に利用するカメラを選択する。
例えば、図3の優先カメラ情報195におけるカメラの優先度を示す情報は、複数のカメラのそれぞれに対する検出難度DCPの組である。図3の優先カメラ情報195に基づいて物体の追跡に利用するカメラを決定する場合、追跡部120は、各カメラについての検出難度DCPの値に基づいて、物体の追跡に利用するカメラを選択する。例えば、追跡部120は、図3の優先カメラ情報195において検出難度DCPが「--」ではないカメラのなかから、物体の追跡に利用するカメラを決定する。この場合、追跡する物体がID=1の物体であるとすると、追跡部120は、cam1、cam2、cam5、cam7、及びcam8の5台のカメラのなかから、物体の追跡に利用するカメラを選択する。
なお、物体の追跡に利用するカメラは、例えば、検出対象の物体の位置が視野内となる全てのカメラのうちの、検出難度DCPが閾値以下のカメラに限定してもよい。例えば、図3の優先カメラ情報195におけるID=1の物体を検出して追跡する場合、追跡部120は、検出難度DCPが10以下のカメラcam7,cam2,cam8,及びcam5の4台のカメラを、物体の追跡に利用するカメラとしてもよい。
また、物体の追跡に利用するカメラを決定する際には、例えば、検出対象の物体の位置が視野内となる全てのカメラのうちの、検出難度DCPが小さいカメラから順にK個を抽出し、該K個のカメラを、物体の追跡に利用するカメラに決定してもよい。例えば、図3の優先カメラ情報195におけるID=1の物体を検出して追跡する場合、追跡部120は、検出難度DCPが小さい3個のカメラcam7,cam2,及びcam8の3台のカメラを、物体の追跡に利用するカメラとしてもよい。
次に、追跡部120は、現在処理の対象となっているフレームの組に含まれるフレームのうちの物体の追跡に利用するカメラにより撮像されたフレームから、現在追跡の対象となっている物体を検出する(ステップS204)。ステップS204の処理は、物体の追跡に利用するカメラ(フレーム)毎に物体を検出する処理を行うカメラ別ループ処理とする。該カメラ別ループ処理では、追跡部120は、所定の選択規則に従って物体の追跡に利用するカメラを選択して該カメラにより撮像されたフレームから物体を検出する処理を繰り返す。カメラの選択規則は、例えば、優先カメラ情報195における登録順に選択するという規則とする。また、カメラの選択規則は、例えば、優先カメラ情報195における検出難度DCPが小さいカメラから順に選択するという規則としてもよい。例えば、図3の優先カメラ情報195におけるID=1の物体をcam7、cam2、及びcam8のそれぞれが割り当てられたカメラのそれぞれで撮像したフレームから検出する場合、追跡部120は、ステップS204の処理として下記のいずれかの処理を行う。
(1)cam2が割り当てられたカメラで撮像したフレーム、cam7が割り当てられたカメラで撮像したフレーム、及びcam8が割り当てられたカメラで撮像したフレームの順にID=1の物体を検出する処理。
(2)cam7が割り当てられたカメラで撮像したフレーム、cam2が割り当てられたカメラで撮像したフレーム、及びcam8が割り当てられたカメラで撮像したフレームの順にID=1の物体を検出する処理。
ステップS203で物体の追跡に利用するカメラに決定した全てのカメラを選択して物体を検出する処理を行うと、追跡部120は、ステップS204の処理(カメラ別ループ処理)を終了する。
ステップS204の処理を終えると、追跡部120は、物体別ループ処理の終了端(ステップS205)において物体別ループ処理を終了するか否かを判定する。追跡部120は、例えば、追跡中である物体の全てに対しステップS203及びS204の処理を行ったか否かに基づいて、物体別ループ処理を終了するか否かを判定する。追跡中である物体のなかにステップS203及びS204の処理を行っていない物体がある場合、追跡部120は、物体別ループ処理を終了しないと判定して物体別ループ処理を続ける。
一方、追跡中である物体の全てに対しステップS203及びS204の処理を行った場合、追跡部120は、物体別ループ処理を終了すると判定して物体別ループ処理を終了する。
物体別ループ処理(ステップS202~S205)を終えると、追跡部120は、次に、処理対象のフレームの組に含まれるフレームから新たに追跡対象とする物体を検出する処理(ステップS206)を行う。また、現在行っている物体追跡処理の開始時に追跡中の物体がない場合(ステップS201;NO)、追跡部120は、物体別ループ処理(ステップS202~S205)を省略し、ステップS206の処理を行う。
ステップS206の処理では、追跡部120は、既知の検出方法に従って、新たに追跡対象とする物体を検出する。例えば、追跡部120は、追跡対象の条件を満たす物体をフレームから検出した後、検出した位置や特徴に基づいて、検出した物体が追跡中の物体であるか否かを判定する。検出した物体のフレーム内での位置が、追跡中の物体を検出した位置、或いは前フレームの組に対する予測処理(ステップS4)で予測した追跡中の物体の移動先と略一致する場合、検出した物体は、追跡中の物体である可能性が高い。また、検出した物体の特徴が、追跡中の物体の特徴と略一致する場合、検出した物体は、追跡中の物体である可能性が高い。このため、追跡部120は、例えば、フレームから検出した物体のうちの、追跡中の物体である可能性が閾値以下となる物体を、新たな追跡対象とする。追跡部120は、新たに追跡対象とする物体の特徴を物体特徴情報193に追加するとともに、該物体のフレーム内での位置を物***置情報194に追加する。
なお、現在行っている物体追跡処理の開始時に追跡中の物体がなかった場合、追跡部120は、ステップS206の処理で検出した全ての物体を新たな追跡対象とする。
次に、追跡部120は、追跡対象である物体の三次元位置を算出する(ステップS207)。ステップS207では、追跡部120は、追跡対象である物体毎に、複数のフレームのそれぞれにおける物体の二次元位置と、複数のフレームのそれぞれを撮像した複数のカメラのそれぞれにおける視野の関係とに基づいて、実空間における物体の三次元位置を算出する。ここで、複数のフレームは、現在処理対象となっている全てのフレームのうちの、物体の追跡に利用したフレーム(すなわちステップS204で物体を検出したフレーム)とする。追跡部120は、例えば、視体積交差法により、追跡対象となっている物体の、実空間での三次元位置を算出する。
ステップS207の処理を終えると、追跡部120は、現在処理の対象となっているフレームの組に対する、優先カメラ情報195を利用した物体追跡処理を終了する。
このように、本実施形態の物体追跡処理では、複数のカメラ2のうちの追跡対象である物体の検出難度DCPが低いカメラを選択し、該カメラにより撮像されたフレームから追跡対象である物体を検出して追跡する。検出難度DCPは、フレームから物体を検出する際の難易度を示す値であり、検出難度DCPの値が大きいほど物体を検出することが困難となる。本実施形態では、フレーム内における追跡対象である1個の物体の奥側で該物体と重なる他物体が追跡対象である1個の物体を検出する際の検出精度に与える影響の度合い(奥側影響度DBG)を、検出難度DCPとする。検出難度DCPは、優先カメラ情報更新処理(ステップS5)において更新される。
優先カメラ情報更新処理(ステップS5)は、上記のように、物体追跡装置1の優先カメラ決定部140が行う。優先カメラ決定部140は、優先カメラ情報更新処理として、例えば、図6のフローチャートに沿った処理を行う。
図6は、第1の実施形態における優先カメラ情報更新処理の内容を説明するフローチャートである。
優先カメラ決定部140は、図6のように、まず、フレーム毎に追跡中の物体の移動先を予測する(ステップS501)。ステップ501の処理は、優先カメラ決定部140に含まれる二次元位置算出部141が行う。二次元位置算出部141は、次フレームの撮像時刻における追跡中の物体の三次元位置の予測結果と、カメラの視野との関係に基づいて、次フレームの撮像時刻におけるフレーム平面内での物体の二次元位置を予測する(算出する)。ここで、フレーム平面は、カメラの視野及び焦点距離に基づいて実空間に設定される投影面(フレーム面)を含む平面である。フレーム平面内の二次元位置は、投影面内(フレーム内)の位置を示す二次元座標を基準とした位置とする。
二次元位置算出部141は、例えば、複数のフレームの組に含まれるフレーム毎に、該フレームと対応するフレーム平面に追跡対象である物体を投影したときの二次元位置を算出する。ここで、三次元位置がフレーム外(カメラの視野外)となる物体の二次元位置は、フレーム内の二次元位置を示す範囲外の値となる。
次に、優先カメラ決定部140は、追跡中の物体毎に、複数の映像のそれぞれにおける次フレームのそれぞれから物体を検出する際の検出難度を算出して優先カメラ情報195を更新する物体別ループ処理(ステップS502~S511)を行う。優先カメラ決定部140は、例えば、物体別ループ処理の開始端(ステップS502)において、追跡中であるM個の物体のうちの変数mにより指定される1個の物体mを選択する。優先カメラ決定部140は、例えば、物体別ループ処理の終了端(ステップS511)において、追跡中である全ての物体に対して処理を行ったか否かを判定する。処理を行っていない物体がある場合、優先カメラ決定部140は、物体別ループ処理を続ける。そして、追跡中の全ての物体に対して処理を行った場合、優先カメラ決定部140は、物体別ループ処理を終了する。
物体別ループ処理の開始端で物体を選択した後、優先カメラ決定部140は、カメラ2毎に、該カメラで撮像した次フレームにおける物体mの検出難度DCP(n)を算出するカメラ別ループ処理(ステップS503~S509)を行う。優先カメラ決定部140は、カメラ別ループ処理の開始端(ステップS503)において、N台のカメラ2のうちの変数nにより指定される1台のカメラnを選択する。また、優先カメラ決定部140は、カメラ別ループ処理の終了端(ステップS509)において、全てのカメラに対して処理を行ったか否かを判定する。処理を行っていないカメラがある場合、優先カメラ決定部140は、カメラ別ループ処理を続ける。そして、全てのカメラに対して処理を行った場合、優先カメラ決定部140は、カメラ別ループ処理を終了する。
カメラ別ループ処理の開始端(ステップS503)でカメラnを選択した後、優先カメラ決定部140は、選択中の物体mの移動先がカメラnにより撮像された映像のフレーム内であるか否かを判定する(ステップS504)。ステップS504の処理は、例えば、優先カメラ決定部140に含まれる検出難度推定部142が行う。物体mの移動先がフレーム外である場合(ステップS504;NO)、検出難度推定部142は、カメラnで撮像した映像における次フレームから物体mを検出する際の検出難度DCP(n)を無効な値(例えばNULL値)とする(ステップS505)。一方、物体mの移動先がフレーム内である場合(ステップS504;YES)、検出難度推定部142は、物体mの移動先における奥側情報に基づいて検出難度DCP(n)を算出する処理(ステップS506~S508)を行う。
奥側情報に基づいて検出難度DCP(n)を算出する場合、検出難度推定部142は、まず、次フレームにおける奥側情報を予測する(ステップS506)。ステップS506の処理は、例えば、検出難度推定部142に含まれる奥側情報取得部142aが行う。奥側情報取得部142aは、背景情報192、物***置情報194、及び物体特徴情報193に基づいて、カメラnにより撮像された映像の次フレームにおいて、物体mの奥側となる位置に存在する背景及び他物体のうちのフレーム内で物体mの周囲となる部分領域の特徴を取得する。
次に、検出難度推定部142は、奥側情報の予測結果に基づいて、カメラnの映像における次フレームから物体mを検出する際の奥側影響度DBG(n)を算出する(ステップS507)。ステップS507の処理は、例えば、検出難度推定部142に含まれる奥側影響度算出部142bが行う。奥側影響度算出部142bは、例えば、物体mの移動先において物体mの奥側となる位置に存在する背景及び他物体のうちのフレーム内で物体mの周囲となる部分領域の特徴と物体mの特徴との類似度に基づいて、奥側影響度DBG(n)を算出する。例えば、部分領域の特徴と物体mの特徴との類似性が高いほど類似度が大きくなる数式により類似度を算出する場合、奥側影響度算出部142bは、例えば、算出した類似度を奥側影響度DBG(n)とする。また、部分領域の特徴と物体mの特徴との類似性が高いほど類似度が小さくなる数式により類似度を算出する場合、奥側影響度算出部142bは、例えば、算出した類似度の逆数を奥側影響度DBG(n)とする。
次に、検出難度推定部142は、算出した奥側影響度DBG(n)に基づいて、カメラnにより撮像された映像における次フレームから物体mを検出する際の検出難度DCP(n)を算出する(ステップS508)。ステップS508の処理は、検出難度推定部142に含まれる難度算出部142cが行う。本実施形態の物体追跡装置1における難度算出部142は、奥側影響度DBG(n)を検出難度DCP(n)とする。
ステップS505、又はステップS506~S508の処理を終えると、検出難度推定部142は、検出難度DCP(n)を決定していないカメラがあるか否かを判定する(ステップS509)。検出難度DCP(n)を決定していないカメラがある場合、検出難度推定部142は、カメラ別ループ処理を続ける。そして、全てのカメラに対する検出難度DCP(n)を決定すると、検出難度推定部142は、カメラ別ループ処理を終了する。
カメラ別ループ処理を終えると、検出難度推定部142は、次に、優先カメラ情報195における物体mについての検出難度DCP(1)~DCP(N)を更新する(ステップS510)。ステップS510の処理は、優先カメラ決定部140に含まれる更新部143が行う。
ステップS510の処理を終えると、優先カメラ決定部140は、追跡中の物体のなかに優先カメラ情報195の検出難度DCP(1)~DCP(N)を更新していない物体があるか否かを判定する(ステップS511)。検出難度DCP(1)~DCP(N)を更新していない物体がある場合、優先カメラ決定部140は、物体別ループ処理を続ける。そして、全ての物体についての検出難度DCP(1)~DCP(N)を更新すると、優先カメラ決定部140は、物体別ループ処理を終了し、優先カメラ情報更新処理を終了する。
このように、優先カメラ情報更新処理では、現在処理の対象となっているフレームの次に撮像されたフレームにおける、追跡中の物体と該物体の奥側に存在する背景及び他物体との類似度の予測結果に基づいて、追跡中の物体の検出難度DCPを算出する。また、優先カメラ決定処理では、優先カメラ情報195の検出難度DCPを、算出した検出難度DCPに更新する。このため、次フレームの組による物体追跡処理(ステップS2)を行う際に、追跡中の物体と該物体の奥側に存在する他物体との類似度が低いフレームを選択して物体を検出し追跡することが可能となる。これにより、本実施形態の物体追跡装置1は、追跡中の物体を高精度に検索することが可能となる。
図7は、背景が物体の検出に与える影響を説明する図である。
図7の画像1101には、外見が略同一である2人の人7A,7Bが写っている。
画像1101に写っている2人の人7A,7Bのうちの、左側の人7Aの奥側には第1の他物体1201が存在する。第1の他物体1201は、人7Aの頭部701Aにおける上下方向の中心に近い高さ位置で水平方向に伸びる境界線B1を境とした下方の部位1201Aと、境界線B1を境とした上方の部位1201Bとで色が異なる。例えば、第1の他物体1201における上方の部位1201Bは白色であり、下方の部位1201Aは白色以外の明度の高い色であるとする。
一方、画像1101に写っている2人の人7A,7Bのうちの、右側の人7Bの奥側には、第2の他物体1202が存在する。第2の他物体1202は、人7Bの頭部701Bにおける上下方向の中心に近い高さ位置で水平方向に伸びる境界線B2を境とした下方の部位1202Aと、境界線B2を境とした上方の部位1202Bとで色が異なる。例えば、第2の他物体1202における上方の部位1202Bは明度の低い黒に近い色であり、下方の部位1202Aは中間色のマーブル模様であるとする。
追跡する物体が人の頭部である場合、物体追跡装置1は、まず、画像1101から人の頭部701A,701Bを検出する。この際、物体追跡装置1は、例えば、既知のエッジ検出方法等を適用し、画像から人の頭部を検出する。
エッジ検出により画像1101から人の頭部を検出する場合の検出精度は、人の頭部と、該頭部の奥側であって頭部の周囲に存在する他物体(背景)との画像上の特徴(色や明るさ等)の類似度によって変化する。例えば、頭部と他物体との画像上の特徴の類似度が低い場合、エッジが明確であり人の頭部の特徴が埋もれないため、人物の頭部の検出が容易であり、検出精度が高い。一方、頭部と他物体との画像上の特徴の類似度が高い場合、エッジが消失して人の頭部の特徴が埋もれるため、人物の頭部の検出が困難となり、検出精度が低下する。
映像内での人の頭部の特徴として色を示す情報を利用する場合、人の頭部の特徴は、例えば、上半分が黒に近い明度の低い色であり、下半分が肌色等の明度の高い色となることが多い。このため、図7の画像1101から人の頭部701Aを検出する場合、頭部701Aと該頭部701Aの周囲における他物体1201との特徴の類似度は低くなる。したがって、図7の画像1101から人の頭部を検出する場合、左側の人7Aの頭部701Aは、容易に検出することができ検出精度も高い。これに対し、図7の画像1101から人の頭部701Bを検出する場合、頭部701Bと該頭部701Bの周囲における他物体1202との特徴の類似度は高くなる。したがって、図7の画像1101から人の頭部を検出する場合、右側の人7Bの頭部701Bは、正しく検出することが難しくなり検出精度が低下する。よって、本実施形態の物体追跡装置1では、上記のように、複数のフレームのうちの検出難度DCPが低いフレームを選択して追跡対象の物体を検出し、その検出結果に基づいて物体の三次元位置を算出する。例えば、本実施形態の物体追跡装置1では、画像(フレーム)1101を含むフレームの組から左側の人7Aを検出して追跡する場合には画像1101を人7Aの検出に使用し、右側の人7Bを検出して追跡する場合には画像1101を人7Bの検出に使用しない。これにより、本実施形態の物体追跡装置1は、検出精度の高いフレームから追跡中の物体を検出することが可能となり、物体の追跡精度を向上させることが可能となる。
なお、図2の物体追跡システムにおける複数の人7A~7E,8A~8Eのように追跡対象となる物体が2個以上である場合、1台のカメラで撮像した映像には、追跡対象である複数の物体が奥行き方向で重なるフレームが含まれることもある。また、1個の物体全体のうちの一部分を追跡対象の物体として検出する場合、映像内では、物体全体のうちの追跡対象として検出される部分とともに、物体全体のうちの他の部分(付随部位)も移動する。このため、1つのフレームにおける1個の物体の移動先を予測して奥側影響度DBGを算出する場合、該物体と、床や建物等の追跡対象ではない物体(背景)との間に、追跡対象である他物体に付随する部位が存在することもある。例えば、人の頭部を追跡対象として映像から検出している場合、映像内では、追跡対象である頭部とともに、首よりも下の部位(付随部位)が移動する。このため、映像内において第1の人の頭部の奥側で該頭部と重なる他物体は、追跡対象ではない物体(背景)及び第2の人の頭部のいずれかに限らず、第2の人の首より下の部分(付随部位)となることもある。したがって、本実施形態の物体追跡装置1では、追跡対象とする物体に付随する部位の映像上での特徴を含めて奥側影響度DBGを算出する。
図8Aは、付随部位が物体の検出に与える影響を説明する図(その1)である。図8Bは、付随部位が物体の検出に与える影響を説明する図(その2)である。
図8Aの(a)には、1台のカメラが撮像した映像における時刻tのフレーム(画像)1102を示している。フレーム1102内の第1の頭部701A及び第2の頭部701Cが追跡中の物体である場合、物体追跡装置1は、時刻t+Δtにおける第1の頭部701A及び第2の頭部701Cの三次元位置を予測する(ステップS4)。その後、物体追跡装置1は、優先カメラ情報更新処理(ステップS5)を行う。
優先カメラ情報更新処理では、物体追跡装置1は、まず、予測した三次元位置に基づいて、次フレーム(時刻t+Δtのフレーム)の撮像時刻におけるフレーム内での第1の頭部701A及び第2の頭部701Cの二次元位置を算出する(ステップS501)。その後、物体追跡装置1は、追跡中の物体毎に、複数のカメラのそれぞれで撮像した複数の次フレームのそれぞれにおける検出難度DCPを算出して優先カメラ情報195を更新する物体別ループ処理(ステップS502~S508)を行う。
図8Aの(a)のフレーム1102を含む映像における次フレームでの第1の頭部701A及び第2の頭部701Cの二次元位置が、それぞれ、フレーム1102内に点線の円で示した第1の位置PP1及び第2の位置PP2であったとする。フレーム1102内の第1の位置PP1は、追跡対象ではない物体(背景)1203のうちの水平方向に伸びる境界線B3により分離された第1の部位1203Aと第2の部位1203Bとを含む。このため、追跡対象とする物体が人の頭部であり、かつ人の頭部の移動先のみを考慮した場合、第1の頭部701Aの移動先における奥側情報は、物体1203における第1の位置PP1と重なる領域の周囲の特徴を含む情報となる。
しかしながら、追跡対象とする物体が人の頭部である場合、第2の頭部701Cが第2の位置PP2にすると、第2の頭部701Cに付随する付随部位702Cは、第2の位置PP2の下側に移動する。このため、フレーム1102内の第1の位置PP1は、第2の頭部701Cについての付随部位702C’と重なる。ここで、第1の頭部701A及び第2の頭部701Cの三次元位置の予測結果が、フレーム1102を含む映像を撮像しているカメラから見て第2の頭部701Cが第1の頭部701Aよりも遠方(奥方)となる結果であったとする。この場合、次フレームでは、図8Aの(b)のフレーム1102のように、第1の頭部701Aの奥側であって、第1の頭部701Aと物体(背景)1203との間に第2の頭部701Cについての付随部位702Cが存在することとなる。このため、物体追跡装置1は、例えば、図8Bの(c)のフレーム1102のように、背景に第2の頭部701C及び付随部位701Cを重ねた状態での第1の位置PP1の特徴を推定する。そして、物体追跡装置1は、第1の位置PP1の特徴と第1の頭部701Aの特徴との類似性に基づいて、次フレームから第1の頭部701Aを検出する際の奥側影響度DBGを算出する。
なお、次フレームにおいて追跡対象である物体の奥側に他物体の付随部位が重なる場合の奥側影響度DBGは、付随部位が重なることで大きくなることもあれば、付随部位が重なることで小さくなることもある。
図9は、付随部位により奥側影響度が大きくなる例を示す図である。
図9の(a)には、カメラの視野(撮像範囲)13と、時刻tにおける2人の人7A,7Bの位置関係とを示している。ここで、追跡対象を人の頭部とすると、カメラで撮像した映像における時刻tのフレームからは、第1の頭部701Aと第2の頭部701Cとが検出される。図9の(a)のカメラの視野13内における第1の円PP1は、物体追跡装置1が予測した、次フレームにおける第1の頭部701Aの位置を示している。
カメラの視野13内における背景(例えば、床や建物の壁等)のうちの第1の円PP1内及びその周囲は、無地である。このため、カメラで撮像した映像における時刻tのフレームにおける第1の円PP1内及びその周囲の特徴と、第1の頭部701Aの特徴との類似性は低い。
しかしながら、第2の頭部701Cの移動先の予測結果に基づく、次フレームにおける人7Cの位置が図9の(a)に点線で示した位置7C’であるとすると、第1の円PP1は、人7Cの付随部位702Cと重なる。ここで、次フレームにおける人7Cの位置が人7Aの位置の奥側であるとすると、次フレームの撮像時刻における視野13内での2人の位置関係は、図9の(b)のような関係となる。したがって、次フレームから第1の頭部701Aを検出する際の検出難度DCPを算出するときには、第1の頭部701の奥側に存在する人7Cの付随部位702Cの特徴を考慮することとなる。図9における人7Cは、黒色の上着と、マーブル模様のズボンを着用している。すなわち、人7Cを含むフレームにおける付随部位702Cの特徴は、付随部位702Cにおける上下方向の略中央となる高さ位置で水平方向に伸びる境界線B4を境とした上方が黒色であり、下方がマーブル模様であることを示す情報を含む。このため、図9の(b)のように、第1の頭部701Aの奥側で人7Cの付随部位702Cが重なる場合、第1の頭部701Aの特徴と、該第1の頭部701Aの周囲の特徴との類似度が高くなる。よって、図9の例では、第1の頭部701Aの奥側で付随部位702Cが重なることにより、付随部位702Cが重ならない場合に比べて、奥側影響度DBGが大きくなる。
図10は、付随部位により奥側影響度が小さくなる例を示す図である。
図10の(a)には、カメラの視野(撮像範囲)13と、時刻tにおける2人の人7A,7Bの位置関係とを示している。ここで、追跡対象を人の頭部とすると、カメラで撮像した映像における時刻tのフレームからは、第1の頭部701Aと第2の頭部701Cとが検出される。図10の(a)のカメラの視野13内における第1の円PP1は、物体追跡装置1が予測した、次フレームにおける第1の頭部701Aの位置を示している。
カメラの視野13内における背景(例えば、床や建物の壁等)のうちの第1の円PP1内及びその周囲は、境界線B5を境とした下方が明度の高い部位1204Aであり、上方が黒色に近い部位1204Bである。このため、カメラで撮像した映像における時刻tのフレームにおける第1の円PP1内及びその周囲の特徴と、第1の頭部701Aの特徴との類似性は高い。
しかしながら、第2の頭部701Cの移動先の予測結果に基づく、次フレームにおける人7Cの位置が図10の(a)に点線で示した位置7C’であるとすると、第1の円PP1は、人7Cの付随部位702Cと重なる。ここで、次フレームにおける人7Cの位置が人7Aの位置の奥側であるとすると、次フレームの撮像時刻における視野13内での2人の位置関係は、図10の(b)のような関係となる。したがって、次フレームから第1の頭部701Aを検出する際の検出難度DCPを算出するときには、第1の頭部701の奥側に存在する人7Cの付随部位702Cの特徴を考慮することとなる。図10における人7Cは、白色の上着と、白色以外の明度の高い色のズボンを着用している。すなわち、人7Cを含むフレームにおける付随部位702Cの特徴は、付随部位702Cにおける上下方向の略中央となる高さ位置で水平方向に伸びる境界線B4を境とした上方が白色であり、下方が明度の高い白色以外の色であることを示す情報を含む。このため、図10の(b)のように、第1の頭部701Aの奥側で人7Cの付随部位702Cが重なる場合、第1の頭部701Aの特徴と、該第1の頭部701Aの周囲の特徴との類似度が低くなる。よって、図10の例では、第1の頭部701Aの奥側で付随部位702Cが重なることにより、付随部位702Cが重ならない場合に比べて、奥側影響度DBGが小さくなる。
以上のように、検出する物体の特徴と該物体の奥側で重なる他物体の特徴との類似性は、次フレームから追跡対象である物体を検出する際の検出精度に影響を与える。このため、本実施形態の物体追跡装置1では、次フレームにおける物体の位置の予測結果に基づいて、次フレームから追跡対象である物体を検出する際の検出精度に奥側の特徴が与える影響(奥側影響度DBG)を算出する。その後、物体追跡装置1は、次フレームの組から追跡中の物体を検出する際に、奥側影響度DBGの低いフレームを選択して追跡中の物体を検出する。これにより、本実施形態の物体追跡装置1では、追跡対象である物体の検出精度の低下を防ぐことが可能となる。更に、同一時刻に撮像された複数のフレームの組から追跡中の物体を検出する際に、奥側影響度DBGが閾値以下となるフレームのみを選択して検出することにより、追跡対象である物体の検出精度の低下をより一層抑えることが可能となる。よって、本実施形態の物体追跡装置1では、追跡対象である物体の三次元位置を高精度に算出することが可能となり、物体の追跡精度が向上する。
なお、奥側影響度DBGの算出に用いる画像上の特徴は、映像(画像)内の物体を検出又は識別する際に用いられる種々の特徴のうちのいずれかであればよい。例えば、画像上の特徴は、色についての特徴、形状についての特徴、及びテクスチャについての特徴のいずれであってもよい。色についての特徴には、例えば、画素値そのもの、色ヒストグラム、及び輝度ヒストグラム等がある。形状についての特徴には、例えば、HaarLike特徴量、HOG特徴量、及びSIFT特徴量がある。テクスチャについての特徴には、例えば、LBP特徴量がある。
また、物体特徴情報193に格納して保持する追跡対象である物体や付随部位等についての情報は、ヒストグラムや特徴量であってもよいし、映像(フレーム)の状態のままであってもよい。
また、図3は、優先カメラ情報195の内容の一例に過ぎない。優先カメラ情報195は、追跡部120において物体追跡処理において用いる優先する、物体の検出難度の低いフレーム(カメラ)を示す情報を含むものであればよい。このため、例えば、物体の追跡に使用するフレームを決定することのみに優先カメラ情報195を利用する場合、該優先カメラ情報195は、追跡に使用するフレームを示す情報のみを含むものであってもよい。また、例えば、複数の物体の追跡順序を決定することのみに優先カメラ情報195を利用する場合、該優先カメラ情報195は、物体の追跡順序を示す情報のみを含むものであってもよい。
また、本実施形態の物体追跡装置1は、複数のカメラ2のそれぞれから複数の映像を取得する処理を終了した後で、図4の時系列ループ処理を行ってもよい。
また、図5のフローチャートに沿った物体追跡処理は、優先カメラ情報195を利用した物体追跡処理の一例に過ぎない。本実施形態の物体追跡装置1が行う物体追跡処理は、図5のフローチャートに沿った処理に限らず、適宜変更可能である。例えば、物体追跡処理は、追跡中である全ての物体を処理対象として物体毎に優先カメラ情報195に基づいて該物体の検出に利用するカメラを選択した後、物体毎に選択したカメラで撮像したフレームから該物体を検出する処理を行う内容であってもよい。
また、図6のフローチャートに沿った物体追跡処理は、優先カメラ情報195を利用した物体追跡処理の一例に過ぎない。優先カメラ情報195を利用した物体追跡処理は、図6のフローチャートに沿った処理に限らず、適宜変更可能である。例えば、優先カメラ情報195を利用した物体追跡処理は、図11のフローチャートに沿った処理であってもよい。
図11は、優先カメラ情報を利用した物体追跡処理の内容の別の例を説明するフローチャートである。
図11のフローチャートに沿った処理は、例えば、物体追跡装置1の追跡部120が行う。追跡部120は、例えば、まず、追跡中の物体があるか否かを判定する(ステップS201)。追跡中の物体がある場合(ステップS201)、追跡部120は、物体別ループ処理(ステップS202~S205)を行うが、その前に、優先カメラ情報195に基づいて、各物体の検出難度SD(1)~SD(M)を算出する(ステップS211)。ステップS211の処理では、追跡部120は、追跡中の物体毎に、優先カメラ情報195における検出難度DCP(1)~DCP(N)のうちの、値が小さい順にK個の検出難度を抽出してそれらの和を算出する。例えば、K=3として、図3の優先カメラ情報195におけるID=1の物体についての検出難度SD(1)を算出すると、SD(1)=9.0となる。同様に、ID=2~4の各物体についての検出難度SD(2)~SD(4)を算出すると、それぞれ、SD(2)=17.8、SD(3)=16.4、SD(4)=35.6となる。
図11のフローチャートにおける物体別ループ処理では、追跡部120は、例えば、物体別ループ処理の開始端(ステップS202)において処理の対象とする物体を選択する。この際、追跡部120は、ステップS211の処理結果に基づき、検出難度SDが低い物体から順に選択するループ処理を行う。すなわち、図3の優先カメラ情報195におけるID=1~4の4個の物体が追跡中の物体である場合、追跡部120は、ID=1の物体、ID=3の物体、ID=2の物体、及びID=4の物体の順に、現在処理の対象となっているフレームから物体を検出して追跡する処理を行う。このようにすることで、例えば、検出難度の高いID=4の物体の三次元位置を算出する際に、追跡部120は、ID=4の物体の三次元位置をID=1~3の3個の物体の三次元位置と重ならないようにすることが可能となる。
物体別ループ処理を終えた後、追跡部120は、処理の対象であるフレームの組から新たに追跡対象とする物体を検出する処理(ステップS206)、及び追跡対象である物体の三次元位置を算出する処理(ステップS207)を行う。また、物体追跡処理を開始した時点で追跡中の物体がない場合(ステップS201;NO)、追跡部120は、ステップS211の処理、及び物体別ループ処理を省略して、ステップS206及びステップS207の処理を行う。
更に、優先カメラ情報195を利用した物体追跡処理を行う場合、追跡部120は、例えば、追跡対象である物体の三次元位置を算出する処理(ステップS207)において、優先カメラ情報195を利用することも可能である。三次元位置を算出する処理において優先カメラ情報195を利用する場合、追跡部120は、例えば、1個の物体の三次元位置を算出する際の各フレームにおける物体の位置の制約を、検出難度DCPに応じて変更してもよい。
図12は、カメラの優先度を考慮した三次元位置の算出方法を説明する図である。
図12には、実空間(撮像エリア6)を撮像する3台のカメラのそれぞれにより撮像された3つのフレーム1105~1107を示している。該3つのフレーム1105~1107は、例えば、図3の優先カメラ情報195におけるcam2,cam7,及びcam8のそれぞれと対応する3台のカメラのそれぞれで撮像されたものとする。図12の例では、第1のフレーム1105がcam7のカメラで撮像されたフレームとし、第2のフレーム1106がcam2のカメラで撮像されたフレームとしている。また、図12の例では、第3のフレーム1107がcam8のカメラで撮像されたフレームとしている。
優先カメラ情報195における検出難度DCPを検出位置の信頼度と捉えると、検出難度が小さいカメラで撮像したフレームから検出した物体の検出位置ほど、検出位置の信頼度が高くなる。
図3の優先カメラ情報195におけるID=1の物体についての検出難度DCPは、cam7,cam2,cam8の順で大きくなる。すなわち、図12の3枚のフレーム1105~1107のそれぞれからID=1の物体を検出した場合、cam7のカメラで撮像したフレーム1105における検出位置の信頼度が最も高くなる。また、ID=1の物体の検出位置の信頼度が2番目に高いのはcam2のカメラで撮像したフレーム1106となり、ID=1の物体の検出位置の信頼度が3番目に高いのはcam8のカメラで撮像したフレーム1107となる。このため、3枚のフレーム1105~1107から検出したID=1の物体の検出位置に基づいて該物体14の実空間における三次元位置を算出する場合、追跡部120は、3枚のフレームのそれぞれにおける位置制約直径R1~R3をR1<R2<R3となるよう設定する。位置制約直径は、フレーム内における物体の検出位置を中心とした物体の位置の許容範囲を示す情報である。例えば、図12の第1のフレーム1105では、該フレーム内での検出位置P1を中心とした半径R1の円内が、ID=1の物体の位置の許容範囲となる。同様に、図12の第2のフレーム1106では、該フレーム内での検出位置P2を中心とした半径R2の円内がID=1の物体の位置の許容範囲となる。また、図12の第3のフレーム1107では、該フレーム内での検出位置P3を中心とした半径R3の円内が、ID=1の物体の位置の許容範囲となる。位置制約直径Ri(i=1~3)は、例えば、下記式(1)により算出する。
Ri=(DCPi/ADCP)×R0 (1)
式(1)におけるADCPは、検出する物体についての全カメラの検出難度の平均値である。また、式(1)におけるR0は、基準半径(定数)である。
3枚のフレーム1105~1107における物体の検出位置に基づいて物体の三次元位置を算出する際には、追跡部120は、それぞれのフレームにおける位置制約直径に基づく撮像範囲を実空間で重ねたときの論理和(AND値)を算出する。
複数のカメラのそれぞれで撮像した複数の映像(フレーム)のそれぞれから追跡中の物体を検出する場合、フレーム毎に物体の大きさや向きが異なる上、検出難度が異なる。このため、フレームから検出した物体のフレーム内での位置には、物体の輪郭及び検出難度に応じたずれが生じる。このずれを考慮せずに複数のフレームに対し共通の位置制約直径を設定して物体の三次元位置を算出した場合、三次元位置の精度が低下することがある。例えば、共通の位置制約直径が検出難度の最も低いフレームでの適切な値よりも大きい場合、実空間において位置制約直径が重なる領域が適切な範囲よりも広くなり、物体の三次元位置の精度が低くなることがある。また、例えば、共通の位置制約直径が検出難度の最も高いフレームでの適切な値よりも小さい場合、実空間において位置制約直径が重なる領域が適切な範囲よりも狭くなり、物体の三次元位置が誤った位置になることがある。
これに対し、検出難度に応じた位置制約直径R1~R3を設定した場合、実空間において位置制約直径R1~R3が重なる領域(AND領域)を各フレームにおける物体の検出位置の信頼度に応じた適切な範囲にすることが可能となる。よって、検出難度に応じた位置制約直径R1~R3を設定して物体の三次元位置を算出することで、物体の三次元位置を高精度に算出することが可能となる。
なお、本実施形態の物体追跡装置1を適用した物体追跡システムは、図2のようなスポーツの試合における選手(人物7A~7E,8A~8E)の動きを追跡するシステムに限らず、適宜変更可能である。例えば、物体追跡システムは、各種施設における人の移動経路や流量を測定するシステムであってもよい。
図13は、物体追跡システムの別のシステム構成例を示す図である。
図13には、建物(ビル)15内の入り口1501からエレベータ1502の乗り場へと続くロビー1503における人の移動経路16A~16Fを測定する物体追跡システム10Bのシステム構成例を示している。ロビー1503には、例えば、ロビー1503内を移動する人に対する各種案内を行うカウンター1504や展示物1505が設置されている。このようなロビー1503における人の移動経路16A~16Fや流量を測定する場合、例えば、図13のように、複数のカメラ2(2A~2E)のそれぞれにより異なる方向からロビー1503を撮像し、複数のカメラ2のそれぞれにより撮像した複数の映像を用いてロビー1503の人を検出し追跡する。ロビー1503に設置した複数のカメラ2は、それぞれ、撮像した映像を物体追跡装置1に送信する。物体追跡装置1は、上記の手順により、ロビー1503にいる人を検出して追跡する。
図13のようなロビー1503では、入り口1501からエレベータ1502に向かう人と、エレベータ1502から入り口1501に向かう人とが行き交う。このため、カメラ2で撮像した映像には、例えば、入り口1501からエレベータ1502に向かう人の奥側に重なる他物体が追跡対象ではない展示物(背景)1505であるフレームや、他物体がエレベータ1502から入り口1501に向かう人であるフレームが含まれる。例えば、カメラ2Eで撮像した映像における図13の移動経路16Bを移動する人を追跡する場合、該人の奥側は、カウンター1504や展示物1505に限らず、移動経路16Eを移動する人となることもある。よって、図13のような物体追跡システム10Bにおいても、上記のように、優先カメラ情報195を利用した物体追跡を行うことが好ましい。図13のような物体追跡システム10Bにおいて優先カメラ情報195を利用した物体追跡を行うことにより、所定の空間内における複数の人の移動経路を精度よく追跡することが可能となる。
更に、本実施形態の物体追跡装置1は、例えば、壁面ディスプレイを備えたサイネージシステムにも適用可能である。
図14は、物体追跡装置を含むサイネージシステムのシステム構成を示す図である。
図14には、公共施設の通路に沿った壁面17に設置した壁面ディスプレイ18により公衆に向けて各種情報を提供するサイネージシステム10Cのシステム構成例を示している。サイネージシステム10Cは、例えば、壁面ディスプレイ17の正面となる所定のエリア内をそれぞれ異なる方向から撮像する複数のカメラ2(2A~2D)を備える。また、サイネージシステム10Cは、カメラ2で撮像した映像に基づいて壁面ディスプレイ18の表示を変更する処理等を行う情報処理装置19を含む。情報処理装置19は、映像内の人を検出して追跡する物体追跡装置1と、壁面ディスプレイ18の表示内容を制御する表示制御装置1901とを含む。表示制御装置1901が行う表示内容の制御は、カメラ2で撮像した映像における人7Aの動きに応じて表示内容を切り替える制御を含む。
カメラ2(2A~2D)は、それぞれ、壁面ディスプレイ18の正面となる所定のエリア内の映像を撮像し、該映像を物体追跡装置1の機能を含む情報処理装置19に送信する。情報処理装置19は、複数の映像から人を検出して追跡する。映像から人を検出して追跡する処理は、情報処理装置19に含まれる物体追跡装置1が行う。物体追跡装置1は、上記のように、優先カメラ情報195を利用して映像内の人を検出し追跡する。更に、情報処理装置19は、物体追跡装置1で追跡している人の動作を解析し、所定の動作を検出した場合には該動作に基づいて壁面ディスプレイ18の表示を変更する。壁面ディスプレイ18の表示を変更する処理は、情報処理装置19に含まれる表示制御装置1901が行う。表示制御装置1901は、例えば、追跡している人7Aが壁面ディスプレイ18における所定の部分に触れる動作をしたことを検出した場合に、壁面ディスプレイ18の表示画面を、人7Aが触れた部分を拡大した画面に切り替える。
図14のサイネージシステム10Cには、壁面ディスプレイ18を観察している人7Aの奥側に壁面ディスプレイ18が重なった映像を撮像するカメラ2C,2Dが含まれる。該カメラ2C,2Dで撮像した映像から追跡対象となっている人を検出する場合、壁面ディスプレイ18の表示領域のうちの、検出する人7Aの奥側で該人7Aと重なる部分の表示内容に応じて、人の検出難度が変化する。例えば、図14のカメラ2Dから見て人7Aの奥側となる領域18Aに表示された内容の映像上での特徴が人7Aの特徴と類似している場合、カメラ2Dで撮像した映像から人7Aを検出する際の検出難度は高くなる。また、図14で左に向かって移動している人7Bを追跡する場合、人7Bの特徴と人7Bの奥側に存在する他物体の特徴とが類似していると、人7Bの検出難度が高くなる。
このため、情報処理装置に含まれる物体追跡装置1は、例えば、次フレームの撮像時刻における人の移動先の予測位置と、壁面ディスプレイ18のうちの該移動先において人の奥側となる部分に表示されている内容とに基づいて、奥側影響度DBGを算出する。これにより、物体追跡装置1は、映像から人を検出する際に、奥側影響度DBG(検出難度DCP)に基づいて検出難度の低い映像(フレーム)を選択し、追跡対象である人の位置や動作を精度よく検出することが可能となる。したがって、図14のサイネージシステム10Cでは、壁面ディスプレイ18を観察している人が行った動作の検出漏れや誤検出を低減することが可能となる。よって、図14のサイネージシステム10Cでは、壁面ディスプレイ18を観察している人の動作に応じて壁面ディスプレイ18の表示を適切に変更することが可能となり、壁面ディスプレイ18を観察している人に対する利便性が向上する。
[第2の実施形態]
図15は、第2の実施形態に係る物体追跡装置における優先カメラ決定部の機能的構成を示す図である。
本実施形態の物体追跡装置1は、第1の実施形態で説明した物体追跡装置1と同様、映像取得部110と、追跡部120と、移動先予測部130と、優先カメラ決定部140と、出力部150と、記憶部190とを備える。本実施形態の物体追跡装置1における映像取得部110、追跡部120、移動先予測部130、優先カメラ決定部140は、及び出力部150は、それぞれ、第1の実施形態で説明した機能を持つ。すなわち、本実施形態の物体追跡装置1は、第1の実施形態で説明したように、記憶部190に記憶させた優先カメラ情報195を利用した物体追跡処理を行う。優先カメラ情報195は、複数のカメラのそれぞれにより撮像された複数の映像のそれぞれから追跡対象である物体を検出する際に利用する映像の優先度を示す情報(例えば検出難度DCP)を含む。
本実施形態の物体追跡装置1における優先カメラ決定部140は、移動先予測部130による予測結果に基づいて、優先カメラ情報195を更新する。なお、本実施形態に係る優先カメラ決定部140は、奥側影響度DBG、遮蔽度DFG、及び予測影響度DMVに基づいて、検出難度DCPを算出する。奥側影響度DBGは、第1の実施形態で説明したように、追跡対象である物体の奥側で該物体と重なる他物体が、追跡対象である物体の検出精度に与える影響を示す数値である。遮蔽度DFGは、追跡対象である物体の手前側で該物体と重なる他物体により、追跡対象である物体がどれだけ遮蔽されるかを示す数値である。予測影響度DMVは、移動先予測部130において予測した、次フレームにおける追跡対象である物体の移動先の二次元位置についての予測誤差が物体の検出精度に与える影響を示す数値である。本実施形態の優先カメラ決定部140は、例えば、奥側影響度DBG、遮蔽度DFG、及び予測影響度DMVのそれぞれを、物体を検出する際の難度と関連付けた共通の指標で表される値として算出する。そして、優先カメラ決定部140は、下記式(2)により検出難度DCPを算出する。
DCP=w1・DBG+w2・DFG+w3・DMV (2)
式(2)におけるw1、w2、及びw3は、それぞれ、重み係数である。
本実施形態の物体追跡装置1における優先カメラ決定部140は、例えば、図15のように、二次元位置算出部141と、検出難度推定部142と、更新部143とを含む。二次元位置算出部141及び更新部143は、それぞれ、第1の実施形態で説明した機能を持つ。
また、本実施形態に係る検出難度推定部142は、重畳情報取得部142dと、奥側影響度算出部142bと、遮蔽度算出部142eと、移動量算出部142fと、予測影響度算出部142gと、難度算出部142cとを含む。
重畳情報取得部142dは、追跡対象である物体の移動先の予測結果に基づいて、次フレームにおいて追跡対象である物体と重なる領域及びその周囲の特徴を示す重畳情報を取得する。重畳情報取得部142dは、物体の移動先における奥側情報と取得するとともに、該物体の手前で該物体と重なる他物体を示す情報を取得する。
奥側影響度算出部142bは、追跡対象である物体の特徴と背景情報取得部142aで取得した奥側情報との類似性に基づいて、奥側影響度DBGを算出する。奥側影響度算出部142bは、例えば、追跡対象である物体の特徴と背景情報との類似度を算出した後、該類似度と検出難度との対応関係に基づいて、類似度を奥側影響度DBGに変換する。
遮蔽度算出部142eは、追跡対象である物体の移動先の予測結果に基づいて、次フレームにおける追跡対象である物体についての遮蔽度DFGを算出する。遮蔽度算出部142eは、例えば、まず、次フレームにおいて追跡対象である物体の手前で該物体と重なる他物体の有無を検出し、他物体がある場合には追跡対象である物体全体のうちの他物体と重なる部分の割合を算出する。その後、遮蔽度算出部142cは、追跡対象である物体のうちの他物体と重なる部分の割合と検出難度との対応関係に基づいて、他物体と重なる部分の割合を遮蔽度DFGに変換する。
移動量算出部142fは、追跡対象である物体の移動先の予測結果に基づいて算出されるフレーム内での該物体の移動量を算出する。
予測影響度算出部142gは、移動量算出部142fにおいて算出したフレーム内での物体の移動量に基づいて、予測影響度DMVを算出する。予測影響度算出部142dは、例えば、追跡対象である物体のフレーム内での移動量と検出難度との対応関係に基づいて、移動量を予測影響度DMVに変換する。
難度算出部142cは、奥側影響度DBG、遮蔽度DFG、及び予測影響度DMVに基づいて、検出難度DCPを算出する。例えば、検出難度算出部142eは、上記の式(2)により、検出難度DCPを算出する。
このように、本実施形態に係る優先カメラ決定部140は、奥側影響度に加え、追跡対象である物体が他物体により遮蔽されること、及び移動先の予測精度のそれぞれが物体検出の難度に与える影響も考慮して検出難度DCPを算出する。
本実施形態の物体追跡装置1は、複数のカメラで撮像された複数の映像を取得し、該複数の映像から追跡対象である物体を検出して追跡する処理を行う。複数の映像から追跡対象である物体を検出して追跡する処理として、本実施形態の物体追跡装置1は、例えば、図4のフローチャートに沿った処理を行う。なお、本実施形態の物体追跡装置1が図4の時系列ループ処理(ステップS1~S6)を行う場合、物体追跡装置1の優先カメラ決定部140は、優先カメラ情報更新処理(ステップS5)として、例えば、図16のフローチャートに沿った処理を行う。
図16は、第2の実施形態における優先カメラ情報更新処理の内容を説明するフローチャートである。
優先カメラ決定部140は、図16のように、まず、フレーム毎に追跡中の物体の移動先を予測する(ステップS501)。ステップ501の処理は、優先カメラ決定部140に含まれる二次元位置算出部141が行う。
次に、優先カメラ決定部140は、追跡中の物体毎に、複数の映像のそれぞれにおける次フレームのそれぞれから物体を検出する際の検出難度を算出して優先カメラ情報195を更新する物体別ループ処理(ステップS502~S511)を行う。優先カメラ決定部140は、例えば、物体別ループ処理の開始端(ステップS502)において、追跡中であるM個の物体のうちの変数mにより指定される1個の物体mを選択する。優先カメラ決定部140は、例えば、物体別ループ処理の終了端(ステップS511)において、追跡中である全ての物体に対して処理を行ったか否かを判定する。処理を行っていない物体がある場合、優先カメラ決定部140は、物体別ループ処理を続ける。そして、追跡中の全ての物体に対して処理を行った場合、優先カメラ決定部140は、物体別ループ処理を終了する。
物体別ループ処理の開始端で物体を選択した後、優先カメラ決定部140は、カメラ2毎に、該カメラで撮像した次フレームにおける物体mの検出難度DCP(n)を算出するカメラ別ループ処理(ステップS503~S509)を行う。優先カメラ決定部140は、カメラ別ループ処理の開始端(ステップS503)において、N台のカメラ2のうちの変数nにより指定される1台のカメラnを選択する。また、優先カメラ決定部140は、カメラ別ループ処理の終了端(ステップS509)において、全てのカメラに対して処理を行ったか否かを判定する。処理を行っていないカメラがある場合、優先カメラ決定部140は、カメラ別ループ処理を続ける。そして、全てのカメラに対して処理を行った場合、優先カメラ決定部140は、カメラ別ループ処理を終了する。
カメラ別ループ処理の開始端(ステップS503)でカメラnを選択した後、優先カメラ決定部140は、選択中の物体mの移動先がカメラnにより撮像された映像のフレーム内であるか否かを判定する(ステップS504)。ステップS504の処理は、例えば、優先カメラ決定部140に含まれる検出難度推定部142が行う。物体mの移動先がフレーム外である場合(ステップS504;NO)、検出難度推定部142は、カメラnで撮像した映像における次フレームから物体mを検出する際の検出難度DCP(n)を無効な値(例えばNULL値)とする(ステップS505)。一方、物体mの移動先がフレーム内である場合(ステップS504;YES)、検出難度推定部142は、奥側影響度DBG、遮蔽度DFG、及び予測影響度DMVに基づいて検出難度DCP(n)を算出する検出難度算出処理(ステップS520)を行う。
ステップS520では、検出難度推定部142は、例えば、下記の処理を行う。
(1)カメラnで撮像したフレーム内での物体mの移動先における奥側情報に基づいて、奥側影響度DBGを算出する処理。
(2)カメラnで撮像したフレーム内での物体mの移動先において該物体mの手前側で物体mと重なる他物体が存在する場合に、物体mのうちの手前側の他物体により遮蔽される部分の割合に基づいて遮蔽度DFGを算出する処理。
(3)カメラnで撮像したフレーム内での物体mの移動量に基づいて、予測影響度DMVを算出する処理。
(4)カメラnで撮像した映像の次フレームから物体mを検出する際の検出難度DCPを上記の式(2)により算出する処理。
ステップS505、又はステップS520の処理を終えると、検出難度推定部142は、検出難度DCP(n)を決定していないカメラがあるか否かを判定する(ステップS509)。検出難度DCP(n)を決定していないカメラがある場合、検出難度推定部142は、カメラ別ループ処理を続ける。そして、全てのカメラに対する検出難度DCP(n)を決定すると、検出難度推定部142は、カメラ別ループ処理を終了する。
カメラ別ループ処理を終えると、検出難度推定部142は、次に、優先カメラ情報195における物体mについての検出難度DCP(1)~DCP(N)を更新する(ステップS510)。ステップS510の処理は、優先カメラ決定部140に含まれる更新部143が行う。
ステップS510の処理を終えると、優先カメラ決定部140は、追跡中の物体のなかに優先カメラ情報195の検出難度DCP(1)~DCP(N)を更新していない物体があるか否かを判定する(ステップS511)。検出難度DCP(1)~DCP(N)を更新していない物体がある場合、優先カメラ決定部140は、物体別ループ処理を続ける。そして、全ての物体についての検出難度DCP(1)~DCP(N)を更新すると、優先カメラ決定部140は、物体別ループ処理を終了し、優先カメラ情報更新処理を終了する。
このように、本実施形態の優先カメラ情報更新処理では、現在処理の対象となっているフレームの次に撮像されたフレームにおける、奥側影響度DBGと、遮蔽度DFGと、予測影響度DMVとに基づいて、検出難度DCPを算出する。すなわち、本実施形態の物体追跡装置1は、奥側影響度に加え、フレームから検出する物体が手前に存在する他物体により遮蔽されると検出難度が高くなること、及び物体の移動先の予測誤差に応じて検出精度が変わることを考慮して、検出難度DCPを算出する。このため、本実施形態の物体追跡装置1で利用する優先カメラ情報195では、奥側影響度DBGが低い場合であっても、遮蔽度DFGや予測影響度DMVが高い場合には、検出難度DCPが大きくなる。言い換えると、本実施形態の追跡部120は、優先カメラ情報195において検出難度DCPが小さいカメラで撮像した映像から物体を検出する場合に、手前側の物体に遮蔽されることや、予測誤差の影響により該物体の検出に失敗することを防ぐことが可能となる。このため、本実施形態の物体追跡装置1は、追跡中の物体の追跡精度がより一層向上する。
図17は、第2の実施形態に係る検出難度算出処理の内容を説明するフローチャートである。
本実施形態の物体追跡装置1が行う優先カメラ情報更新処理における検出難度算出処理(ステップS520)は、検出難度推定部142が行う。検出難度推定部142は、まず、追跡中の物体及び該物体の付随部位の移動先に基づいて、次フレームにおける物体mの移動先での奥側情報及び手前側の遮蔽物体の有無を予測する(ステップS521)。ステップS521は、検出難度推定部142に含まれる重畳情報取得部142dが行う。重畳情報取得部142dは、ステップS501で算出した追跡中の物体のフレーム内での二次元位置と実空間における各物体の三次元位置とに基づいて、物体mの移動先において物体mの奥側に存在する他物体についての奥側情報を取得する。また、重畳情報取得部142dは、追跡中の物体のフレーム内での二次元位置と実空間における各物体の三次元位置とに基づいて、物体mの移動先において物体mを遮蔽する他物体の有無を予測する。
次に、検出難度推定部142は、カメラnで撮像した映像の次フレームから物体mを検出する際の奥側影響度DBG(n)を算出する(ステップS522)。ステップS522の処理は、検出難度推定部142に含まれる奥側影響度算出部142bが行う。奥側影響度算出部142bは、第1の実施形態で説明したステップS507と同様の処理を行って奥側影響度DBG(n)を算出する。
次に、検出難度推定部142は、物体mの移動先において物体mを遮蔽する他物体の有無及び該他物体の重なり量に基づいて遮蔽度DFG(n)を算出する(ステップS523)。ステップS523の処理は、検出難度推定部142に含まれる遮蔽度算出部142eが行う。遮蔽度算出部142eは、まず、ステップS521における物体mを遮蔽する物体の有無の予測結果に基づいて、物体mを遮蔽する他物体の有無を判定する。物体mを遮蔽する他物体がない場合、遮蔽度算出部142eは、物体mと、該物体mを遮蔽する他物体との重なり量を「0」として、遮蔽度DFG(n)を算出する。一方、物体mを遮蔽する他物体がある場合、遮蔽度算出部142eは、物体mと、該物体mを遮蔽する他物体との重なり量に応じた遮蔽度DFG(n)を算出する。
フレーム内の物体mを検出する場合、該物体mが手前の他物体により遮蔽されていると、物体mの検出精度は低下する。また、フレーム内の物体mを検出する場合、物体mの全体のうちの他物体により遮蔽されている割合が高くなるほど、物体mの検出精度は低下する。したがって、遮蔽度算出部142eは、物体mと、該物体mを遮蔽する他物体との重なり量が大きくなるほど、遮蔽度DFG(n)が大きくなるよう、遮蔽度DFG(n)を算出する。
次に、検出難度推定部142は、カメラnで撮像したフレーム内での物体mの移動量を算出する(ステップS524)。ステップS524の処理は、検出難度算出部142に含まれる移動量算出部142fが行う。移動量算出部142fは、カメラnで撮像したフレーム内での物体mの検出位置と移動先の位置とに基づいて、物体mの移動量を算出する。
次に、検出難度推定部142は、物体の移動量に基づいて予測影響度DMV(n)を算出する(ステップS525)。ステップS525の処理は、検出難度推定部142に含まれる予測影響度算出部142gが行う。移動先予測部120で予測した物体mの移動先の三次元位置は、予測値であって、次フレームの撮像時刻における物体の三次元位置とは異なる場合がある。また、フレーム内における検出した物体mの位置から予測した物体mの位置までの距離(物体mの移動量)が大きいほど予測位置の誤差の影響は大きくなり、次フレームにおける物体mの予測位置と実際の物体mの位置とのずれが大きくなる傾向がある。このため、物体mの移動量が大きいほど、次フレームから物体mを検出することが難しくなり、検出難度が高くなる。したがって、予測影響度算出部142gは、物体mの移動量が大きくなるほど、予測影響度DMV(n)が大きくなるよう、予測影響度DMV(n)を算出する。
次に、検出難度推定部142は、算出した奥側影響度DBG(n)、遮蔽度DFG(n)、及び予測影響度DMV(n)に基づいて、カメラnで撮像した映像における次フレームから物体mを検出する際の検出難度DCP(n)を算出する(ステップS526)。ステップS526の処理は、検出難度推定部142に含まれる難度算出部142cが行う。難度算出部142cは、例えば、下記式(3)により検出難度DCP(n)を算出する。
DCP(n)=w1・DBG(n)+w2・DFG(n)+w3・DMV(n) (3)
検出難度DCP(n)を算出すると、検出難度推定部142は、カメラnで撮像したフレームについての検出難度算出処理を終了する。
なお、図17のフローチャートは、本実施形態に係る検出難度算出処理(ステップS520)の一例に過ぎない。本実施形態に係る検出難度算出処理は、図17のフローチャートに沿った処理に限らず、適宜変更可能である。例えば、検出難度算出処理は、ステップS521及びS524の処理を行った後で、ステップS522、S523、S525、及びS526の処理を行う内容であってもよい。また、例えば、検出難度算出処理は、ステップS521~S523の処理と、ステップS524及びS525の処理とを並列に行う内容であってもよい。
図18は、追跡中の物体の位置と検出難度との例を説明する図である。
図18には、物体7Aが処理の対象に選択された状態で行われるカメラ別ループ処理(ステップS503~S509)における検出難度DCP(1)~DCP(4)の算出方法を説明する図を示している。本実施形態の検出難度推定部142は、実空間における物体7Aを含む5個の追跡中の物体7A~7Eの移動先の予測結果に基づいて、物体7Aについての検出難度DCP(1)~DCP(4)を算出する。
5個の追跡中の物体7A~7Eの移動先の予測位置が、それぞれ、図18の位置である場合、4台のカメラ2A~2Dのそれぞれにより撮像したフレームから物体Aを検出する際の奥側影響度DBG(cam1)~DBG(cam4)については、以下のことがいえる。
第1のカメラ2A(cam1)により撮像したフレーム内では、物体7Aの奥側で該物体7Aと重なり、物体7Aの検出に影響を与える他物体(物体7B~7Cを含む)は存在しない。同様に、第4のカメラ2D(cam4)により撮像したフレーム内では、物体7Aの奥側で該物体7Aと重なり、物体7Aの検出に影響を与える他物体(物体7B~7Cを含む)は存在しない。これに対し、第2のカメラ2B(cam2)により撮像した映像(フレーム)内では、物体7Aの奥側に位置する物体7Dが物体7Aと重なる。このため、第2のカメラ2Bにより撮像した映像における物体7Aの特徴と物体7Dの特徴との類似性が高い場合、奥側影響度DBG(2)は、奥側影響度DBG(1)及び奥側影響度DBG(4)と比べて大きくなる。
また、第3のカメラ2C(cam3)により撮像したフレーム内では、物体7Aの奥側に位置する背景の一部1210が物体7Aと重なる。ここで、背景の一部1210の特徴と物体7Aの特徴との類似性が高いとすると、奥側影響度DBG(3)は、奥側影響度DBG(1)及び奥側影響度DBG(4)と比べて大きくなる。
次に、遮蔽度について説明する。5個の追跡中の物体7A~7Eの移動先の予測位置が、それぞれ、図18の位置である場合、4台のカメラ2A~2Dのそれぞれにより撮像したフレームから物体7Aを検出する際の遮蔽度DFG(cam1)~DFG(cam4)については、以下のことがいえる。
第1のカメラ2A(cam1)により撮像したフレーム内では、物体7Aの手前側で該物体7Aと重なり、物体7Aの検出に影響を与える他物体(物体7B~7Cを含む)は存在しない。また、第3のカメラ2C(cam3)により撮像したフレーム内では、物体7Aの手前側で該物体7Aと重なり、物体7Aの検出に影響を与える他物体(物体7B~7Cを含む)は存在しない。同様に、第4のカメラ2D(cam4)により撮像したフレーム内では、物体7Aの奥側で該物体7Aと重なり、物体7Aの検出に影響を与える他物体(物体7B~7Cを含む)は存在しない。これに対し、第2のカメラ2B(cam2)により撮像した映像(フレーム)内では、物体7Aの手前側に位置する物体7Bが物体7Aの一部と重なる。このため、第2のカメラ2Bにより撮像したフレーム内における物体7Aについての遮蔽度DFG(2)は、遮蔽度DFG(1)、遮蔽度DFG(3)、及び遮蔽度DBG(4)と比べて大きくなる。
最後に、予測影響度について説明する。5個の追跡中の物体7A~7Eの移動先の予測位置が、それぞれ、図18の位置である場合、4台のカメラ2A~2Dのそれぞれにより撮像したフレームから物体7Aを検出する際の予測影響度DMV(cam1)~DMV(cam4)については、以下のことがいえる。
図18では、物体7Aの移動先を実線の矢印で示している。すなわち、物体7Aの移動方向は、第2のカメラ2B(cam2)により撮像したフレーム内における奥行き方向、及び第4のカメラ2D(cam4)により撮像したフレーム内における奥行き方向のそれぞれと、略平行な方向となっている。これに対し、物体7Aの移動方向は、第1のカメラ2A(cam1)により撮像したフレーム内における奥行き方向、及び第3のカメラ2C(cam3)により撮像したフレーム内における奥行き方向のそれぞれと、略垂直な方向となっている。したがって、第1のカメラ2A(cam1)により撮像したフレーム内、及び第3のカメラ2C(cam3)により撮像したフレーム内における物体7Aの移動量は、第2のカメラ2B(cam2)により撮像したフレーム内、及び第4のカメラ2D(cam4)により撮像したフレーム内における物体7Aの移動量よりも大きくなる。よって、予測影響度DMV(1)及び予測影響度DMV(3)は、それぞれ、予測影響度DMV(2)及び予測影響度DMV(4)よりも大きくなる。
ここで、説明を簡単にするために、奥側影響度DBG、遮蔽度DFG、及び遮蔽度DMVのそれぞれを、1又は2のいずれかの値をとるものとする。この場合、図18の4台のカメラ2A~2Dのそれぞれにおける検出難度DCP(1)~DCP(4)は、それぞれ、下記式(4-1)~(4-4)のようになる。
DCP(1)=w1・1+w2・1+w3・2 (4-1)
DCP(2)=w1・2+w2・2+w3・1 (4-2)
DCP(3)=w1・1+w2・2+w3・2 (4-3)
DCP(4)=w1・1+w2・1+w3・1 (4-4)
ここで更に、重み係数w1、w2、及びw3をそれぞれw1=3、w2=2、及びw3=1とすると、図18の4台のカメラ2A~2Dのそれぞれにおける検出難度DCP(1)~DCP(4)は、それぞれ、下記式(5-1)~(5-4)のようになる。
DCP(1)=3・1+2・1+1・2=7 (5-1)
DCP(2)=3・2+2・2+1・1=11 (5-2)
DCP(3)=3・1+2・2+1・2=9 (5-3)
DCP(4)=3・1+2・1+1・1=6 (5-4)
この場合、カメラの優先度は、検出難度DCPの小さい順、すなわち第4のカメラ2D、第1のカメラ2A、第3のカメラ2C、及び第2のカメラ2Bの順となる。すなわち、式(5-1)~(5-4)の検出難度DCP(1)~DCP(4)を利用して物体7Aを検出する際には、例えば、第4のカメラ2D、第1のカメラ2A、及び第3のカメラ2Cのそれぞれにより撮像したフレームから検出することが好ましい。これにより、物体7Aの検出精度が高くなり、該物体7の追跡精度が向上する。なお、上記の奥側影響度DBG、遮蔽度DFG、及び予測影響度DMV、並びに重み係数w1、w2、及びw3の数値の組み合わせは一例に過ぎない。奥側影響度DBG、遮蔽度DFG、及び予測影響度DMVとしてとり得る値フレーム内での背景や追跡する物体の特徴に応じて適宜変更可能である。また、重み係数w1、w2、及びw3の数値の組み合わせは、奥側影響度DBG、遮蔽度DFG、及び予測影響度DMVのうちの重視する項目等に応じて適宜変更可能である。
このように、本実施形態の物体追跡装置1では、追跡中である物体の移動先を予測し、次に追跡中の物体を検出するフレームにおける該物体の位置の周囲の特徴が物体の検出精度に与える影響を示す検出難度DCPを算出する。本実施形態の物体追跡装置1が算出する検出難度DCPは、フレーム内における検出する物体の特徴と、検出する物体の奥側で該物体と重なる他物体(背景を含む)の特徴との類似度が、物体の検出精度に与える影響の度合いを示す奥側影響度DBGを含む。また、本実施形態の物体追跡装置1が算出する検出難度DCPは、フレーム内における検出する物体の手前で該物体と重なる他物体の有無が物体の検出精度に与える影響の度合いを示す遮蔽度DFGを含む。更に、本実施形態の物体追跡度が算出する検出難度DCPは、物体の移動先の予測結果における誤差が物体の検出精度に与える影響の度合いを示す予測影響度DMVを含む。このように、本実施形態の物体追跡装置1では、フレームから物体を検出する際の検出精度に影響を与える複数種類の要素についての影響の度合いを考慮した検出難度DCPを算出し、該検出難度DCPに基づいて物体を検出するフレーム(カメラ)を選択する。よって、本実施形態の物体追跡装置1は、追跡中の複数の物体のそれぞれが複雑に入り混じる場合にも、追跡対象である物体を高精度に検出して追跡することが可能となる。
例えば、本実施形態の物体追跡装置1は、図2の物体追跡システム10Aに利用可能である。図2の物体追跡システム10Aは、上記のように、撮像エリア6内で行われるスポーツの試合等を複数のカメラ2により撮像し、物体追跡装置1において該複数のカメラ2により撮像された複数の映像から人(選手)7A~7E及び8A~8Eを検出して追跡する。例えば、スポーツの試合では、人(選手)7A~7E及び8A~8Eは、それぞれが自身の役割と時々の状況に応じて行動するため、各人の位置関係は複雑に変化する。このため、例えば、撮像エリア6内の特定の位置に複数の人が密集することもある。更に、スポーツの試合では、人は、例えば、咄嗟の判断により他者が予期せぬ方向へ移動することもある。このため、スポーツの試合を撮像した映像から人を検出して追跡する場合、物体追跡装置1では、人毎に、フレーム内における奥側の状態、他物体により遮蔽されているか否か、及び移動先の予測結果の正しさを考慮して検出難度DCPを算出することが好ましい。
本実施形態の物体追跡装置1では、人(選手)7A~7E及び8A~8Eを検出して追跡する際に、人毎に、移動先の予測位置に基づいて、奥側影響度DBG、遮蔽度DFG、及び予測影響度DMVの3種類の要因を考慮した検出難度DCPを算出する。よって、本実施形態の物体追跡装置1は、スポーツの試合を撮像した複数の映像から人(選手)を検出して追跡する際に、人毎に、同一時刻に撮像された複数のフレームのなかから検出難度の低いフレームを選択して該人を高精度に検出して追跡することが可能である。
なお、本実施形態の物体追跡装置1は、スポーツの試合を撮像した映像に限らず、他の映像から追跡対象である物体を検出して追跡することに利用可能である。例えば、本実施形態の物体追跡装置1は、図13の物体追跡システム10Bのような建物内での不特定多数の人の移動経路を測定するシステムにも適用可能である。更に、本実施形態の物体追跡装置1は、例えば、図14のサイネージシステム10Cにも適用可能である。
上記の各実施形態で説明した物体追跡装置1は、コンピュータと、該コンピュータに実行させるプログラムとにより実現可能である。以下、図19を参照して、コンピュータとプログラムとにより実現される物体追跡装置1について説明する。
図19は、コンピュータのハードウェア構成を示す図である。
図19に示すように、コンピュータ20は、プロセッサ2001と、主記憶装置2002と、補助記憶装置2003と、入力装置2004と、出力装置2005と、入出力インタフェース2006と、通信制御装置2007と、媒体駆動装置2008と、を備える。コンピュータ20におけるこれらの要素2001~2008は、バス2010により相互に接続されており、要素間でのデータの受け渡しが可能になっている。
プロセッサ2001は、Central Processing Unit(CPU)やMicro Processing Unit(MPU)等である。プロセッサ2001は、オペレーティングシステムを含む各種のプログラムを実行することにより、コンピュータ20の全体の動作を制御する。また、プロセッサ2001は、例えば、図4のフローチャートにおける各処理を含む物体追跡プログラムを実行することにより、複数のカメラ2により同一期間に撮像された複数の映像から追跡対象である物体を検出して追跡する。物体追跡プログラムにおける優先カメラ情報を利用した物体追跡処理(ステップS2)は、例えば、図5又は図11のフローチャートに沿った処理を含む。また、物体追跡プログラムにおける優先カメラ情報更新処理(ステップS5)は、例えば、図6又は図16のフローチャートに沿った処理を含む。なお、物体追跡プログラムにおける優先カメラ情報更新処理(ステップS5)が図16のフローチャートに沿った処理を含む場合、検出難度算出処理(ステップS520)は、例えば、図17のフローチャートに沿った処理を含む。
主記憶装置2002は、図示しないRead Only Memory(ROM)及びRandom Access Memory(RAM)を含む。主記憶装置2002のROMには、例えば、コンピュータ20の起動時にプロセッサ2001が読み出す所定の基本制御プログラム等が予め記録されている。また、主記憶装置2002のRAMは、プロセッサ2001が、各種のプログラムを実行する際に必要に応じて作業用記憶領域として使用する。主記憶装置2002のRAMは、例えば、背景情報192、物体特徴情報193、物***置情報194、及び優先カメラ情報195等の記憶に利用可能である。
補助記憶装置2003は、例えば、Hard Disk Drive(HDD)や、フラッシュメモリ等の不揮発性メモリ(Solid State Drive(SSD)を含む)等、主記憶装置2002のRAMと比べて容量の大きい記憶装置である。補助記憶装置2003は、プロセッサ2001によって実行される各種のプログラムや各種のデータ等の記憶に利用可能である。補助記憶装置2003は、例えば、上記の物体追跡プログラムの記憶に利用可能である。また、補助記憶装置2003は、例えば、映像データ191、背景情報192、物体特徴情報193、物***置情報194、及び優先カメラ情報195等の記憶に利用可能である。
入力装置2004は、例えば、キーボード装置、マウス装置、及びタッチパネル装置等である。入力装置2004は、例えば、映像を取得するカメラの選択、映像内の追跡する期間の設定、物体特徴情報193に格納する物体の特徴の選択、並びに式(2)における重み係数w1、w2、及びw3の設定等に利用可能である。
出力装置2005は、例えば、液晶表示装置等の表示装置、及びプリンタ等である。出力装置2005は、例えば、物***置情報194、及び優先カメラ情報195等の表示や印刷に利用可能である。
入出力インタフェース2006は、コンピュータ20と、他の電子機器とを接続する。入出力インタフェース2006は、例えば、Universal Serial Bus(USB)規格のコネクタ等を備える。入出力インタフェース2006は、例えば、コンピュータ20と、カメラ2との接続に利用可能である。
通信制御装置2007は、コンピュータ20をインターネット等のネットワークに接続し、該ネットワークを介したコンピュータ20と他の電子機器との各種通信を制御する装置である。通信制御装置2007は、例えば、通信ネットワーク4を介した、物体追跡装置1として動作させるコンピュータ20と中継器5との通信に利用可能である(図2を参照)。また、例えば、図1の物体追跡装置1と外部装置3とがネットワークを介して接続される場合、通信制御装置2007は、例えば、物体追跡装置1として動作させるコンピュータ20と外部装置3との通信に利用可能である。
媒体駆動装置2008は、可搬型記録媒体21に記録されているプログラムやデータの読み出し、補助記憶装置2003に記憶されたデータ等の可搬型記録媒体21への書き込みを行う。媒体駆動装置2008には、例えば、1種類以上の規格に対応したメモリカード用リーダ/ライタが利用可能である。媒体駆動装置2008としてメモリカード用リーダ/ライタを用いる場合、可搬型記録媒体21としては、メモリカード用リーダ/ライタが対応している規格、例えば、Secure Digital(SD)規格のメモリカード(フラッシュメモリ)等を利用可能である。また、可搬型記録媒体21としては、例えば、USB規格のコネクタを備えたフラッシュメモリが利用可能である。更に、コンピュータ20が媒体駆動装置2008として利用可能な光ディスクドライブを搭載している場合、当該光ディスクドライブで認識可能な各種の光ディスクを可搬型記録媒体21として利用可能である。可搬型記録媒体21として利用可能な光ディスクには、例えば、Compact Disc(CD)、Digital Versatile Disc(DVD)、Blu-ray Disc(登録商標)等がある。可搬型記録媒体21は、例えば、上記の物体追跡プログラムの記憶に利用可能である。また、可搬型記録媒体21は、例えば、映像データ191、背景情報192、物体特徴情報193、物***置情報194、及び優先カメラ情報195等の記憶に利用可能である。
コンピュータ20に物体追跡プログラムの開始命令が入力されると、プロセッサ2001は、補助記憶装置2003等の非一時的な記録媒体に記憶させた物体追跡プログラムを読み出して実行する。物体追跡プログラムを実行している間、プロセッサ2001は、物体追跡装置1における追跡部120、移動先予測部130、及び優先カメラ決定部140として機能する(動作する)。また、物体追跡プログラムが複数のカメラ2のそれぞれにより撮像された複数の映像を取得する処理を含む場合、プロセッサ2001は、映像取得部110としても機能する。更に、物体追跡プログラムが映像データ191及び物***置情報194を含む各種データを外部装置3に出力する処理を含む場合、プロセッサ2001は、出力部150としても機能する。なお、物体追跡装置1における映像取得部110及び出力部150の機能の一部は、それぞれ、コンピュータ20の入出力インタフェース2006、通信制御装置2007、及び媒体駆動装置2008が担う。また、物体追跡プログラムを実行している間、主記憶装置2002のRAM及び補助記憶装置2003等の記憶装置は、物体追跡装置1の記憶部190として機能する。
なお、物体追跡装置1として動作させるコンピュータ20は、図19に示した全ての要素2001~2008を含む必要はなく、用途や条件に応じて一部の要素を省略することも可能である。例えば、コンピュータ20は、媒体駆動装置2008が省略されたものであってもよい。また、物体追跡装置1は、例えば、ネットワークにより接続された複数のコンピュータと、該複数のコンピュータのそれぞれに実行させるプログラムとにより実現することも可能である。
以上記載した各実施形態に関し、更に以下の付記を開示する。
(付記1)
複数のカメラのそれぞれにより撮像された複数の映像のそれぞれにおける同一時刻のフレームの組に含まれるフレームから追跡対象とする物体を検出し、
前記物体を検出したフレーム内での該物体の位置に基づいて、実空間における前記物体の三次元位置を算出し、
算出した前記物体の三次元位置に基づいて、前記複数の映像のそれぞれにおける次に前記物体を検出する次フレームでの前記物体の位置を予測し、
前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、前記複数の映像のそれぞれにおける前記次フレームのそれぞれで、前記追跡対象である物体の特徴と、前記追跡対象である物体の予測位置の奥側で該物体と重なる他物体の特徴とを比較して前記他物体が前記追跡対象である物体の検出に与える奥側影響度を算出し、
前記奥側影響度に基づいて、前記複数のカメラのそれぞれにより撮像された複数の前記次フレームのそれぞれから前記物体を検出する際の検出難度を算出し、
前記複数の映像のそれぞれにおける前記次フレームの組に含まれる前記次フレームから前記追跡対象である物体を検出する際に、
追跡対象である物体毎に、前記検出難度に基づいて、前記次フレームの組に含まれる前記次フレームから該物体を検出する次フレームを選択し、
選択した前記次フレームから前記物体を検出する、
処理をコンピュータに実行させることを特徴とする物体追跡プログラム。
(付記2)
前記奥側影響度を算出する処理では、前記コンピュータは、前記フレームから検出した前記物体のうちの処理の対象になっていない物体に付随する付随部位を前記他物体に含める、
ことを特徴とする付記1の物体追跡プログラム。
(付記3)
前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、前記複数の映像のそれぞれにおける前記次フレームのそれぞれで、前記追跡対象である物体の手前側に存在する他物体により遮蔽される度合いを示す遮蔽度を算出する処理を更に含み、
前記検出難度を算出する処理では、前記奥側影響度と前記遮蔽度とに基づいて前記検出難度を算出する、
ことを特徴とする付記1の物体追跡プログラム。
(付記4)
前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、前記複数の映像のそれぞれにおける現在処理対象となっているフレームと前記次フレームとの間での移動量を算出し、算出した前記移動量が前記物体の検出精度に与える影響の度合いを示す予測影響度を算出する処理を更に含み、
前記検出難度を算出する処理では、前記奥側影響度と前記予測影響度とに基づいて前記検出難度を算出する、
ことを特徴とする付記1の物体追跡プログラム。
(付記5)
前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、
前記複数の映像のそれぞれにおける前記次フレームのそれぞれで、前記追跡対象である物体の手前側に存在する他物体により遮蔽される度合いを示す遮蔽度を算出する処理と、
前記複数の映像のそれぞれにおける現在処理対象となっているフレームと前記次フレームとの間での移動量を算出し、算出した前記移動量が前記物体の検出精度に与える影響の度合いを示す予測影響度を算出する処理と、
を更に含み、
前記検出難度を算出する処理では、前記奥側影響度と、前記遮蔽度と、前記予測影響度とに基づいて前記検出難度を算出する、
ことを特徴とする付記1の物体追跡プログラム。
(付記6)
前記追跡対象である物体毎に、選択した前記フレームから該物体を検出する処理では、前記追跡対象である物体のうちの前記検出難度の低い物体から順に前記フレームから該物体を検出する、
ことを特徴とする付記1の物体追跡プログラム。
(付記7)
前記追跡対象である物体毎に、選択した前記フレームから該物体を検出する処理では、前記検出難度の低いフレームから順に前記物体を検出する、
ことを特徴とする付記1の物体追跡プログラム。
(付記8)
前記物体の三次元位置を算出する処理では、前記物体を検出したフレーム毎に、該フレーム内での前記物体の検出位置と、前記検出難度とに基づいて、実空間における前記物体の三次元位置の許容範囲を示す制約領域を設定し、実空間における前記制約領域の重なる領域に基づいて、前記物体の三次元位置を算出する、
ことを特徴とする付記1の物体追跡プログラム。
(付記9)
複数のカメラのそれぞれにより撮像された複数の映像のそれぞれにおける同一時刻のフレームの組毎に、該フレームの組に含まれるフレームから追跡対象とする物体を検出して追跡する際に、
追跡対象である物体毎に、複数のカメラのそれぞれにより撮像された複数のフレームのそれぞれから物体を検出する際の検出難度を示す情報に基づいて、前記フレームの組に含まれるフレームから該物体を検出するフレームを選択し、
前記追跡対象である物体毎に、選択した前記フレームから該物体を検出し、
前記追跡対象である物体毎に、前記物体を検出したフレーム内での該物体の位置に基づいて、実空間における前記物体の三次元位置を算出する追跡部と、
前記物体の三次元位置に基づいて、前記複数の映像のそれぞれにおける次に前記物体を検出する次フレームでの前記物体の位置を予測する移動先予測部と、
前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、前記複数の映像のそれぞれにおける前記次フレームのそれぞれで、前記追跡対象である物体の特徴と、前記追跡対象である物体の予測位置の奥側で該物体と重なる他物体の特徴とを比較して前記他物体が前記追跡対象である物体の検出に与える奥側影響度を算出する奥側影響度算出部と、
前記奥側影響度に基づいて、前記複数のカメラのそれぞれにより撮像された複数の前記次フレームのそれぞれから前記物体を検出する際の検出難度を算出する難度算出部と、
を備えることを特徴とする物体追跡装置。
(付記10)
前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、前記複数の映像のそれぞれにおける前記次フレームのそれぞれで、前記追跡対象である物体の手前側に存在する他物体により遮蔽される度合いを示す遮蔽度を算出する遮蔽度算出部と、
前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、前記複数の映像のそれぞれにおける現在処理対象となっているフレームと前記次フレームとの間での移動量を算出する移動量算出部と、
算出した前記移動量が前記物体の検出精度に与える影響の度合いを示す予測影響度を算出する予測影響度算出部と、
を更に含み、
前記難度算出部は、前記奥側影響度と、前記遮蔽度と、前記予測影響度とに基づいて、前記検出難度を算出する、
ことを特徴とする付記9の物体追跡装置。
(付記11)
複数のカメラと、
前記複数のカメラのそれぞれにより撮像された複数の映像のそれぞれにおける同一時刻のフレームの組から追跡対象とする物体を検出して追跡する際に、
追跡対象である物体毎に、複数のカメラのそれぞれにより撮像された複数のフレームのそれぞれから物体を検出する際の検出難度を示す情報に基づいて、前記フレームの組に含まれるフレームから該物体を検出するフレームを選択し、
前記追跡対象である物体毎に、選択した前記フレームから該物体を検出し、
前記追跡対象である物体毎に、前記物体を検出したフレーム内での該物体の位置に基づいて、実空間における前記物体の三次元位置を算出する追跡部と、
前記物体の三次元位置に基づいて、前記複数の映像のそれぞれにおける次に前記物体を検出する次フレームでの前記物体の位置を予測する移動先予測部と、
前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、前記複数の映像のそれぞれにおける前記次フレームのそれぞれで、前記追跡対象である物体の特徴と、前記追跡対象である物体の予測位置の奥側で該物体と重なる他物体の特徴とを比較して前記他物体が前記追跡対象である物体の検出に与える奥側影響度を算出する奥側影響度算出部と、
前記奥側影響度に基づいて、前記複数のカメラのそれぞれにより撮像された複数の前記次フレームのそれぞれから前記物体を検出する際の検出難度を算出する難度算出部と、
を備えることを特徴とする物体追跡システム。
(付記12)
前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、前記複数の映像のそれぞれにおける前記次フレームのそれぞれで、前記追跡対象である物体の手前側に存在する他物体により遮蔽される度合いを示す遮蔽度を算出する遮蔽度算出部と、
前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、前記複数の映像のそれぞれにおける現在処理対象となっているフレームと前記次フレームとの間での移動量を算出する移動量算出部と、
算出した前記移動量が前記物体の検出精度に与える影響の度合いを示す予測影響度を算出する予測影響度算出部と、
を更に含み、
前記難度算出部は、前記奥側影響度と、前記遮蔽度と、前記予測影響度とに基づいて、前記検出難度を算出する、
ことを特徴とする付記11の物体追跡システム。
(付記13)
コンピュータが、
複数のカメラのそれぞれにより撮像された複数の映像のそれぞれにおける同一時刻のフレームの組に含まれるフレームから追跡対象とする物体を検出し、
前記物体を検出したフレーム内での該物体の位置に基づいて、実空間における前記物体の三次元位置を算出し、
算出した前記物体の三次元位置に基づいて、前記複数の映像のそれぞれにおける次に前記物体を検出する次フレームでの前記物体の位置を予測し、
前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、前記複数の映像のそれぞれにおける前記次フレームのそれぞれで、前記追跡対象である物体の特徴と、前記追跡対象である物体の予測位置の奥側で該物体と重なる他物体の特徴とを比較して前記他物体が前記追跡対象である物体の検出に与える奥側影響度を算出し、
前記奥側影響度に基づいて、前記複数のカメラのそれぞれにより撮像された複数の前記次フレームのそれぞれから前記物体を検出する際の検出難度を算出し、
前記複数の映像のそれぞれにおける前記次フレームの組に含まれる前記次フレームから前記追跡対象である物体を検出する際に、
追跡対象である物体毎に、前記検出難度に基づいて、前記次フレームの組に含まれる前記次フレームから該物体を検出する次フレームを選択し、
選択した前記次フレームから前記物体を検出する、
処理を実行することを特徴とする物体追跡方法。
(付記14)
前記コンピュータが、前記物体の位置の予測結果に基づいて、前記追跡対象である物体毎に、
前記複数の映像のそれぞれにおける前記次フレームのそれぞれで、前記追跡対象である物体の手前側に存在する他物体により遮蔽される度合いを示す遮蔽度を算出する処理と、
前記複数の映像のそれぞれにおける現在処理対象となっているフレームと前記次フレームとの間での移動量を算出し、算出した前記移動量が前記物体の検出精度に与える影響の度合いを示す予測影響度を算出する処理と、
を更に含み、
前記検出難度を算出する処理では、前記コンピュータは、前記奥側影響度と、前記遮蔽度と、前記予測影響度とに基づいて、前記検出難度を算出する、
ことを特徴とする付記13の物体追跡方法。