深兰科技视频图像的美颜术——基于核预测的FastDVDNet视频去噪技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
深兰科技视频图像的美颜术——基于核预测的FastDVDNet视频去噪
技术
随着多媒体技术的不断发展,视频设备的应用越来越广泛,清晰的视频图像已不再是人们对高品质的追求,反而逐渐成为了基本要求,就好比现在人们自拍发朋友圈都要先美颜一样。而在视频图像的拍摄传播中,由于受到一些内外界因素的影响,视频图像质量会被降低,影响人们获取符合需求的信息。因此对视频图像进行有效的加强和去噪,确保视频图像良好的清晰度,便顺理成章地成为了当务之急。
基于核预测的FastDVDNet视频去噪技术
1.简述
目前大多数的视频去噪方法都是基于补丁的, 而用于视频去噪的神经网络方法比基于补丁的方法更少。递归神经网络是最早用于视频去噪的,但只适用于灰度图像且效果不理想,之后一种基于核预测神经网络的结构,能够去噪蒙特卡罗渲染序列,再之后VNLnet、VNLB和DVDNet等算法的诞生则能有效地去除噪声。
在视频去噪算法中,时间的一致性和减少闪烁这两点是至关重要的,因此对给定的一帧图像去噪时,必须利用相邻帧中存在的时间信息。
对于加强时间一致性我们可以从以下两方面入手:将搜索区域从空间邻域扩展到时空邻域;
使用运动估计。现在最先进的视频去噪方法FastDVDNet能很好地解决时间一致性这个问题,从而达到高效的视频去噪效果。
2.FastDVDNet算法
在这一节中,主要从以下几个方面来介绍FastDVDNet,分别是该算法中用到的一些技术、程序中对样本的处理、FastDVDNet算法的网络结构、损失函数以及与前身DVDNet的对比。
2.1 FastDVDNet的三个技术
在这一小节中,主要简单介绍FastDVDNet算法中的技术层面,首先给出一些技术中涉及到的名词解释,然后介绍这些技术带来的优点。
2.1.1 名词解释
1.伪影(Artifacts):是指原本被扫描物体并不存在,而在图像上却出现的各种形态的影像;
2. 光流(Optical Flow):是指空间运动物体在观察成像平面上的像素运动的瞬时速度,简而言之,光流就是瞬时速率,在时间间隔很小(比如视频的连续前后两帧之间)时,也等同于目标点的位移;
3.光流法:是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性,来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。
2.1.2 技术
(1)级联两部去噪(Two-Step Denoising):可以有效地利用时间邻域中存在的信息,并在输出帧中加强剩余噪声的时间相关性;
(2)多尺度去噪(Multi-Scale Architecture):提高去噪效果;
(3)端到端训练(End-to-End Training):没有光流对准,避免了由于错误的流造成的失真和伪影,减少工作时间。
2.2 网络结构
上一小节主要介绍了算法中用到的技术,在这一小节中我们主要介绍FastDVDNet的网络结构,以及各个去噪块的输入输出。
2.2.1 输入输出
输入:图像序列与噪声估计,其中噪声作为输入是为了允许处理空间变化的噪声。
(1)算法结构中Block1的三张图片,在输入Block1之前均已加入高斯噪声,并且每张图片后面都跟一个通道为1的Noise Map,构成一个通道数为12的图片,随后叠在一起输入Block1,其输出是一张图片;(2)Block2和Block1(所有Block1共享参数)的结构相同,输出是一张照片。
输出:t时刻的帧
2.2.2 网络结构
图(a)是FastDVDNet的结构图,通常连续5帧和一个噪声的估计一起作为网络的输入,三个Block1共享参数,Block1和Block2有着相同的结构。图(b)是Denoising Block的结构,是一个修改版的U-Net网络,相较于一般的 U-Net,它主要有以下几方面的改进:
(1)此处的网络有2个下采样层,且下采样并非通过Pool来实现,而是通过Stride为2的Conv层实现的;此外,上采样也没有通过Bilinear插值或Deconv来实现,而是通过PixelShuffle来实现的,这样有助于减少网络伪影。
(2)编码器特性与解码器特性的合并是通过像素级的加法操作来完成的,这既减少了内存需求,又通过中心有噪声的输入帧与输出帧之间的剩余连接来实现剩余学习,简化了训练过程。
2.3 样本
前两节中我们给出了算法结构和算法中涉及的技术,至此算法的轮廓以及大致细节已经清楚,下一步就是算法的实现问题了。在实现算法之前我们先要对样本进行处理,这样才可以用来传入网络中。本节将主要讨论对样本的一些处理操作。
论文中的训练样本取自DAVIS数据库的训练集中提取的384000个训练样本,程序中对输入的样本进行了以下几步处理:
1)将[0. ,255.]之间的维度为[N, num_frames, C, H, W] 的样本转化为[0. , 1.]之间的维度为[N, num_frames,*C, H, W]的样本;
2)对于样本进行翻转、旋转90°、先旋转90°再翻转、旋转180°,先旋转180°再翻转、旋转270°、先旋转270°再翻转、加正态分布(翻转均是在dim=2上,旋转均是在dim=[2, 3]上);
3)样本和样本的上述8种变换分别按照频率[32, 12, 12, 12, 12, 12, 12, 12, 12]进行选择,其中不做任何变换的样本被选择到的概率为四分之一,然后将转换后的图片作为img¬_train, 最后从img¬_train 提取出中心帧作为ground-truth;
4)对于测试时输入的图片,第一张图片输入的序列是2,1,0,1,2、第二张图片是1,0,1,2,3……最后一张图片是22,23,24,23,22,对于边界图片采用最小值的方法“去头加尾”给出完整序列。
2.4 损失函数
训练数据集由输入输出成对组成
其中是连续帧中同一位置裁剪的五个空间patch集合,是序列的中心,是相应的噪声图。
损失函数如下:
其中是网络的输出,是所有可学的参数集。
2.5 与DVDNet 的对比
前面的几小节中,我们主要介绍了最先进的视频去噪算法FastDVDNet, 而这一小节将主要介绍FastDVDNet与DVDNet的不同以及DVDNet的网络结构。
2.5.1 DVDnet网络结构
下图是DVDNet的网络结构,它与FastDVDNet一样也是两部级联架构。