CN113190120A - 位姿获取方法、装置、电子设备及存储介质 - Google Patents
位姿获取方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113190120A CN113190120A CN202110510890.0A CN202110510890A CN113190120A CN 113190120 A CN113190120 A CN 113190120A CN 202110510890 A CN202110510890 A CN 202110510890A CN 113190120 A CN113190120 A CN 113190120A
- Authority
- CN
- China
- Prior art keywords
- information
- image
- pose
- determining
- matching
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/012—Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
- Processing Or Creating Images (AREA)
- Studio Devices (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本申请涉及一种位姿获取方法、装置、电子设备及存储介质,所述方法包括:获取第一图像,其中,第一图像为电子设备针对待扫描对象扫描得到的图像;响应于第一位姿信息缺失或无效,获取第二图像,并根据第二图像和空间模型确定第一位姿信息,其中,第二图像为电子设备针对待扫描对象扫描得到的图像,第一位姿信息为电子设备和/或待扫描对象的位姿信息,其中,第二位姿信息为电子设备和/或待扫描对象的位姿信息;根据第一图像、空间模型和第一位姿信息,确定第二位姿信息;响应于第二位姿信息与第一位姿信息符合预设的第一条件,输出第二位姿信息;否则,确定第一位姿信息无效。
Description
技术领域
本申请涉及物体识别技术领域,尤其涉及一种位姿获取方法、装置、电子设备及存储介质。
背景技术
随着人工智能技术的发展,增强现实(Augmented Reality,AR)技术逐渐应用到了生产生活的各个领域。使用增强现实技术进行三维物体识别,可以根据识别结果呈现出增强现实的渲染效果,但是相关技术中使用增强现实技术识别三维物体的效率较低,准确率较差。
发明内容
本申请提供一种位姿获取方法、装置、电子设备及存储介质。
根据本申请实施例的第一方面,提供一种位姿获取方法,包括:
获取第一图像和待扫描对象的空间模型,其中,所述第一图像为电子设备针对待扫描对象扫描得到的图像;
响应于第一位姿信息缺失或无效,获取第二图像,并根据所述第二图像和所述空间模型确定所述第一位姿信息,其中,所述第二图像为所述电子设备针对所述待扫描对象扫描得到的图像,所述第一位姿信息为所述电子设备和/或所述待扫描对象的位姿信息;
根据所述第一图像、所述空间模型和所述第一位姿信息,确定第二位姿信息,其中,所述第二位姿信息为所述电子设备和/或所述待扫描对象的位姿信息;
响应于所述第二位姿信息与所述第一位姿信息符合预设的第一条件,输出所述第二位姿信息;否则,确定所述第一位姿信息无效。
在一个实施例中,根据所述第二图像和所述空间模型确定所述第一位姿信息,包括:
获取所述空间模型中与所述第二图像对应的至少一个图像帧,并确定所述第二图像的特征点与所述至少一个图象帧的特征点间的第一匹配信息;
获取所述空间模型中与所述至少一图像帧对应的点云,并根据所述第一匹配信息,确定所述第二图像的特征点与所述点云的三维点间的第二匹配信息;
根据所述第一匹配信息和所述第二匹配信息,确定所述第一位姿信息。
在一个实施例中,所述获取所述空间模型中与所述第二图像对应的至少一个图像帧,包括:
确定所述空间模型中的每个图像帧与所述第二图像的相似度;
将与所述第二图像的相似度高于预设的相似度阈值的图像帧,确定为与所述第二图像对应的图像帧。
在一个实施例中,所述确定所述第二图像的特征点与所述至少一个图象帧的特征点间的第一匹配信息,包括:
获取所述第二图像的特征点及描述子,以及所述图像帧的特征点及描述子;
根据所述第二图像的描述子和所述图像帧的描述子,确定所述第二图像的特征点与所述图像帧的特征点间的初始匹配信息;
根据所述初始匹配信息,确定所述第二图像与所述图像帧的基础矩阵和/或本质矩阵;
根据所述基础矩阵和/或本质矩阵,对所述初始匹配信息进行过滤,得到所述第一匹配信息。
在一个实施例中,所述根据所述第一匹配信息,确定所述第二图像的特征点与所述点云的三维点间的第二匹配信息,包括:
将与所述图像帧的特征点匹配的所述第二图像的特征点,和与所述图像帧的特征点对应的所述点云的三维点进行匹配,得到所述第二匹配信息。
在一个实施例中,所述根据所述第一匹配信息和所述第二匹配信息,确定所述第一位姿信息,包括:
获取所述电子设备的重力加速度;
根据所述第一匹配信息和所述第二匹配信息以及所述重力加速度,确定所述第一位姿信息。
在一个实施例中,所述根据所述第一图像、所述空间模型和所述第一位姿信息,确定第二位姿信息,包括:
根据所述第一位姿信息和所述第一图像,确定所述第一图像对应的第三位姿信息,其中,所述第三位姿信息为所述电子设备相对所述待扫描对象的位姿信息;
根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的点云的三维点间的第三匹配信息;
响应于所述第三匹配信息符合预设的第二条件,根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的至少一个图像帧的特征点间的第四匹配信息;
根据所述第三匹配信息和所述第四匹配信息,确定所述第二位姿信息。
在一个实施例中,所述第一位姿信息包括第四位姿信息,其中,所述第四位姿信息为所述待扫描对象在世界坐标系内的位姿信息;
所述根据所述第一位姿信息和所述第一图像,确定所述第一图像对应的第三位姿信息,包括:
根据所述第一图像,从定位模块获取第五位姿信息,其中,所述第五位姿信息为所述电子设备在世界坐标系内的位姿信息;
根据所述第四位姿信息和所述第五位姿信息,确定所述第三位姿信息。
在一个实施例中,所述根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的点云的三维点间的第三匹配信息,包括:
根据所述第三位姿信息,将所述空间模型的点云投影至所述第一图像上,形成多个投影点,并提取每个所述投影点的描述子;
提取所述第一图像帧的特征点和描述子;
根据所述特征点对应的描述子和所述投影点的描述子,确定所述特征点与所述点云的三维点间的第三匹配信息。
在一个实施例中,所述根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的至少一个图像帧的特征点间的第四匹配信息,包括:
根据所述第三位姿信息,以及所述空间模型的图像帧的位姿信息,确定与所述第三位姿信息匹配的至少一个图像帧;
获取所述第一图像的特征点和描述子,以及与所述第三位姿信息匹配的图像帧的特征点和描述子;
根据所述第一图像的描述子和所述图像帧的描述子,确定所述第一图像的特征点与所述图像帧的特征点间的第四匹配信息。
在一个实施例中,所述根据所述第三匹配信息和所述第四匹配信息,确定所述第二位姿信息,包括:
获取所述电子设备的重力加速度;
根据所述第三匹配信息、所述第四匹配信息和所述重力加速度,确定所述第二位姿信息。
在一个实施例中,所述第二位姿信息与所述第一位姿信息符合预设的第一条件,包括:
所述第二位姿信息与所述第一位姿信息的误差小于预设的误差阈值;和/或,
所述第三匹配信息符合预设的第二条件,包括:
所述第一图像与所述空间模型的点云间的匹配组合的数量,大于预设的数量阈值,其中,所述匹配组合包括相互匹配的特征点和三维点。
在一个实施例中,所述获取待扫描对象空间模型,包括:
获取所述电子设备针对所述待扫描对象扫描得到多帧建模图像,并同步获取每帧建模图像对应的第六位姿信息;
将所述多帧建模图像的特征点进行匹配,并根据匹配结果对所述特征点进行三角化,以形成点云;
从所述多帧建模图像中确定至少一个图像帧,并确定每个图像帧对应的点云;
将所述至少一个图像帧、每个图像帧对应的第六位姿信息以及所述点云构建为空间模型。
根据本申请实施例的第二方面,提供一种位姿获取装置,包括:
获取模块,用于获取第一图像和待扫描对象的空间模型,其中,所述第一图像为电子设备针对待扫描对象扫描得到的图像;
第一位姿模块,用于响应于第一位姿信息缺失或无效,获取第二图像,并根据所述第二图像和所述空间模型确定所述第一位姿信息,其中,所述第二图像为所述电子设备针对所述待扫描对象扫描得到的图像,所述第一位姿信息为所述电子设备和/或所述待扫描对象的位姿信息;
第二位姿模块,用于根据所述第一图像、所述空间模型和所述第一位姿信息,确定第二位姿信息,其中,所述第二位姿信息为所述电子设备和/或所述待扫描对象的位姿信息;
输出模块,用于响应于所述第二位姿信息与所述第一位姿信息符合预设的第一条件,输出所述第二位姿信息;否则,确定所述第一位姿信息无效
在一个实施例中,所述第一位姿模块具体用于:
获取所述空间模型中与所述第二图像对应的至少一个图像帧,并确定所述第二图像的特征点与所述至少一个图象帧的特征点间的第一匹配信息;
获取所述空间模型中与所述至少一图像帧对应的点云,并根据所述第一匹配信息,确定所述第二图像的特征点与所述点云的三维点间的第二匹配信息;
根据所述第一匹配信息和所述第二匹配信息,确定所述第一位姿信息
在一个实施例中,所述第一位姿模块用于获取所述空间模型中与所述第二图像对应的至少一个图像帧时,具体用于:
确定所述空间模型中的每个图像帧与所述第二图像的相似度;
将与所述第二图像的相似度高于预设的相似度阈值的图像帧,确定为与所述第二图像对应的图像帧。
在一个实施例中,所述第一位姿模块用于确定所述第二图像的特征点与所述至少一个图象帧的特征点间的第一匹配信息时,具体用于:
获取所述第二图像的特征点及描述子,以及所述图像帧的特征点及描述子;
根据所述第二图像的描述子和所述图像帧的描述子,确定所述第二图像的特征点与所述图像帧的特征点间的初始匹配信息;
根据所述初始匹配信息,确定所述第二图像与所述图像帧的基础矩阵和/或本质矩阵;
根据所述基础矩阵和/或本质矩阵,对所述初始匹配信息进行过滤,得到所述第一匹配信息。
在一个实施例中,所述第一位姿模块用于根据所述第一匹配信息,确定所述第二图像的特征点与所述点云的三维点间的第二匹配信息时,具体用于:
将与所述图像帧的特征点匹配的所述第二图像的特征点,和与所述图像帧的特征点对应的所述点云的三维点进行匹配,得到所述第二匹配信息。
在一个实施例中,所述第一位姿模块用于根据所述第一匹配信息和所述第二匹配信息,确定所述第一位姿信息时,具体用于:
获取所述电子设备的重力加速度;
根据所述第一匹配信息和所述第二匹配信息以及所述重力加速度,确定所述第一位姿信息
在一个实施例中,所述第二位姿模块具体用于:
根据所述第一位姿信息和所述第一图像,确定所述第一图像对应的第三位姿信息,其中,所述第三位姿信息为所述电子设备相对所述待扫描对象的位姿信息;
根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的点云的三维点间的第三匹配信息;
响应于所述第三匹配信息符合预设的第二条件,根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的至少一个图像帧的特征点间的第四匹配信息;
根据所述第三匹配信息和所述第四匹配信息,确定所述第二位姿信息。
在一个实施例中,所述第一位姿信息包括第四位姿信息,其中,所述第四位姿信息为所述待扫描对象在世界坐标系内的位姿信息;
所述第二位姿模块用于根据所述第一位姿信息和所述第一图像,确定所述第一图像对应的第三位姿信息时,具体用于:
根据所述第一图像,从定位模块获取第五位姿信息,其中,所述第五位姿信息为所述电子设备在世界坐标系内的位姿信息;
根据所述第四位姿信息和所述第五位姿信息,确定所述第三位姿信息。
在一个实施例中,第二位姿模块用于根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的点云的三维点间的第三匹配信息时,具体用于:
根据所述第三位姿信息,将所述空间模型的点云投影至所述第一图像上,形成多个投影点,并提取每个所述投影点的描述子;
提取所述第一图像帧的特征点和描述子;
根据所述特征点对应的描述子和所述投影点的描述子,确定所述特征点与所述点云的三维点间的第三匹配信息。
在一个实施例中,第二位姿模块用于根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的至少一个图像帧的特征点间的第四匹配信息时,具体用于:
根据所述第三位姿信息,以及所述空间模型的图像帧的位姿信息,确定与所述第三位姿信息匹配的至少一个图像帧;
获取所述第一图像的特征点和描述子,以及与所述第三位姿信息匹配的图像帧的特征点和描述子;
根据所述第一图像的描述子和所述图像帧的描述子,确定所述第一图像的特征点与所述图像帧的特征点间的第四匹配信息。
在一个实施例中,第二位姿模块用于根据所述第三匹配信息和所述第四匹配信息,确定所述第二位姿信息时,具体用于:
获取所述电子设备的重力加速度;
根据所述第三匹配信息、所述第四匹配信息和所述重力加速度,确定所述第二位姿信息。
在一个实施例中,所述第二位姿信息与所述第一位姿信息符合预设的第一条件,包括:
所述第二位姿信息与所述第一位姿信息的误差小于预设的误差阈值;和/或,
所述第三匹配信息符合预设的第二条件,包括:
所述第一图像与所述空间模型的点云间的匹配组合的数量,大于预设的数量阈值,其中,所述匹配组合包括相互匹配的一对特征点和三维点。
在一个实施例中,所述获取模块用于获取待扫描对象空间模型时,具体用于:
获取所述电子设备针对所述待扫描对象扫描得到多帧建模图像,并同步获取每帧建模图像对应的第六位姿信息;
将所述多帧建模图像的特征点进行匹配,并根据匹配结果对所述特征点进行三角化,以形成点云;
从所述多帧建模图像中确定至少一个图像帧,并确定每个图像帧对应的点云;
将所述至少一个图像帧、每个图像帧对应的第六位姿信息以及所述点云构建为空间模型。
根据本申请实施例的第三方面,提供一种电子设备,所述设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现第一方面所述的方法。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现第一方面所述的方法。
根据上述实施例可知,通过获取电子设备针对待扫描对象扫描得到的第一图像和所述待扫描对象的空间模型,并响应于第一位姿信息缺失或无效,获取第二图像,根据所述第二图像和所述空间模型确定所述第一位姿信息,再根据所述第一图像、所述空间模型和第一位姿信息,确定第二位姿信息,最后响应于所述第二位姿信息与所述第一位姿信息符合预设的第一条件,输出所述第二位姿信息,否则确定第一位姿信息无效。由于第一位姿信息是根据所述电子设备针对所述待扫描对象扫描得到的第二图像和所述空间模型确定的,且确定第一位姿信息后,可以持续用于确定多帧第一图像对应的第二位姿信息,直至第二位姿信息与第一位姿信息不符合第一条件才更新一次第一位姿信息,因此可以提高位姿信息获取的效率和准确率,即提高使用增强现实技术识别三维物体的效率和准确率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请实施例示出的位姿信息获取方法的流程图;
图2是本申请实施例示出的电子设备采集图像的示意图;
图3是本申请实施例示出的空间模型的获取过程的示意图;
图4是本申请实施例示出的位姿信息获取装置的结构示意图;
图5是本申请实施例示出的电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
相关技术中,使用增强现实技术识别三维物体时,电子设备显示空间模型的同时呈现针对待扫描对象扫描得到的预览图像,用户需要人工对齐空间模型和待扫描对象的预览图像,即需要寻找到合适的视角,使待扫描对象呈现在电子设备上的轮廓和空间模型的轮廓相匹配,才能在此基础上通过扫描跟踪待扫描对象,且一旦跟踪失败,用户还需要重新回到最初找到的合适的视角,重新对齐空间模型和待扫描对象的预览图像,因此跟踪待扫描对象的效率和准确率均较低,用户操作难度大,使用体验差。
第一方面,本申请至少一个实施例提供了一种位姿获取方法,请参照附图1,其示出了该方法的流程,包括步骤S101至步骤S103。
其中,该方法可以由终端设备或服务器等电子设备执行,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字处理(Personal Digital Assistant,PDA)手持设备、计算设备、车载设备、可穿戴设备等,该方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。或者,可以通过服务器执行该方法,服务器可以为本地服务器、云端服务器等。
在步骤S101中,获取第一图像和待扫描对象的空间模型,其中,所述第一图像为电子设备针对待扫描对象扫描得到的图像。
其中,电子设备可以为手机、平板电脑等终端设备,也可以为相机、扫描设备等图像采集设备。当电子设备为终端设备时,本步骤中获取第一图像、后续步骤中第二位姿信息的确定和输出以及第一位姿信息的确定和更新,也都可以由终端设备执行。待扫描对象可以是现实增强技术针对的三维物体。
电子设备针对待扫描对象进行扫描时,可以连续获得多帧第一图像,即获得一个图像序列;第一图像就是上述图像序列中的任意一帧,也就是说,本申请实施例提供的位姿获取方法可以针对上述图像序列中的任意一帧来执行;可选的,可以在电子设备针对待扫描对象进行扫描时,针对得到的每一帧第一图像均执行该方法,即得到每一帧第一图像对应的第二位姿信息。电子设备针对待扫描对象进行扫描时,可以是待扫描对象静止,电子设备环绕待扫描对象进行移动,例如,在图2所示的示例中,示出了电子设备环绕待扫描对象进行移动并采集图像时的三个图像帧的采集过程,即电子设备在上上一图像帧的位置采集一帧图像帧,然后移动至上一图像帧的位置采集一帧图像帧,再移动至当前图像帧的位置采集一帧图像帧。
空间模型包括该待扫描对象的点云、至少一个图像帧和每个图像帧对应的位姿信息(如下文提到的第六位姿信息)。其中,图像帧可以理解为,电子设备在对应的第六位姿信息下对待扫描对象拍摄得到的图像。每个图像帧对应部分点云,对应关系可以由建模过程中图像特征点三角化的关系确定,还可以由位姿信息确定。
在步骤S102中,响应于第一位姿信息缺失或无效,获取第二图像,并根据所述第二图像和所述空间模型确定所述第一位姿信息,其中,所述第二图像为所述电子设备针对所述待扫描对象扫描得到的图像,所述第一位姿信息为所述电子设备和/或所述待扫描对象的位姿信息。
该方法初始运行时,第一位姿信息是缺失的,因此需要确定第一位姿信息,该方法运行过程中,如果第一位姿信息无效,则需要重新确定第一位姿信息,即更新第一位姿信息。
其中,电子设备的位姿信息可以为电子设备在世界坐标系内的位姿信息(Tcw),即电子设备相对于世界坐标系的原点的位姿信息。待扫描对象的位姿信息可以为待扫描物在世界坐标系内的位姿信息(Tow),即待扫描对象相对于世界坐标系的原点的位姿信息。电子设备和待扫描对象的位姿信息可以为电子设备相对于待扫描对象的位姿信息(Tco)。
在步骤S103中,根据所述第一图像、所述空间模型和第一位姿信息,确定第二位姿信息,其中,所述第二位姿信息为所述电子设备和/或所述待扫描对象的位姿信息。
针对每一帧第一图像,确定对应的第二位姿信息时都要利用第一位姿信息,而第一位姿信息是可以重复利用的,直至其被更新。由于第一位姿信息的利用,可以避免用户人工对齐模型和待扫描对象的操作,从而可以提高获取第二位姿信息的效率和准确率,进而提高跟踪待扫描对象的效率和准确率。
第一位姿信息可以由检测器或检测模块确定,检测器或检测模块用于获取电子设备扫描得到的图像作为第二图像,并根据第二图像和空间模型确定第一位姿信息,即检测器或检测模块用于得出跟踪起点,即指导***对待扫描对象的跟踪。第二位姿信息可以由***或跟踪模块确定,***或跟踪模块用于获取电子设备扫描得到的图像作为第一图像,并利用第一图像、空间模型和第一位姿信息确定第二位姿信息,即***或跟踪模块用于跟踪待扫描对象。确定第一位姿信息时,只能利用第一图像和空间模型,无其他指导信息,而确定第二位姿信息时,在利用第二图像和空间模型的基础上,还增加了第一位姿信息的指导,因此确定第一位姿信息的速度比确定第二位姿信息的速度慢,即确定第一位姿信息的效率较之确定第二位姿信息的效率低,因此第一位姿信息的确定可以提高第二位姿信息的准确率,第二位姿信息重复利用第一位姿信息可以提高效率。
需要注意的是,电子设备扫描得到的一帧图像,既能够作为第一图像,也能够作为第二图像,还可以同时作为第一图像和第二图像。当第一位姿信息缺失或无效时,即需要确定或更新第一位姿信息时,可以将电子设备扫描得到的图像作为第一图像;当第一位姿信息存在且有效时,即无需确定或更新第一位姿信息时,可以将电子设备扫描得到的图像作为第二图像;当电子设备扫描得到的一帧图像作为第一图像,用于确定第一位姿信息后,电子设备尚未扫描得到下一帧图像(例如电子设备相对于待扫描对象未发生移动或移动后还未到采集下一帧图像的周期),则该帧图像可以继续作为第二图像,用于确定第二位姿信息。
在步骤S104中,响应于所述第二位姿信息与所述第一位姿信息符合预设的第一条件,输出所述第二位姿信息;否则,确定所述第一位姿信息无效。
在一种可能的实施方式中,可以预设误差阈值,并预设第一条件为所述第二位姿信息与所述第一位姿信息的误差小于上述误差阈值。比较第一位姿信息和第二位姿信息的误差时,可以比较同种类型的位姿,即可以比较第一位姿信息中的电子设备在世界坐标系内的位姿信息和第二位姿信息中的电子设备在世界坐标系内的位姿信息,也可以比较第一位姿信息中的待扫描对象在世界坐标系内的位姿信息和第二位姿信息中的待扫描对象在世界坐标系内的位姿信息,还可以比较第一位姿信息中的电子设备相对待扫描对象的位姿信息和第二位姿信息中的电子设备相对待扫描对象的位姿信息。
第二位姿信息与第一位姿信息符合第一条件,可以表示第二位姿信息与第一位姿信息一致,则两种位姿信息均为有效位姿,因此将第二位姿信息输出,即将该帧第一图像的第二位姿信息输出,同时第一位姿信息可以继续用于确定下一帧第一图像的第二位姿信息。第二位姿信息较之第一位姿信息更全面,且对于各帧第一图像的针对性强、确定效率高,因此输出第二位姿信息更便于对待扫描对象的跟踪。
第二位姿信息与第一位姿信息不符合第一条件,可以表示第二位姿信息与第二位姿信息不一致,则两种位姿信息中的至少一种为无效位姿,因此第二位姿信息无法作为有效位姿进行输出,即该帧第一图像未获得有效位姿,同时第一位姿信息无法继续用于确定下一帧第一图像的第二位姿信息,即需要对第一位姿信息进行更新,此时可确定第一位姿信息无效。更新第一位姿信息,就是指重新获取第二图像,并利用重新获取的第二图像重新确定第一位姿信息,同时删除原第一位姿信息。
另外,当输出第二位姿信息后,可以根据第二位姿信息呈现对应的增强现实渲染效果。
根据上述实施例可知,通过获取电子设备针对待扫描对象扫描得到的第一图像和所述待扫描对象的空间模型,并响应于第一位姿信息缺失或无效,获取第二图像,根据所述第二图像和所述空间模型确定所述第一位姿信息,再根据所述第一图像、所述空间模型和第一位姿信息,确定第二位姿信息,最后响应于所述第二位姿信息与所述第一位姿信息符合预设的第一条件,输出所述第二位姿信息,否则确定第一位姿信息无效。由于第一位姿信息是根据所述电子设备针对所述待扫描对象扫描得到的第二图像和所述空间模型确定的,且确定第一位姿信息后,可以持续用于确定多帧第一图像对应的第二位姿信息,直至第二位姿信息与第一位姿信息不符合第一条件才更新一次第一位姿信息,因此可以提高位姿信息获取的效率和准确率,也就有利于提高使用增强现实技术识别三维物体的效率和准确率。
本申请的一些实施例中,可以按照下述方式根据第二图像和所述空间模型确定第一位姿信息:首先,获取所述空间模型中与所述第二图像对应的至少一个图像帧,并确定所述第二图像的特征点与所述至少一个图像帧的特征点间的第一匹配信息(由于第二图像和图像帧的特征点均为二维点,因此第一匹配信息为2D-2D匹配);接下来,获取所述空间模型中与所述至少一图像帧对应的点云,并根据所述第一匹配信息,确定所述第二图像的特征点与所述点云的三维点间的第二匹配信息(由于第二图像的特征点为二维点,因此第二匹配信息为2D-3D匹配);最后,根据所述第一匹配信息和所述第二匹配信息,确定所述第一位姿信息。
其中,获取空间模型中与第二图像对应的至少一个图像帧时:可以先确定所述空间模型中的每个图像帧与所述第二图像的相似度,再将与所述第二图像的相似度高于预设的相似度阈值的图像帧,确定为与所述第二图像对应的图像帧。相似度阈值提前预设,阈值越高,则筛选出的与第二图像对应的图像帧越少,阈值越低,则筛选出的与第二图像对应的图像帧越多。与第二图像对应的图像帧的位姿信息与第二图像的位姿信息相同或相近。在一个示例中,确定图像帧与第二图像的相似度时,可以通过计算图像帧的特征点与第二图像的特征点的欧氏距离,进而根据欧氏距离得到相似度。
可选的,可以将空间模型中的图像帧转换为图像检索信息,并提取第二图像的足够多的特征点,进而使用图像检索的方式查找到与第二图像相似度高于相似度阈值的的图像帧。可以通过聚类算法(例如k-means算法)将所有图像帧的描述子进行逐层聚类,从而得到表示这些描述子的单词组成的图像检索信息。图像检索的方式,指的是确定与第二图像的特征点的相似度超过相似度阈值的条件,然后利用上述条件对图像检索信息中的每个信息进行遍历,将满足上述条件的信息筛选出来,并将筛选出的信息对应的图像帧,作为与第二图像相似度高于相似度阈值的的图像帧。
其中,确定所述第二图像的特征点与所述至少一个图像帧的特征点间的第一匹配信息时:可以先获取所述第二图像的特征点及描述子,以及所述图像帧的特征点及描述子;再根据所述第二图像的描述子和所述图像帧的描述子,确定所述第二图像的特征点与所述图像帧的特征点间的初始匹配信息;然后根据所述初始匹配信息,确定所述第二图像与所述图像帧的基础矩阵和/或本质矩阵;最后,根据所述基础矩阵和/或本质矩阵,对所述初始匹配信息进行过滤,得到所述第一匹配信息。
可选的,确定初始匹配信息时,可以先为第二图像中的每个描述子在图像帧中寻找汉明距离最近的描述子,然后再反过来,为图像帧中的每个描述子在第二图像中寻找汉明距离最近的描述子,若第二图像中的某个描述子和图像帧中的某个描述子互为汉明距离最近的描述子,则认为上述两个描述子匹配,进而确定上述两个描述子对应的两个特征点匹配,全部的相互匹配的特征点组成了初始匹配信息。
可选的,确定基础矩阵和/或本质矩阵时,可以通过随机样本一致算法(RandomSample Consensus,RANSAC)计算得到。优选的,还可以通过RANSAC和5点算法计算出多个基础矩阵和/或本质矩阵,并确定每个基础矩阵和/或本质矩阵的内点,再将内点数最多的基础矩阵和/或本质矩阵确定为最终的计算结果。若相互匹配的两个特征点符合基础矩阵和/或本质矩阵,则该两个特征点为内点;相反的,若相互匹配的两个特征点不符合基础矩阵和/或本质矩阵,则该两个特征点为外点。利用基础矩阵和/或本质矩阵过滤初始匹配信息时,也是保留初始匹配信息中的内点,即删除初始匹配信息中的外点。
其中,根据所述第一匹配信息,确定所述第二图像的特征点与所述点云的三维点间的第二匹配信息时:可以将与所述图像帧的特征点匹配的所述第二图像的特征点,和与所述图像帧的特征点对应的所述点云的三维点进行匹配,得到所述第二匹配信息。也就是说,通过图像帧的特征点作为媒介,将第二图像的特征点与点云的三维点进行匹配。
其中,根据所述第一匹配信息和所述第二匹配信息,确定所述第一位姿信息时:可以先获取所述电子设备的重力加速度;再根据所述第一匹配信息和所述第二匹配信息以及所述重力加速度,确定所述第一位姿信息。
可选的,电子设备可以具有加速度传感器和/或陀螺仪等,因此可以从加速度传感器和/或陀螺仪等获取重力加速度。在计算机视觉中,可以使用PnP(pespective-n-point)算法,利用第一匹配信息求解出第一位姿信息,可以通过分解基础矩阵和/或本质矩阵,利用第二匹配信息求解出第一位姿信息。上述两种求解过程中,都可以加入重力加速度的约束条件,即利用重力加速度约束电子设备位姿中的旋转角(如roll角、pitch角)。然后,可以通过Hybrid形式综合上述两种求解过程,以求解出第一位姿信息,即综合利用第一匹配信息、第二匹配信息和重力加速度求解出第一位姿信息,该求解过程中需要六个不同的自由度,第一匹配信息能够提供1个自由度的约束,第二匹配信息能够提供2个自由度的约束,重力加速度提供1个自由度,可以随机选取一定数量的第一匹配信息、一定数量的第二匹配信息和重力加速度进行组合,构成六个自由度,来求解第一位姿信息,求解时,可以将第一匹配信息通过普吕克坐标系关系构建等式,将第一匹配信息通过相机投影矩阵模型构建等式,再通过求解器(例如Grobner Basis Solution)对联立的多个等式求解;或者分别通过RANSAC方式独立利用上述两种求解过程,以鲁棒求解出第一位姿信息,即按照不同的次数比例,先后交替选择第一匹配信息与重力加速度求解出第一位姿信息,和第二匹配信息与重力加速度求解出第一位姿信息,求解出的第一位姿信息与全部的匹配信息进行误差计算,当内点数量足够大(例如超过一定的阈值)时,确定此时的第一位姿信息是准确的,结束求解。
由于加入了重力加速度的约束条件,而且综合了第一匹配信息(2D-2D匹配)以及第二匹配信息(2D-3D匹配),使得所得到的第一位姿信息较为准确,进而能够使得基于该第一位姿信息得到的第二位姿信息较为准确。
上述实施例中,可以通过检测器或检测模块确定第一位姿信息,以供***或跟踪模块利用。
本申请的一些实施例中,可以按照下述方式根据所述第一图像、所述空间模型和第一位姿信息,确定第二位姿信息:首先,根据所述第一位姿信息和所述第一图像,确定所述第一图像对应的第三位姿信息,其中,所述第三位姿信息为所述电子设备相对所述待扫描对象的位姿信息;接下来,根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的点云的三维点间的第三匹配信息(由于第一图像的特征点为二维点,因此第三匹配信息为2D-3D匹配);接下来,响应于所述第三匹配信息符合预设的第二条件,根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的至少一个图像帧的特征点间的第四匹配信息(由于第一图像和图像帧的特征点均为二维点,因此第四匹配信息为2D-3D匹配);最后,根据所述第三匹配信息和所述第四匹配信息,确定所述第二位姿信息。
其中,第一位姿信息可以包括第四位姿信息,第四位姿信息为待扫描对象在世界坐标系内的坐标信息(Tow)。当待扫描对象的位置静止时,则第四位姿信息保持不变。基于此,根据所述第一位姿信息和所述第一图像,确定所述第一图像对应的第三位姿信息时:可以先根据所述第一图像,从定位模块获取第五位姿信息,其中,所述第五位姿信息为所述电子设备在世界坐标系内的位姿信息(Tcw);再根据所述第四位姿信息和所述第五位姿信息,确定所述第三位姿信息。
可选的,定位模块可以是视觉惯性同步定位与绘图(Visual InertialSimultaneous Localization and Mapping,VISLAM)模块,VISLAM在运行过程中可以实时输出电子设备在世界坐标系内的位姿信息。待扫描对象在世界坐标系内的位姿信息为待扫描对象的绝对位姿,电子设备在世界坐标系内的位姿信息为电子设备的绝对位姿,因此可以通过待扫描对象和电子设备在统一坐标系内的绝对位姿,确定二者的相对位姿,即电子设备相对于待扫描对象的位姿信息(Tco),或待扫描对象相对于电子设备的位姿信息(Toc),上述步骤中选择电子设备相对于待扫描对象的位姿信息(Tco)作为第三位姿信息,当然也可以选择待扫描对象相对于电子设备的位姿信息(Toc)作为第三位姿信息。
其中,根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的点云的三维点间的第三匹配信息时:可以先根据所述第三位姿信息,将所述空间模型的点云投影至所述第一图像上,形成多个投影点,并提取每个所述投影点的描述子;再提取所述第一图像帧的特征点和描述子;最后根据所述特征点对应的描述子和所述投影点的描述子,确定所述特征点与所述点云的三维点间的第三匹配信息。
由于第三位姿信息可以表征拍摄第一图像的电子设备与待扫描对象的相对位姿,即能够表征电子设备与待扫描对象的方向和角度,因此可以利用相机模型将点云投影映射当第一图像上。
由于点云的三维点可以是在建模过程中,通过图像帧的特征点匹配和三角化得到的,因此点云的每一个三维点都对应至少一个图像帧的特征点,提取一个三维点对应的所有特征点的描述子,并通过融合这些描述子得到该三维点的投影点的描述子。
可选的,确定第三匹配信息时,可以先为每个特征点的描述子寻找汉明距离最近的投影点的描述子,然后再反过来,为每个投影点的描述子寻找汉明距离最近的特征点的描述子,若某个特征点的描述子和某个投影点的描述子互为汉明距离最近的描述子,则认为上述两个描述子匹配,进而确定上述两个描述子对应的特征点和三维点匹配,全部的相互匹配的特征点和三维点组成了第三匹配信息。
本申请实施例中,第二条件可以是所述第一图像与所述空间模型的点云间的匹配组合的数量,大于预设的数量阈值。其中,所述匹配组合包括相互匹配的一对特征点和三维点。匹配组合的数量,在一定程度上表征了第一位姿信息的有效性,若第一位姿信息无效,则匹配组合的数量必然减少或消失,若第一位姿信息有效,则匹配组合的数量必然较多。第二条件的判断,是在步骤S104判断第一位姿信息的有效性之前的一个前置判断步骤,若第三匹配信息不符合第二条件,即匹配组合的数量小于或等于预设的数量阈值,则第一位姿信息必然与第二位姿信息不符合第一条件,因此无需进行后续求解第二位姿信息的步骤,可以直接判定第一位姿信息无效,若第三匹配信息符合第二条件,即匹配组合的数量大于预设的数量阈值,则还不能直接确定第一位姿信息是否有效,因此继续求解出第二位姿信息,并根据第一位姿信息和第二位姿信息是否符合第一条件,来判断第一位姿信息的有效性。
基于此,根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的至少一个图像帧的特征点间的第四匹配信息时,可以先根据所述第三位姿信息,以及所述空间模型的每个图像帧的位姿信息,确定与所述第三位姿信息匹配的至少一个图像帧;再获取所述第一图像的特征点和描述子,以及与所述第三位姿信息匹配的每个图像帧的特征点和描述子;最后根据所述第一图像的描述子和所述图像帧的描述子,确定所述第一图像的特征点与所述图像帧的特征点间的第四匹配信息。
每个图像帧均具有位姿信息(如下文的第六位姿信息),该位姿信息表征获取该图像帧的电子设备与待扫描对象的相对位姿,即电子设备在该相对位姿下时,可以获取到该图像帧;而第三位姿信息表征获取第一图像的电子设备与待扫描对象的相对位姿,即电子设备在该相对位姿下时,可以获取到该第一图像。当某个图像帧的位姿信息与某个第一图像的位姿信息相同或相近(例如角度差在预设范围内)时,则可以确定该图像帧与该第一图像相匹配。
确定第四匹配信息时,可以先为第一图像中的每个描述子在图像帧中寻找汉明距离最近的描述子,然后再反过来,为图像帧中的每个描述子在第一图像中寻找汉明距离最近的描述子,若第一图像中的某个描述子和图像帧中的某个描述子互为汉明距离最近的描述子,则认为上述两个描述子匹配,进而确定上述两个描述子对应的两个特征点匹配,全部的相互匹配的特征点组成了第四匹配信息。
其中,根据所述第三匹配信息和所述第四匹配信息,确定所述第二位姿信息时,可以先获取所述电子设备的重力加速度;再根据所述第三匹配信息、所述第四匹配信息和所述重力加速度,确定所述第二位姿信息。
可选的,电子设备可以具有加速度传感器和/或陀螺仪等,因此可以从加速度传感器和/或陀螺仪等获取重力加速度。在计算机视觉中,可以使用PnP算法,利用第四匹配信息求解出第二位姿信息,可以通过分解基础矩阵和/或本质矩阵算法,利用第三匹配信息求解出第二位姿信息。上述两种求解过程中,都可以加入重力加速度的约束条件,即利用重力加速度约束电子设备位姿中的旋转角(如roll角、pitch角)。然后,可以通过Hybrid形式综合上述两种求解过程,以求解出第二位姿信息,即综合利用第三匹配信息、第四匹配信息和重力加速度求解出第二位姿信息,该求解过程中需要六个不同的自由度,第一匹配信息能够提供1个自由度的约束,第二匹配信息能够提供2个自由度的约束,重力加速度提供1个自由度,可以随机选取一定数量的第三匹配信息、一定数量的第四匹配信息和重力加速度进行组合,构成六个自由度,来求解第二位姿信息,求解时,可以将第四匹配信息通过普吕克坐标系关系构建等式,将第三匹配信息通过相机投影矩阵模型构建等式,再通过求解器(例如Grobner Basis Solution)对联立的多个等式求解;或者分别通过RANSAC方式独立利用上述两种求解过程,以鲁棒求解出第二位姿信息,即按照不同的次数比例,先后交替选择第三匹配信息与重力加速度求解出第二位姿信息,和第四匹配信息与重力加速度求解出第二位姿信息,求解出的第二位姿信息与全部的匹配信息进行误差计算,当内点数量足够大(例如超过一定的阈值)时,确定此时的第二位姿信息是准确的,结束求解。
上述实施例中,可以通过***或跟踪模块确定第二位姿信息,且确定过程中利用检测器或检测模块得到的第一位姿信息。由于检测器或检测模块确定第一位姿信息的准确率高于***或跟踪模块,且效率低于***,因此利用检测器或检测模块确定(可以重复利用的)第一位姿信息,利用***或跟踪模块频繁输出第二位姿信息,既能够通过检测器或检测模块确定***的跟踪起点,从而提高位姿获取的准确性,且避免手动对齐空间模型与待扫描对象造成的繁琐操作和跟踪不准确,且能够保证位姿获取的效率。
本公开的一些实施例中,可以按照下述方式获取待扫描对象空间模型:首先,获取电子设备针对待扫描对象扫描得到多帧建模图像,并同步获取每帧建模图像对应的第六位姿信息;接下来,将所述多帧建模图像的特征点进行匹配,并根据匹配结果对所述特征点进行三角化,以形成点云;接下来,从所述多帧建模图像中确定至少一个图像帧,并确定每个图像帧对应的点云;最后,将所述至少一个图像帧、每个图像帧对应的第六位姿信息以及所述点云构建为空间模型。
进行特征匹配过程中,可以采用帧间描述子匹配或者是光流跟踪匹配的方法。三角化的过程中,通过两帧之间的匹配可以在连续帧之间对三维空间中某一个路标位置进行跟踪,通过这些连续多帧之间的匹配关系以及每一帧的位姿信息,可以构建等式方程组,通过对这个方程组求解,可以得到这个路标位置的深度信息。
电子设备扫描建模图像时的频率较高(例如采用30Hz的频率),而选择图像帧时可以只选择部分建模图像,从而使得整个模型的文件体积不会太大,有利于后续的文件共享,而且可减少模型在手机端运行时的内存耗费。
在一个示例中,空间模型的获取过程如图3所示,空间模型包括三维框中的点云和建模图像帧,且每个图像帧标注了第六位姿信息。第六位姿信息可以是电子设备相对于待扫描对象的位姿信息,可以先向电子设备内的定位模块,例如VISLAM模块获取电子设备在世界坐标系内的位姿信息,再将上述位姿信息与预先获得的待扫描对象在世界坐标系内的位姿信息进行结合,得到第六位姿信息。
在一个实施例中,终端设备可采用本申请提供的位姿信息获取方法对产品进行扫描。该产品附带一定的产品说明和效果展示,可以采用终端设备启动扫描程序,该程序可以运行本申请提供的位姿获取方法,从而能够在终端设备扫描产品时得到第一位姿信息并输出第二位姿信息,当输出第二位姿信息时,该程序可以根据第二位姿信息与产品说明和/或效果展示的映射效果,在终端设备的显示屏上利用现实增强技术呈现出对应的产品说明和/或效果展示。例如,该产品是冰箱时,可以在第二位姿信息为终端设备正对冰箱的人机交互界面时,利用显示增强技术呈现出交互过程的说明和/或展示效果。
根据本申请实施例的第二方面,提供一种位姿获取装置,请参照附图4,其示出了该装置的结构示意图,包括:
获取模块401,用于获取第一图像和待扫描对象的空间模型,其中,所述第一图像为电子设备针对待扫描对象扫描得到的图像;
第一位姿模块402,用于响应于第一位姿信息缺失或无效,获取第二图像,并根据所述第二图像和所述空间模型确定所述第一位姿信息,其中,所述第二图像为所述电子设备针对所述待扫描对象扫描得到的图像,所述第一位姿信息为所述电子设备和/或所述待扫描对象的位姿信息;
第二位姿模块403,用于根据所述第一图像、所述空间模型和所述第一位姿信息,确定第二位姿信息,其中,所述第二位姿信息为所述电子设备和/或所述待扫描对象的位姿信息;
输出模块404,用于响应于所述第二位姿信息与所述第一位姿信息符合预设的第一条件,输出所述第二位姿信息;否则,确定所述第一位姿信息无效在本公开的一些实施例中,所述第一位姿模块具体用于:
获取所述空间模型中与所述第二图像对应的至少一个图像帧,并确定所述第二图像的特征点与所述至少一个图象帧的特征点间的第一匹配信息;
获取所述空间模型中与所述至少一图像帧对应的点云,并根据所述第一匹配信息,确定所述第二图像的特征点与所述点云的三维点间的第二匹配信息;
根据所述第一匹配信息和所述第二匹配信息,确定所述第一位姿信息
在本公开的一些实施例中,所述第一位姿模块用于获取所述空间模型中与所述第二图像对应的至少一个图像帧时,具体用于:
确定所述空间模型中的每个图像帧与所述第二图像的相似度;
将与所述第二图像的相似度高于预设的相似度阈值的图像帧,确定为与所述第二图像对应的图像帧。
在本公开的一些实施例中,所述第一位姿模块用于确定所述第二图像的特征点与所述至少一个图象帧的特征点间的第一匹配信息时,具体用于:
获取所述第二图像的特征点及描述子,以及所述图像帧的特征点及描述子;
根据所述第二图像的描述子和所述图像帧的描述子,确定所述第二图像的特征点与所述图像帧的特征点间的初始匹配信息;
根据所述初始匹配信息,确定所述第二图像与所述图像帧的基础矩阵和/或本质矩阵;
根据所述基础矩阵和/或本质矩阵,对所述初始匹配信息进行过滤,得到所述第一匹配信息。
在本公开的一些实施例中,所述第一位姿模块用于根据所述第一匹配信息,确定所述第二图像的特征点与所述点云的三维点间的第二匹配信息时,具体用于:
将与所述图像帧的特征点匹配的所述第二图像的特征点,和与所述图像帧的特征点对应的所述点云的三维点进行匹配,得到所述第二匹配信息。
在本公开的一些实施例中,所述第一位姿模块用于根据所述第一匹配信息和所述第二匹配信息,确定所述第一位姿信息时,具体用于:
获取所述电子设备的重力加速度;
根据所述第一匹配信息和所述第二匹配信息以及所述重力加速度,确定所述第一位姿信息
在本公开的一些实施例中,所述第二位姿模块具体用于:
根据所述第一位姿信息和所述第一图像,确定所述第一图像对应的第三位姿信息,其中,所述第三位姿信息为所述电子设备相对所述待扫描对象的位姿信息;
根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的点云的三维点间的第三匹配信息;
响应于所述第三匹配信息符合预设的第二条件,根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的至少一个图像帧的特征点间的第四匹配信息;
根据所述第三匹配信息和所述第四匹配信息,确定所述第二位姿信息。
在本公开的一些实施例中,所述第一位姿信息包括第四位姿信息,其中,所述第四位姿信息为所述待扫描对象在世界坐标系内的位姿信息;
所述第二位姿模块用于根据所述第一位姿信息和所述第一图像,确定所述第一图像对应的第三位姿信息时,具体用于:
根据所述第一图像,从定位模块获取第五位姿信息,其中,所述第五位姿信息为所述电子设备在世界坐标系内的位姿信息;
根据所述第四位姿信息和所述第五位姿信息,确定所述第三位姿信息。
在本公开的一些实施例中,第二位姿模块用于根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的点云的三维点间的第三匹配信息时,具体用于:
根据所述第三位姿信息,将所述空间模型的点云投影至所述第一图像上,形成多个投影点,并提取每个所述投影点的描述子;
提取所述第一图像帧的特征点和描述子;
根据所述特征点对应的描述子和所述投影点的描述子,确定所述特征点与所述点云的三维点间的第三匹配信息。
在本公开的一些实施例中,第二位姿模块用于根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的至少一个图像帧的特征点间的第四匹配信息时,具体用于:
根据所述第三位姿信息,以及所述空间模型的图像帧的位姿信息,确定与所述第三位姿信息匹配的至少一个图像帧;
获取所述第一图像的特征点和描述子,以及与所述第三位姿信息匹配的图像帧的特征点和描述子;
根据所述第一图像的描述子和所述图像帧的描述子,确定所述第一图像的特征点与所述图像帧的特征点间的第四匹配信息。
在本公开的一些实施例中,第二位姿模块用于根据所述第三匹配信息和所述第四匹配信息,确定所述第二位姿信息时,具体用于:
获取所述电子设备的重力加速度;
根据所述第三匹配信息、所述第四匹配信息和所述重力加速度,确定所述第二位姿信息。
在本公开的一些实施例中,所述第二位姿信息与所述第一位姿信息符合预设的第一条件,包括:
所述第二位姿信息与所述第一位姿信息的误差小于预设的误差阈值;和/或,
所述第三匹配信息符合预设的第二条件,包括:
所述第一图像与所述空间模型的点云间的匹配组合的数量,大于预设的数量阈值,其中,所述匹配组合包括相互匹配的一对特征点和三维点。
在本公开的一些实施例中,所述获取模块用于获取待扫描对象空间模型时,具体用于:
获取所述电子设备针对所述待扫描对象扫描得到多帧建模图像,并同步获取每帧建模图像对应的第六位姿信息;
将所述多帧建模图像的特征点进行匹配,并根据匹配结果对所述特征点进行三角化,以形成点云;
从所述多帧建模图像中确定至少一个图像帧,并确定每个图像帧对应的点云;
将所述至少一个图像帧、每个图像帧对应的第六位姿信息以及所述点云构建为空间模型。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在第三方面有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
第三方面,本申请至少一个实施例提供了一种电子设备,请参照附图5,其示出了该电子设备的结构,所述电子设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时基于第一方面任一项所述的方法对位姿信息进行获取。
第四方面,本申请至少一个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现第一方面任一项所述的方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。
第五方面,本申请至少一个实施例提供了一种计算机程序产品,包括计算机可读代码,当计算机可读代码在设备上运行时,设备中的处理器执行用于实现如第一方面任一项所述的方法的指令。
在本申请中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“多个”指两个或两个以上,除非另有明确的限定。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (16)
1.一种位姿获取方法,其特征在于,包括:
获取第一图像和待扫描对象的空间模型,其中,所述第一图像为电子设备针对待扫描对象扫描得到的图像;
响应于第一位姿信息缺失或无效,获取第二图像,并根据所述第二图像和所述空间模型确定所述第一位姿信息,其中,所述第二图像为所述电子设备针对所述待扫描对象扫描得到的图像,所述第一位姿信息为所述电子设备和/或所述待扫描对象的位姿信息;
根据所述第一图像、所述空间模型和所述第一位姿信息,确定第二位姿信息,其中,所述第二位姿信息为所述电子设备和/或所述待扫描对象的位姿信息;
响应于所述第二位姿信息与所述第一位姿信息符合预设的第一条件,输出所述第二位姿信息;否则,确定所述第一位姿信息无效。
2.根据权利要求1所述的位姿获取方法,其特征在于,根据所述第二图像和所述空间模型确定所述第一位姿信息,包括:
获取所述空间模型中与所述第二图像对应的至少一个图像帧,并确定所述第二图像的特征点与所述至少一个图象帧的特征点间的第一匹配信息;
获取所述空间模型中与所述至少一图像帧对应的点云,并根据所述第一匹配信息,确定所述第二图像的特征点与所述点云的三维点间的第二匹配信息;
根据所述第一匹配信息和所述第二匹配信息,确定所述第一位姿信息。
3.根据权利要求2所述的位姿获取方法,其特征在于,所述获取所述空间模型中与所述第二图像对应的至少一个图像帧,包括:
确定所述空间模型中的每个图像帧与所述第二图像的相似度;
将与所述第二图像的相似度高于预设的相似度阈值的图像帧,确定为与所述第二图像对应的图像帧。
4.根据权利要求2或3所述的位姿获取方法,其特征在于,所述确定所述第二图像的特征点与所述至少一个图象帧的特征点间的第一匹配信息,包括:
获取所述第二图像的特征点及描述子,以及所述图像帧的特征点及描述子;
根据所述第二图像的描述子和所述图像帧的描述子,确定所述第二图像的特征点与所述图像帧的特征点间的初始匹配信息;
根据所述初始匹配信息,确定所述第二图像与所述图像帧的基础矩阵和/或本质矩阵;
根据所述基础矩阵和/或本质矩阵,对所述初始匹配信息进行过滤,得到所述第一匹配信息。
5.根据权利要求2至4任一项所述的位姿获取方法,其特征在于,所述根据所述第一匹配信息,确定所述第二图像的特征点与所述点云的三维点间的第二匹配信息,包括:
将与所述图像帧的特征点匹配的所述第二图像的特征点,和与所述图像帧的特征点对应的所述点云的三维点进行匹配,得到所述第二匹配信息。
6.根据权利要求2至5任一项所述的位姿获取方法,其特征在于,所述根据所述第一匹配信息和所述第二匹配信息,确定所述第一位姿信息,包括:
获取所述电子设备的重力加速度;
根据所述第一匹配信息和所述第二匹配信息以及所述重力加速度,确定所述第一位姿信息。
7.根据权利要求1至6任一项所述的位姿获取方法,其特征在于,所述根据所述第一图像、所述空间模型和所述第一位姿信息,确定第二位姿信息,包括:
根据所述第一位姿信息和所述第一图像,确定所述第一图像对应的第三位姿信息,其中,所述第三位姿信息为所述电子设备相对所述待扫描对象的位姿信息;
根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的点云的三维点间的第三匹配信息;
响应于所述第三匹配信息符合预设的第二条件,根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的至少一个图像帧的特征点间的第四匹配信息;
根据所述第三匹配信息和所述第四匹配信息,确定所述第二位姿信息。
8.根据权利要求7所述的位姿获取方法,其特征在于,所述第一位姿信息包括第四位姿信息,其中,所述第四位姿信息为所述待扫描对象在世界坐标系内的位姿信息;
所述根据所述第一位姿信息和所述第一图像,确定所述第一图像对应的第三位姿信息,包括:
根据所述第一图像,从定位模块获取第五位姿信息,其中,所述第五位姿信息为所述电子设备在世界坐标系内的位姿信息;
根据所述第四位姿信息和所述第五位姿信息,确定所述第三位姿信息。
9.根据权利要求7或8所述的位姿获取方法,其特征在于,所述根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的点云的三维点间的第三匹配信息,包括:
根据所述第三位姿信息,将所述空间模型的点云投影至所述第一图像上,形成多个投影点,并提取每个所述投影点的描述子;
提取所述第一图像帧的特征点和描述子;
根据所述特征点对应的描述子和所述投影点的描述子,确定所述特征点与所述点云的三维点间的第三匹配信息。
10.根据权利要求7至9任一项所述的位姿获取方法,其特征在于,所述根据所述第三位姿信息,确定所述第一图像的特征点与所述空间模型的至少一个图像帧的特征点间的第四匹配信息,包括:
根据所述第三位姿信息,以及所述空间模型的图像帧的位姿信息,确定与所述第三位姿信息匹配的至少一个图像帧;
获取所述第一图像的特征点和描述子,以及与所述第三位姿信息匹配的图像帧的特征点和描述子;
根据所述第一图像的描述子和所述图像帧的描述子,确定所述第一图像的特征点与所述图像帧的特征点间的第四匹配信息。
11.根据权利要求7至10任一项所述的位姿获取方法,其特征在于,所述根据所述第三匹配信息和所述第四匹配信息,确定所述第二位姿信息,包括:
获取所述电子设备的重力加速度;
根据所述第三匹配信息、所述第四匹配信息和所述重力加速度,确定所述第二位姿信息。
12.根据权利要求7至11任一项所述的位姿获取方法,其特征在于,所述第二位姿信息与所述第一位姿信息符合预设的第一条件,包括:
所述第二位姿信息与所述第一位姿信息的误差小于预设的误差阈值;和/或,
所述第三匹配信息符合预设的第二条件,包括:
所述第一图像与所述空间模型的点云间的匹配组合的数量,大于预设的数量阈值,其中,所述匹配组合包括相互匹配的一对特征点和三维点。
13.根据权利要求1至12任一项所述的位姿获取方法,其特征在于,所述获取待扫描对象空间模型,包括:
获取所述电子设备针对所述待扫描对象扫描得到多帧建模图像,并同步获取每帧建模图像对应的第六位姿信息;
将所述多帧建模图像的特征点进行匹配,并根据匹配结果对所述特征点进行三角化,以形成点云;
从所述多帧建模图像中确定至少一个图像帧,并确定每个图像帧对应的点云;
将所述至少一个图像帧、每个图像帧对应的第六位姿信息以及所述点云构建为空间模型。
14.一种位姿获取装置,其特征在于,包括:
获取模块,用于获取第一图像和待扫描对象的空间模型,其中,所述第一图像为电子设备针对待扫描对象扫描得到的图像;
第一位姿模块,用于响应于第一位姿信息缺失或无效,获取第二图像,并根据所述第二图像和所述空间模型确定所述第一位姿信息,其中,所述第二图像为所述电子设备针对所述待扫描对象扫描得到的图像,所述第一位姿信息为所述电子设备和/或所述待扫描对象的位姿信息;
第二位姿模块,用于根据所述第一图像、所述空间模型和所述第一位姿信息,确定第二位姿信息,其中,所述第二位姿信息为所述电子设备和/或所述待扫描对象的位姿信息;
输出模块,用于响应于所述第二位姿信息与所述第一位姿信息符合预设的第一条件,输出所述第二位姿信息;否则,确定所述第一位姿信息无效。
15.一种电子设备,其特征在于,所述设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现权利要求1至13任一项所述的方法。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至13任一所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110510890.0A CN113190120B (zh) | 2021-05-11 | 2021-05-11 | 位姿获取方法、装置、电子设备及存储介质 |
PCT/CN2021/121034 WO2022237048A1 (zh) | 2021-05-11 | 2021-09-27 | 位姿获取方法、装置、电子设备、存储介质及程序 |
KR1020227017413A KR102464271B1 (ko) | 2021-05-11 | 2021-09-27 | 포즈 획득 방법, 장치, 전자 기기, 저장 매체 및 프로그램 |
TW111110513A TW202244680A (zh) | 2021-05-11 | 2022-03-22 | 位置姿勢獲取方法、電子設備及電腦可讀儲存媒體 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110510890.0A CN113190120B (zh) | 2021-05-11 | 2021-05-11 | 位姿获取方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113190120A true CN113190120A (zh) | 2021-07-30 |
CN113190120B CN113190120B (zh) | 2022-06-24 |
Family
ID=76981167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110510890.0A Active CN113190120B (zh) | 2021-05-11 | 2021-05-11 | 位姿获取方法、装置、电子设备及存储介质 |
Country Status (4)
Country | Link |
---|---|
KR (1) | KR102464271B1 (zh) |
CN (1) | CN113190120B (zh) |
TW (1) | TW202244680A (zh) |
WO (1) | WO2022237048A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022237048A1 (zh) * | 2021-05-11 | 2022-11-17 | 浙江商汤科技开发有限公司 | 位姿获取方法、装置、电子设备、存储介质及程序 |
CN116352323A (zh) * | 2023-04-10 | 2023-06-30 | 深圳市贝思科尔软件技术有限公司 | 一种交互式的焊接环境建模***及方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116758157B (zh) * | 2023-06-14 | 2024-01-30 | 深圳市华赛睿飞智能科技有限公司 | 一种无人机室内三维空间测绘方法、***及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160253807A1 (en) * | 2015-02-26 | 2016-09-01 | Mitsubishi Electric Research Laboratories, Inc. | Method and System for Determining 3D Object Poses and Landmark Points using Surface Patches |
CN109463003A (zh) * | 2018-03-05 | 2019-03-12 | 香港应用科技研究院有限公司 | 对象识别 |
US20190197196A1 (en) * | 2017-12-26 | 2019-06-27 | Seiko Epson Corporation | Object detection and tracking |
CN109947886A (zh) * | 2019-03-19 | 2019-06-28 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、电子设备及存储介质 |
CN110866496A (zh) * | 2019-11-14 | 2020-03-06 | 合肥工业大学 | 基于深度图像的机器人定位与建图方法和装置 |
CN110930453A (zh) * | 2019-10-30 | 2020-03-27 | 北京迈格威科技有限公司 | 目标物体定位方法、装置及可读存储介质 |
CN111199564A (zh) * | 2019-12-23 | 2020-05-26 | 中国科学院光电研究院 | 智能移动终端的室内定位方法、装置与电子设备 |
CN111311758A (zh) * | 2020-02-24 | 2020-06-19 | Oppo广东移动通信有限公司 | 增强现实处理方法及装置、存储介质和电子设备 |
CN111833457A (zh) * | 2020-06-30 | 2020-10-27 | 北京市商汤科技开发有限公司 | 图像处理方法、设备及存储介质 |
CN112637665A (zh) * | 2020-12-23 | 2021-04-09 | 北京市商汤科技开发有限公司 | 增强现实场景下的展示方法、装置、电子设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101308184B1 (ko) * | 2011-01-13 | 2013-09-12 | 주식회사 팬택 | 윈도우 형태의 증강현실을 제공하는 장치 및 방법 |
CN109087359B (zh) * | 2018-08-30 | 2020-12-08 | 杭州易现先进科技有限公司 | 位姿确定方法、位姿确定装置、介质和计算设备 |
CN112197764B (zh) * | 2020-12-07 | 2021-04-06 | 广州极飞科技有限公司 | 实时位姿确定方法、装置及电子设备 |
CN113190120B (zh) * | 2021-05-11 | 2022-06-24 | 浙江商汤科技开发有限公司 | 位姿获取方法、装置、电子设备及存储介质 |
-
2021
- 2021-05-11 CN CN202110510890.0A patent/CN113190120B/zh active Active
- 2021-09-27 KR KR1020227017413A patent/KR102464271B1/ko active IP Right Grant
- 2021-09-27 WO PCT/CN2021/121034 patent/WO2022237048A1/zh active Application Filing
-
2022
- 2022-03-22 TW TW111110513A patent/TW202244680A/zh unknown
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160253807A1 (en) * | 2015-02-26 | 2016-09-01 | Mitsubishi Electric Research Laboratories, Inc. | Method and System for Determining 3D Object Poses and Landmark Points using Surface Patches |
US20190197196A1 (en) * | 2017-12-26 | 2019-06-27 | Seiko Epson Corporation | Object detection and tracking |
CN109463003A (zh) * | 2018-03-05 | 2019-03-12 | 香港应用科技研究院有限公司 | 对象识别 |
CN109947886A (zh) * | 2019-03-19 | 2019-06-28 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、电子设备及存储介质 |
CN110930453A (zh) * | 2019-10-30 | 2020-03-27 | 北京迈格威科技有限公司 | 目标物体定位方法、装置及可读存储介质 |
CN110866496A (zh) * | 2019-11-14 | 2020-03-06 | 合肥工业大学 | 基于深度图像的机器人定位与建图方法和装置 |
CN111199564A (zh) * | 2019-12-23 | 2020-05-26 | 中国科学院光电研究院 | 智能移动终端的室内定位方法、装置与电子设备 |
CN111311758A (zh) * | 2020-02-24 | 2020-06-19 | Oppo广东移动通信有限公司 | 增强现实处理方法及装置、存储介质和电子设备 |
CN111833457A (zh) * | 2020-06-30 | 2020-10-27 | 北京市商汤科技开发有限公司 | 图像处理方法、设备及存储介质 |
CN112637665A (zh) * | 2020-12-23 | 2021-04-09 | 北京市商汤科技开发有限公司 | 增强现实场景下的展示方法、装置、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
李佳宁: "基于RGB-D摄像机的增强现实***关键技术研究", 《CNKI博士学位论文全文库》 * |
邢会明: "基于Kinect室内场景重建技术", 《CNKI优秀硕士学位论文全文数据库》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022237048A1 (zh) * | 2021-05-11 | 2022-11-17 | 浙江商汤科技开发有限公司 | 位姿获取方法、装置、电子设备、存储介质及程序 |
CN116352323A (zh) * | 2023-04-10 | 2023-06-30 | 深圳市贝思科尔软件技术有限公司 | 一种交互式的焊接环境建模***及方法 |
Also Published As
Publication number | Publication date |
---|---|
KR102464271B1 (ko) | 2022-11-07 |
WO2022237048A1 (zh) | 2022-11-17 |
TW202244680A (zh) | 2022-11-16 |
CN113190120B (zh) | 2022-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107990899B (zh) | 一种基于slam的定位方法和*** | |
CN110135455B (zh) | 影像匹配方法、装置及计算机可读存储介质 | |
CN107742311B (zh) | 一种视觉定位的方法及装置 | |
CN111445526B (zh) | 一种图像帧之间位姿的估计方法、估计装置和存储介质 | |
Ventura et al. | Global localization from monocular slam on a mobile phone | |
TWI574223B (zh) | 運用擴增實境技術之導航系統 | |
CN109683699B (zh) | 基于深度学习实现增强现实的方法、装置及移动终端 | |
CN110648397B (zh) | 场景地图生成方法、装置、存储介质及电子设备 | |
CN108051002A (zh) | 基于惯性测量辅助视觉的运输车空间定位方法及*** | |
CN112435338B (zh) | 电子地图的兴趣点的位置获取方法、装置及电子设备 | |
CN110986969B (zh) | 地图融合方法及装置、设备、存储介质 | |
CN112750203B (zh) | 模型重建方法、装置、设备及存储介质 | |
CN111127524A (zh) | 一种轨迹跟踪与三维重建方法、***及装置 | |
CN107329962B (zh) | 图像检索数据库生成方法、增强现实的方法及装置 | |
CN109472820B (zh) | 单目rgb-d相机实时人脸重建方法及装置 | |
CN113190120B (zh) | 位姿获取方法、装置、电子设备及存储介质 | |
CN108430032B (zh) | 一种实现vr/ar设备位置共享的方法及设备 | |
CN111798373A (zh) | 一种基于局部平面假设及六自由度位姿优化的快速无人机图像拼接方法 | |
JP2017036970A (ja) | 情報処理装置、情報処理方法、プログラム | |
KR20140054710A (ko) | 3차원 지도 생성 장치 및 3차원 지도 생성 방법 | |
WO2023005457A1 (zh) | 位姿计算方法和装置、电子设备、可读存储介质 | |
CN105809664B (zh) | 生成三维图像的方法和装置 | |
US20230298344A1 (en) | Method and device for determining an environment map by a server using motion and orientation data | |
JP6420605B2 (ja) | 画像処理装置 | |
CN114820935A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40049284 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |