资源简介
基于贝叶斯的英文字母识别, matlab实现

代码片段和文件信息
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%识别26个大写字母%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clc;
clear all;
disp(‘回车键 ...‘)
chos=input(‘请直接按回车键正在生成输入向量和目标向量,请稍等… ‘);
if isempty(chos) chos=0; end
if chos==0
for kk=0:256
p1=ones(1616);% 初始化16×16的二值图像像素值(全白)
m =strcat(‘nums\‘int2str(kk)‘.bmp‘);% 形成训练样本图像的文件名(0~89.bmp)
x=imread(m‘bmp‘);% 读入训练样本图像文件
bw=im2bw(x0.5);% 将读入的训练样本图像转换为二值图像
[ij]= find(bw==0);% 寻找二值图像中像素值为0(黑)的行号和列号
imin=min(i);% 寻找二值图像中像素值为0(黑)的最小行号
imax=max(i);% 寻找二值图像中像素值为0(黑)的最大行号
jmin=min(j);% 寻找二值图像中像素值为0(黑)的最小列号
jmax=max(j);% 寻找二值图像中像素值为0(黑)的最大列号
bw1=bw(imin:imaxjmin:jmax);% 截取图像像素值为0(黑)的最大矩形区域
rate=16/max(size(bw1));% 计算截取图像转换为16×16的二值图像的缩放比例
bw1=imresize(bw1rate);% 将截取图像转换为16×16的二值图像(由于缩放比例
% 大多数情况下不为16的倍数所以可能存在转换误差)
[ij]=size(bw1);% 转换图像的大小
i1=round((16-i)/2);% 计算转换图像与标准16×16的图像的左边界差
j1=round((16-j)/2);% 计算转换图像与标准16×16的图像的上边界差
p1(i1+1:i1+ij1+1:j1+j)=bw1;% 将截取图像转换为标准的16×16的图像
p1= -1.*p1+ones(1616);% 反色处理 % 以图像数据形成神经网络输入向量
for m=0:15
p(m*16+1:(m +1)*16kk+1)=p1(1:16m+1);
end % 形成神经网络目标向量
switch kk
case{0123456789} % 字母A
t(kk+1)=0;
case{10111213141516171819} % 字母B
t(kk+1)=1;
case{20212223242526272829} % 字母C
t(kk+1)=2;
case{30313233343536373839} % 字母D
t(kk+1)=3;
case{40414243444546474849} %字母E
t(kk+1)=4;
case{50515253545556575859} %字母F
t(kk+1)=5;
case{60616263646566676869} % 字母G
t(kk+1)=6;
case{70717273747576777879} % 字母H
t(kk+1)=7;
case{80818283848586878889} % 字母I
t(kk+1)=8;
case{90919293949596979899} % 字母J
t(kk+1)=9;
case{100101102103104105106107108109} % 字母K
t(kk+1)=10;
case{110111112113114115116117118119} % 字母L
t(kk+1)=11;
case{120121122123124125126127128129} % 字母M
t(kk+1)=12;
case{130131132133134135136137138139} % 字母N
t(kk+1)=13;
case{140141142143144145146147148149} % 字母O
t(kk+1)=14;
case{150151152153154155156157158159} % 字母P
t(kk+1)=15;
case{160161162163164165166167168169} % 字母Q
t(kk+1)=16;
case{170171172173174175176177178179} % 字母R
t(kk+1)=17;
case{180181182183184185186187188189} % 字母S
t(kk+1)=18;
case{190191192193194195196197198199} %字母T
t(kk+1)=19;
case{200201202203204205206207208209} % 字母U
t(kk+1)=20;
case{210211212213214215216217218219} % 字母V
t(kk+1)=21;
case{220221222223224225226227228229} % 字母W
t(kk+1)=22;
case{230231232233234235236237238239} % 字母X
t
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 14502 2009-05-07 22:23 字母识别\123.bmp
文件 12566 2009-05-07 22:22 字母识别\143.bmp
文件 118191 2010-06-01 15:17 字母识别\E52net.mat
文件 4344 2010-06-01 15:15 字母识别\E52PT.mat
文件 4373 2010-05-31 13:03 字母识别\shibie.asv
文件 4376 2009-06-23 13:32 字母识别\shibie.m
文件 1511 2009-06-23 13:34 字母识别\shibie2.m
..A.SH. 395292 2010-06-01 15:21 字母识别\Thumbs.db
文件 48128 2010-06-01 16:22 字母识别\神经网络.doc
目录 0 2010-06-01 16:28 字母识别
----------- --------- ---------- ----- ----
603283 10
- 上一篇:SVPWM控制模型
- 下一篇:gabor特征提取matlab实现
相关资源
- 基于颜色的聚类分割matlab
- matlab模式识别工具箱PRTOOLS及使用说明
- 用身高和/或体重数据进行性别分类的
- 模式识别与智能计算-Matlab技术实现(
- 模式识别与智能计算matlab实现 安装
- 西交大模式识别编程大作业报告+MAT
- 车牌识别_matlab_模式识别(MATLAB代码,
- 模式识别课程作业 基于svm的人脸识别
- 图形模式识别 matlab 圆 正方形
- 《模式识别与智能计算》MATLAB技术实
- matlab利用不变矩提取图片的形状特征
- 模式识别4个实验(matlab)
- 带操作界面GUI的字母识别-MATLAB程序
- 模式识别课程作业 matlab与libsvm环境
- 车牌识别Matlab代码
- 基于matlab的车牌识别内含matlab代码以
- 指纹识别数字图像处理+模式识别+机器
- 路标识别与提取采用聚类方法C-means
- FAST角点检测算法MATLAB程序
- 基于PCA和SVM的人脸识别 matlab程序
- 模式识别与智能计算-Matlab技术实现
- 《模式识别与智能计算:MATLAB技术实
- 稀疏非负矩阵分解及模式识别
- 虹膜识别 matlab算法
- Fisher二元线性判别 Matlab源码
- usps手写数字数据集
- [模式识别及MATLAB实现][杨杰][电子教案
- SVM实现MNIST数据集分类
- 《模式识别与智能计算的MATLAB实现》
- 《模式识别与人工智能基于MATLAB》程
评论
共有 条评论