Pruna 的 Qwen-Image 2.1 移除对象 LoRA:6 步擦除,其余不动
ComfyUI Wikinews
PrunaAI 的 Remove-Object LoRA 无需 CFG,6 步即可从 Qwen-Image 2.1 照片中擦除遮罩指定的对象,画面其余部分保持原位,并提供 ComfyUI 工作流。
PrunaAI 于 11 月 10 日发布了 P-Q-Image-2.1-Remove-Object:这是一个 rank-32 LoRA,能删除照片中被你遮罩的对象,并让画面其余部分保持在原位置。6 步和 8 步两个变体基于 Pruna 的蒸馏 LoRA 运行,无需 CFG,ComfyUI 导出包内附带两个可直接使用的工作流,以及一个小节点,用于绘制模型所需的遮罩轮廓。
![]() | ![]() |
|---|---|
| 照片 | 6 步,"移除撑着伞走过广场的人。" |
人消失了,连带着他在湿漉漉的广场上投下的长长倒影也一并消失,尽管那倒影位于遮罩之外。铺装纹理在原处自然延续。
同一个 LoRA 用在另一张照片上,6 步,约 2 MP。示例来自模型卡片。
为什么选这个
Qwen-Image 2.1 的编辑往往会重绘整个画面:颜色发生偏移,输出也不再与输入对齐,而少步蒸馏会让情况更糟。这个 LoRA 的训练目标就是保持对象之外的像素不变,因此结果能按原有尺寸回贴到原图上。这让它可以当作收尾工具使用,而不只是个演示。
运行方法
- 更新 ComfyUI 到支持 Qwen-Image 2.1 和子图的版本。
- 文件: 把 Comfy-Org/Qwen-Image-2.1 的扩散模型、文本编码器和 VAE 放进各自对应目录,再把两个 LoRA 放入
ComfyUI/models/loras/:来自 PrunaAI/P-Q-Image-2.1-Comfy 的 6 步蒸馏 LoRAp_q_image_2.1_6_steps_v0.2_comfyui_bf16.safetensors,以及来自此仓库 的p_q_image_2.1_remove_object_6_steps_v0.1_comfyui_bf16.safetensors。 - 自定义节点: 将
precise_removal_outline/复制到ComfyUI/custom_nodes/,把它的requirements.txt(opencv)安装到 ComfyUI 所用的 Python 环境中,然后重新启动。 - 遮罩: 右键点击加载图像节点,选择在遮罩编辑器中打开,在对象上涂抹并保存。也可以直接使用遮罩文件(白色 = 移除);如果不提供遮罩,仅凭指令即可指明要移除的内容。
- 在 Precise Removal Outline 中填写指令,例如
Remove the man on the left.该节点会绘制红色轮廓,并追加模型训练时使用的句子。
示例设置为 6 步、不使用 CFG,removal_strength 为 0.7,蒸馏 LoRA 强度为 1.0。工作流打开时自带一个已画好遮罩的示例。
| 变体 | 步数 | 蒸馏 LoRA | 强度 |
|---|---|---|---|
6-step(默认) | 6 | p_q_image_2.1_6_steps_v0.2 | 0.7 |
8-step | 8 | p_q_image_2.1_8_steps_v0.1 | 0.7 |
base | 40 | 无 | 1.0 |
局限
- 它可能删掉超出对象的内容。 轮廓的权重高于文本,因此如果遮罩同时覆盖了你想保留的内容,那部分也会被删除。在对象相互重叠的区域要把遮罩收得紧凑一些。降低强度并不能解决这个问题。
- 填充区域可能看起来比周围更平滑,或出现淡淡的网格。强度为 0.5 时,部分移除会失败,对象仍然保留,只是颜色被改变。
- 仅支持移除。 添加或替换对象从未经过训练,效果不比基础模型更好。
- 在杂乱场景中不启用遮罩时,仅靠指令往往比粗糙的遮罩效果更好。
获取方式
- LoRA、ComfyUI 导出包、节点和工作流:PrunaAI/P-Q-Image-2.1-Remove-Object 和 PrunaAI/P-Q-Image-2.1-Remove-Object-Comfy
- 蒸馏 LoRA:PrunaAI/P-Q-Image-2.1-Comfy
- 基础模型:Qwen/Qwen-Image-2.1,ComfyUI 重打包版本见 Comfy-Org/Qwen-Image-2.1


评论
使用 GitHub 登录后即可参与讨论。