原項目地址:https://github.com/Sanster/text_renderer
我做的一些功能擴充後項目地址:https://github.com/SeventhBlue/textGenerationTool
1、如何使用
進入工程目錄,直接運行main.py,就會生成相應的數據。
2、需要根據自己需求更改的設置
2.1、parse_args.py
這個文件是運行的默認參數設置。其中最可能的需要更改的有,生成樣本的數量、生成樣本時保存的路徑、以及生成樣本時是隨機字符還是帶有語義的文本信息等。
2.2、default.yaml
這個文件比較重要。裏面涉及的都是把圖片設置成什麼樣的數據。
2.3、./data/bg/
這個文件下是文本圖片的背景顏色設置。添加什麼圖片,訓練數據就會有什麼樣的圖片。如果添加了背景圖片,但是訓練樣本圖片卻沒有對應的效果。有兩種可能。
第一種可能,在default.yaml文件中下面這個參數設置爲false
img_bg:
enable: false
fraction: 0.8
第二種可能,只生成黑白圖片。下面兩個參數設置成false了。
font_color:
enable: false
blue:
fraction: 0.1
l_boundary: [0,0,150]
h_boundary: [60,60,255]
brown:
fraction: 0.1
l_boundary: [139,70,19]
h_boundary: [160,82,43]
black:
fraction: 0.8
l_boundary: [0,0,0]
h_boundary: [10,10,10]
line_color:
enable: false
black:
fraction: 0.5
l_boundary: 0,0,0
h_boundary: 64,64,64
blue:
fraction: 0.5
l_boundary: [0,0,150]
h_boundary: [60,60,255]
2.3、./data/chars/字庫的文件存放路徑
把自己弄好的字庫放到該文件中(注意文件名字不要更改,如果更改的話,在parse_args.py中也需要做調整)。
2.4、./data/corpus/語料存放的路勁
2.5、./data/fonts/字體類型存放路徑
注意,在./data/fonts/中添加了字體,同時需要在./data/fonts_list/chn.txt文件中添加相應的路徑。
3、擴充的功能
3.1、otherFn.py
這個文件主要是檢查自己設置的字庫是否有重複字符,和./data/corpus/語料中的字符在./data/chars/chn.txt字庫中的覆蓋面。
3.2、label2std.py
把生成的文本訓練數據的label從 [00000000 筆旎望舶蠶藪絡屜髑甌] 格式生成 [00000000.jpg 952 4958 480 3229 3449 5174 745 4675 5799 3823] 格式。後面的label格式才能進行訓練,後面的數字是./data/chars/chn.txt中文字符的對應的索引。
3.3、analyzeData.py
該文件是對生成的樣本數據進行分析。