您好,
会员登录 快速注册
退出 ( 条未读消息)
关于本站 意见反馈 首页

公告:小宅博客网可以开发票了,需要发票的,去群里找群主哈!!
全部文章分类
  • 人工智能 >

  • 编程语言 >

  • WPF系列 >

  • ASP.NET系列 >

  • Linux >

  • 数据库 >

  • 嵌入式 >

  • WEB技术 >

  • PLC系列 >

  • 微服务与框架 >

  • 小宅DIY >

  • 学习资料 >

OpenCv基础 ANN车牌识别 yolov5车牌识别 指针式仪表识别 ROS系列 YOLO Halcon Detectron2 昇腾AI ChatGPT在线体验 英伟达JETSON ChatGLM ChatTTS FunASR 地平线 ByteTrack 魔搭社区 LangChain
C C# C++ Python Java Go
WPF
ASP.NET小功能 GPS定位系统-MVC GPS定位系统-VUE ASP.NET WebRTC
Linux Linux内核 Shell MakeFile
MySql SqlServer Oracle
STM8 STM32 51单片机
VUE入门 HTML JavaScript CSS layui镜像网站 ElementUi中文官网 element-plus 图标
三菱 欧姆龙 西门子 施耐德 松下 台达
IOTSharp IOTGateway ABP FRAMEWORK Docker
亚克力音响 编程仙途:智驭万法
面试题与技巧 Python入门技能树 微软C#教程
首页 编程之美 工具下载 全国就业 流量地图 文心一言
地平线
旭日X3 - 资料 RDK X5 yolov5目标检测之训练环境搭建 RDK X5 yolov5目标检测之pt转onnx RDK X5 yolov5目标检测之开发机环境部署 RDK X5 yolov5目标检测之onnx转bin RDK X5 yolov5目标检测之开发板运行 目标跟踪Deepsort核心代码DeepSort RDK X5 Deepsort t7转onnx RDK X5 Deepsort onnx转bin RDK X5 yolov5+Deepsort 行人跟踪(BPU加速) RDK X3 环形麦克风板录音与播放
旭日X3 - 资料
RDK X5 yolov5目标检测之pt转onnx
激萌の小宅 小宅博客 地平线

文章作者:激萌の小宅

促销:¥0

价格:¥0

配送方式: 购买后立即生效(如购买异常,请联系站长)
付款之后一定要等待自动跳转结束,否则购买可能会失败
  • 0 天

    有效期

  • 0

    总销量

  • 0

    累计评价

RDK X5 yolov5目标检测之训练环境搭建

博主环境:

系统:windows 11

GPU:NVIDIA GeForce RTX 3090

IDE:PyCharm Community Edition 2022.2.3


yolov5的训练环境搭参考这个:

https://developer.d-robotics.cc/forumDetail/185446371330059463


onnx转pt方法参考这个:

https://developer.d-robotics.cc/forumDetail/107952931390742029


下面是博主整理,针对yolov5-v2.0版本的尝试。


yolov5-v2.0环境搭建

直接下载修改版本

leaf修改版yolov5-v2.0源码:https://github.com/hachi-leaf/horizon_yolov5

虚拟环境搭建命令如下:

conda create -n yolov5.2.0 python==3.8


使用PyCharm打开工程,并切换到虚拟环境,安装数据包

【备注:yolov5_v2.0_leaf工程的requirements.txt文件中将coremltools组件的安装给屏蔽掉了,这个是需要安装的,不然pt转onnx文件时会报错(虽然也能生成onnx文件)】

pip install -r requirements.txt


博主torch版本是特别指定的,并且是离线安装的,这个包有2G多,在线安装下载太慢了。

pip install torchvision==0.16.2 -f https://download.pytorch.org/whl/torch_stable.html
pip install torch-2.1.2+cu121-cp38-cp38-win_amd64.whl


yolov5-v2.0模型标注

使用标注工具:精灵标注助手

标注工具使用方法参考:https://developer.d-robotics.cc/forumDetail/185446371330059463

全部标注完成,保存并检查后,点击左下角“导出”,选择pascal-voc格式,选择一个路径输出标注数据,确定导出

QQ20241016-184811.jpg

导出数据如下:

QQ20241016-184938.jpg


xml转换txt

生成txt文件

修改xml_to_yolo.py文件路径,然后执行即可~

if __name__ == "__main__":
    classes = ['box'] # 类别
    xml_file = r"E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\outputs" # xml文件
    txt_file = r"E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\coco\\labels\\train" # txt文件保存位置
    convert_annotation(xml_file, txt_file, classes)

目录结构如下:

QQ20241016-194231.jpg


txt负值修复

修改Labels_corrct.py的path路径,然后执行即可。


验证数据集抽取

修改train_to_val.py文件的路径,然后执行即可

if __name__ == '__main__':
    images_train = r"E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\coco\\images\\train" + "\\"  # 源图片文件夹路径
    images_val = r'E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\coco\\images\\val'  # 图片移动到新的文件夹路径

    moveimg(images_train, images_val)
    file_list = os.listdir(images_val)

    labels_train = r"E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\coco\\labels\\train"  # 源图片标签路径
    labels_val = r"E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\coco\\labels\\val"  # 标签
    # 移动到新的文件路径
    movelabel(file_list, labels_train, labels_val)


yolov5-v2.0模型训练

权重文件下载

链接: https://pan.baidu.com/s/11fPGD86wXEeEtPiDMEkrcQ?pwd=4m3m

提取码: 4m3m

下载完成后,放在yolov5_v2.0_leaf\weights文件夹中(没有就创建一个)

QQ20241016-202739.jpg

四个尺寸的权重(s,m,l,x),文件大小依次增大,识别精度依次增大,运算速度依次变得缓慢


训练文件配置

首先来到yolov5_v2.0_leaf目录下的data文件夹,打开voc.yaml,train和val后面的参数分别改成训练集文件夹下的images/train和images/val文件夹绝对路径,nc改为你的目标数量,names改成目标类别,要和打标时的类别一一对应,然后记得保存

train: ../datasets/coco/images/train
val: ../datasets/coco/images/val

# number of classes
nc: 1

# class names
names: ['box']


然后来到yolov5_v2.0_leaf目录下的models文件夹,可以看见有以下文件,分别对应各个尺寸的模型权重

打开yolov5s.yaml文件,只需要把第一行这个nc改成你训练的类别数量就好了,其他的不要动,保存

QQ20241016-202952.jpg

配置训练参数,在train.py文件中,配置完之后,直接执行train.py文件即可

QQ20241016-203600.jpg


注意~~

QQ20241020-120318.jpg


执行train.py期间,就是漫长的训练等待了。。。。


pt模型预测验证

修改detect.py文件的配置如下:

QQ20241017-141310.jpg


然后就会在工程目录下生成一个output的文件夹,预测结果如下:

QQ20241017-141407.jpg



旭日X3 - 资料
RDK X5 yolov5目标检测之pt转onnx

友情链接: CSDN激萌の小宅 95知识库 自考题库 罗分明个人网络博客 精益编程leanboot

小宅博客  www.bilibili996.com All Rights Reserved. 备案号: 闽ICP备2024034575号

网站经营许可证  福建省福州市 Copyright©2021-2025 版权所有

小宅博客
首页 智能家居 地图定位
公告:小宅博客网可以开发票了,需要发票的,去群里找群主哈!!

文章作者:激萌の小宅

促销:¥0

价格:¥0

配送方式: 购买后立即生效(如购买异常,请联系站长)
付款之后一定要等待自动跳转结束,否则购买可能会失败
  • 0 天

    有效期

  • 0

    总销量

  • 0

    累计评价

RDK X5 yolov5目标检测之训练环境搭建

博主环境:

系统:windows 11

GPU:NVIDIA GeForce RTX 3090

IDE:PyCharm Community Edition 2022.2.3


yolov5的训练环境搭参考这个:

https://developer.d-robotics.cc/forumDetail/185446371330059463


onnx转pt方法参考这个:

https://developer.d-robotics.cc/forumDetail/107952931390742029


