Руководство по классификации аудио,Руководство по классификации аудио

Задача MediaPipe Audio Classifier позволяет классифицировать аудиоклипы по набору определенных категорий, например, гитарная музыка, гудок поезда или пение птиц. Категории определяются во время обучения модели. Эта задача обрабатывает аудиоданные с помощью модели машинного обучения (ML) в виде независимых аудиоклипов или непрерывного потока и выводит список потенциальных категорий, ранжированных по убыванию оценки вероятности.

Попробуй это!

Начать

Начните использовать эту задачу, следуя одному из этих руководств по реализации для вашей целевой платформы. Эти руководства для конкретных платформ покажут вам базовую реализацию этой задачи, включая рекомендуемую модель и пример кода с рекомендуемыми параметрами конфигурации:

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

Подробности задачи

В этом разделе описаны возможности, входы, выходы и параметры конфигурации этой задачи.

Функции

  • Обработка входного аудио . Обработка включает в себя передискретизацию звука, буферизацию, кадрирование и преобразование Фурье.
  • Язык карты меток — установите язык, используемый для отображаемых имен.
  • Порог оценки — фильтрация результатов на основе оценок прогноза.
  • Обнаружение Top-k — фильтрация результатов обнаружения чисел.
  • Пометить список разрешенных и список запрещенных — укажите обнаруженные категории.
Входные данные задачи Результаты задачи
Входные данные могут быть одним из следующих типов:
  • Аудиоклипы
  • Аудиопоток
Audio Classifier выводит список категорий, содержащий:
  • Индекс категории: индекс категории в выходных данных модели.
  • Оценка: оценка достоверности для этой категории, обычно вероятность в [0,1]
  • Имя категории (необязательно): имя категории, указанное в метаданных модели TFLite, если они доступны.
  • Отображаемое имя категории (необязательно): отображаемое имя категории, указанное в метаданных модели TFLite, на языке, указанном в параметрах локали отображаемых имен, если они доступны.

Варианты конфигурации

Эта задача имеет следующие параметры конфигурации:

Название опции Описание Диапазон значений Значение по умолчанию
running_mode Устанавливает режим выполнения задачи. Аудио Классификатор имеет два режима:

AUDIO_CLIPS: режим запуска аудиозадачи для независимых аудиоклипов.

AUDIO_STREAM: режим запуска аудиозадачи в аудиопотоке, например, с микрофона. В этом режиме необходимо вызвать resultListener, чтобы настроить прослушиватель на асинхронное получение результатов классификации.
{ AUDIO_CLIPS, AUDIO_STREAM } AUDIO_CLIPS
display_names_locale Задает язык меток, которые будут использоваться для отображаемых имен, представленных в метаданных модели задачи, если они доступны. По умолчанию en английский язык. Вы можете добавить локализованные метки к метаданным пользовательской модели с помощью API записи метаданных TensorFlow Lite. Код региона ru
max_results Устанавливает необязательное максимальное количество возвращаемых результатов классификации с наивысшим баллом. Если < 0, будут возвращены все доступные результаты. Любые положительные числа -1
score_threshold Устанавливает порог оценки прогноза, который переопределяет тот, который указан в метаданных модели (если таковые имеются). Результаты ниже этого значения отклоняются. [0,0, 1,0] Не задано
category_allowlist Устанавливает необязательный список разрешенных имен категорий. Если поле не пусто, результаты классификации, имя категории которых отсутствует в этом наборе, будут отфильтрованы. Повторяющиеся или неизвестные названия категорий игнорируются. Эта опция является взаимоисключающей с category_denylist , и использование обеих приводит к ошибке. Любые строки Не задано
category_denylist Устанавливает необязательный список имен категорий, которые не разрешены. Если значение не пустое, результаты классификации, имя категории которых находится в этом наборе, будут отфильтрованы. Повторяющиеся или неизвестные названия категорий игнорируются. Этот параметр является взаимоисключающим с category_allowlist , и использование обоих приводит к ошибке. Любые строки Не задано
result_callback Настраивает прослушиватель результатов на асинхронное получение результатов классификации, когда аудиоклассификатор находится в режиме аудиопотока. Может использоваться только в том случае, если для режима работы установлено значение AUDIO_STREAM Н/Д Не задано

Модели

Для аудиоклассификатора необходимо загрузить и сохранить модель классификации аудио в каталоге вашего проекта. При разработке этой задачи начните с рекомендуемой по умолчанию модели для вашей целевой платформы. Другие доступные модели обычно обеспечивают компромисс между производительностью, точностью, разрешением и требованиями к ресурсам, а в некоторых случаях включают дополнительные функции.

Модель Yamnet — это классификатор аудиособытий, обученный на наборе данных AudioSet для прогнозирования аудиособытий, определенных в данных AudioSet. Информацию об аудиособытиях, распознаваемых этой моделью, см. в списке меток модели.

Название модели Введите форму Тип квантования Версии
ЯмНет 1 х 15600 Нет (с плавающей запятой32) Последний

Тесты задач

Вот тесты задач для всего конвейера, основанные на предварительно обученных моделях. Результатом задержки является средняя задержка на Pixel 6 с использованием ЦП/ГП.

Название модели Задержка процессора Задержка графического процессора
ЯмНет 12,29 мс -
,

