掌桥专利:专业的专利平台
掌桥专利
首页

低延迟交叉分量帧内预测模式

文献发布时间:2023-06-19 18:32:25


低延迟交叉分量帧内预测模式

相关申请的交叉引用

本申请要求于2020年6月30日提交的美国申请第16/917,050号的优先权的权益,该美国申请通过引用整体并入本文。

技术领域

本公开内容总体上涉及数据处理领域,并且更特别地涉及视频编码和解码。

背景技术

AOMedia Video 1(AV1)是被设计用于通过因特网进行视频传输的开放视频编码格式。AOMedia Video 1是由开放媒体联盟(Alliance for Open Media,AOMedia)作为VP9的继承者开发的,该联盟于2015年成立,包括半导体公司、视频点播提供商、视频内容生产商、软件开发公司和网络浏览器供应商。AV1指定根据亮度分量预测色度分量(chroma-from-luma)模式,该模式允许仅色度帧内预测并且可以将色度像素建模为相符的重建亮度像素的线性函数。

发明内容

实施方式涉及一种用于对视频数据进行编码的方法、系统和计算机可读介质。根据一个方面,提供了一种用于对视频数据进行编码的方法。该方法可以包括接收与视频帧对应的数据。确定是否对所接收到的图像数据应用了半解耦划分。如果确定所接收到的图像数据被半解耦划分,则针对与所接收到的图像数据相关联的色度块禁用根据亮度分量预测色度分量模式。

根据另一方面,提供了一种用于对视频数据进行编码的计算机系统。该计算机系统可以包括一个或更多个处理器、一个或更多个计算机可读存储器、一个或更多个计算机可读有形存储设备、以及存储在一个或更多个存储设备中的至少一个存储设备上的程序指令,所述程序指令用于经由一个或更多个存储器中的至少一个存储器由一个或更多个处理器中的至少一个处理器执行,由此计算机系统能够执行方法。该方法可以包括接收与视频帧对应的数据。确定是否对所接收到的图像数据应用了半解耦划分。如果确定所接收到的图像数据被半解耦划分,则针对与所接收到的图像数据相关联的色度块禁用根据亮度分量预测色度分模式。

根据又一方面,提供了一种用于对视频数据进行编码的计算机可读介质。该计算机可读介质可以包括一个或更多个计算机可读存储设备以及存储在一个或更多个有形存储设备中的至少一个有形存储设备上的程序指令,所述程序指令能够由处理器执行。所述程序指令能够由处理器执行以用于执行方法,该方法可以相应地包括接收与视频帧对应的数据。确定是否对所接收到的图像数据应用了半解耦划分。如果确定所接收到的图像数据被半解耦划分,则针对与所接收到的图像数据相关联的色度块禁用根据亮度分量预测色度分量模式。

附图说明

根据要结合附图阅读的说明性实施方式的以下详细描述,这些和其他目的、特征和优点将变得明显。附图的各种特征不是按比例的,因为图示是为了清楚地便于本领域技术人员结合详细描述进行理解。在附图中:

图1示出了根据至少一个实施方式的联网计算机环境;

图2是根据至少一个实施方式的根据亮度分量预测色度分量预测处理的功能框图;

图3是示出根据至少一个实施方式的由基于当满足一个或更多个条件时限制根据亮度分量预测色度分量来对视频数据进行编码的程序执行的步骤的操作流程图;

图4是根据至少一个实施方式的图1中描绘的计算机和服务器的内部部件和外部部件的框图;

图5是根据至少一个实施方式的包括图1中描绘的计算机系统的说明性云计算环境的框图;以及

图6是根据至少一个实施方式的图5的说明性云计算环境的功能层的框图。

具体实施方式

本文中公开了所要求保护的结构和方法的详细实施方式;然而,可以理解,所公开的实施方式仅是可以以各种形式实施的所要求保护的结构和方法的说明。然而,这些结构和方法可以以许多不同的形式来实施,并且不应当被解释为限于本文中阐述的示例性实施方式。相反,提供这些示例性实施方式使得本公开内容将是全面和完整的,并且将向本领域技术人员充分传达范围。在说明书中,可以省略公知特征和技术的细节,以避免不必要地模糊所呈现的实施方式。

