Git Product home page Git Product logo

Comments (3)

uricamic avatar uricamic commented on July 21, 2024

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.

from clandmark.

xvbw avatar xvbw commented on July 21, 2024

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

from clandmark.

uricamic avatar uricamic commented on July 21, 2024

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 crossprod function is defined like this:

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;

from clandmark.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.