Задача MediaPipe Audio Classifier позволяет классифицировать аудиоклипы по набору определенных категорий, например, гитарная музыка, гудок поезда или пение птиц. Категории определяются во время обучения модели. Эта задача обрабатывает аудиоданные с помощью модели машинного обучения (ML) в виде независимых аудиоклипов или непрерывного потока и выводит список потенциальных категорий, ранжированных по убыванию оценки вероятности.

Попробуй это!

Начать

Начните использовать эту задачу, следуя одному из этих руководств по реализации для вашей целевой платформы. Эти руководства для конкретных платформ покажут вам базовую реализацию этой задачи, включая рекомендуемую модель и пример кода с рекомендуемыми параметрами конфигурации:

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

Подробности задачи

В этом разделе описаны возможности, входы, выходы и параметры конфигурации этой задачи.

Функции

  • Обработка входного аудио . Обработка включает в себя передискретизацию звука, буферизацию, кадрирование и преобразование Фурье.
  • Язык карты меток — установите язык, используемый для отображаемых имен.
  • Порог оценки — фильтрация результатов на основе оценок прогноза.
  • Обнаружение Top-k — фильтрация результатов обнаружения чисел.
  • Пометить список разрешенных и список запрещенных — укажите обнаруженные категории.
Входные данные задачи Результаты задачи
Входные данные могут быть одним из следующих типов:
  • Аудиоклипы
  • Аудиопоток
Audio Classifier выводит список категорий, содержащий:
  • Индекс категории: индекс категории в выходных данных модели.
  • Оценка: оценка достоверности для этой категории, обычно вероятность в [0,1]
  • Имя категории (необязательно): имя категории, указанное в метаданных модели TFLite, если они доступны.
  • Отображаемое имя категории (необязательно): отображаемое имя категории, указанное в метаданных модели TFLite, на языке, указанном в параметрах локали отображаемых имен, если они доступны.

Варианты конфигурации

Эта задача имеет следующие параметры конфигурации:

Название опции Описание Диапазон значений Значение по умолчанию
running_mode Устанавливает режим выполнения задачи. Аудио Классификатор имеет два режима:

AUDIO_CLIPS: режим запуска аудиозадачи для независимых аудиоклипов.

AUDIO_STREAM: режим запуска аудиозадачи в аудиопотоке, например, с микрофона. В этом режиме необходимо вызвать resultListener, чтобы настроить прослушиватель на асинхронное получение результатов классификации.
{ AUDIO_CLIPS, AUDIO_STREAM } AUDIO_CLIPS
display_names_locale Задает язык меток, которые будут использоваться для отображаемых имен, представленных в метаданных модели задачи, если они доступны. По умолчанию en английский язык. Вы можете добавить локализованные метки к метаданным пользовательской модели с помощью API записи метаданных TensorFlow Lite. Код региона ru
max_results Устанавливает необязательное максимальное количество возвращаемых результатов классификации с наивысшим баллом. Если < 0, будут возвращены все доступные результаты. Любые положительные числа -1
score_threshold Устанавливает порог оценки прогноза, который переопределяет тот, который указан в метаданных модели (если таковые имеются). Результаты ниже этого значения отклоняются. [0,0, 1,0] Не задано
category_allowlist Устанавливает необязательный список разрешенных имен категорий. Если поле не пусто, результаты классификации, имя категории которых отсутствует в этом наборе, будут отфильтрованы. Повторяющиеся или неизвестные названия категорий игнорируются. Эта опция является взаимоисключающей с category_denylist , и использование обеих приводит к ошибке. Любые строки Не задано
category_denylist Устанавливает необязательный список имен категорий, которые не разрешены. Если значение не пустое, результаты классификации, имя категории которых находится в этом наборе, будут отфильтрованы. Повторяющиеся или неизвестные названия категорий игнорируются. Этот параметр является взаимоисключающим с category_allowlist , и использование обоих приводит к ошибке. Любые строки Не задано
result_callback Настраивает прослушиватель результатов на асинхронное получение результатов классификации, когда аудиоклассификатор находится в режиме аудиопотока. Может использоваться только в том случае, если для режима работы установлено значение AUDIO_STREAM Н/Д Не задано

Модели

Для аудиоклассификатора необходимо загрузить и сохранить модель классификации аудио в каталоге вашего проекта. При разработке этой задачи начните с рекомендуемой по умолчанию модели для вашей целевой платформы. Другие доступные модели обычно обеспечивают компромисс между производительностью, точностью, разрешением и требованиями к ресурсам, а в некоторых случаях включают дополнительные функции.

Модель Yamnet — это классификатор аудиособытий, обученный на наборе данных AudioSet для прогнозирования аудиособытий, определенных в данных AudioSet. Информацию об аудиособытиях, распознаваемых этой моделью, см. в списке меток модели.

Название модели Введите форму Тип квантования Версии
ЯмНет 1 х 15600 Нет (с плавающей запятой32) Последний

Тесты задач

Вот тесты задач для всего конвейера, основанные на предварительно обученных моделях. Результатом задержки является средняя задержка на Pixel 6 с использованием ЦП/ГП.

Название модели Задержка процессора Задержка графического процессора
ЯмНет 12,29 мс -