文生图与背后的运行逻辑

目录

一.文本编码

1.定义

2.在ComfyUI中的流程

二.图像编码

1.训练集

2.VIT和ResNet

三.文本编码、图像编码二者是如何进行配合的?

1.大模型在训练时,将图片转成坐标(即:图像编码)

2.用户想要生成猫娘图片,输入提示词"猫娘",并将"猫娘"这个提示词转成特征向量

3.大白话总结

4.更精准的总结

5.回顾CLIP模型

四.K采样器

1.随机种

2.运行后操作

3.步数

4.CFG

5.采样器

6.调度器

7.降噪

五.文生图逻辑

1.流程图

2.大白话

六.质量词

1.输入正面条件

2.输入负面条件

3.点击生图,测试效果


一.文本编码

1.定义

说白了就是,将用户的提示词通过Transformer(具体是啥先不用管),转换成特征向量。

因为计算机处理向量(本质就是数字),肯定比处理自然语言快,因此要转换一下。

2.在ComfyUI中的流程

可见:CLIP文本编码器,就是相当于一个transformer

所谓的文本编码,就是将用户提示词,转成特征向量的这个过程。

二.图像编码

声明:这一步发生在训练大模型的时候,早就完成了,不是我们用户该考虑的。

1.训练集

训练集,就是训练大模型的时候,用的图片集合。
举例:

  • 有的大模型是动漫风格,那么训练它的图片肯定都是动漫图片
  • 有的大模型是写实风格,那么训练它的图片肯定都是写实图片

2.VIT和ResNet

这俩不是同时出现的,而是指CLIP的两种不同实现架构。

二者的目的都是同一个,即:将训练集(图片集合)转换成特征向量。

三.文本编码、图像编码二者是如何进行配合的?

1.大模型在训练时,将图片转成坐标(即:图像编码)

比如:大模型将一张小猫、一张人的图片,分别转换成特征向量(对应坐标中的一个点),并给出影响范围。
注意:特征向量是N维度的,肯定不能用二维坐标来表示,但是我们此时为了方便理解,就表达成二维坐标了。

2.用户想要生成猫娘图片,输入提示词"猫娘",并将"猫娘"这个提示词转成特征向量

此时就不难理解了,"猫娘"转换成特征向量,那么这个特征向量在坐标中的位置,肯定是下图中的阴影部分(猫、人的范围交集),因为猫娘就是半人半猫。

3.大白话总结

  • 图像编码:大模型在训练时,将训练集的每一张图片,转换成特征向量,对应坐标轴的一个位置。(说白了就是,定规矩,即:猫在坐标的哪一块,人在坐标的哪一块)
  • 文本编码:将用户的提示词转成特征向量,看看用户想要的图片大概是哪个范围的。若是落在了猫、人的影响范围交集,那就是"猫娘"呗。

4.更精准的总结

更准确的比喻

  • 训练时:让"猫"的图片和"猫"的文字描述在向量空间中靠近。

  • 使用时:输入"猫娘"文字,文本编码器将其映射到向量空间中的某个点(可能介于"猫"和"人"之间),然后根据任务不同:

    • 检索:找离这个点最近的图像向量对应的图片。

    • 生成:用这个点引导生成新图像。

5.回顾CLIP模型

CLIP模型,其实就包含中间方框中的三部分,范围还是很大的。

四.K采样器

1.随机种

  • 是什么:画的"起始配方"或初始噪声图。一个固定的种子会生成起点相同的噪声,因此只要其他参数不变,就能生成几乎完全相同的图片。
  • 通俗理解画的"基因种子"。决定了生成的起点,相同的种子+相同的参数 = 高度相似的图。

2.运行后操作

  • 是什么:在图片生成完毕后,自动进行的后期处理。比如用另一套算法(如Hires.fix)放大并补充细节,或者人脸修复。

  • 通俗理解画作完成后的"精修和装裱"。给草图放大并添加高清细节,或专门优化人脸。

如果我们将"运行后操作"设置成"fixed",即:固定。那么只要我们的其他参数,比如提示词、随机种啥的都不变,那么无论我们点击多少次生图按钮,始终会生成同一张图片。

3.步数

  • 是什么:画家进行"观察-修改"循环的次数。步数越多,画得越精细,但超过一定值后提升不明显且耗时增加。

  • 通俗理解画家的"修改次数"。10步可能画出草图,50步能画出细节,但1000步可能只是在做无意义的微调。

说白了,就等于我们擦一块很脏的玻璃。

  • 你擦2下,肯定还是很脏;
  • 你擦50下,差不多就很清晰了;
  • 你擦1000下,基本没啥意义,可能会适得其反,因为擦50下的时候差不多就够了,足够清晰了。

