(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-23
(45)【発行日】2025-01-07
(54)【発明の名称】学習方法、再同定装置、再同定方法、プログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20241224BHJP
G06T 7/292 20170101ALI20241224BHJP
G06V 10/82 20220101ALI20241224BHJP
【FI】
G06T7/00 350C
G06T7/292
G06V10/82
(21)【出願番号】P 2022104057
(22)【出願日】2022-06-28
【審査請求日】2024-02-08
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】110003199
【氏名又は名称】弁理士法人高田・高橋国際特許事務所
(72)【発明者】
【氏名】小堀 訓成
(72)【発明者】
【氏名】ラジャト サイニ
【審査官】藤原 敬利
(56)【参考文献】
【文献】特開2019-109709(JP,A)
【文献】国際公開第2021/019748(WO,A1)
【文献】米国特許出願公開第2021/0182692(US,A1)
【文献】中国特許出願公開第109102025(CN,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00- 7/90
G06V 10/00-20/90
(57)【特許請求の範囲】
【請求項1】
機械学習モデルの学習方法であって、
前記機械学習モデルは、
各々が順次接続する複数の特徴抽出層と、
各々が前記複数の特徴抽出層のいずれか1つと接続する複数の埋め込み層と、
を含み、
前記複数の特徴抽出層の各々は、入力データについて特徴マップを抽出するように構成され、
前記複数の埋め込み層の各々は、前記特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写し、前記特徴ベクトルを出力するように構成され、
前記学習方法は、
各々に正解ラベルが対応づけられた複数の訓練データを取得することと、
前記複数の訓練データを前記機械学習モデルに入力することと、
前記複数の埋め込み層の出力である複数の出力データセットを取得することと、
前記複数の出力データセットに基づいて損失関数を算出することと、
前記損失関数が減少する方向に前記機械学習モデルを学習することと、
を含み、
前記複数の出力データセットの各々は、前記複数の埋め込み層の1つについての前記複数の訓練データの入力に対する出力集合であり、
前記損失関数は、前記複数の出力データセットの各々に対応して与えられる複数の距離学習項を含み、
前記複数の距離学習項の各々は、対応する前記出力データセットについて、前記複数の訓練データのうち同一の前記正解ラベルが対応付けられた訓練データに対する出力の間の前記埋め込み空間上の距離が短いほど、また前記複数の訓練データのうち異なる前記正解ラベルが対応付けられた訓練データに対する出力の間の前記埋め込み空間上の距離が長いほど、小さな値となるように与えられる
ことを特徴とする学習方法。
【請求項2】
請求項1に記載の学習方法であって、
前記複数の訓練データの各々は、特定のオブジェクトが映る画像データであり、
前記正解ラベルは、前記特定のオブジェクトの分類である
ことを特徴とする学習方法。
【請求項3】
請求項2に記載の学習方法であって、
前記特定のオブジェクトは、人物であり、
前記分類は、個人の指定である
ことを特徴とする学習方法。
【請求項4】
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサと結合され、複数の実行可能なインストラクション及び機械学習モデルを格納するメモリと、
を備え、
前記機械学習モデルは、
各々が順次接続する複数の特徴抽出層と、
各々が前記複数の特徴抽出層のいずれか1つと接続する複数の埋め込み層と、
を含み、
前記複数の特徴抽出層の各々は、入力データについて特徴マップを抽出するように構成され、
前記複数の埋め込み層の各々は、前記特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写し、前記特徴ベクトルを出力するように構成され、
前記複数の実行可能なインストラクションは、前記少なくとも1つのプロセッサに、
特定のオブジェクトが映る第1画像データ及び第2画像データを取得する処理と、
前記第1画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第1出力データを取得する処理と、
前記第2画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第2出力データを取得する処理と、
前記複数の第1出力データ及び前記複数の第2出力データに基づいて、前記第1画像データに映る前記特定のオブジェクトと前記第2画像データに映る前記特定のオブジェクトの同定を実施する同定処理と、
を実行させるように構成され、
前記同定処理は、
前記複数の第1出力データの各々と前記複数の第2出力データの各々との間の前記埋め込み空間上の複数の距離を算出することと、
前記複数の距離のうち所定数以上の距離が所定の閾値以下であることを受けて、前記第1画像データと前記第2画像データに映る前記特定のオブジェクトが同一であるとすることと、
を含む
ことを特徴とする再同定装置。
【請求項5】
請求項4に記載の再同定装置であって、
前記特定のオブジェクトは、人物である
ことを特徴とする再同定装置。
【請求項6】
請求項4又は請求項5に記載の再同定装置であって、
前記機械学習モデルは、請求項1に記載の学習方法により学習されている
ことを特徴とする再同定装置。
【請求項7】
機械学習モデルを用いて画像データに映る特定のオブジェクトについての再同定を行う再同定方法であって、
前記機械学習モデルは、
各々が順次接続する複数の特徴抽出層と、
各々が前記複数の特徴抽出層のいずれか1つと接続する複数の埋め込み層と、
を含み、
前記複数の特徴抽出層の各々は、入力データについて特徴マップを抽出するように構成され、
前記複数の埋め込み層の各々は、前記特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写し、前記特徴ベクトルを出力するように構成され、
前記再同定方法は、
前記特定のオブジェクトが映る第1画像データ及び第2画像データを取得することと、
前記第1画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第1出力データを取得することと、
前記第2画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第2出力データを取得することと、
前記複数の第1出力データ及び前記複数の第2出力データに基づいて、前記第1画像データに映る前記特定のオブジェクトと前記第2画像データに映る前記特定のオブジェクトの同定を実施することと、
を含み、
前記同定を実施することは、
前記複数の第1出力データの各々と前記複数の第2出力データの各々との間の前記埋め込み空間上の複数の距離を算出することと、
前記複数の距離のうち所定数以上の距離が所定の閾値以下であることを受けて、前記第1画像データと前記第2画像データに映る前記特定のオブジェクトが同一であるとすることと、
を含む
ことを特徴とする再同定方法。
【請求項8】
請求項7に記載の再同定方法であって、
前記特定のオブジェクトは、人物である
ことを特徴とする再同定方法。
【請求項9】
請求項7又は請求項8に記載の再同定方法であって、
前記機械学習モデルは、請求項1に記載の学習方法により学習されている
ことを特徴とする再同定方法。
【請求項10】
機械学習モデルの学習をコンピュータに実行させるプログラムであって、
前記機械学習モデルは、
各々が順次接続する複数の特徴抽出層と、
各々が前記複数の特徴抽出層のいずれか1つと接続する複数の埋め込み層と、
を含み、
前記複数の特徴抽出層の各々は、入力データについて特徴マップを抽出するように構成され、
前記複数の埋め込み層の各々は、前記特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写し、前記特徴ベクトルを出力するように構成され、
前記プログラムは、
各々に正解ラベルが対応づけられた複数の訓練データを取得する処理と、
前記複数の訓練データを前記機械学習モデルに入力する処理と、
前記複数の埋め込み層の出力である複数の出力データセットを取得する処理と、
前記複数の出力データセットに基づいて損失関数を算出する処理と、
前記損失関数が減少する方向に前記機械学習モデルを学習する処理と、
をコンピュータに実行させるように構成され、
前記複数の出力データセットの各々は、前記複数の埋め込み層の1つについての前記複数の訓練データの入力に対する出力集合であり、
前記損失関数は、前記複数の出力データセットの各々に対応して与えられる複数の距離学習項を含み、
前記複数の距離学習項の各々は、対応する前記出力データセットについて、前記複数の訓練データのうち同一の前記正解ラベルが対応付けられた訓練データに対する出力の間の前記埋め込み空間上の距離が短いほど、また前記複数の訓練データのうち異なる前記正解ラベルが対応付けられた訓練データに対する出力の間の前記埋め込み空間上の距離が長いほど、小さな値となるように与えられる
ことを特徴とするプログラム。
【請求項11】
機械学習モデルを用いた画像データに映る特定のオブジェクトについての再同定をコンピュータに実行させるプログラムであって、
前記機械学習モデルは、
各々が順次接続する複数の特徴抽出層と、
各々が前記複数の特徴抽出層のいずれか1つと接続する複数の埋め込み層と、
を含み、
前記複数の特徴抽出層の各々は、入力データについて特徴マップを抽出するように構成され、
前記複数の埋め込み層の各々は、前記特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写し、前記特徴ベクトルを出力するように構成され、
前記プログラムは、
前記特定のオブジェクトが映る第1画像データ及び第2画像データを取得する処理と、
前記第1画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第1出力データを取得する処理と、
前記第2画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第2出力データを取得する処理と、
前記複数の第1出力データ及び前記複数の第2出力データに基づいて、前記第1画像データに映る前記特定のオブジェクトと前記第2画像データに映る前記特定のオブジェクトの同定を実施する同定処理と、
をコンピュータに実行させるように構成され、
前記同定処理は、
前記複数の第1出力データの各々と前記複数の第2出力データの各々との間の前記埋め込み空間上の複数の距離を算出することと、
前記複数の距離のうち所定数以上の距離が所定の閾値以下であることを受けて、前記第1画像データと前記第2画像データに映る前記特定のオブジェクトが同一であるとすることと、
を含む
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、機械学習モデルを用いて画像データに映る特定のオブジェクトについての再同定を行う技術に関する。また再同定を行うことを目的として機械学習モデルの学習を行う技術に関する。
【背景技術】
【0002】
特許文献1には、物体を表す画像のペアに畳み込みニューラルネットワーク(CNN;Convolutional Neural Network)を適用することと、画像のペアが同一の物体を表しているか否かについての肯定的ペア確率を算出することと、を含む物体の再同定の方法が開示されている。さらに、特許文献1に係るCNNは、第1の畳み込み層と、各画像の特徴量マップを求める第1の最大プーリング層と、近傍差分マップを生成する交差入力近傍差分層と、パッチサマリー特徴量マップを生成するパッチサマリー層と、特徴量ベクトルを生成する第1の完全接続層と、肯定的ペアクラスおよび否定的ペアクラスを表す2つのスコアを生成する第2の完全接続層と、肯定的ペア確率および否定的ペア確率を生成するソフトマックス層と、を備えることが開示されている。
【0003】
特許文献2には、被同定物品画像を取得し、被同定物品画像のエッジマスク情報を抽出するステップと、エッジマックス情報に応じて被同定物品画像をカット処理し、カット処理された被同定物品画像及び予め設定された物品カテゴリ同定モデルに応じて、被同定物品画像のカテゴリを同定し、同定結果を出力するステップと、を含む物品カテゴリ同定方法が開示されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2018―506788号公報
【文献】特開2021―117969号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
近年、ある画像データに映る特定のオブジェクトについて、他の画像データに映る特定のオブジェクトとの同定を行う再同定に関する技術の開発が進められている。再同定は、オブジェクトのトラッキングや周辺環境の認識において有用である。
【0006】
再同定では、一般に、機械学習モデルが用いられる。一方で、各々の画像データに映る特定のオブジェクトは、視点、照明の状況、オクルージョンの発生、解像度等が異なることが想定される。このため、再同定は、機械学習において難しいタスクの1つである。特に、特定のオブジェクトが人物である人物再同定は、より高い精度が求められながら、服装の違いが想定されることやオクルージョンの発生の頻度が高いといったことから、より難しいタスクである。
【0007】
再同定については、特許文献1又は特許文献2に開示されるように、機械学習モデルの構成、機械学習モデルを用いた再同定方法、及び機械学習モデルの学習方法に関して様々な技術が提案されている。一方で、機械学習は、学習環境や入力データの形式によって、適切な技術が異なることが想定される。このため、再同定に関して、精度の向上を期待できるさらなる技術の提案が求められている。
【0008】
本開示の1つの目的は、画像データに映る特定のオブジェクトについての再同定に関して、精度を向上させる技術を提案することにある。
【課題を解決するための手段】
【0009】
第1の開示は、機械学習モデルの学習方法に関する。ここで、前記機械学習モデルは、各々が順次接続する複数の特徴抽出層と、各々が前記複数の特徴抽出層のいずれか1つと接続する複数の埋め込み層と、を含んでいる。また前記複数の特徴抽出層の各々は、入力データについて特徴マップを抽出するように構成され、前記複数の埋め込み層の各々は、前記特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写し、前記特徴ベクトルを出力するように構成されている。
【0010】
第1の開示に係る学習方法は、各々に正解ラベルが対応づけられた複数の訓練データを取得することと、前記複数の訓練データを前記機械学習モデルに入力することと、前記複数の埋め込み層の出力である複数の出力データセットを取得することと、前記複数の出力データセットに基づいて損失関数を算出することと、前記損失関数が減少する方向に前記機械学習モデルを学習することと、を含んでいる。ここで、前記複数の出力データセットの各々は、前記複数の埋め込み層の1つについての前記複数の訓練データの入力に対する出力集合である。また前記損失関数は、前記複数の出力データセットの各々に対応して与えられる複数の距離学習項を含み、前記複数の距離学習項の各々は、対応する前記出力データセットについて、前記複数の訓練データのうち同一の前記正解ラベルが対応づけられた訓練データに対する出力の間の前記埋め込み空間上の距離が短いほど、また前記複数の訓練データのうち異なる前記正解ラベルが対応づけられた訓練データに対する出力の間の前記埋め込み空間上の距離が長いほど、小さな値となるように与えられる。
【0011】
第2の開示は、第1の開示に係る学習方法に対して、さらに以下の特徴を有する学習方法に関する。
【0012】
前記複数の訓練データの各々は、特定のオブジェクトが映る画像データである。また前記正解ラベルは、前記特定のオブジェクトの分類である。
【0013】
第3の開示は、第2の開示に係る学習方法に対して、さらに以下の特徴を有する学習方法に関する。
【0014】
前記特定のオブジェクトは、人物である。また前記分類は、個人の指定である。
【0015】
第4の開示は、再同定装置に関する。
【0016】
第4の開示に係る再同定装置は、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサと結合され、複数の実行可能なインストラクション及び機械学習モデルを格納するメモリと、を備えている。ここで、前記機械学習モデルは、各々が順次接続する複数の特徴抽出層と、各々が前記複数の特徴抽出層のいずれか1つと接続する複数の埋め込み層と、を含んでいる。また前記複数の特徴抽出層の各々は、入力データについて特徴マップを抽出するように構成され、前記複数の埋め込み層の各々は、前記特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写し、前記特徴ベクトルを出力するように構成されている。そして、前記複数の実行可能なインストラクションは、前記少なくとも1つのプロセッサに、特定のオブジェクトが映る第1画像データ及び第2画像データを取得する処理と、前記第1画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第1出力データを取得する処理と、前記第2画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第2出力データを取得する処理と、前記複数の第1出力データ及び前記複数の第2出力データに基づいて、前記第1画像データに映る前記特定のオブジェクトと前記第2画像データに映る前記特定のオブジェクトの同定を実施する同定処理と、を実行させるように構成されている。また同定処理は、前記複数の第1出力データの各々と前記複数の第2出力データの各々との間の前記埋め込み空間上の複数の距離を算出することと、前記複数の距離のうち所定数以上の距離が所定の閾値以下であることを受けて、前記第1画像データと前記第2画像データに映る前記特定のオブジェクトが同一であるとすることと、を含んでいる。
【0017】
第5の開示は、第4の開示に係る再同定装置に対して、さら以下の特徴を有する再同定装置に関する。
【0018】
前記特定のオブジェクトは、人物である。
【0019】
第6の開示は、第4又は第5の開示に係る再同定装置に対して、さらに以下の特徴を有する再同定装置に関する。
【0020】
前記機械学習モデルは、第1の開示に係る学習方法により学習されている。
【0021】
第7の開示は、機械学習モデルを用いて画像データに映る特定のオブジェクトについての再同定を行う再同定方法に関する。ここで、前記機械学習モデルは、各々が順次接続する複数の特徴抽出層と、各々が前記複数の特徴抽出層のいずれか1つと接続する複数の埋め込み層と、を含んでいる。また前記複数の特徴抽出層の各々は、入力データについて特徴マップを抽出するように構成され、前記複数の埋め込み層の各々は、前記特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写し、前記特徴ベクトルを出力するように構成されている。
【0022】
第7の開示に係る再同定方法は、前記特定のオブジェクトが映る第1画像データ及び第2画像データを取得することと、前記第1画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第1出力データを取得することと、前記第2画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第2出力データを取得することと、前記複数の第1出力データ及び前記複数の第2出力データに基づいて、前記第1画像データに映る前記特定のオブジェクトと前記第2画像データに映る前記特定のオブジェクトの同定を実施することと、を含んでいる。ここで、前記同定を実施することは、前記複数の第1出力データの各々と前記複数の第2出力データの各々との間の前記埋め込み空間上の複数の距離を算出することと、前記複数の距離のうち所定数以上の距離が所定の閾値以下であることを受けて、前記第1画像データと前記第2画像データに映る前記特定のオブジェクトが同一であるとすることと、を含んでいる。
【0023】
第8の開示に係る再同定方法は、第7の開示に係る再同定方法に対して、さらに以下の特徴を有する再同定方法に関する。
【0024】
前記特定のオブジェクトは、人物である。
【0025】
第9の開示は、第7又は第8の開示に係る再同定方法に対して、さらに以下の特徴を有する再同定方法に関する。
【0026】
前記機械学習モデルは、第1の開示に係る学習方法により学習されている。
【0027】
第10の開示は、機械学習モデルの学習をコンピュータに実行させるプログラムに関する。ここで、前記機械学習モデルは、各々が順次接続する複数の特徴抽出層と、各々が前記複数の特徴抽出層のいずれか1つと接続する複数の埋め込み層と、を含んでいる。また前記複数の特徴抽出層の各々は、入力データについて特徴マップを抽出するように構成され、前記複数の埋め込み層の各々は、前記特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写し、前記特徴ベクトルを出力するように構成されている。
【0028】
第10の開示に係るプログラムは、各々に正解ラベルが対応づけられた複数の訓練データを取得する処理と、前記複数の訓練データを前記機械学習モデルに入力する処理と、前記複数の埋め込み層の出力である複数の出力データセットを取得する処理と、前記複数の出力データセットに基づいて損失関数を算出する処理と、前記損失関数が減少する方向に前記機械学習モデルを学習する処理と、をコンピュータに実行させるように構成される。ここで、前記複数の出力データセットの各々は、前記複数の埋め込み層の1つについての前記複数の訓練データの入力に対する出力集合である。また前記損失関数は、前記複数の出力データセットの各々に対応して与えられる複数の距離学習項を含み、前記複数の距離学習項の各々は、対応する前記出力データセットについて、前記複数の訓練データのうち同一の前記正解ラベルが対応づけられた訓練データに対する出力の間の前記埋め込み空間上の距離が短いほど、また前記複数の訓練データのうち異なる前記正解ラベルが対応づけられた訓練データに対する出力の間の前記埋め込み空間上の距離が長いほど、小さな値となるように与えられる。
【0029】
第11の開示は、機械学習モデルを用いた画像データに映る特定のオブジェクトについての再同定をコンピュータに実行させるプログラムに関する。ここで、前記機械学習モデルは、各々が順次接続する複数の特徴抽出層と、各々が前記複数の特徴抽出層のいずれか1つと接続する複数の埋め込み層と、を含んでいる。また前記複数の特徴抽出層の各々は、入力データについて特徴マップを抽出するように構成され、前記複数の埋め込み層の各々は、前記特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写し、前記特徴ベクトルを出力するように構成されている。
【0030】
第11の開示に係るプログラムは、前記特定のオブジェクトが映る第1画像データ及び第2画像データを取得する処理と、前記第1画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第1出力データを取得する処理と、前記第2画像データを前記機械学習モデルの入力として前記複数の埋め込み層の出力である複数の第2出力データを取得する処理と、前記複数の第1出力データ及び前記複数の第2出力データに基づいて、前記第1画像データに映る前記特定のオブジェクトと前記第2画像データに映る前記特定のオブジェクトの同定を実施する同定処理と、をコンピュータに実行させるように構成されている。ここで、同定処理は、前記複数の第1出力データの各々と前記複数の第2出力データの各々との間の前記埋め込み空間上の複数の距離を算出することと、前記複数の距離のうち所定数以上の距離が所定の閾値以下であることを受けて、前記第1画像データと前記第2画像データに映る前記特定のオブジェクトが同一であるとすることと、を含んでいる。
【発明の効果】
【0031】
本開示によれば、機械学習モデルの出力は、複数の埋め込み層が出力する複数の特徴ベクトルである。そして、複数の特徴ベクトルについての複数の距離のうち所定数以上の距離が所定の閾値以下であるか否かによって、画像データに映る特定のオブジェクトの同定を実施する。これにより、再同定が、スケールが異なる複数の特徴マップについて類似性を測ることにより実施される。延いては、再同定の精度を向上させることができる。
【図面の簡単な説明】
【0032】
【
図1】人物のトラッキングおいて実施される人物再同定について説明するための概念図である。
【
図2】機械学習モデルを用いた人物再同定に係る処理の概略構成を示すブロック図である。
【
図3】本実施形態の比較として典型的な機械学習モデルの概略構成を示すブロック図である。
【
図4】本実施形態に係る機械学習モデルの構成を示すブロック図である。
【
図5】本実施形態に係る機械学習モデルの実施例を示すブロック図である。
【
図6】本実施形態に係る機械学習モデルが出力する複数の特徴ベクトルの例を示す概念図である。
【
図7】複数の画像データを入力としたときに本実施形態に係る機械学習モデルが出力する複数の特徴ベクトルの好ましい例を示す概念図である。
【
図8】本実施形態に係る学習方法について説明するためのフローチャートである。
【
図10】複数の距離学習項について説明するための概念図である。
【
図11】本実施形態に係る再同定方法について説明するためのフローチャートである。
【
図12】本実施形態に係る再同定方法において算出する複数の距離について説明するための概念図である。
【
図13】本実施形態に係る再同定装置の構成を示すブロック図である。
【発明を実施するための形態】
【0033】
以下、図面を参照して本開示の実施形態について説明する。ただし、以下に示す実施の形態において各要素の個数、数量、量、範囲などの数に言及した場合、特に明示した場合や原理的に明らかにその数が特定される場合を除いて、その言及した数に、本開示に係る思想が限定されるものではない。また、以下に示す実施の形態において説明する構成等は、特に明示した場合や原理的に明らかにそれに特定される場合を除いて、本開示に係る思想に必ずしも必須のものではない。なお、各図中、同一又は相当する部分には同一の符号を附しており、その重複説明は適宜に簡略化ないし省略する。
【0034】
1.人物再同定
本実施形態に係る再同定方法及び再同定装置は、機械学習モデルを用いて画像データに映る特定のオブジェクトについての再同定を行う。以下、特に特定のオブジェクトが人物である人物再同定に適用する場合について説明する。
【0035】
人物再同定は、例えば、人物のトラッキングにおいて有用である。
図1は、人物1のトラッキングにおいて実施される人物再同定について説明するための概念図である。
図1は、人物1が矢印に沿って移動する場合を示している。ここで、人物1の移動経路上の2つの異なる地点2a及び2bそれぞれには、カメラ3が設置されている。つまり、人物1は、2つの異なる地点2a及び2bそれぞれにおいて、カメラ3により撮像される。カメラ3は、例えば、歩道に設置される監視カメラである。
【0036】
図1に示す例では、人物1のトラッキングは、カメラ3が撮像する画像データ(特に、画像データの集合としての映像)において行われる。しかしながら、1つのカメラの撮像範囲4は限られている。そこで、人物1のトラッキングを、複数のカメラ3が撮像する映像に渡って行うことが考えられている。これにより、トラッキングの範囲を拡げることができる。一方で、複数のカメラ3を、各々の撮像範囲4が重複するように設置することは、コストが大きく望ましくない。また既存の監視カメラについても、撮像範囲4が重複していないことが通常である。
【0037】
撮像範囲4が重複していない場合、空間的及び時間的に不連続な画像データにおいて人物1のトラッキングを行うこととなる。そこで、人物再同定が必要となる。つまり、あるカメラ3が撮像する画像データに映る人物と別のカメラ3が撮像する画像データに映る人物の同定を実施する。これにより、あるカメラ3が撮像する画像データにおいて行っている人物1のトラッキングを、別のカメラ3が撮像する画像データにおいても継続することができる。
【0038】
図1に示す例では、地点2aに設置されるカメラ3が撮像する画像データ10aと、地点2bに設置されるカメラ3が撮像する画像データ10bが示されている。また画像データ10a及び10bそれぞれには、同一の人物1が映されている。従って、人物再同定では、画像データ10aに映る人物と、画像データ10bに映る人物と、が同一の人物1であると判定することが求められる。人物再同定が適切に行われれば、地点2aから地点2bにかけて、人物1のトラッキングを継続することができる。
【0039】
人物再同定は、一般に、機械学習モデルを用いて行われる。
図2は、機械学習モデル110を用いた人物再同定に係る処理の概略構成を示すブロック図である。
【0040】
機械学習モデル110は、画像データを入力として、画像データについての特徴量を出力する。機械学習モデル110は、例えば、プログラムとして実現され、人物再同定を実施するコンピュータのメモリに格納される。ここで、画像データは、人物1が映る画像データである。特に、画像データは、人物1が顕著に映るようにクロッピングされた画像データであって良い(
図1に示す画像データ10a及び10bを参照)。例えば、機械学習モデル110に入力される画像データは、カメラ3が撮像する生の画像データに対して人物検出を実施することで、生の画像データに映る人物1についてクロッピングが行われた画像データである。この場合、人物検出は、公知の好適な技術を採用して良い。
【0041】
なお、機械学習モデル110が出力する特徴量の形式は、機械学習モデル110の構成に基づいて定まり、再同定方法に関する考察対象である。また機械学習モデル110は、学習済みのモデルが用いられる。機械学習モデル110の学習方法も、考察対象の1つである。
【0042】
データベース200は、複数の画像データを管理する。データベース200は、例えば、人物再同定を実施するコンピュータと通信可能に構成されたデータベースサーバにより実現される。データベース200は、例えば、複数のカメラ3が撮像する画像データを逐次取得することにより構成される。データベース200において管理される複数の画像データの各々は、上記と同様に、人物1が顕著に映るようにクロッピングされた画像データであって良い。特に、データベース200では、複数の画像データの各々に対して、画像データに映る人物1の個人を指定する情報が対応づけられる。例えば、各個人に割り当てられるID情報が対応づけられる。さらに、データベース200において管理される複数の画像データの各々は、機械学習モデル110の入力とすることにより得られる特徴量が対応づけられていて良い。この場合、複数の画像データの各々について、あらかじめ機械学習モデル110に入力し、特徴量を取得すれば良い。
【0043】
人物再同定は、典型的には、再同定の対象とする人物1が映る画像データを入力として、データベース200において管理される複数の画像データとの同定を実施することにより行われる。この意味で、再同定の対象とする人物1が映る画像データを「クエリ」、データベース200において管理される複数の画像データを「ギャラリー」と呼ぶこともできる。以下、適宜これらの用語を用いる。
【0044】
同定処理部132は、機械学習モデル110が出力する特徴量に基づいて、画像データに映る人物1について同定を実施する。特に、クエリの画像データに映る人物1とギャラリーの画像データに映る人物1の同定を実施する。これにより、クエリの画像データに映る人物1についての再同定が実現される。同定処理部132は、例えば、プログラムの一部として実現される。同定処理部132が出力する処理結果は、同一の人物1が映ると判定されたギャラリーの画像データであっても良いし、クエリの画像データに映る人物1と同一であると判定された個人を指定する情報(例えば、ID情報)であっても良い。あるいは、クエリの画像データに対してギャラリーの画像データの1つと同定を実施する場合に、処理結果は、同一であるか否かの判定であっても良い。
【0045】
同定処理部132は、クエリの画像データについての特徴量(以下、単に「クエリの特徴量」とも称する。)との類似性を測ることにより同定を実施する。つまり、クエリの特徴量と、ギャラリーの画像データについての特徴量を比較する。そして、クエリの画像データに映る人物1は、クエリの特徴量と類似の特徴量を有する画像データに映る人物1と同一であると判定する。ここで、同定処理部132は、ギャラリーの画像データについての特徴量を、機械学習モデル110の出力として取得しても良いし、データベース200を参照することにより取得しても良い。前者の場合、ギャラリーの画像データの各々は、都度機械学習モデル110に入力され、特徴量が取得される。後者の場合、前述したように、データベース200において管理される複数の画像データの各々に特徴量が対応づけられていれば良い。
【0046】
なお、類似性の指標や類似であることの判断方法は、同定処理部132の構成に基づいて定まり、再同定方法に関する考察対象である。
【0047】
以上説明されるように、機械学習モデル110を用いた人物再同定が行われる。ところで、クエリ及びギャラリーの画像データの各々は、撮像された環境、撮像された日時、撮像を行ったカメラ3等が互いに異なることが想定される。延いては、各々の画像データに映る人物1は、互いに同一の人物1が映る画像データのペアであっても、視点、照明の状況、オクルージョンの発生、解像度、服装等が異なることが想定される。このため、人物再同定は、機械学習において難しいタスクの1つである。
【0048】
本実施形態に係る再同定方法は、人物再同定の精度の向上を図るため、機械学習モデル110の構成及び同定処理部132において実行する処理に特徴を有している。また本実施形態に係る再同定方法を実施するための機械学習モデル110の学習方法も特徴的である。以下、本実施形態に係る機械学習モデル110、機械学習モデル110の学習方法、本実施形態に係る再同定方法及び再同定装置について説明する。
【0049】
2.機械学習モデル
まず本実施形態との比較として、
図3に典型的な機械学習モデル110の概略構成を示す。
図3に示す機械学習モデル110は、CNNにより構成される。特に、
図3に示す機械学習モデル110では、4つのCNNが順次接続され、最終段のCNNに多層パーセプトロン(MLP;Multilayer Perceptron)が接続されている。MLPは、典型的には、全結合層である。
【0050】
周知の通り、CNNは、画像データについて妥当な特徴マップを抽出することができる。特に、複数のCNNを順次接続したとき、後段のCNNになるにつれて、画像データについてのより抽象的な特徴を表す特徴マップが出力されることが知られている。このことは、複数のCNNの各々が出力する特徴マップは互いにスケールが異なると言い換えられる。これは、通常、複数のCNNの各々が出力する特徴マップのデータサイズが互いに異なることによる。また互いにスケールが異なる複数の特徴マップは、「マルチスケール」な複数の特徴マップとも呼ばれる。
【0051】
図3に示すMLPは、最終段のCNNが出力する特徴マップを入力とする。MLPの出力は、出力層のニューロンの値を並べたベクトル(特徴ベクトル)とみなすことができる。つまり、
図3に示す機械学習モデル110において、機械学習モデル110が出力する特徴量は、MLPの出力の特徴ベクトルである。また、特徴ベクトルの次元がMLPの構成により定まることを考えれば、MLPは、特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写す写像とみなすことができる。
【0052】
この典型的な機械学習モデル110を用いて人物再同定を行うことを考える。この場合、同一の人物1が映る画像データ同士は、埋め込み空間上の位置が近い特徴ベクトルが出力され、異なる人物1が映る画像データ同士は、埋め込み空間上の位置が遠い特徴ベクトルが出力されるように機械学習モデル110の学習を行うことが求められる。このように学習を行うことができれば、クエリの画像データに映る人物1は、クエリの特徴ベクトルとの位置が近い特徴ベクトルを有する画像データに映る人物1と同一であることが期待できるからである。つまりこの場合、同定処理部132において、類似性は、特徴ベクトルの間の埋め込み空間上の距離によって測られる。
【0053】
この典型的な機械学習モデル110に対して上記のように学習を行うことは、公知の学習方法によって達成されることが期待できる。しかしながら、公知の学習方法により訓練データについて十分な学習を行ったとしても、十分な精度の人物再同定を達成することができていない。これは、前述したように、各々の画像データに映る人物1は、互いに同一の人物1が映る画像データのペアであっても、様々な要素が異なることが影響しているためであると考えられる。このため、仮に訓練データの数を増やすこととしても、訓練データに対する過学習が懸念され、十分な効果が期待できない。
【0054】
このことに対して、本開示に係る発明者らは、人物再同定では、スケールが異なる複数の特徴マップについて類似性を測ることにより同定を実施することが効果的であるという着想を得た。これは、様々な要素が異なることに対してロバストにクエリの画像データに映る人物1と同一であるか否かを判定するには、多様な特徴について総合的に判断することが効果的であると考えられるからである。つまり、スケールが異なる複数の特徴マップは互いに異なる特徴を表すところ、それぞれの特徴は、異なる個人を区別するために有用であることが期待される。
【0055】
本実施形態に係る機械学習モデル110は、上記の着想に基づいて構成される。以下、本実施形態に係る機械学習モデル110について説明する。
図4は、本実施形態に係る機械学習モデル110の構成を示すブロック図である。
【0056】
本実施形態に係る機械学習モデル110は、各々が順次接続する複数の特徴抽出層111と、各々が複数の特徴抽出層111のいずれか1つと接続する複数の埋め込み層112と、を含んでいる。
図4に示す例では、4つの特徴抽出層111(#1,#2,#3,#4)と、4つの特徴抽出層111の各々と接続する4つの埋め込み層112(#1,#2,#3,#4)と、を含んでいる。ただし、複数の特徴抽出層111及び複数の埋め込み層112の数は、本実施形態を適用する環境に応じて好適に与えられて良い。また、複数の埋め込み層112は、複数の特徴抽出層111の一部について接続するように構成されていても良い。例えば
図4において、#1の埋め込み層112と#3の埋め込み層112を含まないように構成しても良い。この場合、複数の特徴抽出層111の数は4であり、複数の埋め込み層112の数は2である。
【0057】
複数の特徴抽出層111の各々は、入力データについて特徴マップを抽出するように構成される。ここで、最初の特徴抽出層111の入力データは画像データであり、以降の特徴抽出層111の入力データは前段の特徴抽出層111が出力する特徴マップである。従って、複数の特徴抽出層111の各々が出力する特徴マップは互いにスケールが異なる。またこのように構成するとき、通常、複数の特徴抽出層111の各々が出力する特徴マップは互いにデータサイズが異なる。
【0058】
特徴抽出層111は、1つの例として、CNNにより実現できる。別の1つの例として、特徴抽出層111は、Transformer、特にViT(Vision Transformer)に基づくパッチ分割層とエンコーダ層により実現することができる。この場合、パッチ分割層は、入力データを複数のパッチに分割し、エンコーダ層は、複数のパッチを入力として特徴マップを出力する。
【0059】
複数の埋め込み層112の各々は、接続する特徴抽出層111が出力する特徴マップを入力とする。そして、特徴マップを所定の次元の埋め込み空間上の特徴ベクトルに写し、特徴ベクトルを出力する。ここで、複数の埋め込み層112は、各々が出力する特徴ベクトルの次元が互いに等しくなるように構成される。つまり、複数の埋め込み層112の各々が出力する特徴ベクトルは、同一の埋め込み空間上のベクトルとなる。
【0060】
埋め込み層112は、1つの例として、MLPにより実現できる。MLPは、典型的には、全結合層であって良い。この場合、各々が出力する特徴ベクトルの次元を互いに等しくするためには、複数の埋め込み層112の各々について、MLPの出力層のニューロンの数を等しくすれば良い。
【0061】
図5に、特徴抽出層111をパッチ分割層とエンコーダ層により実現し、埋め込み層112をMLPにより実現する場合の機械学習モデル110の例を示す。
【0062】
このように本実施形態に係る機械学習モデル110によれば、スケールが異なる複数の特徴マップについて、同一の埋め込み空間上の複数の特徴ベクトルを取得することができる。従って、本実施形態に係る機械学習モデル110が出力する特徴量は、複数の埋め込み層112が出力する複数の特徴ベクトルである。なお、複数の特徴抽出層111の各々は、それぞれが異なる構造と独立したパラメータを有していて良い。例えば、複数の特徴層111の各々は、互いに層の深さが異なっていて良い。複数の埋め込み層112についても同様に、それぞれが異なる構造と独立したパラメータを有していて良い。
【0063】
図6に、
図4に示す機械学習モデル110に画像データを入力したときに出力される複数の特徴ベクトルの例を示す。
図4に示す例では、4つの埋め込み層112(#1,#2,#3,#4)の各々から出力される4つの特徴ベクトル21a、21b、21c、及び21dの埋め込み空間20上の位置が特定の図形で示されている。ここで、埋め込み空間20の次元は、簡単のため2次元としている。
【0064】
3.学習方法
以下、本実施形態に係る学習方法について説明する。
【0065】
図7に、同一の人物1が映る2つの画像データと他の2つと異なる人物1が映る画像データの3つの画像データを
図4に示す機械学習モデル110に入力した場合に、機械学習モデル110が出力する特徴ベクトルの好ましい例を示す。
図7は、
図6と同様の図である。
図7に示す例において、特徴ベクトルの集合22a及び22bは、同一の人物1が映る2つの画像データを入力とする場合の出力データである。一方で、特徴ベクトルの集合22cは、他の2つと異なる人物1が映る画像データを入力とする場合の出力データである。
【0066】
図7に示すように、本実施形態に係る機械学習モデル110を用いて人物再同定を行う場合、同一の人物1が映る画像データ同士は複数の特徴ベクトルの各々が埋め込み空間20上で位置が近くなるように、一方で異なる人物1が映る画像データ同士は複数の特徴ベクトルの各々が埋め込み空間20上で位置が遠くなるように機械学習モデル110の学習を行うことが求められる。このように学習を行うことで、本実施形態に係る再同定方法により、スケールが異なる複数の特徴マップの各々を考慮して同定を実施することができる。本実施形態に係る再同定方法については後述する。
【0067】
本実施形態に係る学習方法は、
図7に示すように特徴量を出力する機械学習モデル110の学習を達成する。
図8は、本実施形態に係る学習方法について説明するためのフローチャートである。
図8に示すフローチャートの各処理は、所定の処理周期毎に実行される。
【0068】
ステップS100において、機械学習モデル110の学習のための複数の訓練データ
を取得する。ここで、複数の訓練データの各々には、正解ラベルが対応づけられている。
図9に、複数の訓練データの例を示す。
図9には、複数の訓練データとして、特に人物1が映る3つの画像データ10a、10b、及び10cが示されている。そして、3つの画像データ10a、10b、及び10cには、正解ラベル11a、11b、及び11cがそれぞれ対応づけられている。正解ラベルは、画像データに映る人物1について個人を指定する情報である。つまり
図9において、画像データ10aと画像データ10bには同一の人物1が映ることを示している。
【0069】
再度
図8を参照する。ステップS100の後、処理はステップS110に進む。
【0070】
ステップS110において、ステップS100において取得した複数の訓練データを機械学習モデル110に入力する。
【0071】
ステップS110の後、処理はステップS120に進む。
【0072】
ステップS120において、ステップS120における入力に対する機械学習モデル110の出力を取得する。特に、複数の埋め込み層112の出力である複数の出力データセットを取得する。ここで、複数の出力データセットの各々は、複数の埋め込み層112の1つについての入力に対する出力集合である。従って、複数の出力データセットの各々は、あるスケールの特徴マップについての特徴ベクトルの集合である。例えば、
図4に示す機械学習モデル110を例とするとき、複数の出力データセットの1つは、#1の埋め込み層112についての入力に対する出力集合である。つまりこの場合、#1、#2、#3、及び#4の埋め込み層112の各々についての4つの出力データセットが取得される。
【0073】
ステップS120の後、処理はステップS130に進む。
【0074】
ステップS130において、ステップS120において取得した複数の出力データセットに基づいて損失関数を算出する。本実施形態に係る学習方法において、損失関数の構成は特徴的である。本実施形態に係る損失関数は、複数の出力データセットの各々に対応して与えられる複数の距離学習項を含んでいる。ここで、複数の距離学習項の各々は、対応する出力データセットについて、複数の訓練データのうち同一の正解ラベルが対応づけられた訓練データに対する出力(特徴ベクトル)の間の埋め込み空間20上の距離が短いほど、また複数の訓練データのうち異なる正解ラベルが対応づけられた訓練データに対する出力(特徴ベクトル)の間の埋め込み空間20上の距離が長いほど、小さな値となるように与えられる。
【0075】
図10は、複数の距離学習項について説明するための概念図である。
図10は、
図6と同様の図である。特に
図10は、訓練データとして2つ画像データを
図4に示す機械学習モデル110に入力した場合を示している。
図10に示すように、このとき、4つの出力データセット23a、23b、23c、及び23dが取得される。
図10には、4つの出力データセットの各々について、出力(特徴ベクトル)の間の埋め込み空間20上の距離d1、d2、d3、及びd4が示されている。つまり
図10に示す例では、2つの画像データに対応づけられる正解ラベルが同一である場合、4つの距離学習項は、それぞれ距離d1、d2、d3、及びd4が短いほど小さな値となるように与えられる。一方で、2つの画像データに対応づけられる正解ラベルが異なる場合、それぞれ距離d1、d2、d3、及びd4が長いほど小さな値となるように与えられる。
【0076】
本実施形態に係る学習方法において算出する損失関数は、以下の式(1)のLossで表すことができる。ここで、Li(i=1,2,・・・,n)は、複数の距離学習項の各々を表し、nは、ステップS120において取得した複数の出力データセットの数に対応する。またLotherは、他の学習の目的を達成するために適宜与えられる損失関数の項である。Lotherは、本実施形態に係る学習方法において必須の構成ではない。
【0077】
【0078】
Liは、例えば、コントラスティブロスやトリプレットロスにより実現することができる。コントラスティブロス及びトリプレットロスは公知であり、詳細な説明は省略する。その他、距離学習項として好適な構成を採用しても良い。
【0079】
なお、埋め込み空間20上の距離は、好適な形式を採用して良い。例えば、埋め込み空間20上の距離として、ユークリッド距離やコサイン類似度が例示される。
【0080】
再度
図8を参照する。ステップS130の後、処理はステップS140に進む。
【0081】
ステップS140において、ステップS130において算出した損失関数が減少する方向に機械学習モデル110を学習する。典型的には、誤差逆伝播法により損失関数が減少する方向に機械学習モデル110のパラメータを更新する。
【0082】
損失関数は、前述した複数の距離学習を含んでいる。従って、損失関数が減少する方向は、同一の正解ラベルが対応づけられた訓練データに対する出力(特徴ベクトル)の間の埋め込み空間20上の距離が短くなる方向である。あるいは、異なる正解ラベルが対応づけられた訓練データに対する出力(特徴ベクトル)の間の埋め込み空間20上の距離が長くなる方向である。
【0083】
ステップS140の後、終了条件を満たす場合(ステップS150;Yes)、機械学習モデル110の学習は終了する。終了条件を満たさない場合(ステップS150;No)、再度ステップS100に戻り処理を繰り返す。ここで、終了条件とは、例えば、訓練データとして用意する予定の全ての画像データに対して学習を終えたこと、ステップS140の後に算出される損失関数が所定の閾値以下となったこと、等である。
【0084】
なお、ステップS100において、訓練データの取得は、学習に際して訓練データとして用意する全ての画像データについて行われても良い。そして、ステップS110では、ステップS100において取得した訓練データの一部(例えば、バッチ単位やエポック単位)を機械学習モデル110の入力としても良い。このとき、ステップS140の後、終了条件を満たさない場合(ステップS150;No)、ステップS110に戻り処理を繰り返すように構成されていて良い。
【0085】
以上説明するように、本実施形態に係る学習方法によれば、損失関数は前述した複数の距離学習項を含むように構成される。そして、損失関数を減少する方向に機械学習モデル110の学習が行われる。これにより、
図7に示すような出力となる機械学習モデル110の学習が達成される。また本実施形態に係る学習方法は、機械学習モデル110の学習に係る処理をコンピュータに実行させるプログラムに適用することも可能である。
【0086】
ここで、複数の埋め込み層112の各々が出力する特徴ベクトルは、同一の埋め込み空間20上のベクトルであることが注目される。これにより、複数の距離学習項の各々を同一の埋め込み空間20上の同一の形式の距離により与えることができる。延いては、式(1)で示されるように損失関数を構成することで、学習に際してスケールが異なる複数の特徴マップの各々について同等に評価することができるのである。
【0087】
4.再同定方法
以下、本実施形態に係る再同定方法について説明する。
【0088】
図11は、本実施形態に係る再同定方法について説明するためのフローチャートである。
図11に示すフローチャートの各処理は、所定の処理周期毎に実行される。なお以下の説明において、機械学習モデル110は、前述した学習方法により学習されているとする。
【0089】
ステップS200において、人物再同定の対象とする画像データとして、第1画像データ及び第2画像データを取得する。典型的には、クエリの画像データ及びギャラリーの画像データを取得する。
【0090】
ステップS210において、ステップS200において取得した画像データを機械学習モデル110の入力として出力データを取得する。つまり、第1画像データを入力とする場合の複数の埋め込み層112の出力(特徴ベクトル)である複数の第1出力データと、第2画像データを入力とする場合の複数の埋め込み層112の出力(特徴ベクトル)である複数の第2出力データと、を取得する。
【0091】
ステップS210の後、ステップS210において取得した第1出力データ及び第2出力データに基づいて、第1画像データに映る人物1と第2画像データに映る人物1の同定を実施する(ステップS220)。ステップS220は、同定処理部132において実行される処理である。本実施形態に係る再同定方法は、同定処理部132において実行される処理(ステップS221-ステップS224)に特徴を有している。
【0092】
ステップS221において、複数の第1出力データの各々と複数の第2出力データの各々との間の埋め込み空間20上の複数の距離を算出する。例えば、
図12に示すように、機械学習モデル110の出力として複数の第1出力データ22sと複数の第2出力データ22tが取得されているとする。この場合、ステップS221において算出される複数の距離は、
図12に示すd1、d2、d3、及びd4となる。ただし、埋め込み空間20上の距離の形式は、機械学習モデル110の学習において採用する距離の形式と同等である。
【0093】
再度
図11を参照する。ステップS222において、ステップS221において算出した複数の距離のうち所定数以上の距離が所定の閾値以下となるか否かを判定する。ここで、所定数及び所定の閾値は、実験的に最適に定められて良い。例えば、所定数を、複数の距離の半数とすることが挙げられる。
【0094】
複数の距離のうち所定数以上の距離が所定の閾値以下となる場合(ステップS222;Yes)、第1画像データと第2画像データに映る人物1は同一であるとし(ステップS223)、処理は終了する。複数の距離のうち所定数以上の距離が所定の閾値以下とならない場合(ステップS222;No)、第1画像データと第2画像データに映る人物1は同一でないとし、処理は終了する(ステップS224)。
【0095】
つまり、本実施形態に係る再同定方法では、スケールが異なる複数の特徴マップが示す特徴のうち所定数以上が類似していることを受けて、第1画像データと第2画像データに映る人物1が同一であるとする。これにより、人物再同定において、多様な特徴について総合的に判断できるのである。
【0096】
なお、ステップS210は、第1画像データ又は第2画像データについてあらかじめ実施されていても良い。例えば、第1画像データがクエリの画像データで第2画像データがギャラリーの画像データであるとき、第2画像データについてあらかじめ出力データが取得されていて良い。つまり、ギャラリーの画像データには、ステップS210により取得される出力データがあらかじめ対応づけられていて良い。
【0097】
また第1画像データに映る人物1と第2画像データに映る人物1が同一でないとする場合(ステップS224)、
図11に示すフローチャートは、繰り返し実行されて良い。例えば、第1画像データがクエリの画像データで第2画像データがギャラリーの画像データであるとき、第1画像データに映る人物1と第2画像データに映る人物1が同一でないとする場合、ギャラリーの画像データから第2画像データを取得しなおして再度処理を実行して良い。
【0098】
以上説明するように、本実施形態に係る再同定方法によれば、ステップS221において算出される複数の距離のうち所定数以上の距離が所定の閾値以下となる場合に、第1画像データに映る人物1と第2画像データに映る人物1が同一であるとする。これにより、スケールの異なる複数の特徴マップの各々を考慮して同定を実施することができる。延いては、人物再同定において精度を向上させることができる。
【0099】
ここで、本実施形態に係る再同定方法においても、複数の埋め込み層112の各々が出力する特徴ベクトルが、同一の埋め込み空間20上のベクトルであることが注目される。これにより、同定に際してスケールが異なる複数の特徴マップの各々について同等に評価することができるのである。
【0100】
5.再同定装置
以下、本実施形態に係る再同定装置について説明する。
【0101】
図13は、本実施形態に係る再同定装置100の構成を示すブロック図である。再同定装置100は、メモリ101と、プロセッサ102と、通信インターフェース103と、を備えるコンピュータである。メモリ101は、プロセッサ102と結合し、複数の実行可能なインストラクション131と、機械学習モデル110と、処理の実行に必要な種々のデータ120と、を格納している。インストラクション131は、プログラム130により与えられる。この意味で、メモリ101は、「プログラムメモリ」と呼ぶこともできる。
【0102】
通信インターフェース103は、再同定装置100の外部の装置と情報を送受信する。例えば、再同定装置100は、通信インターフェース103を介してデータベース200と接続する。通信インターフェース103により、画像データの取得、機械学習モデル110の格納又は更新、処理結果の通知等が行われる。通信インターフェース103を介して取得する情報は、データ120としてメモリ101に格納される。
【0103】
インストラクション131は、プロセッサ102に
図11に示す再同定方法に係る処理を実行させるように構成されている。つまり、インストラクション131に従ってプロセッサ102が動作することにより、機械学習モデル110及びデータ120に基づいて
図11に示す再同定方法に係る処理の実行が実現される。
【0104】
6.効果
以上説明したように、本実施形態によれば、機械学習モデル110が出力する特徴量は、複数の埋め込み層112が出力する複数の特徴ベクトルである。そして、複数の特徴ベクトルについての複数の距離のうち所定数以上の距離が所定の閾値以下であるか否かによって、画像データに映る人物1の同定を実施する。これにより、再同定が、スケールが異なる複数の特徴マップについて類似性を測ることにより実施される。延いては、再同定の精度を向上させることができる。
【0105】
なお、本実施形態では、人物再同定に適用する場合について説明したが、特定のオブジェクトが人物でない再同定に適用することも同様に可能である。例えば、画像データに映る犬についての再同定に適用することも同様に可能である。この場合、正解ラベルを特定のオブジェクトの分類として、本実施形態に係る学習方法による学習を行えば良い。特に、本実施形態において、分類の細かさは任意であって良い。例えば、犬についての再同定に適用する場合において、分類は、人物再同定と同様に個を指定するものであっても良いし、犬種を指定するものであっても良い。
【0106】
また、本実施形態に係る再同定方法及び再同定装置は、機能又は装置の一部として実装することも可能である。例えば、本実施形態に係る再同定方法は、トラッキング機能の一部として実装することができる。
【符号の説明】
【0107】
1 人物
20 埋め込み空間
100 再同定装置
101 メモリ
102 プロセッサ
103 通信インターフェース
110 機械学習モデル
111 特徴抽出層
112 埋め込み層
120 データ
130 プログラム
131 インストラクション
132 同定処理部
200 データベース