SVD解決平面擬合問題

已知若干三維點座標(x_{i},y_{i},z_{i}),擬合出平面方程ax+by+cz=d                                                                                       (1)     

約束條件爲a^{2}+b^{2}+c^{2}=1                                                                                                                                                 (2)

使得該平面到所有點的距離之和最小。

推導過程如下:

所有點的平均座標爲(\bar{x},\bar{y},\bar{z}),則a\bar{x}+b\bar{y}+c\bar{z}=d.                                                                                                          (3)

式(1)與式(3)相減,得a(x_{i}-\bar{x})+b(y_{i}-\bar{y})+c(z_{i}-\bar{z})=0                                                                                     (4)

假設矩陣A=\begin{bmatrix} x_{1}-\bar{x},y_{1}-\bar{y},z_{1}-\bar{z}\\ x_{2}-\bar{x},y_{2}-\bar{y},z_{2}-\bar{z}\\ x_{3}-\bar{x},y_{3}-\bar{y},z_{3}-\bar{z}\\ ...\\ x_{n}-\bar{x},y_{n}-\bar{y},z_{n}-\bar{z} \end{bmatrix},列矩陣X = \begin{bmatrix} a\\ b\\ c \end{bmatrix},則式(4)等價與AX=0                                                                    (5)

理想情況下所有點都在平面上,式(5)成立;實際情況下有部分點在平面外,擬合的目的爲平面距離所有點的距離之和儘量小,所以目標函數爲min\left \| AX \right \|                                                                                                                                               (6)

約束條件爲\left \| X \right \|=1                                                                                                                                                                  (7)

若A可做奇異值分解:A = UDV^{T}                                                                                                                                           (8)

其中,D是對角矩陣,U和V均爲酉矩陣。

\left \| AX \right \|=\left \| UDV^{T}X \right \|=\left \| DV^{T}X \right \|                                                                                                                                     (9)

其中V^{T}X爲列矩陣,並且\left \| V^{T}X \right \|=\left \|X \right \|=1                                                                                                                        (10)

因爲D的對角元素爲奇異值,假設最後一個對角元素爲最小奇異值,則當且僅當V^{T}X=\begin{bmatrix} 0\\ 0\\ 0\\ ...\\ 1 \end{bmatrix}                          (11)時,式(9)可以取得最小值,即式(6)成立。

此時X=V\begin{bmatrix} 0\\ 0\\ 0\\ ...\\ 1 \end{bmatrix}=\begin{bmatrix} v_{1} &v_{2} &v_{3} &... &v_{n} \end{bmatrix}\begin{bmatrix} 0\\ 0\\ 0\\ ...\\ 1 \end{bmatrix}=v_{n}                                                                                                          (11)

所以,目標函數(6)在約束條件(7)下的最優解爲X=(a,b,c)=(v_{n,1},v_{n,2},v_{n,3})                                                            (12)

 

綜上:對矩陣A做奇異值分解,最小奇異值對應的特徵向量就是擬合平面的係數向量。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章