1. 程式人生 > >深度學習系列之YOLOv3 個人總結

深度學習系列之YOLOv3 個人總結

前幾天YOLOv3問世了,朋友圈也是很多同學轉發,很興奮,當然我也是。所以,先是直接上手體驗了一下darknet53,今天把paper看了,做個總結。

1. BBox Prediction

這裡寫圖片描述

與YOLOv2一樣,YOLOv3也是在feature map上對每個位置進行bbox預測。圖中,t為預測值,但是注意這些值都是相對當前grid的相對值,分別是(tx,ty,tw,th)。最終的預測bbox為:bx,by,bw,bh,這是在image的bbox

其實,上面的都是和YOLOv2一樣啦(除了YOLOv2輸出的t是5個),下面才是new version的亮點。

3個尺度的feature map

如圖
如圖,在每個detection前,尺度都不同(23x23,46x46,92x92)。這裡用到了上取樣。(可以提供更多的語義資訊和細粒度特徵)。
這裡的操作類似於FPN(feature pyramid network)。
在YOLOv3中,我們的anchor由5個變為9個,當然,也是由K均值產生的。每個尺度分配3個anchor。其中每個尺度下每個位置預測3個bbox(4個位置輸出+1個objectness+C個類別的分數)。所以每個位置輸出(1+4+C)*3個值,這也就是訓練時yolov3.cfg裡的filter的數量。這也就是每個尺度張量的深度。

2. 網路結構

這裡寫圖片描述
53個卷積層,稱為darknet53,類似於ResNET,但速度完爆ResNET。

3. 一點問題

論文中提到YOLOv3在AP50和小目標上表現都不錯,但AP75表現就比較乏力。說明隨著IoU的升高,YOLOv3預測的bbox不能很好的與GT相重疊。