用于在真实世界3D环境中放置增强或混合现实应用的虚拟对象的方法和设备

著录项
  • CN201780077891.2
  • 20171129
  • CN110073417A
  • 20190730
  • 交互数字CE专利控股公司
  • 卡罗琳·巴亚尔;皮埃雷克·茹埃;马蒂·弗雷德蒂
  • G06T19/00
  • G06T19/00 G06T19/20

  • 法国巴黎
  • 法国(FR)
  • 20161215 EP16306684.8
  • 中科专利商标代理有限责任公司
  • 倪斌
  • 20190614
摘要
一种用于在真实世界3D环境中放置增强或混合现实应用的虚拟对象的方法,在增强或混合现实应用的运行时间选择(14)在真实世界3D环境中预定的至少两个候选插入区域的有限集合中的一个候选插入区域来用于在真实世界3D环境中放置虚拟对象,所述选择基于针对候选插入区域中的每一个组合以下每一个之间的关系的标准:真实世界3D环境,针对虚拟对象在候选插入区域中的放置而考虑的所述虚拟对象,以及用户位置;并且将虚拟对象插入(14)所述选择的候选插入区域中。
权利要求

1.一种用于在真实世界3D环境中放置增强或混合现实应用的虚拟对象(71)的方法,其特征在于所述方法包括:

在所述增强或混合现实应用的运行时间选择(14)在所述真实世界3D环境中预定的至少两个候选插入区域(31-34)的有限集合中的一个候选插入区域来用于在所述真实世界3D环境中放置所述虚拟对象,所述选择基于针对所述候选插入区域中的每一个组合以下每一个之间的关系的标准:

所述真实世界3D环境,

针对所述虚拟对象在所述候选插入区域中的放置而考虑的所述虚拟对象,以及

用户位置;并且

将所述虚拟对象插入(14)所选择的候选插入区域中。

2.根据权利要求1所述的方法,其中所述候选插入区域在所述运行时间之前可用。

3.根据权利要求1或2所述的方法,包括:

从至少一个存储单元中检索所述候选插入区域;以及

输出关于所述虚拟对象在所述真实世界环境中的所述插入的数据以进行显示,

并且其中所述候选插入区域中的所述一个候选插入区域的所述选择和所述虚拟对象的所述插入由至少一个处理器执行。

4.根据权利要求1至3中任一项所述的方法,其中所述候选插入区域中的每一个与至少一个插入点相关联,

其中所述候选插入区域中的所述一个候选插入区域的所述选择包括选择所述候选插入区域的所述插入点中的一个,

并且其中所述虚拟对象的所述插入包括将所述虚拟对象插入所选择的候选插入区域中的所选择的插入点。

5.根据权利要求1至4中任一项所述的方法,包括:在所述运行时间之前,产生与所述虚拟对象与所述候选插入区域之间的几何兼容性有关的所述标准中的至少一个。

6.根据权利要求1至5中任一项所述的方法,其中所述标准包括:

针对所述候选插入区域中的每一个,所述候选插入区域中的所述虚拟对象的匹配比例。

7.根据权利要求1至6中任一项所述的方法,其中所述候选插入区域中的每一个与至少一个插入点相关联,并且其中所述标准包括以下中的至少一个:

针对所述候选插入区域中的每一个的所述插入点或每个插入点,所述插入点与所述真实世界3D环境中的感兴趣区域之间的至少一段距离;以及

针对所述候选插入区域中的每一个的所述插入点或每个插入点,所述插入点与已经存在于所述真实世界3D环境中的另一虚拟对象之间的至少一段距离。

8.根据权利要求1至7中任一项所述的方法,其中所述候选插入区域中的每一个与至少一个插入点相关联,并且其中所述标准包括:

针对所述候选插入区域中的每一个的所述插入点或每个插入点,所述插入点与所述用户位置之间的距离。

9.根据权利要求1至8中任一项所述的方法,其中所述标准包括:

