【学习】NovelAI进行绘画创作


NovelAI进行绘画创作

近期在尝试制作的Unity游戏项目需要一些CG素材,由于实在缺乏资金向画师约稿……所以这边就想着用NovelAI或者Midjourney这样的AI绘画工具来生成一些令人满意的素材~

试了一下,还是NovelAI的生成效果比较好。不过用起来也很麻烦呀,需要去调整很多东西,改一些参数,合理选择Tag才能保证产图的效果。

在这个过程中,也可以学到一些调参方面的经验吧,大概。


登录已有的NovelAI网页资源

XianYun Web:https://nai3.xianyun.cool/main#/gen_img

不建议用NovelAI官网提供的版本……之前试着用过,效果并不如一些整合后的资源网所能提供的效果好。

一、界面介绍

主绘图界面主要分为三部分:Prompts编辑、绘制次数设定、绘图参数调整。

Prompts编辑

Prompts编辑界面,主要是Tag的选取。选取Tag对图像质量有着不可忽略的指导作用,一定要确保Tag符合自己的要求标准。

  1. Tag必须是英文输入,以”,”为间隔。实际上输入语言文本也能够进行生成,不过不太建议这样做。(虽然不太清楚它的文本序列Encoder-Decoder怎么设置的,应该是从一串文本序列里识别到特定的标签然后拿标签进行指导生成?)可以用上面自带的内容翻译进行中英互译。
  2. Tag里的括号表示加权,对某一个提示词的指导权重进行加强,直白点就是围绕这个提示词的生成效果变得更重。
  3. 如果不知道该用哪些提示词比较好,可以在左侧的Tag编辑器里预选一些可参考的提示词。
  4. 可以在Tag里指导生成图像所选用的画师画风。格式为”artist: xxx”,只要是模型预训练过的画师数据都可以进行指导生成。
  5. 词条笔记本、上传词条、随机Tag这些,日常使用很少用到,不作详述。

绘图参数调整

在调参界面,可以设定模型绘制的一些参数。一般来说都不必刻意去进行更改。

长宽设置:WidthHeight可以指定生成的图像大小比例,特定分辨率需要勾选启用分辨率才能应用生成。一般来说要增加图像的长宽像素的话,需要更多的显存。大尺度的图像一致性会随着分辨率的提高而变差(模型是在 512x512 的基础上训练的)。非常小的值(例如 256 像素)也会降低图像质量。

采样器设置:目前好用的有 EulerEuler a(更细腻),和 DDIM。推荐 Euler aDDIM,**新手推荐使用 Euler a**。

Euler a 富有创造力,不同步数可以生产出不同的图片。调太高步数 (>30) 效果不会更好。

DDIM 收敛快,但效率相对较低,因为需要很多 step 才能获得好的结果,适合在重绘时候使用

LMSPLMSEuler 的衍生,它们使用一种相关但稍有不同的方法(平均过去的几个步骤以提高准确性)。大概 30 step 可以得到稳定结果

PLMS 是一种有效的 LMS(经典方法),可以更好地处理神经网络结构中的奇异性

DPM2 是一种神奇的方法,它旨在改进 DDIM,减少步骤以获得良好的结果。它需要每一步运行两次去噪,它的速度大约是 DDIM 的两倍。但是如果你在进行调试提示词的实验,这个采样器效果不怎么样……

Euler 是最简单的,因此也是最快的之一。(搬运自AiDraw的文档指导~)

Steps一般不要设置得太少,毕竟是基于Stable Diffusion降噪生成图像。但设置得太高也会徒增生成时间。一般来说拉到28就够了。

绘制次数设定

简单易懂,设定一次绘制多少幅画。

二、拓展功能

除了最重要的NovelAI绘图部分,网站还设定了许多额外的拓展功能可供使用。

图像超分辨率

如果对生成的图像清晰度要求比较高,可以在这里对图像进行清晰化缩放。

一般来说,选择SwinIR_4x放大算法就够用啦。

Tag编辑器

如果对绘画功能的提示词Tag设置不明晰的话,可以借助Tag编辑器辅助选择Tag

预设提供的Tag标签有很多,随心所欲搭配直到生成令人满意的结果吧。

除此之外,还有图像反推Tag图像Tag识别两项功能,从提供的图像中识别出对应的标签(可能是基于CLIP模型做的吧?之前读Diffu Musk论文的时候读到过类似功能的实现方法)。


总的来说,差不多就是这样啦。之前看很多大佬通过NovelAI搭配出了非常好看的生成效果,现在自己也试着尝试一下吧。干什么都不容易哇,仅仅是利用AI进行一个生成,想要得到好的结果也需要很多学习和努力。

姑且自己设置提示词生成了一点素材,后续再挑拣一些后期修改放到Unity项目里吧:


文章作者: Cyan.
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Cyan. !
  目录