Date post: | 06-Jul-2015 |
Category: |
Documents |
Upload: | guilherme-augusto |
View: | 103 times |
Download: | 0 times |
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 1/16
Um Implementação daUm Implementação daTransformada de Hough ParaTransformada de Hough Para
Detecção de Linhas e CírculosDetecção de Linhas e Círculos
Professor: Antônio A. F. OliveiraProfessor: Antônio A. F. Oliveira
Alunos: Carlos Henrique da C. Cavalcanti Alunos: Carlos Henrique da C. Cavalcanti
Leonardo Oliveira B. de CarvalhoLeonardo Oliveira B. de Carvalho
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 2/16
Tópicos Abordados:Tópicos Abordados: O que é a Transformada de HoughO que é a Transformada de Hough
A Transformada de Hough para detecção de A Transformada de Hough para detecção de
retasretas A Transformada de Hough para detecção de A Transformada de Hough para detecção de
círculos no Matlabcírculos no Matlab
Observações FinaisObservações Finais
PerguntasPerguntas
BibliografiaBibliografia
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 3/16
A Transformada de Hough A Transformada de Hough Introdução :Introdução :
A Transformada de Hough foi desenvolvida por Paul Hough em A Transformada de Hough foi desenvolvida por Paul Hough em1962 e patenteada pela IBM.1962 e patenteada pela IBM.
Originalmente, foi elaborada para detectar característicasOriginalmente, foi elaborada para detectar característicasanaliticamente representáveis em imagens binarizadas, assimanaliticamente representáveis em imagens binarizadas, assimcomo linhas, círculos e elipses.como linhas, círculos e elipses.
Na última década tornouNa última década tornou--se uma ferramenta de uso comum nase uma ferramenta de uso comum na
visão artificial para o reconhecimento destas características.visão artificial para o reconhecimento destas características.
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 4/16
A Transformada de Hough A Transformada de Hough Definição :Definição :
A Transformada de Hough (TH) é um método padrão para A Transformada de Hough (TH) é um método padrão paradetecção de formas que são facilmente parametrizadas (linhas,detecção de formas que são facilmente parametrizadas (linhas,círculos, elipses, etc.) em imagens digitalizadas.círculos, elipses, etc.) em imagens digitalizadas.
O conceito principal da TH está em definir um mapeamentoO conceito principal da TH está em definir um mapeamentoentre o espaço de imagem e o espaço de parâmetros. Cadaentre o espaço de imagem e o espaço de parâmetros. Cadaborda de uma imagem é transformada por esse mapeamentoborda de uma imagem é transformada por esse mapeamentopara determinar células no espaço de parâmetros, indicadaspara determinar células no espaço de parâmetros, indicadaspelas primitivas definidas através do ponto analisado. Essaspelas primitivas definidas através do ponto analisado. Essascélulas são incrementadas, e indicarão no final do processo,células são incrementadas, e indicarão no final do processo,através da máxima local de um acumulador, quais osatravés da máxima local de um acumulador, quais osparâmetros correspondentes a forma especificada.parâmetros correspondentes a forma especificada.
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 5/16
A Transformada de Hough A Transformada de Hough A idéia é aplicar na imagem uma transformação tal que todos os A idéia é aplicar na imagem uma transformação tal que todos ospontos pertencentes a uma mesma curva sejam mapeados numpontos pertencentes a uma mesma curva sejam mapeados numúnico ponto de um novo espaço de parametrização da curvaúnico ponto de um novo espaço de parametrização da curva
procurada.procurada.
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 6/16
A Transformada de Hough A Transformada de Hough Um passo necessário no processo de aplicação da TH é aUm passo necessário no processo de aplicação da TH é a
detecção de bordas e a limiarização. Foi usado do método dedetecção de bordas e a limiarização. Foi usado do método deCannyCanny para a realização desta tarefa. A detecção de bordas e apara a realização desta tarefa. A detecção de bordas e a
escolha de um limiar ótimo pode ser realizada por meio deescolha de um limiar ótimo pode ser realizada por meio demétodos existentes na literatura.métodos existentes na literatura.
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 7/16
A Transformada de Hough A Transformada de Hough Variações da Transformada de Hough: Variações da Transformada de Hough:
Transformada Probabilística de HoughTransformada Probabilística de Hough
Transformada Randômica de HoughTransformada Randômica de Hough
Transformada Hierárquica de HoughTransformada Hierárquica de Hough
Transformada Combinatorial de HoughTransformada Combinatorial de Hough
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 8/16
A Transformada de Hough Para A Transformada de Hough Para
Detecção de RetasDetecção de Retas Utilizamos coordenadas polares para representação de umaUtilizamos coordenadas polares para representação de uma
reta.reta.
SupondoSupondo rr o comprimento da reta eo comprimento da reta e qq a orientação do vetora orientação do vetornormal da reta, para todo o ponto (x,y) pertencente a reta,normal da reta, para todo o ponto (x,y) pertencente a reta,temos que a equaçãotemos que a equação r= x . cos ( q ) + y . sin ( q )r= x . cos ( q ) + y . sin ( q ) éésatisfeita.satisfeita.
A TH dos pixels da imagem é registrada em um histograma A TH dos pixels da imagem é registrada em um histograma(matriz) bidimensional. Cada pixel (x,y) do espaço real produz(matriz) bidimensional. Cada pixel (x,y) do espaço real produzuma curva senoidal no espaço de Hough.uma curva senoidal no espaço de Hough.
Vamos ver um exemploVamos ver um exemplo
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 9/16
A Transformada de Hough para A Transformada de Hough para
detecção de círculos no Matlabdetecção de círculos no Matlab Para a detecção de círculos em imagens, foi utilizado o softwarePara a detecção de círculos em imagens, foi utilizado o software
MATLAB.MATLAB. Foi usado um processo de eleição de círculos onde os votos sãoFoi usado um processo de eleição de círculos onde os votos são
atribuídos aos pontos de passagem dos possíveis círculosatribuídos aos pontos de passagem dos possíveis círculosexistentes na imagem.existentes na imagem.
Os votos são acumulados em uma matriz de acumulação deOs votos são acumulados em uma matriz de acumulação devotos, sendo que a detecção de um possível círculo é obtidavotos, sendo que a detecção de um possível círculo é obtidaquando um valor máximo (cume) é obtido no acumulador dequando um valor máximo (cume) é obtido no acumulador devotos.votos.
A pesquisa nos pixels da imagem binária que contém as bordas A pesquisa nos pixels da imagem binária que contém as bordas
da imagem original é feita utilizandoda imagem original é feita utilizando--se a definição matemáticase a definição matemáticaabaixo, onde a e b são as coordenadas do centro do círculo e rabaixo, onde a e b são as coordenadas do centro do círculo e ré o raio do círculo.é o raio do círculo.
(x(x -- a)2 + (ya)2 + (y -- b)2 = R2b)2 = R2
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 10/16
A Transformada de Hough para A Transformada de Hough para
detecção de círculos no Matlabdetecção de círculos no Matlab
Assim, o algoritmo inicia com a leitura da imagem original, Assim, o algoritmo inicia com a leitura da imagem original,convertendoconvertendo--se esta imagem para tons de cinza, usandose esta imagem para tons de cinza, usando--se logose logo
a seguir, o método de Canny para a obtenção da imagema seguir, o método de Canny para a obtenção da imagembinária que contém os pixels das bordas da imagem.binária que contém os pixels das bordas da imagem.
O usuário deve fornecer, além da imagem, os parâmetrosO usuário deve fornecer, além da imagem, os parâmetros raioraio(raio dos círculos a serem encontrados na imagem) e(raio dos círculos a serem encontrados na imagem) e distdist
(resolução da matriz de acumulação de votos).(resolução da matriz de acumulação de votos).
Para nosso exemplo considere raio=10 e dist=3Para nosso exemplo considere raio=10 e dist=3
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 11/16
A Transformada de Hough para A Transformada de Hough para
detecção de círculos no Matlabdetecção de círculos no Matlab
Imagem OriginalImagem Original Imagem BinarizadaImagem Binarizada Bordas da ImagemBordas da Imagem
A imagem está pronta para aplicarmos a Transformada de Hough A imagem está pronta para aplicarmos a Transformada de Hough
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 12/16
A Transformada de Hough para A Transformada de Hough para
detecção de círculos no Matlabdetecção de círculos no Matlab Projeção da TransformadaProjeção da Transformada Domínio da TransformadaDomínio da Transformada
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 13/16
A Transformada de Hough para A Transformada de Hough para
detecção de círculos no Matlabdetecção de círculos no Matlab Imagem com os círculos detectados de raio R = 10 :Imagem com os círculos detectados de raio R = 10 :
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 14/16
Observações FinaisObservações Finais O método da Transformada de Hough para detecção de bordasO método da Transformada de Hough para detecção de bordas
é aplicável quando se possui informações precisas acerca daé aplicável quando se possui informações precisas acerca daforma da curva. Os dados de base da Transformada de Houghforma da curva. Os dados de base da Transformada de Hough
são geralmente pontos de uma imagem obtidos através dassão geralmente pontos de uma imagem obtidos através dastransformações de gradiente e da limiarização.transformações de gradiente e da limiarização.
A Transformada de Hough é um método de acumulação de A Transformada de Hough é um método de acumulação derequisitos muito geral, possibilitando detectar qualquer curva,requisitos muito geral, possibilitando detectar qualquer curva,
mesmo pouco visível ou fortemente ruidosa.mesmo pouco visível ou fortemente ruidosa.
O método pode ser expandido para a determinação de outrasO método pode ser expandido para a determinação de outrasformas geométricas, desde que a sua equação seja conhecidaformas geométricas, desde que a sua equação seja conhecida(bastariam algumas alterações na função implementada).(bastariam algumas alterações na função implementada).
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 15/16
PerguntasPerguntas
Nosso muito obrigado a todos.Nosso muito obrigado a todos.
A nossos amigos Rodrigo A nossos amigos RodrigoMorante e VitorMorante e Vitor Vasconcelos Vasconcelospelas dúvidas tiradas.pelas dúvidas tiradas.
Valeu. Valeu.
5/7/2018 Download - slidepdf.com
http://slidepdf.com/reader/full/download-559abbe6b6ebd 16/16
BibliografiaBibliografia Papers e Livros:Papers e Livros: A Space A Space--Efficiente Hough Transform Implementation for Object Efficiente Hough Transform Implementation for Object
DetectionDetection -- Chistopher M. BrownChistopher M. Brown -- Computer ScienceComputer ScienceDepartament Departament -- University of RochesterUniversity of Rochester -- Rochester, NY Rochester, NY
Uso da Transformada de Hough na Detecção de Circulos emUso da Transformada de Hough na Detecção de Circulos emImagens DigitaisImagens Digitais -- Glaucius Décio DuarteGlaucius Décio Duarte -- Prof.. Adjunto daProf.. Adjunto daESIN/UCPel, PelotasESIN/UCPel, Pelotas -- RSRS -- BrasilBrasil
MatlabMatlab -- Image Processing ToolbokImage Processing Toolbok -- The Mathworks Inc.The Mathworks Inc.
Sites:Sites: http://www.inf.ufsc.br/~visao/2000/Hough/http://www.inf.ufsc.br/~visao/2000/Hough/