
SLAM
文章平均质量分 69
帅小枫
从事VIO、三维重建、点云处理相关领域工作
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SIFT3D点云关键点提取详细介绍
1.引言SIFT3D的理论基础完全是从图像特征SIFT2D中迁移类比过来的,类似的还有Harris3D和Harris6D的理论基础也是来源于Harris2D的,这些点云特征在PCL库中都有具体的实现。Harris3D和Harris6D目前已经有很好的博客和视频讲解了但是SIFT3D却没有一个比较好的介绍。于是本人最近详细看了PCL库中SIFT3D关键点的提取流程,并类比SIFT2D在这里进行完整的介绍。.........原创 2022-05-17 21:54:32 · 2040 阅读 · 6 评论 -
C++里面调用Python函数得到目标检测的返回结果(可实现二维数组的传输)
背景:在算法测试阶段想在C++算法中直接获取基于python的目标检测结果。内容:目标检测采用yolo,执行脚本infer.py,其中主要接口函数为def image_infer(img_path) ''' 省略。。。。。 '''return result // 返回值是所有目标检测框的位置,是一个二维数组。接下来如何在C++里面得到python返回值呢,主要代码具体如下 Py_Initialize(); if(!Py_IsInitialized()){ cout原创 2021-11-15 12:05:18 · 3153 阅读 · 2 评论 -
手机数据跑VO/VIO记录
步骤:前期工作:使用ROS包camera_calibration标定手机,修改yaml参数配置文件1.roscore2.打开手机端数据获取APK,IP地址为电脑端IP3.手机图像topic重命名:rosrun image_transport republish compressed in:=/android/image_raw raout:=/cam0/image_raw3.运行ORBSLAM:rosrun ORB_SLAM2 Mono /home/fs/catkin_ws/src/ORB_SLA原创 2021-08-05 17:57:13 · 779 阅读 · 0 评论 -
rosdep update失败的最新终极解决办法
本人Ubuntu1804上安装ROS后,无法rosdep update 尝试各种换网、翻墙,修改hosts,修改DNS都无济于事。最后参考博客:Ubuntu18.04安装ROS及rosdep报错解决办法 换了gitee上的源顺利解决。下面操作中我也在自己的码云仓库上传了一版,其中注意两点:权限设置public路径默认是blob,一定要改为raw.例如: https://gitee.com/zhao-xuzuo/rosdistro/raw/master/rosdep/osx-homebrew.yaml原创 2021-08-05 15:57:50 · 733 阅读 · 0 评论 -
Android Studio使用记录
1.下载安装Android Studio参考博客:安装 | 手把手教你Android studio 3.5.2安装(安装教程)2.创建demo编译失败的问题参考博客:解决Android Studio报错 Installed Build Tools revision 31.0.0 is corrupted.3.导入别人的工程参考博客:导入别人的android studio项目4.编译Vins-On-Android项目出错...原创 2021-07-28 14:24:11 · 558 阅读 · 0 评论 -
Ubuntu20.04下成功运行VINS-mono
可以编译成功但是运行时段错误查找原因应该是ROS noetic版本中自带的OpenCV4和VINS-mono中需要使用的OpenCV3冲突的问题。为了便于查找问题,我只先编译feature_tracker包。解决思路历程:o想着把OpenCV4相关的库移除掉,但是发现编译feature_tracker的时候仍然会关联到Opencv4的库,查找原因是因为cv_bridge是依赖opencv4的,这样导致同时使用了opencv3和opencv4,因此运行出现段错误。oo进一步想着(1)把vins-mon原创 2021-07-27 14:57:29 · 6698 阅读 · 30 评论 -
Ubuntu报错:package architecture (arm64) does not match system (amd64)
问题:使用dpkg安装deb程序时报错package architecture (arm64) does not match system (amd64)解决方法:sudo dpkg --add-architecture amd64若出现package architecture (amd64) does not match system (arm64)则执行:sudo dpkg --add-architecture arm64即可...原创 2020-12-05 15:33:40 · 23180 阅读 · 11 评论 -
PL-SVO代码解析
---------------------------------------------------------------------------------------------------------------------------原创 2019-11-21 21:33:59 · 628 阅读 · 3 评论 -
知识点梳理:基本矩阵F、本质矩阵E、单应矩阵H
1.基本矩阵F:根据两帧间匹配的像素点对儿计算2.本质矩阵E:通过归一化坐标对进行计算。因为R,t共有6个自由度,又因为单目尺度等价性,所以实际上E矩阵共有5个自由度。因此至少需要5个点对来求解。十四讲中说因为E矩阵的内在性质是一种非线性,求解起来十分麻烦。这句话怎么理解呢?其实意思应该是说把E矩阵用5个变量来表示是比较困难的,他们之间是一个非线性的表示形式(E=[t]×R[\mathbf ...原创 2019-11-19 21:01:51 · 5211 阅读 · 2 评论 -
PL-VIO: Tightly-Coupled Monocular Visual–Inertial Odometry Using Point and Line Features
sensors 中科院贺一家博士首先看下图,点线特征融合VIO系统的观测示意图IMU预积分同VINS-Mono线特征几何表示1.普吕克坐标表示普吕克坐标表示用线特征方向向量和线特征与相机坐标系原点所构成的平面的法向量表示,如下所示L=(n⊤,d⊤)⊤∈R6\mathcal{L}=\left(\mathbf{n}^{\top}, \mathbf{d}^{\top}\right)^...原创 2019-11-18 14:42:37 · 2120 阅读 · 0 评论 -
PL-SVO: Semi-Direct Monocular Visual Odometry by Combining Points and Line Segments
IROS2016 西班牙马拉加大学首先看系统流程图主要分为跟踪线程和建图线程两大部分。跟踪线程1.基于稀疏模型的图像对齐设定一个初始位姿Tk,k−1T_{k,k-1}Tk,k−1,且已经存在一些空间点线,然后把空间点线投影到当前帧,然后优化当前帧位姿Tk,k−1T_{k,k-1}Tk,k−1使得当前帧与参考帧的光度误差最小。关于线特征需要早端点pq之间等距采样多个图像块,表示如...原创 2019-11-18 10:19:28 · 496 阅读 · 0 评论 -
OKVIS:Keyframe-Based Visual-Inertial SLAM Using Nonlinear Optimization
主要是看了范帝楷大佬在泡泡机器人SLAM中介绍。我把链接写到博客里便于自己以后查看。【泡泡机器人原创专栏-OKVIS】OKVIS理论推导(上) https://mp.weixin.qq.com/s/FDMDleH8wszsD9HkBXwAnQ【泡泡机器人原创专栏-OKVIS】OKVIS理论推导(下)https://mp.weixin.qq.com/s/UvRA_hOULokRgqJH1wk1...原创 2019-11-13 11:21:05 · 1104 阅读 · 0 评论 -
Basalt:Visual-Inertial Mapping with Non-Linear Factor Recovery
定义:Jr(s)=limξ→0r(s⊕ξ)⊖r(s)ξ\mathbf{J}_{\mathbf{r}(\mathbf{s})}=\lim _{\xi \rightarrow \mathbf{0}} \frac{\mathbf{r}(\mathbf{s} \oplus \boldsymbol{\xi}) \ominus \mathbf{r}(\mathbf{s})}{\xi}Jr(s)=ξ→...原创 2019-11-13 08:45:19 · 2627 阅读 · 0 评论 -
VIORB-SLAM:Visual-Inertial Monocular SLAM with Map Reuse
我看VIORBSLAM的时候已经看完VINS-Mono了,发现VIORB在初始化时和VINS是有一些区别的。而后端是基于ORBSLAM的所以和ORBSLAM很相似。下面主要从数据预处理、初始化、跟踪建图优化三个部分进行总结。数据预处理相机:针孔相机模型。ORB特征提取匹配等不多说了。文中关于焦距的说法应该是错的吧,严格来讲 fu\ {f}_u fu和 fv\ {...原创 2019-11-10 19:33:25 · 2046 阅读 · 5 评论 -
Ceres优化库使用详解
主要参考文档http://ceres-solver.org/nnls_modeling.html原创 2019-10-31 14:29:35 · 4786 阅读 · 1 评论 -
VINS-Mono代码阅读
一、feature_tracker首先初始化feature_tracker节点,函数readParameters(n)加载config参数配置文件。trackerData[i].readIntrinsicParameter(CAM_NAMES[i])给相机模型加载内参,这里是单目i=1;如果是鱼眼相机则加载mask。然后开始订阅相机的topic,调用回调函数读取图片**[1]**,然后初始化3个...原创 2019-11-01 19:04:18 · 853 阅读 · 0 评论 -
编译PL-SLAM
### 首先需编译stvo-pl原创 2019-04-12 12:59:58 · 895 阅读 · 7 评论 -
编译PL-SVO时遇到的一些问题(一)
1.找不到fastConfig.cmakefast库编译安装后在pl-svo的camke-models文件夹下面加入fastConfig.cmake,但是在编译pl-svo时就是camke ..就是找不到该文件,于是修改camkelists.txt,加入语句set(fast_DIR "/home/fs/Documents/pl-svo/cmake-modules")即可2.运行r...原创 2019-03-27 21:00:29 · 1286 阅读 · 2 评论 -
关于激光雷达和视觉融合的里程计研究总结
根据设计的里程计系统中雷达和相机所起作用的比重不同,可大致分为3类:一类是视觉辅助激光的,一类是激光辅助视觉的,另一类是激光和视觉里程计相互融合相互矫正的。下面将具体解释一下这三类融合方案。视觉辅助激光。前期通过在查找国内外文献发现,国内的研究基本都是这种方式,一般是利用视觉信息来提高激光SLAM系统的闭环检测的准确性,或者是辅助重定位,或者是在位姿估计阶段构架激光特征的变换误差和视觉重投影误...原创 2019-03-01 14:37:20 · 7157 阅读 · 9 评论