Ускорьте цифровизацию своего бизнеса с Alibaba Cloud 2020 Double 11 Big Sale! Получите новые купоны для пользователей и ознакомьтесь с более чем 16 бесплатными пробными версиями, 30+ бестселлерами и 6+ решениями для всех ваших нужд!

Автор Suishou

AMAP предоставляет обширные и точные картографические данные, чтобы значительно улучшить наши впечатления от путешествий. Он использует технологию распознавания изображений для автоматического создания данных, чтобы преобразовать традиционные процессы сбора и производства картографических данных. Распознавание текста сцены (STR) - ключевая часть технологии распознавания изображений. Технология распознавания текста предназначена для комплексного, точного и быстрого распознавания текста во всех видах сложных сценариев, например, стилизованный текст на вывесках для бизнеса, различные логотипы, текст на сложном или частично загороженном фоне и текст низкого качества. изображений. Эта статья разделена на следующие части:

1) Эволюция и практика технологии распознавания текста в процессе производства данных AMAP
2) Разработка и структура собственных алгоритмов распознавания текста
3) Будущее развитие и проблемы

1. Фон

Как популярное приложение с более чем 100 миллионами активных пользователей в день (DAU), AMAP ежедневно предоставляет широкий спектр служб запросов, определения местоположения и навигации. Обилие и точность картографических данных определяют качество взаимодействия с пользователем. Данные обычно собираются устройствами сбора данных, и собранные данные вручную редактируются и публикуются, чтобы предоставить пользователям желаемые картографические данные. Обновление данных происходит медленно, а обработка данных требует больших затрат. Чтобы решить эту проблему, AMAP использует технологию распознавания изображений для непосредственного распознавания различных элементов данных карты в собранных данных. Затем машины автоматически создают картографические данные. AMAP собирает данные из реального мира с высокой частотой и использует возможности алгоритма изображения для автоматического обнаружения и распознавания содержимого и местоположения каждого элемента карты из огромных библиотек собранных изображений. Это создает основные картографические данные, которые можно обновлять в реальном времени. Данные точек интереса (POI) и данные о дорогах - это два важных типа базовых картографических данных, которые можно использовать для создания базовой карты AMAP, на которой хранятся данные о поведении пользователей и динамические данные продавцов.

Возможности распознавания изображений определяют эффективность автоматизированного производства данных. STR играет важную роль в этом процессе. STR используется для извлечения текстовой информации из информации об изображении, хранящейся в различных коллекциях устройств, комплексным, точным и быстрым способом. В сценариях POI алгоритмы распознавания должны уметь распознавать как можно больше текстовой информации из новых магазинов на улицах и выдавать результаты с точностью более 99%, чтобы обеспечить автоматическое создание имен POI. Что касается автоматизированного производства дорожных данных, алгоритмы распознавания должны уметь обнаруживать незначительные изменения дорожных знаков и ежедневно обрабатывать большие объемы возвращаемых данных, чтобы оперативно обновлять дорожную информацию, такую ​​как ограничения скорости и направления. AMAP использует алгоритм STR, который работает с более сложными изображениями из различных источников и сред. Примеры:

  • Разнообразные символы, шрифты и макеты. Стилизованный текст на вывесках предприятий и различные логотипы имеют все виды макетов.
  • Сложный текстовый фон. Текст может отображаться на сложном или сильно затрудненном фоне со сложным освещением и другими помехами.
  • Разнообразные источники изображений. Изображения собираются с помощью недорогих устройств краудсорсинга с различными параметрами. Захваченные изображения имеют низкое качество и подвержены ряду проблем, таких как перекос, расфокусировка и дрожание.

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

2) Эволюция и практика технологии STR

Эволюция алгоритма STR.

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

Обычные алгоритмы изображения

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

  • Предварительная обработка изображения. На этом этапе выполняется поиск и исправление текста, а также его разбиение на символы. Ключевые технологии включают анализ связанных компонентов (CCA), максимально устойчивые экстремальные области (MSER), аффинное преобразование, определение пороговых значений изображения и анализ проекций.
  • Распознавание текста: этот шаг распознает разделенный текст путем извлечения созданных вручную функций, таких как гистограмма ориентированных градиентов (HOG), или путем извлечения функций через сверточную нейронную сеть (CNN). Затем извлеченные признаки распознаются классификатором машинного обучения, например машиной опорных векторов (SVM).
  • Постобработка. На этом этапе используется языковая модель для исправления результатов распознавания на основе правил.

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

