Copyright (C) 2020 Félix Brezo (@febrezo)
Facefy is an application that wraps the capabilities of well-known technologies like Dlib and face_recognition using a custom JSON RPC daemon created ad-hoc in Python 3.6+ (named pyfaces
) and a GTK-based desktop environment.
This is free software, and you are welcome to redistribute it under certain conditions.
Copyright (c) 2020 Félix Brezo (https://felixbrezo.com)
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
For more details on the license, check the COPYING file.
The application is stored in my own Flatpak Repository but has some dependencies linked to the Gnome and Elementary environment which can be downloaded from Flathub.
Thus, you need to install the application in your own OS following the official instructions you will find here. Debian, Ubuntu, PureOS, Fedora, RedHat, ArchLinux, elementaryOS, Gentoo, OpenSuse , Zorin or Raspberry Pi, amongst many others are currently supported.
Then, you need to add the two remotes required by Facefy. The flathub
one to download some of the dependencies from and the febrehub
which stores the application itself. This can be done using the following commands.
flatpak remote-add --if-not-exists febrehub https://felixbrezo.com/febrehub.flatpakrepo
The aforementioned commands will require root
permissions to add the remotes, but they can also be installed for the current system using --user
.
Once added the repos, use the following to install:
flatpak install https://felixbrezo.com/tools/com.felixbrezo.Facefy.flatpakref
Note that if you didn't have the Flathub repository installed it will require you to enter the root password. The Flathub repository is used to grab some dependencies which are easily reachable from there.
To run the application simply type the following command:
flatpak run com.felixbrezo.Facefy
There is a Frequent Asked Section available in this respository in several languages:
The application is fully localized in the aforementioned languages. More to come.
The application is built on top of pyfaces
, a simple wrapper built to make it easier to work with dlib
and face_recognition
. The class diagram of the GUI has been built using PlantUML and is defined as follows.
For more details on how to work with the application locally, check the HACKING.md
file.