2022/05/05,06,08,09
樊俊
202121000460
Matting Equation
C
=
α
F
+
(
1
−
α
)
B
C=\alpha F + (1-\alpha)B
C=αF+(1−α)B
其中,
C
C
C表示组合之后的图像的颜色,
F
F
F表示组合之前的前景图像颜色,
B
B
B表示组合的背景颜色,
α
\alpha
α是像素的不透明度成分,用于在前景和背景之间线性融合。
Blue Screen Matting
拍摄前景目标在确定的背景上的图像,然后求解前景和透明度。
R
c
=
α
R
f
+
(
1
−
α
)
R
b
G
c
=
α
G
f
+
(
1
−
α
)
G
b
B
c
=
α
B
f
+
(
1
−
α
)
B
b
R_c=\alpha R_f + (1-\alpha)R_b\\ G_c=\alpha G_f+(1-\alpha)G_b \\ B_c= \alpha B_f+(1-\alpha)B_b
Rc=αRf+(1−α)RbGc=αGf+(1−α)GbBc=αBf+(1−α)Bb
其中,
(
R
c
,
G
c
,
B
c
)
,
(
R
b
,
G
b
,
B
b
)
(R_c,G_c,B_c),(R_b,G_b,B_b)
(Rc,Gc,Bc),(Rb,Gb,Bb)已知,
(
R
f
,
G
f
,
B
f
,
α
)
(R_f,G_f,B_f,\alpha)
(Rf,Gf,Bf,α)未知。要求解4个未知数,但是只有三个方程,这显然是一个欠约束问题,因此要求解的话必须添加额外的约束条件。
基于采样的抠图方法
- 在自然图像抠图中,适当的人工交互是必要的。大多数抠图算法通过用户标记的三元图(Trimap)实现对对解空间的约束。三元图通过指定一部分已知的前景区域与已知的背景区域对图像进行标记,由用户涂鸦交互生成,或者由二值图像分割结果自动生成。
- 基于颜色采样的方法认为图像的局部区域是连续的,具有相似颜色的近邻像素,也具有相近的 α \alpha α值。
- 满足局部连续假设的像素在统计特征上具有相关性,通过采样未知像素周围近邻的已知前景、背景像素来估计
α
\alpha
α值。
已知黑色区域是背景( α = 0 , F = 0 , B = C \alpha=0,F=0,B=C α=0,F=0,B=C),白色区域是前景( α = 1 , F = C , B = 0 \alpha=1,F=C,B=0 α=1,F=C,B=0),这两个区域的 α , F , B \alpha,F,B α,F,B 都是已知的。目的是估计灰色区域的不确定的 α , F , B \alpha,F,B α,F,B。通过 matting 得到类似下面的结果。
Mishima
Mishima等人提出了一种解法。对于所有的背景采样点,计算这些采样点的最小包围,中心位置为
B
‾
\overline{B}
B ,然后对所有前景采样点,同样计算其最小包围。对于给定的组合后颜色
C
C
C,通过
B
‾
\overline{B}
B 和
C
C
C做射线,分别与前景包围线、背景包围线相交于
F
、
B
F、B
F、B 点,那么
α
=
B
C
B
F
\alpha= \frac{BC}{BF}
α=BFBC
该方法的缺陷:
- 需要在RGB空间中分别计算所有前景像素和背景像素的最小包围圈,即使简化成最小包围球体,计算量也较大;
- 处理结果依赖初始状态下对前景和背景的划分。
Knockout
计算每个颜色通道的 α \alpha α分量,加权平均作为最终的 α \alpha α值,也称三通道加权法。该方法简单、运算速度很快,但只适用于光滑图像的抠图。
- 对给定的不确定区域内的一点 C C C,计算所有前景区域的边缘像素与 C C C的加权均值。和 C C C最近的前景边缘像素点的权重设置为1,该权重随距离线性递减,距离为最近长度的两倍的像素点的权重为0。通过计算加权和得到前景 F F F。
- 通过同样的方法初始化背景 B ′ B' B′。
- 过 B ′ B' B′点,以 F B ′ → \overrightarrow{FB'} FB′为法线得到平面 S S S。
- 将 C C C投影到 S S S得到点 B B B。
- 计算
α
\alpha
α。
α = f ( C ) − f ( B ) f ( F ) − f ( B ) \alpha=\frac{f(C)-f(B)}{f(F)-f(B)} α=f(F)−f(B)f(C)−f(B)
其中 f ( ) f() f()表示通过 r g b rgb rgb空间将颜色投影到某个可能的轴只上(e.g., onto one of the r-, g-, or b- axes)。
Ruzon-Tomasi
采用统计方法来估计
α
\alpha
α值,颜色估计和
α
\alpha
α值估计的计算量很大,处理速度非常慢。
Beyesian
将抠图问题表示为贝叶斯形式。贝叶斯方法假设前景和背景像素均服从高斯分布,先建立前景颜色的概率分布,再把未知区域的像素划分到前景或背景的不同簇中,表示当前选定的F概率有多大。
已知观察图
C
C
C,估计
F
,
B
,
α
F,B,\alpha
F,B,α,求概率分布
P
(
F
,
B
,
α
∣
C
)
P(F,B,\alpha | C)
P(F,B,α∣C)取得最大值的时的
F
,
B
,
α
F,B,\alpha
F,B,α,即最大后验估计:
arg max
F
,
B
,
α
P
(
F
,
B
,
α
∣
C
)
=
arg max
F
,
B
,
α
P
(
C
∣
F
,
B
,
α
)
P
(
F
)
P
(
B
)
P
(
α
)
/
P
(
C
)
=
arg max
F
,
B
,
α
L
(
C
∣
F
,
B
,
α
)
+
L
(
F
)
+
L
(
B
)
+
L
(
α
)
\begin{aligned} &\argmax_{F,B,\alpha} P(F,B,\alpha | C)\\ &=\argmax_{F,B,\alpha} P(C|F,B,\alpha )P(F)P(B)P(\alpha)/P(C)\\ &=\argmax_{F,B,\alpha} L(C|F,B,\alpha )+L(F)+L(B)+L(\alpha) \end{aligned}
F,B,αargmaxP(F,B,α∣C)=F,B,αargmaxP(C∣F,B,α)P(F)P(B)P(α)/P(C)=F,B,αargmaxL(C∣F,B,α)+L(F)+L(B)+L(α)
其中
L
(
⋅
)
L(·)
L(⋅) 是对数似然
L
(
⋅
)
=
log
P
(
⋅
)
L(·) = \log P(·)
L(⋅)=logP(⋅),删除
P
(
C
)
P(C)
P(C) 项,因为它是关于优化参数的常数。
接下来就是对这个目标的三个似然项建模,然后求导优化
-
L
(
C
∣
F
,
B
,
α
)
L(C|F,B,\alpha)
L(C∣F,B,α)
通过 Matting Equation 和 C 通过高斯分布来衡量颜色的差异
L ( C ∣ F , B , α ) = − ∣ ∣ C − α F − ( 1 − α ) B ∣ ∣ 2 σ C 2 L(C|F,B,\alpha)=-\frac{||C-\alpha F -(1-\alpha)B||^2}{\sigma^2_C} L(C∣F,B,α)=−σC2∣∣C−αF−(1−α)B∣∣2 -
L
(
F
)
L(F)
L(F)
未知区域的 L ( F ) L(F) L(F)可以看作未知区域的每个点是前景点的概率。计算该概率首先需要得到前景的分布,即前景分布的样本点均值和协方差矩阵,然后计算每个点到样本点均值的马氏距离的平方来衡量属于这个前景分布的概率,距离的平方越小,属于前景的“概率”就越大,取负即最大化似然项。
L ( F ) = − ( F − F − ) ⊤ ∑ F − 1 ( F − F − ) F − = 1 N ∑ i = 1 N F i ∑ F = 1 N ∑ i = 1 N ( F i − F − ) ( F i − F − ) ⊤ \begin{aligned} L(F)&=-(F-\overset{-}{F})^{\top}\sum_{F}^{-1}(F-\overset{-}{F})\\ \overset{-}{F}&=\frac{1}{N}\sum_{i=1}^N F_i\\ \sum_F&=\frac{1}{N}\sum_{i=1}^N(F_i-\overset{-}{F})(F_i-\overset{-}{F})^{\top} \end{aligned} L(F)F−F∑=−(F−F−)⊤F∑−1(F−F−)=N1i=1∑NFi=N1i=1∑N(Fi−F−)(Fi−F−)⊤
其中 F − \overset{-}{F} F− 是前景分布的样本点均值向量( 3 × 1 3 \times 1 3×1 向量, RGB三个灰度值); ∑ F \sum_F ∑F是前景分布的样本协方差矩阵( 3 × 3 3 \times 3 3×3 矩阵), N N N 是样本点的数目。
但实际上计算前景分布,采用局部窗口估计(论文中是圆,取局部邻域 200 个点),同时局部窗口内,每个点的权重也是不同的!由两项组成,局部窗口内所有已知的前景点的透明度 α \alpha α 和到窗口中心的距离,即
w i = α i ⋅ G ( i ) w_i=\alpha_i \cdot G(i) wi=αi⋅G(i)
其中,透明度 α \alpha α 越高,越可能是前景点,用于估计前景分布的可信度就越高; G ( i ) G(i) G(i) 是高斯距离加权函数,随着到窗口中心距离增大,权重越小。因此,对上面的似然项做更改
L ( F ) = − ( F − F − ) ⊤ ∑ F − 1 ( F − F − ) F − = 1 W ∑ i = 1 N w i F i ∑ F = 1 W ∑ i = 1 N w i ( F i − F − ) ( F i − F − ) ⊤ W = ∑ i = 1 n w i \begin{aligned} L(F)&=-(F-\overset{-}{F})^{\top}\sum_{F}^{-1}(F-\overset{-}{F})\\ \overset{-}{F}&=\frac{1}{W}\sum_{i=1}^N w_iF_i\\ \sum_F&=\frac{1}{W}\sum_{i=1}^N w_i(F_i-\overset{-}{F})(F_i-\overset{-}{F})^{\top}\\ W&=\sum_{i=1}^n w_i \end{aligned} L(F)F−F∑W=−(F−F−)⊤F∑−1(F−F−)=W1i=1∑NwiFi=W1i=1∑Nwi(Fi−F−)(Fi−F−)⊤=i=1∑nwi -
L
(
B
)
L(B)
L(B)
解法与 L ( F ) L(F) L(F)一致,其中 w i = ( 1 − α i ) G ( i ) w_i=(1-\alpha_i)G(i) wi=(1−αi)G(i),其中,透明度 α \alpha α 越接近0,是背景点的概率就越大。
L ( B ) = − ( B − B − ) ⊤ ∑ B − 1 ( B − B − ) L(B)=-(B-\overset{-}{B})^{\top}\sum_{B}^{-1}(B-\overset{-}{B}) L(B)=−(B−B−)⊤B∑−1(B−B−) - 求解
论文提出的是,使用迭代求解的方法,先假设 α \alpha α 不是变量,对 F , B F,B F,B 求偏导,求解极值处的 F , B F,B F,B ;然后假设 F , B F,B F,B 不是变量,对 α \alpha α 求偏导,求极值处的 α \alpha α ,这样不断迭代直到收敛为止。在这个迭代求解的过程中,找出使得似然函数最大时对应的 F , B , α F,B,\alpha F,B,α 作为最终结果。
α = ( C − B ) ⋅ ( F − B ) ∣ ∣ F − B ∣ ∣ 2 \alpha=\frac{(C-B)\cdot(F-B)}{||F-B||^2} α=∣∣F−B∣∣2(C−B)⋅(F−B)