1行定義
FPNとは、CNNの深い層の特徴マップを拡大しながら浅い層の特徴マップと足し合わせ、どの解像度でも物体を見分けやすい特徴マップを作る仕組みのことです。
くわしく
FPN(Feature Pyramid Network)は、Tsung-Yi Linらが2016年に論文を公開し、2017年のCVPRで発表した、大きさの異なる物体を検出するための特徴マップの作り方です。ResNetのようなCNNと、Faster R-CNNのような検出器の間に入る部品として使います。
なぜ必要か
写真には、手前の大きな車も、遠くの小さな人も写ります。CNNの深い層の特徴マップは「何が写っているか」をよく表しますが、解像度が低く、小さな物体の情報が失われがちです。反対に浅い層の特徴マップは、解像度は高いものの、意味の情報が弱いという弱点があります。
古典的な対処は、画像を何段階にも縮小し、それぞれを処理する画像ピラミッドです。ただし、CNNを何度も通すため、計算量とメモリが大きくなります。SSDは1回の処理で得た複数の層の特徴マップを使いますが、解像度の高い浅い層は使っていませんでした。FPNの論文は、この浅い層こそ小さな物体の検出に大切だと指摘しています。
仕組み
まず通常の順伝播(ボトムアップ経路)で、段ごとに解像度が半分になる特徴マップを作ります。次に、最も深い段から特徴マップを2倍ずつ拡大しながら浅い段へ戻る、トップダウン経路を設けます。拡大した特徴マップは、同じ大きさの浅い段の特徴マップと、横方向の接続で足し合わせます。
こうして、どの段の特徴マップも、深い層の意味の情報と浅い層の細かな位置の情報をあわせもちます。予測は各段で行い、大きな物体は粗い段、小さな物体は細かい段が受け持ちます。CNNを通すのは1回だけなので、追加の計算はわずかです。
広がり
FPNはその後、Mask R-CNNや、パノプティックセグメンテーション向けのPanoptic FPNなど、多くのモデルで特徴を取り出す部品として使われています。
覚え方
「深い層の意味を、浅い層へ配り直すピラミッド」と覚えます。
G検定での出題
出題のされ方
大きさの異なる物体を検出するための工夫として、画像ピラミッドやSSDの方式との違い、トップダウン経路と横方向の接続の役割、Faster R-CNNやMask R-CNNへの組み込みが問われます。
混同しやすい用語
◯×チェック
次の文が正しいか、誤りかを選んでください。
-
FPNは、それだけで物体のクラスと位置を出力する検出器であり、Faster R-CNNなどほかの検出器に組み込んで使うことはない。
答えを見る
答え × 誤り
FPNは、検出器に渡す特徴マップを作る部品です。論文では、Faster R-CNNの候補領域の抽出(RPN)と、候補ごとの分類(Fast R-CNN)の両方に組み込み、精度を高めました。
-
FPNとU-Netはどちらも深い層の情報を浅い層の側へ戻す経路をもつが、最も細かい1枚の特徴マップだけで最終的な予測を行うのはU-Netのほうである。
答えを見る
答え ◯ 正しい
FPNは、ピラミッドの各段の特徴マップでそれぞれ予測を行います。FPNの論文も、U-Netなど似た形のモデルとの違いとして、この点を挙げています。
-
FPNは物体検出のために提案された仕組みだが、Mask R-CNNによるインスタンスセグメンテーションなど、ほかのタスクのモデルにも使われている。
答えを見る
答え ◯ 正しい
Mask R-CNNの論文では、ResNetとFPNを組み合わせて特徴を取り出す構成にすると、精度と速度の両方が大きく改善したと報告されています。
この用語の練習問題
出典
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目26 画像認識)
- Tsung-Yi Lin, Piotr Dollár, Ross Girshick, Kaiming He, Bharath Hariharan, Serge Belongie, Feature Pyramid Networks for Object Detection, CVPR 2017 (arXiv:1612.03144) (1. Introduction、2. Related Work、3. Feature Pyramid Networks、4. Applications)
- Kaiming He, Georgia Gkioxari, Piotr Dollár, Ross Girshick, Mask R-CNN (2017) (3. Mask R-CNN(Network Architecture))