scipy.signal.windows.

kaiser_bessel_derived#

scipy.signal.windows.kaiser_bessel_derived(M, beta, *, sym=True, xp=None, device=None)[Quelle]#

Gibt ein Kaiser-Bessel-abgeleitetes Fenster zurück.

Parameter:
Mint

Anzahl der Punkte im Ausgabefenster. Wenn Null, wird ein leeres Array zurückgegeben. Eine Ausnahme wird ausgelöst, wenn es negativ ist. Beachten Sie, dass dieses Fenster nur für eine gerade Anzahl von Punkten definiert ist.

betafloat

Formparameter des Kaiser-Fensters.

symbool, optional

Dieser Parameter existiert nur, um der von den anderen Fensterfunktionen angebotenen Schnittstelle zu entsprechen und um von get_window aufgerufen werden zu können. Wenn True (Standard), wird ein symmetrisches Fenster für den Einsatz im Filterdesign 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:
wndarray

Das Fenster, normalisiert zur Erfüllung der Princen-Bradley-Bedingung.

Siehe auch

kaiser

Hinweise

Es wurde entwickelt, um für die modifizierte diskrete Cosinus-Transformation (MDCT) geeignet zu sein und wird hauptsächlich in der Audio-Signalverarbeitung und Audio-Kodierung verwendet.

Hinzugefügt in Version 1.9.0.

Referenzen

[1]

Bosi, Marina, und Richard E. Goldberg. Introduction to Digital Audio Coding and Standards. Dordrecht: Kluwer, 2003.

[2]

Wikipedia, „Kaiser window“, https://en.wikipedia.org/wiki/Kaiser_window

Beispiele

Plottet das Kaiser-Bessel-abgeleitete Fenster basierend auf der Wikipedia-Referenz [2]

>>> import numpy as np
>>> from scipy import signal
>>> import matplotlib.pyplot as plt
>>> fig, ax = plt.subplots()
>>> N = 50
>>> for alpha in [0.64, 2.55, 7.64, 31.83]:
...     ax.plot(signal.windows.kaiser_bessel_derived(2*N, np.pi*alpha),
...             label=f"{alpha=}")
>>> ax.grid(True)
>>> ax.set_title("Kaiser-Bessel derived window")
>>> ax.set_ylabel("Amplitude")
>>> ax.set_xlabel("Sample")
>>> ax.set_xticks([0, N, 2*N-1])
>>> ax.set_xticklabels(["0", "N", "2N+1"])  
>>> ax.set_yticks([0.0, 0.2, 0.4, 0.6, 0.707, 0.8, 1.0])
>>> fig.legend(loc="center")
>>> fig.tight_layout()
>>> fig.show()
../../_images/scipy-signal-windows-kaiser_bessel_derived-1.png