自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 手写Bundle Adjustment(三)高斯牛顿法实现BA求解PnP

PnP( Perspective-n-Point )是求解3D到2D点对运动的方法。PnP可以再很少的匹配点中获得较好的运动估计,是最重要的一种姿态估计方法。PnP问题有多种解法,通用的算法有P3P、EPnP、DLT、UPnP、MRE等,其中P3P、EPnP、DLT、UPnP为线性变换求解,MRE即最小二乘法,是用非线性优化的方式构建最小二乘问题进行迭代求解,也就是Bundle Adjustm...

2018-09-09 18:09:27 6824 6

原创 ORB_SLAM2跑数据集卡住不生成关键帧轨迹txt文件

在新的系统下用ORB_SLaM2跑数据集,出现卡住不会动的情况。运行情况如图:查看数据集,确实运行到了最后一帧图像,最终找到问题出在了结束进程的SLAM.Shutdown();函数,具体是在在System.cc中的这两行代码上if (mpViewer) pangolin::BindToContext("ORB-SLAM2: Map Viewer");将这两行代码注...

2018-09-06 20:04:46 3689 9

原创 手写Bundle Adjustment(二)高斯牛顿法拟合曲线

最小二乘法:又称最小平方法,是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。完整代码可见https://github.com/YCJin9/sparse_BA高斯牛顿法是最优化算法当中最简单的一种,这会便于我们去实现,但同时高斯牛顿法有着他本身的问题,这会在本篇博客的最后进行展示。...

2018-09-06 17:36:26 4239 1

原创 手写Bundle Adjustment(一)

这个题目是在“第一届SLAM论坛”中沈劭劼老师的发言中学到的,手写Bundle Adjustment是在不使用各种库(可以使用Eigen矩阵运算库)的条件下实现Bundle Adjustment。博客是为了记录这一过程,也是为了能够更好地理解。开篇简单介绍一下Bundle Adjustment是什么,以及SLAM的关系。另外,本博客主要是为了动手去实现一个简易的Bundle Adjustmen...

2018-09-03 21:07:01 6981 1

原创 Ubuntu18.04安装LaTeX并配置中文环境

最近想学习使用LaTeX,但第一步的安装就花费了很大精力,LaTeX有各种发行版,网上的各种教程也不尽相同,而且很多是几年前的教程,总之安装过程中也遇到了各种麻烦,在这里记录一下成功的安装过程,以及自己的一些理解。一、通过apt-get下载安装1. 选择安装LaTeX发行版LaTeX有很多发型版,TeX Live就是其中一种。TeX Live 是 TUG (TeX User Group...

2018-09-01 17:28:45 38069 15

原创 视觉SLAM中相机位姿的多种描述

SLAM中一个重要的问题就是求取的相机位姿,位姿的描述有多种方式,本文的目的是整理一下能用到的各种位姿的描述方式。首先要确定相机位姿是什么。位姿即位置和姿态,是刚体在空间中的位置和它自身的姿态,相机的位姿即相机在空间中的位置和相机的朝向。相机的位姿可以看做相机从原始位置到当前位置的变换,包含一个平移变换和一个旋转变换,先旋转再平移。这一变换可以分开描述也可以一起描述,分开描述即将旋转和平移分离...

2018-08-29 22:00:27 3111

原创 Ubuntu18.04安装OpenCV2.4和OpenCV3.4共存

  由于各个开源slam使用的OpenCV版本不同,在运行时会存在各种不适配的问题,一般情况下需要同时安装二系和三系OpenCV。文章最后有官网下载速度慢、下载中断的解决方法。  OpenCV二系和三系不是简单地三系就比二系新,比二系好的关系,两个版本主要是接口不同,而两个版本都在维护更新。同时安装两个版本在使用时需要在CmakeLists.txt中调用时需要进行区分。  在Ubuntu1...

2018-08-16 22:30:30 6857 1

原创 Ubuntu18.04系统SLAM环境配置

之前的slam环境是在Ubuntu14.04下的,最近电脑出了些问题,索性直接换到18.04版本。Ubuntu14.04下的环境是根据《视觉SLAM十四讲 从理论到实践》书中的提示进行安装的。在Ubuntu18.04下安装有些库的安装和依赖改变,还是有一些坑的。G++首先是最基本的c++编译环境,需要安装g++,可以直接sudo apt-get install g++在Ub...

2018-08-10 10:29:47 8451 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除