视频处理方法、装置及设备与流程

文档序号:30955676发布日期:2022-07-30 09:49阅读:68来源:国知局
视频处理方法、装置及设备与流程

1.本技术涉及互联网技术领域,尤其涉及一种视频处理方法、装置及设备。


背景技术:

2.随着互联网技术的不断发展,涌现出越来越多的视频播放平台。为了向用户提供不同画质的视频,视频播放平台通常需要对源视频进行转码,从而生成具备不同分辨率和不同码率的多份视频。
3.通常,在对源视频进行转码的过程中,对源视频进行下采样获得不同分辨率的多份视频,然后使用预先训练好的模型对源视频和下采样得到的多份视频的帧图像分别进行处理,以在增强画质的同时使得视频码率更小,这种技术即为窄带高清。
4.然而,上述处理方式存在计算成本较高的问题。


技术实现要素:

5.本技术实施例提供一种视频处理方法、装置及设备,用以解决现有技术中计算成本较高的问题。
6.第一方面,本技术实施例提供一种视频处理方法,包括:
7.获取待处理视频集合,所述待处理视频集合的分辨率为第一分辨率;
8.基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合;所述第一视频帧集合的分辨率为所述第一分辨率,所述第二视频帧集合的分辨率为第二分辨率,所述第二分辨率小于所述第一分辨率且不同第二视频帧集合的分辨率不同;所述目标模型用于对输入图像进行增强画质并减小数据量的处理。
9.第二方面,本技术实施例提供一种视频处理方法,包括:
10.获取待播放视频帧,所述待播放视频帧是通过对分辨率为第一分辨率的待处理视频帧集合采用如下方式处理得到:基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合;所述第一视频帧集合的分辨率为所述第一分辨率,所述第二视频帧集合的分辨率为第二分辨率,所述第二分辨率小于所述第一分辨率且不同第二视频帧集合的分辨率不同;所述目标模型用于对输入图像进行增强画质并减小数据量的处理;
11.播放所述待播放视频帧。
12.第三方面,本技术实施例提供一种视频处理装置,包括:
13.获取模块,用于获取待处理视频帧集合,所述待处理视频帧集合的分辨率为第一分辨率;
14.处理模块,用于基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合;所述第一视频帧集合的分辨率为所述第一分辨率,所述第二视频帧集合的分辨率为第二分辨率,所述第二分辨率小于所述第一分辨率且不同第二视频帧集合的分辨率不同;所述目标模型用于对输入图像进行增强画质并减小数据量
的处理。
15.第四方面,本技术实施例提供一种视频处理装置,包括:
16.获取模块,用于获取待播放视频帧,所述待播放视频帧是通过对分辨率为第一分辨率的待处理视频帧集合采用如下方式处理得到:基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合;所述第一视频帧集合的分辨率为所述第一分辨率,所述第二视频帧集合的分辨率为第二分辨率,所述第二分辨率小于所述第一分辨率且不同第二视频帧集合的分辨率不同;所述目标模型用于对输入图像进行增强画质并减小数据量的处理;
17.播放模块,用于播放所述待播放视频帧。
18.第五方面,本技术实施例提供一种服务器,包括:存储器、处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行时实现如第一方面任一项所述的方法。
19.第六方面,本技术实施例提供一种终端,包括:存储器、处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行时实现如第二方面任一项所述的方法。
20.第七方面,本技术实施例提供一种计算机程序产品,包括计算机指令,其中,该计算机指令被处理器执行时实现第一方面任一项所述方法的步骤。
21.第八方面,本技术实施例提供一种计算机程序产品,包括计算机指令,其中,该计算机指令被处理器执行时实现第二方面任一项所述方法的步骤。
22.本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包含至少一段代码,所述至少一段代码可由计算机执行,以控制所述计算机执行如第一方面任一项所述的方法。
23.本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包含至少一段代码,所述至少一段代码可由计算机执行,以控制所述计算机执行如第二方面任一项所述的方法。
24.本技术实施例提供的视频处理方法、装置及设备,通过基于目标模型对待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合,第一视频帧集合的分辨率为第一分辨率,第二视频帧集合的分辨率为第二分辨率,第二分辨率小于第一分辨率且不同第二视频帧集合的分辨率不同,目标模型用于对输入图像进行增强画质并减小数据量的处理,实现了第二分辨率的视频帧集合的生成能够复用目标模型对第一分辨率的待处理视频帧集合所进行的前部分计算,从而能够减少计算成本,节省计算资源。
附图说明
25.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
26.图1为本技术实施例的应用场景示意图;
27.图2a为传统技术中一视频处理方式的示意图;
28.图2b为传统技术中另一视频处理方式的示意图;
29.图3为本技术一实施例提供的视频处理方法的流程示意图;
30.图4为本技术一实施例提供的目标模型的结构示意图;
31.图5为本技术一实施例提供的基于目标模型处理视频帧集合的示意图;
32.图6为本技术另一实施例提供的基于目标模型处理视频帧集合的示意图;
33.图7为本技术又一实施例提供的基于目标模型处理视频帧集合的示意图;
34.图8为本技术又一实施例提供的基于目标模型处理视频帧集合的示意图;
35.图9a为本技术一实施例提供的计算成本对比的示意图;
36.图9b为本技术一实施例提供的视频质量对比的示意图;
37.图10为本技术另一实施例提供的视频处理方法的流程示意图;
38.图11为本技术一实施例提供的视频处理装置的结构示意图;
39.图12为本技术一实施例提供的服务器的结构示意图;
40.图13为本技术另一实施例提供的视频处理装置的结构示意图;
41.图14为本技术一实施例提供的终端的结构示意图。
具体实施方式
42.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
43.在本技术实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。
44.应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
45.取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
46.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。
47.另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
48.为了方便本领域技术人员理解本技术实施例提供的技术方案,下面先对技术方案实现的技术环境进行说明。
49.相关技术中在对源视频进行转码的过程中,需要对源视频进行下采样所获得的不同分辨率的多份视频,分别使用某一模型(以下记为模型x)进行处理以在增强画质的同时使得视频码率更小,多份视频分别使用模型x进行处理的方式,计算成本较高,因此相关技术中亟需一种能够减少计算成本的视频处理方式。
50.基于类似于上文所述的实际技术需求,本技术提供的视频处理方法可以利用技术化的手段减小视频处理的计算成本。
51.下面通过一个示例性的应用场景具体说明本技术各个实施例提供的视频处理方法。
52.如图1所示,该应用场景中可以包括终端11和服务器12。终端11可以根据视频上传者的输入对某一视频(为便于区别,以下记为源视频)进行编码,并将编码获得的编码数据发送至服务器12。其中,终端11例如可以是手机、平板电脑、笔记本电脑、台式机、可穿戴设备等能够上传视频数据的用户设备。服务器12例如可以是云服务器、分布式服务器等数据处理服务器。
53.服务器12在接收到源视频的编码数据之后,可以对编码数据进行解码获得源视频。服务器12在获得源视频之后,可以对源视频进行增强画质并减小数据量的处理,得到分辨率不同的多份视频(为了便于区别,以下记为处理后视频),其中,源视频的分辨率例如可以1080p,对源视频进行处理之后例如可以得到分辨率是1080p、720p、540p和360p的多份处理后视频。服务器12在得到源视频的分辨率不同的多份处理后视频之后,可以对不同分辨率的处理后视频分别进行编码,获得对应的编码数据,例如可以获得源视频的分辨率是1080p的处理后视频(以下简称为1080p处理后视频)的编码数据、分辨率是720p的处理后视频(以下简称为720p处理后视频)的编码数据、分辨率是540p的处理后视频(以下简称为540p处理后视频)的编码数据以及分辨率是360p的处理后视频(以下简称为360p处理后视频)的编码数据。
54.需要说明的是,服务器12针对源数据先进行解码处理,再进行增强画质并减小数据量的处理,最后进行编码处理,可以理解为服务器12对源数据进行的转码处理。
55.如图1所示,该应用场景中还可以包括观看所述源视频的视频观看者使用的终端13,例如终端13a、终端13b和终端13c。服务器12可以根据终端13播放视频所使用的播放模式,确定终端13需要下载源视频的一分辨率的处理后视频,并将该分辨率的处理后视频的编码数据发送至终端13。
56.假设播放模式包括超清、高清、标清和极速,超清对应1080p、高清对应720p、标清对应540p、极速对应360p,且终端13a的播放模式是超清,终端13b的播放模式是高清,终端13c的播放模式是标清,则服务器12可以将1080p处理后视频的编码数据发送至终端13a,将720p处理后视频的编码数据发送至终端13b,并将540p处理后视频的编码数据发送至终端13c。
57.传统技术中,服务器12是采用如图2a或图2b所示的方式对源视频进行增强画质并减小数据量的处理。图2a和图2b中以源视频的分辨率是1080p,需要得到分辨为1080p、720p、540p和360p的多份处理后视频为例。
58.参考图2a,首先,使用模型x对源视频进行增强画质并减小数据量的处理得到分辨率为1080p处理后视频。然后,对1080p处理后视频进行下采样,分别得到720p处理后视频、
540p处理后视频以及360p处理后视频。从而,得到源视频的分辨率为1080p、720p、540p和360p的多份处理后视频。图2a所示的增强画质并减小数据量的处理再下采样,由于720p处理后视频、540p处理后视频和360p处理后视频均是通过对1080p处理后视频进行下采样的方式得到,因此存在视频画质过差,用户主观体验不佳的问题。
59.参考图2b,首先,对源视频进行下采样,分别得到分辨率为720p、540p和360p的视频。然后,使用模型x对分辨率为1080p的源视频进行增强画质并减小数据量的处理得到分辨率为1080p处理后视频;使用模型x对分辨率为720p的视频进行增强画质并减小数据量的处理得到720p处理后视频;使用模型x对分辨率为540p的视频进行增强画质并减小数据量的处理得到分辨率为540p处理后视频;使用模型x对分辨率为360p的视频进行增强画质并减小数据量的处理得到分辨率为360p处理后视频。从而,得到源视频的分辨率为1080p、720p、540p和360p的多份处理后视频。图2b所示的先下采样再增强画质并减小数据量,由于分辨率为1080p、720p、540p和360p的视频均需要使用模型x进行处理,因此存在计算成本较大的问题。
60.需要说明的是,图1中以服务器12处理视频上传者上传的视频为例,可以理解的是,在其他实施例中,服务器12也可以通过其他方式获得待处理的视频。
61.需要说明的是,图1中是以由服务器12对处理后视频进行编码以及将编码数据发送至终端为例,可以理解的是,在其他实施例中,也可以由服务器12之外的其他服务器进行对处理后视频的编码以及将编码数据发送至终端的处理。
62.本技术实施例提供的方法可以应用于视频直播、视频点播、视频修复、实时音视频、媒体处理等多种应用场景。
63.下面结合附图,对本技术的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
64.图3为本技术一实施例提供的视频处理方法的流程示意图,本实施例的执行主体可以为图1中的服务器12。如图3所示,本实施例的方法可以包括:
65.步骤31,获取待处理视频帧集合,所述待处理视频帧集合的分辨率为第一分辨率;
66.步骤32,基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合;所述第一视频帧集合的分辨率为所述第一分辨率,所述第二视频帧集合的分辨率为第二分辨率,所述第二分辨率小于所述第一分辨率且不同第二视频帧集合的分辨率不同;所述目标模型用于对输入图像进行增强画质并减小数据量的处理。
67.本技术实施例中,所述待处理视频帧集合中可以包括单个视频帧或者多个视频帧。所述单个视频帧或者多个视频帧可以理解为需要进行增强画质并减小数据量处理的视频(例如图1中的源视频)中的视频帧。所述待处理视频帧集合例如可以从终端获得,或者,从其他服务器获得等。所述待处理视频帧集合中各视频帧的分辨率均为所述第一分辨率。
68.本技术实施例中,在获得待处理视频帧集合之后,可以基于目标模型对所述待处理视频帧集合进行处理。其中,所述目标模型的输入和输出均为图像,所述目标模型用于对输入图像进行增强画质并减小数据量的处理。一个输入图像输入至所述目标模型进行处理,可以所述目标模型可以输出至少两个输出图像,该至少两个输出图像中的一个输出图像与该输入图像的分辨率相同,该至少两个输出图像中的其他至少一个输出图像的分辨率
小于该输入图像的分辨率,且该至少一个输出图像的分辨率各不相同。
69.一个实施例中,所述目标模型具体可以是卷积神经网络模型。以所述第二视频帧集合的数量为1个,且一个所述第二视频帧集合的分辨率为所述待处理视频帧集合的分辨率的1/2为例,所述目标模型的结构例如可以如图4所示。参考图4,目标模型可以包括5个卷积层和1个反卷积层,第一个卷积层和反卷积层的步长可以为2,其余卷积层的步长可以为1,输入图像可以为h
×w×
n,h表示输入图像的高度,w表示输入图像的宽度,n表示输入图像的通道数。需要说明的是,图4所示的模型结构仅为举例。
70.一个实施例中,可以将所述待处理视频帧集合中的视频帧作为所述目标模型的输入,例如假设待处理视频帧集合中的视频帧包括三通道yuv图像,则在将待处理视频帧集合作为图4所示目标模型的输入时,图4中的n可以等于3。具体的,待处理视频帧集合经目标模型进行处理之后,可以得到分辨率与待处理视频帧集合的分辨率(即第一分辨率)相同的视频帧集合(即第一视频帧集合)和分辨率小于第一分辨率的至少一个视频帧集合(即至少一个第二视频帧集合),且不同第二视频帧集合的分辨率不同。需要说明的是,所述第一视频帧集合中各视频帧的分辨率均为第一分辨率,同一所述第二视频帧集合中各视频帧的分辨率均为同一第二分辨率。
71.另一个实施例中,可以将待处理视频帧集合中视频帧的某一个或多个通道的通道图像作为所述目标模型的输入,以减小目标模型针对待处理视频帧集合中单个视频帧的计算量,从而能够减小针对单个视频帧进行处理所需的计算成本,有利于进一步节省计算资源。例如,在将待处理视频帧集合中视频帧的某一通道的通道图像作为图4所示目标模型的输入时,图4中的n可以等于1。
72.示例性的,考虑到对于人眼对于yuv色彩空间中的y更敏感,因此在待处理视频帧集合中的视频帧是三通道yuv图像的情况下,可以将待处理视频帧集合中视频帧的y通道图像作为所述目标模型的输入。需要说明的是,在所述待处理视频帧集合中视频帧的色彩空间为非yuv时,可以先对待处理视频帧集合进行色彩空间转换。具体的,待处理视频帧集合中视频帧的y通道图像经目标模型进行处理之后,可以得到分辨率等于第一分辨率的第一y通道图像集合和分辨率小于第一分辨率的至少一个第二y通道图像集合,且不同第二y通道图像集合的分辨率不同。进一步的,基于第一y通道图像集合可以得到分辨率为第一分辨率的第一视频帧集合,基于至少一个第二y通道图像集合可以得到分辨率小于第一分辨率的至少一个第二视频帧集合。需要说明的是,所述第一y通道图像集合中各y通道图像的分辨率均为第一分辨率,所述第二y通道图像集合的分辨率为第二分辨率,不同所述第二y通道图像集合的分辨率不同,且同一所述第二y通道图像集合中各y通道图像的分辨率均为同一第二分辨率。
73.本技术实施例中,所述目标模型可以利用样本图像序列训练得到。其中,所述样本图像序列可以基于样本视频获得。一个实施例中,所述样本图像序列可以是所述样本视频的视频帧序列。另一个实施例中,所述样本图像序列可以是所述样本视频中视频帧的y通道图像序列。
74.所述目标模型可以是按照如下方式训练得到:1)构建目标模型,所述目标模型中设置有训练参数;2)将样本图像序列中的样本图像分别依次输入至所述目标模型中进行处理,生成处理结果;3)确定所述处理结果对应的视频质量,并基于所述视频质量与期望质量
之间的差异,对所述训练参数进行迭代调整,直至所述差异满足预设要求。
75.可以理解的是,在样本图像是样本视频的视频帧时,目标模型对于一个样本图像的处理结果包括至少两个视频帧,在样本图像是样本视频的视频帧中的y通道图像时,目标模型对于一个样本图像的处理结果包括至少两个y通道图像。所述处理结果的视频质量例如可以采用视频质量多方法评估融合(vmaf,visual multimethod assessment fusion)获得。
76.在将所述待处理视频帧集合中的视频帧作为所述目标模型的输入时,所述基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合具体可以包括:将所述待处理视频帧集合输入所述目标模型进行处理,得到第一视频帧集合和至少一个第二视频帧集合。
77.例如,如图5所示,将待处理视频集合中的视频帧分别输入至目标模型进行处理,可以得到第一视频帧集合中的第一视频帧和第二视频帧集合中的第二视频帧。具体的,将待处理视频帧集合中的待处理视频帧n-1输入至目标模型进行处理,可以得到第一视频帧集合中的第一视频帧n-1和第二视频帧集合中的第二视频帧n-1;将待处理视频帧集合中的待处理视频帧n输入至目标模型进行处理,可以得到第一视频帧集合中的第一视频帧n和第二视频帧集合中的第二视频帧n;将待处理视频帧集合中的待处理视频帧n+1输入至目标模型进行处理,可以得到第一视频帧集合中的第一视频帧n+1和第二视频帧集合中的第二视频帧n+1;
……

78.需要说明的是,图5中是以第二视频帧集合的数量为1个为例。
79.需要说明的是,本技术实施例中,基于目标模型对待处理视频帧集合进行处理后,所得到的第一视频帧集合即为分辨率等于所述待处理视频的分辨率的处理后视频中视频帧的集合,所得到的至少一个第二视频帧集合即为分辨率小于所述待处理视频的分辨率的至少一个处理后视频中视频帧的集合。
80.在将所述待处理视频帧集合中视频帧的y通道图像作为所述目标模型的输入时,所述基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合具体可以包括:将所述待处理视频帧集合的y通道图像集合输入所述目标模型进行处理,得到第一y通道图像集合和至少一个第二y通道图像集合;将所述第一y通道图像集合和所述待处理视频帧集合的uv通道图像集合进行yuv拼接,得到第一视频帧集合;以及,根据所述第二分辨率,对所述待处理视频帧集合的uv通道图像集合进行下采样,得到至少一个uv通道图像集合,并将所述至少一个第二y通道图像集合和至少一个uv通道图像集合进行对应拼接,得到至少一个第二视频帧集合。其中,对图像进行下采样的算法例如可以为双立方插值等。
81.例如,如图6所示,首先可以将待处理视频帧集合的y通道图像集合输入至目标模型进行处理,从而得到第一y通道图像集合和第二y通道图像集合。具体的,将y通道图像集合中的y通道图像n-1输入至目标模型进行处理,可以得到第一y通道图像集合中的第一y通道图像n-1和第二y通道图像中的第二y通道图像n-1;将y通道图像集合中的y通道图像n输入至目标模型进行处理,可以得到第一y通道图像集合中的第一y通道图像n和第二y通道图像中的第二y通道图像n;将y通道图像集合中的y通道图像n+1输入至目标模型进行处理,可以得到第一y通道图像集合中的第一y通道图像n+1和第二y通道图像中的第二y通道图像n+
1;
……

82.之后,可以将第一y通道图像集合和待处理视频帧集合的uv通道图像集合进行拼接得到第一视频帧集合,并将对该uv通道图像集合进行下采样得到的uv通道图像集合和第二y通道图像集合进行拼接得到第二视频帧集合。具体的,可以将第一y通道图像集合中的第一y通道图像n-1与uv通道图像集合中的uv通道图像n-1进行拼接,得到第一视频集合中的第一视频帧n-1,并将下采样得到的uv通道图像集合中的第二uv通道图像n-1和第二y通道图像集合中的第二y通道图像n-1进行拼接,得到第二视频帧集合中的第二视频帧n-1;可以将第一y通道图像集合中的第一y通道图像n与uv通道图像集合中的uv通道图像n进行拼接,得到第一视频帧集合中的第一视频帧n,并将下采样得到的uv通道图像集合中的第二uv通道图像n和第二y通道图像集合中的第二y通道图像n进行拼接,得到第二视频帧集合中的第二视频帧n;可以将第一y通道图像集合中的第一y通道图像n+1与uv通道图像集合中的uv通道图像n+1进行拼接,得到第一视频帧集合中的第一视频帧n+1,并将下采样得到的uv通道图像集合中的第二uv通道图像n+1和第二y通道图像集合中的第二y通道图像n+1进行拼接,得到第二视频帧集合中的第二视频帧n+1;
……

83.需要说明的是,图6中y通道图像集合中y通道图像n-1即为待处理视频帧集合中待处理视频帧n-1的y通道图像,y通道图像集合中y通道图像n即为待处理视频帧集合中待处理视频帧n的y通道图像,y通道图像集合中y通道图像n+1即为待处理视频帧集合中待处理视频帧n+1的y通道图像。图6中uv通道图像集合中uv通道图像n-1即为待处理视频帧集合中待处理视频帧n-1的uv通道图像,uv通道图像集合中uv通道图像n即为待处理视频帧集合中待处理视频帧n的uv通道图像,uv通道图像集合中uv通道图像n+1即为待处理视频帧集合中待处理视频帧n+1的uv通道图像。
84.需要说明的是,图6中是以第二视频帧集合的数量为1个为例。
85.本技术实施例中,所述第二视频帧集合的数量可以小于或等于目标数量,所述目标数量为需要提供的小于所述第一分辨率的分辨率种类数。以需要提供的分辨率包括1080p、720p、540p和360p四种,且第一分辨率为1080p为例,所述目标数量即为三种,分别为720p、540p和360p,所述第二视频帧集合的数量可以为一个、两个或三个。通过第二视频帧集合的数量等于所述目标数量,使得针对需要提供的小于第一分辨率的任意分辨率视频均无需通过下采样的方式得到,从而能够避免由于下采样所带来的视频质量损失。通过第二视频帧集合的数量小于所述目标数量,使得目标模型的输出通道数能够较少,有利于简化目标模型的模型结构。
86.以第一分辨率为1080p、第二视频帧集合的数量为3,且3个第二视频帧集合的第二分辨率分别为720p、540p和360p为例,如图7所示,可以将分辨率为1080p的待处理视频集合分别输入至目标模型进行处理,得到分辨率为1080p的视频帧集合、分辨率为720p的视频帧集合、分辨率为540p的视频帧集合和分辨率为360p的视频帧集合。需要说明的是,图7中是以直接将待处理视频帧集合中的视频帧输入至目标模型进行处理为例。
87.通过对比图7和图2b可以看出,与图2b所示对分辨率为1080p、720p、540p和360p的视频均需要使用模型x进行处理,以得到1080p处理后视频、720p处理后视频、540p处理后视频和360p处理后视频相比,本技术实施例中通过使用目标模型对分辨率1080p的待处理视频帧集合进行处理,即可得到1080p的第一视频帧集合、720p的第二视频帧集合、540p的第
二视频帧集合和360p的第二视频帧集合,使得720p处理后视频、540p处理后视频和360p处理后视频的生成能够复用目标模型对1080p的视频所进行的前部分计算(例如,图4中前4个卷积层的卷积计算),从而能够减少计算成本,节省计算资源。
88.另外,由于1080p的视频相比于对1080p的视频进行下采样所得到的720p的视频、540p的视频以及360p的视频的特征更丰富,因此通过720p处理后视频、540p处理后视频和360p处理后视频的生成复用了目标模型对1080p的视频所进行的前部分计算,相比于图2b所示方式还能够提升生成的720p处理后视频、540p处理后视频和360p处理后视频的视频质量。
89.在所述第二视频帧集合的数量小于所述目标数量时,本技术实施例提供的方法还可以包括:对所述第一视频帧集合和所述至少一个第二视频帧集合中分辨率为第一目标分辨率的视频帧集合进行下采样,得到至少一个第三视频帧集合,所述第三视频帧集合的分辨率为第三分辨率,所述第三分辨率小于所述第一目标分辨率且不同第三视频帧集合的分辨率不同。从而能够获得需要提供的其他分辨率。
90.可选的,所述第一目标分辨率可以包括所述第一分辨率和所述第二分辨率中,大于所述第三分辨率且与所述第三分辨率最接近的分辨率。从而实现对分辨率最接近的视频帧进行下采样来获得更低分辨率的视频,能够尽量减少下采样对视频质量带来的影响。
91.以第一分辨率为1080p、第二视频帧集合的数量为1,且第二视频帧集合的第二分辨率为540p为例,如图8所示,可以将分辨率为1080p的待处理视频分别输入至目标模型进行处理,得到分辨率为1080p的视频帧集合和分辨率为540p的视频帧集合。进一步的,对分辨率为1080p的视频帧集合进行下采样可以得到分辨率为720p的视频帧集合,对分辨率为540p的视频帧集合进行下采样可以得到分辨率为360p的视频帧集合。需要说明的是,图8中是以直接将待处理视频帧集合中的视频帧输入至目标模型进行处理为例。
92.通过对比图8和图2b可以看出,与图2b所示对分辨率为1080p、720p、540p和360p的视频均需要使用模型x进行处理,以得到1080p处理后视频、720p处理后视频、540p处理后视频和360p处理后视频相比,本技术实施例中通过使用目标模型对分辨率1080p的待处理视频帧集合进行处理,即可得到1080p的第一视频帧集合和540p的第二视频帧集合,使得540p处理后视频的生成能够复用目标模型对1080p的视频所进行的前部分计算(例如,图4中前4个卷积层的卷积计算),从而能够减少计算成本,节省计算资源。
93.另外,由于1080p的视频相比于1080p的视频进行下采样所得到的540p的视频的特征更丰富,通过540p处理后视频的生成复用了目标模型对1080p的视频所进行的前部分计算,因此相比于图2b所示方式还能够提升生成的540p处理后视频的视频质量。并且,由于360p视频是通过对基于目标模型生成的540p处理后视频进行下采样得到,360p处理后视频的生成也复用了目标模型对1080p的视频所进行的前部分计算,且540p到360p下采样的视频质量损失较小,因此相比于图2b所示方式也提升了生成的360p处理后视频的视频质量。
94.图2a所示的先增强画质并减小数据量再下采样的方式1、图2b所示的先下采样再增强画质并减小数据量的方式2,以及图8所示的540p处理后视频的生成复用目标模型对1080p的视频所进行的前部分计算的方式3,三者计算成本的对比可以如图9a所示,三者视频质量的对比可以如图9b所示。
95.如图9a所示,图8所示的方式3的计算成本,较先增强画质并减小数据量再下采样
的方式1要高,较先下采样再增强画质并减小数据量的方式2要小。
96.如图9b所示,图8所示的方式3所得到的540p和360p处理后视频的视频质量,不但高于先增强画质并减小数据量再下采样的方式1,而且还高于先下采样再增强画质并减小数据量的方式2。
97.本技术实施例中,在得到所述第一视频帧集合和所述至少一个第二视频帧集合之后,还可以包括:对所述第一视频帧集合进行编码,得到第一编码数据集合;对所述至少一个第二视频帧集合分别进行编码,得到至少一个第二编码数据集合。从而能够实现对得到的分辨率不同的多份处理后视频分别进行编码。
98.本技术实施例中,在得到编码数据之后,还可以包括:将所述第一编码数据集合存储在对应的第一视频文件中;将所述至少一个第二编码数据集合分别对应存储在至少一个第二视频文件中。从而能够实现对分辨率不同的多份处理后视频的编码数据分别进行存储。
99.本技术实施例中,在得到编码数据之后,还可以包括:确定终端需要下载第二目标分辨率的所述待处理视频帧集合对应的视频资源;以及,将所述第一编码数据集合和所述至少一个第二编码数据集合中分辨率为所述第二目标分辨率的至少部分编码数据发送至所述终端。从而使得终端能够从服务器12获得对应分辨率的视频编码数据。
100.示例性的,可以接收终端发送的分辨率指示信息,并根据分辨率指示信息确定所述终端需要下载第二目标分辨率的所述待处理视频帧集合对应的视频资源,所述分辨率指示信息例如可以是播放模式信息,当然,在其他实施例中,也可以通过其他方式确定终端下载视频所使用的分辨率,本技术对此不做限定。
101.本技术实施例提供的视频处理方法,通过基于目标模型对待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合,第一视频帧集合的分辨率为第一分辨率,第二视频帧集合的分辨率为第二分辨率,第二分辨率小于第一分辨率且不同第二视频帧集合的分辨率不同,目标模型用于对输入图像进行增强画质并减小数据量的处理,实现了第二分辨率的视频帧集合的生成能够复用目标模型对第一分辨率的待处理视频帧集合所进行的前部分计算,从而能够减少计算成本,节省计算资源。
102.图10为本技术另一实施例提供的视频处理方法的流程示意图,本实施例的执行主体可以为图1中的终端13。如图10所示,本实施例的方法可以包括:
103.步骤101,获取待播放视频帧,所述待播放视频帧是通过对分辨率为第一分辨率的待处理视频帧集合采用如下方式处理得到:基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合;所述第一视频帧集合的分辨率为所述第一分辨率,所述第二视频帧集合的分辨率为第二分辨率,所述第二分辨率小于所述第一分辨率且不同第二视频帧集合的分辨率不同;所述目标模型用于对输入图像进行增强画质并减小数据量的处理;
104.步骤102,播放所述待播放视频帧。
105.本技术实施例中,在所述第二视频帧集合的数量等于目标数量,所述目标数量为能够提供的小于所述第一分辨率的分辨率种类数的情况下,所述待播放视频帧可以为所述第一视频帧集合和所述至少一个第二视频帧集合中的视频帧。
106.在所述第二视频帧集合的数量小于所述目标数量的情况下,所述待播放视频帧为
所述第一视频帧集合、所述至少一个第二视频帧集合和至少一个第三视频帧集合中的视频帧;其中,所述至少一个第三视频帧集合是通过对所述第一视频帧集合和所述至少一个第二视频帧集合中分辨率为第一目标分辨率的视频帧集合进行下采样得到;所述第三视频帧集合的分辨率为第三分辨率,所述第三分辨率小于所述第一目标分辨率且不同第三视频帧集合的分辨率不同。
107.可选的,所述第一目标分辨率包括所述第一分辨率和所述第二分辨率中,大于所述第三分辨率且与所述第三分辨率最接近的分辨率。
108.需要说明的是,关于对待处理视频帧集合进行处理的具体内容,可以参见图3所示实施例的相关描述,在此不再赘述。
109.需要说明的是,本技术实施例中的待播放视频帧即为终端接收到的视频帧,一个实施例中可以为图3所示实施例中服务器12发送至终端的编码数据所对应的视频帧。
110.本技术实施例提供的视频处理方法,通过获取待播放视频帧并播放待播放视频帧,待播放视频帧是通过对分辨率为第一分辨率的待处理视频帧集合采用如下方式处理得到:基于目标模型对视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合,第一视频帧集合的分辨率为第一分辨率,第二视频帧集合的分辨率为第二分辨率,第二分辨率小于第一分辨率且不同第二视频帧集合的分辨率不同,目标模型用于对输入图像进行增强画质并减小数据量的处理;从而实现了终端所播放的待播放视频帧可以是由图3所示的方法得到,满足了终端的播放需求。
111.图11为本技术一实施例提供的视频处理装置的结构示意图;参考附图11所示,本实施例提供了一种视频处理装置,该装置可以执行上述图3所示的视频处理方法,具体的,该视频处理装置可以包括:
112.获取模块111,用于获取待处理视频帧集合,所述待处理视频帧集合的分辨率为第一分辨率;
113.处理模块112,用于基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合;所述第一视频帧集合的分辨率为所述第一分辨率,所述第二视频帧集合的分辨率为第二分辨率,所述第二分辨率小于所述第一分辨率且不同第二视频帧集合的分辨率不同;所述目标模型用于对输入图像进行增强画质并减小数据量的处理。
114.可选的,所述第二视频帧集合的数量等于目标数量,所述目标数量为需要提供的小于所述第一分辨率的分辨率种类数。
115.可选的,所述第二视频帧集合的数量小于目标数量,所述目标数量为需要提供的小于所述第一分辨率的分辨率种类数;所述处理模块112还用于:
116.对所述第一视频帧集合和所述至少一个第二视频帧集合中分辨率为第一目标分辨率的视频帧集合进行下采样,得到至少一个第三视频帧集合,所述第三视频帧集合的分辨率为第三分辨率,所述第三分辨率小于所述第一目标分辨率且不同第三视频帧集合的分辨率不同。
117.可选的,所述第一目标分辨率包括所述第一分辨率和所述第二分辨率中,大于所述第三分辨率且与所述第三分辨率最接近的分辨率。
118.可选的,所述待处理视频帧集合中的视频帧包括三通道yuv图像;
119.所述处理模块112用于基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合,具体包括:
120.将所述待处理视频帧集合中视频帧的y通道图像输入所述目标模型进行处理,得到第一y通道图像集合和至少一个第二y通道图像集合;
121.将所述第一y通道图像集合和所述待处理视频帧集合的uv通道图像集合进行yuv拼接,得到第一视频帧集合;
122.根据所述第二分辨率,对所述待处理视频帧集合的uv通道图像集合进行下采样,得到至少一个uv通道图像集合,并将所述至少一个第二y通道图像集合和至少一个uv通道图像集合进行对应拼接,得到至少一个第二视频帧集合。
123.可选的,所述处理模块112用于基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合,具体包括:
124.将所述待处理视频帧集合中的视频帧输入所述目标模型进行处理,得到第一视频帧集合和至少一个第二视频帧集合。
125.可选的,所述装置还包括编码模块,用于:
126.对所述第一视频帧集合进行编码,得到第一编码数据集合;
127.对所述至少一个第二视频帧集合分别进行编码,得到至少一个第二编码数据集合。
128.可选的,所述编码模块,还用于:
129.将所述第一编码数据集合存储在对应的第一视频文件中;
130.将所述至少一个第二编码数据集合分别对应存储在至少一个第二视频文件中。
131.可选的,所述装置还包括发送模块,用于:
132.确定终端需要下载第二目标分辨率的所述待处理视频帧集合对应的视频资源;
133.将所述第一编码数据集合和所述至少一个第二编码数据集合中分辨率为所述第二目标分辨率的至少部分编码数据发送至所述终端。
134.可选的,所述目标模型是按照下述方式训练得到:
135.构建目标模型,所述目标模型中设置有训练参数;
136.将样本图像序列中的样本图像分别依次输入至所述目标模型中进行处理,生成处理结果;
137.确定所述处理结果对应的视频质量,并基于所述视频质量与期望质量之间的差异,对所述训练参数进行迭代调整,直至所述差异满足预设要求。
138.可选的,所述目标模型包括卷积神经网络模型。
139.图11所示装置可以执行图3所示实施例的方法,本实施例未详细描述的部分,可参考对图3所示实施例的相关说明。该技术方案的执行过程和技术效果参见图3所示实施例中的描述,在此不再赘述。
140.在一个可能的实现中,图11所示视频处理装置的结构可实现为一服务器。如图12所示,该服务器可以包括:处理器121和存储器122。其中,存储器122用于存储支持服务器执行上述图3所示实施例中提供的视频处理方法的程序,处理器121被配置为用于执行存储器122中存储的程序。
141.程序包括一条或多条计算机指令,其中,一条或多条计算机指令被处理器121执行
时能够实现如下步骤:
142.获取待处理视频帧集合,所述待处理视频帧集合的分辨率为第一分辨率;
143.基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合;所述第一视频帧集合的分辨率为所述第一分辨率,所述第二视频帧集合的分辨率为第二分辨率,所述第二分辨率小于所述第一分辨率且不同第二视频帧集合的分辨率不同;所述目标模型用于对输入图像进行增强画质并减小数据量的处理。
144.可选的,处理器121还用于执行前述图3所示实施例中的全部或部分步骤。
145.其中,服务器的结构中还可以包括通信接口123,用于服务器与其他设备或通信网络通信。
146.图13为本技术另一实施例提供的视频处理装置的结构示意图;参考附图13所示,本实施例提供了一种视频处理装置,该装置可以执行上述图10所示的视频处理方法,具体的,该视频处理装置可以包括:
147.获取模块131,用于获取待播放视频帧,所述待播放视频帧是通过对分辨率为第一分辨率的待处理视频帧集合采用如下方式处理得到:基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合;所述第一视频帧集合的分辨率为所述第一分辨率,所述第二视频帧集合的分辨率为第二分辨率,所述第二分辨率小于所述第一分辨率且不同第二视频帧集合的分辨率不同;所述目标模型用于对输入图像进行增强画质并减小数据量的处理;
148.播放模块132,用于播放所述待播放视频帧。
149.可选的,所述第二视频帧集合的数量等于目标数量,所述目标数量为需要提供的小于所述第一分辨率的分辨率种类数;所述待播放视频帧为所述第一视频帧集合和所述至少一个第二视频帧集合中的视频帧。
150.可选的,所述第二视频帧集合的数量小于目标数量,所述目标数量为需要提供的小于所述第一分辨率的分辨率种类数;所述待播放视频帧为所述第一视频帧集合、所述至少一个第二视频帧集合和至少一个第三视频帧集合中的视频帧;
151.其中,所述至少一个第三视频帧集合是通过对所述第一视频帧集合和所述至少一个第二视频帧集合中分辨率为第一目标分辨率的视频帧集合进行下采样得到;所述第三视频帧集合的分辨率为第三分辨率,所述第三分辨率小于所述第一目标分辨率且不同第三视频帧集合的分辨率不同。
152.可选的,所述第一目标分辨率包括所述第一分辨率和所述第二分辨率中,大于所述第三分辨率且与所述第三分辨率最接近的分辨率。
153.图13所示装置可以执行图10所示实施例的方法,本实施例未详细描述的部分,可参考对图10所示实施例的相关说明。该技术方案的执行过程和技术效果参见图10所示实施例中的描述,在此不再赘述。
154.在一个可能的实现中,图13所示视频处理装置的结构可实现为一终端。如图14所示,该终端可以包括:处理器141和存储器142。其中,存储器142用于存储支持终端执行上述图10所示实施例中提供的视频处理方法的程序,处理器141被配置为用于执行存储器142中存储的程序。
155.程序包括一条或多条计算机指令,其中,一条或多条计算机指令被处理器141执行
时能够实现如下步骤:
156.获取待播放视频帧,所述待播放视频帧是通过对分辨率为第一分辨率的待处理视频帧集合采用如下方式处理得到:基于目标模型对所述待处理视频帧集合进行处理,以得到第一视频帧集合和至少一个第二视频帧集合;所述第一视频帧集合的分辨率为所述第一分辨率,所述第二视频帧集合的分辨率为第二分辨率,所述第二分辨率小于所述第一分辨率且不同第二视频帧集合的分辨率不同;所述目标模型用于对输入图像进行增强画质并减小数据量的处理;
157.播放所述待播放视频帧。
158.可选的,处理器141还用于执行前述图10所示实施例中的全部或部分步骤。
159.其中,终端的结构中还可以包括通信接口143,用于终端与其他设备或通信网络通信。
160.另外,本技术实施例提供了一种计算机存储介质,用于储存服务器所用的计算机软件指令,其包含用于执行上述图3所示方法实施例中视频处理方法所涉及的程序。
161.本技术实施例提供了一种计算机存储介质,用于储存终端所用的计算机软件指令,其包含用于执行上述图10所示方法实施例中视频处理方法所涉及的程序。
162.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
163.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
164.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程设备的处理器以产生一个机器,使得通过计算机或其他可编程设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
165.这些计算机程序指令也可存储在能引导计算机或其他可编程设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
166.这些计算机程序指令也可装载到计算机或其他可编程设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能的步骤。
167.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
168.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
169.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
170.最后应说明的是:以上各实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1