本文实现用KNN算法实现手写识别数字功能。
语言:Python
训练材料:手写数字素材32*32像素
from numpy import *
import os
from os import listdir
import operator
#将文件32*32转成1*1024
def img2vector(filename):
vect=zeros((1,1024))
f=open(filename)
for i in range(32):
line=f.readline()
for j in range(32):
vect[0,32*i+j]=int(line[j])
return vect
def dict2list(dic:dict):
#''' 将字典转化为列表 '''
keys = dic.keys()
vals = dic.values()
lst = [(key, val) for key, val in zip(keys, vals