本发明属于实时视频监控领域,特别涉及一种视频质量诊断系统及方法。
背景技术:
随着“平安城市”建设的迅速开展,“平安城市”具备规模大、点位多、区域广泛等特点,维护极其不便。仅靠人眼去识别图像的可用性,不仅劳动强度大,而且滞后、不可靠,导致后期事后取证困难。且也会导致后端视频分析、存储、传输等系统的巨大资源浪费。
视频质量诊断系统针对视频图像出现黑屏、模糊、亮度异常、噪声、偏色、抖动、冻结、ptz运动检测、人为遮挡等常见摄像头故障、视频信号干扰、视频质量下降等进行准确分析、判断和报警。提高城市的管理水平,更新城市的形象。
目前市面上的视频质量诊断系统主要是每种算法拥有一套阈值。但在使用过程中,由于摄像机所处位置导致的图像纹理、图像所能获取的信息不同。如果采用同一套阈值,则导致更多的误检率和漏检率。另外摄像机在使用过程中,因为老化等原因造成摄像机质量下降,但还未达到需要检修的目的。所以在诊断过程中需要智能化的调整摄像机视频质量的参数,以避免系统无法准确判断摄像机的视频质量。
技术实现要素:
为了克服上述现有技术的缺陷,本发明提供一种视频质量诊断系统,解决了现有技术中视频质量诊断误检率和漏检率高的问题。
为实现上述目的,本发明采用以下技术方案:
包括视频源获取单元(10)、视频质量诊断单元(20)、数据存储单元(30)以及管理单元(40),其中,
视频源获取单元(10),用于获取待检测的摄像机的视频帧;
视频质量诊断单元(20),用于对获取的视频帧利用每类检测项目的检测阈值以及与每类检测项目相对应的检测算法进行诊断,得出诊断结果;
数据存储单元(30),用于对诊断结果进行保存;
管理单元(40),用于和用户进行交互,用户能够通过管理单元(40)查看摄像机的诊断结果;
视频质量诊断系统还包括误检结果库,用户对诊断结果进行确认,如果认为视频质量正常而系统诊断异常,则将诊断结果加入到所述误检结果库中。
所述视频质量诊断单元(20)包括定时自学习模块(21)以及视频质量诊断算法模块(22),所述定时自学习模块(21)包括图片读取模块(211)、图像特征提取模块(212)、机器学习模块(213)、阈值更新模块(214),其中,
图片读取模块(211),用于读取误检结果库中的摄像机的图片,并将所述摄像机的图片送至图像特征提取模块(212);
图像特征提取模块(212),用于分析图片特征,并将分析出的图片特征发送至机器学习模块(213);
机器学习模块(213),用于分析出的图片特征与原来摄像机的特征数据融合进行机器学习,得出误检的摄像机的每类检测项目的新的检测阈值;
阈值更新模块(214),用于更新摄像机的检测阈值。
本发明还提供了一种视频诊断方法,其特征在于,包括以下步骤:
s1、到达检测开始时间,视频源获取单元(10)获取待检测的摄像机的视频帧,并将所述视频帧发送至视频质量诊断单元(20);
s2、视频质量诊断单元(20)根据接收的视频帧以及每个待检测的摄像机的每类检测项目的检测阈值,通过每类检测项目对应的检测算法对视频帧进行诊断;
s3、诊断完毕后,将诊断结果保存在数据存储单元(30)中;
s4、用户通过终端页面来查看有问题的摄像机的诊断结果;
s5、用户对诊断结果进行确认,如果认为视频质量正常而系统诊断异常,则将诊断结果加入到误检结果库中;
s6、视频质量诊断单元(20)中的定时自学习模块(21)根据误检结果库中的数据对摄像机的检测阈值进行修正。
进行步骤s1之前用户需要设置待检测的摄像机、检测的时间段、检测间隔,系统自动根据检测的时间段以及检测间隔确定检测开始时间。
步骤s6的具体操作步骤如下:
s61、用户设定定时自学习时间,达到设定的自学习时间后,系统启动定时自学习模块(21);所述定时自学习模块(21)包括图片读取模块(211)、图像特征提取模块(212)、机器学习模块(213)、阈值更新模块(214);
s62、所述图片读取模块(211)读取误检结果库中的摄像机的图片,并将所述摄像机的图片送至图像特征提取模块(212);
s63、所述图像特征提取模块(212)分析图片特征,并将分析出的图片特征发送至机器学习模块(213);
s64、所述机器学习模块(213)将分析出的图片特征与原来摄像机的特征数据即摄像机默认的检测阈值参数所对应的图片特征数据结合进行机器学习,得出误检的摄像机的每类检测项目的新的检测阈值;
s65、所述阈值更新模块(214)更新摄像机的检测阈值。
所述图片特征至少包括图片亮度特征、图片的边界特征、图片的直方图特征。
所述检测项目包括黑屏检测、模糊检测、亮度异常检测、噪声检测、偏色检测、抖动检测、冻结检测、ptz运动检测、人为遮挡检测。
所述步骤s1中的视频源获取单元(10)通过轮询和并发的方式获取待检测的摄像机的视频帧。
本发明还提供了一种视频质量诊断的自学习方法,其特征在于,包括以下步骤:
s1,图片读取模块(211)读取误检结果库中的摄像机的图片,并将所述摄像机的图片发送至图像特征提取模块(212);误检结果库中的摄像机的图片来源为:用户对诊断结果进行确认,如果认为视频质量正常而系统诊断异常,则将诊断结果加入到所述误检结果库中;
s2,所述图像特征提取模块(212)分析图片特征,并将分析出的图片特征发送至机器学习模块(213);所述图片特征至少包括图片亮度特征、图片的边界特征、图片的直方图特征;
s3,所述机器学习模块(213)将分析出的图片特征与原来摄像机的特征数据即摄像机默认的检测阈值参数所对应的图片特征数据结合进行机器学习,得出误检的摄像机的每类检测项目的新的检测阈值;所述检测项目包括:黑屏检测、模糊检测、亮度异常检测、噪声检测、偏色检测、抖动检测、冻结检测、ptz运动检测、人为遮挡检测;
s4,所述阈值更新模块(214)更新摄像机的检测阈值。
本发明的优点在于:
(1)本发明在视频质量诊断单元中设置了定时自学习模块,用户终端通过终端页面查看有问题的摄像机的诊断结果,用户对诊断结果进行确认,如果认为诊断结果是正常而系统检测为异常,则加入到误检结果库中,定时自学习模块根据误检结果库中的数据对摄像机的检测阈值进行修正,因此本发明能够大大降低视频质量诊断的误检率和漏检率,准确判断摄像机的视频质量。
(2)视频源获取单元通过轮询和并发的方式获取待检测的摄像机的视频帧,因此每台服务器可以同时进行多路摄像机检测,大大地提高了检测的效率。
(3)本发明的视频质量诊断的自学习方法,根据误检结果库中的数据对摄像机的检测阈值进行修正,因此本发明能够大大降低视频质量诊断的误检率和漏检率,准确判断摄像机的视频质量。
附图说明
图1为本发明的视频质量诊断方法的总体流程图;
图2为本发明的定时自学习模块对摄像机的检测阈值进行修正的流程图;
图3为本发明的视频质量诊断系统的结构框图;
图4为本发明的视频质量诊断单元的结构框图。
图中的附图标记含义如下:
10—视频源获取单元20—视频质量诊断单元21—定时自学习模块
22—视频质量诊断算法模块211—图片读取模块
212—图像特征提取模块213—机器学习模块
214—阈值更新模块30—数据存储单元40—管理单元
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,基于定时自学习模块的视频质量诊断方法,包括以下步骤:
s0、用户设置待检测的摄像机、检测的时间段、检测间隔,系统自动根据检测的时间段以及检测间隔确定检测开始时间。
如果用户设置检测的时间段为一天中8:00~15:00,检测间隔为2小时检测一次,则系统自动判断8:00,10:00,12:00,14:00这四个时间点开始检测。
s1、到达检测开始时间,视频源获取单元10获取待检测的摄像机的视频帧,并将所述视频帧发送至视频质量诊断单元20;
s2、视频质量诊断单元20根据接收的视频帧以及每个待检测的摄像机的每类检测项目的检测阈值,通过每类检测项目对应的检测算法对视频帧进行诊断;
所述检测项目包括黑屏检测、模糊检测、亮度异常检测、噪声检测、偏色检测、抖动检测、冻结检测、ptz运动检测、人为遮挡检测;
s3、诊断完毕后,将诊断结果保存在数据存储单元30中;
s4、用户通过终端页面来查看有问题的摄像机的诊断结果;
s5、用户对诊断结果进行确认,如果认为视频质量正常而系统诊断异常,则将诊断结果加入到误检结果库中;
s6、视频质量诊断单元20中的定时自学习模块21根据误检结果库中的数据对摄像机的检测阈值进行修正。
黑屏检测、模糊检测、亮度异常检测、噪声检测、偏色检测、抖动检测、冻结检测、ptz运动检测、人为遮挡检测均是通过现有技术中的检测方法来实现的。
摄像机黑屏检测,首先将图片转为灰度图像,根据图像像素点进行像素检测,像素值为0~255,表示亮度从深到浅,对应图像中的颜色是从黑到白,如果视频图像长1920、宽1080,则总像素点为1920×1080个,如果其中像素值为0的个数超过80%的话,则认为该摄像机黑屏,这个80%就是黑屏检测的检测阈值。
模糊检测、人为遮挡检测,当视频帧存在模糊或者遮挡时,会导致图像边界不清晰,利用边界检测理论来检测图像清晰度,图像越模糊,图像的梯度值越小,设定一个检测阈值,获得图像的梯度值,如果梯度值达到这个检测阈值,则认为图像模糊。
亮度异常检测,正常的视频图像颜色分布直方图呈均匀化分布,图像亮度异常时,图像颜色分布直方图有骤然的跳变,根据图像的颜色分布直方图可判断图像的亮度异常情况。
噪声检测,如果视频图像中存在一点非噪声点,根据噪声模板,则这一点非噪声点与周围点在至少一个方向上的灰度卷积值很小;反之,如果这一点为噪声点,则四个方向的卷积值都很大,通过求出目标点在四个方向的卷积最小值,根据设定的检测阈值,即可判断是否为噪声点。
偏色检测,视频图像的偏色不仅与图像色度的平均值有直接关系,还与图像的色度分布特性有关,如果在a-b色度坐标平面上得二维直方图中色度分布基本上为单峰值或者分布较为集中,而色度平均值又较大,这种情况一般都存在偏色,色度的平均值越大,偏色越严重,因此采用图像平均色度d和色度中心距m的比值,即偏色因子来衡量偏色程度。
冻结检测,对间隔的三帧图片利用图像像素分析,如果三帧图片变化小于设定的检测阈值,则判断为冻结。
ptz运动、抖动检测,灰度投影算法遵循图像序列灰度分布的变化规律,利用两幅图像的投影曲线确定图像之间的相对移动距离、关联程度。首先进行灰度化的视频帧图像截取、之后分别作行、列投影,进一步利用投影后的向量作相关运算,即可得到其行、列方向位移。行列位移符合ptz移动的距离,则认为ptz运动正常。
如图2所示,视频质量诊断单元20中的定时自学习模块21根据误检结果库中的数据对摄像机的检测阈值进行修正的具体操作步骤如下:
s61、用户设定定时自学习时间,达到设定的自学习时间后,系统启动定时自学习模块21;所述定时自学习模块21包括图片读取模块211、图像特征提取模块212、机器学习模块213、阈值更新模块214;
s62、所述图片读取模块211读取误检结果库中的摄像机的图片,并将所述摄像机的图片送至图像特征提取模块212;
s63、所述图像特征提取模块212分析图片特征,并将分析出的图片特征发送至机器学习模块213;
所述图片特征包括图片亮度特征、图片的边界特征、图片的直方图特征等。
图像特征提取模块212通过现有技术中的检测方法即黑屏检测、模糊检测、亮度异常检测、噪声检测、偏色检测、抖动检测、冻结检测、ptz运动检测、人为遮挡检测来分析图片特征。
s64、所述机器学习模块213将分析出的图片特征与原来摄像机的特征数据即摄像机默认的检测阈值参数所对应的图片特征数据结合进行机器学习,得出误检的摄像机的每类检测项目的新的检测阈值;
机器学习的是利用老数据和新数据一起学习的,新的检测阈值是通过机器学习产生的,所述机器学习为svm支持向量机学习。
s65、阈值更新模块214更新摄像机的检测阈值。
所述步骤s1中的视频源获取单元10通过轮询和并发的方式获取待检测的摄像机的视频帧。
如果有10台服务器用于对1万个摄像机视频质量进行诊断,经测试,每台服务器可以同时进行5路摄像机进行检测,那么每台服务器平均需要对1000个摄像机进行检测,一号服务器对应1~1000号摄像机,这些摄像机最多只能五路同时进行,五个为一次,依次进行检测,直到1000号检测完毕。
如图3所示,基于定时自学习模块的视频质量诊断系统包括视频源获取单元10、视频质量诊断单元20、数据存储单元30以及管理单元40,所述视频源获取单元10用于获取待检测的摄像机的视频帧;所述视频质量诊断单元20用于对获取的视频帧利用每类检测项目的检测阈值以及与每类检测项目相对应的检测算法进行诊断,得出诊断结果;所述数据存储单元30用于对诊断结果进行保存;所述管理单元40用于和用户进行交互,用户能够通过管理单元40查看摄像机的诊断结果。
视频源获取单元10用于和前端摄像机打交道,利用标准的onvif协议、gb/t28181协议、摄像机私有sdk获取前端摄像机的视频帧。
对于小型或者独立的项目,数据存储单元30采用mysql数据库;对于大型或者与其他平安城市系统联合实施的,数据存储单元30采用oracle数据库。
如图4所示,所述视频质量诊断单元20包括定时自学习模块21以及视频质量诊断算法模块22,所述定时自学习模块21包括图片读取模块211、图像特征提取模块212、机器学习模块213、阈值更新模块214,所述图片读取模块211用于读取误检结果库中的摄像机的图片,并将所述摄像机的图片送至图像特征提取模块212;所述图像特征提取模块212用于分析图片特征,并将分析出的图片特征发送至机器学习模块213;机器学习模块213用于分析出的图片特征与原来摄像机的特征数据融合进行机器学习,得出误检的摄像机的每类检测项目的新的检测阈值;阈值更新模块214用于更新摄像机的检测阈值。
基于上述架构,本发明可实现以下技术指标:
模糊检测:检测率100%,漏检率<=1%,误检率<=2%;
亮度异常检测:检测率100%,漏检率<=1%,误检率<=3%;
噪声检测:检测率100%,漏检率<=1%,误检率<=5%;
黑屏检测:检测率100%,漏检率=0%,误检率=0%;
偏色检测:检测率100%,漏检率<=0%,误检率<=1%;
抖动检测:检测率100%,漏检率<=3%,误检率<=1%;
冻结检测:检测率100%,漏检率<=0%,误检率<=2%;
ptz运动检测:检测率100%,漏检率<=0%,误检率<=0%;
人为遮挡检测:检测率100%,漏检率<=1%,误检率<=3%;
本发明所提供的基于定时自学习模块的视频质量诊断方法及系统,能够大规模应用于视频监控运维领域,提高摄像机视频质量诊断的正确率,保障基于监控摄像机视频应用的及时性与准确性。
以上仅为本发明创造的较佳实施例而已,并不用以限制本发明创造,凡在本发明创造的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明创造的保护范围之内。