This project aims to classify videos as "REAL" or "FAKE" using a deep learning model. The model architecture leverages the InceptionV3 model for feature extraction, followed by LSTM and GRU layers for sequence processing.
git clone https://github.com/your-repo-link.git
cd your-repo-directorypip install -r requirements.txtpython app.pyThe dataset used for training and evaluation consists of:
- 77 Fake Videos
- 76 Real Videos
Each video has 10 frames extracted based on motion detection.
This newly motion detected dataset is released on kaggel as Deepfake Detection Challenge Dataset - Face Images.
The model architecture consists of the following components:
-
Feature Extraction:
InceptionV3pre-trained on ImageNet is used for feature extraction.GlobalAveragePooling2Dis applied to pool features from each frame.
-
Sequential Processing:
TimeDistributedapplies the feature extractor to each frame independently.LSTMandGRUlayers are used to capture temporal dependencies.Dropoutis applied for regularization to prevent overfitting.Denselayers are used for the final classification.
The model was trained on Kaggle Notebooks with the following specifications:
- GPU Accelerators: T4 x 2
- Dataset: Deepfake Detection Challenge Dataset.
You can try out the model live on Hugging Face Spaces: Demo
Contributions are welcome! If you'd like to contribute, please fork the repository and create a pull request with your changes. Ensure your code adheres to the existing style and includes appropriate tests.
This project is licensed under the MIT License - see the LICENSE file for details.
