CN115066281A - 增强现实(ar)应用的姿势评估数据 - Google Patents

增强现实(ar)应用的姿势评估数据 Download PDF

Info

Publication number
CN115066281A
CN115066281A CN202180013669.2A CN202180013669A CN115066281A CN 115066281 A CN115066281 A CN 115066281A CN 202180013669 A CN202180013669 A CN 202180013669A CN 115066281 A CN115066281 A CN 115066281A
Authority
CN
China
Prior art keywords
data
timestamp
time
user device
application
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.)
Pending
Application number
CN202180013669.2A
Other languages
English (en)
Inventor
田江山
邓凡
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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Publication of CN115066281A publication Critical patent/CN115066281A/zh
Pending legal-status Critical Current

Links

Images

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/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • 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/0181Adaptation to the pilot/driver
    • 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
    • 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/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

描述了用于评估AR应用性能的技术。在示例中,在用户设备上执行AR应用。用户设备与服务器通信耦合并且在运动追踪系统的视场中。AR应用估计用户设备的姿势数据并将该姿势数据发送到服务器。运动追踪系统的追踪应用还并行检测用户设备的姿势并将所得的姿势数据发送到服务器。服务器的AR评估应用将估计姿势数据和检测姿势数据在至少时间维度上对齐,并将检测的姿势数据用作地面实况数据来评估估计的姿势数据并输出AR应用的评估。

Description

增强现实(AR)应用的姿势评估数据
背景技术
增强现实(augmented reality,AR)将虚拟内容叠加在用户的真实世界的视图上。随着AR软件开发工具包(software development kits,SDK)的发展,移动行业将智能手机AR带入主流。ARSDK通常提供6自由度(six degrees-of-freedom,6DoF)追踪能力。用户可以使用智能手机的摄像头扫描环境,智能手机实时执行视觉惯性里程计(visual inertialodometry,VIO)。一旦持续追踪了摄像头姿势,就可以将虚拟物体放置在AR场景中,以产生一种真实物体和虚拟物体融合在一起的错觉。
AR体验的质量取决于虚拟物体在AR场景中的放置情况。进而,虚拟物体的正确放置可以取决于AR追踪的执行情况。因此,本领域需要与执行和评估AR追踪相关的改进的方法和系统。
发明内容
本发明总体上涉及用于评估AR应用的性能(例如包括姿势估计的准确性)的方法和系统。
在示例中,一种系统包括用户设备,用户设备用于执行增强现实(AR)应用并发送指示用户设备的估计轨迹的第一数据,第一数据由AR应用生成并且包括第一时间戳,第一时间戳基于用户设备的第一本地时间生成。该系统还包括运动追踪系统,运动追踪系统用于发送指示用户设备的追踪轨迹的第二数据。该系统还包括计算机系统,计算机系统与用户设备和运动追踪系统通信耦合并且用于:确定计算机系统的第二本地时间和用户设备的第一本地时间之间的时间偏移,接收第一数据,将第一数据与第二时间戳关联,第二时间戳基于时间偏移生成并且不同于第一时间戳,接收第二数据,将第二数据与第三时间戳相关联,第三时间戳基于第二本地时间生成,基于第一数据、第二数据、第二时间戳、以及第三时间戳生成AR应用的评估。
在示例中,第一数据包括用户设备的第一姿势数据。第一姿势数据包括位置数据和方向数据,并且通过AR应用的同时定位与建图(simultaneous localization andmapping,SLAM)过程生成。
此外,第二数据包括用户设备的第二姿势数据。第二姿势数据由运动追踪系统生成。
通过与AR应用相关联的第一套接字接收第一姿势数据和第一时间戳。基于与运动追踪系统的运动追踪应用相关联的第二套接字接收第二姿势数据。
在示例中,确定时间偏移包括:在接收第一数据之前,从用户设备接收时间数据,时间数据指示第一本地时间,基于时间数据与第二本地时间的比较来确定时间偏移。
此外,第一数据具有第一数据模式,其中,时间数据具有第二数据模式,并且其中,第一数据模式不同于第二数据模式。
第一数据模式包括姿势数据和时间戳,其中,第二数据模式包括用户设备的标识符、第一本地时间、以及与生成第一数据相关联的时间基线。
在示例中,第一数据指示用户设备在第一时间戳中的一个第一时间戳的第一姿势。第二数据包括用户设备在第三时间戳中的一个第三时间戳的第二姿势。第一姿势基于第一时间戳和时间偏移与第二时间戳中的一个第二时间戳相关联。生成评估包括:确定第二时间戳与第一时间戳对应,基于第一姿势和第二姿势计算评估度量。
在示例中,在时间段内接收到第一数据。在该时间段内接收到第二数据。生成评估包括:基于第二时间戳和第三时间戳生成第一数据和第二数据之间的相对时间线,基于相对时间线确定来自第一数据的第一姿势数据和来自第二数据的第二姿势数据之间的关联,基于上述关联计算评估度量。
此外,基于经由用户接口接收的到计算机系统的评估应用的用户输入来定义评估度量。
在示例中,通过将第二数据用作地面实况数据并且将第一数据用作可变数据来生成评估。
在示例中,一种方法由计算机系统实现。该方法包括:基于在用户设备上执行增强现实(AR)应用,确定计算机系统的本地时间和用户设备的本地时间之间的时间偏移,从用户设备接收第一数据,第一数据指示用户设备的估计轨迹并且由AR应用生成,第一数据包括基于用户设备的本地时间生成的第一时间戳,将第一数据与第二时间戳相关联,第二时间戳基于时间偏移生成并且不同于第一时间戳,从运动追踪系统接收第二数据,第二数据指示用户设备的追踪轨迹,将第二数据与第三时间戳相关联,第三时间戳基于计算机系统的本地时间生成,基于第一数据、第二数据、第二时间戳、以及第三时间戳生成AR应用的评估。
在示例中,确定时间偏移包括:在接收到第一数据之前,从用户设备接收时间数据,时间数据指示用户设备的本地时间,基于时间数据与计算机系统的本地时间的比较来确定时间偏移。
此外,在时间段内接收到第一数据,其中,在该时间段内接收到第二数据。生成评估包括:基于第二时间戳和第三时间戳生成第一数据和第二数据之间的相对时间线,基于相对时间线确定来自第一数据的第一姿势数据和来自第二数据的第二姿势数据之间的关联,基于上述关联计算评估度量。
在示例中,第一数据包括姿势数据和第一时间戳。时间数据包括用户设备的标识符、第一本地时间、以及与生成第一数据相关联的时间基线。
在示例中,一个或多个非暂时性计算机存储介质存储有指令,上述指令在计算机系统上执行时使计算机系统执行操作。上述操作包括:基于在用户设备上执行增强现实(AR)应用,确定计算机系统的本地时间和用户设备的本地时间之间的时间偏移,从用户设备接收第一数据,第一数据指示用户设备的估计轨迹并且由AR应用生成,第一数据包括基于用户设备的本地时间生成的第一时间戳,将第一数据与第二时间戳相关联,第二时间戳基于时间偏移生成并且不同于第一时间戳,从运动追踪系统接收第二数据,第二数据指示用户设备的追踪轨迹,将第二数据与第三时间戳相关联,第三时间戳基于计算机系统的本地时间生成,基于第一数据、第二数据、第二时间戳、以及第三时间戳生成AR应用的评估。
在示例中,第一数据包括用户设备的第一姿势数据。第一姿势数据包括位置数据和方向数据,并且通过AR应用的同时定位与建图(SLAM)过程生成。
此外,第二数据包括用户设备的第二姿势数据。第二姿势数据由运动追踪系统生成。
此外,通过与AR应用相关联的第一套接字接收第一姿势数据和第一时间戳。基于与运动追踪系统的运动追踪应用相关联的第二套接字接收第二姿势数据。
在示例中,生成评估包括:基于第二时间戳和第三时间戳生成第一数据和第二数据之间的相对时间线,基于相对时间线确定来自第一数据的第一姿势数据和来自第二数据的第二姿势数据之间的关联,基于上述关联计算评估度量。
通过本发明相对于传统技术实现了许多益处。例如,本公开实施例涉及实现评估由用户设备上执行的AR应用进行的AR追踪的技术的方法和系统。这些技术可以对AR应用对用户设备的实际姿势(例如位置和方向)的追踪情况进行定量和定性测量。由此,可以改进AR应用和/或用户设备,并且可以改善AR追踪和产生的整体AR体验。
附图说明
将参考附图描述根据本公开各种实施例,在附图中:
图1示出了根据本公开至少一个实施例的包括用于AR应用的摄像头和惯性测量单元(IMU)传感器的用户设备的示例;
图2示出了根据本公开至少一个实施例的AR评估系统的示例;
图3示出了根据本公开至少一个实施例的时间偏移的示例;
图4示出了根据本公开至少一个实施例的将AR数据和运动追踪数据对齐以实现AR评估的示例;
图5示出了根据本公开至少一个实施例的示出AR评估系统的组件之间的交互的序列图的示例;
图6示出了根据本公开至少一个实施例的执行AR评估的流程的示例;以及
图7示出了根据本公开至少一个实施例的计算机系统的组件的示例。
具体实施方式
在以下描述中,将描述各种实施例。出于解释的目的,阐述了具体配置和细节以便提供对实施例的透彻理解。然而,对于本领域技术人员来说也显而易见的是,实施例也可以在没有具体细节的情况下实施。此外,为了不使所描述的实施例模糊,可以省略或简化众所周知的特征。
本公开实施例尤其针对评估在用户设备上执行的AR应用的性能。在示例中,可以通过收集AR应用生成的AR数据和运动追踪系统生成的地面实况数据来评估性能。AR数据包括AR应用估计的用户设备的姿势数据(例如用户设备的位置和方向)。随时间追踪估计的姿势数据,上述追踪指示AR应用估计的用户设备轨迹。地面实况数据包括由运动追踪系统检测的用户设备的姿势数据。还随时间追踪该姿势数据,上述追踪指示运动追踪系统检测的用户设备的实际轨迹(在本文中称为地面实况轨迹)。AR数据和地面实况数据是同步的(例如在时间维度上),从而可以基于地面实况轨迹对估计的轨迹进行适当的分析。估计的姿势数据的准确性可以从分析中导出,并且表示AR应用性能的示例评估。
为了说明,考虑以托管AR应用的智能手机作为示例。智能手机放置在运动追踪系统的视场内。此外,智能手机和运动追踪系统可以通信耦合到服务器。AR应用执行十分钟(或某个其他时间段)。在十分钟的AR会话期间,AR应用执行同步定位与建图(SLAM)过程,该过程以特定速率(例如每秒20帧或其他速率)估计智能手机的6DoF姿势。AR数据输出到服务器并且包括估计的6DoF数据和取决于速率的时间戳(例如每50毫秒的姿势,对应于每秒20帧的速率)。服务器接收并存储估计的6DOF数据以及相应的时间戳。同样,在十分钟的AR会话期间,运动追踪系统追踪智能手机的实际姿势并将追踪的数据发送到服务器。服务器接收实际的6DoF数据并生成对应于接收时间的时间戳。相应地,在AR会话结束时,服务器从智能手机收集了估计的6DoF数据和相关联的时间戳,从运动追踪系统收集了实际6DoF数据,并生成了实际6DoF数据的时间戳。服务器对估计的6DoF数据和给定时间戳的实际6DoF数据执行时间同步。一旦两组6DoF数据时间同步,服务器基于对两组数据的分析导出一个或多个度量,例如估计姿势与实际姿势之间的平均差及其方差。这些度量可以在用户界面上显示在AR应用性能评估报告中。
本公开实施例提供了各种技术优势。例如,传统系统未提供用于评估移动用户设备(例如智能手机)上AR应用的轨迹估计的框架。相比之下,本公开实施例能够独立于用户设备类型和/或这种用户设备的操作系统类型评估AR应用的性能。因此,实施例可扩展到不同的用户设备和操作系统。此外,实施例可以将用户定义的度量用于评估。因此,可以自定义评估以输出AR应用性能的定量和/或定性测量。通过可扩展和可定制,可以改进AR应用和/或用户设备。
图1示出了根据本公开至少一个实施例的包括用于AR应用的摄像头112和惯性测量单元(inertial measurement unit,IMU)传感器114的用户设备110的示例。AR应用可以由用户设备110的AR模块116实现。通常,摄像头112生成包括例如真实世界物体130的真实世界环境的图像。摄像头112还可以包括生成关于真实世界环境的深度数据的深度传感器,其中,该数据包括例如显示真实世界物体130的深度(例如,深度传感器和真实世界物体130之间的距离)的深度图。IMU传感器114可以包括陀螺仪和加速度计以及其他组件,并且可以输出包括例如用户设备110的方向的IMU数据。
摄像头112在AR会话中生成的图像的图像数据和IMU传感器114在AR会话中生成的IMU数据可以输入到由AR模块116执行的SLAM过程。进而,SLAM过程输出用户设备110相对于真实世界环境的6DoF姿势(例如,沿X、Y、Z轴的位置以及沿这些轴中的每个轴的旋转)和真实世界环境的地图。SLAM过程基于以特定帧速率输入的图像和IMU数据随时间追踪6DoF姿势和地图。6DoF姿势的追踪表示用户设备在真实世界环境中的估计轨迹110,并且该估计轨迹可以随时间映射到地图中的虚拟轨迹。6DoF姿势包括姿势数据,例如,沿X、Y、Z轴的位置数据以及沿这些轴中的每个轴的旋转数据。姿势数据和生成每个姿势数据时的时间戳(例如对应于帧速率的时间戳)示为AR模块116在AR会话期间生成的AR数据118的一部分。AR模块116可以实现为专用硬件和/或硬件和软件的组合(例如通用处理器和存储在存储器中并且可由通用处理器执行的计算机可读指令)。
在AR会话初始化(其中,该初始化可以包括校准和追踪)之后,AR模块116在AR会话中渲染真实世界环境的AR场景120,其中,该AR场景120可以呈现在用户设备110的显示器上的图形用户界面(graphical user interface,GUI)。AR场景120示出了真实世界物体130的真实世界物体表示122。此外,AR场景120示出了真实世界环境中不存在的虚拟物体124。为了以适当的方式将虚拟物体124放置在真实世界物体表示122上,AR模块116依赖于AR数据118和真实世界环境的地图。
在示例中,用户设备110表示合适的用户设备,除摄像头112和IMU传感器114外,该用户设备还包括一个或多个图形处理单元(graphical processing unit,GPU)、一个或多个通用处理器(general purpose processor,GPP)、以及存储计算机可读指令的一个或多个存储器,这些指令可由至少一个处理器执行以执行本公开实施例的各种功能。例如,用户设备110可以是智能手机、平板电脑、AR耳机、或可穿戴AR设备中的任何一个。
图2示出了根据本公开至少一个实施例的AR评估系统200的示例。AR评估系统200包括用户设备210、运动追踪系统220、以及计算机系统230。当位于运动追踪系统220的视场中时,用户设备210执行AR应用212,AR应用212将AR数据214输出到计算机系统230。运动追踪系统220追踪用户设备210的实际姿势并将运动追踪数据224输出到计算机系统230。计算机系统230接收AR数据214和运动追踪数据224并评估AR应用的性能。
用户设备210是图1的用户设备110的示例。具体而言,AR应用212执行SLAM过程以生成AR数据214。AR数据214包括6DoF数据和时间戳。在每个时间戳,对应的6DoF数据指示用户设备210在该时间点的位置和方向。随时间的6DoF数据指示用户设备210的估计轨迹。AR数据214还可以包括SLAM过程生成的地图,其中,可以在坐标系中定义该地图。
在示例中,运动追踪系统220包括用于执行运动捕捉的光学系统。通常,运动捕捉可以实现为记录物体(例如用户设备210)在三维(three-dimensional,3D)真实世界环境中的移动的过程。可以以特定的采样率对移动进行采样,并以该速率将移动重新编码为姿势数据,包括位置数据和方向数据。为此,光学系统包括一组摄像头(例如至少两个摄像头)和追踪应用222。追踪应用222处理摄像头生成的图像以检测特征,生成真实世界环境在坐标系中的地图,并随时间在地图中追踪这些特征。当这些特征属于用户设备210时,追踪用户设备210的移动。这些特征可以包括附着到用户设备210的一组主动和/或被动标记(例如至少三个标记)或用户设备210固有并且可从图像检测的基准点(例如用户设备210的外表面的特定部分)。通过在地图中追踪特征,追踪应用222可以输出运动追踪数据224。运动追踪数据224包括运动追踪系统220随时间在坐标系中检测的用户设备210的姿势数据。这种光学系统可从英国牛津的VICON或美国俄勒冈州科瓦利斯的OPTITRACK获得。
计算机系统230可以实现为托管AR评估应用232的服务器。服务器从用户设备212接收AR数据214,并将AR数据214作为AR数据234存储在本地存储器中。类似地,服务器从运动追踪系统220接收运动追踪数据224,并将运动追踪数据作为运动追踪数据236存储在本地存储器中。
在示例中,计算机系统230通过一个或多个无线和/或有线网络与用户设备210和运动追踪系统220通信耦合。通信耦合可以依赖于特定的网络拓扑,例如包括计算机系统230与用户设备210和运动追踪系统220中的每个之间的对等网络的网络拓扑,或者例如包括诸如接入点等其他网络节点的网络拓扑。通常,计算机系统230和用户设备210之间的网络时延可以估计为往返时间(round-trip time,RTT)或首字节时间(time to first byte,TTFB)。可以类似地估计计算机系统230和用户设备210之间的网络时延。如果网络时延小于阈值时延,例如十毫秒或某个其他预定义值,则可以忽略此网络时延。
计算机系统230与用户设备210和运动追踪系统220之间的通信使用套接字经由一个或多个网络来执行。具体而言,AR评估应用232通过与第一互联网协议(internetprotocol,IP)地址第一端口相关联的第一套接字从AR应用212接收AR数据214。相比之下,AR评估应用232通过与第二IP地址第二端口相关联的第二套接字从追踪应用222接收运动追踪数据234。
在示例中,AR评估应用232将AR数据234(或等效地,在存储为AR数据234之前接收到的AR数据214)与运动追踪数据236(或等效地,在存储为运动追踪数据236之前接收到的运动追踪数据224)对齐。可以执行不同类型的对齐。第一类涉及在空间中将来自AR数据214的估计姿势数据与来自运动追踪数据224的检测姿势数据在同一坐标系中对齐。如上所述,用户设备210和运动追踪系统220各自可以生成其在坐标系中的姿势数据集。AR评估应用232可以确定坐标系之间或每个坐标系与本地坐标系之间的变换,使得AR应用212估计的姿势数据和追踪应用222检测的姿势数据可以变换到同一坐标系中并在同一坐标系中定义。该变换可以基于与AR数据212和运动追踪数据224一起接收的图像生成,并且可以锚定到真实世界环境的检测的特征。
另一类对齐涉及时间维度。具体而言,除估计的姿势数据外,AR数据214还可以包括时间戳。这些时间戳由AR应用212根据SLAM过程的帧速率生成,并表示为用户设备210的本地时间的函数。本地时间可以是用户设备210追踪的世界协调时间(coordinateduniversal time,UTC)。相比之下,运动追踪数据224不包括时间戳。相反,AR评估应用232生成检测的姿势数据的时间戳,其中,这些时间戳对应于接收到运动追踪数据224的时间。生成的时间戳可以表示为计算机系统230的本地时间的函数。该本地时间可以是计算机系统230追踪的UTC时间。在一些情况下,用户设备210的本地时间和计算机系统230的本地时间之间可能存在偏移。AR应用212加盖时间戳的开始和AR评估应用232加盖时间戳的开始之间也可能存在偏移。AR评估应用232计算这种偏移并将这种偏移作为时间偏移238存储在本地存储器中。相应地,AR评估应用232将AR数据214(或等效地,AR数据234)的时间戳或为运动追踪数据224(或等效地,运动追踪数据236)生成的时间戳偏移时间偏移238,使得两组数据相对于同一时间线对齐。
为了计算时间偏移238,AR评估应用232可以从AR应用212接收时间数据216。时间数据216可以标识用户设备216的本地时间和第一时间戳相对于本地时间的具体时间(例如AR应用212加盖时间戳的开始)。AR评估应用232将时间数据216中标识的本地时间与计算机系统230的本地时间进行比较,将AR应用212加盖时间戳的开始与其时间采样的开始进行比较,并基于上述比较计算时间偏移238。这种计算在图3中进一步示出。
图3示出了根据本公开至少一个实施例的时间偏移的示例。如图所示,用户设备(例如图2的用户设备210)生成相对于其本地时间(示为设备本地时间310)的时间戳。用户设备加盖时间戳的开始示为采样开始312。类似地,计算机系统(例如图2的计算机系统230)生成相对于其本地时间的时间戳(示为系统本地时间320)。计算机系统加盖时间戳的开始示为采样开始322。
设备本地时间310和系统本地时间320之间存在第一偏移330。通过从用户设备的AR应用接收时间数据(例如时间数据216),计算机系统的AR评估应用可以将第一偏移330计算为两个本地时间320和330之间的时间差。AR评估应用232可以将采样开始322(或等效地,采样开始312)偏移第一偏移330,使得两个开始是相对于同一本地时间定义的。两个采样开始312和322之间的剩余时间差指示第二偏移340。该第二偏移340可以是几个因子的函数。例如,第二偏移340可以取决于预定义的且可从追踪应用的软件SDK获得的延迟时间。延迟时间指示追踪应用的处理时延。当第二偏移340不可忽略时(例如大于预定义的阈值延迟),第二偏移340可以附加地或替代地是网络时延的函数。例如,从用户设备接收数据的网络时延和从运动追踪系统接收数据的网络时延之差可以添加到第二偏移340。时间偏移(例如图2的时间偏移238)可以包括第一偏移330、第二偏移340、和/或第一偏移330和第二偏移340之和。
返回参考图2,在执行不同类型的对齐后,可以分析AR数据234和运动追踪数据236(具体地,AR数据234中包括的估计姿势数据和运动追踪数据236中包括的检测姿势数据),以确定AR应用212的性能。在示例中,性能确定为比较两组数据的一组度量。可以经由到AR评估应用232的用户界面定义度量类型。具体而言,用户输入可以经由用户界面接收并且可以定义特定的度量类型。例如,用户输入可以请求特定时间段(例如十分钟)内估计姿势和实际姿势(例如距离和角度)之差的平均值及其方差。AR评估应用232分析AR数据234和运动追踪数据236并且输出度量作为AR应用212的评估。
尽管图2示出了单个用户设备和单个运动追踪系统220,但是本公开实施例不限于此。例如,在运动追踪系统220的视场中可以有多个用户设备,每个用户设备可以执行AR应用,AR应用经由相应的套接字将AR数据发送到计算机系统230。类似地,可以使用多个运动追踪系统,每个系统在其视场中具有至少一个用户设备并执行追踪应用,该追踪应用经由相应的套接字将运动追踪数据发送到计算机系统230。换而言之,计算机系统230可以同时从一个或多个用户设备收集AR数据并从一个或多个运动追踪系统收集运动追踪数据。
在具体示例中,AR评估系统200采用客户端-服务器架构。AR评估系统200中有两类客户端。一类包括提供估计的6DoF姿势的用户设备210(和任何其他这种用户设备)。另一类包括提供实际6DoF数据以用作地面实况数据的运动追踪系统220(和任何其他这种测量设备)。计算机系统230是实现为从客户端收集所有数据并用评估算法处理这些数据的本地工作站的服务器。
服务器可以设置在具有Microsoft Windows操作系统的工作站中。当AR评估应用232启动时,AR评估应用232首先启动Winsock程序。Winsock程序是Windows系统中支持网络通信的程序接口。服务器驻留在这个程序中,具有指定的套接字类型、协议、标志。初始化完成后,AR服务器解析服务器地址和端口。服务器保持监听客户端,直到客户端关闭。
第一客户端是AR应用212。AR应用212发送遵循特定的数据的模式(例如数据模式)的数据以进行连接/断开连接、发送SLAM数据、发送图像、以及发送处理数据传输请求类型的任务。用户设备的数据传输格式可以在用户设备传输姿势时定义。
对于前“n”帧,数据类型遵循以下数据模式:时间标志、设备名称、设备本地时间、姿势时间基线(例如,时间采样的开始或AR应用的启动时间)。对于下一帧,数据类型遵循以下数据模式:开始标志。对于接下来的帧,数据类型遵循以下数据模式:姿势标志、姿势数据(例如位置(x,y,z)和四元数(qw,qx,qy,qz))、传感器数据(例如IMU数据、图像数据),结束姿势标志。
第二客户端是追踪应用222。追踪应用222基于运动追踪系统220的应用程序接口(application programming interface,API)。
基于客户端-服务器架构,可以解决时间同步问题。用户设备210和计算机系统230中各自遵循其自己的规则来计算时间。UTC时间可以用作同步时间的基线。地面实况时间可以传输到用户设备210。具体而言,对于前“n”帧,用户设备210的当前UTC时间和UTC基线中的姿势时间基线可从接收的数据中获得。对于运动追踪系统220,延迟时间是预定义的且可从追踪应用222的软件SDK获得。计算机系统230的UTC时间用于在从追踪应用222接收到地面实况数据(例如运动追踪数据224)时对该数据加盖时间戳。相对于用户设备210的时间线的地面实况时间线(或反之亦然)可以从UTC时间之间的偏移(例如第一偏移330)和延迟(例如对应于第二偏移340)计算。一旦数据被收集和对齐,至少在时间上,根据用户请求的度量类型基于与地面实况数据的比较评估来自用户设备210的姿势。
图4示出了根据本公开至少一个实施例的将AR数据410和运动追踪数据420对齐以实现AR评估的示例。上述对齐可以由计算机系统的AR评估应用(例如图2的AR评估应用232)执行。AR数据410是图2的AR数据214或234的示例。运动追踪数据420是图2的运动追踪数据224或236的示例。
在示例中,将AR数据410在时间上偏移时间偏移402以生成AR数据430,使得AR数据430和运动追踪数据420在时间上相对对齐。当然,上述移位可以替代地应用于运动追踪数据420,使得移位的运动追踪数据420与AR数据410在时间上对齐。
AR数据410包括由用户设备的AR应用生成的估计姿势数据和同样由AR应用生成的对应时间戳。例如,在“时间1”,估计姿势数据指示估计用户设备具有“姿势1”,其中“时间1”在用户设备的本地时间中定义。
可以通过将每个时间戳移位时间偏移402,以计算机系统的本地时间定义估计姿势数据的时间线,从而生成移位的AR数据430。例如,“时间1”移位变为以计算机系统的本地时间定义的“时间1”。相应地,AR数据430包括与AR数据410相同的估计姿势数据,但是每个对应的估计姿势与以计算机系统的本地时间定义的偏移时间戳相关联。
为了说明,考虑时间偏移402为两秒的示例。在此示例中,“时间1”是用户设备的UTC时间下午12:00:00。此时间戳移位到“时间1”,其中“时间1”是计算机系统的UTC时间下午12:00:02。
相比之下,运动追踪数据420包括由运动追踪系统的追踪应用检测的用户设备的地面实况姿势数据。在接收到这种姿势数据后,AR评估应用生成与接收到地面实况姿势数据的时间对应的时间戳。时间戳以计算机系统的本地时间定义。例如,在“时间A”,地面实况姿势数据指示检测到用户设备具有“姿势A”,其中“时间A”以计算机系统的本地时间定义。继续前面的应用,“时间A”是计算机系统的UTC时间下午12:00:02。
AR评估应用生成移位的AR数据430和运动追踪数据420之间的关联440。关联440示出估计姿势数据和地面实况姿势数据之间的相对时间线,以实现这两组数据的比较。例如,AR评估应用确定“时间1”与“时间A”相同(例如,“时间1”:12:00:02=时间A:12:00:02)。相应地,AR评估应用生成设备的相应姿势之间的关联,其中该关联指示估计的“姿势1”对应于地面实况“姿势A”,因为这两个姿势是同时(或基本同时)生成的。鉴于该关联,AR评估应用可以在计算AR应用的评估度量时比较估计的“姿势1”和地面实况“姿势A”(例如,两者之间的距离差和角度差)。
图5示出了根据本公开至少一个实施例的示出AR评估系统的组件之间的交互的序列图的示例。这些组件包括用户设备、运动追踪系统520、以及计算机系统530,类似于图2的用户设备210,运动追踪系统220、以及计算机系统230。
如图所示,在序列图的第一步中,用户设备510向计算机系统530发送时间数据。时间数据包括例如用户设备的当前本地时间和姿势时间基线(例如用户设备的时间采样的开始、或AR应用的启动时间)。时间数据可以遵循第一数据模式,例如遵循以下模式:时间标志、设备名称、设备本地时间、姿势时间基线。
在序列图的第二步中,计算机系统530基于时间数据确定时间偏移。时间偏移可以是用户设备510的本地时间和计算机系统530的本地时间之差的函数。时间偏移还可以是用户设备510的时间采样的开始和计算机系统530的时间采样的开始的函数。进而,计算机系统530的采样开始可以取决于(例如等价于)预定义的且可从运动追踪系统520的追踪应用的SDK获得的延迟。
在序列图的第三步中,用户设备510向计算机系统530发送AR数据。AR数据包括估计姿势数据和时间戳。计算机530在时间段内接收到AR数据。计算机系统530的AR评估应用可以经由套接字从用户设备520的AR应用接收AR数据。AR数据可以遵循以下数据模式:姿势标志、姿势数据(例如位置(x,y,z)和四元数(qw,qx,qy,qz))、传感器数据(例如IMU数据、图像数据)、结束姿势标志。
在序列图的并行步骤中,运动追踪系统520向计算机系统530发送运动追踪数据。运动追踪数据包括地面实况数据姿势数据但不包括时间戳。计算机530在同一时间段内接收到运动追踪数据。AR评估应用可以经由不同的套接字从运动追踪系统520的追踪应用接收运动追踪数据。AR评估应用可以在接收时间为地面实况数据加盖时间戳。
在序列图的第四步中,计算机系统530确定AR数据和运动追踪数据之间的相对时间线。可以通过将估计姿势数据的时间戳移位时间偏移来导出相对时间线。或者,可以通过将为地面实况姿势数据生成的时间戳移位时间偏移来导出相对时间线。
在序列图的第五步中,计算机系统530基于相对时间线确定AR数据和运动追踪数据之间的关联。例如,一旦时间对齐完成,计算机系统530(如适用)将估计姿势数据中的一些或每个与地面实况姿势数据之一相关联,其中通过将估计姿势数据的时间戳与地面实况姿势数据的时间戳匹配来确定关联。
在序列图的第六步中,计算机系统530生成AR应用的评估。例如,将估计姿势数据与地面实况数据进行比较,以导出特定的评估度量。
图6示出了根据本公开至少一个实施例的执行AR评估的流程的示例。结合作为图2的计算机系统230的示例的计算机系统来描述流程。流程的一些或所有操作可以经由计算机系统上的特定硬件实现和/或可以实现为存储在计算机系统的非暂时性计算机可读介质上的计算机可读指令。如所存储的,计算机可读指令表示包括可由计算机系统的处理器执行的代码的可编程模块。这种指令的执行将计算机系统配置为执行相应的操作。与处理器结合的每个可编程模块代表用于执行相应操作的装置。虽然以特定顺序说明操作,但应理解,特定顺序不是必须的并且可以省略、跳过、并行执行、和/或重新排序一个或多个操作。
在示例中,流程开始于操作602,其中,计算机系统接收指示用户设备的本地时间的时间数据。时间数据还可以指示用户设备生成的姿势数据的时间戳的基线时间。
在示例中,流程包括操作604,其中,计算机系统基于时间数据和计算机系统的本地时间来确定时间偏移。还可以基于计算机系统开始对运动追踪数据进行采样的时间来确定时间偏移,其中,该时间可以是预定义的且可从运动追踪系统的追踪应用的SDK获得的延迟的函数。
在示例中,流程包括操作606,其中,计算机系统接收指示用户设备的估计轨迹并且包括第一时间戳的第一数据。例如,第一数据是包括估计姿势数据和相应的时间戳的AR数据。
在示例中,流程包括操作608,其中,计算机系统基于第一时间戳和时间偏移将第一数据与第二时间戳相关联。例如,计算机系统将估计姿势数据的时间戳移位时间偏移。移位的时间戳是第二时间戳。
在示例中,流程包括操作610,其中,计算机系统接收指示用户设备的追踪轨迹的第二数据。例如,第二数据是从运动追踪系统接收的并且包括运动追踪数据。进而,运动追踪数据包括由运动追踪系统检测的用户设备的姿势数据。姿势数据用作地面实况姿势数据。追踪轨迹随时间对应于地面实况姿势数据。
在示例中,流程包括操作612,其中,计算机系统基于计算机系统的本地时间生成第三时间戳。例如,在接收到运动追踪数据中的每个数据时,计算机系统生成相应的时间戳,其中,该时间戳以计算机系统的本地时间定义。
在示例中,流程包括操作614,其中,计算机系统将第二数据与第三时间戳相关联。例如,对于估计姿势数据的每个数据,计算机系统将对应的时间戳确定为偏移到计算机系统的本地时间。该时间戳与以计算机系统的本地时间定义的第三时间戳之一匹配。
在示例中,流程包括操作616,其中,计算机系统基于第二时间戳和第三时间戳之间的对应关系确定第一数据和第二数据之间的关联。例如,返回参考操作614,第二时间戳对应于特定的估计姿势数据。匹配的第三时间戳对应于特定的地面实况姿势数据。相应地,计算机系统生成并存储特定的估计姿势数据和特定的地面实况数据之间的关联,该关联指示在特定时间(例如对应于第二时间戳或等价地匹配的第三时间戳的特定时间),AR应用估计用户设备具有特定姿势,并且追踪应用检测到用户设备具有相同或不同的特定姿势(取决于AR应用对用户设备姿势的追踪情况)。
在示例中,流程包括操作618,其中,计算机系统基于该关联生成AR应用的评估。例如,将估计的姿势数据与相关联的地面实况数据进行比较,以导出特定的评估度量。
图7示出了根据本公开至少一个实施例的计算机系统的组件的示例。计算机系统700是上文所述的计算机系统230的示例。尽管这些组件示为属于同一计算机系统700,但是计算机系统700也可以是分布式的。
计算机系统700至少包括处理器702、存储器704、存储设备706、输入/输出外围设备(input/output,I/O)708、通信外围设备710和接口总线712。接口总线712可以用于在计算机系统700的各种组件之间通信、发送和传输数据、控制和命令。存储器704和存储设备706包括计算机可读存储介质,例如RAM、ROM、电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、硬盘驱动器、CD-ROM、光存储设备、磁存储设备、电子非易失性计算机存储,例如
Figure BDA0003789458700000101
存储器,以及其他有形存储介质。任何这样的计算机可读存储介质都可以用于存储实施本公开的各方面的指令或程序代码。存储器704和存储设备706还包括计算机可读信号介质。计算机可读信号介质包括传播的数据信号,其中包含计算机可读程序代码。这种传播的信号采用多种形式中的任何一种,包括但不限于电磁、光或其任何组合。计算机可读信号介质包括不是计算机可读存储介质并且可以通信、传播或传输用于与计算机系统700结合使用的程序的任何计算机可读介质。
此外,存储器704可以包括操作系统、程序和应用。处理器702用于执行存储的指令并且包括例如逻辑处理单元、微处理器、数字信号处理器和其他处理器。存储器704和/或处理器702可以被虚拟化并且可以托管在例如云网络或数据中心的另一计算机系统中。I/O外围设备708包括用户接口,例如键盘、屏幕(例如,触摸屏)、麦克风、扬声器、其他输入/输出设备,以及计算组件,例如图形处理单元、串行端口、并行端口、通用串行总线和其他输入/输出外围设备。I/O外围设备708通过耦合到接口总线712的任何端口连接到处理器702。通信外围设备710用于促进计算机系统700和其他计算机系统之间通过通信网络的通信,并且包括例如网络接口控制器、调制解调器、无线和有线接口卡、天线和其他通信外围设备。
尽管本主题已针对其特定实施例进行了详细描述,但应当理解,本领域技术人员在获得对前述内容的理解后,可以容易地产生对这些实施例的改变、变化和等价物。因此,应当理解,本公开是为了示例而不是限制的目的而呈现的,并且不排除包含对于普通技术人员来说是显而易见的对本主题的这种修改、变化和/或添加。实际上,本文描述的方法和系统可以以多种其他形式实施;此外,在不背离本公开的精神的情况下,可以对本文描述的方法和系统的形式进行各种省略、替换和改变。所附权利要求及其等价物旨在覆盖落入本公开的范围和精神内的此类形式或修改。
除非另有明确说明,否则应了解,贯穿本说明书的讨论使用诸如“处理”、“计算”、“确定”和“识别”等术语是指计算机系统(例如一个或多个计算机或类似的电子计算机系统)的动作或过程,计算机系统在计算平台的存储器、寄存器或其他信息存储设备、传输设备或显示设备中操纵或转换表示为物理电子或磁量的数据。
这里讨论的一个或多个系统不限于任何特定的硬件架构或配置。计算机系统可以包括提供以一个或多个输入为条件的结果的任何合适的组件布置。合适的计算机系统包括访问存储的软件的基于微处理器的多用途计算机系统,该软件将计算机系统从通用计算装置编程或配置为实现本主题的一个或多个实施例的专用计算装置。任何合适的编程、脚本或其他类型的语言或语言的组合可用于在用于编程或配置计算机系统的软件中实施本文中包含的教导。
本文公开的方法的实施例可以在这样的计算机系统的操作中执行。以上示例中呈现的框的顺序可以改变——例如,框可以被重新排序、组合和/或分解成子框。某些框或过程可以并行执行。
本文使用的条件性语言,例如“可以”、“可能”、“例如”等,除非另有明确说明,或在所使用的上下文中以其他方式理解,通常旨在传达某些示例包括而其他示例不包括某些特征、元素和/或步。因此,这种条件性语言通常并不意味着一个或多个示例以任何方式需要特征、元素和/或步,或者一个或多个示例必须包括用于在有或没有作者输入或提示的情况下决定是否包括或将在任何特定示例中执行这些特征、元素和/或步的逻辑。
术语“包括”、“包含”、“具有”等是同义词,并且以开放式的方式包容性地使用,并且不排除其他元素、特征、动作、操作等。此外,术语“或”以其包容性(而不是排他性)使用,从而当例如用于连接元素列表时,术语“或”表示列表中的一个、一些或全部元素。此处使用的“适用于”或“用于”是指开放和包容性的语言,不排除适用于或用于执行附加任务或步的设备。此外,“基于”的使用意味着开放和包容,因为“基于”一个或多个列举的条件或值的过程、步、计算或其他动作实际上可能基于列举的之外的附加条件或值。类似地,“至少部分基于”的使用意味着开放和包容,因为“至少部分基于”一个或多个列举的条件或值的过程、步、计算或其他动作在实践中可以基于列举的之外的附加条件或值。本文包括的标题、列表和编号仅是为了便于解释,并不意味着限制。
上述各种特征和过程可以彼此独立地使用,或者可以以各种方式组合使用。所有可能的组合和子组合旨在落入本公开的范围内。此外,在一些实施方式中可以省略某些方法或过程框。本文描述的方法和过程也不限于任何特定的顺序,并且与其相关的框或状态可以以其他适当的顺序来执行。例如,所描述的框或状态可以以不同于具体公开的顺序执行,或者多个框或状态可以组合在单个框或状态中。示例框或状态可以串行、并行或以某种其他方式执行。可以将框或状态添加到所公开的示例中或从所公开的示例中删除。类似地,本文描述的示例系统和组件可以被配置为与所描述的不同。例如,与所公开的示例相比,可以将添加、移除或重新排列元素。

Claims (20)

1.一种系统,包括:
用户设备,用于执行增强现实(AR)应用并发送指示所述用户设备的估计轨迹的第一数据,所述第一数据由所述AR应用生成并且包括第一时间戳,所述第一时间戳基于所述用户设备的第一本地时间生成;
运动追踪系统,用于发送指示所述用户设备的追踪轨迹的第二数据;以及
计算机系统,与所述用户设备和所述运动追踪系统通信耦合并且用于:
确定所述计算机系统的第二本地时间和所述用户设备的所述第一本地时间之间的时间偏移,
接收所述第一数据,
将所述第一数据与第二时间戳相关联,所述第二时间戳基于所述时间偏移生成并且不同于所述第一时间戳,
接收所述第二数据,
将所述第二数据与第三时间戳关联,所述第三时间戳基于所述第二本地时间生成,以及
基于所述第一数据、所述第二数据、所述第二时间戳、以及所述第三时间戳生成所述AR应用的评估。
2.根据权利要求1所述的系统,其中,所述第一数据包括所述用户设备的第一姿势数据,并且其中,所述第一姿势数据包括位置数据和方向数据,并且通过所述AR应用的同时定位与建图(SLAM)过程生成。
3.根据权利要求2所述的系统,其中,所述第二数据包括所述用户设备的第二姿势数据,其中,所述第二姿势数据由所述运动追踪系统生成。
4.根据权利要求3所述的系统,其中,通过与所述AR应用相关联的第一套接字接收所述第一姿势数据和所述第一时间戳,并且其中,基于与所述运动追踪系统的运动追踪应用相关联的第二套接字接收所述第二姿势数据。
5.根据权利要求1所述的系统,其中,确定所述时间偏移包括:
在接收所述第一数据之前,从所述用户设备接收时间数据,所述时间数据指示所述第一本地时间;以及
基于所述时间数据与所述第二本地时间的比较来确定所述时间偏移。
6.根据权利要求5所述的系统,其中,所述第一数据具有第一数据模式,其中,所述时间数据具有第二数据模式,并且其中,所述第一数据模式不同于所述第二数据模式。
7.根据权利要求6所述的系统,其中,所述第一数据模式包括姿势数据和时间戳,其中,所述第二数据模式包括所述用户设备的标识符、所述第一本地时间、以及与生成所述第一数据相关联的时间基线。
8.根据权利要求1所述的系统,其中,所述第一数据指示所述用户设备在所述第一时间戳中的一个第一时间戳的第一姿势,其中,所述第二数据包括所述用户设备在所述第三时间戳中的一个第三时间戳的第二姿势,其中,所述第一姿势基于所述第一时间戳和所述时间偏移与所述第二时间戳中的一个第二时间戳相关联,并且其中,生成所述评估包括:
确定所述第二时间戳与所述第一时间戳对应;以及
基于所述第一姿势和所述第二姿势计算评估度量。
9.根据权利要求1所述的系统,其中,在时间段内接收到所述第一数据,其中,在所述时间段内接收到所述第二数据,并且其中,生成所述评估包括:
基于所述第二时间戳和所述第三时间戳生成所述第一数据和所述第二数据之间的相对时间线;
基于所述相对时间线确定来自所述第一数据的第一姿势数据和来自所述第二数据的第二姿势数据之间的关联;以及
基于所述关联计算评估度量。
10.根据权利要求9所述的系统,其中,基于经由用户接口接收的到所述计算机系统的评估应用的用户输入来定义所述评估度量。
11.根据权利要求1所述的系统,其中,通过将所述第二数据用作地面实况数据并且将所述第一数据用作可变数据来生成所述评估。
12.一种由计算机系统实现的方法,所述方法包括:
基于在用户设备上执行增强现实(AR)应用,确定所述计算机系统的本地时间和所述用户设备的本地时间之间的时间偏移;
从所述用户设备接收第一数据,所述第一数据指示所述用户设备的估计轨迹并且由所述AR应用生成,所述第一数据包括基于所述用户设备的所述本地时间生成的第一时间戳;
将所述第一数据与第二时间戳相关联,所述第二时间戳基于所述时间偏移生成并且不同于所述第一时间戳;
从运动追踪系统接收第二数据,所述第二数据指示所述用户设备的追踪轨迹;
将所述第二数据与第三时间戳相关联,所述第三时间戳基于所述计算机系统的所述本地时间生成;以及
基于所述第一数据、所述第二数据、所述第二时间戳、以及所述第三时间戳生成所述AR应用的评估。
13.根据权利要求12所述的方法,其中,确定所述时间偏移包括:
在接收所述第一数据之前,从所述用户设备接收时间数据,所述时间数据指示所述用户设备的所述本地时间;以及
基于所述时间数据与所述计算机系统的所述本地时间的比较来确定所述时间偏移。
14.根据权利要求13所述的方法,其中,在时间段内接收到所述第一数据,其中,在所述时间段内接收到所述第二数据,并且其中,生成所述评估包括:
基于所述第二时间戳和所述第三时间戳生成所述第一数据和所述第二数据之间的相对时间线;
基于所述相对时间线确定来自所述第一数据的第一姿势数据和来自所述第二数据的第二姿势数据之间的关联;以及
基于所述关联计算评估度量。
15.根据权利要求13所述的方法,其中,所述第一数据包括姿势数据和所述第一时间戳,其中,所述时间数据包括所述用户设备的标识符、所述第一本地时间、以及与生成所述第一数据相关联的时间基线。
16.一个或多个非暂时性计算机存储介质,存储有指令,所述指令在计算机系统上执行时使所述计算机系统执行操作,所述操作包括:
基于在用户设备上执行增强现实(AR)应用,确定所述计算机系统的本地时间和所述用户设备的本地时间之间的时间偏移;
从所述用户设备接收第一数据,所述第一数据指示所述用户设备的估计轨迹并且由所述AR应用生成,所述第一数据包括基于所述用户设备的所述本地时间生成的第一时间戳;
将所述第一数据与第二时间戳相关联,所述第二时间戳基于所述时间偏移生成并且不同于所述第一时间戳;
从运动追踪系统接收第二数据,所述第二数据指示所述用户设备的追踪轨迹;
将所述第二数据与第三时间戳相关联,所述第三时间戳基于所述计算机系统的所述本地时间生成;以及
基于所述第一数据、所述第二数据、所述第二时间戳、以及所述第三时间戳生成所述AR应用的评估。
17.根据权利要求16所述的一个或多个非暂时性计算机存储介质,其中,所述第一数据包括所述用户设备的第一姿势数据,并且其中,所述第一姿势数据包括位置数据和方向数据,并且通过所述AR应用的同时定位与建图(SLAM)过程生成。
18.根据权利要求17所述的一个或多个非暂时性计算机存储介质,所述第二数据包括所述用户设备的第二姿势数据,其中,所述第二姿势数据由所述运动追踪系统生成。
19.根据权利要求18所述的一个或多个非暂时性计算机存储介质,其中,通过与所述AR应用相关联的第一套接字接收所述第一姿势数据和所述第一时间戳,并且其中,基于与所述运动追踪系统的运动追踪应用相关联的第二套接字接收所述第二姿势数据。
20.根据权利要求16所述的一个或多个非暂时性计算机存储介质,其中,生成所述评估包括:
基于所述第二时间戳和所述第三时间戳生成所述第一数据和所述第二数据之间的相对时间线;
基于所述相对时间线确定来自所述第一数据的第一姿势数据和来自所述第二数据的第二姿势数据之间的关联;以及
基于所述关联计算评估度量。
CN202180013669.2A 2020-02-12 2021-02-08 增强现实(ar)应用的姿势评估数据 Pending CN115066281A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202062975688P 2020-02-12 2020-02-12
US62/975,688 2020-02-12
PCT/CN2021/075972 WO2021160080A1 (en) 2020-02-12 2021-02-08 Evaluating pose data of an augmented reality (ar) application

