视频处理方法和装置、存储介质和电子装置

文档序号:1925591 发布日期:2021-12-03 浏览:12次 >En<

阅读说明:本技术 视频处理方法和装置、存储介质和电子装置 (Video processing method and apparatus, storage medium, and electronic apparatus ) 是由 樊鸿飞 成超 蔡媛 于 2020-05-29 设计创作,主要内容包括:本申请涉及一种视频处理方法和装置、存储介质和电子装置,其中,该方法包括:获取多个视频特征,其中,多个视频特征与目标视频中的多个视频片段一一对应,多个视频片段中的每个视频片段的视频长度均为目标长度;从多个视频片段中确定特征偏离度最小的目标视频片段,其中,特征偏离度用于表示第一视频特征和第二视频特征之间的偏离程度,第一视频特征为与多个视频片段中的一个视频片段对应的视频特征,第二视频特征为多个视频特征中除了第一视频特征以外的其他视频特征;将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线。本申请解决了相关技术中的视频处理方式存在由于视频片段选取不当所导致的R-D曲线预估精度过低的问题。(The application relates to a video processing method and device, a storage medium and an electronic device, wherein the method comprises the following steps: acquiring a plurality of video characteristics, wherein the plurality of video characteristics correspond to a plurality of video segments in a target video one to one, and the video length of each video segment in the plurality of video segments is the target length; determining a target video segment with the minimum characteristic deviation degree from a plurality of video segments, wherein the characteristic deviation degree is used for representing the deviation degree between a first video characteristic and a second video characteristic, the first video characteristic is a video characteristic corresponding to one video segment in the plurality of video segments, and the second video characteristic is other video characteristics except the first video characteristic in the plurality of video characteristics; and determining the rate-distortion curve corresponding to the target video segment as the rate-distortion curve corresponding to the target video. The method and the device solve the problem that the video processing mode in the related technology has the problem of low R-D curve prediction precision caused by improper video segment selection.)

视频处理方法和装置、存储介质和电子装置

技术领域

本申请涉及计算机领域,尤其涉及一种视频处理方法和装置、存储介质和电子装置。

背景技术

R-D(Rate-distortion,率失真)曲线是视频在编码过程中非常重要的一个“特征”,不同视频有不同的R-D曲线,并且,在编码器改变之后R-D曲线也会改变。

相关技术中,R-D曲线的预估方案一般有两种:

1)第一种方案是假设视频的帧与帧之间具有很强的相关性,在编码过程中,利用前几帧编码完的R-D结果,预估未来帧的R-D曲线;

2)第二种方案是通过对同一个视频、或者从视频中选取的视频片段进行多次编码,同时每次编码采用不同的码率设置,编码完成后可以得到预估的该视频的RD曲线。

虽然第二种方案相对于第一种方案可以得到精度更高的RD曲线,但是,如果视频片段选取不当,选取的视频片段不具备代表性,则会影响R-D曲线预估精度。

因此,相关技术中的视频处理方式,存在由于视频片段选取不当所导致的R-D曲线预估精度过低的问题。

发明内容

本申请提供了一种视频处理方法和装置、存储介质和电子装置,以至少解决相关技术中的视频处理方式存在由于视频片段选取不当所导致的R-D曲线预估精度过低的问题。

根据本申请实施例的一个方面,提供了一种视频处理方法,包括:获取多个视频特征,其中,所述多个视频特征与目标视频中的多个视频片段一一对应,所述多个视频片段中的每个视频片段的视频长度均为目标长度;从所述多个视频片段中确定特征偏离度最小的目标视频片段,其中,所述特征偏离度用于表示第一视频特征和第二视频特征之间的偏离程度,所述第一视频特征为与所述多个视频片段中的一个视频片段对应的视频特征,所述第二视频特征为所述多个视频特征中除了所述第一视频特征以外的其他视频特征;将与所述目标视频片段对应的率失真曲线确定为与所述目标视频对应的率失真曲线。

可选地,在获取所述多个视频特征之前,所述方法还包括:使用目标窗口,按照目标步长从所述目标视频中获取所述多个视频片段,其中,所述目标窗口的大小为所述目标长度。

可选地,获取所述多个视频特征包括:分别对所述多个视频片段中的每个视频片段进行关键帧抽取,得到与所述每个视频片段对应的关键帧;提取与所述每个视频片段对应的关键帧的图像特征,得到与所述每个视频片段对应的视频特征。

可选地,从所述多个视频片段中确定特征偏离度最小的所述目标视频片段包括:根据所述多个视频特征,确定与所述多个视频片段中的每个视频片段对应的所述特征偏离度;根据与所述每个视频片段对应的所述特征偏离度,从所述多个视频片段中确定特征偏离度最小的所述目标视频片段。

可选地,根据所述多个视频特征,确定与所述多个视频片段中的所述每个视频片段对应的所述特征偏离度包括:根据所述多个视频特征,确定与所述多个视频片段中的所述每个视频片段对应的特征差值,其中,所述特征差值为所述第一视频特征与所述第二视频特征之间的差值;根据所述特征差值,确定与所述每个视频片段对应的所述特征偏离度,其中,所述特征偏离度为所述特征差值的平方的平均值。

可选地,在将与所述目标视频片段对应的率失真曲线确定为与所述目标视频对应的率失真曲线之前,所述方法还包括:使用多个码率分别对所述目标视频片段进行编码,得到多个编码结果,其中,所述多个编码结果与所述多个码率一一对应;根据所述多个码率和所述多个编码结果,获取与所述目标视频片段对应的率失真曲线。

可选地,在将与所述目标视频片段对应的率失真曲线确定为与所述目标视频对应的率失真曲线之后,所述方法还包括:利用与所述目标视频对应的率失真曲线对所述目标视频进行编码,得到与所述目标视频对应的编码数据。

根据本申请实施例的另一个方面,提供了一种视频处理装置,包括:第一获取单元,用于获取多个视频特征,其中,所述多个视频特征与目标视频中的多个视频片段一一对应,所述多个视频片段中的每个视频片段的视频长度均为目标长度;第一确定单元,用于从所述多个视频片段中确定特征偏离度最小的目标视频片段,其中,所述特征偏离度用于表示第一视频特征和第二视频特征之间的偏离程度,所述第一视频特征为与所述多个视频片段中的一个视频片段对应的视频特征,所述第二视频特征为所述多个视频特征中除了所述第一视频特征以外的其他视频特征;第二确定单元,用于将与所述目标视频片段对应的率失真曲线确定为与所述目标视频对应的率失真曲线。

可选地,所述装置还包括:第二获取单元,用于在获取所述多个视频特征之前,使用目标窗口,按照目标步长从所述目标视频中获取所述多个视频片段,其中,所述目标窗口的大小为所述目标长度。

可选地,所述第一获取单元包括:抽取模块,用于分别对所述多个视频片段中的每个视频片段进行关键帧抽取,得到与所述每个视频片段对应的关键帧;提取模块,用于提取与所述每个视频片段对应的关键帧的图像特征,得到与所述每个视频片段对应的视频特征。

可选地,所述第一确定单元包括:第一确定模块,用于根据所述多个视频特征,确定与所述多个视频片段中的每个视频片段对应的所述特征偏离度;第二确定模块,用于根据与所述每个视频片段对应的所述特征偏离度,从所述多个视频片段中确定特征偏离度最小的所述目标视频片段。

可选地,所述第一确定模块包括:第一确定子模块,用于根据所述多个视频特征,确定与所述多个视频片段中的所述每个视频片段对应的特征差值,其中,所述特征差值为所述第一视频特征与所述第二视频特征之间的差值;第二确定子模块,用于根据所述特征差值,确定与所述每个视频片段对应的所述特征偏离度,其中,所述特征偏离度为所述特征差值的平方的平均值。

可选地,所述装置还包括:第一编码单元,用于在将与所述目标视频片段对应的率失真曲线确定为与所述目标视频对应的率失真曲线之前,使用多个码率分别对所述目标视频片段进行编码,得到多个编码结果,其中,所述多个编码结果与所述多个码率一一对应;第三获取单元,用于根据所述多个码率和所述多个编码结果,获取与所述目标视频片段对应的率失真曲线。

可选地,所述装置还包括:第二编码单元,用于在将与所述目标视频片段对应的率失真曲线确定为与所述目标视频对应的率失真曲线之后,利用与所述目标视频对应的率失真曲线对所述目标视频进行编码,得到与所述目标视频对应的编码数据。

根据本申请实施例的又一个方面,还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

根据本申请实施例的又一个方面,还提供了一种电子装置,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。

在本申请实施例中,采用选取目标视频的代表片段从而确定率失真曲线的方式,通过获取多个视频特征,其中,多个视频特征与目标视频中的多个视频片段一一对应,多个视频片段中的每个视频片段的视频长度均为目标长度;从多个视频片段中确定特征偏离度最小的目标视频片段,其中,特征偏离度用于表示第一视频特征和第二视频特征之间的偏离程度,第一视频特征为与多个视频片段中的一个视频片段对应的视频特征,第二视频特征为多个视频特征中除了第一视频特征以外的其他视频特征;将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线,由于选取的目标视频片段是特征偏离度最小的视频片段,其相对于其他视频片段根据代表性,是目标视频的代表片段,可以达到提高R-D曲线精度的目的,从而实现了提高R-D曲线预估精度的技术效果,进而解决了相关技术中的视频处理方式存在由于视频片段选取不当所导致的R-D曲线预估精度过低的问题。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

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

图1是根据本申请实施例的视频处理方法的硬件环境的示意图;

图2是根据本申请实施例的一种可选的视频处理方法的流程图;

图3是根据本申请实施例的一种可选的视频处理方法的示意图;

图4是根据本申请实施例的另一种可选的视频处理方法的流程图;

图5是根据本申请实施例的又一种可选的视频处理方法的流程图;

图6是根据本申请实施例的一种可选的视频处理装置的示意图;

图7是根据本申请实施例的一种可选的电子装置的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

根据本申请实施例的一个方面,提供了一种视频处理方法。可选地,在本实施例中,上述视频处理方法可以应用于如图1所示的由终端101和服务器103所构成的硬件环境中。如图1所示,服务器103通过网络与终端101进行连接,可用于为终端或终端上安装的客户端提供服务(如游戏服务、应用服务等),可在服务器上或独立于服务器设置数据库,用于为服务器103提供数据存储服务,上述网络包括但不限于:广域网、城域网或局域网,终端101并不限定于PC、手机、平板电脑等。本申请实施例的视频处理方法可以由服务器103来执行,也可以由终端101来执行,还可以是由服务器103和终端101共同执行。其中,终端101执行本申请实施例的视频处理方法也可以是由安装在其上的客户端来执行。

图2是根据本申请实施例的一种可选的视频处理方法的流程图,如图2所示,该方法可以包括以下步骤:

步骤S202,获取多个视频特征,其中,多个视频特征与目标视频中的多个视频片段一一对应,多个视频片段中的每个视频片段的视频长度均为目标长度;

步骤S204,从多个视频片段中确定特征偏离度最小的目标视频片段,其中,特征偏离度用于表示第一视频特征和第二视频特征之间的偏离程度,第一视频特征为与多个视频片段中的一个视频片段对应的视频特征,第二视频特征为多个视频特征中除了第一视频特征以外的其他视频特征;

步骤S206,将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线。

通过上述步骤S202至步骤S206,通过获取多个视频特征,其中,多个视频特征与目标视频中的多个视频片段一一对应,多个视频片段中的每个视频片段的视频长度均为目标长度;从多个视频片段中确定特征偏离度最小的目标视频片段,其中,特征偏离度用于表示第一视频特征和第二视频特征之间的偏离程度,第一视频特征为与多个视频片段中的一个视频片段对应的视频特征,第二视频特征为多个视频特征中除了第一视频特征以外的其他视频特征;将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线,解决了相关技术中的视频处理方式存在由于视频片段选取不当所导致的R-D曲线预估精度过低的问题,提高了R-D曲线预估精度。

在步骤S202提供的技术方案中,获取多个视频特征,其中,多个视频特征与目标视频中的多个视频片段一一对应,多个视频片段中的每个视频片段的视频长度均为目标长度。

本实施例中的视频处理方法可以应用于利用视频的率失真曲线(R-D曲线,即,rate-distortion曲线)进行视频处理的场景,例如,视频编码的过程中。R-D曲线是视频编码过程中一个重要的特征。精确的R-D曲线预估能够带来较大的编码性能收益,包括降低码率、提升画质、提高码率控制精确度等等。率失真曲线是在视频经过编码后,设定对应的码率,得到对应的失真,从而绘制出来的曲线。

相关技术中,视频编码时假设视频帧和视频帧之间有相关性。为了获取视频的R-D曲线,如图3所示,可以获取视频的第k帧,根据编码结果预估前k帧的R-D曲线,并将前k帧R-D曲线作为(k+1)帧的R-D曲线,并编码第(k+1)帧。上述R-D曲线获取方式误差较大,无法适用于高精度R-D曲线要求的场景。

例如,率失真函数可以为:y=A/x,可以利用前几帧的编码结果,确定对应的失真,将编码所采用的码率和确定的失真带入到率失真函数,得到R-D曲线。

还可以采用对同一个视频进行多次编码,同时每次编码采用不同的码率设置,编码完成后可以得到精确度较高的R-D曲线。

上述R-D曲线的预估方式虽然精度较高,但是执行速度过慢,在要求高实时性的编码场景中是无法使用的。一种解决方式可以是:选取视频中的连续片段进行编码,例如,如图4所示,对于一个16秒的视频,只编码其中的连续4秒的视频片段:选取前k帧中的p帧,其中,其中,p=k/4;使用码率R1、R2、R3和R4分别编码前p帧,并计算前p帧精准的R-D曲线;利用p帧的R-D曲线作为前k帧的R-D曲线的预估结果,并利用精准的R-D曲线编码前k帧。通过上述方式,可以降低计算复杂度。但是,如果只是随机选取,则选取的视频片段可能并不具备代表性,从而影响R-D曲线预估精度。

可选地,在本实施中,采用选取目标视频的代表片段从而确定率失真曲线的方式,以保证确定的率失真曲线的精准度。

处理设备(可以是服务器,也可以是终端设备)可以通过选取本地文件的方式、或者从其他设备接收文件的方式获取目标视频。该目标视频中包含多个视频片段,每个视频片段的视频长度相同,均为目标长度。上述目标长度可以表示为包含的视频帧的数量的形式(例如,60帧),或者,视频时长的形式(例如,4s)。不同的视频片段之间可以有重叠,但不完全相同。

对于多个视频片段,可以分别获取各个视频片段的视频特征,从而得到多个视频特征,多个视频特征与多个视频片段一一对应。对于不同的视频片段,获取其对应的视频特征的操作可以是顺序执行的,也可以是并行执行的。

在步骤S204提供的技术方案中,从多个视频片段中确定特征偏离度最小的目标视频片段,其中,特征偏离度用于表示第一视频特征和第二视频特征之间的偏离程度,第一视频特征为与多个视频片段中的一个视频片段对应的视频特征,第二视频特征为多个视频特征中除了第一视频特征以外的其他视频特征。

由于不同的视频片段并不完全相同,其对应的视频特征之间也会存在区别。需要选取的代表片段可以具有以下特点:对应的特征偏离度最小。

根据多个视频特征,可以从多个视频片段中选取出目标视频的代表片段,即,目标视频片段。选取的依据可以是:不同视频特征之间的偏离程度,即,特征偏离度,特征偏离度用于表示不同视频特征之间的差异,可以是不同视频特征之间的差值、或者差值的绝对值,也可以是差值的平方,还可以是能够用于表示不同视频特征之间差异的其他参数。

对于多个视频片段,一个视频片段的特征偏离度可以是:第一视频特征和第二视频特征之间的偏离程度,其中,第一视频特征为本视频片段的视频特征,第二视频特征为多个视频特征中除了第一视频特征以外的其他视频特征。如果第二视频特征为多个,则一个视频片段的特征偏离度可以是:第一视频特征和各第二视频特征之间的偏离程度的平均值、绝对值的平均值、平方的平均值等等。

从多个视频片段中选取目标视频片段的条件是:对应的特征偏离度最小。如果特征偏离度最小的视频片段有多个,则可以从中随机的选取一个作为目标视频片段,或者,选取第一个、最后一个、中间的某一个作为目标视频片段。

此外,还可以从多个视频片段中选取出特征偏离度小于或者等于一个预定偏离度阈值的视频片段作为目标视频片段;或者,如果最小特征偏离度大于一个预定偏离度阈值,说明特征偏离度最小的视频片段代表目标视频的能力不足,可以对整个目标视频进行处理。

在步骤S206提供的技术方案中,将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线。

在得到目标视频片段之后,可以获取与目标视频片段对应的R-D曲线,并将获取的率失真曲线作为与该目标视频对应的R-D曲线。

获取与目标视频片段对应的率失真曲线的方式可以有多种,例如,可以采用一种码率对该目标视频片段进行编码,根据采用的码率和得到的编码结果,确定出该目标视频片段的率失真曲线。

例如,可以根据得到的编码结果和原始的目标视频片段,可以确定出编码过程中目标视频片段的失真;基于采用的码率和确定的失真,得到该目标视频片段的率失真曲线。

作为一种可选的实施例,在获取多个视频特征之前,上述方法还包括:

S11,使用目标窗口,按照目标步长从目标视频中获取多个视频片段,其中,目标窗口的大小为目标长度。

可以使用滑动窗(即,目标窗口)获取目标视频的多个视频片段。该滑动窗的长度可以是目标长度,例如,60帧,4s等。滑动窗的大小可以根据配置信息进行设置,并可以根据配置信息进行更改。

该滑动窗的滑动步长为目标步长,该目标步长可以通过视频帧的数量进行表示,例如,n帧,n为大于或者等于1的正整数,也可以通过时长进行表示,例如,m秒,m为大于或者等于1的正整数。滑动步长可以根据配置信息进行设置,并可以根据配置信息进行更改。

按照滑动步长使用滑动窗在目标视频上进行滑动,每滑动一次可以得到一个视频片段。滑动结束的条件可以是:在滑动以后,剩余的视频长度小于滑动步长。在滑动结束之后,即可得到多个视频片段。

例如,对于一个16s的视频,可以使用窗口大小为4s的滑动窗进行视频片段获取,滑动步长为1s。使用该滑动窗在该视频上进行滑动,可以依次获取到以下视频片段:0~4s,1~5s,2~6s,……,11~15s,12~16s。在得到12~16s的视频片段之后,再次滑动时,剩余的视频长度为3s,小于滑动步长4s,滑动结束。在滑动结束之后,可以获取到上述13个视频片段。

通过本实施例,使用滑动窗获取视频片段,可以保证视频片段获取的合理性和准确性。

作为一种可选的实施例,获取多个视频特征包括:

S21,分别对多个视频片段中的每个视频片段进行关键帧抽取,得到与每个视频片段对应的关键帧;

S22,提取与每个视频片段对应的关键帧的图像特征,得到与每个视频片段对应的视频特征。

对于多个视频片段,每个视频片段中可以包含多个视频帧,可以分别对各个视频片段、或者各个视频片段包含的视频帧进行处理,得到与各个视频片段对应的视频特征。

例如,视频一共有N帧,需要提取连续的P帧(目标长度)作为代表片段,则按照滑动窗进行特征统计,每次滑动得到一个视频片段,该视频片段的视频特征为:f(g,g+P-1),0≤g≤N-P+1,其中,g表示视频片段的起始帧,f(g,g+P-1)表示起始帧的帧号为g、结束帧的帧号为(g+P-1)的视频片段的视频特征。

可以采用多种不同的处理方式对视频片段进行处理,得到与视频片段对应的视频特征。例如,可以综合包含的所有视频帧的特征,得到该视频片段的视频特征。

可选地,在本实施例中,可以将视频片段包含的关键帧的图像特征,确定为该视频片段的视频特征。

对于一个视频片段,可以进行关键帧抽取,得到与该视频片段对应的关键帧,每个视频片段对应的关键帧的数量可以是一个或多个。抽取关键帧的方式可以是基于视频帧与视频帧之间的特征相似度,也可以是其他能够进行关键帧抽取的方式。在抽取出关键帧之后,可以将提取的关键帧的图像特征,作为该视频片段的视频特征。提取视频帧的图像特征的方式可以是使用卷积神经网络模型、或者其他方式,在此不做赘述。

需要说明的是,提取视频帧的图像特征和抽取关键帧的执行顺序可以是:首先提取视频片段包含的各个视频帧的图像特征,基于视频帧的图像特征之间的相似度,抽取关键帧,并将关键帧的图像特征,作为该视频片段的视频特征。

通过本实施例,通过抽取视频片段的关键帧,并将关键帧的图像特征作为视频片段的视频特征,可以保证视频特征提取准确度的同时,提高视频处理效率。

作为一种可选的实施例,从多个视频片段中确定特征偏离度最小的目标视频片段包括:

S31,根据多个视频特征,确定与多个视频片段中的每个视频片段对应的特征偏离度;

S32,根据与每个视频片段对应的特征偏离度,从多个视频片段中确定特征偏离度最小的目标视频片段。

在得到多个视频特征之后,可以分别确定每个视频片段的特征偏离度。对于一个视频片段,该视频片段对应的特征偏离度可以用于指示与本视频片段对应的视频特征(即,第一视频特征)和与其他视频片段对应的视频特征(即,第二视频特征)之间的偏离程度。

确定与各个视频片段对应的特征偏离度可以是顺序执行的,例如,根据视频片段的获取顺序,依次确定与各个视频片段对应的特征偏离度,也可以是并行执行的,例如,可以通过处理设备的多个线程,同时确定与多个视频片段对应的特征偏离度。确定与多个视频片段对应的特征偏离度的方式可以根据需要设定,本实施例对此不作具体限定。

在得到每个视频片段的特征偏离度之后,可以基于特征偏离度,从多个视频片段中确定出目标视频片段。例如,可以将特征偏离度最小的视频片段,确定为目标视频片段,再例如,可以将特征偏离度最小、并且特征偏离度小于偏离度阈值的视频片段,确定为目标视频片段,又例如,可以从偏离程度小于偏离度阈值的多个视频片段中,随机选取一个视频片段作为目标视频片段。

通过本实施例,通过分别确定与每个视频片段对应的特征偏离度,并基于确定的特征偏离度确定出代表片段,可以提高确定的代表片段的准确性和合理性。

作为一种可选的实施例,根据多个视频特征,确定与多个视频片段中的每个视频片段对应的特征偏离度包括:

S41,根据多个视频特征,确定与多个视频片段中的每个视频片段对应的特征差值,其中,特征差值为第一视频特征与第二视频特征之间的差值;

S42,根据特征差值,确定与每个视频片段对应的特征偏离度,其中,特征偏离度为特征差值的平方的平均值。

与每个视频片段对应的特征偏离度可以是:本视频片段与其他视频片段的特征方差,也就是,本视频片段与其他视频片段的特征差值平方的平均。

可选地,在本实施例中,可以根据多个视频特征确定与每个视频片段对应的特征差值,特征差值为:与本视频片段对应的视频特征(即,第一视频特征)和与其他视频片段对应的视频特征(即,第二视频特征)之间的差值,如果除了本视频片段以外的其他视频特征的数量为多个,得到的特征差值的数量也为多个。

如果与一个视频片段对应的特征差值为多个,可以对各个特征差值求平方之后计算平均值,从而得到与该视频片段对应的特征偏离度。

例如,视频片段对应的视频特征可以表示为f(g,g+P-1),计算每一个片段与其他片段的特征方差,计算方式如公式(1)所示:

其中,N为目标视频包含的视频帧的数量,P为滑动窗的长度(即,视频片段中包含的视频帧的数量),g为当前片段的起始帧的帧号,i为其他片段的起始帧的帧号。

然后选取最优起始帧g*,使其Var(g*,P)是所有g中最小,从而可以得到该视频的代表片段。

通过本实施例,根据视频片段之间的特征方差确定代表片段,可以提高代表片段确定的合理性和准确性。

作为一种可选的实施例,在将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线之前,上述方法还包括:

S51,使用多个码率分别对目标视频片段进行编码,得到多个编码结果,其中,多个编码结果与多个码率一一对应;

S52,根据多个码率和多个编码结果,获取与目标视频片段对应的率失真曲线。

对于目标视频片段,处理设备可以对目标视频片段进行多次编码,同时每次编码采用不同的码率设置,得到多个编码结果,每个编码结果可以对应于多个码率中的一个。

例如,根据配置,处理设备可以对代表片段采用4个码率进行编码,分别为:R1,R2,R3,R4,得到4个编码结果,S1,S2,S3,S4,其中,S1与R1对应,S2与R2对应,S3与R3对应,S4与R4对应。

在得到多个编码结果之后,可以根据码率和多个编码结果,确定该目标视频片段的R-D曲线,并将该目标视频片段的R-D曲线作为与目标视频对应的R-D曲线。

根据码率和多个编码结果确定该目标视频片段的R-D曲线的方式可以是:根据多个编码结果与目标视频片段,确定与每个码率对应的失真;根据码率和失真的对应关系,确定该目标视频片段的R-D曲线。

例如,将上述编码结果S1、S2、S3、S4,分别与目标视频片段进行比较,确定出与每个码率对应的失真D1、D2、D3、D4,并根据码率R1、R2、R3、R4与失真D1、D2、D3、D4的对应关系,可以确定出精准的R-D曲线。

可选地,在本实施例中,对于编码所使用的多个码率,在使用多个码率分别对目标视频片段进行编码之前,处理设备可以接收终端设备发送的配置信息,或者,获取处理设备的输入输出部件检测到的配置信息,其中,配置信息用于指示多个码率。

多个码率可以是根据用户输入的配置信息进行设置的,该配置信息可以是用户使用终端设备输入的,该终端设备可以通过网络与处理设备通信连接,或者,也可以是用户通过处理设备的输入输出部件直接输入的。

用户可以通过终端设备或者处理设备的输入输出部件进行配置输入,以配置多个码率。终端设备或者处理设备可以检测目标对象(即,用户)的输入操作,获取目标对象的输入信息,即,配置信息,该配置信息可以指示编码目标视频所使用的多个码率。

在获取到用户输入的配置信息之后,终端设备可以通过与处理设备之间的通信链路将配置信息发送给处理设备。处理设备可以接收终端设备发送的配置信息,从而获取到配置信息。

处理设备可以从配置信息中获取多个码率,并将获取的多个码率设置为编码目标视频所使用的码率。

通过本实施例,采用多个码率对目标视频片段进行编码,进而得到目标视频的率失真曲线,可以提高率失真曲线预估的精准度。

作为一种可选的实施例,在将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线之后,上述方法还包括:

S61,利用与目标视频对应的率失真曲线对目标视频进行编码,得到与目标视频对应的编码数据。

在得到与目标视频对应的R-D曲线之后,可以利用该R-D曲线进行多种处理,例如,对目标视频进行编码,得到与目标视频对应的编码数据。具体的编码过程可以参考相关技术,本实施例中对此不作具体限定。

例如,在利用精确R-D曲线预估算法之后,可以按照对不同R-D曲线的视频估计不同的码率进行编码,来达到最小化视频整体码率的同时,保证视频质量肉眼观看无损失。

通过本实施例,利用多个参考帧的、精准的R-D曲线对整个视频进行编码,可以最小化视频整体码率,同时保证视频质量肉眼观看无损失。

下面结合可选示例对本申请实施例中的视频处理方法进行解释说明。在本示例中,目标视频为16s的视频,滑动窗的大小为4s,滑动步长为1帧。

本示例中所提供的视频处理方法,利用滑动窗,对视频每一段连续的部分提取特征,选择该段特征和其他特征相比最具代表性的一段。

如图5所示,本可选实施例中所提供的视频处理方法的流程可以包括以下步骤:

步骤S502,使用滑动窗选取目标视频的视频片段,并计算各个视频片段的视频特征。

视频一共有N帧,N=16*每秒包含的帧数,需要提取代表片段为连续P帧,P=4*每秒包含的帧数,则按照滑动窗进行特征统计,每个片段的视频特征为:f(k,k+P-1),0≤k≤N-P+1,其中,k为片段的起始帧。

步骤S504,根据各个视频片段的视频特征,确定目标视频的代表片段。

计算每一个片段与其他片段的特征方差,计算可以如公式(1)所示。选取最优起始帧k*,使其对应的Var(k*,P)是所有k中最小的一个。以k*为起始帧的片段,即为代表片段。

步骤S506,使用多个码率对代表片段进行编码,得到代表片段的R-D曲线。

可以使用码率R1、R2、R3和R4分别编码代表片段,得到与每一种码率对应的编码结果。得到与每一种码率对应的编码结果之后,可以进一步地计算代表片段精准的R-D曲线。

步骤S508,利用代表片段的R-D曲线编码目标视频。

可以将代表片段的R-D曲线作为目标视频的R-D曲线的预估结果,并利用该R-D曲线编码目标视频,得到目标视频的编码数据。

通过本示例,利用滑动窗,对视频每一段连续的部分(片段)提取特征,计算其与其他片段的特征之间的方差,选择方差最小的作为代表片段,可以提高代表片段选取的准确性和合理性,进而提升R-D曲线预测精度。

需要说明的是,部分视频中本身不具备代表性的片段,例如,对于长视频和一些短视频,采用上述方案得到的代表片段并可能仅为一部分视频而不是整个视频的代表片段,也就是说,目标视频包含多个代表片段,每个代表片段为目标视频的部分视频的代表片段。

为了提高得到的代表片段表征整个视频的能力,从多个视频片段中确定特征偏离度最小的目标视频片段可以包括:从多个视频片段中确定特征偏离度最小且小于第一目标阈值的目标视频片段。

可选地,在本实施例中,在特征偏离度最小的视频片段的特征偏离度大于或者等于第一目标阈值的情况下,可以对目标视频进行切分,并对切分后得到的视频切片按照与前述类似的方式获取各个视频切片的代表片段。

可以按照场景将目标视频切分为多个视频切片,其中,目标视频包含多个场景,多个视频切片中的每个视频切片对应于一个场景。

例如,可以对目标视频进行场景切换,也即,判断目标视频中是否有场景切换。如果有场景切换,则可以对目标视频进行切分,得到多个视频切片。

按照场景将目标视频切分为多个视频切片可以包括:确定第一视频帧和第二视频帧之间的相似度,其中,第一视频帧和第二视频帧为目标视频中相邻的两个视频帧;在第一视频帧和第二视频帧之间的相似度小于或者等于第一相似度阈值的情况下,将第一视频帧确定为第一切片的最后一个视频帧,将第二视频帧确定为第二切片的第一个视频帧,其中,多个视频切片包括第一切片和第二切片,第一切片和第二切片对应于相邻的两个场景。

分别将多个视频切片中的每个视频切片作为上述目标视频,获取与各个视频切片对应的目标视频片段,并将与各个视频切片对应的目标视频片段的率失真曲线,作为各个视频切片的率失真曲线。

例如,可以选择某一视频切片,判断该视频切片是否具有代表性部分,如果有,计算代表部分R-D曲线,将代表性部分的R-D曲线作为该切片的预估,否则,继续对视频切片进行切片分割,得到更小切片,即,视频子片段,判断视频子片段是否具有代表部分。

切片分割的结束条件可以是:分割后的切片长度小于或者等于一个预定阈值。此时,可以直接使用多个码率对该切片进行编码,根据编码结果计算与各个码率对应的失真,从而获取该切片的R-D曲线,进而使用该R-D曲线对该切片进行编码。

对于选择的视频切片,例如,目标切片,可以获取多个第一视频特征,其中,多个第一视频特征与目标切片中的多个第一视频片段一一对应,目标切片属于多个视频切片。

在根据多个第一视频特征,从多个第一视频片段中确定出第一目标视频片段的情况下,将与第一目标视频片段对应的率失真曲线确定为与目标切片对应的率失真曲线,其中,第一目标视频片段为特征偏离度最小、且小于或者等于第一目标阈值的第一视频片段。

作为一种可选的实施例,在根据多个第一视频特征,从多个第一视频片段中未确定出第一目标视频片段的情况下,可以确定第三视频帧和第四视频帧之间的相似度,其中,第三视频帧和第四视频帧为目标切片中相邻的两个视频帧;在第三视频帧和第四视频帧之间的相似度小于或者等于第二相似度阈值的情况下,将第三视频帧确定为第一子切片的最后一个视频帧,将第四视频帧确定为第二子切片的第一个视频帧,其中,目标切片包括第一子切片和第二子切片。

需要说明的是,第二相似度阈值高于第一相似度阈值,即,目标切片内的任意相邻的视频帧之间的相似度均高于第一相似度阈值,但属于相邻子场景的相邻视频帧之间的相似度不高于第二相似度阈值。

作为一种可选的实施例,在第一目标子切片的视频长度小于或者等于目标长度阈值的情况下,可以使用多个码率分别对第一目标子切片进行编码,得到多个第一编码结果,其中,第一目标子切片为第一子切片和第二子切片中的一个,多个第一编码结果与多个码率一一对应;根据多个码率和多个第一编码结果,获取与第一目标子切片对应的率失真曲线。

如果切分后得到的子切片的视频长度小于或者等于目标长度阈值,则可以直接使用多个码率对该子切片进行编码,根据多个码率和多个编码结果获取该子切片的率失真曲线。

作为一种可选的实施例,在第二目标子切片的视频长度大于或者等于目标长度阈值的情况下,获取多个第二视频特征,其中,多个第二视频特征与第二目标子切片中的多个第二视频片段一一对应,第二目标子切片为第一子切片和第二子切片中的一个;在根据多个第二视频特征,从多个第二视频片段中确定出第二目标视频片段的情况下,将与第二目标视频片段对应的率失真曲线确定为与第二目标子切片对应的率失真曲线,其中,第一子视频特征和第二子视频特征之间的偏离程度小于或者等于第二目标阈值,第一子视频特征为与第二目标视频片段对应的子视频特征,第二子视频特征为多个第二视频特征中除了第一子视频特征以外的其他视频特征。

多个第二视频片段可以是使用上述滑动窗和滑动步长在第二目标子切片上进行滑动得到的视频片段。确定视频特征之间的偏离程度(特征偏离度)的方式与前述类似,在此不做赘述。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。

根据本申请实施例的另一个方面,还提供了一种用于实施上述视频处理方法的视频处理装置。图6是根据本申请实施例的一种可选的视频处理装置的示意图,如图6所示,该装置可以包括:

(1)第一获取单元62,获取多个视频特征,其中,多个视频特征与目标视频中的多个视频片段一一对应,多个视频片段中的每个视频片段的视频长度均为目标长度;

(2)第一确定单元64,与第一获取单元62相连,用于从多个视频片段中确定特征偏离度最小的目标视频片段,其中,特征偏离度用于表示第一视频特征和第二视频特征之间的偏离程度,第一视频特征为与多个视频片段中的一个视频片段对应的视频特征,第二视频特征为多个视频特征中除了第一视频特征以外的其他视频特征;

(3)第二确定单元66,与第一确定单元64相连,将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线。

需要说明的是,该实施例中的第一获取单元62可以用于执行上述步骤S202,该实施例中的第一确定单元64可以用于执行上述步骤S204,该实施例中的第二确定单元66可以用于执行上述步骤S206。

