作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用tensorflow 2.0 API,我从所有图像路径创建了一个数据集,如下例所示
X_train, X_test, y_train, y_test = train_test_split(all_image_paths, all_image_labels, test_size=0.20, random_state=32)
path_train_ds = tf.data.Dataset.from_tensor_slices(X_train)
image_train_ds = path_train_ds.map(load_and_preprocess_image, num_parallel_calls=AUTOTUNE)
但是,当我运行此代码以使用 keras ImageDataGenerator 应用一些参数时,出现错误
datagen=tf.keras.preprocessing.image.ImageDataGenerator(featurewise_center=True,
featurewise_std_normalization=True,
rotation_range=20,
width_shift_range=0.2,
height_shift_range=0.2,
horizontal_flip=True)
datagen.fit(image_train_ds)
错误:
/usr/local/lib/python3.6/dist-packages/keras_preprocessing/image/image_data_generator.py in fit(self, x, augment, rounds, seed)
907 seed: Int (default: None). Random seed.
908 """
--> 909 x = np.asarray(x, dtype=self.dtype)
910 if x.ndim != 4:
911 raise ValueError('Input to `.fit()` should have rank 4. '
/usr/local/lib/python3.6/dist-packages/numpy/core/numeric.py in asarray(a, dtype, order)
499
500 """
--> 501 return array(a, dtype, copy=False, order=order)
502
503
TypeError: float() argument must be a string or a number, not 'ParallelMapDataset'
最佳答案
tf.keras.preprocessing.image.ImageDataGenerator
不适用于 tf.data.Dataset
对象,它被设计用于处理普通的旧图像。
如果你想应用增强,你必须使用 tf.data.Dataset
对象本身(通过各种 .map
调用)或者您可以创建一个 tf.data.Dataset
使用 tf.keras.preprocessing.image.ImageDataGenerator
创建增强数据集后的对象.
关于keras - 如何将tensorflow2.0数据集与keras ImageDataGenerator一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55616024/
我是一名优秀的程序员,十分优秀!