CN110362193B - 用手或眼睛跟踪辅助的目标跟踪方法及*** - Google Patents

用手或眼睛跟踪辅助的目标跟踪方法及*** Download PDF

Info

Publication number
CN110362193B
CN110362193B CN201910280597.2A CN201910280597A CN110362193B CN 110362193 B CN110362193 B CN 110362193B CN 201910280597 A CN201910280597 A CN 201910280597A CN 110362193 B CN110362193 B CN 110362193B
Authority
CN
China
Prior art keywords
image data
target
tracking area
tracking
imaging device
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.)
Active
Application number
CN201910280597.2A
Other languages
English (en)
Other versions
CN110362193A (zh
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.)
Meta Platforms Technologies LLC
Original Assignee
Meta Platforms Technologies LLC
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 Meta Platforms Technologies LLC filed Critical Meta Platforms Technologies LLC
Publication of CN110362193A publication Critical patent/CN110362193A/zh
Application granted granted Critical
Publication of CN110362193B publication Critical patent/CN110362193B/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
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/24Character recognition characterised by the processing or recognition method
    • G06V30/248Character recognition characterised by the processing or recognition method involving plural approaches, e.g. verification by template match; Resolving confusion among similar patterns, e.g. "O" versus "Q"
    • G06V30/2504Coarse or fine approaches, e.g. resolution of ambiguities or multiscale approaches
    • 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/013Eye 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/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/0304Detection arrangements using opto-electronic means
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/107Static hand or arm
    • G06V40/113Recognition of static hand signs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/193Preprocessing; Feature extraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/012Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment
    • 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/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/042Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means
    • G06F3/0425Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means using a single imaging device like a video camera for tracking the absolute position of a single or a plurality of objects with respect to an imaged reference surface, e.g. video camera imaging a display or a projection screen, a table or a wall surface, on which a computer generated image is displayed or projected
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Ophthalmology & Optometry (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)

Abstract

本公开涉及用手或眼睛跟踪辅助的目标跟踪方法及***。实施方式涉及跟踪和确定用户周围环境中的目标的位置。一种***包括一个或多个成像装置和目标跟踪单元。***识别搜索区域中的目标,确定小于对应于目标的搜索区域的跟踪区域,并扫描跟踪区域以确定与目标相关联的位置。***可以生成目标的排序,确定与目标相关联的位置,并基于与目标相关联的位置生成搜索区域的模型。

Description

