作者丨颍川滞@知乎

来源丨https://zhuanlan.zhihu.com/p/453038352

编辑丨3D视觉工坊

前言:

Hello,大家好,我是清华自动化的小郭,前两个月我开始做SLAM研究,目的是以Livox雷达为核心做多传感器融合方案用在测绘场景做应用,在大量学习和调研之后选择follow港大MARS实验室的有关Livox雷达的成果,趁r3live刚开源不久(2021年的最后一天开源)的机会,我就蹭个热度,如题所示,这个文章是对刚刚开源的R3LIVE的体验以及测试,r3live的github链接:https://github.com/hku-mars/r3live

R3LIVE这个工作我已经关注很久了,它在传统SLAM框架下搭建了一套高性能雷达odometry-彩色点云Mapping-三维重建的体系,将Lidar-相机-IMU更直接有效的融合。它在建图的同时把RGB信息通过VIO子系统给点云上色,并通过一定的方法优化这个上色。

给点云的xyz加上了RGB和协方差信息之后,数据的信息要素就变多了,可拓展性也变强了。

可以说,在现在已有的所有slam框架中,r3live是唯一能做到这一点的,这就是这个工作真正值得吹的,最牛逼的地方,这也是笔者我愿意花这么多时间写这个文章的主要原因。

R3LIVE A Robust, Real-time, RGB-colored, LiDAR-Inertial-Visual state estimator

视频:https://www.bilibili.com/video/BV1d341117d6?from=search&seid=12107213485081421560&spm_id_from=333.337.0.0

此外,更有趣的就是,这篇文章还提供了高效的三维点云重建mesh工具,作者根据三维重建的结果做了一个打怪的小游戏。

视频地址:https://www.bilibili.com/video/BV1e3411q7Di?from=search&seid=12107213485081421560&spm_id_from=333.337.0.0

看完演示和论文我直呼小母牛倒立-NB冲天(图0-1)

另外,看了这个作者(Jiarong Lin)发表的所有历史工作之后,发现所有他的文章都有对应的开源实现!!!对于这种宝贵的开源精神,这不大家赶紧动动小手支持一下?至少给个star不过分吧哈哈哈

https://paperswithcode.com/search?q=author%3AJiarong+Lin

简介:

在这里我简单介绍一下hku-mars的几篇相关工作

1、loam-livox:livox雷达SLAM的奠基之作

作者:Jiarong Lin and Fu Zhang
代码链接:https://github.com/hku-mars/loam_livox
简介:也就是r3live的作者写的这篇文章,在经典loam体系的基础之上,针对livox高频率小fov和不规则采样的特点,设计了
一种鲁棒、实时的激光雷达建图算法;livox-loam2更是添加了一种高效的回环检测方案(这很符合测绘逻辑)。
再说说Livox的这个雷达,它采用花瓣式扫描(图1-1)的方式类似于人的视网膜(图1-2)的扫描方式,之后如果用来做机器学习
可能会非常的NB。

图1-1:livox-avia扫描方式

图1-2:livox雷达和人眼扫描注意力对比图

2、lio系列:FASTLIO\FASTLIO2:高性能LIO的

作者:Wei Xu, Yixi Cai 等
代码链接:https://github.com/hku-mars/ikd-Tree
简介:FASTLIO1提出了一种使用紧耦合的迭代扩展卡尔曼滤波器将激光雷达特征点与IMU数据融合,我的理解FASTLIO1做了两个工作,
一个是使用流形约束了SO3,一个是设计了一种迭代卡尔曼滤波器代替了loam的非线性优化方案。
FASTLIO2就更有意思了,更好的利用了他们实验室设计的动态增量KD树,在ikdtree的高速运算加持下,就不用zhangji那种手工
提取角点面点的老方法了,直接降采样做ICP这样匹配就能get到一些重要的但是我们并不知道它重要的特征。

3、live系列:r2live\r3live:

作者:Jiarong Lin and Fu Zhang
代码链接:https://github.com/hku-mars/r2live
简介:r2live,将fastlio2变成lio子系统,加入了vio子系统,在误差卡尔曼滤波器内部估计状态,并用因子图优化进一步提高整体
精度。通俗点儿讲就是雷达和相机在不同环境中有各自的优势,在卡尔曼滤波框架下雷达场景不退化的用雷达,雷达不行上相机顶,实在
不行上IMU顶。

看完了r2live的论文和介绍视频之后我就说,是骡子是马拉出来溜溜,我马上带着我们调研时候自己攒的手持设备(图2-1)在校园里测试一下,那是真的随便走随便扫,实时运算,咋扫都行,计算效率特别高,也非常的鲁棒(图2-2),扫完之后我就有一种感觉:确实牛逼

然而,今天的主角不是r2live,而是我接下来重点想说说的r3live

图2-1:我们的设备和采集过程

图2-2:r2live扫描校园效果1

图2-3:r2live扫描效果2

r3lvie意义何在

有小伙伴就问了,这r2live(图3-1)和r3live(图3-2)有啥区别呢,在看完论文之后,可以判断r3live应该基于前作r2live的基础上开发的,也是分为俩个子系统,即:激光惯导子系统(LIO)和视觉惯导子系统(VIO)。其中,如以下框架图所示,r3live和r2live的LIO系统并没有太大的区别,他们的最大区别在于VIO的设计上。r2live采用的是ESIKF filter-based odometry + pose graph optimization的pipeline,通过ESIKF filter快速迭代出最优状态,然后通过pose graph optimization的进行refine。而在r3live中,VIO子系统直接使用了由LIO系统的点云地图,通过对地图纹理(即点云的RGB颜色)的观测来更新系统的状态。简而言之,r3live中的LIO系统负责构建地图的几何结构(geometry structure), VIO子系统负责渲染地图的纹理(texture, 即点云的颜色信息)。

得益于这种设计,r3live比r2live的多传感器融合的更直接有效。

图3-1 r2live

图3-2:r3live

r3live效果展示

首先,我的电脑配置:32GRAM,i7-10700U的NUC,没有显卡,跑起来无压力,所有的截图都是实时跑数据实时截图。

我跑的数据就是作者提供的几个数据集分别是:

degenerate开头的表示容易退化场景的数据集,好像还有loam-livox的陈年老bag

hku_campus开头的是港大室内-室外场景的数据集

hkust_campus开头的港科技是比较大尺度的校园类型的数据集

hku_park是开头的是树木多的公园类型的数据集

这几种数据集基本上可以代表大部分slam的作用环境了,跑一跑这个数据做一个验证是非常有说服力的,也可以跑我们自己的数据(r2live采集的数据)。但是跑自己的数据的时候要做好相机雷达联合标定,并在config的yaml文件里配置一下自己的相机的内外参。

1、实时性:用图体现不出来,我们跑的时候还是很流畅的

2、雷达和相机容易退化的几个场景

直接硬怼白墙这种雷达必然退化,相机也容易飘的场景能保持稳定非常NB

再来一张

3、回环的场景

hkust01的bag,走第二圈这个楼梯的时候还是同一个栏杆非常的NB

走树林的场景回环的很好

4、彩色点云

点云上色的质量非常的好

港科技萌萌的地面

每一根毛都清清楚楚

有一种身临其境的感觉

树林一角

校园风景

校园总览

地面纹理相当清晰

车道线表达也相当稳健

三维重建及其应用

5、mesh重建:

建图效率非常的好,作者把该功能集成在了roslaunch中,用起来也非常方便,有心了。

6、重建应用:两个小游戏

7、系统监视工具:

内存查看器:在运行r3live的roslaunch的终端里面,作者给我们维护了一个内存监视器,可以实时查看内存占用情况,还是很好用的。

对于r3live的展望

在实际测试中,除了实时重建的彩色地图给了我很大的震撼,我还关注到以下几点,首先是内存占用问题,通过作者提供的内存查看器,我门可以很清楚的看到,r3live的内存占用是比较大的,9GB大小的香港科技大学的bag,在内存中表现总占用了27GB RAM,可以看出来,R3LIVE的地图记录了不止点位的几何位置信息,还记录了RGB颜色、协方差等一堆参数,导致R3LIVE在内存占用上还是很高的,不知道后续作者会不会针对这个问题做相关的优化。

第二点就是在进行三维重建之后,在树和房子之间的部分,建图效果不是很理想,语义分割后再进行mesh是不是会好一些?

总之我就想赶紧标定好设备,马上去采据去

本文仅做学术分享,如有侵权,请联系删文。

3D视觉精品课程推荐:

1.面向自动驾驶领域的多传感器数据融合技术

2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)

9.从零搭建一套结构光3D重建系统[理论+源码+实践]

10.单目深度估计方法:算法梳理与代码实现

11.自动驾驶中的深度学习模型部署实战

12.相机模型与标定(单目+双目+鱼眼)

13.重磅!四旋翼飞行器:算法与实战

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、激光/视觉SLAM自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

