takuroooのブログ

勉強したこととか

Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition

論文メモ
図は論文からの引用

目次

概要

入力画像のサイズによらず、固定サイズの特徴マップを出力するspatial pyramid poolingの提案。

論文リンク

https://arxiv.org/pdf/1406.4729.pdf

著者

  • Kaiming He
  • Xiangyu Zhang
  • Shaoqing Ren
  • Jian Sun

従来の課題

  • CNN(convolutional layers + fully-connected layers)の入力画像のサイズは固定である必要がある。(fully-connected layerの入力次元が固定のため)
  • これを回避するために入力画像に対してcropやwarpが使用されるが、これらの処理を行うことで入力画像のオブジェクトが欠けてしまったり歪みがでてしまう弊害が発生する。

提案手法

f:id:takuroooooo:20190623175933p:plain

  • spatial pyramid pooling layerは任意のサイズの特徴マップを出力することができる。
  • convolutional layersとfully-connected layersの間にspatial pyramid pooling layerを配置することで任意のサイズの画像を入力することができる。
  • 図では、spatial pyramid pooling layerは1x1, 2x2, 4x4の複数スケールの特徴マップを出力している。(multi-level pooling)
  • multi-level poolingを使うとオブジェクトの変形や空間レイアウトに対してロバストになる。

結果

f:id:takuroooooo:20190623210714p:plain

single-sizeトレーニングは224x224のみで学習
multi-sizeトレーニングは224x224と180x180で学習
テストはどちらも224x224で行う。

実装

github.com