carve_look_at — 3D space_carving op

• Datenarten: vector → pose

• Aufruf: import fullseye as fs; fs.ledger.carve_look_at(eye, target=(0.0, 0.0, 0.0), up=(0.0, 0.0, 1.0)) (die Implementierung direkt: import visualhull; visualhull.carve_look_at(eye, target=(0.0, 0.0, 0.0), up=(0.0, 0.0, 1.0)); aus dem Register: ops3d.get("carve_look_at"))

Verwendung

Erzeugt eine Kamerapose (R, t), die an carve / synthesize_silhouette übergeben werden kann.

Dieselbe Implementierung wie look_at, unter einem Namen, der über die öffentliche Schicht erreichbar ist. Hinzugefügt am 2026-09-08 — bis dahin war der korrekte Pose-Helfer für Space Carving über keinen von fs. / fs.op. / fs.ledger. erreichbar, und auch fs.op_find("look") lieferte 0 Treffer. Dagegen ist fs.look_at etwas anderes (die gluLookAt-Version von render3d, 4x4, −Z vorwärts); übergibt man dessen M[:3,:3] und M[:3,3], landen alle Punkte hinter der Kamera und es wird ohne Ausnahme eine leere Silhouette zurückgegeben. Gleicher Name mit umgekehrter Konvention: die Kombination, die am leisesten falsch liegt.

Diese hier folgt der OpenCV-Konvention (X_cam = R X + t, +Z vorwärts, +X rechts, +Y unten).

Parameters

eye : (3,) array_like Kamerazentrum (Weltkoordinaten).

target : (3,) array_like Blickpunkt (Standard ist der Ursprung).

up : (3,) array_like Aufwärtsrichtung (wechselt automatisch auf eine Ersatzachse, wenn sie fast parallel zur Blickrichtung ist).

Returns

(R (3,3), t (3,)) kann direkt an synthesize_silhouette(pts, K, R, t, size) übergeben werden.

Hintergrundwissen (Physik und Konventionen hinter diesem Operator)

• blender_interop — Zusammen mit Blender — Form bauen, mit fullseye messen (Fallstricke: Achsen, Einheiten, Referenzdaten)

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.

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

• space_carving — py -3.11 examples_3d/space_carving.py

Typkompatible Folge-Operatoren (nehmen pose als Eingabe)

fuse_to_voxel · pose_error · bundle_adjust · mean_reprojection_error · optimize_pose_graph · relative_pose · mean_edge_error · rotation_translation_error

Gleiche Kategorie (space_carving)

carve · visual_hull · synthesize_silhouette


*Provenance: visualhull.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.