The Hough transform may be used to detect circular shapes in images, after binarisation, for example by an edge detector. Often, functions to do this operation require the radius of the circle to be specified.
The function circle_hough allows a range of radii to be specified, so that the radius does not need to be known exactly in advance. It is likely to be faster than calling a standard function repeatedly for different radii.
Multiple circles may be detected by finding peaks in the 3D accumulator array. A function, circle_houghpeaks, is provided for this. A demonstration of the two functions is included as a script, circle_houghdemo.
The zip file includes an efficient and accurate implementation of circle approximation, without gaps, on an integer grid.