Количество изображений равно нулю

#python #tensorflow-lite #google-codelab

Вопрос:

Я пытаюсь создать модель классификации изображений с помощью приложения tensorflow lite для Android здесь: https://www.tensorflow.org/tutorials/images/classification Однако я использую свой локальный каталог.

Вот мой код:

 import matplotlib.pyplot as plt import numpy as np import os import PIL import tensorflow as tf  from tensorflow import keras from tensorflow.keras import layers from tensorflow.keras.models import Sequential  import pathlib data_dir = pathlib.Path('C:/Users/aalroumi/Documents/MLKIT/V')  image_count = len(list(data_dir.glob('*/*.JPEG'))) print(image_count)  

а вот изображение вывода:

![][1]

а это изображение моего локального каталога:

Так почему же я получаю нулевой размер изображения?

Я что-то упускаю? Я все сделал правильно.

Потому что я пытаюсь files.download('model.tflite')

Размер изображения равен нулю погрешности:

Спасибо

Комментарии:

1. В вашем шаблоне глобуса есть косая черта, подразумевающая, что изображения должны находиться в подкаталогах, но, похоже, это не так. Может ли это быть так?

2. Это действительно так. Он показывает количество изображений, но опять же, когда я загружаю, почему он показывает, что размер изображения равен нулю? если вы видите, что я редактирую свой ответ, и он показывает ошибку на изображении. Спасибо вам за помощь, хотя и за предыдущий запрос.

3. всегда указывайте код, данные и полное сообщение об ошибке в виде текста (не скриншот, не ссылка) в вопросе (не в комментарии).

4. сначала вам следует проверить документацию from_folder — возможно, она загружается только .jpg , но у вас есть .JPEG . ИЛИ, может быть, для этого нужна специальная упаковка с изображениями и этикетками.

5. на основе исходного кода from_folder(data_dir) нужны изображения во вложенных папках , которые используются в качестве меток — data_dir/label1/*.jpeg и т. Д, data_dir/label2/*.jpeg

Ответ №1:

Похоже, у вас есть изображения непосредственно внутри data_dir , поэтому вы должны использовать *.JPEG их для их ввода glob()


Но from_folder(data_dir) ожидает изображения во вложенных папках, имена которых будут использоваться как labels для изображений.

т.е..

 data_dir/cat/small_cat.JPEG data_dir/cat/big_cat.JPEG # ... data_dir/dog/white_dog.JPEG data_dir/dog/black_dog.JPEG  

но у вас нет вложенных папок, поэтому он не может найти изображения во вложенных папках.
Он не учитывает изображения непосредственно в data_dir