ComfyUI Node

YOLOv8n Face

The tiny detector that feeds your face workflows

By Runware·Created 2 years ago·Updated about a month ago· 140
YOLOv8n Face
  • image
  • image
settings.confidence0.50
settings.maskBlur5
settings.maskPadding10
settings.maxDetections6
ttlfalse
ttl_value60
outputFormatJPG

YOLOv8n is the nano model in Ultralytics' object-detection family - the one that runs on a toaster and still finds things - and here it's pointed at faces. This node detects the faces in an image and hands the result back as an IMAGE, with the detection tuned by a few quality settings. It's not a generator and it's not a beauty filter; it's the utility step that tells you where the faces are.

The thing to understand first: this node runs as an imageMasking task on Runware's cloud, and its settings - maskPadding, maskBlur, confidence, maxDetections - make clear it's producing face regions/masks, not just bounding boxes. That makes it a support node for face-centric pipelines: detecting which faces to target, generating face masks for selective editing or inpainting, or pre-processing before a face-aware model. On a local setup you'd wire this job into FaceDetailer territory; here it's a hosted call that costs a few cents.

Inputs that matter

image is required. The settings that actually shape the output:

  • settings.confidence - detection threshold, 0–1, default 0.5. Only detections above this score come back. If you're missing half the faces, drop it to ~0.3; if you're getting garbage detections, raise it.
  • settings.maxDetections - cap on how many faces to return, default 6. The model keeps the highest-confidence ones beyond the cap. For group-photo work, raise it.
  • settings.maskPadding - pixels to extend (positive) or shrink (negative) the face region, default 10. Positive gives the mask a little hair/neck context - useful before a face-region inpaint - and it's the "inclusive vs tight" knob.
  • settings.maskBlur - blur radius on the mask edges, default 5. Higher = softer, more compositing-friendly transitions.

outputFormat is the one file knob; ttl/ttl_value are the standard pack tail.

How it works

The node sends runware:35@1 as an imageMasking task through the Runware SDK, with your image uploaded as part of the request. The returned face mask(s) come back as a native IMAGE tensor. Since the output is an IMAGE, you can feed it straight into other Runware nodes - as a maskImage for inpaint/outpaint work, or into an ultralytics-aware step - or save it. The title bar logs cost per run.

Install and gotchas

cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt

Restart; API key via Settings → "Runware API key", RUNWARE_API_KEY, or runware auth login. Paid per call, minimum top-up.

The honest expectations: the "n" in YOLOv8n means it trades accuracy for speed - it's the fastest, cheapest detector, not the most precise one. On hard angles, heavy occlusion, or tiny faces in crowd shots, it'll miss some. And this is a face-masking node in a cloud pack: it's the right tool when you're already renting inference and need a quick region map, and the wrong tool if you need a detailed keypoint/landmark model or want to run detection for free on your own GPU (any local Ultralytics install does that better). It's a plumbing node - wire it in where a mask or a detection feed is what your graph is missing.

CategoryRunware/Image/runware

Inputs (8)

NameTypeDefaultDescription
imageIMAGE
settings.confidenceoptFLOAT0.500–1Confidence threshold for detections. Only detections above this score are included.
settings.maskBluroptINT50–100Blur radius for mask edges, creating smooth transitions.
settings.maskPaddingoptINT100–200Pixel amount to extend (positive) or shrink (negative) the mask area.
settings.maxDetectionsoptINT61–20Maximum number of detections. Prioritizes highest confidence scores if exceeded.
ttloptBOOLEANfalseEnable to set ttl. Off uses the model's default.
ttl_valueoptINT60Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.
outputFormatoptCOMBOJPGFile format for the generated image.

Outputs (1)

NameTypeDescription
imageIMAGE