YOLOV5训练自己的数据集教程(万字整理,实现0-1)

文章目录

一、YOLOV5下载地址

二、版本及配置说明

三、初步测试

四、制作自己的数据集及转txt格式

1、数据集要求

2、下载labelme

3、安装依赖库

4、labelme操作

五、.json转txt、.xml转txt

六、修改配置文件

1、coco128.yaml->ddjc_parameter.yaml

2、yolov5x.yaml->ddjc_model.yaml

八、调train和detect的参数并开始训练

1、在train.py,寻找函数def parse_opt(known=False),更改参数

2、train运行结果

3、在detect.py,寻找函数def parse_opt(),更改参数

 YOLOv5是一种单阶段目标检测算法,该算法在YOLOv4的基础上添加了一些新的改进思路,使其速度与精度都得到了极大的性能提升。YOLOv5是Glenn Jocher等人研发,它是Ultralytics公司的开源项目。YOLOv5根据参数量分为了n、s、m、l、x五种类型,其参数量依次上升,当然了其效果也是越来越好。从2020年6月发布至2022年11月已经更新了7个大版本,在v7版本中还添加了语义分割的功能。

一、YOLOV5下载地址

GitHub官方下载(推荐):https://github.com/ultralytics/yolov5

二、版本及配置说明

  • 我是用cpu训练的,如果有条件的可以使用gpu进行训练,训练速度会相差10倍。
  • 当然,用gpu下载pytorch的时候要下载cuda版本。
  • 我采用的是Anaconda+Pycharm的配置,大家要了解一些关于pip和conda的指令,方便管理包和环境。
  • 当我们下好yolov5后,可以发现有一个requirements.txt文件,使用Anaconda Prompt,切换到Yolov5的位置,pip install -r requirements.txt即可一步到位全部下完。下面是requirements.txt文件的内容。
# YOLOv5 requirements
# Usage: pip install -r requirements.txt

# Base ----------------------------------------
matplotlib>=3.2.2
numpy>=1.18.5
opencv-python>=4.1.1
Pillow>=7.1.2
PyYAML>=5.3.1
requests>=2.23.0
scipy>=1.4.1  # Google Colab version
torch>=1.7.0
torchvision>=0.8.1
tqdm>=4.41.0
protobuf<4.21.3  # https://github.com/ultralytics/yolov5/issues/8012

# Logging -------------------------------------
tensorboard>=2.4.1
# wandb

# Plotting ------------------------------------
pandas>=1.1.4
seaborn>=0.11.0

# Export --------------------------------------
# coremltools>=4.1  # CoreML export
# onnx>=1.9.0  # ONNX export
# onnx-simplifier>=0.3.6  # ONNX simplifier
# scikit-learn==0.19.2  # CoreML quantization
# tensorflow>=2.4.1  # TFLite export
# tensorflowjs>=3.9.0  # TF.js export
# openvino-dev  # OpenVINO export

# Extras --------------------------------------
ipython  # interactive notebook
psutil  # system utilization
thop  # FLOPs computation
# albumentations>=1.0.3
# pycocotools>=2.0  # COCO mAP
# roboflows

三、初步测试

配置完成后,运行detect.py,如果一切正常,那么可以在runs/detect/exp中能发现被处理过的标签,就成功了,如果没有显示下图,那么可能是有的库的版本不对应,可以根据报错提示用pip uninstall 包后下载相应版本,要多试,因为有的库与库之间是相互联系的。

四、制作自己的数据集及转txt格式

1、数据集要求

我的数据集为跌倒检测方面的,有1000张,上千张时处理后效果较好。

在yolov5中新建一个ddjc的文件夹,包含以下文件夹:

2、下载labelme

这个是对图片进行标注的工具

下载地址:GitHub - labelmeai/labelme: Image Polygonal Annotation with Python (polygon, rectangle, circle, line, point and image-level flag annotation).Image Polygonal Annotation with Python (polygon, rectangle, circle, line, point and image-level flag annotation). - labelmeai/labelmeicon-default.png?t=N7T8https://github.com/wkentaro/labelme

下载压缩包后解压即可。

3、安装依赖库

在Anacond

要使用yolov5训练自己的数据集seg,首先需要下载yolov5的源码。可以通过引用中提供的链接下载源码。接下来,需要准备自己的数据集和配置文件。 1. 首先,将你的数据集准备好,并按照yolov5的要求进行标注。确保每个标注文件与对应的图像文件在同一个文件夹中。 2. 然后,需要修改配置文件,指定你的数据集路径和类别数量等信息。你可以根据你的需求,编辑yolov5源码中的data/config_me.yaml配置文件。 3. 接下来,可以使用命令行工具运行训练脚本来开始训练模型。根据引用中的示例命令,可以使用以下命令运行训练脚本: ``` python train.py --img 640 --batch 16 --epochs 50 --data ../data/config_me.yaml --cfg models/yolov5m.yaml --weights yolov5m.pt ``` 这个命令将使用指定的数据集和配置文件进行训练训练的模型参数将保存在runs/train/exp 文件夹下。 4. 等待训练完成后,你可以使用训练得到的模型参数对新的图像进行实例分割。可以使用以下命令进行预测: ``` python predict.py --weights runs/train/exp/weights/best.pt --source path_to_test_images --data ../data/config_me.yaml ``` 这个命令将使用训练得到的最佳模型参数对指定路径下的测试图像进行实例分割,并生成相应的结果。 请注意,在实际操作中,你可能需要根据你的具体情况进行适当的调整和修改。以上是一个基本的步骤,供参考。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [yolov5-seg相关文件](https://download.csdn.net/download/a1004550653/87380516)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [YOLOv5-7.0-seg+YOLOv8-seg自定义数据集训练](https://blog.csdn.net/m0_64118152/article/details/128705341)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值