IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 泊松融合:Poisson Image Editing -> 正文阅读

[人工智能]泊松融合:Poisson Image Editing

Poisson Image Editing


前面的文章详细地解读了抠图方面的论文 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}} Δ.=?x2?2?+?y2?2?为拉普拉斯算子。

以上最小化问题的求解并不能得到令人满意的图像插值结果,而我们已知前景区域的梯度向量场 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??Ω??f?v2?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=?x?u?+?y?v?,上式即是基于泊松方程的图像融合的核心理论,其中也将梯度场 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 f?g中梯度幅度最大的梯度向量:
    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.??
    下列的图像即是泊松融合在各种具体的图像处理问题中的应用。





  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-08-20 15:05:55  更:2021-08-20 15:06:54 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/1 8:33:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码