# Homing 0 – Kamera & Triangulation > Technische Detail-Doku zu [`Homing.md`](Homing.md) — dieser Teil: Foto → trianguliertes > `aruco_marker_poses.json`. > Status: Gerüst, wird sukzessive ausgebaut. --- ## Scope Schritte 1–3b der Homing-Pipeline (siehe `Homing.md` → Ablauf), a.k.a. „Board-Pipeline": | Schritt | Script | Pro | Ergebnis | |---|---|---|---| | 1 | `1_detect_aruco_observations.py` | Kamera | 2D-Marker-Ecken (mit NPZ-Intrinsik entzerrt) | | 2 | `2_estimate_camera_from_observations.py` | Kamera | Kamera-Pose relativ zum Board (`cam*_camera_pose.json`) | | 3b | `3b_corner_marker_poses.py` | einmal, ≥2 Kamera-Posen | `aruco_marker_poses.json` (3D-Weltpositionen aller Marker) | Ausgelagert in `runBoardPipeline()` (`server/server.js`) — gemeinsam genutzt von Kalibrierung und Homing. ## Offene Punkte / noch zu dokumentieren - [ ] Kamera-Intrinsik-Format (NPZ-Inhalt, Verzeichnis) - [ ] Wie `3b` mehrere Kamera-Beobachtungen eines Markers kombiniert (Triangulation/Mittelung, `num_cameras`-Feld) - [ ] Fehlerquellen: Verdeckung, Belichtung, `num_cameras < 2` → Marker fehlt komplett - [ ] Format von `aruco_marker_poses.json` (Felder `position_mm`, `corners_m`, `normal`, `edge_length_mm`) - [ ] Zusammenhang mit `Kalibrierung.md` / `Kalibrierung_Marker.md` ## Verweise - Allgemeiner Ablauf: [`Homing.md`](Homing.md) - Nächster Schritt (Gelenkwinkel aus den triangulierten Positionen): [`Homing_1_StepByStep.md`](Homing_1_StepByStep.md) - Kalibrierung: `Kalibrierung.md`, `Kalibrierung_Marker.md`