CN113570535A - 视觉定位方法及相关装置、设备 - Google Patents
视觉定位方法及相关装置、设备 Download PDFInfo
- Publication number
- CN113570535A CN113570535A CN202110874103.0A CN202110874103A CN113570535A CN 113570535 A CN113570535 A CN 113570535A CN 202110874103 A CN202110874103 A CN 202110874103A CN 113570535 A CN113570535 A CN 113570535A
- Authority
- CN
- China
- Prior art keywords
- image
- landmark
- sample
- feature
- point
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 230000000007 visual effect Effects 0.000 title claims abstract description 69
- 230000004927 fusion Effects 0.000 claims abstract description 40
- 238000001514 detection method Methods 0.000 claims description 93
- 238000005192 partition Methods 0.000 claims description 65
- 238000012545 processing Methods 0.000 claims description 49
- 238000000605 extraction Methods 0.000 claims description 46
- 230000007246 mechanism Effects 0.000 claims description 23
- 238000012549 training Methods 0.000 claims description 23
- 238000013507 mapping Methods 0.000 claims description 11
- 239000013598 vector Substances 0.000 description 30
- 238000010586 diagram Methods 0.000 description 27
- 230000008569 process Effects 0.000 description 25
- 230000006870 function Effects 0.000 description 18
- 238000004364 calculation method Methods 0.000 description 16
- 238000005070 sampling Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 5
- 230000004807 localization Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 239000011800 void material Substances 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000002349 favourable effect Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000009827 uniform distribution Methods 0.000 description 2
- 241001270131 Agaricus moelleri Species 0.000 description 1
- 241000209504 Poaceae Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/32—Indexing scheme for image data processing or generation, in general involving image mosaicing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种视觉定位方法及相关装置、设备,其中,视觉定位方法包括:提取待定位图像的第一特征图像和第二特征图像;其中,第一特征图像包含局部特征信息,第二特征图像包含全局特征信息;融合第一特征图像和第二特征图像,得到融合特征图像;基于融合特征图像,检测得到待定位图像中的目标地标点;基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息,得到待定位图像的位姿参数;其中,待定位图像是对预设场景拍摄得到的,场景地图是对预设场景进行三维建模得到的。上述方案,能够提高视觉定位的准确性和鲁棒性,特别是在存在弱纹理、重复纹理的情况下,能够提高视觉定位的准确性和鲁棒性。
Description
技术领域
本申请涉及计算机视觉技术领域,特别是涉及一种视觉定位方法及相关装置、设备。
背景技术
随着电子信息技术的发展,增强现实、虚拟现实、混合现实等应用等到了越来越广泛的应用。诸如此类应用通常要求较优的视觉定位准确性和鲁棒性,以达到更好的视觉效果,增强用户体验。
目前,通常以类似热力图的方式检测局部极值,从而检测出图像中地标点,然而在图像中存在弱纹理、重复纹理等情况下,地标点的检出难度陡增,造成无法估计出相机位姿。有鉴于此,如何提高视觉定位的准确性和鲁棒性成为亟待解决的问题。
发明内容
本申请提供一种视觉定位方法及相关装置、设备。
本申请第一方面提供了一种视觉定位方法,包括:提取待定位图像的第一特征图像和第二特征图像;其中,第一特征图像包含局部特征信息,第二特征图像包含全局特征信息;融合第一特征图像和第二特征图像,得到融合特征图像;基于融合特征图像,检测得到待定位图像中的目标地标点;基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息,得到待定位图像的位姿参数;其中,待定位图像是对预设场景拍摄得到的,场景地图是对预设场景进行三维建模得到的。
因此,提取待定位图像的第一特征图像和第二特征图像,且第一特征图像包含局部特征信息,第二特征图像包含全局特征信息,在此基础上,融合第一特征图像和第二特征图像,得到融合特征图像,并基于融合特征图像,检测得到待定位图像中的目标地标点,从而基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息,得到待定位图像的位姿参数,且待定位图像是对预设场景拍摄得到的,场景地图是对预设场景进行三维建模得到的,由于第一特征图像包括局部特征信息,第二特征图像包含全局特征信息,而融合特征图像又是融合两者所得到的,故能够大大扩展融合特征图像中像素点的感受野,从而能够有利于大大提升位于弱纹理、重复纹理区域像素点的特征表示的准确性,进而能够提高目标地标点的准确性,在此基础上再基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息得到位姿参数,有利于提升视觉定位的准确性和鲁棒性。
其中,视觉定位方法还包括:基于注意力机制、多尺度特征提取网络中至少一者,对第一特征图像处理,得到第二特征图像。
因此,基于注意力机制处理第一特征图像,图像中各个位置均能够获取到其他位置对其的重要程度,从而使得第二特征图像中像素点不仅能够包含像素点对应图像位置本身的特征信息,还能够根据重要程度参考到其他图像位置的特征信息,即能够从重要程度角度获取全局特征信息,而基于多尺度特征提取网络处理第一特征图像,能够从不同尺度角度获取全局特征信息,故此通过从不同角度来获取全局特征信息,有利于提升第二特征图像的准确性。
其中,基于注意力机制、多尺度特征提取网络中至少一者,对第一特征图像处理,得到第二特征图像包括:基于注意力机制对第一特征图像进行处理,得到第一全局图像,并将多尺度提取网络提取的多尺度特征图像进行融合,得到第二全局图像;融合第一全局图像和第二全局图像,得到第二特征图像。
因此,基于注意力机制对第一特征图像进行处理,得到第一全局图像,并将多尺度提取网络提取到的多尺度特征图像进行融合,得到第二全局图像,在此基础上再融合第一全局图像和第二全局图像,得到第二特征图像,故能够同时从重要程度角度和不同尺度角度两种角度获取全局特征信息,能够有利于进一步提高第二特征图像的准确性。
其中,第一全局图像和第二全局图像均为多通道图像;融合第一全局图像和第二全局图像,得到第二特征图像,包括:将第一全局图像和第二全局图像进行通道混洗,得到第三全局图像;对第三全局图像进行通道融合,得到第二特征图像。
因此,在第一全局图像和第二全局图像均为多通道图像的情况下,将第一全局图像和第二全局图像进行通道混洗,得到第三全局图像,并对第三全局图像进行通道融合,得到第二特征图像,能够有利于充分融合第一全局图像和第二全局图像,从而能够有利于进一步提高第二特征图像的准确性。
其中,基于融合特征图像,检测得到待定位图像中的目标地标点,包括:利用地标检测模型处理融合特征图像,得到第一地标预测图像和第一方向预测图像;对第一地标预测图像和第一方向预测图像进行分析,得到目标地标点;其中,目标地标点为预设场景的若干地标点中的至少一个,若干地标点是从预设场景的场景地图中选择得到的,第一地标预测图像包括待定位图像中像素点的预测地标属性,第一方向预测图像包括待定位图像中像素点的第一方向属性,预测地标属性用于标识像素点对应的地标点,第一方向属性包括指向地标投影的第一方向信息,地标投影表示像素点对应的地标点在待定位图像中的投影位置。
因此,通过利用地标检测模型处理融合特征图像,得到第一地标预测图像和第一方向预测图像,第一地标预测图像包括待定位图像中像素点的预测地标属性,第一方向预测图像包括待定位图像中像素点的第一方向属性,预测地标属性用于标识像素点对应的地标点,第一方向属性包括指向地标投影的第一方向信息,地标投影表示像素点对应的地标点在待定位图像中的投影位置,在此基础上,再对第一地标预测图像和第一方向预测图像进行分析,得到目标地标点,由于第一地标预测图像包括各个像素点所对应的地标点,而第一方向预测图像包括各个像素点指向地标投影的方向信息,故能够大大降低弱纹理、重复纹理、动态环境等因素对视觉定位的影响,提高定位鲁棒性。
其中,地标检测模型包括地标预测网络,利用地标检测模型处理融合特征图像,得到第一地标预测图像包括:利用地标预测网络对融合特征图像进行解码,得到第一特征预测图像;其中,第一特征预测图像包括待定位图像中像素点的第一特征表示;对于每一像素点,基于局部敏感哈希处理像素点的第一特征表示,得到像素点的预测地标属性;基于待定位图像中各个像素点的预测地标属性,得到第一地标预测图像。
因此,地标检测模型包括地标预测网络,并利用地标预测网络对融合特征图像进行解码,得到第一特征预测图像,且第一特征预测图像包括待定位图像中像素点的第一特征表示,对于每一像素点,再基于局部敏感哈希处理像素点的第一特征表示,得到像素点的预测地标属性,从而基于待定位图像中各个像素点的预测地标属性,得到第一地标预测图像,由于基于局部敏感哈希来确定每一像素点的预测地标属性,故能够有利于大大减少计算量,提高视觉定位的响应速度。
其中,基于局部敏感哈希处理像素点的第一特征表示,得到像素点的预测地标属性,包括:基于局部敏感哈希映射像素点的第一特征表示,确定像素点所在的第一目标分区;其中,第一目标分区属于多个第一哈希分区,多个第一哈希分区由若干地标点的地标特征表示经局部敏感哈希处理得到,地标特征表示是在地标检测模型训练收敛之后得到的;选取第一目标分区内的地标点,作为第一候选地标点;基于像素点的第一特征表示分别与各个第一候选地标点的地标特征表示之间的相似度,得到像素点的预测地标属性。
因此,基于局部敏感哈希映射像素点的第一特征表示,确定像素点所在的第一目标分区,且第一目标分区属于多个第一哈希分区,多个第一哈希分区由若干地标点的地标特征表示经局部哈希敏感处理得到,地标特征表示是在地标检测模型训练之后得到的,在此基础上,选取第一目标分区的地标点,作为第一候选地标点,并基于像素点的第一特征表示分别与各个第一候选地标点的地标特征表示之间的相似度,得到像素点的预测地标属性,由于无需对每个地标点计算其地标特征表示与像素点的第一特征表示之间的相似度,故能够有利于大大减少计算量,提高视觉定位的响应速度。
其中,目标地标点是利用地标检测模型检测得到的,且目标地标点为预设场景的若干地标点中的至少一个,若干地标点是从预设场景的场景地图中选择得到的,若干地标点分别位于场景地图各个子区域的预设位置处,地标检测模型的训练步骤包括:分别确定子区域和地标点在样本图像的投影区域和投影位置;基于投影区域和投影位置,确定样本图像中样本像素点的样本地标属性和样本方向属性;其中,样本地标属性用于标识样本像素点对应的样本地标点,且样本地标点为投影区域覆盖样本像素点的子区域所含的地标点,样本方向属性包括指向样本像素点对应的样本地标点的投影位置的样本方向信息;分别基于样本地标属性和样本方向属性,得到样本图像的样本地标图像和样本方向图像;其中,样本地标图像中第一像素点标注有对应的样本像素点的样本地标属性,样本方向图像中第二像素点标注有对应的样本像素点的样本方向属性;利用地标检测模型对样本图像进行预测,得到样本图像的第二特征预测图像和第二方向预测图像;其中,第二特征预测图像包括样本像素点的第二特征表示,第二方向预测图像包括样本像素点的第二方向属性,第二方向属性包括指向样本地标投影的第二方向信息,且样本地标投影表示样本地标点在样本图像中的投影位置;基于样本地标图像和第二特征预测图像,得到第一损失,并基于样本方向图像和第二方向预测图像,得到第二损失;基于第一损失和第二损失,优化地标检测模型的网络参数。
因此,分别确定子区域和地表点在样本图像的投影区域和投影位置,并基于投影区域和投影位置,确定样本图像中样本像素点的样本地标属性和样本方向属性,且样本地标属性用于标识样本像素点对应的样本地标点,样本地标点为投影区域覆盖样本像素点的子区域所含的地标点,样本方向属性包括指向样本像素点对应的样本地标点的投影位置的样本方向信息,再分别基于样本地标属性和样本方向属性,得到样本图像的样本地标图像和样本方向图像,且样本地标图像中第一像素点标注有对应的样本像素点的样本地标属性,样本方向图中第二像素点标注有对应的样本像素点的样本方向属性,在此基础上,再利用地标检测网络对样本图像进行预测,得到样本图像的第二特征预测图像和第二方向预测图像,且第二特征预测图像包括样本像素点的第二特征表示,第二方向图像包括指向样本地标投影的第二方向信息,且样本地标投影表示样本地标点在样本图像中的投影位置,从而基于样本地标图像和第二特征预测图像,得到第一损失,并基于样本方向图像和第二方向预测图像,得到第二损失,以及基于第一损失和第二损失,优化地标检测模型的网络参数,故能够精确构建训练样本,并通过预先构建的样本地标图像和样本方向图像作为先验来监督地标检测模型的训练,有利于提升地标检测模型的检测性能。
其中,基于样本地标图像和第二特征预测图像,得到第一损失,包括:获取各个地标点的待优化特征表示;对于样本图像中样本像素点,将样本地标属性所标识的样本地标点的待优化特征表示作为样本像素点的正例特征表示,并基于局部敏感哈希对样本像素点的第二特征表示的处理结果,选择一个参考特征表示作为样本像素点的负例特征表示,以及基于第二特征表示与正例特征表示之间的第一相似度和第二特征表示与负例特征表示之间的第二相似度,得到子损失;其中,参考特征表示包括除正例特征表示之外的待优化特征表示;基于样本图像中样本像素点的子损失,得到第一损失。
因此,获取各个地标点的待优化特征表示,对于样本图像中样本像素点,将样本地标属性所标识的样本地标点的待优化特征表示作为样本像素点的正例特征表示,并基于局部敏感哈希对样本像素点的第二特征表示的处理结果,选择一个参考特征表示作为样本像素点的负例特征表示,以及基于第二特征表示与正例特征表示之间的第一相似度和第二特征表示与负例特征表示之间的第二相似度,得到子损失,且参考特征表示包括除正例特征表示之外的待优化特征表示,在此基础上,再基于样本图像中样本像素点的子损失,得到第一损失,由于基于局部敏感哈希对样本像素点的第二特征表示的处理结果来选择负例特征表示,故能够有利于大大减少计算量,提高视觉定位的响应速度。
其中,基于局部敏感哈希对样本像素点的第二特征表示的处理结果,选择一个参考特征表示作为样本像素点的负例特征表示,包括:基于局部敏感哈希映射样本像素点的第二特征表示,确定样本像素点所在的第二目标分区;其中,第二目标分区属于多个第二哈希分区,多个第二哈希分区由若干地标点的待优化特征表示经局部敏感哈希处理得到;选取第二目标分区内的地标点,作为第二候选地标点;其中,第二候选地标点不包含样本像素点对应的样本地标点,处理结果包括第二候选地标点;基于样本像素点的第二特征表示分别与各个第二候选地标点的待优化特征表示之间的相似度,得到样本像素点的负例特征表示。
因此,基于局部敏感哈希映射样本像素点的第二特征表示,确定样本像素点所在的第二目标分区,且第二目标分区属于多个第二哈希分区,多个第二哈希分区由若干地标点的待优化特征表示经局部敏感哈希处理得到,在此基础上,选取第二目标分区内的地标点,作为第二候选地标点,且第二候选地标点不包含样本像素点对应的样本地标点,处理结果包括第二候选地标点,以及基于样本像素点的第二特征表示分别与各个第二候选地标点的待优化特征表示之间的相似度,得到样本像素点的负例特征表示,由于无需对每个地标点计算其待优化特征表示与样本像素点的第二特征表示之间的相似度,故能够有利于大大减少计算量,提高地标检测模型的训练速度。
其中,子区域是对场景地图的表面进行划分得到的;和/或,预设位置包括子区域的中心位置;和/或,各个子区域之间的面积差异低于预设阈值。
若干子区域是对场景地图的表面进行划分得到的,由于待定位图像通常是对预设场景表面的成像,故能够有利于提高在待定位图像中所检测的目标地标点的准确性;而将预设位置设置为包括子区域的中心位置,能够有利于进一步提高地标点分布均匀的特性,有利于提升点对质量;此外,将各个子区域之间的面积差异设置为低于第一阈值,能够有利于进一步提高地标点分布均匀的特性,有利于提升点对质量。
本申请第二方面提供了一种视觉定位装置,包括:特征提取模块、特征融合模块、地标检测模块和位姿确定模块,特征提取模块,用于提取待定位图像的第一特征图像和第二特征图像;其中,第一特征图像包含局部特征信息,第二特征图像包含全局特征信息;特征融合为模块,用于融合第一特征图像和第二特征图像,得到融合特征图像;地标检测模块,用于基于融合特征图像,检测得到待定位图像中的目标地标点;位姿确定模块,用于基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息,得到待定位图像的位姿参数,其中,待定位图像是对预设场景拍摄得到的,场景地图是对预设场景进行三维建模得到的。
本申请第三方面提供了一种电子设备,包括相互耦接的存储器和处理器,处理器用于执行存储器中存储的程序指令,以实现上述第一方面中的视觉定位方法。
本申请第四方面提供了一种计算机可读存储介质,其上存储有程序指令,程序指令被处理器执行时实现上述第一方面中的视觉定位方法。
上述方案,提取待定位图像的第一特征图像和第二特征图像,且第一特征图像包含局部特征信息,第二特征图像包含全局特征信息,在此基础上,融合第一特征图像和第二特征图像,得到融合特征图像,并基于融合特征图像,检测得到待定位图像中的目标地标点,从而基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息,得到待定位图像的位姿参数,且待定位图像是对预设场景拍摄得到的,场景地图是对预设场景进行三维建模得到的,由于第一特征图像包括局部特征信息,第二特征图像包含全局特征信息,而融合特征图像又是融合两者所得到的,故能够大大扩展融合特征图像中像素点的感受野,从而能够有利于大大提升位于弱纹理、重复纹理区域像素点的特征表示的准确性,进而能够提高目标地标点的准确性,在此基础上再基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息得到位姿参数,有利于提升视觉定位的准确性和鲁棒性。
附图说明
图1是本申请视觉定位方法一实施例的流程示意图;
图2是场景地图一实施例的示意图;
图3是利用地标检测模型检测目标地标点一实施例的示意图;
图4是定位目标地标点一实施例的示意图;
图5是图1中步骤S13一实施例的流程示意图;
图6是利用SIFT特征进行视觉定位一实施例的示意图;
图7是利用地标点进行视觉定位一实施例的示意图;
图8是第一地标预测图像一实施例的示意图;
图9是第一方向预测图像一实施例的示意图;
图10是训练地标检测模型一实施例的流程示意图;
图11是计算第一损失一实施例的示意图;
图12是本申请视觉定位装置一实施例的框架示意图;
图13是本申请电子设备一实施例的框架示意图;
图14是本申请计算机可读存储介质一实施例的框架示意图。
具体实施方式
下面结合说明书附图,对本申请实施例的方案进行详细说明。
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、接口、技术之类的具体细节,以便透彻理解本申请。
本文中术语“***”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
请参阅图1,图1是本申请视觉定位方法一实施例的流程示意图。具体而言,可以包括如下步骤:
步骤S11:提取待定位图像的第一特征图像和第二特征图像。
本公开实施例中,第一特征图像包含局部特征信息,第二特征图像包含全局特征信息。具体地,第一特征图像中像素点包含待定位图像中某一区域的局部特征信息,而第二特征图像中像素点包含待定位图像整体的全局特征信息。
在一个实施场景中,待定位图像是对预设场景拍摄得到的。预设场景可以根据实际应用需要进行设置。例如,在需要在景区实现视觉定位的情况下,预设场景可以包含景区;或者,在需要在商业街实现视觉定位的情况下,预设场景可以包括商业街;或者,在需要在工业园区实现视觉定位的情况下,预设场景可以包括工业园区。其他情况可以以此类推,在此不再一一举例。
在另一个实施场景中,待定位图像可以是以任意视角拍摄预设场景而得到的。例如,待定位图像可以仰拍预设场景而得到的;或者,待定位图像可以是俯拍预设场景而得到的;或者,待定位图像可以是平拍预设场景而得到的。
在又一个实施场景中,为了提高视觉定位的准确性,在拍摄预设场景时相机光轴与水平面之间夹角应低于预设角度阈值,即待定位图像中应尽可能多地包含预设场景,而尽可能少地包含地面、天空等无效区域。
在一个实施场景中,为了提高视觉定位效率,可以预先训练一个地标检测模型,该地标检测模型包括原始特征提取网络,用于提取待定位图像的第一特征图像。具体地,原始特征提取网络可以包括但不限于:卷积层、池化层等,在此不做限定。再次基础上,可以基于注意力机制、多尺度特征提取网络中的至少一者对第一特征图像处理得到第二特征图像。上述方式,基于注意力机制处理第一特征图像,图像中各个位置均能够获取到其他位置对其的重要程度,从而使得第二特征图像中像素点不仅能够包含像素点对应图像位置本身的特征信息,还能够根据重要程度参考到其他图像位置的特征信息,即能够从重要程度角度获取全局特征信息,而基于多尺度特征提取网络处理第一特征图像,能够从不同尺度角度获取全局特征信息,故此通过从不同角度来获取全局特征信息,有利于提升第二特征图像的准确性。
在一个具体的实施场景中,在提取到第一特征图像的基础上,可以基于注意力机制处理第一特征图像,得到第二特征图像。需要说明的是,上述注意力机制可以包括但不限于自注意力机制等,在此不做限定。以自注意力机制为例,对于第一特征图像中每一像素点而言,可以获取第一特征图像中各个像素点对其的重要程度,再利用各个像素点对其重要程度分别对各个像素点的特征信息进行加权处理,得到该像素点的加权特征,基于此可以基于各个像素点的加权特征,得到第二特征图像。上述方式,能够根据重要程度参考到其他图像位置的特征信息,即能够从重要程度角度获取全局特征信息。
在另一个具体的实施场景中,在提取到第一特征图像的基础上,可以基于多尺度特征提取网络处理第一特征图像,得到第二特征图像。需要说明的是,上述多尺度特征网络可以包括但不限于:ASPP(Atrous Spatial Pyramid Pooling,空洞空间卷积池化金字塔)等,在此不做限定。以ASPP为例,对于第一特征图像而言,可以利用不同采样率的空洞卷积对第一特征图像进行特征提取,得到多尺度特征图像,且每种尺度特征图像中像素点的感受野不同,例如,对于采样率为1的空洞卷积而言,其所提取得到的特征图像中像素点的感受野为3*3,而对于采样率为2的空洞卷积而言,其所提取得到的特征图像中像素点的感受野为7*7,对于采样率为4的空洞卷积而言,其所提取得到的特征图像中像素点的感受野为15*15。需要说明的是,空洞卷积的采样率可以根据实际情况设置,上述举例并不限定空洞卷积实际采用的采样率。基于此,可以将多尺度特征图像进行融合,即可得到第二特征图像。具体可以将多尺度特征图像进行拼接,再将拼接后的多尺度特征图像进行通道融合,得到第二特征图像。例如,可以采用若干卷积层对拼接后的多尺度特征图像进行通道融合,得到第二特征图像。此外,若干卷积层具体可以包含1*1卷积核。上述方式,能够从不同尺度角度获取全局特征信息,故此通过从不同角度来获取全局特征信息,有利于提升第二特征图像的准确性。
在又一个具体的实施场景中,在提取到第一特征图像的基础上,可以基于注意力机制对第一特征图像进行处理,得到第一全局图像,并将多尺度特征提取网络提取的多尺度特征图像进行融合,得到第二全局图像,具体过程可以参阅前述相关描述,在此不再赘述。在此基础上,再融合第一全局图像和第二全局图像,得到第二特征图像。具体地,可以将第一全局图像和第二全局图像进行拼接,再将拼接后的全局图像进行通道融合,得到第二特征图像。例如,可以采用若干卷积层对拼接后的全局图像进行通道融合,得到第二特征图像,此外,若干卷积层具体可以包括1*1卷积核;或者,在第一全局图像和第二全局图像均是多通道图像的情况下,还可以将第一全局图像和第二全局图像进行通道混洗(即channelshuffle),得到第三全局图像。以第一全局图像为A通道图像且第二全局图像为B通道图像为例,可以按序混洗,即可以将第一全局图像中第i通道图像和第二全局图像中第i通道图像拼接,得到第i通道混洗图像,对i+1通道、i+2通道等以此类推,最后可以按照通道先后顺序拼接所有通道混洗图像,得到第三全局图像;或者,也可以随机混洗,即可以将第一全局图像中第i通道图像和第二全局图像中第j通道图像拼接,得到第k通道混洗图像,对于其他通道可以以此类推,最后可以拼接所有通道混洗图像,得到第三全局图像。在得到第三全局图像的基础上,可以对第三全局图像进行通道融合,得到第二特征图像。例如,可以采用若干卷积层对第三全局图像进行通道融合,得到第二特征图像,此外,若干卷积层具体可以包括1*1卷积。上述方式,能够同时从重要程度角度和不同尺度角度两种角度获取全局特征信息,能够有利于进一步提高第二特征图像的准确性。
在又一个具体的实施场景中,如前所述,为了提高视觉定位效率,可以预先训练一个地标检测模型,该地标检测模型包括原始特征提取网络,用于提取待定位图像的第一特征图像。在此基础上,为了提取深层特征,原始特征提取网络可以包括顺序连接的多个网络层,如可以包括顺序连接的多个卷积层,在此不做限定。基于此,可以将其中一个网络层所提取的特征图像作为第一特征图像,例如,可以将第一个网络层所提取的特征图像作为第一特征图像,或者也可以将第二个网络层多提取的特征图像作为第一特征图像,在此不做限定。进一步地,为了降低运算量,可以将最后一个网络层所提取的特征图像作为第一特征图像。
在又一个具体的实施场景中,为了提高视觉定位效率,可以预先训练一个地标检测模型,且该地标检测模型包括原始特征提取网络、注意力机制网络、多尺度特征提取网络,其中原始特征提取网络用于提取第一特征图像,注意力机制网络用于基于第一特征图像提取第一全局图像,多尺度特征提取网络用于基于第一特征图像提取第二全局图像,在此基础上,可以融合第一全局图像和第二全局图像得到第二特征图像,并融合第一特征图像和第二特征图像得到融合特征图像,具体过程可以参阅前述相关描述,在此不再赘述。
步骤S12:融合第一特征图像和第二特征图像,得到融合特征图像。
具体地,可以将第一特征图像和第二特征图像进行拼接,再利用若干卷积层(如,2个卷积层)对拼接之后的第一特征图像和第二特征图像进行通道融合,得到融合特征图像。此外,若干卷积层可以包括1*1卷积核,具体可以利用1*1卷积核在通道维度对拼接之后的第一特征图像和第二特征图像进行通道融合,得到融合特征图像,具体融合过程可以参阅1*1卷积核相关技术细节,在此不再赘述。
需要说明的是,在现实场景中,预设场景有可能存在弱纹理、重复纹理等情况。例如,建筑表面为纯色(如,白色、红色等)时,表现为弱纹理,而建筑表面组合排列有同一种花色的瓷砖时,表现为重复纹理,在此不再一一举例。在此情况下,通过融合包含局部特征信息的第一特征图像和包含全局特征信息的第二特征图像,能够使得融合特征图像中像素点不仅包含像素点对应位置的图像特征还包含其他位置的图像特征,从而能够显著提升对弱纹理、重复纹理的抵御能力,提升视觉定位的准确性和鲁棒性。经试验发现,在存在弱纹理、重复纹理的情况下,通过融合第一特征图像和第二特征图像所得到的融合特征图像来进行地标点检测,能够大大提升地标点检测的鲁棒和准确性,
步骤S13:基于融合特征图像,检测得到待定位图像中的目标地标点。
在一个实施场景中,如前所述,待定位图像是对预设场景拍摄得到的,而目标地标点可以为预设场景的若干地标点中的至少一个,切若干地标点是从预设场景的场景地图中选择得到的,场景地图是对预设场景进行三维建模得到的,若干地标点分别位于场景地图各个子区域的预设位置处。为了便于描述,预设场景的若干地标点可以记为{q1,q2,...,qn},目标地标点可以为上述若干地标点{q1,q2,...,qn}中的至少一个。上述方式,通过将场景地图表面均匀划分为若干子区域,并在若干子区域的中心位置选择得到地标点,故地标点均匀分布于场景地图表面,从而无论以何种视角对预设场景拍摄待定位图像,待定位图像中均含有足够的地标点,进而能够有利于提高视觉定位的鲁棒性。
在一个具体的实施场景中,可以预先采集预设场景的拍摄视频,并利用三维重建算法对拍摄视频进行处理,得到预设场景的场景地图。三维重建算法可以包括但不限于:MultiView stereo、Kinect fusion等,在此不做限定。三维重建算法的具体过程,可以参阅其具体技术细节,在此不再赘述。
在一个具体的实施场景中,若干子区域是对场景地图的表面进行划分得到的。具体地,可以通过三维过分割算法(如,supervoxel)将场景地图的表面划分为若干子区域。请结合参阅图2,图2是场景地图一实施例的示意图。如图2所示,不同灰度区域表示场景地图表面的不同子区域。
在一个具体的实施场景中,预设位置可以包括子区域的中心位置。请继续结合参阅图2,如图2所示,子区域中黑点即表示在该子区域所确定的地标点。
在一个具体的实施场景中,各个子区域之间的面积差异可以低于第一阈值,第一区域可以根据实际情况进行设置,如可以设置为:10像素点、15像素点、20像素点等等,在此不做限定。也就是说,各个子区域的具有相似尺寸。
在一个实施场景中,如前所述,为了提高地标检测的效率和准确性,可以预先训练一个地标检测模型,从而可以利用地标检测模型处理融合特征图像,得到第一地标预测图像和第一方向预测图像,第一地标预测图像包括待定位图像中像素点的预测地标属性,第一方向预测图像包括待定位图像中像素点的第一方向属性,预测地标属性用于标识像素点对应的地标点,第一方向属性包括指向地标投影的第一方向信息,地标投影表示像素点对应的地标点在待定位图像中的投影位置。在此基础上,再对第一地标预测图像和第一方向预测图像进行分析,得到目标地标点。具体地,地标检测模型的训练过程,可以查阅下述相关公开实施例,在此暂不赘述。区别于前述方式,由于第一地标预测图像包括各个像素点所对应的地标点,而第一方向预测图像包括各个像素点指向地标投影的方向信息,故能够大大降低动态环境影响,提高定位鲁棒性。
在一个具体的实施场景中,请结合参阅图3,图3是利用地标检测模型检测目标地标点一实施例的示意图。如图3所示,地标检测模型可以包括原始特征提取网络、注意力机制网络、多尺度特征提取网络、地标预测网络和方向预测网络,则可以利用原始特征提取网络对待定位图像进行特征提取,得到第一特征图像,并将第一特征图像分别输入注意力机制网络和多尺度特征提取网络,分别得到第一全局图像和第二全局图像,以及融合第一全局图像和第二全局图像,得到第二特征图像,并融合第一特征图像和第二特征图像,得到融合特征图像。具体过程可以参阅前述相关描述,在此不再赘述。在此基础上,再利用地标预测网络对融合特征图像进行地标预测,得到第一地标预测图像,以及利用方向预测网络对融合特征图像进行方向预测,得到第一方向预测图像,即地标预测网络和方向预测网络分别负责预测地标和方向,且地标预测网络和方向预测网络共享融合特征图像,故能够有利于提高预测效率。
在另一个具体的实施场景中,请继续结合参阅图3,为了便于描述,具有相同预测地标属性的像素点以相同灰度显示,也就是说,图3所示的第一地标预测图像中,以相同灰度显示的像素点其对应于相同地标点(如,前述若干地标点{q1,q2,...,qn}中某一地标点)。进一步地,为了便于描述,在第一方向预测图像中可以通过不同灰度来表示像素点的方向预测属性。如图3中示例所示,0度方向、45度方向、90度方向、135度方向、180度方向、225度方向、270度方向以及315度方向分别以不同灰度表示。需要说明的是,图3所示的第一地标预测图像和第一方向预测图像仅仅是实际应用过程一种可能的表现形式,通过不同灰度来表示预测地标属性和预测方向属性,能够实现地标检测模型的预测可视化。在实际应用过程中,也可以直接以数字来表示地标预测网络和方向预测网络的输出结果,在此不做限定。
在又一个具体的实施场景中,请结合参阅图4,图4是定位目标地标点一实施例的示意图。如图4所示,图中空心圆表示在待定位图像中定位得到的目标地标点,右下角矩形框区域是对左上角矩形框区域的放大示意图,如右下角矩形框区域所示,相同灰度的像素点表示具有相同预测地标属性,方向箭头表示像素点的预测方向属性,因此可以基于该相同的预测地标属性,确定该预测地标属性所标识的目标地标点(如,{q1,q2,...,qn}中某一地标点),并基于这些具有相同预测地标属性的像素点的预测方向属性,确定该目标地标点在待定位图像中的位置信息(如,图中实心圆所示位置),例如,可以通过确定图4所示方向箭头的交点,确定目标地标点在待定位图像中的位置信息。具体过程可以参阅下述公开实施例中相关描述,在此暂不赘述。
在又一个具体的实施场景中,第一地标预测图像和第一方向预测图像两者可以与待定位图像尺寸相同;或者,第一地标预测图像和第一方向预测图像至少一者也可以与待定位图像尺寸不同。
在又一个具体的实施场景中,具体可以将DeepLabV3作为地标检测模型的骨干网络,其能够通过空间金字塔池化来显著扩大感受野。
步骤S14:基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息,得到待定位图像的位姿参数。
本公开实施例中,需要说明的是,待定位图像是对预设场景拍摄得到的,而场景地图是对预设场景进行三维建模得到的。具体可以参阅前述相关描述,在此不再赘述。
需要说明的是,目标地标点在待定位图像中的第一位置信息可以是二维坐标,目标地标点在场景地图中的第二位置信息可以是三维坐标。此外,如前所述,地标点是从预设场景的场景地图中选择得到的,且场景地图是对预设场景进行三维建模得到的,故地标点在场景地图中的第二位置信息可以直接基于场景地图确定得到。在此基础上,可以基于目标地标点的标号以及场景地图中若干地标点的标号,确定若干地标点中标号与目标地标点对应的地标点,并将对应的地标点的第二位置信息,作为目标地标点的第二位置信息。请结合参阅图4,在检测得到若干目标地标点(即图中空心圆)的基础上,可以基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息,可以建立若干2D-3D点对,基于若干2D-3D点对,可以恢复得到待定位图像的位姿参数(如,6自由度参数)。具体地,可以采用基于RANSAC(Random Sample Consensus,即随机抽样一致)PnP算法求取位姿参数。具体算法步骤可以参阅RANSAC PnP的技术细节,在此不再赘述。
上述方案,提取待定位图像的第一特征图像和第二特征图像,且第一特征图像包含局部特征信息,第二特征图像包含全局特征信息,在此基础上,融合第一特征图像和第二特征图像,得到融合特征图像,并基于融合特征图像,检测得到待定位图像中的目标地标点,从而基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息,得到待定位图像的位姿参数,且待定位图像是对预设场景拍摄得到的,场景地图是对预设场景进行三维建模得到的,由于第一特征图像包括局部特征信息,第二特征图像包含全局特征信息,而融合特征图像又是融合两者所得到的,故能够大大扩展融合特征图像中像素点的感受野,从而能够有利于大大提升位于弱纹理、重复纹理区域像素点的特征表示的准确性,进而能够提高目标地标点的准确性,在此基础上再基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息得到位姿参数,有利于提升视觉定位的准确性和鲁棒性。
请参阅图5,图5是图1中步骤S13一实施例的流程示意图。如图5所示,具体可以包括如下步骤:
步骤S51:利用地标检测模型处理待融合特征图像,预测得到第一地标预测图像和第一方向预测图像。
本公开实施例中,第一地标预测图像包括待定位图像中像素点的预测地标属性,第一方向预测图像包括待定位图像中像素点的第一方向属性,预测地标属性用于标识像素点对应的地标点,第一方向属性包括指向地标投影的第一方向信息,地标投影表示像素点对应的地标点在待定位图像中的投影位置。此外,第一地标预测图像和第一方向预测图像两者可以与待定位图像尺寸相同,或者,第一地标预测图像和第一方向预测图像至少一者可以与待定位图像尺寸不同,具体可以参阅前述公开实施例中相关描述,在此不再赘述。
在一个实施场景中,如前述公开实施例所述,若干地标点可以记为{q1,q2,...,qn},则预测地标属性可以包括像素点对应的地标点的标号,即在预测地标属性包括i的情况下,像素点对应的地标点为qi。
在一个实施场景中,第一方向信息具体可以包括第一方向矢量,该第一方向矢量指向地标投影。需要说明的是,在地标检测模型的检测性能极佳的情况下,地标检测模型所预测出来的第一方向矢量可能准确地指向地标投影,在实际应用过程中,地标检测模型的检测性能受限于各种因素可能无法达到极佳,在此情况下,地标检测模型所预测出来的第一方向矢量可能并非准确指向地标投影,如第一方向矢量所指向的位置与地标投影之间可以存在一定的角度偏差(如,1度、2度、3度等),由于待定位图像中各个像素点均能够预测得到一个第一方向矢量,故通过多个像素点的第一方向矢量,能够修正单个第一方向矢量可能存在的方向偏差,具体过程可以参阅下述相关描述,在此暂不赘述。
在一个实施场景中,如前述公开实施例所述,地标检测模型可以包括地标预测网络和方向预测网络,则可以利用地标预测网络对融合特征图像进行地标预测,得到第一地标预测图像,以及利用方向预测网络对融合特征图像进行方向预测,得到第一方向预测图像。也就是说,地标预测网络和方向预测网络可以共享融合特征图像,具体可以参阅前述公开实施例相关描述,在此不再赘述。
在一个具体的实施场景中,如前所述,第一方向信息可以包括第一方向矢量,该第一方向矢量具体可以为一个模值为1的单位矢量。
在另一个具体的实施场景中,利用地标预测网络可以对特征图像进行解码,得到第一特征预测图像,且第一特征预测图像包括待定位图像中像素点的第一特征表示,在此基础上,可以基于像素点的第一特征表示分别与各个地标点的地标特征表示之间的相似度,得到像素点的预测地标属性,且地标特征表示是在地标检测模型训练收敛之后得到的,并基于待定位图像中各个像素点的预测地标属性,得到第一地标预测图像。具体地,在地标检测模型的训练过程中,可以维护并更新一个地标特征表示集合P,该地标特征表示集合P包含各个地标点(如,前述{q1,q2,...,qn})的待优化特征表示,在地标检测模型训练收敛之后,即可学习到预设场景各个地标点的特征信息,这些特征信息即反映于各个地标点收敛之后的待优化特征表示中。为了便于区分,可以将训练收敛的待优化特征表示称之为地标特征表示。地标检测模型的训练过程,具体可以参阅下述公开实施例,在此暂不赘述。
此外,对于每一像素点,可以计算像素点的第一特征表示分别与各个地标点(如,前述{q1,q2,...,qn})的地标特征表示之间的相似度,并选择最高相似度对应的地标点,作为像素点对应的地标点,从而可以采用该地标点标识像素点,得到像素点的预测地标属性。例如,可以计算像素点的第一特征表示分别与各个地标点的地标特征表示之间的内积,并选取最小内积对应的地标点在预设场景的若干地标点中的标号(如,1、2、……、n等)来标识该地标点,以得到预测地标属性。在得到待定位图像中每个像素点的预测地标属性之后,即可得到第一地标预测图像。
在又一个具体的实施场景中,如前所述,可以利用地标预测网络可以对特征图像进行解码,得到第一特征预测图像,且第一特征预测图像包括待定位图像中像素点的第一特征表示,区别于前述方式,为了应对现实场景中地标点较多(如,成百上千,甚至上万个)所导致的计算负荷沉重的问题,对于每一像素点,可以基于局部敏感哈希处理像素点的第一特征表示,得到像素点的预测地标属性,并基于待定位图像中各个像素点的预测地标属性,得到第一地标预测图像。上述方式,由于基于局部敏感哈希来确定每一像素点的预测地标属性,故能够有利于大大减少计算量,提高视觉定位的响应速度。具体地,可以基于局部敏感哈希映射像素点的第一特征表示,确定像素点所在的第一目标分区,且第一目标分区属于多个第一哈希分区(bucket),多个第一哈希分区由若干地标点的地标特征表示经局部敏感哈希处理得到,地标特征表示是在地标检测模型训练收敛之后得到的,在此基础上,可以选取第一目标分区内的地标点,作为第一候选地标点,并基于像素点的第一特征表示分别与各个第一候选地标点的地标特征表示之间的相似度,得到像素点的预测地标属性,故此仅需计算像素点的第一特征表示分别与各个第一候选地标点的地标特征表示之间的相似度,即可确定像素点的预测地标属性,从而能够有利于大大减少计算量,提高视觉定位的响应速度。需要说明的是,与一般哈希算法不同的是,局部敏感哈希具有位置敏感性,即散列前类似的数据点,在散列后仍然能够保证在一定程度的相似,且有一定的概率保证。以若干地标点有6个为例,为了便于描述,其地标特征表示以八维向量进行表示,需要说明的是,在现实场景中,地标特征表示可以为其他维度,如512维等,在此不做限定。其中,第一地标点的地标特征表示为10001000,第二地标点的地标特征表示为11001000,第三地标点的地标特征表示为10001100,第四地标点的地标特征表示为11001100,第五地标点的地标特征表示为11111100,第六地标点的地标特征表示为11111110,且局部敏感哈希所采样的哈希函数簇包含3个哈希函数,第一个哈希函数用于取第2位和第4位,第二个哈希函数用于取第1位和第6位,第三个哈希函数用于取第3位和第8位,在此基础上,第一个哈希函数处理上述地标点的地标特征表示之后,可以得到4个第一哈希分区:“00”第一哈希分区(第一地标点和第三地标点所在)、“01”第一哈希分区(无地标点所在)、“10”第一哈希分区(第二地标点和第四地标点所在)、“11”第一哈希分区(第五地标点和第六地标点所在);类似地,第二个哈希函数处理上述地标点的地标特征表示之后,可以得到4个第一哈希分区:“00”第一哈希分区(无地标点所在)、“01”第一哈希分区(无地标点所在)、“10”第一哈希分区(第一地标点和第二地标点所在)、“11”第一哈希分析(第三至第六地标点所在);类似地,第三个哈希函数处理上述地标点的地标特征表示之后,可以得到4个第一哈希分区:“00”第一哈希分区(第一至第四地标点所在)、“01”第一哈希分区、“10”第一哈希分区(第五地标点和第六地标点所在)、“11”第一哈希分区(无地标点所在)。对于某一第一特征表示为11111111的像素点而言,分别经过第一个哈希函数、第二个哈希函数以及第三哈希函数处理之后,可以确定其所在的第一目标分区为“11”第一哈希分区,故可以选取第四至第六地标点为第一候选地标点,再分别计算上述第四至第六地标点的地标特征表示与该像素点的第一特征表示之间的相似度,将最大相似度对应的地标点作为该像素点对应的地标点,从而得到该像素点的预测地标属性。在哈希函数簇为其他函数的情况下,可以以此类推,在此不再一一举例。
需要说明的是,若像素点的第一特征表示与各个地标点的地标特征表示之间的相似度均较低(如,均低于一个相似度阈值),则可以认为该像素点为与预设场景无关的无效像素点(如,天空、地面等),在此情况下,可以采用一个特殊标记(如,0)来进行标识。
步骤S52:对第一地标预测图像和第一方向预测图像进行分析,得到目标地标点。
在一个实施场景中,可以获取具有相同预测地标属性的像素点所构成的候选区域,即可以通过像素点的预测地标属性,将对应于相同地标点的像素点所构成的图像区域,作为一个候选区域。在此基础上,可以统计候选区域中像素点的第一方向属性的一致性情况,也就是说,对于每一候选区域,可以统计该候选区域中像素点的第一方向属性的一致性情况,从而可以得到各个候选区域的一致性情况。故此,可以在一致性情况满足预设条件的情况下,将候选区域中像素点的预测地标属性所标识的地标点作为目标地标点,并基于候选区域中像素点的第一方向属性,得到目标地标点在待定位图像中的第一位置信息。上述方式,在基于候选区域中像素点的预测地标属性确定目标地标点之前,先对候选区域中像素点的第一方向属性的一致性情况进行检测,从而能够有利于确保候选区域中像素点的第一方向属性的一致性,提高后续所构建的点对的质量,进而能够有利于提高视觉定位的准确性和鲁棒性。
在一个具体的实施场景中,为了进一步提升视觉定位的准确性和鲁棒性,在统计候选区域中像素点的第一方向属性的一致性情况之前,还可以先检测候选区域的区域面积是否小于第二阈值,若候选区域的区域面积小于第二阈值,则可以过滤该候选区域。上述方式,能够有利于预先滤除不稳定区域(如,草丛、树木等随自然条件而极易发生形态变化的区域),有利于进一步提高后续所构建的点对的质量,进而能够有利于提高视觉定位的准确性和鲁棒性。
在另一个具体的实施场景中,如前所述,第一方向信息具体可以包括第一方向矢量,则对于每一候选区域,可以先获取该候选区域中像素点之间的第一方向矢量的交点,再统计交点的外点率,得到该候选区域的一致性情况。在此情况下,预设条件可以相应设置为外点率低于外点率阈值,即如前所述,地标检测模型所预测得到的第一方向矢量可能存在方向偏差,在此情况下,候选区域中各个像素点的第一方向矢量可能并不会准确相交于一点(即地标投影),则可以预先设置一个外点率阈值,并利用基于直线求交模型的RANSAC算法(即RANSAC with a vote intersection model,具体可以参阅其相关技术细节,在此不再赘述),计算外点率,若候选区域的外点率低于外点率阈值,则可以认为地标检测模型针对该候选区域所预测的方向一致性较好,反之,如候选区域的外点率不低于外点率阈值,则可以认为地标检测模型针对该候选区域的学习效果欠佳或者该候选区域本身存在较大噪声,为了防止后续影响视觉定位的准确性和鲁棒性,可以直接过滤该候选区域。
在又一个具体的实施场景中,以候选区域对应于地标点j为例,地标点j在待定位图像中的初始位置信息可以由前述基于直线求交模型的RANSAC算法计算得到,这些初始位置信息可以通过类似于EM迭代算法进一步进行优化,以得到地标点j在待定位图像中的第一位置信息,具体优化过程,可以参阅EM迭代算法的技术细节,在此不再赘述。需要说明的是,如前所述,在迭代优化过程中,若候选区域的的一致性情况欠佳,则可以直接舍弃该候选区域。
请结合参阅图6、图7、图8和图9,图6是利用SIFT(Scale-Invariant FeatureTransform,尺度不变特征变换)特征进行视觉定位一实施例的示意图,图7是利用地标点进行视觉定位一实施例的示意图,图8是第一地标预测图像一实施例的示意图,图9是第一方向预测图像一实施例的示意图。基于图8所示的第一地标预测图像,可以统计到图7右侧箭头在图8所指候选区域的区域面积过小,故可以过滤该不稳定的候选区域(从图7可以看出该候选区域对应于树木),并基于图9所示的第一方向预测图像,可以统计到图7左侧箭头在图9所指候选区域的一致性情况欠佳,故可以过滤该候选区域。在此基础上,可以基于过滤之后剩余的候选区域,得到目标地标点(如图7中X标记所示)。此外,关于图8所示的第一地标预测图像中不同灰度像素点的含义和图9所示的第一方向预测图像中不同灰度像素点的含义,可以参阅前述相关描述,在此不再赘述。与之不同的是,如图6所示,利用SIFT特征进行视觉定位,可以得到数量庞大的特征点(如图6中空心圆所示),且这些特征点中存在诸如对应于树木等不稳定区域的干扰点,从而一方面由于特征点数量过于庞大,导致后续视觉定位计算量陡增,另一方面由于特征点中极易存在干扰点,影像后续视觉定位的准确性和鲁棒性。
上述方案,通过利用地标检测模型处理融合特征图像,得到第一地标预测图像和第一方向预测图像,第一地标预测图像包括待定位图像中像素点的预测地标属性,第一方向预测图像包括待定位图像中像素点的第一方向属性,预测地标属性用于标识像素点对应的地标点,第一方向属性包括指向地标投影的第一方向信息,地标投影表示像素点对应的地标点在待定位图像中的投影位置,在此基础上,再对第一地标预测图像和第一方向预测图像进行分析,得到目标地标点,由于第一地标预测图像包括各个像素点所对应的地标点,而第一方向预测图像包括各个像素点指向地标投影的方向信息,故能够大大降低动态环境影响,提高定位鲁棒性。
请参阅图10,图10是训练地标检测模型一实施例的流程示意图。具体而言,可以包括如下步骤:
步骤S101:分别确定子区域和地标点在样本图像的投影区域和投影位置。
本公开实施例中,子区域和地标点的含义可以参阅前述公开实施例中相关描述,在此不再赘述。
在一个实施场景中,样本图像是以样本位姿C对预设场景进行拍摄得到的。对于场景地图各个子区域而言,可以通过前述样本位姿C以及相机内参K投影到样本图像,以得到子区域在样本图像中的投影区域;类似地,对于各个地标点而言,也可以利用前述样本位姿C以及相机内参K投影到样本图像,以得到地标点在样本图像中的投影位置。以地标点投影为例,对于若干地标点{q1,q2,...,qn}中的地标点qj而言,可以通过下式得到其在样本图像中的投影位置lj:
lj=f(qj,K,C)……(1)
上述公式(1)中,f表示投影函数,具体可以参阅世界坐标系、相机坐标系、图像坐标系以及像素坐标系之间的转换过程,在此不再赘述。
步骤S102:基于投影区域和投影位置,确定样本图像中样本像素点的样本地标属性和样本方向属性。
本公开实施例中,样本地标属性用于标识样本像素点对应的样本地标点,且样本地标点为投影区域覆盖样本像素点的子区域所含的地标点,样本方向属性包括指向样本像素点对应的样本地标点的投影位置的样本方向信息。
对于样本地标属性,为了便于描述,以样本图像中像素点i为例,其在样本图像中位置坐标可以记为pi=(ui,vi),像素点i被投影区域j覆盖,投影区域j是场景地图中子区域j在样本图像中的投影区域,且子区域j中包含地标点qj,则像素点i的样本地标属性标识该地标点qj,如像素点i的样本地标属性可以包括地标点qj在若干地标点{q1,q2,...,qn}中的地标点标签j。其他情况可以以此类推,在此不再一一举例。此外,若样本图像中某一像素点并未被投影区域覆盖,则可以认为该像素点对应于天空或某些远距离物体,在此情况下,该像素点的样本地标属性采用特殊标记来进行标识,如可以采用与若干地标点{q1,q2,...,qn}的地标点标签无关的特殊标记(如,0)来进行标识,以此可以表示该像素点对于视觉定位并无作用。
对于样本方向属性,其所包含的样本方向信息具体可以为一个指向样本地标点的投影位置的样本方向矢量。此外,该样本方向矢量具体可以为一个单位矢量。为了便于描述,仍以样本图像中像素点i为例,如前所述,像素点i对应的样本地标点为地标点qj,且地标点qj在样本图像中投影位置可以通过上述公式(1)计算得到(即lj),则上述单位矢量di可以表示为:
di=(lj-pi)/||lj-pi||2……(2)
步骤S103:分别基于样本地标属性和样本方向属性,得到样本图像的样本地标图像和样本方向图像。
在一个实施场景中,样本地标图像和样本方向图像两者可以与样本图像尺寸相同,即样本地标图像中第一像素点标注有对应的样本像素点的样本地标属性,样本方向图像中第二像素点标注有对应的样本像素点的样本方向属性。也就是说,样本地标图像中第i行第j列第一像素点标注有样本图像中第i行第j列样本像素点的样本地标属性,而样本方向图像中第i行第j列第二像素点标注有样本图像中第i行第j列样本像素点的样本方向属性。此外,在样本地标属性包括地标点标签的情况下,样本地标图像可以记为即样本地标图像S的分辨率为H*W,且其中每一像素值均为整数;类似地,在样本方向属性以样本方向矢量表示的情况下,样本方向图像可以记为即样本方向图像d的分辨率为H*W,且通道数为2,且通道图像中每一像素值均为实数,其中一个通道图像中像素值表示样本方向矢量的一个元素,另一个通道图像中像素值表示样本方向矢量的另一个元素。
步骤S104:利用地标检测模型对样本图像进行预测,得到样本图像的第二特征预测图像和第二方向预测图像。
本公开实施例中,第二方向预测图像包括样本像素点的第二方向属性,第二方向属性包括指向样本地标投影的第二方向信息,样本地标投影表示样本地标点在样本图像中的投影位置。
在一个实施场景中,与第一方向信息类似地,第二方向信息具体可以包括第二方向矢量,该第二方向矢量指向样本地标投影。需要说明的是,在地标检测模型的检测性能极佳的情况下,地标检测模型所预测出来的第二方向矢量可能准确地指向样本地标投影,而在训练过程中,地标检测模型的性能是逐渐趋优的,且受限于各种因素,地标检测模型的检测性能也可能无法达到理想状态(即100%的准确率),在此情况下,地标检测模型所预测出来的第二方向矢量可能并非准确指向样本地标投影,如第二方向矢量所指向的位置与样本地标投影之间可以存在一定的角度偏差(如,1度、2度、3度等)。
在一个实施场景中,如前所述,地标检测模型可以包括原始特征提取网络、注意力机制网络、多尺度特征提取网络、地标预测网络和方向预测网络,在此基础上,可以利用原始特征提取网络对样本图像进行特征提取,得到第一样本特征图像,并将第一样本特征图像分别输入注意力机制网络和多尺度特征提取网络,分别得到第一样本全局图像和第二样本全局图像,以及融合第一样本全局图像和第二样本全局图像,得到第二样本特征图像,并融合第一样本特征图像和第二样本特征图像,得到融合样本特征图像。在此基础上,再利用地标预测网络对融合样本特征图像进行地标预测,得到第二特征预测图像,以及利用方向预测网络对融合样本特征图像进行方向预测,得到第二方向预测图像。具体过程可以参阅前述相关描述,在此不再赘述。
步骤S105:基于样本地标图像和第二特征预测图像,得到第一损失,并基于样本方向图像和第二方向预测图像,得到第二损失。
在一个实施场景中,如前所述,可以在地标检测模型的训练过程中,可以维护并更新一个地标特征表示集合P,该地标特征表示集合P包含各个地标点(如,前述{q1,q2,...,qn})的待优化特征表示。需要说明的是,在首次训练时,该地标特征表示集合P中各个地标点的待优化特征表示可以是通过随机初始化得到的。此外,为了便于描述,第二特征预测图像可以记为E,则样本图像中像素点i的第二特征表示可以记为Ei。为了降低计算第一损失的计算负荷以及资源消耗,可以获取具有相同样本地标属性的样本像素点所构成的图像区域,则对于图像区域中样本像素点i,可以将样本地标属性所标识的样本地标点的待优化特征表示作为样本像素点i的正例特征表示Pi+,并选择一个参考特征表示作为样本像素点i的负例特征表示Pi-,且参考特征表示包括除正例特征表示之外的待优化特征表示,也就是说,可以从地标特征表示集合P中选择处正例特征表示之外的待优化特征表示作为参考特征表示。在此基础上,可以基于样本像素点i的第二特征表示Ei和正例特征表示Pi+之间的第一相似度以及第二特征表示Ei和负例特征表示Pi-之间的第二相似度,得到子损失,并基于样本图像中样本像素点的子损失,得到第一损失。例如,可以对样本图像中各个像素点的子损失进行求和,得到第一损失。上述方式,一方面通过最小化第一损失,能够使得第二特征表示尽可能地趋近其正例特征表示并尽可能地疏离其负例特征表示,提高地标预测网络的预测性能,另一方面通过选择一个参考特征表示作为负例特征表示,避免计算第二特征表示与所有负样本类的损失,能够大大减少计算量和硬件消耗。
在另一个具体的实施场景中,在计算上述第一相似度和第二相似度之前,可以先对各个样本像素点的第二特征表示通过L2进行归一化,在此基础上,可以计算归一化后的第二特征表示与正例特征表示之间的第一相似度以及归一化后的第二特征表示与负例特征表示之间的第二相似度。
在又一个具体的实施场景中,请结合参阅图11,图11是计算第一损失一实施例的示意图。如图11中虚线划分所示,样本图像包含4块分别具有相同样本地标属性的样本像素点所构成的图像区域,以右下角图像区域为例,该图像区域中样本像素点所对应的样本地标点均为地标点i+,则可以统计该图像区域中样本像素点的第二特征表示的平均特征表示,具体可以将该图像区域中样本像素点的第二特征表示取平均值,得到平均特征表示Mi+,之后可以基于平均特征表示Mi+分别与各个参考特征表示之间的相似度,选择若干参考特征表示作为该图像区域的候选特征表示。例如,可以选择相似度按照从高到低排序位于前预设序位(如,前k位)的参考特征表示,作为该图像区域的候选特征表示(如图11中曲线箭头所指的三个待优化特征表示)。在此基础上,在获取该图像区域中各个样本像素点的负例特征表示时,可以在候选特征表示中均匀采样,得到样本像素点的负例特征表示。即由于相同图像区域中样本像素点在空间上是相互接近的,且应具有相似的特征表示,故也可以共享相似的负例特征表示,因此对于各个图像区域,仅需分别挖掘具有代表性的负例特征表示即可,从而图像区域中各个样本像素点仅需从这些具有代表性的负例特征表示中进行采样即可。例如,对于该图像区域中样本像素点1、样本像素点2、样本像素点3和样本像素点4,可以分别从前述三个待优化特征表示中均匀采样,得到对应的负例特征表示,如可以分别将加粗箭头所指的待优化特征表示作为各自的负例特征表示。对于其他图像区域,可以以此类推,在此不再一一举例。上述方式,一方面能够有利于提升参考特征表示的参考意义,另一方面能够有利于降低图像区域中每个样本像素点选择负例特征表示的复杂度。
在另一个实施场景中,如前所述,为了应对现实场景中地标点较多(如,成百上千,甚至上万个)所导致的计算负荷沉重的问题,对于样本图像中样本像素点i,可以将样本地标属性所标识的样本地标点的待优化特征表示作为样本像素点i的正例特征表示Pi+,并基于局部敏感哈希对样本像素点的第二特征表示的处理结果,选择一个参考特征表示作为样本像素点i的负例特征表示Pi-,以及基于第二特征表示与正例特征表示之间的第一相似度和第二特征表示与负例特征表示之间的第二相似度,得到样本像素点i的子损失,且参考特征表示包括除正例特征表示之外的待优化特征表示,在计算得到各个样本像素点的子损失之后,即可基于样本图像中样本像素点的子损失,得到第一损失。需要说明的是,地标点的待优化特征表示可以参阅前述相关描述;此外,关于基于子损失得到第一损失的相关过程也可以参阅前述相关描述,在此不再赘述。上述方式,由于基于局部敏感哈希对样本像素点的第二特征表示的处理结果来选择负例特征表示,故能够有利于大大减少计算量,提高视觉定位的响应速度。
在一个具体的实施场景中,可以基于局部敏感哈希映射样本像素点的第二特征表示,确定样本像素点所在的第二目标分区,且第二目标分区属于多个第二哈希分区,多个第二哈希分区由若干地标点的待优化特征表示经局部敏感哈希处理得到,具体可以参阅前述第一目标分区的确定过程以及第一哈希分区的映射过程,在此不再赘述。在此基础上,可以选取第二目标分区内的地标点,作为第二候选点,且第二候选地标点不包含样本像素点对应的样本地标点,上述处理结果包括第二候选地标点,再基于样本像素点的第二特征表示分别与各个第二候选地标点的待优化特征表示之间的相似度,得到样本像素点的负例特征表示。例如,可以将最高相似度对应的第二候选地标点的待优化特征表示,作为样本像素点的负例特征表示。上述方式,由于无需对每个地标点计算其待优化特征表示与样本像素点的第二特征表示之间的相似度,故能够有利于大大减少计算量,提高地标检测模型的训练速度。
在一个具体的实施场景中,可以基于三元组损失函数处理第一相似度和第二相似度,得到样本像素点的子损失。具体可以参阅前述相关描述,在此不再赘述。
在一个实施场景中,如前所述,第二方向属性包括指向样本地标投影的第二方向信息,如第二方向信息具体可以包括指向样本地标投影的第二方向矢量,为了便于描述,样本像素点i所标记的第二方向矢量可以记为此外样本像素点i所标记的样本方向矢量可以记为di,则第一损失
上述公式(4)中,l表示指示函数,Si≠0表示样本地标图像S中标识有对应样本地标点的样本像素点i(即排除表示天空或远距离物体而标记为诸如0的特殊标记的样本像素点)。
步骤S106:基于第一损失和第二损失,优化地标检测模型的网络参数。
上述公式(5)中,λ表示加权因子。在此基础上,可以基于总损失,优化地标检测模型的网络参数和待优化特征表示。
上述方案,分别确定子区域和地表点在样本图像的投影区域和投影位置,并基于投影区域和投影位置,确定样本图像中样本像素点的样本地标属性和样本方向属性,且样本地标属性用于标识样本像素点对应的样本地标点,样本地标点为投影区域覆盖样本像素点的子区域所含的地标点,样本方向属性包括指向样本像素点对应的样本地标点的投影位置的样本方向信息,再分别基于样本地标属性和样本方向属性,得到样本图像的样本地标图像和样本方向图像,且样本地标图像中第一像素点标注有对应的样本像素点的样本地标属性,样本方向图中第二像素点标注有对应的样本像素点的样本方向属性,在此基础上,再利用地标检测网络对样本图像进行预测,得到样本图像的第二特征预测图像和第二方向预测图像,且第二特征预测图像包括样本像素点的第二特征表示,第二方向图像包括指向样本地标投影的第二方向信息,且样本地标投影表示样本地标点在样本图像中的投影位置,从而基于样本地标图像和第二特征预测图像,得到第一损失,并基于样本方向图像和第二方向预测图像,得到第二损失,以及基于第一损失和第二损失,优化地标检测模型的网络参数,故能够精确构建训练样本,并通过预先构建的样本地标图像和样本方向图像作为先验来监督地标检测模型的训练,有利于提升地标检测模型的检测性能。
请参阅图12,图12是本申请视觉定位装置1200一实施例的框架示意图。视觉定位装置1200包括:特征提取模块1210、特征融合模块1220、地标检测模块1230和位姿确定模块1240,特征提取模块1210,用于提取待定位图像的第一特征图像和第二特征图像;其中,第一特征图像包含局部特征信息,第二特征图像包含全局特征信息;特征融合为模块1220,用于融合第一特征图像和第二特征图像,得到融合特征图像;地标检测模块1230,用于基于融合特征图像,检测得到待定位图像中的目标地标点;位姿确定模块1240,用于基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息,得到待定位图像的位姿参数,其中,待定位图像是对预设场景拍摄得到的,场景地图是对预设场景进行三维建模得到的。
上述方案,提取待定位图像的第一特征图像和第二特征图像,且第一特征图像包含局部特征信息,第二特征图像包含全局特征信息,在此基础上,融合第一特征图像和第二特征图像,得到融合特征图像,并基于融合特征图像,检测得到待定位图像中的目标地标点,从而基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息,得到待定位图像的位姿参数,且待定位图像是对预设场景拍摄得到的,场景地图是对预设场景进行三维建模得到的,由于第一特征图像包括局部特征信息,第二特征图像包含全局特征信息,而融合特征图像又是融合两者所得到的,故能够大大扩展融合特征图像中像素点的感受野,从而能够有利于大大提升位于弱纹理、重复纹理区域像素点的特征表示的准确性,进而能够提高目标地标点的准确性,在此基础上再基于目标地标点在待定位图像中的第一位置信息和目标地标点在场景地图中的第二位置信息得到位姿参数,有利于提升视觉定位的准确性和鲁棒性。
在一些公开实施例中,特征提取模块1210具体用于基于注意力机制、多尺度特征提取网络中至少一者,对第一特征图像处理,得到第二特征图。
在一些公开实施例中,特征提取模块1210包括第一全局提取子模块,用于基于注意力机制对第一特征图像进行处理,得到第一全局图像;特征提取模块1210包括第二全局提取子模块,用于将多尺度提取网络提取的多尺度特征图像进行融合,得到第二全局图像;特征提取模块1210包括全局融合子模块,用于融合第一全局图像和第二全局图像,得到第二特征图像。
在一些公开实施例中,第一全局图像和第二全局图像均为多通道图像;全局融合子模块包括通道混洗单元,用于将第一全局图像和第二全局图像进行通道混洗,得到第三全局图像;全局融合子模块包括通道融合单元,用于对第三全局图像进行通道融合,得到第二特征图像。
在一些公开实施例中,地标检测模块1230包括图像处理子模块,用于利用地标检测模型处理融合特征图像,得到第一地标预测图像和第一方向预测图像;地标检测模块1230包括图像分析子模块,用于对第一地标预测图像和第一方向预测图像进行分析,得到目标地标点;其中,目标地标点为预设场景的若干地标点中的至少一个,若干地标点是从预设场景的场景地图中选择得到的,第一地标预测图像包括待定位图像中像素点的预测地标属性,第一方向预测图像包括待定位图像中像素点的第一方向属性,预测地标属性用于标识像素点对应的地标点,第一方向属性包括指向地标投影的第一方向信息,地标投影表示像素点对应的地标点在待定位图像中的投影位置。
在一些公开实施例中,地标检测模型包括地标预测网络,图像处理子模块包括融合特征解码单元,用于利用地标预测网络对融合特征图像进行解码,得到第一特征预测图像;其中,第一特征预测图像包括待定位图像中像素点的第一特征表示;图像处理子模块包括地标属性确定单元,用于对于每一像素点,基于局部敏感哈希处理像素点的第一特征表示,得到像素点的预测地标属性;图像处理子模块包括地标图像预测单元,用于基于待定位图像中各个像素点的预测地标属性,得到第一地标预测图像。
在一些公开实施例中,地标属性确定单元包括第一哈希映射子单元,用于基于局部敏感哈希映射像素点的第一特征表示,确定像素点所在的第一目标分区;其中,第一目标分区属于多个第一哈希分区,多个第一哈希分区由若干地标点的地标特征表示经局部敏感哈希处理得到,地标特征表示是在地标检测模型训练收敛之后得到的;地标属性确定单元包括第一候选地标筛选子单元,用于选取第一目标分区内的地标点,作为第一候选地标点;地标属性确定单元包括预测地标属性确定子单元,用于基于像素点的第一特征表示分别与各个第一候选地标点的地标特征表示之间的相似度,得到像素点的预测地标属性。
在一些公开实施例中,目标地标点是利用地标检测模型检测得到的,且目标地标点为预设场景的若干地标点中的至少一个,若干地标点是从预设场景的场景地图中选择得到的,若干地标点分别位于场景地图各个子区域的预设位置处,视觉定位装置1200还包括投影获取模块,用于分别确定子区域和地标点在样本图像的投影区域和投影位置;视觉定位装置1200还包括属性确定模块,用于基于投影区域和投影位置,确定样本图像中样本像素点的样本地标属性和样本方向属性;其中,样本地标属性用于标识样本像素点对应的样本地标点,且样本地标点为投影区域覆盖样本像素点的子区域所含的地标点,样本方向属性包括指向样本像素点对应的样本地标点的投影位置的样本方向信息;视觉定位装置1200还包括样本获取模块,用于分别基于样本地标属性和样本方向属性,得到样本图像的样本地标图像和样本方向图像;其中,样本地标图像中第一像素点标注有对应的样本像素点的样本地标属性,样本方向图像中第二像素点标注有对应的样本像素点的样本方向属性;视觉定位装置1200还包括图像预测模块,用于利用地标检测模型对样本图像进行预测,得到样本图像的第二特征预测图像和第二方向预测图像;其中,第二特征预测图像包括样本像素点的第二特征表示,第二方向预测图像包括样本像素点的第二方向属性,第二方向属性包括指向样本地标投影的第二方向信息,且样本地标投影表示样本地标点在样本图像中的投影位置;视觉定位装置1200还包括损失计算模块,用于基于样本地标图像和第二特征预测图像,得到第一损失,并基于样本方向图像和第二方向预测图像,得到第二损失;视觉定位装置1200还包括参数优化模块,用于基于第一损失和第二损失,优化地标检测模型的网络参数。
在一些公开实施例中,损失计算模块包括特征表示获取子模块,用于获取各个地标点的待优化特征表示;损失计算模块包括正例表示获取子模块,用于将样本地标属性所标识的样本地标点的待优化特征表示作为样本像素点的正例特征表示;损失计算模块包括负例表示获取子模块,用于基于局部敏感哈希对样本像素点的第二特征表示的处理结果,选择一个参考特征表示作为样本像素点的负例特征表示;损失计算模块包括子损失计算子模块,用于基于第二特征表示与正例特征表示之间的第一相似度和第二特征表示与负例特征表示之间的第二相似度,得到子损失;其中,参考特征表示包括除正例特征表示之外的待优化特征表示;损失计算模块包括损失统计子模块,用于基于样本图像中样本像素点的子损失,得到第一损失。
在一些公开实施例中,负例表示获取子模块包括第二哈希映射单元,用于基于局部敏感哈希映射样本像素点的第二特征表示,确定样本像素点所在的第二目标分区;其中,第二目标分区属于多个第二哈希分区,多个第二哈希分区由若干地标点的待优化特征表示经局部敏感哈希处理得到;负例表示获取子模块包括第二候选地标筛选单元,用于选取第二目标分区内的地标点,作为第二候选地标点;其中,第二候选地标点不包含样本像素点对应的样本地标点,处理结果包括第二候选地标点;负例表示获取子模块包括负例表示确定单元,用于基于样本像素点的第二特征表示分别与各个第二候选地标点的待优化特征表示之间的相似度,得到样本像素点的负例特征表示。
在一些公开实施例中,子区域是对场景地图的表面进行划分得到的;和/或,预设位置包括子区域的中心位置;和/或,各个子区域之间的面积差异低于预设阈值。
请参阅图13,图13是本申请电子设备1300一实施例的框架示意图。电子设备1300包括相互耦接的存储器1301和处理器1302,处理器1302用于执行存储器1301中存储的程序指令,以实现上述任一视觉定位方法实施例的步骤。在一个具体的实施场景中,电子设备1300可以包括但不限于:微型计算机、服务器,此外,电子设备1300还可以包括笔记本电脑、平板电脑等移动设备,在此不做限定。
具体而言,处理器1302用于控制其自身以及存储器1301以实现上述任一视觉定位方法实施例的步骤。处理器1302还可以称为CPU(Central Processing Unit,中央处理单元)。处理器1302可能是一种集成电路芯片,具有信号的处理能力。处理器1302还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器1302可以由集成电路芯片共同实现。
上述方案,能够提高视觉定位的准确性和鲁棒性。
请参阅图14,图14为本申请计算机可读存储介质140一实施例的框架示意图。计算机可读存储介质140存储有能够被处理器运行的程序指令141,程序指令141用于实现上述任一视觉定位方法实施例的步骤。
上述方案,能够提高视觉定位的准确性和鲁棒性。
本公开涉及增强现实领域,通过获取现实环境中的目标对象的图像信息,进而借助各类视觉相关算法实现对目标对象的相关特征、状态及属性进行检测或识别处理,从而得到与具体应用匹配的虚拟与现实相结合的AR效果。示例性的,目标对象可涉及与人体相关的脸部、肢体、手势、动作等,或者与物体相关的标识物、标志物,或者与场馆或场所相关的沙盘、展示区域或展示物品等。视觉相关算法可涉及视觉定位、SLAM、三维重建、图像注册、背景分割、对象的关键点提取及跟踪、对象的位姿或深度检测等。具体应用不仅可以涉及跟真实场景或物品相关的导览、导航、讲解、重建、虚拟效果叠加展示等交互场景,还可以涉及与人相关的特效处理,比如妆容美化、肢体美化、特效展示、虚拟模型展示等交互场景。
可通过卷积神经网络,实现对目标对象的相关特征、状态及属性进行检测或识别处理。上述卷积神经网络是基于深度学习框架进行模型训练而得到的网络模型。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (14)
1.一种视觉定位方法,其特征在于,包括:
提取待定位图像的第一特征图像和第二特征图像;其中,所述第一特征图像包含局部特征信息,所述第二特征图像包含全局特征信息;
融合所述第一特征图像和所述第二特征图像,得到融合特征图像;
基于所述融合特征图像,检测得到所述待定位图像中的目标地标点;
基于所述目标地标点在所述待定位图像中的第一位置信息和所述目标地标点在场景地图中的第二位置信息,得到所述待定位图像的位姿参数;其中,所述待定位图像是对预设场景拍摄得到的,所述场景地图是对所述预设场景进行三维建模得到的。
2.根据权利要求1所述的方法,其特征在于,还包括:基于注意力机制、多尺度特征提取网络中至少一者,对所述第一特征图像处理,得到所述第二特征图像。
3.根据权利要求2所述的方法,其特征在于,所述基于注意力机制、多尺度特征提取网络中至少一者,对所述第一特征图像处理,得到所述第二特征图像,包括:
基于所述注意力机制对所述第一特征图像进行处理,得到第一全局图像,并将所述多尺度提取网络提取的多尺度特征图像进行融合,得到第二全局图像;
融合所述第一全局图像和所述第二全局图像,得到所述第二特征图像。
4.根据权利要求3所述的方法,其特征在于,所述第一全局图像和所述第二全局图像均为多通道图像;所述融合所述第一全局图像和所述第二全局图像,得到所述第二特征图像,包括:
将所述第一全局图像和所述第二全局图像进行通道混洗,得到第三全局图像;
对所述第三全局图像进行通道融合,得到所述第二特征图像。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述基于所述融合特征图像,检测得到所述待定位图像中的目标地标点,包括:
利用地标检测模型处理所述融合特征图像,得到第一地标预测图像和第一方向预测图像;
对所述第一地标预测图像和所述第一方向预测图像进行分析,得到所述目标地标点;
其中,所述目标地标点为所述预设场景的若干地标点中的至少一个,所述若干地标点是从所述预设场景的场景地图中选择得到的,所述第一地标预测图像包括所述待定位图像中像素点的预测地标属性,所述第一方向预测图像包括所述待定位图像中像素点的第一方向属性,所述预测地标属性用于标识所述像素点对应的地标点,所述第一方向属性包括指向地标投影的第一方向信息,所述地标投影表示所述像素点对应的地标点在所述待定位图像中的投影位置。
6.根据权利要求5所述的方法,其特征在于,所述地标检测模型包括地标预测网络,所述利用地标检测模型处理所述融合特征图像,得到第一地标预测图像包括:
利用所述地标预测网络对所述融合特征图像进行解码,得到第一特征预测图像;其中,所述第一特征预测图像包括所述待定位图像中像素点的第一特征表示;
对于每一所述像素点,基于局部敏感哈希处理所述像素点的第一特征表示,得到所述像素点的预测地标属性;
基于所述待定位图像中各个所述像素点的预测地标属性,得到所述第一地标预测图像。
7.根据权利要求6所述的方法,其特征在于,所述基于局部敏感哈希处理所述像素点的第一特征表示,得到所述像素点的预测地标属性,包括:
基于所述局部敏感哈希映射所述像素点的第一特征表示,确定所述像素点所在的第一目标分区;其中,所述第一目标分区属于多个第一哈希分区,所述多个第一哈希分区由所述若干地标点的地标特征表示经所述局部敏感哈希处理得到,所述地标特征表示是在所述地标检测模型训练收敛之后得到的;
选取所述第一目标分区内的所述地标点,作为第一候选地标点;
基于所述像素点的第一特征表示分别与各个所述第一候选地标点的地标特征表示之间的相似度,得到所述像素点的预测地标属性。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述目标地标点是利用地标检测模型检测得到的,且所述目标地标点为所述预设场景的若干地标点中的至少一个,所述若干地标点是从所述预设场景的场景地图中选择得到的,所述若干地标点分别位于所述场景地图各个子区域的预设位置处,所述地标检测模型的训练步骤包括:
分别确定所述子区域和所述地标点在样本图像的投影区域和投影位置;
基于所述投影区域和所述投影位置,确定所述样本图像中样本像素点的样本地标属性和样本方向属性;其中,所述样本地标属性用于标识所述样本像素点对应的样本地标点,且所述样本地标点为所述投影区域覆盖所述样本像素点的子区域所含的地标点,所述样本方向属性包括指向所述样本像素点对应的样本地标点的投影位置的样本方向信息;
分别基于所述样本地标属性和所述样本方向属性,得到所述样本图像的样本地标图像和样本方向图像;其中,所述样本地标图像中第一像素点标注有对应的样本像素点的样本地标属性,所述样本方向图像中第二像素点标注有对应的样本像素点的样本方向属性;
利用所述地标检测模型对所述样本图像进行预测,得到所述样本图像的第二特征预测图像和第二方向预测图像;其中,所述第二特征预测图像包括所述样本像素点的第二特征表示,所述第二方向预测图像包括所述样本像素点的第二方向属性,所述第二方向属性包括指向样本地标投影的第二方向信息,且所述样本地标投影表示所述样本地标点在所述样本图像中的投影位置;
基于所述样本地标图像和所述第二特征预测图像,得到第一损失,并基于所述样本方向图像和所述第二方向预测图像,得到第二损失;
基于所述第一损失和所述第二损失,优化所述地标检测模型的网络参数。
9.根据权利要求8所述的方法,其特征在于,所述基于所述样本地标图像和所述第二特征预测图像,得到第一损失,包括:
获取各个所述地标点的待优化特征表示;
对于所述样本图像中所述样本像素点,将所述样本地标属性所标识的样本地标点的待优化特征表示作为所述样本像素点的正例特征表示,并基于局部敏感哈希对所述样本像素点的第二特征表示的处理结果,选择一个参考特征表示作为所述样本像素点的负例特征表示,以及基于所述第二特征表示与所述正例特征表示之间的第一相似度和所述第二特征表示与所述负例特征表示之间的第二相似度,得到子损失;其中,所述参考特征表示包括除所述正例特征表示之外的待优化特征表示;
基于所述样本图像中所述样本像素点的子损失,得到所述第一损失。
10.根据权利要求9所述的方法,其特征在于,所述基于局部敏感哈希对所述样本像素点的第二特征表示的处理结果,选择一个参考特征表示作为所述样本像素点的负例特征表示,包括:
基于所述局部敏感哈希映射所述样本像素点的第二特征表示,确定所述样本像素点所在的第二目标分区;其中,所述第二目标分区属于多个第二哈希分区,所述多个第二哈希分区由所述若干地标点的待优化特征表示经所述局部敏感哈希处理得到;
选取所述第二目标分区内的所述地标点,作为第二候选地标点;其中,所述第二候选地标点不包含所述样本像素点对应的样本地标点,所述处理结果包括所述第二候选地标点;
基于所述样本像素点的第二特征表示分别与各个所述第二候选地标点的待优化特征表示之间的相似度,得到所述样本像素点的负例特征表示。
11.根据权利要求8所述的方法,其特征在于,所述子区域是对所述场景地图的表面进行划分得到的;
和/或,所述预设位置包括所述子区域的中心位置;
和/或,各个所述子区域之间的面积差异低于预设阈值。
12.一种视觉定位装置,其特征在于,包括:
特征提取模块,用于提取待定位图像的第一特征图像和第二特征图像;其中,所述第一特征图像包含局部特征信息,所述第二特征图像包含全局特征信息;
特征融合为模块,用于融合所述第一特征图像和所述第二特征图像,得到融合特征图像;
地标检测模块,用于基于所述融合特征图像,检测得到所述待定位图像中的目标地标点;
位姿确定模块,用于基于所述目标地标点在所述待定位图像中的第一位置信息和所述目标地标点在场景地图中的第二位置信息,得到所述待定位图像的位姿参数,其中,所述待定位图像是对预设场景拍摄得到的,所述场景地图是对所述预设场景进行三维建模得到的。
13.一种电子设备,其特征在于,包括相互耦接的存储器和处理器,所述处理器用于执行所述存储器中存储的程序指令,以实现权利要求1至11任一项所述的视觉定位方法。
14.一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令被处理器执行时实现权利要求1至11任一项所述的视觉定位方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110874103.0A CN113570535A (zh) | 2021-07-30 | 2021-07-30 | 视觉定位方法及相关装置、设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110874103.0A CN113570535A (zh) | 2021-07-30 | 2021-07-30 | 视觉定位方法及相关装置、设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113570535A true CN113570535A (zh) | 2021-10-29 |
Family
ID=78169624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110874103.0A Pending CN113570535A (zh) | 2021-07-30 | 2021-07-30 | 视觉定位方法及相关装置、设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113570535A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115631240A (zh) * | 2022-12-21 | 2023-01-20 | 速度时空信息科技股份有限公司 | 大规模场景的视觉定位数据处理方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019057179A1 (zh) * | 2017-09-22 | 2019-03-28 | 华为技术有限公司 | 一种基于点线特征的视觉slam方法和装置 |
US20190147225A1 (en) * | 2016-05-19 | 2019-05-16 | Visiana Aps | Image processing apparatus and method |
CN109872364A (zh) * | 2019-01-28 | 2019-06-11 | 腾讯科技(深圳)有限公司 | 图像区域定位方法、装置、存储介质和医学影像处理设备 |
CN110111389A (zh) * | 2019-05-14 | 2019-08-09 | 南京信息工程大学 | 一种基于slam的移动增强现实跟踪注册方法和*** |
WO2020108311A1 (zh) * | 2018-11-29 | 2020-06-04 | 北京市商汤科技开发有限公司 | 目标对象3d检测方法、装置、介质及设备 |
EP3680809A1 (en) * | 2017-09-22 | 2020-07-15 | Huawei Technologies Co., Ltd. | Visual slam method and apparatus based on point and line characteristic |
CN111627065A (zh) * | 2020-05-15 | 2020-09-04 | Oppo广东移动通信有限公司 | 一种视觉定位方法及装置、存储介质 |
CN111724443A (zh) * | 2020-06-09 | 2020-09-29 | 中国科学院自动化研究所 | 基于生成式对抗网络的统一场景视觉定位方法 |
CN111862205A (zh) * | 2019-12-18 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 一种视觉定位方法、装置、设备及存储介质 |
US20210035314A1 (en) * | 2018-10-12 | 2021-02-04 | Tencent Technology (Shenzhen) Company Limited | Map element extraction method and apparatus, and server |
CN112699855A (zh) * | 2021-03-23 | 2021-04-23 | 腾讯科技(深圳)有限公司 | 基于人工智能的图像场景识别方法、装置及电子设备 |
-
2021
- 2021-07-30 CN CN202110874103.0A patent/CN113570535A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190147225A1 (en) * | 2016-05-19 | 2019-05-16 | Visiana Aps | Image processing apparatus and method |
WO2019057179A1 (zh) * | 2017-09-22 | 2019-03-28 | 华为技术有限公司 | 一种基于点线特征的视觉slam方法和装置 |
EP3680809A1 (en) * | 2017-09-22 | 2020-07-15 | Huawei Technologies Co., Ltd. | Visual slam method and apparatus based on point and line characteristic |
US20210035314A1 (en) * | 2018-10-12 | 2021-02-04 | Tencent Technology (Shenzhen) Company Limited | Map element extraction method and apparatus, and server |
WO2020108311A1 (zh) * | 2018-11-29 | 2020-06-04 | 北京市商汤科技开发有限公司 | 目标对象3d检测方法、装置、介质及设备 |
CN109872364A (zh) * | 2019-01-28 | 2019-06-11 | 腾讯科技(深圳)有限公司 | 图像区域定位方法、装置、存储介质和医学影像处理设备 |
CN110111389A (zh) * | 2019-05-14 | 2019-08-09 | 南京信息工程大学 | 一种基于slam的移动增强现实跟踪注册方法和*** |
CN111862205A (zh) * | 2019-12-18 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 一种视觉定位方法、装置、设备及存储介质 |
CN111627065A (zh) * | 2020-05-15 | 2020-09-04 | Oppo广东移动通信有限公司 | 一种视觉定位方法及装置、存储介质 |
CN111724443A (zh) * | 2020-06-09 | 2020-09-29 | 中国科学院自动化研究所 | 基于生成式对抗网络的统一场景视觉定位方法 |
CN112699855A (zh) * | 2021-03-23 | 2021-04-23 | 腾讯科技(深圳)有限公司 | 基于人工智能的图像场景识别方法、装置及电子设备 |
Non-Patent Citations (2)
Title |
---|
王丹等: "基于点线特征的单目视觉同时定位与地图构建算法", 机器人, no. 03, 5 January 2019 (2019-01-05) * |
王均等: "基于特征融合的仿生SLAM算法研究", 安徽工程大学学报, no. 02, 15 April 2019 (2019-04-15) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115631240A (zh) * | 2022-12-21 | 2023-01-20 | 速度时空信息科技股份有限公司 | 大规模场景的视觉定位数据处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7453470B2 (ja) | 3次元再構成及び関連インタラクション、測定方法及び関連装置、機器 | |
WO2020259481A1 (zh) | 定位方法及装置、电子设备、可读存储介质 | |
CN111243093B (zh) | 三维人脸网格的生成方法、装置、设备及存储介质 | |
CN110555901B (zh) | 动静态场景的定位和建图方法、装置、设备和存储介质 | |
Kendall et al. | Posenet: A convolutional network for real-time 6-dof camera relocalization | |
CN111328396A (zh) | 用于图像中的对象的姿态估计和模型检索 | |
CN109919971B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN113034652A (zh) | 虚拟形象驱动方法、装置、设备及存储介质 | |
Han et al. | CAD-based 3D objects recognition in monocular images for mobile augmented reality | |
Son et al. | A multi-vision sensor-based fast localization system with image matching for challenging outdoor environments | |
Arnold et al. | Map-free visual relocalization: Metric pose relative to a single image | |
Li et al. | RGBD relocalisation using pairwise geometry and concise key point sets | |
CN113240656B (zh) | 视觉定位方法及相关装置、设备 | |
Ji et al. | An evaluation of conventional and deep learning‐based image‐matching methods on diverse datasets | |
CN113592015B (zh) | 定位以及训练特征匹配网络的方法和装置 | |
CN113886510A (zh) | 一种终端交互方法、装置、设备及存储介质 | |
CN113570535A (zh) | 视觉定位方法及相关装置、设备 | |
Bajramovic et al. | Global Uncertainty-based Selection of Relative Poses for Multi Camera Calibration. | |
CN110135474A (zh) | 一种基于深度学习的倾斜航空影像匹配方法和*** | |
Zulkifley | Robust single object tracker based on kernelled patch of a fixed RGB camera | |
Budvytis et al. | Semantic localisation via globally unique instance segmentation | |
Zhang et al. | Augmented visual feature modeling for matching in low-visibility based on cycle-labeling of Superpixel Flow | |
Ayadi et al. | A skyline-based approach for mobile augmented reality | |
Porzi et al. | An automatic image-to-DEM alignment approach for annotating mountains pictures on a smartphone | |
Gupta et al. | Image feature detection using an improved implementation of maximally stable extremal regions for augmented reality applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |