前言
在AI绘画软件 stable diffusion 中,有一个非常强大的插件ControlNet,今天我们来一起探讨 ControlNet插件中的canny算法。
canny算法,翻译过来叫边缘检测,这个算法的优势是能够对参考图中的边缘轮廓进行很好的识别,同时也能对内部细节进行精准的描绘。
canny算法经常和depth(深度信息)混合使用,今天我们来看下 canny 算法能为我们带来什么惊喜。
小贴士:开启ControlNet后,出图速度会明显变慢,大家根据自己电脑的硬件配置进行调整。
首先来到文生图界面,我在提示词中加入了中式建筑背景,服装为汉服,提示词如下:
1、canny算法搭配depth算法
在ControlNet中拖入参考图(图片我从网上随便找的),这次我们在标签0中选择canny 算法,标签1中选择depth算法。
两个算法的介入时间和退出时间都设为0.1和0.8,我不想让它们一开始时就产生作用,同时让它们在进程80%的时候退出,这样可以让AI有更多的发挥空间。
下图分别为canny算法和depth算法的预览图,左图为canny 算法产生的线稿图,右图为depth算法产生的深度图。
下图为两个算法权重均为1时的图片,人物整体风格已经生产了变化,但中式建筑背景没有出现。
再分别将两种算法的权重值降到0.75时,变化产生了更多,但中式背景仍没有出现
权重再次降到0.5的时候,服装产生了更多的变化,仍然没有出现中式建筑背景。但生成图片对原始图片整体结构的还原仍然比较精准。
2、只用canny算法
看来depth算法对原图结构的控制比较严格,为了提高AI的发挥空间,我们关掉depth算法,单独使用 canny 算法,下列5张图片分别为权重为1、0.75、0.5、0.25、0.1时AI生成的图片。
权重1
权重0.75
权重0.5
权重0.25
权重0.1
从上面5张图片中可以看出,当权重为1时,生成图片和原图比较接近,当权重为在0.75时背景开始出现了中式建筑,当权重为0.25时生成的图片中只剩下一个女孩,已经和原图产生了严重的不符。一般我们在生成图片时尽量将权重控制在0.8以下,再调整引导介入时机和退出时机,让引导时间变短,这样可以提高AI的随机性,让AI有更好的发挥空间。
领取专属 10元无门槛券
私享最新 技术干货