Face recognition and image normalization

2 views (last 30 days)
How can I normalize image to align the eyes with a horizontal line.
EyeDetect = vision.CascadeObjectDetector('EyePairBig');
I = imread('1.jpg');
BB=step(EyeDetect,I);
As I understand I can rotate image by imrotate , but I need to know angle of the rotation.

Accepted Answer

Dima Lisin
Dima Lisin on 6 Nov 2014
If (x1,y1) is the center of the first eye, and (x2, y2) is the center of the second eye, then (y2 - y1) / (x2 - x1) is the tangent of the angle between the line connecting the two centers and the horizontal. You can get the angle using atan2(y2-y1, x2-x1).
  2 Comments
chinnurocks
chinnurocks on 8 Jul 2016
How to get centre points of the eyes... automatically... I mean without using the data cursor manually ?
Image Analyst
Image Analyst on 8 Jul 2016
Segment out the eyes, then use regionprops().

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 6 Nov 2014
Be sure to see the Mathworks Webinar on Face detection/recognition on Nov. 13, 2014: Click Here

Community Treasure Hunt

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

Start Hunting!