Khám phá cách tạo video độc đáo với Deforum Stable Diffusion

Chúng ta sẽ đi qua các bước để tạo video bằng Deforum Stable Diffusion.

Bài viết này dành cho những người mới bắt đầu chưa từng tạo video bằng Deforum Stable Diffusion trước đây. Bạn sẽ học được:

  • Deforum Stable Diffusion là gì.
  • Cách cài đặt tiện ích Deforum trên AUTOMATIC1111 Stable Diffusion.
  • Các thiết lập cơ bản.
  • Từng bước để tạo video Deforum đầu tiên của riêng bạn.

Deforum Stable Diffusion là gì?

Deforum là phần mềm mã nguồn mở và miễn phí để tạo ra các hiệu ứng hoạt hình. Nó sử dụng chức năng chuyển đổi ảnh sang ảnh của Stable Diffusion để tạo ra một chuỗi hình ảnh và ghép chúng lại để tạo thành một video.

Nó áp dụng các biến đổi nhỏ cho một khung ảnh và sử dụng chức năng chuyển đổi ảnh sang ảnh để tạo ra khung ảnh tiếp theo. Vì sự thay đổi giữa các khung ảnh là nhỏ, nó tạo ra cảm giác của một video liên tục.

Làm thế nào để cài đặt Deforum Stable Diffusion?

Chúng ta sẽ sử dụng tiện ích deforum của giao diện người dùng AUTOMATIC1111. Bạn có thể sử dụng giao diện người dùng này trên Windows, Mac hoặc Google Colab.

Sử dụng deforum trên Google Colab

Nếu bạn đang sử dụng sổ ghi chép Colab trong Hướng dẫn Bắt đầu Nhanh, chỉ cần kiểm tra tiện ích Deforum trước khi bắt đầu AUTOMATIC1111.

deforum stable diffusion

Vậy là xong!

Sau khi khởi động, bạn sẽ thấy Deforum tab trong giao diện người dùng AUTOMATIC1111.

deforum stable diffusion

Cài đặt deforum trên Windows

Làm theo hướng dẫn này để cài đặt Deforum Stable Diffusion nếu bạn chạy AUTOMATIC1111 trên Windows.

Bước 1: Mở cửa sổ command prompt (cmd) và thay đổi thư mục đến stable-diffusion-webui. Nếu bạn làm theo hướng dẫn cài đặt của trang web, chạy lệnh:

cd %userprofile%\stable-diffusion-webui

Bước 2: Cài đặt tiện ích deforum bằng cách chạy lệnh sau:

git clone https://github.com/deforum-art/deforum-for-automatic1111-webui extensions/deforum

Sau khi khởi động lại giao diện người dùng AUTOMATIC1111, bạn sẽ thấy tab Deforum.

Cài đặt deforum trên Mac

Làm theo hướng dẫn này để cài đặt Deforum Stable Diffusion nếu bạn chạy AUTOMATIC1111 trên Mac.

Bước 1: Mở Ứng dụng Terminal. Di chuyển đến thư mục cài đặt của stable-diffusion-webui. Nếu bạn làm theo hướng dẫn của trang web, chạy lệnh sau:

cd ~/stable-diffusion-webui

Bước 2: Cài đặt tiện ích deforum bằng cách chạy lệnh sau:

git clone https://github.com/deforum-art/deforum-for-automatic1111-webui extensions/deforum

Sau khi khởi động lại giao diện người dùng AUTOMATIC1111, bạn sẽ thấy tab Deforum.

Tạo video thử nghiệm

Bước này tùy chọn, nhưng nó sẽ giúp bạn có cái nhìn tổng quan về cách tìm các thiết lập mà chúng ta sẽ sử dụng.

Bước 1: Trong giao diện người dùng AUTOMATIC1111, điều hướng đến trang Deforum.

deforum stable diffusion

Bước 2: Điều hướng đến tab keyframes.

  • Bạn sẽ thấy một tab Motion ở nửa dưới của trang. Đây là nơi bạn sẽ thiết lập các thông số camera.
  • Max frames là số khung hình của video. Giá trị cao hơn sẽ tạo video dài hơn.

Bạn có thể sử dụng các giá trị mặc định.

deforum stable diffusion

Bước 3: Điều hướng đến tab Prompts. Bạn sẽ thấy một danh sách các prompts với một số đứng trước mỗi prompt. Số đó là khung mà prompt được áp dụng.

Đối với các prompts dưới đây, nó sẽ sử dụng prompt đầu tiên ở đầu video. Sau đó, nó sẽ chuyển sang sử dụng prompt thứ hai ở khung thứ 30, và prompt thứ ba ở khung thứ 60, và prompt thứ tư ở khung thứ 90.

Bạn có thể giữ nguyên các prompts như vậy.

deforum stable diffusion

Bước 4: Bấm vào nút Generate để bắt đầu tạo video.

deforum stable diffusion

Bước 5: Khi hoàn thành, bấm vào nút ở trên nút Generate để xem video.

deforum stable diffusion

deforum stable diffusion

Bạn có thể lưu video vào lưu trữ cục bộ bằng cách bấm vào ba dấu chấm dọc ở góc dưới bên phải. Hoặc bạn có thể tìm video của bạn trong thư mục đầu ra trong thư mục img2img-images.

Các thiết lập cơ bản (với ví dụ)

Trước tiên, chúng ta sẽ đi qua hai thiết lập quan trọng nhất

  • Chuyển động (2D và 3D)
  • Prompts (Các gợi ý)

Trước khi tiến hành qua các ví dụ từng bước để tạo video, việc hiểu cơ bản về khả năng của Deforum là điều quan trọng.

Xem thêm  Bí quyết chạy Stable Diffusion trên Google Colab với AUTOMATIC1111

Trong phần này, bạn sẽ thấy các ví dụ về việc thay đổi một tham số trong khi giữ nguyên các yếu tố khác. Đây là những khối xây dựng của video của bạn.

Bằng cách kết hợp chúng và bật/tắt chúng vào các thời điểm khác nhau, bạn có thể tạo ra những hiệu ứng hình ảnh tuyệt đẹp.

Thiết lập chuyển động (Motion settings)

Thiết lập chuyển động là một số tùy chọn được sử dụng nhiều nhất trong Deforum Stable Diffusion. Bằng cách đơn giản thay đổi chúng và các prompts, bạn có thể tạo một video tốt. Vì vậy, bạn nên hiểu rõ cách thiết lập chuyển động hoạt động và những gì chúng có thể làm.

Hãy tìm hiểu hai animation modes được sử dụng nhiều nhất

  • 2D – xử lý hình ảnh như là 2D và thực hiện các biến đổi khác nhau như phóng to và xoay để tạo ra ảo tưởng về chuyển động.
  • 3D – xem hình ảnh như là một khung cảnh 3D. Bạn có thể di chuyển khung nhìn của máy ảnh trong bất kỳ phép biến đổi 3D nào.

Thiết lập chuyển động 2D (2D motion setting)

2D Zoom (Phóng to hoặc thu nhỏ)

Sử dụng chức năng zoom để phóng to hoặc thu nhỏ hình ảnh. Sử dụng giá trị zoom lớn hơn 1 để phóng to và nhỏ hơn 1 để thu nhỏ.

Càng xa giá trị khỏi 1, tốc độ phóng to càng nhanh.

Mặc định, zoom tập trung vào trung tâm. Bạn có thể điều chỉnh trọng tâm bằng cách thiết lập Transform Center X và Transform Center Y. Chúng ta sẽ giải thích chúng trong một vài lượt cuộn xuống.

deforum stable diffusion

zoom 0:(0.99)

deforum stable diffusion

zoom 0:(0.1.01)

2D Angle (Góc xoay)

Sử dụng 2D Angle để xoay hình ảnh. Giá trị dương xoay hình ảnh theo chiều kim đồng hồ và giá trị âm xoay hình ảnh ngược chiều kim đồng hồ.

Giá trị lớn hơn sẽ xoay hình ảnh nhanh hơn.

Mặc định, xoay xung quanh trung tâm của hình ảnh. Bạn có thể điều chỉnh trung tâm xoay bằng cách thiết lập Transform Center X và Transform Center Y. Chúng ta sẽ giải thích chúng trong một vài lượt cuộn xuống.

deforum stable diffusion

2D angle: 2

deforum stable diffusion

2D angle: -2

2D Translation X (Dịch chuyển X)

Sử dụng Translation X để di chuyển hình ảnh theo chiều ngang. Sử dụng giá trị dương để di chuyển hình ảnh sang phải và giá trị âm để di chuyển hình ảnh sang trái.

