Распознавание изогнутого текста
Распознавание текста — важная задача машинного обучения, решение которой позволит получать огромное количество информации из окружающего мира без участия человека. Распознавание изогнутого текста, в частности, одна из проблем, лежащих на пути решения данной задачи.
Людей, работающих в данном направлении, для удобства условно будем называть "исследователями".
Вступление
В решении задачи распознавания текста двумя основными составляющими являются определение области текста и распознавание содержимого области. В сообществе исследователей выделяют три разных вида ориентации текста - horizontal, multi-oriented, curved (усл. горизонтальная, множественная, изогнутая). Очевидно, что правильность определения области текста напрямую влияет на качество работы распознающих моделей. Долгое время распознавание изогнутого текста казалось крайне сложной задачей - до тех пор, пока не появились способы весьма точно определять контуры объектов на изображениях ([см./например] Mask R-CNN). Использование методов сегментации изображения позволяет добиться хороших результатов на существующих датасетах.
Существующие модели и датасеты
Датасеты, способствовавшие исследованиям в области распознавания изогнутого текста:
- TotalText
- SCUT-CTW1500
Здесь будут представлены только наиболее удачные модели, которые показывают хорошие результаты вне зависимости от ориентации текста. Мы разделим модели на две категории: модели, занимающиеся только детекцией (они находят группы букв на изображении, а распознавание непосредственно слов разработчики делегируют другим инструментам), и модели, которые занимаются и детекцией, и распознаванием.
Модели только для детекции:
- CTD+TLOC (?)
- TextFuseNet
- CharNet H-88
- TextCohesion
- PAN-640
- DB-ResNet50
- CRAFT
- SPCNET
- TextFilled
- TextSnake
- PAN
- PSENet
- SLPR
Модели end-to-end:
- SA-Text
- FTSN
- Mask TextSpotter
Датасеты
TotalText (2017)
Предшествующие TotalText'у датасеты ICDAR'03, '11, '13 и MSRA-TD500 сыграли значимую роль в начале исследований в области распознавания текста. У датасетов ICDAR тексты встречались в единственной ориентации - горизонтальной, и на этом предположении были основаны многие ранние модели. Границы текста они определяли как прямоугольник. Это ограничивало возможности распознавания, и для привлечения внимания исследователей к этой проблеме в 2012 году был представлен датасет MSRA-TD500, включавший в себя большое количество изображений с множественной ориентацией текста (от горизонтальной отличается тем, что область с текстом находится под наклоном или/и в перспективе). Модели были усовершенствованы, и теперь определяли границы как произвольных форм четырёхугольники. Текст же изогнутой формы, несмотря на частоту появления в реальном окружении, практически не появлялся в датасетах (искл. COCO-text и CUTE80, но они не привлекли особого внимания к проблеме). Поэтому справиться с произвольной формой текста многие модели попросту не могли.
Для привлечения внимания к этой проблеме в 2017 году был представлен датасет TotalText, состоящий из 1555 изображений с текстом различной ориентации и содержащий в целом 9330 слов. Отличительной особенностью TotalText является Groundtruth области (или же границ) текста. Groundtruth ("основная истина") - это термин, используемый для обозначения информации, предоставляемой прямым наблюдением (в отличие от информации, предоставляемой предположением). В данном случае под термином groundtruth подразумевается значение, которое в идеале должна предсказать модель. Так, в COCO-Text groundtruth области текста был прямоугольник, а вот в TotalText это был многоугольник, состоящий из множества полигонов.
SCUT-CTW1500 (2017)
SCUT-CTW1500 должен был привлечь внимание к той же проблеме, что и TotalText. Они были опубликованы практически одновременно (TotalText 27 октября 2017, а SCUT-CTW1500 6 декабря 2017). Вероятно, они разрабатывались независимо друг от друга - авторы SCUT-CTW1500 утверждали, что они являются первооткрывателями полигонального подхода, хотя TotalText был опубликован немного раньше. Позднее авторы TotalText добавили ссылку на SCUT-CTW1500 в качестве дополнения к своему датасету. SCUT-CTW1500 включает в себя 1500 изображений (1000 для обучения, 500 для проверки), на которых содержится более 10 тысяч областей с текстом, и на каждом изображении как минимум один раз встречается изогнутый текст. Здесь, как и в TotalText, groundtruth - фигура, состоящая из нескольких полигонов. Оба этих датасета (а точнее, модели, обученные на них) стали прорывом - они первые начали использовать полигональный groundtruth.
В 2021 году TotalText и SCUT-CTW1500 уже не используются как два независимых датасета. Датасет ArT объединил их в себе и стал самым большим датасетом изогнутого текста.
Модели для детекции
TextSnake (2018)
Краткое описание и особенности
TextSnake представляет текст в виде области текста (линия, обводящая текcт по периметру), делящейся внутри в виде последовательности кругов разного радиуса, расположенных всегда строго в центре области текста.
Архитектура
TextSnake использует сверточную нейронную сеть, подробная архитектура которой представлена на изображении:
Точность
F-мера:
- TotalText: 78.4
- CTW1500: 75.6
TextFuseNet (2020)
Краткое описание и особенности
Основной особенностью TextFuseNet является выделение большего количества признаков и их слияние для более точного определения текстовых областей. TextFuseNet опирается на Mask R-CNN и Mask TextSpotter и рассматривает детекцию текста как задачу сегментации. Но отличительной особенностью данной модели является выделение признаков на трёх уровнях: буквенном, словесном и глобальном.
Архитектура
Общая архитектура TextFuseNet представлена выше. Для получения глобального представления используется семантическая сегментация. Далее, с помощью Mask R-CNN в ветвях Detection и Mask определяются признаки на буквенном и словесном уровнях. Для слияния уровней используется модуль multi-path fusion (представлено снизу), что позволяет TextFuseNet изучать более дифференцированное представление и выдавать более точные результаты детекции текста.
Точность
F-мера:
- CTW1500: 86.6
- Total-Text: 87.1