Steganalysis of Reversible
Contrast Mapping Watermarking
Authors: Yeh-Shun Chen and Ran-Zan Wang
Source: IEEE Signal Processing Letters, Vol. 16, No. 2,
February 2009, pp. 125-128
Reporter: Chia-Chun Wu (吳佳駿)
Date: 2010/08/27
1
Outline
1.
2.
3.
4.
5.
6.
7.
Reversible Watermark
Reversible Contrast Mapping
Embedding
Detection and Recovering
Steganalysis
Experimental results
Conclusions
2
1. Reversible Watermark
Cover
(1/4)
extraction
embedding
Watermark
Stego
Watermark
Irreversible Watermarking
Cover
extraction
embedding
Watermark
Stego
recover
Reversible Watermarking
Watermark
Cover
3
1. Reversible Watermark
(2/4)
Irreversible Watermarking
Internet
Cover image
Watermark
Stego image
Watermark
4
1. Reversible Watermark
(3/4)
Irreversible Watermarking
Watermark
Cover image
162 150
xi
10010110
xi+1
163 150
yi
10100010
yi+1
10100011
10010110
1
0
mi
mi+1
1
0
mi
mi+1
5
1. Reversible Watermark
(4/4)
Reversible Watermarking
Internet
Cover image
Watermark
Stego image
Cover image
Watermark
6
Very Fast Watermarking by Reversible Contrast Mapping, Dinu Coltuc
and Jean-Marc Chassery, IEEE Signal Processing Letters, Vol. 14, No. 4,
April 2007, pp. 255-258.
2. Reversible Contrast Mapping
(1/2)
RCM is a simple integer transform
RCM applies to pairs of pixels
Let ( X , Y ) be a pair of pixels in original image
Let ( X ', Y ') be a pair of pixels in stego image
Let [0, L] be image graylevel range (ie. L = 255)
a is the ceil function (the smallest integer
greater than or equal to a )
7
2. Reversible Contrast Mapping
The forward RCM :
Y ' 2Y X
The inverse RCM :
X ' 2X Y
1
2
X X ' Y '
3
3
(2/2)
0 2 X Y L,
0 2Y X L
2
1
Y X ' Y '
3
3
X’ and Y’ are both odd only if X and Y are both odd
If X and Y are not both odd
then inverse correct even if LSB bit set to 0
8
2. Reversible Contrast Mapping
The forward RCM :
X ' 2X Y
Y ' 2Y X
(7, 4) (10, 1)
(2/2)
(7, 9) (5, 11)
The inverse RCM :
1
2
X X ' Y '
3
3
(10, 1) (7, 4)
(10, 0) (7, 4)
2
1
Y X ' Y '
3
3
(5, 11) (7, 9)
9
DC D {( X , Y ) 2 X Y 0, 2Y X 0, 2 X Y L, 2Y X L}
3. Embedding
(1/2)
Step1: Partition the image into pairs of pixels.
Step2: For each pair ( X , Y )
DC and are not both odd pixel values.
Case 1: If ( X , Y )
- transform the pair by the forward RCM
- set the LSB of X ' to “1”
- embed data into the LSB of Y '
Case 2: If ( X , Y )
DC and are both odd pixel values.
- transform the pair by the forward RCM
- set the LSB of X ' to “0”
- embed data into the LSB of Y '
Case 3: If ( X , Y )
DC
- set the LSB of X to “0” and save the true value
10
10
12
X ' 2 10 12 8
11
embed “0”
Y ' 2 12 10 14 ( X ' , Y ' ) (9,14)
X ' 810 10002
embed “1”
10012 910 X '
Y ' 11112 1510
Y ' 1410 11102
( X ' , Y ' ) (9,15)
10
13
X ' 2 10 13 7
Y ' 2 13 10 16
X ' 2 11 13 9
( X ' , Y ' ) (7,16)
embed “1”
X ' 710 1112
Y ' 100002
Y ' 1610 100002
100012 1710
( X ' , Y ' ) (7,17)
embed “0”
Y ' 2 13 11 15 ( X ' , Y ' ) (8,14)
X ' 910 10012
X ' 810 10002
Y ' 1510 11112
11
embed “0”
13
embed “1”
( X ' , Y ' ) (8,15)
21
X ' 2 11 21 1 , ( X ' , Y ' ) DC
Y ' 2 21 11 31
X 1110 10112 save the LSB of X
X ' X 10102 1010 , Y ' Y
( X ' , Y ' ) (10,21)
11
4. Detection and Recovering
(1/2)
Step1: Partition the image into pairs of pixels.
Step2: For each pair ( X ' , Y ' )
Case 1: If the LSB of X ' is “1”
- extract the LSB of Y '
- set the LSBs of ( X ' , Y ' ) to “0”
- transform the inverse RCM
Case 2: If the LSB of X ' is “0” and belongs to DC
- extract the LSB of Y '
- set the LSBs of ( X ' , Y ' ) to “1”
- transform the inverse RCM
12
4. Detection and Recovering
(2/2)
Case 3: If the LSB of X ' is “0” and the pair ( X ' , Y ' ) with
the LSBs set to “1” does not belong to DC
- replacing the LSB of with X ' the
corresponding true value extracted
from the watermark sequence
13
3 3
1 1
LSB 1 ( )case1 ( )case 2 0.625
4 4
4 4
3 1
1 3
LSB 0 ( )case1 ( )case 2 0.375
4 4
4 4
5. Steganalysis
Case 1: If ( X , Y )
DC
(1/2)
and are not both odd pixel values.
- set the LSB of X ' to “1”
- embed data into the LSB of Y '
LSB(X, Y) = (0, 0), (0, 1) and (1, 0) LSB(X', Y') = (1, 1) or (1, 0)
Case 2: If ( X , Y )
DC and are both odd pixel values.
- set the LSB of X ' to “0”
- embed data into the LSB of Y '
LSB(X, Y) = (1, 1) LSB(X', Y') = (0, 0) or (0, 1)
Case 3: If ( X , Y )
DC
- set the LSB of X to “0” and save the true value
LSB(X, Y) = (0, 0), (0, 1) , (1, 0) and (1, 1) LSB(X', Y') = (0, 0) or (0, 1)
14
5. Steganalysis
PR
(2/2)
Embedding ratio
PRCM Corresponding probabilities of RCM
0.9522 (mean value for the 962 images)
(0.375 PR 0.5 (1 PR )) PRCM 0.75 PRCM , if b = 0
PLSB (b)
(0.625 PR 0.5 (1 PR )) PRCM 0.25 PRCM , if b = 1
If PR
If P
R
If PR
If P
R
If PR
0,
PLSB (0) 0.511950 and PLSB (1) 0.488050
0.25, PLSB (0) 0.482194 and PLSB (1) 0.517806
0.5, PLSB (0) 0.452438 and PLSB (1) 0.547563
0.75, PLSB (0) 0.422681 and PLSB (1) 0.577319
1,
PLSB (0) 0.392925 and PLSB (1) 0.607075
15
Mean value of the PLSB(1)-PLSB(0): -0.013306
Standard derivation of the PLSB(1)-PLSB(0): 0.03736
6. Experimental results
(1/3)
Fig. 1. Distribution of the PLSB(1)-PLSB(0) values of RCM watermarking
stego-images for various embedding ratios. (962 test images)
16
true, if PLSB (1) PLSB (0)
W (O)
false, otherwise
6. Experimental results
(2/3)
0.5 0.013306 0.5 0.03736
0.005374
Fig. 2. Detection result of the proposed method for various
threshold values. (1516 test images)
17
5. Experimental results
(3/3)
Table I
Mean Estimated Embedding Ratios of Hidden Messages
PR
Embedding ratio
PRCM Corresponding probabilities of RCM
0.9522 (mean value for the 962 images)
Threshold was set to 0.005374
PLSB (1) PLSB (0)
PR
(0.625 0.375) PRCM +(0.25 0.75) PRCM
PLSB (1) PLSB (0)
PR
0.25 PRCM 0.5 PRCM
18
6. Conclusions
This paper presented a simple method for
cracking RCM watermarking.
19
© Copyright 2026 Paperzz