点云PCL免费知识星球,点云论文速读。

文章:Monocular Object and Plane SLAM in Structured Environments

作者:Shichao Yang, Sebastian Scherer

翻译:particle

本文仅做学术分享,如有侵权,请联系删除。欢迎各位加入免费知识星球,获取PDF论文,欢迎转发朋友圈分享快乐。

论文阅读模块将分享点云处理,SLAM,三维视觉,高精地图相关的文章。公众号致力于理解三维视觉领域相关内容的干货分享,欢迎各位加入我,我们一起每天一篇文章阅读,开启分享之旅,有兴趣的可联系微信dianyunpcl@163.com。

论文摘要

本文提出了一种基于高层次目标物体和平面关键特征的单目的SLAM算法。与基于特征点的SLAM相比,所构建的地图更密集、更具体、更有语义信息的地图。文章首先提出一个高层次的图形模型,在考虑遮挡和语义约束的情况下,从单个图像中联合推断三维物体和结构平面。在统一的SLAM框架下,利用摄像机姿态对获取的目标物体和平面进行进一步优化。与点特征相比,目标物体和平面可以提供更多的语义约束。在ICL-NUIM和TUM-Mono等不同的公共数据集和采集数据集上的实验表明,与最先进的SLAM算法相比,我们的算法可以提高摄像机定位精度,尤其是在没有环路闭合的情况下,该算法还能在许多结构化环境下稳健地生成稠密的地图。

使用单目相机重建关键点、物体(绿色框)、平面(红色矩形)的稠密SLAM贴图的示例结果。(顶部)ICL客厅数据集。(底部)收集的长廊数据集。

● 相关工作与介绍

在这项工作中,提出一个基于单目目标物体和平面的SLAM系统,没有先验的对象物体和房间形状模型。主要分为两个步骤。理解三维结构是第一步是,基于图像的几何特征和语义特征生成并优化结构平面和物体对象。第二步是多视图SLAM优化。在一个统一的捆集调整(BA)框架中,通过摄像机姿态和点特征进一步优化平面和物体。对象和平面提供了额外的语义和几何约束,以改进摄像机的姿态估计,优化并生成密集的三维地图。另一方面,精确的SLAM姿态估计提高了单图像的3D检测。综上所述,我们的贡献如下:

•一个高层次图形几何模型,具有高效的推理能力,可用于单图像三维结构理解。

•首个单目目标和平面SLAM,在SLAM方面均优于最先进的算法。

内容精华

单帧图像理解

将环境表示为一组长方体对象和结构化平面(如墙和地板)。目标是同时从二维图像推断出它们的三维位置。我们首先生成若干目标物体和假设平面,然后通过条件随机场(CRF)优化选择其中的最佳子集,如图所示

单图像三维物体和结构平面检测概述。首先生成许多高质量的对象和结构化平面,然后根据语义分割、交叉、遮挡等信息建立图形几何模型来选择最优子集。

为了表示平面,CNNs可以直接预测三维平面位置,但由于预测的布局可能与实际平面边界不完全匹配,可能会丢失一些细节。因此,测量不确定度大,不适合作为SLAM观测值。所以这里直接检测和选择更可靠和可重复性更好的地面与墙交界线段。

SLAM优化

利用单幅图像检测中选取的目标物和平面作为SLAM观测值,并通过多视点BA对摄像机姿态进行优化。并在SLAM过程中包含点特征,因为在环境中通常只有几个对象和平面,它们不能完全约束摄影机的姿势。

SLAM中的观测值。(a) 相机平面观测。将检测到的地面边缘反投影到三维空间,与地标平面进行比较。(b) 相机对象物体观测。将三维长方体地标投影到图像上,并与检测到的二维盒体进行比较。(c) 物体与平面测量误差取决于被平面遮挡的物体体积。

实验

对于目标检测,使用了与Object SLAM【1】类似的算法。Yolo检测器用于二维目标检测。对于平面检测,我们首先使用【2】检测线段并将其合并到长边上。Segnet【3】用于二维语义分割。然后我们过滤掉长度小于50像素且距离墙-地分割边界50像素以上的线。在视频情况下,单幅图像的三维检测采用SLAM姿态估计。对于SLAM部分,系统是建立在基于特征点的ORB SLAM之上的,通过对象和平面进行扩展。

单图像原始物体和面检测和CRF优化。

(a) 原始平面和预测的对象。(为了简洁起见,只绘制了一个长方体方案)

(b)原始方案的俯视图。红色矩形表示地面真实物体,蓝色表示估计值。检测的墙线是青色的。

(c) CRF选定检测到物体的俯视图。优化后的物体姿态更精确。平面和对象的相交和遮挡也会减少

