Laborator 2: Platformă web pentru gestionarea imaginilor

Obiective

  • Crearea unei platforme web care primește, procesează și salvează imaginile transmise prin MQTT de platforma hardware/mobila
  • Implementarea unui sistem de autentificare și autorizare pentru utilizatori
  • Gestionarea dispozitivelor hardware/mobile conectate (vizualizare, actualizare firmware, configurare)
  • Controlul parametrilor camerei și al modului de funcționare prin interfață web
  • Implementarea operațiunilor de procesare a imaginilor (redimensionare, filtrare, analiză de bază)
  • Vizualizarea și descărcarea imaginilor procesate
  • Implementarea mecanismului de actualizare OTA pentru dispozitivele hardware

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

Cerințe tehnologice

  • Backend: Python (Flask/Django/FastAPI) sau Node.js (Express)
  • Frontend: React/Vue/Angular pentru interfața utilizatorului
  • Bază de date: PostgreSQL/MySQL/MongoDB pentru stocarea imaginilor și metadatelor
  • MQTT Broker: Eclipse Mosquitto/HiveMQ pentru recepția imaginilor
  • Cloud Storage: AWS S3/MinIO sau filesystem local pentru imaginile salvate
  • Procesare imagini: OpenCV/Pillow pentru filtrare, redimensionare și analiză

Funcționalități

1. Recepția și salvarea imaginilor transmise prin MQTT

  • Subscriere la topic-ul MQTT pe care dispozitivele trimit imagini
  • Decodificarea și salvarea imaginilor într-un director local sau cloud storage
  • Stocarea metadatelor imaginii în baza de date (timp, dispozitiv sursă, parametri cameră)

2. Autentificare și gestionare utilizatori

  • Înregistrare și autentificare utilizatori cu roluri diferite (admin, operator, vizualizator)
  • Protejarea endpoint-urilor API cu JWT/OAuth

3. Vizualizarea și gestionarea dispozitivelor conectate

  • Listarea dispozitivelor conectate și a ultimelor imagini primite
  • Monitorizarea stării dispozitivelor (online/offline, parametri activi)
  • Comenzi de control trimise către dispozitive (reglare parametri cameră, schimbare mod operare)

4. Procesarea imaginilor

  • Redimensionare automată pentru optimizare
  • Aplicare de filtre de bază (contrast, luminozitate, grayscale)
  • Analiză simplă a imaginii (detecție muchii, histograma culorilor)

5. Descărcarea și vizualizarea imaginilor

  • Galerie cu imagini sortate după dispozitiv și timp
  • Opțiune de descărcare a imaginilor brute sau procesate

6. Actualizare firmware OTA pentru dispozitivele hardware/mobile

  • Trimiterea unei versiuni noi de firmware către dispozitive
  • Monitorizarea stării update-ului (success/fail/log-uri)

Evaluare

  • Implementarea sistemului de recepție și salvare imagini (20%)
  • Autentificare și gestionare utilizatori (15%)
  • Monitorizare și control dispozitive hardware (20%)
  • Procesare și optimizare imagini (20%)
  • Vizualizare și descărcare imagini (15%)
  • Implementarea OTA (opțional)

Resurse suplimentare

ss/laboratoare/02.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