Stable Diffusion教程:额外功能/后期处理/高清化

来源:极绘AIjihuiai

"额外功能"对应的英文单词是Extras,算是直译。但是部分版本里的翻译是“后期制作”或是“高清化”,这都是意译,由于它的关键功能是放大图片、去噪、修脸等对图片的后期制作。注意这里边对图片的处理不是Stable Diffusion自身的能力,都是额外扩展的。

下面正式启动介绍“额外功能”的有关能力。

图片放大

 

先看最基本图片放大能力。针对分辨率较为小的图片,假如强制用较大的分辨率展现,会有图片模糊的现象,这时候就可以应用SD WebUI的图片放大功能。所谓图片放大便是在维持图片清晰度的前提下提升图片的分辨率,它还有个专业点的名词:超分辨率技术,称之为“超分”。

1、主菜单中点击查看“额外功能”。

2、点击“单张图像”,也就是一次只解决一张图片。后边的“批量处理”能够提交多张图片予以处理,“批量处理目录下图像”可以指定解决一个目录下的全部图片。

3、点击上传一张要处理的照片。

4、挑选缩放比例。这里有两种方式:依照比例缩放和特定分辨率缩放,特定分辨率时可以设置是否自动裁剪,都很好理解,试试就懂了。

5Upscaler1用于特定放大算法,常见的放大算法有下面几个:

·无/None:单一的放大,不做任何优化处理。

·Lanczos:应用加权平均插值方法,运用初始图像自身的像素信息,提升图像的细节,进而提升图像的分辨率。传统的纯数学算法,效果一般。

·Nearest:应用简单插值方法,基于最近邻像素的值进行插值,从而增加图像的细节和提高分辨率。传统的纯数学算法,效果一般,不如Lanczos的效果好。

·LDSR:基于深度学习,根据使用轻量级的网络架构和残差学习,完成较高的超分性能计算效率。适用于各种必须快速且准确地提升图像分辨率的使用场景,如实时监控解决、移动终端图像处理等。

·ESRGAN:全名EnhancedSuper-ResolutionGenerativeAdversarialNetworks(提高超分生成对抗网络),基于深度学习的超分辨率算法。增加了很多看起来很真实的线条,但是有时可能会过度拟合,发生不好的效果。

·4x-UltraSharp:基于ESRGAN做了提升,较为适合解决真人。

·ESRGAN_4xReal ESRGAN,彻底应用纯生成数据来尽量接近真实数据进行练习。腾讯奉献。

·R-ESRGAN4x+:基于Real ESRGAN的优化模型,适宜放大真正样式的照片,常见。

·R-ESRGAN4x+Anime6B:基于Real ESRGAN的优化模型,适宜放大动漫风格的照片,常见。

·ScuNET GAN:基于深度学习,应用生成对抗网络(GAN)进行练习。主要用在提升图像视觉效果和感知质量,比如在图像提高、视频编辑等。

·ScuNET PSNR:基于深度学习,应用均方误差(PSNR)进行练习。主要用在提升图像的客观质量与精确性,比如在医学图像分析、监控录像处理等。

·SwinIR_4x:应用Swin Transformer观念,基于自注意力机制的Transformer构造,适合各种图像的超分,较为通用。

这些算法会到首次使用它们时各自下载,你也可以提前下载他们,并放到指定的目录。我搜集的SD绘画资源里已经搜集了这些文件,下载方式请看本文最后的部分。

6Upscaler2用于防止Upscaler1过多处理的问题,例如磨皮太严重。可以使用一些一般方式算法,例如LanczosUpscaler2能见度是指图片放大时进行Upscaler2算法进行解决比例,为0时一点不应用Upscaler2,为1时只使用Upscaler2

7、点击“生成”。

8、放大后的图片在这儿表明。

 

总结

这个图片放大功能主要目的是放大Stable Diffusion产生的低分辨率照片,由于图片分辨率越大对显存的需求也越大,因此对于显存较小的同学,可以先在文生图中生成一张低分辨率照片,然后再在这里放大。

针对修补模糊图片,这个图片放大功能其实水平有限,实际测试WebUI默认带有的放大算法也就是能去去噪点,消消锯齿,出图的效果并不太好,尤其是本来就很糊的照片。

不过可能存有其他的算法具备较好的模糊图片修复效果,大家可以找来试试。推荐一个放大模型的下载网站:https://openmodeldb.info/

 

修脸

 

尽管图片放大自身对修补模糊图片的效果有限,但它附带了一个修脸参数值。假如文生图生成的人脸效果不佳,例如磨皮太严重、人脸变形等,都可以在这里试试。针对模糊的人脸,也有比较好的修复效果。

1GFPGAN:腾讯开源的一个修脸模型,修补的细节比较清晰,人物形象的还原度非常高,气场维持好。

2CodeFormer:另一个修脸模型,修图的细节也比较清晰,皮肤纹理更准确一些,不过这个模型对牙齿的处理效果不佳。这个模型还有一个脸部重建权重的参数,取值范围0-10时模型会补充很多细节,脸部改变较大;1时脸部几乎没有改变,不会补充很多细节,但还是有修脸的效果。

这俩模型可以一起应用,我们通过GFPGAN visibilityCodeFormer visibility来设置它们参与性。

以下是几组实例。

1、原图是Stable Diffusion产生的,我用照片管理工具缩小了分辨率。能够看见,相比仅放大,加上修脸以后,人物的脸部有了很大的改进。

2、这是一张从网上收集的照片,原图便是比较模糊的老照片,各自单独使用GPFGANCodeFormer的效果。GFPGAN的人物气质拿捏的比较到位,CodeFormer脸部纹路更准确一些,可是不宜将重建权重设定的太小。

3、这也是从网上收集的照片,照片损坏比较严重,使用的GFPGAN模型,能修复一些损坏。