• No results found

Region-Based Watermarking Technique

4.4 Wavelet Transform Based Approach

4.4.2 Region-Based Watermarking Technique

Applying the wavelet transform to a signal f results in T (f ) which is a transformed version of the signal. The original signal can then be reconstructed by applying the inverse wavelet transform (see Fig. 4.15). However, when the transformed signal is modified during the wa- termarking, which yieldsT (f ), a new signald f can result upon inverse transform appliance.b

HL1 HH1 LH1 HL 2 HH2 LH2 LL 2

Figure 4.16: The original image (left) is wavelet transformed using a 2-level decomposi- tion (center). The transformation results in low-, middle-, and high-frequency subbands (LL, HL, LH, and HH).

(cover image) andf (watermarked image), while, at the same time, a considerable amountb

of data is encoded.

Typically, a subset of the series of wavelet coefficients is considered for watermark insertion. High-frequency coefficients, for example, provide information about prominent features in an image (e. g., edges), which makes them particularly applicable for watermarking. But in case of Illustration Watermarking, a fixed amount of data is to be inserted, limited to certain image regions. Selecting solely the most significant coefficients may hence not suffice to embed the whole data amount, which requires to include other coefficients, as well. Also, due to the fact that watermarks are embedded only into certain regions which were selected according to content instead of determinable features, it is necessary to mark those regions. In other words, it must be possible to determine for each pixel whether it stores a portion of the watermark stream.

Another important aspect to be considered is that the valid range of RGB color channel values is between 0 and 255. Transforming the signal f into a wavelet representation, modifying a selection of coefficients, and applying the inverse transform can yield invalid RGB color values, which is to be prevented.

Algorithm description

After the image has been decomposed, watermark insertion proceeds in three steps: 1. For each subband to be coded, a Capacity Map (comparable to the Capacity Map

introduced in Sect. 4.3.3) is generated which indicates how many bits of a coeffi- cient can be replaced by watermark stream bits. In these maps, all positions of coefficients Cmin which correspond to the region to be watermarked are marked. In

4.4. Wavelet Transform Based Approach 87

Figure 4.17: Left: The original image has a certain region which is associated with data to be coded. This region is highlighted in each subband image. Right: Capacity Maps are overlayed on their corresponding subband images. Dark values indicate lower codable data rates than brighter values within the region.

a specified threshold are specifically marked. These latter coefficients are those which indicate abrupt changes (edges) in the image. The threshold has to be carefully cho- sen so that a coefficient does not change its state after watermarking (e. g., from Cmin

to Cmax). This is done by setting the threshold to the maximum value which can be

expressed by those bits to be coded. For example, in case of a maximum of 4 bits to be encoded into a coefficient, the threshold would be 15.

Figure 4.17(right) shows the Capacity Maps overlayed on their corresponding subband images. Capacity values are provided for each individual coefficient. The brighter a value in the Capacity Map which is here confined to the region to be watermarked, the more bits can be embedded.

2. For data insertion, the absolute values of coefficients that are marked in the Capacity Map are modified. Embedding data into those coefficients is then equal to embedding data into RGB color channel values by replacing their bits with watermark bits. During the data insertion, coefficients marked as Cmax are modified stronger than

those marked as Cmin, which yields variations between the amounts of encoded data.

In Figure 4.18, the encoding of the character ’a’ is illustrated using a constant ca- pacity level of 2 bits per coefficient. Assuming that the coefficients crk, cgk, and cbk correspond to the red, green, and blue color channels, respectively, the two LSBs of crk and cgk, and the second bit of cbk are replaced by character bits. Note that the LSB of a coefficient that corresponds to the blue color channel is reserved for region identification so that it cannot store watermark data.

‘a’

0

0 0 0 0

c

1r

c

1g

0

8 7 6 5 4 3 2 1 7 6 5 4

c

2b

c

2r 3 2

6 bits left unchanged

c

1b

0

8 LSB reserved for region identification

0

0

1

0

(ascii: 97)

Figure 4.18: Example of how the character ’a’ can be encoded into five coefficients.

3. After watermarking a particular coefficient at a certain position in each of the three subbands, the inverse wavelet transform is emulated to verify that the modified RGB color channel is still valid (i. e., between 0 and 255). If it exceeds its limits, the according original color channel value has to be adapted, i. e., it is increased or reduced accordingly. Thereafter, the corresponding coefficients and Capacity Map values have to be recalculated and watermarking is repeated.

Watermark retrieval

Just as the other techniques described in the previous sections, the wavelet domain tech- nique is a blind technique. After decomposing the watermarked image, the coefficients that represent the four subband images are equal to those coefficients the watermarking procedure yielded. The subsequent step is to generate the Capacity Map. Even though the watermarked coefficients differ from the original (unmodified) coefficients which were used to generate the Capacity Map during data insertion, both computed Capacity Maps are equal. The reason is no coefficient changed its state (Cmin or Cmax) during data insertion

since the threshold was appropriately chosen. Once the Capacity Map has been generated, watermarked regions can be identified and the encoded data can be extracted.