1. 程式人生 > >Mask_RCNN_簡介_框架介紹(一)

Mask_RCNN_簡介_框架介紹(一)

一、Mask_RCNN框架部分

       對於Mask_RCNN的框架部分可以搭載不同的框架,比較常見的就有resnet50、resnet101、mobilenetv1、mobilenetv2等,對於架構符合某些條件即可,即框架骨幹(backbone)的步長stride滿足[4,8,16,32,64]的需求即可,也就是說輸入的圖片經過卷積層的縮放需要經過縮放4、8、16、32、64倍,而縮放後輸出的feature被用於後續的不同層,那麼對於兩個大類的resnet和mobilenet在結構上有哪些區別,這裡介紹一下:

       首先介紹resnet,那麼對於resnet50的結構如下:

本框圖只顯示了圖片輸入部分以及第一階段的resnet開始部分,對於圖片輸入首先進行了7×7並且stride為2×2的卷積,使得feature縮小一半,之後進行batch norm和max pooling使得feature再次縮小一半,即此時縮小的四倍。對於resnet的首部,先是進行1×1的卷積,此時的stride為1×1,沒有進行縮放,之後進行strid為1×1的kernel為3×3和1×1的卷積,後面的1×1的卷積filter個數增大到512,那麼對於輸入時的feature大小是240×240×56,所以經過一個kernel為1×1,filternum為256的conv,最後進行add。

對於一個大層中的後面兩個小層就是直接進行1×1,3×3,1×1的卷積,其中卷積過程中先是filter下降到64,之後在上升到256,而旁支則直接過來。

對於第二大層到第三大層的銜接。先是經過1×1的conv,stride是2×2,所以feature縮放了一倍,最後在經過1×1升至512,而從上一層的240×240×256連線到120×120×512則經過一個1×1的conv,其中stride為2×2,filternum為512.

以上是resnet50和resnet101的結構。

對於mobilenet的結構: