Saturday 19 May 2012

Matlab Neural Network Watermarking Code

 Watermark Embedding
  1. Divide the original image I into blocks of size 8X8 and perform three-level DWT transform on each block. Select the position of watermark embedding coefficient using random sequence with a secret key and quantize the DWT coefficient C(I,j) by Q and use that value as the input T of BPN.
  2. Create the improved neural network and initialize its parameters, we use T as the supervised signal and the average of each block is used as the desired output value of the BPN to train BPN. Training error is set to be 0.001.
  3. Perform the inverse discrete wavelet transform (IDWT) on the coefficients where the watermark is embedded to obtain the watermarked image.
Watermark Extraction

  1. Perform the three-level DWT transformation on the watermarked image blocks.
  2. Select the position of coefficient C(i, j), where watermark is embedded with the same secret key , which is used in watermark embedding sequence.
  3. Quantize the DWT coefficient by Q, and use it as input value of the trained BPN to get the output T.
  4. Extract the watermark according to (6) below using the output T and coefficient C(i ,j)

Kindly Bookmark and Share it:

No comments:

Post a Comment

Related Posts Plugin for WordPress, Blogger...