(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-08-18
(45)【発行日】2025-08-26
(54)【発明の名称】特定プログラム、特定方法および情報処理装置
(51)【国際特許分類】
G06T 7/00 20170101AFI20250819BHJP
G06T 7/246 20170101ALI20250819BHJP
H04N 7/18 20060101ALI20250819BHJP
【FI】
G06T7/00 300F
G06T7/246
G06T7/00 660B
H04N7/18 D
(21)【出願番号】P 2021155203
(22)【出願日】2021-09-24
【審査請求日】2024-06-11
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】井上 智博
(72)【発明者】
【氏名】紺野 剛史
【審査官】秦野 孝一郎
(56)【参考文献】
【文献】特開2011-060024(JP,A)
【文献】岸田 嵩平、堀田 裕弘,画角の異なる多視点映像からの人物同定法の検討,電子情報通信学会技術研究報告 ,日本,一般社団法人電子情報通信学会,2019年07月12日,第119巻 第132号,p.1-5
【文献】Alina Bialkowski; Simon Denman; Sridha Sridharan; Clinton Fookes; Patrick Lucey ,A Database for Person Re-Identification in Multi-Camera Surveillance Networks,International Conference on Digital Image Computing Techniques and Applications,米国,IEEE,2012年,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6411689
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
H04N 7/18
(57)【特許請求の範囲】
【請求項1】
撮影する画像の俯角が異なるとともに設置される場所が異なる複数のカメラにより撮影された複数の第一の画像と、特定対象となる人物を含む第二の画像とを取得し、
前記第二の画像から、
人物の関節毎の特徴量の組合わせた複数の部分特徴量を生成し、前記複数の部分特徴量から、第一の特徴量を生成し、
前記カメラの俯角の情報と前記第一の特徴量とを基にして、前記特定対象となる人物の照合に用いる第二の特徴量を生成し、
前記第二の特徴量に基づいて、前記複数のカメラにより撮影された複数の第一の画像から、前記特定対象となる人物を有する画像を特定する
処理をコンピュータに実行させることを特徴とする特定プログラム。
【請求項2】
撮影した画像に含まれる人物に関するラベルを付与した前記複数の第一の画像と、前記ラベルおよびある俯角を付与した複数の第三の画像とから、前記第一の特徴量を抽出し、前記第一の特徴量から、複数種類の第二の特徴量を生成し、前記第二の特徴量が類似する第一の画像のラベルと前記第三の画像のラベルとの一致度合いを基にして、前記ある俯角で用いる第二の特徴量を選定する処理を更にコンピュータに実行させることを特徴とする請求項1に記載の特定プログラム。
【請求項3】
前記特定する処理は、前記複数の第一の画像に対応する第二の特徴量と、前記第二の画像に対応する第二の特徴量との類似度をそれぞれ算出し、前記第二の画像に対応する第二の特徴量との類似度が閾値以上となる第二の特徴量の第一の画像を、前記特定対象となる人物を有する画像として特定することを特徴とする請求項1に記載の特定プログラム。
【請求項4】
前記特定する処理は、前記第二の画像に対応する第二の特徴量との類似度が閾値以上となる第二の特徴量の第一の画像を撮影したカメラの設置された場所を基にして、前記特定対象の人物の移動軌跡を更に特定することを特徴とする請求項3に記載の特定プログラム。
【請求項5】
前記特定対象となる人物は、警察が扱う事件に関連する人物である、ことを特徴とする請求項1に記載の特定プログラム。
【請求項6】
撮影する画像の俯角が異なるとともに設置される場所が異なる複数のカメラにより撮影された複数の第一の画像と、特定対象となる人物を含む第二の画像とを取得し、
前記第二の画像から、
人物の関節毎の特徴量の組合わせた複数の部分特徴量を生成し、前記複数の部分特徴量から、第一の特徴量を生成し、
前記カメラの俯角の情報と前記第一の特徴量とを基にして、前記特定対象となる人物の照合に用いる第二の特徴量を生成し、
前記第二の特徴量に基づいて、前記複数のカメラにより撮影された複数の第一の画像から、前記特定対象となる人物を有する画像を特定する
処理をコンピュータが実行することを特徴とする特定方法。
【請求項7】
撮影する画像の俯角が異なるとともに設置される場所が異なる複数のカメラにより撮影された複数の第一の画像と、特定対象となる人物を含む第二の画像とを取得する取得部と、
前記第二の画像から、
人物の関節毎の特徴量の組合わせた複数の部分特徴量を生成し、前記複数の部分特徴量から、第一の特徴量を生成し、前記カメラの俯角の情報と前記第一の特徴量とを基にして、前記特定対象となる人物の照合に用いる第二の特徴量を生成し、前記第二の特徴量に基づいて、前記複数のカメラにより撮影された複数の第一の画像から、前記特定対象となる人物を有する画像を特定する照合部と
を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、特定プログラム等に関する。
【背景技術】
【0002】
各種の捜査において、複数箇所に設置されたカメラの画像(映像)が用いられる。たとえば、事件が発生した場合に、警察官は、犯人の写真を手掛かりとして監視カメラの画像を確認し、画像に犯人が映っていないか探すことがある。また、警察官は、犯人を撮影したカメラの設置場所の情報を用いて、犯人の歩いた軌跡を特定し、捜査に役立てている。
【0003】
なお、複数箇所に設置されたカメラの画像から人物の骨格情報等の特徴量を抽出し、抽出した特徴量と、捜査対象の人物の特徴量とを照合することで、所定の人物の画像を検出する従来技術がある。かかる従来技術を用いることで、確認作業の負荷を軽減することができる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上述した従来技術のように、予め決められた特徴量を用いて照合を行うと、特定したい人物の画像を検出する精度が低下するという問題がある。
【0006】
各カメラの設置は、自治体、個人、警察等、それぞれ異なる設置者が行っており、カメラの俯角もそれぞれ異なる。たとえば、コンビニに設置されたカメラであれば、店内や店の前がカメラの撮影範囲に含まれるように、カメラの俯角が設定される。一方、自治体や警察がカメラを繁華街に設置する場合には、防犯の観点から繁華街全体が見渡せるように、カメラの俯角が調整される。
【0007】
ここで、カメラの俯角が変わると、人物の映り方が変化する。
図17は、カメラの俯角に応じた人物の映り方を説明するための図である。
図17において、画像3は、設置高さ1mの俯角の浅い第1カメラで撮影された画像である。画像4は設置高さ3mの俯角の深い第2カメラで撮影された画像である。
【0008】
図17の画像3では、第1カメラによって、異なるタイミングn、n+1、n+2で撮影した人物3a,3b,3cを示している。人物3a~3cは、同一人物である。たとえば、画像3の人物3aは、タイミングnにおいて撮影された人物である。画像3の人物3bは、タイミングn+1において撮影された人物である。画像3の人物3cは、タイミングn+2において撮影された人物である。俯角が浅い場合には、人物3a,3b,3cは、常に側面が撮影されるため、首の角度は一定となる。
【0009】
図17の画像4では、第2カメラによって、異なるタイミングn、n+1、n+2で撮影した人物4a,4b,4cを示している。人物4a~4cは、同一人物である。たとえば、画像4の人物4aは、タイミングnにおいて撮影された人物である。画像4の人物4bは、タイミングn+1において撮影された人物である。画像4の人物4cは、タイミングn+2において撮影された人物である。人物4aは、人物4bと比較して、体の前面が多く映るため、人物4bの首の角度よりも、人物4aの首の角度の方が大きくなる。一方、人物4cは、人物4bと比較して、体の背面が多く映るための、人物4bの首の角度よりも、人物4cの首の角度の方が小さくなる。
【0010】
図17で説明したように、カメラの俯角によって、人物の特徴量が変化するため、俯角の異なるカメラで撮影された画像を用いて、照合を行おうとすると、照合精度が低下してしまう。たとえば、首の角度を特徴量として、画像3の人物と、画像4の人物との照合を行うと、同一人物であっても、特徴量が一致しない場合がある。
【0011】
1つの側面では、本発明は、特定したい人物の画像を検出する精度を向上させることができる特定プログラム、特定方法および情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【0012】
第1の案では、コンピュータに次に処理を実行させる。コンピュータは、撮影する画像の俯角が異なるとともに設置される場所が異なる複数のカメラにより撮影された複数の第一の画像と、特定対象となる人物を含む第二の画像とを取得する。コンピュータは、第二の画像から、人物の関節に関する第一の特徴量を生成する。コンピュータは、カメラの俯角の情報と第一の特徴量とを基にして、特定対象となる人物の照合に用いる第二の特徴量を生成する。コンピュータは、第二の特徴量に基づいて、複数のカメラにより撮影された複数の第一の画像から、特定対象となる人物を有する画像を特定する。
【発明の効果】
【0013】
特定したい人物の画像を検出する精度を向上させることができる。
【図面の簡単な説明】
【0014】
【
図1】
図1は、本実施例に係るシステムの一例を示す図である。
【
図3】
図3は、事前処理を説明するための図(1)である。
【
図4】
図4は、事前処理を説明するための図(2)である。
【
図5】
図5は、事前処理を説明するための図(3)である。
【
図6】
図6は、特徴量定義テーブルのデータ構造の一例を示す図である。
【
図7】
図7は、カメラ管理テーブルのデータ構造の一例を示す図である。
【
図9】
図9は、本実施例に係る情報処理装置の構成を示す機能ブロック図である。
【
図10】
図10は、1つの画像フレームから得られる特徴量を説明するための図である。
【
図11】
図11は、複数の画像フレームから得られる特徴量を説明するための図である。
【
図12】
図12は、特徴量ベクトルのデータ構造の一例を示す図である。
【
図14】
図14は、情報処理装置の事前処理の処理手順を示すフローチャートである。
【
図15】
図15は、情報処理装置の照合処理の処理手順を示すフローチャートである。
【
図16】
図16は、実施例の情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【
図17】
図17は、カメラの俯角に応じた人物の映り方を説明するための図である。
【発明を実施するための形態】
【0015】
以下に、本願の開示する特定プログラム、特定方法および情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例】
【0016】
図1は、本実施例に係るシステムの一例を示す図である。
図1に示すように、このシステム1は、カメラ10a,10b,10c,10dと、情報処理装置100とを有する。カメラ10a~10dおよび情報処理装置100は、ネットワーク30を介して相互に接続される。
図1に示す例では、カメラ10a~10dのみを示すが、本実施例に係るシステムは、その他のカメラを含んでいてもよい。
【0017】
カメラ10a~10dは、撮影範囲の映像を撮影し、撮影した映像のデータを、情報処理装置100に送信する。以下の説明では、カメラ10a~10dを特に区別しない場合「カメラ10」と表記する。カメラ10が情報処理装置100に送信する映像のデータを、映像データと表記する。本実施例では、人物が撮影された映像データを用いて説明する。映像データには、かかる映像データを撮影したカメラ10の識別情報が付与される。カメラ10の識別情報を、「カメラ識別情報」と表記する。
【0018】
映像データには、時系列の複数の画像フレームが含まれる。各画像フレームには、時系列の昇順に、フレーム番号が付与される。1つの画像フレームは、カメラ10があるタイミングで撮影した静止画像である。
【0019】
情報処理装置100は、カメラ10から映像データを取得し、人物の照合を実行する装置である。たとえば、情報処理装置100は、事前処理、照合処理を実行する。以下において、事前処理、照合処理について順に説明する。
【0020】
情報処理装置100が実行する「事前処理」の一例について説明する。情報処理装置100は、予め準備された学習データを用いて、事前処理を実行する。
図2は、学習データの一例を示す図である。
図2に示すように、学習データ50には、データベース50aと、クエリ50bとが含まれる。
【0021】
データベース50aは、カメラ識別情報と、正解ラベルと、映像データとを対応付ける。カメラ識別情報は、カメラ10を識別する情報である。たとえば、カメラ10a,10b、10c,10dのカメラ識別情報をそれぞれC10a,C10b,C10c,C10dとする。正解ラベルは、映像データに含まれる人物を一意に識別する情報である。映像データは、カメラ10(あるいは、他のカメラ)によって事前に撮影された映像データである。
【0022】
図2に示す例では、カメラ識別情報「C10a」と、正解ラベル「X」と、映像データ51aとが対応付けられる。カメラ識別情報「C10b」と、正解ラベル「Y」と、映像データ52aとが対応付けられる。カメラ識別情報「C10c」と、正解ラベル「Z」と、映像データ53aとが対応付けられる。カメラ識別情報「C10d」と、正解ラベル「W」と、映像データ54aとが対応付けられる。たとえば、映像データ51aは、カメラ10aによって撮影され、映像データ51aには、正解ラベルXで識別される人物が映っていることが示される。
【0023】
クエリ50bは、正解ラベルと、映像データと、俯角とを対応付ける。正解ラベルは、映像データに含まれる人物を一意に識別する情報である。映像データは、カメラ10(あるいは、他のカメラ)によって事前に撮影された映像データである。俯角は、該当する映像データを撮影したカメラの俯角を示す。
【0024】
図2に示す例では、正解ラベル「X」と、映像データ51bと、俯角「40°」とが対応付けられる。正解ラベル「Y」と、映像データ52bと、俯角「40°」とが対応付けられる。正解ラベル「Z」と、映像データ53bと、俯角「40°」とが対応付けられる。正解ラベル「W」と、映像データ54bと、俯角「40°」とが対応付けられる。たとえば、映像データ51bは、俯角「50°」のカメラに撮影され、正解ラベルXで識別される人物が映っていることが示される。
【0025】
ここで、映像データ51aと、映像データ51bとは、正解ラベルが「X」で同一であるため、映像データ51aに映った人物と、映像データ51bに映った人物とは同一人物である。なお、映像データ51aと、映像データ51bとは、異なる時間、あるいは、異なる場所において、該当する人物を撮影した映像データである。すなわち、映像データ51aは、映像データ51bを複製したものではない。
【0026】
情報処理装置100は、学習データ50に登録された各映像データについて、次の処理をそれぞれ実行する。情報処理装置100は、映像データに含まれる各画像フレームを、OpenPose等の機械学習済みの学習モデルに入力することで、各画像フレームに含まれる人物の骨格情報を検出する。
【0027】
図3は、事前処理を説明するための図(1)である。情報処理装置100は、画像フレーム20aを学習モデルに入力することで、骨格情報20bを検出する。骨格情報20bには、人物の複数の関節の2次元座標(x、y)が含まれる。複数の関節には、鼻、首、左右の目、耳、肩、肘、手首、尻、膝、足首等が含まれる。以下の説明では、関節の2次元座標を「関節座標」と表記する。
【0028】
情報処理装置100は、映像データに含まれる各画像フレームの骨格情報を検出し、骨格情報に含まれる各関節座標、および、関節座標の推移を基にして、複数の特徴量を特定する。複数の特徴量には、右腕の高さ、左腕の高さ、右膝の高さ、左膝の高さ、歩幅の最大値、足の浮遊時間、各関節角度、歩行時の目線等が含まれる。以下の説明において、複数の特徴量を「特徴量ベクトル」と表記する。
【0029】
情報処理装置100は、データベース50a、クエリ50bに登録された各映像データに対して、上記処理を繰り返し実行し、映像データ毎に、特徴量ベクトルを特定する。
【0030】
情報処理装置100は、次の処理を実行することで、俯角毎の最適な特徴量の組合せを選定する。
図4は、事前処理を説明するための図(2)である。情報処理装置100は、特徴量ベクトルに含まれる全特徴量のうち、組合せを変更した複数の部分特徴量を事前に定義しておく。部分特徴量に含まれる特徴量(特徴量の種類)の数は、特徴量ベクトルの特徴量の数よりも少ないものとする。
【0031】
図4に示す例では、特徴量ベクトルには、右腕の高さ、左腕の高さ、右膝の高さ、左膝の高さ、歩幅の最大値、足の浮遊時間等が含まれる。部分特徴量Aには、左腕の高さ、右腕の高さ等が含まれる。部分特徴量Bには、歩幅の最大値、足の浮遊時間等が含まれる。部分特徴量Cには、左膝の高さ、右膝の高さ等が含まれる。
図4に示す例では、部分特徴量A,B,Cを示すが、他の部分特徴量も定義される。
【0032】
図5は、事前処理を説明するための図(3)である。情報処理装置100は、俯角毎に、各部分特徴量のラベルの一致度合いを特定し、ラベルの一致度合いが最大となる部分特徴量を、該当する俯角の部分特徴量として特定する。以下の説明では、データベース50aの映像データから特定した部分特徴量と、クエリ50bの映像データから特定した部分特徴量とを区別するため、クエリ50bの映像データから特定した部分特徴量を「クエリ部分特徴量」と表記する。
図5の説明では、クエリ50bの映像データ51b~53bの俯角を「40°」として説明を行う。
【0033】
情報処理装置100は、データベース50aの映像データ51a~54aの特徴量ベクトルから、部分特徴量Aの値を抽出する。情報処理装置100は、クエリ50bの映像データ51b~53bの特徴量ベクトルから、クエリ部分特徴量Aの値を抽出する。
【0034】
情報処理装置100は、映像データ51a~54aの部分特徴量Aと、映像データ51bのクエリ部分特徴量Aとの類似度(コサイン類似度)をそれぞれ算出し、クエリ部分特徴量との類似度が最大となる部分特徴量Aに対応する映像データの正解ラベルを特定する。たとえば、映像データ51aの部分特徴量Aと、映像データ51bのクエリ部分特徴量Aとの類似度を最大の類似度とすると、正解ラベルが「X」で一致する。
【0035】
情報処理装置100は、映像データ51a~54aの部分特徴量Aと、映像データ52bのクエリ部分特徴量Aとの類似度をそれぞれ算出し、クエリ部分特徴量との類似度が最大となる部分特徴量Aに対応する映像データの正解ラベルを特定する。たとえば、映像データ52aの部分特徴量Aと、映像データ52bのクエリ部分特徴量Aとの類似度を最大の類似度とすると、正解ラベルが不一致(XとYで不一致)となる。
【0036】
情報処理装置100は、映像データ51a~54aの部分特徴量Aと、映像データ53bのクエリ部分特徴量Aとの類似度をそれぞれ算出し、クエリ部分特徴量との類似度が最大となる部分特徴量Aに対応する映像データの正解ラベルを特定する。たとえば、映像データ51aの部分特徴量Aと、映像データ51bのクエリ部分特徴量Aとの類似度を最大の類似度とすると、正解ラベルが「X」で一致する。
【0037】
上記の例では、情報処理装置100が、俯角「40°」の映像データについて、部分特徴量Aによる検索を行うと、ラベルの一致度合いが「2/3」となる。
【0038】
部分特徴量Aと同様にして、情報処理装置100は、俯角「40°」の映像データについて、部分特徴量B,C、他の部分特徴量による検索を実行し、ラベルの一致度合いを特定する。
【0039】
情報処理装置100は、各部分特徴量に関するラベルの一致度合いを比較し、ラベルの一致度合いが最大となる部分特徴量を、該当する俯角の部分特徴量として特定する。たとえば、情報処理装置100は、俯角「40°」について、部分特徴量Aを用いた場合のラベルの一致度合いが最大となる場合には、俯角「40°」の部分特徴量を、部分特徴量Aとして特定する。
【0040】
情報処理装置100は、他の俯角についても、上記の処理と同様の処理を実行することで、他の俯角の部分特徴量を特定する。情報処理装置100は、特定結果によって、俯角と、部分特徴量との関係を特徴量定義テーブルに登録する。
【0041】
図6は、特徴量定義テーブルのデータ構造の一例を示す図である。
図6に示すように、この特徴量定義テーブル52は、俯角と、特徴量の数と、特徴量の組合せとが対応付けられる。俯角は、映像データを撮影したカメラの俯角を示す。特徴量の数は、俯角に対応する部分特徴量に含まれる特徴量の数である。特徴量の組合せは、部分特徴量を構成する各特徴量の組合せを示す。
【0042】
次に、情報処理装置100が実行する「照合処理」の一例について説明する。照合処理時の説明では、特定対象となる人物が映った映像データを用いて説明する。特定対象となる人物が映った映像データを適宜「照合対象映像データ」と表記する。照合対象映像データには、この照合対象映像データを撮影したカメラ10のカメラ識別情報が付与される。
【0043】
情報処理装置100は、照合対象映像データの各画像フレームを、学習モデルに入力することで、各骨格情報を特定する。
【0044】
情報処理装置100は、カメラ識別情報と、カメラ管理テーブルとを比較して、照合対象映像データを撮影したカメラ10の俯角を特定する。
図7は、カメラ管理テーブルのデータ構造の一例を示す図である。
図7に示すように、このカメラ管理テーブル53は、カメラ識別情報と、俯角と、設置位置(緯度、経度)とを対応付ける。カメラ識別情報は、カメラを識別する情報である。俯角は、該当するカメラの俯角を示す。設置位置は、該当するカメラの設置位置(緯度、経度)を示す。
【0045】
情報処理装置100は、特定したカメラ10の俯角と、特徴量定義テーブル52とを比較して、特定した俯角に対応する特徴量の組合せを特定する。以下の説明では、特定した特徴量の組合せを、「特定特徴量」と表記する。
【0046】
情報処理装置100は、照合対象映像データから得た骨格情報に含まれる各関節座標、および、関節情報の推移を基にして、特徴量ベクトルを特定する。情報処理装置100は、照合対象映像データの特徴量ベクトルから、特定特徴量を抽出する。以下の説明では、照合対象映像データの特徴量ベクトルから抽出した、特定特徴量を「第1特定特徴量」と表記する。
【0047】
情報処理装置100は、事前処理において特定した、データベース50aの各映像データの特徴量ベクトルから、特定特徴量をそれぞれ抽出する。以下の説明では、データベース50aの各映像データの特徴量ベクトルから抽出した特定特徴量を「第2特定特徴量」と表記する。第2特定特徴量には、カメラ識別情報が付与される。
【0048】
情報処理装置100は、第1特定特徴量と、各第2特定特徴量とのコサイン類似度をそれぞれ算出する。情報処理装置100は、第1特定特徴量とのコサイン類似度が閾値以上となる第2特定特徴量の抽出元となる各映像データを、照合結果として特定する。また、情報処理装置100は、第1特定特徴量とのコサイン類似度が閾値となる第2特定特徴量のカメラ識別情報と、カメラ管理テーブル53とを基にして、特定対象の人物が撮影された各カメラの設置位置を特定する。
【0049】
上記のように、情報処理装置100は、特定対象の人物の映った照合対象映像データを撮影したカメラ10の俯角を基にして、特定特徴量を特定し、照合対象映像データから第1特定特徴量を抽出する。情報処理装置100は、第1特定特徴量と、データベース50aの各映像データの第2特定特徴量とを基にして、第1特定特徴量に類似する第2特定特徴量の映像データを特定する。これによって、特定したい人物の画像を検出する精度を向上させることができる。なお、特定したい人物は、警察が扱う事件に関連する人物である。例えば、特定したい人物は、犯人である。
【0050】
図8は、照合精度の比較例を示す図である。
図8のグラフG1の横軸はカメラ10の俯角に対応する軸である。縦軸は照合精度に対応する軸である。線分l1は、従来技術によるカメラの俯角と照合精度との関係を示す。線分l2は、本発明によるカメラの俯角と照合精度との関係を示す。
図8に示すように、従来技術と比較して、本発明の方が、俯角30°~60°において、照合精度が向上している。
【0051】
次に、本実施例に係る情報処理装置100の構成の一例について説明する。
図9は、本実施例に係る情報処理装置の構成を示す機能ブロック図である。
図9に示すように、この情報処理装置100は、通信部110と、入力部120と、表示部130と、記憶部140と、制御部150とを有する。
【0052】
通信部110は、ネットワーク30を介して、カメラ10に接続され、映像データを受信する。たとえば、通信部110は、NIC(Network Interface Card)等によって実現される。通信部110は、ネットワーク30を介して、他の外部装置等に接続されていてもよい。
【0053】
入力部120は、各種の情報を、情報処理装置100に入力する入力装置である。入力部120は、キーボードやマウス、タッチパネル等に対応する。利用者は、入力部120を操作して、照合対象映像データを撮影したカメラ10を指定してもよいし、入力インタフェースを介して、照合対象映像データを直接入力してもよい。
【0054】
表示部130は、制御部150から出力される情報を表示する表示装置である。表示部130は、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ、タッチパネル等に対応する。
【0055】
記憶部140は、学習データ50と、学習モデル51と、特徴量定義テーブル52と、カメラ管理テーブル53と、映像バッファ60とを有する。記憶部140は、たとえば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
【0056】
学習データ50は、事前処理で利用されるデータであり、
図2で説明した学習データ50に対応する。
図2で説明したように、学習データ50は、データベース50aと、クエリ50bとを有する。
【0057】
学習モデル51は、OpenPose等の機械学習済みの学習モデルである。学習モデル51に、画像フレームを入力することで、各関節の関節座標と、各関節座標の信頼度が出力される。たとえば、学習モデルは、NN(Neural Network)である。
【0058】
特徴量定義テーブル52は、俯角毎の最適な特徴量の組合せを定義するテーブルであり、事前処理において生成される。特徴量定義テーブル52のデータ構造は、
図6で説明した特徴量定義テーブル52に関する説明と同様である。
【0059】
カメラ管理テーブル53は、カメラ10に関する情報を保持するテーブルである。カメラ管理テーブル53のデータ構造は、
図7で説明したカメラ管理テーブル53に関する説明と同様である。
【0060】
映像バッファ60は、カメラ10から取得する映像データ(照合対象映像データ)を保持するバッファである。なお、映像バッファ60は、入力インタフェース(図示略)から情報処理装置100に直接入力される照合対象映像データを保持してもよい。
【0061】
制御部150は、取得部151と、生成部152と、選定部153と、照合部154とを有する。制御部150は、たとえば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)により実現される。また、制御部150は、例えばASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実行されてもよい。
【0062】
取得部151は、カメラ10から照合対象映像データを取得し、取得した照合対象映像データを、映像バッファ60に登録する。取得部151は、入力インタフェースから情報処理装置100に直接入力される照合対象映像データを取得し、取得した照合対象映像データを、映像バッファ60に登録してもよい。取得部151は、学習データ50、機械学習済みの学習モデル51、カメラ管理テーブル53等を外部装置から取得し、記憶部140に登録してもよい。
【0063】
生成部152は、学習データ50に含まれるデータベース50a、クエリ50bの映像データの特徴量ベクトルを生成する。生成部152の処理は、上述した事前処理で説明した、特徴量ベクトルを生成する処理に対応する。生成部152は、学習データ50に登録された各映像データについて、次の処理をそれぞれ実行する。
【0064】
生成部152は、学習データ50に含まれるデータベース50a、クエリ50bの映像データの特徴量ベクトルを生成する。生成部152の処理は、上述した事前処理で説明した、特徴量ベクトルを生成する処理に対応する。生成部152は、学習データ50に登録された各映像データについて、次の処理をそれぞれ実行する。
【0065】
生成部152は、映像データに含まれる各画像フレームを、学習モデル51に入力することで、各画像フレームに含まれる人物の骨格情報を検出する。骨格情報には、各関節の関節座標が含まれる。
【0066】
生成部152は、骨格情報に含まれる各関節座標、および、関節座標の推移に基づいて、映像データの特徴量ベクトルを生成する。特徴量ベクトルには、1つの画像フレームから得られる特徴量と、複数の画像フレームから得られる特徴量とがある。
【0067】
図10は、1つの画像フレームから得られる特徴量を説明するための図である。
図10に示すように、1つの画像フレームから、歩幅f1、腕の高さf2、膝の高さf3等の特徴量が抽出される。歩幅f1は、ある1つの画像フレームの骨格情報10-1に含まれる左右の足首の関節座標の距離である。骨格情報10-1の腕の高さf2は、左足首(右足首)から左手首(右手首)までの距離である。骨格情報10-1の膝の高さf3は、左足首(右足首)から左膝(右膝)までの距離である。たとえば、生成部152は、映像データに含まれる各画像フレームの骨格情報から、歩幅f1をそれぞれ算出し、各歩幅f1の平均値を算出することで、歩幅の特徴量を計算する。腕の高さ、膝の高さに関する特徴量についても同様である。
【0068】
図11は、複数の画像フレームから得られる特徴量を説明するための図である。ここでは、骨格情報11-1,11-2,11-3を用いて説明する。骨格情報11-1は、フレーム番号n-2の画像フレームから抽出された骨格情報である。骨格情報11-2は、フレーム番号n-1の画像フレームから抽出された骨格情報である。骨格情報11-3は、フレーム番号nの画像フレームから抽出された骨格情報である。たとえば、生成部152は、フレーム番号n-2において、右足首が浮遊を開始し、フレーム番号nにおいて、右足首が地面に着地した場合、フレーム番号n-2から、フレーム番号nまでの時間を、足の浮遊時間として計算する。生成部152は、映像データについて、複数回、浮遊時間を計算し、各浮遊時間の最大値(あるいは、平均値)を算出することで、浮遊時間の特徴量を計算する。
【0069】
生成部152は、従来技術を利用して、他の特徴量(各関節の高さ、関節角度、各関節の推移、歩行時の目線等)を算出するものとする。
【0070】
図12は、特徴量ベクトルのデータ構造の一例を示す図である。
図12に示すように、特徴量ベクトルには、各特徴量(特徴量の種類)について、値が設定される。
【0071】
生成部152は、データベース50a、クエリ50bに登録された各映像データに対して、上記処理を繰り返し実行し、映像データ毎に、特徴量ベクトルを特定する。図示を省略したが、生成部152は、
図2のデータベース50a、クエリ50bに、各映像データに対する特徴量ベクトルを登録する。
【0072】
選定部153は、学習データ50を基にして、俯角毎に、各部分特徴量のラベルの一致度合いを特定し、ラベルの一致度合いが最大となる部分特徴量を、該当する俯角の部分特徴量として選定する。選定部153は、選定した結果を、特徴量定義テーブル52に登録する。選定部153の処理は、
図5で説明した事前処理に対応する。
図5の説明と同様にして、クエリ50bの映像データ51b~53bの俯角を「40°」として選定部153の説明を行う。
【0073】
選定部153は、データベース50aの映像データ51a~54aの特徴量ベクトルから、部分特徴量Aの値を抽出する。選定部153は、クエリ50bの映像データ51b~53bの特徴量ベクトルから、クエリ部分特徴量Aの値を抽出する。
【0074】
選定部153は、映像データ51a~54aの部分特徴量Aと、映像データ51bのクエリ部分特徴量Aとの類似度(コサイン類似度)をそれぞれ算出し、クエリ部分特徴量との類似度が最大となる部分特徴量Aに対応する映像データの正解ラベルを特定する。たとえば、映像データ51aの部分特徴量Aと、映像データ51bのクエリ部分特徴量Aとの類似度を最大の類似度とすると、正解ラベルが「X」で一致する。
【0075】
選定部153は、映像データ51a~54aの部分特徴量Aと、映像データ52bのクエリ部分特徴量Aとの類似度をそれぞれ算出し、クエリ部分特徴量との類似度が最大となる部分特徴量Aに対応する映像データの正解ラベルを特定する。たとえば、映像データ52aの部分特徴量Aと、映像データ52bのクエリ部分特徴量Aとの類似度を最大の類似度とすると、正解ラベルが不一致(XとYで不一致)となる。
【0076】
選定部153は、映像データ51a~54aの部分特徴量Aと、映像データ53bのクエリ部分特徴量Aとの類似度をそれぞれ算出し、クエリ部分特徴量との類似度が最大となる部分特徴量Aに対応する映像データの正解ラベルを特定する。たとえば、映像データ51aの部分特徴量Aと、映像データ53bのクエリ部分特徴量Aとの類似度を最大の類似度とすると、正解ラベルが「X」で一致する。
【0077】
上記の例では、選定部153が、俯角「40°」の映像データについて、部分特徴量Aによる検索を行うと、ラベルの一致度合いが「2/3」となる。
【0078】
部分特徴量Aと同様にして、選定部153は、俯角「40°」の映像データについて、部分特徴量B,C、他の部分特徴量による検索を実行し、ラベルの一致度合いを特定する。
【0079】
選定部153は、各部分特徴量に関するラベルの一致度合いを比較し、ラベルの一致度合いが最大となる部分特徴量を、俯角の部分特徴量として特定する。たとえば、選定部153は、俯角「40°」について、部分特徴量Aを用いた場合のラベルの一致度合いが最大となる場合には、俯角「40°」の部分特徴量を、部分特徴量Aとして選定する。
【0080】
選定部153は、他の俯角についても、上記の処理と同様の処理を実行することで、他の俯角の部分特徴量を特定する。選定部153は、特定結果を基にして、俯角と、部分特徴量との関係を特徴量定義テーブル52に登録する。
【0081】
照合部154は、照合対象映像データと、学習データ50のデータベース50aの映像データとの照合を行うことで、照合対象映像データに映った人物と同様の人物が映った映像データを特定する。照合部154の処理は、上記の照合処理に対応する。
【0082】
図13は、照合部の処理を説明するための図である。照合部154は、映像バッファ60に登録された照合対象映像データ40の各画像フレームを学習モデル51に入力し、各骨格情報を特定する。たとえば、
図13に示す照合対象映像データ40を撮影したカメラの俯角を「40°」とする。
【0083】
照合部154は、照合対象映像データに付与されたカメラ識別情報と、カメラ管理テーブル53とを基にして、照合対象映像データを撮影したカメラの俯角を特定する。
【0084】
照合部154は、特定した俯角と、特徴量定義テーブル52とを比較して、特定した俯角に対応する特徴量の組合せ(特定特徴量)を特定する。たとえば、俯角が「40°」となる場合には、特定特徴量は「左腕の高さ、右腕の角度等」となる。
【0085】
照合部154は、照合対象映像データから得た骨格情報に含まれる各関節座標、および、関節情報の推移を基にして、特徴量ベクトルを特定する。照合部154が特徴量ベクトルを特定する処理は、生成部152が特徴量ベクトルを特定する処理と同様である。照合部154は、照合対象映像データの特徴量ベクトルから、第1特定特徴量を抽出する。
図13に示す例では、照合部154は、照合対象映像データ40から、第1特定特徴量40aを抽出する。
【0086】
照合部154は、事前処理において特定した、データベース50aの各映像データの特徴量ベクトルから、第2特定特徴量をそれぞれ抽出する。
図13に示す例では、照合部154は、映像データ45の特徴量ベクトルから、第2特定特徴量45bを抽出する。
【0087】
照合部154は、第1特定特徴量40aと、第2特定特徴量45aとのコサイン類似度を算出する。照合部154は、第1特定特徴量40aと、他の映像データから抽出する第2特定特徴量とのコサイン類似度をそれぞれ算出する。照合部154は、第1特定特徴量とのコサイン類似度が閾値以上となる第2特定特徴量の抽出元となる映像データを、照合結果として抽出する。照合部154は、照合結果を、表示部130に出力して表示させる。
【0088】
また、照合部154は、第1特定特徴量とのコサイン類似度が閾値以上となる第2特定特徴量の抽出元となる映像データのカメラ識別情報と、カメラ管理テーブル53とを基にして、各映像データを撮影した各カメラの設置位置を特定する。照合部154は、特定した各カメラの設置位置を、特定対象の人物の移動軌跡として、表示部130に出力して表示させる。
【0089】
次に、本実施例に係る情報処理装置100の処理手順の一例について説明する。
図14は、情報処理装置の事前処理の処理手順を示すフローチャートである。
図14に示すように、情報処理装置100の生成部152は、学習データ50から映像データを取得する(ステップS101)。
【0090】
生成部152は、学習モデル51を用いて、映像データの各画像フレームから骨格情報を抽出する(ステップS102)。生成部152は、映像データを撮影したカメラのカメラ識別情報と、カメラ管理テーブル53とを基にして、俯角を特定する(ステップS103)。生成部152は、映像データの特徴量ベクトルを算出する(ステップS104)。
【0091】
情報処理装置100の選定部153は、各俯角、各部分特徴量について、ラベルの一致度合いを特定する(ステップS105)。選定部153は、ラベルの一致度合いを基にして、俯角に対応する部分特徴量を特定する(ステップS106)。
【0092】
選定部153は、俯角と、特定した部分特徴量(特徴量の組合せ)との関係を、特徴量定義テーブル52に登録する(ステップS107)。
【0093】
図15は、情報処理装置の照合処理の処理手順を示すフローチャートである。
図15に示すように、情報処理装置100の取得部151は、カメラ10または入力インタフェースから照合対象映像データを取得し、映像バッファ60に登録する(ステップS201)。
【0094】
情報処理装置100の照合部154は、学習モデル51を用いて、照合対象映像データの各画像フレームから骨格情報を抽出する(ステップS202)。照合部154は、照合対象映像データを撮影したカメラのカメラ識別情報と、カメラ管理テーブル53とを基にして、俯角を特定する(ステップS203)。
【0095】
照合部154は、特定した俯角と特徴量定義テーブル52とを基にして、特定特徴量を特定する(ステップS204)。照合部154は、第1特定特徴量と、各第2特定特徴量との類似度をそれぞれ算出する(ステップS205)。
【0096】
照合部154は、第1特定特徴量との類似度が閾値以上となる第2特定特徴量の映像データをデータベース50aから抽出する(ステップS206)。照合部154は、第1特定特徴量との類似度が閾値以上となる第2特定特徴量の映像データを撮影した各カメラの各設置位置を基にして、特定対象の人物の移動軌跡を特定する(ステップS207)。照合部154は、照合結果を表示部130に出力する(ステップS208)。
【0097】
次に、本実施例に係る情報処理装置100の効果について説明する。情報処理装置100は、特定対象の人物の映った照合対象映像データを撮影したカメラ10の俯角を基にして、特定特徴量を特定し、照合対象映像データから第1特定特徴量を抽出する。情報処理装置100は、第1特定特徴量と、データベース50aの各映像データの第2特定特徴量とを基にして、第1特定特徴量に類似する第2特定特徴量の映像データを特定する。これによって、特定したい人物の画像を検出する精度を向上させることができる。
【0098】
情報処理装置100は、第1特定特徴量との類似度が閾値以上となる第2特定特徴量の映像データを撮影したカメラの設置位置を基にして、特定人物の移動軌跡を生成する。これによって、特定人物が移動した場所を容易に特定でき、捜査に役立てることができる。
【0099】
情報処理装置100は、学習データ50に登録された映像データを基にして、俯角毎に、各部分特徴量のラベルの一致度合いを特定し、ラベルの一致度合いを基にして、俯角に対応する部分特徴量を選定する。これによって、俯角に応じて、特徴量の組合せを選定することができる。
【0100】
次に、上記実施例に示した情報処理装置100と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。
図16は、実施例の情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【0101】
図16に示すように、コンピュータ200は、各種演算処理を実行するCPU201と、ユーザからのデータの入力を受け付ける入力装置202と、ディスプレイ203とを有する。また、コンピュータ200は、有線または無線ネットワークを介して、カメラ10、外部装置等との間でデータの授受を行う通信装置204と、インタフェース装置205とを有する。また、コンピュータ200は、各種情報を一時記憶するRAM206と、ハードディスク装置207とを有する。そして、各装置201~207は、バス208に接続される。
【0102】
ハードディスク装置207は、取得プログラム207a、生成プログラム207b、選定プログラム207c、照合プログラム207dを有する。また、CPU201は、各プログラム207a~207dを読み出してRAM206に展開する。
【0103】
取得プログラム207aは、取得プロセス206aとして機能する。生成プログラム207bは、生成プロセス206bとして機能する。選定プログラム207cは、選定プロセス206cとして機能する。照合プログラム207dは、照合プロセス206dとして機能する。
【0104】
取得プロセス206aの処理は、取得部151の処理に対応する。生成プロセス206bの処理は、生成部152の処理に対応する。選定プロセス206cの処理は、選定部153の処理に対応する。照合プロセス206dの処理は、照合部154の処理に対応する。
【0105】
なお、各プログラム207a~207dについては、必ずしも最初からハードディスク装置207に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD-ROM、DVD、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ200が各プログラム207a~207dを読み出して実行するようにしてもよい。
【0106】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0107】
(付記1)撮影する画像の俯角が異なるとともに設置される場所が異なる複数のカメラにより撮影された複数の第一の画像と、特定対象となる人物を含む第二の画像とを取得し、
前記第二の画像から、人物の関節に関する第一の特徴量を生成し、
前記カメラの俯角の情報と前記第一の特徴量とを基にして、前記特定対象となる人物の照合に用いる第二の特徴量を生成し、
前記第二の特徴量に基づいて、前記複数のカメラにより撮影された複数の第一の画像から、前記特定対象となる人物を有する画像を特定する
処理をコンピュータに実行させることを特徴とする特定プログラム。
【0108】
(付記2)撮影した画像に含まれる人物に関するラベルを付与した前記複数の第一の画像と、前記ラベルおよびある俯角を付与した複数の第三の画像とから、前記第一の特徴量を抽出し、前記第一の特徴量から、複数種類の第二の特徴量を生成し、前記第二の特徴量が類似する第一の画像のラベルと前記第三の画像のラベルとの一致度合いを基にして、前記ある俯角で用いる第二の特徴量を選定する処理を更にコンピュータに実行させることを特徴とする付記1に記載の特定プログラム。
【0109】
(付記3)前記特定する処理は、前記複数の第一の画像に対応する第二の特徴量と、前記第二の画像に対応する第二の特徴量との類似度をそれぞれ算出し、前記第二の画像に対応する第二の特徴量との類似度が閾値以上となる第二の特徴量の第一の画像を、前記特定対象となる人物を有する画像として特定することを特徴とする付記1に記載の特定プログラム。
【0110】
(付記4)前記特定する処理は、前記第二の画像に対応する第二の特徴量との類似度が閾値以上となる第二の特徴量の第一の画像を撮影したカメラの設置された場所を基にして、前記特定対象の人物の移動軌跡を更に特定することを特徴とする付記3に記載の特定プログラム。
【0111】
(付記5)前記特定対象となる人物は、警察が扱う事件に関連する人物である、ことを特徴とする付記1に記載の特定プログラム。
【0112】
(付記6)撮影する画像の俯角が異なるとともに設置される場所が異なる複数のカメラにより撮影された複数の第一の画像と、特定対象となる人物を含む第二の画像とを取得し、
前記第二の画像から、人物の関節に関する第一の特徴量を生成し、
前記カメラの俯角の情報と前記第一の特徴量とを基にして、前記特定対象となる人物の照合に用いる第二の特徴量を生成し、
前記第二の特徴量に基づいて、前記複数のカメラにより撮影された複数の第一の画像から、前記特定対象となる人物を有する画像を特定する
処理をコンピュータが実行することを特徴とする特定方法。
【0113】
(付記7)撮影した画像に含まれる人物に関するラベルを付与した前記複数の第一の画像と、前記ラベルおよびある俯角を付与した複数の第三の画像とから、前記第一の特徴量を抽出し、前記第一の特徴量から、複数種類の第二の特徴量を生成し、前記第二の特徴量が類似する第一の画像のラベルと前記第三の画像のラベルとの一致度合いを基にして、前記ある俯角で用いる第二の特徴量を選定する処理を更にコンピュータが実行することを特徴とする付記6に記載の特定方法。
【0114】
(付記8)前記特定する処理は、前記複数の第一の画像に対応する第二の特徴量と、前記第二の画像に対応する第二の特徴量との類似度をそれぞれ算出し、前記第二の画像に対応する第二の特徴量との類似度が閾値以上となる第二の特徴量の第一の画像を、前記特定対象となる人物を有する画像として特定することを特徴とする付記6に記載の特定方法。
【0115】
(付記9)前記特定する処理は、前記第二の画像に対応する第二の特徴量との類似度が閾値以上となる第二の特徴量の第一の画像を撮影したカメラの設置された場所を基にして、前記特定対象の人物の移動軌跡を更に特定することを特徴とする付記8に記載の特定方法。
【0116】
(付記10)前記特定対象となる人物は、警察が扱う事件に関連する人物である、ことを特徴とする付記6に記載の特定方法。
【0117】
(付記11)撮影する画像の俯角が異なるとともに設置される場所が異なる複数のカメラにより撮影された複数の第一の画像と、特定対象となる人物を含む第二の画像とを取得する取得部と、
前記第二の画像から、人物の関節に関する第一の特徴量を生成し、前記カメラの俯角の情報と前記第一の特徴量とを基にして、前記特定対象となる人物の照合に用いる第二の特徴量を生成し、前記第二の特徴量に基づいて、前記複数のカメラにより撮影された複数の第一の画像から、前記特定対象となる人物を有する画像を特定する照合部と
を有することを特徴とする情報処理装置。
【0118】
(付記12)撮影した画像に含まれる人物に関するラベルを付与した前記複数の第一の画像と、前記ラベルおよびある俯角を付与した複数の第三の画像とから、前記第一の特徴量を抽出し、前記第一の特徴量から、複数種類の第二の特徴量を生成し、前記第二の特徴量が類似する第一の画像のラベルと前記第三の画像のラベルとの一致度合いを基にして、前記ある俯角で用いる第二の特徴量を選定する選定部を更に有することを特徴とする付記11に記載の情報処理装置。
【0119】
(付記13)前記照合部は、前記複数の第一の画像に対応する第二の特徴量と、前記第二の画像に対応する第二の特徴量との類似度をそれぞれ算出し、前記第二の画像に対応する第二の特徴量との類似度が閾値以上となる第二の特徴量の第一の画像を、前記特定対象となる人物を有する画像として特定することを特徴とする付記11に記載の情報処理装置。
【0120】
(付記14)前記照合部は、前記第二の画像に対応する第二の特徴量との類似度が閾値以上となる第二の特徴量の第一の画像を撮影したカメラの設置された場所を基にして、前記特定対象の人物の移動軌跡を更に特定することを特徴とする付記13に記載の情報処理装置。
【0121】
(付記15)前記特定対象となる人物は、警察が扱う事件に関連する人物である、ことを特徴とする付記11に記載の情報処理装置。
【符号の説明】
【0122】
50 学習データ
51 学習モデル
52 特徴量定義テーブル
53 カメラ管理テーブル
60 映像バッファ
100 情報処理装置
110 通信部
120 入力部
130 表示部
140 記憶部
150 制御部
151 取得部
152 生成部
153 選定部
154 照合部