GithubHelp home page GithubHelp logo

adimpression / avatar Goto Github PK

View Code? Open in Web Editor NEW

This project forked from xuzebin/avatar

0.0 1.0 0.0 82.12 MB

Realtime facial motion capture, head pose estimation and rendering of the avatar

CMake 0.36% C++ 97.38% C 1.78% Cuda 0.27% MATLAB 0.01% Batchfile 0.01% Makefile 0.03% Shell 0.01% GLSL 0.17%

avatar's Introduction

avatar

Capture facial motion without markers using monocular or binocular cameras and render a real-time avatar.

This project is still under development.

Features

  • Head pose mimicked by a real-time face mask.
  • (TODO) Facial motion mimicked by a real-time avatar.

Dependencies

  • OpenCV (>=3.2.0)
  • OpenGL
  • GLUT
  • dlib (included)
  • GFrame (included)
  • CMake

How to Compile

This will build all the libraries and executables.

mkdir build
cd build
cmake .. -DUSE_AVX_INSTRUCTIONS=1
make -j
make install

Running Head Pose Avatar

All executables are installed in build/bin/

Run FaceViewer

./FaceViewer face.obj shaders/ 5055
  • Arguments: ./FaceViewer [obj file] [shaders dirctory] [port number]

Or directly run a default version (same as the above one)

./FaceViewer

This will

  • Start rendering a face mask.
  • Start a separate thread running a server. It will transform the face model using the pose data sent from the capture client.

Run Capture Client

Open another terminal and run the client for capturing head pose.

./HeadPoseEstimation
  • By default the above command it reads in the pose model file located in current directory, and connected to localhost:5055. You can customize it by running:
./HeadPoseEstimation shape_predictor_68_face_landmarks.dat [ip-address] [port number]

This will

  • Open a camera (by default connected to device 0), capture facial landmark on your face and estimate head pose in realtime.

  • Press key s to start streaming pose data to server so you can see your avatar mimicking your head pose.

Demo

avatar's People

Contributors

xuzebin avatar

Watchers

 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.