用手或眼睛跟踪辅助的目标跟踪方法及***
技术领域
本公开一般涉及人工现实***,并且更具体地涉及跟踪目标并获得局部区域中的目标的位置信息。
背景技术
虚拟现实(VR)***、增强现实(AR)和混合现实(MR)***可以利用三维(3D)中的目标的捕获。不同的相机成像架构提供不同的优点和缺点,因此某些相机成像架构可以在不同的操作条件下提供比其他相机成像架构更好的性能。期望***跟踪目标(包括用户的目标,诸如用户的手或用户周围的环境中的目标),以生成输入并根据输入向用户呈现交互式显示。但是,通常需要大量的数据和计算资源来进行有效的实时目标跟踪。
发明内容
实施方式涉及跟踪和确定与受监视环境中的目标相关联的一个或多个位置。一种***包括一个或多个成像装置和目标跟踪单元。***识别由一个或多个成像装置捕获的图像的搜索区域中的目标,确定小于对应于目标的搜索区域的跟踪区域,并随时间扫描跟踪区域以随时间确定与该目标相关联的位置。在一些实施方式中,***可以生成一个或多个搜索区域中的目标的排序,确定与目标相关联的跟踪区域,根据目标的排序扫描跟踪区域以随时间确定与目标相关联的位置,并基于与目标相关联的位置生成一个或多个搜索区域的模型或环境的模型。目标可以与一个或多个位置相关联。例如,用户的手姿势可以由空间中的多个手特征(例如,关节)的位置来定义。
在一些实施方式中,目标跟踪单元接收由一个或多个成像装置捕获的搜索区域的搜索区域图像数据。目标跟踪单元基于搜索区域图像数据识别搜索区域中的目标。目标跟踪单元从搜索区域图像数据中确定与目标相对应的跟踪区域,跟踪区域小于搜索区域。目标跟踪单元接收由一个或多个成像装置捕获的跟踪区域的跟踪区域图像数据。目标跟踪单元基于跟踪区域的跟踪区域图像数据确定与目标相关联的位置。
在一些实施方式中,第一成像装置可以生成搜索区域的搜索区域图像数据,且第二成像装置可以生成跟踪区域的跟踪区域图像数据。第一成像装置可以是与第二成像装置相同类型的装置,或者可以是不同类型的成像装置。在一些实施方式中,单个成像装置可扫描搜索区域以生成搜索区域图像数据,并且单个成像装置可以扫描跟踪区域以生成跟踪区域图像数据。
在一些实施方式中,***可以提供用户目标选择以进行位置跟踪。***可以包括手跟踪单元以确定用户的手姿势或眼睛跟踪单元以确定用户的眼睛位置。目标跟踪单元可以基于用户的手姿势或眼睛位置来确定目标的选择,并且可以随时间扫描目标的跟踪区域以跟踪与目标相关联的位置。
附图说明
图1是根据实施方式的包括目标跟踪单元的***环境的框图。
图2A示出根据实施方式的扫描搜索区域的单个成像装置。
图2B示出根据实施方式的扫描跟踪区域的单个成像装置。
图3A示出根据实施方式的扫描搜索区域的多个成像装置。
图3B示出根据实施方式的扫描跟踪区域的所选成像装置。
图4示出根据实施方式的用于跟踪目标的过程的流程图。
图5示出根据实施方式的用于通过跟踪环境中的多个目标来生成环境模型的过程的流程图。
附图仅出于说明的目的描绘本公开的实施方式。本领域技术人员将从以下描述中容易地认识到,在不背离本文描述的本公开的原则或吹捧好处的情况下,可以采用本文所述的结构和方法的替代实施方式。
具体实施方式
***概述
本文讨论的实施方式可以包括人工现实***,或者与人工现实***结合实施。人工现实是在呈现给用户之前已经以某种方式调整的现实形式,其可以包括例如虚拟现实(VR)、增强现实(AR)、混合现实(mixed reality,MR)、混合现实(hybrid reality)、或其某些组合和/或衍生物。人工现实内容可以包括完全生成的内容、以及与捕获的(例如,真实世界)内容结合的所生成的内容。人工现实内容可以包括视频、音频、触觉反馈或其某种组合,并且其中的任何一个可以在单个频道或多个频道中呈现(诸如向观看者产生三维效果的立体视频)。另外,在一些实施方式中,人工现实还可以与用于例如在人工现实中创建内容和/或以其他方式在人工现实中使用(例如,执行活动)的应用、产品、附件、服务或其某种组合相关联。提供人工现实内容的人工现实***可以在各种平台上实现,包括连接到主计算机***的头戴式显示器(HMD),独立HMD,移动装置或计算***,或者能够向一个或多个观众提供人工现实内容的任何其他硬件平台。
实施方式涉及跟踪和确定与环境中的目标相关联的一个或多个位置。一种***包括一个或多个成像装置和目标跟踪单元。***识别搜索区域中的目标,确定对应于小于搜索区域的目标的跟踪区域,并扫描跟踪区域以确定与目标相关联的位置(例如,随时间)。通过扫描较小的跟踪区域而不是较大的搜索区域以跟踪目标的精确位置,创建较小的图像数据帧并以编程方式处理。因此,提高了目标跟踪的速度和效率。
在一些实施方式中,***生成环境模型。例如,该模型可用于渲染包括环境中的一个或多个目标的视频内容以用于人工现实应用。***可以生成目标的排序,确定与目标相关联的跟踪区域,根据目标的排序扫描跟踪区域以随时间确定与目标相关联的位置,并基于与目标相关联的位置生成一个或多个搜索区域的模型或者环境的模型。
图1是根据实施方式的包括目标跟踪单元160的***100的框图。***100可以在VR环境、增强现实(AR)环境、混合现实(MR)环境或其某种组合中运行。图1所示的***100包括HMD 105和耦接到控制台110的输入/输出(I/O)接口140。虽然图1示出包括一个HMD 105和一个I/O接口140的示例***100,在其他实施方式中,***100中可以包括任何数量的这些组件。例如,可以存在多个HMD 105,每个HMD105具有相关联的I/O接口140,每个HMD 105和I/O接口140与控制台110通信。在替代配置中,在***100中可以包括不同组件和/或其他组件。另外,在一些实施方式中,可以与结合图1描述的不同方式在组件中分配结合图1中示出的一个或多个组件描述的功能。例如,由HMD 105提供控制台110的一些或所有功能。
HMD 105是利用计算机生成的元素(例如,二维(2D)或三维(3D)图像、2D或3D视频、声音等)将包括物理、真实世界环境的增强视图的内容呈现给用户的头戴式显示器。在一些实施方式中,所呈现的内容包括经由从HMD 105、控制台110、或这两者接收音频信息并且基于音频信息呈现音频数据的外部设备(例如,扬声器和/或听筒)呈现的音频。HMD 105可以包括一个或多个刚性体,刚性体可刚性地或非刚性地彼此耦接在一起。刚性体之间的刚性耦接使耦接的刚性体充当单个刚性实体。相反,刚性体之间的非刚性耦接允许刚性体相对彼此移动。在一些实施方式中,HMD 105还可以充当向用户呈现虚拟内容的头戴式耳机,其部分地基于用户周围的真实环境。例如,可以将虚拟内容呈现给HMD的用户。用户在物理上可以在房间中,并且房间的虚拟墙和虚拟地板被渲染为虚拟内容的一部分。
HMD 105包括电子显示器115、头/眼传感器116和光学块118。HMD105的一些实施方式具有与结合图1描述的组件不同的组件。另外,在其他实施方式中,由结合图1描述的各种部件提供的功能可以被不同地分布在HMD 105的部件中,或者在远离HMD 105的单独组件中被捕获。
电子显示器115根据从控制台110接收的数据向用户显示2D或3D图像。在各种实施方式中,电子显示器115包括单个电子显示器或多个电子显示器(例如,用于用户的每只眼睛的显示器)。电子显示器115的示例包括:液晶显示器(LCD)、有机发光二极管(OLED)显示器、有源矩阵有机发光二极管显示器(AMOLED)、微LED显示器、垂直腔表面发射激光器(VCSEL)显示器、一些其他显示器或其某种组合。
光学块118放大从电子显示器115接收的图像光,校正与图像光相关联的光学误差,并将校正的图像光呈现给HMD 105的用户。在各种实施方式中,光学块118包括一个或多个光学元件。包括在光学块118中的示例光学元件包括:光圈、菲涅耳透镜、凸透镜、凹透镜、滤光器、反射面或影响图像光的任何其他合适的光学元件。此外,光学块118可包括不同光学元件的组合。在一些实施方式中,光学块118中的一个或多个光学元件可具有一个或多个涂层,诸如部分反射或抗反射涂层。
通过光学块118放大和聚焦图像光以允许电子显示器115比较大的显示器相比在物理上更小、重量更轻并且消耗更少的功率。另外,放大可以增加由电子显示器115呈现的内容的视野。例如,所显示的内容的视野使得使用几乎全部(例如,大约110度对角线)的用户视野,并且在一些情况下是使用全部的用户视野来呈现所显示的内容。另外,在一些实施方式中,可以通过添加或移除光学元件来调整放大量。
在一些实施方式中,光学块118可以被设计为校正一种或多种类型的光学误差。光学误差的示例包括桶形失真或枕形失真、纵向色差或横向色差。其他类型的光学误差还可以进一步包括球面像差、色差或由透镜场曲率、像散导致的误差或任何其他类型的光学误差。在一些实施方式中,提供给电子显示器115用于显示的内容是预失真的,并且光学块118在从电子显示器115接收基于内容生成的图像光时校正失真。
I/O接口140是允许用户发送动作请求并从控制台110接收响应的装置。动作请求是执行特定动作的请求。例如,动作请求可以是开始或结束捕获图像或视频数据的指令,或者是在应用程序内执行特定动作的指令。I/O接口140可以包括一个或多个输入装置。示例性输入装置包括:键盘、鼠标、游戏控制器或用于接收动作请求并将动作请求传送到控制台110的任何其他合适的装置。由I/O接口140接收的动作请求被传送到控制台110,其执行与动作请求相对应的动作。在一些实施方式中,I/O接口140可以根据从控制台110接收的指令向用户提供触觉反馈。例如,当接收到动作请求时提供触觉反馈,或者控制台110将指令传送到I/O接口140,使得I/O接口140在控制台110执行动作时生成触觉反馈。
控制台110根据从HMD 105和I/O接口140中的一个或多个接收的信息向HMD 105提供内容以进行处理。在图1所示的示例中,控制台110包括应用程序商店145、头/眼跟踪单元150、引擎155和目标跟踪单元160。控制台110的一些实施方式具有与结合图1描述的模块或组件不同的模块或组件。类似地,可以以与结合图1描述的方式不同的方式在控制台110的组件中分布下面进一步描述的功能。在一些实施方式中,控制台110的一个或多个组件可以位于HMD 105中。
应用程序商店145存储一个或多个应用程序以供控制台110执行。应用程序是一组指令,当由处理器执行时,生成用于呈现给用户的内容。由应用程序生成的内容可以响应通过HMD 105或I/O接口140的移动从用户接收的输入。应用程序的示例包括:游戏应用程序、会议应用程序、视频回放应用程序或其他合适的应用程序。
头/眼跟踪单元150跟踪佩戴HMD 105的用户的头部位置或眼睛位置。头/眼跟踪单元150可以使用一个或多个校准参数来校准***环境100并且可以调整一个或者多个校准参数以减少确定HMD 105或I/O接口140的位置的误差。例如,头/眼跟踪单元150将校准参数传送到目标跟踪单元160以调整成像装置135的焦点以更精确地确定由目标跟踪单元160捕获的目标的位置。另外,如果HMD 105的跟踪丢失(例如,头/眼传感器116失去至少阈值数量的目标的视线),头/眼跟踪单元150可以重新校准***环境100中的一些或全部。
头/眼跟踪单元150使用来自头/眼传感器116的信息跟踪HMD 105、用户的眼睛或I/O接口140的移动。例如,头/眼跟踪单元150基于来自HMD 105的信息确定HMD 105的参考点在局部区域的映射中的位置。头/眼跟踪单元150将HMD105或I/O接口140的估计或预测的未来位置提供给引擎155。
引擎155基于从HMD 105或成像装置135接收的信息生成围绕HMD105的环境(即,“局部区域”)和/或环境中的目标的3D映射。在一些实施方式中,引擎155基于从成像装置135(例如,深度相机)接收的信息确定局部区域的3D映射的深度信息。引擎155可以使用一种或多种技术来计算深度信息,以基于结构光(SL)来计算深度。SL技术可以包括例如使用投射到表面上的SL图案的三角测量和/或感知变形来确定场景内的目标的深度和表面信息。在各种实施方式中,引擎155使用由目标跟踪单元160确定的不同类型的信息或由目标跟踪单元160确定的信息类型的组合。
引擎155还执行***环境100内的应用程序,并从头/眼跟踪单元150接收HMD 105的位置信息、加速度信息、速度信息、预测的未来位置或其某种组合。基于所接收的信息,引擎155确定要提供给HMD 105以呈现给用户的内容。例如,如果所接收的信息指示用户已向左看,则引擎155生成用于在虚拟环境中或在用额外内容增强局部区域的环境中反映用户的移动的HMD 105内容。另外,响应于从I/O接口140或目标跟踪单元160接收的动作请求,引擎155在控制台110上执行的应用内执行动作,并向用户提供执行动作的反馈。所提供的反馈可以是经由HMD 105的视觉或听觉反馈或经由I/O接口140的触觉反馈。
目标跟踪单元160确定与环境中的目标相关联的一个或多个位置。目标可以是佩戴HMD 105的用户的一部分,或者可以是环境中的一些其他目标。目标跟踪单元160通过一个或多个成像装置135接收关于目标和用户周围环境的图像数据。目标跟踪单元160可以使用图像数据计算(例如,3D)位置信息,或者目标跟踪单元160可以将图像信息发送到可以使用图像数据确定位置信息的另一装置(诸如控制台110)。
一个或多个成像装置135被配置以生成图像数据。图像数据可以包括搜索区域图像数据和跟踪区域图像数据。如本文使用的“搜索区域图像数据”是指搜索区域的图像数据。如本文使用的“跟踪区域图像数据”是指跟踪区域的图像数据。该***可以包括一个成像装置或多个成像装置,其捕获搜索区域图像数据和跟踪区域图像数据。在一些实施方式中,成像装置135可包括一个或多个深度相机,其生成具有与成像装置的距离对应的像素值(例如,定义亮度水平)的深度图像数据。深度相机可包括光传感器、结构光(例如,红外)发射器和控制器。结构光发射器将光图案投射到捕获区域中。例如,光图案可以包括已知的散斑图案。光(例如,红外)传感器指向捕获区域,并且成像装置捕获捕获区域中的反射光图案,并使用投射光图案和反射光图案之间的差异来生成深度图像数据。控制器控制光传感器和结构光发射器的操作。控制器还被配置为基于来自深度相机的输入生成深度图像数据。在一些实施方式中,成像装置135可包括彩色相机或其他类型的相机。
在一些实施方式中,一个或多个成像装置135附接到HMD 105。例如,成像装置135可以定位在HMD 105的前部以捕获用户的第一人称视角。
目标跟踪应用
目标跟踪是指随时间确定与目标相关联的一个或多个位置。例如,目标跟踪的一种形式是手跟踪,其可以包括跟踪由手特征(例如,关节,指尖等)的位置定义的手的“手姿势”。此外,手姿势或手姿势序列可用于定义可被解释为用户输入的手势。例如,手势/手指跟踪可用于通过虚拟键盘输入用户输入、激活窗口、翻阅书籍上的页面或使用手语与他人通信。在另一示例中,佩戴耳机的用户可能想要更详细地跟踪或观看其周围环境中的目标。对于这样的应用,期望传感器能够具有宽视野以定位目标(例如,手、感兴趣的目标),同时还具有详细的视野以随时间跟踪目标以改善目标识别准确性和速度。用于这种应用的传感器可能必须折衷具有宽视野(FOV),该宽视野具有在详细FOV中生成的高分辨率。
为此,过程可以包括识别搜索区域中的目标(例如,用户感兴趣的目标、用户的手或信标),确定对应于目标的跟踪区域,以及扫描尺寸小于搜索区域的跟踪区域以确定与该目标相关联的位置。在一些实施方式中,具有转向或透镜机构的成像装置可用于扫描搜索区域,且然后扫描一个或多个跟踪区域。在一些实施方式中,可以使用多个成像装置来扫描或以其他方式捕获搜索区域,且然后选择成像装置或一些其他成像装置的子集来扫描或以其他方式捕获一个或多个跟踪区域。在一些实施方式中,用于捕获跟踪区域的成像装置可包括具有窄视野或密集束(tight beam)容量的传感器,诸如固定的窄视野传感器、变焦透镜、声光扫描器、行扫描仪、窄结构光传感器、或密集飞行时间传感器。
单成像装置目标跟踪
图2A和2B示出了使用单个成像装置210来跟踪和确定目标220和230的位置的实施方式。包括成像装置210的***可以是***100,其中成像装置135作为单个成像装置或者不同的实施方式。成像装置210包括转向机构,诸如可调节镜。转向机构可以改变成像装置210的FOV的方向。成像装置210可以是有源传感器(例如,MEMS类型的装置,自适应光学***或线扫描仪)并且可以包括变焦元件(例如,一个或多个镜头)。在该实施方式中,示出了第一目标220和第二目标230,但是其他实施方式可以跟踪单个目标或更多目标。第一目标220和第二目标230可以是用户的手或一些其他目标。
图2A示出根据实施方式的扫描搜索区域211的单个成像装置210。搜索区域211包括用户周围的环境。搜索区域211可以是包括用户的手的空间量(volume)。在一些实施方式中,基于用户的头部位置或眼睛位置,由用户的FOV来定义搜索区域211。成像装置210扫描搜索区域211以生成搜索区域图像数据。可以利用从包括变焦元件的成像装置210中选择的第一变焦来捕获搜索区域图像数据。成像装置210在箭头201指示的角度上扫描搜索区域211。成像装置210的转向机构改变成像装置210的FOV的方向以捕获整个搜索区域211。可以根据成像装置210的FOV和搜索区域211的大小来确定成像装置210的位置或扫描运动的数量,使得整个搜索区域211被相机捕获。例如,具有窄视野的成像装置210可能需要在比具有更宽视野的成像装置210更多的位置处捕获图像数据以扫描整个搜索区域。在一个位置捕获的图像数据可以与在相邻位置捕获的图像数据重叠或不重叠。例如,成像装置210的FOV以由光线201a、201b、201c、201d、201e、201f和201g指示的位置为中心,以捕获作为覆盖搜索区域211的搜索区域图像数据的多个图像。如果成像装置210具有窄FOV(例如,窄光束SL配置),图像数据可包括由光线201a-g指示的位置处的深度信息。成像装置210可以具有更宽的FOV,并且当成像装置210的FOV与位置201a和201b对准时,可以存在来自捕获的图像数据的信息的重叠。根据搜索区域图像数据,***可以在对应于光线201b的位置处识别第一目标220,并且在对应光线201f的位置处识别第二目标230。一旦在搜索区域中识别出目标220和230的通常位置,***就确定对应于目标220和230的较小跟踪区域,以进行更有效的扫描和目标位置确定。
图2B示出根据实施方式的扫描跟踪区域221和231的单个成像装置210。***确定对应于第一目标220的第一跟踪区域221和对应于第二目标的第二跟踪区域231。第一跟踪区域221和第二跟踪区域231小于搜索区域211。在一些实施方式中,使用多个跟踪区域跟踪多个目标。跟踪区域的组合大小可以小于搜索区域211。
在一些实施方式中,基于被跟踪目标的大小、移动和位置来确定跟踪区域。例如,跟踪区域可以以目标为中心,并且还应该比目标足够更大以捕获目标在跟踪区域图像数据的连续帧中的移动。此外,跟踪区域的位置可以基于在先前帧中的跟踪区域中的目标的移动而针对跟踪区域图像数据的后续帧而改变。成像装置210在角度240上扫描对应于目标220的第一跟踪区域221,以生成目标220的跟踪区域图像数据。成像装置210在角度250上扫描对应于目标230的第二跟踪区域231,以生成目标230的跟踪区域图像数据。可以利用从包括变焦元件的成像装置210中选择的第二变焦来生成跟踪区域图像数据。第二变焦大于第一变焦并且可以覆盖比第一变焦更小的FOV,以提供目标的更详细视图。作为图像装置210的变焦的结果,跟踪区域图像数据中的目标可以具有比搜索区域图像数据中的目标的分辨率更高的分辨率。成像装置210的转向机构将成像装置210的FOV对准覆盖第一跟踪区域221和第二跟踪区域231的部分的位置。可以根据成像装置210的FOV的大小以及第一跟踪区域221和第二跟踪区域231的大小来确定位置的数量,以便确保捕获整个跟踪区域。在一个位置捕获的图像数据可以与在相邻位置捕获的图像数据重叠。在该示例中,成像装置210的FOV以光线240指示的位置为中心,以捕获作为覆盖第一跟踪区域221的跟踪区域图像数据的多个图像。成像装置210的FOV以光线250指示的位置为中心,以捕获作为覆盖第二跟踪区域231的跟踪区域图像数据的多个图像。在不同的示例中,成像装置210的FOV可以大于跟踪区域221或231的大小。这里,成像装置210可以指向每个跟踪区域而不扫描每个跟踪区域。***可以基于跟踪区域图像数据的每个帧确定第一目标220和第二目标230的位置。此外,跟踪区域图像数据的多个帧可用于随时间跟踪目标220和230的位置。可以基于帧中目标的位置来更新跟踪区域。在一些实施方式中,如果在跟踪区域中没有找到目标,则可以重新捕获搜索区域以确定目标的新跟踪区域。
在一些实施方式中,多个成像装置210用于扫描搜索区域和跟踪区域。例如,第二成像装置可以位于与图2A和2B中所示的成像装置210不同的位置,并且可以与成像装置210一起扫描搜索区域和跟踪区域。多个成像装置210可以用于生成从多个视角捕获目标的图像数据对,并且可以组合来自多个成像装置210的目标跟踪的结果以提高准确度。在一些实施方式中,多个成像装置210可以捕获不同的传感器输入类型,诸如光的波长、光的偏振或色温。
多成像装置目标跟踪
图3A和3B示出使用多个成像装置310a、310b和310c来跟踪和确定目标320和330的位置的实施方式。在一些实施方式中,包括多个成像装置310a、310b和310c的***可以是具有多个成像装置135的***100。成像装置310a、310b和310c可以是无源装置,或具有变焦元件的有源装置(例如,一个或多个透镜)。在该实施方式中,示出了三个成像装置310a、310b和310c以及两个目标320和330,但是其他实施方式可以包括另外的成像装置、单个目标或更多目标。两个目标320和330可以是用户的手,或一些其他目标。
图3A示出根据实施方式的捕获搜索区域311的多个成像装置310a、310b和310c。搜索区域311包括环境。搜索区域311可以是包括用户的手的空间量。在一些实施方式中,基于用户的头部位置或眼睛位置,由用户的FOV来定义搜索区域211。多个成像装置310a、310b和310c捕获搜索区域311以生成搜索区域图像数据。可以利用从包括变焦元件的成像装置310a、310b和310c中选择的第一变焦来捕获搜索区域图像数据。每个成像装置310a、310b和310c覆盖搜索区域311的一部分,并且由成像装置覆盖的一些部分可以重叠。***识别搜索区域图像数据中的第一目标320和第二目标330。一旦在搜索区域中识别出目标320和330的通常位置,***就确定对应于目标320和330的跟踪区域以进行更详细的扫描。
图3B示出根据实施方式的扫描跟踪区域321和331的所选成像装置310a和310b。***确定对应于第一目标320的第一跟踪区域321和对应于第二目标330的第二跟踪区域331。第一跟踪区域321和第二跟踪区域331小于搜索区域311。***将第一成像装置310a与对应于第一目标320的第一跟踪区域321相关联,以及将第二成像装置310c与对应于第二目标330的第二跟踪区域331相关联。一旦目标320和330被识别并且被与成像装置310a和310c相关联,***就可以关闭(例如,断电,禁用)成像装置310b以节省电力。***选择第一成像装置310a以捕获第一跟踪区域321的跟踪区域图像数据。***选择第二成像装置310c以捕获第二跟踪区域322的跟踪区域图像数据。第一成像装置310a捕获对应于第一目标320的第一跟踪区域321以生成跟踪区域图像数据。第二成像装置310c捕获对应于第二目标330的第二跟踪区域322以生成跟踪区域图像数据。可以利用从包括变焦元件的成像装置310a中选择的第二变焦来生成第一跟踪区域321的跟踪区域图像数据。第二变焦大于第一变焦并且可以覆盖比第一变焦更小的FOV。可以以与第二变焦相同的变焦或者从包括变焦元件的成像装置310c选择的不同变焦来生成第二跟踪区域322的跟踪区域图像数据。跟踪区域图像数据中的第一目标和第二目标可以具有比搜索区域图像数据中的第一目标或第二目标的分辨率更高的分辨率。
其他实施方式
单个成像装置210和多个成像装置310a、310b和310c的组合可用于跟踪和确定目标的位置。例如,多个成像装置310a、310b和310c可以是最初扫描搜索区域311的一组静态低分辨率相机。在识别出目标之后,可以关闭多个成像装置以节省电力。***可以确定与目标相关联的跟踪区域。为了执行高分辨率扫描,单个成像装置210可以扫描与目标相关联的跟踪区域。可以利用成像装置执行高分辨率扫描,该成像装置是声光扫描器、行扫描仪、窄结构光传感器和密集飞行时间传感器(dense TOF sensor)中的至少一种。可以用成像装置执行高分辨率扫描,该成像装置可以测量不同的传感器输入类型,诸如光的波长、光的偏振和色温。成像装置的不同组合可用于执行搜索区域的扫描和跟踪区域的扫描。例如,具有宽结构光发射器的静态深度相机组件可用于扫描搜索区域,并且密集飞行时间传感器可用于扫描跟踪区域。在一些实施方式中,两个成像装置可用于扫描跟踪区域。两个成像装置可以用于捕获图像数据对以提高目标跟踪的准确度。两个成像装置可以位于不同的位置(例如,立体视觉相机)。两个成像装置彼此捕获不同的传感器输入类型。例如,第一成像装置可以捕获波长,而第二成像装置可以捕获偏振。在另一示例中,第一成像装置捕获波长,而第二成像装置捕获色温。在另一示例中,第一成像装置捕获偏振,而第二成像装置捕获色温。
在一些实施方式中,可以通过从先前捕获的图像(例如,跟踪区域图像数据或搜索区域图像数据)预测目标的方向和速度来确定跟踪区域。可以将目标的计算速度矢量与目标的深度信息(例如,来自深度传感器)组合,以在发生跟踪区域的扫描时改进目标的位置的预测。
在一个实施方式中,跟踪区域可以由对应于附着到目标的信标或由目标保持的信标来定义。例如,信标可以附着到用户的手或身体(例如,用户身体或手的关节或末端处的点)。可以在不使用多个成像装置的情况下定位信标。跟踪区域可以被确定为围绕与目标相关联的一个信标或一组信标的区域。
在一个实施方式中,手和眼睛跟踪可用于选择空间中的搜索区域或跟踪区域,而不是特定目标。例如,用户正在看的位置可以定义搜索区域或跟踪区域。在另一个示例中,头部位置可以确定跟踪区域。在又一示例中,可以选择用户指向或以其他方式与之交互的区域或目标作为搜索区域或跟踪区域。
示例流程
图4是根据实施方式的用于跟踪目标的过程400的流程图。根据实施方式,过程400可以由包括目标跟踪单元的***执行。该***可以是包括目标跟踪单元160的***100,目标跟踪单元160具有作为单个成像装置的成像装置135、或多个成像装置,或不同的实施方式。过程400可以包括不同的和/或其他的步骤,或者一些步骤可以以不同的顺序。
***使用一个或多个成像装置扫描410搜索区域以生成搜索区域图像数据。例如,在佩戴HMD 105的用户附近的成像装置135、或在HMD 105上的成像装置135、或以其他方式指向搜索区域的成像装置135生成搜索区域图像数据。在一些实施方式中,利用单个成像装置捕获搜索区域的搜索区域图像数据。取决于成像装置的FOV或变焦,成像装置可扫描搜索区域并在需要时生成多个图像。在一些实施方式中,多个成像装置可以共同捕获搜索区域的搜索区域图像数据。这里,搜索区域图像数据可以包括多个图像。
目标跟踪单元接收415由一个或多个成像装置捕获的搜索区域的搜索区域图像数据。目标跟踪单元可以在控制台110中(如图1所示目标跟踪单元160),或者可以在HMD 105中。成像装置可以通过有线或无线连接将成像数据发送到目标跟踪单元。
目标跟踪单元基于搜索区域图像数据识别420搜索区域中的目标。例如,目标跟踪单元可以处理搜索区域图像数据以识别目标。可以基于如上所述的用户输入来选择目标,其可以通过监视用户的头部、眼睛、手的运动或其他运动来检测。在另一示例中,以编程方式选择目标,诸如基于正在执行的应用程序的配置。
在一些实施方式中,目标是用户的手。***可以基于由成像装置捕获的图像数据来提供用于姿势和手势的手跟踪。例如,目标跟踪单元可以包括(例如,卷积)神经网络,其确定手特征(hand features)的空间位置并从图像数据输入中生成用户的手的姿势。在2017年4月13日提交的美国申请No.15/487,355中讨论了关于使用神经网络从图像数据识别目标的其他细节,其适用于一些实施方式,该申请通过引用整体并入。
目标跟踪单元根据搜索区域图像数据确定425与目标相对应的跟踪区域。跟踪区域小于搜索区域,并且用于在搜索区域中识别出目标之后随时间跟踪目标。跟踪区域可以居中或基本居中在目标上,并且可以随着目标移动而随时间更新。可以根据搜索区域图像数据的图像中的目标的大小(例如,最大、平均等)和目标的运动速度来确定跟踪区域的大小,以确保在跟踪区域中完全捕获目标。
***使用一个或多个成像装置扫描430跟踪区域以生成跟踪区域图像数据。跟踪区域图像数据可以由生成搜索区域图像数据的相同成像装置(例如,以更高的变焦)生成,或者由一个或多个不同的成像装置生成。在一些实施方式中,使用声光扫描器、行扫描仪、窄结构光传感器或密集飞行时间传感器来捕获跟踪区域。
目标跟踪单元接收435由一个或多个成像装置捕获的跟踪区域的跟踪区域图像数据。
***确定440是否在跟踪区域中识别出目标。例如,***使用卷积神经网络或一些其他编程图像识别技术处理跟踪区域图像数据。如果目标处于运动中,则目标有可能已经移动到跟踪区域之外,并因此将无法在跟踪区域中识别出目标。
响应于在跟踪区域中未能识别出目标,***使用一个或多个成像装置返回扫描410搜索区域以生成搜索区域图像数据。***可以确定搜索区域图像数据中的更新的跟踪区域,可以扫描跟踪区域等。
响应于在跟踪区域中识别出目标,目标跟踪单元基于跟踪区域图像数据确定445与目标相关联的一个或多个位置。目标可以与单个位置或多个位置相关联。例如,如果目标是用户的手,则***可以识别均与用户手形模型的手特征相关联的多个位置,以定义手的姿势。
***基于与目标相关联的一个或多个位置来更新450跟踪区域。例如,***可以确定在跟踪区域图像数据的帧中的目标的中心,并且可以更新跟踪区域的中心的位置以将目标保持在后续帧中的跟踪区域的中心。在一些实施方式中,***可以诸如基于随时间的目标位置的分析,进一步跟踪跟踪区域的运动速度,并且可以基于目标的运动速度来更新跟踪区域的位置或大小。
***使用一个或多个成像装置扫描430更新的跟踪区域。通常,跟踪区域可以被更新并用于随时间跟踪与目标相关联的位置。如果在跟踪区域中未能检测到目标,则***可以尝试扫描搜索区域(例如,具有更宽的FOV和更低的分辨率)以检测目标,且然后继续更高分辨率的跟踪区域扫描。
尽管讨论了利用跟踪区域来跟踪单个目标的过程400,但是过程400可以用于跟踪多个目标。可以在搜索区域中识别出多个目标,并且可以确定每个目标的跟踪区域并用于随时间确定与每个目标相关联的位置。不是扫描和处理整个搜索区域以跟踪目标,而是使用更小的跟踪区域来提高目标跟踪的准确性和速度。
用户辅助目标跟踪
人工现实***可以将环境目标结合到信息显示中,诸如向用户提供关于目标的信息或者为目标提供虚拟增强(例如,覆盖)。随着环境的变化,***希望合并新信息。然而,某些目标可能对特定用户或应用程序具有更高的兴趣和重要性。例如,由用户操纵的目标可能比环境中的被动目标更重要。在一些实施方式中,用户输入或程序指令可用于使用跟踪区域对目标进行排序以进行扫描。这种方法可以通过提高目标跟踪和环境建模的速度和准确性来改善***的用户体验。
图5示出根据实施方式的用于通过跟踪环境中的多个目标来生成环境模型的过程500的流程图。该***可以是包括目标跟踪单元160的***100,目标跟踪单元160具有作为单个成像装置的成像装置135、或多个成像装置、或不同的实施方式。过程500可以包括不同的和/或其他的步骤,或者一些步骤可以以不同的顺序。
***生成510环境中的目标的排序。例如,***可以扫描环境中的一个或多个搜索区域以识别过程400中讨论的目标,且然后可以生成目标的排序。目标的排序定义了跟踪区域扫描的优先级。排序可以基于目标与应用程序的相关性或基于目标与活动的相关性。例如,由用户操纵的控制器、手写笔等可以被给予比用户后面的背景目标更高的等级。
在一些实施方式中,排序的目标是在搜索区域中捕获的目标的子集。***可以以编程方式识别特定类型的目标,诸如手或其他交互目标,并从排序中排除其他(例如,背景,非交互,非移动等)目标。在一些实施方式中,基于通过手、眼睛或头部跟踪的用户输入(指示目标是感兴趣的)来识别目标以进行排序。
***确定515对应于环境的搜索区域中的目标的跟踪区域。***按照由目标排序定义的顺序使用一个或多个成像装置扫描520跟踪区域。例如,***可以使用一个或多个成像装置来捕获多个跟踪区域,每个成像装置被分配给目标。在完成目标的捕获时,成像装置可以按照由目标的排序定义的顺序捕获另一目标的其他跟踪区域图像数据。如果使用单个成像装置来捕获跟踪区域图像数据,则成像装置可以根据目标的排序来捕获多个跟踪区域。
***从一个或多个成像装置接收525跟踪区域的跟踪图像数据。***使用跟踪区域图像数据确定530与目标相关联的位置。
***基于目标的位置生成535搜索区域的模型。搜索区域的模型是在搜索区域中捕获的环境的至少一部分的虚拟表示。模型可以包括使用跟踪区域跟踪的目标,以及环境中的其他目标。模型可以定义目标的大小、形状和位置。
***基于环境的搜索区域的模型生成540环境模型。当用户在环境中移动时,成像装置(例如,在HMD 105上)可以捕获多个搜索区域。***可以将多个搜索区域的目标和模型聚合到环境的聚合模型中。该模型表示目标跟踪单元/HMD周围的区域,并且可以包括从多个搜索区域聚合的数据,以及每个搜索区域的多个跟踪区域。
在一些实施方式中,该***可以包括配置为确定用户的手姿势的手跟踪单元。手姿势定义手特征(关节、末端节点等)的空间位置。手姿势可以是手或手指姿态,其是与特定用户输入相关联的姿势或姿势序列。目标跟踪单元可以使用手姿势确定目标的选择。来自用户的经由手跟踪单元的输入可用于选择目标以用于详细扫描或控制目标扫描排序。例如,用户可以通过指向目标来选择感兴趣的目标。用户可以通过手姿态(例如,捻(snap)、滑动等)指示选择目标以进行详细扫描。用户可以使用手指姿态(例如,捻动的数量、滑动的数量、手指的数量等)来设置目标的排序。
在一个实施方式中,用户可以用手指制作框以构成包括感兴趣目标的场景。可以将选择发送到飞行时间传感器以帮助验证选择。用户可以点(click)手指或捻(snap)手指以验证目标。***可以开始对目标的详细扫描。或者,用户可以打开场景,并且***可以扫描场景中不同深度的所有内容。
在一些实施方式中,该***可以包括眼睛跟踪单元,以确定用户眼睛的眼睛位置。眼睛位置可以是用户的注视或眼睛姿态。用户的注视由用户的两只眼睛的位置确定。眼睛姿态是与特定用户输入相关联的眼睛位置或眼睛位置序列。目标跟踪单元可以使用眼睛位置确定目标的选择。来自用户的经由眼睛跟踪单元的输入可用于选择目标以用于详细扫描或控制目标扫描排序。例如,用户的注视可用于识别感兴趣的目标。用户可以通过眼睛姿态(例如,眨眼(blink)、一只眼睁一只眼闭来使眼色(wink))指示选择目标用于详细扫描。用户可以使用眼睛姿态(例如,眨眼、一只眼睁一只眼闭来使眼色、眨眼或一只眼睁一只眼闭来使眼色的数量)来设置目标的排序。
在一些实施方式中,用户的注视可用于创建扫描区域/跟踪区域或扫描区/跟踪区。***可以扫描区域中不同深度的所有内容。或者,用户注视可以定义区域,并且用户可以提供另一个输入,诸如点击、捻动、眨眼或使一只眼睁一只眼闭来眼色,以验证区域中目标的选择。
在一些实施方式中,手和眼睛跟踪的使用可以控制包括深度相机组件的成像装置的光束位置。光束位置可以是单个宽聚光灯或空间上聚集的聚光灯。
其他配置信息
已经出于说明的目的呈现了本公开的实施方式的前述描述;其并非旨在穷举或将本公开限制于所公开的精确形式。相关领域的技术人员可以理解,鉴于以上公开内容,许多修改和变化是可能的。
本说明书的一些部分在关于信息的操作的算法和符号表示方面描述了本公开的实施方式。数据处理领域的技术人员通常使用这些算法描述和表示来有效地将其工作的实质传达给本领域其他技术人员。虽然在功能上、计算上或逻辑上描述这些操作,但应理解为由计算机程序或等效电路、微代码等实现。此外,在不失一般性的情况下,将这些操作安排称为模块,有时也证明是方便的。所描述的操作及其相关模块可以体现为软件、固件、硬件或其任何组合。
本文描述的任何步骤、操作或过程可以单独地或与其他装置组合地用一个或多个硬件或软件模块来执行或实现。在一个实施方式中,软件模块用计算机程序产品实现,该计算机程序产品包括含有计算机程序代码的计算机可读介质,该计算机程序代码可以由计算机处理器执行以执行所描述的任何或所有步骤、操作或过程。
本公开的实施方式还可以涉及用于执行本文的操作的装置。该装置可以为所需目的而专门构造,和/或它可以包括由存储在计算机中的计算机程序选择性地激活或重新配置的通用计算装置。这样的计算机程序可以存储在非暂时性有形计算机可读存储介质中,或者可以耦接到计算机***总线的适合于存储电子指令的任何类型的介质中。此外,说明书中提到的任何计算***可以包括单个处理器,或者可以是采用多个处理器设计以提高计算能力的架构。
本公开的实施方式还可以涉及通过本文描述的计算过程产生的产品。这样的产品可以包括由计算过程产生的信息,其中信息存储在非暂时性有形计算机可读存储介质上,并且可以包括计算机程序产品的任何实施方式或本文描述的其他数据组合。
最后,说明书中使用的语言主要是出于可读性和指导目的而选择的,并且可能未选择它来描绘或限制本发明的主题。因此,本公开的范围旨在不受该详细描述的限制,而是受基于此在本申请上发布的任何权利要求的限制。因此,实施方式的公开内容旨在说明而非限制本公开的范围,本公开的范围在所附权利要求中阐述。

