AI

StoryDiffusion:用於長序列影像與影片生成的一致性自注意力機制

StoryDiffusion 是南開大學與字節跳動的研究專案,運用新穎的自注意力機制實現一致的長序列漫畫生成與影片創作。

Keeping this site alive takes effort — your support means everything.
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分! 無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!
StoryDiffusion:用於長序列影像與影片生成的一致性自注意力機制

StoryDiffusion 是南開大學與字節跳動的一項研究專案,針對生成式 AI 中最困難的問題之一:在長序列影像與影片中維持視覺一致性。作為一項重要的研究貢獻,它引入了一種新穎的**一致性自注意力(CSA)**機制,使擴散模型能夠生成連貫的漫畫條、動畫和影片——全部無需微調或逐序列訓練。

StoryDiffusion 所解決的核心挑戰說起來簡單但極難解決:如何生成一系列影像,讓同一個角色在每一幀中看起來完全一致?先前的擴散模型可以產生令人驚豔的單張影像,但當要求生成多格漫畫或影片片段時,角色會在幀之間微妙地改變外觀——不同的鼻子形狀、改變的服裝、轉變的背景風格。

StoryDiffusion 的 CSA 機制透過將自注意力計算擴展到整個生成影像序列(而非在每個影像內獨立計算注意力)來解決此問題。結果是一種無需訓練的方法,可與現有預訓練擴散模型配合使用,並透過滑動視窗技術擴展到任意長度的序列。

儲存庫github.com/HVision-NKU/StoryDiffusion


一致性自注意力是如何運作的?

在標準擴散模型中,每個影像是獨立生成的。自注意力在單張影像內計算像素間的關係,因此一個生成幀無法「知道」另一個生成幀。StoryDiffusion 透過修改自注意力層使其在整個序列上運作來改變這一點:

  1. 跨幀注意力:自注意力層中的鍵和值矩陣由序列中的所有幀構成,而不僅僅是目前幀。這意味著每個像素的注意力計算會考慮其他所有幀的像素。
  2. 滑動視窗擴展:對於非常長的序列(數百幀),滑動視窗方法將注意力限制在相鄰幀,平衡一致性與計算成本。
  3. 無需訓練整合:CSA 透過對注意力層進行架構修改,注入現有的預訓練擴散模型,無需額外訓練或微調。

StoryDiffusion 的主要功能有哪些?

功能描述輸出品質
漫畫條生成角色與風格一致的多格漫畫高——10+ 格仍保持角色身份
影片生成流暢幀間過渡的時間序列高——極少閃爍,外觀一致
風格一致批次共享相同藝術風格的多張影像極高——任意批次大小的風格鎖定
角色互動多個角色在單一一致場景中互動高——每個角色保持獨特身份
長序列擴展100+ 幀的序列搭配滑動視窗中高——極長長度時略有品質下降

StoryDiffusion 與其他方法比較

方法需要訓練一致性序列長度推論速度
StoryDiffusion (CSA)否(無需訓練)任意(滑動視窗)快(無需重新訓練)
微調角色模型需要,每個角色極高受限於訓練資料中等
IP-Adapter輕量微調中等任意
逐幀 SD任意
影片擴散模型需要,大規模固定長度

StoryDiffusion 的關鍵優勢在於實現了無需訓練的一致性——你可以生成從未在訓練資料中出現過的角色 20 頁漫畫,無需任何微調或額外模型訓練。

StoryDiffusion 能生成哪些類型的內容?

漫畫條生成

StoryDiffusion 擅長多格漫畫生成。使用者提供描述每格的文字提示序列,系統生成完整的漫畫條,角色在整個過程中保持身份。

虛線箭頭代表一致性自注意力連接。每格的生成都知道其他格的存在,確保巫師在每格中看起來相同。

影片生成

對於影片,StoryDiffusion 將相同的 CSA 機制擴展到時間幀上。結果是角色在影片輸出中保持一致外觀,避免了每幀獨立生成時出現的突兀身份變化。

如何安裝 StoryDiffusion

git clone https://github.com/HVision-NKU/StoryDiffusion.git
cd StoryDiffusion
pip install -r requirements.txt

生成一致漫畫條的基本用法:

python comic_generation.py \
  --prompts "年輕巫師施法" \
             "巫師召喚魔法護盾" \
             "巫師面對可怕的巨龍" \
             "巫師勝利站立" \
  --output ./comic_output \
  --style fantasy

影片生成:

python video_generation.py \
  --prompt "武士走過竹林" \
  --frames 48 \
  --output ./video_output

系統支援可設定的解析度、引導比例,以及用於平衡一致性與效能的 CSA 滑動視窗大小。

常見問題

什麼是 StoryDiffusion?它解決了什麼問題? 南開大學與字節跳動的 StoryDiffusion 解決了長序列生成中的一致性問題。它引入的一致性自注意力(CSA)可在任意長度的影像和影片序列中維持角色、風格和場景身份,無需微調。

一致性自注意力機制是如何運作的? CSA 透過同時計算整個序列的自注意力,將注意力感受野擴展到多個幀。滑動視窗方法可擴展到任意長的序列,確保角色外觀和背景風格等特徵保持一致。

StoryDiffusion 能生成完整的漫畫條嗎? 是的,它專為漫畫生成而設計,可在所有格中生成角色、背景和藝術風格一致的漫畫條,無需漫畫特定的訓練資料。

StoryDiffusion 也支援影片生成嗎? 是的,影片分支將 CSA 應用於時間幀,維持角色和場景的連貫性,具有流暢的過渡和極少的閃爍偽影。

如何安裝與執行 StoryDiffusion? 複製 GitHub 儲存庫,安裝依賴項,然後執行提供的漫畫或影片生成腳本。建議使用 8 GB+ VRAM 的 GPU。

延伸閱讀

TAG