针对所述候选插入区域中的每一个,所述虚拟对象相对于当前用户视野的重叠。

10.根据权利要求1至9中任一项所述的方法,其中所述标准包括:

针对所述候选插入区域中的每一个,根据所述虚拟对象在所述候选插入区域中的最大缩放比例以及根据所述用户位置与在所述候选插入区域中缩放的所述虚拟对象之间的距离而得出一旦在所述候选插入区域中呈现的所述虚拟对象的大小。

11.根据权利要求1至10中任一项所述的方法,其中所述候选插入区域中的每一个与至少一个插入点相关联,并且其中所述标准包括以下中的至少一个:

针对所述候选插入区域中每一个的所述插入点或每个插入点,在所述插入点处将所述虚拟对象插入所述候选插入区域中之后,从至少一个感兴趣区域的所述用户位置的可见性;

针对所述候选插入区域中每一个的所述插入点或每个插入点,在所述插入点处所述虚拟对象被插入所述候选插入区域中之后,从所述虚拟对象的所述用户位置的可见性;以及

针对所述候选插入区域中每一个的所述插入点或每个插入点,在所述插入点处将所述虚拟对象插入所述候选插入区域中之后,从所述用户位置观察到的背景的辐射测量。

12.根据权利要求1至11中任一项所述的方法,其中与在所述运行时间对所述虚拟对象的执行并行地执行针对至少一个另外的虚拟对象的所述选择和所述插入。

13.一种计算机程序产品,包括程序代码指令,用于当在计算机或处理器上执行所述程序时,实现根据权利要求1至12中任一项所述的方法。

14.一种设备(80),用于在真实世界3D环境中放置增强或混合现实应用的虚拟对象(71),所述设备包括计算机器(82),所述计算机器被配置成:

在所述增强或混合现实应用的运行时间选择在所述真实世界3D环境中预定的至少两个候选插入区域的有限集合中的一个候选插入区域来用于在所述真实世界3D环境中放置所述虚拟对象,所述选择基于针对所述候选插入区域中的每一个组合以下每一个之间的关系的标准:

所述真实世界3D环境,

针对所述虚拟对象在所述候选插入区域中的放置而考虑的所述虚拟对象,以及

用户位置;并且

将所述虚拟对象插入所述选择的候选插入区域中。

15.根据权利要求14所述的设备(80),其特征在于所述计算机器(82)被配置用于执行根据权利要求2至12中任一项所述的方法。

说明书
技术领域

本发明的领域是增强现实(AR)和混合现实(MR)的领域。更具体地,本发明涉及用于在真实世界3D环境中放置增强或混合现实应用的虚拟对象的解决方案(方法和设备)。

增强现实(AR)应用是指真实世界环境的实时视图,其元素通过计算机生成的(CG)内容(诸如视频或图形)来增强。在混合现实(MR)中,CG内容不仅覆盖在真实世界的俯视图上,而且它真实地与真实世界环境相互作用,并且数字和物理现实无缝地混合在一起。

在AR或MR应用中,视觉CG内容在给定位置被插入真实3D环境中。这个位置一般是:

·相对于预定义的视觉2D/3D图案(例如工业应用)定义,由空间坐标(例如,基于室外位置的应用)或屏幕坐标(例如Google GlassTM应用)预定,

·或由用户手动选择(例如交互式应用)。

可以相对于视觉图案的大小预定或定义CG内容的比例。

然而,在不受控制的复杂真实世界3D环境中发生的AR或MR应用中,最佳位置和比例取决于真实世界环境,并且不能完全提前指定。例如,对于在用户的起居室中将虚拟对象插入混合现实中,有必要理解和分析真实场景的布局,还有它的辐射测量、虚拟对象的几何和外观、用户位置以及应用本身的目的。实际上,虚拟对象的最佳放置取决于引用CG内容(即虚拟对象)、真实世界环境和应用的补充规则和约束。

已知的解决方案是使用特征检测或对象识别技术来指定用于插入的相关位置。在替代已知的解决方案中,Microsoft HololensTM眼镜使用锚点的概念,其可以由用户选择或使用图像分析技术自动定位。在专利US 2014/0210784中描述的另一替代已知解决方案中,控制器调整虚拟对象的位置和比例以使其与用户的视野重叠。

然而,这些已知的解决方案没有将所有约束条件一起考虑,并且不能保证用于插入虚拟对象的位置对于用户来说是最佳的。

A.E.Breen等人在“用于增强现实的交互式遮挡和自动对象放置(InteractiveOcclusion and Automatic Object Placement for Augmented Reality)”,计算机图形论坛(Computer Graphics Forum),Wiley-Rlackwell Publishing LTD,第15卷,n°3,1996年中描述了另一种解决方案。根据该方案,虚拟对象从初始位置自动移动,直到它们与AR中的静态真实对象接触,从正在使用的真实世界环境的图像和碰撞检测算法得出校准数据使得能够相对于静态真实对象执行虚拟对象的自动对象放置。在实现方式中,虚拟对象在由用户任意定义的“重力”矢量的方向上递增地移动(转动和旋转),直到检测到例如与真实桌子、真实地板或真实墙壁的碰撞。

尽管对于实现真实的AR表示具有吸引力,但在许多情况下,该解决方案可能证明是不够的。由于它是增量方法,因此需要用户提供的初始位置。并没有自动查有效初始位置因此可以自动化该过程的解决方案。即使它可以自动化,也不会考虑相邻对象或缩放参数,并且可能证明例如当虚拟对象对于桌子而言太大或者当附在墙上时相对于AR场景的其他部分看起来很不优美时,它是不合适的。否则,用户需要做出决定,特别是关于“重力”矢量的选择。而且,布置虚拟对象的位置可能不是最佳的并且仅对应于第一次发生的碰撞。另外,递增地确定虚拟对象的适当定位和取向有时可能需要显著且不可预测的计算成本,这对于实时应用是不利的。

在Wild-Tangent的专利申请WO 2006/074100中,公开了一种用于测量放置在虚拟多维环境中的对象的功效的系统,该系统适用于商业通信,诸如例如广告。无论要包括在多维环境中的对象类型如何(诸如音频、视频、文本和图形),本发明都集中在适当的相关度量上。因此开发了各种评估标准,使得能够基于相对值和/或影响比较来最佳地放置对象。

虽然提供了有趣的工具,但该系统完全未解决对象放置的潜在领域。在这方面,其看起来适合于商业通信运营商在虚拟场景中对相关广告位置的适当选择,而不是AR或MR应用中的自动放置确定,更不用说实时自动放置确定。

本发明特别针对在真实世界3D环境中潜在有效且自动地放置AR或MR应用的虚拟对象,其有利地使得能够考虑用户感知以及真实世界3D环境的内容,同时实现实时执行。

本发明还特别涉及在真实世界3D环境中放置AR或MR应用的虚拟对象,其可以有利地允许克服现有技术解决方案的上述缺点。

本发明的特定方面涉及一种用于在真实世界3D环境中放置增强或混合现实应用的虚拟对象的方法,该方法包括:

-在增强或混合现实应用的运行时间选择在真实世界3D环境中预定的至少两个候选插入区域的有限集合中的一个候选插入区域来用于在所述真实世界3D环境中放置该虚拟对象,该选择基于针对候选插入区域中的每一个组合以下每一个之间的关系的标准:

*真实的3D环境,

*针对该虚拟对象在该候选插入区域中的放置而考虑的虚拟对象,以及

*用户位置;并且

-将虚拟对象插入所选择的候选插入区域中。

所提出的解决方案的一般原理是在增强现实或混合现实中自动确定要插入到真实世界3D环境中的虚拟对象的最佳放置和可能缩放,同时考虑若干补充标准。这些标准基于真实世界3D环境的特性(例如,在体验之前在现场计算),基于虚拟对象的特性(例如,由内容提供者预定)并基于用户位置(例如,在体验期间在线计算)。整个计算例如由呈现设备执行,或者由呈现设备发送到处理单元。虚拟对象可以是静态对象或预定义动画(不涉及物理引擎)。

候选插入区域是“预定的”这一事实意味着在执行上述选择和插入的两个步骤之前已经确定候选插入区域。根据特定特征,候选插入区域在运行时间之前可用。

因此,在静态真实世界3D环境的情况下,允许在运行时间期间减少计算资源(例如,计算时间)。在特定实施例中,该方法包括在运行时间之前确定候选插入区域。在替代实施例中,在动态真实世界3D环境的情况下,在运行时间期间预期用于下一次插入的候选区域的下一选择。

虚拟对象被视为组合标准的一部分,具体是“针对该虚拟对象在该候选插入区域中的放置”,并且不止如此还独立于虚拟对象在该候选插入区域中的放置。即,考虑到它的放置,例如关于缩放、到用户的距离、与真实世界场景的元素的关系和/或与放置或要放置在AR或MR场景中的其他虚拟对象的关系。否则的话,在AR或MR场景中“具体地”考虑虚拟对象,而不是独立于该场景“抽象地”考虑。

如上所述,候选插入区域的预定可以有利地提供非常强大的工具,用于在运行时间适当地选择虚拟对象的最佳适合放置。通过显著且有意地减少放置虚拟对象的运行时间的操作时间损失,这与先前提到的现有技术解决方案形成对比。

有利地,预定候选插入区域的数量包括在2和20之间,并且更有利地在3和10之间。

根据特定特征,该方法包括:

-从至少一个存储单元检索候选插入区域;以及

-输出关于虚拟对象在真实世界环境中的所述插入的数据以进行显示,

并且候选插入区域中的所述一个的所述选择和虚拟对象的所述插入由至少一个处理器执行。

根据特定特征,每个候选插入区域与至少一个插入点相关联。候选插入区域中的所述一个的所述选择包括选择候选插入区域的插入点中的一个。虚拟对象的所述插入包括将虚拟对象插入选择的候选插入区域中的选择的插入点。

因此,在最佳插入点处执行插入。

根据特定特征,该方法包括,在运行时间之前,产生与虚拟对象和候选插入区域之间的几何兼容性有关的至少一个所述标准。

该预计算允许在运行时间期间减少计算资源(例如,计算时间)。

根据特定特征,该标准包括:对于每个候选插入区域,该候选插入区域中的虚拟对象的匹配比例。

在特定实施例中,虚拟对象的所述插入包括向虚拟对象应用与选择的候选插入区域中的该虚拟对象相关联的匹配比例。

根据特定特征,每个候选插入区域与至少一个插入点相关联,并且标准包括以下中的至少一个:

-针对每个候选插入区域的每个插入点,在该插入点与真实世界3D环境中的感兴趣区域之间的至少一段距离;以及

-针对每个候选插入区域的每个插入点,插入点与已经存在于真实世界3D环境中的另一虚拟对象之间的至少一段距离。

根据特定特征,每个候选插入区域与至少一个插入点相关联,并且标准包括:

-针对每个候选插入区域的每个插入点,插入点与用户位置之间的距离。

根据特定特征,该标准包括:针对每个候选插入区域,虚拟对象相对于当前用户视野的重叠。

根据特定特征,该标准包括:针对每个候选插入区域,根据虚拟对象在候选插入区域中的最大缩放比例以及根据用户位置与如在候选插入区域中缩放的虚拟对象之间的距离得出一旦在候选插入区域中呈现的虚拟对象的大小。

根据特定特征,每个候选插入区域与至少一个插入点相关联,并且标准包括以下中的至少一个:

-针对每个候选插入区域的或每个插入点,在插入点处将虚拟对象插入候选插入区域中之后,从至少一个感兴趣区域的用户位置的可见性;以及

-针对每个候选插入区域的每个插入点,在插入点处插入候选插入区域中之后,从虚拟对象的用户位置的可见性。

根据特定特征,标准包括:针对每个候选插入区域的每个插入点,在插入点处将虚拟对象插入候选插入区域中之后,从用户位置观察到的背景的辐射测量。

根据特定特征,与在运行时间对虚拟对象的执行并行,对至少一个另外的虚拟对象执行所述选择和所述插入。

本发明的另一方面涉及一种计算机程序产品,包括程序代码指令,用于当在计算机或处理器上执行该程序时实现在其任何一个不同实施例中的上述方法(用于在真实世界3D环境中放置增强或混合现实应用的虚拟对象)。

本发明的另一方面涉及一种存储上述计算机程序产品的非暂时性计算机可读载体介质。

本发明的另一方面涉及一种用于在真实世界3D环境中放置增强或混合现实应用的虚拟对象的设备,该设备包括计算机器,其被配置成:

-在增强或混合现实应用的运行时间选择在真实世界3D环境中预定的至少两个候选插入区域的有限集合中的一个候选插入区域来用于在真实世界3D环境中放置该虚拟对象,该选择基于针对候选插入区域中的每一个组合以下每一个之间的关系的标准:

*所述真实世界3D环境,

*关于虚拟对象在该候选插入区域中的放置而考虑的所述虚拟对象,以及

*用户位置;并且

-将所述虚拟对象插入选择的候选插入区域中。

根据设备的特定特征,计算机器还被配置成执行符合上述任何一个实施例的方法(用于在真实世界3D环境中放置增强或混合现实应用的虚拟对象)。

该设备可以在例如在手机、平板电脑和头戴式显示器之间选择的装置中实现。

本发明的另一方面涉及一种用于在真实世界3D环境中放置增强或混合现实应用的虚拟对象的设备,该设备包括:

-选择装置,其被配置成在增强或混合现实应用的运行时间选择在真实世界3D环境中确定的至少两个候选插入区域的有限集合中的一个候选插入区域来用于在所述真实世界3D环境中放置该虚拟对象,该选择基于针对候选插入区域中的每一个组合以下每一个之间的关系的标准:

*真实的3D环境,

*关于该虚拟对象在该候选插入区域中的放置而考虑的虚拟对象,以及

*用户位置;以及

-插入装置,其被配置成将虚拟对象插入所选择的候选插入区域中。

用于放置虚拟对象的设备有利地被配置成执行上述方法的任何执行模式以用于放置虚拟对象。

实施例的其他特征和优点将从以下通过指示性和非穷举性示例以及从附图给出的描述中显现,其中:

-图1是所提出方法的特定实施例的流程图;

-图2示出了真实世界3D环境的示例;

-图3示出了在图2的环境下图1的步骤11的输出;

-图4示出了在图2的环境下图1的步骤12的输出;

-图5示出了在图2的环境下图1的步骤13的输出;

-图6示出了在图2的环境下图1的步骤14的输出;

-图7示出了要插入的虚拟对象的示例,以及对应的占用体积;并且

-图8示出了根据特定实施例的设备的简化结构。

在本文件的所有附图中,类似的元件和步骤由相同的附图标记表示。

图1是所提出的用于在真实世界3D环境中自动放置AR(增强现实)或MR(混合现实)应用的虚拟对象的方法的特定实施例的流程图。在该特定实施例中,该方法包括四个连续的步骤11至14。

在下面描述的特定实现方式中,该方法由呈现设备(例如智能手机、平板电脑或头戴式显示器)执行。在替代实现方式中,该方法由呈现设备外部的计算设备执行。在后一种情况下,整个计算的结果由计算设备传输到呈现设备。

图2中示出了真实世界3D环境的示例。它包括墙壁21、地面22、TV 23、电视柜24、桌子25和花瓶26。

虚拟对象是预定义的动画(即,动画的占用体积是预定的并且不依赖于环境)或静态对象。在下面描述的示例中,虚拟对象是图7中所示的预定义动画71,具有占用体积72。

例如,虚拟对象与以下参数相关联以获得最佳呈现(在创作期间预定):

·最小和最大比例(称为“minScale”和“maxScale”);

·取向范围(取向可以预定义,与另一个对象相关,与用户相关,或任意);

·在比例1下的总占用体积;

·指示插入区域的垂直或水平取向的标志。

AR或MR应用可以涉及要插入的多个虚拟对象,只要它们的放置可以单独优化即可。

在以下描述中,假设我们可以访问深度数据。理想情况下,呈现设备能够捕获深度数据(例如,使用Google TangoTM技术或Microsoft HololensTM)。如果不是这种情况,则可以使用深度相机(例如,Intel RealSenseTM深度相机)预先扫描真实环境,但场景必须是静态的。

步骤11.预处理:真实场景分析和候选插入区域的确定。

首先使用标准的基于3D的场景分析技术预定义一组候选插入区域。换句话说,在AR或MR应用的运行时间之前候选插入区域就可用。在运行时期间,例如从至少一个存储单元检索它们。

使用深度传感器扫描真实场景并识别候选插入区域。在没有损失太多普遍性的情况下,将插入区域约束为水平或垂直平面区域。

在特定实施例中,步骤11包括:

·捕获描述真实场景的3D点云;

·提取所有垂直和水平平面区域(例如使用霍夫变换或正态分析的标准方法);

·描绘每个平面区域(例如,使用具有边缘长度阈值的Delaunay三角剖分);

·过滤出小区域。

该步骤11的输出是定义候选插入区域的一组描绘的平面区域。

图3示出了在图2的环境下步骤11的输出。有四个候选插入区域:分别对应于墙壁、电视柜、地面和桌子的阴影区域31至34。

步骤12.表征候选插入区域和虚拟对象之间的几何兼容性。

为了在运行时间期间减少计算时间,可以在实际运行AR或MR应用之前预先计算表征候选插入区域和虚拟对象之间的几何兼容性的一些测量。这些测量仅基于虚拟对象布局,并且在插入时不考虑用户位置。

在该计算步骤期间,还针对每个候选插入区域确定单个插入点或几个(“最佳”)插入点的列表。在特定实施例中,对于每个候选插入区域,单个或每个插入点是预定的。例如,对于具有紧凑和对称形状(诸如规则圆或多边形)的候选插入区域,可以选择中心作为插入点。对于不规则形状,可能的实现方式是选择以规则或随机的方式分布在候选插入区域中的几个插入点(例如五个)。在替代实现方式中,对于每个候选插入区域(该区域的每个点的边缘值为零,并且当远离边缘移动时该值增大,在区域的测地中心达到最大值)预先计算(仅一次)测地距离图,并且插入点采用有利于远距离的采样函数进行采样。

在另一个实施例中,在步骤12期间既不预定也不预先计算插入点,而是在AR或MR应用的运行时间期间(即在下面描述的步骤13期间)自动计算。这意味着(例如,插入点和预定义的感兴趣区域之间的距离,以及从插入点到其他虚拟对象的距离)在步骤13而不是步骤12中执行需要知道的插入点的测量。

当启动应用时,呈现设备可以访问要插入的虚拟对象的占用体积(对象的简化代理或包含整个动画的简单边界形状),以及占用多边形(占用体积与接触面的相交部分)。如果未明确提供占用体积,则可以在启动时由呈现设备进行计算。

然后,对于每个候选插入区域,呈现设备在特定实施例中计算以下测量:

·虚拟对象可以在候选插入区域内达到的最大大小:

使用占用多边形以确定虚拟对象在候选插入区域内适合的比例;

检查占用体积与描述真实场景的3D点云不相交;

存储对应的插入点和比例(称为“matchScale”,其中:minScale<=matchScale<=maxScale,其中“minScale”和“maxScale”是与虚拟对象相关联的最小和最大比例值)。

·对于每个插入点,以及对于真实世界3D环境中的至少一个预定义感兴趣区域(ROI)(例如视觉标记,与应用程序相关的对象(电视、沙发......)等),插入点和预定义的感兴趣区域之间的距离;

·对于每个插入点,以及对于已经存在于真实世界3D环境中的至少一个其他虚拟对象,从插入点到另一个虚拟对象的距离。

根据可用的计算能力,可以使用几种方法来确定占用多边形的最大大小:

-方法n°1:比较候选插入区域中的内切盘和占用多边形的边界圆。这种方法n°1非常快,但不是最佳的,特别是在占用多边形具有细长形状的情况下;

-方法n°2:使用方法n°1初始化比例。然后使用多边形之间的包含测试来增加比例并检查包含。根据输入虚拟对象的取向范围,测试不同的取向值以到最佳的一个取向值(导致最大比例)。这种方法n°2较慢但对任何形状都是准确的;

-中间方法:使用强度测量来决定是否用圆近似多边形。

在实施例中,可以为相同的候选插入区域存储几个插入点,每个插入点与其自己的比例(“matchScale”)和距离测量相关联。

图4示出了在图2的环境下步骤12的输出。候选插入区域(图3中的31至34)与取决于用户环境和虚拟对象的虚拟对象相关的测量41至44相关联。对于每个候选插入区域,测量包括最佳插入点列表(“P=(X,Y,Z),...”)(一些示例由黑叉给出)、对应的最佳比例(“BestScale=...”),以及表征真实世界3D环境和虚拟对象之间关系的各种距离和大小测量(“D1=...,D2=......等”)。例如,区域31没有任何可接受的插入点,因为它是与虚拟对象要求不兼容的垂直区域。区域32和区域34具有低于1的“最佳比例”,因为它们小于要插入的虚拟对象。注意,区域33与三个插入点相关联(其中一个插入点部分地隐藏在花瓶26后面,而另一个位于桌子24下方),因为在这个阶段没有考虑用户位置。

步骤13.基于用户位置计算匹配分数。

在AR或MR应用的运行时间期间,每当必须插入新的虚拟对象时,相对于插入时的用户位置,针对该虚拟对象的每个候选插入点计算匹配分数。匹配分数被定义为虚拟对象相关和用户相关的各个分数的加权和。使用在0和1之间变化的归一化函数将每个参数与各个分数相关联。例如,根据应用目的在内容创作期间设置权重,但是它们也可以具有默认值,或者由用户个性化或调整。

在特定实施例中,使用在0和1之间变化的归一化函数来获得各个分数,对于每个候选插入区域的每个插入点将其应用于以下参数(非穷举列表):

·预先计算的几何测量(参见步骤12的输出):

匹配比例;

对于在真实世界3D环境中的至少一个预定义的感兴趣区域(ROI),插入点与预定义的感兴趣区域(ROI)之间的距离;

对于已经存在于真实世界3D环境中的至少一个其他虚拟对象,距插入点和另一个虚拟对象的距离;

·用户相关的测量(未在步骤12中计算):

用户距离(即插入点与用户之间的距离);

虚拟对象相对于当前用户视野的重叠(即:虚拟对象是被插入在用户视野中?);

从“maxScale”和用户距离得出的所呈现区域的大小(即,与在预处理期间计算的3D大小相反,是一旦在候选插入区域中呈现的虚拟对象的像素大小);

在插入点处虚拟对象被插入候选插入区域之后,虚拟对象的可见性(从用户位置)(例如使用z缓冲区);

在插入点处将虚拟对象插入候选插入区域中之后,ROI的可视性(从用户位置);

在插入点处将虚拟对象插入候选插入区域中之后,从用户位置观察到的背景的辐射测量。

步骤13的输出例如是具有减少的匹配分数的插入点列表(每个候选插入区域至少一个)。

图5示出了在图2的环境下步骤13的输出。取决于真实世界3D环境、虚拟对象和用户位置,候选插入区域(图3中的31至34)的插入点(黑叉)与最终兼容性分数相关联(S1至S4)。对于每个插入点,最终兼容性分数是在虚拟对象插入之前,在步骤12期间计算的虚拟对象相关测量与仅在(AR或MR应用的)运行时间期间计算的用户相关测量的加权和。区域31的任何插入点具有分数0,因为区域31与虚拟对象不兼容。区域32和34的插入点具有小的分数,因为它们需要缩小虚拟对象。区域33的所选插入点具有最佳分数,因为区域33足够大并且因为从用户的视角是可见的。区域33的另外两个插入点(一个在花瓶26后面,另一个在桌子24下面)已被丢弃。

步骤14.选择虚拟对象的最佳放置。

在特定实施例中,步骤14包括:

·选择具有最佳分数的候选插入区域(和对应的插入点)以及对应的比例;

·执行插入;

·从候选插入区域列表中移除选择的插入区域(如果必须同时呈现多个虚拟对象,则是必需的),将其替换为具有更新描述的新虚拟对象;

·必要时更新初始分数(特别是与虚拟对象的距离)。

当移除虚拟对象时,还应更新候选插入区域和分数。

图6示出了在图2的环境下步骤14的输出。虚拟对象71被插入最佳插入点,该插入点是区域33的插入点(黑叉)。

在特定实施例中,与在AR或MR应用的运行时间对前述(第一)虚拟对象的执行并行,对至少一个另外的虚拟对象执行步骤11至14。

在其他实施例中,实现以下补充选项中的至少一个:

·条件呈现:如果任何候选插入区域无法满足要求,则不呈现(如果所有初始化分数均等于零,则可能在启动时警告用户);

·如果用户对选择的插入点和比例不满意,他可以转到下一个提案;

·如果真实世界3D环境动态改变,则候选插入区域和初始化分数应该在其改变之处进行更新;

·如果用户在真实世界3D环境中移动,则可以改变插入点(在应用程序已授权并需要的情况下)。

图8示出了根据特定实施例的计算设备80的简化结构。设备80包括非易失性存储器83(例如,只读存储器(ROM)或硬盘)、易失性存储器81(例如,随机存取存储器或RAM)和处理器(计算机器)82。非易失性存储器83是非暂时性计算机可读载体介质。其存储可执行程序代码指令830,其由处理器82执行以便能够实现上述方法。在初始化时,程序代码指令830从非易失性存储器83传送到易失性存储器81,以便由处理器82执行。易失性存储器81同样包括用于存储该执行所需的变量和参数的寄存器。输入包括虚拟对象84和用户位置85。输出86包括其中虚拟对象71在最佳插入点插入的真实世界3D环境。

上述方法的所有步骤同样可以由设备80实现:

·通过执行由可重编程计算机器(诸如PC类型设备、DSP(数字信号处理器)或微控制器)执行的一组程序代码指令。这组程序代码指令可以存储在可拆卸的或不可拆卸的非暂时性计算机可读载体介质中(例如软盘、CD-ROM或DVD-ROM);或者

·通过专用计算机器或组件,诸如FPGA(现场可编程门阵列)、ASIC(专用集成电路)或任何专用硬件组件。

换句话说,本发明不限于呈计算机程序指令形式的纯粹基于软件的实现方式,而是还可以以硬件形式或组合硬件部分和软件部分的任何形式实现。

本文发布于:2024-09-25 13:23:03,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/71295.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议