05. Zielarchitektur - MatthiasBurger-Coder/BackgroundRemover GitHub Wiki
5.1 Gesamtaufbau
Das Projekt wird in fünf Hauptschichten gegliedert:
A. Core Processing
Hier passiert die eigentliche Arbeit.
- Frame Extraction
- Seed / ROI Detection
- SAM Segmentation
- Video Propagation
- Motion Estimation
- Mask Refinement
- Alpha Composition
- Rendering
B. Application Orchestration
Steuert Jobs und Konfigurationen.
- Job starten
- Status verwalten
- Zwischenergebnisse sammeln
- Fehler behandeln
- Preview/Final unterscheiden
C. API Layer
FastAPI für:
- Upload
- Job-Anlage
- Job-Status
- Artefakt-Download
- Logs / Telemetrie
FastAPI ist dafür passend, weil es Typen-basiert arbeitet und automatisch interaktive Doku bereitstellt. ([FastAPI][4])
D. Internal UI
Streamlit für:
- Video laden
- Keyframe wählen
- Prompt setzen
- Vorschau sehen
- Parameter justieren
- Fehlerfälle inspizieren
Das ist sinnvoll für eine interne Oberfläche, aber ihr müsst das Rerun-Verhalten mit Session State und Caching bewusst steuern. ([Streamlit Dokumentation][5])
E. Analytics
Pandas + Matplotlib für:
- Laufzeiten
- GPU-/CPU-Zeiten
- Qualitätsmetriken
- Vergleich Preview vs Final
- Fehlerserien