Проект Сервис распознавания и учета составов товаров
Год 2025
Клиент
Крупный дистрибьютор импортных товаров с ассортиментом, включающим сотни SKU на рынке.
Ситуация на старте проекта
У большинства брендов в портфеле клиента отсутствовали готовые цифровые данные о составе продукции. Единственным источником информации были цифровые макеты упаковок.
Проблематика
С 2024 года появилась необходимость загружать данные о составе товаров в национальный каталог. Процесс оцифровки выполнялся вручную, что существенно замедляло работу и приводило к ошибкам.
Бизнес-результат
Процесс оцифровки состава стал практически полностью автоматизированным. Теперь достаточно загрузить изображение — дальше все делает система: извлекает текст, находит штрихкод, связывает состав с конкретным товаром и формирует структурированные данные.
Готовые файлы можно сразу использовать для загрузки в PIM-систему или любую другую систему, содержащую данные о товарах, и последующей передачи в национальный каталог. Ручной труд сводится к проверке результата — это сокращает затраты времени и снижает риск ошибок.
Комментарий менеджера KT.Team
«На момент старта у нас не было аналогичных кейсов — это был первый проект, где нужно было не просто распознавать штрихкоды и текст, но и точно выделять нужные области на упаковке, часто расположенные под углом или в разных проекциях. Это потребовало от команды глубокой проработки подхода и настройки каждого этапа пайплайна.
Мы сделали сервис распознавания ориентированным для бизнеса клиента. При выходе на рынок новых видов упаковок возможна доработка сервиса под них. Благодаря этому наш клиент готов к расширению ассортимента, а команда занята более приоритетными задачами.»
Процесс разработки
Бизнес-запрос на старте
Автоматизировать распознавание состава на сотнях упаковок, чтобы отказаться от трудозатратной ручной обработки и ускорить подготовку данных для загрузки в национальный реестр.
Время разработки
6 месяцев с начала обсуждений и всего 3 месяца от начала разработки до запуска рабочей системы.
Результат
Сервис распознавания составов позволил кратно сократить время обработки данных: вместо 30 минут на одну упаковку теперь за 2 минуты система автоматически обрабатывает до 10 изображений. При этом точность распознавания составляет 80–95%.
Как это работает
Сервис запускается автоматически по расписанию и проходит следующие шаги:
- проверяет загруженные PDF-файлы и находит блок с составом продукта (раздел «Ингредиенты»);
- распознает текст и извлекает информацию о составе;
- находит штрихкод на упаковке для точной привязки состава к товару;
- формирует отчет, в котором каждому штрихкоду соответствует распознанный состав.
Если какое-либо изображение не удалось распознать, это также будет зафиксировано в отчете — пользователь сразу видит, какие файлы требуют ручной проверки.
Готовый отчет можно загружать в любую мастер-систему — за счет использования штрихкода данные корректно соотносятся с нужным товаром.
Стек технологий
Сервис распознавания реализован как распределенное решение с использованием современных инструментов компьютерного зрения и архитектурных подходов:
- Язык разработки Go для высокой производительности.
- Микросервисная архитектура, асинхронное взаимодействие через очередь сообщений RabbitMQ: сервис получает задания, обрабатывает их и возвращает результаты обратно в очередь.
- Интеграция с SMB/FTP для загрузки PDF-документов.
- Два отдельных модуля для работы с файлами: один отслеживает новые загрузки, второй формирует итоговые Excel-отчеты.
Для распознавания и извлечения состава используется многоступенчатый пайплайн обработки изображений, включающий как классические алгоритмы компьютерного зрения, так и OCR-инструменты:
- Конвертация: преобразование PDF в изображения.
- Поиск контуров: выделение границ объектов с помощью OpenCV.
- Иерархия контуров: определение вложенных областей (например, на упаковках).
- Кластеризация: группировка элементов с помощью DBSCAN для выделения текстовых блоков.
- Фильтрация: отбор участков изображения, с высокой вероятностью содержащих текст и штрихкод.
- Распознавание текста: использование Tesseract OCR.
- Извлечение состава: поиск ключевых слов (например, «ингредиенты») с учетом искажений, нормализация текста, при необходимости — инверсия цветов и поворот изображения.
- Распознавание штрихкода: использование библиотеки ZXing или поиск последовательности из 13 цифр в OCR-результатах.
Что было дальше
Система уже работает в продуктиве и помогает клиенту оперативно обрабатывать данные о составах. На текущий момент с ее помощью успешно распознано более 500 упаковок. Доработки и обновления вносятся по мере появления новых товаров, готовящихся к выходу на рынок.
Для реализации автоматической передачи данных в национальный каталог в PIM-системе реализован инструмент формирования Excel-шаблонов, индивидуальных для каждого ТН ВЭД. Формы автоматически заполняются данными из PIM, с учетом преобразований и сопоставлений со справочниками. Пользователю остается только скачать готовый файл и загрузить его в личный кабинет национального каталога, но это уже другая история.
{{cta}}