9

我无法理解 keras 的 ImageDataGenerator 中剪切参数的影响是什么

我曾尝试使用图像通过 ImageDataGenerator 中的 apply_transform 成员函数应用剪切。应用此功能后,我可以看到图像似乎被旋转和拉伸。但我无法理解它到底做了什么。

from keras.preprocessing.image import ImageDataGenerator
import matplotlib.pyplot as plt
import numpy as np

(train_x, train_y) , (test_x,test_Y) = cifar10.load_data()
img = train_x[0]
img_gen = ImageDataGenerator()


shear_intensity = np.arange(0,110,10, dtype = int)

nrow = 4
ncol = 3


plt.figure(figsize = (14,14))
for i,shear in enumerate(shear_intensity):
  plt.title(f'shear intensity : {shear}')
  plt.subplot(nrow, ncol, i+1)
  plt.imshow(img_gen.apply_transform(img, {'shear' : shear}))
plt.show()

图像确实有一些变化,但我无法理解效果。

4

1 回答 1

16

“剪切”意味着图像将沿轴扭曲,主要是为了创建或纠正感知角度。它通常用于增强图像,以便计算机可以看到人类如何从不同角度看待事物。 剪切示例

于 2019-08-01T03:33:44.107 回答