Извлеките gammatone cepstral коэффициенты, логарифмическая энергия, дельта и дельта дельты
coeffs = gtcc(audioIn,fs)coeffs = gtcc(___,Name,Value)[coeffs,delta,deltaDelta,loc] = gtcc(___) задает опции с помощью одного или нескольких аргументов пары coeffs = gtcc(___,Name,Value)Name,Value.
[ возвращает дельту, дельту дельты и местоположение в выборках, соответствующих каждому окну данных. Этот выходной синтаксис может использоваться с любым из предыдущих входных синтаксисов.coeffs,delta,deltaDelta,loc] = gtcc(___)
Получите gammatone cepstral коэффициенты для звукового файла с помощью настроек по умолчанию. Постройте график результатов.
[audioIn,fs] = audioread('Counting-16-44p1-mono-15secs.wav'); [coeffs,~,~,loc] = gtcc(audioIn,fs); t = loc./fs; plot(t,coeffs) xlabel('Time (s)') title('Gammatone Cepstral Coefficients') legend('logE','0','1','2','3','4','5','6','7','8','9','10','11','12', ... 'Location','northeastoutside')

Читайте в звуковом файле.
[audioIn,fs] = audioread('Turbine-16-44p1-mono-22secs.wav');
Вычислите 20 GTCC использующие фильтры, равномерно распределенные в шкале ERB между hz2erb(62.5) и hz2erb(12000). Вычислите коэффициенты с помощью 50 MS Windows с перекрытием на 25 мс. Замените 0th коэффициент на логарифмическую энергию. Используйте фильтрацию временного интервала.
[coeffs,~,~,loc] = gtcc(audioIn,fs, ... 'NumCoeffs',20, ... 'FrequencyRange',[62.5,12000], ... 'WindowLength',round(0.05*fs), ... 'OverlapLength',round(0.025*fs), ... 'LogEnergy','Replace', ... 'FilterDomain','Time');
Постройте график результатов.
t = loc./fs; plot(t,coeffs) xlabel('Time (s)') title('Gammatone Cepstral Coefficients') legend('logE','1','2','3','4','5','6','7','8','9','10','11','12','13', ... '14','15','16','17','18','19','Location','northeastoutside');

audioIn — Входной сигналВходной сигнал, заданный как вектор или матрица. Если задано как матрица, gtcc обрабатывает столбцы матрицы как отдельные звуковые каналы.
Типы данных: single | double
fs — Частота дискретизации (Гц)Частота дискретизации входного сигнала в Гц, заданном как положительная скалярная величина.
Типы данных: single | double
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
coeffs = gtcc(audioIn,fs,'LogEnergy','Replace') возвращает gammatone cepstral коэффициенты для входного аудиосигнала, выбранного на уровне Гц fs. Для каждого аналитического окна первый коэффициент в векторе coeffs заменяется логарифмической энергией входного сигнала.'WindowLength' — Количество выборок в аналитическом окнеround(0.03*fs) (значение по умолчанию) | положительное скалярное целое числоКоличество выборок в аналитическом окне раньше вычисляло коэффициенты, заданные как пара, разделенная запятой, состоящая из 'WindowLength' и целого числа в области значений [2, ]. Если незаданный, значения по умолчанию size(audioIn,1)WindowLength к .round(0.03*fs)
Типы данных: single | double
'OverlapLength' — Количество выборок перекрывается между смежными окнамиround(0.02*fs) (значение по умолчанию) | неотрицательный скалярКоличество выборок перекрывается между смежными окнами, заданными как пара, разделенная запятой, состоящая из 'OverlapLength' и целого числа в области значений [0, WindowLength). Если незаданный, значения по умолчанию OverlapLength к .round(0.02*fs)
Типы данных: single | double
'NumCoeffs' — Количество коэффициентов возвращено13 (значение по умолчанию) | положительное скалярное целое числоКоличество коэффициентов, возвращенных для каждого окна данных, заданных как пара, разделенная запятой, состоящая из 'NumCoeffs' и целого числа в области значений [2, v]. v является количеством допустимых полос пропускания. Если незаданный, значения по умолчанию NumCoeffs к 13.
Количество допустимых полос пропускания задано как количество шагов ERB (ERBN) в частотном диапазоне набора фильтров. Частотный диапазон набора фильтров задан FrequencyRange.
Типы данных: single | double
'FilterDomain' — Область, в которой можно применить фильтрацию'Frequency' (значение по умолчанию) | 'Time'Область, в которой можно применить фильтрацию, заданную как пара, разделенная запятой, состоящая из 'FilterDomain' и 'Frequency' или 'Time'. Если незаданный, значения по умолчанию FilterDomain к Frequency.
Типы данных: string | char
'FrequencyRange' — Частотный диапазон gammatone набора фильтров (Гц)[50 fs/2] (значение по умолчанию) | двухэлементный вектор - строкаЧастотный диапазон gammatone набора фильтров в Гц, заданном как пара, разделенная запятой, состоящая из 'FrequencyRange' и двухэлементный вектор - строка из увеличения значений в области значений [0, fs/2]. Если незаданный, значения по умолчанию FrequencyRange к [50, fs/2]
Типы данных: single | double
'FFTLength' — Количество интервалов в ДПФWindowLength (значение по умолчанию) | положительное скалярное целое числоКоличество интервалов раньше вычисляло ДПФ оконных входных выборок, заданных как пара, разделенная запятой, состоящая из 'FFTLength' и положительного скалярного целого числа. Если незаданный, значения по умолчанию FFTLength к WindowLength.
Типы данных: single | double
'DeltaWindowLength' — Количество коэффициентов раньше вычисляло дельту и дельту дельты2 (значение по умолчанию) | нечетное целое число, больше, чем дваКоличество коэффициентов раньше вычисляло дельту и значения дельты дельты, заданные как пара, разделенная запятой, состоящая из 'DeltaWindowLength' и два или нечетное целое число, больше, чем два. Если незаданный, значения по умолчанию DeltaWindowLength к 2.
Если DeltaWindowLength установлен в 2, delta дан различием между текущими коэффициентами и предыдущими коэффициентами.
Если DeltaWindowLength установлен в нечетное целое число, больше, чем 2, следующее уравнение задает их значения:

