+ All Categories
Home > Documents > Download

Download

Date post: 06-Jul-2015
Category:
Upload: guilherme-augusto
View: 103 times
Download: 0 times
Share this document with a friend
16
Um Implementação da Um Implementação da Transformada de Hough Para Transformada de Hough Para Detecção de Linhas e Círculos Detecção de Linhas e Círculos Professor: Antônio A. F. Oliveira Professor: Antônio A. F. Oliveira  Alunos: Carlos Henrique da C. Cavalcanti  Alunos: Carlos Henrique da C. Cavalcanti Leonardo Oliveira B. de Carvalho Leonardo Oliveira B. de Carvalho
Transcript
Page 1: Download

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

Page 2: Download

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

Page 3: Download

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.

Page 4: Download

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.

Page 5: Download

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.

Page 6: Download

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.

Page 7: Download

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

 

Page 8: Download

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

 

Page 9: Download

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

 

Page 10: Download

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

 

Page 11: Download

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

 

Page 12: Download

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

 

Page 13: Download

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 :

 

Page 14: Download

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).

 

Page 15: Download

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.

 

Page 16: Download

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/


Recommended