FP ridge orientation code only returning 45 or 135 degrees. Please help

1 view (last 30 days)
Hi all, I am trying calculate fp orientation using equation given the image (Jain 1995). I am only getting two values 2.3562 and 0.7875 rad(45 deg and 135 deg) in the output matrix. Please help me to know where i am going wrong.
clc;clear all;close all;
img1=imread('1_1.png');
img1=normalise(img1);
[m n]=size(img1);
[gx gy]=imgradientxy(img1);
for i=9:m-9
for j=9:n-9
gxy=0;gxx=0;gyy=0;
for i1=-8:+8
for j1=-8:+8
gxy=gxy+((gx(i+i1,j+j1)).*(gy(i+i1,j+j1)));
gxx=gxx+power((gx(i+i1,j+j1)),2);
gyy=gyy+power((gx(i+i1,j+j1)),2);
end
end
Q(i,j)=pi/2+0.5*(atan2(double(2*gxy),double((gxx-gyy))));
end
end
  1 Comment
GOPEE Ajit Kumar
GOPEE Ajit Kumar on 2 Feb 2017
Hello Sam I am new to Fingerprint image processing. I wish to know the steps to reach FG orientation. I am using FVC 2002 fingerprint images. First hw do you thin the images? Then how you locate the singular points? Any help/advice/suggestions would be highly appreciated Thanks a lot in advance rgds ajit

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 23 Sep 2013
Are gx and gy integers or doubles before you start multiplying them together. If things are being quantized, the first thing I look at is if it's doing integer math instead of floating point math. By the way, you can use ^ to raise to a power instead of calling the power() function.
  1 Comment
Sam
Sam on 23 Sep 2013
gx,gy are double.. but looking for class of variables I found a typing error in gyy=gyy+power((gx(i+i1,j+j1)),2); (for gyy power arg should be gy). :|
just one problem remains...cant compute Q's for border regions
Q is 330x240
img1 is 338x248
is there a function where i can pad img1 with 8 cols(on right) and 8 rows on bottom.????

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!