
ComfyUIå ¥é:2 ã¯ãŒã¯ãããŒæ§ç¯ç·š
ãæšæ¶ãšå眮ã
ããã«ã¡ã¯ãã€ã³ã¹ããŒã«ç·šä»¥æ¥ã§ããïŒ
çãããComfyUIãã€ã³ã¹ããŒã«åºæ¥ãŸãããïŒ
ComfyUIå ¥é1ããã®ç¶ããªã®ã§ãåºæ¥ãã°å ¥é1ããèªãã§ããŠãïŒ
ãã®èšäºã§ã¯SD1.5ã®text to imageã®ã¯ãŒã¯ãããŒãæ§ç¯ããªããã«ã¹ã¿ã ããŒãã®è¿œå æ¹æ³ãšã¯ãŒã¯ãããŒã«çµã¿èŸŒãäžé£ã®æµããèªã¿ãªããäžç·ã«æ§ç¯ããã¯ãŒã¯ã·ã§ãã圢åŒãåã£ãŠããŸãã
ComfyUIãåããŠè§Šã人ã®äžå©ãšãªãã°å¹žãã§ãã
ComfyUIãè§Šãåã«A1111 WebUIã§äžé£ã®æ©èœãControlNetã«ä»£è¡šãããæ¡åŒµæ©èœçŸ€ã«å¹ åºãè§ŠããŠãããæ¹ãããã§ãã(確信)
ãã®èšäºã§ã¯A1111ã§ä»£è¡šçãªæ©èœã«ã¯è§Šããäºãããã®ãåæãšããŠæžããŠããŸããçšèªãèšå®é ç®çãA1111ã«è§ŠããŠæ £ããŠãããŠãã ããã(ã€ãŸãäžçŽè 以äžåã)
ç§èªèº«ãŸã è§ŠããŠ1é±éçšåºŠ(2024/1/6çŸåš)ãªã®ã§ãã¬ãå¢ã®æ¹ããèŠããšåŸ®åŠãªå 容ã§ããããšã¯åŠããªãäžã«æžããŠã暪ããæ°ããäœ¿ãæ¹ãæãã€ãããããŠèšäºãã£ã¡ã®ãã§è©Šãããããããªã®ã§ãåºæ¬ã«æ¯ãçããçšåºŠã®è§£èª¬ããã§ããŸããã
çšèª
æ®ã©ã¯A1111ãšåãã§ãããUIåšãã§ã¡ãã£ãšã ãç¥ã£ãŠããäºããããŸãã
ãã®èšäºã§ã¯ç»åã®èšè¿°ãèŠããã°å€§äœOKã
ãã£ã³ãã¹ãããŒããã¯ã€ã€ãŒãæ¥ç¶ãããŒã¿ããŠã£ãžã§ãããã®ãããã§OKã§ãã

ãã£ã³ãã¹
ComfyUIã®èæ¯ã®ããšãããŒããã¯ã€ã€ãã¡ãã¥ãŒäžã§ãªãã°ãªãããèŠããèæ¯ã¯å
šãŠãã£ã³ãã¹ãšåŒã³ãŸãã
ããŒã
A1111ã§ã¯ãã¿ã³ãããŒããå
šèªåã§ãã£ãŠãããŠãŸããããComfyUIã§ã¯çæããéã«å¿
èŠãšãªãåå·¥çšããããŒãããç¹ããäžé£ã®å·¥çšãæ§ç¯ããŠåããŠçæãå¯èœãšãªããŸãã
ããŒããšã¯ãåå·¥çšã®æ©èœã®äžã€äžã€ã®äºãæããŸãã
ComfyUIã§ã¯ããŒããå
¥ãæ¿ããäºã§åŠçã®é åºã倿Žãããã«ãŒããããããšA1111ã§ã¯å®çŸã§ããªãåŠçãå¯èœãšããŸãã

