我们知道,一般AI绘画的图像大小都是512x512或者512x768这样的大小。
但是这种图像清晰度太低了,稍微放大一点看都不能看,全是格子,全是锯齿。
虽然可以在生成图片的时候,点击hires.fix直接放大,但是,这个功能对显存和算力的要求都十分高,勾选之后,动不动就爆显存,显示CUDA out of Memory,运算时间还超慢。
虽然可以在Extra附加功能里面,给小图放大,但是感觉它的放大,只是文件的放大,图像的质量和精细度,并没有明显提高。
虽然可以在img2img模块,直接用拉高 图片大小,生成2k的图像。但是,2k太小了。如果我要4k的图,8k的图, 那远远不够。
而且,拉满2k的图生图,也要十几二十G的显存了,很多人根本就用不了。
还好,我今天给大家带来一个小工具,可以帮助你小显存(6G或者以下)也能画出2k,4k的图片。
他的原理是,把你要生成的大图切割成为几个小图分别生成,因此,对小显存的电脑非常友好。
但是因为功能藏得比较深,很多同学还不会用。
今天,就教大家来用一下这个功能。
1.下载插件并启用。
插件名字叫做ultimate-upscale-for-automatic1111,地址是https://github.com/Coyote-A/ultimate-upscale-for-automatic1111。可以通过install from url或者直接下载zip包解压来使用。
接着在extension -> installed模块找到并启用它。然后应用并重启(apply and restart UI)
2.打开ultimate SD upscale
在img2img模块最下面,找到script下拉框,接着选择ultimate SD upscale。
( 如果下拉框找不到,证明你安装启用插件不成功,可能需要重新安装这个插件,或者重启webui)
3.获取原图的图片提示词,让图片放大更贴合我们的原图
找到你想放大的图片,用tagger插件(需要提前下载安装wd14 tagger插件)反推其提示词。并添加质量控制语句。
如果你自己有原图的生成语句那就可以省去这一步。
4.把提示词放在img2img模块,并增加质量控制语句和负面提示词。
5.设置参数
(1)img2img参数
采样器改成dpm++ SDE Karras
步数可以提高一点,比如30-40,或者更高
重绘幅度默认是0.75,这里我们只是放大图片,一定不要调太高,需要0.3以下,建议0.1-0.2之间。
尺寸(width height)不用管,因为下面插件部分会接管尺寸的设置。
(2)插件ultimate SD upscale 参数
Size type选择的是放大倍数,右边选择4倍。(从512x768放大四倍变成2048x3072)
放大算法选择esrgan_4x(真人实景类建议选这个,动漫类建议选R-esrgan 4x + anime6B)
放大方式选chess,棋盘式放大。这样他会把你要放大的图切成多个格子分别重绘放大。
Type选half tile offset pass + intersections
Denoise重绘幅度选择0.3左右。
6.等待生成
可以看到,GPU内存在一个很低的水平,平均4-6G之间。虽然我有22G显存,但显存占用一直在一个很低的水平。
所以它这个算法对于显存的压力,还是比较小的。
7.对比图像
先看全图,似乎没有很大的差别。
但是你看眼神,皮肤肌理质感,右边就明显细节更多,更立体,有质感一些。
左边眼神空洞,感觉就像个硅胶娃娃,莫得灵魂。右边至少更像个人。
接着两张图都放大来看,原图放大之后基本不能看,都是一团一团的,很模糊。
而放大之后的图像,头发丝是一条一条的,甚至左侧头发的毛糙都看得到。牙齿缝有了,卧蚕立体感有了,眼睛变得清澈灵动了起来,眼睫毛也是可以看到一根一根的。
所以说,这样放大的效果,还是有效的。
更重要的是,它对小显存的电脑友好,就很棒啦~
好了,大家都学会了吗?学会了记得三连哦~
如果不会,有问题也可以私。
那么今天的课,先上到这里吧,下次再见,下课!
<End>
历史教程文集,请查看AI绘画教程文章合集0401
关注我们,更多AI绘图技能知识持续更新中~