Pruna's Remove-Object LoRA for Qwen-Image 2.1 in 6 Steps

ComfyUI Wikinews

PrunaAI's Remove-Object LoRA erases a masked object from a Qwen-Image 2.1 photo in 6 steps without CFG, keeps the rest of the frame in place, and ships ComfyUI workflows.

PrunaAI released P-Q-Image-2.1-Remove-Object on November 10: a rank-32 LoRA that deletes the object you mask from a photo and leaves the rest of the frame where it was. The 6-step and 8-step variants run on Pruna's distillation LoRA without CFG, and the ComfyUI export ships two ready workflows plus a small node that draws the mask outline the model expects.
PhotoResult
Photo6 steps, "Remove the person with the umbrella walking across the plaza."

The person goes, and so does the long reflection they cast on the wet plaza, even though it sat outside the mask. The paving continues through the gap.

Woman in a pink dress removed from a flower field

Same LoRA on a different photo, 6 steps, ~2 MP. Examples from the model card.

Why this one

Qwen-Image 2.1 edits tend to repaint the whole frame: colours shift and the output stops lining up with the input, and few-step distillation makes it worse. This LoRA was trained to hold the pixels outside the object, so the result drops back onto the original at its own size. That makes it usable as a finisher, not just a demo.

Run it

  1. Update ComfyUI to a build with Qwen-Image 2.1 support and subgraphs.
  2. Files: a diffusion model, text encoder and VAE from Comfy-Org/Qwen-Image-2.1 into their usual folders, then two LoRAs into ComfyUI/models/loras/: the 6-step distillation p_q_image_2.1_6_steps_v0.2_comfyui_bf16.safetensors from PrunaAI/P-Q-Image-2.1-Comfy and p_q_image_2.1_remove_object_6_steps_v0.1_comfyui_bf16.safetensors from this repo.
  3. Custom node: copy precise_removal_outline/ into ComfyUI/custom_nodes/, install its requirements.txt (opencv) into ComfyUI's Python, restart.
  4. Mask: right-click Load Image, Open in MaskEditor, paint over the object, save. A mask file works too (white = remove); without one, the instruction alone names what goes.
  5. Write the instruction in Precise Removal Outline, e.g. Remove the man on the left. The node draws the red outline and appends the sentence the model was trained on.

Sample 6 steps, no CFG, removal_strength 0.7 with the distillation LoRA at 1.0. The workflows open on a bundled example whose mask is already painted.

VariantStepsDistillation LoRAStrength
6-step (default)6p_q_image_2.1_6_steps_v0.20.7
8-step8p_q_image_2.1_8_steps_v0.10.7
base40none1.0

Limits

  • It can take more than the object. The outline outweighs the text, so a mask that also covers something you want to keep can delete that too. Keep it tight where objects overlap. Lowering strength does not fix this.
  • Filled areas can look smoother than their surroundings, or show a faint grid. At 0.5 some removals fail and the object stays, recoloured.
  • Removal only. Adding or replacing objects was never trained and runs no better than the base model.
  • With the mask off, the instruction alone often works better than a sloppy mask on crowded scenes.

Availability

Comments

Sign in with GitHub to join the discussion.

Loading comments…
Pruna's Remove-Object LoRA for Qwen-Image 2.1 in 6 Steps | ComfyUI Wiki