Я работаю над сценарием Python, чтобы изменить размеры всех моих изображений в каталоге до заданной ширины и высоты.моя проблема в том, что он не правильно читает мое изображение при использовании cv2.resize ().Я знаю, что в Интернете есть решения, которые я могу просто скопировать и вставить и быть в пути, но я не учусь так.Любая помощь очень ценится, потому что я здесь, чтобы не только смеяться, но и учиться.
Я просмотрел каталог, убедившись, что он действительно видит имя файла и расширение.вместо того, чтобы использовать height = 28 и width = 28, я попытался использовать height = np.size (img, 0) и width = np.size (img, 1)
# This is my code. I loop through my directory of images using i to represent the file and attempt to resize it to 28x28
import cv2
import os
import numpy as np
width = 28
height = 28
for i in os.listdir("C:/Users/ryan/PycharmProjects/ML_Projects_fixed/Red"):
img = cv2.imread(i)
img = cv2.resize(img, (width, height))
cv2.imwrite(i, img)
Мне выдается эта ошибка, котораядля меня означает, что я не вижу изображение:
Traceback (последний вызов был последним): файл "C: /Users/ryan/PycharmProjects/ML_Projects_fixed/resize_test.py", строка 10, в cv2.resize(img, (ширина, высота)) cv2.error: OpenCV (4.1.0) C: \ projects \ opencv-python \ opencv \ modules \ imgproc \ src \ resize.cpp: 3718: ошибка: (-215: утверждение не выполнено)! ssize.empty () в функции 'cv :: resize'
Но когда я делаю
for i in os.listdir("C:/Users/ryan/PycharmProjects/ML_Projects_fixed/Red"):
print(i)
, я получаю все свои имена файлов + там пример расширения: 096.png 097.png098.png 099.png
Так почему же он говорит мне, что не видит изображения?
edit 1;
for i in os.listdir("C:/Users/ryan/PycharmProjects/ML_Projects_fixed/Red"):
img = cv2.imread(i)
print(img)
этот цикл печатает None для всех изображений.это означает, что это проблема пути?
edit 2;Спасибо за ответ Гезе Кереценьи, он решил мой вопрос.мой цикл не находил указанный файл, он только считывал имя файла, поэтому, если он не находился в том же пути, где я запустил свой сценарий, не было бы способа его увидеть.
Спасибо всем комментариям