资源简介

身份证号码识别毕业设计答辩演示程序源代码,身份证号码自动识别算法实现本科毕业设计源代码

资源截图

代码片段和文件信息

%产生窗口
screen=get(0‘ScreenSize‘);
W=screen(3);H=screen(4);
hf=figure(‘Color‘[111]...
       ‘Name‘‘身份证号码识别演示系统‘‘Numbertitle‘‘off‘‘MenuBar‘‘none‘);
 
   %绘画框[left bottom width height]
%uicontrol(gcf‘style‘‘frame‘‘Position‘[00.550.450.45]...
  %‘Units‘‘normalized‘‘back‘[111]);
 
%定义Plot菜单项gcf图形窗口句柄hfile一级菜单句柄
hfile=uimenu(gcf‘Label‘‘&文件‘);
hprocess=uimenu(gcf‘Label‘‘&图像处理‘);

[namefilepathname]=uigetfile(‘*.bmp‘‘打开图像‘);
[i2map]=imread(strcat(pathnamenamefile));%选择打开图片
I2 =rgb2gray(i2);%灰度图像
i3=im2bw(I20.75);%将其转化为二值图像
i4=imcrop(i3[300 350 400 300]);%分割图像 
i5=imcrop(i3[300 430 400 40]); %定位身份证号码

i6=medfilt2(i5[2 2]);  %窗口大小为2*2
i7=double(i6);            %卷积运算不支持unit8类型,%所以将图像矩阵转化为double类型                         
h=[0   1   0
   1  -4   0
   0   1  0];
j=conv2(ih‘same‘);     %拉氏算子对图像滤波
k=i-j;                    %增强图像为原始图像减去拉氏算子滤波的图像
se=strel(‘line‘245);
i8=imdilate(i7se);%膨胀
se=strel(‘line‘245);
i9=imerode(i8se)%腐蚀

uimenu(hfile‘Label‘‘打开‘‘Call‘[‘subplot(111);‘‘imshow(i2)‘]);%显示原图
uimenu(hfile‘Label‘‘退出‘‘Call‘‘close(gcf)‘);
uimenu(hprocess‘Label‘‘灰度图像‘‘Call‘[‘subplot(111);‘‘imshow(I2)‘]);%显示灰度图像
uimenu(hprocess‘Label‘‘二值化图像‘‘Call‘[‘subplot(111);‘‘imshow(i3)‘]);%显示二值化图像
uimenu(hprocess‘Label‘‘分割图像‘‘Call‘[‘subplot(111);‘‘imshow(i4)‘]);%分割图像
uimenu(hprocess‘Label‘‘定位身份证号码‘‘Call‘[‘subplot(111);‘‘imshow(i5)‘]);%定位身份证号码
uimenu(hprocess‘Label‘‘中值滤波‘‘Call‘[‘subplot(111);‘‘imshow(i6)‘]);%中值滤波
uimenu(hprocess‘Label‘‘锐化‘‘Call‘[‘subplot(111);‘‘imshow(i8)‘]);%锐化
%利用双峰法对一幅灰度图像进行灰度分割处理

%添加按钮命令
 hpush1=uicontrol(gcf‘style‘‘push‘‘Unit‘‘normalized‘...
       ‘Posi‘[0.020.050.150.08]‘String‘...
‘二值化‘‘Call‘[‘imshow(i3)‘]);
uicontrol(gcf‘style‘‘push‘‘Unit‘‘normalized‘...
       ‘Posi‘[0.900.050.100.10]‘String‘...
‘关 闭‘‘Call‘‘close all‘);

hpopup=uicontrol(gcf‘style‘‘popup‘‘Unit‘‘normalized‘...
‘Posi‘[0.850.80.150.15]‘String‘...
‘灰度图像|二值化图像|分割图像|定位身份证号码‘‘Call‘...
‘imshow(I2)‘);

hc=uicontextmenu;             %建立快捷菜单
hls=uimenu(hc‘Label‘‘背景颜色‘);    %建立菜单项
uimenu(hls‘Label‘‘&Red‘‘Accelerator‘‘r‘...
‘Call‘‘set(gcf‘‘Color‘‘‘‘r‘‘);‘);
uimenu(hls‘Label‘‘&Blue‘‘Accelerator‘‘b‘...
‘Call‘‘set(gcf‘‘Color‘‘‘‘b‘‘);‘);
uimenu(hls‘Label‘‘&Yellow‘‘Call‘...
‘set(gcf‘‘Color‘‘‘‘y‘‘);‘);     
uimenu(hls‘Label‘‘&White‘‘Call‘...
‘set(gcf‘‘Color‘‘‘‘w‘‘);‘);  
set(gcf‘UIContextMenu‘hc);     %将该快捷菜单和曲线对象联系起来

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%切割程序
I=im2bw(i50.43);
[y x]=size(I);


Top=zeros(1x);         % 顶端轮廓检测
for i=1:x
        j=1;
    while ((I(ji)==1)&(j        j=j+1;
    end
    Top(i)=y-j;
end

Bottom=zeros(1x);      % 底部轮廓检测
for i=1:x
        j=y;
    while ((I(ji)==1)&(j>1))
        j=j-1;
    end
    Bottom(i)=y-j;
end

Height=Top-Bottom;
WordHeight=max(Height);    % 文字高度

%=== 轮廓线的凹

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3256  2006-05-22 19:14  林国维毕业设计答辩演示程序\3.BMP

     文件       3256  2006-05-22 19:13  林国维毕业设计答辩演示程序\5.BMP

     文件       3256  2006-05-22 19:14  林国维毕业设计答辩演示程序\2.BMP

     文件       3256  2006-05-22 19:13  林国维毕业设计答辩演示程序\6.BMP

     文件       3256  2006-05-22 19:13  林国维毕业设计答辩演示程序\7.BMP

     文件       3256  2006-05-22 19:12  林国维毕业设计答辩演示程序\9.BMP

     文件       3256  2006-05-22 19:14  林国维毕业设计答辩演示程序\1.BMP

     文件       3256  2006-05-22 19:15  林国维毕业设计答辩演示程序\0.BMP

     文件       3256  2006-05-22 19:12  林国维毕业设计答辩演示程序\8.bmp

     文件    1170920  2006-06-04 13:37  林国维毕业设计答辩演示程序\test5.bmp

     文件    1170920  2006-06-04 13:38  林国维毕业设计答辩演示程序\test1.bmp

     文件    1170920  2006-06-04 13:45  林国维毕业设计答辩演示程序\test4.bmp

     文件       9921  2006-06-05 11:54  林国维毕业设计答辩演示程序\imageprocessing.m

     文件       3256  2006-06-01 12:09  林国维毕业设计答辩演示程序\4.BMP

     文件    1170920  2006-06-08 22:15  林国维毕业设计答辩演示程序\test2.bmp

     文件    1170920  2006-06-08 22:23  林国维毕业设计答辩演示程序\test3.bmp

     目录          0  2009-02-07 03:13  林国维毕业设计答辩演示程序

----------- ---------  ---------- -----  ----

              5897299                    18


评论

共有 条评论