【自动驾驶传感器融合系列】02自动驾驶中的多传感器同步理论

  • 文前白话
    • 1、传感器时空同步概念
    • 2、传感器时间同步
      • · 时间硬同步
      • · 时间软同步
    • 3、传感器时空同步

文前白话

同步理论整体架构:

1、传感器时空同步概念

概述:

传感器间空间同步,就是不同传感器坐标系下的测量值转换到同一坐标系下也可以理解为传感器在整车坐标系下的标定参数)。传感器标定是自动驾驶的基本需求,也是多传感器融合的基础,需要首先确定各传感器之间的坐标关系以及各传感器与整车坐标系之间的转换关系。同样,理解空间同步的本质,可以拓展到车体坐标系如何转换到世界坐标系下的过程。

2、传感器时间同步

概述:

自动驾驶除了空间坐标系需要进行精确同步外,各个设备(或者传感器)之间的时间坐标系也需要进行同步。只要提到传感器融合,时间同步就是不可避免的操作步骤。
时间同步就是通过统一的主机给各个传感器提供基准时间,各传感器根据已经校准后的各自时间为各自独立采集的数据加上时间戳信息,以做到所有传感器时间戳同步

· 时间硬同步

相关的概念:

  • 传感器时间戳:(一些时间的标准)

TAI:即International Atomic Time,称为国际原子时,一种国际参照时标,是均匀的时间尺度,与地球的空间位置不关联,起点为1958年1月1日0时0分0秒。

UTC,即Coordinated Universal Time,它是最主要的世界时间标准,是基于国际原子时,并通过不规则的加入闰秒来抵消地球自转变慢的影响。所以又被称为世界标准时间。

GMT , Greenwich Mean Time

系统时间,一般指的是SOC所搭载的系统对应的时间,是以UNIX或者UNIX系统使用的时间进行表示,一般定义为从UTC时间的1970年1月1日0时0分0秒起至现在的总秒数(10位是精确到秒,13位是精确到毫秒),如果考虑闰秒的话,也需要加上经闰秒调整后的总秒数。所以,系统时
间戳,有时候也称为Unix或POSIX时间戳。

传感器 时间机制
GPS/GNSS时间戳 GPS时间指的是GPS原子时,是以UTC时间1980年1月6日0时0分0秒为时间基准,以后按照TAI秒长累计计时。
相机时间戳 自动驾驶上使用rolling shutter相机是支持外部触发曝光的,但由于相机帧周期包括曝光时间和readout时间(整帧像素点读出),所以需要关注曝光时间,对于相同cmos芯片的相机,其readout时间是固定的,来反推图像真实时间戳(一般采用曝光中间时间)。
激光雷达时间戳 目前自动驾驶中所使用的激光雷达,从硬件层面上就支持授时,即有硬件trigger触发LiDAR的数据,并给这一帧数据打上时间戳,LiDAR通常有两种时间同步接口:基于IEEE 1588的以太网时间同步机制和PPS+NMEA协议 (基于GPS的时间同步机制)。
毫米波雷达时间戳 目前主流的车载毫米波雷达采用FMCW调制方式,其上电后开始进行信号的发送和接收,内部有专门的时间机制,无法接收外部的时间。另外毫米波雷达周期性发送can信号,所以可以从can信号中获取数据时间。
IMU时间戳 一般IMU与GPS集成在一起的,假设集成在FPGA上,那么接收FPGA输出的高精度时间脉冲,从而将传感器信号打上高精度时间戳。
  • 传感器的一般频率取值:

由于每种传感器的采样频率不一致,如LiDAR通常为10Hz,camera通常为25或者30Hz,不同传感器之间的数据传输还存在一定的延迟,那么可以通过寻找相邻时间戳的方法找到最近邻帧,但如果两个时间戳相差较大,且传感器或障碍物又在运动,那么最终会得到较大的同步误差。如下图展示:

传感器类型 常见的频率
车载相机 15Hz 、20Hz、25Hz、30Hz等
车载激光雷达 10Hz
车载毫米波雷达 13~15 Hz
IMU 100~200 Hz

**时间硬同步,**就是通过唯一的时钟源给各传感器提供相同的基准时间,各传感器根据提供的基准时间校准各自的时钟时间,从硬件上实现时间同步。
目前自动驾驶中主流时间同步是以GPS时间为基准时间 ,采用PTP/gPTP时钟同步协议来完成各传感器之间的时间同步,PTP 前提是需要交换机支持PTP协议,才能实现高精度同步。
与PTP同时出现的还有一种NTP,即网络时间协议,不同的是PTP是在硬件级实现的,NTP是在应用层级别实现的。

整车的时间硬同步示意图:

GNSS与IMU时间同步下的数据融合示意图:

  • 1、统一时钟源

由于每个传感器都有自己的时间戳,这里 统一时钟就是来同步不同传感器时间戳的。如果传感器支持硬件触发的情况下,可以采用GPS时间戳作为基准进行硬件触发,这时传感器给出的数据中包含的时间戳即为全局时间戳(GPS时间戳)而非传感器时间戳。不同传感器之间统一时钟源效果的示意图如下:

  • 2、硬件同步触发

