![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Autonomous Mobile Robots
文章平均质量分 60
旧人赋荒年
Challenge, Passion, Flexibility
展开
-
生物导航-鸽子
鸽子是大家非常熟悉的一种鸟。它朴实无华,没有漂亮羽毛作为装饰,通常以雪白、浅灰、褐色多见,在这种平淡的外表之下,它竟深藏着惊人的本领和迷人的奥谜。鸽子能穿越蓝天传递信息,速度快,方位准,令人叹为观止,它们是怎样在辽阔的天空中辨别方向,准确的找到目的地的呢?要知道,鸽子有时要飞越几百、几千千米的路程,这期间有数不清的障碍,包括崇山峻岭,大江大河,恶劣的气候变化等,它们是怎样将这许多困难一一克转载 2016-09-29 09:11:58 · 1479 阅读 · 0 评论 -
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 · 3568 阅读 · 3 评论 -
在ROS中开始自主机器人仿真 - 4 让自己的机器人自主导航
在建立好自己的机器人模型后, 我们可以利用turtlebot的ROS库,实现自己机器人的自主导航.Part 4 让自己的机器人自主导航 我们依然采用gmapping进行地图构建,gmapping是一个ros自带的地图构建工具包,采用激光和里程计的数据生成二维地图. 而利用amcl进行已知机器人的定位,amcl全称adaptive Monte Carlo localizati...原创 2017-05-04 11:43:08 · 5639 阅读 · 3 评论 -
在ROS中开始自主机器人仿真 - 0 概述
建立自主机器人是很难的,特别是在刚开始的时候. ROS 仿真有助于帮助我们从宏观上对机器人系统进行把握,帮助我们学习如何可以让机器人学会自己去适应环境. 明白机器人从测量和激光数据采集到转变为电机运动的过程. 机器人如何利用传感器进行感知, 找出好的路径, 应该执行什么样的命令. 这不是一套完整的自主机器人仿真的指导内容,但希望是一个好的开始. 所介绍的是小项目的一部分, 主要集中于如何开始自己...原创 2017-04-12 17:46:36 · 2493 阅读 · 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 · 6141 阅读 · 14 评论 -
在ROS中开始自主机器人仿真 - 2 让turtlebot自主导航
我们已经在gazebo中实现了机器人的仿真,而且能够控制机器人的运动, 查看机器人所感知到的信息, 包括lasercan, 图像信息, 深度信息, 点云, 也包括没有提到的速度信息. 这里,我们建立用ROS navigation stack 导航功能包ROS navigation stack 导航功能包 , 进行机器人地图构建与导航.Part 2.1: 让turtlebot自主导航...原创 2017-04-12 17:51:41 · 7192 阅读 · 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 · 4050 阅读 · 2 评论 -
在ROS中开始自主机器人仿真 - 5 机器人环境探索与避障
目前为止, 我们都旨在构建一个能够自主运行的机器人,这个就研究方向更加合理的名词应该叫自主移动机器人. 推荐一本个人觉得很不错的书 Ronald C. Arkin - 2011- Introduction to Autonomous Mobile Robots. 本文的主要目的是先把框架搭起来, 采用原型模式, 然后在此基础上循环的进行深化, 望能够起到抛砖引玉的作用.Part 5 机...原创 2018-02-23 16:52:00 · 7260 阅读 · 0 评论 -
PointCloud 点云处理方法总结(代码案例版)
PointCloud 点云处理方法总结(代码案例版)本文将自己在点云处理过程中,遇到的一些常用的具体方法进行总结,不介绍点云数据处理的基本概念,主要是处理过程中的代码总结,以及参考案例。1. 点云数据类型转换:ROS msg, PCLPointCloud2, PointXYZ三种数据类型之间的转换。ROS msg to PCLPointCloud2const sensor...原创 2018-09-11 19:26:26 · 23495 阅读 · 0 评论 -
使用eigen库进行空间变换
使用eigen库进行空间变换在三维空间中,常常需要变换当前机器人的位姿计算定义的绝对坐标系和当前机器人所处相对坐标系之间的关系。而主要的变换则是平移和旋转,有时候可能需要尺度变换,那么就可以描述为:Transform<float,3,Affine> T = Translation3f(p) * AngleAxisf(a,axis) * Scaling(s);而Affin...原创 2018-09-11 20:05:35 · 29414 阅读 · 2 评论 -
3D视觉处理导论
3D视觉处理导论随着AR/VR,自动驾驶的快速发展,由于3D视觉比2D觉有更加丰富的信息,3D视觉变得越来越重要。处理3D视觉的神经网络模型包括基于点的模型(Point-Based Models),基于像素的模型(Pixel-Based Models),基于体素的模型(Voxel-Based Models)。3D 格式简介3D图像测量更多的一个维度,深度信息。通常我们使用最多的3D格式是RG...原创 2018-10-03 17:15:04 · 1487 阅读 · 0 评论 -
自主移动机器人概述
从其他地方“借来的”觉得需要多看看的东西,主要工作是整理。1. 移动机器人入门移动机器人技术应用:天上飞的,水里游的,地上跑的,都可以应用移动机器人领域的技术。比如说,1、工业机器人:搬运机器人(AGV);2、商用机器人:无人车、无人机、送餐机器人、导览机器人;3、消费类机器人:扫地机。移动机器人的核心技术紧紧围绕着**“感知”、“决策”、“执行”**这三方面。关键技术一:定位与建...原创 2019-04-26 10:12:22 · 15255 阅读 · 0 评论 -
国内优秀机器人团队
1. 中国科学院沈阳自动化研究所机器人学国家重点实验室2. 哈尔滨工业大学机器人技术与系统国家重点实验室3. 上海交通大学机器人研究所4. 北京航空航天大学机器人研究所5. 北京理工大学智能机器人研究所...原创 2019-07-27 09:55:05 · 1523 阅读 · 0 评论 -
移动机器人的运动学模型:差速传动移动机器人
差速传动移动机器人运动学模型问题如何根据差速传动机器人左右两边轮子的速度,计算出机器人当前的状态。或者想要以一定速度到达某处,需要给出差速两边轮子的速度指令。当然大多数时候,购买的机器人底盘能够直接帮助我们执行发送给机器人差速电机的速度指令,则无需计算从差速度轮子到机器人自身速度的部分。参数vcv_cvc:机器人自身线速度ωc\omega_cωc:机器人自身角速度LLL:轮...原创 2019-09-23 21:00:59 · 4138 阅读 · 0 评论 -
移动机器人的运动学模型:车式移动机器人
车式移动机器人运动学模型问题车式移动机器人更具有普遍意义。参数vvv:机器人自身线速度ω\omegaω:前轮转向角速度u\textbf{u}u:输入,包括vvv,ω\omegaωq˙\dot{\textbf{q}}q˙:机器人在环境中的位姿描述θ\thetaθ:机器人纵向轴与x轴之间的夹脚ϕ\phiϕ:前轮转角LLL:车身长度推导1. q˙\dot{\textbf{...原创 2019-09-23 21:34:58 · 5228 阅读 · 0 评论 -
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 · 15238 阅读 · 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 · 24804 阅读 · 22 评论 -
生物导航-蚂蚁双重导航系统
蚂蚁双重导航系统:计步和”光流”。 光流: 一种类似于人们乘坐汽车时透过窗口估测距离和方向的方法。2016年9月9日,德国乌尔姆大学Matthias Wittlinger 在Science上一篇研究报告称,蚂蚁不但会计步,而且还会在它们穿行于周围环境时用视觉追踪物体的移动,旨在确定它们走过的距离。 实验研究人员用亮黄色颜料“蒙住”蚂蚁的眼睛,以观察它们能否找到返回巢穴的路。无论是否被“蒙住”翻译 2016-09-29 09:32:42 · 955 阅读 · 0 评论 -
运动规划Kinect
Kinect深度值避障是将Kinect划分划分成多个区域,设置高度阈值y、横轴视界阈值x和深度阈值z, 然后对剪切后的点云做平均.3D避障、路径规划sbpl - ROS Wiki 3d_navigation - ROS Wiki2D把Kinect点云降维生成线激光,在平坦地面环境用。gmapping、hector SLAM、cartographer等手段建图,而局部路径规划用动态窗算法或者Time转载 2017-04-07 11:22:56 · 1088 阅读 · 0 评论 -
PCL 安装问题
安装Ubuntu 14.04sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pclsudo apt-get updatesudo apt-get install libpcl-allUbuntu 16.04 sudo apt-get install libpcl-dev pcl-tools在CMakeLists.txt原创 2017-04-07 12:12:27 · 9316 阅读 · 1 评论 -
不同类型的视觉SLAM系统
不同类型的视觉SLAM系统简单的解释稀疏/稠密和直接间接SLAM系统由于仅仅依赖一个标准的摄像头,单目视觉同步定位与地图构建(Monocular Visual SALM)已经变得非常受欢迎.因为在很多消费类电子产品中,都能很容易的找到摄像头,这使得只需要单个标准或普通摄像头就能构建SLAM变得极具吸引力,不管是在研究领域,还是在关键技术的应用领域,比如增强现实.视觉SLAM算法通过摄像头可以从图片中翻译 2017-03-13 09:45:27 · 6828 阅读 · 1 评论 -
Kinect
Kinect 模式Near Mode: What it is (and isn’t) Kinect tutorialsKinect v1&v2 SDK C++原创 2017-04-10 09:53:30 · 1095 阅读 · 0 评论 -
当前主流的vSLAM&RGBD&Laser开源系统
Visual SLAM2014年半稠密直接SLAM系统: LSD-SLAM(Large-Scale Direct Monocular SLAM) 2015年稀疏间接SLAM系统:ORB-SLAM RGBD:2011 KinectFusion 2014 RGBDSLAMv2 2015 ElasticFusion: Dense SLAM Without A Pose GraphElasticFu原创 2017-04-22 11:25:10 · 1029 阅读 · 0 评论 -
g2o 编译问题
无法安装libqglviewer-qt4-dev包在网址 http://ftp.debian.org/debian/pool/main/libq/libqglviewer/, 下载libqglviewer-dev-common_2.3.4-4.2_all.deb, libqglviewer-qt4-2_2.3.4-4.2_amd64.deb, libqglviewer-qt4-dev_2.3.4-4原创 2017-05-22 11:04:18 · 8663 阅读 · 14 评论 -
g2o: 如何使用g2o的例子
g2o的讲解教程已经很多了, 但是g2o官方代码的说明,注释真的是太少了. 本文的目的是说明一下如何使用g2o代码的例子,为自己所用. 希望自己的疑惑能够被记录下来, 也是一次总结.g2o 重要的文献:1.论文 Grisetti, Giorgio, et al. “A tutorial on graph-based SLAM.” IEEE Intelligent Transportation Sy原创 2017-05-25 10:39:00 · 17583 阅读 · 14 评论 -
深度 | ICCV研讨会:实时SLAM的未来以及深度学习与SLAM的比较(附论文和PPT)
选自 Computer Vison Blog作者:Tomasz Malisiewicz机器之心编译参与:吴攀、杜夏德深度学习、计算机视觉和算法正在塑造人工智能的未来。上一届「国际计算机视觉大会(ICCV:International Conference of Computer Vision )」成为了深转载 2017-05-16 11:30:38 · 2213 阅读 · 0 评论 -
视觉SLAM漫谈
视觉SLAM漫谈1. 前言 开始做SLAM(机器人同时定位与建图)研究已经近一年了。从一年级开始对这个方向产生兴趣,到现在为止,也算是对这个领域有了大致的了解。然而越了解,越觉得这个方向难度很大。总体来讲有以下几个原因:入门资料很少。虽然国内也有不少人在做,但这方面现在没有太好的入门教程。《SLAM for dummies》可以算是一篇。中文资料几乎没有。S转载 2017-05-18 09:47:50 · 728 阅读 · 0 评论 -
深入理解图优化与g2o:g2o篇
深入理解图优化与g2o:g2o篇内容提要 讲完了优化的基本知识,我们来看一下g2o的结构。本篇将讨论g2o的代码结构,并带着大家一起写一个简单的双视图bundle adjustment:从两张图像中估计相机运动和特征点位置。你可以把它看成一个基于稀疏特征点的单目VO。g2o的结构 g2o全称是什么?来跟我大声说一遍:General Graph Optimiz转载 2017-05-18 14:38:48 · 1809 阅读 · 0 评论 -
深入理解图优化与g2o:图优化篇
深入理解图优化与g2o:图优化篇前言 本节我们将深入介绍视觉slam中的主流优化方法——图优化(graph-based optimization)。下一节中,介绍一下非常流行的图优化库:g2o。 关于g2o,我13年写过一个文档,然而随着自己理解的加深,越发感觉不满意。本着对读者更负责任的精神,本文给大家重新讲一遍图优化和g2o。除了这篇文档,读者还可以找到一篇关于转载 2017-05-18 14:38:07 · 2377 阅读 · 2 评论 -
深入理解图优化与g2o : 图优化理论与g2o的使用
转自:http://www.cnblogs.com/gaoxiang12/p/3776107.html图优化理论与g2o的使用图优化理论与g2o的使用1 前言以及回顾 各位朋友,自从上一篇《视觉SLAM漫谈》写成以来已经有一段时间了。我收到几位热心读者的邮件。有的希望我介绍一下当前视觉SLAM程序的实用程度,更多的人希望了解一下前文提到的g转载 2017-05-18 22:33:55 · 1515 阅读 · 0 评论 -
机器人与深度学习
2016From Perception to Decision: A Data-driven Approach to End-to-end Motion Planning for Autonomous Ground Robots - Mark Pfeiffer etc. 2016 ETH 室内导航, 从感知到决策端到端的自主机器人运动规划Deep Learning for Laser base原创 2017-04-04 19:03:56 · 2964 阅读 · 0 评论 -
ROS中remap一个topic
一个是利用rosbag节点运行的时候, 将发布的主题进行修改. 另一个则是这roslaunch文件中进行修改. 下面利用两种不同的方式将/image_raw‘映射到/camera/image_raw.1. rosbag remap rosbag play ros.bag /image_raw:=/camera/image_raw2. roslaunch remap<remap from="/ima原创 2017-08-18 15:26:19 · 10315 阅读 · 0 评论 -
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 · 13059 阅读 · 6 评论 -
KITTI数据集测试 - 0 概述
本文主要目的就自己在使用KITTI数据集过程中遇到的问题进行总结,并从实际的角度出发让我们如何尽快的将数据集用到自己的机器人导航算法中进行测试。 一句话:尽快把KITTI数据用起来。从KITTI主页可以发现,KITTI数据集主要包括三个部分,相机和激光数据,calibration文件,groundtruth位置。如何明白三个部分的数据构成和参数意义,将会是我们使用KITTI数据的关键。接下来将从三原创 2017-10-25 10:37:50 · 7957 阅读 · 5 评论