matlab静脉识别,静脉图像识别1

您所在的位置:网站首页 手掌指纹线图 matlab静脉识别,静脉图像识别1

matlab静脉识别,静脉图像识别1

2024-02-22 13:05| 来源: 网络整理| 查看: 265

最近学习到的静脉图像识别方法,大致做一下整理。

背景:

类似指纹识别,实现静脉识别。

目的:通过红外线图,得到血管细线图,以下程序是未完成代码截图,先做整理。​

识别方法A:

a4c26d1e5885305701be709a3d33442f.png

​其中,线性拉伸(imadjust(HD,[0.3

0.6],[]);)目的为提高对比度,经过实验,取0.3-0.6的值进行拉伸,效果最佳。直方图均衡也是增强对比度的一种方法,经过实验,效果不如线性拉伸,因此忽视。

为了更好的边缘提取,使用高斯滤波进行去噪。

Niblack算法基于图像的局部均值和标准差计算阈值,像素(x,y)处阈值T(x,y)=m(x,y)+k*s(x,y)

其中m(x,y)与s(x,y)分别是以(x,y)为中心邻域(邻域常用15*15)的均值和标准差,k为修正系数可取-0.1;经过实验,发现r取50,k取-0.2效果较好。

该算法是静脉图像识别中常用的二值化算法,也曾尝试matlab中提供的其他边缘提取的算法,效果不如该算法,但在matlab中该算法运行速度较慢,需改进代码或直接使用C++实现该算法。

图像二值化算法,该网页提供了另外几种方法,有时间尝试。http://blog.csdn.net/cxf7394373/article/details/6335281​

中值滤波去噪。闭操作可使轮廓线更光滑,消弥狭窄的间断和长细的鸿沟,消除小的空洞,并填补轮廓线中的断裂,用来做图像修补和去除小面积噪声。

余下工作:细化图像,曾尝试细化,但效果不佳,可尝试再做一次闭操作之后细化。

细化后进行特征提取,之后匹配得出结论。

最终得到预处理图像:

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

​识别方法2:

​根据吴薇等2013.10在光学学报发表的文章《基于灰度曲面匹配的快速手掌静脉识别》,提出一种基于灰度曲面匹配的快速手掌静脉识别算法。

大致方法整理如下:

1、​提取感兴趣区域(参考吴薇等2013年在光电子激光

发表的《手掌静脉识别中感兴趣区域的选择与定位研究》)。

2、​将感兴趣区域分成若干个之区域(经过试验8*8子区域效果最佳),计算每个子区域像素灰度平均值作为该子区域的灰度值,以各子区域灰度值构建待匹配图像。

3、两个待匹配灰度曲面中的像素灰度做差,得到灰度曲面差,求该灰度曲面差的方差。

4、用此方差​衡量两张灰度曲面图是否来自同一只手。

该方法在第一步结束后,得到的是一张没有背景的完整的血管图。

a4c26d1e5885305701be709a3d33442f.png

因此,若使用该方法,如何获得感兴趣图片成为重点。

另,根据论文描述,​该算法的正确识别率达到97.94%,且时间仅为0.163ms,值得尝试。

其余有待补充。​



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3