Capacity-Approaching Codes for Reversible
Data Hiding
Weiming Zhang, Biao Chen, and Nenghai Yu
Department of Electrical Engineering & Information Science
University of Science and Technology of China
Information Hiding Conference 2011
Introduction
What is reversible data hiding?
The original cover can be losslessly restored after the
embedded information is extracted.
message
cover
data
embedding
stego
data extraction
&
cover restoration
message
cover
2
Introduction
What is reversible data hiding?
The original cover can be losslessly restored after the
embedded information is extracted.
Why is reversible data hiding needed?
In some applications, even any degradation of the
original cover is not allowed, such as medical imagery,
military imagery and law forensics.
Where is reversible data hiding applied?
Media annotation;
integrity authentication ...
3
Introduction
How to do reversible data hiding?
Type-I: Binary feature sequence, generic compression
method (e.g., arithmetic coder);
Type-II: Integer operations: Difference Expansion (DE) or
Histogram Shifting (HS)— specific compression manner for
the histogram
4
Introduction
Type-I: Basic model [Kalker]
d modifications
Embedding rate:
Distortion:
How to maximize embedding rate under any given distortion?
A rate-distortion problem
5
Introduction
Theoretical upper bound [Kalker]
6
Introduction
Recursive Code construction [Kalker]
Key idea:
the marked cover can be used to reconstruct the cover
H ( x1 )
H ( x1 | y1 )
7
Two observations
Observation I
Not only the marked cover can be used to reconstruct the
cover, but also the reconstructed cover can help to extract
message.
8
Two observations
Observation II
9
Two observations
Observation II
The maximum capacity is achieved at D=p0-1/2;
When D≤p0-1/2, the optimal embedding manner is that
only 0’s are allowed to be changed. (Corollary 1 of Theorem 2,
[Kalker])
Our strategy:
Only embed data into 0’s and skip 1’s;
At the decoder side, the embedding positions can be
recognized with the help of reconstructed cover.
10
How to embed data into all-zero cover
RZL coding (reverse zero-run length) [Wong]
Message is divided into disjoint segments of k bits, each of which
is converted to a integer d∈[0,2k-1]; skip d zeros in the cover,
and flip the (d+1)th zero.
Our method: improve RZL by the idea of ZZW construction
A construction consists of two layers:
The outer layer: only embed one bit;
The inner layer: when embedding bit “1” in the outer layer,
embed another k bits with RZL; otherwise skip 2k zeros.
11
How to embed data into all-zero cover
Example: k = 2
12
How to embed data into all-zero cover
13
Proposed method
Improved recursive construction
Improved coding for all-zero cover
x1 :
y1:
0
0
1
1
1
14
Proposed method
Example 2 (follows Example 1)
15
Comparison: Embedding efficiency vs. embedding rate
Embedding efficiency e is defined as number of bits embedded
by unit distortion, i.e. e=ρ/Δ=L/d.
16
Comparison: Embedding efficiency vs. embedding rate
17
Improving Type-I Schemes
(embedding in binary feature sequences)
1. Improving RS method for spatial images [Fridrich]
Texture
complexity of
pixel blocks is
used to construct
binary feature
sequence.
18
Improving Type-I Schemes
1. Improving RS scheme for spatial images [Fridrich]
19
Improving Type-I Schemes
2. Improving the scheme for JPEG images [Fridrich]
quantized DCT
coefficients
with value 0
and 1 are used
as binary feature
sequence.
20
Improving Type-I Schemes
2. Improving the scheme for JPEG images [Fridrich]
21
Improving Type-I Schemes
3. Improving PS scheme for binary images [Ho]
Test images
Patterns of 4length vector in
difference image are
used as binary
sequence.
Y.-A. Ho, et al., ``High capacity reversible data hiding in binary images using
pattern substitution,” Computer Standards and Interfaces, 2009.
22
Improving Type-I Schemes
3. Improving PS scheme for binary images
23
Improving Type-I Schemes
3. Improving PS scheme for binary images
Embed 260 bits
(a) Marked by PS
(b) Marked by improved PS
24
Improving Type-II Scheme
Improving HS-based scheme for spatial images [Luo]
The proposed codes is used at the second embedding stage.
Extension by embedding with two bins.
L. X. Luo, et al., ``Reversible Image Watermarking Using Interpolation
Technique," IEEE Trans. Inf. Forensics and Security, 2010.
25
Improving Type-II Schemes
3. Improving HS-based scheme for spatial images
(a) Lenna
26
Improving Type-II Schemes
3. Improving HS-based scheme for spatial images
(b) Baboon
27
Improving Type-II Schemes
3. Improving HS-based scheme for spatial images
(c) Boat
28
Conclusion:
• An improved coding method for all-zero cover
• An improved recursive construction
• A reversible data hiding method for binary cover
Future work:
Integer-domain reversible data hiding
29
Thank you for your attention!
30