SLAM从入门到精通(参数标定)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        标定是slam开发过程中很重要的一个环节。这部分内容涉及到很多方面,比如说传感器、比如说算法、比如说机械,总之好的标定不仅仅决定了系统的稳定性,还对整个系统的性能产生很大的影响。以汽车行业为例,标定工程师早就是一个被广泛接受的职业类型。拿发动机来说,我们都知道现在的汽车一般都会有很多的工作模式,有经济型、舒适性和运动型这几种。其实,不管哪种模式,这发动机里面的算法都是一样的,只是不同的工作模式对应着不同的参数标定。

1、传感器内参标定

        传感器内参标定,相信大家应该比较好理解。这些内参有的是制造过程造成的,比如imu内部的x/y/z轴方向差异;有的是传感器特性造成的,比如摄像头图像的畸变;还有的是由于设备运动造成的,比如说lidar数据在设备运动中造成的运动畸变等等。当然,不管是什么原因,只要我们发现传感器产生了数据畸变,就有必要对它进行建模和处理,这是少不了的。

2、传感器外部标定

        外部标定,也就是传感器安装位置差异造成的系统差异。我们都知道,不管设备安装的多么好,位置有多么准,那么它和实际的要求还是会产生一定的偏差。这些偏差,对于精度常常会有很大的影响。比如说机器人舵轮的初始位置偏差、lidar的安装位置偏差、里程计的位置偏差等等,这些偏差都要想办法通过建模的方法去进行处理,尽可能地去降低和消弭。

3、传感器功能标定

        我们使用传感器,一般都是为了解决特定的问题而引入的。通常情况下,传感器商家已经实现了内部算法。但对于传感器厂家来说,他很多时候并不知道这个传感器是用来做什么用的。所以,大多数厂家会提供一个上位机工具,用户可以用这个工具对传感器进行功能标定,比如避障雷达里面的避障范围设定、camera里面的roi区域设定等等,都属于传感器功能标定。

4、自定义算法标定

        算法标定涉及到很多方面,比如说精度,比如说算力,比如说响应速度等等。大家能够想起来比较多的算法标定估计就是pid了,这是最容易直观感受到的算法标定。在实际生产中,基本上只要和物理世界产生联系,都少不了算法标定,这是难免的。因为一方面要保证产品性能和稳定性,而另外一方面先验知识、安全性和产品差异,这些也需要通过参数标定的方式落实下去,这样才能保证系统的稳定性。

5、机械差异标定

        机械差异比较好理解,主要就是生产环节的差异、产品本身的差异等的。以机器人为例,它的底盘类型、长、宽、高、重心的位置、舵轮的位置、lidar的位置、最小速度、最大速度、最小加速度、最大加速度、最小减速度、最大减速度、最小转弯半径等等,这些都属于机械差异的范畴,都是需要我们去进行配置和处理的。

6、和其他设备对接的参数设置

        机器人在实际应用中一般是需要和其他设备进行对接的,这个时候485的串口编号、波特率、ip、web服务器ip、端口、数据库配置、用户名、账号、485寄存器地址、485寄存器偏移位置等等,这些也是需要进行配置处理的。通常情况下,我们也会把这些需要的信息放到一个配置文件里面,而不是硬编码到代码当中。

7、标定的基本原则

        要想完成标定,第一,需要知道标定的内容和背后的基本原理,不能为了标定而标定;第二,如果是传感器的标定,一般是拿精度高的传感器,去标定低精度的传感器,比如说,用lidar去标定其他传感器的外参。

        此外很多的时候,标定方法不一定只有一种,如果能用多种方法来交叉标定,往往可以帮助我们确认当前标定是否正确。此外,对于研发工程师来说,最好将标定的过程做成自动标定的算法,这样方便现场工程师快速地利用软件进行现场标定。

8、关于标定更多的信息

        网上关于标定的文章,都比较零散。下面这个链接,算是不多的有价值的系列标定文章,有兴趣的同学可以好好看一下,肯定有不少的收获。

