目标检测拉近镜头数据增强
import cv2
import random
import oscount = 0
for ind in range(3):for dir in os.listdir('/home/lixuan/桌面/back/coco/labels/train'):try:image = cv2.imread('/home/lixuan/桌面/back/coco/images/train/{}'.format(dir.replace('txt','jpg')))if image is None:image = cv2.imread('/home/lixuan/桌面/back/coco/images/train/{}'.format(dir.replace('txt', 'JPG')))if image is None:image = cv2.imread('/home/lixuan/桌面/back/coco/images/train/{}'.format(dir.replace('txt', 'jpeg')))h, w, _ = image.shapeX, Y = w // 2, h // 2boxss = []clss = []with open('/home/lixuan/桌面/back/coco/labels/train/{}'.format(dir)) as f:datas = f.readlines()for data in datas:data = data.strip().split(' ')clss.append(data[0])x = float(data[1]) * wy = float(data[2]) * hw_ = float(data[3]) * wh_ = float(data[4]) * h# x1 = int(x - w_ // 2)# y1 = int(y - h_ // 2)# x2 = int(x + w_ // 2)# y2 = int(y + h_ // 2)# boxs.append([x1,y1,x2,y2])boxss.append([x, y,w_,h_])dx, dy = random.randint(-(w // 10), w // 10), random.randint(-(h // 10), h // 10)X_new, Y_new = X + dx, Y + dy# boxs[0],boxs[2],boxs[1],boxs[3] = boxs[0] + dx,boxs[2] + dx,boxs[1] + dy,boxs[3] + dy# boxs[0], boxs[1] = boxs[0] + dx, boxs[1] + dyW, H = random.randint(w // 2, w - abs(dx)), random.randint(h // 2, h - abs(dy))x1 = max(X_new - W // 2, 0)y1 = max(Y_new - H // 2, 0)x2 = max(x1 + W, 0)y2 = max(y1 + H, 0)img = image[y1:y2, x1:x2]cv2.imwrite('/home/lixuan/桌面/back/coco/images/exp/{}.jpg'.format(count),img)fw = open('/home/lixuan/桌面/back/coco/labels/exp/{}.txt'.format(count),'w')for index,boxs in enumerate(boxss):boxs[0], boxs[1] = boxs[0] - x1, boxs[1] - y1xx = float(boxs[0])yy = float(boxs[1])ww = float(boxs[2])hh = float(boxs[3])x1_ = max(int(xx - ww // 2), 0)y1_ = max(int(yy - hh // 2), 0)x2_ = max(int(xx + ww // 2), 0)y2_ = max(int(yy + hh // 2), 0)x1_ = min(x1_, W)y1_ = min(y1_, H)x2_ = min(x2_, W)y2_ = min(y2_, H)www = x2_ - x1_hhh = y2_ - y1_centerx = (x1_ + x2_)/2centery = (y1_ + y2_)/2if www != 0 and hhh != 0:if max(www,hhh)/min(www,hhh) < 4:fw.write(clss[index] + ' ' + str(centerx/W) + ' ' + str(centery/H) + ' ' + str(www/W) + ' ' + str(hhh/H) + '\n')# img = cv2.rectangle(img, (x1_, y1_), (x2_, y2_), (255, 0, 0))# img = cv2.rectangle(img,(boxs[0],boxs[1]),(boxs[2],boxs[3]),(255,0,0))# img = cv2.circle(img, (int(boxs[0]), int(boxs[1])),10, (255, 0, 0),-1)#cv2.circle(img, (x4, y4), 3, (0, 0, 255), -1)# cv2.imshow('',img)# cv2.waitKey(0)count += 1except Exception as e:print(dir,e,'*'*30)
目标检测拉近镜头数据增强相关推荐
- 目标检测中的数据增强
目标检测中的数据增强 技术标签: 深度学习 人工智能 一.图像遮挡 ①random erase 用随机值或训练集的平均像素替换图像区域. URL: https://arxiv.org/pdf/1708 ...
- 汇总|目标检测中的数据增强、backbone、head、neck、损失函数
点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者:Tom Hardy https://zhuanlan.zhihu.com/p/137769687 ...
- 目标检测中的数据增强:mosaic,mixup,cutout,cutmix
认真读绝对不亏,不要看到全是字就 怕 了. 最近学目标检测,在看yolov4的时候,看到了mosaic数据增强方法,所以查阅了一些知识,因为网上的讲解都注重于原理,不注重详细的实现方法以及细节,而工 ...
- 目标检测 慎用旋转数据增强
目录 概述 一个具体的例子 原因分析 影响分析 总结建议 概述 在进行SSD.YOLO等目标检测类模型训练的时候,为了提升模型的识别率和泛化能力,一般会采用数据增强策略,主要包括调整图片的亮度.对比度 ...
- 目标检测中的数据增强,包括bbox的变换
检测和分类不同,检测过程中,图片处理以后,bbox往往也需要同步变换 里面碰到最坑的地方,在于cv.rectangle(),如果是对图像进行操作,一定要deepcopy 文章目录 1. 水平翻转 1. ...
- 目标检测使用的数据增强方法汇总
向AI转型的程序员都关注了这个号
- 目标检测带标签数据增强代码
注意:我的数据集名字从1开始的,所以是for i in range(1,num),所以倒数第三句 str(i + num-1) 如果是从零开始就不用-1.另外文件名以及图片大小(1280,1024)也 ...
- BBAug: 一个用于PyTorch的物体检测包围框数据增强包
本文转载自AI公园. 作者:Harpal Sahota 编译:ronghuaiyang 导读 实现了Google Research,Brain Team中的增强策略. 像许多神经网络模型一样,目标检测 ...
- 六、肺癌检测-训练指标和数据增强
上一篇文章讲了训练过程和tensorboard可视化,这一篇文章记录下训练指标和数据增强的东西. 五.肺癌检测-数据集训练 training.py model.py_wxyczhyza的博客-CSDN ...
- 3D目标检测深度学习方法数据预处理综述
作者 | 蒋天元 来源 | 3D视觉工坊(ID: QYong_2014) 这一篇的内容主要要讲一点在深度学习的3D目标检测网络中,我们都采用了哪些数据预处理的方法,主要讲两个方面的知识,第一个是rep ...
最新文章
- python做定时任务的方式及优缺点_python BlockingScheduler定时任务及其他方式的实现...
- Oracle Database 11g的使用
- 四则运算个人项目反思总结
- php底层实现也是c语言,深入php内核,从底层c语言剖析php实现原理
- 安卓怎么显示res文件夹中的html_android中自定义WebView显示网页或本地html文件 | 学步园...
- osg::ComputeBoundsVisitor用法(一)
- mybatis学习(21):MySQL 字符串 转换 CAST与CONVERT 函数的用法
- java tomcat eclipse 环境变量配置
- 正态分布表怎么查表_《深入浅出统计学》-读书笔记-再谈正态分布的应用
- 杀死 tomcat 进程的脚本
- 机器学习:维度灾难(Curse of Dimensionality)
- List集合之LinkedList
- 网易云音乐,如何修改文件品质为320Kbps
- TCP/IP常见攻击手段
- 能源消耗总量计算公式_能耗计算公式
- 开源 LighterWebGameEngine框架.外带用框架制作的 网游五彩连珠.
- 通信运营商客户流失预测
- [Windows_Server_2012优化V1.1_20140425]
- android+iphone+共用字体,【报Bug】苹果和安卓手机 字体大小颜色字重都一样 效果却不同...
- 安川e1000中文说明书_安川变频器E1000快速使用指南.pdf
热门文章
- 零代码与低代码快速开发平台的区别
- navicat报错 Access violation at address in module ‘navicat.exe‘
- OC中链式编程和函数式编程
- 【微信小程序云开发 云数据库 云函数 云存储】
- c语言韦达定理求方程解,高一上韦达定理,高次,多元方程解法.doc
- 我的美国CS面试经验分享
- Qt 6.2的下载和安装
- 关于DM MPP的搭建
- 数据库版本管理(flyway)
- [附源码]java毕业设计政府公用车辆管理系统