Publications (1)

Publication Number Publication Date
CN115066281A true CN115066281A (zh) 2022-09-16

Family

ID=77291714

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180013669.2A Pending CN115066281A (zh) 2020-02-12 2021-02-08 增强现实(ar)应用的姿势评估数据

Country Status (2)

Country Link
CN (1) CN115066281A (zh)
WO (1) WO2021160080A1 (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10845188B2 (en) * 2016-01-05 2020-11-24 Microsoft Technology Licensing, Llc Motion capture from a mobile self-tracking device
US10099122B2 (en) * 2016-03-30 2018-10-16 Sony Interactive Entertainment Inc. Head-mounted display tracking
US10134192B2 (en) * 2016-10-17 2018-11-20 Microsoft Technology Licensing, Llc Generating and displaying a computer generated image on a future pose of a real world object
US10863469B2 (en) * 2017-10-11 2020-12-08 Google Llc System and method for accurate timestamping of virtual reality controller data
CN109847361B (zh) * 2019-02-27 2020-11-10 腾讯科技(深圳)有限公司 运动状态的同步方法和装置、存储介质、电子装置

Also Published As

Publication number Publication date
WO2021160080A1 (en) 2021-08-19

Similar Documents

Publication Publication Date Title
US11145083B2 (en) Image-based localization
JP6258953B2 (ja) 単眼視覚slamのための高速初期化
US11481982B2 (en) In situ creation of planar natural feature targets
CN110140099B (zh) 用于跟踪控制器的系统和方法
US10726625B2 (en) Method and system for improving the transmission and processing of data regarding a multi-user virtual environment
JP6198230B2 (ja) 深度カメラを使用した頭部姿勢トラッキング
US11288871B2 (en) Web-based remote assistance system with context and content-aware 3D hand gesture visualization
CN112819860B (zh) 视觉惯性系统初始化方法及装置、介质和电子设备
WO2019161903A1 (en) Coordinating alignment of coordinate systems used for a computer generated reality device and a haptic device
JP6662382B2 (ja) 情報処理装置および方法、並びにプログラム
KR20220090398A (ko) 다중 카메라 보정을 수행하는 방법 및 장치
CN115066281A (zh) 增强现实(ar)应用的姿势评估数据
US11694409B1 (en) Augmented reality using a split architecture
KR20120090866A (ko) 모바일 기기를 이용하는 증강현실 환경에서 복수 객체 추적방법 및 이를 이용한 시스템
CN111768443A (zh) 基于移动摄像头的图像处理方法和装置
WO2021065607A1 (ja) 情報処理装置および方法、並びにプログラム
JP2018077732A (ja) 画像処理装置、画像処理方法
Rizzardo OPTAR: Automatic Coordinate Frame Registration between OpenPTrack and Google ARCore using Ambient Visual Features
KR20220083166A (ko) 인체 추정 방법 및 장치

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