点云前视图与俯视图生成

点云前视图与俯视图在一些多传感器融合的算法中作为网络的输入,因此有必要对齐进行了解。

1.点云俯视图的生成(Bev)

点云的俯视图由高度、强度以及密度组成。
(1)高度图:将点云在Z轴方向投影要xoy平面上,xoy平面的分辨率为0.1的二维网格,取每一个网格中点高度最大值记为这个网格的最大高度,即高度特征。这样只能获得一个高度图,因此在实际中在Z轴方向划分为M个块,按上述方法即可以每一个块生成一个高度图,即得到M个高度图。
(2)强度图:同样跟高度图一样,只不过取最大高度点的反射强度,这样能够保证强度图与高度图对应的是同一个点。注意强度图只有一个,并不像高度图那样进行划分。
(3)密度图:密度图是根据每一个网格中点云的个数。按照公式计算得到该网格对应的密度特征,具体公式如下:
m i n ( 1.0 , l o g ( N + 1 ) l o g ( 64 ) ) \begin{array}{c} min\left ( 1.0,\frac{log(N+1)}{log(64)} \right ) \end{array} min(1.0,log(64)log(N+1)​)​
其中N为该网格所有Z轴方向上的点个数,因此密度图也只有一个。
因此最终生成的点云俯视图的维度为(M+2,W,H)。

2.点云前视图的生成(FV)

点云前视图的生成相较于俯视图会麻烦一点,如果直接将点云投影到yoz平面会非常稀疏。因此需要将点云转到柱坐标系,再将柱面剪开摊平为矩形,生成前视图。

在柱坐标系下可以根据(x,y,z)坐标利用三角关系得到 θ \begin{array}{c} \theta \end{array} θ​与 φ \begin{array}{c} \varphi \end{array} φ​的值。根据水平分辨率以及垂直分辨率,即可换算得到该点在前视图的坐标。
水平分辨率:根据激光雷达的角分辨率即可得到水平方向的分辨率,以kitti为例。其角分辨率为0.09,视角为360度。
垂直分辨率:以kitti为例,其垂直视角为26.8度,其为64线的激光雷达,因此垂直分辨率为26.8/64=0.42度。
因此最终可以利用如下公式计算得到每一个点在前视图上面的坐标:
c = arctan ⁡ ( y / x ) / △ θ \begin{array}{c} c=\arctan (y/x)/\bigtriangleup \theta \end{array} c=arctan(y/x)/△θ​
r = arctan ⁡ ( z / x 2 + y 2 ) / △ μ \begin{array}{c} r=\arctan (z/\sqrt{x^{2}+y^{2} } )/\bigtriangleup \mu \end{array} r=arctan(z/x2+y2 ​)/△μ​
其中 △ θ \begin{array}{c} \bigtriangleup \theta \end{array} △θ​与 △ μ \begin{array}{c} \bigtriangleup \mu \end{array} △μ​分别代表水平分辨率与垂直分辨率。
至此点云的俯视图与前视图都已经生成完毕,如有错误,希望各位读者指出,共同学习!