Claims (20)

1.一种目标跟踪***包括:
一个或多个成像装置,被配置为生成图像数据;以及
目标跟踪单元,被配置为:
接收由所述一个或多个成像装置捕获的搜索区域的搜索区域图像数据;
基于所述搜索区域图像数据识别所述搜索区域中的目标;
从所述搜索区域图像数据中确定对应于所述目标的跟踪区域,所述跟踪区域小于所述搜索区域;
接收由所述一个或多个成像装置捕获的所述跟踪区域的跟踪区域图像数据;
响应于未能识别所述跟踪区域中的待识别的目标:
使用一个或多个成像装置扫描所述搜索区域以生成搜索区域图像数据;
基于更新的搜索区域图像数据确定更新的跟踪区域;
扫描所述更新的跟踪区域以捕获更新的跟踪区域图像数据;以及
基于所述跟踪区域的所述更新的跟踪区域图像数据确定与所述目标相关联的位置。
2.根据权利要求1所述的***,其中,所述一个或多个成像装置包括:
第一成像装置,被配置为生成所述搜索区域的所述搜索区域图像数据;以及
第二成像装置,被配置为生成所述跟踪区域的所述跟踪区域图像数据。
3.根据权利要求2所述的***,其中:
所述第二成像装置被配置为生成所述跟踪区域图像数据的第一部分;
所述一个或多个成像装置包括第三成像装置,所述第三成像装置被配置为生成所述跟踪区域的所述跟踪区域图像数据的第二部分;以及
所述第一成像装置和所述第二成像装置是以下至少之一:位于不同位置或捕获不同的传感器输入类型。
4.根据权利要求1所述的***,其中,所述一个或多个成像装置包括单个成像装置,所述单个成像装置被配置为扫描所述搜索区域以生成所述搜索区域图像数据并扫描所述跟踪区域以生成所述跟踪区域图像数据,其中,所述单个成像装置包括以下至少之一:(i)用于扫描所述搜索区域和所述跟踪区域的可调镜,以及(ii)一个或多个透镜,用于以第一变焦生成所述搜索区域图像数据,并且以大于所述第一变焦的第二变焦生成所述跟踪区域图像数据。
5.根据权利要求1所述的***,还包括被配置为确定用户的手姿势的手跟踪单元以及被配置为确定所述用户的眼睛位置的眼睛跟踪单元中的至少一个,并且其中,被配置为识别所述目标的所述目标跟踪单元包括:被配置为使用所述手姿势和所述眼睛位置中的至少一个来确定所述目标的选择的所述目标跟踪单元。
6.根据权利要求1所述的***,其中,所述搜索区域图像数据中的所述目标处于第一分辨率,并且所述跟踪区域图像数据中的所述目标处于高于所述第一分辨率的第二分辨率。
7.根据权利要求1所述的***,其中:
所述一个或多个成像装置包括第一成像装置和第二成像装置;
所述目标跟踪单元还被配置为:
基于所述搜索区域图像数据识别所述搜索区域中的第二目标;
从所述搜索区域图像数据中确定与所述第二目标相对应的第二跟踪区域,所述第二跟踪区域小于所述搜索区域;
选择用于捕获所述跟踪区域的跟踪区域图像数据的所述第一成像装置;
选择用于捕获所述第二跟踪区域的跟踪区域图像数据的所述第二成像装置;
接收由所述第一成像装置捕获的跟踪区域图像数据;
接收由所述第二成像装置捕获的所述第二跟踪区域的跟踪区域图像数据;以及
基于所述第二跟踪区域的跟踪区域图像数据确定与所述第二目标相关联的第二位置。
8.根据权利要求1所述的***,其中,所述一个或多个成像装置包括多个成像装置,每个成像装置被配置为生成所述搜索区域的所述搜索区域图像数据的一部分,并且其中,所述目标跟踪单元还被配置为:
将每个成像装置与不同的跟踪区域相关联;以及
基于所述目标的所述跟踪区域从所述多个成像装置中选择一成像装置,其中,该成像装置被配置为生成所述跟踪区域的跟踪区域图像数据。
9.根据权利要求1所述的***,其中,所述目标跟踪单元被配置为:
生成目标的排序;
确定与所述目标对应的跟踪区域;
根据所述目标的所述排序,接收对应于所述目标的所述跟踪区域的一组图像数据,所述一个或多个成像装置根据所述目标的所述排序捕获所述一组图像数据;
使用该组图像数据确定与所述目标相关联的位置;以及
基于与所述目标相关联的所述位置生成所述搜索区域的模型。
10.根据权利要求1所述的***,其中,所述一个或多个成像装置包括被配置为生成所述跟踪区域的所述跟踪区域图像数据的声光扫描器、波长传感器、偏振传感器、色温传感器、行扫描仪、窄结构光传感器以及密集飞行时间传感器中的至少一个。
11.一种目标跟踪方法,包括:
从一个或多个成像装置接收搜索区域的搜索区域图像数据;
基于所述搜索区域图像数据识别所述搜索区域中的目标;
从所述搜索区域图像数据中确定与所述目标相对应的跟踪区域,所述跟踪区域小于所述搜索区域;
接收由所述一个或多个成像装置捕获的所述跟踪区域的跟踪区域图像数据;
响应于未能识别所述跟踪区域中的待识别的目标:
使用一个或多个成像装置扫描所述搜索区域以生成搜索区域图像数据;
基于更新的搜索区域图像数据确定更新的跟踪区域;
扫描所述更新的跟踪区域以捕获更新的跟踪区域图像数据;以及
基于所述跟踪区域的所述更新的跟踪区域图像数据确定与所述目标相关联的位置。
12.根据权利要求11所述的方法,其中,所述一个或多个成像装置包括:
第一成像装置,被配置为生成所述搜索区域的所述搜索区域图像数据;以及
第二成像装置,被配置为生成所述跟踪区域的所述跟踪区域图像数据。
13.根据权利要求12所述的方法,其中:
所述第二成像装置被配置为生成所述跟踪区域图像数据的第一部分;
所述一个或多个成像装置包括第三成像装置,所述第三成像装置被配置为生成所述跟踪区域的所述跟踪区域图像数据的第二部分;以及
所述第一成像装置和所述第二成像装置是以下至少之一:位于不同位置或捕获不同的传感器输入类型。
14.根据权利要求11所述的方法,其中,所述一个或多个成像装置包括单个成像装置,所述单个成像装置被配置为扫描所述搜索区域以生成所述搜索区域图像数据并扫描所述跟踪区域以生成所述跟踪区域图像数据,其中,所述单个成像装置包括以下至少之一:(i)用于扫描所述搜索区域和所述跟踪区域的可调镜,以及(ii)一个或多个透镜,用于以第一变焦生成所述搜索区域图像数据,并且以大于所述第一变焦的第二变焦生成所述跟踪区域图像数据。
15.根据权利要求11所述的方法,其中,基于所述搜索区域图像数据识别所述搜索区域中的所述目标包括:
确定用户的手姿势和眼睛位置中的至少一个;以及
使用所述手姿势和所述眼睛位置中的至少一个确定所述目标的选择。
16.根据权利要求11所述的方法,其中,所述搜索区域图像数据中的所述目标处于第一分辨率,并且所述跟踪区域图像数据中的所述目标处于高于所述第一分辨率的第二分辨率。
17.根据权利要求11所述的方法,其中,所述一个或多个成像装置包括第一成像装置和第二成像装置,所述方法还包括:
基于所述搜索区域图像数据识别所述搜索区域中的第二目标;
从所述搜索区域图像数据中确定与所述第二目标相对应的第二跟踪区域,所述第二跟踪区域小于所述搜索区域;
选择用于捕获所述跟踪区域的跟踪区域图像数据的所述第一成像装置;
选择用于捕获所述第二跟踪区域的跟踪区域图像数据的所述第二成像装置;
接收由所述第一成像装置捕获的跟踪区域图像数据;
接收由所述第二成像装置捕获的所述第二跟踪区域的跟踪区域图像数据;以及
基于所述第二跟踪区域的跟踪区域图像数据确定与所述第二目标相关联的第二位置。
18.根据权利要求11所述的方法,其中,所述一个或多个成像装置包括多个成像装置,每个成像装置被配置为生成所述搜索区域的所述搜索区域图像数据的一部分,所述方法还包括:
将每个成像装置与不同的跟踪区域相关联;以及
基于所述目标的所述跟踪区域从所述多个成像装置中选择一成像装置,其中,该成像装置被配置为生成所述跟踪区域的跟踪区域图像数据。
19.根据权利要求11所述的方法,还包括:
生成目标的排序;
确定与所述目标对应的跟踪区域;
根据所述目标的所述排序,接收对应于所述目标的所述跟踪区域的一组图像数据,所述一个或多个成像装置根据所述目标的所述排序捕获所述一组图像数据;
使用该组图像数据确定与所述目标相关联的位置;以及
基于与所述目标相关联的所述位置生成所述搜索区域的模型。
20.根据权利要求11所述的方法,其中,所述一个或多个成像装置包括被配置为生成所述跟踪区域的所述跟踪区域图像数据的声光扫描器、波长传感器、偏振传感器、色温传感器、行扫描仪、窄结构光传感器以及密集飞行时间传感器中的至少一个。
CN201910280597.2A 2018-04-10 2019-04-09 用手或眼睛跟踪辅助的目标跟踪方法及*** Active CN110362193B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/949,597 2018-04-10
US15/949,597 US11010646B2 (en) 2018-04-10 2018-04-10 Object tracking assisted with hand or eye tracking

