Filter löschen
Filter löschen

Digital Watermarking using DWT & DCT

2 Ansichten (letzte 30 Tage)
kush
kush am 23 Mär. 2012
Beantwortet: honey am 16 Mär. 2020
Can any one plz help me to implement this algorithm for watermarking using Dct & Dwt
Step 1: Perform DWT on the host image to decompose it into four non-overlapping multi-resolution coefficient sets: LL1, HL1, LH1 and HH1.
Step 2: Perform DWT again on two HL1 and LH1 coefficient sets to get eight smaller coefficient sets and choose four coefficient sets: HL12, LH12, HL22 and LH22 as shown in Figure 3(a).
Step 3: Perform DWT again on four coefficient sets: HL12, LH12, HL22 and LH22 to get sixteen smaller Coefficient sets and choose four coefficient sets: HL13, LH13, HL23 and LH23as shown in Figure 3 (b).
Step 4: Divide four coefficient sets: HL13, LH13, HL23 and LH23 into 4 x 4 blocks.
Step 5: Perform DCT to each block in the chosen coefficient sets (HL13, LH13, HL23 and LH23). These coefficients sets are chosen to inquire both of imperceptibility and robustness of algorithms equally.
Step 6: scramble the watermark signal with Arnold algorithm for key times and gain the scrambled watermark Ws (i , j), key times can be see as secret key.
Step 7: Re-formulate the scramble watermark image into a vector of zeros and ones.
Step 8: Generate two uncorrelated pseudorandom sequences by a key. One sequence is used to embed the watermark bit 0 (PN_0) and the other sequence is used to embed the watermark bit 1 (PN_1). Number of elements in each of the two pseudorandom sequences must be equal to the number of mid-band elements of the DCT-transformed, DWT coefficient sets.
Step 9: Embed the two pseudorandom sequences, PN_0 and P N_1, w ith a g ain factor α i n t he D CT transformed 4x4 blocks of the selected, DWT coefficient sets of the host image. Instead of embedding in all coefficients of the DCT block, it applied only to the mid-band DCT coefficients. If we donate X as the matrix of the mid-band coefficients of the DCT transformed block, then embedding is done as x=x+a*PN0 for watermark bit 0 & x=x+a*PN1 for watermark bit 1
Step 10: Perform inverse DCT (IDCT) on each block after its mid-band coefficients have been modified to embed the watermark bits as described in the previous step.
Step 11: Perform the inverse DWT (IDWT) on the DWT transformed image, including the modified coefficient sets, to produce the watermarked host image.
  1 Kommentar
PRASHANT JADHAV
PRASHANT JADHAV am 20 Aug. 2017
Bearbeitet: PRASHANT JADHAV am 20 Aug. 2017
i have done this coding up to step 3 I am confuse in step 4
can you clear some more about: Divide four coefficient sets: HL13, LH13, HL23 and LH23 into 4 x 4 blocks.
here do you want every coefficient in block of 4*4? then it will be depends upon size of image that how many no of blocks will get created. or you want to keep input image size fix? or

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Ajay Ganti
Ajay Ganti am 28 Feb. 2018
I'm also having the same problem. Can you send me the complete code of this problem?

honey
honey am 16 Mär. 2020
I have a question that why we are using both dct and dwt not any one of them

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by