技术分享 | 带你解读Kalibr和VINS标定参数(转载自阿木)

2023-12-18 03:58

本文主要是介绍技术分享 | 带你解读Kalibr和VINS标定参数(转载自阿木),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载自:https://mp.weixin.qq.com/s/Hqi6iUS-VGIQTmAB0Xa_nQ

技术分享 | 带你解读Kalibr和VINS标定参数

原创 阿木实验室 阿木实验室 昨天

我们通过上次的IMU和双目相机联合标定已经得到了一些文件,我们仅需要使用里面的一些文件,下面就带大家看下。

标定完大概会得到下面这几个文件,其中下面画红色圈的是最为重要的。

图片

1.相机标定参数解读

我们打开第一个文件后,可以看到

图片

这个就是IMU和左目之间的变换矩阵,是最为重要的一个参数,如果这个精度低于1-2°,那么整个系统就会变得极为不鲁棒。下面还会有个右目的,这里就不在赘叙。

再往下看,下面就是相机的一些内参。

distortion_coeffs指的是畸变参数,针孔相机一般默认k3为零。

Intrinsics 指的是相机内参数。 

最后一行为相机和IMU之间的时间戳。

图片

2.IMU参数解读

我们再打开imu这个文件,就是IMU被标定出来的误差。陀螺仪和加速度计的噪声,以及随机游走。

图片

还有一个PDF文件过于花哨,这里不展示了。

到此为止,我们就基本解读了一下标定结果。我们现在要做的就是把它们用到VINS中。

3.VINS配置参数文件

3.1首先是订阅的话题

图片

这里的话题名称是根据你自己的决定,但是如果传感器用的是D435i,那么话题名称基本不用修改。

3.2双目相机的内参

图片

读取当前路径下双目相机的内参配置文件,以及图像发布大小。

3.3IMU和相机之间的变换矩阵

下面是IMU坐标系和Camera坐标系之间的相对变换矩阵,主要是旋转矩阵比较重要,平移向量对系统鲁棒性影响较小。

图片

3.4特征点跟踪的一些参数

图片

3.5优化参数

图片

3.6IMU参数,这个可以由之前的标定得到

图片

3.7在线估计同步时间差

D435i说是已经做好了硬件同步,但是Kalibr标定出来还是会有0.006左右的时间误差。

图片

到此为止我们解读完了所有需要用到的参数,接下来就是正确的把它们用到VINS中。

阿木实验室致力于前沿IT科技的教育和智能装备,让机器人研发更高效!

公众号:阿木实验室 ( 领取免费资料包)

官方淘宝店:阿木实验室(可购买硬件配件)

硬件咨询:yanyue199506(欢迎洽谈合作)

课程咨询:jiayue199506 (免费领取机器人工程师学习计划)

- End -

技术发展的日新月异,阿木实验室将紧跟技术的脚步,不断把机器人行业最新的技术和硬件推荐给大家。看到经过我们培训的学员在技术上突飞猛进,是我们培训最大的价值。如果你在机器人行业,就请关注我们的公众号,我们将持续发布机器人行业最有价值的信息和技术。

这篇关于技术分享 | 带你解读Kalibr和VINS标定参数(转载自阿木)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/506966

相关文章

Python标准库datetime模块日期和时间数据类型解读

《Python标准库datetime模块日期和时间数据类型解读》文章介绍Python中datetime模块的date、time、datetime类,用于处理日期、时间及日期时间结合体,通过属性获取时间... 目录Datetime常用类日期date类型使用时间 time 类型使用日期和时间的结合体–日期时间(

C语言中%zu的用法解读

《C语言中%zu的用法解读》size_t是无符号整数类型,用于表示对象大小或内存操作结果,%zu是C99标准中专为size_t设计的printf占位符,避免因类型不匹配导致错误,使用%u或%d可能引发... 目录size_t 类型与 %zu 占位符%zu 的用途替代占位符的风险兼容性说明其他相关占位符验证示

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

springboot自定义注解RateLimiter限流注解技术文档详解

《springboot自定义注解RateLimiter限流注解技术文档详解》文章介绍了限流技术的概念、作用及实现方式,通过SpringAOP拦截方法、缓存存储计数器,结合注解、枚举、异常类等核心组件,... 目录什么是限流系统架构核心组件详解1. 限流注解 (@RateLimiter)2. 限流类型枚举 (

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

OpenCV在Java中的完整集成指南分享

《OpenCV在Java中的完整集成指南分享》本文详解了在Java中集成OpenCV的方法,涵盖jar包导入、dll配置、JNI路径设置及跨平台兼容性处理,提供了图像处理、特征检测、实时视频分析等应用... 目录1. OpenCV简介与应用领域1.1 OpenCV的诞生与发展1.2 OpenCV的应用领域2

Python实现PDF按页分割的技术指南

《Python实现PDF按页分割的技术指南》PDF文件处理是日常工作中的常见需求,特别是当我们需要将大型PDF文档拆分为多个部分时,下面我们就来看看如何使用Python创建一个灵活的PDF分割工具吧... 目录需求分析技术方案工具选择安装依赖完整代码实现使用说明基本用法示例命令输出示例技术亮点实际应用场景扩

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Python中你不知道的gzip高级用法分享

《Python中你不知道的gzip高级用法分享》在当今大数据时代,数据存储和传输成本已成为每个开发者必须考虑的问题,Python内置的gzip模块提供了一种简单高效的解决方案,下面小编就来和大家详细讲... 目录前言:为什么数据压缩如此重要1. gzip 模块基础介绍2. 基本压缩与解压缩操作2.1 压缩文

解读GC日志中的各项指标用法

《解读GC日志中的各项指标用法》:本文主要介绍GC日志中的各项指标用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、基础 GC 日志格式(以 G1 为例)1. Minor GC 日志2. Full GC 日志二、关键指标解析1. GC 类型与触发原因2. 堆