本公開涉及圖像處理,具體涉及一種字體生成方法、裝置、計算機設備及存儲介質。
背景技術:
1、在傳統的字體設計過程中,字體設計師需要對字體樣式進行手工繪制和數字化,并進行復雜的視覺調整,以確保字體在各種應用場景下具有良好的視覺效果和可讀性。然而,這一流程往往需要投入大量的人力、時間和專業知識,尤其是對于具有獨特文化特征的字體(如中國古代漢字),其設計和再創作更是困難重重。現有技術在字體設計領域的主要缺點表現在以下幾個方面:
2、字體設計效率低,傳統手工設計流程中涉及大量的重復性勞動,設計師需要逐個繪制和調整每個字符的形態,極大地限制了字體開發的速度。
3、字體風格的多樣性難以保持,目前市面上大量的數字化字體或標準化模板,往往趨于形式單一,缺乏創新性和文化性。
4、現有技術在智能化設計和自動調整方面的不足,雖然近年來計算機輔助設計和字體生成工具在一定程度上緩解了手動調整的需求,但這些工具仍依賴于設計師手動輸入大量參數,并缺乏針對不同字體特征的智能識別和學習能力,導致字體在不同應用場景下需要反復調整。
技術實現思路
1、有鑒于此,本公開提出了一種字體生成方法、裝置、計算機設備及存儲介質,以解決傳統字體設計過程中存在的字體效率低、風格單一和智能化不足的問題。
2、本公開第一方面實施例提出了一種字體生成方法,所述方法包括:
3、構建訓練數據集,所述訓練數據集包括同一風格的多個字體圖像;
4、針對多個字體圖像中的任意一個字體圖像,對所述字體圖像進行結構分析,得到所述字體圖像的結構特征;所述結構特征包括字體的文字、部件、筆畫和筆形;
5、對所述字體圖像進行筆觸分析,得到所述字體圖像的筆觸特征;所述筆觸特征用于表征字體線條的粗細程度、曲直程度、濃淡程度和干濕程度;
6、將所述結構特征和所述筆觸特征作為所述字體圖像的字體標簽;
7、通過多個字體圖像以及每個字體圖像的字體標簽,對初始模型進行訓練優化,得到字體生成模型;
8、通過所述字體生成模型輸出與目標文字對應的目標字體圖像。
9、本公開實施通過將字體的結構特征和筆觸特征作為字體圖像的字體標簽,通過多個字體圖像以及每個字體圖像的字體標簽,對初始模型進行訓練優化,得到字體生成模型,能夠使得字體生成過程更加精準和高效,在結構和筆觸細節上高度還原不同歷史字體風格。
10、在本公開實施例中,通過多個字體圖像以及每個字體圖像的字體標簽,對初始模型進行訓練優化,得到字體生成模型,包括:
11、在所述初始模型中識別出待微調的原始權重矩陣;
12、將低秩矩陣疊加至所述原始權重矩陣上,得到微調后的初始模型;
13、通過多個字體圖像以及每個字體圖像的字體標簽,對所述微調后的初始模型進行訓練優化,得到字體生成模型;在模型優化過程中,更新低秩矩陣的參數,保持所述原始權重矩陣的參數不變。
14、在本公開實施例中,通過所述字體生成模型輸出與目標文字對應的目標字體圖像,包括:
15、在字體生成模型生成目標字體圖像的過程中,調用邊緣控制模型生成與第一字體圖像所對應的深度圖;所述深度圖中的字體像素點關聯第一深度值,所述深度圖中的其它像素點關聯第二深度值;所述第一深度值不同于所述第二深度值;
16、根據所述深度圖中字體像素點和其他像素點之間的深度關系,對所述第一字體圖像中的字體結構進行控制,得到所述目標字體圖像。
17、在本公開實施例中,構建訓練數據集,包括:
18、獲取同一風格的多個原始圖像;所述原始圖像包括碑帖圖像和甲骨文圖像;
19、針對所述多個原始圖像中的任意一個原始圖像,對所述原始圖像進行二值化處理,得到二值化圖像;
20、對所述二值化圖像進行矢量化處理,以及按照字體對矢量化處理圖像進行圖像分割,得到多個字體圖像,每個字體圖像對應所述矢量化處理圖像中的一個字體;
21、根據與所述多個原始圖像對應的多個字體圖像,構建所述訓練數據集。
22、在本公開實施例中,在構建所述訓練數據集之后,所述方法還包括:
23、針對所述多個字體圖像中的任意一個字體圖像,對所述字體圖像進行字體結構完整性分析,得到字體結構完整性分析結果,以及對所述字體圖像進行字體清晰度分析,得到字體清晰度分析結果;
24、如果所述字體結構完整性分析結果不滿足第一預設要求,則將所述字體圖像從所述訓練數據集中剔除;
25、如果所述字體清晰度分析結果不滿足第二預設要求,則將所述字體圖像從所述訓練數據集中剔除。
26、在本公開實施例中,在通過所述字體生成模型輸出與目標文字對應的目標字體圖像之后,所述方法還包括:
27、將所述目標字體圖像與參考字體圖像進行結構對比,根據結構對比結果判斷所述目標字體圖像是否存在筆畫錯誤,如果存在則通過所述字體生成模型重新輸出與目標文字對應的第二字體圖像;
28、將所述目標字體圖像與參考字體圖像進行風格對比,根據風格對比結果判斷所述目標字體圖像與所述參考字體圖像的字體風格是否一致,如果不一致則通過所述字體生成模型重新輸出與目標文字對應的第二字體圖像。
29、在本公開實施例中,通過多個字體圖像以及每個字體圖像的字體標簽,對初始模型進行訓練優化,得到字體生成模型,包括:
30、根據多個字體圖像以及每個字體圖像的的結構特征,對初始模型進行模型訓練得到第一模型;
31、將低秩矩陣疊加至所述第一模型的原始權重矩陣上,得到第二模型;
32、根據多個字體圖像以及每個字體圖像的的筆觸特征,對所述第二模型進行模型優化得到所述字體生成模型;在模型優化過程中,更新低秩矩陣的參數,保持所述原始權重矩陣的參數不變。
33、本公開第二方面的實施例提供了一種字體生成裝置,包括:
34、訓練數據集構建模塊,用于構建訓練數據集,所述訓練數據集包括同一風格的多個字體圖像;
35、結構分析模塊,用于針對多個字體圖像中的任意一個字體圖像,對所述字體圖像進行結構分析,得到所述字體圖像的結構特征;所述結構特征包括字體的文字、部件、筆畫和筆形;
36、筆觸分析模塊,用于對所述字體圖像進行筆觸分析,得到所述字體圖像的筆觸特征;所述筆觸特征用于表征字體線條的粗細程度、曲直程度、濃淡程度和干濕程度;
37、字體標簽確定模塊,用于將所述結構特征和所述筆觸特征作為所述字體圖像的字體標簽;
38、模型訓練模塊,用于通過多個字體圖像以及每個字體圖像的字體標簽,對初始模型進行訓練優化,得到字體生成模型;
39、字體圖像輸出模塊,用于通過所述字體生成模型輸出與目標文字對應的目標字體圖像。
40、本公開第三方面的實施例提供了一種計算機設備,該計算機設備包括存儲器和處理器,所述存儲器和所述處理器之間互相通信連接,所述存儲器中存儲有計算機指令,所述處理器通過執行所述計算機指令,從而執行上述第一方面所述的字體生成方法。
41、本公開第四方面的實施例提供了一種計算機可讀存儲介質,計算機可讀存儲介質上存儲有計算機指令,所述計算機指令用于使計算機執行上述第一方面所述的字體生成方法。
42、本公開附加的方面和優點將在下面的描述中部分給出,部分將從下面的描述中變的明顯,或通過本公開的實踐了解到。