曲线拟合平面上未分类的点

tkw*_*954 27 matlab image-processing spline curve-fitting best-fit-curve

问题:如果它们不是单值的,那么如何将曲线拟合到平面上的点?

对于所示的示例,如何将曲线(如黑色曲线)与嘈杂的蓝色数据拟合?它类似于样条平滑,但我不知道数据的顺序.

Matlab是首选,但伪代码很好.或者指向这个问题的正确术语的指针会很棒.

谢谢

las*_*ock 9

您的数据看起来像一个二维参数图(x,y)一些基本的参数的函数t.因此,有可能做最小二乘拟合x(t)y(t),如果你能拿出他们一个合理的模型.您的数据似乎描述了limacon.

  • 您必须了解基础数据,以便进行任何有用的曲线拟合.从上面的例子来看,没有特别的原因(对于一个天真的算法)选择直接在十字路口,而不是两个尖锐的右转弯.你可以将任何曲线拟合到任何一组点,它只是一个"适应性"的问题.您需要一个启发式方法来选择要使用的曲线,然后任何标准的误差最小化例程都会使曲线适合这些点. (4认同)
  • 我认为如果你包括一个正则化项(例如最小化曲率),它将解决交叉点的模糊性. (2认同)

duf*_*ymo 0

您必须进行多次分段拟合或样条曲线。不要指望任何算法能够一次性完成所有工作。至少可以是三条曲线:第一条到交叉点,循环,然后从交叉点向前返回。