CN111833403B - 用于空间定位的方法和装置 - Google Patents

用于空间定位的方法和装置 Download PDF

Info

Publication number
CN111833403B
CN111833403B CN202010729794.0A CN202010729794A CN111833403B CN 111833403 B CN111833403 B CN 111833403B CN 202010729794 A CN202010729794 A CN 202010729794A CN 111833403 B CN111833403 B CN 111833403B
Authority
CN
China
Prior art keywords
information
pose
color
current
camera
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.)
Active
Application number
CN202010729794.0A
Other languages
English (en)
Other versions
CN111833403A (zh
Inventor
吕宪伟
游振兴
韩锐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shining Reality Wuxi Technology Co Ltd
Original Assignee
Shining Reality Wuxi Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shining Reality Wuxi Technology Co Ltd filed Critical Shining Reality Wuxi Technology Co Ltd
Priority to CN202010729794.0A priority Critical patent/CN111833403B/zh
Publication of CN111833403A publication Critical patent/CN111833403A/zh
Priority to EP21850314.2A priority patent/EP4156105A4/en
Priority to US18/003,342 priority patent/US20230316608A1/en
Priority to PCT/CN2021/108394 priority patent/WO2022022449A1/zh
Application granted granted Critical
Publication of CN111833403B publication Critical patent/CN111833403B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/163Wearable computers, e.g. on a belt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image

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)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)

Abstract

本说明书的实施例提供了用于空间定位的方法和装置。该方法包括:获取特征区域信息和通过相机拍摄的当前图像;基于所述特征区域信息在当前图像中搜索交互设备的特征区域,以确定位置信息,其中,位置信息用于表示特征区域在当前图像中的位置;基于位置信息,确定与特征区域相对于相机的位置和姿态相关联的第一位姿信息;基于所述特征区域信息和第一位姿信息,计算特征区域在当前图像中的重投影误差;如果重投影误差小于或等于预设阈值,则基于第一位姿信息,确定与交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息。

Description

用于空间定位的方法和装置
技术领域
本说明书的实施例涉及信息技术领域,具体地,涉及用于空间定位的方法、电子设备、装置和机器可读存储介质。
背景技术
随着计算机和通信等各种技术的快速发展,增强现实(Augmented Reality,AR)等技术也随之迅速发展。AR技术一般是指通过计算机技术提供的信息来增加用户对现实场景感知的技术。具体而言,在AR技术中,可以利用计算机技术来将虚拟信息应用到真实世界,也就是将真实场景和虚拟图像(例如,虚拟物体、虚拟场景等等)实时地叠加在同一画面下,使得人眼同时观看到真实场景和虚拟图像的混合图像,从而达到增强现实的效果。
通常,用户可以通过交互设备与AR场景中的虚拟对象进行交互,以产生期望的效果。例如,用户可以移动交互设备,而交互设备的物理移动可以被转化为AR场景中的虚拟对象的移动,从而达到控制虚拟对象的目的。可见,在这种情况下,如何确定交互设备在空间中的位置成为需要解决的问题之一。
发明内容
针对现有技术,本说明书的实施例提供了用于空间定位的方法、电子设备、装置和机器可读存储介质。
一方面,本说明书的实施例提供了一种用于空间定位的方法,包括:获取特征区域信息和通过相机拍摄的当前图像;基于所述特征区域信息在所述当前图像中搜索交互设备的特征区域,以确定位置信息,其中,所述位置信息用于表示所述特征区域在所述当前图像中的位置;基于所述位置信息,确定与所述特征区域相对于所述相机的位置和姿态相关联的第一位姿信息;基于所述特征区域信息和所述第一位姿信息,计算所述特征区域在所述当前图像中的重投影误差;如果所述重投影误差小于或等于预设阈值,则基于所述第一位姿信息,确定与所述交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息。
另一方面,本说明书的实施例提供了一种用于空间定位的方法,包括:调用相机进行拍摄,以得到当前图像,所述当前图像包括交互设备的特征区域;向电子设备发送所述当前图像,以便所述电子设备基于所述当前图像来确定与所述交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息。
另一方面,本说明书的实施例提供了一种电子设备,包括:获取单元,用于获取特征区域信息和通过相机拍摄的当前图像;搜索单元,用于基于所述特征区域信息在所述当前图像中搜索交互设备的特征区域,以确定位置信息,其中,所述位置信息用于表示所述特征区域在所述当前图像中的位置;第一确定单元,用于基于所述位置信息,确定与所述特征区域相对于所述相机的位置和姿态相关联的第一位姿信息;计算单元,用于基于所述特征区域信息和所述第一位姿信息,计算所述特征区域在所述当前图像中的重投影误差;第二确定单元,用于如果所述重投影误差小于或等于预设阈值,则基于所述第一位姿信息,确定与所述交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息。
另一方面,本说明书的实施例提供了一种由于空间定位的装置,包括:调用单元,用于调用相机进行拍摄,以得到当前图像,所述当前图像包括交互设备的特征区域;发送单元,用于向电子设备发送所述当前图像,以便所述电子设备基于所述当前图像来确定与所述交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息。
另一方面,本说明书的实施例提供了一种电子设备,包括:至少一个处理器;与所述至少一个处理器进行通信的存储器,其上存储有可执行代码,所述可执行代码在被所述至少一个处理器执行时使得所述至少一个处理器实现上述电子设备所执行的方法。
另一方面,本说明书的实施例提供了一种用于空间定位的装置,包括:至少一个处理器;与所述至少一个处理器进行通信的存储器,其上存储有可执行代码,所述可执行代码在被所述至少一个处理器执行时使得所述至少一个处理器实现上述用于空间定位的装置所执行的方法。
另一方面,本说明书的实施例提供了一种机器可读存储介质,其存储有可执行代码,所述可执行代码在被执行时使得机器执行上述电子设备所执行的方法。
另一方面,本说明书的实施例提供了一种机器可读存储介质,其存储有可执行代码,所述可执行代码在被执行时使得机器执行上述用于空间定位的装置所执行的方法。
附图说明
通过结合附图对本说明书的实施例的更详细的描述,本说明书的实施例的上述以及其它目的、特征和优势将变得更加明显,其中,在本说明书的实施例中,相同的附图标记通常代表相同的元素。
图1是根据一个实施例的用于空间定位的方法的示意性流程图。
图2A至图2C是根据各个实施例的目标图片的示例的示意图。
图3是根据一个实施例的坐标系转换的一个示例。
图4是根据一个实施例的用于空间定位的过程的示意性流程图。
图5是根据一个实施例的用于空间定位的方法的示意性流程图。
图6是根据一个实施例的电子设备的示意性框图。
图7是根据一个实施例的用于空间定位的装置的示意性框图。
图8是根据一个实施例的电子设备的硬件结构图。
图9是根据一个实施例的用于空间定位的装置的硬件结构图。
具体实施方式
现在将参考各实施例讨论本文描述的主题。应当理解的是,讨论这些实施例仅是为了使得本领域技术人员能够更好地理解并且实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离权利要求书的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个实施例可以根据需要,省略、替换或者添加各种过程或组件。
如本文中使用的,术语“包括”及其变型表示开放的术语,含义是“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例”和“一实施例”表示“至少一个实施例”。术语“另一实施例”表示“至少一个其它实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下面可以包括其它的定义,无论是明确的还是隐含的,除非上下文中明确地指明,否则一个术语的定义在整个说明书中是一致的。
通常,用户可以通过AR设备来体验AR场景。AR设备通常可以为头戴式设备,比如眼镜、头盔等。用户可以通过交互设备与AR场景中的虚拟对象进行交互,以产生期望的效果。例如,用户可以移动交互设备,而交互设备的物理移动可以被转化为AR场景中的虚拟对象的移动,从而达到控制虚拟对象的目的。
如所已知的,物体在空间中具有六个自由度(Degree of Freedom,DoF),即沿着x、y和z三个直角坐标轴方向的移动自由度和绕着这三个坐标轴的转动自由度。虽然通过三个自由度也可以对物体进行定位,但是基于六个自由度,能够更加准确地确定物体的位置和姿态。因此,为了能够更加精准地控制AR场景中的虚拟对象来实现用户与AR设备的良好交互,期望的是针对交互设备能够实现6DoF功能。
鉴于此,本说明书的实施例提供了用于空间定位的技术方案,能够高效地实现针对交互设备的6DoF功能。
在本文中,交互设备可以理解为AR设备的手柄。
在一个实施例中,交互设备可以是本领域中具有计算、控制等功能的各种智能电子设备,比如智能手机、平板设备、智能可穿戴设备、具有计算功能的其它电子设备等等。在这种情况下,作为交互设备的智能电子设备可以承担部分或全部计算功能,其与显示部件电连接,智能电子设备执行计算将渲染结果传输给显示部件,同时,智能电子设备可以承担交互设备的功能。
在另一实施例中,交互设备可以是不具有计算功能的设备,比如不具有计算功能的简易手柄等。在这种情况下,AR设备独立完成计算功能,交互设备仅承担与AR设备交互的功能。AR设备可以是分体式设备,分体式设备一般包括电连接的显示部分和计算部分,显示部分一般不具有计算功能或比较少的计算功能,计算部分可以是具有计算功能的智能电子设备。智能电子设备可以执行相关的计算和处理功能,比如执行渲染功能,然后可以将渲染结果发送给显示部分以呈现渲染结果。智能电子设备可以包括智能手机、平板设备、膝上型计算机、台式计算机等等。AR设备还可以是一体式设备,即AR设备可以具有计算和处理功能,执行渲染功能,然后呈现渲染结果。
下面将结合具体实施例来描述本说明书的技术方案。
图1是根据一个实施例的用于空间定位的方法的示意性流程图。
例如,在交互设备是智能电子设备的情况下,图1的方法可以由该交互设备来执行。在交互设备是不具有计算功能的设备的情况下,图1的方法可以由具有计算功能的一体式设备或者分体式设备中的的计算部分来执行。
如图1所示,在步骤102中,可以获取特征区域信息和通过相机拍摄的当前图像。
获取的特征区域信息可以预先存储,特征区域信息是与交互设备的特征区域相关的信息。例如,交互设备的特征区域是图片,特征区域信息包括图片中的像素以及其对应的位置信息。
例如,该相机可以安装在AR设备上,或者不安装在AR设备上,例如能够提供较大的视场角的任何其它适当的位置上。该相机可以以较大的视场角针对某个较大的区域进行拍摄,比如交互设备所处的环境区域。通常,在交互设备配备有相机的情况下,步骤102中提到的相机的视场角可以比交互设备的相机更大。
在步骤104中,可以基于特征区域信息在当前图像中搜索交互设备的特征区域,以确定位置信息。位置信息可以用于表示特征区域在当前图像中的位置。
在步骤106中,可以基于位置信息,确定与特征区域相对于相机的位置和姿态相关联的第一位姿信息。
在步骤108中,可以基于特征区域信息和第一位姿信息,计算特征区域在当前图像中的重投影误差。
在步骤110中,如果重投影误差小于或等于预设阈值,则可以基于第一位姿信息,确定与交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息。
在一些情况下,交互设备可以为具有相机的智能电子设备。因此,在某些实现方式中,可能利用交互设备自身的相机来确定交互设备在空间中的位置。虽然利用交互设备的相机所捕获的图像,也有可能实现6DoF功能,但是存在若干缺点。比如,交互设备的相机持续运行可能极大地增加交互设备的功耗。此外,在大场景距离较远的情况下,基于交互设备的相机采集的图像来得到的位置和姿态可能会存在漂移,导致6DoF实现效果并不好,从而造成用户体验差。
在本文中,利用相机拍摄的图像来对交互设备的特征区域进行定位,进而能够确定交互设备当前在全局坐标系下的位置和姿态,由此能够高效地实现针对交互设备的6DoF功能。此外,与现有技术中仅利用交互设备本身的相机来定位交互设备相比,本文的实施例能够降低交互设备的功耗,并且甚至不需要在交互设备中配备有相机,从而能够降低交互设备的成本。
在一个实施例中,交互设备的特征区域可以包括交互设备上的各种可进行特征点检测的区域。
例如,交互设备的特征区域可以包括位于交互设备上的目标图片。再例如,交互设备的特征区域可以包括交互设备上的可进行特征点检测的物理结构。与目标图片和物理结构相关的特征区域信息可以预先进行存储。例如,与可进行特征点检测的物理结构相关的特征区域信息包括物理结构的形状及其对应的位置信息。
这样,基于交互设备上的可进行特征点检测的区域在当前图像中的位置,能够高效且准确地确定交互设备在全局坐标系下的位置和姿态。
在本文中,目标图片可以以各种形式设置在交互设备上。
例如,目标图片可以是非电子图片,比如纸质图片。这样,可以通过适当的附着方式(比如粘贴),将纸质图片附着在交互设备上。
再例如,交互设备可以包括显示屏幕,这样目标图片可以是电子图片,并且可以被显示在该显示屏幕上。在一些情况下,为了在当前图像中更好地检测到目标图片,目标图片可以占据显示屏幕达到某个比例以上,比如 50%。该比例可以根据实际需求、应用场景等来设置。
在本文中,在目标图片是电子图片的情况下,可以通过一些适当的方式来生成目标图片,以便更有利于进行图像检测。
在一个实施例中,可以经由/利用步骤102中提到的相机获取与交互设备的周围环境相关的环境图像信息。环境图像信息可以包括像素点的RGB 值。
可以基于环境图像信息,确定第一颜色。第一颜色可以是在环境图像信息中占比最低的颜色。例如,可以计算环境图像信息的颜色直方图,然后可以确定颜色直方图中具有最小颜色通道值的颜色,即环境图像信息中占比最低的颜色。
然后,可以基于第一颜色,生成目标图片,然后将目标图片显示在显示屏幕上。
在该实施例中,由于第一颜色是环境图像信息中占比最低的颜色,因此基于第一颜色来生成目标图片,有利于更快地确定交互设备在当前图像中的候选位置。可见,这种方式能够加快图像检测过程以及极大地降低检测计算量。
此外,在本文中,关于基于第一颜色生成目标图片,可以存在多种实现方式。
在一个实施例中,可以通过取反色处理来确定与第一颜色相反的第二颜色。比如,可以通过值255减去第一颜色的RBG值来得到第二颜色。当然,也可以采用各种适用的取反色方式来得到第二颜色。本文对此不作限制。
然后可以基于第一颜色和第二颜色来生成目标图片。例如,目标图片可以包括第一颜色和第二颜色,并且在目标图片中,目标图片的边缘部分的颜色可以为第一颜色,目标图片的中心部分的颜色为第二颜色。例如,图2A示出了目标图片的一个示例。为了便于说明,在图2A的示例中,将目标图片表示为矩形。然而,应当理解的是,在具体实现时,目标图片可以具有其它各种形状,比如圆形、多边形等等,本文对此不作限定。
在该实施例中,利用在环境图像信息中占比最低的颜色作为与环境邻接的颜色,能够加速图像检测过程,降低检测计算量;而在目标图片中包括第一颜色以及作为第一颜色的反色的第二颜色,使得目标图片的对比度最大化,有利于在当前图像中快速定位特征点。
在另一实施例中,可以确定用户预设图片,然后可以基于用户预设图片和第一颜色来生成目标图片。具体而言,可以为用户预设图片添加具有第一颜色的边框,从而形成目标图片。例如,图2B示出了目标图片的一个示例。为了便于说明,在图2B的示例中,将边框表示为矩形边框。在具体实现时,边框可以具有其它各种形状,例如,圆形、圆角矩形、多边形等等,本文对此不作限定。
在该实施例中,通过在用户预设图片上添加边框,而边框具有在环境图像信息中占比最低的颜色,便于在当前图像中针对边框进行特征点定位。另外,用户可以根据实际场景、偏好等各种因素,来灵活地设置用户预设图片,能够提升用户体验。
在另一实施例中,可以生成具有第一颜色的边框图形作为目标图片。也就是说,目标图片是具有第一颜色的边框图形。相应地,可以在显示屏幕的边框处显示该边框图形。例如,图2C示出了一个示例。在图2C的示例中,为了便于说明,将边框表示为矩形。在具体实现时,边框可以具有其它各种形状,本说明书对此不作限定。
在该实施例中,目标图片可以占据显示屏幕的边框,不仅有利于在当前图像中进行特征点检测,而且能够减少对交互设备的显示资源的占用。比如,显示屏幕的其它部分可以用于显示其它内容。
应当理解的是,图2A-2C仅是为了帮助本领域技术人员更好地理解本说明书的实施例,而非限制所述技术方案的范围。
上面对特征区域进行了介绍,下面将进一步介绍如何确定位置信息。
在一个实施例中,在步骤104中,可以对当前图像进行全局搜索,找到交互设备的特征区域,从而得到位置信息。例如,如果当前图像是第一帧图像,则可以通过全局搜索来确定特征区域的位置信息。
如果当前图像不是第一帧图像,也可以通过局部搜索来确定位置信息。在这种情况下,可以首先估计特征区域的位置。例如,交互设备可以配备有惯性测量单元(InertialMeasurement Unit,IMU)。可以基于经由惯性测量单元获取的与交互设备三轴角速度和三轴加速度相关的先前IMU数据,确定特征区域在当前图像中的估计位置。
然后,可以基于估计位置,确定当前图像的潜在搜索区域。例如,可以将估计位置作为中心来得到潜在搜索区域。
之后,可以在潜在搜索区域中搜索交互设备的特征区域,从而得到位置信息。
具体而言,IMU通常可以包括加速度计和陀螺仪。加速度计可以测量得到交互设备的三轴加速度,而陀螺仪可以测量得到交互设备的三轴角速度。在本文中,这些信息可以被统称为IMU数据。
此外,交互设备通常进行平滑移动,而非瞬移,因此基于IMU数据,可以估计出交互设备接下来的位置和姿态。通过所估计出的位置和姿态,可以估计出交互设备的特征区域在下一帧图像中的可能位置。而基于该可能位置,可以确定在下一帧图像中的潜在搜索区域,这样可以在潜在搜索区域中快速地搜索到特征区域。
可见,通过这种方式,能够极大地加速对特征区域的检测过程,从而降低检索计算量。
如图1所示,在确定位置信息之后,可以在步骤106中,确定第一位姿信息。第一位姿信息可以表示特征区域相对于相机的位置和姿态,例如,位置、相对平移、旋转等。可以使用适当的算法来确定第一位姿信息,比如通过求解PNP(Perspective-N-Point,透视N点)问题以及ICP(Iterative Closest Point,迭代最近点)算法,来确定第一位姿信息。
之后在步骤108中,可以基于第一位姿信息,计算特征区域在当前图像中的重投影误差。
如果重投影误差小于或等于预设阈值,则认为第一位姿信息是可信的,因此可以基于第一位姿信息来确定与交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息。上述预设阈值可以是根据实际需求、经验等来设定的。
如果重投影误差太大的话(比如大于某个预设阈值),则说明第一位姿信息可能是不准确的。
在一种情况下,如果重投影误差大于预设阈值,可以基于当前图像,重新确定特征区域在当前图像中的位置。然后,基于重新确定的位置再次执行后续的步骤,比如确定新的第一位姿信息、计算新的重投影误差等等。
在另一实施例中,如果重投影误差大于预设阈值,可以获取通过上述相机拍摄的新图像,然后可以基于新图像,再次执行如上所述的针对当前图像的各个步骤。
比如,可以基于特征区域信息在新图像中搜索交互设备的特征区域,以确定特征区域在新图像中的新位置信息。然后基于新位置信息,可以确定与特征区域相对于相机的位置和姿态相关联的新的第一位姿信息。基于新的第一位姿信息,可以计算特征区域在新图像中的新的重投影误差。而如果新的重投影误差小于或等于预设阈值,则可以基于新的第一位姿信息,确定与交互设备在全局坐标系下的位置和姿态相关联的新的位姿信息。
如果新的重投影误差大于预设阈值,则可以基于新图像,重新确定特征区域在新图像中的位置,或者获取通过相机拍摄的另一新图像,以便在另一新图像中重新搜索特征区域。
由此,可以理解的是,图1的过程是不断循环的过程,因此,通过持续地确定特征区域在所拍摄的图像中的位置,能够持续地得到交互设备在全局坐标系中的位置和姿态。这样,通过持续得到的交互设备的位置和姿态,能够平滑地控制在AR场景中与之相关联的虚拟对象。
在本文中,关于确定当前位姿信息,也可以存在多种实现方式。
在一个实施例中,可以获取与相机在全局坐标系下的位置和姿态相关联的第二位姿信息。可以基于第一位姿信息和第二位姿信息来确定当前位姿信息。
具体而言,可以基于相机在全局坐标系下的位置和姿态以及交互设备的特征区域相对于相机的位置和姿态,通过坐标系转换,得到交互设备的特征区域在全局坐标系下的位置和姿态。而交互设备的特征区域在全局坐标系下的位置和姿态,可以认为是交互设备在全局坐标系下的位置和姿态。为了便于说明,图3示出了坐标系转换的一个示例。应当理解的是,图3 仅是为了帮助本领域技术人员更好地理解本文的实施例,而非限制所述技术方案的范围。
在另一实施例中,交互设备可以配备有IMU。在这种情况下,可以基于第一位姿信息、第二位姿信息和IMU数据来得到当前位姿信息。
如前所述,可以基于第一位姿信息和第二位姿信息进行坐标系转换,得到特征区域在全局坐标系下的初步位置和姿态。
由于交互设备通常进行平滑移动,而非瞬移,因此基于经由惯性测量单元获取的当前与交互设备三轴角速度和三轴加速度相关的IMU数据,可以估计出交互设备接下来的位置和姿态。在得到的特征区域在全局坐标系下的初步位置和姿态的基础上,可以估计出交互设备的特征区域的未来位置和姿态,将估计出的未来位置和姿态作为当前位姿信息。在另一实施例中,可以将上一个实施例中得到的特征区域在全局坐标系下的初步位置和姿态与交互设备的IMU数据进行融合,得到特征区域当前在全局坐标系下的位置和姿态,即交互设备当前在全局坐标系下的位置和姿态。可以利用各种适用的算法来进行数据融合,比如EKF(Extended Kalman Filter,扩展卡尔曼滤波器)算法。在将特征区域在全局坐标系下的初步位置和姿态与交互设备的IMU数据进行融合时,可以设置特征区域在全局坐标系下的初步位置和姿态的权重大于交互设备的IMU数据。
由于IMU的频率更高,所以结合IMU数据可以得到更高频率的位置和姿态,从而能够降低数据延迟,使得交互设备的运动轨迹更为平滑,相应地使得与之相关联的虚拟对象的运动轨迹也更为平滑,由此能够极大提高用户体验。此外,这种方式的鲁棒性更高、更加稳定,因此能够更好地适应交互设备的快速运动场景。
在一个实施例中,可以基于实际需求来选择关于确定当前位姿信息的两种方式。例如,可以基于交互设备是否配备有IMU、或者用户是否期望使用交互设备的IMU等等,来选择第一种方式或第二种方式。
对于第一种方式而言,交互设备可以无需配备有IMU,所以能够降低交互设备的成本。对于第二种方式而言,可以使用交互设备的IMU,交互设备的位姿信息更加平滑。
为了本领域技术人员更好地理解本说明书的技术方案,下面将结合具体示例进行描述,但是该示例并不限制所述技术方案的范围。
图4是根据一个实施例的用于空间定位的过程的示意性流程图。在该实施例中,可以假设在图1的步骤102中提到的相机安装在一体式AR设备上,一体式AR设备可以执行以下步骤;也可以假设在图1的步骤102中提到的相机安装在分体式AR设备的显示部分上,分体式AR设备的计算部分可以执行以下步骤。其中,分体式AR设备的计算部分可以作为交互设备,与AR设备分离的手柄也可以作为交互设备。
如图4所示,在步骤402中,可以获取特征区域信息和通过AR设备的相机拍摄的图像。
在步骤404中,可以基于特征区域信息在所接收的图像中搜索交互设备的特征区域。
如前所述,可以基于交互设备的IMU数据,确定特征区域在图像中的估计位置。基于该估计位置,可以确定该图像的潜在搜索区域,然后在潜在搜索区域中搜索特征区域。如果在潜在搜索区域中没有搜索到特征区域,也可以针对图像进行全局搜索。
如果在图像中没有搜索到特征区域,则说明AR设备的相机可能没有拍摄到特征区域,或者特征区域没有处于AR设备的相机的视野内。在这种情况下,可以返回到步骤402,获取通过该相机拍摄的新图像。
如果在图像中搜索到特征区域,则在步骤406中,可以确定位置信息,位置信息可以表示特征区域在图像中的位置。
在步骤408中,可以基于位置信息,确定与特征区域相对于相机的位置和姿态相关联的第一位姿信息。
在步骤410中,可以基于特征区域信息和第一位姿信息,计算特征区域在图像中的重投影误差。
在步骤412中,可以确定重投影误差是否大于预设阈值。
在一种情况下,如果重投影误差大于预设阈值,则说明位置信息可能是不准确的,因此,可以返回到步骤406,重新确定特征区域在图像中的位置。
在另一种情况下,如果重投影误差大于预设阈值,可以返回到步骤402,获取相机拍摄的新图像。
如果重投影误差小于或等于预设阈值,则在步骤414中,可以基于第一位姿信息和第二位姿信息,确定特征区域在全局坐标系下的初步位置和姿态。如前所述,第二位姿信息可以是与相机在全局坐标系下的位置和姿态相关联的,例如,第二位姿信息包括相机在AR设备中的位置和姿态,以及AR设备在全局坐标系下的位置和姿态。
在步骤416中,可以将交互设备的IMU数据与特征区域在全局坐标系下的初步位置和姿态进行融合,得到特征区域当前在全局坐标系下的位置和姿态,作为交互设备当前在全局坐标系下的位置和姿态。
可见,在该实施例中,由于AR设备的相机具有较大的视场角,因此基于AR设备的相机针对交互设备的特征区域所捕获的图像以及交互设备的 IMU数据,能够准确地确定交互设备在全局坐标系下的位置和姿态,由此更为准确地控制与之相关联的虚拟对象的运动,从而提升用户体验。此外,这种方式能够得到更高频率的位置和姿态,使得运动轨迹更为平滑,而且鲁棒性更好,由此能够更好地适应交互设备快速运动的场景。
另外,相比于利用交互设备的相机和IMU的方式,本说明书的实施例能够有效地降低交互设备的功耗,使得交互设备的成本更低。
图5是根据一个实施例的用于空间定位的方法的示意性流程图。在图5 中,为了避免重复,与前述实施例类似的实施例将不再赘述。
如图5所示,在步骤502中,可以调用相机进行拍摄,以得到当前图像,当前图像包括交互设备的特征区域。例如,该相机可以安装在分体式 AR设备的显示部分上,或者安装在一体式AR设备上,或者单独安装在能够提供较大视场角的任何位置处。因此,图5的方法可以由A者能够控制该相机的设备来执行,比如该设备可以是分体式AR设备或一体式AR设备或与AR设备电连接的相机。
在步骤504中,可以向电子设备发送当前图像,以便电子设备基于当前图像来确定与交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息。
例如,如果交互设备为智能电子设备(比如手机),则步骤504中的电子设备本身也可以是该交互设备。那么,在步骤504中,可以向交互设备发送当前图像。
如果交互设备是不具有计算功能的设备,则步骤504中的电子设备可以是与该交互设备不同的设备。例如,该电子设备可以作为分体式AR设备的计算部分与分体式AR设备的显示部分和交互设备相连接。在一个实施例中,该电子设备可以是一体式AR设备。
图6是根据一个实施例的电子设备的示意性框图。
如图6所示,电子设备600可以包括获取单元602、搜索单元604、第一确定单元606、计算单元608和第二确定单元610。
获取单元602可以获取特征区域信息和通过相机拍摄的当前图像。
搜索单元604可以基于特征区域信息和当前图像,确定位置信息。位置信息可以用于表示特征区域在当前图像中的位置。
第一确定单元606可以基于特征区域信息在当前图像中搜索交互设备的特征区域,以确定位置信息。位置信息可以用于表示特征区域在当前图像中的位置。
计算单元608可以基于特征区域信息和第一位姿信息,计算特征区域在当前图像中的重投影误差。
如果重投影误差小于或等于预设阈值,则第二确定单元610可以基于第一位姿信息,确定与交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息。
在一个实施例中,特征区域可以包括位于所述交互设备上的目标图片或者交互设备上的可进行特征点检测的物理结构。
在一个实施例中,交互设备可以包括显示屏幕。电子设备600还可以包括第三确定单元612、生成单元614和显示单元616。
获取单元602还可以经由/利用相机获取与交互设备的周围环境相关的环境图像信息。
第三确定单元612可以基于环境图像信息,确定第一颜色。第一颜色可以是在环境图像信息中占比最低的。
生成单元614可以基于第一颜色,生成目标图片。
显示单元616可以在显示屏幕上显示目标图片。
在一个实施例中,生成单元614可以通过取反色处理来确定与第一颜色相反的第二颜色。然后,生成单元614可以生成包括第一颜色和第二颜色的目标图片。在目标图片中,目标图片的边缘部分的颜色可以为第一颜色,目标图片的中心部分的颜色为第二颜色。
在一个实施例中,生成单元614可以确定用户预设图片。生成单元614 可以通过为用户预设图片添加具有第一颜色的边框,来得到目标图片。
在一个实施例中,生成单元614可以生成具有第一颜色的边框图形作为目标图片。显示单元616在显示屏幕的边框处显示该边框图形。
在一个实施例中,第二确定单元610可以获取与相机在全局坐标系下的位置和姿态相关联的第二位姿信息。第二确定单元610可以基于第一位姿信息和第二位姿信息,确定当前位姿信息。
在一个实施例中,第二确定单元610可以获取第二位姿信息以及经由惯性测量单元获取当前与交互设备三轴角速度和三轴加速度相关的IMU数据。第二确定单元610可以基于第一位姿信息、第二位姿信息和IMU数据,确定当前位姿信息。
在一个实施例中,搜索单元604可以基于经由惯性测量单元获取的与交互设备三轴角速度和三轴加速度相关的先前IMU数据,估计特征区域在当前图像中的估计位置。搜索单元604可以基于估计位置,确定当前图像的潜在搜索区域。搜索单元604可以在潜在搜索区域中搜索特征区域,以得到位置信息。
在一个实施例中,如果重投影误差大于预设阈值,则搜索单元604还可以基于当前图像,重新确定特征区域在当前图像中的位置。
在一个实施例中,如果重投影误差大于预设阈值,则获取单元602还可以获取通过相机拍摄的新图像。搜索单元604可以基于特征区域信息在新图像中搜索特征区域,以确定特征区域在新图像中的新位置信息。第一确定单元606可以基于新位置信息,确定与特征区域相对于相机的位置和姿态相关联的新的第一位姿信息。计算单元608可以基于新的第一位姿信息,计算特征区域在新图像中的新的重投影误差。
如果新的重投影误差小于或等于预设阈值,则第二确定单元610可以基于新的第一位姿信息,确定与交互设备在全局坐标系下的位置和姿态相关联的新的位姿信息。
如果新的重投影误差大于预设阈值,则搜索单元604可以基于新图像,重新确定特征区域在新图像中的位置,或者获取单元602可以获取通过相机拍摄的另一新图像,以便搜索单元604在另一新图像中重新搜索特征区域。
在一个实施例中,电子设备600可以是具有计算功能的交互设备,或者电子设备600可以是不同于交互设备的设备。
电子设备600的各个单元可以执行图1至4的方法实施例中的相应过程。因此,为了描述的简洁,电子设备600的各个单元的具体操作和功能此处不再赘述。
图7是根据一个实施例的用于空间定位的装置的示意性框图。
如图7所示,装置700可以包括调用单元702和发送单元704。
调用单元702可以调用相机进行拍摄,以得到当前图像,当前图像包括交互设备的特征区域。
发送单元704可以向电子设备发送当前图像,以便电子设备基于当前图像来确定与交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息。比如,该电子设备可以是图6的电子设备600。
上述电子设备600和装置700可以采用硬件实现,也可以采用软件实现,或者可以通过软硬件的组合来实现。
图8是根据一个实施例的电子设备的硬件结构图。如图8所示,电子设备800可以包括至少一个处理器802、存储器804、内存806和通信接口 808,并且至少一个处理器802、存储器804、内存806和通信接口808可以经由总线810连接在一起。至少一个处理器802执行在存储器804中存储或编码的至少一个可执行代码(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器804中存储的可执行代码在被至少一个处理器802执行时,使得电子设备800实现以上结合图1-4描述的各种过程。
电子设备800可以采用本领域任何适用的形式来实现,例如,其包括但不限于智能手机、平板设备、智能可穿戴设备、具有计算功能的其它电子设备等等。
图9是根据一个实施例的用于空间定位的装置的硬件结构图。如图9 所示,装置900可以包括至少一个处理器902、存储器904、内存906和通信接口908,并且至少一个处理器902、存储器904、内存906和通信接口 908可以经由总线910连接在一起。至少一个处理器902执行在存储器904 中存储或编码的至少一个可执行代码(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器904中存储的可执行代码在被至少一个处理器902执行时,使得装置900实现以上结合图5描述的过程。
在一个实施例中,装置900可以是AR设备,其可以采用本领域任何适用的形式来实现,例如,其可以实现为头戴式设备。
本说明书的实施例还提供了一种机器可读存储介质。该机器可读存储介质可以存储有可执行代码,可执行代码在被机器执行时使得机器实现上面参照图1-4描述的方法实施例的具体过程。
本说明书的实施例还提供了一种机器可读存储介质。该机器可读存储介质可以存储有可执行代码,可执行代码在被机器执行时使得机器实现上面参照图5描述的方法实施例的具体过程。
例如,机器可读存储介质可以包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、电可擦除可编程只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、静态随机存取存储器(Static Random Access Memory, SRAM)、硬盘、闪存等等。
应当理解的是,本说明书中的各个实施例均采用递进的方式来描述,各个实施例之间相同或相似的部分相互参见即可,每个实施例重点说明的都是与其它实施例的不同之处。例如,对于上述关于装置的实施例、关于计算设备的实施例以及关于机器可读存储介质的实施例而言,由于它们基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上文对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
上述各流程和各***结构图中不是所有的步骤和单元都是必须的,可以根据实际的需要忽略某些步骤或单元。上述各实施例中描述的装置结构可以是物理结构,也可以是逻辑结构,即,有些单元可能由同一物理实体实现,或者,有些单元可能分别由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
在整个本说明书中使用的术语“示例性”意味着“用作例子、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
以上结合附图详细描述了本公开内容的实施例的可选实施方式,但是,本公开内容的实施例并不限于上述实施方式中的具体细节,在本公开内容的实施例的技术构思范围内,可以对本公开内容的实施例的技术方案进行多种变型,这些变型均属于本公开内容的实施例的保护范围。
本公开内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本公开内容。对于本领域普通技术人员来说,对本公开内容进行的各种修改是显而易见的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本公开内容并不限于本文所描述的例子和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。

Claims (26)

1.一种用于空间定位的方法,包括:
获取特征区域信息和通过相机拍摄的当前图像,其中,所述相机设置在交互设备之外以用于对所述交互设备进行拍摄;
基于所述特征区域信息在所述当前图像中搜索所述交互设备的特征区域,以确定位置信息,其中,所述位置信息用于表示所述特征区域在所述当前图像中的位置,所述特征区域为所述交互设备上的能够进行特征点检测的区域;
基于所述位置信息,确定与所述特征区域相对于所述相机的位置和姿态相关联的第一位姿信息;
基于所述特征区域信息和所述第一位姿信息,计算所述特征区域在所述当前图像中的重投影误差;
如果所述重投影误差小于或等于预设阈值,则基于所述第一位姿信息,确定与所述交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息,其中,所述交互设备的当前位姿信息用于控制虚拟场景中的与所述交互设备相关联的虚拟对象。
2.根据权利要求1所述的方法,其中,所述特征区域包括:
位于所述交互设备上的目标图片;或者
所述交互设备上的可进行特征点检测的物理结构。
3.根据权利要求2所述的方法,其中,所述交互设备包括显示屏幕;所述方法还包括:
经由/利用所述相机获取与所述交互设备的周围环境相关的环境图像信息;
基于所述环境图像信息,确定第一颜色,其中,所述第一颜色在所述环境图像信息中占比最低;
基于所述第一颜色,生成所述目标图片;
在所述显示屏幕上显示所述目标图片。
4.根据权利要求3所述的方法,其中,生成所述目标图片包括:
通过取反色处理来确定与所述第一颜色相反的第二颜色;
生成包括所述第一颜色和所述第二颜色的所述目标图片,其中,在所述目标图片中,所述目标图片的边缘部分的颜色为所述第一颜色,所述目标图片的中心部分的颜色为所述第二颜色。
5.根据权利要求3所述的方法,其中,生成所述目标图片包括:
确定用户预设图片;
通过为所述用户预设图片添加具有所述第一颜色的边框,来得到所述目标图片。
6.根据权利要求3所述的方法,其中,
生成所述目标图片包括:生成具有所述第一颜色的边框图形,作为所述目标图片;
在所述显示屏幕上显示所述目标图片包括:在所述显示屏幕的边框处显示所述边框图形。
7.根据权利要求1至6中任一项所述的方法,其中,确定当前位姿信息包括:
获取与所述相机在所述全局坐标系下的位置和姿态相关联的第二位姿信息;
基于所述第一位姿信息和所述第二位姿信息,确定所述当前位姿信息。
8.根据权利要求1至6中任一项所述的方法,其中,确定当前位姿信息包括:
获取与所述相机在所述全局坐标系下的位置和姿态相关联的第二位姿信息以及经由惯性测量单元获取当前与所述交互设备三轴角速度和三轴加速度相关的IMU数据;
基于所述第一位姿信息、所述第二位姿信息和所述IMU数据,确定所述当前位姿信息。
9.根据权利要求1至6中任一项所述的方法,其中,基于所述特征区域信息在所述当前图像中搜索所述特征区域,以确定位置信息,包括:
基于经由惯性测量单元获取的与所述交互设备三轴角速度和三轴加速度相关的先前IMU数据,估计所述特征区域在所述当前图像中的估计位置;
基于所述估计位置,确定所述当前图像的潜在搜索区域;
在所述潜在搜索区域中搜索所述特征区域,以得到所述位置信息。
10.根据权利要求1至6中任一项所述的方法,还包括:
如果所述重投影误差大于所述预设阈值,则基于所述当前图像,重新确定所述特征区域在所述当前图像中的位置;或者
如果所述重投影误差大于所述预设阈值,则执行以下步骤:
获取通过所述相机拍摄的新图像;
基于所述特征区域信息在所述新图像中搜索所述特征区域,以确定所述特征区域在所述新图像中的新位置信息;
基于所述新位置信息,确定与所述特征区域相对于所述相机的位置和姿态相关联的新的第一位姿信息;
基于所述新的第一位姿信息,计算所述特征区域在所述新图像中的新的重投影误差;
如果所述新的重投影误差小于或等于所述预设阈值,则基于所述新的第一位姿信息,确定与所述交互设备在全局坐标系下的位置和姿态相关联的新的位姿信息;
如果所述新的重投影误差大于所述预设阈值,则基于所述新图像,重新确定所述特征区域在所述新图像中的位置,或者获取通过所述相机拍摄的另一新图像,以便在所述另一新图像中重新搜索所述特征区域。
11.一种用于空间定位的方法,包括:
调用相机进行拍摄,以得到当前图像,其中,所述相机设置在交互设备之外以用于对所述交互设备进行拍摄,所述当前图像包括所述交互设备的特征区域,所述特征区域为所述交互设备上的能够进行特征点检测的区域;
向电子设备发送所述当前图像,以便所述电子设备基于所述当前图像来确定与所述交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息,其中,所述交互设备的当前位姿信息用于控制虚拟场景中的与所述交互设备相关联的虚拟对象。
12.一种电子设备,包括:
获取单元,用于获取特征区域信息和通过相机拍摄的当前图像,其中,所述相机设置在交互设备之外以用于对所述交互设备进行拍摄;
搜索单元,用于基于所述特征区域信息在所述当前图像中搜索所述交互设备的特征区域,以确定位置信息,其中,所述位置信息用于表示所述特征区域在所述当前图像中的位置,所述特征区域为所述交互设备上的能够进行特征点检测的区域;
第一确定单元,用于基于所述位置信息,确定与所述特征区域相对于所述相机的位置和姿态相关联的第一位姿信息;
计算单元,用于基于所述特征区域信息和所述第一位姿信息,计算所述特征区域在所述当前图像中的重投影误差;
第二确定单元,用于如果所述重投影误差小于或等于预设阈值,则基于所述第一位姿信息,确定与所述交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息,其中,所述交互设备的当前位姿信息用于控制虚拟场景中的与所述交互设备相关联的虚拟对象。
13.根据权利要求12所述的电子设备,其中,所述特征区域包括:
位于所述交互设备上的目标图片;或者
所述交互设备上的可进行特征点检测的物理结构。
14.根据权利要求13所述的电子设备,其中,所述交互设备包括显示屏幕;
所述电子设备还包括第三确定单元、生成单元和显示单元,其中:
所述获取单元,还用于经由/利用所述相机获取与所述交互设备的周围环境相关的环境图像信息;
所述第三确定单元,用于基于所述环境图像信息,确定第一颜色,其中,所述第一颜色在所述环境图像信息中占比最低;
所述生成单元,用于基于所述第一颜色,生成所述目标图片;
所述显示单元,用于在所述显示屏幕上显示所述目标图片。
15.根据权利要求14所述的电子设备,其中,所述生成单元用于:
通过取反色处理来确定与所述第一颜色相反的第二颜色;
生成包括所述第一颜色和所述第二颜色的所述目标图片,其中,在所述目标图片中,所述目标图片的边缘部分的颜色为所述第一颜色,所述目标图片的中心部分的颜色为所述第二颜色。
16.根据权利要求14所述的电子设备,其中,所述生成单元用于:
确定用户预设图片;
通过为所述用户预设图片添加具有所述第一颜色的边框,来得到所述目标图片。
17.根据权利要求14所述的电子设备,其中,
所述生成单元用于:生成具有所述第一颜色的边框图形,作为所述目标图片;
所述显示单元用于:在所述显示屏幕的边框处显示所述边框图形。
18.根据权利要求12至17中任一项所述的电子设备,其中,所述第二确定单元用于:
获取与所述相机在所述全局坐标系下的位置和姿态相关联的第二位姿信息;
基于所述第一位姿信息和所述第二位姿信息,确定所述当前位姿信息。
19.根据权利要求12至17中任一项所述的电子设备,其中,所述第二确定单元用于:
获取与所述相机在所述全局坐标系下的位置和姿态相关联的第二位姿信息以及经由惯性测量单元获取当前与所述交互设备三轴角速度和三轴加速度相关的IMU数据;
基于所述第一位姿信息、所述第二位姿信息和所述IMU数据,确定所述当前位姿信息。
20.根据权利要求12至17中任一项所述的电子设备,其中,所述搜索单元用于:
基于经由惯性测量单元获取的与所述交互设备三轴角速度和三轴加速度相关的先前IMU数据,估计所述特征区域在所述当前图像中的估计位置;
基于所述估计位置,确定所述当前图像的潜在搜索区域;
在所述潜在搜索区域中搜索所述特征区域,以得到所述位置信息。
21.根据权利要求12至17中任一项所述的电子设备,其中,
如果所述重投影误差大于所述预设阈值,则所述搜索单元还用于基于所述当前图像,重新确定所述特征区域在所述当前图像中的位置;或者
如果所述重投影误差大于所述预设阈值,则:
所述获取单元还用于获取通过所述相机拍摄的新图像;
所述搜索单元还用于基于所述特征区域信息在所述新图像中搜索所述特征区域,以确定所述特征区域在所述新图像中的新位置信息;
所述第一确定单元还用于基于所述新位置信息,确定与所述特征区域相对于所述相机的位置和姿态相关联的新的第一位姿信息;
所述计算单元还用于基于所述新的第一位姿信息,计算所述特征区域在所述新图像中的新的重投影误差;
如果所述新的重投影误差小于或等于所述预设阈值,则所述第二确定单元还用于基于所述新的第一位姿信息,确定与所述交互设备在全局坐标系下的位置和姿态相关联的新的位姿信息;
如果所述新的重投影误差大于所述预设阈值,则所述搜索单元还用于基于所述新图像,重新确定所述特征区域在所述新图像中的位置,或者所述获取单元还用于获取通过所述相机拍摄的另一新图像,以便所述搜索单元在所述另一新图像中重新搜索所述特征区域。
22.一种用于空间定位的装置,包括:
调用单元,用于调用相机进行拍摄,以得到当前图像,其中,所述相机设置在交互设备之外以用于对所述交互设备进行拍摄,所述当前图像包括交互设备的特征区域,所述特征区域为所述交互设备上的能够进行特征点检测的区域;
发送单元,用于向电子设备发送所述当前图像,以便所述电子设备基于所述当前图像来确定与所述交互设备当前在全局坐标系下的位置和姿态相关联的当前位姿信息,其中,所述交互设备的当前位姿信息用于控制虚拟场景中的与所述交互设备相关联的虚拟对象。
23.一种电子设备,包括:
至少一个处理器;
与所述至少一个处理器进行通信的存储器,其上存储有可执行代码,所述可执行代码在被所述至少一个处理器执行时使得所述至少一个处理器实现根据权利要求1至10中任一项所述的方法。
24.一种用于空间定位的装置,包括:
至少一个处理器;
与所述至少一个处理器进行通信的存储器,其上存储有可执行代码,所述可执行代码在被所述至少一个处理器执行时使得所述至少一个处理器实现根据权利要求11所述的方法。
25.一种机器可读存储介质,其存储有可执行代码,所述可执行代码在被执行时使得机器执行根据权利要求1至10中任一项所述的方法。
26.一种机器可读存储介质,其存储有可执行代码,所述可执行代码在被执行时使得机器执行根据权利要求11所述的方法。
CN202010729794.0A 2020-07-27 2020-07-27 用于空间定位的方法和装置 Active CN111833403B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202010729794.0A CN111833403B (zh) 2020-07-27 2020-07-27 用于空间定位的方法和装置
EP21850314.2A EP4156105A4 (en) 2020-07-27 2021-07-26 METHOD AND DEVICE FOR SPATIAL POSITIONING
US18/003,342 US20230316608A1 (en) 2020-07-27 2021-07-26 Method and apparatus for spatial locating
PCT/CN2021/108394 WO2022022449A1 (zh) 2020-07-27 2021-07-26 用于空间定位的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010729794.0A CN111833403B (zh) 2020-07-27 2020-07-27 用于空间定位的方法和装置

Publications (2)

Publication Number Publication Date
CN111833403A CN111833403A (zh) 2020-10-27
CN111833403B true CN111833403B (zh) 2024-05-31

Family

ID=72925656

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010729794.0A Active CN111833403B (zh) 2020-07-27 2020-07-27 用于空间定位的方法和装置

Country Status (4)

Country Link
US (1) US20230316608A1 (zh)
EP (1) EP4156105A4 (zh)
CN (1) CN111833403B (zh)
WO (1) WO2022022449A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111833403B (zh) * 2020-07-27 2024-05-31 闪耀现实(无锡)科技有限公司 用于空间定位的方法和装置
CN112396654A (zh) * 2020-11-17 2021-02-23 闪耀现实(无锡)科技有限公司 用于在图像跟踪过程中确定跟踪对象的位姿的方法及装置
WO2022147655A1 (zh) * 2021-01-05 2022-07-14 深圳市大疆创新科技有限公司 定位方法、空间信息获取方法、装置、拍摄设备
CN113242421A (zh) * 2021-04-02 2021-08-10 青岛小鸟看看科技有限公司 相机校准方法、装置及虚拟现实设备
CN113777816A (zh) * 2021-09-09 2021-12-10 蚌埠高华电子股份有限公司 一种lcd液晶显示屏蚀刻标识、辅助观察设备及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10043076B1 (en) * 2016-08-29 2018-08-07 PerceptIn, Inc. Visual-inertial positional awareness for autonomous and non-autonomous tracking
CN110349213A (zh) * 2019-06-28 2019-10-18 Oppo广东移动通信有限公司 基于深度信息的位姿确定方法、装置、介质与电子设备
WO2020001168A1 (zh) * 2018-06-27 2020-01-02 清华-伯克利深圳学院筹备办公室 三维重建方法、装置、设备和存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100303297A1 (en) * 2009-05-30 2010-12-02 Anton Mikhailov Color calibration for object tracking
US20160232715A1 (en) * 2015-02-10 2016-08-11 Fangwei Lee Virtual reality and augmented reality control with mobile devices
US10197998B2 (en) * 2015-12-27 2019-02-05 Spin Master Ltd. Remotely controlled motile device system
US9916496B2 (en) * 2016-03-25 2018-03-13 Zero Latency PTY LTD Systems and methods for operating a virtual reality environment using colored marker lights attached to game objects
KR102647351B1 (ko) * 2017-01-26 2024-03-13 삼성전자주식회사 3차원의 포인트 클라우드를 이용한 모델링 방법 및 모델링 장치
US10719953B1 (en) * 2018-03-27 2020-07-21 Facebook Technologies, Llc Passive object tracking using camera
CN109658445A (zh) * 2018-12-14 2019-04-19 北京旷视科技有限公司 网络训练方法、增量建图方法、定位方法、装置及设备
CN111833403B (zh) * 2020-07-27 2024-05-31 闪耀现实(无锡)科技有限公司 用于空间定位的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10043076B1 (en) * 2016-08-29 2018-08-07 PerceptIn, Inc. Visual-inertial positional awareness for autonomous and non-autonomous tracking
WO2020001168A1 (zh) * 2018-06-27 2020-01-02 清华-伯克利深圳学院筹备办公室 三维重建方法、装置、设备和存储介质
CN110349213A (zh) * 2019-06-28 2019-10-18 Oppo广东移动通信有限公司 基于深度信息的位姿确定方法、装置、介质与电子设备

Also Published As

Publication number Publication date
EP4156105A4 (en) 2023-12-06
WO2022022449A1 (zh) 2022-02-03
EP4156105A1 (en) 2023-03-29
US20230316608A1 (en) 2023-10-05
CN111833403A (zh) 2020-10-27

Similar Documents

Publication Publication Date Title
CN111833403B (zh) 用于空间定位的方法和装置
US10410089B2 (en) Training assistance using synthetic images
CN108283018B (zh) 电子设备和用于电子设备的姿态识别的方法
JP6491517B2 (ja) 画像認識ar装置並びにその姿勢推定装置及び姿勢追跡装置
KR102461232B1 (ko) 화상 처리 방법 및 장치, 전자 디바이스, 및 저장 매체
US20130293583A1 (en) Image processing device, image processing method, and program
WO2013161182A1 (en) Image processing apparatus, image processing method, and program
US20180249144A1 (en) System and Method for Virtually-Augmented Visual Simultaneous Localization and Mapping
KR20170031733A (ko) 디스플레이를 위한 캡처된 이미지의 시각을 조정하는 기술들
JP6609640B2 (ja) 電子デバイス上における環境マッピング用のフィーチャ・データの管理
WO2022022141A1 (zh) 图像显示方法、装置、计算机设备及存储介质
US20210225017A1 (en) Structuring visual data
US11044398B2 (en) Panoramic light field capture, processing, and display
US11436742B2 (en) Systems and methods for reducing a search area for identifying correspondences between images
CN107204044B (zh) 一种基于虚拟现实的画面显示方法及相关设备
CN109448050B (zh) 一种目标点的位置的确定方法及终端
CN108028904B (zh) 移动设备上光场增强现实/虚拟现实的方法和***
CN114419226A (zh) 全景渲染方法、装置、计算机设备和存储介质
JP7195238B2 (ja) 拡張現実アプリケーションに関するシステム及び方法
CN108027646A (zh) 一种终端显示防抖方法及装置
CN114201028B (zh) 扩增实境***与其锚定显示虚拟对象的方法
US11770551B2 (en) Object pose estimation and tracking using machine learning
JP2008203538A (ja) 画像表示システム
CN114241127A (zh) 全景图像生成方法、装置、电子设备和介质
CN113436247A (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
GR01 Patent grant
GR01 Patent grant