位置: IT常识 - 正文

Yolov7模型训练与部署(yolov3模型训练)

编辑:rootadmin
Yolov7模型训练与部署 背景

推荐整理分享Yolov7模型训练与部署(yolov3模型训练),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:yolov3模型训练,yolo4模型,yolo 模型训练,yolov5模型训练,yolov5模型训练,yolov3模型训练,yolov5模型训练,yolov3模型训练,内容如对您有帮助,希望把文章链接给更多的朋友!

在工业上使用较多的基于深度学习从目标检测算法,那毫无疑问应该是yolo,凭借这效率和精度方面的优势,在一众深度学习目标检测算法中脱颖而出。目前最新的版本是yoloV7,根据yoloV7论文中描述:

YOLOv7 surpasses all known object detectors in both speed and accuracy in the range from 5 FPS to 160 FPS and has the highest accuracy 56.8% AP among all known real-time object detectors with 30 FPS or higher on GPU V100. YOLOv7-E6 object detector (56 FPS V100, 55.9% AP) outperforms both transformer-based detector SWIN L Cascade-Mask R-CNN (9.2 FPS A100, 53.9% AP) by 509% in speed and 2% in accuracy, and convolutional based detector ConvNeXt-XL Cascade-Mask R-CNN (8.6 FPS A100, 55.2% AP) by 551% in speed and 0.7% AP in accuracy, as well as YOLOv7 outperforms: YOLOR, YOLOX, Scaled-YOLOv4, YOLOv5, DETR, Deformable DETR, DINO-5scale-R50, ViT-Adapter-B and many other object detectors in speed and accuracy. Moreover, we train YOLOv7 only on MS COCO dataset from scratch without using any other datasets or pre-trained weights

已知对象检测算法中获得了最高的精度,达到了 56.8% 的平均精度(AP),并且效率远超基于transformer(transformer-based)和基于卷积(convolutional-based)的模型。并且训练只使用了coco数据集,没有任何预训练权重。

今天试着下载看了下,发现文档说明齐全。今天大概花了一天时间,完成了从配环境,准备数据集,训练模型到tensorRT部署等多个步骤。

也得益于之前用过yolov3,对深度学习这一套流程比较熟悉。平时也有点工程经验,遇到的坑几乎网上一查或者仔细一琢磨,基本就解决了。接下来就对这一过程做个记录。

参考资料:

YOLOV7论文地址:https://arxiv.org/pdf/2207.02696.pdf

YOLOV7源码地址:https://github.com/WongKinYiu/yolov7

YOLO进化史:https://zhuanlan.zhihu.com/p/539932517

YOLOV7 tensorRT部署:https://zhuanlan.zhihu.com/p/556570703

源码下载

从github克隆代码:https://github.com/WongKinYiu/yolov7

环境配置

这是一个python工程,推荐使用PyCharm。

笔者使用的是Windows系统,如果不用conda的话,只能使用PyCharm提供的虚拟环境功能,在工程下新建一个python环境,这个环境不会影响别的工程。Pycharm会识别requirements.txt中需要的包,自动提示你安装。

这里的torch需要注意,如果使用默认的requirements.txt中版本,可能GPU不会启用,表现就是:

import torchtorch.cuda.is_available() #返回值为false

因此要自行安装,按照自己的环境,选择装不同的版本,pytorch官网提供了一个便捷的工具来生成安装指令。

https://pytorch.org/get-started/locally/

这里笔者的环境供参考:

cuda:10.2

Yolov7模型训练与部署(yolov3模型训练)

cudnn:8.2.2.26

TensorRT:8.2.2.1

这些版本一定要匹配,笔者在这儿踩过坑,把cuda重新安装了一遍,又下载了好几版的cudnn和tensorRT才测试成功。

测试数据集准备

yolov7测试数据集是coco,因此下载了coco val2017数据集,train2017暂时没有下载。

在data/coco.yaml文件中:

# download command/URL (optional)download: bash ./scripts/get_coco.sh

可以看到提供了一个下载coco的脚本,但只能在Linux下跑,Windows下需要自己下载。

val2017就够了,要自己训练的话,可以下载train2017,可以看到笔者也在下载train2017。

同样在data/coco.yaml中,设置文件路径

