![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
VSLAM
文章平均质量分 73
勇往直前的流浪刀客
一曰:真诚待人;二曰:认真踏实
展开
-
Visual SLAM梳理
最近在学习视觉slam,这里作为阅读笔记记录和总结一下。这里关注的主要是基于视觉的Visual SLAM或Visual Odometry,也包括一部分图像和IMU融合的Visual-Inertial Odometry相关算法。注:下文中部分链接指向Google Scholar及Youtube,有些用户可能无法访问。一、概述Simultaneous Localization原创 2017-05-27 20:40:36 · 7551 阅读 · 2 评论 -
SLAM的UKF、EFK、PF 的基本原理
任何传感器,激光也好,视觉也好,整个SLAM系统也好,要解决的问题只有一个:如何通过数据来估计自身状态。每种传感器的测量模型不一样,它们的精度也不一样。换句话说,状态估计问题,也就是“如何最好地使用传感器数据”。可以说,SLAM是状态估计的一个特例。=====================离散时间系统的状态估计======================记机器人在各时刻的状态为,其中是离散时间下...转载 2018-03-18 10:18:46 · 1225 阅读 · 0 评论 -
PL-SLAM: 基于点和线条的实时单目slam
大家好,对于VSLAM研究人员当然要对最新的VSLAM的研究做下总结了,这次为大家介绍PL-SLAM。上图就是PL-SLAM的框架,是不是感觉和ORBSLAM很像呢?比较典型打特征法+直接法的结合的关键帧的Vslam跟ORBSLAM有三个主要线程:跟踪 、构图、回环检测一、Tracking(估计相机的位置,根据约束条件,产生新的关键帧)特征提取方面:ORB、lsd的线条像素特征(其实我们一直关系的...转载 2018-03-18 10:19:37 · 1478 阅读 · 0 评论 -
视觉SLAM之词袋(bag of words) 模型浅析
在目前实际的视觉SLAM中,闭环检测多采用DBOW2模型https://github.com/dorian3d/DBoW2,而bag of words 又运用了数据挖掘的K-means聚类算法,笔者只通过bag of words 模型用在图像处理中进行形象讲解,并没有涉及太多对SLAM的闭环检测的应用。1.Bag-of-words模型简介Bag-of-words模型是信息检索领域常用的文档表示方法...转载 2018-04-09 09:56:46 · 2461 阅读 · 0 评论 -
视觉SLAM之K-means聚类算法浅析
聚类概念:聚类:简单地说就是把相似的东西分到一组。同 Classification (分类)不同,分类应属于监督学习。而在聚类的时候,我们并不关心某一类是什么,我们需要实现的目标只是把相似的东西聚到一起,因此,一个聚类算法通常只需要知道如何计算相似 度就可以开始工作了。聚类不需要使用训练数据进行学习,应属于无监督学习。我们经常接触到的聚类分析,一般都是数值聚类,一种常见的做法是同时提取 N 种特征...转载 2018-04-09 09:58:15 · 838 阅读 · 0 评论 -
ORB特征提取与匹配
ORB特征是目前最优秀的特征提取与匹配算法之一,下面具体讲解一下: 特征点的检测图像的特征点可以简单的理解为图像中比较显著显著的点,如轮廓点,较暗区域中的亮点,较亮区域中的暗点等。ORB采用FAST(features from accelerated segment test)算法来检测特征点。这个定义基于特征点周围的图像灰度值,检测候选特征点周围一圈的像素值,如果候选点周围领域内有足够多的像素点...转载 2018-04-09 10:07:37 · 5496 阅读 · 0 评论 -
K近邻算法-KNN浅析
何谓K近邻算法,即K-Nearest Neighbor algorithm,简称KNN算法,单从名字来猜想,可以简单粗暴的认为是:K个最近的邻居,当K=1时,算法便成了最近邻算法,即寻找最近的那个邻居。为何要找邻居?打个比方来说,假设你来到一个陌生的村庄,现在你要找到与你有着相似特征的人群融入他们,所谓入伙。用官方的话来说,所谓K近邻算法,即是给定一个训练数据集,对新的输入实例,在训练数据集中找到...转载 2018-04-09 10:08:31 · 524 阅读 · 0 评论 -
k-d tree浅析
先以一个简单直观的实例来介绍k-d树算法。假设有6个二维数据点{(2,3),(5,4),(9,6),(4,7),(8,1),(7,2)},数据点位于二维空间内(如图2中黑点所示)。k-d树算法就是要确定图2中这些分割空间的分割线(多维空间即为分割平面,一般为超平面)。下面就要通过一步步展示k-d树是如何确定这些分割线的。 k-d树算法可以分为两大部分,一部分是有关k-d树本身这种数据结构建立的算...转载 2018-04-09 10:09:15 · 1063 阅读 · 0 评论 -
K-Means ++ 算法浅析
Kmeans算法的缺陷• 聚类中心的个数K 需要事先给定,但在实际中这个 K 值的选定是非常难以估计的,很多时候,事先并不知道给定的数据集应该分成多少个类别才最合适• Kmeans需要人为地确定初始聚类中心,不同的初始聚类中心可能导致完全不同的聚类结果。(可以使用Kmeans++算法来解决)K-Means ++ 算法k-means++算法选择初始seeds的基本思想就是:初始的聚类中心之间的相互距...转载 2018-04-09 10:10:10 · 282 阅读 · 0 评论 -
视觉slam闭环检测之-视觉词袋构建-DBoW2
需要准备的知识点:http://www.cnblogs.com/zjiaxing/p/5616653.html http://www.cnblogs.com/zjiaxing/p/5616664.html http://www.cnblogs.com/zjiaxing/p/5616670.html http://www.cnblogs.com/z...转载 2018-04-09 10:12:02 · 511 阅读 · 0 评论 -
vslam
目录 [隐藏] 1 SLAM 介绍1.1 什么是SLAM1.2 SLAM与视觉里程计(Visual Odometry)1.3 SLAM和SfM2 主流开源SLAM方案2.1 视觉传感器2.2 激光传感器2.3 视觉(Visual)与IMU融合(VI)2.4 后端优...转载 2018-03-27 14:11:15 · 5651 阅读 · 0 评论 -
vslam progress
并行追踪与制图(Parallel Tracking and Mapping)简称PTAM,于2007年由英国牛津大学主动视觉实验室的Georg Klein和David Murray提出。PTAM在机器导航,机器探索,人机互动,三维重建等方面都有应用。在这之前已经有人尝试用slam(simultaneous localization and mapping)算法来进行机器探索。PTAM系统主要是通过...转载 2018-03-27 14:13:38 · 202 阅读 · 0 评论 -
阅读《A Survey of Monocular Simultaneous Localization and Mapping》
一、大体总结首先从AR(Augmented reality 增强现实)切入,讲了SLAM的重要性以及视觉SLAM可以带来的好处,然后以此展开总体的概括了SLAM的发展情况,也分析和介绍了各不同SLAM的性能区别,对各个特性进行了对比和分析,最后总体讲了现有SLAM技术的不足以及对SLAM日后发展的憧憬。二、知识获取1.同时定位与地图构建(simult...转载 2018-03-27 14:17:28 · 3976 阅读 · 0 评论 -
视觉SLAM之RANSAC算法用于消除图像误匹配的原理
在基于特征点的视觉SLAM中,通常情况下,在特征匹配过程中往往会存在误匹配信息,使得计算获取的位姿精度低,易产生位姿估计失败的问题,因此,剔除这些错配点有很大的必要性。常会用到RANSAC算法进行消除两两匹配图像的误匹配点,如果只停留在应用的层面上很简单,直接调用opencv函数就行,看到效果时,感觉好神奇,到底怎么实现的啊,以前一直也没弄太明白,与图像结合的博客也比较少,在查阅了一些资料后,笔者...转载 2018-04-15 09:56:42 · 10007 阅读 · 9 评论 -
特征点匹配——使用基础矩阵、单应性矩阵的RANSAC算法去除误匹配点对
不管是我在之前的博文中提到的SIFT、ORB等算法,其实真正匹配的结果都不会特别好,一旦视角上的变化比较大或者出现之前图像中没有出现的区域,就很容易产生误匹配。但是在实际应用中这些误匹配的点并没有对最终的匹配结果造成很大的影响,这是因为一般在进行匹配以后,都进行了去除误匹配点对的操作,这篇博文主要介绍的就是一种比较有名的RANSAC算法。 那么,首先来看一下这个算法。一、RANSAC算法介绍RAN...转载 2018-04-15 09:58:32 · 3899 阅读 · 1 评论 -
RANSAC算法及其代码解析
RANSAC算法简介随机抽样一致性算法(Random sample consensus,RANSAC)是一种使用迭代的方法,从受噪声污染的数据集中估计数学模型参数的算法,与最小二乘法所起作用相同,各自的适用情况不同。RANSAC算法假设数据集中存在局内点(inlier)和局外点(outlier),并且假设只有判定的局内点才可以用来计算模型,局外点不应该对模型参数的求解产生任何影响。该算法是Fisc...转载 2018-04-15 10:34:27 · 3253 阅读 · 0 评论 -
PCL1.8+Ubuntu14.04安装详解
方式一:官网prebuild版本[html] view plain copy sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl sudo apt-get update sudo apt-get install libpcl-all 可能是因为国内的关系,并没有更新 apt-get 成功方式二:安装 prebui...转载 2018-03-27 16:11:33 · 2516 阅读 · 1 评论 -
一些视觉slam方案的简介
MoNoSLAM:https://github.com/hanmekim/SceneLib2以扩展卡尔曼滤波为后端,追踪前端非常稀疏的特征点,以相机的当前状态和所有路标点为状态量,更新其均值和协方差。优点:在2007年,随着计算机性能的提升,以及该系统用稀疏的方式处理图像,使得该方案使得SLAM系统能够在线运行。(之前的SLAM系统是基本不能在线运行的,只能靠机器人携带相机采集的数原创 2018-01-20 15:58:05 · 3048 阅读 · 0 评论 -
The list of vision-based SLAM / Visual Odometry open source projects, libraries, dataset, tools
IndexLibrariesDatasetToolsProjectsLearnMiscellaneousLibrariesBasic vision and trasformation librariesOpenCVEigenSophusROSPointCloudThread-safe queue librariesconcurrentqu原创 2018-01-05 09:24:25 · 406 阅读 · 0 评论 -
ubuntu 14.04 lts+ ros indigo+kinect2 驱动安装
Kinect2相信对这个话题感兴趣的同学, 对Kinect2应该也是很熟悉的吧。 这个设备现在也不贵, 某东上面大概两千左右就能买到, 并且还能配置一个三脚架。 Kinect2的效果, 确实会比1代要好很多, 无论是骨骼点还是图像质量等等。 更详细的介绍, 感兴趣的同学可以自行Google, 在MS官网上面查看。ROS做机器人相关的工作的同学, 同时对该部分也不会陌生吧。 机器人操作系原创 2017-05-09 10:35:37 · 777 阅读 · 0 评论 -
旋转矩阵、DCM、旋转向量、四元数、欧拉角相关
最近学习了一些关于三维空间旋转相关的知识,借此梳理一下备忘。三维空间的旋转(3D Rotation)是一个很神奇的东东:如果对某个刚体在三维空间进行任意次的旋转,只要旋转中心保持不变,无论多少次的旋转都可以用绕三维空间中某一个轴的一次旋转来表示。表示三维空间的旋转有多种互相等价的方式,常见的有旋转矩阵、DCM、旋转向量、四元数、欧拉角等。本篇文章主要梳理一下这些表示方式及相互转原创 2017-05-27 20:45:20 · 11350 阅读 · 0 评论 -
Visual SLAM Introduction In Detail
SLAM概述SLAM一般处理流程包括track和map两部分。所谓的track是用来估计相机的位姿,也叫front-end。而map部分(back-end)则是深度的构建,通过前面的跟踪模块估计得到相机的位姿,采用三角法(triangulation)计算相应特征点的深度,进行当前环境map的重建,重建出的map同时为front-end提供更好的姿态估计,并可以用于例如闭环检测.单目原创 2017-05-25 21:42:00 · 1594 阅读 · 0 评论 -
Ubuntu14.04+ROS indigo+ORB-SLAM2
环境:Ubuntu 14.04 + ROS indigo1.创建ROS的一个工作空间$ mkdir -p ~/orbslam2_catkin_ws/src$ cd ~/orbslam2_catkin_ws/src$ catkin_init_workspace$ cd ..$ catkin_make$ source devel/setup.bash运行以下命令确认你的当前目原创 2017-05-13 14:46:15 · 1590 阅读 · 1 评论 -
ORB-SLAM2安装与运行(非ROS环境下)
这是在没有使用ROS的情况下运行跑的论文:ORB-SLAM2: an Open-Source SLAM System for Monocular,Stereo and RGB-D Cameras提供的源代码。原创 2017-05-13 12:52:50 · 2747 阅读 · 0 评论 -
Ubuntu 14.04 LTS+ ROS indigo+ORB-SLAM1
这两天把论文:ORB-SLAM: a Versatile and Accurate Monocular SLAM System中提供的代码跑了下,论文在此:点击打开链接出于赠人玫瑰,手有余香的理念,现在把运行的详细过程分享下:1. 创建ROS工作空间zhuquan@zhuquan-Precision-5510:~$ mkdir -p ~/orbslam_catkin_ws/src原创 2017-05-12 13:13:16 · 858 阅读 · 0 评论 -
Ubuntu14.04下运行PTAM(Parallel Tracking And Mapping)
1 环境搭建配置:ubuntu14.04.1.1 前期准备First. 更新软件源sudo apt-get update(更新软件列表)sudo apt-get upgrade(更新已安装的软件)Second. 安装build工具sudo apt-get install build-essential cmake pkg-config原创 2017-06-05 11:52:26 · 3436 阅读 · 6 评论 -
SLAM学习资料
1. SLAM和MonoSLAM-cvchina介绍http://blog.csdn.net/peterli_xue/article/details/75423402. 视觉SLAM漫谈 (三): 研究点介绍http://blog.csdn.net/super_mice/article/details/450546273. 本科小白学ROS 和 SLAM(一):杂谈转载 2017-06-10 22:56:28 · 520 阅读 · 0 评论 -
Ubuntu14.04+ROS Indigo+SVO(Semi-direct Visual Odometry)
安装与运行的所有文档:https://github.com/uzh-rpg/rpg_svo/wiki 有两种安装方式:有ros:https://github.com/uzh-rpg/rpg_svo/wiki/Installation:-ROS 没ros:https://github.com/uzh-rpg/rpg_svo/wiki/Installation:-Plain-C原创 2017-06-12 12:34:26 · 2101 阅读 · 2 评论 -
Ubuntu 14.04+ROS Indigo+LSD-SLAM
注:原作者给出的编译安装方式(https://github.com/tum-vision/lsd_slam)如下:$ sudo apt-get install python-rosinstall$ mkdir ~/rosbuild_ws$ cd ~/rosbuild_ws$ rosws init . /opt/ros/indigo$ mkdir package_dir$ rosw原创 2017-06-10 12:20:10 · 2661 阅读 · 1 评论 -
VSLAM分类
SLAM( Simultaneous Localization and Mapping)是指同步定位与地图构建。定位和建图两个问题相互依赖,准确的定位依赖于正确的地图,而构建正确的地图又需要准确的定位,这是一个迭代的过程。 目前的SLAM根据硬件设备的不同主要有两种:1.基于激光雷达的SLAM 基于激光雷达构建场景是古老并且可信的方法,激光雷达也是精确场景使用最多的SLAM传感器。原创 2017-06-12 18:57:11 · 4967 阅读 · 1 评论 -
Ubuntu14.04+DSO(非ROS下)
论文Direct Sparse Odometry(DSO)下载地址请戳DSO的安装DSO依赖项很少,只有Eigen3,pangolin,OpenCV等少数几个大家都已经很熟悉的库,作者的github页面上对安装DSO做了很详细说明,DSO下载以及安装链接。因此,安装DSO极为容易: 1.下载DSO源代码到相应文件路径,比如我的是在/home/zhuquan/DSO_notR原创 2017-06-13 20:45:20 · 976 阅读 · 0 评论 -
配置ROS工作空间catkin+rosbuild
目录概念nodepackageworkspacebuild systemsource setup.bashoverlayoverlay rosbuild_ws->catkin_ws->ROS库overlay catkin_ws->ROS库overlay rosbuild_ws->catkin_wssource setup.bash检查overlay路径R转载 2017-06-15 11:33:50 · 3695 阅读 · 1 评论 -
The Future of Real-Time SLAM and “Deep Learning vs SLAM”
Last month's International Conference of Computer Vision (ICCV) was full of Deep Learning techniques, but before we declare an all-out ConvNet victory, let's see how the other "non-learning" geometr转载 2017-07-10 08:52:35 · 942 阅读 · 0 评论 -
ubuntu 14.04 +Kinect v1+ openNI+ openCV+ Sensorkinect 配置
一、前言先说一下自己机器的运行环境:Ubuntu14.04kinect第一代另外还要注意的是openni、NITE、Sensor这三个包的版本必须匹配才能正常运行,我的版本分别是:OpenNI-Bin-Dev-Linux-x64-v1.5.7.10.tarNITE-Bin-Linux-x64-v1.5.2.23.tarSensorKinect093-Bin-Linux-原创 2017-03-08 10:42:45 · 2385 阅读 · 5 评论 -
移动机器人的同步自定位与地图创建研究进展 (2007年及以前)
自主移动机器人在未知环境下作业时,首先要解决的基本问题就是其自身的定位问题,而定位问题与环境地图的创建又是相辅相成的.本文从相关理论和关键技术等方面,系统地总结了同步自定位和地图创建的研究现状,着重介绍了基于概率论的方法,分析了目前存在的难题,并指出了未来研究的发展方向. 1 SLAM的相关理论与关键技术(Theories and technologies of SLAM )原创 2017-11-08 10:14:02 · 832 阅读 · 0 评论 -
usr/bin/ld: cannot find XXX错误解决方法
转载自:http://blog.csdn.net/passionkk/article/details/46559169通常在软件编译时出现的usr/bin/ld: cannot find -lxxx的错误或者....so undefine xxxx,主要的原因是库文件并没有导入的ld检索目录中。 解决方式: 1. 确认库文件是否存在,比如-l123, 在/usr/lib, /usr...转载 2018-03-28 11:36:24 · 27692 阅读 · 1 评论