Распознавание рукописного ввода. Смотреть что такое "Распознавание рукописного ввода" в других словарях

Разработчик:

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

Простота и удобство - вот главный девиз устройств начала двадцать первого века. Что может быть лучше, чем взять стилус и написать своей рукой текст, который будет корректно распознан смартфоном? Я думаю, ничего. Именно поэтому сегодня я предлагаю поговорить об одной из таких совершенных программ для распознавания рукописного текста - PenReader .

Penreader - приложение не бесплатное, но, как мне кажется, его стоит купить из - за его некоторых неоспоримых преимуществ:

  • Поддержка русского языка
  • Поддержка всех версия Android
  • Возможность использовать PenRader в любом приложении
  • Возможность создания макросов

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

Теперь я расскажу подробнее о том, как работать с PenReader.

Работа с приложением

После установки PenReader из Google Play , нам нужно выбрать язык распознавания, зайдя в меню приложения:

Хочу обратить ваше внимание, что для установки всех языков, кроме Английского, приложению требуется скачать специальную библиотеку.dll из Интернета, а ваш оператор может взять с вам за это деньги. Так что, будьте внимательны.

После установки нужного языка первое, что нужно сделать - опробовать распознавание текста.

Чтобы начать писать текст, нужно прикоснуться к полю ввода текста. После этого, вы перейдёте непосредственно на рабочий экран приложения PenReader , на котором вы увидите само поле рисования и некоторые кнопки:

  • «Конфигурация» - нажимая на эту кнопку, вы можете переключаться между языками ввода. Учтите, что выбирать можно только из тех языков, которые отмечены как "Активные" (см. выше)
  • «Назад» - нажав на эту кнопку единожды, ваш указатель будет перемещён на один символ назад. Чтобы перейти в начало строки, нужно удерживать эту кнопку
  • «Пробел» - вставляет пробел на том месте, где находится курсор.
  • «Стереть» - нажав на эту кнопку один раз, вы удалите символ перед курсором. Чтобы удалить всю строку, нужно удерживать кнопку
  • «Дополнительно» -открывает и скрывает дополнительные кнопки:

-«Hide» - нажав на эту кнопку, Вы выйдите из рабочего экрана PenReader.

-«Alt» - Переключает режимы ввода. Всего доступна два режима: ввод букв и ввод спецсимволов

-«Верхний регистр» - Если нажать на эту кнопку, то вы введёте следующую букву в верхнем регистре. При повторном нажатии все буквы, введённые вами станут заглавными (функция, аналогичная функции клавиши Caps Lock).

Penreader поддерживает разные режимы распознавания рукописного текста. Всего их 4:

  • Слитное распознавание позволяет пользователю писать слова и даже целые предложения привычным для него образом - не отрывая руки от "листа"
  • Побуквенное распознавание позволяет распознавать только ожин символ за определённый промежуток времени. Пытаться вводить несколько букв не имеет смысла - PenReader попытается распознать их как один символ
  • Интеллектуальное распознавание позволяет корректировать результаты распознавания
    прямо в процессе письма. Например, писать букву "А" можно так:
  1. Сначала ввести символ "/"
  2. Затем ввести символ "\"
  3. А после этого поставить между ними чёрточку "-"
    В этом случае программа будет работать так: распознает ввод символа «слэш», затем исправит его на букву Л, а затем - на А.
  • Раздельное распознавание даёт программе сигнал, что каждый написанный вами штрих будет распознан как единый символ. Этот способ немного схож с Побуквенным распознаванием

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

Ниже вы видите пример побуквенного распознавания:

Настройки приложения

Некоторые пункта настроек мы уже рассмотрели выше, поэтому сейчас я расскажу только тех вещах, о которых мы ещё не говорили.

В настройках приложения PenReader есть раздел "Настройка распознавания". В него входят следующие подпункты:

Также мы можем увидеть раздел "Оформление":

  • Толщина линии - задаёт толщину линии, выводим на рабочем экране PenReader. Она может колебаться от 1 до 30 пикселей
  • Цвет линии - изменяет цвет линии на экране PenReader
  • Расположение экранной клавиатуры - изменяет расположение кнопок на рабочем экране при ландшафтной ориентации планшета
  • Прозрачность экранной клавиатуры - настраивает уровень прозрачности кнопок на экране ввода

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

В связи с дельной критикой хабрахабровцев, я кардинально переделал пост. Надеюсь, такой вариант будет оценен более положительно.

Я почти два года работаю в компании, которая занимается оцифровкой архивных и библиотечных фондов. Сканирование информации у нас поставлено на поток и в сутки мы получаем десятки тысяч графических образов, которые необходимо распознать и выгрузить заказчику. Моя задача состоит в создании конвейерной технологии для распознавания информации с графических образов.

Тестирование автоматического распознавания
Печатный текст
ABBYY FineReader является безоговорочным лидером в данном сегменте. Программы распознавания разрабатываются с уклоном на стандартную документацию компаний, которые является основными потребителями софта. Они не рассчитаны на нестандартные форматы, поэтому программы не могут дать уровень достоверности выше 80%.

При обработке библиотечных карточек десяти-двадцатилетней давности, ABBYY FineReader не может дать результат выше 60% достоверности. Смотрите скриншот ниже.

Рукописный текст
У ABBYY FineReader есть версии программы, где, после обучения, она должна распознавать текст. Суть проста – продукт представляет собой пустую нейронную сеть. Пользователю необходимо ее наполнить вручную. Если пользователь пытается распознать несколько почерков, программа не сможет выдать результат. Потратив неделю времени на обучение такого программного решения, в итоге, мы не получили положительный результат.

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

Создание технологии ручного распознавания
Далее пойдет речь о технологии, которую необходимо было создать. Был алгоритм, на реализацию которого ушло полгода. Ниже приведен порядок действий для получения распознанного текста:
  • Сканирование – потоковый сканер выполняет сам.
  • Разделение массива графических образов по признаку на подкатегории - это и все дальнейшие этапы выполняет человек. Этот этап позволяет повысить КПД ввода.
  • Проверка работы сделанной на предыдущем этапе.
  • Ввод данных. Вся информация логически разделяется на поля и заполняется частями. Каждый массив данных имеет свою специфику и свои правила ввода:
    • если информация конфиденциальная - изображение автоматически режется на части, и каждый оператор получает для ввода только часть информации;
    • при большом количестве полей - поля одной карточки делятся между несколькими операторами.
  • Проверка данных ввода. Наличие ошибок влияет на оплату труда людей, которые вводят данные.
  • Проводится ряд общих автоматизированных проверок по базе.
  • Отгрузка законченных частей массива заказчику.
Проект получил название «Центр удаленного трудоустройства» и начал набирать обороты. Первый месяц приходилось постоянно исправлять ошибки, которые вылезали при обкатке. Далее процесс наладился, и софт стал стабильно работать и выгружать готовые массивы данных.

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

Весь проект был реализован при поддержке Министерства культуры и туризма Украины, подробнее можно почитать по ссылке .

Кратко о системе
Язык программирования: PHP.
База данных: MySQL.
CMS, Framework: отсутствуют, разработка велась с нуля.
Напоследок
Для тех, кому интересно увидеть различные варианты результатов работы ABBYY FineReader, я опубликовал дополнительные скриншоты по ссылке .

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

Достаточно значимый процент деловых и офисных документов содержит рукописный текст. Согласно исследованиям , эти данные играют ключевую роль и в обязательном порядке попадают в учетные системы путем ручного ввода. Предприятия не пытаются автоматизировать эту работу, в результате, ввод данных отнимает много ресурсов и времени. Почему? Рукописный текст, также как и печатный, можно извлекать из документов, получая при этом максимальную точность. Предлагаемое решение Form Xtra Capture , как нельзя лучше, подходит для этих задач. Теперь распознавание рукописного текста, цифр, образов полностью автоматизировано.


Привычные многим программы для распознавания текста отличаются от решений по извлечению данных. И на то есть свои причины. Учетным программам нужны данные, а не редактируемые формы с различными графическими элементами (таблицы, рамки, линии, засечки и логотипы). Для автоматизации ввода требуется подготовительный этап — настройка, где пользователь указывает какую информацию извлекать, как ее обрабатывать, распознавать и экспортировать. Для более детального ознакомления с основными этапами работы (в т.ч. и настройки) системы смотрите схему работы . Мы же сосредоточимся на распознавании рукописного текста в документах, выделяя важные особенности:

  • Использование контекстной информации
  • Использование регулярных выражений

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

  • Использование псевдонимов

    Ошибки в проектировании документа могут приводить к неопределенности при ее заполнении. В результате вместо одного варианта написания появляется множество альтернативных вариантов, которые тоже являются правильными. Для примера: Харкiв , мХаркiв (точка находится в ячейке с буквой "м"), м.Харкiв (точка находится в отдельной ячейке). Более того, специфика различных регионов Украины позволяет смело предположить, что люди заполняют документы на родном языке, игнорируя требования и основной язык документа. Пример: Харьков , гХарьков , г.Харьков . Использование псевдонимов (alias) позволяет преобразовать все ответы распознавателя к единственно правильному ответу.

  • Использование скриптов (бизнес-правил)

    Скрипты применяют в качестве логического инструмента при распознавании. Они используют теории имплекации (if, else) или сценариев (use, case) для определения следующего корректного ответа или подтверждения достоверности одного или нескольких полей. Распространенной областью применения является автоматическое заполнение полей с поиском в базе данных (например, если код 00123, то имя, адрес и телефон автоматически должны быть х, у, z).

  • Алгоритмы голосования

    Достаточно часто к извлекаемому рукописному полю предъявляют повышенные требования к точности распознавания. В подобных случаях имеется возможность распознавать одно и тоже поле разными способами или движками (ABBYY FineReader Engee, CuneiForm и прочие), а после, сравнивать ответы для нахождения истины.

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

Энциклопедичный YouTube

  • 1 / 5

    Интерфейс онлайнового распознавания обычно состоит из:

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

    Распознавание рукописного ввода широко используется в КПК . Первым КПК, который был способен распознавать рукописный ввод, является Apple Newton .

    Устройства

    Серийные устройства, в которых в качестве альтернативы традиционному вводу с помощью клавиатуры использовался ввод рукописного текста появились в начале 1980-х. Это были, например, терминалы с рукописным вводом, такие как Pencept Penpad и Inforite point-of-sale terminal . С расширением рынка персональных компьютеров появились несколько коммерческих продуктов, призванных заменить клавиатуру и мышь на персональных компьютерах единственной системой, предоставляемые PenCept , CIC and others. Первым, находящимся в открытой продаже, планшетным компьютером был GRiDPad от GRiD Systems, выпущенный в сентябре 1989. Его операционная система была основана на MS-DOS .

    В начале 90-х производители аппаратного обеспечения, включая NCR , IBM и EO, выпустили планшетные компьютеры с операционной системой PenPoint, разработанной GO Corp. PenPoint использовала рукописный ввод повсюду и обеспечивала совместимость со сторонним программным обеспечением. Планшетный компьютер IBM был первым использующим ThinkPad и распознавание рукописного текста IBM. Эта система распознавания была позже портирована в Microsoft Windows for Pen Computing и IBM"s Pen для OS/2 . Ни одна из этих технологий не имела коммерческого успеха.

    Развитие электроники позволили вычислительной мощности, необходимой для распознавания рукописного ввода, умещаться в меньшие размеры, чем у планшетных компьютеров, и использовать распознавание рукописного текста в качестве средства ввода для PDA . Первым PDA , обеспечивающим письменный ввод, был Apple Newton , который продемонстрировал общественности достоинства такого рода пользовательского интерфейса. Однако устройство не было коммерчески удачным вследствие несовершенства программного обеспечения, которое должно было пытаться изучить манеру письма пользователя. После разрыва с Apple Newton , технология была портирована в Mac OS X 10.2 и более поздние в виде технологии Inkwell (Macintosh).

    Современная система распознавания рукописного текста включается в операционные системы Microsoft , используемые на планшетных компьютерах (см. Windows XP Tablet PC Edition и Windows Vista). Она основана на TDNN-классификаторе, названном «Inferno», созданном в Microsoft . Позже версия CalliGrapher, распознающего рукописных ввод программного обеспечения, используемого в Newton OS 2.0, была включена в качестве вторичного распознавателя. Новое поколение CalliGrapher в настоящее время разрабатывается для Windows Mobile корпорацией PhatWare.

    Технология распознавания рукописного ввода «третьего поколения» riteScript, разработанная корпорацией EverNote в 2000-2004, включается в ritePen and EverNote. ritePen также включает технологию, позволяющую комбинировать riteScript со встроенным распознаванием рукописного текста Windows Vista , чтобы улучшить точность распознавания каждого движка распознавания рукописного текста.

    Хотя распознавание рукописного текста - средство ввода, к которому уже привыкла общественность, оно ещё не достигло широкого распространения в настольных компьютерах и ноутбуках. Все ещё считается [ ] , что ввод с помощью клавиатуры быстрее и надежнее. Сейчас существует множество PDA, поддерживающих иногда и естественный рукописный почерк, но точность все ещё не является очень высокой, из-за чего некоторые люди находят даже простую экранную клавиатуру более эффективной.

    Офлайновое распознавание

    Этот вид распознавания считается более сложным по сравнению с онлайновым. Для офлайного распознавания требуется обучение системы распознавания человеком или готовая обучающая выборка. Подобный механизм реализован в ABBYY FineReader . Качество распознавания можно повысить, используя структурированные документы (формы). Кроме того, можно улучшить качество, уменьшив диапазон возможных вводимых символов. Применяется в сферах деятельности, где необходимо обрабатывать большое количество рукописных документов, к примеру, в страховых компаниях.

    Записную книжку с возможностью распознавать рукописный текст и выполнять простые задачи, например, для конспектирования лекций или записи формул. Приложение работает лишь на узкой прослойке устройств с особыми стилусами - планшетах Microsoft и iPad Pro. Главный редактор TJ потестировал его и пришёл к выводу, что Nebo оказалось интересным, но скорее как рабочий концепт.

    В закладки

    У меня очень плохой почерк. Я не умел красиво или хотя бы разборчиво писать ни в школе, когда я практиковался в этом ежедневно, ни сейчас, когда я пишу от руки хорошо если пару строк в неделю - на столе лежит ежедневник для записей «Не забыть бы» и зарисовок.

    Не могу сказать, что я страдаю от своего почерка: в конце концов, по работе и в личной жизни я в 99% случаев использую клавиатуру, реальную или виртуальную. Кнопки не требуют от меня аккуратно выводить дуги у букв «з» и «ш», чтобы читатели их разобрали с первого раза.

    Тем сильнее было моё удивление, когда мои каракули смог разобрать впервые встретившийся с ними алгоритм Nebo. Перечитывая спустя пару часов то, что я ввёл на экране, я и сам уже не мог понять, что там было написано - а Nebo расшифровал это в машинописный текст.

    С Nebo я столкнулся случайно, увидев трансляцию в Periscope одного из западных журналистов, почему-то посчитавшего, что это продукт Microsoft. На самом деле, в MyScript даже над Microsoft над тем, как медленно корпорация движется на рынке распознавания текста. Из крупных изданий, насколько мне известно, Nebo заметило только , да и то из-за того, что приложение выпущено для платформы Windows.

    MyScript, разработчик приложения, не самая известная компания, хотя и выпустила уже не одну технологию вокруг рукописного ввода. Одна из впечатляющих - , которая и легла в основу Nebo. Она на лету превращает вводимые с помощью активного стилуса данные в векторную графику и анализирует её, распознавая, скажем, геометрические фигуры и текст.

    Nebo умеет немного - всего лишь очень хорошо распознавать ваши каракули.

    В первые несколько недель после релиза Nebo можно скачать бесплатно, однако версия есть только для планшетов и с активным стилусом - то есть Surface и iPad Pro. Пальцем набирать текст нельзя: разработчики объясняют это тем, что у активного стилуса (вроде Apple Pencil) меньше лаг, и поэтому ввод и обработка текста удаются лучше. Кроме того, активный стилус защищает от непредумышленного рисования рукой, лежащей на экране - по-другому вводить большой объём рукописного текста не получается.

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

    Функций в Nebo немного: это скорее очень примитивная демонстрация возможностей технологии, чем реальный и необходимый для ежедневного использования продукт. В приложении можно писать от руки, редактируя текст интуитивными жестами: провёл черту по слову сверху вниз - разделил его пополам, снизу вверх - соединил два слова в одно.

    Обвёл слово - при конвертации в печатный текст оно выделится маркером. Заштриховал текст - он удалился. Можно быстро помогать программе исправлять распознанный текст, выбирая корректный вариант из списка (чаще всего он есть).

    Количество языков, которые поддерживаются Nebo, огромно: помимо стандартных английского, немецкого, французского и прочих популярных есть русский, украинский, татарский, польский и несколько вариантов китайского.

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

    Помимо текста, в Nebo можно рисовать блок-схемы и править их на лету, перемещая блоки и редактируя текст внутри. Есть и функция распознавания формул, которая в том числе позволяет решать несложные арифметические примеры.

    Разница между приложениями для iOS и Windows только в том, что в версии для Windows экспорт в Microsoft Word. В iOS экспортировать можно либо в обычный текст (тогда не сохранится графика), либо в HTML: в этом случае графика представлена в векторном виде, однако распознанные математические формулы скопировать в документ не получится - придётся делать скриншоты или сохранять весь файл в PDF.

    В целом Nebo сложно удивить человека, плотно работающего с OCR: технологии распознавания текста давно встроены в массовые продукты вроде Evernote, а для промышленного использования есть специальные программные пакеты. Однако здесь текст распознаётся на лету, и не печатный, а рукописный, и в отличие от многих продуктов - с поддержкой русского языка.

    Естественно, как продукт Nebo популярным стать не может. Уж слишком нишевая прослойка эти планшеты с активными стилусами, iPad Pro запредельно дорогой, а Microsoft Surface вообще официально в России не продаётся. Но приятно осознавать, что распознавание твоих закорючек - задача, посильная роботу, и когда-нибудь технология окажется встроена в более популярные продукты.