AI 이미지/Stable Diffusion

스테이블 디퓨전: 애니 모델 및 프롬프트

하늘이푸른오늘 2023. 8. 3. 01:51

starry sky and city
starry sky and city

스테이블 디퓨전에서 자유롭게 사용할 수 있는 다양한 애니 모델을 사용하면, 멋진 애니 이미지를 생성할 수 있습니다. 이 글에 포함된 내용은 아래와 같습니다.

소프트웨어 설정

이 글에서는 윈도11용 AUTOMATIC1111 스테이블 디퓨전 UI를 사용합니다. AUTOMATIC1111 설치방법은 이 글을 읽어보시기 바랍니다. 참고로 현재 SDXL 1.0이 공개되었으나, 이를 기반으로 한 미세조정(Fine-tuned) 모델이나 LoRA 등은 나오지 않은 상태입니다. 따라서 AUTOMATIC1111 버전은 1.5.1이지만, 여기에 나오는 모델들과 LoRA는 1.5를 기반으로 한 것임라는 점을 참고하시기 바랍니다.

애니 이미지를 생성하기 위해서는 어떤 모델을 사용하느냐에 따라, Clip Skip과 VAE설정을 조정하는 경우가 많습니다. 따라서 Quick Settings 를 통해 이들을 활성화 시켜두는 것이 좋습니다.

먼저 Settings 페이지로 들어가서 왼쪽 패널에서 [User Interface]를 클릭하고 아래 그림과 같은 Quicksetting List를 찾습니다. 현재 포함되어 있는 sd_model_checkpoint는 AUTOMATIC1111 화면 맨 좌측 위에 있는 모델을 선택하는 드롭다운 메뉴를 말합니다.

AUTOMATIC1111 Quicksettings
AUTOMATIC1111 Quicksettings

여기에서 비어있는 공간을 클릭하면 아래와 같이 쭉 목록이 생성되는데, 직접 찾아도 되지만, 아래와 같이 단어를 입력하면 목록이 줄어들게 되므로, 적당히 입력하고 찾아서 클릭해 주면 됩니다. 

QuickSettings 목록 추가
QuickSettings 목록 추가

추가할 사항은 아래 두가지 입니다.

  • CLIP_stop_at_last_layers
  • sd_vae

이 두가지를 추가한 뒤, 맨 위에 올라가 [Apply Settings] 버튼을 누르고 다시 [Reload UI] 버튼을 눌러줍니다. 이제 AUTOMATIC1111 화면 맨 윗쪽이 아래와 같이 변경됩니다.

Clip_skp 과 SD_VAE 메뉴가 추가된 모습
Clip_skp 과 SD_VAE 메뉴가 추가된 모습

애니 체크포인트 모델

애니 이미지를 생성하려면 애니 모델을 사용합니다. 사실 꼭 그럴 필요는 없습니다. 스테이블 디퓨전의 기본 모델만으로도 애니 이미지를 생성할 수 있으니까요. 다만 품질은 그저 그렇죠.

애니 모델은 특별히 애니 이미지를 생성하기 위해 학습시킨 모델입니다. 아래에서는 여러가지 스테이블 디퓨전 애니모델을 소개하고 다운로드 링크도 제공합니다. 하지만 먼저 이들 모델로 부터 생성된 이미지들을 비교해 보겠습니다.

여기에서는 먼저 다음과 같은 설정을 사용하여 이미지를 비교해 보겠습니다. 

프롬프트: 1girl, solo, flower, long hair, outdoors, letterboxed, school uniform, day, sky, looking up, short sleeves, parted lips, shirt, cloud, black hair, sunlight, white shirt, serafuku, upper body, from side, pink flower, blurry, brown hair, blue sky, (masterpiece, best quality), depth of field
이미지 크기 : 768x512
시드 : 2912044817
샘플러: DPM++ 2M Karras
CFG 척도: 7

Anything V3
Anything v5 Ink Prt RE
DiscoMix Anime
AbyssOrangeMix3
Counterfeit v3
TMND Mix
Anything V3
Silicon29-dark
Anything v5 Ink Prt RE
DiscoMix Anime
AbyssOrangeMix3
Counterfeit v3
TMND Mix
Anything V3
Silicon29-dark

