• 大小: 2KB
    文件类型: .py
    金币: 1
    下载: 0 次
    发布日期: 2021-06-16
  • 语言: Python
  • 标签: knn  字符识别  python  

资源简介

knn 字符识别 python

资源截图

代码片段和文件信息

# encoding: utf-8

import os
import math
import time

#单个图像向量化 32x32 -> 1x1024
def Img2vector(filename):
    returnVect = []
    fr = open(filename)
    for i in range(32):
      lineStr = fr.readline()
      for j in range(32):
        returnVect.append(int(lineStr[j]))
    return returnVect
#print img2vector(‘C:\\Users\\fffupeng\\Desktop\\train_num\\0_0.txt‘)
#测试通过

#提取标签
def Splitfile(txtname):
    number = (txtname.split(‘.‘)[0]).split(‘_‘)[0]
    return number
#print Splitfile(‘0_0.txt‘)
#测试成功

#构建训练集
def Train():
    path_train = os.getcwd()+r‘\\‘+‘train_num‘
    list_txt = os.listdir(path_train)
    L_numL_vec = [][]

    for txt in list_txt:
        L_num.append(Splitfile(txt))
        L_vec.append(Img2vector(path_train+r‘\\‘+txt))
    return L_numL_vec

#测试数据向量化,也可以改成测试集,即多个测试数据
def Test():
    path_test_file = os.getcwd()+r‘\\test_num\\9_0.txt‘#单个测试文件位置,数字0
    test_vec = Img2vector(path_test_file)#测试文件向量化
    return test_vec

#计算两个向量的距离
def Distance(ab):
    sum = 0
    for i in range(len(a)):
        

评论

共有 条评论