通过输入扰动的运动估计制造技术

技术编号:29419622 阅读:14 留言:0更新日期:2021-07-23 23:14
本公开涉及用于运动估计的方法和设备,所述设备可以包括GPU。在一个方面,GPU可以生成在帧的第一子集中的至少一个第一运动矢量,第一运动矢量为帧的第一子集中的图像数据提供第一运动估计。GPU还可以扰动图像数据。此外,GPU可以基于扰动的图像数据生成至少一个第二运动矢量,第二运动矢量为图像数据提供第二运动估计。此外,GPU可以比较第一运动矢量与第二运动矢量。此外,GPU可以基于第一运动矢量与第二运动矢量之间的比较确定用于图像数据的运动估计的至少一个第三运动矢量。

【技术实现步骤摘要】
【国外来华专利技术】通过输入扰动的运动估计相关申请的交叉引用本申请要求于2018年12月10日提交的美国非临时专利申请第16/215,547号的优先权,通过引用将其全部内容并入本文。
本公开大体上涉及处理系统,更具体地,涉及用于处理系统中图形处理的一种或多种技术。
技术介绍
计算设备通常利用图形处理单元(GPU)来加速图形数据的渲染以供显示。例如,此类计算设备可以包括计算机工作站、诸如所谓智能电话的移动电话、嵌入式系统、个人计算机、平板计算机和视频游戏控制台。GPU执行包括多个处理阶段的图形处理管线,该多个处理阶段一起操作以执行图形处理命令并输出帧。中央处理单元(CPU)可以通过向GPU发出一个或多个图形处理命令来控制GPU的操作。现代的CPU通常能够并发地执行多个应用程序,每个应用程序可能需要在执行期间利用GPU。为显示器上的视觉呈现提供内容的设备通常包括图形处理单元(GPU)。通常,设备的GPU被配置为执行图形处理管线中的每个过程。然而,随着无线通信和内容(例如,游戏内容或使用GPU渲染的任何其他内容)流的出现,已经发展出对分布式图形处理的需求。例如,已经发展出了对将由第一设备(例如,诸如游戏控制台、虚拟现实设备或任何其他设备的客户端设备)的GPU执行的处理卸载(offload)到第二设备(例如,服务器、诸如托管移动游戏的服务器)的需求。
技术实现思路
以下呈现了一个或多个方面的简化概述,以便提供对这些方面的基本理解。此概述不是所有预期方面的广泛概述,并且既不旨在标识所有方面的关键或重要元素,也不旨在描绘任何或所有方面的范围。其唯一目的是以简化形式呈现一个或多个方面的一些概念,作为稍后呈现的更详细描述的序言。在公开的方面,提供了方法、计算机可读介质和第一装置。该装置可以是GPU。在一个方面,GPU可以生成在帧的第一子集中的至少一个第一运动矢量,第一运动矢量为帧的第一子集中的图像数据提供第一运动估计。GPU还可以扰动(perturb)帧的第一子集中的图像数据。此外,GPU可以基于扰动的图像数据生成至少一个第二运动矢量,第二运动矢量为帧的第一子集中的图像数据提供第二运动估计。此外,GPU可以比较第一运动矢量与第二运动矢量。此外,GPU可以基于第一运动矢量与第二运动矢量之间的比较来确定用于帧的第一子集中的图像数据的运动估计的至少一个第三运动矢量。在附图和以下说明书中阐述了本公开的一个或多个示例的细节。从说明书和附图以及从权利要求中,本公开的其他特征、目标和优点将是显而易见的。附图说明图1是示出根据本公开的技术的示例内容生成和编解码(coding)系统的框图。图2示出了根据本公开的运动估计的示例。图3A和图3B示出了根据本公开的对其执行运动估计的图像的示例。图4A示出了根据本公开的运动估计的另一示例。图4B示出了根据本公开的运动估计的另一示例。图5A和图5B示出了根据本公开的运动估计的另一示例。图6示出了根据公开的一种或多种技术的示例方法的示例流程图。具体实施方式以下参考附图更全面地描述了系统、装置、计算机程序产品和方法的各种方面。然而,本公开可以以许多不同的形式体现并且不应当被解释为限于贯穿本公开所呈现的任何特定的结构或功能。相反,提供这些方面使得本公开将是彻底的和完整的,并且将向本领域的技术人员全面地传达本公开的范围。基于本文的教导,本领域的技术人员应当理解,本公开的范围旨在覆盖本文所公开的系统、装置、计算机程序产品和方法的任何方面,无论是独立于本公开的其他方面还是与本公开的其他方面结合实现。例如,可以使用本文阐述的任何数量的方面来实现装置或实践方法。另外,本公开的范围旨在覆盖这样的装置或方法,该装置或方法使用除了本文阐述的公开的各个方面之外或者本文阐述的公开的各个方面之外的其他结构、功能或者结构以及功能来实践。本文公开的任何方面可以由权利要求的一个或多个要素来体现。尽管本文描述了各种方面,但是这些方面的许多变体和置换落入本公开的范围内。尽管提出了本公开的方面一些潜在益处和优势,但是本公开的范围不旨在限于特定的益处、用途或目标。相反,本公开的方面旨在广泛地可用于不同的无线技术、系统配置、网络和传输协议,其中的一些在图中和以下的描述中通过实例来说明。具体实施方式和附图仅是对本公开的说明而非限制,本公开的范围由所附的权利要求及其等价物来定义。参考各种装置和方法呈现了几个方面。通过各种块、组件、电路、过程、算法等(统称为“元素”)在以下具体实施方式中描述了、并且在附图中示出了这些方面和方法。可以使用电子硬件、计算机软件或其任何组合来实现这些元素。将此类元素实现为硬件还是软件取决于特定应用和施加在整个系统上的设计约束。举例来说,可以将元素或者元素的任意部分或者元素的任意组合实现为包括一个或多个处理器(其也可以被称为处理单元)的“处理系统”。处理器的示例包括微处理器、微控制器、图形处理单元(GPU)、通用GPU(GPGPU)、中央处理单元(CPU)、应用处理器、数字信号处理器(DSP)、精简指令集计算(RISC)处理器、片上系统(SoC)、基带处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、状态机、门逻辑、分立硬件电路以及被配置为执行贯穿本公开描述的各种功能的其他合适的硬件。处理系统中的一个或多个处理器可以执行软件。软件应被广泛地解释为平均指令、指令集、代码、代码段、程序代码、程序、子程序、软件组件、应用程序、软件应用程序、软件包、例程、子例程、对象、可执行文件、执行线程、过程、函数等等,无论是被称为软件、固件、中间件、微代码、硬件描述语言或者其他。术语应用程序可以指软件。如本文所述,一种或多种技术可以指被配置为执行一个或多个功能的应用程序(即,软件)。在此示例中,应用程序可以被存储在存储器(例如,处理器的片上存储器、系统存储器或者任何其他存储器)上。本文描述的硬件(诸如处理器)可以被配置为执行应用程序。例如,应用程序可以被描述为包括代码,当由硬件执行时,该代码使得该硬件执行本文描述的一种或多种技术。作为示例,硬件可以从存储器访问代码并且执行从处理器访问的代码以执行本文所描述的一种或多种技术。在一些示例中,在本公开中标识组件。在此类示例中,组件可以是硬件、软件或者其组合。组件可以是单独的组件或者是单个组件的子组件。因此,在本文所描述的一个或多个示例中,所述的功能可以在硬件、软件或者其任何组合中实现。如果在软件中实现,则功能可以被存储在计算机可读介质上的一个或多个指令或代码上,或被编码为计算机可读介质上的一个或多个指令或代码。计算机可读介质包括计算机存储介质。存储介质可以是可由计算机访问的任何可用的介质。举例来说,而非限制,这样的计算机可读介质可以包括随机访问存储器(RAM)、只读存储器(ROM)、电可擦除可编程ROM(EEPROM)、光盘存储、磁盘存储、其他磁存储设备、上述类型的计算机可读介质的组合、或者可以被用于以可以由计算机访问的指令或数据结构的形本文档来自技高网...

【技术保护点】
1.一种图形处理单元(GPU)中的运动估计的方法,包括:/n生成在帧的第一子集中的至少一个第一运动矢量,所述至少一个第一运动矢量为所述帧的第一子集中的图像数据提供第一运动估计;/n扰动所述帧的第一子集中的图像数据;/n基于所述帧的第一子集中的扰动的图像数据生成至少一个第二运动矢量,所述至少一个第二运动矢量为所述帧的第一子集中的图像数据提供第二运动估计;/n比较所述至少一个第一运动矢量与所述至少一个第二运动矢量;以及/n基于所述至少一个第一运动矢量与所述至少一个第二运动矢量之间的比较,确定用于所述帧的第一子集中的图像数据的运动估计的至少一个第三运动矢量。/n

【技术特征摘要】
【国外来华专利技术】20181210 US 16/215,5471.一种图形处理单元(GPU)中的运动估计的方法,包括:
生成在帧的第一子集中的至少一个第一运动矢量,所述至少一个第一运动矢量为所述帧的第一子集中的图像数据提供第一运动估计;
扰动所述帧的第一子集中的图像数据;
基于所述帧的第一子集中的扰动的图像数据生成至少一个第二运动矢量,所述至少一个第二运动矢量为所述帧的第一子集中的图像数据提供第二运动估计;
比较所述至少一个第一运动矢量与所述至少一个第二运动矢量;以及
基于所述至少一个第一运动矢量与所述至少一个第二运动矢量之间的比较,确定用于所述帧的第一子集中的图像数据的运动估计的至少一个第三运动矢量。