Publications (2)

Publication Number Publication Date
CN110362193A CN110362193A (zh) 2019-10-22
CN110362193B true CN110362193B (zh) 2023-07-18

Family

ID=68096036

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910280597.2A Active CN110362193B (zh) 2018-04-10 2019-04-09 用手或眼睛跟踪辅助的目标跟踪方法及***

Country Status (2)

Country Link
US (2) US11010646B2 (zh)
CN (1) CN110362193B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9132352B1 (en) 2010-06-24 2015-09-15 Gregory S. Rabin Interactive system and method for rendering an object
JP2022507245A (ja) * 2018-11-13 2022-01-18 アンバインド グループ ピーティーワイ リミテッド ナビゲート可能仮想空間内でレンダリングされた3次元表示オブジェクトを介した2次元コンテンツの提示を介してユーザインターフェースを提供するように適合された技術
US20200167005A1 (en) * 2018-11-28 2020-05-28 Seiko Epson Corporation Recognition device and recognition method
EP3901919A4 (en) * 2019-04-17 2022-06-08 Rakuten Group, Inc. DISPLAY CONTROL DEVICE, DISPLAY CONTROL METHOD, PROGRAM, AND COMPUTER READABLE NON-TRANSITORY INFORMATION RECORDING MEDIA
CN111475016A (zh) * 2019-10-29 2020-07-31 南京翱翔信息物理融合创新研究院有限公司 一种基于计算机视觉的装配过程几何参数自适应测量***及方法
US11281291B1 (en) 2020-10-20 2022-03-22 Rovi Guides, Inc. Methods and systems of extended reality environment interaction based on eye motions
US11609629B2 (en) 2020-10-20 2023-03-21 Rovi Guides, Inc. Methods and systems of extended reality environment interaction based on eye motions
US11320903B1 (en) 2020-10-20 2022-05-03 Rovi Guides, Inc. Methods and systems of extended reality environment interaction based on eye motions
US11747896B2 (en) 2020-10-20 2023-09-05 Rovi Guides, Inc. Methods and systems of extended reality environment interaction based on eye motions
US11392198B2 (en) 2020-10-20 2022-07-19 ROVl GUIDES, INC. Methods and systems of extended reality environment interaction based on eye motions
US20230041519A1 (en) * 2021-08-09 2023-02-09 Htc Corporation Tracking system, tracking method and non-transitory computer-readable storage medium

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101861118A (zh) * 2007-11-16 2010-10-13 视瑞尔技术公司 用于发现和跟踪双眼的方法和装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7729602B2 (en) * 2007-03-09 2010-06-01 Eastman Kodak Company Camera using multiple lenses and image sensors operable in a default imaging mode
JP2011193443A (ja) * 2010-02-16 2011-09-29 Ricoh Co Ltd 物体追尾装置
JP4784709B1 (ja) * 2011-03-10 2011-10-05 オムロン株式会社 対象物追跡装置、対象物追跡方法、および制御プログラム
US8885877B2 (en) * 2011-05-20 2014-11-11 Eyefluence, Inc. Systems and methods for identifying gaze tracking scene reference locations
US8830302B2 (en) * 2011-08-24 2014-09-09 Lg Electronics Inc. Gesture-based user interface method and apparatus
US9679215B2 (en) 2012-01-17 2017-06-13 Leap Motion, Inc. Systems and methods for machine control
US9142019B2 (en) * 2013-02-28 2015-09-22 Google Technology Holdings LLC System for 2D/3D spatial feature processing
US20150318020A1 (en) * 2014-05-02 2015-11-05 FreshTake Media, Inc. Interactive real-time video editor and recorder
WO2016004330A1 (en) * 2014-07-03 2016-01-07 Oim Squared Inc. Interactive content generation
US9781350B2 (en) * 2015-09-28 2017-10-03 Qualcomm Incorporated Systems and methods for performing automatic zoom
US10460159B1 (en) * 2015-10-30 2019-10-29 Sorenson Ip Holdings, Llc Video endpoint, communication system, and related method for automatic framing a signing area of a sign language user
CN105654512B (zh) * 2015-12-29 2018-12-07 深圳微服机器人科技有限公司 一种目标跟踪方法和装置
US10609093B2 (en) * 2016-05-06 2020-03-31 Facebook, Inc. Instantaneous call sessions over a communications application

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101861118A (zh) * 2007-11-16 2010-10-13 视瑞尔技术公司 用于发现和跟踪双眼的方法和装置

