Extract Audio Features

Оптимальная экстракция функции аудио в Live Editor

Описание

Задача Функций аудио Извлечения позволяет вам сконфигурировать оптимизированный конвейер извлечения признаков путем выбора функций и параметров графически. Можно снова использовать выход от Функций аудио Извлечения, чтобы применить извлечение признаков к целым наборам данных. Задача автоматически генерирует код MATLAB® для вашего live скрипта.

Используя эту задачу, вы можете:

  • Извлеките функции звуковых сигналов, характерных для рабочих процессов глубокого обучения и машинного обучения.

  • Создайте объект извлечения признаков для использования с большими наборами данных.

Чтобы узнать больше об интерактивных задачах в live скриптах, смотрите, Добавляют Интерактивные Задачи к Live Script (MATLAB).

Откройте задачу

  • На вкладке Live Editor выберите Task> Extract Audio Features.

  • В блоке кода в скрипте введите соответствующее ключевое слово, такое как extract, audio, или feature. Выберите Extract Audio Features из предложенных завершений команды.

Примеры

развернуть все

Читайте в звуковом сигнале, audioIn, и его частота дискретизации, fs.

[audioIn,fs] = audioread('FemaleSpeech-16-8-mono-3secs.wav');

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

Создайте audioDatastore возразите, что точки к аудиосэмплам включали с Audio Toolbox™.

folder = fullfile(matlabroot,'toolbox','audio','samples');
ads = audioDatastore(folder);

Найдите все файлы, которые соответствуют частоте дискретизации 44,1 кГц и затем подмножеству datastore.

keepFile = cellfun(@(x)contains(x,'44p1'),ads.Files);
ads = subset(ads,keepFile);

Считайте один файл из набора данных.

[audioIn,adsInfo] = read(ads);
fs = adsInfo.SampleRate;

Извлеките функции аудио из audioIn использование Функций аудио Извлечения живая задача.

Функции аудио Извлечения живая задача возвращают массив, содержащий извлеченные функции. Размерностями массива является numHops numFeatures numChannels, где numHops количество анализируемых окон, numFeatures количество функций, которые вы извлекли, и numChannels количество каналов в исходном аудио.

[numHops,numFeatures,numChannels] = size(features)
numHops =

        1053


numFeatures =

    43


numChannels =

     1

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

plot(features(:,40,:))
title('Spectral Centroid')
xlabel('Hop')
ylabel('Frequency (Hz)')

Задача Функций аудио Извлечения также возвращает сконфигурированный audioFeatureExtractor объект. Объект сконфигурирован параметрами, которые вы устанавливаете в задаче.

extractor
extractor = 

  audioFeatureExtractor with properties:

   Properties
                     Window: [1024×1 double]
              OverlapLength: 512
                 SampleRate: 44100
                  FFTLength: []
    SpectralDescriptorInput: 'linearSpectrum'

   Enabled Features
     gtcc, gtccDelta, gtccDeltaDelta, spectralCentroid, spectralEntropy, pitch
     harmonicRatio

   Disabled Features
     linearSpectrum, melSpectrum, barkSpectrum, erbSpectrum, mfcc, mfccDelta
     mfccDeltaDelta, spectralCrest, spectralDecrease, spectralFlatness, spectralFlux, spectralKurtosis
     spectralRolloffPoint, spectralSkewness, spectralSlope, spectralSpread


   To extract a feature, set the corresponding property to true.
   For example, obj.mfcc = true, adds mfcc to the list of enabled features.

Можно использовать сконфигурированный audioFeatureExtractor возразите, чтобы извлечь функции из целого набора данных. Например, в то время как audioDatastore объект имеет непрочитанные данные, считайте файл из datastore и затем извлеките функции. Во-первых, сбросьте audioDatastore возразите так, чтобы вы читали с начала.

reset(ads)
while hasdata(ads)
    audioIn = read(ads);
    features = extract(extractor,audioIn);
end

Copyright 2019 The MathWorks, Inc.

Советы

Задача Функций аудио Извлечения обеспечивает графический интерфейс пользователя, чтобы сконфигурировать audioFeatureExtractor объект. Для получения дополнительной информации на параметрах конфигурации, смотрите audioFeatureExtractor.

Введенный в R2020a