【朱颜不曾改,芳菲万户香。AIGC人物图片创作---InsCode Stable Diffusion 美图活动一期】

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
大数据开发治理平台 DataWorks,不限时长
简介: 【朱颜不曾改,芳菲万户香。AIGC人物图片创作---InsCode Stable Diffusion 美图活动一期】


 一、 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模板

        image.gif编辑

          点击:【 运行及使用 】,进入下面页面:

        image.gif编辑

          选择Stable-Diffusion模板,选择自己需要的设备,搭建一个付费的GPU服务器。

        image.gif编辑

          点击支付后,出现下面页面:

        image.gif编辑

          大概1-2分钟,创建完成后,页面出现已启动,再点击右下页面红框所示的WebUI就可以进入以Stable Diffusion为模型的AI绘图网页端。

        image.gif编辑

         二、Stable Diffusion主界面功能

        2.1、Stable Diffusion主功能菜单

        image.gif编辑

          • 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】功能

                      image.gif编辑

                      2.2.1、选择需要使用的模型

                      image.gif编辑

                      目前平台安装了的模型有:

                        • 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

                        image.gif编辑

                          • 正向提示词prompt

                            正向提示词prompt就是你想要画的东西,想要生成什么图片,就需要在这里进行输入,内容包含主体、风格、色彩、质量等要求,支持句子和单词,提示词和提示词之间,用英文逗号隔开,越往前权重越高,越往后权重越低。权重高低,意味着生成图片时是否会将该内容直接生成到图片中;提示词并非越多越好,因为后面的关键词基本权重可以忽略不计。

                            • 反向提示词Negative prompt

                              反向提示词内输入的就是你不想要画的东西,不想要什么信息,就输入说明文字,告诉SD不要生成这类图片。例如不想图片质量太差,不想生成的图片太过模糊或者多出一些奇怪的手和脚,支持句子和单词,提示词和提示词之间,用英文逗号隔开。

                            2.2.3、选择采样方法(Sampler)

                            image.gif编辑

                              SD通过对起始噪声画布进行降噪来工作,就是用扩散采样器来处理图像。这些采样器就是算法,它们在每个步骤后获取生成的图像并将其与文本提示请求的内容进行比较,然后对噪声进行一些更改,直到它逐渐达到与文本描述匹配的图像。采样方法表示想要绘制的时候,算法采用偏向哪种风格,但是它们的多样性来自步数变化。

                              最常用的三个采样器分别是Euler a,DDIM和DPM++系列。

                              • 面部修复

                                修复人物的面部,但是非写实风格的人物开启面部修复可能导致面部崩坏。

                                • 平铺图(Tiling)

                                  生成一张可以平铺的图像,勾选之后,生成的图像可以支持无缝拼接,用于生成无缝3D贴图。

                                  • 高分辨率修复(Hires. fix)

                                    用于修复画面细节不足的问题,勾选之后会展开二级菜单,默认会将生成的图像放大2倍,会先根据原始尺寸生成一次图像,然后将这张图根据放大算法图生图生成一张大图。

                                  2.2.4、选择迭代步数(Steps)

                                  image.gif编辑

                                    迭代步数(Steps)表示图片生成过程迭代的次数。

                                    Stable-Diffusion通过从充满噪点的画布开始创建图像,然后逐渐去噪以达到最终输出。Steps就是控制这些去噪步骤的数量。通常,越高越好。一般情况下,默认值是20个步骤,已经足以生成任何类型的图像。

                                  以下是有关在不同情况下使用steps的一般指南:

                                    • 如果你正在测试新提示并希望获得快速结果来调整输入,用10-15个steps。
                                    • 找到所需的提示后,将步骤增加到20-30。
                                    • 创建带有毛皮或任何具有详细纹理的主题的面部或动物,想要细节丰富,可以尝试40个steps,或者更高。

                                    2.2.5、设置生成图像的宽度高度

                                    image.gif编辑

                                    宽度

                                      生成图像的宽度,

                                      模型训练的时候,大多采用512×512或者512×768,所以这里生成的时候 建议用512×512或者512×768,效果会稍微好一些,人像肖像 建议用512x768,风景画 建议用768×512,可按比例加大或减小,这个值必须是 8 的倍数。

                                    高度

                                      生成图像的高度。

                                    2.2.6、选择生成批次和每批数量

                                    image.gif编辑

                                    生成批次(Batch count)

                                      每次执行画图的批次数,生成批次是每次一共生成几批图片。也就是说你每点击一次生成按钮,最终出图的数量=总批次数*单批数量。

                                    单批数量

                                      每批次生成的图像数量,注意:单批次生成的图像过多,显存占用越多,如果显卡显存本身较小则容易爆显存出错,建议增加批次数而不是单批数量。

                                      注意:每批数量是显卡一次所生成的图片数量,调太高可能会导致显存不足导致生成失败,而生成批次不会导致显存不足,只要时间足够会一直生成直到全部输出完毕。

                                    2.2.7、提示词导系数(CFG Scale)

                                    image.gif编辑

                                      提示词导系数(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)

                                      image.gif编辑

                                        随机种子是一个决定初始随机噪声的数字,随机噪声决定了最终图像。每次在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权重,权重配置字段会自动填入上方的提示词中。

                                        image.gif编辑

                                         

                                          Lora权重的格式为《权重名:权重比例大小>,Lora权重可以同时选中多个进行叠加。在Web UI中,Lora权重是可以同时选择多个进行叠加,但建议所有权重之和不要超过1,因为过大的Lora权重可能会导致中间某些层的输出结果溢出。

                                          使用Lora权重之后,可以针对性的修改图片的某些风格和效果。

                                         

                                        3.2、ControlNet组件

                                          ControlNet组件为我们提供了一种精确控制Stable-diffusion生成图片的方式。我们可以选择不同的预处理,通过边缘检测、姿态检测等方式,使用参考图控制去噪过程,

                                          ControlNet有几个关键的可选项:

                                          • 控制类型:通过选择控制类型,可以选择我们想要进行的操作;
                                          • 预处理器:设置处理参考图的方式,例如canny则可用canny算子进行边缘检测;
                                          • 模型:设置生成图片所用的ControlNet模型;

                                               控制权重:设置ControlNet所作用的权重,默认为1。



                                           四、图片生成实例

                                          4.1、效果1

                                          image.gif编辑

                                          4.1.1、模型相关版本和参数配置

                                          Stable Diffusion 模型(ckpt)Stable Diffusion checkpoint:

                                          GuoFeng3.ckpt [74c61c3a52]

                                          image.gif

                                          采样方法(Sampler)Sampling method:

                                          Euler a

                                          image.gif

                                          采样迭代步数(Steps)Sampling steps:

                                          40

                                          image.gif

                                          宽度Width:

                                          768

                                          image.gif

                                          高度Height:

                                          1080

                                          image.gif

                                          生成批次Batch count:

                                          1

                                          image.gif

                                          每批数量Batch size:

                                          1

                                          image.gif

                                          提示词相关性(CFG Scale)CFG Scale:

                                          7.5

                                          image.gif

                                          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>

                                          image.gif

                                          反向提示词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,

                                          image.gif

                                          4.1.3、种子

                                          随机种子(seed)Seed

                                          7086661973

                                          image.gif

                                          4.1.4、对应图片

                                          image.gif编辑

                                          image.gif编辑

                                          4.2、效果2

                                          image.gif编辑

                                          在效果1的设置上,修改以下内容:

                                          Stable Diffusion 模型(ckpt)Stable Diffusion checkpoint:

                                          primemix_v21.safetensors

                                          image.gif

                                          其他设置不变。

                                          4.3、效果3

                                          image.gif编辑

                                          在效果1的设置上,修改以下内容:

                                          Stable Diffusion 模型(ckpt)Stable Diffusion checkpoint:

                                          primemix_v21.safetensors

                                          image.gif

                                          其他设置不变。

                                          4.4、效果4

                                          image.gif编辑

                                          在效果1的设置上,修改以下内容:

                                          采样方法(Sampler)Sampling method:

                                          Euler

                                          image.gif

                                          其他设置不变。

                                          4.5、效果5

                                          image.gif编辑

                                          在效果1的设置上,修改以下内容:

                                          采样方法(Sampler)Sampling method:

                                          DPM++ SDE Karras

                                          image.gif

                                          其他设置不变。

                                          4.6、效果6

                                          image.gif编辑

                                          在效果1的设置上,修改以下内容:

                                          采样方法(Sampler)Sampling method:

                                          UniPC

                                          image.gif

                                          提示词相关性(CFG Scale)CFG Scale:

                                          10

                                          image.gif

                                          其他设置不变。

                                          4.7、效果7

                                          image.gif编辑

                                          在效果1的设置上,修改以下内容:

                                          采样方法(Sampler)Sampling method:

                                          UniPC

                                          image.gif

                                          提示词相关性(CFG Scale)CFG Scale:

                                          18

                                          image.gif

                                          其他设置不变。

                                          4.8、效果8

                                          image.gif编辑

                                          在效果1的设置上,修改以下内容:

                                          采样方法(Sampler)Sampling method:

                                          UniPC

                                          image.gif

                                          提示词相关性(CFG Scale)CFG Scale:

                                          21

                                          image.gif

                                          其他设置不变。

                                          五、参考资料:

                                          网络

                                          https://zhuanlan.zhihu.com/p/629910090




                                          image.gif编辑

                                          相关文章
                                          |
                                          23小时前
                                          |
                                          人工智能 搜索推荐
                                          AIGC工具——Stable Diffusion
                                          【1月更文挑战第11天】AIGC工具——Stable Diffusion
                                          250 2
                                          AIGC工具——Stable Diffusion
                                          |
                                          23小时前
                                          |
                                          前端开发 Linux PyTorch
                                          Stable Diffusion 本地安装 | AIGC
                                          今天要介绍Stable Diffusion webUI则第三方通过Gradio搭建的Stable Diffusion的web前端,功能丰富,而且所有功能都是开源的。 【1月更文挑战第7天】
                                          201 0
                                          |
                                          23小时前
                                          |
                                          机器学习/深度学习 自然语言处理
                                          文生图模型-Stable Diffusion | AIGC
                                          所谓的生成式模型就是通过文本或者随机采样的方式来得到一张图或者一段话的模型,比如文生图,顾名思义通过文本描述来生成图像的过程。当前流行的文生图模型,如DALE-2, midjourney以及今天要介绍的Stable Diffusion,这3种都是基于Diffusion扩散模型【1月更文挑战第6天】
                                          412 0
                                          |
                                          23小时前
                                          |
                                          人工智能 安全
                                          AIGC创作内容侵了谁的权
                                          【1月更文挑战第12天】AIGC创作内容侵了谁的权
                                          33 2
                                          AIGC创作内容侵了谁的权
                                          |
                                          23小时前
                                          |
                                          编解码 人工智能 自然语言处理
                                          AIGC基础模型——扩散模型(Diffusion Model)
                                          【1月更文挑战第23天】AIGC基础模型——扩散模型(Diffusion Model)
                                          217 1
                                          AIGC基础模型——扩散模型(Diffusion Model)
                                          |
                                          23小时前
                                          |
                                          人工智能
                                          让孩子用AI创作自己的故事,熊猫天天用AIGC解锁儿童的“想象世界”
                                          【2月更文挑战第12天】让孩子用AI创作自己的故事,熊猫天天用AIGC解锁儿童的“想象世界”
                                          61 2
                                          让孩子用AI创作自己的故事,熊猫天天用AIGC解锁儿童的“想象世界”
                                          |
                                          23小时前
                                          |
                                          人工智能 搜索推荐
                                          AIGC赋能短剧市场创作
                                          【1月更文挑战第23天】AIGC赋能短剧市场创作
                                          60 1
                                          AIGC赋能短剧市场创作
                                          |
                                          23小时前
                                          |
                                          人工智能 运维 API
                                          基于PAI-EAS一键部署Stable Diffusion AIGC绘画
                                          教程中,您将学习如何使用阿里云模型在线服务(PAI-EAS)的预置镜像,快速部署AIGC Stable Diffusion SDWebUI绘画的AI-Web应用,以及启动WebUI进行模型推理。
                                          |
                                          23小时前
                                          |
                                          机器学习/深度学习 数据采集 人工智能
                                          基于Stable Diffusion的AIGC服饰穿搭实践
                                          基于Stable Diffusion的AIGC服饰穿搭实践
                                          286 1
                                          |
                                          23小时前
                                          |
                                          人工智能 测试技术 API
                                          【AIGC】LangChain Agent(代理)技术分析与实践
                                          【5月更文挑战第12天】 LangChain代理是利用大语言模型和推理引擎执行一系列操作以完成任务的工具,适用于从简单响应到复杂交互的各种场景。它能整合多种服务,如Google搜索、Wikipedia和LLM。代理通过选择合适的工具按顺序执行任务,不同于链的固定路径。代理的优势在于可以根据上下文动态选择工具和执行策略。适用场景包括网络搜索、嵌入式搜索和API集成。代理由工具组成,每个工具负责单一任务,如Web搜索或数据库查询。工具包则包含预定义的工具集合。创建代理需要定义工具、初始化执行器和设置提示词。LangChain提供了一个从简单到复杂的AI解决方案框架。