💥1 概述

  每个人(包括指纹在内)皮肤纹路在图案、断点和交叉点上各不相同, 也就是说, 是唯一的, 并且终生不变。依靠这种唯一性和稳定性, 我们就可以把一个人同他的指纹对应起来, 通过比较他的指纹和预先保存的指纹进行比较, 就可以验证他的真实身份。这就是指纹识别技术。

   十年后指纹识别技术即将迎来一个跳跃性发展的黄金时期, 专家们保守估计, 未来 5 年, 我国将有近百亿元的市场等待着企业去开拓。指纹识别技术的巨大市场前景, 将对国际、国内安防产业产生巨大的影响。识别指纹, 实际上是提取指纹的“细节”特征。所谓“细节”,是指指纹的纹路端点或交叉点。通过研究指纹的一个局部区域的放大, 可以清楚地看到, 在图的中心, 有一个竖直走向的纹路端点, 即有一个竖直方向的细节。细节的存在与否、类型、位置和方向就是所需提取的细节特征参数。

📚2 运行结果

基于 BP 神经网络特征提取的指纹识别应用(Matlab代码实现)_深度学习

基于 BP 神经网络特征提取的指纹识别应用(Matlab代码实现)_matlab代码_02

基于 BP 神经网络特征提取的指纹识别应用(Matlab代码实现)_神经网络_03

基于 BP 神经网络特征提取的指纹识别应用(Matlab代码实现)_神经网络_04

基于 BP 神经网络特征提取的指纹识别应用(Matlab代码实现)_神经网络_05

基于 BP 神经网络特征提取的指纹识别应用(Matlab代码实现)_深度学习_06

基于 BP 神经网络特征提取的指纹识别应用(Matlab代码实现)_指纹识别_07

基于 BP 神经网络特征提取的指纹识别应用(Matlab代码实现)_深度学习_08

基于 BP 神经网络特征提取的指纹识别应用(Matlab代码实现)_深度学习_09

部分代码:

function [ K ] = TuXiangYuChuLi( img_file_name )
%UNTITLED6 Summary of this function goes here
% Detailed explanation goes here% 空域增强 -------------------------------
% image_file_name = 'test.png';
img=double(rgb2gray(imread(img_file_name)));
% figure('name','原始指纹图像');
% imshow(img,[])
[m n]=size(img);Fe=1;%控制参数
Fd=128;xmax=max(max(img));
u=(1+(xmax-img)/Fd).^(-Fe); %空间域变换到模糊域%也可以多次迭代
for i=1:m %模糊域增强算子
for j=1:n
if u(i,j)<0.5
u(i,j)=2*u(i,j)^2;
else
u(i,j)=1-2*(1-u(i,j))^2;
end
end
endimg=xmax-Fd.*(u.^(-1/Fe)-1); %模糊域变换回空间域
% figure('name','空域滤波后的图像');
img = uint8(img);
% imshow(img);%---------------------------------------------------------------
%二值化图像-------------------------------------------------------
level=graythresh(img);
J=im2bw(img,level);
% figure('name','二值化后的图像');
% imshow(J);
%---------------------------------------------------------------%图像细化--------------------------------------------------------
I=J;
K=bwmorph(~I,'thin','inf');
% figure('name','图像细化后的图像');
% imshow(~K);
% saveas(fs,'wan');
%---------------------------------------------------------------

🎉3 参考文献

[1]邓秀春,韩孜,黄剑.基于BP神经网络特征提取的指纹识别应用[J].广西轻工业,2008(04):51-52.

​🌈​​4 Matlab代码实现