Функция использует приближение наименьших квадратов локального наклона по области вокруг коэффициентов текущего аналитического окна. Дельта cepstral значения вычисляется путем подбора кривой cepstral коэффициентам соседних аналитических окон (аналитические окна M перед текущим аналитическим окном и аналитическими окнами M после текущего аналитического окна) к прямой линии. Для получения дополнительной информации см. [1].
Типы данных: single | double
'LogEnergy' — Регистрируйте энергетическое использование'Append' (значение по умолчанию) | 'Replace' | 'Ignore'Регистрируйте энергетическое использование, заданное как пара, разделенная запятой, состоящая из 'LogEnergy' и 'Append', 'Replace' или 'Ignore'. Если незаданный, значения по умолчанию LogEnergy к Append.
добавление Функция предварительно ожидает логарифмическую энергию к содействующему вектору. Длина содействующего вектора равняется 1 + NumCoeffs.
замена Функция заменяет первый коэффициент на логарифмическую энергию сигнала. Длиной содействующего вектора является NumCoeffs.
'Ignore' – Функция не вычисляет или возвращает логарифмическую энергию.
Типы данных: char | string
coeffs — Коэффициенты Gammatone cepstralКоэффициенты Gammatone cepstral, возвращенные как L-by-M матрица или L-by-M-by-N массив, где:
L Количество аналитических окон звуковой сигнал разделено в. Входной размер, WindowLength и OverlapLength управляют этой размерностью: L = floor((size(audioIn,1) − WindowLength))/(WindowLength − OverlapLength) + 1.
M Количество коэффициентов возвращено на кадр. Это значение определяется NumCoeffs и LogEnergy.
Когда LogEnergy установлен в:
добавление Объект предварительно ожидает логарифмическую энергетическую ценность к содействующему вектору. Длина содействующего вектора равняется 1 + NumCoeffs.
замена Объект заменяет первый коэффициент на логарифмическую энергию сигнала. Длиной содействующего вектора является NumCoeffs.
'Ignore' – Объект не вычисляет или возвращает логарифмическую энергию. Длиной содействующего вектора является NumCoeffs.
N Количество входных каналов (столбцы). Этим значением является .size(audioIn,2)
Типы данных: single | double
\delta Изменитесь в коэффициентахИзменитесь в коэффициентах от одного аналитического окна до другого, возвращенного как L-by-M матрица или L-by-M-by-N массив. Массив delta одного размера и тип данных как массив coeffs. Смотрите coeffs для определений L, M и N.
Функция использует приближение наименьших квадратов локального наклона по области вокруг выборки текущего времени. Для получения дополнительной информации см. [1].
Типы данных: single | double
deltaDelta — Изменитесь в значениях дельтыИзменитесь в значениях delta, возвращенных как L-by-M матрица или L-by-M-by-N массив. Массив deltaDelta одного размера и тип данных как массивы delta и coeffs. Смотрите coeffs для определений L, M и N.
Функция использует приближение наименьших квадратов локального наклона по области вокруг выборки текущего времени. Для получения дополнительной информации см. [1].
Типы данных: single | double
loc — Местоположение последней выборки в каждом аналитическом окнеМестоположение последней выборки в каждом аналитическом окне, возвращенном как вектор-столбец с одинаковым числом строк как coeffs.
Типы данных: single | double
Функция gtcc разделяет целые данные в перекрывающиеся сегменты. Длина каждого аналитического окна определяется WindowLength. Длина перекрытия между аналитическими окнами определяется OverlapLength. Алгоритм, чтобы определить gammatone cepstral коэффициенты зависит от области фильтра, заданной FilterDomain. Область фильтра по умолчанию является частотой.
gtcc вычисляет gammatone cepstral коэффициенты, логарифмическая энергетическая ценность, дельта и значения дельты дельты для каждого аналитического окна согласно алгоритму, описанному в cepstralFeatureExtractor.
Если FilterDomain задан как 'Time', функция gtcc использует gammatoneFilterBank, чтобы применить фильтрацию временного интервала. Основные шаги алгоритма gtcc обрисованы в общих чертах схемой.

FrequencyRange и частота дискретизации (fs) параметры установлены на наборе фильтров с помощью входа пар "имя-значение" для функции gtcc. Количество просачивается, gammatone набор фильтров задан, когда .This примерно соответствует размещению фильтра gammatone каждые 0,9 мм в улитке уха.hz2erb(FrequencyRange(2)) − hz2erb(FrequencyRange(1))
Вывод от gammatone набора фильтров является многоканальным сигналом. Каждый канал вывод от gammatone набора фильтров буферизуется в перекрытые аналитические окна, как задано WindowLength и OverlapLength. Затем периодическое Окно Хэмминга применяется к каждому аналитическому окну. Энергия для каждого аналитического окна данных вычисляется. STE каналов конкатенирована. Конкатенированный сигнал затем передается через функцию логарифма и преобразовывается к cepstral области с помощью дискретного косинусного преобразования (DCT).
Логарифмическая энергия вычисляется на исходный звуковой сигнал с помощью той же схемы буферизации, применился к gammatone набору фильтров вывод.
[1] Rabiner, Лоуренс Р. и Рональд В. Шафер. Теория и приложения цифровой речевой обработки. Верхний Сэддл-Ривер, NJ: Пирсон, 2010.
[2] Шао, ян, Чжаочжан Цзинь, Дэлян Ван и Сундарарэджэн Сринивасан. "Слуховая функция устойчивого распознавания речи". Международная конференция IEEE по вопросам акустики, речи и обработки сигналов. 2009.
[3] Валеро, X., и F. Псевдоним. "Коэффициенты Gammatone Cepstral: Биологически Вдохновленные Функции Неречевой Классификации Аудио". Транзакции IEEE на Мультимедиа. Издание 14, Выпуск 6, 2012, стр 1684–1689.
cepstralFeatureExtractor | mfcc | pitch | voiceActivityDetector
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.