学习视频超分辨率扩散模型中的空间适应和时间相干性(原文翻译)
文章目录
- 摘要
- 1. Introduction
- 2. Related Work
- 3. Our Approach
- 3.1. Video Upscaler
- 3.2. Spatial Feature Adaptation Module
- 3.3. Temporal Feature Alignment Module
- 3.4. Video Refiner
- 3.5. Training Strategy
- 4. Experiments
- 4.1. Experimental Settings
- 4.2. Comparisons with State-of-the-Art Methods
- 4.3. Model Analysis
- 5. Conclusions

摘要
扩散模型只是在图像超分辨率任务的临界点上。然而,利用扩散模型进行视频超分辨率并非易事,这不仅需要将视觉外观从低分辨率视频保存到高分辨率视频,还需要保留视频帧之间的时间一致性。在本文中,我们提出了一种新的方法,追求空间适应和时间相干性(SATeCo),用于视频超分辨率。SanteCo 专注于从低分辨率视频中学习时空指导,以校准潜在空间高分辨率视频去噪和像素空间视频重建。从技术上讲,SATeCo 冻结了预训练的 UNet 和 VAE 的所有参数,并且在 UNet 和 VAE 的解码器中只优化了两个有意设计的空间特征适应 (SFA) 和时间特征对齐 (TFA) 模块。SFA通过自适应估计每个像素的仿射参数来调节帧特征,保证了高分辨率帧合成的像素级指导。TFA 通过 self-attention 深入研究 3D 局部窗口 (tubelet) 中的特征交互,并在 tubelet 与其低分辨率对应物之间执行交叉注意力以指导时间特征对齐。在 REDS4 和 Vid4 数据集上进行的大量实验证明了我们方法的有效性。
Paper:https://arxiv.org/abs/2403.17000
1. Introduction
近年来,扩散模型[11,36,37,55]在革命图像生成方面取得了很大的进展。在其中,一系列图像超分辨率工作[36,46,52]受益于利用嵌入在扩散模型中的知识先验将低分辨率(LR)图像升级为高分辨率(HR)图像。与 2D 图像相比,视频具有更多的时间维度,在利用视频超分辨率 (VSR) 的扩散模型时带来了更多挑战。一种自然的方法是利用预先训练的扩散模型进行图像超分辨率(ISR),例如StableSR[46]来放大每个视频帧。代表性的进步[46,52]表明,ISR的扩散模型可以比传统的回归模型(如VRT[23])合成更多的细节。如图 1 所示,Stabler 生成的建筑物中窗口的边缘比 VRT 生成的边缘要清晰得多。然而,扩散模型的固有随机性可能会危及空间保真度并幻觉一些额外的视觉内容。此外,独立的逐帧超分辨率忽略了连续帧之间的关系,导致高分辨率视频中的帧不一致问题。例如,图 1 中的交通标志在 StabLSR 生成的两个相邻帧之间完全不同。
图1。通过使用StableSR[46]、VRT[23]和我们的SATeCo的不同方法生成两个相邻的帧来说明视频超分辨率。放大视图中呈现相同局部位置的区域。
一般来说,探索视频超分辨率扩散模型的困难源于两个方面:1)如何缓解扩散过程中的随机性以保持视觉外观。2)如何保证HR视频中跨帧的时间一致性。我们建议通过从低分辨率视频中学习时空指导来解决这两个问题,以管理视频超分辨率的扩散过程。为了调节空间适应,我们估计LR帧特征上的仿射参数,以调制HR帧中的每个像素。因此,像素级指导被用来很好地学习HR帧中每个像素的特征,并更好地提高空间保真度。为了在时间上协同视频帧,我们加强了 HR 帧之间的特征交互,并通过注意力机制增强了 HR 帧和 LR 帧之间的特征校准。此外,通过对 3D 局部窗口 (tubelet) 内的特征进行自我注意和交叉注意,从而促进了时间特征对齐,从而获得了较大的感受野。
为了具体化我们的想法,我们提出了一种新的 SCECo 方法来执行视频超分辨率的空间适应和时间连贯性。从技术上讲,SATeCo 使用基于转换器的视频升级器对输入 LR 视频进行上采样。然后,VAE 编码器提取 LR 视频的视频特征和潜在代码,并进一步用于扩散校准。SanteCo故意设计了空间特征自适应(SFA)和时间特征对齐(TFA)模块,并将这两个模块插入到UNet和VAE的每个解码器块中,用于潜在空间视频去噪和像素空间视频重建。在潜在空间视频去噪的正则化中,SFA 在每个上采样的 LR 帧的潜在代码上利用两个卷积层来预测尺度和偏差来调节 HR 帧的像素级特征。TFA首先在小管内的 HR 视频潜在代码上执行自注意力以增强特征交互,并进一步在 Tubelet 与其 LR 对应物之间进行交叉注意力,用于 HR 视频中的特征校准。LR视频特征以相同的方式利用,在像素空间视频重建中调节HR视频特征学习。SanteCo 最后通过神经网络参考上采样的 LR 视频来细化解码后的 HR 视频,以平衡合成质量和保真度。
本文的主要贡献是提出了SATeCo来探索视频超分辨率扩散模型中的空间适应和时间相干性。该解决方案还引出了一个优雅的观点,即如何利用LR视频中的像素级信息进行视觉外观保存,以及如何在HR视频生成中实现帧一致性。在REDS4和Vid4上的大量实验表明,SATeCo在空间质量和时间一致性方面的优越性。
2. Related Work
视频超分辨率。现代VSR方法主要基于深度神经网络,可以分为两类,即基于滑动窗口的方法和递归方法。早期的基于滑动窗口的VSR技术[1,22,50,51,53]依赖于2D或3D cnn[19,20],它结合了一系列LR帧来预测中心HR帧。为了充分利用相邻帧之间的互补信息,采用可变形卷积[43,48]进行特征对齐。受变压器架构在各种计算机视觉任务中的成功启发[6,27-29],自我注意被整合到VSR框架中[14,23,26,47]。一个代表性是VRT[23],它将时间相互注意块插入到变压器主干中,以促进运动估计、特征对齐和融合。然而,基于滑动窗口的方法很难捕获远程依赖,这可能会限制视频超分辨率的性能。与在短期内聚合来自相邻帧的信息相比,循环方法 [2, 3, 15, 17, 18, 24, 38, 39, 54] 利用隐藏状态将所有前一帧的信息顺序传播到当前帧,有利于帧恢复。例如,Chan等人[2]采用了一种具有基于流的特征对齐的双向传播方案,以最大化超分辨率中的信息收集。尽管循环模型在时间信息收集方面具有很大的能力,但当 LR 视频在长时间范围内遇到显着退化时,仍然很难恢复局部细节。
超分辨率的扩散模型。扩散模型实现的图像合成令人印象深刻的性能 [7, 11, 16, 30, 34, 55] 鼓励在图像超分辨率上部署。这些探索[9,10,13,21,31,42,49,57]利用嵌入在预训练扩散模型中的知识先验来放大图像。例如,StableSR[46]在不改变预先训练的权重的情况下,将时间感知编码器集成到Stable-Diffusion[36]模型中,并取得了良好的效果。为了进一步增强图像纹理细节的重建,Yang等人[52]引入了一个基于注意力的控制模块来保持LR和HR图像之间的像素一致性。与优化一小部分插入参数的进展不同,几种方法[13,21,49]固定预训练合成模型中的所有权重,并尝试将约束合并到反向扩散过程中以指导图像恢复。尽管知识先验的有效性已在各种基于扩散的 ISR 方法中体现出来,但将扩散模型用于视频超分辨率并保持空间保真度和时间一致性仍然是一个重大挑战。
总之,我们的工作主要集中在视频超分辨率的扩散模型上。SanteCo 的提议不仅通过探索如何通过调制 HR 帧特征来保持空间保真度,而且还研究如何使用 LR 对应物校准 HR 视频特征以获得更好的时间特征对齐。
3. Our Approach
在本节中,我们将介绍我们新提出的SATeCo,在视频超分辨率的扩散模型中追求空间适应和时间相干性。图 2 描述了架构的概述。SanteCo 从视频升级器开始,以提高输入 LR 视频的分辨率。然后,将上采样的视频输入 VAE 编码器进行视频特征提取和潜在代码预测。之后,利用空间特征自适应(SFA)和时间特征对齐(TFA)模块学习LR视频潜在代码和特征的时空指导,校准潜在空间视频去噪和像素空间视频重建。因此,这两个模块被插入到 UNet 和 VAE 中解码器的每个块中。在视频潜在代码去噪过程中,SFA估计LR视频潜在代码上的仿射参数,以调制HR视频潜在代码的每个像素。TFA首先在 Tubelet 中的 HR 视频潜在代码上执行自注意力,并通过在 Tubelet 与其 LR 对应物之间执行交叉注意力进一步增强潜在代码。同样,在 VAE 解码器中进行 SFA 和 TFA,以使用 LR 视频特征指导 HR 视频重建。最后,SATeCo设计了一个视频细化器,通过参考上采样的视频来调整解码后的HR视频,以便在合成质量和保真度之间进行良好的权衡。
图2。我们的SATeCo体系结构的概述。输入LR视频XL首先通过基于变压器的视频升级器上采样到目标分辨率。然后,将上采样的视频Xu输入到VAE编码器中,提取视频特征和潜在代码Z。接下来,根据扩散调度器将高斯噪声添加到Z中,然后利用UNet恢复噪声视频潜码进行质量增强。在潜在空间中,潜在编码器在LR潜在代码Z上提取LR潜在特征图G,然后在UNet的每个解码器块中提取空间特征自适应(SFA)和时间特征对齐(TFA)模块进行时空引导学习。给定去噪的视频潜码Z0,VAE解码器根据SFA和TFA在LR视频特征上学习到的指导对视频Xd进行解码。最后,通过参考Xu得到最终的HR视频XH合成,通过视频细化器调整解码后的视频Xd。
3.1. Video Upscaler
大多数现有的VSR方法[39,51]首先通过重采样操作对输入LR视频进行升级,然后提高其视觉质量。然而,广泛采用的重采样操作,例如双线性采样和双三次采样,可能会破坏 LR 帧中的原始视觉模式 [39],从而对后续的视频增强产生负面影响。因此,我们利用神经网络特征学习[4]提前减少帧退化的方法,提出了一种视频升级器,通过扩散模型生成更准确的上采样视频,以实现以下质量增强。
给定输入 LR 视频 XL,我们利用基于转换器的视频升级器进行视频放大,如图 3(a) 所示。它由两个级联的时间相互自注意力 (TMSA) 块 [23] 组成,用于时间聚合视频特征,以及一个像素混洗层 [40],通过特征重塑来增加视频空间分辨率。然后将具有 L 帧的上采样视频 X u = { x u i } i = 1 L X_u = \{x^i_u\}^L_{i=1} Xu={xui}i=1L 输入到扩散模型中进行视频质量增强。
图 3. (a) 视频升级器的图示,(b) 视频细化器,( c ) 空间特征适应和 (d) 时间特征对齐模块。
3.2. Spatial Feature Adaptation Module
扩散模型的固有随机性[52]可能导致图像超分辨率中纹理细节的失真。采用扩散模型进行超分辨率的一种自然方法是通过基于卷积[46]或基于变压器的[52]结构来学习空间级条件,以指导UNet中的潜在代码去噪。这种机制只管理潜在空间中的特征正则化,发布难度来学习足够的归纳偏差,并为高分辨率图像恢复提供精确的指导。视频超分辨率也存在类似的问题。为了缓解这种情况,我们引入了一个空间特征自适应(SFA)模块,该模块从输入LR视频中动态学习像素引导进行扩散校准。同时,SFA模块强调了潜在空间视频去噪(即UNet的训练)和像素空间视频重建(即VAE的训练)的归纳偏差学习。
图3( c )说明了我们的SFA模块。给定上采样的 LR 视频 X u X_u Xu,VAE 编码器首先将 X u X_u Xu 编码为视频潜在代码 Z = { z i } i = 1 L Z = \{z^i \}^L_{i=1} Z={zi}i=1L。接下来,我们利用基于卷积的潜在编码器 ε z \varepsilon _z εz 来提取 LR 潜在特征图 G = ε z ( Z ) G = \varepsilon_z (Z) G=εz(Z),并进一步用于指导 UNet 解码器中的 HR 特征学习。形式上,我们将UNet中的HR中间特征图和潜在编码器中LR潜在特征图分别表示为 F = { f i } L i = 1 F = \{f^i\}L_{i=1} F={fi}Li=1和 G = { g i } L i = 1 G = \{g^i\}L_{i=1} G={gi}Li=1。对于第 i 帧,我们通过两个 2D 卷积层测量 HR 中间特征图 f i ∈ R H × W × C f^i ∈ R^{H×W ×C} fi∈RH×W×C 的每个像素的尺度比 S i ∈ R H × W × C S^i ∈ R^{H×W ×C} Si∈RH×W×C 和偏置 M i ∈ R H × W × C M^i ∈ R^{H×W ×C} Mi∈RH×W×C:
然后,通过对 S i S^i Si和 M i M^i Mi的归一化HR中间特征图 f ~ i \tilde f^i f~i调制,生成UNet中输出的HR特征 f ~ i \tilde f^i f~i为:
其中⊙表示逐点乘法。 μ i μ^i μi 和 σ i σ^i σi 是特征图 f i f^i fi 的均值和标准差值。因此,在LR视频的潜在特征图上估计的仿射参数在潜在代码去噪中校准HR视频的中间特征图,自适应地将像素级信息注入到视频潜在代码中,以保持视觉外观。对于像素空间中的视频特征学习,将SFA模块插入到VAE解码器的每个块中。同样,将LR视频提取的视频特征作为估计SFA模块中仿射参数的指导,调整HR视频特征学习进行视频重建。我们从SFA模块中获取所有调制的中间特征映射 f ~ i \tilde f^i f~i为 F ~ i = { f i } i = 1 L \tilde F^i = \{f^i\}^L_{i=1} F~i={fi}i=1L,用于UNet和VAE解码器中的以下时间特征对齐。
3.3. Temporal Feature Alignment Module
用于视频超分辨率的帧明智导电ISR模型可以放大跨帧模糊模式[39]的差异,导致物体形状变形等内容不一致。该问题仅仅依靠空间级超分辨率,缺乏跨帧的时间相干建模。为了便于视频超分辨率中的视觉内容对齐,在UNet和VAE解码器中每个SFA模块之后设计了一个时间特征对齐(TFA)模块,用于时间特征交互和校准。
图 3(d) 描述了 TFA 模块的学习过程。给定UNet解码器中SFA模块的输入HR中间特征 F ~ = { f i } i = 1 L \tilde F = \{f^i\}^L_{i=1} F~={fi}i=1L,我们首先将每一帧的特征映 f ~ i \tilde f^i f~i划分为N个不重叠的窗口,空间分辨率为h × w。 N = H W h w N = \frac{HW}{hw} N=hwHW 是总窗口数。然后,我们将 L 帧局部窗口中的所有特征连接起来,形成一个 HR 特征 Tubelet F ~ t u b ∈ R L × h × w × C \tilde F_{tub} ∈ R^{L×h×w×C} F~tub∈RL×h×w×C。我们将每个 HR 特征 Tubelet 的维度重塑为 hwL × C 并在其上执行标准的自注意力:
其中 Q 、 K 、 V ∈ R h w L × C Q、K、V ∈ R^{hwL×C} Q、K、V∈RhwL×C 分别是查询矩阵、键和值矩阵。它们中的每一个都由 3D 卷积层预测。在 HR 特征 Tubelet 上进行的自注意力可以跨不同帧进行特征交互,减轻局部区域的时间特征错位。为了进一步进行时间特征校准,我们利用 HR 特征 Tubelet 的对应,即 LR 潜在特征图的特征 Tubelet Gtub 作为特征调整的参考。我们在 F ^ t u b \hat F_{tub} F^tub 和 G t u b G_{tub} Gtub 之间执行交叉注意力以获得输出特征 Tubelet F ‾ t u b \overline F_{tub} Ftub:
其中查询 Q’ 在 HR 特征 Tubelet F ^ t u b \hat F_{tub} F^tub 上学习,键/值 K’/V ’ 分别通过 3D 卷积层在 LR 对应物上估计。我们从 TFA 模块中收集所有输出特征小管,并将它们重塑为原始大小,如 F ‾ ∈ R L × H × W × C \overline F ∈ R^{L×H×W ×C} F∈RL×H×W×C。然后将输出特征 ̄F 输入 UNet 或 VAE 中解码器的下一个块以进行视频潜在去噪或重建。
通过这种方式,UNet 和 VAE 解码器中的耦合 SFA 和 TFA 模块不仅强调用于视觉外观保存的像素特征适应,而且还加强了时间特征交互和校准以进行时间相干建模。
3.4. Video Refiner
最近的进步 [8] 表明,通过以视觉内容为条件的扩散模型合成的图像可能会丢失局部区域中的一些原始颜色信息。为了解决这个问题,Stabler [46] 执行非参数后处理器来细化生成,参考原始输入以实现颜色保存。相反,我们提出了一种可训练的视频细化器,通过利用上采样 LR 视频的信息来强调来自 VAE 解码器解码 HR 视频的调整。
图 3(b) 详细说明了我们的视频细化器的结构。我们首先沿通道维度连接解码的视频 X d X_d Xd 和上采样的 LR 视频 X u X_u Xu,然后将其馈送到残差块中。通过融合 X u X_u Xu、 X d X_d Xd和残差块的输出特征映射来生成精化的HR视频 X H X_H XH:
其中 w 是权衡参数。所设计的视频细化器通过特征融合学习平衡了上采样LR视频的原始视觉内容和解码后的HR视频的合成内容。因此,我们的设计在颜色保存方面更强大,并且在合成质量和保真度之间取得了良好的平衡。
3.5. Training Strategy
我们基于稳定扩散[36]模型构建了用于视频超分辨率的SATeCo。有四个训练阶段来优化整个架构。在第一阶段,我们使用Charbonnier损失[5]训练视频升级器来优化HR视频的视频重建。之后,我们遵循 [36] 中的标准设置来训练 UNet 以优化插入的 SFA 和 TFA 模块。我们修复了 UNet 的所有参数,除了训练期间的两种模块。对于 VAE 解码器中 SFA 和 TFA 模块的优化,我们将 HR 视频的视频潜在代码作为输入,并优化解码视频和真实 HR 视频之间的相似性。最后,我们冻结视频升级器、UNet 和 VAE 中的所有参数,并使用解码和真实 HR 视频对训练视频细化器。
4. Experiments
4.1. Experimental Settings
数据集。我们在两个广泛使用的数据集上凭经验评估了我们的 SCECo 的有效性:REDS [33] 和 Vid4 [25]。REDS 数据集由 240、30 和 30 个视频剪辑组成,用于训练、验证和测试。每个视频剪辑包含100帧,分辨率为1,280 × 720。我们采用[2,3,48]中的标准协议,从验证集中选择四个视频片段作为测试数据,即REDS4。Vid4数据集还包括四个视频片段,每个片段大约有40帧,分辨率为720 × 480。按照标准设置[3,23],我们使用Vid4中的所有视频进行评估,并选择Vimeo-90K[51]训练集中的视频数据进行模型优化。有 64、612 个训练片段,每个片段有 7 帧,分辨率为 448 × 256。
实施细节。我们使用 Diffusers [44] 库在 PyTorch 平台上实现我们的 SCECo。噪声调度器设置为线性调度器( β 1 = 0.00085 , β T = 0.0120 , T = 1 , 000 β_1 = 0.00085,β_T = 0.0120,T = 1, 000 β1=0.00085,βT=0.0120,T=1,000)。通过交叉验证确定获胜视频细化器的权衡参数为 0.5。我们根据经验将TFA中的窗口大小设置为h = 8, w = 8。输入剪辑的帧号L为6。该模型使用AdamW优化器进行训练,学习率为 5.0 × 1 0 − 5 5.0 × 10^{−5} 5.0×10−5。
评估指标。我们通过两种指标(即基于像素和基于感知的指标)评估 VSR 模型。基于像素的指标包括 PSNR 和 SSIM,用于计算生成的 HR 视频和真实 HR 视频之间每个像素的相似度。还有一些基于感知的超分辨率评估指标。这些指标主要从人类感知偏好的角度测量视频质量,本文采用LPIPS[56]、DISTS[12]、NIQE[32]和CLIP-IQA[45]。具体来说,LPIPS利用VGG[41]模型提取帧特征,并测量合成视频和地面真实视频之间的特征相似度。DISTS 还通过 VGG 模型的变体计算视频对之间的特征相似度,但重点是图像纹理。对于 NIQE 和 CLIP-IQA,分数由学习模型直接预测,而不使用真实 HR 视频。NIQE通过CLIP模型[35]测量合成帧和真实图像集[32]之间的特征分布的相似性,而CLIP-IQA通过CLIP模型[35]计算生成的帧和文本提示(如“高分辨率”)之间的余弦相似度。此外,我们进行了一项用户研究,以验证人类对不同模型的偏好。
4.2. Comparisons with State-of-the-Art Methods
我们在REDS4和Vid4数据集上将我们的SATeCo与几种最先进的技术进行了比较,包括双三次内插、StableSR[46]、TOFlow[51]、EDVR-M[48]、BasicVSR[2]、VRT[23]和IconVSR[2]。
定量评估。表 1 总结了不同 VSR 方法在两个数据集的六个指标方面的性能。总体而言,SATeCo 在 REDS4 上在所有基于感知的指标(即 LPIPS、DISTS、NIQE 和 CLIP-IQA)中取得了最佳性能。这些指标强调了人类感知方面的质量判断,结果证明了在预训练的扩散模型中利用丰富的知识先验来生成具有更好的视觉感知的高质量 HR 视频的优势。在基于像素的指标方面,最近的进展[46,52]表明,扩散模型的随机性可能会损害HR视频中视觉外观的保存,导致性能低于传统的回归模型。我们的SATeCo通过利用LR视频的像素级指导来调节HR帧特征合成,缓解了缺点,获得了31.62dB的PSNR。值得注意的是,这种性能与IconVSR[2]非常相似,IconVSR模型是回归VSR模型的SOTA基线。Vid4的性能趋势与REDS4相似。特别是,SATeCo达到了0.1015的DISTS,相对将最佳竞争对手VRT[23]的DISTS降低了26.0%。结果表明,SATeCo受益于学习扩散中的像素级空间自适应,以保留帧图像纹理,以实现更好的视频保真度。
表1。REDS4和Vid4数据集上基于像素的(PSNR和SSIM)和基于感知(LPIPS、DISTS、NIQE和CLIP-IQA)评估指标的性能比较。LR视频的宽度和高度通过不同的VSR方法重新缩放4倍。我们遵循VRT[23]将每个片段中的帧数设置为6,用于HR视频推理。
定性评估。图 4 用 REDS4 和 Vid4 中的六个示例可视化了视频超分辨率。与其他基线相比,SATeCo 可以成功地恢复更多局部细节(例如,eave 中的锐利边缘和第二个和第三个案例的辐条)在高保真的帧中。即使模糊较大(例如,第 4 个案例),SATeCo 仍然表现出视频超分辨率的强恢复能力,这再次证实了利用扩散模型的丰富知识先验和学习空间适应的有效性。为了进一步验证SATeCo学习到的时间一致性,我们使用图5中不同的基于扩散的超分辨率方法可视化了两个合成HR视频的两个相邻帧。如图所示,LDM和StableSR在两帧之间合成不同的视觉内容,例如建筑中的小窗口。相比之下,我们的 SCECo 预测具有更高帧一致性的 HR 视频并保留视觉保真度。这基本上验证了在 HR 视频中执行基于 Tubelet 的自注意力和 HR 视频和 LR 对应物之间的交叉注意力的优点,以实现更好的时间特征交互和校准。
图4。REDS4和Vid4数据集上不同方法的6个视频超分辨率结果的可视化示例。红色框中的区域显示在放大视图中进行比较。
图5。Vid4数据集中两个视频的视频超分辨率结果。两个相邻帧(即红色和蓝色框突出显示的区域)中相同局部位置的区域被放大以显示更多细节。
人工评估。接下来,我们进一步进行人体研究,通过使用不同的VSR方法对用户偏好来验证HR视频生成质量。我们在 Amazon MTurk 平台上邀请 100 名评估者,并要求每个评估者从两种不同方法生成的两个合成 HR 视频中选择更好的一个,给定相同的 LR 视频。图 6 描述了 REDS4 和 Vid4 数据集中所有八个视频的用户偏好比率。SanteCo清楚地赢得了IconVSR、BasicVSR和VRT的传统回归模型,以及StableSR的扩散模型。结果表明,通过视频扩散过程中的空间特征自适应和时间特征对齐设计,SATeCo很好地放大了视觉质量和时间相干性更好的LR视频。
图6。在REDS4和Vid4上对SATeCo与其他基线之间的用户偏好比进行人工评估。
4.3. Model Analysis
SFA和TFA模块分析。我们首先研究了SFA和TFA模块如何影响视频超分辨率的整体性能。表 2 列出了具有不同 SFA 和 TFA 模块集成方式的变体之间的性能比较。我们从基本的扩散模型 A 开始,它利用 UNet/VAE 中的零初始化卷积 [55] 从 LR 视频中学习空间引导以进行超分辨率。模型 B 和 C 通过将 SFA 和 TFA 模块插入 UNet 逐渐升级基本模型 A,这将 PSNR 从 28.56dB 提高到 29.45dB。与简单地对LR帧特征和HR帧进行加权求和的零初始化卷积来指导空间级扩散学习相比,SFA和TFA的结合不仅通过特征调制增强了空间自适应,而且增强了基于小管的注意力的时间特征对齐。因此,模型 C 获得了更高的 PSNR 和 SSIM 来衡量空间保真度。最后,通过进一步利用VAE中的SFA和TFA来调节像素空间视频重建,模型D,即我们的SATeCo,在PSNR和SSIM中表现出了最好的性能。鉴于基于感知的评估指标,SATeCo 也不断获得对其他变体的改进,这表明时空引导学习在 HR 视频中增强视觉感知的潜在好处。此外,图 7 展示了两个相邻帧中一个示例局部区域的视频超分辨率。SanteCo重建具有高质量视觉外观的HR视频,相邻帧之间具有良好的时间一致性,证明了探索特征适应和对齐对超分辨率扩散的影响。
表 2. SFA 和 TFA 模块不同集成的变体中 REDS4 的性能比较。
图7所示。SATeCo变体合成的一个视频超分辨率结果中两个相邻帧的放大视图。
视频升级器分析。然后,我们研究了 SATECo 中视频升级器的有效性。一种替代方法是使用预先训练的Pixel Shuffle层[40]作为视频升级器。表3的上半部分详细说明了两种方法在REDS4上的性能。我们的方法在所有评估指标上都优于PixelShuffle,特别是在PSNR和SSIM方面。从技术上讲,PixelShuffle通过直接在输入帧上执行2D卷积层来重新采样视频。相反,我们通过时间相互自我注意深入研究了帧相关公式,这在视频重采样的像素特征增强中更有效。因此,我们的方法有效地保留了LR视频中的视觉内容,促进了后续的视频扩散。
表3。SATeCo中视频升级器和视频细化器设计的消融研究。性能报告在 REDS4 上。
视频细化器分析。SAFECo 中的视频细化器旨在通过参考上采样的原始 LR 视频来调整来自扩散模型的解码 HR 视频,以减轻颜色退化。视频细化器的权衡参数 w 平衡了解码视频和 LR 视频之间视觉内容的影响。为了评估参数 w 的影响,我们在表 3 的下半部分通过改变 w 来列出 VSR 性能。当 wis 0 时,基于感知的指标的性能是最好的,但 PSNR 和 SSIM 的性能略有下降。性能表明,扩散模型合成的视觉内容更容易被人类视觉系统接受。相比之下,使用较大的 w 值(例如 1.0)进行视频细化会更多地考虑 LR 视频的信息,削弱扩散模型的贡献,影响视觉内容生成的质量。因此,我们根据经验将 w 设置为 0.5,以在合成内容和原始视觉外观之间寻求良好的权衡。
5. Conclusions
我们提出了SATeCo,它探索了视频超分辨率扩散模型中的空间适应和时间相干性。特别是,我们研究了从低分辨率视频中学习时空指导的问题,以校准高分辨率视频扩散过程。为了具体化这个想法,SATeCo 冻结了预训练的 UNet/VAE 中的所有参数,并在每个解码器块中插入空间特征适应 (SFA) 和时间特征对齐 (TFA) 模块来调节潜在空间视频去噪和像素空间视频重建。通过在低分辨率视频的指导下学习仿射参数,SFA调节每个像素的高分辨率特征,实现空间自适应。TFA 在 Tubelet 中执行自注意力以增强特征交互,并进一步在 Tubelet 与其低分辨率对应物之间进行交叉注意力以指导时间特征对齐学习。在两个视频数据集(如REDS4和Vid4)上进行的实验验证了所提出的SATeCo在空间保真度和时间一致性方面对视频超分辨率的有效性。
相关文章:
学习视频超分辨率扩散模型中的空间适应和时间相干性(原文翻译)
文章目录 摘要1. Introduction2. Related Work3. Our Approach3.1. Video Upscaler3.2. Spatial Feature Adaptation Module3.3. Temporal Feature Alignment Module3.4. Video Refiner3.5. Training Strategy 4. Experiments4.1. Experimental Settings4.2. Comparisons with …...
MFC工控项目实例三十四模拟量实时监控数字显示效果
点击监控按钮,对选中模拟量用数字显示效果实时显示数值。 SenSet.cpp中相关代码 UINT m_nCounterID_1[6] { IDC_STATIC0,IDC_STATIC1,IDC_STATIC2,IDC_STATIC3,IDC_STATIC4,IDC_STATIC5,};UINT m_nCounterID_2[7] { IDC_STATIC7,IDC_STATIC8,IDC_STATIC9,IDC_S…...
Z2400032基于Java+Mysql+SSM的校园在线点餐系统的设计与实现 代码 论文
在线点餐系统 1.项目描述2. 技术栈3. 项目结构后端前端 4. 功能模块5. 项目实现步骤注意事项 6.界面展示7.源码获取 1.项目描述 本项目旨在开发一个校园在线点餐系统,通过前后端分离的方式,为在校学生提供便捷的餐厅点餐服务,同时方便餐厅和…...
Linux Deploy安装Debian桌面
下载安装Linux Deploy 下载地址 https://github.com/lateautumn233/Linuxdeploy-Pro/releases/download/3.1.0/app-debug.apk 配置 发行版本:Debian架构:arm64发行版版本:bookworm源地址:http://mirrors.aliyun.com/debian/安装…...
C语言数据相关知识:静态数据、越界与溢出
1、静态数组 在 C 语言中,数组一旦被定义后,占用的内存空间就是固定的,容量就是不可改变的,既不能在任何位置插入元素,也不能在任何位置删除元素,只能读取和修改元素,我们将这样的数组称为静态…...
纯Go语言开发人脸检测、瞳孔/眼睛定位与面部特征检测插件-助力GoFly快速开发框架
前言 开发纯go插件的原因是因为目前 Go 生态系统中几乎所有现有的人脸检测解决方案都是纯粹绑定到一些 C/C 库,如 OpenCV 或 dlib,但通过 cgo 调用 C 程序会引入巨大的延迟,并在性能方面产生显著的权衡。…...
华为ACL应用笔记
1、基本ACL 2000-2999 基本ACL(Access Control List,访问控制列表)是一种网络安全技术,它根据源IP地址、分片信息和生效时间段等信息来定义规则,对报文进行过滤。 规则: ACL由一系列规则组成,每…...
Axios:现代JavaScript HTTP客户端
在当今的Web开发中,与后端服务进行数据交换是必不可少的。Axios是一个基于Promise的HTTP客户端,用于浏览器和node.js,它提供了一个简单的API来执行HTTP请求。本文将介绍Axios的基本概念、优势、安装方法、基本用法以及如何使用Axios下载文件。…...
Qml-TabBar类使用
Qml-TabBar类使用 TabBar的概述 TabBar继承于Container 由TabButton进行填充,可以与提供currentIndex属性的任何容器或布局控件一起使用,如StackLayout 或 SwipeView;contentHeight : real:TabBar的内容高度,用于计算标签栏的隐…...
qt QGraphicsEllipseItem详解
1、概述 QGraphicsEllipseItem是Qt框架中QGraphicsItem的一个子类,它提供了一个可以添加到QGraphicsScene中的椭圆项。QGraphicsEllipseItem表示一个带有填充和轮廓的椭圆,也可以用于表示椭圆段(通过startAngle()和spanAngle()方法ÿ…...
单链表---移除链表元素
对于无头单向不循环链表,给出头结点head与数值val,删除链表中数据值val的所有结点 #define ListNodeDataType val struct ListNode { struct ListNode* psll;ListNodeDataType val; } 方法一---遍历删除 移除所有数值为val的链表结点,…...
Kafka知识体系
一、认识Kafka 1. kafka适用场景 消息系统:kafka不仅具备传统的系统解耦、流量削峰、缓冲、异步通信、可扩展性、可恢复性等功能,还有其他消息系统难以实现的消息顺序消费及消息回溯功能。 存储系统:kafka把消息持久化到磁盘上,…...
Micopython与旋转按钮(Encoder)
一、 encoder.py文件 CLK pin attached to GPIO12DT pin attached to GPIO13GND pin attached to GND 旋转编码器s1->CLK s2->DTimport time from rotary_irq_esp import RotaryIRQ r = RotaryIRQ(pin_num_clk=12, #clk引脚 pin_num_dt=13, #dat…...
联想Lenovo SR650服务器硬件监控指标解读
随着企业IT架构的复杂性和业务需求的增长,服务器的稳定运行变得至关重要。联想Lenovo SR650服务器以其高性能和稳定性,在各类应用场景中发挥着关键作用。为了保障服务器的稳定运行,监控易作为一款专业的IT基础设施监控软件,为联想…...
RAG数据拆分之PDF
引言RAG数据简介PDF解析方法及工具代码实现总结 二、正文内容 引言 本文将介绍如何将RAG数据拆分至PDF格式,并探讨PDF解析的方法和工具,最后提供代码示例。 RAG数据简介 RAG(关系型属性图)是一种用于表示实体及其关系的图数据…...
基于STM32的传感器数据采集系统设计:Qt、RS485、Modbus Rtu协议(代码示例)
一、项目概述 项目目标与用途 本项目旨在设计并实现一个基于STM32F103RCT6微控制器的传感器数据采集系统。该系统通过多个传感器实时监测环境参数,并将采集到的数据传输至上位机进行处理和分析。系统的主要应用领域包括环境监测、工业控制、智能家居等。通过该系统…...
【计网不挂科】计算机网络——<34道经典简述题>特训
前言 大家好吖,欢迎来到 YY 滴计算机网络 系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 本博客主要内容,收纳了一部门基本的计算机网络题目,供yy应对期中考试复习。大家可以参考 本章为分章节的习题内容题库&#x…...
Spring Web开发(请求)获取JOSN对象| 获取数据(Header)
大家好,我叫小帅今天我们来继续Spring Boot的内容。 文章目录 1. 获取JSON对象2. 获取URL中参数PathVariable3.上传⽂件RequestPart3. 获取Cookie/Session3.1 获取和设置Cookie3.1.1传统获取Cookie3.1.2简洁获取Cookie 3. 2 获取和存储Session3.2.1获取Session&…...
算法训练营day22(二叉树08:二叉搜索树的最近公共祖先,插入,删除)
第六章 二叉树part08 今日内容: ● 235. 二叉搜索树的最近公共祖先 ● 701.二叉搜索树中的插入操作 ● 450.删除二叉搜索树中的节点 详细布置 235. 二叉搜索树的最近公共祖先 相对于 二叉树的最近公共祖先 本题就简单一些了,因为 可以利用二叉搜索树的…...
【论文阅读】 Learning to Upsample by Learning to Sample
论文结构目录 一、之前的上采样器二、DySample概述三、不同上采样器比较四、整体架构五、设计过程(1)初步设计(2)第一次修改(3)第二次修改(4)第三次修改 六、DySample四种变体七、复…...
Android 图形系统之五:Gralloc
Gralloc (Graphics Allocator) 是 Android 系统中的关键组件之一,用于管理图形缓冲区的分配、映射以及处理。在 Android 的图形架构中,Gralloc 充当了 HAL (Hardware Abstraction Layer) 的一部分,为系统和硬件提供了通用的接口,使…...
【大数据学习 | Spark调优篇】Spark之内存调优
1. 内存的花费 1)每个Java对象,都有一个对象头,会占用16个字节,主要是包括了一些对象的元信息,比如指向它的类的指针。如果一个对象本身很小,比如就包括了一个int类型的field,那么它的对象头实…...
Spring Data JPA(一) 基础入门
Spring Data JPA(一) 基础入门 JPA 的全称是 Java Persistence API , 即 Java 持久层 API。Spring Data JPA 是 Spring 生态中提出的一套数据库 ORM (对象关系映射)规范、抽象标准,或者说它是对ORM框架实现的顶层抽象…...
Flutter | 基于函数式编程的通用单选列表设计
背景 项目中多次用到如下图的通用单选列表页: 常规封装 此列表需要三样东西: 标题数组当前选中项的 index点击 cell 的回调 封装大体如下: import package:flutter/material.dart;class ListPage1 extends StatefulWidget {const ListPa…...
华三防火墙F1000-AK系列策略路由配置案例(WEB)
1 配置需求或说明 1.1 适用的产品系列 本案例适用于如F1000-AK180、F1000-AK170等F1000-AK系列的防火墙。 1.2 配置需求及实现的效果 防火墙作为网络出口设备,外网有移动和联通两条线路。内网有192.168.1.0和192.168.2.0两个网段,需要实现192.168.1.0网段走移动线路,192…...
Oracle 锁表的解决方法及避免锁表问题的最佳实践
背景介绍 在 Oracle 数据库中,锁表或锁超时相信大家都不陌生,是一个常见的问题,尤其是在执行 DML(数据操作语言)语句时。当一个会话对表或行进行锁定但未提交事务时,其他会话可能会因为等待锁资源而出现超…...
深度学习中的生成对抗网络(GAN)原理与应用
引言 生成对抗网络(Generative Adversarial Network,简称GAN)是由Ian Goodfellow等人在2014年提出的一种深度学习模型,它通过对抗训练的方式生成与真实数据分布相似的假数据。GAN的出现极大地推动了深度学习和生成模型的研究&…...
Swing中JScrollPane面板
一、介绍 在设置界面时,可能会遇到在一个较小的容器窗体中显示一个较大部分的内容的情况,这时可使用JScrollPane面板。JScrollPane面板是带滚动条的面板,是一种容器,但是JScrollPane只能放置一个组件,并且不可使用布局…...
【学习笔记】检测基于RTOS的设计中的堆栈溢出-第2部分
有许多技术可用于检测堆栈溢出。有些使用硬件,而有些则完全在软件中执行。正如我们很快将看到的那样,在硬件中具有这种能力到目前为止是更可取的,因为堆栈溢出可以在发生时立即检测到,事实上,可以避免,因为硬件实际上可以防止对无效访问的写入。 硬件堆栈溢出检测机制通…...
PHP 函数
在php中有非常多的函数,函数这种东西不需要记全,直到怎么使用就行了,如果想了解多点函数,可以查看php官方函数手册,或者参考菜鸟PHP 5 Array 函数 | 菜鸟教程。 创建 PHP 函数 通常函数创建完毕后是用来调用。 语法格…...
centos更换源文件,换源,替换源
期初怎么折腾就是不行,换了源也是不能使用的,最后发现不是换的源不行,而是之前的源文件不行,然后给所有的源文件在yum源统一放在了bak目录下,随后我们再去下载安装源文件。 您将yum源下载之后,先将您的其他…...
【深度学习】四大图像分类网络之VGGNet
2014年,牛津大学计算机视觉组(Visual Geometry Group)和Google DeepMind公司一起研发了新的卷积神经网络,并命名为VGGNet。VGGNet是比AlexNet更深的深度卷积神经网络,该模型获得了2014年ILSVRC竞赛的第二名,…...
线性表-链式描述(C++)
链式实现的线性表: 链式实现的线性表,即链表(Linked List),是一种通过节点(Node)的集合来存储数据的线性数据结构。在链表中,每个节点包含两部分:存储数据的域ÿ…...
C++高阶算法[汇总]
(一)高精度算法概述 高精度算法是指能够处理超出常规数据类型表示范围的数值的算法。在 C 中,标准数据类型通常有固定的位数和精度限制,而高精度算法可以解决大数运算、金融计算和科学计算等领域的问题。 (二&#x…...
机器学习之DeepMind推出的DreamerV3
开放域任务强化学习(Open-Ended Task Reinforcement Learning)的目标是使智能体能够在多样化且未见过的任务中表现出色,同时能够实现任务间的迁移学习。这类研究的重点在于开发通用的学习算法,能够在没有明确任务定义的情况下,从环境中学习并推广到新任务。DeepMind的Drea…...
【Zookeeper】四,Zookeeper节点类型、通知、仲裁、会话
文章目录 Zookeeper的架构znode的版本Zookeeper的节点类型层级树状结构znode的不同类型 Zookeeper监视与通知通知的类型 Zookeeper的仲裁Zk的会话会话的生命周期 Zookeeper的架构 Zookeeper的服务器端运行两种模式:独立模式(standalone)和仲…...
Vue 集成和使用 SQLite 的完整指东
1. 引言 SQLite 是一种轻量级的关系型数据库管理系统,以其简单易用、无需服务器等特点广泛应用于嵌入式系统、移动应用和小型应用程序中。在 Web 开发中,尤其是前端应用开发中,SQLite 可以作为客户端本地存储的一种选择,为用户提…...
CMAKE常用命令详解
NDK List基本用法 Get–获取列表中指定索引的元素 list(Get list_name index output_var)解释 list_name: 要操作集合的名称index: 要取得的元素下标output_var: 保存从集合中取得元素的结果 栗子 list(GET mylist 0 first_element) # 获取第一个元素APPEND–在列表末尾…...
【嵌入式——QT】QT制作安装包
第一步 QT程序写好之后,编译release版本 第二步 拿到release生成的.exe文件 第三步 新建文件夹deploy 第四步 将.exe文件复制到deploy目录下 第五步 在该目录下输入cmd指令,回车 第六步 在打开的命令窗口下输入 windeployqt TegNetCom_1.0.…...
JavaScript 前端开发:从入门到精通的奇幻之旅
目录 一、引言 二、JavaScript 基础 (一)变量与数据类型 (二)运算符 (三)控制结构 三、函数 (一)函数定义与调用 (二)函数作用域 (三&am…...
shell编程基础笔记
目录 echo改字体颜色和字体背景颜色 bash基本功能: 运行方式:推荐使用第二种方法 变量类型 字符串处理: 条件判断:(使用echo $?来判断条件结果,0为true,1为false) 条件语句&a…...
FPGA实现GTP光口视频转USB3.0传输,基于FT601+Aurora 8b/10b编解码架构,提供3套工程源码和技术支持
目录 1、前言工程概述免责声明 2、相关方案推荐我已有的所有工程源码总目录----方便你快速找到自己喜欢的项目我这里已有的 GT 高速接口解决方案本博已有的FPGA驱动USB通信方案 3、工程详细设计方案工程设计原理框图输入Sensor之-->OV5640摄像头输入Sensor之-->芯片解码的…...
使用 PDF API 合并 PDF 文件
内容来源: 如何在 Mac 上合并 PDF 文件 1. 注册与认证 您可以注册一个免费的 ComPDFKit API 帐户,该帐户允许您在 30 天内免费无限制地处理 1,000 多个文档。 ComPDFKit API 使用 JSON Web Tokens 方法进行安全身份验证。从控制面板获取您的公钥和密钥&…...
Jenkins Nginx Vue项目自动化部署
目录 一、环境准备 1.1 Jenkins搭建 1.2 NVM和Nodejs安装 1.3 Nginx安装 二、Jenkins配置 2.1 相关插件安装 2.2 全局工具安装 2.3 环境变量配置 2.4 邮箱配置(构建后发送邮件) 2.5 任务配置 三、Nginx配置 3.1 配置路由转发 四、部署项目 …...
python代码实现问卷星问卷内容获取并写入word文档保存
以下附完整代码。 import os from tkinter import Tk, simpledialog, messagebox from docx import Document import time import requests import re from tkinter import ttk# 使用 tkinter 创建一个简单的输入框来获取用户输入的问卷链接 root Tk() root.title("问卷…...
C# 2024年Visual Studio实用插件集合
在2024年,Visual Studio作为.NET开发者的首选IDE,其插件生态不断壮大,为开发者提供了更高效、便捷的开发体验。本文将介绍一些实用的Visual Studio插件,特别是针对C#开发者,帮助提升开发效率和代码质量。 1. GitHub C…...
基于PHP的香水销售系统的设计与实现
摘 要 时代科技高速发展的背后,也带动了经济的增加,人们对生活质量的要求也不断提高。香水作为一款在人际交往过程中,给对方留下良好地第一印象的产品,在生活中也可以独自享受其为生活带来的点缀。目前香水市场体量庞大ÿ…...
QT去除窗口边框(无边框)
ch21_TencentMeetingLogin::ch21_TencentMeetingLogin(QWidget *parent): QDialog(parent) {ui.setupUi(this);this->setWindowFlags(Qt::FramelessWindowHint);//去除窗口边框 } 但此时窗口不能拖动且点击任务栏程序图标不能最小化! this->setWindowFlags(Q…...
【k8s】监控metrics-server
metrics-server介绍 Metrics Server是一个集群范围的资源使用情况的数据聚合器。作为一个应用部署在集群中。Metric server从每个节点上KubeletAPI收集指标,通过Kubernetes聚合器注册在Master APIServer中。为集群提供Node、Pods资源利用率指标。 就像Linux 系统一样…...
「Qt Widget中文示例指南」如何为窗口实现流程布局?(二)
Qt 是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。如今,Qt已被运用于超过70个行业、数千家企业,支持数百万设备及应用。 本文将展示如何为不…...