exponenta event banner

xwvd

Кросс-распределение Вигнера-Вилля и кросс-сглаженное псевдо распределение Вигнера-Вилля

Описание

пример

d = xwvd(x,y) возвращает кросс-распределение Вигнера-Вилля x и y.

пример

d = xwvd(x,y,fs) возвращает кросс-распределение Вигнера-Вилля, когда x и y отбираются со скоростью fs.

d = xwvd(x,y,ts) возвращает кросс-распределение Вигнера-Вилля, когда x и y отбираются с интервалом времени ts между образцами.

d = xwvd(___,'smoothedPseudo') возвращает перекрестное сглаженное псевдо-распределение Вигнера-Вилля x и y. Функция использует длину входных сигналов для выбора длины окон, используемых для сглаживания по времени и частоте. Этот синтаксис может включать любую комбинацию входных аргументов из предыдущих синтаксисов.

d = xwvd(___,'smoothedPseudo',twin,fwin) задает временное окно, twinи частотное окно, fwin, используется для сглаживания. Чтобы использовать окно по умолчанию для сглаживания по времени или частоте, укажите соответствующий аргумент как пустой, [].

d = xwvd(___,'smoothedPseudo','NumFrequencyPoints',nf) вычисляет перекрестное сглаженное псевдо-распределение Вигнера-Вилля с помощью nf частотные точки. Можно указать twin и fwin в этом синтаксисе или их можно опустить.

d = xwvd(___,'MinThreshold',thresh) устанавливает в нуль эти элементы d амплитуда которого меньше thresh. Этот синтаксис применяется как к кросс-распределению Вигнера-Вилля, так и к кросс-сглаженному псевдо-распределению Вигнера-Вилля.

[d,f,t] = xwvd(___) также возвращает вектор частот, fи вектор времен, t, при котором d вычисляется.

пример

xwvd(___) без выходных аргументов строит график действительной части кросс-распределения Вигнера-Вилля или кросс-сглаженного псевдо-распределения Вигнера-Вилля на текущем рисунке.

Примеры

свернуть все

Генерация двух сигналов, дискретизированных на частоте 1 кГц в течение 1 секунды и включенных в белый шум. Один сигнал - синусоида частотой 150 Гц. Другой сигнал представляет собой чирп, частота которого изменяется синусоидально между 200 Гц и 400 Гц. Шум имеет дисперсию 0,12.

fs = 1000;
t = (0:1/fs:1)';

x = cos(2*pi*t*150) + 0.1*randn(size(t));
y = vco(cos(3*pi*t),[200 400],fs) + 0.1*randn(size(t));

Вычислите распределение Вигнера-Вилля суммы сигналов.

wvd(x+y,fs)

Figure contains an axes. The axes with title Wigner-Ville Distribution contains an object of type image.

Вычислите и постройте график перекрестного распределения сигналов Вигнера-Вилля. Кросс-распределение соответствует кросс-членам распределения Вигнера - Вилля.

xwvd(x,y,fs)

Figure contains an axes. The axes with title Cross Wigner-Ville Distribution contains an object of type image.

Создайте двухканальный сигнал, состоящий из двух чирп. Дискретизируют сигнал при частоте 3 кГц в течение одной секунды. Первая чирпа имеет начальную частоту 400 Гц и достигает 800 Гц в конце выборки. Вторая чирпа начинается с 500 Гц и достигает 1000 Гц в конце. Вторая чирп имеет вдвое большую амплитуду, чем первая чирп.

fs = 3000;
t = (0:1/fs:1-1/fs)';

x1 = chirp(t,1400,t(end),800);
x2 = 2*chirp(t,200,t(end),1000);

Сохраните сигнал в расписании. Вычислите и постройте график перекрестного распределения Вигнера-Вилля двух каналов.

xt = timetable(seconds(t),x1,x2);

xwvd(xt(:,1),xt(:,2))

Figure contains an axes. The axes with title Cross Wigner-Ville Distribution contains an object of type image.

Вычислите мгновенную частоту сигнала, используя известный опорный сигнал и перекрестное распределение Вигнера-Вилля.

Создайте опорный сигнал, состоящий из гауссова атома, дискретизированного при частоте 1 кГц в течение 1 секунды. Гауссов атом - синусоида, модулированная гауссовым. Укажите частоту синусоиды 50 Гц. Гауссов центрирован на 64 миллисекундах и имеет дисперсию 0,012.

fs = 1e3;
t = (0:1/fs:1-1/fs)';

mu = 0.064;
sigma = 0.01;
fsin = 50;

xr = exp(-(t-mu).^2/(2*sigma^2)).*sin(2*pi*fsin*t);

Создайте «неизвестный» сигнал для анализа, состоящий из чирпа. Сигнал начинается внезапно через 0,4 секунды и заканчивается внезапно через полсекунды. В этот период частота чирпа линейно уменьшается от 400 Гц до 100 Гц.

f0 = 400;
f1 = 100;

xa = zeros(size(t));
xa(t>0.4 & t<=0.9) = chirp((0:1/fs:0.5-1/fs)',f0,0.5,f1);

Создайте двухкомпонентный сигнал, состоящий из суммы неизвестных и опорных сигналов. Сглаженное псевдо-распределение Вигнера-Вилля результата обеспечивает «идеальное» частотно-временное представление.

Вычислите и отобразите сглаженное псевдо-распределение Вигнера-Вилля.

w = wvd(xa+xr,fs,'smoothedPseudo');

wvd(xa+xr,fs,'smoothedPseudo')

Figure contains an axes. The axes with title Smoothed Pseudo Wigner-Ville Distribution contains an object of type image.

Вычислите кросс-распределение Вигнера-Вилля неизвестных и опорных сигналов. Возьмите абсолютное значение распределения и установите в ноль элементы с амплитудой меньше 10. Перекрестное распределение Вигнера-Вилля равно перекрестным слагаемым двухкомпонентного сигнала.

Постройте график реальной части кросс-распределения Вигнера - Вилле.

[c,fc,tc] = xwvd(xa,xr,fs);
c = abs(c);
c(c<10) = 0;

xwvd(xa,xr,fs)

Figure contains an axes. The axes with title Cross Wigner-Ville Distribution contains an object of type image.

Улучшение перекрестных терминов Вигнера-Вилля путем добавления идеального частотно-временного представления к перекрестному распределению Вигнера-Вилля. Перекрестные условия распределения Вигнера-Вилля происходят на полпути между опорным сигналом и неизвестным сигналом.

d = w + c;

d = abs(real(d));

imagesc(tc,fc,d)
axis xy
colorbar

Figure contains an axes. The axes contains an object of type image.

Определите и постройте график высокоэнергетического гребня, соответствующего пересечениям. Чтобы изолировать гребень, найдите значения времени, в которых перекрестное распределение имеет ненулевую энергию.

ff = tfridge(c,fc);

tv = sum(c)>0;

ff = ff(tv);
tc = tc(tv);

hold on
plot(tc,ff,'r--','linewidth',2)
hold off

Figure contains an axes. The axes contains 2 objects of type image, line.

Восстановите мгновенную частоту неизвестного сигнала с помощью гребня и опорной функции. Постройте график мгновенной частоты как функции времени.

tEst = 2*tc - mu;
fEst = 2*ff - fsin;

plot(tEst,fEst)

Figure contains an axes. The axes contains an object of type line.

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

свернуть все

Входные сигналы, определенные как векторы или расписания MATLAB ®, каждый из которых содержит одну векторную переменную .x и y оба должны быть векторами или оба должны быть расписаниями и иметь одинаковую длину.

Если входные сигналы имеют нечетную длину, функция добавляет ноль, чтобы сделать длину равномерной.

Пример: cos(pi/8*(0:159))'+randn(160,1)/10 задает синусоиду, встроенную в белый шум.

Пример: timetable(seconds(0:5)',rand(6,1)) задает случайную величину, дискретизированную с частотой 1 Гц в течение 4 секунд.

Типы данных: single | double
Поддержка комплексного номера: Да

Частота выборки, заданная как положительный числовой скаляр.

Время выборки, указанное как duration скаляр.

Временные и частотные окна, используемые для сглаживания, определяемые как векторы нечетной длины. По умолчанию xwvd использует окна Кайзера с коэффициентом формы β = 20.

  • Длина по умолчанию twin наименьшее нечетное целое число, большее или равное round(length(x)/10).

  • Длина по умолчанию fwin наименьшее нечетное целое число, большее или равное nf/4.

Длина каждого окна должна быть меньше или равна 2*ceil(length(x)/2).

Пример: kaiser(65,0.5) задает 65-образное окно Кайзера с коэффициентом формы 0,5.

Число частотных точек, указанное как целое число. Этот аргумент управляет степенью избыточной дискретизации частоты. Число частотных точек должно быть не менее (length(fwin)+1)/2 и не может быть больше значения по умолчанию.

Минимальное ненулевое значение, указанное как действительный скаляр. Функция устанавливает в нуль эти элементы d амплитуды которых меньше thresh.

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

свернуть все

Распределение Cross Wigner-Ville, возвращенное в виде матрицы. Время увеличивается по столбцам dи частота увеличивается вниз по строкам. Матрица имеет размер Nf  × Nt, где Nf - длина f и Nt - длина t.

Частоты, возвращаемые в виде вектора.

  • Если на входе имеется информация о времени, то f содержит частоты, выраженные в Гц.

  • Если на входе нет временной информации, то f содержит нормированные частоты, выраженные в рад/выборке.

Моменты времени, возвращенные как вектор.

  • Если на входе имеется информация о времени, то t содержит значения времени, выраженные в секундах.

  • Если на входе нет временной информации, то t содержит номера образцов.

Количество моментов времени фиксируется как 4*ceil(length(x)/2).

Подробнее

свернуть все

Дистрибутив Cross Wigner-Ville

Для непрерывных сигналов x (t) и y (t) перекрестное распределение Вигнера-Вилля определяется как

XWVDx, y (t, f) =∫−∞∞x (t + the2) y * (t

Для дискретного сигнала с N выборками распределение становится

XWVDx, y (n, k) =∑m=−NNx (n + m/2) y * (n m/2) e − j2.dkm/N.

Для нечетных значений m определение требует оценки сигнала при полуцелых отсчетных значениях. Поэтому она требует интерполяции, что делает необходимым затенение дискретного преобразования Фурье, чтобы избежать наложения.

Кросс-распределение Вигнера - Вилля содержит интерференционные термины, которые часто усложняют его интерпретацию. Чтобы заострить распределение, можно отфильтровать определение с помощью окон нижних частот. Перекрестно сглаженное псевдорасширенное распределение Вигнера - Вилля использует независимые окна для сглаживания во времени и частоте:

XSPWVDx, yg, H (t, f) =∫−∞∞g (t) H (f) x (t + the2) y * (t

Ссылки

[1] Коэн, Леон. Частотно-временной анализ: теория и приложения. Энглвуд Клиффс, Нью-Джерси: Прентис-Холл, 1995.

[2] Маллат, Стефан. Вейвлет-тур обработки сигналов. Второе издание. Сан-Диего, Калифорния: Академическая пресса, 1999.

[3] Недоедар, Дамир, Виктор Сучич и Буалем Боашаш. «Метод на основе перекрестной геометрии для мгновенной оценки частоты компонентов с использованием перекрестного распределения Вигнера-Вилля». На 11-й Международной конференции по информационным наукам, обработке сигналов и их применению (ISSPA), стр. 1217-1222. Montréal: IEEE ®, 2012.

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

.

См. также

Функции

  • | (панель инструментов обработки сигналов)
Представлен в R2018b