superquadric op• Datenarten: points → primitive
• Aufruf: import fullseye as fs; fs.ledger.fit_superquadric(points) -> 'dict' (die Implementierung direkt: import superquadric; superquadric.fit_superquadric(points) -> 'dict'; aus dem Register: ops3d.get("fit_superquadric"))
• GPU: nein (nur CPU-Referenzimplementierung)
Passt eine Superquadrik per least_squares an eine Punktmenge an und liefert dict{a, eps, R, t, residual}.
Anfangspose = Eigenvektoren des Trägheitstensors, Anfangs-a = halbe Hauptachsen-bbox, Anfangs-eps=(1,1). Bei der Optimierung wird a positiv gehalten und eps auf [0.1, 2.0] begrenzt (Clipping).
Skala: Die Punktwolke wird in ihren Schwerpunkt verschoben und in dimensionslosen, durch die Bounding-Box-Diagonale L geteilten Koordinaten gelöst, dann mit a = L·a', t = 重心 + L·t' (重心 = Schwerpunkt), residual = L³·residual' zurückgerechnet (★2026-11-05 Red-Team N5). Früher wurde in den Rohkoordinaten gelöst; da das Residuum mit Länge hoch 1.5 schrumpft, war scipys Standard-gtol schon bei der ersten Auswertung erfüllt, und für Punktwolken mit s <= 1e-4 wurde der PCA-Anfangswert unverändert zurückgegeben (Ellipsoid a=(2,1.5,1) ergab 1.979/1.495/1.001, Zentrum um 0.17·s versetzt). Jetzt ist die Lösung unabhängig von s gleich. Eine Punktwolke, deren Punkte alle zusammenfallen (L == 0), löst ValueError aus.
dict: {'a': (3,), 'eps': (2,), 'R': (3,3), 't': (3,), 'residual': float}
• 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
primitive als Eingabe)fuse_to_voxel · angle_between_lines · angle_between_planes · angle_line_plane · distance_point_plane · distance_point_line · distance_line_line · distance_segment_segment
superquadric)sample_surface · inside_outside · superquadric_residual
*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.