terça-feira, 3 de setembro de 2013

LOGIN POR RECONHECIMENTO FACIAL NO UBUNTU

PARA COMEÇAR PRECISAMOS DE DUAS APLICAÇÕES COM SUAS DEPENDÊNCIAS: PAM-FACE-AUTHENTICATION E OPENCV. NO MEU CASO ESTOU INSTALANDO NO UBUNTU 13.04 (Raring Ringtail)

Procedimentos:

1 - Instalar OpenCV e suas dependêcnias:

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg62-dev libtiff4-dev cmake libswscale-dev libjasper-dev

Faça o Download do OPENCV-2.4.6

http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.6.1/opencv-2.4.6.1.tar.gz/download
tar -xvf OpenCV-2.4.6.1.tar.bz2

cd OpenCV-2.4.6.1/
# cmake .
# make
# make install


2 - Instalar o PAM-FACE-AUTHENTICATION

segue o Link do download do Projeto:
http://code.google.com/p/pam-face-authentication/downloads/detail?name=pam-face-authentication-0.3.tar.gz

É bem chato, mas é muito empolgante quando o resultado é atingido.



Primeiro Instale as dependências:

sudo apt-get install build-essential cmake qt4-qmake libx11-dev libcv-dev libcvaux-dev libhighgui2.4 libhighgui-dev libqt4-dev libpam0g-dev checkinstall python-opencv

Descompacte o arquivo:
tar -xzf pam-face-authentication.tar.gz

Entre no diretório onde descompactou a pasta:
cd pam-face-authentication-0.3

Copie o arquivo "OpenCVConfig.cmake" para dentro "pam-face-authentication-0.3/cmake/modules/FindOpenCV.cmake


Edite o arquivo: gedit ./cmake/modules/FindOpenCV.cmake

Localize os textos abaixo e substitua para os que estão em negrito:

SET(OpenCV_INCLUDE_DIRS "${OpenCV_INSTALL_PATH}/include/opencv;${OpenCV_INSTALL_PATH}/include")

SET(OpenCV_INCLUDE_DIRS "/usr/include/opencv;/usr/include")

Salve o arquivo e entre novamente em outro arquivo:

gedit ./CMakeLists.txt Faça a mesma coisa substituindo os valores para os que estão em negrito:

INCLUDE_DIRECTORIES(${OPENCV_INCLUDE_DIR})

INCLUDE_DIRECTORIES(${OpenCV_INCLUDE_DIRS})

TARGET_LINK_LIBRARIES( pam_face_authentication ${PAM_LIBRARIES} ${OPENCV_LIBRARIES})

TARGET_LINK_LIBRARIES( pam_face_authentication ${PAM_LIBRARIES} ${OpenCV_LIBS})

TARGET_LINK_LIBRARIES( qt-facetrainer ${QT_LIBRARIES} ${OPENCV_LIBRARIES})

TARGET_LINK_LIBRARIES( qt-facetrainer ${QT_LIBRARIES} ${OpenCV_LIBS})

Salve o arquivo e saia dele;

Crie o diretório build:
mkdir build

Entre no diretório build:
cd build

Execute o comando:
cmake -D CMAKE_INSTALL_PREFIX=/usr ..

Execute o comando:
make

Execute o comando:
sudo make install

---------------------------------------------------------------------------------
O ainda deu um probleminha, e realizei mais este procedimento:

cat << EOF | sudo tee /usr/share/pam-configs/face_authentication /dev/null

**Name:** face_authentication profile  
**Default:** yes  
**Priority:** 900   
**Auth-Type:** Primary  
**Auth:** [success=end default=ignore] pam_face_authentication.so enableX 
EOF

 sudo pam-auth-update --package face_authentication

Depois executei o o programa cadastrei meu rosto (5 vezes).

Execute o programa:
qt-facetrainer

Para a autenticação funcionar no login, tem que ir em "/etc/pam.d/common-auth".

auth    sufficient      pam_face_authentication.so enableX

Para a autenticação via sudo, tem que ir no "/etc/pam.d/sudo"

auth    sufficient      pam_face_authentication.so enableX

Reiniciar a máquina, pelo menos no meu a tela ficou piscando, só parou quando reiniciei.

Nenhum comentário:

Postar um comentário

Quem é Almir JR