Алгоритмы глубокого обучения

В распознавании текста начали использоваться алгоритмы глубокого обучения, поскольку глубокое обучение стало широко применяться в компьютерном зрении в 2012 году. Структуры распознавания текста постепенно оптимизируются за счет глубокого обучения. Широко используются два решения для распознавания текста: двухэтапное решение для обнаружения текстовых строк и распознавания текста и решение для сквозного распознавания текста.

1) Двухэтапное решение для обнаружения текстовой строки и распознавания текста

Это решение находит текстовые строки, а затем распознает их содержимое. Методы обнаружения текстовых строк включают регрессию текстового поля [1], сегментацию или сегментацию экземпляра [2], а также комбинацию регрессии и сегментации [3]. Обнаружение текстовых строк эволюционировало от обнаружения текста в разнонаправленных прямоугольниках до многоугольников [2]. Теперь мы изучаем, как определять текстовые строки произвольной формы. Распознавание текста эволюционировало от обнаружения и распознавания символов до распознавания последовательности текста. Коннекционистская временная классификация (CTC) [4] и механизм внимания [5] - два основных подхода к распознаванию текстовых последовательностей.

2) Решение для непрерывного распознавания текста

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

Структура распознавания текста

AMAP за многие годы несколько раз модернизировала свою технологию распознавания текста. Сегментация на основе полностью сверточной сети (FCN), а также обнаружение и распознавание символов превратились в обнаружение на основе сегментации экземпляров и комбинации обнаружения и распознавания символов с распознаванием последовательностей. В реальных бизнес-сценариях AMAP не использует структуру сквозного распознавания, которая широко применяется в академическом сообществе. Сквозная структура требует достаточного количества текстовых строк высокого качества и данных тегов для получения результатов распознавания. Однако затраты на тегирование высоки, а синтетических виртуальных данных не хватает для замены реальных данных. Таким образом, сквозная структура разделена на модель обнаружения текста и модель распознавания текста, которые оптимизируются отдельно.

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

Обнаружение текстовой строки

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

Модель обнаружения текстовых строк может прогнозировать результаты сегментации текстовой области и информацию о расположении текстовых строк. Модель интегрирована с глубокой сверточной сетью (DCN) для извлечения характеристик текста в разных направлениях и увеличения размера элемента для ветви маски. Модель также интегрирована с мощным модулем объединения пространственных пирамид (ASPP) для повышения точности сегментации текстовой области. На основе результатов сегментации текста модель генерирует минимальную внешнюю выпуклую оболочку, которая будет использоваться в последующей процедуре распознавания. Общая производительность модели может быть улучшена за счет онлайн-дополнения данных, который используется для вращения, переворачивания и смешивания данных в процессе обучения. На следующем рисунке показаны примеры результатов обнаружения текста.

Возможности обнаружения текста уже широко используются AMAP для получения данных о точках проезда и дорогах. Модель обнаружения текста была проверена в общедоступных наборах данных ICDAR2013 (март 2018 г.), ICDAR2017-MLT (октябрь 2018 г.) и ICDAR2019-ReCTS, продемонстрировав отличную производительность.

Распознавание текста

Как описано в разделе «Предпосылки», результаты распознавания текста могут использоваться для автоматического создания POI и дорожных данных только при соблюдении двух требований: Одно требование - максимально полно распознать содержимое текстовой строки. Другое требование - определить высокоточную (более 99% точности) часть результатов, вычисленных алгоритмом. Результаты распознавания текста обычно оцениваются по символам. Однако AMAP фокусируется на результатах распознавания текстовых строк, поэтому мы определили следующие критерии оценки распознавания текста на основе реальной бизнес-ситуации:

  • Абсолютно правильная скорость распознавания текстовых строк: доля текстовых строк с правильно распознанным текстом и правильной последовательностью чтения среди всех текстовых строк.
  • Степень достоверности распознавания текстовой строки: доля текстовых строк, распознаваемых с высокой степенью достоверности (точность более 99%) среди всех текстовых строк.

