-
Notifications
You must be signed in to change notification settings - Fork 111
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
About LFW annotation #59
Comments
Hi @xvbw, the 8th landmark used in the model is artificial (computed from the 7 landmarks) and represents the center of the face. It serves as the root node of the underlying tree graph. If I remember correctly, the MATLAB script computing the 8th landmark is somewhere in the flandmark. If you need it, I can also paste the code here. |
Yes, paste the code here please. That could be really helpful. Thanks. +plus, Is LFW annotation corrected by hand after flandmark algorithm performs its landmark detection or is it just an output of the flandmark algorithm? I just wonder how much it's accurate |
Hi @xvbw, the LFW annotation is manual and actually it was used to train the flandmark model. The MATLAB code to compute the center of the face is here: function [ s0 ] = prepareS0gt( points )
eyer = points(:, 1);
eyel = points(:, 2);
m1 = points(:, 7);
% centeroid of eyes
c1 = (eyer + eyel)/2;
% line between eyel and eyer
e = crossprod([eyer; 1], [eyel; 1]);
% shift centeroid of eyes (c1) along line perpendicular to e
c2 = c1 + e(1:2);
% create line perpendicular to e trough c1 (and c2 also)
p = crossprod([c1; 1], [c2; 1]);
% shift mouth along normal vector of p
m2 = m1 + p(1:2);
% create line m passing trough m1 and m2
m = crossprod([m1; 1], [m2; 1]);
% compute intersection of lines m and p and normalize
m3 = crossprod(m, p); m3 = m3./m3(3);
% S0 is centeroid of c1 and m3
s0 = round( (c1 + m3(1:2))/2 );
end; where function [ res ] = crossprod( a, b )
Ax = [ 0, -a(3), a(2);
a(3), 0, -a(1);
-a(2), a(1), 0;];
res = Ax * b(:);
end; |
Hi, while looking through LFW annotation from flandmark github page, it contains 7 landmarks. However, provided flandmark_model.xml model contains 8 landmarks. What kind of model is used in LFW_annotation.txt?
The text was updated successfully, but these errors were encountered: