All Projects → rahmatnazali → Image Copy Move Detection

rahmatnazali / Image Copy Move Detection

Licence: mit
Copy-move forgery detection on digital image using Python

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Image Copy Move Detection

Imgflo
Node-based image processing with GEGL and Flowhub
Stars: ✭ 75 (-11.76%)
Mutual labels:  image-processing
Tcpflow
TCP/IP packet demultiplexer. Download from:
Stars: ✭ 1,231 (+1348.24%)
Mutual labels:  forensics
Emosaic
Mosaic image generator written in Rust!
Stars: ✭ 84 (-1.18%)
Mutual labels:  image-processing
Uploadcare Php
PHP API client that handles uploads and further operations with files by wrapping Uploadcare Upload and REST APIs.
Stars: ✭ 77 (-9.41%)
Mutual labels:  image-processing
Phimpme Ios
Phimp.me - Photo Image Editor and Sharing App. Phimp.me is a Photo App for iOS that aims to replace proprietary photo applications. It offers features such as taking photos, adding filters, editing images and uploading them to social networks.
Stars: ✭ 79 (-7.06%)
Mutual labels:  image-processing
Data processor
数据algorithm & 分析算法
Stars: ✭ 83 (-2.35%)
Mutual labels:  image-processing
Dcv
Computer Vision Library for D Programming Language
Stars: ✭ 74 (-12.94%)
Mutual labels:  image-processing
Lidar
A Python package for delineating nested surface depressions from digital elevation data.
Stars: ✭ 85 (+0%)
Mutual labels:  image-processing
Raster
An image processing library for Rust
Stars: ✭ 79 (-7.06%)
Mutual labels:  image-processing
Cfsrcnn
Coarse-to-Fine CNN for Image Super-Resolution (IEEE Transactions on Multimedia,2020)
Stars: ✭ 84 (-1.18%)
Mutual labels:  image-processing
Mcwnnm Iccv2017
Multi-channel Weighted Nuclear Norm Minimization for Real Color Image Denoising, ICCV 2017.
Stars: ✭ 78 (-8.24%)
Mutual labels:  image-processing
Oiio
Reading, writing, and processing images in a wide variety of file formats, using a format-agnostic API, aimed at VFX applications.
Stars: ✭ 1,216 (+1330.59%)
Mutual labels:  image-processing
X Ray Classification
X-ray Images (Chest images) analysis and anomaly detection using Transfer learning with inception v2
Stars: ✭ 83 (-2.35%)
Mutual labels:  image-processing
Pyscenedetect
🎥 Python and OpenCV-based scene cut/transition detection program & library.
Stars: ✭ 1,203 (+1315.29%)
Mutual labels:  image-processing
Densedepthmap
Create Dense Depth Map Image for Known Poisitioned Camera from Lidar Point Cloud
Stars: ✭ 84 (-1.18%)
Mutual labels:  image-processing
Simple Deflicker
A lightweight and easy to use tool for deflickering timelapse image sequences.
Stars: ✭ 75 (-11.76%)
Mutual labels:  image-processing
Litiv
C++ implementation pool for computer vision R&D projects.
Stars: ✭ 82 (-3.53%)
Mutual labels:  image-processing
Keras Icnet
Keras implementation of Real-Time Semantic Segmentation on High-Resolution Images
Stars: ✭ 85 (+0%)
Mutual labels:  image-processing
Operation Wise Attention Network
Attention-based Adaptive Selection of Operations for Image Restoration in the Presence of Unknown Combined Distortions (CVPR 2019)
Stars: ✭ 84 (-1.18%)
Mutual labels:  image-processing
Lensfunpy
📷 Lens distortion correction for Python, a wrapper for lensfun
Stars: ✭ 83 (-2.35%)
Mutual labels:  image-processing

Copy-Move Detection on Digital Image using Python

Old Python 2 version:This repository now host the python 3 version. You can find the old module written with python 2 on this repository.

Description

This is an implementation of python script to detect a copy-move manipulation attack on digital image based on Overlapping Blocks.

This script is implemented with a modification of two algoritms publicated in a scientific journals:

  1. Duplication detection algorithm, taken from Exposing Digital Forgeries by Detecting Duplicated Image Region (old link is dead, go to alternative link); Fast and smooth attack detection algorithm on digital image using principal component analysis, but sensitive to noise and post region duplication process (explained in the paper above)
  2. Robust detection algorithm, taken from Robust Detection of Region-Duplication Forgery in Digital Image; Slower and having rough result attack detection algorithm but are considered robust towards noise and post region duplication process

How do we modify them?

We know that Duplication detection algorithm (Paper 1) has coordinate and principal_component features, and then on Robust detection algorithm (Paper 2) it has coordinate and seven_features mentioned inside the paper.

Knowing that, we then attempt to give a tolerance by adding all of the features like so:

Modification diagram

and then sort it lexicoghrapically.

The principal component will bring similar block closer, while the seven features will also bring closer similar block that can't be detected by principal component (that are for example blurred).

By modifying the algorithms like mentioned above, this script will have a tolerance regarding variety of the input image (i.e. the result will be both smooth and robust, with a trade-off in run time)

This project was used for my Undergraduate Thesis that you can find it in here, but please note that it was written in Indonesian.

Example image

Original image

Original image

Forgered image

Forgered image

Example result after detection

Result image

GUI

GUI screenshoot

Note: This version does not support GUI. If you want to implement it, you can visit the old repo mentioned above for the snippets.

Getting Started

Assuming you already have Python 3.x on your machine:

  • clone this repo
  • create a virtual environment and enter into it
  • run pip3 install -r requirements.txt

Example

from copy_move_detection import detect
detect.detect('assets/', 'dataset_example_blur.png', 'output/', block_size=32)

If blockSize parameter was not given, the default value would be 32 (integer).

You can also see directly at the code.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments

I mainly learnt how to do PCA on image using Python from here written by Jan Erik Solem, but the page has been erased. Shortly after knowing the page was gone, I found that the author are now founder & CEO at Mapillary (Hail, and hat tip).

Support

Hi! I got piles email of thanks regarding how this code help them on their affairs or getting their Degree :)

Maintain the repository took time and effort, if you want to support me, please consider Buy Me A Coffee

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].