Skip to content

clearisoft/fast-face-android

 
 

Repository files navigation

Android App for Real-time Face Landmark Detection

Fast Face is an android application which detects facial landmark . It detects 68 landmarks of human face
chin to eyebrow in real-time. Also, it can detect people up to 3 if you guys show your frontal faces.

It is an upgraded version of dlib-android, Not only revising the code but additional task for optimizing dlib library was needed. As a result, Fast Face speeds up 2x or more from the original. Higher resoluton and higher detection speed.

I think it is not the best one, there are some issues that can be more speedy one.
So, if you guys already improved or want to improve this code, feel free to contact me. Test and Enjoy it :)

Screenshot


Environments

  • DEVICE : SAMSUNG-A8 2015(@cortex-a53 core)
  • API : 23 (Android 6.0.1)
  • TIME : 50ms ~ 70ms

Features

  • Support HOG detector
  • HOG Face detection
  • Facial Landmark/Expression

Sample code

Facial landmark detection

// detecs every 3 frames
if(mframeNum % 3 == 0){
    synchronized (OnGetImageListener.this) {
        results = mFaceDet.detect(mResizedBitmap);
    }
}

// Draw on bitmap
if (results.size() != 0) {
    for (final VisionDetRet ret : results) {
        float resizeRatio = 4.5f;
        Canvas canvas = new Canvas(mInversedBipmap);

        // Draw landmark
        ArrayList<Point> landmarks = ret.getFaceLandmarks();
        for (Point point : landmarks) {
            int pointX = (int) (point.x * resizeRatio);
            int pointY = (int) (point.y * resizeRatio);
            canvas.drawCircle(pointX, pointY, 4, mFaceLandmardkPaint);
        }
     }
}

License

License

About

Use it to double check face

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.3%
  • Other 0.7%