基于局部表面拟合的方法求点云的法向量
一、基础知识:
法向量是空间解析几何的一个概念。是与某曲线(含直线)切线或曲面(含平面)的切
面相垂直的向量。
在同济大学应用数学系主编的《高等数学》第五版,第八章第六节——多元函数微分学
的几何应用,有曲面的切平面和法线的定义及求解方法。
1、 法向量的概念由曲面的切面而来:垂直于曲面上切平面的向量称为曲面的法向
量。
2、 切平面的概念由过平面上一点的曲线的切线而来:曲面上通过点 得一切曲
线在点 M 的切线都在同一个平面上,这个平面称为曲面再点 的切平面。
如果继续问什么是曲面、曲线、切线(曲线的方向向量),那就回头去看第七章,
这里就不多介绍了。
下面给出计算公式:
1、曲面 的隐式方程为:
。
是曲面上一点,并设函数
的偏导数在该点连续且不同时为 0。
2、曲面上过 M 点得任意曲线 的参数方程为:
。
即对应的
且
不全为 0。
3、曲线的切线方程为:
。
可以证明的是在曲面 上过点 处具有切线的任何曲线,他们在点 处的切线都
在同一平面上。
4、切平面方程:
5、法线方程:
6、曲面 在点 处的一个法向量为:
7、根据梯度的概念:
。即隐函数
的梯度
即为曲面在点
处的法向量,也即,法向量为
变化率最大的方向。
MM(,,)0Fxyz000(,,)Mxyz(,,)Fxyz(),(),()xtytzt0tt000(,,)Mxyz000(),(),()ttt000000()()()xxyyzztttMM000000000000(,,)()(,,)()(,,)()0xyzFxyzxxFxyzyyFxyzzz000000000000(,,)(,,)(,,)xyzxxyyzzFxyzFxyzFxyzM000000000((,,),(,,),(,,))xyznFxyzFxyzFxyz()gradF(,,)Fxyz()gradF000(,,)Mxyz(,,)Fxyzc
二、点云的法向量
在上节上讲到的切平面、切线、法线都是针对的连续曲面。而点云表征的是一个个离散
点,点云数据所记录的信息是每个独立点的三维坐标。所以为了求得每个点对应的法向量,
我们取一定半径内的点进行曲面拟合,在拟合面的基础上求对应点的法向量。
用曲面拟合计算复杂度大,干脆直接拟合成平面,这在点较密集,拟合区域大小合适的
情况下是可行的。
而平面拟合主要用最小二乘法,平面方程:
,利用最小二乘原理求解平
面参数,然后求出法向量。
平面方程有多种表达方式,本文是为了求取法向量,所以直接利用平面的法线式方程。
1、平面方程(法线式):
,
,
为平面上点
处的法向量方向余弦, 为原点到平
面的距离。
→
求平面方程转化为求
四个参数。
2、求解过程
1)、待拟合的 个扫描点
,
。
拟合的平面方程为:
任一数据点
到该平面的距离为:
。
2)、要获取最佳拟合平面,则需要:
条件为:
。
求法向量问题从这里起转化成了求极值问题:
3)、将 分别对四个未知参数
求偏导:
,
求出第一个参数:
4)这时任一点到平面的距离可以改写为:
zaxbyccoscoscos0xyzpcoscoscos(,,)xyzp222(0),1axbyczddabc,,,abcdn(,,)iiixyz1,2,3,in222(0),1axbyczddabc(,,)iiixyziiiidaxbyczd20minniied2221abc22220(1)niifdabcf,,,dabc12()0niiiifaxbyczdd111nnniiiiiixyzdabcnnn
令:
推出:
,
这么改写是有目的的,减少了未知数 ,在接下来对
求偏导的过程中有体现。
5)继续求导
令
则:
同理:
6)把 4)中的三个式子再统一:
问题到了这里就很明了了,上面的式子看起来也非常的熟悉:
(这明明就是求解矩阵 A 的特征值与特征向量)
看到这里,也就明白了为什么这种求解法向量的方法也叫做协方差分析,其实 A 矩阵
就是 n 个点的协方差阵。
即为该矩阵的一个特征向量。
该矩阵与主成分分析中的协方差阵概念一致。
7)令点坐标
,
,则
111()()()nnniiiiiiiiiiiiixyzdaxbyczdaxbycznnn111,,nnniiiiiixyzxyznnn()()()iiiidaxxbyyczzd,,abc12(()()())()20niiiiifaxxbyyczzxxaa,,iiiiiixxxyyyzzz12()20niiiiifaxbyczxaa12()20niiiiifaxbyczyab12()20niiiiifaxbyczzaciiiiiiiiiiiiiiiiiixxxyxzaaxyyyyzbbxzyzzzccAxx(,,)Tabcqqqxqyz1iiqNcqN1()()iTiiqNACqcqcN
8)到这里其实还有一个很重要的问题没有解决:为什么最小特征值对应的特征向量即
为法向量?
,
,
,
,
,
我们整篇文章最开始要求的就是
,该值也就是矩阵 A 的最小特征值,对
应的特征向量也就是
(也即是平面的法向量),此时我们要求的四个未知数全部解
决。
整个证明过程结束。
2221abc(,)1xxAxx(,)(,)Axxxx(,)Axx21()niiiiaxbycz21niid21minniid(,,)Tabc