MATLAB Code for Vein Detection using IR Camera.

25 visualizaciones (últimos 30 días)
Ananthu Jayan
Ananthu Jayan el 12 de En. de 2018
Respondida: Ranjani Elango el 18 de En. de 2020
I am working on a mini project to find the matlab code to detect the veins using an IR Camera. I have referred a paper and applied all those techniques as mentioned in the algorithm attached as image.
The code I have written so far is as follows. May I get the code inorder to improve the precision and do it more effectively ?
Matlab Code:
clc
%Remove items from workspace, freeing up system memory
clear all
%Remove figures
close all
%read image
img=imread('C:\Users\Ananthu\Desktop\test.jpg');
%display image
figure,imshow(img);
%convert image to grayscale
I=rgb2gray(img);
figure,imshow(I),title('Grayscale image');
%applying median filter to remove noise
K = medfilt2(I);
figure,imshow(K), title('median filtering');
%applying CLAHE
J = adapthisteq(I,'clipLimit',0.05,'Distribution','rayleigh');
figure,imshow(J), title('CLAHE');
%median filtering to remove the noise
K1 = medfilt2(J);
figure,imshow(K1), title('median filtering2');
%blurring images for accuracy
%Adaptive thresholding
T = adaptthresh(K1, 0.7);
BW = imbinarize(K1,T);
figure, imshow(BW), title('Adaptive threshold')
%T1 = adaptthresh(K1,0.5,'ForegroundPolarity','dark');
%figure,imshow(T1), title('foreground');
%BW = imbinarize(K1,T1);
%figure,imshow(BW), title('new thresholding');
se1 = strel('line',11,90);
erodedBW = imdilate(BW,se1);
figure, imshow(erodedBW,[]), title('dilated image');
BW3 = bwperim(erodedBW);
figure, imshow(BW3,[]),title('perimeter extraction');
C = imfuse(img,BW3,'blend','Scaling','joint');
figure, imshow(C), title('fusing images');
  6 comentarios
Ananthu Jayan
Ananthu Jayan el 10 de Feb. de 2018
@Image Analyst I have added the image for your testing purpose.
I am a beginer in matlab and I have tried out direct algorithms in the papers read from the link. The algorithm which I followed is also attached in the question above. Please see to it and even I have added an image for the testing purpose.
My ultimate aim is to get an image as shown below:
Then process the final image using the algorithms in the paper. Is there a method atleast to do these procedures.
Thanks
Image Analyst
Image Analyst el 10 de Feb. de 2018
Not at a high level - there is no vein extraction function. You'll have to build up the algorithm in the paper from lower level functions. It looks like you're doing that.

Iniciar sesión para comentar.

Respuestas (3)

ali ismaeel
ali ismaeel el 8 de Dic. de 2018
I applied this code and its really worked.
thank you so much

ali ismaeel
ali ismaeel el 8 de Dic. de 2018
but when i convert to grayscale i want to keep one color which is green lets say
i mean i want to show only the vein in green color and others in grayscale
Anyone can help?

Ranjani Elango
Ranjani Elango el 18 de En. de 2020
Mr Ananthu Jayan, can you please help me out how can you made the vein detector and can you please send me the matlab program which gives final successful output. Thank you

Categorías

Más información sobre Image Processing and Computer Vision en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by