# train and val data as 1) directory: path/images/, 2) file: path/images.txt, or 3) list: [path1/images/, path2/images/]train: H:/baiduyundownloads/coco2017/train2017.txt # 118287 imagesval: H:/baiduyundownloads/coco2017/val2017.txt # 5000 imagestest: H:/baiduyundownloads/coco2017/test-dev2017.txt # 20288 of 40670 images, submit to https://competitions.codalab.org/competitions/20794精度测试

然后可以运行

python test.py --data data/coco.yaml --img 640 --batch 32 --conf 0.001 --iou 0.65 --device 0 --weights yolov7.pt --name yolov7_640_val

在run/test/yolov7目录下,可以看到confusion_matrix。

训练模型python train.py --workers 8 --device 0 --batch-size 32 --data data/coco.yaml --img 640 640 --cfg cfg/training/yolov7.yaml --weights '' --name yolov7 --hyp data/hyp.scratch.p5.yaml

模型训练可以从零开始,也可以在预训练权重上使用自己的数据集。这一步笔者没有实际执行。

模型导出为onnxpython export.py --weights ./yolov7-tiny.pt --dynamic-batch --grid --simplify --topk-all 100 --iou-thres 0.65 --conf-thres 0.35 --img-size 640 640

这一步不跟着Readme,去掉命令中的end2end,加入dynamic-batch。

这里选择yolov7-tiny模型,执行命令后,生成yolov7-tiny.onnx。

tensorRT部署

使用这个仓库

https://github.com/shouxieai/tensorRT_Pro

下的tensorRT_Pro/example-simple_yolo/目录中的工程,可以将.onnx模型转为.trtmodel模型。

然后可以用这个模型,在c++端进行推理:

推理结果写到文件:

本文链接地址:https://www.jiuchutong.com/zhishi/295251.html 转载请保留说明!

上一篇:chatgpt 无法登录报错Access denied、OpenAl‘s services are not available in yourcountry. (error=unsupported )(无法登陆p.to)

下一篇:YOLO-V5轻松上手(yolo v5超详细解析)

  • 华为p50发布会直播在哪看(华为p50发布会直播回放)

    华为p50发布会直播在哪看(华为p50发布会直播回放)

  • 电池最大容量99咋办(电池最大容量99能回到100吗)

    电池最大容量99咋办(电池最大容量99能回到100吗)

  • vivoS1手机怎么改图片名称(vivo手机怎么改变)

    vivoS1手机怎么改图片名称(vivo手机怎么改变)

  • 交完电费还没有来电怎么办(交完电费还没来电怎么办)

    交完电费还没有来电怎么办(交完电费还没来电怎么办)

  • 闲鱼已预留是什么意思(闲鱼上已预留是卖掉了了吗)

    闲鱼已预留是什么意思(闲鱼上已预留是卖掉了了吗)

  • 苹果无线耳机电量怎么看不到(苹果无线耳机电量在哪看)

    苹果无线耳机电量怎么看不到(苹果无线耳机电量在哪看)

  • 小米CC9Pro什么时候出的(小米cc9pro什么时候升级安卓12)

    小米CC9Pro什么时候出的(小米cc9pro什么时候升级安卓12)

  • 赛扬和酷睿的区别(赛扬和酷睿哪个性能好)

    赛扬和酷睿的区别(赛扬和酷睿哪个性能好)

  • 手机里照片误删了怎么恢复(手机里照片误删了怎么办)

    手机里照片误删了怎么恢复(手机里照片误删了怎么办)

  • ipad支持快充吗(苹果2019款ipad支持快充吗)

    ipad支持快充吗(苹果2019款ipad支持快充吗)

  • 抖音举报别人别人会知道是谁举报的吗(抖音举报别人别人知道么)

    抖音举报别人别人会知道是谁举报的吗(抖音举报别人别人知道么)

  • 怎么看自己微信打标没有(怎么看自己微信账号是否异常)

    怎么看自己微信打标没有(怎么看自己微信账号是否异常)

  • 复印件可以拍照打印吗(复印件可以拍照吗)

    复印件可以拍照打印吗(复印件可以拍照吗)

  • 微信公众号视频怎么下载(微信公众号视频号怎么申请)

    微信公众号视频怎么下载(微信公众号视频号怎么申请)

  • 美图秀秀卡住了怎么办(美图秀秀卡住了没保存怎么办)

    美图秀秀卡住了怎么办(美图秀秀卡住了没保存怎么办)

  • wps表格怎么快速查找(wps表格怎么快速换行)

    wps表格怎么快速查找(wps表格怎么快速换行)

  • wps表格如何批量减数字(wps表格如何批量删除部分内容)

    wps表格如何批量减数字(wps表格如何批量删除部分内容)

  • 红米note8pro卡槽怎么放(红米note8pro卡槽2在哪里)

    红米note8pro卡槽怎么放(红米note8pro卡槽2在哪里)

  • qq音乐怎么送别人单曲(qq音乐怎么送别人三天vip)

    qq音乐怎么送别人单曲(qq音乐怎么送别人三天vip)

  • 手机屏进水有水印怎么办(手机屏进水有水印修多少钱)

    手机屏进水有水印怎么办(手机屏进水有水印修多少钱)

  • 怎样把手机wps文件存到u盘(怎样把手机wps文件存到u盘不用电脑)

    怎样把手机wps文件存到u盘(怎样把手机wps文件存到u盘不用电脑)

  • 解决elementui 的省市区级联选择器数据不回显问题(elementui rule)

    解决elementui 的省市区级联选择器数据不回显问题(elementui rule)

  • 划拨土地使用权出租
  • 职工意外伤害险赔偿范围
  • 营业收入净额是营业总收入吗
  • 非居民税收征管方式包括
  • 有留抵增值税怎么做账
  • 个人捐赠支出扣除30%和100%扣除
  • 公司账户没有钱怎么办
  • 含税金是什么意思
  • 公司单独买医保
  • 耕地占用税和契税什么时候交
  • 政府规费可以做进项抵扣吗?
  • 房地产企业开具零税率发票
  • 劳务费开发票还要代扣代缴吗?
  • 银行短期理财利息怎么算
  • 汇兑损益计算例题
  • 非税收入的发票能抵扣吗
  • 五月份和六月份都有什么节日
  • 个人将房产无偿赠与他人应交个人所得税吗
  • 永恒之蓝是
  • 交了车船税有什么凭证
  • 浅谈linux的发展方向和应用范围
  • 工会会员会费缴费证明怎么开
  • HTTP 400 错误是什么原因
  • PHP:curl_multi_exec()的用法_cURL函数
  • php加密文件解密
  • yolov5m
  • 现金清查的会计科目
  • 收到税务局退回的企业所得税分录
  • 未开票收入本月未收款的分录
  • promise歌曲
  • 公章的法律效力范围
  • 基于卷积神经网络的网络入侵检测算法设计与实现
  • 查找命令位置
  • 收到的赔款,罚款怎么算
  • 免抵退申报汇总表在哪里
  • 如何理解符合立案标准的,行政机关应当及时立案
  • java printing
  • 为什么有些网站会自动复制
  • 季度所得税怎么算
  • 科技经费使用
  • 政府返还的个税手续费会计分录
  • 下列行为免征增值税的有
  • 增值税税率调整为13%从什么时候开始实行
  • 加权平均发计算公式
  • 公司模具部制作工作内容
  • 国际快递运输服务有哪些
  • 异地预缴税款怎么做账
  • 进项税怎么记账
  • 公司一般户的钱怎么拿出来
  • 销售货物并提供安装服务是混合销售吗
  • 国家法定滞纳金规定
  • 给员工发工资发多少合适?
  • 总公司与分公司的关系
  • mysql数据库输入汉字是问号
  • window9为什么没有
  • linux vps 教程
  • centos安装后配置
  • openbsd6.8
  • ghost安装出错
  • win10怎么用键盘重启
  • WIN10系统中断
  • windows不认u盘
  • 什么是bash命令
  • mac安装软件提示无法检查更新
  • windows7system登录
  • centos7视频教程
  • win7升级win10系统版本软件还有吗
  • node 线程 进程
  • jQuery插件封装时如要实现链式编程,需要
  • python os.path模块
  • python ints
  • java中的锁机制
  • python二级怎么出题
  • activity怎么用
  • jq filter过滤
  • 关于翡翠手镯知识
  • 大连税务登记app
  • 上海市个人所得税计算
  • 个人所得税代扣代缴手续费返还政策
  • 公务员考试税局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设