В этой галерее представлен обзор функций частотно-временного анализа, доступных в Signal Processing Toolbox™ и Wavelet Toolbox™. Описания и примеры использования представляют различные методы, которые вы можете использовать для анализа сигнала.
Метод | Функции | Обратимый | Примеры |
---|---|---|---|
|
| ||
| Да | ||
| Нет | Пример: Отоакустическая эмиссия | |
|
| ||
| Да | ||
| Нет |
Это short-time Fourier transform является линейным представлением частоты и времени, используемым в анализе нестационарных многокомпонентных сигналов.
Кратковременное преобразование Фурье обратимо.
Спектрограмма является квадратной величиной STFT.
Можно вычислить перекрестную спектрограмму двух сигналов, чтобы искать сходства во временной области частот.
Спектр стойкости сигнала является частотно-временным представлением, которое показывает процент времени, в течение которого данная частота присутствует в сигнале. Спектр стойкости является гистограммой в пространстве частота-мощность. Чем больше конкретная частота сохраняется в сигнале, когда сигнал развивается, тем выше его временной процент и, таким образом, более яркий или «горячий» его цвет в отображении.
Приложения этого частотно-временного способа включают, но не ограничиваются:
Обработка аудиосигнала: Оценка основной частоты, перекрестный синтез, выделение спектральной огибающей, изменение шкалы времени, растяжение времени и перемена тангажа. (Для получения дополнительной информации смотрите Phase Vocoder с различными окнами синтеза и анализа.)
Первоклассное обнаружение: Обнаружьте трещины в алюминиевых пластинах, используя кривые дисперсии сверхзвуковых Волн Лэмба.
Обработка массивов: Гидроакустические исследования, геофизические исследования и формирование луча.
Цифровые коммуникации: Обнаружение сигнала скачкообразного изменения частоты.
stft
вычисляет кратковременное преобразование Фурье. Чтобы инвертировать краткосрочное преобразование Фурье, используйте istft
функция.
pspectrum
или spectrogram
вычисляет спектрограмму.
xspectrogram
вычисляет перекрестную спектрограмму двух сигналов.
Можно также использовать представление спектрограммы в Signal Analyzer, чтобы просмотреть спектрограмму сигнала.
Используйте опцию спектральной стойкости в pspectrum
или Signal Analyzer для идентификации сигналов, скрытых в других сигналах.
Сгенерируйте сигнал, дискретизированный в 5 кГц в течение 4 секунд. Сигнал состоит из набора импульсов уменьшающейся длительности, разделенных областями колеблющейся амплитуды и колеблющейся частоты с увеличивающимся трендом.
fs = 5000; t = 0:1/fs:4-1/fs; x = 10*besselj(0,1000*(sin(2*pi*(t+2).^3/60).^5));
Вычислите и постройте график кратковременного преобразования Фурье сигнала. Оконное окно сигнала с 200-образным окном Кайзера с масштабным фактором .
stft(x,fs,'Window',kaiser(200,30))
Загрузите аудиосигнал, который содержит два уменьшающихся щебета и широкополосный брызгальный звук.
load splat
Установите длину перекрытия равным 96 выборкам. Постройте график кратковременного преобразования Фурье.
stft(y,Fs,'OverlapLength',96)
Загрузите файл, содержащий аудио данных от тихоокеанского синего кита, дискретизированный с частотой дискретизации 4 кГц. Файл получен из библиотеки вокализаций животных, поддерживаемой Программой исследований биоакустики Корнеллского университета. Шкала времени в данных сжимается в 10 раз, чтобы поднять тангаж и сделать вызовы более слышимыми.
whaleFile = fullfile(matlabroot,'examples','matlab','data','bluewhale.au'); [w,fs] = audioread(whaleFile);
Вычислите спектрограмму песни кита с процентом перекрытия, равным восемьдесят процентам. Установите минимальный порог для спектрограммы равным -50
дБ.
pspectrum(w,fs,'spectrogram','Leakage',0.2,'OverlapPercent',80,'MinThreshold',-50)
Загрузка интерференционного узкополосного сигнала, встроенного в широкополосный сигнал.
load TransientSig
Вычислите спектр стойкости сигнала. Оба компонентов сигнала хорошо видны.
pspectrum(x,fs,'persistence', ... 'FrequencyLimits',[100 290],'TimeResolution',1)
Вейвлет преобразования является линейным представлением частоты и времени, которое сохраняет временные сдвиги и масштабирования времени.
Эта continuous wavelet transform хороша в обнаружении переходных процессов в нестационарных сигналах и для сигналов, в которых мгновенная частота быстро растет.
CWT является инвертируемым.
CWT помечает частотно-временную плоскость окнами переменного размера. Окно автоматически расширяется во времени, делая его подходящим для низкочастотных явлений, и сужается для высокой частоты явлений.
Приложения этого частотно-временного способа включают, но не ограничиваются:
Электрокардиограммы (ЭКГ): Наиболее клинически полезная информация сигнала ЭКГ обнаруживается во временных интервалах между его последовательными волнами и амплитудами, определяемыми его функциями. Вейвлет разбивает сигнал ЭКГ на шкалы, облегчая анализ сигнала ЭКГ в различных частотных областях значений.
Электроэнцефалограмма (ЭЭГ): Необработанные сигналы ЭЭГ страдают от плохого пространственного разрешения, низкого отношения сигнал/шум и программных продуктов. Непрерывный вейвлет разложение сигнала с шумом концентрирует внутреннюю информацию сигнала в нескольких вейвлеты коэффициентах, имеющих большие абсолютные значения, не изменяя случайное распределение шума. Поэтому шумоподавление может быть достигнуто путем порога коэффициентов вейвлета.
Демодуляция сигнала: Демодулируйте extended binary phase shift keying (EBPSK) с помощью адаптивного метода конструкции вейвлета.
Глубокое обучение: CWT может использоваться, чтобы создать частотно-временные представления, которые могут использоваться для обучения сверточной нейронной сети. Классификация временных рядов с использованием Wavelet Analysis and Глубокое Обучение (Wavelet Toolbox) показывает, как классифицировать сигналы ЭКГ с помощью скалограмм и передачи обучения.
cwt
(Wavelet Toolbox) вычисляет непрерывное вейвлет и отображает скалограмму. Кроме того, создайте банк фильтров CWT с помощью cwtfilterbank
(Wavelet Toolbox) и применить wt
(Wavelet Toolbox) функция. Используйте этот метод для выполнения в параллельных приложениях или при вычислении преобразования для нескольких функций в цикле.
icwt
(Wavelet Toolbox) инвертирует непрерывное вейвлет-преобразование.
Signal Analyzer имеет скалограммное представление, чтобы визуализировать CWT временных рядов.
Загрузите шумный сигнал ЭКГ, отобранный с частотой дискретизации 360 Гц.
load ecg
Fs = 360;
Вычислите непрерывное вейвлет.
cwt(ecg,Fs)
Данные ЭКГ берутся из базы данных аритмии MIT-BIH [2].
Wigner-Ville distribution (WVD) является квадратичной плотностью энергии, вычисленной путем корреляции сигнала с временной и частотной переведенной и комплексно-сопряженной версией самого себя.
Распределение Вигнера-Вилля всегда реально, даже если сигнал сложен.
Временная и частотная предельные плотности соответствуют мгновенной степени и спектральной плотности энергии, соответственно.
Мгновенная частота и групповая задержка могут быть оценены с помощью локальных моментов первого порядка распределения Вигнера.
Разрешение по времени WVD равно количеству входа отсчетов.
Распределение Вигнера может локально принимать отрицательные значения.
Приложения этого частотно-временного способа включают, но не ограничиваются:
ОАЭ являются узкополосными колебательными сигналами, излучаемыми улиткой (внутренним ухом), и их наличие указывает на нормальный слух.
Квантовая механика: Квантовые коррекции к классической статистической механике, модель переноса электронов и вычисление статических и динамических свойств квантовых систем многих тел.
wvd
вычисляет распределение Вигнера-Вилле.
xwvd
вычисляет кросс-распределение Wigner-Ville двух сигналов. Для получения дополнительной информации смотрите Использование Кросс-распределение Wigner-Ville для оценки мгновенной частоты.
Загрузите файл данных, содержащий данные о тоакустических выбросах, выбранные с частотой дискретизации 20 кГц. Эмиссия производится с помощью стимула, начинающегося с 25 миллисекунд и заканчивающегося с 175 миллисекунд.
load dpoae
Fs = 20e3;
Вычислите сглаженное-псевдослучайное распределение Вигнера Вилле отоакустических данных. График удобства изолирует частоту излучения примерно на ожидаемом значении 1,2 кГц.
wvd(dpoaets,Fs,'smoothedPseudo',kaiser(511,10),kaiser(511,10),'NumFrequencyPoints',4000,'NumTimePoints',3990)
Для получения дополнительной информации об отоакустических выбросах смотрите «Определение точной частоты через аналитический CWT» в основанном на CWT частотно-временном анализе (Wavelet Toolbox).
Reassignment усиливает локализацию спектральных оценок и производит спектрограммы, которые легче считать и интерпретировать. Метод перемещает каждую спектральную оценку в центр энергии своего интервала вместо геометрического центра интервала. Он обеспечивает точную локализацию щебета и импульсов.
Fourier synchrosqueezed transform начинается с кратковременного преобразования Фурье и «сжимает» его значения так, что они концентрируются вокруг кривых мгновенной частоты во временной частотной плоскости.
Этот wavelet synchrosqueezed transform переопределяет энергию сигнала по частоте.
Как синхронизированное преобразование Фурье, так и синхросканированное преобразование вейвлета являются инвертируемыми.
Переопределенные и синхронизирующие методы особенно подходят для отслеживания и извлечения частотно-временных ridges.
Приложения этого частотно-временного способа включают, но не ограничиваются:
Обработка аудиосигнала: Преобразование синхронизации (SST) было первоначально введено в контексте анализа аудиосигнала.
Сейсмические данные: Анализ сейсмических данных для поиска нефтяных и газовых ловушек. Синхронизация может также обнаружить слабые сигналы глубокого слоя, которые обычно размазываются в сейсмических данных.
Колебания в степенях: Паровая турбина и электрогенератор могут иметь режимы механических подсинхронных колебаний (SSO) между различными ступенями турбины и генератором. Частота SSO обычно находится между 5 и 45 Гц, и частоты режима часто близки друг к другу. Антинуазная способность и частотно-временное разрешение WSST улучшает читаемость частотно-временного представления.
Глубокое обучение: Синхронизированные преобразования могут использоваться, чтобы извлечь функции и подать в сеть, которая классифицирует данные timeseries. Сегментация формы волны с использованием глубокого обучения показывает, как fsst
выходы могут быть переданы в сеть LSTM, которая классифицирует сигналы ECG.
Используйте 'reassigned'
опция в spectrogram
, установите 'Reassigned'
аргумент в true
в pspectrum
или установите флажок Reassign в виде спектрограммы Signal Analyzer для вычисления переназначенных спектрограмм.
fsst
вычисляет Synchrosqueezed преобразование Фурье. Используйте ifsst
функция для инвертирования Synchrosqueezed преобразования Фурье. (См. «Синхронизированное преобразование речевого сигнала Фурье» для восстановления речевых сигналов с использованием ifsst
.)
wsst
(Wavelet Toolbox) вычисляет синхросканированное преобразование вейвлета. Используйте iwsst
(Wavelet Toolbox) функция для инвертирования вейвлет-синхронизации преобразования. (Смотрите Обратное Синхронизированное Преобразование Щебета (Wavelet Toolbox) для восстановления квадратичного щебета с использованием iwsst
(Wavelet Toolbox).)
Загрузите эхолокационный импульс, излучаемый большой коричневой летучей мышью (Eptesicus Fuscus). Интервал дискретизации составляет 7 микросекунд.
load batsignal
Fs = 1/DT;
Вычислите переназначенную спектрограмму сигнала.
subplot(2,1,1) pspectrum(batsignal,Fs,'spectrogram','TimeResolution',280e-6, ... 'OverlapPercent',85,'MinThreshold',-45,'Leakage',0.9) subplot(2,1,2) pspectrum(batsignal,Fs,'spectrogram','TimeResolution',280e-6, ... 'OverlapPercent',85,'MinThreshold',-45,'Leakage',0.9,'Reassign',true)
Спасибо Кертису Кондону, Кену Уайту и Аль Фенгу из Центра Бекмана при Университете Иллинойса за данные летучих мышей и разрешение использовать их в этом примере [3].
Загрузите файл, содержащий слово «strong», на котором говорит женщина и человек. Сигналы дискретизированы на частоте 8 кГц. Объедините их в один сигнал.
load Strong
x = [her' him'];
Вычислите синхронизированное преобразование Фурье сигнала. Отобразите сигнал с помощью окна Кайзера с масштабным фактором .
fsst(x,Fs,kaiser(256,20),'yaxis')
Загрузите синтетические сейсмические данные, отобранные с частотой дискретизации 100 Гц в течение 1 секунды.
load SyntheticSeismicData
Вычислите вейвлет преобразование сейсмических данных с помощью вейвлета и 30 голосов на октаву.
wsst(x,Fs,'bump','VoicesPerOctave',30,'ExtendSignal',true)
Сейсмический сигнал генерируется с помощью двух синусоидов, упомянутых в «Частотно-временном анализе сейсмических данных с использованием преобразования синхронизации», Ping Wang, Jinghuai Gao и Zhiguo Wang [4].
Измерения ускорения нагрузки, зарегистрированные на первом этаже трехэтажного испытательного сооружения в условиях землетрясения. Измерения отбирают с частотой дискретизации 1 кГц.
load quakevib
Fs = 1e3;
Вычислите вейвлет преобразование измерений ускорения. Вы анализируете данные о вибрации, которые показывают циклическое поведение. Синхронизированное преобразование позволяет вам изолировать три частотных составляющих, разделенных приблизительно на 11 Гц. Основная частота вибрации находится на 5,86 Гц, и равный peaks частот позволяют предположить, что они связаны гармонически. Циклическое поведение вибраций также видно.
wsst(gfloor1OL,Fs,'bump','VoicesPerOctave',48) ylim([0 35])
Данные сейсмографа нагрузки, зарегистрированные во время землетрясения в Кобе в 1995 году. Данные имеют частоту дискретизации 1 Гц.
load kobe
Fs = 1;
Вычислите вейвлет преобразование, которое изолирует различные частотные составляющие сейсмических данных.
wsst(kobe,Fs,'bump','VoicesPerOctave',48) ylim([0 300])
Данные представляют собой сейсмографические (вертикальное ускорение, нм/кв.с) измерения, зарегистрированные в Университете Тасмании, Хобарт, Австралия, 16 января 1995 года, начиная с 20:56:51 (GMT) и продолжаясь в течение 51 минут с 1 секундными интервалами [5].
Загрузите подсинхронные данные о колебаниях Степени системы.
load OscillationData
Вычислите вейвлет преобразование с помощью вейвлет и 48 голосов на октаву. Частоты четырех режимов имеют частоты 15 Гц, 20 Гц, 25 Гц и 32 Гц. Заметьте, что энергии режимов с частотой 15 Гц и 20 Гц уменьшаются со временем, в то время как энергия режимов с частотой 25 Гц и 32 Гц увеличения постепенно с течением времени.
wsst(x,Fs,'bump','VoicesPerOctave',48) ylim([10 50])
Эти синтетические подсинхронные данные о колебаниях были сгенерированы с помощью уравнения, заданного Чжао и др. в «Применении синхроскнозированных преобразований вейвлет для извлечения колебательных параметров подсинхронных колебаний в степенях» [6].
В constant-Q nonstationary Gabor transform используются окна с различными центральными частотами и полосами пропускания, так что отношение центральной частоты к полосе пропускания, Q-коэффициент, остается постоянным.
Преобразование Константа-Q Габора позволяет создавать стабильные обратной связи, получая совершенную реконструкцию сигнала.
В разносе частот окна центрируются на логарифмически разнесенных центральных частотах.
Приложения этого частотно-временного способа включают, но не ограничиваются:
Обработка аудиосигнала: Основные частоты тонов в музыке геометрически разнесены. Разрешение частоты слуховой системы человека приблизительно постоянное Q, что делает этот метод подходящим для обработки музыкального сигнала.
Загрузите аудио файла, содержащее фрагмент рок-музыки с вокалом, ударными и гитарой. Сигнал имеет частоту дискретизации 44,1 кГц.
load drums
Установите частотную область значений, в котором CQT имеет логарифмическую частотную характеристику, как минимально допустимую частоту, равную 2 кГц. Выполните CQT сигнала, используя 20 интервалов на октаву.
minFreq = fs/length(audio); maxFreq = 2000; cqt(audio,'SamplingFrequency',fs,'BinsPerOctave',20,'FrequencyLimits',[minFreq maxFreq])
empirical mode decomposition разлагает сигналы на intrinsic mode functions, которые образуют полный и почти ортогональный базис для исходного сигнала.
variational mode decomposition разлагает сигнал на небольшое количество узкополосных функций внутреннего режима. Метод одновременно вычисляет все формы волны режима и их центральные частоты путем оптимизации ограниченной вариационной задачи.
empirical wavelet transform разлагает сигналы на multiresolution analysis (MRA) components. Метод использует адаптируемую схему вейвлет-деления, которая автоматически определяет эмпирические вейвлет и масштабирующие фильтры и сохраняет энергию.
Этот Hilbert-Huang transform вычисляет мгновенную частоту каждой функции внутреннего режима.
Эти методы в сочетании полезны для анализа нелинейных и нестационарных сигналов.
Приложения этого частотно-временного способа включают, но не ограничиваются:
Физиологическая обработка сигналов: Анализируйте реакцию ЭЭГ человека на транскраниальную магнитную стимуляцию (ТМС) коры головного мозга.
Структурные применения: Локализуйте аномалии, которые появляются как трещины, расслоение или потеря жесткости в балках и пластинах.
Система идентификации: Изолируйте модальные коэффициенты затухания структур с тесно расположенными модальными частотами.
Океаническая техника: Идентифицируйте переходные электромагнитные нарушения порядка, вызываемые людьми в подводных электромагнитных окружениях.
Физика Солнца: Извлечение периодических компонентов данных о пятне Солнца.
Атмосферная турбулентность: Наблюдайте стабильный пограничный слой, чтобы разделить турбулентные и нетурбулентные движения.
Эпидемиология: Оцените скорость путешествий инфекционных заболеваний, таких как лихорадка Денге.
Загрузите сигнал вибрации от дефектного подшипника, сгенерированного в примере Compute Hilbert Spectrum of Vibration Signal. Сигнал дискретизируется со скоростью 10 кГц.
load bearingVibration
Вычислите первые пять функций внутреннего режима (МВФ) сигнала. Постройте график спектра Гильберта первого и третьего эмпирических режимов. Первый режим показывает увеличение износа из-за высокочастотных влияний на внешнее кольцо подшипника. Третий режим показывает резонанс, происходящий на полпути процесса измерения, который вызвал дефект подшипника.
imf = emd(y,'MaxNumIMF',5,'Display',0); subplot(2,1,1) hht(imf(:,1),fs) subplot(2,1,2) hht(imf(:,3),fs,'FrequencyLimits',[0 100])
[1] Тихоокеанский файл голубых китов получен из библиотеки вокализаций животных, поддерживаемых Программой исследований биоакустики Корнеллского университета.
[2] Moody G. B, Mark R. G. Влияние базы данных аритмии MIT-BIH. IEEE Eng in Med and Biol 20 (3): 45-50 (май-июнь 2001). (PMID: 11446209)
[3] Спасибо Кертису Кондону, Кену Уайту и Аль Фенгу из Центра Бекмана при Университете Иллинойса за данные эхолокации летучих мышей.
[4] Wang, Ping, Gao, J. and Wang, Z. Time-Frequency Analysis of Seismic Data Using Synchrosqueezing Transform, IEEE Geoscience and Remote Sensing Letters, vol 12, IsIssue 11, Dece 11, dec. 2014.
[5] Сейсмограф (вертикальное ускорение, нм/кв.сек) землетрясения в Кобе, зарегистрированного в Университете Тасмании, Хобарт, Австралия, 16 января 1995 года, начало в 20:56:51 (GMTRUE) и продолжающегося в течение 51 минут с 1 секундными интервалами.
[6] Zhao et al. Применение синхронизированных Вейвлетов преобразований для извлечения колебательных параметров подсинхронного колебания в Степень системах MDPI Energies; Опубликовано 12 июня 2018.
[7] Боашаш, Буалем. Анализ и обработка частотно-временных сигналов: комплексный справочный Elsevier, 2016.
emd
| fsst
| hht
| ifsst
| istft
| kurtogram
| pkurtosis
| pspectrum
| spectrogram
| stft
| vmd
| wvd
| xspectrogram
| xwvd
| cqt
(Wavelet Toolbox) | cwt
(Wavelet Toolbox) | cwtfilterbank
(Wavelet Toolbox) | ewt
(Wavelet Toolbox) | icqt
(Wavelet Toolbox) | icwt
(Wavelet Toolbox) | iwsst
(Wavelet Toolbox) | wsst
(Wavelet Toolbox) | wt
(Wavelet Toolbox)