Создайте импульс Гаусса с помощью scipy.signal.gausspulse

Опубликовано: 29 Марта, 2022

Предпосылки : Scipy

Импульсная характеристика фильтра Гаусса записывается как функция Гаусса следующим образом:

Его результат также гауссовский. В этой статье мы построим график гауссовского импульса на частоте 3 Гц с использованием библиотеки Python scipy и matplotlib. Гауссов импульс используется в цифровых фильтрах для анализа движения. Для создания импульса Гаусса используется метод scipy gausspulse (). gausspulse () возвращает модулированный по Гауссу синусоидальный импульс единичной амплитуды в моменты времени, указанные в массиве t, с центральной частотой «fc» в герцах (Гц).

Syntax: scipy.signal.gausspulse(t, fc retquad, retenv)

Parameter:

  • t: Input array.
  • fc: Center frequency.
  • retquad: If True, return the imaginary as well as the real part of the signal. Default is False.
  • retenv: If True, return the envelope of the signal. Default is False.

Returns

  • yI: The real part of the signal. Always returned.
  • yQ:  Imaginary part of signal. Only returned if retquad is True.
  • yenv:  The envelope of the signal. Only returned if retenv is True.

Подход:

  • Импортируйте необходимый модуль.
  • Создайте массив данных с помощью np.linespace.
  • Создайте импульс Гаусса с частотой 3 Гц.
  • Обозначьте график.
  • Покажите получившийся график.

Implementation using the above approach is depicted below:

Python3

from scipy import signal
import matplotlib.pyplot as plt
import numpy as np
  
t = np.linspace(-1, 1, 200)
  
i, q, e = signal.gausspulse(t, fc=3, retquad=True, retenv=True)
  
plt.plot(i, color="green")
plt.plot(q, color="black")
plt.plot(e, "--", color="red")
  
plt.title("Gauss pulse for a 3 Hz - Geeksforgeeks")
plt.ylabel("Normalized magnitude [dB]")
plt.xlabel("Normalized frequency [cycles per sample]")
plt.margins(0, 0.1)
plt.grid(which="both", axis="both")
plt.legend(["Inphase", "Quadrature", "Envelope"])
  
plt.show()

Выход:

Внимание компьютерщик! Укрепите свои основы с помощью базового курса программирования Python и изучите основы.

Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS. А чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень.