SLAM

2024/4/11 18:16:01

关于lego-loam的总结(一)

最近在测试legoloam的时候,总是会碰到雷达坐标系剧烈漂移的情况,即使现实中雷达静止,在rviz中的显示也漂移的很厉害。建的地图也十分糟糕。 首先明确,legoloam中真正实现功能的代码只有三个部分:image.cpp map.cpp fe…

[SLAM] opencv-python的2D-2D视觉里程计(参考高老师的视觉slam十四讲)

这里写目录标题项目场景直接上代码实验最后的话项目场景 最近在鼓捣slam相关的技术,奈何身边我知道的只有我一个人在学习slam技术,没有人一块交流,感觉学习很乏力,不知道从部分开始做起。 看了高博的视觉slam十四讲之后决心从视觉…

Sim3 问题

欢迎访问我的博客首页。 Sim3 问题1. 相似变换算法2. 使用 G2O 求相似变换2.1 用相对位姿优化两个坐标系的位姿2.2 三维点之间的相似变换3. 参考相似变换用于单目 SLAM。 1. 相似变换算法 void Sim3Solver::ComputeSim3(...);2. 使用 G2O 求相似变换 这里介绍用 G2O 求解相似变…

李群与李代数

欢迎访问我的博客首页。 李群与李代数1. 李群李代数与李括号1.1 李群1.2 李代数1.3 李括号2. 指数与对数映射2.1 指数映射3. 李代数求导与扰动模型3.1 李代数求导3.2 扰动模型4. SLAM 中的李代数求导4.1 SO(3) 上的李代数求导4.2 SE(3) 上的李代数求导4.3 Sim(3) 上的李代数求导…

LOAM 论文

欢迎访问我的博客首页。 LOAM1. LOAM 概述1.1 主要贡献1.2 硬件1.3 符号表示与任务描述1.4 软件2. 特征点提取3. 特征点匹配4. 运动估计5. 里程计算法6. 地图创建算法7. 附录7.1 数量积与向量积7.2 点到直线的距离7.3 点到平面的距离7.4 协方差矩阵的特征值与特征向量8. 参考1.…

(01)ORB-SLAM2源码无死角解析-(54) 闭环线程→闭环检测:寻找闭环候选关键帧 LoopClosing::DetectLoop()

讲解关于slam一系列文章汇总链接:史上最全slam从零开始,针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解:https://blog.csdn.net/weixin…

(01)ORB-SLAM2源码无死角解析-(42) EPnP 源代码分析(2)→compute_pose():控制点选取,系数计算

讲解关于slam一系列文章汇总链接:史上最全slam从零开始,针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解:https://blog.csdn.net/weixin…

Davison's MonoSLAM测试经验

Testing Davisons MonoSLAM 半个月前从Davison的主页上下载了monoSLAM的源码,在ubuntu 6.10(gcc 4.1.2)上编译通过,并运行正常,最近又将它移植到windows平台,主要是考虑以后的兼容使用。其中有一些心得和经验,记录于此…

卡尔曼家族从零解剖-(02)贝叶斯滤波-知其所以然

讲解关于slam一系列文章汇总链接:史上最全slam从零开始,针对于本栏目讲解的 卡尔曼家族从零解剖 链接 :卡尔曼家族从零解剖-(00)目录最新无死角讲解:https://blog.csdn.net/weixin_43013761/article/details/133846882 文末正下方中心提供了本人 联系…

ICP 问题之 SVD

欢迎访问我的博客首页。 ICP 问题之 SVD1. SVD 求 ICP1.1 构造最小二乘问题1.2 求解最小二乘问题1.3 求位姿2. 例子2.1 代码实现2.2 实例分析2.3 使用 Eigen 库3. 参考ICP 即 Iterative Closest Point,迭代最近点。已知三维点在两个坐标系中的坐标,求这两…

连续蒙特卡罗方法(Sequential Monte Carlo Methods)

源自:http://www.stats.ox.ac.uk/~doucet/samsi_course.html* Check the more recent SMC & Particle Filters Resources 2012* Videolecture: Tutorial SMC Methods at NIPS 2009 (with Nando De Freitas) * Slides of the NIPS tutorial slides1 slides2Obje…

占据栅格地图(Occupancy Grid Map)

转至:https://zhuanlan.zhihu.com/p/21738718 写在前面:这篇文章是Coursera上的课程(Robotics: Estimation and Learning),权当笔记,激光传感器的数据可以在课程内下载。这一周的内容比较简单,…

[SLAM]高博视觉SLAM十四讲ch4中useSophus报错

问题描述 在正常安装了Sophus库后,运行高博的代码,发现如下错误 #### #### Running command: "make -j16 -l16" in "/home/a/SLAM/slam_ws/build" #### Scanning dependencies of target useSophus [ 33%] Built target hello [ 3…

雷达激光和相机标定总结之autoware(亲测好用)

