本文分享自华为云社区《【云驻共创】Stable Diffusion AIGC限时0元!3步成为P图大师》,作者:香菜聊游戏 。

1、instructPix2Pix概览

instructPix2Pix文字修改图片是一种纯文本修改图画的办法,用户供给一张图片和文本修改指令,告知模型要做什么,模型根据修改指令修改输入的图画,终究输出用户想要的图画。

它能够让你经过简略的言语描绘来生成符合要求的图片,而不需求手动编写代码或进行杂乱的操作,这使得图画生成愈加高效和快捷。例如,假如你想将一张天空相片转换为夜晚相片,你只需求输入指令:“将天空替换为漆黑的夜晚”,然后模型就会主动将天空替换为星星和月亮,并将色彩和光线调整为夜晚的感觉。

视频地址:https ://bbs.huaweicloud.com/live/cloud_live/20230413.html

2、技能结构

Stable Diffusion AIGC:3步成为P图大师

2.1 结构概述

整个结构是运用现有大模型的才能,完成了自己的任务,整个技能栈都是现有技能的整合,可是仍然做出了一个很好玩的使用

结构总体分为2个部分:模型练习(Traning)和推理(Inference)。

模型练习分为数据工程和模型练习。

整个pipeline的方针是经过运用GPT-3生成修改指令和描绘,以及运用Stable Diffusion生成图画对,来练习Instruct-Pix2Pix模型,使其能够根据修改指令生成高质量的修改后的图画。然后,运用练习好的Instruct-Pix2Pix模型进行推理,以供给给用户或实践使用场景所需的修改后的图画。

2.2 数据生成

2.2.1 修改指令的生成

这部分完全是文字工作,借助了GPT-3 的才能,给定一个输入的描绘,然后由GPT-3 输出修改后的指令和生成的描绘

比如图中输入:The dog looks at the Camera

GPT3 会输出:修改指令 wearing a hat 和终究的描绘指令 The dog wearing a hat looks at the camera

Stable Diffusion AIGC:3步成为P图大师

作者运用了700条人工标注的指令,并对GPT-3进行了微调,以便在生成修改指令和修改后的指令时能够更好地满足要求。

输入GPT-3的指令格式包括两部分:prompt和completion。其间,prompt是输入指令,用于辅导GPT-3生成相应的文本输出;completion是修改指令和修改后的指令,用于在GPT-3生成的结果进步行进一步的修改和调整。这样输入的好处是修改指令也是由GPT-3生成的,这样确保生成的多样哈。终究GPT会生成超越45万的修改指令,上图高亮的部分都是GPT-3生成,这些指令被用于练习Instruct-Pix2Pix模型,终究为实践使用场景供给高质量的图画修改服务。

2.2.2 生成图画对

Stable Diffusion AIGC:3步成为P图大师

将上一进程生成的超越45万的修改指令和描绘指令,输入经过Stable Diffusion 生成图画对。

在这个进程中存在一个应战,做过文生图的同学都知道,即便你固定随机数,距离很小的prompt经过Stable Diffusion也有或许生成内容完全不同的图画,这是由于Stable Diffusion在生成图画时受到许多要素的影响,例如随机数生成、模型参数、输入文本的细小变化等等。因而,即便两个prompt看起来十分类似,Stable Diffusion也或许生成天壤之别的图画。

解决办法:

在文生图中,运用了Cross Attention机制来树立文本和图片之间的相关。Cross Attention是一种注意力机制,其本质是经过筛选来完成信息的交融。在文生图中,这种机制被用于找到文本提示(prompt)与图片之间的关系。

具体而言,当给定一个文本提示时,Cross Attention会对文本中的不同单词进行激活,并经过注意力的机制,挑选与激活单词相相关的图片区域。经过这种办法,能够根据文本提示中的不同单词来激活不同的图画区域,然后完成文本与图画的相关。

以文生图中的比如为例,假如文本提示中包括单词”bear”,则Cross Attention机制会根据该单词的激活程度,挑选与之相相关的图片区域。在上图中能够看到,与”bear”相相关的图片区域被激活得最多。这意味着该区域与”bear”这个单词有最强的相关。

经过Cross Attention机制,文生图能够将文本提示和图片进行有效地交融,然后发生与文本提示相对应的图画生成结果。这种机制能够帮助生成更准确和相关的图画,使文本与图画之间的相关愈加紧密和有意义。

这个替换能够能够发生在任意一步,替换的越多则图画更多样。

2.3 模型练习,文生图

instructPix2Pix 是经过有监督的办法完成文本修改图画,运用条件分散模型。

输入的数据为:一张原图和修改指令,输出修改之后的图

2.3.1 文生图原理

Stable Diffusion AIGC:3步成为P图大师

整个任务是输入prompt,根据prompt输出一张图。

1.对输入的文字进行tokenlization和embedings获得词向量。

2.词向量会在Diffusion中经过Cross Attention的进程中参加到图画生成的进程中

3.模型还会有一个随机的噪声图向量输入,在分散的进程中康复到原图的生成像素向量

4.最后经过解码器将像素向量解码

2.3.2 instructPix2Pix 和Stable Diffusion的不同

1.instructPix2Pix会多出一个图画输入,在输入的时候将原图拼接到噪声图,会需求额定的channel,这些额定的channel会被初始化为0,其他的权重会运用预练习的Stable Diffusion初始化。

2.在练习中增加了随机的条件Dropout来平衡模型的生成的样本的多样性。

3.推理的进程中加入了参数能够调节原始图画所占的份额。

3、事例介绍

Stable Diffusion AIGC:3步成为P图大师

修改指令支撑中文,体系将中文翻译为prompt,假如遇到生成的图不好,或许是翻译的不好,也能够直接输入英文。一起体系支撑生成海报,方便运用。

3.1 教程

体验地址:developer.huaweicloud.com/develop/aig…

实名认证教程地址:developer.huaweicloud.com/develop/aig…

教程中有完成的介绍,这儿就不赘述了

Stable Diffusion AIGC:3步成为P图大师

注意:

1.切换资源使会有提示,要等资源切换完成后再做操作,不要着急。

2.点击生成海报后,会在notebook同级目录下生成poster.png,右键下载即可。

3.假如没有得到预期结果,或许的原因及办法:

• 假如图片改动程度不行,或许是”图片引导强度”参数过高,这个参数代表输出与输入的类似程度,能够调整该参数多次测验;

• 假如是对人像进行修改,而生成图画面部较为奇怪,是由于文生图模型对较小的面部处理结果并不好,能够测验裁剪图画聚集到主体;

• 运行选用随机seed,相同的描绘语多次修改会发生不同结果,可测验重复修改;

• 运用同义但不同表述的描绘语或许对结果有较大的影响,如”turn him into a dog” vs. “make him a dog” vs. “as a dog”.

• 如需生成高分辨率图,请切换更高显存的资源,一起修改使用cell中的max_size参数。

3.2 事例总结

整个事例的教程还是很清楚,也是免费的资源,开放的代码,very good

4、总结

1. 在整个视频解说中,首先具体介绍了Instruct-Pix2Pix的技能架构,并与现在十分炽热的Stable Diffusion技能方案进行了比较。经过这些解说,咱们能够深入了解这些技能的底层原理以及整个使用的完成细节。

2. 视频中还演示了Model Art的运用,这是一个用于实践这些技能的东西。在事例解说中,咱们能够看到针对不同的情况进行了多个测试事例,以展现该东西的强壮功用。一起,视频还提到了在运用进程中或许遇到的问题和应战。

综上所述,整个视频解说供给了对Instruct-Pix2Pix技能架构、Stable Diffusion技能方案以及Model Art东西的全面了解。经过事例解说和对完成细节的介绍,咱们能够更好地了解和使用这些技能,一起也了解了或许面对的应战和解决方案。

点击重视,第一时间了解华为云新鲜技能~