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

文档序号:9646327阅读:来源:国知局
了这一潜在的问题。姿势测量适于时 间8A01 (tj。在姿势测量完成后,重新渲染近似被计算并传送至显示器;显示器更新在时间 8A02(t2)完成。虽然避免了长延迟的完整渲染,在姿势测量开始和显示器更新完成之间仍 留有经过时间8A03(At)。因此,该显示器更新落后真实姿势此量At。
[0059] -个或多个实施例可采用姿势预测以进一步减少这一延迟。此手段的一个示例在 图8A的下半部进行说明。姿势测量8A05发生并获得姿势仏。代替于将此姿势仏直接传 递至图像扭曲器,该系统使用姿势测量和显示之间的已知延迟8A03(At)以预测将在显示 器更新将完成的时间8A30出现的姿势。在这一说明性实施例中,使用在前姿势样本8A04 作出姿势变化的推断,即测量的姿势%。假设姿势测量之间的采样间隔为As,则姿势预测
d匕计算将姿势认为是三维空间的刚体变换,使用用于表 示这些变换的组合的乘法。预测的姿势8A20(Q2)被提供至用于重新渲染近似的图像扭曲 器。因此,在时间8A30完成的该显示过程与用于生成显示的预测姿势的时间同步。
[0060] 这一姿势预测计算8A06是说明性示例;一个或多个实施例可使用任意方法基于 一个或多个先前姿势样本和任意其他可用信息预测未来的姿势。一个或多个实施例可使用 预测任意身体部位的位置或朝向的未来轨迹的任意方法。一个或多个实施例的预测方法例 如还可将用户运动的已知局限考虑在内。一个或多个实施例可使用监视用户随着时间的运 动以基于先前运动预测最可能的后续运动的适合的姿势预测技术。
[0061] 图8A图示了用于图像扭曲的姿势预测的用法。一个或多个实施例也可将相似姿 势预测技术用于完整渲染。上文对用于图像扭曲的姿势预测的讨论也应用于完整渲染。一 个或多个实施例可生成发送至完整渲染过程的预测姿势,其中该预测姿势将姿势测量时间 与完整渲染后显示器更新的完成时间之间的期望的姿势变化考虑在内。一个或多个实施例 可将姿势预测技术用于图像扭曲和完整渲染其中一个或两者。
[0062] 在一些实施例中,由图像扭曲器应用的近似重新渲染变换可在转换的图像中产生 具有缺失像素的"空洞"。例如,返回图4所示的实施例,图像扭曲器通过像素平移向量460 将像素向左移位。这导致位于转换图像261的右边缘的"空洞"470,该空洞为缺失的像素。 实施例可采用多种策略或策略的组合以处理这些空洞。由一个或多个实施例采用的一种非 常简单的策略为使用相对"中性"的背景颜色填充空洞;在一些应用中,这可为小幅姿势变 化提供足够的现实感。然而,在其他应用中,这一简单的手段可能不足。
[0063]一个或多个实施例可通过渲染大于显示器的2D投影填充空洞。在这些实施例在 那个,更大2D投影的的扭曲可产生在显示区域内仍然完全适合的更新投影。图9退了采用 这一策略的实施例。在这一实施例在那个,场景渲染器根据3D模型141产生扩展的2D投 影901;此扩展的投影大于该显示区域。显示的图像161是渲染区域901的子集。为了说 明,我们示出了对图像应用向右像素平移的图像扭曲器123的效果。并不应用空洞填充策 略的一个实施例会产生转换图像111a,它在位于显示器左边缘的区域911中具有确实的像 素。在图9的实施例中,扩展的渲染投影901的像素被存储在离屏缓冲区中。然后,图像扭 曲器按需从此离屏缓冲区中取出像素以填充由扭曲产生的空洞。在图9中,来自山体902 的像素从离屏缓冲区中取出以填充空洞911,导致改进的重新渲染投影,其中物体921填充 该空洞。对于离屏像素缓冲区,实施例可使用任何期望尺寸和形状。
[0064]产生扩展渲染区域的策略的一个潜在缺陷在于它需要用于渲染更多像素的额外 处理;因此,由于渲染延迟,它可能恶化延迟问题。一个或多个实施例可应用基于扭曲图像 的一些特征为缺失像素代替产生像素值的空洞填充策略。例如,图10中图示的系统的实施 例通过将像素从扭曲图像边缘向外增殖进入具有空洞的区域填充像素值。为了说明,图像 扭曲器123将2D投影161的像素右移,产生了缺失了像素的空洞911。在这一实施例中,图 像扭曲器找出对应于投影161的原始左边缘的边界1001 ;然后它使用增殖1002将像素值 从此边界增殖到左侧。这一像素增殖产生填充的区域1010而不是空洞911。在此说明性实 施例中,产生的图像111c没有显著的空洞;然而产生的山区形状并不精确地对应于原始3D 场景模型141中的形状。然而,在一些应用中,从边界增殖像素的这一简单策略可提供充足 的现实度。一个或多个实施例可应用其他策略以近似空洞中的像素值;例如,一个或多个实 施例可定位在扭曲的图像中与缺失像素的位置相对接近的一系列像素,并将插入这些像素 值以填充空洞。
[0065]由于从边界增殖像素的像素填充技术(或使用相似启发法)导致显示器边缘区域 并不完全忠实于原始3D场景模型,一个或多个实施例可应用多种模糊手段以使得这些区 域看起来不那么突兀。通过模糊填充的区域,近似像素值对于观看者来说不太显著。图11 图示了利用这一模糊的实施例。如前所述,图像扭曲器将像素右移,产生扭曲图像111a中 的空洞911。然后模糊转换1110被应用至空洞911中的像素。说明性的模糊转换1110简 单地将以每个缺失像素的坐标为中心的正方形区域中心的像素值取平均。111c中产生的模 糊区域1111不存在具有缺失像素值的明显空洞;此外该模糊不存在与图10所示平坦山顶 的明显伪影,区域1010。对局部附近的值取平均的模糊变换1110是简单说明;实施例可将 任何期望的变换应用至具有空洞的区域的像素,或者与这些区域接近的任何像素,以获得 期望的模糊效果。例如,代替简单平均,一个或多个实施例可应用高斯模糊滤波器。
[0066]我们现在讨论用于图像扭曲变换的说明性手段。这些变换是重新渲染近似,而不 是根据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与用户的距离为f。值 z#可为定值,或者它可由场景渲染器142a基于在3D模型141中物体与用户的平均或典型距 离提供。在由图像扭曲器使用的简化3D模型1210中,在3D空间中出现的所有物体均与用 户相距同一深度z*,因为所有物体已经被投射在具有zs=zp=zb=z*的深度1212的单 个平面1211上。这并不匹配原始3D场景模型141a中的真实深度1201a、1201b和1201c; 因此图像扭曲器为了高效而采用近似重新渲染,与真实3D场景模型141a相比这简化了 3D 渲染模型1210。
[0067]从位于深度z*的平面1211,图像扭曲器重新投射像素至与用户新姿势对应的修 改的可视面1220。平面1220的朝向基于从姿势分析器122接收的数据。此重新投射产生 修改的图像261。在图12所示的说明性示例中,可视面1220与图像161的初始可视面相比 顺时针转动;因此,在261中的物体被逆时针转动以形成重新渲染近似。
[0068] 图12中图示的实施例通过将原始2D投影映射至与用户的原始可视面平行的单个 平面然后将该平面重新投影至用户的修改的可视面来产生重新渲染近似。一个或多个实施 例可将2D投影映射至其他表面以执行近似重新渲染。例如,一些实施例可将2D投影的多 个部分映射至多个平面。一个或多个实施例可将2D投影映射至一个或多个弯曲表面,举例 来说诸如球面或圆柱面。
[0069] 数学上,一个或多个实施例可如下所述实施图12中图示的重新渲染近似。此实施 方式仅为说明;实施例可采用任何令人满意的变换、算法、映射或图像扭曲以执行重新渲染 近似。为了简化说明,我们假设2D投影是矩形图像,宽为w像素高为h像素,宽w表示f弧度 的水平视野。我们假设使用3D场景模型至可视面z= -1的透视投影变换然后加以从空间 坐标至像素坐标的缩放
来生成2D投影。可视面z= -1被映射至平面z= -z* 以形成用于重新渲染的3D模型;因此该可视面的点(X,y)被映射至坐标(z*x,z*y,-z*)。 用户姿势的后续变化被模型化为该可视面的刚体变换T,一般来说它包括绕单位向量轴益 角度为ΑΘ的转动R,然后是通过向量Ar的平移。每个点(z*x,z*y,-z*)然后投射至此新 的可视面上,并从空间坐标至像素坐标采用相同的缩放因子
进行重新缩放。
[0070] 认识到通过变换T变换新平面等价于将该平面z= 上的点变换T1然后将这 些点映射至原始可视面z= -1,至新可视面上的投影的推导可被简化。将点映射至可视面 z= -1是简单的:点(X,y,z)映射至
卜因此,重新植染近似包括下述步骤:
[0071] 映射T1包括通过向量-Ar的平移以及之后绕着单位向量轴总角度为-Δ Θ的转 动R。我们现在考虑用户姿势小幅变化的情况,其中Ar和△Θ两者都小。在这种情况下, 转动R可被近似为A&/+S(S)Λ其中S是叉积矩阵(S (u)v =uXν),〗是单位矩阵。对于 小幅变化,平移和转动的效果是近似累加的;
。当Ar=
,T1 (x0, y0, ζ0) = (χ0- Δ Γχ- ωyZ〇 Δ θ + ω zy0 Δ Θ,y〇_Ary+wxz〇A θ-ωζχ0Δ θ,ζ〇-Δ;τζ-ωχγ〇Δ θ+ωγχ〇Δ Θ)。因此
[0072] 在x和y小的情况下,这些公式可被进一步简化,这对应于像素相对接近原始2D 投影的中心。继续假设Ar和△Θ两者都小,上文的很多项都是二阶表达式,举例来说诸 如yAΘ。忽略这些二阶项,我们近似地得到:
[0073] 此外,对于小的ΔΓ,分母可被忽略为一阶,因为
:并且Arz/Z*与分子中的项的乘积包括二阶项。因此,我们可 使用重新渲染近似:

[007
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1