随笔分类 - SLAM和概率机器人
李群和李代数
摘要:注意:!!!!!看书本,这里的导数是旋转之后点的坐标相对于旋转的导数 !!!!! 旋转矩阵对时间的导数应为 #include <iostream> #include <cmath> #include <Eigen/Core> #include <Eigen/Geometry> #include "s
阅读全文
三维空间刚体运动——(2)旋转向量、欧拉角、四元数
摘要:编程时候很多坑,必须注意。首先,一定要注意四元素定义中实部虚部和打印系数的顺序不同,很容易出错! 其次,单位四元素才能描述旋转,所以四元素使用前必须归一化:q.normalize()。
阅读全文
三维空间刚体运动——(1)齐次坐标与旋转矩阵
摘要:目录: 什么是齐次坐标? 简单的说:齐次坐标就是在原有坐标上加上一个维度: 使用齐次坐标有什么优势? 1、能非常方便的表达点在直线或平面上 在2D平面上,一条直线 l 可以用方程 ax + by + c = 0 来表示,该直线用向量表示的话一般记做 我们知道点p = (x, y)在直线 l 上的充分
阅读全文
激光雷达运动畸变去除
摘要:参考链接: 线性插值函数:https://blog.csdn.net/oscarwsd/article/details/81564701
阅读全文
扩展卡尔曼滤波器
摘要:毫米波雷达的数据 毫米波雷达观察世界的方式与激光雷达有所不同。激光雷达测量的原理是光的直线传播,因此在测量时能直接获得障碍物在笛卡尔坐标系下x方向、y方向和z方向上的距离;而毫米波雷达的原理是多普勒效应,它所测量的数据都是在极坐标系下的。 如下图所示,毫米波雷达能够测量障碍物在极坐标下离雷达的距离ρ
阅读全文
卡尔曼滤波器
摘要:假设有个小车在道路上向右侧匀速运动,我们在左侧安装了一个测量小车距离和速度传感器,传感器每1秒测一次小车的位置s和速度v,如下图所示。 我们用向量xt来表示当前小车的状态,该向量也是最终的输出结果,被称作状态向量(state vector): 由于测量误差的存在,传感器无法直接获取小车位置的真值,只
阅读全文
机器人的地图——占据栅格地图
摘要:1. 机器人地图的分类 地图有很多种表示方式,例如,用经纬度标识地方的世界地图,城市的地铁图,校园指引图。 第一种我们称为尺度地图(Metric Map),每一个地点都可以用坐标来表示,比如北京在东经116°23′17'',北纬39°54′27'';第二种我们称为拓扑地图(Topological M
阅读全文
安装ceres-solver
摘要:http://ceres-solver.org/installation.html#getting-the-source-code
阅读全文
slam课程
摘要:美国宾夕法尼亚大学最近有录制一套 无人机视觉定位导航相关的视频课程,2019年3月份在YouTube上更新完毕,质量非常高,名字叫Robotics,视频课程列表:https://www.youtube.com/playlist?list=PL_onPhFCkVQhuPiUxUW2lFHB39Qsav
阅读全文
Ubuntu16.04安装pcl库
摘要:sudo apt-get install libpcl-dev sudo apt-get install pcl-tools
阅读全文
向量内积(点乘)和外积(叉乘)概念及几何意义
摘要:向量的内积(点乘) 定义 概括地说,向量的内积(点乘/数量积)。对两个向量执行点乘运算,就是对这两个向量对应位一一相乘之后求和的操作,如下所示,对于向量a和向量b: a和b的点积公式为: 这里要求一维向量a和向量b的行列数相同。注意:点乘的结果是一个标量(数量而不是向量) 定义:两个向量a与b的内积
阅读全文
eigen矩阵操作练习
摘要:// // Created by qian on 19-7-16. // /* 相机位姿用四元数表示 q = [0.35, 0.2, 0.3, 0.1] x,y,z,w * 注意:输入时Quaterniond(w,x,y,z) W 在前!!! * 实现:输出四元素对应的旋转矩阵,旋转矩阵的转置, *
阅读全文
opencv3 使用glob遍历并修改文件名
摘要:1、函数说明 string::find()函数:是一个字符或字符串查找函数,该函数有唯一的返回类型,即string::size_type,即一个无符号整形类型,可能是整数也可能是长整数。如果查找成功,返回按照查找规则找到的第一个字符或者子串的位置; 如果查找失败,返回string::npos,即-1
阅读全文