SPG-Net: Segmentation Prediction and Guidance Network for Image Inpainting
SPG-Net: Segmentation Prediction and Guidance Network for Image Inpainting
pytorch
引言
利用语义分割获取空洞的边缘信息,进而指导修复其一
(挖个坑)deeplab系列
存在的问题:现有的基于生成模型的方法并没有利用分割信息来约束目标形状,导致边界模糊。
解决方法:提出引入语义分割信息,以消除类间的差异和类内的差异。将修复过程将图像修复过程分为分割预测segmentation prediction (SP-Net)和分割指导segmentation guidance (SG-Net)两步,首先预测待修复区域的分割标签,然后根据分割指导生成修复结果。
语义分割部分:两个公共数据集上进行了广泛的比较:Cityscapes数据集和Helen Face数据集
Cityscapes dataset有2,975张街景图像用于训练,我们使用验证集进行测试,其中包含500张图像。
Helen Face数据集有2000张脸图像训练和100张图像测试。并对两个数据集的分割标签进行了精细标注,用于训练。Cityscapes和Helen Face dataset分别注释了35和11个类别。为了更好地捕捉街景的全球结构,我们将35个类别划分为8个类别,分别是道路、建筑、标志、植被、天空、人、车辆和未标记的其他类别。
为了与现有的方法进行比较,我们训练大小为256x256的图像。对于每一张图像,我们在随机位置应用一个带有单个孔的掩模。洞的大小在图像大小的1/8到1/2之间。为了对整个网络进行训练,我们首先使用了目前最先进的语义分割方法Deeplabv3+,并确定了其模型参数。然后分别对SP-Net和SG-Net进行200个epoch的训练,最后100个epoch的学习速率呈线性衰减。
网络结构
整个框架包含三个步骤,首先,我们使用Deeplabv3+从I_0估计S_0。然后利用分割预测网络(SP-Net)对I_0和S_0进行分割预测得到S_R。最后将S_R传递到分割引导网络(SG-Net)作为输入,对最终结果进行预测。

3.1 Segmentation Prediction Network (SP-Net)
网络架构:
SP-Net的目标是在缺失的洞中预测分割标签映射。SP-Net的生成器基于FCN,但用残块代替了膨胀卷积层。用渐进式扩张因子来增加接受野,提供更广阔的输入视野,以捕获图像的全局结构。具体来说,我们的生成器由4个下采样卷积层、9个残块和4个上采样卷积层组成。内核大小在第一层和最后一层为7,在其他层为3。9个残块前3个残块的膨胀系数为2,后3个残块的膨胀系数为4,后3个残块的膨胀系数为8。下采样层和上采样层的输出通道分别为64、128、256、512和512、256、128、64,残差块的输出通道均为512。除最后一层产生最终结果外,在每个卷积层之间使用ReLU和批处理归一层。最后一层使用softmax函数生成一个概率图,预测每个像素的分割标签的概率。
损失函数:
使用多尺度判别器做高分辨率判别器,即3个相同网络架构但处理图像尺寸不同的判别器。每个鉴别器都是一个完全卷积的PatchGAN三个尺寸分别是原尺寸,二分之一,四分之一。

感知损失

联合损失

3.2 Segmentation Guidance Network (SG-Net)
网络架构:它以一个256x256x3的不完整图像i_0和SP-Net预测的分割标签映射S作为输入。SG-Net与SP-Net共享类似的架构,有4个向下采样卷积层、9个剩余块和4个向上采样层。与SP-Net不同的是,最后一个卷积层使用tanh函数生成像素值范围为[−1,1]的图像,然后将像素值重新调至正常图像值。
损失函数:增加了一个感知损失,基于AlexNet的感知网络来测量两个图像补丁之间的感知差异。

联合损失:

实验结果
定性比较:

定量比较

SPG-Net: Segmentation Prediction and Guidance Network for Image Inpainting的更多相关文章
- [CVPR2017]Online Video Object Segmentation via Convolutional Trident Network
基于三端卷积网络的在线视频目标分割 针对半监督视频目标分割任务,作者采取了和MaskTrace类似的思路,以optical flow为主. 本文亮点在于: 1. 使用共享backbone,三输出的自编 ...
- 论文阅读:EGNet: Edge Guidance Network for Salient Object Detection
论文地址:http://openaccess.thecvf.com/content_ICCV_2019/papers/Zhao_EGNet_Edge_Guidance_Network_for_Sali ...
- Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN全局卷积网络)
作者认为语义分割的两个挑战是分类和定位,而这两个挑战又是比较对立的.对于分类问题,模型需要有变形和旋转不变形,而对于定位问题,模型有需要对变形敏感. 提出的GCN遵循两个主要原则: 1.对定位问题,模 ...
- Foreground-aware Image Inpainting
引言 语义分割得到边缘信息指导修复其三 存在问题:现在的图像修复方法主要的通过周围像素来修复,当修复区域与前景区域(显著物体)有交叠时,由于修复区域缺失前景与背景的时间内容导致修复结果不理想. 提出方 ...
- Semantic Segmentation on Remotely Sensed Images Using an Enhanced Global Convolutional Network with Channel Attention and Domain Specific Transfer Learning
创新点: 1.在GCN(global convolutional network)基础上,把他的backbone替换成更多层的,使其适应中分辨率影像,resnet50,101,152 2.利用 cha ...
- Decoders Matter for Semantic Segmentation:Data-Dependent Decoding Enables Flexible Feature Aggregation
Decoders Matter for Semantic Segmentation:Data-Dependent Decoding Enables Flexible Feature Aggregati ...
- dense prediction
Dense prediction fully convolutional network for sementic segmentation 先用feature extractor 提特征,然后再使 ...
- [Papers] Semantic Segmentation Papers(1)
目录 FCN Abstract Introduction Related Work FCN Adapting classifiers for dense prediction Shift-and-st ...
- Review of Semantic Segmentation with Deep Learning
In this post, I review the literature on semantic segmentation. Most research on semantic segmentati ...
随机推荐
- Loading descriptor for XXX.'has encountered a problem' A internal error occured during:"Loading ....."
在JavaWeb部署Tomcat后启动Jsp发现这样的报错 这可能是Tomcat的运行欢迎有问题,按下图所示打开Tomcat界面.Servers目录就是当前工作空间对所有工程适用的的Tomcat环境, ...
- c# 创建delphi的代码
需求: 有一个专业表,没有插入数据,读取的excel,复制为txt文件 每行读取 并且 将汉字的一转换为数字1 private void barButtonItem4_ItemClick(object ...
- UDP局域网通信的Java实现及Android平台尝试
局域网通信已经很少被他人所提及了,我曾经还尝试过通过蓝牙构建通信网络,这次有机会尝试UDP局域网通信,在这里把一些基本过程和在Android平台上的问题记录一下. 1. UDP基础知识 1.1 什么是 ...
- CSS 三栏自适应布局
CSS布局 这个很基础,方法也很多,要留意的知识点还是有一些. 比如IE6的触发layout *zoom:1 比如使用浮动后的清除浮动 clear:both 需求的延伸也会有一些: 比如三栏等高 ...
- icmp port unreachable
端口不可达: client------>server 结果server回复端口不可达, 由于是icmp报文: 到达client内核协议栈后进入icmp_rcv处理: /* * Deal with ...
- 看看poll 事件掩码 --- review代码时发现掩码不分的错误
事件 描述 是否可作为输入(events) 是否可作为输出(revents) POLLIN 数据可读(包括普通数据&优先数据) 是 是 POLLOUT 数据可写(普通数据&优先数据) ...
- Kafka 生产者分区策略
分区策略 1)分区的原因 (1)方便在集群中扩展,每个 Partition 可以通过调整以适应它所在的机器,而一个 topic 又可以有多个 Partition 组成,因此整个集群就可以适应任意大小的 ...
- mysql一些好的问题
一."N叉树"的N值在MySQL中是可以被人工调整吗? 1, 通过改变key值来调整N叉树中非叶子节点存放的是索引信息,索引包含Key和Point指针.Point指针固定为6个字节 ...
- Idea eclipse 快捷键版
查找/搜索 打开搜索界面 Ctrl+H 查找类文件 Ctrl+Shift+T 最近访问上一个文件 Ctrl+Alt+ ← 最近访问下一个文件 C ...
- 流量控制--5.Classless Queuing Disciplines (qdiscs)
Classless Queuing Disciplines (qdiscs) 本文涉及的队列规则(Qdisc)都可以作为接口上的主qdisc,或作为一个classful qdiscs的叶子类.这些是L ...