detector de barba em fotografias

24
Detector de barba em fotografias Redes Neurais/Inteligência Artificial Gean Paulo Barros Kláudio Henrique M. Medeiros Laura Dutra de Menezes

Upload: reece

Post on 16-Mar-2016

30 views

Category:

Documents


0 download

DESCRIPTION

Detector de barba em fotografias. Redes Neurais/Inteligência Artificial Gean Paulo Barros Kláudio Henrique M. Medeiros Laura Dutra de Menezes. Definição do problema. Em bancos de dados com muitas imagens, é importante nos apoiarmos em algumas características para separar os dados. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Detector de barba em fotografias

Detector de barba em fotografias

Redes Neurais/Inteligência Artificial

Gean Paulo BarrosKláudio Henrique M. Medeiros

Laura Dutra de Menezes

Page 2: Detector de barba em fotografias

Definição do problema• Em bancos de dados com muitas imagens, é

importante nos apoiarmos em algumas características para separar os dados.

• Se a quantidade de dados for muito grande, fica inviável para um humano separar manualmente.

Page 3: Detector de barba em fotografias

Descrição do projeto• O projeto consiste na construção e treinamento

de uma rede neural que classifique as pessoas em imagens passadas para ela como barbadas ou não.

Page 4: Detector de barba em fotografias

Estratégias para resolução• Para resolver o problema, usamos técnicas de

Visão Computacional, Inteligência Artificial e Redes Neurais.

• Visão Computacional: detecção de faces, segmentação de imagens e extração de características.

• Redes Neurais: uso da abordagem Multi-Layer Perceptron, backpropagation.

Page 5: Detector de barba em fotografias

Estratégias para resolução• Durante este projeto, duas estratégias foram utilizadas.

1. Usamos um limiar para binarização da imagem, uma máscara de pesos e treinamos a rede. Uma pessoa seria classificada como barbada se a taxa de pixels pretos após a binarização fosse alto o suficiente.

2. Usamos a técnica de Local Binary Patterns (LBP) para calcular o valor de nível de cinza de um pixel em função de seus vizinhos, construímos um histograma de nível de cinza e treinamos a rede. Uma pessoa seria considerada barbada se houvesse uma quantidade suficiente de descontinuidades nas cores.

Page 6: Detector de barba em fotografias

Estratégia da binarização

Page 7: Detector de barba em fotografias

Elementos de Visão Computacional

• Binarização da imagem, segmentação da barba, cálculo de pontos pretos em cada segmento da imagem.

Page 8: Detector de barba em fotografias

Elementos de Redes Neurais• A rede neural Multi-Layer Perceptron usa

backpropagation e minimização de erro no treinamento.

• A quantidade de épocas é critério de parada do treinamento (foi usado 3000).

• Usamos fotos de pessoas barbadas e não-barbadas para treinamento e fotos de pessoas barbadas, não-barbadas e fotos “confusas” no teste.

Page 9: Detector de barba em fotografias

Elementos de Redes Neurais• Rede neural usada para classificação.

Page 10: Detector de barba em fotografias

Resultados obtidos• Épocas = 2000• Output: 0.9861940648297871 Expected: 1.0 Output: 0.8499247580569687 Expected: 1.0• Output: 0.4974562224208351 Expected: 1.0 Output: 0.9655933631094192 Expected: 1.0• Output: 0.9055234623791313 Expected: 1.0 Output: 0.6433688735570527 Expected: 1.0• Output: 0.08323963777354385 Expected: 1.0 Output: 0.9690658663292349 Expected: 1.0• Output: 0.9814613448314898 Expected: 1.0 Output: 0.9766023027282116 Expected: 1.0• Output: 0.7412806201628845 Expected: 1.0 Output: 0.9884775881275171 Expected: 1.0• Output: 0.6863341054133643 Expected: 1.0 Output: 0.1307606382428527 Expected: 1.0• Output: 0.5671966845275148 Expected: 1.0 Output: 0.9889073758230608 Expected: 1.0• Output: 0.5451663257364684 Expected: 1.0 Output: 0.07119817749191974 Expected:

1.0• Output: 0.98766946748858 Expected: 1.0 Output: 0.057927497883103404 Expected:

