【CVPR 2022 論文解説】最新人物検索 AI モデル Cascade Transformers for End-to-End Person Search

更新日

投稿日

 

 

1.はじめに

本記事は、CVPR 2022 に採択された人物検索 (person search) AI に関する論文 "Cascade Transformers for End-to-End Person Search[1]" (以下、論文) の簡単な解説です。

 

人物検索は、画像から目的の人物を捜し出し画像中の位置を特定する技術です。刑事もののドラマで、AI が防犯カメラ映像から犯人の映っている映像を捜し出し、犯人を四角いボックスで囲んで刑事に知らせるシーンがよくありますが、それを思い浮かべていただければ良いでしょう。

 

人物検索 AI は、「人を画像から検出する」だけでなく「個人を識別できる」必要があります。AI は人と背景を分離を行うという観点では人一般に共通する特徴を獲得する必要があり、特定の個人を見分けるという観点では個々人の細かい特徴を獲得することが必要となります。このように、相反する 2 種類の特徴を獲得しなければならないということから、単に人検出を行うよりも難しい課題であると言えます。

 

そのほかにも、図 1 に示すような画像中に映る人の大きさや、方向の違い、オクルージョンへの対応も求められます。

 

AI

図1. 人物検索における課題 [1]

 

2.モデルの構造

これまで Deep Learning を用いた画像認識や物体検出においては CNN という構造がベースのモデルが主流でした。しかし、2010 年台終盤から Transformer と呼ばれる自然言語処理分野で成功を収めた技術の画像分野への転用が始まり、今では多くの Transformer のみで構成されたモデルや Transformer と CNN のハイブリッドモデルが提案されています。

 

論文で提案されているモデルは、Cascade R-CNN[2] をベースとした CNN と Transformer のハイブリッド型です。

 

Cascade R-CNN は、図2 のような構造になっています。

 

AI

図2. Cascade R-CNN [2]

 

図中の B0、 B1、 B2、 B3 は bounding box で、B0 は Region Proposal Network (RPN) による bounding box です。I は入力画像、conv は backbone を表しています。Backbone には ResNet-50 が採用されています。 Pool は bounding box に囲まれた領域の抽出を表しています。H1、H2、H3 は network head、C1、C2、C3 はクラス分類を表しています。

 

Cascade R-CNN では、bounding box の生成をシーケンシャルに複数回行っています。モデルの訓練の際には、IoU の閾値を段階的に上げていきます。これにより、高い IoU の閾値でモデルを最適化可能となり、結果として質の高い bounding box を生成可能なモデルが構築されるという仕組みになっています。

 

論文で提案されているモデルは、Cascade R-CNN の H1、H2、H3 を transformer と NAE (Norm-Aware Embedding) [3]を用いて構成したものになります。

 

NAE は、人物検索における「人一般の特徴」と「個人の詳細な特徴」という 2 つの相反する特徴をうまく分離して獲得するために提案された手法です。より具体的には、下図 (文献 3 より引用) のように、特徴空間を極座標を使って表現し、特徴ベクトルのノルムが「人であることの確信度」、特徴ベクトル同士の角度が「同じ人かどうかを示す類似度」になるようにモデルが訓練されます。図 3 中の黒い矢印が背景、それ以外の色の矢印が人を表しています。

 

AI

図3. 特徴空間の極座標表現[3]

 

例えば、ある人が観測されたとき、その人の特徴ベクトルと赤の特徴ベクトルとの間の角度が小さい時、観測された人は赤の特徴ベクトルで表される人と同一人物であると推論されます。

 

NAE のネットワーク構造は、図4 のようになっています。

 

AI

図4. NAE のネットワーク構造[3]

 

3.おわりに

 

