import numpy as np from scipy import signal class AntiJammingSignalAlgo: @staticmethod def time_frequency_filter(rx_signal, sample_rate): return signal.wiener(rx_signal) @staticmethod def adaptive_filter(rx_signal, sample_rate): return signal.lfilter([1.0/3]*3, 1, rx_signal) @staticmethod def polarization_filter(rx_signal, sample_rate): analytic_signal = signal.hilbert(rx_signal) amplitude_envelope = np.abs(analytic_signal) return rx_signal / amplitude_envelope