iwsst

Обратный вейвлет синхронизированное преобразование

Описание

пример

xrec = iwsst(sst) инвертирует вход преобразование с синхронизацией, sst, и возвращает обратное в векторе xrec. Чтобы получить sst введите, используйте wsst функция. iwsst функция принимает, что вы получаете sst использование аналитического вейвлета Морле.

Примечание

Вейвлет не сохраняет ненулевое среднее значение. После инвертирования синхронизированного преобразования, вы должны добавить назад среднее значение исходного сигнала.

пример

xrec = iwsst(sst,f,freqrange) инвертирует синхронизированное преобразование для заданной области частот, freqrange, содержащийся в векторе частоты, f. Вектор частоты, f, - выходы wsst.

пример

xrec = iwsst(sst,iridge) инвертирует синхронизированное преобразование вдоль частотно-временных гребней, заданной iridge, индекс вектора-столбца. iridge - выходы wsstridge. The xrec выход совпадает с размером iridge.

пример

xrec = iwsst(___,wav) использует аналитический вейвлет, заданный как wav инвертировать синхронизированное преобразование. Этот вейвлет должен быть таким же вейвлетом, как и в wsst. Можно включать любой из входных параметров из предыдущих синтаксисов.

пример

xrec = iwsst(___,iridge,'NumFrequencyBins',numBins) возвращает обратное синхронизированное преобразование с numBins- любые дополнительные интервалы частоты, включенные с каждой стороны каждого iridge индексный интервал.

Примеры

свернуть все

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

load quadchirp;
sst = wsst(quadchirp);
xrec = iwsst(sst);

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

Загрузите щебет и получите синхронизированное преобразование.

load quadchirp;
sstchirp = wsst(quadchirp,'ExtendSignal',true);

Извлеките максимальный частотно-временной гребень энергии и восстановите режим сигнала вдоль гребня.

[~,iridge] = wsstridge(sstchirp);
xrec = iwsst(sstchirp,iridge);

Постройте и увеличьте изображение исходного и восстановленного сигнала.

plot(tquad,xrec,'r');
hold on;
plot(tquad,quadchirp,'b--');
xlabel('Time'); ylabel('Amplitude');
set(gca,'ylim',[-1.5 1.5]);
legend('Reconstruction','Original');
grid on;
title('Reconstruction of Chirp Along Maximum Time-Frequency Ridge');
zoom xon
zoom(50)

Figure contains an axes. The axes with title Reconstruction of Chirp Along Maximum Time-Frequency Ridge contains 2 objects of type line. These objects represent Reconstruction, Original.

Получите обратное синхронизированное преобразование для заданной частотной области значений двухкомпонентного сигнала. Вход является комбинацией амплитудно-модулированного и частотно-модулированного сигнала.

Создайте сигнал.

t = 0:0.001:0.1;
x1 = (2+0.5*cos(2*pi*10*t)).*cos(2*pi*200*t+10*sin(2*pi*5*t));
x2 = cos(2*pi*50*t);
sig = x1+x2;

Получите вейвлет преобразование и постройте график получившихся двух частотных составляющих.

[sst,f] = wsst(sig,1000,'ExtendSignal',true);
contour(t,f,abs(sst));
grid on;
title('Wavelet Synchrosqueezed Transform');
ylabel('Frequency');
xlabel('Time');
hold on
plot(t,140*ones(size(t)),'r--');
plot(t,260*ones(size(t)),'r--');

Figure contains an axes. The axes with title Wavelet Synchrosqueezed Transform contains 3 objects of type contour, line.

Получите обратное синхронизированное преобразование для частот от 140 Гц до 260 Гц. Постройте график результата.

xrec = iwsst(sst,f,[140,260]);
subplot(2,1,1);
plot(t,x1);
title('Original Signal');
subplot(2,1,2);
plot(t,xrec,'r');
title('Reconstructed Signal');

Figure contains 2 axes. Axes 1 with title Original Signal contains an object of type line. Axes 2 with title Reconstructed Signal contains an object of type line.

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

Загрузите речевой сигнал и получите синхронизированное преобразование и обратное синхронизированное преобразование.

load mtlb
dt = 1/Fs;
t = 0:dt:numel(mtlb)*dt-dt;
Txmtlb = wsst(mtlb,'bump');
xrec = iwsst(Txmtlb,'bump');

Получите норму L-бесконечности различия между исходной формой волны и реконструкцией. Постройте график результатов.

Linf = norm(abs(mtlb-xrec),Inf);
plot(t,mtlb)
hold on
xlabel('Seconds')
ylabel('Amplitude')
plot(t,xrec,'r')
title({'Reconstruction of Wavelet Synchrosqueezed Transform';...
    ['Largest Absolute Difference: ' num2str(Linf,'%1.2f')]})

Figure contains an axes. The axes with title Reconstruction of Wavelet Synchrosqueezed Transform Largest Absolute Difference: 0.10 contains 2 objects of type line.

Этот пример показывает, как инвертировать вейвлет преобразование с использованием заданного количества интервалов частоты для квадратичного щебета. Щебет отбирают при частоте 1000 Гц.

load quadchirp;
sstchirp = wsst(quadchirp,'ExtendSignal',true);

Извлеките максимальный частотно-временной гребень энергии с помощью 10 интервалов с каждой стороны индекса iridge и восстановите режим сигнала вдоль хребта.

[~,iridge] = wsstridge(sstchirp);
xrec = iwsst(sstchirp,iridge,'NumFrequencyBins',10);

Постройте график исходного и восстановленного сигнала.

plot(tquad,xrec,'r');
hold on;
plot(tquad,quadchirp,'b--');
xlabel('Time'); ylabel('Amplitude');
set(gca,'ylim',[-1.5 1.5]);
legend('Reconstruction','Original');
grid on;
title('Reconstruction of Chirp Along Maximum Time-Frequency Ridge');

Figure contains an axes. The axes with title Reconstruction of Chirp Along Maximum Time-Frequency Ridge contains 2 objects of type line. These objects represent Reconstruction, Original.

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

свернуть все

Синхронизированное преобразование, заданное как матрица. sst - выход из системы wsst функция.

Синхронизированные частоты преобразования, соответствующие строкам синхронизируемого преобразования, заданные как вектор. Количество элементов в векторе частоты равно количеству строк в sst вход. Если вы задаете f, вы также должны задать freqrange.

Частотная область значений, для которого можно вернуть значения обратного синхронизации преобразования, заданные как двухэлементный вектор. Значения freqrange должны находиться в области значений значений частот, f. Первый и второй элементы freqrange задайте начало и конец частотной области значений, где значения частот в этой области значений должны быть положительными и строго увеличиваться. Если вы задаете freqrange, вы также должны задать f.

Частотно-временной гребень индексы строк синхронизируемого преобразования, заданные в виде вектора или матрицы. iridge - выход файла wsstridge функция. Если iridge является матрицей, iwsst инвертирует синхронизированное преобразование вдоль первого столбца iridge. Затем итерационно восстанавливается вдоль последующих столбцов iridge. Размеры iridge и xrec выходы совпадают.

Аналитический вейвлет, используемый для вычисления обратного синхронизированного преобразования, заданный как одно из следующего:

  • 'amor' - Аналитический Морлет вейвлет

  • 'bump' - Bump wavelet

Вы должны использовать тот же вейвлет в реконструкции, что и для вычисления синхронизированного преобразования, sst.

Количество дополнительных интервалов частоты, включаемых с каждой стороны каждого iridge индексный интервал, заданный как положительное целое число. Если количество дополнительных интервалов превышает количество интервалов частоты, доступных на конкретном временном шаге, iwsst обрезает реконструкцию в первом или последнем интервале частоты. Значение по умолчанию, 16, это половина числа голосов по умолчанию на октаву.

Чтобы задать этот аргумент, вы также задаете iridge, который является выходом wsstridge. Вы не можете включать частотный f и область значений freqrange, если вы включаете количество интервалов частоты.

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

свернуть все

Обратное синхронизированное преобразование, возвращенное в виде вектора или матрицы. Если вы не задаете iridge вход, xrec - вектор-столбец с одинаковым числом строк, как и sst. Если вы задаете iridge вход, xrec - тот же размер, что и iridge.

Ссылки

[1] Daubechies, I., J. Lu, and H. T. Wu. Synchrosqueezed Вейвлета Transforms: a Empirical Mode Decomposition-like Инструмента (неопр.) (недоступная ссылка). Прикладной и вычислительный гармонический анализ, том 30, № 2, 2011, стр. 243-261.

[2] Thakur, G., E. Brevdo, N. S. Фучкар, и Х. Т. У. Алгоритм Synchrosqueezing для изменяющегося во времени спектрального анализа: свойства робастности и новые приложения палеоклиматов. Обработка сигналов, Том 93, Номер 5, 2013, стр. 1079-1094.

Введенный в R2016a