问题标签 [data-augmentation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
511 浏览

keras - How many images are generated by keras fit_generator?

I use keras to do image augmentation and segmentation. I want to investigate the number of images generated, so I test the following setting of arguments: (1) set batch_size as 1 in flow_from_directory when define the generator:

(2) When training, I set epochs = 1 and steps_per_epoch=1:

After training finished, I expect only 1 image and 1 mask are in the directory './view', but I actually found 11 pairs there.

What is wrong here? Did I fail to setting some arguments, or did I do something wrong?

0 投票
1 回答
906 浏览

tensorflow - Tensorflow Object Detection API 的数据增强是否会产生比原始样本更多的样本?

所以假设我的原始原始数据集有 100 张图像。我应用random_horizontal_flip了数据增强,默认情况下以 50% 的概率水平翻转。所以只是为了举例,假设它翻转了 100 张图像中的 50 张。所以,

  1. 这是否意味着我的算法现在将使用 150 个图像(100 个原始版本和 50 个翻转版本)进行训练,还是意味着它仍将使用 100 个图像进行训练,但其中 50 个将是原始图像的翻转版本?
  2. 问题 #1 的答案是否可以推广到 Tensorflow 对象检测 API 提供的所有数据增强选项?

我阅读了尽可能多的官方文档,并查看了预处理器代码,但找不到我的答案。

0 投票
2 回答
1099 浏览

data-augmentation - 验证中的数据增强

我对数据增强有点困惑。如果我在训练数据集中执行数据扩充,验证数据集应该具有相同的操作吗?例如

为什么我们在“val”数据集中进行“resize”和“CenterCrop”操作?

0 投票
1 回答
105 浏览

python-3.x - 输出变化的 Keras 数据增强

我想对图像进行回归。有道路图像和相关的转向角。因为我想在 Keras 中应用数据增强,所以我想水平翻转输入图像,但这意味着如果图像翻转,转向角必须改变其符号。据我所见,文档并未涵盖此问题。是否有教程解释如何实现这一点?

0 投票
1 回答
657 浏览

keras - ImageDataGenerator.fit() 函数在 Keras 图像预处理中的作用是什么?

有 ImageDataGenerator.flow() 函数,我们在其中传递训练图像并返回增强图像。但是 ImageDataGenerator.fit() 函数有什么作用呢?

0 投票
3 回答
261 浏览

python - Keras ImageDataGenerator:流函数参数不一致

我正在努力解决 Keras 的图像增强问题。

我定义了一个 ImageDataGenerator 来修改数据和一个流函数来将其应用于数据的概念对我来说(或似乎)很清楚。

但是为什么流函数(flow, flow_from_dataframe, flow_from_directory)彼此不同?我很清楚他们的目的:他们处理不同类型来源的数据。

我的意思是要传递的参数的差异。特别是,我想到了一个区别:对于流(我在其中增加已经加载的数据)

我无法说明插值机制。但那我不需要一个吗?

0 投票
0 回答
230 浏览

python - 在 python imgaug 库中,当对图像应用仿射变换时,如何将 cval 设置为 RGB?

从文档中, cval 参数描述如下:

用于填充结果图像中输入图像中不存在的像素的常量值(例如,当向左平移时,在右侧创建一些新像素)。

我正在尝试将其值设置为 RGB(特别是绿色)。

这是一个示例图片 我想将rhs图片中的白色背景设置为绿色

0 投票
1 回答
246 浏览

python - 如何从 keras 的图像增强 API 计算生成图像的数量

我想计算来自 Keras 的图像增强 API 生成的图像的数量。我不清楚每个设置是否也与其他设置结合使用。

我有以下设置:

旋转范围:0.2,宽度偏移:0.05,高度偏移:0.05,剪切范围:0.05,缩放范围:0.05,水平翻转:真,填充模式:最近

例如,它是对所有增强图像进行水平翻转还是只对输入图像进行水平翻转?那么具有上述参数的生成图像的总量是多少?

0 投票
1 回答
1284 浏览

python - Keras: poor performance with ImageDataGenerator

I try to augment my image data using the Keras ImageDataGenerator. My task is a regression task, where an input image results in another, transformed image. So far so good, works quite well.

Here I wanted to apply data augmentation by using the ImageDataGenerator. In order to transform both images the same way, I used the approach described in the Keras docs, where a transformation of an image with a corresponding mask is described. My case is a little bit different, as my images are already loaded and don't need to be fetched from a directory. This procedure was already described in another StackOverlow post.

To verify my implementation, I first used it without augmentation and using the ImageDataGenerator without any parameter specified. According to the class reference in the Keras docs, this should not alter the images. See this snippet:

Unfortunately, my implementation seems to have some issues. I do not get the performances expected. The validation loss is somehow stable around a certain value and only slightly decreasing (see the image below). Here I expect, as I did not use any augmentation, the same loss as the non-augmented baseline.

Comparisson of validation loss

In comparison, my training without the ImageDataGenerator looks like

I guess I got somehow mixed up with the usage of the ImageDataGenerator, the flow and the fit function. So my questions are:

  • is one of the applied functions fit or flow redundant and causes this behavior?
  • do I have an implementation problem?
  • does this implementation in general makes sense?
  • does it make sense to set the validation set fix or should it be augmented too?

Update (2019-01-23 & cont.): What I have already tried so far (in responses to answers):

  • creating an generator for the validation data as well
  • removing the applied fit function
  • setting shuffle=True in the flow function (data is already shuffled)

Neither of these approaches helped to make the results better.

0 投票
1 回答
359 浏览

deep-learning - 使用 SSD MobileNetv2 进行对象检测和高损失值的配置中的图像增强选项

我注意到,当我包含如下图像增强选项来训练我的对象检测模型时,损失值非常高,例如 30K 和 65K,这与我不使用这些选项时不同

为什么呢?请注意,我只在最初的几百步中观察到了这一点,并且婴儿没有让我的模型坐太久

65K损失值与这些

~30K 加上这些损失值