实施方式总体上涉及数据处理领域,并且更特别地涉及视频编码和解码。以下描述的示例性实施方式提供了除其他以外还基于确定针对视频数据是否使用半解耦划分来对视频进行编码的系统、方法和计算机程序。因此,一些实施方式具有下述能力:通过允许在满足一个或更多个条件时针对特定块大小禁用根据亮度分量预测色度分量实现改进的减少的根据亮度分量预测色度分量延迟来改进计算领域。

如先前描述的,AOMedia Video 1(AV1)是被设计成用于通过因特网进行视频传输的开放视频编码格式。AOMedia Video 1是由开放媒体联盟(Alliance for Open Media,AOMedia)作为VP9的继承者开发的,该联盟于2015年成立,包括半导体公司、视频点播提供商、视频内容生产商、软件开发公司和网络浏览器供应商。AV1指定根据亮度分量预测色度分量(chroma-from-luma,CfL)模式,该模式允许仅色度帧内预测并且可以将色度像素建模为相符的重建亮度像素的线性函数。当前在AV1中,由模式引入的亮度-色度延迟是32像素乘32像素样本,这意味着在32像素乘32像素亮度块的重建之后可以开始16像素乘16像素色度块。然而,当应用SDP(Semi-Decoupled Partitioning,SDP)时,由于亮度和色度划分结构的分离,由CfL模式引入的亮度-色度延迟增加至128像素乘128像素样本。因此,在满足某些预定义条件的情况下限制CfL以减少亮度-色度解码延迟可能是有利的。

本文中参照根据各种实施方式的方法、装置(系统)和计算机可读介质的流程图图示和/或框图来描述各方面。将理解的是,流程图图示和/或框图中的每个块以及流程图图示和/或框图中的块的组合可以由计算机可读程序指令来实现。

现在参照图1,联网计算机环境的功能框图示出了用于基于在满足一个或更多个条件时限制根据亮度分量预测色度分量来对视频数据进行编码的视频帧编码系统100(在下文中被称为“系统”)。应当理解,图1仅提供了一种实现方式的图示,并且不暗示关于其中可以实现不同实施方式的环境的任何限制。可以基于设计和实现要求对所描绘的环境进行许多修改。

系统100可以包括计算机102和服务器计算机114。计算机102可以经由通信网络110(在下文中被称为“网络”)与服务器计算机114通信。计算机102可以包括处理器104和存储在数据存储设备106上的软件程序108,并且计算机102能够与用户进行对接并与服务器计算机114进行通信。如下面将参照图4所讨论的,计算机102可以分别包括内部部件800A和外部部件900A,并且服务器计算机114可以分别包括内部部件800B和外部部件900B。计算机102可以是例如移动设备、电话、个人数字助理、上网本、膝上型计算机、平板计算机、台式计算机或者能够运行程序、访问网络并且访问数据库的任何类型的计算设备。

,服务器计算机114还可以在云计算服务模型例如软件即服务(Software as aService,SaaS)、平台即服务(Platform as a Service,PaaS)或基础设施即服务(Infrastructure as a Service,IaaS)中操作,如下面关于图6和图7所讨论的。服务器计算机114还可以位于云计算部署模型例如私有云、社区云、公共云或混合云中。

可以用于对视频数据进行编码的服务器计算机114能够运行可以与数据库112交互的视频编码程序116(在下文中被称为“程序”)。下面关于图3更详细地说明视频编码程序方法。在一个实施方式中,计算机102可以作为包括用户接口的输入设备来操作,而程序116可以主要在服务器计算机114上运行。在替选实施方式中,程序116可以主要在一个或更多个计算机102上运行,而服务器计算机114可以用于处理和存储由程序116所使用的数据。应当注意的是,程序116可以是独立程序,或者可以被集成至更大的视频编码程序中。

然而,应当注意的是,在一些实例中,针对程序116的处理可以以任何比率在计算机102和服务器计算机114之间共享。在另一实施方式中,程序116可以在多于一个计算机、服务器计算机或者计算机和服务器计算机的一些组合例如跨网络110与单个服务器计算机114通信的多个计算机102上操作。在另一实施方式中,例如,程序116可以在跨网络110与多个客户端计算机进行通信的多个服务器计算机114上运行。可替选地,程序可以在跨网络与服务器和多个客户端计算机进行通信的网络服务器上运行。

网络110可以包括有线连接、无线连接、光纤连接或它们的一些组合。通常,网络110可以是将支持计算机102与服务器计算机114之间的通信的连接和协议的任意组合。网络110可以包括各种类型的网络,诸如例如局域网(Local Area Network,LAN)、诸如因特网的广域网(Wide Area Network,WAN)、诸如公共交换电话网络(Public SwitchedTelephone Network,PSTN)的电信网络、无线网络、公共交换网络、卫星网络、蜂窝网络(例如,第五代(Fifth Generation,5G)网络、长期演进(Long-Term Evolution,LTE)网络、第三代(Third Generation,3G)网络、码分多址(Code Division Multiple Access,CDMA)网络等)、公共陆地移动网络(Public Land Mobile Network,PLMN)、城域网(MetropolitanArea Network,MAN)、专用网络、自组织网络、内联网、基于光纤的网络等,以及/或者这些或其他类型的网络的组合。

图1中所示的设备和网络的数目和布置作为示例被提供。在实践中,可以存在与图1中所示的设备和/或网络相比附加的设备和/或网络、更少的设备和/或网络、不同的设备和/或网络、或者不同布置的设备和/或网络。此外,图1中所示的两个或更多个设备可以在单个设备内实现,或者图1中所示的单个设备可以被实现为多个分布式设备。附加地或可替选地,系统100的一组设备(例如一个或更多个设备)可以执行被描述为由系统100的另一组设备执行的一个或更多个功能。

现在参照图2,描述了用于根据亮度分量预测色度分量预测处理200的功能框图。根据亮度分量预测色度分量预测可以表示为CfL(α)=αXL

块尺寸可以是指块的宽度或高度、宽度和高度的最大值、宽度和高度的最小值、区域尺寸或块的纵横比。超级块可以是指AV1中的最大编码单元(Largest Coding Unit,LCU),例如128像素乘128像素的块。亮度块可以是指与色度块共同定位的亮度块。半解耦划分(SDP)可以与半解耦树互换使用。

当应用SDP时,为了减少亮度-色度解码延迟,在不满足以下条件之一的情况下,可以基于一个或更多个条件针对色度块禁用根据亮度分量预测色度分量。这些条件可以包括:亮度块的宽度或高度大于一个预定义阈值T1;色度块的宽度或高度大于一个预定义阈值T2;超级块节点处的亮度划分类型为垂直划分类型例如垂直二叉树划分、垂直“T型”划分或垂直三叉树划分;以及亮度块的宽度或高度大于一个预定义阈值T3并且变换划分深度大于或等于给定阈值D0。T1、T2和T3可以为正整数例如16、32、64等。D0可以为正整数例如1、2、3等。

例如,T1可以等于64,T2可以等于32,T3可以等于64,并且D0可以等于2。在下述情况下可以针对色度块禁用CfL模式:64像素乘64像素节点处的亮度块未被四叉树分割或被水平二叉树分割、没有被分割;亮度块被使用左T型划分、右T型划分或L型划分来进行划分;亮度块被水平四分割或垂直四分割;或者亮度块是三叉树分割(也被称为3向划分)。在下述情况下可以针对色度块禁用CfL模式:超级块大小等于或大于128x128,并且超级块节点处的亮度划分类型不是四叉树分割,或者是垂直二叉树分割或三叉树分割。如果超级块大小等于或大于128像素乘128像素,超级块节点处的亮度划分类型是水平二叉树分割并且128像素乘64像素块是垂直二叉树分割,则满足这种条件。否则,针对色度块禁用CfL模式。在32像素乘32像素节点处的色度块被三叉树分割、垂直二叉树分割或T型分割或者未被四叉树分割或被水平二叉树分割、没有被分割的情况下,可以针对32像素乘32像素块中的所有子色度块禁用CfL模式。

现在参照图3,描绘了示出由对视频数据进行编码的程序执行的步骤的操作流程图300。图3可以借助于图1和图2来描述。如前所述,视频编码程序116(图1)可以基于在满足一个或更多个条件时限制根据亮度分量预测色度分量来使用根据亮度分量预测色度分量预测快速且有效地对视频进行编码。

在302处,接收与视频帧对应的数据。数据可以是静止图像,或者可以是可以从其中提取一个或更多个帧的视频数据。在操作中,服务器计算机114(图1)上的视频编码程序116(图1)可以通过通信网络110(图1)从计算机102(图1)接收视频帧数据,或者可以从数据库112(图1)中检索视频帧数据。

在304处,确定是否对所接收到的图像数据应用了半解耦划分。半解耦划分或灵活块划分可以允许色度块具有与亮度分量不同的编码块划分。在操作中,视频编码程序116(图1)可以确定已经对所接收到的图像数据应用了半解耦划分。

在306处,基于确定所接收到的图像数据被半解耦划分,针对与所接收到的图像数据相关联的色度块禁用根据亮度分量预测色度分量模式。半解耦划分可能在编码处理中引入延迟。通过针对经半解耦划分的块选择性地禁用根据亮度分量预测色度分量来减少延迟可能是有益的。在操作中,如果已经确定针对所接收到的图像数据已经使用了半解耦划分,则视频编码程序116(图1)可以禁用根据亮度分量预测色度分量预测处理200(图2)。在这种情况下,视频编码程序116可以在不使用根据亮度分量预测色度分量的情况下对来自图像数据的视频帧进行编码。

可以理解,图3仅提供了一种实现方式的说明,并且不暗示关于可以如何实现不同实施方式的任何限制。可以基于设计和实现要求对所描绘的环境进行许多修改。

图4是根据说明性实施方式的图1中描绘的计算机的内部部件和外部部件的框图400。应当理解的是,图4仅提供了一种实现方式的说明,并且不暗示关于其中可以实现不同实施方式的环境的任何限制。可以基于设计和实现要求对所描绘的环境进行许多修改。

计算机102(图1)和服务器计算机114(图1)可以包括图4中所示的内部部件800A、800B和外部部件900A、900B的相应组。每组内部部件800包括一个或更多个总线826上的一个或更多个处理器820、一个或更多个计算机可读RAM(Random Access Memory,RAM)822和一个或更多个计算机可读ROM(Read Only Memory,ROM)824、一个或更多个操作系统828以及一个或更多个计算机可读有形存储设备830。

处理器820以硬件、固件或硬件和软件的组合来实现。处理器820是中央处理单元(Central Processing Unit,CPU)、图形处理单元(Graphics Processing Unit,GPU)、加速处理单元(Accelerated Processing Unit,APU)、微处理器、微控制器、数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(field-programmable gatearray,FPGA)、专用集成电路(Application-Specific Integrated Circuit,ASIC)或另一类型的处理部件。在一些实现方式中,处理器820包括能够被编程以执行功能的一个或更多个处理器。总线826包括允许在内部部件800A、800B之间通信的部件。

一个或更多个操作系统828、软件程序108(图1)以及服务器计算机114(图1)上的视频编码程序116(图1)存储在一个或更多个相应的计算机可读有形存储设备830上,以由一个或更多个相应的处理器820经由一个或更多个相应的RAM 822(其通常包括高速缓冲存储器)来执行。在图4所示的实施方式中,计算机可读有形存储设备830中的每一个是内部硬盘驱动器的磁盘存储设备。可替选地,计算机可读有形存储设备830中的每一个是半导体存储设备例如ROM 824、EPROM(Erasable Programmable Read-Only Memory,EPROM)、闪存、光盘、磁光盘、固态盘、致密盘(Compact Disc,CD)、数字多功能盘(Digital Versatile Disk,DVD)、软盘、盒式磁带、磁带和/或可以存储计算机程序和数字信息的另一类型的非暂态计算机可读有形存储设备。

每组内部部件800A、800B还包括R/W驱动器或接口832,以从一个或更多个便携式计算机可读有形存储设备936例如CD-ROM(Compact Disc Read-Only Memory,CD-ROM)、DVD、记忆棒、磁带、磁盘、光盘或半导体存储设备读取和向其写入。诸如软件程序108(图1)和视频编码程序116(图1)的软件程序可以存储在一个或更多个相应的便携式计算机可读有形存储设备936上,经由相应的R/W驱动器或接口832读取,并且加载至相应的硬盘驱动器830中。

每组内部部件800A、800B还包括网络适配器或接口836例如TCP/IP适配卡;无线Wi-Fi接口卡;或者3G、4G或5G无线接口卡或其他有线或无线通信链路。软件程序108(图1)和服务器计算机114(图1)上的视频编码程序116(图1)可以经由网络(例如因特网、局域网或其他、广域网)和相应的网络适配器或接口836从外部计算机下载至计算机102(图1)和服务器计算机114。将软件程序108和服务器计算机114上的视频编码程序116从网络适配器或接口836加载至相应的硬盘驱动器830中。网络可以包括铜线、光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。

每组外部部件900A、900B可以包括计算机显示监测器920、键盘930和计算机鼠标934。外部部件900A、900B还可以包括触摸屏、虚拟键盘、触摸板、指向设备和其他人机接口设备。每组内部部件800A、800B还包括与计算机显示监测器920、键盘930和计算机鼠标934进行对接的设备驱动器840。设备驱动器840、R/W驱动或接口832以及网络适配器或接口836包括硬件和软件(存储在存储设备830和/或ROM 824中)。

预先理解的是,虽然本公开内容包括关于云计算的详细描述,但是本文中所述的教导的实现不限于云计算环境。相反,一些实施方式能够结合现在已知或以后开发的任何其他类型的计算环境来实现。

云计算是用于实现对可配置计算资源(例如网络、网络带宽、服务器、处理、存储器、存储装置、应用、虚拟机和服务)的共享池的方便、按需网络访问的服务递送模型,该可配置计算资源可以以最小的管理努力或与服务提供商的交互来被快速提供和发布。该云模型可以包括至少五个特征、至少三个服务模型和至少四个部署模型。

特征如下:

按需自助服务:云消费者可以单方面地根据需要自动地供应计算能力,例如服务器时间和网络存储,而不需要与服务的提供商进行人机交互。

广泛的网络接入:能力可通过网络获得,并且通过促进由异构的瘦客户端平台或厚客户端平台(例如移动电话、膝上型计算机和PDA)使用的标准机制来访问。

资源池化:提供商的计算资源被池化以使用多租户模型为多个消费者提供服务,其中不同的物理和虚拟资源根据需求被动态分配和重新分配。存在位置无关的感觉,原因在于消费者通常无法控制或了解所提供资源的确切位置,但是可能能够在更高的抽象级别(例如国家、州或数据中心)处指定位置。

快速弹性:可以快速且弹性地提供能力(在某些情况下是自动地),以快速向外扩展,并且快速发布以快速向内扩展。对于消费者,能够用于提供的能力通常看起来不受限制,并且可以在任何时间以任何数量进行购买。

测量服务:云系统通过在适合于服务类型(例如存储、处理、带宽以及活动用户账户)的某种抽象级别处利用计量能力来自动控制和优化资源使用。可以监测、控制和报告资源使用,从而为所利用的服务的提供商和消费者两者提供透明度。

服务模型如下:

软件即服务(SaaS):提供给消费者的能力是使用在云基础设施上运行的提供商的应用。能够通过诸如web浏览器(例如,基于web的电子邮件)的瘦客户端界面从各种客户端设备来访问应用。消费者不管理或控制包括网络、服务器、操作系统、存储装置、或甚至单个应用能力的底层云基础设施,其中可能的例外是有限的用户专用应用配置设置。

平台即服务(PaaS):提供给消费者的能力是将使用由提供商支持的编程语言和工具创建的消费者创建或获取的应用部署到云基础设施上。消费者不管理或控制包括网络、服务器、操作系统或存储装置的底层云基础设施,但是具有对部署的应用和可能的应用托管环境配置的控制。

基础设施即服务(IaaS):提供给消费者的能力是提供处理、存储、网络以及消费者能够部署和运行任意软件的其他基本计算资源,所述任意软件可以包括操作系统和应用。消费者不管理或控制底层云基础设施,但是具有对操作系统、存储、所部署的应用的控制,以及可能对选定的联网部件(例如,主防火墙)的有限控制。

部署模型如下:

私有云:云基础设施仅针对组织操作。云基础设施可以由组织或第三方管理,并且可以存在于本地(on-premises)或外部(off-premises)。

社区云:云基础设施由若干组织共享,并且支持具有共同关注点(例如,任务、安全要求、策略以及合规性考虑)的特定社区。云基础设施可以由组织或第三方管理,并且可以存在于本地或外部。

公共云:云基础设施能够供一般公众或大型行业团体使用,并且由销售云服务的组织所拥有。

混合云:云基础设施是两个或更多个云(私有、社区或公共)的组合,所述两个或更多个云仍然是唯一的实体,但是通过实现数据和应用可移植性(例如,用于云之间的负载平衡的云爆发)的标准化或专有技术绑定在一起。

云计算环境是面向服务的,其焦点在于无状态、低耦合、模块性和语义互操作性。云计算的核心是包括互连节点网络的基础设施。