ã¯ã€ã€ãŒ(ãªã³ã¯)
ããŒãéãã€ãªãç·ã®ããšã
çŸå®ã§ãã±ãŒãã«ã¯ããããã«å¿
èŠãªæ
å ±ããšãã«ã®ãŒãäŒéããããã«ååšããŠããŸãã
ãã®ã¯ã€ã€ãŒãåãã§ããŒãéã§å¿
èŠãšããæ
å ±ãããåãããããã«ååšããŠããŸãã
ïŒå
¬åŒã§ãåŒã³åãäžå®å®ãªã®ã§ããã®èšäºå
ã§ã¯ã¯ã€ã€ãŒã§è¡šèšããŸãã(ææããããŸã§æ°ã¥ããŸããã§ãã)
æ¥ç¶
ã¯ã€ã€ãŒãæ¥ç¶ãã(ãã)ç¶æ
æ¥ç¶ãšèšããããå
¥åºåãŠã£ãžã§ããéã§ã¯ã€ã€ãŒãç¹ããŸããããšããããšã§ãã
ãŠã£ãžã§ãããããŒã¿
ããŒãäžã§è¡šç€ºããããŠãããã®ãå
¥åãã©ãŒã ãã¯ã€ã€ãŒãæ¥ç¶ããéšåçUIäžã®åéšåã®ç·ç§°ããŠã£ãžã§ãããšåŒã³ãŸãã
åããŒãã§ãããšãããæ
å ±ãåŠçãè¡ãæ
å ±ãå€ã®åç§°ã¯ãã®èšäºå
ã§ã¯äŸ¿å®äžããŒã¿ãšåŒã°ããŠããã ããŸãã(åãªãã¡ã¬ã³ã¹ã§ã¯ããŒã¿ã®åœ¢åŒåãèšè¿°ãããŠããäºãæ®ã©ã§ããStepsãCFGçâŠ)
ããŒãã¯ãŠã£ãžã§ããã§ã¯ã€ã€ãŒãæ¥ç¶ããäºã§ããŒã¿ã®éåä¿¡ãè¡ããŸãã
ïŒåºæ¬çã«å
¥å/åºåã«å¯Ÿå¿ããããŒã¿åœ¢åŒã®ã¯ã€ã€ãŒããæ¥ç¶ã§ããŸããã(ã¯ã€ã€ãŒã®è²ã§ãäžå¿å€å¥ã§ããŸã)
ïŒååã®ç°ãªãå
¥å/åºåããæ¥ç¶ã§ããããšããããŸãã(ãŠã£ãžã§ããã®ååã倿Žã§ãããã)
ïŒå¿
ãããããŒãã«èšå®ãããŠããå
šãŠã®å
¥å/åºåãæ¥ç¶ããªããã°ãªããªãèš³ã§ã¯ãããŸããã
ïŒæ¥ç¶ã§ãããããšèšã£ãŠåäœãä¿èšŒããããã®ã§ã¯ãããŸããã(ã«ã¹ã¿ã ããŒãã®Readmeãããèªã¿ãŸãããã)
ã¯ãŒã¯ãããŒ
æ§ç¯ããäžé£ã®åŠçã®ããš
ã¡ã€ã³ã¡ãã¥ãŒã®Saveãã.json圢åŒã«ãŠä¿åã§ããŸãã
ãŸããçæããç»åã«ããã³ãããseedå€çãå«ããŠã¯ãŒã¯ãããŒãã®ãã®ãèªåçã«åã蟌ãŸããŸãã
ãã®ãããComfyUIã®ãã£ã³ãã¹å
ã«ComfyUIã§çæããç»åãæŸã蟌ããšçææã«å©çšããŠããã¯ãŒã¯ãããŒãããŒã¿ããã®ãŸãŸèªã¿èŸŒãäºãã§ããŸãã
åºæ¬æäœ
ããŠã¹æäœ
ãã£ã³ãã¹ããã©ãã°/ãã€ãŒã«æŒã蟌㿠= ãã£ã³ãã¹ã®ç§»å
ããŠã¹ãã€ãŒã« = æ¡å€§çž®å°

ããŒãã®è¿œå æ¹æ³
ããã€ããããŸãã
ããããç¥ã£ãŠããã ãã§çžåœæ¥œã«ãªãã®ã§ãå¿
ãè§ŠããŠäœ¿ãæ¹ãèŠããŠãã ããã(1æ)
ããã«ã¯ãªãã¯ããæ€çŽ¢


ãã£ã³ãã¹ãããã«ã¯ãªãã¯ãããšãæ€çŽ¢ãŠã€ã³ããŠãåºãŠããŸãã
â åºåã®çš®é¡ããæ€çŽ¢
â¡å
¥åã®çš®é¡ããæ€çŽ¢
â¢ããŒãåæ€çŽ¢
ïŒãŠã£ã³ããŠå€ãã¯ãªãã¯ãããEnterãæŒããšãŠã€ã³ããŠã¯æ¶ããŸãã
å³ã¯ãªãã¯ãã远å
å³ã¯ãªãã¯ã¡ãã¥ãŒ -> Add Node -> åé
ç®
ããããŒãã远å ã§ããŸãã

Add Node
å³ã¯ãªãã¯ã¡ãã¥ãŒã®ãã®ãšåãæèŠã§äœ¿ããŸããã

Search
æ¥ç¶å
ã«å¯Ÿå¿ããããŒããæ€çŽ¢ããŸã
å
¥å/åºåã®ãã©ãã°å
ãâŠ
åºåã®å Žåãå
¥åã«å¯Ÿå¿ããããŒã
å
¥åã®å Žåãåºåã«å¯Ÿå¿ããããŒãã
ããããèªåçã«æ€çŽ¢ããŠãããŸãã
æªç¥ã®ããŒãã䜿ãå Žåã¯ããããæ¢ãæ¹ãæ¥œãªäºããããŸãã

Searchããäž
察å¿ããåºæ¬çãªããŒãã衚瀺ãããŸãã
欲ããããŒãã衚瀺ãããªãæã¯ãSearchãAdd Nodeããæ¢ããŸãããã

ããŒãã®æäœ
ããŒããã®ãã®ãç·šéã§ããŸã
ããŒã¿ã衚瀺ãå
¥åãã©ãŒã ã¯ç·ç§°ãšããŠãŠã£ãžã§ãããšèšããŸãã

â¡ ããŒããæãç³ãã§è¡šç€ºãæå°å
⢠å³ã¯ãªãã¯åä»ãšãªã¢
â£å ¥åãã©ãŒã

ããŒããå³ã¯ãªãã¯

ããããã£ããã«ã¯ããŒãåãããŒãç¶æ ã®äžæ¬ç®¡çããã«ã衚瀺ããŸãã
Bypassã¯ç¡å¹åãšããããå·¥çšãã¹ã«ãŒããã€ã¡ãŒãžãã¹ã«ãŒã£ãšã(2024幎æå€§ã®ã¢ãã¢ãã§ããšãããšã®ãã©ã¯ã«ã®ã£ã°ã§ãã)

å¿ èŠãªæ å ±ãå ¥åããŸãããã
å€ãé©åã§ãªãå Žåã¯ãšã©ãŒãåºãŠæå¹ãªç¯å²ã圢åŒã瀺ãããŸãã
ã°ã«ãŒã
ã°ã«ãŒãã¯è€æ°ã®ããŒããäžçºãã§ç®¡çããæ©èœã§ãã
ããŒããå¢ããŠãããšãããšãç°¡åã«éººã°ã£ããã®ç¹çãããªã¿ã³ã¹ãã²ããã£ãåºæ¥ãŠãŠã€ã³ããŒãé£ã¹ããã®ã«èŠã€ãããªããªããŠããšã«ãªã£ã¡ãããŸãã
ããããã°ã«ãŒãã䜿ããšç¹çã¹ãã²ããã£ã®äžã«é ãããŠã€ã³ããŒãæ¢ãããããªããŸãã
(ç¹çã¹ãã²ããã£ãªã®ã¯å€ãããŸãã)
ã°ã«ãŒãäœæ
ãã£ã³ãã¹äžãå³ã¯ãªã㯠-> Add Group
ãã®äžã«å
¥ã£ãŠããããŒãã¯äžæ¬ããŠç®¡çããããšãåºæ¥ãããã«ãªããŸãã
è§£é€ãããå Žåã¯ããŒããDnDã§ã°ã«ãŒãããåºããŠããã ãã§ãã


ïŒäŸ¿å©ãªã«ã¹ã¿ã ããŒãããããŸãããããã§ã¯å²æããŸãã
ãŸããã°ã«ãŒããèšå®ãããšä»¥äžã®é
ç®ãå³ã¯ãªãã¯ããæäœã§ããããã«ãªããŸãã
ãããã®æ©èœã¯ãšãŠã䟿å©ãªã®ã§ãæ¯éã°ã«ãŒãã䜿ã£ãŠåºåãããããã«ããããšããããã§ãã

Save Selected as Template
Node Templates
ãã®3ã€ã¯ãšãŠã䟿å©ã§ã
åºæ¬çãªt2iã¯ãŒã¯ãããŒãæ§ç¯ããã
ãŸãã¯ãããã
ç»åãçæãããæé ãA1111ã§ã¯ã©ã®ãããªããã»ã¹ã§çæããŠããããããããããŸãããã
ã¢ãã«ãããã³ãããVAEãè§£å床çâŠå¿ èŠãªæ å ±ãå ¥åãã
ãã¿ã³ãããŒ
ã€ã¡ãŒãžåºå
ãšããéçšãèžãã§ãŸãããã
A1111ã§ã¯æèããäºãäžã
é£ããã§ãããå®éã¯æŠã以äžã®ãããªããã»ã¹ã§çæãããŸãã
ïŒSDv1.5ã®ãã¿ãŒã³ã§ãã
ã¢ãã«ãLoRAã®èªã¿èŸŒã¿
VAEå èã®å ŽåãVAEãèªã¿èŸŒãŸãã
CLIPãžã®æ å ±ãšããŠããã³ãããEmbeddingã®èªã¿èŸŒã¿ãšå ¥å
åºåã€ã¡ãŒãžã®åºæ¬æ å ±å ¥å
è§£å床ãªã©
ãµã³ãã©ãŒã«ã¢ãã«ãCLIPãåºæ¬æ å ±ãéä¿¡
ãµã³ãã©ãŒèªäœã«A1111ã§èŠæ £ããæ§ã ãªçæã«é¢ããèšå®ãå ¥å(stepãsamplerãSchedulerãseedãªã©)
ãµã³ãã©ãŒããã€ãºããåæ å ±ãå ã«ç»åçæã®å·¥çšãå®è¡
VAEãã³ãŒãã§ä»äžã
ç»ååºå
ã¡ã«ããºã ãçè«ã¯ãªã©ã€ãªãŒã®æ¬ãšãèªãã§ãã ãã(æŸæ£)
æ§ç¯ããŠã¿ãã
äžèšã®ããã»ã¹ã«æ²¿ã£ãŠã¯ãŒã¯ãããŒãå®éã«æ§ç¯ããŠãããŸãããã
SDv1.5ç³»ã®åºç€çãªã¯ãŒã¯ãããŒã¯ã¡ã€ã³ã¡ãã¥ãŒã®ãLoad Defaultããã¯ãªãã¯ãããšããŒããããŸãâŠã
ããã¯æ¢ããŠãClearããæŒããŠãåºæ¬çãªt2iã¯ãŒã¯ãããŒãäžç·ã«æ§ç¯ããŠãããŸãããã(倧å)
1 : ã¢ãã«ãèªã¿èŸŒãããŒããšãµã³ãã©ãŒãç¹ãã
ãã£ã³ãã¹ãå³ã¯ãªã㯠-> Add Node -> loaders


MODELãå ¥åããKSamplerããŒãã远å ããŸãã

2 : Load CheckpointããŒããšKSamplerãç¹ã

ãªããèŠèŠãã®ããåèªãæžããŠããããŒããåºãŠæ¥ãŸãããã
(Prompt)ã®åã®éãããã®ããŒãã¯ããã³ããå
¥åçšããŒãã§ãã
ãã¡ãããããžãã£ãçšãšãã¬ãã£ãçšäž¡æ¹å¿
èŠãšãªãã®ã§ãããäžåºŠæäœãè¡ã£ãŠäºã€ããŒããçšæããŸãã
ãã®æäœããåããéããåºåããã¯å¹Ÿã€ã§ãã¯ã€ã€ãŒãåºããŠåããŒããšæ¥ç¶ããããšãå¯èœã§ãã
ãŸããããŒãå士ãéãªã£ãŠèŠãã«ããã®ã§ãããŒããèŠãããå Žæã«ç§»åãããŸãããã

åãããŒãã䞊ãã§ããŠãã©ã¡ããããžãã£ãããã³ããã®ããŒããåããã«ããã®ã§ããŒãåã倿ŽããšããŸãããã
ããŒãäžã§å³ã¯ãªã㯠> Properties Panel
ç»é¢å·Šã«ã¿ããçŸããŸãããã

ããŒãã®äžéšã«è¡šç€ºããæåå
ããŒãã®åäœã¢ãŒã
ããŒãã®è²
ããŒãã®ååããã(ããããã£ãŠãªãã§ã)
ä»åã¯çæ¹ã®TitleãPositive Promptã«ããŠãããçæ¹ãNegative Promptãšåç§°ã倿ŽããŠãããŸãããã

ããŠãCLIP Text Encodeã®åºåãCONDITIONINGãšãªã£ãŠããŸãããKSamplerã®å
¥åã«ååã®å
¥ååããããŸãããâŠ
ãã®ã¯ã€ã€ãŒã¯ã©ãã«ç¹ããã°ããã®ã§ããããïŒ
ãããèšäºã®æåã®æ¹ã§èšè¿°ãããå¥åã®åºåããã§ãæ¥ç¶ã§ããããšãããå
¥åã§ããããå®å¿ãã
åºå(å
¥å)ããã©ãã°ãããšã察å¿ããå
¥å(åºå)以å€ã¯ã°ã¬ãŒã¢ãŠãããŠãé©åãªæ¥ç¶å
ã瀺ãããŸãã

åãèŠé ã§ãã¬ãã£ãããã³ããåŽãæ¥ç¶ããŸãããã
ããã§ãCheckPointïœSamplerãžã®ããã³ããã®æ¥ç¶ãå®äºããŸããã
3 : latent_Imageãç¹ãã
KSamplerã«æ¥ç¶ããå
¥åã¯ããšäžã€ã§ããã
ãLatent_imageâŠA1111ã§èãèŠãã¯ããããã©ãã©ããããããžãâŠããšããæ¹ã§ããå®å¿ãã
ãããŸã§ã¯ãåºåããå
¥åãæ¢ããŠããŸããããä»åºŠã¯å
¥ååŽããåºåã«å¯Ÿå¿ããããŒããæ¢ããŠã¿ãŸãããã

4 : KSamplerããVAEãã³ãŒããŒãž
KSamplerããVAEãã³ãŒããžåŠçãæž¡ããŸãã
VAEDecodeã«ã¯VAELoderãå¿
èŠãªã®ã§ããã¡ããããŒããæ¥ç¶ããŸãã

å ¥åãããŠããããŒã¿åãé·ããšããããªæãã§ããåºããããŸãã仿§ãªã®ã§æ°ã«ããªã
5 : VAEããã€ã¡ãŒãžåºåããŒããžç¹ãã
ããããç»åã®åºåãŸã§æ¥ãŸããã
ãããŸã§ãšåãèŠé ã§ã€ã¡ãŒãžåºåããŒãã®PreviewImageããŒããšç»åä¿åããŒãã®SaveImageããŒããæ¥ç¶ããŸãããã

ããã§ã¯ãŒã¯ãããŒã®æ§ç¯ã¯äžæŠå®äºã§ãã
ãã¹ãããŠã¿ãŸãããã
6 : èšå®ã®å ¥å
ããã§ç°¡åãªã¯ãŒã¯ãããŒãåºæ¥äžãããŸããã
å¿
èŠãªæ
å ±ãå
¥åããŠã¯ãŒã¯ãããŒã®åäœãã¹ããè¡ããŸãããã
奜ããªã¢ãã«ãVAEãããã³ãããå ¥åããŠã¿ãŸãããã


ComfyUIã¯åŒ·èª¿ãA1111ãã匷ãçŸããã®ã§ã1.4ïœ1.5çšåºŠãé床ãšããŠèŠãŠããæ¹ãç¡é£ã§ãã
ïŒembeddingsã®æå®ã¯ãembedding:åç§° ,ãã§ãã
embeddingåã®åŸã«åè§ã¹ããŒã¹ãå
¥åããããšãå®ã£ãŠãã ããã
embeddingãšãã®åšå²ã®ããã³ãããèªèããªããªããŸãã
ïŒLoRAã䜿ãå Žåã¯Load LoRAããŒããéäžã§æ¥ç¶ããå¿
èŠããããŸãã
LoRAã«ããªã¬ãŒã¯ãŒããèšå®ããŠããå Žåã¯ããã³ããå
ã«èšå
¥ããŠãã ããã

ãã¹ããªã®ã§512x512ã§ã
batch_sizeã¯äžåºŠã®ãã¥ãŒã§äœæçæããããæå³ããŸãã

VAEã¯A1111ãšåããã¢ãã«ãšçžæ§ã®è¯ããã®ãéžæããŠã
KSamplerã®èšå®ã§ãããç¡é£ãªèšå®ãšããããšã§äžèšã®ããã«ããŠã¿ãŸããã
A1111ãšæ¯èŒããŠã¿ãŸãããã
seed = A1111ãšæå³ã¯åã
control_after_generate = seedå€ãéžæããé ç®ã«å¯Ÿå¿ããããã«æ±ããŸãã
fixed(å€ãåºå®)
increment(çæéå§æã«seedå€ãã1è¶³ããå€)
decrement(çæéå§æã«seedå€ãã1åŒããå€)
randomize(ã©ã³ãã ãªå€)
ã©ã³ãã ãªå€ãæå®ããããŒã¿ã¯ãã®ããŒã¿ãã€ããŠããŸããèŠããŠãããŸãããã
steps = A1111ãšæå³ã¯åã
cfg = A1111ãšæå³ã¯åã
sampler_name = A1111ã§ã¯sampler_name + schedulerã§æå®ããŠããŸããããComfyUIã§ã¯å¥ã ã«æå®ããããšãã§ããŸãã
samplerã§ã_gpuããšä»ãããã®ãæå®ããªããšGPUã䜿ããã«çæãå§ããã®ã§åŠçãé ããªããŸããæ³šæã
denoise = A1111ã§ã¢ããã¹ã±ãŒãªã³ã°ãè¡ãéã®denoising strengthãšåãé ç®
ComfyUIã§ã¯ã¢ããã¹ã±ãŒãªã³ã°ãããªãæããã®å€ã調æŽããŸãã
0.6ïœ0.65ãè¶ ããŠãããšæªãããªã£ãŠããŸãã
A1111ãšã¡ãã£ãšéãã
7 : çæãã¹ã
ãããçæããŸãããã
ã¡ã€ã³ã¡ãã¥ãŒã®Queue Promptãã¯ãªãã¯ããããCtrl + Enterã§çæéå§ããŸãã

æ°ç§åŸ ã€ãšâŠ

ComfyUIã®ã¯ãŒã¯ãããŒã¯ãã®ããã«æ§ç¯ããŠããããšã«ãªããŸãã
äžåºŠåºæ¥ãŠããŸãã°ãåããŒã¿ãããã³ãããåŒãã°ããã ããªã®ã§ãæã£ãŠãããããç°¡åã§ããïŒ
ãããçæããŠããšã©ãŒãåºãå Žåã¯ããŒããèµ€æ ã§å²ãŸããã®ã§ã該åœã®ããŒãã§èšå®ãééã£ãŠãããå ¥å/åºåã®æ¥ç¶æŒãããã£ããããŸãã®ã§ã確èªããŠã¿ãŠãã ããã
ã«ã¹ã¿ã ããŒãã«ã€ããŠ
ããããã¯ã«ã¹ã¿ã ããŒãã远å ããŠãå
ã»ã©ã®ã¯ãŒã¯ãããŒã«çµã¿èŸŒãã§ãããŸãã
ComfyUIã«ã¯A1111ã§èšãæ¡åŒµæ©èœã®ã«ã¹ã¿ã ããŒãããããŸãã
ãã®ãã¥ãŒããªã¢ã«ã§ã¯äžèšã®2çš®é¡ã䜿çšããŸãã
ComfyUI-Manager
ããã¯å¿
é A1111ã§èšããšãExtentionsã¿ããã®ãã®ã
å¿
ãå°å
¥ããŸãããã
ç¡ããšã«ã¹ã¿ã ããŒãã®ã€ã³ã¹ããŒã«ã«gitã³ãã³ãããã¡ãã¡äœ¿ãããšã«ãªã£ãŠé¢åã§ãããã¶ãããã¡ããã¥ãŒã§ãã(ãäžå)æäœæ§ãæªãã§ãã
ïŒåèšäºã®ComfyUIå
¥é:1 ã€ã³ã¹ããŒã«ç·šã§ã€ã³ã¹ããŒã«ãæžãã§ããäºãåæãšããŠè©±ãé²ããŸãã
ComfyUI-Impact-Pack
ãããå¿
é ãè²ããªæ©èœãè©°ã蟌ãŸããŠãŸãã
é«å質ã¢ããã¹ã±ãŒã©ãŒãAfterDetailer蟺ããããã«å
¥ã£ãŠãŸãã
ä»ãããã®ã«ã¹ã¿ã ããŒãã远å ããŠãããŸãã
ä»åã¯ãã®äºã€ãå©çšããŠåºç€çãªt2iã¯ãŒã¯ãããŒãæ§ç¯ããŠãããŸãã
ã«ã¹ã¿ã ããŒãã远å ããã
ããã§ã¯ã«ã¹ã¿ã ããŒãã远å ããã¯ãŒã¯ãããŒã«å°å
¥ããæ§åã解説ããŸãã
ïŒãããŸã§ã«æžããåºæ¬çãªæäœã«ã€ããŠã¯èšå
¥ããŸããã®ã§ãåãããªãç®æã¯t2iã¯ãŒã¯ãããŒã®é
ã§æäœæ¹æ³ã調ã¹ãŠãã ããã

ãªã¹ãããã€ã³ã¹ããŒã«
ã€ã³ã¹ããŒã«æ¹æ³ã¯å¹Ÿã€ããããŸãããä»åã¯Install Custom Nodesããã€ã³ã¹ããŒã«ããŠã¿ãŸãããã
(åèšäºã§èŒããéã«æèš³ããå
容ãèŒããŠãããŸã)


Install Custom Nodesãã¿ã³ãæŒããšãã®ãããªãªã¹ããçŸããŸãã
äœ¿ãæ¹ã¯A1111ã®æ¡åŒµæ©èœãªã¹ããšåããããªããã§ãã

å·ŠäžFilter: allã¯ã€ã³ã¹ããŒã«ç¶æ ã«å¿ããŠè¡šç€ºãåæ¿
å³äžã®ããã¹ãããã¯ã¹ã§æ€çŽ¢
å·ŠäžCloseã§éãã
åã«ã¹ã¿ã ããŒãã®å³ã«ãããInstallããã¿ã³ã§ã€ã³ã¹ããŒã«
ä»åã¯ComfyUI Impact Packãã€ã³ã¹ããŒã«ããŸãã®ã§ããªã¹ãäžã«ç¡ãå Žåã¯impact packã§æ€çŽ¢ããŠã¿ãŸãããã(ãªã¹ãã®äžäœã«ãããªããã®ãŸãŸInstallãã¿ã³æŒãã¡ãã£ãŠãOK)
ã€ã³ã¹ããŒã«ãå®äºãããšâŠ

Restartãããã£ãš

OKããŠComfyUIãåèµ·åããŸãããã
ä»éããŠããComfyUIã¿ãã¯éãã¡ãããŸãããã
(ã³ãã³ãããã³ããã¯éããªãã§ã)
èªåçã«ComfyUIãèµ·åããŸãã
ããã§ComfyUI Managerããã«ã¹ã¿ã ããŒãã®å°å
¥ã¯å®äºã§ãã
ãªã¹ãã«ãªãã«ã¹ã¿ã ããŒããã€ã³ã¹ããŒã«
Install via Git URLãã¯ãªãã¯

Detailerãã¯ãŒã¯ãããŒã«è¿œå ããã
ä»å°å
¥ããImpactPackããŒããã¯ãŒã¯ãããŒã«çµã¿èŸŒãã§ã¿ãŸãããã
å³ã¯ãªã㯠-> Add Node -> ImpactPack
ãããã«ã¹ã¿ã ããŒããâŠãïŒ


ã¡ãã£âŠåè«ããâŠ
ãããªãã§ããImpactPackã¯å€æ©èœãªã«ã¹ã¿ã ããŒãã§ãç§ããŸã äžéšã®æ©èœããææ¡ã§ããŠããŸããã
ããããDetailerãšUpscaleã¯å°å
¥ãæè»œã§ãããªããããšãŠã匷åã§ããã®ã§ä»å玹ä»ããããšã«ããŸããã
FaceDetailerã远å ããã
A1111ã§èšãæã®AfterDetailerã§ãã
A1111ã§å€§å€ãäžè©±ã«ãªã£ãæ©èœã§ããããã¡ãã®Detailerãçžåœåªç§ã§ãã
ä»åã¯ç°¡æçãªFaceDetailerãå©çšããŠé¡ãšæã«é©çšãããDetailerã远å ããŸãã
ãŸããã¡ã€ã³ãšãªãFaceDetailerããŒãã远å ããŸãã
ä»åã¯æ€çŽ¢ãã远å ããŠã¿ãŸãããã
ãã£ã³ãã¹ãããã«ã¯ãªãã¯ããŠâŠ


ã§ã£âŠïŒã§ã£ãïŒãªã«ãïœâŠã£ãŠãªããŸãããã(ç§ããªããŸãã)
ã§ããäžã€ãã€èŠãŠã¿ããšèŠèŠãã®ãããŠã£ãžã§ãããããŒã¿ãçµæ§ãããŸããã
AfterDetailerã®ä»£æ¿ãšããŠäœ¿ãåã«ã¯ä»¥äžã®é ç®ãè§Šããã°ããšã¯ããã©ã«ãã§ãååã§ãã
Sampler_nameãScheduler
KSamplerã®ãã€ãšåããã®ã䜿ãã°OK
denoiseãstepsãcfg
ãããKSamplerãšåããããªæ±ãæ¹ã§OK
ç§ããŸã å®å
šã«ææ¡ããŠããŸãããAfterDetailerãšããŠåäœããåã«ã¯æºè¶³ã®ã§ããçµæãåŸãããŠããã®ã§ä»ã®æè§ŠããŠããŸããã
(æžããŠããæäžã«æ°ã¥ããŸãããããããã®ãã®ããµã³ãã©ãŒãšããŠéçšããããã«ãŒãããããã§ããããã§ããæ€èšŒããã远å ã®èšäºãæžããŸãã)
ããŒãã®ãã«ãã«å§åãããŸããã以äžã®ããã«ã¯ã€ã€ãŒãæ¥ç¶ããŠãããŸãããã
VAE Decode [IMAGE] -> [image]
Load Checkpoint [MODEL] -> [model]
Load Checkpoint [CLIP]Â -> [clip]
Load VAE [VAE]Â -> [vae]
*Positive Prompt [CONDITIONING]Â -> [positive]
*Negative Prompt [CONDITONING]Â -> [negative]
*CLIPTextEncodeããŒãã®ã¿ã€ãã«ã倿ŽããŸããããã

