|
| 1 | +# Video Tampering and Forensics Analysis Tool |
| 2 | + |
| 3 | +## Abstract |
| 4 | + |
| 5 | +The **Video Tampering and Forensic Analysis Tool** is designed to ensure the authenticity and integrity of digital video content. In fields like law enforcement and journalism, reliable video evidence is crucial. This tool uses advanced techniques such as metadata examination, frame-by-frame analysis, deepfake detection, and watermark authentication to detect video tampering and manipulations. It generates detailed forensic reports to aid investigative professionals in ensuring the credibility of video evidence. |
| 6 | + |
| 7 | +## Features |
| 8 | + |
| 9 | +- **User-Friendly Interface**: Interactive web-based application using Streamlit. |
| 10 | +- **Video Input**: Supports video file formats such as MP4, AVI, and MOV (file size limit: 200MB). |
| 11 | +- **Metadata Extraction**: Provides key details such as resolution, codec, frame count, duration, and geolocation data (if available). |
| 12 | +- **Hashing (MD5)**: Verifies the integrity of the video by generating a unique hash for comparison. |
| 13 | +- **Frame Analysis**: Detects tampering through frame-by-frame inspection for splicing, insertion, and pixel pattern anomalies. |
| 14 | +- **Comprehensive Report Generation**: Outputs a JSON report with all findings, including extracted metadata and hash values. |
| 15 | + |
| 16 | +## Technologies Used |
| 17 | + |
| 18 | +- **Programming Language**: Python |
| 19 | +- **Libraries**: OpenCV, FFmpeg, hashlib, os, json |
| 20 | +- **Web Framework**: Streamlit |
| 21 | +- **Hashing Algorithm**: MD5 |
| 22 | + |
| 23 | +## Setup Instructions |
| 24 | + |
| 25 | +#### First Fork the repository and then follow the steps given below! |
| 26 | + |
| 27 | +### 1. Clone the Repository |
| 28 | + |
| 29 | +```sh |
| 30 | +git clone https://github.com/<your-username>/machine-learning-repos.git |
| 31 | +cd Detection Models/Video-tampering-detection |
| 32 | +``` |
| 33 | +### 2. Create a virtual environment: |
| 34 | + ```sh |
| 35 | + python -m venv venv |
| 36 | + source venv/bin/activate # On Windows, use `venv\Scripts\activate` |
| 37 | + ``` |
| 38 | + |
| 39 | +### 3. Install the required packages: |
| 40 | + ```sh |
| 41 | + pip install -r requirements.txt |
| 42 | + ``` |
| 43 | + |
| 44 | +### 4. Run the application: |
| 45 | + ```sh |
| 46 | + streamlit run main.py |
| 47 | + ``` |
| 48 | +### 5. Usage Instructions |
| 49 | + |
| 50 | + ##### 1. Open your web browser and go to `http://localhost:8501` to access the app. |
| 51 | + |
| 52 | + ##### 2. Upload a video file (MP4, AVI, MOV) for analysis. |
| 53 | + |
| 54 | + ##### 3. View the results on the web interface, including: |
| 55 | + - Extracted metadata |
| 56 | + - MD5 hash for integrity verification |
| 57 | + - Frame-by-frame analysis |
| 58 | + |
| 59 | + ##### 4. Download the comprehensive JSON report summarizing the findings. |
| 60 | + |
| 61 | +### 6. Stop the Application: |
| 62 | + To stop the Streamlit app, press `CTRL + C` in the terminal. |
| 63 | + |
| 64 | + |
| 65 | +## Contributing |
| 66 | +Contributions are welcome! If you find any bugs or have suggestions for improvements, please open an issue or create a pull request. |
| 67 | + |
| 68 | +## License |
| 69 | +This project is licensed under the MIT License. See the `LICENSE` file for more details. |
0 commit comments