Сгенерируйте спектр октавы
p = poctave(x,fs)
p = poctave(xt)
p = poctave(___,Name,Value)
p = poctave(pxx,fs,f,Name,Value,'psd')
[p,cf] = poctave(___)
poctave(___)
возвращает спектр октавы p
= poctave(x
,fs
)x
сигнала, выбранного на уровне fs
. Спектр октавы является средней степенью по полосам октавы, как задано стандартом ANSI S1.11 [1]. Если x
является матрицей, то функция оценивает спектр октавы независимо для каждого столбца и возвращает результат в соответствующем столбце p
.
задает дополнительные опции для любого из предыдущих аргументов пары "имя-значение" использования синтаксисов.p
= poctave(___,Name,Value
)
poctave(___)
без выходных аргументов строит спектр октавы в текущей фигуре.
Сгенерировать выборки белого Гауссова шума. Создайте сигнал псевдорозового шума путем фильтрации белого шума с фильтром, нули которого и полюса - все на положительной оси X. Визуализируйте нули и полюса.
N = 1e5; wn = randn(N,1); z = [0.982231570015379 0.832656605953720 0.107980893771348]'; p = [0.995168968915815 0.943841773712820 0.555945259371364]'; [b,a] = zp2tf(z,p,1); pn = filter(b,a,wn); zplane(z,p)
Создайте двухканальный сигнал, состоящий из бело-розового шума. Вычислите спектр октавы. Примите частоту дискретизации 44,1 кГц. Установите диапазон частот от 30 Гц до частоты Найквиста.
sg = [wn pn]; fs = 44100; poctave(sg,fs,'FrequencyLimits',[30 fs/2]) legend('White noise','Pink noise','Location','SouthEast')
Белый шум имеет спектр октавы, который увеличивается с частотой. Спектр октавы розового шума является приблизительно постоянным в частотном диапазоне. Спектр октавы сигнала иллюстрирует, как человеческое ухо чувствует сигнал.
Сгенерировать выборки белого Гауссова шума выбираются на уровне 44,1 кГц. Создайте сигнал розового шума путем фильтрации белого шума с фильтром, нули которого и полюса - все на положительной оси X.
N = 1e5; fs = 44.1e3; wn = randn(N,1); z = [0.982231570015379 0.832656605953720 0.107980893771348]'; p = [0.995168968915815 0.943841773712820 0.555945259371364]'; [b,a] = zp2tf(z,p,1); pn = filter(b,a,wn);
Вычислите спектр октавы сигнала. Задайте три полосы на октаву и ограничьте общий частотный диапазон от 200 Гц до 20 кГц. Сохраните пары "имя-значение" в массиве ячеек для дальнейшего использования. Отобразите спектр.
flims = [200 20e3]; bpo = 3; opts = {'FrequencyLimits',flims,'BandsPerOctave',bpo}; poctave(pn,fs,opts{:});
Вычислите спектр октавы сигнала с теми же настройками, но используйте C-взвешивание. Спектр C-weighted уменьшается на частотах выше 6 кГц.
hold on poctave(pn,fs,opts{:},'Weighting','C')
Вычислите спектр октавы снова, но теперь используйте A-взвешивание. Спектр A-weighted достигает максимума на уровне приблизительно 3 кГц и уменьшается выше 6 кГц и на более низком уровне диапазона частот.
poctave(pn,fs,opts{:},'Weighting','A') hold off legend('Pink noise','C-weighted','A-weighted','Location','SouthWest')
Сгенерировать выборки белого Гауссова шума выбираются на уровне 44,1 кГц. Создайте сигнал розового шума путем фильтрации белого шума с фильтром, нули которого и полюса - все на положительной оси X.
N = 1e5; fs = 44.1e3; wn = randn(N,1); z = [0.982231570015379 0.832656605953720 0.107980893771348]'; p = [0.995168968915815 0.943841773712820 0.555945259371364]'; [b,a] = zp2tf(z,p,1); pn = filter(b,a,wn);
Вычислите валлийскую оценку степени спектральная плотность для обоих сигналов. Разделите сигналы на сегменты с 2048 выборками, задайте 50%-е перекрытие между смежными сегментами, окно каждый сегмент с Окном Хэмминга, и используйте 4 096 точек ДПФ.
[pxx,f] = pwelch([wn pn],hamming(2048),1024,4096,fs);
Отобразите спектральную плотность по диапазону частот в пределах от 200 Гц к частоте Найквиста. Используйте логарифмический масштаб для оси частоты.
pwelch([wn pn],hamming(2048),1024,4096,fs) ax = gca; ax.XScale = 'log'; xlim([200 fs/2]/1000) legend('White','Pink')
Вычислите и отобразите спектры октавы сигналов. Используйте тот же частотный диапазон в качестве в предыдущем графике. Задайте шесть полос на октаву и вычислите спектры с помощью фильтров 8-го порядка.
poctave(pxx,fs,f,'BandsPerOctave',6,'FilterOrder',8,'FrequencyLimits',[200 fs/2],'psd') legend('White','Pink')
x
Входной сигналВходной сигнал, заданный как вектор или матрица. Если x
является вектором, то poctave
обрабатывает его как один канал. Если x
является матрицей, то poctave
вычисляет спектр октавы независимо для каждого столбца и возвращает результат в соответствующем столбце p
.
Пример: sin(2*pi*(0:127)/16)+randn(1,128)/100
задает шумную синусоиду.
Пример: [2 1].*sin(2*pi*(0:127)'./[16 64])
задает двухканальную синусоиду.
Типы данных: single | double
fs
— Частота дискретизацииЧастота дискретизации, заданная как положительная скалярная величина, выражается в Гц. Частота дискретизации не может быть ниже, чем 7 Гц.
xt
Введите расписаниеВведите расписание. xt
должен содержать увеличение, конечные, однородно расположенные с интервалами времена строки. Если xt
представляет многоканальный сигнал, то он должен иметь или одну переменную, содержащую матрицу или несколько переменных, состоящих из векторов.
Если расписание имеет пропавших без вести или дублирующиеся моменты времени, можно зафиксировать его с помощью советов в Чистом Расписании с Пропавшими без вести, Копией, или Неоднородные Времена (MATLAB).
Пример: timetable(seconds(0:4)',randn(5,1))
задает вероятностный процесс, выбранный на уровне 1 Гц в течение 4 секунд.
pxx
— Степень спектральная плотностьСтепень спектральная плотность (PSD), заданная как вектор или матрица с действительными неотрицательными элементами. Степень спектральная плотность должна быть выражена в линейных модулях, не децибелах. Используйте db2pow
, чтобы преобразовать значения децибела, чтобы привести в действие значения.
Пример: [pxx,f] = periodogram(cos(pi./[4;2]*(0:159))'+randn(160,2))
задает периодограмму оценка PSD шумной двухканальной синусоиды, выбранной в 2π Гц и частоты, на которых это вычисляется.
f
Частоты PSDЧастоты PSD, заданные как вектор. f
должен быть конечным, строго увеличение, и однородно распределенный в линейной шкале.
Пример: [pxx,f] = periodogram(cos(pi./[4;2]*(0:159))'+randn(160,2))
задает периодограмму оценка PSD шумной двухканальной синусоиды, выбранной в 2π Гц и частоты, на которых это вычисляется.
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'Weighting','A','FilterOrder',8
вычисляет спектр октавы с помощью фильтров 8-го порядка и A-взвешивания.'BandsPerOctave'
— Количество поддиапазонов в полосе октавы1
(значение по умолчанию) | 3/2
| 2
| 3
| 6
| 12
| 24
| 48
| 96
Количество поддиапазонов в полосе октавы, заданной как пара, разделенная запятой, состоящая из 'BandsPerOctave'
и 1, 3/2, 2, 3, 6, 12, 24, 48, или 96. Этот параметр диктует ширину полосы дробной октавы. В таком диапазоне частот верхняя частота ребра является более низкими временами частоты ребра 21/b, где b является количеством поддиапазонов.
Типы данных: single | double
'FilterOrder'
— Порядок полосовых фильтров6
(значение по умолчанию) | положительный даже целое числоПорядок полосовых фильтров, заданных как пара, разделенная запятой, состоящая из 'FilterOrder'
и положительного даже целое число.
Типы данных: single | double
'FrequencyLimits'
— Диапазон частот[max(3,3*fs/48e3) fs/2]
(значение по умолчанию) | двухэлементный векторДиапазон частот, заданный как пара, разделенная запятой, состоящая из 'FrequencyLimits'
и двухэлементного вектора. Заданные значения должны лечь в области значений Найквиста. Нижнее значение вектора должно составить по крайней мере 3 Гц. Если вы задаете нижнее значение, больше, чем 3 Гц, но меньший, чем
, то функция изменяет нижнее значение на 3*fs/48e3
. Если вы задаете значения, таким образом, что нижний предел больше, чем частота Найквиста, функциональные подсказки, чтобы задать более широкий диапазон частот.3*fs/48e3
Типы данных: single | double
'Weighting'
— Взвешивание частоты'none'
(значение по умолчанию) | 'A'
| 'C'
| вектор | матрица | 1 2 массив ячеек | объект digitalFilter
Взвешивание частоты, заданное как пара, разделенная запятой, состоящая из 'Weighting'
и одно из следующего:
'none'
poctave
не выполняет взвешивания частоты на входе.
A
poctave
выполняет A-взвешивание на входе. Стандарт ANSI S1.42 задает кривую A-взвешивания. IEC 61672-1 стандарт задает минимальные и максимальные пределы затухания для фильтра A-взвешивания. Стандарт ANSI S1.42.2001 задает кривую взвешивания путем определения аналоговых полюсов и нулей.
C
poctave
выполняет C-взвешивание на входе. Стандарт ANSI S1.42 задает кривую C-взвешивания. IEC 61672-1 стандарт задает минимальные и максимальные пределы затухания для фильтра C-взвешивания. Стандарт ANSI S1.42.2001 задает кривую взвешивания путем определения аналоговых полюсов и нулей.
Вектор — poctave
обрабатывает вход как вектор коэффициентов, которые задают фильтр конечного импульсного ответа (FIR).
Матрица — poctave
обрабатывает вход как матрицу коэффициентов раздела второго порядка, которые задают фильтр бесконечного импульсного ответа (IIR). Матрица должна иметь по крайней мере две строки и точно шесть столбцов.
1 2 массив ячеек — poctave
обрабатывает вход как числитель и коэффициенты знаменателя в том порядке, которые задают передаточную функцию БИХ-фильтра.
Объект digitalFilter
— poctave
обрабатывает вход как фильтр, который был разработан с помощью designfilt
.
Этот аргумент поддерживается только, когда вход является сигналом. Сглаживание октавы не поддерживает взвешивание частоты.
Пример: 'Weighting',fir1(30,0.5)
задает КИХ-фильтр 30-го порядка с нормированной частотой среза 0.5π рад/выборка.
Пример: 'Weighting',[2 4 2 6 0 2;3 3 0 6 0 0]
задает третий порядок Фильтр Баттерворта с нормированной частотой на 3 дБ 0.5π рад/выборка.
Пример: 'Weighting',{[1 3 3 1]/6 [3 0 1]/3}
задает третий порядок Фильтр Баттерворта с нормированной частотой на 3 дБ 0.5π рад/выборка.
Пример: 'Weighting',designfilt('lowpassiir','FilterOrder',3,'HalfPowerFrequency',0.5)
задает третий порядок Фильтр Баттерворта с нормированной частотой на 3 дБ 0.5π рад/выборка.
Типы данных: single
| double
| char
| string
| cell
p
Спектр октавыСпектр октавы, возвращенный как вектор или матрица.
cf
— Центральные частотыЦентральные частоты, возвращенные как вектор. cf
содержит список центральных частот полос октавы, по которым poctave
оценил спектр октавы. cf
имеет модули герц.
[1] Спецификация для аналога полосы октавы и Дробной Полосы октавы и цифровых фильтров. Стандарт ANSI S1.11-2004. Мелвилл, Нью-Йорк: акустическое общество Америки, 2004.
[2] Смит, Джулиус Орайон, III. "Примеров: Синтез 1/F Шума (Розовый Шум)". В Спектральной Обработке Звукового сигнала. http://ccrma.stanford.edu/~jos/sasp/.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.