Graphics 基于草图线的轮廓检测

Graphics 基于草图线的轮廓检测,graphics,computer-vision,Graphics,Computer Vision,我有一组曲线作为输入,表示为点坐标列表。 我想把它们合并成一条或多或少漂亮的曲线。 你知道怎么做吗 更新: 它应该在这样一条曲线上工作: 最重要的一点是,要使结果曲线美观,并抑制绘制错误。图像中没有噪声,即没有椒盐制品,只有一些曲线。如果没有那么多间隙,合并它们的最简单方法是使用模糊或形态学扩展将零件连接在一起(两者都可能会稍微扭曲形状),然后使用findContour() 如果间隙较大,则必须在凸面零件上使用凸面外壳,然后在凹面残差上使用凸面外壳。在这种情况下,Snake或active

我有一组曲线作为输入,表示为点坐标列表。 我想把它们合并成一条或多或少漂亮的曲线。 你知道怎么做吗

更新:

它应该在这样一条曲线上工作:


最重要的一点是,要使结果曲线美观,并抑制绘制错误。

图像中没有噪声,即没有椒盐制品,只有一些曲线。如果没有那么多间隙,合并它们的最简单方法是使用模糊或形态学扩展将零件连接在一起(两者都可能会稍微扭曲形状),然后使用findContour()


如果间隙较大,则必须在凸面零件上使用凸面外壳,然后在凹面残差上使用凸面外壳。在这种情况下,Snake或active contour算法可能是一种过度使用。

此解决方案的一个小问题是合并后的轮廓与原始轮廓有偏移。最主要的一点是,结果携带了来自绘制不良输入的所有噪声。它应该看起来像一个b样条曲线。你总是可以提取内部和外部轮廓,并取它们的平均值。我只显示了一个外部轮廓。你现在也可以平滑你的曲线,因为你有它。我不能事事都做。我意识到,要求太多了。制作一个能够区分有意的角点和绘制糟糕的曲线的算法并不容易。更新了帖子。