Also Published As

Publication number Publication date
US20190311232A1 (en) 2019-10-10
CN110362193A (zh) 2019-10-22
US20210241049A1 (en) 2021-08-05
US11010646B2 (en) 2021-05-18
US11922711B2 (en) 2024-03-05

Similar Documents

Publication Publication Date Title
CN110362193B (zh) 用手或眼睛跟踪辅助的目标跟踪方法及***
US9846968B2 (en) Holographic bird's eye view camera
US10936874B1 (en) Controller gestures in virtual, augmented, and mixed reality (xR) applications
US10854012B1 (en) Concealing loss of distributed simultaneous localization and mapping (SLAM) data in edge cloud architectures
US10852828B1 (en) Automatic peripheral pairing with hand assignments in virtual, augmented, and mixed reality (xR) applications
JP7279176B2 (ja) 仮想現実システムのための安全境界を修正するためのシステムおよび方法
CN107004275B (zh) 确定实物至少一部分的3d重构件空间坐标的方法和***
US20140168261A1 (en) Direct interaction system mixed reality environments
JP2022530012A (ja) パススルー画像処理によるヘッドマウントディスプレイ
JP2021144227A (ja) 視線追跡情報に基づく画像領域内の適応パラメータ
US10620779B2 (en) Navigating a holographic image
CN110377148B (zh) 计算机可读介质、训练对象检测算法的方法及训练设备
US20130326364A1 (en) Position relative hologram interactions
KR20170031733A (ko) 디스플레이를 위한 캡처된 이미지의 시각을 조정하는 기술들
CN114730094A (zh) 具有人工现实内容的变焦显示的人工现实***
US10957059B1 (en) Multi-pattern depth camera assembly
US10936055B2 (en) Encoding content for virtual, augmented, and mixed reality (xR) applications in connectivity-constrained environments
US10816341B2 (en) Backchannel encoding for virtual, augmented, or mixed reality (xR) applications in connectivity-constrained environments
US10922831B2 (en) Systems and methods for handling multiple simultaneous localization and mapping (SLAM) sources and algorithms in virtual, augmented, and mixed reality (xR) applications
US20200372673A1 (en) Resolving region-of-interest (roi) overlaps for distributed simultaneous localization and mapping (slam) in edge cloud architectures
US20200380719A1 (en) Resolving incorrect distributed simultaneous localization and mapping (slam) data in edge cloud architectures
CN110895433B (zh) 用于增强现实中用户交互的方法和装置
KR20210150881A (ko) 전자 장치 및 그 동작 방법
CN117372475A (zh) 眼球追踪方法和电子设备

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
CB02 Change of applicant information

Address after: California, USA

Applicant after: Yuan Platform Technology Co.,Ltd.

Address before: California, USA

Applicant before: Facebook Technologies, LLC

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant