yolov5负样本构造:标注区域内随机裁剪等大子区域
在做目标检测的时候,模型总是会学到一些局部信息,比如总把红色的东西识别成灭火器。为了构造对抗样本,考虑在标注范围内随机裁剪子区域作为负样本。
name = 'test'label_path = path_label + name + '.txt'img_path = path_img + name + '.jpg'# print(img_path)img_none=cv2.imread(img_path)# print(img_none)ww, hh = img_none.shape[0], img_none.shape[1]# print(ww, hh)label_ = []with open(label_path, mode='r', encoding = "utf-8") as fin:finl = fin.readlines()for i in finl: #这部分是把yolov5的标注进行复原il = i.replace('\n','')il = i.split(' ')# print(int(il[0]))x,y,w,h = float(il[1]), float(il[2]), float(il[3]), float(il[4])x *= www *= wwy *= hhh *= hhx_max = int(((x+1)*2+w)/2)x_min = int(((x+1)*2-w)/2)y_max = int(((y+1)*2+h)/2)y_min = int(((y+1)*2-h)/2)label_.append([x_min, x_max, y_min, y_max])# print(x_min, x_max, y_min, y_max)j = -1for ll in label_:j += 1x_min, x_max, y_min, y_max = ll[0], ll[1], ll[2], ll[3]# print(x_min, x_max, y_min, y_max)sw = int((x_max-x_min)*0.2)sh = int((y_max-y_min)*0.2)for i in range(3): # 取3个子区域 x=random.randint(x_min, x_max-sw)y=random.randint(y_min, y_max-sh)# print('({},{})'.format(x,y))res=img_none[x:x+sw,y:y+sh] #子区域cv2.imwrite(out_path+name+'_'+str(j)+'_'+str(i)+'.jpg',res)
参考:https://blog.csdn.net/a272881819/article/details/121979255
yolov5负样本构造:标注区域内随机裁剪等大子区域相关推荐
- yolo负样本怎么标注?
yolo的label为txt,只需要创建内容为空的txt就行,否则会认为标签丢失,不送入训练. 加载时候也会进行提示: 如下,会提示8269 found, 4 missing(没有对应标签文件的), ...
- yolo 负样本_目标检测正负样本区分策略和平衡策略总结(二)
0 简介 本文抛弃网络具体结构,仅仅从正负样本区分和正负样本平衡策略进行分析,大体可以分为正负样本定义.正负样本采样和平衡loss设计三个方面,主要是网络预测输出和loss核心设计即仅仅涉及网络的he ...
- php开发是可视的吗,javascript,html_Jquery判断页面元素是否在浏览器的可视区域内,javascript,html,css,html5 - phpStudy...
Jquery判断页面元素是否在浏览器的可视区域内 前端开发中,有时需要判断某个元素是否在浏览器的可视区域内,或者是否已经滚动出了可视区域.首先想到的便是javascript操作,原生方法自然可以,不过 ...
- 背景区域为负样本什么意思_词向量-skipgram与负采样
大纲: 1. onehot vs 分布式表示 2. 分布式表示的全局泛化能力 3. how to learn word2vec - intuition 4. SkipGram 5. SkipGram ...
- SVM+HOG:从完全不包含人体的图片中随机剪裁出64*128大小的用于人体检测的负样本
进行行人检测的分类器训练时,负样本是从完全不包含人体的图片中随机剪裁出来的,下面程序的目的就是这个:1张负样本图片生成10张 准备工作:创建负样本描述文件(全路径)ifstream fin(" ...
- small用于不连续数组_Excel公式技巧19: 在方形区域内填充不重复的随机整数
学习Excel技术,关注微信公众号: excelperfect 本文分享一个基于公式生成n×n随机整数的解决方案,并且每个整数都是唯一的.例如,下图1显示了生成10行10列的不重复随机整数. 图1 解 ...
- 编写一个Applet,随机选择矩形、圆形、椭圆、直线等形状,在可视区域内绘制20个图形,同一种图形使用同一种颜色,不需要填充。
编写一个Applet,随机选择矩形.圆形.椭圆.直线等形状,在可视区域内绘制20个图形,同一种图形使用同一种颜色,不需要填充. package p2;import java.applet.Applet ...
- 编写一个Applet,画出20条水平的、随机颜色的平行线。要求线的长度相同,整条线段都要在可视区域内
编写一个Applet,画出20条水平的.随机颜色的平行线.要求线的长度相同,整条线段都要在可视区域内. ` package p2; import java.applet.Applet; import ...
- 百度地图高级实例2-如何利用自己的数据制作社交地图?只显示可视区域内的标注
摘要:如果你自己的数据已经超过1万个,如何进行合理的显示?除了聚合marker外,还有一个办法.那就是,只显示可视区域内的标注. ----------------------------------- ...
最新文章
- Android 获取手机的UUID
- python初始化方法对应的变量是全局变量嘛_在Python中初始化全局变量的正确方法...
- 以太网RJ45 接线标准 线序(备忘)
- 【Java】Collection集合和泛型
- java自带函数_java8中内置的四大核心函数式接口
- 从soso改版说如何针对soso做优化
- TechNet Magazine/TechNet杂志
- Fiddler抓包原理讲解以及实例操作
- Oracle 的 Round函数详解
- layui标签输入框inputTags
- 单片机闪灯c语言,PIC单片机入门之闪灯程序
- 高防服务器高防ip高防cdn和现在的云防护用哪种好呢
- 一次性下载《R语言实战2》全书的R包及常用的R包
- 3D设计软件中怎么画锥齿轮?浩辰3D设计实例
- Solidity基础教程2——Safemath
- B. Sheldon and Ice Pieces
- 微软Windows Azure项目交流会小记
- ubuntu18.04重新安装nvidia驱动
- 使用LVS和Keepalived搭建高可用负载均衡服务器集群
- 解析html xml最好的模块,解析--import--htmllib--xml