Skip to content

Lily-kwamboka/Election_Watch_AI

Repository files navigation

Election Watch AI System

Election Watch AI Demo Example of ballot box monitoring in action

Overview

This project implements a comprehensive computer vision system to monitor ballot boxes and detect potential electoral fraud or irregularities. The system combines multiple deep learning models to analyze video feeds in real-time, detecting suspicious activities while preserving voter privacy.

System Tasks

  1. Ballot Drop Detection Model: YOLOv8 (CNN-based object detection)
  • Datasets:

. Leap Hand Gesture Dataset

. Synthetic Ballot Dataset (generated)

. Purpose: Detect when hands place ballot papers into the box and count valid drops

  1. Tampering Detection Model: CNN + LSTM (for video anomaly recognition)
  • Datasets:

. Synthetic Ballot Dataset

. Purpose: Identify suspicious activities like:

. Box shaking

. Unauthorized opening

. Ballot stuffing

. Other unusual events

  1. Voter Re-Entry/Repetition Detection Model: YOLOv8 + DeepSort (object tracking)
  • Dataset: Synthetic Ballot Dataset (with different outfits)

Purpose: Track individuals to detect if the same person votes multiple times

  1. Voting Spike Pattern Detection Model: LSTM (for time-series anomaly detection)
  • Dataset: Synthetic CSV Logs (generated from events)

Purpose: Identify unusually high ballot drop rates that may indicate fraud

  1. Privacy Protection (Face Blurring) Model: MTCNN (face detection) + OpenCV Gaussian Blur
  • Dataset: LFW Face Dataset

Purpose: Automatically detect and blur faces in footage to protect voter privacy

Technical Implementation

Models Used Model Purpose Dataset YOLOv8 Hand and ballot detection Leap Hand Gesture + Synthetic Ballot Images Siamese Network (optional) Re-entry verification DukeMTMC-reID CNN + LSTM Tampering detection UCF Crime + Simulated Clips LSTM Time-series anomaly detection Generated CSV logs MTCNN Face detection for blurring LFW Face Dataset Datasets Dataset Source

LFW Face Dataset Kaggle Link Hand Gesture Dataset Kaggle Link Synthetic Ballot Dataset Generated using OpenCV/Blender

System Architecture

alt text

Getting Started

  • Prerequisites . Python 3.8+

. NVIDIA GPU (recommended)

. CUDA/cuDNN (for GPU acceleration)

Installation

bash

License
  • This project is licensed under the MIT License - see the LICENSE file for details.
Contact
Next Steps:
  • View full analysis in the notebook

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5