1. O documento descreve um trabalho sobre detecção de faces em vídeos utilizando a biblioteca OpenCV e os algoritmos Viola-Jones e EigenFaces.
2. A Visão Computacional é apresentada como um campo da inteligência artificial responsável pela interpretação de imagens através dos atributos dos pixels. Bibliotecas como a OpenCV auxiliam nesse processo fornecendo funções para análise de imagens.
3. O trabalho tem como objetivo implementar uma ferramenta de detecção de faces em vídeos para melhorar o sistema de monitoramento da
O documento discute a visão computacional e o OpenCV. Ele introduz conceitos básicos de imagem digital e operações de filtros. Também descreve o algoritmo Viola-Jones para detecção de objetos em OpenCV e como ele pode ser usado para detectar vários objetos como rostos e placas de trânsito.
O documento apresenta o professor Claudio Cesar de Oliveira Cordeiro e seu currículo acadêmico e profissional. Ele também fornece um índice do capítulo 1 sobre conceitos básicos de informática, incluindo hardware, software, sistemas de numeração e linguagens de programação.
Aleph - Sistema de Monitoramento Visual de PessoasRafael Barbolo
O documento descreve o sistema ALEPH, projetado para detectar e rastrear pessoas em ambientes fechados através de monitoramento visual. O sistema usa técnicas como subtração de fundo, detecção de cabeças, rastreamento Condensation e geração de rotas para visualizar o movimento de pessoas. Os experimentos com vídeos de um hall e da base de dados PETS 2006 mostraram a capacidade do sistema em diferentes ambientes, embora sua configuração precise ser adaptada a cada situação.
O documento descreve a história e características da linguagem de programação C. Foi criada em 1972 por Dennis Ritchie para o sistema operacional Unix e padronizada pela ANSI em 1983. C é uma linguagem de baixo nível que oferece portabilidade entre sistemas e é usada em aplicações como sistemas operacionais e bancos de dados.
Linguagem C/C++: Condições ou expressões lógicasnataferraz
O documento descreve condições lógicas e expressões em C/C++, incluindo operadores relacionais, lógicos e aritméticos. Também apresenta comandos de controle de fluxo como IF/ELSE e exemplos de seu uso.
O documento apresenta uma introdução ao processamento de imagens usando a biblioteca OpenCV, descrevendo os principais módulos, links para documentação, como instalar o OpenCV 2.3.1 no Eclipse e CodeBlocks e exemplos de uso.
O documento apresenta uma palestra sobre processamento de imagens utilizando as ferramentas RoboRealm e OpenCV. A palestra discute os recursos do RoboRealm para tracking por cor, segmentação do horizonte, ponto de fuga, reconhecimento de formas e processamento de marcadores. Também apresenta algoritmos do OpenCV como Camshift e detecção de faces utilizando a cascata de classificadores de Viola-Jones.
O documento introduz os conceitos de processamento de imagens e visão computacional, discutindo as diferenças entre os dois. Explica como a biblioteca OpenCV pode ser usada para implementar funções de processamento de imagens, segmentação, reconhecimento de padrões e rastreamento em tempo real.
O documento discute a visão computacional e o OpenCV. Ele introduz conceitos básicos de imagem digital e operações de filtros. Também descreve o algoritmo Viola-Jones para detecção de objetos em OpenCV e como ele pode ser usado para detectar vários objetos como rostos e placas de trânsito.
O documento apresenta o professor Claudio Cesar de Oliveira Cordeiro e seu currículo acadêmico e profissional. Ele também fornece um índice do capítulo 1 sobre conceitos básicos de informática, incluindo hardware, software, sistemas de numeração e linguagens de programação.
Aleph - Sistema de Monitoramento Visual de PessoasRafael Barbolo
O documento descreve o sistema ALEPH, projetado para detectar e rastrear pessoas em ambientes fechados através de monitoramento visual. O sistema usa técnicas como subtração de fundo, detecção de cabeças, rastreamento Condensation e geração de rotas para visualizar o movimento de pessoas. Os experimentos com vídeos de um hall e da base de dados PETS 2006 mostraram a capacidade do sistema em diferentes ambientes, embora sua configuração precise ser adaptada a cada situação.
O documento descreve a história e características da linguagem de programação C. Foi criada em 1972 por Dennis Ritchie para o sistema operacional Unix e padronizada pela ANSI em 1983. C é uma linguagem de baixo nível que oferece portabilidade entre sistemas e é usada em aplicações como sistemas operacionais e bancos de dados.
Linguagem C/C++: Condições ou expressões lógicasnataferraz
O documento descreve condições lógicas e expressões em C/C++, incluindo operadores relacionais, lógicos e aritméticos. Também apresenta comandos de controle de fluxo como IF/ELSE e exemplos de seu uso.
O documento apresenta uma introdução ao processamento de imagens usando a biblioteca OpenCV, descrevendo os principais módulos, links para documentação, como instalar o OpenCV 2.3.1 no Eclipse e CodeBlocks e exemplos de uso.
O documento apresenta uma palestra sobre processamento de imagens utilizando as ferramentas RoboRealm e OpenCV. A palestra discute os recursos do RoboRealm para tracking por cor, segmentação do horizonte, ponto de fuga, reconhecimento de formas e processamento de marcadores. Também apresenta algoritmos do OpenCV como Camshift e detecção de faces utilizando a cascata de classificadores de Viola-Jones.
O documento introduz os conceitos de processamento de imagens e visão computacional, discutindo as diferenças entre os dois. Explica como a biblioteca OpenCV pode ser usada para implementar funções de processamento de imagens, segmentação, reconhecimento de padrões e rastreamento em tempo real.
Introdução à utilização de openFrameworks para o desenvolvimento de aplicaçõ...Christopher Cerqueira
Este documento apresenta uma introdução ao uso da biblioteca openFrameworks para o desenvolvimento de aplicações de realidade aumentada e realidade virtual. O documento descreve brevemente openFrameworks, seus requisitos e exemplos básicos de projetos. Além disso, apresenta três casos de exemplo para explorar recursos-chave da biblioteca como modelos 3D, câmera virtual e detecção de marcadores para realidade aumentada.
O documento discute a renderização volumétrica de dados por software. O objetivo é desenvolver um módulo de renderização volumétrica para integrar a uma ferramenta colaborativa de segunda opinião médica. O método usa voxels para interpretar dados volumétricos de imagens segmentadas do Visible Human. Problemas incluem velocidade de renderização e uso de memória. Trabalhos futuros incluem otimização para não processar voxels ocultos e paralelização do algoritmo.
1) O documento propõe a construção de uma máquina chamada Monitor-Decodificador Braille (MDB) que permita a leitura de textos em braille armazenados digitalmente sem a necessidade de impressão física.
2) O MDB consistiria em uma matriz com hastes móveis capazes de formar relevos correspondentes aos caracteres braille quando acionadas por um programa de controle.
3) O programa de controle permitiria ao usuário acessar e ler digitalmente vários textos em braille armazenados em um CD, of
O documento descreve como o Cygwin pode ser usado para administrar computadores Windows em um ambiente escolar, permitindo copiar arquivos, desligar máquinas remotamente e apagar conteúdo indesejado das áreas de usuário. Scripts foram criados para automatizar essas tarefas e fornecer uma interface amigável para usuários não técnicos. O Cygwin traz ferramentas do Linux para Windows, facilitando a administração da rede da escola.
O documento discute arquiteturas de software para computação ubíqua. Apresenta conceitos de computação ubíqua, desafios de sistemas ubíquos, modelos existentes como One.world e um estudo de caso de agenda de compromissos usando padrão MVC. Finaliza discutindo problemas em aberto como padrões de engenharia de software e segurança em redes sem fio para sistemas ubíquos.
Seminário - Arquitetura de software para computação ubíquaRubens Matos Junior
O documento discute arquitetura de software para computação ubíqua. Apresenta conceitos de computação ubíqua e seus principais desafios, como heterogeneidade, mobilidade e consciência de contexto. Também descreve modelos existentes como o de Banavar, que divide o ciclo de vida da aplicação em três fases, e o One.world, que utiliza serviços como máquina virtual e ambientes. Por fim, aponta problemas abertos como a definição de padrões de engenharia de software e tratamento de interfaces variadas.
O documento apresenta novas tecnologias de representação e interação para simulação, engenharia e MDSE, incluindo exemplos e estudos de caso. Dois mini-estágios são propostos: um aplicando robótica e realidade aumentada e outro interface de hardware para simulação em Matlab. Conceitos como MBSE, realidade virtual, aumentada e cruzada são explicados, com ênfase na melhoria da interação homem-máquina.
C.E.S.A.R - Prototipación Electronica en DiseñoTiago Barros
1) O documento discute a importância da prototipação no processo de design e inovação centrado no usuário.
2) A prototipação eletrônica com Arduino é apresentada como uma plataforma útil para prototipar interações físicas através de sensores e atuadores.
3) Exemplos demonstram como Arduino pode ser usado para criar protótipos interativos como instrumentos musicais controlados por toque.
O documento apresenta a plataforma OpenDevice para Internet das Coisas (IoT), que fornece ferramentas e APIs para construção de soluções IoT. A plataforma permite monitorar e controlar dispositivos como Arduino e Raspberry Pi de forma independente de linguagem e plataforma, abstraindo detalhes de comunicação. Exemplos demonstram como usar OpenDevice com Java, JavaScript e Arduino para controlar LEDs de forma interativa e em tempo real.
O documento introduz os conceitos de desenvolvimento web usando ASP.NET, incluindo como o .NET Framework funciona, o que é ASP.NET e MVC, e como utilizar a IDE Visual Studio.
O documento apresenta conceitos sobre realidade virtual e aumentada, incluindo suas definições, aplicações e ferramentas. É detalhada a visão computacional com OpenCV e apresentadas bibliotecas para desenvolvimento de aplicativos de RA como ARToolkit, ARToolkitPlus e ferramentas para modelagem 3D.
O documento discute os conceitos e tecnologias da computação ubíqua, incluindo sua definição como computação que está presente em toda parte e se integra ao cotidiano das pessoas. Apresenta o projeto Gaia como um exemplo pioneiro e discute desafios e tendências da computação ubíqua, como a computação verde.
O documento descreve o desenvolvimento de um toolbox chamado "LabImagem IAC toolbox" para análise e processamento de imagens no software Scilab. O toolbox uniu as funcionalidades de dois outros toolbox (SIP e SIVP) sem a necessidade de instalar outros programas, simplificando a instalação. Exemplos demonstraram a reconstrução 3D de frutos e a criação de modelos digitais de relevo do solo a partir de imagens.
Ambiente de Simulação Gráfica 3D para Ensino da Arquitetura de ProcessadoresEduardo de Lucena Falcão
1. O documento descreve um simulador gráfico 3D para ensinar arquitetura de processadores.
2. O simulador permite visualizar instruções sendo executadas de forma passo-a-passo em um processador com e sem pipeline para facilitar a compreensão.
3. O simulador usa animações 3D para mostrar o fluxo de informações durante a execução de instruções de uma forma intuitiva.
1) O documento descreve o software Visualg 2.0, um editor e interpretador de algoritmos desenvolvido por Cláudio Morgado de Souza para auxiliar no ensino de programação.
2) A interface do Visualg possui menu, barras de ferramentas, editor de texto, visualizador de variáveis e simulador de saída para depurar programas passo a passo.
3) O software foi desenvolvido para oferecer um ambiente simples e didático para iniciantes em programação exercitarem conceitos básicos sem a complexidade de linguagens reais.
O documento apresenta Daniel Brandão, um desenvolvedor web desde 2005. Ele discute sua evolução na programação, incluindo programação orientada a objetos, padrões de projeto e frameworks. O documento também aborda as expectativas de empresas para desenvolvedores e dicas para progredir na carreira.
Este documento descreve uma dissertação de mestrado sobre a virtualização de autómatos programáveis (PLCs). O documento apresenta três objetivos principais: 1) desenvolver um modelo de virtualização para PLCs; 2) construir uma aplicação que emula um PLC específico executando-se num computador pessoal; 3) criar editores gráficos e visualizadores para desenvolver, armazenar e simular programas para o PLC virtual de uma forma simples e rápida.
Introdução à utilização de openFrameworks para o desenvolvimento de aplicaçõ...Christopher Cerqueira
Este documento apresenta uma introdução ao uso da biblioteca openFrameworks para o desenvolvimento de aplicações de realidade aumentada e realidade virtual. O documento descreve brevemente openFrameworks, seus requisitos e exemplos básicos de projetos. Além disso, apresenta três casos de exemplo para explorar recursos-chave da biblioteca como modelos 3D, câmera virtual e detecção de marcadores para realidade aumentada.
O documento discute a renderização volumétrica de dados por software. O objetivo é desenvolver um módulo de renderização volumétrica para integrar a uma ferramenta colaborativa de segunda opinião médica. O método usa voxels para interpretar dados volumétricos de imagens segmentadas do Visible Human. Problemas incluem velocidade de renderização e uso de memória. Trabalhos futuros incluem otimização para não processar voxels ocultos e paralelização do algoritmo.
1) O documento propõe a construção de uma máquina chamada Monitor-Decodificador Braille (MDB) que permita a leitura de textos em braille armazenados digitalmente sem a necessidade de impressão física.
2) O MDB consistiria em uma matriz com hastes móveis capazes de formar relevos correspondentes aos caracteres braille quando acionadas por um programa de controle.
3) O programa de controle permitiria ao usuário acessar e ler digitalmente vários textos em braille armazenados em um CD, of
O documento descreve como o Cygwin pode ser usado para administrar computadores Windows em um ambiente escolar, permitindo copiar arquivos, desligar máquinas remotamente e apagar conteúdo indesejado das áreas de usuário. Scripts foram criados para automatizar essas tarefas e fornecer uma interface amigável para usuários não técnicos. O Cygwin traz ferramentas do Linux para Windows, facilitando a administração da rede da escola.
O documento discute arquiteturas de software para computação ubíqua. Apresenta conceitos de computação ubíqua, desafios de sistemas ubíquos, modelos existentes como One.world e um estudo de caso de agenda de compromissos usando padrão MVC. Finaliza discutindo problemas em aberto como padrões de engenharia de software e segurança em redes sem fio para sistemas ubíquos.
Seminário - Arquitetura de software para computação ubíquaRubens Matos Junior
O documento discute arquitetura de software para computação ubíqua. Apresenta conceitos de computação ubíqua e seus principais desafios, como heterogeneidade, mobilidade e consciência de contexto. Também descreve modelos existentes como o de Banavar, que divide o ciclo de vida da aplicação em três fases, e o One.world, que utiliza serviços como máquina virtual e ambientes. Por fim, aponta problemas abertos como a definição de padrões de engenharia de software e tratamento de interfaces variadas.
O documento apresenta novas tecnologias de representação e interação para simulação, engenharia e MDSE, incluindo exemplos e estudos de caso. Dois mini-estágios são propostos: um aplicando robótica e realidade aumentada e outro interface de hardware para simulação em Matlab. Conceitos como MBSE, realidade virtual, aumentada e cruzada são explicados, com ênfase na melhoria da interação homem-máquina.
C.E.S.A.R - Prototipación Electronica en DiseñoTiago Barros
1) O documento discute a importância da prototipação no processo de design e inovação centrado no usuário.
2) A prototipação eletrônica com Arduino é apresentada como uma plataforma útil para prototipar interações físicas através de sensores e atuadores.
3) Exemplos demonstram como Arduino pode ser usado para criar protótipos interativos como instrumentos musicais controlados por toque.
O documento apresenta a plataforma OpenDevice para Internet das Coisas (IoT), que fornece ferramentas e APIs para construção de soluções IoT. A plataforma permite monitorar e controlar dispositivos como Arduino e Raspberry Pi de forma independente de linguagem e plataforma, abstraindo detalhes de comunicação. Exemplos demonstram como usar OpenDevice com Java, JavaScript e Arduino para controlar LEDs de forma interativa e em tempo real.
O documento introduz os conceitos de desenvolvimento web usando ASP.NET, incluindo como o .NET Framework funciona, o que é ASP.NET e MVC, e como utilizar a IDE Visual Studio.
O documento apresenta conceitos sobre realidade virtual e aumentada, incluindo suas definições, aplicações e ferramentas. É detalhada a visão computacional com OpenCV e apresentadas bibliotecas para desenvolvimento de aplicativos de RA como ARToolkit, ARToolkitPlus e ferramentas para modelagem 3D.
O documento discute os conceitos e tecnologias da computação ubíqua, incluindo sua definição como computação que está presente em toda parte e se integra ao cotidiano das pessoas. Apresenta o projeto Gaia como um exemplo pioneiro e discute desafios e tendências da computação ubíqua, como a computação verde.
O documento descreve o desenvolvimento de um toolbox chamado "LabImagem IAC toolbox" para análise e processamento de imagens no software Scilab. O toolbox uniu as funcionalidades de dois outros toolbox (SIP e SIVP) sem a necessidade de instalar outros programas, simplificando a instalação. Exemplos demonstraram a reconstrução 3D de frutos e a criação de modelos digitais de relevo do solo a partir de imagens.
Ambiente de Simulação Gráfica 3D para Ensino da Arquitetura de ProcessadoresEduardo de Lucena Falcão
1. O documento descreve um simulador gráfico 3D para ensinar arquitetura de processadores.
2. O simulador permite visualizar instruções sendo executadas de forma passo-a-passo em um processador com e sem pipeline para facilitar a compreensão.
3. O simulador usa animações 3D para mostrar o fluxo de informações durante a execução de instruções de uma forma intuitiva.
1) O documento descreve o software Visualg 2.0, um editor e interpretador de algoritmos desenvolvido por Cláudio Morgado de Souza para auxiliar no ensino de programação.
2) A interface do Visualg possui menu, barras de ferramentas, editor de texto, visualizador de variáveis e simulador de saída para depurar programas passo a passo.
3) O software foi desenvolvido para oferecer um ambiente simples e didático para iniciantes em programação exercitarem conceitos básicos sem a complexidade de linguagens reais.
O documento apresenta Daniel Brandão, um desenvolvedor web desde 2005. Ele discute sua evolução na programação, incluindo programação orientada a objetos, padrões de projeto e frameworks. O documento também aborda as expectativas de empresas para desenvolvedores e dicas para progredir na carreira.
Este documento descreve uma dissertação de mestrado sobre a virtualização de autómatos programáveis (PLCs). O documento apresenta três objetivos principais: 1) desenvolver um modelo de virtualização para PLCs; 2) construir uma aplicação que emula um PLC específico executando-se num computador pessoal; 3) criar editores gráficos e visualizadores para desenvolver, armazenar e simular programas para o PLC virtual de uma forma simples e rápida.
1. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Detec¸c˜ao de faces em v´ıdeos
Paulo Vitor Mira Fonseca
Orientador: Prof. Dr. Marcos G. Quiles
Co-orientador: Prof. Dr. Ezequiel Roberto Zorzal
{pfonseca, quiles, ezorzal}@unifesp.br
Unifesp - Universidade Federal de S˜ao Paulo
http://www.unifesp.br
4 de dezembro de 2011
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 1/54
2. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Sum´ario I
1 Introdu¸c˜ao
2 Vis˜ao Computacional
3 Bibliotecas de Vis˜ao Computacional
4 OpenCV
Biblioteca OpenCV
Algoritmo Viola-Jones
Integra¸c˜ao de imagem
Aprendizado AdaBoost
Classificador em cascata
5 Algoritmo EigenFaces
6 Trabalho Realizado
Descri¸c˜ao
7 Resultados obtidos
8 Conclus˜ao
9 Referˆencias
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 2/54
3. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Contextualiza¸c˜ao e Motiva¸c˜ao
Computadores tornaram-se fundamentais em nossas vidas
Melhorar usabilidade
Detec¸c˜ao e reconhecimento de faces humanas
Processo n˜ao-intrusivo em biometria.
M´etodo muito complexo de ser realizado
computacionalmente.
Interferˆencias[17].
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 3/54
4. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Objetivos e Motiva¸c˜oes
Aprimorar os conhecimentos de aprendizado de m´aquina e
de processamento de imagens adquiridos ao longo da
gradua¸c˜ao;
Implementar uma ferramenta pr´atica a ser utilizada no
sistema de v´ıdeos da Unifesp-SJC, permitindo o
aprimoramento em nosso sistema de monitoramento de
usu´arios e intrusos no campus.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 4/54
5. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Vis˜ao Computacional
Vis˜ao Computacional ´e um dos campos da inteligˆencia
artificial.
Respons´avel pela interpreta¸c˜ao de imagens.
A maneira que um computador ”enxerga”se d´a pelos
atributos de seus pixels.
Amplamente empregados em diversas ´areas da ciˆencia [9]:
Rob´otica.
Processamento de imagens m´edicas.
Detec¸c˜ao/reconhecimento de faces.
etc.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 5/54
6. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Vis˜ao Computacional
Vis˜ao Computacional ´e um dos campos da inteligˆencia
artificial.
Respons´avel pela interpreta¸c˜ao de imagens.
A maneira que um computador ”enxerga”se d´a pelos
atributos de seus pixels.
Amplamente empregados em diversas ´areas da ciˆencia [9]:
Rob´otica.
Processamento de imagens m´edicas.
Detec¸c˜ao/reconhecimento de faces.
etc.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 5/54
7. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Vis˜ao Computacional
Vis˜ao Computacional ´e um dos campos da inteligˆencia
artificial.
Respons´avel pela interpreta¸c˜ao de imagens.
A maneira que um computador ”enxerga”se d´a pelos
atributos de seus pixels.
Amplamente empregados em diversas ´areas da ciˆencia [9]:
Rob´otica.
Processamento de imagens m´edicas.
Detec¸c˜ao/reconhecimento de faces.
etc.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 5/54
8. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Vis˜ao Computacional
Vis˜ao Computacional ´e um dos campos da inteligˆencia
artificial.
Respons´avel pela interpreta¸c˜ao de imagens.
A maneira que um computador ”enxerga”se d´a pelos
atributos de seus pixels.
Amplamente empregados em diversas ´areas da ciˆencia [9]:
Rob´otica.
Processamento de imagens m´edicas.
Detec¸c˜ao/reconhecimento de faces.
etc.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 5/54
9. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Vis˜ao Computacional
Vis˜ao Computacional ´e um dos campos da inteligˆencia
artificial.
Respons´avel pela interpreta¸c˜ao de imagens.
A maneira que um computador ”enxerga”se d´a pelos
atributos de seus pixels.
Amplamente empregados em diversas ´areas da ciˆencia [9]:
Rob´otica.
Processamento de imagens m´edicas.
Detec¸c˜ao/reconhecimento de faces.
etc.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 5/54
10. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Vis˜ao Computacional
Vis˜ao Computacional ´e um dos campos da inteligˆencia
artificial.
Respons´avel pela interpreta¸c˜ao de imagens.
A maneira que um computador ”enxerga”se d´a pelos
atributos de seus pixels.
Amplamente empregados em diversas ´areas da ciˆencia [9]:
Rob´otica.
Processamento de imagens m´edicas.
Detec¸c˜ao/reconhecimento de faces.
etc.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 5/54
11. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Vis˜ao Computacional
Vis˜ao Computacional ´e um dos campos da inteligˆencia
artificial.
Respons´avel pela interpreta¸c˜ao de imagens.
A maneira que um computador ”enxerga”se d´a pelos
atributos de seus pixels.
Amplamente empregados em diversas ´areas da ciˆencia [9]:
Rob´otica.
Processamento de imagens m´edicas.
Detec¸c˜ao/reconhecimento de faces.
etc.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 5/54
12. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Vis˜ao Computacional
Vis˜ao Computacional ´e um dos campos da inteligˆencia
artificial.
Respons´avel pela interpreta¸c˜ao de imagens.
A maneira que um computador ”enxerga”se d´a pelos
atributos de seus pixels.
Amplamente empregados em diversas ´areas da ciˆencia [9]:
Rob´otica.
Processamento de imagens m´edicas.
Detec¸c˜ao/reconhecimento de faces.
etc.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 5/54
13. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Bibliotecas de Vis˜ao Computacional
Devido a complexidade dos algoritmos de vis˜ao computacional,
existem diversas bibliotecas dispon´ıveis na literatura.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 6/54
14. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Bibliotecas de Vis˜ao Computacional
Ferramenta OpenCV[6] LTI-Lib[4] ARToolKit[5] CVD[3] Gpucv[2] pyVysion[7]
Licen¸ca BSD GNU LGPL GNU GPL/AR-
ToolKitCDL
GNU LGPL CeCILL-B BSD
Sistemas
Operacionais
Linux
Windows
MacOSX
Android
IPhone
Linux
Windows
SGI-IRIX
Windows
MacOSX
Linux
Symbian
iPhone
Android
Linux
FreeBSD
OpenBSD
OSX
Solaris
IRIX
Windows
Windows
Linux
Linux
Windows
MacOSX
Linguagens
suportadas
C, C++ C++ C/C++ C++ C++ Python
Tempo real sim n˜ao sim sim sim sim
Criador Intel RWTH Aachen
University
Nara Institute of
Science and Te-
chnology
University of
Cambridge
Yannick Allusse David S. Bolme
Ano de desen-
volvimento
1999 1998 1999 2005 2006 2008
Recebe atua-
liza¸c˜oes
sim n˜ao sim N˜ao sim n˜ao
Restri¸c˜oes do
sistema
n˜ao n˜ao sim N˜ao sim (Processa-
dores gr´aficos)
n˜ao
Facilidade de
uso
sim n˜ao sim sim n˜ao sim
Exemplos en-
contrados
sim n˜ao n˜ao sim sim sim
Tabela: Comparativo de bibliotecas de vis˜ao computacional
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 7/54
15. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Bibliotecas de Vis˜ao Computacional
A biblioteca OpenCV apresenta a melhor escolha, pois:
Pode ser executada em diversos sistemas operacionais.
Pode ser executada em tempo real.
Recebe atualiza¸c˜oes
F´acil uso
Existem muitos exemplos de uso
Atendendo todos os requisitos para a realiza¸c˜ao deste projeto.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 8/54
16. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
OpenCV
OpenCV [6] ´e uma biblioteca que auxilia o processo de
vis˜ao computacional.
Provendo mais de 2000 fun¸c˜oes utilit´arias
Projeto de c´odigo aberto e distribu´ıdo sobre a licen¸ca
BSD[1]
Escrito em linguagem C++.
Existem interfaces para outras linguagens de
programa¸c˜ao:
Python
Ruby
C
Entre outras.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 9/54
17. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
OpenCV
Pode ser executado nos seguintes sistemas operacionais:
Linux
Windows
MacOS X
Projeto teve in´ıcio nos laborat´orios da Intel.
Tendo como foco aplica¸c˜oes que rodam em tempo-real.
IPP (Integrated Performance Primitives).
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 10/54
18. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Algoritmo Viola-Jones
Algoritmo de detec¸c˜ao de faces utilizado pelo OpenCV.
Baseado em trˆes ideias[16]:
1 Integra¸c˜ao de imagens
2 Aprendizado AdaBoost
3 Classificador em cascata.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 11/54
19. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Integra¸c˜ao de imagem
Processamento de partes intermedi´arias da imagem
A integral da imagem localizada no retˆangulo
representado pelos pontos (X, Y )
Soma dos valores dos pixels, em escala de cinza.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 12/54
20. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Integra¸c˜ao de imagem
Figura: Integra¸c˜ao de imagem
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 13/54
21. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Integra¸c˜ao de imagem
ii(x, y) =
x ≤x,y ≤y
i(x , y ) (1)
Onde ii(x, y) ´e a integral da imagem contida no retˆangulo
processado e i(x, y) ´e a imagem original.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 14/54
22. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Aprendizado AdaBoost
AdaBoost (Adaptive Boosting) ´e um algoritmo de
aprendizado de m´aquina [10].
O objetivo ´e encontrar uma hip´otese final com o menor
erro relativo em rela¸c˜ao `a distribui¸c˜ao de exemplos de
treinamento.
Combina classificadores fracos.
Apresenta tempos de execu¸c˜ao muito baixos.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 15/54
23. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Classificador em cascata
Componente mais cr´ıtico algoritmo Viola-Jones.
Sub-janelas negativas s˜ao rejeitas.
Mantendo todas as sub-janelas positivas.
Os primeiros classificadores que entram em execu¸c˜ao s˜ao
os classificadores mais simples.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 16/54
24. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Classificador em cascata
Componente mais cr´ıtico algoritmo Viola-Jones.
Sub-janelas negativas s˜ao rejeitas.
Mantendo todas as sub-janelas positivas.
Os primeiros classificadores que entram em execu¸c˜ao s˜ao
os classificadores mais simples.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 16/54
25. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Classificador em cascata
Componente mais cr´ıtico algoritmo Viola-Jones.
Sub-janelas negativas s˜ao rejeitas.
Mantendo todas as sub-janelas positivas.
Os primeiros classificadores que entram em execu¸c˜ao s˜ao
os classificadores mais simples.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 16/54
26. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Classificador em cascata
Componente mais cr´ıtico algoritmo Viola-Jones.
Sub-janelas negativas s˜ao rejeitas.
Mantendo todas as sub-janelas positivas.
Os primeiros classificadores que entram em execu¸c˜ao s˜ao
os classificadores mais simples.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 16/54
27. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Classificador em cascata
Figura: Aplica¸c˜ao de classificadores
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 17/54
28. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Algoritmo EigenFaces
Implementado na biblioteca OpenCV.
Reconhecimento facial utilizando est´ımulos faciais [15].
An´alise de Componentes Principais (Principal
Components Analysis, ou simplesmente PCA).
Imagens de faces humanas frontais com varia¸c˜ao de pose.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 18/54
29. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais(PCA)
Utilizado no reconhecimento de face e compress˜ao de
imagens.
Permite encontrar padr˜oes em dados de alta dimens˜ao.
Uso de autovetores e autovalores.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 19/54
30. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
Algoritmo
1 Obten¸c˜ao de dados
2 Subtra¸c˜ao da m´edia
3 Calculando a matriz de covariˆancia
4 Calculando os autovetores e autovalores da matriz de
covariˆancia
5 Escolhendo um componente e o vetor de caracter´ısticas
6 Derivando um novo conjunto de dados
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 20/54
31. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
1 - Obten¸c˜ao de dados
Cria¸c˜ao da base de treinamento
Extra¸c˜ao de caracter´ısticas
Caracter´ısticas bem definidas
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 21/54
32. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
2 - Subtra¸c˜ao da m´edia
Processamento em todas as dimens˜oes da representa¸c˜ao
dos dados da base de treinamento
Achar uma m´edia de representa¸c˜ao
Subtra¸c˜ao da m´edia
Dados extra´ıdos do artigo ”A tutorial on Principal
Components Analysis” [14]
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 22/54
33. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
2 - Subtra¸c˜ao da m´edia
Figura: Dados de exemplos PCA (Dados originais `a esquerda e
dados com m´edia subtra´ıda `a direita)
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 23/54
34. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
2 - Subtra¸c˜ao da m´edia
Figura: Distribui¸c˜ao dos dados originais
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 24/54
35. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
3 - Calculando a matriz de covariˆancia
cov =
0, 616555556 0, 615444444
0, 615444444 0, 716555556
(2)
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 25/54
36. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
4 - Calculando os autovetores e autovalores da matriz de covariˆancia
AV = λV (3)
autovalores = {0, 0490833989; 1, 28402771} (4)
autovetores =
−0, 735178656 −0, 677873399
0, 677873399 −0, 735178656
(5)
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 26/54
37. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
4 - Calculando os autovetores e autovalores da matriz de covariˆancia
Figura: Distribui¸c˜ao dos dados normalizados e os autovetores
encontrados.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 27/54
38. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
5 - Escolhendo um componente e o vetor de caracter´ısticas
Os autovalores definem a significˆancia do autovetor
Ordenar autovetores de acordo com os respectivos
autovalores
Decidir se um autovetor pode ser ignorado
VetordeCaracter´isticas = (eig1 eig2 eig3 ... eign) (6)
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 28/54
39. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
5 - Escolhendo um componente e o vetor de caracter´ısticas
−0, 677873399 −0, 735178656
−0, 735178656 0, 677873399
(7)
−0, 677873399
−0, 735178656
(8)
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 29/54
40. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
6 - Derivando um novo conjunto de dados
Multiplica¸c˜ao da transposta da matriz de caracter´ısticas
selecionada na etapa anterior pela esquerda da transposta da
matriz dos dados ajustados obtida no passo 2
VetorDeCaracter´isticasSelecionadas ×VetorDeDadosAjustados
(9)
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 30/54
41. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
Treinamento
Conjunto de treinamento ´e projetado no espa¸co de faces.
Autovetores encontrados pelo m´etodo PCA.
Eixos representam os autovetores de maior relevˆancia
selecionados
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 31/54
42. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
Treinamento
Figura: Espa¸co de faces (Face Space) em 2D, onde os eixos
representam os autovetores selecionados [15]
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 32/54
43. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
An´alise de Componentes Principais
Reconhecimento
Extra¸c˜ao dos autovetores e autovalores da face
Compara¸c˜ao com os autovetores da base de treinamento
Escolha da menor distˆancia
Melhoria: Uso da distˆancia de Mahalanobis [12]
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 33/54
44. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Detec¸c˜ao de faces
Uso da biblioteca OpenCV.
“haarcascade frontalface alt2.xml”.
Vers˜ao 2.1 da biblioteca OpenCV.
T´ecnicas de tratamento de imagens [11].
1 Cria¸c˜ao da imagem em escala de cinza.
2 Diminui¸c˜ao da escala da imagem em escala de cinza.
3 Equaliza¸c˜ao de histograma.
Amostragem no processamento das faces obtidas da
cˆamera.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 34/54
45. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Detec¸c˜ao de faces
Ap´os uma s´erie de experimentos foi verificado que h´a um
ganho maior quando a busca por faces ´e realizada a cada
quatro frames.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 35/54
46. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Reconhecimento de faces
Classificar faces em rela¸c˜ao `a um banco de dados
Ap´os a detec¸c˜ao de faces
Algoritmo Eigenfaces [15]
Distˆancias entre subespa¸cos PCA.
Distˆancia Euclidiana
Distˆancia Mahalanobis [13]
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 36/54
47. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Aprendizagem
Leitura de arquivo de treinamento
M´etodo PCA para encontrar um subespa¸co
Projetar as faces de treinamento no espa¸co de faces
EigenFaces
Armazenamento em arquivo xml
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 37/54
49. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Arquivo de configura¸c˜ao
Figura: Exemplo de arquivo de treinamento
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 39/54
50. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Treinamento on-line
Captura de faces para a base de dados
Processamento da imagem capturada
Atualiza¸c˜ao do arquivo de treinamento
Captura de 10 faces
92 pixels de largura por 112 pixels de comprimento
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 40/54
51. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Algoritmo de Farneback
Fluxos ´opticos (”optical flow”) em imagens sequenciais [8]
Usado neste desenvolvimento para comparar imagens para
a base de treinamento.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 41/54
52. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Algoritmo de Farneback
Figura: Algoritmo de Farneback
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 42/54
53. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Aplica¸c˜ao
Figura: Tela do software implementado
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 43/54
54. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Tempo de treinamento
Figura: Gr´afico mostrando crescimento do tempo de
processamento de acordo com o n´umero imagens de treinamento
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 44/54
55. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Testes realizados
Captura est´atica
Varia¸c˜ao de ilumina¸c˜ao
Uso de acess´orios
Uso de oclus˜oes
Identifica¸c˜ao de imagens durante movimentos
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 45/54
56. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Testes realizados
Problema Acerto (%)
Captura est´atica frontal 91,00
Captura est´atica inclinada 5,00
Com pouca ilumina¸c˜ao 94,00
Com muita ilumina¸c˜ao 44,00
Com acess´orio (´oculos) 88,0
Com acess´orio (chap´eu) 80,00
Com oclus˜ao (olho) 81,00
Com movimentos 15,00
Tabela: Taxa de acerto para base de treinamento de 1 imagem
para cada face em diferentes situa¸c˜oes
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 46/54
57. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Testes realizados
Problema Acerto (%)
Captura est´atica frontal 99,00
Captura est´atica inclinada 7,00
Com pouca ilumina¸c˜ao 100,00
Com muita ilumina¸c˜ao 82,00
Com acess´orio (´oculos) 100,0
Com acess´orio (chap´eu) 88,00
Com oclus˜ao (olho) 40,00
Com movimentos 59,00
Tabela: Taxa de acerto para base de treinamento de 5 imagens
para cada face em diferentes situa¸c˜oes
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 47/54
58. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Testes realizados
Problema Acerto (%)
Captura est´atica frontal 100,00
Captura est´atica inclinada 100,00
Com pouca ilumina¸c˜ao 5,00
Com muita ilumina¸c˜ao 97,00
Com acess´orio (´oculos) 98,0
Com acess´orio (chap´eu) 98,00
Com oclus˜ao (olho) 83,00
Com movimentos 93,00
Tabela: Taxa de acerto para base de treinamento de 10 imagens
para cada face em diferentes situa¸c˜oes
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 48/54
59. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Testes realizados
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 49/54
60. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Conclus˜oes
Execu¸c˜ao em tempo real.
Algoritmo Viola-Jones ´e muito leve e eficaz para
identifica¸c˜ao de faces frontais.
10 imagens para cada pessoal no banco de treinamento.
Varia¸c˜ao de ilumina¸c˜ao.
Qualidade da cˆamera utilizada.
Base de treinamento para o algoritmo EigenFaces.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 50/54
61. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Conclus˜oes
Execu¸c˜ao em tempo real.
Algoritmo Viola-Jones ´e muito leve e eficaz para
identifica¸c˜ao de faces frontais.
10 imagens para cada pessoal no banco de treinamento.
Varia¸c˜ao de ilumina¸c˜ao.
Qualidade da cˆamera utilizada.
Base de treinamento para o algoritmo EigenFaces.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 50/54
62. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Conclus˜oes
Execu¸c˜ao em tempo real.
Algoritmo Viola-Jones ´e muito leve e eficaz para
identifica¸c˜ao de faces frontais.
10 imagens para cada pessoal no banco de treinamento.
Varia¸c˜ao de ilumina¸c˜ao.
Qualidade da cˆamera utilizada.
Base de treinamento para o algoritmo EigenFaces.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 50/54
63. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Conclus˜oes
Execu¸c˜ao em tempo real.
Algoritmo Viola-Jones ´e muito leve e eficaz para
identifica¸c˜ao de faces frontais.
10 imagens para cada pessoal no banco de treinamento.
Varia¸c˜ao de ilumina¸c˜ao.
Qualidade da cˆamera utilizada.
Base de treinamento para o algoritmo EigenFaces.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 50/54
64. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Conclus˜oes
Execu¸c˜ao em tempo real.
Algoritmo Viola-Jones ´e muito leve e eficaz para
identifica¸c˜ao de faces frontais.
10 imagens para cada pessoal no banco de treinamento.
Varia¸c˜ao de ilumina¸c˜ao.
Qualidade da cˆamera utilizada.
Base de treinamento para o algoritmo EigenFaces.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 50/54
65. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Conclus˜oes
Execu¸c˜ao em tempo real.
Algoritmo Viola-Jones ´e muito leve e eficaz para
identifica¸c˜ao de faces frontais.
10 imagens para cada pessoal no banco de treinamento.
Varia¸c˜ao de ilumina¸c˜ao.
Qualidade da cˆamera utilizada.
Base de treinamento para o algoritmo EigenFaces.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 50/54
66. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Referˆencias I
BSD License, 04 2011.
Gpucv, 04 2011.
libcvd, 04 2011.
LTI-Lib, 04 2011.
LTI-Lib, 04 2011.
Open Source Computer Vision Library, 04 2011.
pyvision, 04 2011.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 51/54
67. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Referˆencias II
G. Farneb¨ack.
Polynomial Expansion for Orientation and Motion
Estimation.
PhD thesis, Link¨oping University, Sweden, SE-581 83
Link¨oping, Sweden, 2002.
Dissertation No 790, ISBN 91-7373-475-6.
D. A. Forsyth and J. Ponce.
Computer Vision: A Modern Approach.
Prentice Hall, us ed edition, Aug. 2002.
Y. Freund and R. E. Schapire.
A decision-theoretic generalization of on-line learning and
an application to boosting, 1995.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 52/54
68. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Referˆencias III
R. C. Gonzalez and R. E. Woods.
Processamento de imagens digitais.
Blucher, 2010.
S. Magazine.
Implementing eigenface, 2007.
P. C. Mahalanobis.
On The Generalized Distance in Statistics.
1936.
L. I. Smith.
A Tutorial on Principal Component Analysis, 2002.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 53/54
69. Introdu¸c˜ao Vis˜ao Computacional Bibliotecas de Vis˜ao Computacional OpenCV Algoritmo EigenFaces Trabalho Realizado Res
Referˆencias IV
M. Turk and A. P. Pentland.
Face Recognition Using Eigenfaces.
1991.
P. Viola and M. Jones.
Robust Real-time Object Detection.
SECOND INTERNATIONAL WORKSHOP ON
STATISTICAL AND COMPUTATIONAL THEORIES OF
VISION, 2001.
C. Zhang and Z. Zhang.
A Survey of Recent Advances in Face Detection.
page 17, Junho 2010.
DCT–UNIFESP — Detec¸c˜ao de faces em v´ıdeos 54/54