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

文档序号:28324540发布日期:2022-01-05 00:19阅读:60来源:国知局
视频处理方法、装置及设备与流程

1.本发明涉及视频处理技术领域,具体涉及一种视频处理方法、装置及设备。


背景技术:

2.hdr(高动态范围成像)有多种标准格式,且显示设备的支持能也是多种多样,当显示设备和输入视频流的hdr格式不匹配时,需要在内容制作或播放器中通过预处理或后处理的方式来进行适配。
3.现有技术中预处理都是单帧处理,场景过度不平滑时,视频流亮度的调节会出现闪烁或跳变。


技术实现要素:

4.鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的视频处理方法、装置及设备。
5.根据本发明实施例的一个方面,提供了一种视频处理方法,包括:
6.获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子;所述帧包括多个宏块;
7.根据所述宏块的权重因子,对所述帧序列中的每一帧进行亮度调节。
8.根据本发明实施例的另一方面,提供了一种视频处理装置,包括:
9.获取模块,用于获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子;所述帧包括多个宏块;
10.处理模块,用于根据所述宏块的权重因子,对所述帧序列中的每一帧进行亮度调节。
11.根据本发明实施例的又一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
12.所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述视频处理方法对应的操作。
13.根据本发明实施例的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述视频处理方法对应的操作。
14.根据本发明上述实施例提供的方案,获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子;所述帧包括多个宏块;根据所述宏块的权重因子,对所述帧序列中的每一帧进行亮度调节;可以减少视频进行内容转码处理的预处理过程产生的闪烁或者跳变的情况,由此解决了现有技术中视频预处理过程产生的闪烁或者跳变的问题,取得了较好的有益效果。
15.上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目
的、特征和优点能够更明显易懂,以下特举本发明实施例的具体实施方式。
附图说明
16.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明实施例的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
17.图1示出了本发明实施例提供的视频处理方法的流程图;
18.图2示出了本发明另一实施例提供的视频处理方法中的预处理过程的流程示意图;
19.图3示出了本发明另一实施例提供的视频处理方法的整体流程示意图;
20.图4示出了本发明实施例提供的视频处理装置的结构示意图;
21.图5示出了本发明实施例提供的计算设备的结构示意图。
具体实施方式
22.下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
23.图1示出了本发明实施例提供的视频处理方法的流程图。如图1所示,该方法包括以下步骤:
24.步骤11,获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子;所述帧包括多个宏块;
25.步骤12,根据所述宏块的权重因子,对所述帧序列中的每一帧进行亮度调节。
26.该实施例中,若当前场景包含的帧总数小于或等于预设上限,则当前场景对应的帧序列包括当前场景的每一帧;
27.若当前场景包含的帧总数大于所述预设上限,则当前场景对应多个帧序列,每个帧序列包括的帧数小于或等于所述预设上限;
28.这里,一种实现实例中,当前场景中缓存视频流的输入帧,统计缓存中的视频流的输入帧累加的帧总数,若累加的帧总数小于或者等于预设上限,则当前场景对应的帧序列包括缓存中累加的所有帧,即当前场景的每一帧;
29.若缓存中的视频流的输入帧累加的帧总数大于预设上限,则将当前预设上限的帧数作为一个帧序列,清空缓存,继续进行下一个帧序列的帧数累加判断,直到缓存中当前累加的帧数小于或者等于预设上限,这样,该当前场景包含多个帧序列,每个帧序列的帧数为预设上限值,最后一个帧序列的帧数小于或者等于预设上限值;
30.该实施例中,通过对当前场景中的输入帧进行帧数累加统计,并根据一预设上限进行对当前场景中累加的帧数进行帧序列的划分,从而可以更加准确地确定场景切换,进一步通过获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子;根据所述宏块的权重因子,对所述帧序列中的每一帧进行亮度调节。可以减少视频进行内容转码处理的预处理过程产生的闪烁或者跳变的情况,甚至不会出现闪烁或跳变,保证了
视频流的流畅播放。
31.上述实施例中,场景是否切换通过以下过程进行确定:
32.获得所述视频流相邻两帧对应的宏块之间标准差;
33.若所述标准差大于设定阈值时,确定场景切换。
34.具体的:将所述当前帧和前一帧按固定的宏块大小划分,计算当前帧和前一帧对应宏块之间标准差;当所述标准差大于设定阈值时,判定发生了场景切换。
35.本发明的一可选的实施例中,获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子,包括:
36.根据所述帧序列中的所有帧的宏块的亮度方差、宏块的色度方差、帧的最大亮度区域、帧的最大色度区域,获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子。
37.具体实现时,该步骤可以包括:
38.步骤111,获得场景切换时的帧序列中每一帧的所有宏块的亮度和色度的直方图;
39.步骤112,根据所述直方图,计算所述宏块的亮度均值和色度均值;
40.步骤113,根据所述亮度均值,计算所述宏块的亮度方差以及该宏块所在帧的最大亮度区域;
41.步骤114,根据所述色度均值,计算所述宏块的色度方差以及该宏块所在帧的最大色度区域;
42.步骤115,根据所述帧序列中的所有帧的宏块的亮度方差、宏块的色度方差、帧的最大亮度区域、帧的最大色度区域,获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子。
43.具体的,根据以下公式:
[0044][0045]
获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子;
[0046]
其中,λ
k
[j]为当前宏块的权重因子,j为一帧内当前宏块的宏块编号,k为当前场景中的帧序列的序列编号,i为帧在所述帧序列中的帧编号,n为所述帧序列的总帧数,σ
lkij
为当前宏块的亮度方差,σ
ckij
为当前宏块的色度的方差,h
lkij
为宏块所在帧的最大亮度区域的统计值,h
ckij
为宏块所在帧的最大色度区域的统计值,为大于0.5小于1的权重值,α和β为0到1范围的常数值,ε为小于0.5的权重值。
[0047]
为大于0.5且小于1的权重值,即亮度的权重大于色度,因为人眼对亮度信息更加敏感。α和β为0到1范围的常数值,ε为小于0.5的权重值。该公式中,当方差和高亮,高色度值较大时,调节权重较小,反之,当方差和高亮,高色度值较小时,调节权重较大。与单帧评估指标的计算不同,该公式融合了多帧的信息,包括变化程度和显著特性这些信息,在后续处理中,通过该权重因子调节时,参考了附近多帧的融合信息,从而使得调节更加精细和准确。
[0048]
本发明的一可选的实施例中,根据所述宏块的权重因子,对所述帧序列中的每一帧进行亮度调节,包括:
[0049]
步骤121,根据所述宏块的权重因子,对所述宏块所在帧进行自适应伽马变换处理,得到第一处理结果;
[0050]
具体的,可以通过公式:对当前帧进行自适应伽马变换处理,得到第一处理结果;
[0051]
其中,y
jp
为第一处理结果,j为一帧内当前宏块的编号,p为宏块内的像素索引,λ
k
[j]为宏块的权重因子,x
jp
为待处理的像素;
[0052]
γ1为预设的大于1变换指数,用于增强较亮区域的细节;
[0053]
γ2为预设的小于1变换指数,用于增强较暗区域的细节。
[0054]
当帧序列亮度较高且变化较大时,λ
k
[j]的值较小,γ2调节的权重大于γ1,从而增强较暗区域的细节。
[0055]
步骤122,根据所述第一处理结果,对所述帧序列中的每一帧进行亮度调节。
[0056]
该实施例中,根据所述宏块的权重因子,对所述宏块所在帧进行自适应伽马变换处理,自适应调节时,可以具体到宏块所在的位置,以宏块为单位进行调整,实现了视频流的亮度的精细化调节。
[0057]
本发明的上述实施例在具体实现时,先缓存输入帧,做帧数累加和场景切换检测,当场景切换时的帧序列中的帧数累加达到预设上限或者判断当前帧为场景切换时,权重因子的值清零,重新开始计算;帧序列中帧个数小于或者等于预设上限且当前帧不是帧序列中的最后一帧,做亮度色度信息统计和权重因子的计算。
[0058]
计算用于调整所述视频流亮度的权重因子的步骤中,对帧进行宏块划分,统计当前帧所有宏块的亮度和色度直方图,计算宏块的亮度均值和色度均值,以及宏块的亮度方差和色度方差,并保存;
[0059]
进一步地,计算当前帧的亮度和色度的最大区域,计算方式为比较当前宏块内像素和全体均值的大小,统计大于均值的像素个数,然后记录该值并保存;这里,按宏块保存的最大值信息,能够反应最大区域所在的位置信息,后续做自适应调节时,可以具体到宏块所在的位置,以宏块为单位进行调整,实现了视频流的亮度的精细化调节。
[0060]
该实施例的方法,应用于内容转码处理的预处理适配过程,如图2所示,内容转码处理的预处理适配过程包括:输入非线性信号(视频流),经过eotf(电光转换函数)对输入非线性信号进行转换处理,得到线性光;线性光再通过传输曲线转换进行转换处理后,得到线性光,再进一步地线性光经过oetf(光电转换函数)进行转换处理,输出非线性信号;
[0061]
本实施例中,在输入非线性信号(视频流)之后,经过eotf处理之前,增加根据场景切换时的帧序列中的当前帧的宏块的权重因子,对当前帧进行的自适应伽马变换,在自适应伽马变换后用对应输入源hdr(高动态范围图像)标准的eotf函数对伽马变换后的值变换到线性光,当输入源最大亮度大于显示设备时,通过自适应tone

mapping(色调映射)进行亮度映射,最后用显示设备对应的hdr标准的oetf函数将线性光转换为非线性信号输出。
[0062]
进一步地,步骤122中,根据所述第一处理结果,对所述帧序列中的每一帧进行亮度调节可以包括:
[0063]
若所述帧序列的当前帧的最大亮度高于输出显示设备的亮度时,根据所述第一处理结果以及宏块的权重因子,对当前帧进行亮度调节。
[0064]
这里,当视频流的当前帧的最大亮度(l_in)高于输出显示设备的亮度(l_out)时,
需要做tone

mapping映射。
[0065]
本实施例中,对该映射方法进行改进,增加自适应调节因子,该调节因子为宏块的权重因子;
[0066]
具体的,可以通过公式:对所述帧序列中的每一帧进行亮度调节;
[0067]
其中,y
ji
为调节值,j为一帧内当前宏块的编号,p为宏块内的像素索引,λ
k
[j]为宏块的权重因子,x
jp
为待处理的像素;a,b,c,d,e为常数值。
[0068]
具体的,a,b,c,d,e为tone

mapping算法s曲线的常数值。对像素x
ji
加入所在宏块的宏块权重进行调节,当所在宏块高亮高色彩或者变化较大时,权重较小,反之,权重较大。
[0069]
该实施例中,通过上述自适应伽马调节,从而可以使hdr视频适配过程中,减弱预处理引入的闪烁或者跳变,甚至不会出现闪烁或跳变,保证了视频流的流畅播放。
[0070]
如图3所示,为上述实施例所述的视频处理方法的整体流程,包括:
[0071]
分析过程31,包括:将输入的yuv(明亮度、色度、浓度的图像编码)格式的视频流转换为rgb(红、绿、蓝)流;
[0072]
缓存输入帧,做帧数累加和场景切换检测;
[0073]
当帧数累加到预设的上限或者判断当前帧为场景切换时,权重因子的值清零,重新开始计算;
[0074]
在视频流在场景切换时的帧序列中帧个数小于或者等于预设上限且当前帧不是帧序列中的最后一帧时,进行亮度色度信息统计和权重因子的计算;
[0075]
统计帧序列的所有宏块的亮色度信息,计算帧的亮度和色度的最大区域;
[0076]
计算用于调整所述视频流的当前场景的帧序列的每一帧亮度的当前帧的宏块的权重因子;
[0077]
处理过程32,包括:根据所述宏块的权重因子,对当前帧进行自适应伽马变换处理;进行eotf转换;
[0078]
若当前帧的最大亮度(l_in)高于输出显示设备的亮度(l_out)时,根据当前宏块的权重因子,对当前帧进行亮度调节(即加权tone_mapping),并进行oetf转换;否则,直接进行oetf转换;
[0079]
由rgb转换yuv,输出非线性信号。
[0080]
该实施例中,根据该权重因子,对当前帧进行自适应伽马变换处理,当输入源的最大亮度高于输出显示设备的亮度时,需要做tone

