【IA修补一切】Inpaint Anything: Segment Anything Meets Image Inpainting论文解读

发布于:2024-07-03 ⋅ 阅读:(15) ⋅ 点赞:(0)

        作者来自中国科学技术大学和东部高级研究院。文章提出了一个新的图像修复工具“Inpaint Anything (IA)”,它结合了不同的视觉模型,如Segment Anything Model (SAM)、LaMa、Stable Diffusion (SD)等,以实现更高级的图像编辑功能。

 

论文:paper

代码:code


目录

⛵⛵1.摘要

⭐⭐2.设计IA的动机

🍎🍎3.IA如何实现目标移除、新目标填充和背景替换三种任务?

👍3.1SAM + 现有图像修复方法:实现移除目标

🌷3.2SAM + AIGC :实现填充和替换目标:

🍀🍀4.三种任务步骤

💖4.1移除目标

🍌4.2填充目标

🔔4.3替换目标

🌾🌾5.实验细节

整理不易,欢迎一键三连!!!

送你们一条美丽的--分割线--


 

⛵⛵1.摘要

  • 目的:现代图像修复系统尽管取得了显著进展,但在遮罩选择和空洞填充方面仍然存在挑战。
  • 方法:文章基于Segment-Anything Model (SAM)提出了一种无需遮罩的图像修复新范式,即“点击并填充”,命名为Inpaint Anything (IA)。
  • 特点:IA支持三个主要功能:
    1. Remove Anything:用户点击图像中的任何对象,IA将平滑地移除该对象并填补“空洞”。
    2. Fill Anything:在移除对象后,用户可以提供基于文本的提示,IA将根据这些提示通过驱动如Stable Diffusion等AIGC模型生成相应的内容来填补空洞。
    3. Replace Anything:用户可以选择保留点击选择的对象,并用新生成的场景替换其余的背景

⭐⭐2.设计IA的动机

        作者主要考虑到3方面原因,才设计了IA模型架构,分别是:

  1. 表现SOTA的各种现有的图像修复方法(LaMa,Repaint , MAT , ZITS等等)已经能很好的生成高分辨率修补图像了,但是这些方法都需要非常精细的mask信息,并且它对训练和推理都很重要。
  2. SAM的出现为精细的mask信息获取提供了可能,SAM是一个强大的分割基础模型,可以通过点或框的提示信息,生成高质量的mask,但其mask分割预测尚未被充分探索。
  3. 现有的图像修复方法都只能依据上下文信息填充空洞信息,AIGC大语言模型的出现为创造性地填补移除区域提供了新的机会。

        因此,基于以上三个方面原因,作者将SAM、现有图象修复方法和AIGC模型三者的优势结合起来,提出了用户友好使用的图像修复方法,可以实现目标移除、新目标填充和背景替换3种任务。

🍎🍎3.IA如何实现目标移除、新目标填充和背景替换三种任务?

👍3.1SAM + 现有图像修复方法:实现移除目标

        IA允许用户通过点击界面上的特定对象来轻松移除它们。此外,IA提供了一个选项,使用户可以用上下文数据填充由此产生的“空洞”。为了实现这一点,IA结合了SAM和一些最先进的图像修复算法(如LaMa)。通过腐蚀和膨胀操作手动细化后,由SAM生成的遮罩预测作为输入,为图像修复模型提供清晰的指示,指明需要擦除和填充的对象区域。

🌷3.2SAM + AIGC :实现填充和替换目标

  1. 填充(Filling):在移除对象后,IA提供给用户一个选项,使用上下文数据或“新内容”来填充由此产生的“空洞”。具体来说,使用一个强大的AIGC模型(如Stable Diffusion)通过文本提示生成新的对象。例如,用户可以使用单词“dog”或句子“a cute dog, sitting on the bench”来生成一个新的狗,用这个新生成的狗来填充空洞。
  2. 替换(Replacing):此外,用户还有另一个选项,即保留点击选择的对象,并用新生成的场景替换其余的背景。这个过程支持使用不同的提示方式来激发AIGC模型,例如使用不同的图像作为视觉提示或使用简短的标题作为文本提示。例如,用户可以在保留图像中的狗的同时,将原始的室内背景替换为室外背景。

        IA不仅能够移除图像中的对象,还能够根据用户的文本提示填充或替换内容,提供了一种新的图像编辑和创作的途径。通过结合SAM的分割能力和AIGC模型的生成能力,IA为用户提供了一个强大的工具,以实现更加个性化和创造性的图像处理。 

🍀🍀4.三种任务步骤

💖4.1移除目标

  • 对象移除问题:允许用户通过点击图像中的任何对象来移除它,同时确保结果图像在视觉上是合理的。
  • 流程:包括点击选择对象、使用基础分割模型自动分割对象并创建掩码,以及使用先进的修复模型填充被移除对象留下的空洞。

🍌4.2填充目标

  • 填充任何内容:允许用户用任何他们想要的内容填充图像中的任何对象。
  • 流程:与“Remove Anything”的前两步相同,然后在第三步中输入文本提示,最后使用强大的AIGC模型根据文本提示生成所需的内容。

🔔4.3替换目标

  • 替换任何对象或背景:能够用任何背景替换图像中的任何对象。
  • 流程:与“Fill Anything”类似,但AIGC模型被提示生成与指定对象外部视觉上一致的背景。

🌾🌾5.实验细节

  • 膨胀操作:使用膨胀操作来细化掩码,对于填充对象,较大的掩码给AIGC模型更多的创造空间。
  • 保真度:保持图像的原始质量,例如使用裁剪技术或在调整大小时保持图像的纵横比。
  • 提示的重要性:文本提示对AIGC模型有重要影响,简单提示通常在文本提示修复场景中产生满意的结果。

整理不易,欢迎一键三连!!!

送你们一条美丽的--分割线--

🌷🌷🍀🍀🌾🌾🍓🍓🍂🍂🙋🙋🐸🐸🙋🙋💖💖🍌🍌🔔🔔🍉🍉🍭🍭🍋🍋🍇🍇🏆🏆📸📸⛵⛵⭐⭐🍎🍎👍👍🌷🌷