This repository contains the final computer vision violation detection system for Group 28.
All submission files, report document, source code, and local model weights are organized under the Group28 directory.
Please refer to Group28/README.md for detailed installation, dependencies setup, and usage instructions.
Inside the submission folder, we provide two distinct implementations of the violation detector:
- PaddleOCR PP-OCRv5 Pipeline (
Group28/solution.py): Uses custom YOLO models and offline PaddleOCR for maximum speed and accuracy. - 6-Stage EasyOCR Pipeline (
Group28/solution_6stage.py): Incorporates a 6-stage image preprocessing pipeline with Test-Time Augmentation (TTA) and offline EasyOCR. - Project Report (
Group28/Group28.pdf): Detailed report for the system architecture and evaluation results.
This repo includes a simple Streamlit app in app.py.
pip install -r requirements.txt
streamlit run app.pydocker build -t traffic-violation-demo .
docker run -p 8501:8501 traffic-violation-demo- Push this repo to GitHub.
- Go to Streamlit Community Cloud.
- Select this repository.
- Set the main file path to
app.py. - Deploy.
Note: the model files are already bundled under Group28/models/, so the app does not need to download weights at runtime.