因此,步数不建议太多。

4.CFG

  • 是什么:AI在作画时,对你给出的提示词的"服从程度"。值越高,越严格遵循你的提示;值越低,AI自由发挥空间越大。

  • 通俗理解你对画家的"控制力强弱"。CFG=7,画家会认真听你的要求;CFG=1,画家几乎按自己想法乱画;CFG=20,画家会僵化地、过度地执行你的每个词。

因此,我们要让AI听我们的话,按照我们的想法画图,就要设置较高的CFG值。但是CFG值也不能太高,太高了也会适得其反。因此CFG值建议设置成5~8

5.采样器

  • 是什么:画家在每一步"如何修改画作"的数学算法。不同算法在速度、质量和创意上有差异。

  • 通俗理解画家的"绘画技法"。有的技法快但粗糙(如Euler a),有的技法慢但精细稳定(如DPM++ 2M Karras)。

说白了就是进行降噪的方法。

降噪器通常采用dpmpp_2m

6.调度器

  • 是什么:控制在整个绘画过程中,每一步的"修改力度"应该如何变化。

  • 通俗理解画家的"工作节奏"。是先大刀阔斧地改形状,再慢慢雕琢细节(Karras调度),还是均匀地每一步修改一点(线性调度)。

说白了就是进行降噪的力度。

调度器通常采用karras

7.降噪

  • 是什么:从纯噪声一步步清理出清晰图像的过程。降噪强度决定了清理的"力度"。

  • 通俗理解画家"从模糊到清晰"的作画过程。降噪值越高(如0.8),画家初始时看到的"模糊稿"越模糊,需要更多想象力和步骤来画清晰。

举例:下图就是一个不断降噪的过程。

五.文生图逻辑

1.流程图

2.大白话

①用户想要生成"一只戴着帽子的狗",于是输入提示词"A dog wearing a hat"。(由于只能识别英语,所以要转成英文),并发送到CLIP模型

②CLIP模型将用户提示词,转换成特征向量,然后发送到U-Net模型

③噪声添加:不同的随机种,对应不同的初始画板,生成不同的高斯噪声。然后发送到Latents

④Latents用来设置画布的大小、画出多少个图。

⑤结合了高斯噪声的latents图像(③+④),会在U-Net模型中,与用户的特征向量(②)结合,进行降噪

⑥K采样器的步数,会决定⑤这一套步骤的循环次数,也就是降噪的次数,橙色框就代表采样器和调度器(采样器决定降噪的方法、调度器决定降噪的力度)

⑦经过N次(步数)降噪得出的Latent图像,会发送到VAE

⑧VAE会将Latent图像,转换成我们看到的图像。

六.质量词

质量词,可以让AI生成质量更高的图片。

说白了,就是如何让AI生成更高质量的图片?

1.输入正面条件

注意:要先写质量词汇,再写主体,最后写环境词汇。

因为越靠前的,越重要,权重越大。

还要把中文翻译成英文:

A masterpiece, high quality, and ultimate details. A programmer is sitting in a dark bedroom, programming on a computer, wearing glasses, with black hair and a suit, in an anime style.

2.输入负面条件

就是告诉AI我们不想要啥呗,比如模糊、难看等等。

这些不用我们写,有人整理成一个包了,我们直接按照下面的方法写就行:

3.点击生图,测试效果

以上就是本篇文章的全部内容,喜欢的话可以留个免费的关注呦~~~

相关推荐
极客小云1 天前
【ComfyUI API 自动化利器:comfyui_xy Python 库使用详解】
网络·python·自动化·comfyui
爱知菜1 天前
ComfyUI 自助下载 WD14 Tagger的模型文件
comfyui
jiang_changsheng2 天前
RTX 2080 Ti魔改22GB显卡的最优解ComfyUI教程
python·comfyui
学易2 天前
第十五节.别人的工作流,如何使用和调试(上)?(2类必现报错/缺失节点/缺失模型/思路/实操/通用调试步骤)
人工智能·ai作画·stable diffusion·报错·comfyui·缺失节点
福大大架构师每日一题3 天前
ComfyUI v0.12.2 发布——新增 4B ACE Step 1.5 模型支持,修复多项稳定性问题!
comfyui
jiang_changsheng3 天前
MCP协议的核心架构基础
c语言·开发语言·c++·python·comfyui
love530love3 天前
【实战经验】解决ComfyUI加载报错:PytorchStreamReader failed reading zip archive: failed finding central directory
人工智能·windows·python·ai作画·aigc·comfyui·攻关
jiang_changsheng4 天前
ComfyUI 启动器中的“原生环境管理”
comfyui
jiang_changsheng4 天前
ComfyUI 之路:学习图谱
comfyui