ICCV 2025 | 擴(kuò)散模型生成手寫(xiě)體文本行的首次實(shí)戰(zhàn),效果驚艷還開(kāi)源
本文中,來(lái)自華南理工大學(xué)、MiroMind AI、新加坡國(guó)立大學(xué)以及琶洲實(shí)驗(yàn)室的研究者們提出一種新的生成模型 Diffusion Brush,首次將擴(kuò)散模型用于文本行級(jí)的手寫(xiě)體生成,在英文、中文等多語(yǔ)言場(chǎng)景下實(shí)現(xiàn)了風(fēng)格逼真、內(nèi)容準(zhǔn)確、排版自然的文本行生成。
研究背景
AI 會(huì)寫(xiě)字嗎?在寫(xiě)字機(jī)器人衍生換代的今天,你或許并不覺(jué)得 AI 寫(xiě)字有多么困難。
那么,如果 AI 寫(xiě)的字和你寫(xiě)的字一模一樣,你會(huì)作何感想?是迫不及待地生成一套屬于自己的字體,還是擔(dān)心簽名信息不再可靠,抑或是可惜這項(xiàng)技術(shù)沒(méi)能早點(diǎn)出現(xiàn)幫你寫(xiě)作業(yè)……
無(wú)論如何,這項(xiàng)筆跡模仿的技術(shù)的確已日臻成熟。現(xiàn)在,你只需要在紙上寫(xiě)下幾個(gè)字,AI 就能準(zhǔn)確學(xué)習(xí)并模仿你的筆跡寫(xiě)出任何字。使用 AI 模仿手寫(xiě)文本,不僅能真實(shí)再現(xiàn)書(shū)寫(xiě)者風(fēng)格,輕松創(chuàng)造屬于用戶(hù)個(gè)人的字體庫(kù),也在字體設(shè)計(jì)、筆跡驗(yàn)證等諸多領(lǐng)域具有廣闊的應(yīng)用前景。今天要介紹的是 DiffBrush,這是一個(gè)全新的擴(kuò)散模型,能夠輕松生成逼真的手寫(xiě)體文本行。

此前,相關(guān)研究團(tuán)隊(duì)已接連發(fā)表「SDT」(CVPR 2023) 和「One-DM」 (ECCV 2024) 兩項(xiàng)與手寫(xiě)文本風(fēng)格化生成相關(guān)的研究成果,機(jī)器之心均進(jìn)行了相關(guān)報(bào)道。其中「One-DM」僅憑單張手寫(xiě)樣本便能生成與樣本風(fēng)格相似度很高的任意文本。
然而,現(xiàn)有的手寫(xiě)文本生成工作普遍關(guān)注「字符級(jí)」生成,也即只生成一個(gè)單詞或是漢字,如果要生成一整段文本行,則只能將若干個(gè)字符拼接合成在一起。這就像是你在不同紙上寫(xiě)字,把每個(gè)字分別裁剪下來(lái),再組合成一行字。這種做法很容易導(dǎo)致字符不對(duì)齊,或上或下,或大或小,看起來(lái)歪歪扭扭,并不符合人類(lèi)的書(shū)寫(xiě)習(xí)慣。
此外,生成字符再合成文本行的做法使得字符間距趨于一致,然而真實(shí)筆跡的字符間距往往是富于變化的,并且這些變化也可視為書(shū)寫(xiě)者風(fēng)格的一部分。

現(xiàn)有的直接生成手寫(xiě)體文本行的方法較為有限,這些方法忽略了風(fēng)格學(xué)習(xí)和內(nèi)容學(xué)習(xí)間發(fā)生的互相干擾,且難以保證長(zhǎng)文本生成中大量字符的內(nèi)容準(zhǔn)確度,其在風(fēng)格保真度和內(nèi)容準(zhǔn)確性方面都存在不足。
經(jīng)過(guò)多方考慮和實(shí)驗(yàn)求證,研究者們提出了新穎的基于擴(kuò)散模型的手寫(xiě)體文本行生成方法 DiffBrush,能夠生成風(fēng)格逼真、內(nèi)容準(zhǔn)確、排版自然的手寫(xiě)體文本行。值得注意的是,這是擴(kuò)散模型首次被應(yīng)用于文本行生成任務(wù)。目前論文的代碼和數(shù)據(jù)已經(jīng)開(kāi)源,歡迎大家關(guān)注!

