Large Displacement Optical Flow论文翻译与学习笔记
最近在学习光流相关的目标检测算法,记录一下学习过程
1. Introduction
光流形式的运动是人类和其他视觉物种的视觉系统中最占主导地位的自底而上的线索之一。它对于分组和视觉学习、结构感知和自我定位具有重要意义。
在当今的计算机视觉文献中,估计密集光流的主要方法是通过Horn和Schunck[18]在开创性工作中引入的变分方法,其中基于梯度的局部像素灰色值匹配与全局平滑假设相结合。虽然最初的Horn和Schunck模型在实践中揭示了许多局限性,但其中许多已经通过了对原始模型的后续修改和扩展来解决。运动的不连续性和闭塞性可以通过在平滑项中分别使用非二次惩罚器和数据项来估计。违反常数亮度的假设可以考虑使用光度不变约束,如梯度[11]的常数,高阶导数[28],或具有光度不变通道的颜色模型。最后,当不线性化恒定约束时,该模型可以处理较大的位移[1]。这种非线性化模型的延续方法的数值实现导致了粗到细的翘曲方案(coarse-to-fine warping schemes)[26],[11],这已经在局部技术中使用,例如Lucas-Kanade方法[25]。
当我们说上述方法的模型可以处理较大的位移时,我们不能说,由这些方法获得的最终解决方案反映了所有情况下的这种能力。
变分光流的一个决定性问题,以及所有引入全局光滑的方法,是近似的局部优化。在变分设置中,结果偏向于初始化,即通常是零运动场:从所有局部最小值中选择运动最小的值。
常见的粗到细的翘曲方案放宽了这个问题,因为初始估计是在较粗的分辨率水平上计算的。将较大结构的运动作为整体图像运动的初始猜测,然后通过考虑较小结构的证据依次进行细化。虽然翘曲方案在所有与小尺度结构或多或少相同的情况下都很有效,但一旦小尺度结构的相对运动大于其自身的尺度,该方法就注定会失败,如图1所示。在这种情况下,大尺度结构预测的运动与正确的结构有本质上不同的运动。在出现较小结构的分辨率水平上,局部最小值阻止了正确的校正。在从粗到细的方案中,结果不再受零运动场的影响,而是受大尺度结构的运动的影响。
从粗到细的启发式不起作用的情况在实践中经常出现,一般的关节状运动,特别是人类的运动,都是有问题的。像手这样的小身体部件可以移动得非常快,因此违反了下一个大尺度结构的运动是一个很好的运动指标的要求。除了静态线索外,许多动作识别方法都依赖于光流显然,他们不能充分利用运动线索,因为用当前方法估计的光流,仅仅在信息最丰富的情况下是不可靠的:当某个身体部分有一个清晰、明显的运动时。
我们认为,当将光流应用于其他计算机视觉任务时,当代光流方法不能可靠地捕获大位移是最受限制的因素。本文的贡献是一个变分模型和相应的数值方案,可以比以往的方法更可靠地处理大位移。
其基本思想是支持延拓法( support the continuation method),它负责估计经典翘曲方法(warping methods)中的大位移,通过另一种以其估计任意大位移的能力而闻名的技术:描述符匹配( descriptor matching)。与单个像素相比,丰富的局部描述符,如SIFT或HOG,通常足够独特,以允许在没有额外的规则约束的情况下进行全局匹配。这使得匹配不限制位移的大小非常简单和有效,并解释了从运动、图像搜索和目标检测等描述性特征在结构方面的巨大成功。
在光流估计中,描述符匹配迄今为止还不是一个成功的故事。其原因很明显:
(i) 虽然大多数描述符可以在图像之间唯一匹配,但其中一些被混淆,或者另一个图像中的对应符由于遮挡而丢失。这将导致一定数量的不匹配,这对大多数光流应用程序非常令人不安。
(ii) 描述符匹配是一种离散的技术,它只允许像素的精度。这种量化效应阻止了区分小运动,并在跟踪应用中导致漂移。
(iii) 最成功的描述符都是基于空间直方图。直方图没有很好地局部化,因此运动估计的精度,特别是在运动不连续时,低于别的方法,例如,变分技术。
人们希望受益于描述符匹配产生大量正确的大位移对应的能力,也希望受益于变分技术有效产生高精度、密集的运动场的能力。我们通过将描述符匹配的对应关系整合到一个变分光流模型中来实现这一点。正如我们稍后将更详细地描述的,描述符匹配和作为优化启发式的延续方法在如何避免能量的局部最小值上大多是互补的。结合粗到精细的优化,描述符匹配可以指导解决小的、独立移动结构的大位移,而变分模型中的其他约束条件连续地消除了不匹配,并提供了变分方法中已知的准确性。图2中,证明了描述符匹配的简单后平滑或变分光流技术与描述符匹配结果的简单初始化通常不起作用。相比之下,我们用所提出的大位移光流方法得到的结果在各种视频数据上被证明是非常可靠的。
2. related work
3. variational method
让
I
1
,
I
2
:
(
Ω
⊂
R
n
→
R
d
)
I_1,I_2:(\Omega \subset \mathbf{R}^n\to \mathbb{R}^d)
I1,I2:(Ω⊂Rn→Rd)是要对齐的第一帧和第二帧,对于灰度图像,我们有d=1,对于彩色图像,我们有d=3。此外
x
:
=
(
x
,
y
)
T
\boldsymbol x:=(x,y)^T
x:=(x,y)T表示图像域
Ω
\Omega
Ω中的一个点,
w
:
=
(
u
,
v
)
T
\boldsymbol w:=(u,v)^T
w:=(u,v)T表示光流场,
i
.
e
.
w
:
Ω
→
R
2
i.e. \boldsymbol w:\Omega\to \mathbb{R}^2
i.e.w:Ω→R2,一个常见的假设是,相应的点应该具有相同的灰色值或颜色。用能量来表示:
E
c
o
l
o
r
(
w
)
=
∫
Ψ
(
∣
I
2
(
x
+
w
(
x
)
)
−
I
1
(
x
)
∣
2
)
d
x
(1)
E_{color}(\boldsymbol w)=\int \Psi (\left | I_2(x+w(x))-I_1(x) \right |^2 )dx \tag{1}
Ecolor(w)=∫Ψ(∣I2(x+w(x))−I1(x)∣2)dx(1)
这就惩罚了偏离这个假设的行为。请注意,与霍恩和申克模型相比,这里没有涉及线性化,这可以估计大的位移。鲁棒函数
Ψ
(
s
2
)
=
s
2
+
ε
2
,
ε
=
0.001
\Psi(s^2)=\sqrt{s^2+\varepsilon^2},\varepsilon=0.001
Ψ(s2)=s2+ε2,ε=0.001允许处理匹配准则的闭塞(occlusions)和其他非高斯偏差。它对应于一个尾部大于高斯分布的拉普拉斯分布
f
(
x
)
=
1
λ
e
−
∣
x
−
μ
∣
λ
f(x)=\frac{1}{\lambda}e^{-\frac{|x-\mu|}{\lambda}}
f(x)=λ1e−λ∣x−μ∣
在其他工作中,甚至是长尾分布也被提倡[6],[7]。拉普拉斯分布的优点是相应的惩罚器仍然是凸的,简化了优化。
由于光照效果,匹配颜色或灰度值并不总是可靠的。因此,有人建议通过对梯度的约束来补充(1)中的约束,这对附加的亮度变化是不变的
在[28]中研究了其他高阶约束,表明梯度约束效果最好,因为它引入了所需的不变性,而不像二阶约束那样对噪声敏感。通过结构-纹理分解[34],可以获得具有类似效果的另一种特征。
(1)和(2)都只执行了弱描述性特征的匹配。仅仅优化这两种能量的和就会导致许多模糊的解,其中大多数与真正的光流不一致。这强调了正则性约束在光流估计中的威力和重要性。例如,可以通过惩罚流场的总变化来增加正则性:
将所有这些约束条件放在一起,可以得到在[11],[12]中提出的模型
从建模的角度来看,这个模型是非常通用的。它可以处理各种变形、运动不连续、遮挡和任意大的位移。光流估计还不是一个完美解决的问题的原因是由于该能量模型的近似优化,而不是模型本身。
变分光流的优化策略都是基于局部优化和一种粗到精细的方法。初始估计是通过删除输入数据中的细节来获得的。这种战略非常强调大型结构。本文的思想是补充优化方案的一个补充近似(supplement a complementary approximation to the optimization scheme,),即去除全局正则性。在某一点上的颜色和梯度并不是一个描述性的特征。由于全局正则性约束,它成为描述性的(descriptive),但以产生一个困难的优化问题为代价。或者,我们也可以使用更多的描述性特征,而忽略了正则性约束。没有正则性约束的点匹配可以通过简单的最近邻匹配有效地实现全局最优。
然而,最后,我们希望强制执行一个平滑的流场。此外,描述符匹配还有一些重要的缺点。
(1) 首先,它是一种不提供子像素精度的离散方法。
(2) 丰富描述符的固定空间范围是导致运动不连续和所有非平移运动的不准确的原因。
基于这些原因,我们希望将描述符匹配与变分模型及其从粗到细的优化结合起来,为此,我们通过添加另一项,将描述符匹配时的点对应关系整合到变分方法中:
E
m
a
t
c
h
(
w
)
=
∫
δ
(
x
)
ρ
(
x
)
Ψ
(
∣
w
(
x
)
−
w
1
(
x
)
∣
2
)
d
x
E_{match}(\boldsymbol w)=\int \delta (x)\rho (x)\Psi (\left | w(x)-w_1(x) \right |^2 )dx
Ematch(w)=∫δ(x)ρ(x)Ψ(∣w(x)−w1(x)∣2)dx
在这一项中,
w
1
(
x
)
w_1(x)
w1(x)表示通过在某些点x上进行描述符匹配得到的对应向量,每个对应关系都由其匹配分数
ρ
i
(
x
)
ρ_i(x)
ρi(x)进行加权,这将在第4.1节中精确定义,应用与上述相同的鲁棒函数
Ψ
\Psi
Ψ,以便进行错误的匹配。正如在[10]中所建议的,我们也可以整合最好的K匹配。然而,事实证明,增加假设的数量实际上有缺点而不是优点,详见附录。
公式(5)假定描述符已经匹配。我们可以将这个匹配任务表述为另一个需要最小化的能量项:
将所有项连接在一起,我们可以将整个模型表示为一个单一的优化问题:
其中,α、β和γ是调优参数,可以根据各种视频上的定性证据手动确定,或从真实数据[32]中自动估计。
乍一看,这种能量看起来比必要复杂得多。
(a)为什么要使用辅助变量w1添加两项Ematch和Edesc,而不是直接添加Edesc(w)?
(b)当涉及到更多的描述性特征时,为什么仍然使用颜色和梯度特征?
关于(a),辅助变量允许将离散描述符匹配集成到以软约束形式的连续方法中;另请参见[31]。如果没有这个辅助变量和耦合项Ematch,离散匹配将不会与变分设置兼容
关于(b),在涉及空间定位时,丰富的描述符存在缺陷,因此,像颜色和渐变等点特征实际上是更可取的,事实上,附加项Ematch和Edesc的影响在连续极限中消失了。这很容易看到。这些描述符仅在由δ函数定义的固定空间网格上可用。除了网格点外,这些项也为零。另一方面,其他特征和光滑项在连续域中定义,点特征的数量趋于无穷。在粗到细的最小化过程中,附加项只影响较粗水平的能量。最终的连续能量不受影响。现在将详细解释最小化框架。
4. minimization
最后的目标是找到一个最小值等于或类似于(7)中能量的全局最小值,它在连续极限下等价于(4)中的能量。由于这个函数是高度非凸的,我们需要合理的近似方案来找到一个良好的解的初始猜测。
在这里,我们依赖于两种产生初始猜测的方法的组合:(a)描述符匹配和(b)具有渐进非凸性[8]精神的延续方法。这两种方法都可以通过更简单的能量版本来近似能量,这种版本可以进行全局优化,但它们在简化能量的方式上是互补的。描述符匹配忽略了规律性,而延拓方法忽略了图像细节。描述符匹配的结果可以集成到延续方法中,因此我们从描述符匹配开始,然后解释延续方法。
4.1 Descriptor matching
描述符匹配部分侧重于独立于其他能量的最小化
E
d
e
s
c
(
w
1
)
E_{desc}(w_1)
Edesc(w1)。解耦
E
d
e
s
c
(
w
1
)
E_{desc}(w1)
Edesc(w1)使这个子问题实现全局优化。
Proposition 1:对于第1帧和第2帧在离散网格上给出的描述符,对w1最小化
E
d
e
s
c
(
w
1
)
E_{desc}(w1)
Edesc(w1)是一个离散优化问题。全局优化可以通过具有复杂度
O
(
m
n
)
O(mn)
O(mn)的完全搜索来实现,其中m和n分别表示第1帧和第2帧中网格的基数。
proof:让
δ
(
x
)
\delta(x)
δ(x)在第1帧中定义一个离散网格,让
δ
′
(
x
)
\delta '(x)
δ′(x)在第2帧中定义另一个网格。通常,
δ
′
(
x
)
\delta '(x)
δ′(x)将是一个比
δ
\delta
δ更好的网格。我们可以重写
显然,由于缺少正则性约束,the sum entries是相互独立的,因此,我们可以在每个网格点
x
i
x_i
xi上独立地优化
w
1
w_1
w1。这可以通过评估
δ
′
δ'
δ′ 的所有可能网格点
x
j
x_j
xj的能量,并选择该能量最小的
x
j
x_j
xj来实现。最优项
w
1
(
x
i
)
=
x
j
−
x
i
w_1(x_i)=x_j−x_i
w1(xi)=xj−xi显然,总体的时间复杂度是O(mn)。它可以通过使用有效的最近邻搜索来减少。
由于这部分的优化非常简单,我们只需要定义这些描述符可用的合理描述符和网格。我们在这里研究了三种不同的方法:一种基于[10]中提出的区域匹配,一种基于HOG描述符[15],另一种基于几何模糊(GB)[5]。一个良好的描述符匹配方法的主要要求是,网格足够好,可以捕获较小结构的运动,并且描述符足够独特,足以限制错误匹配的数量。
4.1.1 region matching
为了在图像中创建区域,我们依赖于在[2]中提出的分割方法,它创建了对图像的分层过度分割(a hierarchical oversegmentation of the image.)。对于这个层次结构的每个区域,我们可以计算一个基于SIFT和颜色的描述符,并使用这些描述符进行匹配。有关从区域构建描述符和确切匹配过程的详细信息,我们请参阅[10]。第一帧区域i的质心和第二帧中匹配区域j的质心作为网格点xi和xj,其中区域对应关系被整合到变分能量中。匹配的分数被定义为:
ρ
(
x
)
:
=
d
2
−
d
1
d
1
(9)
\rho (x):=\frac{d_2-d_1}{d_1} \tag{9}
ρ(x):=d1d2−d1(9)
其中,d1和d2分别表示最佳匹配和第二最佳匹配的距离。距离是扭曲斑块(warped patches)差异的平方和;详情请参见[10]。考虑到第二好的匹配,有助于给唯一的匹配项更多的权重,而不明确的情况会被削弱。
对于第5节中的实验,我们补充了对[10]中原始匹配过程的一致性检查。只有当第1帧到第2帧的最佳匹配等于第2帧到第1帧的最佳匹配时,才会计算区域对应关系。
Histogram of oriented gradients
作为从区域构建描述符的替代方法,我们在两帧[15]中密集计算定向梯度(HOG)的直方图。每个梯度直方图由15个不同的方向组成,并在一个7×7的邻域中计算。与[15]相比,梯度的符号是不可忽略的。当使用积分图像时,计算速度非常快。我们还在方向方向上应用
σ
=
0.8
σ=0.8
σ=0.8的高斯滤波器来减少量化效应。
最终的描述符是通过收集中心像素和8个相邻距离的直方图来计算的;如图3中示。因此,每个描述符由15·9个=135个条目组成,描述符在帧1和帧2的每个像素位置都可用。距离计算为两个向量之间的平方和,匹配分数
ρ
\rho
ρ的定义与(9)相同。
我们通过在x和y方向上每四分之一个像素选择一个描述符来定义网格δ(x)。与在每个像素上采样一个描述符相比,这将匹配工作减少了16因子。因为每个直方图都有一个7×7的支持,这个子采样不会遗漏任何小的结构。此外,值得注意的是,精确定位运动边界所需的全分辨率是由变分设置中的颜色和梯度线索提供的。这些都更适合于确保高精度的解决方案,因为HOG描述符由于其直方图性质而不精确。
我们还计算了与直方图相同区域上集成的结构张量
∇
I
∇
I
T
\nabla I\nabla I^T
∇I∇IT的较小特征值
λ
\lambda
λ,并忽略了λ小于整个图像平均值的八分之一的点的描述符。其动机是节省计算时间,并通过忽略没有任何结构的区域来减少错误匹配的数量。
网格δ’(x)定义为全像素分辨率,以确保像素精确匹配。对于每个匹配(xi,xj),我们检查(xj,xi)是否也是反向的最佳匹配。如果没有,则将
δ
(
x
i
)
\delta (x_i)
δ(xi)设置为0。这种一致性检查删除了许多错误匹配,特别是那些由于阻塞(occlusion)导致的匹配。
值得注意的是,一旦忽略了SIFT探测器的尺度和旋转不变性,HOG描述符就与[24]中的SIFT描述符非常相似。通过在4对4的网格上采样8个方向,并使用高斯核而不是box kernel,这两个描述符都可以是等价的。在光流设置中,我们发现稍微减少描述符的空间范围是有利的,因为这减少了运动不连续时的模糊效应。
4.1.3 Geometric blur
任何其他丰富描述符都适用,只要它可以密集计算。作为类似HOG/SIFT的描述符的替代方案,我们尝试了来自[5]的几何模糊(GB)的一个变体。我们计算了15个定向梯度,如上面的HOG描述符,但我们不是通过应用7×7box核来构建一个直方图,而是应用了三个不同模糊级别 σ 0 = 0 , σ 1 = 1 , σ 2 = 2 σ_0=0,σ_1=1,σ_2=2 σ0=0,σ1=1,σ2=2的高斯模糊。描述符由来自第0的一个条目、第1的4个条目和来自第2的8个条目组成,如图3所示。两帧中的采样网格和匹配过程与上面描述的HOG描述符完全相同。
4.2 Continuation method
在解耦
E
d
e
s
c
(
w
1
)
E_{desc}(w_1)
Edesc(w1)后,(7)的剩余部分可以用[11]中使用连续法提出的方法最小化。附加项在w的
E
m
a
t
c
h
E_{match}
Ematch中是凸的,不会造成任何麻烦。continuation method的思想是通过平滑输入图像,将原始问题分割成不同分辨率级别的一系列子问题。为了允许层之间的平滑过渡,我们使用了一个非常精细的金字塔,其中k级的图像是输入图像的降采样版本,降采样因子为
0.9
5
(
k
m
a
x
−
k
)
0.95^{(k_{max}−k)}
0.95(kmax−k),在选择
k
m
a
x
k_{max}
kmax时,仍然可以应用离散导数滤波器。另一种延续的方法是使用高斯核平滑输入图像,但保持原始分辨率[1]。
Proposition 2:每个continuation step中的子问题都是凸的,可以对固定对应的w1进行全局优化。
Proof:(7)的欧拉-拉格朗日方程式如下
我们定义
嵌套的不动点迭代可用于解决(10)中的非线性问题。通过在多个图像尺度上运行外部迭代循环,将延续方法集成到该数值方案中。初始化
w
0
:
=
(
0
,
0
)
w_0:=(0,0)
w0:=(0,0)在最粗的尺度上指定,更新
w
k
+
1
=
w
k
+
d
w
k
w_{k+1}=w_k+dw_k
wk+1=wk+dwk在连续更精细的尺度上计算,其中
d
w
k
:
=
(
d
u
k
,
d
v
k
)
dw_k:=(du_k,dv_k)
dwk:=(duk,dvk)是下式的解
可以验证(12)中的方程是the Euler-Lagrange equations of the energy:
当
Ψ
(
s
2
)
Ψ(s^2)
Ψ(s2)在s中是凸的时,每个项在
(
d
u
k
,
d
v
k
)
(du^k,dv^k)
(duk,dvk)中都是凸的,因此能量
E
k
E_k
Ek对所有k都是凸的,可以进行全局优化。证毕
为了求解(12),采用了在
l
l
l 上的内不动点迭代,其中(13)中的鲁棒函数设置为固定
d
u
k
,
l
,
d
v
k
,
l
du^{k,l},dv^{k,l}
duk,l,dvk,l的常数,并迭代更新。然后,这些方程在
d
u
k
,
l
,
d
v
k
,
l
du^{k,l},dv^{k,l}
duk,l,dvk,l中是线性的,经过适当的离散化后,可以用标准的迭代方法来求解。我们离散方程系统而不是能量模型这一事实允许一致的离散化,即当图像分辨率更好时,收敛到连续极限。因此,没有像边缘与网格轴对齐这样的离散工件。离散化的细节可以找到,例如,在[9]中找到。
(7)中的完全优化问题可以被分成许多子问题,这些子问题都可以被全局优化,这一事实并不能保证整个问题的全局最优。这在其他优化设置中也是众所周知的,例如期望最大化。然而,所提出的优化程序有助于避免原始问题的大部分局部最小值。值得注意的是,这不仅仅是描述符匹配对应的后平滑,而是将通信集成到延拓方法中。这给它们在过程开始时产生了很高的影响,其中图像分辨率非常小,对应关系主导了灰度值和梯度常数项。随着分辨率的增加,点对应值的固定数与图像中像素数的增加之间的比值也会下降,对应值的影响也会下降。在连续的极限下,这个比率趋于零。我们通过使用β=0运行最后一次迭代来模拟这个限制。
在更精细层次上描述符匹配的重要性自然降低在实践中是非常有帮助的。在粗糙的水平上,匹配的高影响将估计推向大位移解,否则被翘曲方案忽略。在更精细的级别上,不再需要这种效应,而错误匹配需要在某个时候进行排序。图4中示,显示了在一个样本情况下的解的演变。
我们可以想象迭代整个优化过程,例如,通过限制w1的搜索范围,从而向描述符匹配提供反馈。这是在[31]中提出的,其中根本没有使用continuation method,在这里的设置中,进一步的迭代产生的只有很少的改进,但大大增加了计算成本。