HOUGHCIRCLES detects multiple disks (coins) in an image using Hough Transform. The image contains separating, touching, or overlapping disks whose centers may be in or out of the image.
houghcircles(im, minR, maxR);
houghcircles(im, minR, maxR, thresh);
houghcircles(im, minR, maxR, thresh, delta);
circles = houghcircles(im, minR, maxR);
circles = houghcircles(im, minR, maxR, thresh);
circles = houghcircles(im, minR, maxR, thresh, delta);
- im: input image
- minR: minimal radius in pixels
- maxR: maximal radius in pixels
- thresh (optional): the minimal ratio of the number of detected edge pixels to 0.9 times the calculated circle perimeter (0<thresh<=1, default: 0.33)
- delta (optional): the maximal difference between two circles for them to be considered as the same one (default: 12); e.g., c1=(x1 y1 r1), c2=(x2 y2 r2), delta = |x1-x2|+|y1-y2|+|r1-r2|
- circles: n-by-4 array of n circles; each circle is represented by (x y r t), where (x y), r, and t are the center coordinate, radius, and ratio of the detected portion to the circle perimeter, respectively. If the output argument is not specified, the original image will be displayed with the detected circles superimposed on it.