GithubHelp home page GithubHelp logo

adomore / deep-steganography Goto Github PK

View Code? Open in Web Editor NEW

This project forked from harveyslash/deep-steganography

0.0 1.0 0.0 1.87 MB

Hiding Images within other images using Deep Learning

License: MIT License

Jupyter Notebook 61.56% Python 38.44%

deep-steganography's Introduction

Deep-Steganography

Tensorflow Implementation of Hiding Images in Plain Sight: Deep Steganography (unofficial)

Steganography is the science of Hiding a message in another message. In this case, a Picture is hidden inside another picture using Deep Learning.

Blog Post on it can be found here

Dependencies Installation

The dependencies can be installed by using

pip install -r requirements.txt

This will install the tensorflow CPU version by default. If you would like to use your GPU , you can do

pip install --force-reinstall tensorflow-gpu

This basically reinstalls the gpu version of tensorflow for your system.

Framework

The Framework takes in Two images. One is the secret image(extreme right) and another is the cover image(extreme left).

The goal is to 'hide' the secret image in the cover image such that only the cover image is visible. This is the covered image(Center Left)

Then , this hidden image can be passed to a Revealing network, which can get the hidden image back(Center Right).

Current System State As you can see, it is visually very hard to realise that the covered image is an image that has been tampered with. Yet the Reveal network can get back almost all of the important parts of the image.

Architecture

network_design Prep Net, Hide Net , and Reveal net have the same convolutional block structure. Therefore, in the image , only the reveal network is shown, and prep/hide networks are collapsed (to make the image fit).

Loss Curves

Two networks were trained with different beta values (0.25 and .75).Both had a batch size of 8. The loss curves are shown for them: Beta = .25 beta .25

Beta = .75 beta .75

Demo:

In order to test the working of the networks , we have written a browser inplementation using Keras JS. You can find it here:

https://harveyslash.github.io/Deep-Steg-JS/ Due to the extremely high computational resources that it requires, it takes about 3 minutes to setup.

deep-steganography's People

Contributors

harveyslash avatar

Watchers

X 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.