Ошибка: поднять ValueError («неизвестное расширение файла: {}». Format (ext)) при попытке сохранить несколько изображений из словаря. - PullRequest
0 голосов
/ 04 октября 2019

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

Итак, я создал словарь, в котором каждая строка и столбецКартинка обозначает определенный кусок обрезанной картинки. Я пытался сохранить все эти фотографии, но у меня возникли проблемы, как будто он не видит, что это картинка.

После этого я хочу снова открыть все картинки и посчитать количество зеленого пикселя здесь.

def splitting(...)
      ...
      dic[(i, j)] = im.crop((left, top, right, bottom)
return dic
all_images = spliting(img, 3, 5)

вот где у меня проблема

#saving all cropped images

for key in all_images:
    all_images[key].save("%d_%d" %(key[0], key[1]))

#counting the pixels in the cropped images

BLACK_MIN = np.array([0, 20, 20], np.uint8)
BLACK_MAX = np.array([120, 255, 255], np.uint8)

for img1 in ("%d_%d" %(key[0], key[1])):
    img2 = cv2.imread(img1, 1)
    dst = cv2.inRange(img2, BLACK_MIN, BLACK_MAX)
    no_black = cv2.countNonZero(dst)
    print('The number of black pixels is: ' + str(no_black))

Я получаю эту ошибку

Traceback (most recent call last):
  File "C:\Users\arnol\PycharmProjects\untitled\venv\lib\site-packages\PIL\Image.py", line 2064, in save
    format = EXTENSION[ext]
KeyError: ''

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:/Users/arnol/PycharmProjects/untitled/t4.py", line 29, in <module>
    all_images[key].save("%d_%d" %(key[0], key[1]))
  File "C:\Users\arnol\PycharmProjects\untitled\venv\lib\site-packages\PIL\Image.py", line 2066, in save
    raise ValueError("unknown file extension: {}".format(ext))
ValueError: unknown file extension: 
...