Diapositiva 1
Download
Report
Transcript Diapositiva 1
Introduction to
Watermarking
Anna Ukovich
Image Processing Laboratory
(IPL)
[email protected]
The “Capture The Mark” contest
International contest on watermarking
It takes place on April 18th, 2007, from
1.30 p.m. to 6 p.m.
Teams: Roma3, Trento, Siena, France,
Finland, UK, Trieste?
1st phase: hide the mark in the images
2nd phase: attack other team marks
Outline
Introduction
Purpose of watermarking
Categories
Watermarking techniques overview
Example
Watermarking principles (I)
Digital watermarking technology allows
users to embed data into digital contents
such as text, still images, video and audio
data.
Watermarking principles (II)
Embedded hidden information, which
travels with the watermarked data, even
after copying and redistribution.
How can information be hidden in digital
data?
Human perception is imperfect
Make modification to the original data without
changing its perceptual quality, exploit
masking principle (JND).
Modifications can be detected via signal
processing.
Purpose of watermarking
Copyright Protection
Fingerprinting
Watermark can prove ownership in court
To trace the source of illegal copies
Copy protection
The information stored in a watermark can
directly control digital recording devices for
copy protection purposes
Data authentication
Tamper detection
Watermarking categories (I)
Visible
Invisible
Watermarking categories (II)
Robust: copyright protection
Fragile: tamper detection
Requirements: the watermark should be permanently
intact to the host signal, removing the watermark result
in destroying the perceptual quality of the signal.
Requirements: Break very easily under any modification
of the host signal.
Semi Fragile: data authentication
Requirements: Robust to some benign modifications, but
brake very easily to other attacks.
Robustness example
Algorithm: Computer Vision Group, CUI, University of
Geneva
Watermarking domain: wavelet
Encoding: Turbo codes
Perceptual mask: multiresolution anisotropic Noise Visibility
Function
Message length: 64 bits
Robustness example:
Drawing and Working
Robustness example:
Tearing and Detection
Watermarking categories (III)
Readable watermark
Marked
image
Decoder
01101000101100
Detectable watermark
Marked
image
Detector
Yes/No
Watermarking categories (IV):
detection/extraction
Non-blind:
Semi-blind:
use the original unmarked image
does not use the original image but use some
side information and/or the original
watermark.
Blind:
does not use the original image or any side
information (most challenging).
Distortion and attacks
Image processing operations
Active attack
attacker tries to find if a watermark is present
serious for covert communication
Collusion attack:
attacker attempts to remove or destroy the watermark
serious in proof of ownership, copy control, fingerprinting
Passive attack:
Filtering, dithering, cropping, scaling, compression, etc.
attacker uses several copies of the watermarked data to
construct a copy with no watermark
serious for fingerprinting applications
Forgery attack
attacker tries to embed a valid watermark
serious in authentication
Outline
Introduction
Purpose of watermarking
Categories
Watermarking techniques overview
Example
Watermarking techniques
Spatial domain watermarking
Watermark embedded by directly modifying
the pixel values.
Transform domain watermarking
Watermark embedded in the transform domain
e.g., DCT, DFT, wavelet by modifying the
coefficients of global or block transform.
Least Significant Bit Techniques
Substitution Techniques:
Substitute redundant parts of a cover with a
secret message
Choose a subset of cover elements and substitute
least significant bit(s) of each element by message
bit(s)
Message may be encrypted or compressed before
hiding
A pseudorandom number generator may be used to
spread the secret message over the cover in a
random manner
Easy but vulnerable to corruption due to small
changes in carrier
Example:LSB Encoding
Additive watermarking:
Embedding
Add a weak signal (mark) representing ownership
in host media
Invisibility:
The weak signal is known to detector
Detection by correlating a test copy with the watermark signal
Watermark signals with structural patterns can be easily
perceived than random noisy signals
Robustness:
Watermarks added to perceptually insignificant components
can easily be distorted
Additive watermarking:
Detection
Detection: statistical decision theory
Detection is usually done by correlating the
watermarked image with a locally generated
version of the watermark at the receiver side
High correlation value when the watermark has
been obtained with the proper key
Threshold selection:
Neyman-Pearson criterion: given a fixed PF (probability
of incorrectly deciding that an image has been
watermarked with a certain key) the PD (probability of
correctly deciding that a watermark is present) should
be maximized
Spatial embedding example
Outline
Introduction
Purpose of watermarking
Categories
Watermarking techniques overview
Example
Initialization
read original image;
generate watermark vector of length N
(e.g., N = 1000).
related function: imread, imshow, rand or
randn
Embedding - 1
apply 2D DCT transform on the entire
image;
find first N largest coefficients;
generate watermarked coefficients v' by v‘
= v * (1 + α * w)
w is the corresponding watermark component,
α is the scaling factor to control the strength of
watermark (e.g., α = 0.1);
Embedding - 2
apply 2D IDCT and truncate pixel value to
[0, 255] to obtain watermarked image;
display the marked image, visualize the
difference between marked and unmarked
image, check both visual quality and
objective measure such as PSNR
related function: dct2, idct2, sort, imshow
Distortion
generate a distorted version of
watermarked image.
the possible distortions are: JPEG
compression, low pass filtering, resize,
cropping, gaussian noise, quantization etc.
related function: imwrite, imread, filter2,
imresize
Detection
image registration of the test image with respect
to the original unmarked image is required before
applying detection;
apply 2D DCT on test image;
identify the N largest coefficients, substract the
corresponding value of the original unmarked
ones, and compute the detection statistics with
the watermark vector which is suspected to have
been put in the test image
related function: corrcoef
Introduction to
Watermarking
Anna Ukovich
Image Processing Laboratory
(IPL)
[email protected]