作者单位:西交、字节智能创造实验室、南理工
论文链接:https://arxiv.org/pdf/2207.08674.pdf
代码链接:https://github.com/HYHsimon/Boosted-VSR
编者言:现有的VSR算法都没有讨论来自静止目标和背景的时间冗余的影响。时间冗余会给信息传播带来不利影响,这限制了现有的VSR的性能。本文通过优化的方式处理时间冗余补丁来改进现有的VSR算法,开发了两种简单有效的即插即用方法,改善了现有的滑窗和循环的VSR算法。
动机
VSR的相邻帧包含静止物体、背景等相似内容(时间冗余)。如果这些时间冗余内容主导了传播过程,由于没有从时间域引入额外的有用信息,将不利于重建。然而,现有的大多数方法都是利用相邻帧的所有信息而不加区分,这会引入时间冗余。如下图所示,通过利用相邻补丁的时间信息,两种网络在动态补丁中都能取得更好的效果。由于存在时间冗余内容,在目标和背景静止的补丁中,单帧算法的性能优于VSR网络,这表明时间冗余可能会对VSR产生不利影响。
本文尝试以优化的方式来处理补丁。动机来源于两个观察:时间冗余内容在不同类型的视频上具有通用性,SISR更适合处理具有时间冗余内容的补丁。本文提出了一种拥有时间冗余检测模块的基于局部传播的方法,并部署到EDVR中(Boosted EDVR);由于邻近帧的时间冗余会消除较远帧的时间信息,补丁中的时间冗余会阻碍隐藏状态的传播。本文提出了一种基于补丁的动态传播策略,它可以以补丁的方式直接传播长时间信息,该传播方案被应用到BasicVSR中(Boosted BasicVSR)。
此外,本文还收集了一个新的测试集,如下图,以全面评估VSR的性能和鲁棒性。此数据集适合于评估时间冗余的重要性,并可以丰富现有数据集的视频类型。
方法
时间冗余的观察
观察一: 在广泛使用的公共视频中,时间冗余内容是普遍存在的
为方便起见,将具有静止物体和背景的补丁序列记为A类序列,将动态补丁序列记为B类序列。本文对验证集的切片补丁进行统计分析。在相邻五帧中,有69.92%的补丁序列是A类的,相邻11帧中仍有64.79%的补丁序列是A类的。这表明,A类序列在广泛使用的公共视频中是普遍存在的。
观察二: SISR更适合处理A类序列
本文使用 EDVR-1f 和原始 EDVR(EDVR-5f)对验证集中的所有A类和B类序列进行超分。如下表,虽然EDVR-5f在B类序列上取得了更好的结果,但SISR方法(EDVR-1f)在A类序列上的性能优于EDVR-5f,且计算成本更低。因此可以得出SISR更适合处理具有时间冗余的补丁。
观察三: 时间冗余补丁会阻碍非局部传播VSR网络的传播
本文从REDS数据集中选取四个视频,为了模拟A类序列并引入时间冗余,从每个视频中随机选取10帧并进行1~5次的复制,并用BasicVSR对齐进行超分(REDS训练的和Vimeo训练的)。如下图,性能都随着时间冗余帧长度的增加而下降,这说明时间冗余会阻碍循环VSR网络信息的传播,带来负面影响。
Boosted EDVR
Boosted EDVR 由两个模块组成:时间冗余检测模块(TRDM)和自适应超分辨率模块(ASRM),如下图。
首先将输入的5帧LR相邻帧分解为N个重叠的补丁序列
]
{
x
[
t
−
2
:
t
+
2
]
i
}
i
=
1
N
]\{x^i_{[t-2:t+2]}\}^N_{i=1}
]{x[t−2:t+2]i}i=1N。然后将分解后的每个补丁序列送入TRDM,根据其在相邻补丁之间的运动状态分配一个运动标签
L
j
i
,
j
∈
{
1
,
3
,
5
}
L^i_j, j\in\{1,3,5\}
Lji,j∈{1,3,5}。然后将所有具有相同标签的补丁集在 Batch 维度上进行叠加,并在ASRM中使用最优EDVR模型进行超分。最后,我们将所有的超分补丁
{
y
t
i
}
i
=
1
N
\{y^i_t\}^N_{i=1}
{yti}i=1N进行组合,得到最终的SR结果
Y
t
Y_t
Yt。
本文使用光流的均值来表示两个补丁之间的运动状态,表示为:
m
−
1
→
0
i
=
m
e
a
n
(
∣
f
(
x
t
−
1
i
,
x
t
i
)
∣
)
m^i_{-1\to0}=mean(|f(x^i_{t-1},x^i_t)|)
m−1→0i=mean(∣f(xt−1i,xti)∣)其中
f
f
f是光流估计器,
m
−
1
→
0
i
m^i_{-1\to0}
m−1→0i为补丁序列
i
i
i中参考帧
x
t
i
x^i_t
xti和相邻帧
x
t
−
1
i
x^i_{t-1}
xt−1i的运动状态。然后,根据运动状态来分配运动标签:
L
j
i
=
{
L
1
i
if
m
−
1
→
0
i
<
γ
and
m
1
→
0
i
<
γ
L
3
i
elif
m
−
2
→
−
1
i
<
γ
and
m
2
→
1
i
<
γ
L
5
i
otherwise
L_{j}^{i}= \begin{cases}L_{1}^{i} & \text { if } m_{-1 \rightarrow 0}^{i}<\gamma \text { and } m_{1 \rightarrow 0}^{i}<\gamma \\ L_{3}^{i} & \text { elif } m_{-2 \rightarrow-1}^{i}<\gamma \text { and } m_{2 \rightarrow 1}^{i}<\gamma \\ L_{5}^{i} & \text { otherwise }\end{cases}
Lji=⎩
⎨
⎧L1iL3iL5i if m−1→0i<γ and m1→0i<γ elif m−2→−1i<γ and m2→1i<γ otherwise 其中,
γ
\gamma
γ为区分阈值。通过TRDM可以确定在接下来的ASRM中使用哪个模型来获得更好的超分结果。
ASRM由原始EDVR (EDVR-5f)及其两个变体(EDVR-3f和EDVR-1f)组成。EDVR-3f模型用来处理时间冗余发生在补丁序列的边缘。对于EDVR-1f和EDVR-3f, PCD对齐模块和TSA模块中的时间注意层分别只执行一次和三次,并将特征复制到与EDVR-5f相同的形状,然后发送到TSA模块的融合卷积层,更多细节可以在补充部分找到。
Boosted BasicVSR
为了更好地利用长期信息,本文提出了一种新的即插即用方法,引入了基于补丁的动态传播(PDP)分支,以补丁的方式动态传播长期信息。如下图所示。
本文将提出的即插即用方法部署到BasicVSR中,即Boosted BasicVSR,用提出的PDP分支替换原有的传播分支。
与BasicVSR中的传播分支不同,本文提出的前向PDP分支采用动态传播,当前帧的每个补丁都可以接收到不同帧的信息。为此,提出的前向PDP分支维护一个补丁池
P
r
g
b
f
P^f_{rgb}
Prgbf和对应的隐藏状态池
P
φ
f
P^f_φ
Pφf来恢复不同帧补丁的有用信息。然后,前向PDP分支以当前LR帧
X
t
X_t
Xt、
P
r
g
b
f
P^f_{rgb}
Prgbf和
P
φ
f
P^f_φ
Pφf为输入,产生前向特征
h
t
f
h_t^f
htf同时基于时间冗余检测更新
P
r
g
b
f
P^f_{rgb}
Prgbf和
P
φ
f
P^f_φ
Pφf。这样可以使长期帧中的有用信息直接连接到当前帧,而不会积累无用的冗余信息。PDP分支的详细情况如上图(b)所示,该分支包括特性聚合和补丁池更新两个阶段。
特征聚合的目的是将池中的信息与当前帧进行聚合。为了估计隐藏状态池的光流,首先将输入帧
X
t
X_t
Xt分解为N个小块,然后和池中的数据一起馈入到光流估计器(S)。然后利用估计的流量对隐藏状态池中的补丁进行扭曲(W)。通过将变形的隐藏状态池和当前帧的重叠块输入到残差块中,得到当前帧的中间特征补丁
{
x
φ
,
t
i
}
i
=
1
N
\{x^i_{φ,t}\}^N_{i=1}
{xφ,ti}i=1N,既前向特征
h
t
f
h_tf
htf。
由于已经得到了特征聚集阶段的光流
{
x
f
l
o
w
,
t
i
}
i
=
1
N
\{x^i_{flow,t}\}^N_{i=1}
{xflow,ti}i=1N,直接使用Boosted EDVR中的公式即可得到
{
P
r
g
b
f
,
i
}
i
=
1
N
\{P^{f,i}_{rgb}\}^N_{i=1}
{Prgbf,i}i=1N和
{
x
r
g
b
i
}
i
=
1
N
\{x^{i}_{rgb}\}^N_{i=1}
{xrgbi}i=1N之间所有对应patch的运动状态
{
m
t
i
}
i
=
1
N
\{m^i_t\}^N_{i=1}
{mti}i=1N。为了保证有用信息的积累,当该补丁的运动状态大于阈值
γ
\gamma
γ时,两个池中的每个补丁集将被当前帧对应的补丁的信息所替换。否则,意味着这两个补丁存在时间冗余,将丢弃当前帧的信息,避免有用信息消失。更新后的池将传播到下一帧。
实验
消融实验
Boosted EDVR的消融实验
PDP分支的消融实验
定量评估
在REDS、Vid4、DTVIT上的定量评估,可以看到在DTVIT数据集上效果比较明显