InvalidArgumentError:预期“tf.Tensor(False,shape =(),dtype = bool)”为true。汇总数据:b'没有文件匹配模式:

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

当我在 Google colab 上运行以下代码时,

tf.data.Dataset.list_files('/content/gdrive/MyDrive/Experiment/train/*.jpg')

我收到以下错误:

InvalidArgumentError                      Traceback (most recent call last)
<ipython-input-4-8d9cebdfe01f> in <module>()
----> 1 tf.data.Dataset.list_files('/content/gdrive/MyDrive/Experiment/train/*.jpg')

3 frames
/usr/local/lib/python3.7/dist-packages/tensorflow/python/ops/control_flow_ops.py in Assert(condition, data, summarize, name)
    162           op=None,
    163           message="Expected '%s' to be true. Summarized data: %s" %
--> 164           (condition, "\n".join(data_str)))
    165     return
    166 

InvalidArgumentError: Expected 'tf.Tensor(False, shape=(), dtype=bool)' to be true. Summarized data: b'No files matched pattern: /content/gdrive/MyDrive/Experiment/train/*.jpg'

过去两周我一直被这个问题困扰,请帮助我。另外,在运行上述代码之前,我已经成功安装了 Google 驱动器。

python tensorflow deep-learning tensorflow2.0 tensorflow-datasets
3个回答
0
投票

您的文件名中可能存在一些无效字符,例如:.,* 删除这些字符解决了我的问题。


0
投票

我可能迟到了这篇文章,但我也遇到过这个问题。问题出在文件路径上。

尝试更改文件路径

tf.data.Dataset.list_files('/content/gdrive/MyDrive/Experiment/train/*.jpg')

tf.data.Dataset.list_files('./content/gdrive/MyDrive/Experiment/train/*.jpg)

希望有帮助!!


-1
投票

这是我正在使用的示例。

from google.colab import drive
drive.mount('/content/drive')

def load_image(filepath):
    raw_img = tf.io.read_file(filepath) 
    img_tensor_int = tf.image.decode_jpeg(raw_img, channels=3)
    img_tensor_flt = tf.image.convert_image_dtype(img_tensor_int, tf.float32)
    return img_tensor_flt, img_tensor_flt

def load_dataset(split):
    print('/content/drive/MyDrive/CelebAsubset/'+split+'/*.jpg')
    train_list_ds = tf.data.Dataset.list_files('/content/drive/MyDrive/CelebAsubset/'+split+'/*.jpg', shuffle=False)
    train_ds = train_list_ds.map(load_image)
    return train_ds

train_ds = load_dataset('train')
val_ds = load_dataset('val')

test_ds = load_dataset('test')
© www.soinside.com 2019 - 2024. All rights reserved.