基于人工神经网络的MATLAB手写数字识别

这个博客介绍了如何在MATLAB中构建一个手写数字识别系统,利用人工神经网络进行识别。通过MouseDraw函数创建GUI界面,支持鼠标绘制,同时提供保存、训练和识别功能。用户可以调整字号、颜色,并设置训练参数,如学习速率和目标精度。
摘要由CSDN通过智能技术生成

基于人工神经网络的MATLAB手写数字识别系统

  • 函数MouseDraw实现手写识别系统GUI界面的建立和鼠标手写的实现。(使用时保存为MouseDraw.m)

function MouseDraw(action)

% MouseDraw 本例展示如何以Handle Graphics来设定滑鼠事件

% (MouseDraw Events)的反应指令(Callbacks)

% 本程序在鼠标移动非常快时,不会造成画“断线”

% global不能传矩阵

global InitialX InitialY FigHandle hb2 hb3 hb4 count hb5 hb6 hb7

count='E:\im.jpg';

imSize = 50;

if nargin == 0, action = 'start';

end

switch(action)

%%开启图形视窗

case 'start',

FigHandle = figure('WindowButtonDownFcn','MouseDraw down','DeleteFcn','save bpnet');

axis([1 imSize 1 imSize]); % 设定图轴范围%

set(gca,'Position',[.25 .20 .7 .7]);

axis off;

grid off;

box on; % 将图轴加上图框

title('手写体输入窗');

try evalin('base','load bpnet')

catch

    evalin('base','bpgdtrain');

end

% % fprintf('start');

%%设定滑鼠按钮被按下时的反应指令为「MouseDraw down」

% set(gcf, 'WindowButtonDownFcn', 'MouseDraw down');  

hb1 = uicontrol('Parent', FigHandle, 'Units', 'Normalized', ...

    'Position', [.3 .01 .13 .07], 'String', '保存', ...

    'Callback',['exa=rgb2gray(frame2im(getframe(gca)));','imwrite(exa,''E:\im.jpg'')']);

hb2=uicontrol('Parent',FigHandle,'Style','popupmenu','Position',[50 50 50 30],...

    'String', { '26','24', '22', '20', '18', '16','14','12','10'});

hb3=uicontrol('Parent', FigHandle,'Style','text',...

'Position',[10 90 90 30],'String',[ 'CurrentX() ','CurrentY()']);

hb4=uicontrol('Parent',FigHandle,'Style','popupmenu','Position',[50 20 50 30],...

    'String',{ 'Red','Blue','Black','Yellow','Green'

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值