Coder Social home page Coder Social logo

abhidtu2014 / image-splicing-detection-python Goto Github PK

View Code? Open in Web Editor NEW
7.0 0.0 4.0 10 KB

Splicing detection | ML

License: MIT License

Python 100.00%
image-processing image-segmentation splicing-detection sift-algorithm zernike cross-validation ensemble-machine-learning machine-learning image-classification binary-classification image-splicing-detection pca-analysis kpca-analysis haralick-features

image-splicing-detection-python's Introduction

Image splicing detection - python

These are steps to get you started with the project:

  • download Anaconda Navigator, open spyder and run basic "Hello, world!" program. If it doesn't work set environment variables.
  • download Milk Library [from .whl file]
  • download Mahotas Library [from .whl file]
  • download cv2 library [ direct pip ]
  • Copy all code in folder where spyder is set.
  • Download dataset and put them in folders Like negatives and positives.
  • Download glob library to access folders which contains image.
  • Download any package which is not already present in anaconda environment.
  • Rest is simple, code is self explanatory.

Features:

In this project, an improved image splicing detection is purposed which is based on global and local features of an image.

  • Let's get some local features using SIFT which is a local feature extraction method:

SIFT

A robust interest detector SIFT is applied which is tweaked with center of mass algorithm which localizes the spliced object and only nearest points are used concentrically with respect to coordinates of center of mass of given image.

  • Let's get some global features of an image:

Zernike moments

zernike will give measure about how the mass is distributed all over image.

Local binary pattern

Local binary pattern will give measure of how many pixels represent a particular code.

Haralick Features

Haralick Features which is a combination of feature vector which provides 13 useful statistical features.

Methodology:

  • Effective morphology based image filtering techniques are used to reduce the noise and get prominent edge map.
  • Final feature vector by applying PCA which reduces dimention to a fixed component and final feature vector is feeded to SVM classifier for training model.
  • N-fold cross validation is used to get minimally overfitted and accurate model.

image-splicing-detection-python's People

Contributors

abhidtu2014 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.