{"id":19511208,"url":"https://github.com/aayushiahlawat/image-forgery-detection","last_synced_at":"2025-04-15T19:42:12.856Z","repository":{"id":234839767,"uuid":"789598230","full_name":"AayushiAhlawat/Image-Forgery-Detection","owner":"AayushiAhlawat","description":"System to detect Copy-Move forgery using Python and machine learning techniques","archived":false,"fork":false,"pushed_at":"2024-04-21T07:30:50.000Z","size":11,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-29T00:23:34.383Z","etag":null,"topics":["anaconda","forgery","image","machine-learning","python","rsa-algorithm","svm-classifier"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AayushiAhlawat.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-21T02:23:32.000Z","updated_at":"2025-03-16T19:40:35.000Z","dependencies_parsed_at":"2024-04-21T03:33:32.109Z","dependency_job_id":"e4be92e3-3a84-4d70-b74c-f3d7aee74847","html_url":"https://github.com/AayushiAhlawat/Image-Forgery-Detection","commit_stats":null,"previous_names":["aayushiahlawat/image-forgery-detection"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AayushiAhlawat%2FImage-Forgery-Detection","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AayushiAhlawat%2FImage-Forgery-Detection/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AayushiAhlawat%2FImage-Forgery-Detection/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AayushiAhlawat%2FImage-Forgery-Detection/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AayushiAhlawat","download_url":"https://codeload.github.com/AayushiAhlawat/Image-Forgery-Detection/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249140593,"owners_count":21219323,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["anaconda","forgery","image","machine-learning","python","rsa-algorithm","svm-classifier"],"created_at":"2024-11-10T23:19:45.755Z","updated_at":"2025-04-15T19:42:12.838Z","avatar_url":"https://github.com/AayushiAhlawat.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Image Forgery Detection\n\n\n  \u003cimg src=\"https://img.shields.io/badge/Python-3.7-blue.svg\" alt=\"Python\"\u003e\n\n\n## Overview 🔍\n\nIn the project \"Image Forgery Detection,\" I developed a robust system aimed at detecting Copy-Move forgery, a commonly employed technique in image manipulation. \n\n### Objective 🎯\n\nThe purpose of choosing this project is:\n\n- **Digital Images Forensics (DIF):** Vanguard of security techniques aiming at restoration of lost trust in digital imagery by exposing digital forgery techniques.\n- **Existing Techniques:** Explore active and passive (blind) approaches in image forgery detection.\n- **Validation:** Validate the originality of digital images by recovering information about their history.\n- **Trust Building:** Analyze images under specific conditions to build trust and genuineness.\n\n### Methodology 🛠️\n\nThe proposed system utilizes SVM classifier for forgery detection, employing hashing techniques and RSA key encryption for security. The methodology involves two main phases: training and testing.\n\n1. **Training Phase:**\n   - **Database Creation:** A database of images is created for training purposes. Images are sourced from various online repositories or captured using digital cameras. Images can vary in size and format (jpg, jpeg).\n   - **RSA Key:** An RSA key is generated after training images are ingested into the system. During testing, users are prompted to enter a consistent key to ensure authorized access.\n   - **Pre-processing:** Images undergo pre-processing steps such as conversion to grayscale from RGB, noise removal using median filtering, and enhancement techniques like histogram equalization and sharpening.\n   - **Feature Extraction:** Various image features are extracted including:\n     - **Pixel Analysis:** Calculation of mean and standard deviation of pixel values.\n     - **Texture Analysis:** GLCM (Gray-Level Co-occurrence Matrix) analysis for texture representation using Haralick functions.\n   - **Hash Values:** Hash values are computed for the extracted features to facilitate efficient comparison and identification of duplicated or manipulated regions within images.\n   - **SVM Classifier:** Support Vector Machine (SVM) classifier is trained using labeled datasets to establish decision boundaries and identify fraudulent image regions with high precision.\n\n2. **Testing Phase:**\n   - **Input Query Image:** Users provide a query image to be authenticated.\n   - **RSA Key Authentication:** Users are prompted to enter the consistent RSA key generated during training for authentication.\n   - **Pre-processing and Feature Extraction:** Similar pre-processing and feature extraction steps are performed on the query image.\n   - **Hash Values Calculation:** Hash values are computed for the extracted features of the query image.\n   - **SVM Classification:** SVM classifier is utilized to classify the query image based on the decision boundaries established during training.\n\n### Results 📊\n\n- **High Accuracy:** Achieved a remarkable 95% accuracy rate in identifying forged images, showcasing the robustness and reliability of the detection algorithms.\n- **Effective Detection:** Successfully detected instances of Copy-Move forgery, a challenging form of image manipulation commonly employed to deceive viewers.\n\n\n## Getting Started 🚀\n\nTo get started with the project, follow these steps:\n\n1. Clone the repository: `git clone https://github.com/AayushiAhlawat/Image-Forgery-Detection.git`\n2. Run the main script: `python Implementation.py`\n\n### Conclusion 🎉\n\nThe Image Forgery Detection project demonstrates the effectiveness of machine learning techniques, specifically SVM classifiers, in identifying instances of digital image forgery. With a focus on Copy-Move forgery, the system achieves high accuracy rates and provides a reliable solution for image authenticity verification.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faayushiahlawat%2Fimage-forgery-detection","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faayushiahlawat%2Fimage-forgery-detection","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faayushiahlawat%2Fimage-forgery-detection/lists"}