Malic – Reconhecimento Facial Open-Source PDF Imprimir E-mail
Escrito por charlesbezzerra   
Ter, 05 de Abril de 2011 01:35

Olá pessoal estava lendo alguns artigos sobre biometria facial e achei um bem legal escrito por Alessandro de Oliveira Faria. Conhecido por cabelo no viva o linux. ja fui em uma palestra dele e realmente o cara é fera.
Então vamos lá!

O reconhecimento facial é um dos processos de identificação mais utilizados pelos seres humanos, pois permite identificar rapidamente qualquer pessoa e assim definir o tipo apropriado de interação com ela. Além de identificar, podemos perceber o estado emocional de uma pessoa apenas observando sua expressão facial.

Embora o reconhecimento facial seja uma tarefa simples para o ser humano, é extremamente complexo implementar esse processo em uma máquina, pois não sabemos, ao certo, como o cérebro humano realiza essa tarefa. O cérebro humano pode identificar corretamente uma pessoa a partir de sua imagem facial mesmo sobre as mais diversas condições, como variações de iluminação, observando apenas uma de suas características ou partes, e até mesmo com distorções ou deformações.
A eficiência de um sistema de reconhecimento facial pode ser medida pela porcentagem de acertos na identificação de pessoas sobre essas condições. Os sistemas de reconhecimento facial que existem atualmente não são seguros o suficiente para serem aplicados em larga escala, mas muitos avanços foram obtidos.

Existem diversas técnicas que podem ser utilizadas para a criação de um sistema de reconhecimento facial. Descreveremos as técnicas utilizadas para a construção de um sistema de reconhecimento facial que, a partir de uma fotografia ou imagem de vídeo, seja capaz de extrair a imagem facial da pessoa e verificar se essa pessoa pertence ou não a uma base de dados com imagens faciais previamente construídas.

O sistema de reconhecimento de faces é formado por três fases fundamentais: rastreamento da face, extração e seleção de características faciais, e reconhecimento da face.

Fonte: Bastet – Sistema de reconhecimento facial
http://www.bibl.ita.br/viiiencita/


Malic – Reconhecimento facial open-source


O malic é um projeto de reconhecimento facial open-source baseado na biblioteca OpenCV e Malib, utilizando filtro de gabor. Este projeto é composto 4 principais módulos:

  • malicsampling: Utilizado para efetuar as marcações da face (olhos, nariz e outros);
  • malicfacesampling: Este módulo armazena a face e o id do usuário (nome);
  • malicrecog: Programa responsável pelo reconhecimento facial;
  • malicsaver: Módulo simples, porém interessante. Neste aplicativo, o protetor de tela é invocado quando não existir uma face diante a câmera.

Ambiente:

  • Sistema operacional OpenSuSE 10.3;
  • Compilador gcc 4.2.1;
  • Kernel 2.6.22.5-31;
  • Biblioteca OpenCV 1.0;
  • Biblioteca Malib 0.5.8;
  • Dispositivo de Video Captura: Webcam Orbit Logitech – Device compatível com api V4L (Vídeo for Linux) 1/2;
  • Micro computador padrão IBM-PC (32/64 bits); Processador Pentium Cuo Core/ Core 2 Duo2Gbytes de RAM.

Downloads e instalação

Abaixo os links para download dos pacotes:

OpenCV (fontes):
http://easynews.dl.sourceforge.net/…/opencv-1.0.0.tar.gz

OpenCV (rpm):
http://rpm.pbone.net/index.php3?stat=3&search=opencv&srodzaj=3

OpenCV-devel (rpm):
http://rpm.pbone.net/index.php3?stat=3&search=opencv-devel&srodzaj=3

Malib:
http://www.malib.net/archives/libmalib-0.5.8.tar.gz

Malic:
http://ufpr.dl.sourceforge.net/sourceforge/malic/malic-0.0.9.1.tar.gz

Instalação dos pacotes:

Para instalar a biblioteca a partir do código fonte, baixe o pacote .tar.gz (link acima), descompacte e execute os tradicionais comandos de magia negra ./configure, make e make install, como no exemplo abaixo.

# tar -zxvf opencv-1.0.0.tar.gz
# cd opencv-1.0.0
# ./configure

Se todas as dependências foram satisfeitas e tudo estiver funcionando corretamente, teremos uma tela similar ao resultado logo abaixo:

General configuration ========================================
Compiler: g++
CXXFLAGS: -Wall -fno-rtti -pipe -O3 -g -march=i686
-ffast-math -fomit-frame-pointer
Install path: /usr/local
HighGUI configuration ========================================
Windowing system --------------
Use Carbon / Mac OS X: no
Use gtk+ 2.x: yes
Use gthread: yes
Image I/O ---------------------
Use libjpeg: yes
Use zlib: yes
Use libpng: yes
Use libtiff: yes
Use libjasper: yes
Use libIlmImf: no
Video I/O ---------------------
Use QuickTime / Mac OS X: no
Use xine: no
Use ffmpeg: no
Use dc1394 & raw1394: no
Use v4l: yes
Use v4l2: yes
Wrappers for other languages =================================
SWIG
Python yes
Additional build settings ====================================
Build demo apps yes
Now run make ...

Agora execute os mágicos comandos make e make install.

# make
# make install

Se preferir instalar os pacotes .rpm, abaixo as instruções de instalação:

# rpm -ivh opencv-1.0.0-22.1.i386.rpm
# rpm -ivh opencv-devel-1.0.0-22.1.i386.rpm

Logo a seguir as instruções de compilação da biblioteca Malib:

$ tar -zxvf libmalib-0.5.8.tar.gz
$ cd libmalib-0.5.8
$ ./configure --prefix=/usr/local/malib
$ make
$ su

Senha:
# make install

Se você chegou até aqui parabéns, pois o seu sistema está preparado para compilar o projeto de reconhecimento facial Malic, abaixo as instruções:

$ tar -zxvf malic-0.0.9.1.tar.gz
$ cd malic-0.9.1
$ CFLAGS="-I/usr/local/malib/include -I/usr/local/opencv/include" \
LDFLAGS="-L/usr/local/malib/lib -L/usr/local/opencv/lib" ./configure --prefix=/usr/local/malic
$ make
$ su

Senha:
# make install

Utilização do sistema

O primeiro passo é informar as coordenadas dos pontos característicos da face sobrancelha, olhos, nariz e boca. Para tal tarefa, execute o comando ./malicsampling e se tudo estiver funcionando corretamente, teremos uma tela como na ilustração abaixo:

Fig-A: Mapeando os pontos característicos

Para informar os pontos característicos no sistema, clique nos pontos extremos (esquerdo e direito) das sobrancelhas, dos olhos, nariz e boca. Lembrando que ao clicar em cada ponto, devemos pressionar o respectivo botão da coordenada correspondente. Ao término, pressione o botão ENTER para armazenar as coordenadas e depois no botão SAVE para gravar o arquivo .XML.

Agora o segundo passo é armazenar a FACE e um ID (nome se preferir) para um posterior autenticação. Execute o comando ./malicfacesampling para continuar com o procedimento.

“Colaborar atrai amigos, competir atrai inimigos…
Use a força, LEIA OS FONTES!”

Fonte: http://charlesbezzerra.com.br/

 

Adicionar comentário


Código de segurança
Atualizar