點雲特征——法向量估計


點雲法向量是最基本的點雲特征,在諸多點雲處理算法中起着至關重要的作用。本文記錄了兩種常用的點雲法向量估計方法,分別針對一般點雲和深度圖兩種點雲組織形式。

一般點雲的法向量估計

估計一般點雲法向量的思路是根據鄰域內的點擬合一個平面,則平面的法線方向即為點的法向量。記點的鄰域為:

\[\mathcal{N}=\{\mathcal{p}_i(x_i, y_i, z_i)|i=1,2,..,n\} \]

需擬合的平面的一般形式是:

\begin{align}
Ax+By+Cz+D &= 0 \notag \newline
A^2 + B^2 + C^2 &= 1 \notag
\end{align}

采用最小二乘法進行平面的擬合,即求解如下的最小值問題:

\[\min_{A,B,C,D}\sum_{i=1}^n{(Ax_i +By_i+Cz_i+D)}^2 \quad\mathcal{s}.\mathcal{t}.\quad A^2 + B^2 + C^2 = 1 \]

通過求導並令導數為\(0\),且將方程組中的\(D\)消去,可以得到如下線性方程組:

\[M\left[ \begin{array}{c}A\\B\\C\end{array} \right ] = \left[ \begin{array}{ccc}\bar{x^2}-\bar{x}^2& \bar{xy}-\bar{x}\bar{y} & \bar{xz}-\bar{x}\bar{z} \\ \bar{xy}-\bar{x}\bar{y}& \bar{y^2}-\bar{y}^2 & \bar{yz}-\bar{y}\bar{z} \\ \bar{xz}-\bar{x}\bar{z}& \bar{yz}-\bar{y}\bar{z} & \bar{z^2}-\bar{z}^2 \end{array} \right ]\left[ \begin{array}{c}A\\B\\C\end{array} \right ] = 0 \quad\mathcal{s}.\mathcal{t}.\quad A^2 + B^2 + C^2 = 1 \]

其中\(M\)是協方差矩陣,\(\bar{x}=\frac{1}{n}\sum_{i=1}^nx_i\), \(\bar{xy}=\frac{1}{n}\sum_(i=1)^nx_iy_i\),依此類推。
這是典型的在單位圓上求解尋找方程組的解。一般情況下,協方差矩陣是非奇異的,因此上述方程沒有精確解,只能尋找近似解,令\(n=\left[A,B,C\right]^T\)滿足:

\[\min_{n}\Vert{Mn}\Vert \quad\mathcal{s}.\mathcal{t}.\Vert n \Vert = 1 \]

利用拉格朗日乘子法,構造新的優化函數:

\[f(n,\lambda)={(Mn)}^TMn + \lambda(1-n^Tn) \]

從而能夠推導出上式的解是協方差矩陣\(M\)的最小特征值所對應的歸一化特征向量
從而可以得到點雲的法向量是:$$\vec{n}=[n_x,n_y,n_z]^T=\pm[A,B,C]^T$$。

深度圖的法向量估計

對於結構化的點雲——深度圖而言,可以更加簡便的估計點雲的法向量。思路是利用深度梯度來近似估計點雲法向量。記深度是\(d\),已知深度圖,與圖像梯度的計算方式相同(梯度方向定義為函數上升的方向),可以直接求出\(x\)\(y\)方向上的深度梯度,分別記作\(\nabla{d_x}\)\(\nabla{d_y}\)
根據針孔相機模型,可以將圖像坐標轉化為三維空間坐標:

\[{(x,y,z)}^T={(\frac{u-c_x}{f}d, \frac{u-c_x}{f}d, d)}^T \]

其中\(f,c_x,c_y\)是相機內參,\(u,v\)是像素坐標,以及將深度梯度轉化為\(z\)關於\(x,y\)的梯度:

\[{(\nabla{z_x},\nabla{z_y})}^T=\frac{f}{d}{(\nabla{d_x}, \nabla{d_y})}^T \]

則點雲的法向量可以近似估計為:

\[\vec{n}=(n_x,n_y,n_z)^T=\pm\mathcal{normalize}{(\nabla{z_x},\nabla{z_y},-1)}^T \]

法向量方向的統一

前述方法計算得到的法向量方向具有不確定性,有必要進行統一,通常做法是根據視線方向進行統一,確保法向量方向的一致性。一般將原點作為視點位置,則視線為:$$\vec{v}={(-x,-y,-z)}^T$$
對點雲的法向量進行調整,使得:

\[\vec{v}\cdot\vec{n}>0 \]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM