Как появилась технология распознавания текста: функция в смартфоне, благодаря которой мы забыли про ручной ввод
Первые шаги на пути «OCRизации»
Сегодня технологии распознавания символов являются неотъемлемой частью нашей действительности. Фотографируете листок с текстом, чтобы перевести его на другой язык с помощью онлайн-переводчика? Это OCR. Сканируете номер телефона, чтобы расплатиться за покупку? Тоже OCR. Получаете штраф за превышение скорости? Тут, кстати, тоже виновата OCR. Именно она обнаружила и распознала номер вашего автомобиля. Благодаря OCR человеку не приходится перепечатывать сотни и тысячи строк вручную, это вместо него делает искусственный интеллект. Технологии распознавания помогают нам быстрее проходить паспортный контроль в аэропортах, быстрее покупать билеты на электрички и поезда, заселяться в гостиницы, проходить идентификацию в банках для открытия счета, получать сим-карты. И все это для нас – данность, не более того. А вот в прошлом столетии решение проблемы автоматического ввода данных выглядело настоящим испытанием. В 1932 году, то есть почти сто лет назад, отечественный инженер В.Е. Агапов предпринял первые шаги на пути создания алгоритмов распознавания. Он разработал и представил машину, которая предназначалась для ввода цифр в счетное устройство. Задача распознавания решалась простейшим методом – путем сравнения с набором «эталонов». По сути, символу присваивалось значение той цифры, которую она визуально напоминала больше всего.
Ситуация изменилась только к концу 80-х–началу 90-х годов, и обусловлено это было двумя факторами.
- Во-первых, появились персональные компьютеры, которые обладали достаточной вычислительной мощностью для решения по-настоящему сложных задач.
- И, во-вторых, появились сканеры, с помощью которых можно было с большой скоростью вводить в компьютер неограниченное количество изображений текстов.
Тогда же в России принялись разрабатывать первые программы распознавания текста OCR (Optical Character Recognition). Причем одновременно решать эту задачу принялись в двух местах – в лаборатории искусственного интеллекта Института системного анализа Российской академии наук (ИСА РАН) и в общежитии Московского физико-технического института (МФТИ).
Приключения шахматного короля, или история про укрощение тигра
Переместимся сперва в Институт системного анализа РАН. Там разработку первой коммерческой OCR в конце 80-х возглавил Владимир Арлазаров, доктор технических наук, пионер в области искусственного интеллекта и всемирно известный ученый.
К тому моменту он уже имел колоссальный опыт в решении интеллектуальных задач, таких как разработка операционных и информационных систем, СУБД, создание шахматных программ.
На рубеже восьмого и девятого десятилетий прошлого века команда Арлазарова получила запрос от общества слепых – сделать технологию, которая позволяла бы оцифровывать книги, чтобы впоследствии переводить их на шрифт Брайля. Одновременно с этим поступил еще один заказ – от издательства «Художественная литература, занимавшегося в то время исключительно переизданием книг. Необходимо было создать OCR, с помощью которой можно было бы оцифровывать старые книги.
Поскольку в советское время для печати использовалось всего несколько гарнитур, то есть шрифтовых наборов, то и программу достаточно было обучить распознавать их ограниченное количество. Так стало возможным засунуть страницу в сканер, отсканировать ее и тут же распознать (перевести в электронный вид с возможностью редактирования), причем делать это стало возможным в любых количествах.
Программа получила название OCR Tiger, а ее продажей занялась организованная Владимиром Арлазаровым в 1993 году компания «Когнитивные технологии». Вместе с ним управление компанией осуществляла Ольга Ускова, дочь коллеги и одного из разработчиков «Каиссы Анатолия Ускова».
Расправьте клинья! Как появилась программа CuneiForm
Несколько сотрудников ИСА РАН уехали в США и организовали там компанию Cognitive Technologies Inc, которая начала разработку англоязычной программы под Windows. Так, в 1992 году и появилась на свет англоязычная программа CuneiForm. Именно на ее базе в Москве сотрудники ИСА РАН и «Когнитивных технологий» вскоре разработали многоязычную версию CuneiForm.
Система OCR Cuneiform создавалась для омнифонтового распознавания, то есть в ней не использовались знания о шрифтах. Для этого были разработаны и применены новые алгоритмы, позволившие анализировать структуру сложных страниц с несколькими шрифтами и несколькими кеглями, в том числе в пределах одной строки. Система позволяла распознавать символы различных алфавитов на основе латиницы и кириллицы для европейских языков и языков государств-участников СНГ – суммарно она «понимала 18 языков. Была реализована возможность распознавать и двуязычные тексты – например, русско-английские. Обновленная версия CuneiForm 1992-1993 годов была встроена в известнейший на тот момент графический редактор CorelDRAW.
Среднее время распознавания книжной страницы не превышало 10 секунд – это по тем меркам поразительный результат. Количество ошибок распознавания на книжной странице хорошего качества не превышало 1-2. И быстродействие, и точность обеспечивались алгоритмами распознавания.
Программа из «общаги»
Пока ученые «Когнитивных технологий» корпели над созданием OCR Tiger и CuneiForm, параллельно собственную OCR развивали в компании, которая впоследствии получила название ABBYY и стала международным гигантом. Но этому предшествовала любопытная история. Выпускник МФТИ Давид Ян совместно со своим приятелем-программистом Александром Москалевым начали работать над созданием электронного русско-английского словаря на 5 тысяч слов. К тому моменту мысль о том, что в деле освоения иностранных языков мог бы очень пригодиться компьютер, приходила Давиду Яну в голову уже не раз. А летом 1989-го Давид Ян решился сам приняться за это дело.
Бизнес-план Давида Яна был следующим: найти команду, которая возьмется за перевод на машинные носители словарной базы, а также человека для подготовки программной оболочки. Сам же Ян отводил себе роль координатора и генератора идей.
Ожидалось, что создание словаря займет несколько месяцев, но реальность оказалась иной. «Мы рассчитывали заработать на Lingvo (так мы решили назвать разработку) десять тысяч рублей – по пять тысяч на брата – и на этом разойтись. Ни я, ни Александр не собирались создавать компанию. Тем более что пять тысяч рублей по тем временам были просто фантастической суммой. В то время нам казалось, что мы стоим на пороге студенческого богатства. Реальность оказалась суровее: только в январе следующего года в словарь были внесены последние изменения, а первые три копии были проданы только в мае», – вспоминал Давид Ян.
В 1992-1993 годах BIT Software (потом была переименована в ABBYY) внедрила корректор орфографии, а затем презентовала еще одну свою знаменитую программу FineReader для распознавания электронного текста, работающую на 189 языках. Наряду с Cuneiform, FineReader, хотя и появилась на полгода позднее, является старейшей российской программой распознавания текста.
Пик противостояния
Надо сказать, что противостояние между «Когнитивными технологиями» и ABBYY, завязавшееся в начале 90-х, продлилось почти 10 лет и приобрело небывалый размах. По сути, две компании поделили между собой весь рынок.
Судьба у компаний, создавших эти две OCR – Finereader и CuneiForm, сложилась очень любопытно. ABBYY, которая к середине прошлого десятилетия превратилась в международную компанию с филиалами по всему миру, в 2022 официально ушла из России и сосредоточилась на международных проектах.
Компания «Когнитивные технологии», выпустив freeware-версию программы CuneiForm и опубликовав исходный код своей OCR, ушла от распознавания документов к созданию роботизированных систем для различных машин и комбайнов. А коллектив, который занимался непосредственно документами, принял решение засучить рукава и двигаться дальше.
Владимир, внук Арлазарова, основал собственную компанию Smart Engines, где курирует научную работу. Сейчас компания специализируется на разработке алгоритмов для распознавания документов и развивает свою собственную OCR нового поколения. На ее базе уже созданы программные продукты для распознавания удостоверяющих документов свыше 220 стран и юрисдикций, деловых документов и форм (счет-фактуры, акты, счета, справки, УПД), банковских карт и баркодов.
Новые вызовы: что умеет современная OCR?
Мощь современных отечественных систем распознавания впечатляет. Сегодня OCR-решения работают не только на компьютерах, но и на мобильных телефонах любых, в том числе самых бюджетных, моделей. Они могут распознавать не только сканы или фотографии, но и справляться с задачей распознавания текстов в видеопотоке.
В 2015 году компания Smart Engines первой показала распознавание российского паспорта в видеопотоке. Созданная учеными OCR была способна в реальном времени на обычном мобильном телефоне за 1-3 секунды извлекать данные документа. За это время система успевает распознать несколько подряд идущих кадров и выполнить межкадровую интеграцию распознанных полей документа. И все это на телефоне. Конечно, разработка позволила расширить сферы применимости OCR: теперь для точного результата не нужно сканировать документ, пользователю достаточно сделать фотографию. Стало возможным распознавать даже снимки с обычной веб-камеры.
«О том, что скоро бумажные документы исчезнут, говорят столько, сколько я работаю над OCR. Но бумаг с каждым годом становится только больше. Конечно, сейчас на первый план вышла не задача распознавания символов, а задача распознавания всевозможных документов, которые имеют сложную структуру, таблицы и рукописный текст. Много на этом пути мы уже сделали, но и новые научные вызовы впереди еще есть», – отмечал Владимир Арлазаров.
В мире где есть бумажные документы, роботизация и автоматизация процессов их обработки без качественной технологии OCR невозможна. Кроме этого вокруг нас появляются и новые задачи для OCR. Так, буквально в прошлом году возникла потребность распознавать рукописный номер телефона при оплате товаров и услуг. Это значит, что работа разработчиков OCR продолжается.