参照图5,描绘了说明性云计算环境500。如所示出的,云计算环境500包括一个或更多个云计算节点10,由云消费者所使用的本地计算设备例如个人数字助理(PersonalDigital Assistant,PDA)或蜂窝电话54A、台式计算机54B、膝上型计算机54C和/或汽车计算机系统54N可以与一个或更多个云计算节点10进行通信。云计算节点10可以彼此通信。云计算节点10可以被物理地或虚拟地分组(未示出)在一个或更多个网络例如如上所述的私有云、社区云、公共云或混合云或其组合中。这允许云计算环境600提供基础设施、平台和/或软件作为服务,云消费者不需要为该服务维护在本地计算设备上的资源。应当理解的是,图5中所示的计算设备54A至54N的类型仅旨在是说明性的,并且云计算节点10和云计算环境500可以通过任何类型的网络和/或网络可寻址连接(例如使用web浏览器)与任何类型的计算机化设备进行通信。

参照图6,示出了由云计算环境500(图5)提供的一组功能抽象层600。应当预先理解的是,图6所示的部件、层以及功能仅旨在是说明性的,并且实施方式不限于此。如所描绘的,提供了以下层和对应的功能:

硬件和软件层60包括硬件部件和软件部件。硬件部件的示例包括:大型主机61;基于RISC(Reduced Instruction Set Computer,精简指令集计算机)架构的服务器62;服务器63;刀片式服务器64;存储设备65;以及网络和联网部件66。在一些实施方式中,软件部件包括网络应用服务器软件67和数据库软件68。

虚拟化层70提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器71;虚拟存储装置72;包括虚拟专用网的虚拟网络73;虚拟应用和操作系统74;以及虚拟客户端75。

在一个示例中,管理层80可以提供下述功能。资源提供81提供计算资源和用于在云计算环境内执行任务的其他资源的动态获取。计量和定价82提供了在云计算环境内利用资源时的成本统计,以及对这些资源的消费的账单或发票。在一个示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户83为消费者和系统管理员提供对云计算环境的访问。服务级别管理84提供云计算资源分配和管理,使得满足所需的服务级别。服务级别协议(Service LevelAgreement,SLA)规划和履行85提供对云计算资源的预安排和采购,根据SLA预期对该云计算资源的未来需求。

工作负载层90提供了可以针对其利用云计算环境的功能的示例。可以从该层提供的工作负载和功能的示例包括:绘图和导航91;软件开发和生命周期管理92;虚拟课堂教学交付93;数据分析处理94;交易处理95;以及视频编码96。视频编码96可以基于当满足一个或更多个条件时限制根据亮度分量预测色度分量来对视频数据进行编码。

一些实施方式可以涉及任何可能的集成技术细节级别的系统、方法、和/或计算机可读介质。计算机可读介质可以包括计算机可读非暂态存储介质(或多个介质),该计算机可读非暂态存储介质上具有用于使处理器执行操作的计算机可读程序指令。

计算机可读存储介质可以是能够保留和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更特定示例的非穷举列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦可编程只读存储器(ErasableProgrammable Read-Only Memory,EPROM或闪速存储器)、静态随机存取存储器(StaticRandom Access Memory,SRAM)、便携式致密盘只读存储器(Compact Disc Read-OnlyMemory,CD-ROM)、数字通用盘(Digital Versatile Disk,DVD)、记忆棒、软盘、机械编码设备例如其上记录有指令的穿孔卡或凹槽中的凸起结构、以及前述的任何合适的组合。如本文所使用的计算机可读存储介质不应被解释为本身是暂态信号例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如穿过光纤线缆的光脉冲)或通过导线传输的电信号。

本文中描述的计算机可读程序指令可以从计算机可读存储介质下载至相应的计算/处理设备,或者经由网络例如因特网、局域网、广域网和/或无线网络下载至外部计算机或外部存储设备。网络可以包括铜传输线缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或者网络接口从网络接收计算机可读程序指令,并且转发计算机可读程序指令以存储在相应的计算/处理设备内的计算机可读存储介质中。

