1 内容介绍
一种基于方向谷形检测的指静脉图像分割方法及其系统,终端,包括以下步骤:步骤1,接收图像采集模块采集的指静脉图像;步骤2,对截取的指静脉图像进行脊波变换作图像增强处理;步骤3,针对增强处理后的静脉图像提取谷形区域;步骤4,将得到的静脉图像分为三个区域:背景区,模糊区,前景区,并对该三个区域进行三次的阈值分割处理;步骤5,将得到的分割图像进行边缘检测,输出处理后的分割图像.本发明的系统及方法根据静脉图像中的蕴涵的一些内在信息如形状,阶跃性质,方向等特点而提出的一种算法,能够准确的提取图像中感兴趣的静脉特征,减少提取错误特征.
2 仿真代码
function [minn, maxx] = bianjie(h1)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%程序输入参数h1为一个二值图像
%输出参数minn和maxx分别表示图像最左边区域中的最大纵坐标和最右边区域中的最小纵坐标
m = [];
[g, num] = bwlabel(h1,8);
for i = 1:num
[r, c] = find(bwlabel(h1) == i);
m(i) = max(c);
m(i+1) = min(c);
end
if m(1) > m(3)
minn = m(2);
maxx = m(4);
else
minn = m(1);
maxx = m(3);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%程序输入参数h1为一个二值图像
%输出参数minn和maxx分别表示图像最左边区域中的最大纵坐标和最右边区域中的最小纵坐标
m = [];
[g, num] = bwlabel(h1,8);
for i = 1:num
[r, c] = find(bwlabel(h1) == i);
m(i) = max(c);
m(i+1) = min(c);
end
if m(1) > m(3)
minn = m(2);
maxx = m(4);
else
minn = m(1);
maxx = m(3);
end
function [c] = juzhilvbo(j,k)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%输入参数j和k分别表示一幅图像和均值滤波窗口的大小
%输入参数c表示经过均值滤波后的图像
[m,n] = size(j);
b = zeros(m+2*k,n+2*k);
b(k+1:m+k,k+1:n+k) = double(j(:,:));
c = zeros(m,n);
for i = k+1:m+k
for j = k+1:n+k
b(i,j)= sum(sum(b(i-k:i+k,j-k:j+k)))/((2*k+1).^2);
end
end
c(:,:) = b(k+1:m+k,k+1:n+k);
clc
clear
close all
i = imread('test.bmp');
figure,imshow(i);
%
% i = guiyihua(i);%归一化处理
% sigma=3;%标准差大小??
% window=double(uint8(3*sigma)*2+1);%窗口大小一半为3*sigma ?
% H=fspecial('gaussian',window, sigma);%fspecial('gaussian',hsize, sigma)产生滤波模板? ?
% i=imfilter(i,H,'replicate');%为了不出现黑边,使用参数'replicate'(输入图像的外部边界通过复制内部边界的值来扩展)??
% figure,imshow(i);
% h = fspecial('average');
% i = filter2(h,double(i));
% figure,imshow(i,[]);
y = fangxiangfenge6(i,5);%分割
figure,imshow(y);
y = lvbo(y,10);%滤波
figure,imshow(y);
y = medfilt2(y);
figure,imshow(y);
y = tianchong(y,20);
figure,imshow(y);
y = lvbo(y,10);
figure,imshow(y);
BW2 = bwareaopen(y,200);
figure, imshow(BW2);
k=bwmorph(y,'thin',Inf);%图像细化
figure,imshow(k);
%对骨骼化图像进行n次裁剪
cesh=chj(k,3,50);
figure,imshow(cesh);
[shuchu, l]=tezhengdian1(cesh);%端点和交叉点的提取
figure,imshow(shuchu);
[r,c]=find(shuchu~=0);
% shuchu=[r c]';
% figure,imshow(shuchu);
3 运行结果


4 参考文献
[1]龙安川, 唐忞旻, 曾尧,等. 基于方向谷形检测的指静脉图像分割方法及其系统,终端:, CN108010035A[P]. 2018.
[2]张锁平. 基于数学形态学图像分割的波向检测[J]. 海洋技术, 2007, 26(4):6.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
962

被折叠的 条评论
为什么被折叠?



