Fast-lio个人总结

2023-05-16

Lidar第一帧作为基坐标

1、lidar原始数据预处理默认不提取特征,对原始数据间隔式(间隔3个点)降采样提取。

2、imu初始化、惯性解算、误差分析、状态、协方差预测

3、Lidar与imu时间状态对齐

4、Lidar去畸变

5、构建局部地图,提供最近点索引,最小二乘方法拟合平面,构建点面残差

6、误差卡尔曼滤波

一、IMU

IMU初始化:计算加速度、角速度均值,利用均值计算方差。

IMU惯性解算、误差分析:状态、协方差预测

惯性解算:

利用相邻两个时刻的imu数据,采用离散中值法作为运动方程输入的加速度和角速度,并去除零偏。

Fast-lio认为加速度计方向是准确的,将已知当地的重力大小做先验,利用比例和先验重力微调重力大小。3自由度变为2个自由度。

计算旋转、加速度(转全局坐标系下并去重力和零偏)、位置传播、速度传播进行状态预测。

两种传播情况:当imu的head和tail在lidar帧前时,imu从head传播到tail,当lidar帧出现在imu两帧之间时,imu积分传播从lidar帧开始。

误差分析:

构建误差微分方程,得到状态转移矩阵,进行协方差传递。

二、lidar与Imu时间和状态对齐

计算lidar与imu最后时刻的时间差

通过Imu的加速度与角速度预估lidar最后时刻的速度、旋转和位置,此时仍是在imu坐标系下

通过外参计算出Lidar最后时刻世界坐标系下的状态。imu积分结果给lidar位姿提供初值。

三、Lidar点云去畸变

目的:将一帧中每个激光点云投影到最后时刻

获得每个激光点云的位姿,两帧imu之间会有许多lidar点,通过插值法,即得lidar与imu头帧的时间差,积分得lidar在imu下的位姿,再积分指lidar末尾,再通过外参转至lidar系下。

四、构建局部地图

以lidar帧最后一个状态构建立方体,立方体长宽高为48

地图管理:在ikdtree上保留当前lidar位置周围得局部地图,根据去畸变后的点云构造三维体素栅格,对体素栅格下采样达到滤波得目的(一个体素用中心点来近似,减少点的数量,保持点云形状)。

第一帧lidar数据用来构造ikdtree,其他帧加入树进行索引变换构建局部地图,当前点利用最近邻搜索找最近点5个(最远距离小于5m),最小二乘法将最近点拟合平面,获得平面方程系数,检验计算平面的有效性:将最近点集合带入平面方程得残差,残差与阈值(0.05)做比较,误差超过阈值,拟合得平面有问题,小于阈值,拟合得平面有效。计算点到平面的残差(当前点带入平面方程),构造观测方程和雅可比矩阵(残差关于优化变量求导)得到H阵。链式法则求偏导,观测方程先对状态求导,状态量对误差状态量求导。

五、误差卡尔曼滤波

名义值变量(8个、23维)--位置、姿态、旋转外参、平移外参、速度、加速度零偏、角速度零偏、重力

P阵:状态协方差矩阵(23*23维)

过程噪声维数Q(4个、12维)--加速度、角速度白噪声、加速度角速度零偏白噪声。斜对角阵

状态转移矩阵Fx(24*23维),噪声转移矩阵Fw(24*12维)。

R阵:测量噪声协方差矩阵(n*n维)一帧中有n个点云,斜对角阵

观测方程的雅可比矩阵H阵(n*12维)一帧中有n个点云,残差与位置、姿态、旋转外参、平移外参这四个优化变量有关,共12维。

计算卡尔曼滤波增益:如果量测维度小于状态维度,用传统公式(n*n维),否则用新公式(12*12维)

