Laborator 1: Captură și transmisie de imagini prin aplicație mobilă

Obiectiv

În cadrul acestui laborator, studenții vor dezvolta o aplicație mobilă pentru Android/iOS care permite:

  • Captura de imagini utilizând camera dispozitivului mobil.
  • Transmiterea securizată a imaginilor prin MQTT utilizând mTLS.
  • Configurarea parametrilor camerei prin MQTT.
  • Salvarea imaginilor local în caz de conexiune intermitentă.
  • Implementarea a două moduri de funcționare:
    • Mod normal – captură periodică și trimitere la cerere.
    • Mod live – trimiterea imaginilor în timp real pentru depanare.

Cerințe

  • Utilizarea MQTT cu mTLS pentru transmiterea datelor.
  • Implementarea unui mecanism de WiFi provisioning (setarea credențialelor WiFi).
  • Posibilitatea de a regla parametrii camerei prin mesaje MQTT.
  • Implementarea a două moduri de funcționare:
    • Normal – captură la intervale definite (configurabil prin MQTT).
    • Live – captură și trimitere instantanee a imaginilor.
  • Salvarea imaginilor local în caz de lipsă de conexiune.
  • OTA update al aplicației (opțional).

Exemple de imagini pentru procesare

Puteti folosi ca si exemplu pentru inregistrarea si procesare urmatoarele imagini. Obiectul este cel de a extrage textul din imaginile sau PDF-ul atasat.

Din imaginea atasata putem extrage informatie despre persoana, profesia, locul de munca, avizul medical si tipul controlului de medicina muncii.  Imagine raport medicina muncii

Pentru a simplifica partea de procesare pe partea de web se pot extrage aceste informatii din fisierul PDF atasat ca alternativa.

PDF raport medicina muncii

Structura laboratorului

  • Partea 1: Configurarea MQTT și conectarea la broker
    • Configurarea unui broker MQTT (ex: Mosquitto, HiveMQ).
    • Implementarea autentificării și securizării conexiunii cu mTLS.
    • Trimiterea și recepția mesajelor MQTT.
  • Partea 2: Implementarea capturii de imagini
    • Accesarea camerei dispozitivului mobil.
    • Captura și preprocesarea imaginilor (redimensionare, compresie).
    • Salvarea imaginilor în memoria locală a dispozitivului.
  • Partea 3: Transmiterea imaginilor prin MQTT
    • Implementarea trimiterei imaginilor în mod periodic.
    • Implementarea unui mecanism de retry în caz de conexiune slabă.
    • Configurarea aplicației pentru a trimite imagini la cerere (prin comenzi MQTT).
  • Partea 4: Configurarea parametrilor camerei prin MQTT
    • Ajustarea parametrilor camerei prin mesaje MQTT (ex: rezoluție, calitate, mod nocturn).
    • Implementarea unui UI pentru configurarea setărilor din aplicație.
  • Partea 5: Implementarea modului „Live”
    • Transmiterea imaginilor în timp real pe baza comenzilor MQTT.
    • Utilizarea WebSocket/MQTT pentru afișarea imaginilor pe un server.
  • Partea 6 (Opțional): Implementarea actualizărilor OTA
    • Configurarea unui server pentru distribuirea actualizărilor.
    • Implementarea unui mecanism de descărcare și instalare a noii versiuni a aplicației.

Resurse

Livrabile

  • Codul sursă al aplicației mobile.
  • Un raport tehnic care explică implementarea fiecărei funcționalități.
  • Capturi de ecran și exemple de mesaje MQTT utilizate.
ss/laboratoare/01.txt · Last modified: 2025/03/18 22:28 by jan.vaduva
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0