slam
文章平均质量分 76
小秋SLAM入门实战全部文章汇总
小秋 AI SLAM入门实战
小秋 AI SLAM入门实战
展开
-
小秋SLAM入门实战SLAM所有文章汇总
SLAM算法中的缓冲区和队列用途和用法【ORB_SLAM2源码解读】Intel RealSense D435i 实时跑ORB_SLAM2单目 双目 RGBD【从零开始学习SLAM】两帧之间的特征点视觉里程计并用g2o优化【从零开始学习SLAM】VIZ Pangolin 可视化【从零开始学习SLAM】BA问题用g2o求解重新投影误差优化相机位姿和路标点「零基础从零开始写VO视觉里程计」匹配的3D空间点求位姿并用g2o优化【ORB_SLAM2源码解读】Intel RealSense Depth Ca原创 2023-12-29 21:57:37 · 944 阅读 · 0 评论 -
计算两帧雷达数据之间的变换矩阵
【代码】计算两帧雷达数据之间的变换矩阵。原创 2024-03-09 17:54:50 · 676 阅读 · 0 评论 -
sensor_msgs::LaserScan雷达数据转换成pcl::PointXYZ数据类型
【代码】sensor_msgs::LaserScan雷达数据转换成pcl::PointXYZ数据类型。原创 2024-03-07 15:29:14 · 253 阅读 · 0 评论 -
IterativeClosestPoint<PointXYZL, PointXYZL, double>类是 PCL (Point Cloud Library) 中用于执行迭代最近点(ICP)算法的
类是 PCL (Point Cloud Library) 中用于执行迭代最近点(ICP)算法的类。这个算法用于计算两个点云之间的最佳对齐(即找到一个刚体变换,使得一个点云尽可能接近另一个点云)。这段 C++ 代码使用 PCL (Point Cloud Library) 生成了两个随机点云,应用了迭代最近点(ICP)算法来对齐这两个点云,并在一个窗口的两个视口中显示原始的未对齐点云和对齐后的点云。使用这些函数,你可以配置 ICP 算法的各种参数,执行点云对齐,并获取结果。原创 2024-01-30 18:09:10 · 1057 阅读 · 0 评论 -
pcl::VoxelGrid<PointXYZL>体素网格滤波常用函数功能和用法
它特别适用于理解点云处理的基本概念,如体素网格滤波,以及如何在 PCL 中进行点云的可视化。通过增加体素大小,可以更明显地看到滤波对点云造成的影响,从而更容易地比较滤波前后点云的差异。该程序是一个完整的 C++ 示例,用于演示如何使用 PCL (Point Cloud Library) 创建一个随机点云,应用体素网格滤波进行降采样,并使用 PCL 的可视化工具来显示滤波前后的点云。这些函数的组合使用可以实现对点云的有效降采样,即减少点云中的点的数量,同时尽可能地保持其结构和形状。原创 2024-01-30 14:38:08 · 771 阅读 · 0 评论 -
里程计(Odom)数据与惯性测量单元(IMU)数据融合
卡尔曼滤波器(Kalman Filter):粒子滤波器(Particle Filter):信息滤波器(Information Filter):图优化方法:基于学习的方法:决策树和随机森林:模糊逻辑:互补滤波器(Complementary Filter):直接融合与间接融合:原创 2024-01-17 13:45:43 · 647 阅读 · 0 评论 -
如何正确的计算两个角度的角度差?
这一步是必要的,因为它确保了无论a相对于b是在逆时针方向还是顺时针方向,d2总是正确地反映出绕圆相反方向的角度差。这样,当函数进行最后的比较时,它能够准确地比较两个方向的旋转路径并选择最短的一个。原创 2024-01-17 08:00:00 · 1912 阅读 · 0 评论 -
为什么使用 atan2(sin(z), cos(z)) 进行角度归一化?
这种方法不仅适用于将角度归一化到一个标准范围,而且确保了原始角度的方向和大小在单位圆上得到正确的表示和计算。相对于正X轴的偏移角度。这个角度是逆时针测量的,以弧度为单位。之所以能够正确归一化角度,是因为它结合了三角函数的周期性和。函数计算点在单位圆上角度的能力,从而能够将任意角度。函数为什么能够用于角度归一化,并且为什么。返回的角度等同于原始角度。原创 2024-01-16 11:39:45 · 606 阅读 · 0 评论 -
Eigen::Rotation2Dd 是 Eigen 库中用于处理二维空间中旋转的类。
在这个示例中,我们创建了一个45度的旋转,将其应用到一个向量上,然后创建了另一个旋转并将两个旋转组合在一起,最后将组合后的旋转应用到同一个向量上。输出结果展示了不同旋转和组合旋转后的向量位置。这个示例清楚地展示了。是 Eigen 库中用于处理二维空间中旋转的类。以下是对其用法的汇总和示例代码。类的基本用法,包括创建旋转、应用旋转、组合旋转以及提取旋转角度。原创 2024-01-16 11:14:29 · 495 阅读 · 0 评论 -
激光雷达数据和里程计数据的时间同步方法汇总
/ 可以是任何类型的数据,这里用double举例这是一个简单的结构体,用于存储数据点。timestamp:数据点的时间戳,表示数据点的时间。value:与时间戳相关的数据值,在这个例子中是一个double类型,但可以根据实际情况修改为其他类型。原创 2024-01-14 10:47:21 · 1979 阅读 · 5 评论 -
如何在两个激光传感器数据队列中找到时间上匹配最近的一对?
这种基于时间戳的同步方法在处理来自多个独立传感器的数据时非常有效,特别是在这些传感器不能被精确地同步启动或具有不同的采样率时。通过这种方式,可以确保多传感器系统中的数据在时间上保持一致,从而为后续的数据融合和分析提供了一个稳固的基础。这对于确保数据在时间上的一致性非常重要,尤其是在需要将这些数据结合起来进行进一步处理的情况下(例如,在机器人导航和地图构建中)。这段代码的主要目的是在两个激光雷达数据集中找到时间上最接近的数据对,以便进行进一步的数据处理和分析。将找到的最接近的激光数据(由。原创 2024-01-13 17:29:02 · 1337 阅读 · 0 评论 -
激光 SLAM 中特别处理第一个雷达数据是为什么?
请注意,这个例子是为了演示目的而简化的,并不代表一个完整的 SLAM 系统的实现。),得到一个综合的旋转变换。这个组合的变换将按照 z-y-x 的顺序应用(注意,旋转的应用顺序与编写代码时的顺序是相反的,因为数学上的矩阵乘法是从右向左应用)。这里的目标是创建一个旋转变换,它将一个给定的三维方向(由激光雷达数据中的。这对于将所有后续的激光雷达数据与第一个接收到的激光雷达数据对齐是非常重要的。总的来说,这种处理方式为激光 SLAM 系统提供了一个稳固的起点,确保了系统的准确性和一致性。原创 2024-01-11 16:22:44 · 1137 阅读 · 0 评论