一种基于滑窗梯度熵的视频帧清晰度检测方法

文档序号:26687347发布日期:2021-09-18 01:29阅读:128来源:国知局
一种基于滑窗梯度熵的视频帧清晰度检测方法

1.本发明涉及图像处理领域,尤其涉及一种基于滑窗梯度熵的视频帧清晰度检测方法。


背景技术:

2.视频监控系统是构成安全技术防范系统的重要部分,但是由于大量的模糊图像的出现,导致视频可利用性大大降低,甚至很多模糊图像还会带给人们错误的信息。因此,对视频监控系统进行实时的图像清晰度检测显得十分重要。
3.当前,对于图像的质量评价有两种方法。分别为主观评价和客观评价。主观评价是由人类的视觉效果直接判断图像。客观评价则是通过数学模型的建立判断图像。目前常见的图像客观评价方法有3种,分别为:全参考质量评价、弱参考质量评价、无参考质量评价。
4.在无参考质量评价中,基于传统数字图像清晰度评价方法,目前较为常见且具有代表性的清晰度算法的是基于梯度函数的评价方法,brenne梯度函数法、tenengrad、laplacian梯度函数法以及能量梯度函数法。
5.虽然这些算法都具有良好的性能,但是这些算法都存在的共同的问题。由于这些算法都是基于整幅图像对其梯度的求取或者对比,因此,如果待判断的图像出现局部区域像素全黑或者全白、局部虚化、局部遮挡、局部亮度异常等局部异常情况时,传统算法会将这些清晰的图像检测为异常的图像,导致检测错误。比如,图像的一部分为黑色遮挡,但其他部分的清晰度正常,如果通过求取整张的梯度来判断该图像的清晰度是否异常,那么遮挡部分的梯度就会影响整幅图像的梯度,导致求取出来的梯度值不能够反映整张图像的梯度值,形成结果误判。


技术实现要素:

6.本发明的目的在于提供一种基于滑窗梯度熵的视频帧清晰度检测方法,既能判断出待检测视频帧的局部清晰度异常情况并标记其异常位置又能较为准确快速检测出清晰度异常的视频帧。
7.本发明采用的技术方案是:
8.一种基于滑窗梯度熵的视频帧清晰度检测方法,包括以下步骤:
9.s1:针对监控摄像头持续输入的视频流,在每个设定时段周期起始时刻触发视频帧清晰度异常检测;
10.s2:抽取参考视频帧以及待检测视频帧:每时段起始时刻连续抽取若干视频帧作为参考视频帧用于计算清晰度度量特征参考值;每时段按照设定的抽取周期抽取视频流中若干视频帧,作为待检测视频帧;
11.s3:对于抽取的视频帧进行图像分块并构建梯度熵矩阵;
12.s4:计算获取参考视频帧的梯度熵矩阵取平均后的结果;
13.s5:判断当前时段是否存在参考值;是则,执行步骤s6;否则,将参考视频帧的梯度
熵矩阵取平均后的结果作为当前参考值并执行步骤s7;
14.s6:将参考视频帧的平均梯度熵矩阵各元素分别与当前对应时段的参考值比较判断是否在允许变化范围内;是则,与原元素值加权合并作为当前参考值;否则,保持原元素值作为当前参考值;
15.s7:计算待检测视频帧图像块清晰度异常情况并输出清晰度异常度量矩阵:将每时段待检测视频帧的梯度熵矩阵与该时段参考值进行元素级比较,当梯度熵矩阵元素值在参考值允许变化区间范围内,则判定为正常图像块;否则判定为异常图像块,并根据图像块是否异常设定标志位构建清晰度异常度量矩阵并输出。
16.进一步地,作为一种优选实施方式,s1中以每一小时为一个时段周期。
17.进一步地,作为一种优选实施方式,s2具体包括以下步骤:
18.s2

1:在第t个时段,设抽取k帧作为参考帧,构成参考帧集合f
k
={f1,

,f
k
},其中f1,

,f
k
表示该时段起始时刻的前k帧视频帧;
19.s2

2:在第t个时段,设抽取待检测帧间隔为δf,即每间隔δf帧抽取一帧作为待检测帧,则待检测帧集合f
d
={f
k+1+δf
,

,f
k+1+n
·
δf
},其中n表示抽取的第n个待检测帧。
20.进一步地,作为一种优选实施方式,s3中将视频帧转化为灰度图像,根据设定的滑窗窗口从左到右、从上到下滑动裁剪得到若干图像块;计算每个图像块的梯度熵,根据图像块在对应视频帧灰度图像中的位置构建该帧梯度熵矩阵。
21.进一步地,作为一种优选实施方式,s3具体包括:
22.s3

1:对于参考帧集合中任一帧f
k
(k=1,

,k)或者待检测帧集合中任一帧f
d
(d=k+1+δf,

,k+1+n
·
δf),将其转化为对应的灰度图像g
k
及g
d

23.s3

2:设定滑动窗口尺寸为h*w像素,横向滑动步长为x,纵向滑动y;则从左到右、从上到下对灰度图像g
k
及g
d
滑动裁剪得到m个图像块,每个图像块记为g
k,i
及g
d,i
,其中i=1,2,

,m;横向滑动步长为x,纵向滑动y计算方式如下:
[0024][0025][0026]
其中,α和β为各自的步长控制系数;
[0027]
s3

3:将g
k,i
及g
d
,统一记为g
i
,水平和垂直方向的sobel核分别记为s
x
和s
y
,计算得到水平和垂直方向的梯度d
x
和d
y
,则g
i
的梯度d
i

[0028][0029]
s3

4:图像块g
i
的梯度d
i
共计存在n种梯度值,各梯度值所占比例为ρ
n
(n=1,2,

,n),依据如下公式计算d
i
的梯度熵ξ
i

[0030][0031]
从而得到g
k,i
及g
d,i
的梯度熵ξ
k,i
,ξ
d,i

[0032]
s3

5:根据滑动窗口的位置将g
k,i
及g
d,i
的梯度熵ξ
k,i
和ξ
d,i
构建为视频帧f
k
和f
d
的梯度熵矩阵,分别记为ξ
k

d
[0033][0034]
进一步地,作为一种优选实施方式,s4中计算该时段k帧作为参考帧的ξ
k
均值ξ
k

[0035][0036]
进一步地,作为一种优选实施方式,s6具体包括以下步骤:
[0037]
s6

1:记第t时段清晰度正常视频帧的梯度熵矩阵参考值为ξ
c
[0038][0039]
s6

2:判断第t时段清晰度正常视频帧的梯度熵矩阵参考值是否被赋值;当第t时段的ξ
c
未被赋值,则ξ
c
=ξ
k
;否则,对于ξ
c
中的每个元素ξ
c,i
,i=1,2,

,m,根据以下公式更新:
[0040][0041]
其中,γ
c
为加权参数,σ
c
为梯度熵参考值容错系数。
[0042]
进一步地,作为一种优选实施方式,s7具体步骤包括:
[0043]
s7

1:定义待检测视频帧f
d
清晰度异常度量矩阵为ψ
d
[0044][0045]
其中,元素ψ
d,i
表示视频帧f
d
中第i个图像块清晰度异常标志位;当该图像块图像清晰,则元素值为0;否则,为1;
[0046]
s7

2:将待检测视频帧f
d
的梯度熵矩阵ξ
d
与ξ
c
进行元素级比较,根据以下公式计算ψ
d,i
的值
[0047][0048]
其中,σ
d
为图像块清晰度异常容错系数。
[0049]
本发明采用以上技术方案,既能判断出待检测视频帧的局部清晰度异常情况并标记其异常位置又能较为准确快速检测出清晰度异常的视频帧。
附图说明
[0050]
以下结合附图和具体实施方式对本发明做进一步详细说明;
[0051]
图1为本发明一种基于滑窗梯度熵的视频帧清晰度检测方法的流程示意图;
[0052]
图2为本发明梯度熵矩阵参考值求取示意图;
[0053]
图3为本发明视频帧清晰度异常度量矩阵示意图。
具体实施方式
[0054]
为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图对本技术实施例中的技术方案进行清楚、完整地描述。
[0055]
如图1至图3之一所示,本发明公开了一种基于滑窗梯度熵的视频帧清晰度检测方法,包括以下步骤:
[0056]
s1:针对监控摄像头持续输入的视频流,在每个设定时段周期起始时刻触发视频帧清晰度异常检测;
[0057]
进一步地,作为一种优选实施方式,s1中以每一小时为一个时段周期。将输入的视频流按5s一段分帧后创建文件夹收录总的视频文件,进一步地,将视频分帧存入指定文件夹后,有规律地命名图片。
[0058]
s2:抽取参考视频帧以及待检测视频帧:每时段起始时刻连续抽取若干视频帧作为参考视频帧用于计算清晰度度量特征参考值;每时段按照设定的抽取周期抽取视频流中若干视频帧,作为待检测视频帧;s2具体包括以下步骤:
[0059]
s2

1:在第t个时段,设抽取k帧作为参考帧,构成参考帧集合f
k
={f1,

,f
k
},其中f1,

,f
k
表示该时段起始时刻的前k帧视频帧;
[0060]
s2

