Ho visto in giro per il web la possibilità di autenticarsi attraverso il riconoscimento facciale con Linux, in particolare con [tag]Ubuntu[/tag].
Ho ricompilato il .deb da zero, aggiornato il control e le dipendenze.
Il .deb adesso è creato dai sorgenti nel metodo puro, niente checkinstall.
Da repository
Aggiungiamo il repository
(ho appena aggiunto il pacchetto per Maverick oltre che per Lucid
per entrambi la procedura e il ppa è uguale)
sudo add-apt-repository ppa:antonio.chiurazzi/ppa
Aggiorniamo il sistema
sudo apt-get update
Adesso è possibile installare Face Recognition tramite apt via shell, synaptic, ubuntu software center ecc.
Da terminale potete dare semplicemente
sudo apt-get install pam-face-authentication
Installazione da sorgenti
Come prima cosa bisogna installare le dipendenze
(Se installate da repository saltate questo passaggio e andate direttamente alla configurazione)
Lucid
sudo apt-get install build-essential cmake qt4-qmake libx11-dev libcv-dev libcvaux-dev libhighgui4 libhighgui-dev libqt4-dev libpam0g-dev libswscale0
Maverick
sudo apt-get install build-essential cmake qt4-qmake libx11-dev libcv-dev libcvaux-dev libhighgui4 libhighgui-dev libqt4-dev libpam0g-dev checkinstall
Adesso passiamo alla configurazione ed installazione
cd /tmp
wget http://pam-face-authentication.googlecode.com/files/pam-face-authentication-0.3.tar.gz
tar zxf pam-face-authentication-0.3.tar.gz && cd pam-face-authentication-*
mkdir build && cd build
cmake -D CMAKE_INSTALL_PREFIX=/usr ..
make
sudo checkinstall –pkgname=pam-authentication-face-auth
Checkinstall sempre consigliato per rintracciare il pacchetto e rimuoverlo facilmente.
[spoiler]Deprecato
Per facilitarvi la vita, ho creato un .deb con checkinstall dai sorgenti compilati che potete scaricare da qui
Il .deb è compilato per x86.[/spoiler]
Configurazione
Dopo averlo installato, bisogna aggiungere [tag]Face Recognition[/tag] a Gdm e a Gnome-screensaver in modo da potersi autenticare.
E’ molto semplice, basta fare solo un copia e incolla di quello che segue:
sudo sed -i ‘1i auth sufficient pam_face_authentication.so enableX’ /etc/pam.d/gdm
sudo sed -i ‘1i auth sufficient pam_face_authentication.so enableX’ /etc/pam.d/gnome-screensaver
Kde
sudo sed -i ‘1i auth sufficient pam_face_authentication.so enableX’ /etc/pam.d/kdm
Adesso dobbiamo far precaricare v4l per usare la webcam:
sudo gedit /etc/ld.so.preload
e incollate quanto segue
/usr/lib/libv4l/v4l1compat.so
E’ possibile anche collegare [tag]Face Recognition[/tag] a “sudo”, solo che se il riconoscimento facciale fallisce, non da la possibilità di immettere la password,come accade con GDM e Gnome-screensaver.
Se volete provare digitate:
sudo sed -i ‘1i auth sufficient pam_face_authentication.so enableX’ /etc/pam.d/sudo
Adesso andiamo in Applicazioni > Altro > Qt Face Trainer
(se non lo trovate, fate click destro sul menu, modifica menu, e spuntate il sottomenu altro ed eventualmente Qt face trainer).
Il repository dovrebbe metterlo nella sezione “video”, in alternativa se non lo trovate cercate nella sezione “altro”.
Avviate l’ applicazione e fate un paio di record (attenti alla luce, se cambia l’applicazione può avere qualche problema, quindi consiglio di fare qualche record anche con diverse luci).
Adesso riavviate X, o ancor meglio il sistema.
Per ripristinare le normali autenticazioni con password date:
sudo gedit /etc/pam.d/gdm
Per Kde
kdesudo kate /etc/pam.d/kdm
e rimuovete la voce:
auth sufficient pam_face_authentication.so enableX
stessa cosa adesso con lo screensaver:
sudo gedit /etc/pam.d/gnome-screensaver
e rimuovete:
auth sufficient pam_face_authentication.so enableX
se l’ avete abilitato anche con “sudo” digitate:
sudo gedit /etc/pam.d/sudo
e rimuovete anche questa volta:
auth sufficient pam_face_authentication.so enableX
Non vi consiglio di abilitarlo con sudo,visto che l’ applicazione ancora non è del tutto bug-free, quindi se non funziona dovrete smanettare per sistemare tutto.
P.s. io ho fatto 8 record per stare tranquillo che mi riconosca anche se non guardo proprio fisso in camera, e ho notato che per sbloccare lo screensaver lo fa in silent, quindi non vi fa vedere il video, ma comunque vi riconosce senza problemi.
Per il momento rimango attivi l’autenticazione sia con gdm che con gnome-screensaver, giusto per sboroneggiare un pò al LinuxDay :D
Enjoy
UP:
guida aggiornata per la compilazione dei sorgenti e per configurare kde
UP IMPORTANTE!
Ho ricompilato da zero dai sorgenti l’applicazione, adesso è un .deb come dio comanda. E’ uppato su Launchpad, quindi potete installarlo anche dal repository.
Il pacchetto è firmato con la mia chiave GPG e ricordo che ho anche firmato il codice di condotta già anni fa, quindi potete stare tranquilli sulla genuinità del pacchetto.