Создание .traineddata для Tesseract 4
{* Примечание. После установки tesseract откройте cmd и выполните следующие действия.}
Шаг 1:
Сделайте коробочные файлы для изображений, которые мы хотим обучить
Синтаксис:
tesseract [langname].[fontname].[expN].[file-extension] [langname].[fontname].[expN] batch.nochop makebox
Например:
tesseract own.arial.exp0.jpg own.arial.exp0 batch.nochop makebox
{* Примечание. После создания файлов блоков мы должны изменить или изменить неправильно идентифицированные символы в файлах блоков.}
Шаг 2:
Создать файл .tr (составной файл изображения и файл коробки)
Синтаксис:
tesseract [langname].[fontname].[expN].[file-extension] [langname].[fontname].[expN] box.train
Например:
tesseract own.arial.exp0.jpg own.arial.exp0 box.train
шаг 3:
Извлеките кодировку из файлов коробок (для этой команды выводится файл unicharset)
Синтаксис:
unicharset_extractor [langname].[fontname].[expN].box
Например:
unicharset_extractor own.arial.exp0.box
шаг 4:
Создайте файл font_properties на основе наших потребностей.
Синтаксис:
echo "[fontname] [italic (0 or 1)] [bold (0 or 1)] [monospace (0 or 1)] [serif (0 or 1)] [fraktur (0 or 1)]" > font_properties
Например:
echo "arial 0 0 1 0 0" > font_properties
Шаг 5:
Обучение данных.
Синтаксис:
mftraining -F font_properties -U unicharset -O [langname].unicharset [langname].[fontname].[expN].tr
Например:
mftraining -F font_properties -U unicharset -O own.unicharset own.arial.exp0.tr
Шаг 6:
Синтаксис:
cntraining [langname].[fontname].[expN].tr
Например:
cntraining own.arial.exp0.tr
{* Примечание. После шага 5 и шага 6 были созданы четыре файла. (Shapetable, inttemp, pffmtable, normproto)}
Шаг 7:
Переименуйте четыре файла (shapetable, inttemp, pffmtable, normproto) в ([langname] .shapetable, [langname] .inttemp, [langname] .pffmtable, [langname] .normproto)
Синтаксис:
rename filename1 filename2
Например:
rename shapetable own.shapetable
rename inttemp own.inttemp
rename pffmtable own.pffmtable
rename normproto own.normproto
Шаг 8:
Создать файл .traineddata
Синтаксис:
combine_tessdata [langname].
Например:
combine_tessdata own.
{* Примечание: я буду использовать только одно изображение exp0 для создания trainingdata.Если вы хотите обучить более одного изображения, которое вы можете обучить, т.е. exp1, exp2..expn}
Ссылка