LSD-SLAM深入学习(1)-基本介绍与ros下的安装
前言
借鉴来自RGB-D数据处理的两种方法-基于特征与基于整体的,同样可以考虑整个图片的匹配,而不是只考虑特征点的……
一般这种稠密的方法需要很大的计算量,DTAM: Dense tracking and mapping in real-time 提出了利用GPU来加速运算的方法,Semi-dense Visual Odometry for a Monocular Camera通过半稠密的滤波有效地减少了运算时间,甚至在智能手机上实时实现了这个算法Semi-dense visual odometry for AR on a smartphone
个人理解错误的地方还请不吝赐教,转载请标明出处,内容如有改动更新,请看原博:http://www.cnblogs.com/hitcm/
如有任何问题,feel free to contact me at robotsming@gmail.com
主要介绍
主要参考一下几篇文章,都是来自tum的。以后算法与代码介绍都是基于这几篇文章的,建议仔细研究,必定受益匪浅。
2013 Semi-dense Visual Odometry for a Monocular Camera
2014 Semi-dense visual odometry for AR on a smartphone
2014 LSD-SLAM: Large-Scale Direct Monocular SLAM
在以上几篇文章的基础之上,有了完整的lsd-slam算法。
算法的主页如下
https://github.com/tum-vision/lsd_slam
http://vision.in.tum.de/research/vslam/lsdslam?redirect=1
ros下的安装
博主的编程环境是Ubuntu14.04+Ros Indigo,为了方便记录,采用的是虚拟机环境,可能有点卡。关于ROS的基础知识,请自行学习,在此不再赘述。
首先安装依赖项
sudo apt-get install ros-indigo-libg2o ros-indigo-cv-bridge liblapack-dev libblas-dev freeglut3-dev libqglviewer-dev libsuitesparse-dev libx11-dev
然后git下面的内容
git clone https://github.com/tum-vision/lsd_slam.git lsd_slam
最后是rosmake
rosmake lsd_slam
运行lsd-slam
一个来自官方的范例,使用的dataset如下,400+M
http://vmcremers8.informatik.tu-muenchen.de/lsd/LSD_room.bag.zip
解压之
然后运行下面的3个命令,即可看到效果
rosrun lsd_slam_viewer viewer
rosrun lsd_slam_core live_slam image:=/image_raw camera_info:=/camera_info
rosbag play ./LSD_room.bag
另外可以网上另一位兄弟的文章,链接如下
http://www.bubuko.com/infodetail-1010849.html
http://www.mamicode.com/info-detail-957983.html
LSD-SLAM深入学习(1)-基本介绍与ros下的安装的更多相关文章
- 【数据库】4.0 MySQL入门学习(四)——linux系统环境下MySQL安装
1.0 我的操作系统是CentOS Linux release 7.6.1810 (Core) 系统详细信息如下: Linux version 3.10.0-957.1.3.el7.x86_64 ( ...
- 【数据库】3.0 MySQL入门学习(三)——Windows系统环境下MySQL安装
1.0 我的操作系统是window10 专业版 64位.,不过至少windows7以上系统都是一样的. 关于MySQL如何下载,请参考博文: [数据库]2.0 如何获得MySQL以及MySQL安装 h ...
- [学习OpenCV攻略][002][Ubuntu下OpenCV安装]
配置环境 操作系统 Ubuntu 12.04 OpenCV版本 opencv-1.0.0 学习书籍 <学习OpenCV> Liunx软件安装方法主要有3种: 1.编译安装,也就是通过编译源 ...
- Redis学习(一):CentOS下redis安装和部署
1.基础知识 redis是用C语言开发的一个开源的高性能键值对(key-value)数据库.它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止redis支持的键值数据类型如下字符串.列表 ...
- (转) SLAM系统的研究点介绍 与 Kinect视觉SLAM技术介绍
首页 视界智尚 算法技术 每日技术 来打我呀 注册 SLAM系统的研究点介绍 本文主要谈谈SLAM中的各个研究点,为研究生们(应该是博客的多数读者吧)作一个提纲挈领的摘要.然后,我 ...
- SLAM(二)----学习资料下载
有位师兄收集了很多slam的学习资料, 做的很赞, 放到了github上, 地址:https://github.com/liulinbo/slam.git ruben update 0823 2016 ...
- 人工智能深度学习Caffe框架介绍,优秀的深度学习架构
人工智能深度学习Caffe框架介绍,优秀的深度学习架构 在深度学习领域,Caffe框架是人们无法绕过的一座山.这不仅是因为它无论在结构.性能上,还是在代码质量上,都称得上一款十分出色的开源框架.更重要 ...
- iOS学习之NSBundle介绍和使用
iOS学习之NSBundle介绍和使用 http://blog.csdn.net/totogo2010/article/details/7672271 新建一个Single View Applicat ...
- ASP.NET Core Web开发学习笔记-1介绍篇
ASP.NET Core Web开发学习笔记-1介绍篇 给大家说声报歉,从2012年个人情感破裂的那一天,本人的51CTO,CnBlogs,Csdn,QQ,Weboo就再也没有更新过.踏实的生活(曾辞 ...
随机推荐
- 解决sublime3 package control显示There are no packages available for installation
之前一直是在windows上使用sublime,由于公司内部搭建了服务器,干脆把所有项目搬到了服务器上,自然也装上了牛逼闪闪的sublime,然而在接下来安装插件的时候却出了问题,package co ...
- Git本地提交到远程指定分支
git push origin master:ziranmeng2.(本地分支:远程分支)
- js 表格实现
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ApexSQLLog总结
我们程序最近做更新,要做新功能的测试.程序经常出现大的事务,每次commit之后如果发现数据不对的问题也不能再回滚进行断点调试了,因为数据库数据已经更改了,所以一直想找一个回滚我数据库所有操作的工具. ...
- 为 Linux 应用程序编写 DLL[转]
自:http://www.ibm.com/developerworks/cn/linux/sdk/dll/index.html 在仅仅只会编写插件的时候为什么要编写整个应用程序? 插件和 DLL 通常 ...
- php工作笔记2-php编码效率
1.尽量静态化: 如果一个方法能被静态,那就声明它为静态的,速度可提高1/4,甚至我测试的时候,这个提高了近三倍.当然了,这个测试方法需要在十万级以上次执行,效果才明显.其实静态方法和非静态方法的效率 ...
- 小知识:Python函数传递变长
先来实践一把: def f1(*args): print(args) f1(1,2,3,4) 得出:(1, 2, 3, 4) ----- 是一个元祖 Part 1: *args可以传递任意多的数,ar ...
- MongoDB服务重启及后台运行解决方法
1 在MongoDB 安装目录下 新建一个test文件夹 mkdir /test 2 切换到MongoDB的安装目录(可通过 find -name 'mongod'命令查找安装目录)下 执行: bin ...
- SQL Server 常用命令使用方法
(1) 数据记录筛选: sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]" sql="select * f ...
- golang的channel使用
chan使用前必须用make来创建,可以有多个槽位 0个槽位相当于消息,1个槽位相当于锁,多个槽位就是读者-写者 go func