Оценка "Все правильно" оценивает способность распознавать точки интереса и названия дорог. Коэффициент высокой достоверности оценивает способность идентифицировать текстовые строки, которые распознаются с высокой точностью с помощью алгоритма. Эти две способности тесно связаны с нашим бизнесом. Мы исследовали распространенные алгоритмы распознавания текста, чтобы найти те, которые могут удовлетворить потребности нашего бизнеса.



Есть два основных подхода к распознаванию текста. Один - это обнаружение и распознавание символов, а другой - распознавание последовательности. Легко организовать обучающие образцы и обучающие модели для обнаружения и распознавания символов, на которые не влияет макет текста. Однако этот подход может вызвать ошибки при обнаружении и распознавании китайских иероглифов со структурой вверх-вниз или влево-вправо. Подход к распознаванию последовательностей включает больше контекстной информации и не требует точной информации о местоположении символов. Это снижает потерю распознавания из-за особой структуры китайских иероглифов. Однако этот подход плохо работает со сложными макетами текста, такими как макеты сверху вниз и слева направо. Точность распознавания текста можно повысить, объединив эти два подхода.

1) Обнаружение и распознавание символов

Обнаружение символов использует метод Faster R-CNN и дает результаты, соответствующие потребностям бизнеса. Распознавание символов использует структуру SENet и поддерживает более 7000 китайских и английских символов и цифр. В модели распознавания символов мы оптимизировали функции пропуска подключений и активации на основе схемы сопоставления идентификаторов и архитектуры MobileNetV2 и добавили варианты случайных выборок в процесс обучения, чтобы значительно улучшить возможности распознавания текста. В апреле 2019 года наш алгоритм распознавания текста занял второе место в конкурсе ICDAR2019-ReCTS, достигнув точности всего на 0,09% меньше, чем у занявшего первое место.

2) Распознавание текстовой последовательности

Основные алгоритмы распознавания текстовых последовательностей, разработанные в последние годы, такие как Aster и DTRT, можно разделить на четыре категории по задачам: исправление текстовой области, извлечение признаков текстовой области, кодирование признаков сериализованного изображения и декодирование признаков текста. Алгоритмы исправления текстовой области и выделения функций текстовой области преобразуют деформированные текстовые строки в горизонтальные текстовые строки и извлекают элементы. Это позволяет алгоритму распознавания легче распознавать текст. Алгоритмы кодирования сериализованных признаков изображения и декодирования признаков текста, которые формируют структуру кодировщика-декодера, распознают текст на основе текстур изображения и добавляют надежную контекстную семантическую информацию для дополнения результатов распознавания.

AMAP часто требуется распознавать короткий и средний текст в реальных условиях. Такой текст часто имеет серьезные геометрические деформации, искажения и нечеткость. Чтобы распознать разнонаправленный текст с помощью одной модели, мы используем структуру TPS-Inception-BiLSTM-Attention для распознавания последовательности. На следующем рисунке показана структура модели распознавания текстовой последовательности.

После обнаружения текстовой строки модель выполняет перспективное преобразование текстовой строки на основе угловых точек и использует шлицы тонких пластин (TPS) для получения текста в горизонтальном и вертикальном направлениях. Затем модель масштабирует длинную сторону до указанной длины и дополняет текст квадратным изображением на сером фоне. Этот метод предварительной обработки сохраняет семантическую целостность входного изображения и позволяет изображению свободно вращаться и транслироваться внутри квадрата во время процессов обучения и тестирования. Это эффективно улучшает качество распознавания изогнутого и деформированного текста. Предварительно обработанное изображение импортируется в CNN для извлечения функций изображения. Признаки изображения кодируются в сериализованные признаки через BiLSTM, а затем закодированные признаки декодируются один за другим с помощью модели внимания для получения результатов прогнозирования. Как показано на следующем рисунке, модель распознавания текстовой последовательности использует механизм внимания для присвоения различных весов признакам изображения на разных этапах декодирования, чтобы неявно выразить отношения выравнивания между предсказанными символами и признаками. Это позволяет одновременно предсказывать текст в нескольких направлениях. Модель поддерживает английские буквы, библиотеку китайских иероглифов уровня 1 и библиотеку широко используемых традиционных китайских иероглифов. Он обеспечивает хорошее распознавание стилизованного и нечеткого текста.

3) Анализ и синтез образцов

При создании картографических данных мы часто встречаем редко встречающиеся названия мест на дорожных знаках или редко используемые символы и даже традиционные китайские иероглифы на обозначениях POI. Следовательно, чтобы оптимизировать эффект распознавания текста, мы должны компенсировать образцы с пропущенными символами в дополнение к оптимизации модели. Для этого мы используем анализ реальных образцов и искусственный синтез образцов. Основываясь на наших бизнес-характеристиках, мы анализируем имена, которые содержат редко используемые символы в базе данных, чтобы выполнять обратный поиск изображений, которые могут содержать редко используемые символы, и вручную маркировать эти изображения. Мы также используем технологию рендеринга изображений, чтобы искусственно синтезировать образцы текста. Реальные образцы и синтетические образцы используются вместе, чтобы значительно улучшить возможности распознавания текста.

Краткое описание технологии распознавания текста

Благодаря усовершенствованному алгоритму распознавания текста и объединению многих результатов распознавания решение AMAP можно использовать в различных сценариях. Компьютерное зрение, ключевая технология в области распознавания текста, широко применяется для автоматизированного производства данных AMAP. В некоторых сценариях сбора данных машины производят все данные автоматически. Машины автоматически создают и публикуют более 70% данных о точках интереса, а более 90% данных о дорогах автоматически обновляются. Это сокращает навыки, необходимые инженерам по обработке данных, что снижает затраты на обучение и накладные расходы.

3) Будущее развитие и проблемы

Подход STR, используемый AMAP, основан на глубоком обучении. По сравнению с другими языками китайский язык содержит больше символов со сложной структурой. Это требует от AMAP создания более разнообразных картографических данных для получения удовлетворительных результатов и делает недостаток данных нашей основной проблемой. Кроме того, нечеткие изображения часто влияют на производительность автоматической идентификации и эффективность производства данных. AMAP должен разработать способ выявления и обработки нечетких изображений. В следующих разделах объясняется, как решить проблемы недостаточности данных и распознавания нечетких изображений с точки зрения дизайна данных и моделей, а также как улучшить возможности распознавания текста.

Подходы, основанные на данных

Данные важны. Общая тема исследований в области изображений - это автоматическое масштабирование размера данных, когда у нас не хватает рабочей силы и ресурсов для тегирования. Один из подходов - увеличить размер выборки данных за счет увеличения данных. Google DeepMind предложил AutoAugment на CVPR 2019. AutoAugment - это алгоритм, используемый для поиска оптимальной политики увеличения данных с помощью обучения с подкреплением. Другой подход - интеграция данных. Например, SwapText, разработанный Alibaba DAMO Academy, создает данные посредством передачи стилей.

Модельные подходы

Распознавание нечеткого текста

Технология STR часто сталкивается с проблемами пропуска символов и неудачного распознавания из-за нечетких изображений. В академических кругах суперразрешение (SR) является одним из основных методов распознавания нечетких изображений. TextSR использует генерирующую состязательную сеть сверхвысокого разрешения (SRGAN) для применения SR к тексту для восстановления изображения с высоким разрешением (HR) из нечеткого текстового изображения. Согласно объяснению, предоставленному Сеульским национальным университетом и Массачусетским университетом в статье Better to Follow, в отличие от TextSR, GAN при применении SR к функциям не создает изображение напрямую, а интегрирует сеть SR с сетью обнаружения. GAN дает результат, аналогичный результату TextSR, но значительно повышает эффективность вычислений, поскольку использует сквозной режим.

Понимание семантики текста

Обычно мы обращаемся к предыдущей семантической информации, когда пытаемся понять сложный текст. С развитием технологии обработки естественного языка (NLP) в последние годы компьютеры получили возможность получать семантическую информацию. Стоит изучить, как улучшить возможности распознавания текста на основе взаимосвязи между предыдущей семантической информацией и изображениями со ссылкой на то, как мы понимаем сложный текст. Например, на CVPR 2020 SEED предложила добавить языковую модель к модели распознавания, чтобы улучшить возможности распознавания текста посредством всесторонней оценки характеристик изображения и семантических характеристик.

Другие события

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

Первоисточник:



Получите доступ к экспертному обзору - Подпишитесь на DDI Intel