From P to K[R|t]
写在最前,本文参考链接:
[1]
https://math.stackexchange.com/questions/1640695/rq-decomposition
[2]
https://leohart.wordpress.com/2010/07/23/rq-decomposition-from-qr-decomposition/
[3] http://ksimek.github.io/2012/08/14/decompose/
[4] MVG p163
在从投影矩阵P中分解得到K[R|t]时,首先会进行RQ分解得到K和R,然后很容易就可由inv(K...
最近实验室新买了小觅深度版相机(型号D1000-IR-120/Color),这里记录一下跑vins-mono的过程。由于虚拟机usb可能出现不兼容问题,我使用的是双系统的Ubuntu16.04,对应ROS版本为kinetic。
1.安装ROS
Ubuntu16.04对应的ros版本为kinetic,安装的方法网上已有很多,比如可以参考此博客。如果安装出错,请换个源或者用VPN试试。推荐安装ros-kinetic-desktop-full全套版,pcl和opencv库等会直接包含在里面下载。
2.编译小觅SDK
12345678cd ~git clone https://github.co...
之前已经接触过一些ROS的使用,但是还没有系统地学习过,因此在此记录一下学习的笔记。学习ROS首先必须参考ROS
wiki及ROS
Answers,另外国内“古月居”的博客和“东方赤龙”的博客都可以参考学习,本文使用古月居的书《ROS机器人开发实践》来系统学习ROS。不过,需知道ROS本身只是一个方便大家开发的工具罢了。
书中相关学习代码在github上:
https://github.com/gjgjh/ros_exploring
1. 初识ROS
分布式网络,TCP/IP,模块间松耦合连接
三种通信机制: 1.基于发布/订阅topic通信(异步)
talker注册
listen...
PTAM算法是2007年提出的经典的单目特征点法SLAM,同时也是早期将SLAM和AR结合起来的工作之一。虽然PTAM几乎已经过时,但其在整个SLAM发展过程中占有重要地位:
PTAM首先提出将定位(Tracking)和建图(Mapping)分为两个线程并行进行
计算资源因此得到了释放,所以PTAM也是第一个使用非线性优化的方案,精度自然更高
PTAM引入关键帧机制,不必精细处理每一张图
在今天的众多先进的SLAM算法中仍可见PTAM的影子,因此学习一下PTAM还是很有必要的。在学习算法之前,先跑一下代码,对算法有一个直观的感受。我使用的环境是ubuntu16.04+ROS
kine...
0 将手机与ROS连接
首先,通过局域网将手机与ROS相连接。我使用的是hitcm博客的程序,具体可以参考他的博客。到这一步已经可以订阅相关话题,并在程序中做相关计算了。但是如果还想记录下来手机传感器发布的数据,以便未来再次回放使用,则还需要进一步处理。
1 记录bag
ROS与手机相连后,使用rosbag命令开始记录数据,这里指定只保存android/imu和camera/image_raw两个话题下的消息:
1rosbag record android/imu camera/image_raw # rosbag record <topic-names> or rosbag...
在阅读本文之前,最好先看过《视觉SLAM十四讲》中直接法(chap
8)和单目稠密建图(chap
13)部分,并对李群李代数和立体匹配相关知识有一些了解,这对于理解LSD-SLAM算法有一定帮助
LSD-SLAM算法主要在以下两个论文中提出: [1] 2013 Semi-dense
Visual Odometry for a Monocular Camera [2] 2014 LSD-SLAM:
Large-Scale Direct Monocular SLAM
论文[2]提出LSD-SLAM,可分为三大模块:Tracking、Depth Map
Estimation和Map Opt...
LSD-SLAM是一个semi-dense的直接法SLAM算法。 其主页见https://vision.in.tum.de/research/vslam/lsdslam?redirect=1
其代码见https://github.com/tum-vision/lsd_slam
官方在github上给出默认环境有两个 * ROS fuerte + Ubuntu 12.04 * ROS
indigo + Ubuntu 14.04
因此推荐使用上面的环境,出错较少。下面是我在ROS kinetic + Ubuntu
16.04环境下实现LSD-SLAM的过程
1.安装ROS kinetic
这...