Как отсканированную страницу можно разделить на слова, например, проект reCaptcha?
Я хотел бы оцифровать книгу аналогично проекту reCaptcha. Есть ли уже система для ввода изображения, а затем вывода небольших изображений, обрезанных вокруг слов? Есть идеи, как это сделать?
2 ответа
Вы должны заглянуть в проект Tesseract OCR, на котором, вероятно, был основан reCaptcha. Имеет возможность выводить координаты распознанных слов. Затем вы обрезаете страницу до этих координат, и все готово.
Если вы просто хотите разделить изображение на несколько изображений по одному слову, вы можете попытаться найти ограничивающие текстовые рамки, а затем взять эти координаты для разделения. Это можно сделать, взяв гистограммы / проекции документа в горизонтальном направлении, а затем для каждой линии в вертикальном направлении. Пример алгоритма с несколькими картинками, описывающими идею, можно найти в этой статье: "Декомпозиция страницы документа с помощью метода проекции ограничивающей рамки" ( http://haralick.org/conferences/71281119.pdf). Вы можете реализовать это в OpenCV.
В качестве альтернативы, вы можете использовать Tessaract, как упомянуто beppe9000. Возможно, это поможет: получить ограничивающую рамку распознанных слов с помощью python-tesseract
Но тогда вы получаете всю сложность обучения OCR, даже если вам нужны только ограничительные рамки.