![]() |
|
![]() ![]() ![]() |
|
KOLANICH |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 21.4.2010 Репутация: нет Всего: нет |
подскажите библиотеку для нейронных сетей, заточенную под OCR
(или чтобы можно было заточить) сейчас планирую использовать FANN можете подсказать структуру сети (количество слоёв и функции активации) изображение каждого символа немного повёрнуто |
|||
|
||||
VictorTsaregorodtsev |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 274 Регистрация: 28.7.2006 Репутация: 3 Всего: 8 |
OCR - он разный бывает ;)
Если текст предварительно не будет сегментироваться на буквы (чтобы обученная нейросеть видела только отдельную букву) - то просто нейросети не хватит, надо будет над ней надстраивать сегментатор (раз не было предварительной сегментации - надо будет сегментировать "строку" ответов сети, полученную при сдвиге рецепторного окна попиксельно слева-направо). Если изображение символа будет "повернуто" по сравнению с обучающим изображением этого символа - то опять же нейросети не хватит (вернее, не хватит реализованной в ФАННе нейросети). Надо будет или использовать сеть другой структуры, или предварительно извлекать из картинки инвариантные к повороту признаки изображения, или делать генератор искажений и с его помощью конструировать большую обучающую выборку (в которую для каждого символа будет входить достаточно много его измененных/наклоненных/искаженных/иного размера начертаний) PS. Тут мне вопросы не задавать - случайно увидел тему вверху общефорумного списка новых тем, возвращаться не планирую (раздел форума совсем не интересен, полезный для меня "выхлоп" от участия в обсуждении отсутствует). |
|||
|
||||
KOLANICH |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 21.4.2010 Репутация: нет Всего: нет |
я вот тоже подумал, что фанн не хватит ибо фанн - это многослойный перцептрон
а тут нужна свёрточная или ещё какая-нибудь оптимизированная под ocr сеть выпрямлять символы с помощью ген алгоритма как-то нехорошо это вариант на крайний случай лучше какую-нибудь сеть, опт под ocr поставить текст уже разбит на символы символы приведены к размерам 14*16 (выпрямления не произведено) |
|||
|
||||
KOLANICH |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 21.4.2010 Репутация: нет Всего: нет |
да и ещё
сеть не должна быть завязана на OpenCV |
|||
|
||||
dereyly |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 217 Регистрация: 16.6.2006 Репутация: 1 Всего: 4 |
Есть eblearn, я пробовал его собирать, но свои тесты в этой библиотеки еще не получилось прогнать. Я бы даже сказал что билиотека страдает комплексом Баумана и наверняка ее писал Онотоле.
|
|||
|
||||
KOLANICH |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 21.4.2010 Репутация: нет Всего: нет |
она требует opencv
//err всё таки не требует //это другая требует как её скачать без сабвершна как ей пользоваться и как её собрать под студией? Это сообщение отредактировал(а) KOLANICH - 24.2.2011, 20:38 |
|||
|
||||
VictorTsaregorodtsev |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 274 Регистрация: 28.7.2006 Репутация: 3 Всего: 8 |
Опа - перенесли тему из С++ного раздела в Алгоритмы. Хорошо, тогда продолжим
А кто говорил про ген.алгоритм? Просто из каждой начальной обучающей картинки символа можно нагенерировать еще кучу картинок путём поворота исходной на тот или иной угол, смещения вверх, вниз, вправо или влево, изменения размера. Можно и "нелинейно деформировать" картинку. Ну и раз текст уже порезан на символы - то можно попытаться начать с грубой силы. Обычный многослойный персептрон - чтобы получить некоторый стартовый уровень точности распознавания. И с этим эталоном можно будет сравнивать результаты более сложных сетей (например, результаты для свёрточной сети) и прочих разных методов - будет видно, есть ли выигрыш от усложнений. И всё-таки окончательно уточните слова "изображение каждого символа немного повёрнуто" из Вашего первого поста: угол поворота для символа один и тот же или каждый раз разный? Тогда однозначно всем станет понятно - можно ли брать для символа единственный эталон, или нужно заморачиваться с кучей эталонов (повернутых на разный угол изображений символа) или с обеспечением инвариантности распознавания к повороту изображения. |
|||
|
||||
KOLANICH |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 21.4.2010 Репутация: нет Всего: нет |
![]() ![]() ![]() ![]() ![]() ![]() http://img842.imageshack.us/slideshow/webp...hp?id=1phpa.png Это сообщение отредактировал(а) KOLANICH - 25.2.2011, 18:37 |
|||
|
||||
dereyly |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 217 Регистрация: 16.6.2006 Репутация: 1 Всего: 4 |
Токо через СВН можно качать, почемуто автор не сделал стабильных срезов... я вот мучаюсь с тем что в тесте на поиск лиц количество весов не совпадает в новой структуре с тестовывым файлом. (2518 на 1723). Собирается достаточно просто: берете Смак генерируете студийный проект, из указанных библиотек обязательной только ImageMagick (дополнительные: BOOST, QT, pthreads) |
|||
|
||||
KOLANICH |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 21.4.2010 Репутация: нет Всего: нет |
imageMagick (только бинарники и хедеры) весит много
многовато для проги весящей 96 килобайт и + 4 -8 мегов дллок + сеть на 2 мега против 40(или 70 - не помню) мегов - бинарники имейдж меджик (в распакованном виде) думаю, бинарники занимают большую часть мне без imageMagick надо я к тому-же я уже на gd написал выделение символов ps FANN работает плохо ибо все символы - с вероятностью 1 обучал методом грубой силы - перебрал все возможные целые значения наклона для каждого символа (есть исходник скрипта, генерящего капчу, он прикреплён) без учёта помех неточностей выделения символов, обусловленных наличием соседних символов (ибо скрипт немного подправили, части разных символов бывают на одной вертикали), и артефактов сжатия да и на конфигурации "релиз" почему-то виснет явно нужна свёрточная сеть или добавить перцептрону слоёв до 1 гига ![]() (по количеству чёрных точек детектить не получится) скачал ту свёрточную библиотеку даже построил (без имейдж меджика!!!) но к проекту не хочет подключаться : компилятор ругается 2>c:\program files\microsoft visual studio 10.0\vc\include\libidx\defines.h(43): fatal error C1083: Не удается открыть файл включение: execinfo.h: No such file or directory Это сообщение отредактировал(а) KOLANICH - 2.3.2011, 18:16 Присоединённый файл ( Кол-во скачиваний: 6 ) ![]() |
|||
|
||||
dereyly |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 217 Регистрация: 16.6.2006 Репутация: 1 Всего: 4 |
Так допишите в Additional Include dir все неообходимые пути, которые СМАК почему то не построил (1проекту допустим к eblearntools) PS там возни много еще будет =) PPS можете еще SVM попробовать не так красиво как сверточные сети, зато имеет хорошую репутацию. (алгоритмы победители паскаля (расп объектов) содержат SVM, так же краем ухом слышал что рекапчу на основе SVM победили) |
|||
|
||||
KOLANICH |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 21.4.2010 Репутация: нет Всего: нет |
нашёл ещё одну библиотеку
http://asiri.rathnayake.org/2008/03/13/pop...oxes-libraries/ , сделанную из http://www.codeproject.com/KB/library/Neur...ecognition.aspx подцепил к проекту - не компилится тогда решил сделать дллкой создал проект понапихал EXNN_API к каждому классу
компилю - не компилится http://pastebin.com/Jfp5KGHj |
|||
|
||||
KOLANICH |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 21.4.2010 Репутация: нет Всего: нет |
так что делать будем
|
|||
|
||||
Sergey_Murzinov |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 17.6.2007 Репутация: нет Всего: нет |
Ну что тема заглохла?
Вообще собрал EbLearn полностью под VS, подключился, но остались некоторые вопросы. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |