视频处理的方法和装置与流程

文档序号:16632738发布日期:2019-01-16 06:43阅读:351来源:国知局
视频处理的方法和装置与流程

本申请涉及视频技术领域,尤其涉及视频处理的方法和装置。



背景技术:

4k(分辨率为4096×2160)超高清视频业务的发展,对传输带宽的需求日益增大,而传统通用的视频编解码技术已无法保证在现有带宽环境下传输高质量的4k视频。多个内容运营商已经推出了4k视频服务,在传输超高清视频过程中,带宽将承受很大压力,例如:以实际的4k超高清视频业务为例,业界目前情况以h.264编码标准为主,码率需要达到50m以上才能保障较好的4kp60视觉体验,对应网络带宽需要75m以上;而当h.265编码标准普及后,在保证业务体验的前提下,4kp60码率可以降到30m,对应网络带宽需要45m以上;但受制于高昂的带宽和cdn成本,目前国内固定接入网带宽现状无法满足4k带宽要求,甚至可能导致视频无法传输或者传输的速度过慢的问题,进一步可能使得宽带的负荷过大,导致传输网络瘫痪的问题。



技术实现要素:

本申请实施例提供一种视频处理的方法和装置,可以实现高质量视频内容能够在有限的带宽的传输网络进行传输,并且接收端能够重构成高质量视频内容,从而使得视频处理技术方案中的降低传输压力和保证视频质量的平衡。

第一方面,本申请的实施例提供了一种视频处理的方法,该方法应用于视频编码装置,包括:视频编码装置接收第一视频分片,其中,第一视频分片的分辨率为初始分辨率;然后视频编码装置可以根据机器学习模型的模型参数,利用所述机器学习模型获得第一视频分片的自适应采样分辨率,这里的机器学习模型可以有多种,比如:卷积神经网络之类的,这样视频编码装置可以对每个视频分片都能获得其最佳的自适应采样分辨率。视频编码装置还可以根据自适应采样分辨率,对所述第一视频分片进行采样,获得第二视频分片,这样针对不同类型的视频分片可以获得不同自适应采样分辨率采样获得第二视频分片;通过对第一视频分片和第二视频分片的比较,可以获得辅助参数,辅助参数包含了第一视频分片的自适应采样分辨率;将所述第二视频分片和所述辅助参数进行编码处理,形成第三视频分片;通常来说,自适应采样分辨率比初始分辨率要低一些,这样第三视频分片的分辨率就是比较低的分辨率,可以满足高质量的视频内容的传输效率。另外,针对不同的视频分片的类型,采用不同的自适应采样分辨率进行采样,最终获得的第三视频分片的分辨率也是不同的。因此,对于不同类型的视频分片,可以采用不同的分辨率编码视频内容,可以最优化的平衡传输过程中带宽压力和视频的高质量。

在一种可能的设计中,视频编码装置根据机器学习模型的模型参数,利用机器学习模型预测出第一视频分片的自适应采样分辨率,具体包括:根据机器学习模型的模型参数,利用所述机器学习模型,对所述第一视频分片进行训练,获得训练后的分类结果,所述分类结果为所述第一视频分片的自适应采样分辨率;或者,根据机器学习模型的模型参数,利用所述机器学习模型,所述第一视频分片进行训练,获得训练后的分类结果,所述分类结果为预测的视频分片的类型,根据所述视频分片的类型确定所述第一视频分片的自适应采样分辨率。通过机器学习的方式,视频编码装置能够获得符合视频分片类型的采样分辨率,这样获得的采样分辨率可能是最优的。

在一种可能的设计中,视频编码装置根据所述第一视频分片和所述第二视频分片,获得辅助参数,具体包括:恢复所述第二视频分片的分辨率为初始分辨率,获得第四视频分片;将所述第一视频分片的图像和所述第四视频分片的图像相减,获得相减的差值,所述差值为残差图像;分别对每个所述残差图像进行编码处理,获得每个所述残差图像的辅助信息,所述辅助参数还包括所有的残差图像的辅助信息。视频编码装置通过比较采样的视频分片和接收到的初始视频分片的差距,可以获得辅助参数,这个辅助参数可以帮助视频解码装置能够比较准确地重构视频分片。

第二方面,本申请的实施例提供了一种视频处理的方法,该方法应用于视频解码装置,方法具体包括:视频解码装置接收第三视频分片,这个第三视频分片就是视频编码装置编码后的视频分片,该第三视频分片包含了自适应的采样分辨率;视频解码装置对所述第三视频分片进行解码,获得第五视频分片和辅助参数,第五视频分片的分辨率为自适应采样分辨率,辅助参数包含所述自适应采样分辨率,第五视频分片可以为采样后的第二视频分片;并根据辅助参数,对所述第五视频分片进行重构,获得第六视频分片,第六视频分片的分辨率为初始分辨率。

第三方面,本发明的实施例提供一种视频编码装置,该实现视频编码的装置具有实现上述方法实施例中视频编码装置的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。

第四方面,本发明的实施例提供一种视频解码装置,该实现视频解码的装置具有实现上述方法实施例中视频解码装置的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。

第五方面,本发明的实施例提供一种视频编码装置,包括:处理器、存储器、总线和通信接口;该存储器用于存储计算机执行指令,该处理器与该存储器通过该总线连接,当该视频编码装置运行时,该处理器执行该存储器存储的该计算机执行指令,以使该实现对视频分片进行编码的装置执行如上述第一方面任意一项的视频处理的方法。

第六方面,本发明的实施例提供一种视频解码装置,包括:处理器、存储器、总线和通信接口;该存储器用于存储计算机执行指令,该处理器与该存储器通过该总线连接,当该设备运行时,该处理器执行该存储器存储的该计算机执行指令,以使该实现对视频分片进行解码的装置执行如上述第二方面任意一项的视频处理的方法。

第七方面,本发明的实施例提供一种实现视频处理的系统,包括上述方法实施例中或装置实施例中的视频编码装置和视频解码装置。

第八方面,本发明实施例提供了一种计算机存储介质,用于储存为上述视频编码装置或视频解码装置所用的计算机软件指令,其包含用于执行上述方面为视频编码装置或和视频解码装置所设计的程序。

第九方面,本发明实施例提供了一种计算机程序产品。该计算机程序产品包括计算机软件指令,该计算机软件指令可通过处理器进行加载来实现上述第一方面中任意一项的视频处理的方法中的流程。

另外,第三方面至第九方面中任一种设计方式所带来的技术效果可参见第一方面或第二方面中不同设计方式所带来的技术效果,此处不再赘述。

本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1所示为本发明实施例提供的卷积神经网络的结构示意图;

图2所示为本发明实施例提供的视频处理系统的结构示意图;

图3所示为本发明实施例提供的视频编码装置的结构示意图;

图4所示为本发明实施例提供的视频解码装置的结构示意图;

图5所示为本发明实施例提供的一种计算机结构示意图;

图6所示为本发明实施例提供的一种视频处理的方法的流程图。

具体实施方式

为了使本申请的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

为了更方便地和更容易地介绍本发明实施例的技术方案,首先说明一下在后续技术方案中可能用到的技术概念、方法或者算法等内容。

卷积神经网络(convolutionalneuralnetwork,cnn)是一种高效的基于神经网络的识别方法,cnn通常用于图像特征提取,得到一个特征向量,利用分类器实现分类效果。cnn通常可以包括卷积层、池化层、全连接层以及分类器,下面分别进行介绍。

1,卷积层

在cnn的一个卷积层中,上一层的特征图与卷积核进行卷积,组合这些卷积运算,然后通过一个激活函数可以得到一个输出特征图,其数学表达式可以为:

其中,表示第l层的第j_个特征图,f(.)表示激活函数,mi代表选择的l-1层的特征图的集合,表示第j个特征图对应的偏置项,表示第l层第j个特征图与第l-1层第i个特征图连接之间的卷积核,“*”表示卷积运算。这里激活函数可以使用relu,其数学表达式可以为:

f(x)=max(0,x)(2)

为了更容易理解,下面举个具体例子来说明卷积层的操作过程,假设第l-1层的第i个特征图为:

第l层第j个特征图与第l-1层第i个特征图连接之间的卷积核为:

那么卷积的结果就是让上滑动,换言之,就是所有2×2连续子矩阵做“对应元素积之和”运算,所以此时的结果为:

假设选择的特征图的集合mi中仅有1个特征图,第j个特征图对应的偏置项取值为1,则最终输出的l层的第j_个特征图为:

小结:卷积层的参数为卷积核的权重wij和偏置项参数bj。卷积核的权重wij用一些不同的小随机数进行初始化,如[0,0.1]范围内不同的随机数。

2,池化层

池化层又可以称为采样(sub-sampling)层。在cnn中有n个输入图就有n个输出图,只是每个输出图可能会变小了,池化层操作的数学表达式可以为:

其中,表示第l层的第j_个特征图,down(.)表示池化操作,即取某个n×n小窗口中像素的均值来代替这个n×n小窗口的像素值(平均池化),或者取n×n小窗口中最大的像素值来代替这个n×n小窗口的像素值(最大池化)。为第l层第j个特征图对应的权重系数,为其对应的偏置。

为了更容易理解,下面举个具体例子来说明池化层的操作过程,假设第l-1层的第j个特征图为:

池化窗口大小为2×2,则按照池化窗口大小将分割成6块不相交的2×2的小矩阵,对每个块中所有元素做求和平均操作,该过程称为平均池化。如果对每个块中所有元素做求和取最大值,则过程称为最大池化。平均池化的像素值为:

最大值池化的像素值为:

若采用最大值池化,则第l层的第j个特征图为:

小结,池化层的参数为特征图权重βj和对应的偏置项参数bj。

3,全连接层

全接连层为上一层的所有节点与下一层的所有节点都相连,每个相连节点之间都有一个权重参数,如图所示1为一个简单的全连接层,l1层有三个普通节点和一个偏置节点,标上“+1”的圆圈被称为偏置节点。l2层的每个普通节点都与l1层的所有节点相连,每个相连节点之间都会有一个权重参数,以l2层的输出为例,l2层第一个节点的输出的数学表达式可以为:

其中,为l1层的第一个节点与l2层的第一个节点之间的权重参数,为l1层的第二个节点与l2层的第一个节点之间的权重参数,为l1层的第三个节点与l2层的第一个节点之间的权重参数,为l1层的偏置节点与l2层的第一个节点之间的权重参数。f(.)表示激活函数,和卷积层一样,采用relu。以此类推,可以得到l2层第二个、第三个节点的输出

也就是说,其l3层的输入的数学表达式为:

假设用wl-1表示l-1层与l层之间的权重参数的集合,用bl-1表示l-1层与第l层的偏置项参数的集合,则第l个全连接层的输出可简单表示为:

xl=wl-1xl-1+bl-1(15)

小结,全连接层的参数为权重参数的集合w和偏置项参数b。

4,分类器

cnn一般与分类器(又可以称为softmax分类器或者softmax层)相连实现分类效果,而softmax是没有参数的,只是将最后一个全连接层的输出进行归一化,将结果映射到[0,1]范围。假设共有n类不同的自适应采样分辨率,则最后一个全连接层的节点数目为n,其输出值分别为x1,…,xn,那么在softmax层的操作是:

xi=xi-max(x1,...,xn)(16)

其中,pi值最大的下标i标识了样本所属的类别。

为了更容易理解,下面举个具体例子来说明softmax层的操作过程,假设共有6种不同的采样分辨率,则最后一个全连接层的节点数目为6,某个待测试样本在最后一个全连接层的输出值为[-1.5,4,6,3,1,2.4],则经过softmax层归一化操作后,得到:[-7.5,-2,0,-3,-5,-3.6]。再将结果映射到[0,1]范围内,得到:[0.001,0.111,0.820,0.041,0.006,0.022],其中p3值最大,那么该样本的采样分辨率就取第3个类别的采样分辨率。

接着,介绍本发明实施例提出的视频处理的系统,本发明的视频处理的系统,如图2所示,包括:视频编码装置201、存储装置202和视频解码装置203。主要应用在高效传输高质量视频内容的方案,特别传输通道带宽消耗不大的场景下,通常来说,视频编码装置201服务器侧的设备,视频解码装置203属于终端侧的设备。服务器侧的设备和终端侧的设备通过网络进行通信和传输视频内容,视频内容可以具体为视频流或者视频文件,每个视频内容可以包括多个视频分片,视频编码装置201在进行机器学习获得自适应分辨率或者采样,视频解码装置在进行重构过程中均是一个视频分片一个视频分片的处理,视频编码装置201在进行编码时,可以对一个视频分片进行编码,也可以对视频内容包含的多个视频分片或所有视频分片进行统一编码,但是编码的过程是和对一个视频分片编码的过程是相同的,因此在本发明实施例中,视频编码装置201或者视频解码装置203均以一个视频分片为例进行说明各个步骤或者功能的。视频编码装置201接收第一视频分片,这里的第一视频分片也可以称作为原始的视频分片,该原始的视频分片指的是视频编码装置接收到的视频分片,并对第一视频分片进行预处理操作,第一视频分片的分辨率为初始分辨率,这里的初始分辨率也可以称作为原始分辨率,指的是视频编码装置接收到的视频分片的分辨率。预处理可以包括通过机器学习获得自适应采样分辨率,该自适应采样分辨率比初始分辨率低,这样每个视频分片的自适应采样分辨率都是适应该视频分片最佳的采样分辨率。预处理操作还可以包括根据自适应采样分辨率,对第一视频分片进行采样,获得第二视频分片,并通过第二视频分片和第一视频分片进行对比,获得辅助参数。视频编码装置201通过预处理后,获得了第二视频分片和对应的辅助参数,第二视频分片指的是视频编码装置对第一视频分片经过采样后的视频分片,在后续的各个实施例说明中,也称为采样后的视频分片。视频编码装置201在获得辅助参数时具体进行如下处理:恢复第二视频分片的分辨率为初始分辨率,这样可以获得第四视频分片,第四视频分片指的是将第二视频分片恢复为初始分辨率的视频分片,在后续的各个实施例说明中,也称为恢复后的视频分片。视频编码装置201然后将第一视频分片的图像和第四视频分片的图像相减,获得相减的差值,这个差值为残差图像。接着视频编码装置201分别对每个所述残差图像进行编码处理,获得每个所述残差图像的辅助信息,这样辅助参数还包括所有的残差图像的辅助信息。视频编码装置201在获得辅助参数后,就可以对第二视频分片和对应的参数进行编码处理,形成第三视频分片,第三视频分片指的是视频编码装置对第二视频分片经过编码后的视频分片,在后续的各个实施例说明中,也可以称为编码后的视频分片。视频编码装置201将第三视频分片发送给视频解码装置203或者发送给存储装置202,存储装置202可以为点播存储装置,用于存储第三视频分片。当对端的视频解码装置203从视频编码装置201或存储装置202获得了第三视频分片,可以对第三视频分片进行解码,获得第二视频分片和包含自适应采样分辨率的辅助参数。然后视频解码装置203就可以根据第二视频分片和包含自适应采样分辨率的辅助参数,对该第二视频分片进行视频重构,获得第六视频分片,第六视频分片指的是视频编码装置对第二视频分片经过视频重构后的视频分片,在后续的各个实施例说明中,也称为重构后的视频分片,第六视频分片的分辨率为初始分辨率。

如图3所示,本发明实施例提出的一种视频编码装置201的例子,视频编码装置包括:收发器2011、机器学习模块2012、采样模块2013、辅助参数生成模块2014和编码器2015。其中,收发器2011,用于接收第一视频分片,第一视频分片的分辨率为初始分辨率,通常来说,视频编码装置接收的是初始的视频内容,初始的视频内容包含多个第一视频分片,本发明实施例的视频编码装置或者视频解码装置是以处理一个视频分片为例来进行说明的,也就是说,这里的收发器2011,也可以用于接收初始的视频内容。机器学习模块2012可以具体为cnn模块、神经网络模块或者其它机器学习模块等,这里不做限制。机器学习模块2012具体用于根据机器学习模型的模型参数,利用所述机器学习模型获得第一视频分片的自适应采样分辨率,所述自适应采样分辨率低于所述初始分辨率,这里的模型参数通常是经过机器学习模块训练过的模型参数,机器学习模块所采用的机器学习模型可以有多样,比如,采用cnn模型,则此时机器学习模块为cnn模块,采用神经网络模型,则此时机器学习模块为神经网络模块。采样模块2013用于根据所述自适应采样分辨率,对所述第一视频分片进行采样,获得第二视频分片;辅助参数生成模块2014用于根据第一视频分片和第二视频分片,获得辅助参数,辅助参数包含所述第一视频分片的自适应采样分辨率。编码器2015,用于将所述采样后的视频分片和所述辅助参数进行编码处理,形成第三视频分片。收发器2011,还用于将所述第三视频分片发送给视频解码装置。收发器2011、机器学习模块2012、采样模块2013、辅助参数生成模块2014和编码器2015可以分别为独立装置,此时视频编码装置201就集成或组合了这五个独立装置,此时该视频编码装置201可能是一个逻辑设备,也有可能是一个物理设备。收发器2011、机器学习模块2012、采样模块2013、辅助参数生成模块2014和编码器2015也可以不是独立设备,而是视频编码装置201的五个内部结构单元,该视频编码装置201为物理设备。

如图4所示,本发明实施例提出的一种视频解码装置203的例子,视频解码装置203包括:接收单元2031,用于接收第三视频分片;解码器2032,用于对所述第三视视频分片进行解码,获得第五视频分片和辅助参数,所述第五视频分片的分辨率为自适应采样分辨率,所述辅助参数包含所述自适应采样分辨率;重构单元2033,用于根据所述辅助参数,对所述第五视频分片进行重构,获得第六视频分片,所述第六视频分片的分辨率为初始分辨率,所述初始分辨率高于所述自适应采样分辨率。重构单元在具体实现时,可以用于对所述每个残差图像的辅助信息进行反编码处理,分别恢复出每个残差图像;根据所述每个残差图像,获取初始分辨率;根据所述每个残差图像、所述初始分辨率和所述自适应采样分辨率,采用插值计算,将所述第五视频分片的每个图像分别重构为所述初始分辨率的图像。

编码器2015及解码器2032可根据视频压缩标准(例如,高效率视频编解码h.265标准)而操作,且可遵照hevc测试模型(hm)。h.265标准的文本描述itu-th.265(v3)(04/2015)于2015年4月29号发布,可从http://handle.itu.int/11.1002/1000/12455下载,所述文件的全部内容以引用的方式并入本文中。

或者,编码器2015及解码器2032可根据其它专属或行业标准而操作,所述标准包含itu-th.261、iso/iecmpeg-1visual、itu-th.262或iso/iecmpeg-2visual、itu-th.263、iso/iecmpeg-4visual,itu-th.264(还称为iso/iecmpeg-4avc),包含可分级视频编解码(svc)及多视图视频编解码(mvc)扩展。应理解,本发明的技术不限于任何特定编解码标准或技术。

图5所示为本发明实施例提供的计算机设备示意图。计算机设备500包括至少一个处理器51,通信总线52,存储器53以及至少一个通信接口54。

处理器51可以是一个通用中央处理器(cpu),微处理器,特定应用集成电路(application-specificintegratedcircuit,asic),或一个或多个用于控制本发明方案程序执行的集成电路。

通信总线52可包括一通路,在上述组件之间传送信息。所述通信接口54,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(ran),无线局域网(wirelesslocalareanetworks,wlan)等。

存储器53可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。

其中,所述存储器53用于存储执行本发明方案的应用程序代码,并由处理器51来控制执行。所述处理器51用于执行所述存储器53中存储的应用程序代码。

在具体实现中,作为一种实施例,处理器51可以包括一个或多个cpu,例如图5中的cpu0和cpu1。

在具体实现中,作为一种实施例,计算机设备500可以包括多个处理器,例如图5中的处理器51和处理器58。这些处理器中的每一个可以是一个单核(single-cpu)处理器,也可以是一个多核(multi-cpu)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。

在具体实现中,作为一种实施例,计算机设备500还可以包括输出设备55和输入设备56。输出设备55和处理器51通信,可以以多种方式来显示信息。例如,输出设备55可以是液晶显示器(liquidcrystaldisplay,lcd),发光二级管(lightemittingdiode,led)显示设备,阴极射线管(cathoderaytube,crt)显示设备,或投影仪(projector)等。输入设备56和处理器51通信,可以以多种方式接受用户的输入。例如,输入设备56可以是鼠标、键盘、触摸屏设备或传感设备等。

上述的计算机设备500可以是一个通用计算机设备或者是一个专用计算机设备。在具体实现中,计算机设备500可以是台式机、便携式电脑、网络服务器、掌上电脑(personaldigitalassistant,pda)、移动手机、平板电脑、无线终端设备、通信设备、嵌入式设备或有图中53中类似结构的设备。本发明实施例不限定计算机设备500的类型。

示例性的,在本实施例中,视频编码装置201或者视频解码装置203是以功能单元的形式来呈现。这里的“单元”可以指特定应用集成电路(application-specificintegratedcircuit,asic),电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。例如:图3中的视频编码装置可以为图5所示的设备,视频编码装置的存储器中存储了一个或多个软件模块。视频编码装置可以通过处理器以及存储器中的程序代码来实现软件模块,实现对视频分片的自适应采样和编码处理。

又或者,图4中的视频解码装置可以为图5所示的设备,视频解码装置的存储器中存储了一个或多个软件模块。视频解码装置可以通过处理器以及存储器中的程序代码来实现软件模块,实现对视频分片的重构。

如图6所示,本发明实施例提供的一种视频处理的方法,该方法可以应用于图2所示的网络架构中。该方法包括:

步骤601:视频编码装置的机器学习模块利用样本视频分片和设定的分类结果进行训练,获得训练后的模型参数。

视频编码装置的收发器接收了样本视频分片和设定的分类结果,将样本视频分片和设定的分类结果发送给机器学习模块。设定的分类结果是对样本视频分片进行事先给定的分类结果,可以是有专家经验给出的,需要说明的是:如果事先给定的分类结果具体为样本视频的类别,比如:i类,ii类,iii类,此时后续在各个阶段训练出来的分类结果也是视频分片的类别,并且视频编码装置会根据该视频分片的类别,确定该视频分片的自适应采样分辨率;如果事先给定的分类结果具体为样本视频的自适应采样分辨率,比如:i类,ii类,iii类,此时后续在各个阶段训练出来的分类结果也是视频分片的自适应采样分辨率。机器学习模块根据初始的模型参数训练样本视频分片,获得第一次训练的分类结果。机器学习模块对第一次训练的分类结果和设定的分类结果进行训练,获得第一次训练的模型参数。然后机器学习模块根据第一次训练后的模型参数训练该样本视频分片,获得第二次训练的分类结果;机器学习模块对第二次训练的分类结果和设定的分类结果进行训练,获得第二次训练的模型参数。以此类推,重复上述过程,直到第n次训练的分类结果和设定的分类结果相同或者两者差值达到预定值,则此时第n次训练的模型参数就是训练后的模型参数,该训练后的模型参数可以用于后续对视频分片的训练过程。模型参数的训练过程是可选的,比如:机器学习模块在训练某个视频文件时,可以采用之前已经训练好的模型参数。

一个具体例子来说明:机器学习模块接收到视频分片,视频分片可以被人工标注的最适合的采样分辨率,以实际需要处理的4kp30的电影视频《阿凡达》为例,将该视频中的片段简单划分为动态打斗场景a和画面变化较少的趋于静态的场景b,可由人工观察视频,选取若干代表性的a、b类片段,作为训练样本,为了数据充分,一般各类的片段数目取10个以上。将这些片段输入到rvc系统中进行训练。在机器学习装置尝试不同的采样分辨率,观察后处理模块输出的视频,对比其与输入片段的主观质量差异,如果发觉两者之间几乎人眼感觉不出什么质量差异,就取此情况下分辨率为采样分辨率。比如4kp30的电影视频《阿凡达》的a类片段的最适合的采样分辨率可能保持2k不变,而b类片段最适合的采样分辨率也许会降低到1080p。在后续内容中将进一步介绍详细的过程。

步骤602:视频编码装置的收发器接收到远端装置发送的原始视频内容,收发器将原始视频内容发送给机器学习模块,该原始视频内容可以为原始视频文件或者原始视频流,不管是视频文件或者原始视频流,都可以以视频分片的形式存在,一个视频文件或视频流可以包括多个视频分片,后续的过程(包括602-608)是以处理一个视频分片为例进行介绍的。

机器学习模块根据训练后的模型参数,对第一视频分片进行训练,获得训练后的分类结果,分类结果可以为第一视频分片的视频类型,分类结果也可以第一视频分片的自适应采样分辨率。如果分类结果为第一视频分片的类型,机器学习模块还可以根据类型第一视频分片的确定该第一视频分片的自适应采样分辨率。自适应采样分辨率为视频编码装置对视频文件的采样分辨率,对于不同类别的视频分片,可以采用不同的采样分辨率,自适应采样分辨率低于初始分辨率。那么下面以视频分片为例进行描述。由于视频分片可能存在多个,为了能够区分不同的视频分片和每个视频分片对应的自适应分辨率,初始分辨率,以及后续的恢复后的视频分片,采样后的视频分片,封装后的视频文件,还原后的视频分片或者重构后的视频分片,给上述不同阶段的视频分片和分辨率进行标号,同一个标号的视频分片是同一个原始视频分片的不同阶段的视频分片和分辨率标号。例如:原始视频分片的标号为2,即原始视频分片x2,采样后的视频分片x2’,恢复后的视频分片x2‘’,封装后的视频文件x2”’,还原后的视频分片x2‘”’或自适应分辨率y2

例如:机器学习装置可以对视频分片进行机器学习训练,训练出该视频分片对应的类型,根据不同视频分片的类型确定视频分片对应的采样分辨率。比如,可以按照视频分片的场景进行划分,对于视频分片处于静态场景的,或者场景变化不大的情况下,可以认为该视频分片为i类分片,对于视频分片处于动态场景的,可以将该视频分片划分为ii类分片,对于视频分片既有静态场景,又有视频动态场景,可以将该视频分片划分为iii类分片。然后将不同的类型的视频分片确定不同的采样分辨率,比如:对于i类分片,采用的是720p的分辨率,对于ii类分片,采用的是2k的分辨率,对于iii类分片,采用的是1080p的分辨率。

由于对于不同场景的分片,可以自适应的采用不同规定采样分辨率,这样能够降低视频流在传输过程中消耗的带宽,也能保证分片在客户端侧重构时尽可能还原视频流。

步骤603:采样模块根据预测出的自适应采样分辨率,对原始视频分片进行采样处理,获得采样后的视频分片。采样模块可以将原始的视频分片和采样后的视频分片发送给辅助参数生成模块。

步骤604:辅助参数生成模块结合原始的视频分片与采样后的视频分片,计算出多条辅助信息,并获得辅助参数,辅助参数包含了多条辅助信息和自适应采样分辨率。

辅助参数生成模块先将采样后的视频分片恢复为初始分辨率的视频分片,获得恢复后的视频分片;然后分别将原始的视频分片的每个图像和对应的恢复后的视频分片的每个图像相减,分别获得相减的每个差值,该差值为残差图像,其中,原始的视频分片的每个图像和对应的恢复后的视频分片的每个图像的标号是相同的;然后对每个所述残差图像采用进行编码处理,分别获得每个所述残差图像的辅助信息,也可以说,辅助信息也可以为所述原始的视频分片的图像和对应的所述恢复后的视频分片的图像的差异内容。

比如:在视频编码装置经过机器学习模块处理后对输入视频a进行采样,得到分辨率降低的视频b;比较原始视频a和采样后的视频b,计算低失真的辅助信息。辅助信息最简单的计算方式是将视频b中每一帧图像b采用某种插值方式使分辨率恢复到与初始分辨率,分别得到每一帧图像c,然后将原始视频a中对应的那一帧图像a减去c,得到的残差视频图像d,残差视频图像d中可能会包含较多连续的0,之后将图像b对应的最适合的采样分辨率添加到d的末尾,采用简单的熵编码算法,便可得到压缩比很高但失真度较低的辅助信息。

步骤605:收发器将采样后的视频分片和辅助参数发送到编码器中,经过编码器进行编码和封装。编码器可以将辅助参数添加到封装后的视频分片中,比如:辅助参数承载在编码后的视频分片中的附加字段上。

为了方便描述,本发明实施例一个视频分片为例来说明编码器的编码和封装的过程,也就是说编码器对每个视频分片的分别进行编码和封装。本发明实施例,编码器还可以对一个视频内容包含的多个视频分片或者所有视频分片进行一次性地编码和封装,具体编码或封装的过程和对一个视频分片进行编码或封装的过程是相同的。

步骤606:编码器将封装后的视频分片通过网络发送到存储装置中,由存储装置存储该视频分片,或者将该将编码后的视频分片通过网络发送到终端侧的解码器中。

步骤607:解码器接收到封装后的视频分片,对视频分片进行解码,获得采样后的视频分片和辅助参数,将采样后的视频分片和辅助参数发送给视频解码装置进行处理。

解码器可以从存储装置获取编码后的视频分片,也可以通过网络从编码器获取到编码后的视频分片。

步骤608:视频解码装置接收采样后的视频分片和辅助参数,根据采样后的视频分片和辅助参数,重构初始分辨率的视频分片。

视频解码装置对所述每个残差图像的辅助信息进行反编码处理,分别恢复出每个残差图像;根据每个残差图像,获取初始分辨率;然后根据所述每个残差图像和所述自适应采样分辨率,采用插值计算,将所述第五视频分片的每个图像分别重构为初始分辨率的图像。

本发明实施例中重构初始分辨率的视频分片的方式可以有多种,比如:差值相加、稀疏编码重构或者与采样方法向对应的机器学习等方法,由于辅助信息中包含着每一帧图像的自适应采样分辨率,在重构过程中,可以将其结合对应的低分辨率视频信息精确恢复出原分辨率视频信息。本发明的实施例在保持视频主观质量不变的情况下,避免了现有技术对同样分辨率的视频采用固定采样分辨率造成的码率浪费或者原有人工对片源筛选分类,每类固定采样分辨率造成的耗时费力、无法自动化的缺陷。

比如:原始4kp30的视频,其中的两帧图像a和b经过机器学习模块训练得到对应的自适应采样分辨率分别为2k的图像c和1080p的图像d,在采样模块采用最简单的差值相减方式得到残差图像e和f,添加自适应分辨率信息后进行熵编码,生成辅助信息。然后根据辅助信息,进行反熵编码,恢复出残差图像e和f和这两者对应的最适合的采样分辨率,然后进行差值相加操作:即根据各自最适合的采样分辨率将图像c、d采用插值方式上采样到4k的分辨率,然后各自与残差图像e、f相加,近似恢复出图像a和b。

机器学习模型也可以称为机器学习算法,机器学习模型有多种,比如:cnn或者颜色直方图特征结合k近邻(k-nearestneighbor,简称knn)分类器等等。下面以机器学习算法为cnn为例,进一步说明书上述视频重构的方法的各个步骤,对于步骤301而言,该过程可以具体包括:

a.构造训练样本集,cnn模块可以选取实际业务中不同类型的片源(目前可以将片源划分为动画类、静态类和动态类,或者i类、ii类和iii类),再将片源划分成多个的视频分片,其中,划分规则可以为一定的时间间隔、图像数目间隔或者文件分块容量大小,这些视频分片即为样本视频分片。接着对这些视频分片人工标注最适合的采样分辨率,这些不同的采样分辨率即为设定的分类结果,这样就构造了训练样本集。也就是说,在这个例子中,分类结果直接为自适应采样分辨率,如果分类结果为视频分片的类别,该过程也是类似的。

例如:一种简单快速标注视频分片最适合的采样分辨率的过程如下:对某一分辨率的不同类型的片源(动画类、静态类、动态类)划分而成的视频分片再人工进行分类,分为偏静止、偏运动以及混合型三类,不同类别的视频分片直接人工根据经验设置一个采样分辨率,则最后的结果是每个不同的视频分片都标注一个最适合的采样分辨率。

虽然将不同的片源分为偏静止、偏运动和混合3种类型,但是静态类片源中也会有运动的场景,比如室内访谈类节目,总体上将其归属为静态类,但也会存在部分运动的场景;同理,动态类片源,如实际的电影《阿凡达》,其中也存在部分静止场景。而实际上按视频分片对片源进行划分,不会那么巧合划分到的全是趋于静止的或者全是在运动的分片,因此划分为偏静止、偏运动以及两者混合共三种类型。如下表1所示的不同类型的视频分片标注的自适应采样分辨率的分类结果的一个例子。

表1

如上表1所示,4k动态类中偏静止的视频分片,直接将其采样分辨率人工标注为1080p,即采样分辨率为1080p;4k动态类中偏运动和混合类的视频分片,直接将其采样分辨率人工标注为2k,即采样分辨率标注为2k。

b.具体训练过程

b1,构造输入样本集。训练样本集中每个视频分片包含一定数目的yuv图像,按一定的数目间隔抽取图像,将这些yuv图像横向或者纵向拼接为一个大yuv图像,例如:每个视频分片中包含30个图像,抽取间隔为10,则会得到3张图像,将这些图像横向或者纵向拼接为一个大图像。再将大yuv图像缩放到适合输入到cnn模块的尺寸。训练样本集中每个视频分片对应的大图像和对应的人工标注好的采样分辨率形成最终的输入样本。假设训练样本集中某个视频分片对应的大图像缩放到适合输入到cnn模块的尺寸图像为x,用y表示该视频分片对应的人工标注好的采样分辨率类别,那么该视频分片形成的输入样本可表示为(x,y),如果训练样本集中共有m个视频分片,最终得到的m个输入样本集可表示为:{(x1,y1),(x2,y2),…,(xm,ym)}。

b2,构造cnn模块的网络结构。cnn模块的网络结构可根据实验效果自由组合,但至少包含1个以上的卷积层和池化层。在多层卷积和池化后,与全连接层相连,之后再与softmax层相连。卷积层、池化层和全连接层的个数为1个或多个,例如:一种cnn模块的网络结构包含了5个卷积层、3个池化层(第1、2、5个卷积层后各紧跟一个池化层)和3个全连接层,最后与softmax层相连。为了加快计算速度,提高效率,可以将卷积层、池化层、全连接层的计算分布在2个gpu上。假设输入图像尺寸缩放到224×224,分y、u、v三个颜色通道,则将输入图像连接到第1个卷积层,该层包含11×11大小的卷积核96个,每个gpu上各分配48个;第1个卷积层后紧跟1个最大值池化层,池化窗口大小为2×2。之后连接到第2个卷积层,该层共包含5×5的卷积核256个,每个gpu上各分配128个;第2个卷积层后紧跟1个最大值池化层,池化窗口大小为2×2。之后连接到第3个卷积层,共有3×3大小的卷积核384个,每个gpu上192个。之后直接连接到第4个卷积层,该层也共有3×3大小的卷积核384个,每个gpu上192个;之后直接连接到第5个卷积层,该层共有3×3大小的卷积核256个,每个gpu上128个;第5个卷积层后紧跟1个最大值池化层,池化窗口大小为2×2;之后连接到1个有4096个节点(即4096维的列向量)的全连接层,每个gpu上分配2048个节点;之后再连接到第2个全连接层,该层也共有4096个节点(即4096维的列向量),每个gpu上分配2048个节点;之后再连接到第3个全接连层,该层节点数n和分类数目保持一致,假设采样分辨率共分为5类,那么该层节点数n=5,该层节点分布在其中一个gpu上;最后,将第3个全接连层与softmax分类器相连,softmax的输出为n维(和采样分辨率的类别数目保持一致)的列向量,输出的每一维都是输入图像属于该类别的概率。

b3,初始化cnn模块的模型参数。cnn模块的模型参数分为两种:一种是预先设定好的,包括每个卷积层的卷积核个数、池化层是采用平均池化或者最大值池化,例如:上面的例子中采用的是最大值池化。另一种模型参数是需要训练得到的,包括卷积层、池化层和全连接层的参数,具体的过程同前述描述cnn中包含的卷积层、池化层和全连接层的参数训练过程,以及下面b4的参数训练的例子。

b4,模型参数的训练。cnn模块将输入样本集{(x1,y1),(x2,y2),…,(xm,ym)}中的每个样本依次输入到构造好的且初始化参数的cnn模块中,计算得到初始的实际输出(初始化的分类结果)。假设cnn模块一共有n层(这n层包括卷积层、池化层、全连接层),第l层参数表示为wl,第l层偏置项表示为bl,所有的这n层的参数用w表示,所有的这n层的偏置项用b表示;那么第i个输入样本(xi,yi)的实际输出可以表示为w和b相关的函数,即有fw,b(xi),而实际输出和标注的xi的自适应采样分辨率所属的类别yi之间的差异可用代价函数表示:

而对所有m个输入样本,定义整体的代价函数为所有m个样本的代价函数的均值,即为:

然后确定最优的参数w和b使j(w,b)取最小值,可以通过下面的过程来确定最优的参数w和b:

首先,第l层参数表示为wl,第l层偏置项表示为bl,计算其偏导数:

然后,利用偏导数更新wl和bl

其中,α称为学习速度,取值范围一般为[0.01,0.1],为一较小的实数。然后通过反向传播(backpropagation,bp)计算代价函数j(w,b)对每层参数的偏导数,bp算法是将误差信息从最后一层到第一层反向传播,逐层调整,直至达到终止条件,具体过程如下:

对训练集中的输入样本(xi,yi)输入到构造好的且初始化参数的cnn模块中,正向逐层计算,得到初始的实际输出fw,b(xi);计算fw,b(xi)和xi的自适应采样分辨率所属的类别yi之间的差异,即代价函数j(w,b;xi,yi);由于得到了代价函数结果,便可按公式(19)求得最后一层的偏导数,即最后一层的残差,并按照式(20)和式(21)更新最后一层的权重参数和偏置项参数;接着将这个残差传递到倒数第二层,继续按式(19)计算倒数第二层的偏导数,并按照式(20)和式(21)更新最后一层的权重参数和偏置项参数;依次类推,直到计算出第一层的偏导数,并更新第一层的权重参数和偏置项参数,如此便完成了一次整体参数w和b的迭代。

重复上述步骤使代价函数j(w,b;xi,yi)逐步减小,如果此时代价函数小于一个预设的很小的值(如0.001),就终止迭代更新过程,取此次迭代更新后的参数作为整个cnn的当前最优参数;或者重复更新的次数达到了预设的最大迭代次数,此时也终止迭代更新操作,取最后一次迭代后的参数作为整个cnn的当前最优参数。将训练集中其余的输入样本依次输入到cnn模块中,按照步骤a至c计算更新cnn各层的权重参数和偏置项参数;当训练完所有m个输入样本后,得到cnn模块最终的最优权重参数和偏置项参数。

对于步骤602而言,该过程可以具体包括:

a.对于待预测的视频分片,和训练过程中构造输入样本集一样,按一定的数目间隔抽取图像,将这些图像横向或者纵向拼接为一个大图像,并将此大图像缩放到适合cnn模块的输入尺寸,即得到图像x,将图像x输入到已训练好模型参数的cnn模块中。

b.在已训练好各层权重参数和偏置项参数的cnn模块上,对图像x按既定的cnn的网络结构进行多层卷积和池化操作,连接到全连接层,输入到softmax分类器中,计算图像x最终的预测值f(x)。

c.预测值f(x)以最大的概率属于哪类采样分辨率,就以该采样分辨率作为x对应的待预测视频分片最终的采样分辨率。举例如下:

假设采样分辨率共分为5类,分别为480p,540p,720p,1080p,2k,分别对应第1类,第2类,第3类,第4类和第5类;softmax的输出是一个5维的列向量形式,对于训练集中的输入样本(xi,yi),如果标注yi属于第3类的采样分辨率,那么我们期望softmax的输出是[0,0,1,0,0],即列向量中的第3个元素值为1,其余元素值为0。而对于待预测的样本,如果x经过softmax后最终预测值f(x)为[0.1,0.2,0.6,0.03,0.07],其第3个元素的值最大,也就是说其以最大的概率属于第3类采样分辨率,那就将第3类采样分辨率720p作为该视频分片最终的采样分辨率。

对步骤603的具体过程为:

标号为i的视频分片xi经过训练后得到其自适应采样分辨率yi,cnn模块将视频分片xi和自适应采样分辨率yi发送到采样模块,cnn模块在发送前确认xi和y的标号i是否一致,如果不一致,表明这两者对应的不是同一个视频分片,不进行处理。

标号为i的视频分片xi经过步骤302后得到其自适应采样分辨率yi。假设x中包含标号为1~n的共n张图像,那么按照从小到大的标号顺序对这n张图像进行采样,将这n张图像的分辨率变为yi,这n张采样后的图像就组成了低分辨率的采样后的视频分片xi’

这里的采样操作可以包括:对于一幅图像i的长宽分别为m、n,采样分辨率yi的长宽为m’、n’,那么将图像i中每个(m/m’)×(n/n’)的矩形窗口的图像变成一个像素点,而这个像素点的值就取矩形窗口内所有像素点的均值,最终得到的图像i’的分辨率就为yi

步骤604的具体过程可以为:

采样模块将视频分片xi和对应的自适应采样分辨率yi以及采样后分辨率降低的视频分片xi’发送到辅助信息生成模块。采样模块发送前确认视频分片xi、自适应采样分辨率yi以及采样后的视频分片xi’的标号i是否一致,如果不一致,表明这三者对应的不是同一个视频分片,不进行处理;如果一致,就计算辅助信息,计算辅助信息,获得辅助参数的过程包括:

a.采样后的视频分片xi’中包含着标号从1到n的自适应分辨率为yi的共n幅图像,按照顺序采用双线性插值方法将这n幅图像的分辨率从yi恢复到原始视频分片中图像的分辨率,得到恢复后的视频分片xi”

b.按标号为1到n的顺序,将原始视频分片xi中与恢复后的视频分片xi”中标号相同的图像相减,得到标号为1到n的共n幅残差图像;

c.按标号顺序对这n幅残差图像进行编码处理,编码处理包括预测编码、变换编码、量化和熵编码处理中的一个或多个,编码后的结果就是辅助信息;

d.将yi添加到辅助信息的末尾,得到最终的辅助参数。也就是说原始视频分片xi的辅助参数中包含着两部分:一部分是辅助信息,另一部分是原始视频分片xi对应的自适应采样分辨率yi

步骤605的具体过程为:

编码器接收到采样后的视频分片xi’和对应的辅助参数后,对采样后的视频分片xi’和对应的辅助参的编码过程可以一起进行,包括:

a.编码器读取辅助参数中自适应采样分辨率yi,将该适应采样分辨率yi作为分辨率降低的采样后的视频分片xi’的编码参数;

b.编码器根据上述编码参数,对采样后的视频分片xi’依次进行预测编码、变换编码、量化和熵编码,形成二进制的码流文件;

c.编码器对二进制码流文件进行封装,将辅助参数作为附加信息写入到封装格式的空白字段中,这个过程就实现了对辅助参数的编码,封装后形成的文件记做xi”’。具体以h.265编解码标准为例,h.265包含网络适配层(networkabstractlayer,nal),主要任务是对编码后形成的二进制码流文件进行封装,并进行必要的标识,使其可以更好的适应复杂多变的网络环境。nal共包含63个字段,前47个字段都描述了对二进制码流文件的封装信息,第48~63个字段都是空白字段。采用h.265编解码标准时,在对采样后的视频分片xi’编码后的二进制码流文件封装后,选择第48~63个字段中的某个字段,将辅助参数写入这个字段,如此便实现了对辅助参数的编码,封装后的视频文件记做xi”’

从编码过程来看,采样后的视频分片xi’编码后形成了二进制码流文件,对应的辅助参数写在了对二进制码流文件封装的空白字段,这两者是绑定在一起的,形成封装后的视频文件xi”’

步骤607的具体过程为:

解码器接收了封装后的视频文件xi‘”,对封装后的视频文件xi‘”进行解码。具体解码过程如下:

a.解码器对封装后的视频文件xi‘”进行解封装,得到二进制码流文件和辅助参数。以h.265编解码标准为例,依次读取nal的前47个字段,从前47个字段中解析出二进制码流文件。接着再依次读取48~63个字段,如果其中某个字段不是空白字段,则这个字段就保存着辅助参数,直接将其读取出来,就得到了辅助参数。

b.对二进制码流文件进行反熵编码、反量化、反变换编码和反预测变换操作,恢复出采样后的视频分片xi’

由于在编码过程中,采样后的视频分片xi’和视频分片xi的辅助参数是绑定在一起的,解码器解码出来的采样后的视频分片xi’和视频分片xi的辅助参数也是对应好的。

步骤608的具体过程可以为:

a.视频解码装置获取辅助参数中的自适应采样分辨率yi

b.视频解码装置获取辅助参数中的辅助信息,对辅助信息依次进行反编码处理,该反编码处理包括反熵编码、反量化、反变换编码和反预测编码中的1个或多个,得到视频分片xi中标号从1到n的共n幅图像的残差图像;

c.视频解码装置获取残差图像的宽w和高h,得到图像分辨率y=w×h,原视频分片xi中每幅图像的分辨率就是y;

d.采样后的视频分片xi’中包含着标号为1到n的共n幅图像,其分辨率均为自适应采样分辨率yi;视频解码装置从1到n采用双线性插值方法将xi’中的每幅图像的分辨率从yi改变到y,这n幅还原后的图像组成了还原后的视频分片xi‘”’

e.视频解码装置按顺序从1到n,将标号相同的还原后的视频分片xi‘”’中的图像与残差图像相加,得到重构后的图像,如将还原后的视频分片xi”’中的标号为j图像与标号为j的残差图像相加,得到标号为j的重构后的图像。按顺序处理完这n幅构后的图像,便组成了具有初始分辨率y的重构后视频分片。

例如:以一个初始分辨率为4k、包含着标号为1到100的共100张图像的原始视频分片xi为例来说明上述308的过程,假设原始视频分片xi自适应采样分辨率为2k,那么经过采样后的视频分片xi‘的分辨率就是2k,采样后的视频分片xi‘中同样包含着标号为1到100的共100张图像。

视频解码装置首先获取辅助参数中的自适应采样分辨率2k和辅助参数中的辅助信息,视频解码装置对辅助信息依次进行反熵编码、反量化、反变换编码和反预测编码,得到视频分片xi中标号从1到100的共100幅图像的残差图像;

视频解码装置首先获取上述100幅残差图像的宽w和高h,得到图像分辨率y=w×h,假设这里为4k,则原始视频分片xi中每幅图像的分辨率就是4k;

按照从1到100的顺序,视频解码装置将采样后的视频分片xi‘中的每幅图像采用双线性插值方法将分辨率从2k恢复为4k,这100张图像组成了还原后的视频分片xi‘”’

接着,按照从1到100的顺序,视频解码装置将还原后的视频分片xi‘”’中与残差图像集中标号相同的图像相加,得到最终重构后的图像,比如将还原后的视频分片xi‘”’中标号为50的图像与标号为50的残差图像相加,得到标号为50的重构后的图像,以此类推。从1到100依次处理完这100幅重构后图像,便组成了分辨率为4k的重构后的视频分片。

本发明实施例的构视频编码的方法使得重构后的视频在保持视频主观质量不变的情况下,相比传统的rvc视频重构方法,再降低至少5%的视频码率。并且避免传统rvc方案中对同样分辨率的视频采用固定采样分辨率造成的码率浪费或者原有人工对片源筛选分类,每类固定采样分辨率造成的耗时费力和无法自动化的缺陷。

需要说明的是:本申请中出现的“第一”、“第二”、“第三”、“第四”、“第五”或者“第六”并不是表示某种序列或者顺序,而仅仅只是一种代号,比如:第一视频分片和第二视频分片的“第一”或“第二”只是用来区分不同的视频分片而已。本领域内的技术人员应明白,本申请的实施例可提供为方法、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的设备。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令设备的制造品,该指令设备实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1