본문 바로가기
AI-인공지능

스테이블 디퓨전 - 이미지 의상변경 (change clothes), 이미지 부분 변경 , mask 응용, Ipadapter 적용

by 연풍사랑 2024. 7. 10.

 

스테이블 디퓨전의 Image to Image에서  좀 더 고급기능에 해당하는

기존의 이미지에 옷을 변경시키거나 이미지의 일부분을 바꾸고 싶을때 하는 Workflow 이다.

먼저 중요한 노드가 필요하다.

InpaintModelConditioning  노드 이다.

InpaintModelConditioning 노드

이 노드는 ksampler의 Latent_Image input단자에 연결하여 사용한다.

그러면 ksampler 는 주어진 이미지위에 mask 된 부분에만  prompt 대로 이미지를 생성해 준다.

아래 workflow 를 구성하여 이미지를 만들어 보면......

mask를 주고 이미지를 연결하면 마스크부분만 새로 생성된다.

원본 이미지 원본 이미지위의 마스크 적용된 결과

 

이런 식으로 이미지의 일부분만  변경할 수있다.

그런데 결과 이미지를 보면 어딘지 변경된 이미지의 경계부분이 자연스럽지 못하고 끊어진듯한 표시가 보인다.

그래서 이것을  좀 더 개선하기 위하여 mask 노드들을 사용하여 다시 만들어 본다.

 

Human Segmentation 노드 와 Grow Mask With Blur 노드를 사용

Human Segmentation  노드를 사용하여 정확하게 의상부분을 마스킹 하고 외곽선이 자연스럽게 생성되도록

Grow Mask With Blur 노드를 사용하여 마스크부분을 좀 더 확장 시켜준다. (expand : 20, blur_radius:5)

그런 다음 이 마스크를 연결주고 생성한다.

 

마스크 적용 Workflow

원본이미지 mask 생성 mask확장 및 blur 처리 적용 결과

 

상당히 자연스럽게 변경된 이미지가 생성 되었다.

mask 를 사용하여 이미지 생성이나 수정작업을 하면 깔끔하면서도 자연스럽게 만들어 진다.

물론 그렇다고 SD 의 특성상 한번에 바로 원하는 이미지를 만들기는 어렵고 여러번의 생성을 하면

원하는 이미지가 나온다.

 

여기서 좀 더 나아가 똑같은 의상은 아니지만 비슷한 스타일의 의상을 ipadapter 를 사용하여

만들어 본다.

ipadapter 적용

원본 이미지 의상 모델 의상부분이 적용된 이미지

똑 같은 의상은 아니지만 비슷한 유형의 의상으로 바뀔수 있다.

 

참 재미있는 Stable Diffusion 기능들이다.

mask 와 inpaint 그리고 controlnet 확장 기능들은 이미지 생성 및 수정에 아주 중요한 도구이다.

 

 

728x90