Git Product home page Git Product logo

wateramarking's Introduction

Robust and Secure Watermarking using SVD & DWT

This a secure and robust watermarking scheme based on singular values replacement and DWT transformation.

The technique is described in the following paper: http://www.ias.ac.in/sadhana/Pdf2012Aug/425.pdf

What it does and how to use it:

Part A:

If you just want to hide a logo "let's say a watermark message (a.k.a image)" inside another image then simply open "dwt_svd.m" go to line 41: and change the "gaussian_plot = true" to "gaussian_plot = false".

On line 42: change "print_figures = false" to "print_figures = true".

Finally execute the dwt_svd.m from matlab command window and watch the figures.

Part B:

Now if you want to :

1. embed a watermeark message into some images

2. attack those watermarked images to see the strength of watermarking scheme

3. plot gaussians and roc curves

Then don't make the changes I mentioned in Part A.

Execute (when I say execute I mean run the commands from matlab command window) "dwt_svd.m" to apply the watermark to the image you want, then execute "attacks.m" and enter in "single quotes" the name of the attack you want to apply to the watermarked images (e.g. 'mean' or 'median' or 'noise' or 'rotation' or 'shear' or 'crop').

Then a popup window will ask you to indicate the watermark message you used in the embeding step when you initially applied the watermark to the cover image when you executed the "dwt_svd.m" file.

After the code stops executing you should have images with numeric names from [1-1000] in the following directories:

  • attacked: => in this directory will be stored the watermarked images after the attack has been applied to them

  • logos: => here you'll have the corresponding watermark logos extracted from the attacked images

  • watermarked_images: => here you'll have the images with the watermark applied to them

wateramarking's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

wateramarking's Issues

"You might not have write permission" Error

When watermarked_images, attacked and logos folders doesn't exist in the directory, the program corrupts with this error:

Error using imwrite (line 454)
Unable to open file "E:\wateramarking-master\watermarked_images\1.png"
for writing.  You might not have write permission.

Error in dwt_svd (line 75)
        imwrite(uint8(watermarked_image), watermarked_images_dir, 'png');

The program should create this folders when they doesn't exist.
MATLAB R2015a

Where are decimalToBinaryVector and binaryVectorToDecimal ?

when i run dwt_svm.m, the error is following as:

??? Undefined function or method 'decimalToBinaryVector' for input arguments of type
'double'.

Error in ==> signature_embedding at 51
binary_coefficients{p} = decimalToBinaryVector(integer_part(p), 16);

Error in ==> watermark_embedding at 57
LL_inv = signature_embedding(LL, signature, print_figures);

Error in ==> dwt_svd at 47
watermarked_image = watermark_embedding(cover_image, watermark_logo, ...

i want to replace these function to dec2bin and bin2dec, but in bin2dec, the error is Binary string may consist only of characters 0 and 1, so i hope for your help!!!

Hello, how to call psnr.m

Sorry, I did not find the psnr called in the program. Excuse me, what should I do to achieve use psnr.m to get the numerical result of the peak signal to noise ratio, Thank you!!

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.