为了在每帧点云中滤除噪声点,选择了半径滤波器,也用高斯滤波器测试过,但是没有半径效果好,这里记录下在 octomap_server 中增加半径滤波器的步骤,并在 launch 中配置滤波器参数. 一.半径滤波器基本原理 放一张汇报用的 PPT 截图: 原理很简单就是判断一个点云周围(半径 R)有没有足够多(K)的邻居点,如果没有就删除这个点,否则就保留. 二.基本用法 我一般学习技术喜欢到官网看最原始的教程:Removing outliers using a Conditional or Rad…
构建语义地图时,最开始用的是 octomap_server,后面换成了 semantic_slam: octomap_generator,不过还是整理下之前的学习笔记. 一.增量构建八叉树地图步骤 为了能够让 octomap_server 建图包实现增量式的地图构建,需要以下 2 个步骤: 1.1 配置 launch 启动参数 这 3 个参数是建图必备: 地图分辨率 resolution:用来初始化地图对象 全局坐标系 frame_id:构建的全局地图的坐标系 输入点云话题 /cloud_in:…
项目要用到八叉树库 Octomap 来构建地图,这里记录下安装.可视化,并启用带颜色的 Octomap 的过程. 一.Apt 安装 Octomap 库 如果你不需要修改源码,可以直接安装编译好的 octomap 库,记得把 ROS 版本「kinetic」替换成你用的: sudo apt-get install ros-kinetic-octomap* 上面这一行命令等价于安装以下的 octomap 组件: sudo apt-get install ros-kinetic-octomap ros-…
V-rep中显示激光扫描点  在VREP自带的场景中找到practicalPathPlanningDemo.ttt文件,删除场景中多余的物体只保留静态的地图.然后在Model browser→components→sensors中找到SICK TiM310 Fast激光雷达,拖入场景中: 打开脚本参数修改器,可以修改雷达扫描范围(默认为270°),是否显示雷达扫描线(true),以及最大探测距离(默认为4m)这三个参数.地图大小为5m×5m,我们将雷达最大探测距离改为2m 将激光雷达放到地图中任…
Slam即时定位与地图构建 技术解释 同步定位与地图构建(SLAM或Simultaneous localization and mapping)是一种概念:希望机器人从未知环境的未知地点出发,在运动过程中通过重复观测到的地图特征(比如,墙角,柱子等)定位自身位置和姿态,再根据自身位置增量式的构建地图,从而达到同时定位和地图构建的目的. 使用情景 一个由德国达姆施塔特理工大学研发的机器人正使用激光成像探测与测距技术来给迷宫绘图. 上图的机器人描绘出的地图. 操作性定义 这里说的地图,是用来在环境中…
SLAM 即时定位与地图构建SLAM(Simultaneous Localization and Mapping) 参考链接: 视觉SLAM漫谈,http://www.cnblogs.com/gaoxiang12/p/3695962.html…
一.局部地图构建简介 为什么叫“局部”地图构建,我的理解是这个线程的主要任务是像地图中插入关键帧(包括地图点等信息),以及需要进行LocalBA优化一个局部地图,这是相对于回环检测时进行的全局优化来说的,所以称为局部地图构建.而局部地图构建的主要任务就是上面说的,等待跟踪过程判断是否应该插入一个新的关键帧,并把关键帧插入到地图中,并对局部地图(跟踪过程中有一个局部地图跟踪)进行BA优化.具体细节包括三角化3D点,3D点的融合匹配,关键帧插入等. 二.局部地图构建逻辑分析 根据跟踪过程中的关键帧判…
构建package catkin_make 可以理解为一个集成了CMake和make的命令行工具 通常的cmake构建如下 # In a CMake project $ mkdir build $ cd build $ cmake .. $ make $ make install # (optionally) catkin_make使用如下 # In a catkin workspace $ catkin_make --source my_src $ catkin_make install --…
本文使用的方法不是从内部修改ORBSLAM2源码以获取稠密点云,而是先从ZED2 sdk获取以摄像头坐标系为描述的三维点云/作为点云地图的一个子集,然后融合IMU与ORB_SLAM2进行实时定位,通过点云滤波,点云融合建图.   以上是在室内实验的demo,由于是纯双目,没有深度传感器,在白墙和地板上有些失真,下次等移动平台到了我会去室外实验.   一.获取实时坐标和点云图   使用ORBSLAM2获取当前姿态,同时ZED2 利用其IMU数据对速度加速度积分得出另一个姿态,考虑到ORBSLAM2…
高德地图 Android SDK 允许用户将添加的线.面等覆盖物设置在地图底图文字的上方或下方. 具体实现是使 用 AMap 类的 setMapTextZIndex() 方法来设置地图底图文字的z轴指数. 地图底图文字和覆盖物的z轴指数默认为0,此时地图底图文字在覆盖物的下方, 如果使用 aMap.setMapTextZIndex(2) 可以将地图底图文字设置在添加的覆盖物之上.…