(顶部)ICLNUIM办公室2和房间数据。(中)YUM-mono 36。(下)采集的长廊。红色矩形为平面边界,绿色长方体为对象。蓝色曲线是估计的摄像机轨迹。

总结

在这项工作中,我们提出了第一个单目SLAM和稠密SLAM算法,根据实验结果表明,语义场景理解和传统的SLAM优化方法可以互相促进。对于单幅图像,我们提出了一种快速的三维物体和结构化平面的联合理解方法。通过二维目标检测和边缘检测生成长方体和平面方案。然后提出一种高效的稀疏高阶CRF推理来选择最优方案。在SLAM部分,针对平面和物体设计了几种新的测量函数。与点相比,物体和平面可以提供远距离的几何和语义约束,如交集和支撑关系,以提高姿态估计。为了提高鲁棒性,提出了严格的外点剔除、鲁棒数据关联和优化方法。我们评估了SLAM算法在各种公共室内数据集(包括房间和走廊)中的性能。与现有的方法相比,我们的方法可以在大多数环境下改进摄像机的姿态估计和稠密地图。未来,除了墙平面外,还需要考虑更多的通用平面,以生成更密集、更完整的地图。动态对象和对象表面映射也可以用来提高鲁棒性和地图质量。

参考文献

【1】Shichao Yang and Sebastian Scherer. CubeSLAM: Monocular 3D object SLAM. IEEE Transactions on Robotics, 2019

【2】Rafael Grompone von Gioi, Jeremie Jakubowicz, Jean-Michel Morel, and Gregory Randall. LSD: A fast line segment detector with a false detection control. IEEE Transactions on Pattern Analysis & Machine Intelligence, (4):722–732, 2008.

【3】Vijay Badrinarayanan, Alex Kendall, and Roberto Cipolla. SegNet: A deep convolutional encoder-decoder architecture for image segmentation. IEEE transactions on pattern analysis and machine intelligence, 39(12):2481–2495, 2017

资源

三维点云论文及相关应用分享

【点云论文速读】基于激光雷达的里程计及3D点云地图中的定位方法

3D目标检测:MV3D-Net

三维点云分割综述(上)

3D-MiniNet: 从点云中学习2D表示以实现快速有效的3D LIDAR语义分割(2020)

win下使用QT添加VTK插件实现点云可视化GUI

JSNet:3D点云的联合实例和语义分割

大场景三维点云的语义分割综述

PCL中outofcore模块---基于核外八叉树的大规模点云的显示

基于局部凹凸性进行目标分割

基于三维卷积神经网络的点云标记

点云的超体素(SuperVoxel)

基于超点图的大规模点云分割

更多文章可查看:点云学习历史文章大汇总

SLAM及AR相关分享

【开源方案共享】ORB-SLAM3开源啦!

【论文速读】AVP-SLAM:自动泊车系统中的语义SLAM

【点云论文速读】StructSLAM:结构化线特征SLAM

SLAM和AR综述

常用的3D深度相机

AR设备单目视觉惯导SLAM算法综述与评价

SLAM综述(4)激光与视觉融合SLAM

Kimera实时重建的语义SLAM系统

SLAM综述(3)-视觉与惯导,视觉与深度学习SLAM

易扩展的SLAM框架-OpenVSLAM

高翔:非结构化道路激光SLAM中的挑战

SLAM综述之Lidar SLAM

基于鱼眼相机的SLAM方法介绍

往期线上分享录播汇总

第一期B站录播之三维模型检索技术

第二期B站录播之深度学习在3D场景中的应用

第三期B站录播之CMake进阶学习

第四期B站录播之点云物体及六自由度姿态估计

第五期B站录播之点云深度学习语义分割拓展

第六期B站录播之Pointnetlk解读

[线上分享录播]点云配准概述及其在激光SLAM中的应用

[线上分享录播]cloudcompare插件开发

[线上分享录播]基于点云数据的 Mesh重建与处理

[线上分享录播]机器人力反馈遥操作技术及机器人视觉分享

[线上分享录播]地面点云配准与机载点云航带平差

点云PCL更多活动请查看:点云PCL活动之应届生校招群

扫描下方微信视频号二维码可查看最新研究成果及相关开源方案的演示:

如果你对本文感兴趣,点击“原文阅读”获取知识星球二维码,务必按照“姓名+学校/公司+研究方向”备注加入免费知识星球,星球可自由发言交流和分享。也可免费下载公众号分享的论文pdf文档,和更多热爱分享的小伙伴一起交流吧!

欢迎各位转发分享朋友圈,将公众号设置为星标,或点击“在看”以示鼓励和支持,让我们继续分享!