0.0• Output: 0.9843062543500479 Expected: 0.0 Output: 0.47601732132310626 Expected: 0.0• Output: 0.05902913101226488 Expected: 0.0 Output: 0.06978186363516721 Expected: 0.0• Output: 0.8505239279329824 Expected: 0.0 Output: 0.2149094373597048 Expected: 0.0• Output: 0.3531585424936426 Expected: 0.0 Output: 0.12615414563207858 Expected: 0.0• Output: 0.05913727882027054 Expected: 0.0 Output: 0.1227239715194805 Expected: 0.0• Output: 0.0755282671741752 Expected: 0.0 Output: 0.48149579464021913 Expected: 0.0• Output: 0.12240226503302304 Expected: 0.0 Output: 0.11497987503729333 Expected: 0.0• Output: 0.3338233316324114 Expected: 0.0 Output: 0.11477105761239936 Expected: 0.0• Output: 0.4346140797043658 Expected: 0.0 Output: 0.13429158160800791 Expected: 0.0• Taxa de acerto = 32/38 (84%)

Page 11: Detector de barba em fotografias

Resultados obtidos• Épocas = 1000000• Output: 0.9990560600298203 Expected: 1.0 Output: 0.9999995112464399 Expected: 1.0• Output: 0.9603911266474611 Expected: 1.0 Output: 0.9967099816803642 Expected: 1.0• Output: 0.9998438550050472 Expected: 1.0 Output: 0.9999996554133375 Expected: 1.0• Output: 1.8320158219234922E-6 Expected: 1.0 Output: 0.9999990802136012 Expected:• Output: 0.999999599121801 Expected: 1.0 Output: 0.030907532128465892 Expected: 1.0• Output: 1.3332350512144617E-5 Expected: 1.0 Output: 0.5039459426070423 Expected: 1.0• Output: 2.3433824405011217E-9 Expected: 1.0 Output: 3.4269322122683765E-5 Expected: 1.0• Output: 0.9999996259705186 Expected: 1.0 Output: 0.9999987574404331 Expected: 1.0• Output: 0.9960728802392983 Expected: 1.0 Output: 2.106918322554876E-4 Expected: 1.0• Output: 0.9999992423825035 Expected: 1.0 Output: 4.332590588857187E-4 Expected: 0.0• Output: 0.9999995956172157 Expected: 0.0 Output: 5.11768947992957E-7 Expected: 0.0• Output: 9.158039471360628E-6 Expected: 0.0 Output: 4.46242065990349E-5 Expected: 0.0• Output: 0.8373958844934365 Expected: 0.0 Output: 0.08437344221589521 Expected: 0.0 • Output: 2.6802413067578826E-6 Expected: 0.0 Output: 3.6490155089645226E-5 Expected: 0.0 • Output: 4.247963336188048E-6 Expected: 0.0 Output: 5.849972942174981E-4 Expected: 0.0 • Output: 3.1890247213250536E-5 Expected: 0.0 Output: 0.9711538974359608 Expected: 0.0• Output: 4.392869102630845E-6 Expected: 0.0 Output: 2.103780130897108E-6 Expected: 0.0 • Output: 2.553857494999205E-5 Expected: 0.0 Output: 0.0032539739902122853 Expected: 0.0 • Output: 0.025578791156717247 Expected: 0.0 Output: 0.002110720342746829 Expected: 0.0• Taxa de acerto = 29/38 (76%)

Page 12: Detector de barba em fotografias

Casos positivos (binarização)• Ótimo para classificar pessoas com barba escura.• Bom para classificar pessoas com barba densa.

Page 13: Detector de barba em fotografias

Casos negativos (binarização)• Péssimo para classificar pessoas com pele escura

ou barba clara.• Não muito bom para pessoas de barba rala.• Não muito bom com pessoas que usam roupas

escuras (podem eventualmente aparecer na segmentação).

Page 14: Detector de barba em fotografias

Estratégia do LBP

Page 15: Detector de barba em fotografias

Local Binary Patterns• LBP é uma técnica usada em reconhecimento de

faces e detecção de texturas.

• O valor de um pixel será substituído pelo código gerado.

Page 16: Detector de barba em fotografias

Local Binary Patterns

Page 17: Detector de barba em fotografias

