Europe/Budapest
ProjectsFebruary 8, 2025

Pollák E-Tabló - OCR and Face Recognition Search Platform

image
Built for Pollák Antal Technical School, Pollák E-Tabló solves a specific real-world problem: finding people in scanned yearbook images quickly and reliably. I designed it as a full platform, not just a model demo, with secure admin workflows, long-running processing support, and manual correction tools.
  • Frontend (React + Vite + TypeScript): public browsing, admin upload/editor flows, and Keycloak login handling.
  • Backend (Express + Prisma + MySQL): API orchestration, metadata persistence, protected admin endpoints, and yearbook/person CRUD.
  • OCR service (FastAPI + OpenCV + RapidOCR): text extraction and YuNet-based face detection for candidate boxes.
  • Infrastructure: Docker Compose orchestration for frontend, backend, and OCR microservice communication.
I built the pipeline around reliability for large image processing:
  1. Chunked upload flow (/upload/init, /upload/chunk, /upload/complete) to avoid failures on large files.
  2. Background processing session in the backend with progress state and ETA tracking.
  3. Face detection + OCR extraction in the Python service, then structured candidate data returned to the backend.
  4. Server-Sent Events progress stream so users see live status instead of waiting on blocking requests.
  5. Manual correction editor with zoom/pan, box editing, add/remove person tools, and final persistence to MySQL.
Admin operations are protected with Keycloak token validation and role checks. The backend validates JWT issuer/signature and applies stricter limits on administrative endpoints. This keeps editing and upload features controlled while public search remains accessible.
  • Large-image stability: Chunked upload and high server timeouts reduced failed requests during heavy processing.
  • OCR quality on real data: I used PP-OCRv5 Latin recognition plus image preprocessing to improve name extraction quality.
  • Duplicate/false face boxes: Non-max suppression and geometric filtering helped keep face results usable.
  • User trust in long tasks: SSE progress and explicit step messaging improved the processing UX significantly.
Pollák E-Tabló became a complete production-style workflow from raw image upload to searchable, corrected yearbook data. This project represents my strongest backend-heavy portfolio piece: distributed services, auth, async processing, and UX designed around technical constraints.

Related projects

Pollak Esport - Tournament Platform for Students

Pollak Esport - Tournament Platform for Students

A full-stack esports platform for school tournaments with authentication, live updates, and custom event management logic.
Levegő BéEnbé - Rental Marketplace with Payments

Levegő BéEnbé - Rental Marketplace with Payments

A design-first rental marketplace where users can list properties, manage media, and handle secure Stripe payments.