低延迟虚拟现实显示系统的制作方法

文档序号:9646327阅读:432来源:国知局
低延迟虚拟现实显示系统的制作方法
【技术领域】
[0001] 本发明的一个或多个实施例涉及虚拟现实系统领域。更具体地,但并非限制,本发 明的一个或多个实施例实现了一种低延迟虚拟现实显示系统,它追踪用户的运动并基于那 些运动快速地渲染一个虚拟现实显示。
【背景技术】
[0002] 虚拟现实系统是本领域所公知的。这种系统针对一用户产生响应于该用户运动的 虚拟世界。示例包括用户穿戴的各种类型的虚拟现实耳机和护目镜,以及具有多个显示器 的专用房间。虚拟现实系统典型地包括追踪用户头部、眼镜或其他身体部位并根据用户的 运动修改虚拟世界的传感器。虚拟世界由三维模型组成,它通过计算机生成或从真实世界 场景中捕获。基于用户的位置和朝向生成三维模型的图像。这些图像的生成需要将三维模 型渲染在一个或多个二维显示器上。渲染技术是本领域所公知的并通常例如用在3D图形 系统或基于计算机的游戏,以及虚拟现实系统中。
[0003] 现有虚拟现实系统的主要挑战在于将真实图像与低延迟渲染合并在一起,这样用 户的虚拟现实体验匹配真实环境中观测到的运动的迅速反馈。现有系统通常具有长延迟以 测量用户位置和朝向的改变,并基于这些改变重新渲染虚拟世界。3D渲染是复杂和处理器 密集型操作,它可能潜在地耗费数百毫秒。结果是用户察觉到他们的运动和在他们的显示 器上渲染已更新虚拟环境之间的显著延迟。三种技术趋势正加剧这一挑战:(1)随着捕获 和生成的3D数据的增多,3D模型的复杂度在提高。(2)虚拟现实显示器的解析度在增加, 需要更多计算功率以渲染图像。(3)用户愈发依赖具有有限处理器能力的移动设备。作为 这些趋势的结果,渲染虚拟现实显示中的高延迟已然成为限制采用和应用虚拟现实技术的 主要因素。考虑到这些技术限制,没有已知的系统提供足够低延迟的渲染和显示以产生高 响应虚拟现实环境。
[0004] 至少针对上文所述的限制,存在对于一种低延迟虚拟现实显示系统的需求。

【发明内容】

[0005] 本说明书中描述的一个或多个实施例涉及一种低延迟虚拟现实系统。该系统的实 施例使用有效近似以响应于用户位置或朝向的改变而快速重新渲染虚拟现实显示。此有效 和快速重新渲染减少了延迟并提升了用户的虚拟现实体验。
[0006] 该系统的一个或多个实施例包括用户可视的一个或多个显示器。例如,这些显示 器可嵌入在虚拟现实护目镜或眼镜中。一个或多个实施例还包括测量用户的位置、朝向或 两者这些方面的一个或多个传感器。在本说明书中,用户的朝向和位置这些方面称为用户 的"姿势"。姿势传感器例如可测量用户的头部、或用户的眼睛,或更一般的用户身体的任意 一部分或多部分的运动。本系统的实施例包括姿势分析器,它接收传感器数据并根据该数 据确定用户的姿势。该姿势信息被传递至场景渲染器,它产生由用户观看的3D虚拟现实显 示。基于用户的当前姿势,此显示示出了用户可视的3D场景模型的一部分。3D场景模型是 用户通过改变姿势加以操纵的虚拟世界的模型。
[0007] 场景渲染器根据3D场景模型生成一个或多个2D投影。在一个或多个实施例中, 可使用公知的3D图形技术生成这些投影,例如使用虚拟相机和至该虚拟相机可视面上的 透视投影变换。然后,将2D投影发送至显示器。
[0008] 此外,本系统的一个或多个实施例包括图像扭曲器。该图像扭曲器是通过有效重 新渲染场景提供低延迟虚拟现实显示的系统组件。该图像扭曲器例如可监视用户的姿势变 化并基于这些姿势变化重新渲染显示的图像。由图像扭曲器执行的重新渲染可为重新渲染 的近似,而不是根据原始3D场景模型的完整透视投影。例如,一些实施例通过以相对简单 的方式扭曲显示图像执行重新渲染近似以部分反映用户的姿势变化。这些重新渲染近似可 提供较低延迟的显示更新,虽然在一些实施例中相对于完整渲染过程来说它们可能并不完 全真实。
[0009] 该系统的一个或多个实施例通过计算像素平移向量执行近似重新渲染,然后根据 此像素平移向量平移显示器的像素。有效地,在这些实施例中,该图像扭曲器可在计算出的 方向上以计算出的量移动像素以接近显示器上用户的运动效果。此近似并不是完整3D渲 染,但在某些实施例中它可非常快速地执行,极大地减少了用户运动和显示器更新之间的 延迟。
[0010] 本系统的一个或多个实施例可使用硬件加速以修改显示器的像素从而执行近似 重新渲染。例如,显示硬件或图形处理单元硬件可支持指令以基于像素平移向量直接移动 像素。在一个或多个实施例中,在硬件中实现像素平移或其他近似重新渲染变换可进一步 减少延迟。
[0011] 在一个或多个实施例中,由图像扭曲器执行的重新渲染近似可仅当用户的姿势变 化低于一特定阈值时执行。对于姿势的大幅改变,图像扭曲器使用的近似可能不再适合,即 使具有高延迟,但可能更优选执行完整3D渲染。对于姿势的小幅改变,重新渲染近似可能 是足够真实的。
[0012] 在一个或多个实施例中,当执行完整3D渲染过程时可接收用户的多种姿势变化。 在3D渲染过程已经完成的时候,用于渲染的初始用户姿势可能已过期,因为那时更加新的 姿势变得可用。一个或多个实施例可在渲染的图像上执行后渲染校正,使用图像扭曲器以 在显示它们之前应用更新至生成的图像。这些后渲染校正可提高显示的图像和用户的当前 姿势之间的同步性。
[0013] 该系统的一个或多个实施例可使用姿势预测以当渲染和显示过程完成时计算或 估算用户未来某时刻的姿势。姿势预测可减少用户姿势变化和相应显示器更新之间的明显 延迟。一个或多个实施例可将姿势预测用于完整渲染、用于图像扭曲、或用于两者。实施例 可使用任何令人满意的技术以进行姿势预测,包括诸如姿势变化的简单推断。通过姿势预 测,预测的姿势被提供给渲染或近似重新渲染过程,而不是测量的姿势。渲染过程根据预测 的姿势值计算虚拟相机姿势,并基于这些虚拟相机后渲染场景。图像扭曲器使用预测的未 来姿势和之前通过场景的完整渲染计算的虚拟相机姿势之间的差计算姿势变化。
[0014] 一些实施例面临的一个挑战是图像扭曲过程可在显示器图像中留下由缺失的像 素形成的空洞。例如,如果所有像素都向右移,那么显示器的左边缘将具有一个不包含像素 数据的空洞。实施例可采用多种手段来处理这些空洞。在一个或多个实施例中,3D渲染器 可渲染大于显示区域的2D投影。在某些实施例中位于显示区域外的像素可缓存在离屏缓 冲区中,并当执行图像扭曲时加以检索以填充空洞。
[0015] -个或多个实施例采用的另一填充空洞的手段是基于附近像素的像素值为空洞 估算像素值。例如,在一个或多个实施例中,来自区域边界的像素值可增殖到空洞中以填充 它们。在某些情况下边界像素至空洞的简单增殖可导致视觉伪影。在一个或多个实施例中, 模糊变换可应用至图像中或附近的像素以减轻这些伪影。
[0016] -个或多个实施例可采用多种用于图像扭曲的重新渲染近似。一些实施例使用的 技术是根据从渲染的场景接收的2D投影生成简化的3D模型,并将这些简化的3D模型重新 投射至对应于用户姿势变化的更新的可视面上。例如,一个或多个实施例可通过将来自渲 染的2D投影映射至简化3D模型中的另一平面创建简化的3D模型,其中此平面与用户的间 距反映了完整3D场景模型中的物体的平均或典型深度。这一平均平面的深度可为定值,或 它可由具有每个2D投影的场景渲染器提供。一个或多个实施例可使用其他简化的3D模型, 举例来说,诸如球形或圆柱形表面。
[0017] 对于姿势的小幅变化,基于来自简化3D平面模型的重新投影的重新渲染近似可 近似等价于使用像素平移向量以响应于姿势变化平移显示器图像中的像素。例如,一个或 多个实施例可针对用户绕轴g转动小角度ΑΘ将像素平移向量计算为 然后它被按比例缩放以反映显示器的像素大小。此公式反映了用户视野的小角度转动近 似地导致响应于该转动的像素位移,位移量与转动角度成比例。用户姿势的变化还涉及平 移(用户的线性运动)。对于平移来说,像素的位移量同样是物体与用户间距的函数:物体 离用户越近,响应于用户平移的像素位移越多。在一个或多个实施例中,重新渲染近似可 使用2D投影中用户和物体间距的平均深度估计zx通过像素平移向量进行估算。这些实施 例可针对用户平移小向量Ar将像素平移向量计算为(-ΔΓχ/ν,-Ar/zO,然后它被按比 例缩放以反映显示器的像素大小。此公式反映了远处的物体要比近处的物体移动的少一 些。它也反映了像素移动的方向与用户移动的方向相反。一个或多个实施例可将像素平 移矩阵用于重新渲染近似,它将用户转动和用户平移的上述效果进行合并,举例来说,诸如
[0018] 概括来说,基于用户姿势的改变,通过使用用于有效和近似重新渲染图像的技术, 本发明的实施例实现了一种低延迟虚拟现实显示。这种技术包括,但不限于,通过根据用户 运动计算的像素平移向量平移像素。一个或多个实施例可提供其他特征,诸如填充由图像 扭曲产生的空洞,并在显示渲染的图像前应用校正以将它们与用户的当前姿势进行同步。
【附图说明】
[0019] 通过连同下述附图一起提出的其下文更具体的描述,本发明的上述和其他方面、 特征以及优点将更为明显。
[0020] 图1图示了低延迟虚拟现实显示系统的至少一个实施例的关键组件,为了说明它 配置有显示器、传感器以及嵌入在虚拟现实护目镜中的一些处理模块,以及由无线连接的 移动设备执行的渲染。
[0021] 图2不出了图1所不实施例的尚等级架构图。
[0022] 图3示出了图2所示实施例的主要渲染活动的泳道图。
[0023] 图4图示了使用像素平移实施低延迟重新渲染的系统的实施例。
[0024] 图4A图示了使用硬件加速重新渲染的系统的实施例,该重新渲染使用用于读取 帧缓冲器存储器的偏移寄存器。
[0025] 图5图示了如果用户姿势的变化低于一阈值则执行低延迟重新渲染的系统的实 施例。
[0026] 图6示出了图5所示实施例的主要渲染活动的泳道图。
[0027] 图7图示了针对用户姿势的最近变化使用低延迟校正执行后渲染修改至已渲染 场景的系统的实施例。
[0028] 图8示出了图7所示实施例的主要渲染活动的泳道图。
[0029] 图8A示出了使用姿势预测以降低姿势变化和显示器更新之间的显著延迟的系统 的实施例的泳道图。
[0030] 图9图示了将大于显示器的场景渲染在离屏缓冲器中以填充由低延迟重新渲染 变换产生的空洞的系统的实施例。
[0031] 图10图示了通过从图像边界延伸像素填充由低延迟重新渲染变换产生的空洞的 系统的实施例。
[0032] 图11图示了通过模
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1