位置: IT常识 - 正文

基于yoloV7添加关键点训练记录(yolov5 教程)

编辑:rootadmin
基于yoloV7添加关键点训练记录 一 、前言

推荐整理分享基于yoloV7添加关键点训练记录(yolov5 教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:yolov4如何改进,yolov3怎么改进,yolov3使用教程,yolov3怎么用,yolov4 教程,yolov教程,yolov教程,yolov教程,内容如对您有帮助,希望把文章链接给更多的朋友!

yoloV7已经开源有一段时间了,近期已经基于yoloV7-pose的关键点算法进行了研究和修改。目前已经将该工程修改为,多分类+任意数量关键点:修改详细请看博客:基于yoloV7-pose添加任意关键点 + 多类别分类网络修改,修改代码已经开源:github地址,如果对大家有帮助也希望可以帮忙点点☆☆。 好的,接下来我们就开始训练模型。

二 、 数据准备2.1 数据介绍。

很多小伙伴有点不知道这些关键点怎么设置,我简单说一下逻辑,一般是检测框+关键点的形式,也就是说关键点是伴随框的,首先是希望box框可以收敛,然后再是点的收敛,所以框是必须的,然后点是非必须的,所有有些框可以不需要设置关键点,这里大家可以将关键点的值设置为-1就行, 这种关键点的标记工具可以选择labelme,对目标进行不规则四边形标记。 标记完成后图像可视化应该是这样的: 其中 第一个点是:绿色;第二个点是:蓝色;第三个点是:红色;第四个点是:白色。点的顺序是否需要有标准,我个人觉得是需要的,部分任务可能不需要,但目前我发现都是需要注意点的顺序的。 标记完成的内容,依次转化成txt文档:

# -nfs-阿拉伯车牌字符-沙特阿拉伯卡口车牌-2-沙特阿拉伯卡口车牌-2-image1837.txt# data.txt 含义分别是: cls x y w h point1xpoint1ypoint2x point2y point3x point3y point4x point4y ...# 类别 目标中心点x 目标中心点y 目标宽w 目标高h 目标点1x坐标 目标点1y坐标 目标点2x坐标 目标点2y坐标 目标点3x坐标 目标点3y坐标 目标点4x坐标 目标点4y坐标 依次类推 0 0.5739299610894941 0.1724137931034483 0.3715953307392996 0.29064039408866993 0.38910505836575876 0.08374384236453201 0.7587548638132295 0.029556650246305417 0.7607003891050583 0.2660098522167488 0.39299610894941633 0.32019704433497537 2 0.5739299610894941 0.1724137931034483 0.3715953307392996 0.29064039408866993 0.38910505836575876 0.08374384236453201 0.7587548638132295 0.029556650246305417 0.7607003891050583 0.2660098522167488 0.39299610894941633 0.32019704433497537 0 0.5739299610894941 0.1724137931034483 0.3715953307392996 0.29064039408866993 0.38910505836575876 0.08374384236453201 0.7587548638132295 0.029556650246305417 0.7607003891050583 0.2660098522167488 0.39299610894941633 0.32019704433497537

注意: 第1个值:类别索引,如果是单类别,这里值都为0 第2个值:目标框的中心点坐标x值, 第3个值:目标框的中心点坐标y值, 第4个值:目标框的宽度w, 第5个值:目标框的高度h, 第6个值:第1个关键点的x坐标,如果该关键点省去,设置坐标为-1 第7个值:第1个关键点的y坐标,如果该关键点省去,设置坐标为-1 第8个值:第2个关键点的x坐标,如果该关键点省去,设置坐标为-1 第9个值:第2个关键点的y坐标,如果该关键点省去,设置坐标为-1 第10个值:第3个关键点的x坐标,如果该关键点省去,设置坐标为-1 第11个值:第3个关键点的y坐标,如果该关键点省去,设置坐标为-1 第12个值:第4个关键点的x坐标,如果该关键点省去,设置坐标为-1 第13个值:第4个关键点的y坐标,如果该关键点省去,设置坐标为-1 … 后面依次是关键点的坐标值

2.1 修改数据yaml文件:

这里是读取数据的txt文档,所以传入图片路径txt文件即可,其中txt文档书写如下:

# train.txt./train/images/-nfs-阿拉伯车牌字符-沙特阿拉伯卡口车牌-2-沙特阿拉伯卡口车牌-2-image1837.jpeg./train/images/-nfs-车牌字符-埃及车牌-埃及车牌截图-2021-04-30 11-11-52屏幕截图.png./train/images/-nfs-车牌字符-埃及车牌-埃及车牌截图-2021-04-30 13-57-27屏幕截图.png./train/images/-nfs-车牌字符-埃及车牌-埃及车牌截图-2021-04-30 10-19-54屏幕截图.png./train/images/-nfs-阿拉伯车牌字符-外国车牌现场_20210519_1-外国车牌现场_20210519_1-e0d92b0990a1249388bc77bdfa8e43ed.jpg./train/images/-nfs-车牌字符-埃及车牌-埃及车牌截图-2021-04-30 13-51-28屏幕截图.png./train/images/-nfs-车牌字符-约旦车牌-videoplayback-videoplayback_13_1460.jpg./train/images/-nfs-车牌字符-埃及车牌-埃及车牌截图-2021-04-30 13-56-51屏幕截图.png./train/images/-nfs-车牌字符-埃及车牌-埃及车牌截图-2021-04-30 10-27-50屏幕截图.png

这里读取数据是 : txt前面的作为根目录,加上txt文档里面的路径, 所以图片的完整路径是这样存放的:

# txt前面的作为根目录,加上txt文档里面的路径,# 所以图片的完整路径是这样存放的: /media/wqg/3e165c12-9862-4867-b333-fbf93befd928/home/wqg/data/官网数据/PLATE/train/images/-nfs-阿拉伯车牌字符-沙特阿拉伯卡口车牌-2-沙特阿拉伯卡口车牌-2-image1837.jpeg基于yoloV7添加关键点训练记录(yolov5 教程)

传入txt文档即可开始训练了。记得修改nc的类别数量和对应的名称

三 、开始训练

训练代码使用的是:./yolov7-pose_Npoint_Ncla/train_Ncla_nPoint.py

3.1 修改模型结构yaml文件

设置关键点的数量,默认是以4个关键点进行训练,类别数量默认是读取数据文件中的nc值。

3.2 数据准备好了就可以开始训练了

分别传入预训练权重,模型配置文件,修改好的数据文件,hyp文件,训练批次,训练尺寸等等。

权重链接:百度云链接 : https://pan.baidu.com/s/1izQzp7G5-tncRKtMTEyrUA 提取码: t82o。建议: hyp文件中大家不要开上下翻转和左右翻转,会有可能导致关键点混乱。左右翻转是按照,1和2,3和4,5和6,7和8进行交换,上下翻转没有写翻转逻辑,建议不用,用的话需要自己修改代码。

训练开始,大家可以看到图像的每个关键点都是正确的:

四 、 训练结果

这里我只是训练了100个eopch,数据也只是添加了500多张,

可以使用 tensorboard查看训练日志

训练推理结果:

推理代码:./yolov7-pose_Npoint_Ncla/detect.py

五、常见问题(粉丝问题)数据增强部分索引错误

关键点的数量建议是偶数个,如果是基数个,需要改一下代码,或者去掉左右翻转和上下翻转。
本文链接地址:https://www.jiuchutong.com/zhishi/297604.html 转载请保留说明!

上一篇:梯度下降算法(Gradient descent)(梯度下降算法的正确顺序是)

下一篇:opencv训练自己的模型,实现特定物体的识别(opencv训练模型教程)

  • 支付宝健康码怎么解除绑定家人(支付宝健康码怎么弄出来)

    支付宝健康码怎么解除绑定家人(支付宝健康码怎么弄出来)

  • 笔记本r7与i7的区别在哪(笔记本r7跟i7哪个好)

    笔记本r7与i7的区别在哪(笔记本r7跟i7哪个好)

  • 垂直同步开了会卡吗(垂直同步开了会怎么样)

    垂直同步开了会卡吗(垂直同步开了会怎么样)

  • 小米怎么锁定媒体音量(小米怎么锁定媒体音频)

    小米怎么锁定媒体音量(小米怎么锁定媒体音频)

  • 苹果11未拆封怎么查真假(苹果未拆封怎么查正品)

    苹果11未拆封怎么查真假(苹果未拆封怎么查正品)

  • 邮件能发文件夹吗(用邮箱发文件怎么发)

    邮件能发文件夹吗(用邮箱发文件怎么发)

  • 华为nova7有没有呼吸灯(华为nova7有没有5g)

    华为nova7有没有呼吸灯(华为nova7有没有5g)

  • 互感器作用(互感器作用及用途)

    互感器作用(互感器作用及用途)

  • 唯品会付款方式有哪些(唯品会付款方式怎么改)

    唯品会付款方式有哪些(唯品会付款方式怎么改)

  • 联通los红灯闪啥意思

    联通los红灯闪啥意思

  • 显卡安装失败怎么回事(显卡安装失败怎么调)

    显卡安装失败怎么回事(显卡安装失败怎么调)

  • 苹果手机照片删除了怎么还占内存(苹果手机照片删除了在哪里能找到)

    苹果手机照片删除了怎么还占内存(苹果手机照片删除了在哪里能找到)

  • 为什么苹果软件闪退(为什么苹果软件无法下载)

    为什么苹果软件闪退(为什么苹果软件无法下载)

  • 转转预付款什么时候到账(转转预付款什么时候给)

    转转预付款什么时候到账(转转预付款什么时候给)

  • word文档打开不能编辑(word文档打开不是a4)

    word文档打开不能编辑(word文档打开不是a4)

  • 手机怎么用宽带(手机怎么用宽带账号密码上网)

    手机怎么用宽带(手机怎么用宽带账号密码上网)

  • oppor17投屏功能怎么用(oppor17手机投射屏幕教程)

    oppor17投屏功能怎么用(oppor17手机投射屏幕教程)

  • 12306候补显示灰色和蓝色有什么区别(12306候补显示灰色叉)

    12306候补显示灰色和蓝色有什么区别(12306候补显示灰色叉)

  • 苹果x怎么拉黑联系人(苹果X怎么拉黑00开头的号码)

    苹果x怎么拉黑联系人(苹果X怎么拉黑00开头的号码)

  • 1加手机是哪个公司的(1加手机是哪个品牌)

    1加手机是哪个公司的(1加手机是哪个品牌)

  • 微信提现在哪里操作(微信提现在哪里查看记录)

    微信提现在哪里操作(微信提现在哪里查看记录)

  • 小米8wifi已连接但无法访问(小米8wifi已连接但无法访问怎么办)

    小米8wifi已连接但无法访问(小米8wifi已连接但无法访问怎么办)

  • 钉钉如何建群(钉钉如何建群上课)

    钉钉如何建群(钉钉如何建群上课)

  • (全网最详细!!)npm:无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称(全网最详细的破解卡密软件教程[2021首发])

    (全网最详细!!)npm:无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称(全网最详细的破解卡密软件教程[2021首发])

  • 我用ChatGPT做直播技术选型,卷死了同事

    我用ChatGPT做直播技术选型,卷死了同事

  • 帝国cms模板如何导入导出(帝国cms使用手册)

    帝国cms模板如何导入导出(帝国cms使用手册)

  • 机械租赁税率是10个点还是9个点
  • 资产总额的季度怎么算
  • 社保滞纳金所得税汇算需要调增吗
  • 预算收入包括增值税吗
  • 专利权的手续费是多少
  • 长期股权投资是金融资产还是非金融资产
  • 所属税务机关是根据什么分配的
  • 合伙人没有账目就说赔了合法吗
  • 转出未交增值税是借方还是贷方
  • 企业所得税可以不交吗
  • 增值税销项税额影响入账金额吗
  • 土地增值税和房产税
  • 资产减值损失结转
  • 接受投资款尚未工商变工账务怎么做处理?
  • 存货取得长期股权投资
  • 长期股权变更
  • 3%小规模纳税人开出的发票 农产品成本如何计算
  • 维修费和配件能抵税吗
  • 统一社会信用代码证
  • 应付职工薪酬核算内容不包括
  • win11如何连接网址
  • 如何增强无线网卡的接收能力
  • 个人所得税算少了怎么办
  • 提供加工服务的企业
  • 长期股权投资转让需要交什么税
  • 企业的党员活动是什么
  • isass是什么程序
  • 怎么查上市公司
  • 无形资产的摊销计入什么科目
  • php中实现文件上传需要用到哪几个函数
  • torch.nn.function
  • 学python真的好就业吗
  • php中input的用法
  • 再生资源增值税退税优惠政策
  • python累加求和代码,直到最后一项小于10^-6
  • 如何登记现金明细账
  • 支付招聘网站费用怎么入账
  • 公司食堂吃饭没钱怎么办
  • 个税申报和社保申报的金额要一致吗
  • dedecms配置
  • 建筑安装的扩展性是指
  • 水利建设基金应税项是什么
  • 所有者权益是怎么排列的
  • 疫情期间社保减免了几个月
  • 亏损企业对外捐赠的税前扣除
  • 开票软件服务费全额抵扣怎么做账
  • 纯外贸企业进项税怎么抵扣
  • 代理进口货物如何确定增值税纳税人
  • 公司账户存定期利息
  • 企业购房需要缴纳土地税么吗
  • 公司之间的借款利息有最小限制吗
  • 会计忘记申报税款会有什么影响
  • 原材料可以不设明细吗?
  • 其他应付款社保借方余额怎么处理
  • 企业和债权人有什么利益冲突
  • 劳务派遣人员能有营业执照吗
  • 合伙企业应该用什么会计制度
  • soft version
  • xp系统字体安装方法
  • freebsd怎么安装软件
  • IPad怎么连接电视机看看影视
  • redhat下载教程
  • svchos1.exe - svchos1是什么教程 有什么作用
  • mac不同账户如何共享文件
  • win10链接手机怎么用
  • mac os固件下载
  • wmiex.exe是什么程序
  • win8经典模式
  • windows 10预览版
  • node modules干嘛的
  • opengl learning
  • jquery和dom对象之间怎么转换
  • js function函数
  • js中倒计时器怎么实现
  • 湖南税务发票查询系统查不到外省的发票
  • 云南省税务干部学校是干什么的
  • 没有代理记账资格的公司能代理记账吗
  • 核定征收需要报财务报表吗
  • 资源税是什么?
  • 本期应纳的增值税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设