Skip to main content
. 2021 Dec 8;23(12):1650. doi: 10.3390/e23121650
Algorithm 2 Watermark extraction.
  • Require: 

    Watermarked image (C1), m, s, Random key (Rkey), α

  • Ensure: 

    Extracted Watermark (EW)

  • 1:

    Apply 1-IWT to C1, to obtain LL1, LH1, HL1 and HH1 sub-bands

  • 2:

    Apply SVD to LH1 and HL1 sub-bands to obtain ULH1,SLH1,VLH1,UHL1,SHL1,VHL1

  • 3:

    Divide SLH1 and SHL1 into 4×4 non-overlapping blocks.

  • 4:

    Select low entropy blocks (BLH1,BHL1).

  • 5:

    Determine watermark extraction positions (P1andP2) using BBS Pseudo random series generated by using mands.

  • 6:

    Extract watermark vector from SLH1 and SHL1 using the steps below:

    Vodd11(BLH1(P1,P2)BLH(P1,P2))/α

    Veven11(BHL1(P1,P2)BHL(P1,P2))/α

  • 7:

    Generate a pseudo random key (PRkey) using Rkey.

  • 8:

    Re-shuffle the extracted watermark vectors i.e., odd (Vodd11) and even (Veven11) vectors using PRkey.

    EVoddPRkey · Vodd11

    EVevenPRkey · Veven11

  • 9:

    Combine EVodd and EVeven to get the extracted watermark.

    EWEVodd+EVeven