FabSoften
|
This project is an unofficial implementation of FabSoften: face beautification via dynamic skin smoothing, guided feathering, and texture restoration. This paper is from Samsung R&D Institute Bangalore, India, and is very likely patented. This implementation is mainly for educational purposes, so the performance is not optimized.
This project uses some C++20 features(e.g. The One Ranges Proposal), so you need a relatively new C++ compiler. As for the ranges
feature, you need GCC 10+, Clang++ 13+, Microsoft Visual Studio 2019 16.10+. For other features, please check https://en.cppreference.com/w/cpp/compiler_support.
Before you begin, you'll install the following softwares on your system:
7zip is used for extracting bzip2 files(e.g. shape_predictor_68_face_landmarks.dat.bz2
). If you'd like to manually provide those models without auto-downloading through CMake, there is no need to use 7zip. If not, make sure 7z -h
works on the command line, for example:
On Windows, it's highly recommended to use Powershell
or Windows Terminal to build this project:
This library provides a thin C89 API over the C++ API, please check this example for details.
The C++ API and other examples can also be found in the examples
folder.
FabSoften is primarily distributed under the terms of the MIT license.
All code in this repository is released under the terms of the MIT license.
Those assets, models, and external dependencies are released under their licenses, respectively.