Professional Documents
Culture Documents
"#$"$%&
Lab2 Demo
Csil
Monday: May 24, 14pm
Optional (9:3011am)
$&
!"#$"$%&
original
image
Watermark S
Encoder
watermarked
image
User Key K
#&
!"#$"$%&
original
image
Decoder
Watermark X
User Key K
'&
!"#$"$%&
(&
!"#$"$%&
Increase ai by 1, Decrease bi by 1
The expected value of sumi (ai-bi) now !2n
!&
!"#$"$%&
TODAY:
FREQUENCY-DOMAIN ROBUST
WATERMARKING
Secure Spread Spectrum Watermarking For Multimedia
Cox, Kilian, Leighton, and Shamoon,
IEEE Transactions on Image Processing vol. 6, no. 12, December
1997
An Example
10011010
Copyright
Embedding domain tailored to media
characteristics & application
requirement
)&
!"#$"$%&
Cox et al
Full frame
2D DCT
N largest coeff.
sort
other coeff.
marked
image
wmk
Full Frame
IDCT &
normalize
*&
!"#$"$%&
Original
Cox
whole image DCT
Embed in 1000 largest coeff.
Difference between
marked & original
+&
!"#$"$%&
" Subtract original image from the test one before feeding to
detector (non-blind detection)
orig X
X=X+W+N ?
X=X+N ?
test X
preprocess
wmk
DCT
select N
largest
DCT
select N
compute
similarity
decision
threshold
largest
,&
!"#$"$%&
Robustness
Coxs approach
Perform DCT on entire image & embed wmk in large DCT AC coeff.
Embedding: xi = xi + ! xi wi = xi (1+! wi)
Detection: subtract original and perform correlation w/ wmk
$%&
!"#$"$%&
Bob
Alice
Chris
Chris
Originally
fingerprinted
copies
Collusion by
averaging
Collage
1/3
Colluded copy
ENEE631 Digital Image
Processing (Spring 2010)
Your Lab3
Implement the spread spectrum watermark embedding in matlab
Apply 2D DCT transform on the entire image, not each macroblock (dct2())
Take the n largest AC coefficients x
Generate watermarked coefficients x by x' = x * (1 + a * w)
w is the corresponding watermark component, a = 0.1
Apply 2D IDCT on the new DCT coefficients (original DC, new x and the rest
AC coefficients) (idct2())
Compare the original and watermarked image
Repeat the above with different n (100, 200, 500, 1000, 1500)
Plot a figure of PSNR vs. n
randn()
$$&
!"#$"$%&
Due Tue. June 1, 11:59PM via turnin lab3, Individual project, no grouping
noisyimg = imnoise(wimg,'gaussian');
Try the above with different n values and report your findings
$#&
!"#$"$%&
FINGERPRINTING
studio
The Lord of
the Ring
w1
w2
Alice
Bob
w3
Carl
Promising countermeasure:
robustly embed digital fingerprints
Insert ID or fingerprint (often through conventional watermarking)
to identify each user
Purpose: deter information leakage; digital rights management (DRM)
Challenge: imperceptibility, robustness, tracing capability
$'&
!"#$"$%&
President
Satellite
Image
w1
Alice
w2
Bob
w3
Carl
Multi-user
Attacks
Traitor
Tracing
Carmine Caridi
Russell
friends
Internet
Last Samurai
http://www.msnbc.msn.com/id/4037016/
$(&
!"#$"$%&
$!&