All Projects → Tastenkunst → brfv4_win_examples

Tastenkunst / brfv4_win_examples

Licence: other
Windows C++ examples utilizing OpenCV for camera access and drawing the face tracking results.

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to brfv4 win examples

ARFaceFilter
Javascript/WebGL lightweight face tracking library designed for augmented reality webcam filters. Features : multiple faces detection, rotation, mouth opening. Various integration examples are provided (Three.js, Babylon.js, FaceSwap, Canvas2D, CSS3D...).
Stars: ✭ 72 (+453.85%)
Mutual labels:  tracking, detection, face, face-detection, face-tracking
brfv4 android examples
Android Studio project (Java)
Stars: ✭ 43 (+230.77%)
Mutual labels:  tracking, detection, face, face-detection, face-tracking
Jeelizfacefilter
Javascript/WebGL lightweight face tracking library designed for augmented reality webcam filters. Features : multiple faces detection, rotation, mouth opening. Various integration examples are provided (Three.js, Babylon.js, FaceSwap, Canvas2D, CSS3D...).
Stars: ✭ 2,042 (+15607.69%)
Mutual labels:  tracking, detection, face, face-detection, face-tracking
Brfv4 javascript examples
BRFv4 - HTML5/Javascript - examples project. Reference implementation for all other platform example packages.
Stars: ✭ 460 (+3438.46%)
Mutual labels:  tracking, detection, face, face-detection, face-tracking
jeelizGlanceTracker
JavaScript/WebGL lib: detect if the user is looking at the screen or not from the webcam video feed. Lightweight and robust to all lighting conditions. Great for play/pause videos if the user is looking or not, or for person detection. Link to live demo.
Stars: ✭ 68 (+423.08%)
Mutual labels:  detection, face, face-detection, face-tracking
Jeelizweboji
JavaScript/WebGL real-time face tracking and expression detection library. Build your own emoticons animated in real time in the browser! SVG and THREE.js integration demos are provided.
Stars: ✭ 835 (+6323.08%)
Mutual labels:  tracking, face, face-detection, face-tracking
Brfv4 mac examples
macOS C++ examples utilizing OpenCV for camera access and drawing the face tracking results.
Stars: ✭ 25 (+92.31%)
Mutual labels:  face, face-detection, face-tracking
Dockerface
Face detection using deep learning.
Stars: ✭ 173 (+1230.77%)
Mutual labels:  detection, face, face-detection
Facelandmarksdetection
Finds facial features such as face contour, eyes, mouth and nose in an image.
Stars: ✭ 130 (+900%)
Mutual labels:  face, face-detection, face-tracking
jeelizPupillometry
Real-time pupillometry in the web browser using a 4K webcam video feed processed by this WebGL/Javascript library. 2 demo experiments are included.
Stars: ✭ 78 (+500%)
Mutual labels:  tracking, detection, face
Face Track Detect Extract
💎 Detect , track and extract the optimal face in multi-target faces (exclude side face and select the optimal face).
Stars: ✭ 434 (+3238.46%)
Mutual labels:  tracking, detection, face
timeline
Timeline - A photo organizer
Stars: ✭ 39 (+200%)
Mutual labels:  detection, face, face-detection
Object-Detection-And-Tracking
Target detection in the first frame and Tracking target by SiamRPN.
Stars: ✭ 33 (+153.85%)
Mutual labels:  tracking, detection
face
[deprecated] 👽 Face Recognition package for Laravel
Stars: ✭ 37 (+184.62%)
Mutual labels:  face, face-detection
facetool
Command line utility to manipulate faces in videos and images
Stars: ✭ 38 (+192.31%)
Mutual labels:  face, face-detection
farm-animal-tracking
Farm Animal Tracking (FAT)
Stars: ✭ 19 (+46.15%)
Mutual labels:  tracking, detection
T System
the moving objects tracking system via two axis camera motion (and as optionally n joint robotic arm) for raspberry pi distributions
Stars: ✭ 17 (+30.77%)
Mutual labels:  face-detection, face-tracking
Face-Detection-and-Tracking
Computer Vision model to detect face in the first frame of a video and to continue tracking it in the rest of the video. This is implemented in OpenCV 3.3.0 and Python 2.7
Stars: ✭ 24 (+84.62%)
Mutual labels:  face-detection, face-tracking
android-face-landmarks
Android app that localizes facial landmarks in nearly real-time
Stars: ✭ 62 (+376.92%)
Mutual labels:  face-detection, face-tracking
Insta flters with python
With this program you can add hat & glass on your face(it's support multiple faces)
Stars: ✭ 21 (+61.54%)
Mutual labels:  face, face-detection

Beyond Reality Face SDK - v4.0.0 (BRFv4) - Readme

What is BRFv4?

It is a real time face detection and tracking SDK. You put in image data (camera stream or single picture) and it outputs facial data.

alt text

Ready to try!

Read the EULA (eula.txt) carefully before using the SDK. Once you decide to use BRFv4 commercially, you will get a separate license agreement, that you must agree to. You can try the SDK free of charge to evaluate if it fits your projects needs. Once you decided to use BRFv4 in your project, please contact us for a commercial license:

Visit us online.

Getting started.

To test BRFv4 simply visit the Javascript demo site:

This page also includes all available packages for download.

Which platforms does it support?

HTML5/Browser – Javascript (works in Chrome/Firefox/Edge/Opera/Safari 11)

Run the index.html on a local server.

iOS - ObjectiveC/C++

Open the Xcode project. Attach your iOS device and run the example app on your device.

Android - Java

Open the Android Studio project. Attach your Android device and run the example app on your device.

macOS - C++ utilizing OpenCV for camera access and drawing

Have OpenCV brewed (opencv3) on your system. Open the Xcode project and just run it on your Mac.

Windows - C++ utilizing OpenCV for camera access and drawing

Good luck in trying to compile OpenCV for your Windows. Update the Visual Studio (2017) project properties that mention OpenCV. Then run the Release x64 target. Fingers crossed!

Adobe AIR - Actionscript 3 on Windows, macOS, iOS and Android

Use your preferred IDE. Add the src folder and the ANE itself to your class path and run the example class on your desired device (not in a simulator). Unfortunately we had to discontinue Flash Player (SWF in browser) support.

Technical overview

BRFv4 comes with the following components:

  • face detection - Finds faces (rectangles) in an image/camera stream
  • face tracking - Finds 68 facial landmarks/features
  • point tracking - Tracks points in a webcam stream

All available packages have roughly the same content and come with a set of examples to show SDK use cases.

What image size does BRFv4 need?

You can input any image size.

Internally BRFv4 uses a DYNx480 (landscape) or 480xDYN (portrait) image for the analysis. So 480px is the base size that every other input size get's scaled to, eg.

landscape:

  • 640 x 480 -> 640 x 480 // fastest, no scaling
  • 1280 x 720 -> 854 x 480
  • 1920 x 1080 -> 854 x 480

portrait:

  • 480 x 640 -> 480 x 640 // fastest, no scaling
  • 720 x 1280 -> 480 x 854
  • 1080 x 1920 -> 480 x 854

BRFv4 scales the results up again, so you don't have to do that yourself anymore. All parameters named *size or *width are pixel values based on the actual image size. eg. telling BRF what face sizes to initially detect:

brfManager.setFaceDetectionParams(int minFaceSize, int maxFaceSize, int stepSize, int minMergeNeighbors);

If you work with a 640x480 camera stream, it would be something like this:

brfManager.setFaceDetectionParams(144, 432, 12, 8);

Where as if you work with a 1280x720 camera stream, you will need something like this:

brfManager.setFaceDetectionParams(216, 648, 12, 8);

In the examples we generalize it a bit:

// We have either a landscape area (desktop), then choose height or
// we have a portrait area (mobile), then choose width as max face size.

var maxFaceSize = _faceDetectionRoi.height;

if(_faceDetectionRoi.width < _faceDetectionRoi.height) {
 maxFaceSize = _faceDetectionRoi.width;
}

brfManager.setFaceDetectionParams(maxFaceSize * 0.30, maxFaceSize * 0.90, 12, 8);

More on that in the API, see link above.

Release notes

v4.0.0 - 20th June 2017

It's done! After over a year of development Tastenkunst is proud to announce the release of BRFv4.

  • Changed: Completely rewritten the C++ core: image handling, face detection and tracking algorithms etc.
  • Changed: Image data can now be of any site. BRFv4 will handle the scaling internally.
  • Changed: Point tracking and face tracking can now be done simultaneously.
  • Changed: Face tracking algorithm changed from ASM to ERT. This comes with an increased file size though (For JS up from 2MB to 10MB)
  • Added: Multi face tracking. It is now possible to track more than one face.
  • Added: Example project for native Android (Java, Android Studio project)
  • Added: Example project for macOS (C++, Xcode project, needs brewed OpenCV for camera handling and drawing)
  • Added: Example project for Windows (C++, Visual Studio 2017 project, needs OpenCV for camera handling and drawing)
  • Added: Adobe AIR native extension now supports Windows, macOS, iOS and Android.
  • Removed: Support for Flash Player (SWF in Browser).

Licenses

Used Haar Cascade: haarcascade_frontalface_default.xml

<!--
    Stump-based 24x24 discrete(?) adaboost frontal face detector.
    Created by Rainer Lienhart.

////////////////////////////////////////////////////////////////////////////////////////

  IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.

  By downloading, copying, installing or using the software you agree to this license.
  If you do not agree to this license, do not download, install,
  copy or use the software.


                        Intel License Agreement
                For Open Source Computer Vision Library

 Copyright (C) 2000, Intel Corporation, all rights reserved.
 Third party copyrights are property of their respective owners.

 Redistribution and use in source and binary forms, with or without modification,
 are permitted provided that the following conditions are met:

   * Redistribution's of source code must retain the above copyright notice,
     this list of conditions and the following disclaimer.

   * Redistribution's in binary form must reproduce the above copyright notice,
     this list of conditions and the following disclaimer in the documentation
     and/or other materials provided with the distribution.

   * The name of Intel Corporation may not be used to endorse or promote products
     derived from this software without specific prior written permission.

 This software is provided by the copyright holders and contributors "as is" and
 any express or implied warranties, including, but not limited to, the implied
 warranties of merchantability and fitness for a particular purpose are disclaimed.
 In no event shall the Intel Corporation or contributors be liable for any direct,
 indirect, incidental, special, exemplary, or consequential damages
 (including, but not limited to, procurement of substitute goods or services;
 loss of use, data, or profits; or business interruption) however caused
 and on any theory of liability, whether in contract, strict liability,
 or tort (including negligence or otherwise) arising in any way out of
 the use of this software, even if advised of the possibility of such damage.
-->
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].