AI绘画之三_StableDiffusion_界面操作

1 介绍

首先,介绍界面中的重要元素,如图所示:

  1. 基础模型:基础模型是最重要的设置项
  2. 文生图:选项卡列出了各大功能,文生图指通过文字生成图片
  3. 图生图:图生图指通过图片和文字生成图片
  4. 修复照片:用于优化图片,提升精度,常用来修复旧照片
  5. 设置:软件设置,VAE模型可在此设置
  6. 插件:用于安装和管理插件,注意命令行启动时应允许安装插件
  7. 提示词:提示词分为正向提示和负向提示,负向提示用于限制可能的问题
  8. 采样方式:常用 Euler a ,DPM2++2M Karras
  9. 提示词相关性:设置画面与提示词的相关性,一般设为5-10,如果太高,色彩会过于饱和
  10. 扩展模型:设置基础模型的附加模型,Embedding和LoRA模型就在此设置
  11. 生成按钮:按此按钮生成图片

2 文生图 & 图生图

文生图和图生图是 SD 的核心功能,其中图生图也支持识别文字描述,故可将文生图看作图生图的一部分。相对来说图生图功能也更丰富。本部分以图生图为主,讲解具体用法。
在这里插入图片描述

2.1 图生图与文生图的差别

可以看到图生图界面比文生图多了一些控件,主要差别如下:

  • 生成图片之前首先要上传一张基础图片。
  • 反推咒语:Interrogate CLIP / Interrogate DeepBooru 按钮分别支持两种方法从图片中提取提示词,第一次使用时在后台下载模型,时间较长。
  • 子功能又细分为以下六种:
    • img2img:基础的图生图功能,常用于整图风格的改变,比如将相片改成2D效果
    • Sketch:涂鸦功能,可在基础图上绘制颜色,画好主色后,细节直接交给 AI 绘制
    • Inpaint:修改部分图,常用于换衣服,换脸等局部修改
    • Inpaint sketch:用涂鸦方式修改部分图
    • Inpaint upload:上传部分图蒙板,以便更精确地改图
    • Batch:批量改图
  • 重绘幅度(Denosing strength):设置值越大表示对原图重绘幅度越大,相对的提示词影响也越大,0.5为分界点,一般设为 0.5 以上就与原图不太像了。

2.2 提示词

2.2.1 提示词格式

  • 提示词用于描述待生成的图像内容
  • 提示词可支持中文,但不如英文理解的好
  • 多个提示词可用逗号隔开,无需适合英文语法
  • 对提示词加权重:用小括号把关键词括起来(curly hair),这样括号一次就是1.1倍权重,那括两次((curly hair))就是1.1×1.1=1.21倍,以此类推;
  • 对提示词减权重:用中括号把单词括起来,如:[curly hair]
  • 指定权重数值 (关键词:数值):(curly hair:1.3)

2.2.2 正向提示词

  • 设定画质:masterpiece, best quality, Highly detailed,
  • 设定人物:性别,年龄,发型,衣服颜色,样式,身材
  • 设定人物表情&动作:微笑,大笑,酷
  • 设定人物关系:如母亲和女儿
  • 设定画面内其它物品
  • 设定方向:如人物背面
  • 设定背景:背景内容,背景风格
  • 设定风格:水彩画 water painting art,水墨画 ink drawing,漫画风 Anime, 鲜艳 Vivid Colors, 前景实背景虚 Bokeh,素描 Sketch,线图 a line drawing
  • 光感镜头:rayonism,perfect lighting, sharp focus

2.2.3 负向提示词

  • 手指问题,手型问题:bad hands, missing fingers, (too many fingers:1.2)
  • 五官问题:(unclear eyes:1.2)
  • 多出来的胳膊和腿:(missing arms:1.2), (extra legs:1.2),(missing legs:1.2), (extra arms:1.2)
  • 画质问题:(worst quality:2), (low quality:2), blurry

2.2.4 注意

  • 上述提示词只是举例,具体请看参考部分的《提示词词缀使用指南》
  • 从 https://civitai.com/ 点击模型生成的图,可以看到提示和参数,用于参考
  • 虽然可以指定风格,但是生成的具体画质和风格主要看 基础模型 和 LoRA模型 的能力
  • 手指问题如果比较严重,建议使用 ControlNet 的 Openpose+Depth,负向提示词,或者After Detailer插件

3 插件

3.1 sd-webui-controlnet

ControlNet 让用户更精确地绘制姿势动作、面部特征、风格等元素。是 SD 中最重要的插件,没有之一,之前文档里已经介绍了,不再缀述。

3.2 sd-webui-tagcomplete

TagComplete 提供了提示词补全功能。当开始输入提示词时,它会列出与输入相关提示词,也可用’<'呼出Lora等提示词。

3.3 sd-webui-segment-anything

Segment-anything 用于自动抠图,效果非常好,它基于人对世界的认知抠图,而非只考虑颜色,能一键抠出整个人。其用法类似ControlNet,安装之后,在Inpaint界面的下方出现 Segment Anything 折叠界面。
需要下载模型:https://dl.fbaipublicfiles.com/segment_anything/sam_vit_h_4b8939.pth
大小为 2.4G,复制到 extensions/sd-webui-segment-anything/models/sam/ 后即可使用,效果如下:

3.4 adetailer

After Detailer 是一种后处理,可选择不同模型对手和脸精调。一般的操作是:利用随机种子生成图片,当遇到一张图片其它方面都比较满意,但手或脸的细节有问题时,固定该种子,打开 After Detailer 功能,重新生成即可。我试了一下,修手一般,修脸效果不错,具体使用的是 face_yolov8n.pt 模型。

3.5 sd-webui-roop

Roop提供换脸功能,由于我的 SD 安排在 Linux 服务器上,可以"科学",整个操作下来,除了一开始网络不好,进入虚拟环境中安装了一下依赖(requirements.txt),后面安装软件下载模型都是自动完成的,比Windows系统简单得多。
其核心使用了 insightface 模型,具体也在 img2img 的左下方操作。
注意:如果换脸不成功,需要关注一下服务后台的提示信息,可能是网络连接问题,可能是 CodeFormer 问题(如果是CodeFormer问题,将Restore Face设成None即可)。

4 实际应用

下面列举几个最常用的使用场景,以介绍具体的使用方法。

4.1 真人相片变卡通形象

4.1.1 准备

  • 一张照片

4.1.2 SD 操作

  • 大模型选二次元风格模型: Kakigori_V2
  • 选择 img2img->img2img 子类别
  • 上传一张真实照片
  • 点 Interrogate CLIP 按钮,用模型分析图片对应的提示词(此步可省略)
  • 根据自己的对图片的理解和目标修改提示词,尽量用英文
  • 修改 denosing 参数为 0.5(根据效果调整)
  • 多生成几张图片,选取喜欢的
  • 注意:生成图片的风格主要看选择的基础模型风格及提示词

4.2 换头&换衣服&换背景

4.2.1 准备

  • 一张照片

4.2.2 SD 操作

  • 大模型选择真实场景模型: v1-5-pruned-emaonly
  • 选择 img2img->inpaint sketch 子类别
  • 上传一张真实照片
  • 切换颜色,绘制需要修改的区域
  • 填写提示词,比如把衣服换成旗袍:cheongsam(一定要填写)
  • 修改 denosing 参数为 0.5(根据效果调整)
  • 多生成几张图片,选取喜欢的

4.3 老照片修复

4.3.1 准备

  • 模糊的图片

4.3.2 SD 操作

  • 修复二次元的照片选“R-ESRGAN 4x+Anime68”,实物照片选“R-ESRGAN 4x+”
  • 反复测试,如果不清楚,把 GFPGAN 强度拉大

4.4 线稿上色

4.4.1 准备

  • 签字笔画稿
  • PhotoShop简单上色

4.4.2 SD操作

  • 大模型选: kakigori_V2.safetensors
  • 选择 img2img->img2img 子类别
  • 正向提示:sexy lips, blonde hair, blue eyes, green dress, lora:add_detail:2
    引处使用了 Lora:add_detail 用于添加细节
  • 导入待上色的画稿作为基础图
  • Sampling method: DPM++ SDE Karras (更为细腻)
  • Donose strength:0.67
  • 打开 ControlNet 折叠
    • Scribble(Enable)
    • Preprocessfor:canny
    • Model:control_sd15_canny
  • 其它项都使用默认值,生成即可
  • 说明:效果主要依靠大模型和两个Lora模型比较给力,另外使用了 ControlNet 的涂鸦模型,它是自由度最高的填色工具,加入了很多细节。

4.5 原理分析

这是目前很喜欢的一组参数,用于将真人图片转成动漫风格,替换背景,保持表情和动作:

a handsome Asia young man in the forest <lora:add_detail:1> <lora:Pyramid lora_Ghibli_n3_0.7+Pyramid lora_Ghibli_v2_0.3:0.57> rayonism
Steps: 20, Sampler: DPM++ 2M Karras, CFG scale: 7, Seed: 1672545665, Size: 512x512, Model hash: 8eccdfe4b6, Model: deepboys25D_v30, Denoising strength: 0.63, ControlNet 0: "preprocessor: scribble_xdog, model: control_sd15_scribble [fef5e48e], weight: 1, starting/ending: (0, 1), resize mode: Crop and Resize, pixel perfect: False, control mode: Balanced, preprocessor params: (512, 32, 200)", Lora hashes: "add_detail: 7c6bad76eb54, Pyramid lora_Ghibli_n3_0.7+Pyramid lora_Ghibli_v2_0.3: 895eb832de9d", Version: v1.5.1

