我的深度学习主题是将图像分为 5 个不同的类别。我使用 ImageDataGenerator 库将我的数据集拆分为训练和测试。否定了创建需要大量手动工作的 csv 文件的需要。我已经成功开发了一个遵循 CNN 方法的模型架构,并在测试数据集上评估了我的模型的性能,这给了我 83% 的准确率。现在,当我尝试预测我的模型对图像进行分类时,这是它给出的错误:
ValueError Traceback (most recent call last)
<ipython-input-147-51d5b018a219> in <module>()
11 images = np.vstack([X])
12 val = model.predict(images)
---> 13 if val == 0:
14 print("Clean")
15 elif val ==1:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
这是我的代码:
import os
test_dir = 'directory containing random images'
for i in os.listdir(test_dir ):
img = image.load_img(test_dir+ '/'+i, target_size=(200,200))
plt.imshow(img)
plt.show()
X = image.img_to_array(img)
X = np.expand_dims(X,axis = 0)
images = np.vstack([X])
val = model.predict(images)
if val == 0:
print("Clean")
elif val ==1:
print("Covered In Bird Droppings")
elif val ==2:
print ("Covered In Dust")
elif val ==3:
print("Covered In Grey Sand")
elif val ==4:
print("Covered In Sand")
我对如何解决这个问题一无所知。