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

视频传输方法、服务器、终端和视频传输系统与流程

2022-06-05 16:31:43 来源:中国专利 TAG:


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.本技术实施例提供的视频传输方法,用于模型训练的数据集由目标视频的视频帧进行数据清洗得到,数据清洗包括去除模糊帧与低信息量帧等视频帧,由此可以提高超分模型的模型效果。
27.在第二方面的一种可能的实现方式中,所述终端接收服务器发送的目标视频的超分模型,以及第三分辨率的所述目标视频包括:所述终端接收所述服务器发送的所述超分模型的结构;所述终端接收所述服务器发送的数据包,所述数据包包括所述超分模型的权重参数和所述第三分辨率的所述目标视频。
28.本技术实施例提供的视频传输方法,终端获取目标视频和超分模型的方式有多种,可以分别获取,也可以同时获取。具体地,终端可以分别接收超分模型的结构和超分模型的权重参数,在一种可能的实现方式中,终端先接收服务器发送的超分模型的结构,再获取超分模型的权重参数和目标视频。进一步地,服务器向终端发送时会将目标视频压缩为不同的数据包进行发送,可选地,超分模型的权重参数和目标视频的第一个数据包一起发
送给终端,使得终端可以尽快开始对目标视频进行超分,在这一实现方式中,不同的目标视频的超分模型可具有相同的模型结构,只需要接收对应的权重参数即可获取不同的目标视频对应的超分模型,由此,可以减少数据传输量。
29.本技术实施例第三方面提供了一种服务器,包括:获取模块,用于获取目标视频的超分模型,所述超分模型根据第一分辨率的所述目标视频和第二分辨率的所述目标视频进行训练获取,所述第二分辨率小于所述第一分辨率,所述超分模型的放大倍率为第一分辨率与第二分辨率在长度方向上的像素之比或在宽度方向上的像素之比;发送模块,用于向终端发送第三分辨率的所述目标视频和所述超分模型,所述超分模型用于以所述放大倍率对所述第三分辨率的所述目标视频进行超分辨率重建以获取第四分辨率的所述目标视频。
30.在第三方面的一种可能的实现方式中,所述目标视频为单个视频或多个同类型视频的集合。
31.在第三方面的一种可能的实现方式中,所述第三分辨率等于所述第二分辨率;所述第四分辨率等于所述第一分辨率。
32.在第三方面的一种可能的实现方式中,所述获取模块具体用于:将所述第一分辨率的目标视频和第二分辨率的所述目标视频输入卷积神经网络模型,获取过拟合的所述超分模型。
33.在第三方面的一种可能的实现方式中,所述获取模块具体用于:对所述第一分辨率的视频中的视频帧和所述第二分辨率的视频中的视频帧进行数据清洗,获取所述第一分辨率的所述目标视频和所述第二分辨率的所述目标视频;对所述第一分辨率的所述目标视频和所述第二分辨率的所述目标视频进行训练,获取所述超分模型。
34.在第三方面的一种可能的实现方式中,所述发送模块具体用于:向所述终端发送所述超分模型的结构;向所述终端发送数据包,所述数据包包括所述超分模型的权重参数和所述第三分辨率的所述目标视频。
35.本技术实施例第四方面提供了一种终端,包括:接收模块,用于接收服务器发送的目标视频的超分模型,所述超分模型根据第一分辨率的所述目标视频和第二分辨率的所述目标视频进行训练获取,所述第二分辨率小于所述第一分辨率,所述超分模型的放大倍率为第一分辨率与第二分辨率在长度方向上或在宽度方向上的像素之比,以及第三分辨率的所述目标视频;处理模块,用于根据所述超分模型,以所述放大倍率对所述第三分辨率的所述目标视频进行超分辨率重建,获取第四分辨率的所述目标视频。
36.在第四方面的一种可能的实现方式中,所述目标视频为单个视频或多个同类型视频的集合。
37.在第四方面的一种可能的实现方式中,所述第三分辨率等于所述第二分辨率;所述第四分辨率等于所述第一分辨率。
38.在第四方面的一种可能的实现方式中,所述超分模型包括:由所述第一分辨率的目标视频和第二分辨率的所述目标视频输入卷积神经网络模型获取的过拟合的超分模型。
39.在第四方面的一种可能的实现方式中,所述超分模型包括:所述第一分辨率的所述目标视频和所述第二分辨率的所述目标视频进行训练获取的超分模型,所述第一分辨率的所述目标视频和所述第二分辨率的所述目标视频由所述第一分辨率的视频中的视频帧和所述第二分辨率的视频中的视频帧进行数据清洗得到。
40.在第四方面的一种可能的实现方式中,所述接收模块具体用于:接收所述服务器发送的所述超分模型的结构;接收所述服务器发送的数据包,所述数据包包括所述超分模型的权重参数和所述第三分辨率的所述目标视频。
41.本技术实施例第五方面提供了一种服务器,包括:一个或多个处理器和存储器;其中,所述存储器中存储有计算机可读指令;所述一个或多个处理器读取所述计算机可读指令以使所述终端实现如上述第一方面以及第一方面各种可能的实现方式中任一项所述的方法。
42.本技术实施例第六方面提供了一种终端,包括:一个或多个处理器和存储器;其中,所述存储器中存储有计算机可读指令;所述一个或多个处理器读取所述计算机可读指令以使所述终端实现如上述第二方面以及第二方面各种可能的实现方式中任一项所述的方法。
43.本技术实施例第七方面提供了一种视频传输系统,包括:如上述第一方面以及第一方面各种可能的实现方式中任一项所述的服务器,和如上述第二方面以及第二方面各种可能的实现方式中任一项所述的终端。
44.本技术实施例第八方面提供了一种包含指令的计算机程序产品,其特征在于,当其在计算机上运行时,使得所述计算机执行如上述第一方面、第二方面以及各种可能的实现方式中任一项所述的方法。
45.本技术实施例第九方面提供了一种计算机可读存储介质,包括指令,其特征在于,当所述指令在计算机上运行时,使得计算机执行如上述第一方面、第二方面以及各种可能的实现方式中任一项所述的方法。
46.本技术实施例第十方面提供了一种芯片,包括处理器。处理器用于读取并执行存储器中存储的计算机程序,以执行上述任一方面任意可能的实现方式中的方法。可选地,该芯片该包括存储器,该存储器与该处理器通过电路或电线与存储器连接。进一步可选地,该芯片还包括通信接口,处理器与该通信接口连接。通信接口用于接收需要处理的数据和/或信息,处理器从该通信接口获取该数据和/或信息,并对该数据和/或信息进行处理,并通过该通信接口输出处理结果。该通信接口可以是输入输出接口。
47.其中,第三方面、第四方面、第五方面、第六方面、第七方面、第八方面、第九方面或第十方面中任一种实现方式所带来的技术效果可参见第一方面中相应实现方式所带来的技术效果,此处不再赘述。
48.从以上技术方案可以看出,本技术实施例具有以下优点:
49.服务器向终端发送第三分辨率的目标视频,以及目标视频的超分模型,该超分模型由第一分辨率(较高分辨率)的目标视频和第二分辨率(较低分辨率)的目标视频训练得到,因此,用于目标视频的超分时,相较通用的超分模型恢复得到的视频更接近原始的高分辨率视频,画质提高。
附图说明
50.图1为视频传输方法的系统架构图;
51.图2为本技术实施例中视频传输方法的系统架构图;
52.图3a为本技术实施例中服务器侧实现视频传输方法的实施例示意图;
53.图3b为本技术实施例中终端侧实现视频传输方法的实施例示意图;
54.图3c为本技术实施例中实现视频传输方法的流程示意图;
55.图4a为本技术实施例中视频传输方法的交互图;
56.图4b为本技术实施例中视频传输方法的另一个实施例示意图;
57.图5为本技术实施例中数据清洗方法的示意图;
58.图6为本技术实施例中超分模型训练的示意图;
59.图7为本技术实施例中数据包中超分模型数据块的结构示意图;
60.图8为本技术实施例中数据包的报头的结构示意图;
61.图9为本技术实施例中数据包的结构示意图;
62.图10为本技术实施例中终端解码数据包的示意图;
63.图11为本技术实施例中终端获取超分图像的示意图;
64.图12为本技术实施例中服务器的一个实施例示意图;
65.图13为本技术实施例中终端的一个实施例示意图;
66.图14为本技术实施例中服务器的另一个实施例示意图;
67.图15为本技术实施例中终端的另一个实施例示意图。
具体实施方式
68.本技术实施例提供了一种视频传输方法,应用于视频传输领域,用于降低传输带宽的同时保证接收端的视频画质。
69.为了便于理解,下面对本技术实施例涉及的部分技术术语进行简要介绍:
70.过拟合(overfitting)
71.过拟合是指在模型参数拟合过程中,由于训练数据包含抽样误差,训练时,复杂的模型将抽样误差也考虑在内,进行了很好的拟合,具体表现是,模型在训练集上效果好,在测试集上效果差,模型泛化能力弱。出现过拟合的两个主要原因是训练数据量少,或者模型过复杂。
72.通常,模型一般用来预测未知数据(非训练集内的数据),过拟合的模型效果较差,因此会在训练过程中,通过扩大训练集数据量及使用合适的模型等方式来避免过拟合,使模型足够拟合真正的规则,而不必拟合过多的抽样误差。一般而言,泛化能力强的模型才是通常意义上的好模型。在模型训练中需要避免过拟合,而追求泛化,以使得模型的适用范围更宽。
73.但是本技术实施例提供的视频传输方法却巧妙利用到过拟合模型的特性,通过较小的数据量(例如单个视频或多个同类型视频)进行超分模型训练,得到过拟合的超分模型,该过拟合的超分模型被专用于训练数据的超分,虽然不适宜用于非训练集的超分,但是对于训练数据的超分可以获取较好的超分效果,即恢复的高分辨视频的画质较高。
74.图像的分辨率:指图像中存储的信息量,是每英寸图像内有多少个像素点,常用“水平像素数
×
垂直像素数”来表示。图像分辨率640*480,代表水平像素点数量为640个,垂直像素点数量为480个。p表示逐行扫描(progressive scanning),常用的图像分辨率的360p,是指480
×
360;720p,是指1280
×
720;1080p是指1920
×
1080;4k是指3840
×
2160。
75.可以理解的是,图像的分辨率越高,包含的数据越多,也能表现更丰富的细节,但
同时需要更多的计算机存储资源。
76.超分模型的放大倍率,是指超分后的图像与超分前的图像在长度方向上的像素数的比值,或者两个图像在宽度方向上的像素数的比值。
77.超分辨率(super resolution,sr)
78.简称超分,是通过硬件或软件的方法提高原有图像的分辨率,通过低分辨率(low resolution,lr)的图像或图像序列来得到高分辨率(high resolution,hr)的图像或图像序列的过程就是超分辨率重建。
79.低分辨率图像(low resolution,lr),和高分辨率图像(high resolution,hr)相互对应,用于输入深度学习模型,例如卷积网络模型中进行训练,hr图像是lr图像对应的原始图像,通过超分模型对lr图像进行超分重建得到超分辨率图像(super resolution,sr),由lr图像得到sr图像的过程可称为超分重建或超分恢复。
80.深度学习:深度学习是机器学习中一种基于对数据进行表征学习的方法。观测值(例如一幅图像)可以使用多种方式来表示,如每个像素强度值的向量,或者更抽象地表示成一系列边、特定形状的区域等。而使用某些特定的表示方法更容易从实例中学习任务(例如,人脸识别或面部表情识别)。深度学习的好处是用非监督式或半监督式的特征学习和分层特征提取高效算法来替代手工获取特征。
81.卷积神经网络:对图像(不同的数据窗口数据)和滤波矩阵(一组固定的权重:因为每个神经元的多个权重固定,所以又可以看做一个恒定的滤波器)做内积(逐个元素相乘再求和)的操作就是所谓的卷积操作,也是卷积神经网络的名字来源。
82.数据清洗:数据清洗是对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性。也就是去掉或者修复掉影响后续模型训练的“脏样本”。本技术中数据清洗包括剔除掉模糊的和信息量比较少的视频帧等。
83.下面结合附图,对本技术的实施例进行描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着技术的发展和新场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
84.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。在本技术中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。
85.请参阅图1,为一个经典的终端视频应用场景示例,包括发送端输入视频(1001)、视频编码(1002)、网络传输(1003)、视频解码(1004)、输出视频(1005)五个部分。发送端视频(1001)是该场景的输入部分,是云端服务器中已保存的视频。视频编码(1002)是对输入的视频图像进行压缩,减少视频冗余信息,以便于网络传输。网络传输(1003)阶段是将视频从发送端传送到接收端。视频解码(1004)用于解码网络传输的经过编码的视频,使视频恢
复成编码之前的状态。输出视频模块(1005)是将解码器合成的视频输出。
86.云端通过网络发送高分辨率视频(如4k分辨率的视频)至用户端,视频平台的带宽成本比较高,同时在用户网络状态差的情况下,端侧视频播放容易出现卡顿的问题。
87.视频平台通常使用较小的分辨率进行压缩传输以降低到用户终端的图像传输带宽。用户终端侧接收到的图像需要进行分辨率恢复后再进行显示。由于压缩传输时存在高频信息丢失,端侧通过传统的上采样算法对低分辨率视频进行插值得到高分辨率视频,容易出现模糊或压缩噪声等现象,图像画质较差。
88.超分辨率技术是从低分辨率的图片恢复高分辨率图片的一种重要的计算机视觉和图像处理手段。基于深度学习的超分辨率技术发展迅速。已有方法通过在端侧预置一个超分辨率模型,对低分辨率的视频进行超分辨率重建,获取高分辨率高画质的视频。
89.但是不同视频具有各自不同的内容、风格和画质,使用单一的预置模型无法覆盖全部的视频场景,导致恢复的画质较原高分辨率画质还有较大差距,甚至在一些场景上视频的画质会劣化。
90.本技术实施例中目标视频为单个视频或多个同类型视频的集合。具体地,目标视频可以是一部连续剧中的一集,或是一个新闻视频、一部电影等独立的一个视频。本技术实施例中,可以对单个视频独立训练超分模型。或者,目标视频还可以是多个同类型视频,例如系列剧、季播剧中的一个系列或一季,又或个人博主的同系列视频等,即在内容、人物或表演中具有关联性的多个视频。由于这些视频通常具有相似的风格和画质,将这些视频独立训练超分模型,超分恢复得到的视频画质较佳。
91.本技术实施例提供的视频传输方法,可以由服务器和终端通过端云协同的方式降低传输带宽,并提升端侧恢复的视频的画质。
92.(一)云侧:即服务器端,使用一集视频的高分辨率视频和低分辨率视频所对应的视频帧生成训练数据集,对于超分辨率的神经网络模型进行过拟合的训练,生成过拟合超分模型。将该集视频的低分辨率视频与该集所对应的过拟合的超分辨率神经网络模型下发至端侧。
93.(二)端侧:使用云侧下发的过拟合超分辨神经网络模型,把该集低分辨率视频通过超分辨率技术重建还原成高分辨率且高画质的视频。
94.如图2所示,本技术实施例通过端云协同的基于深度学习的视频传输方案。
95.在云端的服务器侧,第一分辨率视频(2001)与其对应的第二分辨率视频(2002)的视频将被作为该视频的超分模型(2003)的数据集,其中,第二分辨率小于第一分辨率。超分模型训练模块(2003)利用数据集训练该视频专有的超分模型,不同的视频都会有其相对应的超分模型,可选地,第二分辨率视频(2002)与其对应的超分模型一同在视频帧与模型编码模块(2004)编码为数据包通过网络(2005)中进行传输。
96.在端侧,视频和模型解码模块(2006)将接收的数据包进行解码,得到该集的第二分辨率视频(2007)与其对应的超分模型(2008),通过超分辨率画质重建模块(2009)输出第一分辨率视频(2010)。
97.下面请参阅图3a-3b,分别从服务器侧和终端侧介绍了本技术实施例中的视频传输方法。
98.3101、服务器获取第一分辨率的目标视频和第二分辨率的目标视频;
99.服务器获取目标视频的两个不同分辨率版本,包括第一分辨率的目标视频,和第二分辨率的目标视频,第二分辨率(本技术实施例中或称低分辨率)小于第一分辨率(本技术实施例中或称高分辨率)。本技术实施例中以目标视频为单个剧集为例进行介绍。通常视频平台存储了同一视频的多个分辨率版本,常见的分辨率包括:360p、720p、1080p或4k。如图3c所示,服务器获取单个剧集的第一分辨率的目标视频(3001)的视频(例如:某连续剧第一集的分辨率1080p的视频)与其对应的第二分辨率的目标视频(3002)(例如:该连续剧第一集的分辨率4k的视频)作为超分模型的数据集(3003)。其中第二分辨率的目标视频的视频帧作为该集数据集的数据(data),其对应的第一分辨率的目标视频的视频帧作为该集数据集的标签(label)。数据集的质量对于超分模型训练的效果十分重要,可选地,用于对超分模型进行训练的数据集,可以是未经数据清洗包含目标视频所有视频帧的数据集,也可以是经数据清洗后删减了部分视频帧的数据集。可选地,对数据集(3003)进行数据清洗(3004),数据清洗包括去除模糊帧,过滤低频信息等,得到清洗后的data数据集(3005)和label数据集(3006)。
100.3102、服务器根据第一分辨率的目标视频和第二分辨率的目标视频进行训练,获取超分模型;
101.服务器根据第一分辨率的目标视频和第二分辨率的目标视频对超分模型进行过拟合训练,获取过拟合的超分模型。该超分模型的放大倍率为第一分辨率与第二分辨率的宽度方向的像素比值或者长度方向的像素比值。可选地,单个视频对应一个超分模型。在另一些可能的实现方式中,多个同类型视频的集合对应一个超分模型。可选地,多个同类型视频的集合中每个视频对应的超分模型具有相同的模型结构,和不同的模型参数。
102.如图3c所示,服务器搭建超分辨率的神经网络模型,本基于步骤3101生成的data数据集(3005)与label数据集(3006)进行超分模型的模型训练(3007)。可选地,针对每一集视频训练一个对应的超分模型。此步骤将得到针对该单个剧集视频的超分模型(3008)。可选地,服务器将数据集输入卷积神经网络模型中进行训练,获取过拟合的超分模型。
103.3103、服务器向终端发送超分模型和第三分辨率的目标视频;
104.服务器将步骤3102获取的超分模型和第三分辨率的目标视频发送给终端。需要说明的是,第三分辨率可以与第一分辨率和第二分辨率相同或者不同,具体数值不做限定,示例性的,第三分辨率可以为360p、720p或者1080p,第三分辨率可以根据网络状态灵活选择。可以理解的是,第三分辨率的目标视频包含原始视频的所有视频帧,不需要进行数据清洗。
105.具体的,如图3c所示,编码模块(3010)将超分模型(3008)和第三分辨率的目标视频(3009)编码为数据包送到网络(3011)中进行传输。
106.可选地,超分模型将以二进制文件格式进行传输。可选地,超分模型的模型结构预更新到端侧,当有视频传输需求时,服务器只需向终端发送该视频对应的超分模型的权重(weights)参数,不用再次发送模型结构。可选地,为保证端侧接受的模型具有数据一致性,二进制文件的尾部包含有模型生成的哈希(hash)值。
107.向终端发送的超分模型用于对该第三分辨率的目标视频进行超分,例如,将分辨率为1080p的视频恢复为分辨率4k的视频。
108.本技术实施例提供的数据传输方法,由于向终端发送的第三分辨率的目标视频和超分模型,相较直接发送第四分辨率的视频占用的网络带宽更低,此外,由于该超分模型为
根据目标视频进行过训练得到,用于对于目标视频进行超分恢复效果更好,超分恢复得到的视频画质较高。
109.下面参阅图3b,对本技术实施例提供的视频传输方法在终端侧执行的步骤进行介绍。
110.3201、终端接收服务器发送的超分模型和第三分辨率的目标视频;
111.终端接收云侧服务器发送的超分模型和第三分辨率的目标视频。如图3c所示,具体地,终端接收服务器通过网络传输下发的数据包,通过解码模块(3012)解码数据包得到超分模型(3014),以及第三分辨率的目标视频(3013)。
112.该超分模型为服务器根据第一分辨率的目标视频和第二分辨率的目标视频进行过拟合训练得到。超分模型的放大倍率为第一分辨率与第二分辨率的宽度方向的像素比值或者长度方向的像素比值。该超分模型用于对第三分辨率的目标视频按照放大倍率进行分辨率放大。示例性的,若第一分辨率为4k,第二分辨率为1080p,则放大倍数为两倍,即分辨率1080p的图像在长度方向和宽度方向的像素各扩大两倍。
113.可选地,解码模块(3012)使用与云端服务器相同的哈希方法对超分模型(3014)进行哈希处理,得到一个hash值,使用哈希值进行一致性校验,如果相同,则认为该模型是可靠的;若不同则向云端发送错误信息,要求服务器重新发送正确数据包。
114.3202、终端根据该超分模型对该第三分辨率的目标视频进行超分处理,获取第四分辨率的目标视频;
115.如图3c所示,终端使用过拟合的超分模型(3014)对第三分辨率的目标视频(3013)进行视频超分处理(3015),生成第四分辨率的目标视频(3016)并送显于终端显示装置。第四分辨率的目标视频为第三分辨率的目标视频经超分模型的放大倍数放大后得到。示例性的,若第三分辨率为1080p,超分模型的放大倍数为2倍,则经超分处理得到的目标视频的分辨率为4k。
116.终端接收第三分辨率的目标视频占用的网络带宽较低,此外,由于终端根据该目标视频对应的过拟合的超分模型进行分辨率放大,获取的第四分辨率的目标视频的画质较高。
117.终端接收低分辨率视频和超分模型占用的网络带宽较低,此外,由于该超分模型为根据目标视频进行过拟合训练得到,对于目标视频的超分恢复得到的图像画质较高。
118.下面从端云协同的角度介绍本技术实施例提供的视频传输方法,请参阅图4a。
119.4101、服务器获取数据集;
120.服务器在对超分模型进行训练之前需要先获取数据集。可选地,目标视频为系列视频中任意一集视频,则该集视频对应的第二分辨率的目标视频的视频帧与其对应的第一分辨率的目标视频的视频帧被提取出来作为该集视频的超分模型的数据集。其中低分辨率视频的视频帧作为该集数据集的数据(data),其对应的高分辨率视频的视频帧作为该集数据集的标签(label)。
121.可选地,如图4b所示,本步骤云端服务器调用第三方视频编解码服务(4002)对已存储的视频资源(4001),例如华为视频、爱奇艺视频或优酷视频等进行解码得到视频帧。本实施例中,仅以单个视频为目标视频进行介绍。示例性的,对于电视剧《隐秘的xx》中第一集的4k资源作为第一分辨率的目标视频(4003),其第一集的1080p资源作为第二分辨率的目
标视频(4004),同一集视频的第一分辨率的视频帧与第二分辨率的视频帧的每一帧相互对应。
122.通过视频解码服务(4002)解码获取目标视频的第二分辨率的视频帧(4004),以及对应的第一分辨率的视频帧(4003),解码后的高低清视频每帧相互对应,示例性的,例如第二分辨率的视频帧(4004)中的f_1帧对应第一分辨率的视频帧(4003)的f_1帧。
123.由于数据集的质量对于超分模型训练的效果十分重要,可选地,本步骤对超分模型4005进行训练之前,可以对第一分辨率的视频帧(4003)和第二分辨率的视频帧(4004)通过去除模糊帧,过滤低频信息等方式进行数据清洗,对数据集进行数据清洗的具体过程如图5所示:第一分辨率的目标视频(5001)经解码得到第一分辨率的视频帧,第二分辨率的目标视频(5002)经解码得到第二分辨率的视频帧。对于解码后的每一帧利用分辨率检测算法检测分类数据集中每一帧为高清帧或模糊帧或低信息量帧,将模糊帧与低信息量帧剔除掉获得的数据集为数据清洗之后的数据集,其中,目标视频的第一分辨率的视频帧将作为超分模型训练的标签(label),其对应第二分辨率的视频帧将作为该集模型的数据(data)。
124.4102、服务器训练超分模型;
125.如图6所示,利用步骤4101生成的该集视频的第一分辨率的视频帧(6001)以及对应的第二分辨率视频的视频帧(6002)作为超分模型的数据集,每个第一分辨率的视频帧都有与之对应的第二分辨率的视频帧。利用该数据集对于超分神经网络模型进行过拟合的训练,得到与该集视频绑定的过拟合的超分模型(6003)。
126.4103、服务器编码数据包;
127.如图4b所示,编码模块(4006)将步骤4102生成的该集视频的超分模型(4005),以及第二分辨率的视频帧(4004)进行编码得到数据包。
128.可选地,编码模块对超分模型的处理,如图7所示,生成仅包含权重(weights)参数且不包含模型结构的二进制模型文件model(6002-2);对该二进制模型文件进行哈希处理,得到hash(6002-3)值,放在二进制模型文件尾部;模型6002前部的header(6002-1)是设置该模块的一些参数。三个小模块(6002-1、6002-2、6002-3)共同组成了图7中的模型(6002)。如图8所示,在第一个数据包的进行传输前,将数据包报头的扩展标志位x置1,使数据包可以扩展自定义数据。如图9所示,在发送首个数据包时,把报头(6001)的扩展标志位打开,把模型数据(6002)放到报头(6001)和有效载荷(6003)的中间位置,有效载荷(6003)里面是视频数据。因模型文件已包含在云端向端侧发送的第一个数据包中,服务器向端侧发送的第二个及其后续数据包中将数据包报头的扩展标志位置0(如图9所示),则数据包中的报头后无拓展数据,报头(6001)与有效载荷(6003)之间无模型文件,有效的保证了数据传输的高效性与安全性。
129.4104、服务器向终端发送低分辨率视频和超分模型;
130.如图4b所示,服务器通过网络传输向终端发送包含超分模型(4005)以及第二分辨率的视频帧(4004)的数据包,终端接收该数据包。可以理解的是,根据实时的网络传输情况或者用户需求,服务器可以选择不同分辨率的目标视频向终端发送,不限定于用于训练超分模型的低分辨率的目标视频(4004),本实施例中,以发送第二分辨率的视频为例进行介绍。
131.4105、终端解码数据包;
132.终端接收云侧通过网络传输下发的数据包,通过视频帧与超分模型解码模块(4009)解码数据包(4010)得到超分模型(4011)和第二分辨率的目标视频(4012)。为了避免模型数据在网络被篡改或丢失,解码模型需要对模型数据做一致性校验。如图10所示,解码模块从数据包中获取二进制模型数据块(7001),对数据块进行解码处理(7004),得到二进制模型(7002)和hash值(7003)。使用与云端相同的哈希方法对二进制模型(7002)进行hash处理(7005),得到一个hash值(7006),对hash值(7003)和hash值(7006)进行一致性校验,如果相同,则认为该模型是可靠的。若不同则向云端发送错误信息,要求云端重新发送数据包。
133.4106、终端超分低分辨率视频并送显;
134.请参阅图4b终端使用端侧推理引擎(4013)将第二分辨率的目标视频(4012)通过超分模型(4011)进行视频超分处理得到第一分辨率的目标视频(4014),并送显于端侧显示模块(4015)。如图11所示,超分模型可以将较低分辨率的视频帧进行超分辨率重建得到较高分辨率的视频帧。
135.本技术实施例提供的视频传输方法,可以在保持端侧视频画质不变的基础上,使用较小的带宽(例如带宽降低一半)进行传输。一方面,该方法降低了视频平台的带宽成本,增加了该视频平台的市场竞争力。例如,一集分辨率为4k的视频约为2gb(gigabyte)大小,而传输1080p分辨率的视频约为450mb(megabyte),超分模型约10mb大小,由此可见,本技术实施例提供的视频传输方法可以降低传输带宽。另一方面,由于服务器发送给终端的超分模型为基于目标视频进行训练得到的过拟合的模型,在对目标视频进行超分时效果较通用型超分模型的效果更好,超分获取的视频的画质较高。
136.上面介绍了本技术提供的视频传输方法,下面对实现该视频传输方法的服务器进行介绍,请参阅图12,为本技术实施例中服务器的一个实施例示意图。
137.图12中的各个模块的只一个或多个可以软件、硬件、固件或其结合实现。所述软件或固件包括但不限于计算机程序指令或代码,并可以被硬件处理器所执行。所述硬件包括但不限于各类集成电路,如中央处理单元(cpu)、数字信号处理器(dsp)、现场可编程门阵列(fpga)或专用集成电路(asic)。
138.该服务器包括:
139.获取模块1201,用于获取目标视频的超分模型,所述超分模型根据第一分辨率的所述目标视频和第二分辨率的所述目标视频进行训练获取,所述第二分辨率小于所述第一分辨率,所述超分模型的放大倍率为第一分辨率与第二分辨率在长度方向上的像素之比或在宽度方向上的像素之比;
140.发送模块1202,用于向终端发送第三分辨率的所述目标视频和所述超分模型,所述超分模型用于以所述放大倍率对所述第三分辨率的所述目标视频进行超分辨率重建以获取第四分辨率的所述目标视频。
141.可选地,所述目标视频包括单个视频或多个同类型视频的集合。
142.可选地,所述第三分辨率等于所述第二分辨率;所述第四分辨率等于所述第一分辨率。
143.可选地,所述获取模块1201具体用于:将所述第一分辨率的目标视频和第二分辨率的所述目标视频输入卷积神经网络模型,获取过拟合的所述超分模型。
144.可选地,所述获取模块1201具体用于:对所述第一分辨率的视频中的视频帧和所述第二分辨率的视频中的视频帧进行数据清洗,获取所述第一分辨率的所述目标视频和所述第二分辨率的所述目标视频;对所述第一分辨率的所述目标视频和所述第二分辨率的所述目标视频进行训练,获取所述超分模型。
145.可选地,所述发送模块1202具体用于:向所述终端发送所述超分模型的结构;向所述终端发送数据包,所述数据包包括所述超分模型的权重参数和所述第三分辨率的所述目标视频。
146.本技术实施例提供的服务器,通过获取模块获取目标视频的超分模型和第三分辨率的目标视频,由发送模块发送给终端,由此,实现低带宽的视频传输,基于该超分视频进行超分恢复较现有技术基于通用的超分模型进行超分恢复还可以提升视频画质。
147.下面对实现该视频传输方法的终端进行介绍,请参阅图13,为本技术实施例中终端的一个实施例示意图。
148.图13中的各个模块的只一个或多个可以软件、硬件、固件或其结合实现。所述软件或固件包括但不限于计算机程序指令或代码,并可以被硬件处理器所执行。所述硬件包括但不限于各类集成电路,如中央处理单元(cpu)、数字信号处理器(dsp)、现场可编程门阵列(fpga)或专用集成电路(asic)。
149.该终端包括:接收模块1301,用于接收服务器发送的目标视频的超分模型,所述超分模型根据第一分辨率的所述目标视频和第二分辨率的所述目标视频进行训练获取,所述第二分辨率小于所述第一分辨率,所述超分模型的放大倍率为第一分辨率与第二分辨率在长度方向上或在宽度方向上的像素之比,以及第三分辨率的所述目标视频;
150.处理模块1302,用于根据所述超分模型,以所述放大倍率对所述第三分辨率的所述目标视频进行超分辨率重建,获取第四分辨率的所述目标视频。
151.可选地,所述目标视频包括单个视频或多个同类型视频的集合。
152.可选地,所述第三分辨率等于所述第二分辨率;所述第四分辨率等于所述第一分辨率。
153.可选地,所述超分模型包括:由所述第一分辨率的目标视频和第二分辨率的所述目标视频输入卷积神经网络模型获取的过拟合的超分模型。
154.可选地,所述超分模型包括:所述第一分辨率的所述目标视频和所述第二分辨率的所述目标视频进行训练获取的超分模型,所述第一分辨率的所述目标视频和所述第二分辨率的所述目标视频由所述第一分辨率的视频中的视频帧和所述第二分辨率的视频中的视频帧进行数据清洗得到。
155.可选地,所述接收模块1301具体用于:接收所述服务器发送的所述超分模型的结构;接收所述服务器发送的数据包,所述数据包包括所述超分模型的权重参数和所述第三分辨率的所述目标视频。
156.本技术实施例提供的终端,接收模块接收服务器端发送的目标视频的超分模型和第三分辨率的目标视频,视频传输的带宽较低,基于该超分模型进行超分恢复较现有技术基于通用的超分模型进行超分恢复可以提升视频画质。
157.请参阅图14,为本技术实施例中服务器的另一个实施例示意图;
158.本技术实施例中的服务器,可以是物理机,也可以为运行在抽象硬件资源上的虚
拟机,在实际应用场景中,可以是提供各种云服务的服务器,本技术实施例中对其具体设备形态不做限定。
159.本实施例提供的服务器1400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器1401和存储器1402,该存储器1402中存储有程序或数据。
160.其中,存储器1402可以是易失性存储或非易失性存储。可选地,处理器1401是一个或多个中央处理器(cpu,central processing unit,该cpu可以是单核cpu,也可以是多核cpu。处理器1401可以与存储器1402通信,在服务器1400上执行存储器1402中的一系列指令。
161.该服务器1400还包括一个或一个以上有线或无线网络接口1403,例如以太网接口。
162.可选地,尽管图14中未示出,服务器1400还可以包括一个或一个以上电源;一个或一个以上输入输出接口,输入输出接口可以用于连接显示器、鼠标、键盘、触摸屏设备或传感设备等,输入输出接口为可选部件,可以存在也可以不存在,此处不做限定。
163.本实施例中服务器1400中的处理器1401所执行的流程可以参考前述方法实施例中描述的方法流程,此处不加赘述。
164.请参阅图15,为本技术实施例中终端的另一个实施例示意图;
165.本实施例提供的终端1500,可以为各类具有显示功能的终端,例如手机、平板电脑、台式电脑、智慧屏或可穿戴设备等,本技术实施例中对其具体设备形态不做限定。
166.该终端1500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器1501和存储器1502,该存储器1502中存储有程序或数据。
167.其中,存储器1502可以是易失性存储或非易失性存储。可选地,处理器1501是一个或多个中央处理器(cpu,central processing unit,该cpu可以是单核cpu,也可以是多核cpu。处理器1501可以与存储器1502通信,在终端1500上执行存储器1502中的一系列指令。
168.该终端1500还包括一个或一个以上有线或无线网络接口1503,例如以太网接口。
169.可选地,尽管图15中未示出,终端1500还可以包括一个或一个以上电源;一个或一个以上输入输出接口,输入输出接口可以用于连接显示器、鼠标、键盘、触摸屏设备或传感设备等,输入输出接口为可选部件,可以存在也可以不存在,此处不做限定。
170.本实施例中终端1500中的处理器1501所执行的流程可以参考前述方法实施例中描述的方法流程,此处不加赘述。
171.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
172.在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
173.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个
网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
174.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
175.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
176.以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制。
再多了解一些

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

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

相关文献