На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Страницы: (4) [1] 2 3 ... Последняя » все  ( Перейти к последнему сообщению )  
> Система распознавания рукописного текста , Реально или нет?
    Я начал заниматься системами технического зрения еще когда учился в университете. Написал несколько курсовых и диплом. Тема лдиплома: "Сегментация и классификация штрихов при распознавании рукописного текста".
    Сдал на 5 и задумался, а насколько реально довести это дело до конца? Возможно ли создать алгоритм трансляции закорючек (читаемых) в коды? Мы занимаемся этой проблемой уже второй год... Второй год ищем нужные нам алгоритмы, даже некоторые реализовали, но они показывают прямо скажем удручающие результаты...
    Есть удачный вариант побуквенной сегментации с перебором.
    Вся предварительная работа сделана. Если есть желающие присоединиться к нашему проекту милости просим! Давайте обсуждать тут, если ваши админы и модераторы не позволяют оставлять ссылки на другие ресурсы... Что ж портал огромный - славы много... Им и флаг в руки!

    Что думаете по поводу такой идеи?
      Реально. Только алгоритм должен быть обучаемым под "хозяина".
        :wacko: Векторизацию сам будешь писать. Все это очень интересно, но боюсь, что на обучение системы уйдет уйсма времени. Удачи тебе!
          ..Тут вопрос, а нужно ли это вообще, читать рукописный текст?!
          Ведь скоро руками писать не будут, так как на клавиатуре набрать быстрее.
          Нет, я, конечно, утрирую - какая-то потребность в чтении рукописи будет всегда, но с прагматической точки зрения полезней хорошая программа распознавания печатного текста, т.к. FineReader никуда не годится - он распознает не все, что видно глазом.. да и небесплатен.

          Или лучше распознавать речь - по сложности это так же как рукопись, но практическая польза выше.
            Цитата nvm,1.09.04, 14:09
            ..Тут вопрос, а нужно ли это вообще, читать рукописный текст?!
            Ведь скоро руками писать не будут, так как на клавиатуре набрать быстрее.
            Нет, я, конечно, утрирую - какая-то потребность в чтении рукописи будет всегда, но с прагматической точки зрения полезней хорошая программа распознавания печатного текста, т.к. FineReader никуда не годится - он распознает не все, что видно глазом.. да и небесплатен.

            Или лучше распознавать речь - по сложности это так же как рукопись, но практическая польза выше.

            не существует и не будет существовать программа которая распознает ВСЕ что видно глазом.


            а финериде достаточно неплох!
              Цитата
              esperanto, 1.09.04, 19:30
              не существует и не будет существовать программа которая распознает ВСЕ что видно глазом.

              Почему ты так уверен, что ИИ нереален?

              _DpoHro_,
              Теоретически при некоторых условиях это реально. Например, я лично видел программу, которая распознаёт цифры и некоторые буквы, написанные рукой.
              И вот основные условия:
              1) Буквы должны стоять отдельно. Решения этой проблемы лично я не вижу, т.к. во доброй половине подчерков случаются "слияния" букв и человек интуитивно догадывается какая это буква по слову в целом и иногда по предложению. Городить целый словарь грузно..
              2) Программа ориентирована на конкретный шрифт. К примеру, написание буквы "т" имеет множество различных вариантов.
              3) Как я сказал реализовано чтение не всех букв, т.к. для инициализации буквы програма ищет замкнутое пространство, а на нём уже находит различные "приросты". Т.е. Программа читает только те буквы ,в которых есть замкнутые элементы(да ито не со всеми буквами справляется)
              Вот так вот...
                Цитата myaut @ 31.08.04, 09:59
                :wacko: Векторизацию сам будешь писать. Все это очень интересно, но боюсь, что на обучение системы уйдет уйсма времени. Удачи тебе!

                Векторизация уже давно реализована, как и большинство других алгоритмов связанных с предобработкой изображения...
                Главное условие - это работа программы без обучения... Иначе - она станет для пользователя настоящей мукой...

                Добавлено в :
                Цитата nvm,1.09.04, 18:09
                ..Тут вопрос, а нужно ли это вообще, читать рукописный текст?!
                Ведь скоро руками писать не будут, так как на клавиатуре набрать быстрее.
                Нет, я, конечно, утрирую - какая-то потребность в чтении рукописи будет всегда, но с прагматической точки зрения полезней хорошая программа распознавания печатного текста, т.к. FineReader никуда не годится - он распознает не все, что видно глазом.. да и небесплатен.

                Или лучше распознавать речь - по сложности это так же как рукопись, но практическая польза выше.

                Я заострил внимание на распознавании рукописного текста потому, что мне это интереснее... Нашел единомышленников и мы уже год работаем над программой и алгоритмами...
                Распознавание рукописного текста будет востребованной задачей еще, по крайней мере, лет 50... Это многочисленные архивы, конспекты, рукописи, заполненные бланки (платежные поручения), существует множество форм документов заполняемых от руки (доверенности, например)...
                Даже есть спрос на разработку подобных систем, практически никто не рискует заниматься таким проектом в силу его рискованности...

                Добавлено в :
                Цитата esperanto,1.09.04, 18:30
                Цитата nvm,1.09.04, 14:09
                ..Тут вопрос, а нужно ли это вообще, читать рукописный текст?!
                Ведь скоро руками писать не будут, так как на клавиатуре набрать быстрее.
                Нет, я, конечно, утрирую - какая-то потребность в чтении рукописи будет всегда, но с прагматической точки зрения полезней хорошая программа распознавания печатного текста, т.к. FineReader никуда не годится - он распознает не все, что видно глазом.. да и небесплатен.

                Или лучше распознавать речь - по сложности это так же как рукопись, но практическая польза выше.

                не существует и не будет существовать программа которая распознает ВСЕ что видно глазом.


                а финериде достаточно неплох!

                Полностью с тобой согласен... Все, что видно глазом при помощи ПК распознавать стоит начинать с появлением Нейро-компьютеров...

                Добавлено в :
                Цитата Argentum,1.09.04, 20:31
                Цитата
                esperanto, 1.09.04, 19:30
                не существует и не будет существовать программа которая распознает ВСЕ что видно глазом.

                Почему ты так уверен, что ИИ нереален?

                _DpoHro_,
                Теоретически при некоторых условиях это реально. Например, я лично видел программу, которая распознаёт цифры и некоторые буквы, написанные рукой.
                И вот основные условия:
                1) Буквы должны стоять отдельно. Решения этой проблемы лично я не вижу, т.к. во доброй половине подчерков случаются "слияния" букв и человек интуитивно догадывается какая это буква по слову в целом и иногда по предложению. Городить целый словарь грузно..
                2) Программа ориентирована на конкретный шрифт. К примеру, написание буквы "т" имеет множество различных вариантов.
                3) Как я сказал реализовано чтение не всех букв, т.к. для инициализации буквы програма ищет замкнутое пространство, а на нём уже находит различные "приросты". Т.е. Программа читает только те буквы ,в которых есть замкнутые элементы(да ито не со всеми буквами справляется)
                Вот так вот...

                Цифры и буквы я распознавал еще в своей курсовой работе... Все решилось с использованием Байесовской теории принятия решений... Распознавание осуществлял на битовой матрице, правда с обучением (можете не веритб, но нейронные сети при этом не использовались)...
                Да, действительно, распознать текст не имея возможности выдернуть из него буквы или лигатуры - практически невозможно... У нас есть алгоритм позволяющий выделить наборы штрихов содержащие буквы или лигатуры с некоторым перебором вариантов (намного меньшим нежели в случае перебора всего слова)...
                По нашему замыслу - будет использован словарь слов языка, в котором содержится слова с вероятностью их встречаемости в языке. Если алгоритм не может сказать какое слово написано в данном фрагменте текста, то он должен выдать пользователю набор возможных вариантов для корректировки в котором должно содержаться нужное сочетание, при этом количество вариантов должно быть минимальным и содержать правильный... (это для начальной бета-версии если хотите)...
                И еще мы сейчас пробуем реализовать алгоритм выделения траектории написания в слове... Алгоритм сложный и возможно не рабочий...(это нужно проверить), однако вполне понятно, что если он будет удачным, то задачу при соблюдении некоторых условий можно свести из разряда Оффлайновых к онлайновой...
                Вот так вот... Жду Ваших замечаний...
                  Распознавание с обучением под "хозяина" - это старый подход, в принципе работает, но сильно привязан к образцу почерка, небольшое отклонение и уже ничего не распознается. Фактически это простейший алгоритм по типу того, что испоьзуется в файне (по растровой матрице), либо несложное сравнение скелета с эталоном. Сейча нужно независимое распознавание. Но эта задача существенно сложнее в практической релизации, основная сложность - отсутствие необходимиой теоретической базы.
                  Сообщение отредактировано: Y-Vladimir -
                    Цитата esperanto,1.09.04, 15:30
                    не существует и не будет существовать программа которая распознает ВСЕ что видно глазом.

                    Есть принципиальная разница: распознавать образы или выделять заранее известный сигнал на фоне помех.
                    Распознавание печатного текста - это второе, и машина обязана это делать лучше человека!

                    Добавлено в :
                    Цитата __DpoHro__,2.09.04, 05:45
                    ... Все, что видно глазом при помощи ПК распознавать стоит начинать с появлением Нейро-компьютеров...

                    Сомневаюсь, что оптимизм по поводу нейрокомпьютеров оправдан.
                    Нейронная сеть - это всего лишь частный класс алгоритмов поиска закономерностей.. но далеко не всегда лучший.

                    Добавлено в :
                    Распознавать рукопись - не только сложная идейно, но и трудоемкая задача, так как необходимо держать как минимум словарь всех слов - а лучшеучитывать контекст предложения.
                    Потому что типичный почерк даже человек не может разобрать, не анализируя смысл (невозможно однозначно распознать тарабарщину).
                      Цитата
                      Есть принципиальная разница: распознавать образы или выделять заранее известный сигнал на фоне помех.
                      Распознавание печатного текста - это второе, и машина обязана это делать лучше человека!
                      Речь идёт о распознавании рукописного текста...
                        Цитата Shaman,2.09.04, 17:57
                        Речь идёт о распознавании рукописного текста...

                        Но в связи с FineReader-ом коснулись и печатного текста - что эта задача тоже решена не идеально..
                          Имхо идеально решить - это невозможно.
                            Мне представляется, что:
                            1 разделить рукописный текст на строки
                            2 определить ширину линии пера(ручки) и высоту строки
                            3 все элементы рукописного текста соединяются между собой одним из 3-4 способов
                            Нужно выделить эти стандартные элементы, (отличающиюеся большим разнообразием)
                            получить представление данного элемента в виде набора дуг, с учетом высоты строки и ширины линии. Выделить в процессе распознавания, поскольку они зависят от конкретного почерка, а не от стандартов.
                            4 все особенности начертания букв зависят не только от почерка, но и от конкретного слова,
                            тем не менее, есть общие признаки, по котрым мы и выделяем конкретные буквы или их элементы из текста. Потом к ним пристраиваем остальное.
                            то есть анализируется набор дуг каждого элемента и пропорции относительно ширины линии и высоты строки. формируется семейство начертаний элемента. формируется семейство элементов для данного символа, а лучше для данного слова. то есть, формируется семейство начертаний данного слова. Вроде бы так. Это очень сложно?

                            Если зайти с другого конца, то как человек читает неразборчивый почерк? Сначала ищет знакомые буквы, пытаясь угадать смысл предложения, или ищет образец - точно определенное слово, букву и так далее. Потом запоминает начертание символа и производит поиск всех форм данного символа, вырабатывая устойчивый набор признаков символа. Потом то же самое для коротких слов, потом более длинных и так далее. Неопознанные символы подставляются по контексту.
                            Конечно, это нереально перенести на комп, но только в данный момент.

                            Я ничего не пропустил?
                            Сообщение отредактировано: glasspoint -
                              :huh: Мдя...
                              Цитата

                              Это очень сложно?
                              :yes:

                              Цитата
                              Если зайти с другого конца, то как человек читает неразборчивый почерк?
                              :wall:

                              Цитата
                              Конечно, это нереально перенести на комп, но только в данный момент.
                              :rolleyes:

                              Цитата
                              Я ничего не пропустил?
                              Только одну вещь. Теорию распознавания образов :yes: :) которая базируется на преобразовании Фурье (сорри, я в этом вопросе ламер, так шо звыняйтэ если ашипся :)).

                              ЗЫ: Но преобразование Фурье решает не все вопросы :( Это всего-навсего как раз тот случай с печатным текстом. Решается вопрос: жирная/слабая буква. А так же (тут я дико сомневаюсь :unsure: ) - проблема различных ориентаций (поворотов) одного и того же символа....

                              Кста, вот смотрю на свой дикий почерк и думаю: а что, если тайна распознавания тривиальнейшая штукенция, решение которой повергнет в шок своей простотой... :rolleyes: И может нах там то же преобразование Фурье?... :D
                              Сообщение отредактировано: Shaman -
                                Цитата
                                nvm, 2.09.04, 19:52
                                Есть принципиальная разница: распознавать образы или выделять заранее известный сигнал на фоне помех.
                                Распознавание печатного текста - это второе, и машина обязана это делать лучше человека!

                                При рукописном распознавании сигнал в принципе известен - линии более-менее однородной толщины. К тому же всегда нужно производить предобработку изображения, так что без выделения сигнала на фоне помех ничего не получится. Но это все чисто технические трудности... Основная задача, как распознавать контур очищенного рукописного слова

                                Добавлено в :
                                Цитата
                                glasspoint, 2.09.04, 22:16
                                Нужно выделить эти стандартные элементы, (отличающиюеся большим разнообразием)
                                получить представление данного элемента в виде набора дуг, с учетом высоты строки и ширины линии.

                                В рукописном рапсознавании так не пойдет. Это способ замечательно подходит для рукопечатного текста, где человек пишет одну букву несколькими штрихами, а вто при рукописном написании слово пишется одной непрерывной линией (может и несколькими, но это не суть важно), и в таких случаях возникают совершенно другие дефекты - наезд линий друг на друга, самопересечение линии, слипание соседних букв и их пересечение и т.д. Как пример, посмотрите, как пишется буква Ф и Ж, выделить конкретные элементы (линии, дуги) не получится, так что пока единственный хороший подход - выделение траекторий
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0677 ]   [ 15 queries used ]   [ Generated: 23.05.24, 15:38 GMT ]