
大家好,我是李慢慢。
之前分享过怎么在carla中创建激光雷达模型,并获取点云数据进行展示。链接如下:
Carla中如何创建激光雷达进行仿真?
做完demo这个总觉得有些不如意,因为用pygame窗口显示激光雷达数据很不方便,pygame其实显示的是图片,图片是二维的,损失了很多3D点云的信息。
我想最好的形式是有个三维软件界面能展开数据,可放大缩小、可旋转的那种,正巧最近逛YouTube,发现一个python模块,open3d,这个模块正好能满足我的要求。
Open3D是一个开源库,支持快速开发和处理3D数据。Open3D在c++和Python中公开了一组精心选择的数据结构和算法。后端是高度优化的,并且是为并行化而设置的。
3D数据结构
3D数据处理算法
场景重建
表面配准
3D可视化
基于物理的渲染(PBR)
支持PyTorch和TensorFlow的3D机器学习
GPU加速的核心3D操作
支持C ++和Python
代码部分:
这个库真的是点云处理神器,不过本次我只用到了python调用这个软件的库功能,并且只是简单展示下CARLA中激光雷达模型仿真的点云数据,希望我这点简单demo不会有损它的威名。
基于上一篇文章,我又将上次的代码进行了改写(其实也就是用open3d显示替换pygame显示而已),大致如下。

效果展示:
代码运行后效果截图如下:

左键+拖动:旋转
Ctrl +左键+拖动:翻译
滚轮按钮+拖动:平移
Shift +左键+拖动:滚动
滚轮:放大/缩小
本文完。