文章沒有對投影進行詳細闡述,看論文時很困惑,幸而大佬給了解釋,豁然開朗,其實思路很簡單:
原文公式如下
直接上圖
對於激光點雲P,其相對於原點(LIdar 傳感器)的位置關系如上圖:
先看坐標$u$
$arctan(y/x)$求的是水平方位角,也就是圖中的$\alpha$。$arctan(y,x)\pi^{-1}$即對角$\alpha$歸一化到[0,2),那么$\frac{1}{2}[1-arctan(y,x)\pi^{-1}$就是歸一化到[-1,1),再乘以定義的水平方向的單位寬度,就得到了水平方向的坐標。正中間為0,作負右正。
再看坐標$v$
這個顯然就是求垂直方向的坐標了。原理和水平方向一樣,區別是由於KITTI使用的Lidar傳感器Velodyne HDL-64E是水平旋轉掃描,上下角有一個視場角FOV,即論文中的$[f_{up}, f_{down}]$,而不是水平方向是不斷轉圈,也就是[-180°,180°]。所以在水平角$arctan(z/r)$也就是圖中的$\beta$加上$f_{up}$再除以$f$做歸一化,余下同上。
這兩天仔細分析,發現文章和作者公布的源代碼都有表達的問題,正確的公式應該是
$$v=[1-(arcsin(z,r^{-1})-f_{down})f^{-1}]h$$
$u$沒有問題