【小白學YOLO】YOLOv3網絡結構細致解析


摘要:本文將詳細介紹Yolov3的網絡結構相關內容。

Yolov3 網絡結構

在博客“Yolo發展歷史及網絡結構”中我們已經詳細的解釋了Yolov1的網絡結構,並簡要的提到了Yolov2與Yolov3對於網絡結構的改進,本篇博客將詳細介紹Yolov3的網絡結構,內容比較簡單。

Yolov3網絡結構圖

從圖中可以看出,Yolov3主要有以下幾部分組成:

  • 輸入
  • 基礎網絡:基礎網絡是可以根據具體的需求選擇,作者原文用的是自己設計的:Darknet-53
  • YOLOv3網絡的三個分支:Y1,Y2,Y3

網絡部件介紹

DBL: 如圖1左下角所示,也就是代碼中的Darknetconv2d_BN_Leaky,是yolo_v3的基本組件。就是卷積+BN+Leaky relu。對於v3來說,BN和leaky relu已經是和卷積層不可分離的部分了(最后一層卷積除外),共同構成了最小組件。

resn:n代表數字,有res1,res2, … ,res8等等,表示這個res_block里含有多少個res_unit。這是yolo_v3的大組件,yolo_v3開始借鑒了ResNet的殘差結構,使用這種結構可以讓網絡結構更深(從v2的darknet-19上升到v3的darknet-53,前者沒有殘差結構)。對於res_block的解釋,可以在圖1的右下角直觀看到,其基本組件也是DBL。

concat:張量拼接。將darknet中間層和后面的某一層的上采樣進行拼接。拼接的操作和殘差層add的操作是不一樣的,拼接會擴充張量的維度,而add只是直接相加不會導致張量維度的改變。

YOLOv3網絡的三個分支

多尺度檢測-Y1

適用目標:大目標

路徑:綠色線標注

輸出維度:13×13×255

輸出維度具體解釋:13×13:圖片大小;255=(80+5)×3;80:識別物體種類數;5=x,y,w,h和c(置信度);3:每個點預測3個bounding box。

多尺度檢測-Y2

適用目標:中目標

路徑:黃色線標注

輸出維度:26×26×255

輸出維度具體解釋:26×26:圖片大小;255=(80+5)×3;80:識別物體種類數;5=x,y,w,h和c(置信度);3:每個點預測3個bounding box。

多尺度檢測-Y3

適用目標:小目標

路徑:紫色線標注

輸出維度:52×52×255

輸出維度具體解釋:52×52:圖片大小;255=(80+5)×3;80:識別物體種類數;5=x,y,w,h和c(置信度);3:每個點預測3個bounding box。

 

點擊關注,第一時間了解華為雲新鮮技術~


免責聲明!

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



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