人工智能Keras图像分类器(CNN卷积神经网络的图片识别篇)
上期文章我们分享了人工智能Keras图像分类器(CNN卷积神经网络的图片识别的训练模型),本期我们使用预训练模型对图片进行识别:Keras CNN卷积神经网络模型训练
导入第三方库
from keras.preprocessing.image import img_to_array
from keras.models import load_model
import numpy as np
import imutils
import cv2
加载图片
image = cv2.imread("examples/00000002.jpg") # 加载一个图片
orig = image.copy() # 复制图片
image = cv2.resize(image, (28, 28))# 图片resize
image = image.astype("float") / 255.0 #图片转换为0 1数据
image = img_to_array(image) # array
image = np.expand_dims(image, axis=0)# 增加一个轴
加载预训练模型
model = load_model("lenet.model")
图片识别
(notsnowman, snowman) = model.predict(image)[0]# 图片预测
# 显示标签与预测数据
label = "snowman" if snowman > notsnowman else "notsnowman"
proba = snowman if snowman > notsnowman else notsnowman
label = "{}: {:.2f}%".format(label, proba * 100)
显示图片
output = imutils.resize(orig, width=400)
cv2.putText(output, label, (10, 25), cv2.FONT_HERSHEY_SIMPLEX,
0.7, (0, 255, 0), 2)
cv2.imshow("Output", output)
cv2.waitKey(0)