□ 文 /周迪 徐爱华
视频编解码是视频图像处理技术的基本内容之一。经过多年发展,视频图像分辨率从最初的D1标清图像,到目前主流的1080P,向4K高清、8K超清时代前进。图像清晰度提升的同时,其巨大的数据量也给视频传输带宽和后端存储空间带来了巨大的压力,用户需要投入更多的设备和资金。因此,编解码技术的改进无疑成为了图像处理技术发展的焦点。
视频编码通过特定的压缩技术将某个视频格式的大文件转换成另一种视频格式的小文件。视频数据包括信息和冗余数据。信息是有用的基本数据,而冗余数据有许多种,如空间冗余、时间冗余、视觉冗余、编码冗余等。视频压缩编码的实质是减少图像中的冗余,主要相关技术包括预测编码、变换编码、量化和熵编码技术。
所谓预测就是利用已知信息猜测未知信息,预测编码的思路就是编码实际值与预测值之间的差别。考虑到图像的特点,预测通常是以块为单位进行,按照约定的规则将图像分割成规则大小的块,按照约定的顺序对各个块进行预测编码。
预测编码一般分为帧间预测编码和帧内预测编码。帧间预测编码利用视频时间冗余,即基于块的运动估计和运动补偿,利用之前编码过的图像来预测现在要编码的图像;帧内预测编码则利用了视频的空间冗余,即利用当前块的相邻像素直接对每个像素做预测。视频的时间冗余一般大于空间冗余,所以帧间预测的压缩率会大于帧内预测。
变换编码指对信号的样本值进行某种形式的函数变换,从一种空间变换到另一种空间,然后根据信号在另一个空间域的特征对信号进行编码压缩。例如时域与频域的变换。
空域中,视频信号的幅度随着时间周期性地变换,每个幅度出现的概率较为均匀,很难进行压缩。频域中的图片,低频频谱的幅度分布均匀,高频频谱的幅度通常是大比例的低幅度和稀少的高幅度,分布不均匀。由此,可对视频的低频分量和高频分量分别处理,获得高效压缩。图像频率反映了像素灰度在空间中变化的情况,是灰度在平面空间上的梯度。一般来说,图像的低频部分描述了图像的整体形状,图像的高频部分描述了图像的细节。常见的变换编码算法有K-L变换、离散余弦变换(DCT)、离散傅里叶变换、小波变换等。
量化编码分为标量量化和矢量量化。标量量化是最基本的有损编码,通过将信源映射成码字表中的码字来达到压缩目的;标量量化又分为均匀量化、非均匀量化和自适应量化。矢量量化是一次量化多个样本点的量化方法,即将输入数据几个一组地分成许多组,成组的进行量化编码。
熵编码即编码过程中按熵原理不丢失任何信息的编码。信息熵为信源的平均信息量(不确定性的度量)。常见的熵编码有:香农(Shannon)编码、哈夫曼(Huffman)编码和算术编码(arithmetic coding)。在视频编码中,熵编码把一系列用来表示视频序列的元素符号转变为一个用来传输或是存储的压缩码流。
当前主流视频编解码标准有:MJPEG、MPEG-4、H.264、SVAC、H.265。
视频画面中,有些区域不会被特别关注,例如天空、墙壁、草地等。对整个区域进行视频编码并传输,会给网络带宽和视频存储带来巨大压力。ROI(Region of Interest)感兴趣区域编码可以通过智能或人工的选择画面中感兴趣的区域,重点进行高质量甚至无损地编码,而对其他区域降低其码率和图像质量,进行标准清晰度的视频压缩,甚至不传输该部分区域的视频,从而达到节省网络带宽的占用和视频的存储空间。目前,ROI智能视频编码技术包括:固定区域和动态跟踪两类。
用户可以用鼠标在监控画面中选择多个ROI感兴趣区域进行智能编码。如在H.265网络摄像机中设置若干个ROI感兴趣区域,ROI编码率可调。
智能网络摄像机支持脸部等目标识别,通过动态跟踪目标,对该动态ROI区域进行重点编码。很多情况下,感兴趣区域就是人眼所关注的区域。人眼具有从一张图像中快速定位显著性区域,并过滤掉次要的信息,提取有用信息并传输给大脑进行处理的能力机制,这一机制被称为人眼视觉注意机制。
人类的视觉系统对周围环境的感知机制分为两种:一是自底向上的视觉注意机制,这种机制受视觉刺激,与任务无关;二是自顶向下的视觉注意机制,这种机制受意识驱动,与任务相关 。人眼视觉注意机制的研究方向包括图像显著性区域检测和目标检测等 ,其中图像的显著性区域检测就是模拟实现上述两种视觉注意机制。图像的显著性区域检测包括图像压缩 、图像分割 、图像检索等图像处理任务。
图像显著性区域检测方法大多依据自底向上的人眼视觉注意机制,该机制主要受到图像的低级对比特征的刺激作用产生。简而言之,如果图像中某一位置在亮度和色彩等方面与其周围区域存在较大的差别,则这一区域最有可能引起人眼的视觉注意 。根据这一事实,传统显著性检测模型采用各种数学建模方法建立数学模型,对图像的所在位置与其周围区域进行数据对比计算,将各种对比结果数据(差异性)进行整合处理,得到最终的显著图。
这些年自顶向下的注意机制成为了研究热点,该机制是受到图像中的语义特征对人的意识驱动作用产生。图像中的文字、人脸、动植物等富含语义信息的目标通常会引起人们的视觉注意,这些语义目标便是自顶向下的视觉注意机制的具体体现。近些年,先进的图像显著性区域检测模型开始模拟实现自顶向下的人眼视觉注意模型,使用各种高级特征用于显著性区域检测,例如在其检测模型中加入了人脸、文本、动物和汽车等目标的高级特征。然而图像中的这些富含语义的目标特征提取和识别是一个复杂而困难的问题,目前基于自顶向下的视觉注意机制的检测模型大多是简单地加入某类目标识别的具体特定的知识特征,用于识别特定的目标从而辅助图像的显著性区域的检测,未能充分实现统一的自顶向下的视觉注意机制。
近些年,深度学习的人工神经网络模型在大规模的图像分类等图像处理任务中展现出了很好的效果。随着深度学习相关理论和实践的不断发展,开始有学者和研究人员将深度学习方法引入图像显著性区域问题的研究。例如利用3 层的稀疏编码器以无监督的学习方式从图像中提取更高的特征用于图像的显著性区域检测;或采用一组通过k-means 算法训练学习到的卷积滤波器提取低级和中级特征,之后利用中央-周边差值方法计算局部对比度。
虽然深度神经网络模型表现出了很好的效果和优秀的潜力,依旧不算完善。例如上述的两种方法,前者只关注了高级顶层特征的提取而忽略了低级特征,而后者则忽略了高级特征。
为追求低码率,视频编码会尽力压缩视频,从而导致图像细节信息的丢失。基于有损视频编码文件而解码后的视频图像自然就存在图像的损伤。为了修复这类损伤,甚至为了追求更好的图像效果,产生了图像超分辨率重建技术。图像分辨率是一组用于评估图像中蕴含细节信息丰富程度的性能参数,包括时间分辨率、空间分辨率及色阶分辨率等,体现了成像系统实际所能反映物体细节信息的能力。高分辨率图像通常包含了更大的像素密度、更丰富的纹理细节及更高的可信赖度。
编码后的实时视频或历史视频,相对原始场景,其图像通常会带来各类损伤。受采集设备与环境、网络传输介质与带宽、图像退化模型本身等诸多因素的约束,通常无法直接得到具有边缘锐化、无成块模糊的理想高分辨率图像。利用图像超分辨率重建技术,我们可以依据数字图像处理、计算机视觉等领域的相关知识,借由特定的算法和处理流程,从给定的低分辨率图像中复原出高分辨率的图像。
图像超分辨率重建在国计民生的多个领域均具有重要的应用意义。在视频监控、电视会议等需要进行广域视频传输的场合,传输前对视频图像进行有损压缩,接收端解码后再通过超分辨率重建技术复原出原始图像序列,从而极大地减少传输的带宽需求和存储的空间需求。在医学图像、遥感成像、公共安全、消费电子等领域,改造图像采集设备成本高昂,超分辨率重建技术可以在不增加图像视频采集成本的基础上复原出的清晰的影像,有助于提升医学诊断、遥感探测、目标识别、观赏体验的效果。
视频图像的成像过程受到很多退化因素的影响,其中最主要的三个因素是:运动变换,通常由运动、平移等因素造成;模糊作用,通常由环境或成像系统本身引起;降采样,通常由成像系统的分辨率决定。此外,还有加性噪声,通常来自于成像环境或成像过程。衡量重建算法的优劣通常基于重建后图像的评估。重建图像的评价方式分为两大类:主观评价和客观评价。主观评价以人为评价主体,对图像的视觉效果做出主观和定性的评估;为保证一定的统计意义,需要选择足够多的评价主体,并保证评价主体中未受训练的普通人和受过训练的专业人员数量大致均衡。客观评价通常采用峰值信噪比(Peak signal-to-noise ratio ,PSNR)和结构相似性(Structural Similarity, SSIM)两种图像质量评估指标;PSRN通过比较两幅图像对应像素点的灰度值差异来评估图像的好坏,SSIM则从亮度、对比度和结构三个方面评估两幅图像的相似性。
根据分类准则的不同,图像超分辨率重建技术可以划分为不同的类别。从输入的低分辨率图像数量看,可分为单帧图像的超分辨率重建和多帧图像(视频)的超分辨率重建;从变换空间角度看,可分为频域超分辨率重建、时域超分辨率重建、色阶超分辨率重建等;从重建算法角度看,可分为基于插值的重建、基于重构的重建和基于学习的超分辨率重建。
基于插值的方法对超分辨率图像的估计可视作利用已知像素信息为未知像素信息进行的拟合过程,通常由一个预定义的变换函数或者插值核完成。基于插值的方法计算简单、易于理解,但也存在着明显的缺陷:首先,它假设像素灰度值的变化是一个连续的、平滑的过程,实际上该假设并不完全成立;其次,重建过程仅根据一个事先定义的转换函数计算超分辨率图像,不考虑图像的降质退化模型,会导致复原出的图像出现模糊、锯齿等现象。
基于重构的方法从图像的降质退化模型出发,假定高分辨率图像经过了适当的运动变换、模糊及噪声才得到低分辨率图像,通过提取低分辨率图像中的关键信息,并结合对未知的超分辨率图像的先验知识来约束超分辨率图像的生成。
基于学习的方法利用大量的训练数据,从中学习低分辨率图像和高分辨率图像之间某种对应关系,然后根据学习到的映射关系来预测低分辨率图像所对应的高分辨率图像,从而实现图像的超分辨率重建过程。最重要的方法是深度学习。
深度学习则是机器学习中最主要的一个算法,其旨在通过多层非线性变换,提取数据的高层抽象特征,学习数据潜在的分布规律,从而对新数据做出合理的判断或者预测。基于深度学习的图像超分辨率技术的重建流程包括以下几个主要步骤:
特征提取:首先对输入的低分辨率图像进行去噪、上采样等预处理,然后将处理后的图像送入神经网络,拟合图像中的非线性特征,提取代表图像细节的高频信息;
设计网络结构及损失函数:组合卷积神经网络及多个残差块,搭建网络模型,并根据先验知识设计损失函数;
训练模型:确定优化器及学习参数,使用反向传播算法更新网络参数,通过最小化损失函数提升模型的学习能力;
验证模型:根据训练后的模型在验证集上的表现,对现有网络模型做出评估,并据此对模型做出相应的调整。
深度学习在图像超分辨率重建领域展现出了巨大的潜力,极大地推动了该领域的蓬勃发展。但距离重建出既保留原始图像各种细节信息、又符合人的主观评价的高分辨率图像的目标,仍有很长的路要走。主要存在着以下几个问题:
深度学习需要海量训练数据、高计算性能的处理器以及过深的网络容易导致过拟合等问题。
深度学习预先假定测试样本与训练样本来自同一分布,但现实中二者的分布并不一定相同,甚至可能没有相交的部分。
尽管当前基于深度学习的重建技术使得重建图像在主观评价指标上取得了优异的成绩,但重建后的图像通常过于平滑,丢失了高频细节信息。
基于人眼视觉关注点的感兴趣区域编码和图像超分辨率重建两大技术可以大幅降低视频传输所需的带宽和视频存储所需的空间,同时保证优秀的图像质量和良好的观看效果。但是,如何精准地识别关注目标,以及精确地还原图像原始信息,依旧有很长一段路要走。这中间,深度学习扮演了关键的角色,我们期待不断完善的学习机制和神经网络的出现。