cv.HoughCircles()函数
circles=cv.HoughCircles(image, method, dp, minDist[, circles[, param1[, param2[, minRadius[, maxRadius]]]]])
- image:8位、单通道、灰度输入图像
- circles:找到圆的输出向量。每个向量编码为3或4个元素的浮点向量$(x,y,radius)(x,y,radius,votes)$
- method:检测方法。目前,唯一实现的方法是HOUGH_GRADIENT
- dp:累加器分辨率与图像分辨率的反比。例如,如果dp=1,则累加器具有与输入图像相同的分辨率。如果dp=2,则累加器的宽度和高度都是一半
- minDist:检测到圆的中心之间的最小距离。如果参数太小,除了一个真实的圆之外,可能错误地检测到多个相邻的圆圈。如果太大,可能会遗漏一些圆。
- param1:第一个特定方法参数。在HOUGH_GRADIENT的情况下,它是传递给canny边缘检测算子的高阀值,而低阀值为高阀值的一半
- param2:第二个特定方法参数。在HOUGH_GRADIENT的情况下,它是检测阶段圆心的累加阀值。它越小,可以检测到更多的假圆。它越大,能通过检测的圆就更加接近完美的圆形。
- minRadius:最小半径
- maxRadius:最大圆半径。如果≤0,则使用最大图像尺寸;如果<0,则返回中心而不查找半径
参考网址:
https://blog.csdn.net/tengfei461807914/article/details/77507820
https://docs.opencv.org/3.4.3/dd/d1a/group__imgproc__feature.html#ga47849c3be0d0406ad3ca45db65a25d2d