SSD網絡模型之PriorBox算子


PriorBox算子

ssd網絡一大特點是,為了提高檢測准確率,在不同尺度的特征圖上進行預測,這種預測就需要prior box layer。

prior box 是干嘛的呢?其實非常類似於Faster R-CNN中的Anchors,就是候選框,這種候選框的選取不需要像R-CNN那樣通過復雜處理產生。在ssd中,priorbox層只需要bottom層feature map的大小,就可以給出候選框。假設輸入的feature map大小是W×H,生成的prior box中心就有W×H個,均勻分布在整張圖上。在每個中心上,可以生成多個不同長寬比的prior box,如[1/3, 1/2, 1, 2, 3],每個點就可以生成length_of_aspect_ratio個框,所以在一個feature map上可以生成的prior box總數是W×H×length_of_aspect_ratio。

 

 

 如上圖b)所示,在8x8的feature map上,每個中心點生成了4個預選框。(c)是4x4的feature map,假設(c)是(b)后面的層,prior box參數相同,那么顯然,從(b)中提取的預選框更有利於小尺度對象的檢出,而從(c)中提取的預選框更有利於大尺度對象的檢出(4x4的feature map 只有8x8 feature map長寬的1/2,相同參數的prior box圈出的面積相同,但是兩個feature map對應於相同的原圖,因此4x4 feature map上相同面積映射回原圖相當於圈出了更大的面積,是8x8面積的4倍)。

如上所述,SSD提取了不同尺度的feature map來做檢測,大尺度特征圖(較靠前的特征圖)可以用來檢測小物體,而小尺度特征圖(較靠后的特征圖)用來檢測大物體。從下圖可以看出,ssd網絡會從6層feature map中提取特征,priorbox相應也會跟在這6層后面。

 

 

 計算思路:以feature map上每個點的中點為中心(offset=0.5),生成一些列同心的prior box(然后中心點的坐標會乘以step,相當於從feature map位置映射回原圖位置),最后會歸一化處理

正方形prior box最小邊長為min_size,最大邊長為

 

  每在prototxt設置一個aspect ratio,會生成2個長方形,長寬為:

 

 和

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM