一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

模式相关的联合分量变换的制作方法

2022-05-06 11:28:09 来源:中国专利 TAG:

模式相关的联合分量变换
1.相关申请的交叉引用
2.本技术要求于2020年5月27日提交的美国临时专利申请第63/030,623号以及于2020年10月2日提交的美国专利申请第17/061,829号的优先权,上述专利申请的全部内容并入本文中。
技术领域
3.本公开内容总体上涉及数据处理领域,并且更具体地涉及视频编码和解码。


背景技术:

4.aomedia video 1(av1)是设计用于通过因特网进行视频传输的开放视频编解码(coding)格式。aomedia video 1是由开放媒体联盟(aomedia,于2015年成立的联盟,包括半导体公司、视频点播提供商、视频内容生产商、软件开发公司和web浏览器供应商)作为vp9的继承者开发的。av1项目的许多组成部分源于联盟成员之前的研究工作。个人贡献者在几年前启动了实验性技术平台:2010年已经公开了xiph/mozilla的daala代码、2014年9月12日公布了google的实验性vp9演进项目vp10、以及2015年8月11日公开了cisco的thor。在vp9代码库的基础上,av1结合了其他技术,这些技术中的一些是以这些实验格式开发的。av1是参考编解码器的第一个版本0.1.0于2016年4月7日发布的。该联盟于2018年3月28日宣布发布av1比特流规范,同时发布了基于软件的参考编码器和解码器。于2018年6月25日发布了该规范的验证版本1.0.0。于2019年1月8日发布了该规范的具有勘误表1的验证版本1.0.0。av1比特流规范包括参考视频编解码器。


技术实现要素:

5.实施方式涉及一种用于对视频数据进行编解码的方法、系统和计算机可读介质。根据一个方面,提供了一种用于对视频数据进行编解码的方法。该方法可以包括接收视频数据并将所接收的视频数据熵解析为一个或更多个分量。对熵解析的一个或更多个分量进行解量化。对一个或更多个分量执行联合分量二次变换(joint component secondary transformation,jcst)。基于与经联合分量二次变换的分量对应的一个或更多个残差分量来解码视频数据。
6.根据另一方面,提供了一种用于对视频数据进行编解码的计算机系统。计算机系统可以包括一个或更多个处理器、一个或更多个计算机可读存储器、一个或更多个计算机可读有形存储装置、以及存储在一个或更多个存储装置中的至少之一上的程序指令,程序指令用于由一个或更多个处理器中的至少之一经由一个或更多个存储器中的至少之一执行,由此计算机系统能够执行方法。该方法可以包括接收视频数据并将所接收的视频数据熵解析为一个或更多个分量。对熵解析的一个或更多个分量进行解量化。对一个或更多个分量执行联合分量二次变换(jcst)。基于与经联合分量二次变换的分量对应的一个或更多个残差分量来解码视频数据。
7.根据又一方面,提供一种用于对视频数据进行编解码的计算机可读介质。计算机可读介质可以包括一个或更多个计算机可读存储装置、以及存储在一个或更多个有形存储装置中的至少之一上的程序指令,程序指令能够由处理器执行。程序指令可以由处理器执行,以用于执行方法,该方法可以相应地包括接收视频数据并将所接收的视频数据熵解析为一个或更多个分量。对熵解析的一个或更多个分量进行解量化。对一个或更多个分量执行联合分量二次变换(jcst)。基于与经联合分量二次变换的分量对应的一个或更多个残差分量来解码视频数据。
附图说明
8.根据要结合附图阅读的说明性实施方式的以下详细描述,这些和其他目的、特征和优点将变得明显。附图的各种特征不是按比例的,因为这些图示是为了有助于本领域技术人员结合详细描述的理解而清楚起见。在附图中:
9.图1示出了根据至少一个实施方式的联网计算机环境;
10.图2a和图2b分别是根据至少一个实施方式的示例性jcst编码器和jcst解码器;
11.图3a和图3b分别是根据至少一个实施方式的示例性jcct编码器和jcct解码器;
12.图4是示出了根据至少一个实施方式的基于来自多个颜色分量的编解码残差对视频数据进行编解码的程序执行的步骤的操作流程图;
13.图5是根据至少一个实施方式的图1中描绘的计算机和服务器的内部组件和外部组件的框图;
14.图6是根据至少一个实施方式的包括图1中描绘的计算机系统的说明性云计算环境的框图;以及
15.图7是根据至少一个实施方式的图6的说明性云计算环境的功能层的框图。
具体实施方式
16.本文中公开了所要求保护的结构和方法的详细实施方式;然而,可以理解,所公开的实施方式仅是可以以各种形式实施的所要求保护的结构和方法的说明。然而,这些结构和方法可以以许多不同的形式来实施,并且不应当被解释为限于本文中阐述的示例性实施方式。相反,提供这些示例性实施方式使得本公开将是彻底和完整的,并且将向本领域技术人员充分传达范围。在描述中,可以省略公知特征和技术的细节,以避免不必要地模糊所呈现的实施方式。
17.实施方式一般涉及数据处理领域,并且更具体地涉及视频编码和解码。以下描述的示例性实施方式提供了一种系统、方法和计算机程序,其中,基于来自多个颜色分量的编解码残差对视频数据进行编码和解码。因此,一些实施方式具有以下能力:通过允许计算机通过减少视频数据的多个颜色分量之间的冗余改进视频数据的编码和解码从而改进计算领域。
18.如先前描述的,aomedia video 1(av1)是设计用于通过因特网进行视频传输的开放视频编解码格式。aomedia video 1是由开放媒体联盟(aomedia,于2015年成立的联盟,包括半导体公司、视频点播提供商、视频内容生产商、软件开发公司和web浏览器供应商)作为vp9的继承者开发的。av1项目的许多组成部分源于联盟成员之前的研究工作。个人贡献
者在几年前开启了实验性技术平台:2010年已经公开了xiph/mozilla的daala代码、2014年9月12日公布了google的实验性vp9演进项目vp10、以及2015年8月11日公开了cisco的thor。在vp9代码库的基础上,av1结合了其他技术,这些技术中的一些是以这些实验格式开发的。av1参考编解码器的第一个版本0.1.0于2016年4月7日发布。该联盟于2018年3月28日宣布发布av1比特流规范,同时发布了基于软件的参考编码器和解码器。于2018年6月25日发布了该规范的验证版本1.0.0。于2019年1月8日发布了该规范的具有勘误表1的验证版本1.0.0。av1比特流规范包括参考视频编解码器。
19.在av1中,观察到为色度通道生成的预测残差信号(例如,cb和cr)彼此高度相关,这表明可以通过减少cb和cr预测残差之间的统计冗余来进一步改进残差编解码。此外,cb和cr预测残差之间的相关性可能取决于预测模式。固定联合色度分量变换对于处理所有预测模式可能不是最佳的。因此,将联合模式相关变换应用于多种颜色以提高编解码效率可能是有利的。
20.对于每个变换单元,av1系数编解码器首先对跳过符号进行编解码,之后是对所有非零系数的变换核类型和块结束(end-of-block,eob)位置进行编解码(当不跳过变换编解码时)。然后,将每个系数值映射到多个级别映射和符号,其中符号平面覆盖了系数的符号,并且三个级别平面对应于不同的系数大小范围,即低级平面、中级平面和高级平面。低级平面对应于0至2的范围,中级平面负责3至14的范围,而高级平面覆盖15及以上的范围。
21.在eob位置被编解码之后,低级平面和中级平面以反向扫描顺序被一起编解码,低级平面表示当系数大小在0和2之间时,而中级平面表示当范围在3和14之间时。然后,将符号平面和高级平面以正向扫描顺序一起编解码,高级平面表示具有大于14的大小的残差值,并且使用exp-golomb码对剩余部分进行熵编解码。av1采用传统的之字形扫描顺序。
22.这种分离允许将丰富的上下文模型分配给低级平面,其考虑了包括双向、水平和垂直的变换方向,变换大小,以及在适度的上下文模型大小下提高压缩效率的多达五个相邻系数。中级平面使用与低级平面类似的上下文模型,上下文相邻系数数量从5个减少到2个。高级平面通过exp-golomb码被编解码,不使用上下文模型。在符号平面中,除了对dc符号使用其相邻变换单元的dc符号作为上下文信息进行编解码外,其他符号位被直接编解码而不使用上下文模型。
23.vvc草案6支持对色度残差进行联合编解码的模式。联合色度编解码模式的使用(激活)由tu级标志tu_joint_cbcr_residual_flag指示,而所选择的模式由色度cbf隐含地指示。如果tu的任一个或两个色度cbf等于1,那么存在标志tu_joint_cbcr_residual_flag。在pps和切片报头中,针对联合色度残差编解码模式用信号发送色度qp偏移值,以区别于针对常规色度残差编解码模式用信号发送的色度qp偏移值。这些色度qp偏移值用于导出使用联合色度残差编解码模式编解码的那些块的色度qp值。当相应的联合色度编解码模式(例如,模式2)在tu中是活动的时,在该tu的量化和解码期间将该色度qp偏移添加到所应用的亮度导出色度qp。对于其它模式(例如,模式1和模式3),色度qp以与针对常规cb或cr块相同的方式被导出。色度残差(rescb和rescr)可以从传输的变换块中重建。当激活这个模式时,用信号发送一个单个的联合色度残差块(例如,resjointc[x][y]),并且考虑诸如tu_cbf_cb、tu_cbf_cr和csign的信息来导出cb的残差块(rescb)和cr的残差块(rescr),其中,csign是切片报头中指定的符号值。
network,pstn)的电信网络、无线网络、公共交换网络、卫星网络、蜂窝网络(例如,第五代(fifth generation,5g)网络、长期演进(long-term evolution,lte)网络、第三代(third generation,3g)网络、码分多址(code division multiple access,cdma)网络等)、公共陆地移动网络(public land mobile network,plmn)、城域网(metropolitan area network,man)、专用网络、自组织网络、内联网、基于光纤的网络等,和/或这些或其他类型的网络的组合。
[0032]
图1所示的设备和网络的数量和布置被作为示例来提供。实际上,可以存在附加的设备和/或网络、更少的设备和/或网络、不同的设备和/或网络、或者与图1中所示的设备和/或网络不同布置的设备和/或网络。此外,图1所示的两个或更多个设备可以在单个设备内实现,或者图1所示的单个设备可以被实现为多个分布式设备。附加地或替选地,系统100的一组装置(例如,一个或更多个装置)可以执行被描述为由系统100的另一组装置执行的一个或更多个功能。
[0033]
现在参照图2a和图2b,可以分别描绘根据一个或更多个实施方式的模式相关的联合分量二次变换(mode-dependent joint component secondary transform,md-jcst)编码器200a和md-jcst解码器200b。md-jcst编码器200a可以包括正向变换模块202a和202b、jcst模块204、量化模块206a和206b以及熵编码模块208a和208b。md-jcst编码器200a可以对多个颜色分量的变换系数执行模式相关的联合分量二次变换。jcst可以在正向变换之后和量化之前执行。md-jcst解码器200b可以包括熵解析模块210a和210b、解量化模块212a和212b、jcst模块214以及反向变换模块216a和216b。md-jcst解码器200b可以在解量化变换之后且在反向(逆向)变换之前执行jcst。
[0034]
在一个实施方式中,可以根据预测模式来选择在jcst中使用的核。在一个实施方式中,对于不同的帧内预测模式(例如,dc、smooth_h、smooth_v、方向模式、佩特预测器、滤波模式),可以应用不同的jcst核。在一个实施方式中,对于不同的标称帧内预测模式,可以应用不同的jcst核。在一个实施方式中,对于一些帧内预测模式,可以停用jcst。这些帧内预测模式的示例包括但不限于cfl、佩特预测器。
[0035]
在一个实施方式中,对于不同的标称帧内预测模式,可以应用不同的jcst核。在一个实施方式中,可以针对帧内预测模式和帧间预测模式应用不同的jcst核。在一个实施方式中,可以针对帧内块复制(ibc或帧内bc)模式应用不同的jcst核。在一个实施方式中,可以针对调色板模式应用不同的jcst核。在一个实施方式中,可以针对不同的帧间预测模式(例如,局部扭曲运动、重叠块运动补偿/obmc)应用不同的jcst核。
[0036]
在一个实施方式中,可以针对不同的运动信息应用不同的jcst核。jcst核可以取决于运动矢量预测器是来自顶部、左侧还是时间运动矢量预测(mvp)候选。jcst核可以取决于运动矢量的大小。jcst核可以取决于运动矢量的方向。在一个实施方式中,jcst中使用的核取决于针对当前块选择的初级变换类型。在一个实施方式中,对于在还应用jcst的颜色分量上应用的不同变换(例如,离散余弦变换/dct、单位变换/idt、非对称离散正弦变换/adst、线图变换/lgt),可以应用不同的jcst核。在一个实施方式中,jcst中使用的核取决于针对当前块选择的二次变换核。
[0037]
现在参照图3a和图3b,分别描绘可以提出的根据一个或更多个实施方式的模式相关的联合颜色分量变换(md-jcct)编码器300a和md-jcct解码器300b。md-jcct编码器300a
可以包括联合颜色分量变换(jcct)模块302、正向变换模块304a和304b、量化模块306a和306b,以及熵编码模块308a和308b。md-jcst编码器200a可以对多个颜色分量的变换系数执行模式相关的联合颜色分量变换(md-jcct)。md-jcct编码器300a可以在正向变换和量化之前执行jcct。md-jcct解码器300b可以包括熵解析模块310a和310b、解量化模块312a和312b、反向变换模块314a和314b,以及jcct模块316。md-jcct解码器300b可以在解量化和反向(逆向)变换之后执行jcct。
[0038]
在一个实施方式中,可以根据预测模式来选择在jcct中使用的核。在一个实施方式中,对于不同的帧内预测模式(例如,dc、smooth_h、smooth_v、方向模式、滤波模式),可以应用不同的jcst核。在一个实施方式中,对于不同的标称帧内预测模式,可以应用不同的jcct核。在一个实施方式中,对于一些帧内预测模式,可以停用jcct。这些帧内预测模式的示例包括但不限于cfl。在一个实施方式中,对于不同的标称帧内预测模式,可以应用不同的jcst核。在一个实施方式中,可以针对帧内预测模式和帧间预测模式应用不同的jcct核。在一个实施方式中,可以针对帧内块复制(ibc或帧内bc)模式应用不同的jcct核。在一个实施方式中,可以针对调色板模式应用不同的jcct核。在一个实施方式中,可以针对不同的帧间预测模式(例如,局部扭曲运动、obmc)应用不同的jcct核。
[0039]
在一个实施方式中,可以针对不同的运动信息应用不同的jcct核。jcct核可以取决于运动矢量预测器是来自顶部、左侧还是时间mvp候选。jcct核可以取决于运动矢量的大小。jcct核可以取决于运动矢量的方向。
[0040]
在一个实施方式中,jcct中使用的核取决于针对当前块选择的初级变换类型。在一个实施方式中,对于在还应用jcct的颜色分量上应用的不同初级变换(例如,dct、idt、adst、lgt),可以应用不同的jcct核。在一个实施方式中,jcct中使用的核取决于针对当前块选择的二次变换核。
[0041]
现在参照图4,描绘了示出用于对视频数据进行编解码的方法400的步骤的操作流程图。在一些实现方式中,图4的一个或更多个处理块可以由计算机102(图1)和服务器计算机114(图1)执行。在一些实现方式中,图4的一个或更多个处理块可以由与计算机102和服务器计算机114分开或包括计算机102和服务器计算机114的另一设备或设备组来执行。
[0042]
在402处,方法400包括接收视频数据。
[0043]
在404处,方法400包括将所接收的视频数据熵解析成一个或更多个分量。
[0044]
在406处,方法400包括对熵解析的一个或更多个分量进行解量化。
[0045]
在408处,方法400包括对一个或更多个分量执行联合分量二次变换。
[0046]
在410处,方法400包括基于与经联合分量二次变换的分量对应的一个或更多个残差分量来解码视频数据。
[0047]
可以理解,图4仅提供了一种实现方式的图示,而不意味着对如何实现不同实施方式的任何限制。可以基于设计和实现需求对所描绘的环境进行许多修改。
[0048]
图5是根据说明性实施方式的图1中描绘的计算机的内部组件和外部组件的框图500。应当理解,图5仅提供了一种实现方式的图示,而不意味着对可以实现不同实施方式的环境的任何限制。可以基于设计和实现需求对所描绘的环境进行许多修改。
[0049]
计算机102(图1)和服务器计算机114(图1)可以包括图4中所示的内部组件800a、800b和外部组件900a、900b的相应集合。内部组件800的每个集合包括一个或更多个总线
826上的一个或更多个处理器820、一个或更多个计算机可读ram 822和一个或更多个计算机可读rom824、一个或更多个操作系统828以及一个或更多个计算机可读有形存储设备830。
[0050]
处理器820以硬件、固件或硬件和软件的组合来实现。处理器820是中央处理单元(central processing unit,cpu)、图形处理单元(graphics processing unit,gpu)、加速处理单元(accelerated processing unit,apu)、微处理器、微控制器、数字信号处理器(digital signal processor,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、专用集成电路(application-specific integrated circuit,asic)或另一类型的处理部件。在一些实现方式中,处理器820包括能够被编程以执行功能的一个或更多个处理器。总线826包括允许内部组件800a、800b之间的通信的组件。
[0051]
服务器计算机114(图1)上的一个或更多个操作系统828、软件程序108(图1)和视频编解码程序116(图1)存储在一个或更多个相应的计算机可读有形存储设备830上,以由一个或更多个相应的处理器820经由一个或更多个相应的ram 822(其通常包括高速缓冲存储器)来执行。在图5所示的实施方式中,计算机可读有形存储设备830中的每个是内部硬盘驱动器的磁盘存储设备。替选地,计算机可读有形存储设备830中的每个是半导体存储设备,例如rom 824、eprom、闪存、光盘、磁光盘、固态盘、致密盘(compact disc,cd)、数字多功能盘(digital versatile disc,dvd)、软盘、盒式磁带、磁带和/或可以存储计算机程序和数字信息的另一类型的非暂态计算机可读有形存储设备。
[0052]
内部组件800a、800b的每个集合还包括r/w驱动器或接口832,以从一个或更多个便携式计算机可读有形存储设备936读取和向一个或更多个便携式计算机可读有形存储设备写入,该便携式计算机可读有形存储设备例如cd-rom、dvd、记忆棒、磁带、磁盘、光盘或半导体存储设备。诸如软件程序108(图1)和视频编解码程序116(图1)的软件程序可以被存储在一个或更多个相应的便携式计算机可读有形存储设备936上,经由相应的r/w驱动器或接口832读取,并且加载到相应的硬盘驱动器830中。
[0053]
内部组件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中。网络可以包括铜线、光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。
[0054]
外部组件900a、900b中的每个集合可以包括计算机显示监视器920、键盘930和计算机鼠标934。外部组件900a、900b还可以包括触摸屏、虚拟键盘、触摸板、定点设备和其他人机接口设备。内部组件800a、800b组中的每个集合还包括与计算机显示监视器920、键盘930和计算机鼠标934接口的设备驱动器840。设备驱动器840、r/w驱动器或接口832以及网络适配器或接口836包括硬件和(存储在存储设备830和/或rom 824中的)软件。
[0055]
应当预先理解,尽管本公开内容包括关于云计算的详细描述,但是本文中记载的教导的实现方式不限于云计算环境。相反,一些实施方式能够结合现在已知的或以后开发的任何其他类型的计算环境被实现。
[0056]
云计算是一种服务递送模型,用于实现对可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储、应用、虚拟机和服务)的共享池的方便的按需网络访问,该可配置计算资源可以以最少的管理工作或与服务提供商的交互来快速供应和释放。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。
[0057]
特性如下:
[0058]
按需自助服务:云消费者可以单方面地自动地根据需要提供计算功能,例如服务器时间和网络存储,而不需要与服务提供商进行人工交互。
[0059]
广泛的网络接入:功能可通过网络获得,并且通过促进由异构的瘦客户端平台或厚客户端平台(例如,移动电话、膝上型计算机和pda)使用的标准机制来访问。
[0060]
资源池化:提供商的计算资源被池化以使用多租户模型来服务多个消费者,其中不同的物理资源和虚拟资源根据需求被动态地分配和重新分配。存在与位置无关的感觉,因为消费者通常不控制或不知道所提供的资源的确切位置,但是能够在更高的抽象层次(例如,国家、州或数据中心)指定位置。
[0061]
快速弹性:可以快速、弹性地配置功能,在某些情况下是自动的,以快速向外扩展和快速释放以快速向内扩展。对于消费者,可以用于提供的功能通常表现为无限的,并且可以在任何时间以任何数量购买。
[0062]
测量服务:云系统通过在适合于服务类型(例如,存储、处理、带宽和活动用户账户)的某种抽象层次上利用计量功能来自动控制和优化资源使用。可以监视、控制和报告资源使用,从而为所利用的服务的提供商和消费者两者提供透明度。
[0063]
服务模型如下:
[0064]
软件即服务(software as a service,saas):提供给消费者的功能是使用在云基础设施上运行的提供商的应用。可通过诸如web浏览器(例如,基于web的电子邮件)的瘦客户端界面从各种客户端设备访问应用。消费者不管理或控制包括网络、服务器、操作系统、存储、或甚至个体应用功能的底层云基础设施,可能的例外是有限的用户专用应用配置设置。
[0065]
平台即服务(platform as a service,paas):提供给消费者的功能是将使用由提供商支持的编程语言和工具创建的消费者创建或获取的应用部署到云基础设施上。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础设施,但具有对部署的应用和可能的应用托管环境配置的控制。
[0066]
基础设施即服务(infrastructure as a service,iaas):提供给消费者的功能是提供处理、存储、网络以及消费者能够部署和运行任意软件的其他基本计算资源,所述软件可以包括操作系统和应用。消费者不管理或控制底层云基础设施,但具有对操作系统、存储、部署的应用的控制,以及可能对选择网络组件(例如,主机防火墙)的有限控制。
[0067]
部署模型如下:
[0068]
私有云:云基础设施仅针对一个组织运行。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
[0069]
社区云:云基础设施由若干组织共享,并且支持有共享关注(例如,任务、安全要求、策略和合规性考虑)的特定社区。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
[0070]
公共云:云基础设施可供一般公众或大型行业团体使用,并且由销售云服务的组织所有。
[0071]
混合云:云基础设施是两个或更多个云(私有、社区或公共)的组合,它们仍然是唯一的实体,但是通过标准化或专有技术绑定在一起,从而实现数据和应用的可移植性(例如,用于云之间的负载平衡的云爆发)。
[0072]
云计算环境是面向服务的,其焦点在于无状态、低耦合、模块性和语义互操作性。云计算的核心是包括相互连接的节点的网络的基础设施。
[0073]
参照图6,描绘了示例性云计算环境600。如图所示,云计算环境600包括:一个或更多个云计算节点10,由云消费者使用的本地计算设备可以与该一个或更多个云计算节点通信,该本地计算设备例如个人数字助理(personal digital assistant,pda)或蜂窝电话54a、台式计算机54b、膝上型计算机54c和/或汽车计算机系统54n。云计算节点10可以彼此通信。它们可以被物理地或虚拟地分组(未示出)到一个或更多个网络中,例如如上文描述的私有云、社区云、公共云或混合云,或其组合。这允许云计算环境600提供基础设施、平台和/或软件作为服务,云消费者不需要为其维护本地计算设备上的资源。应当理解,图5中所示的计算设备54a至54n的类型仅旨在说明,并且云计算节点10和云计算环境600可以通过任何类型的网络和/或网络可寻址连接(例如,使用web浏览器)与任何类型的计算机化设备通信。
[0074]
参照图7,示出了由云计算环境600(图6)提供的一组功能抽象层700。应当预先理解,图7中所示的组件、层和功能仅是说明性的,并且实施方式不限于此。如所描绘的,提供了以下层和相应的功能:
[0075]
硬件和软件层60包括硬件组件和软件组件。硬件组件的示例包括:大型主机61;基于risc(reduced instruction set computer,精简指令集计算机)架构的服务器62;服务器63;刀片式服务器64;存储设备65;以及网络和网络组件66。在一些实施方式中,软件组件包括网络应用服务器软件67和数据库软件68。
[0076]
虚拟化层70提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器71;虚拟存储72;虚拟网络73,包括虚拟专用网;虚拟应用和操作系统74;以及虚拟客户端75。
[0077]
在一个示例中,管理层80可以提供下述功能。资源提供81提供用于在云计算环境内执行任务的计算资源和其他资源的动态采购。计量和定价82提供了在云计算环境中利用资源时的成本跟踪,以及对这些资源的消耗的帐单或发票。在一个示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户83为消费者和系统管理员提供对云计算环境的访问。服务级别管理84提供云计算资源分配和管理,使得满足所需的服务级别。服务级别协议(service level agreement,sla)规划和履行85提供对云计算资源的预安排和采购,根据sla预期对云计算资源的未来需求。
[0078]
工作负载层90提供了可以利用云计算环境的功能的示例。可以从该层提供的工作负载和功能的示例包括:绘图和导航91;软件开发和生命周期管理92;虚拟课堂教学交付93;数据分析处理94;交易处理95;以及视频编解码96。视频编解码96可以基于来自多个颜色分量的编解码残差来编码及解码视频数据。
[0079]
一些实施方式可以涉及任何可能的集成技术细节水平的系统、方法和/或计算机可读介质。计算机可读介质可以包括计算机可读非暂态存储介质(或多个介质),该计算机可读非暂态存储介质上具有用于使处理器执行操作的计算机可读程序指令。
[0080]
计算机可读存储介质可以是能够保留和存储供指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更具体示例的非穷举列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(random access memory,ram)、只读存储器(read-only memory,rom)、可擦可编程只读存储器(erasable programmable read-only memory,eprom或闪速存储器)、静态随机存取存储器(static random access memory,sram)、便携式致密盘只读存储器(compact disc read-only memory,cd-rom)、数字通用盘(digital versatile disk,dvd)、记忆棒、软盘、机械编码设备例如穿孔卡或其上记录有指令的凹槽中的凸起结构、以及前述的任何合适的组合。如本文所使用的计算机可读存储介质不应被解释为本身是暂态信号,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,穿过光纤电缆的光脉冲)或通过导线传输的电信号。
[0081]
本文中描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络(例如,因特网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。该网络可以包括铜传输线缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理装置中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并且转发计算机可读程序指令以存储在相应的计算/处理装置内的计算机可读存储介质中。
[0082]
用于执行操作的计算机可读程序代码/指令可以是汇编指令、指令集架构(instruction-set-architecture,isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路的配置数据,或者以一种或更多种编程语言的任意组合编写的源代码或目标代码,所述一种或更多种编程语言包括诸如smalltalk、c 等的面向对象的编程语言和诸如“c”编程语言或类似编程语言的过程编程语言。计算机可读程序指令可以全部在用户的计算机上执行、部分在用户的计算机上执行、作为独立的软件包执行、部分在用户的计算机上且部分在远程计算机上执行或者全部在远程计算机或服务器上执行。在全部在远程计算机或者服务器上执行的情况下,远程计算机可以通过包括局域网(lan)或广域网(wan)的任何类型的网络连接至用户的计算机,或者该连接可以到外部计算机(例如通过使用因特网服务提供商的因特网)。在一些实施方式中,包括例如可编程逻辑电路系统、现场可编程门阵列(fpga)或可编程逻辑阵列(programmable logic array,pla)的电子电路系统可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路系统个性化,以执行各方面或操作。
[0083]
可以将这些计算机可读程序指令提供给通用计算机、专用计算机的处理器或其他可编程数据处理装置以产生机器,使得经由计算机的处理器或其他可编程数据处理装置执行的指令来创建用于实现流程图和/或框图中的一个或更多个块中所指定的功能/动作的装置。这些计算机可读程序指令还可以被存储在计算机可读存储介质中,该计算机可读存储介质可以以特定的方式引导计算机、可编程数据处理装置或其他设备起作用,以使得其
中存储有指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图中的一个或更多个块中所指定的功能/动作方面的指令。
[0084]
计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得要在计算机、其他可编程装置或其他设备上执行的一系列操作步骤能够产生计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图的一个或更多个块中指定的功能/动作。
[0085]
图中的流程图和框图示出了根据各种实施方式的系统、方法和计算机可读介质的可能实现方式的架构、功能和操作。在这方面,流程图或框图中的每个块可以表示模块、段或部分指令,该模块、段或部分指令包括用于实现特定逻辑功能的一个或更多个可执行指令。方法、计算机系统和计算机可读介质可以包括与图中所描绘的这些块相比附加的块、更少的块、不同的块或不同布置的块。在一些替选实现方式中,块中注明的功能可以不按图中注明的顺序发生。例如,连续示出的两个块实际上可以同时或者基本上同时执行,或者块有时可以根据所涉及的功能而按照相反的顺序执行。还应当注意,可以通过执行特定功能或动作或实现专用硬件和计算机指令的组合的基于硬件的专用系统来实现框图和/或流程图中的每个块以及框图和/或流程图中的块的组合。
[0086]
将明显的是,本文所描述的系统和/或方法可以以不同形式的硬件、固件、或硬件和软件的组合来实现。用于实现这些系统和/或方法的实际的专用控制硬件或软件代码并不限制实现方式。因此,本文中在不参考特定软件代码的情况下描述了系统和/或方法的操作和行为,应当理解的是,可以基于本文中的描述将软件和硬件设计成实现系统和/或方法。
[0087]
除非对此明确地描述,否则本文中使用的元素、动作或指令均不应当被解释为关键的或必要的。而且,如本文中使用的,冠词“一种”和“一个”意在包括一个或更多个项,并且可以与“一个或更多个”互换使用。此外,如本文所使用的,术语“组”旨在包括一个或更多个项(例如,相关项、不相关项、相关项与不相关项的组合等),并且可以与“一个或更多个”互换使用。在意指仅一项的情况下,使用术语“一个”或类似语言。而且,如本文中使用的,术语“具有”、“有”、“含有”等意在为开放式术语。此外,除非另有明确说明,否则短语“基于”旨在表示“至少部分地基于”。
[0088]
已经出于说明的目的呈现了对各个方面和实施方式的描述,但是不旨在是穷举的或限于所公开的实施方式。尽管在权利要求中记载了和/或在说明书中公开了特征的组合,但是这些组合不旨在限制可能实现方式的公开内容。实际上,这些特征中的许多特征可以以权利要求中未具体记载以及/或者说明书中未公开的方式组合。尽管以下列出的每个从属权利要求可以直接引用仅一个权利要求,但是可能的实现方式的公开内容包括与权利要求组中的每个其他权利要求组合的每个从属权利要求。在不背离所描述的实施方式的范围的情况下,许多修改和变化对于本领域普通技术人员而言将是明显的。选择本文所使用的术语以最好地解释实施方式的原理、实际应用或相对于市场上现有技术的技术改进,或使本领域的其他普通技术人员能够理解本文所公开的实施方式。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献