На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> Система распознавания рукописного текста , Реально или нет?
    Я начал заниматься системами технического зрения еще когда учился в университете. Написал несколько курсовых и диплом. Тема лдиплома: "Сегментация и классификация штрихов при распознавании рукописного текста".
    Сдал на 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
                                Нужно выделить эти стандартные элементы, (отличающиюеся большим разнообразием)
                                получить представление данного элемента в виде набора дуг, с учетом высоты строки и ширины линии.

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

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

                                  вполне возможно он и тут подойдет, но перед этим надо как то разделить слова на буквы
                                    Цитата
                                    esperanto, 3.09.04, 10:11
                                    Трансформ Фурье хорошо подходит.

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

                                    вполне возможно он и тут подойдет, но перед этим надо как то разделить слова на буквы

                                    Не думаю, что это хороший подход, таким способом можно определять стили почерка, классы, но распознавать рукописный текст с приемлемым качесвтом - нет. Главная трудность - специфические искажения, которые возникают при рукописном письме, о чем я писал выше (самопересечение линий, букв, и т.д.). Вот поэтому напрямую этот способ использовать нельзя. Другое дело, когда мы знаем траекторий написния слова, вот тогда к этой траектории можно применить он-лайн методы, в частности сравнение траекторий с использованием FFT. Но выделение траекторий очень сложная задача, для которой до сих пор нет хорошего решения, но это ИМХО самый верный и качественный путь.

                                    Один из методов сравнения траекторий здесь
                                    Сообщение отредактировано: Y-Vladimir -
                                      :wall: да искажения возникают, но отсюда не ясно что метод использывать нельзя.

                                      каковы доминирующие частоты искажений, каков спекрт.

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

                                      имхо надо проверять практикой.
                                        Характер искажений другой - это отклонения в траетории в процессе написания, из-за чего и возникают самопересечения линий и букв, на растровой матрице этого не исправишь, только на траектории, поэтому сначала нужно выделить траекторию, а потом уже можно фильтровать частотные составаляющие
                                          esperanto ,
                                          1. Не даром почти во всех языках слова разделяются пробелами. Рукописный текст проще разбивать по словам.
                                          2. Думаю, что распознавалка, встроенная в человека не мелочится на буквы... Точнее, со временем, обучившись, перестаёт мелочится, распознавая буквы. Думаю, что многие замечали это при чтении.

                                          Таким образом, самый подходящий способ для рукописной распознавалки - итеративное распознавание слов целиком.
                                          Например, слово "Интеллектуальный" имеет массу вариаций, связанных с падежами, родами и т.п.. Надеюсь, что Фурье преобразование сможет подвести нас к подмножеству слов с этим корнем. А дальше - дело техники. Естественно, что такой подход потребует коллосальной базы знаний... а, может быть, можно создать алгоритм, что-то вроде кэш-функций для слов с одинаковым корнем, который позволит связать импульсы Фурье с определёнными вариациями слова... :rolleyes:

                                          Мдя... Сюдабы примеры кода уже существующих реализаций! Да мы! Да я! Я бы тут... Ух! :lol:
                                            2. Думаю, что распознавалка, встроенная в человека не мелочится на буквы... Точнее, со временем, обучившись, перестаёт мелочится, распознавая буквы. Думаю, что многие замечали это при чтении.

                                            Скорей всего это неверно. Просто пока идет процесс накопления знаний - образ не хранится в той доли мозга которая отвечает за шаблоны соответствия зрительных образов(скорей всего хранится и накапливается, но матрица помечена как "не рабочая пока"). Когда же они туда попадают, человеку не требуется привлекать процессы, связанные с сознанием, для понимания буквы - таким образом, задумываться над буквой человеку не требуется.

                                            Первый факт так же скорей всего не дает пользы(неверен вывод по поводу пробелов).

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

                                              Добавлено в :
                                              <...Преобразование фурье в данной ситуации может как помочь так и навредить - дело почерка...>
                                              А можно поинтересоваться, к чему по вашему мнению нужно применять преобразование Фурье - к растровой матрице, к скелету, к траектории? И в каких случаях это может навредить?

                                              Добавлено в :
                                              <...2. Думаю, что распознавалка, встроенная в человека не мелочится на буквы... Точнее, со временем, обучившись, перестаёт мелочится, распознавая буквы. Думаю, что многие замечали это при чтении....>
                                              Не совсем. Человек со временем перестает распознавать окончания, он просто восстанавливает их по контексту. В доказательство этому можно привести факт, что прибыстром чтении человек не обращает внимение на некоторую несогласованность окончаний, и даже на перестановки букв в словах, из-за чего иногода нчеловек неправильно рапсознает слово, принимая его за слово, в котором набор букв сходен. Особенно это заметно при быстром чтении
                                                Цитата
                                                Y-Vladimir, 6.09.04, 14:47
                                                из-за чего иногода нчеловек неправильно рапсознает слово, принимая его за слово, в котором набор букв сходен


                                                Вот именно - мне кажется, что здесь применим один из способов контекстного моделирования марковского источника при сжатии - PPM ( Prediction by Partial Match - предсказание по частичному совпадению ) - здесь можно будет решить проблему с сокращениями ( кстати о ней никто не вспомнил ) и орфографическими ошибками. Но это уже на том этапе, когда реализовано разделение слов на буквы. А как сделать последнее - не представляю. Только представил себе все возможные помехи и искаженя - аш голова закружилась.. Воистину - без артифисиал интелидженса не обойтись.
                                                  С сокращениями лекго справиться, поместив их в словарь, а с орфографическими ошибками - сделав нечеткий поиск по словарю. Так что это не проблема в практической реализации. Разделение слов на буквы мы тоже сделали, но этот алгоритм работает в тесном взаимодействии со всеми остальными (поиск по словарю, выделение траектории, сравнение траекторий), другого и не ожидалось, т.к. разделить слово на буквы не пользуясь больше инчем однозначно невозможно. Сейчас реализуем корректное выделение траетории, что очень не просто. Со сравнением траекторий вопрос тоже решен - найден неплохой алгоритм, мало зависящий от помех и неточностей написания.
                                                  Пок мы ограничились предположением, что рукописное слово написано средним почерком и неразрывно (т.е. слитно). Случаи плохого почерка пока не рассматриваем.
                                                    Цитата
                                                    Y-Vladimir, 6.09.04, 15:29
                                                    С сокращениями лекго справиться, поместив их в словарь

                                                    Все не предусмотришь.
                                                    Например слово количество моджет быть обозначено
                                                    количество
                                                    кол-во
                                                    к-во
                                                    кол.
                                                    колич.
                                                    итд...

                                                    И еще учитывай, что вместо тире и точки могут исп. др. знаки, или не быть вообще:
                                                    колво
                                                    кол/во
                                                    кол
                                                    кво
                                                    итд...

                                                    вобщем у каждого человека может быть собственный стиль сокращений. Сиситема, наделенная интелектом без проблем распознает это слово, а вот словарь...
                                                      Цитата

                                                      А можно поинтересоваться, к чему по вашему мнению нужно применять преобразование Фурье - к растровой матрице, к скелету, к траектории? И в каких случаях это может навредить?


                                                      Я вроде сообшал что этого делать не стоит. Навредить скорей всего не может, так же как и помочь.

                                                      Но если встает вопрос какой должен быть ввод в систему распознавания, то думаю, что мозги получают растр, а вот далее??? переводят его в векторную форму и потом последовательно применяют шаблоны, а впрочем может работают со скелетом, а может и с растром (думаю, что скорей всего в векторную форму, потом в растр, а потом работают с полученым растром). Тут дело в другом - факт(по крайней мере меня когда то так учили) что мозги работают по принципу сравнивания всего с шаблонами. Распознавания слова из букв не читая слова целиком - из той же оперы. Грустно в этом факте по крайней мере одно, если мозги могут натравить кучу шаблонов на полученый образ одновременно, то комп, увы, может проделать это только последовательно . Отсюда вывод : надо или идти другим путем, или пытаться оптимизировать данный алгоритм.
                                                        Цитата
                                                        Gunnar, 6.09.04, 15:35
                                                        Все не предусмотришь.
                                                        Например слово количество моджет быть обозначено
                                                        количество
                                                        кол-во
                                                        к-во
                                                        кол.
                                                        колич.
                                                        итд...

                                                        А всего и не надо, это в принципе проблема чито техническая, вообщем мелочи это, главное это алгоритм распознавания
                                                          Имхо, нереально. У каждого человека свой подчерк
                                                            Вот, вы тут пишите невозможно, невозможно, а каждый день PocketPC текст от руки пишу слитно, не стараясь выводить буквы, а как обычно, и он меня прекрасно понимает (использую Transcriber оно MS'вское кажеться).
                                                              Возможно, но сложно. На столько сложно, что в наших форумовских условиях - невозможно!
                                                              :tong:
                                                                Цитата Kheor, 2.10.04, 22:26
                                                                Вот, вы тут пишите невозможно, невозможно, а каждый день PocketPC текст от руки пишу слитно, не стараясь выводить буквы, а как обычно, и он меня прекрасно понимает (использую Transcriber оно MS'вское кажеться).

                                                                Не удивительно... В КПК применяется on-line распознавание, которое значительно проще.
                                                                  я тут попробовал (целый день седня убил :unsure:), зацените:
                                                                  распознает только буквы (система самообучающаяся :ph34r:)
                                                                  имхо если мою прогу долго и упорно учить, то толк выйдет (прогресс уже на лицо, способна распознавать символы, которые лишь отдаленно напоминают ранее встречавшиеся)

                                                                  1. желательно буквы писать посередине
                                                                  2. буквы средних размеров (по отношению к рабочей области, пример прилагается)

                                                                  P.S. Насчет скорости можно не волноваться (ее можно оч. сильно разогнать, т.к. она написана на VB60)

                                                                  Вот:
                                                                  Прикреплённый файлПрикреплённый файлvb_ai.zip (79.22 Кбайт, скачиваний: 769)
                                                                    Попробовал...
                                                                    Судя по результатам распознавания сильно напоминает матричное сравнение или что-то основанное на этом (в том числе и НС). Это так?
                                                                    Этот метод пригоден для распознавания печатных символов. Для распознавания рукопечатных требуется огромное кол-во эталонов, для рукописных букв - едва ли подойдет вообще.

                                                                    Если не секрет, какой алгоритм использовался?
                                                                      А черт его знает как этот алгоритм называется.
                                                                      Я долго не думая просто ужимаю все до размеров 45х45 и почередно сравниваю битмап с эталонами на наличие перекрывающихся пикселов минус нехватающих.
                                                                        Цитата Y-Vladimir,4.10.04, 12:35
                                                                        Цитата Kheor, 2.10.04, 22:26
                                                                        Вот, вы тут пишите невозможно, невозможно, а каждый день PocketPC текст от руки пишу слитно, не стараясь выводить буквы, а как обычно, и он меня прекрасно понимает (использую Transcriber оно MS'вское кажеться).

                                                                        Не удивительно... В КПК применяется on-line распознавание, которое значительно проще.

                                                                        хм, а чем оно проще, если я могу сначала нарисовать одну палочку от буква А, потом написать Б, а потом дорисовать букву А и все распознается.?.
                                                                          Цитата Kheor, 8.10.04, 09:33
                                                                          хм, а чем оно проще, если я могу сначала нарисовать одну палочку от буква А, потом написать Б, а потом дорисовать букву А и все распознается.?.

                                                                          Тем, что известны точные траектории написания и время возниконовения каждой траектории. Это дает большое кол-во информации для распознавания
                                                                            Вот прога для распознавания символов, написанная DpoHro полтора года назад.
                                                                            Прикреплённый файлПрикреплённый файлword.part01.rar (146.48 Кбайт, скачиваний: 677)
                                                                              Вторая часть...
                                                                              Прикреплённый файлПрикреплённый файлword.part02.rar (75.19 Кбайт, скачиваний: 601)
                                                                                Цитата Y-Vladimir,8.10.04, 13:28
                                                                                Цитата Kheor, 8.10.04, 09:33
                                                                                хм, а чем оно проще, если я могу сначала нарисовать одну палочку от буква А, потом написать Б, а потом дорисовать букву А и все распознается.?.

                                                                                Тем, что известны точные траектории написания и время возниконовения каждой траектории. Это дает большое кол-во информации для распознавания

                                                                                то есть ты хочешгь сказать, что оно основывается на том как я пишу, а не что?
                                                                                  Я просто хочу сказать, что распознать траекторию намного проще, чем растровое изображение той же буквы. Да и при вводе на КПК нет всяких помех, лишних точек и т.д.
                                                                                    Привет!
                                                                                    Я тоже давно занимаюсь проблемой распознаванию рукописного текста в его самой сложной форме - со сканера неразрывные слова, причем русские. Считаю главной проблемой - разделение слов на буквы. Совсем недавно, буквально вчера, я добился значительных успехов в сегментации: на наримованных в Пайнте 12 примерах программа показала среднюю точность выделения букв 86,5%. Я не использую сложных преобразований и всяких нейросетей (пока).
                                                                                    Имя моего проекта - ChickReader. Ознакомиться с его "рекламой" вы можете на моем сайте http://ilya-corp.narod.ru
                                                                                    Сейчас скоро сессия и мне им заниматься особо некогда, но после сессии я за него примусь о-го-го! :)) Тема ВКР всеже ;)
                                                                                    Извините, пока я его в сеть не выложил, немного еще доделаю и exe увидят все.

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

                                                                                    P.S. Я рад, что нашел единомышленников. Надеюсь, поговорим.
                                                                                      Цитата ChickReader @ 14.12.04, 00:06
                                                                                      Привет!
                                                                                      Я тоже давно занимаюсь проблемой распознаванию рукописного текста в его самой сложной форме - со сканера неразрывные слова, причем русские. Считаю главной проблемой - разделение слов на буквы. Совсем недавно, буквально вчера, я добился значительных успехов в сегментации: на наримованных в Пайнте 12 примерах программа показала среднюю точность выделения букв 86,5%. Я не использую сложных преобразований и всяких нейросетей (пока).
                                                                                      Имя моего проекта - ChickReader. Ознакомиться с его "рекламой" вы можете на моем сайте http://ilya-corp.narod.ru
                                                                                      Сейчас скоро сессия и мне им заниматься особо некогда, но после сессии я за него примусь о-го-го! :)) Тема ВКР всеже ;)
                                                                                      Извините, пока я его в сеть не выложил, немного еще доделаю и exe увидят все.

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

                                                                                      P.S. Я рад, что нашел единомышленников. Надеюсь, поговорим.

                                                                                      привет я на данный момент имею движок распознования непосредсвенно символов на основе нейросетей+классики который неплохо работает с рукописным текстом если его предварительно сегментировать (язык visual basic 6.0(6- символов в секунду) borland c++ 5.0(3000 символов в секунду )) а ты как я понял как раз и имеешь алгоритм сегментации для рукопсного текста могли ли бы их обьеденить.
                                                                                      icq-241-110-855
                                                                                      email-mags@inbox.ru
                                                                                        archemage, а ты не мог бы сырцами поделиться? Я имею в виду - выложить их здесь на всеобщее обозрение?
                                                                                          Shaman, ты абсолютно прав, говоря о том, что человек не буквы распознает, а слова. Это все птоому, что для опзновоания слвоа при бытрсом чтнеии вниамние сосрдетоачиавестся тоькло на наачле и окноачнии, все, что посдреине, блаопоглучно прпуоксается.

                                                                                          Итого, подход распознавать побуквенно даст нам ошибки на уровне трехлетнего невундеркинда :) Он изнчалаьно непвраилен.
                                                                                            Здравствуйте. Я занимаюсь распознованием рукописного текста и достиг результатов. Уже написана демо версия программы по распознованию, которая распознает десяток слитно написаных букв(одного типа написания). Все остальные буквы не успел забить :blink: . Кому интересно могу выслать демку. Пишите на мыло vetaly@gmail.com
                                                                                            Может кто поможет превратить это в деньги. Обращался в Парагон (те кто пишут пенредер) но они воротят носом :huh:
                                                                                            Прогу писал на с++ без всяких там нейронных сетей, на мой взгляд вроде получилась хорошая вешь, если интересно помогите оценить.
                                                                                              Вы обсуждаете тему распознавания рукописных текстов, а я пишу диссертацию на эту тему. В данный момент пытаюсь разработать алгоритм разделения текста на строки и столбцы. Если кто может помочь и подбросить идею пришлите ответ на mail: kristyaha@pochta.ru
                                                                                                здравствуйте:)
                                                                                                студентка, математик
                                                                                                ищу хоть какую-то литературу по теме "автоматическое распознавание рукописного текста"
                                                                                                заранее спасибо!
                                                                                                  программа ritePen распознаёт почерк хуже чем у доктора.
                                                                                                    _DpoHro_ и Y-Vladimir
                                                                                                    Ребят пишу диплом на ету тему(распознование рукописного текста)
                                                                                                    но сил и времени не хватает если у вас че-нибудь есть
                                                                                                    помогите защититься
                                                                                                    отблагодарю фин.помощью
                                                                                                    заранее спасибо
                                                                                                    номер аски 225-797-479
                                                                                                      Давно я не заглядывал в эту ветку...

                                                                                                      Могу рассказать про положение дел на сегодня. Где-то год назад мы с DpoHro сделали определенные наработки в области распознавания рукописного текста - предобработка изображения, разбиение страницы на строки и слова, генерация гипотез разбиения каждого слова на буквы, выделение траекторий буквы и некторое другое.

                                                                                                      Потом я стал работать над смежной темой - обработка изображений, сюда входят удаление пятен, шумов, исправление угла наклона страницы, выделение текстовых блоков и блоков с картинками и т.д. Вообщем визуальное улучшение изображений плюс сегментация. Все это вылилось в некторый программный продукт. Сейчас вот опять начинаю возвращаться к распознаванию - хочется уже проверить все идеи, которые накопились за это время :)
                                                                                                        xpy, на даты сообщений посмотри. Тема давно неживая. Лучше пиши тому же Y-Vladimir'у в приват, можт отзовется.
                                                                                                          Примитивно алгоритм должен быть таким :
                                                                                                          в основу надо заложить "планшетный" алгоритм ввода рукописного текста, сравнивать с имеющимся изображением и по максимуму совпадений определять букву(слово) Я думаю что мозг поступает именно так

                                                                                                          Добавлено
                                                                                                          Y-VladimirПримитивно алгоритм должен быть таким :
                                                                                                          в основу надо заложить "планшетный" алгоритм ввода рукописного текста, сравнивать с имеющимся изображением и по максимуму совпадений определять букву(слово) Я думаю что мозг поступает именно так
                                                                                                            имхо без словаря просто не обойтись, возьмем к примеру слова типо шило и тд с сочетанием ш + и или наоборот, то не зная такого слово мы ведь могли читать как ишло
                                                                                                              Решаю следующую проблему:
                                                                                                              Из сканированного документа рукописного текста необходимо выявить следующие характеристики почерка: высота букв (средняя), интервалы между словами, наклон + наверное ещё некоторые.
                                                                                                              Как возможно это осуществить? Возможно уже есть код? Долго искал, но ничего толком не нашёл.
                                                                                                              На данный момент думал попиксельно пробегать сетку и фиксировать высоту (интервалы). С наклоном пока сложнее.
                                                                                                              Пишу на C#, но это не принципиально :)
                                                                                                                Думаю, что попиксельно пробегать это вариант, но довольно длинный, думаю, что можно придумать, что то менее прямое, и более креативное. Правда, сейчас затрудняюсь сказать, что.
                                                                                                                  Программа должна знать
                                                                                                                  ограниченный набор символов, которые могут быть в тексте.
                                                                                                                  Из множества символов программа выбирает наиболее вероятные последовательности (словарь).
                                                                                                                  0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                                                                                                  0 пользователей:


                                                                                                                  Рейтинг@Mail.ru
                                                                                                                  [ Script execution time: 0,1041 ]   [ 15 queries used ]   [ Generated: 16.06.24, 13:29 GMT ]