using gradient function to calculate curvature of ridges in a fingerprint

1 view (last 30 days)
I need to calculate the curvature of the ridges in a fingerprint image. I havent understood how to use the gradient function in matlab. I have used the :gradient(image) syntax of the function where "image" is a 281x231 logical matrix.
Error: g=zeros(size(image),class(image)); case of singleton dimention.
Is there any other way to calculate the curvature?
  1 Comment
Jan
Jan on 18 Nov 2012
Edited: Jan on 18 Nov 2012
Gradient of a logical matrix? Please read the documentation of gradient again and try the examples. A gradient is not defined on a logical matrix.
Please post some code, which reproduces the error. An exact copy of the error message would be helpful also. Currently we see the line, which causes the error, but not the message itself.

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 18 Nov 2012
Edited: Image Analyst on 18 Nov 2012
A few problems here. First of all DON'T use image as the name of your image variable since "image" is the name of a built-in function.
Second, don't preallocate an all zero matrix like that. zeros() doesn't take logical type. Use false. So instead of
g=zeros(size(image),class(image))
do this:
g = false(size(logicalImage));
Third, I don't know if you want the curvature in the x-y plane or the curvature in the intensity direction.
  4 Comments
divya r
divya r on 18 Nov 2012
I guess I am trying to do this all wrong. I do want the radius of curvature in the xy plane. I need it to find the point where the curvature is the maximum which will be the core point in the finger print.
Can I get some pointers on how to go ahead on this?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!