免费个人网站搭建,完整网页开发,wordpress调用随机缩略图,局网站建设自查论文#xff1a;https://arxiv.org/abs/2304.03246 code:http://instinpaint.abyildirim.com/ 文章目录 AbstractIntroductionRelated WorkDataset GenerationMethodPS Abstract
图像修复任务是指从图像中擦除不需要的像素#xff0c;并以语义一致且逼真的方式填充它们。传统…论文https://arxiv.org/abs/2304.03246 code:http://instinpaint.abyildirim.com/ 文章目录 AbstractIntroductionRelated WorkDataset GenerationMethodPS Abstract
图像修复任务是指从图像中擦除不需要的像素并以语义一致且逼真的方式填充它们。传统上希望被擦除的像素由二值化掩码定义。从应用的角度来看用户需要为他们想要去除的对象生成这些掩码这可能耗时且容易出错。在这项工作中我们对一种图像修复算法感兴趣它可以根据自然语言输入来估计要移除的对象并且同时移除它。为此首先我们构建了一个名为GQA-Inpaint的数据集用于这个任务该数据集即将发布。其次我们提出了一种新颖的修复框架名为Inst-Inpaint它可以根据以文本提示形式给出的指令从图像中去除对象。我们设定了各种基于GAN和扩散的基准模型并在合成和真实图像数据集上进行实验。我们使用不同的评估指标来衡量模型的质量和准确性并展示了显著的定量和定性改进。项目的网页链接http://instinpaint.abyildirim.com/
该论文主要实现了以下工作 提出了一项新的任务——指令式图像修复研究了通过文本指令来执行图像修复任务而无需使用传统的二值掩码。 构建了一个新的图像修复数据集——GQA-Inpaint该数据集包含复杂的真实图像而不需要任何人工标注使用了GQA数据集的场景图信息。 开发了一种新颖的条件扩散模型——Inst-Inpaint该模型可以在给定图像和文本指令的情况下执行图像修复并将图像修复问题转化为条件扩散模型的训练任务。 使用U-Net架构在模型中采用U-Net架构用于特征提取和图像修复。 使用交叉注意机制为了实现文本条件的修复任务使用了交叉注意机制将文本指令与模型的特征进行关联。 实现细节详细描述了模型的实现和训练细节包括对CLEVR和GQA-Inpaint数据集上的模型进行训练。
这篇论文提出了一种新的指令式图像修复任务并开发了一种新颖的条件扩散模型以在给定图像和文本指令的情况下执行图像修复。通过构建新的数据集并进行实验证明了该方法的有效性。
Introduction
图像修复指的是从图像中移除不需要的对象和/或填补图像中缺失的区域。这被认为是极具挑战性的因为修复后的图像中的被修复区域应该与其他部分和谐一致。在进行像素填充时修复方法应该考虑全局图像内容。传统的研究方法使用二值掩码来标示缺失区域。近期的图像修复方法利用深度学习框架配备生成先验并将修复任务构建为一个监督学习问题。训练数据包括作为源数据和目标数据的输入和被擦除图像对并且模型通常使用基于重建的目标进行训练。尽管过去几年来图像修复方法在性能上不断改进但这些方法仍然需要在推断时提供用户指定的掩码。这些掩码可以以细或厚的刷笔涂抹或方框的形式提供但绘制这些掩码通常很繁琐且容易出错。
近期基于文本的图像生成和编辑引起了广泛关注。特别是在训练时使用大规模的图像-文本数据像DALL·E2、Stable Diffusion、Imagen和Parti等模型展示了卓越的生成能力并有效地捕捉了图像的组成结构。此外使用文本可以更自然和用户友好地控制图像。研究人员还表明这些方法可以通过额外条件化模型的方式轻松地用于图像修复只需在模型上附加二值掩码并告诉模型如何在掩码内填充内容。然而这种方法更适合于操作对象的属性或添加新的场景元素但可能不太适合于移除对象。例如请参见Blended Latent Diffusion模型。
在本工作中我们引入了一项称为指令式图像修复的新任务其中只通过文本指令来指定要移除的不需要的对象无需使用二值掩码见图1。为了解决这个问题我们首先使用GQA数据集构建数据生成流程创建一个新的基准数据集称为GQA-Inpaint。其次我们设计了一种单阶段深度修复网络称为Inst-Inpaint它可以使用文本指令从图像中移除对象。与现有的修复方法相比我们的模型不需要掩码也不需要明确地预测掩码。总体而言我们的贡献如下 我们提出了一种端到端的图像修复框架Inst-Inpaint它可以仅基于文本指令对给定图像中的对象进行移除。我们的方法的一些示例输出如图1所示。 我们生成了一个真实图像数据集GQA-Inpaint用于训练和评估所提出的指令式图像修复任务的模型。在这里我们使用了最初用于视觉推理的GQA数据集并利用提供的场景图使用了最先进的实例分割和修复方法生成配对的训练数据。 我们进行了大量实验展示了我们框架的有效性。为了比较结果我们使用了多种指标来评估各种基准模型其中包括一种基于CLIP的新型修复评分。我们在基于文本的图像修复方法方面取得了显著的改进超越了现有的最先进方法。
Related Work
基于扩散的生成模型。在配备大规模文本-图像配对数据集的情况下扩散模型在图像合成方面取得了令人印象深刻的结果。这些模型的图像合成能力已扩展到视频生成和图像编辑任务。我们的工作解决了基于文本指令的修复任务并与编辑任务更相关。SDEdit是首批使用文本提示和扩散模型对真实图像进行编辑的作品。它对输入图像应用噪声然后根据文本提示对其进行去噪。鉴于加噪-去噪的过程内容保留并没有严格实现。Prompt-to-prompt editing展示了通过对注意力机制应用操作可以使用文本提示对生成的图像进行编辑。InstructPix2Pix通过Prompt-to-prompt生成数据集并微调扩散模型以使用配对数据编辑图像。
图像修复。图像修复任务的常见设置包括使用二值掩码来定义被修复的像素。原始图像像素被去除新的像素根据这些掩码来生成。此领域以前主要由生成对抗网络GANs主导。基于GAN的模型大多输出确定性结果因为这些模型还通过重建损失进行训练以提高稳定性。最近也有使用GAN实现多样性的方法但它们是在单个对象数据集如面部数据上训练的。它们并未扩展到修复多样的场景因为GAN训练非常困难。
最近扩散模型也进入了图像修复领域并取得了令人期待的结果。已经证明预训练的无条件扩散模型可以通过Repaint模型对图像进行修复。Repaint修改去噪过程以使生成过程依赖于未被擦除的图像内容。
与我们工作同时进行的是X-Decoder它可以同时处理输入图像和文本用于指导分割。X-Decoder可以根据提示对图像进行分割并在与扩散模型结合时可以擦除分割的对象。
Dataset Generation
我们的目标是构建一个真实图像数据集用于训练和评估基于指令的图像修复模型。
目前存在一些可以用于此任务的数据集例如CoDraw和CLEVR数据集。然而这些数据集中的图像都是由几何对象或剪贴艺术品组成的合成场景。虽然这些相对简单的图像可以被视为构建模型的很好工具但在它们上面训练的模型并不直接适用于真实图像的编辑。
为了缓解现有数据集的这一缺点在本工作中我们提议构建一个新的图像修复数据集其中包含复杂的真实图像并且不使用任何人工标注。我们将这个数据集称为GQA-Inpaint因为我们选择在GQA数据集的基础上构建它。
具体而言GQA数据集包含85,000个真实世界图像及其对应的场景图。场景图通过以对象、属性和关系来表示图像的简化表示。场景图中的每个节点表示一个对象并且其位置和大小由边界框指定。此外每个对象都与一些属性相关联编码了它的颜色、形状或材质。连接节点和对象的边通常表示这些对象之间的空间关系。
我们为所提议的数据集设计的数据生成流程如图2所示严重依赖于场景图的表示。具体而言在修复任务中我们从场景图的节点中选择目标对象。虽然GQA数据集中已经提供了对象的边界框但我们观察到直接将它们用作修复的掩码会导致不理想的结果。因此为了获得更高质量的目标图像我们提取每个对象的分割掩码并将其用于从图像中移除对象。此外我们从提供的场景图生成用作指令的文本提示。以下是所有这些步骤的简要描述。更多细节可以在补充材料中找到。
从场景图中选择对象。具体而言在选择目标对象时我们通常考虑数据集中最常见的对象并忽略边界框太小或太大的对象。
提取分割掩码。我们使用Detectron2和Detic框架获得对象的分割掩码。为了涵盖广泛的对象类别我们使用在COCO和LVIS数据集上训练的多个实例分割模型对对象进行分割。
我们选择最准确的分割结果。为了衡量准确性我们利用数据集提供的边界框真值。我们比较IoU分数并选择较大的值。
从图像中移除对象。在这一步中我们的目标是从图像中移除对象。为此我们使用最先进的图像修复方法CRFill因为它具有计算效率高和高质量结果的特点。
在进行修复之前我们首先使用CascadePSP对预测的掩码进行优化然后使用11×11像素的形态学膨胀来扩展边缘的分割掩码以使掩码更好地捕捉对象。
生成文本提示。GQA数据集中包含对象之间的关系表示如图2所示。如果所选择的对象是其类别的单个实例我们不使用任何关系简单地创建提示为“移除[对象]”。如果图像中存在多个相同对象类别的实例我们根据场景图中的关系构建提示以指定特定的实例。 Method
为了解决提出的指令式图像修复任务我们开发了一种新颖的条件扩散模型命名为Inst-Inpaint它接受图像和文本指令作为输入。训练这个模型需要一个配对数据集其中包括源图像和目标图像以及相应的文本提示。我们基于潜在扩散模型构建我们的模型因为它具有计算效率高的优点。具体而言潜在扩散模型包括一个编码器E和一个解码器D分别用于将图像投影到较低的潜在维度并对图像进行重构。这是一个变分自编码器并作为第一步进行单独训练。 如上所述我们用于指令式图像修复的模型可以解释为条件扩散模型。也就是说我们用两个额外的条件来训练我们的模型源图像和文本提示。在训练过程中目标图像通过编码器得到z0如图2所示。源图像s也使用第一阶段的相同预训练编码器进行编码。编码特征E(s)在每个时间步骤与zt进行拼接。对于文本条件我们使用交叉注意机制。基于指令的对象去除的目标如下 实现和训练细节。Inst-Inpaint将从前向扩散过程中获得的目标图像潜在编码zt在时间步骤t上与源图像特征E(s)进行拼接以预测上一个时间步骤zt−1的潜在编码。对于文本条件的修复任务Inst-Inpaint使用BERT tokenizer对文本进行分词并通过使用这些标记作为输入从头开始学习一个Transformer模型来获取指令嵌入。这些嵌入在特定U-Net层的交叉注意机制中使用。
我们在CLEVR和GQA-Inpaint数据集上分别训练了两个Inst-Inpaint模型。CLEVR模型的第一阶段模型是一个变分自编码器从头开始训练使用数据集中所有指令的源图像和目标图像的组合进行训练。与CLEVR模型不同GQA-Inpaint模型使用预训练的VQGAN模型1在Open Images数据集上进行训练并具有16384个码书条目。
在CLEVR模型的第二阶段模型中我们定义了一个包含八层的Transformer用于获得指令嵌入并使用四个注意头的交叉注意机制来学习指令嵌入和用于修复过程的激活层之间的关系。GQA-Inpaint模型的架构比CLEVR模型更复杂由十六层Transformer和八个注意头的交叉注意机制组成。更多的训练细节可以在补充材料中找到。
PS
这篇论文的实现效果肯定不容易实现读读有一定启发就好。论文后面的内容这里不再翻译。