Comparando imagens simples usando Transformada de Hough com Java

Saudações Pessoal,

queria pode comparar duas imagens, uma previavente salva como modelo, e outra qualquer , seria usado para comparações de fontes, a pessoa scanearia essa fonte, colocaria no padrão em pixels, carregaria no sistema, e o mesmo faria uma analise com o que tem disponivel.
Li algo da Transformada de Hough, mas como aplicar?

é viável?
Alguém sabe algum site, tutorial, ou algo do tipo?

Abraços.

Acho que não é bem esse o caso; leia mais sobre “Hough Transform”.

http://homepages.inf.ed.ac.uk/rbf/HIPR2/hough.htm

Veja mais em

http://homepages.inf.ed.ac.uk/rbf/HIPR2/hipr_top.htm

não é o caso? de usar a Transformada de Hough?
existe outra maneira de fazer isso?

http://www.cs.cornell.edu/Vision/hausdorff/hausmatch.html

legal thingol, pena que é em C…
mas vou fuçar, ele ta preparado pra SunOS, mas vou tentar, parece que seguindo esses principio, funcionaria o que queria, até sendo de tamanhos diferentes.

Ola,
A transf. de Hough é um procedimento para encontrar em uma figura formas parametrizáveis, como círculos, linhas (para o que é mais usada). Não me parece seu caso.
Não sei se entendi exatamente o que vc precisa com “comparar duas imagens” … seria obter um índice que “dissesse” o quanto duas imagens se parecem? (semelhança geral, ou seja, considerando a imagem como um todo). Se for isso, uma solução é calcular a correlação cruzada (CCF) entre as duas imagens. Pode-se assim obter coeficientes de correlação entre as duas imagens.

Existem muitos algoritmos pra se fazer isso pra obter melhor desempenho (geralmente é meio pesado o processamento) dependendo do tamanho da imagem, profundidade de bits por pixel, etc. Estou procurando desde ontem uma função que faça CCF na JAI. Não encontrei… se não existir, teria que ser implementado um método, que normalmente envolve um “matematiques”: convolução, transformada de Fourier, etc (essas Funções a JAI implementa!).

Ainda, dependendo de sua necessidade, existe um aplicativo, Java, opensource, o imageJ
http://rsbweb.nih.gov/ que faz muita coisa em processamento de imagem. Alem disso, para o caso específicao de correlação entre imagens, procure por plugins para o imageJ http://rsbweb.nih.gov/ij/plugins/.

Ainda, para esse tipo de processamento, existem, eventualmente, varios detalhes que devem ser levados em conta e implicam a necessidade de pre-processamento da imagem com outras funções antes da CCF propriamente dita. Esse tipo de processamento é “fácil” de fazer no Matlab… se precisar, fico a disposição pra ajudar nesse sentido, pelo menos pra vc ver se obtem o que precisa…

Valeu,
elvano.

Elvano, muito obrigado cara, belo post, muito bom!
Vou ler melhor em casa, mas é exatamente o que você disse, quero ver o nível de semelhança entre duas imagens, eu ouvi falar da JAI, ouvi dizer que é muito pesada também, mas vou pesquisar melhor, vi que tem o código pra baixar do programa que você indicou ai, vou dar uma olhada também. Vou manter contato.
Abraços

Ola a todos!

Vi este post e também estou procurando formas de comparar imagens e determinar suas diferenças/ semelhanças.

Se vcs souberem de algo eu agradeço.

Carlos.eduardo