当前位置:网站首页>文章解读 -- FlowNet3D:Learning Scene Flow in 3D Point Clouds
文章解读 -- FlowNet3D:Learning Scene Flow in 3D Point Clouds
2022-08-02 08:00:00 【Darchan】
文章解读 – FlowNet3D:Learning Scene Flow in 3D Point Clouds
参考:
1. FlowNet3D: Learning Scene Flow in 3D Point Clouds学习笔记(CVPR2019)
2. FlowNet3D论文阅读
3. FlowNet3D论文学习笔记
4. “FlowNet3D”
一. 摘要
机器人和人机交互技术中的许多应用都受益于动态环境中 3D 运动的理解,广泛称为场景流。虽然大多数以前的方法都专注于立体视觉和 RGB-D 图像,将这些作为输入,但很少有人尝试直接从点云估计场景流。在这项工作中,我们提出了一种名为 FlowNet3D 的新型深度神经网络,它以端到端的方式从点云中学习场景流。我们的网络同时学习点云的深层层次特征和表示点云运动的流嵌入(flow embedding),由两个新提出的针对点云的学习层支持。我们根据来自 FlyingThings3D 的具有挑战性的合成数据和来自 KITTI 的真实激光雷达扫描来评估网络。我们仅在合成数据上进行训练,便成功地推广到真实激光雷达数据,优于各种基线算法,并显示出与现有技术相媲美的结果。我们还展示了场景流输出的两个应用(点云配准和运动分割),以展示其潜在的广泛应用。
二. 介绍
我们提出了一个名叫FlowNet3D的新颖网络,能够端到端的针对一对连续帧点云进行场景流估计。
我们在点云上引入了两个新的学习层:
- 流向量映射层(flow embedding):学习关联两帧点云,给出flow embedding特征
- set up conv层:将特征向量从一组点扩展到另一组点(用于升采样获得整个点云场景流数据)
我们展示了如何使用提出的 FlowNet3D, 使用大规模合成数据集(FlyingThings3D)进行训练,并将其应用在KITTI 的真实点云数据集上。与传统方法相比,在 3D 场景流估计方面取得了很大的改进。
三. 问题描述
动态采样的两组3D点云场景,在两个连续的时间帧:P = {xi|i =1, . . . , n1} (点云 1) 和 Q = {yj|j = 1, . . . , n2}(点云 2),其中 xi, yj ∈ R3 是 点云XYZ 坐标。 注意由于物体运动和视角变化,两个点云不一定有相同数量的点或它们的点之间有任何对应关系。
现在考虑一个采样后的真实点坐标xi 在第二帧移动到位置 x′ i ,则该点的平移运动矢量为 di = x′ i - xi。 我们的目标是,给定点云 P 和 Q,恢复第一帧中的每一个采样点的场景流:D = {di|i = 1, . . . , n1}。
四. 网络结构
在本节中,我们将介绍 FlowNet3D,这是一种基于点云的端到端场景流估计网络。 该模型具有三个关键模块,分别用来 :
- (1) 点云特征学习
- (2) 点云信息混合
- (3) 点云流上采样
这些模块包含三个关键的深度点云处理层:设置conv层、flow embedding层和设置upconv层。
4.1 层次点云特征学习
set abstraction = sampling + grouping + pointnet
由于点云是一组不规则且无序的点的集合,传统的卷积不适合。 因此我们遵循最近提出的 PointNet++ 架构,它是一个具有平移不变性的分层学习特征的网络。 虽然设置conv 层 进行 3D 的分类和分割,我们发现它的特征学习层对于场景流任务也很有优势。
该层首先对输入点云进行最远距离采样,得到 n’ 个区域(区域中心为 x′ j),然后对每个区域分组(由半径r指定的邻域),最后使用对称函数提取其局部特征。
4.2 点云信息混合
点云,你没法知道前一帧的采样点到了下一帧是哪一个点,甚至由于采集的稀疏性和遮挡等问题,可能下一帧都没有相同语义的点,所以很难去找到真正对应的点。于是作者提出使用软策略,也就是找一些相似的点,采用投票方法给出场景流估计。
4.3 点云流上采样
引入set upconv layer对结果进行上采样,将部分点的运动信息转化到整个点云上。
本层将 flow embedding 层中的点上采样回原来输入网络的个数,每个输出代表该点的场景流。
边栏推荐
- Three types of [OC learning notes] Block
- 小康股份更名赛力斯,如何走出一条高端产品的“丝绸之路”?
- Biotin - LC - Hydrazide | CAS: 109276-34-8 | Biotin - LC - Hydrazide
- The custom table form
- flutter 自己写一个组件
- 52. [Bool type input any non-0 value is not 1 version reason]
- TiFlash 存储层概览
- PostgreSQL学习总结(11)—— PostgreSQL 常用的高可用集群方案
- 解决IDEA安装安装插件慢问题
- 软件测试技术之解析图灵测试离我们还有多远
猜你喜欢
随机推荐
设置 height: auto 却无法触发 transition 动画的解决方案
MySQL压缩包方式安装,傻瓜式教学
@PostConstruct注解详解
爬虫——爬虫初识、requests模块
【C】关于柔性数组.简要的谈谈柔性数组
小说里的编程 【连载之二十一】元宇宙里月亮弯弯
基本SQL语句(一篇就够了)
三维体尺测量
Biotin hydrazide HCl|CAS:66640-86-6|Biotin-hydrazide hydrochloride
2022-7-31 12点 程序爱生活 恒指底背离中,有1-2周反弹希望
mysql如何从某一行检索到最后
CASA模型、CENTURY模型应用与案例分析
数据表格化打印输出
PostgreSQL learning summary (11) - PostgreSQL commonly used high-availability cluster solutions
JVM垃圾回收与性能调优方式
近期在SLAM建图和定位方面的进展
【电子电路】长按键拉低电平,适用在有休眠机制的MCU但是没有看门狗,一个按键多个功能场景下使用
高仿【华为消费者业务官网】和精彩动画剖析:练习在低代码平台中嵌入JS代码
redis-desktop-manager下载安装
redis高阶使用之Redisson分布式锁源码解析








![[OC学习笔记]ARC与引用计数](/img/56/033cfc15954567d63d987d91ca8d63.png)
