摘要
我们研究了一种用于计算光流的能量函数,它结合了三个假设:亮度恒定假设、梯度恒定假设和不连续性保持时空平滑约束。为了允许大位移,严格避免两个数据项中的线性化。我们提出了一个基于两个嵌套的定点迭代的连续数值方案。通过证明该方案实现了从粗到细的 Warping 策略,迄今为止主要在实验上使用的 Warping 提供了理论基础。我们的评估表明,与以前的光流估计技术相比,新方法的角度误差要小得多。我们证明它对参数变化相当不敏感,并且我们证明了它在噪声下的出色鲁棒性!
1 简介
光流估计仍然是计算机视觉中的关键问题之一。估计两个图像之间的位移场,一旦需要像素之间的对应关系就应用它。这种类型的问题不仅限于运动估计,它们也以类似的方式出现在 3D 重建或图像配准中。在过去的二十年中,光流估计方法的质量急剧提高。从 Horn 和 Schunck [11] 以及 Lucas 和 Kanade [15] 的原始方法开始,研究开发了许多新概念来处理先前模型的缺点。为了处理流场中的不连续性,Horn 和 Schunck 模型中的二次正则化器被允许分段平滑结果的平滑约束取代。其中一些想法与联合运动估计和运动分割的方法以及由鲁棒统计驱动的光流方法非常接近,其中异常值的惩罚较轻。粗到细策略 以及非线性模型 已被用于处理大位移。最后,时空方法仅通过使用附加维度的信息来改善结果。
新的想法不仅提高了光流估计技术的质量。此外,为了更好地了解这些方法的详细功能,以及通过更改它们的参数会产生哪些影响,这让我们深入了解了几个模型如何协同工作。此外,模型的变分公式提供了数值数学在解决部分困难的优化问题方面的长期经验。为某个模型找到最佳解决方案通常并非易事,而且通常没有充分利用模型的全部潜力,因为必须在实现方面做出让步。
在本文中,我们提出了一种新的变分方法,它整合了前面提到的几个概念,并且可以用一个可靠的数值方法来最小化。进一步表明,使用所谓的 Warping 技术 [7, 16] 的从粗到细的策略实现了 [19, 2] 和图像配准中使用的非线性光流约束。这有两个重要影响:首先,可以将迄今为止仅由算法驱动的 Warping 技术集成到变分框架中。其次,它展示了如何使用有效的多分辨率技术解决图像对应问题的理论上合理的方法。应该注意的是——除了 Lef ́ebure 和 Cohen [14] 的一篇非常好的论文——到目前为止,关于 Warping 的理论结果并不多。
最后,灰度值恒定性假设是光流估计中的基本假设,通过梯度恒定性假设进行了扩展。这使得该方法对灰度值变化具有鲁棒性。虽然在 [23, 22] 中也提出了梯度恒定假设以处理局部方法范围内的孔径问题,但它们在变分方法中的使用是新颖的。
实验评估表明,我们的方法产生了很好的结果。与文献中的相比,它们的准确性总是显着提高,有时甚至是迄今为止已知的最佳值的两倍。此外,该方法在大量噪声下也被证明是稳健的,并且在当代硬件上每帧仅几秒的计算时间是可能的。
2 变分模型
在为我们的光流方法推导变分公式之前,我们给出了一个直观的想法,即我们认为哪些约束应该包含在这样的模型中。
-
灰度值恒定假设
从光流估计开始,就假设像素的灰度值不因位移而改变。
I ( x , y , t ) = I ( x + u , y + v , t + 1 ) (1) I(x, y, t) = I(x + u, y + v, t + 1) \tag{1} I(x,y,t)=I(x+u,y+v,t+1)(1)
这里 I : Ω ⊂ R 3 → R I : Ω ⊂ \mathbb R^3 → \mathbb R I:Ω⊂R3→R 表示一个矩形图像序列, w : = ( u , v , 1 ) ⊤ w := (u, v, 1)^⊤ w:=(u,v,1)⊤ 是在时间 t t t 的图像和时间 t + 1 t + 1 t+1 的另一个图像之间搜索到的位移向量。灰度值恒定假设产生著名的光流约束:
I x u + I y v + I t = 0 (2) I_xu + I_yv + I_t = 0 \tag{2} Ixu+Iyv+It=0(2)
其中下标表示偏导数。然而,这种线性化仅在图像沿位移线性变化的假设下才有效,通常情况并非如此,尤其是对于大位移。因此,我们的模型将使用原始的非线性灰度值恒定假设 (1)。 -
梯度恒定假设
灰度值恒定假设有一个关键的缺点:它很容易受到亮度的轻微变化,这通常出现在自然场景中。因此,允许灰度值有一些小的变化是有用的,并通过在灰度值变化下不变的标准来确定位移矢量。这样的标准是图像灰度值的梯度,也可以假设它不会因位移而变化。
∇ I ( x , y , t ) = ∇ I ( x + u , y + v , t + 1 ) (3) ∇I(x, y, t) = ∇I(x + u, y + v, t + 1) \tag{3} ∇I(x,y,t)=∇I(x+u,y+v,t+1)(3)
这里 ∇ = ( ∂ x , ∂ y ) ⊤ ∇ = (∂x, ∂y)^⊤ ∇=(∂x,∂y)⊤ 表示空间梯度。同样,避免线性化也是有用的。约束 (3) 对平移运动特别有帮助,而约束 (2) 可能更适合更复杂的运动模式。 -
平滑假设
到目前为止,该模型仅在局部估计像素的位移,而没有考虑相邻像素之间的任何相互作用。因此,一旦梯度在某处消失,或者只能估计梯度法线方向的流动(孔径问题),它就会遇到问题。此外,人们会期望估计值中有一些异常值。因此,引入流场的平滑度作为进一步的假设是有用的。如果只有两个帧可用,则该平滑约束可以单独应用于空间域,如果需要图像序列中的位移,则可以应用于时空域。由于最优位移场在场景中物体的边界处会存在不连续性,因此通过要求分段平滑流场来推广平滑假设。 -
多尺度方法
在位移大于每帧一个像素的情况下,变分公式中的代价函数必须是多模态的,即最小化算法很容易陷入局部最小值。为了找到全局最小值,应用多尺度想法可能很有用:首先通过处理平滑的图像序列来解决问题的粗略、平滑版本。新问题可能有一个唯一的最小值,希望接近原始问题的全局最小值。粗略的解决方案被用作解决问题的精炼版本的初始化,直到逐步解决原始问题。不是平滑图像序列,而是根据采样定理对图像进行下采样更有效,因此模型最终采用多分辨率策略。
通过这种描述,可以直接推导出一个能量函数来惩罚偏离这些模型假设的情况。令
x
:
=
(
x
,
y
,
t
)
⊤
x := (x, y, t)^⊤
x:=(x,y,t)⊤ 和
w
:
=
(
u
,
v
,
1
)
⊤
w := (u, v, 1)^⊤
w:=(u,v,1)⊤。然后通过能量测量灰度值恒定假设和梯度恒定假设的全局偏差:
E
D
a
t
a
(
u
,
v
)
=
∫
Ω
(
∣
I
(
x
+
w
)
−
I
(
x
)
∣
2
+
γ
∣
∇
I
(
x
+
w
)
−
∇
I
(
x
)
∣
2
)
d
x
(4)
EData(u, v) =∫_Ω(|I(x + w) − I(x)|^2 + γ|∇I(x + w) − ∇I(x)|^2) dx \tag{4}
EData(u,v)=∫Ω(∣I(x+w)−I(x)∣2+γ∣∇I(x+w)−∇I(x)∣2)dx(4)
其中
γ
γ
γ 是两个假设之间的权重。由于使用二次惩罚器,异常值对估计的影响太大,因此应用了一个递增的凹函数
Ψ
(
s
2
)
Ψ(s^2)
Ψ(s2),从而产生稳健的能量值。
E
D
a
t
a
(
u
,
v
)
=
∫
Ω
Ψ
(
∣
I
(
x
+
w
)
−
I
(
x
)
∣
2
+
γ
∣
∇
I
(
x
+
w
)
−
∇
I
(
x
)
∣
2
)
d
x
(5)
EData(u, v) =∫_ΩΨ(|I(x + w) − I(x)|^2 + γ|∇I(x + w) − ∇I(x)|^2) dx \tag{5}
EData(u,v)=∫ΩΨ(∣I(x+w)−I(x)∣2+γ∣∇I(x+w)−∇I(x)∣2)dx(5)
函数
Ψ
Ψ
Ψ 也可以分别应用于这两项中的每一项。我们使用函数
Ψ
(
s
2
)
=
s
2
+
ǫ
2
Ψ(s^2) = \sqrt{s^2 + ǫ^2}
Ψ(s2)=s2+ǫ2 导致(修改后的)
L
1
L1
L1 最小化。对于小量正数
ε
ε
ε,
Ψ
(
s
)
Ψ(s)
Ψ(s) 仍然是凸的,这在最小化过程中提供了优势。此外,
Ψ
Ψ
Ψ 的这种选择并没有引入任何额外的参数,因为
ε
ε
ε 只是数字原因,可以设置为固定值,我们选择为
0.001
0.001
0.001。
最后,平滑项必须描述分段平滑流场的模型假设。这是通过惩罚流场的总变化来实现的,可以表示为:
E
S
m
o
o
t
h
(
u
,
v
)
=
∫
Ω
Ψ
(
∣
∇
3
u
∣
2
+
∣
∇
3
v
∣
2
)
d
x
(6)
E_{Smooth}(u, v) =∫_ΩΨ (|∇_3u|^2 + |∇_3v|^2) dx \tag{6}
ESmooth(u,v)=∫ΩΨ(∣∇3u∣2+∣∇3v∣2)dx(6)
Ψ
Ψ
Ψ 具有与上述相同的功能。时空梯度
∇
3
:
=
(
∂
x
,
∂
y
,
∂
t
)
⊤
∇_3 := (∂x, ∂y, ∂t)^⊤
∇3:=(∂x,∂y,∂t)⊤表示涉及时空平滑假设。对于只有两个图像可用的情况,它被空间梯度所取代
E
(
u
,
v
)
=
E
D
a
t
a
+
α
E
S
m
o
o
t
h
(7)
E(u, v) = E_{Data} + αE_{Smooth} \tag{7}
E(u,v)=EData+αESmooth(7)
有一些正则化参数
α
>
0
α > 0
α>0。现在的目标是找到函数
u
u
u 和
v
v
v 最小化这个能量
3 最小化
3.1 欧拉-拉格朗日方程
由于
E
(
u
,
v
)
E(u, v)
E(u,v) 是高度非线性的,因此最小化并非易事。为了更好的可读性,我们定义了以下缩写,其中使用
z
z
z 代替
t
t
t 强调表达式不是时间导数,而是寻求最小化的差异。
I
x
:
=
∂
x
I
(
x
+
w
)
,
I
y
:
=
∂
y
I
(
x
+
w
)
,
I
z
:
=
I
(
x
+
w
)
−
I
(
x
)
,
I
x
x
:
=
∂
x
x
I
(
x
+
w
)
,
I
x
y
:
=
∂
x
y
I
(
x
+
w
)
,
I
y
y
:
=
∂
y
y
I
(
x
+
w
)
,
I
x
z
:
=
∂
x
I
(
x
+
w
)
−
∂
x
I
(
x
)
,
I
y
z
:
=
∂
y
I
(
x
+
w
)
−
∂
y
I
(
x
)
(8)
I_x := ∂_xI(x + w),\\ I_y := ∂_yI(x + w),\\ I_z := I(x + w) − I(x),\\ I_{xx} := ∂_{xx}I(x + w),\\ I_{xy} := ∂_{xy}I(x + w),\\ I_{yy} := ∂_{yy}I(x + w),\\ I_{xz} := ∂_xI(x + w) − ∂_xI(x),\\ I_yz := ∂_yI(x + w) − ∂_yI(x) \tag{8}
Ix:=∂xI(x+w),Iy:=∂yI(x+w),Iz:=I(x+w)−I(x),Ixx:=∂xxI(x+w),Ixy:=∂xyI(x+w),Iyy:=∂yyI(x+w),Ixz:=∂xI(x+w)−∂xI(x),Iyz:=∂yI(x+w)−∂yI(x)(8)
根据变分法,(7) 的最小值必须满足欧拉-拉格朗日方程
Ψ
′
(
I
z
2
+
γ
(
I
x
z
2
+
I
2
+
y
z
)
)
⋅
(
I
x
I
z
+
γ
(
I
x
x
I
x
z
+
I
x
y
I
y
z
)
)
−
α
d
i
v
(
Ψ
′
(
∣
∇
3
u
∣
2
+
∣
∇
3
v
∣
2
)
∇
3
u
)
=
0
Ψ′(I^2_z + γ(I^2_{xz} + I^2+{yz})) · (I_xI_z + γ(I_{xx}I_{xz} + I_{xy}I_{yz}))−α div (Ψ′(|∇_3u|^2 + |∇_3v|^2)∇_3u) = 0
Ψ′(Iz2+γ(Ixz2+I2+yz))⋅(IxIz+γ(IxxIxz+IxyIyz))−αdiv(Ψ′(∣∇3u∣2+∣∇3v∣2)∇3u)=0
Ψ
′
(
I
z
2
+
γ
(
I
x
z
2
+
I
2
+
y
z
)
)
⋅
(
I
y
I
z
+
γ
(
I
y
y
I
y
z
+
I
x
y
I
x
z
)
)
−
α
d
i
v
(
Ψ
′
(
∣
∇
3
u
∣
2
+
∣
∇
3
v
∣
2
)
∇
3
v
)
=
0
Ψ′(I^2_z + γ(I^2_{xz} + I^2+{yz})) · (I_yI_z + γ(I_{yy}I_{yz} + I_{xy}I_{xz}))−α div (Ψ′(|∇_3u|^2 + |∇_3v|^2)∇_3v) = 0
Ψ′(Iz2+γ(Ixz2+I2+yz))⋅(IyIz+γ(IyyIyz+IxyIxz))−αdiv(Ψ′(∣∇3u∣2+∣∇3v∣2)∇3v)=0
3.2 数值逼近
前面的欧拉-拉格朗日方程的参数是非线性的
w
=
(
u
,
v
,
1
)
⊤
w = (u, v, 1)^⊤
w=(u,v,1)⊤。可以用常用数值方法求解的线性方程组的第一步是在
w
w
w 上使用定点迭代。为了实现多尺度方法,更好地逼近能量的全局最优值,这些固定点迭代与下采样策略相结合。这里建议使用任意因子
η
∈
(
0
,
1
)
η ∈ (0, 1)
η∈(0,1),而不是每个级别的标准下采样因子
0.5
0.5
0.5,这允许从一个尺度到下一个尺度的更平滑过渡。此外,使用完整的图像金字塔,从最粗网格处的最小可能图像开始。令
w
k
=
(
u
k
,
v
k
,
1
)
⊤
,
k
=
0
,
1
,
.
.
.
,
w_k = (u_k, v_k, 1)^⊤, k = 0, 1, . . .,
wk=(uk,vk,1)⊤,k=0,1,...,初始化
w
0
=
(
0
,
0
,
1
)
⊤
w_0 = (0, 0, 1)^⊤
w0=(0,0,1)⊤ 在最粗的网格。此外,令
I
∗
k
I^k_∗
I∗k 为 (8) 中定义的缩写,但使用迭代变量
w
k
w_k
wk 而不是
w
w
w。那么
w
k
+
1
w_{k+1}
wk+1 将是
Ψ
′
(
(
I
z
k
+
1
)
2
+
γ
(
(
I
x
z
k
+
1
)
2
+
(
I
y
z
k
+
1
)
2
)
)
⋅
(
I
x
k
I
z
k
+
1
+
γ
(
I
x
x
k
I
x
z
k
+
1
+
I
x
y
k
I
y
z
k
+
1
)
)
−
α
d
i
v
(
Ψ
′
(
∣
∇
3
u
k
+
1
∣
2
+
∣
∇
3
v
k
+
1
∣
2
)
∇
3
u
k
+
1
)
=
0
Ψ′((I^{k+1}_z )^2 + γ((I^{k+1}_{xz} )^2 + (I^{k+1}_{yz} )^2)) · (I^k_x I^{k+1}_z + γ(I^k_{xx}I^{k+1}_{xz} + I^k_{xy}I^{k +1}_{yz} )) \\ -α div (Ψ′(|∇_3u^{k+1}|^2 + |∇_3v^{k+1}|^2)∇_3u^{k+1}) = 0
Ψ′((Izk+1)2+γ((Ixzk+1)2+(Iyzk+1)2))⋅(IxkIzk+1+γ(IxxkIxzk+1+IxykIyzk+1))−αdiv(Ψ′(∣∇3uk+1∣2+∣∇3vk+1∣2)∇3uk+1)=0
Ψ
′
(
(
I
z
k
+
1
)
2
+
γ
(
(
I
x
z
k
+
1
)
2
+
(
I
y
z
k
+
1
)
2
)
)
⋅
(
I
y
k
I
z
k
+
1
+
γ
(
I
y
y
k
I
y
z
k
+
1
+
I
x
y
k
I
x
z
k
+
1
)
)
−
α
d
i
v
(
Ψ
′
(
∣
∇
3
u
k
+
1
∣
2
+
∣
∇
3
v
k
+
1
∣
2
)
∇
3
v
k
+
1
)
=
0
Ψ′((I^{k+1}_z )^2 + γ((I^{k+1}_{xz} )^2 + (I^{k+1}_{yz} )^2)) · (I^k_y I^{k+1}_z + γ(I^k_{yy}I^{k+1}_{yz} + I^k_{xy}I^{k +1}_{xz} )) \\ -α div (Ψ′(|∇_3u^{k+1}|^2 + |∇_3v^{k+1}|^2)∇_3v^{k+1}) = 0
Ψ′((Izk+1)2+γ((Ixzk+1)2+(Iyzk+1)2))⋅(IykIzk+1+γ(IyykIyzk+1+IxykIxzk+1))−αdiv(Ψ′(∣∇3uk+1∣2+∣∇3vk+1∣2)∇3vk+1)=0
一旦达到 w k w_k wk 中的一个固定点,我们就切换到下一个更精细的尺度,并使用这个解作为这个尺度上的定点迭代的初始化。
由于 x x x 和 y y y 方向的网格尺寸都减小了 η η η,因此图像尺寸实际上缩小了 η 2 η^2 η2。
4 与 Warping 方法的关系
从粗到细的 Warping 技术是提高光流方法性能的常用工具。虽然它们通常是在纯粹的实验基础上引入的,但我们在本节中表明,它们在理论上可以作为数值近似来证明是合理的。为了建立这种关系,我们通过设置
γ
=
0
γ = 0
γ=0 将自己限制为灰度值恒定模型。让我们还通过假设空间平滑度来简化模型,如 [17] 中所示。在这些条件下,(11) 可以写为
(
Ψ
′
)
D
k
a
t
a
∇
I
k
(
∇
I
k
)
⊤
(
d
u
k
d
v
k
)
−
α
(
d
i
v
(
(
Ψ
′
)
k
S
m
o
o
t
h
∇
(
u
k
+
d
u
k
)
d
i
v
(
(
Ψ
′
)
k
S
m
o
o
t
h
∇
(
v
k
+
d
v
k
)
)
)
=
−
(
Ψ
′
)
D
a
t
a
k
I
z
k
∇
I
k
(13)
(Ψ′)^k_Data∇I^k(∇I^k)^⊤\begin{pmatrix} du^k \\ dv^k \\ \end{pmatrix}− α \begin{pmatrix} div ((Ψ′)k_{Smooth}∇(u^k + du^k)\\ div ((Ψ′)k_{Smooth}∇(v^k + dv^k)) \\ \end{pmatrix}= −(Ψ′)^k_{Data}I^k_z ∇I^k \tag{13}
(Ψ′)Dkata∇Ik(∇Ik)⊤(dukdvk)−α(div((Ψ′)kSmooth∇(uk+duk)div((Ψ′)kSmooth∇(vk+dvk)))=−(Ψ′)DatakIzk∇Ik(13)
对于固定的
k
k
k,该系统等效于 [17] 中描述的欧拉-拉格朗日方程。此外,仅估计第一图像和 Warping 的第二图像之间的增量
d
u
d_u
du 和
d
v
d_v
dv。相同的增量出现在我们方法的外部不动点迭代中,以解决灰度值恒定假设的非线性。这表明 Warping 技术通过对
w
w
w 的定点迭代实现了非线性恒定假设的最小化。在早期的方法中, Warping 的主要动机是从粗到细的策略。由于解决方案
u
u
u 和
v
v
v 在较粗的网格上计算,因此只需在精细网格上计算增量
d
u
d_u
du 和
d
v
d_v
dv。因此,过去的估计值小于每帧一个像素的大小,与总位移的大小无关。这种处理较大位移的能力被证明是差分光流估计的一个非常重要的方面。处理大位移的第二种策略是使用非线性灰度值恒定假设[19, 2]。在这里,从一开始就允许大位移。然而,非线性导致多模态函数。在这种情况下,不仅需要从粗到细的策略,甚至需要更好地逼近全局最小值。最后,这两种策略不仅导致相似的结果。事实上,正如我们在上面看到的,它们是完全等价的。因此,从粗到细的 Warping 技术可以表述为一个单一的最小化问题,并且依赖于非线性恒定假设的图像配准技术可以使用一种有效的多分辨率方法来最小化它们的能量函数。