Nodes/ComfyUI LC MaskMaker Nodes/LC Character Detailer (BETA) 🩹
ComfyUI Node

LC Character Detailer (BETA) 🩹

LC Smart Detailer for one character. SAM 3 finds every match (every face, every person) and only one of them is redrawn: the Nth from the left, right or top, the Nth largest, or the one inside a box of LC Bounding Boxes. Give each character its own: branch the model, add that character's LoRA, and pick their face here. Same settings and the same engine as LC Smart Detailer.

By lonecatone23Β·Created about a month agoΒ·Updated about 10 hours agoΒ· 9
LC Character Detailer (BETA) 🩹
  • image
  • model
  • vae
  • positive
  • inpaint_positive
  • negative
  • elements
  • image
  • mask
β—„promptFaceβ–Ί
β—„sam3_modelβ–Ύβ–Ί
β—„threshold0.50β–Ί
β—„pickleft to rightβ–Ί
β—„number1β–Ί
β—„grow4.0β–Ί
β—„feather8.0β–Ί
β—„blend0.80β–Ί
β—„padding64β–Ί
β—„inpaint_resolution1024β–Ί
β—„sampler_nameβ–Ύβ–Ί
β—„schedulerβ–Ύβ–Ί
β—„steps20β–Ί
β—„cfg1.0β–Ί
β—„denoise0.30β–Ί
β—„seed0β–Ί
β—„tone_matchtrueβ–Ί
CategoryLC MaskMaker/detailer

Inputs (24)

NameTypeDefaultDescription
imageIMAGEβ€”
modelMODELβ€”
vaeVAEβ€”
positiveCONDITIONINGThe image's prompt. A prompt describing the whole scene can get drawn into every crop at denoise 0.3 and up (a whole tiny scene in the face): wire inpaint_positive to prevent that.
promptSTRINGFaceWhat to detail, as simple words separated by commas: hands, face. Every match is found (both hands, every face). Add :N to cap it, e.g. face:1.
sam3_modelCOMBOSAM 3 model that does the finding. Pick the SAM 3.1 download, or use your own sam3.pt / sam3.safetensors in models/sam3.
thresholdFLOAT0.500.05–0.95How sure SAM 3 has to be. Lower finds more (and more wrong things), higher is pickier. 0.5 is a good start. Colors are only a hint: 'red dress' can still pick a green dress. Things that are not there are not found.
pickCOMBOleft to rightWhich match this detailer redraws (SAM 3 finds them all). With several words (face, hair) the first one picks the person and the others come along when they belong to them. left to right / right to left / top to bottom: number 1 = the first one that way. largest first: number 1 = the biggest. in box: the one inside box 'number' of LC Bounding Boxes (wire its elements): the face stays with its character even when the pose changes.
numberINT11–32Which one: 1 = the first. With pick on in box, the box's number as shown on LC Bounding Boxes.
growFLOAT4.0-64–256Pixels to grow (positive) or shrink (negative) the mask before inpainting. Growing a little covers the edges.
featherFLOAT8.00–128Softness of the mask edge in pixels, so the redrawn area blends into the rest. 0 = hard edge.
blendFLOAT0.800–1How much of the redraw is pasted in: 1 = all of it. Below 1 the old and new pixels are mixed, and features the redraw moved a little (lashes, eyelids) can show twice. For a lighter redraw, lower denoise instead.
paddingINT640–1024Pixels of the surrounding image included with each crop, so the model sees the context.
inpaint_resolutionINT1024256–4096Each crop is redrawn at about this many pixels squared (1024 = 1 megapixel), whatever its shape. Higher = more detail, slower.
sampler_nameCOMBOSampler.
schedulerCOMBOScheduler.
stepsINT201–150Sampling steps.
cfgFLOAT1.01–30CFG for the redraw. 1 works for Krea 2, Flux, Z-Image, Anima and, at detailer denoise (up to about 0.4), SDXL too (tested: SDXL looked the same at cfg 1 to 7). Never goes below 1: below 1 the redraw comes out speckled.
denoiseFLOAT0.300–1How much is redrawn. Low keeps the shape and fixes details, high redraws from scratch.
seedINT00–18446744073709550000Seed for the redraw.
inpaint_positiveoptCONDITIONINGOptional. A prompt for the crops only, e.g. 'close-up of a woman's face, natural skin'. Used instead of positive for the redraw. Recommended whenever positive describes the whole scene.
negativeoptCONDITIONINGOptional. Leave empty for cfg 1 models; wire it for SDXL and other models that use a negative.
tone_matchoptBOOLEANtrueOn: the redraw gets the original's brightness, contrast and colour back where it is pasted, keeping the new detail. A light redraw comes back a little flat and dull without it. Turn off when the redraw is meant to change colours (a new shirt colour, a different object).
elementsoptARRAYLC Bounding Boxes' elements, for pick = in box.

Outputs (2)

NameTypeDescription
imageIMAGEβ€”
maskMASKβ€”