1 简介
近年来,随着识别技术和网络技术的飞速发展,门禁系统也得到了飞跃式的发展,出现了基于指纹识别的门禁系统.这种系统具有安全性,方便性和易管理性等特点,是确保各重要部门出入口安全的有效措施,现已广泛应用于各领域.本文的主要目的就是设计和实现一套具有核心指纹识别服务器,指纹识别服务器控制器,指纹识别服务器管理器和数据库的基于指纹识别的门禁系统.本文在指纹识别理论的基础上,以查阅资料为研究方法,首先对整个系统进行设计规划,完成用例设计,程序界面功能设计以及数据库设计,进而建立数据库和实现门禁系统软件的各种功能,从而最终实现整个系统.随着社会的发展,钥匙、证件、银行卡以及用户名密码等这些鉴定身份的标志性物品和标识的安全性越来越弱,很容易被伪造、被盗用、不小心丢失等,给人们带来了极大的困扰,如何才能更好的保护个人信息成为当今时代一个很重要问题。随着网络和计算机应用技术的发展,人们逐渐将目光转向当下的一个新型识别热点,即生物特征识别技术。现在应用较多的生物特征识别技术有人脸识别、声音识别、虹膜识别以及指纹识别等等。本设计主要研究指纹识别系统。指纹识别技术相对于声音识别、人脸识别而言,是一种使用时间比较久的生物识别技术。指纹具有不变性、唯一性、普遍性、可采集性和可储存性等特性。目前,指纹识别技术已经被人们应用在各大领域之中,除了大众熟知的刑事侦查外,还有公司企业指纹打卡考勤系统、住户安装指纹门锁、电脑开机或手机屏幕解锁的身份确认等生活的各个方面。
指纹识别系统的构成指纹识别系统主要由指纹数字图像采集、指纹预处理、指纹特征提取和匹配这 4个部分组成。首先,通过指纹采集设备完成指纹图像的采集;其次,进行预处理操作,把指纹图像变成一幅清晰的点线图,进而方便提取指纹图像的特征点;最后,将指纹图像进行匹配,判断这两者是否来自同一根手指。指纹识别系统的组成框图如图 1 所示。
2 部分代码
function thin=deal(str)
im=imread(str);
[m,n,p]=size(im);
if p==3
im=rgb2gray(im);
end
%imshow(im);
save im
I=double(im);
%二值化
temp=(1/9)*[1 1 1;1 1 1;1 1 1];%模板系数 均值滤波
I=filter2(temp,I);
Im=zeros(m,n);
for x=5:m-5;
for y=5:n-5;
sum1=I(x,y-4)+I(x,y-2)+I(x,y+2)+I(x,y+4);
sum2=I(x-2,y+4)+I(x-1,y+2)+I(x+1,y-2)+I(x+2,y-4);
sum3=I(x-2,y+2)+I(x-4,y+4)+I(x+2,y-2)+I(x+4,y-4);
sum4=I(x-2,y+1)+I(x-4,y+2)+I(x+2,y-1)+I(x+4,y-2);
sum5=I(x-2,y)+I(x-4,y)+I(x+2,y)+I(x+4,y);
sum6=I(x-4,y-2)+I(x-2,y-1)+I(x+2,y+1)+I(x+4,y+2);
sum7=I(x-4,y-4)+I(x-2,y-2)+I(x+2,y+2)+I(x+4,y+4);
sum8=I(x-2,y-4)+I(x-1,y-2)+I(x+1,y+2)+I(x+2,y+4);
sumi=[sum1,sum2,sum3,sum4,sum5,sum6,sum7,sum8];
summax=max(sumi);
summin=min(sumi);
summ=sum(sumi);
b=summ/8;
if (summax+summin+ 4*I(x,y))> (3*summ/8)
sumf = summin;
else
sumf = summax;
end
if sumf < b
Im(x,y)=1;
end
end
end
%imshow((Im));
save Im;
v=~Im;
se=strel('square',3);
fo=imopen(v,se);
v=imclose(fo,se); %对图像进行开操作和闭操作
w=bwmorph(v,'thin',Inf);%对图像进行细化
%figure,imshow(w)
%title('细化图')
save w
thin=w;
标签:end,指纹识别,技术,指纹,im,MATLAB,Im,识别 From: https://blog.csdn.net/2401_84457171/article/details/143261428