Local Binary Patterns• Na implementação mais usual de LBP, são feitas

comparações na forma:

if (valor do pixel < centro) thenligue o bit correspondente no código

• Conseguimos um resultado melhor adaptando estes trechos para:

if (Math.abs(valor do pixel – centro) > 20) thenligue o bit correspondente no código

Page 18: Detector de barba em fotografias

Histograma de Local Binary Pattern• Feito este processo, foi construído um histograma

com 256 entradas. Para cada entrada, foi calculado a porcentagem de pixels na imagem naquela classe.

Page 19: Detector de barba em fotografias

Elementos de Redes Neurais• A rede neural Multi-Layer Perceptron usa

backpropagation e minimização de erro no treinamento.

• A quantidade de épocas é critério de parada do treinamento (foi usado 150000).

• A quantidade de entradas na rede agora é 256 (uma para cada nível de cinza após o LBP), portanto foi necessário uma quantidade (bem) maior de épocas.

Page 20: Detector de barba em fotografias

Resultados obtidos• Output: 0.9114529741515617 Expected: 1.0 Output: 0.3982417911106177 Expected: 1.0 • Output: 0.9124925910136579 Expected: 1.0 Output: 0.9598221406647397 Expected: 1.0• Output: 0.843119351791984 Expected: 1.0 Output: 0.9617807778391703 Expected: 1.0• Output: 0.9857677544485014 Expected: 1.0 Output: 0.6274472184253603 Expected: 1.0• Output: 0.5626601414147145 Expected: 1.0 Output: 0.9986364404854209 Expected: 1.0• Output: 0.6603521564570772 Expected: 1.0 Output: 0.9878773636889654 Expected: 1.0 • Output: 0.9954454342329163 Expected: 1.0 Output: 0.9998156875574431 Expected: 1.0 • Output: 0.7333281845245864 Expected: 1.0 Output: 0.4615983938519976 Expected: 1.0 • Output: 3.022780226149874E-4 Expected: 1.0 Output: 0.8848915379119332 Expected: 1.0 • Output: 0.9745685120388294 Expected: 1.0 Output: 0.5785584152548727 Expected: 0.0 • Output: 0.43966680152573373 Expected: 0.0 Output: 0.1844652063782568 Expected: 0.0 • Output: 0.23474918162530425 Expected: 0.0 Output: 0.18706911968938753 Expected: 0.0• Output: 0.35334640686704694 Expected: 0.0 Output: 0.4609657301114388 Expected: 0.0 • Output: 0.26353455900305706 Expected: 0.0 Output: 0.13096397214102945 Expected: 0.0• Output: 0.02503435144239927 Expected: 0.0 Output: 0.5860238742037481 Expected: 0.0 • Output: 0.5317327222567582 Expected: 0.0 Output: 0.18513086771119108 Expected: 0.0• Output: 0.4634602274177311 Expected: 0.0 Output: 0.28937650200895765 Expected: 0.0• Output: 0.19816276935828137 Expected: 0.0 Output: 0.03936934463117415 Expected: 0.0• Output: 0.9626539972310897 Expected: 0.0 Output: 0.9749989526056474 Expected: 0.0 • Taxa de acerto: 30/38 (78%)

Page 21: Detector de barba em fotografias

Casos positivos (LBP)• Muito bom para detectar barba rala ou curta.• Bom com pessoas de barba mais clara (pois o LBP

irá tratar barbas claras e escuras da mesma forma).

Page 22: Detector de barba em fotografias

Casos negativos (LBP)• Mau quando a barba é densa a ponto de não

haver textura.• Se a pele for porosa ou os pelos de barba forem

muito curtos, a rede pode confundir com textura de barba.

Page 23: Detector de barba em fotografias

Binarização vs LBP• Binarização funciona bem em alguns casos, mas é uma

implementação que funciona mal com barbas claras (não serão barbadas) e pessoas negras (serão barbadas).

• Local Binary Patterns trata textura e não cor, e possui resultados mais coerentes em uma diversidade maior de situações. Porém é bastante sensível a barbas curtas demais (o indivíduo será barbado mesmo que tenha pouca barba).

• Concluímos então que LBP é a técnica mais apropriada para esta situação.

Page 24: Detector de barba em fotografias

Demonstração prática