专栏首页深度学习和计算机视觉激光雷达与相机标定的时间戳同步问题

激光雷达与相机标定的时间戳同步问题


相机和激光雷达之间的时间戳同步问题一直是实时跑SLAM的先决条件。本文试图以最清晰的思路去讲明白这个事情。

开始本文之前,先介绍几个基本概念。

  1. 相机特性-曝光和读出

相机获取一帧图像分为曝光和读出两个阶段。相机使用的传感器不同,相机的曝光时间和读出时间的重叠关系也有所不同,分为交叠曝光非交叠曝光两种。交叠曝光和非交叠曝光相比,交叠曝光可以减少曝光时间对出图时间的影响。

非交叠曝光是指当前帧的曝光和读出都完成后,再进行下一帧的曝光和读出。非交叠曝光帧周期大于曝光时间与帧读出时间的和。

内触发模式非交叠曝光

交叠曝光是指当前帧的曝光和前一帧的读出过程有重叠,即前一帧读出的同时,下一帧已经开始曝光。交叠曝光帧周期小于等于曝光时间与帧读出时间的和。

内触发模式交叠曝光

对!上一段就是为了告诉你:后文叙述中无论当前帧曝光时间和上一帧的读出时间是否重叠都不要惊讶。

  1. 图像采集:触发模式(外部输入)

相机的触发模式分为内触发模式和外触发模式 2 种。

内触发模式:相机通过设备内部给出的信号采集图像。 外触发模式:相机通过外部给出的信号采集图像。外部信号可以是软件信号,也可以是硬件信号,主要包含软触发和硬件触发。外触发模式如图:

外触发模式

软触发:触发信号由软件发出(也可以利用相机SDK提供的API接口进行软触发)。

硬件触发:外部设备通过相机的 I/O 接口与相机进行连接,触发脉冲信号由外部设备给到相机进行采图。其实是直接对相机内部寄存器进行读写。下图是海康相机的电源IO的6-pin线缆:

海康相机电源及IO接口(6-pin Hirose)

其中,海康相机有1个光耦隔离输入Line0+,1个可配置输入输出Line2+,可选择一个配置为输入信号。

  1. 触发输出

相机触发输出信号为开关信号,可用于控制报警灯、光源、PLC等外部设备。触发输出信号可通过Strobe 信号实现。

相机的曝光发生时,会立即输出一个Strobe信号,该信号为高电平有效。后文我们主要使用该信号对Lidar等其他传感器进行硬触发。这里有一个Strobe的预输出的概念。Strobe信号早于曝光生效。其工作原理为延迟曝光先进行Strobe输出。该功能可应用于响应比较慢的外部设备。Strobe预输出时序如图所示。(后面会讲为啥要延迟曝光)

Strobe信号预输出时序

现在我们回到正题吧,现在讲起来就很快了。

要同步相机和激光雷达的时间戳主要有三个方式,硬触发、软触发、软触发+硬触发。下面我以手绘示意图的形式一一介绍。

先说硬触发吧。一个MCU产生脉冲信号对三个传感器设备进行硬触发。

对于软触发+硬触发来说,可以先用相机SDK的API对一个相机进行软触发,然后利用相机的外触发信号Strobe对雷达和相机等其他传感器进行硬触发。

这里需要注意一个问题,如果进行软触发的第一个相机在曝光的同时发出Strobe信号,其他被硬触发的传感器总归是晚了一步,不能完全同步。因此引出了之前Strobe的预输出的概念,即先进行Strobe输出再延迟曝光。

配置该模式时注意四点:

1.上升沿or下降沿的触发方式; 2.有效电平宽度,电平幅值,你要知道能触发Lidar的最低幅值; 3.Strobe预输出 4.两边电平信号是否一样,3v or 5v是否需要升压… 最后讲讲不被推荐的软触发。

首先调用API操作相比于硬触发(对传感器内部寄存器直接进行读写操作)明显是慢了,执行第二句命令API(2)前API(1)就已经花了些时间。

//读取lidar和image数据的线程1
while(1)
{
API(1); //软触发第一个sensor
API(2); //软触发第二个sensor
//假设脉冲周期为0.5s
}
//处理数据线程2
for(i=0;i<nimage;i++)
{  
    t1 = getTickCount();
//部分程序有互斥锁
    t2 = getTickCount();
    Time = (t2 - t1) / getTickFrequency(); //当前帧处理时间
    sleep(1/fps-Time);
}

如上图示意,如果处理单帧数据的时间超过0.5s,线程1就会读到下一帧数据,就会导致线程2数据混乱。因此线程2单帧处理时间需要小于0.5s,且每帧需要等待(1/fps-当前帧处理时间)。

本文分享自微信公众号 - 小白学视觉(NoobCV)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-05-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 论文简述 | CamVox: 一种低成本、高精度的激光雷达辅助视觉SLAM系统

    将激光雷达与基于相机的同步定位和建图(SLAM)相结合是提高整体精度的有效方法,尤其是在大规模室外场景下.低成本激光雷达(如Livox激光雷达)的最新发展使我们...

    3D视觉工坊
  • 基于点云强度的3D激光雷达与相机的外参标定

    本文提出一种新颖的方法,可以对3D lidar和带有标定板的相机进行全自动的外参标定,提出的方法能够从lidar的每一帧点云数据中利用强度信息提取标定板的角点。...

    点云PCL博主
  • AR Mapping:高效快速的AR建图方案

    本文仅做学术分享,如有侵权,请联系删除。欢迎各位加入免费知识星球,获取PDF论文,欢迎转发朋友圈。内容如有错误欢迎评论留言,未经允许请勿转载!

    点云PCL博主
  • SLAM综述(4)激光与视觉融合SLAM

    SLAM包含了两个主要的任务:定位与构图,在移动机器人或者自动驾驶中,这是一个十分重要的问题:机器人要精确的移动,就必须要有一个环境的地图,那么要构建环境的地图...

    点云PCL博主
  • LVI-SAM:紧耦合的激光视觉惯导SLAM系统(Tixiao Shan新作,已开源)

    我相信很多人对激光视觉惯导融合的系统都是这样设计的,但是最难的是把自己的想法保质保量的实现出来。我们做不到但是大佬可以!

    计算机视觉
  • LVI-SAM:紧耦合的激光视觉惯导SLAM系统(Tixiao Shan新作,已开源)

    我相信很多人对激光视觉惯导融合的系统都是这样设计的,但是最难的是把自己的想法保质保量的实现出来。我们做不到但是大佬可以!

    3D视觉工坊
  • SLAM | 激光SLAM中开源算法对比

    好久没有更新SLAM系列的文章了,前面我们讲到了激光SLAM技术。基于激光雷达的同时定位与地图构建技术(simultaneous localization an...

    AI算法修炼营
  • 同时定位与地图创建综述

    SLAM包含两个主要任务,定位和建图。这是移动机器人自主完成作业任务需要解决的基本问题,特别是在未知环境的情况下,移动机器人既要确定自身在环境中的位姿,又要根据...

    3D视觉工坊
  • 单目图像和稀疏雷达数据深度估计

    标题:Depth Estimation from Monocular Images and Sparse Radar Data

    3D视觉工坊
  • 基于运动相关分析的实时多源异构传感器时空标定方法研究

    论文作者:Kejie Qiu, Tong Qin, Jie Pan, Liu Siqi, and Shen Shaojie

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

    标题:LOL: Lidar-only Odometry and Localization in 3D point cloud maps

    点云PCL博主
  • 通俗理解SLAM算法

    SLAM (simultaneous localization and mapping),也称为CML (Concurrent Mapping and Loca...

    智能算法
  • CRLF:道路场景中基于线特征的激光雷达与相机自动标定

    标题:CRLF: Automatic Calibration and Refinement based on Line Feature for LiDAR an...

    点云PCL博主
  • 【系列文章】面向自动驾驶的三维点云处理与学习(3)

    标题:3D Point Cloud Processing and Learning for Autonomous Driving

    点云PCL博主
  • 【多传感器标定】开源 | 基于语义分割的实时激光雷达和相机标定算法

    论文地址: http://arxiv.org/pdf/2003.04260v1.pdf

    CNNer
  • 2020腾讯犀牛鸟精英人才培养计划课题介绍(三)——自动驾驶

    ? 精英人才培养计划是一项校企联合人才培养项目,入选学生将受到业界顶尖技术团队与高校导师的联合指导及培养。培养期间,学生将获得3个月以上到访腾讯开展科研访问的...

    腾讯高校合作
  • 一文看懂激光雷达

    与雷达工作原理类似,激光雷达通过测量激光信号的时间差和相位差来确定距离,但其最大优势在于能够利用多谱勒成像技术,创建出目标清晰的 3D 图像。激光雷达通过发射和...

    小白学视觉
  • 【论文解读】深度学习+深度激光=移动车辆的状太估计

    • 数据集:distilled Kitti Lidar-Motion dataset

    小白学视觉
  • 【系列文章】面向自动驾驶的三维点云处理与学习(2)

    标题:3D Point Cloud Processing and Learning for Autonomous Driving

    点云PCL博主

扫码关注云+社区

领取腾讯云代金券