Я обучил CNN и пытаюсь предсказать новые невидимые (немаркированные) изображения из папки. Я пытаюсь предсказать их на 2 класса (положительный, отрицательный), используя ниже:
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:
X.append(cv2.resize(cv2.imread(image, cv2.IMREAD_COLOR), (299, 299), interpolation=cv2.INTER_CUBIC))
return X
X_test = read_and_process_image(test_imgs[0:10])
x = np.array(X_test)
test_datagent = ImageDataGenerator(rescale=1./255)
Я не могу понять, как сохранить все предсказанные изображения в цикле в соответствующие папки классов ('neg' или 'pos'). Кроме того, когда я рисую их, я вижу, что синий цвет больше проявляется в предсказанных изображениях, и я не уверен, будут ли они сохранены в голубоватом формате.
class_names = ['neg','pos']
i = 0
text_labels = []
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.imsave("/path/to/save-folder/ {}.jpg",batch[0])
plt.subplot(5 / 5 + 1, 5, i+1)
plt.title(class_names[np.argmax(pred[j])])
imgplot = plt.imshow(batch[0])
i +=1
if i % 10 == 0:
break
plt.show()
Я действительно не знаю, как поступить с этого момента, и любая помощь будет принята с благодарностью.