SQLite-Ereignisse und Personenprofile vorbereiten

This commit is contained in:
marcinator_2 committed 2026-10-01 03:50:26 +02:00
1 parent 643146599d
commit f15ab1d399
9 files changed
+637 -21

No files matched your search

+23 -7
View File
@@ -13,7 +13,8 @@ sich eine Skelett-Hand innerhalb der Attrappe.
Die Weboberfläche zeigt das Livebild, Betriebszustand und Ereignisse.
Bilder und kurze Videoclips lassen sich auf dem Laptop speichern und
manuell prüfen. Die Erkennung meldet Personen oder Bewegungen in definierten
Bereichen; sie identifiziert keine Personen.
Bereichen. Eine spätere Kamera-Zuordnung zu Profilen soll nur bei
ausreichender Sicherheit erfolgen; sonst bleibt das Ereignis ohne Profil.
## Bisherige Wünsche und Bestand
@@ -47,8 +48,13 @@ Bereichen; sie identifiziert keine Personen.
- „Voller Schreck“ ist der gewünschte Standardmodus; der Modus soll später
in der WebUI auf Sanft, Atmosphäre oder Aus umstellbar sein.
- Liveansicht sowie Speicherung von Fotos und Videoclips auf dem Laptop.
- Wunsch nach Prüfung verdächtiger Rückkehr: Ereignisübersicht und manuelles
Vergleichen der Clips; keine automatische personenübergreifende Identifizierung.
- Neuer Wunsch nach Personenprofilen und automatischer Zuordnung
wiederkehrender Besucher per Kamera. Die bisherige Einschränkung auf
manuelles Vergleichen wurde damit geändert; Erkennungsverfahren und
Zuverlässigkeit am echten Kamerabild sind noch offen.
- Unbekannte Besucher sollen automatisch neue Profile erhalten. Automatisch
erzeugte Profile und Gesichtsmerkmale sollen 30 Tage nach der letzten
Sichtung gelöscht werden; der Kamerateil ist noch nicht implementiert.
## Erkenntnisse aus dem Referenzvideo
@@ -79,7 +85,7 @@ zum Belastungstest.
| Komponente | Aufgabe |
|---|---|
| Pi 5 | Kamera, anonyme Personenerkennung, WebUI, Ereignisse und Clip-Puffer |
| Pi 5 | Kamera, Personenerkennung, spätere Profilzuordnung, WebUI, Ereignisse und Clip-Puffer |
| Pi 3 oder 4 (optional) | Effekte, Ablaufsteuerung und lokale Bedienelemente |
| Laptop | WebUI aufrufen, Livebild ansehen, Clips herunterladen |
| Treiber und separate Versorgung | Motoren, Servos und Beleuchtung versorgen |
@@ -116,8 +122,9 @@ Wartbarkeit wichtiger als sture Einhaltung der Grenze. Vorgesehene Module:
- `config.py` – zentrale Konfiguration und Validierung
- `camera.py` – Kamerazugriff und Capture-Puffer
- `detector.py` – anonyme Personen-/Bewegungserkennung
- `events.py` – Ereignisverwaltung und Clip-Speicherung
- `detector.py` – Personen-/Bewegungserkennung als Auslöser
- `event_store.py` – SQLite für Testereignisse und Profilkennungen;
Clip-Speicherung und Kamera-Zuordnung folgen später
- `effects.py` – Effektablaufsteuerung, bei Bedarf auf dem Effekt-Pi
- `web.py` – FastAPI-Endpunkte und MJPEG-Livebild in der ersten Version
- `main_controller.py` – Start, Verbindung und Hauptloop auf Pi 5
@@ -261,8 +268,12 @@ Rücksetzen neu.
### 4. Kamera und WebUI ergänzen
- [x] MJPEG-Livebild, Schnappschuss und WebUI im Demo-Modus lokal prüfen.
- [x] SQLite für Testereignisse und Profile lokal prüfen; automatische
Kamera-Zuordnung ist noch nicht aktiv.
- [ ] Livebild und geschützten lokalen Zugriff bereitstellen.
- [ ] Person-/Bereichserkennung ohne Identitätsbestimmung einrichten.
- [ ] Person-/Bereichserkennung als Auslöser einrichten.
- [ ] Erkennungsverfahren für wiederkehrende Personen auswählen, mit echten
Tag-/Nachtbildern auf Fehlzuordnungen prüfen und erst dann aktivieren.
- [ ] Gewählten Auslöser mit dem Effektablauf verbinden und Fehlalarme messen.
- [ ] Ereignisse mit begrenztem Vor- und Nachlauf aufzeichnen.
- [ ] Übersicht, Download und automatische Löschung umsetzen.
@@ -301,6 +312,8 @@ sind bekannt und der Betreiber kann jederzeit stoppen oder sanft schalten.
die Kamera nur dokumentieren?
9. Reicht nach dem ersten Test ein Pi, oder begründen Aufbau und Last einen
zweiten Pi?
10. Wie werden Profilbeispiele erfasst und geprüft, und ab welcher
Unsicherheit bleibt eine Kamera-Zuordnung offen?
## Fortschritt
@@ -308,6 +321,9 @@ sind bekannt und der Betreiber kann jederzeit stoppen oder sanft schalten.
- [x] Allgemeines Uploadskript und Anleitung für Projektdateien vorbereitet.
- [x] Erste Kamera-WebUI mit Demo-Feed und simulierter Steuerung erstellt;
fünf lokale Softwaretests bestanden.
- [x] SQLite-Ereignisdatenbank mit Profilkennungen und WebUI-Verwaltung
implementiert. Die 30-Tage-Löschung für Auto-Profile ist im
Datenmodell und als laufende Bereinigung vorbereitet.
- [x] Optionales Installationsskript für WebUI-Autostart beim Pi-Start und
Integration in das Uploadskript erstellt; nur lokal geprüft.
- [x] Lokale Git-Versionsverwaltung für Code, Planung und bearbeitbare