【论文笔记】Image Completion with Structure Propagation

概要:
  Image Completion的阅读笔记,包括算法流程以及参考论文的阅读笔记

概览

1.解决思路及技术

  基于块的图像修复容易造成结构不连续,而重要的结构信息可以通过几条曲线来表示,且人眼敏感于这些重要结构,所以对于这些结构应该优先合成。
  用户手动标记从已知区域延申到未知区域的结构曲线,用于标识重要的结构信息,之后沿着曲线,在已知区域中采集源块,用来填补未知曲线上的空间,这一部分填补使用结构传播。之后使用基于块的纹理合成完成其余部分的填充。
  本文将结构传播视为全局优化问题。在结构传播中,如果曲线是单曲线,没有交叉则使用动态编程,此时将curve采样之后,待填补的结构视作(由目标块构成)。如果是多曲线,有交叉则使用置信传播,此时将curve采样之后,待填补的结构视作(由目标块构成)。
  在纹理合成中,利用标记曲线划分开的图像区域,使用texture by number技术,可以避免在纹理合成过程中从无关图像区域获取图像信息。
  为了解决块之间overlapping时的边缘问题,使用photometric correction method
在这里插入图片描述

2.数据结构

符号 含义
C 绘制的结构曲线
Ω 图像未知区域
I 图像已知区域
{p i}Li=0 C上采样的L个p点(锚点)
G={V,ε} 未知区域内采样构成的链表或图,V表示点,ε表示边
P={P(1),P(2)…P(n)},xi∈{1,2,…,N} 在已知区域结构曲线上的sample集,其中心在曲线1到5个像素的窄带内
Es 结构约束,比较源块和未知块曲线的结构相似性
EI 完成约束,边缘合成相似性,边缘块与已知区域重叠部分相似性
E1 Es和EI的线性组合
E2 连续约束、一致性约束,检测相邻块重叠区域的相似性
Mi(xi) DP算法中,累计的从1到i的最短路径长度
Mi,j BP算法中从节点i传播到节点j的信息,是一个N维向量(一共有N个源块),消息Mij指示节点i相信节点j具有相应标签xj的可能性。

结构传播

  结构传播实际上可以看作匹配问题,即从P中选择合适的P(xi)复制到相应的锚点上,选择P的指标为损失函数(能量函数),目标是最小化损失函数,不同的情况具有不同的最小化实现策略,包括DP算法和BP算法。

1.损失函数

在这里插入图片描述
  如同上一部分数据结构中的描述,E1针对节点(patch ),E2针对边(边联系两个点,表示两块patch的重叠部分),E1由结构约束和完成约束线性组合构成,k是权重。结构约束Es计算一条曲线的点到另一条曲线的最短距离的和(源块和待填充块内部都有一条用户绘制的,用于标明结构的曲线,因为这些块都是在这条曲线上采样的),下式为结构约束的计算公式,ci表示目标块中的曲线,cxi表示源块中的曲线,d(ci,cxi)表示ci上的每一个像素,到cxi的最短距离的和,结构约束的最终结果,使用总像素点数相除归一化后得到。
在这里插入图片描述
  完成约束EI计算边缘块与已知区域重叠的相似度,使用SSD计算合成块和已知区域重叠部分的差异,未知区域内设置为0(没有和已知区域重叠的部分),计算部分如下图橙色区域。
在这里插入图片描述
  连续约束E2计算相邻块重叠部分的差异,使用归一化SSD计算,计算区域如下图橙色区域。
在这里插入图片描述

2.DP

  当G是单链表的时候,最小化损失函数的问题可以看作最短路径问题解决,DP算法可以简单理解成在每个节点处选择当前最优的结果,用最短路径和记录cost,最短路径和Mi(xi)定义如下:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值