用于执行操作的计算机可读程序代码/指令可以是汇编指令、指令集架构(Instruction-Set-Architecture,ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路系统的配置数据,或者以一种或更多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言诸如Smalltalk、C++等以及过程编程语言诸如“C”编程语言或类似编程语言。计算机可读程序指令可以完全在用户的计算机上执行、部分在用户的计算机上执行、作为独立的软件包执行、部分在用户的计算机上且部分在远程计算机上执行或者完全在远程计算机或服务器上执行。在完全在远程计算机或者服务器上执行的情况下,远程计算机可以通过包括局域网(LAN)或广域网(WAN)的任何类型的网络连接至用户的计算机,或者可以(例如通过使用因特网服务提供商的因特网)与外部计算机进行连接。在一些实施方式中,包括例如可编程逻辑电路系统、现场可编程门阵列(FPGA)或可编程逻辑阵列(Programmable Logic Array,PLA)的电子电路系统可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路系统个性化,以执行各方面或操作。

可以将这些计算机可读程序指令提供至通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令来创建用于实现流程图和/或框图中的一个或多个块中所指定的功能/动作的装置。这些计算机可读程序指令还可以存储在计算机可读存储介质中,该计算机可读存储介质可以引导计算机、可编程数据处理装置和/或其他设备以特定方式运行,使得其中存储有指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图的一个或多个块中所指定的功能/动作的各方面的指令。

计算机可读程序指令还可以加载至计算机、其他可编程数据处理装置或其他设备上,以使得在计算机、其他可编程装置或其他设备上执行的一系列操作步骤产生计算机实现的处理,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图的一个或多个块中所指定的功能/动作。

附图中的流程图和框图示出了根据各种实施方式的系统、方法以及计算机可读介质的可能实现方式的架构、功能和操作。在这方面,流程图或框图中的每个块可以表示模块、段或指令的部分,其包括用于实现特定逻辑功能的一个或更多个可执行指令。该方法、计算机系统以及计算机可读介质可以包括与附图中所描绘的那些块相比附加的块、更少的块、不同的块或不同布置的块。在一些替选实现方式中,块中指出的功能可能不按图中指出的顺序发生。例如,连续示出的两个块实际上可能同时或者基本上同时执行,或者块有时可能以相反的顺序执行,这取决于所涉及的功能。还应当注意的是,框图和/或流程图图示中的每个块以及框图和/或流程图图示中的块的组合可以由执行特定功能或动作或实现专用硬件和计算机指令的组合的基于硬件的专用系统来实现。

将明显的是,本文所描述的系统和/或方法可以以硬件、固件、或硬件和软件的组合的不同形式来实现。用于实现这些系统和/或方法的实际专用控制硬件或软件代码并不限制实现方式。因此,本文中描述了系统和/或方法的操作和行为,而没有参考特定的软件代码——应当理解的是,软件和硬件可以被设计成基于本文中的描述来实现系统和/或方法。

除非明确地如此描述,否则本文中使用的元素、动作或指令均不应当被解释为关键的或必要的。此外,如本文中使用的,冠词“一种”和“一个”旨在包括一个或更多个项,并且可以与“一个或更多个”互换使用。此外,如本文所使用的,术语“组”旨在包括一个或更多个项(例如相关项、不相关项、相关项和不相关项的组合等),并且可以与“一个或更多个”互换使用。在仅意指一项的情况下,使用术语“一个”或类似语言。此外,如本文所使用的,术语“具有”、“有”、“带有”等旨在为开放式术语。此外,除非另有明确说明,否则短语“基于”旨在表示“至少部分基于”。

对各个方面和实施方式的描述已经出于说明的目的而呈现,但是不旨在是穷举的或限于所公开的实施方式。即使在权利要求中记载和/或在说明书中公开了特征的组合,这些组合也不旨在限制可能的实现方式的公开内容。实际上,这些特征中的许多特征可以以未在权利要求中具体记载以及/或者未在说明书中公开的方式进行组合。虽然所附权利要求书中列出的每个从属权利要求可以直接引用仅一个权利要求,但是可能的实现方式的公开内容包括每个从属权利要求与权利要求集中的每个其他权利要求的组合。在不脱离所描述的实施方式的范围的情况下,许多修改和变化对本领域普通技术人员而言将是明显的。选择本文所使用的术语是为了最好地解释实施方式的原理、实际应用或对市场中发现的现有技术的技术改进,或者使本领域的其他普通技术人员能够理解本文所公开的实施方式。

相关技术
  • 改进的交叉分量帧内预测模式
  • 一种用于从预定定向帧内预测模式集合中移除定向帧内预测模式的帧内预测装置
技术分类

06120115604262