prompt를 사용하면 학습된 화가에 대해서는 그림을 그려주지만, 그렇지 않은 화가의 작품은 적용하기 어려운 점이 있습니다.
Lora를 만드는 방법도 있지만, 학습을 시켜야하는 번거로움이 있고, 이때 컨트롤넷의 "스타일 어댑터" 기능을 쓰면 간편하게 그림 한장으로 해당 작품의 느낌을 적용할 수 있습니다.
https://github.com/Mikubill/sd-webui-controlnet
여기의 t2iadapter_style_sd14v1.pth 를 활용한 방법이 되겠습니다.
먼저 아무것도 적용하지 않고, 순수 체크포인트만을 사용한 그림입니다.
best quality, The Star: A woman holding a star in her hand, with a crescent moon under her feet.
Negative prompt: (low quality, worst quality:1.4)
Steps: 20, Sampler: DPM++ 2M Karras, CFG scale: 7, Seed: 2810180850, Size: 512x912, Model hash: 30953ab0de, Model: meinamix_meinaV8
동일한 프롬프트에 ControlNet에서 김홍도 선생님의 작품을 입력으로 넣고, Preprocessor를 "clip_vision", Model은 "t2iadapter_style"을 적용해봅니다.
김홍도 선생님이 2023년에 meinamix의 그림을 보고 영감을 받았다면 이랬을까 싶은 작품이 탄생합니다.
고흐 선생님 작품도 넣어봅니다.
강렬한 색감이 마음에 드네요.
가끔은 원래 그림을 그대로 남겨두고 색감만 바꾸고 싶을 때가 있습니다.
이런 상황에서는 img2img 기능을 사용하면 됩니다. 다만 컨트롤넷을 여러개 적용해야 하기에, 기본 설정인 분들은 "Settings > ControlNet > Multi ControlNet"의 기본값 1을 2 이상으로 키워주셔야 합니다.
처음의 체크포인트만으로 생성했던 그림을 img2img로 보내 "Denoising strength"는 전부 새로 다시 그린다는 의미의 "1"로 설정합니다.
첫번째 컨트롤 모델은 그림의 외곽선을 따주는 canny로 합니다. 이미지는 따로 넣지 않아도 img2img의 입력을 그대로 사용하는 것 같네요.
두번째 모델은 스타일 어댑터로 설정해줍니다.
그렇게 해서 완성된 그림입니다.
고흐님의 입김을 좀 더 불어넣어주고싶으면 Weight를 조절해주면 됩니다. 첫번째 컨트롤 모델의 Weight를 0.3정도로 줄이면 아래와 같이 두번째 모델의 느낌이 상대적으로 강화되는 것을 볼 수 있습니다.
같은 방식으로 김홍도 선생님의 숨결이 들어간 그림입니다.
멍멍게찜님 덕분에 비로소 이 스타일 기능이 이해되네요 ㅋㅋㅋ 감사합니다 :D