Видео смотреть бесплатно

Смотреть красивые девушки видео

Официальный сайт physbook 24/7/365

Смотреть видео бесплатно

predator 27.10.2012 17:50

Есть вопрос!Распознавание текста на чеках

Хочу написать распознавалку чеков (те которые из магазинов, банковские и т.д.). С чего стоит начать? Использовать какой-нибудь OpenCV или можно обучить tesseract, или может быть уже есть готовые решения (открытые конечно же)?

Пока попробовал tesserac'ом и ещё какими-то OCR - получается плохо.

UPD: хм... сейчас опять попробовал tesseract и впринципе неплохо получилось, есть маленькие недочеты.

UPD2:
Если кто знает адреса каких-нибудь туториалов по OpenCV - поделитесь знанием (желательно на русском конечно, но и понятные простые на английском тоже сойдут).
OpenCV нужен чтобы научиться:
1) поворачивать изображение чека горизонтально, если скан получился с наклоном.
2) возможно выделять из изображения строки, чтобы потом отдавать их tesseract'у поотдельности. Так как на чеках обычно написано неполное название продукта, то это поможет после распознавания показывать пользователю изображение отсканированной строки + результат сканирования + возможные варианты исправления (с помощью aspell) и просить ввести корректное название продукта (которое потом можно будет запомнить и не спрашивать в следующий раз или выдавать его первым).
3) Хочется ещё чтобы на сканер можно было сразу положить несколько чеков. А значит их потом надо как-то разделить.

Также, если есть люди которые могут обучить tesseract шрифту чеков - you are welcome! =)


Тэги: OCR opencv tesseract
+ 0 -
Похожие Поделиться

xoy 28.10.2012 00:22 #
+ 0 -
Классно! А не поделитесь, если что получится?

Вообще, частенько думал на эту тему, но все не решался заняться... Ее в GnuCash, запилить было-бы классно...

На счет качества, я так понимаю для стабильности требуется высокое разрешение, так как текст на чеках как правило мелкий. Разрешение принтера печатавшего, как правило низкое у фиксальников. не искаженность геометрии.
Всего этого сложно дробится от чека...

Можно попытаться сделать какую нибудь нейронную сеть и попытаться ее натаскать не на символы, а на чек в целом (если вы, например, часто покупаете в конкретном магазине). Тогда качество распознавания может повысится... Но инструментов для этого не знаю...
predator 28.10.2012 01:13 #
+ 0 -
Классно! А не поделитесь, если что получится?

Результатом конечно же поделюсь =)

Ее в GnuCash, запилить было-бы классно...

Я тоже из-за GNU Cash над этим задумался =)

На счет качества, я так понимаю для стабильности требуется высокое разрешение, так как текст на чеках как правило мелкий. Разрешение принтера печатавшего, как правило низкое у фиксальников. не искаженность геометрии.
Всего этого сложно дробится от чека...

Впринципе tesseract хорошо справляется, но путает "п" и "м" и "л". Если переобучить tesseract под конкретный шрифт, то думаю, что можно будет делать изображение с низким разрешением. А этого хочется, т.к. сканируется с качеством в 600dpi у меня слишком долго =(
xoy 28.10.2012 09:20 #
+ 0 -
Если переобучить tesseract под конкретный шрифт

1) выложите какой нибудь пример, чтобы подобрать правильный шрифт.

2) вот тут есть пример использования http://habrahabr.ru/post/126834/

3) в этом примере
1
2
3
4
int main(int argc, char* argv[]) {
tesseract::TessBaseAPI tessApi;
tessApi.Init("data", "rus");// тут data каталог в котором лежат файлы *.traineddata,
// а rus указывает какой именно из них использовать


Я скачал пакет "Russian Language Data for Tesseract"
В нем обнаружил такой файл
rus.cube.size с содержимым
1
2
3
4
5
Andale_Mono.ttf    1       2       21.9231 40.9513 8       .       34.4436 7.1077  7.1077
Andale_Mono.ttf 1 2 21.9231 40.9513 9 3 0.0000 22.1564 41.5513
Andale_Mono.ttf 1 2 21.9231 40.9513 10 8 0.0000 25.3026 41.5513
Andale_Mono.ttf 1 2 21.9231 40.9513 11 с 10.2538 23.8231 31.2974
Andale_Mono.ttf 1 2 21.9231 40.9513 12 а 10.2538 23.8231 31.2974


Вот она, настройка под конкретный шрифт...
Пока все, что удалось найти... Что нарою или пойму как пользовать, опишу...
xoy 28.10.2012 09:31 #
+ 0 -
http://locv.ru/wiki/Главная_страница - тут какая-то дока по OpenVC
xoy 28.10.2012 09:35 #
+ 0 -
поворот изображений
http://docs.opencv.org/doc/tutorials/imgproc/imgtrans/warp_affine/warp_affine.html
sensor_ua 03.11.2012 10:16 #
+ 1 -
При подготовке изображения может быть полезным imagemagick. Что-то типа
$convert in.png -colorspace Gray -normalize out.png

Смотреть видео онлайн

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн