
圖一 SPPNet示意圖
一般的網(wǎng)絡(luò)(如AlexNet),由于全連接層的存在,要求輸入圖片的尺寸是固定大小的(如224 * 224),這就需要將原始圖片裁剪或形變。但是裁剪出的區(qū)域可能不包含整個物體以及形變可能導(dǎo)致我們不想看到的幾何失(如圖一所示),識別準(zhǔn)確率就可能因此下降。文中提出的SPP就是為了解決輸入尺度固定的問題。
SPP

圖二 SPP示意圖
如圖二所示,設(shè)特征映射m的尺度是a * a,將m分成單金字塔層次的n * n組, 則window = ceil(a / n),stride = floor(a / n)。對于多金字塔層次同理(如圖二就是3層次金字塔—— 1 * 1, 2 * 2, 4* 4)。這樣就能生成固定長度的表征。
多層次池化(multi-level pooling)對物體形變更魯棒。
多尺度訓(xùn)練
文中多尺度訓(xùn)練采用的是在一個epoch內(nèi)采用同一尺度(如224),在另一個epoch使用另外一個尺度(如180)。
圖像識別實驗

圖三 ImageNet 2012 驗證集在標(biāo)準(zhǔn)10-views下的錯誤率
可以看到SPP和多尺度訓(xùn)練是有助于提高識別準(zhǔn)確率的。

圖四 單視角下的ImageNet 2012 驗證集錯誤率,crop用的是圖片中心區(qū)域
結(jié)合圖三、圖四,可以看到多視角的結(jié)果比單視角的結(jié)果好。單視角下,全圖比局部好。
目標(biāo)檢測實驗
RCNN測試的時候?qū)γ總€RP都提取特征,重復(fù)計算很多。使用SPPNet的話一次提取整張圖片特征,將RP投影到pool5,提取對應(yīng)的RP特征,極大地減少了計算量。
文中寫到,為簡化訓(xùn)練,只fine-tune全鏈接層。訓(xùn)練方式和RCNN一樣。

圖五 mAP on PASCAL VOC 2007

圖六 mAP on PASCAL VOC 2007using the same pre-trained modelof SPP (ZF-5)
參考文獻(xiàn)
1.?Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition