位置: IT常识 - 正文

基于yoloV7-pose添加任意关键点 + 多类别分类网络修改(yolov3实现)

编辑:rootadmin
基于yoloV7-pose添加任意关键点 + 多类别分类网络修改 一 修改思想

推荐整理分享基于yoloV7-pose添加任意关键点 + 多类别分类网络修改(yolov3实现),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:yolov5训练出来参数box,yolov3 anchors设置,yolov3实现,yolov3教程,基于yolov4的,yolov教程,基于yolov4的,基于yolov4的,内容如对您有帮助,希望把文章链接给更多的朋友!

目前yoloV7已经发布有一段时间了,其中yoloV7有一个关键点检测的分支pose,是一个姿态关键点的检测算法,其中有给出的数据,大家可以下载运行起来。 由于实际项目需求,发现17个关键点是不能满足大家的需求的,这里我就稍作修改了一下,把关键点的数量修改为任意数量,并且添加目标检测多分类情况。

二 数据修改

这里我是以车牌的关键点进行举例修改,所有关键点的数量为4个。 修改的过程中需要做左右翻转,所以我的关键点翻转后,1和2交换,3和4交换,5和6交换,依次类推。

1 yaml文件修改

设置关键点数量,修改关键点数量为4

设置类别数量和类别标签

数据制作训练标签制作# -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 训练文件train.txt 和val.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数据读取修改

核心思想就是要把关键点的数量传入数据读取中,根据关键点数量进行数据读取操作。

datasets.py/LoadImagesAndLabels() 初始化修改

cache_labels() 方法 :数据读取修改

LoadImagesAndLabels()中__getitem__() 方法 :数据左右翻转修改

基于yoloV7-pose添加任意关键点 + 多类别分类网络修改(yolov3实现)

datasets.py/random_perspective() 方法

用到random_perspective()方法的地方记得都去添加一个关机键点数量参数。

三 网络结构修改1 model文件修改yolo.py 我们用到的是IKeypoint()方法,所以这里只修改这个方法,其他方法是一样的修改。 结构中主要是把分类数量和关机键点数量加入进去就ok了。 loss文件修改loss初始化类别数量和关机键数量 loss 计算中加入类别和关机键点计算

build_targets() 方法修改 添加关键点数量 四 训练代码修改1 train.py添加关机键点数量 读取数据加入关机键点数量 初始化loss 添加关键点数量和类别数量 画图添加关键点数量 2 test.py

读取数据添加关机键点数量

画图添加关机键点数量

3 general.py 中non_max_suppression()方法修改

4 plots.py 文件夹修改

主要是添加关机键点的数量

五 代码分享1 训练测试

关键点效果已经成功加上去了,并且也添加了多分类。

2 代码链接

代码地址(yolov7-pose_Npoint_Ncla):https://github.com/qinggangwu/yolov7-pose_Npoint_Ncla

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

上一篇:3DResNet 学习记录(3d representation)

下一篇:python+neo4j构建基于知识图谱的电影知识智能问答系统(python 构建)

  • 小米手机微信红包提醒怎么设置(小米手机微信红包自动领取设置)

    小米手机微信红包提醒怎么设置(小米手机微信红包自动领取设置)

  • 华为手机字体怎么更换简体(华为手机字体怎么调大小)

    华为手机字体怎么更换简体(华为手机字体怎么调大小)

  • 快手闪电购怎么开通(快手闪电购怎么关闭)

    快手闪电购怎么开通(快手闪电购怎么关闭)

  • 微信如何取消横屏模式(微信如何取消横屏设置)

    微信如何取消横屏模式(微信如何取消横屏设置)

  • 输入法手机平方怎么打出来m2(手机搜狗输入法怎么打出平方)

    输入法手机平方怎么打出来m2(手机搜狗输入法怎么打出平方)

  • 华为nova7录屏在哪(华为nova7手机录屏)

    华为nova7录屏在哪(华为nova7手机录屏)

  • 怎么在快手上打卡(怎么在快手上打视频)

    怎么在快手上打卡(怎么在快手上打视频)

  • 苹果11显示充电口有液体(苹果11显示充电但是充不进去怎么回事)

    苹果11显示充电口有液体(苹果11显示充电但是充不进去怎么回事)

  • nosignai怎么解决(nosuchdevice怎么解决)

    nosignai怎么解决(nosuchdevice怎么解决)

  • 小米9后期可以升级5g吗(小米9后期可以升级吗)

    小米9后期可以升级5g吗(小米9后期可以升级吗)

  • 联通信号hd是什么意思(联通号出现hd)

    联通信号hd是什么意思(联通号出现hd)

  • 一次性地铁卡丢了怎么办(一次性地铁卡丢在地铁站)

    一次性地铁卡丢了怎么办(一次性地铁卡丢在地铁站)

  • 微信null是什么(微信null什么意思中文翻译)

    微信null是什么(微信null什么意思中文翻译)

  • 苹果手机倒计时天数怎么弄(苹果手机倒计时秒表)

    苹果手机倒计时天数怎么弄(苹果手机倒计时秒表)

  • 手机号码怎么显示公司名称(手机号码怎么显示空号)

    手机号码怎么显示公司名称(手机号码怎么显示空号)

  • 极米z6x梯形校正怎么调(极米z6x梯形校正怎么弄)

    极米z6x梯形校正怎么调(极米z6x梯形校正怎么弄)

  • vivox21a有nfc功能吗(vivox21ia有没有nfc)

    vivox21a有nfc功能吗(vivox21ia有没有nfc)

  • qq新版本功能(qq新版本功能查岗)

    qq新版本功能(qq新版本功能查岗)

  • e3400 是哪一年的(e3400相当于现在什么处理器)

    e3400 是哪一年的(e3400相当于现在什么处理器)

  • 拼多多种地在哪里(拼多多种地怎么点出来)

    拼多多种地在哪里(拼多多种地怎么点出来)

  • 微信无银行卡密码找回(微信银行卡没有密码怎么解绑)

    微信无银行卡密码找回(微信银行卡没有密码怎么解绑)

  • win11游戏怎么设置独立显卡运行? win11设置独立显卡的方法(win11玩游戏怎样)

    win11游戏怎么设置独立显卡运行? win11设置独立显卡的方法(win11玩游戏怎样)

  • 四个 Linux 下的“护眼”软件解析(linux-4.4)

    四个 Linux 下的“护眼”软件解析(linux-4.4)

  • liveupdate.exe是什么进程 有什么用 liveupdate进程查询(live updater)

    liveupdate.exe是什么进程 有什么用 liveupdate进程查询(live updater)

  • Print.js实现打印pdf,HTML,图片(可设置样式可分页)(print-js)

    Print.js实现打印pdf,HTML,图片(可设置样式可分页)(print-js)

  • 【论文导读】- Subgraph Federated Learning with Missing Neighbor Generation(FedSage、FedSage+)(论文导读怎么做)

    【论文导读】- Subgraph Federated Learning with Missing Neighbor Generation(FedSage、FedSage+)(论文导读怎么做)

  • basename命令 显示文件路径名的基本文件名(basename $1)

    basename命令 显示文件路径名的基本文件名(basename $1)

  • 递延所得税资产和负债怎么计算
  • 营业税金及附加怎么计提
  • 免税农产品发票开具时税率怎么选
  • 累计增长量可以为负数吗
  • 受托代销商品款是什么科目
  • 外地施工如何找工人
  • 销售收入做账属于什么凭证
  • 同一笔业务可以开多张发票吗
  • 中介行业风险
  • 基金投资债券会赔吗
  • 小规模纳税人季报还是月报?
  • 金税盘付费
  • 出口退税申报系统汇率修改
  • 品质问题扣供应商款
  • 专利权转让的净收益计入
  • 开出产品折扣的发票怎么入账?
  • 公司买了股票怎么做账
  • 广告位租赁交印花税吗
  • 增值税普通发票税率
  • 2018年工会经费返还比例
  • 未分配利润怎么处理
  • 仓库多入库怎么退
  • 其他应付款的会计英文
  • 处理固定资产开什么发票
  • 应交税费有余额怎么结转
  • 购车发票怎么做分录
  • 货物赔偿款会计分录
  • 怎么操作win10系统
  • 广告法 保险公司承保
  • 一般纳税人接受固定资产投资时相关的科目可能有
  • 详谈php编码转换过程
  • 公司已经改名原来的公章还有效吗
  • PHP:stream_get_line()的用法_Stream函数
  • 高手成长礼包
  • 房产开发企业涉及税种
  • “Property or method “***“ is not defined on the instance but referenced during render.”报错的原因及解决方案
  • 预支员工报销费用会计科目
  • Yii2中使用asset压缩js,css文件的方法
  • 活动补助会计分录
  • 认缴制对实务操作的可能影响有哪些?
  • mongodb使用案例
  • 员工高铁票能抵扣吗
  • 个人所得税租房专项扣除标准
  • 小规模纳税人转一般纳税人的条件
  • 无法收回的应收账款可以税前扣除吗
  • 租赁存在的原因有哪些
  • 固定资产清理会计处理
  • 联营扣点业务会亏钱吗
  • 企业应收账款的规模受哪些因素的影响?( )
  • 资产负债表中没有其他应收款
  • 购入固定资产预计净残值
  • 差旅费车票是否可以报销
  • 小规模纳税人计算公式
  • 计提时的会计分录
  • 公司奖励给部门的奖励
  • eclipse连接mysql代码
  • 一个报表的格式主要包括( )
  • mysql5.5创建用户
  • win7旗舰版无法安装net4.0
  • linux me
  • win10系统命令大全
  • 网卡被禁用一启动就死机
  • 内存 服务器
  • win7ghost纯净版美化版
  • python编程
  • js编程中要使用到函数,分为哪几步?
  • 批处理技术有哪些
  • js动态生成函数
  • jq点击图片让图片进行切换
  • shell中echo命令详解
  • javascript编程基础
  • shell 捕获输出结果
  • unityui
  • jquery 3.5
  • 国家税务总局山西省电子税务局
  • 煤炭开什么发票
  • 稳岗补贴是否需在企业所得税汇算时调增
  • 软件销售税率13还是6还是9
  • 要深化税收制度改革健全
  • 增值税发票报税流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设