YOLO系列(v2-v5)常用命令的系统化汇总
以下为YOLO系列(v2-v5)常用命令的系统化汇总,结合官方文档与实战经验整理而成,涵盖训练、推理、评估等全流程操作:
一、YOLOv5 命令集
1. 模型训练
# 基础训练(单卡)
python train.py --img 640 --batch 64 --epochs 100 --data data/mydata.yaml --cfg models/yolov5s.yaml --weights yolov5s.pt --device 0
# 多GPU训练
python train.py --img 640 --batch 64 --epochs 500 --data data/my_car.yaml --cfg models/yolov5x-car.yaml --weights yolov5x.pt --device 0,1
# 断点续训
python train.py --resume --img 640 --batch 16 --epochs 55 --data data/Big.yaml --cfg models/yolov5x.yaml --weights yolov5x.pt --device 0,1
关键参数说明:
--img
:输入图像尺寸(需为32的倍数)--batch
:根据显存调整(RTX 3090建议64-128)--data
:数据集配置文件路径--cfg
:模型结构配置文件
2. 模型验证与测试
# 计算mAP
python test.py --data data/YJL.yaml --weights runs/exp1/weights/best.pt --augment
# 单图推理
python detect.py --weights yolov5s.pt --source bus.jpg --device 0
# 视频检测
python detect.py --source 123.mp4 --weights best.pt --device 0,1
# 批量检测
python detect.py --weights best.pt --source test/ --device 0,1 --conf-thres 0.5
3. 模型导出
# 导出ONNX格式
python export.py --weights best.pt --img 640 --batch 1 --include onnx
二、YOLOv4/v3/v2 命令集(基于Darknet)
1. 通用训练流程
# 基础训练(YOLOv4)
./darknet detector train cfg/voc.data cfg/yolov4.cfg_train yolov4.conv.137 -gpus 0 -map
# 多GPU训练(YOLOv3)
./darknet detector train cfg/voc.data cfg/yolov3-voc.cfg_train darknet53.conv.74 -gpus 0,1 | tee train.log
# 断点续训
./darknet detector train cfg/voc.data cfg/yolov4-tiny.cfg_train backup/yolov4-tiny_last.weights -gpus 0,1 -clear
2. 模型评估
# 计算mAP(YOLOv4)
./darknet detector map cfg/voc.data cfg/yolov4.cfg_val backup/yolov4_best.weights
# 计算Recall(YOLOv3)
./darknet detector recall cfg/voc.data cfg/yolov3-tiny.cfg_val backup/yolov3-tiny_best.weights
# 批量测试生成结果
./darknet detector valid cfg/voc.data cfg/yolov2.cfg_val backup/yolov2_best.weights -out results
3. 推理部署
# 单图检测
./darknet detector test cfg/voc.data cfg/yolov4-tiny.cfg_val backup/yolov4-tiny_best.weights test.jpg -thresh 0.3
# 视频流检测
./darknet detector demo cfg/voc.data cfg/yolov3.cfg yolov3.weights test.mp4
# 摄像头实时检测
./darknet detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights
三、迁移学习专项
1. 预训练模型生成
# 生成YOLOv4-tiny迁移学习权重
./darknet partial cfg/yolov4-tiny.cfg yolov4-tiny.weights yolov4-tiny.conv.29 29
2. 自定义Anchor优化
# 计算最佳Anchor(YOLOv3)
./darknet detector calc_anchors cfg/voc.data -num_of_clusters 9 -width 416 -height 416 -show
四、高级调试技巧
1. 训练可视化
# TensorBoard监控
tensorboard --logdir=runs # 访问返回的URL查看曲线
2. 性能优化
# 调整学习率(初始建议值)
python train.py --lr0 0.01 --lr1 0.001 # 初始学习率0.01,最终0.001
3. 多尺度训练
# 开启随机尺度(Darknet)
random=1 # 在cfg文件中设置,输入尺寸范围320-608
五、环境管理命令
1. 进程管理
# 查看GPU进程
nvidia-smi -l 1 # 每秒刷新GPU状态
# 终止训练进程
kill -9 $(pgrep darknet)
2. 文件操作
# 批量转换标签格式
python voc_label.py # 生成Darknet格式标签
附:版本差异对照表
功能 | YOLOv5命令 | Darknet系列命令 |
---|---|---|
多GPU训练 | --device 0,1 | -gpus 0,1 |
模型导出 | export.py 支持ONNX/TensorRT | 需手动转换模型格式 |
数据增强 | --augment 自动组合增强策略 | 需在cfg文件中配置jitter参数 |
学习率调整 | 内置cosine/linear调度 | 需配置policy=steps手动调整 |
学习建议:
- 优先掌握YOLOv5的PyTorch生态工具链
- 理解Darknet的cfg文件参数含义(如subdivisions与batch关系)
- 定期使用
./darknet detector map
验证模型性能 - 参考官方更新日志调整超参数(如YOLOv5 v6.1后优化了Anchor计算方式)
完整代码库参考:YOLOv5官方仓库 | Darknet源码
原文地址:https://blog.csdn.net/niuTyler/article/details/146437400
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.kler.cn/a/598323.html 如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.kler.cn/a/598323.html 如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!