Face-FFT is a research repository investigating whether low resolution AI generated human face videos can be detected using structured spatiotemporal frequency analysis.
Rather than relying on pixel-level artifacts or large pretrained models, this project analyzes 3D frequency representations derived from video volumes to identify systematic signals introduced during generative modeling.
The focus is strictly on lightweight, interpretable detection in constrained settings.
Modern video generation systems have rapidly improved in realism and accessibility. High-end proprietary systems such as Sora and Veo 3 demonstrate strong visual fidelity, while open source models such as CogVideoX 2B and Wan 2.2 enable scalable generation on consumer hardware.
As generation becomes cheaper and more realistic, low resolution synthetic face videos become viable for impersonation, fraud, and misinformation. Even modest resolution content is often sufficient for social media distribution.
This repository investigates whether structured signals in the frequency domain can reliably distinguish synthetic from authentic face videos under low resolution constraints.
The dataset consists of paired real and synthetic face videos.
This paired design ensures controlled comparison between authentic and generated content.
Each video volume is transformed using a 3D Fast Fourier Transform across spatial and temporal dimensions.
The resulting frequency representation captures:
The 3D frequency volume serves as the model input.
A compact binary convolutional neural network is trained to classify:
The architecture is intentionally lightweight to emphasize signal detection rather than large-scale representation learning.
Evaluation metrics include:
Performance is evaluated beyond the training distribution to measure robustness.
Evaluation includes:
The goal is cross-model generalization rather than optimizing narrowly for a single generator.
apptainer/
Container definition files for UVA Rivanna HPC.
scripts/
Example Slurm job scripts for training and evaluation.
src/
Source code for preprocessing, spectral transformation, model training, and evaluation.
tests/
Unit and integration tests.
main is the default development branch.main are not permitted.pre-commit install
Prefix commit messages with:
feat: new featuresfix: bug fixeschore: tooling or maintenancerefactor: structural improvementstest: test additions or updatesdocs: documentation updatesExample:
feat: add spectral preprocessing module
This repository is intentionally constrained to:
The objective is focused spectral signal analysis rather than broad multimedia forensic modeling.
Jupyter Notebook
99.4%
Face-FFT is a research repository investigating whether low resolution AI generated human face videos can be detected using structured spatiotemporal frequency analysis.
Rather than relying on pixel-level artifacts or large pretrained models, this project analyzes 3D frequency representations derived from video volumes to identify systematic signals introduced during generative modeling.
The focus is strictly on lightweight, interpretable detection in constrained settings.
Modern video generation systems have rapidly improved in realism and accessibility. High-end proprietary systems such as Sora and Veo 3 demonstrate strong visual fidelity, while open source models such as CogVideoX 2B and Wan 2.2 enable scalable generation on consumer hardware.
As generation becomes cheaper and more realistic, low resolution synthetic face videos become viable for impersonation, fraud, and misinformation. Even modest resolution content is often sufficient for social media distribution.
This repository investigates whether structured signals in the frequency domain can reliably distinguish synthetic from authentic face videos under low resolution constraints.
The dataset consists of paired real and synthetic face videos.
This paired design ensures controlled comparison between authentic and generated content.
Each video volume is transformed using a 3D Fast Fourier Transform across spatial and temporal dimensions.
The resulting frequency representation captures:
The 3D frequency volume serves as the model input.
A compact binary convolutional neural network is trained to classify:
The architecture is intentionally lightweight to emphasize signal detection rather than large-scale representation learning.
Evaluation metrics include:
Performance is evaluated beyond the training distribution to measure robustness.
Evaluation includes:
The goal is cross-model generalization rather than optimizing narrowly for a single generator.
apptainer/
Container definition files for UVA Rivanna HPC.
scripts/
Example Slurm job scripts for training and evaluation.
src/
Source code for preprocessing, spectral transformation, model training, and evaluation.
tests/
Unit and integration tests.
main is the default development branch.main are not permitted.pre-commit install
Prefix commit messages with:
feat: new featuresfix: bug fixeschore: tooling or maintenancerefactor: structural improvementstest: test additions or updatesdocs: documentation updatesExample:
feat: add spectral preprocessing module
This repository is intentionally constrained to:
The objective is focused spectral signal analysis rather than broad multimedia forensic modeling.
Jupyter Notebook
99.4%