Please install it directly from the github repo here: dchatel/comfyui_facetools, the zip file attached to this post just contains the adress of the repo.
comfyui_facetools
These custom nodes provide a rotation aware face extraction, paste back, and various face related masking options.
Example Workflows
Full inpainting workflow with two controlnets which allows to get as high as 1.0 denoise strength without messing things up.

Nodes
AlignFacesinputs:
insightface: Use the
Load InsightFacenodefrom ComfyUI_IPAdapter_plusimage
threshold: minimal confidence score for detection
min_size: minimum face size for detection
max_size: maximum face size for detection
outputs:
faces
FaceDetailsinputs:
faces
crop_size: size of the square cropped face image
crop_factor: enlarge the context around the face by this factor
mask_type:
simple_square: simple bounding box around the face
convex_hull: convex hull based on the face mesh obtained with MediaPipe
BiSeNet: occlusion aware face segmentation based on face-parsing.PyTorch
outputs:
crops: square cropped face images
masks: masks for each cropped face
warps: 2x3 warp matrix to paste the cropped face back into the original image
WarpFacesBackinput:
images: this is the original image
face
crop: cropped face images
mask: masks for the cropped faces
warp: 2x3 warp matrix
OrderedFaceFilterworks similarly to
ImpactSEGSOrderedfilter
GenderFaceFilterneeds more work, as InsightFace gender classifier isn't very accurate.
MergeWarpsI made some changes in
FaceDetailerandWarpFacesBacksince I've created this one, so it probably doesn't work anymore. Needs more testing and more work.
Installation
You will need ComfyUI-Impact-Pack for Load InsightFace node and comfyui_controlnet_aux for MediaPipe library (which is required for convex_hull masks) and MediaPipe Face Mesh node if you want to use that controlnet. You will also need to download the BiSeNet model and save it in ComfyUI/models/bisenet to use occlusion aware masks.