点云前视图与俯视图生成相关推荐

  1. 【点云前视图FV】详细理解雷达点云前视图(FV, Front View)

    本节详细介绍雷达点云前视图(FV, Front View)的基本原理和计算过程,含原理介绍.代码.数据和可视化效果. 1 前视图基本原理 雷达在工作时通常是围绕一个轴进行旋转扫描.对于单线激光雷达来说 ...

  2. 处理点云数据 点云与生成前视图

    创建点云数据中的前视图 前视图投影 为了将激光雷达传感器的前视图平面化为二维图像,必须将三维空间中的点投影到可以展开的圆柱形表面上,以将其平面化.下面公式见论文Vehicle Detection fr ...

  3. python三维图俯视图,python opencv 前视图转化为鸟瞰图

    想要把前视图转化为鸟瞰图,有两种做法 1.在没有标定的情况下,只能选取四个点对了 在有标定的情况下,可以直接使用标定的参数 这里主要介绍1 1.没有标定的情况下,主要用到了两个函数 M = cv2.g ...

  4. 腾讯云前端面试题及答案

    腾讯云前端面试题 js数据类型 js语言特性 闭包产生的原因 CSS盒模型 行内元素和块级元素区别 重排和重绘 事件的捕获和冒泡,冒泡的使用场景 cookie,localstorage,session ...

  5. 腾讯物联网云平台 密钥 MQTT参数生成及密码加密算法实现

    腾讯物联网云平台 密钥 MQTT参数生成及密码加密算法实现 腾讯云三元组 腾讯云三元组 首先在腾讯物联网云平台创建好项目.产品.设备,然后获取该设备的三元组.下面通过我的创建的产品作为示例: Prod ...

  6. 根据省份证号前6位数字生成的三级联动下拉菜单

    <Script language="JavaScript"> // 定义一级数组 var D0=new Array('("北京市","11 ...

  7. 设计稿(UI视图)自动生成代码方案的探索

    设计稿(UI视图)转代码是前端工程师日常不断重复的工作,这部分工作复杂度较低但工作占比较高,所以提升设计稿转代码的效率一直是前端工程师追求的方向之一. 此前,前端工程师尝试过将业务组件模块化构建成通用 ...

  8. 全能代码生成器,自动生成前后端代码、生成项目框架、生成JavaBean、生成数据库文档、自动化部署项目(TableGo v8.0.0)

    TableGo_20220801 v8.0.0 正式版发布,此次版本累计更新如下:  1.生成项目功能新增支持若依框架,可同时生成若依框架代码和所有业务表的前后端基础CRUD代码,一键搞定所有  2. ...

  9. 基于点云的三维物体表示与生成模型

    主讲嘉宾: 西安交通大学在读硕士生,主要研究三维点云,「3D视觉从入门到精通」星球嘉宾. 课程大纲: 1.三维物体的表示 2.LatentGAN模型 3.PC2PC模型 4.点云的表示其他经典方法 [ ...

最新文章

  1. RT-Thread 学习笔记(五)—— RTGUI代码解读
  2. php中静态方法有什么作用,PHP中的静态方法与非静态方法有什么不同吗?
  3. java子线程切换到主线程_Android子线程切换到UI线程方法总结
  4. 漫谈Java IO之 NIO那些事儿
  5. 计算机及网络保密检查记录表,南京航空航天大学涉密计算机保密检查记录表.doc...
  6. copy的过去式_copy什么意思_copy是什么意思中文翻译
  7. 图说粒子群优化算法(PSO)附源码
  8. Windows下载安装cuda10.1详细步骤
  9. 贪心法(作业调度问题)
  10. mysql_stmt_precheck_COM_STMT_PREPARE 1
  11. c语言我想你,c语言土味情话
  12. 虚拟机安装苹果系统的教程
  13. Holt Winter时间序列模型
  14. 嵌入式Linux设备驱动程序开发指南17(IIO子系统一)——读书笔记
  15. xUtils图片本地缓存使用
  16. 京东数据库智能运维平台建设之路
  17. 【爬虫实战】国家企业公示网-项目分析
  18. window.open父子页面,子页面关闭回调事件样例
  19. windows平板的开发和选型
  20. 文件操作:r r+ w w+ a a+

热门文章

  1. STM32的USART串口通信
  2. python创建模式对象_【python设计模式-创建型】单例模式
  3. clearcase命令指南
  4. 用于信号处理的Xilinx FPGA XC7K325T PCIeX8 FMC处理板卡
  5. matlab 215卷积码,基于matlab的卷积码的分析与应用
  6. 百度地图 -- 离线地图开发
  7. dell服务器装独立显卡无显示输出,dell服务器设置独立显卡(dell服务器加显卡)...
  8. 对C语言中警告(warning)的处理方法
  9. Advertising and public relations
  10. 虚拟机Ubuntu18.04开机后没有网络的解决办法