【朱颜不曾改,芳菲万户香。AIGC人物图片创作
---InsCode Stable Diffusion 美图活动一期】
本文目录:
一、 Stable Diffusion 模型在线使用
1.1、模板运行环境配置
1.2、运行InsCode平台的Stable Diffusion模板
二、Stable Diffusion主界面功能
2.1、Stable Diffusion主功能菜单
2.2、Stable Diffusion文生图txt2img功能操作步骤
2.2.1、选择需要使用的模型
2.2.2、输入正向和反向提示词prompt
2.2.3、选择采样方法(Sampler)
2.2.4、选择迭代步数(Steps)
2.2.5、设置生成图像的宽度高度
2.2.6、选择生成批次和每批数量
2.2.7、提示词导系数(CFG Scale)
2.2.8、随机数种子(seed)
三、Stable-Diffusion高级特性
四、图片生成实例
4.1、效果1
4.1.1、模型相关版本和参数配置
4.1.2、图片生成提示词与反向提示词
4.1.3、种子
4.1.4、对应图片
4.2、效果2
4.3、效果3
4.4、效果4
4.5、效果5
4.6、效果6
4.7、效果7
4.8、效果8
五、参考资料:
一、 Stable Diffusion 模型在线使用
InsCode是一个集成了在线IDE、在线AI编程、在线算力租赁、在线项目部署以及在线SD 模型使用的综合代码开发平台。
Stable Diffusion是目前最火的AI绘画工具之一,它是一个免费开源的项目。通过Stable Diffusion,可以很轻松的通过文字描述,生成对应的图片。Stable Diffusion WebUI把Stable Diffusion模型进行了封装,提供更加简洁易操作的界面,自身还可以通过插件等方式获得更多能力。目前使用的最多的是Stable Diffusion WebUI,因为它界面友好,可以很方便的调整各项参数,生成高质量的图片。
InsCode平台的AI绘图Stable Diffusion 模型生成图片功能测试开启,本文的图片是在InsCode平台试用生成。
Stable Diffusion 模型在线使用,请用浏览器打开以下链接地址:
https://inscode.csdn.net/@inscode/Stable-Diffusion
1.1、模板运行环境配置
模板介绍:
此环境主要用于学习和使用Stable Diffusion,已经安装了相关软件和组件库,可直接启动Stable Diffusion WebUI进行创作
环境配置
显卡(目前支持显卡如下)
- RTX 3090 / 显存24GB
- RTX A4000 / 显存16GB
- Tesla P40 / 显存24GB
基础配置
- CPU:6 核(每显卡配置)
- 内存:30 GB(每显卡配置)
- 数据盘:40 GB
版本信息(目前):
- Ubuntu 20.04
- Stable Diffusion WebUI 1.3.2
- JupyterLab 4.0.1
- Python 3.10
- Torch 2.0.1
- Tensorflow 2.12.0
- Transformers 4.28.1
- xFormers 0.0.201
- BitsandBytes 0.39.0
- Diffusers 0.16.1
1.2、运行InsCode平台的Stable Diffusion模板
点击:【 运行及使用 】,进入下面页面:
选择Stable-Diffusion模板,选择自己需要的设备,搭建一个付费的GPU服务器。
点击支付后,出现下面页面:
大概1-2分钟,创建完成后,页面出现已启动,再点击右下页面红框所示的WebUI就可以进入以Stable Diffusion为模型的AI绘图网页端。
二、Stable Diffusion主界面功能
2.1、Stable Diffusion主功能菜单
- 2.1.1、文生图txt2img
通过 文字提示词,生成图像图片。
- 2.1.2、图生图img2img
通过图片 生成相似风格的图片。即根据提供的图像作为范本、结合文本提示生成图像。
- 2.1.3、附加功能Extras
用于 优化图像,提高图片精度。
- 2.1.4、图片信息PNG info
用于查 看由StableDiffusion生成的图片信息,可以获得图像具体信息,包括正向提词和反向提词内容,以及各参数设置和lora调用名称以及基础模型名称等信息。(其他软件生成的信息可能被隐藏无法查看)
- 2.1.5、模型融合合并Checkpoint Merger
将 所用模型进行合并处理后使用。特别是对于做“inpaint”的时候,很多基础模型不带inpaint功能,一般调用的是官方SD15的inpaint模型。如果追求更好效果,可以用此功能,通过这个页面,将inpaint的官方模型,与自己习惯用的基础模型合并,合并后,再减去官方的这个版本的非inpaint功能的基础模型,从而生成一个新的带inpaint功能的新模型。
- 2.1.6、训练Train
进行模型训练。根据提供的图片训练具有某种图像风格的模型
2.2、Stable Diffusion文生图txt2img功能操作步骤
如何使用文生图,具体步骤下文:
先选择【文生图txt2img】功能
2.2.1、选择需要使用的模型
目前平台安装了的模型有:
- chilloutmix-Ni.safetensors[7234b76e42]
- chilloutmix-NiPrunedFp32Fix.safetensors 真人模型
- Cute_Animals.ckpt
- ghostmix_v11.safetensors
- GuoFeng3.ckpt[74c61c3a52]
- primemix_v21.safetensors
- Realistic_Vision_V1.4.ckpt[660d4d07d6]
- stable-diffusion-v1-5.ckpt
- v2-1_768-ema-pruned.ckpt[4711ff4dd2]
2.2.2、输入正向和反向提示词prompt
- 正向提示词prompt
正向提示词prompt就是你想要画的东西,想要生成什么图片,就需要在这里进行输入,内容包含主体、风格、色彩、质量等要求,支持句子和单词,提示词和提示词之间,用英文逗号隔开,越往前权重越高,越往后权重越低。权重高低,意味着生成图片时是否会将该内容直接生成到图片中;提示词并非越多越好,因为后面的关键词基本权重可以忽略不计。
- 反向提示词Negative prompt
反向提示词内输入的就是你不想要画的东西,不想要什么信息,就输入说明文字,告诉SD不要生成这类图片。例如不想图片质量太差,不想生成的图片太过模糊或者多出一些奇怪的手和脚,支持句子和单词,提示词和提示词之间,用英文逗号隔开。
2.2.3、选择采样方法(Sampler)
SD通过对起始噪声画布进行降噪来工作,就是用扩散采样器来处理图像。这些采样器就是算法,它们在每个步骤后获取生成的图像并将其与文本提示请求的内容进行比较,然后对噪声进行一些更改,直到它逐渐达到与文本描述匹配的图像。采样方法表示想要绘制的时候,算法采用偏向哪种风格,但是它们的多样性来自步数变化。
最常用的三个采样器分别是Euler a,DDIM和DPM++系列。
- 面部修复
修复人物的面部,但是非写实风格的人物开启面部修复可能导致面部崩坏。
- 平铺图(Tiling)
生成一张可以平铺的图像,勾选之后,生成的图像可以支持无缝拼接,用于生成无缝3D贴图。
- 高分辨率修复(Hires. fix)
用于修复画面细节不足的问题,勾选之后会展开二级菜单,默认会将生成的图像放大2倍,会先根据原始尺寸生成一次图像,然后将这张图根据放大算法图生图生成一张大图。
2.2.4、选择迭代步数(Steps)
迭代步数(Steps)表示图片生成过程迭代的次数。
Stable-Diffusion通过从充满噪点的画布开始创建图像,然后逐渐去噪以达到最终输出。Steps就是控制这些去噪步骤的数量。通常,越高越好。一般情况下,默认值是20个步骤,已经足以生成任何类型的图像。
以下是有关在不同情况下使用steps的一般指南:
- 如果你正在测试新提示并希望获得快速结果来调整输入,用10-15个steps。
- 找到所需的提示后,将步骤增加到20-30。
- 创建带有毛皮或任何具有详细纹理的主题的面部或动物,想要细节丰富,可以尝试40个steps,或者更高。
2.2.5、设置生成图像的宽度高度
宽度
生成图像的宽度,
模型训练的时候,大多采用512×512或者512×768,所以这里生成的时候 建议用512×512或者512×768,效果会稍微好一些,人像肖像 建议用512x768,风景画 建议用768×512,可按比例加大或减小,这个值必须是 8 的倍数。
高度
生成图像的高度。
2.2.6、选择生成批次和每批数量
生成批次(Batch count)
每次执行画图的批次数,生成批次是每次一共生成几批图片。也就是说你每点击一次生成按钮,最终出图的数量=总批次数*单批数量。
单批数量
每批次生成的图像数量,注意:单批次生成的图像过多,显存占用越多,如果显卡显存本身较小则容易爆显存出错,建议增加批次数而不是单批数量。
注意:每批数量是显卡一次所生成的图片数量,调太高可能会导致显存不足导致生成失败,而生成批次不会导致显存不足,只要时间足够会一直生成直到全部输出完毕。
2.2.7、提示词导系数(CFG Scale)
提示词导系数(CFG Scale),较高的数值将提高生成结果与提示的匹配度。
提示词导系数(CFG Scale),CFG这个参数可以看作是“创造力与提示”量表。较低的数字使AI有更多的自由发挥创造力,而较高的数字迫使它更多地坚持提示词的内容。CFG 量表可以分为不同的范围,CFG量表可以分为不同的范围,每个范围都适合不同的提示类型和目标。
OpenArt 上使用的默认 CFG 是 7,这在创造力和生成你想要的东西之间提供了最佳平衡。通常不建议低于 5。因为图像可能开始看起来更像AI的幻觉,而高于16可能会开始产生带有丑陋伪影的图像。
- CFG 2~6:属创意,但可能失真过多而太扭曲,没有遵循提示,按照提示进行操作。对于简短的提示来说,可以很有趣和有用。
- CFG 7~10:推荐用于大多数提示。创造力和引导一代之间的良好平衡。
- CFG 10~15:当您确定你描述的提示是详细且非常清晰时,可以使用这些数值(纯风景和建筑类的图片可能需要的CFG会比较高)。
- CFG 16~20:除非提示非常详细,否则通常不推荐使用。可能影响一致性和质量。
- CFG >20:几乎不使用。
2.2.8、随机数种子(seed)
随机种子是一个决定初始随机噪声的数字,随机噪声决定了最终图像。每次在StableDiffusion系统上运行完全相同的提示词prompt,会得到不同的图像,是因为随机数种子不同。如果你使用相同的seed,相同的设置,并且使用相同的提示词prompt,会得到相同的生成图像。
由于相同的种子和提示组合每次都提供相同的图像,因此我们可以通过多种方式利用此属性:
生成每张图片时的随机种子,这个种子是用来作为确定扩散初始状态的基础。如果选用某个固定的种子序号,则会在当前基础上进行修改。
- 控制角色的特定特征:例如情绪,头发颜色或肤色等等
- 测试特定单词的效果:如果你想知道提示中的特定单词发生了哪些变化,则可以使用相同的种子和修改后的提示进行测试,最好通过每次更改单个单词或短语来测试提示。
- 更改样式:如果你喜欢图像的构图,但想知道它以不同的样式显示效果。可用于你创建的任何场景。
三、Stable-Diffusion高级特性
Stable-Diffusion的一些高级特性,包含如何去使用Lora修改生成图片的细节,如何使用ControlNet来控制图片的形状;
3.1、Lora
Lora,全称是Low-Rank Adaptation,原本应用于大语言模型LLM (Large Language Models),在Stable-diffusion模型中也有较多应用。点击右侧的附加网络按钮,打开附加网络选项,点击下方的Lora权重,如果选择一个Lora权重,权重配置字段会自动填入上方的提示词中。
Lora权重的格式为《权重名:权重比例大小>,Lora权重可以同时选中多个进行叠加。在Web UI中,Lora权重是可以同时选择多个进行叠加,但建议所有权重之和不要超过1,因为过大的Lora权重可能会导致中间某些层的输出结果溢出。
使用Lora权重之后,可以针对性的修改图片的某些风格和效果。
3.2、ControlNet组件
ControlNet组件为我们提供了一种精确控制Stable-diffusion生成图片的方式。我们可以选择不同的预处理,通过边缘检测、姿态检测等方式,使用参考图控制去噪过程,
ControlNet有几个关键的可选项:
- 控制类型:通过选择控制类型,可以选择我们想要进行的操作;
- 预处理器:设置处理参考图的方式,例如canny则可用canny算子进行边缘检测;
- 模型:设置生成图片所用的ControlNet模型;
- 控制权重:设置ControlNet所作用的权重,默认为1。
四、图片生成实例
4.1、效果1
4.1.1、模型相关版本和参数配置
Stable Diffusion 模型(ckpt)Stable Diffusion checkpoint:
GuoFeng3.ckpt [74c61c3a52]
采样方法(Sampler)Sampling method:
Euler a
采样迭代步数(Steps)Sampling steps:
40
宽度Width:
768
高度Height:
1080
生成批次Batch count:
1
每批数量Batch size:
1
提示词相关性(CFG Scale)CFG Scale:
7.5
4.1.2、图片生成提示词与反向提示词
正向提示词prompt
1 girl, detailed beautiful skin, kind smile, ridiculous, detailed beautiful face, petite figure, detailed skin texture, pale skin, detailed hair, random hairstyle, detailed eyes, sparkling skin, clean face, beautiful face, cool, naughty face, (double tails)), sideways head, naughty, fashionable clothes <lora:GuoFeng3.2_Lora:1>
反向提示词Negative prompt
(worst quality,low quality:1.4),nude,logo,text,chinese,disfigured,kitsch,ugly,oversaturated,grain,low-res,deformed,blurry,bad anatomy,disfigured,poorly drawn face,mutation,mutated,extra limb,ugly,poorly drawn hands,missing limb,blurry,floating limbs,disconnected limbs,malformed hands,blur,out of focus,
4.1.3、种子
随机种子(seed)Seed
7086661973
4.1.4、对应图片
4.2、效果2
在效果1的设置上,修改以下内容:
Stable Diffusion 模型(ckpt)Stable Diffusion checkpoint:
primemix_v21.safetensors
其他设置不变。
4.3、效果3
在效果1的设置上,修改以下内容:
Stable Diffusion 模型(ckpt)Stable Diffusion checkpoint:
primemix_v21.safetensors
其他设置不变。
4.4、效果4
在效果1的设置上,修改以下内容:
采样方法(Sampler)Sampling method:
Euler
其他设置不变。
4.5、效果5
在效果1的设置上,修改以下内容:
采样方法(Sampler)Sampling method:
DPM++ SDE Karras
其他设置不变。
4.6、效果6
在效果1的设置上,修改以下内容:
采样方法(Sampler)Sampling method:
UniPC
提示词相关性(CFG Scale)CFG Scale:
10
其他设置不变。
4.7、效果7
在效果1的设置上,修改以下内容:
采样方法(Sampler)Sampling method:
UniPC
提示词相关性(CFG Scale)CFG Scale:
18
其他设置不变。
4.8、效果8
在效果1的设置上,修改以下内容:
采样方法(Sampler)Sampling method:
UniPC
提示词相关性(CFG Scale)CFG Scale:
21
其他设置不变。
五、参考资料:
网络
https://zhuanlan.zhihu.com/p/629910090
推荐阅读:
让Ai帮我们画个粽子,它会画成什么样呢? |
给照片换底色(python+opencv) | 猫十二分类 | 基于大模型的虚拟数字人__虚拟主播实例 |
计算机视觉__基本图像操作(显示、读取、保存) | 直方图(颜色直方图、灰度直方图) | 直方图均衡化(调节图像亮度、对比度) |
语音识别实战(python代码)(一) | 人工智能基础篇 | 计算机视觉基础__图像特征 |
matplotlib 自带绘图样式效果展示速查(28种,全) | ||
Three.js实例详解___旋转的精灵女孩(附完整代码和资源)(一) | ||
立体多层玫瑰绘图源码__玫瑰花python 绘图源码集锦 | Python 3D可视化(一) | 让你的作品更出色——词云Word Cloud的制作方法(基于python,WordCloud,stylecloud) |
python Format()函数的用法___实例详解(一)(全,例多)___各种格式化替换,format对齐打印 | 用代码写出浪漫__合集(python、matplotlib、Matlab、java绘制爱心、玫瑰花、前端特效玫瑰、爱心) | python爱心源代码集锦(18款) |
Python中Print()函数的用法___实例详解(全,例多) | Python函数方法实例详解全集(更新中...) | 《 Python List 列表全实例详解系列(一)》__系列总目录、列表概念 |
用代码过中秋,python海龟月饼你要不要尝一口? | python练习题目录 | |
草莓熊python turtle绘图(风车版)附源代码 | 草莓熊python turtle绘图代码(玫瑰花版)附源代码 | 草莓熊python绘图(春节版,圣诞倒数雪花版)附源代码 |
巴斯光年python turtle绘图__附源代码 | 皮卡丘python turtle海龟绘图(电力球版)附源代码 | |
Node.js (v19.1.0npm 8.19.3) vue.js安装配置教程(超详细) | 色彩颜色对照表(一)(16进制、RGB、CMYK、HSV、中英文名) | 2023年4月多家权威机构____编程语言排行榜__薪酬状况 |
| ||
手机屏幕坏了____怎么把里面的资料导出(18种方法) | 【CSDN云IDE】个人使用体验和建议(含超详细操作教程)(python、webGL方向) | 查看jdk安装路径,在windows上实现多个java jdk的共存解决办法,安装java19后终端乱码的解决 |
vue3 项目搭建教程(基于create-vue,vite,Vite + Vue) | ||
2023年春节祝福第二弹——送你一只守护兔,让它温暖每一个你【html5 css3】画会动的小兔子,炫酷充电,字体特 | 别具一格,原创唯美浪漫情人节表白专辑,(复制就可用)(html5,css3,svg)表白爱心代码(4套) | SVG实例详解系列(一)(svg概述、位图和矢量图区别(图解)、SVG应用实例) |
【程序人生】卡塔尔世界杯元素python海龟绘图(附源代码),世界杯主题前端特效5个(附源码) | HTML+CSS+svg绘制精美彩色闪灯圣诞树,HTML+CSS+Js实时新年时间倒数倒计时(附源代码) | 2023春节祝福系列第一弹(上)(放飞祈福孔明灯,祝福大家身体健康)(附完整源代码及资源免费下载) |
tomcat11、tomcat10 安装配置(Windows环境)(详细图文) | Tomcat端口配置(详细) | Tomcat 启动闪退问题解决集(八大类详细) |