Stable Diffusion - 图像控制插件 ControlNet (OpenPose) 配置与使用

news2024/9/27 5:55:51

欢迎关注我的CSDN:https://spike.blog.csdn.net/
本文地址:https://spike.blog.csdn.net/article/details/131591887

ControlNet

论文:Adding Conditional Control to Text-to-Image Diffusion Models

ControlNet 是神经网络结构,用于控制预训练的大型扩散模型,以支持额外的输入条件。ControlNet 以端到端的方式学习任务特定的条件,即使训练数据集很小(< 50k),学习也是稳健的。此外,训练一个 ControlNet 和微调一个扩散模型一样快,而且,模型可以在个人设备上训练。或者,如果有强大的计算集群可用,模型可以扩展到大量(百万到十亿)的数据。Stable DIffusion 这样的大型扩散模型可以用 ControlNets 来增强,以实现条件输入,如边缘图、分割图、关键点等。这可能丰富了控制大型扩散模型的方法,并进一步促进相关应用。Stable DIffusion 迈向工业化的关键模型 ControlNet 技术,使得图像效果更加稳定。


1. 配置 ControlNet 扩展

ControlNet模型 - Huggingface: https://huggingface.co/lllyasviel/ControlNet

5 个重要的控制模型:

  1. OpenPose:动作姿势
  2. Depth:深度
  3. Canny:边缘检测 (线稿)
  4. Softedge:柔和边缘
  5. Scribble:涂鸦乱画

下载模型,参考,常用包括 14 个模型:

control_sd15_openpose.pth: https://huggingface.co/lllyasviel/ControlNet/blob/main/models/control_sd15_openpose.pth

下载扩展,参考:AICG - Stable Diffusion 的扩展插件 (Extensions) 的配置与使用

  • 需要配置更新源:https://gitee.com/akegarasu/sd-webui-extensions/raw/master/index.json

安装扩展选择,搜索 ControlNet,选择 sd-webui-controlnet 进行安装,重启即可。安装成功如下:

Extensions

相关日志:

2023-07-06 19:37:27,089 - ControlNet - INFO - ControlNet v1.1.231
ControlNet preprocessor location: /nfs/chenlong/stable_diffusion/stable-diffusion-webui/extensions/sd-webui-controlnet/annotator/downloads
2023-07-06 19:37:27,340 - ControlNet - INFO - ControlNet v1.1.231
Image Browser: ImageReward is not installed, cannot be used.  # 无关紧要

注意,需要检查 ControlNet 是否安装成功,如果失败,则需要删除,并重新安装。

ControlNet 作为插件,在软件的下方插件处显示,即:

ControlNet

预测模型,需要存储至 stable-diffusion-webui\extensions\sd-webui-controlnet\models,其中,包含同名的 yaml 文件。常用包括 14 个模型:

control_v11e_sd15_ip2p.pth
control_v11e_sd15_shuffle.pth
control_v11f1e_sd15_tile.pth
control_v11f1p_sd15_depth.pth
control_v11p_sd15_canny.pth
control_v11p_sd15_inpaint.pth
control_v11p_sd15_lineart.pth
control_v11p_sd15_mlsd.pth
control_v11p_sd15_normalbae.pth
control_v11p_sd15_openpose.pth
control_v11p_sd15_scribble.pth
control_v11p_sd15_seg.pth
control_v11p_sd15_softedge.pth
control_v11p_sd15s2_lineart_anime.pth

在 ControlNet 插件中,除了模型,尺寸占比最重的就是 annotator/downloads 的文件夹,大约 6.1 G。如果下载失败,请手动下载,即:

hed/
leres/
lineart/
lineart_anime/
manga_line/
midas/
mlsd/
normal_bae/
oneformer/
openpose/
pidinet/
uniformer/
zoedepth/

2. ControlNet 的 OpenPose 功能

2.1 配置基础模型

基础模型 AbyssOrangeMix3A1B

  • AbyssOrangeMix2 - SFW/Soft NSFW
  • 最新版本:v3,即 AOM3A1B_orangemixs.safetensors,这个版本作者推荐 (This model is my latest favorite)