下面是博主整理,针对yolov5-v2.0版本的尝试。


yolov5-v2.0环境搭建

直接下载修改版本

leaf修改版yolov5-v2.0源码:https://github.com/hachi-leaf/horizon_yolov5

虚拟环境搭建命令如下:

conda create -n yolov5.2.0 python==3.8


使用PyCharm打开工程,并切换到虚拟环境,安装数据包

【备注:yolov5_v2.0_leaf工程的requirements.txt文件中将coremltools组件的安装给屏蔽掉了,这个是需要安装的,不然pt转onnx文件时会报错(虽然也能生成onnx文件)】

pip install -r requirements.txt


博主torch版本是特别指定的,并且是离线安装的,这个包有2G多,在线安装下载太慢了。

pip install torchvision==0.16.2 -f https://download.pytorch.org/whl/torch_stable.html
pip install torch-2.1.2+cu121-cp38-cp38-win_amd64.whl


yolov5-v2.0模型标注

使用标注工具:精灵标注助手

标注工具使用方法参考:https://developer.d-robotics.cc/forumDetail/185446371330059463

全部标注完成,保存并检查后,点击左下角“导出”,选择pascal-voc格式,选择一个路径输出标注数据,确定导出

QQ20241016-184811.jpg

导出数据如下:

QQ20241016-184938.jpg


xml转换txt

生成txt文件

修改xml_to_yolo.py文件路径,然后执行即可~

if __name__ == "__main__":
    classes = ['box'] # 类别
    xml_file = r"E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\outputs" # xml文件
    txt_file = r"E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\coco\\labels\\train" # txt文件保存位置
    convert_annotation(xml_file, txt_file, classes)

目录结构如下:

QQ20241016-194231.jpg


txt负值修复

修改Labels_corrct.py的path路径,然后执行即可。


验证数据集抽取

修改train_to_val.py文件的路径,然后执行即可

if __name__ == '__main__':
    images_train = r"E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\coco\\images\\train" + "\\"  # 源图片文件夹路径
    images_val = r'E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\coco\\images\\val'  # 图片移动到新的文件夹路径

    moveimg(images_train, images_val)
    file_list = os.listdir(images_val)

    labels_train = r"E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\coco\\labels\\train"  # 源图片标签路径
    labels_val = r"E:\\yolos\\4.YOLOv5\\yolov5 2.0\\datasets\\coco\\labels\\val"  # 标签
    # 移动到新的文件路径
    movelabel(file_list, labels_train, labels_val)


yolov5-v2.0模型训练

权重文件下载

链接: https://pan.baidu.com/s/11fPGD86wXEeEtPiDMEkrcQ?pwd=4m3m

提取码: 4m3m

下载完成后,放在yolov5_v2.0_leaf\weights文件夹中(没有就创建一个)

QQ20241016-202739.jpg

四个尺寸的权重(s,m,l,x),文件大小依次增大,识别精度依次增大,运算速度依次变得缓慢


训练文件配置

首先来到yolov5_v2.0_leaf目录下的data文件夹,打开voc.yaml,train和val后面的参数分别改成训练集文件夹下的images/train和images/val文件夹绝对路径,nc改为你的目标数量,names改成目标类别,要和打标时的类别一一对应,然后记得保存

train: ../datasets/coco/images/train
val: ../datasets/coco/images/val

# number of classes
nc: 1

# class names
names: ['box']


然后来到yolov5_v2.0_leaf目录下的models文件夹,可以看见有以下文件,分别对应各个尺寸的模型权重

打开yolov5s.yaml文件,只需要把第一行这个nc改成你训练的类别数量就好了,其他的不要动,保存

QQ20241016-202952.jpg

配置训练参数,在train.py文件中,配置完之后,直接执行train.py文件即可

QQ20241016-203600.jpg


注意~~

QQ20241020-120318.jpg


执行train.py期间,就是漫长的训练等待了。。。。


pt模型预测验证

修改detect.py文件的配置如下:

QQ20241017-141310.jpg


然后就会在工程目录下生成一个output的文件夹,预测结果如下:

QQ20241017-141407.jpg