УДК 004
Абрамов В.Г.
магистрант 2 курса, гр. ИИПм-22-1 Тюменский индустриальный университет
г. Тюмень, РФ
НЕЙРОСЕТЕВОЕ РАСПОЗНАВАНИЕ QR-КОДОВ НА БАЗЕ ТЕХНОЛОГИЙ КОМПЬЮТЕРНОГО ЗРЕНИЯ
Аннотация
В статье рассматривается концепция автоматического распознавания и декодирования графических образов на базе модели YOLO с применением специализированной библиотек и инструментов предобработки изображений на языке Python.
Цель исследования: разработка методического подхода для повышения скорости распознавания QR-кодов в условиях дифференциации обрабатываемого графического содержания.
Метод исследования: оптимизация существующей модели YOLOv8 для распознавания QR-кодов, включая обучение модели на большом количестве разнообразных изображений и настройки параметров обрабатывающей системы для улучшения вычислительных характеристик.
Результаты. При обработке 108 тестовых изображений корректно были идентифицированы 82 QR-кодов, что составляет 76 %. Скорость работы алгоритма увеличивается при многопоточной обработке.
Ключевые слова: Компьютерное зрение, нейронная сеть, выборка, глубокое обучение, изображение, QR-код, валидация
NEURAL NETWORK RECOGNITION OF QR CODES BASED ON COMPUTER VISION TECHNOLOGIES
Abstract
The article discusses the concept of automatic recognition and decoding of graphic images based on the YOLO model using specialized libraries and image preprocessing tools in Python.
The purpose of the study: to develop a methodological approach to increase the speed of recognition of QR codes in the context of differentiation of processed graphic content.
Research method: optimization of the existing YOLOv8 model for QR code recognition, including training the model on a large number of different images and adjusting the parameters of the processing system to improve computational characteristics.
Results. When processing 108 test images, 82 QR codes were correctly identified, which is 76 %. The speed of the algorithm increases with multithreaded processing.
Keywords:
Computer vision, neural network, sampling, deep learning, image, QR code, validation
В современном мире, где информация является одним из самых ценных ресурсов, технологии, позволяющие эффективно и точно обрабатывать большие объемы данных, приобретают все большую значимость. Одной из таких технологий является компьютерное зрение, целью которого является построение систем, способных «видеть», то есть извлекать из изображений информацию об объектах внешнего мира, полезную для дальнейшего использования в рамках какого-либо приложения [1, 2]. Одной из практических задач, решаемых с помощью компьютерного зрения, является распознавание QR-кодов, которые широко используются в различных сферах человеческой деятельности. Данный подход целесообразен для автоматизированной идентификации QR-кодов в работе логистических структур.
В рамках данной работы выполнена оптимизация существующей модели YOLOv8 для распознавания QR-кодов, включая обучение модели на большом количестве разнообразных изображений и настройки
параметров обрабатывающей системы для улучшения вычислительных характеристик.
Поскольку YOLO является нейросетевой моделью обнаружения объектов с дальнейшим выделением соответствующих кластеров, то на выходе будет формироваться массивы данных с соответствующими координатами и признаками. YOLO использует архитектуру глубокого обучения, которая состоит из нескольких слоев сверточных нейронных сетей (CNN), за которыми следуют слои обратной связи. На вход подается цельное изображение ячейки стеллажа кернохранилища, а выходными данными являются координаты центров обнаруженных объектов и их информационное содержание. Выбор данной модели обоснован приемлемой скоростью обработки входных данных - идентификация изображений за одну итерацию [3-5].
Предполагается, что разработанная система распознавания QR-кодов на базе технологий компьютерного зрения и нейросетевых технологий сможет значительно упростить и ускорить процесс проведения складской ревизии, повысить точность и надёжность учета товаров и материалов, а также снизить затраты на ручной труд.
Актуальность данной работы заключается в разработке методического подхода для повышения скорости распознавания QR-кодов в условиях дифференциации обрабатываемого графического содержания.
Целью формирования оптимизированной модели является максимизация качества обрабатываемых изображений с учетом различных углов съемки, освещения и других факторов. Для удобства взаимодействия пользователя и разрабатываемой системы сформирован интуитивно понятный интерфейс (GUI). Пользователь сможет загружать изображения ячеек стеллажа складского помещения для распознавания QR-кодов контейнеров с полноразмерным керном; отслеживать результаты распознавания графических образов в режиме реального времени и сохранять полученные данные для дальнейшей аналитической обработки.
Предлагаемая система распознавания QR-кода состоит из нескольких компонентов, включая сбор изображений, предварительную обработку, извлечение признаков и классификацию (рис. 1):
- Компонент сбора изображений захватывает изображение QR-кода с помощью камеры или сканера;
- Компонент предварительной обработки улучшает качество изображения, применяя такие методы, как подавление шума, повышение контрастности и нормализация изображения блок-схема работы программы.
Рисунок 1 - Структура программы по распознаванию и считыванию QR-кодов
Так как QR-код содержит матричную символику, где каждый элемент состоит из номинально квадратных модулей, структурированных в регулярную квадратную матрицу, включая уникальные шаблоны поиска, размещенные в трех углах символа и предназначенных для упрощения определения места нахождения, размера и наклона символа [6, 7].
Изображения, содержащие области с QR-кодами, представлены различными уровнями контрастности и яркости (низкое разрешение), и пространственного шума, формирующие систему негативных сочетаний графических элементов.
Основываясь на выявленных проблемах, можно сформулировать требования, предъявляемые к датасету, на котором будет производится обучение модели [8, 9]:
1. Изображения должны содержать QR-коды различных размеров, чтобы модель могла обучиться распознавать разномасштабные графические элементы.
2. Требуется подобрать изображения, сделанные в различных условиях освещения, от недостаточного до избыточного, чтобы модель могла обучиться распознавать коды при любых уровнях яркости.
3. Необходимо подобрать варианты изображений, на которых QR-коды идентифицированы под разными углами сьемки.
4. Датасет должен содержать различную матричную символику QR-кодов.
Исходя из этих требований, был сформирован набор из 586 изображений различных видов QR-кодов (рис. 2).
Рисунок 2 - Пример изображений QR-кодов из подготовленного датасета
Обучающая выборка составила 530 изображений, оставшиеся 60 были использованы в качестве валидационной выборки. Результаты обучения модели представлены на рис. 3.
Основываясь на данных результатах, можно сделать вывод, что с каждой итерацией, как на обучающей, так и на валидационной выборке количество ошибок классификации сводится к нулю, что говорит о том, что с большей долью вероятности модель безошибочно идентифицирует ЦК-коды, точность модели держится на уровне 0,9 и с каждой итерацией происходило падение ошибок, на последних итерациях их уровень был близок к нулю.
Так же о том, что модель безошибочно идентифицирует ЦК-коды свидетельствует рост метрики тАР50 с каждой итерацией [10]. Из чего можно сделать вывод, что модель справляется с поставленной задачей.
20 40 0 20 40 О 20
Рисунок 3 - Метрики обучения модели
Результаты идентификации ЦК-кодов на первом наборе валидации представлены на рис. 4.
Рисунок 4 - Проверка обученности модели на первом валидационном наборе
В качестве декодера QR-кодов использовалась специализированная библиотека языка Python (Pyzbar), в основе которой используется соответствующий шаблонный поиск последовательности модулей «dark-light-dark-light-dark» с определенными значениями относительной ширины.
Разработанный алгоритм идентифицирует «области-кандидаты» графического пространства ячеек хранилища и отмечает положения первой и последней точек QR-кодов на линии пикселей, пересекающейся с внешними границами поискового шаблона. Этот процесс повторяется для соседних пиксельных участков до обнаружения всех линий, пересекающих центральный блок поискового шаблона вдоль границы изображений. Затем определяются центры поисковых шаблонов, оси X и Y и угловая ориентация символа. Расстояние и ширина «узоров» QR-кодов рассчитываются для определения их номинального размера и приблизительной структуры символьного ряда.
Предобработка исходных изображений, с учетом минимизации пространственных шумов, включает следующие инструменты библиотеки Open CV [6]:
- Изменение размера изображения QR-кода;
- Инвертирование цвета изображения;
- Преобразования изображения в оттенки серого;
- Бинаризация изображения;
- Коррекция перспективы;
- Масштабирование изображения.
Результат апробации разработанного методического подхода к распознаванию QR-кодов представлен выходным Excel-файлом. В выходных файлах находится информация, считанная с обнаруженных QR-кодов и координаты их центров, для определения позиции объекта на изображении для проведения дальнейшей обработки данных, рис. 5.
Data X Y
('Стеллаж № 26;Ячейка № 6 снизу;;Ячейка № 10 сверху;1,) 2068 369
('Месторождение **** Скважина 1 Стеллаж4 Коробка 34Интервал 2221-2246.6; Вынос 25.59',) 1374,5 S35
(None,) 3434,5 В21,5
('Месторождение **** Скважина 1 Стеллаж4 Коробка 43Интервал 2221-2246.6; Вынос 25.59',) 1364,5 1174
('Стеллаж № 26;Ячейка № 6 справа;;Ячейка №5 слева;',) 2В9 2014,5
('Месторождение **** Скважина 1 Стеллаж4 Коробка 44Интервал 2221-2246.6; Вынос 25.59',) 2076 1177
('Месторождение **** Скважина 1 Стеллаж4 Коробка ЗЗИнтервал 2221-2246.6; Вынос 25.59',) 6й9,5 791,5
('Месторождение **** Скважина 1 Стеллаж4 Коробка 35Интервал 2221-2246.6; Вынос 25.59',) 2051,5 342,5
('Стеллаж № 26;Ячейка № 2 снизу;;Ячейка № 6 сверху;',) 2096,5 2791
('Месторождение **** Скважина 1 Стеллаж4 Коробка 3бИнтервал 2221-2246.6; Вынос 25.59',) 2757 832,5
('Стеллаж № 26;Ячейка № 6 справа;;Ячейка №5 слева;',) 249 1064
Рисунок 5 - Выходной файл работы программы
В качестве единиц измерения используются пиксели; началом координат служит «левый верхний угол» изображения, относительно которого реализуется идентификация зон расположения QR-кодов, рис. 6.
Центры QR-кодов вычисляются как среднее значение координат противоположных углов обнаруженного прямоугольника, ограничивающего QR-код.
В результате исследования представлена первичная концепция для автоматического распознавания и декодирования графических образов на базе модели YOLO, специализированной библиотеки (Pyzbar), а также инструментов предобработки изображений.
OR Code Centers
Рисунок 6 - Позиционирование QR-кодов на изображении
При обработке 108 тестовых изображений корректно были идентифицированы 82 QR-кодов, что составляет 76 %. Скорость работы алгоритма увеличивается при многопоточной обработке.
Намечена стратегия дальнейшего усовершенствования разработанного алгоритма идентификации QR-кодов путем формирования дополнительного вложенного алгоритма для повышения детализации исходных графических образов.
Список использованной литературы:
1. Потапов А.С. Системы компьютерного зрения: учебное пособие. СПб.: Университет ИТМО, 2016. 161 с.
2. Аристов А.И., Зеленин А.В., Катанов Ю.Е. Нейросетевое распознавание текстурных особенностей графических керновых данных. Свидетельство о регистрации программы для ЭВМ RU 2024615647, 11.03.2024. Заявка № 2024614650 от 11.03.2024.
3. Абрамов В.Г. Автоматизация аудита запасов в нефтяной промышленности с использованием искусственного интеллекта // Проблемы и перспективы осуществления междисциплинарных исследований: Междунар. науч.-практ. конф. Уфа. 2023. С. 5-10.
4. GitHub: веб-сервис. URL: https://github.com /ultralytics/ultralytics (дата обращения: 02.02.2024).
5. Катанов Ю.Е. Анализ и синтез информационных систем (обработка разнородных данных, геология): учебное пособие. Тюмень, 2020. 159 с.
6. Информационные технологии. Технологии автоматической идентификации и сбора данных. Спецификация символики штрихового кода QR Code: национальный стандарт Российской Федерации: издание официальное: утв. и введ. в действие приказом Федерального агентства по техническому регулированию и метрологии от 3 июня 2015 г. № 544-ст: введ. впервые: дата введ. 2016-02-01 / подготовлен ААИ «ЮНИСКАН/ГС1 РУС». Москва: Стандартинформ. 2016. 113 с. ГОСТ Р ИСО/МЭК 180042015.
7. Аристов А.И., Орехов Д.А., Катанов Ю.Е. Классификация текстовой геолого-геофизической информации на базе нейронных сетей. Свидетельство о регистрации программы для ЭВМ RU 2024615646, 11.03.2024. Заявка № 2024614649 от 11.03.2024.
8. Катанов Ю.Е., Аристов А.И., Ягафаров А.К., Новрузов О.Д. Цифровой керн: нейросетевое распознавание текстовой геолого-геофизической информации // Известия высших учебных
заведений. Нефть и газ. 2023. № 3 (159). С. 35 -54.
9. OpenCV: Компьютерное зрение с открытым исходным кодом. URL: https://docs.opencv.org/4.x/d6/d00/ tutorial_py_root.html (дата обращения: 02.02.2024).
10. Мухамедиев Р.И., Амиргалиев Е. Н. Введение в машинное обучение: учебник. Алматы: УМО РУМС, 2022. 288 с.
© Абрамов В.Г., 2024
УДК 004.8
Авдюков А.С.
магистрант 2 курса, гр. ИИПм-22-1 Тюменский индустриальный университет
г. Тюмень, РФ
ИНТЕЛЛЕКТУАЛЬНАЯ ОБРАБОТКА ЗАПРОСОВ ДЛЯ АВТОМАТИЧЕСКОГО ИНФОРМАЦИОННОГО ПОИСКА ПО ГЕОЛОГО-ГЕОФИЗИЧЕСКОЙ ДОКУМЕНТАЦИИ
Аннотация
В статье рассматривается концепция интеллектуальной обработки текстовых запросов на базе модели обработки естественного языка.
Цель исследования: разработка методического подхода для повышения скорости поиска геолого-геофизической информации.
Метод исследования: функционал модели обработки естественного языка для классификации текстовых запросов.
Результаты. Полученная модель позволяет осуществлять параллельную классификацию текстовых наборов для 10 классов с точностью 97 %. Определена наиболее подходящая извлекающая вопросно-ответная модель, основанная на архитектуре RoBERTa.
Ключевые слова:
Обработка естественного языка, искусственный интеллект, машинное обучение, классификация, диалоговая система.
INTELLIGENT PROCESSING OF QUERIES FOR AUTOMATIC INFORMATION SEARCH ON GEOLOGICAL AND GEOPHYSICAL DOCUMENTATION
Abstract
The article discusses the concept of intelligent processing of text queries based on the natural language processing model.
Research objective: development of a methodical approach to improve the speed of geological and geophysical information retrieval.
Research method: the functionality of natural language processing model for classification of text queries.
Results. The obtained model allows parallel classification of text sets for 10 classes with 97 % accuracy. The most suitable extractive question-answer model based on the RoBERTa architecture is determined.
Keywords:
Natural language processing, artificial intelligence, machine learning, classification, dialog system.