其核心点如下(按重要性排序):

  • 选了一个2.5D风格的底模,能很好地还原人物,人物形象有特色、统一、稳定,明度精细度均不错
  • 使用了 ControlNet 的 scribble 涂鸦功能 scribble_xdog,这样既可以将 denosing 设大,让画面变化更加丰富,又有效地控制了人物的轮廓和表情变化
  • 提示词对年龄、性别、人种、背景起到了简单的限制作用
  • 使用了光照提示词 rayonism,外加 LoRA: add detail,精细刻画提升了画面质感
  • 背景使用 LoRA:Ghibli 吉卜力风格(类似宫崎骏动画风格)

5 参考

Stable Diffusion 提示词词缀使用指南(Prompt)
Stable Diffusion 图生图(img2img)干货技巧,值得收藏
stable diffusion插件
Stable Diffusion-采样器篇

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

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

相关文章

sql类型-用户定义表类型

一、创建用户定义表类型String_Table_Type CREATE TYPE String_Table_Type AS TABLE ( Id nvarchar(200) NOT NULL ) GO DECLARE test String_Table_Type INSERT INTO test VALUES(a),(b),(c) SELECT * FROM test 二、SqlSugar中使用

【IMX6ULL驱动开发学习】06.DHT11温湿度传感器驱动程序编写与测试

一、DHT11简介 DHT11是一款可测量温度和湿度的传感器。比如市面上一些空气加湿器&#xff0c;会测量空气中湿度&#xff0c;再根据测量结果决定是否继续加湿。 DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器&#xff0c;具有超小体积、极低功耗的特点…

银行客户关系管理系统springboot财务金融进销存java jsp源代码

本项目为前几天收费帮学妹做的一个项目&#xff0c;Java EE JSP项目&#xff0c;在工作环境中基本使用不到&#xff0c;但是很多学校把这个当作编程入门的项目来做&#xff0c;故分享出本项目供初学者参考。 一、项目描述 银行客户关系管理系统springboot 系统有1权限&#x…

Jetpack系列-ViewModel的使用及原理浅析

作者&#xff1a;碎星 简介 ViewModel在架构中用于承载业务逻辑和作为容器保存屏幕状态&#xff0c;它可以缓存界面的状态&#xff0c;并且能在配置变更后持久保留相应的界面状态。 在jetpack套件中&#xff0c;ViewModel随lifecycle一起提供。 优势 简介 ViewModel在架构…

第5步---MySQL的DQL查询语句