2.根据权利要求1所述的方法,其中比较至少一个第一运动矢量与至少一个第二运动矢量包括:
确定所述至少一个第一运动矢量与所述至少一个第二运动矢量之间的差;以及
确定所述差是否小于阈值。


3.根据权利要求2所述的方法,其中当所述差小于所述阈值时,将所述至少一个第三运动矢量设置为所述至少一个第一运动矢量。


4.根据权利要求3所述的方法,还包括:当所述差大于所述阈值时,确定用于所述帧的第二子集的运动估计的至少一个第四运动矢量,所述帧的第二子集不同于所述帧的第一子集,其中基于确定的至少一个第一运动矢量、至少一个第二运动矢量和至少一个第四运动矢量确定所述至少一个第三运动矢量。


5.根据权利要求2所述的方法,其中当所述差大于所述阈值时,将所述至少一个第三运动矢量设置为具有零运动值。


6.根据权利要求2所述的方法,还包括:
确定所述至少一个第三运动矢量与所述至少一个第三运动矢量周围的一个或多个相邻矢量之间的第二差;
其中当所述差大于所述阈值并且所述第二差小于所述阈值时,基于所述一个或多个相邻矢量设置所述至少一个第三运动矢量。


7.根据权利要求2所述的方法,其中所述阈值基于所述帧的第一子集中的图像数据的运动估计公差。


8.根据权利要求1所述的方法,其中扰动帧的第一子集中的图像数据包括将所述图像数据的红(R)、绿(G)和蓝(B)(RGB)值的幅度调整m,其中m不等于0。


9.根据权利要求8所述的方法,其中m小于或等于5%,并且大于或等于-5%。


10.根据权利要求1所述的方法,其中所述帧的第一子集中的图像数据被扰动了扰动量,并且基于所述图像数据的红(R)、绿(G)和蓝(B)(RGB)值的局部方差调节所述扰动量。


11.根据权利要求10所述的方法,其中所述图像数据的RGB值的局部方差基于所述帧的第一子集中的图像数据的第一运动估计。


12.根据权利要求10所述的方法,其中基于RGB值的先前方差来近似所述图像数据的RGB值的局部方差。


13.根据权利要求1所述的方法,其中所述帧的第一子集中的图像数据被扰动了扰动量,并且基于所述图像数据的亮度(Y)、第一色度(U)和第二色度(V)(YUV)值的局部方差调节所述扰动量。


14.根据权利要求1所述的方法,还包括将所述图像数据从红(R)、绿(G)和蓝(B)(RGB)图像数据转换为亮度(Y)、第一色度(U)和第二色度(V)(YUV)图像数据,其中在将RGB图像数据转换为YUV图像数据之前扰动所述图像数据。


15.一种用于图像处理单元(GPU)中的运动估计的装置,包括:
存储器;以及
至少一个处理器,耦合到所述存储器并被配置为:
生成在帧的第一子集中的至少一个第一运动矢量,所述至少一个第一运动矢量为所述帧的第一子集中的图像数据提供第一运动估计;
扰动所述帧的第一子集中的图像数据;
基于所述帧的第一子集中的扰动的图像数据生成至少一个第二运动矢量,所述至少一个第二运动矢量为所述帧的第一子集中的图像数据提供第二运动估计;
比较所述至少一个第一运动矢量与所述至少一个第二运动矢量;以及
基于所述至少一个第一运动矢量与所述至少一个第二运动矢量之间的比较,确定用于所述帧的第一子集中的图像数据的运动估计的至少一个第三运动矢量。


16.根据权利要求15所述的装置,其中比较至少一个第...

【专利技术属性】
技术研发人员:SB福尔摩斯M伦施勒J维克斯RJ范里宁
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1