YOLOU開源 | 匯集YOLO系列所有算法,集算法學習、科研改進、落地于一身!


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

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

如何使用YOLOU?
安裝
這里由于使用的是YOLOv5的框架進行的搭建,因此安裝形式也及其的簡單,具體如下:
git clone https://github.com/jizhishutong/YOLOU
cd YOLOU
pip install -r requirements.txt
數(shù)據(jù)集
這里依舊使用YOLO格式的數(shù)據(jù)集形式,文件夾形式如下:
train: ../coco/images/train2017/
val: ../coco/images/val2017/
具體的標注文件和圖像list如下所示:
├── images # xx.jpg example
│ ├── train2017
│ │ ├── 000001.jpg
│ │ ├── 000002.jpg
│ │ └── 000003.jpg
│ └── val2017
│ ├── 100001.jpg
│ ├── 100002.jpg
│ └── 100003.jpg
└── labels # xx.txt example
├── train2017
│ ├── 000001.txt
│ ├── 000002.txt
│ └── 000003.txt
└── val2017
├── 100001.txt
├── 100002.txt
└── 100003.txt
參數(shù)配置
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時有一個額外的參數(shù)需要配置,即use_aux=True。
具體訓練指令如下:
python train.py --mode yolov6 --data coco.yaml --cfg yolov6.yaml --weights yolov6.pt --batch-size 32
檢測指令如下:
python detect.py --source 0 # webcam
file.jpg # image
file.mp4 # video
path/ # directory
path/*.jpg # glob
'https://youtu.be/NUsoVlDFqZg' # YouTube
'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP stream
檢測結果
服務端模型

輕量化模型

參考
[1].https://github.com/jizhishutong/YOLOU
長按掃描下方二維碼添加小助手。
可以一起討論遇到的問題
聲明:轉載請說明出處
掃描下方二維碼關注【集智書童】公眾號,獲取更多實踐項目源碼和論文解讀,非常期待你我的相遇,讓我們以夢為馬,砥礪前

