exponenta event banner

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. The axes 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. The axes 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. The axes 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. The axes 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. The axes with title Pseudospectrum Estimate via MUSIC contains an object of type line.

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

свернуть все

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

Примечание

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

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

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

Примечание

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

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

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

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

Число точек DFT, указанное как положительное целое число. Если 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, ). При указании 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 и частотные векторные характеристики с заданными fs

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

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) оценивает псевдоспектрум по сигналу или корреляционной матрице, используя метод анализа собственного пространства Шмидта [1]. Алгоритм выполняет анализ собственного пространства корреляционной матрицы сигнала для оценки частотного содержания сигнала. Этот алгоритм особенно подходит для сигналов, которые представляют собой сумму синусоид с аддитивным белым гауссовым шумом. Собственные значения и собственные векторы корреляционной матрицы сигнала оцениваются, если не предоставить корреляционную матрицу.

Оценка псевдоспектра MUSIC задается

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

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

vkHe (f)

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

Ссылки

[1] Марпл, С. Лоуренс. Цифровой спектральный анализ. Энглвуд Клиффс, Нью-Джерси: Прентис-Холл, 1987, стр. 373-378.

[2] Шмидт, Р. О. «Оценка местоположения и параметров сигнала нескольких эмиттеров». Транзакции IEEE ® на антеннах и при распространении. т. AP-34, март 1986, стр. 276-280.

[3] Стоика, Петре и Рэндольф Л. Мозес. Спектральный анализ сигналов. Река Верхнее Седло, Нью-Джерси: Прентис Холл, 2005.

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

.

См. также

| | | | | | | |

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