創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!
這篇文章將為大家詳細講解有關用keras模型如何實現(xiàn)識別自己手寫的數(shù)字方式,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
環(huán)境:Python+keras,后端為Tensorflow
訓練集:MNIST
對于如何訓練一個識別手寫數(shù)字的神經(jīng)網(wǎng)絡,網(wǎng)上資源十分豐富,并且能達到相當高的精度。但是很少有人涉及到如何將圖片輸入到網(wǎng)絡中并讓已經(jīng)訓練好的模型驚醒識別,下面來說說實現(xiàn)方法及注意事項。
首先import相關庫,這里就不說了。
然后需要將訓練好的模型導入,可通過該語句實現(xiàn):
model = load_model('cnn_model_2.h6') (cnn_model_2.h6替換為你的模型名)
之后是導入圖片,需要的格式為28*28??捎胦pencv導入:
img = cv2.imread('temp3.png', 0) (temp3.png替換為你手寫的圖片)
然后reshape一下以符合模型的輸入要求:
img = (img.reshape(1,1,28,28)).astype("float32")/255
之后就可以用模型識別了:
predict = model.predict_classes(img)
最后print一下predict即可。
下面劃重點:因為MNIST使用的是黑底白字的圖片,所以你自己手寫數(shù)字的時候一定要注意把得到的圖片也改成黑底白字的,否則會識別錯(至少我得到的結論是這樣的 ,之前用白底黑字的圖總是識別出錯)
源碼一覽:
import cv2 import numpy as np from keras.models import load_model model = load_model('cnn_model_2.h6') image = cv2.imread('temp3.png', 0) img = cv2.imread('temp3.png', 0) img = (img.reshape(1,1,28,28)).astype("float32")/255 predict = model.predict_classes(img) print ('識別為:') print (predict) cv2.imshow("Image1", image) cv2.waitKey(0)
名稱欄目:用keras模型如何實現(xiàn)識別自己手寫的數(shù)字方式-創(chuàng)新互聯(lián)
標題URL:http://jinyejixie.com/article46/hehhg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、網(wǎng)站維護、網(wǎng)站排名、網(wǎng)站收錄、Google、營銷型網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)