這里推薦一個YOLO系列的算法實現庫YOLOU,此處的“U”意為“United”的意思,主要是為了學習而搭建的YOLO學習庫,也借此向前輩們致敬,希望不被罵太慘;
整個算法完全是以YOLOv5的框架進行,主要包括的目標檢測算法有:YOLOv3、YOLOv4、YOLOv5、YOLOv5-Lite、YOLOv6、YOLOv7、YOLOX以及YOLOX-Lite。
同時為了方便算法的部署落地,這里所有的模型均可導出ONNX并直接進行TensorRT等推理框架的部署,后續也會持續更新。
模型精度對比
服務端模型
這里主要是對于YOLO系列經典化模型的訓練對比,主要是對于YOLOv5、YOLOv6、YOLOv7以及YOLOX的對比,部分模型還在訓練之中,后續所有預訓練權重均會放出,同時對應的ONNX文件也會給出,方便大家部署應用落地。
注意,這里關于YOLOX也沒完全復現官方的結果,后續有時間還會繼續調參測試,盡可能追上YOLOX官方的結果。
下表是關于YOLOU中模型的測試,也包括TensorRT的速度測試,硬件是基于3090顯卡進行的測試,主要是針對FP32和FP16進行的測試,后續的TensorRT代碼也會開源。目前還在整理之中。

輕量化模型
為了大家在手機端或者其他諸如樹莓派、瑞芯微、AID以及全志等芯片的部署,YOLOU也對YOLOv5和YOLOX進行了輕量化設計。
下面主要是對于邊緣端使用的模型進行對比,主要是借鑒之前小編參與的YOLOv5-Lite的倉庫,這里也對YOLOX-Lite進行了輕量化遷移,總體結果如下表所示,YOLOX-Lite基本上可以超越YOLOv5-Lite的精度和結果。

如何使用YOLOU?
安裝
這里由于使用的是YOLOv5的框架進行的搭建,因此安裝形式也及其的簡單,具體如下:
gitclonehttps://github.com/jizhishutong/YOLOU
cdYOLOU
pipinstall-rrequirements.txt
數據集
這里依舊使用YOLO格式的數據集形式,文件夾形式如下:
train:../coco/images/train2017/
val:../coco/images/val2017/
具體的標注文件和圖像list如下所示:
├──images#xx.jpgexample
│├──train2017
││├──000001.jpg
││├──000002.jpg
││└──000003.jpg
│└──val2017
│├──100001.jpg
│├──100002.jpg
│└──100003.jpg
└──labels#xx.txtexample
├──train2017
│├──000001.txt
│├──000002.txt
│└──000003.txt
└──val2017
├──100001.txt
├──100002.txt
└──100003.txt
參數配置
YOLOU為了方便切換不同模型之間的訓練,這里僅僅需要配置一個mode
即可切換不同的模型之間的檢測和訓練,具體意義如下:

注意:這里的mode
主要是對于Loss計算的選擇,對于YOLOv3、YOLOv4、YOLOv5、YOLOR以及YOLOv5-Lite直接設置mode=yolo
即可,對于YOLOX以及YOLOX-Lite則設置mode=yolox
,對于YOLOv6和YOLOv7則分別設置mode=yolov6和mode=yolov7
;
注意由于YOLOv7使用了Aux分支,因此在設置YOLOv7時有一個額外的參數需要配置,即use_aux=True
。
具體訓練指令如下:
pythontrain.py--modeyolov6--datacoco.yaml--cfgyolov6.yaml--weightsyolov6.pt--batch-size32
檢測指令如下:
pythondetect.py--source0#webcam
file.jpg#image
file.mp4#video
path/#directory
path/*.jpg#glob
'https://youtu.be/NUsoVlDFqZg'#YouTube
'rtsp://example.com/media.mp4'#RTSP,RTMP,HTTPstream
檢測結果
服務端模型

輕量化模型

參考
[1].https://github.com/jizhishutong/YOLOU
審核編輯 :李倩-
算法
+關注
關注
23文章
4702瀏覽量
94939 -
數據集
+關注
關注
4文章
1223瀏覽量
25317 -
輕量化
+關注
關注
0文章
26瀏覽量
8199
原文標題:YOLOU開源 | 匯集YOLO系列所有算法,集算法學習、科研改進、落地于一身!
文章出處:【微信號:CVSCHOOL,微信公眾號:OpenCV學堂】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
18個常用的強化學習算法整理:從基礎方法到高級模型的理論技術與代碼實現

labview調用yolo目標檢測、分割、分類、obb
使用Yolo-v3-TF運行OpenVINO?對象檢測Python演示時的結果不準確的原因?
將Yolo V3-Tiny模型轉換為IR格式遇到錯誤怎么解決?
助力AIoT應用:在米爾FPGA開發板上實現Tiny YOLO V4
【「從算法到電路—數字芯片算法的電路實現」閱讀體驗】+一本介紹基礎硬件算法模塊實現的好書
《DNK210使用指南 -CanMV版 V1.0》第四十一章 YOLO2物體檢測實驗
《DNK210使用指南 -CanMV版 V1.0》第四十章 YOLO2人手檢測實驗
《DNK210使用指南 -CanMV版 V1.0》第三十九章 YOLO2人臉檢測實驗
Pure path studio內能否自己創建一個component,來實現特定的算法,例如LMS算法?
使用OpenVINO C# API部署YOLO-World實現實時開放詞匯對象檢測

安全帽佩戴檢測算法

評論