2:在第t个时段,设抽取待检测帧间隔为δf,即每间隔δf帧抽取一帧作为待检测帧,则待检测帧集合f
d
={f
k+1+δf
,

,f
k+1+n
·
δf
},其中n表示抽取的第n个待检测帧。
[0061]
s3:对于抽取的视频帧进行图像分块并构建梯度熵矩阵;
[0062]
具体地,将视频帧转化为灰度图像,根据设定的滑窗窗口从左到右、从上到下滑动裁剪得到若干图像块;计算每个图像块的梯度熵,根据图像块在对应视频帧灰度图像中的位置构建该帧梯度熵矩阵;s3具体包括以下步骤:
[0063]
s3

1:对于参考帧集合中任一帧f
k
(k=1,

,k)或者待检测帧集合中任一帧f
d
(d=k+1+δf,

,k+1+n
·
δf),将其转化为对应的灰度图像g
k
及g
d

[0064]
s3

2:设定滑动窗口尺寸为h*w像素,横向滑动步长为x,纵向滑动y;则从左到右、从上到下对灰度图像g
k
及g
d
滑动裁剪得到m个图像块,每个图像块记为g
k,i
及g
d,i
,其中i=1,2,

,m;横向滑动步长为x,纵向滑动y计算方式如下:
[0065][0066][0067]
其中,α和β为各自的步长控制系数;
[0068]
s3

3:将g
k,i
及g
d
,统一记为g
i
,水平和垂直方向的sobel核分别记为s
x
和s
y
,计算得到水平和垂直方向的梯度d
x
和d
y
,则g
i
的梯度d
i

[0069][0070]
s3

4:图像块g
i
的梯度d
i
共计存在n种梯度值,各梯度值所占比例为ρ
n
(n=1,2,

,n),依据如下公式计算d
i
的梯度熵ξ
i

[0071][0072]
从而得到g
k,i
及g
d,i
的梯度熵ξ
k,i
,ξ
d,i

[0073]
s3

5:根据滑动窗口的位置将g
k,i
及g
d,i
的梯度熵ξ
k,i
和ξ
d,i
构建为视频帧f
k
和f
d
的梯度熵矩阵,分别记为ξ
k

d
[0074][0075]
s4:计算获取参考视频帧的梯度熵矩阵取平均后的结果;进一步地,作为一种优选实施方式,s4中计算该时段k帧作为参考帧的ξ
k
均值均值
[0076]
s5:如图2所示,判断当前时段是否存在参考值;是则,执行步骤s6;否则,将参考视频帧的梯度熵矩阵取平均后的结果作为当前参考值并执行步骤s7;
[0077]
s6:将参考视频帧的平均梯度熵矩阵各元素分别与当前对应时段的参考值比较判断是否在允许变化范围内;是则,与原元素值加权合并作为当前参考值;否则,保持原元素值作为当前参考值;
[0078]
具体地,s6包括以下步骤:
[0079]
s6

1:记第t时段清晰度正常视频帧的梯度熵矩阵参考值为ξ
c
[0080][0081]
s6

2:判断第t时段清晰度正常视频帧的梯度熵矩阵参考值是否被赋值;当第t时段的ξ
c
未被赋值,则否则,对于ξ
c
中的每个元素ξ
c,i
,i=1,2,

,m,根据以下公式更新:
[0082][0083]
其中,γ
c
为加权参数,σ
c
为梯度熵参考值容错系数。
[0084]
s7:计算待检测视频帧图像块清晰度异常情况并输出清晰度异常度量矩阵:将每时段待检测视频帧的梯度熵矩阵与该时段参考值进行元素级比较,当梯度熵矩阵元素值在参考值允许变化区间范围内,则判定为正常图像块;否则判定为异常图像块,并根据图像块是否异常设定标志位构建清晰度异常度量矩阵并输出。
[0085]
进一步地,如图3所示,作为一种优选实施方式,s7具体步骤包括:
[0086]
s7

1:定义待检测视频帧f
d
清晰度异常度量矩阵为ψ
d
[0087]
[0088]
其中,元素ψ
d,i
表示视频帧f
d
中第i个图像块清晰度异常标志位;当该图像块图像清晰,则元素值为0;否则,为1;
[0089]
s7

2:将待检测视频帧f
d
的梯度熵矩阵ξ
d
与ξ
c
进行元素级比较,根据以下公式计算ψ
d,i
的值
[0090][0091]
其中,σ
d
为图像块清晰度异常容错系数。
[0092]
s8:根据清晰度异常度量矩阵,判断视频帧的模糊情况。如果为局部异常图像,则输出局部异常位置;如果为全局模糊图像,则输出为模糊图像。
[0093]
本发明采用以上技术方案,既能判断出待检测视频帧的局部清晰度异常情况并标记其异常位置又能较为准确快速检测出清晰度异常的视频帧。
[0094]
显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1