본문 바로가기
Stable Diffusion

webui 인페인팅 및 i2i 응용/활용/손 고치는 방법

by DesignerAllan 2023. 3. 24.
반응형

안녕하세요 Allan입니다.

 

이번 포스팅에서는 인페인팅 및 i2i를 이용해서 기존의 이미지를 업그레이드해 주는 과정을 보여드리도록 하겠습니다.

 

진행 순서는 다음과 같습니다.

 

  1.  i2i로 기존의 이미지를 통해 새로운 이미지 생성.
  2. inpaint로 수정
  3. i2i latent upscale로 인페인팅 한 부분 자연스럽게 만들어주기.
  4. Extras에서 업스케일

제가 유사한 스타일의 이미지를 생성할 때 사용하는 방법입니다.

 

차근차근 같이 진행해 보도록 하겠습니다.

 

혹시 inpaint에 대해서 잘 모르신다면 아래 포스팅을 먼저 보고 오시는 것을 추천드립니다.

webui 인페인트(inpaint) 마스터 하기 : Stable Diffusion

 

webui 인페인트(inpaint) 마스터 하기 : Stable Diffusion

안녕하세요 Allan입니다. 이번 포스팅 주제는 webui 인페인트(inpaint) 기능입니다. 인페인트 기능이란 스테이블 디퓨전 webui의 큰 장점 중 하나로 본인이 선택한 영역을 다시 생성한다거나, 본인이

ai-designer-allan.tistory.com

 

 

 

Ⅰ. i2i로 기존의 이미지를 통해 새로운 이미지 생성


이번 포스팅에서 수정해 볼 이미지입니다.

기존 이미지

(masterpiece:1.4),(best quality:1.4),1girl, pretty,sunset,<lora:fashionGirl_v50:0.3>,hands
Negative prompt: (worst quality, low quality:1.4),bad_prompt_version2, easynegative
Steps: 30, Sampler: DPM++ 2M Karras, CFG scale: 7, Seed: 4276216854, Size: 512x768Model: yesmix_v16Original, Clip skip: 2,Used embeddings: bad_prompt_version2 [afea], easynegative [119b]

 

i2i로 가서 비슷한 이미지를 생성해 보도록 하겠습니다.

 

기존이미지와 너무 다른 느낌은 원하지 않기 때문에 디노이징 강도는 0.75로 설정하고 진행하겠습니다.

(디노이징 강도는 정답은 없으므로 값을 바꿔가면서 진행하시는 것을 추천드립니다.)

 

단발머리로 바꿔주기 위해 프롬프트에 short_hair를 추가해 보겠습니다.

 

i2i로 생성한 이미지

원하는 대로 단발머리에 기존의 이미지와 유사한 느낌의 이미지가 생성되었습니다.

 

하지만 손 모양이 조금 이상한 것을 볼 수 있습니다.

 

이걸 고쳐주기 위해서 inpaint기능을 활용해 보도록 하겠습니다.

 

 

 

 

Ⅱ. inpaint로 수정


마스크 칠 한 이미지

이미지에 마스크 칠을 해준 뒤

prompt에는 good_hands, negative prompt에는 extra_fingers,few_fingers를 추가로 입력해 주었습니다.

 

파라미터들은 다음과 같이 설정해 두었습니다.

옵션값

 

인페인팅은 타율이 낮기 때문에 Batch count를 늘려 여러 번 이미지를 생성해야 합니다.

 

다시 말씀드리지만 디노이징 강도는 정답이 없기 때문에 이미지를 생성하는 과정에서 값을 바꿔가며 진행하는 것이 좋습니다.

 

마스크 블러는 정확한 의미를 찾아보려고 노력했으나 실패했습니다,,

 

제 경험에 따르면 마스크를 크게 칠할 때는 4 정도, 지금과 같이 작은 부분만 칠할 경우는 0~2 정도 설정하는 것이 타율이 좋았습니다.

 

손이 어느 정도 괜찮은 왼쪽 이미지가 나왔지만 빨간 원 부분만 없어지면 좋을 것 같아
저 부분만 인페인트를 다시 해주어 오른쪽 이미지를 생성해 주었습니다. 

 

 

손이 어느정도 괜찮은 왼쪽 이미지인페인트를 다시 해주어 오른쪽 이미지를 생성

 

반응형

 

 

 

Ⅲ. i2i latent upscale로 인페인팅 한 부분 자연스럽게 만들어주기.


인페인팅을 하게 되면 vae를 적용하고 세팅에서 i2i 이미지 보정 설정을 해도 기존 이미지와 완벽하게 어우러지지 않은 것을 볼 수 있습니다.

 

이 문제를 해결하기 위해서 i2i의 Just resize(latent upscale) 기능을 이용해 줍니다.

 

latent업스케일은 이미지를 생성하는 동시에 업스케일을 해주는 것이기 때문에
이런 어색한 부분을 고치는데 효과적입니다.

 

latent upsclaer에 대해서 더 알고 싶으시다면 아래 포스팅을 참고해 주세요.

 

StableDiffsion Upscaler(업스케일러) 어떤 걸 써야 할까?

 

StableDiffsion Upscaler(업스케일러) 어떤 걸 써야 할까?

Stable DIffusion Upscaler의 처음부터 끝까지 알아보자. 안녕하세요 Allan입니다. 이번 포스팅에서는 스테이블 디퓨전 업스케일러의 종류 및 각각의 차이점, 그리고 어떤 업스케일러를 써야 할지에 대

ai-designer-allan.tistory.com

 

그럼 생성한 이미지를 i2i로 다시 보내주어 진행해 보도록 하겠습니다.

 

그림 전체가 변하는 것은 원치 않기 때문에 디노이징 강도는 0.3 이하의 낮은 값으로 설정해 주도록 하겠습니다.

 

다음이미지에서 좌측 이미지가 처음 i2i로 생성한 이미지

우측 이미지가 i2i로 latent 업스케일을 거친 이미지입니다.

 처음 i2i로 생성한 이미지i2i로 latent 업스케일을 거친 이미지

 

손 부분이 완벽하지는 않지만 그래도 기존 이미지보다 훨씬 나아진 모습을 볼 수 있습니다.

 

 

 

Ⅳ. Extras에서 업스케일


마지막은 upsclae 작업입니다.

 

Extras 탭에서 업스케일 해주도록 하겠습니다.

 

업스케일러는 R-ESRGAN 4x+ Anime6B로 진행해 주었습니다.

 

처음 이미지Extras에서 업스케일 해준 이미지

 

처음 이미지와의 비교입니다.

 

원하는 대로 단발로 바꿔주었고, 손도 어느 정도 고쳐주었고, 마지막으로 업스케일해주어
좀 더 퀄리티 있는 이미지를 생성할 수 있었습니다.

 

다시 한번 말씀드리지만 이 방법은 제가 이미지를 생성할 때 하는 방법일 뿐 정답이 아님을 알려드립니다.

 

그래도 참고하시면 인페인트 활용에 있어서 큰 도움이 될 것이라 생각합니다.

 

더 원하는 이미지를 쉽게 뽑고 싶으시다면 컨트롤넷과 함께 이미지를 생성해 보시는 것을 추천드립니다.

 

그리 어렵지 않으니 아래 포스팅을 보고 천천히 따라 해 보세요.

 

webui ControlNet(컨트롤넷) 다운/기능/사용방법/종류/설치방법

 

webui ControlNet(컨트롤넷) 다운/기능/사용방법/종류/설치방법

Stable Diffusion webui의 무한한 확장 가능성 Controlnet(컨트롤넷) 기능부터 사용방법까지 안녕하세요 Allan입니다. 이번 포스팅 주제는 webui의 Exstension 중 하나인 Controlnet(컨트롤넷)입니다. 보통 Controlnet

ai-designer-allan.tistory.com

 

 

 

 

반응형