技术解码 | 腾讯明眸技术全面解析——深度学习AI画质增强

2021-10-25 09:41:06 浏览数 (1)

不久前,我们为大家介绍了腾讯明眸这一利用腾讯云领先的编解码和媒体处理技术与AI技术融合打造而成的音视频技术品牌(攻城狮手记 | 既高清又低码?腾讯明眸帮你两者兼得)。接下来我们将通过三期文章,从AI智能处理编解码优化容器格式优化三个方面,进一步解读分享腾讯云音视频-明眸研究团队在多媒体领域前沿技术方面积累的经验和成果。

本期我们将先从深度学习AI画质增强开始,为大家分享腾讯明眸在AI方向上的探索及思考。

腾讯明眸核心能力展示

目前我们在画质增强的工作上通过结合深度学习网络,针对性的提出了一些适合于落地的AI解决方案,有些算法的效果也超过了当前的state-of-the-art,相关研究成果主要是应用到明眸极速高清和画质重生产品中编码优化前的前置处理的这个阶段,提供一些画质修复和增强的能力,来有效消除片源中的噪点和压缩效应,增强细节去除模糊,提升色彩质量,并解决由于分辨率和帧率低面卡顿不清晰等问题。

↓ 去除噪声:主要指拍摄过程和压缩导致的噪声点和伪影 ↓

↓ 去除模糊:主要包括各种各向同性和异性的高斯模糊 ↓

↓ 去除块状:主要指压缩严重时出现的块状效应 ↓

↓ 超分/细节:主要指模糊和下采分辨率变化丢失细节 ↓

↓色彩增强:主要指亮度、对比度或饱和度不足导致的色彩寡淡↓

通常来说,采用深度学习算法来进行画质增强,需要成对的训练数据,即一张低质视频帧和一张高清质量视频帧,设计的神经网络模型通过对低质视频帧进行处理,能够生成一张新的高质视频帧,但是这需要我们设计损失函数来提供监督信号约束网络的训练,使得最后生成的视频帧和高清质量视频帧能够尽可能接近或者以某种方式判断为一致。

神经网络模型训练流程

这里涉及到两个很难的问题,第一,要如何获取一对低质和高清视频帧,由于训练数据成对的方式理论上有无数种组合的方式,需要思考的是要如何将一个模态空间的数据向另一个模态空间进行转换,因此,如何来正确定义我们实际遇到的低质视频帧和转换成的高清视频帧成为了AI解决方案的关键因素;第二,如何设计出一个模型,它能够有效处理所有不同模态空间进行转换的能力,又需要增加多少约束项来训练网络使得它能够朝着我们设想的目标前进。我们将会贯穿这两个问题来展开讨论我们当前研究的一些解决思路。

应用场景划分

由于用一个大模型来同时处理所有情况是很难保证效果的,因此我们将问题根据实际不同的应用场景划分成了三部分,画质估计和修复、清晰度增强和色彩增强,其中每一部分的训练数据也会针对性的进行调整获取。

不同方法在压缩恢复上的效果对比

画质估计和修复的工作,主要是针对一些本身带有噪声和被压缩的视频帧进行修复和增强。若不经过这部分的处理,直接做譬如清晰度和纹理增强、色彩增强的操作,有机会放大噪声和伪影。反过来,若不管视频本身质量,一律统一进行去噪声和压缩的处理,也会导致细节丢失的问题。这里具体看下这张人脸图,以压缩恢复为例,它经过不同程度的压缩后呈现出不同的画质,若采用目前学术上最好的无估计方法进行统一的去压缩的处理,会发现它们恢复不了压缩很严重质量很差的图,而对于轻微压缩质量较好的图它的脸部和眼睛周边处理又太过平滑。因此,我们提出CRESNET,是一种有估计的压缩恢复方法,来针对压缩受损情况进行估计,提取质量估计网络中间层特征融合到恢复网络中进行指引,提升不同压缩程度的恢复效果,目前超过了State-of-the-art的方法,而且很适合实际落地应用。

基于压缩情况估计的动态调节早退图像增强模型技术方案流程

基于压缩情况估计的动态调节早退图像增强模型的技术方案流程如上图所示,对于每个输入样本,首先经过压缩情况估计网络得到控制向量和压缩程度系数。其中,控制向量用于生成图像质量增强模块中各个特征图的通道调节权重,压缩程度系数用于退出阶段的选择。

基于压缩情况估计的动态调节早退图像增强模型整体网络架构

本方案的整体网络框架如上图所示,包括压缩程度估计网络和多阶段图像复原网络。我们通过对视频帧进行不同程度的压缩,可以得到一个质量因子进行监督,它会结合估计网络的中间层特征进行动态网络权重的调整,也就是估计网络的特征是融合到恢复网络中的,可以同时保证估计和恢复的效果。多阶段图像复原网络采用密集连接型U型网络结构,不同子增强阶段对应不同大小的子U型网络结构,下一阶段的U型网络是基于上一阶段的U型网络及新的卷积层、下采样层、上采样层组成,下面以阶段2的子U型网络为例进行说明。

多阶段图像复原网络

如上图所示,在图像质量增强模块的每个卷积操作前,都会通过特征图调节结构来动态调整特征图的强度,从而依据输入样本自身的压缩情况实现更精细的调控。特征图调节结构的输入包括控制向量和特征图,输出为调节后的特征图。网络训练时,分为两个部分的监督,估计网络部分期望估计的压缩质量系数和真实压缩系数相同,复原网络部分期望复原图像和无损图一致。复原网络部分进行多阶段的训练,每个阶段的权重和其真实退出阶段的压缩系数相关,越接近的权重越大,最后整个网络由两部分进行联合训练。

在推断过程中,利用预测的压缩系数可以确定退出阶段,对简单的样本实现早退,动态地减少计算量。如下图展示效果,对于第一张质量较低的图片,需要完成五个阶段的恢复,第二张质量较高的图片在早期阶段就能恢复好,提前退出,就可以减少计算量。多阶段模型和自适应早退操作能合理的分配计算资源,并超过其它最好的方法AGARNet的效果。

不同阶段图像恢复效果对比

在另外一组的效果展示中,我们的CRESNet在第一张经过多次压缩的图片上恢复效果比QGCN稳定,而在第二张只是轻微压缩的图片上保持细节更好。

不同方法图像恢复效果对比

下面是一段我们进行画质估计和恢复后的视频,可以看到结合质量估计能更好的对有损视频进行修复增强。

接下来,我们会讨论如何去针对质量相对较好的源进行清晰度增强。在这个任务里,我们会重点考虑如何增强细节和纹理,达到去模糊和更加清晰的目的,但是也要同时兼顾到即使是较好的源也可能会有轻微的噪声,这些噪声若完全不理会,同样也是会被一起增强。因此,我们需要找到一种更合理的数据处理方式,它能同时兼顾到各种数据分布。我们会通过对退化数据随机引入噪声、压缩毛刺、视觉模糊和上下采不清晰等操作,来提高整体模型的泛化能力。另外,由于人眼对人脸和字体区域变化的敏感性,可以针对性的融合高级语义信息来对这些部分进行优化。

利用随机退化数据的生成方式来生成训练数据

在超分的工作里,BSRGAN提出利用随机退化数据的生成方式来生成训练数据来提高超分在真实场景里的效果。我们的工作也会借鉴这种思路,来根据实际数据的一个分布情况来生成相似的退化数据。如上图所示,我们将对高清源通过相对合理的这种随机退化数据的方式,来提高模型的综合增强能力。

清晰度增强模型

清晰度增强模型可以选择常用的生成式网络结构,如上图所示,通过多个增强模块和残差连接来提高输入帧的清晰度。其中每个增强模块我们引入了dual-attention的结构,在最新的去噪和超分模型里双注意力机制都被充分证明了其有效性。另外,考虑到大分辨率视频上运行速度要尽可能快,整体模型可以用Unet结构替换来增加搜索空间和提高运行速度。在损失函数的设计上,除了像素级损失,我们还同时考虑了梯度损失和感知损失,以及相对gan损失,期望通过综合多种损失函数来平衡清晰度增强的准确性和真实性。

另外,对于画面中人眼比较敏感的人脸和字体区域,可以针对性进行一些优化。目前,我们也在研究和探索通过高级语义信息来保护和增强特定细节。

比如Wang Xintao等在他们的超分任务中提出采用语义分割的先验知识来提高生成纹理的真实性,使得图中水的纹理变得更加清晰了。

还有一些专门针对人脸恢复的任务,DFDNET,先通过聚类获得各种人脸五官的先验特征,再融入增强网络里提高人脸细节。如下图这组人脸,先通过我们的网络增强后还比较模糊,再通过DFDNET增加人脸五官特征后变得更清楚了。还有一些文字检测和分割的算法,也是很强的先验知识,这些高层语义理解的信息融入图像增强的任务后,通常都能获得比较好的提升。

↑ DFDNET处理流程 ↑

↑ DFDNET人脸处理效果展示 ↑