下载模型:

cd stable-diffusion-webui/models/Stable-diffusion
bypy downfile /stable_diffusion/base_models/AOM3A1B_orangemixs.safetensors AOM3A1B_orangemixs.safetensors

提示词:

(sfw:1.2), absurdres, 1girl, ocean,white dress, long sleeves,light smile,
Negative prompt: nsfw, (worst quality:1.2), (low quality:1.2), (lowres:1.1),(monochrome:1.1),(greyscale),multiple views, comic,sketch,animal ears, pointy ears, blurry, transparent,see through,cleavage,bad hands,
Steps: 30, Sampler: DPM++ SDE Karras, CFG scale: 7, Seed: 2586500704, Size: 512x768, Model hash: 5493a0ec49, Model: AOM3A1B_orangemixs, Version: v1.4.0

示例图像:

Image

2.2 使用 OpenPose 功能

添加 ControlNet,固定姿势之后的效果:

  • 选择 启用
  • 选择 OpenPose
  • 选择预处理器 OpenPose
  • 选择模型:control_v11p_sd15_openopenpose
  • 控制权重引导介入时机,控制 Control Net 的影响,可以适当调低,例如 0.50.05
  • 其余选择默认

即可:
Img

添加姿势引导图,如下:

Img

输出相同姿势的示例图像,如下:

在 AbyssOrangeMix2 模型中,在抬起手臂时,自动生成太阳帽,然而,提示词中并没有太阳帽。是 AbyssOrangeMix2 模型的问题,而不是 ControlNet OpenPose 生成图像的问题。

Abyss

2.3 测试其他模型输出

测试其他模型,并未出现添加 太阳帽 的情况,例如 墨幽人造人_v1010_完整版

Prompt:

(sfw:1.2), absurdres, 1girl, ocean,white dress, long sleeves,light smile,
Negative prompt: EasyNegative, (badhandv4:1.25),ng_deepnegative_v1_75t,
Steps: 30, Sampler: DPM++ SDE Karras, CFG scale: 7, Seed: 2586500704, Face restoration: CodeFormer, Size: 512x768, Model hash: 6a226dd292, Model: 墨幽人造人_v1010_完整版, ControlNet 0: "preprocessor: openpose_full, model: control_v11p_sd15_openpose [cab727d4], weight: 0.5, starting/ending: (0.05, 1), resize mode: Crop and Resize, pixel perfect: False, control mode: Balanced, preprocessor params: (512, -1, -1)", Version: v1.4.0

Used embeddings: EasyNegative [119b], badhandv4 [dba1], ng_deepnegative_v1_75t [1a3e]

示例图像:

Image

使用 ControlNet OpenPose 增加姿势约束的示例图像,姿势一致,如下:

姿势统一

2.4 使用 Pose 图

同时,点击红色小点(Run Preprocessor),即可生成,姿势 (Pose) 图,保存之后,可以复用,即:

在这里插入图片描述

即:

Pose

在使用姿势图时,需要关闭 预处理器,但是,要保留所使用的模型,才能运行,使用姿态图的效果,与使用原图的效果,相同,即:

Pose


3. 其他

3.1 OrangeMixs 模型

下载地址: AOM3A1B_orangemixs.safetensors,这个版本作者推荐 (This model is my latest favorite),动漫风格为主。

  • Civitai: AbyssOrangeMix2 - SFW/Soft NSFW
  • Liblibai: https://www.liblibai.com/modelinfo/e1a7c4c0e169321ce8441964951e56e4

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x4qzkMO4-1688697521233)(/Users/wang/Library/Application Support/typora-user-images/image-20230707083557100.png)]

