当前位置: 首页 > news >正文

视觉SLAM与定位之一前端特征点及匹配

视觉SLAM中的特征点及匹配

  • 参考文章或链接
  • 特征点性能的评估
  • 传统特征点和描述子(仅特征点或者特征点+描述子)
    • 传统描述子
  • 基于深度学习的特征点
  • 基于深度学习的描述子
  • 基于深度学习的特征点+描述子
  • 特征匹配

参考文章或链接

Image Matching from Handcrafted to Deep Features: A Survey
Image Matching across Wide Baselines: From Paper to Practice
Image Registration Techniques: A Survey
基于地图的视觉定位

特征点性能的评估

参考论文:

  • A performance evaluation of local descriptors
  • SuperPoint附录

重复率(repeatability)
角点检测平均误差
角点定位误差

简而言之, 一个好的特征点提取器, 在不同变化条件下(如视角、光照等)都能稳定准确地提取到同一空间3D点投影到图片上形成的2D点。

传统特征点和描述子(仅特征点或者特征点+描述子)

视觉特征点刚开始都是基于研究者思考而设计的,比如SIFT, SURF,ORB和Harris等,它们也被用于同一时期的视觉slam或定位中。
[Harris,1988] VINS
[Shi-Tomasi, 1994] MonoSLAM
[FAST,1998] ORB_SLAM, T265 VIO, MSCKF-VIO, OpenVSLAM, OKVIS, ROVIO, PTAM
[Blob and Corner] SOFT-SLAM
[SIFT, 1999] MSCKF
[FREAK,2012] Vision-Aided Localization For Ground Robots

传统描述子

[BRIEF, 2010] 与fast角点配合使用比较多, 如ORB_SLAM,LDSO等
[BRISK, 2011]:BRIEF的改进,具有尺度和旋转不变性

传统描述子的局限性:从人的感觉出发设计的,对计算机而言特异性不足,如无法应对光照视角等变化。

基于深度学习的特征点

CovDet
Quad-networks
AffNet
KeyNet
MagicPoint

基于深度学习的描述子

L2Net: 新的采样模式及误差, CVPR2017
DeepCD:浮点描述子与二值描述子互补,ICCV2017
Spread-out:学习描述子的空间分布,ICCV2017
HardNet:基于L2Net的改进误差, NIPS2017
SoSNet:基于二阶相似性正则化的学习型描述子,CVPR2019
GIFT:采用群卷集学习具有一定尺度和旋转不变性的描述子,NIPS2019
S2DNet:将描述子学习转化为分类问题,并采用由稀疏到稠密的方式进行训练,ECCV2020
CAPS:仅采用极线约束进行描述子学习。

基于深度学习的特征点+描述子

SuperPoint:自监督特征点与描述子学习,对光照具有一定鲁棒性, DX-SLAM,CVPR2018
LIFT:基于学习的不变特征变换,2016:
DISK:采用强化学习中的策略梯度法学习特征提取和描述, 对弱文理区域具有一定鲁棒性,NIPS2020
R2D2:针对特征点的可重复性和可靠性提出,NeurIPS2019
D2Net:局部特征共同检测与描述可训练的CNN,CVPR2019
ASLFeat:精确形状与定位的局部描述子学习,CVPR2020

基于深度学习的特征点及描述子往往是针对传统方法在实际应用中不足而提出的,其对光照、视角等的鲁棒性更加。

特征匹配

最近邻Knn匹配
FLANN匹配算法
GMS:利用运动平滑信息进行快速和鲁棒的特征匹配,CVPR2017
AdaLAM:兼顾对应点分布和仿射一致性的错误匹配剔除算法,图像分块做基于仿射变换RANSAC
SGM-Nets:使用神经网络进行半全局匹配,CVPR2017
PointCN:经过暴力匹配后,利用多层感知机提出错误匹配,CVPR2018
SuperGlue匹配:基于图神经网络和注意力机制的鲁棒匹配,CVPR2020
LoFTR:利用Transformer进行无特征提取器的局部特征匹配,CVPR2021

相关文章:

视觉SLAM与定位之一前端特征点及匹配

视觉SLAM中的特征点及匹配 参考文章或链接特征点性能的评估传统特征点和描述子(仅特征点或者特征点描述子)传统描述子 基于深度学习的特征点基于深度学习的描述子基于深度学习的特征点描述子特征匹配 参考文章或链接 Image Matching from Handcrafted t…...

开源项目的认识理解

目录 开源项目有哪些机遇与挑战? 1.开源项目的发展趋势 2.开源的经验分享(向大佬请教与上网查询) 3.开源项目的挑战 开源项目有哪些机遇与挑战? 1.开源项目的发展趋势 1. 持续增长与普及 - 开源项目将继续增长&#xff0c…...

37.哀家要长脑子了!--层序遍历

gongmi层序遍历模板 vector<vector<int>> levelOrder(TreeNode *root){queue<TreeNode*> que;vector<vector<int>> res;if(root ! nullptr)que.push(root);while(!que.empty()){int size que.size();vector<int> storey;for(int i 0; i …...

【从零开始AI绘画6】StableDiffusionWebUI拓展的安装方法以及推荐的几个拓展

这里写自定义目录标题 拓展Extention安装方法&#xff08;以双语对照插件为例&#xff09;1、WebUI内置的下载方式&#xff08;推荐&#xff09;2、git clone安装&#xff08;更推荐&#xff09;3、github下载安装包后解压&#xff08;不推荐&#xff09; 强力推荐安装的几个插…...

HTML5表单的自动验证、取消验证、自定义错误信息

1、自动验证 通过在元素中使用属性的方法&#xff0c;该属性可以实现在表单提交时执行自动验证的功能。下面是关于对元素内输入内容进行限制的属性的指定。 属性说明required输入内容是否不为空pattern输入的内容是否符合指定格式min、max输入的数值是否在min~max范围step判断…...

SpringMVC系列九: 数据格式化与验证及国际化

SpringMVC 数据格式化基本介绍基本数据类型和字符串自动转换应用实例-页面演示方式Postman完成测试 特殊数据类型和字符串自动转换应用实例-页面演示方式Postman完成测试 验证及国际化概述应用实例代码实现注意事项和使用细节 注解的结合使用先看一个问题解决问题 数据类型转换…...

判断链表中是否有环(力扣141.环形链表)

这道题要用到快慢指针。 先解释一下什么是快慢指针。 快慢指针有两个指针&#xff0c;走得慢的是慢指针&#xff0c;走得快的是快指针。 在这道题&#xff0c;我们规定慢指针一次走一步&#xff0c;快指针一次走2步。 如果该链表有环&#xff0c;快慢指针最终会在环中相遇&a…...

Kubernetes基于helm部署jenkins

Kubernetes基于helm安装jenkins jenkins支持war包、docker镜像、系统安装包、helm安装等。在Kubernetes上使用Helm安装Jenkins可以简化安装和管理Jenkins的过程。同时借助Kubernetes&#xff0c;jenkins可以实现工作节点的动态调用伸缩&#xff0c;更好的提高资源利用率。通过…...

【Linux】vim详解

1.什么是vi/vim? 简单来说&#xff0c;vi是老式的文本编辑器&#xff0c;不过功能已经很齐全了&#xff0c;但是还是有可以进步的地方。vim则可以说是程序开发者的一项很好用的工具&#xff0c;就连 vim的官方网站&#xff08; http://www.vim.org&#xff09;自己也说vim是一…...

Android11 mtk 第二次设置壁纸,锁屏壁纸不变的问题

1、情景:近日测试人员发现第一次更换壁纸后,主屏幕壁纸和锁屏壁纸均会改变;但第二次更换壁纸后,主屏幕壁纸会改变而锁屏壁纸不会改变。 2、要求:主屏幕壁纸和锁屏壁纸军改变 3、解决 路径:****\frameworks\base\services\core\java\com\android\server\wallpaper\Wallp…...

Java学习路线

目录 友情提醒第一章、Java基础1.1&#xff09;第一部分&#xff1a;Java 入门1.2&#xff09;第二部分&#xff1a;Java数组1.3&#xff09;第三部分&#xff1a;Java面向对象1.4&#xff09;第四部分&#xff1a;常用工具类1.5&#xff09;第五部分&#xff1a;集合体系1.6&a…...

java 实现人脸检测

1. 安装必要的库 确保你已经安装了JPEG库、BLAS和LAPACK库。在Ubuntu或Debian系统上&#xff0c;可以使用以下命令安装&#xff1a; sudo apt-get update sudo apt-get install libjpeg-dev libblas-dev liblapack-dev 在CentOS或Fedora系统上&#xff0c;可以使用以下命令安…...

VSCode神仙插件——Codeium (AI编程助手)

1、安装&登录插件 安装过程中会让你登录Codeium账户&#xff0c;可以通过Google账户登录&#xff0c;或者可以注册一个Codeium账户&#xff08;如果没有弹出让你登录账户的界面&#xff0c;可以等安装结束后在右下角找到登录的地方&#xff09; 右下角显示如下图所示&#…...

css文本划线效果(text-decoration相关属性详解)

/* 样式类型*/text-decoration: underline;/* 下划线颜色 */text-decoration-color: #ffcb15;/* 超出基线的字符不会被截断 */text-decoration-skip-ink: none;/*下划线厚度 */text-decoration-thickness: 5px;/* 与其原始位置的偏移距离 */text-underline-offset: 0;1. text-u…...

《Windows API每日一练》8.5 listbox控件

列表框是将一批文本字符串显示在一个具有滚动功能的方框中的控件。通过发送消息到列表框的窗口过程&#xff0c;程序可以添加或删除列表中的字符串。当列表框中的一个项目被选中时&#xff0c;列表框控件便发送 WM_COMMAND消息到其父窗口。然后父窗口确定哪个项目被选中。 本节…...

使用Node.js 框架( Express.js)来创建一个简单的 API 端点

文章目录 使用Node.js 框架&#xff08; Express.js&#xff09;来创建一个简单的 API 端点什么是express安装修改代码 express 自动刷新 使用Node.js 框架&#xff08; Express.js&#xff09;来创建一个简单的 API 端点 什么是express Express 是一个保持最小规模的灵活的 …...

企业服务行业CRM解决方案

企业服务行业CRM解决方案 强大的功能满足企业服务行业对客户管理、业务管理等方面的真实需求&#xff1b; 细分企业服务行业的不同领域&#xff0c;为不同业务场景提供个性化配置&#xff1b; 打通钉钉、企业微信等平台&#xff0c;降低企业使用CRM门槛&#xff0c;提供高性…...

服务器怎么进PE系统?

服务器进PE是指将服务器的操作系统切换到预安装环境&#xff08;Pre-Installation Environment&#xff09;的状态。在PE环境下&#xff0c;可以进行一些系统管理和故障排除的操作。在进入PE&#xff08;Preinstall Environment&#xff09;之前&#xff0c;首先需要确保你的服…...

Linux内核编译与调试menuos-linux-3.18.6-在ubuntu20.04环境

1 具体操作 下载 linux-3.18.6内核 wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.18.6.tar.xz解压进入linux-3.18.6文件夹 tar -xvf linux-3.18.6.tar.xz cd linux-3.18.6/编译 #make x86_64_defconfig # 为x86_64生成配置 #make alldefconfig make i3…...

java-mysql 三层架构

在 Java 应用程序中&#xff0c;三层架构&#xff08;Three-Tier Architecture&#xff09;是一种常见的设计模式&#xff0c;用于分离应用程序的表示层、业务逻辑层和数据访问层。这种架构有助于提高代码的可维护性、可扩展性和可重用性。以下是详细解释 Java 应用程序中使用 …...

打工人如何应对AI对工作岗位的风险

面对AI对工作岗位的潜在取代&#xff0c;我们可以从多个层面制定应对策略&#xff0c;以确保劳动力市场的平稳过渡和社会的可持续发展。以下是一些具体的应对策略&#xff1a; 一、加强教育与培训 提升STEM教育&#xff1a;增加科学、技术、工程和数学&#xff08;STEM&#…...

C++:从C语言过渡到C++

在这篇博客中&#xff0c;我将会介绍从C语言过渡到C的一些基础知识。 目录 C起源 C的关键字 输出hello&#xff0c;world ​编辑 命名空间 1.什么是命名空间 2.namespace的作用 3.域作用限定符 4.命名空间的使用 IO流 缺省参数 函数重载 引用 1.引用的定义 2.引…...

在安卓中使用FFmpeg录制摄像头的视频并保存到本地MP4文件

在移动应用开发中&#xff0c;有时需要利用设备的摄像头录制视频&#xff0c;并且希望在录制过程中能够精确控制视频的质量、格式和时长。FFmpeg作为一个强大的多媒体处理工具&#xff0c;提供了广泛的功能和选项&#xff0c;能够帮助我们实现这样的需求。 添加依赖 在安卓平台…...

Vue从零到实战第一天

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 非常期待和您一起在这个小…...

BUUCTF - Basic

文章目录 1. Linux Labs 【SSH连接漏洞】2. BUU LFI COURSE【文件包含漏洞】3. BUU BRUTE【暴力破解用户名密码】4. BUU SQL COURSE【SQL注入-当前数据库】5. Upload-Labs-Linux 1【文件上传漏洞】7. Buu Upload Course 1【文件上传包含漏洞】8. sqli-labs 1【SQL注入-服务器上…...

如何理解Node.js?NPM?Yarn?Vue?React?

一、背景 对后端技术栈更熟悉&#xff0c;对前端技术栈不了解&#xff0c;希望通过前后端的技术栈进行对比&#xff0c;可以更直观地了解前端技术栈。 二、Node.js Node.js 是一个基于 Chrome V8 JavaScript 引擎的 JavaScript 运行环境。它使得 JavaScript 可以在服务器端运…...

苹果入局,AI手机或将实现“真智能”?

【潮汐商业评论/原创】 “AI应用智能手机不就是现在的AI手机。” 当被问到现阶段对AI手机的看法时&#xff0c;John如是说。“术业有专攻&#xff0c;那么多APP在做AI功能&#xff0c;下载用就是了&#xff0c;也用不着现在换个AI手机啊。” 对于AI手机&#xff0c;或许大多…...

AI网络爬虫019:搜狗图片的时间戳反爬虫应对策略

文章目录 一、介绍二、输入内容三、输出内容一、介绍 如何批量爬取下载搜狗图片搜索结果页面的图片?以孙允珠这个关键词的搜索结果为例: https://pic.sogou.com/pics? 翻页规律如下: https://pic.sogou.com/napi/pc/searchList?mode=2&start=384&xml_len=48&am…...

Windows 网络重置及重置网络可能出现的问题( WIFI 没有了 / WLAN 图标消失)

当 Windows 网络出现本机故障时&#xff0c;一般从以下两个方面解决&#xff1a;网络栈和使用网络栈的组件或程序。 1、Winsock 组件问题 以管理身份运行 cmd&#xff0c;输入以下命令 netsh winsock reset重置 Winsock 组件以修复网络连接问题。 Winsock 是 Windows 操作系…...

100 个网络基础知识普及,看完成半个网络高手!

1&#xff09;什么是链接&#xff1f; 链接是指两个设备之间的连接。它包括用于一个设备能够与另一个设备通信的电缆类型和协议。 2&#xff09;OSI 参考模型的层次是什么&#xff1f; 有 7 个 OSI 层&#xff1a;物理层&#xff0c;数据链路层&#xff0c;网络层&#xff0…...

网站底部关键词内链/网络推广营销方式

如果问现代人一个问题&#xff0c;你身边最不能缺少的一样物品是什么&#xff0c;估计很多人会回答手机吧&#xff01;手机作为人类最先进便捷的通信工具&#xff0c;改变了我们工作、学习、生活&#xff0c;几乎可以完全代替电脑、电视等&#xff0c;其地位日益提高。随着需求…...

网盘做网站空间/网站做外链平台有哪些

系统集成是指通过结构化的综合布线系统和计算机网络技术&#xff0c;将各个分离的设备&#xff08;如个人电脑&#xff09;、功能和信息等集成到相互关联的、统一和协调的系统之中&#xff0c;使资源达到充分共享&#xff0c;实现集中、高效、便利的管理&#xff0c;以发挥整体…...

网站做等保测评/廊坊seo关键词优化

https://blog.csdn.net/zzq900503/article/details/49123387 运用场景: 导出excel后 发现 数值类型的字段 在excel中表现为文本类型&#xff0c;这样不利于计算。 解决办法: // 创建一个可写入的工作表 // Workbook的createSheet方法有两个参数&#xff0c;第一…...

网站怎么销售/百度公司简介

【我选择了放下】五年级杨丰源我看上去是一个很听话&#xff0c;热爱学习的孩子&#xff0c;可实际上我却是一个电脑迷。自从我迷恋上电脑&#xff0c;我的成绩一落千丈&#xff0c;每每考试成绩发下来&#xff0c;总少不了同桌和前后位的嘲笑&#xff0c;老师有时也会把我叫到…...

品牌网站方案/注册百度账号免费

# codingutf-8import sysimport xlrdimport random#打开菜单excelworkbook xlrd.open_workbook(D:\\menu.xls)#计数器为0counters 0#默认继续YesOrNo ywhile 1:#判断计数器&#xff0c;最多能选择3次if counters<3:#判断继续还是退出&#xff0c;默认是继续的if YesOrNoy…...

中山顺的网站建设/网站快照优化公司

8皇后问题&#xff08;改编&#xff09; 问题描述规则同8皇后问题&#xff0c;但是棋盘上每格都有一个数字&#xff0c;要求八皇后所在格子数字之和最大。输入格式一个8*8的棋盘。输出格式所能得到的最大数字和样例输入1 2 3 4 5 6 7 89 10 11 12 13 14 15 1617 18 19 20 21 22…...