Primary Focus: EfficientNetV2 ⭐⭐⭐⭐⭐
This should be the main AI model of your project.
Why EfficientNetV2?
High accuracy with fewer parameters
Faster training than many older CNNs
Good performance on transfer learning
Easier to train on medium-sized datasets
Well suited for image forgery detection
Can be extended to classify multiple forgery types
It will solve
✅ Real vs Fake detection
✅ Forgery Type Identification
✅ Confidence score generation (used for uncertainty)
This is the model you should spend most of your time training, tuning, and evaluating.
Secondary Focus: U-Net
Once EfficientNetV2 detects that an image is forged, use U-Net to answer:
"Where is the forgery?"
This directly addresses your first problem statement.
It will produce
Pixel-level forgery mask
Highlighted manipulated region
Input for severity assessment
Supporting Components (Not Main Models)
Grad-CAM
Use with EfficientNetV2.
Purpose:
Explain why the model predicted "Fake"
Generate attention heatmaps
This improves explainability but is not a separate ML model.
Monte Carlo Dropout
Purpose:
Estimate prediction confidence
Return "Inconclusive" when confidence is too low
Again, this is a technique added to your classifier rather than a separate model.
Severity Assessment
No separate AI model is needed.
Compute the percentage of manipulated pixels from the U-Net mask, for example:
0–10% → Low
10–30% → Moderate
30% → Severe
Models for Research Comparison
To strengthen your report, compare your main model against established alternatives.
Model Purpose
ResNet50 Baseline comparison
Xception Strong benchmark for manipulation/deepfake detection
EfficientNetV2 Your proposed primary model
You do not need to deploy all three. Train and evaluate them, then choose EfficientNetV2 as the final
deployed model.
Time Allocation
If your project timeline is around 8–9 months, a reasonable split is:
Component Effort
EfficientNetV2 50%
U-Net 25%
Grad-CAM 10%
Monte Carlo Dropout 5%
Severity Assessment 5%
Component Effort
Report Generation & Integration 5%
Final Recommendation
MAIN MODEL
EfficientNetV2
┌────────────┼────────────┐
│ │ │
▼ ▼ ▼
Real/Fake Forgery Type Confidence
U-Net
Forgery Localization Mask
┌────────┴────────┐
▼ ▼
Grad-CAM Severity Score
Digital Forensic Report
Question Recommended Answer Reason
These are the standard input
sizes for pretrained
EfficientNetV2 models. B0
What input size should the 224 × 224 × 3 (EfficientNetV2-B0) or 300
(224×224) is faster and
selected model use? × 300 × 3 (EfficientNetV2-B3)
suitable for a BE project; B3
offers slightly better accuracy
but needs more computation.
Most forgery artifacts (color
inconsistencies, blending,
compression traces, lighting
differences) are present in
RGB or Grayscale? RGB
color channels.
EfficientNetV2 pretrained
weights are also trained on
RGB images.
Convert pixel values to float32, scale to This matches the
What normalization does [0,1], then normalize using ImageNet preprocessing used during
the pretrained model mean = [0.485, 0.456, 0.406] and std = ImageNet pretraining and
require? [0.229, 0.224, 0.225] (if using ImageNet ensures optimal transfer
pretrained weights). learning performance.
These augmentations
improve generalization
Resize, Random Horizontal Flip, Random
without significantly altering
Which augmentations are Rotation (±5–10°), Random
manipulation artifacts. Keep
safe for forgery detection? Brightness/Contrast (small changes),
them moderate so that
Random Crop/Center Crop
forgery evidence is
preserved.
Primarily yes. Use JPEG compression,
Gaussian blur, Gaussian noise, resizing, Your third problem statement
Should and re-encoding to evaluate robustness. is Real-World Robustness, so
compression/blur/noise be If you include them in training, apply these transformations are
used only for robustness them in limited amounts (e.g., 10–20% of valuable for evaluation and
testing? samples) so the model learns to handle can be lightly included during
real-world media without overfitting to training to improve resilience.
degraded images.
Preprocessing Pipeline:
Input Image
Read Image (RGB)
Resize to 224×224
Convert to float32
Scale pixel values to [0,1]
Normalize using ImageNet Mean & Std
Apply Data Augmentation (Training Only)
Feed to EfficientNetV2