没有spp的网络的缺点
1,现有的dcnn需要固定尺寸的图片作为输入,这样对图片的宽高比和尺寸大小作出了限制。
2,如果图片尺寸是任意的,在输入之前需要做裁剪或图像扭曲(crop or warp(resize))来适应网络的固定尺寸输入。剪切后的图片可能不能包含整个物体。扭曲后的内容可能会导致几何变形。识别准确率会因为物体内容缺失或变形而减低。
使用spp的好处
1,spp能生成一个固定长度的输出,不管输入图片大小是否相同。
2,spp使用多级spatial bins,而sliding window pooling只使用单一window size,实验证明前者对物体形变更鲁棒。
3,spp能对由不同尺寸的输入提取的feature进行池化。
用不同尺寸图片进行训练能增强scale-invariance和减少过拟合
spp放在哪里
最后一层池化层用spp代替
spp长什么样
例子:
feature map: a*a 13*13 any
bin: n*n 3*3 人为固定
window size: a/n(上取整) 5 由any和固定决定
stride:a/n(下取整) 4 由any和固定决定
spp的输出是k/*M维的向量,k是最后conv层的filter数,M是bin的数目。spp输出的固定维度向量作为input输入到全连接层。
Ref
Spatial Pyramid Pooling in Deep Convolutional
Networks for Visual Recognition Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun