当前位置: 首页 > news >正文

基于diffusion的图像编辑与inpaint

图像编辑与inpaint

基于diffusion的图像编辑有很多类别,但从我已知的角度来看,主要可以分为三大主要类别语义编辑风格编辑结构编辑。以下是这三种类任务主要的内容:

语义编辑:对象的添加,移除,替换等。例如将照片中的猫换成狗。

风格编辑:修改整体颜色,或者换成制定风格。例如最近比较火的gpt4o生成吉卜力风格图片。

结构编辑:生成新视角,或者修改目标姿态等。

整体而言,图像编辑任务属于一种img2img的任务。其中,inpaint作为一种可以修复制定区域的方法,在上述三种领域中均有不同程度的参与。下面我们将大致讲解下inpaint的原理。

diffusion中inpaint的实现方案

inpaint的输入主要有三个:1. 原始图像 2. mask 3. 需要修复区域的描述,输出就是修复好的图片。由于本人不太了解prompt的设计,因此本文重点关注Inpaint(图像修复) 的实现方案中如何将 Mask(蒙版) 信息注入到模型中,并引导生成过程修复指定区域。以下是两种主流的实现方案:

  1. 直接重新训练一个inpaint模型
  2. 垫图,在生成过程中,非mask区域混合一定比例原图的latent,逐步进行引导。
  3. 用controlnet引导inpaint

下面大致介绍下三种方案的实现路线

重新训练一个inpaint模型

多数模型会选择拓展通道的方式来将mask与原始图像拼接在一起,送入模型并输出最后的结果。例如stable diffusion的inpaint模型中,会将原市的4通道(图像)拓展为9通道(图像+mask后的图像+mask),并以该输入为基础训练模型,最后得到的模型便可以支持inpaint。

优点:效果好,思路简单直接

缺点:直接微调整个模型,算力消耗较大

垫图

垫图的主要思路就是仅在不需要修复的地方拿原图的latent做引导。说白了就是把latent以一定的比例混合进去。需要修复的地方则直接生成,反正有prompt引导,最后生成的结果也不会差。

优点:无需训练模型

缺点:可能生成不够自然,需要调整非mask区域latent混合比例(也可以说是引导强度)

基于controlnet的inpaint

就是构造了一个contolnet,此处不再过多介绍。

http://www.xdnf.cn/news/639613.html

相关文章:

  • pycharm管理项目python环境
  • TCP四次挥手,网络连接关闭的艺术
  • 【医学影像 AI】使用 PyTorch 和 MedicalTorch 实现脊髓灰质分割
  • 一步一图学信号可视化:用Python绘制多频率信号对比图
  • 数据结构 栈的详细解析
  • OC语言学习——Foundation框架回顾及考核补缺
  • JVM虚拟机
  • 在vue中重复组件导入简化方案
  • 2025年5月25日第一轮
  • 数据结构之图结构
  • vllm 2080TI ubuntu环境安装
  • PySide6 GUI 学习笔记——常用类及控件使用方法(常用类图标QIcon)
  • 【大模型应用开发】Qwen2.5-VL-3B识别视频
  • boost之preprocessor
  • 人工智能(AI)技术包括哪些技术
  • TCP 协议的相关特性
  • How to balance work and personal life?
  • 前端流行框架Vue3教程:28. Vue应用
  • PostgreSQL windows安装
  • Vue3编译器:静态提升原理
  • VBox共享文件夹
  • 2025一带一路暨金砖国家技能发展与技术创新大赛第三届企业信息系统安全赛项
  • Go语言--语法基础5--基本数据类型--循环语句
  • [ACTF新生赛2020]easyre
  • Bolt.new:重塑 Web 开发格局的 AI 利器
  • MFC:获取所有打印机的名称(打印机模块-2)
  • 【Siggraph Asia 2023】低光增强Diffusion-Low-Light-main(引入diffusion与DWT) -- part1论文精读
  • AutoGen SelectorGroupChat 示例:社会热搜话题事件榜单
  • 成功解决ImportError: cannot import name ‘DTensor‘ from ‘torch.distributed.tensor‘
  • 选择排序算法研究