pre-processing steps in palm vein image ????

17 views (last 30 days)
mona zizo
mona zizo on 7 Nov 2012
Answered: Sowjanya M on 25 Mar 2017
how can I show the vascular in binary palm vein image I make this code and the vascular not apper in binary >> I=imread('001_l_460_01.jpg'); >> figure,imshow(I); >> level=graythresh(I); >> bw=im2bw(I,level); >> figure,imshow(bw); >> roipoly(bw); >> x=[408 514 708 598] x = 408 514 708 598 >> y=[313 96 213 421] y = 313 96 213 421 >> BW=poly2mask(x,y,576,768); >> h=fspecial('unsharp'); >> I2=roifilt2(h,I,BW); >> figure,imshow(I2); what is the wrong???
  2 Comments
Image Analyst
Image Analyst on 7 Nov 2012
And where did you upload 001_l_460_01.jpg to?
mona zizo
mona zizo on 8 Nov 2012
I have CASIA-Multi-Spectral-PalmprintV1 database

Sign in to comment.

Answers (3)

Image Analyst
Image Analyst on 7 Nov 2012
What makes you think that some automatically picked threshold is going to be any good? Chances are it is not. And what makes you think doing an unsharp mask filter on a binary image is a good thing to do? I don't see the rationale for doing that.
  2 Comments
mona zizo
mona zizo on 8 Nov 2012
thax what is your opnion to do it???
Image Analyst
Image Analyst on 8 Nov 2012
That's not my field. Though I do know there has been research at UCLA on identifying vein patterns to identify criminals. There's probably more research that you know of or you can search Vision Bib

Sign in to comment.


Shahmeer Rosli
Shahmeer Rosli on 30 Nov 2015
Hello I would to ask. are my code for Palm Vein are correct? and is this all for the future extraction? and 1 more question what is the best classifier that suit with my future extraction. thank you
clear; close all; clc; clear variables; %% % Howto use the miura_* scripts.
img = im2double(imread('RightFive.bmp')); % Read the image
% img=img(:,:,1);
img=imcrop(img,[199.5 121.5 248 253]);
figure(1); imshow(img); title('Original Captured Image') %%
% img = imresize(img,0.8); % Downscale image
% Get the valid region, this is a binary mask which indicates the region of % the finger. For quick testing it is possible to use something like: % fvr = ones(size(img)); fvr = lee_region(img,40,200); % Get finger region
figure(2); imshow(fvr) title('Detected Finger Region') %% Extract veins using maximum curvature method % Filter Kernels Method sigma = 3; % Parameter v_max_curvature = miura_max_curvature(img,fvr,sigma);
% Binarise the vein image md = median(v_max_curvature(v_max_curvature>0)); v_max_curvature_bin = v_max_curvature > md;
figure(3); imshow(v_max_curvature_bin) title('Binarised Veins Extracted by Maximum Curvature Method')
%% thinning K=bwmorph(v_max_curvature_bin,'thin',Inf); figure(4) , imshow(K); % set(gcf,'position',[1 1 600 600]); title('Thinning');
%% CLEAN bw =bwmorph(K,'clean'); figure(5), imshow(bw), title ('Clean');
%% v_max_curvature_bin3= bwmorph(bw,'shrink'); figure, imshow(v_max_curvature_bin3)
v_max_curvature_bin1= bwmorph(bw,'bridge');
figure, imshow(v_max_curvature_bin1), title ('bridge');
v_max_curvature_bin2 = bwmorph(bw,'thin',Inf);
figure, imshow(v_max_curvature_bin2), title ('thin');
Visualise
Overlay the extracted veins on the original image
overlay_max_curvature = zeros([size(img) 3]);
overlay_max_curvature(:,:,1) = img;
overlay_max_curvature(:,:,2) = img + 0.4*v_max_curvature_bin;
overlay_max_curvature(:,:,3) = img;
figure;
imshow(overlay_max_curvature)
title('Maximum curvature method')

Sowjanya M
Sowjanya M on 25 Mar 2017
I want Matlab coding for combined features of finger texture and vein images.

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!