Hello, I am student working on Image processing. Right now I am upload two image in GUI with two different axes and extract Minutiae .Now my question is how to match two Minutiae. And if match give a massage the Fingerprints matched otherwise it’s no
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello, I am student working on Image processing. Right now I am upload two image in GUI with two different axes and extract Minutiae .Now my question is how to match two Minutiae. And if match give a massage the Fingerprints matched otherwise it’s not matched.my Minutiae extraction code is given bellow. Could anyone help me?
% convert to binary
binary_image = im2bw( imread(handles.f) );
%Thinning
thin_image=~bwmorph(binary_image,'thin',Inf);
figure;imshow(thin_image);title('Thinned Image');
%Minutiae extraction s=size(thin_image); N=3;%window size n=(N-1)/2; r=s(1)+2*n; c=s(2)+2*n; double temp(r,c); temp=zeros(r,c);bifurcation=zeros(r,c);ridge=zeros(r,c); temp((n+1):(end-n),(n+1):(end-n))=thin_image(:,:); outImg=zeros(r,c,3);%For Display outImg(:,:,1) = temp .* 255; outImg(:,:,2) = temp .* 255; outImg(:,:,3) = temp .* 255; for x=(n+1+10):(s(1)+n-10) for y=(n+1+10):(s(2)+n-10) e=1; for k=x-n:x+n f=1; for l=y-n:y+n mat(e,f)=temp(k,l); f=f+1; end e=e+1; end; if(mat(2,2)==0) ridge(x,y)=sum(sum(~mat)); bifurcation(x,y)=sum(sum(~mat)); end end; end;
% RIDGE END FINDING [ridge_x ridge_y]=find(ridge==2); len=length(ridge_x); %For Display for i=1:len outImg((ridge_x(i)-3):(ridge_x(i)+3),(ridge_y(i)-3),2:3)=0; outImg((ridge_x(i)-3):(ridge_x(i)+3),(ridge_y(i)+3),2:3)=0; outImg((ridge_x(i)-3),(ridge_y(i)-3):(ridge_y(i)+3),2:3)=0; outImg((ridge_x(i)+3),(ridge_y(i)-3):(ridge_y(i)+3),2:3)=0;
outImg((ridge_x(i)-3):(ridge_x(i)+3),(ridge_y(i)-3),1)=255;
outImg((ridge_x(i)-3):(ridge_x(i)+3),(ridge_y(i)+3),1)=255;
outImg((ridge_x(i)-3),(ridge_y(i)-3):(ridge_y(i)+3),1)=255;
outImg((ridge_x(i)+3),(ridge_y(i)-3):(ridge_y(i)+3),1)=255;
end
%BIFURCATION FINDING [bifurcation_x bifurcation_y]=find(bifurcation==4); len=length(bifurcation_x); %For Display for i=1:len outImg((bifurcation_x(i)-3):(bifurcation_x(i)+3),(bifurcation_y(i)-3),1:2)=0; outImg((bifurcation_x(i)-3):(bifurcation_x(i)+3),(bifurcation_y(i)+3),1:2)=0; outImg((bifurcation_x(i)-3),(bifurcation_y(i)-3):(bifurcation_y(i)+3),1:2)=0; outImg((bifurcation_x(i)+3),(bifurcation_y(i)-3):(bifurcation_y(i)+3),1:2)=0;
outImg((bifurcation_x(i)-3):(bifurcation_x(i)+3),(bifurcation_y(i)-3),3)=255;
outImg((bifurcation_x(i)-3):(bifurcation_x(i)+3),(bifurcation_y(i)+3),3)=255;
outImg((bifurcation_x(i)-3),(bifurcation_y(i)-3):(bifurcation_y(i)+3),3)=255;
outImg((bifurcation_x(i)+3),(bifurcation_y(i)-3):(bifurcation_y(i)+3),3)=255;
end
figure;imshow(outImg);title('Minutiae');
end
2 commentaires
Gopichandh Danala
le 28 Juin 2017
Format your code by selecting all the code and clicking {} Code button. It makes it easier for everyone to read it
Réponses (1)
Gopichandh Danala
le 28 Juin 2017
% Example:
if isequal(A,B) % A and B are compared
msgbox('Both A and B are equal', 'MESSAGE');
else
msgbox('A and B are not equal', 'MESSAGE');
end
Incase if you only want to check the percentage of similarity or correlation then use corr2 to find 2-D correlation coefficient the closer it is to 1 the more similar both are.
CCoeff = corr2(A,B)
if CCoeff > 0.7 % (choose a value < 1)
msgbox('Both A and B are similar', 'MESSAGE');
else
msgbox('A and B are not similar', 'MESSAGE');
end
0 commentaires
Voir également
Catégories
En savoir plus sur Read, Write, and Modify Image dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!