算法解析
通哈膨胀哈哈哈
自我对话攻城狮
展开
-
MIT:Karto_slam框架与代码解析
Karto_slam框架与代码解析1、Karto_slam概况介绍2、karto_slam具体介绍1、scan-matcher2、添加顶点和边的信息3、回环检测4、优化求解3、关于Karto_slam简单的总结正文如下1、Karto_slam概况 上面两张图主要是对Karto_slam的一个整体框架,从2016年slam的大综述中,可以看到这其实就是一般...原创 2018-09-14 15:20:12 · 3263 阅读 · 1 评论 -
算法解析:非线性最小二乘问题
本篇博客期望通过下降法和信任区域法引出高斯牛顿和LM两种常用的非线性优化方法。博客中主要内容为: 非线性最小二乘介绍; 下降法相关理论(Desent Method); 信任区域理论(Trust Region Methods); 非线性最小二乘求解方法(高斯牛顿、LM)由于个人水平有限,文中难免有解释不清晰的地方,因此希望大家结合着[1]、[2]和[3]进行理解。如果在阅读...原创 2018-09-25 15:13:25 · 5234 阅读 · 3 评论 -
算法解析:线性最小二乘问题
本篇博客主要讲解线性最小二乘问题,主要包括以下内容:最小二乘问题的定义 正规方程求解 乔姆斯基分解法求解 QR分解法求解 奇异值分解法求解 齐次方程的最小二乘一. 问题的定义 最小二乘问题通常可以表述为,通过搜集到的一些数据(获取得到的样本),对某一个模型进行拟合,并尽可能的使得模型结果和样本达到某种程度上的最佳拟合: 转化为数学表达式为: 其中 x 为模型中参数...原创 2018-09-25 15:52:28 · 9039 阅读 · 0 评论 -
算法解析:KD树
1. 概述KD树是一种查询索引结构,广泛应用于数据库索引中。从概念的角度讲,它是一种高纬数据的快速查询结构,本文首先介绍1维数据的索引查询,然后介绍2维KD树的创建和查询,相关定理和推论也简单列出,本文争取用15分钟的时间,让大家快速理解KD树。2. 1维数据的查询假设在数据库的表格T中存储了学生的语文成绩chinese、数学成绩math、英语成绩english,如果要查询语文成绩介于...原创 2018-09-25 16:38:25 · 919 阅读 · 0 评论 -
SLAM:基于粒子滤波的(GMapping)算法分析
本文是《Improved Techniques for Grid Mapping_with Rao-Blackwellized Particle Filters》的大致翻译,难免有不通顺与错误的地方,如有错误请指出,谢谢! 设想一个机器人在一个未知环境中移动,其目的是获得当前环境的地图。地图可以用一个储存每个网格单元颜色的矩阵表示,单元格的颜色只能为黑色或白色。由于传感器与电机都存在误差,运动很可...翻译 2018-07-13 15:03:57 · 11597 阅读 · 0 评论 -
算法解析:扩展卡尔曼滤波EKF与KF本质分析
了解卡尔曼滤波(KF)的人都应该清楚,扩展卡尔曼滤波(EKF)是KF的非线性情况,多做了一步线性化。一般线性化的常用方法使泰勒展开,需要一个展开的初始位置。因此KF的运动方程实际上就是求这个初始位置,但这个估计可能不准确,于是就给他一个相应的信任度或是称为权值。有了初始位置再加入距离量测信息,距离量测值也根据其观测质量给出权值,通过两者加权平均得到最终估计值。所以本质上卡尔曼滤波运动...原创 2018-06-20 14:59:18 · 3648 阅读 · 0 评论 -
ROS:AMCL
软件包摘要amcl是机器人在2D中移动的概率定位系统。它实现了自适应(或KLD采样)蒙特卡罗定位方法,其使用粒子滤波器来针对已知的地图跟踪机器人的姿势。算法许多算法及其参数在本文中有详细描述。用户是建议检查有更多的细节。使用以下算法: sample_motion_model_odometry, beam_range_finder_model, likelihood_field_range_fin...原创 2018-07-05 15:58:54 · 2280 阅读 · 0 评论 -
算法分析:光流测速和视觉里程计
两种已经比较成熟的视觉感知系统:光流测速模块和视觉里程计。 光流测速模块顾名思义,只能测速度。通常一个光流测速模块由一个相机、一个惯性测量元件、一个超声波模块构成,它的主要原理是计算机视觉技术中于1981年被发展出来的“光流追踪”算法。“光流”的概念最早在1950年代由心理学家和生物学家提出,指的是一个观察者和他在观察的事物发生相对运动时,这些事物在他眼前成的像会产生“运动的模式”,人脑...原创 2018-07-18 13:53:32 · 2837 阅读 · 0 评论 -
算法详解:Dijkstra算法
Dijkstra算法算是贪心思想实现的,首先把起点到所有点的距离存下来找个最短的,然后松弛一次再找出最短的,所谓的松弛操作就是,遍历一遍看通过刚刚找到的距离最短的点作为中转站会不会更近,如果更近了就更新距离,这样把所有的点找遍之后就存下了起点到其他所有点的最短距离。问题引入:指定一个点(源点)到其余各个顶点的最短路径,也叫做“单源最短路径”。例如求下图中的1号顶点到2、3、4、5、6号...转载 2019-03-12 17:15:30 · 1038 阅读 · 0 评论