CN112672149B - 一种视频处理方法、装置、存储介质及服务器 - Google Patents

一种视频处理方法、装置、存储介质及服务器 Download PDF

Info

Publication number
CN112672149B
CN112672149B CN202011481916.5A CN202011481916A CN112672149B CN 112672149 B CN112672149 B CN 112672149B CN 202011481916 A CN202011481916 A CN 202011481916A CN 112672149 B CN112672149 B CN 112672149B
Authority
CN
China
Prior art keywords
frame
video
inter
value
difference value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011481916.5A
Other languages
English (en)
Other versions
CN112672149A (zh
Inventor
王轲
陈健生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Boguan Information Technology Co Ltd
Original Assignee
Guangzhou Boguan Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Boguan Information Technology Co Ltd filed Critical Guangzhou Boguan Information Technology Co Ltd
Priority to CN202011481916.5A priority Critical patent/CN112672149B/zh
Publication of CN112672149A publication Critical patent/CN112672149A/zh
Application granted granted Critical
Publication of CN112672149B publication Critical patent/CN112672149B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请实施例公开了一种视频处理方法、装置、存储介质及服务器,该方法包括:获取视频帧集合,视频帧集合包括多个视频帧;计算多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;确定多个帧间差异值中的最大帧间差异值;计算多个帧间差异值中的平均帧间差异值;根据最大帧间差异值及平均帧间差异值中的至少一种,确定视频帧集合的编码帧率;按照编码帧率对视频帧集合进行编码。以此,根据每个视频帧集合中相邻视频帧的帧间差异值确定编码该视频帧集合的编码帧率,从而提高了视频编码的灵活性。

Description

一种视频处理方法、装置、存储介质及服务器
技术领域
本申请涉及计算机领域,具体涉及一种视频处理方法、装置、存储介质及计算机设备。
背景技术
视频编码是指通过特定的压缩技术,将原始图像数据按照某种方式进行编码压缩的过程。常见的视频编码标准有H.265、H.264、VP8、VP9、AVS等。不同的编码标准定义千差万别,但是最终都有一个共同的目标,将图像信息压缩到一个特定的分辨率和码率。现有技术中,通常是以一固定帧率对视频进行编码。
在对现有技术的研究和实践过程中,本申请的发明人发现,由于视频的内容千差万别,就算同一个品类的视频仍然包含很多场景,固定的帧率编码不能很好的适应视频内容多样化的特点,影响了视频的观看效果。可见,现有技术中对视频进行编码的灵活性较差。
发明内容
本申请实施例提供一种视频处理方法及装置,可以提高编码的灵活性。
为解决上述技术问题,本申请实施例提供以下技术方案:
一种视频处理方法,包括:
获取视频帧集合,所述视频帧集合包括多个视频帧;
计算所述多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;
确定所述多个帧间差异值中的最大帧间差异值;
计算所述多个帧间差异值中的平均帧间差异值;
根据所述最大帧间差异值及所述平均帧间差异值中的至少一种,确定所述视频帧集合的编码帧率;
按照所述编码帧率对所述视频帧集合进行编码。
一种视频处理装置,包括:
获取模块,用于获取视频帧集合,所述视频帧集合包括多个视频帧;
第一计算模块,用于计算所述多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;
第一确定模块,用于确定所述多个帧间差异值中的最大帧间差异值;
第二计算模块,用于计算所述多个帧间差异值中的平均帧间差异值;
第二确定模块,用于根据所述最大帧间差异值及所述平均帧间差异值中的至少一种,确定所述视频帧集合的编码帧率;
编码模块,用于按照所述编码帧率对所述视频帧集合进行编码。
在一些实施例中,所述第二确定模块包括:
第一确定子模块,用于基于预设线性函数集合对所述最大帧间差异值及所述平均帧间差异值中的至少一种进行映射处理,以确定所述视频帧集合的编码帧率。
在一些实施例中,所述第一确定子模块,用于:
计算所述最大帧间差异值与第一预设值的乘积,得到第一计算结果,并将所述第一计算结果确定为所述视频帧集合的编码帧率,所述第一预设值为所述预设线性函数集合中第一预设线性函数的斜率;或者
计算所述平均帧间差异值与第二预设值的乘积,得到第二计算结果,并将所述第二计算结果确定为所述视频帧集合的编码帧率,所述第二预设值为所述预设线性函数集合中第二预设线性函数的斜率。
在一些实施例中,所述第一确定子模块,还用于:
计算所述第一计算结果与所述第二计算结果的和,得到第三计算结果;
将所述第三计算结果与第三预设值的乘积,确定为所述视频帧集合的编码帧率,所述第三预设值为所述预设线性函数集合中第三预设线性函数的斜率。
在一些实施例中,所述第二确定模块包括:
第一计算子模块,用于计算以第四预设值为底所述最大帧间差异值的对数,得到第四计算结果,并将所述第四计算结果确定为所述视频帧集合的编码帧率,所述第四预设值为第一预设对数函数的底;或者
第二计算子模块,用于计算以第五预设值为底所述平均帧间差异值的对数,得到第五计算结果,并将所述第五计算结果确定为所述视频帧集合的编码帧率,所述第五预设值为第二预设对数函数的底。
在一些实施例中,所述第二确定模块包括:
处理子模块,用于基于预设反比例函数对所述最大帧间差异值及所述平均帧间差异值中的至少一种进行处理,确定帧率占比;
第一获取子模块,用于获取编码帧率的上限值;
第二确定子模块,用于根据所述帧率占比与所述编码帧率的上限值的乘积,确定所述视频帧集合的编码帧率。
在一些实施例中,所述第二确定模块包括:
第三计算子单元,用于计算所述最大帧间差异值和所述平均帧间差异值的加权和,得到加权复杂度;
第三确定子单元,用于根据所述加权复杂度,确定所述视频帧集合的编码帧率。
在一些实施例中,所述第三确定子单元,用于:
根据预设复杂度区间,确定所述加权复杂度所属的目标复杂度区间;
根据预设复杂度区间与编码帧率的预设映射关系,确定所述目标复杂度区间对应的编码帧率;
将所述目标复杂度区间对应的编码帧率确定为所述视频帧集合的编码帧率。
在一些实施例中,所述第一计算模块包括:
第二获取子模块,用于获取所述多个视频帧的每一视频帧中每个像素点的像素值;
遍历子模块,用于遍历计算所述多个视频帧的当前视频帧中每个像素点的像素值与前一视频帧中像对应的像素点的像素值的完全平方差,得到多个完全平方差;
第四计算子模块,用于计算所述多个完全平方差的和;
第四确定子模块,用于基于所述多个完全平方差的和,以及所述当前视频帧与前一视频帧的尺寸信息,确定所述当前视频帧与前一视频帧之间的帧间差异值;
第五确定子模块,用于遍历所述多个视频帧中的相邻视频帧,以确定所述多个视频帧中相邻视频帧之间的帧间差异值。
在一些实施例中,所述获取模块,包括:
第三获取子模块,用于获取待编码视频;
第六确定子模块,用于根据所述待编码视频中视频帧的视频帧类型,确定出多个关键帧;
第七确定子模块,用于将多个所述关键帧之间的视频帧组成的集合确定为视频帧集合。
一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行上述视频处理方法中的步骤。
一种服务器,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上所述视频处理方法中的步骤。
本申请实施例提供的一种视频处理方法、装置、存储介质及计算机设备,首先通过获取视频帧集合,所述视频帧集合包括多个视频帧;计算所述多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;确定所述多个帧间差异值中的最大帧间差异值;计算所述多个帧间差异值中的平均帧间差异值;根据所述最大帧间差异值及所述平均帧间差异值中的至少一种,确定所述视频帧集合的编码帧率;按照所述编码帧率对所述视频帧集合进行编码。本申请实施例根据每个视频帧集合中相邻视频帧的帧间差异值确定编码该视频帧集合的编码帧率,以根据视频内容灵活调整编码帧率,从而提高了视频编码的灵活性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请实施例提供的视频处理方法的场景示意图。
图1b为本申请实施例提供的视频处理方法的流程示意图。
图2为本申请实施例提供的视频处理方法的另一流程示意图。
图3a为本申请实施例提供的视频处理装置的结构示意图;
图3b为本申请实施例提供的视频处理装置的另一种结构示意图;
图4为本申请实施例提供的服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一视频处理方法、装置及服务器。
请参阅图1a,图1a为本申请实施例所提供的视频处理系统的场景示意图,包括:终端A、服务器B,其中服务器B用于接收用户在终端A上进行的播放操作信息,并基于播放操作信息将对应的视频等多媒体数据进行视频处理后发送至终端A。终端A在接收到该多媒体数据后,可对其进行相应解码,从而实现播放。终端A与服务器B之间可以通过通信网络连接,该通信网络,可以包括无线网络以及有线网络,其中无线网络包括无线广域网、无线局域网、无线城域网、以及无线个人网中的一种或多种的组合。网络中包括路由器、网关等等网络实体,图中并未示意出。终端可以为手机、电脑或个人数字助理等客户端设备,其通过通信网络与服务器B进行信息交互。
具体的,用于接收终端A发送的播放操作信息的不仅限于单台服务器,也可以为由服务器B、服务器C以及服务器D所组建的服务器集群,服务器集群内的全部或者大部分服务器构成一个分布式网络系统,从而共同向客户端提供一种或多种视频处理服务。
该视频处理系统可以包括视频处理装置,该视频处理装置具体可以集成在服务器中,如图1a所示,该服务器通过获取视频帧集合,该视频帧集合包括多个视频帧;计算该多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;确定该多个帧间差异值中的最大帧间差异值;计算该多个帧间差异值中的平均帧间差异值;根据该最大帧间差异值及该平均帧间差异值中的至少一种,确定该视频帧集合的编码帧率;按照该编码帧率对该视频帧集合进行编码。以此,根据每个视频帧集合中相邻视频帧的帧间差异值确定编码该视频帧集合的编码帧率,以根据视频内容灵活调整编码帧率,从而提高了视频编码的灵活性。
需要说明的是,图1a所示的视频处理系统的场景示意图仅仅是一个示例,本申请实施例描述的视频处理系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着视频处理系统的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
在本实施例中,将从视频处理装置的角度进行描述,该视频处理装置具体可以集成在具备储存单元并安装有微处理器而具有运算能力的服务器中。
请参阅图1b,图1b为本申请实施例提供的视频处理方法的流程示意图。该视频处理方法包括:
在步骤101中,获取视频帧集合,视频帧集合包括多个视频帧。
其中,视频为由多帧连续的视频帧按照播放时的时间顺序组成,视频帧集合即为由多帧视频帧所以组成的集合。
在一些实施方式中,该获取视频帧集合的步骤,包括:
(1)获取待编码视频;
(2)根据该待编码视频中视频帧的视频帧类型,确定出多个关键帧;
(3)将多个该关键帧之间的视频帧组成的集合确定为视频帧集合。
其中,关键帧即I帧,又称为内部画面(intra picture),一般的在两段品类不同的视频片段中插有关键帧。例如:关键帧前的视频片段为包含信息量较丰富的打斗场景(a场景);关键帧后的视频片段为包含信息量较少的静态风景和室内场景(b场景)。因此,可在对视频进行转码的过程中确定出至少两个关键帧,从而将组成两个关键帧之间的所有视频帧组成的集合确定为视频帧集合。
在步骤102中,计算多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值。
其中,计算相邻两帧视频帧之间的帧间差异值的目的在于确定视频帧集合中所有视频帧所组成的视频片段所展现的是否为复杂度较高的场景。例如:打斗场景中,每相邻两视频帧之间的帧间差异值较大;而静态风景中,每相邻两视频帧之间的帧间差异值较小。
在一些实施方式中,该计算该多个视频帧中每相邻两视频帧之间的帧间差异值,以得到多个帧间差异值的步骤,包括:
(1)获取该多个视频帧的每一视频帧中每个像素点的像素值;
(2)遍历计算该多个视频帧的当前视频帧中每个像素点的像素值与前一视频帧中像对应的像素点的像素值的完全平方差,得到多个完全平方差;
(3)计算该多个完全平方差的和;
(4)基于该多个完全平方差的和,以及该当前视频帧与前一视频帧的尺寸信息,确定该当前视频帧与前一视频帧之间的帧间差异值;
(5)遍历该多个视频帧中的相邻视频帧,以确定该多个视频帧中相邻视频帧之间的帧间差异值。
其中,可根据相邻两视频帧中同一位置的像素点的像素值确定帧间差异值,具体的,可参照如下公式:
Figure BDA0002838352300000071
其中,MSE为帧间差异值,M为视频帧的高度,N为视频帧的宽度,fij为相邻两帧视频帧中播放时间在后的视频帧中宽为i,高为j所对应的像素点的像素值,f′ij为相邻两帧视频帧中播放时间在前的视频帧中宽为i,高为j所对应的像素点的像素值,按照如上公式可评估出一段视频的复杂度。具体的,fij还可以为相邻两帧视频帧中播放时间在前的视频帧中宽为i,高为j所对应的像素点的像素值,f′ij为相邻两帧视频帧中播放时间在后的视频帧中宽为i,高为j所对应的像素点的像素值,由于不影响最终的计算结构,因此fij及f′ij所代表的视频帧前后顺序此处不做限定。
例如表1及表2所示,表1为宽为3高为2的视频帧A的像素值排布,表2为宽为3高为2的视频帧B的像素值排布,其中,视频帧B与视频帧B相邻。
表1
a<sub>1</sub> a<sub>2</sub> a<sub>3</sub>
b<sub>1</sub> b<sub>2</sub> b<sub>3</sub>
表2
c<sub>1</sub> c<sub>2</sub> c<sub>3</sub>
d<sub>1</sub> d<sub>2</sub> d<sub>3</sub>
则视频帧A相对于视频帧B的帧间差异值为:
Figure BDA0002838352300000081
在一些实施方式中,该计算该多个视频帧中每相邻两视频帧之间的帧间差异值,以得到多个帧间差异值的步骤,包括:
(1)获取相邻两帧视频帧中每一视频帧的像素平均值、像素值的标准差以及像素值的协方差;
(2)基于每一视频帧的像素平均值、像素值的标准差以及像素值的协方差,确定相邻两帧视频帧之间的亮度比较值、对比度比较值、结构比较值;
(3)确定该亮度比较值、对比度比较值与结构比较值的乘积,为帧间差异值。
其中,可从亮度、对比度以及结构这三个维度确定相邻两帧视频帧的差异是否较大。
例如,求亮度差异值的表达式为:
Figure BDA0002838352300000082
其中,μx和μy分别代表相邻两帧视频帧中每一视频帧的像素平均值,c1为常数。
例如,求对比度差异值的表达式为:
Figure BDA0002838352300000083
其中,σx和σy分别代表相邻两帧视频帧中每一视频帧的像素值的标准差,σxσy代表每一视频帧的像素值的协方差,c2为常数。
例如,求结构差异值的表达式为:
Figure BDA0002838352300000084
其中,c3为常数,且一般为c2的一半。
具体的,当确定出两视频帧之间的亮度差异值、对比度差异值以及结构差异值后,可根据帧间差异值公式确定两视频帧之间的帧间差异值,具体公式为:
SSIM(x,y)=l(x,y)*c(x,y)*s(x,y);
当c3为c2的一半时,公式可简化为:
Figure BDA0002838352300000085
按照如上方式依次遍历视频帧集合中每一相邻两帧视频帧,从而确定出多个帧间差异值。
在步骤103中,确定多个帧间差异值中的最大帧间差异值。
其中,在步骤102中计算得到多个帧间差异值后,可获取多个帧间差异值中数值最大的帧间差异值,并将其确定为最大帧间差异值。
例如:视频帧集合中相邻两帧视频帧之间的帧间差异值分别为1、2、1、4、2,则将4确定为最大帧间差异值。
在步骤104中,计算多个帧间差异值中的平均帧间差异值。
其中,在步骤102中计算得到多个帧间差异值后,可计算多个帧间差异值中的平均值值,并将计算后的结构确定为平均帧间差异值
例如:视频帧集合中相邻两帧视频帧之间的帧间差异值分别为1、2、1、4、2,则平均差异值为2。
在步骤105中,根据最大帧间差异值及平均帧间差异值中的至少一种,确定视频帧集合的编码帧率。
其中,由于视频帧集合中的最大帧间差异值以及平均帧间差异值均能反应出视频帧集合中视频帧之间的复杂度。由于复杂度是体现视频帧集合所构成的视频片段的内容是否包含信息量较丰富的场景。若场景较为丰富(例如打斗场景),可使用较高的编码帧率进行编码;若场景较为简单(例如静态风景),可使用较低的编码帧率进行编码。因此需要根据最大帧间差异值和/或平均帧间差异值确定视频帧集合的编码帧率。
在一些实施方式中,该根据该最大帧间差异值及该平均帧间差异值中的至少一种,确定该视频帧集合的编码帧率的步骤,包括:
基于预设线性函数集合对该最大帧间差异值及该平均帧间差异值中的至少一种进行映射处理,以确定该视频帧集合的编码帧率。
其中,可根据线性函数将最大帧间差异值和/或该平均帧间差异值进行映射,从而确定视频帧集合的编码帧率。预设线性函数集合中包括有多个预设的线性函数,可事先建立线性函数与最大帧间差异值和/或平均帧间差异值之间的映射关系,当采用最大帧间差异值确定视频帧集合的编码帧率时,可根据映射关系从预设线性函数集合中确定出对应的线性函数;当采用平均帧间差异值确定视频帧集合的编码帧率时,可根据映射关系从预设线性函数集合中确定出对应的线性函数;当采用最大帧间差异值和平均帧间差异值确定视频帧集合的编码帧率时,可根据映射关系从预设线性函数集合中确定出对应的线性函数。具体的,线性函数与最大帧间差异值和平均帧间差异值之间的映射关系可以为多对一的关系(也即当采用最大帧间差异值和平均帧间差异值确定视频帧集合的编码帧率时可通过多个预设线性函数确定定视频帧集合的编码帧率),此处不做限定。
在一些实施方式中,该基于预设线性函数集合对该最大帧间差异值及该平均帧间差异值中的至少一种进行映射处理,以确定该视频帧集合的编码帧率的步骤,包括:
(1)计算该最大帧间差异值与第一预设值的乘积,得到第一计算结果,并将该第一计算结果确定为该视频帧集合的编码帧率;或者
(2)计算该平均帧间差异值与第二预设值的乘积,得到第二计算结果,并将该第二计算结果确定为该视频帧集合的编码帧率。
其中,线性函数可以为:
targetfps=a*B;或者targetfps=b*C;
其中,a为第一预设值,B为最大帧间差异值,b为第二预设值,C为平均帧间差异值,从而将根据a与B计算得到的第一计算结果确定为视频帧集合的编码帧率,或者将根据b与C计算得到的第二计算结果确定为视频帧集合的编码帧率。
具体的,由于采用最大帧间差异值或者平均帧间差异值,因此为了得到相同的编码帧率,所采用的预设线性函数也是不同的,当采用最大帧间差异值时,可通过第一预设线性函数确定,故第一预设值a为第一预设线性函数的斜率;当采用平均帧间差异值时,可通过第二预设线性函数确定,故第二预设值b为第二预设线性函数的斜率。
具体的,线性函数还可以为:
targetfps=a*B+c;或者targetfps=b*C+c;
其中,c为常数,可根据该线性函数映射出最大帧间差异值或平均帧间差异值对应的编码帧率。
在一些实施方式中,该方法还包括:
(1)计算该第一计算结果与该第二计算结果的和,得到第三计算结果;
(2)将该第三计算结果与第三预设值的乘积,确定为该视频帧集合的编码帧率。
其中,线性函数还可以为:
targetfps=d*(a*B+b*C);
其中,d为常数,通过计算第一计算结果与第二计算结果的和,得到第三计算结果,再计算第三计算结果与d的乘积,从而得到视频帧集合的编码帧率。
具体的,当采用最大帧间差异值以及平均帧间差异值确定编码帧率时,可采用第三预设线性函数确定,此处的第三预设值即为第三预设线性函数的斜率。
在一些实施方式中,该根据该最大帧间差异值及该平均帧间差异值中的至少一种,确定该视频帧集合的编码帧率的步骤,包括:
(1)计算以第四预设值为底该最大帧间差异值的对数,得到第四计算结果,并将该第四计算结果确定为该视频帧集合的编码帧率;或者
(2)计算以第五预设值为底该平均帧间差异值的对数,得到第五计算结果,并将该第五计算结果确定为该视频帧集合的编码帧率。
其中,还可映射关系还可以通过对数函数实现,对数公式为:
targetfps=logeB;或者targetfps=logfC;
其中,e为第四预设值,f为第五预设值,将以e为底B的对数确定为视频帧集合的编码帧率,或者将以f为底C的对数确定为视频帧集合的编码帧率。
具体的,由于采用最大帧间差异值或者平均帧间差异值,因此为了得到相同的编码帧率,所采用的预设对数函数也是不同的,当采用最大帧间差异值时,可通过第一预设对数函数确定,故第四预设值e为第一预设对数函数的底;当采用平均帧间差异值时,可通过第二预设对数函数确定,故第五预设值f为第二预设对数函数的底。
在一些实施方式中,该根据该最大帧间差异值及该平均帧间差异值中的至少一种,确定该视频帧集合的编码帧率的步骤,包括:
(1)基于预设反比例函数对该最大帧间差异值及该平均帧间差异值中的至少一种进行处理,确定帧率占比;
(2)获取编码帧率的上限值;
(3)根据该帧率占比与该编码帧率的上限值的乘积,确定该视频帧集合的编码帧率。
其中,编码帧率的上限值为服务器可编码的最大帧率,例如1秒120帧,并通过反比例函数确定出最大帧间差异值和/或该平均帧间差异值对应的帧率占比,再根据编码帧率的上限值以及帧率占比确定视频帧集合的编码帧率。
具体的,反比例函数为:
Figure BDA0002838352300000121
或者
Figure BDA0002838352300000122
其中,maxfps为编码帧率的上限值,g与h为常数,
Figure BDA0002838352300000123
Figure BDA0002838352300000124
为帧率占比,从而计算编码帧率的上限值与帧率占比的乘积,将得到的结果确定为编码帧率。
其中,反比例函数还可以为:
Figure BDA0002838352300000125
其中,j、k及l均为常数,通过将最大帧间差异值以及平均帧间差异值均代入该反比例函数,从而可以更准确的确定出视频帧集合的编码帧率。
具体的,若根据反比例函数所计算得到的结果低于事先设定的预设阈值时,则将预设阈值确定为视频帧集合的编码帧率。
在一些实施方式中,该根据该最大帧间差异值和/或该平均帧间差异值,确定该视频帧集合的编码帧率的步骤,包括:
(1)计算该最大帧间差异值和该平均帧间差异值的加权和,得到加权复杂度;
(2)根据该加权复杂度,确定该视频帧集合的编码帧率。
其中,求加权复杂度的公式为:
MSEuse=(m*B+n*C);
其中,m及n分别为最大帧间差异值的加权系数,平均帧间差异值的加权系数,MSEuse为加权复杂度。
在一些实施方式中,该根据该加权复杂度,确定该视频帧集合的编码帧率的步骤,包括:
(1.1)根据预设复杂度区间,确定该加权复杂度所属的目标复杂度区间;
(1.2)根据预设复杂度区间与编码帧率的预设映射关系,确定该目标复杂度区间对应的编码帧率;
(1.3)将该目标复杂度区间对应的编码帧率确定为该视频帧集合的编码帧率。
其中,可事先建立编码帧率与加权复杂度区间的映射关系,例如:编码帧率为1秒60帧对应的加权复杂度区间为(1,3),编码帧率为1秒120帧对应的加权复杂度区间为(3,5),从而在确定出加权复杂度后,可根据加权复杂度所处的目标复杂度区间,根据映射关系确定出目标复杂度区间所对应的编码帧率,从而确定出加权复杂度对应的编码帧率。
在步骤106中,按照编码帧率对视频帧集合进行编码。
其中,在确定出针对于该视频帧集合的编码帧率后,按照确定出的编码帧率对视频帧集合中的视频帧进行编码压缩,从而得到针对于该视频帧集合的编码后视频片段。由于视频中存在多个视频片段,可按照步骤101~步骤106的方式依次进行编码压缩,从而得到整个视频文件的编码后视频。针对视频的不同视频片段进行快速分析,决策出每一个片段适合编码的帧率,可以在加强压缩效果的同时,提升视频的观看体验。具体的可以对画面变动剧烈的场景使用高帧率编码,对于画面变动不大的场景使用低帧率编码。
由上述可知,本申请实施例首先通过获取视频帧集合,该视频帧集合包括多个视频帧;计算该多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;确定该多个帧间差异值中的最大帧间差异值;计算该多个帧间差异值中的平均帧间差异值;根据该最大帧间差异值及该平均帧间差异值中的至少一种,确定该视频帧集合的编码帧率;按照该编码帧率对该视频帧集合进行编码。本申请实施例根据每个视频帧集合中相邻视频帧的帧间差异值确定编码该视频帧集合的编码帧率,以根据视频内容灵活调整编码帧率,从而提高了视频编码的灵活性。
结合上述实施例所描述的方法,以下将举例作进一步详细说明。
在本实施例中,具体参照以下说明。
请参阅图2,图2为本申请实施例提供的视频处理方法的另一流程示意图。该方法流程可以包括:
在步骤201中,获取待编码视频。
其中,视频为由多帧连续的视频帧按照播放时的时间顺序组成。
在步骤202中,根据待编码视频中视频帧的视频帧类型,确定出多个关键帧。
其中,关键帧即I帧,又称为内部画面(intra picture),一般的在两段品类不同的视频片段中插有关键帧。例如:关键帧前的视频片段为包含信息量较丰富的打斗场景(a场景);关键帧后的视频片段为包含信息量较少的静态风景和室内场景(b场景)。因此,可在对视频进行转码的过程中确定出至少两个关键帧
在步骤203中,将多个关键帧之间的视频帧组成的集合确定为视频帧集合。
其中,视频帧集合即为由多帧视频帧所以组成的集合,多帧视频帧即为处于两帧关键帧时间的视频帧。
在步骤204中,获取多个视频帧的每一视频帧中每个像素点的像素值。
其中,例如表3及表4所示,表3为宽为3高为2的视频帧A的像素值排布,表4为宽为3高为2的视频帧B的像素值排布,其中,视频帧B与视频帧B相邻。
表3
a<sub>1</sub> a<sub>2</sub> a<sub>3</sub>
b<sub>1</sub> b<sub>2</sub> b<sub>3</sub>
表4
c<sub>1</sub> c<sub>2</sub> c<sub>3</sub>
d<sub>1</sub> d<sub>2</sub> d<sub>3</sub>
其中,表3及表4中每格代表像素点,每格中写入的即为像素点的像素值。
在步骤205中,遍历计算多个视频帧的当前视频帧中每个像素点的像素值与前一视频帧中像对应的像素点的像素值的完全平方差,得到多个完全平方差。
其中,可根据相邻两视频帧中同一位置的像素点的像素值确定帧间差异值,具体的,可参照如下公式:
Figure BDA0002838352300000141
其中,MSE为帧间差异值,M为视频帧的高度,N为视频帧的宽度,fij为相邻两帧视频帧中播放时间在后的视频帧中宽为i,高为j所对应的像素点的像素值,f′ij为相邻两帧视频帧中播放时间在前的视频帧中宽为i,高为j所对应的像素点的像素值,按照如上公式可评估出一段视频的复杂度。具体的,fij还可以为相邻两帧视频帧中播放时间在前的视频帧中宽为i,高为j所对应的像素点的像素值,f′ij为相邻两帧视频帧中播放时间在后的视频帧中宽为i,高为j所对应的像素点的像素值,由于不影响最终的计算结构,因此fij及f′ij所代表的视频帧前后顺序此处不做限定。
在步骤206中,计算多个完全平方差的和。
以表1及表2为例,多个完全平方差的和即为:
(a1-c1)2+(a2-c2)2+(a3-c3)2+(b1-d1)2+(b2-d2)2+(b3-d3)2
在步骤207中,基于多个完全平方差的和,以及当前视频帧与前一视频帧的尺寸信息,确定当前视频帧与前一视频帧之间的帧间差异值。
其中,以表3及表4为例,相邻两帧视频帧的宽为3,高为2。并按照公式,将多个完全平方差的和除以3*2,得到:
Figure BDA0002838352300000151
在步骤208中,遍历多个视频帧中的相邻视频帧,以确定多个视频帧中相邻视频帧之间的帧间差异值。
其中,按照如上方式依次遍历视频帧集合中每一相邻两帧视频帧,从而确定出多个帧间差异值。
在步骤209中,确定多个帧间差异值中的最大帧间差异值。
例如:视频帧集合中相邻两帧视频帧之间的帧间差异值分别为1、2、1、4、2,则将4确定为最大帧间差异值。
在步骤210中,计算多个帧间差异值中的平均帧间差异值。
例如:视频帧集合中相邻两帧视频帧之间的帧间差异值分别为1、2、1、4、2,则平均差异值为2。
在步骤211中,计算该最大帧间差异值与第一预设值的乘积,得到第一计算结果,并将该第一计算结果确定为该视频帧集合的编码帧率;或者计算该平均帧间差异值与第二预设值的乘积,得到第二计算结果,并将该第二计算结果确定为该视频帧集合的编码帧率。
其中,由于视频帧集合中的最大帧间差异值以及平均帧间差异值均能反应出视频帧集合中视频帧之间的复杂度。由于复杂度是体现视频帧集合所构成的视频片段的内容是否包含信息量较丰富的场景。若场景较为丰富(例如打斗场景),可使用较高的编码帧率进行编码;若场景较为简单(例如静态风景),可使用较低的编码帧率进行编码。因此需要根据最大帧间差异值和/或平均帧间差异值确定视频帧集合的编码帧率。
可根据线性函数将大帧间差异值和/或该平均帧间差异值进行映射,从而确定视频帧集合的编码帧率。
在步骤212中,确定第一计算结果或该第二计算结果为视频帧集合的编码帧率。
其中,线性函数可以为:
targetfps=a*B;或者targetfps=b*C;
其中,a为第一预设值,B为最大帧间差异值,b为第二预设值,C为平均帧间差异值,从而将根据a与B计算得到的第一计算结果确定为视频帧集合的编码帧率,或者将根据b与C计算得到的第二计算结果确定为视频帧集合的编码帧率。
具体的,由于采用最大帧间差异值或者平均帧间差异值,因此为了得到相同的编码帧率,所采用的预设线性函数也是不同的,当采用最大帧间差异值时,可通过第一预设线性函数确定,故第一预设值a为第一预设线性函数的斜率;当采用平均帧间差异值时,可通过第二预设线性函数确定,故第二预设值b为第二预设线性函数的斜率。
在步骤213中,按照编码帧率对视频帧集合进行编码。
其中,在确定出针对于该视频帧集合的编码帧率后,按照确定出的编码帧率对视频帧集合中的视频帧进行编码压缩,从而得到针对于该视频帧集合的编码后视频片段。由于视频中存在多个视频片段,可按照步骤201~步骤213的方式依次进行编码压缩,从而得到整个视频文件的编码后视频。
由上述可知,本申请实施例首先通过获取视频帧集合,该视频帧集合包括多个视频帧;计算该多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;确定该多个帧间差异值中的最大帧间差异值;计算该多个帧间差异值中的平均帧间差异值;根据该最大帧间差异值及该平均帧间差异值中的至少一种,确定该视频帧集合的编码帧率;按照该编码帧率对该视频帧集合进行编码。本申请实施例根据每个视频帧集合中相邻视频帧的帧间差异值确定编码该视频帧集合的编码帧率,以根据视频内容灵活调整编码帧率,从而提高了视频编码的灵活性。
为便于更好的实施本申请实施例提供的视频处理方法,本申请实施例还提供一种基于上述视频处理方法的装置。其中名词的含义与上述视频处理方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图3a及图3b,图3a为本申请实施例提供的视频处理装置的结构示意图,图3b为本申请实施例提供的视频处理装置的另一种结构示意图,其中该视频处理装置可以包括获取模块301、第一计算模块302、第一确定模块303、第二计算模块304、第二确定模块305以及编码模块306等。
获取模块301,用于获取视频帧集合,该视频帧集合包括多个视频帧;
第一计算模块302,用于计算该多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;
第一确定模块303,用于确定该多个帧间差异值中的最大帧间差异值;
第二计算模块304,用于计算该多个帧间差异值中的平均帧间差异值;
第二确定模块305,用于根据该最大帧间差异值及该平均帧间差异值中的至少一种,确定该视频帧集合的编码帧率;
编码模块306,用于按照该编码帧率对该视频帧集合进行编码。
在一些实施方式中,该第二确定模块305包括:
第一确定子模块3051,用于基于预设线性函数集合对所述最大帧间差异值及所述平均帧间差异值中的至少一种进行映射处理,以确定所述视频帧集合的编码帧率。
在一些实施方式中,该第一确定子模块3051,用于:
计算该最大帧间差异值与第一预设值的乘积,得到第一计算结果,并将该第一计算结果确定为该视频帧集合的编码帧率,所述第一预设值为所述预设线性函数集合中第一预设线性函数的斜率;或者
计算该平均帧间差异值与第二预设值的乘积,得到第二计算结果,并将该第二计算结果确定为该视频帧集合的编码帧率,所述第二预设值为所述预设线性函数集合中第二预设线性函数的斜率。
在一些实施方式中,该第一确定子模块3051,还用于:
计算该第一计算结果与该第二计算结果的和,得到第三计算结果;
将该第三计算结果与第三预设值的乘积,确定为该视频帧集合的编码帧率,所述第三预设值为所述预设线性函数集合中第三预设线性函数的斜率。
在一些实施方式中,该第二确定模块305包括:
第一计算子模块3052,用于计算以第四预设值为底该最大帧间差异值的对数,得到第四计算结果,并将该第四计算结果确定为该视频帧集合的编码帧率,所述第四预设值为第一预设对数函数的底;或者
第二计算子模块3053,用于计算以第五预设值为底该平均帧间差异值的对数,得到第五计算结果,并将该第五计算结果确定为该视频帧集合的编码帧率,所述第五预设值为第二预设对数函数的底。
在一些实施方式中,该第二确定模块305包括:
处理子模块3054,用于基于预设反比例函数对所述最大帧间差异值及所述平均帧间差异值中的至少一种进行处理,确定帧率占比;
第一获取子模块3055,用于获取编码帧率的上限值;
第二确定子模块3056,用于根据该帧率占比与该编码帧率的上限值的乘积,确定该视频帧集合的编码帧率。
在一些实施方式中,该第二确定模块305包括:
第三计算子模块3057,用于计算该最大帧间差异值和该平均帧间差异值的加权和,得到加权复杂度;
第三确定子模块3058,用于根据该加权复杂度,确定该视频帧集合的编码帧率。
在一些实施方式中,该第三确定子单元3058,用于:
根据预设复杂度区间,确定该加权复杂度所属的目标复杂度区间;
根据预设复杂度区间与编码帧率的预设映射关系,确定该目标复杂度区间对应的编码帧率;
将该目标复杂度区间对应的编码帧率确定为该视频帧集合的编码帧率。
在一些实施方式中,该第一计算模块302包括:
第二获取子模块3021,用于获取该多个视频帧的每一视频帧中每个像素点的像素值;
遍历子模块3022,用于遍历计算该多个视频帧的当前视频帧中每个像素点的像素值与前一视频帧中像对应的像素点的像素值的完全平方差,得到多个完全平方差;
第四计算子模块3023,用于计算该多个完全平方差的和;
第四确定子模块3024,用于基于该多个完全平方差的和,以及该当前视频帧与前一视频帧的尺寸信息,确定该当前视频帧与前一视频帧之间的帧间差异值;
第五确定子模块3025,用于遍历该多个视频帧中的相邻视频帧,以确定该多个视频帧中相邻视频帧之间的帧间差异值。
在一些实施方式中,该获取模块301,包括:
第三获取子模块3011,用于获取待编码视频;
第六确定子模块3012,用于根据该待编码视频中视频帧的视频帧类型,确定出多个关键帧;
第七确定子模块3013,用于将多个该关键帧之间的视频帧组成的集合确定为视频帧集合。
由上述可知,本申请实施例通过获取模块301获取视频帧集合,该视频帧集合包括多个视频帧;第一计算模块302计算该多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;第一确定模块303确定该多个帧间差异值中的最大帧间差异值;第二计算模块304计算该多个帧间差异值中的平均帧间差异值;第二确定模块305根据该最大帧间差异值及该平均帧间差异值中的至少一种,确定该视频帧集合的编码帧率;编码模块306按照该编码帧率对该视频帧集合进行编码。本申请实施例根据每个视频帧集合中相邻视频帧的帧间差异值确定编码该视频帧集合的编码帧率,以根据视频内容灵活调整编码帧率,从而提高了视频编码的灵活性。
相应的,本申请实施例还提供一种服务器,如图4所示,图4为本申请实施例提供的服务器的结构示意图。该服务器1000包括有一个或者一个以上处理核心的处理器401、有一个或一个以上计算机可读存储介质的存储器402及存储在存储器402上并可在处理器上运行的计算机程序。其中,处理器401与存储器402电性连接。本领域技术人员可以理解,图中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器401是服务器1000的控制中心,利用各种接口和线路连接整个服务器1000的各个部分,通过运行或加载存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行服务器1000的各种功能和处理数据,从而对服务器1000进行整体监控。
在本申请实施例中,服务器1000中的处理器401会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能:
获取视频帧集合,该视频帧集合包括多个视频帧;计算该多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;确定该多个帧间差异值中的最大帧间差异值;计算该多个帧间差异值中的平均帧间差异值;根据该最大帧间差异值及该平均帧间差异值中的至少一种,确定该视频帧集合的编码帧率;按照该编码帧率对该视频帧集合进行编码。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
可选的,如图4所示,服务器1000还包括:输入单元403以及电源404。其中,处理器401分别与输入单元403以及电源404电性连接。本领域技术人员可以理解,图4中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
输入单元403可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
电源404用于给服务器1000的各个部件供电。可选的,电源404可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源404还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管图4中未示出,服务器1000还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
由上可知,本实施例提供的服务器可以获取视频帧集合,该视频帧集合包括多个视频帧;计算该多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;确定该多个帧间差异值中的最大帧间差异值;计算该多个帧间差异值中的平均帧间差异值;根据该最大帧间差异值及该平均帧间差异值中的至少一种,确定该视频帧集合的编码帧率;按照该编码帧率对该视频帧集合进行编码。本申请实施例根据每个视频帧集合中相邻视频帧的帧间差异值确定编码该视频帧集合的编码帧率,以根据视频内容灵活调整编码帧率,从而提高了视频编码的灵活性。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种视频处理方法中的步骤。例如,该计算机程序可以执行如下步骤:
获取视频帧集合,该视频帧集合包括多个视频帧;计算该多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;确定该多个帧间差异值中的最大帧间差异值;计算该多个帧间差异值中的平均帧间差异值;根据该最大帧间差异值及该平均帧间差异值中的至少一种,确定该视频帧集合的编码帧率;按照该编码帧率对该视频帧集合进行编码。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种视频处理方法中的步骤,因此,可以实现本申请实施例所提供的任一种视频处理方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种视频处理方法、装置、计算机可读存储介质及服务器进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上该,本说明书内容不应理解为对本申请的限制。

Claims (11)

1.一种视频处理方法,其特征在于,包括:
获取视频帧集合,所述视频帧集合包括多个视频帧;
获取所述多个视频帧的每一视频帧中每个像素点的像素值;
遍历计算所述多个视频帧的当前视频帧中每个像素点的像素值与前一视频帧中相 对应的像素点的像素值的完全平方差,得到多个完全平方差;
计算所述多个完全平方差的和;
基于所述多个完全平方差的和,以及所述当前视频帧与前一视频帧的尺寸信息,确定所述当前视频帧与前一视频帧之间的帧间差异值;
遍历所述多个视频帧中的相邻视频帧,以确定所述多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;或
获取相邻两帧视频帧中每一视频帧的像素平均值、像素值的标准差以及像素值的协方差;
基于每一视频帧的像素平均值、像素值的标准差以及像素值的协方差,确定相邻两帧视频帧之间的亮度比较值、对比度比较值、结构比较值;
确定该亮度比较值、对比度比较值与结构比较值的乘积,为帧间差异值;
按照如上方式依次遍历视频帧集合中每一相邻两帧视频帧,从而确定出多个帧间差异值;
确定所述多个帧间差异值中的最大帧间差异值;
计算所述多个帧间差异值中的平均帧间差异值;
基于预设线性函数集合对所述最大帧间差异值及所述平均帧间差异值中的至少一种进行映射处理,以确定所述视频帧集合的编码帧率;
按照所述编码帧率对所述视频帧集合进行编码。
2.根据权利要求1所述的视频处理方法,其特征在于,所述基于预设线性函数集合对所述最大帧间差异值及所述平均帧间差异值中的至少一种进行映射处理,以确定所述视频帧集合的编码帧率的步骤,包括:
计算所述最大帧间差异值与第一预设值的乘积,得到第一计算结果,并将所述第一计算结果确定为所述视频帧集合的编码帧率,所述第一预设值为所述预设线性函数集合中第一预设线性函数的斜率;或者
计算所述平均帧间差异值与第二预设值的乘积,得到第二计算结果,并将所述第二计算结果确定为所述视频帧集合的编码帧率,所述第二预设值为所述预设线性函数集合中第二预设线性函数的斜率。
3.根据权利要求2所述的视频处理方法,其特征在于,所述方法还包括:
计算所述第一计算结果与所述第二计算结果的和,得到第三计算结果;
将所述第三计算结果与第三预设值的乘积,确定为所述视频帧集合的编码帧率,所述第三预设值为所述预设线性函数集合中第三预设线性函数的斜率。
4.根据权利要求1所述的视频处理方法,其特征在于,所述基于预设线性函数集合对所述最大帧间差异值及所述平均帧间差异值中的至少一种进行映射处理,以确定所述视频帧集合的编码帧率的步骤,包括:
计算以第四预设值为底所述最大帧间差异值的对数,得到第四计算结果,并将所述第四计算结果确定为所述视频帧集合的编码帧率,所述第四预设值为第一预设对数函数的底;或者
计算以第五预设值为底所述平均帧间差异值的对数,得到第五计算结果,并将所述第五计算结果确定为所述视频帧集合的编码帧率,所述第五预设值为第二预设对数函数的底。
5.根据权利要求1所述的视频处理方法,其特征在于,所述基于预设线性函数集合对所述最大帧间差异值及所述平均帧间差异值中的至少一种进行映射处理,以确定所述视频帧集合的编码帧率的步骤,包括:
基于预设反比例函数对所述最大帧间差异值及所述平均帧间差异值中的至少一种进行处理,确定帧率占比;
获取编码帧率的上限值;
根据所述帧率占比与所述编码帧率的上限值的乘积,确定所述视频帧集合的编码帧率。
6.根据权利要求1所述的视频处理方法,其特征在于,所述基于预设线性函数集合对所述最大帧间差异值及所述平均帧间差异值中的至少一种进行映射处理,以确定所述视频帧集合的编码帧率的步骤,包括:
计算所述最大帧间差异值和所述平均帧间差异值的加权和,得到加权复杂度;
根据所述加权复杂度,确定所述视频帧集合的编码帧率。
7.根据权利要求6所述的视频处理方法,其特征在于,所述根据所述加权复杂度,确定所述视频帧集合的编码帧率的步骤,包括:
根据预设复杂度区间,确定所述加权复杂度所属的目标复杂度区间;
根据预设复杂度区间与编码帧率的预设映射关系,确定所述目标复杂度区间对应的编码帧率;
将所述目标复杂度区间对应的编码帧率确定为所述视频帧集合的编码帧率。
8.根据权利要求1所述的视频处理方法,其特征在于,所述获取视频帧集合的步骤,包括:
获取待编码视频;
根据所述待编码视频中视频帧的视频帧类型,确定出多个关键帧;
将多个所述关键帧之间的视频帧组成的集合确定为视频帧集合。
9.一种视频处理装置,其特征在于,包括:
获取模块,用于获取视频帧集合,所述视频帧集合包括多个视频帧;
第一计算模块,用于获取所述多个视频帧的每一视频帧中每个像素点的像素值;
遍历计算所述多个视频帧的当前视频帧中每个像素点的像素值与前一视频帧中相 对应的像素点的像素值的完全平方差,得到多个完全平方差;
计算所述多个完全平方差的和;
基于所述多个完全平方差的和,以及所述当前视频帧与前一视频帧的尺寸信息,确定所述当前视频帧与前一视频帧之间的帧间差异值;
遍历所述多个视频帧中的相邻视频帧,以确定所述多个视频帧中相邻视频帧之间的帧间差异值,以得到多个帧间差异值;或
获取相邻两帧视频帧中每一视频帧的像素平均值、像素值的标准差以及像素值的协方差;
基于每一视频帧的像素平均值、像素值的标准差以及像素值的协方差,确定相邻两帧视频帧之间的亮度比较值、对比度比较值、结构比较值;
确定该亮度比较值、对比度比较值与结构比较值的乘积,为帧间差异值;
按照如上方式依次遍历视频帧集合中每一相邻两帧视频帧,从而确定出多个帧间差异值;
第一确定模块,用于确定所述多个帧间差异值中的最大帧间差异值;
第二计算模块,用于计算所述多个帧间差异值中的平均帧间差异值;
第二确定模块,用于基于预设线性函数集合对所述最大帧间差异值及所述平均帧间差异值中的至少一种进行映射处理,以确定所述视频帧集合的编码帧率;
编码模块,用于按照所述编码帧率对所述视频帧集合进行编码。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至8任一项所述的视频处理方法中的步骤。
11.一种服务器,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一项所述视频处理方法中的步骤。
CN202011481916.5A 2020-12-15 2020-12-15 一种视频处理方法、装置、存储介质及服务器 Active CN112672149B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011481916.5A CN112672149B (zh) 2020-12-15 2020-12-15 一种视频处理方法、装置、存储介质及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011481916.5A CN112672149B (zh) 2020-12-15 2020-12-15 一种视频处理方法、装置、存储介质及服务器

Publications (2)

Publication Number Publication Date
CN112672149A CN112672149A (zh) 2021-04-16
CN112672149B true CN112672149B (zh) 2022-10-11

Family

ID=75405222

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011481916.5A Active CN112672149B (zh) 2020-12-15 2020-12-15 一种视频处理方法、装置、存储介质及服务器

Country Status (1)

Country Link
CN (1) CN112672149B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113438538B (zh) * 2021-06-28 2023-02-10 康键信息技术(深圳)有限公司 短视频预览方法、装置、设备及存储介质
CN114079824B (zh) * 2021-11-02 2024-03-08 深圳市洲明科技股份有限公司 发送卡及其控制方法、显示设备、计算机设备和存储介质
CN116741122A (zh) * 2023-08-16 2023-09-12 深圳佳弟子科技有限公司 一种屏幕刷新率更新方法、系统、设备及介质
CN117596425A (zh) * 2023-10-24 2024-02-23 书行科技(北京)有限公司 编码帧率的确定方法、装置、电子设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017041537A1 (zh) * 2015-09-08 2017-03-16 深圳Tcl数字技术有限公司 视频帧率的调节方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105208388B (zh) * 2014-06-24 2019-03-05 深圳市腾讯计算机系统有限公司 视频通讯中动态调整编码帧率的方法和系统
CN106375772B (zh) * 2016-08-29 2019-10-01 北京小米移动软件有限公司 视频播放方法及装置
CN106686451A (zh) * 2016-12-28 2017-05-17 努比亚技术有限公司 终端及视频播放控制方法
CN110798738B (zh) * 2018-08-01 2022-01-28 Oppo广东移动通信有限公司 帧率控制方法、装置、终端及存储介质
CN109005414B (zh) * 2018-09-18 2019-08-23 图普科技(广州)有限公司 视频传输方法、装置、设备以及系统
CN109547839A (zh) * 2018-12-11 2019-03-29 网易(杭州)网络有限公司 直播内容的动态预览处理方法及装置、介质、电子设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017041537A1 (zh) * 2015-09-08 2017-03-16 深圳Tcl数字技术有限公司 视频帧率的调节方法及装置

Also Published As

Publication number Publication date
CN112672149A (zh) 2021-04-16

Similar Documents

Publication Publication Date Title
CN112672149B (zh) 一种视频处理方法、装置、存储介质及服务器
WO2021244341A1 (zh) 图像编码方法及装置、电子设备及计算机可读存储介质
US8571106B2 (en) Digital video compression acceleration based on motion vectors produced by cameras
US20220046261A1 (en) Encoding method and apparatus for screen sharing, storage medium, and electronic device
CN111010495B (zh) 一种视频降噪处理方法及装置
CN105472205B (zh) 编码过程中的实时视频降噪方法和装置
CN108810545B (zh) 用于视频编码的方法、装置、计算机可读介质及电子设备
US10455229B2 (en) Prediction mode selection method, apparatus and device
US20130188691A1 (en) Quantization matrix design for hevc standard
US9984504B2 (en) System and method for improving video encoding using content information
CN110620924B (zh) 编码数据的处理方法、装置、计算机设备及存储介质
US8780987B1 (en) Method and apparatus for encoding video by determining block resolution
WO2023005830A1 (zh) 预测编码方法、装置和电子设备
CN112752106B (zh) 视频图像帧的编码控制方法、装置及计算机存储介质
CN110213576B (zh) 视频编码方法、视频编码装置、电子设备及存储介质
CN112312131B (zh) 一种帧间预测方法、装置、设备及计算机可读存储介质
CN112218087B (zh) 图像编码和解码方法、编码和解码装置、编码器及解码器
CN111869211B (zh) 图像编码装置和方法
CN113973202A (zh) 视频编码方法、装置、设备及存储介质
CN113099220B (zh) 一种视频会议视频图像绿屏检测方法、系统及存储介质
CN114584834B (zh) 视频质量优化方法、装置、设备和存储介质
CN115225911B (zh) 一种码率自适应方法、装置、计算机设备和存储介质
CN115661273B (zh) 运动矢量的预测方法、装置、电子设备及存储介质
CN116320446A (zh) 视频编码方法及装置、电子设备和计算机介质
CN113660487A (zh) 用于为帧图像分配对应比特数的参数确定方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant