![]() |
|
|
![]()
|
|
| cupper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 525 Регистрация: 29.11.2006 Репутация: нет Всего: 1 |
Хочу сделать программу распознавания букв (пишешь букку он ее распознает) на основе нейронных сетей. Саму НС стоит реализовывать самому, или для таких целей используются нейроимитаторы ?
И соотвественно направте в нужное русло с чего начать изучение. |
|||
|
||||
| VictorTsaregorodtsev |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 274 Регистрация: 28.7.2006 Репутация: 3 Всего: 8 |
Нейроимитатор подойдет только в случае выполнения двух условий:
1. Он умеет отдавать наружу код обученной сети на нужном языке программирования (почти все приличные нейроимитаторы это умеют, но их найти еще надо, сейчас на сидюках с подборками программ для студентов и математиков нейросетки особо не встречаются - кроме матлаба с его невизуальным нейроблоком) 2. Число пикселов в картинке не превосходит максимального числа столбцов в тех форматах данных, с которыми нейроимитатор умеет работать. С картинками нейропакеты особо не дружат, берут обычно данные в виде электронных таблиц и плоских баз данных, а предел в 255 столбцов преодолен вроде только в последнем Ёкселе (который 2007 или около). Так что проще попытаться найти реализующую нейросети библиотеку - где-нить на сурсфорже или иных помойках исходников. Начинать изучение - с нейроучебников ;) Но изложенное там - для задачи подходит не очень в том плане, что не обеспечивает инвариантности распознавания к сдвигам одной и той же буквы вправо-влево-вверх-вниз, к поворотам и более сложным искажениям ОДНОГО И ТОГО ЖЕ эталона. |
|||
|
||||
| cupper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 525 Регистрация: 29.11.2006 Репутация: нет Всего: 1 |
кстати это очень актуальная проблема, пока невстречал в книжках методики ее решения, а только упоминания о ней, возможно посоветуете какой нибуть материал по данной проблеме ? |
|||
|
||||
| VictorTsaregorodtsev |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 274 Регистрация: 28.7.2006 Репутация: 3 Всего: 8 |
cupper
Да, вообще-то, в каждом втором приличном учебнике по распознаванию изображений что-нибудь насчет этого сказано вплоть до реальных рецептов. Со смещениями, поворотами и размерами легко справляется распознавание на основе преобразования Хафа (Hough transform). Со смещениями - сдвиговой автокоррелятор, двумерная фурьюха, преобразование Радона (если не глючу) - это если результат преобразования подавать на нейросеть или любой иной алгоритм распознавания. Всякие нелинейные искажения - можно сделать искусственный генератор таких искажений и прогнать через него эталонные образы. Если генерилка случайная, то можно почти бесконечное число обучающих образов в итоге получить. Описание метода и примеры искаженных образов - в статье Simard, Steinkraus, Platt "Best practices for convolutional neural networks...", но она в сети есть в нескольких вариантах pdf-файла и небитый (с правильно отображаемыми математическими символами) из них вроде только один (это если не просто на картинки в статье смотреть, а уже реально реализовывать алгоритм). Мой опыт использования такого генератора - тоже положительный. |
|||
|
||||
| cupper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 525 Регистрация: 29.11.2006 Репутация: нет Всего: 1 |
а в каких продуктах крофе FineReader (комуникаторы не всчет) реализовано распознование букв ? может жнаете ?
|
|||
|
||||
| VictorTsaregorodtsev |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 274 Регистрация: 28.7.2006 Репутация: 3 Всего: 8 |
cupper, в западных банках, в софте для распознавания чеков. Хотя, там может в основном не буквы, а цифры. По крайней мере, в 90е годы была одна такая разработка внедрена, сейчас не знаю. Делали систему с нуля, без использования какого-то готового ядра OCR. Система была нейросетевая.
|
|||
|
||||
| cupper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 525 Регистрация: 29.11.2006 Репутация: нет Всего: 1 |
а какую книжку посоветуете именно по распознованию образов, а то начал читать полный курс по НС, но 1к+ стр. инвы по теории НС уведет меня в гремучий лес, мнебы с чегото более приблеженного к моей задачи начать
а распознование Хафа, тамже не символы а восновном прямые ? Это сообщение отредактировал(а) cupper - 25.2.2009, 14:58 |
|||
|
||||
| VictorTsaregorodtsev |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 274 Регистрация: 28.7.2006 Репутация: 3 Всего: 8 |
cupper, Хаф вполне себе работает с контурами.
Книжки... Не знаю. Давно за этим не следил. |
|||
|
||||
| shara |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 344 Регистрация: 29.6.2004 Где: печенье? Репутация: нет Всего: 2 |
cupper,
гугл знает все неплохой сайт - по теории НС а распознавание букв это не проблема когда теорию НС освоишь -------------------- с точки зрения аэродинамики шмель не может летать |
|||
|
||||
| cupper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 525 Регистрация: 29.11.2006 Репутация: нет Всего: 1 |
нехочу жаловаться но уже неделю бороздю гугл и мало чего нашел полезного :( На сайте который вы дали была была хорошая статья "Классификатор на основе нейронной сети Хемминга." Но она (и все остальные) так скупо написаны что толку от них почти ноль. Так и непонял пока как преобразование Хафа связать с распознаванием символов :( Это видно пока не для моего ума. Да и вообще чета уперся в тупик. Все что я читал про распознование символов упералось в их неизменное положение на картинке, что на мой взгляд на практике вообще неприемлемо. |
|||
|
||||
| cupper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 525 Регистрация: 29.11.2006 Репутация: нет Всего: 1 |
спрошу конкретнее:
Какие типы НС подходят для решения задачи распознования самволов (печатный, рукописных(печатноподобных)) с учетом смещения от оригинального изображения и + шум ??? |
|||
|
||||
| VictorTsaregorodtsev |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 274 Регистрация: 28.7.2006 Репутация: 3 Всего: 8 |
Повторяю конкретный ответ - нефиг универсальным алгоритмом (нейросетью) реализовывать сразу две задачи (достижение инвариантности к искажениям и собственно распознавание), если есть куча алгоритмов более лучшего решения первой задачи. Просто всегда и в любой задаче универсальный алгоритм проиграет специализированному, а уж если от универсального требовать ситуацию "лебедя, рака и щуки", то вперед... Грабли - оружие наступательное, а Вы получите сразу перевязанный ленточкой подарочный комплект граблей.
|
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |