视觉SLAM十四讲
文章平均质量分 67
本专栏主要介绍高博视觉slam十四讲的代码相关解读以及课后习题的解答,希望能帮助到大家,我们一起学习与进步!
长沙有肥鱼
这个作者很懒,什么都没留下…
展开
-
视觉SLAM十四讲CH11代码解析及课后习题详解
在进行编译程序前,先需要安装DBoW,第二版的安装文件下载链接如下所示:https://github.com/rmsalinas/DBow3https://github.com/rmsalinas/DBow3下载完成后,安装方法很简单,将文件存放在你想存放的文件夹里面,进入DBoW-master文件夹:mkdir buildcd buildcmake ..make -j4sudo make install在编译CH11的时候,出现了下面的错误:make[2]:.原创 2021-12-09 21:10:02 · 4625 阅读 · 11 评论 -
GMS特征点代码实践
代码下载地址:GitHub - JiawangBian/GMS-Feature-Matcher: GMS: Grid-based Motion Statistics for Fast, Ultra-robust Feature Correspondence (CVPR 17 & IJCV 20)下载后共有三个版本的代码:c++,python,matlab c++版本:编译的方法很简单:mkdir buildcd buildcmake ..make ls执行:.原创 2021-12-03 22:00:52 · 2275 阅读 · 12 评论 -
特征点提取与匹配原文论文下载
ORB原文下载链接:(PDF) ORB: an efficient alternative to SIFT or SURFSIFT原文下载链接:https://www.cs.ubc.ca/~lowe/papers/ijcv04.pdfSURF原文下载链接:https://www.cs.jhu.edu/~misha/ReadingSeminar/Papers/Bay08.pdfORB和AKAZE对比论文下载链接:https://www.epacis.net/ccis2016/papers/pape原创 2021-12-02 15:16:36 · 759 阅读 · 0 评论 -
视觉SLAM十四讲CH10代码解析及课后习题详解
在进行位姿图优化时候,如果出现g2o_viewer: command not found,说明你的g2o_viewer并没有安装上,打开你之前安装的g2o文件夹,打开bin文件夹,如果没有找到g2o_viewer,说明没有安装上(下图是已经安装好的)。 如果还没有安装g2o的,请参照我之前写的博客:Ubuntu18.04安装Ceres和g2o库_nudt一枚研究生-CSDN博客一、ceres安装:1.Ctrl+Alt+T打开终端:安装依赖:sudo apt-get install liblapack-d原创 2021-11-29 21:38:44 · 4348 阅读 · 3 评论 -
Ubuntu编译视觉SLAM十四讲CH9
In file included from /usr/local/include/ceres/internal/parameter_dims.h:37, from /usr/local/include/ceres/internal/autodiff.h:151, from /usr/local/include/ceres/autodiff_cost_function.h:130, from /usr/loc...原创 2021-11-23 09:09:41 · 3843 阅读 · 0 评论 -
视觉SLAM十四讲CH9代码解析及课后习题详解
点云查看工具CloudCompare安装:方法1:命令行安装:sudo snap install cloudcompare安装完成后,可以将 ccViewer和CloudCompare添加到任务栏里,也可以使用下面的命令行打开:打开ccViewer:cloudcompare.ccViewer打开CloudCompare:cloudcompare.CloudCompare方法2:在软件中心中进行安装:...原创 2021-11-22 21:15:40 · 6606 阅读 · 3 评论 -
视觉SLAM十四讲CH8代码解析及课后习题详解
1. 除了LK 光流之外,还有哪些光流方法?它们各有什么特点?KLT 光流 - mthoutai - 博客园原创 2021-11-11 20:00:45 · 8698 阅读 · 3 评论 -
视觉SLAM十四讲CH8课后习题3、4
3. 直接法能否和光流一样,提出反向法的概念?即,使用原始图像的梯度代替目标图像的梯度。转载于:视觉SLAM十四讲(第二版)第8讲习题解答 - 知乎代码链接:https://github.com/Philipcjh/HW-of-SLAMBOOK2/blob/main/hw8/p3.cpp3.cpp#include <opencv2/opencv.hpp>#include <sophus/se3.hpp>#include <boost/format.hpp.转载 2021-11-11 19:37:44 · 906 阅读 · 0 评论 -
opencv特征点
代码在百度网盘链接里面:1.Harris角点提取具体原理不细讲,只是运行看一些效果,具体以后要使用到的话再回来看看。执行效果:通过调节阈值可以增加或减少角点提取的个数。2.fast关键点执行结果:3.KAZE执行效果:特征点寻找所花费时间(ms):19.689875执行效果: ./kaze1 1.png 2.png extract AKAZE cost = 0.0927352 seconds. Gtk-Message: 21:..原创 2021-11-04 22:48:18 · 2453 阅读 · 0 评论 -
视觉SLAM十四讲CH7课后习题6,7,8
6. 在PnP 优化中,将第一个相机的观测也考虑进来,程序应如何书写?最后结果会有何变化?代码链接:HW-of-SLAMBOOK2/p6.cpp at main · Philipcjh/HW-of-SLAMBOOK2 · GitHubpose_estimation_3d2d1.cpp#include <iostream>#include <opencv2/core/core.hpp>#include <opencv2/features2d/features2.转载 2021-11-04 19:47:35 · 590 阅读 · 0 评论 -
视觉SLAM十四讲CH7课后习题5
5. 把演示程序使用的EPnP 改成其他PnP 方法,并研究它们的工作原理。下面的代码是关于EPNP算法的,具体的原理请参考原文。代码链接:https://github.com/jessecw/EPnP_Eigen在README.md的文件里有具体的执行方法,不过需要注意的是执行程序实在bin文件夹下的文件具体分布如下所示:执行结果:./test_epnp eigen_vector:1 0 0 0 0 0 0 0 0 0 0 00 1 0 0 0 0 0 0 0..转载 2021-11-04 19:24:53 · 332 阅读 · 0 评论 -
视觉SLAM十四讲CH7课后习题3_2
3. * 我们发现OpenCV 提供的ORB 特征点,在图像当中分布不够均匀。你是否能够找到或提出让特征点分布更加均匀的方法?这里可以参考前面的视觉SLAM十四讲CH7课后习题3_1的注释,下面的这个代码的写法和前面的差不多,基本上是属于ORB-SLAM中的一部分。orb_cv2.cpp#include <iostream>#include <list>#include <vector>#include <algorithm>#inclu转载 2021-11-04 19:01:38 · 521 阅读 · 0 评论 -
视觉SLAM十四讲CH7课后习题3_1
3. * 我们发现OpenCV 提供的ORB 特征点,在图像当中分布不够均匀。你是否能够找到或提出让特征点分布更加均匀的方法?除了我们所熟知的GPU加速,可以使用四叉树来进行加速匹配,在点云的算法中也有用八叉树来加速的,具体的原理这里没有写,对算法感兴趣的可以找资料去了解一下。我在作者的基础上谢了一些注释,不过代码量太大了,有的也没看懂写的是什么,想着后续如果学ORB-SLAM2的时候再回来看看。orb_cv3.cpp:#include <iostream>#include &l转载 2021-11-04 18:44:45 · 586 阅读 · 0 评论 -
视觉SLAM十四讲CH7课后习题2
转载于:视觉SLAM十四讲(第二版)第7讲习题解答 - 知乎大家好,这里是Philip~最近在学习高博的《视觉SLAM十四讲》(第二版),以下是对第7讲习题的解答,如有错误或不全面的地方还请大家指正。 1. 除了本书介绍的ORB特征点,你还能找到哪些特征点?请说说SIFT或SURF的…https://zhuanlan.zhihu.com/p/389420864我重新建立了一个文件夹:在原作者的基础上添加了详细的注释orb_cv.cpp#include <iostream>.转载 2021-11-04 17:12:08 · 471 阅读 · 0 评论 -
视觉SLAM十四讲CH7课后习题10_2
转载于:在ceres中实现ICP优化(仅优化位姿)_luo870604851的博客-CSDN博客一.仅优化位姿构造类和代价函数:struct ICPCeres{ ICPCeres ( Point3f uvw,Point3f xyz ) : _uvw(uvw),_xyz(xyz) {} // 残差的计算 template <typename T> bool operator() ( const T* const c...https://blog.csdn.net/luo870604转载 2021-11-04 16:32:52 · 462 阅读 · 0 评论 -
视觉SLAM十四讲CH7课后习题10_1
转载于:视觉SLAM十四讲(第二版)第7讲习题解答 - 知乎大家好,这里是Philip~最近在学习高博的《视觉SLAM十四讲》(第二版),以下是对第7讲习题的解答,如有错误或不全面的地方还请大家指正。 1. 除了本书介绍的ORB特征点,你还能找到哪些特征点?请说说SIFT或SURF的…https://zhuanlan.zhihu.com/p/38942086410. *在Ceres 中实现PnP 和ICP 的优化。代码链接:https://github.com/Philipcjh/HW-of-SLAMB转载 2021-11-04 16:04:59 · 560 阅读 · 1 评论 -
视觉SLAM十四讲CH7代码解析及课后习题详解
orb_cv.cpp#include <iostream>#include <opencv2/core/core.hpp>#include <opencv2/features2d/features2d.hpp>//特征点头文件,处理特征点信息#include <opencv2/highgui/highgui.hpp>//opencv gui头文件#include <chrono>//用于计时的头文件using namespace原创 2021-11-04 15:23:32 · 6710 阅读 · 22 评论 -
视觉SLAM十四讲CH6代码解析及课后习题详解
Ipopthttps://github.com/coin-or/IpoptOverview - NLopt DocumentationNonehttps://nlopt.readthedocs.io/en/latest/【论文阅读1】SLAM++: SLAM at the Level of Objects - 知乎去年读了不少论文,但是感觉还是记录下来印象更深刻一些。就在知乎记录吧,内容基本都是是翻译过来的,由于时间有限,没有仔细润色,可能不太通顺,以后再慢慢改。 这里记录第一篇文章: R. F..原创 2021-10-28 15:03:02 · 3754 阅读 · 9 评论 -
Ubuntu20.04 Ubuntu18.04安装opencv + opencv_contrib
由于最近编译视觉slam十四讲的特征点部分,需要用到opencv的一些模块库,其中就需要opencv-contrib。opencv3以上的版本没有opencv-contrib,所以需要一起安装。由于尝试了好多方法,今天特意写篇帖子记录一下,给有需要的同志使用,也让自己以后好查询怎么安装。按照我写的步骤去操作,Ubuntu20.04和Ubuntu18.04都可以安装,安装方法是一样的,我亲自在两台电脑上尝试过一台R7000(Ubuntu20.04)另一台Y9000P(Ubuntu18.04)下面的图片原创 2021-10-26 20:06:56 · 7177 阅读 · 8 评论 -
视觉SLAM十四讲CH5代码解析及课后习题详解
/usr/bin/ld: CMakeFiles/stereoVision.dir/stereoVision.o: in function `main':stereoVision.cpp:(.text+0xae): undefined reference to `cv::imread(cv::String const&, int)'/usr/bin/ld: stereoVision.cpp:(.text+0xf1): undefined reference to `cv::imread(...原创 2021-10-25 18:02:15 · 6810 阅读 · 16 评论 -
视觉SLAM十四讲CH4代码解析及课后习题详解
useSophus.cpp#include <iostream>#include <cmath>#include <Eigen/Core> //Eigen核心模块#include <Eigen/Geometry>//Eigen几何模块#include "sophus/se3.hpp"using namespace std;using namespace Eigen;/// 本程序演示sophus的基本用法int main(int a原创 2021-10-21 16:27:43 · 2897 阅读 · 6 评论 -
视觉SLAM十四讲CH3代码解析及课后习题详解
eigenMatrix.cpp#include <iostream>using namespace std;#include <ctime>// Eigen 核心部分#include <Eigen/Core>// 稠密矩阵的代数运算(逆,特征值等)#include <Eigen/Dense>using namespace std;using namespace Eigen;#define MATRIX_SIZE 50 ////宏原创 2021-10-19 16:22:48 · 5117 阅读 · 4 评论 -
Ubuntu20.04编译编译视觉SLAM十四讲slambook2/ch7
error:In file included from /usr/local/include/g2o/core/base_unary_edge.h:30, from /home/liqiang/slambook2/ch7/pose_estimation_3d2d.cpp:8:/usr/local/include/g2o/core/base_fixed_sized_edge.h:179:32: error: ‘index_sequence’ is not a memb原创 2021-09-16 16:05:05 · 3335 阅读 · 5 评论 -
ubuntu18.04编译视觉SLAM十四讲slambook2/ch7
在编译高博视觉SLAM十四讲的第七章节的时候,遇到了一些error:首先还是按照常规步骤来进行编译,打开ch7,在该文件夹下面打开终端:mkdir buildcd buildcmake ..make -j8在编译的时候遇到了下面这些错误:error1:/usr/local/include/sophus/so2.hpp:106:40: error: ‘ScalarBinaryOpTraits’ in namespace ‘Eigen’ does not name a原创 2021-09-16 15:31:40 · 4301 阅读 · 7 评论 -
Ubuntu OpenCV库error解决
error while loading shared libraries: libopencv_core.so.2.4: cannot open shared object file: No such file or directory这是我学习高翔视觉SLAM十四讲到第五章后,回过头编译ORB-SLAM2后发现ORB-SLAM2跑不通了,原因是由于OpenCV里面有些文件已经没有了,找不到相关的文件。解决的办法很简单:https://blog.csdn.net/weixin_53660567/原创 2021-09-03 09:47:25 · 585 阅读 · 0 评论 -
Ubuntu20.04 18.04编译视觉SLAM十四讲slambook2/ch5/rgbd
在编译这个例子时候,会产生报错,接下来我们用具体命令进行编译,首先进入到rgbd文件夹下:mkdir buildcd buildcmake ..make -j4error1:CMakeFiles/joinMap.dir/joinMap.o: In function `main':joinMap.cpp:(.text+0x17b): undefined reference to `cv::imread(cv::String const&, int)'joinMap.c原创 2021-09-03 09:33:03 · 4674 阅读 · 10 评论