误差值会随着迭代次数增加而减小,当相邻两次增量之差小于一定阈值就认为是收敛,或者达到最大迭代次数也将停止迭代。用误差的后验去更新位姿并且更新P阵(状态协方差矩阵)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Fast-lio个人总结 的相关文章

  • 个人总结 - JS逆向解析

    目前加密的方式总结有下面几点 xff1a 对称加密 xff08 加密解密密钥相同 xff09 xff1a DES DES3 AES 非对称加密 xff08 分公钥私钥 xff09 xff1a RSA 信息摘要算法 签名算法 xff1a MD
  • java list中删除元素用remove()报错的fail-fast机制原理以及解决方案

    java list中删除元素用remove 报错的fail fast机制原理以及解决方案 现在有一个list 有6个元素 xff0c 值分别是1 5 5 8 5 10 xff0c 现需要删除值为5的元素 第一种 import java ut
  • FAST-LIO, ikd-Tree, FAST-LIO2, FASTER-LIO论文总结

    目录 一 FAST LIO 本文的三个创新点 xff1a FAST LIO框架 二 ikd Tree 三 FAST LIO2 四 FASTER LIO 一 FAST LIO FAST LIO三个创新点 xff1a 将IMU和雷达点特征点紧耦
  • FAST-LIVO论文翻译

    摘要 多传感器融合被证明是一种能够在SLAM任务中取得准确和鲁棒位姿估计的有效解决方案 xff0c 因而在机器人应用中具有无限可能 本文提出了FAST LIVO方法 xff0c 一种快速的雷达 惯性 视觉里程计 xff0c 其中包含了两个紧
  • 香橙派5刷Fast Drone 250

    1 购买USB网卡RTL8821CU RTL8811 RTL8723BU 三种都可以 xff0c 首次搭建买的GRIS 的RTL8821CU 2 网络环境设置好 3 刷系统 安装ROS xff0c 一路畅通 https blog csdn
  • PX4模块设计之六:PX4-Fast RTPS(DDS)简介

    64 TOC PX4模块设计之六 xff1a PX4 Fast RTPS DDS 简介 基于PX4开源软件框架简明简介的框架设计 xff0c 逐步分析内部模块功能设计 PX4 Fast RTPS DDS 具有实时发布 订阅uORB消息接口
  • LIO-SAM中的mapOptmization

    前言 最近在学习LIO SAM源码的时候 xff0c 发现LIO SAM这套代码调用了比较多库的内置API xff0c 里面涉及的一些细节也比较多 xff0c 整个工程还是比较清晰的 xff0c 值得学习 xff01 LIO SAM这个框架
  • 【Lane】 Ultra-Fast-Lane-Detection 复现

    引言 笔者Ultra Fast Lane Detection专栏链接 x1f517 导航 xff1a Lane Ultra Fast Lane Detection 复现 Lane Ultra Fast Lane Detection xff0
  • 用Java去掉中文中括号【】,你学废了吗?

    大家好 今天我有多了一个需求 甲方爸爸让我取中文括号里的文本 这可怎么办嘛 费劲心思 i get do not bb show me code ok String msg sadasd 的范德萨发斯蒂芬斯蒂芬 打撒所所多多 String r
  • 域名简单认识

    什么是域名 域名 Domain Name 是由一串用 点 分隔的字符组成的Internet上某一台计算机或计算机组的名称 用于在数据传输时标识计算机的电子方位 有时也指地理位置 地理上的域名 指代有行政自主权的一个地方区域 域名是一个IP地
  • 基于unity+高通AR项目的一些总结

    今天 公司做的第一款AR项目终于在苹果appstore上架了 将近三个多月的踩坑和摸索也终于告一段落了 接下来就是不断的进行版本优化和更新 这将是一个漫长的过程 在此 对自己三个多月的开发做一个阶段性的总结 也希望能够帮到一些正在用unit
  • FasterTransformer 安装

    第一 安装TensorRT FasterTransformer 支持cuda10 0 所以TensorRT也下cuda10 0对应版本 1 下载TensorRT https developer nvidia com nvidia tenso
  • react 重定向Redirect

    如果路径是 跳转到 home
  • 支付宝小程序中网络请求 my.request({}) 的用法

    支付宝小程序网络请求官方文档 https docs alipay com mini api network Page data name 支付宝小程序 onLoad query 页面加载 在这里请求接口 console info Page
  • angular-cli中引入ng-zorro-antd(蚂蚁框架)

    首先你要确保angular cli环境搭建成功 第一步 进入项目文件夹 执行以下命令后将自动完成 ng zorro antd 的初始化配置 包括引入国际化文件 导入模块 引入样式文件等工作 ng add ng zorro antd 安装完成
  • next.js中引入sass

    第一步 安装sass npm install save zeit next sass node sass 第二步 在项目根目录添加 next config js 文件 用于指示Next加载对用的功能 const withSass requi
  • 解决合并单元格筛选时只出现首行的小技巧

    前言 Excel小窍门 让办公更便捷 情景 合并单元格后 单一筛选时只会显示对应的第一行数据 原因 Excel筛选单元格时 遇到不连续区域 即中间有空白单元格 会识别不到后续内容 合并单元格后 除首行外 其余行的值会被自动清空 从而导致在筛
  • [R语言]R包的安装&帮助获取

    本文主要参考 Paul Teetor R语言经典实例 一书 在R语言中 包含的包中有各种应用函数 1 install packages packagename 安装R包 library package name 载入包 对于base包可省略
  • linux入门学习(3权限管理)

    权限管理 一 文件或目录的权限查看 1 文件权限的查看 两种查看文件详细信息的方法 ls l file 查看file文件的详细信息 如果是目录 则是查看该目录下的所有子文件的详细信息 ls ld dir 查看dir目录的详细信息 2 文件权
  • react route和Switch的区别 +嵌套路由

    Router 指定路由规则 Router默认也是模糊匹配 Router的path可以不写 如果不写 表示该组件一定匹配 Switch 选择 开关 Switch中只有一个组件能匹配 只会显示第一个匹配的组件 exact 表示精确匹配

