CN110140099A - 用于跟踪控制器的系统和方法 - Google Patents

用于跟踪控制器的系统和方法 Download PDF

Info

Publication number
CN110140099A
CN110140099A CN201780082188.0A CN201780082188A CN110140099A CN 110140099 A CN110140099 A CN 110140099A CN 201780082188 A CN201780082188 A CN 201780082188A CN 110140099 A CN110140099 A CN 110140099A
Authority
CN
China
Prior art keywords
controller
wearable device
6dof
posture
key frame
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
Application number
CN201780082188.0A
Other languages
English (en)
Other versions
CN110140099B (zh
Inventor
R·钱德拉塞卡尔
M·S·拉赫曼
M·伦施勒
A·A·坎迪哈代
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN110140099A publication Critical patent/CN110140099A/zh
Application granted granted Critical
Publication of CN110140099B publication Critical patent/CN110140099B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/014Hand-worn input/output arrangements, e.g. data gloves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/292Multi-camera tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • 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/10028Range image; Depth image; 3D point clouds

Landscapes

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

Abstract

本发明描述一种由例如头戴式的可穿戴装置进行的方法。所述方法包含从用户的手中的控制器接收几何信息,所述控制器例如用作游戏交互装置。所述几何信息包含所述控制器的点云和关键帧。所述方法还包含从所述控制器接收第一六自由度6DoF姿态信息。所述方法还包含基于所述控制器的所述点云和所述关键帧使所述可穿戴装置的坐标系与所述控制器的坐标系同步。所述方法另外包含基于来自控制器的所述第一6DoF姿态信息在应用程序中再现内容。

Description

用于跟踪控制器的系统和方法
技术领域
本发明大体上涉及通信。更具体地,本发明涉及用于跟踪控制器的系统和方法。
背景技术
在最近几十年中,电子装置的使用已变得普遍。明确地说,电子技术中的进步已减少了越来越复杂且有用的电子装置的成本。成本降低和消费者需求已使电子装置的使用剧增,使得其在现代社会中几乎随处可见。由于电子装置的使用已推广开来,因此具有对电子装置的新的且改进的特征的需求。更确切地说,人们常常寻求执行新功能和/或更快、更有效或以更高质量执行功能的电子装置。
在一些情况下,跟踪可穿戴装置的控制器的位置和定向可能是有益的。举例来说,可穿戴装置可以再现和显示用于虚拟现实(VR)或增强现实(AR)应用的内容。控制器的六自由度(6DoF)跟踪是合意的,但也是挑战性的。由此讨论可观察到,改进三维空间中的控制器的6DoF跟踪的系统和方法可以是有益的。
发明内容
描述一种由可穿戴装置进行的方法。所述方法包含从控制器接收几何信息。所述几何信息包含所述控制器的点云和关键帧。所述方法还包含从所述控制器接收第一六自由度(6DoF)姿态信息。所述方法还包含基于所述控制器的所述点云和所述关键帧使所述可穿戴装置的坐标系与所述控制器的坐标系同步。所述方法另外包含基于所述第一6DoF姿态信息在应用程序中再现内容。
第一6DoF姿态信息可包含由实施于控制器上的6DoF跟踪算法确定的第一6DoF姿态。第一6DoF姿态信息可包含图像数据和惯性测量单元(IMU)数据,实施于可穿戴装置上的6DoF跟踪算法根据所述图像数据和惯性测量单元数据确定控制器的第一6DoF姿态。通过实施于可穿戴装置上的6DoF跟踪算法确定控制器的第一6DoF姿态可包含基于从控制器接收的带时间戳的IMU数据和带时间戳的图像数据确定控制器在控制器的点云内的三维定向。
所述方法还可包含从所述控制器接收由实施于所述控制器上的所述6DoF跟踪算法确定的所述控制器的第二6DoF姿态或者实施于所述可穿戴装置上的所述6DoF跟踪算法根据其来确定所述第二6DoF姿态的经更新图像数据和经更新IMU数据。所述方法可进一步包含基于第二6DoF姿态在应用程序中再现内容。
使可穿戴装置的坐标系与控制器的坐标系同步可包含确定控制器的关键帧与由可穿戴装置捕获的关键帧之间的重叠特征点。可基于所述重叠特征点确定控制器的点云中的对应于可穿戴装置的点云中的三维(3D)点的3D点。可基于所述控制器的所述点云和所述可穿戴装置的所述点云的所述对应3D点确定变换。可将所述变换应用于第一6DoF姿态。
所述方法还可包含从控制器接收周期性点云更新和关键帧更新。可基于所述点云更新和所述关键帧更新使所述可穿戴装置的所述坐标系与所述控制器的所述坐标系同步。
所述方法还可包含在可穿戴装置上实施6DoF跟踪算法以确定可穿戴装置的6DoF姿态。在应用程序中再现内容还可基于可穿戴装置的6DoF姿态。所述方法可进一步包含基于从可穿戴装置接收的图像数据确定可穿戴装置的点云和关键帧。
还描述一种可穿戴装置。所述可穿戴装置包含存储器和与所述存储器通信的处理器。所述处理器经配置以从控制器接收几何信息,所述几何信息包含控制器的点云和关键帧。所述处理器还经配置以从控制器接收第一6DoF姿态信息。所述处理器进一步经配置以基于控制器的点云和关键帧使可穿戴装置的坐标系与控制器的坐标系同步。所述处理器另外经配置以基于第一6DoF姿态信息在应用程序中再现内容。
还描述一种计算机程序产品。所述计算机程序产品包含上面具有指令的非暂时性计算机可读媒体。所述指令包含用于致使可穿戴装置从控制器接收几何信息的代码,所述几何信息包含控制器的点云和关键帧。所述指令还包含用于致使可穿戴装置从控制器接收第一6DoF姿态信息的代码。所述指令进一步包含用于致使可穿戴装置基于控制器的点云和关键帧使可穿戴装置的坐标系与控制器的坐标系同步的代码。所述指令另外包含用于致使可穿戴装置基于第一6DoF姿态信息在应用程序中再现内容的代码。
还描述一种可穿戴装置。所述可穿戴装置包含用于从控制器接收几何信息的装置,所述几何信息包含控制器的点云和关键帧。所述可穿戴装置还包含用于从控制器接收第一6DoF姿态信息的装置。所述可穿戴装置进一步包含用于基于所述控制器的所述点云和所述关键帧使所述可穿戴装置的坐标系与所述控制器的坐标系同步的装置。所述可穿戴装置另外包含用于基于第一6DoF姿态信息在应用程序中再现内容的装置。
附图说明
图1是说明经配置以用于在三维空间中的六自由度(6DoF)跟踪的可穿戴装置和控制器的配置的框图;
图2是说明经配置以用于三维空间中的6DoF跟踪的可穿戴装置和控制器的另一配置的框图;
图3说明具有可穿戴装置、第一控制器和第二控制器的用户的实例;
图4是说明如由可穿戴装置实施的用于跟踪控制器的方法的配置的流程图;
图5是说明如由控制器实施的用于跟踪控制器的方法的配置的流程图;
图6是说明如由控制器实施的用于跟踪控制器的方法的另一配置的流程图;
图7是说明如由可穿戴装置实施的用于跟踪控制器的方法的另一配置的流程图;
图8是说明用于使可穿戴装置的坐标系与控制器的坐标系同步的方法的配置的流程图;
图9是说明用于跟踪控制器的程序的序列图;
图10是说明如由可穿戴装置实施的用于跟踪控制器的方法的配置的流程图;
图11是说明用于跟踪控制器的另一程序的序列图;以及
图12说明可包含于电子装置内的某些组件。
具体实施方式
参考图描述各种配置,其中相同的参考标号可以指示功能上类似的元件。可以广泛多种不同配置来布置且设计如在图式中所大体描述且说明的系统和方法。因此,以下对如图中表示的若干配置的更详细描述并不希望限制范围,而是仅为代表性的。
图1是说明经配置以用于三维空间中的六自由度(6DoF)跟踪的可穿戴装置102和控制器104的配置的框图。可穿戴装置102和控制器104是电子装置。可穿戴装置102和控制器104也可被称作无线通信装置、移动装置、移动台、订户站、客户端、客户端站、用户设备(UE)、远程站、接入终端、移动终端、终端、用户终端、订户单元等。电子装置的实例包含膝上型计算机或台式计算机、蜂窝式电话、智能电话、无线调制解调器、电子阅读器、平板计算机装置、游戏系统、机器人、飞行器、无人机(UAV)、汽车等。这些装置中的一些可根据一个或多个行业标准操作。
可穿戴装置102的实例包含虚拟现实(VR)头戴装置、增强现实(AR)头戴装置、头戴式显示器,或其它可穿戴或可移动显示装置(例如,手套或手表)。
可穿戴装置102可配置有处理器128a和存储器130a。处理器128a可执行应用程序124和6DoF跟踪算法110a。在实施方案中,处理器128a可以是应用程序数字信号处理器(ADSP)。应用程序124的实例包含VR应用程序或AR应用程序。这些包含VR和AR游戏、飞行模拟器、载具导引系统(用于控制例如UAV)、机器人外科设备接口等。
在实施方案中,可穿戴装置102可包含显示器126。举例来说,在VR或AR头戴装置的情况下,可穿戴装置可包含安装于用户的眼睛的正前方的显示器126。可穿戴装置102可在显示器126上投影可视图像。在另一实施方案中,可穿戴装置102可不包含显示器126。举例来说,可穿戴装置102可连接到外部显示器126(例如,监视器)。
可穿戴装置102可包含用于感测其在三维环境中的位置的硬件和软件。可穿戴装置102可包含相机106a。相机106a可包含图像传感器和光学系统(例如,透镜),所述光学系统将定位于光学系统的视场内的对象的像聚焦到图像传感器上。相机106a可经配置以捕获数字图像。虽然在所捕获图像方面描述本发明的系统和方法,但本文所论述的技术可以在任何数字图像上使用。因此,术语视频帧和数字图像可在本文中互换使用。同样,在某些实施方案中,可穿戴装置102可不包含相机106a和光学系统,但可接收或利用存储的数字图像。
可穿戴装置102还可以包含惯性测量单元(IMU)108a。IMU 108是测量线性和角度运动的系统。在实施方案中,IMU 108可包含一或多个陀螺仪和一或多个加速度计。IMU108a可产生关于可穿戴装置102的惯性信息。举例来说,IMU 108a可输出可穿戴装置102的角速度和加速度。
术语“自由度”(DoF)指代对象在空间中的移动。总共存在六个DoF,划分成两个不同的类型。一种类型的移动是平移移动。对象能够在三个DoF中平移:前/后,上/下,左/右。另一类型的移动是旋转移动。对象能够以三个DoF旋转:俯仰、偏航和滚动。对象的任何可能的移动可表达为基本六个DoF的组合,本文称为6DoF。
相机106a和IMU 108a可提供数据到6DoF跟踪算法110a。可穿戴装置102可实施6DoF跟踪算法110a以确定与可穿戴装置102的位置和定向相关联的几何信息112a。使用来自相机106a的图像数据和由IMU 108a提供的惯性数据,6DoF跟踪算法110a可检测几何信息112a。检测到的几何信息112a可用以跟踪可穿戴装置102的移动。
在实施方案中,检测到的几何信息112a可包含点云114a、一或多个关键帧115a以及可穿戴装置102的6DoF姿态116a。点云114a可从由相机106a提供的图像数据确定。点云114a可包含可穿戴装置102的环境内的点的深度信息,如由相机106a所观察。替代地,点云114a可由3D扫描仪(未图示)产生。举例来说,可穿戴装置102可包含产生场景的深度图的激光(例如,LIDAR)扫描仪。
在实施方案中,可使用传感器融合跟踪算法获得点云114a。此类传感器融合算法的输入是IMU数据和相机帧。相机帧可确定可跟踪的环境的特征点。那些特征点的3D位置可使用根据IMU数据和相机帧数据的三角测量来确定。此3D点集合构造点云114a。
图像数据可包含关键帧115a,所述关键帧由6DoF跟踪算法110a使用以产生可穿戴装置坐标系118a。点云114a可以是可穿戴装置坐标系118a中的数据点的集合。点云114a中的数据点对应于可穿戴装置102的环境中的对象。
6DoF跟踪算法110a还可以确定可穿戴装置102的6DoF姿态116a。举例来说,6DoF跟踪算法110a可使用由IMU 108a提供的惯性数据和/或由相机106a提供的视觉信息以确定可穿戴装置102在空间中的定向。6DoF跟踪算法110a可使6DoF姿态116a同步于可穿戴装置坐标系118a。
在实施方案中,可使用传感器融合跟踪算法获得6DoF姿态116a。传感器融合跟踪算法跟踪点云114a中的可用点。来自空间帧和当前主体帧的点集合的3D位置可用以从空间帧计算当前主体帧的6DoF姿态116a。
可穿戴装置102可使用检测到的几何信息112a以在应用程序124中再现内容。举例来说,检测到的几何信息112a可用以模拟用户在虚拟现实环境中的视图。
在许多情境中,期望跟踪与可穿戴装置102相关联的控制器104的移动。控制器104可在空间中与可穿戴装置102分开地移动。用于跟踪控制器104移动的两个实例使用情况是(i)在VR或AR游戏中控制手部移动,以及(ii)在具有VR的3D空间中的绘画。举例来说,如果用户在玩VR游戏,那么用户可能正在VR世界中移动。在移动的同时,用户可能想要用他们的手触摸一些对象(真实或虚拟)。如果用户在玩类似乒乓球的游戏或移动他们的手与虚拟的剑,那么将需要跟踪此移动。
6DoF跟踪的一种方法涉及使用多个外部相机用于跟踪。这些外部相机与控制器104分离。在此方法中,外部相机可安装在房间中的固定位置。外部相机可观察且跟踪控制器104在此空间中的移动。然而,因为此方法使用固定外部相机,所以这不是移动解决方案且是不经济的(例如,需要用于额外环境的额外相机)。
另一方法涉及使用可穿戴装置102上的深度相机用于跟踪用户的手。然而,由于可穿戴装置102必须执行所有3D跟踪,此方法具有高时延。此方法还具有有限的范围,因为用户的手必须始终在相机的视场中。举例来说,如果用户的手在其背部后方,那么相机无法跟踪此移动。
本文所描述的系统和方法实现三维(3D)空间中的控制器104的6DoF跟踪。在第一方法中,控制器104可自身执行6DoF跟踪。在此方法中,控制器104可确定其6DoF姿态116b且将6DoF姿态116b提供到可穿戴装置102。在第二方法中,可穿戴装置102可基于由控制器104提供的传感器数据而确定控制器104的6DoF姿态116b。此传感器数据可包含图像数据和IMU数据。结合图2描述此第二方法。
控制器104可以是游戏控制器(例如,VR游戏控制器或AR游戏控制器)。在另一实施方案中,控制器104可用于非游戏应用程序124。控制器104可经配置为手持式控制器。在另一实施方案中,控制器104可经配置以附连到用户的身体的另一部分(例如,手臂、腿、躯干等)。
控制器104可配置有相机106b和IMU 108b。在此第一方法中,控制器104也可以配置有6DoF跟踪算法110b。控制器104的相机106b、IMU 108b和6DoF跟踪算法110b可如结合可穿戴装置102描述来实施。控制器104可配置有处理器128b和存储器130b以执行6DoF跟踪算法110b。在实施方案中,处理器128b可以是应用程序数字信号处理器(ADSP)。
在实施方案中,控制器104可实施6DoF跟踪算法110b以确定与控制器104的位置和定向相关联的几何信息112b。因此,控制器104可具有6DoF跟踪算法110b的本地实施方案。
在此实施方案中,可穿戴装置102和控制器104可具有相机106和IMU 108的能力的相同集合,且可运行同一6DoF跟踪算法110。这可简化可穿戴装置102和控制器104的物理设计,且统一由6DoF跟踪算法110处理的信息的类型。然而,这不排除使用不同类型的硬件和数据来跟踪可穿戴装置102和控制器104。
在此实施方案中,由控制器104检测到的几何信息112b可包含点云114b、一或多个关键帧115b以及控制器104的6DoF姿态116b,它们可如上文所描述确定。6DoF跟踪算法110b可基于点云114b确定控制器坐标系118b。6DoF跟踪算法110b可使用由IMU 108b提供的惯性数据和/或由相机106b提供的视觉信息以确定控制器104在空间中的定向。6DoF跟踪算法110b可使6DoF姿态116b同步于控制器坐标系118b。
应注意,控制器坐标系118b与可穿戴装置坐标系118a不相同。换句话说,可穿戴装置102和控制器104并不确定环境的绝对世界坐标系。控制器104可能不具有关于世界坐标中的绝对位置的知识。控制器104具有其自身的控制器坐标系118b中的绝对位置。
因此,可穿戴装置102和控制器104具有它们在其相对坐标系118中的位置的知识。控制器104未从具有相对于空间的绝对位置的位置知识的另一源(例如,外部相机、灯塔或其它跟踪装置)获得跟踪信息。而是,控制器104自主地确定其位置和定向。
在实施方案中,控制器104可在初始化程序中确定其控制器坐标系118b。这可在控制器104的启动期间发生。此初始化程序还可以在控制器104的操作期间在不同时间发生。举例来说,如果可穿戴装置102和控制器104进入新环境,那么可穿戴装置102和控制器104可执行初始化程序以确定其相应坐标系118。
控制器104可将检测到的几何信息112b发送到可穿戴装置102以促进可穿戴装置坐标系118a与控制器坐标系118b的同步。在实施方案中,控制器104可经配置以将检测到的几何信息112b无线发送到可穿戴装置102。举例来说,控制器104与可穿戴装置102之间的通信可根据任何合适的无线通信协议(例如,WiFi、蓝牙)发生。在另一实施方案中,控制器104与可穿戴装置102之间的通信可根据任何合适的有线通信协议发生。
如上文所描述,由可穿戴装置102和控制器104本地确定的坐标系118是不同的。可穿戴装置102可包含同步模块120,其使可穿戴装置坐标系118a与控制器坐标系118b同步。同步模块120可使用从控制器104接收的检测到的几何信息112b确定从控制器坐标系118b到可穿戴装置坐标系118a的变换123。可穿戴装置102和控制器104的坐标系118可通过利用它们共享同一环境的事实而彼此同步。
应注意,可穿戴装置102可在存在允许可穿戴装置102将两个坐标系118带到一起的参考的情况下使两个6DoF位置(即,可穿戴装置102的6DoF姿态116a和控制器104的6DoF姿态116b)相关。举例来说,在初始化程序期间(例如,在启动期间)可穿戴装置102和控制器104应当同时观察空间的部分以提供将两个坐标系118带到一起的参考。
可穿戴装置102可使用从控制器104接收的点云114b以使可穿戴装置坐标系118a与控制器坐标系118b同步。当控制器104执行初始化程序时,其感测其点云114b和关键帧115b。可穿戴装置102还具有其自身的点云114a和关键帧115a的集合。因为可穿戴装置102和控制器104在移动通过同一环境,所以其关键帧115a、115b将具有重叠的特征点集合。基于此重叠特征点的集合,同步模块120可确定从控制器坐标系118b到可穿戴装置坐标系118a的变换123。因此,从控制器104发送的关键帧115b的至少一部分应当与由可穿戴装置102确定的关键帧115a的至少一部分重叠。
在实施方案中,可通过首先使用图像匹配算法以确定可穿戴装置关键帧115a与控制器关键帧115b之间的重叠特征点来获得变换123。一旦确定此类重叠特征点,就可从可穿戴装置点云114a以及控制器点云114b提取其对应3D点。对于相同的现实世界点(即,特征点),可从可穿戴装置102和控制器104获得那些点的3D信息(例如,x、y和z坐标)。可使用此3D点对应来找到变换矩阵。如果变换矩阵是以3x4矩阵表示,那么需要至少4个重叠特征点。
同步模块120可随后将6DoF姿态116b从控制器坐标系118b转换到可穿戴装置坐标系118a。举例来说,同步模块120可通过将变换123应用于接收的6DoF姿态116b而确定控制器104的转换6DoF姿态122。可穿戴装置102可随后确定控制器104的转换6DoF姿态122与可穿戴装置102的6DoF姿态116a之间的差。
可穿戴装置102可使用转换6DoF姿态122用于在应用程序124中再现内容。举例来说,一旦同步模块120计算控制器104的转换6DoF姿态122,可穿戴装置102就可使用转换6DoF姿态122用于在应用程序124中再现对应于控制器104的位置的对象(例如,手、剑等)。
控制器104可周期性地(例如,以60Hz的频率)将其计算的6DoF姿态116b发送到可穿戴装置102。同步模块120可将此更新的6DoF姿态116b从控制器坐标系118b转换到可穿戴装置坐标系118a。举例来说,同步模块120可将变换123应用于更新的6DoF姿态116b。可穿戴装置102可随后确定控制器104的转换的6DoF姿态122与可穿戴装置102的6DoF姿态116a之间的差。使用此差,可穿戴装置102可更新再现应用程序124的内容。
在实施方案中,可穿戴装置102和控制器104可周期性地更新其点云114以限制经同步坐标系118的漂移。控制器104可将点云114b更新和关键帧115b更新周期性地发送到可穿戴装置102。在接收更新的点云114b和关键帧115b之后,可穿戴装置102可即刻基于点云114b更新和关键帧115b更新使可穿戴装置102的坐标系118a与控制器104的坐标系118b同步。可如上文所描述而实现此操作。
在实施方案中,可穿戴装置102可使用由控制器104提供的点云114b来补充其自身的点云114a。如上文所描述,点云114可以具有重叠的部分。然而,可穿戴装置102可能观察不到由控制器104提供的点云114b的一些。因此,可穿戴装置102可将此信息添加到其自身的点云114a以延伸其视场。换句话说,控制器104的相机106b可充当用于可穿戴装置102的远程相机。
在又一实施方案中,可穿戴装置102可经配置以跟踪多个控制器104的6DoF运动。举例来说,用户可在每一只手中持有控制器104。在此实施方案中,控制器104中的每一个可包含相机106b和IMU 108b。此外,控制器104中的每一个可独立地实施6DoF跟踪算法110b以检测其相应的几何信息112b。可穿戴装置102可从所述多个控制器104中的每一个接收检测到的几何信息112b。
可穿戴装置102可将不同控制器104的不同坐标系118b转换为其自身的可穿戴装置坐标系118a。可穿戴装置102可随后使用控制器104中的每一个的经转换6DoF姿态122用于在应用程序124中再现内容。举例来说,可穿戴装置102可以在应用程序124中显示对应于所述多个控制器104的位置的多个对象(例如,手)。
在另一实施方案中,可穿戴装置102可经配置以将其检测到的几何信息112a发送回到控制器104。控制器104可基于从可穿戴装置102接收的检测到的几何信息112a而实施操作。举例来说,控制器104可基于从可穿戴装置102接收的检测到的几何信息112a而实施触觉反馈或发出声音。
所描述的系统和方法提供移动、灵活且无约束的6DoF控制器104。在VR和AR的情况下,所描述解决方案比现有解决方案更好,因为其允许不受限制且无约束的VR或AR 6DoF游戏体验。外部相机是不需要的,且用户不被限于特定区域。所描述解决方案允许在较低时延下的不受限的控制器104移动。举例来说,用户能够自由地移动其手。所描述解决方案还通过在控制器104中再次使用可穿戴装置102的6DoF跟踪算法110a而减少上市时间。
图2是说明经配置以用于三维空间中的6DoF跟踪的可穿戴装置202和控制器204的另一配置的框图。确切地说,此配置说明6DoF跟踪的第二方法,其中可穿戴装置202基于由控制器204提供的图像234数据和IMU数据232而确定控制器204的6DoF姿态216b。
可穿戴装置202可根据结合图1描述的可穿戴装置102实施。举例来说,可穿戴装置202可包含捕获图像数据的相机206a和测量惯性数据(例如,线性和角度运动)的IMU 208a。可穿戴装置202可配置有处理器228a和存储器230a。处理器228a可执行应用程序224和6DoF跟踪算法210a。在实施方案中,可穿戴装置202还可包含显示器226。
可穿戴装置202可实施6DoF跟踪算法210a以确定与可穿戴装置202的位置和定向相关联的几何信息212a。使用来自相机206a的图像数据和由IMU 208a提供的惯性数据,6DoF跟踪算法210a可检测点云214a、一或多个关键帧215a以及可穿戴装置202的6DoF姿态216a。点云214a和6DoF姿态216a可如结合图1所描述确定。
控制器204也可以配置有相机206b和IMU 208b。在此第二方法中,控制器204可发送几何信息212b,实施于可穿戴装置202上的6DoF跟踪算法210a根据所述几何信息确定控制器6DoF姿态216b。举例来说,控制器204可使用其相机206b捕获图像数据234。图像数据234可包含一或多个关键帧215和点云214b,其可如结合图1所描述确定。几何信息212b还可以包含如由IMU 208b测量的IMU数据232。控制器204可配置有处理器228b和存储器230b以执行一或多个操作来捕获IMU数据232和图像数据234。
控制器204可将检测到的几何信息212b发送到可穿戴装置202。控制器204还可发送IMU数据232和图像数据234,实施于可穿戴装置202上的6DoF跟踪算法210a根据所述IMU数据和图像数据确定控制器204的6DoF姿态216b。控制器204可发送带时间戳的图像数据234和带时间戳的IMU数据232以促进控制器6DoF姿态216b与可穿戴装置202的6DoF姿态216a的同步。
在接收到IMU数据232和图像数据234之后,6DoF跟踪算法210a可即刻确定控制器6DoF姿态216b。这可包含基于控制器的图像数据234和IMU数据232确定控制器204在控制器204的点云214b内的三维定向。这可如结合图1所描述实现。
可穿戴装置202可基于控制器204的点云214b和关键帧215使可穿戴装置202的坐标系118a与控制器204的坐标系118b同步。举例来说,同步模块220可确定控制器204的关键帧215与由可穿戴装置202捕获的关键帧215a之间的重叠特征点。同步模块220可随后基于重叠特征点确定控制器204的点云214b中的对应于可穿戴装置202的点云214a中的3D点的3D点。同步模块220可基于控制器204的点云214b和可穿戴装置202的点云214a的对应3D点确定变换223。可穿戴装置202可将变换223应用于控制器6DoF姿态216b以确定经转换控制器6DoF姿态222。
可穿戴装置202可使用经转换6DoF姿态222用于在应用程序224中再现内容。举例来说,一旦同步模块220计算出控制器204的经转换6DoF姿态222,可穿戴装置202就可使用经转换6DoF姿态222用于在应用程序224中再现对应于控制器204的位置的对象(例如,手、剑等)。
控制器204可将经更新传感器数据周期性地发送到可穿戴装置202。经更新传感器数据可包含经更新IMU数据232和/或图像数据234。
可穿戴装置202可使用经更新传感器数据以确定经更新控制器6DoF姿态216b。举例来说,实施于可穿戴装置202上的6DoF跟踪算法210a可如结合图1所描述确定经更新控制器6DoF姿态216b。同步模块220可将此经更新6DoF姿态216b从控制器坐标系118b转换到可穿戴装置坐标系118a。举例来说,同步模块220可将变换223应用于经更新6DoF姿态216b。
可穿戴装置202可基于第一6DoF姿态216b和经更新6DoF姿态216b在应用程序224中再现内容。举例来说,可穿戴装置202可确定第一6DoF姿态216b与经更新6DoF姿态216b之间的差。此差可指示控制器204相对于可穿戴装置202的6DoF姿态216a的位置和运动。使用此差,可穿戴装置202可更新再现应用程序224的内容。
在另一实施方案中,可穿戴装置202可经配置以跟踪多个控制器204的6DoF运动。这可如结合图1所描述实现。然而,在此方法中,可穿戴装置202可基于由控制器204提供的几何信息212b确定所述多个控制器204中的每一个的6DoF姿态216b。
当可穿戴装置202具有比控制器204更多的处理能力时此方法可为有益的。替代于在控制器204上实施6DoF跟踪,可穿戴装置202可从控制器204接收图像数据232和传感器数据。可穿戴装置202可随后使用此图像数据232和传感器数据执行用于控制器204的6DoF跟踪。
图3说明具有可穿戴装置302、第一控制器304a和第二控制器304b的用户的实例。可穿戴装置302和控制器304a-b可根据本文所描述的系统和方法实施。举例来说,可穿戴装置302和控制器304a-b可根据图1-2实施。
在此实例中,可穿戴装置302定位于用户的头部上。举例来说,可穿戴装置302可以是VR头戴装置或AR头戴装置。可穿戴装置302可执行应用程序124,其中使用控制器304的6DoF姿态116b再现内容。
可穿戴装置302可经配置以执行6DoF跟踪。举例来说,可穿戴装置302可配置有捕获图像数据的相机306a和测量可穿戴装置302的惯性数据的IMU 108a。6DoF跟踪算法110a可基于图像数据和惯性数据确定可穿戴装置302的6DoF姿态116a。
在此实例中,用户在每一只手中具有控制器304。每一控制器304可配置有捕获图像数据的相机306。举例来说,第一控制器304a可包含相机306b且第二控制器304b也可包含相机306c。每一控制器304a-b还可包含测量其相应控制器304的惯性数据的IMU 108b。虽然图3中描绘两个控制器304a-b,但应注意,可以使用单个控制器304或多于两个控制器304。
在第一方法中,每一控制器304可配置有6DoF跟踪算法110b,其基于由控制器304捕获的图像数据和惯性数据确定控制器304的6DoF姿态116b。这可如结合图1所描述实现。在第二方法中,控制器304可经配置以将由控制器304捕获的图像数据和惯性数据发送到可穿戴装置302。可穿戴装置302随后实施6DoF跟踪算法110b以确定控制器304的6DoF姿态116b。这可如结合图2所描述实现。可穿戴装置302可随后使可穿戴装置302与控制器304的坐标系118同步且基于控制器304的6DoF姿态116b在应用程序124中再现内容。
本文所描述的系统和方法的益处包含执行控制器304的6DoF跟踪而不使用观察和跟踪控制器304在某一空间中的移动的外部(例如,墙壁安装的)相机。因为控制器304包含其自身的相机306,所以控制器304能够感测其环境而不使用外部相机。这允许用户移动通过环境而不限于外部相机的视场。
本文所描述的系统和方法的另一益处包含对不在可穿戴装置302的相机306a的视场内的控制器304的6DoF跟踪。6DoF跟踪的一种方法使用可穿戴装置302的相机306a来跟踪对象(例如,手或控制器304)。然而,此方法仅当被跟踪对象在可穿戴装置302相机306a的视场内时才起作用。在此实例中,第一控制器304a可由可穿戴装置302相机306a观察。第二控制器304b在用户的头部后方且在可穿戴装置302相机306a的视场外。因此,根据此方法,无法跟踪第二控制器304b的6DoF姿态116b。
然而,本文所描述的系统和方法实现不在可穿戴装置302的相机306a的视场内的控制器304的6DoF跟踪而不使用观察控制器304的外部相机。举例来说,在第二控制器304b的情况下,可基于由第二控制器304b所捕获的图像数据和IMU数据而确定第二控制器304b的6DoF姿态116b。
图4是说明如由可穿戴装置102实施的用于跟踪控制器104的方法400的配置的流程图。可穿戴装置102和控制器104可根据图1实施。举例来说,控制器104可配置有相机106b和惯性测量单元(IMU)108b。可穿戴装置102可包含6DoF跟踪算法110a。控制器104还可包含6DoF跟踪算法110b。
可穿戴装置102可确定402可穿戴装置102的关键帧115a和点云114a。举例来说,可穿戴装置102的相机106a可捕获图像数据。可穿戴装置102可选择图像作为关键帧115a。可穿戴装置102可如结合图1所描述使用图像数据和IMU数据确定402点云114a。
可穿戴装置102可实施404 6DoF跟踪算法110a以确定可穿戴装置102的6DoF姿态116a。举例来说,可穿戴装置102可实施404 6DoF跟踪算法110a作为初始化程序的部分(例如,当可穿戴装置102启动时)。可穿戴装置102的点云114a和6DoF姿态116a在可穿戴装置坐标系118a中。
可穿戴装置102可从控制器104接收406点云114b、关键帧115b和第一6DoF姿态116b。举例来说,控制器104可使用其相机106b捕获关键帧115b。控制器104还可实施6DoF跟踪算法110b以确定其点云114b和第一6DoF姿态116b。从控制器104接收406的点云114b和第一6DoF姿态116b在控制器坐标系118b中。
可穿戴装置102可基于控制器104的点云114b和关键帧115b使可穿戴装置坐标系118a与控制器坐标系118b同步408。这可如结合图1所描述实现。举例来说,可穿戴装置102可基于可穿戴装置102的点云114a和控制器104的点云114b中的重叠特征点确定从控制器坐标系118b到可穿戴装置坐标系118a的变换123。可穿戴装置102可将变换123应用于第一6DoF姿态116b以确定控制器104的经转换6DoF姿态122。
可穿戴装置102可基于控制器104的第一6DoF姿态116b在应用程序124中再现410内容。举例来说,可穿戴装置102可使用经转换6DoF姿态122用于在应用程序124中再现对应于控制器104的位置的对象。
可穿戴装置102可从控制器104接收412第二6DoF姿态116b。举例来说,控制器104可周期性地实施6DoF跟踪算法110b以确定控制器104的第二(即,经更新)6DoF姿态116b。控制器104可随后将第二6DoF姿态116b发送到可穿戴装置102。可穿戴装置102可使用变换123将第二6DoF姿态116b转换到可穿戴装置坐标系118a。
可穿戴装置102可基于第一6DoF姿态116b和第二6DoF姿态116b在应用程序124中再现414内容。举例来说,可穿戴装置102可确定第一6DoF姿态116b与第二6DoF姿态116b之间的差。此差可指示控制器104相对于可穿戴装置102的6DoF姿态116a的位置和运动。使用此差,可穿戴装置102可在应用程序124中再现414经更新内容。
图5是说明如由控制器104实施的用于跟踪控制器104的方法500的配置的流程图。控制器104可经配置以与可穿戴装置102通信。可穿戴装置102和控制器104可根据图1实施。控制器104可配置有相机106b和IMU 108b。可穿戴装置102可包含6DoF跟踪算法110a。控制器104还可包含6DoF跟踪算法110b。
控制器104可捕获502关键帧115b。举例来说,控制器104可使用其相机106b捕获关键帧115b。
控制器104可确定504点云114b。举例来说,控制器104可使用由相机106b捕获的图像数据和由IMU 108b测量的惯性数据实施6DoF跟踪算法110b以确定其点云114b。这可如结合图1所描述来实现。
控制器104可实施506 6DoF跟踪算法110b以用于在三维空间中跟踪控制器104。举例来说,6DoF跟踪算法110b可使用点云114b、图像数据和由IMU 108b测量的惯性数据确定控制器104的三维位置和定向(即,6DoF姿态116b)。
控制器104可将点云114b、关键帧115b和6DoF姿态116b发送508到可穿戴装置102以促进可穿戴装置坐标系118a与控制器坐标系118b的同步。在实施方案中,控制器104可将点云114b、关键帧115b和其6DoF姿态116b初始地发送508到可穿戴装置102以用于在初始化程序期间(例如,当控制器104启动时)进行同步。
为了使两个坐标系118同步,从控制器104发送的关键帧115b的至少一部分应当与由可穿戴装置102确定的关键帧115a的至少一部分重叠。换句话说,控制器104和可穿戴装置102的相机106应当同时看见同一环境的至少部分以将两个坐标系118带到一起。
图6是说明如由控制器104实施的用于跟踪控制器104的方法600的另一配置的流程图。控制器104可经配置以与可穿戴装置102通信。可穿戴装置102和控制器104可根据图1实施。控制器104可配置有相机106b和IMU 108b。可穿戴装置102可包含6DoF跟踪算法110a。控制器104还可包含6DoF跟踪算法110b。
控制器104可实施602 6DoF跟踪算法110b以确定控制器104的点云114b、关键帧115b和第一6DoF姿态116b。举例来说,控制器104可实施602 6DoF跟踪算法110b作为初始化程序的部分(例如,当控制器104启动时)。应注意,这可以是6DoF跟踪算法110b的本地实施方案602。换句话说,控制器104可独立于可穿戴装置102或其它跟踪装置来实施602 6DoF跟踪算法110b。
相机106b可提供图像数据且IMU 108b可提供惯性数据到6DoF跟踪算法110b。6DoF跟踪算法110b可从图像数据确定关键帧115b。6DoF跟踪算法110b还可基于图像数据和惯性数据确定点云114b。6DoF跟踪算法110b可基于图像数据、点云114b和惯性数据确定控制器104的第一6DoF姿态116b。点云114b和6DoF姿态116b的组合可提供控制器104在其控制器坐标系118b中的位置和定向。
控制器104可将点云114b、关键帧115b和初始6DoF姿态116b发送604到可穿戴装置102。可穿戴装置102可使用点云114b、关键帧115b和初始6DoF姿态116b以促进可穿戴装置坐标系118a与控制器坐标系118b的同步,如结合图2所描述。
控制器104可实施606 6DoF跟踪算法110b以确定控制器104的第二6DoF姿态116b。举例来说,控制器104可周期性地实施606 6DoF跟踪算法110b以确定控制器104的当前(即,经更新)6DoF姿态116b。在6DoF跟踪算法110b的此实施和后续实施期间,控制器104可仅确定经更新6DoF姿态116b。换句话说,控制器104在6DoF跟踪算法110b的此实施和后续实施期间无需获得点云114b。
控制器104可将第二6DoF姿态116b发送608到可穿戴装置102。可穿戴装置102可使用第二6DoF姿态116b用于在应用程序124中再现内容。
图7是说明如由可穿戴装置102实施的用于跟踪控制器104的方法700的另一配置的流程图。可穿戴装置102和控制器104可根据图1实施。举例来说,控制器104可配置有相机106b和惯性测量单元(IMU)108b。可穿戴装置102可包含6DoF跟踪算法110a。控制器104还可包含6DoF跟踪算法110b。
可穿戴装置102可实施702 6DoF跟踪算法110a以确定点云114a、关键帧115a和6DoF姿态116a。举例来说,可穿戴装置102可实施702 6DoF跟踪算法110a作为初始化程序的部分(例如,当可穿戴装置102启动时)。可穿戴装置102的点云114a和6DoF姿态116a在可穿戴装置坐标系118a中。
可穿戴装置102可从控制器104接收704点云114b、关键帧115b和初始6DoF姿态116b。举例来说,控制器104还可实施6DoF跟踪算法110b以确定其点云114b、关键帧115b和初始6DoF姿态116b。从控制器104接收702的点云114b和初始6DoF姿态116b在控制器坐标系118b中。
可穿戴装置102可基于控制器104的关键帧115b和点云114b使可穿戴装置坐标系118a与控制器坐标系118b同步706。这可如结合图1所描述实现。举例来说,可穿戴装置102可确定从控制器坐标系118b到可穿戴装置坐标系118a的变换123。
可穿戴装置102可将控制器104的6DoF姿态116b转换708到可穿戴装置坐标系118a。举例来说,可穿戴装置102可将变换123应用于接收的6DoF姿态116b以计算经转换6DoF姿态122。
可穿戴装置102可使用控制器104的经转换6DoF姿态122在应用程序124中再现710内容。举例来说,可穿戴装置102可使用经转换6DoF姿态122用于在应用程序124中再现对应于控制器104的位置和定向的对象。
可穿戴装置102可从控制器104接收712经更新6DoF姿态116b。举例来说,控制器104可周期性地实施6DoF跟踪算法110b以确定控制器104的当前(即,经更新)6DoF姿态116b。控制器104可随后将经更新6DoF姿态116b发送到可穿戴装置102。可穿戴装置102可将经更新6DoF姿态116b转换708到可穿戴装置坐标系118a,且可使用经更新6DoF姿态116b用于在应用程序124中再现710内容。
图8是说明用于使可穿戴装置102的坐标系118a与控制器104的坐标系118b同步的方法800的配置的流程图。可穿戴装置102和控制器104可根据图1实施。举例来说,控制器104可配置有相机106b和惯性测量单元(IMU)108b。可穿戴装置102可包含6DoF跟踪算法110a。控制器104还可包含6DoF跟踪算法110b。
可穿戴装置102可确定802控制器104的关键帧115b和由可穿戴装置102捕获的关键帧115a之间的重叠特征点。控制器104可将关键帧115b发送到可穿戴装置102。在实施方案中,图像匹配算法可确定可穿戴装置关键帧115a与控制器关键帧115b之间的重叠特征点。
可穿戴装置102可基于重叠特征点确定804控制器104的点云114b中的对应于可穿戴装置102的点云114a中的三维(3D)点的3D点。一旦确定802重叠特征点,就可从可穿戴装置点云114a以及控制器点云114b提取其对应3D点。对于相同的现实世界点(即,特征点),那些点的3D信息(例如,x、y和z坐标)可从可穿戴装置102和控制器104获得。
可穿戴装置102可基于控制器104的点云114b和可穿戴装置102的点云114a的对应3D点确定806变换123。举例来说,可使用3D点对应来找到变换矩阵。如果变换矩阵是以3x4矩阵表示,那么需要至少4个重叠特征点。
可穿戴装置102可将变换123应用808于控制器104的6DoF姿态116b。举例来说,可穿戴装置102可将6DoF姿态116b乘以变换矩阵以将6DoF姿态116b从控制器坐标系118b转换到可穿戴装置坐标系118a。
图9是说明用于跟踪控制器904的程序的序列图。可穿戴装置902可与控制器904通信。可穿戴装置902可包含一或多个相机106a和一或多个IMU 108a。控制器904也可包含一或多个相机106b和一或多个IMU 108。
可穿戴装置902可实施901本地6DoF跟踪算法110a。举例来说,可穿戴装置902可实施901 6DoF跟踪算法110a作为初始化程序的部分(例如,当可穿戴装置902启动时)。作为6DoF跟踪算法110a的部分,可穿戴装置902可确定其点云114a和6DoF姿态116a。
控制器904还可实施903本地6DoF跟踪算法110b。举例来说,可穿戴装置902可实施901 6DoF跟踪算法110b作为初始化程序的部分(例如,当可穿戴装置902启动时)。作为6DoF跟踪算法110b的部分,控制器904可确定其点云114b和初始6DoF姿态116b。
控制器904可将其点云114b、关键帧115b和初始6DoF姿态116b发送905到可穿戴装置902。在从控制器904接收到点云114b、关键帧115b和初始6DoF姿态116b之后,可穿戴装置902可使可穿戴装置坐标系118a与控制器坐标系118b同步907。这可如结合图1所描述实现。举例来说,可穿戴装置902可基于点云114a-b中的重叠区之间的差异来确定从控制器坐标系118b到可穿戴装置坐标系118a的变换123。
可穿戴装置902可使用控制器904的经转换6DoF姿态122在应用程序124中再现909内容。举例来说,可穿戴装置902可将变换123应用于控制器904的初始6DoF姿态116b。可穿戴装置902可随后使用经转换6DoF姿态122用于在应用程序124中再现对应于控制器904的位置的对象。
控制器904可实施911本地6DoF跟踪算法110b以确定控制器904的经更新6DoF姿态116b。举例来说,控制器904可周期性地实施911 6DoF跟踪算法110b以确定控制器904的当前(即,经更新)6DoF姿态116b。控制器904可将经更新6DoF姿态116b发送913到可穿戴装置902。
在从控制器904接收到经更新6DoF姿态116b之后,可穿戴装置902可即刻使用经更新6DoF姿态116b在应用程序124中再现915内容。举例来说,可穿戴装置902可将变换123应用于控制器904的经更新6DoF姿态116b。可穿戴装置902可随后使用经转换6DoF姿态122用于在应用程序124中再现对应于控制器904的经更新位置的对象。
图10是说明如由可穿戴装置202实施的用于跟踪控制器204的方法1000的配置的流程图。可穿戴装置202和控制器204可根据图2实施。举例来说,控制器204可配置有相机206b和惯性测量单元(IMU)208b。可穿戴装置202可包含6DoF跟踪算法210a。
可穿戴装置202可确定1002可穿戴装置202的关键帧215a和点云214a。举例来说,可穿戴装置202的相机206a可捕获图像数据。可穿戴装置202可选择图像作为关键帧215a。可穿戴装置202可使用图像数据和IMU数据确定1002点云214a,如结合图2所描述。
可穿戴装置202可实施1004 6DoF跟踪算法210a以确定可穿戴装置202的6DoF姿态216a。举例来说,可穿戴装置202可实施1004 6DoF跟踪算法210a作为初始化程序的部分(例如,当可穿戴装置202启动时)。可穿戴装置202的点云214a和6DoF姿态216a在可穿戴装置坐标系118a中。
可穿戴装置202可从控制器204接收1006点云214b、关键帧215b和传感器数据。举例来说,控制器204可使用其相机206b捕获关键帧215b。控制器204还可基于图像数据和IMU数据232确定其点云214b。从控制器104接收1006的传感器数据可包含图像数据234和IMU数据232。在实施方案中,图像数据234和IMU数据232可为带时间戳的。
可穿戴装置202可基于控制器204的点云214b和关键帧215b使可穿戴装置坐标系118a与控制器坐标系118b同步1008。这可如结合图2所描述实现。举例来说,可穿戴装置202可基于可穿戴装置202的点云214a和控制器204的点云214b中的重叠特征点确定从控制器坐标系118b到可穿戴装置坐标系118a的变换223。
可穿戴装置202可确定1010控制器204的第一6DoF姿态216b。举例来说,可穿戴装置202可基于从控制器204接收的带时间戳的IMU数据232和带时间戳的图像数据234确定控制器204在控制器204的点云214b内的三维定向。可穿戴装置202可将变换223应用于第一6DoF姿态216b以确定控制器204的经转换6DoF姿态222。
可穿戴装置202可基于控制器204的第一6DoF姿态216b在应用程序224中再现1012内容。举例来说,可穿戴装置202可使用经转换6DoF姿态222用于在应用程序224中再现对应于控制器204的位置的对象。
可穿戴装置202可从控制器204接收1014经更新传感器数据。控制器204可将经更新传感器数据周期性地发送到可穿戴装置202。经更新传感器数据可包含经更新IMU数据232和/或图像数据234。
可穿戴装置202可使用经更新传感器数据以确定1016第二控制器6DoF姿态216b。举例来说,实施于可穿戴装置202上的6DoF跟踪算法210a可如结合图2所描述确定第二控制器6DoF姿态216b。可穿戴装置202可将此第二6DoF姿态216b从控制器坐标系118b转换到可穿戴装置坐标系118a。举例来说,同步模块220可将变换223应用于第二6DoF姿态216b。
可穿戴装置202可基于第二6DoF姿态216b在应用程序224中再现1018内容。举例来说,可穿戴装置202可确定第一6DoF姿态216b与第二6DoF姿态216b之间的差。此差可指示控制器204相对于可穿戴装置202的6DoF姿态216a的位置和运动。使用此差,可穿戴装置202可更新再现1018应用程序224的内容。
图11是说明用于跟踪控制器1104的另一程序的序列图。可穿戴装置1102可与控制器1104通信。可穿戴装置1102和控制器1104可根据图2实施。举例来说,可穿戴装置1102可包含一或多个相机206a和一或多个IMU 208a。控制器1104也可包含一或多个相机206b和一或多个IMU 208。
可穿戴装置1102可实施1101本地6DoF跟踪算法210a。举例来说,可穿戴装置1102可实施1101 6DoF跟踪算法210a作为初始化程序的部分(例如,当可穿戴装置1102启动时)。作为6DoF跟踪算法210a的部分,可穿戴装置1102可确定其点云214a、关键帧215a和6DoF姿态216a。
控制器1104可将其点云214b、关键帧215b和传感器数据发送1103到可穿戴装置1102。举例来说,控制器1104可使用其相机206b捕获关键帧215b。控制器1104还可基于图像数据234和IMU数据232确定其点云214b。发送1103到可穿戴装置1102的传感器数据可包含由相机206b捕获的带时间戳的IMU数据232和带时间戳的图像数据234。
在从控制器1104接收到点云214b、关键帧215b和传感器数据之后,可穿戴装置1102可即刻实施1105 6DoF跟踪算法210a以确定控制器1104的6DoF姿态216b。举例来说,可穿戴装置1102可基于从控制器1104接收的IMU数据232确定控制器1104在控制器1104的点云214b内的三维定向。
可穿戴装置1102可使可穿戴装置坐标系218a与控制器坐标系218b同步1107。这可如结合图2所描述实现。举例来说,可穿戴装置1102可基于点云214a-b中的重叠区之间的差异来确定从控制器坐标系218b到可穿戴装置坐标系218a的变换223。
可穿戴装置1102可使用控制器1104的经转换6DoF姿态222在应用程序224中再现1109内容。举例来说,可穿戴装置1102可将变换223应用于控制器1104的初始6DoF姿态216b。可穿戴装置1102可随后使用经转换6DoF姿态222用于在应用程序224中再现对应于控制器1104的位置的对象。
控制器1104可发送1111经更新传感器数据。举例来说,控制器1104可将经更新IMU数据232和/或图像数据234周期性地发送1111到可穿戴装置1102。
在接收到经更新传感器数据之后,可穿戴装置1102可即刻实施1113 6DoF跟踪算法210a以确定控制器1104的经更新6DoF姿态216b。举例来说,可穿戴装置1102可基于从控制器1104接收的经更新IMU数据232确定控制器1104在控制器1104的点云214b内的三维定向。
可穿戴装置1102可使用经更新6DoF姿态216b在应用程序224中再现1115内容。举例来说,可穿戴装置1102可将变换223应用于控制器1104的经更新6DoF姿态216b。可穿戴装置1102可随后使用经转换6DoF姿态222用于在应用程序224中再现对应于控制器1104的经更新位置的对象。
图12说明可包含于电子装置1232内的某些组件。结合图12描述的电子装置1232可以是结合图1描述的可穿戴装置102或控制器104或结合图2描述的可穿戴装置202或控制器204的实例和/或可根据它们来实施。
电子装置1232包含处理器1203。处理器1203可以是通用单芯片或多芯片微处理器(例如,高级精简指令集计算机(RISC)机器(ARM))、专用微处理器(例如,数字信号处理器(DSP))、微控制器、可编程门阵列等。处理器1203可称为中央处理单元(CPU)。虽然图12的电子装置1232中示出仅单个处理器1203,但在替代配置中,可使用处理器的组合(例如,ARM和DSP)。
电子装置1232还包含与处理器1203电子通信的存储器1205(即,处理器可从存储器读取信息和/或对存储器写入信息)。存储器1205可以是能够存储电子信息的任何电子组件。存储器1205可被配置为随机存取存储器(RAM)、只读存储器(ROM)、磁盘存储媒体、光学存储媒体、RAM中的快闪存储器装置、与处理器一起包含的机载存储器、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、寄存器等等,包含其组合。
数据1207a和指令1209a可存储在存储器1205中。指令1209a可包含一或多个程序、例程、子例程、函数、程序、代码等。指令1209a可包括单个计算机可读语句或许多计算机可读语句。指令1209a可由处理器1203执行以实施本文中所揭示的方法。执行指令1209a可涉及使用存储于存储器1205中的数据1207a。当处理器1203执行指令1209时,可将指令1209b的各种部分加载到处理器1203上,且可将各条数据1207b加载到处理器1203上。
电子装置1232还可包含发射器1211和接收器1213以允许经由天线1217向电子装置1232传输信号和从所述电子装置接收信号。发射器1211和接收器1213可共同称为收发器1215。电子装置1232还可包含(未图示)多个发射器、多个天线、多个接收器和/或多个收发器。
电子装置1232可包含数字信号处理器(DSP)1221。电子装置1232还可包含通信接口1223。通信接口1223可允许用户与电子装置1232交互。
电子装置1232的各种组件可通过一或多个总线耦合在一起,所述一或多个总线可包含电力总线、控制信号总线、状态信号总线、数据总线等。为清楚起见,各种总线在图12中被说明为总线系统1219。
在以上描述中,有时结合各种术语而使用参考标号。在术语结合参考标号使用的情况下,这可意在指代图中的一或多个图中所示的特定元件。在无参考标号而使用术语的情况下,此可意味着大体指代所述术语,而不限于任何特定图。
术语“确定”涵盖多种多样的动作,且因此“确定”可以包含计算、运算、处理、导出、调查、查找(例如,在表、数据库或另一数据结构中查找)、查实及类似者。并且,“确定”可包含接收(例如,接收信息)、存取(例如,存取存储器中的数据)等。此外,“确定”可包含解析、选择、挑选、建立等等。
除非另外明确地指定,否则短语“基于”并不意味着“仅基于”。换句话说,短语“基于”描述“仅基于”和“基于至少”两者。
应注意,在兼容的情况下,结合本文中所描述的配置中的任一者所描述的特征、功能、程序、组件、元件、结构等中的一或多者可与结合本文中所描述的其它配置中的任一者所描述的功能、程序、组件、元件、结构等中的一或多者组合。换句话说,可根据本文中所公开的系统和方法来实施本文中所描述的功能、程序、组件、元件等的任何相容的组合。
可将本文中所描述的功能作为一或多个指令存储在处理器可读或计算机可读媒体上。术语“计算机可读媒体”是指可由计算机或处理器存取的任何可用媒体。借助于实例而非限制,此类媒体可包括随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器、压缩光盘只读存储器(CD-ROM)或其它光盘存储装置、磁盘存储器或其它磁性存储装置,或可用于以指令或数据结构的形式存储所要的程序代码且可由计算机存取的任何其它媒体。如本文所使用的磁盘及光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软磁盘及Blu-光盘,其中磁盘通常是以磁性方式再现数据,而光盘是用激光以光学方式再现数据。应注意,计算机可读媒体可为有形的和非暂时性的。术语“计算机程序产品”指代与可由计算装置或处理器执行、处理或计算的代码或指令(例如,“程序”)组合的计算装置或处理器。如本文中所使用,术语“代码”可指可由计算装置或处理器执行的软件、指令、代码或数据。
还可经由传输媒体传输软件或指令。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或无线技术(例如,红外线、无线电及微波)从网站、服务器或其它远程源传输软件,则同轴电缆、光纤电缆、双绞线、DSL或无线技术(例如,红外线、无线电及微波)包含在传输媒体的定义中。
本文所揭示的方法包括用于实现所描述的方法的一或多个步骤或动作。在不脱离权利要求书的范围的情况下,方法步骤和/或动作可以彼此互换。换句话说,除非正描述的方法的适当操作需要步骤或动作的特定次序,否则,在不脱离权利要求书的范围的情况下,可修改特定步骤及/或动作的次序及/或使用。
应理解,权利要求书不限于上文所说明的精确配置和组件。在不脱离权利要求书的范围的情况下,可在本文中所描述的系统、方法和设备的布置、操作和细节方面作出各种修改、改变和变更。

Claims (30)

1.一种由可穿戴装置进行的方法,其包括:
从控制器接收几何信息,所述几何信息包含所述控制器的点云和关键帧,从所述控制器接收第一六自由度6DoF姿态信息;
基于所述控制器的所述点云和所述关键帧使所述可穿戴装置的坐标系与所述控制器的坐标系同步;以及
基于所述第一6DoF姿态信息在应用程序中再现内容。
2.根据权利要求1所述的方法,其中所述第一6DoF姿态信息包含由实施于所述控制器上的6DoF跟踪算法确定的第一6DoF姿态。
3.根据权利要求1所述的方法,其中所述第一6DoF姿态信息包含图像数据和惯性测量单元IMU数据,实施于所述可穿戴装置上的6DoF跟踪算法根据所述图像数据和惯性测量单元数据确定所述控制器的第一6DoF姿态。
4.根据权利要求3所述的方法,其中通过实施于所述可穿戴装置上的所述6DoF跟踪算法确定所述控制器的所述第一6DoF姿态包括:
基于从所述控制器接收的带时间戳的IMU数据和带时间戳的图像数据确定所述控制器在所述控制器的所述点云内的三维定向。
5.根据权利要求1所述的方法,其进一步包括:
从所述控制器接收由实施于所述控制器上的所述6DoF跟踪算法确定的所述控制器的第二6DoF姿态或者实施于所述可穿戴装置上的所述6DoF跟踪算法根据其来确定所述第二6DoF姿态的经更新图像数据和经更新IMU数据;以及
基于所述第二6DoF姿态在所述应用程序中再现内容。
6.根据权利要求1所述的方法,其中使所述可穿戴装置的所述坐标系与所述控制器的所述坐标系同步包括:
确定所述控制器的所述关键帧与由所述可穿戴装置捕获的关键帧之间的重叠特征点;以及
基于所述重叠特征点确定所述控制器的所述点云中的对应于所述可穿戴装置的点云中的三维3D点的3D点。
7.根据权利要求6所述的方法,其中使所述可穿戴装置的所述坐标系与所述控制器的所述坐标系同步进一步包括:
基于所述控制器的所述点云和所述可穿戴装置的所述点云的所述对应3D点确定变换;以及
将所述变换应用于所述第一6DoF姿态。
8.根据权利要求1所述的方法,其进一步包括:
从所述控制器接收周期性点云更新和关键帧更新;以及
基于所述点云更新和所述关键帧更新使所述可穿戴装置的所述坐标系与所述控制器的所述坐标系同步。
9.根据权利要求1所述的方法,其进一步包括在所述可穿戴装置上实施6DoF跟踪算法以确定所述可穿戴装置的6DoF姿态。
10.根据权利要求9所述的方法,其中在所述应用程序中再现内容还基于所述可穿戴装置的所述6DoF姿态。
11.根据权利要求1所述的方法,其进一步包括基于从所述可穿戴装置接收的图像数据确定所述可穿戴装置的点云和关键帧。
12.一种可穿戴装置,其包括:
存储器;以及
与所述存储器通信的处理器,所述处理器经配置以:
从控制器接收几何信息,所述几何信息包含所述控制器的点云和关键帧,
从所述控制器接收第一六自由度6DoF姿态信息;
基于所述控制器的所述点云和所述关键帧使所述可穿戴装置的坐标系与所述控制器的坐标系同步;以及
基于所述第一6DoF姿态信息在应用程序中再现内容。
13.根据权利要求12所述的可穿戴装置,其中所述第一6DoF姿态信息包含由实施于所述控制器上的6DoF跟踪算法确定的第一6DoF姿态。
14.根据权利要求12所述的可穿戴装置,其中所述第一6DoF姿态信息包含图像数据和惯性测量单元IMU数据,实施于所述可穿戴装置上的6DoF跟踪算法根据所述图像数据和惯性测量单元数据确定所述控制器的第一6DoF姿态。
15.根据权利要求14所述的可穿戴装置,其中通过实施于所述可穿戴装置上的所述6DoF跟踪算法确定所述控制器的所述第一6DoF姿态包括:
基于从所述控制器接收的带时间戳的IMU数据和带时间戳的图像数据确定所述控制器在所述控制器的所述点云内的三维定向。
16.根据权利要求12所述的可穿戴装置,所述处理器进一步经配置以:
从所述控制器接收由实施于所述控制器上的所述6DoF跟踪算法确定的所述控制器的第二6DoF姿态或者实施于所述可穿戴装置上的所述6DoF跟踪算法根据其来确定所述第二6DoF姿态的经更新图像数据和经更新IMU数据;以及
基于所述第二6DoF姿态在所述应用程序中再现内容。
17.根据权利要求12所述的可穿戴装置,其中使所述可穿戴装置的所述坐标系与所述控制器的所述坐标系同步包括:
确定所述控制器的所述关键帧与由所述可穿戴装置捕获的关键帧之间的重叠特征点;以及
基于所述重叠特征点确定所述控制器的所述点云中的对应于所述可穿戴装置的点云中的三维3D点的3D点。
18.根据权利要求17所述的可穿戴装置,其中使所述可穿戴装置的所述坐标系与所述控制器的所述坐标系同步进一步包括:
基于所述控制器的所述点云和所述可穿戴装置的所述点云的所述对应3D点确定变换;以及
将所述变换应用于所述第一6DoF姿态。
19.根据权利要求12所述的可穿戴装置,所述处理器进一步经配置以:
从所述控制器接收周期性点云更新和关键帧更新;以及
基于所述点云更新和所述关键帧更新使所述可穿戴装置的所述坐标系与所述控制器的所述坐标系同步。
20.根据权利要求12所述的可穿戴装置,所述处理器进一步经配置以在所述可穿戴装置上实施6DoF跟踪算法以确定所述可穿戴装置的6DoF姿态。
21.根据权利要求20所述的可穿戴装置,其中在所述应用程序中再现内容还基于所述可穿戴装置的所述6DoF姿态。
22.一种计算机程序产品,所述计算机程序产品包括其上具有指令的非暂时性计算机可读媒体,所述指令包括:
用于致使可穿戴装置从控制器接收几何信息的代码,所述几何信息包含所述控制器的点云和关键帧,
用于致使所述可穿戴装置从所述控制器接收第一六自由度6DoF姿态信息的代码;
用于致使所述可穿戴装置基于所述控制器的所述点云和所述关键帧使所述可穿戴装置的坐标系与所述控制器的坐标系同步的代码;以及
用于致使所述可穿戴装置基于所述第一6DoF姿态信息在应用程序中再现内容的代码。
23.根据权利要求22所述的计算机程序产品,其中所述第一6DoF姿态信息包含由实施于所述控制器上的6DoF跟踪算法确定的第一6DoF姿态。
24.根据权利要求22所述的计算机程序产品,其中所述第一6DoF姿态信息包含图像数据和惯性测量单元IMU数据,实施于所述可穿戴装置上的6DoF跟踪算法根据所述图像数据和惯性测量单元数据确定所述控制器的第一6DoF姿态。
25.根据权利要求24所述的计算机程序产品,其中用于致使所述可穿戴装置通过实施于所述可穿戴装置上的所述6DoF跟踪算法确定所述控制器的所述第一6DoF姿态的所述代码包括:
用于致使所述可穿戴装置基于从所述控制器接收的带时间戳的IMU数据和带时间戳的图像数据确定所述控制器在所述控制器的所述点云内的三维定向的代码。
26.根据权利要求22所述的计算机程序产品,所述指令进一步包括:
用于致使所述可穿戴装置从所述控制器接收由实施于所述控制器上的所述6DoF跟踪算法确定的所述控制器的第二6DoF姿态或者实施于所述可穿戴装置上的所述6DoF跟踪算法根据其来确定所述第二6DoF姿态的经更新图像数据和经更新IMU数据的代码;以及
用于致使所述可穿戴装置基于所述第二6DoF姿态在所述应用程序中再现内容的代码。
27.根据权利要求22所述的计算机程序产品,其中用于致使所述可穿戴装置使所述可穿戴装置的所述坐标系与所述控制器的所述坐标系同步的所述代码包括:
用于致使所述可穿戴装置确定所述控制器的所述关键帧与由所述可穿戴装置捕获的关键帧之间的重叠特征点的代码;以及
用于致使所述可穿戴装置基于所述重叠特征点确定所述控制器的所述点云中的对应于所述可穿戴装置的点云中的三维3D点的3D点的代码。
28.根据权利要求27所述的计算机程序产品,其中用于致使所述可穿戴装置使所述可穿戴装置的所述坐标系与所述控制器的所述坐标系同步的所述代码进一步包括:
用于致使所述可穿戴装置基于所述控制器的所述点云和所述可穿戴装置的所述点云的所述对应3D点确定变换的代码;以及
用于致使所述可穿戴装置将所述变换应用于所述第一6DoF姿态的代码。
29.根据权利要求22所述的计算机程序产品,所述指令进一步包括:
用于致使所述可穿戴装置从所述控制器接收周期性点云更新和关键帧更新的代码;以及
用于致使所述可穿戴装置基于所述点云更新和所述关键帧更新使所述可穿戴装置的所述坐标系与所述控制器的所述坐标系同步的代码。
30.根据权利要求22所述的计算机程序产品,其中在所述应用程序中再现内容还基于所述可穿戴装置的6DoF姿态。
CN201780082188.0A 2017-01-27 2017-11-27 用于跟踪控制器的系统和方法 Active CN110140099B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/417,608 2017-01-27
US15/417,608 US11740690B2 (en) 2017-01-27 2017-01-27 Systems and methods for tracking a controller
PCT/US2017/063240 WO2018140129A1 (en) 2017-01-27 2017-11-27 Systems and methods for tracking a controller

Publications (2)

Publication Number Publication Date
CN110140099A true CN110140099A (zh) 2019-08-16
CN110140099B CN110140099B (zh) 2022-03-11

Family

ID=60655131

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780082188.0A Active CN110140099B (zh) 2017-01-27 2017-11-27 用于跟踪控制器的系统和方法

Country Status (3)

Country Link
US (2) US11740690B2 (zh)
CN (1) CN110140099B (zh)
WO (1) WO2018140129A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6368404B1 (ja) * 2017-07-04 2018-08-01 株式会社コロプラ 情報処理方法、プログラム及びコンピュータ
EP3676805A4 (en) * 2017-08-30 2021-06-02 Skill Real Ltd AUGMENTED REALITY ASSISTED
WO2019161903A1 (en) * 2018-02-23 2019-08-29 Telefonaktiebolaget Lm Ericsson (Publ) Coordinating alignment of coordinate systems used for a computer generated reality device and a haptic device
WO2019173524A1 (en) * 2018-03-07 2019-09-12 Magic Leap, Inc. Visual tracking of peripheral devices
CN109712172A (zh) * 2018-12-28 2019-05-03 哈尔滨工业大学 一种初始位姿测量结合目标追踪的位姿测量方法
CN109771949A (zh) * 2019-01-14 2019-05-21 珠海金山网络游戏科技有限公司 一种游戏内动态调整渲染等级的方法和系统
US10902265B2 (en) * 2019-03-27 2021-01-26 Lenovo (Singapore) Pte. Ltd. Imaging effect based on object depth information
CN113646730A (zh) * 2019-03-28 2021-11-12 索尼集团公司 信息处理装置、信息处理方法和程序
CN111553844B (zh) * 2020-04-29 2023-08-29 阿波罗智能技术(北京)有限公司 用于更新点云的方法及装置
CN111667535B (zh) * 2020-06-04 2023-04-18 电子科技大学 一种针对遮挡场景下的六自由度位姿估计方法
CN115552356A (zh) * 2020-06-05 2022-12-30 Oppo广东移动通信有限公司 头戴式显示装置的跟踪方法和头戴式显示系统
CN111798489B (zh) * 2020-06-29 2024-03-08 北京三快在线科技有限公司 一种特征点跟踪方法、设备、介质及无人设备
US11320896B2 (en) * 2020-08-03 2022-05-03 Facebook Technologies, Llc. Systems and methods for object tracking using fused data
EP4203188A4 (en) * 2020-10-12 2024-03-20 Samsung Electronics Co Ltd ELECTRONIC DEVICE WITH UWB ANTENNA AND 6DOF IMPLEMENTATION METHOD
CN112416125A (zh) * 2020-11-17 2021-02-26 青岛小鸟看看科技有限公司 Vr头戴式一体机
CN112822480B (zh) * 2020-12-31 2022-05-17 青岛小鸟看看科技有限公司 Vr系统及其定位追踪方法
US11947740B2 (en) 2021-06-02 2024-04-02 Qingdao Pico Technology Co., Ltd. 6DoF positioning tracking device and method, and electronic apparatus
CN113514060A (zh) * 2021-06-02 2021-10-19 青岛小鸟看看科技有限公司 6DoF定位追踪装置、方法及电子设备
CN116964599A (zh) * 2022-02-25 2023-10-27 厦门大学 基于激光雷达的三维人体动作捕捉方法、训练方法及系统

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102193631A (zh) * 2011-05-05 2011-09-21 上海大学 可穿戴式三维手势交互系统及其使用方法
CN104011788A (zh) * 2011-10-28 2014-08-27 奇跃公司 用于增强和虚拟现实的系统和方法
CN104238738A (zh) * 2013-06-07 2014-12-24 索尼电脑娱乐美国公司 在头戴式系统内产生增强虚拟现实场景的系统和方法
US20150142248A1 (en) * 2013-11-20 2015-05-21 Electronics And Telecommunications Research Institute Apparatus and method for providing location and heading information of autonomous driving vehicle on road within housing complex
CN104699247A (zh) * 2015-03-18 2015-06-10 北京七鑫易维信息技术有限公司 一种基于机器视觉的虚拟现实交互系统及方法
CN105247573A (zh) * 2013-06-11 2016-01-13 高通股份有限公司 用于数据库创建目的的交互式且自动3d对象扫描方法
US20160026253A1 (en) * 2014-03-11 2016-01-28 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
CN105378596A (zh) * 2013-06-08 2016-03-02 索尼电脑娱乐公司 用于头戴式显示器中在透明模式与非透明模式之间转变的系统和方法
US9459692B1 (en) * 2016-03-29 2016-10-04 Ariadne's Thread (Usa), Inc. Virtual reality headset with relative motion head tracker
US20160364013A1 (en) * 2015-06-15 2016-12-15 Oculus Vr, Llc Tracking Controllers of a Virtual Reality System

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997011386A1 (en) 1995-09-21 1997-03-27 Omniplanar, Inc. Method and apparatus for determining position and orientation
JP2013521576A (ja) 2010-02-28 2013-06-10 オスターハウト グループ インコーポレイテッド 対話式ヘッド取付け型アイピース上での地域広告コンテンツ
KR20130098770A (ko) 2012-02-28 2013-09-05 한국전자통신연구원 입체감 확장형 가상 스포츠 체험 시스템
WO2014204330A1 (en) 2013-06-17 2014-12-24 3Divi Company Methods and systems for determining 6dof location and orientation of head-mounted display and associated user movements
US9898091B2 (en) 2015-06-03 2018-02-20 Oculus Vr, Llc Virtual reality system with head-mounted display, camera and hand-held controllers
US10317989B2 (en) * 2016-03-13 2019-06-11 Logitech Europe S.A. Transition between virtual and augmented reality
US20180005445A1 (en) 2016-06-30 2018-01-04 Microsoft Technology Licensing, Llc Augmenting a Moveable Entity with a Hologram
US10560755B2 (en) * 2016-09-23 2020-02-11 Verizon Patent And Licensing Inc. Methods and systems for concurrently transmitting object data by way of parallel network interfaces
DE202017006742U1 (de) * 2016-11-15 2019-02-19 Google Llc Eingabegerät-Stabilisierungstechniken für virtuelle Realitätssysteme

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102193631A (zh) * 2011-05-05 2011-09-21 上海大学 可穿戴式三维手势交互系统及其使用方法
CN104011788A (zh) * 2011-10-28 2014-08-27 奇跃公司 用于增强和虚拟现实的系统和方法
CN104238738A (zh) * 2013-06-07 2014-12-24 索尼电脑娱乐美国公司 在头戴式系统内产生增强虚拟现实场景的系统和方法
CN105378596A (zh) * 2013-06-08 2016-03-02 索尼电脑娱乐公司 用于头戴式显示器中在透明模式与非透明模式之间转变的系统和方法
CN105247573A (zh) * 2013-06-11 2016-01-13 高通股份有限公司 用于数据库创建目的的交互式且自动3d对象扫描方法
US20150142248A1 (en) * 2013-11-20 2015-05-21 Electronics And Telecommunications Research Institute Apparatus and method for providing location and heading information of autonomous driving vehicle on road within housing complex
US20160026253A1 (en) * 2014-03-11 2016-01-28 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
CN104699247A (zh) * 2015-03-18 2015-06-10 北京七鑫易维信息技术有限公司 一种基于机器视觉的虚拟现实交互系统及方法
US20160364013A1 (en) * 2015-06-15 2016-12-15 Oculus Vr, Llc Tracking Controllers of a Virtual Reality System
US9459692B1 (en) * 2016-03-29 2016-10-04 Ariadne's Thread (Usa), Inc. Virtual reality headset with relative motion head tracker

Also Published As

Publication number Publication date
WO2018140129A1 (en) 2018-08-02
US20180217663A1 (en) 2018-08-02
CN110140099B (zh) 2022-03-11
US11740690B2 (en) 2023-08-29
US20230341930A1 (en) 2023-10-26

Similar Documents

Publication Publication Date Title
CN110140099A (zh) 用于跟踪控制器的系统和方法
CN110047104B (zh) 对象检测和跟踪方法、头戴式显示装置和存储介质
CN104380347B (zh) 视频处理设备、视频处理方法和视频处理系统
CN104699247B (zh) 一种基于机器视觉的虚拟现实交互系统及方法
EP2579128B1 (en) Portable device, virtual reality system and method
US11042028B1 (en) Relative pose data augmentation of tracked devices in virtual environments
CN109146965A (zh) 信息处理装置和计算机程序
JP6348741B2 (ja) 情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法
JP2022533509A (ja) 人工現実システムにおける身体姿勢トラッキングのための磁気センサーサンプリング周波数の同期
CN109643014A (zh) 头戴式显示器追踪
US20140267234A1 (en) Generation and Sharing Coordinate System Between Users on Mobile
US10547974B1 (en) Relative spatial localization of mobile devices
US11321929B2 (en) System and method for spatially registering multiple augmented reality devices
CN109671118A (zh) 一种虚拟现实多人交互方法、装置及系统
US10706634B1 (en) System for generating augmented reality content from a perspective view of an unmanned aerial vehicle
US11605192B2 (en) Skeleton model update apparatus, skeleton model update method, and program
WO2017213070A1 (ja) 情報処理装置および方法、並びに記録媒体
Oskiper et al. Augmented reality binoculars
CN108733206A (zh) 一种坐标对齐方法、系统和虚拟现实系统
JP2023126474A (ja) 拡張現実のためのシステムおよび方法
CN105183142B (zh) 一种利用空间位置装订的数字信息复现方法
US20210390750A1 (en) Skeleton model update apparatus, skeleton model update method, and program
WO2021137348A1 (ko) 복수의 단말에서 3차원 공간정보를 공유하기 위한 공간맵 생성과 명령실행점 독출방법
Zanaty et al. 3D visualization for Intelligent Space: Time-delay compensation in a remote controlled environment
US11310472B2 (en) Information processing device and image generation method for projecting a subject image onto a virtual screen

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
GR01 Patent grant
GR01 Patent grant