手写数字识别(慕课MOOC人工智能之模式识别)

问题:手写数字识别

数据集

数据集链接请点击我

代码

matlab 复制代码
%mat2vector.m
function [data_]= mat2vector(data,num)
    [row,col,~]= size(data);
    data_=zeros(num,row*col);
    for page =1:num
        for rows =1:row
            for cols=1:col
                data_(page,((rows-1)*col+cols))= im2double(data(rows,cols,page));
            end
        end
    end
end
matlab 复制代码
image = cell(1,10);
for i= 0:9
    filename = sprintf('E:/fig/model/%d.bmp',i);
    image{1,i+1} = mat2vector(imresize(imread(filename),[28,28]),1);
end

correct_num=0;
for index = 0:9
    distance =zeros(1,10);
    fname=sprintf('E:/fig/test/%d.1.bmp',index);
    sample =mat2vector(imresize(imread(fname),[28,28]),1);
    for j= 1:10
        distance(j)=pdist2(sample,image{1,j},'euclidean');
    end
    [m,p]= min(distance);
    if p-1==index
        correct_num=correct_num+1;
    end
    fprintf('数字%d到模板的最小距离为:%d,匹配到的类别为:%d\n',[index,m,p-1]);
end
fprintf('共测试10个样本,正确匹配个数为%d个\n',correct_num);

执行结果

补充(数据集文件夹的注意事项)



有问题联系xylwork@yeah.net

相关推荐
武子康8 分钟前
大数据-212 数据挖掘 机器学习理论 - 无监督学习算法 KMeans 基本原理 簇内误差平方和
大数据·人工智能·学习·算法·机器学习·数据挖掘
deephub9 分钟前
Tokenformer:基于参数标记化的高效可扩展Transformer架构
人工智能·python·深度学习·架构·transformer
Q81375746014 分钟前
数据挖掘在金融交易中的应用:民锋科技的智能化布局
人工智能·科技·数据挖掘
qzhqbb18 分钟前
语言模型的采样方法
人工智能·语言模型·自然语言处理
qzhqbb21 分钟前
基于 Transformer 的语言模型
人工智能·语言模型·自然语言处理·transformer
___Dream22 分钟前
【CTFN】基于耦合翻译融合网络的多模态情感分析的层次学习
人工智能·深度学习·机器学习·transformer·人机交互
极客代码29 分钟前
【Python TensorFlow】入门到精通
开发语言·人工智能·python·深度学习·tensorflow
义小深31 分钟前
TensorFlow|咖啡豆识别
人工智能·python·tensorflow
顶呱呱程序1 小时前
2-143 基于matlab-GUI的脉冲响应不变法实现音频滤波功能
算法·matlab·音视频·matlab-gui·音频滤波·脉冲响应不变法
Tianyanxiao1 小时前
如何利用探商宝精准营销,抓住行业机遇——以AI技术与大数据推动企业信息精准筛选
大数据·人工智能·科技·数据分析·深度优先·零售