Мне известны по крайней мере два отдельных способа получения огибающей амплитуды из сигнала.
Ключевое уравнение:
E(t)^2 = S(t)^2 + Q(S(t))^2
Where Q represents a π/2 phase shift (also known as quadrature signal).
Самым простым способом, который мне известен, является получение Q, состоящий в том, чтобы разложить S (t) на группу синусоидальных компонентов, используя FFT, повернуть каждый компонент на четверть оборота против часовой стрелки (помните, что каждый компонент будет комплексным числом, поэтому конкретный компонент x + iy -> -y + ix) и затем рекомбинировать.
Этот подход работает довольно хорошо, хотя требует некоторой настройки (я еще недостаточно хорошо понимаю математику, чтобы объяснить это лучше)
Здесь есть пара ключевых терминов, а именно «преобразование Гильберта» и «аналитический сигнал».
Я избегаю использовать эти термины, потому что я почти уверен, что стал свидетелем значительной неоднозначности в их использовании.
Один документ описывает (сложный) аналитический сигнал исходного реального сигнала f (t) как:
Analytic(f(t)) = f(t) + i.H(f(t))
where H(f(t)) represents the 'π/2 phase shift' of f(t)
в этом случае огибающая амплитуды просто | Analytic (f (t)) |, что возвращает нас к исходному уравнению Пифагора
NB: Недавно я столкнулся с более продвинутой техникой, включающей сдвиг частоты и фильтр нижних частот. Теория состоит в том, что мы можем построить аналитический сигнал различными способами; мы разлагаем f (t) на положительные и отрицательные синусоидальные частотные компоненты, а затем просто удаляем отрицательные компоненты и удваиваем положительные компоненты. и возможно сделать это «удаление отрицательной частотной составляющей» путем сочетания сдвига частоты и фильтрации нижних частот. это можно сделать очень быстро, используя цифровые фильтры. Я еще не исследовал этот подход, так что это столько, сколько я могу сказать на данный момент.