Skip to content

Deep Learning-Based image Steganography implemented with custom CNNs using keras along with Chaotic Encryption🔒 using pycryptodome and Enhanced Super Resolution🎨 implemented with GANs using pyTorch

Notifications You must be signed in to change notification settings

Asirwad/InvisiCipher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

InvisiCipher : Deep Learning-Based image Steganography with Chaotic Encryption and Enhanced Super Resolution

Project Logo

Hide secrets, enhance images!

Overview

Welcome to our Steganography and Super Resolution project! This project combines the power of steganography techniques and super-resolution using deep learning models. Our goal is to hide a secret image within a cover image using advanced convolutional neural networks (CNNs) and then enhance the quality of the hidden image using an Enhanced Super Resolution Generative Adversarial Network (ESRGAN). We also provide an option to encrypt the steg image using various chaos encryption algorithms for added security.

Features

Interactive Hiding: Utilize our intuitive hide network powered by CNNs to embed secret images within cover images effortlessly.

🔒 Secure Encryption: Choose from multiple chaos encryption algorithms such as AES, Blowfish to encrypt your steg image and protect your secrets.

🌟 Enhanced Super Resolution: Witness the magic of our ESRGAN model as it enhances the resolution and quality of the hidden image, revealing every detail.

🎨 Easy-to-Use: Our project provides a user-friendly interface and simple scripts to perform hiding, encryption, decryption, and image enhancement with just a few lines of code.

Project Architecture

The project architecture consists of the following components:

  1. Prepare Network: A CNN-based network that prepares the secret image for hiding by extracting essential features and encoding it.

  2. Hide Network: Another CNN-based network that embeds the prepared secret image within the cover image, producing the steg image.

  3. Chaos Encryption: Choose between AES encryption, Blowfish encryption to secure your steg image.

  4. Chaos Decryption: Decrypt the encrypted steg image using the corresponding decryption algorithm to retrieve the steg image.

  5. Reveal Network: A CNN-based network that extracts the secret image from the steg image by decoding the hidden information.

  6. ESRGAN: Our Enhanced Super Resolution Generative Adversarial Network (ESRGAN) model enhances the quality and resolution of the extracted secret image.

Getting Started

To get started with our project, follow these steps:

  1. Clone the Repository: git clone https://github.com/Asirwad/InvisiCipher.git

  2. Install Dependencies: Install the required dependencies by running pip install -r requirements.txt.

  3. Prepare Your Dataset: Organize your cover and secret images dataset and place them in the appropriate directories.

  4. Customize Configuration: Modify the configuration files to set the desired parameters for the models and encryption algorithms.

  5. Train the Models: Run the training script to train the CNN models and ESRGAN: python train.py.

  6. Explore the Scripts: Utilize the provided scripts to hide, encrypt, reveal, and enhance images based on your specific requirements.

Welcome screen

Welcome

Image hide

Image hide

Image reveal

Image reveal

Super resolution

Super resolution

Contributing

We welcome contributions from the open source community. If you find any issues or have suggestions for improvements, please feel free to open an issue or submit a pull request.

Acknowledgements

We would like to acknowledge the following resources and libraries used in this project:

Contact

For any questions or inquiries, please contact us at asirwadsali@gmail.com.

About

Deep Learning-Based image Steganography implemented with custom CNNs using keras along with Chaotic Encryption🔒 using pycryptodome and Enhanced Super Resolution🎨 implemented with GANs using pyTorch

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages