CN105404393A - 低延迟虚拟现实显示系统 - Google Patents
低延迟虚拟现实显示系统 Download PDFInfo
- Publication number
- CN105404393A CN105404393A CN201510751514.5A CN201510751514A CN105404393A CN 105404393 A CN105404393 A CN 105404393A CN 201510751514 A CN201510751514 A CN 201510751514A CN 105404393 A CN105404393 A CN 105404393A
- Authority
- CN
- China
- Prior art keywords
- pixel
- posture
- projection
- user
- display
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000013519 translation Methods 0.000 claims abstract description 86
- 238000009877 rendering Methods 0.000 claims abstract description 50
- 230000008859 change Effects 0.000 claims description 98
- 230000001144 postural effect Effects 0.000 claims description 62
- 238000004458 analytical method Methods 0.000 claims description 22
- 238000013507 mapping Methods 0.000 claims description 11
- 230000000007 visual effect Effects 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000012986 modification Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 239000000945 filler Substances 0.000 claims 2
- 238000003702 image correction Methods 0.000 claims 1
- 238000000034 method Methods 0.000 abstract description 40
- 230000033001 locomotion Effects 0.000 abstract description 25
- 230000004044 response Effects 0.000 abstract description 10
- 230000001133 acceleration Effects 0.000 abstract description 3
- 230000036544 posture Effects 0.000 description 141
- 230000008569 process Effects 0.000 description 30
- 238000005516 engineering process Methods 0.000 description 13
- 238000006243 chemical reaction Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 8
- 230000009182 swimming Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000006073 displacement reaction Methods 0.000 description 4
- 210000003128 head Anatomy 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000009825 accumulation Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000009795 derivation Methods 0.000 description 3
- 239000011521 glass Substances 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000008034 disappearance Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
- G02B2027/0178—Eyeglass type
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0179—Display position adjusting means not related to the information to be displayed
- G02B2027/0187—Display 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
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/012—Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2215/00—Indexing scheme for image rendering
- G06T2215/16—Using real world measurements to influence rendering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Optics & Photonics (AREA)
- Processing Or Creating Images (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
一种低延迟虚拟现实显示系统,该系统响应于用户的运动将快速更新提供至虚拟现实显示器。使用图像扭曲近似修改通过渲染3D虚拟世界产生的显示图像,这允许更新被快速地计算和显示。使用各种重新渲染近似执行图像扭曲,所述重新渲染近似使用简化的3D模型和简化的3D至2D投影。这种重新渲染近似的一个示例是根据像素平移向量移位显示器中的所有像素,基于用户的运动计算所述像素平移向量;像素平移可快速完成,可能使用硬件加速,并且特别是对于用户位置和朝向的小幅变化来说可能是足够真实的。其他特征包括填充由图像扭曲产生的显示器中的空洞的技术、同步完整渲染与近似重新渲染以及使用对用户未来运动的预测以减少明显的延迟。
Description
技术领域
本发明的一个或多个实施例涉及虚拟现实系统领域。更具体地,但并非限制,本发明的一个或多个实施例实现了一种低延迟虚拟现实显示系统,它追踪用户的运动并基于那些运动快速地渲染一个虚拟现实显示。
背景技术
虚拟现实系统是本领域所公知的。这种系统针对一用户产生响应于该用户运动的虚拟世界。示例包括用户穿戴的各种类型的虚拟现实耳机和护目镜,以及具有多个显示器的专用房间。虚拟现实系统典型地包括追踪用户头部、眼镜或其他身体部位并根据用户的运动修改虚拟世界的传感器。虚拟世界由三维模型组成,它通过计算机生成或从真实世界场景中捕获。基于用户的位置和朝向生成三维模型的图像。这些图像的生成需要将三维模型渲染在一个或多个二维显示器上。渲染技术是本领域所公知的并通常例如用在3D图形系统或基于计算机的游戏,以及虚拟现实系统中。
现有虚拟现实系统的主要挑战在于将真实图像与低延迟渲染合并在一起,这样用户的虚拟现实体验匹配真实环境中观测到的运动的迅速反馈。现有系统通常具有长延迟以测量用户位置和朝向的改变,并基于这些改变重新渲染虚拟世界。3D渲染是复杂和处理器密集型操作,它可能潜在地耗费数百毫秒。结果是用户察觉到他们的运动和在他们的显示器上渲染已更新虚拟环境之间的显著延迟。三种技术趋势正加剧这一挑战:(1)随着捕获和生成的3D数据的增多,3D模型的复杂度在提高。(2)虚拟现实显示器的解析度在增加,需要更多计算功率以渲染图像。(3)用户愈发依赖具有有限处理器能力的移动设备。作为这些趋势的结果,渲染虚拟现实显示中的高延迟已然成为限制采用和应用虚拟现实技术的主要因素。考虑到这些技术限制,没有已知的系统提供足够低延迟的渲染和显示以产生高响应虚拟现实环境。
至少针对上文所述的限制,存在对于一种低延迟虚拟现实显示系统的需求。
发明内容
本说明书中描述的一个或多个实施例涉及一种低延迟虚拟现实系统。该系统的实施例使用有效近似以响应于用户位置或朝向的改变而快速重新渲染虚拟现实显示。此有效和快速重新渲染减少了延迟并提升了用户的虚拟现实体验。
该系统的一个或多个实施例包括用户可视的一个或多个显示器。例如,这些显示器可嵌入在虚拟现实护目镜或眼镜中。一个或多个实施例还包括测量用户的位置、朝向或两者这些方面的一个或多个传感器。在本说明书中,用户的朝向和位置这些方面称为用户的“姿势”。姿势传感器例如可测量用户的头部、或用户的眼睛,或更一般的用户身体的任意一部分或多部分的运动。本系统的实施例包括姿势分析器,它接收传感器数据并根据该数据确定用户的姿势。该姿势信息被传递至场景渲染器,它产生由用户观看的3D虚拟现实显示。基于用户的当前姿势,此显示示出了用户可视的3D场景模型的一部分。3D场景模型是用户通过改变姿势加以操纵的虚拟世界的模型。
场景渲染器根据3D场景模型生成一个或多个2D投影。在一个或多个实施例中,可使用公知的3D图形技术生成这些投影,例如使用虚拟相机和至该虚拟相机可视面上的透视投影变换。然后,将2D投影发送至显示器。
此外,本系统的一个或多个实施例包括图像扭曲器。该图像扭曲器是通过有效重新渲染场景提供低延迟虚拟现实显示的系统组件。该图像扭曲器例如可监视用户的姿势变化并基于这些姿势变化重新渲染显示的图像。由图像扭曲器执行的重新渲染可为重新渲染的近似,而不是根据原始3D场景模型的完整透视投影。例如,一些实施例通过以相对简单的方式扭曲显示图像执行重新渲染近似以部分反映用户的姿势变化。这些重新渲染近似可提供较低延迟的显示更新,虽然在一些实施例中相对于完整渲染过程来说它们可能并不完全真实。
该系统的一个或多个实施例通过计算像素平移向量执行近似重新渲染,然后根据此像素平移向量平移显示器的像素。有效地,在这些实施例中,该图像扭曲器可在计算出的方向上以计算出的量移动像素以接近显示器上用户的运动效果。此近似并不是完整3D渲染,但在某些实施例中它可非常快速地执行,极大地减少了用户运动和显示器更新之间的延迟。
本系统的一个或多个实施例可使用硬件加速以修改显示器的像素从而执行近似重新渲染。例如,显示硬件或图形处理单元硬件可支持指令以基于像素平移向量直接移动像素。在一个或多个实施例中,在硬件中实现像素平移或其他近似重新渲染变换可进一步减少延迟。
在一个或多个实施例中,由图像扭曲器执行的重新渲染近似可仅当用户的姿势变化低于一特定阈值时执行。对于姿势的大幅改变,图像扭曲器使用的近似可能不再适合,即使具有高延迟,但可能更优选执行完整3D渲染。对于姿势的小幅改变,重新渲染近似可能是足够真实的。
在一个或多个实施例中,当执行完整3D渲染过程时可接收用户的多种姿势变化。在3D渲染过程已经完成的时候,用于渲染的初始用户姿势可能已过期,因为那时更加新的姿势变得可用。一个或多个实施例可在渲染的图像上执行后渲染校正,使用图像扭曲器以在显示它们之前应用更新至生成的图像。这些后渲染校正可提高显示的图像和用户的当前姿势之间的同步性。
该系统的一个或多个实施例可使用姿势预测以当渲染和显示过程完成时计算或估算用户未来某时刻的姿势。姿势预测可减少用户姿势变化和相应显示器更新之间的明显延迟。一个或多个实施例可将姿势预测用于完整渲染、用于图像扭曲、或用于两者。实施例可使用任何令人满意的技术以进行姿势预测,包括诸如姿势变化的简单推断。通过姿势预测,预测的姿势被提供给渲染或近似重新渲染过程,而不是测量的姿势。渲染过程根据预测的姿势值计算虚拟相机姿势,并基于这些虚拟相机后渲染场景。图像扭曲器使用预测的未来姿势和之前通过场景的完整渲染计算的虚拟相机姿势之间的差计算姿势变化。
一些实施例面临的一个挑战是图像扭曲过程可在显示器图像中留下由缺失的像素形成的空洞。例如,如果所有像素都向右移,那么显示器的左边缘将具有一个不包含像素数据的空洞。实施例可采用多种手段来处理这些空洞。在一个或多个实施例中,3D渲染器可渲染大于显示区域的2D投影。在某些实施例中位于显示区域外的像素可缓存在离屏缓冲区中,并当执行图像扭曲时加以检索以填充空洞。
一个或多个实施例采用的另一填充空洞的手段是基于附近像素的像素值为空洞估算像素值。例如,在一个或多个实施例中,来自区域边界的像素值可增殖到空洞中以填充它们。在某些情况下边界像素至空洞的简单增殖可导致视觉伪影。在一个或多个实施例中,模糊变换可应用至图像中或附近的像素以减轻这些伪影。
一个或多个实施例可采用多种用于图像扭曲的重新渲染近似。一些实施例使用的技术是根据从渲染的场景接收的2D投影生成简化的3D模型,并将这些简化的3D模型重新投射至对应于用户姿势变化的更新的可视面上。例如,一个或多个实施例可通过将来自渲染的2D投影映射至简化3D模型中的另一平面创建简化的3D模型,其中此平面与用户的间距反映了完整3D场景模型中的物体的平均或典型深度。这一平均平面的深度可为定值,或它可由具有每个2D投影的场景渲染器提供。一个或多个实施例可使用其他简化的3D模型,举例来说,诸如球形或圆柱形表面。
对于姿势的小幅变化,基于来自简化3D平面模型的重新投影的重新渲染近似可近似等价于使用像素平移向量以响应于姿势变化平移显示器图像中的像素。例如,一个或多个实施例可针对用户绕轴转动小角度Δθ将像素平移向量计算为然后它被按比例缩放以反映显示器的像素大小。此公式反映了用户视野的小角度转动近似地导致响应于该转动的像素位移,位移量与转动角度成比例。用户姿势的变化还涉及平移(用户的线性运动)。对于平移来说,像素的位移量同样是物体与用户间距的函数:物体离用户越近,响应于用户平移的像素位移越多。在一个或多个实施例中,重新渲染近似可使用2D投影中用户和物体间距的平均深度估计zx通过像素平移向量进行估算。这些实施例可针对用户平移小向量Δr将像素平移向量计算为(-Δrx/zx,-Δry/zx),然后它被按比例缩放以反映显示器的像素大小。此公式反映了远处的物体要比近处的物体移动的少一些。它也反映了像素移动的方向与用户移动的方向相反。一个或多个实施例可将像素平移矩阵用于重新渲染近似,它将用户转动和用户平移的上述效果进行合并,举例来说,诸如
概括来说,基于用户姿势的改变,通过使用用于有效和近似重新渲染图像的技术,本发明的实施例实现了一种低延迟虚拟现实显示。这种技术包括,但不限于,通过根据用户运动计算的像素平移向量平移像素。一个或多个实施例可提供其他特征,诸如填充由图像扭曲产生的空洞,并在显示渲染的图像前应用校正以将它们与用户的当前姿势进行同步。
附图说明
通过连同下述附图一起提出的其下文更具体的描述,本发明的上述和其他方面、特征以及优点将更为明显。
图1图示了低延迟虚拟现实显示系统的至少一个实施例的关键组件,为了说明它配置有显示器、传感器以及嵌入在虚拟现实护目镜中的一些处理模块,以及由无线连接的移动设备执行的渲染。
图2示出了图1所示实施例的高等级架构图。
图3示出了图2所示实施例的主要渲染活动的泳道图。
图4图示了使用像素平移实施低延迟重新渲染的系统的实施例。
图4A图示了使用硬件加速重新渲染的系统的实施例,该重新渲染使用用于读取帧缓冲器存储器的偏移寄存器。
图5图示了如果用户姿势的变化低于一阈值则执行低延迟重新渲染的系统的实施例。
图6示出了图5所示实施例的主要渲染活动的泳道图。
图7图示了针对用户姿势的最近变化使用低延迟校正执行后渲染修改至已渲染场景的系统的实施例。
图8示出了图7所示实施例的主要渲染活动的泳道图。
图8A示出了使用姿势预测以降低姿势变化和显示器更新之间的显著延迟的系统的实施例的泳道图。
图9图示了将大于显示器的场景渲染在离屏缓冲器中以填充由低延迟重新渲染变换产生的空洞的系统的实施例。
图10图示了通过从图像边界延伸像素填充由低延迟重新渲染变换产生的空洞的系统的实施例。
图11图示了通过模糊像素边界附近的像素填充由低延迟重新渲染变换产生的空洞的系统的实施例。
图12图示了通过将已渲染图像投射在一平面上,然后在对应于用户的修改姿势的修改的图像平面上重新渲染生成低延迟重新渲染变换的系统的实施例。
图13示出了根据用户朝向的小角度转动生成像素平移向量的近似重新渲染计算的2D模型。
图14示出了根据用户位置平移生成像素平移向量的近似重新渲染计算的2D模型。
具体实施方式
现在将描述一种低延迟虚拟现实显示系统。在下文的示例性描述中,提出了大量具体细节以便提供对本发明实施例更为透彻的理解。然而,对于本领域技术人员来说显而易见的是可在不包括本文所述具体细节的所有方面的情况下实施本发明。在其他情况下,没有详细描述本领域技术人员公知的具体特征、数量或测量以便不模糊本发明。读者应当注意,虽然本文提出了本发明的示例,然而权利要求以及任意等同物的全部范围定义了本发明的界限。
图1示出了将本系统的元件嵌入虚拟现实护目镜的本发明一个实施例的高等级示意图。其他实施例可将该系统的元件嵌入可由一个或多个用户穿戴或观看的任意其他设备。举例来说,不作为限制,一个或多个实施例可将本系统的元件嵌入护目镜、眼镜、太阳镜、单片眼镜、头盔、面罩、双目镜、隐形眼镜或移植眼中。一些实施例可不由用户穿戴,但可放在墙上、电视中、镜子中、天花板或地面上、飞行模拟器或其他模拟器内、挡风玻璃中、或期望虚拟现实体验的任意其他位置之中或之上。
在图1中,用户101穿戴包含所示实施例的多个元件的一头戴设备120。显示器110和111分别位于用户的左眼和右眼前方。这些显示器被示出偏离用户101以暴露在外;实际上很多实施例可将头戴设备直接放在用户的眼睛前方。虽然所述实施例具有两个显示器-每个眼睛一个-但实施例可使用任意数量的显示器,包括诸如仅仅单个显示器、或图1所示的两个显示器、或多于两个显示器。在图1中,显示器110和111上示出的图像不同;这在一个或多个实施例中是有用的,以提供立体3D显示。一个或多个实施例对于多个显示器可使用同一图像。
设备120包括一个传感器(或多个传感器121)。传感器121测量用户101或者其改变的朝向或位置的某些方面。在三维空间中某物体的位置和朝向在本领域中称为该物体的“姿势”。因此,传感器121是一种姿势传感器。一个或多个实施例可测量用户101任意身体部位的姿势的任意期望方面。例如,在一些实施例中,传感器121可测量用户头部的姿势。在一些实施例中,传感器121可测量用户眼睛的一个或多个的姿势。在一个或多个实施例中还可使用不同身体部位的姿势测量的组合。在一个或多个实施例中可使用的传感器示例包括,但不限于,加速度传感器、陀螺仪、GPS追踪器、超声波测距仪、压力传感器、视频相机、高度计、雷达、声呐、磁力仪、流量计、多普勒频移测量仪、或者倾斜传感器。本系统的实施例可使用仅仅单个传感器,或多个传感器。一些实施例可使用直接测量用户一身体部位的姿势的某些方面的一个或多个传感器;例如,磁力计可直接提供部分朝向信息。一些实施例可使用间接测量姿势的一个或多个传感器;例如,陀螺仪可测量角速度,它必须被集成以获得方向。图1的示意图示出了位于用户101头部背面附近的传感器121;此位置是任意的并且在本发明的不同实施例中可发生改变。例如,使用视频相机眼睛追踪器以测量用户眼睛朝向的实施例可安装在用户眼睛附近。一个或多个实施例可使用位于用户身体不同位置的多个传感器。一个或多个实施例可使用完全不安装在用户身体上的传感器,但测量用户或用户身体部位的一个或者多个的姿势的一些方面。例如,一个或多个实施例可使用位于用户附近的视频相机,并可分析来自这些相机的图像以确定用户的姿势。
在图1中,设备120还包括姿势分析器122。此元件接收来自一个或多个传感器121的传感器数据,并使用此数据计算用户101的一个或多个身体部位的姿势。由姿势分析器122作出的该计算一般将取决于一个或多个传感器121的类型。例如,一个或多个实施例可使用用于传感器121的惯性传感器,在这种情况下姿势分析器122可执行惯性追踪算法以估算用户的位置和朝向。这种惯性追踪算法是本领域所公知的。实施例可使用任何方法将原始传感器数据转换为姿势信息。一个或多个实施例可使用多于一个姿势分析器;例如,具有眼睛追踪传感器的一个实施例可针对每个眼睛使用一个单独的姿势分析器。虽然图1图示了安装在附连至用户的设备120上的姿势分析器122的实施例,然而实施例可使用并不附连至用户的姿势分析器,或可使用位于用户安装设备上的姿势分析器和与用户远离的姿势分析器的组合。
一般来说,虚拟现实设备基于用户的姿势生成虚拟现实显示图像。例如,当用户移动或转动时,显示不同图像以模拟观看某场景不同部分的真实经历。这一功能需要一个或多个场景的3D模型,以及基于用户的后渲染场景视图的渲染系统。在图1所示的实施例中,3D场景模型141和场景渲染器142位于移动设备140中。此移动设备140与头戴设备120通过无线网络130进行通信。头戴设备和远程设备之间的这一功能分离仅为说明;实施例可使用任何期望的架构以将该系统的组件组织在设备中。例如,在一个或多个实施例中,该系统的所有元件可包含在一个设备中,诸如用户穿戴的头戴设备120。在一个或多个实施例中,该系统的所有元件可远离用户:例如,用户的朝向可通过房间中的视频相机检测,姿势分析器和场景渲染器可执行于房间中的计算机上,渲染的图像可显示在安装在房间墙上的监视器上。在一个或多个实施例中,该系统可为分布式系统,其各元件分布于通过网络通信的多个节点;例如,3D场景模型可托管在远程服务器上,渲染可在位于用户本地但并不附连至用户的设备上完成,传感器和显示器可位于安装于用户的设备上。实施例可使用任何类型的系统各元件之间的网络通信,包括有线或无线网络,或者其组合。任何网络媒体和网络协议均可用于在系统的各元件间通信。
3D场景模型141包括可向用户显示的物体的3D表示;它是3D“虚拟世界”的模型。此场景模型可为静态的,或者它可随着时间而改变。动态3D场景模型也可响应于用户的动作或用户姿势的改变而改变。3D场景模型可包括计算机生成的元素、由相机或3D扫描仪捕获的真实场景数据、或者计算机生成以及真实数据的组合。实施例可使用任何期望类型的3D场景模型,并且该场景模型的任何期望的数据表示举例来说诸如,但不限于,VRML,X3D,OBJ,COLLADA,Blender,3DS或3D信息的任意其他专有或公开格式。
场景渲染器142根据场景模型141生成一个或多个渲染的2D图像。在本系统的一个或多个实施例中,该场景渲染器基于从姿势分析器122接收的姿势数据生成一个或多个“虚拟相机”。这些虚拟相机具有由3D场景模型定义的位于3D空间中的位置和朝向。在图1所示的实施例中,场景渲染器142生成两个虚拟相机150和151,它们中的每一个对应着两个显示器110和111的其中一个。实施例可使用任意数量的虚拟相机并以任意期望的方式将这些虚拟相机关联至显示器。渲染为虚拟相机的每一个生成一2D投影。用于从3D场景渲染2D投影的技术是本领域所公知的,并且这些技术实施于很多现成的软件库和图形处理单元中。实施例可使用用于3D渲染以生成2D投影的任意公知技术、软件包或设备。在图1所示的实施例中,虚拟相机150生成2D投影160,虚拟相机151生成2D投影161。2D投影160和161通过网络130被发送回设备120。这些投影可直接显示在显示器110和111上。
在图1示出的实施例中,设备120包括图像扭曲器123。该图像扭曲器123针对用户姿势的某些类型的变化提供投影160和161的低延迟“重新渲染”。特别地,图像扭曲器接收用于生成投影160和161的虚拟相机姿势150和151上的数据。它还从姿势分析器122接收用户姿势的更新。通过比较用户的新姿势与用于渲染2D投影的虚拟相机姿势,图像扭曲器计算姿势的变化。当用户姿势变化时,生成新2D投影的完整渲染路径会需要原始渲染路径的另一次迭代:姿势数据会发送至设备140并转换为虚拟相机姿势150和151;然后场景渲染器142会根据3D场景模型141生成新2D投影,并将这些新2D投影发送回设备120。这一完整渲染路径可能相对较慢,导致用户可观察到的延迟。图像扭曲器的功能是减少这一延迟,通过执行迅速“重新渲染近似”,它基于姿势的变化提供相对较快和有效的更新至图像110和111。此重新渲染近似并不是如会由场景渲染器142执行的完整渲染;作为替代,它使用近似以减少更新显示器所需的计算和通信,从而减少延迟。将在下文提供多种实施例如何可执行图像扭曲的详细说明。
图2示出了图1实施例的概念框图,图示了主要的数据路径。传感器(或多个传感器)121产生传感器数据221。此传感器数据可包括,诸如,角速度数据、加速度数据、速度数据或由上述任意类型的传感器或者可测量用户身体部位姿势的任意方面的任意传感器生成的其他任意数据。传感器数据221被发送至姿势分析器122,它根据传感器数据生成身体姿势222。身体姿势222可包括多个姿势,取决于实施例;例如,在使用眼睛追踪器的一个或多个实施例中,身体姿势222可具有用户每个眼睛的单独姿势。身体姿势222被发送至场景渲染器142,它采用3D场景模型141,并渲染诸如161的一个或多个2D投影。2D投影161被发送至显示器111。场景渲染器142还为虚拟相机或多个虚拟相机生成虚拟相机姿势242以生成2D投影。对于姿势的某些后续变化,新的身体姿势222和虚拟相机姿势242可被发送至图像扭曲器123。实施例可使用多种技术以确定何时、是否、以及如何使用通过图像扭曲器的重新渲染对比通过场景渲染器的完整渲染迭代。图像扭曲器123计算姿势250的变化。姿势250的变化和原始2D投影161被发送至重新渲染近似260,它执行图像扭曲器以将2D投影161转换为修改的2D投影261,然后它被发送至显示器111。在一些实施例中,重新渲染近似过程可在场景的另一完整渲染前重复多次。实施例可为重复的重新渲染近似应用多种技术。举例来说,在一些实施例中,重复的重新渲染可能是“迭代的”:当新身体姿势222可用时,对于扭曲的另一次迭代来说,在路径271上扭曲的投影261可被发送回渲染近似260。在重复重新渲染的这些迭代的实施例中,最后扭曲的图像的姿势也可在路径272上提供至姿势变化计算250从而姿势变化仅表示来自最后扭曲图像的变化。在其他实施例中,重复的重新渲染可由“累积”替代:原始2D投影111可被保存,并且重复的重新渲染近似可执行在原始投影上而不是最后的扭曲图像上。一些实施例可采用这些迭代和累积的重新渲染手段的组合。
图3示出了上述一些关键步骤的说明性“泳道”过程时间图。此图假设3D场景已经在先前渲染并且目前显示在显示器上。首先,姿势分析器在303计算姿势并将此姿势发送至场景渲染器。该场景渲染器开启一耗时的渲染过程301。如果该系统等待渲染过程301完成,在新显示302可用之前显示器不会被更新。为了提供响应于用户运动的较低延迟的显示,姿势分析器将姿势303还发送至图像扭曲器。图像扭曲器在304执行迅速重新渲染过程以及与姿势的变化修改当前的显示。此重新渲染过程很快完成以获得新显示305。此示例图示了图像扭曲器如何提供较低延迟的虚拟现实显示,通过执行一快速、近似的重新渲染以更新显示器而不是等待耗时的完整渲染过程。
在图3中,当渲染过程301正计算时此重新渲染过程重复第二次,然后当姿势计算306被发送至图像扭曲器以重新渲染时执行第三次,从而生成显示308。在完成渲染301后,新的2D投影对于后续重新渲染步骤是可用的。在此说明性实施例中,完整渲染301和近似重新渲染304是交错的。一些实施例可按需采用不同策略以混合完整渲染和近似重新渲染。当完整渲染正执行时三个近似重新渲染步骤发生的图3所示的时间仅为简单说明;实施例可基于延迟要求、处理器能力和所用重新渲染近似的类型而采用这些步骤的任何期望或需要的频率和时间。
该系统的实施例可采用多种近似重新渲染技术以达到期望的延迟。在一个或多个实施例中,近似重新渲染包含或包括像素平移,它通过适当的像素平移向量简单地将2D投影的所有像素进行移位。此手段的一个优点在于像素平移可非常快速地执行;例如在一些实施例中,它可简单地通过修改图形处理单元使用的显示存储器的偏移地址来实现。在一些实施例中,像素平移可直接由显示硬件提供。图4图示了将像素平移向量用于重新渲染近似的实施例。首先,用户101具有由视图向量401a指示的姿势。用户正观察3D场景模型141a,为了说明,它包括三个物体:球441a、角锥体441b和盒子441c。(为简便起见,图4中以二维的方式图示出了这些物体,但一般来说,3D场景模型可包括三维形状。)该物体位于与用户101距离不同的位置,其中441a最近而441c相离最远。渲染过程142a生成2D投影161。如161中所示,渲染过程示出了各物体的深度,其中球441a由于距离用户最近而显得最大。渲染过程反映物体的咬合关系;由于球441a在前方,它部分遮挡了物体441b和441c。
在这一初始渲染后,用户101向右移动,使用新的视图向量401b。使用姿势变化比较器250将用户的新姿势(它反映了新的视图向量)与原始姿势作比较。此姿势变化被发送至近似重新渲染器260,它基于用户的运动计算将该变化近似至2D投影的像素平移向量460。由于用户向右移动,像素平移向量是像素向左移位。应用像素平移向量460至原始2D投影161产生修改的图像261。该场景中的所有像素都向左平移同样的量。
图4也图示了如何区别重新渲染近似与基于新姿势的完整渲染。如果新姿势401b被发送至场景渲染过程142b,获得的2D投影是462。此新的2D投影是用户新视野的完整准确的表示。例如,在更新的2D投影462中,球441a比盒子441c左移更多,因为它更接近用户。由于渲染过程142b在渲染场景时将物体的深度考虑在内,这些相对移位被正确渲染。相反地,通过像素平移向量460的近似重新渲染260捕获场景的基本移动-用户右移因此像素左移-然而它是没有考虑3D场景模型的近似。近似重新渲染的优点在于它可非常快速地执行,特别是使用像素平移,从而产生完全响应于用户运动的低延迟显示。该系统的不同实施例可按照需求和期望混合完整渲染和近似重新渲染以基于应用在准确度和低延迟之间作出适当的折中。
本系统的一个或多个实施例可使用硬件加速以修改显示器的像素从而执行像素平移或其他图像扭曲操作。图4A图示了在监视器硬件中具有支持像素平移的硬件的实施例的示例。在一些实施例中,硬件支持也可提供在图形处理单元或其他系统组件中。在图4A中,监视器110包括驱动监视器输出的硬件4A01。此硬件具有用于执行像素平移460的直接支持。监视器硬件包括存储像素值的帧缓冲器4A02。为了在屏幕地址4A05显示像素值,例如对应于显示器110上的像素4A04,该硬件将偏移4A03添加至屏幕地址4A05以获得帧缓冲器地址4A06,它在此示例中指向帧缓冲器像素4A07。基于像素平移460设置偏移4A03。通过更新偏移4A03,像素平移的改变可被显示硬件非常快速地重新渲染。在一个或多个实施例中,显示硬件可提供对其他图像扭曲特征的支持,举例来说诸如使用内插像素值填充空洞、模糊边缘区域、除平移之外的转动、或任意其他期望的扭曲变换。代替显示硬件或除了显示硬件之外,一个或多个实施例可将硬件加速提供在其他系统组件中,举例来说,诸如图形处理单元或协处理器中。
在一个或多个实施例中,可仅当用户作出姿势的小幅变化时使用近似重新渲染。在一些情况下,对于小幅姿势变化来说,近似重新渲染的准确度非常好,但它对于姿势的大幅变化来说可能是较差的。因此,在一些实施例中,将近似重新渲染限制为姿势的小幅变化可能是合适的。图5图示了应用此策略的实施例。用于生成在先2D投影的虚拟相机姿势242与用户的当前姿势222作比较以生成姿势的变化250。这一姿势变化在501与一阈值作比较。如果该姿势变化小于一阈值,执行重新渲染近似260以低延迟地更新显示;否则执行完整渲染142以生成新的2D投影161。实施例可使用多种方法来比较姿势变化与阈值。例如,对于平移的姿势变化,用户移动的距离可为与阈值作比较的度量值。对于转动的姿势变化,转动的角度可为与阈值作比较的度量值。对于组合了平移和转动的姿势变化,平移距离和角度变化的加权和可与一阈值作比较,或者平移和角度变化每个都可被应用至相应的阈值。这些示例为说明性的;实施例可使用任何期望的功能以比较姿势变化和任一阈值或多个阈值以决定何时执行近似重新渲染。
图6示出了将姿势变化与阈值作比较的图5所示实施例的说明性泳道时间图。姿势变化601由于低于阈值而被确定为小幅变化。因此,重新渲染近似304被执行以生成显示304。相似地,接下来两个姿势变化是小幅的,并执行重新渲染近似。然后,姿势变化602被确定为大幅的(大于该阈值);因此发起完整渲染操作301。在图示的实施例中,当渲染过程301正执行时在时间610期间该系统暂停显示器更新。因此,当渲染301完成时发生对显示302的下次更新。
在一些实施例中,完整渲染和近似重新渲染的简单并行交叉可产生看起来无序的显示器更新。返回图3,适于304的三个近似重新渲染步骤与完整渲染过程301并行执行。虽然这一并行获得了低延迟的显示器更新(例如在306和308),但它可产生消极影响用户体验的时间伪影。例如,用户观察显示器更新308,它基于用户的姿势306。然后用户立刻观察显示器更新302,它基于用户的姿势303。因此,在用户看来在302的显示可能相对于由重新渲染近似生成的最近显示308发生后退。对于非常小幅的姿势变化,这些伪影可能是注意不到的,但在一些实施例中,它们可能危害虚拟现实体验。
这些时间伪影的一种解决方案是防止完整渲染和近似重新渲染一起并行执行。在图6中图示了这一实施例。在这一实施例中,针对小幅姿势变化进行近似重新渲染,而针对大幅姿势变化进行完整渲染。此外,在完整渲染期间暂停近似重新渲染。因此,用户从不会注意到例如在图3中可能看到的时间问题。然而,图6中图示的实施例以延迟为代价达到这种一致性:例如,在渲染301期间显示器更新中的延迟610可能被用户感知为系统响应能力的缺失。
该系统的实施例可采用在不引入图3所示时间伪影类型的情况下始终实现低延迟的更复杂的交叉策略。这些实施例发生与近似重新渲染并行的完整渲染,此外它们还对完整渲染的图像执行后渲染校正以将它们与从完整渲染过程开始已经发生的更新同步。图7图示了应用后渲染校正的实施例,图8示出了关键处理步骤的相关泳道图。首先转向图8,在这一图示的实施例中,小幅姿势变化发生近似重新渲染,大幅姿势变化发生完整渲染。例如,姿势变化601小(与指定阈值相比);因此执行近似重新渲染304以生成显示器更新305,具有相对低的延迟。相似地,后续两个姿势变化小并发生近似重新渲染。姿势变化602大;因此该系统发起基于602的姿势的完整渲染301。由于渲染301耗时,在渲染301期间接收姿势变化801、802以及803。由于801、802和803每个都是小变化,执行重新渲染近似以产生每一个这些姿势变化的显示器更新。在渲染301完成后,替代直接显示301的输出,301的输出在它被显示之前由过程810校正。校正810使用在301发起后发生的累积的姿势变化801、802和803以将显示与最近姿势进行同步。
图7示出了实施图8所示过程的实施例的框图。在时间t1,姿势222a被发送至渲染器142。最终,渲染器产生2D投影161a;此投影基于虚拟相机姿势242a,它对应于位于时间t1的姿势222a。在时间t1和2D投影161a可用之间已经接收和处理了一个或多个姿势更新;最近的这一更新是在时间t2接收的身体姿势222b。因此,2D投影161a并不直接发送至显示器111。作为替代地,它被发送至图像扭曲器123,其将针对从渲染过程开始已经发生的姿势变化对它进行校正。图像扭曲器123计算对应于最近身体姿势222b的虚拟相机姿势242b,并将它与用于渲染投影161a的虚拟相机姿势242a作比较。在这些虚拟相机姿势中的差别被应用于后渲染校正701,它基于最近姿势变化修改2D投影161a以生成校正的2D投影161b,它被发送至显示器111。这一实施例的一个潜在的好处在于显示的图像将反映从传感器接收的最近姿势数据。另一潜在的好处在于近似重新渲染可与完整渲染并行交叉以在不引入时间伪影的情况下改善延迟。
近似重新渲染和后渲染校正可显著减少姿势变化和反映这些变化的显示器更新之间的延迟。然而,测量姿势、发生近似重新渲染以及将数据传送至显示器的过程继续引入一些延迟,即使当这些改进被适当的应用。图8A图示了这一潜在的问题。姿势测量适于时间8A01(t1)。在姿势测量完成后,重新渲染近似被计算并传送至显示器;显示器更新在时间8A02(t2)完成。虽然避免了长延迟的完整渲染,在姿势测量开始和显示器更新完成之间仍留有经过时间8A03(Δt)。因此,该显示器更新落后真实姿势此量Δt。
一个或多个实施例可采用姿势预测以进一步减少这一延迟。此手段的一个示例在图8A的下半部进行说明。姿势测量8A05发生并获得姿势Q1。代替于将此姿势Q1直接传递至图像扭曲器,该系统使用姿势测量和显示之间的已知延迟8A03(Δt)以预测将在显示器更新将完成的时间8A30出现的姿势。在这一说明性实施例中,使用在前姿势样本8A04作出姿势变化的推断,即测量的姿势Q0。假设姿势测量之间的采样间隔为Δs,则姿势预测8A06被计算为此计算将姿势认为是三维空间的刚体变换,使用用于表示这些变换的组合的乘法。预测的姿势8A20(Q2)被提供至用于重新渲染近似的图像扭曲器。因此,在时间8A30完成的该显示过程与用于生成显示的预测姿势的时间同步。
这一姿势预测计算8A06是说明性示例;一个或多个实施例可使用任意方法基于一个或多个先前姿势样本和任意其他可用信息预测未来的姿势。一个或多个实施例可使用预测任意身体部位的位置或朝向的未来轨迹的任意方法。一个或多个实施例的预测方法例如还可将用户运动的已知局限考虑在内。一个或多个实施例可使用监视用户随着时间的运动以基于先前运动预测最可能的后续运动的适合的姿势预测技术。
图8A图示了用于图像扭曲的姿势预测的用法。一个或多个实施例也可将相似姿势预测技术用于完整渲染。上文对用于图像扭曲的姿势预测的讨论也应用于完整渲染。一个或多个实施例可生成发送至完整渲染过程的预测姿势,其中该预测姿势将姿势测量时间与完整渲染后显示器更新的完成时间之间的期望的姿势变化考虑在内。一个或多个实施例可将姿势预测技术用于图像扭曲和完整渲染其中一个或两者。
在一些实施例中,由图像扭曲器应用的近似重新渲染变换可在转换的图像中产生具有缺失像素的“空洞”。例如,返回图4所示的实施例,图像扭曲器通过像素平移向量460将像素向左移位。这导致位于转换图像261的右边缘的“空洞”470,该空洞为缺失的像素。实施例可采用多种策略或策略的组合以处理这些空洞。由一个或多个实施例采用的一种非常简单的策略为使用相对“中性”的背景颜色填充空洞;在一些应用中,这可为小幅姿势变化提供足够的现实感。然而,在其他应用中,这一简单的手段可能不足。
一个或多个实施例可通过渲染大于显示器的2D投影填充空洞。在这些实施例在那个,更大2D投影的的扭曲可产生在显示区域内仍然完全适合的更新投影。图9退了采用这一策略的实施例。在这一实施例在那个,场景渲染器根据3D模型141产生扩展的2D投影901;此扩展的投影大于该显示区域。显示的图像161是渲染区域901的子集。为了说明,我们示出了对图像应用向右像素平移的图像扭曲器123的效果。并不应用空洞填充策略的一个实施例会产生转换图像111a,它在位于显示器左边缘的区域911中具有确实的像素。在图9的实施例中,扩展的渲染投影901的像素被存储在离屏缓冲区中。然后,图像扭曲器按需从此离屏缓冲区中取出像素以填充由扭曲产生的空洞。在图9中,来自山体902的像素从离屏缓冲区中取出以填充空洞911,导致改进的重新渲染投影,其中物体921填充该空洞。对于离屏像素缓冲区,实施例可使用任何期望尺寸和形状。
产生扩展渲染区域的策略的一个潜在缺陷在于它需要用于渲染更多像素的额外处理;因此,由于渲染延迟,它可能恶化延迟问题。一个或多个实施例可应用基于扭曲图像的一些特征为缺失像素代替产生像素值的空洞填充策略。例如,图10中图示的系统的实施例通过将像素从扭曲图像边缘向外增殖进入具有空洞的区域填充像素值。为了说明,图像扭曲器123将2D投影161的像素右移,产生了缺失了像素的空洞911。在这一实施例中,图像扭曲器找出对应于投影161的原始左边缘的边界1001;然后它使用增殖1002将像素值从此边界增殖到左侧。这一像素增殖产生填充的区域1010而不是空洞911。在此说明性实施例中,产生的图像111c没有显著的空洞;然而产生的山区形状并不精确地对应于原始3D场景模型141中的形状。然而,在一些应用中,从边界增殖像素的这一简单策略可提供充足的现实度。一个或多个实施例可应用其他策略以近似空洞中的像素值;例如,一个或多个实施例可定位在扭曲的图像中与缺失像素的位置相对接近的一系列像素,并将插入这些像素值以填充空洞。
由于从边界增殖像素的像素填充技术(或使用相似启发法)导致显示器边缘区域并不完全忠实于原始3D场景模型,一个或多个实施例可应用多种模糊手段以使得这些区域看起来不那么突兀。通过模糊填充的区域,近似像素值对于观看者来说不太显著。图11图示了利用这一模糊的实施例。如前所述,图像扭曲器将像素右移,产生扭曲图像111a中的空洞911。然后模糊转换1110被应用至空洞911中的像素。说明性的模糊转换1110简单地将以每个缺失像素的坐标为中心的正方形区域中心的像素值取平均。111c中产生的模糊区域1111不存在具有缺失像素值的明显空洞;此外该模糊不存在与图10所示平坦山顶的明显伪影,区域1010。对局部附近的值取平均的模糊变换1110是简单说明;实施例可将任何期望的变换应用至具有空洞的区域的像素,或者与这些区域接近的任何像素,以获得期望的模糊效果。例如,代替简单平均,一个或多个实施例可应用高斯模糊滤波器。
我们现在讨论用于图像扭曲变换的说明性手段。这些变换是重新渲染近似,而不是根据3D场景模型完整渲染。在一个或多个实施例中,通过首先根据2D投影创建一简化的3D模型,然后基于用户修改的姿势将此简化的3D模型重新投影至新的可视面上生成重新渲染近似。例如,简化的3D模型可通过将由渲染器生成的2D投影映射至3D空间中的一个或多个表面形成。图12说明了将此手段用于近似重新渲染的系统的实施例。3D场景模型141a包含三个物体:与用户101接近的球441a、与用户相距更远的角锥体441b,以及离用户最远的盒子441c。图12示出了3D场景模型在y-z平面上的二维投影;这里z轴指向用户且用户位于z=0处(在3D图形应用中通常使用的约定),y轴向上指,x轴指向用户的右方。球与用户的距离为zs;角锥体与用户的距离为zp;盒子与用户的距离为zb。(这些z值是负值,与z轴的朝向一致。)场景渲染器142a产生3D模型的2D投影161。用户101然后改变姿势,图像扭曲器123字形重新渲染近似以生成修改的图像261。渲染近似首先将2D投影161投射至简化3D模型1210中的平面1211;此平面1211与用户的距离为z*。值z*可为定值,或者它可由场景渲染器142a基于在3D模型141中物体与用户的平均或典型距离提供。在由图像扭曲器使用的简化3D模型1210中,在3D空间中出现的所有物体均与用户相距同一深度z*,因为所有物体已经被投射在具有zs=zp=zb=z*的深度1212的单个平面1211上。这并不匹配原始3D场景模型141a中的真实深度1201a、1201b和1201c;因此图像扭曲器为了高效而采用近似重新渲染,与真实3D场景模型141a相比这简化了3D渲染模型1210。
从位于深度z*的平面1211,图像扭曲器重新投射像素至与用户新姿势对应的修改的可视面1220。平面1220的朝向基于从姿势分析器122接收的数据。此重新投射产生修改的图像261。在图12所示的说明性示例中,可视面1220与图像161的初始可视面相比顺时针转动;因此,在261中的物体被逆时针转动以形成重新渲染近似。
图12中图示的实施例通过将原始2D投影映射至与用户的原始可视面平行的单个平面然后将该平面重新投影至用户的修改的可视面来产生重新渲染近似。一个或多个实施例可将2D投影映射至其他表面以执行近似重新渲染。例如,一些实施例可将2D投影的多个部分映射至多个平面。一个或多个实施例可将2D投影映射至一个或多个弯曲表面,举例来说诸如球面或圆柱面。
数学上,一个或多个实施例可如下所述实施图12中图示的重新渲染近似。此实施方式仅为说明;实施例可采用任何令人满意的变换、算法、映射或图像扭曲以执行重新渲染近似。为了简化说明,我们假设2D投影是矩形图像,宽为w像素高为h像素,宽w表示f弧度的水平视野。我们假设使用3D场景模型至可视面z=-1的透视投影变换然后加以从空间坐标至像素坐标的缩放来生成2D投影。可视面z=-1被映射至平面z=-z*以形成用于重新渲染的3D模型;因此该可视面的点(x,y)被映射至坐标(z*x,z*y,-z*)。用户姿势的后续变化被模型化为该可视面的刚体变换T,一般来说它包括绕单位向量轴角度为Δθ的转动R,然后是通过向量Δr的平移。每个点(z*x,z*y,-z*)然后投射至此新的可视面上,并从空间坐标至像素坐标采用相同的缩放因子进行重新缩放。
认识到通过变换T变换新平面等价于将该平面z=-z*上的点变换T-1然后将这些点映射至原始可视面z=-1,至新可视面上的投影的推导可被简化。将点映射至可视面z=-1是简单的:点(x,y,z)映射至因此,重新渲染近似包括下述步骤:
映射T-1包括通过向量-Δr的平移以及之后绕着单位向量轴角度为-Δθ的转动R。我们现在考虑用户姿势小幅变化的情况,其中Δr和Δθ两者都小。在这种情况下,转动R可被近似为其中S是叉积矩阵(S(u)v=u×v),I是单位矩阵。对于小幅变化,平移和转动的效果是近似累加的;因此当Δr=(Δrx,Δrv,Δrz)且时,T-1(x0,y0,z0)=(x0-Δrx-ωyz0Δθ+ωzy0Δθ,y0-Δry+ωxz0Δθ-ωzx0Δθ,z0-Δrz-ωxy0Δθ+ωyx0Δθ)。因此
以及
在x和y小的情况下,这些公式可被进一步简化,这对应于像素相对接近原始2D投影的中心。继续假设Δr和Δθ两者都小,上文的很多项都是二阶表达式,举例来说诸如yΔθ。忽略这些二阶项,我们近似地得到:
此外,对于小的Δr,分母可被忽略为一阶,因为
并且Δrz/z*与分子中的项的乘积包括二阶项。因此,我们可使用重新渲染近似:
使用这一近似,所有的坐标(x,y)因此都通过平移 而被统一平移。此公式提供了简化3D模型的空间坐标中的坐标平移。为了转换至像素坐标,我们简单地应用缩放因子这获得了像素平移向量(sΔx,sΔy)。
这一推导示出了可使用基于简化3D模型的简单像素平移向量执行近似重新渲染,它对于小幅姿势变化和与显示器中心接近的像素来说是一种良好的近似。示出的该推导考虑了转动姿势变化和平移姿势变化两者。一个或多个实施例可仅考虑转动姿势变化。这些实施例例如可使用(sΔx,sΔy)=(sωyΔθ,-sωxΔθ)的像素平移向量,它仅适用像素平移向量的转动分量。一个或多个实施例可仅考虑平移姿势变化。这些实施例例如使用的像素平移向量,它仅适用像素平移向量的平移分量。一个或多个实施例可将转动姿势变化和平移姿势变化两者考虑在内。这些实施例例如可使用上文推导出的完整的像素平移向量,即
上文推导出的像素平移向量近似仅是用于重新渲染的多种可能近似的其中一种。一个或多个实施例可使用其他近似,或使用上文推导出的那些公式,以执行重新渲染近似。
在图13和14中图示了使用上文推导出的像素平移向量的重新渲染近似。图13图示了姿势变化的一个示例,包括绕着y轴的小角度转动。图13示出了该变换的俯视图,使用坐标系1301;y轴指向页面外。首先,用户具有姿势101a,从3D场景模型生成的2D投影具有位于x坐标1303a的圆(由于它位于显示器中心因此是0),以及位于x坐标1304a的正方形,它处于角度1306(a)。重新渲染近似首先将这些物体从可视面1302a映射至平面1305,它与用户的距离为z*。用户然后改变姿势为101b,通过将视图向量绕y轴顺时针转动角度Δθ。平面1305上的物体然后被重新投射至新可视面。原始位于x0=0的圆在新可视面中具有新的x坐标1303b,值x0’=tanΔθ。由于我们假定Δθ小,那么tanΔθ≈Δθ。原始位于x1的正方向在新可视面中具有新的x坐标1304b,值x1’=tan(Δθ+α)。如果Δθ和α两者都小,则tan(Δθ+α)≈tanΔθ+tanα≈Δθ+x1。因此,点x0和x1两者都大约移位Δθ的量。这一结果对应于上文推导出的像素平移向量公式,其中ωy=1,ωx=Δrx=Δry=0。
图14图示了包括沿着x轴小幅平移Δr的量的姿势变化的示例。初始用户姿势101a,2D投影1302a以及映射至平面1305与图13的那些相同。用户然后改变姿势至101c,通过右移量1401(Δr)。可视面同样右移,新x’轴1402c的原点在点1410处垂直于用户的新位置。面1305上的物体然后被重新投射在新可视面上。原始位于x0=0的圆在新可视面中具有新x坐标1403c,其中值x0’=-Δr/z*。原始位于x1的正方形在新可视面中具有新x坐标1404c,其中值x1’=x1–Δr/z*。此结果对应于上文推导出的像素平移向量公式,其中Δrx=Δr,ωx=ωy=Δry=0。
虽然这里公开的本发明已经借助于特定实施例及其应用进行了说明,但是本领域技术人员可在不脱离由权利要求提出的本发明保护范围的情况下对其作出多种修改和变化。
Claims (16)
1.一种低延迟虚拟现实显示系统,包括:
用户可视的至少一个显示器;
产生测量所述用户一个或多个身体部位的姿势的一个或多个方面的传感器数据的至少一个传感器;
连接至所述至少一个传感器的姿势分析器,基于从所述至少一个传感器接收的所述传感器数据,它为所述用户的一个或多个身体部位的所述姿势计算姿势数据;
场景的3D模型;
连接至所述至少一个显示器、所述姿势分析器以及所述3D模型的场景渲染器,其中所述场景渲染器:
从所述姿势分析器接收所述姿势数据;
基于所述姿势数据为所述至少一个显示器计算一个或多个渲染虚拟相机姿势;
基于所述一个或多个渲染虚拟相机姿势,计算所述3D模型的一个或多个2D投影;
将所述一个或多个2D投影发送至所述至少一个显示器;
连接至所述至少一个显示器、所述场景渲染器和所述姿势分析器的图像扭曲器,其中所述图像扭曲器:
从所述场景渲染器接收所述一个或多个渲染虚拟相机姿势;
从所述姿势分析器接收所述姿势数据;
计算在所述一个或多个虚拟相机姿势和所述姿势数据之间的姿势变化;
基于所述姿势变化在所述一个或多个显示器上生成所述一个或多个2D投影的重新渲染近似;以及
基于所述重新渲染近似修改所述至少一个显示器的一个或多个像素。
2.如权利要求1所述的低延迟虚拟现实显示系统,其中所述重新渲染近似包括:
计算像素平移向量;以及,
通过所述像素平移向量平移所述一个或多个2D投影的一个或多个像素。
3.如权利要求1所述的低延迟虚拟现实显示系统,其中所述图像扭曲器使用硬件加速以执行所述修改所述至少一个显示器的一个或多个像素。
4.如权利要求1所述的低延迟虚拟现实显示系统,其中所述图像扭曲器将所述姿势变化与一阈值作比较;以及,
如果所述姿势变化低于所述阈值则生成所述重新渲染近似。
5.如权利要求1所述的低延迟虚拟现实显示系统,其中
所述场景渲染器将所述一个或多个2D投影发送至所述图像扭曲器;
所述图像扭曲器:
根据所述姿势数据计算一个或多个当前虚拟相机姿势;
计算在所述一个或多个渲染虚拟相机姿势和所述一个或多个当前虚拟相机姿势之间的后渲染姿势变化;
基于所述后渲染姿势变化生成一后渲染图像校正;
基于所述后渲染图像校正修改所述一个或多个2D投影的一个或多个像素;
将所述一个或多个2D投影发送至所述一个或多个显示器。
6.如权利要求1所述的低延迟虚拟现实显示系统,其中所述图像扭曲器:
针对所述重新渲染近似将被显示的时刻生成所述姿势数据的预测值;
计算所述一个或多个虚拟相机姿势和所述姿势数据的所述预测值之间的预测姿势变化;以及
基于所述预测姿势变化在所述一个或多个显示器上生成所述一个或多个2D投影的所述重新渲染近似。
7.如权利要求1所述的低延迟虚拟现实显示系统,其中所述场景渲染器:
针对所述一个或多个2D投影将被显示的时刻生成所述姿势数据的预测值;以及
根据所述姿势数据的所述预测值计算所述一个或多个渲染虚拟相机姿势。
8.如权利要求1所述的低延迟虚拟现实显示系统,进一步包括离屏缓冲区,其中
所述一个或多个2D投影包括其中像素地址在所述一个或多个显示器边界之外的一个或多个离屏区;
所述场景渲染器将所述一个或多个离屏区发送至所述离屏缓冲区;以及
在所述图像扭曲器应用所述重新渲染近似至所述一个或多个2D投影后,所述图像扭曲器从所述离屏缓冲区检索像素以填充所述一个或多个显示器中缺失了像素的空白区域。
9.如权利要求1所述的低延迟虚拟现实显示系统,其中在所述图像扭曲器应用所述重新渲染近似至所述一个或多个2D投影后,所述图像扭曲器产生空洞填充像素值以填充所述一个或多个显示器中的缺失了像素的空白区域。
10.如权利要求9所述的低延迟虚拟现实显示系统,其中在所述图像扭曲器应用所述重新渲染近似至所述一个或多个2D投影后,所述图像扭曲器通过从所述一个或多个2D投影的边界扩展像素值来生成所述空洞填充像素值。
11.如权利要求9所述的低延迟虚拟现实显示系统,其中所述图像扭曲器应用模糊变换至所述空白区域的一个或多个部分。
12.如权利要求1所述的低延迟虚拟现实显示系统,其中
所述场景渲染器将所述一个或多个2D投影发送至所述图像扭曲器;
所述图像扭曲器:
通过将所述一个或多个2D投影映射至一个或多个3D表面生成简化的3D模型;
根据所述姿势数据计算一个或多个更新的可视面;
通过将所述简化的3D模型投射在所述一个或多个更新的可视面上,根据所述简化的3D模型计算一个或多个重新渲染的2D投影;以及,
将所述一个或多个重新渲染的2D投影发送至所述一个或多个显示器。
13.如权利要求12所述的低延迟虚拟现实显示系统,其中
针对所述一个或多个2D投影的每一个,所述场景渲染器将深度值发送至所述图像扭曲器
所述图像扭曲器将所述一个或多个3D表面的每一个定位为与所述用户具有某一间距,该间距取决于所述深度值。
14.如权利要求2所述的低延迟虚拟现实显示系统,其中计算所述像素平移向量包括:
将所述姿势变化近似为绕着单位向量转动一角度Δθ;
计算空间平移向量
基于所述一个或多个2D投影的像素尺寸和视野计算一缩放因子以将空间距离转换为像素;
通过使用所述缩放因子缩放所述空间平移向量计算所述像素平移向量。
15.如权利要求2所述的低延迟虚拟现实显示系统,其中计算所述像素平移向量包括:
根据向量Δr将所述姿势变化近似为平移;
将所述一个或多个2D投影与所述用户之间的距离近似为距离z*;
计算空间平移向量(-Δrx/z*,-Δry/z*);
基于所述一个或多个2D投影的像素尺寸和视野,计算一缩放因子以将空间距离转换为像素;
通过根据所述缩放因子缩放所述空间平移向量计算所述像素平移向量。
16.如权利要求2所述的低延迟虚拟现实显示系统,其中计算所述像素平移向量包括:
将所述姿势变化近似为绕着单位向量转动角度Δθ加上基于向量Δr的平移;
将所述一个或多个2D投影中的物体与所述用户的距离近似为距离z*;
计算空间平移向量
基于所述一个或多个2D投影的像素尺寸和视野计算缩放因子以将空间距离转换至像素;
通过根据所述缩放因子缩放所述空间平移向量计算所述像素平移向量。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/788,633 US9240069B1 (en) | 2015-06-30 | 2015-06-30 | Low-latency virtual reality display system |
US14/788,633 | 2015-06-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105404393A true CN105404393A (zh) | 2016-03-16 |
CN105404393B CN105404393B (zh) | 2017-08-08 |
Family
ID=55071455
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510751514.5A Expired - Fee Related CN105404393B (zh) | 2015-06-30 | 2015-11-06 | 低延迟虚拟现实显示系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9240069B1 (zh) |
CN (1) | CN105404393B (zh) |
HK (1) | HK1216786A1 (zh) |
WO (1) | WO2017003769A1 (zh) |
Cited By (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105847785A (zh) * | 2016-05-09 | 2016-08-10 | 上海乐相科技有限公司 | 一种图像处理方法、设备和系统 |
CN105954007A (zh) * | 2016-05-18 | 2016-09-21 | 杭州映墨科技有限公司 | 用于虚拟现实头盔加速度运动的延时测试系统和方法 |
CN106200899A (zh) * | 2016-06-24 | 2016-12-07 | 北京奇思信息技术有限公司 | 根据用户头部动作控制虚拟现实交互的方法及系统 |
CN106331823A (zh) * | 2016-08-31 | 2017-01-11 | 北京奇艺世纪科技有限公司 | 一种视频播放方法及装置 |
CN106385625A (zh) * | 2016-09-29 | 2017-02-08 | 宇龙计算机通信科技(深圳)有限公司 | 一种图像中间帧生成方法及装置 |
CN106799046A (zh) * | 2017-02-27 | 2017-06-06 | 北京赛欧必弗科技股份有限公司 | 应用于电子游戏的控制多轴运动设备的方法 |
CN106973283A (zh) * | 2017-03-30 | 2017-07-21 | 北京炫房科技有限公司 | 一种图像显示方法及装置 |
CN107302845A (zh) * | 2014-09-22 | 2017-10-27 | 爱父爱斯吉尔有限公司 | 利用方向预测的低时延模拟装置及方法、用于该方法的计算机程序 |
WO2017185622A1 (zh) * | 2016-04-29 | 2017-11-02 | 上海乐相科技有限公司 | 一种显示方法及目标设备 |
CN107368192A (zh) * | 2017-07-18 | 2017-11-21 | 歌尔科技有限公司 | Vr眼镜的实景观测方法及vr眼镜 |
CN107452346A (zh) * | 2016-05-31 | 2017-12-08 | 乐金显示有限公司 | 用于虚拟现实的显示系统及其驱动方法 |
CN107945138A (zh) * | 2017-12-08 | 2018-04-20 | 京东方科技集团股份有限公司 | 一种图片处理方法和装置 |
CN108108019A (zh) * | 2017-12-15 | 2018-06-01 | 歌尔科技有限公司 | 虚拟现实设备及其显示方法 |
CN108289175A (zh) * | 2018-02-05 | 2018-07-17 | 黄淮学院 | 一种低延迟虚拟现实显示方法及显示系统 |
CN108540517A (zh) * | 2017-03-06 | 2018-09-14 | 中国移动通信有限公司研究院 | 一种信息获取方法、用户设备及系统 |
CN108732760A (zh) * | 2018-05-28 | 2018-11-02 | 徐州昇科源信息技术有限公司 | 一种解决虚拟现实vr晕动症的方法 |
CN109069932A (zh) * | 2016-03-17 | 2018-12-21 | 索尼互动娱乐股份有限公司 | 观看与虚拟现实(vr)用户互动性相关联的vr环境 |
CN109327284A (zh) * | 2018-11-27 | 2019-02-12 | 联想(北京)有限公司 | 数据传输方法、装置及电子设备 |
CN109564466A (zh) * | 2016-07-29 | 2019-04-02 | 高通股份有限公司 | 用于在虚拟现实系统中减小运动光子时延和存储器带宽的系统和方法 |
CN109581660A (zh) * | 2017-09-28 | 2019-04-05 | 精工爱普生株式会社 | 虚像显示装置 |
CN109739110A (zh) * | 2018-12-23 | 2019-05-10 | 上海幻维数码创意科技有限公司 | 一种用于虚拟现实体验设备的低延迟无线控制系统 |
CN109739356A (zh) * | 2018-12-29 | 2019-05-10 | 歌尔股份有限公司 | Vr系统中图像显示的控制方法、装置及vr头戴设备 |
CN109752097A (zh) * | 2018-12-29 | 2019-05-14 | 北京理工大学 | 一种基于激光管的vr头盔的移动延迟测量方法 |
CN109863538A (zh) * | 2016-08-26 | 2019-06-07 | 奇跃公司 | 用于虚拟及增强现实显示的连续时间扭曲及双目时间扭曲系统和方法 |
CN110351480A (zh) * | 2019-06-13 | 2019-10-18 | 歌尔科技有限公司 | 用于电子设备的图像处理方法、装置及电子设备 |
CN110383821A (zh) * | 2017-03-03 | 2019-10-25 | 科理特株式会社 | 虚拟现实影像再现方法及使用其的程序 |
CN110402415A (zh) * | 2017-03-17 | 2019-11-01 | 奇跃公司 | 记录增强现实数据的技术 |
CN110402425A (zh) * | 2017-03-17 | 2019-11-01 | 奇跃公司 | 具有彩色虚拟内容扭曲的混合现实系统及使用该系统生成虚拟内容的方法 |
CN110706164A (zh) * | 2019-09-03 | 2020-01-17 | 北京爱博同心医学科技有限公司 | 基于增强现实的管状视野图像变形显示方法及眼镜 |
CN111066081A (zh) * | 2017-09-08 | 2020-04-24 | 微软技术许可有限责任公司 | 用于补偿虚拟现实的图像显示中的可变显示设备等待时间的技术 |
CN111131805A (zh) * | 2019-12-31 | 2020-05-08 | 歌尔股份有限公司 | 图像处理方法、装置和可读存储介质 |
CN111417953A (zh) * | 2017-11-10 | 2020-07-14 | 阿里巴巴(以色列)科技有限公司 | 用于使用人类运动模型来改进运动估计的设备、系统和方法 |
CN112020858A (zh) * | 2018-04-30 | 2020-12-01 | 高通股份有限公司 | 利用感兴趣区域的确定的异步时间和空间扭曲 |
CN112562065A (zh) * | 2020-12-17 | 2021-03-26 | 深圳市大富网络技术有限公司 | 一种虚拟世界中虚拟对象的渲染方法、系统以及装置 |
CN113129224A (zh) * | 2019-12-31 | 2021-07-16 | 精工爱普生株式会社 | 显示系统、电子设备、移动体和显示方法 |
CN117197403A (zh) * | 2017-03-17 | 2023-12-08 | 奇跃公司 | 混合现实系统及使用该系统生成虚拟内容的方法 |
Families Citing this family (84)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150124566A1 (en) | 2013-10-04 | 2015-05-07 | Thalmic Labs Inc. | Systems, articles and methods for wearable electronic devices employing contact sensors |
US10042422B2 (en) | 2013-11-12 | 2018-08-07 | Thalmic Labs Inc. | Systems, articles, and methods for capacitive electromyography sensors |
US11921471B2 (en) | 2013-08-16 | 2024-03-05 | Meta Platforms Technologies, Llc | Systems, articles, and methods for wearable devices having secondary power sources in links of a band for providing secondary power in addition to a primary power source |
WO2015081113A1 (en) | 2013-11-27 | 2015-06-04 | Cezar Morun | Systems, articles, and methods for electromyography sensors |
US10600245B1 (en) * | 2014-05-28 | 2020-03-24 | Lucasfilm Entertainment Company Ltd. | Navigating a virtual environment of a media content item |
US9880632B2 (en) | 2014-06-19 | 2018-01-30 | Thalmic Labs Inc. | Systems, devices, and methods for gesture identification |
US9588593B2 (en) | 2015-06-30 | 2017-03-07 | Ariadne's Thread (Usa), Inc. | Virtual reality system with control command gestures |
US9607428B2 (en) | 2015-06-30 | 2017-03-28 | Ariadne's Thread (Usa), Inc. | Variable resolution virtual reality display system |
US10089790B2 (en) | 2015-06-30 | 2018-10-02 | Ariadne's Thread (Usa), Inc. | Predictive virtual reality display system with post rendering correction |
US9588598B2 (en) | 2015-06-30 | 2017-03-07 | Ariadne's Thread (Usa), Inc. | Efficient orientation estimation system using magnetic, angular rate, and gravity sensors |
US11481911B2 (en) * | 2015-08-18 | 2022-10-25 | Magic Leap, Inc. | Virtual and augmented reality systems and methods |
US10127725B2 (en) * | 2015-09-02 | 2018-11-13 | Microsoft Technology Licensing, Llc | Augmented-reality imaging |
US10962780B2 (en) * | 2015-10-26 | 2021-03-30 | Microsoft Technology Licensing, Llc | Remote rendering for virtual images |
US11010956B2 (en) * | 2015-12-09 | 2021-05-18 | Imagination Technologies Limited | Foveated rendering |
US9978180B2 (en) * | 2016-01-25 | 2018-05-22 | Microsoft Technology Licensing, Llc | Frame projection for augmented reality environments |
WO2017147178A1 (en) * | 2016-02-22 | 2017-08-31 | Google Inc. | Separate time-warping for a scene and an object for display of virtual reality content |
CA3016337A1 (en) | 2016-03-15 | 2017-09-21 | Magic Leap, Inc. | Wide baseline stereo for low-latency rendering |
CN108604391B (zh) * | 2016-05-29 | 2022-06-14 | 谷歌有限责任公司 | 基于虚拟/增强现实系统中的深度信息的时间扭曲调整 |
US11331045B1 (en) | 2018-01-25 | 2022-05-17 | Facebook Technologies, Llc | Systems and methods for mitigating neuromuscular signal artifacts |
US10489986B2 (en) | 2018-01-25 | 2019-11-26 | Ctrl-Labs Corporation | User-controlled tuning of handstate representation model parameters |
EP3487395A4 (en) | 2016-07-25 | 2020-03-04 | CTRL-Labs Corporation | METHODS AND APPARATUS FOR PREDICTING MUSCULOSKELETAL POSITION INFORMATION USING PORTABLE SELF-CONTAINED SENSORS |
US11635736B2 (en) | 2017-10-19 | 2023-04-25 | Meta Platforms Technologies, Llc | Systems and methods for identifying biological structures associated with neuromuscular source signals |
WO2018022658A1 (en) | 2016-07-25 | 2018-02-01 | Ctrl-Labs Corporation | Adaptive system for deriving control signals from measurements of neuromuscular activity |
CN110337269B (zh) | 2016-07-25 | 2021-09-21 | 脸谱科技有限责任公司 | 基于神经肌肉信号推断用户意图的方法和装置 |
US10496168B2 (en) | 2018-01-25 | 2019-12-03 | Ctrl-Labs Corporation | Calibration techniques for handstate representation modeling using neuromuscular signals |
US11337652B2 (en) | 2016-07-25 | 2022-05-24 | Facebook Technologies, Llc | System and method for measuring the movements of articulated rigid bodies |
WO2020112986A1 (en) | 2018-11-27 | 2020-06-04 | Facebook Technologies, Inc. | Methods and apparatus for autocalibration of a wearable electrode sensor system |
US10772519B2 (en) | 2018-05-25 | 2020-09-15 | Facebook Technologies, Llc | Methods and apparatus for providing sub-muscular control |
US11216069B2 (en) | 2018-05-08 | 2022-01-04 | Facebook Technologies, Llc | Systems and methods for improved speech recognition using neuromuscular information |
GB2553353B (en) | 2016-09-05 | 2021-11-24 | Advanced Risc Mach Ltd | Graphics processing systems and graphics processors |
WO2018064287A1 (en) * | 2016-09-28 | 2018-04-05 | Ariadne's Thread (Usa), Inc. | Predictive virtual reality display system with post rendering correction |
DE102016221204A1 (de) * | 2016-10-27 | 2018-05-03 | Siemens Aktiengesellschaft | Bestimmung mindestens eines genäherten Zwischendatensatzes für eine Echtzeitanwendung |
US10043318B2 (en) * | 2016-12-09 | 2018-08-07 | Qualcomm Incorporated | Display synchronized image warping |
US11507216B2 (en) | 2016-12-23 | 2022-11-22 | Realwear, Inc. | Customizing user interfaces of binary applications |
US10437070B2 (en) | 2016-12-23 | 2019-10-08 | Realwear, Inc. | Interchangeable optics for a head-mounted display |
US10393312B2 (en) | 2016-12-23 | 2019-08-27 | Realwear, Inc. | Articulating components for a head-mounted display |
US10936872B2 (en) | 2016-12-23 | 2021-03-02 | Realwear, Inc. | Hands-free contextually aware object interaction for wearable display |
US11099716B2 (en) | 2016-12-23 | 2021-08-24 | Realwear, Inc. | Context based content navigation for wearable display |
US10620910B2 (en) | 2016-12-23 | 2020-04-14 | Realwear, Inc. | Hands-free navigation of touch-based operating systems |
US10277943B2 (en) * | 2017-03-27 | 2019-04-30 | Microsoft Technology Licensing, Llc | Selective rendering of sparse peripheral displays based on user movements |
WO2018209043A1 (en) * | 2017-05-10 | 2018-11-15 | Microsoft Technology Licensing, Llc | Presenting applications within virtual environments |
DE102017208365A1 (de) * | 2017-05-18 | 2018-11-22 | Robert Bosch Gmbh | Verfahren zur Orientierungsschätzung eines tragbaren Gerätes |
US10776992B2 (en) * | 2017-07-05 | 2020-09-15 | Qualcomm Incorporated | Asynchronous time warp with depth data |
GB2564866B (en) * | 2017-07-24 | 2021-07-28 | Advanced Risc Mach Ltd | Method of and data processing system for providing an output surface |
WO2019046821A1 (en) | 2017-09-01 | 2019-03-07 | Magic Leap, Inc. | GENERATING A NEW FRAME USING REBUILDED CONTENT AND UNRESTITUDED CONTENT FROM A PREVIOUS PERSPECTIVE |
GB2566478B (en) * | 2017-09-14 | 2019-10-30 | Samsung Electronics Co Ltd | Probability based 360 degree video stabilisation |
US11245887B2 (en) | 2017-09-14 | 2022-02-08 | Samsung Electronics Co., Ltd. | Electronic device and operation method therefor |
KR20200073229A (ko) * | 2017-10-27 | 2020-06-23 | 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 | 3차원 모델 부호화 장치, 3차원 모델 복호 장치, 3차원 모델 부호화 방법, 및, 3차원 모델 복호 방법 |
US11481030B2 (en) | 2019-03-29 | 2022-10-25 | Meta Platforms Technologies, Llc | Methods and apparatus for gesture detection and classification |
US11150730B1 (en) | 2019-04-30 | 2021-10-19 | Facebook Technologies, Llc | Devices, systems, and methods for controlling computing devices via neuromuscular signals of users |
WO2019147949A1 (en) | 2018-01-25 | 2019-08-01 | Ctrl-Labs Corporation | Real-time processing of handstate representation model estimates |
US10937414B2 (en) | 2018-05-08 | 2021-03-02 | Facebook Technologies, Llc | Systems and methods for text input using neuromuscular information |
US11961494B1 (en) | 2019-03-29 | 2024-04-16 | Meta Platforms Technologies, Llc | Electromagnetic interference reduction in extended reality environments |
US10970936B2 (en) | 2018-10-05 | 2021-04-06 | Facebook Technologies, Llc | Use of neuromuscular signals to provide enhanced interactions with physical objects in an augmented reality environment |
WO2019147928A1 (en) | 2018-01-25 | 2019-08-01 | Ctrl-Labs Corporation | Handstate reconstruction based on multiple inputs |
WO2019148002A1 (en) | 2018-01-25 | 2019-08-01 | Ctrl-Labs Corporation | Techniques for anonymizing neuromuscular signal data |
US11493993B2 (en) | 2019-09-04 | 2022-11-08 | Meta Platforms Technologies, Llc | Systems, methods, and interfaces for performing inputs based on neuromuscular control |
US11907423B2 (en) | 2019-11-25 | 2024-02-20 | Meta Platforms Technologies, Llc | Systems and methods for contextualized interactions with an environment |
CN112074870A (zh) | 2018-01-25 | 2020-12-11 | 脸谱科技有限责任公司 | 重构的手部状态信息的可视化 |
US10735649B2 (en) | 2018-02-22 | 2020-08-04 | Magic Leap, Inc. | Virtual and augmented reality systems and methods using display system control information embedded in image data |
CN108495148B (zh) * | 2018-04-02 | 2021-07-20 | 四川隧唐科技股份有限公司 | 图像数据加载方法及装置 |
US10592001B2 (en) | 2018-05-08 | 2020-03-17 | Facebook Technologies, Llc | Systems and methods for improved speech recognition using neuromuscular information |
WO2019231911A1 (en) | 2018-05-29 | 2019-12-05 | Ctrl-Labs Corporation | Shielding techniques for noise reduction in surface electromyography signal measurement and related systems and methods |
WO2019241701A1 (en) | 2018-06-14 | 2019-12-19 | Ctrl-Labs Corporation | User identification and authentication with neuromuscular signatures |
US11045137B2 (en) | 2018-07-19 | 2021-06-29 | Facebook Technologies, Llc | Methods and apparatus for improved signal robustness for a wearable neuromuscular recording device |
US10600236B2 (en) * | 2018-08-06 | 2020-03-24 | Valve Corporation | Prediction and throttling adjustments based on application rendering performance |
WO2020036958A1 (en) | 2018-08-13 | 2020-02-20 | Ctrl-Labs Corporation | Real-time spike detection and identification |
EP4241661A1 (en) | 2018-08-31 | 2023-09-13 | Facebook Technologies, LLC | Camera-guided interpretation of neuromuscular signals |
WO2020061451A1 (en) | 2018-09-20 | 2020-03-26 | Ctrl-Labs Corporation | Neuromuscular text entry, writing and drawing in augmented reality systems |
CN112771478A (zh) | 2018-09-26 | 2021-05-07 | 脸谱科技有限责任公司 | 对环境中的物理对象的神经肌肉控制 |
JP7134060B2 (ja) * | 2018-10-18 | 2022-09-09 | 株式会社ソニー・インタラクティブエンタテインメント | 画像生成装置および画像生成方法 |
US10905383B2 (en) | 2019-02-28 | 2021-02-02 | Facebook Technologies, Llc | Methods and apparatus for unsupervised one-shot machine learning for classification of human gestures and estimation of applied forces |
US11010921B2 (en) | 2019-05-16 | 2021-05-18 | Qualcomm Incorporated | Distributed pose estimation |
WO2021076122A1 (en) * | 2019-10-16 | 2021-04-22 | Google Llc | Lighting estimation for augmented reality |
US11113785B2 (en) | 2019-11-11 | 2021-09-07 | International Business Machines Corporation | Mitigating latency-based display delays |
US12089953B1 (en) | 2019-12-04 | 2024-09-17 | Meta Platforms Technologies, Llc | Systems and methods for utilizing intrinsic current noise to measure interface impedances |
CN113467602B (zh) * | 2020-03-31 | 2024-03-19 | 中国移动通信集团浙江有限公司 | Vr显示方法及系统 |
CN111881836A (zh) * | 2020-07-29 | 2020-11-03 | 上海商汤临港智能科技有限公司 | 目标对象识别方法及相关装置、设备 |
US11538214B2 (en) * | 2020-11-09 | 2022-12-27 | Meta Platforms Technologies, Llc | Systems and methods for displaying stereoscopic rendered image data captured from multiple perspectives |
CN112584120A (zh) * | 2020-12-15 | 2021-03-30 | 北京京航计算通讯研究所 | 一种视频融合方法 |
CN112584060A (zh) * | 2020-12-15 | 2021-03-30 | 北京京航计算通讯研究所 | 一种视频融合系统 |
US11868531B1 (en) | 2021-04-08 | 2024-01-09 | Meta Platforms Technologies, Llc | Wearable device providing for thumb-to-finger-based input gestures detected based on neuromuscular signals, and systems and methods of use thereof |
CN113465611B (zh) * | 2021-06-29 | 2024-03-26 | 阿波罗智联(北京)科技有限公司 | 导航方法、装置、电子设备及可读存储介质 |
EP4351157A1 (en) * | 2022-10-06 | 2024-04-10 | Holo-Light GmbH | Xr streaming method and xr streaming system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6445815B1 (en) * | 1998-05-08 | 2002-09-03 | Canon Kabushiki Kaisha | Measurement of depth image considering time delay |
US20110018903A1 (en) * | 2004-08-03 | 2011-01-27 | Silverbrook Research Pty Ltd | Augmented reality device for presenting virtual imagery registered to a viewed surface |
CN103197757A (zh) * | 2012-01-09 | 2013-07-10 | 癸水动力(北京)网络科技有限公司 | 一种沉浸式虚拟现实系统及其实现方法 |
-
2015
- 2015-06-30 US US14/788,633 patent/US9240069B1/en not_active Expired - Fee Related
- 2015-11-06 CN CN201510751514.5A patent/CN105404393B/zh not_active Expired - Fee Related
-
2016
- 2016-04-14 HK HK16104274.1A patent/HK1216786A1/zh not_active IP Right Cessation
- 2016-06-21 WO PCT/US2016/038564 patent/WO2017003769A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6445815B1 (en) * | 1998-05-08 | 2002-09-03 | Canon Kabushiki Kaisha | Measurement of depth image considering time delay |
US20110018903A1 (en) * | 2004-08-03 | 2011-01-27 | Silverbrook Research Pty Ltd | Augmented reality device for presenting virtual imagery registered to a viewed surface |
CN103197757A (zh) * | 2012-01-09 | 2013-07-10 | 癸水动力(北京)网络科技有限公司 | 一种沉浸式虚拟现实系统及其实现方法 |
Cited By (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107302845A (zh) * | 2014-09-22 | 2017-10-27 | 爱父爱斯吉尔有限公司 | 利用方向预测的低时延模拟装置及方法、用于该方法的计算机程序 |
CN107302845B (zh) * | 2014-09-22 | 2020-11-10 | 爱父爱斯吉尔有限公司 | 利用方向预测的低时延模拟装置、方法及计算机可读介质 |
CN109069932A (zh) * | 2016-03-17 | 2018-12-21 | 索尼互动娱乐股份有限公司 | 观看与虚拟现实(vr)用户互动性相关联的vr环境 |
CN109069932B (zh) * | 2016-03-17 | 2022-10-11 | 索尼互动娱乐股份有限公司 | 观看与虚拟现实(vr)用户互动性相关联的vr环境 |
WO2017185622A1 (zh) * | 2016-04-29 | 2017-11-02 | 上海乐相科技有限公司 | 一种显示方法及目标设备 |
CN105847785A (zh) * | 2016-05-09 | 2016-08-10 | 上海乐相科技有限公司 | 一种图像处理方法、设备和系统 |
CN105954007A (zh) * | 2016-05-18 | 2016-09-21 | 杭州映墨科技有限公司 | 用于虚拟现实头盔加速度运动的延时测试系统和方法 |
US10558046B2 (en) | 2016-05-31 | 2020-02-11 | Lg Display Co., Ltd. | Display system for virtual reality and method of driving the same |
CN107452346A (zh) * | 2016-05-31 | 2017-12-08 | 乐金显示有限公司 | 用于虚拟现实的显示系统及其驱动方法 |
CN106200899A (zh) * | 2016-06-24 | 2016-12-07 | 北京奇思信息技术有限公司 | 根据用户头部动作控制虚拟现实交互的方法及系统 |
CN109564466A (zh) * | 2016-07-29 | 2019-04-02 | 高通股份有限公司 | 用于在虚拟现实系统中减小运动光子时延和存储器带宽的系统和方法 |
CN109863538A (zh) * | 2016-08-26 | 2019-06-07 | 奇跃公司 | 用于虚拟及增强现实显示的连续时间扭曲及双目时间扭曲系统和方法 |
CN109863538B (zh) * | 2016-08-26 | 2023-10-27 | 奇跃公司 | 用于虚拟及增强现实显示的连续时间扭曲及双目时间扭曲系统和方法 |
CN106331823B (zh) * | 2016-08-31 | 2019-08-20 | 北京奇艺世纪科技有限公司 | 一种视频播放方法及装置 |
CN106331823A (zh) * | 2016-08-31 | 2017-01-11 | 北京奇艺世纪科技有限公司 | 一种视频播放方法及装置 |
CN106385625A (zh) * | 2016-09-29 | 2017-02-08 | 宇龙计算机通信科技(深圳)有限公司 | 一种图像中间帧生成方法及装置 |
CN106799046A (zh) * | 2017-02-27 | 2017-06-06 | 北京赛欧必弗科技股份有限公司 | 应用于电子游戏的控制多轴运动设备的方法 |
CN110383821A (zh) * | 2017-03-03 | 2019-10-25 | 科理特株式会社 | 虚拟现实影像再现方法及使用其的程序 |
CN110383821B (zh) * | 2017-03-03 | 2022-04-29 | 科理特株式会社 | 虚拟现实影像再现方法及使用其的程序 |
CN108540517A (zh) * | 2017-03-06 | 2018-09-14 | 中国移动通信有限公司研究院 | 一种信息获取方法、用户设备及系统 |
CN110402415A (zh) * | 2017-03-17 | 2019-11-01 | 奇跃公司 | 记录增强现实数据的技术 |
CN110402425A (zh) * | 2017-03-17 | 2019-11-01 | 奇跃公司 | 具有彩色虚拟内容扭曲的混合现实系统及使用该系统生成虚拟内容的方法 |
CN110402425B (zh) * | 2017-03-17 | 2024-01-09 | 奇跃公司 | 具有彩色虚拟内容扭曲的混合现实系统及使用该系统生成虚拟内容的方法 |
CN117197403A (zh) * | 2017-03-17 | 2023-12-08 | 奇跃公司 | 混合现实系统及使用该系统生成虚拟内容的方法 |
CN106973283A (zh) * | 2017-03-30 | 2017-07-21 | 北京炫房科技有限公司 | 一种图像显示方法及装置 |
CN107368192A (zh) * | 2017-07-18 | 2017-11-21 | 歌尔科技有限公司 | Vr眼镜的实景观测方法及vr眼镜 |
CN111066081A (zh) * | 2017-09-08 | 2020-04-24 | 微软技术许可有限责任公司 | 用于补偿虚拟现实的图像显示中的可变显示设备等待时间的技术 |
CN111066081B (zh) * | 2017-09-08 | 2022-07-01 | 微软技术许可有限责任公司 | 用于补偿虚拟现实的图像显示中的可变显示设备等待时间的技术 |
CN109581660B (zh) * | 2017-09-28 | 2022-04-26 | 精工爱普生株式会社 | 虚像显示装置 |
CN109581660A (zh) * | 2017-09-28 | 2019-04-05 | 精工爱普生株式会社 | 虚像显示装置 |
CN111417953A (zh) * | 2017-11-10 | 2020-07-14 | 阿里巴巴(以色列)科技有限公司 | 用于使用人类运动模型来改进运动估计的设备、系统和方法 |
US11615509B2 (en) | 2017-12-08 | 2023-03-28 | Beijing Boe Optoelectronics Technology Co., Ltd. | Picture processing method and device |
CN107945138B (zh) * | 2017-12-08 | 2020-04-03 | 京东方科技集团股份有限公司 | 一种图片处理方法和装置 |
CN107945138A (zh) * | 2017-12-08 | 2018-04-20 | 京东方科技集团股份有限公司 | 一种图片处理方法和装置 |
WO2019109699A1 (zh) * | 2017-12-08 | 2019-06-13 | 京东方科技集团股份有限公司 | 图片处理方法和装置 |
CN108108019B (zh) * | 2017-12-15 | 2021-03-19 | 歌尔光学科技有限公司 | 虚拟现实设备及其显示方法 |
CN108108019A (zh) * | 2017-12-15 | 2018-06-01 | 歌尔科技有限公司 | 虚拟现实设备及其显示方法 |
CN108289175A (zh) * | 2018-02-05 | 2018-07-17 | 黄淮学院 | 一种低延迟虚拟现实显示方法及显示系统 |
CN108289175B (zh) * | 2018-02-05 | 2020-12-08 | 黄淮学院 | 一种低延迟虚拟现实显示方法及显示系统 |
US11321906B2 (en) | 2018-04-30 | 2022-05-03 | Qualcomm Incorporated | Asynchronous time and space warp with determination of region of interest |
CN112020858A (zh) * | 2018-04-30 | 2020-12-01 | 高通股份有限公司 | 利用感兴趣区域的确定的异步时间和空间扭曲 |
CN112020858B (zh) * | 2018-04-30 | 2022-06-24 | 高通股份有限公司 | 利用感兴趣区域的确定的异步时间和空间扭曲 |
CN108732760A (zh) * | 2018-05-28 | 2018-11-02 | 徐州昇科源信息技术有限公司 | 一种解决虚拟现实vr晕动症的方法 |
CN109327284A (zh) * | 2018-11-27 | 2019-02-12 | 联想(北京)有限公司 | 数据传输方法、装置及电子设备 |
CN109739110A (zh) * | 2018-12-23 | 2019-05-10 | 上海幻维数码创意科技有限公司 | 一种用于虚拟现实体验设备的低延迟无线控制系统 |
CN109739110B (zh) * | 2018-12-23 | 2022-07-08 | 上海幻维数码创意科技股份有限公司 | 一种用于虚拟现实体验设备的低延迟无线控制系统 |
WO2020134085A1 (zh) * | 2018-12-29 | 2020-07-02 | 歌尔股份有限公司 | Vr系统中图像显示的控制方法、装置及vr头戴设备 |
CN109752097A (zh) * | 2018-12-29 | 2019-05-14 | 北京理工大学 | 一种基于激光管的vr头盔的移动延迟测量方法 |
CN109739356A (zh) * | 2018-12-29 | 2019-05-10 | 歌尔股份有限公司 | Vr系统中图像显示的控制方法、装置及vr头戴设备 |
CN109739356B (zh) * | 2018-12-29 | 2020-09-11 | 歌尔股份有限公司 | Vr系统中图像显示的控制方法、装置及vr头戴设备 |
CN109752097B (zh) * | 2018-12-29 | 2020-08-11 | 北京理工大学 | 一种基于激光管的vr头盔的移动延迟测量方法 |
CN110351480A (zh) * | 2019-06-13 | 2019-10-18 | 歌尔科技有限公司 | 用于电子设备的图像处理方法、装置及电子设备 |
CN110706164A (zh) * | 2019-09-03 | 2020-01-17 | 北京爱博同心医学科技有限公司 | 基于增强现实的管状视野图像变形显示方法及眼镜 |
CN111131805A (zh) * | 2019-12-31 | 2020-05-08 | 歌尔股份有限公司 | 图像处理方法、装置和可读存储介质 |
CN113129224A (zh) * | 2019-12-31 | 2021-07-16 | 精工爱普生株式会社 | 显示系统、电子设备、移动体和显示方法 |
CN113129224B (zh) * | 2019-12-31 | 2023-11-28 | 精工爱普生株式会社 | 显示系统、电子设备、移动体和显示方法 |
CN112562065A (zh) * | 2020-12-17 | 2021-03-26 | 深圳市大富网络技术有限公司 | 一种虚拟世界中虚拟对象的渲染方法、系统以及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2017003769A1 (en) | 2017-01-05 |
HK1216786A1 (zh) | 2016-12-02 |
US9240069B1 (en) | 2016-01-19 |
CN105404393B (zh) | 2017-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105404393A (zh) | 低延迟虚拟现实显示系统 | |
US10089790B2 (en) | Predictive virtual reality display system with post rendering correction | |
US10083538B2 (en) | Variable resolution virtual reality display system | |
US10026233B2 (en) | Efficient orientation estimation system using magnetic, angular rate, and gravity sensors | |
US9927870B2 (en) | Virtual reality system with control command gestures | |
CN107564089B (zh) | 三维图像处理方法、装置、存储介质和计算机设备 | |
US10096157B2 (en) | Generation of three-dimensional imagery from a two-dimensional image using a depth map | |
JP3745117B2 (ja) | 画像処理装置及び画像処理方法 | |
US7663649B2 (en) | Information processing device and method for aiding control operations relating to controlling the position and orientation of a virtual object and method for changing the positioning and orientation of a virtual object | |
JP4555722B2 (ja) | 立体映像生成装置 | |
EP2656309B1 (en) | Method for determining a parameter set designed for determining the pose of a camera and for determining a three-dimensional structure of the at least one real object | |
WO2017113731A1 (zh) | 360度全景显示方法、显示模块及移动终端 | |
US11158108B2 (en) | Systems and methods for providing a mixed-reality pass-through experience | |
JP7182976B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
WO2018064287A1 (en) | Predictive virtual reality display system with post rendering correction | |
CN110648274A (zh) | 鱼眼图像的生成方法及装置 | |
US20180213215A1 (en) | Method and device for displaying a three-dimensional scene on display surface having an arbitrary non-planar shape | |
CN110969706B (zh) | 增强现实设备及其图像处理方法、系统以及存储介质 | |
CN111598927A (zh) | 一种定位重建方法和装置 | |
BR112021014627A2 (pt) | Aparelho e método para renderizar imagens a partir de um sinal de imagem que representa uma cena, aparelho e método para gerar um sinal de imagem que representa uma cena, produto de programa de computador, e sinal de imagem | |
JP6168597B2 (ja) | 情報端末装置 | |
Deepu et al. | 3D Reconstruction from Single 2D Image | |
Kretschmer et al. | Spatial Mapping for UGV Navigation Systems | |
CN116456068A (zh) | 图像的三维显示方法、装置、显示模组及可读存储介质 | |
Jankovič | Augmented Reality Deformable Tracking |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1216786 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1216786 Country of ref document: HK |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170808 Termination date: 20181106 |