刘 颖,刘玉霞,毕 萍*
(1.西安邮电大学通信与信息工程学院,西安 710121;2.电子信息现场勘验应用技术公安部重点实验室(西安邮电大学),西安 710121;3.无线通信与信息处理技术国际联合研究中心(西安邮电大学),西安 710121;4.西安邮电大学图像与信息处理研究所,西安 710121)
(*通信作者电子邮箱biping@xupt.edu.cn)
近年来,监控设备的推广和普及给侦查破案带来了极大的便利。但是由于受到光照、拍摄距离和拍摄角度等因素的影响,公安部门所获得的部分监控视频或监控图像分辨率低、侦查目标模糊不清[1],给侦查工作带来了极大的挑战[2]。因此,低分辨率图像的识别是亟待解决的实际应用问题。
针对低分辨率图像的识别有两种策略:一种为直接法,即分辨率稳健特征表达法[3],该方法直接从低分辨率图像上提取稳健的特征,再将提取到的特征用于图像识别,例如局部频域描述子方法[4]、基于颜色特征的描述子方法[5]等;另一种为间接法,Ghoneim 等[6]提出先对低分辨图像进行超分辨率重建得到高分辨率图像,再用图像识别的方法进行识别。该类方法使用超分辨率重建算法先预测出低分辨率图像中缺失的高频信息部分,再从高频信息中获得更丰富的目标特征用以提高低分辨率图像的识别率。观察低分辨率图像和高分辨率图像可以发现,两者之间主体外观轮廓近似,即高/低分辨率图像之间的边缘相似,而高分辨率图像的边缘中包含了更丰富的图像细节信息,若能从低分率图像中获得类似的高分辨率图像的边缘信息,则可以提升低分辨率图像识别的算法性能。Nazeri等[7]从缺失的图像中先学习出缺失图像的边缘,再将整幅图像的边缘信息作为先验信息加入到图像修复的算法中,使得修复后的图像更准确,性能更好。
借鉴Nazeri 等[7]的思想,本文先从低分辨率图像中生成与其高分辨率图像相似的幻想边缘,并将该边缘作为先验信息加入到识别网络中然后进行图像识别,从而提高低分辨率图像的识别率。
LeNet-5 是由LeCun 等[8]于1998 年提出,该模型用于手写字符识别,是经典的卷积神经网络模型。模型是一个端到端的网络结构,共有7 层,包含2 个卷积层(Convolutional layer,Conv)、2 个池化层(Pooling layer,Pool)、3 个全连接层(Fully Connected layers,FC),最后输出识别结果。在网络训练的过程中,其损失函数定义为:
其中:W表示网络中所有参数的集合,P表示训练批次的个数,ZP表示一个批次的输入值,yDp表示输出的预测类别。在损失函数中加入了自适应惩罚项,i表示种类类别,j表示一个批次里的样本数。在神经网络预测输出的类别错误类较多时,该惩罚项给预测错误的类分配一个较大的权重,使神经网络做下一次反向传播时,降低了预测错误类别的概率,直到损失值达到最小,网络收敛。
边缘学习网络采用生成对抗网络(Generative Adversarial Network,GAN)结构,它由生成网络和判别网络两部分组成。GAN 网络结构在图像风格迁移[9-10]、超分辨率重建[11-13]及图像到图像转换[14-15]领域中获得了非常好的结果。
网络设计时,卷积层数过少会导致提取不全图像的重要特征信息,若是增加网络层数又会使得网络训练参数过多,训练时长太长。经以上考虑,在生成网络结构中选择3 个卷积层对图像进行下采样,这是实验的一个经验值;n个残差块(Residual Block),用于提取图像特征;2 个转置卷积层(Transposed Convolution layer,ConvTranspose),用于对图像进行上采样。判别网络采用12 ×12 PatchGAN[16]的网络结构,它包含5 个卷积层。网络结构如图1 所示。在生成网络和判别网络中均使用了频谱归一化(Spectral Normalization,SN)[17]策略。SN 最初仅用于判别网络中,但Odena 等[18]为了防止在网络的训练过程中参数和梯度值的突变,也将SN用在了生成网络中。SN 通过缩小每层的网络权重矩阵与其最大奇异值的比值使网络训练达到稳定,从而将Lipschitz常数限制为1。
图1 低分辨率图像识别网络Fig.1 Low-resolution image recognition network
令Igt表示高分辨率图像,Cgt表示高分辨率图像的边缘,表示低分辨率图像,表示低分辨率图像的边缘。生成网络中,将作为生成器的输入,得到预测的低分辨率图像的边缘Cpred。
判别网络中,Cgt和Cpred作为网络的输入,用对抗损失和特征匹配损失作为目标函数来训练网络,即目标函数定义为:
其中:λadv和λFM是正则化的参数,实验中选择λadv=1且λFM=1。
对抗损失函数定义为:
特征匹配损失定义为:
其中:M表示判别器中的卷积层数,Ni表示第i个激活层中的元素个数,D(i)表示判别器第i层的激活值。特征匹配损失函数LFM通过比较预测的低分辨率图像边缘与真实的高分辨率图像边缘在各个中间层的特征图的相似性来训练网络,最终使得预测的低分辨率图像边缘与真实的高分辨率图像边缘近似。
低分辨率图像识别网络的整体结构如图1 所示,在判别网络中,每层卷积之后会形成图像的特征图,对网络所学习的边缘Cpred与高质图像的边缘Cgt的特征图进行特征匹配(Feature Matching),其输出值是一个4 维张量,目的是来计算特征匹配损失函数LFM,达到以假乱真的效果。低分辨率图像识别算法当中,用GAN 结构学习边缘Cpred使得其与Cgt相近,来得到更准确的的边缘信息,将Cpred作为先验信息融合到中进行识别,实验发现加入了边缘先验信息能提高低分率图像的识别率。
识别步骤如下所述:
步骤1 将原始高分辨率图像Igt下采样再上采样生成低分辨率图像,同时对高分辨率图像和低分辨率图像分别进行边缘检测,得到图像的边缘Cgt和;
步骤3 将生成的低分辨率图像边缘Cpred与低分辨率图像融合,生成具有边缘先验信息的新的低分辨率图像数据;
步骤5 低分辨率测试图像经过边缘生成网络和识别网络后得到最终识别结果。
实验中使用了MNIST、EMNIST 和Fashion-mnist 三个数据集,图像大小为28×28(28像素×28像素),其中训练集各60 000幅图像,测试集各10 000图像,且每个数据集中各有10类。三个数据集中每个类别的数量统计如表1 所示。MNIST、EMNIST 这两个数据集虽然在图像尺寸和图像内容上一致,但是MNIST 数据集中的数字比EMNIST 数字略小,如图2(a)、(b)所示。
将28×28 的原始图像Igt分别下采样为7×7 和3×3 的低分辨率图像后再上采样还原为28×28的图像,并定义该图像为低分辨率图像部分实验数据如图2所示。
表1 各数据集类别的数量统计Tab.1 Quantity statistics for different categories in each dataset
图2 实验数据样本Fig.2 Samples in experimental data
目前Canny 边缘检测算子应用最为广泛,该算法能够尽可能多地标识出图像中的实际边缘。Rabby 等[19]运用了Canny 边缘检测算法对水果进行了识别与分类,考虑到MNIST、EMNIST 和Fashion-mnist 数据集图像简单且无复杂的背景和纹理,同时对比了常用的5 类边缘检测算子Prewitt、Roberts、Sobel、Log 和Canny 的检测结果,如图3 所示。由图3可知Canny 算子提取到的图像边缘最完整,故本实验中也用Canny算子对高分辨率图像Igt和低分辨率图像进行边缘提取,获得边缘Cgt和。
图3 不同算子的边缘检测结果Fig.3 Edge detection results of different operators
边缘生成网络采用GAN 策略生成与高分辨率图像近似的低分辨率图像的边缘。网络中各层参数如表2所示。
在生成网络中,不同的残差块的数量对边缘生成产生不同的影响。图4中比较了在MNIST 数据集上用7×7 的低分辨率图像作为输入,分别采用6 个残差块、8 个残差块和10 个残差块网络时,生成网络输出的图像边缘。实验结果表明,残差块越多,生成的图像边缘越清晰完整,但需要训练的参数更多,耗时更长。综合考虑网络的参数数目和训练时间,本实验选择生成网络的残差块个数为n=8。
表2 边缘生成网络各层参数Tab.2 Parameters of each layer of adversarial edge learning network
图4 残差块个数对边缘学习的影响Fig.4 Influence of the number of residual blocks on adversarial edge learning
LeNet-5 的识别网络共有7 层,每层网络的参数如表3所示。
生成网络生成的图像边缘信息可以采用两种策略加入到低分辨率图像中:一种方式为像素逐点叠加,即式(6);另一种方式为两幅图像拼接,即式(7):
两种策略生成的样本经过识别网络训练后,得到的识别率如表4 所示(以MNIST 数据集中的7×7、3×3 低分辨率图像为例)。实验结果表明,叠加策略可以得到更高的识别率。
表3 LeNet-5各层的参数Tab.3 Parameters of each layer of LeNet-5
表4 叠加和拼接两种策略的识别结果Tab.4 Recognition results of two strategies(stacking and stitching)
利用网络的对抗性学习原理,对于幻想生成的低分辨率图像的边缘和其对应高质图像的边缘,判别网络无法做出正确判断时,本文网络训练完成,本文实验中相应的参数设置为迭代次数50 000,学习率0.01。对MNIST、EMNIST和Fashionmnist 三个数据集中的测试样本进行下采样和上采样后分别得到7×7 和3×3 两个尺度的低分辨率图像。经过本文提出的低分辨率图像识别算法网络预测学习出低分辨图像的边缘,然后将边缘信息和低分辨率图像相融合的方法送入到LeNet-5 经典网络中进行识别测试,得到其对应的识别率。同时对7×7 和3×3 两个尺度的低分辨率图像运用超分辨率重建SRCNN(Super Resolution Convolutional Neural Network)经典算法[20]进行超分辨率重建后送入到LeNet-5 识别网络进行识别得到其对应的识别率。所测得到的识别率均是取其均值并计算了标准差,两次实验结果对比汇总,如表5所示,结果如图5所示。
表5 低分辨率图像的识别结果Tab.5 Recognition results of low-resolution images
从表5中数据分析可以看出:在MNIST 数据集中,加入预测边缘后使得3×3图像的识别率提高了约8个百分点,实验结果较为明显。在MNIST、EMNIST 和Fashion-mnist三个数据集中,加入预测边缘后使得7×7 图像的识别率略有提高。但是在Fashion-mnist 数据集中,加入预测边缘后使得3×3 图像的识别率反而没有直接加入Canny 边缘的识别率高,说明该数据集图像较其他两个数据集图像纹理更丰富,仅运用Canny边缘作为边缘学习生成网络基准,这样用传统方法得到的边缘信息不能够满足复杂图像的边缘学习要求,从而影响了图像的识别率。
图5 实验结果Fig.5 Experimental results
从日常监控视频所获得的低分辨率图像往往会夹杂着些许的噪声,与此同时,考虑到日常生活中噪声影响,以MNIST数据集7×7 为例,对输入图像分别加入密度为0.01,0.02,0.03的椒盐噪声并对其进行识别测试,识别结果如表6和图6所示。
表6 带有椒盐噪声的MNIST(7×7)图像识别结果Tab.6 Recognition results of MNIST(7×7)images with salt and pepper noise
从图6 可以直观地看到,随着实验噪声浓度加大,网络生成的边缘无规定的形状,几乎没有了完整数字轮廓,数字7 最为明显;从表6 识别率数字分析可以看出,加入原有的Canny边缘得到的识别率要比通过网络得到的预测边缘和低分辨率图像融合识别得到的结果要好很多。结果表明,加入的椒盐噪声会严重影响实验预测的幻想生成边缘,导致幻想边缘严重形变,从而使得识别率下降,因此边缘学习算法对噪声的鲁棒性较差,不具备抗噪能力。
图6 MNIST(7×7)图像在不同密度噪声下的边缘学习结果Fig.6 Adversarial edge learning results of MNIST(7×7)images under different density noise
从网络提取特征分析来看,实验比较了不同数据集中7×7 图像经过LeNet-5 第一层的特征图,以MNIST 数据中的数字0、EMNIST 数据中的数字5 和Fashion-mnist 数据中的一款靴子为例,结果如图7所示。
图7 各类数据集上特征图比对Fig.7 Feature map comparison on various datasets
从图7可以看出:对MNIST数字0和EMNIST数字5分析,由于它自生的信息比较单一,加入边缘先验信息后它所提到的特征轮廓甚是明显,而Fashion_mnist自身信息较为丰富,网络特征提取只能够提取到它的外部轮廓,并没有前面提取到的特征明显,对比发现,加入边缘信息后得到的特征图纹理轮廓更加清晰,网络所提取到的图像特征信息更丰富,因此,引入图像边缘信息是可以提高低分辨率图像的识别率。本文所加入的边缘信息是对所有分类识别都有促进作用还是单纯地只针对某一类数据起作用?为了解决该疑惑,在实验过程中保存了识别网络模型参数,并分别画出了各类数据集中7×7和3×3图像无边缘信息所对应的ROC曲线图和融合边缘信息后的ROC 曲线图,结果如图8~10 所示。以图9(c)和图9(d)的类别0 和类别2 来说,它的总体识别是较高的,类别0 加入边缘先验信息后识别变高了0.001 6,但类别2 却降了0.003。由数据分析可知,边缘信息对每个类别识别率的贡献不同,有些类别加入边缘后识别率升高,但是有些类别加入边缘信息后反而会降低识别率,这说明从这类样本中并没有学到有效的边缘信息。
图8 MNIST数据集上的ROC曲线Fig.8 ROC curves on MNIST dataset
图9 EMNIST数据集上的ROC曲线Fig.9 ROC curves on EMNIST dataset
图10 Fashion-mnist数据集上的ROC曲线Fig.10 ROC curves on Fashion-mnist dataset
本文针对低分辨率图像的识别问题,提出了一种基于GAN 结构的边缘学习低分辨率图像识别算法,将通过生成网络学习到的低分辨率图像的幻想边缘信息融入到识别网络中,得到清晰的特征图纹理轮廓,从而丰富了低分辨率图像的高频信息。结果表明,所提算法在MNIST 和EMNIST 数据集中识别率提高较为明显,但在较为复杂的Fashion-mnist 数据集中过低分辨率图像的识别率不升反降。当图像受椒盐噪声干扰时,边缘学习网络的输出结果受噪声干扰严重,无法准确获得低质图的边缘,导致低分辨率图像识别率急剧下降,实验表明本文提出的边缘学习网络的抗噪能力较差。在今后的工作中,受噪声干扰的复杂纹理低分辨率图像的识别是进一步的研究目标。