如何利用ControlNet与Loopback来控制图片中的光影

新知榜官方账号

2023-07-05 12:42:41

如何利用ControlNet与Loopback来控制图片中的光影

在出拟真或真人类型的图片时,常常遇到的问题就是光源太亮。在许多热门模型上,由于使用太多大白天模特儿的图片,或者摄影棚高光图片来训练,所以在弄出人物时,尽管场所设定在夜间,也会出现不自然的超高光,或者整个照片的光源阴影不遵照提示词来布局的问题。

之前介绍的StableDiffusion进阶——光影控制实战都是可行的光影控制方法,而本篇要针对的是更细微的控制,将已经生成的图片重新更改光源与阴影,且产生不同程度的明暗程度让制作者可以挑选最佳的光影成果。

方法我们先使用txt2img生成一张在夜晚森林之中的角色图:

许多时候模型生成的图片并不一定依照我们的想法来布局明暗与光影,有时候是因为模型训练时用了太多模特儿的摄影棚拍照片,或者LoRA在训练时缺乏多样化的光影,或者使用太多提示词互相牵制,导致某些强烈的光影效果被取消掉。总之,在尝试各种提示词也无法产生想要的光影时,可以试试看利用ControlNet配上Loopback的手段来产生一整批不同明暗程度的图片,再从里面挑出最好的结果。

首先,在本例中,我想要在画面中央上方制造一个月亮当作光源。我开启任意绘图软件,例如photoshop,打开新画布,选择全黑背景,然后用画笔弄出白色光源遮罩,将这张图输入到img2img里面,提示词则保持与原始图一样:光源遮罩。

接着在img2img的设定中,使用Denoisingstrength0.4这样的中等权重:img2img。

接着开启ControlNet,设定两组。第一组使用Openpose以固定图片生成时人物的姿势不跑掉,使用ContorlNetismoreimportant:ControlNet的Openpose设置。第二组的ControlNet使用canny(边缘侦测)或者normal(法线图)皆可,用以固定原始图片里面人物的形状与表情,使用ContorlNetismoreimportant:ControlNet的Canny设置。

最后,最重要的是Loopback的设定,藉由Loopback的循环输入能力,我们才能将一片漆黑的基本遮罩慢慢还原出整张图。在这边我设定10回合,且Finaldenosingstrength设定为0.75的高权重,在后几回合产生较大的明暗变动:Loopback成果。

一切都设定完成之后,就能来跑图了,等十回合都跑完后,就能来挑选图片:

从遮罩还原出图片可以看出一开始,AI在一片漆黑的遮罩之下只能勉强算出光源附近的人物轮廓,但随著成果图不断循环输入,图片会越来越清晰,且阴影分布会依照物体的相对关系和光源强弱改变。如果是使用ControlNet的canny来固定形状,有些强烈的阴影分界线会被采样进来,因此干扰了光影分布,如果是这样,可以下载Canny的图片抹掉这些额外的线条,或者可以改用normal来固定形状,但可能会造成衣服样式完全改变。

最后,我挑选了最符合我想像中的夜晚森林有月光又足够暗的图片,大约在第七张左右:

除了人物的阴影改变了,背景的森林与道路的阴影也完全不同了,更符合月光照明的氛围,基本符合我的需求!

本页网址:https://www.xinzhibang.net/article_detail-5808.html

寻求报道,请 点击这里 微信扫码咨询

关键词

ControlNet Loopback 光影控制

分享至微信: 微信扫码阅读

相关工具

相关文章

相关快讯