Chapter 8 Generic Lossless Visible Watermarking − A New Approach
8.2 Proposed New Approach to Lossless Visible Watermarking
8.2.2 Lossless Visible Watermarking Scheme
Based on Lemma 8.1, we will now derive the proposed generic lossless visible watermarking scheme in the form of a class of one-to-one compound mappings, which can be used to embed a variety of visible watermarks into images. The embedding is reversible, that is, the watermark can be removed to recover the original image losslessly. For this aim, a preliminary lemma is first described as follows.
Lemma 8.2 (preference of compound-mapped value q). It is possible to use the compound
mapping q = Fb–1(Fa(p)) to convert a numerical value p to another value close to a
preferred value l.
Proof. Let F
x(p) = p – x where x is the parameter for F. Then Fx–1(p') = p' + x. Also, leta = p − ε and b = l where ε is a small value. Then, the compound mapping F
b–1(Fa(p)) ofp yields q as
q = F
b–1(Fa(p)) = Fb–1
(p – a) = Fb–1
(ε) = ε + b = ε + l,
which means that the value q is close to the preferred value l.
The above lemma relies on two assumptions. The first is that a is close to p, or equivalently, that a = p − ε. The reason why we derive the above lemma for a = p − ε instead of for a = p, is that in the reverse mapping we want to recover p from q without knowing p, which is a requirement in the applications of reversible visible watermarking investigated in this study. Although the value of p cannot be known in advance for such applications, it can usually be estimated, and we will describe some techniques for such estimations in the subsequent sections.
The second assumption is that Fx(p) yields a small value if x and p are close. Though the basic difference function Fx(p) = p – x used in the above proof satisfies this requirement for most cases, there is a possible problem where the mapped value may exceed the range of valid pixel values for some values of a, b, and p. For example, when a = 255, b = 255, and p = 253, we have q = 255 – 253 + 255 = 257 > 255. It is possible to use the standard modulo technique (i.e., taking q = 257mod256 = 1) to solve this issue; however, such a technique will make q far from the desired target value of b, which is 255. Nevertheless, we will show in Section 3 that using such a standard modulo function, Fx(p) = (p – x)mod 256, can still yield reasonable
experimental results. Furthermore, we show in Section 8.5 a more sophisticated one-to-one function that is free from such a wraparound problem.
By satisfying the above two requirements, the compound mapping yields a value q that is close to the desired value l. We now prove a theorem about the desired lossless reversible visible watermarking in the following.
Theorem 8.1 (lossless reversible visible watermarking). There exist one-to-one compound
mappings for use to embed into a given image I a visible watermark Q whose pixel values are close to those of a given watermark L, such that the original image I can be recovered from Q losslessly.Proof. This is a consequence of Lemmas 8.1 and 8.2 after regarding the individual pixel
values in I, L, and Q respectively as those of p, l, and q mentioned in Lemma 8.2. And it is clear by Lemma 8.1 that the value p can be recovered losslessly from the mappedvalue q which is derived in Lemma 8.2.
The above discussions are valid for embedding a watermark in a grayscale image. If color images are used both as the cover image and the watermark, we can apply the mappings to each of the color channels to get multiple independent results. The resulting visible watermark is the composite result of the color channels.
Based on Theorem 8.1, the proposed generic lossless reversible visible watermarking scheme with a given image I and a watermark L as input is described as an algorithm as follows.
Algorithm 8.1: generic visible watermark embedding.
Input: an image I and a watermark L.
Output: watermarked image W.
Steps:
1. Select a set P of pixels from I where L is to be embedded, and call P a watermarking
area.
2. Denote the set of pixels corresponding to P in W by Q.
3. For each pixel X with value p in P, denote the corresponding pixel in Q as Z and the value of the corresponding pixel Y in L as l, and conduct the following steps.
a. Apply an estimation technique to derive a to be a value close to p, using the values of the neighboring pixels of X (excluding X itself).
b. Set b to be the value l.
c. Map p to a new value q = Fb–1(Fa(p)).
d. Set the value of Z to be q.
4. Set the value of each remaining pixel in W, which is outside the region P, to be equal to that of the corresponding pixel in I.
Note that we do not use the information of the original image pixel value of X itself for computing the parameters a and b for X. This ensures that identical parameter values can be calculated by the receiver of a watermarked image for the purpose of lossless image recovery.
As an example, the process performed by Step 3 of the above algorithm for a pixel is illustrated by Figure 8.1, where the north and west pixels are used to estimate the color of the center pixel. Note that the east and south pixels are not used because these pixels are covered by the watermark and unknown to the receiver. It is important to allow as many neighbors of a pixel as possible to be known by the receiver to ensure that a good estimate can be calculated for that pixel. We will describe in Section 8.4 techniques for processing pixels, which can ensure that sufficiently many neighbor colors are known by a receiver for each pixel in the watermarking area.
Figure 8.1. An illustration of mapping the center pixel of a 3×3 image using Algorithm 8.1.
Only the mapping of the center pixel is shown for clarity; the east and south pixels are depicted as TBD (to be determined) in W.
R: 229
The corresponding watermark removal process for a watermarked image W generated by Algorithm 8.1 is described as an algorithm as follows.
Algorithm 8.2: generic watermark removal for lossless image recovery.
Input: a watermarked image W and a watermark L.
Output: the original image R recovered from W.
Steps:
1. Select the same watermarking area Q in W as that selected in Algorithm 8.1.
2. Set the value of each pixel in R, which is outside the region Q, to be equal to that of the corresponding pixel in W.
3. For each pixel Z with value q in Q, denote the corresponding pixel in the recovered image R as X and the value of the corresponding pixel Y in L as l, and conduct the following steps.
a. Obtain the same value a as that derived in Step 3a of Algorithm 8.1 by applying the same estimation technique used there.
b. Set b to be the value l.
c. Restore p from q by setting p = Fa–1(Fb(q)).
d. Set the value of X to be p.
8.2.3 Security Considerations
As mentioned previously, although we want legitimate users to be able to recover the original image from a watermarked one, we do not want an attacker to be able to do the same.
Herein, we propose some security protection measures against illicit recoveries of original images.
First, we make the parameters a and b in the above algorithms to be dependent on certain secret keys that are known only by the creator of the watermarked image and the intended receivers. One simple technique to achieve this is to use a secret key to generate a pseudo-random sequence of numerical values and add them to either or both of a and b for the pixels in the watermarking area. This technique is hereinafter referred to as parameter
randomization.
Another way of security protection is to make the choices of the positions for the pixels to be dependent on a secret key. Specifically, we propose to process two randomly chosen pixels (based on the security key) in P simultaneously as follows. Let the two pixels be denoted as X and X with values p and p , respectively. The color estimates a and a
corresponding to X1 and X2, respectively, are individually derived as before using their respective neighbors. The parameters b1 and b2 are set to be the values l1 and l2 of the respective watermark pixels Y1 and Y2. Then, instead of setting the values of the watermarked pixels Z1 and Z2 to be q1 = Fb1–1(Fa1(p1)) and q2 = Fb2–1(Fa2(p2)) as before, we swap the parameters and set
q
1 = Fb1–1(Fa2(p2)) and q2 = Fb2–1(Fa1(p1)).This parameter exchange does not affect the effectiveness of lossless recoverability, because we can now recover the original pixel values by the following compound mappings:
p
1 = Fa1–1(Fb2(q2)) and p2 = Fa2–1(Fb1(q1)).We will refer to this technique in the sequel as mapping randomization. We may also combine this technique with the above-mentioned parameter randomization technique to enhance the security further.
Last, the position in the image where a watermark is embedded affects the resilience of the watermarked image against illicit image recovery attempts. In more detail, if the watermark is embedded in a smooth region of the image, an attacker can simply fill the region with the background color to remove the watermark irrespective of the watermarking technique used. To counter this problem, an appropriate position should be chosen, using, for example, the adaptive positioning technique [104] when embedding a watermark. However, for ease of discussions and comparisons, we always embed a watermark in the lower right-hand corner of an image in this study.