抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

ControlNet

ControlNet是在Stable Diffusion模型上添加辅助模块,添加额外条件来控制AI绘图过程

ControlNet

ControlNet将SD模型复制两份,一份锁定,一份使用额外数据进行微调,最后将两份合并绘图。于是我们可以使用少量图片实现微调,同时保持SD数十亿张图的训练效果

参数介绍

运行你的SD,在浏览器打开xxx:port/docs即可查看SD的Fast API

"controlnet": {
"args": [
{
"module": "none",
"model": "controlnet_sd15_depth [0f018aa1]",
"weight": depth_weight,
"resize_mode": "Crop and Resize",
"lowvram": False,
"guidance_start": 0,
"guidance_end": 1,
"pixel_perfect": False,
"control_mode": "Balanced",
"hr_option": "Both",
"save_detected_map": True,
"input_image":encode_file_to_base64(depth_img_dir)
}
]
}

model

ControlNet模型

weight

使用ControlNet模型辅助控制SD生成图片时的权重

resize_mode

缩放模式(以512x500到1024x1024为例)

  • Just Resize:不考虑宽高比,直接将图像拉伸(到1024x1024)
  • Crop and Resize:考虑宽高比,先裁剪(到500x500)后缩放(到1024x1024),会丢失裁剪的内容
  • Resize and Fill:通过添加噪音先填充(到512x512)后缩放(到1024x1024)

lowvram

低显存模式,如果显卡显存小于4GB,可以使用降低图像生成时显存占用

guidance_start

引导介入时机,表示在图片生成过程中的哪一步开始使用ControlNet进行控制。

如果设置为0,就表示从一开始就使用ControlNet控制图片的生成;如果设置为0.5就表示ControlNet从50%的步数时开始进行控制

guidance_end

引导推出时机,表示在图片生成过程中的哪一步结束ControlNet的控制

pixel_perfect

完美像素模式,开启后不需要手动设置分辨率

control_mode

控制模式,用于确定ControlNet和自己的Prompt之间谁更重要

使用

  • 深度图,使用一张深度图,精准控制生图的深度结构
  • OpenPose,使用骨骼姿势图,可以精准控制姿态,尤其是手、脸
  • Segmentation,通过对图片内容语义分割,自动生成一张彩色的mask图,再进行绘制
  • Inpaint,对mask部分进行重绘
  • Outpainting,扩充重绘,扩图

参考

深入浅出完整解析ControlNet核心基础知识

评论