ORBSLAM2遗留问题

Realsense D435基于ROS跑通ORBSLAM2 Realsense D435基于ROS跑通ORBSLAM2 系统ubuntu16.04 ROS Kinetic 相机RealsenseD435 SLAM系统:ORBSLAM2 一.安装Realsense的SDK 官方链接:https://github.com/intel-ros/realsense 步骤就按照这个步骤来就可以了,下面会说一些每一步可能遇到的坑和注意点 第1步:安装最新的英特尔®实... 阅读详情

1, BoW3

1, 深度为l,分支为k的树,究竟表达多少word
2, 树的层数从上到下是0到l还是l到0,亦或是0到l-1还是l-1到0
3, node的id是否是饱和的,即是否会出现叶节点不都在一层中这种现象
4, transform的图片上的所有描述子是否都被分到FeatureVector了
5, mpORBvocabulary->transform(vCurrentDesc,mBowVec,mFeatVec,4);中的最后一个参数4,是指向上移动4层还是移动到第四层

2, SearchByBoW()

if(mbCheckOrientation)//初始化为ture
{
   //相匹配的两个特征点的角度差,大部分应该是大小相近的,取值(-360,360)
   float rot = kp.angle-F.mvKeys[bestIdxF].angle;//angle[0,360)
   if(rot<0.0)//将角度转化为正值,(0,720)
       rot+=360.0f;
   int bin = round(rot*factor);//const float factor = 1.0f/HISTO_LENGTH=1/30;bin取值(0,24)
   if(bin==HISTO_LENGTH) 
       bin=0;
   assert(bin>=0 && bin<HISTO_LENGTH);
   //rotHist,0号元素为null,1号元素储存角度差为(0,30]的,2号为(30,60]...,23号为[690,720)索引是当前帧特征点的索引
   rotHist[bin].push_back(bestIdxF);
   
}

角度一致性检查,角度差分成30份后,bin取值应该在(0,24),为什么还要判断bin==HISTO_LENGTH

3, G2O优化

为什么信息矩阵要乘上 特征提取层尺度因子平方的倒数

//单目特征点
const float invSigma2 = pFrame->mvInvLevelSigma2[kpUn.octave];
 e->setInformation(Eigen::Matrix2d::Identity()*invSigma2);//信息矩阵与缩放系数有关/1.2^2
//双目特征点
const float invSigma2 = pFrame->mvInvLevelSigma2[kpUn.octave];
Eigen::Matrix3d Info = Eigen::Matrix3d::Identity()*invSigma2;

4, Frame类型中检查地图点是否能够投影到本帧的isInFrustum()函数

pMP->GetNormal()返回的mNormalVector保存的是各个观测单位向量的平均值,而不是单位向量,因此此处计算的角度是有问题的.应该在此处加上一步将Pn归一化为单位向量,或者在计算mNormalVector的函数void MapPoint::UpdateNormalAndDepth()中将mNormalVector归一化为单位向量.

const cv::Mat PO = P-mOw;//光心指向地图点的向量,mow(==mtwc)光心位置
const float dist = cv::norm(PO);//mappoint与当前帧光心的距离
// Check viewing angle
//返回mNormalVector,mappoint的各个观测方向的平均值,并不是单位向量,是个单位向量的和的平均值
cv::Mat Pn = pMP->GetNormal();

//mappoint的当前帧观测方向与(mappoint的平均观测方向)夹角的cos值,有点问题,因为Pn不是单位向量
const float viewCos = PO.dot(Pn)/dist;

if(viewCos<viewingCosLimit)
       return false;
ORBSLAM2 windows编译与问题解决 ORBSLAM2 windows编译与问题解决,,一次性搞定,亲测有效1准备工作2按照如下步骤进行编译 1准备工作 1.下载windows下的ORBSLAM2版本 ORBSLAM2windows 2.下载cmake Cmake 3下载Opencv opencv版本没有要求,但是别太老,本文使用的是2.4.13 2按照如下步骤进行编译 1.Opencv环境配置 下载解压opencv之后在根据需要在环... 阅读详情