随机推荐

  • 龙芯1B核心板使用alsa音频播放设置,aplay播放

    龙芯1B核心板是默认启用alsa音频工具的 只需要进行一些配置就能使用 1 先检查你的板子的alsa工具是否正常 aplay l 可以查看 xff0c 是否已正确安装音频驱动 如果正常 xff0c 能看到你的音频驱动的信息 可能会出现 xf
  • centos 64bit安装arm-none-linux-gnueabi交叉编译工具链

    xfeff xfeff yum install glibc i686在centos中安装arm none Linux gnueabi有两种方法 xff0c 一种是apt get 安装容易但是不易成功 xff0c 一种是下载压缩包或安装程序
  • 旋转矩阵和欧拉角

    欧拉角介绍 旋转可以参考两种坐标系 内部坐标系 XYZ 角度 外部坐标系 xyz 角度 不考虑参考坐标系情况下 按照旋转方式可以分为两种 Proper Euler angles z x z x y x y z y z y z x z x y
  • SIP 鉴权 & HTTP 认证

    sip 鉴权是基于摘要签名认证的 具体来说 每一个用户都有一个用户名和密码 用户名和密码在客户端和SIP 服务器的数据库中都有保存 在认证的过程中 客户端将自己的信息 用户名 密码 url 等信息 做一些复杂的MD5 或者SHA256 SH
  • ROS——TF坐标变换

    TF功能包 创建功能包 cd catkin ws src catkin creat pkg learning tf roscpp rospy tf turtlesim 如果此时依赖包已有tf xff0c 后文中CMakeLists文件中的f
  • Gazebo——仿真平台搭建(基于Ubuntu20.04)

    目录 Gazebo安装配置 创建仿真环境 仿真使用 Rviz查看摄像头采集的信息 Kinect仿真 问题解决 xff1a 1 gazebo SpawnModel Failure model name mrobot already exist
  • 单片机要学多久可以找到工作?能找到哪类的工作

    单片机学多久能工作 单片机学好了能应聘什么工作 xff1f 从事单片机开发10年 xff0c 我见证了这个行业的成长 xff0c 最明显的就是这几年的工资涨幅 大家好 xff0c 我是小哥 xff0c 10年前我还是个对前景充满憧憬的小屌丝
  • 互联网企业部分面试笔试真题以及考察知识点总结(一)

    1 static的作用 1 1用static关键字修饰的静态变量 静态变量属于类 xff0c 在内存中只有一个复制 xff0c 只要静态变量所在的类被加 载 xff0c 这个静态变量就会被分配空间 1 2 static成员方法 Java中提
  • 史上最全网址导航大全,让世上没有找不到的好东西

    收录的导航网址大全 好用和常用的网址几乎都在里面 个人喜欢往浏览器书签收藏夹里塞喜欢的干货和网站 xff0c 以至于收藏夹里有着几千条网址 xff0c 所以比较喜欢导航 xff0c 但是浏览器原生自带的导航又太low 所以一般自己设置打开浏
  • HTTP的认证方式之DIGEST 认证(摘要认证)

    核心步骤 xff1a 步骤 1 xff1a 请求需认证的资源时 xff0c 服务器会随着状态码 401Authorization Required xff0c 返回带WWW Authenticate 首部字段的响应 该字段内包含质问响应方式
  • 相机标定评价标准

    相机标定的实验一般根据图像数据的类型分为两种 xff1a 1 仿真实验 2 实际场景的操作性实验 目前为止 xff0c 还没有形成一套完善的用于评价相机标定方法的标准体系 xff0c 通常采用的评价准则如下 xff1a 1 标定方法是否具有
  • ubuntu下串口工具的安装与使用

    1 概述 作为一个嵌入式开发人员 xff0c 串口是开发过程中不可或缺的工具之一 xff0c window下有各种各样的串口工具 xff0c 使用起来很方便 xff0c 这里不再做过多陈述 xff0c 这里主要介绍Ubuntu 16 04
  • Ubuntu查看文件大小或文件夹大小

    Ubuntu查看文件大小或文件夹大小 一 查看文件大小 查看文件大小的命令 xff1a ls l filename 会在终端输出 xff1a rw r r 1 root root 2147483648 Mar 5 09 39 filetem
  • 结构体数据对齐

    结构体数据对齐 结构体数据对齐 xff0c 是指结构体内的各个数据对齐 在结构体中的第一个成员的首地址等于整个结构体的变量的首地址 xff0c 而后的成员的地址随着它声明的顺序和实际占用的字节数递增 为了总的结构体大小对齐 xff0c 会在
  • 2016你配得上更好地自己

    传统里我一直觉得过完春节才是一年结束的时候 xff0c 但是现在慢慢习惯阳历的计算 xff0c 2017年1月1日 xff0c 看着空间里面新年祝福和期待 xff0c 突然觉得这才是过年 2016年就这样走了 xff0c 以后我再也回不到2
  • 树莓派镜像备份与恢复文章

    在做完下属步骤以后 xff0c 需要考虑分区表 xff0c 将分区表复制到镜像里 xff0c 否则系统无法启动 xff0c 而且还要回利用gparted dev loop0以及fdisk l dev loop0等命令 xff0c 查看分区类
  • 在树莓派上将现有系统复制到新存储卡(转载 )

    在树莓派上将现有系统复制到新存储卡 xff08 转载 xff09 http www eeboard com bbs thread 39663 1 1 html 最初 xff0c 使用树莓派的时候 xff0c 也许也只是为了新鲜 xff0c
  • 【c/c++】单链表、头指针、头结点、首元节点

    链表中第一个结点的存储位置叫做头指针 xff0c 那么整个链表的存取就必须是从头指针开始进行了 之后的每一个结点 xff0c 其实就是上一个的后继指针指向的位置 这里有个地方要注意 xff0c 就是对头指针概念的理解 xff0c 这个很重要
  • VINS-mono学习总结

    Vins mono是一个后端基于非线性优化的 单目与IMU紧耦合的融合定位算法 整体 xff1a 1 预处理模块 视觉 xff1a 特征点提取与追踪 IMU xff1a 惯性解算与误差状态分析 计算预积分量 2 初始化模块 xff08 旋转
  • Fast-lio个人总结

    Lidar第一帧作为基坐标 1 lidar原始数据预处理默认不提取特征 xff0c 对原始数据间隔式 xff08 间隔3个点 xff09 降采样提取 2 imu初始化 惯性解算 误差分析 状态 协方差预测 3 Lidar与imu时间状态对齐