get_window#
- scipy.signal.get_window(window, Nx, fftbins=True, *, xp=None, device=None)[Quelle]#
Gibt ein Fenster einer gegebenen Länge und eines gegebenen Typs zurück.
- Parameter:
- windowstring, float oder tuple
Der Typ des zu erstellenden Fensters. Weitere Details siehe unten.
- Nxint
Die Anzahl der Abtastpunkte im Fenster.
- fftbinsbool, optional
Wenn True (Standard), wird ein "periodisches" Fenster erstellt, das zur Verwendung mit ifftshift und zur Multiplikation mit dem Ergebnis einer FFT bereit ist (siehe auch
fftfreq). Wenn False, wird ein "symmetrisches" Fenster zur Verwendung bei der Filterkonstruktion erstellt.- 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:
- get_windowndarray
Gibt ein Fenster der Länge Nx und des Typs window zurück.
Hinweise
Fenstertypen
kaiser(benötigt beta)kaiser_bessel_derived(benötigt beta)gaussian(benötigt Standardabweichung)general_cosine(benötigt Gewichtungskoeffizienten)general_gaussian(benötigt Potenz, Breite)general_hamming(benötigt Fensterkoeffizient)dpss(benötigt normalisierte Halb-Bandbreite)chebwin(benötigt Dämpfung)
Wenn das Fenster keine Parameter benötigt, kann window ein String sein.
Wenn das Fenster Parameter benötigt, muss window ein Tupel sein, wobei das erste Argument der String-Name des Fensters ist und die folgenden Argumente die benötigten Parameter sind.
Wenn window eine Gleitkommazahl ist, wird sie als Beta-Parameter des
kaiser-Fensters interpretiert.Jeder der oben aufgeführten Fenstertypen ist auch der Name einer Funktion, die direkt aufgerufen werden kann, um ein Fenster dieses Typs zu erstellen.
Beispiele
>>> from scipy import signal >>> signal.get_window('triang', 7) array([ 0.125, 0.375, 0.625, 0.875, 0.875, 0.625, 0.375]) >>> signal.get_window(('kaiser', 4.0), 9) array([ 0.08848053, 0.29425961, 0.56437221, 0.82160913, 0.97885093, 0.97885093, 0.82160913, 0.56437221, 0.29425961]) >>> signal.get_window(('exponential', None, 1.), 9) array([ 0.011109 , 0.03019738, 0.082085 , 0.22313016, 0.60653066, 0.60653066, 0.22313016, 0.082085 , 0.03019738]) >>> signal.get_window(4.0, 9) array([ 0.08848053, 0.29425961, 0.56437221, 0.82160913, 0.97885093, 0.97885093, 0.82160913, 0.56437221, 0.29425961])