Модель Tensorflow для OCR
Я новичок в Tensorflow, и я пытаюсь создать модель, которая сможет выполнять OCR на моих изображениях. Я должен прочитать 9 символов (исправлено во всех изображениях), цифры и буквы. Моя модель будет похожа на эту
https://matthewearl.github.io/2016/05/06/cnn-anpr/
Мои вопросы состоят в том, должен ли я сначала обучать свою модель каждому персонажу и после комбинировать символы, чтобы получить полную представленную метку. Или я должен тренироваться на полном лейбле прямо?
Я знаю, что мне нужно перейти к модели, изображениям + меток для соответствующего изображения, каков формат этих меток, это текстовый файл, я немного запутался в этой части, поэтому любое объяснение формата меток, которые передаются модели было бы полезно? Я ценю, спасибо.
Ответы
Ответ 1
Я бы рекомендовал внимательно изучить модель OCR с конца. Вы можете попробовать OCR для внимания, которое мы использовали для расшифровки имен улиц https://github.com/tensorflow/models/tree/master/research/attention_ocr
Я предполагаю, что это будет хорошо работать для вашего дела. Обратитесь к answer fooobar.com/questions/2414649/... за инструкциями по подготовке данных для него.
Ответ 2
Есть несколько способов справиться с этим (следующий список не является исчерпывающим).
1) Первый - это классификация слов непосредственно из вашего изображения. Если ваш словарный запас из 9 символов ограничен, вы можете обучить классификатор слов. Затем вы можете сверлить этот классификатор с вашим изображением и выбрать слово с наивысшей вероятностью.
2) Второй вариант состоит в том, чтобы обучить классификатор символов, найти все символы в вашем изображении и найти наиболее вероятную строку с 9 символами, которые вы ищете.
3) Третий вариант - подготовить текстовый детектор, найти все возможные текстовые поля. Затем прочитайте все текстовые поля с помощью модели, основанной на последовательности, и выберите наиболее вероятное решение, соответствующее вашим ограничениям. Простая модель на основе последовательностей представлена в следующем документе: http://ai.stanford.edu/~ang/papers/ICPR12-TextRecognitionConvNeuralNets.pdf. Другие модели, основанные на последовательностях, могут быть основаны на HMM, временной классификации подключений, моделях, ориентированных на внимание, и т.д.
4) Четвертый вариант - это ориентированные на внимание модели, которые работают от конца до конца, чтобы сначала найти текст, а затем вывести символы один за другим.
Обратите внимание, что этот список не является исчерпывающим, может быть много разных способов решения этой проблемы. Другие варианты могут даже использовать сторонние решения, такие как Abbyy или Tesseract, чтобы помочь решить вашу проблему.