我就廢話不多說了,直接上代碼吧!
import matplotlib
matplotlib.use('Agg')
import os
from keras.models import load_model
import numpy as np
from PIL import Image
import cv2
#加載模型h6文件
model = load_model("C:\\python\\python3_projects\\cat_dog\\cats_dogs_fifty_thousand.h6")
model.summary()
#規范化圖片大小和像素值
def get_inputs(src=[]):
pre_x = []
for s in src:
input = cv2.imread(s)
input = cv2.resize(input, (150, 150))
input = cv2.cvtColor(input, cv2.COLOR_BGR2RGB)
pre_x.append(input) # input一張圖片
pre_x = np.array(pre_x) / 255.0
return pre_x
#要預測的圖片保存在這里
predict_dir = 'C:\python\python3_projects\cat_dog\pics'
#這個路徑下有兩個文件,分別是cat和dog
test = os.listdir(predict_dir)
#打印后:['cat', 'dog']
print(test)
#新建一個列表保存預測圖片的地址
images = []
#獲取每張圖片的地址,并保存在列表images中
for testpath in test:
for fn in os.listdir(os.path.join(predict_dir, testpath)):
if fn.endswith('jpg'):
fd = os.path.join(predict_dir, testpath, fn)
print(fd)
images.append(fd)
#調用函數,規范化圖片
pre_x = get_inputs(images)
#預測
pre_y = model.predict(pre_x)
print(pre_y)
以上這篇利用keras加載訓練好的.H5文件,并實現預測圖片就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。