TrueVision

πŸ›‘οΈ TrueVision β€” Enterprise Deepfake Detection Architecture

FastAPI PyTorch AWS EC2 TailwindCSS Python OpenCV

A Production-Grade Forensic Platform for Digital Media Verification


πŸ‘€ Project Author

Varun β€” AI/ML Engineer specializing in computer vision, deep learning, and cybersecurity research.


πŸ“‹ Overview

TrueVision is a state-of-the-art deepfake detection forensic platform engineered for high-precision media verification. Built on a cutting-edge Tri-Model Ensemble Neural Network architecture, it combines specialized deep learning models with robust online active learning to detect sophisticated media manipulation attacks.

The platform seamlessly integrates:

Key Capabilities:


πŸ“ System Architecture

TrueVision operates across four interconnected stages, from raw media ingestion through final forensic assessment:

flowchart TB
    %% Styling
    classDef stage fill:#111,stroke:#7c3aed,stroke-width:2px,color:#fff;
    classDef component fill:#1d1b26,stroke:#a78bfa,stroke-width:1px,color:#ddd;
    classDef dataset fill:#062016,stroke:#10b981,stroke-width:1px,color:#10b981;
    classDef aws fill:#2a1a08,stroke:#ff9900,stroke-width:1px,color:#ff9900;
    
    subgraph STAGE1 ["Stage 1: Input Ingestion & Data Flow"]
        A["User Media File<br/>(.jpg, .png, .mp4, .avi, .mov)"] --> B["Local API Proxy<br/>(FastAPI: Port 8000)"]
        B -->|POST /process/| C["AWS EC2 Inference Server<br/>(Port 8000)"]
    end
    class STAGE1,A,B,C stage;

    subgraph STAGE2 ["Stage 2: Pre-Processing & Feature Engineering"]
        C --> D["Intelligent Frame Extraction<br/>(Skip: Every 15th, Max 30 Frames)"]
        D --> E["Facial Detection Pipeline<br/>(Haar Cascade: Max 10 Faces)"]
    end
    class STAGE2,D,E stage;

    subgraph STAGE3 ["Stage 3: Tri-Model Ensemble Classification"]
        E -->|Raw Pixels| M1["Model 1: EfficientNet-B0<br/>CNN Architecture<br/>Weight: 33%"]
        E -->|Laplacian Edges| M2["Model 2: ResNet50 + ViT<br/>Composite Vision<br/>Weight: 33%"]
        E -->|Texture Analysis| M3["Model 3: ETCNN<br/>Texture + Semantic Fusion<br/>Weight: 34%"]
        
        M1 --> F["Ensemble Calibration<br/>(Symmetric Square-Root)"]
        M2 --> F
        M3 --> F
    end
    class STAGE3,M1,M2,M3,F stage;

    subgraph STAGE4 ["Stage 4: Forensic Output & Active Learning"]
        F --> G["Final Classification<br/>(Real or Fake + Confidence %)"]
        G --> H["Auto-Archive<br/>(user_dataset/auto/)"]
        G -->|User Provides Feedback| I["POST /feedback/"]
        
        I -->|Background Fine-Tune| J["ETCNN Dynamic Update<br/>(3 Epochs, Safeguards Active)"]
        J -->|Validates Variance| M3
        
        I -->|Accumulates 100+ Confirmed| K["Full Model Retraining"]
    end
    class STAGE4,G,H,I,J,K stage;
    
    %% External Resources
    subgraph DB ["Training Datasets"]
        DATA1[("Celeb-DF v2")]
        DATA2[("DFDC")]
        DATA3[("FaceForensics++")]
    end
    class DB,DATA1,DATA2,DATA3 dataset;
    
    M1 -.-> DATA3
    M2 -.-> DATA2
    M3 -.-> DATA1
    
    subgraph AWS_SERV ["AWS Deployment"]
        EC2["EC2 Instance<br/>(3.238.89.41)"]
        SES["SES / SMTP Gateway"]
    end
    class AWS_SERV,EC2,SES aws;
    
    C --- EC2
    B -.->|Email Reports| SES

🧠 Core Ensemble Models

TrueVision’s strength lies in its specialized tri-model architecture, where each model captures distinct forensic artifacts:

Model 1: EfficientNet-B0 (CNN) β€” 33% Weight

Detects raw-pixel level anomalies and color blending artifacts typical of face-swaps.

Model 2: ResNet50 + Vision Transformer (CViT) β€” 33% Weight

Captures structural inconsistencies via edge analysis and attention mechanisms.

Model 3: ETCNN (Texture + Semantic Learner) β€” 34% Weight

Fuses high-frequency texture analysis with global semantic context via attention.


πŸŽ›οΈ Confidence Calibration Engine

Raw ensemble scores often cluster near decision boundaries (0.5 = uncertain). TrueVision applies Symmetric Square-Root Calibration to push predictions toward actionable confidence levels while maintaining fairness:

\[\text{Calibrated Score} = \begin{cases} 0.5 + \sqrt{\frac{p_{fake} - 0.5}{0.5}} \times 0.5 & \text{if } p_{fake} > 0.5 \\ 0.5 - \sqrt{\frac{0.5 - p_{fake}}{0.5}} \times 0.5 & \text{if } p_{fake} < 0.5 \\ 0.5 & \text{if } p_{fake} = 0.5 \end{cases}\]

Effect: A marginal raw prediction (0.65) β†’ calibrated to 77.4% confidence, ensuring clear, decisive verdicts.


πŸ”„ Online Active Learning with Safety Guards

TrueVision learns from user feedback in real-time while protecting against adversarial β€œpoisoning” attacks:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    User Upload & Inference Flow                  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                              ↓
                    [Inference Output]
                              ↓
            [ Auto-saved to user_dataset/auto/ ]
                              ↓
                   [User Provides Feedback]
                              ↓
          [ Face Copied to user_dataset/confirmed/ ]
                              ↓
                [ ETCNN Fine-Tuning: 3 Epochs ]
                   lr=1e-5, weight_decay=1e-4
                              ↓
                   [ Variance Safety Check ]
                    ↙              β†˜
         σ² < 0.0001?        σ² β‰₯ 0.0001?
              ↓                    ↓
        [ REJECT ]         [ COMMIT WEIGHTS ]
        [ RESTORE ]        [ Update Model ]
        [ BACKUP ]

1. Fine-Tuning Mechanism

  1. User submits feedback (REAL or FAKE) via POST /feedback/
  2. Server copies cropped faces to user_dataset/confirmed/{real|fake}/
  3. Background job unfreezes ETCNN Classifier + Attention layers only
  4. 3-epoch training with Adam optimizer

2. Anti-Poisoning Safeguards

After fine-tuning, the server validates model integrity:

This ensures 100% inference reliability even under adversarial feedback.


☁️ AWS EC2 Deployment

Production Infrastructure

Local Backend Proxy


πŸ—‚οΈ Project Structure

TrueVision/
β”œβ”€β”€ README.md                         # This documentation
β”œβ”€β”€ .gitignore
β”‚
β”œβ”€β”€ Dataset/                          # Local test dataset
β”‚   β”œβ”€β”€ fake/                         # Fake face samples
β”‚   └── real/                         # Real face samples
β”‚
β”œβ”€β”€ backend/                          # Local Proxy Server
β”‚   β”œβ”€β”€ app.py                        # FastAPI proxy & email engine
β”‚   β”œβ”€β”€ test_api.py                   # API endpoint tests
β”‚   β”œβ”€β”€ test_email.py                 # Email delivery tests
β”‚   β”œβ”€β”€ .env                          # Secrets (gitignored)
β”‚   β”œβ”€β”€ routes/                       # Modular route handlers
β”‚   β”œβ”€β”€ services/                     # Business logic
β”‚   └── utils/                        # Helpers & logging
β”‚
β”œβ”€β”€ ec2_server/                       # AWS EC2 Deep Learning Server
β”‚   β”œβ”€β”€ app.py                        # Core inference engine
β”‚   β”œβ”€β”€ inference.py                  # PyTorch model classes
β”‚   β”œβ”€β”€ inspect_checkpoints.py        # Checkpoint diagnostics
β”‚   β”œβ”€β”€ deploy.sh                     # EC2 deployment automation
β”‚   β”œβ”€β”€ services/                     # Preprocessing & face detection
β”‚   └── utils/                        # Model loaders
β”‚
β”œβ”€β”€ frontend/                         # Vanilla HTML/CSS/JS Dashboard
β”‚   β”œβ”€β”€ login.html                    # Authentication gateway
β”‚   β”œβ”€β”€ app.html                      # Main reporting UI
β”‚   β”œβ”€β”€ app.js                        # Interactive graphs & analysis
β”‚   └── style.css                     # Dark-glass glassmorphism theme
β”‚
└── truevision-app/                   # Premium React + Vite + Tailwind
    β”œβ”€β”€ src/                          # React components
    └── package.json

πŸš€ API Reference

1. Primary Inference Endpoint (Local: localhost:8000 | Remote: 3.238.89.41:8000)

Method Endpoint Payload Description
GET / β€” System status & gateway availability
POST /process/ file: MultipartFile Upload media β†’ Extract frames β†’ Run ensemble
POST /feedback/ {"label": "FAKE"\|"REAL"} Submit user verification β†’ Trigger fine-tuning
GET /model/status/ β€” Model metadata, dataset paths, limits

2. Email & Reporting Engine (Local: localhost:8000)

Method Endpoint Payload Description
POST /send-welcome-email/ {"name": "Varun", "email": "user@example.com", "is_new_user": true} Welcome email
POST /send-report-email/ {"name": "Varun", "email": "user@...", "file_name": "scan.mp4", "prediction": "FAKE", "confidence": 98.2, "explanation": "..."} Forensic report email
POST /send-audit-report/ {"name": "Varun", "email": "user@...", "total_real": 12, "total_fake": 5, "history": [...]} Activity audit email

3. Admin Endpoints (EC2: 3.238.89.41:8000)

Method Endpoint Description
GET /admin/retrain-status/ Check confirmed face count; ready: true when β‰₯ 100
GET /admin/feedback-log/ View feedback history, losses, variance metrics

πŸ“Š Training Datasets

TrueVision’s tri-model ensemble is pre-trained on three industry-leading forensics benchmarks:

  1. Celeb-DF v2 (Kaggle)
    • 5,639 high-quality deepfake and real videos
    • Gold standard for face-swap detection
    • Trains Model 3 (ETCNN)
  2. DFDC (Deepfake Detection Challenge) (Meta/Kaggle)
    • Extreme lighting, ethnic diversity, variable compression
    • Real-world challenge dataset
    • Trains Model 2 (ResNet50 + ViT)
  3. FaceForensics++ (TUM Munich)
    • 4 manipulation methods (Face2Face, FaceSwap, Deepfakes, NeuralTextures)
    • Multiple compression profiles (Raw, Light, Heavy)
    • Trains Model 1 (EfficientNet-B0)

πŸ› οΈ Installation & Setup

Prerequisites

Quick Start β€” Local Backend

# 1. Navigate to backend
cd backend

# 2. Create virtual environment
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate

# 3. Install dependencies
pip install fastapi uvicorn requests pydantic python-dotenv

# 4. Configure environment
cp .env.example .env
# Edit .env with your AWS SES & email credentials

# 5. Launch proxy server
python app.py

Server runs on http://localhost:8000

Local Frontend Dashboard

# Navigate to frontend
cd frontend

# Serve static files (lightweight HTTP server)
python -m http.server 5500

Open http://localhost:5500 in your browser.


πŸ›‘οΈ Security & Ethics

TrueVision is designed exclusively for:

Use Policy: This tool is not intended for creating, distributing, or weaponizing deepfake content. Misuse is subject to legal liability under relevant jurisdictions’ digital fraud and impersonation laws.


πŸ“ License

[Add your chosen license here]


πŸ™‹ Contributing

Contributions, bug reports, and feature requests are welcome! Please open an issue or pull request.


πŸ“§ Contact

Author: Varun
Project: TrueVision β€” Enterprise Deepfake Detection
Email: [varunvadlakonda4@gmail.com] GitHub: @VisionStack-404


Last Updated: 2026-05-26