An overview of reversible watermarking techniques appeared in literature during the last five years approximately is presented in this paper. In addition to this a general classification of algorithms on the basis of their characteristics and of the embedding domain is given in order to provide a structured presentation simply accessible for an interested reader. Algorithms are set in a category and discussed trying to supply the main information regarding embedding and decoding procedures. Basic considerations on achieved results are made as well.
1. Introduction
Digital watermarking techniques have been indicated so far as a possible solution when, in a specific application scenario (authentication, copyright protection, fingerprinting, etc.), there is the need to embed an informative message in a digital document in an imperceptible way.Such a goal is basically achieved by performing a slight modification to the original data trying to, at the same time, satisfy other bindings such as capacity and robustness. What is important to highlight, beyond the way all these issues are achieved, it is that this "slight modification" is irreversible: the watermarked content is different from the original one. This means that any successive assertion, usage, and evaluation must happen on a, though weakly, corrupted version, if original data have not been stored and are not readily available. It is now clear that in dependence of the application scenario, this cannot always be acceptable. Usually when dealing with sensitive imagery such as deep space exploration, military investigation, and recognition, and medical diagnosis, the end-user cannot tolerate to risk to get a distorted information from what he is watching at. One example above all: a radiologist who is checking a radiographic image to establish if a certain pathology is present or not. It cannot be accepted that his diagnosis is wrong both, firstly, to safeguard the patient's health and, secondly, to protect the work of the radiologist himself. In such cases, irreversible watermarking algorithms clearly appear not to be feasible; due to this strict requirement, another category of watermarking techniques have been introduced in literature which are catalogued as reversible, where, with this term, it is to be intended that the original content, other than the watermark signal, is recovered from the watermarked document such that any evaluation can be performed on the unmodified data. Thus doing, the watermarking process is zero-impact but allows, at the same time, to convey an informative message.
Reversible watermarking techniques are also named as invertible or lossless and were born to be applied mainly in scenarios where the authenticity of a digital image has to be granted and the original content is peremptorily needed at the decoding side. It is important to point out that, initially, a high perceptual quality of the watermarked image was not a requirement due to the fact that the original one was recoverable and simple problems of overflow and underflow caused by the watermarking process were not taken into account too. Successively also, this aspect has been considered as basic to permit to the end user to operate on the watermarked image and to possibly decide to resort to the uncorrupted version in a second time if needed.
Reversible algorithms can be subdivided into two main categories, as evidenced in Figure 1: fragile and semifragile. Most of the developed techniques belong to the family of fragile that means that the inserted watermark disappears when a modification has occurred to the watermarked image, thus revealing that data integrity has been compromised. An inferior number, in percentage, are grouped in the second category of semi-fragile where with this term it is intended that the watermark is able to survive to a possible unintentional process the image may undergo, for instance, a slight JPEG compression.
Figure 1. Categorization of reversible watermarking techniques.
Such feature could be interesting in applications where a certain degree of lossy compression has to be tolerated; that is, the image has to be declared as authentic even if slightly compressed. Within this last category can also be included a restricted set of techniques that can be defined as robust which are able to cope with intentional attacks such as filtering, partial cropping, JPEG compression with relatively low quality factors, and so on.
The rationale behind this paper is to provide an overview, as complete as possible, and a classification of reversible watermarking techniques, while trying to focus on their main features in a manner to provide to the readers basic information to understand if a certain algorithm matches with what they were looking for. In particular, our attention has been dedicated to papers appeared approximately from years 2004-2005 till 2008-2009; in fact, due to the huge amount of works in this field, we have decided to restrict our watch to the last important techniques. Anyway we could not forget some "old" techniques that are considered as reference throughout the paper, such as [1–3], though they are not discussed in detail. The paper tries to categorize these techniques according to the classification pictured in Figure 1 and by adding an interesting distinction regarding the embedding domain they work on: spatial domain (pixel) or transformed domain (DFT, DWT, etc.).
The paper is structured as follows: in Section 2, fragile algorithms are introduced and subdivided into two subclasses on the basis of the adopted domain; in Section 3, techniques which provide features of semi-fragileness and/or robustness are presented and classified again according to the watermarking domain. Section 4 concludes the paper.
2. Fragile Algorithms
Fragile algorithms cover the majority of the published works in the field of reversible. With the term fragile a watermarking technique which embeds a code in an image that is not readable anymore if the content is altered. Consequently the original data are not recoverable too.
2.1. Spatial Domain
This subsection is dedicated to present some of the main works implementing fragile reversible watermarking by operating in the spatial domain.
One of the most important works in such a field has been presented by Tian [4, 5]. It presents a high-capacity, high visual quality, and reversible data embedding
method for grayscale digital images. This method calculates the difference of neighboring
pixel values and then selects some of such differences to perform a difference expansion
(DE). In such different values, a payload
made by the following parts will be embedded:
(i)a JBIG compressed location map,
(ii)the original LSB values, and
(iii)the net authentication payload which contains an image hash.
To embed the payload, the procedure starts to define two amounts, the average
and the difference
(see (1)).
Given a pair of pixel values
in a grayscale image, with
,
,
(1)and given
and
, the inverse transform can be respectively computed according to(2)
(2)The method defines different kinds of pixel couples according to the characteristics
of the corresponding
and behaves slightly different for each of them during embedding. Two are the main
categories: changeable and expandable differences, let us see below for their definitions, respectively.
Definition 1.
For a grayscale-valued pair
a difference number
is changeable if
(3)Definition 2.
For a grayscale-valued pair
a difference number
is expandable if
(4)This is imposed to prevent overflow/underflow problems for the watermarked pixels
.
To embed a bit
of the payload, it is necessary to modify the amount
obtaining
which is called DE (Difference Expansion) according to (5) for expandable differences
(5)and (6) for changeable ones
(6)by replacing
with
within (2), the watermarked pixel values
and
are got. The basic feature which distinguishes expandable differences from changeable
ones is that the first ones can carry a bit without asking for saving the original
LSB. That yields to a reduced total payload
. A location map takes into account of the diverse disjoint categories of differences.
To extract the embedded data and recover the original values, the decoder uses the
same pattern adopted during embedding and applies (1) to each pair. Then two sets
of differences are created:
for changeable
and
for not changeable
. By taking all LSBs of differences belonging to
set, a bit stream
is created. Firstly, the location map is recovered and used together with
to restore the original
values; secondly, by using (2) the original image is obtained, lastly, the embedded
payload (the remaining part of
) is used for authentication check by resorting to the embedded hash.
Tian applies the algorithm to "Lena" (
), 8 bpp grayscale image. The experimental results are shown in Table 1, where the embedded payload size, the corresponding bitrate, and PSNRs of the watermarked
image are listed.
Table 1. Payload size versus PSNR of Lena image.
As DE increases, the watermark has the effect similar to mild sharpening in the mid tone regions. Applying the DE method on "Lena," the experimental results show that the capacity versus distortion is better in comparison with the G-LSB method proposed in [2], and the RS method proposed in [1].
The previous method has been taken and extended by Alattar in [6]. Instead of using difference expansion applied to pairs of pixels to embed one bit,
in this case difference expansion is computed on spatial and cross-spectral triplets
of pixels in order to increase hiding capacity; the algorithm embeds two bits in each
triplet. With the term triplet a
vector containing the pixel values of a colored image is intended; in particular,
there are two kinds of triplets.
(i)Spatial Triplet: three pixel values of the image chosen from the same color component within the image according to a predetermined order.
(ii)Cross-spectral Triplet: three pixel values of the image chosen from different color components (RGB).
The forward transform for the triplet
is defined as
(7)where
and
are constant. For spatial triplets,
and
, while in cross-spectral triplets,
and
. On the other side, the inverse transform,
, for the transformed triplets
is defined as
(8)The value
and
are considered for watermarking according to (9)
(9)for all the expandable triplets, where expandable means that
satisfies a limitation similarly to what has been proposed in the previous paper
to avoid overflow/underflow. In case of only changeable triplets,
(
changes correspondingly), but the same bound for the sum of these two amounts has
to be verified again.
According to the above definition, the algorithm classifies the triplets in the following groups.
(1)
: contains all expandable triplets whose
and
(
,
predefined threshold).
(2)
: contains all changeable triplets that are not in
.
(3)
: contains the not changeable triplets.
(4)
contains all changeable triplets
In the embedding process, the triplets are transformed using (7) and then divided
into
,
and
.
, and
are transformed in
and
(watermarked) and the pixel values of the original image
are replaced with the corresponding watermarked triplets in
and
to produce the watermarked image
. The algorithm uses a binary JBIG compressed location map
, to identify the location of the triplets in
,
, and
which becomes part of the payload together with the LSB of changeable triplets. In
the reading and restoring process, the system simply follows the inverse steps of
the encoding phase. Alattar tested the algorithm with three
RGB images, Lena, Baboon, and Fruits. The algorithm is applied recursively to columns and rows of each color component.
The watermark is generated by a random binary sequence and
in all experiments. In Table 2, PSNRs of the watermarked images are shown. In general, the quality level is about
27 dB with a bitrate of 3.5 bits/colored pixel. In Table 3, it is reported also the performance comparison in terms of capacity between the
Tian's algorithm and this one, by using grayscale images Lena and Barbara.
Table 2. Embedded payload size versus PSNR for colored images.
Table 3. Comparison results between Tian's and Alattar's algorithm.
From the results of Table 3, the algorithm proposed outperforms the Tian's technique at lower PSNRs. At higher PSNRs instead, the Tian's method outperforms the proposed.
Alattar proposed in [7] an extension of such a technique, to hide triplets of bits in the difference expansion
of quads of adjacent pixels. With the term quads a
vector containing the pixel values (
adjacent pixel values) from different locations within the same color component of
the image is intended (see Figure 2).
The difference expansion transform,
, for the quad
is defined as in (10)
(10)The inverse difference expansion transform,
, for the transformed quad
is correspondingly defined as in (11)
(11)Similarly to the approach previously adopted, quads are categorized in expandable or changeable and differently treated during watermarking; then they are grouped as follows.
(1)
: contains all expandable quads whose
,
,
with
transformed values and
predefined threshold.
(2)
: contains all changeable quads that are not in
.
(3)
: contains the rest of quads (not changeable).
(4)
: contains all changeable quads (
).
In the embedding process the quads are transformed by using (10) and then divided
into the sets
,
, and
.
and
are modified in
and
(the watermarked versions) and the pixel values of the original image
are replaced with the corresponding watermarked quads in
and
to produce the watermarked image
. Watermark extraction and restoring process proceeds inversely as usual.
In the presented experimental results, the algorithm is applied to each color component
of three
RGB images, Baboon, Lena, and Fruits setting
in all experiments. The embedding capacity depends on the nature of the image itself.
In this case, the images with a lot of low frequencies contents and high correlation,
like Lena and Fruits, produce more expandable triplets with lower distortion than high frequency images
such as Baboon. In particular with Fruits, the algorithm is able to embed 867 kbits with a PSNR
dB, but with only 321 kbits image quality increases at
dB. It is interesting to verify that with Baboon the algorithm is able to embed 802 kbits or 148 kbits achieving a PSNR of
dB and of
dB, respectively.
The proposed method is compared with Tian's algorithm, using grayscale images, Lena and Barbara. At PSNR higher than 35 dB, quad-based technique outperforms Tian, while at lower
PSNR Tian outperforms (marginally) the proposed techniques. The quad-based algorithm
is also compared with [2] method using grayscale images like Lena and Barbara. Also, in this case the proposed
method outperforms Celik [2] at almost all PSNRs. The proposed algorithm is also compared with the previous work
of Alattar described in [6]. The results reveal that the achievable payload size for the quad-based algorithm
is about 300,000 bits higher than for the spatial triplets-based algorithm at the
same PSNR; furthermore, the PSNR is about
dB higher for the quad-based algorithm than for the spatial triplet-based algorithm
at the same payload size.
Finally, in [8], Alattar has proposed a further generalization of his algorithm, by using difference
expansion of vectors composed by adjacent pixels. This new method increases the hiding
capacity and the computation efficiency and allows to embed into the image several
bits, in every vector, in a single pass. A vector is defined as
, where
is the number of pixel values chosen from
different locations within the same color component, taken, according to a secret
key, from a pixel set of
size.
In this case, the forward difference expansion transform,
, for the vector
is defined as
(12)where
is a constant integer,
,
and
, (
and
are the image width and height, resp.)
The inverse difference expansion transform,
, for the transformed vector
, is defined as
(13)Similarly to what was done before, the vector
can be defined expandable if, for all
,
can be modified to produce
without causing overflow and underflow problems in 
(14)To prevent overflow and underflow, the following conditions have to be respected.
(15)On the contrary, the vector
can be defined changeable if, (14) holds when the expression
is substituted by
.
Given
,
that represents any of the set of vectors in the RGB color components, such vectors
can be classified in the following groups
(1)
: contains all expandable vectors whose
(16)with:
transformed values;
predefined threshold.
(2)
: contains all changeable vectors that are not in
.
(3)
: contains the rest of the vectors (not changeable).
(4)
contains all changeable vectors.
In the embedding process the vectors are forward transformed and then divided into
the groups
,
, and
.
, and
are modified in
and
(watermarked) and the pixel values of the original image
are replaced with the corresponding watermarked vectors in
and
to produce the watermarked image
. Reading and restoring phase simply inverts the process. The algorithm uses a location
map
to identify
,
, and
.
The maximum capacity of this algorithm is 1 bit/pixel but it can be applied recursively
to increase the hiding capacity. The algorithm is tested with spatial triplets, spatial
quads, cross-color triplets, and quads. The images used are Lena, Baboon, and Fruits (
RGB images). In all experiments;
. In the case of spatial triplets, the payload size against PSNR of the watermarked
images is depicted in Figure 4(a). The performance of the algorithm is lower with Baboon than with Lena or Fruits. With Fruits, the algorithm is able to embed 858 kb (3.27 bits/pixel) with an image quality (PSNR)
of 28.52 dB or only 288 kb (1.10 bits/pixel) with reasonably high image quality of
37.94 dB. On the contrary, with Baboon, the algorithm is able to embed 656 kb (2.5 bits/pixel) at 21.2 dB and 115 kb (0.44 bits/pixel)
at 30.14 dB. In the case of spatial quads, the payload size against PSNR is plotted
in Figure 4(b). In this case, the algorithm performs slightly better with Fruits. In this case with Fruits, the algorithm is able to embed 508 kb (1.94 bits/pixel) with image quality of 33.59 dB
or alternatively 193 kb (0.74 bits/pixel) with high image quality of 43.58 dB. Again
with Baboon, a payload of 482 kb (1.84 bits/pixel) at 24.73 dB and of only 87 kb (0.33 bits/pixel)
at 36.6 dB are achieved. In general, the quality of the watermarked images, using
spatial quads, is better than the quality obtained with spatial triplets algorithm
(the sharpening effects is less noticeable). The payload size versus PSNR for cross-color
triplets and cross-color quads are shown in Figures 4(c) and 4(d), respectively. For a given PSNR, the spatial vector technique is better than the
cross-color vector method. The comparison between these results demonstrates that
the cross-color algorithms (triplets and quads) have almost the same performance with
all images (except Lena at PSNR greater than 30 dB). From the results above and from the comparison with
Celik and Tian, the spatial quad-based technique, that provides high capacity and
low distortion, would be the best solution for most applications.
Figure 4. (a) Spatial Triplets, (b) Spatial Quads, (c) Cross-col Triplets and (d) Cross-col
Quads.
Weng et al. [9] proposed high-capacity reversible data hiding scheme, to solve the problem of consuming
almost all the available capacity in the embedding process noticed in various watermarking
techniques. Each pixel
is predicted by its right neighboring pixel (
) and its prediction-error
is determined (see Figure 5).
Figure 5. Embedding process.
is then companded to
by applying the quantized compression function
according to the following.
(17)where
is a predefined threshold; the inverse expanding function is described in the following.
(18)The so-called companding error is
which is
if
.
Embedding is performed according to (19) (
is the watermarked pixel and
is the watermark), on the basis of a classification into two categories:
if
does not cause any over/underflow,
otherwise.
(19)Pixel belonging to
which will be considered for watermarking, are further divided into two subsets
and
in dependence if
or not respectively. The information to be embedded are: a lossless compressed location
map, containing 1 for all pixels in
and 0 for all pixels in
, whose length is
, the bitstream
containing the companding error
for each pixel in
and the watermark
. The maximum payload is given by the cardinality of
reduced by number of
and by the length of
. The extraction process follows reversely the same steps applied in embedding. All
LSBs are collected and then the string of the location map which was identified by
an EOS is recovered and decompressed, after that the classification is obtained again.
Restoring is firstly performed through prediction by using the following.
(20)where
, the predicted value, is equal to
in this case. On the basis of the presented experimental results, the algorithm globally
outperforms the Tian's method [4] and the Thodi's one [3] from the capacity-vs-distortion point of view: for instance it achieves
bpp and grants
dB of PSNR. In particular, performances seem to be better when textured images, such
as Baboon, are taken into account.
In Coltuc [10], a high-capacity low-cost reversible watermarking scheme is presented. The increment in capacity is due to the fact that it is not used any particular location map to identify the transformed pairs of pixels (as usually happens). The proposed scheme, adopts a generalized integer transform for pairs of pixels. The watermark and the correction data, needed to recover the original image, are embedded into the transformed pixel by simple additions. This algorithm can provide for a single pass of watermarking, bitrates greater than 1 bpp.
Let us see how the integer transform is structured. Given a gray-level (
) image and let
be a pair of pixels and
be a fixed integer, the forward transform
, where
is given in the following.
(21)where
and
belong to a subdomain contained within
to avoid under/overflow for
and
. The inverse transform
is instead given in the following.
(22)which is basically based on the fact that the relations in (23) (called congruence) hold
(23)If a further modification is applied (i.e., watermarking) through an additive insertion
of a value
, like in (24), (23) are not anymore satisfied by the new couple of pixels.
(24)In addition, it is important to point out that a nontransformed pair does not necessarily
fulfill (23), but it can be demonstrated that it always exists an
to adjust the pair in order to fulfill (23). On this basis, before the watermarking
phase, all the couples are modified to satisfy (23) and then the watermark codewords
(let us suppose that they are integers in the range
) are embedded into the transformed pixel couples by means of (24). For the watermarked
pairs, (23) no longer holds so they are easily detectable. Another constraint must
be imposed to prevent pixel overflow
(25)During watermarking, all pairs which do not cause under/overflow are transformed, on the contrary not transformed ones are modified according to (24) to satisfy (23), and the corresponding correction data are collected and appended to watermark payload.
During detection, the same pairs of pixels are identified and then, by checking (23)
if the result is
or
not-transformed and transformed (bringing the watermark) couples are respectively
individuated. The watermark is recovered and split in correction data and payload;
if the embedded information is valid, both kinds of pairs are inverted to recover
the original image. Given
the number of pixel pairs, where
is the transformed ones and being
the range for the inserted codeword, the hiding capacity is basically equal to
(26)In the proposed scheme, the bitrate depends on the number of transformed pixel pairs
and on the parameter
. The experimental results for
show that, a single pass of the proposed algorithm for
gives a bit-rate of 0.5 bpp at a PSNR of 29.96 dB. In the case of
the bit-rate is almost
bpp with a PSNR of
dB. By increasing
, the bit-rate becomes greater than 1 bpp obtaining a maximum bit-rate for
, namely 1.42 bpp at a PSNR of 19.95 dB. As
increases, the number of transformed pairs decreases. However, for highlytextured
images like Baboon performances are sensibly lower.
In [11], Coltuc improves the algorithm previously presented [10]. A different transform is presented: instead of embedding a single watermark codeword into a pair of transformed pixels, now the algorithm embeds a codeword into a single transformed pixel. Equation (27) defines the direct transform.
(27)while the inverse transform is given by the following.
(28)This time the congruence relation is given by by the following.
(29)Then the technique proceeds similarly to the previous method by distinguishing in transformed and not-transformed pixels. The hiding capacity is now
(30)where
is the number of transformed pixels and
is the number of image pixels.
The proposed algorithm is compared with the previous work [10]. This new technique provides a significant gain in data hiding capacity while, on
the contrary, achieves low values of perceptual quality in terms of PSNR. Considering
the test image Lena, a single pass of the proposed algorithm for
gives a bit-rate of 0.96 bpp. The bit-rate is almost the same of [10], but at a lower PSNR (22.85 dB compared with 25.24 dB). For
one gets 1.46 bpp at 20.15 dB which already equals the maximum bit-rate obtained
with the scheme of previous work; namely, 1.42 bpp at 19.95 dB (obtained for
). By increasing
, the bit-rate increases: for
one gets 1.77 bpp, for
the bit-rate is 1.97 bpp, for
the bit-rate is 2,08 bpp and so on, up to the maximum value of 2.19 bpp obtained
for
. The same problems when dealing with highly textured images are presented.
In Chang et al. [12], two spatial quad-based schemes starting from the difference expansion of Tian [4] algorithm are presented. In particular, the proposed methods exploit the property that the differences between the neighboring pixels in local regions of an image are small. The difference expansion technique is applied to the image in row-wise and column-wise simultaneously.
Let (
) be a pixel pair, the Integer Haar wavelet transform is applied as follows
(31)and a message bit
is hidden by changing
to
. The inverse transform is
(32)and then
and
are restorable by using the following.
(33)In the proposed scheme, the host image
is firstly partitioned into 
blocks (spatial quad-based expansions, see Figure 6).
Figure 6. The partitioned image
and a
block
.
To establish if a block
is watermarkable, the measure function, presented in (34) which assumes boolean values,
is considered.
(34)where
is a
block,
is a predefined threshold,
,
,
, and
are pixel values in
,
is the "AND" operator. If
is true,
is chosen for watermarking, otherwise
is discarded. Two watermarking approaches are proposed. In the first one, row-wise
watermarking is applied to those blocks satisfying the relation
which determines that (34) still holds for watermarked values and consequently to
apply column-wise watermarking. Bindings to avoid over/underflow are imposed to watermarked
pixels both for row-wise embedding and for column-wise one. In the second approach
initial relation is not required anymore, only over/underflow is checked, and a 4-bit
message is hidden in each block. In both cases, a location map to record the watermarked
block is adopted; such location map is compressed and then concealed. The algorithm
is tested on four
8 bit grayscale images, F16, Baboon, Lena, and Barbara. The results, in terms of capacity versus PSNR, are compared with other three algorithms,
proposed by Thodi, Alattar and Tian. All methods are applied to images only once.
From the comparison, the proposed algorithm can conceal more information than Tian's
and Thodi's methods, while the performances of Alattar scheme are similar. In general,
the proposed scheme is better than Alattar at low and high PSNRs. For middle PSNR
Alattar's algorithm performs better.
Weng et al. presented in [13] a reversible data hiding scheme based on integer transform and on the correlation
among four pixels in a quad. Data embedding is performed by expanding the differences
between one pixel and each of its three neighboring pixels. Companding technique is
adopted too. Given a grayscale image
, each
adjacent pixels are grouped into nonoverlapping quads 
(35)The forward integer transform
is defined as
(36)while the inverse integer transform
is given by
(37)The watermarking process starts with the transformation
of each quad and then proceeds with the application of a companding function (see
[9] for detail) whose output values are classified into three categories
,
, and
, according to specified characteristics. Quads belonging to the first two categories
are watermarked, the others are left unmodified; finally
is applied to obtain the watermarked image. The to-be-inserted watermark is the composition
of payload, location map and original LSBs. During extraction, quads are recognized
again and then the transformation
is applied; after that the quad classification is performed by resorting to the location
map recovery. Finally, the watermark is extracted and image restoration is achieved
by computing
.
The algorithm is tested and compared with Tian's and Alattar's method on several images
including
Lena and Barbara. Embedding rates close to 0.75 bpp are obtained with the proposed and the Alattar's
algorithm without multiple embedding, while multiple embedding is applied to Tian's
algorithm to achieve rates above 0.5 bpp. From results the proposed method presents
a PSNR of 1–3 dB more than the others with a payload of the same size. For example,
considering Lena, in the proposed method the embedding capacity of 0.3 bpp is achieved with a PSNR
of 44 dB, while in Tian, the PSNR is 41 db and in Alattar is 40 db. The embedding
capacity of 1 bpp is achieved with a PSNR of 32 db for the proposed method, while
in this case in Tian and Alattar the PSNR is 30 db. For Baboon, the results show that for a payload of 0.1 bpp a PSNR of 44 db, 35 db, and 32 db
for the proposed method, Tian and Alattar is achieved, respectively. In general, the
proposed technique outperforms Alattar and Tian at almost all PSNR values.
In [14], Ni et al. proposed a reversible data hiding algorithm which can embed about 5–80 kb
of data for a
grayscale image with PSNR higher than 48 dB. The algorithm is based on the histogram
modification, in the spatial domain, of the original image. In Figure 7(a), the histogram of Lena is represented.
Figure 7. (a) Histogram of Lena image, (b) Histogram of watermarked Lena image.
Given the histogram of the original image the algorithm first finds a zero point (no
value of that gray level in the original image) or minimum point in case that zero
point does not exist, and then the peak point (maximum frequency of that gray level
in the original image). In Figure 7(a)
(255) represents the zero point and
(154) represents the peak point. The number of bits that can be embedded into an image,
equals to the frequency value of the peak point. Let us take this histogram as an
example. The first step in the embedding process (after scanning in sequential order)
is to increase by 1, the value of pixels between 155 and 254 (including 155 and 254).
The range of the histogram is shifted to the right-hand side by 1, leaving the value
155 empty. The image is scanned once again in the same sequential order, when a value
of 154 is encountered, such value is incremented by 1, if the bit value of the data
to embed is 1; otherwise, the pixel value remains intact. In this case, the data embedding
capacity corresponds to the frequency of peak point. In Figure 7(b) the histogram of the marked Lena is displayed.
Let be
and
, with
, the peak point and the zero point (or minimum point), respectively, of the marked
image. the algorithm scan in sequential order (the order used in embedding phase)
the marked image. When a pixel with its grayscale value
, is encountered, a bit "1" is extracted. If a pixel with its value
is encountered, a bit "0" is extracted. The algorithm described above is applied
in the simple case of one pair of minimum point and maximum point. An extension of
the proposed method considers the case of multiple pairs of maximum and minimum points.
The multiple pair case can be treated as the multiple repetition of the technique
for one pair case. The lower bound of the PSNR of the marked image generated by the
proposed algorithm can be larger than 48 dB. This value derives from the following
equation.
(38)In embedding process the value of pixel (between the minimum and maximum point) is
added or subtracted by 1. In the worst case,
. Another advantage of the algorithm is the low computational complexity. Also the
experimental results demonstrate that the overall performance of the proposed technique
is good and better than many other reversible data hiding algorithm. In Table 4, results, in terms of PSNR and payload, of an experiment with some different images
are shown.
Table 4. Experimental results for some different images.
2.2. Transformed Domain
In this subsection, works dealing with fragile reversible watermarking operating on transformed domain are presented.
An interesting and simple technique which uses quantized DCT coefficients of the the to-be-marked image has been proposed by Chen and Kao [15]. Such an approach resorts to three parameters adjustment rules: ZRE (Zero-Replacement Embedding), ZRX (Zero-Replacement Extraction), and CA (Confusion Avoidance); the first two are adopted to embed and extract one bit, respectively, the third one is to prevent confusion during embedding and extraction. Hereafter, these three rules are listed.
ZRE: embeds one bit into
satisfying
as follows.
(1)Change
to
as embedding bit 1.
(2)Change
to
as embedding bit 0.
ZRX: extract one bit from
when
or
as follows.
(1)Extract bit 1 from
and modify them to
.
(2)Extract bit 0 from
and modify them to
.
CA: proposed to avoid embedding or extracting error.
(1)In embedding, each
are changed to
when
,
or changed to
when
,
.
(2)In extracting, each
are changed to
when
,
or changed to
when
,
.
To perform embedding, the image is partitioned in
blocks and each of them is DCT transformed and quantized. Then, on the basis of a
predetermined selection sequence, triplets of coefficients are selected and preprocessed
by applying CA rule. Finally, the watermark bits are embedded through ZRE rule into
valid triplets (i.e., with the format
where
) and IDCT is computed to obtain the watermarked image. During extraction, all the
initial steps are repeated as well until when triplets are constructed again; ZRX
rule is applied to all the valid triplets, thus the watermark is read and the original
coefficients are recovered. By using CA rule, all the other triplets are converted
back to their original values too. Finally IDCT is obviously computed. Experimental
results show that with Lena
a payload of
bits can be embedded and at the same time a PSNR of
dB can be granted; similar values are provided for Cameraman (payload of
bits and PSNR of
dB).
Another work based on integer DCT coefficients modification has been proposed by Yang
et al. [16]. The reversibility is guaranteed by integer DCT, a lossless
block transform, is applied to the whole image; the algorithm exploits the principle
of histogram modification proposed by Ni et al. [14]. The integer DCT transform has the property of energy concentration which can be
used to improve the capacity of histogram modification scheme. The watermarking process
starts with dividing the image into
blocks with size
and computing the integer DCT. Within each transformed block, the
coefficients in position
(
are selected to form
coefficient groups
and for every group an histogram is created. Histogram modification is then applied
to insert the watermark only to AC groups. In some applications, it can be used a
secret key
to select
(
) coefficient groups for watermarking. For each histogram of the total
coefficient groups, the positions of the original peak point
and zero point
which are involved in modification, must be recorded as overhead information needed
during the extraction process. The extraction process is simply the reversed of the
embedding process. The presented experimental results say that with Lena
,
bits of payload are achievable with a PSNR of almost
dB.
In Weng et al. [17], a data hiding scheme, based on companding technique and an improved difference
expansion (DE) method is presented. The payload is embedded into high frequency bands
(LH, HL, and HH) in the integer wavelet transform domain (IWT), using the companding
technique. To solve the overflow/underflow problem, after IWT, a method based on histogram
modification is proposed. Such algorithm is based on Xuan's technique [18], which suffered the problem of overflow/underflow. Weng avoids that problem by interchanging
the order of histogram modification and IWT. The advantages are basically an increment
in hiding capacity with the PSNR value slightly increased and an overall PSNR improvement.
Watermark embedding is divided into two steps: firstly, the image
is IWT-transformed and the watermark w is embedded into the LSB of one bit left shifted version of an IWT selected coefficient;
after that inverse, IWT is applied and the image
is obtained.
could be out of range
and to guarantee that such value are into such a range, an histogram modification
technique is used and an improved DE method is adopted to embed information regarding
this modification into
(the modified
) to achieve, finally,
. Such improved DE method is based on a classification which divides each difference
into three categories: expandable, changeable and nonchangeable.
The extraction process is composed by two stages: in the first one, classification
is performed again and DE embedding is inverted till retrieving
and information about histogram modification. After that, histogram modification
is inversely applied and then the obtained image is IWT-transformed. High frequencies
subbands are selected and the watermark is extracted. Finally inverse IWT is computed
to retrieve the original image. Experimental results witness that a payload of
bpp with a correspondent PSNR of
dB is achieved for Lena
. The same capacity is obtained for Baboon
but with a PSNR of
dB.
Lee et al. [19] proposed a reversible watermarking scheme with high embedding capacity. The input image is divided into non-overlapping blocks, and the watermark is embedded into the high-frequency wavelet coefficients of each block. To guarantee the reversibility, invertible integer to integer wavelet transforms are used, by applying the Lazy wavelet and the lifting construction (finite length filter), to avoid loss of information through forward and inverse transform. The watermark is embedded into the wavelet coefficients using two techniques, the LSB-substitution or the bit-shifting (specifically p-bit-shifting). In the first case, the watermark is embedded by replacing the LSB of the selected wavelet coefficient with the watermark bit.
(39)where
is the original coefficient,
is the watermarked coefficient and
is the watermark bit. In the second case, the original coefficient
is multiplied by
, where
is a positive integer, and the watermark bit
is embedded into its
LSBs
(40)where
and
is a set of
watermark bits. During this phase, an overflow or underflow problem, in the corresponding
spatial domain, can occur. To achieve the reversibility, underflow and overflow must
be predicted before watermark embedding identifying the LSB-changeable and bit-shiftable
image blocks. As defined, an image block is said to be LSB-changeable when a watermark
bitstream can be embedded into the LSBs of its high-frequency wavelet coefficients
using the LSB-substitution without any underflow or overflow in the spatial domain,
bit-shiftable or, specifically,
-bit-shiftable, when a watermark bitstream can be embedded into its high-frequency
wavelet coefficients using the bit-shifting without any underflow or overflow in the
spatial domain. To understand how to avoid overflow and underflow Figure 8 is to be considered. It displays the scheme of forward and inverse wavelet transform
and watermark embedding.
Figure 8. Forward and inverse wavelet transform and watermark embedding.
First, an
pixel block
is transformed into a block of
wavelet coefficients
using the integer-to-integer transform
. Next, a block
is obtained by setting the LSBs of the chosen coefficients to zero or by applying
bit-shifting to the chosen coefficients in
. The modified pixel block
is obtained by applying the 2-D inverse floating-point
wavelet transform to
. By adding a watermark bit block
to
, a block of watermarked wavelet coefficients
is obtained. Then,
and
are obtained by applying
and
to
, respectively. The embedding error
is obtained by applying
to
. Using a floating-point wavelet transform, overflow and underflow, caused by watermarking
in the wavelet domain, can be predicted exploiting the linearity of the transform.
From Figure 8, it derives that,
(41)The underflow or overflow depend on the error
introduced by the embedded watermark
. In this case, two matrices
and
, whose elements represent limits of max positive and negative errors caused by the
embedding process are shown in the following.
(42)where
,
is the matrix with only one nonzero element of value 1 in the
th row and
th column. Since
satisfy the inequality
, the overflow and underflow will not occur in
for any watermark block
if
(43)for
, 
During embedding process, the watermarked image block obtained is
. The integer to integer wavelet transforms introduce a roundoff error (caused by
truncation). The roundoff error matrix
can be defined, as represented by 
, by two matrix
and
. In case of integer to integer wavelet transform that approximates LeGalle 5/3 filter,
and
are shown in the following.
(44)Introducing such error, the watermarked image block
is given now by
(45)An image block
can be said LSB-changeable or bit-shiftable for any watermark block
if (46) is satisfied.
(46)for
, 
The proposed algorithm uses also a location map L (binary matrix) that indicates which
blocks are watermarked. This matrix is a part of the side information used in decoding
phase, and is embedded during the watermarking process. The decoding algorithm starts
dividing the watermarked image into non-overlapping
blocks. The transformation applied to each block uses the same wavelet utilized in
the embedding scheme. Next LSB-changeable blocks are searched. When the process identifies
the LSB-changeable blocks, the location map is recovered (through the LSBs of the
high frequency wavelet coefficients), the watermarked blocks are searched and the
payload (original LSBs and message bits) extracted. From the original LSBs and the
location map, the original image block can be reconstructed. The experimental results
show that the proposed scheme has higher embedding capacity, compared with other existing
reversible algorithm. Figure 9 shows the quality of watermarked images at various embedding capacities with block
size of
. The size of the block determines the performance of the proposed algorithm. If the
block size is too small (
) or too large (
), the performance of the algorithm is degraded.
Figure 9. Comparison of embedding capacity versus PSNR for some grayscale images.
3. Semi-Fragile and Robust Algorithms
In this section the second category of algorithms belonging to the class of semi-fragile and robust is introduced. Such techniques present the characteristic to grant a certain degree of robustness when a specific process is applied to the watermarked image: this means that the image is still asserted as authentic.
3.1. Semifragile Algorithms
3.1.1. Spatial Domain
De Vleeschouwer et al. proposed in [20], a semi-fragile algorithm based on the identification of a robust feature of the luminance histogram for an image tile. As for the patchwork approach, the cover media is tiled in non-overlapping blocks of pixels that are associated to a bit of the embedded message.
For a single block, the pixels are equally divided into two pseudorandom sets (i.e., zones A and B) and for each zone the luminance histogram is computed and mapped around a circular support. A weight, proportional to the occurrence of each luminance value, is placed on the corresponding position of the circle and then a center of mass is calculated and localized respect to the center of the circle.
Since zones A and B are pseudo-randomly determined, it is highly probable that the localization of the
corresponding centers of mass are very close to each other. This peculiarity can be
exploited to embed a bit by simply rotating the center of mass of the A and B zones in opposite ways. A clockwise rotation of the
zone center of mass can be associated to the embedding of a bit "1," while an anticlockwise
rotation can be associated to a bit "0." The
zone is rotated in the opposite direction accordingly to the technique previously
presented.
By using this approach, it is very easy to determine, during the watermark detection, if a "1" or "0" bit is embedded in a certain block and, eventually, remove the mark by counter rotating the histogram along the circular support.
In a real image, some pathological cases can arise when the two centers of mass are not properly positioned and in general do not respect the mutual nearness. These cases are statistically negligible and do not affect significantly the available watermark payload.
If the histogram is mapped linearly into the circular support, salt and pepper noise can appear because of the abrupt transition on the occurrences of the 255-level
to the 0-level and viceversa even for a small support rotation. To cope with this
problem, the histogram can be mapped to the support in an alternative fashion by mapping
clockwise the
st, the
th histogram value, and so forth.
Because of the rearrangement of the histogram on the support, the center of mass for the A and B zones appear very close to the center of the circle making the watermark detection less reliable. In this case, the center of mass computation is substituted by the computation of the minimal inertia axis that can be detected more easily. This alternative technique make the salt and pepper noise disappear. Both these approaches can cope with acceptable lossy attacks such cropping (by embedding a synchronization grid) and JPEG compression. The proposed methods show a good robustness, even if the second one, while more appealing from a perceptual point of view, is more fragile to JPEG compression.
In Ni et al. [21], an algorithm based on the De Vleeschouwer idea is proposed in order not to be fragile to JPEG compression. This method is based upon an analysis of the differences between couples of pixels belonging to an image tile.
An image tile is divided into pixel couples and a sum of differences of their luminance
values (taken in an ad hoc manner) is computed. A statistical analysis shows that this computed value (named
) is very close to zero for most of the tiles. The main idea for bit embedding is
that the difference value
is related to a reference value
(usually less than 5 according to numerous experiments) and a categorization of the
value respect to the
value is carried on. The categorization is defined even by means of the parameter
that is usually
. This approach is aimed to avoid falling into underflow/overflow errors that would
significantly lower the stego image quality. In particular, four categories are identified.
Category 1
The pixel grayscale values of a block under consideration are far enough away from the two bounds of the histogram (0 and 255 for an 8-bit grayscale image).
In this category, two other cases are further considered according to the value of
.
(1)The value
is located between the range
and
.
(2)The absolute value of
exceeds the threshold
.
Category 2
Some pixel grayscale values of the block under consideration are very close to the lower bound of the histogram (0 for an 8-bit grayscale image).
In this category, two other cases are further considered according to the value of
.
(1)The value
is located between the range
and
.
(2)The value of
is located on the right hand side beyond the threshold
.
Category 3
Some pixel grayscale values of the block under consideration are very close to the upper bound of the histogram (255 for an 8-bit grayscale image).
In this category, two other cases are further considered according to the value of
.
(1)The value
is located between the range
and
.
(2)The value of
is located on the left hand side beyond the threshold
.
Category 4
Some pixel grayscale values of the block under consideration are close to the upper bounds, while some pixel grayscale values are close to the lower bounds of the histograms.
In this category, two other cases are further considered according to the value of
.
(1)The value
is located between the range
and
.
(2)The absolute value of
is beyond the threshold
.
Depending on the categories and on the cases the couples of pixels are referrable
to, the difference
can be increased or decreased by
. The increment/decrement is always implemented as a modification of the value of
the higher valued pixel of the pair. In some cases,
cannot be modified without generating salt and pepper noise; in these case, no modification are applied and then an error is inserted.
To cope with these insertion errors, the payload is embedded with an Error Correction Code providing a sufficient data redundancy. Authors states that BCH(63,7,15) can correct
most of the random errors that can be generated during the embedding process. In some
cases, errors concentrate in particular regions of the image (bursts of errors) giving no chance to the ECC to recover data. In order to deal with these situations,
the authors used a message bits permutation scheme to redistribute errors along the
entire image. Experimental results confirm that a significant enhancement of the data
embedding capacity and of the PSNR of the marked image can be achieved respect to
the method proposed in [20]. The images used in the experiments are Lena, Baboon, and Boat (
). For Lena with a PSNR of 40.2 db the capacity is 792 bits, but for the other two images the
capacity is lower, in fact in Baboon with a PSNR of 38.7 db the capacity is 585 bits while for Boat with a PSNR of 40.5 db the payload is 560 bits. In particular, robustness is slightly
increased in the case of a lossy modification like JPEG/JPEG2000 compression with
higher compression rates with respect to [20]. For severe compression rates, instead, the results of the proposed algorithm are
comparable to those presented by De Vleeschouwer. A unified authentication framework
based on the proposed methods has been included in the Security part of JPEG2000 (known
as JPSEC) IS (International Standard), JPSEC ISO/IEC 15444-8:2007, April 2007.
3.1.2. Transformed Domain
Zou et al. [22] proposed a semi-fragile lossless watermarking scheme based on the 5/3 (LeGalle 5/3
filter) integer wavelet transform (
) integrated into JPEG2000 standard compression. The watermarking scheme embeds data
into the
coefficients of a selected high-frequency sub-band (
). The proposed algorithm exploits a feature of the image wavelet transform: the coefficients
of the high-frequency sub-band follow a zero-mean Laplacian-like distribution (see
Figure 10).
Figure 10. Histogram of the IWT coefficients in the HL sub-band of JPEG2000.
From this feature it is possible to deduce that dividing the considered sub-band into
non-overlapping blocks of size nxn and calculating the mean of the coefficients values
in each block, the resulting mean values also have zero-mean Laplacian distribution.
The scheme starts scanning all the blocks to find out the maximum absolute mean value
of coefficients,
. A threshold
is set to the smallest integer number greater than
. The embedding phase, manipulates the mean value of the block. Considering a block,
to embed a bit
, the mean value of the block is shifted by
(positive or negative, resp.).
is equal or larger than
. To embed a bit
, the mean value of the
coefficients in the considered block is unchanged. In the extraction process, when
a mean value of the block with absolute value larger than
is found, a bit = 1 is recovered. If such mean value is smaller than
a bit = 0 is recovered.
Since S is fixed for all blocks, the original coefficients can be recovered to reconstruct
the original image. The reconstructed value is obtained by subtracting
from
coefficients in the block where bit = 1 is embedded. In this case, the reversibility
of the embedding process is guaranteed. To prevent overflow and underflow, caused
for example by a conversion of the watermarked image from JPEG2000 format to other,
the authors present a block classification method to identify which blocks can be
modified during embedding process. This classification divides the blocks into four
categories (see Figure 11). Each category is represented by an histogram of the corresponding pixel values
of the blocks in the spatial domain. Assuming that the maximum absolute pixel grayscale
value (0–255) change is
, the underflow condition occurs when there are pixels with grayscale values less
than
and the values need to be decreased in the embedding process. The overflow condition,
instead, occurs when there are pixels with grayscale values greater than (255-
) and the values need to be increased. The worst case is described in Figure 11(d); in this kind of block is not possible to embed data (not-embeddable block). If during
embedding phase a bit 1 is embedded, in detection process the system can extract this
value without problems. Problems occur when during detection process a bit 0 is detected.
In this case, the decoder is not able to decide if a bit 0 has been embedded or the
considered block is not embeddable. To solve the problem and correct the errors, an
(Error Correction Code) technique is used. The experimental results show that the
proposed method works well. No salt-and-pepper noise exist and the visual quality
of the watermarked images is much higher compared with the method of De Vleeschouwer
[20]. The PSNR of the proposed method are all over 38 dB. Zou applies the algorithm to
Lena, a
8-bit gray-scale image and the performance results, are shown in Table 5. Zou algorithm's is also robust to JPEG2000 lossy compression.
Table 5. Block size versus capacity (Lena
).
Figure 11. Blocks classification. (a) Type A. (b) Type B. (c) Type C. (d) Type D.
Wu [23] proposed a reversible semi-fragile watermarking scheme for image authentication.
This algorithm embeds a watermark into
sub-band of the integer wavelet domain, can restore the original image and can also
locate the tamper region. To embed data, the proposed scheme uses histogram shifting
of integer wavelet coefficients which grants higher visual quality of the watermarked
image compared with other algorithms reported in the literature. The method can also
tolerate JPEG compression at low quality factor. To reconstruct the original image,
the algorithm implements a four-level integer wavelet transform, CDF 9/7, a bi-orthogonal
wavelet based on lifting scheme. The original image can be obtained if the marked
image has not been altered. As seen in Zou [22], for most of the images, the integer wavelet coefficients histogram, of the high-frequency
sub-band, follow a near zero-mean Laplacian-like distribution.
coefficients values in the high-frequency sub-band are concentrated near zero in
the histogram. This property is used to implement reversible data hiding. Before to
start with embedding process, the image is pre-processed by histogram modification,
to prevent underflow or overflow. Then four-level IWT is performed on the pre-processed
image. The watermark is embedded in
sub-band by inserting a five-bit code (one identifying "0" and one "1") by substituting
the 5 LSBs of selected wavelet coefficients. Information needed to reconstruct the
original image, are instead embedded reversibly by histogram shifting in high-frequency
sub-bands of the
domain. Finally, inverse
is applied to obtain the marked image. During detection and recovery step, the four-level
on the image is performed. From
sub-band the hidden watermark is extracted and authenticity is verified by comparing
the extracted watermark with the original known one. Due to the spatial correlation
granted by wavelet transform, possible alterations are individuated by means of this
comparison. If the image is authentic, the original image is then recovered from the
marked one. To evaluate the performance of the proposed algorithm, some common images,
Lena, Baboon, Barbara, Peppers, and so forth, are used. All images have a size of
bits. In Table 6, PSNRs of six marked images are shown. The experimental results show that the embedding
distortion is small and a good visual quality of the watermarked image is guaranteed.
The proposed technique can also resist JPEG lossy compression at a low quality factor.
Table 6. PSNR values for some test images.
3.2. Robust Algorithms
3.2.1. Spatial Domain
The algorithm presented in [24] is based on histogram modification. Embedding is performed by selecting a couples
of histogram bins,
and
, and in order to insert a message bit
or
, the following relations are required.
(i)
(ii)
.
If the asked relation does not already exist, bins are swapped (pixels belonging to the bins are changed accordingly); if an equality happens between selected bins, they are skipped. Bins couples are individuated according to a public key which is composed by a real number whose integer and decimal parts are used to determine the initial bin (start) and the distance between the two bins within each couple (step), respectively. Couples are selected sequentially over the histogram, in order to allocate all the message bits. Furthermore, reference side information which records if bins are swapped or not is constructed and passed to the extractor, together with the watermark length and the public key, to allow reversibility.
The capacity of this method is quite low (at most
bits for a 256-gray level image) but, on the contrary, perceptual quality is preserved
(PSNR
dB for usual test images). The algorithm presents a high robustness to different
kinds of attacks such as flipping, rotation (
,
, and
), up-sizing, increasing aspect ratio, cropping (
), drawing and so on; resistance is reduced if the parameter (step) is not over
. JPEG compression, low pass filtering and noise addition are not tolerated by this
technique.
In Coltuc and Chassery [25], a technique based on Reversible Contrast Mapping (RCM) which is a simple integer
transform applied to couples of pixels is presented. RCM is invertible even if the
LSBs of the transformed pixels are lost. Being the image gray-level
, the forward RCM transform for the pair
is given in
(47)where
and
are limited to
to avoid overflow and underflow and consequently
must belong to
. The inverse RCM transform is defined as in(48)
(48)It can be proved that (48) exactly inverts (47) also if the LSBs of the transformed
pixels are lost; furthermore, if
and
are not changed that holds also without using the ceil functions. Due to this property, LSBs are used for carrying the watermark. For sake
of correctness, it can be said that ceiling operation is robust to the loss induced
by watermarking only if both
and
are not both odd numbers and this happens only if
and
are odd numbers too. So odd couples would not be allowed for marking. To overtake
that, only a selected set of odd couples
(such that the respective transformed values are not equal to
or
) is taken; so the domain
is restricted to
. After the image is partitioned into pairs, embedding proceeds as follows.
(1)If
and it is not composed by odd pixel values, (47) is applied and the LSB of
is set to 1 (to indicate a transformed pair) and the LSB of
is available for watermark bit insertion.
(2)If
and it is composed by odd pixel values, (47) is not applied and the LSB of
is set to 0 (to indicate an odd pair) and the LSB of
is available for watermark bit insertion.
(3)If
, (47) is not applied and the LSB of
is set to 0 and the true LSB of
is saved in the payload.
The watermark is composed by the payload and the bits saved in the step 3. During
detection, the image is partitioned again into pairs
and,
(1)if the LSB of
is 1 then the LSB of
is a watermark bit; after setting the LSBs of
and
to 0 the original pair
is recovered by inverse RCM transform,
(2)if the LSB of
is 0 and the pair
with the LSBs set to 1 (odd) belongs to
, then the LSB of
is a watermark bit; after setting the LSBs of
and
to 1 the original pair
is simply recovered, and
(3)if the LSB of
is 0 and the pair
with the LSBs set to 1 does not belong to
, there is not a watermark bit; after replacing the LSB of
with the true LSB taken from the watermark sequence, the original pair
is reconstructed.
It is important to highlight that the embedding of the true LSB of a nontransformed
pair will happen in a spatially close couple thus granting a slight robustness in
case of cropping, though experimental results on that are not reported within the
paper. Being
the global number of couples and
the number of pairs carrying information,
will be the additional payload to attach to the watermark, so the bit-rate
provided by the algorithm will be
(49)Further iterations can be applied to augment capacity to the extent of increasing perceptual distortion. The proposed scheme was tested on several graylevel and color images, Lena, Baboon, and Boat. Applying the proposed scheme on Lena without control distortion, a bit-rate of 0.49 bpp is obtained. The bit-rate is very close to the theoretical upper bound of 0.5 bpp. Further iterations of the scheme increase the hiding bit-rate till 0.98, 1.40, 1.73, and 1.86 bpp. For low and medium bit-rates, a slight increase of contrast can be seen. Increasing the hiding capacity, the noise increases as well. Boat is slightly lower, the maximum hiding capacity is of 1.53 bpp. Baboon provides only 0.84 bpp of embedding rate. With a bitrate of 0.2 bpp, a PSNR of 45 db is achieved for Lena. PSNR of 40 db and 32 db are achieved with Boat and Baboon respectively with a bitrate of 1 bpp. The technique outperforms other compression-based methods but it is slightly worst than Tian's difference expansion approach though it appears less complex.
In Coatrieux et al. [26], robustness is achieved by mixing two different approaches: one based on a reversible technique and one based on a robust watermarking method, such an approach is summarized with regard to the embedding phase in Figure 12. This technique is basically devoted to deal with MR (Magnetic Resonance) images in which is quite simple to separate ROI (Region Of Interest) like the head or any anatomical object, by the RONI (Region Of Non Interest) which is the black background area behind the object. The capacity to make such a distinction is fundamental to allow the system to work, and it is very important to grant that the watermarking process does not affect this segmentation in the detection phase. According to what is pictured in Figure 12, there are two protection levels. The first one provides robustness to the watermark extraction, for instance against JPEG compression, by watermarking with a lossy robust method the RONI; the inserted code is composed by an authenticity code and a digital signature derived from the ROI.
Figure 12. Embedding phase.
The second protection level adopts a reversible technique to cast, this time in the
ROI, another code depending upon the whole image (marked RONI plus ROI). The global
robustness is limited by the fact that a possible attack determines a wrong reconstruction
of ROI which consequently influences watermark extraction at the first protection
level; in the paper, it is asserted that a JPEG compression not lower than a quality
factor of
does not generate any bit error.
3.2.2. Transformed Domain
In the work presented in [27], a quantization-based approach, named Weighted Quantization Method, (WQM) is introduced.
Being
the input signal and
its quantization levels, message bit embedding is achieved by resorting to a couple
of functions
. The function
, according to the message bits
performs as it follows.
(i)
= The biggest quantization level greater than 
(ii)
= The least quantization level smaller than
,
while function
works as
(50)The parameter
has to be major or equal to
to grant that the values obtained when embedding a bit
fall in a range disjoint with respect to that for embedding a bit
. In addition to that, the higher the value of
the stronger the image distortion; usually
is set to
. According to the definition of functions
and
, it yields that
where
is the watermarked signal; so for extracting the message bit the quantization level
closer to
is chosen. By using
the watermarking process can be inverted and the original value
can be recovered. The approach can be adopted both in spatial and transformed domain,
though the authors applied it after a Point to Point Graph (PGP) transformation and
experimental results are achieved on such a basis. Robustness of such a method is
very limited; only BER against AWGN addition is presented within the paper. High perceptual
quality (PSNR around
dB) is achievable with test images such as Lena and Baboon.
In Gao and Gu [28], a procedure based on Alattar's difference expansion computed in the wavelet domain
is presented. 1-level IWT (Integer Wavelet Transform) is applied to
blocks of the image and
sub-band is considered; in particular, the four coefficients belonging to the diagonal
are grouped into two couples and used for watermarking according to their expansibility.
Expansibility is checked to avoid overflow and underflow, and it is recorded and passed
as side information to the detector side. Image blocks are shuffled according to a
secret key before being wavelet transform, in order to achieve security and robustness
against some malicious attacks. The proposed scheme is tested on Lena, Boat, and Baboon (
). The achieved PSNRs are 35.8 db for Lena, 40.2 db for Boat and 42 db for Baboon. Image reversibility is granted when no attacks have happened and watermark robustness
is partially provided against cropping, salt and pepper noise, and other image damaging
localized in restricted zones.
4. Conclusions
Reversible digital watermarking techniques have been individuated so far to be adopted in application scenarios where data authentication and original content recovery were required at the same time. Such techniques have been introduced and a general classification has been provided; some of the main algorithms known in literature have been presented and discussed, trying to give to the interested readers an easy-to-use overview of the matter.
Acknowledgment
The work described in this paper has been supported under a Grant provided by ASF (Azienda Sanitaria Fiorentina) which is the Public Entity for Health in the Florence Area.
References
-
J Fridrich, M Goljan, R Du, Lossless data embedding-new paradigm in digital watermarking. EURASIP Journal on Applied Signal Processing 2(2), 185–196 (2002)
-
MU Celik, G Sharma, AM Tekalp, E Saber, Reversible data hiding. Proceedings of the International Conference on Image Processing (ICIP '02), September 2002 2, 157–160
-
DM Thodi, JJ Rodríguez, Prediction-error based reversible watermarking. Proceedings of International Conference on Image Processing (ICIP '04), October 2004 3, 1549–1552
-
J Tian, Reversible data embedding using a difference expansion. IEEE Transactions on Circuits and Systems for Video Technology 13(8), 890–896 (2003). Publisher Full Text
-
J Tian, Reversible watermarking by difference expansion. Proceedings of Multimedia and Security Workshop at ACM Multimedia (ACMMM '02), 19–22 (2002)
-
AM Alattar, Reversible watermark using difference expansion of triplets. Proceedings of International Conference on Image Processing (ICIP '03), September 2003 1, 501–504
-
AM Alattar, Reversible watermark using difference expansion of quads. Proceedings of IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP '04), May 2004, 377–380
-
AM Alattar, Reversible watermark using the difference expansion of a generalized integer transform. IEEE Transactions on Image Processing 13(8), 1147–1156 (2004). PubMed Abstract | Publisher Full Text
-
S Weng, Y Zhao, J-S Pan, R Ni, A novel high-capacity reversible water-marking scheme. Proceedings of IEEE International Conference on Multimedia and Expo (ICME '07), July 2007, 631–634
-
D Coltuc, Improved capacity reversible watermarking. Proceedings of the 14th IEEE International Conference on Image Processing (ICIP '07), September-October 2007 3, 249–252
-
D Coltuc, Improved capacity reversible watermarking. Proceedings of the 14th IEEE International Conference on Image Processing (ICIP '07), September-October 2007 3, 249–252
-
Z Chang, J Xu, W Kou, Reversible watermarking schemes using spatial quad-based difference expansion. Proceedings of International Conference on Convergence and Hybrid Information Technology (ICHIT '08), August 2008, 522–525
-
S Weng, Y Zhao, J-S Pan, R Ni, A novel reversible watermarking based on an integer transform. Proceedings of International Conference on Image Processing (ICIP '07), September 2007, San Antonio, Tex, USA 3, 241–244
-
Z Ni, Y-Q Shi, N Ansari, W Su, Reversible data hiding. IEEE Transactions on Circuits and Systems for Video Technology 16(3), 354–361 (2006)
-
C-C Chen, D-S Kao, DCT-based reversible image watermarking approach. Proceedings of the 3rd International Conference on Intelligent Information Hiding and Multimedia Signal Processing (IIHMSP '07), November 2007 2, 489–492
-
B Yang, M Schmucker, X Niu, C Busch, S Sun, Reversible image watermarking by histogram modification for integer DCT coefficients. Proceedings of the 6th Workshop on Multimedia Signal Processing (MMSP '04), October 2004, 143–146
-
S Weng, Y Zhao, J-S Pan, R Ni, Reversible data hiding using the companding technique and improved DE method. Circuits, Systems, and Signal Processing 27(2), 229–245 (2008). Publisher Full Text
-
G Xuan, C Yang, Y Zhen, YQ Shi, Z Ni, Reversible data hiding using integer wavelet transform and companding technique. Proceedings of the 3rd International Workshop on Digital Watermarking (IWDW '04), October-November 2004, Seoul, South Korea 3304, 115–124
-
S Lee, CD Yoo, T Kalker, Reversible image watermarking based on integer-to-integer wavelet transform. IEEE Transactions on Information Forensics and Security 2(3), 321–330 (2007)
-
C de Vleeschouwer, JF Delaigle, B Macq, Circular interpretation of bijective transformations in lossless watermarking for media asset management. IEEE Transactions on Circuits and Systems for Video Technology 16(11), 1423–1429 (2006)
-
Z Ni, YQ Shi, N Ansari, W Su, Q Sun, X Lin, Robust lossless image data hiding designed for semi-fragile image authentication. IEEE Transactions on Circuits and Systems for Video Technology 18(4), 497–509 (2008)
-
D Zou, YQ Shi, Z Ni, W Su, A semi-fragile lossless digital watermarking scheme based on integer wavelet transform. IEEE Transactions on Circuits and Systems for Video Technology 16(10), 1294–1300 (2006)
-
X Wu, Reversible semi-fragile watermarking based on histogram shifting of integer wavelet coefficients. Proceedings of Inaugural IEEE-IES Digital EcoSystems and Technologies Conference (DEST '07), February 2007, 501–505
-
E Chrysochos, V Fotopoulos, AN Skodras, M Xenos, Reversible image watermarking based on histogram modification. Proceedings of the 11th Panhellenic Conference on Informatics with International Partecipation (PCI '07), May 2007, 93–104
-
D Coltuc, J-M Chassery, Very fast watermarking by reversible contrast mapping. IEEE Signal Processing Letters 14(4), 255–258 (2007)
-
G Coatrieux, J Montagner, H Huang, Ch Roux, Mixed reversible and RONI watermarking for medical image reliability protection. Proceedings of the 29th Annual International Conference of the IEEE Engineering in Medicine and Biology (EMBC '07), August 2007, Lyon, France, 5653–5656
-
MJ Saberian, MA Akhaee, F Marvasti, An invertible quantization based watermarking approach. Proceedings of IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP '08), April 2008, 1677–1680
-
T-G Gao, Q-L Gu, Reversible watermarking algorithm based on wavelet lifting scheme. Proceedings of International Conference on Wavelet Analysis and Pattern Recognition (ICWAPR '07), November 2007 4, 1771–1775




Figure 2.
Figure 3.