CN111656433B - 减轻头戴式显示器中动显延迟的装置、系统和方法 - Google Patents
减轻头戴式显示器中动显延迟的装置、系统和方法 Download PDFInfo
- Publication number
- CN111656433B CN111656433B CN201880087704.3A CN201880087704A CN111656433B CN 111656433 B CN111656433 B CN 111656433B CN 201880087704 A CN201880087704 A CN 201880087704A CN 111656433 B CN111656433 B CN 111656433B
- Authority
- CN
- China
- Prior art keywords
- image
- frame
- mixed reality
- asic
- head mounted
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/003—Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
- G09G5/006—Details of the interface to the display terminal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/503—Blending, e.g. for anti-aliasing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/12—Synchronisation between the display unit and other units, e.g. other display units, video-disc players
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/363—Graphics controllers
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/37—Details of the operation on graphic patterns
- G09G5/377—Details of the operation on graphic patterns for mixing or overlaying two or more graphic patterns
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2310/00—Command of the display device
- G09G2310/08—Details of timing specific for flat panels, other than clock recovery
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/02—Improving the quality of display appearance
- G09G2320/0233—Improving the luminance or brightness uniformity across the screen
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/02—Improving the quality of display appearance
- G09G2320/0252—Improving the response speed
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/02—Improving the quality of display appearance
- G09G2320/0271—Adjustment of the gradation levels within the range of the gradation scale, e.g. by redistribution or clipping
- G09G2320/0276—Adjustment of the gradation levels within the range of the gradation scale, e.g. by redistribution or clipping for the purpose of adaptation to the characteristics of a display device, i.e. gamma correction
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/06—Adjustment of display parameters
- G09G2320/0666—Adjustment of display parameters for control of colour parameters, e.g. colour temperature
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/10—Special adaptations of display systems for operation with variable images
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/04—Changes in size, position or resolution of an image
- G09G2340/0464—Positioning
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/12—Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2354/00—Aspects of interface with display user
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
一种用于减轻头戴式显示器中的动显延迟的专用硬件设备可以包括图像信号处理器,该图像信号处理器接收由头戴式显示系统的相机设备捕获的至少一个图像帧。专用硬件设备还可以包括接收计算机生成的影像的输入格式化组件。专用硬件设备还可以包括融合组件,该融合组件通过将计算机生成的影像叠加到图像帧上来生成至少一个混合现实帧。专用硬件设备可以另外包括帧输出接口,该接口将由融合组件生成的混合现实帧馈送到头戴式显示系统的显示设备,以便于显示混合现实帧以呈现给佩戴头戴式显示系统的用户。还公开了各种其他装置、系统和方法。
Description
相关申请的交叉引用
本申请要求2018年2月3日提交的美国临时申请第62/626,004号和2018年6月12日提交的美国非临时申请第16/006,434号的权益,这两个申请的公开内容通过引用以其整体并入本文。
背景
在过去的几年里,头戴式显示器彻底改变了人们体验各种数字媒体的方式。例如,头戴式显示器可以让虚拟现实用户在玩视频游戏的同时、在飞行模拟训练期间或甚至在与全球的同事互动时,体验逼真、沉浸式虚拟环境。除了这种虚拟现实应用之外,头戴式显示器还可以使用户能够增强现实和/或将现实的某些方面与虚拟世界的那些方面相结合。
尽管这种技术取得了令人难以置信的进步,但传统的头戴式显示器仍然存在某些缺陷,这些缺陷对整体用户体验产生了负面影响。例如,一些头戴式显示器可能无法精确地补偿和/或考虑到用户做出的物理移动。更具体地,这些头戴式显示器可能表现出一定量的延时(delay),这导致显示器落后于用户的实际物理移动。这种延时有时被称为动显延迟(motion-to-photon latency)。不幸的是,除了对用户的整体体验造成困扰之外,动显延迟在某些情况下可能会导致用户生病和/或恶心。
因此,本公开识别并解决了对用于减轻头戴式显示器中的动显延迟的附加装置、系统和方法的需求。
概述
如下面将更详细描述的,本公开总体上涉及用于减轻头戴式显示器中的动显延迟的装置、系统和方法。在一些实施例中,专用硬件设备可以实现这个目标。例如,专用硬件设备可以包括图像信号处理器,该图像信号处理器接收由头戴式显示系统的相机设备捕获的至少一个图像帧(image frame)。专用硬件设备还可以包括输入格式化组件,该组件接收旨在与图像帧融合(blend)的计算机生成的影像(imagery)。专用硬件设备还可以包括融合组件,该融合组件通过将计算机生成的影像叠加到从头戴式显示系统的相机设备接收的图像帧上来生成至少一个混合现实帧(mixed-reality frame)。此外,专用硬件设备可以包括帧输出接口,该接口将融合组件生成的混合现实帧馈送到头戴式显示系统的显示设备,以便于显示混合现实帧,从而呈现给佩戴头戴式显示系统的用户。
在一些示例中,专用硬件设备可以包括一个或更多个硬件加速图像校正组件,每个硬件加速图像校正组件对混合现实帧执行至少一个图像校正过程,来为显示设备准备混合现实帧。例如,专用硬件设备可以包括硬件加速组件,当混合现实帧向显示设备行进时,该硬件加速组件至少部分地校正混合现实帧中的色差。专用硬件设备还可以包括硬件加速组件,当混合现实帧向显示设备行进时,硬件加速组件对混合现实帧执行伽马校正(gammacorrection)。专用硬件设备还可以包括硬件加速组件,当混合现实帧向显示设备行进时,硬件加速组件对混合现实帧执行非均匀性校正。
附加地或可替代地,专用硬件设备可以包括硬件加速组件,该硬件加速组件在混合现实帧向显示设备行进时修改混合现实帧以考虑到显示设备的过驱动(overdrive)特征。专用硬件设备还可以包括硬件加速设备,当混合现实帧向显示设备行进时,该硬件加速设备至少部分地校正混合现实帧中的Mura现象。专用硬件设备还可以包括硬件加速设备,当混合现实帧向显示设备行进时,硬件加速设备对混合现实帧执行抖动(dithering)。
在一些示例中,专用硬件设备可以包括图像信号处理器和融合组件之间的直接通信路径,该直接通信路径使得图像帧能够被直接馈送到融合组件,而不被缓冲在存储器中。在一个示例中,专用硬件设备可以包括一个或更多个硬件加速失真组件,其将异步时间扭曲(warping)和/或异步空间扭曲应用于图像帧和/或计算机生成的影像。在该示例中,一个硬件加速失真组件可以使图像帧失真,以将图像帧的某些像素与计算机生成的影像的相应像素对齐,然后将图像帧的某些像素映射到显示设备的特定元素,而另一个硬件加速失真组件可以使计算机生成的影像失真,以将计算机生成的影像的相应像素与图像帧的某些像素对齐,然后将计算机生成的影像的相应像素映射到显示设备的特定元素。
在一些示例中,图像信号处理器可以将图像帧直接转发到专用硬件设备内的处理组件,而无需在存储器中临时缓冲图像帧。在这样的示例中,图像信号处理器可以通过避免就图像帧访问存储器来减轻头戴式显示系统的动显延迟。在一个示例中,处理组件可以包括和/或表示融合组件。在另一个示例中,处理组件可以包括和/或表示将异步时间扭曲应用于图像帧的硬件加速失真组件。
相应的头戴式显示系统可以包括至少一个相机设备,该相机设备从佩戴头戴式显示系统的用户的视角捕获一个或更多个图像帧。头戴式显示系统还可以包括通信耦合到相机设备的专用硬件设备。专用硬件设备可以接收来自相机设备的图像帧和旨在与图像帧融合的计算机生成的影像。专用硬件设备然后可以通过将计算机生成的影像叠加到从相机设备接收的图像帧上来生成一个或更多个混合现实帧。此外,头戴式显示系统可以包括通信耦合到专用硬件设备的显示设备。显示设备可以从专用硬件设备接收混合现实帧,然后显示混合现实帧以呈现给佩戴头戴式显示系统的用户。
在一些示例中,头戴式显示系统可以包括生成时钟信号的时钟发生器。在这样的示例中,专用硬件设备和显示设备可以至少部分地基于由时钟发生器生成的时钟信号而相对于彼此同步。
在一些示例中,专用硬件设备可以逐行地对图像帧执行一个或更多个硬件加速的帧内(intraframe)处理操作。在一个示例中,头戴式显示系统可以包括运动检测传感器,该运动检测传感器检测由佩戴头戴式显示系统的用户做出的移动。在该示例中,专用硬件设备可以从运动检测传感器接收用户运动数据,该用户运动数据指示佩戴头戴式显示系统的用户自从某个图像帧被相机设备捕获以来已经进行了至少一次移动。专用硬件设备还可以识别来自某个图像帧的尚未被转发到显示设备的行的子集,即使来自该某个图像帧的行的附加子集已经被转发到显示设备。一旦识别了行的子集,专用硬件设备可以至少部分地基于来自运动检测传感器的用户运动数据来修改行的子集,以补偿用户做出的移动。专用硬件设备然后可以将来自某个图像帧的经修改的行的子集转发到显示设备,以便于显示经修改的行的子集连同行的附加子集,从而呈现给用户。
在这个示例中,行的附加子集可没有被修改以补偿用户做出的移动。显示设备可以在至少一个时间点期间同时显示经修改的行的子集和行的附加子集,以呈现给用户。
相应的方法可以包括(a)由专用硬件设备接收由头戴式显示系统的相机设备捕获的至少一个图像帧,(b)由专用硬件设备接收旨在与图像帧融合的计算机生成的影像,(c)由专用硬件设备通过将从独立主机设备接收的计算机生成的影像叠加到从头戴式显示系统的相机设备接收的图像帧上来生成至少一个混合现实帧,然后(d)由专用硬件设备将由融合组件生成的混合现实帧馈送到头戴式显示系统的显示设备,使得显示设备显示混合现实帧,以呈现给佩戴头戴式显示系统的用户。
根据本文描述的一般原理,来自上面提到的实施例中的任一个的特征可以与彼此组合地被使用。当结合附图和权利要求阅读下面的详细描述时,这些和其他实施例、特征和优点将被更充分地理解。
根据本发明的实施例在涉及专用硬件设备、头戴式显示系统和方法的所附权利要求中被具体公开,其中在一个权利要求类别(例如方法)中提到的任何特征也可以在另一个权利要求类别(例如专用硬件设备、头戴式显示系统、系统、存储介质、计算机程序产品)中被要求保护。所附权利要求中的从属关系或往回引用仅出于形式原因而选择。然而,也可以要求保护由对任何前面权利要求的有意往回引用(特别是多项引用)而产生的任何主题,使得权利要求及其特征的任何组合被公开并可被要求保护,而不考虑在所附权利要求中选择的从属性。可以要求保护的主题不仅包括所附权利要求中阐述的特征的组合,还包括权利要求中特征的任何其他组合,其中权利要求中提到的每个特征可以与权利要求中的任何其他特征或其他特征的组合相结合。此外,本文描述或描绘的任何实施例和特征可以在单独的权利要求中和/或在与本文描述或描绘的任何实施例或特征或与所附权利要求的任何特征的任何组合中要求保护。
附图简述
为了更好地理解所描述的各种实施例,应该结合以下附图参考下面的详细描述,贯穿全部附图和描述,相同的参考数字指代相应的部分。
图1是根据一些实施例的用于减轻头戴式显示器中的动显延迟的示例性专用硬件设备的框图。
图2是根据一些实施例的示例性头戴式显示系统的图示,该系统结合了用于减轻头戴式显示器中的动显延迟的专用硬件设备。
图3是根据一些实施例的示例性头戴式显示器的框图,该头戴式显示器结合了用于减轻头戴式显示器中的动显延迟的专用硬件设备。
图4是根据一些实施例的用于减轻头戴式显示器中的动显延迟的示例性实现的框图。
图5是根据一些实施例的用于减轻头戴式显示器中的动显延迟的示例性实现的框图。
图6是根据一些实施例的用于减轻头戴式显示器中的动显延迟的示例性实现的框图。
图7是根据一些实施例的用于减轻头戴式显示器中的动显延迟的示例性实现的框图。
图8是根据一些实施例的示例性图像帧的框图,该图像帧在朝向显示设备行进时,在显示成像流水线(pipeline)中经历在线(in-line)处理。
图9是根据一些实施例的用于对朝向显示设备穿过显示成像流水线的图像帧执行在线处理的示例性实现的框图。
图10是根据一些实施例的用于减轻头戴式显示器中的动显延迟的示例性方法的流程图。
在所有附图中,相同的参考符号和描述表示相似但不一定相同的元素。虽然本文描述的示例性实施例易于进行各种修改和替代形式,但是特定实施例已经通过附图中的示例示出,并且将在本文详细描述。然而,本文描述的示例性实施例不旨在限于所公开的特定形式。更确切地,本公开覆盖了落入所附权利要求的范围内的所有修改、等同物和替代物。
示例性实施例的详细描述
本公开总体上涉及用于减轻头戴式显示器中的动显延迟的装置、系统和方法。如下面将更详细解释的,本文公开的装置、系统和方法可以减少图像帧处理周期中涉及的动态随机存取存储器(DRAM)访问的数量。通过这样做,这些装置、系统和方法可以减少完成这种图像帧处理周期所需的时间量,从而减轻动显延迟,并潜在地改善佩戴头戴式显示器的用户的整体体验。
附加地或可替代地,这些装置、系统和方法可以实现能够经由公共时钟信号与相应的显示设备同步的硬件加速显示成像流水线。经由公共时钟信号的这种同步可以消除在图像传送设备(在该示例中,硬件加速显示成像流水线)和显示设备之间执行耗时的同步操作的需要。通过这样做,这些装置、系统和方法可以减少头戴式显示器中的资源消耗和/或时间延时或损失,从而进一步减轻动显延迟,并潜在地改善佩戴头戴式显示器的用户的整体体验。
此外,经由公共时钟信号的这种同步可以使得硬件加速显示成像流水线能够在线执行图像处理操作。通过这样做,硬件加速显示成像流水线能够逐行地执行图像处理操作,而不是逐帧地执行这些操作。因此,硬件加速显示成像流水线可以比传统的图像传送设备更快地(通过例如帧内修改)补偿和/或考虑到用户移动。通过这样做,硬件加速显示成像流水线可以减少和/或改善这种头戴式显示器的响应时间,从而减轻动显延迟,并潜在地改善佩戴头戴式显示器的用户的整体体验。
现在将参考各种示例性实施例,其示例在附图中示出。在以下描述中,阐述了许多具体细节,以便提供对各种描述的实施例的理解。然而,对于本领域的普通技术人员来说将明显的是,可以在没有这些具体细节的情况下实施各种所描述的实施例。在其他情况下,没有详细描述众所周知的系统、方法、过程、组件、电路和网络,以免不必要地模糊实施例的各个方面。
参考图1-图9,以下将提供用于减轻头戴式显示器中的动显延迟的示例性装置、系统和/或相应实现的详细描述。将结合图10提供用于减轻头戴式显示器中的动显延迟的方法的详细描述。
图1示出了根据一些实施例的用于减轻动显延迟的示例性专用硬件设备100。在某些示例中,专用硬件设备100可以被结合在头戴式显示器中和/或表示头戴式显示器的一部分。在这样的示例中,专用硬件设备100可以负责对最终显示给佩戴头戴式显示器的用户的图像执行某些图像处理操作。
专用硬件设备100通常代表被设计成执行各种时间敏感的图像处理操作的物理电路、系统和/或硬件加速器。在一些示例中,专用硬件设备100可以包括和/或表示片上系统(SoC)和/或专用集成电路(ASIC)。例如,专用硬件设备100可以通过SoC和/或ASIC实现显示成像流水线。除了显示成像流水线之外,SoC和/或ASIC还可以包括各种其他计算组件,这些组件涉及处理图像以供头戴式显示器显示。这种计算组件的示例包括但不限于高级精简指令集计算机(RISC)机器(ARM)处理器、中央处理单元(CPU)、图像信号处理器(ISP)、数字信号处理器(DSP)、计算机视觉(CV)加速器、视频编码器、视频解码器、硬件加速处理组件、它们中的一个或更多个的组合或变体、和/或任何其他合适的组件。
如图1所示,专用硬件设备100可以包括图像信号处理器102、输入格式化组件104、融合组件106和帧输出接口108。在一些示例中,图像信号处理器102可以从头戴式显示器上机载的相机接收图像帧和/或对那些图像帧执行某些图像处理操作(例如图像缩放、透镜校正、噪声校正、对比度调整、锐化等)。
在一些示例中,输入格式化组件104可以从头戴式显示系统外部的独立主机设备接收计算机生成的影像,和/或解压缩或解码这种计算机生成的影像,用于叠加到由机载相机捕获的图像帧上。附加地或可替代地,输入格式化组件104可以从头戴式显示器上机载的内部源设备接收计算机生成的影像。输入格式化组件104还可以对从独立主机设备接收的计算机生成的影像执行某些图像处理和/或格式化操作(例如解压缩、解码、提取、缩放、边缘保留等)。
在一些示例中,融合组件106可以通过将从独立主机设备接收的计算机生成的影像叠加到由机载相机捕获的图像帧上来生成混合现实帧。换句话说,融合组件106可以有效地将图像帧中捕获的真实世界的某些元素与计算机生成的影像中表示的虚拟世界的其他元素融合。在一些示例中,术语“混合现实帧”可以指包括和/或组合照片内容和/或图像的一个或更多个元素与计算机生成的影像的一个或更多个元素的任何类型或形式的图像帧。
在一些示例中,帧输出接口108可以将混合现实帧发送、传输和/或馈送到集成和/或结合到头戴式显示器中的显示设备。通过这样做,帧输出接口108可以使显示设备能够显示混合现实帧,以呈现给佩戴头戴式显示器的用户。在一个示例中,帧输出接口108可以包括和/或表示移动产业处理器接口(MIPI)显示器串行接口(DSI)。
图2示出了根据一些实施例的由用户204佩戴的示例性头戴式显示系统200。如图2所示,头戴式显示系统200可以包括耦合到头戴式显示器202的带206。在该示例中,头戴式显示器202可以至少包括捕捉用户204的周围环境的图像和/或视频的相机210(1)和210(2)。因此,相机210(1)和210(2)可以促进透视功能和/或成像,或者使头戴式显示器202能够用作混合现实门户(portal),其中用户204的现实世界周围环境与虚拟世界内容融合。相机210(1)和210(2)的示例包括但不限于数码相机、RGB相机、互补金属氧化物半导体(CMOS)图像传感器、电荷耦合器件(CCD)图像传感器、成像传感器阵列、它们中的一个或更多个的变体或组合、它们中的一个或更多个的组合和/或任何其他合适的相机。
在一些示例中,术语“头戴式显示器”可以指佩戴在用户脸上或周围并向用户显示视觉内容的任何类型或形式的显示设备或系统。头戴式显示器可以以任何合适的方式显示内容,包括通过屏幕(例如,LCD或LED屏幕)、投影仪、阴极射线管、光学混合器等。头戴式显示器可以以一种或更多种媒体格式显示内容。例如,头戴式显示器202可以显示视频、照片、计算机生成的影像(CGI)和/或它们的组合。
头戴式显示器可以提供多样化和独特的用户体验。一些头戴式显示器可以提供虚拟现实体验(即,它们可以显示计算机生成或预先记录的内容),而其他头戴式显示器可以提供现实世界体验(即,它们可以显示来自物理世界的实况图像)。头戴式显示器也可以提供实时和虚拟内容的任何混合。例如,虚拟内容可以被投影到物理世界上(例如,通过光学或视频透视),这可以产生增强现实或混合现实体验。
头戴式显示器可以被配置成以多种方式安装到用户的头部。一些头戴式显示器可以被结合到眼镜或面罩(visors)中。其他头戴式显示器可以被结合到头盔、帽子或其他头戴装备中。
如图2所示,用户204可以将头戴式显示系统200放置在用户的头上,使得头戴式显示器202位于和/或置于用户的脸上。通过以这种方式将头戴式显示系统200放置在他或她的脸上,用户204可以将头戴式显示器202放置在他或她的眼睛上,以体验和/或观看头戴式显示器202上呈现的虚拟内容。用户204还可以通过将带206缠绕在用户的后脑勺周围来将头戴式显示器202固定在正确的位置。
图3示出了根据一些实施例的可并入头戴式显示器202中用于减轻动显延迟的示例性组件。如图3所示,头戴式显示器202可以包括专用硬件设备100、相机320(1)-(N)和显示设备318。在一些示例中,显示设备318可以包括呈现图像帧(例如虚拟现实、增强现实和/或混合现实帧)以呈现给佩戴头戴式显示器202的用户的屏幕。显示设备318的示例包括但不限于液晶显示器(LCD)、发光二极管(LED)显示器、视网膜投影显示器、它们中的一个或更多个的变体或组合、和/或任何其他合适的显示设备。
如图3所示,专用硬件设备100可以包括各种组件和/或硬件加速设备。例如,专用硬件设备100可以包括图像信号处理器102、相机接口302、计算机视觉硬件加速器304、视频编码器306、视频解码器308、中央处理单元312、数字信号处理器314、显示成像流水线310和帧输出接口108。如下面将更详细描述的,显示成像流水线310可以包括负责执行时间敏感的图像处理操作的各种硬件加速图像校正组件。
在一些示例中,图像信号处理器102可以集成和/或结合在专用硬件设备100内的显示成像流水线310的内部或外部。例如,如图3所示,图像信号处理器102可以位于专用硬件设备100内的显示成像流水线310的外部。在该示例中,专用硬件设备100可以包括直接通信路径322,其便于从图像信号处理器102到显示成像流水线310的通信。直接通信路径322可以使专用硬件设备100能够最小化整个图像帧处理周期中准备由显示设备318呈现的图像帧所需的存储器访问次数。
例如,直接通信路径322可以使图像信号处理器102能够将图像帧直接转发到显示成像流水线310中的后续组件(例如,融合组件、硬件加速失真组件或多路复用器),而无需首先在DRAM中缓冲。因此,直接通信路径322可以有效地消除在图像信号处理器102和后续组件之间在DRAM中缓冲图像帧的需要。通过这样做,直接通信路径322可以减少图像帧处理周期中涉及的DRAM访问的数量。
在一些示例中,显示成像流水线310可以被专门设计用于执行时间敏感的图像处理操作(例如色差校正、伽马校正和/或调整、多图像融合和/或重叠、显示器过驱动补偿、Mura校正、抖动、图像解压缩、图像缩放、透镜校正、噪声校正、图像失真、异步时间扭曲、异步空间扭曲等)。这些操作中的一些可能传统上是由图形处理单元(GPU)执行的,而不是由SoC和/或ASIC执行。然而,GPU不是专门为在虚拟现实、增强现实和/或混合现实环境中执行这种操作而设计的,这可能导致GPU在这种环境中基本上像通用设备一样执行。例如,GPU可以结合和/或实现减慢这种操作的某些特征和/或功能,使得在GPU被部署在虚拟现实、增强现实和/或混合现实环境中时潜在地导致和/或促成动显延迟。
作为这种缺陷的具体示例,传统的头戴式显示器可以包括被编程为执行各种时间敏感的图像处理操作的GPU,这些操作包括色差校正、伽马校正和/或调整、多图像融合和/或重叠、显示器过驱动补偿、Mura校正、抖动、图像缩放、透镜校正、噪声校正、对比度调整和/或锐化等。该GPU可以被设计成使得在对图像帧完成这些操作之一之后,该GPU在DRAM中临时存储和/或缓冲图像帧,直到下一个操作。在适当的时候,GPU然后可以从DRAM中取出图像帧,以对图像帧执行下一个操作。将图像帧写入DRAM并随后从DRAM中读取图像帧的这种循环可以继续,直到每个图像处理操作完成。
当图像帧准备好显示时,图像帧可能已经经历了多次DRAM读取和/或写入操作。不幸的是,每次DRAM访问(无论是读还是写)都可能导致和/或等于图像帧的延时或时间损失。因此,在该GPU驱动的实施例中,至少部分由于GPU的通用架构和/或其对DRAM缓冲器的严重依赖,完成针对图像帧的所有图像处理操作所需的时间量可能被延长和/或拉长(drawnout)。
在某些应用中(如GPU驱动的电视或计算机监视器),这种延时可能对整体用户体验的影响很小(如果有的话)。事实上,这种延时可能完全不引人注意。然而,在虚拟现实、增强现实和/或混合现实环境中,这种延时对某些用户来说可能是引人注意的,甚至是显而易见的,这可能会导致不连贯的用户体验,让他们感觉不舒服。
为了解决这个缺陷,头戴式显示器202可以包括和/或结合专用硬件设备100(例如,SoC和/或ASIC),其执行传统上由GPU负责的许多图像处理操作。如下面将更详细解释的,由于各种原因,SoC和/或ASIC驱动的显示流水线可以优于和/或改进传统的GPU驱动的显示流水线。
图4示出了根据一些实施例的用于减轻头戴式显示器中的动显延迟的显示成像流水线310的示例性实现400。如图4所示,实现400可以包括和/或涉及显示成像流水线310、显示设备318和/或存储器设备418。存储器设备418通常表示能够存储数据和/或计算机可读指令的任何类型或形式的易失性或非易失性存储设备或介质。在一个示例中,存储器设备418可以包括和/或表示DRAM设备和/或缓冲器。存储器设备418的其他示例包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、闪存、固态驱动器(SSD)、光驱、高速缓存、这些部件中的一个或更多个的变体或组合、和/或任何其他合适的储存存储器。
如图4所示,显示成像流水线310可以包括图像信号处理器102、输入格式化组件104、失真组件408(1)和408(2)、融合组件106和/或硬件加速图像校正组件412(1)-(N)。在一些示例中,失真组件408(1)和408(2)可以各自表示对图像帧和/或计算机生成的影像执行某些失真校正操作(例如图像失真校正、异步时间扭曲、异步空间扭曲等)的集成设备和/或电路。
在一些示例中,硬件加速图像校正组件412(1)-(N)可以各自表示执行一个或更多个图像处理操作的集成设备或电路。这种图像处理操作的示例包括但不限于色差校正、伽马校正和/或调整、显示器过驱动补偿、Mura校正、抖动、图像缩放、透镜校正、噪声校正、前述操作中一个或更多个的变体或组合、和/或任何其他合适的操作。
在一些示例中,实现400可以对应于和/或表示混合现实环境。在一个示例中,图像帧402可以在去往显示设备318的途中到达显示成像流水线310内的图像信号处理器102。在该示例中,图像帧402可能已经被头戴式显示器202上的相机320(1)-(N)捕获。
当图像帧402到达时,图像信号处理器102可以在图像帧402上执行某些图像处理操作(例如透镜校正、图像缩放、噪声校正、对比度调整、清晰度调整、颜色调整等),然后将其转发到失真组件408(1)。由图像信号处理器102执行的那些图像处理操作可以应用于和/或专用于图像帧402。因此,那些图像处理操作可能不应用于和/或不旨在用于随后与图像帧402融合的计算机生成的影像404。
一旦接收到图像帧402,失真组件408(1)可以对图像帧402应用异步时间扭曲和/或异步空间扭曲。失真组件408(1)然后可以将图像帧402转发到融合组件106,用于与计算机生成的影像404融合。
在一些示例中,术语“异步时间扭曲”可以指一种图像处理操作,其中生成图像帧以至少部分基于先前帧和用户运动数据来表示和/或反映用户的头部位置的变化。例如,异步时间扭曲可以包括通过修改最后一个图像帧来补偿和/或考虑到用户的头部运动,从而再利用该图像帧。这种修改可以基于用户的头部运动,有效地向左、向右、向上和/或向下移动帧内的图像,或者甚至顺时针和/或逆时针旋转帧内的图像。这种异步时间扭曲可以确保头戴式显示器202即使在头戴式显示器202(例如,由于显示成像流水线中的延迟)无法在所需时间段内准备和/或呈现全新的图像帧的情况下也始终具有要显示的图像帧。
在一些示例中,术语“异步空间扭曲”可以指一种图像处理操作,其中修改图像帧内的景物和/或对象,以至少部分基于在先前帧和用户运动数据中识别的差异来补偿和/或考虑到用户的头部位置的变化。例如,异步空间扭曲可以包括通过响应于用户的移动调整先前呈现的图像帧内的景物和/或对象来修改该图像帧。在一个示例中,某些景物和/或对象可以在用户环视一个角落(无论是真实的还是虚拟的)之后,通过异步空间扭曲在图像帧内被暴露和/或变得可见。类似地,某些景物和/或对象可以在用户在角落周围扫视之后通过异步空间扭曲在图像帧内被遮挡。
在该示例中,计算机生成的影像404可以在去往显示设备318的途中到达显示成像流水线310内的输入格式化组件104。在该示例中,计算机生成的影像404可能已经由位于头戴式显示系统200外部和/或与其分离的独立主机设备生成和/或提供。
当计算机生成的影像404到达时,输入格式化组件104可以对计算机生成的影像404执行某些图像处理操作(例如解压缩、解码、缩放、边缘保留等),然后将其转发给失真组件408(2)。由输入格式化组件104执行的那些图像处理操作可以应用于和/或专用于计算机生成的影像404。因此,那些图像处理操作可能不应用于和/或不旨在用于计算机生成的影像404随后与之融合的图像帧402。
一旦接收到计算机生成的影像404,失真组件408(2)可以对计算机生成的影像404应用异步时间扭曲和/或异步空间扭曲。失真组件408(2)然后可以将计算机生成的影像404转发到融合组件106,用于与图像帧402融合。
在一个示例中,失真组件408(1)可以使图像帧402失真,以将图像帧402的某些像素与计算机生成的影像404的相应像素对齐。失真组件408(1)还可以将图像帧402的那些像素中的每一个映射到显示设备318的特定显示元素。类似地,失真组件408(2)可以使计算机生成的影像404失真,以将计算机生成的影像404的相应像素与图像帧402的那些像素对齐。失真组件408(2)还可以将计算机生成的影像404的每个对应像素映射到显示设备318的特定元素。
在一些示例中,融合组件106可以接收图像帧402和/或计算机生成的影像404。在这样的示例中,融合组件106可以通过将计算机生成的影像404叠加到图像帧402上来生成混合现实帧。这些混合现实帧可以包括来自图像帧402和计算机生成的影像404的真实和虚拟元素的组合。融合组件106然后可以在显示设备318处呈现给用户之前,将混合现实帧转发到硬件加速图像校正组件412(1)-(N)以进行帧处理周期的最后阶段。
在硬件加速图像校正组件412(1)-(N)处,混合现实帧可以在融合阶段之后经历旨在用于图像帧402和计算机生成的影像404的某些图像处理操作。在完成那些图像处理操作后,硬件加速图像校正组件412(1)-(N)可以将混合现实帧转发到显示设备318,用于再现和/或呈现给用户。
以上结合图4提供的描述可以表示示例性图像帧处理周期,其中图像帧402和计算机生成的影像404经历预融合处理操作,被融合成混合现实帧,然后经历进一步的融合后处理操作。图4中的实现400可以使显示成像流水线310能够优化和/或最小化对存储器设备418进行的存储器访问(例如,读或写操作)的数量。例如,如图4所示,显示成像流水线310可以提供图像信号处理器102和显示成像流水线310中的后续组件(在该示例中,失真组件408(1))之间的直接路径。该直接路径可以使图像信号处理器102能够将图像帧402直接转发到显示成像流水线310中的后续组件,而无需首先在存储器设备418中缓冲。因此,该直接路径可以有效地消除在图像信号处理器102和后续组件之间在存储器设备418中缓冲图像帧402的需要。通过这样做,与传统的GPU驱动的实施例相比,该直接路径可以减少图像帧处理周期中涉及的DRAM访问的数量。
图5示出了根据一些实施例的用于减轻头戴式显示器中的动显延迟的专用硬件设备100的示例性实现500。如图5所示,实现500可以包括和/或涉及专用硬件设备100、显示设备318、DRAM 518和时钟发生器520。时钟发生器520的示例包括但不限于谐振器、振荡器、波发生电路、锁相环(PLL)、它们中的一个或更多个的变体或组合、和/或任何其他合适的时钟发生器。
在一个示例中,时钟发生器520可以生成时钟信号522和/或将其馈送给专用硬件设备100和显示设备318。在该示例中,时钟信号522可以用于使专用硬件设备100和显示设备318彼此同步。换句话说,专用硬件设备100和显示设备318可以至少部分基于时钟信号522彼此同步。
在一些示例中,图5中的专用硬件设备100可以被专门设计用于在虚拟现实、增强现实和/或混合现实环境中执行时间敏感的图像处理操作。如图5中的实现500所表示的这种设计可以使专用硬件设备100能够优化和/或最小化对DRAM 518进行的DRAM访问516(1)-(N)的数量。例如,专用硬件设备100可以包括内部组件之间的一个或更多个直接路径。这些直接路径可以将图像帧和/或计算机生成的影像从一个图像处理组件直接传送到下一个图像处理组件,而无需首先在DRAM 518中缓冲。因此,这些直接路径可以有效地消除当图像帧和/或计算机生成的影像向显示设备318行进时在该图像处理组件和下一个图像处理组件之间在DRAM 518中缓冲该图像帧和/或计算机生成的影像的需要。通过这样做,与传统的GPU驱动的实施例相比,这些直接路径可以减少图像帧处理周期中涉及的DRAM访问的数量。
如下面将更详细描述的,在专用硬件设备100上实现的显示成像流水线310可以在线地执行一些或所有图像处理操作,以减少帧处理周期的延迟。在一些示例中,如本文针对处理操作所使用的,术语“在线”通常可以指图像帧从一个硬件加速组件直接行进到另一个硬件加速组件而不在存储器中间歇缓冲的进展或转变。这种在线处理在传统的GPU驱动的实施例中可能无法实现和/或不切实际,这至少部分是由于GPU的通用架构和/或其对DRAM缓冲器的严重依赖。
通过在线地执行这些图像处理操作,在专用硬件设备100上实现的显示成像流水线310能够实现传统的GPU驱动的实施例所不能实现的进一步的效率增益和/或处理精度。例如,传统的GPU驱动的显示流水线可以被设计和/或编程为逐帧执行图像处理操作。在该示例中,每个图像处理操作可以应用于整个图像帧,而不是图像帧的单独行。因此,传统的GPU可能无法对少于整个图像帧应用某些图像操纵和/或校正措施。
传统GPU驱动的实施例中这种缺陷的一个原因是GPU和显示设备之间的同步。例如,传统的GPU可能需要定期向显示设备馈送和/或传送图像帧,以从用户的角度保持视觉连续性。然而,传统的GPU和显示设备可能依赖和/或操作相对于彼此不同的时钟信号。为了实现图像帧从GPU到显示设备的稳定传送,GPU和显示设备可能需要定期地执行彼此之间的同步操作。
不幸的是,像DRAM访问一样,每个同步操作可能导致和/或相当于受影响的图像帧的延时或时间损失(更不用说额外的资源消耗)。因此,完成针对某些图像帧的所有图像处理操作所需的时间量可能被延长和/或拉长,这至少部分是由于传统的GPU和显示设备的正在进行的同步要求。
为了向用户提供视觉连续性,即使传统的GPU和显示设备依赖和/或操作不同的时钟信号,传统的GPU可能在某种程度上被限制为执行低粒度、低效的图像处理操作(例如基于帧的操作),以确保向显示设备馈送稳定的图像帧流。换句话说,这种低粒度图像处理的实践可以帮助传统的GPU驱动的实施例避免更严重的显示问题(例如下溢(underflow)和/或上溢(overflow)),这可能潜在地导致显示器丢弃某些帧。
然而,在专用硬件设备100上实现的显示成像流水线310可以避免和/或减轻上述同步问题。例如,专用硬件设备100可以被设计成依赖和/或操作与显示设备318相同的时钟信号。在该示例中,如上所述,头戴式显示器202可以包括生成和/或产生时钟信号522的时钟发生器520。时钟发生器520可以向专用硬件设备100和显示设备318输送和/或馈送时钟信号522。
通过以这种方式将时钟信号522输送和/或馈送到专用硬件设备100,时钟发生器520可以有效地使显示成像流水线310和显示设备318能够避免相对于图像流变得不同步。该公共时钟发生器还可以使在专用硬件设备100上实现的显示成像流水线310和显示设备318能够避免耗时的同步操作。因此,在专用硬件设备100上实现的显示成像流水线310能够对图像流执行更高粒度、更有效或动态的图像处理操作,而不会有下溢和/或上溢的风险。例如,在没有下溢和/或上溢风险的情况下,在专用硬件设备100上实现的显示成像流水线310能够对图像流执行帧内处理。换句话说,在专用硬件设备100上实现的显示成像流水线310可以逐行动态地处理图像帧,而不是仅仅逐帧处理,不会导致显示设备318处的帧丢失。
图6示出了根据一些实施例的用于减轻混合现实头戴式显示器中的动显延迟的专用硬件设备100的示例性实现600。如图6所示,实现600可以包括和/或涉及通过通信链路604彼此通信的头戴式显示器202和独立主机设备606。在一个示例中,独立主机设备606可以代表个人计算机(PC)和/或游戏控制台。在该示例中,独立主机设备606可以包括物理处理器630、通信接口632和存储器640。
如图6所示,头戴式显示器202可以包括专用硬件设备100、相机320(1)-(N)、通信接口634和存储器设备418。在一个示例中,独立主机设备606和头戴式显示器202可以分别通过通信接口632和634建立和/或形成彼此之间的通信链路604。在该示例中,头戴式显示器202上的相机320(1)-(N)可以从用户的角度捕捉图像帧402。
在一个示例中,独立主机设备606可以经由通信链路604将计算机生成的影像404馈送到头戴式显示器202,使得头戴式显示器202能够将计算机生成的影像404与由机载相机捕获的图像帧402融合。最终的体验对用户来说可以看起来是现实和虚拟现实的混合。因此,头戴式显示器202可以有效地用作透视相机,其使得用户能够观看他或她的被从独立主机设备606馈送的虚拟对象修改的周围环境。
作为一个特定的用例示例,用户可以在他或她的起居室佩戴和/或操作头戴式显示器202。在该示例中,头戴式显示器202可以捕捉他或她的周围环境(包括例如客厅家具)的视频,然后将该视频与从附近的PC馈送的虚拟对象融合。在完成相应的处理和/或融合之后,在头戴式显示器202中向用户显示的视频可以显示和/或呈现在起居室中他或她的沙发上的虚拟覆盖物(或所谓的皮肤),从而从用户的角度操纵沙发的外观。在该示例中,专用硬件设备100可以代表实现显示成像流水线310的ASIC。由于在该ASIC实现的显示流水线中,许多时间敏感的图像处理操作是由ASIC而不是由GPU执行的,所以通过设计ASIC的硬件和/或架构来最小化和/或优化DRAM的访问次数,可以减少完成所有这些操作所需的时间量。
图7示出了根据一些实施例的用于减轻动显延迟的被结合到头戴式显示器202中的示例性组件。如图7所示,头戴式显示器202可以包括和/或涉及专用硬件设备100、相机320(1)-(N)、显示设备318和一个或更多个运动检测传感器704。在一些示例中,运动检测传感器704可以检测和/或测量由佩戴头戴式显示器202的用户做出的某些运动和/或动作。运动检测传感器704的示例包括但不限于陀螺仪、加速度计、磁强计、电子罗盘、它们中的一个或更多个的组合或变体和/或任何其他合适的运动检测传感器。
在一个示例中,当用户操作头戴式显示器202时,运动检测传感器704可以生成图7中的用户运动数据706,然后将用户运动数据706发送到专用硬件设备100,以在图像帧处理周期期间补偿和/或考虑到用户运动数据706。在该示例中,用户运动数据706可以在来自单个图像帧的一些帧数据仍在被处理时到达专用硬件设备100。用户运动数据706可以指示和/或用于确定用户在该单个图像帧被机载相机捕获之后进行了一个或更多个移动。
更具体地,用户运动数据706可以在帧的一些单独行已经被转发到显示设备318以呈现给用户之后到达显示成像流水线310。例如,单个帧可以包括和/或由图像帧行708(例如,帧的顶行)和图像帧行710(例如,帧的中行和/或底行)组成。在该示例中,用户运动数据706可以在图像帧行708已经被处理之后但是在图像帧行710已经被处理之前到达显示成像流水线310。换句话说,图像帧行708可能已经被显示成像流水线310处理和/或被转发到显示设备318或由显示设备318呈现。因此,显示成像流水线310可能无法在图像帧行708中补偿和/或考虑到用户运动数据706中表示的用户最近的移动。然而,显示成像流水线310仍然能够在图像帧行710中补偿和/或考虑到用户的最近移动,这些图像帧行仍在被处理和/或尚未被转发到显示设备318。
因此,因为显示成像流水线310是在专用硬件设备100(而不是通用设备)上实现的,所以显示成像流水线310可以对单个帧执行在线的帧内图像处理。这种在线的帧内处理可以使显示成像流水线310能够当单个帧从相机320(1)-(N)行进到头戴式显示器202上的显示设备318时动态地更新和/或操纵该单个帧的单独的行。通过这样做,显示成像流水线310可以在帧的某些行上补偿和/或考虑到用户的移动,即使这种补偿对于已经被处理和/或转发到显示设备以进行呈现的帧的其他行是不可用的。
图8和图9共同示出了根据一些实施例的用于通过硬件加速帧内处理来减轻头戴式显示器中的动显延迟的示例性实现900。如图8所示,单个图像帧802可以由各种图形行组成,包括行804、806、808、810、812和814(在本文统称为“行804-814”)。在一个示例中,行804-814可以各自包括图形和/或图像数据或像素。在该示例中,行804-814可以各自包括由相机320(1)-(N)捕获的和/或由本地存储在头戴式显示器202上的照片文件源提供的和/或从远程设备(例如独立主机设备606)传输到头戴式显示器202的照片数据或像素。附加地或可替代地,行804-814可以各自包括代表存储在本地图像文件源中和/或由远程设备提供的虚拟对象和/或元素(例如CGI)的虚拟图像数据。
在一个示例中,行804-814可以各自对应于和/或表示将由头戴式显示器202的显示设备318呈现的离散图像帧行。例如,行804可以对应于和/或表示图像帧802中的从用户的角度来看由显示设备318的最顶端和/或最高显示元素呈现的顶行。在该示例中,行814可以对应于和/或表示图像帧802中的从用户的角度来看将由显示设备318的最底部和/或最低显示元素呈现的底行。
如图9所示,实现900可以包括和/或涉及显示成像流水线310、显示设备318、相机320(1)和/或运动检测传感器704。在实现900中,图像帧802可以作为单独行的流和/或序列穿过显示成像流水线310。例如,相机320(1)可以在特定时间点捕获图像帧802,然后以逐行方式将图像帧802馈送到显示成像流水线310中。在该示例中,行804可以是第一个进入和退出显示成像流水线310的行,其后是行806等等。最后,行814可以是在去往显示设备318的途中进入和退出显示成像流水线310的最后一行。因此,这种单独行的特定序列可以对应于和/或表示先进先出(FIFO)数据传送方案。
在实现900中,运动检测传感器704可以连续地测量用户的运动和/或移动。因此,运动检测传感器704可以连续地生成表示这种运动和/或移动的用户运动数据,和/或将其发送到显示成像流水线310,以使显示成像流水线310能够在由相机320(1)捕获的图像帧中补偿和/或考虑到用户的运动和/或移动。例如,在相机捕获图像帧802之后,用户可以突然运动和/或移动他或她的头。在该示例中,运动检测传感器704可以检测和/或测量用户做出的该运动和/或移动。运动检测传感器704然后可以至少部分基于该运动和/或移动来生成用户运动数据。
在一个示例中,运动检测传感器704可以生成反映用户在某个时间点的运动和/或当前位置或定向的用户运动数据706。在该示例中,运动检测传感器704随后可以生成反映用户在后续时间点的运动和/或当前位置或定向的用户运动数据706。
在一些示例中,运动检测传感器704可以将用户运动数据馈送到显示成像流水线310,使得显示成像流水线310能够修改图像帧802的至少一部分,以反映用户正在进行的运动和/或移动。例如,仅在(1)行804和806已经被显示成像流水线310处理并在显示设备318的显示屏918上呈现,以及(2)行808和810已经被显示成像流水线310处理并正在去往显示设备318的路上之后,用户运动数据706才变得可用于显示成像流水线310。因此,行804、806、808和810中的每一个可能不再适于基于用户运动数据706进行任何种类的修改。然而,即使行804、806、808和810不再适于进行这种修改,但行812和814仍然可以适于至少部分基于用户运动数据706进行修改。
在一个示例中,当用户运动数据706从运动检测传感器704到达时,显示成像流水线310可以执行将用户运动数据706应用于行812的至少一个图像处理操作910。在该示例中,图像处理操作910可以至少部分基于用户运动数据706来补偿和/或考虑到用户的最近运动和/或当前位置或定向。例如,图像处理操作910可以包括和/或涉及异步时间扭曲和/或异步空间扭曲。在完成图像处理操作910之后,显示成像流水线310可以将行812的修改版本馈送到显示设备318,用于在显示屏918上呈现。
类似地,仅在行804、806、808、810和812中的每一个已经被显示成像流水线310处理和/或在显示设备318的显示屏918上呈现之后,用户运动数据706才变得可用于显示成像流水线310。因此,行804、806、808、810和812中的每一个可不再适于基于用户运动数据706进行任何种类的修改。然而,即使行804、806、808、810和812不再适于进行这种修改,但行814仍然适于至少部分基于用户运动数据706进行修改。
在该示例中,当用户运动数据706从运动检测传感器704到达时,显示成像流水线310可以执行将用户运动数据706应用于行814的至少一个图像处理操作。该图像处理操作可以至少部分基于用户运动数据706来补偿和/或考虑到用户的最近运动和/或当前位置或定向。在完成该图像处理操作之后,显示成像流水线310可以将行814的修改版本馈送到显示设备318,用于在显示屏918上呈现。
作为显示成像流水线310逐行处理的结果,由显示设备318呈现的帧的每一行可以有效地对应于和/或表示相对于用户的移动和/或头部位置或定向的不同的离散时间点。因此,显示成像流水线310可以使头戴式显示器202能够以最小的动显延迟实现图像流的高帧速率呈现。在专用硬件设备100上实现的显示成像流水线310甚至可以将这种头戴式显示技术推向和/或推进到零动显延迟。
图10是根据本文公开的任何实施例的用于减轻头戴式显示器中的动显延迟的示例性方法1000的流程图。图10中所示的步骤可以由结合到头戴式显示器中的专用硬件设备(例如ASIC或SoC)来执行。此外,图10中所示的步骤还可以结合和/或涉及与以上结合图1-图9描述的描述一致的各种子步骤和/或变体。
如图10所示,在步骤1010,专用硬件设备可以接收由头戴式显示系统的相机设备捕获的至少一个图像帧。例如,相机320(1)-(N)可以捕获图像帧402,然后将其转发给专用硬件设备100。当图像帧402到达时,专用硬件设备100可以接收图像帧402用于处理,以准备向用户204显示。
在图10中的步骤1020,专用硬件设备可以接收旨在与图像帧融合的计算机生成的影像。例如,独立主机设备606可以经由通信链路604将计算机生成的影像404传输到头戴式显示器202。附加地或可替代地,头戴式显示器202内部的源设备可以将计算机生成的影像404转发给专用硬件设备100。当计算机生成的影像404到达时,专用硬件设备100可以接收计算机生成的影像404用于处理,以准备向用户204显示。
在图10中的步骤1030,专用硬件设备可以通过将计算机生成的影像叠加到图像帧上来生成至少一个混合现实帧。例如,专用硬件设备100可以将计算机生成的影像404与图像帧402融合。在该示例中,专用硬件设备100可以通过将至少一些计算机生成的影像404叠加到图像帧402上来生成混合现实帧。
在图10中的步骤1040,专用硬件设备可以将混合现实帧馈送给头戴式显示系统的显示设备,使得显示设备显示混合现实帧以呈现给佩戴头戴式显示系统的用户。例如,专用硬件设备100可以将混合现实帧传递和/或转发给头戴式显示器202的显示设备318。一旦接收到混合现实帧,显示设备318就可以显示混合现实帧以呈现给用户204。
已经提供了前面的描述,以使本领域的其他技术人员能够最好地利用本文公开的示例性实施例的各个方面。该示例性描述不旨在穷举或限制于所公开的任何精确形式。在不脱离本公开的精神和范围的情况下,许多修改和变化是可能的。本文公开的实施例在所有方面都应该被认为是说明性的,而不是限制性的。在确定本公开的范围时,应当参考所附权利要求及其等同物。
本公开的实施例可以包括人工现实系统或者结合人工现实系统来实现。人工现实是一种在呈现给用户之前已经以某种方式进行了调整的现实形式,其可以包括例如虚拟现实(VR)、增强现实(AR)、混合现实(mixed reality,MR)、混杂现实(hybrid reality)或其某种组合和/或衍生物。人工现实内容可以包括完全生成的内容或者与捕获的(例如,真实世界的)内容相结合的生成的内容。人工现实内容可以包括视频、音频、触觉反馈或它们的某种组合,它们中的任何一个都可以在单个通道或多个通道中呈现(例如向观众产生三维效果的立体视频)。此外,在一些实施例中,人工现实还可以与应用、产品、附件、服务或其某种组合相关联,这些应用、产品、附件、服务或其某种组合用于例如在人工现实中创建内容和/或在人工现实中以其他方式使用(例如在人工现实中执行活动)。提供人工现实内容的人工现实系统可以在各种平台上实现,这些平台包括连接到主计算机系统的头戴式显示器(HMD)、独立的HMD、移动设备或计算系统、或者能够向一个或更多个观众提供人工现实内容的任何其他硬件平台。
本文描述和/或示出的过程参数和步骤顺序仅作为示例给出,并且可以根据需要改变。例如,虽然在本文示出和/或描述的步骤可以以特定顺序示出或讨论,但是这些步骤不一定需要以示出或讨论的顺序执行。本文描述和/或示出的各种示例性方法也可以省略本文描述或示出的一个或更多个步骤,或者包括除了那些公开的步骤之外的附加步骤。
除非另有说明,否则说明书和权利要求书中使用的术语“连接到”和“耦合到”(及其派生词)应被解释为允许直接和间接(即,通过其他元件或组件)连接。此外,说明书和权利要求书中使用的术语“一个(a)”或“一个(an)”应被解释为意指“…中的至少一个”。最后,为了便于使用,说明书和权利要求书中使用的术语“包括(including)”和“具有”(及其派生词)可与词语“包括(comprising)”互换并具有相同的含义。
本申请涉及以下方面。
1).一种专用硬件设备,包括:
图像信号处理器,其接收由头戴式显示系统的相机设备捕获的至少一个图像帧;
输入格式化组件,其接收旨在与所述图像帧融合的计算机生成的影像;
融合组件,其与所述图像信号处理器和所述输入格式化组件通信地耦合,其中所述融合组件通过将所述计算机生成的影像叠加到从所述头戴式显示系统的所述相机设备接收的所述图像帧上来生成至少一个混合现实帧;和
帧输出接口,其通信地耦合到所述融合组件,其中所述帧输出接口将由所述融合组件生成的所述混合现实帧馈送到所述头戴式显示系统的显示设备,以便于显示所述混合现实帧,从而呈现给佩戴所述头戴式显示系统的用户。
2).根据1)所述的专用硬件设备,还包括一个或更多个硬件加速图像校正组件,每个硬件加速图像校正组件对所述混合现实帧执行至少一个图像校正过程,来为所述显示设备准备所述混合现实帧。
3).根据2)所述的专用硬件设备,其中,所述硬件加速图像校正组件包括硬件加速设备,当所述混合现实帧向所述显示设备行进时,所述硬件加速设备至少部分地校正所述混合现实帧中的色差。
4).根据2)所述的专用硬件设备,其中,所述硬件加速图像校正组件包括硬件加速设备,当所述混合现实帧向所述显示设备行进时,所述硬件加速设备对所述混合现实帧执行伽马校正。
5).根据2)所述的专用硬件设备,其中,所述硬件加速图像校正组件包括硬件加速设备,当所述混合现实帧向所述显示设备行进时,所述硬件加速设备对所述混合现实帧执行非均匀性校正。
6).根据2)所述的专用硬件设备,其中,所述硬件加速图像校正组件包括硬件加速设备,所述硬件加速设备在所述混合现实帧向所述显示设备行进时修改所述混合现实帧以考虑到所述显示设备的过驱动特征。
7).根据2)所述的专用硬件设备,其中,所述硬件加速图像校正组件包括硬件加速设备,当所述混合现实帧向所述显示设备行进时,所述硬件加速设备至少部分地校正所述混合现实帧中的Mura现象。
8).根据2)所述的专用硬件设备,其中,所述硬件加速图像校正组件包括硬件加速设备,所述硬件加速设备在所述混合现实帧向所述显示设备行进时对所述混合现实帧执行抖动。
9).根据1)所述的专用硬件设备,还包括所述图像信号处理器和所述融合组件之间的直接通信路径,所述直接通信路径使得所述图像帧能够被直接馈送到所述融合组件,而不被缓冲在存储器中。
10).根据1)所述的专用硬件设备,还包括硬件加速失真组件,所述硬件加速失真组件在所述计算机生成的影像被叠加到所述图像帧上之前对所述图像帧应用异步时间扭曲。
11).根据10)所述的专用硬件设备,还包括附加的硬件加速失真组件,所述附加的硬件加速失真组件在所述计算机生成的影像被叠加到所述图像帧上之前将异步时间扭曲或异步空间扭曲应用到所述计算机生成的影像。
12).根据11)所述的专用硬件设备,其中:
所述硬件加速失真组件使所述图像帧失真以:
将所述图像帧的某些像素与所述计算机生成的影像的相应像素对齐;和
将所述图像帧的某些像素映射到所述显示设备的特定元素;和
所述附加的硬件加速失真组件使所述计算机生成的影像失真以:
将所述计算机生成的影像的相应像素与所述图像帧的某些像素对齐;和
将所述计算机生成的影像的相应像素映射到所述显示设备的特定元素。
13).根据1)所述的专用硬件设备,其中,所述图像信号处理器:
将所述图像帧直接转发到所述专用硬件设备内的处理组件,而不在存储器中临时缓冲所述图像帧;和
通过避免就所述图像帧访问存储器来减轻所述头戴式显示系统的动显延迟。
14).根据13)所述的专用硬件设备,其中,所述专用硬件设备内的所述处理组件包括以下至少一个:
所述融合组件;和
硬件加速失真组件,所述硬件加速失真组件在所述计算机生成的影像叠加到所述图像帧上之前对所述图像帧应用异步时间扭曲。
15).一种头戴式显示系统,包括:
至少一个相机设备,其从佩戴所述头戴式显示系统的用户的视角捕获一个或更多个图像帧;
专用硬件设备,其通信地耦合到所述相机设备,其中所述专用硬件设备:
从所述相机设备接收所述图像帧;
接收旨在与所述图像帧融合的计算机生成的影像;和
通过将所述计算机生成的影像叠加到从所述相机设备接收的所述图像帧上来生成一个或更多个混合现实帧;和
显示设备,其通信地耦合到所述专用硬件设备,其中所述显示设备:
从所述专用硬件设备接收所述混合现实帧;和
显示所述混合现实帧,以呈现给佩戴所述头戴式显示系统的用户。
16).根据15)所述的头戴式显示系统,还包括生成时钟信号的时钟发生器;和
其中所述专用硬件设备和所述显示设备至少部分地基于由所述时钟发生器生成的所述时钟信号而相对于彼此同步。
17).根据15)所述的头戴式显示系统,其中,所述专用硬件设备逐行地对所述图像帧执行一个或更多个硬件加速的帧内处理操作。
18).根据15)所述的头戴式显示系统,还包括运动检测传感器,所述运动检测传感器检测由佩戴所述头戴式显示系统的用户做出的移动;
其中所述专用硬件设备:
从所述运动检测传感器接收用户运动数据,所述用户运动数据指示佩戴所述头戴式显示系统的用户自从某个图像帧被所述相机设备捕获以来已经进行了至少一次移动;
识别来自所述某个图像帧的尚未被转发到所述显示设备的行的子集,即使来自所述某个图像帧的行的附加子集已经被转发到所述显示设备;
至少部分基于来自所述运动检测传感器的所述用户运动数据来修改来自所述某个图像帧的所述行的子集,以补偿用户做出的移动;和
将来自所述某个图像帧的、经修改的行的子集转发到所述显示设备,以便于显示所述经修改的行的子集连同所述行的附加子集以呈现给用户。
19).根据18)所述的专用硬件设备,其中:
来自所述某个图像帧的所述行的附加子集没有被修改以补偿用户做出的移动;和
所述显示设备在至少一个时间点期间同时显示所述经修改的行的子集和所述行的附加子集,以呈现给用户。
20).一种方法,包括:
由专用硬件设备接收由头戴式显示系统的相机设备捕获的至少一个图像帧;
由所述专用硬件设备接收旨在与所述图像帧融合的计算机生成的影像;
由所述专用硬件设备通过将所述计算机生成的影像叠加到从所述头戴式显示系统的相机设备接收的所述图像帧上来生成至少一个混合现实帧;和
由所述专用硬件设备将所述混合现实帧馈送到所述头戴式显示系统的显示设备,使得所述显示设备显示所述混合现实帧以呈现给佩戴所述头戴式显示系统的用户。
21).一种专用硬件设备,包括:
图像信号处理器,其接收由头戴式显示系统的相机设备捕获的至少一个图像帧;
输入格式化组件,其接收旨在与所述图像帧融合的计算机生成的影像;
融合组件,其与所述图像信号处理器和所述输入格式化组件通信地耦合,其中所述融合组件通过将所述计算机生成的影像叠加到从所述头戴式显示系统的相机设备接收的所述图像帧上来生成至少一个混合现实帧;和
帧输出接口,其通信地耦合到所述融合组件,其中所述帧输出接口将由所述融合组件生成的所述混合现实帧馈送到所述头戴式显示系统的显示设备,以便于显示所述混合现实帧,从而呈现给佩戴所述头戴式显示系统的用户。
22).根据21)所述的专用硬件设备,还包括一个或更多个硬件加速图像校正组件,每个硬件加速图像校正组件对所述混合现实帧执行至少一个图像校正过程,来为所述显示设备准备所述混合现实帧。
23).根据22)所述的专用硬件设备,其中,所述硬件加速图像校正组件包括当所述混合现实帧向所述显示设备行进时至少部分地校正所述混合现实帧中的色差的硬件加速设备;和/或
其中,所述硬件加速图像校正组件包括当所述混合现实帧向所述显示设备行进时对所述混合现实帧执行伽马校正的硬件加速设备;和/或
其中,所述硬件加速图像校正组件包括当所述混合现实帧向所述显示设备行进时对所述混合现实帧执行非均匀性校正的硬件加速设备;和/或
其中,所述硬件加速图像校正组件包括在所述混合现实帧向所述显示设备行进时修改所述混合现实帧以考虑到所述显示设备的过驱动特征的硬件加速设备;和/或
其中,所述硬件加速图像校正组件包括当所述混合现实帧向所述显示设备行进时至少部分地校正所述混合现实帧中的Mura现象的硬件加速设备;和/或
其中,所述硬件加速图像校正组件包括当所述混合现实帧向所述显示设备行进时对所述混合现实帧执行抖动的硬件加速设备。
24).根据21)至23)中任一项所述的专用硬件设备,还包括所述图像信号处理器和所述融合组件之间的直接通信路径,所述直接通信路径使得所述图像帧能够被直接馈送到所述融合组件,而不被缓冲在存储器中。
25).根据21)至24)中任一项所述的专用硬件设备,还包括硬件加速失真组件,所述硬件加速失真组件在所述计算机生成的影像被叠加到所述图像帧上之前对所述图像帧应用异步时间扭曲。
26).根据25)所述的专用硬件设备,还包括附加的硬件加速失真组件,所述附加的硬件加速失真组件在所述计算机生成的影像被叠加到所述图像帧上之前将异步时间扭曲或异步空间扭曲应用到所述计算机生成的影像;
任选地,其中:
所述硬件加速失真组件使所述图像帧失真以:
将所述图像帧的某些像素与所述计算机生成的影像的相应像素对齐;和
将所述图像帧的所述某些像素映射到所述显示设备的特定元素;和
所述附加的硬件加速失真组件使所述计算机生成的影像失真以:
将所述计算机生成的影像的相应像素与所述图像帧的所述某些像素对齐;和
将所述计算机生成的影像的相应像素映射到所述显示设备的特定元素。
27).根据21)至26)中任一项所述的专用硬件设备,其中,所述图像信号处理器:
将所述图像帧直接转发到所述专用硬件设备内的处理组件,而不在存储器中临时缓冲所述图像帧;和
通过避免就所述图像帧访问存储器来减轻所述头戴式显示系统的动显延迟;
可选地,其中所述专用硬件设备内的处理组件包括以下至少一个:
所述融合组件;和
硬件加速失真组件,所述硬件加速失真组件在所述计算机生成的影像叠加到所述图像帧上之前对所述图像帧应用异步时间扭曲。
28).一种头戴式显示系统,包括:
至少一个相机设备,其从佩戴所述头戴式显示系统的用户的视角捕获一个或更多个图像帧;
专用硬件设备,其通信地耦合到所述相机设备,其中所述专用硬件设备:
从所述相机设备接收所述图像帧;
接收旨在与所述图像帧融合的计算机生成的影像;和
通过将所述计算机生成的影像叠加到从所述相机设备接收的所述图像帧上来生成一个或更多个混合现实帧;和
显示设备,其通信地耦合到所述专用硬件设备,其中所述显示设备:
从所述专用硬件设备接收所述混合现实帧;和
显示所述混合现实帧,以呈现给佩戴所述头戴式显示系统的用户。
29).根据28)所述的头戴式显示系统,还包括生成时钟信号的时钟发生器;和
其中所述专用硬件设备和所述显示设备至少部分地基于由所述时钟发生器生成的所述时钟信号而相对于彼此同步。
30).根据28)或29)所述的头戴式显示系统,其中,所述专用硬件设备逐行地对所述图像帧执行一个或更多个硬件加速的帧内处理操作。
31).根据28)至30)中任一项所述的头戴式显示系统,还包括运动检测传感器,所述运动检测传感器检测由佩戴所述头戴式显示系统的用户做出的移动;
其中所述专用硬件设备:
从所述运动检测传感器接收用户运动数据,所述用户运动数据指示佩戴所述头戴式显示系统的用户自从某个图像帧被所述相机设备捕获以来已经进行了至少一次移动;
识别来自所述某个图像帧的尚未被转发到所述显示设备的行的子集,即使来自所述某个图像帧的行的附加子集已经被转发到所述显示设备;
至少部分地基于来自所述运动检测传感器的所述用户运动数据来修改来自所述某个图像帧的所述行的子集,以补偿用户做出的移动;
和
将来自所述某个图像帧的经修改的行的子集转发到所述显示设备,以便于显示所述经修改的行的子集连同所述行的附加子集,以呈现给用户。
32).根据31)所述的专用硬件设备,其中:
来自所述某个图像帧的所述行的附加子集没有被修改以补偿用户做出的移动;和
所述显示设备在至少一个时间点期间同时显示所述经修改的行的子集和所述行的附加子集,以呈现给用户。
33).一种方法,包括:
由专用硬件设备,特别是根据21)至27)中的任一项所述的专用硬件设备,接收由头戴式显示系统特别是由根据28)至32)中的任一项所述的头戴式显示系统的相机设备捕获的至少一个图像帧;
由所述专用硬件设备接收旨在与所述图像帧融合的计算机生成的影像;
由所述专用硬件设备通过将所述计算机生成的影像叠加到从所述头戴式显示系统的相机设备接收的所述图像帧上来生成至少一个混合现实帧;和
由所述专用硬件设备将所述混合现实帧馈送到所述头戴式显示系统的显示设备,使得所述显示设备显示所述混合现实帧以呈现给佩戴所述头戴式显示系统的用户。
Claims (16)
1.一种专用集成电路ASIC,包括:
图像信号处理器(102),其接收由头戴式显示系统(200)的相机设备捕获的图像帧(402),所述图像帧(402)包括一个或更多个图像帧行;
硬件加速输入格式化组件(104),其接收包括用户运动数据(706)的计算机生成的影像(404),所述计算机生成的影像(404)旨在与所述图像帧(402)融合;
硬件加速融合组件(106),其与所述图像信号处理器(102)和所述硬件加速输入格式化组件(104)通信地耦合,其中所述硬件加速融合组件(106)通过将所述计算机生成的影像(404)叠加到从所述头戴式显示系统(200)的所述相机设备接收的所述图像帧(402)上来生成混合现实帧;和
帧输出接口(108),其通信地耦合到所述硬件加速融合组件(106),其中所述帧输出接口(108)将由所述硬件加速融合组件(106)生成的所述混合现实帧馈送到所述头戴式显示系统(200)的显示设备(318),以便于显示所述混合现实帧,从而呈现给佩戴所述头戴式显示系统(200)的用户;
其中,所述图像信号处理器:
将所述图像帧(402)直接转发到所述ASIC内的处理组件,而不在存储器中临时缓冲所述图像帧(402);
通过避免就所述图像帧(402)访问存储器来减轻所述头戴式显示系统(200)的动显延迟;
其中,所述硬件加速融合组件(106):
通过处理所述用户运动数据(706)将所述计算机生成的影像(404)叠加到所述图像帧(402)上以在所述图像帧(402)的所述一个或更多个图像帧行的一部分上补偿用户的移动,其中在同一图像帧(402)的所述一个或更多个图像帧行的其余部分已经被转发至所述显示设备(318)时,所述部分尚未被转发至所述显示设备(318),其中,所述其余部分没有被修改以补偿用户做出的移动。
2.根据权利要求1所述的ASIC,还包括一个或更多个硬件加速图像校正组件,每个硬件加速图像校正组件对所述混合现实帧执行至少一个图像校正过程,来为所述显示设备准备所述混合现实帧。
3.根据权利要求2所述的ASIC,其中,所述硬件加速图像校正组件包括硬件加速设备,当所述混合现实帧向所述显示设备行进时,所述硬件加速设备至少部分地校正所述混合现实帧中的色差。
4.根据权利要求2所述的ASIC,其中,所述硬件加速图像校正组件包括硬件加速设备,当所述混合现实帧向所述显示设备行进时,所述硬件加速设备对所述混合现实帧执行伽马校正。
5.根据权利要求2所述的ASIC,其中,所述硬件加速图像校正组件包括硬件加速设备,当所述混合现实帧向所述显示设备行进时,所述硬件加速设备对所述混合现实帧执行非均匀性校正。
6.根据权利要求2所述的ASIC,其中,所述硬件加速图像校正组件包括硬件加速设备,所述硬件加速设备在所述混合现实帧向所述显示设备行进时修改所述混合现实帧以考虑到所述显示设备的过驱动特征。
7.根据权利要求2所述的ASIC,其中,所述硬件加速图像校正组件包括硬件加速设备,当所述混合现实帧向所述显示设备行进时,所述硬件加速设备至少部分地校正所述混合现实帧中的Mura现象。
8.根据权利要求2所述的ASIC,其中,所述硬件加速图像校正组件包括硬件加速设备,所述硬件加速设备在所述混合现实帧向所述显示设备行进时对所述混合现实帧执行抖动。
9.根据权利要求1所述的ASIC,还包括所述图像信号处理器和所述硬件加速融合组件之间的直接通信路径,所述直接通信路径使得所述图像帧能够被直接馈送到所述硬件加速融合组件,而不被缓冲在存储器中。
10.根据权利要求1所述的ASIC,还包括硬件加速失真组件,所述硬件加速失真组件在所述计算机生成的影像被叠加到所述图像帧上之前对所述图像帧应用异步时间扭曲。
11.根据权利要求10所述的ASIC,还包括附加的硬件加速失真组件,所述附加的硬件加速失真组件在所述计算机生成的影像被叠加到所述图像帧上之前将异步时间扭曲或异步空间扭曲应用到所述计算机生成的影像。
12.根据权利要求11所述的ASIC,其中:
所述硬件加速失真组件使所述图像帧失真以:
将所述图像帧的某些像素与所述计算机生成的影像的相应像素对齐;和
将所述图像帧的某些像素映射到所述显示设备的特定元素;和
所述附加的硬件加速失真组件使所述计算机生成的影像失真以:
将所述计算机生成的影像的相应像素与所述图像帧的某些像素对齐;和
将所述计算机生成的影像的相应像素映射到所述显示设备的特定元素。
13.根据权利要求1所述的ASIC,其中,所述ASIC内的所述处理组件包括以下至少一个:
所述硬件加速融合组件;和
硬件加速失真组件,所述硬件加速失真组件在所述计算机生成的影像叠加到所述图像帧上之前对所述图像帧应用异步时间扭曲。
14.一种头戴式显示系统,包括:
至少一个相机设备,其从佩戴所述头戴式显示系统的用户的视角捕获一个或更多个图像帧;
专用集成电路ASIC,其通信地耦合到所述相机设备,其中所述ASIC:
从所述相机设备接收所述图像帧;
将所述图像帧直接转发到所述ASIC内的处理组件,而不在存储器中临时缓冲所述图像帧;
通过避免就所述图像帧访问存储器来减轻所述头戴式显示系统的动显延迟;
接收旨在与所述图像帧融合的计算机生成的影像;和
通过将所述计算机生成的影像叠加到从所述相机设备接收的所述图像帧上来生成一个或更多个混合现实帧;
显示设备,其通信地耦合到所述ASIC,其中所述显示设备:
从所述ASIC接收所述混合现实帧;和
显示所述混合现实帧,以呈现给佩戴所述头戴式显示系统的用户;
其中,所述ASIC逐行地对所述图像帧执行一个或更多个硬件加速的帧内处理操作;
其中所述头戴式显示系统还包括运动检测传感器,所述运动检测传感器检测由佩戴所述头戴式显示系统的用户做出的移动;
其中所述ASIC:
从所述运动检测传感器接收用户运动数据,所述用户运动数据指示佩戴所述头戴式显示系统的用户自从某个图像帧被所述相机设备捕获以来已经进行了至少一次移动;
识别来自所述某个图像帧的尚未被转发到所述显示设备的行的子集,即使来自所述某个图像帧的行的附加子集已经被转发到所述显示设备;
至少部分基于来自所述运动检测传感器的所述用户运动数据来修改来自所述某个图像帧的所述行的子集,以补偿用户做出的移动;和
将来自所述某个图像帧的、经修改的行的子集转发到所述显示设备,以便于显示所述经修改的行的子集连同所述行的附加子集以呈现给用户;以及
来自所述某个图像帧的所述行的附加子集没有被修改以补偿用户做出的移动;和
所述显示设备在至少一个时间点期间同时显示所述经修改的行的子集和所述行的附加子集,以呈现给用户。
15.根据权利要求14所述的头戴式显示系统,还包括生成时钟信号的时钟发生器;和
其中所述ASIC和所述显示设备至少部分地基于由所述时钟发生器生成的所述时钟信号而相对于彼此同步。
16.一种用于减轻头戴式显示系统中的动显延迟的方法,包括:
由专用集成电路ASIC接收由头戴式显示系统的相机设备捕获的至少一个图像帧,所述图像帧包括一个或更多个图像帧行;
由所述ASIC接收旨在与所述图像帧融合的计算机生成的影像;
由所述ASIC通过将所述计算机生成的影像叠加到从所述头戴式显示系统的相机设备接收的所述图像帧上来生成至少一个混合现实帧,所述计算机生成的影像包括用户运动数据;
由所述ASIC将所述混合现实帧馈送到所述头戴式显示系统的显示设备,使得所述显示设备显示所述混合现实帧以呈现给佩戴所述头戴式显示系统的用户;
由所述ASIC将所述图像帧直接转发到所述ASIC内的处理组件,而不在存储器中临时缓冲所述图像帧;
由所述ASIC通过避免就所述图像帧访问存储器来减轻所述头戴式显示系统的动显延迟;
其中,由所述ASIC生成至少一个混合现实帧的步骤还包括处理所述用户运动数据(706)以在所述图像帧(402)的所述一个或更多个图像帧行的一部分上补偿用户的移动,其中在同一图像帧(402)的所述一个或更多个图像帧行的其余部分已经被转发至所述显示设备(318)时,所述部分尚未被转发至所述显示设备(318),其中,所述其余部分没有被修改以补偿用户做出的移动。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862626004P | 2018-02-03 | 2018-02-03 | |
US62/626,004 | 2018-02-03 | ||
US16/006,434 | 2018-06-12 | ||
US16/006,434 US10559276B2 (en) | 2018-02-03 | 2018-06-12 | Apparatus, system, and method for mitigating motion-to-photon latency in head-mounted displays |
PCT/US2018/038224 WO2019152067A1 (en) | 2018-02-03 | 2018-06-19 | Apparatus, system, and method for mitigating motion-to-photon latency in head-mounted displays |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111656433A CN111656433A (zh) | 2020-09-11 |
CN111656433B true CN111656433B (zh) | 2022-09-23 |
Family
ID=67475656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880087704.3A Active CN111656433B (zh) | 2018-02-03 | 2018-06-19 | 减轻头戴式显示器中动显延迟的装置、系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10559276B2 (zh) |
CN (1) | CN111656433B (zh) |
WO (1) | WO2019152067A1 (zh) |
Families Citing this family (11)
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 |
US10559276B2 (en) | 2018-02-03 | 2020-02-11 | Facebook Technologies, Llc | Apparatus, system, and method for mitigating motion-to-photon latency in head-mounted displays |
JP7121523B2 (ja) * | 2018-04-10 | 2022-08-18 | キヤノン株式会社 | 画像表示装置、画像表示方法 |
US10991283B2 (en) * | 2018-09-04 | 2021-04-27 | Apple Inc. | Decimated burn-in compensation with pixel shifting |
KR102145852B1 (ko) * | 2018-12-14 | 2020-08-19 | (주)이머시브캐스트 | 카메라 기반의 혼합현실 글래스 장치 및 혼합현실 디스플레이 방법 |
US11126001B2 (en) * | 2019-03-29 | 2021-09-21 | Sony Interactive Entertainment Inc. | Image generating apparatus, head-mounted display, content processing system and image displaying method |
US20210192681A1 (en) * | 2019-12-18 | 2021-06-24 | Ati Technologies Ulc | Frame reprojection for virtual reality and augmented reality |
KR20210157953A (ko) * | 2020-06-22 | 2021-12-30 | 삼성디스플레이 주식회사 | 표시 장치를 검사하는 검사 장치, 얼룩 보상을 수행하는 표시 장치 및 얼룩 보상 방법 |
US11481871B2 (en) | 2021-03-12 | 2022-10-25 | Samsung Electronics Co., Ltd. | Image-guided depth propagation for space-warping images |
US11822713B2 (en) * | 2021-06-11 | 2023-11-21 | Rockwell Collins, Inc. | Pose augmentation of head worn display video for latency reduction |
CN114286036A (zh) * | 2021-12-22 | 2022-04-05 | 小派科技(上海)有限责任公司 | 用于虚拟现实设备的图像处理方法、装置及虚拟现实设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1756313A (zh) * | 2004-09-30 | 2006-04-05 | 中国科学院计算技术研究所 | 运动视频的全景图合成方法 |
WO2017122367A1 (ja) * | 2016-01-15 | 2017-07-20 | 株式会社meleap | 画像表示システム、画像表示システムの制御方法、画像配信システムおよびヘッドマウントディスプレイ |
Family Cites Families (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3745117B2 (ja) | 1998-05-08 | 2006-02-15 | キヤノン株式会社 | 画像処理装置及び画像処理方法 |
US7312766B1 (en) | 2000-09-22 | 2007-12-25 | Canadian Space Agency | Method and system for time/motion compensation for head mounted displays |
FR2840753A1 (fr) | 2002-06-06 | 2003-12-12 | Artabel | Procede et dispositif pour traiter des signeaux video numeriques generes par un ensemble d'ordinateurs pour produire une image numerique |
JP2007219082A (ja) | 2006-02-15 | 2007-08-30 | Canon Inc | 複合現実感表示システム |
US7870556B2 (en) * | 2006-05-16 | 2011-01-11 | Ab Initio Technology Llc | Managing computing resources in graph-based computations |
KR100809479B1 (ko) | 2006-07-27 | 2008-03-03 | 한국전자통신연구원 | 혼합 현실 환경을 위한 얼굴 착용형 디스플레이 장치 |
JP4857196B2 (ja) | 2007-05-31 | 2012-01-18 | キヤノン株式会社 | 頭部装着型表示装置、及びその制御方法 |
US8327071B1 (en) | 2007-11-13 | 2012-12-04 | Nvidia Corporation | Interprocessor direct cache writes |
JP5078147B2 (ja) | 2008-03-04 | 2012-11-21 | 株式会社リコー | 画像処理装置及び画像撮像装置 |
US8207983B2 (en) | 2009-02-18 | 2012-06-26 | Stmicroelectronics International N.V. | Overlaying videos on a display device |
KR20130046857A (ko) * | 2011-10-28 | 2013-05-08 | 삼성전기주식회사 | 스테레오 카메라 모듈 및 스테레오 카메라 |
US9529426B2 (en) | 2012-02-08 | 2016-12-27 | Microsoft Technology Licensing, Llc | Head pose tracking using a depth camera |
WO2014034378A1 (ja) * | 2012-08-27 | 2014-03-06 | ソニー株式会社 | 画像表示装置及び画像表示方法、情報通信端末及び情報通信方法、並びに画像表示システム |
CN104685551B (zh) * | 2012-09-12 | 2017-07-21 | 维塔医疗股份公司 | 混合现实仿真方法和系统 |
WO2014160342A1 (en) * | 2013-03-13 | 2014-10-02 | The University Of North Carolina At Chapel Hill | Low latency stabilization for head-worn displays |
US9514571B2 (en) * | 2013-07-25 | 2016-12-06 | Microsoft Technology Licensing, Llc | Late stage reprojection |
AU2013273829A1 (en) | 2013-12-23 | 2015-07-09 | Canon Kabushiki Kaisha | Time constrained augmented reality |
US9386234B2 (en) | 2014-07-31 | 2016-07-05 | Apple Inc. | Auto filter extent management |
US9659411B2 (en) | 2015-01-14 | 2017-05-23 | Oculus Vr, Llc | Passive locators for a virtual reality headset |
US10013808B2 (en) | 2015-02-03 | 2018-07-03 | Globus Medical, Inc. | Surgeon head-mounted display apparatuses |
US20160238852A1 (en) | 2015-02-13 | 2016-08-18 | Castar, Inc. | Head mounted display performing post render processing |
NZ773847A (en) * | 2015-03-16 | 2022-07-01 | Magic Leap Inc | Methods and systems for diagnosing and treating health ailments |
US11956414B2 (en) | 2015-03-17 | 2024-04-09 | Raytrx, Llc | Wearable image manipulation and control system with correction for vision defects and augmentation of vision and sensing |
CN114063302B (zh) | 2015-04-22 | 2023-12-12 | 易赛特股份有限公司 | 光学像差校正的方法和装置 |
KR20160128119A (ko) | 2015-04-28 | 2016-11-07 | 엘지전자 주식회사 | 이동 단말기 및 이의 제어방법 |
DE112016002043T5 (de) | 2015-05-04 | 2018-04-19 | Google Llc | Durchlaufanzeige von erfassten bildern |
KR20160139461A (ko) | 2015-05-27 | 2016-12-07 | 엘지전자 주식회사 | 헤드 마운티드 디스플레이 및 그 제어 방법 |
EP3308247A1 (en) * | 2015-06-12 | 2018-04-18 | Google LLC | Electronic display stabilization for head mounted display |
US10553142B2 (en) * | 2015-08-19 | 2020-02-04 | Valve Corporation | Systems and methods for detection and/or correction of pixel luminosity and/or chrominance response variation in displays |
CN108885850B (zh) * | 2015-11-13 | 2021-10-08 | 谷歌有限责任公司 | 具有在显示面板之间的快速伽玛校正的头戴式显示器设备 |
US9984499B1 (en) | 2015-11-30 | 2018-05-29 | Snap Inc. | Image and point cloud based tracking and in augmented reality systems |
US10643381B2 (en) | 2016-01-12 | 2020-05-05 | Qualcomm Incorporated | Systems and methods for rendering multiple levels of detail |
US10838206B2 (en) | 2016-02-18 | 2020-11-17 | Apple Inc. | Head-mounted display for virtual and mixed reality with inside-out positional, user body and environment tracking |
US10453175B2 (en) | 2016-02-22 | 2019-10-22 | Google Llc | Separate time-warping for a scene and an object for display of virtual reality content |
US10496156B2 (en) | 2016-05-17 | 2019-12-03 | Google Llc | Techniques to change location of objects in a virtual/augmented reality system |
EP3465627B1 (en) | 2016-05-29 | 2020-04-29 | Google LLC | Time-warping adjustment based on depth information in a virtual/augmented reality system |
US9858637B1 (en) | 2016-07-29 | 2018-01-02 | Qualcomm Incorporated | Systems and methods for reducing motion-to-photon latency and memory bandwidth in a virtual reality system |
US10379611B2 (en) | 2016-09-16 | 2019-08-13 | Intel Corporation | Virtual reality/augmented reality apparatus and method |
US20180082482A1 (en) | 2016-09-22 | 2018-03-22 | Apple Inc. | Display system having world and user sensors |
US10330935B2 (en) * | 2016-09-22 | 2019-06-25 | Apple Inc. | Predictive, foveated virtual reality system |
US10869026B2 (en) * | 2016-11-18 | 2020-12-15 | Amitabha Gupta | Apparatus for augmenting vision |
CN106873929B (zh) * | 2016-12-19 | 2019-12-17 | 奇酷互联网络科技(深圳)有限公司 | 基于虚拟现实技术的图像刷新方法和装置 |
US10242654B2 (en) | 2017-01-25 | 2019-03-26 | Microsoft Technology Licensing, Llc | No miss cache structure for real-time image transformations |
US10489915B2 (en) * | 2017-04-01 | 2019-11-26 | Intel Corporation | Decouple multi-layer render fequency |
US10152822B2 (en) * | 2017-04-01 | 2018-12-11 | Intel Corporation | Motion biased foveated renderer |
US10152775B1 (en) * | 2017-08-08 | 2018-12-11 | Rockwell Collins, Inc. | Low latency mixed reality head wearable device |
US10706813B1 (en) | 2018-02-03 | 2020-07-07 | Facebook Technologies, Llc | Apparatus, system, and method for mitigating motion-to-photon latency in head-mounted displays |
EP3521899A1 (en) | 2018-02-03 | 2019-08-07 | Facebook Technologies, LLC | Apparatus, system, and method for achieving intraframe image processing in head-mounted displays |
EP3522150A3 (en) | 2018-02-03 | 2020-01-01 | Facebook Technologies, LLC | Apparatus, system, and method for mitigating motion-to-photon latency in head-mounted displays |
US10559276B2 (en) | 2018-02-03 | 2020-02-11 | Facebook Technologies, Llc | Apparatus, system, and method for mitigating motion-to-photon latency in head-mounted displays |
US10678325B2 (en) | 2018-05-22 | 2020-06-09 | Facebook Technologies, Llc | Apparatus, system, and method for accelerating positional tracking of head-mounted displays |
-
2018
- 2018-06-12 US US16/006,434 patent/US10559276B2/en not_active Expired - Fee Related
- 2018-06-19 WO PCT/US2018/038224 patent/WO2019152067A1/en active Application Filing
- 2018-06-19 CN CN201880087704.3A patent/CN111656433B/zh active Active
-
2019
- 2019-12-13 US US16/713,880 patent/US10803826B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1756313A (zh) * | 2004-09-30 | 2006-04-05 | 中国科学院计算技术研究所 | 运动视频的全景图合成方法 |
WO2017122367A1 (ja) * | 2016-01-15 | 2017-07-20 | 株式会社meleap | 画像表示システム、画像表示システムの制御方法、画像配信システムおよびヘッドマウントディスプレイ |
Also Published As
Publication number | Publication date |
---|---|
US10559276B2 (en) | 2020-02-11 |
US20200118519A1 (en) | 2020-04-16 |
US20190244582A1 (en) | 2019-08-08 |
US10803826B2 (en) | 2020-10-13 |
CN111656433A (zh) | 2020-09-11 |
WO2019152067A1 (en) | 2019-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111656433B (zh) | 减轻头戴式显示器中动显延迟的装置、系统和方法 | |
EP3441935B1 (en) | Low latency mixed reality head wearable device | |
US10706813B1 (en) | Apparatus, system, and method for mitigating motion-to-photon latency in head-mounted displays | |
JP2023017046A (ja) | 仮想現実および拡張現実ディスプレイシステムのための連続時間ワーピングおよび両眼時間ワーピングおよび方法 | |
US10678325B2 (en) | Apparatus, system, and method for accelerating positional tracking of head-mounted displays | |
EP3521899A1 (en) | Apparatus, system, and method for achieving intraframe image processing in head-mounted displays | |
US11137604B2 (en) | Image generation device, image extraction device, image generation method, and image extraction method | |
CA2927046A1 (en) | Method and system for 360 degree head-mounted display monitoring between software program modules using video or image texture sharing | |
US10928892B2 (en) | Optical engine time warp for augmented or mixed reality environment | |
WO2019082794A1 (ja) | 画像生成装置、画像生成システム、画像生成方法、およびプログラム | |
WO2019098198A1 (ja) | 画像生成装置、ヘッドマウントディスプレイ、画像生成システム、画像生成方法、およびプログラム | |
US11003408B2 (en) | Image generating apparatus and image generating method | |
CN115100020A (zh) | 虚拟、增强和混合现实系统以及方法 | |
EP3522150A2 (en) | Apparatus, system, and method for mitigating motion-to-photon latency in head-mounted displays | |
JPWO2020129115A1 (ja) | 情報処理システム、情報処理方法およびコンピュータプログラム | |
JP2009141508A (ja) | テレビ会議装置、テレビ会議方法、プログラムおよび記録媒体 | |
US11187914B2 (en) | Mirror-based scene cameras | |
JP2019074881A (ja) | 画像生成装置および画像生成方法 | |
US20230222741A1 (en) | Video pass-through computing system |
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 |