【发布时间】:2021-02-15 09:06:18
【问题描述】:
假设我有一个小数据集。我想实现数据增强。首先我实现图像分割(在此之后,图像将是二值图像),然后实现数据增强。这是个好方法吗?
【问题讨论】:
标签: python keras image-segmentation data-augmentation
假设我有一个小数据集。我想实现数据增强。首先我实现图像分割(在此之后,图像将是二值图像),然后实现数据增强。这是个好方法吗?
【问题讨论】:
标签: python keras image-segmentation data-augmentation
对于分割和实例分割中的图像增强,您必须要么不通过操纵颜色来改变图像中包含的对象的位置,要么通过应用平移和旋转来修改这些位置。
所以,是的,这种方式可行,但您必须考虑您拥有的数据类型以及您想要实现的目标。数据增强并不是一个随时可用的过程,并且在任何地方都取得了良好的效果。
如果您有:
i 和一列j,它们被标记为其封闭对象。这意味着您的主图像I 和标签图像L 具有相同的大小,将每个像素链接到其对象标签。在这种情况下,您的数据增强会同时应用于 I 和 L,从而提供两个转换后的图像的组合。编辑: 看看CLoDSA (Classification, Localization, Detection and Segmentation Augmentor),它可以帮助你实现你的想法。
【讨论】:
如果您的数据集很小,您应该在训练期间添加数据增强。以相同的方式更改原始图像和目标(蒙版)很重要!。
例如,如果图像旋转 90 度,则其遮罩也应旋转 90 度。由于您使用的是 Keras 库,因此您应该检查 ImageDataGenerator 是否也更改了目标图像(掩码)以及输入。如果没有,您可以自己实现增强。这个存储库在这里展示了它是如何在 OpenCV 中完成的:
https://github.com/kochlisGit/random-data-augmentations
【讨论】: