json load from file_Kears模型保存为json后调用及预测

本文介绍如何使用TensorFlow和Keras加载预训练的卷积神经网络(CNN)模型,并利用该模型对猫狗图片进行分类预测。具体步骤包括:加载模型架构与权重、配置优化器、读取待测图片并进行预处理,最终通过模型输出预测结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

a8c0c816e1b19609e5c9c5f50a445e13.png
from tensorflow.keras.optimizers import Adam
from tensorflow.keras.models import model_from_json
from tensorflow.python.framework import ops
ops.reset_default_graph()
import h5py 
from PIL import Image
from tensorflow.keras.preprocessing import image
from tensorflow.keras.preprocessing.image import ImageDataGenerator
import matplotlib.pyplot as plt

import PIL
import numpy as np
#from vb100_utils import *
img = image.load_img("database/Training/Dog/1.jpg")


print('h5py version is {}'.format(h5py.__version__))

# 导入以保存好的.json CNN模型框架
json_file = open('./model.json')
loaded_model_json = json_file.read()
json_file.close()
loaded_model = model_from_json(loaded_model_json)

# 得到保存的.h5模型weights
loaded_model.load_weights('./model.h5')

opt = Adam(lr=0.00001, beta_1=0.9, beta_2=0.999, epsilon=None, decay=0.0)
loaded_model.compile(loss='categorical_crossentropy', metrics=['accuracy'], optimizer='rmsprop')


#导入需要识别的图形进行识别

dir_path = 'database/Testing'

for i in os.listdir(dir_path ):

    img = image.load_img(dir_path+'//'+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= loaded_model.predict(images)
    if val == 1 :
        print("DOG")
        
    else:
        print("CAT")
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值