ForensVision is an advanced forensic video analysis system that identifies violent behavior and weapons in videos. It integrates a Python backend running machine learning models with a modern Next.js frontend, making it easy to upload videos and view analysis results instantly.
- 🎥 Analyze uploaded videos for violence and weapon detection
- ⚡ Fast and accurate AI-based processing
- 🚔 Designed for forensic investigators, security professionals, and law enforcement
-
Clone and navigate to backend
git clone https://github.com/ryshel-jasmi/ForensVision.git cd ForensVision/backend -
Create virtual environment
python -m venv venv venv\Scripts\activate # On Windows # source venv/bin/activate # On Linux/macOS
-
Install dependencies
pip install -r requirements.txt
-
Start the backend server
python main.py
Server will start at
http://localhost:8000
-
Navigate to frontend directory
cd ForensVision/frontend -
Install dependencies
npm install
-
Start the development server
npm run dev
Frontend will be available at
http://localhost:3000
# Backend Configuration
CORS_ORIGINS=http://localhost:3000
MAX_FILE_SIZE=500MB
MODEL_DEVICE=auto# Frontend Configuration
NEXT_PUBLIC_API_URL=http://localhost:8000- Architecture: MoBiLSTM (Mobile + Bidirectional LSTM)
- Components:
- LSTM for temporal analysis
- YOLO for object detection
- ResNet-50 for visual feature extraction
- Input: Video frames with person tracking
- Output: Violence probability with component scores
- Architecture: YOLOv8n (Nano variant for speed)
- Training: Custom dataset with multiple weapon types
Models are automatically loaded from the models/ directory:
- Violence:
models/violence_detection/MoBiLSTM_violence_detection_model.h5 - Weapons:
models/weapon_detection/weapon_detection.pt