我在尝试理解.houghcircles()
函数,但对dp
参数如何影响结果还不完全清楚。
dp
– 累加器分辨率与图像分辨率的倒数比率。
例如,
如果dp=1
,累加器的分辨率与输入图像相同。
如果dp=2
,累加器的宽度和高度是输入图像的一半。
假设你有一张1000×1000的图像。你将dp
设置为3,那么累加器只看到图像的1/3吗?还是说,图像大小保持不变,但累加器看到的像素数量减少了?即原图像中的每3个像素对应累加器看到的1个像素,就像原图像被“模糊”了一样?
通过理解其他参数并调整dp
,我已经能够准确检测到碗中红色苹果的数量。
也许我对累加器的理解也有误,因为两者是相关的?据我所知,累加器是记录一个区域被“命中”的次数,但我不知道它是如何计算“命中区域”的。
我的代码先将一碗苹果转换为HSV颜色空间,提取红色色调,然后使用bitWiseOr将其转换为黑色或白色(不是灰度格式),接着使用.erode()
/ .dilate()
来减少噪声,最后使用.houghcircles()
进行处理。
我的结果图像如下所示 http://i.imgur.com/iGyr7TG.jpg
提前感谢。
回答:
Verba docent,
Exempla trahunt.
最佳效果在交互式GUI演示中查看
可配置的用户界面面板允许通过移动几个滑块来调整参数
...