最小二乘法圆拟合
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
最小二乘法圆拟合
1.最小二乘法圆拟合原理 1.1理论
最小二乘法(Least Square Method )是一种数学优化技术。它通过最小化误差的平方和找到一组数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。
1.2最小二乘圆拟合模型公式推导
在二维平面坐标系中,圆方程一般可表示为:
()22020)(r y y x x =-+- (1) 对于最小二乘法的圆拟合,其误差平方的优化目标函数为:
[]
2
12020)()(∑=--+-=n
i i i r y y x x S
式中:()i i y x ,n i ,...,2,1=为圆弧上特征点坐标;n 为参与拟合的特征点数。
在保持这优化目标函数特征的前提上,我们需要对其用一种稍微不同的改进方法来定义误差平方,且其避免了平方根,同时可得到一个最小化问题的直接解,定义如下:
[]
2
122020)()(∑=--+-=n
i i i r y y x x E (2)
则(2)式可改写为:
(
)2
12
20
0220
02
22∑=-+-++-=n
i i i
i i
r
y y y y x x x x E (3)
令,02y B -=,02x A -=22020r y x C -+= 即(3)式可表示为:
()
2
22∑=++++=n
i i i i i C By Ax y x E
由最小二乘法原理,参数A ,B ,C 应使E 取得极小值。根据极小值的求法,A ,B 和C 应满足
()
020
22=++++=∂∂∑=i n
i i i i i x C By Ax y x A E
(4) ()
020
22=++++=∂∂∑=i n i i i i i y C By Ax y x B E
(5) ()
020
22=++++=∂∂∑=n i i i i i C By Ax y x C E
(6) 求解方程组,先消去参数C ,则 式()()∑=*-*n
i i x n 064得
(
)0
02
202
030000002=+-++⎪⎭
⎫ ⎝⎛-+⎪⎭⎫ ⎝⎛-∑∑∑∑∑∑∑∑∑∑==========n
i i n
i i i n i i i n i i n i n i i i n i i i n i n i i i n i i x y x y x n x n B y x y x n A x x x n (7)
式()()∑=*-*n
i i y n 065得
(
)0
02
202
030002000=+-++⎪⎭
⎫ ⎝⎛-+⎪⎭⎫ ⎝⎛-∑∑∑∑∑∑∑∑∑∑==========n
i i
n
i i i n i i i n i i n i n i i i n i i n i n i i i n i i i y
y x y x n y n B y y y n A y x y x n (8) 令
⎪⎭⎫
⎝⎛-=∑∑∑===n i n i n
i i i i x x x n M 000211(9)
⎪⎭
⎫
⎝⎛-==∑∑∑===n i n
i i i n i i i y x y x n M M 0002112(10)
⎪⎭
⎫
⎝⎛-=∑∑∑===n i n
i i i n i i y y y n M 000222(11)
(
)∑∑∑∑====+-+=n
i i
n
i i
i
n i i
i n i i
x
y
x y x n x n H 002202031(12)
(
)∑∑∑∑====+-+=n i i
n
i i
i
n
i i i
n
i i
y y
x y x n y n H 0
220
20
32(13)
将(7),(8)式写成矩阵形式
⎥⎦
⎤
⎢⎣⎡--=⎥⎦⎤⎢⎣⎡⎥⎦⎤⎢⎣⎡212221
1211
H H B A M M M M (14) 根据式(14)和式(6)可得:
2112221122
1122M M M M M H M H A --=
22
11211221
1112M M M M M H M H B --=
()
n
By Ax y x
C n
i i
i i i
∑=+++-
=0
22
从而求得最佳拟合圆心坐标()00,y x ,半径r 的拟合值:
20A x -
=,20B y -=,C B A r 42
122-+= 2.仿真数据分析
首先设置仿真圆心(x0,y0),半径R0,在根据实际数据任意选取一段圆弧,产生N 组随机数据。考虑实际测量的点云数据中伴随有一定
高斯躁白声,因此在每个点添加服从高斯分布()
2
,0σN 的随机数作为
噪声,其中2
σ为高斯分布的方差(单位:
2mm ),在噪声标准差(σ)
下产生N 组随机噪声数据。最后利用最小二乘法原理对仿真得到的N 组随机噪声数据进行拟合,并分析其半径误差与圆心误差。下面任取圆上pi*35/180到6*pi/7圆弧段,以仿真圆心(8.116mm ,2.695mm ),半径0.875mm 作实例分析。在matlab 软件中得到的仿真数据效果图