Jump to content
Compvision.ru
Sign in to follow this  
Nuzhny

Распознавание печатных символов

Recommended Posts

Требуется готовая реализация с открытыми исходниками и обученной базой. Что-нибудь шрифтонезависимое. Исходные данные - вырезанные изображения символов (латиница + цифры) в хорошем качестве и достаточном разрешении. Можно (но не обязательно) и более сложный вариант - распознавание текста на странице.

Хотелось бы получить аналог такого: Neural Network for Recognition of Handwritten Digits

Есть на примете у кого-нибудь?

P.S. Самому вырезать символы и тренировать нейронку не хватает времени.

PP.S. Нейросети не обязательны. Необходимо любое готовое распознавание.

Share this post


Link to post
Share on other sites

По готовым распознавалкам наткнулся на вот эту:ANNOCR.RAR

Вряд ли что то серьезное.

Из более менее серьезных открытых OCR знаю две:

http://code.google.com/p/ocropus/

http://code.google.com/p/tesseract-ocr/

Базы рукописных аннотированных данных:

http://www.iam.unibe.ch/fki/databases/iam-handwriting-database

http://ai.stanford.edu/~btaskar/ocr/

http://www.gavo.t.u-tokyo.ac.jp/~qiao/database.html

Тут еще кое что:

http://www.codeproject.com/KB/recipes/handwriting-kda.aspx

  • Like 1

Share this post


Link to post
Share on other sites

О, спасибо за ссылки. Самым подходящим выглядит tesseract. Скомпилированная программа с базой символов распознаёт мой текст очень хорошо.

И скомпилировать удалось. Похоже, то что надо.

А есть личные впечатления от использования какой-нибудь библиотеки?

Share this post


Link to post
Share on other sites

Личных впечатлений, пока нет. Собирался использовать OCR в одном из проектов, но потом проект завял а инфы немного осталось.

Share this post


Link to post
Share on other sites

что если объекты разных масштабов? их придется нормировать каким то образом?

что если несколько объектов накладываются? применим ли метод нейронных сетей в таком случае?

Share this post


Link to post
Share on other sites
что если объекты разных масштабов? их придется нормировать каким то образом?

Я нормировал (пропорциональный scaling).

что если несколько объектов накладываются? применим ли метод нейронных сетей в таком случае?

Вот тут не подскажу.

Share this post


Link to post
Share on other sites

http://yann.lecun.com/exdb/mnist/

довольно большая база данных+ результаты работы алгоритмов.

Convolutional net, cross-entropy [elastic distortions] -0.4 победили сверточные сети.(причем никакой предобработки, как я понял)

large conv. net, unsup pretraining [elastic distortions] -0.39 -что то не очень понятное, но даже лучше)

Я нормировал (пропорциональный scaling).

что значит пропорциональный скейлинг? а поворот учитывался?

и вообще не очень понятно зачем нейронные сети, если можно сказать, что у нас будет входов бинарных входов nxn и мы можем просто посчитать сколько совпало этих входов с шаблоном, или это я рассмотрел самый простой случай, а сеть умеет что то еще, например интерполировать?

p.s. я наверно говорил про linear classifier (1-layer NN).

надо бы почитать теорию.

Share this post


Link to post
Share on other sites

У меня были символы (только цифры) без поворота. И с кучей шума: различная освещённость, затёрты, замазаны, написаны зачастую различными шрифтами (краской), на облупившейся поверхности и т.п. Свёрточные нейросети (ссылка в первом сообщении) в таких условиях отрабатывали довольно хорошо.

tesseract использовал уже для сканированных документов. Качество так себе, но мне хватило.

Share this post


Link to post
Share on other sites

http://www.cs.toronto.edu/~dmac/ShapeMatcher/index.html

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

есть проблемы

Do shock graphs represent shape holes?

No. Holes within a shape are filled in. Two shapes with different number/kind of holes would look identical to the matcher.

нейросети какие то мутные с их обучением и выбором количества слоев, но можно попробовать.

вроде говорят сверточные сети лучше всего работают.

http://www.codeproject.com/KB/library/NeuralNetRecognition.aspx#Results

тоже самое только на куде

http://www.codeproject.com/KB/graphics/GPUNN.aspx

а насчет SVM не знаете может их легче настраивать? или там тоже свои какие то проблемы с выбором ядра или как то так.

и еще кроме MNIST может есть какие то базы букв или шейпов с ответами?

Share this post


Link to post
Share on other sites

Добрый день!

Я занимаюсь анализом и распознаванием клеток крови.

На данный момент сформировал большую базу состоящую из 15 параметров описывающих объекты исследования и теперь есть необходимость всю эту базу обработать, а объекты классифицировать.

Уважаемый Smorodov, а не встречался ли вам на просторах сети открытых исходников нейронной сети обученной или готовой к обучению для распознавания различных биологических объектов (клеток)? Желательно написанную на С++

Share this post


Link to post
Share on other sites

вам без разницы какой классификатор использовать, вы сами должны его обучить на ваших примерах с 15 параметрами.

Share this post


Link to post
Share on other sites

Если хотите нейронку, то скорее всего подойдет FANN, но как сказал mrgloom, тут можно использовать любой классификатор.

ЗЫ: SVM с линейным ядром, думается, будет работать хорошо.

Можно заготовку взять отсюда http://www.compvision.ru/forum/index.php?showtopic=861

только там

params.kernel_type = CvSVM::POLY;

лучше поменять на

params.kernel_type = CvSVM::LINEAR;

Share this post


Link to post
Share on other sites

Если хотите нейронку, то скорее всего подойдет FANN, но как сказал mrgloom, тут можно использовать любой классификатор.

За SVM спасибо интересная идея.

Хотелось просто с нейронкой разобраться, я как-то начитался про нее особенно про обратное распространением ошибки, вот и хотел попробовать.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×