想要将目录中的图像转换为tf.dataset.Dataset格式的Tensor,所以=〉tf.keras.utils.image_dataset_from_directory:* 从目录中的图像文件生成tf.data.Dataset *
labels:“inferred”(标签从目录结构中生成)、None(无标签)、或与目录中找到的图像文件数量相同大小的整数标签列表/元组。标签应根据图像文件路径的字母数字顺序进行排序(通过Python中的os.walk(directory)获得)。[来自文档]
首先我把标签编码
from sklearn.preprocessing import LabelEncoder
encoder = LabelEncoder()
y_train = encoder.fit_transform(list(y_train["breed"]))
然后在使用时
train_ds = tf.keras.utils.image_dataset_from_directory(
TRAIN_IMG_PATH,
labels=y_train,
label_mode='int',
validation_split=0.2,
subset="training",
seed=123,
image_size=(img_height, img_width),
batch_size=batch_size
)
得到错误
/opt/conda/lib/python3.7/site-packages/keras/utils/image_dataset.py:163: FutureWarning: elementwise comparison failed; returning scalar instead, but in the future will perform elementwise comparison
if labels not in ("inferred", None):
...
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
1条答案
按热度按时间fd3cxomn1#
试试这个,我想它会起作用的。如果你遇到问题,让我知道