python使用model = tf.keras.models.load_model('model_cnnfzc.h5')加载cnn训练模型后,如何应用于图片识别(具体要用到的语句等)
时间: 2024-04-09 11:28:11 浏览: 4
加载训练好的CNN模型后,可以使用以下代码应用于图片识别:
```python
import cv2
import numpy as np
import tensorflow as tf
# 加载模型
model = tf.keras.models.load_model('model_cnnfzc.h5')
# 读取图片
image = cv2.imread('image.jpg')
# 调整图片大小为模型输入的尺寸
image = cv2.resize(image, (32, 32))
# 将图片转换为模型所需的格式(例如,如果模型输入为RGB图像,需要将图片转换为RGB格式)
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
# 扩展维度以匹配模型的输入形状
image = np.expand_dims(image, axis=0)
# 预测图片
predictions = model.predict(image)
# 获取预测结果的索引
predicted_class = np.argmax(predictions, axis=1)
# 打印预测结果
print("Predicted class:", predicted_class)
```
在上述代码中,假设模型输入为32x32像素的图片,加载模型后,通过`cv2.imread`读取待识别的图片,并使用`cv2.resize`调整图片大小为模型输入的尺寸。然后,根据模型的输入要求,进行必要的格式转换和维度扩展。最后,通过`model.predict`对图片进行预测,获取预测结果的索引,并打印出预测类别。
请注意,根据你的具体模型和应用场景,代码中的图片读取、大小调整、格式转换等部分可能需要适当修改。