2011-10-10 87 views
1

我试图从几何图形的图片中检测线条的存在。例如,有一个三角形,我正在寻找它的一个角度的平分线。所以我知道这条线应该在哪里和多长时间。使用OpenCV进行线条检测

我到目前为止的做法是检测所有具有霍夫变换函数的行,并在这些行中寻找我的行。但是,这很慢,概念上不是很好。事实上,由于我知道这个细分市场的两个极端,所以直接寻找这个地方似乎更自然。

要做到这一点,我的第一个直觉就是使用Canny的结果并遍历每个包含一行的像素。在我执行这个之前,我想知道是否有类似的东西已经存在,或者如果CV中的更多专家会推荐另一种方法。我见过this,但我正在寻找线条,而不是轮廓线,所以不知道这是否会起作用...

回答

1

Canny的想法可能工作得很好。既然你正在寻找其他的想法,你也可以考虑尝试角点检测。假设分段的形状是分形的,你可以尝试经典的Harris corners,或者你可以尝试一些新的feature detectors,如SURF,SIFT,FAST等。为了隔离角落,你可能需要调整这些探测器的参数灵敏度,但这可能允许您基于一组点来计算线条。此外,Canny边缘检测和特征检测的组合也可能更加健壮。

只是一个想法:)希望它有帮助!