这里我们来展示一些通过我们的模型增强后的视频帧的效果,从中可以明显看出模糊的区域变清晰了,不仅能抑制住噪声毛刺,还能增强细节和纹理,尤其人脸和字体的部分。

↑ 清晰度增强视频帧效果展示 ↑

清晰度增强效果展示视频

在这部分,我们会讨论如何对一些色彩黯淡的视频进行增强。我们提出的方法主要通过亮度、对比度和饱和度三个维度来分别进行色彩增强。若按照之前的增强思路,我们也可以选择端到端的成对数据训练方式,比如经典的方法有HDRNet,他通过学习色彩线性变换的系数来进行色彩增强,如下图所示。

HDRNet色彩增强方法

为了加快整个网络的推理速度,它先在小分辨率的图片上同时提取全局和局部的色彩特征,特征融合后推理出变换系数,该变换系数通过原尺寸上的guidance map 采用bilateral grid sliceing的方式来得到原图每个像素的变换系数。这种方式在能够做到局部调色的同时速度也很快,但总体来说,变换系数是黑盒操作,解释性差,会出现帧内和帧间跳变的不稳定问题。

色彩增强技术的另一种思路是通过白盒方法来生成作用于图像全局调整的参数,解释性更强,符合人为PS的操作更稳定可控,适合处理视频以及进行应用落地。白盒方法目前有两个比较好的思路:Distort-and-Recover 和 Exposure。Distort-and-Recover算法将对图片调整色彩的过程分解为包括亮度、对比度、饱和度调整的动作序列,最终目的是生成一组对色彩增强的操作序列使得调整后的图像色彩与专家调色后的色彩接近。而Exposure不仅预测操作序列,还预测操作时系数的大小。两种方法都采用了强化学习进行训练,非常难收敛,而且实际使用时模型stop的位置不稳定,视频色彩会跳变。

↑ 白盒方法色彩增强技术展示 ↑

↑ 腾讯明眸色彩增强模型 ↑

腾讯明眸色彩增强模型是要直接用参数回归来简化强化学习的思路,使得训练更容易收敛,而且这样的成对数据集也更容易获取,如上图所示,只需要对高质量色彩图分别进行亮度、对比度和饱和度的随机退化。训练时,色彩退化图可以下采到小尺寸提升运算速度。我们通过结合全局色彩特征和语义特征,固定操作顺序,做全连接回归来依次预测图像操作亮度、对比度、饱和度的增强参数,这样整体效果会更加稳定可控。

全局色彩调整CSRNet

另外,在最新全局色彩调整的CSRNet研究中,作者提出了针对每个像素点分别单独进行统一的全连接非线性变换,并采用另外一组网络分支提取全局色彩特征来调控全连接网络,可以逼近各种传统白盒的色彩操作如亮度和饱和度调整。由于不会受到固定色彩增强操作的限制,理论上其可以学习到所有可能的增强操作的组合。我们在明眸最新的色彩增强工作里,也引入了这套理论,并改进了数据退化和增强方式及其损失函数,使的它能更好的在真实视频应用场景上进行色彩增强。由于整个模型在视频上推理速度很快,CPU上也能达到实时的应用。下面的图片和视频是我们色彩增强前后的效果对比,可以看出颜色感官上更好了。

色彩增强前后效果对比

随着大尺寸(4k及以上)屏幕的普及,常见的720P/1080P和25/30fps帧率的视频已不能满足人的主观体验,这就是接下来要讨论的超分和插帧的研究方案。由于超分的整体思路和前面画质增强的比较相似,这里主要展示我们是如何应用多帧模型来解决问题的。

腾讯明眸多帧模型

如上图所示,我们将去压缩噪声和超分辨率任务整合在一个网络中,通过对网络加入去压缩和超分的损失函数,约束网络各模块着重于其中一个任务,然后端到端的训练整个网络,避免了分开进行导致后一任务结果受前一任务输出误差影响的情况。

Unet结构

借鉴FastDVDNet的思路,我们融合多帧信息进行输入,但不做显式对齐前后帧,而是直接使用UNet的结构。得益于网络中的多次下采,UNet可以一定程度上隐式处理帧间对齐的问题,相对于光流,可形变卷积等对齐方法,UNet 的运行时间更短。然而,缺少对齐的Unet结构虽然在前半部分去噪任务中表现良好,但对于提高后半部分超分的清晰度却不是最优的方案。

超分生成器单向循环网络

在TecoGAN中,超分生成器是一个单向的循环网络,上一帧输出的超分图像在显式计算光流进行对齐后,会作为下一帧图像输入的辅助帧同时输入网络中,通过不断融合之前所有帧的信息来生成新的超分图。该结构最大的优势就是以一种很自然的方式充分利用了多帧的信息来进行视频超分。在GAN视频网络中还应该考虑视频前后的稳定性问题,虽然GAN会生成新的细节纹理所以很适用于超分,但是GAN在不同帧间可能会生成不同的细节纹理,从而导致细节的跳变,影响视频观感的连续性。针对这个问题,我们提出了新的损失函数对网络进行约束,替代TecoGAN中长序列约束的PP Loss,基本思路是仅对每对视频前后两帧之间的细节差进行约束。我们发现在合适的权重下新方法在各项指标上均有所提高。如下图所示,左边为TecoGAN结果,右边为改进后的结果。对比可以发现,我们生成的超分图细节更加丰富可信,同时也消除了一些伪影。

TecoGAN结果(左)对比 改进后结果(右)

若不考虑实时性的影响,如在点播的应用场景中,我们可以进一步扩展到BasicVSR的网络结构(见下图),同时引入前后帧信息的对齐融合以提升超分的效果。

BasicVSR网络结构改进优化

视频插帧,就是通过对原始视频帧间补充新的视频帧,给用户提供更加流畅丝滑的视觉效果。目前这个问题有两个主要的行业痛点,稳定性差会出现闪烁和卡顿,模型较慢暂时很难落地到直播场景。从技术来说,需要克服的技术难点包括由于运动产生的形变、运动估计的不准确、非匀速直线的复杂运动以及遮挡问题。针对这些问题,腾讯云提出了两个插帧方案,第一个方案olfi效果远高于业界竞品,适合点播场景使用;第二个方案rtfi能较好的在速度和效果上达到平衡,适用于直播场景。如下面所示的客观指标图直观的对比了我们和state-of-the-art算法在速度和效果上的综合优势。

不同插帧方案效果指标对比

我们采用的olfi 网络是一个多尺度的RAFT Unet的精准插帧网络。如下图所示的结构,我们首先采用多尺度多次迭代的RAFT光流估计网络提取初始光流,充分利用运动先验信息;接着,通过一个Unet光流修正网络更新初始光流,通过扩大感受野来提升运动大场景的光流准确率;然后,考虑到可能的遮挡问题,双向分别通过光流warp出中间帧,再通过一个Unet合成权重网络生成双向中间帧的权重图,最后再次通过Unet合成插帧网络最终生成插帧图。

olfi网络结构

我们一共考虑了三种类型的损失函数进行网络监督。中间帧Optical flow loss通过预计算光流作为伪参考真值,估计中间帧到两边的光流,从而提高网络训练的稳定性;Warping loss 将前后两帧分别通过光流估计wrap到对方帧来确保前后推理的一致性,从而提升光流估计对真实场景的准确性,以及双向估计减少遮挡问题的影响;最终通过中间帧生成的Reconstruction loss来监督插帧图像的还原准确度。

腾讯明眸改进后的rife快速插帧网络

另外,我们采用的rtfi 网络是一个通过改进rife网络做快速插帧,适合于直播场景的结构。如上图,首先,我们直接采用快速的多尺度光流估计网络IFNet取代迭代式网络自适应不同幅度的运动估计;然后双向分别通过光流wrap出中间帧;接着通过简单快速的fusionnet 生成双向中间帧的融合权重和残差;最后再将所有信息融合通过一个Unet来合成最终的插帧图。

随着视频尺寸增大(HD dataset,1080P),我们的模型方案能更好适应不同的运动复杂度和视频尺寸,超越了state-of-the-art, 普适性更好。这里展示一段我们的插帧效果和别人的对比,可以看到,我们的方法在球网的生成上更加稳定,这是因为我们的模型能够较好的估计相似纹理的运动以及处理遮挡问题,所以能大大提升插帧的准确度。

↓ xvfi视频插帧效果 ↓

↓ slomo视频插帧效果 ↓

↓ rife视频插帧效果 ↓

↓ 腾讯明眸olfi视频插帧效果 ↓

总体来说,通过探索在时空域对视频进行超分和插帧,采用腾讯明眸播放视频更加的清晰流畅了。

↓ 未做超分和插帧处理的源视频 ↓

↓ 腾讯明眸处理后的视频 ↓

在之后的研究里,腾讯明眸将会对深度学习媒体画质增强从速度、数据、模型和效果四个方面继续优化探索。挖掘更好的方法去模拟真实的视频帧分布一直是数据驱动下深度学习模型效果提升的关键;鉴于当前需要针对不同任务来设计不同模型来进行修复和增强的情况,在未来也会进行模型融合和多任务的探索,来不断提高模型的泛化能力;更前沿的研究工作会更着重考虑人眼视觉的一个主观感受,如JND的引入以及通过语义信息的理解来提升视频处理的效果。

参考文献

[1] Hang, Y., Liao, Q., Yang, W., Chen, Y., & Zhou, J. (2020, October). Attention Cube Network for Image Restoration. In Proceedings of the 28th ACM International Conference on Multimedia (pp. 2562-2570).

[2] Kim, Y., Soh, J. W., & Cho, N. I. (2020). AGARNet: adaptively gated JPEG compression artifacts removal network for a wide range quality factor. IEEE Access, 8, 20160-20170.

[3] Li, J., Wang, Y., Xie, H., & Ma, K. K. (2020). Learning a single model with a wide range of quality factors for jpeg image artifacts removal. IEEE Transactions on Image Processing, 29, 8842-8854.

[4] Zhang, K., Liang, J., Van Gool, L., & Timofte, R. (2021). Designing a practical degradation model for deep blind image super-resolution. arXiv preprint arXiv:2103.14006.

[5] Wang, X., Yu, K., Dong, C., & Loy, C. C. (2018). Recovering realistic texture in image super-resolution by deep spatial feature transform. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 606-615).

[6] Li, X., Chen, C., Zhou, S., Lin, X., Zuo, W., & Zhang, L. (2020, August). Blind face restoration via deep multi-scale component dictionaries. In European Conference on Computer Vision (pp. 399-415). Springer, Cham.

[7] Gharbi, M., Chen, J., Barron, J. T., Hasinoff, S. W., & Durand, F. (2017). Deep bilateral learning for real-time image enhancement. ACM Transactions on Graphics (TOG), 36(4), 1-12.

[8] Park, J., Lee, J. Y., Yoo, D., & Kweon, I. S. (2018). Distort-and-recover: Color enhancement using deep reinforcement learning. In Proceedings of the IEEE Conference on computer vision and pattern recognition (pp. 5928-5936).

[9] Hu, Y., He, H., Xu, C., Wang, B., & Lin, S. (2018). Exposure: A white-box photo post-processing framework. ACM Transactions on Graphics (TOG), 37(2), 1-17.

[10] He, J., Liu, Y., Qiao, Y., & Dong, C. (2020, August). Conditional sequential modulation for efficient global image retouching. In European Conference on Computer Vision (pp. 679-695). Springer, Cham.

[11] Tassano, M., Delon, J., & Veit, T. (2020). Fastdvdnet: Towards real-time deep video denoising without flow estimation. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (pp. 1354-1363).

[12] Chu, M., Xie, Y., Leal-Taixé, L., & Thuerey, N. (2018). Temporally coherent gans for video super-resolution (tecogan). arXiv preprint arXiv:1811.09393, 1(2), 3.

[13] Chan, K. C., Wang, X., Yu, K., Dong, C., & Loy, C. C. (2021). BasicVSR: The search for essential components in video super-resolution and beyond. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (pp. 4947-4956).

[14] Jiang, H., Sun, D., Jampani, V., Yang, M. H., Learned-Miller, E., & Kautz, J. (2018). Super slomo: High quality estimation of multiple intermediate frames for video interpolation. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (pp. 9000-9008).

[15] Bao, W., Lai, W. S., Ma, C., Zhang, X., Gao, Z., & Yang, M. H. (2019). Depth-aware video frame interpolation. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (pp. 3703-3712).

[16] Choi, M., Kim, H., Han, B., Xu, N., & Lee, K. M. (2020, April). Channel attention is all you need for video frame interpolation. In Proceedings of the AAAI Conference on Artificial Intelligence (Vol. 34, No. 07, pp. 10663-10671).

[17] Huang, Z., Zhang, T., Heng, W., Shi, B., & Zhou, S. (2020). RIFE: Real-Time Intermediate Flow Estimation for Video Frame Interpolation. arXiv preprint arXiv:2011.06294.

[18] Sim, H., Oh, J., & Kim, M. (2021). XVFI: Extreme video frame interpolation. In Proceedings of the IEEE/CVF International Conference on Computer Vision (pp. 14489-14498).

腾讯云音视频在音视频领域已有超过21年的技术积累,持续支持国内90%的音视频客户实现云上创新,独家具备 RT-ONETM 全球网络,在此基础上,构建了业界最完整的 PaaS 产品家族,并以 All in One SDK 的创新方式为客户服务。腾讯云音视频为全真互联网时代,提供坚实的数字化助力。

0 人点赞