image_dataset_from_directory 返回列表而不是数据集对象

问题描述 投票:0回答:1

我正在编写一个转换函数,该函数利用

Keras API
中的 image_dataset_from_directory 函数。在文档中,它列出了返回值是
tf.data.Dataset
对象类型,但是在打印该类型时,它返回为
list
类型。

在使用

as_numpy_iterator()
函数时,当它应该将 Dataset 对象转换为 numpy 数组时,它会抛出
AttributeError: 'list' object has no attribute 'as_numpy_iterator'
。此后,我确保满足
as_numpy_iterator()
的运行条件,即 TensorFlow 需要以 eager 模式运行(在所有 2.x 版本中默认启用),并且数据集的元素规范为 TensorSpec(它是)。我发现一个 GitHub 问题页面指出了类似的内容,但尚未解决。

下面是我定义的函数和参数(我正在使用一定数量的图像来测试我的模型,并且还不想将其拆分为子目录,因此

NoneType
labels
参数):
label_mode

	
python tensorflow dataset tensorflow2.0 tf.keras
1个回答
0
投票
img_gen = img_utils.image_dataset_from_directory( directory, labels=None, label_mode=None, shuffle=True, seed=123, validation_split=0.2, subset="both", interpolation="bilinear", data_format=None, verbose=True, )

函数返回一个

image_dataset_from_directory
对象 当
tf.data.Dataset
参数设置为
labels
时。然而,在代码中, 用于标签的值为 None。请参阅
image_dataset_from_directory

© www.soinside.com 2019 - 2024. All rights reserved.