CN109791442A - 表面建模系统和方法 - Google Patents

表面建模系统和方法 Download PDF

Info

Publication number
CN109791442A
CN109791442A CN201780061454.1A CN201780061454A CN109791442A CN 109791442 A CN109791442 A CN 109791442A CN 201780061454 A CN201780061454 A CN 201780061454A CN 109791442 A CN109791442 A CN 109791442A
Authority
CN
China
Prior art keywords
polygon
grid
boundary
plane
search
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
Application number
CN201780061454.1A
Other languages
English (en)
Other versions
CN109791442B (zh
Inventor
V·恩格-索-兴
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.)
Magic Leap Inc
Original Assignee
Magic Leap Inc
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 Magic Leap Inc filed Critical Magic Leap Inc
Priority to CN202310251758.1A priority Critical patent/CN116310218B/zh
Publication of CN109791442A publication Critical patent/CN109791442A/zh
Application granted granted Critical
Publication of CN109791442B publication Critical patent/CN109791442B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/0093Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B30/00Optical systems or apparatus for producing three-dimensional [3D] effects, e.g. stereoscopic images
    • G02B30/20Optical systems or apparatus for producing three-dimensional [3D] effects, e.g. stereoscopic images by providing first and second parallax images to an observer's left and right eyes
    • G02B30/26Optical systems or apparatus for producing three-dimensional [3D] effects, e.g. stereoscopic images by providing first and second parallax images to an observer's left and right eyes of the autostereoscopic type
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B30/00Optical systems or apparatus for producing three-dimensional [3D] effects, e.g. stereoscopic images
    • G02B30/50Optical systems or apparatus for producing three-dimensional [3D] effects, e.g. stereoscopic images the image being built up from image elements distributed over a 3D volume, e.g. voxels
    • G02B30/52Optical systems or apparatus for producing three-dimensional [3D] effects, e.g. stereoscopic images the image being built up from image elements distributed over a 3D volume, e.g. voxels the 3D volume being constructed from a stack or sequence of 2D planes, e.g. depth sampling systems
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • 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/016Input arrangements with force or tactile feedback as computer generated output to the user
    • 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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
    • G06F3/0308Detection arrangements using opto-electronic means comprising a plurality of distinctive and separately oriented light emitters or reflectors associated to the pointing device, e.g. remote cursor controller with distinct and separately oriented LEDs at the tip whose radiations are captured by a photo-detector associated to the screen
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/194Transmission of image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/239Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • H04N13/344Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • H04N13/383Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B2027/0178Eyeglass type
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0179Display position adjusting means not related to the information to be displayed
    • G02B2027/0187Display position adjusting means not related to the information to be displayed slaved to motion of at least a part of the body of the user, e.g. head, eye
    • GPHYSICS
    • G02OPTICS
    • G02FOPTICAL DEVICES OR ARRANGEMENTS FOR THE CONTROL OF LIGHT BY MODIFICATION OF THE OPTICAL PROPERTIES OF THE MEDIA OF THE ELEMENTS INVOLVED THEREIN; NON-LINEAR OPTICS; FREQUENCY-CHANGING OF LIGHT; OPTICAL LOGIC ELEMENTS; OPTICAL ANALOGUE/DIGITAL CONVERTERS
    • G02F1/00Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics
    • G02F1/29Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics for the control of the position or the direction of light beams, i.e. deflection
    • G02F1/292Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics for the control of the position or the direction of light beams, i.e. deflection by controlled diffraction or phased-array beam steering
    • 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/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/12Acquisition of 3D measurements of objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Optics & Photonics (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Nonlinear Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Prostheses (AREA)
  • Materials For Medical Uses (AREA)
  • Image Processing (AREA)

Abstract

一种生成物理环境的表面模型的方法包括获得物理环境的图像。该方法还包括至少根据图像生成平面多边形网格。该方法还包括提取平面多边形网格的边界多边形。此外,该方法包括生成表面网格的边界多边形的凸包。另外,该方法包括根据凸包生成最小面积定向的边界多边形。该方法还可以包括在平面多边形网格的边界多边形之内生成最大面积定向的内部多边形。

Description

表面建模系统和方法
技术领域
本公开涉及使用由移动相机系统捕获的图像进行的表面建模。
背景技术
现代计算和显示技术促进了用于所谓的“虚拟现实”(“VR”)、“增强现实”(“AR”)和/或“混合现实”(“MR”)体验的系统的发展。这可以通过将计算机生成的图像通过头戴式显示器呈现给用户来完成。这个图像创建了让用户沉浸在模拟环境中的感觉体验。VR系统通常涉及呈现数字或虚拟图像信息而对实际的现实世界视觉输入不透明。
AR系统通常用模拟元素来补充真实世界环境。例如,AR系统可以通过头戴式显示器向用户提供周围现实世界环境的视图。计算机生成的图像也可以呈现在头戴式显示器上,以增强周围现实世界的环境。这个计算机生成的图像可以包括与周围的现实世界环境情境相关的元素。这些元素可以包括模拟文本、图像、对象等。MR系统还将模拟对象引入到现实世界环境中,但是这些对象通常具有比AR系统更大程度的交互性。
各种光学系统在各种深度处生成图像,用于显示VR/AR/MR场景。一些这样的光学系统在美国实用新型专利申请序列号14/555,585(代理人案卷号ML.20011.00)和14/738,877(代理人案卷号ML.20019.00)中描述,其内容之前已通过引用并入本文。
AR/MR场景通常包括呈现与现实世界对象相关的虚拟图像元素。例如,参考图1,描绘了AR/MR场景100,其中AR/MR技术的用户看到以背景中的人、树、建筑为特征的现实世界的公园状的设置102以及实体平台104。除了这些项目,AR/MR技术的用户还感觉他们“看到”站在现实世界的平台104上的机器人雕像106,以及看起来像飞行的蜜蜂的化身的卡通式的头像角色108,尽管机器人雕像106和卡通式的头像角色108不存在于真实世界环境中。虽然图1示意性地描绘了AR/MR场景,但AR/MR场景的质量根据AR/MR系统的质量而变化。图1未描绘现有技术的AR/MR场景,而是描绘根据实施例的AR/MR场景。
大脑的可视化中心从双眼及其组成部分彼此相对的运动中获得有价值的感知信息。两只眼睛相对彼此的聚散运动(即瞳孔朝向或远离彼此以会聚眼睛的视线来注视对象的滚动运动)与眼睛晶状体的调节(或“聚焦”)密切相关。在正常情况下,调节眼睛,或者改变眼睛晶状体的焦点,以聚焦在不同距离处的对象,将会在被称为“调节聚散度反射(accommodation-vergence reflex)”的关系下自动地引起在聚散度上的匹配改变而达到相同的距离。同样,在正常情况下,聚散度的改变将引发调节的匹配改变。与大多数传统的立体VR/AR/MR配置一样,知道对抗这种反射会在用户中产生眼睛疲劳、头痛或其它形式的不适。
立体可穿戴眼镜通常具有两个显示器-一个用于左眼,一个用于右眼-两个显示器被配置为显示具有略微不同的元素呈现的图像,以使得人类视觉系统感知到三维视角。已经发现这样的配置对于许多用户来说是不舒服的,因为存在聚散和调节之间的不匹配(“聚散-调节冲突”),必须克服该不匹配以在三维中感知图像。实际上,一些用户不能容忍立体配置。这些限制适用于VR、AR和MR系统。因此,大多数传统的VR/AR/MR系统并非最适合于以对用户来说舒适且最大程度有用的方式呈现丰富的双眼三维体验,部分原因是现有系统未能解决一些人类感知系统的基本方面,包括聚散-调节冲突。
诸如美国实用新型专利申请序列号14/555,585(代理人案卷号ML.20011.00)中描述的VR/AR/MR系统通过使用一个或多个光导光学元件在用户的眼睛处投射光,使得光和由光渲染的图像看起来源自多个深度平面,来解决聚散-调节冲突。光导光学元件被设计成将与数字或虚拟对象对应的虚拟光进行内耦合,通过全内反射(“TIR”)传播,然后将虚拟光进行外耦合,以将虚拟对象显示给用户的眼睛。在AR/MR系统中,光导光学元件还被设计成对来自(例如,反射离开)实际现实世界对象的光是透明的。因此,光导光学元件的多个部分被设计成反射虚拟光以便通过TIR传播,同时对来自AR/MR系统中的现实世界对象的现实世界光透明。
为了实现多个光导光学元件系统,来自一个或多个光源的光必须可控地分布到每个光导光学元件系统。利用以相对高的速率(例如,360Hz或1KHz)渲染的虚拟图像数据对光进行编码,以提供逼真的3D体验。以这样的速度和高分辨率操作(例如,渲染虚拟内容)的当前图形处理单元(“GPU”)消耗大量功率(相对于便携式电池的容量)并且产生可能对于佩戴AR/MR系统的用户不舒服的热量。
AR/MR场景通常包括虚拟对象与现实世界物理环境之间的交互(例如,站在图1中的现实世界平台104上的机器人雕像106)。类似地,一些VR场景包括完全虚拟对象与其他虚拟对象之间的交互。
通过限定那些交互的边界(mete)和界限(bound)(例如,通过限定物理环境中的特定表面的范围),在物理环境中描绘表面有助于与虚拟对象的交互。例如,如果AR/MR场景包括从物理环境中的特定表面延伸的虚拟对象(例如,触手或拳头),则限定表面的范围允许AR/MR系统呈现更逼真的AR/MR场景。在一个实施例中,如果表面的范围未被限定或不准确地限定,则虚拟对象可能看起来部分地或完全地从邻近表面的空中而不是从表面延伸。在另一个实施例中,如果AR/MR场景包括在物理环境中的特定水平表面上行走的虚拟角色,则不准确地限定表面的范围可能导致虚拟角色看起来离开表面行走而不会掉落,而是漂浮在半空中。
为了促进虚拟对象与现实世界的物理环境之间的交互,各种AR/MR系统利用基准标记(参见图2的ArUco标记200)来为在其上放置基准标记的现实世界的物理表面提供位置和方向(即,姿势)信息。然而,ArUco标记200不提供与物理表面的范围有关的任何信息。此外,很少有应用或情况适合将ArUco 200标记放置在现实世界的物理环境中的一个或多个表面上。例如,ArUco标记200可以通过要求将可见标记放置在该表面上来改变表面的美感。
虽然一些VR/AR/MR系统可以生成多边形网格以描绘和/或表示物理环境中的表面,但是这样的多边形网格可以提供太多信息以促进虚拟对象与现实世界物理环境使用之间的交互。例如,VR/AR/MR系统将需要进一步处理多边形网格,用于例如模拟物理碰撞、模拟静止接触和各种照明效果(例如,阴影和反射)的各种应用/功能/过程。以足够的速度和分辨率针对这些各种应用/功能/过程对于多边形网格进一步处理以实现逼真、可信和/或可通行的VR/AR/MR体验可能需要许多处理器周期。处理器相关要求可以反过来对于VR/AR/MR系统施加性能(例如,用于诸如渲染的其他功能的处理器周期)、功率(例如,电池寿命)、热量(例如,考虑到与用户身体的接近度)以及尺寸(例如,便携性)相关的限制。需要进行更抽象且易于消化的环境表示从而表示环境的关键方面,例如以最小化的处理来表示大平坦区域的位置。多边形网格需要进一步处理以抽象出有用的信息。这里描述的系统和方法被配置为解决这些和其他挑战。
发明内容
在一个实施例中,一种生成物理环境的表面模型的方法包括获得物理环境的图像。该方法还包括至少根据图像提取边界多边形。此外,该方法包括生成边界多边形的凸包。另外,该方法包括根据凸包生成最小面积定向的边界多边形。
在一个或多个实施例中,该方法还包括至少根据图像生成平面多边形网格。至少根据图像提取边界多边形可以包括根据平面多边形网格提取边界多边形。获得物理环境的图像可以包括使用成像设备获得与物理环境对应的3-D点云,以及获得成像设备的姿势信息。该方法还可以包括使用姿势信息计算3-D点云的截断符号距离函数。生成平面多边形网格可以包括细分截断符号距离函数。该方法还可以包括将两个较小的平面多边形网格组合成一个较大的平面多边形网格。
在一个或多个实施例中,该方法还包括获得重力矢量,其中所生成的平面多边形网格是与重力矢量基本平行和正交中的至少一个。生成凸包可以包括使用格雷厄姆扫描(Graham-Scan)算法。生成最小面积定向的边界多边形可以包括使用旋转卡尺算法。最小面积定向的边界多边形可以在平面多边形网格的边界多边形之外。
在一个或多个实施例中,该方法还包括在平面多边形网格的边界多边形之内生成最大面积定向的内部多边形。生成最大面积定向的内部多边形可以包括在由边界多边形进行限定的搜索区域中执行搜索。生成最大面积定向的内部多边形可以包括在搜索区域中形成栅格。该方法还可以包括基于搜索区域的大小来调整栅格的分辨率。
在一个或多个实施例中,该方法还包括接收对于平面多边形网格的边界多边形之内的点的选择。生成最大面积定向的内部多边形可以包括在使用所选择的点限定的搜索区域中执行搜索。生成最大面积定向的内部多边形可以包括在搜索区域中形成栅格。该方法还可以包括基于搜索区域的大小调整栅格的分辨率。
在一个或多个实施例中,最小面积定向的边界多边形和最大面积定向的内部多边形可以具有相同的形状。平面多边形网格可以基于步进立方体算法来生成。最小面积定向的边界多边形可以是矩形、三角形和圆形中的至少一种。该方法还可以包括确定最小面积定向的边界多边形和边界多边形之间的配合。确定配合可以包括计算最小面积定向的边界多边形的第一面积和边界多边形的第二面积之间的差。
在一个或多个实施例中,该方法还包括存储表示最小面积定向的边界多边形的数据,其中最小面积定向的边界多边形是矩形。数据可以包括与矩形对应的四组坐标。数据还可以包括矩形的长度、矩形的宽度和矩形的中心。四组坐标中的每一组可以是一对坐标。生成平面多边形网格可以包括捕获物理环境的一系列图像的静态部分。
在另一实施例中,一种用于生成物理环境的表面模型的系统包括成像设备和可操作地耦接到相机的图像处理器。图像处理器被配置为至少部分地从成像设备获得物理环境的图像。图像处理器还被配置为至少根据图像提取边界多边形。此外,图像处理器被配置为生成边界多边形的凸包。另外,图像处理器被配置为根据凸包生成最小面积定向的边界多边形。
在一个或多个实施例中,该系统还包括可操作地耦接到成像设备和图像处理器的姿势传感器。图像处理器还可以被配置为使用姿势信息计算3-D点云的截断符号距离函数。图像处理器还可以被配置为通过对于截断符号距离函数进行细分,至少根据图像生成平面多边形网格。至少根据图像提取边界多边形可以包括提取平面多边形网格的边界多边形。获得物理环境的图像可以包括使用成像设备获得与物理环境对应的3-D点云,以及使用姿势传感器获得成像设备的姿势信息。
在一个或多个实施例中,图像处理器还被配置为至少根据图像生成平面多边形网格,并在平面多边形网格的边界多边形之内生成最大面积定向的内部多边形。生成最大面积定向的内部多边形可以包括在由边界多边形限定的搜索区域中执行搜索,在搜索区域中形成栅格,以及基于搜索区域的大小调整栅格的分辨率。
在一个或多个实施例中,图像处理器还被配置为接收对于平面多边形网格的边界多边形之内的点的选择。生成最大面积定向的内部多边形还可以包括在使用所选择的点进行限定的搜索区域中执行搜索,以及在搜索区域中形成栅格。图像处理器还可以被配置为基于搜索区域的大小来调整栅格的分辨率。最小面积定向的边界多边形可以是矩形、三角形和圆形中的至少一种。
在一个或多个实施例中,图像处理器还被配置为存储表示最小面积定向的边界多边形的数据,其中最小面积定向的边界多边形是矩形。数据可包括与矩形对应的四组坐标。数据还可以包括矩形的长度、矩形的宽度和矩形的中心。四组坐标中的每一组可以是一对坐标。图像处理器还可以被配置为通过至少捕获物理环境的一系列图像的静态部分,来至少根据图像生成平面多边形网格。
在一个或多个实施例中,使用步进立方体算法生成平面多边形网格。该方法还可以包括确定最小面积定向的边界多边形中的中心点。该方法还可以包括确定最小面积定向的边界多边形的方向。该方法还可以包括确定最小面积定向的边界多边形的法线。该方法还可以包括确定包括最小面积定向的边界多边形的坐标系。
附图说明
附图示出了本公开的各种实施例的设计和实用性。应该注意的是,附图未按比例绘制,并且在所有附图中相似结构或功能的元素由相同的附图标记表示。为了更好地理解如何获得本公开的各种实施例的上述和其他优点和目的,将通过参考附图中所示出的其特定实施例来呈现上面简要描述的本公开的更详细描述。应理解的是,这些附图仅描绘了本公开的典型实施例,因此不应认为是对其范围的限制,将通过使用附图以额外的具体性和细节来描述和解释本公开。
图1是根据一个实施例的通过可穿戴AR/MR用户设备的增强或混合现实的示意图。
图2描绘了根据一个实施例的四种ArUco基准标记。
图3是描绘根据一个实施例的AR/MR系统的框图。
图4是示出根据一个实施例的使用AR/MR系统生成现实世界物理环境的表面模型的方法的流程图。
图5是示出根据另一实施例的使用AR/MR系统生成现实世界物理环境的表面模型的方法的流程图。
图6描绘了根据一个实施例的表示现实世界物理环境的表面的平面多边形网格。
图7描绘了根据一个实施例的根据平面多边形网格提取的边界多边形。
图8描绘了根据一个实施例的用于与现实世界物理环境的表面模型交互的用户界面。
图9A至图9C描绘了根据另一实施例的用于与现实世界物理环境的表面模型交互的用户界面的三个实例。
图10描绘了根据一个实施例的表示房间中的一个或多个表面的3D表面模型。
图11是示出根据又一实施例的使用AR/MR系统生成现实世界物理环境的表面模型的方法的流程图。
图12是示出适于实施根据又一实施例的使用AR/MR系统来生成现实世界物理环境的表面模型的方法的计算系统的框图。
具体实施方式
本公开的各种实施例涉及用于单个实施例或多个实施例中的表面建模系统的系统、方法和制品。在详细说明、附图和权利要求中描述了本公开的其他目的、特征和优点。
现在将参考附图详细描述各种实施例,各种实施例被提供作为本公开的说明性示例,以使得本领域技术人员能够实践本公开。值得注意的是,下面的附图和示例并不意味着限制本公开的范围。在使用已知组件(或方法或过程)可以部分或完全实现本公开的特定元素的情况下,将仅描述理解本公开所必需的这些已知组件(或方法或过程)的那些部分,并且将省略对这些已知组件(或方法或过程)的其他部分的详细描述,以免模糊本公开。此外,各种实施例包含在此通过说明的方式提及的组件的当前和未来已知等同物。
表面建模系统可以独立于AR/MR系统来实现,但是仅为了说明目的,下面的许多实施例关于AR/MR系统进行描述。
问题和解决方案的概要
为了实现虚拟对象与现实世界物理环境之间的真实交互,必须确定物理环境中各种表面的位置、方向和范围,并将其传送给渲染虚拟对象的处理器(例如,GPU)。关于物理环境中的表面的信息允许处理器渲染虚拟对象,使得它们看起来遵守相对于表面的物理定律(例如,重力)。关于表面的信息还允许处理器渲染虚拟对象,使得它们与表面一致。一个示例是在墙壁或桌子的表面上显示虚拟媒体(例如,漫画书或电影),而虚拟媒体不延伸超出墙壁或桌子。
一些增强现实(AR)/混合现实(MR)系统利用基准标记(例如,ArUco标记)来提供现实世界物理环境中的表面的位置和方向。然而,这些标记可能是侵入性的,并且可能不提供与表面的范围(大小、形状等)有关的信息。其他AR/MR系统生成多边形网格以对于物理环境中的表面进行建模。然而,许多应用程序不能利用多边形网格而不会因进一步处理而增加计算成本。在进一步处理多边形网格上花费的处理器周期不能用于其他AR/MR系统功能,例如渲染高清图像。此外,额外的处理需要功率,缩短电池寿命。此外,额外的处理产生热量,可能导致佩戴AR/MR系统的用户感到不适。另外,添加处理器和/或电池以执行附加处理增加了AR/MR系统的最小尺寸。
在此描述的AR/MR系统和方法通过根据较小的多边形网格提取用户友好的较大多边形(例如,矩形),然后使用提取的较大多边形来建模物理环境的表面来解决这些问题。该系统和方法可以提取最有用的多边形(例如,水平和垂直平面)。然后,以简单且方便的数据格式存储提取的较大多边形,并将其发送到与AR/MR系统相关联的应用程序/功能/过程。因为物理环境的表面是利用提取的较大多边形建模的,并且因为较大的多边形以简单且方便的数据格式存储,所以它们可以用最少的进一步处理来生成具有最小延迟和处理要求的逼真、高清的AR/MR体验。
增强现实/混合现实系统
图3示出了根据一个实施例的AR/MR系统300(下文中称为“系统300”)。系统300使用一个或多个堆叠的光导光学元件(“LOE”)390在相应的一个或多个深度平面处将光引导到用户的眼睛中。LOE可以是体积相位全息图或表面浮雕全息图,其被编码/编程/嵌入深度平面信息以生成看起来源自相应深度平面的图像。换句话说,衍射图案或衍射光学元件(“DOE”)可以嵌入LOE内或压印在LOE上,使得准直光(具有基本平面波前的光束)沿着LOE基本上全内反射,它相交多个位置处的衍射图案并朝向用户的眼睛出射。DOE被配置成使得从LOE通过其出射的光被边缘(verge),使得它们看起来源自特定的深度平面。
系统300包括图像处理器310、光源320、控制器330、空间光调制器(“SLM”)340,一对前向视场(FOV)相机350、与前向FOV相机350对应的一对姿势传感器360、以及用作多平面聚焦系统的至少一组堆叠的LOE 390。系统300还可以包括眼睛跟踪子系统370。应当理解,其他实施例可以具有多组堆叠的LOE 390。
图像处理器310被配置为生成要向用户显示的虚拟内容。图像处理器310可以将与虚拟内容相关联的图像或视频转换为可以以3D投影给用户的格式。例如,在生成3D内容时,可能需要格式化虚拟内容,使得特定图像的部分显示在特定深度平面,而其他部分显示在其他深度平面。在一个实施例中,可以在单个深度平面处生成所有图像。在另一个实施例中,图像处理器310可以被编程为向右眼和左眼提供略微不同的图像,使得当一起观看时,虚拟内容对于用户的眼睛看起来连贯且舒适。
图像处理器310还被配置为生成现实世界物理环境的表面模型(例如,根据前向FOV相机350捕获的图像和/或视频)。在一个实施例中,图像处理器310被配置为在不使用基准标记的情况下生成表面模型。表面模型包括接近物理环境中的整个表面的较大多边形。在另一个实施例中,表面模型没有网格。
图像处理器310还可以包括存储器312、GPU 314、CPU 316,以及用于图像生成和处理以及表面建模的其他电路。图像处理器310可以被编程有要呈现给AR/MR系统300的用户的期望虚拟内容。图像处理器310还可以用一个或多个算法被编程,该一个或多个算法用于根据捕获的图像和/或视频生成表面模型。在一些实施例中,图像处理器310可以容纳在系统300的可穿戴显示单元中。在其他实施例中,图像处理器310和其他电路可以容纳在耦接到可穿戴显示单元的带包中。图像处理器310可操作地耦接到投射与期望的虚拟内容相关联的光的光源320和一个或多个空间光调制器。图像处理器310还可操作地耦接到前向FOV相机350和姿势传感器360。
光源320紧凑并且具有高分辨率。光源320可操作地耦接到控制器330。光源320可以包括以各种几何配置设置的特定颜色的LED和激光器。或者,光源320可以包括相同颜色的LED或激光器,每个LED或激光器链接到显示器的视场的特定区域。在另一实施例中,光源320可以包括广域发射器,例如白炽灯或荧光灯,其具有用于分割发射区域和位置的掩模覆盖。尽管在图3中光源320直接连接到AR/MR系统300,但是光源320可以经由光纤(未示出)连接到系统300。系统300还可以包括配置成准直来自光源320的光的聚光器(未示出)。
在各种实施例中,SLM 340可以是反射式(例如,LCOS、FLCOS、DLP DMD或MEMS镜系统),透射式(例如,LCD)或发射式(例如,FSD或OLED)。可以选择SLM 340的类型(例如,速度、大小等)以改善3D感知的创建。虽然以较高刷新率进行操作的DLP DMD可以容易地结合到静止系统300中,并且可穿戴系统300可以使用较小尺寸和功率的DLP。DLP的强大功能改变了3D深度平面/焦平面如何创建。图像处理器310可操作地耦接到SLM 340,SLM 340利用期望的虚拟内容对来自光源320的光进行编码。来自光源320的光可以利用图像信息进行编码,在其从SLM 340反射离开、发射或穿行通过SLM 340时。
来自SLM 340的光被引导到LOE 390,使得由SLM 340利用图像数据进行编码的光束有效地沿着单个LOE 390传播,以传递到用户的眼睛。每个LOE 390被配置为将看起来源自期望深度平面或FOV角度位置的图像或子图像投影到用户的视网膜上。因此,光源320和LOE 390可以将看起来源自空间中的各种深度平面或位置(在控制器330的控制下由SLM340同步编码)的图像选择性地投影。通过使用光源320和LOE 390中的每一个以足够高的帧速率顺序地投影图像(例如,对于在有效全体积帧速率60Hz的单色的六个深度平面为360Hz,或者对于在60Hz的RGB全色的六个深度平面为1080Hz),系统300可以在看起来同时存在于3D图像中的各种深度平面处生成虚拟对象的3D图像。
控制器330通信并可操作地耦接到图像处理器310、光源320和SLM 340,从而通过指示SLM 340对来自光源320的光束利用来自图像处理器310的适当图像信息进行编码,来协调图像的同步显示。
前向FOV相机350被配置为捕获用户FOV的图像和/或视频。前向FOV相机350可以对于可见光和/或诸如红外线的不可见光敏感。前向FOV相机350可操作地耦接到图像处理器310。
姿势传感器360被配置为记录与每个前向FOV相机350的方向(例如,滚动、俯仰和偏航)有关的信息。在一个实施例中,姿势传感器360是惯性测量单元(“IMU”),其可包括一个或多个加速度计、陀螺仪、磁力计等。姿势传感器360可以测量N(例如,六个)自由度中的力、角度变化和/或磁场变化。姿势传感器360与相应的前向FOV相机350的接近增加了前向FOV相机350的姿势信息的准确度。在一些实施例中,姿势传感器360(永久地或可移除地)耦接到前向FOV相机350。
系统300还包括可选的眼睛跟踪子系统370,其被配置为跟踪用户的眼睛并确定用户的焦点。在一个实施例中,系统300被配置为基于来自眼睛跟踪子系统370的输入照亮LOE390的子集,使得图像在与用户的焦点/调节一致的期望深度平面处生成。例如,如果用户的眼睛彼此平行,则系统300可以照亮被配置为将准直光传递到用户的眼睛的LOE 390,使得图像看起来源自光学无限远。在另一示例中,如果眼睛跟踪子系统370确定用户的焦点在1米远处,则可以替代地照亮被配置为大致在该范围内聚焦的LOE 390。
表面建模
以上描述了根据一个实施例的被配置为对于现实世界物理环境的表面建模的系统300。下面描述使用这种系统对于现实世界物理环境的表面进行建模的方法。
图4是示出根据一个实施例的方法400的流程图,该方法400使用系统300(包括前向视场(FOV)相机350、姿势传感器360和图像处理器310)生成现实世界物理环境的表面模型。在步骤402,系统300(例如,图像处理器310)接收其中设置有系统300的物理环境的一个或多个图像或视频。可以从前向FOV相机350接收图像/视频。系统300可以被配置为使用前向FOV相机350捕获图像,使得仅捕获物理环境的一系列图像的静态部分,同时动态部分被忽略。
可替换地,可以从物理环境中的其他系统300(例如,其他用户的)的相机接收图像/视频。当从一个或多个相机接收图像/视频时,那些图像/视频中的点被注册到具有共同坐标系的单个参考帧(reference frame)。图像/视频可以相对于它们的捕获实时地接收,或者可以先前捕获并存储它们(例如,在系统300通信地耦接到的服务器的存储器中)。从一个或多个位置和方向/角度接收相同物理环境的图像/视频增加表面建模的准确性,通过减少没有光学信息的物理环境中的表面量。
可以从系统300的姿势传感器360接收姿势信息,姿势传感器360被放置在相应的前向FOV相机350附近。图像处理器310使用姿势信息,根据物理环境的图像/视频来生成与物理环境对应的3-D点云。在单个图像实施例中,3-D点云表示每个采样点及其在三维坐标系(例如,X,Y,Z)中的位置,如从图像和与捕获图像的前向FOV相机350相关的姿势信息所确定的。可以使用飞行时间信息分析来获得这样的信息。在多图像实施例中,3-D点云表示每个图像中的每个采样点的平均以及三维坐标系中的平均位置,如从图像和在一些情况下的相应姿势信息所确定的。可以使用飞行时间分析和/或三角测量来获得这样的信息。
深度感测系统还可用于生成3-D点云。深度感测是确定三个3-D空间中的已知点(例如,深度传感器或前向FOV相机350)与现实世界物理对象的表面上的感兴趣点(“POI”)之间的距离。深度感测对于许多计算机视觉系统是有用的,包括AR/MR系统。一种深度感测方法包括测量表面上的单个POI和相应图像上的多个POI的两个图像(在已知方向上分开已知距离)的光轴之间的相应角度。通过对测量的角度和图像捕获位置之间的已知距离进行三角测量来确定表面的深度。飞行时间相机可以被认为是一种深度传感器。
在步骤404,系统300(例如,其图像处理器310)根据接收的图像/视频生成平面多边形网格。简要地参考图6,其示出了根据一个实施例的平面多边形/三角形网格602。可以根据根据物理环境捕获或构造的图像/视频/3-D点云形成一个或多个平面多边形网格(例如,如图6中所示的平面多边形/三角形网格602)以描绘和/或表示物理环境中的表面。在一个实施例中,使用步进立方体算法根据接收的图像/视频生成非平面网格,并且根据非平面网格导出平面多边形网格602。
在另一实施例中,在步骤404,系统300通过计算3-D点云的截断符号距离函数(“TSDF”),基于3-D点云生成平面多边形网格602。例如,3-D点云的TSDF用于生成非平面网格,例如,使用步进立方体算法,并且平面多边形网格602根据非平面网格导出。TSDF包括3-D点云中每个点的数值。当点在特定平面中时,该值为零;当点在(使用特定的评判系统)特定平面之上时,该值为正,当点在特定平面之下时,该值为负。然后,使用计算出的TSDF来限定在特定平面中、之上和之下对齐的砖或盒的3-D体积栅格。最后,利用步进立方体对3-D体积栅格进行细分(tessellation)以生成非平面网格,并且分析非平面网格并将其转换为表示特定表面的平面多边形网格602。可以控制细分过程以包括或排除圆形或锐利边缘。另外,通过将具有相同方向的附近/相邻多边形折叠成较大的多边形,可以简化非平面网格。在一些示例中,还可以通过将具有相同方向的附近/相邻多边形折叠成较大的多边形,来简化所生成的平面多边形网格602。
各种实施例还可以强制与由姿势传感器360(例如,IMU)检测的重力矢量正交的平面性。换句话说,如果物理环境包括其上具有各种对象(例如,电话、膝上型计算机、咖啡杯等)的会议桌,则这些实施例可以从平面多边形网格中移除那些对象,使得网格仅描绘/表示会议桌的水平表面。类似地,系统300还可以被配置为强制诸如墙壁和白板的垂直表面的平面性。其他实施例可以通过用任何方向矢量代替重力矢量来强制平面性和任何预定角度。
在步骤406,系统300(例如,其图像处理器310)提取平面多边形网格的边界多边形。简要地参考图7,其示出了根据一个实施例的根据图6的平面多边形网格602提取的边界多边形704。根据平面多边形网格602提取边界多边形704可以包括移除平面多边形网格602的不面向平面多边形网格602的外表面的部分。如图7所示,生成边界多边形704通过移除平面多边形网格602中的许多较小多边形来简化表面的模型。通常,处理较大数量(例如,100,000s)的较小多边形需要更多处理器(例如,CPU/GPU)周期和电池功率,并产生更多热量。在一些实施例中,在生成边界多边形704时可以忽略多边形网格602中的“为陆地所包围的(landlocked)”孔(即,由结构包围的结构中的空间),而平面多边形网格602中的“海湾”(即,大部分由结构包围的结构中的空间,类似于地理地图中的海湾)可以包括在生成边界多边形704中。
在步骤408,系统300(例如,其图像处理器310)根据提取的边界多边形生成凸包(convex hull)。简要地参考图8,其示出了根据一个实施例的根据提取的边界多边形804生成的凸包806。围绕边界多边形804的凸包806是类似于用紧的橡皮筋或紧的塑料包裹物包裹边界多边形804的数学函数。结果是凸包806上的线没有穿过边界多边形804以到达边界多边形804的内部。在一个实施例中,使用格雷厄姆扫描(Graham-Scan)算法根据边界多边形804生成凸包806。根据边界多边形804生成凸包806可以包括绘制线以连接边界多边形804的“高点”(例如,边界多边形804的最远离其中心的点)。
边界多边形804和凸包806都表示现实世界物理白板802的垂直表面。
在步骤410,系统300(例如,其图像处理器310)根据凸包生成最小面积定向的边界多边形(“MAOBP”)。简要地参考图8,其示出了根据一个实施例的根据凸包806生成的MAOBP808。MAOBP 808是能够包含凸包806(并且因此包含边界多边形804)的预定形状的最小多边形。在图8所示的实施例中,MAOBP 808是沿重力矢量定向并与地板正交的矩形。在一个实施例中,使用旋转卡尺算法根据凸包806生成MAOBP 808。根据凸包806生成MAOBP 808与表示物理环境中的表面的其他模式相比,需要相对更少的计算。
MAOBP 808对于特定应用特别有用,因为它包含整个凸包806,因此包含边界多边形804。MAOBP 808适合的一个应用是虚拟媒体(例如,漫画书或电影)在物理环境的表面上的显示。对于一些虚拟显示应用,使虚拟媒体的少部分延伸超出实际物理表面并进入到空间并不特别分散注意力。此外,在一些实施例中,MAOBP 808可以比其他方法更准确地捕获全部在下面的表面,导致非常少的实例MAOBP 808的少部分延伸到空的空间。
图9A至图9C还示出了围绕相应的边界多边形904、904'形成的两个MAOBP 908、908'。MAOBP 908、908'和相应的边界多边形904、904'都表示相应的现实世界对象(白板902、桌面902')的表面。如图9A至图9C所示,与表示桌面902'的MAOBP 908'相比,表示白板902的MAOBP 908更好地配合(即,更准确的相关)到对应的边界多边形904和白板902(即,具有更少的额外空的空间)。图9A至图9C描绘了用于与现实世界物理环境的表面模型进行交互(例如,显示给系统300的用户)的用户界面900、900'、900”的三个实例。
图9A至图9C示出了MAOBP 908、908'可能不适合其他应用。例如,在虚拟角色在桌面902'上行走的应用中,使用MAOBP 908'可能导致角色走出桌子并悬挂在半空中。为了解决该问题,可以生成其他多边形以描绘/表示物理环境中的表面。
例如,图5是示出根据另一个实施例的使用系统300(包括前向FOV相机350、姿势传感器360和图像处理器310)生成现实世界物理环境的表面模型的方法500的流程图。步骤502至510分别与图4中的对应步骤402至410相同。如上面关于图4所述,关于图8的步骤502至510的结果是边界多边形804、凸包806和MAOBP 808。
在步骤512,系统300(例如,其图像处理器310)生成边界多边形的最大面积定向的内部多边形(“MAOIP”)。简要地参考图8,其示出了根据一个实施例的MAOIP 810。MAOIP 810是沿重力矢量定向并与地板正交的矩形。在一个实施例中,通过在(例如,由MAOBP 808限定的)搜索区域中执行搜索来生成MAOIP 810。栅格覆盖在搜索区域的顶部,并且栅格中的每个点在边界多边形804的平面中顺序地延伸以形成内部多边形,然后顺序地测试该内部多边形以确定它是否完全包含在边界多边形804中。从分析中丢弃包括边界多边形804之外的部分的内部多边形。最后,比较边界多边形804中包含的每个内部多边形的面积,以识别具有最大面积的内部多边形。
与表示现实世界物理环境中的表面的其他模式(例如,MAOBP)相比,使用上述栅格和搜索算法生成MAOIP 810在计算上是昂贵的。使用MAOBP 808作为搜索区域需要系统300遍历最大数量的栅格点。为了解决该问题,方法可以使用图8中的用户界面800来促进用户输入以便限制搜索区域的大小。用户界面800包括光标812,光标812由从系统300的头戴式显示器投射的线814限定。用户可以通过相对于白板802移动他们的头部或图腾(totem)来移动光标812。光标812通过在边界多边形804的平面中的X(816)和Y(818)方向上延伸来限定搜索区域。
虽然图8中的搜索区域仅略小于MAOBP 808,但在其他实施例中,搜索区域可以显著小于MAOBP 808。在图9C中的用户界面900”中示出了一个这样的实施例,其中边界多边形904'具有与桌面902'不同的形状。搜索区域可以被定向为与重力矢量正交或相对于重力矢量旋转。
用于解决搜索MAOIP 810的计算负荷的另一方法是调整形成搜索区域的栅格的分辨率。降低栅格的分辨率减少计算负荷。在一个实施例中,基于搜索区域的大小来调整栅格的分辨率。对于大的搜索区域,分辨率被降低。相反,对于较小的搜索区域,分辨率会增加。
MAOIP 810对于特定应用特别有用,因为它仅包含边界多边形804内的点。MAOIP810适合的一个应用是虚拟角色在桌面902'上行走的应用或游戏。对于该应用,将表面限定为仅包括边界多边形904'之内的点,防止诸如虚拟角色走出桌面902'并且悬挂在半空中的异常。
存储和使用的数据结构
图10描绘了表示房间(包括其中的家具)中的多个主表面的3-D表面模型1000(下文中称为“模型1000”)。模型1000如上所述被生成,并且已经将表面选择为与重力矢量平行或正交。模型1000包括提取的边界多边形1004、凸包1006、MAOBP 1008和MAOIP 1010。该模型1000对于与垂直表面(例如,显示媒体)和水平表面(例如,与重力表面具有模拟相互作用的虚拟对象的放置)交互的应用特别有用。诸如图10中描绘的模型1000的3-D模型可以使用最小存储和带宽存储在应用/AR/MR系统中并且传输到应用/AR/MR系统。此外,这种3-D模型可以通过应用/AR/MR系统采用附加最小处理来用于模拟物理碰撞、模拟静止接触、并显示各种照明效果(例如,阴影和反射)。
类似于图10中描绘的模型1000的3-D表面模型提供了物理环境中的表面的位置和方向信息,而没有使用基准标记(例如,ArUco标记)。此外,3-D表面模型提供了不能由基准标记提供的估计的表面范围信息。MAOBP高估了表面的范围,MAOIP低估了表面的范围。
图10中提取的边界多边形、凸包、MAOBP和MAOIP可以存储在存储器(例如,系统300的存储器312)中,并且与使用平面网格多边形来表示物理环境中的表面相比,使用最小量的存储和带宽通信到各种应用。在一个实施例中,表示矩形(例如,MAOBP或MAOIP)的数据可以是预定义的3-D坐标系中的(例如,矩形的四个角的)X、Y、Z坐标。在另一实施例中,表示矩形的数据可以是表示矩形中心的坐标(例如,X、Y坐标)和表示矩形的长度和宽度的四元数(4个数字)。
该数据格式既降低了存储器和带宽要求,又被配置用于简单、低计算操作以达到被混合现实应用经常使用的其他表面特征。例如,通过将矩形的四个角的坐标相减,可以容易地计算矩形的长度和宽度。类似地,通过对于矩形的四个角的坐标取平均,可以容易地计算矩形的中心。另外,矩形的长度和宽度方向上的矢量可以用于计算(例如,使用叉积)矩形的法线。此外,可以基于长度矢量、宽度矢量和法线矢量来定义坐标系。
虽然表示矩形(例如,MAOBP或MAOIP)的数据可以是预定义坐标系中的(例如,矩形的四个角的)坐标,但是在其他实施例中,表示矩形的数据也可以包括这些计算出的特征(例如,长度、宽度、中心、法线和坐标系)中的一些。在这些实施例中,通过接收和处理表面模型的应用的计算要求减少,可以抵消存储器和带宽的略微增加。
虽然上述实施例中的MAOBP和MAOIP是矩形,但系统300可以被配置为以任何预定义的形状(例如,圆形、三角形、五边形等)生成MAOBP和MAOIP。单个实施例中的MAOBP和MAOIP可以是两个不同的多边形(例如,三角形和矩形)。在其他实施例中,如本文所述的那些,单个实施例中的MAOBP和MAOIP可以是相同的形状,但是具有不同的比例。可以通过从MAOBP的面积中减去提取的边界多边形的面积,来计算提取的边界多边形和MAOBP之间的配合。在该实施例中,面积差异越小,配合越好。
如图9A至图9C所示,与表示桌面902'的MAOBP 908'相比,表示白板902的MAOBP908更好地配合对应的边界多边形904和白板902(即,具有更少的额外空的空间)。系统300可以被配置为循环遍历预定系列的已知形状,以通过比较计算的面积差异来增加MAOBP的配合。这还通过计算相关/配合值并确定该值是否高于特定的预定阈值(例如,0.9),来提供物理环境中任何特定表面的形状的良好估计。
虽然上述系统300包括用于渲染虚拟图像和对于现实世界物理环境的表面进行建模的单个图像处理器310,但是其他实施例包括用于渲染和建模的单独处理器。实际上,用于表面建模的单独处理器可以驻留在服务器计算机中。单独的处理器可以通信地且可操作地相互耦接。
虽然上述系统300包括各对的前向FOV相机350和姿势传感器360,但是其他实施例仅包括单个前向FOV相机350和单个姿势传感器360。在其他实施例中,包括一对前向FOV相机350,并且没有姿势传感器360。在这些实施例中,使用经典三角测量技术生成3-D云。
尽管上述使用AR/MR系统生成现实世界物理环境的表面模型的方法400、500包括根据物理环境的图像/视频生成平面多边形网格,但是在其他实施例中,多边形网格是根据物理环境的图像/视频生成的。在其他实施例中,没有多边形网格。作为替代,这些方法直接根据物理环境的图像/视频提取边界多边形(例如,使用机器视觉技术)。
例如,图11描绘了根据又一实施例的使用系统300生成现实世界物理环境的表面模型的方法1100。步骤1102、1108和1110与图4中的对应步骤402、408和410相同。图4和图11中分别描绘的方法400、1100之间的差异在于,在方法1100中的步骤1106,系统300(例如,其图像处理器310)根据所接收的物理环境的图像/视频提取边界多边形(例如,使用机器视觉和所接收的姿势信息)。当在配置用于有效机器视觉的系统中实现时,方法1100可以使用比包括生成平面多边形网格的步骤的方法400、500更少的计算能力(例如,处理器周期)来生成物理环境的表面模型。
系统架构
图12是适于实现本公开的实施例的说明性计算系统1200的框图。计算机系统1200包括总线1206或用于通信信息的其他通信机构,其将子系统和设备互连,例如处理器1207、系统(主)存储器1208(例如,RAM)、静态存储设备1209(例如,ROM)、磁盘(存储)驱动器1210(例如,磁或光)、通信接口1214、显示器1211、输入设备1212、数据接口1233和光标控制。
根据一个实施例,计算系统1200通过处理器1207来实现特定操作,处理器1207执行包含在系统存储器1208中的一个或多个指令的一个或多个序列。这些指令可以从例如静态存储设备1209或磁盘驱动器1210的另一计算机可读/可用介质,读取到系统存储器1208中。在替代实施例中,可以使用硬连线电路代替软件指令或与软件指令组合以实现本公开。因此,本公开的实施例不限于硬件电路和/或软件的任何特定组合。在一个实施例中,术语“逻辑”可以表示用于实现本公开的全部或部分的软件或硬件的任何组合。
在此使用的术语“计算机可读介质”或“计算机可用介质”是指参与向处理器1207提供指令以供执行的任何介质。这种介质可以采用许多形式,包括但不限于非易失性介质和易失性介质。非易失性介质包括例如光盘或磁盘,例如磁盘驱动器1210。易失性介质包括动态存储器,例如系统存储器1208。“计算机可读介质”可以是非瞬态计算机可读存储介质。
计算机可读介质的常见形式包括例如软磁盘、软盘、硬盘、磁带、任何其他磁介质、CD-ROM、任何其他光学介质、穿孔卡、纸带、具有孔图案的任何其他物理介质、RAM、PROM、EPROM、FLASH-EPROM,任何其他存储器芯片或盒式磁带,或计算机可以读取的任何其他介质。
在一个实施例中,实践本公开的指令序列的执行由单个计算机系统1200来执行。根据其他实施例,通过通信链路1215(例如,LAN、PTSN、或无线网络)耦接的两个或多个计算机系统1200可以相互协调地执行实践本公开所需的指令序列。
计算机系统1200可以通过通信链路1215和通信接口1214发送和接收包括例如应用程序代码的程序的消息、数据和指令。接收的程序代码可以由处理器1207按其被接收来执行,和/或存储在磁盘驱动器1210或其他非易失性存储器中以供稍后执行。计算机系统1200可以经由数据接口1233从通信地耦接到数据库服务器1231的数据库1232发送和接收数据。
虽然这里描述的系统300具有前向FOV相机350,但是那些相机可以作为深度传感器或其部件发挥作用。这种深度传感器描述在美国临时专利申请序列号62/301,847中,其内容之前已通过引用并入本文。
在此描述了本公开的各种实施例。以非限制性意义参考这些示例。提供示例是以说明本公开的更广泛适用的方面。在不脱离本公开的真实精神和范围的情况下,可以对所描述的公开进行各种改变并且可以替换等同物。此外,可以进行很多修改以适应针对本公开的目的、精神或范围的特定情况、材料、物质的组合物、过程、的过程动作或步骤。进一步地,如本领域的技术人员所知道的,在不脱离本公开的范围和精神的情况下,在此描述和示出的每个单独的变形具有独立的组件和特征,其可容易地与其他若干实施例的任意一个的特征分离或组合。所有这些修改意在处于与本公开相关的权利要求的范围之内。
本公开包括可使用主体装置执行的方法。该方法可包括提供这种合适的装置的动作。这种提供可由终端用户执行。换言之,“提供”动作仅需要终端用户的获得、访问、处理、定位、设置、激活、通电或其它动作,以在该方法中提供必要的装置。在此所述的方法可按逻辑上可能的所述事件的任何顺序以及以所述的事件顺序来执行。
以上已经描述了本公开的方面以及关于材料选择和制造的细节。对于本公开的其它细节,可结合以上参考的专利和出版物以及本领域的技术人员通常知道或理解的来理解。这在关于如通常或逻辑上采用的附加动作的方面,关于本发明的基于方法的方面同样成立。
此外,虽然已经参考可选地包括各种特征的若干示例描述了本公开,但是本公开并不限于被描述或表示为针对本公开的每个变形所预期的。在不脱离本公开的实际精神和范围的情况下,可以对所描述的本公开进行各种变化,并且可用等同(无论是本文所陈述的还是为了简洁的目的而未被包括的)来代替。此外,如果提供值的范围,则应当理解,在该范围的上限和下限之间的每个中间值和或者在该说明的范围中的任何其它中间值被包括在本公开之内。
此外,可预期的是,所描述的公开变形的任何可选特征可独立或结合在此描述的任何一个或多个特征来陈述和要求权利。引用单数项包括可能存在相同项的复数。更具体地,如在此和在相关的权利要求中所使用的,只要不具体说明,单数形式“一”、“所述”和“该”包括复数对象。换言之,在以上描述以及与本公开相关的权利要求中,冠词的使用允许“至少一个”目标项。还需要注意的是,可起草这种权利要求以排除任何可选元件。因此,该声明意在结合权利要求要素的表述而用作使用如“单独”、“仅”等这种排他性术语的先行基础,或者使用“否定”限制。
在不使用这种排他性术语的情况下,在与本公开相关的权利要求中的术语“包括”应允许包括任何其它要素,而不考虑给定数量的要素是否列举在这种权利要求中,或者添加特征可被视为变换在权利要求中所述的要素的性质。除了在此特别定义之外,在此所使用的全部科技术语应在维持权利要求有效的同时被提供尽可能款的通常理解的含义。
本公开并不限于所提供的示例和/或本说明书,而仅由与本公开相关的权利要求语言的范围限定。
在前面的说明书中,已经参照其具体实施例描述了本公开。然而,显而易见的是,在不脱离本公开的更广泛的精神和范围的情况下,可以对其进行各种修改和改变。例如,参照过程动作的特定顺序来描述上述过程。然而,在不影响本发明的范围或操作的情况下可以改变许多所描述的过程动作的顺序。因此,说明书和附图应被视为说明性的而非限制性的。

Claims (35)

1.一种生成物理环境的表面模型的方法,包括:
获得所述物理环境的图像;
至少根据所述图像提取边界多边形;
生成用于所述边界多边形的凸包;以及
根据所述凸包生成最小面积定向的边界多边形。
2.根据权利要求1所述的方法,还包括至少根据所述图像生成平面多边形网格,
其中,至少根据所述图像提取所述边界多边形包括根据所述平面多边形网格提取所述边界多边形。
3.根据权利要求2所述的方法,其中,获得所述物理环境的所述图像包括:
使用成像设备获得与所述物理环境对应的3-D点云;以及
获得所述成像设备的姿势信息,
所述方法还包括使用所述姿势信息计算所述3-D点云的截断符号距离函数,
其中,生成所述平面多边形网格包括细分所述截断符号距离函数。
4.根据权利要求3所述的方法,还包括将两个较小的平面多边形网格组合成一个较大的平面多边形网格。
5.根据权利要求2所述的方法,还包括获得重力矢量,
其中,所生成的平面多边形网格是与所述重力矢量基本平行和正交中的至少一个。
6.根据权利要求1所述的方法,其中,生成所述凸包包括使用格雷厄姆扫描算法。
7.根据权利要求1所述的方法,其中,生成所述最小面积定向的边界多边形包括使用旋转卡尺算法。
8.根据权利要求2所述的方法,其中,所述最小面积定向的边界多边形在所述平面多边形网格的边界多边形之外。
9.根据权利要求2所述的方法,还包括在所述平面多边形网格的边界多边形之内生成最大面积定向的内部多边形。
10.根据权利要求9所述的方法,其中,生成所述最大面积定向的内部多边形包括在由所述边界多边形限定的搜索区域中执行搜索。
11.根据权利要求10所述的方法,其中,生成所述最大面积定向的内部多边形包括在所述搜索区域中形成栅格。
12.根据权利要求11所述的方法,还包括基于所述搜索区域的大小来调整所述栅格的分辨率。
13.根据权利要求9所述的方法,还包括接收对于所述平面多边形网格的所述边界多边形之内的点的选择,
其中,生成最大面积定向的内部多边形包括在使用所选择的点限定的搜索区域中执行搜索。
14.根据权利要求13所述的方法,其中,生成最大面积定向的内部多边形包括在所述搜索区域中形成栅格。
15.根据权利要求13所述的方法,还包括基于所述搜索区域的大小来调整所述栅格的分辨率。
16.根据权利要求9所述的方法,其中,所述最小面积定向的边界多边形和所述最大面积定向的内部多边形具有相同的形状。
17.根据权利要求2所述的方法,其中,基于步进立方体算法生成所述平面多边形网格。
18.根据权利要求1所述的方法,其中,所述最小面积定向的边界多边形是矩形、三角形和圆形中的至少一种。
19.根据权利要求1所述的方法,还包括确定所述最小面积定向的边界多边形与所述边界多边形之间的配合。
20.根据权利要求19所述的方法,其中,确定配合包括计算所述最小面积定向的边界多边形的第一面积与所述边界多边形的第二面积之间的差。
21.根据权利要求1所述的方法,还包括存储表示所述最小面积定向的边界多边形的数据,
其中,所述最小面积定向的边界多边形是矩形。
22.根据权利要求21所述的方法,其中,所述数据包括与所述矩形对应的四组坐标。
23.根据权利要求22所述的方法,其中,所述数据还包括所述矩形的长度、所述矩形的宽度和所述矩形的中心。
24.根据权利要求22所述的方法,其中,所述四组坐标中的每一组是一对坐标。
25.根据权利要求2所述的方法,其中,生成所述平面多边形网格包括捕获所述物理环境的一系列图像的静态部分。
26.一种用于生成物理环境的表面模型的系统,包括:
成像设备;以及
图像处理器,其可操作地耦接到相机,所述图像处理器被配置为:
至少部分地从所述成像设备获得所述物理环境的图像;
至少根据所述图像提取边界多边形;
生成所述边界多边形的凸包;以及
根据所述凸包生成最小面积定向的边界多边形。
27.根据权利要求26所述的系统,还包括姿势传感器,其可操作地耦接到所述成像设备和所述图像处理器,
其中,所述图像处理器还被配置为:
使用姿势信息计算3-D点云的截断符号距离函数;以及
通过细分所述截断符号距离函数,至少根据所述图像生成平面多边形网格,
其中,至少根据所述图像提取所述边界多边形包括
提取所述平面多边形网格的所述边界多边形,
其中,获得所述物理环境的所述图像包括:
使用所述成像设备获得与所述物理环境对应的3-D点云;以及
使用所述姿势传感器获得用于所述成像设备的姿势信息。
28.根据权利要求26所述的系统,其中,所述图像处理器还被配置为:
至少根据所述图像生成平面多边形网格;以及
在所述平面多边形网格的所述边界多边形之内生成最大面积定向的内部多边形。
29.根据权利要求28所述的系统,其中,生成最大面积定向的内部多边形包括:
在由所述边界多边形限定的搜索区域中执行搜索;
在所述搜索区域中形成栅格;以及
基于所述搜索区域的大小调整所述栅格的分辨率。
30.根据权利要求28所述的系统,其中,所述图像处理器还被配置为:
接收对于所述平面多边形网格的所述边界多边形之内的点的选择,
其中,生成所述最大面积定向的内部多边形包括:
在使用所选择的点限定的搜索区域中执行搜索;以及
在所述搜索区域中形成栅格,并且
其中,所述图像处理器还被配置为基于所述搜索区域的大小来调整所述栅格的分辨率。
31.根据权利要求26所述的系统,其中,所述最小面积定向的边界多边形是矩形、三角形和圆形中的至少一种。
32.根据权利要求26所述的系统,其中,所述图像处理器还被配置为存储表示所述最小面积定向的边界多边形的数据,
其中,所述最小面积定向的边界多边形是矩形,并且
其中,所述数据包括与所述矩形对应的四组坐标。
33.根据权利要求32所述的系统,其中,所述数据还包括所述矩形的长度、所述矩形的宽度和所述矩形的中心。
34.根据权利要求32所述的系统,其中,所述四组坐标中的每一组是一对坐标。
35.根据权利要求26所述的系统,其中,所述图像处理器还被配置为通过至少捕获所述物理环境的一系列图像的静态部分,至少根据所述图像生成平面多边形网格。
CN201780061454.1A 2016-10-05 2017-10-05 表面建模系统和方法 Active CN109791442B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310251758.1A CN116310218B (zh) 2016-10-05 2017-10-05 表面建模系统和方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662404617P 2016-10-05 2016-10-05
US62/404,617 2016-10-05
PCT/US2017/055313 WO2018067801A1 (en) 2016-10-05 2017-10-05 Surface modeling systems and methods

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202310251758.1A Division CN116310218B (zh) 2016-10-05 2017-10-05 表面建模系统和方法

Publications (2)

Publication Number Publication Date
CN109791442A true CN109791442A (zh) 2019-05-21
CN109791442B CN109791442B (zh) 2023-04-18

Family

ID=61757006

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201780061454.1A Active CN109791442B (zh) 2016-10-05 2017-10-05 表面建模系统和方法
CN202310251758.1A Active CN116310218B (zh) 2016-10-05 2017-10-05 表面建模系统和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202310251758.1A Active CN116310218B (zh) 2016-10-05 2017-10-05 表面建模系统和方法

Country Status (9)

Country Link
US (3) US10585278B2 (zh)
EP (1) EP3523783A4 (zh)
JP (2) JP6911107B2 (zh)
KR (2) KR102317776B1 (zh)
CN (2) CN109791442B (zh)
AU (2) AU2017340609B2 (zh)
CA (1) CA3037276A1 (zh)
IL (2) IL265739B (zh)
WO (1) WO2018067801A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113094457A (zh) * 2021-04-15 2021-07-09 成都纵横自动化技术股份有限公司 一种数字正射影像地图的增量式生成方法及相关组件

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170061700A1 (en) * 2015-02-13 2017-03-02 Julian Michael Urbach Intercommunication between a head mounted display and a real world object
EP3403133B1 (en) * 2016-01-12 2022-05-11 Magic Leap, Inc. Beam angle sensor in virtual/augmented reality system
CA3060209A1 (en) 2017-05-01 2018-11-08 Magic Leap, Inc. Matching content to a spatial 3d environment
CA3084149A1 (en) 2017-12-22 2019-06-27 Magic Leap, Inc. Methods and system for managing and displaying virtual content in a mixed reality system
EP4213104A1 (en) 2018-02-22 2023-07-19 Magic Leap, Inc. Browser for mixed reality systems
CN111801641A (zh) 2018-02-22 2020-10-20 奇跃公司 采用物理操纵的对象创建
EP3762901A4 (en) * 2018-03-08 2021-11-17 Simile Inc. METHODS AND SYSTEMS FOR THE PRODUCTION OF CONTENT IN ENVIRONMENTS WITH MULTIPLE REALITIES
GB2574795B (en) 2018-05-04 2022-10-05 Signaturize Holdings Ltd Generating virtual representations
WO2019211586A1 (en) * 2018-05-04 2019-11-07 Signaturize Holdings Ltd Generating virtual representations
US10853946B2 (en) * 2018-05-18 2020-12-01 Ebay Inc. Physical object boundary detection techniques and systems
JP7136931B2 (ja) 2018-06-05 2022-09-13 マジック リープ, インコーポレイテッド 空間3d環境へのコンテンツのマッチング
CN108744520B (zh) * 2018-06-05 2022-02-22 网易(杭州)网络有限公司 确定游戏模型摆放位置的方法、装置和电子设备
CN108919954B (zh) * 2018-06-29 2021-03-23 蓝色智库(北京)科技发展有限公司 一种动态变化场景虚实物体碰撞交互方法
CN112638251B (zh) * 2018-08-27 2023-12-05 季鹰 一种测量位置的方法
WO2020072472A1 (en) * 2018-10-01 2020-04-09 Google Llc Method and device for detecting a vertical planar surface
WO2020206313A1 (en) 2019-04-03 2020-10-08 Magic Leap, Inc. Managing and displaying webpages in a virtual three-dimensional space with a mixed reality system
US11030474B1 (en) * 2019-05-28 2021-06-08 Apple Inc. Planar region boundaries based on intersection
WO2021045536A1 (en) 2019-09-04 2021-03-11 Wilus Institute Of Standards And Technology Inc. Video encoding and decoding acceleration utilizing imu sensor data for cloud virtual reality
US20210373649A1 (en) * 2020-04-01 2021-12-02 Rajesh Dayal Moorjani Attaching Extended Reality (XR) Content To Physical Points Of Interest
KR102416216B1 (ko) * 2021-02-09 2022-07-05 주식회사 비젼그리드 영상인식을 이용한 3차원 실체 형상 데이터 생성 방법 및 장치
GB202108778D0 (en) * 2021-06-18 2021-08-04 Pointfuse Ltd Pointcloud processing, especially for use with building intelligence modelling (BIM)
US20230215108A1 (en) * 2021-12-31 2023-07-06 Samsung Electronics Co., Ltd. System and method for adaptive volume-based scene reconstruction for xr platform applications
WO2023167430A1 (ko) * 2022-03-04 2023-09-07 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
US11908080B2 (en) * 2022-04-04 2024-02-20 Tencent America LLC Generating surfaces with arbitrary topologies using signed distance fields
US12073530B1 (en) * 2022-09-23 2024-08-27 Apple Inc. 3D representation adjustments for communication sessions

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110286007A1 (en) * 2010-05-21 2011-11-24 John Gregory Pangrazio Dimensional Detection System and Associated Method
US20110320319A1 (en) * 2010-06-23 2011-12-29 Justin Streich Methods, Systems and Machines for Identifying Geospatial Compatibility Between Consumers and Providers of Goods or Services
US20140250393A1 (en) * 2013-03-04 2014-09-04 Scott Goodson Techniques For Asynchronous Rendering
CN105493155A (zh) * 2013-08-30 2016-04-13 高通股份有限公司 用于表示物理场景的方法和设备
US20160247017A1 (en) * 2010-06-08 2016-08-25 Raj Sareen Method and system for body scanning and display of biometric data
US20160284123A1 (en) * 2015-03-27 2016-09-29 Obvious Engineering Limited Automated three dimensional model generation

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7952583B2 (en) * 2000-06-19 2011-05-31 Mental Images Gmbh Quasi-monte carlo light transport simulation by efficient ray tracing
US7623734B2 (en) * 2004-09-30 2009-11-24 Microsoft Corporation Method and system for automatically inscribing noisy objects in scanned image data within a minimum area rectangle
RU2520353C9 (ru) * 2009-03-25 2015-01-27 Сони Компьютер Энтертэйнмент Инк. Устройство обработки информации и способ обработки информации
US8922558B2 (en) * 2009-09-25 2014-12-30 Landmark Graphics Corporation Drawing graphical objects in a 3D subsurface environment
US8983643B2 (en) * 2010-01-15 2015-03-17 Stratasys, Inc. Method for generating and building support structures with deposition-based digital manufacturing systems
US10628666B2 (en) 2010-06-08 2020-04-21 Styku, LLC Cloud server body scan data system
JP5647072B2 (ja) * 2011-02-03 2014-12-24 日本電信電話株式会社 被写体認識装置、被写体認識方法及び被写体認識プログラム
JP5337844B2 (ja) * 2011-06-30 2013-11-06 株式会社東芝 領域検出装置、領域検出方法及びプログラム
EP2761592B1 (en) * 2011-09-30 2018-01-10 GE Healthcare Limited Variable-depth stereotactic surface projections
US9235929B2 (en) * 2012-05-23 2016-01-12 Glasses.Com Inc. Systems and methods for efficiently processing virtual 3-D data
US8898102B2 (en) * 2012-05-25 2014-11-25 Pgs Geophysical As Adaptive computational grid for inverse problems
US9211092B2 (en) 2013-01-03 2015-12-15 Dexcom, Inc. End of life detection for analyte sensors
US9083960B2 (en) * 2013-01-30 2015-07-14 Qualcomm Incorporated Real-time 3D reconstruction with power efficient depth sensor usage
US9595125B2 (en) * 2013-08-30 2017-03-14 Qualcomm Incorporated Expanding a digital representation of a physical plane
US9514574B2 (en) 2013-08-30 2016-12-06 Qualcomm Incorporated System and method for determining the extent of a plane in an augmented reality environment
US10445400B2 (en) * 2013-10-28 2019-10-15 Brown University Non-convex hull surfaces
US11125912B2 (en) * 2013-11-25 2021-09-21 Schlumberger Technology Corporation Geologic feature splitting
CN107329259B (zh) 2013-11-27 2019-10-11 奇跃公司 虚拟和增强现实系统与方法
JP6212398B2 (ja) 2014-01-15 2017-10-11 大成建設株式会社 景観定量化装置
US20150242421A1 (en) * 2014-02-21 2015-08-27 Quixey, Inc. Location-Based Searching
US10203762B2 (en) 2014-03-11 2019-02-12 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US9417840B2 (en) 2014-09-16 2016-08-16 Salesforce.Com, Inc. In-memory buffer service
WO2016077798A1 (en) 2014-11-16 2016-05-19 Eonite Perception Inc. Systems and methods for augmented reality preparation, processing, and application
US20160140769A1 (en) * 2014-11-17 2016-05-19 Qualcomm Incorporated Edge-aware volumetric depth map fusion
US9893879B2 (en) * 2015-09-21 2018-02-13 Tektronix, Inc. Method for automatically finding the optimum sampling point in an eye diagram

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110286007A1 (en) * 2010-05-21 2011-11-24 John Gregory Pangrazio Dimensional Detection System and Associated Method
US20160247017A1 (en) * 2010-06-08 2016-08-25 Raj Sareen Method and system for body scanning and display of biometric data
US20110320319A1 (en) * 2010-06-23 2011-12-29 Justin Streich Methods, Systems and Machines for Identifying Geospatial Compatibility Between Consumers and Providers of Goods or Services
US20140250393A1 (en) * 2013-03-04 2014-09-04 Scott Goodson Techniques For Asynchronous Rendering
CN105493155A (zh) * 2013-08-30 2016-04-13 高通股份有限公司 用于表示物理场景的方法和设备
US20160284123A1 (en) * 2015-03-27 2016-09-29 Obvious Engineering Limited Automated three dimensional model generation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
VICTOR NG-THOW-HING等: "The Memory Game: Creating a human-robot interactive scenario for ASIMO", 《2008 IEEE/RSJ INTERNATIONAL CONFERENCE ON INTELLIGENT ROBOTS AND SYSTEMS》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113094457A (zh) * 2021-04-15 2021-07-09 成都纵横自动化技术股份有限公司 一种数字正射影像地图的增量式生成方法及相关组件
CN113094457B (zh) * 2021-04-15 2023-11-03 成都纵横自动化技术股份有限公司 一种数字正射影像地图的增量式生成方法及相关组件

Also Published As

Publication number Publication date
US20210311304A1 (en) 2021-10-07
AU2017340609A1 (en) 2019-04-04
AU2022201769A1 (en) 2022-04-07
JP7209777B2 (ja) 2023-01-20
IL265739B (en) 2022-08-01
US10585278B2 (en) 2020-03-10
IL265739A (en) 2019-06-30
KR102317776B1 (ko) 2021-10-25
IL294635B1 (en) 2023-10-01
CN116310218B (zh) 2024-09-03
JP2019534510A (ja) 2019-11-28
CA3037276A1 (en) 2018-04-12
EP3523783A4 (en) 2019-10-16
CN109791442B (zh) 2023-04-18
US11073690B2 (en) 2021-07-27
KR102246841B1 (ko) 2021-05-03
KR20210047977A (ko) 2021-04-30
WO2018067801A1 (en) 2018-04-12
JP6911107B2 (ja) 2021-07-28
US20200166745A1 (en) 2020-05-28
IL294635B2 (en) 2024-02-01
KR20190058624A (ko) 2019-05-29
US20180095276A1 (en) 2018-04-05
IL294635A (en) 2022-09-01
CN116310218A (zh) 2023-06-23
AU2017340609B2 (en) 2021-12-16
US11378798B2 (en) 2022-07-05
EP3523783A1 (en) 2019-08-14
JP2021166078A (ja) 2021-10-14

Similar Documents

Publication Publication Date Title
CN109791442A (zh) 表面建模系统和方法
US11010965B2 (en) Virtual object placement for augmented reality
EP2887322B1 (en) Mixed reality holographic object development
CN106575357A (zh) 瞳孔检测
US11092812B2 (en) Augmented reality viewer with automated surface selection placement and content orientation placement
CN109710054B (zh) 用于头戴式显示设备的虚拟物体呈现方法和装置
EP4279157A1 (en) Space and content matching for augmented and mixed reality
US11662808B2 (en) Virtual, augmented, and mixed reality systems and methods
Hamadouche Augmented reality X-ray vision on optical see-through head mounted displays
JP2024506299A (ja) 占有率グリッドを使用した場面理解
CN116915963A (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