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

【AIGC专题】Stable Diffusion 从入门到企业级实战0403

一、前言

本章是《Stable Diffusion 从入门到企业级实战》系列的第四部分能力进阶篇《Stable Diffusion ControlNet v1.1 图像精准控制》第03节, 利用Stable Diffusion ControlNet Canny模型精准控制图像生成。本部分内容,位于整个Stable Diffusion生态体系的位置如下图黄色部分所示:

二、定义

ControlNet v1.1 共提供了14个功能模型,每一个模型对应一个适用的业务场景,具体的模型信息如下图所示:

本文介绍的是ControlNet Canny模型,Canny边缘检测算法是一种提取图像中边缘信息的算法,它由John F. Canny于1986年开发,是最广泛使用的边缘检测算法之一。stable diffusion 结合 canny 边缘检测,将经典边缘检测算法与 AI 生成结合的创新尝试,可以获得更好的生成效果,有效拓展了 
Stable diffusion 的应用范围。

三、工作流程

使用ControlNet Openpose工作流程如下图所示:

完整的工作流程描述,如下所示:

  1. 对输入图像进行 canny 边缘检测,得到边缘图像。
  2. 将边缘图像中的边缘线条部分作为 mask,与原图中的非边缘部分组合,得到输入图像的边缘 mask 图。
  3. 将组合后的边缘 mask 图作为条件之一,输入到 stable diffusion 模型中。
  4. stable diffusion 根据边缘信息及其他文本描述,生成包含相应边缘特征的新图像。
  5. 可以创建多个不同边缘样式的 mask,输入到 stable diffusion 中,生成具有这些边缘样式的图片。

四、创作成果

利用ControlNet Canny技术,通过姿态检测,实现的图像精准控制效果如下图所示:

目标建筑和源建筑,具有相同的边缘特征。首先识别源图像的边缘特征,然后根据边缘特征,进行目标图像生成。

五、创作过程

5.1 工作步骤

整个的创作过程可以分为4个步骤,如下图所示:

环境部署:启动ControlNet Canny WebUI服务;

模型下载:下载ControlNet Canny 模型;

操作实战:选择输入、配置参数和调试;

运行演示:展示图像生成的效果;

5.2 环境部署

为了降低集成封装对于我们了解底层实现的影响,我们采用的ControlNet v1.1 原生框架部署,而非集成可视化界面环境,具体的ControlNet Openpose服务程序如下图所示,我们只需要启动该程序即可:

5.3 模型下载

ControlNet v1.1 canny 预训练模型主要有两个,如下图所示:

5.4 操作实战

因为是可视化操作界面,可以一目了然的了解操作的方法和过程,具体细节我们不再赘述,直接上配置界面,如下图所示:

5.5 运行演示

六、小结

本章是《Stable Diffusion 从入门到企业级实战》系列的第四部分能力进阶篇《Stable Diffusion ControlNet v1.1 图像精准控制》第03节, 利用Stable Diffusion ControlNet Canny模型精准控制图像生成。下一节,我们将给大家带来,利用Stable Diffusion ControlNet Depth深度信息精准控制图像生成。

http://www.lryc.cn/news/162510.html

相关文章:

  • linux提权
  • Excel VSTO开发7 -可视化界面开发
  • 英文科技论文写作与发表-投稿到发表(第6章)
  • 2.4.3 【MySQL】设置系统变量
  • 【Redis】2、Redis持久化和性能管理
  • MIT6.S081实验环境搭建
  • spring spring-boot spring-cloud spring-cloud-alibaba之间版本对应关系
  • Docker技术入门 | Part01:Docker简介
  • Apache实现weblogic集群配置
  • Java面试题总结2023
  • 采用ROUANT 方法对 nex-gddp-cmip6 数据进行精度校正
  • 超级电容-电池-超级电容混合储能系统能量管理simulink仿真建模模型
  • 最新仿闲鱼链接+独立后台管理 跳转APP
  • DoIP协议——汽车以太网应用介绍
  • 标准C++day1——名字空间和堆内存管理
  • 草图大师SketchUp Pro 2023 for Mac
  • doris docker环境编译部署
  • java封装国密SM4为 jar包,PHP调用
  • 微信小程序 wx:if使用
  • SpringBoot环境MongoDB分页+去重+获取去重后的原始数据
  • Vuex核心概念 - actions 和 getters
  • 51单片机的简易计算器数码管显示仿真设计( proteus仿真+程序+原理图+报告+讲解视频)
  • Qt版本的冷知识
  • [C++ 学习] 控制信号
  • php如何设置随机数
  • WebGL 纹理——在矩形表面贴上图像
  • javaweb-Filter-listener过滤器与监听器
  • DBeaver 常用快捷键【大全】
  • 数据分析之面试题目汇总
  • 【Vue-Element-Admin】级联查询