graphpad怎么修改图片大小_【旋转目标检测】修改YOLOv5旋转目标检测

3337b26a1923e2a8a0bff566835e2f58.png

最近学校安排了个比赛任务,看了一些开源的针对旋转目标检测的现有模型,但我还是决定使用yolov5,修改其模型结构以及代码,使得能够预测旋转的目标框,目前看来效果还不错。

yolo表示:用我的最弱打败你的最强。

ef2015d06761bb2756d3da4de6a73e6f.png

因为比赛还没结束,所以这里先不给大家分享。等11月比赛结束后一定给大家分享出来!


更新日期---11.11.2020---伟大的双11

啥也不说:贴上地址:BossZard/rotation-yolov5

解析过两天补上。最近比较忙,代码若有问题可评论区联系提问,尽力解决!

更新日期---1.3.2021---平凡的一天

很忙,也很懒!

针对大家遇到的很多问题,统一说一下训练自己的数据需要怎么样的流程吧。

一,制作label

由于我也不知道大家原始数据集的格式是怎么样,只能说一下该模型需要的数据格式的要求(而且,自己动手写一个,应该不难吧,还能锻炼一下各位的撸码能力呢):

8737ecb489433c40d03315e3295b3d7a.png

(类别,x,y,long side,short side,角度)

其中需要注意的几点:

  1. 类别从0开始
  2. x,y,long side,short side和yolov5相差无几,就是把wh中长的放前面罢了。
  3. 角度为矩形框的长边与水平方向轴x的夹角。-90到0度为长边绕水平轴逆时针方向,0到90度反之。并且最后将结果(-90,90)都加上90,把数值范围弄到(0,180)

二,修改配置文件

主要修改两个配置文件,一个是模型定义的类别数,在yolov5m.yaml(如果用的是m-70预训练模型,用另一个就修改yolov5l.yaml)中,修改nc的值为自己数据的类别数。

7100d5ee7cc32931238c32e7a159f1e2.png

另一个就是在wheat0.yaml里,也是修改nc的值为自己的类别数,同时也把names修改为自己类别对应的名字。

49431df34e51d7a6b9df06b8d46889c0.png

三,修改train.py文件

主要修改cfg的参数,如果用的是m-70模型预训练,default就改为models/yolov5m.yaml,如果用的是l模型,就改为models/yolov5l.yaml(相信跑过yolov5的同学都熟悉)

52aa9df17d6ef95e428bc4d539226fe1.png

其它batch-size、epoch、img-size等参数大家根据自己电脑配置设置即可。

还有其它问题的话评论区留言或者邮箱prozacliang@qq.com,最近比较忙不一定有时间看,尽量及时回复大家。继续潜水咯...

更新时间---1.4.2021---今天也是奋斗的一天

感谢git友Lai898821381在阅读代码中发现的问题哈。

修改训练计算loss的bug:因之前代码撸的太赶,因此在写compute_loss函数获取类别和角度数据时直接使用手打的index获取。因此你们就会发生当你们数据类别不是5时就报错了。抱歉,我的锅。。。github代码已改,大家只需重新下载更新utils文件夹下general.py文件即可;

最后,希望有缘人能给点个star...谢谢啦

版权声明:本文为CSDN博主「大菲哥 艺术留学」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_35133280/article/details/112467235

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

单目3D目标检测调研

单目3D目标检测调研
一、 简介 现有的单目3D目标检测方案主要方案主要分为两类,分别为基于图片的方法和基于伪雷达点云的方法。   基于图片的方法一般通过2D-3D之间的几何约束来学习,包括目标形状信息&#xff0