deforum stable diffusion

2D translation X: 5

deforum stable diffusion

2D translation X: -5

2D Translation Y (Dịch chuyển Y)

Sử dụng Translation Y để di chuyển máy ảnh lên và xuống. Sử dụng giá trị dương để di chuyển hình ảnh xuống và giá trị âm để di chuyển hình ảnh lên.

deforum stable diffusion

2D translation Y: 5

deforum stable diffusion

2D translation Y: -5

2D Transform Center (Trung tâm biến đổi)

Trung tâm biến đổi là để thay đổi điểm lấy tiêu điểm của phóng to và/hoặc xoay.

Giá trị mặc định là 0.5 cho cả X và Y, đó là trung tâm của hình ảnh. (X, Y) = (0, 0) là góc trên bên trái và (1, 1) là góc dưới bên phải. Hãy xem hình vẽ dưới đây để thấy vị trí phổ biến khác.

deforum stable diffusion

Bạn có thể chỉ định các giá trị nhỏ hơn 0 hoặc lớn hơn 1. Chúng sẽ nằm bên ngoài hình ảnh.

Dưới đây là hai ví dụ về việc phóng to ở góc trên bên trái (0, 0) và góc dưới bên phải (1, 1).

deforum stable diffusion

Transform Center (0,0) with zoom

deforum stable diffusion

Transform Center (1,1) with zoom

2D Perspective flip (Phản chiếu góc nhìn)

Phản chiếu góc nhìn thực hiện các biến đổi giống như 3D để tạo ra một số hiệu ứng ấn tượng.

Bạn cần chọn Enable perspective flip để kích hoạt các tùy chọn này.

deforum stable diffusion

deforum stable diffusion

theta: 12

deforum stable diffusion

phi: 12

deforum stable diffusion

gamma: 12

Thiết lập chuyển động 3D

Chuyển động 3D là một sự lựa chọn thay thế cho chuyển động 2D. Hãy tưởng tượng bạn đang cầm một máy ảnh. Bạn có thể di chuyển và xoay máy ảnh theo ý muốn.

3D Translation X (Dịch chuyển X)

Dịch chuyển X di chuyển máy ảnh sang hai bên. Một giá trị dương di chuyển máy ảnh sang phải. Một giá trị âm di chuyển máy ảnh sang trái.

Xem thêm  Phân tích vai trò của negative prompts trong Stable Diffusion

deforum stable diffusion

3D translation X: 2

3D Translation Y (Dịch chuyển Y)

Dịch chuyển Y di chuyển máy ảnh lên và xuống. Sử dụng giá trị dương di chuyển máy ảnh lên. Một giá trị âm di chuyển máy ảnh xuống.

deforum stable diffusion

3D translation Y: 2

3D Translation Z (Dịch chuyển Z)

Dịch chuyển Z trong không gian 3D tương tự như phóng to trong các chuyển động 2D.

deforum stable diffusion

3D translation Z: 2

3D rotation X (Xoay X)

Xoay X xoay máy ảnh quanh trục X.

deforum stable diffusion

3D rotation X: 2

3D rotation Y (Xoay Y)

Xoay Y xoay máy ảnh quanh trục Y.

deforum stable diffusion

3D rotation Y: 2

3D rotation Z (Xoay Z)

Xoay Z xoay máy ảnh quanh trục Z.

deforum stable diffusion

3D rotation Z: 2

Motion schedule (lịch trình chuyển động)

Các thiết lập chuyển động được ghi nhận theo dạng

khung1:(giá trị1), khung2:(giá trị2), khung3:(giá trị3), …

Mỗi mục nhập bao gồm hai số: số khung hình mà nó có hiệu lực và giá trị của chuyển động. Mỗi khung hình và giá trị của mỗi mục nhập phải được phân tách bằng dấu hai chấm và giá trị phải được đặt trong dấu ngoặc đơn.

Bạn luôn cần một mục nhập cho khung hình thứ 0.

Bạn có thể có bao nhiêu mục nhập tùy ý.

Điều quan trọng cần lưu ý là khi bạn có hai mục nhập hoặc nhiều mục nhập, điều đó có nghĩa là tạo ra hiệu ứng nội suy giữa hai khung hình.

Ví dụ, công thức sau được sử dụng trong phóng to có nghĩa là tăng giá trị zoom từ 1 lên 1.02 theo từng bước trong 100 khung hình đầu tiên và giảm giá trị zoom về 1 trong 100 khung hình tiếp theo.

0:(1), 100:(1.02), 200:(1)

deforum stable diffusion

Nếu bạn muốn giá trị phóng to mới có hiệu lực bắt đầu từ khung hình thứ 100, bạn có thể viết như sau:

0:(1), 99:(1), 100:(1.02), 150:(1.02), 151:(1), 200:(1)

deforum stable diffusion

Công thức này sẽ áp dụng hiệu ứng phóng to chỉ giữa khung hình 100 và 150.

Mỗi thiết lập có lịch trình chuyển động riêng của nó.

  • Phóng to (Zoom): 0:(1)
  • Góc xoay (Angle): 0:(0)
  • Trung tâm biến đổi X (Transform Center X): 0:(0.5)
  • Trung tâm biến đổi Y (Transform Center Y): 0:(1)
  • Dịch chuyển X (Translate X): 0:(0)
  • Dịch chuyển Y (Translate Y): 0:(5), 60:(0)

deforum stable diffusion

Mẹo: không chỉ viết 180:(5). Hãy viết 0:(0), 180:(5). Mục nhập đầu tiên phải dành cho khung hình thứ 0.

Xem thêm: Cách tối ưu ánh sáng trong Stable Diffusion: 3 phương pháp đáng thử

Ví dụ từng bước

Bước 1: Tạo một hình ảnh ban đầu

Hình ảnh ban đầu là một trong những yếu tố bạn hoàn toàn kiểm soát trong video deforum stable diffusion. Nó cũng có thể xem là một trong những yếu tố quan trọng nhất vì nó thiết lập không chỉ phong cách và màu sắc cho phần còn lại của hoạt hình.

Dành thời gian để tạo một hình ảnh ban đầu tốt trong tab “txt2img”.

Trong ví dụ này, tôi sử dụng các gợi ý sau đây.

Chân dung của Henry Cavill trong vai James Bond, sòng bạc, nghệ thuật chính, chạy nước rút, cây cọ, chi tiết cao, hội hoạ kỹ thuật số, trang web ArtStation, nghệ thuật khái niệm, ánh sáng điện ảnh, tập trung sắc nét, minh hoạ, do Gaston Bussiere Alphonse Mucha tạo ra.

Và gợi ý phủ định:

Biến dạng, bị hỏng hóc.

Đặt giá trị seed thành random (-1).

Tôi sử dụng mô hình Protogen v2.2 để tạo phong cách minh họa giống như ảnh chân dung hiện thực.

deforum stable diffusion

Ghi nhớ giá trị seed (được làm nổi bật trong ảnh chụp màn hình ở trên) khi bạn thấy một hình ảnh bạn thích.

Bước 2: Tạo đoạn video đầu tiên

Nhập gợi ý vào tab Prompts. Tôi quyết định tái sử dụng prompt thứ 2 trong các prompt mặc định. Các prompt là

{
“0”: “portrait of henry cavill as james bond, casino, key art, sprinting, palm trees, highly detailed, digital painting, artstation, concept art, cinematic lighting, sharp focus, illustration, by gaston bussiere alphonse mucha –neg deformed, disfigured”,
“50”: “anthropomorphic clean cat, surrounded by fractals, epic angle and pose, symmetrical, 3d, depth of field, ruan jia and fenghua zhong”
}

Gợi ý được chuyển sang miêu tả một con mèo trong khung hình thứ 50.

deforum stable diffusion

Bây giờ chuyển đến tab Run.

  • Chọn mô hình Protogen.
  • Đặt giá trị seed thành 2020548858. Điều này cho phép bạn bắt đầu với cùng một hình ảnh mỗi lần để bạn có thể tiếp tục xây dựng trên cùng một video.
Xem thêm  Bí quyết tạo hình ảnh động vật sống động với Stable Diffusion

deforum stable diffusion

Vì hình ảnh ban đầu của tôi, James Bond đang nhìn sang trái, nên tốt hơn là có máy ảnh di chuyển sang bên phải. Chúng ta sẽ sử dụng 3D animation model.

Trong tab Keyframes,

  • Chọn chế độ 3D Animation.
  • Đặt Max frames thành 100. Điều này để tạo ra đủ số khung hình để nhìn thấy hai prompt đầu tiên.

deforum stable diffusion

Trong tab Motion ở dưới, đặt:

  • Translation X thành 0:(2). Điều này để di chuyển máy ảnh sang phải.
  • Translation Z thành 0:(1.75). Điều này để phóng to với tốc độ chậm hơn một chút.

Giữ lại các giá trị còn lại là 0:(0) để không làm gì cả.

deforum stable diffusion

Nhấn Generate để bắt đầu tạo video.

Dưới đây là video cho đến nay.

Máy ảnh đang di chuyển theo cách chúng ta mong đợi. James Bond đã chuyển đổi thành một con mèo fractal một cách mượt mà.

Cho đến nay, mọi thứ đều tốt.

Bước 3: Thêm prompt tiếp theo

Bây giờ hãy brainstorming prompt tiếp theo trong tab txt2img.

Tôi quyết định sẽ tạo một hiệu ứng chuyển đổi thành một cảnh không gian. Đây là prompt cuối cùng cho deforum.

{
“0”: “portrait of henry cavill as james bond, casino, key art, sprinting, palm trees, highly detailed, digital painting, artstation, concept art, cinematic lighting, sharp focus, illustration, by gaston bussiere alphonse mucha –neg deformed, disfigured”,
“50”: “anthropomorphic clean cat, surrounded by fractals, epic angle and pose, symmetrical, 3d, depth of field, ruan jia and fenghua zhong”,
“90”: “giant floating space station, futuristic, star war style, highly detailed, beautiful machine aesthetic, in space, galaxies, dark deep space lora:epiNoiseoffset_v2:1 –neg bad art, amateur”
}

(Tôi đã sử dụng bộ chỉnh sửa mô hình epi_noiseoffset LoRA trong prompt thứ ba. Xem hướng dẫn LoRA để biết chi tiết.)

Đặt các thông số sau đây:

  • Max frames thành 250.
  • Rotation 3D X thành 0:(0), 70:(0), 71:(0.5). Điều này thêm sự thay đổi xoay tại khung hình thứ 71.

Giữ nguyên các thiết lập còn lại. Dưới đây là các thiết lập chuyển động cuối cùng.

deforum stable diffusion

Nhấn Generate.

Chúng ta nhận được video cuối cùng.

Bạn thường sẽ dành nhiều thời gian để chỉnh sửa chuyển động và prompts để đạt được hiệu ứng chính xác mà bạn muốn.

Bạn có thể lặp lại bước này và thêm bao nhiêu prompt tùy ý.

Mẹo

  • Các prompts có chủ đề lớn hoạt động tốt hơn so với các cảnh có nhiều đối tượng nhỏ.
  • Các chi tiết nhỏ sẽ thay đổi thường xuyên. Điều này chỉ là cách làm việc của image-to-image. Do đó, các prompts có các mẫu (như fractal) hoặc các đối tượng tưởng tượng thường hoạt động tốt hơn làm các prompt thứ hai và các prompt sau đó.
  • Nếu bạn nhìn thấy các hiện tượng thừa trong quá trình chuyển đổi prompt, việc thay đổi khung của prompt một vài khung hình có thể loại bỏ các hiện tượng thừa.
  • Tạo một gif hoạt hình bằng cách sử dụng tùy chọn đầu ra Make GIF.
  • Sử dụng tùy chọn Delete Imgs trong tùy chọn đầu ra để tự động xóa các hình ảnh trung gian và chỉ giữ lại video.
  • Thêm một bản nhạc nền bằng cách sử dụng tùy chọn đầu ra Add soundtrack.

Để biết thêm thông tin chi tiết về Stable Diffusion có thể tìm hiểu thêm tại khóa học Stable Diffusion – Midjourney tại Arcline Academy hoặc có thể tham khảo thêm thông tin các khóa học khác tại đây       

Trụ sở chính: 32/19 Nghĩa Hòa, Phường 06, Q. Tân Bình, TPHCM (Nhà Thờ Nghĩa Hòa – Khu Bắc Hải)

Trụ sở miền Tây: L30-09, Đường số 43, Khu Dân cư Stella Megacity, P. Bình Thủy, Q. Bình Thủy, Tp. Cần Thơ

Hotline: 0988 363 967

Bài Viết Liên Quan

Comments are closed.