UKF-SLAM是一种比较流行SLAM方案.相比EKF-SLAM,UKF利用unscented transform代替了EKF的线性化趋近,因而具有更高的精度.Bayes++库中的unsFlt.hpp中给出了UKF实现的相关类. namespace Bayesian_filter { class Unscented_predict_model : public Predict_model_base /* Specific Unscented prediction model for Additi…
Bayes++是一个开源的C++类库.这些类表示并实现了用于离散系统的贝叶斯滤波的各种数值算法.该库中的类提供测试和一致的数值方法,并且用层次明确的结构表明了各种滤波算法和系统模型类型. 接下来,我们就从namespace入手说明库中各个模块的作用.Bayes++库下面最重要也是包含类最多一个名称空间是Bayesian_filter,包含了各类模型和滤波器的相关类.从类的继承关系入手,先对Bayesian_filter::Bayes_base进行说明,继承自该基类的类主要有以下几部分: 第一部分…
前面我们已经熟悉了Bayesian_filter::Bayes_filter_base和其子类的击继承关系,接下来我们开始学习该类的实现. bayesFlt.hpp文件为其实现主体,首先是两个常规的头文件,一个是异常处理类型相关的,另一个是支持矩阵的头文件. #include "bayesException.hpp" // exception types #include "matSupSub.hpp" // matrix support subsystem 接着,…
在对Bayes++库的名称空间有了一个大概的了解之后,我们开始学习该名称空间下的第一个子类Bayesian_filter::Bayes_filter_base. 该类与其子类的继承关系图如下图所示. Bayesian_filter::Bayes_filter_base对应的头文件和实现文件分别为bayesFlt.hpp和bayesFlt.cpp. 1. 接下来是第一个子类Bayesian_filter::Functional_filter,其对应的继承关系图如下: 2. Bayesian_fil…
接下来,需要介绍的是重要性重采样类Bayesian_filter::Improtance_resampler.该类实现了两种重采样方法[1][2],和其子类的继承关系图如下: 其中Standard_resampler的实现来自论文[1]中实现的方法,Systematic_resampler实现了论文[2]提出的方法. 该算法对应的实现文件为SIRFlt.hpp,这里我们需要注意的是1) SIR algorithm is sensitive to random generator. In part…
知识点 Python3 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. 如果你以前没有接触过面向对象的编程语言,那你可能需要先了解一些面向对象语言的一些基本特征,在头脑里头形成一个基本的面向对象的概念,这样有助于你更容易的学习Python的面向对象编程. 接下来我们先来简单的了解下面向对象的一些基本特征. 面向对象技术简介 类(Class): 用来描述具有相同的属性和方法的对象的…
PyQt学习有阵子了,对章节的骨架基本考虑好了,准备本节就写组件的属性的,结果一是日常工作繁忙,经常晚上还要加班,二是Qt的组件属性很多,只能逐一学习.研究和整理,花的时间有点长,不过终于将可视化设计界面组件与QWidget类相关的组件属性弄清楚了,写了个大章节,准备参与CSDN的推荐使用,加章节名不太好,因此在此使用章节序号独开一节引用具体博文.具体博文地址: PyQt(Python+Qt)入门学习:Qt Designer可视化设计界面组件与QWidget类相关的组件属性详解 博客地址:htt…
OpenCV入门学习笔记 参照OpenCV中文论坛相关文档(http://www.opencv.org.cn/) 一.简介 OpenCV(Open Source Computer Vision),开源计算机视觉库 提供了很多函数,实现了很多计算机视觉算法,算法从最基本的滤波到高级的物体检测皆有涵盖 学习OpenCV所需要的基本知识 C/C++编程基础(编程能力) 了解算法原理(理论基础知识) 提升理论基础知识,所要了解的课程 数字图像处理 计算机视觉 模式识别 OpenCV知识一个算法库,我们并…
参考博客:http://www.cppblog.com/doing5552/archive/2009/01/08/71532.html 简介 最近开始一个机械手臂的安装调试,平面关节型机器人又称SCARA(Selective Compliance Assembly Robot Arm)型机器人,是一种应用于装配作业的机器人手臂.然后找资料学习一下OpenGL. OpenGL(全写Open Graphics Library)是个定义了一个跨编程语言.跨平台的编程接口规格的专业的图形程序接口.它用于…
OpenGL入门学习 说起编程作图,大概还有很多人想起TC的#include <graphics.h>吧? 但是各位是否想过,那些画面绚丽的PC游戏是如何编写出来的?就靠TC那可怜的640*480分辨率.16色来做吗?显然是不行的. 本帖的目的是让大家放弃TC的老旧图形接口,让大家接触一些新事物. OpenGL作为当前主流的图形API之一,它在一些场合具有比DirectX更优越的特性. 1.与C语言紧密结合. OpenGL命令最初就是用C语言函数来进行描述的,对于学习过C语言的人来讲,Open…