scipy.signal.windows.

taylor#

scipy.signal.windows.taylor(M, nbar=4, sll=30, norm=True, sym=True, *, xp=None, device=None)[Quelle]#

Gibt ein Taylor-Fenster zurück.

Die Taylor-Fenster-Tapering-Funktion approximiert das konstante Seitenlob-Niveau des Dolph-Chebyshev-Fensters für eine parametrisierte Anzahl von nahen Seitenloben, erlaubt aber dann ein Tapering darüber hinaus [2].

Die SAR-Community (Synthetic Aperture Radar) verwendet üblicherweise die Taylor-Gewichtung für die Bildverarbeitung, da sie eine starke, wählbare Seitenlob-Unterdrückung bei minimaler Verbreiterung des Hauptlobens bietet [1].

Parameter:
Mint

Anzahl der Punkte im Ausgabefenster. Wenn Null, wird ein leeres Array zurückgegeben. Bei negativen Werten wird eine Ausnahme ausgelöst.

nbarint, optional

Anzahl der nahezu konstanten Seitenloben, die an das Hauptlob angrenzen.

sllfloat, optional

Gewünschte Unterdrückung des Seitenlob-Niveaus in Dezibel (dB) relativ zur DC-Verstärkung des Hauptlobens. Dies sollte eine positive Zahl sein.

normbool, optional

Wenn True (Standard), werden die Fensterwerte durch den größten (mittleren) Wert bei ungerader Fensterlänge oder den Wert, der zwischen den beiden wiederholten mittleren Werten bei gerader Fensterlänge auftreten würde, geteilt, sodass alle Werte kleiner oder gleich 1 sind. Wenn False, bleibt die DC-Verstärkung bei 1 (0 dB) und die Seitenloben sind um sll dB tiefer.

symbool, optional

Wenn True (Standard), wird ein symmetrisches Fenster zur Filterentwurf verwendet. Wenn False, wird ein periodisches Fenster für die Spektralanalyse generiert.

xparray_namespace, optional

Optionaler Array-Namespace. Sollte mit dem Array-API-Standard kompatibel sein oder von array-api-compat unterstützt werden. Standard: numpy

device: any

optionale Gerätespezifikation für die Ausgabe. Sollte mit einer der unterstützten Gerätespezifikationen in xp übereinstimmen.

Rückgabe:
outarray

Das Fenster. Wenn norm True (Standard) ist, wird der Maximalwert auf 1 normalisiert (obwohl der Wert 1 nicht erscheint, wenn M gerade und sym True ist).

Referenzen

[1]

W. Carrara, R. Goodman und R. Majewski, „Spotlight Synthetic Aperture Radar: Signal Processing Algorithms“, Seiten 512-513, Juli 1995.

Beispiele

Plotten Sie das Fenster und seine Frequenzantwort

>>> import numpy as np
>>> from scipy import signal
>>> from scipy.fft import fft, fftshift
>>> import matplotlib.pyplot as plt
>>> window = signal.windows.taylor(51, nbar=20, sll=100, norm=False)
>>> plt.plot(window)
>>> plt.title("Taylor window (100 dB)")
>>> plt.ylabel("Amplitude")
>>> plt.xlabel("Sample")
>>> plt.figure()
>>> A = fft(window, 2048) / (len(window)/2.0)
>>> freq = np.linspace(-0.5, 0.5, len(A))
>>> response = 20 * np.log10(np.abs(fftshift(A / abs(A).max())))
>>> plt.plot(freq, response)
>>> plt.axis([-0.5, 0.5, -120, 0])
>>> plt.title("Frequency response of the Taylor window (100 dB)")
>>> plt.ylabel("Normalized magnitude [dB]")
>>> plt.xlabel("Normalized frequency [cycles per sample]")
../../_images/scipy-signal-windows-taylor-1_00.png
../../_images/scipy-signal-windows-taylor-1_01.png