深度學習目標檢測系列之YOLOV3

2021-10-24 08:34:45 字數 2383 閱讀 2335

作者說yolov3相當於是一篇技術報告,因為他還有很多別的煩心事要去幹。所以yolov3相當於是在原始yolo版本的基礎上,整合現有的先進技術進行改良。不過從業界反映來講,還是很不錯的。這就是說有的人隨隨便便就做出了其它人一輩子也做不出來的事。但是這篇**更大的意義在於,讓我們停一停、想一想,what this all means!換句話說,這將為人類社會帶來什麼?在歷史前進的道路上,大神們為這輛車發明了輪子,而我們負責推著它往前走。但是如果前面是乙個大火坑呢?你還要繼續推嗎?大神已經明確的表示i quit!所以**是這麼結尾的we owe the world that much!或許每個人都不應該自私的覺得,技術只是用來餬口的工具而已。就如在日本侵華戰爭期間,有良知的人就不能說我是為了養家餬口而背叛自己的國家和人民。我不知道存在於人類之外的那雙手(或者說不止一雙),他對於我們有著什麼樣的計畫。我也摒棄那些書本上所寫的內容,所謂的文明與發展(只是為了讓人們用更多的時間來傻樂嗎?)。或許有很多冥冥之中不可控的因素,但是對於我來說唯一會去做的就是,不淪為不義者的工具!這是作為乙個無奈的小人物最後的堅守,向每乙個堅守良知的人致敬!

對於yolov3來講,最重要的兩點應該就是darknet53和fpn

darknet53是基於darknet19設計的一套網路結構,首先從網路結構上我們看到darknet53就相當於是darknet19和resnet的結合體一樣。

下面反映出了darknet53的效果,較19來說其速度大幅度下降,但是準確率提高了3個百分點,這是一件很了不起的成就,而且其速度也是遠遠高於實時檢測的需要的。較resnet來說,兩者的準確率可謂是相差不大,但是速度比resnet整整提高了1倍。所以從模型堪用的角度來講,這無疑是一種優秀的網路結構設計。

fpn是另外一篇單獨的**,此處的網路設計正好體現出來fpn的思想,所以我們解釋一下相關的知識。我們都知道在yolov2會有所謂的passthrough layer,這一層將最後一次池化之前的特徵26*26和最後輸出的特徵13*13進行拼接,然後進行輸出。但是這種拼接是有侷限性的,簡陋的,輸入影象離特徵圖距離還是較遠。fpn將這種高低層資訊融合的思想發揮到了極致,如下圖我們看到fpn會將高層的資訊進行上取樣,然後和低層的特徵進行融合。這個低層的特徵就有了更多的語義資訊。並且最後這三層都會有著對應的輸出。

我們知道yolov3會先聚類出原始9個anchor的尺寸,(10×13),(16×30),(33×23),(30×61),(62×45),(59× 119),(116×90),(156×198),(373×326)。將尺寸大小進行排列,越是高層的特徵圖擁有更大的尺寸,每一層對應著3種尺寸。

我們看出yolov3整體上修改的地方是較少的,但是目前在市場上佔主流的地位,足以說明模型的優秀程度。下圖反應了yolov3實測的效果,在保持高準確率的前提下,我們看到在速度這一點上他已經將其它的網路遠遠的甩在了後面。當然yolov3並不是十全十美的,當iou的閾值在0.5-0.95之間的時候,他的準確度會下降。但是人家也解釋了,對於人類的肉眼來說0.5的iou和0.3的iou差異是非常小的。既然大家都看不出來,那麼一味地追求高iou意義其實並不是很大。

本文中介紹了yolov3相對於v2進行的修改,重新設計了darknet53網路,並且借鑑了fpn的思想進行特徵融合。理解起來比較簡單。大家共勉。跟v3的作者一樣,我也有很多煩心的事情需要去處理,但是我並不會退出影象界,也不會退出ai圈。當然,並不是因為我對ai有多麼的熱愛,而是,因為像我這樣的小角色似乎還配不上退出二字。

一首阿姆的lose yourself共勉,珍惜出現在自己眼前的每乙個機會,仰望星空、腳踏實地......               

look, if you had one shot, or one opportunity

to seize everything you ever wanted, one moment

would you capture it or just let it slip?             

eminem-lose yourself第一首奧斯卡獎說唱歌曲,電影《8英里》的主題曲,也是格萊美最佳說唱歌曲

深度學習目標檢測 YOLO專題

資源搜尋 yolo v1,v2,v3的記錄 學習筆記 yolo系列 v1 v2與v3 you only look once yolov1,看過好多篇,這篇感覺講的最通俗易懂 yolo官方主頁 本人總結 在開始進入具體演算法實現之前,我們還是先簡單隨便聊一聊。目標檢測應該說是計算機視覺領域中比較好玩而...

目標檢測演算法之YOLO系列

1.演算法解讀 2.原始碼解析 nms演算法包含在 interpret output 這個函式中 v2通過對標籤聚類得到一系列anchor box prior box 相比v1,bounding box的數量大幅增加。v2 的bounding box以這些anchor box為基準,在一定程度上減少...

深度學習 目標檢測 YOLO9000模型詳解

yolo9000是在yolov2的基礎上提出的一種聯合訓練方法,可以檢測超過9000個類別的模型。yolov2混合目標檢測資料集和分類資料集,用目標檢測資料集及其類別標記資訊和位置標註資訊訓練模型學習 目標定位和分類,用分類資料集及其類別標記資訊進一步擴充模型所能識別的物體類別同時能增強模型魯棒性。...