AI 이미지/SD Video

스테이블 디퓨전 - 텍스트 애니메이션 비디오(AnimateDiff)

하늘이푸른오늘 2023. 12. 19. 16:07

이글은 아래와 같은 텍스트 애니메이션이 포함된 비디오를 생성하는 방법을 설명합니다.

이글에서는 먼저 무료 소프트웨어를 사용해 텍스트 애니메이션을 만드는 방법을 알아보고, 이 비디오를 사용해 실제 파도가 치는 효과를 추가하는 ComfyUI 워크플로를 알아보겠습니다.

이 글의 내용은 아래와 같습니다.

소프트웨어

텍스트 애니메이션을 생성하기 위한 비디오 편집프로그램은 Da Vinci Resolve를 사용합니다. 아래로 내려가면 아래와 같은 화면을 볼 수 있는데, Free Download Now를 누르면 등록한 후 다운로드 받을 수 있습니다.

스테이블 디퓨전을 사용하기 위한 웹 UI 는 ComfyUI를 사용합니다. ComfyUI가 처음이신 분은 설치 및 기본 사용법초보자 가이드를 참고하시기 바랍니다.

DaVinci Resolve 설치

아래의 Da Vinci Resolve 프로젝트 파일은, 최종 텍스트 애니메이션이 만들어진 프로젝트 파일입니다. DaVinch에 관심이 없으시면 이것을 다운로드 받은뒤 여기로 가서 진행하시면 됩니다.

Wave-text-animation.drp
0.02MB

 Da Vinci Resolve 사이트에서 다운로드 받은 Da Vinci Resolve zip 파일을 실행시키면 아래와 같은 화면이 나옵니다. 그대로 [Install] 버튼을 눌러 설치해 줍니다.

설치가 완료되면 아래와 같이 설정 마법사가 나타납니다. 여기에서도 모두 OK를 누르며 진행합니다.

DaVinci Resolve를 처음 실행시키면 아래와 같은 설정화면이 나옵니다. 저는 [Quick Setup]을 눌렀지만, 그냥 안해도 무방합니다.

Text 추가

DaVinci Resolve를 실행시키고 File->New Project를 선택합니다. 그다음 아래쪽의 Edit 페이지를 누르고 메뉴 아래쪽에 있는 [Media Pool]과 [Effects]를  누르면 Toolbox를 볼 수 있습니다.

이제 Titles 누르면 오른쪽에 여러가지 옵션이 나타나는데, 조금 아래쪽에 있는 Text+를 Drag&Drop하여 캔버스에 떨어뜨리면 "Custom Title"이 나타납니다.

다음으로 아래쪽의 [Fusion] 아이콘을 누르고, Text 내용과 폰트 크기를 변경해 줍니다.

Text 이동 추가

현재까지 만들어진 것은 "WAVE"라는 글자가 고정되어 있는 동영상입니다. 동영상은 동영상인데 아무것도 안움직이죠. 여기에 tracking 효과를 추가해 보겠습니다.

먼저 Exit 페이지에서 아래와 같이 Timeline 막대의 길이를 6초(01:00:06:00)정도로 늘려주고 막대 위를 맨 앞에 가져다 놓습니다.

그 다음에는 Fusion 페이지로 들어가서 텍스트가 충분히 벌어지도록 Tracking 값을 적당히 조절합니다.

다음으로 Edit 페이지에서 Timeline 막대를 중간쯤(01:00:03:00)으로 옮긴 후... 

다시 Fusion 페이지에 들어가 Tracking 값을 1.0으로 바꿔줍니다.

이렇게 설정하면 처음에는 [W A V E] 처럼 벌어져 있다가 3초쯤 부터는 [WAVE]로 표시가 됩니다. 이는 Edit 페이지에서 Timeline 막대를 이리저리 움직여 보거나, 그 위쪽에 있는 플레이 버튼을 눌러서 확인할 수 있습니다.

저는 처음부터 3초까지는 폰트 크기를 3.5로, 그 다음부터는 약간씩 커지다가 맨 마지막엔 4.0이 되도록 하는 모션도 추가했습니다. 또한 글자 두께가 너무 얇아서 ExtraBold로 설정해주었습니다.

텍스트 애니메이션 내보내기

아래쪽에 있는 로켓모양 아이콘(Deliever)를 누르고 아래와 같이 설정합니다.

파일명과 저장 위치를 선택하고, 비디오 포맷은 MP4를 선택합니다. 다음으로 [Add to Render Queue]를 클릭하고 우측의 [Render All] 버튼을 눌러주면 텍스트 애니메이션 비디오가 생성됩니다. 아래가 이렇게 생성한 MP4 비디오입니다.

ComfyUI 워크플로 사용하기

먼저 워크플로가 포함된 아래의 이미지를 다운로드 받은 후, ComfyUI 캔버스에 Drag&Drop 합니다.

필요시에는 ComfyUI를 최신 버전으로 갱신하거나, 빠진 커스톰 노드를 설치하거나, 혹은 모든 커스톰 노드를 갱신해야 할 수 있습니다.

모델 다운로드

다음으로 모델을 다운로드 받습니다. 이 글에서는 helloyoung25d 모델을 사용합니다. ComfyUI\models\checkpoints 폴더에 다운로드 해주시면 됩니다(AUTOMATIC1111과 모델을 공유할 경우 여기를 읽어보세요). 다운로드가 완료되면 ComfyUI 화면을 새로고침(F5)해주시고 모델을 선택해 주시면 됩니다.

VAE는 kl-f8-anime2 를 사용합니다. ComfyUI\models\vae 폴더에 다운로드 해주시면 됩니다. 

add_detail LoRA로 다운로드 받아 ComfyUI\models\lora에 넣어줍니다.

QR monster ControlNet 모델을 다운로드 받아 ComfyUI\models\controlnet 폴더에 넣어줍니다.

마지막으로 업스케일 모델인 4x UltraShapr  모델을 다운로드 받아 ComfyUI\models\upscale_models 폴더에 넣어줍니다.

 ComfyUI 비디오 생성

위에서 DaVinci Resolve로 생성한 비디오를 [Load Video(Upload)] 노드에 불러옵니다.

이제 [Queue Prompt] 를 선택하면 비디오가 생성됩니다. 아래는 제가 생성한 결과입니다. 제가 생성했다고 해도 모두 동일하게 설정했으므로, 원본 글의 결과물과 완전히 동일합니다.

매개변수 변경

모델이나 LoRA 등을 변경시키면 다른 비디오가 생성됩니다. 물론 입력하는 비디오를 바꾸면 그에 맞는 모델을 선택해 주어야 하고요.

ControlNet 부분을 살펴보시면 QR monter ControlNet을 사용하는 ControlNet 노드가 2개 있습니다. 왼쪽은 샘플링 스텝의 시작부분, 오른쪽은 끝나는 부분을 제어합니다. 현재 stength를 각각 0.5/0.6으로 설정했는데 이 값을 올리면 글자가 보다 선명하게 보이게 됩니다.

실습

아래는 크리스마스 테마로 만들어본 겁니다. DaVinci 텍스트 애니메이션은 그냥 WAVE를 X-MAS로 바꾸기만 했고요, 프롬프트는 "(best quality, masterpiece),  Chistmas ornaments, poinsettia, golden lights"로 바꿨습니다.

다른 모든 설정은 위와 동일합니다.