Как создать файл Traineddata для Tesseract 4.1.0 - PullRequest
1 голос
/ 07 марта 2019

Я хочу распознавать символы NumberPlate. Как подготовить tesseract-ocr для соответствующего номера в Ubuntu 16.04. Так как я не знаком с тренировками. Помогите мне, пожалуйста, создать файл с обученными данными для распознавания номерного знака.

sample Number plate for which i want to detect character

sample Number plate for which i want to detect character.

У меня есть 1000 изображений номерного знака.

Пожалуйста, посмотрите на это. Любая помощь будет признательна.

Итак, я попробовал следующие команды

tesseract [langname].[fontname].[expN].[file-extension] [langname].[fontname].[expN] batch.nochop makebox

tesseract eng.arial.plate3655.png eng.arial.plate3655 batch.nochop makebox

Но это дает ошибку.

Tesseract Open Source OCR Engine v4.1.0-rc1-56-g7fbd with Leptonica
Error, cannot read input file eng.arial.plate3655.png: No such file or directory
Error during processing.

после этого я попробовал

tesseract plate4.png eng.arial.plate4 batch.nochop makebox

это работает, но в некоторых планшетах. Теперь на шаге 2. Я получаю ошибку.

Скриншот прилагается.

Пластина 4 изображения для тренировки

Шаг 1 и дисплей Ste p2 на клемме

Файл, созданный после шага 1 и шага 2

Содержимое файла, созданного после шага 1 и шага 2

1 Ответ

2 голосов
/ 08 марта 2019

Создание .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}

Ссылка

...