![](https://img-blog.csdnimg.cn/20190927151117521.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
激光SLAM
文章平均质量分 64
喵喵三三
博客是自己平时的学习笔记,仅供参考。希望能结识对自动驾驶和机器人定位算法的人,共同交流进步
展开
-
3D激光slam解析
这里只总结大佬解析的网址,如有侵权,请联系我.(今天也是膜拜大佬的一天ing)1. hdl_graph_slam 源码: github 代码hdl_graph_slam任大佬的解析(膜拜ing.....):hdl_graph_slam源码解读(一):整体介绍hdl_graph_slam源码解读(二):g2o顶点和边的管理hdl_graph_slam源码解读(三):点云滤波hdl_graph_slam源码解读(四):关键帧hdl_graph_slam源码解读(五):前端里程..原创 2021-07-01 17:18:23 · 569 阅读 · 0 评论 -
点云配准方法--PLICP
PLICP论文下载:Censi, A. (2008). "An ICP variant using a point-to-line metric." IEEE International Conference on Robotics & Automation. IEEE,: 19-25.ICP方法存在以下缺点:依赖初始值,初始值不好时,迭代次数增加;对于较大的初始误差,可能会出现错误...原创 2019-10-25 21:24:25 · 7887 阅读 · 1 评论 -
点云配准方法--ICP(最近迭代点)
ICP方法就是给定两个点集,求取这两个点集之间的旋转矩阵R和平移T,求得它们之间的最优匹配。这个方法可以用在SLAM中求解两帧图像或者两帧激光数据的运动位姿。ICP问题描述:给定两个点集:找一个欧式变换R,t,使得:求解R和t,使得误差函数最小:一、已知对应点关系求解R和t计算两组点的质心位置:计算每个点的去质心坐标:推导目标函数:所以,...原创 2019-10-23 22:27:49 · 2558 阅读 · 2 评论 -
gmaping原理及代码解析(三)
(三)gmapping详细代码解析A、里程计运动模型我们先来看一下Gmapping里面实现的里程计模型代码:/*@desc 里程计运动模型@p 表示粒子估计的最优位置(机器人上一个时刻的最优位置)@pnew 表示里程计算出来的新的位置@pold 表示里程计算出来的旧的位置(即上一个里程计的位置)*/OrientedPoint MotionModel::drawFr...原创 2019-10-15 22:54:05 · 3896 阅读 · 2 评论 -
gmaping原理及代码解析(二)
之前记录着就忘记录了,现在补上,欢迎大家一起交流啊~(二)gmapping原理解析A、先验知识条件概率公式:上图中红色为A事件,蓝色为B时间,紫色为A、B事件同时发生的概率,P(A|B)表示B发生的条件下A发生的概率:全概率公式:如上图,对于样本空间A,由A1...A7个事件组成,且A1...A7事件两两互斥,即任意两个事件的交集为空集;则对于任意事件B有:...原创 2019-10-14 12:05:10 · 2454 阅读 · 0 评论 -
占用栅格地图原理分析
参考:占用栅格地图---知乎参考:bresenham画线算法解析上传公式失败,直接上传图片了~计算出栅格后,利用画线算法bresenham将经过的激光束画出来,小博自己将gmapping里的画线算法改为matlab语言,代码如下:function [freex,freey]=self_bresenham(startx,starty,endx,endy)i=0;j=0;d...原创 2019-06-17 10:29:46 · 4228 阅读 · 0 评论 -
cartographer系列----cartographer论文
看完这篇论文很久了,现在再做一下学习笔记。希望大家一起交流学习呀~这篇论文的重点在于分支定界算法回环检测时对CSM相关算法的搜索加速。论文中文翻译可看:real-time loop closure in 2D LIDAR SLAMI.INTRODUCTION讲这篇论文的重点在于减少在计算回环约束时的计算量。II.RELATED WORK提出几种常用的回环检测时用到的扫描匹配...原创 2019-06-04 11:41:44 · 13538 阅读 · 1 评论 -
cartographer系列---lua配置文件
使用cartographer建图需要从lua文件中读取参数配置。本文记录lua文件中的一些参数参考:官方文档先看一些ros与cartographer的集成项,这些集成项需要在lua文件中声明:map_frame:一般为“map”.用来发布submap的ROS帧ID.tracking_frame:SLAM算法要跟踪的ROS 帧ID.?published_frame:用来发布pos...原创 2019-04-29 17:04:57 · 8710 阅读 · 2 评论 -
gmapping原理及代码解析(一)
此次记录Gmapping学习的过程,笔者能力尚缺,欢迎大家一起交流啊~一、gmapping代码解析我们先来看看Gmapping里的main.cpp#include <ros/ros.h>#include "slam_gmapping.h"intmain(int argc, char** argv){ ros::init(argc, argv, "slam_...原创 2019-03-29 09:23:00 · 10685 阅读 · 7 评论