My stuff

  • My Workflows

  • Liked Workflows

  • Following Workflows

Go to OpenArt main site
Upload workflow

Clothing-Preserving Body Swap

5.0

0 reviews
11
8.3K
1.3K
5
Description

What's this?

Face Swap is a pretty popular task, but since it only swaps the face, things like body shape and skin tone stay the same. If you want to be more precise, you’d actually need to swap the whole body.

There are techniques that let you swap the entire person, but they also transfer the clothes — and I wanted to swap the person without changing their outfit.

So, I put together this workflow.

Basically, it swaps the person using ACE++, and then changes the outfit with catvton-flux. (You could switch the order if you like.)

As you might notice, pose preservation using ControlNet isn’t perfect yet, and skin tones don’t transfer flawlessly either — so there are still a lot of challenges.

Still, I hope you find the idea of a "Clothing-Preserving Body Swap" interesting!


Workflow

1st step

  • 🟪Swap the person using ACE++.
  • 🟦Since ACE++ alone tends to change the pose, I'm also using ControlNet OpenPose to help preserve it.

2nd step

  • 🟪Change the outfit using catvton-flux.
  • You can do outfit swapping with ACE++ too, but personally I find catvton-flux more stable and the quality is better.
  • 🟥 For masking the clothing area, I’m using a combo of SAM-2 + Florence-2.
Discussion

(No comments yet)

Loading...

Author

33
64.9K
961
343.5K

No reviews yet

  • - latest (8 months ago)

Primitive Nodes (19)

ACEPlusLoraConditioning (1)

ACEPlusLoraProcessor (3)

DownloadAndLoadFlorence2Model (1)

DownloadAndLoadSAM2Model (1)

Florence2Run (1)

Florence2toCoordinates (1)

FluxGuidance (2)

GetNode (1)

MarkdownNote (3)

Sam2Segmentation (1)

SetNode (1)

SetUnionControlNetType (1)

UnetLoaderGGUF (2)

Custom Nodes (29)

ComfyUI

  • - VAEDecode (2)

  • - LoadImage (2)

  • - CLIPTextEncode (4)

  • - ControlNetLoader (1)

  • - VAELoader (2)

  • - LoraLoaderModelOnly (2)

  • - DualCLIPLoader (2)

  • - PreviewImage (5)

  • - ImageCrop (2)

  • - GrowMask (1)

  • - ControlNetApplyAdvanced (1)

  • - KSampler (2)

  • - JoinImageWithAlpha (1)

  • - InpaintModelConditioning (1)

ComfyUI Nodes for Inference.Core

  • - DWPreprocessor (1)

Checkpoints (0)

LoRAs (2)

ACE_Plus\comfyui_portrait_lora64.safetensors

Flux-IC\catvton-flux-lora-alpha.safetensors