刘哲 李秀云 杨子鹏 董雪
摘要:近年来,视频监控技术在智能交通、安防监控等各行各业得到了广泛的应用。随着视频监控设备数量的急剧增加,其自身设备的故障维护和管理面临越来越大的挑战。以往采用人工巡检的方式对监控视频设备的故障管理模式已经远远不能满足现实的需求。针对视频监控设备检测中的视频质量分析问题,本文设计并实现了一种视频质量实时检测系统,包括图像预处理、异常检测、结果输出、管理等四个模块。其中图像预处理模块主要是对视频图像格式、分辨率等进行处理;异常检测模块则是视频常见异常的检测算法实现部分;结果输出模块是对异常检测结果的可视化显示;管理模块则是为用户便于管理系统而设计的?测试结果表明该系统基本满足视频质量实时检测要求,不仅检测异常精度高,而且系统性能稳定。
关键词:视频质量检测;图像质量评价;清晰度异常;偏色
中图分类号:TP391文献标识码:ADOI:10.3969/j.issn.l003-6970.2017.08.044
本文著录格式:刘哲,李秀云,杨子鹏,等.智能识别视频图像质量分析系统在平安城市的应用[J].软件,2017,38(8):220-225
引言
近年来,视频监控技术在智能交通、安防监控等各行各业得到了广泛的应用。随着视频监控设备数量的急剧增加,其自身设备的故障维护和管理面临越来越大的挑战。以往采用人工巡检的方式对监控视频设备的故障管理模式已经远远不能满足现实的需求。实现视频监控系统智能化自动检测具有十分重要的意义。本文重点研究的是视频质量检测技术。即通过取得视频流之后要实时地检测出视频图像中是否存在亮度异常、信号缺失、噪点、雪花噪声、清晰度异常以及偏色这六种视频异常,然后将检测结果存储到数据库中以便监管人员进行事后的检索与查看,然后管理者从检查结果中发现视频监控系统中的异常状况,从而采取及时有效的措施对监控系统进行修复。本文的难点在于各种异常检测的算法设计与实现,尤其是清晰度异常与偏色这两个基本为图像质量奠定基调的异常的检测。
1 系统总体设计
本文根据视频质量检测的实际需求,对整个系统的框架进行了设计,包括图像预处理、异常检测、结果输出、管理等四个模块。其中图像预处理模块主要是对视频图像格式、分辨率等进行处理;异常检测模块则是视频常见异常的检测算法实现部分;结果输出模块是对异常检测结果的可视化显示;管理模块则是为用户便于管理系统而设计的。
2.1 系统总体框图
根据系统所要完成的功能,本套视频图像质量分析系统的结构图如图1所示:
2.2 系统算法总体框图
通过对系统需求分析,智能识别视频图像质量分析系统主要可以分为四个部分:视频图像预处理、异常检测、结果存储和管理模块。其中最为关键的模块是异常检测模块。
視频图像预处理模块是对截取到的视频帧进行格式、大小、存储处理,以方便异常检测模块进行质量诊断;异常检测模块是本系统的核心所在,该模块的功能是对所属的监控系统内各路视频流轮询检测,它集成了偏色、清晰度异常、噪点等干扰图像质量的因素的检测算法;检测结果存储模块的作用是将视频质量异常检测结果包括发生哪种异常、是哪个位置的异常以及发生的时间等保存到数据库中,以供维护人员事后查看检测记录;管理模块主要是检测系统进行管理,包括用户登录、添加用户和账号管理等。
对异常的检测是整个视频质量检测系统的核心,它主要功能是检测视频画面是否出现异常,并检测判断出是哪种异常以及返回量化后相应的异常程度值。本文所开发的视频质量检测系统主要检测的异常种类包括:亮度异常、信号缺失、噪点、雪花噪声、清晰度和偏色。本文对异常检测,基本都是基于视频图像的空域特点,由相互独立的数学算法完成。下面就是对系统中所包含的异常进行详细地介绍与分析,以及针对各种异常在空域的分布特征,然后采取合适的异常检测算法构建检测函数,完成视频图像异常干扰的自动化检测。
3 算法模块研究
3.1 亮度异常
当视频画面出现亮度异常时,在视觉效果上表现为画面全部、局部过亮或过暗,细节纹理不明晰,对比度相对较低。亮度异常破坏了画面的美感,严重影响视频的质量。当前对图像亮度异常检测算法主要包括灰度直方图法与亮度均值法。对于灰度直方图是根据亮度正常图像的灰度级会占较多的灰度级,反之亮度异常的图像的灰度级就会比较集中,从而用此来检测亮度是否异常。而亮度均值法是计算整幅图像的亮度平均值,然后与所设阈值进行比较确定进而判断画面是否亮度异常。故本文在亮度均值法的基础上来检测视频的亮度异常。
本文对亮度异常的处理具体为:首先截取一帧视频图像作为待检测帧,然后提取该帧图像的亮度成分与事先设置好的阈值进行比较从而得出亮度是否异常。大多情况下计算图片亮度信息一般会选择在YUV或者YCrCb空间,因为它们其中的Y分量直接代表着亮度。但与上述的相比HSI模型更符合人类视觉特性,它完全可以反映人感知颜色、亮度的基本属性。另外与其他颜色空间比较它更好的反映了“饱和度”和“亮度”作为两个独立参数的直觉观念,并且在HSI空间模型中,I分量也可直接用于表征图像的亮度情况,还有在HSI模型中可以充分、高效的使用多种计算机视觉图像处理算法。所以人们一般使用HSI模型来模拟人类视觉系统处理图像,而往往都能获得更好的主观效果。所以在本文的亮度异常检测中,我选择了HSI,只需计算图像的I通道值即可得到图片亮度分量值。提取图片的亮度分量如下:
接着检测亮度低于所设阈值T1的点的比例R1,然后结合I的值与阈值T3比较,如果满足R1小于T1,或I小于T3则可判断图像亮度过暗。一样地检测亮度高于所设阈值T2的点的比例R2,然后结合I值与阈值T4比较,如果满足R2大于T2或I大于T4则判定图像亮度过亮。算法流程如图3所示:
3.2 信号缺失
当视频出现无信号异常时,帧图像会呈现出某种颜色的像素点在图像中占绝大部分或者视频画面只有单一的某种颜色比如黑屏或者绿屏,称为信号缺失。
如果系统没有视频信号,这对视频监控造成的不良后果可想而知。因此根据无信号的视频画面的黑屏、蓝屏或者某种颜色占据整个画面的绝大部分这一特征,而由实践证明画面比较单一的图像的灰度值就会有规律可循,即同一帧视频图像中各个像素点之间灰度值的差别体现了该帧图像发生变化是否剧烈。当视频画面发生信号丢失时,提取到的视频帧图像里各个像素点之间的灰度值的差异必然很小,那么便可推断出即它的灰度值均方差的也会偏小。故本文根据此特点采取以下算法对设备故障引起的信号缺失进行检测。
首先,从监控视频中截取一帧图像,然后对这帧图像各像素的灰度值进行统计。算出它的灰度平均值与灰度均方差,如下式:
其中,H,W分别为帧图像的高与宽,U为各个像素点灰度值的平均值,是图像位置像素点的值,S是所有像素點灰度值的均方差。将S与事先设定好的阈值K(随机取HxW帧视频图像计算它们的灰度均方差的均值乘以30%所得)进行比较,当3小于阈值K时,则可以认为这帧图像可能出现了信号缺失的异常。但考虑到监控系统可能出现正常的短暂现黑屏现象,如果只做一步检测可能导致误判,为检测的准确度,我们在一定时间内又截取一帧图像进行检测。如果两次结果口的值都小于所设阈值,则基本上可以断定该视频确实发生了信号缺失。检测算法流程图如图4所示。
3.3 噪声检测
视频图像噪声是一种不可预测、损坏图像质量的随机信号,它在图像的采集、处理、传输等各个环节都有可能出现。噪声的种类繁多从产生的来源可分成:内部与外部噪声。内部噪声是指系统设备或者电路自身产生的噪声,如电源噪声;而外部噪声是指导致系统产生噪声的干扰来自外界,如电磁干扰。
3.3.1 噪点噪声
视频图像噪点在空域上表现为该点与它邻域周围的像素点的灰度值区分很大,在视觉上的反映是有许多杂乱的斑点或亮或暗随机地分布在图像上,严重影响人的感知视觉。噪点不仅破坏了画面的美观,又严重阻碍了人们想从图片中提取某些重要的信息,所以对视频图像准确及时地检测是否有噪点的存在意义非凡。本文根据像素点的邻域信息来检测监控视频中是否发生了噪点异常。具体的算法公式如下:
其中为噪点的向量和,而m则表示虚线边框内像素点包围着的区域,代表着中心像素点的通道值,为中心像素点以外m区域内的其它的像素点灰度值,由分析可知此时N取8。如果中心点为非边缘点且fq(m)的结果大于我们所设的阈值,我就能够判断区域m的中心像素点O为噪声点。而如果中心像素点是边缘点,则经过试验得知fq(m)计算出来的值要远小于事先设定的阈值。
3.3.2 雪花噪声
目前,一般对视频雪花噪声检测都是结合大量先验背景图片技术作依托然后通过机器学习的方式来诊断的。然而经过大量研究分析时,我们发现雪花噪声有这些特性:纹理深,并且有规律可循,“闪烁点”像素灰度值剧烈变化。所以本文从像素灰度值人手,直接用数学的模型来检测视频中出现的雪花噪声。
而本文检测雪花噪声的基本思想方法是:因为正常图像像素的灰度值变化一般都平缓,方差较小,而雪花的“闪烁点”像素灰度值剧烈变化,灰度值跳跃性大,计算方差也偏大,窗口邻域也正是把图像细分,不漏过可能的异常像素点。所以检测雪花的思路是小窗口方差法。算法步骤具体如下:
①将截取到的彩色视频帧图像作灰度化处理;
②将灰度图像的灰度级进行压缩,量化成16级,以减少系统的计算量;
③从视频图像左上角开始位置将它分成3x3子块窗口,接着便计算该区域内9个像素点灰度值的方差;
④窗口遍历大小为MxN的整幅图像,则得到个方差值;
⑤对个方差取均值T,与阈值Th比较;
⑥若则为“雪花屏”。
雪花噪声检测算法流程图如图5所示:
3.4 清晰度异常检测算法
清晰度对于视频图像的重要性不言而喻,所以能快速、准确地检测视频的清晰度是否异常是十分必要的。目前对图像清晰度的评价方法通常在频域和空间域进行。频域方法是分析图像的成分频率成分进而评价图像的清晰度,它的优势在于得出来的结果通常比空域的要准确。不足之处是需要进行各种复杂的变换,所以它的运行效率相对低下;而空域主要通过边缘检测算子,根据图像灰度、梯度差来表征图像的清晰程度。这类方法计算简单,运行速度快,但抗干扰性能相对较差,故往往会发生误检、漏检等现象。
所以为弥补现有算法的不足,本文利用平方梯度法区分度较好的特点,用一种焦点窗口改进的平均梯度算法来检测视频清晰度的异常。这种方法能克服计算量大的缺点,兼顾了准确性和实时性。具体算法步骤如下:
(1)根据摄影艺术和美学理论中的三分法原则,我们将焦点区域的划分为图6所示,其中点O为图像中心点,而点A,B,C和D到最近图像边界的距离为图像高或宽的1/3。
(2)计算大小为HxW图像f(x,y)5个区域O,A,B,C,D的聚焦评价值。聚焦评价值计算公式如下:
其电与分别为图像x及y方向的梯度值
之和,式子取3/2次方的目的是为了增强大梯度值的影响,以提高算法抗噪性。
其中M,N分别为O,A,B,C,D子块图像的高和宽。
(3)然后由下面公式得出图像的整体聚焦评价值:
考虑-监控图像中心区域通常为有用或者是人们所感兴趣区域,因此本文结合实验结果分析把kl取取0.15。
(4)接着计算该视频图像在Lab空间下的色差
值,如下式:
(5)最后便是结合聚焦评价值F与色差值SC作为清晰度评价函数,然后与阈值Thl、进行比较,从而得出清晰与否的诊断。
清晰度异常检测算法流程图如图7所示:
3.5 偏色检测算法
成像仪器却不具备颜色恒常性,它会受环境光照和成像设备的感光元器件感光系数的物理特性以及物体本身的反射特性等多种因素的影响,所以成像仪器拍摄到的图像的色彩与物体表面真实色彩就会发生一定程度的偏差,这种颜色上的差异就叫偏色。要想正确检测视频图像的偏色程度,首要的就是选择合适的颜色处理空间。
一般情况下显示器显示的图片是RGB颜色空间的,但RGB色彩空间具有不均匀性,所以偏色检测中,我们选择了1976年CIE规定的用于非自照明的颜色空间——CIELab。但由RGB色彩空间转换到CIELab空间需要引入一个过渡的颜色空间XYZ,可以分为以下两步:
① 将图像从RBG色彩空间按公式转换到过渡的色彩空间XYZ。
② M后从XYZ颜色空间按下式转换到Lab颜色空间。
其中,f(x)为校正函数,其表达式为:
在比较了众多偏色检测算法后,结合本检测系统的时实际情况,本文提出了一种新的偏色检测算法一基于协方差相关函数的偏色检测算法,利用相邻两帧图像的颜色差异和相关性差异来检测偏色干扰。具体算法步骤如下:
① 获取检测视频的相邻两帧图像;
② 从RGB空间转换到Lab空间;
③ 计算对应子块色差方差的均值及协相关系数绝对值的均值;
④ 将两者结果的比值进行处理与所设阈值进行比较从而判定是否偏色。
本模块使用的子程序有:
4 结论
该系统能够对监控系统中视频图像出现的信号缺失、噪点、雪花、清晰度异常、亮度异常、偏色等常见画面异常进行准确分析和判断,重点介绍了信号缺失、噪点、雪花、清晰度异常、亮度异常、偏色这些常见异常的检测算法,实现了视频质量实时检测,是解决视频图像质量分析的一种有效手段。