我必须在一些符号(例如'?,<,'等)的图像上训练Tesseract。在docs for 4.0之后,我只是测试了这一步:
src/training/tesstrain.sh --fonts_dir /usr/share/fonts --lang eng --linedata_only \
--noextract_font_properties --langdata_dir ../langdata \
--tessdata_dir ./tessdata --output_dir ~/tesstutorial/engtrain
实际上执行以下步骤:
/usr/local/bin/text2image --fontconfig_tmpdir=/tmp/font_tmp.cGLxwSj3wP --fonts_dir=/usr/share/fonts --strip_unrenderable_words --leading=32 --char_spacing=0.0 --exposure=0 --outputbase=/tmp/eng-2019-01-12.dy8/eng.FreeMono.exp0 --max_pages=0 --font=FreeMono --text=../langdata/eng/eng.training_text
/usr/local/bin/unicharset_extractor --output_unicharset /tmp/eng-2019-01-12.dy8/eng.unicharset --norm_mode 1 /tmp/eng-2019-01-12.dy8/eng.FreeMono.exp0.box
/usr/local/bin/set_unicharset_properties -U /tmp/eng-2019-01-12.dy8/eng.unicharset -O /tmp/eng-2019-01-12.dy8/eng.unicharset -X /tmp/eng-2019-01-12.dy8/eng.xheights --script_dir=../langdata
/usr/local/bin/tesseract /tmp/eng-2019-01-12.dy8/eng.FreeMono.exp0.tif /tmp/eng-2019-01-12.dy8/eng.FreeMono.exp0 --psm 6 lstm.train
/usr/local/bin/combine_lang_model --input_unicharset /tmp/eng-2019-01-12.dy8/eng.unicharset --script_dir ../langdata --words ../langdata/eng/eng.wordlist --numbers ../langdata/eng/eng.numbers --puncs ../langdata/eng/eng.punc --output_dir /home/faizan/tesstutorial/engtrain --lang eng
因此,如果我分别运行所有这些步骤,并从第2步开始运行(因为我有tif图像),则可以使用任何GUI工具创建框文件。那就是全部吗?我的意思是我只需要将eng.traineddata
文件移动到tessdata
文件夹?还是有更多类似的步骤要遵循?
training/lstmtraining --debug_interval 100 \
--traineddata ~/tesstutorial/engtrain/eng/eng.traineddata \
--net_spec '[1,36,0,1 Ct3,3,16 Mp3,3 Lfys48 Lfx96 Lrx96 Lfx256 O1c111]' \
--model_output ~/tesstutorial/engoutput/base --learning_rate 20e-4 \
--train_listfile ~/tesstutorial/engtrain/eng.training_files.txt \
--eval_listfile ~/tesstutorial/engeval/eng.training_files.txt \
--max_iterations 5000 &>~/tesstutorial/engoutput/basetrain.log