Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 保留现有标签的数据扩充_Python_Image Processing_Keras_Dataset_Data Augmentation - Fatal编程技术网

Python 保留现有标签的数据扩充

Python 保留现有标签的数据扩充,python,image-processing,keras,dataset,data-augmentation,Python,Image Processing,Keras,Dataset,Data Augmentation,问题陈述 我在一个项目中使用YOLO模型检测给定图片中的工具。例如锤子、螺丝刀、螺栓等。我只有100张图片作为训练数据集,并且我使用多边形标记它们。我已经决定用下面给定的代码扩充数据。我有500张新图片,但问题是我不想再给它们贴标签了。我正在寻找任何方法,标签边界框(多边形)调整(保留)与新闻增强图像,以便我可以得到多边形数据,而无需再做标签。简而言之,我希望在图像增强过程中保留标签 用于扩充的代码 亮度=[0.7,0.8,1]#不同的亮度级别 旋转=[10,-10]#不同的旋转级别 #主链接源

问题陈述

我在一个项目中使用YOLO模型检测给定图片中的工具。例如锤子、螺丝刀、螺栓等。我只有100张图片作为训练数据集,并且我使用多边形标记它们。我已经决定用下面给定的代码扩充数据。我有500张新图片,但问题是我不想再给它们贴标签了。我正在寻找任何方法,标签边界框(多边形)调整(保留)与新闻增强图像,以便我可以得到多边形数据,而无需再做标签。简而言之,我希望在图像增强过程中保留标签

用于扩充的代码

亮度=[0.7,0.8,1]#不同的亮度级别
旋转=[10,-10]#不同的旋转级别
#主链接源
主路径=r.“/扩充”
#主道指挥
dir=os.listdir(主路径)[1:]
#从目录中读取并迭代所有图像
目录中的名称:
image=image.open(os.path.join(主路径,名称))
#从图像应用旋转
对于旋转中的j:#不同的旋转级别
旋转=图像。旋转(j)
ransImageRGBA=旋转.convert(“RGB”)
应用\u br=图像增强亮度(ransImageRGBA)
#在旋转图像中应用亮度值
对于亮度中的i:#不同的旋转级别
亮度=应用增强(i)
#下线输出
Lightness=apply_br.enhance(i).save((os.path.join(主路径,'augmented_Images',str(i)+str(j))+name))
打印('图像已成功扩充')
查看。此模块的扩展也会扩展标签。还有一件事,您现在正在做的是离线增强。你可能想看看在线扩充。然后,每个时代的图片都以不同的方式进行增强,您只需在增强的图片上进行训练。这样你就不必有太多的磁盘空间


如果您将Yolov4与darknet一起使用,图像增强将自动执行。

感谢@joosblack的建议。你能告诉我,在训练中,我应该使用什么样的尤洛夫4黑暗者来获得自动增援吗。他们的github页面非常好地解释了如何开始:
https://github.com/AlexeyAB/darknet
。默认情况下会执行图像增强。