日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

sklearn识别单张自定义手写数字图片

發(fā)布時(shí)間:2025/3/20 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sklearn识别单张自定义手写数字图片 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

sklearn內(nèi)置了手寫數(shù)字的數(shù)據(jù)集digits。此數(shù)據(jù)集的官方介紹在這里。摘錄如下:

Each datapoint is a 8x8 image of a digit.

Classes10
Samples per class~180
Samples total1797
Dimensionality64
Featuresintegers 0-16

整體步驟分為:訓(xùn)練——預(yù)測兩大步。用到的預(yù)測圖片如下:

?

from sklearn.linear_model import LogisticRegression from sklearn import datasets from sklearn.cross_validation import train_test_split from sklearn.metrics import confusion_matrix,accuracy_score import numpy as np import scipy import cv2 from fractions import Fraction def image2Digit(image):# 調(diào)整為8*8大小im_resized = scipy.misc.imresize(image, (8,8))# RGB(三維)轉(zhuǎn)為灰度圖(一維)im_gray = cv2.cvtColor(im_resized, cv2.COLOR_BGR2GRAY)# 調(diào)整為0-16之間(digits訓(xùn)練數(shù)據(jù)的特征規(guī)格)像素值——16/255im_hex = Fraction(16,255) * im_gray# 將圖片數(shù)據(jù)反相(digits訓(xùn)練數(shù)據(jù)的特征規(guī)格——黑底白字)im_reverse = 16 - im_hexreturn im_reverse.astype(np.int) # 加載數(shù)字?jǐn)?shù)據(jù) digits = datasets.load_digits() # 劃分訓(xùn)練集與驗(yàn)證集 Xtrain, Xtest, ytrain, ytest = train_test_split(digits.data, digits.target, random_state=2) # 創(chuàng)建模型 clf = LogisticRegression(penalty='l2') # 擬合數(shù)據(jù)訓(xùn)練 clf.fit(Xtrain, ytrain) # 預(yù)測驗(yàn)證集 ypred = clf.predict(Xtest) # 計(jì)算準(zhǔn)確度 accuracy = accuracy_score(ytest, ypred) print("識(shí)別準(zhǔn)確度:",accuracy)# 讀取單張自定義手寫數(shù)字的圖片 image = scipy.misc.imread("digit_image/2.png") # 將圖片轉(zhuǎn)為digits訓(xùn)練數(shù)據(jù)的規(guī)格——即數(shù)據(jù)的表征方式要統(tǒng)一 im_reverse = image2Digit(image) # 顯示圖片轉(zhuǎn)換后的像素值 print(im_reverse) # 8*8轉(zhuǎn)為1*64(預(yù)測方法的參數(shù)要求) reshaped = im_reverse.reshape(1,64) # 預(yù)測 result = clf.predict(reshaped) print(result)

?

注意:

  • 自定義圖片最好是png格式,因?yàn)閖pg采用的是有損壓縮算法,圖像數(shù)據(jù)會(huì)變化;
  • 訓(xùn)練數(shù)據(jù)與預(yù)測數(shù)據(jù)格式需要一致,即特征一致;
  • 上述代碼基本上是對(duì)sklearn算法的簡單調(diào)用,識(shí)別魯棒性不高,所以圖片中數(shù)字要很粗——方便識(shí)別

總結(jié)

以上是生活随笔為你收集整理的sklearn识别单张自定义手写数字图片的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。