istft — ACOUSTICS transform op

Datenarten: tablesignal

Aufruf: import acoustics; acoustics.istft(transform) (oder opsacoustics.get("istft"))

Verwendung

Invertiert :func:stft durch gewichtetes Overlap-Add — exakt.

> Die ausführliche Beschreibung unten ist der Originaltext — Zusammenfassung und Überschriften sind übersetzt.

Weighted overlap-add divides the synthesised sum by the overlap sum of the

*squared* window, which makes the reconstruction exact for any window and

hop satisfying NOLA, not only for the COLA pairs. :func:stft refuses the

NOLA violation up front, so if the transform was produced by it the inverse

cannot be lossy.

Measured round-trip error, `max |x - istft(stft(x))|` on 4096 samples of

white noise (float64, so 2.2e-16 is one ulp of the largest sample):

=============== ==== ==== ========= =========

window win hop max error nola_min

=============== ==== ==== ========= =========

hann 256 128 1.33e-15 0.5

hann 256 64 1.33e-15 1.5

hann 256 255 2.73e-12 2.27e-08

hamming 256 128 1.33e-15 0.5832

blackman 512 128 1.33e-15 1.206

flattop 256 64 1.33e-15 0.396

boxcar 256 128 8.88e-16 2.0

hann (nfft 512) 256 128 1.33e-15 0.5

=============== ==== ==== ========= =========

Read the third row's two columns together. `hop = 255` on a 256-sample

window overlaps by one sample, which breaks plain (unweighted) overlap-add

completely; weighted overlap-add still inverts it, but only to 2.7e-12

rather than 1.3e-15, because the squared-window overlap sum falls to

2.3e-08 and the reconstruction divides by it. NOLA is satisfied and the

result is four orders of magnitude less accurate than every other row —

which is why `nola_min` is *returned* and not merely checked. A NOLA

minimum that is small but positive is a conditioning warning, and there is

no threshold at which it stops being one, so no threshold is invented here.

Raises `ValueError: a dict missing any key :func:stft` writes, a

`spectra whose shape disagrees with the recorded nfft` / frame count,

or a non-complex `spectra`.

Ausführlicher Anwendungsleitfaden

Leitfaden zur Familie acoustic_condition_monitoring

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

acoustic_condition_monitoringpy -3.11 examples/acoustic_condition_monitoring.py

Typkompatible Folge-Operatoren (nehmen signal als Eingabe)

stft · envelope_spectrum · spectral_kurtosis · cepstrum · angular_resample · order_spectrum · octave_spectrum · weighting_response

Gleiche Kategorie (transform)

stft · stft_cola_check


*Provenance: acoustics.py — ACOUSTICS Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.