由于每种传感器的采样频率不一致,并且不同传感器之间的数据传输还存在一定的延迟,如果两个时间戳相差较大,且传感器或障碍物又在运动,那么最终会得到较大的同步误差。这种情况下,可以采用硬同步触发的方法来缓解查找时间戳造成的误差现象,也可以调整传感器的固有频率,如将相机调整为20Hz,减少时间差问题。

硬件同步触发示意图:

· 时间软同步

经过时间的硬同步,为什么还要进行软同步?

考虑到相机成像、传输过程以及毫米波雷达不支持硬件触发(毫米波无法接收外界信号触发)等情况,在算法上,还要进行传感器之间的时间软同步。

时间软同步的方法有:时间索引----时间直接配准法、时间插值----时间最小二乘拟合法内插外推法 以及虚拟融合方法,泰勒展开方法等等其他方法,。

  • 1、直接配准法
  • 适合传感器之间的帧率具有整数倍数关系,以频率低的为基准,找出时间戳
    对应的数据即可
    。如下图,这种方法误差比较大,而且要求传感器之间的帧率是整数倍

  • 2、时间最小二乘拟合法

  • 最小二乘法是时间配准中常用的一种方法,适合帧率非整数倍关系的传感器之间的时间对齐。就是将其中一个传感器的观测数据通过某种特定的拟合原则得到一个关于时间的曲线,然后通过该曲线得到与另一个传感器对应时刻的数值,即可得到同一时刻两种种传感器的数据配准。如下:

  • 3、内插外推法

  • 内插外推法适用于传感器间帧率不存在倍数关系的情况,或者传感器有帧率不稳定的情况。主要利用两个传感器帧上的时间标签,计算出时间差,然后通过包含有运动信息的目标帧与时间差结合,对帧中每一个目标的位置进行推算,推算出新的帧时各个目标的位置,并于原有的两帧之间建立新的帧。

  • 4、其他方法

其他方法如:虚拟融合方法,泰勒展开方法等等,还需要实际情况提出种种改进措施

3、传感器时空同步

概念:运动补偿

即是对传感器测量过程,物体的运动或者传感器的运动,造成实际的运动数据偏差,进行量化弥补。

运动补偿情况主要分为两类:

  • 自身车辆运动引起偏差(传感器在采集过程中的某一时间戳内,由于车辆自身的运动,传感器坐标系原点发生了变化,即采集的对象在该时间戳内发生相对位移变化。)

  • 非自身车辆运动引起的偏差传感器在采集的过程中,由于目标运动造成的相对位移的变化(这个在相机中最明显,如拖尾现象)。)

运动补偿的方法

  • 1、纯估计方法

纯估计方法一般是基于激光雷达匀速假设,通过帧间点云匹配来计算激光雷达的位置来进行线性补偿的。常用的方法包括ICP(Iterative Closest Point,迭代最近点算法)以及其相关的变种(VICP),以及ANN(Approximate Nearest Neighbor)。


VICP缺点:
◆ 低频率激光,匀速运动假设不成立;
◆ 数据预处理和状态估计过程耦合;

  • 2、里程计辅助方法

里程计辅助方法是利用IMU信息对激光数据中每个激光点对应的传感器位姿进行求解,即求解对应时刻传感器的位姿,然后根据求解的位姿把所有激光点转换到同一坐标系下,然后封装成一帧激光数据,发布出去(可以理解为激光点云的去畸变)。

Odom 与 IMU :

  • 极高的位姿更新频率,能够比较准确地反应运动情况
  • 较高精度的局部位姿估计
  • 跟状态估计完全解耦

具体的处理过程:

  • ① 通过IMU与点云数据时间对齐,然后对每个点进行速度补偿,通过时间戳进行线性插值,然后将所有点云数据转换到初始点云的IMU坐标下;

  • ② 与上一帧的去完畸变的点云数据进行帧间匹配,计算激光姿态。并通过计算的姿态对每个点云进行线性补偿,将所有的点云数据根据时间戳转换到最后一个点云数据时间戳下,即完成了里程计方法的补偿。

  • 3、融合的方法Odom与匹配方法的结合

处理过程:

  • 用里程计方法进行矫正,去除绝大部分的运动畸变;
  • 认为里程计存在误差,但是误差值是线性分布的;(注意:位置误差的线性假设比位置线性假设更合理!!!)
  • 用ICP的方法进行匹配,匹配的结果作为真值,得到里程计的误差值;
  • 把误差值均摊在每一个点上,重新进行激光点位置修正;
  • 再次进行ICP迭代,直到收敛为止;

如下图,绿色部分为原始的点云数据粉色为去除运动畸变的点云数据,很明显前半部分粉色的点云数据超前绿色的点云数据,后半部分的点云数据近乎重合。局部放大发现,粉色的点云数据超前于绿色的点云数据,但是形状依旧类似,怀疑与没有IMU数据校准相关。

