![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SLAM
文章平均质量分 93
YOULANSHENGMENG
这个作者很懒,什么都没留下…
展开
-
激光和相机的标定---手动标定的方法
这是Livox提供的手动校准Livox雷达和相机之间外参的方法,并在Mid-40,Horizon和Tele-15上进行了验证。其中包含了计算相机内参,获得标定数据,优化计算外参和雷达相机融合应用相关的代码。本方案中使用了标定板角点作为标定目标物,由于Livox雷达非重复性扫描的特点,点云的密度较大,比较易于找到雷达点云中角点的准确位置。相机雷达的标定和融合也可以得到不错的结果。原创 2023-04-17 11:10:07 · 2451 阅读 · 1 评论 -
R3LIVE在NX上的运行
第四步之前都不会有什么问题,关键是第四步编译的时候会有问题。因为源码是x86平台的,所以迁移至AMR平台,会有很多编译的问题。../R3_ws/src/r3live/r3live/./src/tools/tools_logger.hpp:1323:10: fatal error: cpuid.h: 没有那个文件或目录。主要注释头文件和这下面三个函数相关的代码。解决办法:这种情况是因为在arm平台上不存在SSE指令集的,在X86平台才会有,因此需要在CMakLists文件中吧有关-msse3字样的都注释掉。原创 2023-03-29 20:09:05 · 484 阅读 · 2 评论 -
ubuntu 18.04 Melodic+gmapping环境搭建
主目录新建catkin_ws工作空间文件夹,在catkin_ws中新建src功能包文件夹 二、下载源码一共需要下载五个功能包,第五个功能包geometry2需要手动下载(手动选择melodic版本下载,默认为noetic版本,会导致编译出错),移动至src路径下。(点击Code下载压缩包)源码下载太慢,可以直接使用以下链接进行下载:src.zip - 蓝奏云下载后,解压将五个文件夹复制到创建的工作空间src的文件夹下 链接:laserdata.zip - 蓝奏云 打开第一个终端原创 2022-06-02 09:17:20 · 1799 阅读 · 0 评论 -
ubuntu18.04+ros(melodic)安装 cartographer安装
测试使用的数据集下载的地址Public Data — Cartographer ROS documentation好一点的攻略的网址前提是安装好ROSUbuntu18.04安装cartographer成功--2022.5.17_流水心清的博客-CSDN博客【Ubuntu18.04+melodic+cartographer安装并跑通官方测试例程】(2022.3.13跑通)_KevinXT的博客-CSDN博客粒子滤波讲解较好的网址无公式解释粒子滤波(通俗易懂)_测量通俗易原创 2022-05-31 16:25:06 · 4321 阅读 · 3 评论 -
SLAM学习笔记----坐标关系梳理及PnP算法详解
一,重要的坐标关系的解析四个坐标系:世界坐标系、相机坐标系、图像坐标系、像素坐标系。世界坐标系:机器人或相机运动过程中,肯定需要知道它的位置,因此需要设定世界坐标系,认定固定不动,作为 参考坐标系,描述世界中的任何一点P(Xw,Yw,Zw)。相机坐标系:相机或机器人运动的一个坐标系,通过世界坐标系的变换(旋转R,平移T)计算得到。因此主要是将 世界坐标系描述的点坐标P(Xw,Yw,Zw)转换成相机坐标系下描述P(Xc,Yc,Zc),方便计算得到在成像坐标系的坐 标。图像(成像)坐标系:描原创 2022-05-23 13:28:53 · 3820 阅读 · 0 评论 -
SLAM学习笔记-----对极几何及三角化求单目相机的三维坐标
一,使用对极几何约束求R,T第一步:特征匹配。提取出有效的匹配点void find_feature_matches(const Mat &img_1, const Mat &img_2, std::vector<KeyPoint> &keypoints_1, std::vector<KeyPoint> &keypoints_2,原创 2022-05-20 15:27:36 · 2200 阅读 · 0 评论 -
ORB-SLAM3代码详解----基本框架解析及ORB特征提取
一、ORB-SLAM3结构解析输入【Frame and IMU】:frame可以是单目,双目和RGB-D,外加一个IMU,视觉出来的图像,主要是使用ORB算法进行特征提取,IMU的数据主要是用来做积分。Tracking :和ORB-SLAM2的第一个区别。在跟踪模块Tracking ,之前是只根据图像视觉的算法做的,在ORB-SLAM3中,计入加入了IMU的作用。 处理传感器信息并实时计算当前帧在激活地图中的姿态。同时该模块也决定了是否将当前帧作为关键帧。在视觉-惯...原创 2022-05-17 10:46:12 · 14998 阅读 · 5 评论 -
RGBD-SLAM总结
一、SLAM技术回顾SLAM,即时定位与制图,包含3个关键词:实时、定位、制图,就是实时完成定位和制图的任务,这就是SLAM要解决的基本任务。按照使用的传感器分为激光SLAM(LOAM、V-LOAM、cartographer)与视觉SLAM,视觉SLAM,视觉SLAM的主要分支如下图所示:...原创 2022-04-13 10:12:09 · 7449 阅读 · 0 评论 -
slam学习笔记七----IMU传感器
一,IMU 惯性测量单元 惯性测量单元(IMU)包含了三个单轴的加速度计和三个单轴的陀螺仪,加速度计检测物体在载体坐标系统独立三轴的加速度信号,而陀螺仪检测载体相对于导航坐标系的角速度信号,测量物体在三维空间中的角速度和加速度,并以此解算出物体的姿态。在导航中用着很重要的应用价值。 IMU可获得载体的姿态、速度和位移等信息,被广泛用于汽车、机器人领域,也被用于需要用姿态进行精密位移推算的场合,如潜艇、飞机等惯性导航设备中。 IMU模块IMU的定义及功能慣性测量单元被...原创 2022-04-02 13:28:00 · 3899 阅读 · 0 评论 -
slam学习笔记六----slam系统中位姿转换问题及一些术语的解释
一、几种常用的表达方式1)Tcw:表示从世界坐标系到相机坐标系的转化有: Pc = Tcw * Pw2)Twc:表示从相机坐标系到世界坐标系的转化有:Pw = Twc * PcTwc和Tcw都很常见,而Twc更常见,因为其更直观3)相机的位置在哪当取Pw = 0有Pc = Twc * 0 = twc就是Twc的平移部分,也就是说我们可以直接从Twc中看到相机在哪,可视化时也常用的都是Twc【相机的位置在哪里】4)点P在世界坐标系的坐标我们常见的用于表示原创 2022-04-01 15:15:44 · 2879 阅读 · 0 评论 -
slam学习笔记五----视觉里程计的学习1
一,什么是视觉里程计SLAM系统分为前端和后端,前端也称为是视觉里程计,主要功能是根据相邻图像的信息粗略的估计出相机的运动,为后端提供较好的初始值。视觉里程计的算法有两大类特征点法和直接法。特征点法是常用方法,它具有稳定,对光照、动态物体不敏感的优势。视觉里程计的原理就是提取图像的特征点,通过匹配估计两帧之间相机运动和场景结构,实现一个两帧间的视觉里程计。其核心问题就是如何通过图像估计相机的运动。二,特征点法的原理 从图像中选取比较有代表的点,该点在相机视角发生少量变化后依旧保持不...原创 2022-03-28 10:40:04 · 14068 阅读 · 1 评论 -
slam学习笔记四----ceres,g2o的linux环境配置及SLAM第六章的代码的实现
一,ceres环境配置下载地址:git clone https://github.com/ceres-solver/ceres-solver安装附加库:sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3.1.2 libgflags-dev libgoogle-glog-dev libgtest-dev可能会出现无法定位libcxsoarse3.1.2的问题解决方法://第一步,打开sources原创 2022-03-25 16:55:48 · 763 阅读 · 0 评论 -
slam学习笔记二----eigen、Pangolin、Sophus的linux环境配置
一,配置eigen安装完成后,需要将eigen3中的文件夹Eigen放在include中,整个linux系统才能使用linux 下面如何进行安装 Eigen .调整,默认安装路径是:/usr/include/eigen3cd /usr/include/eigen3需要执行复制命令,将Eigen文件夹放在/usr/include 下面sudo cp Eigen/ .. –R1.1使用SLAM书本中的第三章eigen库的使用方法的例子测试mkdir buildcd..原创 2022-03-25 14:22:45 · 3265 阅读 · 0 评论 -
SLAM学习笔记三-----第五章的实现及opencv的linux下的编译方法
一、linux下编译opencv1)将第三方库安装完全。这样后面编译的时候不会报错,同时功能会很全1)安装第三方依赖库1、首先卸载系统自带的opencv$ sudo apt-get purge libopencv*$ sudo apt-get purge python-numpy$ sudo apt autoremove2、更新安装的包和库$ sudo apt-get update$ sudo apt-get dist-upgrade3、安装开发工具#确保pkg包含在insta原创 2022-03-25 11:15:40 · 3785 阅读 · 0 评论 -
slam学习笔记一----slam的简介及Kdevelop安装
SLAM是Simultaneous localization and mapping缩写,意为“同步定位与建图”,主要用于解决机器人在未知环境运动时的定位与地图构建slam是什么意思?一文带你读懂SLAM_SLAMTEC的博客-CSDN博客_slam是什么意思传感器数据:主要用于采集实际环境中的各类型原始数据。包括激光扫描数据、视频图像数据、点云数据等。视觉里程计:主要用于不同时刻间移动目标相对位置的估算。包括特征匹配、直接配准等算法的应用。后端:主要用于优化视觉里程计带...原创 2022-03-25 11:01:33 · 4084 阅读 · 0 评论