(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024124716
(43)【公開日】2024-09-13
(54)【発明の名称】追跡システム、追跡方法、およびプログラム
(51)【国際特許分類】
G06Q 50/10 20120101AFI20240906BHJP
G06T 7/292 20170101ALI20240906BHJP
【FI】
G06Q50/10
G06T7/292
【審査請求】有
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023032593
(22)【出願日】2023-03-03
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】110002860
【氏名又は名称】弁理士法人秀和特許事務所
(72)【発明者】
【氏名】楊 ▲玄▼恭
(72)【発明者】
【氏名】鎌田 一史
(72)【発明者】
【氏名】小堀 訓成
【テーマコード(参考)】
5L049
5L050
5L096
【Fターム(参考)】
5L049CC11
5L050CC11
5L096AA02
5L096AA06
5L096CA04
5L096CA05
5L096DA02
5L096FA06
5L096FA18
5L096FA69
5L096GA40
5L096GA41
5L096JA03
5L096JA11
(57)【要約】
【課題】スケーラブルな追跡システムを提供する。
【解決手段】追跡システムは、撮像装置と、追跡手段と、追跡情報を送信する送信手段と、追跡情報を受信した場合に、現在追跡中の対象物の中に送信された追跡情報によって特定される対象物が含まれるか判定する判定手段と、現在追跡中の対象物の中に送信された追跡情報によって特定される対象物が含まれると判定された場合に、前記対象物の識別子を追跡情報に含まれる識別子に置き換え、かつ、周囲の追跡装置から受信した対象物と現在追跡中の対象物が一致することを表す一致情報を前記サーバ装置に送信する更新手段と、を備える複数の追跡装置と、追跡装置から送信される追跡情報をグラフ構造として記憶し、一致情報によって互いに一致すると示される追跡情報のノードを連結し、かつ、各追跡情報のノードに対象物の識別情報のノードを連結して記憶する記憶手段を備えるサーバ装置を含む。
【選択図】
図2
【特許請求の範囲】
【請求項1】
複数の追跡装置とサーバ装置とを含む追跡システムであって、
前記複数の追跡装置のそれぞれは、
撮像装置と、
前記撮像装置によって取得される撮像画像に基づいて対象物の追跡を行う追跡手段と、
少なくとも前記対象物の特徴および識別子を含む追跡情報を、周囲の追跡装置および前記サーバ装置に対して送信する追跡情報送信手段と、
他の追跡装置から前記追跡情報を受信した場合に、現在追跡中の対象物の中に他の追跡装置から送信された追跡情報によって特定される対象物と一致する対象物が含まれるか判定する判定手段と、
現在追跡中の対象物の中に他の追跡装置から送信された追跡情報によって特定される対象物と一致する対象物が含まれると判定された場合に、前記対象物の識別子を前記追跡情報に含まれる識別子に置き換え、かつ、前記周囲の追跡装置から受信した対象物と現在追跡中の対象物が一致することを表す一致情報を前記サーバ装置に送信する更新手段と、
を備え、
前記サーバ装置は、
前記追跡装置から送信される前記追跡情報をグラフ構造として記憶し、前記一致情報によって互いに一致すると示される追跡情報のノードを連結し、かつ、各追跡情報のノードに対象物の識別情報のノードを連結して記憶する記憶手段、
を備える、
ことを特徴とする、追跡システム。
【請求項2】
前記追跡装置の前記追跡情報送信手段は、
周囲の追跡装置のうち、前記撮像装置の撮像範囲が重複している追跡装置に対しては、定期的に前記追跡情報を送信し、
周囲の追跡装置のうち、前記撮像装置の撮像範囲が重複していない追跡装置に対しては、前記対象物の退出イベントに応じて前記追跡情報を送信する、
請求項1に記載の追跡システム。
【請求項3】
前記サーバ装置は、前記記憶手段における前記追跡情報の連結関係を検証し、不整合な連結関係が発見されたときに、ユーザに通知または前記不整合な連結関係の訂正を行う検証手段を更に備える、
請求項1に記載の追跡システム。
【請求項4】
前記サーバ装置は、
対象物が写った画像を取得する画像取得手段と、
前記画像中の対象物の識別子を特定する識別子特定手段と、
前記画像中の対象物の追跡情報を前記記憶手段から取得して出力する検索手段と、
を備える、請求項1に記載の追跡システム。
【請求項5】
複数の追跡装置とサーバ装置とを含む追跡システムにおける追跡方法であって、
前記複数の追跡装置のそれぞれは、
撮像装置によって取得される撮像画像に基づいて対象物の追跡を行う追跡ステップと、
少なくとも前記対象物の特徴および識別子を含む追跡情報を、周囲の追跡装置および前記サーバ装置に対して送信する追跡情報送信ステップと、
他の追跡装置から前記追跡情報を受信した場合に、現在追跡中の対象物の中に前記追跡情報によって特定される対象物と一致する対象物が含まれるか判定する判定ステップと、
現在追跡中の対象物の中に前記追跡情報によって特定される対象物と一致する対象物が含まれると判定された場合に、前記対象物の識別子を前記追跡情報に含まれる識別子に置
き換え、かつ、前記周囲の追跡装置から受信した対象物と現在追跡中の対象物が一致することを表す一致情報を前記サーバ装置に送信する更新ステップと、
を実行し、
前記サーバ装置は、
前記追跡装置から送信される前記追跡情報をグラフ構造として記憶する記憶手段であって、前記一致情報によって一致すると示される追跡情報のノードを連結し、かつ、各追跡情報のノードに対象物の識別情報のノードを連結して記憶する記憶ステップ、
を実行する、
ことを特徴とする、追跡方法。
【請求項6】
複数の追跡装置とサーバ装置とを含む追跡システムにおいて利用されるプログラムであって、
前記追跡装置に、
撮像装置によって取得される撮像画像に基づいて対象物の追跡を行う追跡ステップと、
少なくとも前記対象物の特徴および識別子を含む追跡情報を、周囲の追跡装置および前記サーバ装置に対して送信する追跡情報送信ステップと、
他の追跡装置から前記追跡情報を受信した場合に、現在追跡中の対象物の中に前記追跡情報によって特定される対象物と一致する対象物が含まれるか判定する判定ステップと、
現在追跡中の対象物の中に前記追跡情報によって特定される対象物と一致する対象物が含まれると判定された場合に、前記対象物の識別子を前記追跡情報に含まれる識別子に置き換え、かつ、前記周囲の追跡装置から受信した対象物と現在追跡中の対象物が一致することを表す一致情報を前記サーバ装置に送信する更新ステップと、
を実行させ、
前記サーバ装置に、
前記追跡装置から送信される前記追跡情報をグラフ構造として記憶する記憶手段であって、前記一致情報によって一致すると示される追跡情報のノードを連結し、かつ、各追跡情報のノードに対象物の識別情報のノードを連結して記憶する記憶ステップ、
を実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、追跡システム、追跡方法、およびプログラムに関する。
【背景技術】
【0002】
特許文献1に開示される装置は、撮像領域が各々異なる複数台のカメラによって撮像された複数の人物画像と当該複数の人物画像間の類似度に係る類似度情報とを取得し、2つの人物画像間の類似度が所定の閾値よりも大きい場合に、前記グラフ生成部は、前記2つの人物画像間を連結するエッジを生成する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2017-21753号公報(特許第6570905号公報)
【発明の概要】
【発明が解決しようとする課題】
【0004】
本開示の態様の一つは、追跡システムのスケーラビリティを高めるための技術を提供することを目的とする。
【課題を解決するための手段】
【0005】
本開示の態様の一つは、複数の追跡装置とサーバ装置とを含む追跡システムであって、前記複数の追跡装置のそれぞれは、撮像装置と、前記撮像装置によって取得される撮像画像に基づいて対象物の追跡を行う追跡手段と、少なくとも前記対象物の特徴および識別子を含む追跡情報を、周囲の追跡装置および前記サーバ装置に対して送信する追跡情報送信手段と、他の追跡装置から前記追跡情報を受信した場合に、現在追跡中の対象物の中に他の追跡装置から送信された追跡情報によって特定される対象物と一致する対象物が含まれるか判定する判定手段と、現在追跡中の対象物の中に他の追跡装置から送信された追跡情報によって特定される対象物と一致する対象物が含まれると判定された場合に、前記対象物の識別子を前記追跡情報に含まれる識別子に置き換え、かつ、前記周囲の追跡装置から受信した対象物と現在追跡中の対象物が一致することを表す一致情報を前記サーバ装置に送信する更新手段と、を備え、前記サーバ装置は、前記追跡装置から送信される前記追跡情報をグラフ構造として記憶し、前記一致情報によって互いに一致すると示される追跡情報のノードを連結し、かつ、各追跡情報のノードに対象物の識別情報のノードを連結して記憶する記憶手段、を備える、ことを特徴とする、追跡システム。
【発明の効果】
【0006】
本開示の態様によれば、追跡システムのスケーラビリティを確保することができる。
【図面の簡単な説明】
【0007】
【
図1】一実施形態に係る(A)追跡システムの概要、および(B)サーバ装置における追跡情報のグラフデータベースを説明する図である。
【
図2】一実施形態における(A)追跡装置、および(B)サーバ装置の構成を示す図である。
【
図3】一実施形態における追跡装置が行う処理を示すフローチャートである。
【
図4】一実施形態におけるサーバ装置が行う処理を示すフローチャートである。
【
図5】一実施形態におけるサーバ装置によるグラフデータベースの更新例を説明する図である。
【発明を実施するための形態】
【0008】
複数のカメラに写る自分から同一人物を識別して、広範囲にわたって人物を追跡する技術が提案されている。このような追跡システムを大規模に構築しようとすると、スケーラビリティのある分散システムを構築する必要がある。しかしながら、特許文献1のように従来技術は全ての処理をサーバ装置で行うのでスケーラブルではない。また、広い範囲にわたって同一人物を正しく管理し、また、特定の人物の検索を容易にすることも求められる。
【0009】
そこで、本開示は、複数の追跡装置を有する追跡システムにおいて、スケーラビリティを高めることを課題とする。
【0010】
本開示の一つの実施形態は、複数の追跡装置とサーバ装置とを含む追跡システムである。
【0011】
複数の追跡装置のそれぞれは、撮像装置と追跡手段と追跡情報送信手段と判定手段と更新手段を備える。追跡手段は、前記撮像装置によって取得される撮像画像に基づいて対象物の追跡を行う。追跡情報送信手段は、少なくとも前記対象物の特徴および識別子を含む追跡情報を、周囲の追跡装置および前記サーバ装置に対して送信する。ここでの識別子は、UUID(Universally Unique Identifier)のようにシステム上で一意の識別子であ
ってよい。判定手段は、他の追跡装置から前記追跡情報を受信した場合に、現在追跡中の対象物の中に他の追跡装置から送信された追跡情報によって特定される対象物と一致する対象物が含まれるか判定する。更新手段は、現在追跡中の対象物の中に他の追跡装置から送信された追跡情報によって特定される対象物と一致する対象物が含まれると判定された場合に、前記対象物の識別子を前記追跡情報に含まれる識別子に置き換え、かつ、前記周囲の追跡装置から受信した対象物と現在追跡中の対象物が一致することを表す一致情報を前記サーバ装置に送信する。
【0012】
サーバ装置は、前記追跡装置から送信される前記追跡情報をグラフ構造として記憶し、前記一致情報によって互いに一致すると示される追跡情報のノードを連結し、かつ、各追跡情報のノードに対象物の識別情報のノードを連結して記憶する記憶手段を備える。
【0013】
このように、同一人物か否かの判定は、隣接する複数の追跡装置が連携して分散的に実行されるので、追跡装置の数が増大しても処理負荷の集中が生じない。また、サーバ装置においてグラフ構造のデータベースを用いているので、データ数が増えても高速なデータ検索が可能であり、また、それぞれの追跡情報ノードに識別情報ノードを連結しているので識別情報を用いた検索がさらに高速化される。
【0014】
本開示において、前記追跡装置の前記追跡情報送信手段は、周囲の追跡装置のうち、前記撮像装置の撮像範囲が重複している追跡装置に対しては、定期的に前記追跡情報を送信してもよい。また、前記追跡装置の前記追跡情報送信手段は、周囲の追跡装置のうち、前記撮像装置の撮像範囲が重複していない追跡装置に対しては、前記対象物の退出イベントに応じて前記追跡情報を送信してもよい。
【0015】
2つの追跡装置の撮像範囲が重複している場合には、対象者が両方の追跡装置で撮影されることがあるので、定期的に情報送信することが望まれる。一方、2つの追跡装置の撮像範囲が重複していない場合には、一方の追跡装置での追跡が完了した後に、他方の追跡装置での追跡が開始するので、退出イベントが発生してから追跡情報を送信すれば十分である。
【0016】
本開示において、前記サーバ装置は、前記記憶手段における前記追跡情報の連結関係を
検証し、不整合な連結関係が発見されたときに、ユーザに通知または前記不整合な連結関係の訂正を行う検証手段を更に備えてもよい。ここで、不整合な連結関係の一例は、追跡対象が同時期に異なる追跡装置で追跡されるケース、言い換えると、一つの追跡情報ノードが異なる複数の追跡情報ノードにリンクしているケースである。また、不整合な連結関係の他の例は、追跡対象が現実的な移動不可能なほど距離が離れた追跡装置の間で移動しているケースである。サーバ装置は、このような訂正を行うことでデータベースの整合性を保つことができる。
【0017】
本開示において、前記サーバ装置は、対象物が写った画像を取得する画像取得手段と、前記画像中の対象物の識別子を特定する識別子特定手段と、前記画像中の対象物の追跡情報を前記記憶手段から取得して出力する検索手段と、を備えてもよい。ここで、対象物の識別子の特定は、サーバ装置自体が行ってもよいし、他の装置が行ってサーバ装置はその結果を受け取るだけにしてもよい。本開示によれば、特定の対象物の追跡情報の検索が高速に行える。
【0018】
本開示の他の実施形態は、上述の追跡装置、および上述のサーバ装置である。また、本開示の他の実施形態は、上述の追跡システムが行う追跡方法、追跡装置が行う処理方法、およびサーバ装置が行う処理方法である。また、本開示の他の態様は、追跡システム、追跡装置、またはサーバ装置に上述の処理方法を実行させるためのコンピュータプログラムである。
【0019】
以下、図面に基づいて、本開示の実施の形態を説明する。以下の実施形態の構成は例示であり、本開示は実施形態の構成に限定されない。
【0020】
(システム概要)
図1(A)は一実施形態に係る追跡システムの概要を説明する図である。本実施形態に係る追跡システムは、人物を対象として追跡を行い、また同一の人物には複数の追跡装置が同一の識別子を付与して、当該人物の追跡装置の撮影範囲をまたがる移動を追跡可能とする。
図1(A)に示す例では、追跡システムは3台の追跡装置100A,100B,100Cを含む。追跡装置100Aと追跡装置100Bのカメラ撮影範囲は一部重複しており、追跡装置100Cのカメラ撮影範囲は他の装置のカメラ撮影範囲と重複していない。
【0021】
ここで、人物Pが図示するように移動したとする。各追跡装置は、追跡した人物の特徴情報を周囲の追跡装置と共有することで、他の装置で追跡した人物との同一性を判断することができる。
【0022】
また、各追跡装置は、追跡人物の追跡開始から追跡終了までの追跡情報をサーバ装置200に送信する。サーバ装置200は、
図1(B)に示すように、追跡情報をグラフ構造のデータベースとして記憶する。ここでは、各追跡装置100A,100B,100Cにおける人物Pの追跡インスタンス(追跡開始から追跡終了までの一連の追跡情報)に、それぞれA-1,B-5,C-3という識別子(ID)を割り当てて管理するものとする。人物Pの移動経路に応じて、サーバ装置200は、ノードA-1からノードB-5に向かうリンクを張り、ノードB-5からノードC-3に向かうリンクを張る。これにより、グラフをたどることで人物Pの移動に伴う追跡情報を容易に検索できる。また、各ノードA-1,B-5,C-3にユニークID(ここではUUID
1)のノードを連結する。これにより、サーバ装置200は、ユニークIDを用いた検索も容易にできる。
【0023】
本実施形態に係る追跡システムは、同一人物の識別を隣接する追跡装置間のみで判断するので、同一人物判定の処理負荷を分散できスケーラビリティを確保できる。また、サーバ装置において、上述のようにグラフ構造のデータベースで追跡情報を記憶するので、追
跡情報の一貫性の確保が容易となるとともに、検索も容易となる。
【0024】
(構成)
本実施形態に係る追跡システムは、複数の追跡装置100とサーバ装置200から構成される。
図2(A)は追跡装置100の構成図であり、
図2(B)はサーバ装置200の構成図である。
【0025】
追跡装置100は、CPU101、メモリ102、通信装置103、およびカメラ(撮像装置)104を有するコンピュータ(情報処理装置)である。メモリ102にはCPU101が実行可能なプログラムが格納されている。CPU101が当該プログラムを実行することで、追跡装置100は、画像取得部110、追跡部120、追跡情報記憶部130、追跡情報送信部140、追跡情報受信部150、一致判定部160、追跡情報更新部170として機能する。カメラ104と、CPU101、メモリ102,および通信装置103とは同一の筐体内に配置されてもよいし、地理的に離れた位置にある異なる筐体内に配置されてもよい。また、追跡装置100は、サーバ装置200および少なくとも近接する他の追跡装置100と通信可能に構成される。
【0026】
サーバ装置200は、CPU201、メモリ202、および通信装置203を有するコンピュータ(情報処理装置)である。メモリ202にはCPU201が実行可能なプログラムが格納されている。CPU201が当該プログラムを実行することで、サーバ装置200は、追跡情報受信部210、追跡情報更新部220、一致情報受信部230、追跡情報記憶部240、検証部250、検索対象画像取得部260、検索対象特定部270、検索部280として機能する。
【0027】
上記の各機能部の詳細については他の図面を参照しながら後ほど詳しく説明する。なお、上記の機能部の一部または全ては、専用の回路または装置により実現されても構わない。
【0028】
(処理)
以下、追跡装置100およびサーバ装置200が行う処理について、図面を参照して説明する。
図3(A)~
図3(C)は、それぞれ追跡装置100が行う追跡処理、追跡情報送信処理、追跡情報受信時処理の流れを示すフローチャートである。
図4(A)~
図4(D)は、それぞれサーバ装置200が行う、追跡情報受信時処理、一致情報送信時処理、検証処理、検索処理の流れを示すフローチャートである。これらの処理は、追跡装置100またはサーバ装置200のCPUがプログラムを実行することにより実現される。したがって、CPUが制御手段に相当する。
【0029】
[追跡処理(追跡装置)]
図3(A)を参照して、追跡装置100が行う追跡処理について説明する。追跡処理は、カメラ104によって撮影された画像を解析して、画像中に新たに登場した人物(追跡対象物)を検出し、検出された人物の移動を追いかける処理である。
【0030】
ステップS11において、追跡部120は、画像取得部110を介してカメラ104から撮影画像を取得し、現在追跡中の人物以外の人物を画像中から検出する。また、追跡部120は、検出された人物の特徴情報を取得する。人物の特徴情報は、当該人物を特定可能な情報であれば任意の情報であってよいが、例えば、顔のパーツの特徴を表す情報や、身体の特徴(輪郭、色、輝度勾配など)を表す情報を採用しうる。
【0031】
ステップS12において、追跡部120は、ステップS11で検出された人物が、追跡システムにおいて過去にすでに追跡された人物と同一であるか、新規の人物であるかを判
定する。この判定は、ステップS11で取得した特徴量と一致する特徴量を持つ人物を過去に追跡システムが追跡したことがあるか否かを調べることにより行える。後述するように、追跡装置100は、周囲の追跡装置100から周囲の追跡装置が追跡した人物の特徴情報を含む追跡情報を受信し、追跡情報記憶部130に記憶している。したがって、追跡部120は、検出した人物の特徴情報と一致する特徴を有する特徴情報が追跡情報記憶部130に格納されているかを判断することで、ステップS12の判定が行える。なお、すでに追跡したことがある人物であっても、その追跡情報を追跡装置100が取得できていない場合には、追跡装置100は検出した人物を新規の人物であると判断することになる。
【0032】
ステップS12が否定判定の場合、すなわち検出された人物がすでに追跡したことのある人物である場合には、ステップS13において、追跡部120は、当該人物を過去に追跡した際に用いられていた識別子を取得する。後述するように、この識別子はグローバルユニークな識別子であり、追跡情報に含まれている。
【0033】
ステップS12が肯定判定の場合、すなわち検出された人物が過去に追跡したことのない新規の人物である場合には、ステップS14において、追跡部120は、この人物に対して新規のグローバルユニークIDを発行する。
【0034】
ステップS15において、追跡部120は、画像取得部110を介してカメラ104から取得される画像から対象人物の追跡を実施する。追跡部120は、各フレーム画像から取得される、追跡対象人物の特徴情報、人物画像、バウンディングボックスの位置(検出位置)、検出時刻、および識別子を追跡情報として、追跡情報記憶部130に格納する。なお、カメラ104から取得されるフレーム画像または当該フレーム画像の格納場所を表す情報を追跡情報に含めて保存してもよい。
【0035】
また、追跡装置100のカメラ撮影範囲に登場してから退出するまでの一連の追跡情報(追跡インスタンス)に対して、追跡装置100は追跡識別子(追跡ID)を割り当てる。この追跡IDは、人物のユニークIDとは違い、同一人物であっても追跡インスタンスごとに異なる識別子である。追跡IDは、追跡装置100の識別子と、追跡装置100内での一意の識別子を組み合わせたものとすることができる。
図1(A)における、A-1,B-5,C-3が追跡IDの一例である。この追跡IDも追跡情報に含めて追跡情報記憶部130に保存される。
【0036】
[追跡情報送信処理(追跡装置)]
図3(B)を参照して、追跡情報送信部140が行う追跡情報送信処理について説明する。追跡情報送信部140は、所定のタイミングで追跡情報を周囲の追跡装置に送信する。ここで、送信タイミングは送信先の追跡装置によって異なる。以下、図面を参照して説明する。
【0037】
ステップS21において、追跡情報送信部140は、送信先の追跡装置100の種類を判定する。ここでは、送信先の追跡装置100のカメラ撮影範囲が、自身のカメラ撮影範囲と重複しているか重複していないかを判定する。撮影範囲が重複していない場合には処理はステップS22に進み、撮影範囲が重複している場合には処理はステップS23に進む。
【0038】
なお、カメラ撮影範囲が重複しているか否かは、カメラ設置情報としてあらかじめ各追跡装置100に保存されているか、または、サーバ装置200に保存されており必要に応じて追跡装置100が取得するように構成される。カメラ設置情報には、カメラ撮影範囲の重複の有無以外にも、設置場所および2つの追跡装置間の距離などその他の情報が含ま
れてもよい。
【0039】
ステップS22は、追跡情報の送信先の追跡装置とカメラ撮影範囲が重複しない場合に行われる。ステップS22では、追跡情報送信部140は、現在追跡中の人物のいずれかについて退出イベントが発生したか否か判定する。退出イベントが発生した場合には処理はステップS24に進み、退出イベントが発生していない場合には処理はステップS22に戻り退出イベントの発生を待つ。追跡部120は、例えば、追跡中の人物を所定時間(または所定フレーム)連続して画像から検出できないときに、当該人物の退出イベントが発生させる。
【0040】
ステップS23は、追跡情報の送信先の追跡装置とカメラ撮影範囲が重複する場合に
行われる。追跡情報送信部140は、前回の追跡情報送信から一定時間経過したか否かを判定する。この送信周期(一定時間)は任意であってよい。一定時間が経過した場合には処理はステップS24に進み、経過していない場合には処理はステップS23に戻り時間経過を待つ。
【0041】
ステップS24において、追跡情報送信部140は、追跡情報記憶部130に格納されている追跡情報を、通信装置103を介して周囲の追跡装置に送信する。なお、追跡情報送信部140は、退出イベントに応じて追跡情報を送信する場合には退出した人物の追跡情報を送信し、周期的に追跡情報を送信する場合には現在追跡中の人物および前回の送信の後に退出した人物の追跡情報を送信すればよい。送信される追跡情報には、例えば、追跡対象人物のグローバルユニークID、追跡ID、特徴情報、人物画像、バウンディングボックスの位置、検出時刻が含まれうる。
【0042】
なお、追跡情報送信部140は、サーバ装置200に対しても追跡情報を送信する。サーバ装置200への追跡情報の送信タイミングは特に限定されず、例えば、退出イベント発生時に送信することができる。
【0043】
[追跡情報受信時処理(追跡装置)]
図3(C)を参照して、追跡装置100が、周囲の追跡装置から追跡情報を受信したときの処理について説明する。
【0044】
ステップS31において、追跡情報受信部150が通信装置103を介して周囲の追跡装置からの追跡情報を受信する。上述のように、追跡情報には、例えば、追跡対象人物のグローバルユニークID、追跡ID、特徴情報、人物画像、バウンディングボックスの位置、検出時刻が含まれうる。
【0045】
ステップS32において、一致判定部160は、追跡部120が現在追跡中の人物の中に、受信した追跡情報によって特定される人物と一致する人物が含まれるか判定する。具体的には、一致判定部160は、追跡情報記憶部130に格納されている現在追跡中の人物の特徴情報と、受信した追跡情報に含まれる特徴情報を比較して、類似度が閾値以上の場合に、これらの人物が一致すると判定する。
【0046】
ステップS33において、一致する追跡対象人物がいる場合には、処理はステップS34に進み、そうでない場合には処理はステップS36に進む。
【0047】
ステップS34において、追跡情報更新部170は、一致すると判定された人物のグローバルユニークIDを、受信した追跡情報に含まれるグローバルユニークIDに置き換えるよう追跡情報記憶部130を更新する。また、追跡情報更新部170は、受信した追跡情報に含まれる追跡IDを、現在追跡中の人物の直前の追跡インスタンスとして記憶して
もよい。
【0048】
ステップS35において、追跡情報更新部170は、現在追跡中の人物と受信した追跡情報によって示される人物とが一致する旨を表す一致情報を、追跡情報送信部140を介してサーバ装置200へ送信する。一致情報には、例えば、現在追跡中の追跡IDおよび今まで使用していたグローバルユニークIDと、受信した追跡情報に含まれるグローバルユニークIDが含まれる。また、一致情報には、現在追跡中の追跡IDに加えて、直前の追跡ID(受信した追跡情報に含まれる)が含まれてもよい。
【0049】
ステップS36において、一致判定部160は、一致判定の結果を、追跡情報送信部140を介して追跡情報の送信元の追跡装置に返信する。返信内容は、送信された追跡情報に示される人物と一致する追跡中人物が存在するか否かが含まれ、さらに追跡IDや特徴情報などが含まれてもよい。このように一致判定結果を送信することで、送信元の追跡装置100は再度追跡情報を送信する手間を省くことができる。
【0050】
[追跡情報受信時処理(サーバ装置)]
図4(A)を参照して、サーバ装置200が行う、追跡情報受信時処理について説明する。この処理は、追跡情報受信部210がいずれかの追跡装置100から追跡情報を受信したときに実行され、サーバ装置200は追跡情報を追跡情報記憶部240に記憶する。ここで、追跡情報記憶部240は、追跡情報がグラフ構造のデータベースとして記憶する。以下、追跡情報を受信したときに、主にどのようにグラフデータベースを更新するかを説明する。
【0051】
ステップS41において、追跡情報更新部220は、追跡インスタンスのノードを追跡情報記憶部240に追加する。具体的には、追跡IDによって特定されるノードがグラフデータベースに追加される。このノードには、その他の追跡情報、例えば、特徴情報、人物画像、バウンディングボックスの位置、検出時刻が含まれうる。
【0052】
ステップS42において、追跡情報更新部220は、追跡情報に含まれるグローバルユニークIDが、データベース内に存在するIDであるか新規のIDであるか判定する。新規のIDである場合には処理はステップS43に進み、そうでない場合には処理はステップS44に進む。
【0053】
ステップS43は、今回の追跡インスタンスが新規のグローバルユニークIDを有する場合に実行される処理である。ステップS43において、追跡情報更新部220は、追跡情報に含まれるグローバルユニークIDを表すノードをグラフデータベースに新規に追加する。
【0054】
ステップS44は、今回の追跡インスタンスが既存のグローバルユニークIDを有する場合に実行される処理である。ステップS44において、追跡情報更新部220は、追跡情報に含まれる直前の追跡IDによって特定される追跡インスタンスのノードと、ステップS41で追加した追跡インスタンスのノードをリンクで連結する。
【0055】
ステップS45において、追跡情報更新部170は、ステップS41で追加した追跡インスタンスノードと、追跡情報に示されるグローバルユニークIDのノード(ステップS43で追加または既存)とをリンクで連結する。
【0056】
[一致情報受信時処理(サーバ装置)]
図4(B)を参照して、サーバ装置200が行う、一致情報受信時処理について説明する。この処理は、一致情報受信部230が何れかの追跡装置100から一致情報を受信し
たときに実行され、一致情報に応じて追跡情報更新部220がグラフデータベースを更新する。
【0057】
ステップS51において、追跡情報更新部220は、一致情報受信部230が受信した一致情報に基づいてグラフデータベースを更新する。一致情報には、ある追跡インスタンスAの人物が他の追跡インスタンスBの人物と一致する旨、および当該人物に割り当てられるべきグローバルユニークIDが含まれる。追跡情報更新部220は、追跡インスタンスAのノードに連結するグローバルユニークIDのノードを、一致情報で示されるグローバルユニークIDのノードに変更する。
【0058】
ステップS52において、追跡情報更新部220は、追跡インスタンスAと追跡インスタンスBのノードをリンクで連結する。
【0059】
[グラフデータベースの更新例]
図5(A)~
図5(D)を参照して、追跡情報記憶部240に格納されるグラフデータベースの更新例を説明する。
【0060】
図5(A)は、追跡装置100A(
図1(A)参照)が、新規に人物の追跡を追跡インスタンスA-1として開始し、当該人物に対してグローバルユニークID UUID
1を割り当てたときのデータベースである。追跡情報更新部170は、追跡装置100Aから送信される追跡情報に基づいて、追跡インスタンスA-1のノードを追加し(S41)、またグローバルユニークID UUID
1のノードを追加し(S43)、これらのノードを連結する(S45)。
【0061】
図5(B)は、追跡装置100Bが同一人物を追跡したときのデータベースを示す。なお、追跡装置100Bは追跡装置100Aから送信される追跡情報に基づいて、追跡インスタンスB-5の人物が追跡インスタンスA-1と同一人物であることを把握しているものとする。したがって、追跡装置100Bからサーバ装置200に送信される追跡情報には、追跡インスタンスB-5のグローバルユニークIDがUUID
1であると示されている。追跡情報更新部170は、追跡装置100Bから送信される追跡情報に基づいて、追跡インスタンスB-5のノードを追加し(S41)、追跡インスタンスB-5のノードと直前の追跡インスタンスA-1のノードとを連結する(S44)。さらに、追跡情報更新部170は、追跡インスタンスB-5のノードをグローバルユニークID UUID
1のノードに連結する(S45)。
【0062】
図5(C)は、追跡装置100Cが同一人物を追跡したときのデータベースを示す。ただし、この時点では追跡装置100Cは、この人物が追跡インスタンスA-1,B-5と同一人物であることが認識できておらず、新規の人物としてグローバルユニークID UUID
2を割り当てているものとする。追跡情報更新部170は、追跡装置100Cから送信される追跡情報に基づいて、追跡インスタンスC-3のノードを追加し(S41)、またグローバルユニークID UUID
2のノードを追加し(S43)、これらのノードを連結する(S45)。
【0063】
図5(D)は、追跡装置100Cが後から追跡インスタンスC-3の人物が、追跡インスタンスA-1,B-5と同一人物であることを認識し、一致情報をサーバ装置200に送信した後のデータベースを示す。追跡情報更新部170は、追跡装置100Cから送信される一致情報に基づいて、追跡インスタンスC-3が連結されるグローバルユニークIDノードを、UUID
1のノードからUUID
2のノードに変更する(S51)。また、追跡情報更新部170は、追跡インスタンスB-5のノードと追跡インスタンスC-3のノードを連結する(S52)。
【0064】
このように、追跡情報および一致情報に基づいてサーバ装置200のグラフデータベースが更新されることで、一時的に同一人物が異なる人物として記録されることがあっても、最終的に同一人物を同一人物として記録することができる。
【0065】
[検証処理(サーバ装置)]
図5(C)を参照して、サーバ装置200の検証部250が行うグラフデータベースの検証処理について説明する。
【0066】
ステップS61において、検証部250はグラフデータベースにおける不整合な接続の検出を行う。不整合な接続の一例は、グラフデータベースにおいて、一つの追跡インスタンスノードが、カメラ撮影範囲が重複しない複数の追跡装置の追跡インスタンスノードにリンクしているケースである。カメラ撮影範囲が重複しないのであれば、追跡インスタンスノードは一つの追跡インスタンスノードとリンクされるはずである。特徴情報に基づく一致判定に誤認識があると、誤って上記のようなケースが発生する。検証部250は、このような接続を不整合な接続であるとみなす。
【0067】
不整合な接続の他の例は、現実的な移動が不可能なほど距離が離れた追跡装置間で、追跡対象人物が移動しているケースである。このような移動は現実的に生じないので、検証部250は、このような接続も不整合な接続であるとみなす。
【0068】
ステップS62において、検証部250はグラフデータベースにおいて、不整合な接続の修正を行う。修正の一例は、不整合な接続(リンク)を削除することである。修正の他の例は、不整合な接続を正しい接続に置き換えることである。
【0069】
[検索処理(サーバ装置)]
図5(D)は、サーバ装置200が行う人物の検索処理である。
【0070】
ステップS240において、検索対象画像取得部260は、検索対象人物が写った画像を取得する。検索対象画像取得部260は、ネットワーク経由で他の装置から当該画像を取得してもよいし、記憶媒体から読み込んで取得してもよいし、サーバ装置200が備えるカメラから取得してもよい。
【0071】
ステップS72において、検索対象特定部270は、検索対象人物を特定して、当該人物のグローバルユニークIDを取得する。人物の特定は、画像から人物の特徴情報を抽出して、当該特徴情報を同じ特徴情報を有する人物を探索することにより行える。サーバ装置200は、人物の特徴情報とグラフデータベースで利用されるグローバルユニークIDを関連付けて記憶している記憶部を有し、当該記憶部を参照して検索対象人物のグローバルユニークIDを取得する。他の実施形態では、検索対象特定部270は、外部の装置に検索対象人物が写った画像または当該人物の特徴情報を送信して、その結果として当該人物のグローバルユニークIDを取得する。
【0072】
ステップS73において、検索部280は、追跡情報更新部220内のグラフデータベースを検索して、ステップS72で取得されたグローバルユニークIDと接続している追跡インスタンスを検索する。なお、この検索において、探索の地理的な範囲や時間的な範囲などの条件が指定されている場合には、検索部280は、当該条件を満たす追跡インスタンスのみを検索する。グラフデータベースにおいて、それぞれの追跡インスタンスノードは、グローバルユニークIDノードと接続されているので、指定されたグローバルユニークIDを持つ人物の追跡インスタンスを検索することは容易である。
【0073】
ステップS74において、検索部280は検索結果を提示する。検索結果の提示は、画面への出力であってもよいし、検索結果の他の装置への送信であってもよい。
【0074】
[実施形態の有利な効果]
本実施形態によれば追跡対象人物の一致判定を、追跡装置が周囲の追跡装置と連携して行っており、サーバ装置は一致判定の処理を行わない。したがって、追跡装置の数が増えても一致判定に関するサーバ装置の負荷は増大しないのでスケーラブルである。
【0075】
また、サーバ装置は追跡情報をグラフ構造のデータベースで管理している。追跡に関する情報を、表構造のデータベース(関係データベース)で管理するのは容易ではないが、グラフデータベースを用いることで管理が容易となる。例えば、追跡インスタンスのノード間を連結することで、追跡対象物の移動に伴う追跡インスタンスを順次取得することが容易である。また、追跡インスタンスのそれぞれにグローバルユニークIDのノードを接続しているので、グローバルユニークIDを用いた検索処理も簡単となる。したがって、グラフデータベースから特定の人物の検索情報を抽出することも容易となる。
【0076】
また、追跡装置において追跡対象の一致判定を行ってサーバ装置に通知しているので、仮に同一人物に異なるグローバルIDが割り当てられたとしても、最終的には同一人物には同一のグローバルIDが割り当てられるようにデータベースが更新される。
【0077】
(その他の実施形態)
上記の実施形態はあくまでも一例であって、本開示はその要旨を逸脱しない範囲内で適宜変更して実施しうる。
【0078】
上記では検索対象物が人物の例を説明したが、他の実施形態での検索対象物はその他の物体であってよい。検索対象物の例として、車両、飛行体、動物などが挙げられるがこれに限定されるものではない。
【0079】
本開示は、上記の実施形態で説明した機能を実装したコンピュータプログラムをコンピュータに供給し、当該コンピュータが有する1つ以上のプロセッサがプログラムを読み出して実行することによっても実現可能である。このようなコンピュータプログラムは、コンピュータのシステムバスに接続可能な非一時的なコンピュータ可読記憶媒体によってコンピュータに提供されてもよいし、ネットワークを介してコンピュータに提供されてもよい。非一時的なコンピュータ可読記憶媒体は、例えば、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクドライブ(HDD)等)、光ディスク(CD-ROM、DVDディスク、ブルーレイディスク等)など任意のタイプのディスク、読み込み専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気カード、フラッシュメモリ、光学式カード、電子的命令を格納するために適した任意のタイプの媒体を含む。
【符号の説明】
【0080】
100:追跡装置
200:サーバ装置