Class Facemark

Direct Known Subclasses:
FacemarkKazemi, FacemarkTrain

public class Facemark extends Algorithm
Abstract base class for all facemark models To utilize this API in your program, please take a look at the REF: tutorial_table_of_content_facemark ### Description Facemark is a base class which provides universal access to any specific facemark algorithm. Therefore, the users should declare a desired algorithm before they can use it in their application. Here is an example on how to declare a facemark algorithm: // Using Facemark in your code: Ptr<Facemark> facemark = createFacemarkLBF(); The typical pipeline for facemark detection is as follows:
  • Load the trained model using Facemark::loadModel.
  • Perform the fitting on an image via Facemark::fit.
  • Constructor Details

    • Facemark

      protected Facemark(long addr)
  • Method Details

    • __fromPtr__

      public static Facemark __fromPtr__(long addr)
    • loadModel

      public void loadModel(String model)
      A function to load the trained model before the fitting process.
      Parameters:
      model - A string represent the filename of a trained model. <B>Example of usage</B> facemark->loadModel("../data/lbf.model");
    • fit

      public boolean fit(Mat image, MatOfRect faces, List<MatOfPoint2f> landmarks)
      Detect facial landmarks from an image.
      Parameters:
      image - Input image.
      faces - Output of the function which represent region of interest of the detected faces. Each face is stored in cv::Rect container.
      landmarks - The detected landmark points for each faces. <B>Example of usage</B> Mat image = imread("image.jpg"); std::vector<Rect> faces; std::vector<std::vector<Point2f> > landmarks; facemark->fit(image, faces, landmarks);
      Returns:
      automatically generated
    • finalize

      protected void finalize() throws Throwable
      Overrides:
      finalize in class Algorithm
      Throws:
      Throwable