Autenticação facial no ubuntu +/- fácil....
Senhores como alguns volta e meia perguntam como fazer reconhecimento facial, alguns outros também devem ter notado que o pacote pam facial para ubuntu voltou desde a versão 14.04, porém as versões mais recentes estão bichadas para variar. Eu jamais entenderei a troco de que deixam os pacotes nestas condições nos repos, por isso vai abaixo o link para um pacote corrigido, para fazer download desse pacote, patcheado por um usuário do grupo.
- Mas para que serve o reconhecimento facial?
- Dentre muitas coisas como dispositivo se segurança de acesso a recursos de ou o próprio sistema.
O reconhecimento facial apresentado agora como novidade naquele outro sistema, está disponível para linux já há quase 10 anos, mas infelizmente pouco explorado e como muita gente ganhava dinheiro com isso as facilidades na configuração para o usuário final eram postas de lado.
Já faz algum tempo que queria escrever este tutorial mas pela falta de tempo estou postergando desde a versão 14.04 do ubuntu, porém para começar 2017 sem dever nada a (quase) ninguém, vejamos abaixo como fazer funcionar nas distribuições a seguir.
Clique neste link:
para ubuntu 12.04 digite:
sudo dpkg -i pam-authentication-face-auth_20120330-1_amd64.deb
para ubuntu 14.04:
sudo ln -s /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.3
sudo ln -s /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.3
sudo ln -s /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.3
sudo ln -s /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.3
sudo dpkg -i pam-authentication-face-auth_20120330-1_amd64.deb
para ubuntu 16.04 digitar essas linhas além da linha destinada ao ubuntu 12.04:
sudo ln -s /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.3
sudo ln -s /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.3
sudo ln -s /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.3
sudo ln -s /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4.9 /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.3
sudo dpkg -i pam-authentication-face-auth_20120330-1_amd64.deb
Sempre crie os links simbólicos antes ou o pacote não vai instalar. O pacote opencv até a última vez que eu instalei na minha máquina de trabalho, era totalmente retro-compatível com os empacotamentos anteriores em nível de chamadas e instruções apenas trocando o nome das bibliotecas (no caso criando links) é possível fazer com que o pam-face-auth encontre as instruções que precisa nos pacotes mais atuais.
Eu prefiro ainda ao invés de usar a recomendação dos outros tutoriais para ubuntu que mandam incluir o módulo completo na base PAM do ubuntu (e assim trancar o usuário em caso de leis de murphy e também para exigir uma medida mais invasiva quando se quiser desabilitar), incluir o plugin apenas nos módulos que eu desejo usar por vez ou combinados, exemplos:
modifique seu arquivo lightdm assim:
sudo pico /etc/pam.d/lightdm
#%PAM-1.0
auth sufficient pam_face_authentication.so enableX (inclua esta linha)
auth requisite pam_nologin.so
modifique seu arquivo sudo assim:
sudo pico /etc/pam.d/sudo
#%PAM-1.0
auth sufficient pam_face_authentication.so enableX (inclua esta linha)
auth required pam_env.so readenv=1 user_readenv=0
Com esses padrões de configuração o comando ainda é devolvido para o usuário caso sua face não seja reconhecida, tal qual o sistema de impressão digital de caixas eletrônicos. Após tentar 3 vezes sem sucesso, o usuário pode digitar a senha antiga para ter acesso ao sistema novamente.
Sejam felizes! :)
Vinicius Beltrão