相关推荐

在ROS中使用MYNTEYE相机跑ORBSLAM2

       本人处于VSLAM的初学阶段,所以目前拿来玩玩做些小实验的双目相机是MYNTEYE双目相机,除了双目相机,还自带IMU。因为不是主流的ZED,Bumblebee2等,且是双目相机,所以网上没有系统的教程来讲解如何在ROS中使用MYNTEYE相机跑ORBSLAM2。 0、安装环境: Ubuntu 16.04 LTS ROS Kinetic MYNT-EYE-SDK-2(按照以下教程安...

浅眠忘川的博客 4214

orbslam2稠密版建图

slam

darren_pty 8448

ROS下运行ORBSLAM2

这里主要做一个简单的总结: 首先我本人对ROS操作系统不是很熟悉;看了高博用KinectV2跑ORBSLAM2的时候觉得不知道怎么跟着下手,所以查了简单的资料,在这里做一个总结; 我的环境是这样:ubuntu 14.04.5 + ROS indigo1、建立一个ros的工作空间mkdir -p ~/catkin_ws/src cd ~/catkin_ws/ catkin_make source

Mr_pan 6123

ORB_SLAM2 源码解析 ORB_SLAM2简介(一)

一、ORB_SLAM2的特点 1、ORB_SLAM2是首个支持单目、双目和RGB-D相机的完整开源SLAM方案,能够实现地图重用,回环检测和重新定位的功能。 2、能够在GPU上进行实时工作,比如手机、无人机、汽车。 3、特征点法的巅峰之作,定位精度非常高。 4、能够实时计算处相机的位姿,并生成场景的稀疏三维重建地图。 二、算法流程框架 ORB-SLAM整体流程如下图所示 它主要有三个线程组成:跟踪、Local Mapping(又称小图)、Loop Closing(又称大图...

m0_58173801的博客 1万+

认真的虎ORBSLAM2源码解读(四):图解ORB特征提取ORBextractor

目录1.理论基础 1.理论基础 Oriented FAST and Rotated BRIEF Features From Accelerated Segment Test Binary Robust Independent Elementary Features

认真的虎的博客 9797

提取ORBSLAM中特征点提取ORBextractor模块

ORBSLAM2中很多模块可以单独拿出来给自己的程序使用,博主在这里将ORB中特征点提取模块提取出来,供后续自己开发。 与OpenCV库中提供的ORB特征点提取函数相比,ORBSLAM中特征点分布均匀,ORBSLAM将图像划分成若干个区域,在每个区域内设置提取特征点的数量,并设置提取数量的阈值,保证整幅图片特征点数量更均匀。 ORB特征点如何提取在这里不做赘述,很多博客和高博的《视觉SLAM十...

NEU-LC的博客 3016

ORB-SLAM2论文详解

ORB-SLAM2 适用于单目,双目和RGB-D相机,包括闭环、重定位等功能,可用于室内环境、工业环境、飞行的无人机、行驶的汽车等。

qq_29320587的博客 3092

环境科研人必备:手把手教你用EPISuite 4.1批量预测化合物毒性(附ECOSAR实战)

本文详细介绍了EPISuite 4.1在环境毒理学研究中的应用,重点解析了ECOSAR模块的化合物毒性预测技术。通过批量处理实战和科研案例,帮助环境科研人员快速评估化学物质对水生生态系统的风险,提升工作效率。文章还涵盖了EPISuite核心模块的功能分类及ECOSAR模型的技术原理与算法特点。

weixin_28738165的博客 539

ORB-SLAM2原理分析

ORB-SLAM2是一种基于单目、双目和RGB-D相机的实时视觉SLAM系统,用于在无GPS信号或有限的传感器信息情况下,构建三维地图并定位相机的位置和姿态。ORB-SLAM2采用了ORB特征点提取和描述符匹配技术,以及图优化和闭环检测算法,从而实现了高精度的地图构建和相机定位。ORB-SLAM2可以应用于室内外的多种场景,如机器人导航、增强现实和虚拟现实等领域。

qq_44089890的博客 9367

闲人闲谈PS之十二——WBS-BOM在装备制造项目中的实战解析

本文深入解析了WBS-BOM在装备制造项目中的核心应用。针对按订单设计/生产的行业痛点,WBS-BOM作为项目专属物料清单,完美连接SAP PS与PP模块,确保MRP能基于项目进行精准物料需求计算,实现从设计到生产的全链路项目化跟踪与管理。

weixin_29284885的博客 399

【Android14 ShellTransitions】Transition就绪:双Transaction与SurfaceControl显示时机剖析

本文深入剖析了Android14 ShellTransitions框架中Transition就绪阶段的核心机制。重点解释了为何需要“双Transaction”来精确控制SurfaceControl的显示与隐藏时机,以确保Activity切换动画的流畅性。通过分析onTransactionReady流程、窗口绘制状态机及动画目标提升策略,揭示了系统如何协调WMCore与WMShell,实现从状态收集到动画播放的无缝衔接。

ooo22的博客 526

ORB-SLAM2课程介绍 及 论文详解--总结自《全网最详细的ORB-SLAM2课程》

ORB-SLAM2课程介绍 及 论文详解 https://appafc4omci9700.h5.xiaoeknow.com/v1/course/video/v_604dce0ae4b0e51d821de16c?feature=&is_redirect=1&share_from=u_60605fd13b251_jsBsAc9HF0&type=2一、ORB-SLAM2框架1. 三个线程:TRACKING跟踪、LOCAL MAPPING局部建图、LOOP CLOSING闭环。· TRAC

Matchsticklala的博客 4009

Hiblup入门指南:从下载到基础应用

本文是Hiblup软件的入门指南,详细介绍了这款遗传评估工具的核心功能与价值。Hiblup能整合系谱、基因组和表型数据,高效计算估计育种值,助力动物育种与植物遗传改良研究。文章从软件下载安装、数据格式准备,到运行系谱BLUP和基因组BLUP分析,提供了清晰的实战步骤与命令示例,帮助用户快速上手并应用于实际科研与育种工作。

weixin_29209825的博客 493

ORBSLAM2系统学习(二)

ORBSLAM2学习

m0_46435948的博客 1355

标准化降水指数介绍

Mckee et al.(1993)认为降水量的减少是导致干旱的主要因素,其他气候因子一般变化较小,对干旱产生的影响不大,因此SPI使用降水量作为唯一参数。SPI能较好表达因降水量的大小反映干旱状况,操作简单,所需资料仅为降水量,同时该干旱指数在各个地区和各个时段都具有良好的计算稳定性,是继PDSI之后另一种被广泛应用的干旱指数。𝐻(𝑥)是Γ分布求得的概率,并当𝐻(𝑥)>0.5时,S=1;式中,𝛼是形状参数,𝛽是尺度参数,𝑥是当月降水量,𝛤(𝛼)是Gamma函数,用极大似然估计法计算最佳的𝛼和𝛽,即。

weixin_44259522的博客 2857

自定义View系列教程04--Draw源码分析及其实践

通过之前的详细分析,我们知道:在measure中测量了View的大小,在layout阶段确定了View的位置。 完成这两步之后就进入到了我们相对熟悉的draw阶段,在该阶段真正地开始对视图进行绘制。按照之前的惯例,我们来瞅瞅View中draw( )的源码 public void draw(Canvas canvas) { final int privateFlags = mPriv

谷哥的小弟 2万+

ORBSLAM3中一些opencv4的遗留问题(LOAD_IMREAD_UNCHANGED报错,CV_BGR2GRAY报错)

小车环境:Ubuntu18.04 ROS melodic Opencv 4.1.0 xtark机器人 Nvidia Jetson。

S1even_2hang的博客 1217

VN5620以太网测试——环境搭建篇

CANoe(CAN open environment)VN5620 :是一个紧凑而强大的接口,用于以太网网络的分析、仿真、测试和验证。VN5620 接口支持各种可能的应用。它适用于与其他总线系统、网络参与(例如在模拟和生成帧、测试中的负载和错误)的同步以太网监控。在2021年Vector公司的以太网接口卡VN5610和VN5640设备已经陆续停产,相应被VN5620和VN5650代替。

诊断协议那些事儿's blog 8926

ORBSLAM3 的改进

周六看到了ORBSLAM3的源码,安装运行后看了一下其代码结构,因为加IMU的部分是针对之前的ORB-VI, 因此大家可以参考jinpang的LearnORBVI可以更纯粹地学习视觉+IMU的组合; 这篇文章主要是针对其在Tracking线程做出的改动,尤其是添加Atlas后对Tracking部分的影响,LoopClosing和MapMerging的部分会在后面的分析中讲到,有错误也欢迎各位指正。 ORBSLAM3相对于ORBSLAM2做出的主要改动: 1. Atlas: 用于保存很多琐碎的地图;主要

1万+

CTK Plugin Framework插件框架学习1--Qt编译CTK

【代码】Qt编译CTK。

贝勒里恩的博客 7429

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

图解ORBSLAM2流程

这篇博文主要是梳理ORBSLAM2的流程,对于细节暂时不会很详细的描述(之后的博文会深究细节),且本博文暂时只描述ORBSLAM2中的Monocular(单目)情况。 在ORBSLAM2中,主要的三个线程是Tracking、LocalMapping、LoopClosing。三个线程的创建都是在System.cpp中,也就是在System类中的构造函数中创建了这三个线程。 以mono_tum.c...

zzpzm的博客 4881

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

(十一)ORBSLAM2在ROS下运行

ORBSLAM2运行ROS节点障碍   ORBSLAM2提供了与ROS耦合的应用程序,放在单独的ROS文件夹中。同样的,它提供了与ROS无关联的同类型的应用程序。不过,为了方便,笔者主要测试了它在ROS下的应用程序,因为笔者的摄像头是用ROS提供的openni2来驱动的,所以可以利用相机主题直接为ORBSLAM2提供输入图像。不过,笔者在跑通这个程序的过程中遇到了一些障碍,所以在...

weixin_30552635的博客 2293

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

【SLAM】ORBSLAM24Windows: ORBSLAM2 Project 4(for) Windows Platform

ORBSLAM24WindowsORBSLAM2 Project 4(for) Windows PlatformEasy built orbslam2 by visual studio on windows of both debug and release modeProject Page: ORBSLAM24WindowsThanks Original ORBSLAM2 project: ORB

phd的专栏 4435

ORBSLAM2 windows 下编译使用

上一篇文章编译了pangolin 0.5库,这次完整编译ORBSLAM2ORBSLAM2 原地址参考了这个大佬的ORBSLAM2 windows版本,应该可以直接用。

Xuewushu的博客 1058

SLAM入门之ORBSLAM2编译运行

ORBSLAM2的编译与运行 环境:Ubuntu16.04 ORBSLAM2 官网的源码和配置教程:https://github.com/raulmur/ORB_SLAM2 (1)安装工具 sudo apt-get install cmake sudo apt-get install Git sudo apt-get install gcc g++ (2) 安装pangolin 安装...

ykwjt的博客 2982

ORBSLAM24Windows:在Windows平台上轻松构建ORBSLAM2

ORBSLAM24Windows:在Windows平台上轻松构建ORBSLAM2 项目介绍 ORBSLAM24Windows 是一个专为Windows平台优化的ORBSLAM2项目。ORBSLAM2是一个基于特征点的视觉SLAM(Simultaneous Localization and Mapping)系统,广泛应用于机器人导航、增强现实等领域。该项目的目标是简化在Windows环境下构建ORB...

gitblog_01109的博客 770
上一篇: 四元数对于SO3具有double cover的理解
下一篇: ORBSLAM2中的关键帧插入判定
isErik
博客等级 码龄9年 38粉丝 54原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值