2.1 KiB
2.1 KiB
DearPyGUI UI Spec - Observer e WMS Server
Scopo
Rendere la demo piu' ordinata e leggibile spostando la presentazione visuale da OpenCV a DearPyGUI nei soli componenti esterni:
flywms_navigation_observer.pyflywms_wms_server.py
La parte intelligente resta invariata:
flywms_navigation.py- tracking
- snapshot logic
- WMS client
- logica OCR / FastAPI lato server
Principio architetturale
La UI non entra nel percorso critico.
Observer
- riceve gia' telemetria e preview dal core;
- DearPyGUI sostituisce solo le finestre OpenCV;
- il protocollo socket e il payload restano invariati.
WMS Server
- continua a ricevere upload e a fare OCR come oggi;
- DearPyGUI sostituisce solo le finestre OpenCV di monitoraggio;
- nessuna modifica al contratto HTTP.
Layout Observer
Colonna sinistra
- preview principale
navigate
Colonna destra superiore
- snapshot OCR payload
- crop etichetta
Colonna destra inferiore
- stato / metriche
- comando corrente
- lista comandi
Metriche minime
frame_idprocessed_framesse presenteloop_fpsyolo_fpslast_yolo_msdet_counttrack_countsnapshot_counteryolo_modese disponibilemotion_text
Layout WMS Server
Colonna sinistra
- ultima immagine ricevuta dal server
Colonna destra
- payload request corrente
- esito OCR
- esito ACK/NACK
- contatore richieste
Requisiti UI
- finestre ridimensionabili
- nessun blocco sul core/server
- refresh periodico leggero
- fallback a OpenCV se DearPyGUI non e' disponibile
Strategia di implementazione
Fase 1
- introdurre backend DearPyGUI opzionale per observer
- introdurre backend DearPyGUI opzionale per WMS server
- mantenere OpenCV come fallback
Fase 2
- rifinire il layout
- eventuali colori/stati piu' chiari
- eventuali controlli aggiuntivi
Criterio di successo
- la demo risulta piu' ordinata;
- il core intelligente non cambia comportamento;
- observer e server possono essere lanciati senza finestre OpenCV;
- il fallback OpenCV resta disponibile in caso di problema.