source code for fingerprint alignment

Hi
I'm doing research on fingerprint identification. I need to align two fingerprints before doing the rest of matching processes. So now I'm in need of fingerprint alignment Matlab code.
My code is based on cross correlation. I cropped a small region of one image and try different rotation to get the maximum correlation between these two images. There are two main problems with my code:
1- trying different angles is very time consuming, empirically, I have to test different degrees from -90 to 90.
2- there is no reason to be sure the region I'm cropping is also available in the other image (there are some partial fingerprints in my data set).
here is the main part of my code.
T = -10;
for ang = -90: 1 : 90
IT = imrotate(im1,ang, 'crop');
cor = normxcorr2(im2,IT);
[Max, ~] = max(abs(cor(:)));
if Max > T
max_c = Max;
T = max_c;
Tang = ang;
end
end
Thanks

 Accepted Answer

Image Analyst
Image Analyst on 22 Sep 2012
Why don't you try imregister()?

5 Comments

Omid
Omid on 23 Sep 2012
Edited: Omid on 23 Sep 2012
Thanks, Image Analyst. can you please tell me by using imregister as
movingRegistered = imregister(moving,fixed,'similarity',optimizer,metric);
where I can find the rotation angle and scaling degree between two images. and also, the degree of similarity between two images after registration. Thanks
It's somewhat new and I haven't had the need to try it yet. There is an example in the help where they identify the rotation angle and fix it. Did you overlook that example?
No, I couldn't find any example talking about the rotation angle.
Then look here for the examples: http://www.mathworks.com/help/images/ref/imregister.html They're in the third section, in bold type, called "Examples":
Examples
  1. Register 2–D Images from Same Capture Device
  2. Registering Multimodal MRI Images
I've seen these examples, but what I meant was, these examples don't say anything about the rotation angle and scale degree and ...

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!