SPP-net

SPP-net は、物体検出用のアーキテクチャである(He et al., 2015)。R-CNN では、オブジェクト候補領域を検出し、各領域に対して crop や wrap と呼ばれる処理を行なって 227×227 の正方形に変更されてから、CNN による特徴抽出を行なっている。wrap 処理は、画像の縦と横の比率を考慮せずに、ほぼ強制的に画像を正方形に変更している。そのため、縦長の形をしたオブジェクトは変形してしまう問題が生じる。これに対して、SPP-net では、まず入力画像に対して CNN を利用して特徴抽出を行なってから、各候補領域に対して spatial pyramid pooling (SPP) 層を介して固定長の特徴ベクトルに変更している。

SPP-net によるオブジェクト検出の仕組み

SPP 層の特徴として、入力された画像のサイズが異なっていても、出力層は固定長になる。これにより、サイズの異なるオブジェクト候補領域が入力された時に、wrap などの処理を得ずに、固定長の特徴ベクトルとして得られる。SPP 層では、入力されたオブジェクト候補領域を 1×1、2×2、4×4、・・・、のように格子状に分割していく。次に、各分割に対して最大プーリング演算を行う。そして、プーリング演算の結果を連結させて 1 つの特徴ベクトルとして出力している。最終的には、この特徴ベクトルを物体認識に利用する。

SPP-net によるオブジェクト検出の仕組み

References

  • He K, Zhang X, Ren S, Sun J. Spatial pyramid pooling in deep convolutional networks for visual recognition. arXiv. 2015. arXiv: 1406.4729