一种基于全局特征和引导信息的特征点检测与描述方法技术

技术编号:35994933 阅读:17 留言:0更新日期:2022-12-17 23:11
本发明专利技术公开了一种基于全局特征和引导信息的特征点检测与描述方法,该方法通过在Transformer框架基础上进行改进和优化,在全局特征上进行检测和描述,避免了局部感受野带来的性能限制;同时通过引入特征点引导信息,使特征点检测和描述变得更加智能和鲁棒。一方面预先估计特征点位置,为网络提供先验位置信息,提升训练效率;另一方面,引导信息有利于网络提升对尺度和旋转等因素的鲁棒性。本发明专利技术将Transformer框架和特征点检测任务结合,通过成熟的传统方法生成的引导信息,可以避免掉大部分的误检测;同时在一些细节地方减少了冗余的计算量,对于特征点检测与描述算法在实际工程的应用有很大的帮助。程的应用有很大的帮助。程的应用有很大的帮助。

【技术实现步骤摘要】
一种基于全局特征和引导信息的特征点检测与描述方法


[0001]本专利技术属于图像处理和计算机视觉领域,特别涉及一种基于全局特征和引导信息的特征点检测与描述方法。

技术介绍

[0002]特征点检测与描述作为计算机视觉中一个重要的研究问题,是三维重建、运动估计结构和同时定位与建图等视觉任务的基础。特征点检测与描述是在不同视角和成像条件下在不同图像的相同场景中检测出稀疏的特征点并加以向量描述,核心问题是检测的稳定性和描述的鲁棒性。
[0003]特征点检测与描述方法经历了传统方法到深度学习方法的发展。在计算机视觉早期,研究人员根据自身的相关经验与领域知识,提出许多方法如经典的SIFT算法来提取稳定的特征点和生成鲁棒的描述符,虽然这些方法具有优秀的特征如尺度不变、旋转不变、对噪声和光照鲁棒等,但是受限于研究人员的先验知识和检测的感受野,检测精度和描述符性能有限。近年来,由于卷积神经网络(Convolutional Neural Networks,CNN)的强大特征提取能力,基于CNN的特征点检测与描述算法快速发展起来。参考文献“LIFT:Learned Invariant Feature Transform[C],Yi K M,Trulls E,Lepetit V,et al.,European conference on computer vision.2016:467

483”中Yi等人提出了SIFT的可训练版本LIFT算法,利用CNN网络进行特征点检测、方向估计和特征点描述符的计算。为了将三个子任务在一个同一模型框架中学习,引入空间转换层(Spatial Transformer Networks,STN)来修正图像块得到特征点检测和方向估计结果,同时使用soft argmax策略代替传统的非极大值抑制策略。LIFT算法使用SIFT算法的检测结果作为特征点位置真值进行有监督训练,其性能好于之前的算法。但是,由于LIFT的检测真值取决于SIFT的检测结果,其性能极大地受监督信号所限制,会阻止网络学习监督信号中不存在的特征点。为了不依赖于监督信号,参考文献“Superpoint:Self

supervised interest point detection and description[C],DeTone,D.,Malisiewicz,T.,&Rabinovich,A.,In Proceedings of the IEEE conference on computer vision and pattern recognition workshops.2018:224

236”中DeTone等人提出了全卷积网络SuperPoint,联合计算像素级别的特征点位置和相关的描述符。在SuperPoint中,构建了一个合成数据集用于伪真值的生成和预训练,引入的单应性自适应模块能使它实现自监督训练,让网络从数据中学习区分特征点的好坏。但是,在重复样式的区域(如高楼的窗户)和极端光照下,由于卷积网络下采样带来的感受野增长和分辨率下降的固有矛盾,描述符性能差。为了提升描述符的鲁棒性,参考文献“R2d2:Reliable and repeatable detector and descriptor[J],Revaud,Jerome,et al.,Advances in neural information processing systems.2019:12405

12415”中Revaud等人提出了R2D2算法。虽然R2D2算法仍采用全卷积网络,但是为了维持特征图的分辨率,R2D2网络摒弃了下采样层,避免特征图变得粗糙;同时使用空洞卷积代替步长卷积,增大特征图的感受野;在特征点位置分支和描述符向量分支基础上,增加了特征点可靠性分支,提升了特征点在图
像中样式重复区域的鲁棒性。但是,虽然维持了特征图的分辨率,但是空洞卷积带来的感受野增益小,使得R2D2的性能提升有限。参考文献“DenserNet:Weakly supervisedvisual localization using multi

