【发布时间】:2014-12-21 21:01:19
【问题描述】:
我在检测轮廓是简单曲线还是直线时遇到问题。我需要过滤尽可能多的对象,只为我留下有趣的对象。但过滤所有不需要的对象并不是目标。稍后我有更多的逻辑来检测所需的对象,但这会花费很多时间。所以我正在寻找一些低成本的解决方案,在主算法参与之前过滤不需要的对象。
我的应用中有两个示例。
所以我想删除黄色标记的对象。并留下绿色标记的对象。我没有圈出所有内容,因为它们太多了:]。我的想法是,如果我可以检测到线是否在边界框的角落开始和结束,但我不知道如何检测线的开始和结束位置。或者,如果我能够检测到轮廓的起点和终点,我可以通过它们的距离来决定它。
我使用精明的边缘检测并找到轮廓。而且我根据对象的大小对对象进行了一些基本过滤。
我没有想法并停留在这部分。我会很高兴您的帮助或想法。
【问题讨论】:
-
你可以假设一条线,然后测试像素位置离这条线有多远。如果太多像素太远或类似的东西你不删除对象。或者,您可以拟合一条曲线并测试与该曲线的平均距离,而不是假设一条线。