R3LIVE开源代码全体验及测试相关推荐

  1. PSINS开源代码初体验——航迹仿真与组合导航

    文章目录 航迹仿真 组合导航仿真 PSINS是西北工业大学严恭敏教授开发的高精度捷联惯性系统及其组合导航系统开源软件(matlab, C++),软件及其他参考资料下载可以参见www.psins.org ...

  2. android app 的后台代码,包括后台的Android美食APP项目开源代码

    项目简介 小食光定位为一款集美食,社交,LBS服务于一体的美食推荐APP.为你发现周边美食的同时提供一个吃货分享的平台. APP截图 功能模块 美食推荐 :提供基础的美食信息查询: 商家推荐 : 基于 ...

  3. android studio 打开github开源代码

    1.最近下载的开源代码全是github来的,一直用eclipse开发,对于android studio来说是全新的 2.在eclipse导入一个工程那是so easy, import选择一下就可以. ...

  4. 微信小程序商城源码独立版/公众号/H5/DIY装修/营销/直播/拼团/秒杀/前端vue全开源代码

    软件优势: 一键开关商城功能,模板消息,diy自定义商城首页.会员中心. hinkphp6国内流行的PHP框架,结构代码清晰,适合中小企业快速开发应用. uniapp一套代码多个平台,开发不浪费,账号 ...

  5. Windows编译开源代码方法之关于lame.exe文件的测试及过程

    Windows编译开源代码方法之关于lame.exe文件的测试及过程 最终结果(PS:使用markdown不熟悉,记得在井号后面加个空格才能触发) 起因:foobar2000在格式转换中需要lame. ...

  6. 花最少的钱,训超6的机器人:谷歌大脑推出机器人强化学习平台,硬件代码全开源...

    鱼羊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 想要在现实世界的机器人身上探索强化学习(RL),并非易事. 首先,你得拥有类似这样的机器人平台: 而像这样的一只PR2,售价高达40万美元( ...

  7. 谷歌大脑推出机器人强化学习平台,硬件代码全开源,花最少的钱,训超6的机器人...

    点击我爱计算机视觉标星,更快获取CVML新技术 鱼羊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 想要在现实世界的机器人身上探索强化学习(RL),并非易事. 首先,你得拥有类似这样的机器人平 ...

  8. c++实验总结_史上最全场景文字检测资源合集(70篇重要论文 + 15个开源代码 + 176个实验结果 + 1305个统计信息)...

    本文总结了2012年以来在场景文本检测领域的70篇代表性论文.21个常用数据集.15份开源代码,包含176个实验结果以及超过1300条统计信息.Github资源链接见文末. 一.前言 许多自然场景中包 ...

  9. 史上最全场景文字检测资源合集(70篇重要论文 + 15个开源代码 + 176个实验结果 + 1305个统计信息)...

    点击上方"AI算法与图像处理",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者:刘崇宇 转载自:CSIG文档图像分析与识别专委会 本 ...

最新文章

  1. 以下不是python文件读写方法的是-Python 文件I/O
  2. MFC检查透镜质量程序
  3. 【推荐】有趣儿的PHP文件操作常用函数总结
  4. Javascript Array和String的互转换。
  5. linux 中 ~/.和$
  6. swagger文档转换为WebApiClient声明式代码
  7. C++(7)--for循环,break,continue语句
  8. 数据结构-栈1-顺序存储
  9. 快约 - PHP社交约会平台源码开心版
  10. OpenCV-python学习笔记(三)——histograms直方图
  11. 控制工程基础Chapter2 Mathematical models of systems
  12. Hive数据更新同时去重入门
  13. python中tkinter模块pack_使用Python中的tkinter模块作图的方法
  14. 绘制曲线设置颜色和样式
  15. Flutter之GlobalKey详解
  16. Eclipse中source folder、folder、package的区别?
  17. 计算机管理老是自动打开,电脑老是自动重启怎么回事怎么解决
  18. 前端工程的价值体现在哪里
  19. [附源码]Python计算机毕业设计大学生社团管理系统
  20. 软件评测师题库--程序语言基础知识

热门文章

  1. 20暨南大学计算机考研经验知乎,暨大应统经验转自知乎
  2. 《夜宴》Vs《黄金甲》之8大PK看点及冲奥预测
  3. 前端练习--网易新闻
  4. 卷积神经网络基本概念
  5. 振作只需一个理由:日子不能这样过
  6. 葛洲坝地产的“5G科技”演化:三大维度推进,不唯技术控
  7. mysql关于case when的用法举例
  8. 陳三甲网络笔记:即使你摆正了姿势,也不一定能赚到钱!
  9. [硬件]电路-TTL
  10. 忘记root密码的解决方法