资源简介
这学期上模式识别课程,做了这个手写数字识别的作业,放到上面来赚一点点积分
代码片段和文件信息
%获取某具体已知图片的特征
function data = Getfeature(im)
[rowcol] = find(im==0); %返回数字图片的上下左右的边界
%截取手写数字图像,使其仅包含数字边界,不包含多余空白
im = im(min(row):max(row)min(col):max(col));
imwrite(im‘testimg.bmp‘‘bmp‘);%保存截取后的手写数字图像
[rowcol] = size(im); %手写数字的行和列
wide = fix(row/5); % 取整
high = fix(col/5);
count = 0;
k=1;
data = zeros(125);
for i=1:wide:5*wide %计算行
for j=1:high:5*high %行不变,计算列
for m=i:i+wide-1
for n=j:j+high-1
if im(mn)==0
count=count+1;
end
end
end
data(k)=count/(wide*high); %第k个特征分量
count=0;
k=k+1;
end
end
end
% struct pattern//pattern结构体,保存某个数字类别(0~9)的所有样品特征
% {
% int number; %该手写数字样品个数
% double feature[200][25]; %各样品特征,每类手写数字最多有200个样品,每个样品有25个特征
% };
%
% class GetFeature : public CDib
% {
% public:
% pattern pattern[10]; %手写数字样品特征库
% double testsample[25]; %待测的手写数字
% int width; %手写数字的宽
% int height; %手写数字的高
% int LineBytes;
%
% void Save(int cls); %将手写的数字保存到cls(0~9)类别中
% BOOL Saveable(int cls); %判断手写的数字能否保存到cls(0~9)类别中,因为各类别中样品特征不能重复
% double Cal(int row int col); %计算分割好的5×5小区域中,黑像素所占的比例
% void SetFeature(); %计算手写数字的特征,赋值给testsample
% void GetPosition(); %获得手写数字的位置
% GetFeature();
% virtual ~GetFeature();
%
% protected:
% int bottom; %手写数字的底部
% int top; %手写数字的顶部
% int left; %手写数字的左边
% int right; %手写数字的右边
% };
% ***************************************************************
% * 函数名称:GetPosition()
% * 函数类型:void
% * 函数功能:搜索手写数字的位置,赋值给bottomdownrightleft
% ****************************************************************/
% void GetFeature::GetPosition()
% {
% width=GetWidth();
% height=GetHeight();
% LineBytes=(width*8+31)/32*4;
%
% int ij;
% BOOL flag;
% for(j=0;j % {
% flag=FALSE;
% for(i=0;i % if(m_pData[j*LineBytes+i]==0)
% {
% flag=TRUE;
% break;
% }
% if(flag)
% break;
% }
% bottom=j;
% for(j=height-1;j>0;j--)
% {
% flag=FALSE;
% for(i=0;i % if(m_pData[j*LineBytes+i]==0)
% {
% flag=TRUE;
% break;
% }
% if(flag)
% break;
% }
% top=j;
% for(i=0;i % {
% flag=FALSE;
% for(j=0;j % if(m_pData[j*LineBytes+i]==0)
% {
% flag=TRUE;
% break;
% }
% if(flag)
% break;
% }
% left=i;
% for(i=width-1;i>0;i--)
% {
% flag=FALSE;
% for(j=0;j % if(m_pData[j*LineBytes+i]==0)
% {
% flag=TRUE;
% break;
% }
% if(flag)
% break;
% }
% right=i;
% }
%
% /***************************************************************
% * 函数名称:SetFeature()
% * 函数类型:void
% * 函数功能:将手写数字特征保存在变量sample中
% ****************************************************************/
% void GetFeature::SetFeature()
% {
% int ij;
% for(j=0;j<5;j++)
% {
%属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-04-09 14:50 Code\
文件 304 2019-04-06 16:18 Code\feature.dat
文件 5284 2019-01-23 15:25 Code\Getfeature.m
文件 22497 2019-04-06 15:16 Code\handwriting.asv
文件 44958 2019-01-23 14:31 Code\handwriting.fig
文件 22497 2019-04-06 15:17 Code\handwriting.m
目录 0 2019-04-09 14:50 Code\pattern\
文件 24661 2013-05-16 18:54 Code\pattern\data.mat
文件 39551 2019-04-06 15:43 Code\pattern\template.mat
文件 7346 2018-12-26 20:14 Code\pattern\testing.mat
目录 0 2019-04-09 14:50 Code\sample\
文件 5662 2018-12-11 16:39 Code\sample\0.bmp
文件 5662 2018-12-11 16:39 Code\sample\1.bmp
文件 5662 2018-12-11 16:39 Code\sample\2.bmp
文件 5662 2018-12-11 16:39 Code\sample\3.bmp
文件 5662 2018-12-11 16:39 Code\sample\4.bmp
文件 5662 2018-12-11 16:39 Code\sample\5.bmp
文件 5662 2018-12-11 16:39 Code\sample\6.bmp
文件 5662 2018-12-11 16:39 Code\sample\7.bmp
文件 5662 2018-12-11 16:39 Code\sample\8.bmp
文件 5662 2018-12-11 16:39 Code\sample\9.bmp
文件 8165 2018-12-28 11:06 Code\save_sam.fig
文件 5462 2019-04-06 15:17 Code\save_sam.m
文件 3110 2019-04-06 16:18 Code\testimg.bmp
文件 2848 2019-04-06 15:18 Code\test_accuracy.m
目录 0 2019-04-09 14:50 Code\test_images\
文件 168 2018-12-21 16:35 Code\test_images\test0_1.png
文件 171 2018-12-21 16:35 Code\test_images\test0_10.png
文件 169 2018-12-21 16:35 Code\test_images\test0_11.png
文件 170 2018-12-21 16:35 Code\test_images\test0_12.png
文件 170 2018-12-21 16:35 Code\test_images\test0_13.png
............此处省略1008个文件信息
- 上一篇:matlab 轮廓 边缘提取
- 下一篇:AUV 六自由度模型 MATLAB 仿真
相关资源
- 串行级联cpm系统MATLAB仿真
- matlab_OFDM调制解调(来自剑桥大学)
- Matlab路面裂缝识别69319
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 基于MATLAB的质点弹道计算与外弹道优
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
川公网安备 51152502000135号
评论
共有 条评论