参考链接如下: 激光雷达和相机的联合标定(Camera-LiDAR Calibration)之Autoware 激光雷达(lidar)和相机(camera)联合标定调研(基于Autoware的详细步骤) 无人驾驶汽车系统入门(二十…

ORB_SLAM3_IMU预积分理论推导(残差)

残差 预积分的测量值采用一阶近似修正,免去了积分重新运算,降低计算量状态包含: R i , p i , v i , R j , p j , v j , δ b i

【深蓝学院】手写VIO第9章--课程总结--笔记

0. 内容 1. 课程回顾 最大后验概率MAP,如果不知道先验则是MLE,如果观测服从高斯分布(关于为什么服从高斯分布有个pdf)则可转化为LSP。 残差构建主要讲了IMU残差的构建,包括预积分模型,误差模型(…

研究生期间工作记录

23/11开始记录工作细节,总是忘记一些工作细节和之前的工作。 时间工作23/07从视觉slam方向转换位激光slam,细读了LOAM、LIO-SAM、FAST-LIO2、faster-lio23/08研究低内存消耗方向的大规模激光slam,以及提高精度23/09完成一篇会议论文&#xf…

世界坐标系,相机坐标系,像素坐标系转换 详细说明(附代码)

几个坐标系介绍,相机内外参的回顾参考此文。 本文主要说明如何在几个坐标系之间转换。 本文涉及: 使用相机内参 在 像素坐标系 和 相机坐标系 之间转换。使用相机外参(位姿)在相机坐标系 和 世界坐标系 之间转换。(qw,qx,qy,qz,tx,ty,tz)形式的外参如何使用。以具体情景为…

ROS-3DSLAM(四)lvi-sam源代码阅读2

2021SCSDUSC (四)lvi-sam源代码阅读2 lidar_odometry imuPreintegration.cpp 本次分析主要是对imuHandler函数的分析。 imu的回调函数 imuHandler 根据上一次的odom和偏差,用gtsam来估计当下的odom作为imu的位姿,通过静态TF…

多传感器融合时的时间同步问题解决方案——PPS校准STM32内部RTC

关于STM32的RTC校准问题,网上讨论很多。个人认为可以分为外部校准和内部校准,外部校准一般采用的是GPS的PPS信号(主要是PPS信号基于原子钟,太准了),但是PPS信号如何对RTC进行校准,网上并没有相关…

ORBSLAM3 --- LoopClosing::NewDetectCommonRegions检测回环关键帧/融合关键帧函数解析

目录 1.函数作用 2.代码流程解释--奇葩的代码执行顺序 3.代码详细注释 4.函数具体解析

[学习笔记-SLAM篇]ORB-SLAM2编译调试(2)

算法可以正常运行,但是运行到一般突然屏幕变灰,终端显示下面的错误。 Framebuffer with requested attributes not available.Using available framebuffer. You may see visual artifacts.X11 Error:GLXBadFBConfig看说明,是Pangolin X11或…

工程(十二)Ubuntu20.04LSD_SLAM运行

博主创建了一个科研互助群Q:772356582,欢迎大家加入讨论。这是一个科研互助群,主要围绕机器人,无人驾驶,无人机方面的感知定位,决策规划,以及论文发表经验,以方便大家很好很快的科研…

视觉里程计1(slam十四讲ch7)——特征点,特征匹配

Brook_icv 转载于 https://www.cnblogs.com/wangguchangqing/p/8076061.html slamcn.org:高翔和他的朋友们做的一个系统介绍slam的网站 大牛讲堂|SLAM最终话:视觉里程计 1.概念:什么是里程计? 在里程计问题中&#xf…

ICP 问题之 NLO

欢迎访问我的博客首页。 ICP 问题之 NLO1. NLO 求 ICP1.1 误差2. 使用G2O求解位姿2.1 使用 G2O 提供的边2.2 自定义求解 ICP 的边1. NLO 求 ICP PnP 问题可以使用非线性优化解决,ICP 问题同样可以使用非线性优化解决。非线性优化算法在迭代的过程中,使优…

利用深度图建立三维点云地图笔记

前言:这几天在独立地研究对RGBD图像序列,建立其三维点云地图。这是我研究生期间,毕业论文中的一点小工作。由于我并没有借鉴像RTAB-MAP等SLAM方法,所以本文仅仅能够帮助学习和理解是三维建图的过程,对于实际的三维建图…

[ROS2系列] ubuntu 20.04测试rtabmap 3D建图(二)

接上文我们继续 如果我们要在仿真环境中进行测试&#xff0c;需要将摄像头配置成功。 一、配置位置 sudo vim /opt/ros/foxy/share/turtlebot3_gazebo/models/turtlebot3_waffle/model.sdf 二、修改 <joint name"camera_rgb_optical_joint" type"fixed&…

外参手算方法

虽然有的slam系统是代外参标定功能&#xff0c;可以在线标定&#xff08;vins&#xff09;或者离线进行标定&#xff0c;但外参标定的质量也会与运动激励相关的&#xff0c;例如对于3自由度的小车很难把z方向的外参标定的很好。有些情况车子或者是定位模块是有设计图纸的&#…

(01)ORB-SLAM2源码无死角解析-(47) 跟踪线程→局部地图跟踪TrackLocalMap():局部地图更新

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

卡尔曼家族从零解剖-(00)目录最新无死角讲解

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的 卡尔曼家族从零解剖 链接 :卡尔曼家族从零解剖-(00)目录最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/133846882 文末正下方中心提供了本人 联系…

视觉SLAM

视觉SLAM十四讲 SLAM (simultaneous localization and mapping), 也称为CML (Concurrent Mapping and Localization), 即时定位与地图构建&#xff0c;或并发建图与定位。 1 视觉SLAM十四讲ch1~2 https://www.bilibili.com/video/BV16t411g7FR?fromsearch&seid1217925…

ROS-3DSLAM(六)lvi-sam源代码阅读4

2021SCSDUSC &#xff08;六&#xff09;lvi-sam源代码阅读4 lidar_odometry mapOptmization.cpp 6D位姿点云结构定义&#xff1a; /** A point cloud type that has 6D pose info ([x,y,z,roll,pitch,yaw] intensity is time stamp)* 具有 6D 姿态信息的点云类型&#xf…

【视觉SLAM十四讲学习笔记】第三讲——Eigen库

专栏系列文章如下&#xff1a; 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵 本章将介绍视觉SLAM的基本问题之一&#xff1a;如何描述刚体在三维空间中的运动&#xff1f; Eigen…

mid360激光雷达跑Point-LIO算法

在商场里面上下楼穿梭,使用mid360激光雷达,完成建图 以下是建图的运行过程及参数配置 mid360激光雷达驱动 安装(ubuntu20.4 ) /ws_livox/src/livox_ros_driver2$source /opt/ros/noetic/setup.sh /ws_livox/src/livox_ros_driver2$./build.sh ROS1配置修改MID360_confi…

g2o_viewer 安装

安装 g2o_viewer 需要依赖于 libglviewer 因为在cmake的文件中只有找到了 libglviewer依赖 才会编译 g2o_viewer 我的Ubuntu14.04是使用以下代码安装依赖的 sudo apt-get install libqglviewer-dev然后就是同样的方法 cmake .. make -j4 sudo make install最后嘛 有一步很重要…

VINS-Mono-VIO初始化 (六:基于已知重力对重力方向进行调整)

可以通过查表的方式直到重力的大小&#xff0c;假设为9.81&#xff0c;我们取出重力的方向然后大小直接设置为9.81 这样调整的目的是因为&#xff0c;上一节求解的方程中的已知量中也是包含的重力的误差影响在里面的&#xff0c;需要这样对误差调整回来 论文中的图如下 我们就…

定位论文篇

GPS&#xff1a; 自动驾驶传感器&#xff08;五&#xff09;&#xff1a;卫星导航GPS-RTK原理&#xff08;2W字&#xff09; - 知乎 视觉SLAM&#xff1a; VINS、vinsfusion、vins-gnss、vins-wheel OPENVINS ORBSLAM MSCKF MSCKF-2.0 激光SLAM&#xff1a; Fast-LIO L…

视觉SLAM十四讲 3-三维空间刚体运动

蓝色 紫色 红色 一、前言 本章简要介绍 三维世界中刚体 运动的描述方式&#xff1a;旋转矩阵、旋转向量、欧拉角、四元数等。 二、SLAM问题的数学表述 用 数学语言 来描述&#xff1a;小萝卜正携带着某种 传感器 在未知环境里 运动 相机&#xff1a;在 某些时刻 采集数据  …

《视觉 SLAM 十四讲》第 7 讲 视觉里程计1 【如何根据图像 估计 相机运动】【特征点法】

github源码链接V2 文章目录 第 7 讲 视觉里程计17.1 特征点法7.1.1 特征点7.1.2 ORB 特征FAST 关键点 ⟹ \Longrightarrow ⟹ Oriented FASTBRIEF 描述子 7.1.3 特征匹配 7.2 实践 【Code】本讲 CMakeLists.txt 7.2.1 使用 OpenCV 进行 ORB 的特征匹配 【Code】7.2.2 手写 O…

卡尔曼家族从零解剖-(01)预备知识点

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的 卡尔曼家族从零解剖 链接 :卡尔曼家族从零解剖-(00)目录最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/133846882 文末正下方中心提供了本人 联系…

SVO半直接法SLAM相关资料整理

ORB-SLAM、VINS等是采用的特征点描述符方法 DSO是特征点直接法 一份还不错的SVO中文注释&#xff1a;https://github.com/delovsam/rpg_svo 论文链接&#xff1a;http://rpg.ifi.uzh.ch/docs/ICRA14_Forster.pdf 代码的main主函数在SVO/src/test_pipeline.cpp中 半闲居士-直接…

从零开始的三维激光雷达SLAM教程第二讲(搭建Gazebo仿真环境,并添加动态障碍物)

文章目录引言第二节&#xff1a;搭建仿真环境下载velodyne激光模拟功能包安装turtlebot3模拟器安装三维激光雷达到turtlebot3上构建Gazebo地图添加动态障碍物操作机器人建图最终效果引言 毕业设计打算做三维激光SLAM&#xff0c;记录一些学习历程&#xff0c;也给后面人一点帮…

SLAM_语义SLAM相关论文

目录 1. 综述 2. 相关文章 Probabilistic Data Association for Semantic SLAM VSO:Visual Semantic Odometry 语义信息分割运动物体

VINS-Mono代码解读---启动文件launch、参数配置文件yaml

前言 本文将首先对euroc.launch和euroc_config.yaml文件进行代码解读&#xff0c;对VINS中的启动文件launch和参数配置文件yaml进行详细介绍&#xff0c;主要为了了解VINS的启动和运行需要提供哪些参数&#xff0c;若是想用自己的传感器运行VINS&#xff0c;又需要修改哪些参数…

【文献分享】NASA JPL团队CoSTAR一大力作:直接激光雷达里程计:利用密集点云快速定位

论文题目&#xff1a;Direct LiDAR Odometry: Fast Localization With Dense Point Clouds 中文题目&#xff1a;直接激光雷达里程计:利用密集点云快速定位 作者&#xff1a;Kenny Chen, Brett T.Lopez, Ali-akbar Agha-mohammadi 论文链接&#xff1a;https://arxiv.org/pd…

《视觉SLAM十四讲精品总结》5:VO——ORB特征提取和匹配

一、简介 视觉里程计法&#xff1a;提取、匹配图像特征点&#xff0c;然后估计两帧之间的相机运动&#xff0c;给后端提供较好的初始值。 角点的局限&#xff1a;例如&#xff1a;从远处上看上去是角点的地方&#xff0c;当相机走近后&#xff0c;可能就是角点了。或者&#…

SLAM ORB-SLAM2(5)例程了解

SLAM ORB-SLAM2(5)例程了解 1. TUM 数据集1.1. 三种相机1.2. 目录结构2. 单目demo2.1. 参数校验2.2. 配置数据集图像路径2.3. 创建单目SLAM2.3. 处理图像数据2.4. 结束3. RGB-D demo3.1. 参数校验3.2. 配置数据集图像路径3.3. 创建 RGB-D SLAM3.3. 处理图像数据3.4. 结束4. 总…

VIO系统介绍

VIO&#xff08;visual-inertial odometry&#xff09;即视觉惯性里程计&#xff0c;有时也叫视觉惯性系统&#xff08;VINS&#xff0c;visual-inertial system&#xff09;&#xff0c;是融合相机和IMU数据实现SLAM的算法&#xff0c;根据融合框架的区别又分为紧耦合和松耦合…

cartographer,ros,路径规划近两年的工作笔记

马上转入cartographer的去ros移植了,随便记录一下研究cartographer和ros这些天来的摸鱼笔记吧虽然很多人对用ros做产品嗤之以鼻,但是我个人是不排斥的,对代码能力有限的人群来说这是产品化最快的方式! 敝帚自珍~~~继续加油~~~ 建图总结 odom 尤其是转弯的时候,存在累积误…

(01)ORB-SLAM2源码无死角解析-(25) 关键帧KeyFrame→判断系统目前是否需要关键帧

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

VINS-MONO概述

VINS-Mono是HKUST的Shen Shaojie团队开源的一套Visual-Inertial融合定位算法&#xff0c;https://github.com/HKUST-Aerial-Robotics/VINS-Mono&#xff0c;是用紧耦合方法实现的&#xff0c;通过单目IMU恢复出尺度&#xff0c;效果很好&#xff0c;接下来对会该算法框架逐步解…

svo论文解读

SVO: Semi-Direct Visual Odometry for Monocular and Multi-Camera Systems 2016TRO MOTION ESTIMATION 1 Sparse Image Alignment 从上一帧的特征投影到当前帧&#xff0c;最小化重投影误差计算帧间位姿&#xff08;patch44&#xff09; 2 Relaxation Through Feature Alig…

后端优化1(SLAM十四讲ch10)-BA

概述 视觉里程计可以给出一个短时间内的轨迹和地图&#xff0c;但由于不可避免的误差累积&#xff0c;如果时间长了这个地图是不准确的。所以我们希望构建一个尺度、规模更大的优化问题&#xff0c;以考虑长时间内的最优轨迹和地图。实际当中考虑到精度与性能的平衡&#xf…

视觉里程计5(SLAM十四讲ch8)-LK光流

特征点法——>直接法 光流&#xff08;Optical Flow&#xff09; 实践 采用TUM的RGB-D数据集 深度图和彩色图时间对齐 python associate.py rgb.txt depth.txt > associate.txt ./build/useLK ../data #include <iostream> #include <fstream> #include …

编译orbslam时的一个错误

##orbslam学习记录 2020.10.14记录 在编译orbslam2的时候报错为 /usr/local/lib/libopencv_imgcodecs.so.3.4.10: undefined reference to TIFFRe 这样的情况下需要修改orbslam-master目录下的Cmake_list文件&#xff0c;具体修改下面三个地方&#xff1a; 1、find_package(Ope…

《视觉SLAM十四讲》之开源库的安装

转自&#xff1a;https://www.cnblogs.com/ChrisCoder/p/7222430.html 笔记&#xff1a;《视觉SLAM十四讲》之开源库的安装目录前言1、Eigen线性代数库的安装2、Sophus李代数库的安装3、OpenCV计算机视觉库的安装4、PCL点云库的安装 5、Ceres非线性优化库的安装6、G2O图优化库的…

视觉SLAM14讲笔记01:ch2-4李群与李代数

三维空间刚体运动 SLAM数学表达 xkf(xk−1,uk,wk)\boldsymbol{x}_{k}f\left(\boldsymbol{x}_{k-1}, \boldsymbol{u}_{k}, \boldsymbol{w}_{k}\right)xk​f(xk−1​,uk​,wk​) 这里uk\boldsymbol{u}_{k}uk​是运动传感器的读数&#xff08;有时也叫输入&#xff09;&#xff0c…

视觉SLAM14讲笔记02:ch5针孔,双目相机模型

相机 相机将三维世界中的坐标点&#xff08;单位为米&#xff09;映射到二维图像平面&#xff08;单位为像素&#xff09;的过程能够用一个几何模型进行描述。这个模型有很多种&#xff0c;其中最简单的称为针孔模型。针孔模型是很常用&#xff0c;而且有效的模型&#xff0c;…

视觉SLAM14讲笔记03:ch7图像特征提取与匹配

图像 我们从最简单的图像一灭度图开始说起。在一张灰度图中&#xff0c;每个像素位置 (xxx, yyy) 对 应到一个灰度值 III&#xff0c;所以一张宽度为 www&#xff0c;高度为 hhh 的图像&#xff0c;数学形式可以记成一个矩阵: I(x,y)∈RwhI(x, y) \in \mathbb{R}^{w \times h}…

SLAM和MonoSLAM简介与理解,VSLAM和SFM(structure form motion)的区别--cvchina

文章极为浅显易懂地介绍了SLAM和MonoSLAM算法的原理&#xff0c;很容易理解。同时它提供了很多相关的资源&#xff0c;入门很有帮助&#xff0c;能够深入了解SLAM的发展。 相关的评论也是良心&#xff0c;精炼&#xff01;&#xff01; --------------------------------- Mono…

运行雷达驱动进行数据传输时出现了以下错误(已解决)

待解决。 _____________________________________________________________ 已解决 首先看红字部分&#xff0c;说啥&#xff1f;它说进程在home/ls/leishen_ws……的driver_node处中断。这个lidar_driver_node是驱动生成的一个节点为了和ROS对接。让我疑惑的是我对驱动的编…

ORB-SLAM2:基于可识别特征的自主导航与地图构建

ORB-SLAM2 &#xff1a;基于可识别特征的自主导航与地图构建 ORB-SLAM: Tracking and Mapping Recognizable Features转自 http://blog.csdn.net/cicibabe/article/details/50728748 翻译&#xff1a;2016年2月24日 Taylor Guo 摘要&#xff1a;视觉SLAM可以很好地构建地图&a…

[学习笔记-SLAM篇]视觉SLAM十四讲ch1-2

反向学习&#xff0c;最基础的才想起来学。 主学习思路整理&#xff0c;不利于作为大家的学习资料&#xff0c;有什么问题可以交流讨论。 注&#xff1a; 1&#xff09;学习视频&#xff1a;【高翔】视觉SLAM十四讲&#xff1b; 2&#xff09;视频不同步问题参见评论区。 视觉S…

MATLAB算法实战应用案例精讲-【图像处理】SLAM技术详解(基础篇)

目录 几个高频面试题目 SLAM框架常见方案对比 点云数据 传感器 视觉SLAM框架 SLAM框架之视觉里程计

视觉SLAM数据集(一):TUM DataSet

首先给出数据集下载地址&#xff1a;TUM Dataset Download。 如果你是第一次做实验&#xff0c;建议下载xyz的数据集&#xff0c;因为它的动作相对很小&#xff0c;只包含桌面上的一小部分。一旦成功测试&#xff0c;就可以试试desk数据集&#xff0c;它包含四张桌子和几个闭环…

ORB SLAM2阅读笔记(一)

动机&#xff1a; 前几篇Blog根据 高老大的《SLAM十四讲》把整体思路梳理了一下&#xff0c;这里阅读源码的目的是发现工程实际中遇到的问题以及解决这些问题用到的工程技巧&#xff0c;同时膜拜一下Ral Mur Artal大神的经典作品 参考链接&#xff1a; [ORB-SLAM2] ORB-SLAM中…

《视觉 SLAM 十四讲》V2 第 4 讲 李群与李代数 【什么样的相机位姿 最符合 当前观测数据】

P71 文章目录 4.1 李群与李代数基础4.1.3 李代数的定义4.1.4 李代数 so(3)4.1.5 李代数 se(3) 4.2 指数与对数映射4.2.1 SO(3)上的指数映射罗德里格斯公式推导 4.2.2 SE(3) 上的指数映射SO(3),SE(3),so(3),se(3)的对应关系 4.3 李代数求导与扰动模型4.3.2 SO(3)上的李代数求导…

GO-SLAM——论文简析

GO-SLAM 位姿估计效果很好&#xff0c;有高效的回环检测和 full BA&#xff08;每个关键帧&#xff09;&#xff0c;适用于单目、双目和 RGB-D。 一、简介 消费级深度传感器容易产生噪声&#xff0c;这就导致 RGB-D SLAM 会丢失一些几何细节&#xff0c;导致过度平滑。使用轻…

SLAM面经(持续更新中,欢迎关注一起学习......)

SLAM面经 SLAM相关1、ORB-SLAM2为了特征点均匀化做了哪些处理&#xff1f;2、H矩阵是什么&#xff1f;说出几个典型的使用场景3、IMU预积分为什么可以避免重复传播&#xff1f; 下面是来自各个渠道总结的&#xff0c;如果有什么不对的或需要补充的欢迎评论区补充&#xff0c;一…

ROS-3DSLAM(十)lvi-sam源代码阅读8

2021SCSDUSC &#xff08;十&#xff09;lvi-sam源代码阅读8 写在前面 本周开始阅读lvi-sam项目中的视觉部分。我主要负责visual_loop&#xff0c;也就是回环检测的部分。前几周一直在阅读lidar部分mapOptmization.cpp&#xff0c;代码量较大所以多花了一些时间&#xff0c;…

SLAM总结(SLAM十四讲ch14)

开源网站 SLAM未来发展趋势 一、小型化&#xff0c;轻量级 二、利用高性能计算设备&#xff0c;实现精密的三维重建和场景理解 视觉惯导SLAM 语义地图&#xff08;与深度学习结合&#xff09;

[学习笔记-SLAM篇]ORB-SLAM2编译调试(1)

许久没有修改过程序再重新编译&#xff0c;偶然修改后居然编译的时候报错&#xff0c;为免后续错误重犯&#xff0c;也为记录&#xff0c;开一个ORB-SLAM2程序编译调试集。 在ORB_SLAM2/build下执行make命令时&#xff0c;由于下面的错误而终止编译。 error: ‘usleep’ was …

SLAM 基础网站合集

vSLAM 作业解答 李群的伴随性质&#xff1a; 链接

(01)ORB-SLAM2源码无死角解析-(35) 跟踪线程→恒速模型跟踪当前普通帧TrackWithMotionModel()

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

史上最简SLAM零基础解读(4) - 单应性Homography →公式推导与细节理解

本人讲解关于slam一系列文章汇总链接:史上最全slam从零开始 有兴趣的朋友可以加微信 17575010159 相互讨论技术 - 文末公众号也可关注 一、前言 该篇博客&#xff0c;主要是对 Homography 矩阵进行一个细致的讲解&#xff0c;主要分为三个部分: 基本介绍、参数设定、公式推导、…

【视觉SLAM入门】5.2. 2D-3D PNP 3D-3D ICP BA非线性优化方法 数学方法SVD DLT

"养气之学&#xff0c;戒之躁急" 1. 3D-2D PNP1.1 代数法1.1.1 DLT(直接线性变换法)1.1.2. P3P 1.2 优化法BA (Bundle Adjustment)法 2. 3D-3D ICP2.1 代数法2.1.1 SVD方法 2.2 优化(BA)法2.2.2 非线性优化方法 前置事项&#xff1a; 1. 3D-2D PNP 该问题描述为&am…

代码分析——基于误差状态卡尔曼滤波器(ESKF)实例分析

imu_gps_localization代码分析 最近在学习ESKF相关知识&#xff0c;偶然发现知乎大佬 Dongsheng Yang基于《Quaterniond kinematics for the error-state Kalman filter》实现了IMUGPS的融合定位。刚刚学完理论知识&#xff0c;正好学习下基于ESKF的代码实战。看完大佬写的代码…

FAST-LIO2 (ikd-tree) 和 faster-lio (ivox) 代码详解

FAST-LIO2 / ikd-tree 和 faster-lio / ivox 代码详解本文目的FAST-LIO2faster-lio本文目的 港大的FAST-LIO2和高博团队提出的faster-lio可以说是目前最先进的LIO算法了。他们最突出且最重要的工作应该是提出了两种增量式的点云组织算法。增量式更新是SLAM研究里非常核心的话题…

记录 搭载小车 运行激光slam lio-sam fast-lio2

用了将近一个月搭载了一台履带车 其中 主控&#xff1a;NUC i7-8559U 激光雷达为&#xff1a;velodyne16线和hesai64线 IMU为&#xff1a;轮趣N100 mini 对imu使用上位机进行调平矫正 设置输出400HZ 对外参标定 首先使用velodyne16线 安装驱动直接运行&#xff0c;没遇到啥…

SLAM中TUM数据集更改图片名字

这里写目录标题1、时间命名的影像改为序列号命名的影像2、以序列号开始的位姿结果改为时间开始的位姿结果1、时间命名的影像改为序列号命名的影像 最近在跑一个SLAM相关算法的时候遇到一个问题&#xff0c;被广泛测试的TUM数据集如何将以采集时间命名的图片保存为以序号命名的…

视觉SLAM14讲笔记04:ch7对极几何(epipolar geometry)

2D-2D:对极几何(epipolar geometry) 对极约束 现在&#xff0c;假设我们从两张图像中&#xff0c;得到了一对配对好的特征点&#xff0c;像图7-7里显示的那样。如果我们有若干对这样的匹配点&#xff0c;就可以通过这些二维图像点的对应关系&#xff0c;恢复出在两帧之间摄像…

五. 激光雷达建图和定位方案-引言

前面内容&#xff1a; 一. 器件选型心得&#xff08;系统设计&#xff09;--1_goldqiu的博客-CSDN博客 一. 器件选型心得&#xff08;系统设计&#xff09;--2_goldqiu的博客-CSDN博客 二. 多传感器时间同步方案&#xff08;时序闭环&#xff09;--1 三. 多传感器标定方案&a…

视觉SLAM14讲笔记05:ch7三角测量,PnP,ICP

三角测量 考虑图像 I1I_{1}I1​ 和 I2,I_{2},I2​, 以左图为参考&#xff0c;右图的变换矩阵为 TTT 。相机光心为 O1O_{1}O1​ 和 $O_{2} 。在。 在。在I_{1}$ 中有特征点 p1,p_{1},p1​, 对应 I2I_{2}I2​ 中有特征点 p2p_{2}p2​ 。理论上直线 O1p1O_{1} p_{1}O1​p1​ 与 O2…

ubuntu18.04 RTX3060 rangnet++训练 bonnetal语义分割

代码链接&#xff1a; https://github.com/PRBonn/lidar-bonnetal 安装anaconda环境为 CUDA 11.0&#xff08;11.1也可以&#xff09; anaconda环境如下 numpy1.17.2 torchvision0.2.2 matplotlib2.2.3 tensorflow1.13.1 scipy0.19.1 pytorch1.7.1 vispy0.5.3 opencv_python…

ROS-3DSLAM(五)lvi-sam源代码阅读3

2021SCSDUSC &#xff08;五&#xff09;lvi-sam源代码阅读3 lidar_odometry imuPreintegration.cpp 本次分析主要是对imuHandler函数的分析。 里程计的回调函数 odometryHandler /* 然后是里程计回调函数。每隔100帧激光里程计&#xff0c;重置ISAM2优化器&#xff0c;添…

SLAM ORB-SLAM2(16)奇异值分解

SLAM ORB-SLAM2(16)奇异值分解 1. 特征分解2. SVD的定义3. SVD的分解3.1. 右奇异向量3.2. 左奇异向量3.3. 奇异值矩阵4. 分解举例4.1. 构建方阵4.2. 特征分解4.2.1. 求特征值4.2.2. 求特征向量4.3. 求奇异值4.4. 奇异值分解5. 几何意义5.1. 奇异值矩阵

视觉SLAM漫谈(二):图优化理论与g2o的使用

视觉SLAM漫谈&#xff08;二&#xff09;:图优化理论与g2o的使用 1 前言以及回顾 各位朋友&#xff0c;自从上一篇《视觉SLAM漫谈》写成以来已经有一段时间了。我收到几位热心读者的邮件。有的希望我介绍一下当前视觉SLAM程序的实用程度&#xff0c;更多的人希望了解一下前文…

ubuntu18.04+realsenseD455制作TUM数据集

教程目录 一、本机环境二、安装RealSense SDK三、录制rosbag四、制作数据集四、安装ROS-RealSense五、测试数据集一、本机环境 Ubuntu系统ROS系统RealSense18.04melodicD455二、安装RealSense SDK 1、首先注册服务器的公钥 sudo apt-key adv --keyserver keyserver.ubuntu.co…

《视觉 SLAM 十四讲》V2 第 12 讲 建图

文章目录 12.2 单目稠密 重建12.2.2 极线搜索 && 块匹配12.2.3 高斯分布的深度滤波器 12.3 单目稠密重建 【Code】待改进12.3.4 图像间的变换 12.4 RGB-D 稠密建图12.4.1 点云地图 【Code】查询OpenCV版本 opencv_version 12.4.2 从点云 重建 网格 【Code】查看PCL 版本…

视觉SLAM漫谈 (三): 研究点介绍

1.  前言 读者朋友们大家好&#xff01;&#xff08;很久很久&#xff09;之前&#xff0c;我们为大家介绍了SLAM的基本概念和方法。相信大家对SLAM&#xff0c;应该有了基本的认识。在忙完一堆写论文、博士开题的事情之后&#xff0c;我准备回来继续填坑&#xff1a;为大家介…

工程(十七)——自己数据集跑R2live

博主创建了一个科研互助群Q&#xff1a;772356582&#xff0c;欢迎大家加入讨论。 r2live是比较早的算法&#xff0c;编译过程有很多问题&#xff0c;通过以下两个博客可以解决 编译R2LIVE问题&解决方法-CSDN博客 r2live process has died 问题解决了_required process …

FAST-LIO论文阅读

论文&#xff1a;FAST-LIO: A Fast, Robust LiDAR-inertial Odometry Package by Tightly-Coupled Iterated Kalman Filter 源码链接 各位大佬对论文的解析&#xff1a; FAST-LIO论文解读与详细公式推导 FAST-LIO是港大MaRS实验室在2021年提出的一个紧耦合迭代扩展卡尔曼滤波…

【视觉SLAM入门】8. 回环检测,词袋模型,字典,感知,召回,机器学习

"见人细过 掩匿盖覆” 1. 意义2. 做法2.1 词袋模型和字典2.1.2 感知偏差和感知变异2.1.2 词袋2.1.3 字典 2.2 匹配(相似度)计算 3. 提升 前言&#xff1a; 前端提取数据&#xff0c;后端优化数据&#xff0c;但误差会累计&#xff0c;需要回环检测构建全局一致的地图&…

机器人控制算法九之 位姿描述与空间变换

机器人控制算法九之 位姿描述与空间变换 相关内容&#xff1a; 位姿空间变换欧拉角与RPY角… 一个简单的机器人场景中的坐标系展示&#xff1a; 1.刚体位姿描述 研究机器人操作臂的运动&#xff1a;涉及各连杆位姿关系、连杆与周围环境&#xff08;操作对象和障碍物&#xf…

SLAM(三)

思维导图 投影模型 根据观测方程建立目标函数 BA求解 根据非线性优化的思想&#xff0c;从某个初始值开始不断地寻找下降方向 ∆x 来找到目标函数的最优解。我们把自变量定义成所有待优化的变量&#xff08;位姿和路标&#xff09;&#xff0c;然后不断增量求解&#xff1a…

视觉SLAM(一)

思维导图 视觉SLAM要解决的问题 用 x 表示车辆位置&#xff0c;各时刻位置就记为 x1&#xff0c;x2…xk&#xff0c;构成了车辆运动轨迹。地图由许多个路标组成&#xff0c;而每个时刻传感器会测量到一部分路标&#xff0c;得到观测数据z。设路标共有 N 个用 y1&#xff0c;y2…

ubuntu18.04 RTX3060 rangnet++训练

代码链接&#xff1a; https://github.com/PRBonn/lidar-bonnetal 安装anaconda环境为 CUDA 11.0&#xff08;11.1也可以&#xff09; anaconda环境如下 numpy1.17.2 torchvision0.2.2 matplotlib2.2.3 tensorflow1.13.1 scipy0.19.1 pytorch1.7.1 vispy0.5.3 opencv_python…

(1分钟突击面试) 高斯牛顿、LM、Dogleg后端优化算法

高斯牛顿法 LM法 DogLeg方法编辑切换为居中添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09;知识点&#xff1a;高斯牛顿是线搜索方法 LM方法是信赖域方法。编辑切换为居中添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09;这个就是JTJ是…

VIO学习笔记(五)—— 单目 Bundle Adjustment 求解代码

单目 Bundle Adjustment 求解代码分析&#xff0c;相关资料请参考我的这篇博客。完整的工程在这里。 单目 Bundle Adjustment 求解代码相机数据定义顶点加法残差计算Jacobians计算check jacobiansHessian计算Hessian矩阵模型Jacobian乘法模型Hessian矩阵变化过程Hessian矩阵最终…

VIO学习笔记(四)—— 单目Bundle Adjustment信息矩阵代码分析

计算单目Bundle Adjustment信息矩阵&#xff0c;并通过奇异值分解表明零空间为&#xff17;维。 VIO学习笔记&#xff08;四&#xff09;—— 基于滑动窗口算法的 VIO 系统:可观性和 一致性 单目Bundle Adjustment信息矩阵代码分析预备知识代码中相机位姿的由来&#xff1a;最…

SC-LIO-SAM

https://github.com/gisbi-kim/SC-LIO-SAM

五. 激光雷达建图和定位方案-算法工具

前面内容&#xff1a; 一. 器件选型心得&#xff08;系统设计&#xff09;--1_goldqiu的博客-CSDN博客 一. 器件选型心得&#xff08;系统设计&#xff09;--2_goldqiu的博客-CSDN博客 二. 多传感器时间同步方案&#xff08;时序闭环&#xff09;--1 三. 多传感器标定方案&a…

Sophus使用记录

sophus库是一个基于Eigen的C李群李代数库&#xff0c;可以用来方便地进行李群李代数的运算。 头文件 主要用到以下两个头文件 #include <sophus/so3.h> #include <sophus/se3.h>SO(3)的使用 SO(3)的定义 // Sophus::SO3可以直接从旋转矩阵构造 Eigen::Matrix3…

(02)Cartographer源码无死角解析-(74) 2D后端优化→OptimizationProblem2D-里程计、local位姿、GPU残差

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文…

SLAM ORB-SLAM2(9)闭环检测器

SLAM ORB-SLAM2(9)闭环检测器 1. LoopClosing2. 成员变量2.1. 系统成员变量2.2. 关键帧2.3. 共视关系2.4. 闭环检测2.5. 全局 BA(光束法平差)2.6. 其他操作3. 成员函数3.1. 构造函数3.2. 主要函数3.3. 更新操作3.4. 标识设置和查询接口1. LoopClosing 在《SLAM ORB-SLAM2(…

IMU预积分的简单理解

目录写在前面IMU预积分参考完写在前面 1、本文内容 IMU预积分的简单理解 2、转载请注明出处&#xff1a; https://blog.csdn.net/qq_41102371/article/details/125972298 IMU预积分 主要参考imu预积分原理的个人理解 https://zhuanlan.zhihu.com/p/438525032 重点&#xff…

【AI视野·今日Robot 机器人论文速览 第六十九期】Wed, 3 Jan 2024

AI视野今日CS.Robotics 机器人学论文速览 Wed, 3 Jan 2024 Totally 5 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Robotics Papers NID-SLAM: Neural Implicit Representation-based RGB-D SLAM in dynamic environments Authors Ziheng Xu, Jianwei Niu, Qingf…

手撕 视觉slam14讲 ch7 / pose_estimation_3d2d.cpp (2)

上一篇文章中: 手撕ch7/pose_estimation_3d2d&#xff08;1&#xff09;&#xff0c;我们调用了epnp的方法进行位姿估计&#xff0c;这里我们使用非线性优化的方法来求解位姿&#xff0c;使用g2o进行BA优化 首先介绍g2o&#xff1a;可参考&#xff1a;g2o详细介绍 1.构建g2o图…

《视觉 SLAM 十四讲》V2 第 8 讲 视觉里程计2 【如何根据图像 估计 相机运动】【光流 —> 直接法】

OpenCV关于 光流的教程 文章目录 第 8 讲 视觉里程计 28.2 光流8.3 实践&#xff1a; LK 光流 【Code】本讲 CMakeLists.txt 8.4 直接法8.5 实践&#xff1a; 双目的稀疏直接法 【Code】8.5.4 直接法的优缺点 习题 8√ 题1 光流方法题2题3题4题5 第 8 讲 视觉里程计 2 P205 …

视觉SLAM ch13 设计SLAM系统

目录 一、SLAM系统 二、工程框架 三、框架流程 四、具体实现 五、VO整体流程 六、显示整体建图效果 一、SLAM系统 实现一个精简版的双目视觉里程计&#xff0c;前端使用光流法&#xff0c;局部使用局部BA优化。 二、工程框架 app中 run_kitti_stereo.cpp是代码的运行入口…

五. 激光雷达建图和定位方案-开源SLAM

前面内容&#xff1a; 一. 器件选型心得&#xff08;系统设计&#xff09;--1_goldqiu的博客-CSDN博客 一. 器件选型心得&#xff08;系统设计&#xff09;--2_goldqiu的博客-CSDN博客 二. 多传感器时间同步方案&#xff08;时序闭环&#xff09;--1 三. 多传感器标定方案&a…

【视觉SLAM】ORBSLAM3 window下Debug编译遇到Expression: __acrt_first_block == header

ORBSLAM3 window下Debug编译遇到Expression: __acrt_first_block header window下编译ORBSLAM3解决方法 一 &#xff08;推荐&#xff09;解决方法 二调试运行速度慢的问题vector iterators incompatible错误 window下编译ORBSLAM3 github:https://github.com/lydieusang/orb…

SLAM学习——相机模型(针孔+鱼眼)

针孔相机模型 针孔相机模型是很常用&#xff0c;而且有效的模型&#xff0c;它描述了一束光线通过针孔之后&#xff0c;在针孔背面投影成像的关系&#xff0c;基于针孔的投影过程可以通过针孔和畸变两个模型来描述。 模型中有四个坐标系&#xff0c;分别为world&#xff0c;c…

Ubuntu18.04 ROS Melodic的cv_bridge指向问题(四种方式,包括opencv4)(转载)

转载自&#xff1a; 【精选】Ubuntu18.04 ROS Melodic的cv_bridge指向问题&#xff08;四种方式&#xff0c;包括opencv4&#xff09;_XiangrongZ的博客-CSDN博客

ORBSLAM3 --- 闭环及地图融合线程

目录 1.闭环及地图合并线程的目的和意义 2.闭环及地图合并流程 3.ORBSLAM3中的闭环与地图融合线程解

《视觉SLAM十四讲》读书笔记(三)

相机与图像5.1 相机模型5.1.1 针孔相机模型5.1.2 畸变模型5.1.3 双目相机模型5.1.4 RGB-D相机模型5.1 相机模型 5.1.1 针孔相机模型 设O−x−y−zO-x-y-zO−x−y−z为相机坐标系&#xff0c;习惯上我们让zzz轴指向相机前方&#xff0c;xxx向右&#xff0c;yyy向下&#xff08;…

dji uav建图导航系列()ROS中创建dji_sdk节点包(一)项目结构

文章目录 1、整体项目结构1.1、 目录launch1.2、文件CMakeLists.txt1.3、文件package.xml1.4、目录include1.4、目录srv在ROS框架下创建一个无人机的节点dji_sdk,实现必需的订阅(控制指令)、发布(无人机里程计)、服务(无人机起飞降落、控制权得很)功能,就能实现一个类似…

SLAM学习快速入门---CMake简单、基础语法

前言 研究生阶段开启SLAM的旅程&#xff0c;从此篇博文起会开启一个新的SLAM专题&#xff0c;用以记录入门过程中的问题解决以及笔记分享&#xff0c;内容大多会涉及应用&#xff0c;原理剖析有能力的话后续会添加进来。如有纰漏&#xff0c;敬请指正&#xff01; 今天记录CMak…

dji uav建图导航系列()ROS中创建dji_sdk节点包(二)实现代码

在前文 【dji uav建图导航系列()ROS中创建dji_sdk节点包(一)项目结构】中简单介绍了项目的结构,和一些配置文件的代码。本文详细说明目录src下的节点源代码实现。 文章目录 1、代码结构2、PSDK部分3、ROS部分3.1、头文件3.1.1、外部调用 node_service.h3.1.2、节点类定义…

【SLAM】 前端-视觉里程计之特征点

前端-视觉里程计之特征点 参考资料&#xff1a; 以不变应万变&#xff1a;前端-视觉里程计之特征点 视觉SLAM——特征点法 task05 本次了解了特征点是由关键子和描述子组成&#xff0c;并且对比了SIFT、SURF等七种获取特征点的方法&#xff0c;同时对比了SIFT、SURF和ORB方法…

ORB_SLAM3单目代码阅读——ORB特征点提取

ORB特征点坐标为小数&#xff1a;ORB特征提取器默认分8层提取&#xff0c;当把高层图像中的FAST角点坐标转换到原始图像坐标系下时会产生小数&#xff0c;而原始图像所在的最低层因为不需要对坐标进行调整&#xff0c;因此就没有小数部分。 ORBextractor.cpp代码注释 /** * T…

VIR-SLAM代码分析3——VIR_VINS详解之estimator.cpp/.h

前言 续接上一篇&#xff0c;本本篇接着介绍VIR-SLAM中estimator.cpp/.h文件的函数&#xff0c;尤其是和UWB相关的相比于VINS改动过的函数&#xff0c;仍然以具体功能情况代码注释的形式进行介绍。 重点函数介绍 优化函数&#xff0c;代码是先优化&#xff0c;后边缘化。 …

ORB-SLAM2实时稠密地图,解决运行报段错误(核心已转储)运行数据集时出现段错误,出现可视化界面后闪退(添加实时彩色点云地图+保存点云地图)

高翔的稠密建图仓库 1. git clone https://github.com/gaoxiang12/ORBSLAM2_with_pointcloud_map.git 2. 去ORB SLAM2里拷贝Vocabulary到/home/cgm/ORBSLAM2_with_pointcloud_map/ORB_SLAM2_modified文件夹下 3. 删除一些build文件夹 删除ORB_SLAM2_modified/Thirdparty/DB…

SLAM ORB-SLAM2(6)系统对象

SLAM ORB-SLAM2(6)系统对象 1. 封装2. 成员变量2.1. 核心数据2.2. 三个对象2.3. 三个线程2.4. 跟踪状态3. 成员函数4. 构造函数5. 数据驱动接口1. 封装 在 《SLAM ORB-SLAM2(5)例程了解》 了解到创建了一个 ORB_SLAM2::System 类型的对象 然后不断的把数据供给该对象就可以…

【视觉SLAM入门】9.1 建图1---SLAM任务,稠密地图构建,立体视觉,RGBD,八叉树,点云地图等各种不同地图

"讷为君子&#xff0c;寡为吉人 ” 1. 立体稠密地图1.1 地图构建1.2 分析立体相机稠密建图效果 2. RGB-D稠密地图2.1 地图对比2.1.1 八叉树地图 3. 建图&#xff1f;定位&#xff1f;孰轻孰重3.1 鬼影问题3.2 三维重建 4. 总结 SLAM的功能&#xff1a; 直到现在我们可以知…

先平移再旋转和先旋转再平移的区别

对于一个刚体&#xff0c;以汽车为例&#xff0c;先旋转再平移和先平移再旋转有没有区别要看这个平移旋转是以什么坐标系为基准 如果平移和旋转都以小车坐标系为基准&#xff0c;二者是有区别的 如果平移旋转以世界坐标系为基准&#xff0c;二者是没有区别的 看图就明白了 所…

【SLAM】坐标系变换与外参标定

【SLAM】坐标系变换与外参标定 突然发现学习文档有下面这句话&#xff1a; 学习这件事不在乎有没有人教你&#xff0c;最重要的是在于你自己有没有觉悟和恒心。——法布尔 task02从二维坐标系开始推导坐标系变换参数&#xff0c;进而加入平移&#xff0c;加入Z轴拓展到三维坐…

VINS-MONO代码解读----配置文件,数据结构,前端feature_tracker

跑通代码之后可以深入看代码了&#xff0c;整体代码很多&#xff0c;可先从配置文件开始看。 1. VINS-MONO配置文件理解 参考启动文件launch与参数配置文件yaml介绍 启动文件launch&#xff1a;euroc.launch 参数配置文件yaml&#xff1a;euroc_config.yaml&#xff1a;包括…

v-SLAM技术简述

定义&#xff1a; “Simultaneous Localization And Mapping” 同步定位与建图&#xff0c;表示在未知环境中定位自身位姿(pose)并同时构建环境地图(mapping)。 原理&#xff1a; 假设机器人在未知环境中运动&#xff0c;感知传感器为摄像头(camera)&#xff0c;在运动过程中摄…

卡尔曼家族从零解剖-(06) 一维卡尔曼滤波编程(c++)实践、透彻理解公式结果

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的 卡尔曼家族从零解剖 链接 :卡尔曼家族从零解剖-(00)目录最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/133846882 文末正下方中心提供了本人 联系…

Ceres使用

之前用过Ceres&#xff0c;但是只是跑例程&#xff0c;现在来着重学习一下使用流程。 1. 解决的问题 主要解决非线性优化问题。Ceres是一个较为通用的库。 参考链接 2. 如何使用 这个是求解的函数&#xff0c;主要关注这三个参数 CERES_EXPORT void Solve(const Solver::O…

2023年度学习总结

想想大一刚开始在CSDN写作&#xff0c;这一坚持&#xff0c;就是我在CSDN的第九个年头&#xff0c;这也是在CSDN最有里程碑的一年&#xff0c;这一年我被评为CSDN的博客专家啦&#xff01;先是被评为Unity开发领域新星创作者&#xff0c;写的关于一部分Unity开发的心得获得大家…

[学习笔记-SLAM篇]视觉SLAM十四讲ch4

这一章的数学概念涉及很多&#xff0c;梳理清楚很重要。 注&#xff1a; 1&#xff09;学习视频&#xff1a;【高翔】视觉SLAM十四讲。 视觉SLAM十四讲第4讲4.1 理论部分4.2 实践部分第4讲 4.1 理论部分 概念的东西很多&#xff0c;但主要还是围绕李群和李代数展开。 一个最本…

[学习笔记-SLAM篇]视觉SLAM十四讲ch3

一鼓作气哈。 还学了一点latex编写技巧&#xff0c;技能max。 注&#xff1a; 1&#xff09;学习视频&#xff1a;【高翔】视觉SLAM十四讲。 视觉SLAM十四讲第3讲3.1 理论部分3.2 实践部分第3讲 3.1 理论部分 这一部分要点如下。3-5均为欧式变换所涉及的方式&#xff0c;此外…

VIO学习笔记(七)—— VINS 初始化和 VIO 系统

学习资料是深蓝学院的《从零开始手写VIO》课程&#xff0c;对课程做一些记录&#xff0c;方便自己以后查询&#xff0c;如有错误还请斧正。由于习惯性心算公式&#xff0c;所以为了加深理解&#xff0c;文章公式采用手写的形式。 VIO学习笔记&#xff08;一&#xff09;—— 概…

VIO学习笔记(六)—— 前端 Frontend

学习资料是深蓝学院的《从零开始手写VIO》课程&#xff0c;对课程做一些记录&#xff0c;方便自己以后查询&#xff0c;如有错误还请斧正。由于习惯性心算公式&#xff0c;所以为了加深理解&#xff0c;文章公式采用手写的形式。 关于前端的内容可以参考高翔博士的《视觉SLAM十…

《视觉 SLAM 十四讲》V2 第 5 讲 相机与图像

文章目录 相机 内参 && 外参5.1.2 畸变模型单目相机的成像过程5.1.3 双目相机模型5.1.4 RGB-D 相机模型 实践5.3.1 OpenCV 基础操作 【Code】OpenCV版本查看 5.3.2 图像去畸变 【Code】5.4.1 双目视觉 视差图 点云 【Code】5.4.2 RGB-D 点云 拼合成 地图【Code】 习题题…

PCL ICP使用OMP加速(ICP_OMP)

最近项目中使用到了pcl库的ICP算法&#xff0c;但是pcl库的ICP算法在点云数量较多时计算速度较慢。ICP算法中频繁的使用了kdtree最近邻搜索&#xff0c;而每次迭代中每个点的最近邻搜索是可以并行计算的&#xff0c;因此想到了使用omp来给ICP加速。但是pcl库中没有相应的实现&a…

VINS-Mono-后端优化 (四:边缘化原理)

滑窗中固定只能有11帧&#xff0c;当来了新的帧的时候旧的帧就需要抹掉&#xff0c;但是不能直接把旧的帧的全部信息抹掉&#xff0c;因为旧的帧的经历过11次优化&#xff0c;其地图点中的优化信息是有用&#xff0c;边缘化的操作就是为了只把最旧帧的变量去掉&#xff0c;但是…

回环检测(SLAM十四讲ch12)

概述 无论在单目、双目还是RGBD中&#xff0c;追踪得到的位姿都是有误差的。随着路径的不断延伸&#xff0c;前面帧的误差会一直传递到后面去&#xff0c;导致最后一帧的位姿在世界坐标系里的误差有可能非常大。除了利用优化方法在局部和全局调整位姿&#xff0c;也可以利用回环…

后端优化2(SLAM十四讲ch11)-Pose Graph

位姿图&#xff08;Pose Graph&#xff09; 带有相机位姿和空间点的图优化称为BA 机器人运动轨迹越来越长&#xff0c;地图规模不断增长——>BA的计算效率不断下降 特征点在优化问题中占据绝大部分。而实际上&#xff0c;经过若干次观测之后&#xff0c;那些收敛的特征点…

视觉里程计2(SLAM十四讲ch7)-对极几何,三角测量

对极几何 2D2D 对极几何&#xff08;Epipolar Geometry&#xff09;是Structure from Motion问题中&#xff0c;在两个相机位置产生的两幅图像的之间存在的一种特殊几何关系&#xff0c;是sfm问题中2D-2D求解两帧间相机姿态的基本模型。 相机位姿估计问题——》 1.根据配对点…

每次吃一点ORB_Slam3代码 — 1. System类的初始化

文章目录 前言1. 代码调用位置2. 前置知识2.1 Sophus::SE3f 3. 代码细节3.1 System.h&#xff1a;3.2 System初始化函数&#xff1a; 小结 前言 ORB_SLAM3代码对于个人而言&#xff0c;感觉十分复杂。因为没有一些几何视图基础加上C薄弱&#xff0c;所以一直没法入门。基于这种…

VSLAM技术选型

1. 小觅深度版&#xff08;120&#xff09; 特点&#xff1a; 1.采用“双目IMU”的核心硬件方案组合&#xff1a;内置六轴IMU传感器&#xff0c;利用双目和IMU数据的互补性&#xff0c;能为视觉以及空间移动算法的研发提供数据校正&#xff0c;IMU与图像的同步精度高达0.05ms。…

VINS-MONO代码解读---回环检测与重定位、四自由度位姿图优化

本文主要介绍VINS的闭环检测重定位与位姿图优化部分&#xff0c;作为系列文章的最后一节。 回环检测的关键就是如何有效检测出相机曾经经过同一个地方&#xff0c;这样可以避免较大的累积误差&#xff0c;使得当前帧和之前的某一帧迅速建立约束&#xff0c;形成新的较小的累积…

VINS-MONO代码解读---processIMU()+intergrationBase类+imu_factor.h

本节主要包含IMU预积分的残差、Jacobian和协方差&#xff0c;主要代码部分为processIMU&#xff08;&#xff09;intergrationBase类imu_factor.h processIMU()实现了IMU的预积分&#xff0c;通过中值积分得到当前PQV作为优化初值 本文目录 第一个问题&#xff0c;为什么要IM…

卡尔曼家族从零解剖-(06)一维卡尔曼滤波编程实践

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的 卡尔曼家族从零解剖 链接 :卡尔曼家族从零解剖-(00)目录最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/133846882 文末正下方中心提供了本人 联系…

Ceres-Solver

欢迎访问我的博客首页。 Ceres-Solver1. 安装 Ceres-Solver2. 曲线拟合2.1 拟合算法2.2 参数维度2.3 配置文件3. 使用方法3.1 AddResidualBlock4. 求导4.1 自动求导4.2 数值求导4.3 解析求导4.4 求导总结5. 求解 ICP5.1 定义误差类5.2 创建代价函数对象5.3 求解 ICP6. 参考cere…

EPnP 算法 2

欢迎访问我的博客首页。 EPnP 算法 27. 附录7.1 数学期望与协方差矩阵7.2 三维坐标的协方差矩阵7.3 齐次质心坐标的性质7.4 透视投影与正交投影7.5 范数8. 参考文献7. 附录 7.1 数学期望与协方差矩阵 设 Z 是离散型随机变量 X, Y 的函数 Z g(X, Y)&#xff08;g 是连续函数&am…

EPnP 算法 1

欢迎访问我的博客首页。 EPnP 算法 11. 选择控制点2. 计算齐次质心坐标3. 构造 ICP 问题4. 控制点在相机坐标系中的坐标4.1 方程组的基础解系4.2 控制点间的欧氏距离4.3 构造以 β\betaβ 为未知数的方程组4.4 求解 β\betaβ4.5 优化 β\betaβ4.6 QR 分解求增量4.7 控制点在相…

单目初始化 1

欢迎访问我的博客首页。 单目初始化 11. 对极约束与单应约束1.1 对极约束1.2 基础矩阵与本质矩阵1.3 单应矩阵1.4 单应矩阵用于图像拼接2. 归一化3. 基础矩阵3.1 DLT 求基础矩阵3.2 选择基础矩阵3.3 分解本质矩阵3.4 验证4. 单应矩阵4.1 DLT 求单应矩阵4.2 选择单应矩阵4.3 分解…

F-LOAM

欢迎访问我的博客首页。 F-LOAM1. 传感器模型与特征提取1.1 传感器模型1.2 特征提取2. 运动估计与畸变补偿2.1 匀速运动模型2.2 祛畸变3. 位姿估计4. 地图创建与畸变补偿更新5. 附录5.1 位姿变换的传递性6. 参考1. 传感器模型与特征提取 1.1 传感器模型 机械式三维激光雷达有 M…

视觉SLAM数据集(三):KITTI 数据集

教程目录 一、官网二、注册登录三、下载数据集四、测试数据集 一、官网 官网地址&#xff1a;https://www.cvlibs.net/datasets/kitti/eval_odometry.php Kitti数据集很庞大&#xff0c;包含了双目、光流、场景流、深度、里程计、目标、跟踪、马路、语义、原始数据等大类别&…

Docker VINS-Fusion 实时真实环境运行

准备工作&#xff0c;根据 vins-fusion 开源代码提示安装 vins-fusion 镜像 https://github.com/HKUST-Aerial-Robotics/VINS-Fusion 并且需要主机&#xff08;无人机或其他设备&#xff09;发布 ros 话题 设置主机&#xff08;工作站&#xff09;和从机&#xff08;无人机&…

从零搭建一台基于ROS的自动驾驶车-----5.路径规划与导航

系列文章目录 北科天绘 16线3维激光雷达开发教程 基于Rplidar二维雷达使用Hector_SLAM算法在ROS中建图 Nvidia Jetson Nano学习笔记–串口通信 Nvidia Jetson Nano学习笔记–使用C语言实现GPIO 输入输出 Autolabor ROS机器人教程 从零搭建一台基于ROS的自动驾驶车-----1.整体介…

rangenet++运行 bonnetal训练 点云标签 记录

准备原始点云数据&#xff0c;为bin格式 安装point_labeler工具&#xff0c;根据readme步骤安装&#xff0c;并设定好格式进行标签 修改bonnetal的配准 安装semantic-kitti&#xff0c;查看点云标签content&#xff0c;并修改bonnetal上的设置 ./content.py --dataset ~/da…

简单理解梯度下降法、牛顿法、高斯牛顿法、列文伯格-马夸尔特法(LM)

梯度下降法&#xff0c;沿着一阶导方向&#xff08;雅可比矩阵&#xff09;走。二维搜索问题的话可以形象理解为用平面拟合当前位置&#xff0c;沿着切向肯定移动最快。主要问题收敛速度慢。牛顿法&#xff0c;通过二阶泰勒展开求极值。二维搜索问题的话可以形象理解为用二次曲…

北科天绘 16线3维激光雷达开发教程

文章目录前言一、配置IP地址二、ROS Driver1.创建工作空间并初始化2.启动雷达驱动程序三、 RVIZ 显示 R-Fans 点云数据前言 本教程使用的是三维激光雷达为北科天绘的R-Fans-16,采用网口连接传输数据&#xff0c;9-36V供电。 Ubuntu版本为20.04&#xff0c;Ros版本为Neotic。 !…

使用VSCODE跑orbslam2踩的坑

我用的是ubuntu22.04&#xff0c;opencv是4.7&#xff0c;使用其他的库感觉就算版本不一样&#xff0c;也能跑。 一、运行build.sh能够产生可执行文件遇到的问题 1.由于opencv版本高带来的问题 这些问题怎么定位出现在哪些文件中&#xff0c;你通过命令行&#xff0c;运行下…

Docker 制作各 ROS 版本 VINS-Fusion 镜像

准备工作&#xff1a; 安装 ros noetic/Installation/Ubuntu - ROS Wiki 安装 docker Ubuntu Docker 安装 | 菜鸟教程 制作 Ubuntu 16.04 或 Ubuntu 18.04 下的 vins-fusion 镜像 note: 如果要制作 Ubuntu 16.04 下的 vins-fusion 镜像只需完全按照下面的步骤进行 如果要制…

[学习笔记-SLAM篇]RGB-D SLAM配置

参考链接&#xff1a; 1.https://www.cnblogs.com/gaoxiang12/p/4633316.html 2.https://blog.csdn.net/weixin_44775404/article/details/109315334 3.https://blog.csdn.net/lilywri823/article/details/86583269 1.opencv 指令安装 sudo apt-get install libopencv-dev 默…

创建全局路经规划插件global_planner步骤

创建全局路经规划插件global_planner步骤 1.创建一个 ROS 包&#xff1a; cd ~/catkin_ws/src catkin_create_pkg my_global_planner_plugin roscpp nav_core angles tf2_geometry_msgs costmap_2d dynamic_reconfigure geometry_msgs nav_msgs navfn pluginlib tf2_ros2.在该…

使用MeshLab软件处理pcd点云文件

目录前言1.安装MeshLab软件2.利用pcl库将pcd文件转成ply文件3.利用MeshLab旋转ply点云4.将ply文件转为pcd文件5.将ply文件转为pcd文件&#xff08;添加读取配置文件版本&#xff09;前言 在使用D435i相机跑ORB-SLAM2_RGBD_DENSE_MAP-master稠密建图的过程中&#xff0c;发现最…

[学习笔记-SLAM篇]视觉SLAM十四讲ch11

冲冲冲&#xff0c;胜利就在眼前&#xff08;虽然这本书大概会反复学习&#xff09;。 视觉SLAM十四讲第11讲11.1 理论部分11.2 实践部分第11讲 11.1 理论部分 回环检测&#xff0c;虽然说和视觉里程计有些联系&#xff0c;但一般还是比较独立的。 1&#xff09;回环检测 回…

(01)ORB-SLAM2源码无死角解析-(45) EPnP 源代码分析(5)→ICP 求解相机位姿

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

(01)ORB-SLAM2源码无死角解析-(39) EPnP 算法原理详解→理论基础三:高斯牛顿迭代

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

(01)ORB-SLAM2源码无死角解析-(36) 跟踪线程→跟踪丢失后,重定位跟踪 Relocalization()

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

[学习笔记-SLAM篇]视觉SLAM十四讲ch10

学学停停&#xff0c;发现学是学不完的&#xff0c;但是好歹还想学。 没有视频资料了&#xff08;高博的&#xff09;&#xff0c;自学成才&#xff08;不是&#xff09;。 视觉SLAM十四讲第10讲10.1 理论部分9.2 实践部分第10讲 10.1 理论部分 这一部分算是对第9讲的补充吧。…

VIO学习笔记(二)—— IMU 传感器

学习资料是深蓝学院的《从零开始手写VIO》课程&#xff0c;对课程做一些记录&#xff0c;方便自己以后查询&#xff0c;如有错误还请斧正。由于习惯性心算公式&#xff0c;所以为了加深理解&#xff0c;文章公式采用手写的形式。 VIO学习笔记&#xff08;一&#xff09;—— 概…

(01)ORB-SLAM2源码无死角解析-(26) 关键帧KeyFrame→如何创建、插入关键帧

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

VIO标定IMU随机误差——Allan方差法(标题重复率过高)

在IMU采集数据时&#xff0c;会产生两种误差&#xff1a;确定性误差和随机性误差&#xff0c;为获得精确的数据&#xff0c;需要对上述两种误差进行标定。本文针对随机误差使用Allan进行标定。 VIO标定IMU随机误差Allan方差法标定IMU随机误差Allan方差法 加速度计和陀螺仪随机…

使用奥比中光Orbbec Astra Pro在ROS下跑orb_slam2

使用奥比中光Orbbec Astra Pro在ROS下跑orb_slam2一、奥比中光摄像头驱动1. Install ROS&#xff11;) Create a ROS Workspace(if you dont have one)2) Create a .sh documentation2. Install dependences3. Pull the repository into your ROS workspace4.Create astra udev…

DSO直接法SLAM相关资料整理

论文&#xff1a;Direct sparse odometry 一份不错的中文代码注释&#xff1a;https://github.com/alalagong/DSO 一些不错的博客&#xff1a; 高翔博士关于DSO直接法的理论推导 直接法光度误差导数推导——很棒 DSO初始化流程 DSO初始化 DSO追踪与优化 从数据流看DSO calcResA…

ZED2相机说明书

经前期调研及摄像头参数对比&#xff0c;最终选择STEREOLABS公司的ZED2双目立体摄像头作为后期VINS系统的硬件平台&#xff0c;下面先给出ZED2 的产品说明书。 产品特点 1.空间目标检测根据空间环境检测和跟踪对象。通过结合AI和3D&#xff0c;ZED 2可以定位空间中的对象&…

ORB_SLAM代码阅读_注释整理

ORB特征点检测、匹配 1、http://www.javashuo.com/article/p-cqvdhkyp-np.html 2、特征点提取原理 3、ORB_SLAM特征点部分注释&#xff1a; https://blog.csdn.net/u014797790/article/details/79776339 https://blog.csdn.net/weixin_43828675/article/details/113792110 ORB-…

调试Dynaslam: Ubuntu系统下使用VS Code进行自动化调试Dynaslam的教程,包括tasks.json和launch.json的配置

调试Dynaslam: Ubuntu系统下使用VS Code进行自动化调试Dynaslam的教程&#xff0c;包括tasks.json和launch.json的配置 修改CMakeLists.txt文件 将SET(CMAKE_BUILD_TYPE Release)修改为SET(CMAKE_BUILD_TYPE Debug)不开启编译优化&#xff0c;在编译选项中包含 -g 参数来启用…

ORB_SLAM 源码

欢迎访问我的博客首页。 ORB_SLAM 源码1. 关键帧1.1 相机坐标系原点在世界坐标系中的坐标1.2 共视图1.3 生成树1.4 回环边1.5 本质图2. 局部地图3. 回环3.1 回环检测3.2 端点匹配3.3 回环闭合4. 优化5. 其它5.1 词袋5.2 随机采样一致性算法5.3 特征金字塔6. 参考1. 关键帧 阅读…

单目初始化 2

欢迎访问我的博客首页。 单目初始化 26. 三角测量6.1 公式推导6.2 代码实现7. 附录7.1 方阵的特征分解7.2 矩阵的奇异值分解7.3 三阶对角矩阵的分解8. 参考6. 三角测量 6.1 公式推导 假设 P (X, Y, Z, 1) 是世界坐标系中的齐次坐标&#xff0c;s 是 P 在相机坐标系中的 Z 坐标…

legoloam总结(三)

最近在调试legoloam的时候发现一个问题&#xff0c;环境的不同&#xff0c;legoloam的定位以及建图效果差别很大&#xff0c;猜测是可能会和环境点云的特征提取有关。环境复杂时&#xff0c;无法提取合适的特征来估算位姿。 三.点云的预处理 1.获取雷达角度范围 在处理点云之…

legoloam总结(二)

二 回环检测 当机器人在移动一段距离又回到原点时&#xff0c;如何让机器人知道这个位置曾经来过&#xff0c;并让路径成为一个完整的闭环&#xff08;如果没有出现闭环说明位置偏差已经很大了&#xff09;&#xff0c;这就需要引入回环检测的概念&#xff0c;这也是legoloam改…

SLAM的扫盲文章收集

激光雷达厂商&#xff1a;SICK、velodyne、Hokuyo&#xff08;北阳&#xff09;以及国内的北醒光学、Slamtech VSLAM主要用摄像头:主要分为单目、双目&#xff08;Zed、leapmotion&#xff09;、单目结构光、双目结构光、ToF几大类。他们的核心都是获取RGB和depth map(深度信息…

slambook2+ubuntu20.04(第九章-第十章)

例程代码编译与效果展示 slambook2 ch9 cmakelists.txt set(CMAKE_BUILD_TYPE "Release") set(CMAKE_CXX_FLAGS "-O3 -stdc11") 修改为 set(CMAKE_BUILD_TYPE "Debug") set(CMAKE_CXX_FLAGS "-O3 -stdc17") bundle_adjustment_cere…

SLAM系列之1 - ORB SLAM

• ORB ORB&#xff08;Oriented FAST and Rotated BRIEF&#xff09;是oFAST和rBRIEF的组合&#xff0c;特点在于&#xff1a; a&#xff09;速度快&#xff1a;通过FAST&#xff08;features from accelerated segment test&#xff09;作为特征检测算子&#xff0c;速度非常…

一文带你了解全覆盖路径规划算法(CCPP)

1 前言 全覆盖路径规划(complete coverage path planning, CCPP)问题的任务是确定一条路径&#xff0c;该路径在避开障碍物的情况下通过一个区域或一定空间范围内的所有点。 Choset根据环境地图是否先验已知&#xff0c;将全覆盖路径规划算法分为“在线式”和“离线式”两类。…

slam十四讲 03 Eigen实践之不同坐标系下的坐标转换

目录 1. 题目 2. 使用欧式变换 3. 使用四元素 1. 题目 已知 (1) 世界坐标系到相机1坐标系变换关系为&#xff0c;即相机1的位姿q1[0.35,0.2,0.3,0.1]^T, t1[0.3,0.1,0.1]^T. (2) 世界坐标系到相机2坐标系变换关系为&#xff0c;即相机2的位姿q1[-0.5,0.4,-0.1,0.2]^T, t2[…

[2022]DyOb-SLAM : Dynamic Object Tracking SLAM System

1.作者 Rushmian Annoy Wadud、Wei Sun 2.时间 2022 3.整体架构 DyOb-SLAM是DynaSLAM和VDO-SLAM的结合: 基于先验信息使用Mask RCNN分割出动态目标通过基于光流和场景流的算法对运动目标进行跟踪对静态点进行BA优化 输出&#xff1a; 当前帧显示ORB特征以及Masj信息和对…

Slam14讲ch03

旋转向量和欧拉角的区别&#xff1f; 旋转向量同时在所有三个轴上旋转一个物体以从一个方向转到另一个方向需要什么。 矢量的方向给出了旋转轴&#xff0c;矢量的大小给出了总旋转角度。可以选择旋转多少度, 绕什么轴旋转.旋转向量&#xff0c;是一个三维向量&#xff0c;其方向…

(02)Cartographer源码无死角解析-(48) 2D点云扫描匹配→扫描匹配基本原理讲解,代码总体框架梳理AddAccumulatedRangeData()

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文末…

(02)Cartographer源码无死角解析-(44) 2D栅格地图→ProbabilityGrid 与 ProbabilityToLogOddsInteger()

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文末…

ORB_SLAM3 IMU预积分PreintegrateIMU

这篇博文主要分享ORB_SLAM3中Tracking::PreintegrateIMU()&#xff0c;其主要包括几个部分&#xff1a; 获得两帧之间的IMU数据中值积分IMU状态更新 关于IMU的理论推导参考&#xff1a; ORB_SLAM3_IMU预积分理论推导(预积分项)ORB_SLAM3_IMU预积分理论推导(噪声分析)ORB_SLA…

从零搭建一台基于ROS的自动驾驶车-----4.定位

系列文章目录 北科天绘 16线3维激光雷达开发教程 基于Rplidar二维雷达使用Hector_SLAM算法在ROS中建图 Nvidia Jetson Nano学习笔记–串口通信 Nvidia Jetson Nano学习笔记–使用C语言实现GPIO 输入输出 Autolabor ROS机器人教程 从零搭建一台基于ROS的自动驾驶车-----1.整体介…

(02)Cartographer源码无死角解析-(39) PoseExtrapolator→ExtrapolatePose()、ExtrapolatePosesWithGravity() 等成员函数

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文末…

(1分钟了解)SLAM的七大问题:地图表示、信息感知、数据关联、定位与构图、回环检测、深度、绑架

编辑切换为居中添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09;SLAM问题也被称为是CML问题。编辑切换为居中添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09;编辑切换为居中添加图片注释&#xff0c;不超过 140 字&#xff08;可选&…

(1分钟速通面试) 矩阵分解相关内容

矩阵分解算法--总结QR分解 LU分解本篇博客总结一下QR分解和LU分解&#xff0c;这些都是矩阵加速的操作&#xff0c;在slam里面还算是比较常用的内容&#xff0c;这个地方在isam的部分出现过。(当然isam也是一个坑&#xff0c;想要出点创新成果的话 可能是不太现实的 短期来讲 哈…

Eigen库的基本使用说明(二)

之前的文章中&#xff0c;简单的介绍了一些基本的操作&#xff0c;回归之前的内容可以参考一下链接&#xff1a; zEigen库的基本使用说明_每日亿学的博客-CSDN博客_eigen库 本章内容主要就是继续延伸Eigen库的使用内容也会实时进行更新&#xff0c;Eigen库在SLAM中使用广泛&am…

工程(十)——ubuntu20.04在ROS环境运行单目ORB-SLAM3

一. 坑的前言orb-slam3的整个环境配置还是比较麻烦的&#xff0c;先将一些坑写在前面&#xff0c;供大家参考和避开这些坑。1.1 主要配置orb-slam3的配置要求还是很重要的&#xff0c;主要需要安装以下的第三方库和功能包ubuntu 20.04ROS noeticPangolin 0.6Eigen 3Opencv 4.2u…

(02)Cartographer源码无死角解析-(38) PoseExtrapolator→AdvanceImuTracker()、ImuTracker姿态推断

讲解关于slam一系列文章汇总链接:史上最全slam从零开始,针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解:https://blog.csdn.net/weixin_43013761/article/details/127350885 文末正下方中心提供了本…

实践IC-GVINS: 以惯导为核心的GNSS-Visual-INS组合导航系统

视觉导航系统对环境比较敏感&#xff0c;受到光照变化、重复纹理、动态物体等影响&#xff1b;惯性导航系统(INS)则完全自主工作&#xff0c;不受外部环境影响&#xff0c;能够实现连续、高频的自主导航&#xff0c;但其误差发散较快。两者组合能够取长补短&#xff0c;形成视觉…

(02)Cartographer源码无死角解析-(34) LocalTrajectoryBuilder3D→3D点云数据处理,大致流程梳理

讲解关于slam一系列文章汇总链接:史上最全slam从零开始,针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解:https://blog.csdn.net/weixin_43013761/article/details/127350885 文 末 正 下 方 中 心 提…

ROS 不能再详细的安装教程

原网址&#xff1a;http://www.cnblogs.com/liu-fa/p/5779206.html作者小萌是个球&#xff0c;纯照着做的 16.04 麒麟 跑出来了&#xff0c;小萌是个球机器人操作系统(ROS)&#xff0c;SLAM&#xff0c;机器人视觉&#xff0c;自然语言处理&#xff0c;模式识别HomeRobotROSSLA…

罗德里格斯公式(Rodrigues‘ Rotation Formula)推导

目录写在前面罗德里格斯公式推导几种表达方式参考完写在前面 1、本文内容 罗德里格斯公式(Rodrigues’ Rotation Formula)推导 2、转载请注明出处&#xff1a; https://blog.csdn.net/qq_41102371/article/details/125984085 罗德里格斯公式 推导 先放这&#xff0c;有空来…

视觉SLAM漫谈

视觉SLAM漫谈 1. 前言 开始做SLAM&#xff08;机器人同时定位与建图&#xff09;研究已经近一年了。从一年级开始对这个方向产生兴趣&#xff0c;到现在为止&#xff0c;也算是对这个领域有了大致的了解。然而越了解&#xff0c;越觉得这个方向难度很大。总体来讲有以下几个…

ORB-SLAM2系列(四)-特征匹配

ORB-SLAM2系列&#xff08;四&#xff09;-特征匹配ORB-SLAM2在不同已知条件和情况下使用了11种匹配方法&#xff0c;下面进行简单总结&#xff0c;具体细节看源码&#xff0c;默认使用八层金字塔&#xff0c;每层最大特征点数&#xff1a;设置数&#xff08;初始化2000&#x…

SLAM总结(二)-数学基础之位姿表示

SLAM总结&#xff08;二&#xff09;-数学基础之位姿表示注&#xff1a;查阅了很多资料&#xff0c;因为时间有限&#xff0c;可能整理的不是很准确&#xff0c;先发出来&#xff0c;希望有大佬看了能指正一下&#xff0c;后期也会根据对算法的回顾&#xff0c;回过头来不断修正…

SLAM技术

SALM是什么 SLAM的全称是Simultaneous Localization and Mapping&#xff0c;即定位与制图。SLAM和SFM有这千丝万缕的联系。 SFM&#xff08;Structure From Motion&#xff09;&#xff0c;称之为传统三维重建&#xff0c;这是一门计算机视觉学科的分支&#xff0c;特点是把…

(01)ORB-SLAM2源码无死角解析-(53) 闭环线程→了解闭环检测、主体框架讲解:LoopClosing::Run

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

(01)ORB-SLAM2源码无死角解析-(51) 局部建图线程→SearchInNeighbors():融合重复地图点

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

(01)ORB-SLAM2源码无死角解析-(49) 局部建图线程→MapPointCulling,CreateNewMapPoints

本人讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析-接如下: (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/123092196 文末正…

ROS小车研究笔记4/1/2023:研究文章Detecting Glass in Simultaneous Localisation and Mapping

原文出处 article{Wang201797, title “Detecting glass in Simultaneous Localisation and Mapping”, journal “Robotics and Autonomous Systems”, volume “88”, pages “97 - 103”, year “2017”, issn “0921-8890”, doi “http://dx.doi.org/10.1016/j.rob…

论文笔记_SLAM_2022_An Overview on Visual SLAM: From Tradition to Semantic

基本情况 出处&#xff1a;Chen W, Shang G, Ji A, et al. An overview on visual slam: From tradition to semantic[J]. Remote Sensing, 2022, 14(13): 3010. 作者单位&#xff1a;泉州信息工程学院/南京信息工程大学/南京航空航天大学 参考&#xff1a;https://blog.csd…

【持续更新篇】SLAM视觉特征点汇总+ORB特征点+VINS前端

Harris角点 opencv函数 cornerHarris提取输入图像的Harris角点 检测原理 检测思想&#xff1a;使用一个固定窗口在图像上进行任意方向的滑动&#xff0c;对比滑动前后的窗口中的像素灰度变化程度&#xff0c;如果存在任意方向上的滑动&#xff0c;都有较大灰度变化&#xf…

(01)ORB-SLAM2源码无死角解析-(31) ORB特征匹配→词袋BoW:BRIEF描述子转BoW向量

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

【自动驾驶100问】第九问:SLAM是什么?

【自动驾驶100问】第九问&#xff1a;SLAM是什么&#xff1f; 视频 博主是《学习OpenCV4&#xff1a;基于Python的算法实战》和《深度学习计算机视觉实战》图书的作者&#xff0c;目前从事自动驾驶感知融合算法与SLAM算法开发&#xff0c;分享内容包括深度学习、计算机视觉、Op…

(01)ORB-SLAM2源码无死角解析-(22) 特征点三角化、深度计算、三维点筛选

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

【记录】ORB_SLAM2 例程(README文件里的单双目RDB-D、ROS、AR、外接摄像头、点云)

第一次跑 ORB_SLAM2&#xff0c;记录一下一、普通环境0.build.sh 遇到的问题&#xff08;1&#xff09;usleep&#xff08;2&#xff09;AlignedBit1.单目、TUM数据集2.双目、KITTI数据集3.RGB-D、TUM数据集二、ROS0.build_ros.sh 遇到的问题&#xff08;1&#xff09;rospack …

史上最简SLAM零基础解读(2) - 对极约束→Essential矩阵、Fundamental矩阵推导

本人讲解关于slam一系列文章汇总链接:史上最全slam从零开始 有兴趣的朋友可以加微信 17575010159 相互讨论技术 - 文末公众号也可关注 文末正下方中心提供了本人联系方式&#xff0c;点击本人照片即可显示WX→官方认证{\color{blue}{文末正下方中心}提供了本人 \color{red} 联…

从零入门激光SLAM——总目录与更新情况

第一章 初识 1.1 什么是SLAM 从零入门激光SLAM&#xff08;一&#xff09;——什么是SLAM_桦树无泪的博客-CSDN博客 1.2 什么是Ubuntu 从零入门激光SLAM&#xff08;二&#xff09;——Ubuntu基础_乌班图系统架构_桦树无泪的博客-CSDN博客 1.3 什么是ROS 从零入门激光S…

ceres_solver解PnP平差问题、Matlab数据制作

网上的PnP平差没有数据&#xff0c;很痛苦&#xff0c;自己制作数据来解 根据其次坐标的推导公式 在Matlab中制作数据(矩阵运算比较方便_) clc clear X zeros(15, 3); x zeros(15, 2); K[25 0 0;0 25 0;0 0 1;]%相机内参数矩阵 R[0.4770710827172032, -0.7476726229304006,…

RGB-D基准测试工具:绝对轨迹误差 (ATE)、相对位姿误差 (RPE)和从图像生成点云

在估计RGB-D相机轨迹并将其保存到文件中后&#xff0c;我们需要通过将其与地面事实进行比较来评估估计轨迹中的误差。有不同的错误指标。两种突出的方法是绝对轨迹误差&#xff08;ATE&#xff09;和相对姿势误差&#xff08;RPE&#xff09;。ATE非常适合测量可视 SLAM 系统的…

IMU 积分进行航迹推算

IMU 积分进行航迹推算 Reference https://github.com/gaoxiang12/slam_in_autonomous_driving 1.0 递推方程推导 \quad 连续时间内的 IMU 运动学方程&#xff1a; R ˙ R ω ∧ q 1 2 q ω ˙ p ˙ v v ˙ a \dot{\mathbf{R}}\mathbf{R}\omega ^{\wedge} \\ \dot{\mathbf{…

关于菜菜的我决定开源一个ROS/SLAM仓库的二三事

仓库地址&#xff1a; GitHub - anxixu0101/ros_code: 一些关于ros/C从入门&#xff0c;进阶&#xff0c;到修仙的代码一些关于ros/C从入门&#xff0c;进阶&#xff0c;到修仙的代码. Contribute to anxixu0101/ros_code development by creating an account on GitHub.https…

视觉SLAM(二)

思维导图 数学基础-SVD奇异值分解 SVD分解的目标&#xff0c;将mn矩阵A分解为如下形式&#xff1a; 其中U是mm的矩阵&#xff0c;V是nn的矩阵&#xff0c;U&#xff0c;V都是酉矩阵&#xff0c;Σ是mn的对角阵 酉矩阵满足&#xff1a; 形式化理解如下&#xff1a; 求解过程&a…

[SLAM前端系列]——一文读懂ICP

今天突然发现这篇博客写的并不详细&#xff0c;配不上一文读懂这四个字&#xff0c;特此回来更新。 我们知道SLAM可以用2D/3D雷达或者相机实现&#xff08;视觉SLAM&#xff09;。由于笔者是激光SLAM工程师&#xff0c;所以本文的ICP都是在激光雷达的基础上实现的。为了能让大家…

如何把点云地图程序抄到你的ORBSLAM2中

文章目录代码从哪里抄过来&#xff1f;一、还有什么要补充的吗&#xff1f;二、操作步骤1.引入库2.配置文件增加一条3.源代码增删总结代码从哪里抄过来&#xff1f; ORBSLAM2_with_pointcloud_map 一、还有什么要补充的吗&#xff1f; 要完全补全还需要结合另外一篇文章 彩色…

多传感器融合SLAM --- 10.LIO-SAM前端代码分析 imuPreintegration.cpp

目录 0.流程图 1.main函数 2 IMU预积分类 2.1 代码详细注释 2.2 分块讲解--构造函数讲解

论ORBSLAM_with_pointcloud_map段错误(核心已转储)的另一种解决方法

文章目录一、常见思路&#xff1a;更换EIGEN版本到3.2以下操作方式一&#xff1a;操作方式二&#xff1a;二、另一种思路&#xff1a;在CMAKELISTS中取消编译器的一些设置三、我的系统环境四、此错误的核心问题讨论一、常见思路&#xff1a;更换EIGEN版本到3.2以下 操作方式一…

world_canvas的ros项目安装部署

world_canvas_server安装部署 系统ubuntu20.04 ros:noetic 克隆代码&#xff1a; cd /home/sukai/workspace/roskaiyuanweb/catkin_ws_work_canvas/src git clone https://github.com/corot/world_canvas.git git clone https://github.com/corot/world_canvas_libs.git gi…

slambook2+ubuntu20.04(第九章-第十二章)

例程代码编译与效果展示 slambook2 ch9 cmakelists.txt set(CMAKE_BUILD_TYPE "Release") set(CMAKE_CXX_FLAGS "-O3 -stdc11") 修改为 set(CMAKE_BUILD_TYPE "Debug") set(CMAKE_CXX_FLAGS "-O3 -stdc17") bundle_adjustment_cere…

编译高翔博士ORBSLAM_with_pointcloud_map中两个问题解决

编译BUG修复1.编译成功后运行出现&#xff1a;段错误&#xff08;核心已转储&#xff09;2.点云现示不正常解决3.此程序本身存在的问题4.另一种段错误&#xff08;核心已转储&#xff09;解决方法及问题本质讨论1.编译成功后运行出现&#xff1a;段错误&#xff08;核心已转储&…

经典基于外观的SLAM框架-RTABMAP(RGBD视觉输入方案)

经典基于外观的SLAM框架-RTABMAP 文章目录 经典基于外观的SLAM框架-RTABMAP1. RTABMAP整体框架2.RTABMAP的内存管理机制3. 视觉里程计4. 局部地图5. 回环检测与图优化6. 代码工程实践 1. RTABMAP整体框架 RTABMAP是采用优化算法的方式求解SLAM问题的SLAM框架&#xff0c;本赛题…

LIFT:通过学习生成的不变特征变换/开源代码CPU模式配置

首先给出代码地址 LIFT的开源代码地址 起源是有一天我看到了下面这篇文章&#xff1a; 深度学习结合SLAM的研究思路 发现了这个开源代码&#xff0c;想想加到毕设里还能算个创新点呢&#xff0c;于是就搞起。 千万别按作者说的配置环境&#xff0c;不行的&#xff0c;按下面这篇…

(02)Cartographer源码无死角解析-(54) 2D后端优化→PoseGraphInterface、PoseGraph、PoseGraph2D::AddNode()

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文末…

slam中用到的Pangolin安装问题

sudo apt-get install libglew-dev sudo apt-get install cmake sudo apt-get install libboost-dev libboost-thread-dev libboost-filesystem-dev cd ~/orbslam_ws/src$ git clone https://github.com/zzx2GH/Pangolin.git把Pangolin/src/CMakeLists.txt注释掉以下…

(02)Cartographer源码无死角解析-(49) 2D点云扫描匹配→相关性暴力匹配1:SearchParameters

讲解关于slam一系列文章汇总链接:史上最全slam从零开始,针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解:https://blog.csdn.net/weixin_43013761/article/details/127350885 文末正下方中心提供了本…

【3D激光SLAM】LOAM源代码解析--scanRegistration.cpp

系列文章目录 【3D激光SLAM】LOAM源代码解析–scanRegistration.cpp 写在前面 本系列文章将对LOAM源代码进行讲解&#xff0c;在讲解过程中&#xff0c;涉及到论文中提到的部分&#xff0c;会结合论文以及我自己的理解进行解读&#xff0c;尤其是对于其中坐标变换的部分&…

ORB-SLAM2学习笔记9之图像帧Frame

先占坑&#xff0c;明天再完善… 文章目录 0 引言1 Frame类1.1 成员函数1.2 成员变量 2 Frame类的用途 0 引言 ORB-SLAM2学习笔记8详细了解了图像特征点提取和描述子的生成&#xff0c;本文在此基础上&#xff0c;继续学习ORB-SLAM2中的图像帧&#xff0c;也就是Frame类&#…

Ubuntu 20.04使用Livox mid 360 测试 FAST_LIO

前言 Livox mid360需要使用Livox-SDK2&#xff0c;而非Livox-SDK&#xff0c;以及对应的livox_ros_driver2 。并需要修改FAST_LIO中部分代码。 1. 安装Livox-SDK2 参考官方教程。 1.1. 安装CMake sudo apt install cmake1.2. 安装编译Livox-SDK2 git clone https://github…

【3D激光SLAM】LOAM源代码解析--laserOdometry.cpp

系列文章目录 【3D激光SLAM】LOAM源代码解析–scanRegistration.cpp 【3D激光SLAM】LOAM源代码解析–laserOdometry.cpp 写在前面 本系列文章将对LOAM源代码进行讲解&#xff0c;在讲解过程中&#xff0c;涉及到论文中提到的部分&#xff0c;会结合论文以及我自己的理解进行解…

ubuntu20.04 安装使用 Indemind 双目相机

1、先按照官方wiki搭建环境 Ubuntu 安装 — IMSEE SDK 1.4.2 文档&#xff08;ubuntu20使用官网会报错&#xff0c;可以参考我下面的步骤&#xff09; 1.1、获取代码 sudo apt-get install git git clone https://github.com/indemind/IMSEE-SDK.git 1.2、准备依赖 cd <…

【3D激光SLAM】LOAM源代码解析--laserMapping.cpp

系列文章目录 【3D激光SLAM】LOAM源代码解析–scanRegistration.cpp 【3D激光SLAM】LOAM源代码解析–laserOdometry.cpp 【3D激光SLAM】LOAM源代码解析–laserMapping.cpp 【3D激光SLAM】LOAM源代码解析–transformMaintenance.cpp 写在前面 本系列文章将对LOAM源代码进行讲解…

记录:ubuntu20.04+ORB_SLAM2_with_pointcloud_map+ROS noetic

由于相机实时在线运行需要ROS&#xff0c;但Ubuntu22.04只支持ROS2&#xff0c;于是重装Ubuntu20.04。上一篇文章跑通的是官方版本的ORB_SLAM2&#xff0c;不支持点云显示。高翔修改版本支持RGB-D相机的点云显示功能。 高翔修改版本ORB_SLAM2&#xff1a;https://github.com/ga…

【3D激光SLAM】LOAM源代码解析--transformMaintenance.cpp

系列文章目录 【3D激光SLAM】LOAM源代码解析–scanRegistration.cpp 【3D激光SLAM】LOAM源代码解析–laserOdometry.cpp 【3D激光SLAM】LOAM源代码解析–laserMapping.cpp 【3D激光SLAM】LOAM源代码解析–transformMaintenance.cpp 写在前面 本系列文章将对LOAM源代码进行讲解…

【3D激光SLAM】LOAM源代码解析--transformMaintenance.cpp

系列文章目录 【3D激光SLAM】LOAM源代码解析–scanRegistration.cpp 【3D激光SLAM】LOAM源代码解析–laserOdometry.cpp 【3D激光SLAM】LOAM源代码解析–laserMapping.cpp 【3D激光SLAM】LOAM源代码解析–transformMaintenance.cpp 写在前面 本系列文章将对LOAM源代码进行讲解…

详解使用ament_cmake构建ROS2功能包

ROS2的构建系统叫做ament_cmake&#xff0c;它是基于CMake改进而来的。接下来将详细介绍一下ament_cmake常用的一些命令&#xff1a; ament_target_dependencies&#xff1a;添加重要的头文件、库以及相关依赖ament_export_dependencies&#xff1a;导出依赖给下游的功能包&am…

realsenseD435i运行vins-mono

目录写在前面准备编译vins-mono:修改launch:realsense:vins-mono:运行参考完写在前面 1、本文内容 realsenseD435i运行vins-mono 2、平台 ubuntu1804, ros melodic 3、转载请注明出处&#xff1a; https://blog.csdn.net/qq_41102371/article/details/126777778 准备 编译v…

(01)ORB-SLAM2源码无死角解析-(30) ORB特征匹配→词袋BoW(bag of words):简介,优劣势分析

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(01)ORB-SLAM2源码无死角解析链接如下(本文内容来自计算机视觉life ORB-SLAM2 课程课件): (01)ORB-SLAM2源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin…

高博的ORB-SLAM2,彩色地图补全计划,并保存点云地图

彩色地图补全计划点云拼接与三维稠密点云重建彩色地图补全计划保存点云地图补全计划被贴吧老哥文字剧透了&#xff0c;还好我什么党都不是&#xff0c;刀不到我&#xff0c;希望能早点在中国上映点云拼接与三维稠密点云重建 高博的ORBSLAM2_with_pointcloud_map: github 基于高…

视觉SLAM学习路线思维导图

整理了一下视觉SLAM学习路线的思维导图&#xff0c;防遗忘&#xff0c;不足的地方也希望各路大神能够不吝赐教。

imu绘制运动轨迹

目录写在前面代码imu_tf_pose.cpp编译运行注意参考完写在前面 1、本文内容 读取IMU实时数据绘制运动轨迹 2、平台 ubuntu1804, ros melodic 3、转载请注明出处&#xff1a; https://blog.csdn.net/qq_41102371/article/details/126153277 代码 mkdir -p imu_ws/src cd imu_…

kitti点云地图拼接

文章目录1. 关于kitti数据集以及坐标系2. 关于bin格式点云的存储方式3. 点云拼接前言&#xff1a;这段时间在学习坐标系变换相关的知识&#xff0c;同时尝试了利用kitti公开点云数据集以及对应的真实位姿&#xff0c;拼接出全局地图&#xff0c;如下图所示&#xff0c;我采用了…

ORB-SLAM闭环端相似变换算法

ORB-SLAM闭环端相似变换 论文&#xff1a;Closed-form solution of absolute orientation using unit quaternions 参考资料 [1]Horn B K P . Closed-form solution of absolute orientation using unit quaternions[J]. Journal of the Optical Society of America A, 1987…

改进LOAM的方法:使用CSS(曲率尺度空间)提取点云的角点

改进LOAM的方法&#xff1a;使用CSS(曲率尺度空间)提取点云的角点 参考资料 [1] Gonzalez C , Adams M . An improved feature extractor for the Lidar Odometry and Mapping (LOAM) algorithm[C]// 2019 International Conference on Control, Automation and Information …

ORB-SLAM学习——EPnP算法

论文&#xff1a;EPnP: Accurate Non-Iterative O(n) Solution to the PnP Problem 参考资料&#xff1a; [1] Lepetit V , Moreno-Noguer F , Fua P . EPnP: An AccurateO(n) Solution to the PnP Problem[J]. international journal of computer vision, 2009, 81(2):155-1…

The Iterated Kalman Filter Update as a Gauss-Newton Method(迭代卡尔曼滤波器)

The Iterated Kalman Filter Update as a Gauss-Newton Method Iterated Kalman filter(IKF)是应用高斯牛顿迭代法改良Extended Kalman filter(EKF)的方法&#xff0c;它牺牲掉少量计算时间&#xff0c;通过引入非线性优化去寻找状态后验的最大似然&#xff0c;因而能够解决EK…

(02)Cartographer源码无死角解析-(71) 2D后端优化→OptimizationProblem2D::Solve() - 优化准备工作,参数块

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文…

《视觉SLAM十四讲》读书笔记(一)

本着重温知识和巩固基础的目的&#xff0c;我最近重新精读一次《十四讲》。考虑到脑子不好使&#xff0c;每次看完就忘记&#xff0c;因此开一个专栏专门用于记录重要知识点。由于本身具备一定的SLAM系统开发经验和理论知识&#xff0c;因此一些太过基础的知识会适当省略过。 目…

VINS(feature_traker模块)细节笔记

VINS代码详解&#xff08;feature_traker模块中的函数详解&#xff09; 说明&#xff1a;VINS的学习过程主要参考VINS-Mono论文学习与代码解读——目录与参考。由于本人基础较差&#xff0c;有很多细节内容不理解&#xff0c;因此针对本人需求编写如下笔记。 模块的接口 订阅…

GeographicLib安装

GeographicLib C API 官方文档 安装 下载压缩包安装&#xff1a; GeographicLib-1.51.tar.gz Unpack the source, running one of tar xfpz GeographicLib-1.51.tar.gzthen enter the directory created with cd GeographicLib-1.51 Create a separate build directory …

ubuntu16.04安装g2o后会出现g2o_viewer不能用的情况

ubuntu16.04安装g2o后会出现g2o_viewer不能用的情况 主要原因是qt版本不对应&#xff0c;g2o库需要qt4&#xff0c;但是我们通常安装的是qt5 解决方法&#xff1a; sudo apt remove libqglviewer-dev sudo apt install libqglviewer-dev-qt4 cd /usr/lib/x86_64-linux-gnu s…

(02)Cartographer源码无死角解析-(69) 2D后端优化→线程池深入追踪、问题、困惑梳理,知识点小结

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文…

《视觉SLAM十四讲》读书笔记(四)

非线性优化6.1 状态估计问题6.1.1 批量状态估计与最大后验估计6.1.2 最小二乘的引出6.1.3 最小二乘问题解析解6.2 非线性最小二乘6.2.1 一阶和二阶梯度法&#xff08;1&#xff09;最速下降法&#xff08;2&#xff09;牛顿法&#xff08;3&#xff09;小结 1&#xff08;4&…

ORB_SLAM2 源码解析 特征匹配 (五)

目录 一、单目初始化中的特征匹配SearchForInitialization 二、跟踪&#xff08;TrackwithModel&#xff09; TrackReferenceKeyFrame 三、词袋介绍BoW 1、直观理解词袋 2、词袋基本思想 3、从字典结构到k-d树 K-means聚类 4、相似度计算TF-IDF 5、总结词袋模型 四、词…

ORB_SLAM2 源码解析 单目初始化器Initializer(三)

目录 一、地图点初始化 二、重新记录特征点的匹配关系 1、构建旋转直方图 1.1、在半径窗口内搜索当前帧F2中所有的候选匹配特征点GetFeaturesInArea 1.2、表示一个图像像素相当于多少个图像网格列和行 1.4、遍历圆形区域内的所有网格&#xff0c;寻找满足条件的候选特征点&…

ORB_SLAM2 源码解析 ORB特征提取(二)

目录 一、各成员函数变量 1、定义一个枚举类型用于表示使用HARRIS响应值还是使用FAST响应值 2、内联函数都是用来直接获取类的成员变量的 3、保护成员 二、计算特征点的方向 computeOrientation() 2.1、灰度质心法算法步骤 1、计算一个半径为15的近似圆 2、计算特征点角度…

ORB_SLAM2 源码解析 ORB_SLAM2简介(一)

目录 一、ORB_SLAM2的特点 二、算法流程框架 ORB-SLAM整体流程如下图所示 a、跟踪&#xff08;Tracking&#xff09;   b、建图&#xff08;LocalMapping&#xff09;  c、闭环检测&#xff08;LoopClosing&#xff09; 三、安装教程 1、克隆仓库 2、编译ORB-SLAM2&…

slam 直接法(七)

目录 一、直接法的不足之处与解决方法 二、光流法&#xff08;optical flow&#xff09; 三、直接法计算过程 一、直接法的不足之处与解决方法 不足 1、关键点提取与描述子计算耗时 2、信息容易丢失 3、特征缺失&#xff1a;比如说一堵白墙&#xff0c;空荡荡的走廊就会出现找…

slam 3D-3D ICP (六)

目录 一、介绍ICP&#xff08;Iterative Closest Point&#xff09; 二、求解ICP 1、使用线性代数SVD求解 2、线性SVD求解方法总结 2.1、计算两幅图像匹配好的3D点 的质心坐标,然后计算去质心坐标&#xff1a; 2.2、计算旋转矩阵 2.3计算t 2、非线性优化方法 一、介绍IC…

slam 3d-2d pnp(五)

目录 一、pnp是什么 二、求解PNP 三、求解P3P 四、重投影误差&#xff08;Bundle Adjustment&#xff09; 一、pnp是什么 PnP问题是求解3D-2D点对运动的方法。他描述了当知道n个三维空间点坐标及其二维投影位置时&#xff0c;如何估计相机的位姿。我们可以想象&#xff0c;…

slam 2d-2d对极几何(四)

目录 一、2D-2D对级几何介绍 二、2D-2D求解步骤 像素→相机位置R,T→像素深度S 1、通过两张图片中像素坐标转换求出本质矩阵E和基础矩阵F 相机→像素 本质矩阵E ​ 基础矩阵F ​ 2、通过本质矩阵E和基础矩阵F求出相机姿态R&#xff0c;T a、求…

slam三维空间的刚体运动(二)

目录 一、初识slam 1、定位与建图 2、相机类型 3、视觉slam框架 二、三维空间的刚运动 1、坐标系的转换 世界坐标系----相机坐标系 相机坐标系--图像坐标系 像素坐标系--图像坐标系 像素坐标系---世界坐标系 一、初识slam 1、定位与建图 定位&#xff1a;我在什么地…

ubuntu上运行g2o

1、打开Kdevelop&#xff0c;点击新建工程 2、选择standard----Terminal----输入应用程序名称&#xff0c;点击next&#xff0c;点击确认。 3、点击左上角工程&#xff0c;打开CmakeList.txt输入以下代码 cmake_minimum_required(VERSION 2.6) project(g20)set( CMAKE_BUILD_T…

【视觉SLAM入门】6.1. (基于直接法的视觉里程计)LK光流法,代码解读, 直接法,特征点法对比,稀疏,半稠密,稠密地图

"刺卵掷地&#xff0c;逐蝇弃笔" 0. 数据集1. 光流法(Optical Flow)1.1. 光流1.2. LK光流法1.3 关键代码&#xff1a;1.4 特点 2. 直接法(Direct Methods)2.1 分类比较2.2 优缺点 前置事项&#xff1a; 特征点耗时&#xff0c;丢弃有用信息&#xff0c;特征缺失&…

R3LIVE源码解析(7) — R3LIVE中LiDAR_front_end.cpp文件

目录 1 LiDAR_front_end.cpp简介 2 LiDAR_front_end.cpp程序解析 1 LiDAR_front_end.cpp简介 激光点云首先在LiDAR_front_end节点中提取特征点&#xff0c;将处理完的信息通过/laser_cloud_flat完成节点的发送出去&#xff0c;与FAST-LIO2相同R3LIVE也只用到了面特征作为ESI…

视觉SLAM十四讲(一)--配置vscode编译环境

最近打算系统学习一下SLAM的知识&#xff0c;高翔博士的《视觉SLAM十四讲》是一本不错的入门课程&#xff0c;于是打算开个专题记录一下学习过程中出现的问题以及学习心得。 配置vscode C编译环境 由于此教程的大部分代码都是由C完成&#xff0c;为了方便在ubuntu系统下进行编…

在一台刚装好Ubuntu系统和ROS的电脑上安装编译运行loam,编译过程在出现问题

安装过程见&#xff1a;添加链接描述 https://blog.csdn.net/weixin_43211438/article/details/87818526 安装pcl时&#xff0c;执行sudo apt-get install libvtk5.10-qt4 libvtk5.10 libvtk5-dev时&#xff0c;会有如下提示&#xff1a; 当时没有理会&#xff0c;直接继续安装…

Ubuntu下vscode添加Eigen库之天坑(vscode对eigen库报错解决)

学习SLAM编程小笔记&#xff0c;如有错误&#xff0c;请大佬指点 在slam中最重要的就是Eigen库&#xff0c;在高博的书上使用的是KDdevelop&#xff0c;我对vscode情有独钟想要在上面学习——死磕就完事了。如果遇到vscode对eigen库报错这个问题请直接拉到下面看。 一、现在终…

(02)Cartographer源码无死角解析-(75) 2D后端优化→整体复盘,理解后端优化核心思想

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文…

跑ORB-SLAM2踩的坑

Pangolin 和 Eigen的神坑 这两个库时真的烦人&#xff0c;为了跑个代码&#xff0c;系统我重装了两次… ubuntu 18.04apt-get更新了后,apt-get装的cmake,g,gcc,还有sudo apt-get install libeigen3-dev下载的eigen版本就足够了&#xff0c;不需要去它官网里下载编译… Pango…

mac CLion cmake 调用自己定义的头文件

调用头文件失败 在学习slam14讲时&#xff0c;ch2、3在复现代码时&#xff0c;使用cmake时&#xff0c;自己没有完全按照书上来&#xff0c;自作主张的多创建了文件夹&#xff0c;并且把要当做库的.cpp文件和.h文件直接放入了文件夹下&#xff0c;main.cpp在外面&#xff0c;然…

(02)Cartographer源码无死角解析-(72) 2D后端优化→OptimizationProblem2D-约束残差、landmark残差

讲解关于slam一系列文章汇总链接:史上最全slam从零开始,针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解:https://blog.csdn.net/weixin_43013761/article/details/127350885 文末正下方中心提供了本…

每日浅读SLAM论文——简析Cartographer

文章目录 二维激光SLAM简单框架前端scan matchingSubmaps构建 后端分支定界优化csm&#xff08;CorrelativeScanMatch&#xff09; 代码实现框架 Cartographer&#xff08;论文名&#xff1a;Real-Time Loop Closure in 2D LIDAR SLAM&#xff09;是目前二维激光SLAM中应用最广…

每日浅读SLAM论文——简析Gmapping

文章目录 粒子滤波算法Gmapping改进 Gmapping是基于粒子滤波的二维激光SLAM算法&#xff0c;虽然自从cartographer出现后已经不太使用了&#xff08;因为他没有回环&#xff0c;且随着地图大小提升需要更多粒子&#xff0c;算法复杂度过高&#xff09;&#xff0c;但是它任然是…

每日浅读SLAM论文——简析Gmapping

文章目录 粒子滤波算法Gmapping改进 Gmapping是基于粒子滤波的二维激光SLAM算法&#xff0c;虽然自从cartographer出现后已经不太使用了&#xff08;因为他没有回环&#xff0c;且随着地图大小提升需要更多粒子&#xff0c;算法复杂度过高&#xff09;&#xff0c;但是它任然是…

(02)Cartographer源码无死角解析-(73) 2D后端优化→OptimizationProblem2D-landmark残差细节分析

讲解关于slam一系列文章汇总链接:史上最全slam从零开始,针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解:https://blog.csdn.net/weixin_43013761/article/details/127350885 文末正下方中心提供了本…

视觉SLAM十四讲从理论到实践第1讲到第2讲的重点探索

目录前言一、何为SLAM1.SLAM初识2.传感器之与视觉SLAM紧密相关的相机&#xff08;1&#xff09;.单目相机&#xff08;2&#xff09;.双目相机和深度相机3.经典视觉SLAM框架&#xff08;1&#xff09;.传感器信息读取&#xff1a;&#xff08;2&#xff09;.前端视觉里程计&…

Ubuntu 20.04 与 ROS noetic安装 gtsam 编译 LIO-SAM 的适配版本

Ubuntu 20.04 基于 ROS noetic安装 gtsam&#xff0c; 编译 LIO-SAM 的适配版本 摘要安装GTSAM(ros-noetic-gtsam版本)编译LIO-SAM的适配版本 摘要 本文简介在 Ubuntu 20.04 下以 ROS noetic 为基础安装 GTSAM 并成功编译 LIO-SAM 的适配版本。 安装GTSAM(ros-noetic-gtsam版…

dji uav建图导航系列(二)导航

文章目录 1、导航节点launch文件1.1、节点参数1.2、模拟器节点1.3、无人机雷达-底盘节点1.4、地图服务器节点1.5、AMCL节点1.6、move_base节点1.7、rviz可视化节点2、导航测试2.1、导航实测2.2、动态参数配置 rqt_reconfigure1、导航节点launch文件 导航节点启动文件 uav_navi…

ubuntu20.04+ROS noetic在线运行单USB双目ORB_SLAM

双目摄像头主要有以下几种&#xff0c;各有优缺点。 1.单USB插口&#xff0c;左右图像单独输出2.双USB插口&#xff0c;左右图像单独输出&#xff08;可能存在同步性问题&#xff09;3.双USB插口&#xff0c;左右图像合成输出4.单USB插口&#xff0c;左右图像合成输出 官方版…

ORB-SLAM2算法10之图像关键帧KeyFrame

文章目录 0 引言1 KeyFrame类1.1 构造函数1.2 成员函数1.3 关键帧之间共视图1.3.1 AddConnection1.3.2 UpdateBestCovisibles1.3.3 UpdateConnections1.3.4 EraseConnection1.3.5 SetBadFlag 1.4 地图点1.5 生成树 2 KeyFrame用途 0 引言 ORB-SLAM2算法7详细了解了System主类和…

ORB-SLAM2算法11之地图点MapPoint

文章目录 0 引言1 MapPoint类1.1 构造函数1.2 成员函数1.2.1 AddObservation1.2.2 EraseObservation1.2.3 SetBadFlag1.2.4 Replace1.2.5 ComputeDistinctiveDescriptors1.2.6 UpdateNormalAndDepth1.2.7 PredictScale 2 MapPoint类用途 0 引言 ORB-SLAM2算法7详细了解了Syste…

SLAM论文详解(5) — Bundle_Adjustment_LM(BALM)论文详解

目录 1 摘要 2 相关工作 3 BA公式和导数 A. 直接BA公式 B. 导数 C. 二阶近似 4 自适应体素化 5. 将BALM结合进LOAM 6. 实验 7. 算法应用场景解析 1 摘要 Bundle Adjustment是一种用于同时估计三维结构和传感器运动运动的优化算法。在视觉SLAM&#xff0c;三维重建等…

【视觉SLAM入门】7.3.基于KF/EKF和基于BA图优化的后端,推导及举例分析

"时间倾诉我的故事" 1. 理论推导2. 主流解法3. 用EKF估计状态3.1. 基于EKF代表解法的感悟 4. 用BA法估计状态4.1 构建最小二乘问题4.2 求解BA推导4.3 H的稀疏结构4.4 根据H稀疏性求解4.5 鲁棒核函数4.6 编程注意 5.总结 引入&#xff1a; 前端里程计能给出一个短时间…

地图结构 | 图解占据栅格地图原理(附Matlab建图实验)

目录 0 专栏介绍1 栅格地图1.1 应用场景1.2 基本概念 2 占据栅格地图2.1 更新模型2.2 截断策略 3 仿真实现3.1 算法流程3.2 Matlab实现 0 专栏介绍 &#x1f525;附C/Python/Matlab全套代码&#x1f525;课程设计、毕业设计、创新竞赛必备&#xff01;详细介绍全局规划(图搜索…

ORB_SLAM3 判断关键帧与创建关键帧

NeedNewKeyFrame NeedNewKeyFrame主要用于判断是否需要创建新的关键帧&#xff0c;其步骤如下&#xff1a; 当为IMU模式且IMU未初始化时&#xff0c;固定时间段生成关键帧 if((mSensor System::IMU_MONOCULAR || mSensor System::IMU_STEREO || mSensor System::IMU_RGBD)…

《视觉 SLAM 十四讲》V2 第 11 讲 回环检测【消除累积误差】

待做: 习题整理 相关文献【新的综述】等 P283 文章目录 11.2 词袋 模型11.3.2 Code&#xff1a; 创建字典11.4.2 Code&#xff1a; 相似度 计算训练 自己的字典 报错 习题√ 题1√ 题2题3 DBoW3库题4题5 基于 词袋 的外观式 回环检测 SLAM主体(前端后端)&#xff1a; 估计相机…

【SLAM】光流 - LK光流 - 金字塔分层LK光流

在SLAM的视觉里程计中&#xff0c;比较常用的就是特征点法和直接法。而直接法中&#xff0c;光流则是其中的重点内容&#xff0c;比如LSD-SLAM中就使用到了光流的方法。本文将会就光流的理论原理、公式推导进行详细的剖析&#xff0c;以帮助读者深刻地理解。 光流算法 光流是关…

对‘pcl::KdTreeFLANN<pcl::PointXYZ, flann::L2_Simple<float> >::KdTreeFLANN(bool)’未定义的引用的解决方法

最近在学习PCL点云库相关内容&#xff0c;参考https://www.cnblogs.com/li-yao7758258/p/6437440.html的kdtree代码&#xff0c;发现出现如下bug&#xff1a; kdtree.cpp:(.text0x223)&#xff1a;对‘pcl::KdTreeFLANN<pcl::PointXYZ, flann::L2_Simple >::KdTreeFLANN(…

Pangolin安装过程中 cmake --build . 步骤/usr/bin/ld: 找不到 -lEigen3::Eigen解决方法

问题描述&#xff1a; 在安装Pangolin过程中&#xff0c;完成cmake…之后 cmake --build .出现/usr/bin/ld: 找不到 -lEigen3::Eigen的bug。 原因分析&#xff1a; Pangolin 版本太高。 解决方案&#xff1a; 选择Pangolin v0.5进行git。

ORB-SLAM2算法15之回环检测线程Loop Closing

文章目录 0 引言1 概述2 回环主函数3 回环检测4 计算Sim3变换5 回环矫正 0 引言 ORB-SLAM2算法7详细了解了System主类和多线程、ORB-SLAM2学习笔记8详细了解了图像特征点提取和描述子的生成、ORB-SLAM2算法9详细了解了图像帧、ORB-SLAM2算法10详细了解了图像关键帧、ORB-SLAM2…

dji uav建图导航系列()move_base

文章目录 1、导航框架2、move_base功能包3、amcl功能包4、代价地图的配置4.1、通用配置文件4.2、全局规划配置文件4.3、局部规划配置文件5、局部规划器配置6、launch文件1、导航框架 导航的关键是机器人定位和路径规划两大部分 move_base:实现机器人导航中的最优路径规划 am…

ORB-SLAM2算法14之局部建图线程Local Mapping

文章目录 0 引言1 概述2 处理队列中的关键帧3 剔除坏的地图点4 创建新地图点5 融合当前关键帧和其共视帧的地图点6 局部BA优化7 剔除冗余关键帧 0 引言 ORB-SLAM2算法7详细了解了System主类和多线程、ORB-SLAM2学习笔记8详细了解了图像特征点提取和描述子的生成、ORB-SLAM2算法…

【视觉SLAM入门】7.2. 从卡尔曼滤波到扩展卡尔曼滤波,引入、代码、原理、实战,C++实现以及全部源码

"觇其平生&#xff0c;岂能容物&#xff1f;" 0. 简单认识1. 公式对比解读2. 应用举例3. 解决方案(公式---代码对应)3.1 初始化3.2 EKF3.2.1 预测---状态方程3.2.2 系统协方差矩阵3.2.3 预测---系统协方差矩阵3.2.4 设置测量矩阵3.2.5 更新---状态变量&#xff0c;卡…

手撕 视觉slam14讲 ch13 代码(1)工程框架与代码结构

在学习slam一年之后开始&#xff0c;开始自己理思路&#xff0c;全手敲完成ch13的整个代码 我们按照自己写系统的思路进行&#xff0c;首先确定好SLAM整体系统的流程&#xff0c;见下图&#xff0c;输入为双目图像&#xff0c;之后进入前端位姿估计和后端优化&#xff0c;中间…

手撕 视觉slam14讲 ch7 / pose_estimation_3d2d.cpp (1)

首先理清我们需要实现什么功能&#xff0c;怎么实现&#xff0c;提供一份整体逻辑&#xff1a;包括主函数和功能函数 主函数逻辑&#xff1a; 1. 读图,两张rgb&#xff08;cv::imread&#xff09; 2. 找到两张rgb图中的特征点匹配对 2.1定义所需要的参数&#xff1a;keypoints…

【SLAM轨迹误差】rpg_trajectory_evaluation

下载地址&#xff1a;https://www.zora.uzh.ch/id/eprint/175991/1/IROS18_Zhang.pdf Z. Zhang and D. Scaramuzza, “A Tutorial on Quantitative Trajectory Evaluation for Visual(-Inertial) Odometry,” 2018 IEEE/RSJ International Conference on Intelligent Robots an…

dji uav建图导航系列(三)模拟建图、导航

前面博文【dji uav建图导航系列()建图】、【dji uav建图导航系列()导航】 使用真实无人机和挂载的激光雷达完成建图、导航的任务。 当需要验证某一个slam算法时,我们通常使用模拟环境进行测试,这里使用stageros进行模拟测试,实际就是通过模拟器,虚拟一个带有传感器(如…

关于单线激光线特征问题的一些资料和想法

单线激光更容易受环境干扰,其本身所包含的数据也有限,如何在有限的数据中获取更加丰富的信息,提取特征是一个非常有效的办法。特征的提取在图像领域使用颇多,也是视觉SLAM的核心算法,但是对于激光数据的相关研究较少,单线激光的特征屈指可数。 激光的线特征提取的研究已…

ORB-SLAM2算法13之跟踪线程Tracking

文章目录 0 引言1 跟踪线程Tracking1.1 概述1.2 初始化1.2.1 单目初始化1.2.2 双目/RGBD初始化 1.3 跟踪方法1.3.1 恒速模型跟踪1.3.2 参考关键帧跟踪1.3.3 重定位跟踪 1.4 局部地图跟踪1.4.1 流程1.4.2 更新局部关键帧1.4.3 更新局部地图点1.4.4 进一步优化 1.5 关键帧生成1.5…

ROS常见问题 | 虚拟机打开RVIZ闪退出错

文章目录 环境复现BUG原因解决环境 WIN10虚拟机 VMware Workstation16 Pro Ubuntu18.04 复现 使用rviz命令打开rviz rviz -d xxx.rvizBUG [ INFO] [1694154353.619329866]: rviz version 1.13.30 [ INFO] [1694154353.619364

《视觉 SLAM 十四讲》V2 第 10 讲 后端优化2 简化BA 【位姿图】

文章目录 第10讲 后端210.1 滑动窗口滤波 和 优化10.1.2 滑动窗口法 10.2 位姿图10.3 实践&#xff1a; 位姿图优化本讲 CMakeLists.txt 10.3.1 g2o 原生位姿图 【Code】10.3.2 李代数上的位姿优化 【Code】 习题10题1 【没推完】 LaTex 第10讲 后端2 滑动窗口优化 位姿图优化…

校招时间紧很迷茫?校招机会怎么把握?没有项目简历怎么写?

校招分为秋招和春招&#xff0c;可以说校招是应届生零工作经验进入大厂的唯一机会。 现在十月份也是招聘的重要时间&#xff0c;很多公司的校招从十月份开始&#xff0c;现在秋招如果你没有好的offer&#xff0c;可以好好准备来年的春招&#xff0c;我们为学员准备了丰富的面试…

《视觉 SLAM 十四讲》V2 第 9 讲 后端优化1 【扩展卡尔曼滤波器 EKF BA+非线性优化(Ceres、g2o)】

文章目录 第9讲 后端19.1.2 线性系统和 KF9.1.4 扩展卡尔曼滤波器 EKF 不足 9.2 BA 与 图优化9.2.1 投影模型和 BA 代价函数9.2.2 BA 的求解9.2.3 稀疏性 和 边缘化9.2.4 鲁棒核函数 9.3 实践&#xff1a; Ceres BA 【Code】本讲 CMakeLists.txt 9.4 实践&#xff1a;g2o 求解 …

Slam基础 三维空间运动

三维空间刚体运动 旋转矩阵 点和向量,坐标系 向量 a a a在线性空间的基 [ e 1 , e 2 , e 3 ] [e_1, e_2, e_3] [e1​,e2​,e3​]下的坐标为 [ a 1 , a 2 , a 3 ] T [a_1, a_2, a_3]^T [a1​,a2​,a3​]T. a [ e 1 , e 2 , e 3 ] [ a 1 a 2 a 3 ] a 1 e 1 a 2 e 2 a 3 e 3 …

在docker环境下从头搭建openvslam/orb_slam3的流程记录以及问题总结

文章目录 0. 前言1. MobaXterm软件2. docker操作2.1. 拉一个ubuntu镜像2.2. 修改名字&#xff08;可选&#xff09;2.3. 删除之前的docker镜像&#xff08;可选&#xff09; 3. openvslam搭建流程3.1. 起容器3.2. 前置包的安装3.3. 安装Eigen3.4. 安装opencv3.5. 安装DBoW23.6.…

LIO-SAM算法解析

文章目录 简介算法概述1.点云去畸变1.1 主要功能1.2 主要流程 2.特征提取3.IMU预积分4.地图优化5.算法评估 简介 LIO-SAM在lego-loam的基础上新增了对IMU和GPS的紧耦合&#xff0c;采用一个因子图对位姿进行优化&#xff0c;包括IMU因子&#xff0c;激光里程计因子&#xff0c…

基于SC-LeGO-LOAM的建图和ndt_localizer的定位

link 基于SC-LeGO-LOAM的建图和ndt_localizer的定位 链接: link. SC-LeGO-LOAM 链接: link. ndt_localizer 将建图和定位两部分分开&#xff0c;利用SC-LeGO-LOAM进行建图&#xff0c;相比于LeGO-LOAM&#xff0c;其采用了Scan Context方法&#xff0c;对点云地图进行闭环检测和…

手撕 视觉slam14讲 ch13 代码(6)正常跟踪模式 Track()

上一篇 双目初始化完成过程中&#xff0c;跟踪状态FrontendStatus变成了TRACKING_GOOD&#xff0c;因此之后&#xff0c;将进入 正常跟踪的Track() 函数&#xff1a; Track函数的流程也很清晰&#xff1a; 首先&#xff0c;用匀速模型给当前帧的pose设置一个初值&#xff0c;…

基于ubuntu20.04 环境跑通LIO_SAM重定位

link 序言 作为LOAM重要的一个变种&#xff0c;LIO_SAM基本上算是这个系列里面知识点最全面。这个软件框架包含了去畸变、特征点提取&#xff08;角点、平面点&#xff09;、前端、后端、回环&#xff0c;同时软件框架还融合了IMU信息&#xff0c;可以配置融合GPS信息。当然这种…

ROS使用自定义全局路径规划器编译时报错 ‘xxx’ is not a member of ‘pcl::traits’的解决方法

link 当我们将自己编写的全局路径规划器插件放到工作空间下进行编译的时候&#xff0c;可能会报一堆错误&#xff0c;主要的错误提示为‘xxx’ is not a member of ‘pcl::traits&#xff0c;    其中的xxx代表某一名词&#xff0c;如plus、plusscalar、minus等&#xff0c;如…

安装rtabmap_ros包

一、前言 RTAB-Map (Real-Time Appearance-Based Mapping)是一种基于全局贝叶斯闭环检测的RGB-D Graph SLAM方法。它可以用kinect的深度信息结合kinect变换得到的激光数据进行即时定位与建图&#xff08;gmapping算法志只用到了kinect转换得到的激光数据&#xff0c;而把深度信…

【视觉SLAM入门】7.1. 快速从0上手卡尔曼滤波,二维原理及代码(C++,Eigen库,Cmake工程实现,全部源码)

"录诗误字&#xff0c;啮臂流血" 0. 简单认识1. 公式解读2. 应用举例3.(公式--代码对应 )3.1 初始化3.2 预测3.2.1. 状态量3.2.2 系统协方差3.2.3 更新---H测量矩阵3.2.3 更新---卡尔曼增益K3.2.4 再更新状态量和系统协方差矩阵 4. 源码4.1 KalmanFilter.hpp 库4.2 m…

卡尔曼家族从零解剖-(04)贝叶斯滤波→细节讨论,逻辑梳理

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的 卡尔曼家族从零解剖 链接 :卡尔曼家族从零解剖-(00)目录最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/133846882 文末正下方中心提供了本人 联系…

SLAM ORB-SLAM2(1)总体框架

SLAM ORB-SLAM2(1)总体框架 1. 简介2. 框架3. TRACKING4. LOCAL MAPPING5. LOOP CLOSING6. MAP1. 简介 ORB-SLAM2 是一个实时和完整的视觉SLAM系统(包括闭环检测、重定位、地图重用等功能) 提供了利用单目、双目以及RGB-D相机完成稀疏三维重建的功能和接口 2. 框架 总体来说…

ORB-SLAM2学习笔记7之System主类和多线程

文章目录 0 引言1 整体框架1.1 整体流程 2 System主类2.1 成员函数2.2 成员变量 3 多线程3.1 ORB-SLAM2中的多线程3.2 加锁 0 引言 ORB-SLAM2是一种基于特征的视觉SLAM&#xff08;Simultaneous Localization and Mapping&#xff09;系统&#xff0c;它能够从单个、双目或RBG…

【深蓝学院】手写VIO第8章--相机与IMU时间戳同步--作业

0. 题目 1. T1 逆深度参数化时的特征匀速模型的重投影误差 参考常鑫助教的答案&#xff1a;思路是将i时刻的观测投到world系&#xff0c;再用j时刻pose和外参投到j时刻camera坐标系下&#xff0c;归一化得到预测的二维坐标&#xff08;这里忽略了camera的内参&#xff0c;逆深…

工程(十四)——ubuntu20.04 PL-VINS

博主创建了一个科研互助群Q&#xff1a;772356582&#xff0c;欢迎大家加入讨论。这是一个科研互助群&#xff0c;主要围绕机器人&#xff0c;无人驾驶&#xff0c;无人机方面的感知定位&#xff0c;决策规划&#xff0c;以及论文发表经验&#xff0c;以方便大家很好很快的科研…

VinsFusion排坑指南

Ubuntu18.04Cere 下载1.14.0版本。Ceres安装方法参考vinsfusion的docker fileOpenCV相关报错 参考 https://wenda.ncnynl.com/article/5CV_LOAD_IMAGE_GRAYSCALE 改成 cv::IMREAD_GRAYSCALE 在三个CMakeLists文件中指定opencv的版本&#xff1a; find_package(OpenCV 3.2.0 REQ…

【rgbd_benchmark_tools】TUM RGBD数据集基准测试工具使用调试记录,SLAM评估

cgmcgm:~/文档/rgbd_benchmark_tools$ /bin/python /home/cgm/文档/rgbd_benchmark_tools/src/rgbd_benchmark_tools/evaluate_ate.py Traceback (most recent call last):File "/home/cgm/文档/rgbd_benchmark_tools/src/rgbd_benchmark_tools/evaluate_ate.py", li…

手撕 视觉slam14讲 ch13 代码(4)VisualOdometry类和工程主函数

1.run_kitti_stereo.cpp 接下来我们开始进入工程主函数run_kitti_stereo.cpp&#xff0c;流程非常简单&#xff1a; 首先实例化了一个VisualOdometry类的类指针vo&#xff0c;传入config的地址然后vo类指针调用 VisualOdometry 类中的 Init() 函数 &#xff0c;进行VO的初始化…

【视觉SLAM入门】7.3.后端优化 基于KF/EKF和基于BA图优化的后端,推导及举例分析

"时间倾诉我的故事" 1. 理论推导2. 主流解法3. 用EKF估计状态3.1. 基于EKF代表解法的感悟 4. 用BA法估计状态4.1 构建最小二乘问题4.2 求解BA推导4.3 H的稀疏结构4.4 根据H稀疏性求解4.5 鲁棒核函数4.6 编程注意 5.总结 引入&#xff1a; 前端里程计能给出一个短时间…

ORB-SLAM2_RGBD_DENSE_MAP编译、问题解决、离线加载TUM数据和在线加载D435i相机数据生成稠密地图

文章目录 0 引言1 安装依赖1.1 其他库安装1.2 pcl库安装 2 编译ORB-SLAM2_RGBD_DENSE_MAP2.1 build.sh2.2 build_ros.sh 3 运行ORB-SLAM2_RGBD_DENSE_MAP3.1 build.sh编译版本3.2 build_ros.sh编译版本 0 引言 ORB-SLAM2_RGBD_DENSE_MAP是基于ORB-SLAM2框架的一种RGB-D稠密地图…

【视觉SLAM入门】7.4.后端优化 --- 基于位姿图和基于因子图

"议论平恕&#xff0c;无所向背” 1. 位姿图1.1 具体做法1.2 小结 2. 因子图2.1 具体做法2.1.1 贝叶斯网络2.1.2 因子图2.1.3 更具体的因子图2.1.4 增量的求解方法 引入&#xff1a; 上节BA将位姿和路标都作为优化的节点&#xff0c;H矩阵也告诉我们路标远大于位姿&#…

工程(十三)——基于激光视觉的SLAM三维重建

博主创建了一个科研互助群Q&#xff1a;772356582&#xff0c;欢迎大家加入讨论。这是一个科研互助群&#xff0c;主要围绕机器人&#xff0c;无人驾驶&#xff0c;无人机方面的感知定位&#xff0c;决策规划&#xff0c;以及论文发表经验&#xff0c;以方便大家很好很快的科研…

VINS-Mono-后端优化 (一:预积分残差计算-IMU预积分约束)

这里先回顾一下预积分是怎么来的 VINS-Mono-IMU预积分 &#xff08;三&#xff1a;为什么要预积分预积分推导&#xff09; 这里贴出预积分的公式 具体含义解释看对对应的文章 整个误差函数如下 预积分 α \alpha α β \beta β γ \gamma γ 是用 IMU 预积分获得的增量&a…

VINS-Mono-后端优化 (二:预积分残差雅可比推导)

文章目录 对位置 δ α \delta\alpha δα 进行求导位置误差 δ α \delta\alpha δα 对平移 P b k w P^{w}_{b_{k}} Pbk​w​ 的求导位置 δ α \delta\alpha δα 对旋转 R w b k R^{b_{k}}_{w} Rwbk​​ 进行求导 对速度 δ β \delta\beta δβ 进行求导速度 δ β…

Ubuntu部署运行ORB-SLAM2

ORB-SLAM2是特征点法的视觉SLAM集大成者&#xff0c;不夸张地说是必学代码。博主已经多次部署运行与ORB-SLAM2相关的代码&#xff0c;所以对环境和依赖很熟悉&#xff0c;对整个系统也是学习了几个月&#xff0c;一行行代码理解。本次在工控机上部署记录下完整的流程。 ORB-SLA…

电子地图 | VINS-FUSION | 小觅相机D系列

目录 一、相关介绍 二、VINS-FUSION环境安装及使用 &#xff08;一&#xff09;Ubuntu18.04安装配置 1、Ubuntu下载安装 2、设置虚拟内存&#xff08;可选&#xff09; &#xff08;二&#xff09;VINS-FUSION环境配置 1、ros安装 2、ceres-solver安装 3、vins-fusion…

【视觉SLAM十四讲学习笔记】第二讲——初识SLAM

专栏系列文章如下&#xff1a; 【视觉SLAM十四讲学习笔记】第一讲 一个机器人&#xff0c;如果想要探索某一块区域&#xff0c;它至少需要知道两件事&#xff1a; 我在什么地方——定位周围环境是什么样——建图 一方面需要明白自身的状态&#xff08;即位置&#xff09;&#…

Ubuntu22.04源码安装ROS-noetic(ROS1非ROS2),编译运行VINS-MONO

1. Ubuntu22.04源码编译安装ROS-noetic 由于22.04默认安装ROS2&#xff0c;但很多仓库都是基于ROS1的&#xff0c;不想重装系统&#xff0c;参考这两个博客安装了ROS-noetic&#xff1a; 博客1. https://blog.csdn.net/Drknown/article/details/128701624博客2. https://zhua…

《视觉SLAM十四讲》-- 建图

11 建图 11.1 概述 &#xff08;1&#xff09;地图的几类用处&#xff1a; 定位&#xff1a;导航&#xff1a;机器人在地图中进行路径规划&#xff1b;避障重建交互&#xff1a;人与地图之间的互动 &#xff08;2&#xff09;几类地图 稀疏地图稠密地图语义地图 11.2 单目…

01 LM 算法及 Cpp 实现

文章目录 01 LM 算法及 Cpp 实现1.1 应用1.2 阻尼法推导1.3 Cpp 算法实现 01 LM 算法及 Cpp 实现 1.1 应用 LM 算法用于解决非线性最小二乘问题 min ⁡ x F ( x ) 1 2 ∥ f ( x ) ∥ 2 2 (1) \min _x F(x)\frac{1}{2}\|f(\boldsymbol{x})\|_2^2 \tag{1} xmin​F(x)21​∥f(x…

VINS-MONO代码解读----vins_estimator(鲁棒初始化部分)

0. 前言 整个初始化部分的pipeline如下所示&#xff0c;参照之前的博客&#xff0c;接下来根据代码一步步讲解。 1. 旋转约束标定旋转外参Rbc 上回讲了processImage中addFeatureCheckParallax完成了对KF的筛选&#xff0c;我们知道了2nd是否为KF&#xff0c;接下来是初始化…

手撕 视觉slam14讲 ch13 代码(7)后端优化 Backend::Optimize()

在上一篇 手撕&#xff08;6&#xff09;中的InsertKeyframe()插入关键帧的函数里&#xff0c;有一个 Backend::UpdateMap() 函数 &#xff0c;从这里通过条件变量 map_update_ 来激活后端优化。 backend.h&#xff1a; // * 有单独优化线程&#xff0c;在Map更新时启动优化…

02 RANSAC算法 及 Python 实现

文章目录 02 RANSAC算法 及 Python 实现2.1 简介2.2 算法流程2.3 RANSAC 算法实现直线拟合2.4 利用 RANSAC 算法减少 ORB 特征点误匹配 02 RANSAC算法 及 Python 实现 2.1 简介 RANSAC &#xff08;Random Sample Consensus&#xff0c;随机抽样一致&#xff09;算法的 基本假…

03 图优化

文章目录 03 图优化3.1 基本概念3.2 SLAM 与图优化3.3 核函数3.4 总结3.5 BA 与图优化 03 图优化 3.1 基本概念 &#xff08;1&#xff09;将优化问题用图&#xff08;Graph&#xff09;的形式表达&#xff0c;即为图优化。 &#xff08;2&#xff09;图由顶点&#xff08;V…

[环境]Ubuntu20.04-SLAM测评工具-evo安装

参考链接 CSDN上的安装方案 安装过程中&#xff0c;仅出现一个问题&#xff0c;就是matplotlib的版本不对 报错内容&#xff1a;与下图的红色字体报错的类型一致&#xff0c;只是我的版本跟他不一样&#xff0c;不过不影响解决解决办法 安装完成记录&#xff0c;同样是注意…

实验笔记之——基于TUM-RGBD数据集的SplaTAM测试

之前博客对SplaTAM进行了配置&#xff0c;并对其源码进行解读。 学习笔记之——3D Gaussian SLAM&#xff0c;SplaTAM配置&#xff08;Linux&#xff09;与源码解读-CSDN博客SplaTAM全称是《SplaTAM: Splat, Track & Map 3D Gaussians for Dense RGB-D SLAM》&#xff0c;…

学习笔记之——3D Gaussian SLAM,SplaTAM配置(Linux)与源码解读

SplaTAM全称是《SplaTAM: Splat, Track & Map 3D Gaussians for Dense RGB-D SLAM》&#xff0c;是第一个&#xff08;也是目前唯一一个&#xff09;开源的用3D Gaussian Splatting&#xff08;3DGS&#xff09;来做SLAM的工作。 在下面博客中&#xff0c;已经对3DGS进行了…

INDEMIND双目惯性模组运行VINS-Fusion教程

最近使用VIO算法做视觉SLAM&#xff0c;尝试一下VINS-Fusion算法在INDEMIND这款IMU相机上的表现&#xff0c;做以记录。 一、SDK的安装 1、ROS Wrapper版本的安装 make ros2、开启权限后运行节点&#xff0c;启动ROS Wrapper cd IMSEE-SDK/ sudo su #开启权限模式 source r…

自动驾驶学习笔记(十二)——定位技术

#Apollo开发者# 学习课程的传送门如下&#xff0c;当您也准备学习自动驾驶时&#xff0c;可以和我一同前往&#xff1a; 《自动驾驶新人之旅》免费课程—> 传送门 《Apollo Beta宣讲和线下沙龙》免费报名—>传送门 文章目录 前言 卫星定位 RTK定位 IMU定位 GNSS定…

【视觉SLAM十四讲学习笔记】第三讲——旋转向量和欧拉角

专栏系列文章如下&#xff1a; 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵 【视觉SLAM十四讲学习笔记】第三讲——Eigen库 本章将介绍视觉SLAM的基本问题之一&#xff1a;如何…

05 Ceres

文章目录 05 Ceres5.0 仿函数5.1 Ceres 简介5.2 代码示例 05 Ceres 5.0 仿函数 简单来说&#xff0c;仿函数就是重载了 () 操作符的类&#xff0c;可以实现类似函数调用的过程&#xff0c;所以叫做仿函数。 struct MyPlus {int operator()(const int &a , const int &am…

利用LIO-SAM构建点云地图,并实现relocalization

按照https://github.com/zoe4751/LIO-SAM 步骤生成点云地图&#xff0c; 地图存储可以参考我的上一篇博文&#xff1a; LIO-SAM如何存储地图-CSDN博客 作者构建地图使用LIO-SAM提到的数据集Park dataset&#xff1a; 利用构建的地图实现重定位功能&#xff0c;参考https://g…

gtsam初探以及结合LIO-SAM算法的一些理解

概述 GTSAM&#xff08;Georgia Tech Smoothing and Mapping&#xff09;是基于因子图的C库&#xff0c;本篇基于GTSAM对因子图优化做一个简单了解和梳理&#xff0c;并以LIO-SAM为例进一步分析因子图优化在SLAM中的应用。 参考链接&#xff1a; [0]gtsam官方文档 [1]https:/…

大疆Livox MID-360安装ROS1/2驱动 Ubuntu20.04

文章目录 一、接线连接二、安装上位机可视化工具三、安装ROS驱动3.1 配置静态IP3.2 安装Livox SDK23.3 安装ROS驱动3.4 驱动 本文介绍如何在Ubuntu20.04中安装大疆Livox MID-360的ROS1/2驱动 一、接线连接 livox航插一分三线&#xff0c;其中航空母头连接激光雷达&#xff0c…

镭神智能C16的ROS1驱动的安装方法

github 代码链接 git clone -b C16_V4.0 https://github.com/Lslidar/Lslidar_ROS1_driver.gitroslaunch lslidar_driver lslidar_c16.launch

卡尔曼家族从零解剖-(04)贝叶斯滤波→细节讨论,逻辑梳理,批量优化

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的 卡尔曼家族从零解剖 链接 :卡尔曼家族从零解剖-(00)目录最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/133846882 文末正下方中心提供了本人 联系…

OpenVINS学习3——初始化原理学习

一、OpenVINS初始化概述 VIO初始化的主要意义有&#xff1a; &#xff08;1&#xff09;对齐相机的世界坐标系和惯性系&#xff0c;因此需要估计重力方向。 &#xff08;2&#xff09;为后续的VIO算法提供较为准确的初始参数和状态&#xff08;尺度、IMU bias、初始速度&…

多相机系统通用视觉 SLAM 框架的设计与评估

Design and Evaluation of a Generic Visual SLAM Framework for Multi-Camera Systems PDF https://arxiv.org/abs/2210.07315 Code https://github.com/neufieldrobotics/MultiCamSLAM Data https://tinyurl.com/mwfkrj8k 程序设置 主要目标是开发一个与摄像头系统配置无关…

SLAM学习入门--编程语言

文章目录 编程语言一、C/C++C 与 C++ 的区别(面向对象的特点)C++ 与 Python的区别判断struct的字节数static 作用Const 作用extern "C"的作用多态如何实现多态?虚函数虚函数怎么实现的?析构函数虚析构函数的作用virtual函数能不能用在构造函数中&#

open_vins 安装(ubuntu18.04 opencv3.2.0)

openvins官网 Getting Started Installation Guide (ROS1 and ROS2) | OpenVINS Ubuntu 18.04 ROS 1 Melodic (uses OpenCV 3.2) 这里他指的是ros1 melodic&#xff0c;他们用的opencv3.2测试过。 open_vins 官方给的组合Ubuntu 18.04 ROS 1 Melodic (uses OpenCV 3.2) Ub…

VINS-Mono-后端优化 (三:视觉雅可比推导)

用逆深度是因为这样可以在优化中从优化3个变量降低到1个&#xff0c;降低优化的维度加快求解速度 用逆深度是因为当距离很远的时候&#xff0c; 1 x \frac{1}{x} x1​ x x x 就会无穷大&#xff0c;而3D点很近的情况也一般不会有&#xff0c;这也是为了数值稳定性 用逆深度的…

python实现全向轮EKF_SLAM

python实现全向轮EKF_SLAM 代码地址及效果运动预测观测修正参考算法 代码地址及效果 代码地址 运动预测 简化控制量 u t u_t ut​ 分别定义为 v x Δ t v_x \Delta t vx​Δt&#xff0c; v y Δ t v_y \Delta t vy​Δt&#xff0c;和 ω z Δ t \omega_z \Delta t ωz…

Ubunutu18.04 ROS melodic 无人机 XTDrone PX4 Vins-Fuison 运行配置

一、PX4飞控EKF配置 PX4默认使用的EKF配置为融合GPS的水平位置与气压计高度。如果我们想使用视觉定位&#xff0c;就需要把修改配置文件。让EKF融合来自mavros/vision_pose/pose的数据 1.1修改rcS配置文件 gedit ~/PX4_Firmware/ROMFS/px4fmu_common/init.d-posix/rcS 通过注…

python实现全向轮EKF_SLAM

python实现全向轮EKF_SLAM 代码地址及效果运动预测观测修正参考算法 代码地址及效果 代码地址 运动预测 简化控制量 u t u_t ut​ 分别定义为 v x Δ t v_x \Delta t vx​Δt&#xff0c; v y Δ t v_y \Delta t vy​Δt&#xff0c;和 ω z Δ t \omega_z \Delta t ωz…

卡尔曼家族从零解剖-(06) 一维卡尔曼滤波编程实践

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的 卡尔曼家族从零解剖 链接 :卡尔曼家族从零解剖-(00)目录最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/133846882 文末正下方中心提供了本人 联系…

SLAM中提到的相机位姿到底指什么?

不小心又绕进去了&#xff0c;所以掰一下。 以我个人最直观的理解&#xff0c;假设无旋转&#xff0c;相机在世界坐标系的(5,0,0)^T的位置上&#xff0c;所谓“位姿”&#xff0c;应该反映相机的位置&#xff0c;所以相机位姿应该如下&#xff1a; Eigen::Matrix4d T Eigen::M…

【论文解读】CP-SLAM: Collaborative Neural Point-based SLAM System_神经点云协同SLAM系统(下)

目录 4 CP-SLAM实验 4.1 两个智能体协作&#xff08; Two-agent Collaboration&#xff09; 4.2 单智能体回环&#xff08;Single Agent with Loop&#xff09; 4.3 地图构建&#xff08;Map Reconstruction&#xff09; 4.4 消融实验 姿态图优化&#xff08;Pose Graph …

SR-LIO--手写紧耦合IESKF

1.ESKF初始化 void eskfEstimator::tryInit(const std::vector<std::pair<double, std::pair<Eigen::Vector3d, Eigen::Vector3d>>> &imu_meas) { //通过imu测量值初始化均值&#xff0c;协方差&#xff1b;(均值用于初始化零偏&#xff0c;协方差用于…

【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵

专栏系列文章如下&#xff1a; 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 本章将介绍视觉SLAM的基本问题之一&#xff1a;如何描述刚体在三维空间中的运动&#xff1f; 旋转矩阵 点、向量和坐标系 三维空间由3个轴组成&…

视觉SLAM理论与实践的学习链接汇总

仅供学习&#xff0c;在此感谢所有乐于分享知识的大佬们~ 一、 ORB_SLAM理论 视觉SLAM 前端 后端 回环 建图 1、 前端视觉里程计 1.1 特征点法 一文带你搞懂相机内参外参(Intrinsics & Extrinsics)-知乎 VSLAM 笔记——我们如何通过图像来计算位姿的变化&#xff…

ORB-SLAM3在windows11下的编译使用

01 写在前面 近期在学习SLAM&#xff0c;想部署一下ORB-SLAM3&#xff0c;但是自己电脑是win11系统&#xff0c;因此就想着在win11上部署一下。但是网上看了一些教程&#xff0c;有一些博客&#xff0c;但是可能不适合我这种情况把&#xff0c;就很纠结。先说下结果&#xff0…

旋转的表示

欢迎访问我的博客首页。 旋转的表示 1.旋转轴的性质2.罗德里格斯公式3.右雅可比矩阵 三维空间内的旋转可以由三维旋转向量 n θ \bm n \theta nθ 表示。其中&#xff0c;单位向量 n \bm n n 表示旋转轴&#xff0c; θ \theta θ 表示旋转角度。旋转向量由一个轴和一个角表示…

自动驾驶学习笔记(十一)——高精地图

#Apollo开发者# 学习课程的传送门如下&#xff0c;当您也准备学习自动驾驶时&#xff0c;可以和我一同前往&#xff1a; 《自动驾驶新人之旅》免费课程—> 传送门 《Apollo Beta宣讲和线下沙龙》免费报名—>传送门 文章目录 前言 高精地图 地图采集 底图制作 地图…

【视觉SLAM十四讲学习笔记】第五讲——相机模型

专栏系列文章如下&#xff1a; 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵 【视觉SLAM十四讲学习笔记】第三讲——旋转向量和欧拉角 【视觉SLAM十四讲学习笔记】第三讲——四元…

大疆Mid360雷达使用教程总结

大疆Mid360雷达使用教程总结 Reference: https://github.com/Livox-SDK/livox_ros_driver2 1. 下载编译安装Livox-SDK2 Reference: https://github.com/Livox-SDK/Livox-SDK2/blob/master/README.md 下载编译安装Livox-SDK2&#xff1a; git clone https://github.com/L…

手把手带你死磕ORBSLAM3源代码(五十一) FrameDrawer.cc DrawTextInfo

目录 一.前言 二.代码 2.1完整代码 2.2 cv::Mat::zeros介绍 2.3 cv::putText介绍 2.4 cv::Point介绍

04 牛顿法、高斯牛顿法及 Cpp 实现

文章目录 04 牛顿法、高斯牛顿法及 Cpp 实现4.1 非线性最小二乘4.2 一阶和二阶梯度法4.3 高斯牛顿法4.4 总结4.5 代码实现4.6 三种方法优缺点 04 牛顿法、高斯牛顿法及 Cpp 实现 4.1 非线性最小二乘 考虑最小二乘问题&#xff1a; min ⁡ x F ( x ) 1 2 ∥ f ( x ) ∥ 2 2 \…

gmapping

欢迎访问我的博客首页。 gmapping 1.论文2.3.参考 1.论文 2. 3.参考 论文。源码&#xff0c;github。ros wiki。GMapping漫谈&#xff0c;知乎专栏&#xff0c;王金戈&#xff0c;2022。GMapping的基本原理&#xff0c;无处不在的小土&#xff0c;高乙超。

基于2D激光雷达匹配的充电桩位姿检测

原理 1. 激光雷达滤波&#xff0c;滤除太远的雷达数据&#xff0c;并降采样 2. 对雷达数据进行分割聚类出candidates 3. 通过策略&#xff0c;过滤掉大部分不符合的candidates 4. 对candidates与充电桩模板数据进行PCA、ICP匹配 5. 选择距离最小或者得分最高的一帧作为输出…

07 手写 BA 优化

07 手写 BA 优化 原理见笔记 《后端 1》 世界坐标系 --> 相机坐标系&#xff08;外参&#xff09;–> 归一化坐标 --> 去畸变 --> 像素坐标系&#xff08;内参&#xff09; 由此得到的估计值与实际观测到的像素坐标作差&#xff0c;得到二维误差项。 7.1 误差及…

【视觉SLAM十四讲学习笔记】第四讲——李群与李代数基础

专栏系列文章如下&#xff1a; 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵 【视觉SLAM十四讲学习笔记】第三讲——旋转向量和欧拉角 【视觉SLAM十四讲学习笔记】第三讲——四元…

OpenVINS学习2——VIRAL数据集eee01.bag运行

前言 周末休息了两天&#xff0c;接着做上周五那个VIRAL数据集没有运行成功的工作。现在的最新OpenVINS需要重新写配置文件&#xff0c;不像之前那样都写在launch里&#xff0c;因此需要根据数据集情况配置好estimator_config.yaml还有两个标定参数文件。 VIRAL数据集 VIRAL…

08 计算相机运动

文章目录 08 计算相机运动8.1 提取特征点8.2 对极几何8.2.1 几个矩阵8.2.2 相机坐标系与归一化坐标系8.2.3 三角测量 8.3 PnP: 3D-2D8.4 ICP&#xff1a;3D-3D8.5 总结 08 计算相机运动 8.1 提取特征点 读取图像 --> 提取角点 --> 计算各角点的描述子 --> 匹配描述子…

动态SLAM:基于ORB-SLAM2与YOLOv8剔除动态特征点(三种方法)

基于ORB-SLAM2与YOLOv8剔除动态特征点(三种方法) 写上篇文章时测试过程比较乱&#xff0c;写的时候有些地方有点失误&#xff0c;所以重新写了这篇 本文内容均在RGB-D环境下进行程序测试 本文涉及到的动态特征点剔除速度均是以https://cvg.cit.tum.de/data/datasets/rgbd-dat…

视觉里程计6(SLAM十四讲ch8)-直接法

转载于https://blog.csdn.net/qq_23225073/article/details/78579458 直接法&#xff08;Direct Method&#xff09; 简介推导 投影方程如下 在直接法中&#xff0c;是求解一个优化问题&#xff0c;但这个优化最小化的不是重投影误差&#xff0c;而是测量误差&#xff08;Pho…

【三维重建】【slam】【分块重建】LocalRF:逐步优化的局部辐射场的鲁棒视图合成

项目地址&#xff1a;https://localrf.github.io/ 题目&#xff1a;Progressively Optimized Local Radiance Fields for Robust View Synthesis 来源&#xff1a;KAIST、National Taiwan University、Meta 、University of Maryland, College Park 提示&#xff1a;文章用了s…

【视觉SLAM十四讲学习笔记】第四讲——李代数求导与扰动模型

专栏系列文章如下&#xff1a; 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵 【视觉SLAM十四讲学习笔记】第三讲——旋转向量和欧拉角 【视觉SLAM十四讲学习笔记】第三讲——四元…

【教程】从零开始的ORB-SLAM3的安装与配置

引言 最近项目需求需要接触vslam&#xff0c;博主选择从ORB-SLAM3下手并且记录下安装的基本流程。不得不说&#xff0c;这安装流程就像二大娘的裹脚布。 大致环境前提&#xff1a;Ubuntu20.04 一、ORB-SLAM3的源码下载 1、首先&#xff0c;为了方便管理文件&#xff0c;我们…

PnP 问题

欢迎访问我的博客首页。 PnP 问题1. DLT2. P3P3. G2O 求解 PnP3.1 单目3.2 双目4. 自定义顶点与边优化内参4.1 二元边4.2 三元边4.3 总结5. 参考PnP&#xff08;Perspective-n-Point&#xff09;是求解 3D 到 2D 点对运动的方法。即&#xff0c;知道了 n 个 3D 空间点及其投影位…

01 整体代码运行流程

文章目录 01 整体代码运行流程1.1 运行官方 Demo1.2 变量命名规则1.3 多线程1.4 线程锁1.5 SLAM 主类 System 01 整体代码运行流程 1.1 运行官方 Demo 以 stereo_kitti 为例&#xff0c;执行 ./stereo_kitti path_to_vocabulary path_to_settings path_to_sequence./stereo_…

视觉SLAM中的相机分类及用途

视觉SLAM&#xff08;Simultaneous Localization and Mapping&#xff09;算法主要用于机器人和自动导航系统中&#xff0c;用于同时进行定位和建立环境地图。这种算法依赖于相机来捕捉环境数据。根据视觉SLAM的具体需求和应用场景&#xff0c;可以使用不同类型的相机。以下是用…

SLAM总结(六)-视觉建图

SLAM总结&#xff08;六&#xff09;-视觉建图1.地图的种类和用途2.建图3.地图的保存和加载1.地图的种类和用途 一般根据地图的用途决定建立什么样的地图&#xff0c;地图的用途一般有定位、导航、避障、3D重建和交互。地图的类型分为稀疏地图、半稠密地图、稠密地图、栅格地图…

SLAM总结(五)-视觉后端

SLAM总结&#xff08;五&#xff09;-视觉后端1.三角化2.非线性优化BA&#xff08;Bundle Adjustment&#xff09;因子图增量式优化3.优化库后端的主要功能是三角化产生新的路标点和进行非线性优化。还要删除冗余关键帧和不好的3D点的操作。非线性优化的重点是设计目标函数。首…

SLAM总结(四)-视觉前端

SLAM总结&#xff08;四&#xff09;-视觉前端1.数据关联1.特征法2.直接法&#xff1a;2.姿态解算3.初始化4.局部地图5.选取关键帧策略前端的主要功能一般是求解当前帧的位姿。前端需要保持与传感器帧率相同的频率&#xff0c;以达到实时性。相机和激光雷达都是观测外部环境的传…

SLAM总结(三)-传感器之各传感器特性

SLAM总结&#xff08;三&#xff09;-传感器之各传感器特性一、综述二、相机1、单目相机2、深度相机双目相机结构光相机ToF相机三、激光雷达1、2D激光雷达2、3D激光雷达四、IMU六、编码器五、全球导航卫星系统(GNSS)七、其他辅助传感器一、综述 1.传感器可分为主动式和被动式。…

SLAM总结(二)-数学基础之常用概率知识

SLAM总结&#xff08;二&#xff09;-数学基础之常用概率知识1.常用概率论基础概念&#xff1a;在高维情况下&#xff0c;即n很大时&#xff0c;由链式法则得到的联合概率p(x1,x2,…,xn)将非常难求解&#xff0c;但是在每个状态只与前一个状态有关的条件独立的假设下&#xff0…

SLAM总结(二)-数学基础之求导和线性方程求解

SLAM总结&#xff08;二&#xff09;-数学基础之求导和线性方程求解1.求导&#xff1a;高数中常见的是一个函数对一个自变量求导&#xff0c;属于标量对标量求导。在SLAM问题中&#xff0c;函数是目标函数&#xff08;残差项&#xff0c;约束项&#xff09;&#xff0c;一般包含…

《视觉SLAM十四讲》读书笔记(二)

目录李群与李代数4.1 李群与李代数基础4.1.1 群4.1.2 李代数的引出4.1.3 李代数的定义4.1.4 李代数so(3)\mathfrak{s o}(3)so(3)4.1.5 李代数se(3)\mathfrak{s e}(3)se(3)4.2 指数与对数映射4.2.1 SO(3)上的指数映射**式(4.20)详细推导过程&#xff08;实际上也是罗德里格斯公式…

论文阅读:Long-Term Visual Simultaneous Localization and Mapping

论文摘要指出&#xff0c;为了在长期变化的环境中准确进行定位&#xff0c;提出了一种新型的长期视觉SLAM&#xff08;同步定位与地图构建&#xff09;系统&#xff0c;该系统具备地图预测和动态物体移除功能。系统首先设计了一个高效的视觉点云匹配算法&#xff0c;将2D像素信…

SLAM ORB-SLAM2(13)查找单应矩阵

SLAM ORB-SLAM2(13)查找单应矩阵 1. 前言2. FindHomography3. 特征点坐标进行归一化4. 选择归一化之后的特征点5. 八点法计算单应矩阵6. 评分并评优1. 前言 在 《SLAM ORB-SLAM2(12)估算运动并初始地图点》 的 2.3. 查找H矩阵和F矩阵 中 /* 构造线程来计算H矩阵和F矩阵及…

ubuntu多用户环境dockerbug,卸载重装docker流程

之前不小心误操作删除重装docker&#xff0c;结果删除没成功&#xff0c;更没法重装&#xff0c;每次apt install都会报一个docker错误&#xff0c;虽然不影响软件的常规安装&#xff5e;但是现在还是需要装一个完整docker&#xff0c;还是选择删除一下&#xff0c;重点是关闭服…

VINS-MONO拓展1----手写后端求解器,LM3种阻尼因子策略,DogLeg,构建Hessian矩阵

文章目录 0. 目标及思路1. 非线性优化求解器2. 基于VINS-MONO的Marginalization框架构建Hessian矩阵2.1 estimator.cpp移植2.2 solve.cpp/preMakeHessian()2.3 solve.cpp/makeHessian() 3. solve.cpp/solveLinearSystem()求解正规方程4. 更新状态5. 迭代求解6. EVO评估结果7. 待…

SLAM ORB-SLAM2(21)基础矩阵的计算和评分

SLAM ORB-SLAM2&#xff08;21&#xff09;基础矩阵的计算和评分 1. 前言2. 基础矩阵2.1. 对级约束2.2. 推导2.3. 计算原理 3. ComputeF214. CheckFundamental 1. 前言 在 《SLAM ORB-SLAM2&#xff08;20&#xff09;查找基础矩阵》 中了解到 查找基础矩阵主要过程&#xff1…

【分块三维重建】【slam】LocalRF:逐步优化的局部辐射场鲁棒视图合成(CVPR 2023)

项目地址&#xff1a;https://localrf.github.io/ 题目&#xff1a;Progressively Optimized Local Radiance Fields for Robust View Synthesis 来源&#xff1a;KAIST、National Taiwan University、Meta 、University of Maryland, College Park 提示&#xff1a;文章用了s…

【三维重建】【SLAM】SplaTAM:基于3D高斯的密集RGB-D SLAM(CVPR 2024)

题目&#xff1a;SplaTAM: Splat, Track & Map 3D Gaussians for Dense RGB-D SLAM 地址&#xff1a;spla-tam.github.io 机构&#xff1a;CMU&#xff08;卡内基梅隆大学&#xff09;、MIT&#xff08;美国麻省理工&#xff09; 总结&#xff1a;SplaTAM&#xff0c;一个新…

ROS读书记录1:机器人SLAM导航核心技术与实战1

机器人SLAM导航核心技术与实战1 第一章第2章 ROS简介 视频参考&#xff1a; 《机器人SLAM导航核心技术与实战》书籍配套教学视频 第一章 第2章 ROS简介 ROS:机器人开发平台 ①ROS是一个分布式通信框架(最核心的本质 ②ROS是一个开发工具的集台 ③ROS是一系列开源软件包 计算…

04 帧 Frame

文章目录 04 帧 Frame4.1 相机相关信息4.2 特征点提取4.2.1 特征点提取 ExtractORB()4.3 ORB-SLAM2对双目/RGBD特征点的预处理4.3.1 双目视差公式4.3.2 双目图像特征点匹配 ComputeStereoMatches()4.3.3 根据深度信息构造虚拟右目图像&#xff1a;ComputeStereoFromRGBD() 4.4 …

学习笔记之——3D Gaussian Splatting及其在SLAM与自动驾驶上的应用调研

之前博客介绍了NeRF-SLAM&#xff0c;其中对于3D Gaussian Splatting没有太深入介绍。本博文对3D Gaussian Splatting相关的一些工作做调研。 学习笔记之——NeRF SLAM&#xff08;基于神经辐射场的SLAM&#xff09;-CSDN博客文章浏览阅读967次&#xff0c;点赞22次&#xff0…

基于3D Gaussian Splatting与NeRF实现三维重建(使用IPhone创建数据集)

基于Spectacular AI与NeRF实现三维重建-使用IPhone创建数据集 前言项目简介创建数据集扫描处理数据集 解析数据集Python环境 Windows ffmpeg 环境搭建数据集处理安装Nerfstudio需要CUDA环境 依次安装依赖pip install nerfstudio Nerfstudio实现效果开始训练参数配置实时训练浏览…

北斗导航 | 3D LiDAR辅助GNSS NLOS缓解用于城市峡谷中可靠的GNSS-RTK定位

===================================================== github:https://github.com/MichaelBeechan CSDN:https://blog.csdn.net/u011344545 ===================================================== 3D LiDAR辅助GNSS NLOS缓解用于城市峡谷中可靠的GNSS-RTK定位 GNSS和Li…

slam数学补充

协方差矩阵的计算 M(p̃ − μ)(p̃ − μ) T / (n1) μ Σ p̃ / (n1) 协方差矩阵的意义 以及 特征向量和特征值的关系 从数据表面看&#xff1a; 当M(n,n)过大意味着在数据均值的n维上变化较大&#xff0c;反之M(n,n)过小意味着数据在均值 的n维上变化不大。 当M(n,m)过…

【AI视野·今日Robot 机器人论文速览 第七十三期】Tue, 9 Jan 2024

AI视野今日CS.Robotics 机器人学论文速览 Tue, 9 Jan 2024 Totally 40 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Robotics Papers Digital Twin for Autonomous Surface Vessels for Safe Maritime Navigation Authors Daniel Menges, Andreas Von Brandis, A…

双机 Cartogtapher 建图文件配置

双机cartogtapher建图 最近在做硕士毕设的最后一个实验&#xff0c;其中涉及到多机建图&#xff0c;经过调研最终采用cartographer建图算法&#xff0c;其中配置多机建图的文件有些麻烦&#xff0c;特此博客以记录 非常感谢我的同门 ”叶少“ 山上的稻草人-CSDN博客的帮助&am…

【AI视野·今日Robot 机器人论文速览 第七十二期】Mon, 8 Jan 2024

AI视野今日CS.Robotics 机器人学论文速览 Mon, 8 Jan 2024 Totally 13 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Robotics Papers Deep Reinforcement Learning for Local Path Following of an Autonomous Formula SAE Vehicle Authors Harvey Merton, Thoma…

Ubuntu20.04配置Kinect 2.0驱动安装和ROS环境下配置以及录制bag包和制作ORB-SLAM数据集

目录 1. 安装libfreenect21.1 下载官方文件1.2 安装build工具1.3 安装libusb1.4 安装urboJPEG1.5 安装OpenGL1.6 安装OpenCL1.7 安装OpenNI1.8 进入libfreenect2 文件夹&#xff0c;编译安装1.9 设定udev rules1.10 测试 2. 配置ROS环境2.1 下载iai_kinect2包并安装2.2 相机上电…

Ubuntu20.04下A-LOAM配置安装及测试教程(包含报错问题踩坑)

参考文章&#xff1a; ubuntu20.04下ros运行A-LOAM Ubuntu20.04下运行LOAM系列&#xff1a;A-LOAM、LeGO-LOAM、SC-LeGO-LOAM、LIO-SAM 和 LVI-SAM 需要学习源码的同学可以下载LOAM论文 LOAM论文链接 1.需要安装的库文件 1.1Eigen 3.3 可以直接使用apt命令安装&#xff0c;或…

【视觉SLAM十四讲学习笔记】第六讲——非线性最小二乘

专栏系列文章如下&#xff1a; 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵 【视觉SLAM十四讲学习笔记】第三讲——旋转向量和欧拉角 【视觉SLAM十四讲学习笔记】第三讲——四元…

《SLAM十四讲》Ch7编译报错

《SLAM十四讲》Ch7编译报错 原因&#xff1a; 视觉SLAM书上的程序使用的g2o版本比较旧了&#xff0c;使用的是c11版本的g2o。而自己在编译g2o的时候编译的是最新版本的g2o&#xff0c;里面大量使用了c14标准库的一些新特性&#xff0c;比如std::index_sequence等等。而书上的C…

移动机器人激光SLAM导航(二):运动控制与传感器篇

参考引用 机器人工匠阿杰wpr_simulation 1. 机器人运动控制 1.1 测试环境安装 wpr_simulation 安装$ mkdir -p catkin_ws/src $ cd catkin_ws/src $ git clone https://github.com/6-robot/wpr_simulation.git $ cd wpr_simulation/scripts/ $ ./install_for_melodic.sh # 自…

PSM-Net根据Stereo图像生成depth图像

一、新建文件夹 在KITTI数据集下新建depth_0目录 二、激活anaconda环境 conda activate pt14py37三、修改submission.py文件 3.1 KITTI数据集路径 parser.add_argument(--datapath, default/home/njust/KITTI_DataSet/00/, helpselect model)3.2 深度图像输出路径 save…

【激光SLAM】激光雷达数学模型和运动畸变去除

目录 概念介绍激光雷达传感器介绍测距原理三角测距飞行时间&#xff08;TOF) 激光雷达数学模型介绍光束模型&#xff08;beam model&#xff09;似然场模型&#xff08;likelihood model&#xff09; 运动畸变介绍 畸变去除纯估计方法&#xff08;ICP Variants)ICP方法VICP&…

移动机器人激光SLAM导航(五):Cartographer SLAM 篇

参考 Cartographer 官方文档Cartographer 从入门到精通 1. Cartographer 安装 1.1 前置条件 推荐在刚装好的 Ubuntu 16.04 或 Ubuntu 18.04 上进行编译ROS 安装&#xff1a;ROS学习1&#xff1a;ROS概述与环境搭建 1.2 依赖库安装 资源下载完解压并执行以下指令 https://pa…

多目SLAM

文章目录 1 文献1.1 Redesigning SLAM for Arbitrary Multi-Camera Systems1.1.1 关键内容A 本文核心贡献B 初始化方法现状C 关键帧选取方法现状D 地图管理和查询现状 贡献一&#xff1a;自适应初始化 1 文献 1.1 Redesigning SLAM for Arbitrary Multi-Camera Systems Kuo, J…

SLAM基础

参考高翔博客 半闲居士 视觉SLAM中的3D空间的位置表示 在位姿转换中&#xff0c;通常采用射影空间的齐次坐标表示。其中一个空间点的坐标为普通的3D坐标加一个齐次分量。

视觉里程计3(SLAM十四讲ch7)-PnP

PnP 3D2D PnP问题 PnP为 Perspective-n-Point的简称&#xff0c;是求解3D到2D点对的运动的方法:即给出n个3D空间点及其投影位置时&#xff0c;如何求解相机的位姿。典型的PnP问题求解方式有很多种&#xff0c;例如P3P&#xff0c; 直接线性变换(DLT), EPnP(Efficient PnP), U…

(02)Cartographer源码无死角解析-(00)目录_最新无死角讲解

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的(02)Cartographer源码无死角解析链接如下(有兴趣的朋友可关注计算机视觉life 进行学习): (02)Cartographer源码无死角解析-(00)目录_最新无死角讲解&#xff1a;https://mp.csdn.net/mp_blo…

mac clion camke boost库调用失败问题

问题描述#include <boost/format.hpp>失败 在复现slam十四讲第五讲的代码&#xff0c;运行建立点云图的代码时&#xff0c;调用boost库的时候总是失败 CMakeLists.txt cmake_minimum_required(VERSION 3.17) find_package(Sophus REQUIRED) include_directories(${Sophu…

【三维重建】【SLAM】SplaTAM:基于3D高斯的密集RGB-D SLAM

题目&#xff1a;SplaTAM: Splat, Track & Map 3D Gaussians for Dense RGB-D SLAM 地址&#xff1a;spla-tam.github.io 机构&#xff1a;CMU&#xff08;卡内基梅隆大学&#xff09;、MIT&#xff08;美国麻省理工&#xff09; 总结&#xff1a;SplaTAM&#xff0c;一个新…

【SLAM论文笔记】PL-EVIO笔记(上)

摘要 总体框架&#xff1a;基于关键帧的图优化。约束因子&#xff1a;事件相机的电线特征残差、传统相机的点特征残差、IMU预积分。 介绍 事件相机只敏感动态变化&#xff0c;记录像素变化信息&#xff1b;类似于青蛙视觉。具有微秒级低时延、高对比度、无运动模糊。 线特征…

【SLAM论文笔记】PL-EVIO笔记(中)

滑窗优化 窗口由10个关键帧组成。 优化的状态参数包括事件点与图像点的逆深度、事件线特征的4参数正交表达&#xff08;下一小节描述&#xff09;&#xff0c;各个关键帧IMU的加计和陀螺的零偏、世界坐标系下的位置p、速度v与姿态四元数q&#xff0c;IMU与相机的外参&#xff…

【SLAM】视觉SLAM简介

【SLAM】视觉SLAM简介 task04 主要了解了SLAM的主流框架&#xff0c;清楚VSALM中间接法与直接法的主要区别在什么地方&#xff0c;其各自的优势是什么&#xff0c;了解前端与后端的关系是什么 1.什么是SLAM 2.VSALM中间接法与直接法的主要区别在什么地方&#xff0c;其各自的…

对图像中边、线、点的检测(支持平面/鱼眼/球面相机)附源码

前言 图像的线段检测是计算机视觉和遥感技术中的一个基本问题,可广泛应用于三维重建和 SLAM 。虽然许多先进方法在线段检测方面表现出了良好的性能,但对未去畸变原始图像的线 段检测仍然是一个具有挑战性的问题。此外,对于畸变和无畸变的图像都缺乏统一的…

卡尔曼家族从零解剖-(07) 高斯分布积分为1,高斯分布线性变换依旧为高斯分布,两高斯函数乘积仍为高斯。

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解的 卡尔曼家族从零解剖 链接 :卡尔曼家族从零解剖-(00)目录最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/133846882 文末正下方中心提供了本人 联系…

Lego-loam 算法三维建图

运行环境 Linux&#xff1a;Ubuntu18.04ros&#xff1a;MelodicCeres Solver 2.0.0&#xff08;Ubuntu18.04安装Ceres&#xff09;PCL 1.8.1&#xff08;Ubuntu系统的PCL、Eigen卸载和安装&#xff09; 运行数据集 lego-loam 39/39 终端一&#xff1a;进入catkin_ws工作空间…

Ubunutu18.04 ROS melodic 无人机 XTDrone PX4 仿真平台配置

一、依赖安装 sudo apt install ninja-build exiftool ninja-build protobuf-compiler libeigen3-dev genromfs xmlstarlet libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev python-pip python3-pip gawk pip2 install pandas jinja2 pyserial cerberus pyulog0.7.0 n…

GCNv2_SLAM-CPU详细安装教程(ubuntu18.04)

GCNv2_SLAM-CPU详细安装教程-ubuntu18.04 前言一、安装第三方库1.安装Pangolin2.安装OpenCV3.安装Eigen4.安装Pytorch(c) 二、安装以及运行GCNv2_SLAM1.安装编译GCNv2_SLAM2.单目模式运行演示案例 总结 前言 paper:https://arxiv.org/pdf/1902.11046.pdf githup::https://gith…

毫米波雷达slam论文汇总

文章目录 20234DRadarSLAM: A 4D Imaging Radar SLAM System for Large-scale Environments based on Pose Graph Optimization 2023 4DRadarSLAM: A 4D Imaging Radar SLAM System for Large-scale Environments based on Pose Graph Optimization code: https://github.com…

在OAK-D S2相机上应用ORB_SLAM3

文章目录 ROS1 noetic + depthai_rosORB_SLAM3什么是ORB_SLAM3怎么安装运行ROS1 noetic + depthai_ros 目前X86和arch64平台测试安装包没有问题。 树莓派上安装ROS需要自己编译安装,时间比较长,需要测试的可以到 官网 查看,替换下面安装ROS步骤就可以了。 ubuntu20.04推荐…

手把手带你死磕ORBSLAM3源代码(四十)Tracking.cc TrackLocalMap

目录 一.前言 二.代码 2.1完整代码 2.2 跟踪与本地地图关系处理 一.前言 这段代码是一个名为 TrackLocalMap 的函数,它是 Tracking 类的一部分。从函数的名称和代码内容可以推测,它的主要功能是处理相机追踪与本地地图之间的关系。具体来说,这个函数尝试通

ubuntu20.04 运行 lio-sam 流程记录

ubuntu20.04 运行 lio-sam 一、安装和编译1.1、安装 ROS11.2、安装 gtsam1.3、安装依赖1.4、下载源码1.5、修改文件1.6、编译和运行 二、官方数据集的运行2.1、casual_walk_2.bag2.2、outdoor.bag、west.bag2.3、park.bag 三、一些比较好的参考链接 记录流程&#xff0c;方便自…

ORB_SLAM3_优化方法 Pose优化

PoseOptimization PoseOptimization主要的作用是利用重投影优化单帧的位姿,主要用在Tracking的几种跟踪模式TrackWithMotionModel、TrackReferenceKeyFrame、 TrackLocalMap、Relocalization中 输入 优化变量观测帧的Pose帧的MapPoint帧的KeyPoint初始化 //创建优化器 g2o…

三角化:Triangulation: Why Optimize?

三角化&#xff1a;Triangulation: Why Optimize? 1. 预备知识1.1 评估 3D 点准确性 2. 提出的方法2.1 广义加权中点法2.2 可选的中点法2.3 Cheirality(多视图几何中代表着3D点的正景深约束)2.4 逆深度加权中点-Inverse Depth Weighted(IDW) Midpoint 3. 实现代码 Reference: …

vscode配置eigen3

目录 1. 头文件包含 2. c_cpp_properties.json 3. CMakeList.txt 4. 完整代码 1. 头文件包含 // Eigen 核心部分 #include <Eigen/Core> // 稠密矩阵的代数运算&#xff08;逆&#xff0c;特征值等&#xff09; #include <Eigen/Dense> 2. c_cpp_properties.…

建图(SLAM十四讲ch13)

单目稠密重建 立体视觉 单目相机通过移动相机之后进行三角化测量像素的距离。---->移动视角的立体视觉 双目相机利用左右目的视察计算像素距离 RGB-D直接获得像素距离 单目的稠密估计&#xff08;估计每个像素的深度&#xff09; ——>根据视频序列估计图像深度 对图…

视觉里程计4(SLAM十四讲ch7)-ICP

ICP 3D3D SVD方法 非线性方法 实践 使用两幅图的RGB-D图像&#xff0c;通过特征匹配获取两组3D点&#xff0c;最后利用ICP计算他们的位姿变换。 pose_estimation_3d3d #include <iostream> #include <opencv2/core/core.hpp> #include <opencv2/features2d/f…

(02)Cartographer源码无死角解析-(67) 2D后端优化→FastCorrelativeScanMatcher2D -分支定界算法1

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文…

【SLAM】ORBSLAM34macOS: ORBSLAM3 Project 4(for) macOS Platform

文章目录 配置ORBSLAM34macOS 版本运行步骤&#xff1a;版本修复问题记录&#xff1a;编译 fix运行 fix 配置 硬件&#xff1a;MacBook Pro Intel CPU 系统&#xff1a;macOS Ventura 13.4.1 ORBSLAM34macOS 版本 https://github.com/phdsky/ORB_SLAM3/tree/macOS 运行步骤&…

ORB-SLAM2算法12之单目初始化Initializer

文章目录 0 引言1 单目初始化Initializer1.1 构造函数1.2 成员函数1.2.1 Initialize1.2.2 FindHomography1.2.3 FindFundamental1.2.4 ReconstructH1.2.5 ReconstructF 2 总结 0 引言 ORB-SLAM2算法7详细了解了System主类和多线程、ORB-SLAM2学习笔记8详细了解了图像特征点提取…

【ROS】例说mapserver静态地图参数(对照Rviz、Gazebo环境)

文章目录 例说mapserver静态地图参数1. Rviz中显示的地图2. mapserver保存地图详解3. 补充实验 例说mapserver静态地图参数 1. Rviz中显示的地图 在建图过程中&#xff0c;rviz会显示建图的实时情况&#xff0c;其输出来自于SLAM&#xff0c;浅蓝色区域为地图大小&#xff0c…

DBOW概要理解与记录

前言 DBOW作为一种视觉回环技术被广泛应用在各类VSLAM框架中&#xff0c;之前的经验主要集中在使用和抽象理解层面&#xff0c;近期花了一些时间仔细阅读了相关论文和源码&#xff0c;这里做一些记录。 两个关键概念 Vocabulary 通过预先训练得到的词汇库&#xff0c;以树状…

OpenVINS学习1——数据集配置与运行

前言 OpenVINS是基于MSCKF的开源VIO算法&#xff0c;有非常详细的官网文档可以学习使用&#xff0c;将来一段时间的主要实践工作&#xff0c;就是深度掌握这份开源代码。 https://docs.openvins.com/ 一、环境配置与Euroc数据集运行 我的环境是Ubuntu20.04&#xff0c;ROS1&a…

【AI视野·今日Robot 机器人论文速览 第六十七期】Mon, 1 Jan 2024

AI视野今日CS.Robotics 机器人学论文速览 Mon, 1 Jan 2024 Totally 16 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Robotics Papers MURP: Multi-Agent Ultra-Wideband Relative Pose Estimation with Constrained Communications in 3D Environments Authors A…

AVP-SLAM:自动泊车系统中的语义SLAM_

AVP-SLAM&#xff1a;自动泊车系统中的语义SLAM 附赠最强自动驾驶学习资料&#xff1a;直达链接 ●论文摘要 在自动代客泊车系统中车辆在狭窄且拥挤且没有GPS信号的停车场中进行导航&#xff0c;具备准确的定位能力是至关重要的。传统的基于视觉的方法由于在停车场中由于缺少…

(02)Cartographer源码无死角解析-(55) 2D后端优化→ComputeLocalToGlobalTransform()

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文末…

基于深度学习的三维重建(一):三维重建简介、patchmatchNet环境部署、用colmap如何测试自己的数据集

目录 1.什么是三维重建 2.MVS是什么 3.传统MVS的局限性和为什么基于深度学习的MVS性能好于传统三维重建 4.基础概念 5. patchmatchNet环境配置 6.如何测试自己的数据集&#xff08;位姿计算&#xff09; 6.1 colmap导出位姿 6.2 将colmap位姿转换成MVS读取的数据格式 1.…

用kinectv2运行orbslam2

前提 vim 、 cmake 、 git 、 gcc 、 g 这些一般都装了 主要是Pangolin 、 OpenCV 、 Eigen的安装 18.04建议Pangolin0.5 orbslam2安装、测试&#xff1a; git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2 cd ORB_SLAM2 chmod x build.sh ./build.sh 编译…

(02)Cartographer源码无死角解析-(58) 2D后端优化→PoseGraph2D::AppendNode()细节分析

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文末…

(02)Cartographer源码无死角解析-(60) 2D后端优化→ 线程池

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文末…

PL-VINS线特征处理部分源码阅读

PL-VINS线特征处理部分源码阅读1 linefeature_tracker2 三角化单目三角化双目三角化3 后端优化线特征状态量重投影误差本文主要阅读PL-VINS中引入线特征的代码实现&#xff0c;包括线特征表示方法&#xff08;Plcker参数化方法、正交表示法&#xff09;、前端线特征提取与匹配、…

Cartographer源码阅读---点云数据的预处理

上一节我们已经看到了, 传感器数据是通过CollatedTrajectoryBuilder类的HandleCollatedSensorData函数 传递给 GlobalTrajectoryBuilder类的相应函数. 从GlobalTrajectoryBuilder开始, 传感器数据才真正进入到Cartographer的前后端. Cartographer最重要的数据类型就是点云, 所以…

cartographer+EAI ydlidar雷达配置过程

cartographerEAI ydlidar雷达配置过程 一、配置环境&#xff08;安装驱动&#xff09; 1、系统环境&#xff1a;ubuntu16.04ROS-kinetic 2、安装ROS-kinetic 详细说明过程 http://wiki.ros.org/kinetic/Installation/Ubuntu 二、代码程序 见附件 三、说明文档&#xff08…

SLAM常见问题汇总

注&#xff1a;本文内容大多数来源于“计算机视觉life”微信公众号&#xff0c;因文章较多&#xff0c;笔者记忆又不强&#xff0c;所以整理成博客形式&#xff0c;感兴趣的伙伴可以移步微信公众号浏览更多精彩内容哦&#xff01; 一.为什么要学SLAM&#xff1f; 计算机视觉主…

CT-ICP

欢迎访问我的博客首页。 CT-ICP1. 引言2. 相关工作3. CT-ICP 里程计3.1 里程计3.2 局部地图与健壮性4. 回环闭合与后端5. 实验5.1 数据集5.1.1 驾驶场景5.1.2 高频运动场景5.2 里程计实验5.3 回环闭合实验6. 结论7. 参考1. 引言 图 1 的上部是一幅图像&#xff0c;下部是一个示…

VINS-MONO实践

1.配置ros&#xff08;运行VINS需要&#xff0c;记得换源&#xff0c;会快一些&#xff09; sudo apt-get install ros-melodic-cv-bridge ros-melodic-tf ros-melodic-message-filters ros-melodic-image-transport解释&#xff1a; cv-bridge在ROS图像消息和OpenCV图像之间转…

TUM数据集

TUM数据集下载链接 https://vision.in.tum.de/data/datasets/rgbd-dataset/download https://vision.in.tum.de/data/datasets/visual-inertial-dataset 标定数据总共提供四种&#xff1a;   1.calib-cam1~8&#xff1a;相机标定&#xff0c;本质矩阵以及两个相机之间的姿态…

基于已知点云地图的NDT的激光SLAM定位

概述 对于L4级自动驾驶系统而言&#xff0c;定位模块通常会融合GNSS、IMU、轮速计&#xff08;车辆底盘&#xff09;、摄像头以及激光雷达odometry多种测量&#xff0c;使用滤波算法&#xff08;EKF、UKF等&#xff09;以获得平滑、厘米级别的绝对定位&#xff0c;其中基于高精…

VINS-MONO代码解读---数据结构sensor_msgs

在看VINS-Mono的代码时&#xff0c;觉得非常有必要整理总结一下其中不同的数据结构&#xff0c;尤其是各种sensor_msgs的格式与具体含义。 具体详见以下链接&#xff1a; 数据结构: sensor_msgs ROS的sensor_msgs格式在http://wiki.ros.org/sensor_msgs有介绍。 sensor_msgs::…

VINS-MONO代码解读---前端feature_tracker

feature_tracker是vins的前端&#xff0c;它的目录在src/ feature_tracker下&#xff0c;功能主要是获取摄像头的图像帧&#xff0c;并按照事先设定的频率&#xff0c;把cur帧上满足要求的特征点以sensor_msg::PointCloudPtr的格式发布出去&#xff0c;以便RVIZ和vins——estim…

VINS-MONO代码解读---状态估计器vins_estimator

本文主要介绍VINS的状态估计器模块&#xff08;estimator&#xff09;&#xff0c;主要在代码中/vins_estimator节点的相关部分实现。 这个模块可以说是VINS的最核心模块&#xff0c;从论文的内容上来说&#xff0c;里面的内容包括了VINS的估计器初始化、基于滑动窗口的非线性…

VINS-MONO代码解读---特征点管理feature_manager.cpp

本文对estimator.cpp中的feature_manager.cpp进行介绍&#xff0c;主要是对特征点管理。 特征点管理器主要就是FeatureManager类 涉及到的类的成员函数&#xff1a; 一、FeatureManager、FeaturePerId、FeaturePerFrame 1、三者关系 f_manager是特征管理器类的对象 Feature…

VINS-MONO代码解读---在线Cam到IMU的外参标定InitialEXRotation类

本问对estimator类中最主要的函数processImage&#xff08;&#xff09;的相机到IMU的外参矩阵的进行代码讲解。 前面两讲知识储备主要讲了IMU预积分相关的integrationBase类以及图像特征点管理器feature_manager.cpp&#xff0c;本节将对processImage&#xff08;&#xff09…

VINS-MONO代码解读---初始化1:视觉SFM详解 processImage()+initialStructure()

Estimator类 视觉部分流程图 本文将重点讲解ProcessImage()函数 1.检查两帧的视差判断是否为关键帧f_manager.addFeatureCheckParallax&#xff08;&#xff09;在feature_manager.cpp中已经解释 2.IMU预积分 IntegrationBase 在 IMU离散中值预积分中解释 3.在线标定外参 Cal…

VINS-MONO代码解读---初始化2:视觉惯性松耦合初始化 visualIntialAlign()

visualIntialAlign&#xff08;&#xff09;函数视觉惯性联合初始化 这篇文章主要集中在讨论视觉部分和IMU部分之间的关联&#xff0c;如何对两部分进行对齐&#xff0c;使得系统完成初始化。 目录 理论&#xff1a;视觉IMU对齐流程 其中&#xff0c;步骤1的在线Cam到IMU的…

VINS-MONO代码解读---基于滑动窗口的紧耦合后端非线性优化 optimization()+滑动窗slideWindow()

本讲是VINS最核心部分了&#xff0c;前面经历了 1&#xff09;视觉跟踪feature_tracker、IMU预积分integrationBase类&#xff1b; 2&#xff09;初始化中SFM纯视觉估计滑动窗中所有帧的位姿和3D路标点深度、SFM与IMU预积分松耦合对齐求解初始化参数。 在完成前面的初始化环…

VINS-MONO理论学习---紧耦合后端非线性优化

基于滑动窗的紧耦合后端非线性优化&#xff1a;将视觉约束、IMU约束、闭环约束放到一个大的目标函数中进行非线性优化&#xff0c;求解出滑动窗口中所有帧的PVQ、bias等。 在视觉约束和IMU约束中&#xff0c;基本思想是找到优化状态向量&#xff0c;然后通过视觉残差和IMU测量…

主流VIO框架分析及VINS部分解析

本文为搜集的资料整理&#xff1a; C0包含位姿和运动信息&#xff1b;对于T0来说&#xff0c;不仅受rv10、rv11的视觉影响&#xff0c;也受rb01的IMU的影响。 上述方式繁琐&#xff0c;故引入因子图&#xff0c;便于思路梳理和理解。 引入因子图是为了方便宏观的把握SLAM的框架…

SLAM测评工具---evo安装与使用

evo简介 evo是一个很好的测评工具&#xff0c;它可以根据时间戳将轨迹进行对齐&#xff0c;同时可以将不同尺度的轨迹按照你指定的标准轨迹进行拉伸对齐&#xff0c;并可以算出均方差等评定参数&#xff0c;用于测评slam算法性能 目前支持 TUM KITTI Euroc 等格式。evo工具提…

evo评测VINS-MONO---指标解析、算法精度分析(数据集)

上篇博文已通过代码修改、数据格式转换、数据测试实现使用evo评测VINS-MONO&#xff0c;该篇将详细介绍evo评测出的数据指标&#xff0c;以及VINS-MONO在数据集下的精度情况。 EVO评价指标介绍 绝对轨迹误差&#xff08;ATE:abosulte trajectory error)&#xff1a;直接计算相…

evo评测VINS-MONO---TUM数据集

为了想测试室外场景下VINS-MONO定位情况&#xff0c;室外环境的KITTY数据集因无时间戳&#xff0c;EVO测评较困难。 故选择TUM数据集&#xff0c;outdoors1~8(户外)&#xff1a;在校园内的室外场景拍摄&#xff0c;但是数据包里只在开始和结束有真实值&#xff0c;没办法与真值…

视觉SLAM方案分类及选型调研

经典视觉SLAM框架 SLAM至今已历经三十多年的研究&#xff0c;这里给出经典视觉SLAM框架&#xff0c;这个框架本身及其包含的算法已经基本定型&#xff0c;并且已经在许多视觉程序库和机器人程序库中提供。 我们把整个视觉 SLAM 流程分为以下几步&#xff1a; 1&#xff09;传…

载体坐标系-惯性坐标系-世界坐标系

世界坐标系 世界坐标系是一个特殊的坐标系&#xff0c;它建立了描述其他坐标系所需要的参考系。也就是说&#xff0c;可以用世界坐标系去描述其他所有坐标系或者物体的位置。所以有很多人定义世界坐标系是“我们所关心的最大坐标系”&#xff0c;通过这个坐标系可以去描述和刻…

Vins-fusion gps融合 KITTY数据集测试

下载kitti数据集 下载kitti数据集和真值poses的00.txt以及sequences文件00序列的times.txt&#xff0c;&#xff08;全网找了好久&#xff0c;最后不得已翻墙从官网down下来的&#xff09; 代码修改&#xff0c;保存输出数据 先指定输出路径:打开vins-fusion/config/kitti_r…

ROS消息回调处理函数:ros::spin()和ros::spinOnce()

简介 它俩通常会出现在ROS的主循环中&#xff0c;程序需要不断调用ros::spin() 或 ros::spinOnce()&#xff0c;两者区别在于前者调用后不会再返回&#xff0c;也就是你的主程序到这儿就不往下执行了&#xff0c;而后者在调用后还可以继续执行之后的程序。 其实消息回调处理函…

Vins-fusion GPS融合部分测试(自己的数据ZED+RTK)

经过前一段时间的积累&#xff0c;目前暂时成功实现了用自己的数据测试实现Vins-fusionGPS融合&#xff0c;其实放在数据采集处理上的时间比较多&#xff0c;踩了很多坑&#xff0c;效果在一些部分还不是很好&#xff0c;后期持续优化吧 其中黑色轨迹为VIO的输出轨迹&#xff…

ubuntu20.04+slam实例配置(至第五章)

sudo apt install gedit sudo gedit /etc/apt/sources.list 首选阿里源&#xff0c;包比较全但更新可能比较慢 sudo apt-get update sudo apt-get upgrade Ubuntu 22.04&#xff1a;jammy Ubuntu 20.04&#xff1a;focal Ubuntu 18.04&#xff1a;bionic Ubuntu…