참고로 아래는 SDXL 1.0 base + refiner 모델로 생성한 이미지입니다. 단, 이미지 크기는 1216 x 832로 생성하였습니다. 잘 나오는 편이긴 한데, 위의 예들과 비교해보니, 일본 애니 특유의 모습은 좀 덜 보이는 듯하네요~

SDXL 1.0 base+refiner
SDXL 1.0 base+refiner

이제 애니 모델에 대해 좀 더 자세히 알아보겠습니다.

Anything v3

anime of 1girl in traditional japanese clothing
anime of 1girl in traditional japanese clothing

Anything 3는 스테이블 디퓨전 등장 초기에 공개된, 유명한 애니 모델입니다. 이 모델은 Novel AI 에서 유출된 NAI 모델을 사용해 미세조정되었는데, 원래의 모델보다 품질이 더 좋다는 이야기가 있습니다.

참고로 아래는 동일한 프롬프트를 사용하여 SDXL 1.0 base+refiner 모델로 생성한 이미지입니다.

anime of 1girl in traditional japanese clothing - SDXL
anime of 1girl in traditional japanese clothing - SDXL

Anything 5

anime of 1girl in traditional japanese clothing
anime of 1girl in traditional japanese clothing

Anything v5는 Anything v3의 개선 버전입니다. 모델 페이지에 들어가면 여러가지 버전이 있습니다. 제작자는 학습 프로세스로 인해서 좀더 상세하고 구체적인 프롬프트를 사용하는 게 좋다고 합니다.

참고로 Anything v4 또는 Anything v4.5와 같은 모델은 Anything v3 제작자가 제작한 모델이 아닙니다.

DiscoMix Anime

a girl with white hair and blue eyes wearing a black dress, feathers around her
a girl with white hair and blue eyes wearing a black dress, feathers around her

DiscoMix는 Anything v3, Disco 및 PastelMix를 합친 모델입니다. 이 모델에는 간단한 프롬프트를 입력하면 좋은 이미지가 생성되는 경향이 있습니다.

OrangeMixs

a young girl with a flower in her hair, close up
a young girl with a flower in her hair, close up

OrangeMix는 다양한 콘텐츠를 가진 사실적인 텍스처를 생성합니다. 이 모델은 노골적인(NSFW) 이미지도 생성할 수 있습니다. 원하지 않는다면 부정적 프롬프트에 NSFW를 넣는 것이 좋습니다. 

Counterfeit

  • Counterfeit 모델 페이지
  • 모델 다운로드 링크
  • 트리거 키워드: girl
  • 부정적 임베딩: EasyNegative

girl with long white hair sitting in a field of green plants and flowers, her hand under her chin
girl with long white hair sitting in a field of green plants and flowers, her hand under her chin

아래는 비교를 위해 SDXL base 모델로만 생성한 결과입니다. 

girl with long white hair sitting in a field of green plants and flowers, her hand under her chin - SDXL
girl with long white hair sitting in a field of green plants and flowers, her hand under her chin - SDXL

Counterfeit는 드림부스를 사용해 학습시키고 블록 가중치와 LoRA를 합친 모델입니다. 학습 과정에 의해 이제는 자연어 프롬프트에 대해서도 잘 작동합니다. 이 모델은 다양한 구성을 생성하도록 학습되었습니다.

Easy Negative 임베딩을 함께 사용하면 신체구조의 잘못이 줄어들고 이미지 품질이 향상됩니다. 반드시 트리거 키워드인 girl을 사용해야 합니다. 

TMND Mix

1 mechanical girl locked on a hanger
1 mechanical girl locked on a hanger

TMND Mix는 조명 효과가 좋은 상태로 복잡한 배경을 생성할 수 있습니다. 매우 뛰어난 범용 애니 모델로, 다양한 피사체를 생성하는 데 좋습니다.

OrangeMix VAE를 사용하면 색을 선명하게 만들 수 있습니다.

아래는 SDXL 1.0 base+refiner 모델로 생성한 결과입니다. 좀더 선명하면 좋겠는데... 싶네요.

1 mechanical girl locked on a hanger - SDXL base+refiner
1 mechanical girl locked on a hanger - SDXL base+refiner

Silocon29-Dark

