用自己的数据集复现YOLOv5

yolov5已经出了很多版本了,这里我以目前最新的版本为例,先在官网下载源码:GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite

然后下载预训练模型,需要哪个就点击哪个模型就行,在yolov5-master目录下建一个文件夹存放预训练模型

1、准备数据集

1.用labelimg标注要训练的图片,标注的格式是yolo格式,labels的后缀是txt,然后分好训练集和验证集

2.改好模型配置文件和数据加载配置文件,分别在E:\project\MODEL\YOLO\yolov5-master\modelsyolov5s.yaml和E:\project\MODEL\YOLO\yolov5-master\data\coco128.yaml

2、创建虚拟环境

conda create -n yolov5-master python=3.9

然后激活进入该虚拟环境:conda activate yolov5-master,pycharm就直接在设置里把该虚拟环境加进来就行

接着安装该项目所需的包,可看requirements.txt

pip install numpy;pip install tqdm; pip install opencv-python; pip install pandas;

然后安装torch:结合自己显卡的版本选择合适的torch版本

复制代码
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

3、训练

改E:\project\MODEL\YOLO\yolov5-master\train.py路径下的箭头指出的内容,这里是用预训练模型,没用到模型配置文件,如果数据集很多,重新训练的话可以使用模型配置文件yolov5s.yaml

也可用指令训练:python train.py --weights yu/yolov5s.pt --data data/coco128.yaml --epochs 300 --batch-size 16

python 复制代码
python train.py --weights yu/yolov5s.pt --data data/coco128.yaml --epochs 300 --batch-size 16 

4、测试

改E:\project\MODEL\YOLO\yolov5-master\detect.py里面的save_txt和save_crop,然后改一些模型路径和测试的图片,显卡等就可以测试了

复制代码
parser.add_argument("--save-txt", default="true", help="save results to *.txt")
复制代码
parser.add_argument("--save-crop", default="true", help="save cropped prediction boxes")

这两行改好就可以在测试结果里看到txt文件保存下来和小图

也可用指令测试:python detect.py --weights runstrain/exp/best.pt --source datasets/1first_0927/val/images --data data/coco128.yaml

python 复制代码
python detect.py --weights runs/train/exp/weights/best.pt --source datasets/1first_0927/val/images --data data/coco128.yaml 

5、导出

改E:\project\MODEL\YOLO\yolov5-master\export.py路径下的箭头指出的内容,如果要导出的是tensorrt格式的就把--include default="torchscript",改成--include default="engine"

也可用指令导出:python export.py --weights runs/train/exp/weights/best.pt --data data/coco128.yaml --include engine

python 复制代码
python export.py --weights runs/train/exp/weights/best.pt --data data/coco128.yaml --include engine --device 0

6、测试导出的tensorrt模型,就像测试best.pt一样

改E:\project\MODEL\YOLO\yolov5-master\detect.py路径下的箭头指出的内容

也可用指令测试:python detect.py --weights runstrain/exp/best.engine --source datasets/1first_0927/val/images --data data/coco128.yaml

python 复制代码
python detect.py --weights runstrain/exp/best.engine --source datasets/1first_0927/val/images --data data/coco128.yaml
相关推荐
羊羊小栈5 小时前
老人摔倒检测系统(基于YOLO姿态估计)
yolo·毕业设计·创业创新·大作业
土星云SaturnCloud5 小时前
土星云AI边缘计算SE110S系列模型部署实战-YOLOv5
服务器·人工智能·yolo·docker·边缘计算
YOLO数据集集合12 小时前
配电站智能运维|变电一次设备识别|高压电气构件目标检测数据集|电力巡检
运维·人工智能·深度学习·yolo·目标检测·视觉检测
stsdddd17 小时前
YOLO系列目标检测数据集大全【第八期】
yolo·目标检测·目标跟踪
YOLO数据集集合19 小时前
航拍输电线路故障识别|线路金具缺陷判别|无人机电力巡检故障检测数据集10262期
人工智能·深度学习·yolo·目标检测·视觉检测·无人机
深度学习lover19 小时前
<数据集>yolo安全手套佩戴识别<目标检测>
人工智能·yolo·目标检测·数据集·安全手套佩戴识别
深度学习lover19 小时前
<数据集>yolo航拍视角垃圾识别<目标检测>
人工智能·深度学习·yolo·目标检测·数据集·航拍视角垃圾识别
动物园猫20 小时前
无人机灾害场景人体目标检测数据集分享(适用于YOLO系列深度学习分类检测任务)
yolo·目标检测·无人机
德宏大魔王(AI自动回关)1 天前
鱿鱼云码公测:基于YOLOv26+消息队列的高性能打码平台
yolo·github·打码平台·鱿鱼云码
人工智能算法研究院2 天前
【目标检测论文解读复现NO.43】基于改进YOLOv10n的植物叶片病害轻量化检测模型
yolo·目标检测·目标跟踪