最适合圈子的C#代码

时间:2012-02-15 12:12:46

标签: c#

我希望使用C#代码,使用最小二乘法或等效法确定最适合数组中点的圆的中心和半径。

在网上搜索过我找不到。

2 个答案:

答案 0 :(得分:3)

您可以使用常规最小化算法(例如Levenberg-Marquardt)或将其转换为线性问题,然后求解圆的参数(x,y,radius)。有关详细信息,请参阅此link

我不知道.NET的任何多变量Levenberg-Marquardt,所以第二种解决方案可能更容易实现。请注意,您需要求解Ax = b形式的矩阵方程,以找到您的圆参数。 Math.NET库似乎能够do this

答案 1 :(得分:2)

您可以尝试opencv库的FitEllipse功能: Fit ellipse

我认为OpenCV的C#包装器存在。