点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

作者丨paopaoslam

来源丨泡泡机器人SLAM

标题: Line as a Visual Sentence: Context-aware Line Descriptor for Visual Localization 作者: Sungho Yoon and Ayoung Kim

机构: KAIST

来源: RA-L

链接: https://arxiv.org/abs/2109.04753

视频: https://youtu.be/Ej4onCkA9pc

代码: https://github.com/yosungho/LineTR

编译: zhuhu

审核: 靳军

摘要

与特征点用作图像匹配相比较, 线特征在解决机器人学和计算机视觉中的视觉几何问题提供了更多的约束. 虽然最近基于卷及神经网络(CNN)的描述符在视角变化或者动态环境中效果很好.但是我们认为CNN结构将可变长的线特征抽象为固定维描述符,这存在天生缺陷. 在本文中,我们有效的提出了Line-Transformers,用来处理可变长的线特征. 受到自然语言处理(NLP)的启发,在神经网络中可以很好的理解和抽象句子,我们将线段视为包含点(词)的句子.通过动态关注直线上可描述的点,我们的描述符在可变长度的直线上表现出色.我们还提出了将实现的几何属性共享给领域的直线签名网络.作为组描述符,网络通过理解线条的相对几何来增强线条描述符.最后,我们提出了一种点-线定位中的线描述符和匹配算法(PL-Loc).同时证明了使用我们的线特征可以改善特征点的视觉定位.我们验证了所提出的单应估计和视觉定位的方法.

主要工作与贡献

  1. 我们提出了一种新颖的线分割描述符,使用transformer的框架将线分割表示为句子,点表示为词.利用NLP作为线描述符,我们能够处理可变长度的线特征.

  2. 所提出的线描述符通过关注线段中有意义的点来理解线分割,有效地将各种长度的线抽象为固定大小的描述符.

  3. 我们提出的线签名网络能够在领域内共享线特征的属性(比如:位置,长度,角度和描述子).作为一组线描述符来工作,这些线描述符能够学习到他们领域的几何属性.

算法流程

所提出的Line-Transformers旨在构建位于线段上的给定点的线描述符.整体框架如下

Line Transformers

1.Line Tokenizer(线标记): 在NLP中,单词标记化(word tokenization)是用于将句子分割成称为标记(token)的较小单词的过程。这些tokens是作为模型输入的最小单位.特殊的标记也可以用来实现不同的任务. 比如说分类标记[CLS]是将聚合序列表示为分类任务, 离析器(separator)[SEP]是用来找出两个句子的不同.通过将含义相似的单词分配到相似的向量空间,这些标记被转换成向量表示。使用向量表示标记的方法叫做词语嵌入,并且NLP模型利用他们去有效理解自然语言.在本文中,我们将点-线分割的关系当作是自然语言中的词和句子的关系. 如图3所示,线标记旨在生成点标记和他们对应的词语嵌入,以用来描述线分割.当从图片中检测出线分割后,均匀地在线分割上选择多个点p.点p的位置包含了图像的坐标和特征点的置信度..然后根据可区分度的级别确定点间间隔(v). 当点间间隔小,模型能够得到更多信息来描述线,但是也会需要更大的算力和内存.当线的长度为l,则点的数目是.与[CLS]标记在BERT中的那样,我们提出了特殊的线标记[LINE],用来聚集上下文中点标记的信息.线标记是一系列点标记的前置.

我们将每个点标记使用点嵌入的向量表示. 其中D是描述符的维数. 这是通过将每个点标记与每个像素处的描述符向量编码的密集描述符图中匹配的向量相关联来实现的.嵌入的特殊标记[LINE],表示线描述符的初始状态,并且其权值是在训练过程中被学习的. 最后,利用多层感知器对每个点的位置进行位置嵌入,得到位置嵌入.

2.Transformer: 得到了标记的嵌入,我们使用tranformers对线描述符进行了建模.Transformer编码器由两个子层组成:多头注意力机制(MSA)层和MLP层.而每个子层都具有剩余连接和层归一化(LN). 我们将transformer堆叠L次,如公式(1)所示.标记嵌入用作编码器输入.的第一个位置是线嵌入,用上标0表示,然后在最后一层处,线标记包含了线的上下文.

线签名网络(Line Signature Networks)

受到图神经网络中线签名和消息传递机制的启发,所提出的深度线签名网络旨在利用图关注网络GAT将线签名消息与每条线段共享.线签名一开始提出是作为一组线描述符存在的.它将相邻线段聚类为一组,并通过一系列角度和长度比确定相对位置,由于线条特征需要定义相邻线段的聚类范围和预定义的线条属性.因此我们提出了一种图关注网络,该网络可以隐式分配相邻线段,并传递包括位置在内的描述信息.

