ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • ComfyUI) 얼굴 이미지를 자연스럽게 바꾸자 - FaceDetailer
    Stable Diffusion 2024. 9. 27. 07:38
    반응형

    AI를 이용해 이미지를 생성할 때, 얼굴이 부자연스럽게 나오는 경우가 종종 있습니다. 특히 얼굴만 크게 생성할 때는 별 문제가 없는 모델도 전신 이미지를 생성하면 얼굴 부분에서 문제가 발생하는 경우가 많습니다. 

    얼굴 이미지는 잘 생성된다(1024 × 1024)

     

    전신 이미지의 얼굴 부분은 부자연스러운 경우가 많다

    이러한 부자연스러운 얼굴을 수정하기 위해 Automatic1111이나 Forge에서는 Adetailer라는 편리한 확장기능을 사용할 수 있습니다. 그러나 ComfyUI에는 Adetailer를 사용할 수 없으므로 다른 노드를 사용해야 합니다. ComfyUI를 설치하면 보통 ComfyUI Manager와 ComfUI Impact pack을 기본적으로 설치하므로, Impact Pack에 포함된 FaceDetailer를 사용해 얼굴을 보정한느 방법을 알아보겠습니다. 

    FaceDetailer 노드

    FaceDetailer 노드

    FaceDetailer 노드는 상당히 복잡하게 구성되어 있지만, 노드 연결 부위와 이미지 생성 시 설정하는 기본적인 파라미터(KSampler의 값과 동일하게 설정해도 됩니다)만 설정해도 상당한 효과를 볼 수 있습니다. 따라서 FaceDetailer에 익숙하지 않으신 분들은 기본 설정으로 사용하시기 바랍니다. 

    FaceDetailer 노드의 연결

    image : 생성된 이미지를 받아오는 곳으로, VAE Decode의 image 포인트와 연결합니다. 

    model, clip, vae, positive, negative : 일반적인 연결 포인트입니다. 

    bbox_detector, segm_detector_opt : UltralyticsDetectorProvider와 연결합니다. 선택한 모델에 따라 맞춰 연결합니다. bbox_detector는 필수적으로 연결해야 하며, segm_detector_opt와 sam_model_opt의 연결은 선택사항입니다. 이 노드들은 얼굴을 인식하는 모델을 선택하는 것으로, 여러 방법을 동시에 사용하면 더 좋은 이미지를 생성할 수 있습니다. 따라서 모두 연결하여 사용하는 것이 좋습니다. 사용한 모델은 bbox_detector의 경우 face_yolov8m, segm_detector는 person_yolov8 m-seg입니다. 다른 모델들도 있으니 관심이 있으시면 사용해 보시기 바랍니다. 

    bbox detector 선택화면
    segm detector 선택화면

    sam_model_opt : 이미지를 세부적으로 분해하기 위한 모델을 연결하는 포인트입니다. 이 경우, SAMLoader(impact) 노드를 사용하며, 모델은 sam_vit_b를 사용하였습니다. 

     

    전체 워크플로우

    전체 워크플로우는 연결이 복잡하므로, 첨부한 워크플로우 파일을 참고하시기 바랍니다. 

    Facedetailer 사용 전체 워크플로우
    basic + facedetailer.json
    0.01MB

     

    Example

    좌)전체 이미지, 중간)Facedetailer 적용 전, 우)Facedetailer 적용 후

    추가사항

    detector 모델 설치 방법 : Manager → Model Manager → 검색 → Install

    Model manager에서 검색 후 원하는 모델은 Install 하면 자동으로 설치된다

    반응형

    댓글

Designed by Vitual Stylist