![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据增强
CV干饭王
这个作者很懒,什么都没留下…
展开
-
python利用文件夹下xml格式标签文件批量裁剪出图片中的目标(文件夹、图片名称、目标框数量无限制,逐行注释)
这段时间有个小任务是提取出图片中的手部物体,然后我就用labelimg打标软件给部分图片打了标(生成xml标签文件),顺手写了个小脚本将这些目标从原图中裁剪出来,效果如下所示,感觉还可以。原始图片(实例1):裁剪效果(实例1):原始图片(实例2):裁剪效果(实例2,此处空手为打标,故未裁剪):完整代码本代码针对以下问题均有解决:1、同一xml文件有多个目标框;2、图片和xml文件在不同或相同文件夹下;3、部分图片未打标,对应的xml文件不存在;4、图片文件夹中有非图片(png,原创 2020-12-03 10:37:15 · 2888 阅读 · 11 评论 -
数据增强脚本:利用xml标签文件对正样本的目标框位置打上马赛克
用途:将原有正样本的目标打上码变成负样本代码(输入输出文件夹路径改为自己的即可):import cv2import xml.etree.ElementTree as ETimport os img_path = 'C:\\Users\\hq\\Desktop\\pikaqiu_data\\pikaqiu\\'xml_path = 'C:\\Users\\hq\\Desktop\\pikaqiu_data\\pikaqiu_xml\\'mask_img_path = 'C:\\Users\\原创 2020-05-12 16:57:18 · 305 阅读 · 3 评论 -
数据增强脚本:利用正样本和对应xml文件通过随机裁剪(绕过所有目标框)批量生成负样本
正样本图片示例(为正样本文件夹的其中一张,对应的xml目标框label为皮卡丘):示例xml文件内容:上代码(输入输出文件夹改为自己的即可,笔者预设裁剪尺寸为[64, 128, 256, 416, 608],可自定义,但一定要小于图片尺寸):from PIL import Imageimport randomimport xml.etree.ElementTree as ETcount = 0 ##计算生成图片数num=0 ## 现在对哪张图片进行裁剪(图片已经按序号顺序排原创 2020-05-12 16:47:09 · 1572 阅读 · 5 评论 -
opencv_python实现批量图片颜色变换,可用于数据增强
变换原理:HSV算法流程:cv2依次读取文件下图片rgb值,再转为hsv,通过改变hsv中的h(即色调)值改变图片的颜色,生成多张颜色变换后的图片(可用于数据增强)。废话不多说,上代码(用的时候记得将两个文件夹路径改为自己的输入和输出路径,文件夹下的图片按1,2,3,…的顺序命名):import cv2num = 0 #读取的图片序号 num_max = 7 #图片总数量hue_change = 5 #色调改变值 步长count = 0 #记录每张图片生成的数量while 1:原创 2020-05-12 16:07:28 · 2456 阅读 · 1 评论 -
pytorch(1.0以上版本)搭建生成对抗网络(GAN)实现mnist假图片生成,超级简单,附完整代码
pytorch搭建GAN网络生成mnist假图片效果如下图所示:完整代码import osimport torchimport torchvisionimport torch.nn as nnimport torch.optim as optimimport torch.nn.functional as Ffrom torchvision import datasetsfrom torchvision.utils import save_imagebatch_size = 100原创 2020-11-23 21:37:22 · 686 阅读 · 0 评论 -
torchvision.transforms.ToTensor()与torchvision.transforms.ToPILImage()详解
torchvision.transforms.ToTensor()pytorch在加载数据集时都需要对数据记性transforms转换,其中最常用的就是torchvision.transforms.ToTensor()函数,但初学者可以认为这个函数只是把输入数据类型转换为pytorch的Tensor(int64)类型,其实不然,该函数内部的具体转换步骤为:1、将图片转化成内存中的存储格式;2、将字节以流的形式输入,转化成Tensor类型;3、对Tensor进行reshape;4、对Tensor进原创 2020-12-04 10:09:10 · 5363 阅读 · 0 评论 -
数据增强脚本:python利用任意尺寸负样本图片批量制作可用于训练的空xml文件
用途:空xml负样本,用于降低目标检测测试过程中的误检率。用法:负样本图片和训练集图片放在同一个文件夹,空xml文件和训练集xml放在同一个文件夹,然后按照正常的目标检测训练流程即可完成训练。附加功能:把原有的label为背景的xml文件替换掉(主要用于比赛数据集中的背景label检索和修改)。上代码(把输入输出文件夹改为自己的即可):import osimport xml.dom.minidomimport cv2 img_path = 'C:\\Users\\hq\\Desktop原创 2020-05-12 16:32:27 · 1769 阅读 · 5 评论