我们首先将中点(x,y), 角度,和长度等线特征属性提供给MLP来嵌入属性.然后,我们将其添加到描述符中,并且通过(2)中的消息传递网络来共享每个线分割的消息.操作符表示连结, m表示在一个图像中的线描述符的数量.同时将消息传递层堆叠M次,最后,我们在中对线描述符进行归一化,之后将他们输入到另一个MLP中.

Sublines to Keylines

对于transformers来说,输入的标记有最大尺寸()的限制.超过transformers的限制文本长度,那些较长的序列会在NLP中被截断. 与这种被截断的机制不同的是,我们利用关键线和子线的概念来处理长线段. 将原始的线分割成为keyline,当keyline的长度大于最大长度(), 我们将其分开为多个子线(sublines).在此基础上,通过键线与子线之间的关系,建立邻接矩阵。邻接矩阵中的值是1除以子行的数量.如图4(b)所示. 然后,子线的距离矩阵可以转换为keylines()的距离矩阵:

其中两个图像的邻接矩阵是和。子线的距离矩阵包括来自两幅图像的描述符之间的距离,该距离可以由匹配器(如最近邻)来计算.

和几何平均类似,Sublines to Keylines 通过邻接矩阵与距离矩阵的矩阵相乘,求出多条子线相对于一条keyline的平均距离.比如,在image1中的keylines和image2中的子线的距离可以用来表示.

损失函数(Loss Function)

我们使用一个具有半硬负抽样策略的三重损失函数. 三重损失函数的基本思想是使锚(Anchor)描述符和其匹配(positive)描述符之间的距离更近,并且同时利用不匹配(negative)描述符来进一步扩大距离.在线分割匹配阶段,一个图像中的一条线能够被另一张图片的超过两条线匹配到,这也意味着单一的锚(anchor)线特征能够有多个正匹配的线.在我们的算法中,我们选择重叠最多的线作为positive的点,整体的损失函数可以由如下表示:

其中将半硬负样本选择为远离正的硬负样本.我们观察到,半负抽样有助于稳定地收敛损失值.边距值提供了增加负距离的能力,我们将其设置为1.

实现细节

文中使用Line Segment Detector(LSD)实现对线特征的检测,因为它对各种环境都具有很强的泛化能力.我们选择SuperPoint作为我们前端的描述符地图,因为其对于尺寸为的图片的原始描述符地图尺寸为,我们设置8作为线中的点间隔.我们将子线中的点标记数目限制在大于2和小于21之间.一个线描述符,键值,查询,和在MSA(Multiple Self-Attentation)中的值与SuperPoint中有一样的维数. MSA有四个头值,在Line transformers和线签名网络中有L=12并且M=7层.我们的网络有14M个参数,在NVIDIA GTX 2080Ti GPU上平均速度可达到20ms,其中一个图片中有256个行描述符.它是使用ADAM优化器在Pytorch中实现的,学习率为0.001.

实验结果

我们从单应估计和视觉定位性能两个方面对我们的线描述子进行了评估。对于两个测试场景,我们将建议的方法与SuperPoint、手工创建的线描述符LBD、基于学习的线描述符LLD、WLD和SOLD2进行了比较。我们通过自己的行匹配器为LBD、LLD和WLD以及SOLD2使用最近邻(NN)匹配器。我们将SuperPoint作为基于点的匹配的参考。我们在每个数据集使用了最多512个点和1024个点。对于直线,我们提取了256条较长顺序的直线段。

结论

受处理不同长度句子和段落的NLP任务的启发,提出了一种利用注意机制有效地处理可变行长的新的行描述符。我们同时提出了一种PL-Loc的流程来同时利用关键点和关键线(keylines)用于视觉定位.我们的实验表明我们的线描述符在单应估计和视觉定位数据集中实现了SOTA的效果.

本文仅做学术分享,如有侵权,请联系删文。

3D视觉精品课程推荐:

1.面向自动驾驶领域的多传感器数据融合技术

2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)

9.从零搭建一套结构光3D重建系统[理论+源码+实践]

10.单目深度估计方法:算法梳理与代码实现

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、激光/视觉SLAM自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

线特征作为视觉描述:用于视觉定位的上下文感知线特征描述符相关推荐

  1. SIGIR 2022 | FRNet:上下文感知的特征强化模块

    ©作者 | 汪方野 单位 | 复旦大学 研究方向 | 推荐系统 数据挖掘 论文标题: Enhancing CTR Prediction with Context-Aware Feature Repre ...

  2. OneShot LiDAR Global Localization:基于单帧激光点云和视觉增强的全局定位方法

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者:robot L | 来源:知乎 https://zhuanlan.zhihu.com/p/150 ...

  3. 论文速递:一种用于视觉定位的基于NLP思路的直线特征匹配算法

    标题:Line as a Visual Sentence:Context-aware Line Descriptor for Visual Localization 作者:Sungho Yoon1 a ...

  4. Maplab:一个用于视觉惯性建图和定位研究的开源框架

    摘要 鲁棒且精确的视觉惯性估计是当今机器人领域的重要挑战.能够用先验地图(prior map)进行定位(localize)并获得准确且无漂移的姿态估计,可以推动该系统的适应性.然而,目前大多数可用的解 ...

  5. ORB_SLAM2 代码分析及介绍(视觉VO及重定位,Tracking)第一部分

    文章目录 什么是SLAM? 前端:视觉里程计(Visual Odometry) 后端:非线性优化(Optimization) 回环检测(Loop Closing) ORB_SLAM系列概述 ORB_S ...

  6. 视觉定位系统怎么实现定位及引导贴合的应用?视觉定位系统案例详解

    视觉定位系统采用先进的图像视觉检测技术,实现对高速运动的工业产品进行实时全面的视觉定位分析.机器视觉系统可以起到人类视觉的作用,利用自动化科技来替代人眼,使质量进一步升级,不仅可以提高工作效率,而且减 ...

  7. Learning a Deep Compact Image Representation for Visual Tracking 学习用于视觉跟踪的深度紧凑图像表示

    原文链接 摘要 在本文中,我们研究了跟踪可能非常复杂背景的视频中运动物体轨迹的挑战性问题.与大多数仅在线学习跟踪对象外观的现有跟踪器相比,我们采用不同的方法,受深度学习架构的最新进展的启发,更加强调( ...

  8. 低成本激光和视觉相结合的同步定位与建图研究

    低成本激光和视觉相结合的同步定位与建图研究 作者 尹磊,欧勇盛,江国来,彭建盛 文章目录 低成本激光和视觉相结合的同步定位与建图研究 1. 引言 2. 主要工作 3. 基于图优化的同步定位与地图构建框 ...

  9. 毫米波雷达视觉融合方案综述(数据级/决策级/特征级融合)

    摘要:本论文详细介绍了基于毫米波雷达和视觉融合的障碍物检测方法,从任务介绍.评估标准和数据集三方面展开. 转载自:自动驾驶之心 原文地址:毫米波雷达视觉融合方案综述(数据级/决策级/特征级融合) 自动 ...

最新文章

  1. 图片的略小图图片不显示的处理方法
  2. mysql主从切换gtid不一致_解决mysql使用GTID主从复制错误问题
  3. 信息系统项目管理师-计算题专题(二)成本类计算
  4. ITK:应用Exp负图像过滤器
  5. C语言中有bool变量吗?
  6. SD 模拟sip 读写子程序
  7. 2014年国际IT外包10大事件
  8. 12月10日站立会议
  9. ubuntu源码安装tensorflow
  10. 内蒙古2021年高考成绩查询系统入口,2021年内蒙古高考成绩查询网址,内蒙古高考成绩查询系统时间安排...
  11. 谈谈信息化、数字化、智能化和数智化的区别
  12. linux命令行如何打开浏览器,Linux下的命令行浏览器links
  13. 凉爽的天气,蓝蓝的天
  14. 剑指offer(专项突破版):数据结构与算法名企面试题精讲 刷题记录
  15. 电脑如何显示文件后缀名
  16. Apache启动失败,请检查相关配置。√MySQL5.1已启动。
  17. 给字体添加背景图 HTML+CSS
  18. 热启动计算机的快捷键,电脑怎么设置U盘启动 各品牌电脑热启动快捷键大全-电脑教程...
  19. iOS即时通讯,从入门到“放弃”?
  20. JMETER-性能测试

热门文章

  1. C++ 覆盖方法与重载方法
  2. 域服务器用户一直被锁,Windows Server 2019 域用户账户锁定策略
  3. 信用评分卡Credit Scorecards (1-7)
  4. 修改mp3图片和信息——BesMp3Editor
  5. 手机端 html5 按长按保存图片尺寸,html5移动端禁止长按图片保存的实现
  6. 宝宝咳嗽症状以及护理
  7. MATLAB Robotics Toolbox常用函数简介
  8. Android内置系统apk问题
  9. 线性离散系统的分析与校正
  10. nuc企业微信自动打卡 autojs