DL、ML筆記(22): YOLO v4 Reference(3): Enhance Receptive Field

YOLOv4: Optimal Speed and Accuracy of Object Detection

JianJie
Dec 10, 2021

接續YOLOv4 Reference,這篇文章開始介紹Bag-of-specials的相關文獻,會介紹Enhance Receptive Field,比較其中不同方法的差異性。

YOLO v4 Reference: Bag-of-Freebies

提升Accuracy,增加Training時間成本,也些微增加Inference時間

Enhance Receptive Field

目前的網路接是使用多個Convolution層組成,而圖片在經過不同層時,所能看到或是感受圖片的範圍是不同的,當層數越淺,感受範圍越小,只能看到局部圖片,但越解析度越高,還存在較多細節;而層數越深時,感受範圍越大,可以看到圖片中較大的範圍,但解析度越低,細節較大量丟失。因此在設計網路時,會希望感受野越大越好,與此同時期望保留一定的細節。

Spatial Pyramid Pooling (SPP)

在較為早期的CNN網路中,最後面會使用全連接層綜合整張圖片的特徵,且因為使用全連接層,輸入圖片的尺寸必須固定,連帶經過Convolution後的特徵長度也是固定的。而為了適應不同尺寸的輸入圖片,SPP會將不同尺寸的輸入特徵轉換成固定大小的輸出特徵。

SPP是使用不同尺寸的Pooling,下圖是三個尺寸的SPP,假設特徵的長寬為Length,因此三個Pooling Size為Length/4、Length/2、Length,輸出特徵尺寸就會是4x4、2x2、1x1,最後再將特徵串接(Concatenate)(特徵Size: 16+4+1),得到固定尺寸的輸出特徵。

SPP優點是可以使用不同尺寸的輸入尺寸,在訓練過程中,可以使用不同尺寸或是不同縮放程度的圖片,提高尺寸不變性並減少Over-Fitting。

Atrous Spatial Pyramid Pooling (ASPP)

SPP是使用不同的Pooling Size來增加感受野,而ASPP則是使用Convolutiuon的rate來增加感受野(Atrous Convolution)。

Atrous Convolution是將原始的Convolution Kernel加大,但維持一樣的參數量,其餘的部分填0,其等同於Dilated Convolution,如下圖,比較不同做法

使用Stride會使得輸出Feature變少,而原始的Convolution維持一樣的Feature Size,而Atrous Convolution則是可以增加感受野,其意義與Dilate Convolution相同,當Rate(Hole size、Dilate Rate)越大時,感受野越大,如下圖:

但受到Rate增大的影響,看到的事物加大,但小物體就會被忽略,因此ASPP採用多個尺寸的Atrous Convolution,融合多個感受野大小的Feature,如下圖:

融合了多種Dilate Rate尺寸的Feature,可以保留更多細節同時有更大的感受野。但需要注意Rate的尺寸,當Rate過大時,可能會使Kernel從3x3退化為1x1,只有Kernel的中心起作用。

Receptive Field Block (RFB)

RFB與ASPP相當類似,一樣是使用Atrous Convolution來增加單一一個Pixel的感受野。RFB參考Inception的網路結構,將經過多個分枝Filter輸出的結果Concatenate,以融合多種尺寸的特徵,下圖就是Inception的架構:

而RFB的架構如上圖,將特徵分別經過不同尺寸的Convolution,在經過同等大小的Atrous Convolution,這樣可以使單一一個Pixel有完整且較大範圍的感受野,下圖是與其他方法的比較:

圖片為經過一層運算後,單一一個Pixel所能涵蓋圖片的區域(感受野)。Inception是直接使用不同尺寸的Convolution進行融合,但需要使用較多的權重及運算資源;而ASPP是使用單一一種Convolution(3x3)後,再使用不同尺寸的Atrous Convolution,這種方式可以得到同等大小的感受野,但因為使用單一尺寸的Convolution配合不同尺寸的Atrous Convolution,所以計算後的Pixel無法完整對應整個範圍,會產生空洞;而RFB則是改善了這個部分,使用不同大小的Convolution,並搭配相同尺寸的Atrous Convolution,因此可以達到相同的感受野大小,並且涵蓋完整的區域。

--

--

JianJie
JianJie

Written by JianJie

Image Processing / Computer Vision / Deep Learning

No responses yet