SDXL Inpainting 0.1 快速上手:10行Python代码完成你的第一次AI图像局部重绘
2026/8/23 13:08:05 网站建设 项目流程

SDXL Inpainting 0.1 快速上手:10行Python代码完成你的第一次AI图像局部重绘

【免费下载链接】stable-diffusion-xl-1.0-inpainting-0.1项目地址: https://ai.gitcode.com/hf_mirrors/diffusers/stable-diffusion-xl-1.0-inpainting-0.1

SDXL Inpainting 0.1是 Stability AI 推出的 SDXL 图像局部重绘(Inpainting)模型:只要一张图片 + 一张遮罩 + 一句提示词,它就能精准"擦掉"指定区域并按你的描述重新绘制,同时保持画面其余部分几乎不变。本文是一份面向新手的完整指南,帮你用不到 10 行 Python 代码,快速跑通第一次 AI 图像局部重绘。

📦 安装 diffusers:一条命令搞定

本模型基于 Hugging Face 的 diffusers 推理库加载运行,安装非常简单:

pip install diffusers transformers accelerate torch

模型体积较大(约 10 GB+,含 fp16 权重),建议优先从国内镜像源下载;如果你无法访问原始站点,可使用本仓库地址克隆获取全部权重文件:

git clone https://gitcode.com/hf_mirrors/diffusers/stable-diffusion-xl-1.0-inpainting-0.1

🎨 10行Python代码,完成第一次AI图像局部重绘

下面这段代码就是完整流程:加载模型 → 读入原图和遮罩 → 执行局部重绘 → 保存结果。

from diffusers import AutoPipelineForInpainting import torch from PIL import Image pipe = AutoPipelineForInpainting.from_pretrained( "hf_mirrors/diffusers/stable-diffusion-xl-1.0-inpainting-0.1", torch_dtype=torch.float16, variant="fp16").to("cuda") image = Image.open("cat.jpg").resize((1024, 1024)) # 原图 mask = Image.open("mask.png").resize((1024, 1024)) # 遮罩:白色=重绘区域 result = pipe("a tiger sitting on the same sofa", image=image, mask_image=mask, guidance_scale=8.0, num_inference_steps=20, strength=0.99) result.images[0].save("out.png")

遮罩怎么用?遮罩是一张黑白图:白色区域会被擦掉并按提示词重绘,黑色区域保持原样。你可以用任意画图工具制作,分辨率与原图一致即可。官方示例把一张猫图上的沙发区域遮罩后,提示词 "a tiger sitting on a park bench" 就把该区域变成了老虎,其余像素几乎原封不动。

⚙️ 核心参数速查:重绘效果怎么调

参数建议值作用
num_inference_steps15~30(推荐 20)推理步数,越多质量越高、耗时越长
strength0.9~0.99(必须 < 1.0)重绘强度;接近 1 表示遮罩区完全按提示词重画
guidance_scale7.5~9提示词遵循度,过大容易过饱和
分辨率1024×1024模型训练分辨率,其他尺寸效果可能下降

💡 官方提示:strength设为 1 时(即全遮罩文生图)图像会变模糊,局部重绘场景下请用 0.9 以下到 0.99 之间的值。

🔍 模型目录结构:每个文件夹都是干什么的?

仓库里的每个文件夹对应模型的一个组件,方便你按需管理或替换权重:

路径组件说明
unet/UNet2DConditionModel扩散主干网络,输入通道为 9(4 通道原图 + 4 通道潜码 + 1 通道遮罩),局部重绘的核心
text_encoder/text_encoder_2/CLIP × 2双文本编码器,把提示词转成语义向量
tokenizer/tokenizer_2/CLIPTokenizer文本分词器
vae/AutoencoderKL图像与潜空间互转的 VAE
scheduler/EulerDiscreteScheduler采样器配置(timestep_spacing: leading
model_index.json索引各组件的加载清单,_class_nameStableDiffusionXLInpaintPipeline

其中 unet/config.json 里的in_channels: 9正是"能读图 + 读遮罩"的关键:普通 SDXL UNet 只有 4 个输入通道,而 Inpainting 版额外接入了掩码图像。

🚀 快速进阶:让效果更好的 3 个技巧

  1. 提示词要具体:描述被重绘区域的主体、姿态、光影,例如 "a red sports car, studio lighting, 4k"。
  2. 遮罩边缘留一圈羽化:白黑交界太硬会产生明显接缝,轻微模糊遮罩边缘过渡更自然。
  3. 固定随机种子:用torch.Generator指定 seed 可以复现结果,便于反复对比不同参数。

❓ 常见问题 FAQ

显卡显存要多少?SDXL Inpainting 建议 8GB 以上显存(fp16);显存不足可加--low_cpu_mem_usage或使用 CPU offload。

为什么重绘区域有"重影"?通常是strength过高或遮罩边缘过硬,调低到 0.85~0.95 并羽化遮罩试试。

能改非遮罩区域吗?不能。该模型只重绘遮罩内的像素,其余部分会被约束保持原样,这正是局部重绘的价值所在。

模型用途边界:该模型以研究和创作场景为主,不保证事实性内容(如人脸)的精确还原,使用前请遵守 OpenRAIL++ 许可与生成内容规范。


至此你已经完成了第一次 AI 图像局部重绘:从安装到出图,核心代码不到 10 行。接下来不妨换一张自己的照片、画几个不同形状的遮罩,感受strengthguidance_scale带来的效果差异——这就是玩转SDXL Inpainting 0.1的最短路径。

【免费下载链接】stable-diffusion-xl-1.0-inpainting-0.1项目地址: https://ai.gitcode.com/hf_mirrors/diffusers/stable-diffusion-xl-1.0-inpainting-0.1

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询