Claude: Docker Phase 1
This commit is contained in:
@@ -81,23 +81,27 @@ Die aktuelle Blender-Pipeline läuft vollständig innerhalb eines Docker-Contain
|
||||
|
||||
### Aufgaben
|
||||
|
||||
* [x] Dockerfile erstellen → **in zwei aufteilen:** `Dockerfile.renderer` (Blender) + `Dockerfile.pipeline` (slim Python)
|
||||
* [x] docker-compose.yaml erstellen
|
||||
* [ ] cv2 in Blenders gebündeltem Python installieren (für ArUco-Generierung)
|
||||
* [ ] requirements.txt für den Pipeline-Container (numpy, scipy, opencv-contrib-python-headless), Versionen gepinnt
|
||||
* [ ] Blender 4.5 Container erfolgreich starten
|
||||
* [ ] render_loop.py innerhalb des Containers ausführen
|
||||
* [ ] render_robot.py innerhalb des Containers ausführen
|
||||
* [ ] STL-Import validieren
|
||||
* [ ] PNG-Ausgabe validieren
|
||||
* [ ] NPZ-Ausgabe validieren
|
||||
* [ ] Pipeline auf PNG-Ausgaben ermöglichen
|
||||
* [ ] markers.json validieren
|
||||
Code/Infrastruktur erstellt (Dateien in `setup/generateSets/`):
|
||||
* [x] `Dockerfile.renderer` (Ubuntu + Blender 4.5 headless) und `Dockerfile.pipeline` (slim Python)
|
||||
* [x] `docker-compose.yml` mit beiden Services + gemeinsamem `data`-Volume
|
||||
* [x] cv2 in **Blenders** gebündeltem Python (im Renderer-Dockerfile) — nicht System-Python
|
||||
* [x] `requirements.pipeline.txt` (numpy, scipy, opencv-contrib-python-headless), gepinnt
|
||||
* [x] Pfad-/Config-env in `render_robot.py` (`ROBOT_JSON`, `RENDER_OUTPUT`) und `render_Loop.py` (`BLENDER_EXE`)
|
||||
* [x] `pipeline/run_pipeline.py` — plattformunabhängiger Orchestrator (1→2→3→3b→4), lokal getestet
|
||||
* [x] `README.docker.md` mit Build-/Run-Anleitung
|
||||
* [x] Portainer-Skript: `curl` → `curl.exe` (PowerShell-Alias-Falle) gefixt
|
||||
|
||||
Im Container zu verifizieren (Docker/GPU lokal nicht testbar in der Entwicklung):
|
||||
* [ ] `docker compose build` (Blender-Download/-Version prüfen)
|
||||
* [ ] `render_Loop.py`/`render_robot.py` im Renderer-Container (STL-Import, PNG, NPZ, markers.json)
|
||||
* [ ] `pipeline/run_pipeline.py` im Pipeline-Container auf den gerenderten PNGs
|
||||
|
||||
### Ergebnis
|
||||
|
||||
Zwei Container: `blender-renderer` erzeugt Bilder/npz/Ground-Truth, `pose-pipeline`
|
||||
wertet sie aus — beide reproduzierbar, über ein gemeinsames Daten-Volume verbunden.
|
||||
Zwei Container: `approbot/blender-renderer` erzeugt Bilder/npz/Ground-Truth,
|
||||
`approbot/pose-pipeline` wertet sie aus — beide reproduzierbar, über ein gemeinsames
|
||||
`data`-Volume verbunden. Der Pipeline-Orchestrator nutzt **pro Kamera die eigene npz**
|
||||
(wichtig wegen der per-Kamera-Kalibrierfehler aus dem Linsenfehler-Feature A).
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user