Python: сохранить результаты классификации изображений при сохранении исходного имени файла - PullRequest
0 голосов
/ 08 июля 2019

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

import os
import cv2
import keras
import numpy as np

from keras.models import load_model
new_model = load_model('/path/to/mymodel.h5')

test_dir = '/path/to/test-set'
test_imgs = ['/path/to/test-set/{}'.format(i) for i in os.listdir(test_dir)]

def read_and_process_image(list_of_images):

  X = []

  for image in list_of_images:
      img = cv2.imread(image, cv2.IMREAD_COLOR)
      X.append(cv2.resize(cv2.cvtColor(img, cv2.COLOR_BGR2RGB), 
              (299, 299), interpolation=cv2.INTER_CUBIC))

  return X

X_test = read_and_process_image(test_imgs)
x = np.array(X_test)
test_datagent = ImageDataGenerator(rescale=1./255)

class_names = ['neg','pos']
i = 100
plt.figure(figsize=(30,20))
for batch in test_datagent.flow(x, batch_size=1):
    pred = new_model.predict(batch)
    for j in range(len(batch)):
        plt.subplot(100, 1, i+1)
        plt.title(class_names[np.argmax(pred[j])])
        imgplot = plt.imshow(batch[0])
        plt.imsave(('/path/to/output/ {}.jpg'.format(
        class_names[np.argmax(pred[j])] + str(i))), batch[j])

        i -=1
        if i == -1:
             break
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...