- 論文標(biāo)題:Beyond Isolated Words: Diffusion Brush for Handwritten Text-Line Generation
- 論文地址:https://arxiv.org/abs/2508.03256
- 代碼開(kāi)源:https://github.com/dailenson/DiffBrush
關(guān)鍵問(wèn)題
圍繞手寫(xiě)體文本行生成這一目標(biāo),研究者們分析了以下兩個(gè)關(guān)鍵問(wèn)題:
- 如何保證生成的文本行符合人類(lèi)書(shū)寫(xiě)習(xí)慣,即垂直方向?qū)R且字符間距存在變化?
- 如何使得生成的文本行既在字體風(fēng)格上貼近書(shū)寫(xiě)者,又能有較高的整體內(nèi)容可讀性和局部?jī)?nèi)容準(zhǔn)確性?
接下來(lái)看研究者如何解決上述問(wèn)題。
技術(shù)方案
研究動(dòng)機(jī)
研究者發(fā)現(xiàn),現(xiàn)有的手寫(xiě)體文本行生成模型的內(nèi)容學(xué)習(xí)和風(fēng)格學(xué)習(xí)之間存在干擾。例如,最小化內(nèi)容識(shí)別損失函數(shù)促使模型生成更容易被 OCR 識(shí)別的「標(biāo)準(zhǔn)」字形,然而這會(huì)影響其對(duì)真實(shí)風(fēng)格的提取,也即模型為了生成的內(nèi)容更準(zhǔn)確,可能會(huì)使生成的風(fēng)格不那么準(zhǔn)確。
另一方面,研究者發(fā)現(xiàn)應(yīng)用于文本行級(jí)的方法優(yōu)先考慮全局準(zhǔn)確性,但通常無(wú)法確保字符級(jí)別的準(zhǔn)確性。
受啟發(fā)于上述觀察,研究者考慮將風(fēng)格和內(nèi)容解耦,在風(fēng)格學(xué)習(xí)過(guò)程中動(dòng)態(tài)破壞內(nèi)容信息,使其專(zhuān)注于文本風(fēng)格模式的提取;此外,研究者構(gòu)建了一個(gè)多尺度判別器,從行級(jí)和字符級(jí)提供更細(xì)粒度的內(nèi)容監(jiān)督,以兼顧內(nèi)容的全局和局部準(zhǔn)確性。
方法框架
DiffBrush 的整體框架如下圖所示,主要包括內(nèi)容解耦的風(fēng)格模塊、風(fēng)格 - 內(nèi)容融合模塊、條件擴(kuò)散生成器和多尺度內(nèi)容判別模塊。
首先,將手寫(xiě)樣本送入 CNN-Transformer 風(fēng)格編碼器,通過(guò)列向掩碼與行向掩碼分別增強(qiáng)垂直方向和水平方向的風(fēng)格學(xué)習(xí),經(jīng) Proxy-NCA 對(duì)比學(xué)習(xí)后輸出垂直增強(qiáng)特征與水平增強(qiáng)特征。
其次,內(nèi)容編碼器把目標(biāo)文本渲染成 Unifont 圖像并提取內(nèi)容特征,并在風(fēng)格 - 內(nèi)容融合模塊分別獲取上述風(fēng)格特征,進(jìn)而得到條件向量。之后,條件向量引導(dǎo)條件擴(kuò)散生成器執(zhí)行去噪過(guò)程,合成整行手寫(xiě)圖像。
最后,多尺度內(nèi)容判別器在行級(jí)監(jiān)督字符順序和基線(xiàn)連貫性,在詞級(jí)判別字符結(jié)構(gòu)真?zhèn)危罱K生成風(fēng)格一致、基線(xiàn)齊整、詞距自然的手寫(xiě)體文本行。

(a) 內(nèi)容解耦的風(fēng)格模塊。為避免內(nèi)容學(xué)習(xí)對(duì)風(fēng)格學(xué)習(xí)造成干擾,DiffBrush 提出內(nèi)容解耦的風(fēng)格模塊,讓模型僅關(guān)注字符風(fēng)格。一個(gè)較為直接的解耦方法是對(duì)圖像進(jìn)行掩碼破壞,那么如何設(shè)置掩碼比較好呢?
DiffBrush 采用「列掩碼 + 行掩碼」的內(nèi)容解耦策略,分別從垂直方向和水平方向?qū)ψ址麅?nèi)容進(jìn)行掩蔽。在破壞字符內(nèi)容的同時(shí),列掩碼保留了字高、傾斜度等信息,行掩碼保留了字符寬度、間距等信息,從而有效保真風(fēng)格。掩碼后的特征經(jīng)平均池化分別得到列向量與行向量,分別在 Proxy-NCA 損失函數(shù)的引導(dǎo)下聚集同一書(shū)寫(xiě)者的風(fēng)格特征,同時(shí)推開(kāi)不同書(shū)寫(xiě)者的風(fēng)格特征。最終由訓(xùn)練得到垂直風(fēng)格增強(qiáng)特征 S_ver 和水平風(fēng)格增強(qiáng)特征 S_hor。值得注意的是,模型在內(nèi)容掩蔽之前就已經(jīng)提取了字符的完整風(fēng)格特征。


(b) 多尺度內(nèi)容判別模塊。長(zhǎng)文本生成容易在局部字符中出現(xiàn)錯(cuò)誤,為兼顧全局字符順序與局部字符結(jié)構(gòu)的準(zhǔn)確性,DiffBrush 構(gòu)建了一個(gè)多尺度內(nèi)容判別模塊,包括行級(jí)判別模塊 D_line 和詞級(jí)判別模塊 D_word。
D_line 模塊將生成的文本行圖像與標(biāo)準(zhǔn)的內(nèi)容引導(dǎo)圖 I_line 沿通道維度進(jìn)行連接,并將結(jié)果分割成 n 個(gè)片段,每個(gè)片段約一個(gè)字符寬度,隨后使用 3D-CNN 在「段 - 高 - 寬」三維滑動(dòng),判斷每一個(gè)分割片段是否正確,從而確保字符順序與詞間空白部分準(zhǔn)確。 D_word 模塊使用了預(yù)訓(xùn)練 CNN-LSTM 注意力模塊獲取單詞位置,逐一分離出文本行中的單詞。通過(guò)對(duì)生成圖像和標(biāo)準(zhǔn)內(nèi)容引導(dǎo)圖 I_word 中對(duì)應(yīng)的單詞內(nèi)容進(jìn)行對(duì)比,來(lái)確保生成單詞的內(nèi)容準(zhǔn)確性。由于 I_line 和 I_word 都是無(wú)風(fēng)格字樣,判別模塊僅對(duì)不正確的內(nèi)容進(jìn)行懲罰,并不約束風(fēng)格,因而能夠在不削弱風(fēng)格模仿的前提下,有效降低字符錯(cuò)誤率。
(c) 風(fēng)格 - 內(nèi)容融合模塊。在得到風(fēng)格特征后,DiffBrush 并未直接將風(fēng)格與內(nèi)容分別注入擴(kuò)散網(wǎng)絡(luò),而是先將風(fēng)格和內(nèi)容進(jìn)行融合,再統(tǒng)一輸入到 U-Net 中,這里采用了與 One-DM 類(lèi)似的方法。
具體而言,內(nèi)容編碼器先將目標(biāo)文本的 Unifont 渲染圖編碼為內(nèi)容查詢(xún)矩陣 Q,在 6 層 Transformer Decoder 組成的 Blender 中,前三層以 Q 為 Query,S_ver 為 Key/Value,進(jìn)行垂直風(fēng)格融合;上述輸出作為新的 Query,S_hor 為 Key/Value,進(jìn)行水平風(fēng)格融合。最終得到的融合向量 C 引導(dǎo)后續(xù)擴(kuò)散去噪過(guò)程。

