Giter Site home page Giter Site logo

pytfbusternet's Introduction

BusterNet implementation for TPU Training In Colab

Version: 0.0.2  
Python : 3.6.8
Researchers : Md. Nazmuddoha Ansary **
              Shakir Hossain
              Mohammad Bin Monjil  
              Habibur Rahman  
              Shahriar Prince  
              Md Aminul Islam  

Version and Requirements

Keras==2.2.5  
numpy==1.16.4  
opencv-python==4.1.1.26  
tensorflow==1.13.1 
termcolor==1.1.0  
Pillow==6.1.0
imageio==2.5.0
  • Python == 3.6.8
  • pip3 install -r requirements.txt

Preprocessing The Data

  1. Download MICC-F2000 dataset

  2. Unzip MICC-F2000.zip
    NOTE:The dataset contains a file named: nikon7_scale.jpg. It has to be renamed as nikon_7_scale.jpg.

  3. Run preprocess.py in scripts folder

     usage: ./preprocess.py [-h] data_dir save_dir    
     MICC_F2000 Dataset preprocessing    
     positional arguments:    
         data_dir    /path/to/MICC-F2000 Folder    
         save_dir    /path/to/save/preprocessed/data    
     optional arguments:    
         -h, --help  show this help message and exit         
    
  • The total number of tampered images in the dataset is 700. BUT for processing convenience images with identifiers 'P1000231' and 'DSCN47' are avoided for generalization of template matching procedure. The dataset is preprocessed such that there are 3 types of ground truths.For example: This to train by the three stage strategy BusterNet.Sample Ground Truths for manipulation, similiarity and fusion branch respectively:

BusterNet

The model implementation is based on BusterNet: Detecting Copy-Move Image Forgery with Source/Target Localization

Authors and Researchers: Yue Wu,Wael Abd-Almageed,Prem Natarajan

Colab and TPU(Tensor Processing Unit)

TPU’s have been recently added to the Google Colab portfolio making it even more attractive for quick-and-dirty machine learning projects when your own local processing units are just not fast enough. While the Tesla K80 available in Google Colab delivers respectable 1.87 TFlops and has 12GB RAM, the TPUv2 available from within Google Colab comes with a whopping 180 TFlops, give or take. It also comes with 64 GB High Bandwidth Memory (HBM). Visit This For More Info
For this model the approx time/epoch=11s

Manipulation Region Detection (man-net)

A sample result from the manipulation detection branch:

Similiar Region Detection (sim-net)

A sample result from the similiarity detection branch:

Localization of source and forgery (fusion-net)

Note: Green indicates source region and Red indicates forged Regions

Publications:

A research paper relating to the work is currently being communicated by the researchers. Once published, the publication link will be added here

pytfbusternet's People

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

pytfbusternet's Issues

question about reproducing

hello, did you try to reproduce the simi-branch as in the papers? I re-implemented the simi-branch of busternet in pyTorch and trained with the data provided, but i found that my f-score was far behind 0.45 as claimed in the papers.

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.