3d 曲线拟合三维数据集

3d 曲线拟合三维数据集,3d,geometry,regression,curve-fitting,3d,Geometry,Regression,Curve Fitting,2D数据的曲线拟合问题是众所周知的(LOWESS等),但给定一组3D数据点,如何将3D曲线(例如平滑/回归样条曲线)拟合到此数据 更多:我试图找到一条曲线,拟合向量X,Y,Z提供的数据,这些向量没有已知的关系。基本上,我有一个三维点云,需要找到一个三维趋势线 更多:我为这种模糊性道歉。我尝试了几种方法(我还没有尝试修改线性拟合),而随机神经网络似乎效果最好。也就是说,我从点云中随机选取一个点,找到它的邻域(在任意球体内)的质心,迭代。连接质心以形成光滑样条曲线被证明是困难的,但获得的质心是可以通

2D数据的曲线拟合问题是众所周知的(LOWESS等),但给定一组3D数据点,如何将3D曲线(例如平滑/回归样条曲线)拟合到此数据

更多:我试图找到一条曲线,拟合向量X,Y,Z提供的数据,这些向量没有已知的关系。基本上,我有一个三维点云,需要找到一个三维趋势线

更多:我为这种模糊性道歉。我尝试了几种方法(我还没有尝试修改线性拟合),而随机神经网络似乎效果最好。也就是说,我从点云中随机选取一个点,找到它的邻域(在任意球体内)的质心,迭代。连接质心以形成光滑样条曲线被证明是困难的,但获得的质心是可以通过的

为了澄清问题,数据不是一个时间序列,我正在寻找一个最能描述点云的平滑样条线,即,如果我要将此3D样条线投影到由任意2个变量构成的平面上,则投影样条线(投影到2D上)将是投影点云(投影到2D上)的平滑拟合

IMG:我包括了一张图片。红色点表示从上述方法获得的质心


这取决于你的意思。如果你有一组点f(x,y)->z,并且你想找到一个函数,你可以做一个样条曲线

如果你有一个已知函数,你想要调整参数以最小化RMS误差,只要考虑X、Y一个复合对象P(例如,如果它是一个复数或2向量),并且使用一个2D情形的模拟,关于F(p)-> z。 如果你能更具体地说明你想要完成什么,我可以更具体地提出建议

--马库斯克

因此,根据经过编辑的问题陈述,我建议如下:

  • 如果它是一个时间序列(通过使用术语“趋势线”来暗示),我会将其视为三个参数函数(x(t)、y(t)、z(t))并对它们进行二维拟合
  • 或者(但仍假设为有序序列),您可能希望找到线性拟合(穿过云中心的线),然后根据点到线的垂直投影向该函数添加某种(可能是极性)函数
  • 如果它不是一个时间序列(由短语“未知关系”和“点云”暗示),你必须定义你想要适合它们的“曲线”。你要排队吗?表面/歧管?你希望它是一个或两个变量的函数,还是独立于它们(比如凸包)。它必须是平滑的,程度有限的,还是

真的,这个问题还是太开放了。

相关问题如下:

一般来说,您可以从统计学习的角度来看待这样的问题。换句话说,你有一组基函数(例如样条曲线)以某种方式参数化,然后你使用最小二乘法或其他一些回归技术来寻找最佳系数。我恰好喜欢

查尔斯·费弗曼(是的,菲尔兹奖牌获得者)和波阿斯·克拉塔格的一部新作品:

  • ,安。《数学》第169卷第1期(2009年), 315--346

  • ,显示在Rev。垫子。 伊比利亚美洲

您可以在Klartag的

上找到这两个pdf文件。您可以尝试使用加法(即单索引模型)作为GAM


这是一种贪婪的方法,非常可扩展,在几个R包中得到了很好的实现

我会尝试使用空格填充曲线启发式。例如,按空间填充曲线访问点的顺序对点进行排序。问题的一个解决方案是通过按该顺序取点的样条曲线。要获得更短、更平滑的曲线(但从点到曲线的RMS距离更大),可以强制样条曲线仅通过每个第k个点。如果在选择每一个第k个点后,寻找一条更短的哈密顿路径(就像旅行商问题,但对于开放路径),则可以改善曲线。还可以调整样条线结以减小RMS距离。在计算RMS距离时,我会使用空格填充曲线顺序来指示样条曲线的哪一部分可能最接近给定点。

这个问题可以通过包含x、y、z点云的最小工作示例(MWE)来改进。