通过上述模块,获取多个视频特征,其中,多个视频特征与目标视频中的多个视频片段一一对应,多个视频片段中的每个视频片段的视频长度均为目标长度;从多个视频片段中确定特征偏离度最小的目标视频片段,其中,特征偏离度用于表示第一视频特征和第二视频特征之间的偏离程度,第一视频特征为与多个视频片段中的一个视频片段对应的视频特征,第二视频特征为多个视频特征中除了第一视频特征以外的其他视频特征;将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线,解决了相关技术中的视频处理方式存在由于视频片段选取不当所导致的R-D曲线预估精度过低的问题,提高了R-D曲线预估精度。

作为一种可选的实施例,上述装置还包括:

第二获取单元,用于在获取多个视频特征之前,使用目标窗口,按照目标步长从目标视频中获取多个视频片段,其中,目标窗口的大小为目标长度。

作为一种可选的实施例,第一获取单元62包括:

抽取模块,用于分别对多个视频片段中的每个视频片段进行关键帧抽取,得到与每个视频片段对应的关键帧;

提取模块,用于提取与每个视频片段对应的关键帧的图像特征,得到与每个视频片段对应的视频特征。

作为一种可选的实施例,第一确定单元64包括:

第一确定模块,用于根据多个视频特征,确定与多个视频片段中的每个视频片段对应的特征偏离度;

第二确定模块,用于根据与每个视频片段对应的特征偏离度,从多个视频片段中确定特征偏离度最小的目标视频片段。

作为一种可选的实施例,第一确定模块包括:

第一确定子模块,用于根据多个视频特征,确定与多个视频片段中的每个视频片段对应的特征差值,其中,特征差值为第一视频特征与第二视频特征之间的差值;

第二确定子模块,用于根据特征差值,确定与每个视频片段对应的特征偏离度,其中,特征偏离度为特征差值的平方的平均值。

作为一种可选的实施例,上述装置还包括:

第一编码单元,用于在将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线之前,使用多个码率分别对目标视频片段进行编码,得到多个编码结果,其中,多个编码结果与多个码率一一对应;

第三获取单元,用于根据多个码率和多个编码结果,获取与目标视频片段对应的率失真曲线。

作为一种可选的实施例,上述装置还包括:

第二编码单元,用于在将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线之后,利用与目标视频对应的率失真曲线对目标视频进行编码,得到与目标视频对应的编码数据。

此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。

根据本申请实施例的又一个方面,还提供了一种用于实施上述视频处理方法的电子装置,该电子装置可以是服务器、终端、或其组合。

图7是根据本申请实施例的一种电子装置的结构框图,如图7所示,该电子装置包括存储器702和处理器704,该存储器702中存储有计算机程序,该处理器704被设置为通过计算机程序执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

S1,获取多个视频特征,其中,多个视频特征与目标视频中的多个视频片段一一对应,多个视频片段中的每个视频片段的视频长度均为目标长度;

S2,从多个视频片段中确定特征偏离度最小的目标视频片段,其中,特征偏离度用于表示第一视频特征和第二视频特征之间的偏离程度,第一视频特征为与多个视频片段中的一个视频片段对应的视频特征,第二视频特征为多个视频特征中除了第一视频特征以外的其他视频特征;

S3,将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线。

其中,存储器702可用于存储软件程序以及模块,如本发明实施例中的视频处理方法和装置对应的程序指令/模块,处理器704通过运行存储在存储器702内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述视频处理方法。存储器702可包括高速随机存储器,还可以包括非易失性存储器,如一个或多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器702可进一步包括相对于处理器704远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器702可以但不限于用于存储目标视频、视频片段、视频特征、码率信息、编码结果、R-D曲线等信息。

作为一种示例,如图7所示,上述存储器702中可以但不限于包括上述视频处理装置中的第一获取单元62、第一确定单元64及第二确定单元66。此外,还可以包括但不限于上述视频处理装置中的其他模块单元,本示例中不再赘述。

可选地,上述的传输装置706用于经由一个网络接收或者发送数据。上述的网络可包括有线网络及无线网络。在一个实例中,传输装置706包括一个网络适配器(NetworkInterface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置706为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。

此外,上述电子装置还包括:显示器708,用于显示上述R-D曲线;和连接总线710,用于连接上述电子装置中的各个模块部件。

可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。

本领域普通技术人员可以理解,图7所示的结构仅为示意,实施上述视频处理方法的设备可以是终端设备,该终端设备可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图7其并不对上述电子装置的结构造成限定。例如,终端设备还可包括比图7中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图7所示不同的配置。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。

根据本申请实施例的又一个方面,还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行视频处理方法的程序代码。

可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:

S1,获取多个视频特征,其中,多个视频特征与目标视频中的多个视频片段一一对应,多个视频片段中的每个视频片段的视频长度均为目标长度;

S2,从多个视频片段中确定特征偏离度最小的目标视频片段,其中,特征偏离度用于表示第一视频特征和第二视频特征之间的偏离程度,第一视频特征为与多个视频片段中的一个视频片段对应的视频特征,第二视频特征为多个视频特征中除了第一视频特征以外的其他视频特征;

S3,将与目标视频片段对应的率失真曲线确定为与目标视频对应的率失真曲线。

可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。

可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、ROM、RAM、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。

在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

21页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于上下文重组建模的图像编码、解码方法及压缩方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类