CN117635703A - 定位方法、装置和电子设备 - Google Patents
定位方法、装置和电子设备 Download PDFInfo
- Publication number
- CN117635703A CN117635703A CN202210986780.6A CN202210986780A CN117635703A CN 117635703 A CN117635703 A CN 117635703A CN 202210986780 A CN202210986780 A CN 202210986780A CN 117635703 A CN117635703 A CN 117635703A
- Authority
- CN
- China
- Prior art keywords
- image
- actual
- history
- historical
- determining
- 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 72
- 238000012545 processing Methods 0.000 claims description 51
- 238000003860 storage Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 17
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 19
- 230000006870 function Effects 0.000 description 18
- 238000004422 calculation algorithm Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005457 optimization Methods 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
- 230000000694 effects Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- 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
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Remote Sensing (AREA)
- Computer Graphics (AREA)
- Image Analysis (AREA)
Abstract
本公开提供了定位方法、装置和电子设备,涉及定位技术领域,用于解决不提高电子设备的成本的情况下,提高电子设备的定位精度的问题。该方法包括:获取每个图像采集装置采集的第一图像;确定第一图像中的实际特征点;根据图像采集装置采集的历史图像、根据历史图像构建的空间地图和第一图像,确定第一图像的图像信息;根据图像采集装置的标定参数,第一位姿,实际特征点的位置信息,确定图像采集装置的第二位姿;根据第二位姿,确定虚拟现实设备的定位结果。
Description
技术领域
本公开涉及定位技术领域,尤其涉及定位方法、装置和电子设备。
背景技术
目前,在定位场景中,电子设备可以根据图像采集装置当前采集的图像中的特定点进行定位。其中,特征点的数量越多,对图像采集装置的要求越高,电子设备的定位精度越高。
可以看出,在保证电子设备的定位精度的情况下,电子设备的成本也会较高。因此,如何在不提高电子设备的成本的情况下,如何提高电子设备的定位精度成为了一个亟待解决的问题。
发明内容
有鉴于此,本公开提供了定位方法、装置和电子设备,用于解决不提高电子设备的成本的情况下,如何提高电子设备的定位精度的问题。
为了实现上述目的,本公开提供技术方案如下:
第一方面,本公开提供一种定位方法,应用于包括多个图像采集装置的虚拟现实设备,包括:获取每个图像采集装置采集的第一图像;确定第一图像中的实际特征点;根据图像采集装置采集的历史图像、根据历史图像构建的空间地图和第一图像,确定第一图像的图像信息;其中,图像信息包括:实际特征点的位置信息和/或第一位姿;根据图像采集装置的标定参数,第一位姿,实际特征点的位置信息,确定图像采集装置的第二位姿;根据第二位姿,确定虚拟现实设备的定位结果。
作为本公开一种可选的实施方式,位置信息包括二维坐标和三维坐标;根据第二位姿,确定虚拟现实设备的定位结果前,本公开提供的定位方法还包括:对第一图像进行解算,确定三维坐标和二维坐标之间的转换关系等于第一位姿的实际特征点的实际总数;在实际总数大于或等于预设阈值的情况下,基于第二位姿,优化空间地图中待优化图像的每个历史特征点的位置信息;其中,待优化图像包括实际总数大于或等于预设阈值的第一图像对应的历史图像。作为本公开一种可选的实施方式,根据图像采集装置采集的历史图像、根据历史图像构建的空间地图和第一图像,确定第一图像的图像信息,包括:对根据历史图像构建的空间地图中的历史特征点与实际图像第一图像中的实际特征点进行匹配,确定每个实际特征点对应的位置信息;根据实际图像中每个实际特征点对应的位置信息,确定第一图像的图像信息。
作为本公开一种可选的实施方式,位置信息包括三维坐标和二维坐标,一个历史特征点对应一个三维坐标,一个实际特征点对应一个二维坐标;对根据历史图像构建的空间地图中的历史特征点与第一图像中的实际特征点进行匹配,确定每个实际特征点对应的位置信息,包括:对空间地图中的历史特征点与第一图像中的实际特征点进行匹配,确定每个实际特征点对应的历史特征点;对每个实际特征点执行如下操作:根据实际特征点对应的二维坐标,以及实际特征点对应的历史特征点的三维坐标,确定实际特征点对应的位置信息。
作为本公开一种可选的实施方式,一个历史特征点对应一个历史描述子,一个实际特征点对应一个实际描述子;对空间地图中的历史特征点与第一图像中的实际特征点进行匹配,确定每个实际特征点对应的历史特征点,包括:根据空间地图中包含的历史特征点的历史描述子,和第一图像中的实际特征点的实际描述子,对历史特征点和实际特征点进行匹配,确定每个实际特征点对应的历史特征点。
作为本公开一种可选的实施方式,根据空间地图包含的历史特征点的历史描述子,和第一图像中的实际特征点的实际描述子,对历史特征点和实际特征点进行匹配,确定每个实际特征点对应的历史特征点,包括:确定空间地图包含的历史特征点的历史描述子与第一图像中的实际特征点的实际描述子之间的第一距离;在第一距离小于或等于预设阈值的情况下,确定第一距离对应的历史特征点和实际特征点二者相对应。
作为本公开一种可选的实施方式,根据位置信息,确定第一图像的图像信息,包括:根据第一图像中每个实际特征点对应的位置信息,对第一图像进行解算,确定第一图像的图像信息。
作为本公开一种可选的实施方式,在实际总数大于或等于预设阈值的情况下,基于第二位姿,优化空间地图中待优化图像的每个历史特征点的位置信息前,方法还包括:对历史图像和第一图像进行匹配,确定每张第一图像对应的历史图像。
作为本公开一种可选的实施方式,一张历史图像对应一个历史全局描述子,一张第一图像对应一个实际全局描述子;对历史图像和第一图像进行匹配,确定每张第一图像对应的历史图像,包括:根据历史图像的历史全局描述子和第一图像的实际全局描述子,对历史图像和第一图像进行匹配,确定每张第一图像对应的历史图像。
作为本公开一种可选的实施方式,根据历史图像的历史全局描述子和第一图像的实际全局描述子,对历史图像和第一图像进行匹配,确定每张第一图像对应的历史图像,包括:根据历史图像的历史全局描述子和第一图像的实际全局描述子,确定每个历史权利描述子与每个实际全局描述子之间的第二距离;在第二距离小于目标阈值的情况下,确定第二距离对应的历史图像和第一图像二值相对应。
第二方面,本公开提供一种定位装置,应用于包括多个图像采集装置的虚拟现实设备,包括:获取单元,用于获取每个图像采集装置采集的第一图像;处理单元,用于确定获取单元获取的第一图像中的实际特征点;处理单元,还用于根据图像采集装置采集的历史图像、根据历史图像构建的空间地图和获取单元获取的第一图像,确定第一图像的图像信息;其中,图像信息包括:实际特征点的位置信息和/或第一位姿;处理单元,还用于根据图像采集装置的标定参数,第一位姿,实际特征点的位置信息,确定图像采集装置的第二位姿;处理单元,还用于根据第二位姿,确定虚拟现实设备的定位结果。
作为本公开一种可选的实施方式,位置信息包括二维坐标和三维坐标;处理单元,还用于对获取单元获取的第一图像进行解算,确定三维坐标和二维坐标之间的转换关系等于第一位姿的实际特征点的实际总数;处理单元,还用于在实际总数大于或等于预设阈值的情况下,基于第二位姿,优化空间地图中待优化图像的每个历史特征点的位置信息;其中,待优化图像包括实际总数大于或等于预设阈值的第一图像对应的历史图像。
作为本公开一种可选的实施方式,处理单元,具体用于对根据历史图像构建的空间地图中的历史特征点与获取单元获取的第一图像中的实际特征点进行匹配,确定每个实际特征点对应的位置信息;处理单元,具体用于根据位置信息,确定第一图像的图像信息。
作为本公开一种可选的实施方式,位置信息包括三维坐标和二维坐标,一个历史特征点对应一个三维坐标,一个实际特征点对应一个二维坐标;处理单元,具体用于对空间地图中的历史特征点与获取单元获取的第一图像中的实际特征点进行匹配,确定每个实际特征点对应的历史特征点;处理单元,具体用于对每个实际特征点执行如下操作:根据实际特征点对应的二维坐标,以及实际特征点对应的历史特征点的三维坐标,确定实际特征点对应的位置信息。
作为本公开一种可选的实施方式,一个历史特征点对应一个历史描述子,一个实际特征点对应一个实际描述子;处理单元,具体用于根据空间地图中包含的历史特征点的历史描述子,和获取单元获取的第一图像中的实际特征点的实际描述子,对历史特征点和实际特征点进行匹配,确定每个实际特征点对应的历史特征点。
作为本公开一种可选的实施方式,处理单元,具体用于确定空间地图包含的历史特征点的历史描述子与获取单元获取的第一图像中的实际特征点的实际描述子之间的第一距离;处理单元,具体用于在第一距离小于或等于预设阈值的情况下,确定第一距离对应的历史特征点和实际特征点二者相对应。
作为本公开一种可选的实施方式,处理单元,具体用于根据获取单元获取的第一图像中每个实际特征点对应的位置信息,对第一图像进行解算,确定第一图像的图像信息。
作为本公开一种可选的实施方式,处理单元,还用于对历史图像和获取单元获取的第一图像进行匹配,确定每张第一图像对应的历史图像。
作为本公开一种可选的实施方式,一张历史图像对应一个历史全局描述子,一张第一图像对应一个实际全局描述子;处理单元,具体用于根据历史图像的历史全局描述子和获取单元获取的第一图像的实际全局描述子,对历史图像和第一图像进行匹配,确定每张第一图像对应的历史图像。
作为本公开一种可选的实施方式,处理单元,具体用于根据历史图像的历史全局描述子和获取单元获取的第一图像的实际全局描述子,确定每个历史权利描述子与每个实际全局描述子之间的第二距离;处理单元,具体用于在第二距离小于目标阈值的情况下,确定第二距离对应的历史图像和第一图像二值相对应。
第三方面,本公开提供一种电子设备,包括:存储器和处理器,存储器用于存储计算机程序;处理器用于在执行计算机程序时,使得电子设备实现如上述第一方面提供的定位方法。
第四方面,本公开提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,当计算机程序被计算设备执行时,使得计算设备实现如上述第一方面提供的定位方法。
第五方面,本公开提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机实现如上述第一方面提供的定位方法。
需要说明的是,上述计算机指令可以全部或者部分存储在第一计算机可读存储介质上。其中,第一计算机可读存储介质可以与定位装置的处理器封装在一起的,也可以与定位装置的处理器单独封装,本公开对此不作限定。
本公开中第二方面、第三方面、第四方面以及第五方面的描述,可以参考第一方面的详细描述;并且,第二方面、第三方面、第四方面以及第五方面的描述的有益效果,可以参考第一方面的有益效果分析,此处不再赘述。
在本公开中,上述定位装置的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本公开类似,属于本公开权利要求及其等同技术的范围之内。
本公开的这些方面或其他方面在以下的描述中会更加简明易懂。
本公开提供的技术方案与现有技术相比具有如下优点:
通过图像采集装置采集的历史图像构建空间地图,这样在需要定位虚拟现实设备时,可以基于图像采集装置采集的历史图像,空间地图以及第一图像,确定第一图像的图像信息,如此可以保证确定出的图像信息的准确性。之后,根据图像采集装置的标定参数,第一位姿,以及实际特征点的位置信息,确定图像采集装置的第二位姿。由于,第一位姿和位置信息的准确度更高,这样根据第二位姿,确定虚拟现实设备的定位结果时,可以更加准确地确定出虚拟现实设备的定位结果。
此外,当电子设备为虚拟现实设备时,仅需在电子设备中预先配置空间地图,这样无需增加电子设备的成本,还可以保证电子设备的定位精度,解决了不提高电子设备的成本的情况下,如何提高电子设备的定位精度的问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的定位方法的场景示意图;
图2为本公开实施例提供的定位方法的流程示意图之一;
图3为本公开实施例提供的定位方法的流程示意图之二;
图4为本公开实施例提供的定位方法的流程示意图之三;
图5为本公开实施例提供的定位方法的流程示意图之四;
图6为本公开实施例提供的定位方法的流程示意图之五;
图7为本公开实施例提供的定位方法的流程示意图之六;
图8为本公开实施例提供的定位方法的流程示意图之七;
图9为本公开实施例提供的定位方法的流程示意图之八;
图10为本公开实施例提供的定位方法的流程示意图之九;
图11为本公开实施例提供的定位方法的流程示意图之十;
图12为本公开实施例提供的定位装置的结构示意图;
图13为本公开实施例提供的电子设备的结构示意图;
图14为本公开实施例提供的一种定位方法的计算机程序产品的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本公开实施例中的位姿是描述某个对象(如坐标)在指定坐标系下的位置和姿态。
本公开实施例中的PnP是指Perspective-n-Poin。其中,PnP是用于求解三维(3-dimension,3D)到二维(2-dimension,2D)点对运动的方法。
本公开实施例中的COLMAP是一种通用的运动结构(structure-from-motion,SfM)和多视图立体(Multiple View Stereo,MVS)管道,具有图形和命令行界面。
本公开实施例中的NetVLAD是指基于卷积神经网络的局部聚合描述符向量。
图1为本公开实施例提供的定位方法的场景示意图,包括多个图像采集装置的虚拟现实设备1。用户在佩戴虚拟现实设备1后,通过虚拟现实设备1对场景进行扫描,从而得到该场景的地图信息。如:图1所示,用户通过虚拟现实设备1对所处的房间进行扫描,从而虚拟现实设备1中存储有对应该房间的地图信息(以下称为历史图像)。之后,其他的用户在佩戴虚拟现实设备1进入该房间后,虚拟现实设备1可以通过图像采集装置采集房间的第一图像。之后,虚拟现实设备1确定第一图像中的实际特征点。虚拟现实设备1根据图像采集装置采集的历史图像、根据历史图像构建的空间地图和第一图像,确定第一图像的图像信息。空间地图。然后,虚拟现实设备1根据图像采集装置的标定参数,第一位姿,以及实际特征点的位置信息,确定图像采集装置的第二位姿。最后,虚拟现实设备1根据第二位姿,确定虚拟现实设备1的定位结果。可以看出,通过对历史图像中历史特征点的位置信息进行优化,使得历史图像中各个历史特征点的位置信息更加精确,使得虚拟现实设备1可以更加准确地确定出用户当前在房间内所处的位置。
具体的,本公开实施例提供的定位装置可以是虚拟现实设备1中的一部分,也可以是该虚拟现实设备1。其中,虚拟现实设备1可以是采用虚拟现实技术(Virtual Reality,VR)的电子设备,或者,采用增强现实(Augmented Reality,AR)的电子设备(如:AR头盔),此处不做限定。
具体的,图像采集装置可以是摄像头,如:鱼眼摄像头。
需要说明的是,上述示例是以虚拟现实设备1包括4个图像采集装置(如:图像采集装置1-1、图像采集装置1-2、图像采集装置1-3和图像采集装置1-4)为例进行说明的。在其他的一些示例中,虚拟现实设备1包括2个及以上的图像采集装置,此处不做限定。
示例性的,以执行本公开实施例提供的定位方法的执行主体为AR头盔,并且AR头盔包括多个用于采集环境图像的图像采集装置为例,对本公开实施例提供的定位方法进行说明。
图2是根据一示例性实施例示出的一种定位方法的流程图,如图2所示,该方法包括以下S1-S5。
S1、获取每个图像采集装置采集的第一图像。
在一些示例中,AR头盔包含多个图像采集装置时,可以同时采集多张当前环境的第一图像。同一时刻,各个图像采集装置采集的第一图像之间具有一定的联系。因此,通过对同一时刻采集的多张第一图像进行分析,从而可以对AR头盔进行定位。如:将当前采集的第一图像与预设地图中的历史图像进行匹配,从而可以得带每个第一图像的图像信息,以及每个实际特征点的位置信息。之后,根据图像采集装置的标定参数,图像采集装置采集的第一图像的第一位姿,以及图像采集装置采集的第一图像中每个实际特征点的位置信息,确定图像采集装置的第二位姿。进而,可以根据第二位姿,确定AR头盔的定位结果。
具体的,图像采集装置的相机外参和相机内参、以及图像采集装置与AR头盔之间的空间位置关系均为预先配置的。
S2、确定第一图像中的实际特征点。
在一些示例中,采用目标提取算法对第一图像进行特征点提取,确定第一图像中的实际特征点。示例性的,目标提取算法可以是尺度不变特征转换(SIFT,Scale InvariantFeature Transform)算法、加速稳健特征(Speeded Up Robust Features,SURF)算法、光流法、块匹配方法中的任一项。
S3、根据图像采集装置采集的历史图像、根据历史图像构建的空间地图和第一图像,确定第一图像的图像信息。其中,图像信息包括:实际特征点的位置信息和/或第一位姿。
在一些示例中,本公开实施例提供的定位方法,通过预先对用户所处的场景进行图像采集,进而可以基于预先确定的该场景的历史图像作为先验信息。之后,基于先验信息,进行视觉定位。同时,可以在定位的同时,对历史图像构建的空间地图进行地图更新,使得AR头盔可以更加准确地确定出当前的位置,提高定位的鲁棒性。具体的,空间地图的构建过程如下:
1、AR头盔对需要构建空间地图的场景进行图像采集(如:房间),得到房间在各个角度的历史图像,然后对所有的历史图像进行特征点提取,如:提取尺度不变特征变换(Scale-invariant feature transform,SIFT)特征点,或者提取于深度学习的特征点,得到至少一个历史特征点以及每个历史特征点的历史描述子。之后,采用极大值抑制算法对提取到的历史特征点进行处理,得到优化后的历史特征点。
2、对AR头盔采集的所有的历史图像进行处理,确定历史图像中的相似图像。如:通过netvlad计算每张历史图像的历史全局描述子。之后,通过计算两张历史图像的历史全局描述子之间的距离,之后根据距离确定相似图像,如:历史图像1与历史图像2之间的距离小于距离阈值,此时确定历史图像1与历史图像2为相似图像。
需要说明的是,上述示例中是以通过计算两张历史图像的历史全局描述子之间的距离,之后根据距离确定相似图像为例进行说明的。在他的一些示例中,还可以根据历史通信的拍摄时间,确定相似图像,如:确定历史图像1与历史图像2之间的拍摄时间小于时间阈值,此时确定历史图像1与历史图像2为相似图像。在另一些示例中,将AR头盔的图像采集装置在同一时刻采集的历史图像作为相似图像,如:AR头盔包含2个图像采集装置,分别为图像采集装置1和图像采集装置2。此时,确定图像采集装置1采集的历史图像1和图像采集装置2采集的历史图像2为同一时刻采集的,则确定历史图像1与历史图像2为相似图像。具体的,用户可以根据实际需求,选择确定相似图像的方式,此处不做限定。
3、采用colmap对相似图像进行逐帧增量式建图,得到待优化的空间地图。
4、采用优化因子图对待优化的空间地图中的历史图像进行优化,得到优化后的空间地图。之后,将优化后的空间地图存储至AR头盔的存储器中。其中,优化后的空间地图中包括每个历史特征点对应的三维坐标,以及历史描述子,每张历史图像对应的历史全局描述子。
可以看出,通过用户所处的场景进行图像采集,从而用户处于该场景时,由于AR头盔中预先存储了该场景的空间地图。这样,AR头盔可以根据历史图像、空间地图以及当前采集的第一图像,确定AR头盔的定位结果。
具体的,提取第一图像中包含的实际特征点,以及每个实际特征点对应的实际描述子的方式,与提取历史通信中的历史特征点,以及每个历史特征点对应的历史描述子的方式相同,此处不再赘述。
具体的,第一图像与历史图像为相同物理空间采集到的,如同一个房间,同一个走廊等。
S4、根据图像采集装置的标定参数,第一位姿,实际特征点的位置信息,确定图像采集装置的第二位姿。
在一些示例中,位置信息包括三维坐标和二维坐标,三维坐标为与实际特征点相匹配的历史特征点的三维坐标,二维坐标为实际特征点在第一图像中的像素坐标;确定第二位姿前,需要构造一个优化函数,如:
其中,Ki表示第i个相机的相机内参,Ti0表示第i个相机相对于第0个相机的相对外参,T0w表示第0个相机采集的第一图像的第一位姿,Pmwi表示第i个相机采集的第一图像中第m个实际特征点的三维坐标,pmwi表示第i个相机采集的第一图像中第m个实际特征点的二维坐标,N表示AR头盔包含的相机的总数量,i∈[0,N],且i和N均为大于或等于0的整数,M表示第i个相机采集的第一图像中包含的实际特征点的总数,m∈[0,M],且i和M均为大于或等于0的整数,第0个相机为AR头盔包含的相机中的任一个,第i个相机为AR头盔包含的相机中除第0个相机以外的相机。
在理想情况下,cost等于0,但是实际应用中cost通常大于0。为了使得得到的第二位姿能够最优,需要将第0个相机采集的第一图像的第一位姿作为初始值进行优化。之后,通过目标算法计算与第一位姿相关的位姿,分别带入优化函数中,如:通过目标算法计算与第一位姿相关的10个位姿,将第一位姿与该10个位姿分别带入优化函数中,确定cost取值。之后,确定最小的cost取值对应的位姿为该图像采集装置的第二位姿。
S5、根据第二位姿,确定虚拟现实设备的定位结果。
在一些示例中,虚拟现实设备与图像采集装置的空间位置关系是预先确定的,因此在确定了图像采集装置的第二位姿后,可以根据图像采集装置与虚拟现实设备之间预先规定的空间位置关系,以及第二位姿,确定虚拟现实设备的位姿。如此,可以根据虚拟现实设备的位姿,确定虚拟现实设备的定位结果。
具体的,虚拟现实设备可以是执行本公开实施例提供的定位方法的执行主体,如AR头盔。
由上述可知,本公开实施例提供的定位方法,通过在VR头盔中预先配置空间地图,这样在需要定位VR头盔时,可以基于图像采集装置采集的第一图像,以及历史图像,根据历史图像构建的空间地图,确定第一图像的图像信息,如此可以保证图像信息的准确性。之后,根据图像采集装置的标定参数,第一位姿,以及实际特征点的位置信息,确定图像采集装置的第二位姿。由于,第一位姿和位置信息的准确度更高,这样根据第二位姿,确定VR头盔的定位结果时,可以更加准确地确定出虚拟现实设备的定位结果。
作为本公开一种可选的实施方式,位置信息包括二维坐标和三维坐标;结合图2,如图3所示,本公开实施例提供的定位方法还包括S6和S7。
S6、对第一图像进行解算,确定三维坐标和二维坐标之间的转换关系等于第一位姿的实际特征点的实际总数。
在一些示例中,对第一图像进行解算时,可以根据第一图像中每个实际特征点对应的位置信息,对第一图像进行解算,确定三维坐标和二维坐标之间的转换关系等于第一位姿的实际特征点的实际总数。
在一些示例中,根据第一图像中每个实际特征点对应的位置信息,对第一图像进行解算时,可以根据第一图像中每个实际特征点对应的位置信息,对第一图像进行PnP解算,如此可以确定三维坐标和二维坐标之间的转换关系等于第一位姿的实际特征点的实际总数。
具体的,对第一图像进行PnP解算第一图像时,可以采用Epnp算法对第一图像进行解算,或者,采用Upnp算法对第一图像进行解算,或者采用P3P算法对第一图像进行解算,此处不做限定。
S7、在实际总数大于或等于预设阈值的情况下,基于第二位姿,优化空间地图中待优化图像的每个历史特征点的位置信息;其中,待优化图像包括实际总数大于或等于预设阈值的第一图像对应的历史图像。
在一些示例中,通过在第一图像中挑选具有足够观测的图像,对预设地图中的历史特征点进行更新,从而可以提高AR头盔的定位精度。如:当实际总数大于或等于预设阈值时,此时认为该第一图像是具有足够观测的图像。之后,通过第二位姿,与该第一图像对应的历史图像中的历史特征点的位置信息(如三维坐标)进行优化,从而可以得到更加精确的三维坐标。由于,预设地图中的历史地图点的三维坐标更加精确了,因此在使用预设地图进行定位时,可以提高AR头盔的定位精度。
作为本公开一种可选的实施方式,结合图2,如图4所示,上述S3具体可以通过下述S30和S31实现。
S30、根据历史图像构建的空间地图中的历史特征点与第一图像中的实际特征点进行匹配,确定每个实际特征点对应的位置信息空间地图。
具体的,在对AR头盔进行定位时,需要对历史特征点和实际特征点进行匹配,从而可以找到每个实际特征点对应的历史特征点。进而,可以确定每个实际特征点对应的位置信息,如:实际特征点在第一图像中的像素坐标,以及实际特征点对应的三维坐标。这样,可以根据第一图像中每个实际特征点对应的位置信息,确定第一图像的图像信息。
S31、根据位置信息,确定第一图像的图像信息。
作为本公开一种可选的实施方式,位置信息包括三维坐标和二维坐标,一个历史特征点对应一个三维坐标,一个实际特征点对应一个二维坐标;结合图4,如图5所示,上述S30具体可以通过下述S300和S301实现。
S300、对空间地图中的历史特征点与第一图像中的实际特征点进行匹配,确定每个实际特征点对应的历史特征点空间地图。
在一些示例中,对空间地图中的历史特征点与第一图像中的实际特征点进行匹配,如:采用k近邻分类(k-nearest neighbor classification)对空间地图中的历史特征点与第一图像中的实际特征点进行匹配,确定每个实际特征点对应的历史特征点。或者,采用随机抽样一致算法对空间地图中的历史特征点与第一图像中的实际特征点进行匹配,确定每个实际特征点对应的历史特征点。或者,根据历史特征点的历史描述子和实际特征点的实际描述子之间的距离,确定每个实际特征点对应的历史特征点。
S301、对每个实际特征点执行如下操作:根据实际特征点对应的二维坐标,以及实际特征点对应的历史特征点的三维坐标,确定实际特征点对应的位置信息。
在一些示例中,第一图像与历史图像进行匹配时,第一图像中的实际特征点对应历史图像中的一个历史特征点,由于每个历史特征点对应一个三维坐标。因此,可以将该实际特征点对应的历史特征点的三维坐标作为该实际特征点的三维坐标,由于每个实际特征点对应一个二维坐标(即实际特征点在第一图像中的像素坐标),这样就可以建立实际特征点中的二维坐标与历史特征点的三维坐标的对应关系,如此便得到了实际特征点对应的位置信息。之后,可以根据第一图像中每个实际特征点对应的位置信息,确定该第一图像的图像信息。
作为本公开一种可选的实施方式,一个历史特征点对应一个历史描述子,一个实际特征点对应一个实际描述子;结合图5,如图6所示,上述S300具体可以通过下述S3000实现。
S3000、根据空间地图中包含的历史特征点的历史描述子,和第一图像中的实际特征点的实际描述子,对历史特征点和实际特征点进行匹配,确定每个实际特征点对应的历史特征点。
在一些示例中,在对历史特征点和实际特征点进行匹配时,可以根据历史特征点的历史描述子与实际特征点的实际描述子之间的第一距离(如欧式距离),确定每个实际特征点对应的历史特征点。如:第一距离小于或等于预设阈值的情况下,确定第一距离对应的历史特征点和实际特征点二者相对应。
在其他的一些示例中,在对历史特征点和实际特征点进行匹配时,可以根据历史特征点的历史描述子与实际特征点的实际描述子之间的余弦相似度,确定每个实际特征点对应的历史特征点。如:余弦相似度小于或等于余弦阈值的情况下,确定第一距离对应的历史特征点和实际特征点二者相对应。
作为本公开一种可选的实施方式,结合图6,如图7所示,上述S3000具体可以通过下述S30000和S30001实现。
S30000、确定空间地图包含的历史特征点的历史描述子与第一图像中的实际特征点的实际描述子之间的第一距离。
S30001、在第一距离小于或等于预设阈值的情况下,确定第一距离对应的历史特征点和实际特征点二者相对应。
作为本公开一种可选的实施方式,结合图4,如图8所示,上述S31具体可以通过下述S310实现。
S310、根据第一图像中每个实际特征点对应的位置信息,对第一图像进行解算,确定第一图像的图像信息。
在一些示例中,根据第一图像中每个实际特征点对应的位置信息,对第一图像进行解算时,可以根据第一图像中每个实际特征点对应的位置信息,对第一图像进行PnP解算,如此可以确定第一图像的第一位姿以及实际总数。
具体的,对第一图像进行PnP解算第一图像时,可以采用Epnp算法对第一图像进行解算,或者,采用Upnp算法对第一图像进行解算,或者采用P3P算法对第一图像进行解算,此处不做限定。
作为本公开一种可选的实施方式,结合图3,如图9所示,本公开实施例提供的定位方法还包括:S8。
S8、对历史图像和第一图像进行匹配,确定每张第一图像对应的历史图像。
在一些示例中,确定每张第一图像对应的历史图像,是指确定与第一图像相似的历史图像。
具体的,确定每张第一图像对应的历史图像的过程,与确定历史图像中的相似图像的过程类似,此处不再赘述。
作为本公开一种可选的实施方式,一张历史图像对应一个历史全局描述子,一张第一图像对应一个实际全局描述子;结合图9,如图10所示,上述S8具体可以通过下述S80实现。
S8、根据历史图像的历史全局描述子和第一图像的实际全局描述子,对历史图像和第一图像进行匹配,确定每张第一图像对应的历史图像。
具体的,确定第一图像的实际全局描述子的过程,与确定历史图像的历史全局描述子的过程相同,此处不再赘述。
作为本公开一种可选的实施方式,结合图10,如图11所示,上述S80具体可以通过下述S800和S801实现。
S800、根据历史图像的历史全局描述子和第一图像的实际全局描述子,确定每个历史权利描述子与每个实际全局描述子之间的第二距离。
在一些示例中,可以通过计算历史全局描述子和实际全局描述子之间的欧式距离,并将该欧式距离作为历史全局描述子和实际全局描述子之间的第二距离。
S801、在第二距离小于目标阈值的情况下,确定第二距离对应的历史图像和第一图像二值相对应。
上述主要从方法的角度对本发明实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本发明能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本发明实施例可以根据上述方法示例对定位装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
如图12所示,本发明的实施例提供一种定位装置10的结构示意图。定位装置10包括获取单元101和处理单元102。
获取单元101,用于获取每个图像采集装置采集的第一图像;处理单元102,用于确定获取单元101获取的第一图像中的实际特征点;处理单元102,还用于根据图像采集装置采集的历史图像、根据历史图像构建的空间地图和获取单元101获取的第一图像,确定第一图像的图像信息;其中,图像信息包括:实际特征点的位置信息和/或第一位姿;处理单元102,还用于根据图像采集装置的标定参数,第一位姿,实际特征点的位置信息,确定图像采集装置的第二位姿;处理单元102,还用于根据第二位姿,确定虚拟现实设备的定位结果。
作为本公开一种可选的实施方式,位置信息包括二维坐标和三维坐标;处理单元102,还用于对获取单元101获取的第一图像进行解算,确定三维坐标和二维坐标之间的转换关系等于第一位姿的实际特征点的实际总数;处理单元102,还用于在实际总数大于或等于预设阈值的情况下,基于第二位姿,优化空间地图中待优化图像的每个历史特征点的位置信息;其中,待优化图像包括实际总数大于或等于预设阈值的第一图像对应的历史图像。
作为本公开一种可选的实施方式,处理单元102,具体用于对根据历史图像构建的空间地图中的历史特征点与获取单元101获取的第一图像中的实际特征点进行匹配,确定每个实际特征点对应的位置信息;处理单元102,具体用于根据位置信息,确定第一图像的图像信息。
作为本公开一种可选的实施方式,位置信息包括三维坐标和二维坐标,一个历史特征点对应一个三维坐标,一个实际特征点对应一个二维坐标;处理单元102,具体用于对空间地图中的历史特征点与获取单元101获取的第一图像中的实际特征点进行匹配,确定每个实际特征点对应的历史特征点;处理单元102,具体用于对每个实际特征点执行如下操作:根据实际特征点对应的二维坐标,以及实际特征点对应的历史特征点的三维坐标,确定实际特征点对应的位置信息。
作为本公开一种可选的实施方式,一个历史特征点对应一个历史描述子,一个实际特征点对应一个实际描述子;处理单元102,具体用于根据空间地图中包含的历史特征点的历史描述子,和获取单元101获取的第一图像中的实际特征点的实际描述子,对历史特征点和实际特征点进行匹配,确定每个实际特征点对应的历史特征点。
作为本公开一种可选的实施方式,处理单元102,具体用于确定空间地图包含的历史特征点的历史描述子与获取单元101获取的第一图像中的实际特征点的实际描述子之间的第一距离;处理单元102,具体用于在第一距离小于或等于预设阈值的情况下,确定第一距离对应的历史特征点和实际特征点二者相对应。
作为本公开一种可选的实施方式,处理单元102,具体用于根据获取单元101获取的第一图像中每个实际特征点对应的位置信息,对第一图像进行解算,确定第一图像的图像信息。
作为本公开一种可选的实施方式,处理单元102,还用于对历史图像和获取单元101获取的第一图像进行匹配,确定每张第一图像对应的历史图像。
作为本公开一种可选的实施方式,一张历史图像对应一个历史全局描述子,一张第一图像对应一个实际全局描述子;处理单元102,具体用于根据历史图像的历史全局描述子和获取单元101获取的第一图像的实际全局描述子,对历史图像和第一图像进行匹配,确定每张第一图像对应的历史图像。
作为本公开一种可选的实施方式,处理单元102,具体用于根据历史图像的历史全局描述子和获取单元101获取的第一图像的实际全局描述子,确定每个历史权利描述子与每个实际全局描述子之间的第二距离;处理单元102,具体用于在第二距离小于目标阈值的情况下,确定第二距离对应的历史图像和第一图像二值相对应。
其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,其作用在此不再赘述。
当然,本发明实施例提供的定位装置10包括但不限于上述模块,例如定位装置10还可以包括存储单元103。存储单元103可以用于存储该定位装置10的程序代码,还可以用于存储定位装置10在运行过程中生成的数据,如写请求中的数据等。
图13为本发明实施例提供的一种电子设备的结构示意图,如图13所示,该电子设备可以包括:至少一个处理器51、存储器52、通信接口53和通信总线54。
下面结合图13对电子设备的各个构成部件进行具体的介绍:
其中,处理器51是电子设备的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器51是一个中央处理器(Central Processing Unit,CPU),也可以是特定集成电路(Application Specific Integrated Circuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路,例如:一个或多个DSP,或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,FPGA)。
在具体的实现中,作为一种实施例,处理器51可以包括一个或多个CPU,例如图13中所示的CPU0和CPU1。且,作为一种实施例,电子设备10可以包括多个处理器,例如图13中所示的处理器51和处理器56。这些处理器中的每一个可以是一个单核处理器(Single-CPU),也可以是一个多核处理器(Multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
存储器52可以是只读存储器(Read-Only Memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(Random Access Memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(ElectricallyErasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器52可以是独立存在,通过通信总线54与处理器51相连接。存储器52也可以和处理器51集成在一起。
在具体的实现中,存储器52,用于存储本发明中的数据和执行本发明的软件程序。处理器51可以通过运行或执行存储在存储器52内的软件程序,以及调用存储在存储器52内的数据,执行空调器的各种功能。
通信接口53,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如无线接入网(Radio Access Network,RAN),无线局域网(Wireless Local Area Networks,WLAN)、终端、云端等。通信接口53可以包括获取单元101,以实现获取功能。
通信总线54,可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图13中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
作为一个示例,结合图12,定位装置10中的获取单元101实现的功能与图13中的通信接口53的功能相同,定位装置10处理单元102实现的功能与图13中的处理器51的功能相同,定位装置10存储单元103实现的功能与图13中的存储器52的功能相同。
本发明另一实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,当计算机程序被计算设备执行时,使得计算设备实现上述方法实施例所示的方法。
在一些实施例中,所公开的方法可以实施为以机器可读格式被编码在计算机可读存储介质上的或者被编码在其它非瞬时性介质或者制品上的计算机程序指令。
图14示意性地示出本发明实施例提供的计算机程序产品的概念性局部视图,计算机程序产品包括用于在计算设备上执行计算机进程的计算机程序。
在一个实施例中,计算机程序产品是使用信号承载介质410来提供的。信号承载介质410可以包括一个或多个程序指令,其当被一个或多个处理器运行时可以提供以上针对图2描述的功能或者部分功能。因此,例如,参考图2中所示的实施例,S1-S5的一个或多个特征可以由与信号承载介质410相关联的一个或多个指令来承担。此外,图14中的程序指令也描述示例指令。
在一些示例中,信号承载介质410可以包含计算机可读介质411,诸如但不限于,硬盘驱动器、紧密盘(CD)、数字视频光盘(DVD)、数字磁带、存储器、只读存储记忆体(read-only memory,ROM)或随机存储记忆体(random access memory,RAM)等等。
在一些实施方式中,信号承载介质410可以包含计算机可记录介质412,诸如但不限于,存储器、读/写(R/W)CD、R/W DVD、等等。
在一些实施方式中,信号承载介质410可以包含通信介质413,诸如但不限于,数字和/或模拟通信介质(例如,光纤电缆、波导、有线通信链路、无线通信链路、等等)。
信号承载介质410可以由无线形式的通信介质413(例如,遵守IEEE 802.41标准或者其它传输协议的无线通信介质)来传达。一个或多个程序指令可以是,例如,计算机可执行指令或者逻辑实施指令。
在一些示例中,诸如针对图12描述的定位装置10可以被配置为,响应于通过计算机可读介质411、计算机可记录介质412、和/或通信介质413中的一个或多个程序指令,提供各种操作、功能、或者动作。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (14)
1.一种定位方法,其特征在于,应用于包括多个图像采集装置的虚拟现实设备,包括:
获取每个图像采集装置采集的第一图像;
确定所述第一图像中的实际特征点;
根据所述图像采集装置采集的历史图像、根据所述历史图像构建的空间地图和所述空间地图第一图像,确定所述第一图像的图像信息;其中,所述图像信息包括:所述实际特征点的位置信息和/或第一位姿;
根据所述图像采集装置的标定参数,所述第一位姿,所述实际特征点的位置信息,确定所述图像采集装置的第二位姿;
根据所述第二位姿,确定所述虚拟现实设备的定位结果。
2.根据权利要求1所述的定位方法,其特征在于,所述位置信息包括二维坐标和三维坐标;
所述根据所述第二位姿,确定所述虚拟现实设备的定位结果前,所述方法还包括:
对所述第一图像进行解算,确定三维坐标和二维坐标之间的转换关系等于所述第一位姿的实际特征点的实际总数;
在所述实际总数大于或等于预设阈值的情况下,基于所述第二位姿,优化所述空间地图中待优化图像的每个历史特征点的位置信息;其中,所述待优化图像包括所述实际总数大于或等于预设阈值的第一图像对应的历史图像。
3.根据权利要求1所述的定位方法,其特征在于,所述根据所述图像采集装置采集的历史图像、根据所述历史图像构建的空间地图和所述第一图像,确定所述第一图像的图像信息,包括:
对根据所述历史图像构建的空间地图中的历史特征点与所述第一图像中的实际特征点进行匹配,确定每个实际特征点对应的位置信息;
根据所述位置信息,确定所述第一图像的图像信息。
4.根据权利要求3所述的定位方法,其特征在于,所述位置信息包括三维坐标和二维坐标,一个历史特征点对应一个三维坐标,一个实际特征点对应一个二维坐标;
所述对根据所述历史图像构建的空间地图中的历史特征点与所述第一图像中的实际特征点进行匹配,确定每个实际特征点对应的位置信息空间地图,包括:
对所述空间地图中的历史特征点与所述第一图像中的实际特征点进行匹配,确定每个所述实际特征点对应的历史特征点;
对每个所述实际特征点执行如下操作:根据所述实际特征点对应的二维坐标,以及所述实际特征点对应的历史特征点的三维坐标,确定所述实际特征点对应的位置信息。
5.根据权利要求4所述的定位方法,其特征在于,一个历史特征点对应一个历史描述子,一个实际特征点对应一个实际描述子;
所述对所述空间地图中的历史特征点与所述第一图像中的实际特征点进行匹配,确定每个所述实际特征点对应的历史特征点空间地图,包括:
根据所述空间地图中包含的历史特征点的历史描述子,和所述第一图像中的实际特征点的实际描述子,对所述历史特征点和所述实际特征点进行匹配,确定每个所述实际特征点对应的历史特征点。
6.根据权利要求5所述的定位方法,其特征在于,所述根据所述空间地图包含的历史特征点的历史描述子,和所述第一图像中的实际特征点的实际描述子,对所述历史特征点和所述实际特征点进行匹配,确定每个所述实际特征点对应的历史特征点,包括:
确定所述空间地图包含的历史特征点的历史描述子与所述第一图像中的实际特征点的实际描述子之间的第一距离;
在所述第一距离小于或等于预设阈值的情况下,确定所述第一距离对应的历史特征点和实际特征点二者相对应。
7.据权利要求3所述的定位方法,其特征在于,所述根据所述位置信息,确定所述第一图像的图像信息,包括:
根据所述第一图像中每个所述实际特征点对应的位置信息,对所述第一图像进行解算,确定所述第一图像的图像信息。
8.据权利要求2所述的定位方法,其特征在于,所述在所述实际总数大于或等于预设阈值的情况下,基于所述第二位姿,优化所述空间地图中待优化图像的每个历史特征点的位置信息前,所述方法还包括:
对所述历史图像和所述第一图像进行匹配,确定每张所述第一图像对应的历史图像。
9.根据权利要求8所述的定位方法,其特征在于,一张历史图像对应一个历史全局描述子,一张第一图像对应一个实际全局描述子;
所述对所述历史图像和所述第一图像进行匹配,确定每张所述第一图像对应的历史图像,包括:
根据所述历史图像的历史全局描述子和所述第一图像的实际全局描述子,对所述历史图像和所述第一图像进行匹配,确定每张所述第一图像对应的历史图像。
10.根据权利要求9所述的定位方法,其特征在于,所述根据所述历史图像的历史全局描述子和所述第一图像的实际全局描述子,对所述历史图像和所述第一图像进行匹配,确定每张所述第一图像对应的历史图像,包括:
根据所述历史图像的历史全局描述子和所述第一图像的实际全局描述子,确定每个所述历史权利描述子与每个所述实际全局描述子之间的第二距离;
在所述第二距离小于目标阈值的情况下,确定所述第二距离对应的历史图像和第一图像二值相对应。
11.一种定位装置,其特征在于,应用于包括多个图像采集装置的虚拟现实设备,包括:
获取单元,用于获取每个图像采集装置采集的第一图像;
处理单元,用于确定所述获取单元获取的所述第一图像中的实际特征点;
处理单元,还用于根据所述图像采集装置采集的历史图像、根据所述历史图像构建的空间地图和所述获取单元获取的所述第一图像,确定所述第一图像的图像信息;其中,所述图像信息包括:所述实际特征点的位置信息和/或第一位姿;
空间地图所述处理单元,还用于根据所述图像采集装置的标定参数,所述第一位姿,所述实际特征点的位置信息,确定所述图像采集装置的第二位姿;
所述处理单元,还用于根据所述第二位姿,确定所述虚拟现实设备的定位结果。
12.一种电子设备,其特征在于,包括:存储器和处理器,所述存储器用于存储计算机程序;所述处理器用于在执行计算机程序时,使得所述电子设备实现权利要求1-10任一项所述的定位方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,当所述计算机程序被计算设备执行时,使得所述计算设备实现权利要求1-10任一项所述的定位方法。
14.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机实现如权利要求1-10任一项所述的定位方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210986780.6A CN117635703A (zh) | 2022-08-17 | 2022-08-17 | 定位方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210986780.6A CN117635703A (zh) | 2022-08-17 | 2022-08-17 | 定位方法、装置和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117635703A true CN117635703A (zh) | 2024-03-01 |
Family
ID=90029150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210986780.6A Pending CN117635703A (zh) | 2022-08-17 | 2022-08-17 | 定位方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117635703A (zh) |
-
2022
- 2022-08-17 CN CN202210986780.6A patent/CN117635703A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111210429B (zh) | 点云数据划分方法及装置、障碍物检测方法及装置 | |
CN116188821B (zh) | 版权检测方法、系统、电子设备和存储介质 | |
CN113874870A (zh) | 基于图像的定位 | |
CN111582054B (zh) | 点云数据处理方法及装置、障碍物检测方法及装置 | |
CN109658454B (zh) | 一种位姿信息确定方法、相关装置及存储介质 | |
CN109918977B (zh) | 确定空闲车位的方法、装置及设备 | |
EP3460715B1 (en) | Template creation apparatus, object recognition processing apparatus, template creation method, and program | |
CN111553946B (zh) | 用于去除地面点云的方法及装置、障碍物检测方法及装置 | |
CN108573471B (zh) | 图像处理装置、图像处理方法以及记录介质 | |
CN110926478B (zh) | 一种ar导航路线纠偏方法、系统及计算机可读存储介质 | |
CN113592015B (zh) | 定位以及训练特征匹配网络的方法和装置 | |
EP2960859A1 (en) | Constructing a 3d structure | |
CN112102404B (zh) | 物体检测追踪方法、装置及头戴显示设备 | |
CN112198878A (zh) | 一种即时地图构建方法、装置、机器人及存储介质 | |
CN114926316A (zh) | 距离测量方法、装置、电子设备及存储介质 | |
CN114882465A (zh) | 视觉感知方法、装置、存储介质和电子设备 | |
Tian et al. | Automatic feature type selection in digital photogrammetry of piping | |
CN112197708B (zh) | 测量方法及装置、电子设备及存储介质 | |
CN112785651B (zh) | 用于确定相对位姿参数的方法和装置 | |
CN113379826A (zh) | 物流件的体积测量方法以及装置 | |
CN114882115B (zh) | 车辆位姿的预测方法和装置、电子设备和存储介质 | |
CN117635703A (zh) | 定位方法、装置和电子设备 | |
CN113808196A (zh) | 平面融合定位方法、装置、电子设备及存储介质 | |
CN113763468A (zh) | 一种定位方法、装置、系统及存储介质 | |
CN112967398B (zh) | 一种三维数据重建方法、装置及电子设备 |
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 |