Детальная информация

Название: Разработка Android музыкальной платформы с распознаванием музыкальной нотации: выпускная квалификационная работа магистра: направление 09.04.04 «Программная инженерия» ; образовательная программа 09.04.04_01 «Технология разработки и сопровождения качественного программного продукта»
Авторы: Губенко Надежда Олеговна
Научный руководитель: Молодяков Сергей Александрович
Организация: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Выходные сведения: Санкт-Петербург, 2023
Коллекция: Выпускные квалификационные работы; Общая коллекция
Тематика: сервер; серверная платформа; мобильная платформа; музыкальное приложение; нейронная сеть; оптическое распознавание музыки; модель; распознавание частоты звука; распознавание нотных партитур; набор данных; брокер сообщений; server; server platform; mobile platform; music application; neural network; optical music recognition; model; sound frequency recognition; musical score recognition; data set; message broker
Тип документа: Выпускная квалификационная работа магистра
Тип файла: PDF
Язык: Русский
Уровень высшего образования: Магистратура
Код специальности ФГОС: 09.04.04
Группа специальностей ФГОС: 090000 - Информатика и вычислительная техника
DOI: 10.18720/SPBPU/3/2023/vr/vr23-3924
Права доступа: Доступ по паролю из сети Интернет (чтение, печать)
Ключ записи: ru\spstu\vkr\25054

Разрешенные действия:

Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети

Группа: Анонимные пользователи

Сеть: Интернет

Аннотация

В данной выпускной квалификационной работе рассматривается разработка нейронной сети и нового набора данных для распознавания нотных партитур, а также определение частоты звука и применение разработки на конкретном примере – Android приложении, реализующий музыкальную платформу для обучения основ музыкальной грамотности и техник вокала. В работе проводится обзор требований к качественной музыкальной платформе/сайту/приложению и рассматриваются существующие аналоги приложений. Приводится описание предлагаемых методов в области распознавание нотных партитур. В реализации использовался метод оптического распознавания музыки на основе сочетания сверточной и рекуррентной нейронных сетях. В результате работы был создан готовый программный продукт, который выполняется непосредственно на серверном модуле, в котором хранится нейронная сеть, а результаты отображаются в клиентской части приложения. Программный продукт демонстрирует цель применения нейронной сети распознавания музыкальной нотации на примере музыкальной образовательной платформы, реализованной на операционной системе Android.

This final qualifying work examines the development of a neural network and a new data set for recognizing musical scores, as well as determining the frequency of sound and applying the development to a specific example – an Android application that implements a music platform for teaching the basics of musical literacy and vocal techniques. The paper reviews the requirements for a high-quality music platform /website /application and examines existing analogues of applications. The description of the proposed methods in the field of recognition of musical scores is given. The implementation used a method of optical music recognition based on a combination of convolutional and recurrent neural networks. As a result of the work, a ready-made software product was created, which is executed directly on the server equipment in which the neural network is stored. The software product demonstrates the purpose of using a neural network for recognizing musical notation on the example of a music educational platform implemented on the Android operating system.

Права на использование объекта хранения

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все Прочитать Печать
Интернет Авторизованные пользователи СПбПУ Прочитать Печать
-> Интернет Анонимные пользователи

Оглавление

  • РЕФЕРАТ
  • ABSTRACT
  • Список изображений и таблиц
  • Список терминов и сокращений
  • Введение
  • Общее положение и требования к музыкальной платформе/сайту/приложению в целом
  • 1. Анализ существующих приложений
  • 2. Постановка требований
    • 2.2. Функции портала «Исследование»
    • 2.3. Задачи для описания архитектуры
  • 3. Анализ, проектирование и реализация нейронной сети
    • 3.1. Распознавание печатных нотных партитур
      • 3.1.1. Компьютерное представление печатный нотных данных
      • 3.1.2. Открытые проблемы.
      • 3.1.3. Объединение наборов данных
        • 3.1.3.1. Набор данных рукописных онлайн-музыкальных символов (HOMUS) и алгоритм обучения этих данных
        • 3.1.3.2. Печатные изображения нотных тетрадей PrIMuS
        • 3.1.3.3. Набор данных MUSCIMA ++ для распознавания рукописной оптической музыки
        • 3.1.3.4. DeepScores – набор данных для сегментации, обнаружения и классификация крошечных объектов
      • 3.1.4. Сквозной нейронный подход к оптическому распознаванию музыки
      • 3.1.5. Метрики оценки обученной модели
        • 3.1.5.1. Производительность
        • 3.1.5.2. Сложность обучения
        • 3.1.5.3. Локализация
    • 3.2. Распознавание звуковых музыкальных нот
      • 3.2.1. Компьютерное представление звуковых нотных данных
        • 3.2.1.1. Формат MIDI
        • 3.2.1.2. Формат WAV
      • 3.2.2. Существующие решения
      • 3.2.3. Структура алгоритма определения нот
    • 3.3. Вывод по главе
  • 4. Анализ, проектирование и реализация сервера
    • 4.1. Выбор архитектуры межсервисного взаимодействия серверной части
      • 4.1.1. Синхронная модель
      • 4.1.2. Асинхронная модель
      • 4.1.3. Однопоточная модель
      • 4.1.4. Многопоточная модель
      • 4.1.5. Итоговая модель данной работы
    • 4.2. Шаблоны проектирования Java
      • 4.2.1. Model View Controller
      • 4.2.2. Model-View-Presenter
      • 4.2.3. Model View ViewModel
      • 4.2.4. Выбранный шаблон
    • 4.3. Реализация сервера
      • 4.3.1. Язык программирования Java
      • 4.3.2. Spring Framework
      • 4.3.3. Spring Container
      • 4.3.4. Spring AOP
      • 4.3.5. Spring Security
      • 4.3.6. Spring Boot
      • 4.3.7. Hibernate
      • 4.3.8. Swagger
      • 4.3.9. Maven
    • 4.4. Взаимодействие в стиле REST
    • 4.5. Схема авторизации
    • 4.6. База данных
    • 4.7. Брокер сообщений
    • 4.8. Инфологическая модель сервера
    • 4.9. Вывод по главе
  • 5. Реализация архитектуры «клиент-сервер» на платформе Android
    • 5.1. Обзор мобильной операционной системы
    • 5.2. Разработка интерфейсов и программных модулей
  • 6. Тестирование и DevOps технологии
    • 6.1. Модульное тестирование
    • 6.2. Интеграционное тестирование
    • 6.4. Динамический анализ кода
    • 6.5. DevOps
    • 6.6. Система контроля версия
    • 6.7. Создание dev-окружения
    • 6.8. Настройка CI/CD на Gitlab
    • 6.9. Выбор системы непрерывной интеграции
    • 6.10. Непрерывное тестирование
    • 6.11. Настройка конфигурационных файлов Kubernetes
      • 6.11.1. Deployment
      • 6.11.2. Service
      • 6.11.3. Ingress
      • 6.11.4. Secret
    • 6.12. Вывод к главе
  • Заключение
  • Список литературы
  • Приложение 1.

Статистика использования

stat Количество обращений: 3
За последние 30 дней: 1
Подробная статистика