前言:跟组合惯导和激光雷达打交道半年了,过程中查找学习了这两方面的资料,这里来个小结。如果有理解错误的,望大佬们不吝赐教。

一、RTK组合惯导

个人理解有两部分组成,一个提供gps信息的rtk,另外一个实时姿态信息的imu。

1、rtk

1)输出gps信号,可获取极高的定位精度(当然是在没有遮挡情况下)

2)rtk的双天线安装在车子上时,一定要进行杆臂值标定,否则不能使用的!!!至于标定方法和标定结果的验证,可以跟供应商的技术支持确认,一般有对应的用户手册

3)驱动输出的数据内容,一定弄清楚数据格式的坐标系!!!若xyz北东天输出,此时正北x为0,北朝东转(x->y)为正,角度范围为0到360度;若xyz东北天,此时正东x为0,东朝北正(x->y)为正,角度范围为(0,180),东朝南转为负,角度范围为(-180,0)。

若数据集结构含义不吃透,算法输入也就废了!!!

4)rtk数据一定要包含差分数据!!!搞个千寻帐号,接个DTU设备(里面放着一张类似手机卡东西,目的接收差分数据信号的),将差分信号接入rtk中,保证rtk数据,一定包含差分数据。

需要接入差分信息缘由:不接差分信号,rtk的精度也就米级或者分米级,接入差分信号,精度可达厘米级。对于自动驾驶而言,其重要性可想而知!

如果判断是否数据中是否包含差分信号?
一般根据厂商提供的用户手册里面有介绍对应的字段,注意不同厂商一般是不一样的,然后查看对应的topic的status的数值进行确认。使用经验来看,星网宇达的rtk,包含差分数据的数据topic的status为72;北云的rtk,包含差分数据的topic的status数值为56。

5)对于rtk驱动数据输出,可以通过如下方法验证输出的坐标系:

在导航地图中跑一段轨迹,在导航地图中,我们可以清楚车子的方位信息;根据采集到的rtk数据,对比其xyz值内容,进而确认其坐标系具体样式。

2、imu

1)组合惯导,数据输出一般标定到imu模块位置

2)imu种类可分为两类:六轴,xyz三个轴对应的角速度+线加速度;九轴,对六轴的多了三个轴的转角信息(简化理解,姿态信息,输出使用是四元数表示)

3)imu的偏置和白噪声是不固定的,受环境影响

4)imu的四元数信息,一般来自rtk双天线数据(这一点可能通过打印对比确认)

5)imu的xyz标定输出一定要搞清楚,或者一定要使用标定工具,把数据输出标到我们想要的位置上!

二、激光雷达

这里我主要参考:https://zhuanlan.zhihu.com/p/102621881这位大佬的和https://www.cxymm.net/article/weixin_41194129/112571437这位大佬的,这里会加入个人理解的内容。

1)水平视场角

激光雷达的水平视场角,激光雷达在水平旋转,旋转一周就是360°

2)垂直视场角

关键点有,一个是视场角的偏置,二是激光雷达光束的分布(个人理解为垂直分辨率)

如,激光雷达的垂直视场角是40°。
视场角的偏置为5°,也就是说激光雷达在水平方向向上的扫描角度为15°,而在水平方向往下扫描的角度为25°。
光束的分布。64线的激光雷达,40°的视场角,那么角度分辨率为40°/64=0.625°。但实际上,激光雷达的光束不是垂直均匀分布的,而是中间密,2边稀疏,还是为了达到既检测到障碍物,同时把激光束集中到中间感兴趣的部分,来更好的检测车辆。

3)周期采集点数

激光雷达采集的点数计算如下,首先看激光雷达的线数,比如32线,则垂直方向上会发出32个激光光束,采集32个点,而64线则是64个点,垂直方向上的点数和激光雷达的线数有关系。
因为激光雷达在旋转扫描,因此水平方向上扫描的点数和激光雷达的扫描频率有一定的关系,快的话点会较少,慢的话点会较多,这个参数也被称为水平分辨率。比如激光雷达的水平分辨率为0.2°,那么扫描的点数为360°/0.2°=1800。

根据下图,可看到扫描频率(转速)为10Hz(一秒转10圈)的时候水平角分辨率为0.2°,在扫描频率为20Hz的时候角分辨率为0.4°(扫描快了,分辨率变低了)。

(疑惑点,为啥频率高了,得到的点越少?由于激光雷达的采样率(可以理解为每秒能采集有效点的数量,也就是点频固定的,频率越高,每秒的帧数越多,那么一秒内的每帧获得的点个数越少。

4)有效检测距离

激光雷达的有效测量距离和最小垂直分辨率有关系,也就是说角度分辨率越小,则检测的效果越好。如图所示,2个激光光束直接的角度为0.4°,那么当探测距离为200m的时候,2个激光光束之间的距离为200m*tan0.4°≈1.4m。也就是说在200m之后,只能检测到高于1.4m的障碍物了。

如果需要知道障碍物的类型,那么需要采用的点数就需要更多,距离越远,激光雷达采样的点数就越少。分别是激光雷达50m和100m采样到的点数,可以看到100m的时候的点比50m稀疏不少,点数越少,就越难以识别准确的障碍物类型。

5)时间同步

激光雷达提供了时间同步硬件接口,通过GPS提供时钟源给激光雷达,可以保证激光雷达的时间和GPS的时间保持同步,也就是说激光雷达可以保证周期采样的时间非常精准。

通过1)-5)的分析,可知激光雷达的水平视场角为360°,垂直视场角有偏置,线束分布不均匀。激光雷达的有效采样点数和激光雷达的线数、采样频率有关系。最后激光雷达的分辨率和最小垂直分辨率有关系,并且距离越远,采样点数越稀疏。激光雷达还提供了时间同步硬件接口,来保证周期采样的时间非常精准。

6)额外补充理解

扫描频率是转速的意思,10Hz就是一秒转10圈。
激光雷达输出的图像也被称为“点云”图像,相邻两个点之间的夹角就是角分辨率。

一幅点云图像代表一帧,对应到激光雷达内部就是电机旋转一圈完成扫描。帧率即代表一秒钟内激光雷达电机旋转的圈数,也就是每秒钟完成一圈扫描的次数。
由于激光雷达的采样率是一定的,因此帧率越高,角分辨率越低;帧率越低,角分辨率越高。

采样率表示激光雷达每秒钟进行有效采集的次数,可直观理解为一秒内产生的点云数目。采样率可以通过角分辨率和帧率计算:

角分辨率0.08°时,每一帧的点云数目:360°/0.08°= 4500;

每秒10帧,则每秒的点云数目:4500×10=45000

三、小结

上面的,特别是组合惯导,都是基于工程实践得出的一些经验分享,供大家参考。这里还特别强调以下几点:

1)rtk数据一定需要包含差分信号!

2)任何传感器使用之前,一定要先标定,而且要经过验证准确!

3)数据输出的xyz坐标系的含义一定要搞清楚!

4)对应使用组合惯导+激光雷达套装,时间同步,一定要给激光雷达引线使用gps时间从而实现硬同步,尽量不使用软同步。时间同步做不好,对精度影响极大!

关于标定这一块,是十分重要的,个人感觉重要性不亚于slam框架的搭建优化

#####################
图片版权归原作者所有

不积硅步,无以至千里
好记性不如烂笔头

激光slam学习笔记1--RTK组合惯导、激光雷达传感器一些经验知识分享相关推荐

  1. 激光slam学习笔记——基于图优化的激光slam方法

    激光slam学习笔记--基于图优化的激光slam方法 1.slam基础 整体来说,在激光slam中,滤波器的误差要小于图优化的误差. 图优化通俗点说就是里程计计算的位姿与观测到的位姿之间会形成一个误差 ...

  2. 小萨村的激光SLAM学习笔记

    在之前的学习过程中,稀里糊涂的学了快一年了,一直没有对自己已经学到的东西做好梳理,很多东西杂七杂八的混在一起,导致自己回想起来,知识都很不体系,没有办法把学到的东西串联起来. 我的研究生导师本身也不是 ...

  3. SLAM学习笔记(十九)开源3D激光SLAM总结大全——Cartographer3D,LOAM,Lego-LOAM,LIO-SAM,LVI-SAM,Livox-LOAM的原理解析及区别

    本文为我在浙江省北大信研院-智能计算中心-情感智能机器人实验室-科技委员会所做的一个分享汇报,现在我把它搬运到博客中. 由于参与分享汇报的同事有许多是做其他方向的机器人工程师(包括硬件.控制等各方面并 ...

  4. SLAM学习笔记(二十)LIO-SAM流程及代码详解(最全)

    写在前面 关于安装配置,博客LIO_SAM实测运行,论文学习及代码注释[附对应google driver数据] 我觉得已经写的比较完善了.但是我觉得在注释方面,这位博主写的还不够完善,因此在学习以后, ...

  5. 激光SLAM学习--移动机器人技术系列课(智东西)

    移动机器人技术系列课1:利用激光SLAM实现移动机器人在复杂环境下的自主导航 边旭,深圳优艾智合机器人科技有限公司CTO,西安交通大学机器人学博士 [提纲] 1.AMR机器人的关键技术解析 2.SLA ...

  6. 激光SLAM学习--多种类激光雷达介绍(单线、多线)

    参考:https://zhuanlan.zhihu.com/p/33792450 前言 上一次的分享里,我介绍了一个重要的感知传感器--摄像机.摄像机作为视觉传感器,能为无人车提供丰富的感知信息.但是 ...

  7. 视觉slam学习笔记以及课后习题《第五讲特征点法视觉里程计》

    这篇博客主要记录了我在深蓝学院视觉slam课程中的课后习题,因为是为了统计知识点来方便自己以后查阅,所以有部分知识可能不太严谨,如果给大家造成了困扰请见谅,大家发现了问题也可以私信或者评论给我及时改正 ...

  8. 视觉slam学习笔记以及课后习题《第三讲李群李代数》

    前言 这篇博客主要记录了我在深蓝学院视觉slam课程中的课后习题,因为是为了统计知识点来方便自己以后查阅,所以有部分知识可能不太严谨,如果给大家造成了困扰请见谅,大家发现了问题也可以私信或者评论给我及 ...

  9. ROS_RGB-D SLAM学习笔记--室内环境测试

    ROS_RGB-D SLAM学习笔记 RTAB-Map's ros-pkg. RTAB-Map is a RGB-D SLAM approach with real-time constraints. ...

最新文章

  1. vivo 互联网业务就近路由技术实战
  2. PHP 安装 扩展时 抛出 /usr/local/Cellar/php@7.1/7.1.25/pecl 异常解决
  3. 汉诺塔的改编题(用栈求解,分别递归和非递归)
  4. BZOJ4004: [JLOI2015]装备购买
  5. java多线程w3c_多线程
  6. 异常作业2(2018.08.22)
  7. 红橙Darren视频笔记 view的绘制流程(上) onMeasure测量代码分析 基于API27
  8. 4.1 Spark SQL概述
  9. !!2016/02/22——当日买入——事后追悔,总结经验,忘记了买票的初衷!
  10. IOS:static和extern的使用
  11. 2014年的暑假ACM之旅!
  12. 英语听力软件测试自学,每日英语听力应该怎么学习?
  13. RZR 丝印RZR Marking RZR 12Pin 芯片,终于找到型号了
  14. 【ESP32】 esp32 输入输出文件系统、编码
  15. JavaScript基础之一JavaScript的邂逅
  16. Python 二分法求多项式单根
  17. GreenPlum-6 最简步骤安装
  18. 白盒测试模板用例:三角形测试
  19. vb毕业设计——基于vb+VB.NET的媒体播放器设计与实现(毕业论文+程序源码)——媒体播放器
  20. 1709 ltsb 内存占用_腾讯游戏学院专家分析:Unity在移动设备的GPU内存机制

热门文章

  1. 西门子rwd60参数设置调试手册_西门子控制器RWD60、RWD62、RWD68调试说明书
  2. 使用ipmi进行服务器管理
  3. 我的DIY Android之旅--Android应用层APP调用底层驱动实例(辛酸历程实记)
  4. 参加WorldRemit复课活动,赢取平板电脑!
  5. OpenCV 形态学操作
  6. BIOM格式文件_微生物组数据通用数据格式
  7. 【Nginx】重启报错,端口重复占用无法解决
  8. 程序猿生存指南-32 实习招聘(下)
  9. 华为官宣进军ERP的背后透露出哪些信息,华为会成功么
  10. 计算机游戏快速退出的快捷键,结束进程快捷键,手把手教你电脑结束进程快捷键怎么操作...