Научная статья на тему 'К ВОПРОСУ ОБ ИСПОЛЬЗОВАНИИ ТЕХНОЛОГИИ TESSERACT ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОПТИЧЕСКОГО РАСПОЗНАВАНИЯ СИМВОЛОВ С НЕЛАТИНСКИМИ АЛФАВИТАМИ'

К ВОПРОСУ ОБ ИСПОЛЬЗОВАНИИ ТЕХНОЛОГИИ TESSERACT ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОПТИЧЕСКОГО РАСПОЗНАВАНИЯ СИМВОЛОВ С НЕЛАТИНСКИМИ АЛФАВИТАМИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
171
27
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СИСТЕМЫ ОПТИЧЕСКОГО РАСПОЗНАВАНИЯ СИМВОЛОВ / TESSERACT / НЕЛАТИНСКИЕ АЛФАВИТЫ / МУЛЬТИЯЗЫЧНЫЕ СИСТЕМЫ РАСПОЗНАВАНИЯ СИМВОЛОВ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Голубничий Артем Александрович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Голубничий Артем Александрович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ON TESSERACT TECHNOLOGY USE FOR THE NON-LATIN ALPHABETS OPTICAL CHARACTER RECOGNITION SYSTEM CONSTRUCTION

The article deals with an optical character recognition algorithm using Tesseract technology for non-Latin alphabet characters. The author gives a listing of the image primary preparation software implementation for the file previous transfer to the character recognition system. The article describes possibility of creating a generalized language model, applicable for text recognition for one linguistic group languages, using restrictive rules through the creation of a «white list». The author also describes evaluating methods for resulting optical character recognition systems efficiency.

Текст научной работы на тему «К ВОПРОСУ ОБ ИСПОЛЬЗОВАНИИ ТЕХНОЛОГИИ TESSERACT ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОПТИЧЕСКОГО РАСПОЗНАВАНИЯ СИМВОЛОВ С НЕЛАТИНСКИМИ АЛФАВИТАМИ»

Библиографический список

1. Результаты внедрения и проблемы цифровизации. URL: https://ictonline.ru/news/n168088/ (дата обращения: 20.02.2021).

2. Травуш В. И. Цифровые технологии в строительстве // Строительные науки. 2018. № 3. С. 107-117.

3. Плотников В. А. Цифровизация производства: теоретическая сущность и перспективы развития в российской экономике // Известия Санкт-Петербургского государственного экономического университета. 2018. № 4 (112). С. 16-24.

4. Дронов Д. С., Киметова Н. Р., Ткаченкова В. П. Проблемы внедрения BIM-технологий в России // Синергия Наук. 2017. № 10.

5. Вирцев М. Ю., Власова А. Ю. BIM-технологии - принципиально новый подход в проектировании зданий и сооружений // Российское предпринимательство. 2017. Том 18. № 23. С. 3827-3836.

6. Вайсман С. М., Байбурин А. Х. Разработка организационно-технологических решений в строительстве с использованием технологий информационного моделирования (ТИМ) // Вестник ЮУрГУ. Сер. Строительство и архитектура». 2016. Т. 16. № 4. С. 21-28.

7. Талапов В. В. Технология BIM: суть и особенности внедрения информационного моделирования зданий. М.: ДМК-Пресс, 2015. 410 с.

8. National BIM standard - United States. Version 2. National Institute of building sciences building SMART alliance, 2012. 676 p.

© Артюшкин О. В., Плотникова Т. Н., 2021

УДК 004.932

К ВОПРОСУ ОБ ИСПОЛЬЗОВАНИИ ТЕХНОЛОГИИ TESSERACT ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОПТИЧЕСКОГО РАСПОЗНАВАНИЯ СИМВОЛОВ С НЕЛАТИНСКИМИ АЛФАВИТАМИ

Голубничий Артем Александрович,

старший преподаватель кафедры программного обеспечения вычислительной техники и автоматизированных систем Хакасский государственный университет им. Н. Ф. Катанова (г. Абакан)

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

Ключевые слова: системы оптического распознавания символов, Tesseract, нелатинские алфавиты, мультиязычные системы распознавания символов

ON TESSERACT TECHNOLOGY USE FOR THE NON-LATIN ALPHABETS OPTICAL CHARACTER RECOGNITION SYSTEM CONSTRUCTION

Golubnichiy Artem Aleksandrovich,

senior lecturer, Computer Technology Software and Automated Systems Department Katanov Khakass State University (Abakan).

The article deals with an optical character recognition algorithm using Tesseract technology for non-Latin alphabet characters. The author gives a listing of the image primary preparation software implementation for the file previous transfer to the character recognition system. The article describes possibility of creating a generalized language model, applicable for text recognition for one linguistic group languages, using restrictive

rules through the creation of a «white list». The author character recognition systems efficiency.

Key words: optical character recognition systems, recognition systems.

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

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

Одной из популярнейших систем оптического распознавания символов на данный момент является технология Tesseract с актуальной версией 4.0 и версией 5, находящейся на стадии активной разработки [1]. Популярность данной технологии породила большое количество интерфейсов, реализо-

also describes evaluating methods for resulting optical Tesseract, non-Latin alphabets, multilingual character

ванных для многих языков программирования, в рамках данного исследования приводятся примеры, реализованные посредством интерпретатора языка программирования R [2], среды разработки RStudio [3] и ряда дополнительных пакетов, таких как tesseract [4].

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

Алгоритм реализации системы оптического распознавания символов с нелатинскими алфавитами. Весь алгоритм оптического распознавания символов включает несколько этапов, которые в зависимости от построения конкретной системы могут отличаться. На предварительном этапе необходимо подключить Tesseract, для этого можно использовать либо исходную библиотеку, либо один из многочисленных интерфейсов, например пакет tesseract из репозитория CRAN для языка R.

Рис. 1. Основные стадии процесса распознавания символов

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

Для данного процесса рекомендуется использовать сочетание пакетов EBImage [5] и magick [6]. Первый пакет входит в состав репозитория Bioconductor и содержит продвинутые инструменты для корректного перевода исходного изображения в чёрно-белый формат, второй - необходим для детальной настройки изображения перед запуском Tesseract. В рекомендациях по улучшению качества изображения перед использованием в системе оптического распознавания символов приводится ряд действий, представленный на рисунке 2, код программной реализации данных этапов, на базовом бинарном изображении посредством пакета magick приведён на рисунке 3.

Существенным отличием при распознавании символов текстов, написанных на языке, использующем нелатинский алфавит, выступает необходимость установления дополнительных настроек при запуске основной функции пакета tesseract - ocr. Данная функция отвечает за процедуру распознавания символов, ключевым параметром для тонкой настройки в данной

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

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

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

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

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

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

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

Рис. 2. Основные стадии подготовки изображения

1 image_res <— image_bin %>%

2 image_scale("х2000") %>%

3 image_background("white", flatten = TRUE) %>%

4 image_trim() %>%

5 image_noise() %>%

6 image_enhance() %>%

7 image_normalize() %>%

8 image_contrast(sharpen = 1) %>%

9 image_deskew(treshold =40)

Рис. 3. Листинг программного кода подготовки изображения к оптическому распознаванию

Библиографический список

1. GitHub - tesseract-ocr/tesseract: Tesseract Open Source OCR Engine (main repository). URL: https://github.com/tesseract-ocr/tesseract (дата обращения: 24.02.2021).

2. R: The R Project for Statistical Computing. URL: https://www.r-project.org (дата обращения: 24.02.2021).

3. RStudio | Open source & professional software for data science teams - RStudio. URL: https://www.rstudio.com (дата обращения: 24.02.2021).

4. CRAN - Package tesseract. URL: https://cran.r-project.org/package=tesseract (дата обращения: 24.02.2021).

5. Bioconductor - EBImage. URL: https://bioconductor.org/packages/release/bioc/html/EBImage.htmI (дата обращения: 24.02.2021).

6. CRAN - Package magick. URL: https://cran.r-project.org/package=magick (дата обращения: 24.02.2021). © Голубничий А. А., 2021

i Надоели баннеры? Вы всегда можете отключить рекламу.