SLAM技术总结
文章平均质量分 87
状态估计方法与主流SLAM开源架构总结与实践。
Techblog of HaoWANG
来源于生活,低于生活。
NDVC Lab——Nonlinear Dynamics and Vibration Control Laboratory, Hong Kong,China;
JH Lab ---- 季华实验室(广东省先进制造科学与技术实验室);
Major In Robotics: Modelling、Control Technology and Vision.
展开
-
视觉-惯导多传感器融合(2)IMU 原始数据处理
视觉-惯导多传感器融合(1)IMU & ROS_Techblog of HaoWANG-CSDN博客IMU,全称inertial measurement unit,即惯性测量单元,主要用于测量自身位姿,位姿包含位置和姿态。https://haowang.blog.csdn.net/article/details/121249997目录1. 数据采集2. 数据回放3. 滤波去噪4. 绘制曲线1. 数据采集 使用ROS工具‘rosbag’录制...原创 2021-11-18 11:32:29 · 6801 阅读 · 1 评论 -
双目立体视觉(9)PyTorch & ZED 3D人体识别与追踪 (下)
项目地址:GitHub - stereolabs/zed-examples: ZED SDK Example projects官方文档:Stereolabs Docs: API Reference, Tutorials, and IntegrationHow to Use PyTorch with ZED | Stereolabshttps://www.stereolabs.com/docs/pytorch/github项目地址:3D Mask R-CNN using the ZED and ...原创 2021-11-11 14:20:13 · 5203 阅读 · 6 评论 -
视觉-惯导多传感器融合(1)IMU & ROS
IMU,全称inertial measurement unit,即惯性测量单元,主要用于测量自身位姿,位姿包含位置和姿态。原创 2021-11-10 16:04:33 · 7011 阅读 · 4 评论 -
双目立体视觉(9)PyTorch & ZED 3D人体识别与追踪 (上)
项目地址:GitHub - stereolabs/zed-examples: ZED SDK Example projects官方文档:Stereolabs Docs: API Reference, Tutorials, and IntegrationHow to Use PyTorch with ZED | Stereolabshttps://www.stereolabs.com/docs/pytorch/github项目地址:3D Mask R-CNN using the ZED and ...原创 2021-11-09 17:06:51 · 1892 阅读 · 1 评论 -
双目立体视觉(8)传感器数据读取与绘图PlotJuggler
项目地址:GitHub - stereolabs/zed-examples: ZED SDK Example projects官方文档:Stereolabs Docs: API Reference, Tutorials, and IntegrationROS ZED SDK:Getting IMU and Sensor Data in ROS | Stereolabshttps://www.stereolabs.com/docs/ros/sensor-data/1. Getting IM...原创 2021-10-15 09:13:47 · 885 阅读 · 0 评论 -
轨迹评估工具使用总结(二) evo 绘图& ROS map
evo是一款用于视觉里程计和slam问题的轨迹评估工具。核心功能是能够绘制相机的轨迹,或评估估计轨迹与真值的误差。支持多种数据集的轨迹格式(TUM、KITTI、EuRoC MAV、ROS的bag),同时支持这些数据格式之间进行相互转换。在此仅对其基本的绘图功能和ROS map轨迹绘制做简要总结。官方文档地址:https://github.com/MichaelGrupp/evo/wiki...原创 2020-03-31 18:34:37 · 9425 阅读 · 0 评论 -
轨迹评估工具使用总结(一) evo从安装到入门
evo是一款用于视觉里程计和slam问题的轨迹评估工具。核心功能是能够绘制相机的轨迹,或评估估计轨迹与真值的误差。支持多种数据集的轨迹格式(TUM、KITTI、EuRoC MAV、ROS的bag),同时支持这些数据格式之间进行相互转换。在此仅对其基本功能做简要介绍。evo工具github地址:https://github.com/MichaelGrupp/evo/wiki一、安装安...原创 2020-03-31 16:40:32 · 20219 阅读 · 9 评论 -
双目立体视觉(7)Jetson Xavier NX 嵌入式设备部署ZED2
基于英伟达NX开发板进行zed2 双目相机的开发环境配置一、环境配置:系统:Ubuntu18.04+ROSCUDA: 10.2nvcc -V查看CUDA版本:10.2二、 安装SDK因为NVIDIA Jetson Xavier NX 自带CUDA 10.2 版本,所以此处便不再安装CUDA,如果你的系统中没有安装CUDA,请务必自行安装。下载zed2 sdk官方地址:https://www.stereolabs.com/developers/releas...原创 2021-08-03 08:59:51 · 1325 阅读 · 0 评论 -
双目立体视觉(6)- ZED2双目视觉Examples for Beginner (Cpp/Liunx) - 下篇
项目地址:https://github.com/stereolabs/zed-examples官方文档:https://www.stereolabs.com/docs/目录Tutorial 4: Positional tracking with the ZEDPrerequisitesBuild the programCode overviewCreate a cameraEnable positional trackingCapture pose data...原创 2021-05-31 13:11:37 · 1169 阅读 · 0 评论 -
双目立体视觉(5)- ZED2双目视觉Examples for Beginner (Cpp/Liunx) - 中篇
Tutorial 1: Hello ZEDThis tutorial simply shows how to configure and open the ZED,then print its serial number and then close the camera.This is the most basic step and a good start for using the ZED SDK.Getting startedFirst, download the latest ve..原创 2021-05-31 12:22:31 · 974 阅读 · 0 评论 -
双目立体视觉(5)- ZED2双目视觉Examples for Beginner (Cpp/Liunx) - 上篇
项目地址:https://github.com/stereolabs/zed-examples官方文档:Stereolabs Docs: API Reference, Tutorials, and IntegrationGetting Started with ROS and ZED | Stereolabshttps://www.stereolabs.com/docs/ros/官方ZED ROS教程地址Getting Started with ROS and ZEDTheZED...原创 2021-10-13 10:39:05 · 1096 阅读 · 1 评论 -
双目立体视觉(4)- ZED2 ROS 双目视觉开发理论与实践 2
ROS - ZED NodeTo start a ZED ROS node you can use the following commands in a shell console:ZED:$ roslaunch zed_wrapper zed.launchZED Mini:$ roslaunch zed_wrapper zedm.launchZED 2:$ roslaunch zed_wrapper zed2.launchZED 2i:$ roslaunch z原创 2021-10-13 11:30:24 · 2099 阅读 · 1 评论 -
双目立体视觉(4)- ZED2双目视觉开发理论与实践 with examples 0.1 object detection
国际惯例:Srchttps://github.com/stereolabs/zed-examples查看本人系列文章了解ZED2 SDK in Linux build(CUDA 10.0 used):https://blog.csdn.net/hhaowang/article/details/115401380?spm=1001.2014.3001.5501ZED2官方文档:https://www.stereolabs.com/docs/------...原创 2021-04-10 09:32:06 · 1613 阅读 · 4 评论 -
双目立体视觉(3)- ZED2 & ROS Melodic 发布RGB图像及深度信息
ZED2双目深度相机ROS功能包编译、调试及使用原创 2021-04-10 09:09:02 · 3984 阅读 · 21 评论 -
双目立体视觉(2)- ZED2 SDK配置 Ubuntu18.04 + ROS melodic
ZED2 SDK 官方网站:https://www.stereolabs.com/developers/release/3.1/1. 安装Ubuntu18.04+ROSmelodic请参考本人此文章安装ROS:一站式环境配置:Ubuntu18.04LTS +ROS+OpenCVhttps://haowang.blog.csdn.net/article/details/1104674492. 安装CUDA下载链接:https://developer.nvidia.com/cud...原创 2021-04-02 18:15:24 · 4547 阅读 · 23 评论 -
双目立体视觉(1)- ZED2双目相机介绍
ZED2 SDK 官方网站:https://www.stereolabs.com/developers/release/3.1/参考教程:https://blog.csdn.net/weixin_44401286/article/details/1092038901、ZED2功能介绍:2、 性能参数3、 ZED2 SDK原创 2021-04-02 12:32:31 · 11347 阅读 · 4 评论 -
Camera-IMU标定工具Kalibr的编译【源码编译】
科学上网github地址:https://github.com/ethz-asl/kalibr1.安装Kalibr 提供两种使用方式。第一种为CDE下直接使用,作者将所需的库文件打包好,省去了配置dependency的步骤,可以直接从https://github.com/ethz-asl/kalibr/wiki/downloads下载, 注意需要科学浏览。下载之后直接用...原创 2020-04-03 13:17:14 · 1343 阅读 · 3 评论 -
激光SLAM技术总结(1)激光SLAM对比视觉V-SLAM
SLAM(同步定位与地图构建),是指运动物体根据传感器的信息,一边计算自身位置,一边构建环境地图的过程,解决机器人等在未知环境下运动时的定位与地图构建问题。目前,SLAM的主要应用于机器人、无人机、无人驾驶、AR、VR等领域。其用途包括传感器自身的定位,以及后续的路径规划、运动性能、场景理解。原创 2021-05-24 09:59:45 · 3918 阅读 · 0 评论 -
激光SLAM技术总结(2)激光SLAM开源架构算法总结
好久没有更新SLAM系列的文章了,由于近期项目涉及激光SLAM和多传感器融合技术,故更新。基于激光雷达的同时定位与地图构建技术(simultaneous localization and mapping, SLAM)以其准确测量障碍点的角度与距离、 无须预先布置场景、可融合多传感器、 在光线较差环境工作、 能够生成便于导航的环境地图等优势,成为目前定位方案中不可或缺的新技术。原创 2021-05-24 09:50:59 · 2529 阅读 · 0 评论 -
激光SLAM技术总结(3)3D激光SLAM算法原理
目录1. 3D激光SLAM简介2. 3D激光雷达SLAM3. 高精度V-LOAM方案4 发展趋势1. 3D激光SLAM简介在 3D 激光 SLAM 领域中, 由 Zhang J 等人提出的LOAM 方案,利用 3D 激光雷达采集数据, 进行基于特征点的扫描匹配, 利用非线性优化方法进行运动估计, 激光里程计的输出与地图进行匹配, 包括直线匹配和平面匹配, 无回环检测模块,点面特征还不够可靠。2. 3D激光雷达SLAM3. 高精度V-LO..原创 2021-05-26 14:24:54 · 10760 阅读 · 0 评论 -
激光SLAM技术总结(4)V-LOAM算法测试( KITTI 数据集)上
The Point Cloud Library (PCL) is a standalone, large scale, open project for 2D/3D image and point cloud processing. PCL is released under the terms of theBSD license, and thus free for commercial and research use.Whether you’ve just discovered PCL or y原创 2021-05-26 14:26:19 · 891 阅读 · 0 评论 -
凸优化与非线性规划基础(4)-- Semi-Definite Programming SDP
目录1. 简介2. SDP与QP、LP关系1. 简介2. SDP与QP、LP关系原创 2020-03-02 15:32:08 · 965 阅读 · 0 评论 -
凸优化与非线性优化基础(3)-- 二次规划Quadratic Programming
目录1. 定义2. 理解QP1. 定义二次规划(Quadratic programming),在运筹学当中,是一种特殊类型的最佳化问题。2. 理解QP原创 2020-03-02 15:21:58 · 1514 阅读 · 0 评论 -
凸优化与非线性规划基础(2)凸优化标准问题和线性规划Linear Programming简介
1. 凸优化问题分类凸优化的标准问题有四类:Linear Programming(LP) Quadratic Programming(QP) Semi-Definite Programming(SDP) Cone Programming(CP)而这四类的标准问题具有包含与被包含的关系,如下图所示:所以可以这么说:LP是QP的一种特殊情况,QP又是SDP的一种特殊情况,SDP...原创 2020-03-02 11:10:22 · 1714 阅读 · 0 评论 -
凸优化与非线性规划基础(1)-- 基本概念
本文主要参考卡耐基梅隆大学(CMU)的Dr. Ryan Tibshirani教授2017年在Convex Optimization(Course 10-725/36-725)课上(课程网站链接:Convex Optimization)的Lecture Notes。以及参考了现任职牛津大学的Dr. Paul Goulart,以前在ETH任教时Convex Optimization课的Lectur...原创 2020-02-09 11:06:26 · 747 阅读 · 0 评论 -
SLAM专题(0)-- 数字图像 特征点及其描述子
本篇文章先对SIFT和HOG作一综述,并比较二者优缺点,之后,将SIFT和HOG同神经网络特征提取做一对比,浅谈对上述问题的看法。如果能写得快一些,再简单介绍其他几种传统的特征提取的方法——SURF、ORB、LBP、HAAR等等。目录[1] SIFT(尺度不变特征变换)1.1 SIFT特征提取的实质1.2 SIFT特征提取的方法1.3 SIFT特征提取的优点1.4 SIFT...原创 2019-09-29 18:56:44 · 2245 阅读 · 0 评论 -
SLAM 专题(1) -- SLAM架构及软硬件介绍
最近几年,随着以扫地机器人为代表智能机器人技术的普及,以及自动驾驶、AR等技术的爆发,作为核心技术之一的SLAM技术逐渐受到许多研究者的关注。目录什么是SLAM?SLAM 传感器1. 激光雷达2. 视觉传感器总结什么是SLAM?SLAM(Simultaneous Localization and Mapping),中文译作同时定位与地图创建。外行乍一听...原创 2019-10-03 10:59:42 · 4810 阅读 · 1 评论 -
SLAM 专题(2)--vSLAM技术实现机器人在不同场景下的精准导航、避障
本次学习和总结内容主要包括以下四个方面:1、vSLAM发展历程2、vSLAM技术原理及不同算法实现3、vSLAM在不同场景下的应用挑战与解决办法4、vSLAM在机器人实时导航避障中的应用实践1. vSLAM 的发展历程vSLAM的发展历程也可以说是视觉传感器的进化史,两者是相互依赖的。最早诞生的是单目相机,于是有了单目的vSLAM算法,XBox...原创 2020-01-04 12:18:18 · 6070 阅读 · 0 评论 -
SLAM专题(3)- 关键方法与技术简介
最近在做基于激光信息的机器人行人跟踪发现如果单独利用激光信息很难完成机器人对行人的识别、跟踪等功能,因此考虑与视觉融合的方法,这样便可以充分利用激光雷达提供的精确位置信息及视觉提供的丰富纹理、颜色等场景信息。以下是最近调研视觉SLAM中的实现方法的总结,包括三方面内容:姿态计算、闭环检测、BA优化。1. 姿态计算一、通过提取图像的特征描述子,如ORB、SURF和SIFT等特征描述子,然后通...原创 2019-10-03 11:07:51 · 830 阅读 · 0 评论 -
SLAM专题 (4)-- SLAM方法与技术架构
目录VSLAM技术架构1 传感器数据2 前端3 后端4 回环检测5 建立地图总结前几篇文章对SLAM有了个简单的认识,我们知道SLAM可以一边建图一边定位,还可以用建立好的地图进行导航。有同学问现在手机上的百度/高德/腾讯等地图类App不就可以做到吗,为什么还需要SLAM?这里解释一下:目前地图类App在室外定位、导航方面确实做的很不错,而且衍生出很...原创 2019-10-11 10:57:12 · 2012 阅读 · 0 评论 -
SLAM专题(5) -- 变换矩阵、旋转矩阵、欧拉角与四元数
目录坐标变换基础知识外积欧氏变换旋转矩阵旋转向量欧拉角四元数坐标变换基础知识外积外积大小为 ,可以表示两个向量张成四边形的有向面积,引入符号,定义a^表示为一个反对称矩阵,这样就把向量的外积变换成了矩阵和向量的乘法。同时外积可以表示向量的旋转,在右手法则下,用右手的四个指头从a转到 b,其大拇指所指向的方向就是旋转向量的方向,旋转向量的大小为 ...原创 2019-10-28 14:32:31 · 3166 阅读 · 1 评论 -
SLAM专题(6)-- 非线性优化
目录非线性最小二乘问题(1)一阶和二阶梯度法(2)高斯牛顿法(3)列文伯格-马夸尔特方法(Levenberg-Marquadt法)非线性优化小结:实践:1.Ceres库(谷歌)简介ceres曲线拟合实例代码结果2.g20库(基于图优化)简介g20步骤:总结:非线性最小二乘问题因为cost function f(Xn)非线性non...原创 2019-11-10 12:48:51 · 1222 阅读 · 0 评论 -
SLAM专题(7)-- 数学上常用的‘距离’
References:[1]https://blog.csdn.net/Kevin_cc98/article/details/73742037[2]马氏距离及其几何解释http://www.weixinnu.com/tag/article/1082683923[3]欧氏距离和余弦相似度的区别是什么?https://www.zhihu.com/que...原创 2019-11-10 12:54:13 · 309 阅读 · 0 评论 -
SLAM专题(8)卡尔曼滤波和扩展卡尔曼滤波 原理与应用
前言: 卡尔曼滤波存在着一个非常大的局限性——它仅能对线性的处理模型和测量模型进行精确的估计,在非线性的场景中并不能达到最优的估计效果。 所以之前为了保证我们的处理模型是线性的,我们上一节中使用了恒定速度模型,然后将估计目标的加减速用处理噪声来表示,这一模型用来估算行人的状态其实已经足够了 但是在现实的驾驶环境中,我们不仅要估计行人,我们除了估计行人状态以外,我们还...原创 2019-11-10 13:09:37 · 4492 阅读 · 0 评论 -
SLAM专题(9)-- 图像ORB特征提取与匹配
#include <iostream>#include <opencv2/core/core.hpp>#include <opencv2/features2d/features2d.hpp>#include <opencv2/highgui/highgui.hpp>using namespace std;using namespace ...原创 2019-11-11 21:33:44 · 696 阅读 · 0 评论 -
SLAM专题(10)- 最小化重投影误差与Bundle Adjustment (BA)
在SFM(structure from motion)的计算中BA(Bundle Adjustment)作为最后一步优化具有很重要的作用,在近几年兴起的基于图的SLAM(simultaneous localization and mapping)算法里面使用了图优化替代了原来的滤波器,这里所谓的图优化其实也是指BA。其实很多经典的文献对于BA都有深深浅浅的介绍,如果想对BA的全过程做一个全面...原创 2020-02-18 16:28:02 · 6542 阅读 · 2 评论 -
SLAM专题(11)-- G2O图优化从入门到放弃(一)
目录1. Introduction1.1 什么是优化?1.2 什么是图优化?1.3 图优化理论(公式推导)1.4 什么是G2O?1.5图优化与g2o流程小结2. G2O安装指南2.1安装其他依赖库2.2克隆、下载源代码2.3 cmake、make工程2.4 测试g2o3. 小结1. Introduction本节我们将深入研...原创 2020-02-06 20:19:14 · 1402 阅读 · 0 评论