C++ implementation for OpenFace library by CMU.
Although there are many dependencies, the repo tries to minimize manual setup steps by using hunter packaging. Currently the only package that needs to be manually setup is torch.
We use torch to run our models. I had the following setup:
- Torch windows binaries from here
dpnn
required package by running this hacklibjpeg
on windows, then re-ranluarocks install image
in order to make sure it is linked to libjpeg (otherwise torch cannot deal with jpegs)- Ascii models from here since binary models won't work.
- Good luck :)
This is a standard cmake project. Create a build directory from root, then cmake ..
, followed by cmake --build .
should do the trick.
OpenFaceCpp currently takes an an input an xml config file. A sample is in src/OpenFaceConfig.xml
. You will see a couple models are needed, they can be found in the original repo.
E.g. OpenFaceConfig.xml expects:
- shape_predictor_68_face_landmarks.dat: it's possible to download it by running in PS:
wget http://dlib.net/files/shape_predictor_68_face_landmarks.dat.bz2 -O dlib/shape_predictor_68_face_landmarks.dat.bz2
- nn4.small2.v1: get it (and other models) from here