Image Crop Face
Grab the face out of an image (one face, by design)
Image Crop Face does what it says - finds a face in your image and crops it out. It's the front half of a detail-the-face workflow: crop the face, run it through a higher-quality generation or upscale pass, then paste it back with WAS's Image Paste Face Crop. The README is upfront that this pack-native pairing blends the crop back in with fewer visible seams than the classic GFPGAN/CodeFormer route, which is a nice reason to keep the whole loop inside one suite.
Where it fits
The face is where viewers look first and where diffusion models most often flub the details, so a "crop the face, fix it, paste it back" pattern is one of the oldest tricks in the book. This node is the crop step. Modern alternatives exist - the Impact Pack's detailer nodes and FaceDetailer do the whole detect-fix-recomposite dance in one shot - but if you want manual control over the crop and paste, or you're already living in WAS, this does the job.
How it works and what to set
It runs face detection (Haar cascades, with a face_recognition mode available) and returns the cropped face image plus crop_data - the coordinates and size of where it came from. That crop_data is the important output: it's what Image Paste Face Crop uses to drop your fixed face back into exactly the right spot. The main knob you'll actually touch is padding - how much context around the face to include in the crop.
Two design facts to know going in: it detects one face only (a deliberate choice to keep it simple), and detection runs through cascade files in succession, falling back to the next if the first finds nothing.
The failure modes - straight from the docs
The README is refreshingly honest about where this node struggles, and it's worth repeating because these are the exact things you'll hit:
- No face found. Badly generated images or faces at extreme angles just don't get detected. Nothing to do but improve the input.
- Black crop. This means your padding is too large and ran off the edge of the image. Turn the padding down.
face_recognitionmode is fussy. It sometimes flags random objects as faces, and it requires a CUDA GPU. If you don't need it, the standard cascade mode is less demanding.
If your detailer chain is producing black patches or missing the face entirely, start with padding and the detection mode before blaming anything downstream.
Installing it
Part of WAS Node Suite. Install the pack via ComfyUI Manager (search was-node-suite-comfyui, install, restart) or clone it:
cd ComfyUI/custom_nodes
git clone https://github.com/WASasquatch/was-node-suite-comfyui
then install requirements.txt and restart. Note: the face-crop feature needs the pack's res/ resources (the cascade files). The normal git-clone install pulls them; the README warns that the older single-file "legacy" install method skips them, so use the full clone.
Troubleshooting
Beyond the node-specific issues above, the pack-wide one: WAS Node Suite has been unmaintained since December 2023, and after a ComfyUI update the whole suite can throw "Import Failed." That's a dependency clash - opencv especially, which is exactly what face detection relies on - so reinstalling requirements.txt into the correct venv (activate it, or run install.bat), and pinning opencv back if needed, is the fix.
Inputs (0)
No inputs
Outputs (0)
No outputs