【视频开发】视频质量诊断之详解
视频质量诊断----亮度异常检测
一、亮度异常检测一般包括偏暗检测和偏亮检测,也有称过暗过亮检测。这算法简单,只需要一帧图像的亮度值作为判断就行。
二、原理
- 把彩色图像转化为灰度图像
- 求图像的平均灰度值G(整幅或ROI区域),该值就是图像的亮度值
- 定义阈值A,B。当G∈[0,A]认为图像偏暗,当G∈[B,255]认为图像偏亮
三、结果演示
偏暗率: 1.0 0.95
偏亮率:1.0
本算法缺点:对于黑屏或无信号图像,会被检测为偏暗(不过也正常,那些现象整张图像都是暗的)。
视频质量诊断----色度异常检测
一、色度异常检测一般称为偏色检测。 即图像为某一范围颜色值分布过多而导致图像整体偏色的情况。
二、原理
- 提取图像的色度分量H
- 计算色度分量H的直方图
-
求最方图最大bin占整个直方图的比例,该比例值就为偏色值
偏色率: 1.0 0 0.21 0.43 1.0
偏色率: 1.0 0.71 0.17
偏色率: 0.77 1.0
偏色率: 0.23 0.0 0.0
备注:以上图像来自另一位博主的偏色检测文章http://www.cnblogs.com/Imageshop/p/3191853.html
本算法缺点对于纯色为被检测为偏色,所以可以先过滤纯色图像再应用此算法。
视频质量诊断----条纹噪声检测
一、条纹噪声是带条状的噪声。
二、原理
- 提取彩色图像的色度分量。
- 对色度分量求DFT频谱图。
- 计算频谱图的异常亮点数,若大于A则认为发生条纹检测。
三、结果演示
条纹噪声率: 1.0 0.75
条纹噪声率: 0.0
视频质量诊断----遮挡检测
一、遮挡检测一般是摄像头被异物遮挡,呈现出整个场景或某一部分场景看不到的情况。被遮挡住的部分一般都呈偏黑色。
二、原理
- 把彩色图像二值化,偏黑的部分为前景,其他部分为背景。
- 对前景进行连通区域检测,求得最大连通区域面积。
- 该面积整幅图像面积的比较即为遮挡率。
三、结果演示
遮挡率:0.67 0.43
遮挡率:0.52 1.0
本算法缺点:对于黑屏图像,会被检测为遮挡。
视频质量诊断----信号丢失检测
一、信号丢失检测也称无信号检测,一般当DVR/NVR某些通道没接上摄像头时,会显示黑屏无信号。而IPC无信号里无法返回任何图像信息,也就无法通过图像算法检测到。
二、原理
- 把彩色图像二值化,偏黑的部分为前景,其他部分为背景。
- 对前景进行连通区域检测,求得最大连通区域面积。
- 该面积整幅图像面积的比较即为信号丢失率。
三、结果演示
信号丢失率:0.73 0.96
信号丢失率:0.0 0.0
算法缺点:对于信号丢失返回的不是黑屏界面的设备算法会失效。
视频质量诊断----模糊检测
一、模糊一般是摄像头焦距没调好造成的画面模糊。
二、原理
- 把图像分割成N*M的区域。
- 求每个区域的对比度:(max-min)/max.
- 求总的平均对比度即为模糊率。
三、结果演示
模糊率: 0.55 0.63 0.0
模糊率: 0.25 0.14(抗纯色性)
模糊率: 0.62 0.38
算法优点:对于纯色图像不会检测为模糊。算法阈值偏小,0.2以上皆可认为模糊。
视频质量诊断----画面抖动检测
一、当摄像头立杆不稳或因车辆引起地面振动时,视频画面就会发生抖动。
二、原理
- 每隔N帧取一帧。
- 对取到的每帧进行特征点提取。
- 对检测的相邻2帧进行特征点匹配。
- 得到匹配矩阵,当匹配矩阵大于A时认为这2帧画面有抖动。
- 当抖动帧数大于B时认为画面发生抖动。
视频质量诊断----雪花噪声检测
一、雪花噪声即椒盐噪声,以前黑白电视常见的噪声现象。
二、原理
- 准备0°,45°,90°,135°4个方向的卷积模板。
- 用图像先和四个模板做卷积,用四个卷积绝对值最小值Min来检测噪声点。
- 求灰度图gray与其中值滤波图median。
- 判断噪声点:fabs(median-gray)>10 && min>0.1。
- 噪声点占整幅图像的比较即为雪花噪声率。
三、结果演示
雪花噪声率: 0.67 0.63
雪花噪声率: 0.15 1.0
雪花噪声率: 0.65 1.0
视频质量诊断----信号丢失检测
一、信号丢失检测也称无信号检测,一般当DVR/NVR某些通道没接上摄像头时,会显示黑屏无信号。而IPC无信号里无法返回任何图像信息,也就无法通过图像算法检测到。
二、原理
- 把彩色图像二值化,偏黑的部分为前景,其他部分为背景。
- 对前景进行连通区域检测,求得最大连通区域面积。
- 该面积整幅图像面积的比较即为信号丢失率。
三、结果演示
信号丢失率:0.73 0.96
信号丢失率:0.0 0.0
算法缺点:对于信号丢失返回的不是黑屏界面的设备算法会失效。
视频质量诊断----PTZ云台运动检测
一、PTZ云台运动检测是通过配合云台运动的功能检测云台运动是否正常。
二、原理
- 取云台运动前N帧图像,进行背景建模,得到运动前背景A。
- 设备发送云台运动指令,让云台进行运动,改变场景。
- 取云台运动后N帧图像,进行背景建模,得到运动后背景B。
- 对比A,B颜色直方图的相似度,大于K时认为PTZ云台运动有故障。
视频质量诊断----画面冻结检测
一、画面冻结是由于画面场景没有变化,而仅仅是画面中的时间有变化的情况。此现象需要多帧图像才能检测出来。
二、原理
- 每隔T帧从视频中取一帧(防止相邻帧太相似引起误检)。
- 对所取的每帧求直方图。
- 求相邻2帧直方图的相似度。
- 当相似度大于A时认为二帧一致,当一致的帧达到B时认为画面发生冻结。