いかがでしたでしょうか。より詳しくお知りになりたい方は、参考文献を是非ご覧ください。また、論文実装のソースコードも GitHub (https://github.com/Kitware/COAT) に公開されていますので、そちらもご覧ください。とても読みやすいコードになっています。

 

Morning Project Samurai では、AI に関するご質問や、ご自身のシステムへの AI の組み込みについてのご相談も受け付...

 

 

1.はじめに

本記事は、CVPR 2022 に採択された人物検索 (person search) AI に関する論文 "Cascade Transformers for End-to-End Person Search[1]" (以下、論文) の簡単な解説です。

 

人物検索は、画像から目的の人物を捜し出し画像中の位置を特定する技術です。刑事もののドラマで、AI が防犯カメラ映像から犯人の映っている映像を捜し出し、犯人を四角いボックスで囲んで刑事に知らせるシーンがよくありますが、それを思い浮かべていただければ良いでしょう。

 

人物検索 AI は、「人を画像から検出する」だけでなく「個人を識別できる」必要があります。AI は人と背景を分離を行うという観点では人一般に共通する特徴を獲得する必要があり、特定の個人を見分けるという観点では個々人の細かい特徴を獲得することが必要となります。このように、相反する 2 種類の特徴を獲得しなければならないということから、単に人検出を行うよりも難しい課題であると言えます。

 

そのほかにも、図 1 に示すような画像中に映る人の大きさや、方向の違い、オクルージョンへの対応も求められます。

 

AI

図1. 人物検索における課題 [1]

 

2.モデルの構造

これまで Deep Learning を用いた画像認識や物体検出においては CNN という構造がベースのモデルが主流でした。しかし、2010 年台終盤から Transformer と呼ばれる自然言語処理分野で成功を収めた技術の画像分野への転用が始まり、今では多くの Transformer のみで構成されたモデルや Transformer と CNN のハイブリッドモデルが提案されています。

 

論文で提案されているモデルは、Cascade R-CNN[2] をベースとした CNN と Transformer のハイブリッド型です。

 

Cascade R-CNN は、図2 のような構造になっています。

 

AI

図2. Cascade R-CNN [2]

 

図中の B0、 B1、 B2、 B3 は bounding box で、B0 は Region Proposal Network (RPN) による bounding box です。I は入力画像、conv は backbone を表しています。Backbone には ResNet-50 が採用されています。 Pool は bounding box に囲まれた領域の抽出を表しています。H1、H2、H3 は network head、C1、C2、C3 はクラス分類を表しています。

 

Cascade R-CNN では、bounding box の生成をシーケンシャルに複数回行っています。モデルの訓練の際には、IoU の閾値を段階的に上げていきます。これにより、高い IoU の閾値でモデルを最適化可能となり、結果として質の高い bounding box を生成可能なモデルが構築されるという仕組みになっています。

 

論文で提案されているモデルは、Cascade R-CNN の H1、H2、H3 を transformer と NAE (Norm-Aware Embedding) [3]を用いて構成したものになります。

 

NAE は、人物検索における「人一般の特徴」と「個人の詳細な特徴」という 2 つの相反する特徴をうまく分離して獲得するために提案された手法です。より具体的には、下図 (文献 3 より引用) のように、特徴空間を極座標を使って表現し、特徴ベクトルのノルムが「人であることの確信度」、特徴ベクトル同士の角度が「同じ人かどうかを示す類似度」になるようにモデルが訓練されます。図 3 中の黒い矢印が背景、それ以外の色の矢印が人を表しています。

 

AI

図3. 特徴空間の極座標表現[3]

 

例えば、ある人が観測されたとき、その人の特徴ベクトルと赤の特徴ベクトルとの間の角度が小さい時、観測された人は赤の特徴ベクトルで表される人と同一人物であると推論されます。

 

NAE のネットワーク構造は、図4 のようになっています。

 

AI

図4. NAE のネットワーク構造[3]

 

3.おわりに

 

いかがでしたでしょうか。より詳しくお知りになりたい方は、参考文献を是非ご覧ください。また、論文実装のソースコードも GitHub (https://github.com/Kitware/COAT) に公開されていますので、そちらもご覧ください。とても読みやすいコードになっています。

 

Morning Project Samurai では、AI に関するご質問や、ご自身のシステムへの AI の組み込みについてのご相談も受け付けております。お気軽にお問い合わせください。

 

【参考文献】

[1] Rui Yu, Dawei Du1, Rodney LaLonde and Daniel Davila. Cascade Transformers for End-to-End Person Search. arXiv:2203.09642, 2022.
[2] Zhaowei Cai and Nuno Vasconcelos. Cascade R-CNN: Delving into High Quality Object Detection. arXiv:1712.00726, 2017.
[3] Di Chen, Shanshan Zhang, Jian Yang and Bernt Schiele. Norm-Aware Embedding for Efficient Person Search. In CVPR, 2020.

   続きを読むには・・・


この記事の著者

金子 純也

【品質管理×自己学習型AI】外観検査 AI 導入につきまとうあらゆるデータセットの悩み、課題を革新的な「教師なし自己学習型AI 」で解決支援 ! 現実的で運用可能な製造業品質管理AI化を実現します。AIに関することならお気軽にご相談ください!

【品質管理×自己学習型AI】外観検査 AI 導入につきまとうあらゆるデータセットの悩み、課題を革新的な「教師なし自己学習型AI 」で解決支援 ! 現実的...


「AI(人工知能)」の他のキーワード解説記事

もっと見る
AIの反逆? シンギュラリティの危機とは

【目次】 1. AIがもたらす未知の危険 現代社会において、人工知能(AI)はますます不可欠な存在となっています。スマートフォンや...

【目次】 1. AIがもたらす未知の危険 現代社会において、人工知能(AI)はますます不可欠な存在となっています。スマートフォンや...


シンギュラリティの危機~職を失う人びと~あなたは生き残れるか

【目次】 1. シンギュラリティの到来 人間は誰もこんなディストピア※1を望んではいなかった。これはシンギュラリティが到来した後、...

【目次】 1. シンギュラリティの到来 人間は誰もこんなディストピア※1を望んではいなかった。これはシンギュラリティが到来した後、...


【2分でわかる】AI:artificial intelligence

  AI(人工知能: artificial intelligence)が岐路に立っています。より高度なAIが生み出されると同時に、その危険...

  AI(人工知能: artificial intelligence)が岐路に立っています。より高度なAIが生み出されると同時に、その危険...


「AI(人工知能)」の活用事例

もっと見る
情報、常識の検証を考える

1、勝ち組と負け組を支配する情報  皆さんがご存じの大手予備校有名講師である林先生が、かつてテレビで「情報」に関して興味深いことをおっしゃっており、...

1、勝ち組と負け組を支配する情報  皆さんがご存じの大手予備校有名講師である林先生が、かつてテレビで「情報」に関して興味深いことをおっしゃっており、...