基于DCT 变换和零次学习的刑侦图像超分辨率①

2022-06-27 03:54李新婷牛丽娇
计算机系统应用 2022年5期
关键词:高分辨率痕迹分辨率

徐 健, 李新婷, 牛丽娇

1(西安邮电大学 通信与信息工程学院, 西安 710121)

2(电子信息现场勘验应用技术公安部重点实验室, 西安 710121)

随着智能化产业的不断发展, 视频监控以其直观、准确、及时和信息内容丰富而广泛应用于许多场合, 在安防系统中的重要性日益突出, 成为技术安全防范最有力的手段. 图像超分辨率(super-resolution, SR)可以有效地提升视频图像质量. 对低分辨率图像本身进行高质量的重建, 对于发现线索、拓展侦查手段和范围、突破嫌疑人口供和证明犯罪具有重要作用. 随着深度学习在图像重建方面的发展, 基于卷积神经网络(convolutional neural network, CNN)[1-3]的SR 方法取得了显著的成果. 由于真实LR-HR 图像对难以获取,许多基于CNN 的SR 方法通常在人工合成的图像对上进行训练, 例如对HR 图像进行双三次下采样[4]得到的LR 图像, 作为LR-HR 训练样本对. 然而, 真实场景下的LR 图像退化过程复杂未知, 与双三次下采样得到的LR 图像的分布存在差异, 由人工合成的训练样本训练的网络往往不适用于真实LR 图像的超分辨率.

尽管有越来越多的复杂退化模型模拟真实图像的退化情况, 但与真实LR 图像之间仍存在差异, 例如,Sun 等人[5]通过训练退化生成网络来减小合成LR 和真实LR 图像之间的域差, Guo 等人[6]提出对偶回归网络对真实LR 图像附加约束, 通过对偶学习估计下采样核. 为了使网络适用于真实场景下的低分辨率图像,Shocher 等人[7]提出一种无监督零样本超分辨率算法(zero-shot super-resolution, ZSSR), 该算法对输入图像进行下采样, 训练网络学习下采样图像到输入图像之间的映射, 待网络收敛后, 对输入图像进行超分辨率,仅利用图像内部的重复相似性对网络进行训练, 能处理任意模糊核下的真实LR 图像, 普适性强, 但应用于视频侦查效果欠佳.

在真实场景下, 为了减小存储与传输的数据量, 采集的低分辨率图像都经过压缩, 因此都存在压缩人工痕迹. 在JPEG (joint photographic experts group)[8]压缩中, 由离散余弦变换(discrete cosine transform, DCT)将图像从空域变换到频域, 通过对DCT 系数进行量化编码, 实现图像压缩, 为了压缩数据量, DCT 系数仅保留低频处的系数. 由于缺乏高频处的系数, 图像会出现振铃似的人工痕迹. 在低分辨率图像中, 由于JPEG 压缩是分小块进行的, 人眼的分辨率有限, 振铃似的人工痕迹不是太明显. 但是, 当低分辨率图像经过超分辨率之后, 小块变成了大块, 人工痕迹也经过了超分辨率, 导致人工痕迹非常明显. 因此, 本文提出一种基于离散余弦变换和零样本学习的图像超分辨率算法, 从图像压缩原理出发, 对低分辨率图像进行DCT 变换, 取前几个DCT 系数. 在训练神经网络时, 使网络学习低分辨率图像的前几个DCT 系数与高分辨率图像之间的映射, 避免超分辨率图像中出现假纹理.

1 相关工作

1.1 静止图像压缩原理

图像压缩是指去除图像数据中的冗余信息, 在不影响视觉感官的基础上节约计算机存储. JPEG[8]是静止图像压缩的最常见的一种方式, 其基本原理如图1所示, 对图像进行8×8 大小的分块DCT 变换, DCT 系数反映出图像块中的能量分布情况, 对DCT 系数进行量化、编码, 再进行逆DCT 变换得到压缩后的图像.其中, 低频分量对应于空域里图像的低频信息, 包含了图像的大部分内容, 且人眼对图像中的低频信息较为敏感; 高频分量对应于空域图像中的细节信息, 去除高频分量对于图像的视觉影响不大, 尽管去除高频分量后在8×8 的小方块上会出现一些人工痕迹, 但是由于方块较小, 这些人工痕迹并不明显. 但是, 当图像超分辨率后, 8×8 的小方块会被放大, 这些压缩产生的人工痕迹也会一起被放大, 超分辨率图像出现假纹理, 影响图像视觉效果.

图1 JPEG 图像压缩算法的示意图

1.2 零样本超分辨率

ZSSR[7]是一种自监督或无监督算法, 用于学习图像特有的内部信息. 考虑到图像内部的重复相似性, 使用核估计的方法估计输入图像的退化核, 在输入图像上进行不同缩放因子的下采样构造成对训练样本, 且通过在水平和垂直方向上旋转、翻转的方式增加训练样本. 然后在增广后的训练样本上训练用于超分辨率的小型卷积神经网络, 学习下采样图像与对应高分辨率图像间的映射, 经过数千次的梯度更新后, 再对输入图像进行超分辨率测试, 得到超分辨率结果. 整个超分辨率过程不依赖于任何外部训练样本或预训练过程,非理想条件下获得的超分辨率图像更接近真实场景的模糊、噪声、人工痕迹等, 适用于任意模糊核生成的低分辨率图像.

2 本文方法

本文提出一种基于离散余弦变换和零样本学习的图像超分辨率算法, 具体结构图如图2 所示, 结合图像压缩原理, 训练网络学习输入图像的DCT 系数与高分辨率图像之间的映射, 主要包含下采样、频域转换、超分辨率3 个步骤. 本文算法采用ZSSR 为基础框架,对下采样图像进行DCT 变换, 训练特定的小型CNN网络学习下采样图像DCT 系数与对应高分辨率图像之间的映射关系, 实现压缩图像的超分辨率.

图2 所提算法流程图

2.1 下采样阶段

2.2 频域转换

2.3 超分辨率网络

将低分辨率图像的DCT 系数输入CNN 网络, 训练网络学习低分辨率图像IiLR,sons的DCT 系数与高分辨率图像Ii HR,fathers之间的映射, 采用重建损失训练网络. 网络结构如图3 所示, 采用全卷积网络, 8 个隐层,每层有64 个通道, 并在每层后面跟ReLU 激活函数.训练网络经过数千次梯度更新后, 网络收敛, 将输入图像ILR进行DCT 变换后, 由训练好的CNN 网络进行超分辨率, 获取的超分辨率结果不包含假纹理.

图3 网络结构图

3 实验分析

3.1 实验环境与设置

本文算法的训练数据与测试数据都来自输入图像本身, 训练时采用Adam 优化器[9], 初始化学习率为0.001, 定期对重建误差进行线性拟合, 如果标准偏差比线性拟合的斜率大, 就把学习率除以10, 直到学习率降为10-6为止, 超分辨率倍数为2. 实验环境为Ubuntu 20.04, 深度学习框架为TensorFlow 2.0, 32 GB 内存主频为DDR4 3 200 MHz, GPU 为NVIDIA GTX1080Ti.

3.2 结果与分析

在标准数据集Set5[10]、Set14[11]、BSD100[12]、Urban100[13]上进行了实验测试分析, 使用零样本超分辨率(zero-shot super-resolution, ZSSR)[7]、纹理迁移网络超分辨率(learning texture Transformer network for image super-resolution, TTSR)[14]、深度交替网络(deep alternating network, DAN)[15]、多尺度超分辨率(multiscale image super-resolution, MSWSR)[16]、残差通道注意力网络(residual channel attention networks, RCAN)[17]等5 种算法与本文算法进行2 倍放大的结果如表1 所示, 其中, Bicubic 为双三次插值算法, ZSSR、TTSR 为无监督算法, DAN、RCAN、MSWSR 为监督算法.PSNR (peak signal-to-noise ratio)为峰值信噪比, SSIM(structural similarity) 为结构相似度, 表中的数据为PSNR/SSIM 的平均值. 考虑到标准数据集中的人工合成低分辨率图像为无损压缩格式, 本文算法在训练时输入为未量化的DCT 系数, 由表1 可以看出, 本文算法的PSNR 值要高于ZSSR算法平均0.065 dB, 高于TTSR 算法平均0.885 dB. 有监督的算法(例如DAN、RCAN 和MSWSR 等)均比无监督的算法效果好, 但是无监督的算法仅牺牲了一部分性能指标, 就可以避免长时间的学习过程, 大大降低了算法复杂度. 有监督的算法通常需要针对不同的放大倍数分别进行参数训练(例如2 倍和3 倍放大需要分别训练神经网络),每一次训练都要消耗大量时间, 但是无监督的算法能够用于任何放大倍数, 适应性较强, 更适合实际应用场合.

表1 不同算法在标准数据集上的PSNR/SSIM 结果

图4 展示了对比算法与本文算法在标准数据集上的超分辨率结果图, 图4(a)为低分辨率图像, 图4(b)为原始高分辨率图像, 图4(c)为Bicubic 超分辨率结果,图4(d)为ZSSR 超分辨率结果, 图4(e)为TTSR 超分辨率结果, 图4(f) 为DAN 超分辨率结果, 图4(g) 为RCAN 超分辨率结果, 图4(h)为MSWSR超分辨率结果, 图4(i)为本文算法结果. 从图中可见, 图4(i)的视觉效果与图4(d)和图4(e)的视觉效果相接近, 这是因为标准数据上的图像为无损压缩图像, 不包含人工压缩痕迹,而本文算法虽然是针对压缩图像的超分辨率算法, 但在人工合成的低分辨率图像上仍然具有良好的超分辨率效果. 为进一步验证本文算法的有效性, 采用真实低分辨率图像进行测试, 由于真实低分辨率图像经过了压缩算法的处理, 本文算法分别选取包含3 个DCT 系数和1 个DCT 系数的系数矩阵对真实图像进行超分辨率, 结果如图5、图6 所示, 图5(a)和图6(a)为真实低分辨率图像,图5(b) 和图6(b) 为ZSSR 超分辨率结果, 图5(c) 和图6(c)为TTSR 超分辨率结果图, 图5(d)和图6(d)为RCAN 超分辨率结果, 图5(e)和图6(e)为MSWSR 超分辨率结果, 图5(f)和图6(f)为本文算法保留一个系数的超分辨率结果, 图5(g)和图6(g)为本文算法保留3 个系数的超分辨率结果. 图5 为人物图, 可以看出与图5(a)-图5(f)相比, 图5(g)中人物的额头、下巴之类的部位的假纹理明显减少. 图6 为车牌图像, 可以看出与图6(a)-图6(f)相比, 图6(g)的后保险杠和车牌上的假纹理明显减少, 车牌的轮廓和字符的边缘也更清晰.

图4 Set14 数据集超分辨率结果

图5 真实LR 图像(一)超分辨率结果

图6 真实LR 图像(二)超分辨率结果

4 结论

基于CNN 的超分辨率网络通常学习低分辨率图像到高分辨率图像的映射, 对于真实低分辨率图像而言, 退化过程复杂未知, 且缺少对应的高分辨率图像.另外, 由于真实场景下的低分辨率图像大都经过压缩算法的处理, 存在人工压缩痕迹, 许多算法对真实低分辨率图像进行超分辨率时会将压缩痕迹放大, 导致超分辨率图像出现假纹理. 在自监督算法ZSSR 的基础上, 本文提出一种基于离散余弦变换和零样本学习的超分辨率算法, 对低分辨率图像进行DCT 变换, 训练超分辨率网络学习DCT 系数与高分辨率图像之间的映射, 避免压缩痕迹被放大. 观察实验结果可以看出,本文算法在无损压缩的图像上具有与最新无监督算法相接近的性能, 在真实低分辨率图像上, 能够有效地减少假纹理, 获得良好的视觉效果.

猜你喜欢
高分辨率痕迹分辨率
高分辨率CT+人工智能在新型冠状病毒肺炎诊断与疗效评估中的应用研究
探讨高分辨率CT在肺部小结节诊断中的应用价值
好画质不局限于分辨率 探究爱普生4K PRO-UHD的真面目
小偷留下来的痕迹
生命痕迹
基于异常区域感知的多时相高分辨率遥感图像配准
关于为“一带一路”提供高分辨率遥感星座的设想
ARM发布显示控制器新品重点强化对分辨率的支持
触摸岁月的痕迹(2005)
从600dpi到9600dpi