DCT-Based Watermarking Method Using Color Components

In this article, we present an original DCT-based watermarking method on color images and integrating an errorcorrecting code (ECC) by generating polynom. This technique has been developed to be robust versus compression.


Introduction
With the growth of networked multimedia systems, the need of secure communication and data transfer go increasingly.Applications are numerous and various like satellite or medical imagery, or remote monitoring.During images transfer, data integrity is not really secure [4].Watermarking can be an answer to such problems.For applications dealing with images, the watermarking objective is to embed an invisible message inside the image data.The length of the transmitted message can be relatively important, in fact, longer than the one necessary for identification.Insertion can be made in a different way according to the length of the message or desired robustness.In this paper, we present a DCT-based watermarking method [3,1,7], which use the color information [8,2] and an addition of error correcting code (ECC).In the section 2, we present the DCT-based watermarking method.Section 3, firstly, we present the message coding and encapsulating, then we describe the adaptation of watermarking method to JPEG algorithm.In the section 4, we apply the method to remote monitoring and we analyze the robustness to compression.

DCT-based watermarking method
An application of watermarking consists in inserting a long message in an image for transmission via the network [5].We describe here a method of watermarking in the frequential field which must resist to compression JPEG.To increase the robustness, we propose a technique of frequential watermarking on the continuous component of DCT because it is used in many standardized applications such as JPEG and MPEG compression.
The proposed watermarking method is based on substitution, in a statistical criterion, of the first, second or third Least Significant Bits (LSB1, LSB2 or LSB3) of pixels blocks [8].The choice of the LSB1, LSB2 or LSB3 depends on the quality factor of the JPEG compression.
Blocks of N pixels, with ¢ ¤£ ¦¥ ¨ § and ¥ the block side, allow to insert the information several times in the image.
For example, in an image of © pixels, with ¢ £ and a message size of 100 bits, the information will be inserted 31 times.
Thus the objective is to embed a message ! made up of " bits # %$ , & (' 0) 1 21 21 4 3 " 65 .From a block made up of ¢ pix- els 7 8$ @9 4 A @B of the image, we calculate the DCT continuous component C $ D9 E 3 B of this block: ) where 7 8$ @9 4 A @B is the gray level of pixel W in the block & .
Then, after quantization, we have: This real value C c $ D9 F 3 YB is used in order to make our method more robust to quantization, then to compression.While calculating i qp ¨r 4 s ut U wv U yx , the division real rest of C c $ 9 E 3 B from ¡ , we have: i qp r s t U v U yx ¡ D1 .The objective is to bring back the value C c $ 9 F 3 YB to a stable value C c c$ 9 E 3 B according to the value of the bit # $ to be inserted.This is made in order to resist to the maximum of variations due to the deformations of another coding.
Let us calculate, , the difference between i p r s t U v U x and # %$ 1 © : £ # %$ 1 © q i qp r 2s t U v U x 1 The method of watermarking by block on the LSB of C c $ 9 E 3 B real value modify only ¢ pixels of the block ac- cording to the following equation: 7 c $ 9 2A YB `£ 7 $ 9 4 A @B ¨ 0 wW ed @¥ `9 F @B 3 (4) with ¢ s £ f) hg 8g 8 ¢ 5 , the number of modified pixels of the block & made up of ¢ pixels.
The bit i %j thus corresponds to k ml Gn integer part of o qp p hj r Fs t s u such as o dp p vj @r Fs t s u w yx {z i %j | s ~} .We have then: o p p j @r Fs ~t gs u `z Q g Q p j r 2 Yu | b g j @r 4 @u Dr Es t s u } (5)

Message coding and encapsulating
The suggested watermarking system comprises several stages which optimize the length of the message in order to increase the redundancy [6].For remote monitoring application, the embedding message requires 18 characters.The camera number ID and its location, hour and date are coded on 72 bits by using a Huffman code.Bits are then gathered by blocks of 12.The ECC by generating polynom, Frame Check Control, is then added.It allows to detect the presence of errors.The complete message is then coded and encapsulated by blocks of 96 bits.The details of 96 bits obtention are described in Figure 1.

Adaptation of watermarking method to the JPEG algorithm
The color images are generally built with three components corresponding to three grey level images.The quantity of informations and the color image size are very important (approximately three times larger).Therefore for transfering quickly color images, a compression algorithm is usually applied.In this paper, we describe a watermarking method which is adapted to JPEG compression.So the different stages of watermarking method must be as near as possible to the stages of JPEG algorithm.Firstly, the color image is decomposed in three components Red (R), Green (G) and Blue (B).This decomposition is illustrated Figures 2.b, c and d.Then, with a matrix of components changing, we obtain three others planes  In each plane, informations are embedded with the watermarking method, and we obtain three new planes Y', u' and v' including the message and the generating polynom.
On the basis of these planes, we built three new watermarked components R', G' and B'.Finally, starting from these components, we recomposed the color watermarked image.All these watermarking method steps are described in the diagram illustrated Figure 3.

Message watermarking on Y component
The Y component contains the majority of color image informations.So it is the most sensitive component to the modifications.Therefore, the JPEG algorithm uses small  { blocks to compress the image.We use also this block size to embed the message.The message is coded with 96 bits.The obtention of 96 bits is described in Figure 1.These 96 bits are embedded as many times as possible according to the image size.With our watermarking method, one bit is embedded by pixel blocks and we can define the block size.To be adapted to JPEG compression, we choose the same size of the blocks used in this compression algorithm i.e. a block.In the next section 3.4, we will see that concerning the u and v components the block size will be different.After the definition of blocks, we can determinate an embedding factor { which gives an idea of message redundancy according to the image size.This is one possible definition of this embedding factor: For example, in the original image ( ¹ ½¼ ¾ º d¿ pixels), illustrated Figure 2.a, the message is inserted 128 times.

Generating polynom watermarking on u and v components
The u and v components are used to insert the generating polynom, necessary to the ECC.The generating polynom is coded with only five bits.These five bits are embedded as many times as possible according to the image size.As for the Y component, one bit is embedded by pixel blocks but we use an other block size.To be adapted to JPEG compression, we choose ¾ À ¯pi xels as block size.Indeed, in this compression algorithm, the DCT coefficient is calculated on Á blocks of oversampled u and v components i.e. the choice of ¹ ½Â ¹ ½¯b locks.Since the new block size is defined, we obtain an embedding factor q ÁÃ which gives the polynom redundancy according to the image size: Because of polynom lenght, shorter than the message (approximately 15 times), the embedding factor { ÁÃ is much bigger.For the same image ( ¹ ½¼ ¾ º y¿ pixels), illustrated Figure 2.a, the generating polynom is embedded 614 times in each component.

Extraction of message and uses of ECC
After having shown the watermarking method, we are interested in the extraction of the message and more specialy in using of color information.First we can describe the obtention of watermarked polynom: The u and v component are divided by sets of five neighbour blocks.Every set gives a polynom.So, at the end of image reading, q ÁÃ polynoms are obtained.Then, with a majority vote, the generating polynom is extracted.Concerning the message, the method of extraction is more complex, because the block size and the set size changes.We get sets of sixteen neighbour blocks and we extract sixteen bits.The first twelve bits code the message and the four other bits are used for the ECC.Now, we can describe the utility of ECC.The ECC allows us to detect errors due to transfer and compression.Its application is very easy: we get again the sets of sixteen neighbour blocks.These sixteen bits give a number.This number is also divided by the extracted polynom and we obtain a rest.If the rest is different of zero, an error is detected else the next sets of blocks is read.Then we can check, with the polynom, if this part of message is right or not.Finally, to read an unitary message, six sets of sixteen blocks are necessary.We remind that initially the unitary message lenght was 18 characters.shows the difference between the original red component and the watermarked red component.Finally we recombine these three planes to obtain the final watermarked image, Figure 5.a.To have an idea of watermarking impact on the image, Figure 5.e presents the difference between the original image and the watermarked image.During transfer, the watermarked image undergo compression.Figure 6.a illustrates a JPEG compression with a quality factor of Í È YÉ .Indeed, the difference between the original Y component Figure 2.f. and the compressed Y component, Figure 6.b, is illustrated Figure 6.e.Concerning the watermarking method, the modifications must remain undetectable for the Human Visual System (HVS).That explains the noise which is present in the whole image.Because of this nature, compression modify the whole im-  age but not the whole watermark.However, watermarked message is redundant, same information are embedded a great number of times.Consequently, only some unit messages are modified by compression and so the information can be recovered.

Generating polynom
To evaluate the robustness of our method, we are interested in the amount of bits and characters which are different of whose embedded, according to the quality factor of compression.Table 1 illustrates the polynom extraction on the u component of the image, with a polynom of 5 bits repeated 614 times, that means 3072 bits, with QF of compression ranging between Ç È È YÉ and Î È YÉ .As the image is compressed, some bits are false but we can note that, for all five polynom bits, the percentage of right detected bit is higher than Í Ì É .Then, by a bit to bit vote method, we are able to restore good value for generating polynom.From this polynom, thanks to the ECC, we detect, on Y component, a degraded message because of image compression.Indeed, on Y plane, the original message 132HAL 13:47 08/01/2004 is inserted 128 times.Table 2 shows the message extraction and more specialy the percentage of right detected full messages according to the same quality factor of compression.Thanks to ECC, we detect errors on all the messages.So Table 2 allows us to evaluate the robustness of our system versus compression.Obtained results validate ECC use and bit to bit vote use.Thus, conversion of the watermarked image in JPEG format by preserving the watermark is possible with our method.

Conclusion
In this paper, we have presented a color DCT-based watermarking method resisting to disturbances that an image can undergo during its transfer.This robustness is due to ECC addition in the message and also to the use of the three color components.Moreover, we have shown how this method can also resist to such type of compression, often used for transfer.As new research orientations, we plan on one hand to use contents image to insert the message but, on the other hand, to adapt the choice of block size to the quality factor of compression.We hope also to increase the robustness against compression.
Message m ' Message m ' Message m ' Message m ' Message m ' Message m '

Figure 2 :
Figure 2: a) Original image, b) Red component, c) Green component, d) Blue component, e) Y component, f) u component, g) v component.

Figure 3 :
Figure 3: Diagram of the watermarking method.

Figure 4 .
Figure 4.a presents the Y component which is watermarked by using Ä blocks.Figure 4.c shows the difference be- tween the original Y component and the watermarked Y component.Concerning the other components, u and v, the block size is different.Figure 4.b presents the u water-

Figure 4 .
b presents the u watermarked plane with a block size of ¹ q 6¹ ½¯.We can see this size difference, Figure 4.d, where we show the difference between the original u component and the u watermarked component.By reverse transformation of Y, u and v watermarked planes, we obtain three new planes: the watermarked red plane Figure 5.b, the watermarked green plane Figure 5.c and the watermarked blue plane Figure 5.d.The image Figure 5.f

Figure 4 :
Figure 4: a) Y watermarked component, b) u watermarked component, c) Difference between Y and Y watermarked component, d) Difference between u and u watermarked component.

Figure 5 :
Figure 5: a) Watermarked image, b) Red watermarked component, c) Green watermarked component, d) Blue watermarked component, e) Difference between original and watermarked image, f) Difference between red and red watermarked component.

Table 2 :
Extraction of right full message according to the quality factor of compression.