This is an old revision of the document!


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

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

* [https://flask.palletsprojects.com Flask Documentation] / [https://fastapi.tiangolo.com FastAPI Documentation] * [https://mqtt.org MQTT Protocol Overview] * [https://opencv.org OpenCV Image Processing] * [https://react.dev React Documentation]

ss/laboratoare/02.1740498925.txt.gz · Last modified: 2025/02/25 17:55 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