自主移动机器人 (Autonomous Mobile Robots)
本系列主要记录作者所做的一些机器人开发项目,主要关于机器人导航,机器人在Gazebo中基于ROS的仿真,机器人导航的理论知识,机器人导航的算法,所用的传感器硬件等。也会介绍一些最新的论文关于SLAM的论文,经典的SLAM系统,SLAM与深度学习联姻的工作。
旧人赋荒年
Challenge, Passion, Flexibility
展开
-
Google Cartographer ROS源码解析
Google Cartographer ROS overviewCartographer主要可分为两个子系统:local SLAM(frontend or local trajectory builder), 和global SLAM (backend)。Local SLAM构建一系列的submaps,每一个submaps具有局部一致性,可理解为其submaps内部是进行了匹配,但是各个sub...原创 2020-03-06 20:00:49 · 1713 阅读 · 1 评论 -
自主移动机器人概述
从其他地方“借来的”觉得需要多看看的东西,主要工作是整理。1. 移动机器人入门移动机器人技术应用:天上飞的,水里游的,地上跑的,都可以应用移动机器人领域的技术。比如说,1、工业机器人:搬运机器人(AGV);2、商用机器人:无人车、无人机、送餐机器人、导览机器人;3、消费类机器人:扫地机。移动机器人的核心技术紧紧围绕着**“感知”、“决策”、“执行”**这三方面。关键技术一:定位与建...原创 2019-04-26 10:12:22 · 15360 阅读 · 0 评论 -
KITTI数据集测试 - 0 概述
本文主要目的就自己在使用KITTI数据集过程中遇到的问题进行总结,并从实际的角度出发让我们如何尽快的将数据集用到自己的机器人导航算法中进行测试。 一句话:尽快把KITTI数据用起来。从KITTI主页可以发现,KITTI数据集主要包括三个部分,相机和激光数据,calibration文件,groundtruth位置。如何明白三个部分的数据构成和参数意义,将会是我们使用KITTI数据的关键。接下来将从三原创 2017-10-25 10:37:50 · 8020 阅读 · 5 评论 -
KITTI数据集测试 - 1 从KITTI数据到rosbag
将kitti的数据转为rosbag, 仅测试于grayscale数据集,测试过程如下.1. 在KITTI网页下载odometry dataset (grayscale, 22GB), 并解压.2. 指定image路径, 生成的bag名,时间戳路径, 然后运行.python img2bag_kitti_odo.py /your directory/KITTI/dataset/sequences/00/原创 2017-08-18 16:06:58 · 13145 阅读 · 6 评论 -
KITTI数据集测试 - 2 groundtruth 真实地图
在poses目录下,包含00.txt-10.txt 11个序列,每一个文件包换Nx12个表格,N代表帧数。每一行利用3x4转移矩阵代表左边相机系统位姿,转移矩阵将当前帧左边相机系统中的一个点映射到第0帧的坐标系统中。转移矩阵中平移的部分对应当前位置相对于第0帧。groudtruthsequence 00的地面地图如下图所示: 代码下面代码为MATLAB中显示groundtruth,修改filena原创 2017-10-25 14:35:18 · 15405 阅读 · 32 评论 -
KITTI数据集测试 - 3 calib 相机参数
在calib文件中,有sequence 00-21序列,包括calib.txt 和 times.txt文件。 在sequence calib.txt 中,P0: 7.188560000000e+02 0.000000000000e+00 6.071928000000e+02 0.000000000000e+00 0.000000000000e+00 7.188560000000e+02 1.852原创 2017-10-25 11:46:35 · 25269 阅读 · 22 评论 -
KITTI数据集测试 - 4 KITTI数据集创建双目rosbag 及其使用
1. 从KITTI数据集生成stereo rosbagpython img2bag_kitti_StereoBag.py /*/00 img2bag_kitti_StereoBag_seq00.rosbag /*/00/times.txtPython 脚本可以在此处找到 https://gitee.com/taiping.z.git/image2rosbag_KITTIodomet原创 2018-01-23 10:36:18 · 3602 阅读 · 3 评论 -
在ROS中开始自主机器人仿真 - 0 概述
建立自主机器人是很难的,特别是在刚开始的时候. ROS 仿真有助于帮助我们从宏观上对机器人系统进行把握,帮助我们学习如何可以让机器人学会自己去适应环境. 明白机器人从测量和激光数据采集到转变为电机运动的过程. 机器人如何利用传感器进行感知, 找出好的路径, 应该执行什么样的命令. 这不是一套完整的自主机器人仿真的指导内容,但希望是一个好的开始. 所介绍的是小项目的一部分, 主要集中于如何开始自己...原创 2017-04-12 17:46:36 · 2508 阅读 · 0 评论 -
在ROS中开始自主机器人仿真 - 1 让turtlebot跑起来
借助ROS的工具箱让turtlebot在gazebo中运行起来.Part 1.1: 让turtlebot跑起来1. 在gazebo中显示机器人roslaunch turtlebot_gazebo turtlebot_world.launch 默认加载了一个playground 的world文件.2. 用键盘进行控制机器人roslaunch turtle...原创 2017-04-12 17:50:17 · 6178 阅读 · 14 评论 -
在ROS中开始自主机器人仿真 - 2 让turtlebot自主导航
我们已经在gazebo中实现了机器人的仿真,而且能够控制机器人的运动, 查看机器人所感知到的信息, 包括lasercan, 图像信息, 深度信息, 点云, 也包括没有提到的速度信息. 这里,我们建立用ROS navigation stack 导航功能包ROS navigation stack 导航功能包 , 进行机器人地图构建与导航.Part 2.1: 让turtlebot自主导航...原创 2017-04-12 17:51:41 · 7254 阅读 · 11 评论 -
在ROS中开始自主机器人仿真 - 3 建立自己的自主机器人URDF模型
要建立自己的自主机器人,首先,必须要建立自己的机器人模型,URDF(Unified Robot Description Format)模型。Part 3 建立机器人URDF模型机器人URDF模型主要由两个文件组成:.xacro 是主文件,包含URDF项,包括关节,连杆;.gazebo包含gazebo的具体信息以便在gazebo中仿真。 例子请见:How to Build a ...原创 2017-04-15 11:32:11 · 4079 阅读 · 2 评论 -
在ROS中开始自主机器人仿真 - 4 让自己的机器人自主导航
在建立好自己的机器人模型后, 我们可以利用turtlebot的ROS库,实现自己机器人的自主导航.Part 4 让自己的机器人自主导航 我们依然采用gmapping进行地图构建,gmapping是一个ros自带的地图构建工具包,采用激光和里程计的数据生成二维地图. 而利用amcl进行已知机器人的定位,amcl全称adaptive Monte Carlo localizati...原创 2017-05-04 11:43:08 · 5670 阅读 · 3 评论 -
在ROS中开始自主机器人仿真 - 5 机器人环境探索与避障
目前为止, 我们都旨在构建一个能够自主运行的机器人,这个就研究方向更加合理的名词应该叫自主移动机器人. 推荐一本个人觉得很不错的书 Ronald C. Arkin - 2011- Introduction to Autonomous Mobile Robots. 本文的主要目的是先把框架搭起来, 采用原型模式, 然后在此基础上循环的进行深化, 望能够起到抛砖引玉的作用.Part 5 机...原创 2018-02-23 16:52:00 · 7370 阅读 · 0 评论