〖3D激光点云〗深度学习点云知识!
激光雷达点云bin文件读取和显示! |
文章目录
- 一. 背景知识
- 1.1. 视觉任务
- 1.2. 激光雷达(Lidar)
- 1.3. Lidar数据的特点
- 二. 深度学习处理点云的方法
- 2.1. 几类方法
- 2.2. 点云数据(database)
首先声明本文章内容主要参考B站:
- 陈亮—深度学习点云!
- 斯坦福大学在读博士生祁芮中台:点云上的深度学习及其在三维场景理解中的应用
一. 背景知识
1.1. 视觉任务
深度学习在视觉感知任务中大放异彩。
一些自动驾驶的公司在视觉感知领域取得的不菲成绩,例如下面的交通标识牌检测、车道线检测、人的bounding box检测、人的关键点检测、车辆的检测、车辆3D bounding box的检测、车辆的距离、和速度的估计等等。
1.2. 激光雷达(Lidar)
左下方图是64线激光雷达以及它的数据渲染的图,可以看到一个一个的圆,有一些不同的颜色,分别表示它们反射的强度。右边是雷达的工作照,工作中它在不停的旋转,为什么激光雷达工作中不停的旋转,为什么数据中有一个一个的圆呢?这个还要介绍一下激光雷达的结构讲起。
【激光雷达与摄像头,未来哪种会成为自动驾驶的核心传感器呢?】 激光雷达数据简单但精确,适合做几何感知。视觉数据丰富但多变,适合做语义感知。在高级别自动驾驶里,无论是从优势互补还是传感器冗余的角度,二者缺一不可。
目前市面上能买到的激光雷达大概分为2类,一种是机械式Lidar,一种是扫描式Lidar。 下面简要介绍。
- 下图为机械式Lidar的拆解图
- 下图为旋转式Lidar的效果,不容的颜色表示激光雷达不同的反射强度,反射强度主要取决于被扫描物体的材质。例如白色的车道线反射强度比较高。
- MEMS式激光雷达。
1.3. Lidar数据的特点
- iii 表示反射强度。之前大概在KITTI数据集上面做了一个统计,把点云经过标定后,投影到图像上大概之后7%左右的像素才有雷达数据,这表明激光点云特别的稀疏。而且点云是无序的,这里 NNN 个点有 NNN 的阶乘个组合方式。
二. 深度学习处理点云的方法
2.1. 几类方法
深度学习处理点云数据方法:
- Pixel-based: (点投影到平面上,用2D CNN处理)。
- Voxel-Based: 类似于图像一样,图像是二维的把其进行栅格化,变成一个一个的像素。三维的我们也可以进行栅格化变成一个一个的体素(就是一个个小的立方体)。采用3D CNN进行处理。
- Tree-Based
- Point-Based: 更直接的方法,直接对点进行操作。输入 n×3n×3n×3 的向量直接送入网络中,n×3n×3n×3 的向量直接送入网路会有什么问题呢?我们知道深度学习中的方法要求数据的维度尽可能一样,要是不一样可能很难处理。比如做 batchbatchbatch 处理的过程中,有可能一次送入 100100100 张图像,有些网络可能对输入的大小不敏感,但是在过批处理的过程中一般要求图像数量是一样大的。这里我们在处理点云数据也是一样的,如果我当前这个点云有 100100100 个点,下一个点云有 100010001000 个点,那么不同个数的点送入网络中,如何保证出来的东西是一样的呢?此外刚才提到的,这 100100100 个点有 100100100 中排列组合方式,如何保证网络对这些点的顺序不敏感呢?
- 这里重点介绍一下针对这 222 个问题(点的无序,点的维度(个数)不一样),PointNet是如何解决的。 基于这个思路可以设计更多更多的处理点云的网络。首先对于无序的这个问题的解决: 数学里有一类函数叫做对称函数,意思就是一串数据输入一个结果,如果输出的这个结果对输入的属于顺序不敏感(比如加法是一个对称函数)。Deeplearning中maxpooling是一个对称函数,不管里面的顺序如何,我只要最大的。下面网络结构图中 n×3n×3n×3 的输入一直到 n×1024n×1024n×1024 的输出,随后通过一个maxpooling变成了1024,这个maxpooling干了一个什么事情?就是在特征维度维度上做了一个pooling,把这个特征归一化到了一样1024维,而不取决于你输入的这个 nnn 的多少,所以maxpooling这里就是起到一个对称函数的作用,它把点的无序和点的个数问题都解决了。
- TNET是解决了点云旋转的问题,使用的maxpooling作为对称函数解决了点云的无序性。最后得到的global feature 就代表这个点云具有的特征,然后可以利用这些特征做一些分类操作之类。看下图:如果把全局的特征放在这,把 n×64n×64n×64,它是每个点的 646464 维特征,我把每个点的64维特征再加上global feature,我们可以得到每个点既有local的特征,又有全局的特征global feature,所以它考虑了局部和全局的关系。这样去做一个应用的话,我们可以对 nnn 进行一个分类,可能分出来 mmm 类,逐点分类的过程也就是语义的点的分割的方法。
- 看下图:基于PointNet可以做3类事情,我可以用这个点的全局特征告诉您这个点是什么物体。我们也可以利用这些点去做一个逐点的分类,每个单独的点是属于哪一类的。这里如果我们是针对所有点的逐点分类,那就是逐点的segmentation,如果是针对部分点的分类,类别的个数小于点的个数,那就是part segmentation(也就是把一个物体的几个部分单独分出来)。
- 还有一篇可以做local和global的集大成者的文章,把前面这些文章都融合到一起的,这篇文章是VoxelNet。输入是一堆点云,体素分割的方法,把三维的世界分割成一个一个的小体素。这个体素根据不同的任务,比如做车辆检测,这个体素可以分的大一点,我做行人检测,这个体素可以分的小一点。
- 对于每一个体素格,有好多个点。对于每个点可以用类似于PointNet的方式提取全局特征global features和局部特征(可以看上面PointNet结构图)local features。实际上它把逐点的特征和整个点云的特征连接在一起,然后经过逐层的抽样,抽样出一个128维的一个体素的特征。因为我们这里的体素本身就是3维的了,每个体素上又有一个高阶的向量,所以最后形成一个4维的Tensor。这里注意不是每个体素都有点的,所以它是一个稀疏的,针对这个问题的话,我们又进行了一些卷积的操作,把稀疏的Tensor逐步的降低纬度,降低到原图大概1/4的时候,我们做一个RPN,从里面这些点以及点的特征里面去抽取出3D box 的proposals,这个proposals刚才在介绍第2篇文章的时候基本上已经介绍了,这篇文章其实是把所有文章的idea结合在一起。
2.2. 点云数据(database)
- 以上介绍的都是深度学习中处理点云的方法,做深度学习离不来数据。以上介绍的几种方法数据源基本来自以下方法,
- 数据仿真
〖3D激光点云〗深度学习点云知识!相关推荐
- 深度学习点云语义分割:CVPR2019论文阅读
深度学习点云语义分割:CVPR2019论文阅读 Point Cloud Oversegmentation with Graph-Structured Deep Metric Learning 摘要 本 ...
- 英特尔助力腾讯云深度优化云硬盘CBS 产品,打造极速云存储体验
前言概述 在更多企业核心系统"云化"的今天,云存储系统作为业务数据的重要载体,其性能表现正 受到越来越多的关注.作为全球领先的云服务提供商之一,腾讯云通过先进的云硬盘 CBS (C ...
- 史上最全 | 基于深度学习的3D分割综述(RGB-D/点云/体素/多目)
点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨卷干货,即可获取 点击进入→自动驾驶之心[分割]术交流群 后台回复[分割综述]获取语义分割.实例分割.全景分割.弱监督分割等超全 ...
- 【论文翻译】点云深度学习综述 -- Deep Learning for 3D Point Clouds: A Survey
论文链接:Deep Learning for 3D Point Clouds: A Survey 文章目录 摘要 1. 介绍 2. 三维形状分类 2.1 基于投影的网络 2.1.1 多视图表示 2.1 ...
- 重读经典(点云深度学习开山之作):《Deep learning on point clouds for 3D scene understanding》(持续更新中)
本文介绍的是 PointNet 作者的博士论文:3D场景理解中的点云深度学习.从上图可以看到,整个博士论文主要贡献有两块:一是点云深度学习的网络架构(PointNet 和 PointNet++):二是 ...
- 多传感器融合定位四-3D激光里程计其四:点云线面特征提取
多传感器融合定位四-3D激光里程计其四:点云线面特征提取 1. 点云线面特征提取 1.1 按线数分割 1.2 计算曲率(重要!) 1.3 按曲率大小筛选特征点 2. 基于线面特征的位姿变化 2.1 帧 ...
- 国防科技大学发布最新「3D点云深度学习」综述论文
点击上方"深度学习技术前沿",选择"星标"公众号 资源干货,第一时间送达 3D点云学习( Point Clouds)作为近年来的研究热点之一,受到了广泛关注,每 ...
- 新闻 | 聚焦技术领域现状与发展阿里巴巴知识图谱专场亮相云栖大会 阿里知识图谱亮相云栖大会产学深度交流推进业务创新
14日,阿里巴巴知识图谱正式亮相云栖大会,本次活动邀请到诸多阿里技术专家与学界领军人物参会,一同探讨知识图谱领域的现状与远景,推动产业界与学术界深度交流. 知识图谱将信息表达成更接近人类认知世界的形式 ...
- 综述 | 国防科技大学发布最新「3D点云深度学习」综述论文
点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 编辑:Sophia 计算机视觉联盟 报道 | 公众号 CVLianMeng 转载于 :专知 [人工智能资源(书籍 ...
- 多传感器融合定位三-3D激光里程计其三:点云畸变补偿
多传感器融合定位三-3D激光里程计其三:点云畸变补偿 1. 产生原因 2. 补偿方法 Reference: 深蓝学院-多传感器融合 多传感器融合定位理论基础 文章跳转: 多传感器融合定位一-3D激光里 ...
最新文章
- [LeetCode]题解(python):013-Roman to Integer
- css 图片换行_这个开源库教你写高级的CSS
- css盒模型和元素绘制
- secureCRT使用退格键(backspace)出现^H解决的方法
- 年会聚会派对邀请海报素材模板,创意和心意缺一不可
- USB转RS485串口电路设计
- 半导体物理复习总结(二)——半导体中的杂质和缺陷能级
- 利用Udacity模拟器实现自己的自动驾驶小车
- pta算法:计算天数
- python 类调用不存在的方法_找不到Python方法,但在类中定义
- levelup游戏资料库项目开发备忘录(10.26)
- Android开发随手记录
- 劳动仲裁解除劳动关系要多长时间
- 指纹识别的原理与优势
- WINcc 导出历史数据
- 大连交大c语言题库,大连理工大学C语言题库(共12套) .pdf
- opencv 单个圆形孔和针检测
- gitlab日常使用命令
- pwnable.kr---blackjack
- 兼阅万分享:网络赚钱的几个干货思维