CN115861412A - 基于检测到的空间特征的定位 - Google Patents
基于检测到的空间特征的定位 Download PDFInfo
- Publication number
- CN115861412A CN115861412A CN202210953751.XA CN202210953751A CN115861412A CN 115861412 A CN115861412 A CN 115861412A CN 202210953751 A CN202210953751 A CN 202210953751A CN 115861412 A CN115861412 A CN 115861412A
- Authority
- CN
- China
- Prior art keywords
- spatial feature
- location
- environment
- pose
- estimate
- 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
Images
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
-
- 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/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- 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
- G06T7/75—Determining position or orientation of objects or cameras using feature-based methods involving models
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开涉及“基于检测到的空间特征的定位。”在一个具体实施中,在包括一个或多个处理器和非暂态存储器的设备处执行一种定位设备的方法。该方法包括获取对该设备在环境中的位姿的估计。该方法包括获取该环境的环境模型,该环境模型包括该环境中由第一空间特征位置限定的空间特征。该方法包括基于对该设备的该位姿的该估计来确定该空间特征的第二空间特征位置。该方法包括基于该第一空间特征位置和该第二空间特征位置来确定对该设备的该位姿的更新的估计。
Description
相关申请的交叉引用
本申请要求于2021年9月24日提交的美国临时专利申请第63/247,991号的优先权,该申请据此全文以引用方式并入。
技术领域
本公开一般涉及用于基于在环境中检测到的空间特征来定位环境中的设备或内容的系统、方法和设备。
背景技术
确定电子设备的位置(例如,定位)实现了广泛的用户体验,例如当电子设备进入房间时自动打开光源,基于从扬声器到电子设备的距离调整扬声器音量,或在存在电子设备的环境中显示先前放置的扩展现实(XR)内容。然而,确定设备位置的不准确性会导致XR内容在环境中的放置不准确。
附图说明
因此,本公开可被本领域的普通技术人员理解,更详细的描述可参考一些例示性具体实施的方面,其中一些具体实施在附图中示出。
图1是根据一些具体实施的示例性操作环境的框图。
图2是根据一些具体实施的示例性控制器的框图。
图3是根据一些具体实施的示例性电子设备的框图。
图4A和4B示出了根据一些具体实施的XR环境。
图5是根据一些具体实施的定位设备的方法的流程图表示。
根据通常的做法,附图中示出的各种特征部可能未按比例绘制。因此,为了清楚起见,可以任意地扩展或减小各种特征部的尺寸。另外,一些附图可能未描绘给定的系统、方法或设备的所有部件。最后,在整个说明书和附图中,类似的附图标号可用于表示类似的特征部。
发明内容
本文所公开的各种具体实施包括用于定位设备的设备、系统和方法。在各种具体实施中,该方法是由包括一个或多个处理器和非暂态存储器的设备执行的。该方法包括获取对该设备在环境中的位姿的估计。该方法包括获取环境的环境模型,该环境模型包括环境中由第一空间特征位置限定的空间特征。该方法包括基于对该设备的位姿的估计确定该空间特征的第二空间特征位置。该方法包括基于该第一空间特征位置和该第二空间特征位置确定对该设备的位姿的更新的估计。
根据一些具体实施,一种设备包括一个或多个处理器、非暂态存储器以及一个或多个程序;一个或多个程序被存储于非暂态存储器中并且被配置为由一个或多个处理器执行。一个或多个程序包括用于执行或促使执行本文描述的任何方法的指令。根据一些具体实施,一种非暂态计算机可读存储介质中存储有指令,这些指令在由设备的一个或多个处理器执行时使该设备执行或使执行本文所述方法中的任一种。根据一些具体实施,一种设备包括:一个或多个处理器、非暂态存储器以及用于执行或使执行本文所述方法中的任一种的装置。
具体实施方式
物理环境是指人们在没有电子设备帮助的情况下能够对其感测和/或与其交互的物理场所。物理环境可包括物理特征,诸如物理表面或物理对象。例如,物理环境对应于包括物理树木、物理建筑物和物理人的物理公园。人们能够诸如通过视觉、触觉、听觉、味觉和嗅觉来直接感测物理环境和/或与物理环境交互。相反,扩展现实(XR)环境是指人们经由电子设备感测和/或交互的完全或部分模拟的环境。例如,XR环境可包括增强现实(AR)内容、混合现实(MR)内容、虚拟现实(VR)内容等。在XR系统的情况下,跟踪人的物理运动的一个子集或其表示,并且作为响应,以符合至少一个物理定律的方式调节在XR系统中模拟的一个或多个虚拟对象的一个或多个特征。例如,XR系统可以检测呈现XR环境的电子设备(例如,移动电话、平板电脑、膝上型电脑、头戴式设备等)的移动,并且作为响应,以类似于此类视图和声音在物理环境中将如何改变的方式调节由电子设备呈现给人的图形内容和声场。在一些情况下(例如,出于可达性原因),XR系统可响应于物理运动的表示(例如,声音命令)来调节XR环境中图形内容的特征。
有许多不同类型的电子系统使人能够感测和/或与各种XR环境交互。示例包括头戴式系统、基于投影的系统、平视显示器(HUD)、集成有显示能力的车辆挡风玻璃、集成有显示能力的窗户、被形成为设计用于放置在人的眼睛上的透镜的显示器(例如,类似于隐形眼镜)、耳机/听筒、扬声器阵列、输入系统(例如,具有或不具有触觉反馈的可穿戴或手持式控制器)、智能电话、平板电脑、以及台式/膝上型计算机。头戴式系统可具有集成不透明显示器和一个或多个扬声器。另选地,头戴式系统可被配置为接受外部不透明显示器(例如,智能电话)。头戴式系统可结合用于捕获物理环境的图像或视频的一个或多个成像传感器、和/或用于捕获物理环境的音频的一个或多个麦克风。头戴式系统可具有透明或半透明显示器,而不是不透明显示器。透明或半透明显示器可以具有媒介,代表图像的光通过该媒介被引导到人的眼睛。显示器可以利用数字光投影、OLED、LED、uLED、硅基液晶、激光扫描光源或这些技术的任意组合。媒介可以是光学波导、全息图媒介、光学组合器、光学反射器、或它们的任意组合。在一些具体实施中,透明或半透明显示器可被配置为选择性地变得不透明。基于投影的系统可以采用将图形图像投影到人的视网膜上的视网膜投影技术。投影系统也可以被配置为将虚拟对象投影到物理环境中,例如作为全息图或在物理表面上。
描述了许多细节以便提供对附图中所示的示例具体实施的透彻理解。然而,附图仅示出了本公开的一些示例方面,因此不应被视为限制。本领域的普通技术人员将理解,其他有效方面和/或变体不包括本文所述的所有具体细节。此外,没有详尽地描述众所周知的系统、方法、部件、设备和电路,以免模糊本文所述的示例性具体实施的更多相关方面。
如上所述,配备有场景相机的头戴式设备在几天或几周的使用期间内拍摄用户环境的许多图像。该设备可以识别那些图像中的对象(例如,绘画,海报,相册封面)并且在数据库中存储关于这些对象的信息。为了以有效的方式访问信息,关于这些对象的信息与检测到每个对象的时间的相应上下文信息相关联地存储,例如时间、位置或当前活动。因此,响应于对问题“当我在Jim的家时我正在看的相册封面是什么?”的查询,电子设备可以返回关于在特定时间或在特定位置处检测到的特定相册封面的信息。
图1是根据一些具体实施的示例性操作环境100的框图。尽管示出了相关特征,但本领域的普通技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的示例性具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,操作环境100包括控制器110和电子设备120。
在一些具体实施中,控制器110被配置为管理和协调用户的XR体验。在一些具体实施中,控制器110包括软件、固件和/或硬件的合适组合。下文参考图2更详细地描述控制器110。在一些具体实施中,控制器110是相对于物理环境105处于本地或远程位置的计算设备。例如,控制器110是位于物理环境105内的本地服务器。在另一个示例中,控制器110是位于物理环境105之外的远程服务器(例如,云服务器、中央服务器等)。在一些具体实施中,控制器110经由一个或多个有线或无线通信信道144(例如,蓝牙、IEEE 802.11x、IEEE802.16x、IEEE 802.3x等)与电子设备120通信地耦接。又如,控制器110包括在电子设备120的外壳内。在一些具体实施中,控制器110的功能由电子设备120提供和/或与该电子设备结合。
在一些具体实施中,电子设备120被配置为向用户提供XR体验。在一些具体实施中,电子设备120包括软件、固件和/或硬件的合适组合。根据一些具体实施,在用户物理地存在于物理环境105内时,电子设备120经由显示器122向用户呈现XR内容,该物理环境包括处于电子设备120的视场111内的桌子107。在一些具体实施中,用户将电子设备120拿在他/她的一只或两只手中。在一些具体实施中,在提供XR内容时,电子设备120被配置为显示XR对象(例如,XR圆柱体109)并实现在显示器122上对物理环境105(例如,包括桌子107的表示117)的视频透传。下文参考图3更详细地描述电子设备120。
根据一些具体实施,在用户虚拟地和/或物理地存在于物理环境105内的同时,电子设备120向用户提供XR体验。
在一些具体实施中,用户将电子设备120佩戴在他/她的头上。例如,在一些具体实施中,电子设备包括头戴式系统(HMS)、头戴式设备(HMD)或头戴式外壳(HME)。因此,电子设备120包括被设置成显示XR内容的一个或多个XR显示器。例如,在各种具体实施中,电子设备120包围用户的视场。在一些具体实施中,电子设备120是被配置为呈现XR内容的手持设备(诸如智能电话或平板电脑),并且用户不再佩戴电子设备120而是手持该设备,同时使显示器朝向用户的视场,并且使相机朝向物理环境105。在一些具体实施中,手持设备可被放置在可被佩戴在使用者的头部的外壳内。在一些具体实施中,用被配置为呈现XR内容的XR舱、外壳或室替代电子设备120,用户在其中不再佩戴或手持电子设备120。
图2是根据一些具体实施的控制器110的示例的框图。尽管示出了一些具体特征,但本领域的技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,在一些具体实施中,控制器110包括一个或多个处理单元202(例如,微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、图形处理单元(GPU)、中央处理单元(CPU)、处理核心等)、一个或多个输入/输出(I/O)设备206、一个或多个通信接口208(例如,通用串行总线(USB)、FIREWIRE、THUNDERBOLT、IEEE 802.3x、IEEE 802.11x、IEEE 802.16x、全球移动通信系统(GSM)、码分多址(CDMA)、时分多址(TDMA)、全球定位系统(GPS)、红外(IR)、蓝牙、ZIGBEE和/或相似类型接口)、一个或多个编程(例如,I/O)接口210、存储器220以及用于互连这些部件和各种其他部件的一条或多条通信总线204。
在一些具体实施中,该一条或多条通信总线204包括互连系统部件和控制系统部件之间的通信的电路。在一些具体实施中,一个或多个I/O设备206包括键盘、鼠标、触控板、操纵杆、一个或多个麦克风、一个或多个扬声器、一个或多个图像传感器、一个或多个显示器等中的至少一种。
存储器220包括高速随机存取存储器,诸如动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、双倍数据速率随机存取存储器(DDR RAM)或者其他随机存取固态存储器设备。在一些具体实施中,存储器220包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器220任选地包括远离一个或多个处理单元202定位的一个或多个存储设备。存储器220包括非暂态计算机可读存储介质。在一些具体实施中,存储器220或者存储器220的非暂态计算机可读存储介质存储下述程序、模块和数据结构或者它们的子集,其中包括任选的操作系统230和XR体验模块240。
操作系统230包括用于处理各种基础系统服务和用于执行硬件相关任务的过程。在一些具体实施中,XR体验模块240被配置为管理和协调一个或多个用户的单重或多重XR体验(例如,一个或多个用户的单重XR体验,或一个或多个用户的相应群组的多重XR体验)。为此,在各种具体实施中,XR体验模块240包括数据获取单元242、跟踪单元244、协调单元246和数据传输单元248。
在一些具体实施中,数据获取单元242被配置为至少从图1的电子设备120获取数据(例如,呈现数据、交互数据、传感器数据、位置数据等)。为此,在各种具体实施中,数据获取单元242包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。
在一些具体实施中,跟踪单元244被配置为映射物理环境105并且至少跟踪电子设备120相对于图1的物理环境105的位置/定位。为此,在各种具体实施中,跟踪单元244包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。
在一些具体实施中,协调单元246被配置为管理和协调电子设备120向用户呈现的XR体验。为此,在各种具体实施中,协调单元246包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。
在一些具体实施中,数据传输单元248被配置为至少向电子设备120传输数据(例如,呈现数据、位置数据等)。为此,在各种具体实施中,数据传输单元248包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。
尽管数据获取单元242、跟踪单元244、协调单元246和数据传输单元248被示为驻留在单个设备(例如,控制器110)上,但应当理解,在其他具体实施中,数据获取单元242、跟踪单元244、协调单元246和数据传输单元248的任何组合可位于单独计算设备中。
此外,图2更多地用作可以存在于特定具体实施中的各种特征的功能描述,与本文所述的具体实施的结构示意图不同。如本领域的普通技术人员将认识到的,单独显示的项目可以组合,并且一些项目可以分开。例如,图2中单独示出的一些功能模块可以在单个模块中实现,并且单个功能块的各种功能可在各种具体实施中通过一个或多个功能块来实现。模块的实际数量和特定功能的划分以及如何在其中分配特征将根据具体实施而变化,并且在一些具体实施中,部分地取决于为特定实施方案选择的硬件、软件和/或固件的特定组合。
图3是根据一些具体实施的电子设备120的示例的框图。尽管示出了一些具体特征,但本领域的技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,在一些具体实施中,电子设备120包括一个或多个处理单元302(例如,微处理器、ASIC、FPGA、GPU、CPU、处理核心等)、一个或多个输入/输出(I/O)设备及传感器306、一个或多个通信接口308(例如,USB、FIREWIRE、THUNDERBOLT、IEEE 802.3x、IEEE 802.11x、IEEE 802.16x、GSM、CDMA、TDMA、GPS、IR、BLUETOOTH、ZIGBEE和/或类似类型的接口)、一个或多个编程(例如,I/O)接口310、一个或多个XR显示器312、一个或多个任选的面向内部和/或面向外部的图像传感器314、存储器320以及用于互连这些部件和各种其他部件的一条或多条通信总线304。
在一些具体实施中,一条或多条通信总线304包括互连和控制系统部件之间的通信的电路。在一些具体实施中,一个或多个I/O设备及传感器306包括惯性测量单元(IMU)、加速度计、陀螺仪、温度计、一个或多个生理传感器(例如,血压监测仪、心率监测仪、血液氧传感器、血糖传感器等)、一个或多个传声器、一个或多个扬声器、触觉引擎以及/或者一个或多个深度传感器(例如,结构光、飞行时间等)等。
在一些具体实施中,一个或多个XR显示器312被配置为向用户提供XR体验。在一些具体实施中,一个或多个XR显示器312对应于全息、数字光处理(DLP)、液晶显示器(LCD)、硅上液晶(LCoS)、有机发光场效应晶体管(OLET)、有机发光二极管(OLED)、表面传导电子发射显示器(SED)、场发射显示器(FED)、量子点发光二极管(QD-LED)、微机电系统(MEMS)和/或类似的显示器类型。在一些具体实施中,一个或多个XR显示器312对应于衍射、反射、偏振、全息等波导显示器。例如,电子设备120包括单个XR显示器。又如,电子设备对于用户的每只眼睛包括XR显示器。在一些具体实施中,一个或多个XR显示器312能够呈现MR和VR内容。
在一些具体实施中,一个或多个图像传感器314被配置为获取对应于用户面部的至少一部分(包括用户的眼睛)的图像数据(因而可称为眼睛跟踪相机)。在一些具体实施中,一个或多个图像传感器314被配置为面向前方,以便获取对应于当不存在电子设备120时用户将看到的场景的图像数据(因而可以被称为场景相机)。一个或多个任选图像传感器314可包括一个或多个RGB相机(例如,具有互补金属氧化物半导体(CMOS)图像传感器或电荷耦合器件(CCD)图像传感器)、一个或多个红外(IR)相机以及/或者一个或多个基于事件的相机等。
存储器320包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM或其他随机存取固态存储器设备。在一些具体实施中,存储器320包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器320任选地包括远离一个或多个处理单元302定位的一个或多个存储设备。存储器320包括非暂态计算机可读存储介质。在一些具体实施中,存储器320或存储器320的非暂态计算机可读存储介质存储下述程序、模块和数据结构或者它们的子集,其中包括可选的操作系统330和XR呈现模块340。
操作系统330包括用于处理各种基础系统服务和用于执行硬件相关任务的过程。在一些具体实施中,XR呈现模块340被配置为经由一个或多个XR显示器312向用户呈现XR内容。为此,在各种具体实施中,XR呈现模块340包括数据获取单元342、数据关联单元344、XR呈现单元346和数据传输单元348。
在一些具体实施中,数据获取单元342被配置为至少从图1的控制器110获取数据(例如,呈现数据、交互数据、传感器数据、位置数据等)。在各种具体实施中,数据获取单元342被配置为获取环境的空间特征和XR内容。为此,在各种具体实施中,数据获取单元342包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。
在一些具体实施中,定位单元344被配置为确定电子设备120在XR环境中的位置,并且在一些具体实施中,确定要在XR环境中显示虚拟内容的位置。为此,在各种具体实施中,数据关联单元344包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。
在一些具体实施中,XR呈现单元346被配置为经由一个或多个XR显示器312例如在由定位单元344确定的位置处呈现XR内容。出于该目的,在各种具体实施中,XR呈现单元346包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。
在一些具体实施中,数据传输单元348被配置为至少向控制器110传输数据(例如,呈现数据、位置数据等)。为此,在各种具体实施中,数据传输单元348包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。
尽管数据获取单元342、定位单元344、XR呈现单元346和数据传输单元348被示为驻留在单个设备(例如,电子设备120)上,但应当理解,在其他具体实施中,数据获取单元342、定位单元344、XR呈现单元346和数据传输单元348的任何组合可位于单独计算设备中。
此外,图3更多地用作可能存在于特定实施方案中的各种特征的功能描述,与本文所述的具体实施的结构示意图不同。如本领域的普通技术人员将认识到的,单独显示的项目可以组合,并且一些项目可以分开。例如,图3中单独示出的一些功能模块可以在单个模块中实现,并且单个功能块的各种功能可在各种具体实施中通过一个或多个功能块来实现。模块的实际数量和特定功能的划分以及如何在其中分配特征将根据具体实施而变化,并且在一些具体实施中,部分地取决于为特定实施方案选择的硬件、软件和/或固件的特定组合。
图4A示出了至少部分地由电子设备(例如图3的电子设备120)的显示器呈现的XR环境410。XR环境410基于电子设备存在于其中的第一物理环境。
XR环境410包括多个对象,包括物理环境的一个或多个物理对象(例如,地板411、第一壁412、顶蓬413和第二壁414)和一个或多个虚拟对象(例如,虚拟导航应用窗口441、虚拟转向指示标识442和虚拟时钟490)。在各种具体实施中,某些对象(例如物理对象和虚拟转向指示标识442)呈现在XR环境410中的位置处,例如,在由共同三维(3D)XR坐标系中的三个坐标限定的位置处,使得虽然一些对象可能存在于物理世界中而其他对象可能不存在,但是可以在它们之间限定空间关系(例如,距离或取向)。因此,当电子设备在XR环境410中移动(例如,改变位置和/或取向)时,对象在电子设备的显示器上移动,但保持其在XR环境410中的位置。响应于电子设备的运动,在显示器上移动但保持其在XR环境410中的位置的此类虚拟对象被称为世界锁定(world-locked)对象。在各种具体实施中,某些虚拟对象(诸如虚拟导航应用窗口441)在XR环境410中的位置基于用户身体的位姿而改变。此类虚拟对象被称为身体锁定对象。例如,当用户在XR环境410进行导航时,虚拟导航应用窗口441保持距用户前方约一米和距用户右侧半米的位置(例如,相对于用户躯干的位置和取向)。当用户的头部移动而用户的身体没有移动时,虚拟导航应用窗口441出现在XR环境410中的固定位置处。
在各种具体实施中,在显示器上的位置处显示某些虚拟对象(例如,虚拟时钟490),使得当电子设备在XR环境410中移动时,对象在电子设备上的显示器上为静止的。响应于电子设备的运动,此类在显示器上保持其位置的虚拟对象被称为显示锁定对象。
在XR环境410中,第一壁412在交叉点421处与地板411相交并且在边缘422处终止。虚拟转向指示标识441显示在XR环境410中第一壁412与第二壁414之间的地板411上刚经过边缘422的位置处。虚拟导航应用窗口441为用户提供在17米处左转的指令。
如上所述,虚拟转向指示标识442是世界锁定的虚拟对象。因此,在各种具体实施中,虚拟转向指示标识442与XR环境410中由XR环境410的三维坐标系中的一组三维XR坐标限定的位置相关联。在各种具体实施中,该设备在XR环境410中的位姿包括由一组三维XR坐标限定的设备位置和由一组三自由度角度限定的设备取向。在各种具体实施中,使用视觉惯性里程计(VIO)(例如使用相机和惯性测量单元(IMU))确定对设备的位姿的估计。
基于对该设备的位姿的估计和虚拟转向指示标识442在XR环境410中的位置,该电子设备确定在显示器上要显示虚拟转向指示标识442的位置。
图4B示出了具有对设备的位姿的不准确估计的XR环境410。特别地,对设备的位置的估计不同于设备的真实位置,因为对位置的估计比设备的真实位置更靠近第二壁414约一米。因此,虚拟导航应用窗口441为用户提供在16(而不是17)米处左转的指令。此外,对该设备的取向的估计不同于设备的真实取向,因为对设备的取向的估计的偏航角相对于设备的真实取向的左侧约10度。因此,虚拟转向指示标识442向右显示,部分地与第二壁414重叠而不是在第一壁412与第二壁414之间。使用VIO的转向指示标识442的这种不准确的放置能够由在创建XR环境410的地图或三维坐标系的时间与图4B表示的时间之间的XR环境410的改变(例如,物理对象的放置、照明条件等)形成。
在各种具体实施中,电子设备获取物理环境的环境模型,该环境模型包括物理环境的一个或多个空间特征。每个空间特征由三维XR坐标系中的空间特征位置限定。
在各种具体实施中,空间特征位置包括一个或多个点。例如,在各种具体实施中,物理环境的环境模型包括交叉点421与边缘422结合的点的空间特征。在各种具体实施中,空间特征位置由一组或多组三维XR坐标限定。
在各种具体实施中,空间特征位置是线条、射线或线段。例如,在各种具体实施中,物理环境的环境模型包括对应于交叉点421的空间特征。在各种具体实施中,空间特征位置由线性方程限定。在各种具体实施中,空间特征位置由第一组三维XR坐标和第二组三维XR坐标限定。在各种具体实施中,空间特征位置由第一组三维XR坐标和取向限定,并且在一些具体实施中,由长度限定。
在各种具体实施中,空间特征位置是平面或平面区段。例如,在各种具体实施中,物理环境的环境模型包括对应于第一壁412的空间特征。在各种具体实施中,空间特征位置由平面方程限定。在各种具体实施中,空间特征位置由平面或平面区段内的一组或多组三维坐标限定。
基于对设备的位姿的(不准确的)估计和对应于交叉点421和边缘422的空间特征的空间特征位置,电子设备将期望对应于交叉点421的空间特征将位于位置431处和对应于边缘422的空间特征将位于位置432处。响应于检测在图4B中所示的位置处的交叉点421和边缘422,电子设备更新其对设备的位姿的估计以在显示器上的正确位置处显示虚拟转向指示标识442。
因此,对于对应于交叉点421和边缘422的每一个空间特征,电子设备从环境模型获取第一空间特征位置。电子设备进一步检测对应于交叉点421和边缘422的空间特征,并且基于对设备的位姿的估计估计第二空间特征位置。电子设备确定第一空间特征位置与第二空间特征位置之间的差异,并且通过移除该差异来更新对设备的位姿的估计。此外,电子设备基于对设备的位姿的更新的估计来确定在显示器上显示虚拟转向指示标识422的位置,并且在显示器上的该位置处显示虚拟转向指示标识422。
图5是根据一些具体实施的定位设备的方法500的流程图表示。在各种具体实施中,方法500由包括一个或多个处理器和非暂态存储器的设备(例如,图3中的电子设备120)执行。在一些具体实施中,方法500由处理逻辑部件(包括硬件、固件、软件或其组合)执行。在一些具体实施中,方法500由执行存储在非暂态计算机可读介质(例如,存储器)中的指令(例如,代码)的处理器执行。
方法500在框510中开始,其中设备获取对设备在环境中的位姿的估计。在各种具体实施中,获取对设备的位姿的估计包括从视觉惯性里程计(VIO)系统(包括例如相机和惯性测量单元(IMU)接收数据。在各种具体实施中,设备的位姿包括设备的位置和设备的取向。在各种具体实施中,设备的位置包括环境的三维坐标系中的一组三维坐标。在各种具体实施中,设备的取向包括环境的三维坐标系中的一组三自由度角度。
方法500在框520中继续,其中设备获取环境的环境模型,该环境模型包括环境中由第一空间特征位置限定的空间特征。在各种具体实施中,第一空间特征位置是线条、射线或线段。例如,在图4B中,在各种具体实施中,物理环境的环境模型包括对应于由线段限定的边缘422的空间特征。在各种具体实施中,第一空间特征位置是平面或平面区段。例如,在图4B中,在各种具体实施中,物理环境的环境模型包括对应于由平面区段限定的壁412的空间特征。
在各种具体实施中,第一空间特征位置包括环境的三维坐标系中的至少一组坐标。例如,在图4B中,在各种具体实施中,对应于边缘422的空间特征由对应于边缘422与顶蓬413结合的位置的第一组三维坐标和对应于边缘422与地板411结合的位置的第二组三维坐标限定。
方法500在框530中继续,其中设备基于对设备的位姿的估计确定该空间特征的第二空间特征位置。在各种具体实施中,确定空间特征的第二空间特征位置包括使用图像传感器捕获环境的图像并检测环境的图像中的空间特征。在各种具体实施中,该设备确定图像中的点的多个二维坐标,该多个二维坐标对应于从环境模型获取的空间特征的点的第一多个三维坐标。此外,基于对该设备的位姿的估计(并且在各种具体实施中,图像传感器的固有参数)和图像中的点的多个二维坐标,该设备确定空间特征位置的点的第二多个三维坐标。例如,在各种具体实施中,设备使用针孔相机模型方程确定该第二多个三维坐标。
在各种具体实施中,确定空间特征的第二空间特征位置包括从深度传感器接收环境的深度数据并检测环境的深度数据中的空间特征。在各种具体实施中,设备确定从设备到深度数据中的点的多个深度,该深度数据对应于从环境模型获取的空间特征的点的第一多个三维坐标。另外,基于对该设备的位姿的估计和该多个深度,设备确定该空间特征位置的点的第二多个三维坐标。
方法500在框540中继续,其中设备基于第一空间特征位置和第二空间特征位置确定对设备的位姿的更新的估计。在各种具体实施中,确定对该设备的位姿的更新的估计包括确定第一空间特征位置与第二空间特征位置之间的差异,并且从对设备的位姿的估计中移除该差异。在各种具体实施中,确定第一空间特征位置与第二空间特征位置之间的差异包括确定第一空间特征位置的多个点与第二空间特征位置的对应多个点之间的平均差异。在各种具体实施中,从对设备的位姿的估计移除差异包括更新对设备的位置的估计。例如,在各种具体实施中,从对设备的位姿的估计移除差异包括减去与设备的位姿的差异。虽然这可能适用于较小的不准确性,但是此类减去仅影响对设备的位置的估计的平移,而不影响对取向的估计。因此,在各种具体实施中,从对设备的位姿的估计移除差异包括更新对设备的取向的估计。例如,在各种具体实施中,从对设备的位姿的估计移除差异包括选择对设备的位姿的估计,该估计使第一空间特征位置与第二空间特征位置之间的差异的成本函数最小化(其基于对设备的位姿的估计)。对于较小的不准确性,此类优化在计算上可以是有效的。
在各种具体实施中,方法500还包括获取要在环境中的内容位置处呈现的内容。例如,在图4A中,电子设备获取关于虚拟转向指示标识442的数据。方法500包括:基于对设备的位姿的更新的估计来确定在显示器上显示内容的位置;以及在显示器上的该位置处显示内容。例如,在图4A中,电子设备在第一壁412与第二壁414之间的虚拟转向指示标识442中显示。
虽然上文描述了在所附权利要求书范围内的具体实施的各个方面,但是应当显而易见的是,上述具体实施的各种特征可通过各种各样的形式体现,并且上述任何特定结构和/或功能仅是例示性的。基于本公开,本领域的技术人员应当理解,本文所述的方面可以独立于任何其他方面来实现,并且这些方面中的两个或更多个可以采用各种方式组合。例如,可以使用本文阐述的任何数量的方面来实现装置和/或可以实践方法。另外,除了本文阐述的一个或多个方面之外或者不同于本文阐述的一个或多个方面,可以使用其他结构和/或功能来实现这样的装置和/或可以实践这样的方法。
还将理解的是,虽然术语“第一”、“第二”等可能在本文中用于描述各种元素,但是这些元素不应当被这些术语限定。这些术语只是用于将一个元件与另一元件区分开。例如,第一节点可以被称为第二节点,并且类似地,第二节点可以被称为第一节点,其改变描述的含义,只要所有出现的“第一节点”被一致地重命名并且所有出现的“第二节点”被一致地重命名。第一节点和第二节点都是节点,但它们不是同一个节点。
本文中所使用的术语仅仅是为了描述特定具体实施并非旨在对权利要求进行限制。如在本具体实施的描述和所附权利要求中所使用的那样,单数形式的“一个”和“该”旨在也涵盖复数形式,除非上下文清楚地另有指示。还将理解的是,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。还将理解的是,术语“包括”在本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元件和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、部件,和/或其分组。
如本文所使用的,术语“如果”可以被解释为表示“当所述先决条件为真时”或“在所述先决条件为真时”或“响应于确定”或“根据确定”或“响应于检测到”所述先决条件为真,具体取决于上下文。类似地,短语“如果确定[所述先决条件为真]”或“如果[所述先决条件为真]”或“当[所述先决条件为真]时”被解释为表示“在确定所述先决条件为真时”或“响应于确定”或“根据确定”所述先决条件为真或“当检测到所述先决条件为真时”或“响应于检测到”所述先决条件为真,具体取决于上下文。
Claims (20)
1.一种方法,所述方法包括:
在包括图像传感器、一个或多个处理器和非暂态存储器的设备处:
获取对所述设备在环境中的位姿的估计;
获取所述环境的环境模型,所述环境模型包括所述环境中由第一空间特征位置限定的空间特征;
基于对所述设备的所述位姿的所述估计来确定所述空间特征的第二空间特征位置;以及
基于所述第一空间特征位置和所述第二空间特征位置来确定对所述设备的所述位姿的更新的估计。
2.根据权利要求1所述的方法,还包括:
获取要在所述环境中的内容位置处呈现的内容;
基于对所述设备的所述位姿的所述更新的估计来确定在显示器上显示所述内容的位置;以及
在所述显示器上的所述位置处显示所述内容。
3.根据权利要求1所述的方法,其中获取对所述设备的所述位姿的所述估计包括从视觉惯性里程计系统接收数据。
4.根据权利要求1所述的方法,其中所述第一空间特征位置是线条、射线或线段。
5.根据权利要求1所述的方法,其中所述第一空间特征位置是平面或平面区段。
6.根据权利要求1所述的方法,其中所述第一空间特征位置包括所述环境的三维坐标系中的至少一组三维坐标。
7.根据权利要求1所述的方法,其中确定所述空间特征的第二空间特征位置包括使用图像传感器捕获所述环境的图像并且检测所述环境的所述图像中的所述空间特征。
8.根据权利要求1所述的方法,其中确定所述空间特征的所述第二空间特征位置包括从深度传感器接收所述环境的深度数据并检测所述环境的深度数据中的所述空间特征。
9.根据权利要求1所述的方法,其中确定对所述设备的所述位姿的所述更新的估计包括确定所述第一空间特征位置与所述第二空间特征位置之间的差异,并且从对所述设备的所述位姿的所述估计中移除所述差异。
10.一种设备,所述设备包括:
非暂态存储器;以及
一个或多个处理器,所述一个或多个处理器用于:
获取对所述设备在环境中的的位姿的估计;
获取所述环境的环境模型,所述环境模型包括所述环境中由第一空间特征位置限定的空间特征;
基于对所述设备的所述位姿的所述估计来确定所述空间特征的第二空间特征位置;以及
基于所述第一空间特征位置和所述第二空间特征位置来确定对所述设备的所述位姿的更新的估计。
11.根据权利要求10所述的设备,其中所述一个或多个处理器还用于:
获取要在所述环境中的内容位置处呈现的内容;
基于对所述设备的所述位姿的所述更新的估计来确定在显示器上显示所述内容的位置;以及
在所述显示器上的所述位置处显示所述内容。
12.根据权利要求10所述的设备,其中所述一个或多个处理器将通过从视觉惯性里程计系统接收数据来获取对所述设备的所述位姿的所述估计。
13.根据权利要求10所述的设备,其中所述第一空间特征位置是线条、射线或线段。
14.根据权利要求10所述的设备,其中所述第一空间特征位置是平面或平面区段。
15.根据权利要求10所述的设备,其中所述第一空间特征位置包括所述环境的三维坐标系中的至少一组三维坐标。
16.根据权利要求10所述的设备,其中所述一个或多个处理器将通过使用图像传感器捕获所述环境的图像并检测所述环境的所述图像中的所述空间特征来确定所述空间特征的所述第二空间特征位置。
17.根据权利要求10所述的设备,其中所述一个或多个处理器将通过从深度传感器接收所述环境的深度数据并检测所述环境的所述深度数据中的所述空间特征来确定所述空间特征的所述第二空间特征位置。
18.根据权利要求10所述的设备,其中所述一个或多个处理器将通过确定所述第一空间特征位置与所述第二空间特征位置之间的差异并且从对所述设备的所述位姿的所述估计移除所述差异来确定对所述设备的所述位姿的所述更新的估计。
19.一种存储一个或多个程序的非暂态存储器,所述一个或多个程序在由设备的一个或多个处理器执行时,使得所述设备:
获取对所述设备在环境中的的位姿的估计;
获取所述环境的环境模型,所述环境模型包括所述环境中由第一空间特征位置限定的空间特征;
基于对所述设备的所述位姿的所述估计来确定所述空间特征的第二空间特征位置;以及
基于所述第一空间特征位置和所述第二空间特征位置来确定对所述设备的所述位姿的更新的估计。
20.根据权利要求19所述的非暂态存储器,其中所述一个或多个程序在被执行时,还使得所述设备:
获取要在所述环境中的内容位置处呈现的内容;
基于对所述设备的所述位姿的所述更新的估计来确定在显示器上显示所述内容的位置;以及
在所述显示器上的所述位置处显示所述内容。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163247991P | 2021-09-24 | 2021-09-24 | |
US63/247,991 | 2021-09-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115861412A true CN115861412A (zh) | 2023-03-28 |
Family
ID=85660467
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210953751.XA Pending CN115861412A (zh) | 2021-09-24 | 2022-08-10 | 基于检测到的空间特征的定位 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20230102686A1 (zh) |
CN (1) | CN115861412A (zh) |
-
2022
- 2022-06-28 US US17/852,114 patent/US20230102686A1/en active Pending
- 2022-08-10 CN CN202210953751.XA patent/CN115861412A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230102686A1 (en) | 2023-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10824864B2 (en) | Plane detection using semantic segmentation | |
US20190371072A1 (en) | Static occluder | |
US11972607B2 (en) | Plane detection using semantic segmentation | |
KR20160148557A (ko) | 월드 락 디스플레이의 품질 피드백 기법 | |
US11727648B2 (en) | Method and device for synchronizing augmented reality coordinate systems | |
US11961195B2 (en) | Method and device for sketch-based placement of virtual objects | |
US11430198B1 (en) | Method and device for orientation-based view switching | |
US11315278B1 (en) | Object detection and orientation estimation | |
US20240070931A1 (en) | Distributed Content Rendering | |
US12033240B2 (en) | Method and device for resolving focal conflict | |
US20230102686A1 (en) | Localization based on Detected Spatial Features | |
US11301035B1 (en) | Method and device for video presentation | |
US12100109B2 (en) | Generating adapted virtual content to spatial characteristics of a physical setting | |
US11836872B1 (en) | Method and device for masked late-stage shift | |
US20240312073A1 (en) | Method and device for resolving focal conflict | |
KR102551149B1 (ko) | 포인트 클라우드 클러스터들의 공간적 관계들 | |
US11763517B1 (en) | Method and device for visualizing sensory perception | |
US20240005536A1 (en) | Perspective Correction of User Input Objects | |
US10964056B1 (en) | Dense-based object tracking using multiple reference images | |
US11838486B1 (en) | Method and device for perspective correction using one or more keyframes | |
US20240241615A1 (en) | Cursor transport | |
US20220366656A1 (en) | Method and Device for Generating a Map from a Photo Set |
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 |