Real-time AI security system that detects robbery and forced surrender in stores using 3-layer detection: LSTM pose analysis, YOLOv8 appearance classification, and weapon detection. Instantly alerts store owners and police via SMS when a criminal forces someone to surrender money. Built for Cameroon and African markets.
# SafeStore AI 🔒
**Real-Time Robbery & Forced Surrender Detection System**
Detects criminals forcing store owners to surrender money using 3-layer AI detection.
Sends instant SMS alert to owner and police when robbery is detected.
---
## The Goal
Detect this specific scenario:
```
Criminal enters store → Points weapon → Forces owner to raise hands
↓
AI detects surrender pose + weapon + masked face
↓
INSTANT SMS to owner + police while robbery is happening
```
---
## Project Structure
```
SafeStoreAI/
│
├── main.py ← RUN THIS to start detection
├── train.py ← Train LSTM action model
├── train_weapons.py ← Train weapon detector
├── train_appearance.py ← Train appearance classifier
├── requirements.txt
├── .env.example ← Copy to .env, add your details
│
├── ai_engine/
│ ├── pose_extractor.py ← MediaPipe body keypoints
│ ├── threat_engine.py ← Combines 3 layers into threat score
│ └── hud.py ← Live display overlay
│
├── models/
│ ├── violence_lstm.py ← LSTM neural network
│ ├── weapon_detector.py ← YOLOv8 weapon detection
│ ├── appearance_detector.py ← YOLOv8 appearance classification
│ └── saved/ ← Trained model weights go here
│
├── alerts/
│ └── alert_system.py ← SMS via Africa's Talking
│
├── database/
│ └── models.py ← Alert history database
│
├── utils/
│ ├── collect_data.py ← Record training data from webcam
│ └── process_videos.py ← Convert videos to .npy sequences
│
├── tests/
│ ├── test_webcam.py ← Test 1: camera works
│ ├── test_pose.py ← Test 2: skeleton detection
│ ├── test_pipeline.py ← Test 3: full system simulation
│ └── test_model.py ← Test 4: trained model accuracy
│
└── data/
│
├── sequences/ ← AUTO-GENERATED .npy training files
│ ├── normal_activity/
│ ├── surrender_pose/
│ ├── threatening_aggressor/
│ ├── robbery …