Skip to content

harishhardik/automated_omr_evaluator

Repository files navigation

OMR Evaluation Platform By Epic Bytes

A comprehensive system for processing and evaluating Optical Mark Recognition (OMR) sheets with high accuracy and scalability.

πŸ—οΈ System Architecture

Core Components

  • Backend API: FastAPI-based REST API for image processing and scoring
  • ML Pipeline: CNN-based bubble classification with OpenCV preprocessing
  • Frontend Dashboard: React-based web interface for uploads and results
  • Database: PostgreSQL for data persistence and audit trails
  • Reporting: PDF generation and analytics dashboard

Scalability Features

  • Horizontal scaling with load balancers
  • Redis caching for template data
  • Queue-based processing for high-volume uploads
  • CDN for static assets and processed images

πŸ“ Project Structure

omr-platform/
β”œβ”€β”€ backend/                 # FastAPI backend
β”œβ”€β”€ frontend/               # React frontend
β”œβ”€β”€ ml_models/              # CNN models and training
β”œβ”€β”€ database/               # Database schemas and migrations
β”œβ”€β”€ docs/                   # Documentation
β”œβ”€β”€ tests/                  # Test suites
└── docker/                 # Docker configurations

πŸš€ Quick Start

  1. Backend Setup:

    cd backend
    pip install -r requirements.txt
    uvicorn main:app --reload
  2. Frontend Setup:

    cd frontend
    npm install
    npm start
  3. Database Setup:

    docker-compose up -d postgres redis

πŸ“Š Performance Targets

  • Throughput: 3000+ sheets per exam day
  • Accuracy: <0.5% error tolerance
  • Response Time: <2s per sheet processing
  • Availability: 99.9% uptime

πŸ”§ Key Features

  • Mobile camera support with lighting correction
  • Multiple template version support
  • Human-in-the-loop review system
  • Real-time processing status
  • Comprehensive audit logging
  • Bulk export capabilities

About

This is for the Innomatics Research Labs.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published