
机器人
文章平均质量分 85
陈同学_alex
这个作者很懒,什么都没留下…
展开
-
流形上的预积分(下)
论文:IMU Preintegration on Manifold for Effificient Visual-Inertial Maximum-a-Posteriori Estimation引言接上文…考虑(31)中的预积分测量模型,由于测量噪声为零均值且为一阶高斯(35),残差 rIij≡[rΔRijT,rΔvijT,rΔpijT]T∈R9\bold{r}_{\mathcal{I}_{ij}} \equiv [ \bold{r}_{\Delta \bold{R}_{ij}}^T , \bold{r}_原创 2022-11-05 22:34:54 · 732 阅读 · 1 评论 -
流形上的预积分(中)
论文:IMU Preintegration on Manifold for Effificient Visual-Inertial Maximum-a-Posteriori Estimation引言接上文…从旋转噪声开始:ΔR~ij=Ri⊤RjExp(δϕij)⇒Exp(−δϕij)≐∏k=ij−1Exp(−ΔR~k+1j⊤JrkηkgdΔt)(32)\Delta \tilde{\mathrm{R}}_{i j} =\mathrm{R}_{i}^{\top} \mathrm{R}_{j} \ope原创 2022-11-05 22:31:58 · 771 阅读 · 0 评论 -
流形上的预积分(上)
论文:IMU Preintegration on Manifold for Effificient Visual-Inertial Maximum-a-Posteriori Estimation引言本文提出了一个使用增量平滑(incremental smoothing)快速计算最大后验估计(MAP)的系统。第一项贡献是发展出了一种新颖的预积分理论。 预积分IMU测量的使用是在[26]中首次提出的,包括将两个关键帧之间的许多惯性测量组合成一个相对运动约束。 本文在此工作的基础上提出了一个预积分理论,该理论恰当原创 2022-11-05 22:27:38 · 1012 阅读 · 0 评论 -
卡尔曼滤波的推导
卡尔曼滤波的详细推导过程。原创 2022-07-19 20:34:43 · 402 阅读 · 2 评论 -
BCH公式和李代数求导
本文记录BCH公式、李代数求导、伴随矩阵等知识点原创 2022-07-17 13:47:27 · 2631 阅读 · 1 评论 -
3D Dynamic Scene Graphs论文阅读
3D Dynamic Scene Graphs: Actionable Spatial Perception with Places, Objects, and HumansAntoni Rosinol, Arjun Gupta, Marcus Abate, Jingnan Shi, Luca CarloneLaboratory for Information & Decision Systems (LIDS)Massachusetts Institute of TechnologyRSS2原创 2022-05-22 16:28:18 · 1241 阅读 · 1 评论 -
PL-VIO论文阅读
PL-VIO: Tightly-Coupled Monocular Visual–Inertial Odometry Using Point and Line FeaturesYijia He 1,2,* , Ji Zhao 3, Yue Guo 1,2, Wenhao He 1 and Kui Yuan 12018摘要To address the problem of estimating camera trajectory and to build a structural 3D map ba原创 2022-04-19 20:30:45 · 1631 阅读 · 0 评论 -
VDO-SLAM论文阅读
VDO-SLAM: A Visual Dynamic Object-aware SLAM SystemJun Zhang[co]1, Mina Henein[co]1, Robert Mahony1 and Viorela Ila21Australian National University, Canberra2University of Sydney, Sydney2020年摘要The scene rigidity assumption, also known as the static原创 2022-04-14 22:40:29 · 811 阅读 · 0 评论 -
ORB-SLAM2代码思维导图
初始化跟踪线程局部建图线程回环检测线程原创 2022-04-11 13:44:33 · 914 阅读 · 0 评论 -
Realsense的使用
获取Realsense的相关参数1.1获取Realsense的串口号rs2::context ctx;autodevs = ctx.query_devices();///获取设备列表intdevice_num = devs.size();std::cout<<"device num: "<<device_num<<std::endl;///设备数量///查看第0个设备的信息rs2::device dev = devs[0];///设备...原创 2021-08-21 17:47:47 · 4364 阅读 · 4 评论 -
Ceres和g2o的配置和使用
上文非线性优化介绍了非线性优化的基本求解方法,并使用C++手动实现了曲线拟合实例。本文介绍ceres和g2o库的配置方法,并通过曲线拟合实例介绍其使用方法。Ceres安装Google Ceres 是一个广泛使用的最小二乘问题求解库。在 Ceres 中,我们作为用户,只需按照一定步骤定义待解的优化问题,然后交给求解器计算即可。Google Ceres库的源码:https://github.com/ceres-solver/ceres-solver依赖项:...原创 2021-08-21 10:41:56 · 1898 阅读 · 0 评论 -
SLAM基本概念
SLAM (simultaneous localization and mapping),也称为CML (Concurrent Mapping and Localization),即时定位与地图构建,或并发建图与定位。问题可以描述为:将一个机器人放入未知环境中的未知位置,是否有办法让机器人一边移动一边逐步描绘出此环境完全的地图,所谓完全的地图(a consistent map)是指不受障碍行进到房间可进入的每个角落。整个视觉 SLAM 流程包括以下步骤。 1.传感器信息...原创 2021-08-20 11:10:57 · 6686 阅读 · 0 评论 -
点云地图的二维投影
通过SLAM或其他方式构建的点云地图是无法直接用于导航的,我知道的解决方案有三种:一、将点云地图二维投影,转换为可用于导航的二维栅格地图;二、将点云转换为Octomap八叉树地图,即可使用导航算法,比如RRT*进行三维导航;三、将实时点云数据转换为实时激光数据,这样就可以愉快的使用ROS的move_base和acml包了。这里尝试使用第一种方案。构建点云地图构建点云地图需要深度图和对应的位姿,这里使用高翔的<视觉SLAM14讲>的深度图和位姿。...原创 2021-08-20 11:05:09 · 5155 阅读 · 3 评论 -
ROS-OccupancyGrid学习笔记
OccupancyGridROS通过OccupancyGrid(占据网格)进行导航,OccupancyGrid由一个.yaml格式的元数据文件,和图片格式的地图数据文件组成。 地图元数据 地图元数据 xxx.yaml 的格式如下: image:testmap.pgmresolution:0.1origin:[0.0,0.0,0.0]occupied_thresh:0.65free_thresh:0.196negate:0 注释如下:imag...原创 2021-08-20 11:03:07 · 5109 阅读 · 1 评论 -
ROS-机器人导航
导航常用的数据类型std_msgs/Header标准消息头uint32seq#序号timestamp#时间戳stringframe_id#该数据所在的坐标系geometry_msgs/Point空间三维坐标float64xfloat64yfloat64zgeometry_msgs/Quaternion表示旋转的四元数float64xfloat64yfloat64zfloat64wgeometry_msgs/Po...原创 2021-08-20 11:00:51 · 2449 阅读 · 0 评论 -
QT5+ROS程序开发
很多时候我们开发ROS程序的时候,会遇到GUI的需求。有几种方法可以在ROS中开发GUI程序,比如使用rqt_qt。若基于Python语言,还可以使用pyqt、thinker等GUI库。若基于C++,最好的选择是QT。ROS官方是支持QT4的,比如可以使用catkin_create_qt_pkg创建qt功能包,而ROS中很多著名的工具都是基于QT4。但是2020年,谁还用QT4,当然是拥抱QT5了。此外,ROS并没有一个官方的IDE,虽然使用编辑器+命令行也能满足需求,但是带界面的IDE更加赏...原创 2021-08-20 10:54:47 · 11493 阅读 · 3 评论 -
终生学习(增量学习)概述
概念终生学习(Life Long Learning,LLL),又称为Continuous Learning、Never Ending Learning、Incremental Learning,就是机器可以不断学习新知识,而不会忘记学过的知识。LLL需要解决三个问题:Knowledge Retention、Knowledge Transfer、Model Expansion。本文内容总结自李宏毅的PPT。1.Knowledge Retention问题提出Knowledge...原创 2021-08-20 10:46:38 · 3297 阅读 · 0 评论 -
基于图搜索的路径规划方法
ps:本文的相关图片来自与深蓝学院的课件。图搜索的基本概念Workspace:现实空间。配置空间:机器人表示为一个点,障碍物表示为无法达到的点。下面是不同的图的形式:抽象图、无向图、带权重的图、有向图。对于一个搜索问题,都对应一个状态空间图,图中节点之间的连接性由有向或无向边表示。如下图左的栅格地图就是以每个栅格为节点而构建一个搜索图,下图右的采样地图需要人为构建一个图:对图进行搜索可以得到一个搜索树:对于多数搜索...原创 2021-08-20 10:33:35 · 2623 阅读 · 0 评论 -
树莓派ROS配置指南
Ubuntu树莓派Mate的配置过程安装首先从官网下载Ubuntu Mate的镜像.img,然后使用工具(比如Balena Etcher)将镜像烧录到树莓派的SD卡中,接着启动就可以了。打开Ubuntu Mate,启动终端。0.设置WIFIhttps://blog.youkuaiyun.com/hhaowang/article/details/907000941.换源sudo nano /etc/apt/sources.list将每个 http://po...原创 2021-08-20 10:30:36 · 729 阅读 · 0 评论 -
基于采样的路径规划方法
与基于图搜索的方法相比,基于采样的路径规划算法不需要显式构建整个配置空间和边界。0.概念Complete Planner(完备规划器)Probabilistic Complete Planner(概率完备的规划器)Resolution Complete Planner(解完备规划器)1.概率路图(PRM)PRM是一个以图结构为基础的路径规划算法,该算法分为两个阶段:学习阶段和查询阶段。PRM首先在地图中撒一些点,然后将这些点连接成为一个图,最后在图...原创 2021-08-19 13:41:11 · 3812 阅读 · 1 评论 -
IMU传感器和预积分
最近看了深蓝学院的VIO课程, 学到了很多, 现将课程内容总结如下.惯性测量单元(英文:Inertial measurement unit,简称IMU)是测量物体三轴姿态角(或角速率)以及加速度的装置,由一个陀螺仪和一个加速度计组成.IMU的数学模型IMU的误差模型IMU的误差包括确定性误差和随机误差,确定性误差包括:Bias Scale,非对齐误差等.Bias:理论上,当没有外部作用时,IMU传感器的输出应该为0。但是,实际数据存在一个偏置b。加速度计bias...原创 2021-08-19 13:31:17 · 1715 阅读 · 0 评论 -
ICRA2020 论文阅读
1.TextSLAM: Visual SLAM with Planar Text Features.Boying Li, Danping Zou, Daniele Sartori, Ling Pei, and Wenxian Yu . 上海交通大学上海市导航与位置服务重点实验室摘要:将人工场景中的text目标集成到视觉SLAM系统中。基于text的视觉SLAM的核心思想是将每个检测到的text作为一个具有丰富纹理和语义意义的平面特征来处理。Text feature用三个参数简洁地表示,并采用光度不变..原创 2021-08-19 13:24:45 · 1594 阅读 · 0 评论 -
IROS2020 论文阅读
1.Visual SLAM with Drift-Free Rotation Estimationin Manhattan World.Jiacheng Liu and Ziyang Meng. Department of Precision Instrument, Tsinghua University;摘要:提出了一种高效、准确用于人工环境的SLAM系统。加入曼哈顿世界的假设,以此来获得全局位姿。无漂移旋转运动的估计是利用线特征从结构规律性推导出来的。提出了一种两阶段消失点(vanish...原创 2021-08-19 13:20:12 · 1989 阅读 · 0 评论 -
最详细的SLAM综述
论文:Past, Present, and Future of SimultaneousLocalization And Mapping: Towards theRobust-Perception Age.Cesar Cadena, Luca Carlone, Henry Carrillo, Yasir Latif,Davide Scaramuzza, Jos´e Neira, Ian Reid, John J. Leonard摘要同时定位和建图(SLAM)包括同时构建环境模型(地...原创 2021-08-19 12:36:28 · 12266 阅读 · 0 评论 -
Ubuntu终极指南
这段时间一直在重装Ubuntu16.04,因此这里总结一下安装后适合我的环境配置(SLAM研究、CV研究)。Chrome浏览器的安装安装包下载地址:https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.debsudodpkg-igoogle-chrome-stable_current_amd64.deb更改apt源命令如下:sudocp/etc/apt/...原创 2021-06-21 12:20:14 · 862 阅读 · 0 评论 -
ORB-SLAM2论文翻译
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-105.html论文:Raul Mur-Artal,Juan D. Tard ´os´.ORB-SLAM2: an Open-Source SLAM System for Monocular, Stereo and RGB-D Cameras.2017...原创 2020-04-13 18:28:42 · 2205 阅读 · 0 评论 -
ORB-SLAM论文翻译
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-103.html论文:Mur-Artal R , Montiel J M M , Tardos J D .ORB-SLAM: A Versatile and Accurate Monocular SLAM System[J]. Robotics, IEEE...原创 2020-04-13 18:26:15 · 3284 阅读 · 0 评论 -
ROS调用ORB-SLAM2
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-106.html在博文<ORB-SLAM2编译安装>中,我们编译安装了ORB-SLAM2,也运行了其自带的ROS例程。但是该ROS程序基于rosbuild编译,而我们现在更多的使用catkin,参考作用有限。这篇文章记录了基于ROS调用ORB-S...原创 2020-04-13 18:17:55 · 1793 阅读 · 1 评论 -
详解ROS中的TF使用
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-107.html 之前写过一篇博文<ROS-坐标转换>介绍了ROS中坐标转换的概念,并给出实例。在次基础上,本文总结了部分常用的TF的API,以供使用的时候查询。TF 数据类型tf::Transform 参考:http://do...原创 2020-04-13 18:15:12 · 6179 阅读 · 0 评论 -
最详细的Eigen笔记
在博文<三维空间中刚体运动>中介绍了三维空间刚体运动和坐标转换的概念,包括坐标变换的各中表示:旋转矩阵、四元数、旋转角、旋转向量、变换矩阵等,初步尝试了使用Eigen进行坐标变换。本文在此基础上,进一步总结Eigen中各种数据类型及其基本操作,便于查阅。旋转矩阵构造函数 单位矩阵构造Eigen::Matrix3d rotation_m=Eigen::Matrix3d...原创 2020-04-13 18:13:09 · 6419 阅读 · 0 评论 -
详解八叉树地图
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-102.html八叉树地图八叉树地图(OctoMap)就是一种灵活的、压缩的、又能随时更新的地图。八叉树示意图如下:一个大立方体不断地均匀分成八块,直到变成最小的方块为止。整个大方块可以看成是根节点,而最小的块可以看作是“叶子节...原创 2020-03-20 22:34:41 · 20089 阅读 · 2 评论 -
详解词袋模型
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-101.html本文是<视觉SLAM14讲>的学习笔记,今天学习到词袋模型,可以用来计算图像间的相似度。基本概念词袋(Bag-of-Words,BoW),是用“图像上有哪几种特征”来描述一个图像的方法。图像的词袋模型可以度量两个...原创 2020-03-20 22:33:01 · 4417 阅读 · 0 评论 -
ORB-SLAM2编译安装
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-99.html前几天一直再装RGBD-SLAM2,死活装不上,于是转移目标,安装ORB-SLAM2。ORB-SLAM是非常经典的一个SLAM系统,本文记录其在Ubuntu16.04上的编译安装过程。源码下载ORB-SLAM2下载:gi...原创 2020-02-21 16:59:02 · 2223 阅读 · 0 评论 -
图优化和g2o
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-97.html我看到高博的好多例子都用到g2o,因此我找了一些博客来学习g2o和图优化的基本知识,这篇博客就是一个简单的总结。图优化 SLAM的核心是根据已有的观测数据,计算机器人的运动轨迹和地图。假设在时刻 k,机器人在位置 xk...原创 2020-02-21 16:56:32 · 1160 阅读 · 0 评论 -
详解ICP算法
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-96.htmlICP即迭代最近点(Iterative Closest Point,ICP),用于求解一组匹配好的3D点之间的运动。3D点可由RGB-D或双目相机得来,然后将关键点进行匹配。ICP的求解分为两种方式:利用线性代数的求解(SVD),以及利...原创 2020-02-21 16:54:55 · 6530 阅读 · 1 评论 -
PnP算法
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-95.htmlPnP(Perspective-n-Point)是求解 3D 到 2D 点对运动的方法。如果两张图像中其中一张特征点的 3D 位置已知,那么最少只需 3 个点对就可以使用PnP估计相机运动。特征点的 3D 位置可以由三角化或者 RGB-D ...原创 2020-02-21 16:53:44 · 13743 阅读 · 1 评论 -
对极几何和三角测量
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-94.html在多种应用场景中,我们需要根据运动中相邻的两张图像恢复相机的运动,并计算空间点的深度信息,这个问题可以由对极约束和三角测量解决。对极约束对极约束可以根据两张图像的匹配的一组特征点计算出相机从第一张图像到第二张的运动。关于...原创 2020-02-21 16:52:26 · 3543 阅读 · 0 评论 -
LK光流跟踪
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-89.html光流(Optical Flow)是一种描述像素随时间在图像之间运动的方法。随着时间的流逝,同一个像素会在图像中运动,我们希望追踪它的运动过程。其中,计算部分像素运动的称为稀疏光流,计算所有像素的称为稠密光流。稀疏光流以Lucas Kanade...原创 2020-02-21 16:50:29 · 3315 阅读 · 0 评论 -
ORB特征匹配
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-88.html接<SLAM基本概念>ORB特征由关键点和描述子两部分组成,关键点称为“Oriented FAST”,是一种改进的FAST 角点。它的描述子称为BRIEF(Binary Robust Independent Elem...原创 2020-02-21 16:49:01 · 5390 阅读 · 0 评论 -
非线性最小二乘求解方法详解
个人博客:http://www.chenjianqu.com/原文链接:http://www.chenjianqu.com/show-85.html最小二乘法最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。数...原创 2020-02-21 16:46:57 · 15513 阅读 · 0 评论