You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This project implements a leakage-free steganalysis pipeline that detects LSB (Least Significant Bit) steganography in images using a modified SRNet (Steganalysis Residual Network) architecture. The model is trained on 131,183 images from the OpenImages V7 dataset with 4 different LSB embedding algorithms.
Key Features
SRNet with KV High-Pass Filter — Fixed Ker-Vass 5×5 HPF extracts noise residuals before classification
Leakage-Free Data Pipeline — Source images split BEFORE stego generation to prevent any data leakage
Curriculum Learning — 3-phase training with progressive data exposure
Mixed Precision (BF16) — Efficient training with bfloat16 AMP on modern GPUs
Pair-Constraint Batching — Cover/stego pairs always appear together in each batch
🏆 Best Model Results (Epoch 69)
The model was trained for 69 epochs across 2 curriculum phases and achieved the following results on the held-out validation set (13,278 pairs):
Primary Metrics
Metric
Value
Target
Status
AUC (ROC)
0.9994
> 0.90
✅ Exceeded
Accuracy
98.4%
> 85%
✅ Exceeded
F1 Score
0.9840
—
✅ Excellent
Precision
0.9740
—
✅ Excellent
Recall
0.9943
—
✅ Excellent
Advanced Metrics
Metric
Value
EER (Equal Error Rate)
0.0131
PE (Probability of Error)
0.0161
TPR @ 1% FPR
0.9841
TPR @ 5% FPR
0.9974
FPR (False Positive Rate)
0.0265
FNR (False Negative Rate)
0.0057
Confusion Matrix (Epoch 69)
Predicted Cover
Predicted Stego
Actual Cover
12,926 (TN)
352 (FP)
Actual Stego
76 (FN)
13,202 (TP)
Generalization Gap
Metric
Train
Validation
Gap
Loss
0.0036
0.0030
0.0006 (val lower ✅)
Accuracy
97.8%
98.4%
-0.6% (val higher ✅)
No overfitting detected. The validation performance slightly exceeds training performance, indicating excellent generalization.
Training Progression
Phase
Epochs
Data %
Best AUC
Best Accuracy
Phase 1
1–50
30%
0.9984
97.0%
Phase 2
51–69
60%
0.9994
98.4%
🧪 Unseen Image Test Results
The model was evaluated on 10 completely unseen images (5 clean + 5 stego) that were never part of the training, validation, or test sets. These images were sourced independently to validate real-world generalization.
Results: 9/10 Correct — 90.0% Accuracy ✅
Clean Images (should predict COVER)
Image
True Label
Predicted
Confidence
Result
unseen_clean_1.256.png
COVER
COVER
99.33%
✅ Correct
unseen_clean_2.256.png
COVER
COVER
82.93%
✅ Correct
unseen_clean_3.256.png
COVER
COVER
68.90%
✅ Correct
unseen_clean_4.256.png
COVER
COVER
68.18%
✅ Correct
unseen_clean_5.256.png
COVER
STEGO
64.33%
❌ Wrong
Stego Images (should predict STEGO)
Image
True Label
Predicted
Confidence
Result
unseen_stego_1.256.png
STEGO
STEGO
75.53%
✅ Correct
unseen_stego_2.256.png
STEGO
STEGO
75.53%
✅ Correct
unseen_stego_3.256.png
STEGO
STEGO
92.79%
✅ Correct
unseen_stego_4.256.png
STEGO
STEGO
91.72%
✅ Correct
unseen_stego_5.256.png
STEGO
STEGO
98.69%
✅ Correct
Verdict: GENUINELY GOOD MODEL ✅ — Model learned real LSB detection patterns and generalizes to completely unseen images.
Stego‑detector is an open‑source steganography detection system — a framework designed to analyze digital media (like images and audio) and determine whether they contain hidden information embedded via steganography.