泊松融合:Poisson Image Editing

Poisson Image Editing

文章目录

  • Poisson Image Editing
    • Poisson solution to guided interpolation
    • Seamless cloning

前面的文章详细地解读了抠图方面的论文 Poisson Matting,接下来将解读与泊松抠图互为 逆过程的泊松融合算法,与泊松抠图一样,泊松融合的核心也是对满足狄利克雷边界的泊松方程的求解。

Poisson solution to guided interpolation

如下图所示,首先我们定义插值问题:
S S S:是用于融合的背景区域
Ω \Omega Ω:用于融合的前景区域
∂ Ω \partial \Omega Ω:前景区域的边界
f ∗ f^{*} f:背景区域的函数值或者说是像素值
f f f:前景区域的函数值,未知
v \mathbf{v} v:前景区域的梯度场
g g g:为前景区域的函数值
因此可以将求解 Ω \Omega Ω内函数值 f f f的定义为如下最小化问题:
min ⁡ f ∬ Ω ∣ ∇ f ∣ 2  with  f ∣ ∂ Ω = f ∗ ∣ ∂ Ω (1) \min _{f} \iint_{\Omega}|\nabla f|^{2} \text { with }\left.f\right|_{\partial \Omega}=f^{*} \mid \partial \Omega\tag{1} fminΩf2 with fΩ=fΩ(1)
其中 ∇ = [ ∂ ∂ x , ∂ ⋅ ∂ y ] \nabla=\left[\frac{\partial}{\partial x}, \frac{\partial \cdot}{\partial y}\right] =[x,y]为梯度算子,且以上最小化问题的求解需要满足如下狄利克雷边界条件的拉普拉斯方程:
Δ f = 0  over  Ω  with  f ∣ ∂ Ω = f ∗ ∣ ∂ Ω (2) \Delta f=0 \text { over } \Omega \text { with }\left.f\right|_{\partial \Omega}=\left.f^{*}\right|_{\partial \Omega}\tag{2} Δf=0 over Ω with fΩ=fΩ(2)
其中 Δ . = ∂ 2 ∂ x 2 + ∂ 2 ∂ y 2 \Delta .=\frac{\partial^{2}}{\partial x^{2}}+\frac{\partial^{2}}{\partial y^{2}} Δ.=x22+y22为拉普拉斯算子。
泊松融合:Poisson Image Editing_第1张图片
以上最小化问题的求解并不能得到令人满意的图像插值结果,而我们已知前景区域的梯度向量场 v \mathbf v v,即将式(1)所示的最小化问题转化为:
min ⁡ f ∬ Ω ∣ ∇ f − v ∣ 2  with  f ∣ ∂ Ω = f ∗ ∣ ∂ Ω (3) \min _{f} \iint_{\Omega}|\nabla f-\mathbf{v}|^{2} \text { with }\left.f\right|_{\partial \Omega}=\left.f^{*}\right|_{\partial \Omega}\tag{3} fminΩfv2 with fΩ=fΩ(3)
将式(1)中对函数 f f f的约束方式实际上是在约束 Ω \Omega Ω区域的平滑性,因此插值出来的结果会相当模糊,而式(3)中的即约束了 ∂ Ω \partial \Omega Ω区域过度的平滑性,也约束了 Ω \Omega Ω区域内函数梯度场与原梯度场 v \mathbf v v间的相似性,此方程的解是满足以下狄利克雷边界条件的泊松方程:
Δ f = div ⁡ v  over  Ω ,  with  f ∣ ∂ Ω = f ∗ ∣ ∂ Ω \Delta f=\operatorname{div} \mathbf{v} \text { over } \Omega, \text { with }\left.f\right|_{\partial \Omega}=f^{*} \mid \partial \Omega Δf=divv over Ω, with fΩ=fΩ
其中 div ⁡ v = ∂ u ∂ x + ∂ v ∂ y \operatorname{div} \mathbf{v}=\frac{\partial u}{\partial x}+\frac{\partial v}{\partial y} divv=xu+yv,上式即是基于泊松方程的图像融合的核心理论,其中也将梯度场 v \mathbf v v称为导向场(guidence field)

Seamless cloning

在以上对泊松抠图的理论描述中,为理解方便,我直接采用了泊松融合的字眼,但原论文将其描述为一个统一的图像处理框架,将其称为泊松插值,而泊松融合也是以上泊松插值框架的在图像处理中最常见的应用,其中有两种导向梯度场的计算方式:

  • Importing gradients:直接选择前景区域的梯度作为导向梯度:
    v = ∇ g \mathbf v = \nabla g v=g
  • Mixing gradients:保留 Ω \Omega Ω区域中 f ∗ 、 g f^{*}、g fg中梯度幅度最大的梯度向量:
    x ∈ Ω , v ( x ) = { ∇ f ∗ ( x )  if  ∣ ∇ f ∗ ( x ) ∣ > ∣ ∇ g ( x ) ∣ ∇ g ( x )  otherwise.  \mathbf{x} \in \Omega, \mathbf{v}(\mathbf{x})=\left\{\begin{array}{ll} \nabla f^{*}(\mathbf{x}) & \text { if }\left|\nabla f^{*}(\mathbf{x})\right|>|\nabla g(\mathbf{x})| \\ \nabla g(\mathbf{x}) & \text { otherwise. } \end{array}\right. xΩ,v(x)={f(x)g(x) if f(x)>g(x) otherwise. 
    下列的图像即是泊松融合在各种具体的图像处理问题中的应用。
    泊松融合:Poisson Image Editing_第2张图片
    泊松融合:Poisson Image Editing_第3张图片
    泊松融合:Poisson Image Editing_第4张图片
    泊松融合:Poisson Image Editing_第5张图片
    泊松融合:Poisson Image Editing_第6张图片
    泊松融合:Poisson Image Editing_第7张图片

你可能感兴趣的:(图像处理,机器学习,算法,计算机视觉,图形学,图像处理)