https://docs.seer-group.com/d/1557959282007326722.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/160918.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【软著写作】软著写作过程记录

文章目录 整体流程图:写在前面:一、准备材料1 准备材料2 申请盖章 二、软件登记1 注册账号2 填报软著 整体流程图: 写在前面: 这两天填报了一篇软著,正好将以前第一次填报时,踩的一些坑和过程记录了一下&am…

AD CS证书攻击与防御:ESC1

简介 2021年的BlackHat大会上,Will Schroeder和Lee Christensen发布了关于Active Directory Certificate Services 利用白皮书《Certified Pre-Owned - Abusing Active Directory Certificate Services》。 攻击对象为AD CS,攻击手法主要是利用证书模版…

045_第三代软件开发-U盘监测

第三代软件开发-U盘监测 文章目录 第三代软件开发-U盘监测项目介绍U盘监测原理解释源代码 关键字: Qt、 Qml、 USB、 Disk、 文件 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QML(Qt Meta-Object Language)和…

BO(Business Object)是一种用于表示业务对象的设计模式

BO是 Business Object 的缩写,是一种用于表示业务对象的设计模式。在Java中,BO的主要作用是 封装业务逻辑,实现业务流程的可重用性和可维护性。 BO主要有以下几个作用: 实现业务逻辑的封装:将业务逻辑封装在BO对象中&a…

城市内涝怎么预警?万宾科技内涝积水监测仪

在城市运行过程中,城市内涝问题频繁出现,影响城市管理水平的提升,也会进一步减缓城市基础设施建设。尤其近几年来,城市内涝灾害频繁出现,在沿海地区内涝所带来的安全隐患成为城市应急管理部门的心头大患。城市内涝的背…

【Linux进行时】磁盘文件结构

磁盘 上篇文章,我们提及文件是存放在磁盘当中,本篇文件我们来了解一下磁盘的结构!!! 磁盘的概念: ❓什么是磁盘? 💡磁盘(disk)是指利用磁记录技术存储数据…

Spring基础

文章目录 Spring基础IoC容器基础IoC理论第一个Spring程序Bean注册与配置依赖注入自动装配生命周期与继承工厂模式和工厂Bean注解开发 AOP面向切片配置实现AOP接口实现AOP注解实现AOP Spring基础 Spring是为了简化开发而生,它是轻量级的IoC和AOP的容器框架&#xff…

【排序算法】 计数排序(非比较排序)详解!了解哈希思想!

🎥 屿小夏 : 个人主页 🔥个人专栏 : 算法—排序篇 🌄 莫道桑榆晚,为霞尚满天! 文章目录 📑前言🌤️计数排序的概念☁️什么是计数排序?☁️计数排序思想⭐绝对…

年终述职技巧

一个共识 给个交代 复盘 给自己的交代 展示 给公司的交代 三维构思法 认知与成长 以己为师 萃取与迭代 以事为师 响应与前瞻 以人为师(“作者视角”转变为“观众视角”,听懂、感兴趣、认可、有收获) 六点通关术 论证价值点 工作成果&#x…

100量子比特启动实用化算力标准!玻色量子重磅发布相干光量子计算机

2023年5月16日,北京玻色量子科技有限公司(以下简称“玻色量子”)在北京正大中心成功召开了2023年首场新品发布会,重磅发布了自研100量子比特相干光量子计算机——“天工量子大脑”。 就在3个月前,因“天工量子大脑”在…

数字化饲料工厂中常见的系统及其介绍

数字化饲料工厂是基于先进技术和数字化平台构建的现代化饲料生产系统,它包含了多种软件、硬件和基础设施系统。以下是数字化饲料工厂中常见的系统及其介绍: 一、自动化控制系统:包括PLC(可编程逻辑控制器)系统、SCADA&…

Voice vlan、ICMP、单臂路由、mux-vlan

目录 一,Voice VLAN Voice vlan配置命令 一,问:已知网络中一台服务器的IP地址,如何找到这太服务器在哪台交换机的哪个接口上​编辑 思路: 二,ICMP协议 三,ICMP案例分析​编辑 四&#xf…