Giter VIP home page Giter VIP logo

final's Introduction

Face alignment using OpenCV

Build Status Gem Version

  • Face alignment is a computer vision technology for identifying the geometric structure of human faces in digital images. Given the location and size of a face, it automatically determines the shape of the face components such as eyes and nose.

The main aim of the project is an implementation of an excellent paper from this year's Computer Vision and Pattern Recognition Conference: One Millisecond Face Alignment with an Ensemble of Regression Trees by Vahid Kazemi and Josephine Sullivan

All discussion regarding the project can be found at opencv face alignment slack channel:

https://open-cv.slack.com/messages/C5HGCM4PR/

I have tried to provide this functionality to OpenCV. This is a tutorial describing how to use it. use it today.

Thumbnail of hacker

Usage

The face alignment functionality is provided in OpenCV contrib. To use this you have to download and install OpenCV and build it along with contrib modules.

  1. Follow this link to install OpenCV along with OpenCV contrib : http://docs.opencv.org/trunk/d7/d9f/tutorial_linux_install.html

  2. After installing OpenCV along with contrib modules you can directly use the following samples :

     1. sample_train_landmark_detector.cpp for training your own face landmark detector.
     2. sampleDetectLandmarks.cpp for detecting landmarks in a given image.
     3. sampleDetectLandmarksvideo.cpp for detecting landmarks in a video.
     4. sampleFaceSwapping.cpp for swapping faces in 2 images.
     5. sampleFaceLapseSequence.cpp to create a face lapse sequence from a set of images.
    

The details for using them are here

Tutorial

To understand the usage and code of the samples. Jump here

Roadmap

See the pull request for discussion regarding various issues (and known issues).

Project philosophy

This project aims at providing face alignment i.e face landmark detection to OpenCV users.

Contributing

Please read before starting work on a pull request: https://github.com/opencv/opencv/wiki/How_to_contribute

Summary of guidelines:

  1. One pull request per issue
  2. Choose the right base branch
  3. Include tests and documentation
  4. Clean up "oops" commits before submitting
  5. Follow the coding style guide.

final's People

Contributors

iamunbounded avatar

Stargazers

 avatar  avatar

Watchers

James Cloos avatar  avatar

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.