Стажировка по проекту
Компания: ТОО QAZAQSTROY
Распознавание информации
на платежных поручениях
Суть проекта
Задача
Для чего
Вводные данные
Выходные данные
Разработка системы автоматического распознавания и извлечения информации из документа товарной накладной: номер счёта, дата счёта, БИК контрагента, наименование контрагента, договор, БИК вашей организации, БИК банка контрагента, расчётный счёт (ИИК) контрагента, код назначения платежа контрагента, а также информацию из табличной части, включая наименование товара, единицу измерения, количество, цену и сумму

Обучение нейросетевой модели для одновременного распознавания латинских, кириллических и уникальных символов казахского алфавита. Кроме того, для контроля качества распознавания было предложено создать генератор документов по образцу данных заказчика
Вывод результатов распознавания в JSON формате
Сканированные изображения документа товарной накладной
Алгоритм оптимизирует бизнес-процессы, улучшит качество обработки данных и обеспечит более точный учёт информации, что в итоге способствует росту эффективности и конкурентоспособности компании на рынке
Участники
1 команды проекта
  • БЕЛОУС ПАВЕЛ
    Тимлид проекта
    Павел — руководитель группы разработчиков, отвечал за проект
  • Ткачёв Виктор
    Помощник тимлида
    Виктор определял направления разработки, ставил гипотезы по решению стоящих задач, организовывал работу группы, контролировал выполнение задач, проведил промежуточные встречи для ответов на вопросы стажеров, компилировал скрипты и результаты работ

  • Хмелевский Илья
    Студент по специальности «‎Информационные технологии и программирование»
    • Подготовка и разметка данных
    • Обучение моделей Yolov8
    • Написание скриптов по предобработке и постобоработке данных
    • Тестирование и проработка гипотез по повышению точности модели
    • Тестирование систем OCR
    • Интеграция
  • Соколов Павел
    Начальник технической службы МРТ
    • Подготовка и разметка данных
    • Обучение моделей Yolov8
    • Написание скриптов по предобработке данных
    • Дообучение OCR
    • Тестирование систем OCR
    • Тестирование и проработка гипотез по повышению точности модели
  • Кабанов Дмитрий
    IT-специалист
    • Подготовка и разметка данных
    • Обучение моделей Yolov8
    • Написание скриптов по предобработке и по постобоработке данных
    • Тестирование и проработка гипотез по повышению точности модели
    • Тестирование систем OCR
  • Поляков Александр
    Lead Developer в IT-аутсорс-компании
    • Подготовка и разметка данных
    • Обучение моделей Yolov8
    • Тестирование систем OCR
    • Дообучение OCR
    • Интеграция
  • Назаров Денис
    CTO в компании-разработчике SaaS- и PaaS решений
    • Подготовка и разметка данных
    • Обучение моделей Yolov8
    • Написание скриптов по предобработке данных
    • Тестирование и проработка гипотез по повышению точности модели
  • Алешин Денис
    • Подготовка и разметка данных
    • Обучение моделей Yolov8
    • Написание скриптов по предобработке данных
  • Коваленко Сергей
    Руководитель технологических проектов в московской компании
    • Подготовка и разметка данных
    • Обучение моделей Yolov8
    • Написание скриптов по предобработке данных
  • Чернышов Геннадий
    Менеджер
    • Подготовка и разметка данных
    • Обучение моделей Yolov8
    • Тестирование систем OCR
  • Носова Светлана
    Сотрудник банка
    • Подготовка и разметка данных
    • Обучение моделей Yolov8
    • Тестирование систем OCR
  • Широнин Игорь
    • Подготовка и разметка данных
    • Обучение моделей Yolov8
  • Пицуков Михаил
    Менеджером группы танкеров, выполняющих круглогодичные перевозки топлива в Арктике
    • Подготовка и разметка данных
    • Обучение моделей Yolov8
Участники
2 команды проекта
  • Бойцов Антон
    Тимлид проекта
    Антон - руководитель группы разработчиков, отвечал за полную разработку проекта

    Определение направлений разработки;
    Постановка гипотез по решению стоящих задач;
    Проведение еженедельных;
    Организация работы и контроль задач
  • Коваленко Андрей
    Веб-разработчик, предприниматель
    • Создание генератора счетов для тестирования систем оптического распознавания символов:генерация данных для заполнения счета (Random, String, Requests, Csv, Json), создание шаблонов SVG (Json, BeautifulSoup, modules.svg_text_metrics), конвертация SVG в PNG (modules.svg_bitmap_converter), создание искажений (OpenCV, PIL, Numpy, Random, Json), генерация печатей для счетов (OpenCV, PIL, Numpy, Random, Json, Math), наложение печатей на созданные счета (OpenCV, PIL, Numpy, Random, Json)
    • Создание генератора изображений печатных символов из TrueType шрифтов (fontTools, Numpy, PIL, Random)
    • Создание генератора датасета для обучения НС из генерируемых изображений печатных символов (fontTools, Numpy, PIL, Random)
    • Обучение НС на генерируемом датасете  (TensorFlow, Keras, scikit-learn Metrics
  • Масалимов Айжас
    Специалист в сфере финансов
    • Проведение экспериментов с различным библиотеками оптического распознавания символов (EasyOCR, PaddleOCR)
    • Сбор датасета изображений латинского, кирилического и казахского алфавита (PIL, OpenCV)
    • Аугментация изображений (PIL, OpenCV)
    • Проведение экспериментов с архитектурами нейронных сетей, выбор оптимальной модели (TensorFlow, Keras, scikit-learn Metrics)
  • Мазетов Олег
    Начальник отдела эксплуатации мультимедийных средств Национального исследовательского ядерного университета «МИФИ»
    • Формирование универсального сбалансированного датасета (по группам: знаки, цифры, кириллица, латиница, буквы казахского алфавита)
    • Генерация датасета из системных шрифтов по кодам Unicode (PIL, shutil)
    • Аугментация изображений элементов датасета (PIL, OpenCV, Numpy)
    • Построение архитектуры нейронных сетей с использованием серверов высокопроизводительного вычислительного центра средствами AutoML (AutoKeras)
    • Обучение нейросетевой модели (TensorFlow, Keras, scikit-learn Metrics)
  • Космылев Владислав
    Программист 1С
    • Проведение экспериментов с различным библиотеками оптического распознавания символов (EasyOCR, PaddleOCR, docTR)
    • Предобработка исходных документов: выделение текстовых областей, удаление сетки таблиц (OpenCV)
    • Обучение НС на датасете изображений средствами AutoML (AutoKeras)
    • Осуществление распознавания табличных данных (igm2table, EasyOCR)
  • Геворгян Давид
    Специалист в event-сфере
    • Проведение экспериментов с различным библиотеками оптического распознавания символов (Tesseract OCR, EasyOCR)
    • Предобработка исходных документов: очистка от шумов, поворот (OpenCV)
    • Удаление линий таблиц и цветных артефактов на документах (OpenCV)
  • Сорокина Анастасия
    Ведущий специалист C&B в атомной отрасли
    • Аугментация изображений: гауссовский шум и наложение бликов (OpenCV)
    • Конвертация изображений из pdf в png (PyPDF2, pdf2image, poppler-utils)
  • Цой Алексей
    • Предобработка исходных документов: поворот, удаление фонового загрязнения (OpenCV)
Благодарность университетУ