我正在尝试调整 HoughCircles() 方法,而不是搜索圆圈,而是搜索图片中我需要的颜色的像素。看不懂cannyThreshold、accumulatorThreshold、dp方法的输入参数是干什么的:
*cannyThreshold - 两个传递给 Canny 边缘检测器的较高阈值(较低的阈值将小两倍)。
*accumulatorThreshold - 中心检测阶段的累加器阈值。它越小,可能检测到的错误圆圈就越多。将首先返回与较大的累加器值相对应的圆圈
*dp - 用于检测圆心的累加器的解算。例如,如果为 1,累加器将具有与输入图像相同的分辨率,如果为 2 - 累加器将具有两倍的宽度和高度,等等
请从元数据中翻译此信息。
要正确调整这些设置,您需要获得一些图像处理经验。
第一个参数是在提取连接 Canny 边界的过程中使用的值。梯度值高于这个限制的点被认为是强的并且无条件包含在结果中,梯度小于这个限制一半的点被认为是弱的并且被无条件排除,并且一些中间的点按照一定的规则被包含。一般来说,这个参数越大,结果中的噪点就越少,但不太亮的圆形边界可能会丢失。
第三个参数是将 Hough 变换的结果添加到其中的累加器的分辨率。这是一个标记节点的格子,在第一阶段选择的每个点都可以属于该格子。单元格越小,理论上坐标的确定越准确,但内存的大小呈二次方增长,更糟糕的是,进入节点的标记(投票)太少,很难选择数量最多的节点。选票(可能的圆心)
但是第二个参数——只是指得票数,超过这个数的累加器节点可以认为是描述圆心