1.引言
在视频监控领域,提高监控图像质量和编码传输效率一直是我们最为重要的追求目标。提高视频质量意味着提高最终用户的观看满意度,提高编码效率则意味着在同样的码率限制下可以传输更高质量的视频。这涉及到监控系统中的多个环节,从上游的实际场景,到中间的传输网络,再到下游的用户终端,主要包括图像的采集、压缩处理、传输或存储、解压缩和显示等部分,其中任何一个上游环节出了问题,对图像质量的影响都不是下游环节能够纠正或补救的。视频信号的预处理处在系统最上游,是针对主处理而言的,如图1所示。在视频监控中,主处理一般是指视频的压缩编码和传输,此前的处理一般称之为预处理,常将它归并在视频采集部分。无疑,视频采集中的预处理是一个重要环节,处理的好坏将直接影响采集图像质量以及后续编码传输处理的效率。
有一个现象可以有力地说明预处理在改进图像质量方面的作用:对同样场景、采用相同的码率,不同厂家的网络摄像机解码输出视频的质量往往存在较大的差别。尤其是在比较恶劣的环境下,其差别更为显著。产生这种差别的一个重要原因在于:在监控系统中,虽然大家都采用标准化的视频压缩方法,但最后解码输出图像的质量高低很大程度上取决于有无预处理、预处理的好坏,有时还包括适当的后处理。
近来,随着人们对预处理重要性认识的不断提高,随着集成芯片和信号处理器能力的不断增强,业界对视频信号的预处理越来越重视,市场上高质量的监控产品一定离不开高质量的视频预处理方法。
2.预处理的作用
视频预处理的第一个作用是提高编码视频的质量。在实际的视频监控的应用中,不像娱乐视频,往往有高质量的摄像机、良好的演播室拍摄环境和专业技术人员的时时人为干预,因此可以保证得到的高质量的采集视频。而视频监控系统由于成本、环境等因素影响,所获取的原始视频质量并不高,甚至很低。例如,由于环境、噪声、光照、运动等影响,往往所采集的图像常常出现模糊、扭曲、噪点、太亮或太暗、彩色不鲜明、……。对于这样比较差的视频,再进行压缩、传输、解码显示,用户所看到的监控视频常常不能令人满意的。如何在现有的条件下提高采集视频质量的问题就实在地放在我们面前。对此,一个重要的应对措施就是在视频采集环节进行预处理(preprocessing),以利于提高采集视频质量,有利于后续的视频处理,以利于用户提取视频中感兴趣的信息。
视频预处理的第二个作用是提高编码效率和有利于码率控制。我们知道,无论是有线还是无线视频传输,都是基于IP的包传输方式,信号的传输速率不稳定,速率会随用户的拥挤程度、信道的物理介质而不断变化。要在这样速率变化的信道上稳定、高效地传输压缩视频图像,除了依赖编码器的码率控制之外,还可以利用预处理的方法来辅助实现。在编码前对图像进行预处理,控制输入到编码器的视频数据量,从而来间接控制编码器输出的码率,其过程仍可参见图1。
由图1可见,不仅通过缓冲区的满溢程度来控制量化步长,同时也加上了预处理对输入的视频数据进行控制。例如,当信道变窄时,我们可以根据信道带宽信息对输入视频进行一定程度的平滑滤波,减少细节,甚至进行下采样处理、跳帧处理,使编码视频的码率能与信道带宽相匹配。当然,由于信道状况信息的获得比较麻烦,可以经统计学习建立信道带宽变化的近似模型,再依据这个模型来决定预处理的方法和程度。
最早的视频预处理是在模拟域进行的,包括对模拟视频信号的限带滤波、噪声抑制、自动增益控制、白平衡以及r校正等。随着视频采集技术的数字化进程,这些简单的预处理方法大多已经集成到芯片中去了。现在,视频预处理都是在数字域进行的,即在视频数字化采集以后进行,充分发挥了数字信号处的方便、高效、灵活和一致的优越性。目前,在视频监控中常见的预处理方法除了基本的图像滤波、图像去噪和多种图像增强处理外,还出现了多种针对特殊应用环境的预处理方法,如背光或暗光处理、雨雾烟处理、感兴趣区间的处理等。
3.常见的预处理方法
现在常见的效果明显的视频预处理主要包括下面的几个方面。
3.1 限带滤波和降采样
根据奈奎斯特定理,只有对图像进行高于两倍信号最高频率的采样才能保证从采样值完全恢复原图像。但是如果该条件不满足,即欠采样时,高次谐波的频谱就会叠加到基波,出现频谱混叠效应。随着图像高清晰度的增加,由于采样率的限制,绝大多数成像系统都存在不同的混叠现象。怎样消除混叠效应成为了预处理中的一个令人关注的问题。
抑制或消除混叠效应常采用两项措施,一是限带滤波,二是下采样。限带滤波就是对高速采样的数字视频进行一次低通滤波,抑制奈奎斯特定理定义的通带以外的高频分量。因为这些带外分量在后续的处理中会引起混叠效应,产生无意义的高频分量,而编码器还得对它们进行编码,浪费不少宝贵的编码比特。仅采用限带滤波只能滤除信号中少量的高频分量,如果信号带宽远高于奈奎斯特带宽,那么在限带滤波后还需进行一次下采样,进一步减少码字。
3.2 噪声去除
噪声对于任何实际的视频采集来说均是不可避免的,如果在编码前未将不必要的噪声去除,不仅会影响解码视频质量,而且后面的编码部分还将为噪声编码,降低了效率。视频中常见的噪声主要有加性噪声、乘性噪声和量化噪声等。图像中的噪声往往和信号交织在一起,尤其是乘性噪声,如果滤波不当,就会使图像本身的细节,如边界轮廓、线条等,变得模糊不清。如何既平滑掉噪声又尽量保持图像细节,是图像去噪的难点所在。
图像去噪方法很多,它们大体上可以分为两类:空间域的去噪方法和变换域的去噪方法。这两类方法的最主要区别是前者直接对观察图像数据进行处理,而后者则是先对图像进行某种变换,然后再对变换后的系数进行处理。
变换域的去噪方法认为,在变换域图像往往是稀疏表示的,即高频分量很少,大部份噪声处于高频部分,通过在变换域设置阈值或者截断高端频谱来去除噪声。这类方法的优点是在变换域进行处理比较简单。它的不足之处在于对阈值的设置比较困难;在去除噪声的同时不可避免地会平滑图像本身的纹理细节;图像在变换域丢失了部分结构特征,特别是边界信息等。这些都会影响去噪图像的质量。 空间域的去噪方法关注图像数据本身,如近年来流行的基于块的去噪方式,其基本思想是为去噪图像的每一个块寻找与它相似的块,相似块可以在同一帧内部寻找,或者其它帧中寻找,还可在其它图像中寻找,最后通过加权平均等操作恢复图像块。空间域的方法利用了更多的图像数据信息,保留图像的结构,有利于保持图像细节,但也容易出现过平滑现象。近年来针对图像的混合高斯噪声,出现了一种将变换域和空间域方法相结合的自适应噪声去除方法。这种方法首先采用基于块和滤波的噪声参数估计,自适应的估计混合高斯噪声参数,然后利用估计得到的噪声参数进行图像去噪,将多幅去噪图像进行简单的数据融合,最终获得性能良好的去噪图像,其过程如下图2所示。
3.3 图像增强
图像增强处理的任务是有目地突出图像中的感兴趣部分,或目标的特征,抑制图像中某些不需要的特征,提高图像的清晰度,改进图像的观赏质量。在图像增强过程中,一般不考虑图像降质的原因,增强后的图像也不一定要逼近原图像。图像增强中常见的几种具体处理方法为:
(1)直方图均衡
在图像处理中,图像直方图表示了图像中像素灰度值的分布情况。为使图像变得清晰,增大反差,凸显图像细节,通常希望图像灰度的分布从暗到亮大致均匀。直方图均衡就是把那些直方图分布不均匀的图像(如大部分像素灰度集中分布在某一段)经过一种函数变换,使之成一幅具有均匀灰度分布的新图像,其灰度直方图的动态范围扩大。用于直方均衡化的变换函数不是统一的,它是输入图像直方图的积分,即累积分布函数。
(2)灰度变换
灰度变换可使图像动态范围增大,对比度得到扩展,使图像清晰、特征明显,是图像增强的重要手段之一。它主要利用图像的点运算来修正像素灰度,由输入像素点的灰度值确定相应输出像素点的灰度值,可以看作是“从像素到像素”的变换操作,不改变图像内的空间关系。像素灰度级的改变是根据输入图像f(x, y)灰度值和输出图像g(x, y)灰度值之间的转换函数g(x,y)=T[f(x,y)]进行的。
灰度变换包含的方法很多,如逆反处理、阈值变换、灰度拉伸、灰度切分、灰度级修正、动态范围调整等。
(3)白平衡
白色是人眼对比例相同且具有一定亮度的蓝、绿、红三种色光所形成的视觉反应。在正常的情况下,视频采集系统对白光的输出为白色,简单地说这个系统处于白平衡状态。如果系统对白光不能够保持白色输出,出现偏色,如发红或发蓝等,就说明采集系统对现场彩色的处理出现了偏差,即未达到白平衡。由于场景的彩色情况非常复杂,难以断定白平衡情况,所以在实际应用中,常常用白光来判定系统的白平衡状况。这是一种衡量系统的色彩比例是否恰当的一种方便、直观的方法。如果达到了白平衡,那么输出的色彩也是白色,没有其它的偏色;如果有偏色,说明没有达到白平衡,需要在预处理时加以调整,使之成像后仍然为白色。
(4)伽玛校正
在视频采集系统中,CCD、CMOS等光电转换的器件的特性都是非线性的。场景的亮度L和是传感器输出的电压E,之间的关系可用一个幂函数E(x, y)=kLr(x, y)来表示,其中k是比例常数,r是幂函数的指数,用它来衡量非线性器件的转换特性,称之为伽玛特性。在视频中由于伽玛特性的存在,会导致图像信号的亮度失真,影响图像质量。因此要对这个失真进行补偿,即伽玛校正。简单地说,就是对输出电压用一个负指数函数对其进行校正,使得校正后的光、电两个量之间保持线性关系。
(5)图像平滑
在空间域中进行平滑滤波技术主要用于消除图像中的噪声,主要有邻域平均法、中值滤波法等等。这种局部平均的方法在削弱噪声的同时,常常会带来图像细节信息的损失。
邻域平均,也称均值滤波,对于给定的图像f(x,y)中的每个像素点(x,y),它所在邻域S中所有M个像素灰度值平均值为其滤波输出,即用一像素邻域内所有像素的灰度平均值来代替该像素原来的灰度。
中值滤波,对于给定像素点(x,y)所在领域S中的n个像素值数值{f1, f2,…,fn},将它们按大小进行有序排列,位于中间位置的那个像素数值称为这n个数值的中值。某像素点中值滤波后的输出等于该像素点邻域中所有像素灰度的中值。中值滤波是一种非线性滤波,运算简单,实现方便,而且能较好的保护边界。
(6)图像锐化
采集图像变得模糊的原因往往是图像受到了平均或者积分运算,因此,如果对其进行微分运算,就可以使边缘等细节信息变得清晰。这就是在空间域中的图像锐化处理,其的基本方法是对图像进行微分处理,并且将运算结果与原图像叠加。从频域中来看,锐化或微分运算意味着对高频分量的提升。常见的连续变量的微分运算有一阶的梯度运算、二阶的拉普拉斯算子运算,它们分别对应离散变量的一阶差分和二阶差分运算。
(7)小波变换增强
对图像进行小波变换,可得到图像的不同频率分量的小波变换系数,如果对适当的高频系数进行增强处理后,再进行小波逆变换之后,就可以达到图像的细节或边缘增强的目的。当然,小波变换还可以用来去除图像中的噪声。由于噪声大多属于高频信息,因此,当进行小波变换之后,噪声信息大多集中在高频子块之中,对这一部分系数进行抑制,则可以达到一定的噪声去除效果。
4. 特殊场合的预处理
视频监控的应用范围广阔,在图像采集时人为干预的极少。因此,各种环境的影响,监控目标的影响以及人为因素的影响都不可避免。面对种种不利的特殊场合,按照标准执行的压缩处理是无能为力的。为了提高种类期刊下监控视频的质量,采用视频预处理就显得格外重要。近年来在如下的几个方面的研究和开发都取得了可喜的进展。
4.1 雨雾图像处理
在雾天、雨天或者烟霾不散的情况下,由于场景的能见度降低,图像中目标对比度和颜色等特征被衰减,致使室外视频系统的图像模糊不清,影响正常工作,因此需要在视频编码前消除雨水、雾霾对场景图像的影响。
以雾气消除为例,目前的图像处理方法主要分为两类:雾天图像增强和雾天图像复原。雾天图像增强方法不考虑图像降质原因,方法简单,能有效地提高雾天图像的对比度,突出图像的细节,改善图像的视觉效果,但可能会造成一定的信息损失。 雾天图像复原针对雾天图像质量退化的机理,建立雾气图像退化模型,然后用图像复原的方法,对雾天退化图像进行复原,补偿退化过程造成的失真,获得对无雾图像的最优估计,从而改善雾天图像质量。这种方法针对性强,得到的去雾效果自然,信息损失小,处理的关键是模型中参数的估计。
4.2 暗光图像处理
在夜晚或光线不足的情况下,监控摄像很难捕获到清晰亮丽的图像,给道视频监控带来很大困难。因此,暗光图像增强的技术具有很强的现实意义。普通的图像增强算法对暗光图像处理只是作全局或局部的对比度拉伸,作用有限,不易实现图像的动态增强与色度保持。近年来的Retinex 算法对暗光图像的处理取得了良好的效果,增强了暗光图像的对比度,较好地保持了图像的色度。
Retinex算法在研究人的颜色视觉理论和视网膜皮层理论的基础上,提出一种关于人类视觉系统如何调节感知到物体颜色和亮度的模型。在这一模型中,图像由两部分组成,一部分是场景中物体的光照亮度,对应于图像的低频部分,另一部分是场景中物体的反射亮度,对应于图像的高频部分,通常它们也被称为亮度图像和反射图像。因此Retinex算法从给定的图像中分离出亮度图像和反射图像,在彩色恒定的条件下,通过改变亮度图像和反射图像在原图像中的比例来达到增强暗光图像的目的。
4.3 自动曝光和聚焦
(1)自动曝光
CMOS之类的传感器只有获得正确的曝光量,才能得到高质量的图像。曝光过度,图像看起来太亮;曝光不足,则图像看起来太暗。到达传感器的光通量的大小主要由两方面因素决定:曝光时间的长短以及光圈的大小。利用光圈进行自动曝光,主要根据所拍摄的场景来控制光圈大小,使得进光量维持在一定范围内,成本比较高。现在市场所见的中低端摄像头采用的主流技术通过调整曝光时间来实现自动曝光。在研究了大量不同光照条件的图像实例基础上,获得不同光照条件下的亮度与曝光值之间的关系,自动曝光的预处理正是根据这一关系来进行曝光控制的。
(2)自动聚焦
聚焦的好坏直接影响摄像机捕获的视频图像的清晰度,因此监控系统要求摄像机具有自动聚焦的功能,调整镜头的焦距使其焦点位于感光面上,从而获得清晰的图像。自动聚焦的方法可以分为三大类:一类是基于镜头与被摄目标之间距离测量的测距方法,另一类是基于聚焦屏上成像清晰的聚焦检测方法,第三类是基于数字图像处理的自动聚焦方法,这是最适宜于监控系统的一种方法。
基于数字图像处理的自动聚焦方法对采集的每一帧图像进行实时处理,通过判断聚焦是否准确、成像是否清晰给出反馈信号控制镜头的运行,直到采集的图像符合使用要求,即完成自动聚焦。这种方法的特点是聚焦更加智能化、聚焦判据更加灵活,方便聚焦控制的执行,从而避开复杂的对焦电路和机构。
4.4 背光补偿
在视频采集过程中,如果场景中的目标遮挡住了光源,那么感兴趣目标表面不能够接收到足够光强,导致的感兴趣区域的亮度比较暗,看不清细节,这就是所谓的背光现象。很明显,背光补偿处理的目的在于提高感兴趣区域的亮度,适当的对比度,同时保证整幅图像的自然性和平滑性。背光补偿的一实例如图4所示。对于视频序列,在保证单帧图像补偿效果的同时,还要保证补偿后视频序列亮度的连续性,避免闪烁现象的发生。
除了上面介绍的几种特殊的预处理方法外,还有多种其它的预处理方法。例如感兴趣区域的处理,这种方法首先找出图像中感兴趣区域,对此处进行增强处理,以专注于提高感兴趣目标的图像质量。再如自动锁定动态目标的处理,和感兴趣区域处理类似,首先检测出动态目标,对该目标进行跟踪和增析处理。
5. 小结
视频监控系统增加了预处理环节,一则可以提高解码图像质量,尤其是某些不利条件下的视频质量;二则可以提高视频编码的效率,减少传输视频的质量波动。其实,提高编码效率和改进码率控制,其结果仍然是提高了解码视频的质量。近年来,业界对视频预处理愈加重视,各种预处理的方法层出不穷,取得了显著的进展。但是,由于种种因素的限制,预处理的效果还不能够令人满意,还有诸多的问题需要在今后的研究和开发中逐步解决。未来,如何提高视频监控的图像效果,是否能找到除了预处理之外的有效图像处理方法,将是促使视频图像效果改善的一大重点,让我们拭目以待。