Skip to content

Implementation of Hough Transform to detect Circles in an Image

Notifications You must be signed in to change notification settings

PavanGJ/Circle-Hough-Transform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Circle Hough Transform

Implementation of Hough Transform to detect Circles in an Image

Circle Hough Transform is a feature extraction technique used in Digital Image Processing to detect circles in an image. It is a specialized form of Hough Transform that utilizes three core techniques used in Image Processing - Image Filtering, Edge Detection and Hough Transform.

The project was implemented as a final project for the course CSE573: Computer Vision and Image Processing at University at Buffalo, The State University of New York during Fall 2016. The goal of the project is to detect circles in an image using Hough Transform.

To run the program type python main.py in the terminal. Requires the following packages installed

  • Numpy
  • Matplotlib
  • Scipy

Implementation

Circle Hough Transform is implemented by "voting" in the Hough parameter space. The image is smoothened using a Gaussian Filter to eliminate any unwanted noise. Then the edges are detected in the image using Laplace of Gaussian with Zero Crossing. This provides the basic outline in the image. At each point on the edge, voting for all possible circles is performed in the Hough space. The local maxima in the Hough space gives the circles. A threshold is used to identify qualifying local maxima's.

Results

The implementation requires identifying optimal threshold values for edge detection and local maxima's. This is done iteratively by scanning through the threshold space.

Input Image

Circle Hough Transform Output

We can see that Circle Hough Transform is able to detect even the occluded circles.

About

Implementation of Hough Transform to detect Circles in an Image

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages