Details

Title: Разработка и оптимизация модели машинного обучения с возможностью выполнения на Repka Pi: выпускная квалификационная работа бакалавра: направление 09.03.01 «Информатика и вычислительная техника» ; образовательная программа 09.03.01_02 «Технологии разработки программного обеспечения»
Creators: Лалетин Алексей Иванович
Scientific adviser: Федотов Александр Александрович
Organization: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint: Санкт-Петербург, 2024
Collection: Выпускные квалификационные работы; Общая коллекция
Subjects: отслеживание людей; глубокое обучение; YOLO; DeepSORT; MIAP; Repka Pi; people tracking; deep learning
Document type: Bachelor graduation qualification work
File type: PDF
Language: Russian
Level of education: Bachelor
Speciality code (FGOS): 09.03.01
Speciality group (FGOS): 090000 - Информатика и вычислительная техника
DOI: 10.18720/SPBPU/3/2024/vr/vr24-1791
Rights: Доступ по паролю из сети Интернет (чтение, печать, копирование)
Additionally: New arrival
Record key: ru\spstu\vkr\28835

Allowed Actions:

Action 'Read' will be available if you login or access site from another network Action 'Download' will be available if you login or access site from another network

Group: Anonymous

Network: Internet

Annotation

В рамках выпускной квалификационной работы была построена система отслеживания людей в видеопотоке на основе модели обнаружения объектов YOLOv8n и алгоритма DeepSORT с использованием сверточной нейронной сети OSNet, предобученной на датасете market1501. Датасет MIAP был вручную очищен от изображений, не подходящих под критерии решаемой задачи. При обучении использовались библиотеки PyTorch, Ultralytics, DVC. В качестве методов оптимизации использовались квантизация и прунинг. Модель была оптимизирована под такие фреймворки как ONNX Runtime, OpenCV, NCNN. Точность обученной модели обнаружения объектов составляет 0.35 mAP@0.5-0.95. Скорость работы модели обнаружения составляет 177 кадра в секунду на целевом устройстве. Работоспособность полученной системы была проверена на персональном компьютере, из-за несовместимости части библиотек с используемой Repka Pi операционной системой Repka OS. Результаты тестирования подтверждают корректность работы системы.

As part of the thesis, a system for tracking people in video streams was built based on the YOLOv8n object detection model and the DeepSORT algorithm using the OSNet convolutional neural network, pre-trained on the market1501 dataset. The MIAP dataset was manually cleaned of images that did not meet the task criteria. PyTorch, Ultralytics, and DVC libraries were used for training. Quantization and pruning were used as optimization methods. The model was optimized for frameworks such as ONNX Runtime, OpenCV, and NCNN. The accuracy of the trained object detection model is 0.35 mAP@0.5-0.95. The detection model operates at a speed of 177 frames per second on the target device. The systems functionality was tested on a personal computer due to the incompatibility of some libraries with the Repka OS operating system used by Repka Pi. The testing results confirm the functionality of the implemented system.

Document access rights

Network User group Action
ILC SPbPU Local Network All Read Print Download
Internet Authorized users SPbPU Read Print Download
-> Internet Anonymous

Table of Contents

  • СПИСОК ОБОЗНАЧЕНИЙ И СОКРАЩЕНИЙ
  • ВВЕДЕНИЕ
  • ГЛАВА 1. ПОСТАНОВКА ЗАДАЧИ
  • ГЛАВА 2. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ
    • 2.1. Алгоритмы отслеживания объектов с использованием нейронных сетей
    • 2.2. Алгоритмы обнаружения с использованием нейросетей
      • 2.2.1. Двухфазные нейронные сети
      • 2.2.2. Однофазные нейронные сети
    • 2.3. Алгоритмы идентификации объектов
      • 2.3.1. SORT
      • 2.3.2. DeepSORT
    • 2.4. Специфика работы нейронных сетей на Repka Pi
    • 2.5. Метрика оценивания качества моделей – средняя точность
    • 2.6. Методы оптимизации нейронных сетей
      • 2.6.1. Дистилляция
      • 2.6.2. Прунинг
      • 2.6.3. Квантизация
    • 2.7. Выводы
  • ГЛАВА 3. ТРЕБОВАНИЯ К РЕАЛИЗУЕМОЙ СИСТЕМЕ
    • 3.1. Выбор технологического стека
    • 3.2. Качественные требования к работе системы
  • ГЛАВА 4. РЕАЛИЗАЦИЯ СИСТЕМЫ ОТСЛЕЖИВАНИЯ ОБЪЕКТОВ
    • 4.1. Выбор и предобработка данных
      • 4.1.1. Описание датасета MIAP
      • 4.1.2. Очистка датасета
      • 4.1.3. Аугментации датасета
      • 4.1.4. Подготовка датасета к обучению
    • 4.2. Построение пайплайна обучения модели
    • 4.3. Обучение модели обнаружения объектов
    • 4.4. Оптимизация модели под целевое устройство
    • 4.5. Реализация системы идентификации объектов
      • 4.5.1. Фильтр Калмана
      • 4.5.2. Получение вектора признаков из обнаруженного объекта
      • 4.5.3. Венгерский алгоритм
    • 4.6. Тестирование работоспособности системы
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
  • Приложение 1
  • Код теста скорости работы YOLOv5
  • Приложение 2
  • Код преобразования датасета MIAP в формат для обучения YOLO
  • Приложение 3
  • Пайплайн обучения dvc.yaml
  • Приложение 4
  • Параметры пайплайна params.yaml
  • Приложение 5
  • Код тестирования на конечном устройстве models_speed_test.py
  • Приложение 6
  • Код объекта TrackingObject
  • Приложение 7
  • Реализация Венгерского алгоритма
  • Приложение 8
  • Реализация DeepSORT

Usage statistics

stat Access count: 0
Last 30 days: 0
Detailed usage statistics