mapping映射。映射时,增加自适应调节因子,该调节因子同样参考分析模块计算得出的调节权重,在每个宏块内进行调节;可以减少hdr视频预处理过程产生的闪烁或者跳变的情况,甚至不会出现闪烁或跳变,保证了视频流的流畅播放。
[0081]
图4示出了本发明实施例提供的视频处理装置40的结构示意图。如图4所示,该装置40包括:
[0082]
获取模块41,用于获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子;所述帧包括多个宏块;
[0083]
处理模块42,用于根据所述宏块的权重因子,对所述帧序列中的每一帧进行亮度
调节。
[0084]
可选的,若当前场景包含的帧总数小于或等于预设上限,则当前场景对应的帧序列包括当前场景的每一帧;
[0085]
若当前场景包含的帧总数大于所述预设上限,则当前场景对应多个帧序列,每个帧序列包括的帧数小于或等于所述预设上限。
[0086]
可选的,场景是否切换通过以下过程进行确定:
[0087]
获得所述视频流相邻两帧对应的宏块之间标准差;
[0088]
若所述标准差大于设定阈值时,确定场景切换。
[0089]
可选的,获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子,包括:
[0090]
根据所述帧序列中的所有帧的宏块的亮度方差、宏块的色度方差、帧的最大亮度区域、帧的最大色度区域,获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子。
[0091]
可选的,根据所述帧序列中的所有帧的宏块的亮度方差、宏块的色度方差、帧的最大亮度区域、帧的最大色度区域,获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子,包括:
[0092]
根据以下公式:
[0093][0094]
获得用于调整视频流在当前场景中的帧序列中的每一帧亮度的宏块的权重因子;
[0095]
其中,λ
k
[j]为当前宏块的权重因子,j为一帧内当前宏块的宏块编号,k为当前场景中的帧序列的序列编号,i为帧在所述帧序列中的帧编号,n为所述帧序列的总帧数,σ
lkij
为当前宏块的亮度方差,σ
ckij
为当前宏块的色度的方差,h
lkij
为宏块所在帧的最大亮度区域的统计值,h
ckij
为宏块所在帧的最大色度区域的统计值,为大于0.5小于1的权重值,α和β为0到1范围的常数值,ε为小于0.5的权重值。
[0096]
可选的,根据所述宏块的权重因子,对所述帧序列中的每一帧进行亮度调节,包括:
[0097]
根据所述宏块的权重因子,对所述宏块所在帧进行自适应伽马变换处理,得到第一处理结果;
[0098]
根据所述第一处理结果,对所述帧序列中的每一帧进行亮度调节。
[0099]
可选的,根据所述宏块的权重因子,对所述宏块所在帧进行自适应伽马变换处理,得到第一处理结果,包括:
[0100]
通过公式:对所述宏块所在帧进行自适应伽马变换处理,得到第一处理结果;
[0101]
其中,y
jp
为第一处理结果,j为帧内当前宏块的编号,p为宏块内的像素索引,λ
k
[j]为宏块的权重因子,x
jp
为待处理的像素;
[0102]
γ1为预设的大于1变换指数,用于增强较亮区域的细节;
[0103]
γ2为预设的小于1变换指数,用于增强较暗区域的细节。
[0104]
需要说明的是,该装置是与上述方法对应的装置,上述方法实施例中的所有实现方式均适用于该装置的实施例中,也能达到相同的技术效果。
[0105]
本发明实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的视频处理方法。
[0106]
图5示出了本发明实施例提供的计算设备的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。
[0107]
如图5所示,该计算设备可以包括:处理器(processor)、通信接口(communications interface)、存储器(memory)、以及通信总线。
[0108]
其中:处理器、通信接口、以及存储器通过通信总线完成相互间的通信。通信接口,用于与其它设备比如客户端或其它服务器等的网元通信。处理器,用于执行程序,具体可以执行上述用于计算设备的视频处理方法实施例中的相关步骤。
[0109]
具体地,程序可以包括程序代码,该程序代码包括计算机操作指令。
[0110]
处理器可能是中央处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。
[0111]
存储器,用于存放程序。存储器可能包含高速ram存储器,也可能还包括非易失性存储器(non

volatile memory),例如至少一个磁盘存储器。
[0112]
程序具体可以用于使得处理器执行上述任意方法实施例中的视频处理方法。程序中各步骤的具体实现可以参见上述视频处理方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
[0113]
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明实施例的内容,并且上面对特定语言所做的描述是为了披露本发明实施例的最佳实施方式。
[0114]
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0115]
类似地,应当理解,为了精简本发明实施例并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
[0116]
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
[0117]
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
[0118]
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明实施例还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明实施例的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
[0119]
应该注意的是上述实施例对本发明实施例进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明实施例可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1