フィルターのクリア

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 回表示 (過去 30 日間)
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 件のコメント
Gopichandh Danala
Gopichandh Danala 2017 年 6 月 28 日
Format your code by selecting all the code and clicking {} Code button. It makes it easier for everyone to read it
indrani dalui
indrani dalui 2017 年 6 月 28 日
okey sir..thank you for your suggestion

サインインしてコメントする。

回答 (1 件)

Gopichandh Danala
Gopichandh Danala 2017 年 6 月 28 日
If you have two outputs you want to compare use the function isequal to compare them.
% 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

カテゴリ

Help Center および File ExchangeRead, Write, and Modify Image についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by