模型架構是按照配置檔案yaml進行搭建的。不同的版本的yaml在model資料夾中,每一版本的模型分為兩個部分backbone和head。
每一行代表了乙個運算單元,這裡按照yolov5結構圖可以方便理解。每一行有四個引數,引數1:代表輸入從運算單元獲得,-1代表從上乙個單元獲得。引數2:代表該運算單元的重複次數。在yolov5中,不同版本就是控制操作單元的重複次數改變的。引數3:該操作單元的名字。引數4:輸入的引數。
為了方便理解,說明yaml檔案中conv=下圖的cbl,c3=下圖的csp。
model\yolo.py可以直接執行,方便理解模型的初始化過程。
parse_model開始按照yaml搭建每一層網路,最重要的是254行
m_就是初始化後的當前層的運算單元。
在model類中forward_once中定義了一次前向傳播的過程,其中當當前操作單元需要兩個輸入時如contact,那麼之前yaml檔案中的第乙個引數就派上用場了。
y是儲存的是之前每一層的輸出,如果當前的操作單元是多個輸入,那麼就按照yaml中層數取出之前的輸出。
yolov5模型框架詳解
yolov5和yolov4很像 mosaic資料增強 1 每次讀取四張。2 分別對四張進行翻轉 縮放 色域變化等,並且按照四個方向位置擺好。3 進行的組合和框的組合 對於小目標的檢測效果還是很不錯的 自適應錨框計算 在yolo演算法中,針對不同的資料集,都會有初始設定長寬的錨框。在網路訓練中,網路在...
yolov3 yolov4與yolov5效能對比
yolov5s網路最小,速度最少,ap精度也最低。但如果檢測的以大目標為主,追求速度,倒也是個不錯的選擇。其他的三種網路,在此基礎上,不斷加深加寬網路,ap精度也不斷提公升,但速度的消耗也在不斷增加。目前使用下來,yolov5s的模型十幾m大小,速度很快,線上生產效果可觀,嵌入式裝置可以使用。在相同...
目標檢測 YOLOv5(八)
簡介 yolov5權重檔案 密碼 00mp 作者給的演算法效能如下圖 改編自知乎大佬的一張圖 yolov5s網路是yolov5系列中深度最小,特徵圖的寬度最小的網路。後面的3種 yolov5m yolov5l yolov5x 都是在此基礎上不斷加深,不斷加寬。1 mosaic資料增強 同yolov4...