Jan — May 2024
Abnormal Event Detection on Pathway
A YOLOv8 and Flask prototype that detects four event classes in video, records event clips and makes them available for review.
FocusComputer vision & web integration
StatusAcademic prototype

Overview
Developed from January to May 2024, this system connects YOLOv8 inference, OpenCV video processing, Flask pages and Cloudinary storage. The code handles accident, fighting, kidnapping and chain-snatching classes. The repository includes example detections, a presentation and the final project report.
The problem
Continuous video monitoring asks a human operator to notice relevant events and find the right footage afterward. The project explores connecting detection directly to recording and review.
Implementation
- Integrated YOLOv8 inference with OpenCV frame processing and class-labelled bounding boxes.
- Used a confidence gate above 0.5 in the detection code to trigger an audio signal and start event recording.
- Wrote detected video segments to files and uploaded them to Cloudinary for later access.
- Built Flask pages for sign-in, video input, streaming and dashboard review.
Outcome & status
An academic prototype connecting four-class event detection to recording and a web interface. Repository images illustrate detections; they are not an independently measured accuracy or real-world deployment result.
From input to outcome
How it works
Read video
OpenCV reads frames from a video source.
Detect
YOLOv8 predicts classes and bounding boxes; a confidence gate controls recording.
Record
The pipeline captures event frames and writes a video clip.
Review
Cloudinary stores uploaded clips for access through the Flask interface.
Inside the implementation
Engineering decisions
Connect inference to an operator workflow
Detection is only one part of the project. The pipeline also signals an event, records footage and provides pages for reviewing clips.
Separate a trigger threshold from model quality
The 0.5 confidence gate is a recording rule in the source, not a claim of 50% accuracy. A proper evaluation would need a held-out dataset and reported precision/recall.
A closer look
Project examples

Explore further
Interested in how I build?
Let’s talk