absurdres, (1girl), ocean, white dress, sun hat, smile, (realistic:0.75), (waving:0.9)
Negative prompt: nsfw, (worst quality, low quality:1.4), (lip, nose, tooth, rouge, lipstick, eyeshadow:1.4), (blush:1.2), (jpeg artifacts:1.4), (depth of field, bokeh, blurry, film grain, chromatic aberration, lens flare:1.0), (1boy, abs, muscular, rib:1.0), greyscale, monochrome, dusty sunbeams, trembling, motion lines, motion blur, emphasis lines, text, title, logo, signature,badhandv4,
Steps: 40, Sampler: DPM++ 2M SDE Karras, CFG scale: 7, Seed: 2434999601, Size: 1024x512, Model hash: 5493a0ec49, Model: AOM3A1B_orangemixs, Version: v1.4.0

v2 版本,liblibai下载:

wget https://liblibai-online.liblibai.com/models/57d684f2ceff9b12f1439bffa2b13d5ece21a19a.safetensors -O NSFW_AbyssOrangeMix2_sfw.safetensors

v2 和 v3 的差别,v3更加柔和,似乎添加特殊的滤镜。

AbyssOrangeMix (AOM) 是一种能够生成高质量、高度逼真的插图的 AI 模型,可以生成手工无法绘制的精美详细的插图,还可以用于多种目的,这使得它对于设计和艺术品非常有用。此外,还提供了一种无与伦比的新表达方式,可以生成多种类型的插图,以满足广泛的需求。我鼓励您使用 “Abyss” 来使您的设计和艺术品更加丰富和更高质量。

V3 Prompt

  • Negative prompts is As simple as possible is good.
    • (worst quality, low quality:1.4)
    • Using “3D” as a negative will result in a rough sketch style at the “sketch” level.
    • Use with caution as it is a very strong prompt.
  • How to avoid Real Face: (realistic, lip, nose, tooth, rouge, lipstick, eyeshadow:1.0), (abs, muscular, rib:1.0),
  • How to avoid Bokeh: (depth of field, bokeh, blurry:1.4)
  • How to remove mosaic: (censored, mosaic censoring, bar censor, convenient censoring, pointless censoring:1.0),
  • How to remove blush: (blush, embarrassed, nose blush, light blush, full-face blush:1.4),
  • How to remove NSFW effects: (trembling, motion lines, motion blur, emphasis lines:1.2),
  • 🔰Basic negative prompts sample for Anime girl ↓
    • v1: nsfw, (worst quality, low quality:1.4), (realistic, lip, nose, tooth, rouge, lipstick, eyeshadow:1.0), (dusty sunbeams:1.0), (abs, muscular, rib:1.0), (depth of field, bokeh, blurry:1.4),(motion lines, motion blur:1.4), (greyscale, monochrome:1.0), text, title, logo, signature
    • v2: nsfw, (worst quality, low quality:1.4), (lip, nose, tooth, rouge, lipstick, eyeshadow:1.4), (blush:1.2), (jpeg artifacts:1.4), (depth of field, bokeh, blurry, film grain, chromatic aberration, lens flare:1.0), (1boy, abs, muscular, rib:1.0), greyscale, monochrome, dusty sunbeams, trembling, motion lines, motion blur, emphasis lines, text, title, logo, signature,
  • Sampler: “DPM++ SDE Karras” is good Take your pick
  • Steps:
    • DPM++ SDE Karras: Test: 12~ ,illustration: 20~
    • DPM++ 2M Karras: Test: 20~ ,illustration: 28~
  • Clipskip: 1 or 2
  • CFG: 8 (6~12)
  • Upscaler :
    • Detailed illust → Latenet (nearest-exact)
    • Denoise strength: 0.5 (0.5~0.6)
    • Simple upscale: Swin IR, ESRGAN, Remacri etc…
    • Denoise strength: Can be set low. (0.35~0.6)

卡通图像,不要选择面部重绘,否则脸部模糊


3.2 BugFix & 参考

Bug1: 遇到 WARNING: Building wheel for fvcore failed: [Errno 28] No space left on device: '.cache/pip/wheels/f9'

即,表示安装pip文件.cache已满,可以重新指定目录。

参考:

  • GitHub - Image Browser: ImageReward is not installed, cannot be used.
  • [Errno 28] No space left on device
  • 知乎 - 2023-03-24_5分钟学会Stable Diffusion强大的ControlNet插件
  • 站酷 - Control Net最全教程|神器辅助生成精致绘图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/738396.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

mybatis联查 字段重复问题 查询出来一致

联查的数据是不同&#xff0c;但是返回出来的数据是相同的 排查原因&#xff1a; 两个不同的实体类都有同一个字段code 解决办法&#xff1a; 在数据库字段column字段起个别名就可以

Spring 用注解更简单存取对象

Spring 用注解更简单存取对象 ​ 上一篇文章是最原始的创建使用&#xff0c;这篇主要是讲 Spring 更简单的存储和读取对象的核心是使用注解 ,也是日常生活企业用的最多的方法 “注解” 所以这篇的内容是很重要的 &#xff01;&#xff01;&#xff01; 文章目录 Spring 用注解…

基础篇--单片机简介

单片机简介 视频教程 单片机是什么 单片机&#xff1a;Single-Chip Microcomputer 单片微型计算机&#xff0c;是一种集成电路芯片 单片机有什么用&#xff1f; 单片机发展历程 单片机发展超势 CISC Vs RISC CISC和RISC举例 https://wenku.baidu.com/view/b074b0ed998fcc22b…

浅谈Acrel-2000电力监控系统在配电工程中的应用 安科瑞 许敏

摘 要&#xff1a;随着社会经济的快速发展&#xff0c;我国变电站正朝着现代化的方向不断发展&#xff0c;自动化设备以及继电保护装置凭借自身优异性能而获得广泛应用。本文介绍的AM5SE系列的微机保护装置&#xff0c;可以针对中原科技城智慧能源配电工程中不同保护对象提供对…

全志f1c200s嵌入式驱动开发(原理图)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 熟悉全志soc的同学都知道,除了v3s之外,其实还有很多性价比很高的soc。这里面就包含了f1c200s。之前的v3s,也就是我们所说的licheepi上面的soc,反响很不错。后期又出了一个liche…

【数据结构与算法】力扣:二叉树的层序遍历

给你二叉树的根节点 root &#xff0c;返回其节点值的 层序遍历 。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xff09;。 示例1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;[[3],[9,20],[15,7]] 示例 2&#xff1a; 输入&a…

纷享销客携手新奥动力,赋能能源装备制造业企业增长再提速

近日&#xff0c;纷享销客与新奥能源动力科技&#xff08;上海&#xff09;有限公司&#xff08;以下简称&#xff1a;新奥动力&#xff09;售后数字化平台项目启动仪式在上海顺利召开&#xff0c;新奥动力和纷享销客双方多位高管共同出席了当天的启动会&#xff0c;双方就CRM建…

leetcode链表刷题记录

题单&#xff1a; 一&#xff0c;移除链表元素 题目描述 给你一个链表的头节点 head 和一个整数 val &#xff0c;请你删除链表中所有满足 Node.val val 的节点&#xff0c;并返回 新的头节点 。 题目接口&#xff1a; /*** Definition for singly-linked list.* struct Lis…

轻量化与强度:挑选骑行爱车的科学平衡之道

在自行车运动的大家庭中&#xff0c;挑选一辆既轻量化又强度又够的自行车是一项关键的任务。那么&#xff0c;如何在轻量化与强度的矛盾中寻找这个科学的平衡点呢&#xff1f;让我们跟随本文&#xff0c;一起探讨如何挑选骑行爱车的科学之道。 首先&#xff0c;我们需要明确&am…

第4章 SSD核心技术:FTL 4.3-4.5

4.3 垃圾回收 4.3.1 垃圾回收原理 WA&#xff08;Write Amplification&#xff09;&#xff0c;即写放大。 OP&#xff08;Over Provisioning&#xff09;&#xff0c;即预留空间。 4.3.2 写放大 对于空盘来说&#xff08;未触发GC&#xff09;&#xff0c;写放大一般为1&…

基于DarkFace数据集的高精度人脸检测系统(PyTorch+Pyside6+YOLOv5模型)

摘要&#xff1a;基于DarkFace数据集的高精度人脸检测系统可用于日常生活中来检测与定位人脸目标&#xff0c;利用深度学习算法可实现图片、视频、摄像头等方式的人脸目标检测识别&#xff0c;另外支持结果可视化与图片或视频检测结果的导出。本系统采用YOLOv5目标检测模型训练…

volatile 原理

volatile 的底层实现原理是内存屏障&#xff0c;Memory Barrier&#xff08;Memory Fence&#xff09; 对 volatile 变量的写指令后会加入写屏障对 volatile 变量的读指令前会加入读屏障 如何保证可见性 写屏障&#xff08;sfence&#xff09;保证在该屏障之前的&#xff0c…

液晶仪表业务去年赚了4个亿,又一家汽车电子厂商冲刺IPO

液晶仪表&#xff0c;有多赚钱&#xff1f; 本周&#xff0c;随着天有为电子首次对外发布IPO招股说明书&#xff0c;这家专注于电子式组合仪表、全液晶组合仪表和双联屏仪表等产品的传统汽车仪表企业&#xff0c;揭开了过去几年的财务数据。 作为一家传统汽车仪表转型升级的典…

sqlserver导入外部数据文件

1、外部数据文件存为txt格式&#xff0c;可以带中文标题保存。 2、登录链接数据库服务器&#xff0c;选择任意一个数据库右键-任务-导入数据-数据源&#xff1a;选择Flat File Sourse 平面文件.-文件名&#xff1a;选择文件路径-浏览一下列是否对应上。-下一步-目标&#xff1a…

WebStorm配置代码模板【以vue模板为例,提供vue代码模板】

配置过程 引言 为了便于开发&#xff0c;提高生产效率&#xff0c;我们通常会复制粘贴一些共同代码&#xff0c;在WebStorm中&#xff0c;可以将这些共同代码制作成模板&#xff0c;在使用的时候&#xff0c;只需要输入关键字点击按键即可将模板的代码粘贴到代码文件中&#…

免费申域名

申请地址&#xff1a;https://nic.eu.org/ 英国人地址生成器&#xff1a;https://www.shenfendaquan.com/Index/index/ying_guo_shen_fen_sheng_cheng 1、注册 填写注册信息 进入注册页面&#xff0c;输入注册信息。这里我们打开英国人地址生成器&#xff0c;用英国的信息注…

数据库应用:MySQL数据库使用与管理

目录 一、理论 1.MySQL基本操作 2.数据类型 2.使用MySQL数据库 二、实验 1.查看数据库结构 2.创建及删除库和表 3.管理表中的数据记录 4.修改表名和表结构 5.查看、修改字符集 三、问题 1.表导入新记录报错 四、总结 一、理论 1.MySQL基本操作 &#xff08;1&…

【sql注入-延时注入】sleep()、benchmark()函数 延时注入

目录 sleep()、benchmark()延时注入 一、语法介绍&#xff1a; 二、延时注入 三、不同数据库 网络安全小圈子 sleep()、benchmark()延时注入 一、语法介绍&#xff1a; 版本&#xff1a; sleep() MySQL>5.7.8 benchmark() MySQL>5.7.5 语法&#xff1a; 使用…

孤立随机森林(Isolation Forest)(Python实现)

目录 1 简介 2 孤立随机森林算法 2.1 算法概述 2.2 原理介绍 2.3 算法步骤 3 参数讲解 4 Python代码实现 5 结果 1 简介 孤立森林&#xff08;isolation Forest&#xff09;是一种高效的异常检测算法&#xff0c;它和随机森林类似&#xff0c;但每次选择划分属性和划分点&…

Linux5.95 ELK企业级日志分析系统

文章目录 计算机系统5G云计算第四章 LINUX ELK 企业级日志分析系统一、ELK 概述1.ELK 简介1&#xff09;ElasticSearch2&#xff09;Kiabana3&#xff09;Logstash4&#xff09;可以添加的其它组件&#xff1a;Filebeat5&#xff09;缓存/消息队列&#xff08;redis、kafka、Ra…