최근 게시물 중에 얼굴에만 로라 적용하는 방법이있냐는 문의글을 몇 번 봤는데,
관련해서 로라 블록 웨이트 익스텐션 내용 적어봄.
나도 게시판에서 본 내용 따로 복붙했다가 옮겨 놓는거니까 상세한 설명이 없거나
제대로 적용이 안되는 건 이해 부탁드리고
1. Lora block Weight 란?
간단하게 설명하면 로라의 특정 블록만 선택해서 적용할 수 있게 해주는 익스텐션임.
https://github.com/hako-mikan/sd-webui-lora-block-weight.git
위 URL 넣고 설치하면 되고,
2. 일반적인 사용법
https://arca.live/b/aiart/71644460
위 글을 보면 되고
3. 얼굴만 로라를 적용하고 싶다.
DDSD 나 !Adetailer 로 얼굴 검출하고 해당 디테일러의 프롬프트에 로라를 적어 주거나,
로라 블록 웨이트를 사용해서 얼굴에만 영향을 주는 블록을 지정해주면 됨. 그림 만들 때 로라를 적용할건지, 인페인트로 로라 적용할 건지의 차이는 있겠지
<lora:"lora name":1:0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0>. <lora:"lora name":1:0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0>. (a1111-sd-webui-locon, etc.) <lora:"lora name":1:IN02> <lyco:"lora name":1:1:lbw=IN02> (a1111-sd-webui-lycoris) <lyco:"lora name":1:1:lbw=1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0> (a1111-sd-webui-lycoris)
위 처럼 쓰면 되는데, 뒤에 0,0,0,0 ... 들이 바로 해당 로라의 블록별 가중치를 지정해주는 거임.
<lora:로라명:가중치:블록별 가중치> 인데 그림 돌 때 돌아가는 걸 보니
가중치 * 블록별 가중치 값으로 각 블록 가중치 계산함.
<lora:로라명:0.3:1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1> 로 적으면 각 블록별로 0.3,0.3,0.3,0.3,0.3,0.3,0.3,0.3,0.3,0.3,0.3,0.3,0.3,0.3,0.3, 씩 가중치가 적용됨
그럼, 여기서 어떤 블록이 어디에 영향을 주는 지 알아야 써먹을 텐데, 여기서 프리셋이 등장함
4. 프리셋은 미리 블록별 가중치를 정의해 둔 건데, 이게 예제 비슷하게 설치하면 기본값이 들어있음. 그게 바로
<lora:"lora name":1:IN02>
위에서 보는 IN02 임. 근데 이걸로는 IN02가 어디에 영향을 미치는지 알기 힘들잖아. 그래서 중국애들이 정리해놓은 프리셋이 있는데 바로 아래 나오는 프리셋 목록임.
----------------普通LoRA使用---------------- 默认预设 NONE:0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ALL:1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 INS:1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0 IND:1,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0 INALL:1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0 MIDD:1,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0 MIDD0.2:1,0,0,0,0,0,0.2,0.4,0.4,0.2,0,0,0,0,0,0,0 MIDD0.8:1,0,0,0,0,0.5,0.8,0.8,0.4,0,0,0,0,0,0,0,0 MOUT:1,0,0,0,0,0,1,1,1,1,1,1,1,1,0.5,0,0 OUTD:1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0 OUTS:1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1 OUTALL:1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1 ALL0.5:0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5 身体 BODY:1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1 BODY0.5:1,1,1,1,1,1,0.2,1,0.2,0,0,0.8,1,1,1,1,1 脸部(脸型、发型、眼型、瞳色等) FACE:1,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0 FACE0.5:1,0,0,0,0,0,0,0,0.8,1,1,0.2,0,0,0,0,0 FACE0.2:1,0,0,0,0,0,0,0,0.2,0.6,0.8,0.2,0,0,0,0,0 修手专用 HAND:1,0,1,1,0.2,0,0,0,0,0,0,0,0,0,0,0,0 服装(搭配tag使用) CLOTHING:1,1,1,1,1,0,0.2,0,0.8,1,1,0.2,0,0,0,0,0 动作(搭配tag使用) POSE:1,0,0,0,0,0,0.2,1,1,1,0,0,0,0,0,0,0 上色风格(搭配tag使用) PALETTE:1,0,0,0,0,0,0,0,0,0,0,0.8,1,1,1,1,1 角色(去风格化) KEEPCHAR:1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,0,0 背景(去风格化) KEEPBG:1,1,1,1,1,1,0.2,1,0.2,0,0,0.8,1,1,1,0,0 减弱过拟合(等同于OUTALL) REDUCEFIT:1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1 ----Merge Only NF:1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1 face:1,0,0,0,0,0,0,0,0.8,1,1,0.2,0,0,0,0,0 paint:1,0,0,0,0,0,0,0,0,0,0,0.8,1,1,1,1,1 ----------------LyCORIS使用---------------- ----------------LoHA / LoCON---------------- 身体 LyCOBODY:1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,1,1,1 LyCOBODY0.5:1,1,1,1,1,1,1,1,1,0.2,0.2,0.5,1,1,0,0,0,0.2,0,0,0.8,1,1,1,1 脸部(脸型、发型、眼型、瞳色等) LyCOFACE:1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0 LyCOFACE0.5:1,0,0,0,0,0,0,0,0,0,0,0,0,0,0.2,0.5,0.8,1,1,1,0.2,0,0,0,0,0 服装、动作、背景和上色风格(未测试) LyCOCLOTH:1,1,1,1,1,1,1,1,0,0.2,0.2,0.2,0,0,0,0,0.5,0.8,1,1,0.2,0,0,0,0,0 LyCOPOSE:1,0,0,0,0,0,0,0,0,0.2,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0 LyCOKEEPBG:1,1,1,1,1,1,1,1,1,0.2,0.4,0.8,1,1,0.8,0.4,0.2,0.2,0,0,0.8,1,1,1,0,0 LyCOPALETTE:1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.8,1,1,1,1,1 |
위 프리셋 넣고 적용하면, 아래 그림처럼 프리셋이 추가됨.