GithubHelp home page GithubHelp logo

bestgroupever's Introduction

Digital Watermarking of Images

BestGroupEver - Final Project | Financial Technology (FE595)

Preety Vandana | William Long | Shujaat Bakhsh | Gaurav Nagal

Overview

This is the code for digital watermarking of images. We have built a model which embeds watermark to images and decodes it, which can be used to trace the original user with whom it was shared. This technology helps in protecting the author's work and rights, and ultimately preventing piracy.
This project's crux lies in the idea of a Canary Trap. A set of images is watermarked with a code unqiue to each user and then the media is distributed. In case there is a leak of this media, the embedded watermark can be decoded from the leaked image and connected to the person who leaked it.

Requirements

pip install -r requirements.txt

Usage

  • Once dependencies are installed, download the project directory.
  • Make sure the current directory is the project root directory.
  • Put the images to be watermarked in src folder.
  • Run python3 main.py (main.py program calls Add_WatermarkV3.py to generate a list of unique images/arrays for the users defined in users.csv).
  • That's it! Program loads all the orginal images from src folder and stores the watermarked images to dest folder consisting of individual users.
  • We can identify the original user with which the image file was shared by reading and decoding the watermarked image.
  • The program prints out results of the decoding process to stdout.

Results

Here are some of the results comparing original and watermarked images.
The left one is original image and right one is watermarked image.

bestgroupever's People

Contributors

gauravnagal avatar shujaatbakhsh25 avatar preetyv avatar bluefinch83 avatar

Watchers

 avatar

bestgroupever's Issues

Read watermark

Here's what we need to for the read_watermark.py file:

  • take in an watermarked image and the og image.
  • return the difference between the two as a new image (this should be the watermark on a blank background.)
  • read that image and decode the watermark.
  • return the code in that watermark.

Please update reedsolo

Hello,

I am the current maintainer of reedsolo.

We have recently pushed major updates which increase speed and stability, but the API had to be changed.

If you are still using reedsolo, please ensure that you handle the 3 variables returned by reedsolo.

Before:

>>> rsc = RSCodec(12)
>>> tampered_msg = b'heXlo worXd\xed%T\xc4\xfdX\x89\xf3\xa8\xaa'
>>> decoded_msg = rsc.decode(tampered_msg)

Now:

>>> rsc = RSCodec(10)
>>> tampered_msg = b'heXlo worXd\xed%T\xc4\xfdX\x89\xf3\xa8\xaa'
>>> rmes, rmesecc, errata_pos = rsc.decode(tampered_msg)

Things we need to do for Main

Here's what we need to do for Main.py:

  • Be able to take in an image and a list of users.

  • be able to make a unique watermark for each user.

  • be able to save all those watermarked images.

  • be able to take in an image and return the user it was sent to.

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.