Skip to content

Humble-Librarian/AI-Forensic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

25 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Signal Pro Logo

πŸ” Signal Pro // Forensic Engine v3.0

Advanced Forensic Analysis Console & Deepfake Detection Platform

Uncover the Truth in Media.
Upload suspect videos β†’ Get real-time AI-driven inference, frame-by-frame visualization, and detailed PDF reporting using temporal and spatial analysis.


πŸ“Έ Screenshots

Dashboard Real-Time Inference PDF Reporting
System monitoring + Case history Live bounding boxes + Metrics Automated, Institutional-grade reports

✨ Features

🎯 Core Intelligence

  • Multi-Modal Analysis β€” Unifies spatial artifacts, frequency noise signatures, and temporal consistencies to evaluate the media.
  • Explainable Metrics β€” Clear percentage displays mapping directly to "REAL", "SUSPICIOUS", or "FAKE" verdicts.
  • Deepfake Simulation β€” Integrates Xception (spatial), SRM (noise), and BiLSTM (temporal) for robust detection capabilities.

πŸ”¬ Deep Analysis

  • Temporal Inconsistency Detection β€” Uses BiLSTM networks to track unnatural temporal changes across frames over time.
  • Noise Signature Extraction β€” Steganalysis Rich Model (SRM) filter captures invisible manipulations and generative noise.
  • Face Bounding Box Visualization β€” Real-time Red/Green bounding boxes indicate localized anomalies per frame.

πŸš€ Forensic Workflow

  • Automated Reporting Engine β€” Automatically generates professional PDF reports with executive summaries and visual evidence breakdowns using ReportLab.
  • Case History Tracking β€” Analysis history is persistently saved to a local JSON database and reviewable in real time.
  • System Monitoring β€” Live monitoring of model load statuses, GPU hardware capability (CUDA), and software environment metrics.

πŸ–₯️ Premium Dashboard

  • Modern PyQt5 Interface β€” Sleek, dark-themed interface built on purely native widgets, eliminating heavy dependencies.
  • Dynamic Animations β€” Smooth progress bars and fluid transitions across panels resulting in a premium native feel.
  • Executable Deployment β€” Configured for one-click compilation as a standalone Windows .exe via PyInstaller.

πŸ—οΈ Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    PyQt5 Frontend                       β”‚
β”‚              (ui/main_window.py β€” GUI)                  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                      β”‚ Internal Multi-Threading
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                   Inference Worker                      β”‚
β”‚                (ui/workers.py β€” Logic)                  β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                Engine Coordination Layer                β”‚
β”‚             Frame Extraction & Inference                β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                    Model Pipeline                       β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚  β”‚ Face Detect  β”‚ β”‚   Cropping   β”‚ β”‚ Preprocessing    β”‚ β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚  β”‚ Spatial (CNN)β”‚ β”‚ Freq (SRM)   β”‚ β”‚ Temporal (LSTM)  β”‚ β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚  β”‚  Score Fusionβ”‚ β”‚  Reporting   β”‚ β”‚ Persistence      β”‚ β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                     Core Layer                          β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚ Model Wrapper    β”‚  β”‚ Export Service (PDF)        β”‚  β”‚
β”‚  β”‚ (models.py)      β”‚  β”‚ (services/export_service.py)β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ› οΈ Tech Stack

Layer Technology
Frontend UI PyQt5, SVG Material Icons
Logic & Concurrency Python Custom Threads (QThread)
Computer Vision OpenCV (cv2), facenet-pytorch MTCNN
Deep Learning Base PyTorch, torchvision
Models Xception (Spatial), Pre-filtered Xception (SRM), BiLSTM (Temporal)
Data Mgt & Reporing JSON, ReportLab (PDF Parsing)
Deployment PyInstaller (Standalone Windows exe)

πŸ“ Project Structure

forensic_ai_desktop/
β”œβ”€β”€ app.py                    # Application Entry Point
β”œβ”€β”€ build_exe.py              # PyInstaller Build Script
β”œβ”€β”€ analysis_history.json     # Persisted local database map
β”œβ”€β”€ requirements.txt          # Deep Learning & GUI Packages
β”‚
β”œβ”€β”€ core/
β”‚   β”œβ”€β”€ config.py             # Hyperparameters, Paths, & Globals
β”‚   └── theme.py              # (Legacy) Color & Padding Specs
β”‚
β”œβ”€β”€ ui/
β”‚   β”œβ”€β”€ main_window.py        # Master Dashboard & Event loops
β”‚   β”œβ”€β”€ workers.py            # Async Model Load & Video Inference
β”‚   β”œβ”€β”€ widgets.py            # Modern TitleBar, ProgressBars
β”‚   β”œβ”€β”€ styles.py             # Application Qt Stylesheet
β”‚   └── icons.py              # Material Design SVG Assets
β”‚
β”œβ”€β”€ services/
β”‚   └── export_service.py     # PDF Report Engine via ReportLab
β”‚
β”œβ”€β”€ models.py                 # PyTorch Model Subclasses
β”œβ”€β”€ *.pth                     # Pretrained Weights (LFS Tracked)
β”œβ”€β”€ reports/                  # Generated PDF Output Directory
└── processed_faces/          # Debug frame crops

πŸš€ Getting Started

Prerequisites

  • Python 3.8+
  • Git with Git LFS installed (Crucial for *.pth models)
  • NVIDIA GPU with CUDA support strongly recommended.

Installation

# 1. Clone the repository
git clone https://github.com/<your-username>/forensic-ai-desktop.git
cd forensic-ai-desktop

# 2. Pull large LFS Objects (Wait for download completion)
git lfs install
git lfs pull

# 3. Create a virtual environment
python -m venv .venv

# 4. Activate the virtual environment
# Windows:
.venv\Scripts\activate
# macOS/Linux:
source .venv/bin/activate

# 5. Install dependencies
pip install -r requirements.txt

Running the Application

Option 1: Native Python

python app.py

Option 2: Build as an Executable (Windows)

python build_exe.py

This drops the standalone Forensic_AI_Console.exe in the dist folder.


πŸ“– How It Works

Video Upload (.mp4/.avi)
    β”‚
    β–Ό
Frame Extraction ──► MTCNN Face Detection ──► Face Cropping
    β”‚
    β–Ό
CNN Spatial Feature Extraction (Xception)
    β”‚
    β”œβ”€β”€β–Ί SRM Filter Analysis (Identify high-frequency noise)
    └──► Temporal Assessment (Run feature vectors thru BiLSTM)
            β”‚
            β–Ό
        Score Fusion Engine
    (Weight Spatial, Freq, Temp)
            β”‚
            β–Ό
    Final Verdict & Confidence
            β”‚
            β”œβ”€β”€β–Ί UI Panel Update
            β”œβ”€β”€β–Ί History Persistence (.json)
            └──► PDF Report Generation

πŸ€– Models & Configurations

Component Architecture Weights / Dimensionality
Spatial Engine Xception ~80 MB
Frequency Engine SRM + Xception ~80 MB
Temporal Engine BiLSTM ~15 MB

Note: Models are tracked with Git LFS. If models are absent on run, double-check that git lfs pull fetched the fully sized .pth files.


βš™οΈ Configuration

Key settings modified in core/config.py:

DEVICE          = "cuda:0" if torch.cuda.is_available() else "cpu"
APP_VERSION     = "3.0.0"
IMG_SIZE        = 299      # Expected tensor img dimensions
SEQ_LENGTH      = 10       # Frames required for BiLSTM inference

🀝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/forensic-engine)
  3. Commit your changes (git commit -m 'Enhance Temporal Analysis')
  4. Push to the branch (git push origin feature/forensic-engine)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License β€” see the LICENSE file for details.


Built with ❀️ using Python, PyQt5 & PyTorch
Signal Pro β€” Uncover the Truth in Media.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages