[英]CNN Image Classification: It gives me always the same prediction
我是这个领域的新手,还在学习,如果它被认为是愚蠢的问题,我很抱歉。 所以最近我尝试使用 Python 和 TensorFlow 来学习图像分类。 我遵循了一些视频的教程。 但是我的代码有一些问题,因为当我尝试我的 model 时,验证损失趋于增加,而我的验证准确度一直在波动。 当我试图预测我的样本图像时,它一直给我同样的预测。 我的数据集中的图像总共有 730 张图像。
这是我进行预测的代码:
import cv2
import tensorflow as tf
CATEGORIES = ["Bike", "Car"]
IMAGE_SIZE = 50
def prepare(filepath):
image_array = cv2.imread(filepath, cv2.IMREAD_GRAYSCALE)
image_array = image_array/255.0
new_image_array = cv2.resize(image_array, (IMAGE_SIZE,IMAGE_SIZE))
return new_image_array.reshape(-1, IMAGE_SIZE, IMAGE_SIZE, 1)
model = tf.keras.models.load_model("prototype.model")
prediction = model.predict([prepare('car.jpg')])
print( CATEGORIES[int(prediction[0][0])] )
太感谢了。
我曾经遇到过类似的问题。 由于您需要将图像分类为“自行车”或“汽车”,请尝试将最终的 output 图层更改为,
model.add(Dense(2))
model.add(Activation('softmax'))
如果它仍然不起作用,请尝试sparse_categorical_crossentropy
作为你的loss
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.