摘要:手寫數字識別是圖像處理的基礎,首先需要安裝,我們需要以管理員身份打開命令行并輸入,如果提示需要更新,我們輸入先更新,這時再安裝就沒問題了。
1.手寫數字識別是python圖像處理的基礎,首先需要安裝pillow,我們需要以管理員身份打開Windows命令行并輸入pip install pillow,如果提示pip需要更新,我們輸入python -m pip install --upgrade pip先更新pip,這時再安裝pillow就沒問題了。
2.首先我們需要引入和圖片識別有關的庫,輸入from PIL import Image進行引入,引入后我們就可以打開要進行操作的圖片了,這里需要用到Image中的open()函數和save()函數,open()函數用來打開文件,save()函數用來將圖片保存為我們需要的格式。
3.然后我們需要確定圖片的長和寬,調用size()函數可以返回一個以圖片的寬和高為元素的元組,這時獲取圖片的寬和高就可以用元素下標的方式。
4.我們在識別時要得到一個用1標識出數字的文本文檔,第一個圖為我用電腦的畫圖隨便寫的數字6,第二個圖是經過識別得出的文本文檔,我們可以看出,第二個圖中用1標出了手寫體的數字6的形狀。因此我們在數字識別的過程中需要知道每一個位置的rgb編碼,這個調用getpixel()即可實現,我們知道,黑色的rgb編碼的三個數的和為0,我們要得到一個用0和1標識出來的圖像,只需在rgb編碼數之和為0的位置寫入1,其余不為0的位置寫入0。
5.編碼實現:
from PIL import Image im = Image.open("C:/Users/21974/Desktop/handwrite.PNG") im.save("C:/Users/21974/Desktop/handwrite.bmp") df = open("C:/Users/21974/Desktop/practicePil.txt", "a") #打開一個文本用于接下來的寫入操作 width = im.size[0] height = im.size[1] for i in range(0, width): for j in range(0, height): k = im.getpixel((i, j)) #注意此處為兩個括號,第二個括號內代表坐標為(i,j)處的色彩元素 sum = k[0]+k[1]+k[2] #rgb編碼的三個數字相加 if sum == 0: df.write("1") else: df.write("0") df.write(" ") df.close()
運行即可得到以0和1繪制的文本圖像。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/43002.html
摘要:在本次課程中,著重講解的是傳統的機器學習技術及各種算法。回歸對連續型數據進行預測趨勢預測等除了分類之外,數據挖掘技術和機器學習技術還有一個非常經典的場景回歸。 摘要: 什么是數據挖掘?什么是機器學習?又如何進行Python數據預處理?本文將帶領大家一同了解數據挖掘和機器學習技術,通過淘寶商品案例進行數據預處理實戰,通過鳶尾花案例介紹各種分類算法。 課程主講簡介:韋瑋,企業家,資深IT領...
摘要:在本次課程中,著重講解的是傳統的機器學習技術及各種算法。回歸對連續型數據進行預測趨勢預測等除了分類之外,數據挖掘技術和機器學習技術還有一個非常經典的場景回歸。 摘要: 什么是數據挖掘?什么是機器學習?又如何進行Python數據預處理?本文將帶領大家一同了解數據挖掘和機器學習技術,通過淘寶商品案例進行數據預處理實戰,通過鳶尾花案例介紹各種分類算法。 課程主講簡介:韋瑋,企業家,資深IT領...
摘要:我們的目標是構建一個可以讀取手寫數字的應用程序為此,我們需要一些和附帶一個在文件夾中,它有個手寫數字每個數字個每個數字是圖像所以首先要將圖片切割成個不同圖片每個數字變成一個單行像素前面的個數字作為訓練數據,后個作為測試數據輸出進一步 OCR of Hand-written Data using kNN OCR of Hand-written Digits 我們的目標是構建一個可以讀取...
閱讀 2069·2021-11-16 11:45
閱讀 569·2021-11-04 16:12
閱讀 1369·2021-10-08 10:22
閱讀 839·2021-09-23 11:52
閱讀 4128·2021-09-22 15:47
閱讀 3513·2021-09-22 15:07
閱讀 485·2021-09-03 10:28
閱讀 1730·2021-09-02 15:21