Reconhecimento de Face, Comparação de Imagens e OCR

1,095 views
Skip to first unread message

Paulo BlasterX

unread,
Sep 28, 2014, 5:41:29 PM9/28/14
to androidb...@googlegroups.com
Senhores,

 Sou policial e quero dar uma agilizada no trabalho com os pebas. A ideia é montar um banco de dados no celular msm (por enquanto). Tiro a foto do peba que eu prendi e os dados dele assim como o crime cometido. Como no Brasil nós prendemos toda hora o mesmo cara, eu quero tirar uma foto da face dele e que seja identificado na base de dados (local) . 
 Alguém tem alguma ideia de como posso proceder ? 

1) Questão de processamento: acham que depois de uma certa quantidade de imagens eu conseguirei manter um processamento aceitável ? Estimam em quantos arquivos em uma resolução baixa/média..
2) Alguma biblioteca que possa me ajudar nesse reconhecimento e comparação ? Estive lendo sobre o OpenCV mas ainda tenho que pesquisar melhor...
3) Alguém sabe se aqueles webservices do SINESP CIDADÃO é possível utilizá-lo em parceria ? Sem ser preciso decodificar o app deles pra pegar essa informação ?
4) Também tenho interesse em fazer nesse mesmo sistema um app que eu possa sair tirando foto de várias placas de carros e ele ir pesquisando se é roubado ou não... Utilizando libs de OCR. Li a respeito do Tesseract .. Este é o melhor ? 

Minha ideia é dificultar pros safados e intensificar o combate ao crime (já que a merda das leis não mudam, deixa eu ver o q eu posso fazer no meu quadrado). Se puderem me ajudar, ficaria grato. 

Me deem um help aí que não sou o cara do desenvolvimento java pra android não, mas eu me viro.. Quero só umas orientações msm.. 

Futuramente pretendo colocar isso tudo em um PC no batalhão pra receber as informações, processar e devolver via webservice pro celular.. sendo possível utilizar pelas equipes... 

breno douglas araujo souza

unread,
Sep 29, 2014, 4:49:28 PM9/29/14
to androidb...@googlegroups.com
Não sou nenhum gênio do Android, mas quanto ao reconhecimento de imagem já fiz com OpenCV em python (E é muito bom e rápido) e no Java ele é bem tranquilo também, e de muito facil implementação. 

Recomendo não tentar partir pra outro, pois, ele ja tem o reconhecendo de face e olho nativo nele, não precisa nem definir e criar novo padrão de reconhecimento pra ele. 

Nos testes que fiz (não foi o de face) ele me retornava uma hash do padrão onde eu comparava com o novo e ele me dava uma porcentagem de semelhança (muito precisa diga-se de passagem)

E caso consiga fazer uma implementação já com o OpenCV não tem porque depois buscar outras libs de OCR, pois, você terá todos esses recursos (alguém me corrija se eu tiver visto os exemplos de maneira errada no site do OpenCV)


Paulo BlasterX

unread,
Sep 29, 2014, 6:31:02 PM9/29/14
to androidb...@googlegroups.com

Interessante seus comentários.. Mas o opencv consegue comparar uma face de alguém que acabei de tirar uma foto com uma foto de uns meses atrás? Pq eu sei q ele compara imagens... Mas consegue comparar as faces?

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

breno douglas araujo souza

unread,
Sep 30, 2014, 8:02:51 AM9/30/14
to androidb...@googlegroups.com
Existe várias maneiras de fazer essa comparação e a mais precisa que encontrei foi com redes neurais (não sei o quão isso ficaria pesado em um smartphone mediano android, mas vc pode ver um exemplo implementando essa geração de redes neurais no https://github.com/jetpacapp/DeepBeliefSDK, porém, infelizmente eles fazem isso com IOS). Também existe formas de vc gerar um padrão para faces e buscar por padrões aproximados (que é a clássica). Logicamente que se o cara pintar o cabelo fizer uma plastica na cara e etc até os olhos humanos terá dificuldades. Mas acredito que o padrão do rosto dele pode mudar pouco apenas com o tempo. E respondendo diretamente sua pergunta eu consegui implementar algo que busca uma garrafa de cerveja em fotos de pessoas segurando ela e conseguia falar que cerveja que era aquela que tava na mão do cara. Então, sim é possivel comparar faces e apenas dentro de uma foto. Mas logicamente terá que ter bastante estudo encima recomendo http://opencv.org/books.html tem muito livro bom e nao achei caro, vale a pena comprar.

Da uma testada ai depois: http://jetpacapp.github.io/DeepBeliefSDK/  (Feche tudo no browse antes, essa implementação com javascript é super pesada, kkkkk)

--
You received this message because you are subscribed to a topic in the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/androidbrasil-dev/kYj-a5w0cO8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to androidbrasil-...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.



--
Breno Douglas Araújo Souza

Analista e Desenvolvedor de Sistemas
Especializando em Web e Sistemas de Informação

           breno_...@hotmail.com

Paulo BlasterX

unread,
Sep 30, 2014, 10:48:34 AM9/30/14
to androidb...@googlegroups.com
Vc é o cara! Obrigado meu jovem! 

Michel Braz de Morais

unread,
Sep 30, 2014, 10:53:06 AM9/30/14
to androidb...@googlegroups.com
Legal esse exemplo ae breno .... mas é muito lento mesmo ...
mas consegui carregar uma imagem e ele realmente reconhece ... muito legal

att,

Michel Braz de Morais

Analista / Desenvolvedor de sistemas

breno douglas araujo souza

unread,
Sep 30, 2014, 10:58:47 AM9/30/14
to androidb...@googlegroups.com
Sim Michel, é javascript né e roda tudo no browse. A tendencia é fica meio tenso mesmo o processamento. Mas se você pensar que isso vai ser compilado pra bytecode utilizando uma linguagem realmente parruda (que é o java) e depende do seu servidor e nao do browse do usuário pode ser que melhore muito esse desempenho.

Nb Bueno

unread,
Jan 23, 2015, 4:20:20 PM1/23/15
to androidb...@googlegroups.com
eu consigo pegar o rosto da foto ou webcam, porem nao consigo descobrir um parametro que seja unico da face do individuo, tem algum programador java ai ???

Tiago Alves

unread,
Jan 24, 2015, 8:39:36 AM1/24/15
to androidb...@googlegroups.com
Senhores,

com relação à identificação por face (biometria facial), posso dizer que não é tão simples assim. O reconhecimento facial é, dependendo do algoritmo, dependente de iluminação e outros fatores externos e essas variações podem reduzir a precisão da solução.

A biblioteca do OpenCV funciona razoavelmente mas está longe de ter uma precisão necessária para esse tipo de aplicação. A única opção é utilizar SDKs comerciais.

Com relação à ideia de pesquisar se o carro é roubado, existe um projeto no Brasil chamado SINIAV que irá fazer exatamente isso. 

Abs

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
---------------------------------------------------
 Tiago Alves de Oliveira
 Engenheiro de Computação
 IEEE - Certified Biometrics Professional
 
 
 Cel:  (19) 99831-7857
-------------------------------------------------------
Reply all
Reply to author
Forward
0 new messages