complex_steerable_decompose — MOTIONMAG decompose op

• Datenarten: image2d → table

• Aufruf: import fullseye as fs; fs.ledger.complex_steerable_decompose(image, scales: 'int' = 4, orientations: 'int' = 4) -> 'dict' (die Implementierung direkt: import motionmag; motionmag.complex_steerable_decompose(image, scales: 'int' = 4, orientations: 'int' = 4) -> 'dict'; aus dem Register: opsmotionmag.get("complex_steerable_decompose"))

Verwendung

Komplexe orientierte Teilbandzerlegung eines Bildes -> dict.

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

Splits the image into scales * orientations analytic sub-bands plus three residuals (low-pass, high-pass and a small symmetric completion band). Each sub-band is a full-resolution (H, W) complex array whose modulus is the local contrast of that scale/orientation and whose argument is the local phase — the quantity a translation shifts linearly, which is what the rest of this module is built on. There is no spatial decimation: keeping every band at full resolution costs memory but makes the frame exactly invertible, and exactness is the point.

Returns {"bands": [complex (H, W), ...], "kinds": [...], "centre_cycles_per_px": [...], "orientation_rad": [...], "shape": (H, W), "scales": s, "orientations": k}. kinds[j] is "band" for an oriented sub-band and "lowpass" / "highpass" / "residual" otherwise; centre_cycles_per_px and orientation_rad are None for residuals, which have no orientation and no single centre frequency.

Feed the whole dict back to complex_steerable_reconstruct. Round trip error, measured on a 64x64 random frame with the defaults, is max|out - in| = 6.66e-16; on a 31x37 (odd, non-square) frame 7.22e-16; and the worst over every scales in 1..8 crossed with every orientations in 1..16 on 32x32 is 7.77e-16 — the tight-frame construction is exact, not approximate (see the notes on the self-conjugate grid points

in _filter_bank).

References: Freeman & Adelson, IEEE PAMI 1991; Simoncelli & Freeman, ICIP 1995; Portilla & Simoncelli, IJCV 2000.

Ausführlicher Anwendungsleitfaden

• Leitfaden zur Familie motion_magnification

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)

• motion_magnification — py -3.11 examples/motion_magnification.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

complex_steerable_reconstruct

Gleiche Kategorie (decompose)

complex_steerable_reconstruct


*Provenance: motionmag.py — MOTIONMAG 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.