superquadric op• Datenarten: points → measurement
• Aufruf: import fullseye as fs; fs.ledger.superquadric_residual(points, a, eps, R, t) -> 'float' (die Implementierung direkt: import superquadric; superquadric.superquadric_residual(points, a, eps, R, t) -> 'float'; aus dem Register: ops3d.get("superquadric_residual"))
Das volumenkorrigierte Gross-Boult-Residuum mean((sqrt(a1 a2 a3)(F^eps1 − 1))²).
Bestimmt mit inside_outside(points, a, eps, R, t) die Innen-Außen-Funktion F jedes Punktes und gibt den Mittelwert der 2. Potenzen des punktweisen Residuums r_i = sqrt(a1*a2*a3) * (F_i**eps1 - 1) als float zurück. Punkte auf der Oberfläche haben F=1, daher ist ihr Residuum 0; innen ist das Residuum negativ, außen positiv (durch die 2. Potenz verschwindet das Vorzeichen). Es ist dieselbe Größe, die fit_superquadric minimiert, und auch residual im zurückgegebenen dict ist dieser Wert.
• points: Punktwolke, die sich zu (N,3) umformen lässt (world-Koordinaten).
• a: Radien (a1,a2,a3). eps: Formexponenten (eps1,eps2) (für F werden beide verwendet, für das äußere F**eps1 nur eps1).
• R/t: Pose (X_body = R.T @ (X - t)). None bedeutet Einheitsrotation / Ursprung.
Numerischer Schutz: F wird auf [0, 1e12] begrenzt, und a1*a2*a3 wird auf mindestens 1e-12 angehoben, bevor sqrt genommen wird (damit degenerierte Parameter nicht zu inf/NaN führen; Werte nahe der Oberfläche sind nicht betroffen).
Dimension: sqrt(a1 a2 a3) ist Länge hoch 3/2, F^eps1 - 1 ist dimensionslos, daher hat der Rückgabewert die Dimension Länge hoch 3 und hängt von der Skalierung der Punktwolke ab. Für den Vergleich unterschiedlich großer Objekte ist er ungeeignet. Dass er nicht der echte euklidische Punkt-Oberflächen-Abstand, sondern eine Näherung über den radialen Abstand ist und Ausreißern schutzlos ausgeliefert ist, steht im Modul-docstring beschrieben.
• 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.
• superquadric_fit — py -3.11 examples_3d/superquadric_fit.py
measurement als Eingabe)vol_gaussian_psf · fuse_to_voxel · fresnel_reflectance · snell_angle
superquadric)fit_superquadric · sample_surface · inside_outside
*Provenance: superquadric.py — 3D 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.