riesz_transform — QUAT riesz op

• Datenarten: image2d → qimage

• Aufruf: import fullseye as fs; fs.ledger.riesz_transform(image) -> 'np.ndarray' (die Implementierung direkt: import quatimage; quatimage.riesz_transform(image) -> 'np.ndarray'; aus dem Register: opsquat.get("riesz_transform"))

Verwendung

Die 2-D-Riesz-Transformation eines Bildes als reines Quaternionenfeld. → (H, W, 4).

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

The isotropic generalisation of the Hilbert transform: a *pair* of filters with frequency responses -i*u/|w| and -i*v/|w|, returned as the quaternion (0, R1 f, R2 f, 0). It is the 2-D object that has no complex analogue — the 1-D analytic signal needs a direction to say which way "90 degrees later" is, and in 2-D there is no single direction, so the answer needs two components and therefore an algebra with room for them.

Closed form, which is how this is tested rather than eyeballed

For a grating cos(2*pi*(u0*x + v0*y)) sampled on the DFT grid,

R1 = (u0/|w0|) * sin(2*pi*(u0*x + v0*y)),

R2 = (v0/|w0|) * sin(...)

exactly. Measured over a table of eight grid-exact orientations from 0 to 159.4 degrees on a 64x64 frame, the largest absolute deviation from that closed form is 6.1e-15, and the orientation recovered through monogenic_orientation matches the grating's to 3.6e-15 rad at every one of them. There is no tolerance to choose.

Note the scalar component is 0, so this is the Riesz *transform* and not the monogenic signal — feeding it to monogenic_phase gives pi/2 everywhere, correctly but uselessly. Use monogenic_signal, which keeps the band-pass image in the scalar slot.

Raises ValueError: *image* is not a finite real (H, W) array with H, W >= 2, or exceeds MAX_PIXELS.

Ausführlicher Anwendungsleitfaden

• Leitfaden zur Familie quaternion_monogenic

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)

• quaternion_monogenic — py -3.11 examples/quaternion_monogenic.py

Typkompatible Folge-Operatoren (nehmen qimage als Eingabe)

quaternion_to_rgb · quat_norm · quat_conjugate_image · quat_normalize_image · quat_image_multiply · monogenic_amplitude · monogenic_phase · monogenic_orientation

Gleiche Kategorie (riesz)

monogenic_signal · monogenic_amplitude · monogenic_phase · monogenic_orientation


*Provenance: quatimage.py — QUAT 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.