【发布时间】:2019-10-18 18:53:08
【问题描述】:
我想在二值图像中拟合一条平滑线。
此图像是使用对比度、轮廓、骨架、最近邻、轮廓分离等预处理的结果。初始图像
我认为一旦我得到一个白点数组(x,y),拟合曲线会非常容易。但是,当我尝试在此图像中拟合曲线时,由于某个 x 处的多个值,会出现一条锯齿线。我需要一个通用的解决方案来解决我的问题。我的形象可能会有所不同(我正在制作一个应用程序)。对于特定的 x,它可以有 4-5 个值,反之亦然。
我尝试过的方法:
- ConvexHull 图像由凸包(图像不平滑)
最近的邻居连接。 (画面不流畅)
scipy interpolate (zig-zag line 由于多个 y @x 出现)
matplotlib 样条曲线
建议我如何在此类图像中拟合平滑曲线。
【问题讨论】:
-
试试
numpy.polyfit:docs.scipy.org/doc/numpy/reference/generated/numpy.polyfit.html -
这是一个很好的问题,提供了一个示例输入,并且说明得很好,可以理解需要做什么。这有点棘手,但我想我知道如何以稳健的方式做到这一点。以后会努力找时间的,
-
@DrM 感谢您的评论。如果你能告诉我如何做到这一点的概述。我也许可以自己实现它。
标签: python matplotlib image-processing scipy