pipeline in linea single thread
This commit is contained in:
62
aggiornamento-2026-05-16-12-04.md
Normal file
62
aggiornamento-2026-05-16-12-04.md
Normal file
@@ -0,0 +1,62 @@
|
||||
# Aggiornamento 2026-05-16 12:04
|
||||
|
||||
## Milestone prima implementazione OCR lato WMS server
|
||||
|
||||
## Obiettivo
|
||||
|
||||
Evolvere `flywms_wms_server.py` da server demo ACK/NACK a server WMS demo con pipeline remota:
|
||||
|
||||
1. riceve crop etichetta e metadati dal client navigazione;
|
||||
2. mostra l'immagine ricevuta in una finestra server;
|
||||
3. esegue OCR sul crop etichetta;
|
||||
4. prepara payload WMS finale;
|
||||
5. salva payload WMS su disco;
|
||||
6. simula verifica WMS con risposta `ACK`/`NACK`;
|
||||
7. risponde realmente al client.
|
||||
|
||||
## Decisioni concordate
|
||||
|
||||
- Il codice OCR deve idealmente essere il codice numerico reale sull'etichetta.
|
||||
- Se OCR reale non e' disponibile o non legge nulla, usare fallback demo configurabile.
|
||||
- Il server deve rispondere realmente al client.
|
||||
- Il client, per ora, continua a mostrare la risposta ma mantiene la logica di attesa demo gia' configurata.
|
||||
- In futuro il tempo di attesa verra' spostato completamente lato server e il client si adeguera' alla risposta.
|
||||
- La finestra payload server mostra solo l'ultimo gaylord ricevuto.
|
||||
- Il server salva anche il payload WMS finale in JSON, oltre al metadata originale.
|
||||
- L'esito `ACK/NACK` resta governato da `wms_fake_ack_mode`.
|
||||
|
||||
## Finestre server previste
|
||||
|
||||
- `wms immagine ricevuta`: crop etichetta ricevuto dal client.
|
||||
- `wms payload`: ultimo payload WMS con informazioni utili:
|
||||
- request id;
|
||||
- client id / drone;
|
||||
- snapshot id;
|
||||
- posizione;
|
||||
- codice OCR;
|
||||
- esito WMS;
|
||||
- data/ora ricezione;
|
||||
- track id;
|
||||
- bbox etichetta;
|
||||
- vettore movimento.
|
||||
|
||||
## Configurazione prevista
|
||||
|
||||
Da aggiungere in `flywms_navigation.ini`:
|
||||
|
||||
```ini
|
||||
wms_ui_enabled = true
|
||||
wms_ocr_enabled = true
|
||||
wms_ocr_mode = auto
|
||||
wms_fake_ocr_prefix = UDC
|
||||
wms_fake_ocr_delay_sec = 0.2
|
||||
wms_fake_wms_delay_sec = 1.0
|
||||
wms_operator = udrone
|
||||
wms_site = demo-magazzino
|
||||
```
|
||||
|
||||
## Note tecniche
|
||||
|
||||
La GUI OpenCV del server non deve essere aggiornata direttamente dall'handler HTTP. L'handler aggiorna stato condiviso thread-safe; un thread UI separato aggiorna le finestre OpenCV.
|
||||
|
||||
L'OCR reale verra' implementato cercando prima le opzioni gia' disponibili nell'ambiente/progetto. Se non disponibili, il server resta funzionante con fallback demo e lo segnala nel payload.
|
||||
Reference in New Issue
Block a user