如何将贝塞尔曲线拟合到一组数据?

问题描述

我有类似的问题,我从GraphicsGems(1990)中找到了关于Bezier曲线拟合的“一种自动拟合数字化曲线的算法”。除此之外,我还找到了该文章源代码

不幸的是,它是用C语言编写的,我不太了解。而且,该算法很难理解(至少对我而言)。我正在尝试将其转换为C#代码。如果我会成功,我将尝试分享

文件GGVecLib.c在同一文件夹中FitCurves.c包含了基本的矢量处理功能

我发现了一个类似的堆栈溢出问题,即平滑手绘曲线。批准的答案为Graphic Gems的曲线拟合算法提供了C#代码

解决方法

我有一组数据点(我可以对其进行细化),它们需要与贝塞尔曲线拟合。我需要速度超过准确性,但合身度应该足够好以至于可以识别。我还在寻找一种我可以使用的算法,该算法没有过多地使用库(特别是NumPy)。

我已经阅读了几篇研究论文,但是都没有足够的细节来全面实施。有开源示例吗?