scale feature aggregation[C],Liu D,Cui Y,Yan L,et al.,Proceedings of the AAAI Conference on Artificial Intelligence.2021:6101

6109”中Liu等人提出DenserNet算法,基于现有的全卷积网络,在不同语义层次上聚合特征图,使得特征图包含不同分辨率的信息,提升特征图的性能;DenserNet在没有像素级标注的情况下进行端到端训练,使用弱监督的三重排序损失来学习判别性特征,增强检测精度和描述符的性能。
[0004]现有算法使用全卷积网络进行特征点检测和描述,但是基于CNN的特征计算会面临特征图分辨率和感受野的矛盾,限制特征点检测与描述的性能,这种影响很难通过扩充数据集或迭代训练来避免。同时,现有算法在训练和测试时仅仅依赖于图像像素信息和网络结构来进行检测,而没有使用任何先验信息,这可能会限制检测的速度和精度。本专利技术针对现有方法的不足,设计了一种基于全局特征和引导信息的特征点检测与描述方法。一方面,全局特征可以给检测和描述过程提供全局的感受野和全分辨率,提升检测和描述的性能;另一方面,引导信息能够帮助算法智能快速预先估计可能特征点的位置,而不会阻止网络寻找其他特征点。

技术实现思路

[0005]本专利技术属于图像处理和计算机视觉领域,涉及特征点的检测与描述、特征点的引导信息生成、全局特征提取等一系列方法,通过在Transformer框架基础上进行改进和优化,在全局特征上进行检测和描述,避免了局部感受野带来的性能限制。通过引入特征点引导信息进行特征辅助解码,一方面预先估计特征点位置,为网络提供先验位置信息,提升训练效率和检测精度;另一方面,引导信息有利于网络提升对尺度和旋转等因素的鲁棒性,对于本专利技术提出的方法之后在单应性估计、三维重建等实际工程的应用有很大的帮助。
[0006]本专利技术提出了一种基于全局特征和引导信息的特征点检测与描述方法,该方法包括如下步骤:
[0007]1.构造训练数据集:收集一系列图片数据,构建训练数据集D。对于训练数据集D中任意一张图片I∈D,大小为W
×
H
×
C,其中W、H、C分别表示训练图片I的宽、高、通道数。将I输入步骤2构建的网络N中。
[0008]2.构建端到端的特征点检测和描述网络N:网络N由编码器网络N
E
、引导信息生成网络N
G
和解码器网络N
D
组成。其中,编码器网络N
E
由分块层N
EB
、线性嵌入层N
EE
、位置编码层N
EP
和特征编码层N
EF
级联组成;引导本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于全局特征和引导信息的特征点检测与描述方法,其特征在于,该方法包括以下步骤:S1)构造训练数据集:收集一系列图片数据,构建训练数据集D,对于训练数据集D中任意一张图片I∈D,大小为W
×
H
×
C,其中W、H、C分别表示图片I的宽、高、通道数;将I输入步骤2构建的网络N中;S2)构建端到端的特征点检测和描述网络N,将图片I输入构建的网络N中,得到图片I的描述符向量图,其中,网络N由编码器网络N
E
、引导信息生成网络N
G
和解码器网络N
D
组成;S3)对图片I增加随机噪声δ,进行随机平移、旋转和颜色变化,得到增广图片I
*
,大小为W
×
H
×
C,其中W、H、C分别表示增广图片I
*
的宽、高、通道数;设单应性矩阵为图片I和增广图片I
*
间重叠区域的像素位置对应关系,表示实数域,表示所有3
×
3实矩阵;将增广图片I
*
输入步骤S2)构建的网络N中,得到位置响应图和描述符向量图大小分别为W
×
H和W
×
H
×
N
F
;S4)构建网络N的损失函数L(I,I
*
),损失函数L(I,I
*
)由特征点位置损失L
P
(I,I
*
)和描述符损失L
D
(I,I
*
)组成:L(I,I
*
)=L
P
(I,I
*
)+βL
D
(I,I
*
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)其中,超参数β用于平衡特征点位置损失和描述符损失的比例;S5)训练特征点检测和描述网络N遍历训练数据集D中所有图片,实施步骤S2)到S4),完成一轮训练;当完成预设的e轮训练后,得到训练完成的特征点检测和描述网络N;S6)测试特征点检测和描述网络N将测试图片I
t
输入训练完成的特征点检测和描述网络N,最终得到特征点集合,其中测试图片I
t
的大小为W
t
×
H
t
×
C
t
,W
t
、H
t
、C
t
分别表示测试图片I
t
的宽、高、通道数。2.根据权利要求1所述的基于全局特征和引导信息的特征点检测与描述方法,其特征在于,所述步S2)具体包括:S21)设计编码器网络N
E
,N
E
由分块层N
EB
、线性嵌入层N
EE
、位置编码层N
EP
和特征编码层N
EF
组成;分块层N
EB
将输入图片I划分为不重叠的M块,块大小为S
×
S
×
C,其中S、C分别表示块的空间大小和通道数,块数与块大小的关系为将每个块展平为1维列向量,大小为(S
·
S
·
C)
×
1,得到块向量序列{b
(1)
,b
(2)
,...,b
(M)
},其中表示第i
b
个块向量,i
b
∈{1,2,...,M};S22)将块向量序列{b
(1)
,b
(2)
,...,b
(M)
}输入线性嵌入层N
EE
,得到嵌入向量序列{e
(1)
,e
(2)
,...,e
(M)
},其中表示第i
e
个嵌入向量,i
e
∈{1,2,...,M},其中,线性嵌入层N
EE
由n层多层感知机级联组成,将块向量通过公式(2)映射为嵌入向量通过公式(2)映射为嵌入向量的大小为N
e
×
1,其中i
be
∈{1,2,...,M},N
e
表示嵌入向量的元素个数,其中,N
EE
(
·
)表示线性嵌入层执行的操作,W
EE
和b表示线性嵌入层的权重和偏置;S23)将嵌入向量序列{e
(1)
,e
(2)
,...,e
(M)
}输入位置编码层N
EP
,输出位置嵌入向量序列其中,位置编码层N
EP
将嵌入向量与第i
ep
块区域的可学习位置参数
相加,得到位置嵌入向量相加,得到位置嵌入向量和大小都为N
e
×
1,其中i
ep
∈{1,2,...,M},其中,N
EP
(
·
)表示位置编码层执行的操作;S24)将位置嵌入向量序列输入特征编码层N
EF
,输出编码特征序列其中的大小为N
f
×
1,i=1,2,...,M,N
f
表示编码特征的元素个数,特征编码层N
EF
由L个transformer基本块重复级联组成,其中,每个transformer基本块由一个多头自注意力层MSA、一层多层感知机MLP和两个层正则LN组成;设第j个transformer基本块的输入序列为其中j∈{1,2,...,L},设向量序列与矩阵一一对应,其中矩阵Z
j
由向量序列按列拼接得到,向量序列由矩阵Z
j
按列分块得到,第j+1个transformer基本块将序列映射编码为序列映射编码为序列其中,LN(
·
)表示层正则操作,MSA(
·
)表示多头注意力操作,Z
j
和Z
j+1
分别表示第j个transformer基本块输入序列对应的矩阵和输出序列对应的矩阵,MSA(
·
)函数的计算如下所示:其中,X表示MSA(
·
)的输入矩阵,head
k
表示多头自注意力层第k个头的输出,Concat表示在行维度上的拼接操作,h表示多头自注意力层中头的个数,W
O
表示多头自注意力层的输出映射矩阵,分别表示第k个头的查询映射矩阵、键映射矩阵、值映射矩阵,k∈{1,2,...,h},d
X
表示输入矩阵X的行数;MLP(
·
)函数的计算如下所示:Y=MLP(X

)=W
M
·
X

+b
M
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)其中,X

表示MLP(
·
)函数的输入矩阵,W
M
和b
M
为MLP的权重和偏置;将记为作为特征编码层最终输出的编码特征序列;S25)设计引导信息生成网络N
G
,N
G
由检测层N
GD
、分块层N
GB
和线性嵌入层N
GE
级联组成,检测层N
GD
使用其他任意特征点检测算法A对输入图片I进行特征点检测,得到掩膜矩阵M
mask
,大小为W
×
H
×
C,其中矩阵M
mask
中非特征点位置处C个通道的值均为0,特征点位置处C个通道的值均为1;S26)分块层N
GB
对掩膜矩阵M
mask
进行分块,每个块大小为S
×
S
×
C,块数为M;将每个块展平为1维列向量,得到掩膜向量序列{m
(1)
,m
(2)
,...,m
(M)
},其中第i
m
个掩膜向量的大小为(S
·
S...

【专利技术属性】
技术研发人员:王正宁商勇彬曾珍妮罗兴隆冯妤婕
申请(专利权)人:电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1