Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
EDUARDO HENRIQUE GIROTO
CLASSIFICAÇÃO DE GÊNERO COM DIFERENTESTÉCNICAS DE APRENDIZADO DE MÁQUINA
LONDRINA2019
EDUARDO HENRIQUE GIROTO
CLASSIFICAÇÃO DE GÊNERO COM DIFERENTESTÉCNICAS DE APRENDIZADO DE MÁQUINA
Versão Preliminar de Trabalho de Conclusãode Curso apresentado ao curso de Bachare-lado em Ciência da Computação da Univer-sidade Estadual de Londrina para obtençãodo título de Bacharel em Ciência da Compu-tação.
Orientador: Sérgio Montazzolli Silva
LONDRINA2019
Ficha de identificação da obra elaborada pelo autor, através do Programa de GeraçãoAutomática do Sistema de Bibliotecas da UEL
Sobrenome, Nome.Título do Trabalho : Subtitulo do Trabalho / Nome Sobrenome. - Londrina, 2017.100 f. : il.
Orientador: Nome do Orientador Sobrenome do Orientador.Coorientador: Nome Coorientador Sobrenome Coorientador.Dissertação (Mestrado em Ciência da Computação) - Universidade Estadual de
Londrina, Centro de Ciências Exatas, Programa de Pós-Graduação em Ciência daComputação, 2017.
Inclui bibliografia.
1. Assunto 1 - Tese. 2. Assunto 2 - Tese. 3. Assunto 3 - Tese. 4. Assunto 4 - Tese. I.Sobrenome do Orientador, Nome do Orientador. II. Sobrenome Coorientador, NomeCoorientador. III. Universidade Estadual de Londrina. Centro de Ciências Exatas. Programade Pós-Graduação em Ciência da Computação. IV. Título.
EDUARDO HENRIQUE GIROTO
CLASSIFICAÇÃO DE GÊNERO COM DIFERENTESTÉCNICAS DE APRENDIZADO DE MÁQUINA
Versão Preliminar de Trabalho de Conclusãode Curso apresentado ao curso de Bachare-lado em Ciência da Computação da Univer-sidade Estadual de Londrina para obtençãodo título de Bacharel em Ciência da Compu-tação.
BANCA EXAMINADORA
Orientador: Sérgio Montazzolli SilvaUniversidade Estadual de Londrina
Prof. Dr. Segundo Membro da BancaUniversidade/Instituição do SegundoMembro da Banca – Sigla instituição
Prof. Dr. Terceiro Membro da BancaUniversidade/Instituição do TerceiroMembro da Banca – Sigla instituição
Prof. Ms. Quarto Membro da BancaUniversidade/Instituição do Quarto
Membro da Banca – Sigla instituição
Londrina, 24 de novembro de 2019.
Este trabalho é dedicado às crianças adultasque, quando pequenas, sonharam em se
tornar cientistas.
AGRADECIMENTOS
Agradeço
“Não vos amoldeis às estruturas destemundo, mas transformai-vos pela renovação
da mente, a fim de distinguir qual é avontade de Deus: o que é bom, o que Lhe é
agradável, o que é perfeito.(Bíblia Sagrada, Romanos 12, 2))
GIROTO, E. H.. Classificação de Gênero com Diferentes Técnicas de Apren-dizado de Máquina. 2019. 30f. Trabalho de Conclusão de Curso – Versão Preliminar(Bacharelado em Ciência da Computação) – Universidade Estadual de Londrina, Lon-drina, 2019.
RESUMO
Reconhecer características como gênero, idade e etnia utilizando conceitos de visão com-putacional e reconhecimento de padrões, tem sido muito utilizado durante os últimos anos.Tais informações podem servir de base para vigilância, controle de acesso a um local, con-trole demográfico, biometria, entre outros. O objetivo deste trabalho é classificar gênerosem uma determinada imagem utilizando diferentes técnicas de aprendizado de máquinae, ao fim, comparar o desempenho de cada uma.
Palavras-chave: Reconhecimento de Gênero. Aprendizado de Máquina. Inteligência Ar-tificial
GIROTO, E. H.. Title of the Work. 2019. 30p. Final Project – Draft Version (Bachelorof Science in Computer Science) – State University of Londrina, Londrina, 2019.
ABSTRACT
Identify features such as gender, age, and ethnicity using computer vision concepts andpattern recognition has been used extensively over the last few years. This informationscan serve as a basis for surveillance, access control to a location, demographic control,biometrics, among others. The objective of this work is to classify genders in a given imageusing different machine learning techniques and, finally, compare the performance of eachone.
Keywords: Gender Recognition. Machine Learning. Artificial Intelligence.
LISTA DE ILUSTRAÇÕES
Figura 1 – Vetores de Suporte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Figura 2 – Cálculo do IoU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Figura 3 – Filtros Haar - Imagem retirada da documentação do OpenCV[1] . . . . 20Figura 4 – Kernels para o cálculo do Gradiente . . . . . . . . . . . . . . . . . . . . 21
LISTA DE TABELAS
Tabela 1 – Comparação entre as técnicas . . . . . . . . . . . . . . . . . . . . . . . 23
LISTA DE ABREVIATURAS E SIGLAS
SVM Máquinas de Vetores Suporte (Support Vector Machines)
HOG Histograma de Gradientes Orientados
IoU Intersection Over Union
SUMÁRIO
1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2 FUNDAMENTAÇÃO TEÓRICO-METODOLÓGICA . . . . . 14Neste Capítulo constam os detalhes sobre os conceitos, técnicas e me-todologias que serão estudados e utilizados ao decorrer da pesquisa.
2.1 Extração de Características . . . . . . . . . . . . . . . . . . . . . 142.2 Aprendizado de Máquina . . . . . . . . . . . . . . . . . . . . . . . 152.2.1 Redes Neurais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.2.2 Máquinas de Vetores Suporte . . . . . . . . . . . . . . . . . . . . . . . 152.2.3 Intersection Over Union . . . . . . . . . . . . . . . . . . . . . . . . . . 162.2.4 Recall e Precisão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.2.5 Análise Facial de Gênero . . . . . . . . . . . . . . . . . . . . . . . . . 17
3 TRABALHOS RELACIONADOS . . . . . . . . . . . . . . . . . 18Neste capítulo iremos abordar brevemente trabalhos que lidam com omesmo problema de Classificação de Gênero.
3.1 Reconhecimento de Gênero e Idade usando Redes Neurais . . 183.2 Reconhecimento de Gênero com SVM’s . . . . . . . . . . . . . . 183.3 Reconhecimento de Gênero usando diferentes técnicas . . . . 18
4 MÉTODO PROPOSTO . . . . . . . . . . . . . . . . . . . . . . . 19
5 RESULTADOS EXPERIMENTAIS . . . . . . . . . . . . . . . . 205.1 OpenCv Haar-Cascade . . . . . . . . . . . . . . . . . . . . . . . . . 205.2 Dlib HoG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215.3 Comparativo entre as duas técnicas . . . . . . . . . . . . . . . . 22
6 CONCLUSÃO E TRABALHOS FUTUROS . . . . . . . . . . . 24
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
APÊNDICES 27
ANEXOS 28
Índice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
13
1 INTRODUÇÃO
Sistemas de visão computacional para monitoramento de pessoas tem desempe-nhado um papel cada vez mais importante nos últimos anos. Os exemplos incluem detec-ção de rosto e corpo, reconhecimento facial, classificação de gênero, estimativa de idadee etnia. Estas informações podem servir de base para sistemas de vigilância, controledemográfico (e.g. como número de pessoas de um determinado gênero que teve acesso aalguma área) e biometria [2]. Neste trabalho iremos discutir e propor uma abordagempara Detecção de Gênero.
Enquanto um humano pode facilmente identificar gêneros, computacionalmenteisto é uma tarefa complexa. Cada rosto tem características e traços próprios que o tornaúnico. Quando olhamos para o rosto de uma pessoa, nosso cérebro inconscientemente ana-lisa cada característica e as transforma em um conjunto de medidas e atributos, dizendocom base em padrões e observações passadas, se é um rosto masculino ou feminino
Há características marcantes que diferenciam homem e mulher, começando peloformato do rosto. Enquanto o homem tem um formato mais quadrado, a mulher possui umrosto tendendo a se parecer com um coração, mais arredondado. Homens tem o olhar maisagressivo e possuem uma proeminência laríngea 1 mais protuberante, mulheres contamcom um nariz menor que o masculino e o tamanho médio do lábio superior até o nariz émenor que os homens. [3]
Tendo em vista o problema e a importância do reconhecimento de gênero, essapesquisa usa duas técnicas de aprendizado de máquina para a classificação de gênero:Redes Neurais Artificiais e Máquinas de Vetores Suporte (Support Vector Machines ouSVM em inglês).
Para realizar a classificação, primeiro nós procuramos por faces nas imagens de en-trada, analisaremos apenas a face para o reconhecimento. Com a face recortada, extraímosas características usando um extrator de características, e enfim fazemos a classificação.Com os resultados de cada técnica, é feita uma comparação e é apresentado a efetividadede cada técnica.
Este documento está organizado da seguinte forma: inicialmente o Caítulo 2 abordaos conceitos, técnicas e métodos que estão relacionados ao trabalho; o Capítulo 3 descrevealguns trabalhos relacionados com a proposta desta pesquisa; o Capítulo 4 descreve qualé a intenção e o método proposto para a resolução do trabalho; o Capítulo 5 aborda osresultados experimentais que foram feitos no decorrer do trabalho; e por fim o Capítulo6 apresenta a conclusão e possíveis trabalhos futuros.
1 Também conhecido por pomo de adão.
14
2 FUNDAMENTAÇÃO TEÓRICO-METODOLÓGICA
Neste Capítulo constam os detalhes sobre os conceitos, técnicas e metodologiasque serão estudados e utilizados ao decorrer da pesquisa.
2.1 Extração de Características
A etapa de extração de características vem logo após a coleta dos dados ou apósum pré-processamento dos mesmos. As características podem ser variáveis ou atributosque são utilizados para descrever um objeto ou reconhecer um padrão. Cada variável podeadquirir informações de temperatura, cor, pressão, densidade, volume, entre outros. Essasvariáveis posteriormente serão utilizadas por algoritmos de Aprendizado de Máquina.
Existem várias técnicas para extração de características em imagens. Podemosdestacar algumas que são mais conhecidas:
∙ Scale-Invariant Feature Transform (SIFT) [4]
∙ Speed-up Robust Features (SURF) [5]
∙ Histogram of Oriented Gradients (HOG) [6]
∙ Local Binary Patterns (LBP) [7]
onde HOG e LBP serão abordadas a seguir.
HOG ou Histograma de Gradientes Orientados, em português, é um extrator de ca-racterísticas muito utilizado, que calcula a magnitude e a direção do gradiente da imagem.Em resumo, as etapas necessárias para computar o HOG são: (i) calculo do Gradiente, (ii)geração do histograma de orientação, e (iii) normalização de histograma. Uma descriçãomais detalhada está presente na seção 5.2
O LBP ou Padrão Binário local, em português, foi proposto inicialmente paradescrever as texturas presentes em imagens de nível de cinza. Estes descritores de texturapodem ser mais aproveitados se combinado com o HOG, melhorando consideravelmenteo desempenho de detecção em alguns conjuntos de dados[8]. As etapas necessárias paracomputar o LBP são:
1. Divisão da janela em células;
2. Comparação do pixel central com seus vizinhos. Onde o valor do pixel central émaior que o vizinho, escreva “1", caso contrário escreva “0". Isso dá um númerobinário de oito dígitos;
3. Calculo do histograma de cada célula com base no valor do item anterior;
15
4. Normalização do histograma e concatenação dos histogramas de todas as células.Isso fornece um vetor de características que é inserido no classificador.
2.2 Aprendizado de Máquina
O Aprendizado de Máquina (AM) é um subcampo da Inteligência Artificial, con-siste em extrair dados e gerar modelos computacionais através de algoritmos inteligentes.O AM pode ser dividido como: supervisionado ou não supervisionado. AM supervisio-nado, como o nome sugere, requer que um supervisor ofereça exemplos de quais entradasse alinham com os resultados esperados. Em resumo, queremos fazer com que o modeloaprenda observando fatos. Um exemplo é treinar um modelo computacional para reconhe-cer fotos de aves, o supervisor forneceria os dados rotulados como “aves” ou “não aves” eo algoritmo de treinamento faria com que o modelo assimila-se esta informação.
Problemas de AM supervisionado podem ser divididos em classificação e regressão.Problemas de classificação, que é o foco deste trabalho, consistem na categorização dosdados de entrada. A categorização por gêneros, por exemplo, resulta em masculino oufeminino. Da mesma forma, a categorização de um veículo pode resultar em carro, motoou bicicleta. Já problemas de regressão trabalham com variáveis contínuas, e.g., prediçãodo preço de uma casa baseando-se no seu tamanho e número de quartos.
2.2.1 Redes Neurais
Redes Neurais Artificiais (RNA) são modelos computacionais de Aprendizagemde Máquina, que consistem em vários nós interligados entre si por arestas, que compar-tilham informações. São uma tentativa de modelar as capacidades de processamento deinformações dos sistemas nervosos[9].
Os nós das RNAs atuam como os neurônios e as arestas como sinapses 1. Com autilização de algoritmos sofisticados de treinamento, elas podem aprender a reconhecerpadrões, classificá-los, e, com o tempo, melhorar gradativamente.
2.2.2 Máquinas de Vetores Suporte
Máquinas de Vetores Suporte (SVM) são modelos populares de Aprendizado deMáquina para classificação. Sua fama é devida principalmente aos bons resultados, emcomparação a outros algoritmos de AM.[10]
Dado um conjunto de dados onde existam duas ou mais classes relacionadas, e cadaamostra pode ser representada por um vetor N-dimensional, o SVM cria um hiperplanode separação entre as classes, de modo que a distância entre o hiperplano e os pontos mais1 Região que transmite o impulso nervoso de um neurônio a outro
16
próximos (chamados de vetores de suporte) seja a maior possível[11]. Veja o exemplo nafigura 1
Figura 1 – Vetores de Suporte
Em dados que não são linearmente separáveis, o SVM utiliza kernels não-lineares,que podem ser aplicados em diversos algoritmos de Aprendizado de Máquina. Sua função émapear dados para um espaço maior de dimensões com o objetivo de encontrar um espaçoonde seja possível obter a separação linear dos dados. Existem vários tipos de kernel quepodem ser usados, porém uma das mais conhecidas é a do kernel RBF, mostrada naequação 2.1
𝑒𝑥𝑝(−||𝑥𝑖 − 𝑥𝑗||2
2𝜎2 ) (2.1)
2.2.3 Intersection Over Union
O Intersection Over Union (IoU) é simplesmente uma métrica de avaliação, nonosso caso, uma métrica para avaliar se uma face detectada em nossa técnica correspondea face descrita no dataset. O valor do IoU é simplesmente calculado dividindo a área dasobreposição das caixas delimitadoras pela área da união, conforme a figura Figura 2
Figura 2 – Cálculo do IoU.
Antes de entrarmos nos resultados obtidos com cada técnica, é preciso entender oconceito de recall e precisão.
17
2.2.4 Recall e Precisão
Em termos simples, recall diz o quanto o resultado é completo ou não, e precisãoindica o quanto os resultados são úteis, uma alta precisão significa que um algoritmoretornou mais resultados relevantes do que irrelevantes.
Suponha que você tenha uma base de imagens que ao todo contém 12 faces depessoas, sua ferramenta detectou oito faces. Dessas 8 faces detectadas, apenas cinco sãorealmente faces(verdadeiros positivos) enquanto os outros foram erros onde não há ne-nhuma face (falsos positivos). A precisão do programa é de 5/8, enquanto o recall é de5/12.
2.2.5 Análise Facial de Gênero
Para o nosso caso de Análise Facial de Gênero, criaremos uma abordagem paralidar com a junção das técnicas mencionadas anteriormente, i.e., fazer a detecção decaracterísticas acopladas com os modelos de Aprendizado de Máquina.
Abordagens passadas para problemas relacionados com o desta pesquisa, apresen-taram o tema com uma comparação de técnicas, entre elas SVM, Radial Basis Function(RBF) e Nearest Neighbors. Também há utilização de Redes Neurais Convolutivas para aclassificação de gênero e idade[12], que com uma implementação simples, bons resultadosforam alcançados.
18
3 TRABALHOS RELACIONADOS
Neste capítulo iremos abordar brevemente trabalhos que lidam com o mesmoproblema de Classificação de Gênero.
3.1 Reconhecimento de Gênero e Idade usando Redes Neurais
No artigo de Gil Levi e Tal Hassner[12], eles desenvolveram um sistema para re-conhecimento de gênero e estimativa de idade. Os autores propuseram o uso de RedesNeurais Convolutivas, com arquitetura de rede simples, composta de três camadas convo-lucionais e duas camadas totalmente conectadas com um pequeno número de neurônios.
O resultado foi satisfatório, tendo em vista a simplicidade do modelo propostopelos autores e da dificuldade de encontrar conjuntos de imagens rotulados com idade esexo.
3.2 Reconhecimento de Gênero com SVM’s
Diferente do nosso caso, o estudo de Jang-Hee Yoo [13] aborda o tema da classifi-cação de gênero pela análise do andar de homens e mulheres, tendo em vista do interesseda análise do andar para fins médicos.
O estudo é aplicado usando Máquina de Vetores de Suporte. Os experimentosforam feitos usando três tipos diferentes de kernels: Linear, Polinomial e RBF.
Os resultados com kernel polinomial obtiveram bons resultados, com uma taxa deacerto de 96% para 100 indivíduos.
3.3 Reconhecimento de Gênero usando diferentes técnicas
O trabalho de Baback Moghaddam e Ming-Hsuan[14] apresenta um comparativode técnicas para o reconhecimento de gênero, segue abaixo algumas das técnicas apresen-tadas:
∙ Support Vector Machines (SVM)
∙ Radial Basis Function Networks (RBF)
∙ Linear Classifier
Dentre todas as técnicas, SVM obteve uma menor taxa de erro (3.38%) contra5.54% do RBF e 58.95% do Classificador Linear
19
4 MÉTODO PROPOSTO
A intenção é fazer uma abordagem analisando o HOG e outros extratores, assimcomo os classificadores SVM e Redes Neurais, afim de realizar testes e comparações dedesempenho das diferentes ferramentas utilizadas.
O método proposto para a solução do problema consiste em um sistema que apartir da aquisição da imagem, passará pela detecção dos rostos presentes na imagem,recorte das faces detectadas, extração das características e por fim a classificação final.
20
5 RESULTADOS EXPERIMENTAIS
Para o Reconhecimento de Face, foram testadas e comparadas duas ferramentas.OpenCV com abordagem Haar-Cascade, e Dlib utilizando HoG e SVM
5.1 OpenCv Haar-Cascade
O Haar Cascade é um algoritmo de detecção de objetos tanto em imagens comoem vídeos e foi criado por Paul Viola e Michael Jones em seu artigo "Rapid Object De-tection using a Boosted Cascade of Simple Features"[15]. É uma abordagem baseada emAprendizado de Máquina onde uma função cascata é treinada a partir de muitas imagenspositivas e negativas(positivas são imagens onde o objeto a ser detectado está presente enegativas são aquelas que não está). O openCv oferece algoritmos Haar pré-treinados parao reconhecimento de vários elementos, entre eles estão: Face, olhos e assim por diante.
O procedimento de detecção consiste no uso de Classificadores em Cascata, quenada mais é do que uma coleção de estágios, em que cada estágio é um conjunto declassificadores fracos, mais conhecidos como Haar Features. Em cada estágio, é aplicadouma técnica chamada Boosting, como o Adaboost, o Adaboost calcula a média ponderadadas características fracas.
Cada estágio marca como positiva ou negativa uma janela de detecção. Positivaindica que um objeto foi encontrado e negativa indica que nenhum objeto foi encontrado.Se em um estágio o objeto for marcado como negativo ele já é descartado. O resultadofinal é aplicado em janela deslizante.
Os filtros chamados de Haar Features são parecidos como estes:
Figura 3 – Filtros Haar - Imagem retirada da documentação do OpenCV[1]
21
Cada filtro é obtido subtraindo a soma dos pixels abaixo da área branca da somados pixels abaixo da área negra. Para cada cálculo de Haar, precisamos encontrar a somados retângulos brancos e pretos, em uma janela 24 X 24, isso resultaria em mais de160000 filtros. Uma solução criada foram as Imagens Integrais, que por maior que fossemas imagens, ela reduz os cálculos de um pixel para uma operação envolvendo apenas quatropixels.
5.2 Dlib HoG
Uma implementação da biblioteca Dlib para detecção de faces é com a utilização datécnica Histogram of Oriented Gradients (HoG). Esta é uma implementação do artigo[16]original de Dalal e Triggs.
A proposta do HoG é extrair recursos em um vetor e posteriormente utiliza-lo paraalimentar o algoritmo de classificação, no caso do dlib, uma SVM, que avaliará se umaface está presente ou não na imagem.
O primeiro passo é fazer um pré-processamento calculando os gradientes horizon-tais e verticais da imagem, aplicando os kernels a seguir:
Figura 4 – Kernels para o cálculo do Gradiente
O gradiente em uma imagem normalmente remove informações desnecessárias quenão vamos utilizar.
O próximo passo é obter o HoG, a imagem é então dividida em 8x8 células paracriar uma representação mais segura para que nosso HoG não seja suscetível a erros. Como HoG calculado, obtemos a direção e magnitude do gradiente.
O último passo é a normalização de histograma, onde tornamos a imagem invari-ante a iluminação e finalmente concatenamos todos os vetores em um único vetor, tendoem mãos nosso vetor de recursos, onde podemos enviá-lo ao classificador.
22
5.3 Comparativo entre as duas técnicas
Com a necessidade de uma técnica de reconhecimento de face para ser usadaneste trabalho, foram comparadas as duas ferramentas mencionadas acima. A comparaçãofoi realizada com base em um dataset[17] de 12.880 imagens com 159.420 faces. Para acomparação da caixa delimitadora da face encontrada nos experimentos e aceitação damesma, o rigor do Intersection Over Union(IoU) foi definido como 50%.
Empregando a ferramenta do OpenCv Haar-Cascade, obtivemos um total de 17739faces reconhecidas, destas, apenas 9464 são verdadeiros positivos. OpenCv conseguiu umrecall de 5,93% e uma precisão de 53,35%. Alguns pontos positivos e negativos do OpenCvHaar-Cascade foram identificados e estão listados abaixo:
∙ Pontos Positivos:
1. Funciona quase em tempo real na CPU.
2. Arquitetura Simples
3. Detecta rostos em diferentes escalas.
∙ Pontos negativos:
1. Muitas previsões falsas
2. Funciona pouco em faces não frontais
3. Não funciona sob oclusão
Já a técnica da biblioteca Dlib usando HoG, obtemos um total de 22474 facesreconhecidas (menos que o OpenCv), destas, apenas 5414 são verdadeiros positivos. Dlibconseguiu um recall de 3,40% e uma precisão de 24,1%. Alguns pontos positivos e negativosdo Dlib HoG estão listados abaixo:
∙ Pontos Positivos:
1. Método rápido na CPU
2. Funciona muito bem para faces frontais e ligeiramente não frontais
3. Funciona sob pequena oclusão
∙ Pontos Negativos:
23
1. A principal desvantagem é que ele não detecta pequenos rostos, pois é treinado paraum tamanho de face mínimo de 80x80
2. A caixa delimitadora geralmente exclui parte da testa e até parte do queixo algumasvezes.
Técnica Faces Reconhecidas Verdadeiros Positivos Recall PrecisãoOpenCv Haar-Cascade 17739 9464 5,93% 53,35%
Dlib HoG 22474 5414 3,40% 24,1%
Tabela 1 – Comparação entre as técnicas
24
6 CONCLUSÃO E TRABALHOS FUTUROS
Até o momento foram avaliados duas abordagens de detecção de faces: detectorDlib e OpenCV. Avaliei os 2 modelos e encontrei resultados distintos. Dlib tinha resultadospiores que Haar, embora as saídas do Dlib parecessem visualmente melhores. De acordocom minha análise e pesquisas feitas, os principais motivos para o baixo desempenho doDlib são as seguintes:
1. Mesmo quando os rostos são detectados, as caixas delimitadoras são bem diferentesdas de OpenCV-Haar. Eles eram menores e muitas vezes cortavam partes da testa edo queixo. Fazendo com que o IoU calculado fosse muitas vezes abaixo da aceitação.
2. A segunda razão é que o dlib é incapaz de detectar rostos pequenos, o que reduzainda mais os números.
25
REFERÊNCIAS
[1] ABNTEX. Face Detection using Haar Cascades. Disponível em: <https://docs.opencv.org/3.4.1/d7/d8b/tutorial_py_face_detection.html>. Acesso em: 01ago. 2019.
[2] NG, C. B.; TAY, Y. H.; GOI, B.-M. Recognizing human gender in computer vision:A survey. In: ANTHONY, P.; ISHIZUKA, M.; LUKOSE, D. (Ed.). PRICAI 2012:Trends in Artificial Intelligence. Berlin, Heidelberg: Springer Berlin Heidelberg,2012. p. 335–346. ISBN 978-3-642-32695-0.
[3] THORNHILL, R.; GANGESTAD, S. W. Facial sexual dimorphism, developmentalstability, and susceptibility to disease in men and women. Evolution and HumanBehavior, Elsevier, v. 27, n. 2, p. 131–144, 2006.
[4] LINDEBERG, T. Scale invariant feature transform. 2012.
[5] BAY, H.; TUYTELAARS, T.; GOOL, L. V. Surf: Speeded up robust features. In:SPRINGER. European conference on computer vision. [S.l.], 2006. p. 404–417.
[6] MIZUNO, K. et al. Architectural study of hog feature extraction processor forreal-time object detection. In: IEEE. 2012 IEEE Workshop on Signal ProcessingSystems. [S.l.], 2012. p. 197–202.
[7] AHONEN, T.; HADID, A.; PIETIKAINEN, M. Face description with local binarypatterns: Application to face recognition. IEEE Transactions on Pattern Analysis &Machine Intelligence, IEEE, n. 12, p. 2037–2041, 2006.
[8] WANG, X.; HAN, T. X.; YAN, S. An hog-lbp human detector with partial occlusionhandling. In: IEEE. 2009 IEEE 12th international conference on computer vision.[S.l.], 2009. p. 32–39.
[9] ROJAS, R. Neural networks: a systematic introduction. [S.l.]: Springer Science &Business Media, 2013.
[10] CORTES, C.; VAPNIK, V. Support-vector networks. Machine learning, Springer,v. 20, n. 3, p. 273–297, 1995.
[11] RUSSELL, S. J.; NORVIG, P. Artificial intelligence: a modern approach. [S.l.]:Malaysia; Pearson Education Limited„ 2016.
[12] LEVI, G.; HASSNER, T. Age and gender classification using convolutional neuralnetworks. In: Proceedings of the IEEE Conference on Computer Vision and PatternRecognition Workshops. [S.l.: s.n.], 2015. p. 34–42.
[13] YOO, J.-H.; HWANG, D.; NIXON, M. S. Gender classification in human gait usingsupport vector machine. In: SPRINGER. International Conference on AdvancedConcepts for Intelligent Vision Systems. [S.l.], 2005. p. 138–145.
[14] MOGHADDAM, B.; YANG, M.-H. Learning gender with support faces. IEEETransactions on Pattern Analysis and Machine Intelligence, IEEE, v. 24, n. 5, p.707–711, 2002.
26
[15] VIOLA, P.; JONES, M. et al. Rapid object detection using a boosted cascade ofsimple features. CVPR (1), v. 1, n. 511-518, p. 3, 2001.
[16] DALAL, N.; TRIGGS, B. Histograms of oriented gradients for human detection. In:. [S.l.: s.n.], 2005.
[17] YANG, S. et al. Wider face: A face detection benchmark. In: IEEE Conference onComputer Vision and Pattern Recognition (CVPR). [S.l.: s.n.], 2016.
Apêndices
Anexos
29
TRABALHOS PUBLICADOS PELO AUTOR
30
ÍNDICE
sinopse de capítulo, 14