【自动驾驶传感器融合系列】02自动驾驶中的多传感器同步理论相关推荐

  1. 深度学习传感器融合技术在自动驾驶汽车感知与定位中的应用研究进展

    论文研读--Deep Learning Sensor Fusion for Autonomous Vehicle Perception and Localization: A Review 深度学习传 ...

  2. 无人驾驶传感器融合系列(四)——毫米波雷达测距原理(77GHz FMCW)

    无人驾驶传感器融合系列(四)--毫米波雷达测距原理(77GHz FMCW) 本章摘要:介绍什么是调频连续波(FMCW),它是如何进行测距的,测距分辨率分析,测距范围分析. 调频连续波测距的基本原理: ...

  3. 无人驾驶传感器融合系列(六)——毫米波雷达方位角估计(77GHz FMCW)

    无人驾驶传感器融合系列(六)--毫米波雷达方位角估计(77GHz FMCW) 本章摘要:本章主要讲解毫米波雷达如何估计障碍物的方位角,方位角的分辨率计算,方位角可估算范围. 一.方位角估计基础 根据上 ...

  4. 自动驾驶采标系列二:车载感知与车载传感器标定

    上一篇文章对自动驾驶采标问题中的一系列法律问题进行了浅析,接下来自动驾驶采标系列里面会对自动驾驶相关技术和知识点进行进一步梳理,来帮助小伙伴深入的了解自动驾驶的架构逻辑与数据采标工作的关系. 上文中提 ...

  5. Excel技能树系列02:公式中单元格的绝对引用、相对引用和混合引用

    这是Excel技能树系列的第二篇,正式开始Excel技能树知识的讲解了.如果对电子表格的起源和发展感兴趣,可以查看已经发布的Excel技能树系列01篇.本系列写给想要进阶的高频电子表格用户,本系列不适 ...

  6. 【 史上最坑爹的Java代码系列02 】Java中的三种代码块

    Java中有三种代码块,三种代码块中的代码执行的优先级是面试中会被提问到的问题. 三种代码块:静态代码块.方法代码块.普通代码块 其中,普通代码块是比较少见而且比较少使用的. package com. ...

  7. android加速度传感器应用,如何在Android智能手机中使用加速度传感器...

    您可能正在寻找的方程式是: Velocity = (Gravity*Acceleration)/(2*PI*freq) 正确使用此方程式(公制)的单位为 Gravity = mm/s squared ...

  8. 摄像头和激光雷达都被蒙蔽?UCI首次提出针对自动驾驶多传感器融合感知的攻击...

    作者丨汪宁非 编辑丨机器之心 来自加州大学尔湾分校(UC Irvine)的研究者发现,L4 自动驾驶里用的最广泛的用来提高系统鲁棒性的多传感器融合感知(Multi-Sensor Fusion base ...

  9. 万字综述|自动驾驶多传感器融合感知

    原文地址:万字综述 | 自动驾驶多传感器融合感知 翻译:种争青 校稿:董亚微 00 摘要 多模态融合是自动驾驶系统感知的一个基本任务,最近引起了许多研究者的兴趣.然而,由于原始数据的噪声.信息的未充分 ...

最新文章

  1. Linux系统的压缩技术
  2. group by 语句优化
  3. 不是计算机专业及其相关专业,对软件编程一窍不通,能学好编程吗?
  4. Unity渐变色实现
  5. Linux总结----PS命令
  6. Android编译tcpdump,android 5.0以上使用tcpdump
  7. 关于dsoframer VC++下的使用
  8. CE教程第八关——搜索4级指针
  9. Wilcoxon符合秩和检验
  10. JavaScript实现单击切换图片
  11. 梦幻西游ps计算机,五开选择PS与NE:那是因为效率高的缘故
  12. PYTHON MIP 算法实现
  13. Chapter 5 分类算法——决策树与随机森林
  14. 2021 春季新品发布会上,苹果推出了全新配件 AirTag
  15. c语言编程TLC2543AD采集,基于tlc2543的电压表c语言程序
  16. [CV] 基于机器视觉和强化学习的导航
  17. 数据分析实例——美国加州人口分析[isnull().any()/.unique()/merge/set_index/df.query/sort_values]
  18. python利用微信的方法_用Python玩转微信
  19. 如何生成lib文件 采用VS2017生成lib文件(静态库文件)以C++语言为例 静态库的生成和使用
  20. 【Proteus仿真】LCD1602+DS1307按键设置简易时钟

热门文章

  1. PB9核心之——数据窗口对象使用
  2. 读书笔记《敏捷项目管理》第七章 定义产品愿景和产品路线图
  3. python进行邮件发送以及django中利用邮件注册激活功能
  4. Dual Graph Attention Networks for Deep Latent Representation of Multifaceted Social...》论文学习笔记
  5. 计算机软考答题卡填涂格式,全国计算机软考网络工程师填涂答题卡须知
  6. ReactNative常用插件使用
  7. Graph Visualization and Navigation in Information Visualization: A Survey 译文
  8. 常用数据集预处理(dota)
  9. 软件测试---沟通技能总结
  10. abd获取手机应用的安装包