可媲美GPT-4o的開源圖像生成框架來了!騰訊聯(lián)手InstantX解決角色一致性難題
GPT-4o帶火的漫畫風角色生成,現(xiàn)在有了開源版啦!
騰訊混元攜手InstantX團隊合作打破次元壁,開源定制化角色生成插件——InstantCharacter。
以往針對角色驅(qū)動的圖像生成方法,都存在一定的缺陷。
例如,基于適配器的方案雖然基本實現(xiàn)主體一致和文本可控,但在泛化性、姿勢變化和風格轉(zhuǎn)換的開放域角色方面仍然存在困難。基于微調(diào)則需對模型進行重新訓練,從而浪費過長的時間。更不必說,費用高昂的推理時間的微調(diào)。
而現(xiàn)在這個插件基于DiTs(Diffusion Transformers),能在保證推理效率和文本可編輯性的同時,完美實現(xiàn)角色個性化創(chuàng)作。
那么一起看看它具體是如何實現(xiàn)的?
方法介紹
現(xiàn)代 DiTs與傳統(tǒng)的UNet架構(gòu)相比,展現(xiàn)出前所未有的保真度和容量,為生成和編輯任務(wù)提供了更強大的基礎(chǔ)。基于此,InstantCharacter擴展了DiT,從而用于強泛化性和高保真的角色驅(qū)動圖像生成。
InstantCharacter的架構(gòu)圍繞兩個關(guān)鍵創(chuàng)新展開:
1.可擴展適配器 :開發(fā)了一個可擴展的適配器模塊,有效解析角色特征并與DiTs潛在空間無縫交互。2.漸進訓練策略:設(shè)計了一個漸進式三階段訓練策略,以適應(yīng)收集的多功能數(shù)據(jù)集,使角色一致性和文本可編輯性的分開訓練成為可能。
可擴展的適配器設(shè)計
傳統(tǒng)的定制適配器,例如IPAdapter或ReferenceNet,在DiT架構(gòu)中往往失效,因為它們是專為基于U-Net的模型設(shè)計的,缺乏可擴展性。
為了更好地適應(yīng)DiT模型,研究員提出了一種可擴展的full-transformer適配器,它作為角色圖像與基礎(chǔ)模型潛在生成空間之間的關(guān)鍵連接,通過增加層深度和隱藏特征尺寸實現(xiàn)可擴展性。
該適配器由三個編碼器塊組成:
1.通用視覺編碼器:首先利用預訓練的大型視覺基礎(chǔ)編碼器來提取通用角色特征,從它們的開放域識別能力中受益。
以前的方法通常依賴于CLIP,因為它對齊了視覺和文本特征。然而,雖然CLIP能夠捕捉抽象的語義信息,但它往往會丟失對維持角色一致性至關(guān)重要的詳細紋理信息。為此,研究者用SigLIP替代CLIP,SigLIP在捕捉更細粒度的角色信息方面表現(xiàn)出色。
此外,引入DINOv2作為另一個圖像編碼器來增強特征的穩(wěn)健性,減少背景或其他干擾因素導致的特征損失。
最后,通過在通道維度的拼接整合DINOv2和SigLIP特征,從而獲得更全面的開放域角色表示。
2.中間編碼器:由于SigLIP和DINOv2是在相對較低的384分辨率下預訓練和推理的,在處理高分辨率角色圖像時,通用視覺編碼器的原始輸出可能會丟失細粒度特征。為了緩解這個問題,采用雙流特征融合策略分別探索低級特征(low-level features)和區(qū)域級特征(region-level features)。
首先,直接從通用視覺編碼器的淺層提取low-level features,捕捉在更高層次中常常丟失的細節(jié)。
其次,將參考圖像分割成多個不重疊的區(qū)塊,并將每個區(qū)塊輸入視覺編碼器以獲取region-level features。
然后,這兩種不同的特征流通過專用的中間transformer編碼器進行分層整合。具體來說,每個特征路徑都由獨立的transformer編碼器單獨處理,以與高級語義特征整合。隨后,來自兩個路徑的精煉特征沿著token維度連接,從而建立一個全面的融合表示,捕捉多層次的互補信息。
3.投影頭:最后,精煉的角色特征通過投影頭投射到去噪過程,并與潛在噪聲交互。通過時間步感知的Q-former實現(xiàn)這一點,它將中間編碼器輸出作為鍵值對處理,同時通過注意力機制動態(tài)更新一組可學習的查詢向量。轉(zhuǎn)換后的查詢特征隨后通過可學習的交叉注意力層注入去噪空間。最終,適配器可以實現(xiàn)強身份保持和復雜文本驅(qū)動的靈活適應(yīng)。
訓練策略
為了有效訓練該框架,研究者首先精心構(gòu)建了一個高質(zhì)量的數(shù)據(jù)集,包含1000萬張多樣化的全身人類/角色圖像,包括用于學習角色一致性的配對圖像和用于實現(xiàn)精確文本到圖像對齊的非配對數(shù)據(jù)集。
其次,精細設(shè)計了訓練方案,以優(yōu)化角色一致性、文本可控性和視覺保真度。為了實現(xiàn)角色一致性,首先使用未配對數(shù)據(jù)進行訓練,其中角色圖像作為參考引導進行自重建,以保持結(jié)構(gòu)一致性。同時研究發(fā)現(xiàn)使用512的分辨率比1024更為高效。
在第二階段,繼續(xù)以低分辨率(512)進行訓練,但切換到配對訓練數(shù)據(jù)。為生成不同動作、姿勢和風格的角色圖像,研究者通過將角色圖像作為輸入,生成新場景中的角色。這個訓練階段有效消除了復制粘貼效應(yīng),增強了文本可控性,確保生成的圖像準確遵循文本條件。
最后一個階段涉及使用配對和非配對圖像進行高分辨率聯(lián)合訓練。團隊發(fā)現(xiàn)有限數(shù)量的高分辨率訓練迭代可以顯著提高圖像的視覺質(zhì)量和紋理。這一階段利用了高質(zhì)量圖像實現(xiàn)高保真和文本可控的角色圖像。
實驗結(jié)果
作者對基于FLUX的先進方法進行定性比較:OminiControl、EasyControl、ACE+和UNO;以及大型多模態(tài)模型GPT4o。為了評估,作者收集了一組不存在于訓練數(shù)據(jù)中的開放域角色圖像。
現(xiàn)有方法存在局限性:OminiControl和EasyControl無法保留角色身份特征,而ACE++僅在簡單場景中保持部分特征,但在面對動作導向的提示時表現(xiàn)不佳。UNO過度保持一致性,這降低了動作和背景的可編輯性。可以看到,InstantCharacter達到了與GPT4o相當?shù)慕Y(jié)果,但它不是開源的。
相比之下,InstantCharacter始終表現(xiàn)最佳。具體而言,InstantCharacter在保持精確的文本可控性的同時,實現(xiàn)了更出色的角色細節(jié)保留和高保真度,即使是針對復雜的動作提示。
InstantCharacter還可以通過引入不同的風格loras來實現(xiàn)靈活的角色風格化。如圖所示,InstantCharacter可以在吉卜力和Makoto風格之間切換,同時不影響角色一致性和文本可編輯性。然而,Jimeng和GPT4o很難靈活地保持這些風格。
本文插件代碼及項目均已開源,鼓勵更多的人積極參與相關(guān)工作探討。
論文地址:https://arxiv.org/abs/2504.12395代碼地址:https://github.com/Tencent/InstantCharacter項目地址:https://instantcharacter.github.io/