본문 바로가기
잡담/WebUI(stable-diffusion)

WebUI 이미지 분할해서 그리는법(위치별 프롬프트 적용)

by flatsun 2023. 3. 1.
반응형

WebUI에서 이미지를 생성하기 전

 

이미지를 반으로 분할해서

각각 다른 프롬프트를 적용시킨 뒤

한 이미지로 뽑아내려고 하는데

 

먼저 적용을 위해 Extensions 메뉴로 들어와서

Install from URL을 누르고

 

https://github.com/opparco/stable-diffusion-webui-two-shot

 

를 입력해서 Install을 눌러주자

잠시 기다린 뒤 Installed into ~ 가 뜨면 성공이다

 

이후 Installed 탭으로 이동해준 뒤

two-shot 이 다운로드 되고, 체크까지 되었으면

Apply and restart UI를 누른 후 다시 실행해주자

 

이제 txt2img 로 돌아와

Latent Couple을 열고

Enabled를 체크해주면 되는데

 

Divisons는 화면을 어떻게 분할할지

Positions는 어디에서부터 시작할지

Weights는 얼마나 범위를 가져갈지인데

 

뭔 말인지 이해가 되지 않을 수 있으니

간단히 3분할로 만든다 치면

이렇게 변경해주면 된다

 

divisions=1:1,1:3,1:3,1:3

positions=0:0,0:0,0:1,0:2 

weights=0.2,0.8,0.8,0.8

 

이렇게 작성한 뒤 

Visualize를 누르면 어떻게 배치될지를 확인할 수 있다

 

그리고 하단에 있는 Apply 버튼은 적용이 아니라

초기화기 때문에 절대 누르지 말고

 

Latent Couple: "divisions=1:1,1:3,1:3,1:3 positions=0:0,0:0,0:1,0:2 weights=0.2,0.8,0.8,0.8 end at step=20"

 

이런 식으로 positive prompt 맨 아래에 사용하면

매번 Latent Couple을 수정하지 않아도

바로 적용이 가능하다

 

이제 txt2img 에서 Prompt를 적용해볼 시간인데

 

첫 줄에는 공통으로 삽입될 내용

둘째 줄부터는 AND를 붙인 후

분할된 개별 프롬프트의 내용을

왼쪽 순서대로 채워주게 된다

 

((ultra-detailed)), ((illustration)), 2girls
AND ((ultra-detailed)), ((illustration)), 2girls, black hair
AND ((ultra-detailed)), ((illustration)), 2girls, blonde hair

 

위 프롬프트를 보면 필수적인 부분은

총 두 여성이 나오는 만큼 2girls를 넣었는데

 

AND에서도 위 내용을 그대로 적용해야 한다

1girl 로 변경하면 두 캐릭터가 하나로 합쳐져 버린다

 

그리고 남자만 넣으면 2boys 겠지만

 

남자와 여자가 섞여 있으면

1boy, 1girl 이런게 아니라

남자를 여자로 변환할 수 있기 때문에

 

((ultra-detailed)), ((illustration)), 2boys
AND ((ultra-detailed)), ((illustration)), 2boys, black hair
AND ((ultra-detailed)), ((illustration)), 2girls, blonde hair

 

이런 식으로 사용해줘야 한다

 

프롬프트를 3개로 분할하고

남자 1명 여자 두명이라면

 

((ultra-detailed)), ((illustration)), 3boys
AND ((ultra-detailed)), ((illustration)), 3boys, black hair
AND ((ultra-detailed)), ((illustration)), 3girls, blonde hair

AND ((ultra-detailed)), ((illustration)), 3girls, red hair

 

이런 식이 되겠다

마지막으로 실제 사용시에는

프롬프트를 넣으면 아래와 같이 나온다

 

((ultra-detailed)), ((illustration)), 2girls
AND ((ultra-detailed)), ((illustration)), 2boys, black hair
AND ((ultra-detailed)), ((illustration)), 2girls, blonde hair

 

((ultra-detailed)), ((illustration)), 2girls
AND ((ultra-detailed)), ((illustration)), 2girls, black hair
AND ((ultra-detailed)), ((illustration)), 2girls, blonde hair

 

((ultra-detailed)), ((illustration)), 3boys
AND ((ultra-detailed)), ((illustration)), 3girls, black hair
AND ((ultra-detailed)), ((illustration)), 3boys, white hair
AND ((ultra-detailed)), ((illustration)), 3girls, red hair
Latent Couple: "divisions=1:1,1:3,1:3,1:3 positions=0:0,0:0,0:1,0:2 weights=0.2,0.8,0.8,0.8 end at step=20"
반응형

댓글