Эта статья была впервые опубликована на:Уокер ИИ
Подавляющее большинство звуковых функций возникает в задачах распознавания речи, и они могут уменьшить необработанный сигнал выборки формы волны, тем самым ускоряя понимание машиной семантического значения в звуке. С конца 1990-х эти звуковые функции также использовались в задачах поиска музыкальной информации, таких как распознавание инструментов, и появилось больше функций, разработанных для звуковой музыки.
1. Категории звуковых функций
Распознавание различных категорий звуковых характеристик не для точной классификации определенной функции, а для углубления понимания физического значения функции.Как правило, мы можем различать звуковые функции по следующим параметрам:
(1) Извлекается ли признак непосредственно из сигнала моделью или основан на статистике, полученной из выходных данных модели, такой как среднее значение, дисперсия и т. д.;
(2) Независимо от того, представляет ли объект переходное или глобальное значение, переходное состояние обычно выражается в единицах кадра, а глобальное охватывает более длительное измерение времени;
(3) Степень абстракции признаков, самый низкий уровень абстракции основных признаков также проще всего извлечь из исходного аудиосигнала, который можно в дальнейшем обработать как промежуточный признак более высокого уровня, представляющий общие музыкальные элементы в партитуре. , такие как высота тона, начало ноты и т. д., время начала и т. д. Высокоуровневые функции являются наиболее абстрактными и в основном используются для музыкальных жанров и эмоциональных задач;
(4) В зависимости от различий в процессе выделения признаков его можно разделить на: признаки, извлеченные непосредственно из исходного сигнала (например, скорость пересечения нуля), признаки, полученные путем преобразования сигнала в частоты (например, спектральный центроид), и те, которые получены с помощью конкретной модели Особенности (например, мелодия) и функции (например, MFCC), полученные путем изменения шкалы количественных функций, вдохновленных человеческим слуховым восприятием.
Мы берем «различия в процессе извлечения признаков» в качестве основного эталона классификации и перечисляем наиболее общие признаки в каждой категории:
В то же время мы также обнаружили, что некоторые признаки не относятся ни к одной из категорий, таких как MFCC, потому что выделение MFCC преобразует сигнал из временной области в частотную область, а затем фильтрует его в соответствии со шкалой MEL, которая имитирует слуховую реакцию человека, поэтому относится как к характеристикам частотной области, так и к характеристике восприятия.
2. Обычно используемые инструменты извлечения
Ниже перечислены некоторые часто используемые инструменты и платформы для извлечения аудиофункций.
название | адрес | подходящий язык |
---|---|---|
Aubio | aubio.org | c/python |
Essentia | essentia.upf.edu | c++/python |
Librosa | librosa.org | python |
Madmom | madmom.readthedocs.org | python |
pyAudioAnalysis | GitHub.com/Unified Click What/Друзья… | python |
Vamp-plugins | www.vamp-plugins.org | c++/python |
Yaafe | yaafe.sourceforge.net | python/matlab |
3. Обработка аудиосигнала
Цифровой звуковой сигнал представляет собой серию цифровых представлений непрерывно меняющихся выборок во временной области, часто называемую «формой волны». Для выполнения операций анализа цифрового сигнала сигнал дискретизируется и квантуется.
Выборка относится к процессу непрерывной временной дискретизации. Равномерная выборка относится к выборке через равные промежутки времени. Количество звуковых выборок, которые необходимо собрать в секунду, называется частотой дискретизации. 44,1 кГц и 11 кГц, часто встречающиеся в аудиофайлах, относятся к Частота дискретизации.
Квантование преобразует непрерывные сигналы в дискретные числа.Во-первых, вся амплитуда делится на набор конечных шагов квантования.Разделение амплитуды может быть равным или неравным.Значениям отсчетов, попадающим в определенный шаг, присваивается одно и то же значение.квантуется ценность. Битовая глубина в аудиофайле представляет собой квантованное значение, а 16-битная битовая глубина представляет собой квантование амплитуды до 2^16.
Закон Найквиста гласит, что сигнал может быть точно восстановлен из его выборочных значений, если частота дискретизации больше или равна 2-кратному значению самой высокой частоты в сигнале, фактически частота дискретизации значительно превышает частоту Найквиста.
4. Общие преобразования
4.1 Кратковременное преобразование Фурье
Кратковременное преобразование Фурье (STFT) подходит для спектрального анализа медленных изменяющихся во времени сигналов и широко используется в анализе и обработке аудио и изображений. Метод заключается в том, чтобы сначала разделить сигнал на кадры, а затем выполнить преобразование Фурье для каждого кадра. Каждый кадр речевого сигнала можно рассматривать как вырезанный из различных форм стационарного сигнала, а краткосрочный спектр каждого кадра речи является аппроксимацией спектра каждой формы стационарного сигнала.
Поскольку речевой сигнал является кратковременно устойчивым, сигнал можно разделить на кадры и вычислить преобразование Фурье определенного кадра, которое является кратковременным преобразованием Фурье.
Преобразование Фурье (БПФ) может преобразовывать сигнал из временной области в частотную область, в то время как обратное преобразование Фурье (IFFT) может преобразовывать сигнал из частотной области в сигнал во временной области; преобразование Фурье преобразует сигнал из временной области в частотную область Домен является наиболее распространенным способом аудио обработка сигналов. Спектрограмма, полученная с помощью STFT, также называется спектрограммой или спектрограммой в звуковом сигнале.
4.2 Дискретное косинусное преобразование
Дискретное косинусное преобразование (ДКП для дискретного косинусного преобразования) — это преобразование, связанное с преобразованием Фурье, которое похоже на дискретное преобразование Фурье (ДПФ для дискретного преобразования Фурье), но использует только действительные числа. Дискретное косинусное преобразование эквивалентно дискретному преобразованию Фурье примерно вдвое большей его длины, которое выполняется над вещественной четной функцией (поскольку преобразование Фурье вещественной четной функции все еще является вещественной четной функцией)), в некоторых деформациях необходимо для перемещения входной или выходной позиции на полединицы.
4.3 Дискретное вейвлет-преобразование
Дискретное вейвлет-преобразование (Discrete Wavelet Transform) полезно при численном анализе и частотно-временном анализе.Дискретное вейвлет-преобразование дискретизирует масштаб и перевод основного вейвлета.
4.4 Спектр Mel и кепстр Mel
Спектрограмма часто представляет собой очень большое изображение, и для того, чтобы получить звуковые характеристики нужного размера, ее часто преобразовывают в мел-спектр, пропуская ее через банки мел-масштабных фильтров.
Восприятие высоты звука человеческим ухом примерно линейно связано с логарифмом основной частоты звука. По шкале Мел, если мел-частоты двух речей различаются в два раза, высота звука, которую может воспринимать человеческое ухо, примерно в два раза больше. При малой частоте mel быстро меняется в зависимости от Гц; при большой частоте mel нарастает очень медленно, а наклон кривой мал. Это показывает, что человеческое ухо более чувствительно к низкочастотным тонам, а человеческое ухо очень глухо на высоких частотах, что вдохновлено набором фильтров Mel-scale.
Фильтр мел-шкалы состоит из нескольких треугольных фильтров, фильтры плотные на низких частотах и имеют большое пороговое значение, а фильтры на высоких частотах разреженные и имеют низкое пороговое значение. Это как раз соответствует объективному закону, что чем выше частота, тем тупее человеческое ухо. Форма фильтра, показанная на рисунке выше, называется банком Mel-фильтров с той же областью банка, которая широко используется в области человеческого голоса (распознавание речи, распознавание говорящего) и других областях, но если используется нечеловеческий голос. поле, много высокочастотной информации будет потеряно. В настоящее время мы можем предпочесть банк Mel-фильтров с такой же высотой блока.
Реализация спектра MEL в librosa:
import numpy as np
def melspectrogram(y=None, sr=22050, S=None, n_fft=2048, hop_length=512,
power=2.0, **kwargs):
S, n_fft = _spectrogram(y=y, S=S, n_fft=n_fft, hop_length=hop_length, power=power)
# Build a Mel filter
mel_basis = filters.mel(sr, n_fft, **kwargs)
return np.dot(mel_basis, S)
А кепстр Mel выполняет кепстральный анализ спектра Mel (возьмите логарифм и выполните преобразование DCT), чтобы получить кепстр Mel.
# -- Mel spectrogram and MFCCs -- #
def mfcc(y=None, sr=22050, S=None, n_mfcc=20, **kwargs):
if S is None:
S = power_to_db(melspectrogram(y=y, sr=sr, **kwargs))
return scipy.fftpack.dct(S, axis=0, type=dct_type, norm=norm)[:n_mfcc]
4.5 Постоянное Q-преобразование
В музыке все тона состоят из 12 октав одинаковой темперации, что соответствует двенадцати полутонам на октаву в фортепиано. Соотношение частот между этими полутонами составляет 21/12. Очевидно, две октавы одного уровня звука, верхняя октава в два раза превышает частоту нижней октавы. Следовательно, в музыке звуки распределяются экспоненциально, но звуковой спектр, полученный нашим преобразованием Фурье, распределяется линейно, и точки частот двух не могут соответствовать один к одному, что будет указывать оценочное значение частоты некоторых шкал. .происходит ошибка. Поэтому современный анализ музыкальных звуков обычно использует алгоритм частотно-временного преобразования с тем же экспоненциальным законом распределения: преобразование с постоянной добротностью.
CQT относится к банку фильтров, центральная частота которого распределена по экспоненциальному закону, а полоса пропускания фильтра отличается, но отношение центральной частоты к полосе пропускания является постоянным Q. Оно отличается от преобразования Фурье тем, что частота горизонтальной оси его спектра нелинейна, а основана на log2, а длина окна фильтра может быть изменена в соответствии с частотой спектральной линии для получения лучших характеристик. Поскольку распределение частот CQT и шкалы одинаково, значение амплитуды музыкального сигнала на каждой нотной частоте может быть получено непосредственно путем вычисления спектра CQT музыкального сигнала.
использованная литература
«Учебник по глубокому обучению для поиска музыкальной информации»
«STFT и спектрограммы, функции Mel Bank и Mel Cepstrums (MFCC)»
«Алгоритм преобразования спектра на основе распознавания музыки — CQT»
PS: Для получения дополнительной технической галантереи, пожалуйста, обратите внимание на [Публичный аккаунт | xingzhe_ai] и обсудите с ходоками!