win10 安装yolov7 训练自己的数据集

1.安装

https://www.pudn.com/news/62ddf431864d5c73acfb1a09.html

  1. 下载yolov7源码 yolov7
  2. 修改requirements.txt
    修改torch以及torchvision版本,这里直接指定好版本让其版本对应
    在这里插入图片描述
  3. 安装
pip install -r requirements.txt -f https://download.pytorch.org/whl/torch_stable.html -i https://pypi.tuna.tsinghua.edu.cn/simple

2.标注自己的数据

  1. 安装labelImg
pip install labelImg
labelImg

在这里插入图片描述
一定要标定后选择yolo格式保存,然后就会生成对应的txt文件
在这里插入图片描述

3.修改配置文件

  1. 首先文件copy到源码里 图片放到images里 txt 放在labels里面 ,格式如下。
    在这里插入图片描述
    .cache文件是运行train.py文件生成的缓存文件,为了训练的时候数据加速读取。
    2.修改 coco.yaml
    在这里插入图片描述
    3 .修改train.py文件
    在这里插入图片描述
    第一个默认应该是yolov7.pt 我这里是因为我训练我上次的
    就可以训练了。

在这里插入图片描述

4. 错误

  1. caffe2_detectron_ops_gpu.dll" or one of its dependencies.
    因为 batch_size 太大了 ,我改成1就没问题了。

https://blog.youkuaiyun.com/qq_43117155/article/details/125672691

  1. 载入数据集的时候报could not convert string to float错及解决方法
    这个问题是因为我一开始标注使用的labelme ,然后转换为txt的时候问题,就是这个文章的labelme 转yolov5的脚本 ,解决方式就是从新把数据用labelimg 标注 ,因为我只有几个图片,如果很多图片 ,我建议把txt数据读取出来,用utf-8格式写入txt中 ,这个是数据编码问题
### YOLOv8在Windows 11上的自定义数据集训练指南 #### 环境配置 为了确保YOLOv8能够在Windows 11环境中顺利运行,推荐使用Anaconda来管理依赖项和创建隔离的工作环境。具体操作如下: 安装Python版本3.10的Conda虚拟环境[^3]: ```bash conda create -n yolov8 python=3.10 ``` 激活该环境并安装必要的库: ```bash conda activate yolov8 pip install ultralytics ``` 这一步骤能够有效避免不同项目之间的包冲突问题。 #### 数据准备 对于数据集而言,其结构应当遵循特定的标准以便于被YOLO算法识别。通常情况下,需要完成以下几个方面的工作: - **收集图像**:获取足够的样本用于训练、验证以及测试。 - **标注对象**:利用工具(如LabelImg)标记每张图中的目标位置及其类别标签。 - **划分集合**:合理分配这些已处理过的素材到train、val两个子集中去;如果有条件的话还可以额外设立test部分用来评估最终成果的质量。 编写`Helmet.yaml`这样的配置文件以指明各类别的名称列表及对应的数据路径[^2]: ```yaml # datasets/Helmet.yaml example path: ./datasets/helmet/ train: images/train val: images/val nc: 2 names: ['with_helmet', 'without_helmet'] ``` 上述代码片段展示了如何设置一个简单的头盔佩戴状态检测任务所需的信息。 #### 模型训练 当一切准备工作完成后就可以着手启动实际的学习流程了。这里提供了三种不同的方法来进行模型定制化调整: ##### 方法一:基于官方提供的预训练权重微调现有架构 这种方式最为简便快捷,只需指定好相应的参数即可开始执行优化过程[^1]: ```python from ultralytics import YOLO model = YOLO('yolov8s.pt') results = model.train(data='datasets/Helmet.yaml', epochs=10, imgsz=640) ``` 此段脚本会加载小型版YOLOv8(`yolov8s`)的基础框架,并通过传入具体的选项控制整个学习周期内的行为表现形式——比如迭代次数设为10次循环,输入尺寸定格成分辨率为640×640像素的照片等。 ##### 方法二:完全新建网络结构再加以初始化赋值 如果想要探索更多可能性,则可以从零搭建一套独一无二的设计方案出来。此时就要借助`.yaml`描述文档来详尽说明每一层组件的具体属性特征: ```bash yolo task=detect mode=train model=yolov8s.yaml epochs=10 batch=1 data=datasets/Helmet.yaml ``` 这条命令告诉程序按照给定模板建立起新的计算逻辑链条,同时也要注意提供恰当规模的小批量样本来加速收敛速度而不至于过拟合严重。 ##### 方法三:迁移学习策略下的混合模式 最后一种情形介乎两者之间,即保留原有体系的核心组成部分不变的前提下引入外部资源作为补充材料共同参与进来一起塑造更强大的能力边界: ```bash yolo task=detect mode=train model=yolov8s.yaml pretrained=yolov8s.pt epochs=10 batch=1 data=datasets/Helmet.yaml ``` 这种做法既继承了之前积累下来的知识财富又不失灵活性与创新精神,往往能在较短时间内取得不错的效果提升幅度。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值