Fastai 中的图像增强
Image augumentation in Fastai
我想使用Fastai的图像数据集。
tfms = get_transforms(max_rotate=25)
data = ImageDataBunch.from_folder("/content/drive/My Drive/Colab Notebooks/images", valid_pct=0.2, size=224)
data.normalize()
我成功加载了图像,但现在我不知道如何使用 Fastai 进行增强和保存生成的图像。
增强可以是改变亮度、水平转动图像等。例如,改变亮度可以通过以下方式完成:
tfms = [brightness(change=(0.1, 0.9), p=1.0),]
阅读博客时我感到困惑。我被困住了,我不知道如何继续。我想将此更改应用于每个图像并将它们保存到单独的目录中。
任何帮助,谢谢
我认为你做的事情几乎是正确的,但你对它们应该如何工作感到困惑。
来自我的一个例子(基本上与 first lesson in Fastai 做的一样):
transforms = get_transforms(max_rotate=20, max_zoom=1.3, max_lighting=0.4, max_warp=0.4, p_affine=1., p_lighting=1.)
不要忘记将这些转换传递给您的数据加载器!
data = ImageDataBunch.from_name_re(path_img, fnames, pat, ds_tfms=transforms, size=224, bs=64).normalize(imagenet_stats)
这将启用这些数据操作(旋转、缩放等),但这些操作不用于创建和保存新图像!相反,每次您获得一批图像时都会应用它们,从而有效地为您提供无限的数据变化。保存其中的一些变体会使您的数据集变得更重,对您没有任何帮助。
请注意,这些操作用于训练,但通常不用于推理(当您需要对真实的、看不见的数据进行预测时)。 (有一种高级技术可以推断原始图像的小批量转换。)
我想使用Fastai的图像数据集。
tfms = get_transforms(max_rotate=25)
data = ImageDataBunch.from_folder("/content/drive/My Drive/Colab Notebooks/images", valid_pct=0.2, size=224)
data.normalize()
我成功加载了图像,但现在我不知道如何使用 Fastai 进行增强和保存生成的图像。
增强可以是改变亮度、水平转动图像等。例如,改变亮度可以通过以下方式完成:
tfms = [brightness(change=(0.1, 0.9), p=1.0),]
阅读博客时我感到困惑。我被困住了,我不知道如何继续。我想将此更改应用于每个图像并将它们保存到单独的目录中。
任何帮助,谢谢
我认为你做的事情几乎是正确的,但你对它们应该如何工作感到困惑。
来自我的一个例子(基本上与 first lesson in Fastai 做的一样):
transforms = get_transforms(max_rotate=20, max_zoom=1.3, max_lighting=0.4, max_warp=0.4, p_affine=1., p_lighting=1.)
不要忘记将这些转换传递给您的数据加载器!
data = ImageDataBunch.from_name_re(path_img, fnames, pat, ds_tfms=transforms, size=224, bs=64).normalize(imagenet_stats)
这将启用这些数据操作(旋转、缩放等),但这些操作不用于创建和保存新图像!相反,每次您获得一批图像时都会应用它们,从而有效地为您提供无限的数据变化。保存其中的一些变体会使您的数据集变得更重,对您没有任何帮助。
请注意,这些操作用于训练,但通常不用于推理(当您需要对真实的、看不见的数据进行预测时)。 (有一种高级技术可以推断原始图像的小批量转换。)