【雷达】如何将三维点云映射到二维平面

最近在做基于雷达点云的交通标识牌识别时,需要按照HAD格式进行输出,由于交通标识牌不一定会与坐标轴垂直,那么如何找到矩形标识牌的四个顶点,是待解决的问题。由于标识牌一定是平面的,三维数据不好处理,那么需要将三维平面点云映射到二维平面,舍弃一个维度。

交通标识牌的平面方程我们是能够求出来的Ax + By +Cz +D = 0,所以法向量也是知道的 即为Vz = (A,B,C),我们将其作为映射后的z轴方向,那么x轴与y轴的方向,我们在平面点云中选取即可,保证其垂直即可,假设我们选取的x方向向量为Vx,y轴方向向量为Vy,点云中心也好求,为(CenterX,CenterY,CenterZ),那么映射转换矩阵T,即为如下表达式。

T = [vX.x vY.x vZ.x CenterX;
    vX.y vY.y vZ.y CenterY;
    vX.z vY.z vZ.z CenterZ;
    0 0 0 1];


       T的逆矩阵为InvT。

        那么,对于原始三维平面任意一点(x0,y0,z0),我们都能通过InvT进行转换,转换后的坐标为 (x1,y1,z1,1)T = InvT*(x0,y0,z0,1)T,所有点转换后的z1值几乎相同,可以舍弃,所以平面就变成二维的了。那么求取矩形的顶点坐标也不是难事了。

转换前与转换后的三维交通标识牌如下图:

【雷达】如何将三维点云映射到二维平面_第1张图片

欢迎大家评论交流,如对您有帮助,请留下脚印。

你可能感兴趣的:(雷达)