2011-05-20 46 views
0

我的申请是检测硬币。我使用OpenCv完成了大部分工作。 我正在使用CannyDetection和houghTransform来检测图像的圆圈。如何选择openCV中边缘检测的thresold值?

但我没有得到正确的硬币圈子,我认为这可能是传递给cannyEdgeDetector的ThresoldValues的问题。任何人都可以告诉我如何选择thresold值来检测硬币圈。

感谢U, SRINIVAS

回答

0

如果你想发布您的问题的图像会更容易回答。一个想法是通过cannyEdgeDetector输出的轮廓上的圆形Hough transform。这会降低坏阈值的敏感度。

+0

感谢您的回复,我想知道如何选择thresold值cvCanny(img,img,85,245.5,3),这里是85,245。选择价值的标准是什么? – Srinivas 2011-05-20 11:38:37

0

对于选择的阈值,需要很多的事情需要c​​osidered ..

首先坎尼使用两个门限hysterisNonmaxima抑制,一个低阈值和一个很高的门槛。其通常优选的是,高阈值被选择为低阈值的两倍。

下限阈值 - 具有幅度小于边缘将被抑制

高等门限 - 边具有幅度大于将被保留低之间

边和高将只有在位于/连接到高阈值边缘点时才被保留。

高低门槛的选择完全取决于您的边缘强度。如果你有硬币有明亮的边界,你可以选择80和160但是如果硬币边缘的强度较低,那么30-50的低阈值和60-100的高阈值就足够了,

我还有一件事喜欢补充一点,如果你选择低门槛,一些额外的不需要的边缘也会出现,但如果你的硬币边缘的强度是那么大,那么你不得不选择较低的门槛。