问题标签 [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 回答
603 浏览

python - Keras - CNN - 调整数据集 - 删除有偏见的类和数据增强尝试

我对基于流行的皮肤癌图像数据集开发的模型存在困境。我必须指出我想要一些指导 -

一个。

原始数据集包含超过 10K 图像,其中近 7000 张图像属于七个类别之一。我创建了 4948 个随机图像的子集,我使用它运行了一个函数将图像转换为列表列表 - 第一个列表包含图像,后者包含类以及关闭任何属于类的图像(5 - +6800K 图像的类)。思考过程是规范跨类的分布。

使用输出(6 个神经元而不是 7 个神经元的密集层)重新运行原始模型 - 检索错误。

我是否错过了向模型“指示”只有六个可能的类的步骤?该模型仅在输出层有七个神经元时运行。

错误:

B.

我正在尝试添加数据增强,因为考虑到类的数量和跨类图像的稀疏性,数据集相对较小。一旦我尝试运行生成器,我就会收到下面的错误消息,表明validation_data元组中的一个变量有问题。我无法理解问题所在。

测试集的示例值如下所示:

错误:

代码:

0 投票
1 回答
4665 浏览

python-3.x - 如何在不循环的情况下将数据扩充后的图像保存在新文件夹中

我正在尝试将我的增强图像保存在一个文件夹中,但循环正在执行无限次。我的文件夹中有 5000 张图像,但我得到的增强图像的数量是无限的。我的目标是获得相同数量的增强图像,即 5000。

谢谢

0 投票
1 回答
409 浏览

python-3.x - 如何将图像附加到 Keras 网络内的列表中

我想将 ImageDataGenerators 获取的图像附加到两个不同的列表中。我相信我可以使用 lambda 层做到这一点,但我收到一条错误消息。有关玩具示例,请参见下面的代码。您可以使用任何一组图像来运行代码。我使用了这里找到的猫狗数据集:“ https://download.microsoft.com/download/3/E/1/3E1C3F21-ECDB-4869-8368-6DEBA77B919F/kagglecatsanddogs_3367a.zip

0 投票
1 回答
224 浏览

python - 为什么“imgaug Flipud”不适用于多边形?

在这里,augmentor 给出与原始坐标相同的多边形坐标。它适用于 Fliplr 和 Affine,但不知何故不适用于 Flipud。我也尝试过带有边界框的 Flipud,它工作正常。

0 投票
0 回答
164 浏览

machine-learning - 具有数据增强功能的 Keras(几乎)不会收敛

我目前正在玩 Keras 中的数据增强。我的模型如下所示:

lambda 层基本上是缩放图像。

训练工作正常,但是,我没有足够的数据,因此,泛化很糟糕。因此,我尝试了数据增强。

但现在拟合不再收敛

我手动检查了生成的图像,它们看起来不错

0 投票
2 回答
1272 浏览

pytorch - PyTorch 数据增强耗时过长

对于涉及回归的任务,我需要训练我的模型从 RGB 图像生成密度图。为了增加我的数据集,我决定水平翻转所有图像。就此而言,我还必须翻转我的真实图像,我也这样做了。

但问题是:出于某种原因,PyTorch transforms.RandomHorizo​​ntalFlip 函数仅将 PIL 图像(不允许使用 numpy)作为输入。所以我决定将类型转换为 PIL Image。

是的,这个操作需要大量的时间。考虑到我需要对数千张图像执行此操作,每批 23 秒(最多应该不到半秒)是不能容忍的。

如果有任何建议可以加快我的增强过程,我将不胜感激

0 投票
1 回答
419 浏览

deep-learning - 使用 PyTorch 将训练数据集拆分为 CIFAR10 的训练集和验证集后,如何增加数据?

在 PyTorch 中对 CIFAR10 进行分类时,通常有 50,000 个训练样本和 10,000 个测试样本。但是,如果我需要创建一个验证集,我可以通过将训练集拆分为 40000 个训练样本和 10000 个验证样本来实现。我使用了以下代码

通常,在 PyTorch 中扩充数据时,在 transforms.Compose函数下会使用不同的扩充过程(即,transforms.RandomHorizo​​ntalFlip())。但是,如果我在拆分训练集和验证集之前使用这些增强过程,则增强数据也将包含在验证集中。有什么办法,我可以解决这个问题吗?

简而言之,我想将训练数据集手动拆分为训练集和验证集,并将数据增强技术用于新的训练集。

0 投票
1 回答
112 浏览

python - 文档图像有哪些好的数据增强技术?

我有 1000 份 png 格式的简历,我正在实施 MaskRcnn 进行对象检测。我可以使用哪些数据增强技术来提高 mask Rcnn 的性能?

0 投票
1 回答
135 浏览

machine-learning - 在多标签图像分类的背景下,将随机裁剪作为一种数据增强技术是否可行?

我已经阅读了 kaggle 中关于多标签图像分类的2 个顶级解决方案。在我阅读的两场比赛中,都进行了随机裁剪。对我来说,这似乎是一个糟糕的举动,因为我们可能在标签和裁剪图像之间存在不匹配。这是两个链接

1.人类蛋白质图谱图像分类

2. iMet 系列 2019 - FGVC6

如果裁剪的原因是使用的模型架构的输入大小图像约束,那么调整图像大小而不是裁剪图像不是更好吗?

0 投票
2 回答
1630 浏览

tensorflow - Keras `ImageDataGenerator` 图像和蒙版的增强方式不同

我正在使用带有 TensorFlow 后端的 Keras 训练语义分割模型。我采用ImageDataGenerator做图像增强,包括旋转、翻转和移位。通过遵循文档,我创建了一个字典maskgen_args并将其用作实例化两个ImageDataGenerator实例的参数。

训练数据生成器如下完成,通过设置seed相同的值,掩码将匹配图像。

到目前为止,没有出现任何问题。但是由于我只需要对图像而不是掩码进行一些额外的预处理(例如标准化),因此我创建了另一个imagegen_args字典并在实例化ImageDataGenerator.

当我检查 的输出时training_data_generator,出现了问题:似乎图像和蒙版是分别生成的:它们肯定有随机旋转,但它们以不同的角度旋转,与以前不同。这是食物图像和食物掩码的示例。

不一致

我检查了idimage_datagenmask_datagen两种情况id都不同。我想知道为什么第一种情况他们可以以相同的随机角度旋转图像和蒙版,但不能在第二种情况下?当我确实需要提供额外的参数时,我应该怎么做才能让它们表现得像第一种情况image_datagen