1 简介
手写体识别由于其实用性,一直处于研究进步的阶段,本文主要针对的是对0-9十个手写数字体脱机识别,在Matlab中对样本部分为进行16特征的提取,分别采用最小距离法算法进行0-9十个数字进行识别。
2 部分代码
clear all clc close all% 选择训练数据、测试数据路径(即目录TrainData和TestData) TrainDatabasePath = uigetdir('D:\Program Files\MATLAB\R2007b\work', '选择[训练数据]路径' ); TestDatabasePath = uigetdir('D:\Program Files\MATLAB\R2007b\work', '选择[测试数据]路径');prompt = {'输入测试图像名字(1、2):'}; dlg_title = 'PCA识别输入'; num_lines= 1; def = {'1'};TestImage = inputdlg(prompt,dlg_title,num_lines,def); TestImage = strcat(TestDatabasePath,'\',char(TestImage),'.jpg'); im = imread(TestImage);T = CreateDatabase(TrainDatabasePath);%创建测试数据库 [m, A, EigenPos] = PCA(T); OutputName = Recognition(TestImage, m, A, EigenPos);%识别输出匹配图像SelectedImage = strcat(TrainDatabasePath,'\',OutputName); SelectedImage = imread(SelectedImage);imshow(im) title('测试图像'); figure,imshow(SelectedImage); title('等价图像');str = strcat('匹配图像是: ',OutputName); disp(str)
3 仿真结果
4 参考文献
[1]蓝雯飞, 汪敦志, and 张盛兰. "一种新的降维算法PCA_LLE在图像识别中的应用." 中南民族大学学报:自然科学版 39.1(2020):6.
部分理论引用网络文献,若有侵权联系博主删除。
5 MATLAB代码与数据下载地址
见博客主页