以上内容如有错误请留言评论,欢迎指正交流。如有侵权,请联系删除

扫描二维码

关注我们

让我们一起分享一起学习吧!期待有想法,乐于分享的小伙伴加入免费星球注入爱分享的新鲜活力。分享的主题包含但不限于三维视觉,点云,高精地图,自动驾驶,以及机器人等相关的领域。

分享及合作方式:联系微信“920177957”(需要按要求备注)联系邮箱:dianyunpcl@163.com,欢迎企业来联系公众号展开合作。

点一下“在看”你会更好看耶

在结构化场景中基于单目的物体与平面SLAM方案相关推荐

  1. 自动驾驶车辆在结构化场景中基于HD-Map由粗到精语义定位

    点云PCL免费知识星球,点云论文速读. 文章:Coarse-to-fine Semantic Localization with HD Map for Autonomous Driving in St ...

  2. 结构化场景中的RGB-D SLAM

    点云PCL免费知识星球,点云论文速读. 文章:RGB-D SLAM with Structural Regularities 作者:Yanyan Li , Raza Yunus , Nikolas B ...

  3. CaDDN:基于单目的3D目标检测新方法(CVPR2021)

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨元气满满的打工人 来源丨CV研习社 文章导读 导读:在自动驾驶的技术中,3D目标检测能够提更加丰 ...

  4. SQL结构化查询语言中的LIKE语句

    SQL结构化查询语言中的LIKE语句 在sql结构化查询语言中,like语句有着至关重要的作用. like语句的语法格式是:select * from 表名 where 字段名 like 对应值(子串 ...

  5. 微服务应用容器化场景中常见问题总结

    简介:云原生技术栈是下一代应用转型的必然选择,它包含了微服务架构,DevOps和容器技术.对于微服务架构来说,应用是"第一公民",他逐渐蚕食原来底层软件或者硬件的功能,例如服务注册 ...

  6. 结构化数据中的从属判断问题

    [摘要]     从数据表中选出数据时,有时需要判断成员是否从属于某一个集合.例如从房价表中选出重要城市的房价信息,从销售表中选出 VIP 客户的销售记录等等.如何简便快捷的处理结构化数据中的从属判断 ...

  7. Unity协程实现场景中鼠标按住的物体跟随鼠标移动

    Unity协程实现场景中的鼠标按住物体跟随鼠标移动 void Awake() { StartCoroutine(OnMouseDown() as IEnumerator); } IEnumerator ...

  8. 基于单目的3D人体姿态估计

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者:彡枫| 来源:知乎 https://zhuanlan.zhihu.com/p/148251873 ...

  9. Unity Editor自制工具(1)--“Editor目录栏按钮+全局搜索方法+自制Editor窗口”实现搜索与删除场景中任意名称游戏物体

    1,制作Editor上方目录按钮 在C#静态方法上方加上[MenuItem("目录")],可在Editor中上方目录栏生成一个按钮. using System.Collection ...

最新文章

  1. 模型类序列化器ModelSerializer
  2. 购物商城Web开发第十二天
  3. STL(一)Containers
  4. Vue电商后台B站的项目需要的材料 密码等
  5. 前端学习(2841):UI开发思路--搭建架子
  6. 2016: C语言实验——打印金字塔
  7. Django3Vue3前后端分离项目
  8. excel表格行列显示十字定位_取消excel单元格十字定位(excle表格里的十字对准)
  9. Ubuntu文件目录结构详解
  10. think-cell丨Images图像丨教程
  11. java rxtx version_RXTX Version mismatch
  12. 一文读懂社交网络分析(附应用、前沿、学习资源)
  13. 【二维码案例】“码”出行,交通运输领域二维码应用
  14. blast2go进行Nr注释
  15. js正则校验 统一社会信用代码
  16. 2019 中文互联网资源碎碎念
  17. c14cpm和dpm怎么换算_DPM7001液体闪烁计数器
  18. html中路径:点杠,点点杠的区别
  19. 用HBuilder插入图片、动态图、音乐、视频、上传文件
  20. matlab 通过矩阵变换使图像旋转平移_28. 图像扭曲

热门文章

  1. 【js操作url参数】获取指定url参数值、取指定url参数并转为json对象
  2. hbase系列之:独立模式部署hbase
  3. 洛谷 P1411 树
  4. PyTorch 笔记(14)— nn.module 实现简单感知机和多层感知机
  5. Python2 与 Python3 共存,pip2 与 pip3 共存切换设置
  6. html input type=file 的属性及api
  7. Adapter的getView
  8. 安装centos 7 桌面
  9. java.lang.Thread使用及总结
  10. “睡眠猴子”团队项目及成员介绍