1 girl in a cave, scenary
1 girl in a cave, scenary

Silicon29은 범용 애니 이미지를 생성하기 위해 다양한 모델을 병합한 모델입니다. 어두운(dark) 버전을 사용하면 더 어우운 이미지를 생성할 수 있습니다. 놀라운 이미지를 생성하는 데 비해 소홀히 취급받는 모델입니다.

애니용 임베딩(Embeddinggs)

임베딩(텍스트 인버전 이라고도 함)은 스테이블 디퓨전을 사용하여 이미지를 생성할때 품질을 향상시키기 위해 특별하게 학습된 키워드입니다. 단, 애니쪽에서는 부정적 임베딩을 사용하는 것이 일반적입니다. 

사용하는 방법은 원하는 임베딩을 stable-diffusion-webui -> embeddings에 다운받아 넣은 다음 [Generate] 버튼 바로 아래에 있는 [Show/hide extra networks] 버튼(화투처럼 생긴것)을 눌러서 해당하는 것을 클릭해주면 됩니다.

아래에 있는 임베딩은 모두 부적적 임베딩입니다. 따라서 반드시 부정적 프롬프트에 넣어주어야 합니다.

Easy Negative

부정적 프롬프트에 EasyNagative를 넣으면 품질이 향상됩니다.
부정적 프롬프트에 EasyNagative를 넣으면 품질이 향상됩니다.

EasyNegative는 Conterfeir, AbyssOrangeMix와 같은 애니 모델 이미지의 품질을 향상시키는 임베딩입니다. 반드시 부정적 프롬프트에 사용해야 합니다.

Bad Artist Negative Embedding

위 왼쪽은 적용전, 오른쪽은 적용 후입니다.

Bad Artist 부정적 임베딩을 부정적 프롬프트에 사용하면 이미지의 미적 요소를 상당하게 개선합니다. 동일한 방법으로 사용하되, 최대 효과를 발휘하려면 "by bad artist-neg"와 같이 앞에 "by"를 추가하는 게 좋습니다.

애니용 로라(LoRA)

LoRA란 스테이블 디퓨전 체크포인트 파일에 작은 변화를 일으키는 모듈입니다. 아래는 애니 체크포인트 모델에 대한 애드온으로 사용할 수 있는 LoRA의 예입니다.

3D 렌더링 스타일

3DMM LoRA는 애니 이미지에 3D 렌더링 스타일을 추가합니다. 원래는 ReAnimated 모델과 사용하려고 개발되었다고 하나, 다른 애니 모델과도 잘 어울립니다. 

Mecha LoRA

  • 모델 페이지: 
  • 다운로드 링크
  • 트리거 키워드: Mecha

이 LoRA는 멋진 메카닉을 생성합니다. Anything v3와도 문제없이 생성됩니다.

애니용 VAE

VAE(variatinal auto-encoder, 가변형 자동 인코더)는 잠재 영역의 이미지를 실제 픽셀 영역의 이미지로 디코딩하는 신경망의 일부입니다. 좋은 VAE를 사용하면 새로운 스타일을 만든다던지 디테일을 추가할 수 있습니다.

OrangeMix VAE

이 VAE는 색상과 선명함을 추가합니다. 생성된 이미지가 마음에 안들면 실험해 볼 수 있습니다.

kl-f8-anime2

kl-f8-anime2는 애니 이미지 생성에 있어 매우 좋은 VALE입니다. 색과 선명함을 추가합니다.

아래는 OrangeMix 자체 VAE를 사용할 때, OrangeMix VAE, 마지막으로 kl-f8-anime2 VAE를 적용하였을 경우를 비교해 본 것입니다. kl-f8-anime2 VAE가 제일 선명하네요.

Hires. Fix를 사용하여 색상을 향상시키는 방법

Hires.Fix 를 사용하면 애니 이미지의 품질이 높아집니다. 

먼저 아래와 같은 설정으로 시험해 보겠습니다.

모델: TMND-MIX
프롬프트: masterpiece, best quality, winter, snow field, smile, blush, 1girl, bangs, blue eyes, blunt bangs, bonnet, brown footwear, brown hair, red dress, frills, fruit, full body, hat, long hair, long sleeves, looking at viewer, black pantyhose, red flower, red rose, rose, shoes, sitting, solo, sky, sunset, mountain, forest, lake
부정적 프롬프트: EasyNegative, By bad artist -neg, (worst quality:2), (low quality:2), (normal quality:2)  
                           참고 : EasyNegative와  By bad artist -neg 는 임베딩입니다.|
Sampler: DPM++2M Karras
Sampling steps: 30
Size: 768 x 512

1girl in snow field, forest, lake, mountain, sunset
1girl in snow field, forest, lake, mountain, sunset

정말 예쁜 이미지가 만들어졌습니다. 그런데 약간 흐릿한 느낌이네요. 콘트라스트도 부족한 듯 싶구요. 

이번엔 HiRes Fix를 켜줍니다. (저는 처음에 8장을 생성한 후, 그중에서 마음에 드는 이미지의 시드번호를 알아내어 1장만 HiRes. Fix를 적용시켰습니다. 평상시 4장 배치로 30초 정도면 생성되는데, Hires. Fix를 적용하면 1장에 2분이 걸리네요. 시간이 엄청 많이 차이납니다)

HiRes. Fix 설정
HiRes. Fix 설정

설정은 아래와 같습니다.  HiRes. Fix 체크박스를 누르면 아래쪽에 관련 메뉴가 나오는데, 기본 설정을 그대로 사용했습니다.

Hires. fix: Enabled
Upscale by: 2
Upscaler: Latent
Denoising: 0.7

아래는 결과입니다. 이미지가 훨씬 깨끗하졌고 색도 선명해졌습니다. 특히 애니 이미지의 경우엔 이 방식이 매우 유용합니다. 아울러 자세히 보시면 옷과 배경, 얼굴 등 모두 디테일이 추가되었습니다. 

1girl in snow field, forest, lake, mountain, sunset
1girl in snow field, forest, lake, mountain, sunset

HiRes. Fix를 아래와 같이 사용해도 좋다고 하네요. 직접 시험해 보시기 바랍니다.

Hires. fix: Enabled
Upscale by: 2
Upscaler: R-ESRGAN 4x+
Denoising: 0.2 – 0.5

애니용 프롬프트

애니 이미지를 위한 좋은 프롬프트

좋은 애니용 프롬프트를 만드는 것은, 기본적으로 일반적인 좋은 프롬프트를 만드는 것과 유사합니다. 프롬프트 작성법을 잘 모르시면 이 글 부터 읽어보시기 바랍니다. 여기에서는 애니용 프롬프트를 만들때 유의할 점에 대해서만 설명합니다.

일단 간단한 프롬프트부터 시작합니다. 가장 간단하게는 피사체, 방향, 배경 등 3개의 키워드 만으로도 가능합니다. 이렇게 간단하게 프롬프트를 입력해보면, 얼마나 멋진 이미지가 생성되는지 놀라실 겁니다.

특히 애니용 프롬프트를 입력할 때는 키워드를 나열하는 방식이 좋습니다. 아래에 있는 프롬프트 예를 보시면 아시겠지만, 거의 1개의 단어가 여러개 나열된 방식이 많습니다. 잘은 모르지만, 이런 애니 모델이 Danbooru 라는 사이트에서 학습된 경우가 많고, 이 사이트는 하나의 영상에 다양한 태그(키워드)를 부여한 방식으로 이루어져 있기 때문인 것 같습니다. 

최상의 결과를 얻으려면 애니 모델에 부정적 프롬프트(negative prompt)를 사용하는 것이 좋습니다. 부정적 프롬프트를 사용하지 않으면 제대로 된 결과를 생성하지 못하는 애니 모델도 많습니다. 부정적 임베딩 Easy Negative는 거의 필수라고 할 수 있고요.

어떤 이유인지는 모르지만, 애니 모델의 경우 키워드 가중치를 높여도 나쁜 결과가 거의 발생하지 않습니다. 가중치를 2까지 높이는 모험도 시도해볼 만 합니다. 부정적 프롬프트도 마찬가지로 적용되고요.

애니 모델에서는 모델에 따라 Clip Skip 값을 다르게 적용하라고 추천하는 경우가 있습니다. 모델 페이지의 내용을 잘 읽어보고 올바른 설정값을 확인해보는 게 좋습니다.

Danbooru 태그

프롬프트에서 Danbooru 태그를 사용하면 큰 도움이 됩니다. Danbooru 태그를 사용하면, 피사체, 화각, 원근감, 구도를 손쉽게 제어할 수 있습니다(참고: 일부 태그는 NSFW 입니다) (단, 우리나라에선 Danbooru가 막혀있네요. IP를 우회해서 들어가야만 확인할 수 있습니다.)

예를 들어 다음과 같은 태그를 사용하면 화각을 제어할 수 있습니다.

  • from above
  • from below
  • from side

1boy from above
1boy from below
1boy from above
1boy from side
1boy from below
1boy from above
1boy from side

Danbooru 태그는 너무 많아서 여기서 소개해드리기 힘듧니다. 직접 확인하시고 사용해보시는 게 좋습니다.

프롬프트 예제

1. 토리이

모델: Anything 3
프롬프트: anime of 1girl in traditional japanese clothing, with white wolf beside her, standing in front of a a magical torri shrine, 200mm (masterpiece, best quality)

anime of 1girl in traditional japanese clothing
anime of 1girl in traditional japanese clothing

2. 얼굴 타투

모델: AbyssOrangeMix3
프롬프트: 1girl, short hair, torn clothes, messy, face tattoo, face paint, (dirty face, dirty hair:1.1), mischieval smile, jacket, (wearing hood:1.2), dramatic lighting, action shot, heavy shadows, vibrant, paint spray, (graffiti:1.3), (very colorful:1.3), (colorful clothes:1.2), game cg, vibrant color
부정적 프롬프트: blurry, (skinny:1.4), by bad-artist, by bad-artist-anime, (from behind:1.1), dim colors, bland, no headwear, low contrast

1girl, short hair, torn clothes, messy, face tattoo
1girl, short hair, torn clothes, messy, face tattoo

3. 메카닉 소녀

모델: TMND Mix
Clip Skip:2
프롬프트: 1girl, masterpiece, best quality, sitting, full body, indoors, (1 mechanical girl locked on a hanger:1.5),(transparent surfaces and skins:1.5),(many mechanical gears and electronic components inside the body:1.4),(mechanical vertebra and cervial:1.3),solo,expressionless,(wires and cables attaching to head and body:1.4),(mechanical arms of surgical machine around:1.2),(Circuit boards:1.4),(character focus:1.3),science fiction
부정적 프롬프트: EasyNegative, (worst quality:2), (low quality:2), (normal quality:2), bad art, ugly
                            EasyNegative는 임베딩입니다.

1 mechanical girl locked on a hanger
1 mechanical girl locked on a hanger

4. 깃털

모델: DiscoMix Anime
ClipSkip: 2
프롬프트: (((masterpiece))),best quality, illustration,(beautiful detailed girl), a girl ,solo,bare shoulders,flat_chest,diamond and glaring eyes,beautiful detailed cold face,very long blue and sliver hair,floaing black feathers,wavy hair,black and white sleeves,gold and sliver fringes,a (blackhole) behind the girl,a silver triple crown inlaid with obsidian,(stand) on the black ((mountain)), (depth) of (field)
부정적 프롬프트: (worst quality, low quality:1.4), EasyNegative

1girl with long hair, floating features
1girl with long hair, floating features

5. 바위 자이언트

모델: Silicon29-Dark
Clip Skip:2
프롬프트: (masterpiece, best quality), a giant made of rock, highly detailed, rock texture
부정적 프롬프트: (worst quality, low quality:1.4) EasyNegative

a giant made of rock
a giant made of rock

6. 별 헤는 밤

모델:Anything v5
Clip Skip: 2
프롬프트: octans, sky, star(sky), scenery, starry sky, night, night sky, outdoors, building, cloud, milky way, sitting, tree, city, silhouette, cityscape

starry sky and city
starry sky and city

이상입니다. 

이글은 Stable-diffusion-art.com의 글을 번역하면서 이미지는 상당부분 제가 직접 생성해서 대체하며 작성했습니다. 애니용 프롬프트는 무조건 짧게해야 좋은 결과가 나온다는 걸 이제야 알았습니다. ㅎㅎ