pmusic

Псевдоспектр с помощью алгоритма MUSIC

Описание

пример

[S,wo] = pmusic(x,p) реализует классификацию сигнала нескольких (MUSIC) алгоритм и возвращает S, оценка псевдоспектра входного сигнала x, и векторный wo из нормированных частот (в рад/отсчете), в котором оценен псевдоспектр. Можно задать размерность подпространства сигнала с помощью входного параметра p.

[S,wo] = pmusic(x,p,wi) возвращает псевдоспектр, вычисленный на нормированных частотах, заданных в векторном wi. Векторный wi должен иметь два или больше элемента, потому что в противном случае функция интерпретирует его как nfft.

[S,wo] = pmusic(___,nfft) задает целочисленную длину БПФ, nfft, используемый, чтобы оценить псевдоспектр. Этот синтаксис может включать любую комбинацию входных параметров от предыдущих синтаксисов.

пример

[S,wo] = pmusic(___,'corr') обеспечивает входной параметр x быть интерпретированным как корреляционная матрица, а не матрица данных сигнала. Для этого синтаксиса, x должна быть квадратная матрица, и все ее собственные значения должны быть неотрицательными.

пример

[S,fo] = pmusic(x,p,nfft,fs) возвращает псевдоспектр, вычисленный на частотах, заданных в векторном fo (в Гц). Предоставьте частоту дискретизации fs в Гц.

[S,fo] = pmusic(x,p,fi,fs) возвращает псевдоспектр, вычисленный на частотах, заданных в векторном fi. Векторный fi должен иметь два или больше элемента, потому что в противном случае функция интерпретирует его как nfft.

пример

[S,fo] = pmusic(x,p,nfft,fs,nwin,noverlap) возвращает псевдоспектр S путем сегментации входных данных x использование окна nwin и перекройте длину noverlap.

[___] = pmusic(___,freqrange) указывает диапазон значений частоты, чтобы включать в fo или wo.

[___,v,e] = pmusic(___) возвращает матричный v из шумовых собственных векторов наряду со связанными собственными значениями в векторном e.

пример

pmusic(___) без выходных аргументов строит псевдоспектр в окне текущей фигуры.

Примеры

свернуть все

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

n = 0:199;
x = cos(0.257*pi*n) + sin(0.2*pi*n) + 0.01*randn(size(n));
pmusic(x,4)      % Set p to 4 because there are two real inputs

Figure contains an axes object. The axes object with title Pseudospectrum Estimate via MUSIC contains an object of type line.

Этот пример анализирует тот же сигнальный вектор, x, с сокращением собственного значения на 10% выше минимума. Установка p(1) = Inf обеспечивает решение подпространства сигнала/шумовое быть основанными на пороговом параметре, p(2). Задайте собственные вектора длины 7 использований nwin аргумент и набор частота дискретизации, fs, к 8 кГц:

rng default
n = 0:199;
x = cos(0.257*pi*n) + sin(0.2*pi*n) + 0.01*randn(size(n));
[P,f] = pmusic(x,[Inf,1.1],[],8000,7); % Window length = 7
plot(f,20*log10(abs(P)))
xlabel 'Frequency (Hz)', ylabel 'Power (dB)'
title 'Pseudospectrum Estimate via MUSIC', grid on

Figure contains an axes object. The axes object with title Pseudospectrum Estimate via MUSIC contains an object of type line.

Предоставьте положительную определенную корреляционную матрицу, R, для оценки спектральной плотности. Используйте значение по умолчанию 256 выборок.

R = toeplitz(cos(0.1*pi*(0:6))) + 0.1*eye(7);
pmusic(R,4,'corr')

Figure contains an axes object. The axes object with title Pseudospectrum Estimate via MUSIC contains an object of type line.

Введите матрицу данных сигнала, Xm, сгенерированный из данных с помощью corrmtx.

n = 0:699;
x = cos(0.257*pi*(n)) + 0.1*randn(size(n));
Xm = corrmtx(x,7,'modified');
pmusic(Xm,2)

Figure contains an axes object. The axes object with title Pseudospectrum Estimate via MUSIC contains an object of type line.

Используйте тот же сигнал, но позвольте pmusic сформируйте 100 7 матрицу данных с помощью ее входных параметров работы с окнами. Кроме того, задайте БПФ длины 512.

n = 0:699;
x = cos(0.257*pi*(n)) + 0.1*randn(size(n));
[PP,ff] = pmusic(x,2,512,[],7,0);
pmusic(x,2,512,[],7,0)

Figure contains an axes object. The axes object with title Pseudospectrum Estimate via MUSIC contains an object of type line.

Входные параметры

свернуть все

Входной сигнал в виде вектора или матрицы. Если x вектор, затем он обработан как одно наблюдение за сигналом. Если x матрица, каждая строка x представляет отдельное наблюдение за сигналом. Например, каждой строкой является один выход массива датчиков, как в обработке матриц, такой что x'*x оценка корреляционной матрицы.

Примечание

Можно использовать выход corrmtx сгенерировать x.

Поддержка комплексного числа: Да

Размерность подпространства в виде действительного положительного целого числа или двухэлементного вектора. Если p действительное положительное целое число, затем оно обработано как размерность подпространства. Если p двухэлементный вектор, второй элемент p представляет порог, который умножается на min λ, самое маленькое предполагаемое собственное значение корреляционной матрицы сигнала. Собственные значения ниже порога λ min*p(2) присвоены шумовому подпространству. В этом случае, p(1) задает максимальную размерность подпространства сигнала. Дополнительный пороговый параметр во второй записи в p предоставляет вам больше гибкости и управления в присвоении шумовых и подпространств сигнала.

Примечание

Если входные параметры к peig действительные синусоиды, установите значение p удвоить количество синусоид. Если входные параметры являются комплексными синусоидами, установите p равняйтесь количеству синусоид.

Поддержка комплексного числа: Да

Введите нормированные частоты в виде вектора.

Типы данных: double

Количество ДПФ указывает в виде положительного целого числа. Если nfft задан как пустой, nfft по умолчанию используется.

Частота дискретизации в виде положительной скалярной величины в Гц. в Гц. Если вы задаете fs с пустым вектором [], значения по умолчанию частоты дискретизации к 1 Гц.

Введите частоты в виде вектора. Псевдоспектр вычисляется на частотах, заданных в векторе.

Длина прямоугольного окна в виде неотрицательного целого числа.

Количество перекрытых выборок в виде неотрицательного целого числа, меньшего, чем длина окна.

Примечание

Аргументы nwin и noverlap проигнорированы, когда вы включаете 'corr' в синтаксисе.

Частотный диапазон псевдоспектра оценивает в виде одного из 'half', whole, или 'centered'.

  • 'half' — Возвращает половину спектра для действительного входного сигнала x. Если nfft является четным, затем S имеет длину nfft/2 + 1 и вычисляется на интервале [0, π]. Если nfft является нечетным, длина S (nfft + 1)/2 и интервал частоты [0, π). Когда ваш задавать fs, интервалы [0, fs/2) и [0, fs/2] для четного и нечетного nfft, соответственно.

  • 'whole' — Возвращает целый спектр или для действительного или для комплексного входа x. В этом случае, S имеет длину nfft и вычисляется на интервале [0, 2π). Когда вы задаете fs, интервал частоты [0, fs).

  • 'centered' — Возвращает целый спектр в центре или для действительного или для комплексного входа x. В этом случае, S имеет длину nfft и вычисляется на интервале (–π, π] для даже nfft и (–π, π) для нечетного nfft. Когда вы задаете fs, интервалы частоты (–fs/2, fs/2] и (–fs/2, fs/2) для четного и нечетного nfft, соответственно.

Примечание

Можно поместить аргументы freqrange или 'corr' где угодно в списке входных параметров после p.

Выходные аргументы

свернуть все

Оценка псевдоспектра, возвращенная как вектор. Псевдоспектр вычисляется с помощью оценок собственных векторов корреляционной матрицы, сопоставленной с входными данными x.

Выведите нормированные частоты в виде вектора. S и wo имейте ту же длину. В общем случае длина БПФ и значения входа x определите длину вычисленного S и область значений соответствующих нормированных частот. Таблица показывает длину Swo) и область значений соответствующих нормированных частот для первого синтаксиса.

S характеристики для длины БПФ 256 (значение по умолчанию)

Тип входных данныхДлина S и w0Область значений соответствующих нормированных частот

Действительный

129

[0, π] 

Комплекс

256

[0, 2π) 

Если nfft задан, следующая таблица указывает на длину S и wo и частотный диапазон для wo.

S и характеристики вектора частоты

Тип входных данныхnfft Даже или НечетныйДлина S и wОбласть значений w

Действительный

Даже

  (nfft/2 )+ 1

[0, π] 

Действительный

Нечетный

  (nfft + 1)/2

[0, π) 

Комплекс

Даже или нечетный

nfft

[0, 2π) 

Выведите частоту, возвращенную как вектор. Частотный диапазон для fo зависит от nfft, fs, и значения входа x. Длина Sfo) эквивалентен в Характеристиках Вектора S и Частоты выше. Следующая таблица указывает на частотный диапазон для fo если nfft и fs заданы.

S и Характеристики Вектора Частоты с Заданной фс

Тип входных данных

Ровный/Нечетный nfft

Область значений f

Действительный

Даже

[0, fs/2]

Действительный

Нечетный

[0, fs/2)

Комплекс

Даже или нечетный

[0, fs)

Кроме того, если nwin и noverlap также заданы, входные данные x сегментируется и оконный, прежде чем матрица раньше оценивала, что собственные значения корреляционной матрицы формулируются. Сегментация данных зависит от nwin, noverlap, и форма x. Комментарии к получившимся оконным сегментам описаны в следующей таблице.

Оконные Данные В зависимости от x и nwin 

форма x

Форма nwin

Оконные данные

Вектор данных

Скаляр

Длиной является nwin.

Вектор данных

Вектор из коэффициентов

Длиной является length(nwin).

Матрица данных

Скаляр

Данные не являются оконными.

Матрица данных

Вектор из коэффициентов

length(nwin) должен совпасть с длиной столбца x, и noverlap не используется.

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

Шумовые собственные вектора, возвращенные как матрица. Столбцы v охватите шумовое подпространство размерности size(v,2). Размерностью подпространства сигнала является size(v,1)-size(v,2).

Предполагаемые собственные значения корреляционной матрицы, возвращенной как вектор.

Советы

В процессе оценки псевдоспектра, pmusic вычисляет шумовые и подпространства сигнала из предполагаемых собственных векторов vj и собственные значения λj корреляционной матрицы сигнала. Самое маленькое из этих собственных значений используется в сочетании с пороговым параметром p(2) влиять на размерность шумового подпространства в некоторых случаях.

Длина n собственных векторов вычисляется pmusic сумма размерностей и шумовых подпространств сигнала. Эта длина собственного вектора зависит от вашего входа (данные сигнала или корреляционная матрица) и синтаксис, который вы используете.

Следующая таблица обобщает зависимость длины собственного вектора на входном параметре.

Длина собственного вектора В зависимости от входных данных и синтаксиса

Форма Входных данных x

Комментарии к синтаксису

Длина n Собственных векторов

Строка или вектор-столбец

nwin задан как скалярное целое число.

nwin

Строка или вектор-столбец

nwin задан как вектор.

length(nwin)

Строка или вектор-столбец

nwin не задан.

2 × p(1)

l-by-m матрица

Если nwin задан как скаляр, он не используется. Если nwin задан как вектор, length(nwin) должен равняться m.

m

m-by-m неотрицательная определенная матрица

'corr' задан и nwin не используется.

m

Необходимо задать nwin > p(1) или length(nwin) > p(1) если вы хотите p(2)> 1  оказывать любое влияние.

Алгоритмы

Несколько сигнализируют о классификации (MUSIC), алгоритм оценивает псевдоспектр от сигнала или корреляционной матрицы с помощью eigenspace метода анализа Шмидта [1]. Алгоритм выполняет eigenspace анализ корреляционной матрицы сигнала, чтобы оценить содержимое частоты сигнала. Этот алгоритм особенно подходит для сигналов, которые являются суммой синусоид с аддитивным белым Гауссовым шумом. Собственные значения и собственные вектора корреляционной матрицы сигнала оцениваются, если вы не предоставляете корреляционную матрицу.

Оценкой псевдоспектра MUSIC дают

PMUSIC(f)=1eH(f)(k=p+1NvkvkH)e(f)=1k=p+1N|vkHe(f)|2

где N является размерностью собственных векторов, и vk является k th собственный вектор корреляционной матрицы. Целочисленный p является размерностью подпространства сигнала, таким образом, собственные вектора, vk , используемый в сумме, соответствует самым маленьким собственным значениям и также охватывает шумовое подпространство. Вектор e (f) состоит из комплексных экпонент, таким образом, скалярное произведение

vkHe(f)

суммы к преобразованию Фурье. Это используется для расчета оценки псевдоспектра. БПФ вычисляется для каждого vk , и затем величины в квадрате суммированы.

Ссылки

[1] Марпл, С. Лоуренс. Цифровой Спектральный анализ. Englewood Cliffs, NJ: Prentice Hall, 1987, стр 373–378.

[2] Шмидт, R. O. “Несколько эмиттерное местоположение и оценка параметра сигнала”. IEEE® Транзакции на Антеннах и Распространении. Издание AP-34, март 1986, стр 276–280.

[3] Stoica, Петр и Рэндольф Л. Моисей. Спектральный анализ сигналов. Верхний Сэддл-Ривер, NJ: Prentice Hall, 2005.

Расширенные возможности

Смотрите также

| | | | | | | |

Представлено до R2006a