B-Spline(11):样条曲线拟合-光顺逼近

曲线拟合包含两个方面,插值(interpolation)和逼近(approximation)。用于曲线拟合的离散点通常不具有非常高的精度,直接插值得到的曲线可能不满足“光顺(fair)”要求,本节的目标是介绍光顺的定义,以及给出一种满足“光顺”要求的最小二乘逼近方法。 Continue reading

最小二乘圆拟合: Pratt 方法

kasa方法圆拟合作为最常见的圆拟合方法,虽然计算方法简单,效率快,但是拟合结果存在较大偏差(Heavy bias)。通过将D=\sqrt{(x-a)^2+(y-b)^2}与半径R的差值D-R转换为D^2-R^2,将非线性问题转换为线性问题。但是因为D^2-R^2 = d(d+2R) (令d=D-R),当偏离值d较大时,kasa方法导致R明显变小。Pratt通过将kasa方法的目标除以(2R)^2的方式,取得更准确的结果。 Continue reading

最小二乘法圆拟合:kasa’s method

在圆拟合方法中,最常见的是一 种代数圆拟合方法,在我查阅的资料中,这种方法被称为“kasa’s method”。已知采样点集 \{(x_1,y_1),(x_2,y_2),…,(x_n,y_n)\} 欲求圆(x-a)^2 + (y-b)^2 = r^2

使得采样点到圆的距离的平方和最近。 Continue reading

最小二乘法三维(k维)直线拟合

上篇文章已经实现了二维直线Ax+By+C=0的拟合算法。如果要拟合三维直线怎么办?首先,方程Ax+By+Cz+D=0是不可以的,因为他是三维空间中的一个平面。如果要表达一条直线,需要两个三维平面的联立,似乎也不是个好办法。这里我们可以采用直线的“点+向量”方程l = A + dD的方式。 Continue reading