Entre uma pesquisa e outra sobre visão artificial encontrei a biblioteca Lince, baseada na comparação entre shapes e suas relações dos vértices internos. Esta biblioteca precisa amadurecer muito em termos matemáticos, mas o seu diferencial é a facilidade de uso, assim desmistificando o assunto e o aprendizado do algoritmo.
A biblioteca LINCE é baseada na comparação entre shapes e suas relações de um prévio aprendizado. As principais vantagens desta técnica é não precisar relacionar um objeto a um código explícito, aprendizado dinâmico durante a execução da aplicação e rápido treino do algoritmo.
O reconhecimento é dividido em 3 etapas:
A primeira etapa é o pré-processamento, ou seja, esta etapa é a mais importante, pois trata-se da análise da imagem em si.
A segunda etapa é a conversão da imagem em shape e internamente convertida em uma lista de vetores.
Imagem: ameba.png
ameba.png convertida em shape
ameba.png com a lista de vetores calculada
A terceira parte é o reconhecimento do objeto baseado na similaridade do shape e a sua representação interna (lista de vetores).
Neste documento executaremos alguns testes com imagens de caracteres e figuras básica como círculo e quadrado. O reconhecimento se mostrou eficaz por se tratar de um algoritmo de fácil compreensão.
Este projeto pode ser um ponto de partida para algoritmo de identificação de impressões digitais ou de face em vídeo ao vivo de sobre muitas implementações e aprimoramento matemático, mas não deixa de ser um bom ponto de partida.
[5] Comentário enviado por Savago em 20/07/2006 - 17:36h
Amigos
Faz uns 3 anos eu pesquisei por varias bibliotecas de visao artificial que tivessem os requisitos:
a) Open Source
b) Performance
c) Multiplataforma
Na epoca me lembro de ter testado umas 8 - 10 bibliotecas diferentes.
Em geral, as bibliotecas de visao que voce encontra na web costumam ser projetos que foram descontinuados ou possuem somente 1 mantenedor.
Quando negativo, o processo de compilacao/instalacao pode ser extremamente demorado ou complicado, sendo comum a biblioteca nao compilar com versoes mais recentes do gcc/g++.
Considerando todos estes fatores, acabei escolhendo a OpenCV. Alem de cumprir todos os requisitos, tem uma comunidade bem ativa e uma lista extensa de colaboradores/desenvolvedores. O modelo de programacao dela tambem eh agradavel.
Fica como sugestao para quem tiver interesse na area.
Um outro projeto interessante para quem ainda estah estudando o assunto: SIP (Scilab Image Processing toolbox). Trata-se de um pacote de visao artificial para o Scilab (um projeto opensource parecido com o matlab da vida). Voce pode escrever programas sofisticados de visao artificial usando linguagem de script do scilab.