æªç¥ã®ããŒãã«æ¥ç¶ããå¿
èŠã®ããå
¥å/åºåã¯ã©ããã調ã¹ããæã¯ãçæãã¡ããã®ãäžã€ã®æã§ãã
èµ€æ ã§ãšã©ãŒã®åå ç®æã衚瀺ãããŸãã

åå ãããã£ãã®ã§ãbbox_detectorã«å¯Ÿå¿ããããŒããæ¢ããŸãããã
åãããªãå
¥åå
ãåºåå
ã«æ¥ç¶ãããæã¯âŠïŒããã ããSearchã ãã

æ£è§£ã¯ãUltralyticsDetectorProviderã§ããïŒ

ãããããŒïŒãšæããŸããç§ãè¿·ããŸããã(å
¬åŒã®readmeã«ãèŒã£ãŠãŸãããããã®æäœãç¥ããªãã£ãã®ã§æ°æéè¿·ããŸãã)
ããã§ã¯é¡ã察象ã«ããã®ã§face_yolov8m.ptãæå®ããŸãã
æåŸã«ãFaceDetailerã®imageåºåããPreview imageã«æ¥ç¶ããŠå®æã§ãã
宿ãããQueue Promptãctrl + enterã§çæããŠã¿ãŸãããã

ããŠãFaceDetailerãã¯ãŒã¯ãããŒã«çµã¿èŸŒããã®ã§çæããŠã¿ãŸããã


ç¡äºä¿®åŸ©ãããŠããã®ã§ãFaceDetailerã¯åäœç¢ºèªã§ããŸããã
æ¬¡ã¯æã®ä¿®åŸ©æ©èœã远å ããŠã¿ãŸãããã
ããæ¹ã¯æ®ã©å€ãããŸããã
HandDetailerã远å ããã
FaceDetailerããŒããè€è£œããŸãããã
ããŒããå³ã¯ãªã㯠-> Clone(ããŒãè€è£œ)

è€è£œããããŒãã®ååã¯FaceDetailerã§ãããUltralyticsDetectorProviderããŒãã§hand_yolov8s.ptãæå®ããã°é¡ã§ã¯ãªãæãæ€ç¥ããããã«ãªããŸãã
FaceDetailerããFaceDetailerãžã¯ã€ã€ãŒãæ¥ç¶ããŸãããã
ãã£ããã£ãæ¹æ³ãšæ®ã©å€ãããŸãããã
FaceDetailer [image] -> [image]
Load Checkpoint [MODEL] -> [model]
Load Checkpoint [CLIP]Â -> [clip]
Load VAE [VAE]Â -> [vae]
Positive Prompt [CONDITIONING]Â -> [positive]
Negative Prompt [CONDITONING]Â -> [negative]

UltralyticsDetectorProviderãClone
hand_yolov8.ptã«å€æŽ
UltralyticsDetectorProvider [BBOX_DETECTOR] -> [bbox_detector]
image -> Preview image [images]
HandDetailerã宿ãããŸãããã

äºã€ç®ã®FaceDetailerã¯æã察象ã«åäœããã®ã§ãããŒãã®ã¿ã€ãã«ã¯ãHandDetailerãã®æ¹ãé©åã§ããã
ä»ã®ãã¡ã«å€æŽããšããŸãããã

ããã§ã¯ãŒã¯ãããŒã«çµã¿èŸŒãäœæ¥ãå®äºããŸããã
ãã£ããçæããŠã¿ãŸãããïŒ


ç¡äºåäœããŠããŸããïŒ
ãã®ããã«ã䜿ãã®ãšäœ¿ããªãã®ã¯çžåœéããŸãã
æ¯éå°å
¥ããŠã¿ãŠãã ãããã
Upscalerãã¯ãŒã¯ãããŒã«è¿œå ããã
次ã¯t2iå®çªã®æ©èœã¢ããã¹ã±ãŒã©ãŒã远å ããŸãããã
å¿ èŠãšãªãããŒãã¯æ¬¡ã®éã
ToBasicPipe
PixelKSampleUpscalerProviderPipe
Iterative Upscale(Latent/on Pixel Space)
ãã®3ã€ã§ãã
ãããŸã§ã®æäœãæãåºããªãããããŒãã远å ãã¡ãããŸãããã



ToBasicPipeããŒãã¯ä»¥äžã®ããã«æ¥ç¶ããŠãããŸãããã
Load Checkpoint [MODEL] -> [model]
Load Checkpoint [CLIP]Â -> [clip]
Load VAE [VAE]Â -> [vae]
Positive Prompt [CONDITIONING]Â -> [positive]
Negative Prompt [CONDITONING]Â -> [negative]
PixelKSampleUpscalerProviderPipeã¯ä»¥äžã®ããã«æ¥ç¶
ToBasicPipe [basic_pipe] -> [basic_pipe]
Iterative Upscale(Latent/on Pixel Space)ã¯ä»¥äžã®ããã«æ¥ç¶
KSampler [LATENT] ->[samples]
[latent] -> VAE Decode [samples]

ãããããªãŒãâ¥(æ€æ)
æ¥ç¶ãå®äºããããã¢ããã¹ã±ãŒã©ãŒã®èšå®ãããŸãããã


ã¯ãŒã¯ãããŒã¯æçµçã«ã¯ãããªããŸããã

çŸå³ããããªã¹ãã²ããã£ãåºæ¥ãŸããããâ¥
ããã§åºæ¬çãªt2iã¯ãŒã¯ãããŒã¯å®æã§ãïŒ
æ©éçæããŠã¿ãŸãããã
çæäŸ



ä»åãSD1.5ã䜿ã£ãã®ã¯æ§é ãã·ã³ãã«ãªãããComfyUIåå¿è
ãè§Šãã«ã¯ã¡ããã©ãããšæã£ãããã§ãã(ç§ã¯æåããSDXLã«è§Šããäžã«æäœæ¹æ³ãåãããªãç¶æ
ã§åžããã®ã§å°çãèŠãŸããïŸïœ¯ïœ·ïœŒïœ®ïœ°)
ã¡ãªã¿ã«ãSDXLã®Refinerã䜿ããªãå Žåã¯ä»åã®ã¯ãŒã¯ãããŒã§VAEãšã¢ãã«ãçšæããã°SDXLã®å©çšãã§ããŸããïŒ(akkyossããããææããããšãããããŸãã)
ãŸãšã
ã¯ãŒã¯ãããŒã«çæããåã«äžåºŠçæã®æµããæèããã
ãã®ããŒãžãèŠãªããåãæäœããã£ãŠã¿ãŠããŒãã®æ¢ãæ¹ãåŠã³ãŸããã
ç¹ã«æ³šæãããé ç®
ããã³ããã®åŒ·èª¿ã¯A1111ãã匷ã
embedding:åç§° , ã¯å³å®(åè§ã¹ããŒã¹ã«æ³šæ!)
samplerã§ã¯_gpuã®ãã®ã䜿ãã
å ¥å/åºåã¯å šéšæ¥ç¶ãããã®ã§ã¯ãªã
ã«ã¹ã¿ã ããŒãã¯å¿ ãreadmeãèªãã§ããµã³ãã«ã®ã¯ãŒã¯ãããŒã詊ããŠããå°å ¥ããŸããã(3æ)
åèã«ãããŠé ãããµã€ãããŸ
æå¿ã«ããåå
¬åŒComfyUI解説ãµã€ã(è±èª)
ããŒãã®è§£èª¬ãªã©ããããŸã
æ¥æ¬èªã§ã®è§£èª¬ãµã€ãã¯ãã¡ãããããã
ããã³ãã仿§ã®è§£èª¬ã§å€§å€ãäžè©±ã«ãªããŸãã
è±ç¬ äžå€ããã®Note
ComfyUIããéããŠããç§ã䜿ãããã«ãªã£ããã£ãã
äžã®ãªã³ã¯ãæããŠé ããŠå€§å€å©ãããŸãã
ããããšãããããŸããïŒ
ããšãã
ãããã§ãããïŒ
ã¯ãŒã¯ãããŒã®æ§ç¯ã¯åºæ¥ãŸãããïŒ
åºæ¬æäœãšãããŒã®æµããåããã°åºç€ã®çæã¯åºæ¥ããã®ãšæããŸãã
ããããã¡ãã£ãšåŠçãå²ã蟌ãŸãããããããšãããšãããŒã®æµãã ãçè§£ããŠãã¡ãã£ãšé£ãããªã£ãŠããŸããŠãæŽã«äžæ©èžã¿èŸŒãã§åå·¥çšã§ã¯äœãèµ·ãã£ãŠããã®ããç¥ãå¿
èŠãåºãŠããã§ãããã
ããã§ã次åã¯Latentã¢ããã¹ã±ãŒãªã³ã°ããã¯ã»ã«ã¢ããã¹ã±ãŒãªã³ã°ãi2iã¢ããã¹ã±ãŒãªã³ã°ã®ã¯ãŒã¯ãããŒãæ§ç¯ããªãããããå°ãèžã¿èŸŒãã§ç»åçæã«ã€ããŠç¥ã£ãŠãããŸãããã
ããã§ã¯æ¬¡å
ãComfyUIå
¥é:3 ã¢ããã¹ã±ãŒãªã³ã°ãšãšã³ã³ãŒãã«ã€ããŠ(ä»®é¡)ã
ã§ãäŒãããŸãããã
ãæ©å«ããã
ä»åŸã®äºå®
SDXLã®t2iã¯ãŒã¯ãããŒãæ§ç¯ãã
Depth mapãnormal mapãååŸãã
PERP-Negã詊ã
IPAdapterãå°å
¥ãã
ControlNetãå°å
¥ãã
解説ããŠã»ããããšãèŠæãææ³çãããã°DMããã·ã¥ããçã§åãä»ããŠãããŸãã
ãæ°è»œã«ã©ããïŒ
æŽæ°å±¥æŽ
2024/1/28
äžéšè¡šçŸã«èª€ãããã£ãç®æãä¿®æ£
ããããã£âãŠã£ãžã§ãããå ¥åãåºåãããŒã¿é©åãªè¡šçŸã«ä¿®æ£