第5步---MySQL的DQL查询语句 DQL 数据库查询语言 1.基本的查询语句 1.完整得查询得语句 简化版的查询语句 select * from 表名 where 条件; 2.创建用于测试的表 1.创建测试数据 -- DQL -- 创建测试表 DROP TABLE IF EXISTS product; CREATE TABLE IF NOT EXISTS product( pi…

一文详解4种聚类算法及可视化(Python)

在这篇文章中&#xff0c;基于20家公司的股票价格时间序列数据。根据股票价格之间的相关性&#xff0c;看一下对这些公司进行聚类的四种不同方式。 苹果&#xff08;AAPL&#xff09;&#xff0c;亚马逊&#xff08;AMZN&#xff09;&#xff0c;Facebook&#xff08;META&…

计算机毕设项目之基于django+mysql的疫情实时监控大屏系统(前后全分离)

系统阐述的是一款新冠肺炎疫情实时监控系统的设计与实现&#xff0c;对于Python、B/S结构、MySql进行了较为深入的学习与应用。主要针对系统的设计&#xff0c;描述&#xff0c;实现和分析与测试方面来表明开发的过程。开发中使用了 django框架和MySql数据库技术搭建系统的整体…

多线程实现与管理

进程与线程 进程 &#xff1a; 进程是操作系统进行资源分配的最小单位&#xff0c;每执行一个程序、一条命令操作系统都会启动一个进程&#xff0c;进程是一个程序的执行过程&#xff0c;当程序启动时&#xff0c;操作系统会把进程的代码加载到内存中&#xff0c;并为新进程分配…

uni-app根据经纬度逆解析详细地址

uni-app中的getLocation()方法可以获取到用户当前的地理位置&#xff08;经纬度&#xff09;、速度。 但是返回参数中的address在app中才会显示&#xff0c;小程序中不会显示&#xff0c;所以我们需要进行逆解析其地址&#xff0c;解析出它的地址信息。 1.首先要在腾讯位置服务…

如何正确地设置Outlook SMTP发送电子邮件(wordpress配置)

如何正确地设置Outlook SMTP发送电子邮件&#xff08;wordpress配置&#xff09; 作者&#xff1a;虚坏叔叔 博客&#xff1a;https://pay.xuhss.com 早餐店不会开到晚上&#xff0c;想吃的人早就来了&#xff01;&#x1f604; 正在寻找正确的Outlook SMTP设置&#xff1f…

LRU 算法

LRU 缓存淘汰算法就是一种常用策略。LRU 的全称是 Least Recently Used&#xff0c;也就是说我们认为最近使用过的数据应该是是「有用的」&#xff0c;很久都没用过的数据应该是无用的&#xff0c;内存满了就优先删那些很久没用过的数据。 力扣&#xff08;LeetCode&#xff09…

自动方向识别式 TXB型电平转换芯片

大家好,这里是大话硬件。 在上一篇文章分析了LSF型的电平转换芯片,LSF型电平转换芯片最常见是应用在I2C总线上。I2C为OD型总线,LSF使用时增加电阻。 对于不是OD型总线的电平转换,比如UART,SPI,普通GPIO口信号,这些信号在进行双向电平转换使用什么样的芯片呢? 从上面…

面试之快速学习STL-deuqe和list

1. deque deque 容器用数组&#xff08;数组名假设为 map&#xff09;存储着各个连续空间的首地址。也就是说&#xff0c;map 数组中存储的都是指针如果 map 数组满了怎么办&#xff1f;很简单&#xff0c;再申请一块更大的连续空间供 map 数组使用&#xff0c;将原有数据&…

每天一道leetcode:433. 最小基因变化(图论中等广度优先遍历)

今日份题目&#xff1a; 基因序列可以表示为一条由 8 个字符组成的字符串&#xff0c;其中每个字符都是 A、C、G 和 T 之一。 假设我们需要调查从基因序列 start 变为 end 所发生的基因变化。一次基因变化就意味着这个基因序列中的一个字符发生了变化。 例如&#xff0c;&quo…

博弈论 | 斐波那契博弈

斐波那契博弈 博弈论是二人或多人在平等的对局中各自利用对方的策略变换自己的对抗策略,达到取胜目标的理论。博弈论是研究互动决策的理论。博弈可以分析自己与对手的利弊关系,从而确立自己在博弈中的优势,因此有不少博弈理论,可以帮助对弈者分析局势,从而采取相应策略,最终达…

计算机提示mfc120u.dll缺失(找不到)怎么解决

在计算机领域&#xff0c;mfc120u.dll是一个重要的动态链接库文件。它包含了Microsoft Foundation Class (MFC) 库的特定版本&#xff0c;用于支持Windows操作系统中的应用程序开发。修复mfc120u.dll可能涉及到解决与该库相关的问题或错误。这可能包括程序崩溃、运行时错误或其…

13.实现业务功能--板块信息

目录 获取在首页中显示的版块 1. 实现逻辑 2. 创建扩展 Mapper.xml 3. 修改 DAO 4. 创建 Service 接口 5. 实现 Service 接口 6. 生成测试方法 7. 实现 Controller 8. 实现前端页面 在数据库中执行以下 SQL 语句&#xff1a; INSERT INTO t_board (id, name, article…

浅析Linux SCSI子系统:调试方法

文章目录 SCSI日志调试功能scsi_logging_level调整SCSI日志等级 SCSI trace events使能SCSI trace events方式一&#xff1a;通过set_event接口方式二&#xff1a;通过enable 跟踪trace信息 相关参考 SCSI日志调试功能 SCSI子系统支持内核选项CONFIG_SCSI_LOGGING配置日志调试…

kafka晋升之路-理论+场景

kafka晋升之路 一&#xff1a;故事背景二&#xff1a;核心概念2.1 系统架构2.2 生产者&#xff08;Producer&#xff09;2.2.1 生产者分区2.2.2 生产者分区策略 2.3 经纪人&#xff08;Broker&#xff09;2.3.1 主题&#xff08;Topic&#xff09;2.3.2 分区&#xff08;Partit…

WPS-RCE

版本&#xff1a; WPS Office 2023 个人版 < 11.1.0.12313 WPS Office 2019 企业版 < 11.8.2.12085 原理&#xff1a; Office 中的 WebExtension&#xff08;通常称为 Office 插件或 Office 应用程序&#xff09;是一种用于扩展 Microsoft Office 功能的技术。Office …