實(shí)驗(yàn)評(píng)估
定量評(píng)估
Diffrush 在英文、中文等數(shù)據(jù)集上都取得了超過(guò)現(xiàn)有方法的優(yōu)越性能。值得注意的是,在同樣使用一張參考樣本的情況下,DiffBrush 在各項(xiàng)指標(biāo)上相較于 One-DM 均有較大提升,且顯著優(yōu)于其他使用多張參考樣本的方法。


定性評(píng)估
在英文文本行生成任務(wù)中,相比之前的各種方法, DiffBrush 生成的文本行在字符傾斜度、墨跡深淺、筆畫(huà)寬度等方面更接近參考樣本。對(duì)于同樣使用了擴(kuò)散方法的 DiffusionPen 和 One-DM,紅圈部分顯示了其生成結(jié)果的缺失字符或結(jié)構(gòu)錯(cuò)誤。

而在字符結(jié)構(gòu)更復(fù)雜的中文文本行生成任務(wù)中,與 One-DM 方法相比, DiffBrush 生成的手寫(xiě)體文本行也表現(xiàn)出與參考樣本最相似的樣式,尤其在字符間距和墨水顏色方面。同時(shí) DiffBrush 能生成更加準(zhǔn)確的字符結(jié)構(gòu)。

消融實(shí)驗(yàn)
核心模塊對(duì)算法性能的影響
如下表所示,DiffBrush 的內(nèi)容解耦的風(fēng)格模塊與多尺度內(nèi)容判別模塊存在協(xié)同效應(yīng)。相較于無(wú)掩碼和隨機(jī)掩碼,論文提出的「列掩碼 + 行掩碼」的方法更佳。尤其重要的是,多尺度內(nèi)容判別模塊在不影響 HWD 風(fēng)格指標(biāo)(甚至更好)的情況下,顯著降低了字符錯(cuò)誤率。

內(nèi)容解耦風(fēng)格學(xué)習(xí)的分析
實(shí)驗(yàn)結(jié)果顯示,添加垂直風(fēng)格增強(qiáng) S_ver 或水平風(fēng)格增強(qiáng) S_hor 均可提高文本行生成的樣式質(zhì)量。其中,S_ver 增強(qiáng)了風(fēng)格模仿能力,特別是在保持單詞的垂直對(duì)齊方面;同時(shí),S_hor 也改善了風(fēng)格學(xué)習(xí),如字符水平間距。這些發(fā)現(xiàn)支持了論文作者的動(dòng)機(jī),即不同方向的內(nèi)容屏蔽策略有助于風(fēng)格學(xué)習(xí)。

直接生成文本行和組裝文本行的分析
論文應(yīng)用 DiffusionPen 中的字符拼接策略,使其他字符級(jí)生成方法能夠合成文本行。相比于這些拼接出的文本行,專(zhuān)注于文本行生成的 DiffBrush 展現(xiàn)出了較為顯著的優(yōu)越性。

總結(jié)與展望
當(dāng)數(shù)字文檔的效率與手寫(xiě)文本的溫度交織,AI 也可承載溫情。只需一行參考文字,便可生成風(fēng)格高度相似且任意指定內(nèi)容的文本行,這就是 DiffBrush。展望未來(lái),DiffBrush 在個(gè)性化字體定制、歷史筆跡復(fù)原、魯棒文本行識(shí)別器訓(xùn)練等方面具有廣闊應(yīng)用前景。




































