# A Robust Fractal Color Image Watermarking Algorithm

Authors: Jian Lu; Yuru Zou; Chaoying Yang; Lijing Wang
Journal: Mathematical Problems in Engineering
 (2014)

---

## Abstract

One of the main objectives of watermarking is to achieve a better tradeoff between robustness and high visual quality of a host image. In recent years, there has been a significant development in gray-level image watermarking using fractal-based method. This paper presents a human visual system (HVS) based fractal watermarking method for color images. In the proposed method, a color pixel is considered as a 3-D vector inRGB space. And a general form of 3 × 3 matrix is utilized as the scaling operator. Meanwhile, the luminance offset vector is substituted by the range block mean vector. Then an orthogonalization fractal color coding method is achieved to obtain very high image quality. We also show that the orthogonalization fractal color decoding is a mean vector-invariant iteration. So, the range block mean vector is a good place for hiding watermark. Furthermore, for consistency with the characteristics of the HVS, we carry out the embedding process in the CIE L
a
*
b
* space and incorporate a just noticeable difference (JND) profile to ensure the watermark invisibility. Experimental results show that the proposed method has good robustness against various typical attacks, at the same time, with an imperceptible change in image quality.


---

## Body

## 1. Introduction

With the rapid development of internet, digital multimedia data such as image, audio, and video are readily reproduced and distributed with ease. Many watermarking methods have been exploited for copyright protection due to the properties of digital media and the popularity of the internet. Typically, a watermark can be a random signal, a meaningful message, or a logo. It is viewed as an effective way to prevent user’s content from illegal distribution [1]. Figure 1 shows a general scheme for digital watermarking. Firstly, an encrypted watermark is inserted into an original image by using an embedding algorithm. Then, the watermarked image will pass through the transmission channel, which may include some attacks, such as lossy compression, low-pass filtering, noising, and geometric distortions. When the watermark is to be extracted, the corresponding extraction algorithm will be implemented, usually with aid of a secret key and the original image. Only the owner of the image knows the key and no other person can identify the watermark without the knowledge of the key. A good watermarking scheme should possess many important properties, for example, invisibility, robustness to various types of attacks, and accurate detection.Figure 1
Generic watermark insertion and extraction procedure.In general, digital image watermarking algorithms addressing a wide variety of applications can be classified into two categories depending on the domain in which the watermark is embedded. The first group is mainly implemented in spatial domain [3, 4] while the second group of algorithms is achieved in transform domain, such as discrete cosine transform (DCT) [5, 6], discrete Fourier transform (DFT) [7] and discrete wavelet transform (DWT) [8, 9]. The watermark in spatial domain methods is inserted into the image by directly modifying a preselected set of pixels in the image. On the other hand, in transform domain watermarking methods, the watermark is embedded into the image by modifying the transformed frequency coefficients. The advantage of watermarking in the frequency domain is that the characteristics of the human visual system (HVS) are better captured by the spectral coefficients, since the HVS is more sensitive to low-frequency coefficients and less sensitive to high-frequency coefficients [10, 11]. When focusing on color image watermarking, many methods are realized by embedding watermarks in the image luminance or by processing each color channel separately. By observing the fact that human eyes are insensitive to changes in the blue component, Kutter et al. [12] proposed a method for embedding a watermark in the blue component. Barni et al. [13] introduced a color image watermarking scheme based on the cross-correlation of RGB channels. In Barni’s scheme, a watermark is embedded within the host image by modifying a subset of full frame DCT coefficients of each color channel. And the existence of the watermark is verified by calculating the correlation of RGB channels. Tsai et al. [14] provided a scheme of embedding a watermark on a quantized color image. Tsui et al. [15] introduced a solution of embedding a watermark in the frequency domain of the chromatic channels by using the spatiochromatic discrete fourier transform (SCDFT). In Tsui’s method, the chromatic content of a color image is encoded into CIE a
*
b
* chromaticity coordinates while the achromatic content is encoded as CIE L tristimulus value. Kuo and Cheng [16] presented a color watermarking method that combines color edge detection and color quantization using principal axes analysis in 3-D color space. Chou and Liu [17] introduced a color image watermarking scheme that hides watermark signals in most distortion-tolerable signals within three color channels of the host image without resulting in perceivable distortion in wavelet domain. Also, Vahedi et al. [18] proposed a watermarking scheme of color images based on wavelet transformation. In Vahedi’s method, the strength of the embedded watermark is controlled locally with the aid of the visual characteristics of the host image and so forth.The idea of fractal image coding (FIC) was originally introduced by Barnsley and Demko [19]. And in 1992, Jacquin [20] achieved the first practical fractal image coding method. In the past decades, fractal image coding has mainly been developed for the purpose of image compression [21–33] as well as some for image denoising [34–37] and image indexing [38]. Recently, it is also well studied for gray-level image watermarking [39–43]. Davern and Scott [39] described a steganographic method for inserting secret information into images using fractal image coding. The method allowed a user to specify a visual key when hiding the secret information. The visual key must then be used when retrieving the hidden data. Čandik et al. [40] investigated two possible approaches of embedding digital watermarks into fractal codes of images, which are embedding digital watermarks into parameters for position of similar blocks and coefficients of block similarity. Kiani and Moghaddam [41] presented a watermarking method to embed a binary watermark into an image using a special type of fractal coding that its parameters are contrast scaling and the mean of range block. And it utilized the fuzzy C-mean clustering to address the watermark bits. Pi et al. [42] studied a novel watermarking method utilizing a special type of orthogonalization fractal coding. In the method, a permutated pseudorandom binary sequence used as watermark was embedded into the range block means. And the detecting procedure was carried out by computing the correlation coefficient between the original and the extracted watermark. Shahraeini and Yaghoobi [43] proposed a blind watermarking algorithm based on fractal model in discrete wavelet domain and so forth.However, few known papers considered fractal coding for watermarking of color images. In this paper, motivated by [42], we advance a HVS-based fractal color image watermarking algorithm. Meanwhile, an analogous RGB version of orthogonalization fractal coding is introduced. Just like other watermarking methods, good robustness and high image quality are our goals. In our proposed method, based on the observation that the r, g, and b components for a natural image are correlated, we consider a pixel as a 3-D vector in RGB space. Then, instead of using three independent linear predictions for the pixel intensity of the three planes (namely, r, g, and b planes) in the classic fractal color coding [2], we adopt a general form by using a 3 × 3 matrix as the scaling factor. In addition, the range block mean vector substitutes the luminance offset vector. In terms of the quality of the fractal representation measured by PSNR, the proposed fractal coding significantly performs better than the traditional fractal color image coding. We also show that orthogonalization fractal color decoding is a mean-invariant iteration. So, we use the range block mean vectors to hide the watermark. On the other hand, in order to accord with the characteristics of the HVS, we convert the range mean vectors from RGB space to CIE L
a
*
b
* space before the inserting process (with the aid of the JND model [44]) is carried out. The experimental results show that the proposed method is very robust against different attack, as well as with retaining very high image quality.


## 2. Foundations of Fractal Image Coding

The theory of fractal-based image coding using iterated function system (IFS) and collage theorem was proposed by Barnsley and Demko [19]. Let (
X
,
d
) be a complete metric space. An iterated function system (IFS) is a finite set of contraction mappings w
i
:
X
→
X, where i
=
1,2
,
…
,
N with contraction factor s
i on (
X
,
d
). In general, the system is denoted by {
X
;
w
1
,
w
2
,
…
,
w
N
} and the contraction factor is s
=
max
⁡
{
s
1
,
s
2
,
…
,
s
N
}. Furthermore, we define W
:
ℋ
(
X
)
→
ℋ
(
X
) as W
(
B
)
=
⋃
i
=
1
N
‍
w
i
(
B
), ∀
B
∈
ℋ
(
X
). Then, the transformation W is a contraction mapping on the complete metric space (
ℋ
(
X
)
,
h
), where h is the Hausdorff metric. So, according to the contractive mapping fixed-point theorem, there exists a unique fixed point A
∈
ℋ
(
X
) satisfying
(1)
A
~
=
W
(
A
~
)
=
⋃
i
=
1
N
‍
w
i
(
A
~
)
which is known as an attractor of the IFS. The fixed point can be obtained by following iteration
(2)
A
~
=
l
i
m
n
→
∞
W
(
n
)
(
B
)
,
∀
B
∈
ℋ
(
X
)
,
where W
(
n
)
(
B
)
=
W
(
W
(
n
-
1
)
(
B
)
) and W
(
0
)
(
B
)
=
B. Let ϵ
≥
0 be a small given real number. With the above hypothesis, collage theorem says that, suppose L
∈
ℋ
(
X
) satisfying h
(
L
,
⋃
i
=
1
N
‍
w
i
(
L
)
)
≤
ϵ; then,
(3)
h
(
L
,
A
~
)
≤
ϵ
1
-
s
.
The collage theorem implies that if a set can approximate to contracted copies of itself as well as possible by a set of contractive mappings, then the corresponding attractor is close enough to the set. Thus, the IFS code for the set can be stored since the approximator can be obtained by iterating the IFS on any initial set.However, in practice it is unlikely to find “collages” for most natural images by reasonably simple transforms. The well-known practical method for fractal image coding, namely partitioned iterated function system (PIFS), was proposed by Jacquin [20]. Let I be a given gray-level image, and hence I is a subset in three-dimensional Euclidian space that is, I
∈
ℝ
3. The image I is first segmented into n nonoverlapping range blocks of size, say b
×
b, and denoted by ℛ
=
{
R
i
}
i
=
1
n. Note that I
=
⋃
i
=
1
n
‍
R
i and R
i
∩
R
j
=
Ø for any i
≠
j. Let 𝒟
=
{
D
j
}
j
=
1
m be the pool of all domain blocks which are of size 2
b
×
2
b and all are extracted from I that is, D
j
⊂
I for j
=
1
,
…
,
m. Let Φ
j
=
{
ϕ
:
ϕ
(
D
j
)
→
ℝ
3
}, where ϕ is usually an affine contractive transformation. For each range block R
i, let d be distance measure. Our goal is to find a domain block D
k as well as an appropriate transformation ϕ
i
|
k such that
(4)
d
(
R
i
,
ϕ
i
∣
k
(
D
k
)
)
=
min
⁡
j
{
d
(
R
i
,
ϕ
i
∣
j
(
D
j
)
)
}
,
where ϕ
i
∣
j
∈
Φ
j and ϕ
i
∣
j satisfies
(5)
d
(
R
i
,
ϕ
i
∣
j
(
D
j
)
)
≤
d
(
R
i
,
ϕ
(
D
j
)
)
,
∀
ϕ
∈
Φ
j
.
When all the range blocks are processed, the set of maps Φ
=
{
ϕ
i
∣
·
}
i
=
1
n thus is obtained and called the PIFS code of the image I.In classic fractal coding, the distanced always uses l
2-norm, ∥
·
∥
2, as the so-called collage distance measure. The affine contractive map ϕ consists of three parts defined as
(6)
ϕ
=
φ
∘
τ
∘
ω
.
Here, ω is a uniform scaling from domain block to range block dimension; τ is one of the eight isometries that map a block into itself (identity, 90°, 180°, and 270° rotations around the center and the four reflections over the symmetry axes); and φ is a linear transform in the gray level, defined as
(7)
φ
(
x
)
=
α
x
+
β
,
where α and β are known as the contrast and luminance offset parameters, respectively, and α is usually restricted to satisfy |
α
|
<
1 for contractivity. (Some authors, e.g., [21], have restricted |
α
|
<
2 with no noticeable effects on the contractivity.)


## 3. Fractal Color Image Coding

The traditional fractal color image coding method inRGB space discussed in [2] for the purpose of compression was performed by using three gray-level linear predictions to encode the r, g, and b image components independently. It was defined as
(8)
φ
(
x
)
=
diag
⁡
(
[
α
1
α
2
α
3
]
)
x
+
b
,
where x
=
[
x
1
x
2
x
3
]
T represents (
r
,
g
,
b
) values of a pixel and b
=
[
b
1
b
2
b
3
]
T denotes the corresponding offset values. However, for most natural images, the components r, g and b are always strongly correlate. For instance, when testing Lena image, the correlations between r and g, r and b, g and b are 0.8786, 0.6764 and 0.9106, respectively. The correlation of r, g and b is 0.9881, which is estimated by [45]
(9)
ρ
=
1
-
|
Σ
|
∏
i
|
Σ
i
i
|
,
where Σ is the covariance matrix of vectors r, g and b. Likewise for Barbara image, the correlations between r and g, r and b, g and b are 0.8860, 0.8061 and 0.9582, respectively; the correlation of r, g and b is 0.9921. Based on this observation, in this work, with above notations, we consider the r, g, b components as a whole and adopt a more general functional form:
(10)
φ
(
x
)
=
A
x
+
b
,
where the linear operator A is defined by a 3 × 3 matrix:
(11)
A
=
[
a
11
a
12
a
13
a
21
a
22
a
23
a
31
a
32
a
33
]
.
In general, the distance between the pixels x and y is defined by using l
2-norm (Euclidean distance), that is,
(12)
d
2
(
x
,
y
)
=
∥
x
-
y
∥
2
=
∑
i
=
1
3
‍
(
x
i
-
y
i
)
2
.
Let x
k
≐
[
x
1
k
x
2
k
x
3
k
]
T and y
k
≐
[
y
1
k
y
2
k
y
3
k
]
T, k
=
1
,
…
,
K, where K
=
#
R
i denoting the pixel number of R
i, be the (r, g, and b) values on R
i and transformed D
j, respectively. Then the distance of {
x
k
} and {
y
k
} can be determined by
(13)
Δ
i
,
j
2
=
∑
k
=
1
K
‍
d
2
2
(
A
x
k
+
b
,
y
k
)
Δ
i
,
j
2
=
∑
k
=
1
K
‍
∥
A
x
k
+
b
-
y
k
∥
2
2
Δ
i
,
j
2
=
∑
k
=
1
K
‍
∑
u
=
1
3
‍
(
∑
v
=
1
3
‍
a
u
,
v
x
v
,
k
+
b
u
-
y
u
,
k
)
2
.The purpose of using squaredl
2  norm in function (13) is to facilitate the estimation of the matrix A. According to the matrix theory, formula (13) can be represented using the well known (squared) Frobenius norm; that is,
(14)
Δ
i
,
j
2
=
∥
A
X
+
b
I
-
Y
∥
F
2
,
where b
I
≐
[
b
1
I
b
2
I
b
3
I
]
T and I
=
[
1
1
⋯
1
]
T being a K
×
1 vector. X
≐
[
X
1
X
2
X
3
]
T, X
v
=
[
x
v
1
x
v
2
⋯
x
v
K
]
T, and v
=
1,2
,
3 denote the respective r, g, b values of the pixels in the domain block D
j. Likewise, Y
≐
[
Y
1
Y
2
Y
3
]
T, Y
v
=
[
y
v
1
y
v
2
⋯
y
v
K
]
T, and v
=
1,2
,
3 denote the respective r, g, and b values of the pixels of R
i.In order to minimize the residualΔ
i
,
j
2, we rewrite (13) as
(15)
Δ
i
,
j
2
=
∑
u
=
1
3
‍
∥
∑
v
=
1
3
‍
a
u
,
v
X
v
T
+
b
u
I
-
Y
u
T
∥
2
2
and differentiate it with respect to b
u, a
u
,
v and set them to zero; that is, ∂
Δ
i
,
j
2
/
∂
b
u
=
0 and ∂
Δ
i
,
j
2
/
∂
a
u
,
v
=
0 yielding
(16)
b
u
=
1
K
∑
k
=
1
K
‍
y
u
,
k
-
a
u
,
1
1
K
∑
k
=
1
K
‍
x
1
,
k
b
u
=
-
a
u
,
2
1
K
∑
k
=
1
K
‍
x
2
,
k
-
a
u
,
3
1
K
∑
k
=
1
K
‍
x
3
,
k
b
u
≐
Y
¯
u
-
a
u
,
1
X
¯
1
-
a
u
,
2
X
¯
2
-
a
u
,
3
X
¯
3
u
=
1,2
,
3
,
(17)
a
u
,
1
∑
k
=
1
K
‍
x
1
,
k
x
v
,
k
+
a
u
,
2
∑
k
=
1
K
‍
x
2
,
k
x
v
,
k
+
a
u
,
3
∑
k
=
1
K
‍
x
3
,
k
x
v
,
k
+
b
u
∑
k
=
1
K
‍
x
v
,
k
=
∑
k
=
1
K
‍
y
u
,
k
x
v
,
k
,
that is,
(18)
a
u
,
1
X
1
T
X
v
+
a
u
,
2
X
2
T
X
v
+
a
u
,
3
X
3
T
X
v
+
b
u
K
X
¯
v
=
Y
u
T
X
v
,
000000000000000000000000
00
0000000
u
,
v
=
1,2
,
3
,
where Y
¯
u
=
(
1
/
K
)
∑
k
=
1
K
y
u
,
k and X
¯
v
=
(
1
/
K
)
∑
k
=
1
K
X
u
,
k, v
=
1,2
,
3. Inserting (16) into (18), we have
(19)
[
a
u
,
1
a
u
,
2
a
u
,
3
]
·
[
X
1
T
X
v
-
K
X
¯
1
X
¯
v
X
2
T
X
v
-
K
X
¯
2
X
¯
v
X
3
T
X
v
-
K
X
¯
3
X
¯
v
]
=
Y
u
T
X
v
-
K
Y
¯
u
X
¯
v
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
h
u
,
v
=
1,2
,
3
.For a test image, let ther, g, b values X
u
=
{
x
u
,
k
}
k
=
1
K and Y
u
=
{
y
u
,
k
}
k
=
1
K, u
=
1,2
,
3 be random samples of the random variables X
u and Y
u representing the pixel value distribution of the parent subblock and the child subblock, respectively. Then, the formula (19) can be comprehensively written as follows:
(20)
A
C
=
M
,
where C is a covariance matrix
(21)
C
=
[
D
(
X
1
)
Cov
(
X
1
,
X
2
)
Cov
(
X
1
,
X
3
)
Cov
(
X
1
,
X
2
)
D
(
X
2
)
Cov
(
X
2
,
X
3
)
Cov
(
X
1
,
X
3
)
Cov
(
X
2
,
X
3
)
D
(
X
3
)
]
,
M
=
[
Cov
(
Y
1
,
X
1
)
Cov
(
Y
1
,
X
2
)
Cov
(
Y
1
,
X
3
)
Cov
(
Y
2
,
X
1
)
Cov
(
Y
2
,
X
2
)
Cov
(
Y
2
,
X
3
)
Cov
(
Y
3
,
X
1
)
Cov
(
Y
3
,
X
2
)
Cov
(
Y
3
,
X
3
)
]
.
As a result, if C is an invertible matrix, which can be easily satisfied by randomly adding extremely small positive real numbers to each element of C, then
(22)
A
=
M
·
C
-
1
.Moreover, summarizing (16) gives
(23)
b
=
Y
¯
-
A
X
¯
,
where Y
¯
=
[
Y
1
¯
Y
2
¯
Y
3
¯
]
T and X
¯
=
[
X
1
¯
X
2
¯
X
3
¯
]
T.According to theBanach’s fixed point theorem, in order to guarantee the contractivity of the fractal transformation with respect to l
2  norm, A should satisfy the restriction ∥
A
∥
2
<
1, which implies that the maximum eigenvalue λ of A
T
A must be smaller than one. There is no simple relationship between the coefficients of A and λ. However, in the l
∞ norm, contractivity is guaranteed if all A satisfy the condition ∑
v
=
1
3
‍
|
a
u
,
v
|
<
1 for each u
∈
{
1,2
,
3
}. The resulting fractal transforms satisfying this condition are always contractive in l
∞, hence in l
2, due to the equivalence of the norms in finite pixel space. For this reason, we will “clamp” the coefficients of A by checking each row of A if it satisfies ∑
v
=
1
3
‍
|
a
u
,
v
|
<
1. If ∑
v
=
1
3
‍
|
a
u
,
v
|
≥
1 for some u
∈
{
1,2
,
3
}, we re-encoded the u-component Y
u of the child subblock R
i by “discarding” one or two unimportant coefficient(s) in {
a
u
,
v
}
v
=
1
3. Firstly, the correlation coefficients between Y
u and X
1, X
2, X
3 of the corresponding parent subblock D
j are calculated and denoted by ρ
1, ρ
2, ρ
3, respectively. Secondly, the magnitudes of the three correlations are sorted in ascending order, for example, |
ρ
v
1
|
≥
|
ρ
v
2
|
≥
|
ρ
v
3
|, which means that X
v
1 has maximum correlativity. Finally, we “clamp” the coefficients a
u
,
v
,
v
=
1,2
,
3 by following way:(i)
Ifρ
v
2 has the same sign as ρ
v
1, then set a
u
,
v
3
=
0 and
(24)
[
a
u
,
v
1
a
u
,
v
2
]
T
=
[
Cov
(
Y
u
,
X
v
1
)
Cov
(
Y
u
,
X
v
2
)
]
T
[
D
(
X
v
1
)
Cov
(
X
v
1
,
X
v
2
)
Cov
(
X
v
1
,
X
v
2
)
D
(
X
v
2
)
]
-
1
.
If|
a
v
1
|
+
|
a
v
2
|
≥
1, goto (iv).
(ii)
Ifρ
v
2 and ρ
v
1 have different sign whereas ρ
v
3 and ρ
v
1 take the same sign, then set a
u
,
v
2
=
0 and a
v
1, a
v
3 are computed with the similar equation as (24) by replacing X
v
2 with X
v
3. If |
a
v
1
|
+
|
a
v
3
|
≥
1, goto (iv).
(iii)
If bothρ
v
2 and ρ
v
3 have different sign with ρ
v
1, then goto (iv).
(iv)
Seta
u
,
v
2
=
a
u
,
v
3
=
0 and a
u
,
v
1
=
Cov
(
Y
u
,
X
v
1
)
/
D
(
X
v
1
). If |
a
u
,
v
1
|
>
1, then a
u
,
v
1 is “clamped” to a
u
,
v
1
=
sign
⁡
(
a
u
,
v
1
)
*
0.99.When the “clamped”A is determined, b can be calculated naturally by (23). Accordingly, the (nonorthogonalization) fractal decoding algorithm with A and b is given by
(25)
R
(
n
)
=
A
ω
(
D
(
n
-
1
)
)
+
b
I
.IfA and R
¯ are taken as fractal parameters, the orthogonalization decoding algorithm is
(26)
R
(
n
)
=
A
ω
(
D
(
n
-
1
)
)
+
b
I
R
(
n
)
=
R
¯
I
+
A
ω
(
D
(
n
-
1
)
-
D
(
n
-
1
)
¯
I
)
,
where R
¯ denotes the mean of r
,
g, and b components of the range block R; that is, R
¯
≐
[
R
¯
1
R
¯
2
R
¯
3
]
T; D
(
n
-
1
) is the matched domain block from the (
n
-
1
)th iteration and D
(
n
-
1
)
¯
≐
[
D
1
(
n
-
1
)
¯
D
2
(
n
-
1
)
-
D
3
(
n
-
1
)
¯
]
T. From (26), it can be readily verified that R
(
n
) is a mean vector-invariant iteration; that is,
(27)
R
(
n
)
¯
=
R
(
n
-
1
)
¯
=
⋯
=
R
¯
.In Figure2, we test the proposed method on the 512 × 512 color Lena (Figure 2(a)), Barbara (Figure 2(d)), and Peppers (Figure 2(g)) images using full search scheme. We set the size of range blocks to be 4 × 4 and the search step size to be 2. We can see that, in terms of PSNR qualitative measures, the image quality in Figures 2(b), 2(e), and 2(h) with PSNRs 34.71 dB, 30.37 dB, and 32.01 dB encoded by the method proposed here is significantly better than the quality of Figures 2(c), 2(f), and 2(i) encoded by the traditional fractal image coding in [2], around 2.0 dB.Comparisons of the two fractal color image coding methods: (a), (d) and (g) are original images; (b), (e) and (h) are the fractal representations of our proposed methods; (c), (f) and (i) are the fractal representations of the classic method [2].
(a)
Lena
(b)
PSNR 34.71 dB
(c)
PSNR 32.54 dB
(d)
Barbara
(e)
PSNR 30.37 dB
(f)
PSNR 28.57 dB
(g)
Peppers
(h)
PSNR 32.01 dB
(i)
PSNR 30.35 dB


## 4. Fractal Color Watermarking

In general, there are two types of techniques for embedding a predefined watermark into an image. One is pseudorandom sequence used for objective detection; the other is binary image or gray image used for subjective detection [1]. In this paper, in order to subjectively verify the ownership of an image with the aid of extracting a watermark, a binary logo image is used. And the watermark bit is either 1 or 0. One of the main challenges of the watermarking is to achieve a tradeoff between robustness and perceptivity. In general, increasing the strength of the embedded watermark can achieve robustness, but it would lead to an increase in the visible distortion as well, and vice versa. Since the orthogonalized fractal decoding is a mean-invariant iteration, the range block mean is a good robust place to hide a watermark, as discussed in [42]. After fractal decoding, the embedded watermark diffuses throughout the reconstructed image.In order to gain high robustness as well as low sensitivity in color image watermarking, the knowledge of human visual perception of color stimuli must be well utilized in designing embedding algorithms. It is well known that the human visual system (HVS) is not perfect sensor of perceiving color visual information. Although the HVS is particularly sensitive to changes in image hue, it is less sensitive to the yellow-blue component.CIE L
a
*
b
* is the most complete color model conventionally used to describe all of the colors that are visible to the human eye [10]. The parameter L represents the lightness of the color, whereas a
*, b
* are chromatic information. And a
* is always named magenta-green axis and b
* is named yellow-blue axis. Based on the observations, in the method here, we will convert the r, g, and b values of the range block means {
R
¯
u
}
u
=
1
n to L
a
*
b
* space before they are inserted watermark {
w
u
}
u
=
1
n. The transformation from R
G
B space to the CIE L
a
*
b
* space is through the X
Y
Z space. The RGB space is first converted to the X
Y
Z space through a linear transformation
(28)
[
X
Y
Z
]
=
[
0.490
0.310
0.200
0.177
0.813
0.011
0.000
0.010
0.990
]
[
R
G
B
]
and the X
Y
Z space is converted to the CIE-L
a
*
b
* space through a nonlinear transformation
(29)
L
=
166
f
(
Y
Y
0
)
-
16
,
a
*
=
500
[
f
(
X
X
0
)
-
f
(
Y
Y
0
)
]
,
b
*
=
200
[
f
(
Y
Y
0
)
-
f
(
Z
Z
0
)
]
,
where
(30)
f
(
t
)
=
{
t
1
/
3
,
if
t
>
0.008856
7.787
x
+
16
116
,
otherwise
and X
0, Y
0, Z
0 represent the reference white. Conversely, the reverse transformation is easily expressed by using the inverse of the function f above:
(31)
Y
=
Y
0
f
-
1
(
(
L
+
16
)
116
)
,
X
=
X
0
f
-
1
(
(
L
+
16
)
116
+
a
*
500
)
,
Z
=
Z
0
f
-
1
(
(
L
+
16
)
116
-
b
*
200
)
,
where
(32)
f
-
1
(
t
)
=
{
t
3
,
if
t
>
0.2069
0.1284
(
t
-
4
29
)
,
otherwise
.The color differenceΔ
E at each pixel is defined as
(33)
Δ
E
=
(
Δ
L
)
2
+
(
Δ
a
*
)
2
+
(
Δ
b
*
)
2
.
Under a specific viewing condition, there exits a certain amount of information that is not perceivable by the human eyes, or the so-called perceptual redundancy. Experiments have shown that Δ
E
<
1 is not detectable by the HVS, and Δ
E
<
3 is not apparent [46]. Δ
E
=
3 is called the uniform just-noticeable color difference (UJNCD). Since the sensitivity of the HVS to the yellow-blue component is approximately 1/5 compared to the luminance component [10], we can set Δ
L
=
Δ
a
*
=
1
/
5
Δ
b
*. So, if we set Δ
b
*
=
1.5, then Δ
L
=
Δ
a
*
=
0.3 and Δ
E
≈
1.56
≪
3. Assume a randomly scrambled watermark to be {
w
u
}
u
=
1
n the watermark insertion procedure is illustrated in Figure 3 and includes the following steps.(1)
Fractally encode the original image (using full search scheme) to produce the fractal codes{
R
¯
u
,
A
u
,
x
→
u
}
u
=
1
n in RGB space, where x
→
u
≐
(
x
u
,
y
u
) is the position of the optimal domain block.
(2)
Convert the range block means{
R
¯
u
}
u
=
1
n from RGB space to L
a
*
b
* space and denote them by {
R
¯
u
′
}
u
=
1
n.
(3)
Embed the permutated watermark{
w
u
}
u
=
1
n into {
R
¯
u
′
}
u
=
1
n.
(i)
If the message to be embedded isw
u
=
1, replace R
¯
u
′ with R
¯
u
*
≐
R
¯
u
′
+
ζ, where ζ
=
[
0.3,0.3,1.5
]
T.
(ii)
Otherwise, ifw
u
=
0, replace R
¯
u
′ with R
¯
u
*
≐
R
¯
u
′
-
ζ.
(4)
Convert{
R
¯
u
*
}
u
=
1
n back to RGB space and denote them by {
R
~
u
*
}
u
=
1
n.
(5)
Hide the watermark by performing fractal decoding using{
R
~
u
,
A
u
,
x
→
u
}
u
=
1
n.Figure 3
Watermark insertion procedure using our fractal color image coding.To extract the embedded watermark, the original image and watermarked (possibly attacked) image are needed.R
¯
u
′
+
ζ and R
¯
u
′
-
ζ are calculated from the original image in L
a
*
b
* space, followed by a distance comparison to the R
~
u
′ from the watermarked image. If the extracted R
~
u
′ is closer to R
¯
u
′
+
ζ, we regard “1” as embedded; otherwise, “0” was inserted. The flow diagram is illustrated in Figure 4. The watermark extraction is very quick since it does not need fractal encoding and decoding.Figure 4
Watermark extraction procedure.


## 5. Experimental Results

In order to verify that the proposed algorithm described before indeed increases the robustness of the watermarked images against attacks, a series of experiments has been conducted by using the attacks to the 512 × 512 color Lena, Peppers, and Barbara images, as shown in Figures2(a), 2(d), and 2(g). The size of the color range block is 4 × 4, so the original image can be partitioned into 128 × 128 (i.e., 16384) color range blocks. For convenience, the size of binary logo image to be embedded is 128 × 128, and the logo image as shown in Figure 5(a), a lovely panda, is encrypted by using the block shifting method [47]. That is, we first divide the logo image into 32 × 32 small blocks, each with 4 × 4 pixels. Successively, the positions of the small blocks are randomly shifted by a random matrix, such as
(34)
M
=
[
30
20
14
5
7
⋯
13
1
⋯
]
which is generated by randomly scrambling the integers 1,2
,
…
,
32. As an example used here, the resulting image is shown in Figure 5(b). If people want to recover the original information, the same random matrix should be used,; otherwise people could not obtain the correct information.(a) Binary watermark logo. (b) Randomly scrambled logo.
(a)
(b)The attacked image quality is measured bypeak signal-to-noise ratio (PSNR) defined as
(35)
PSNR
=
10
log
⁡
10
25
5
2
MSE
,
where
(36)
MSE
=
1
3
f
H
×
f
W
∑
i
=
1
f
H
‍
∑
j
=
1
f
W
‍
∥
f
(
i
,
j
)
-
f
~
(
i
,
j
)
∥
2
2
.
Here, f
H and f
W are the height and width of the image, respectively. f
(
i
,
j
) and f
~
(
i
,
j
) are the values located at coordinates (
i
,
j
) of the original image and the attacked image, respectively.When extracting the watermark, thenormalized correlation coefficient (NC) is calculated using the original watermark and the extracted watermark to judge the existence of the watermark and to measure the correctness of the extracted watermark. It is defined as
(37)
NC
=
1
w
h
×
w
w
∑
i
=
1
w
h
‍
∑
j
=
1
w
w
‍
w
(
i
,
j
)
w
~
(
i
,
j
)
,
where w
h and w
w are the height and width of the watermark, respectively. w
(
i
,
j
) and w
~
(
i
,
j
) are the watermark bits located at (
i
,
j
) of the original watermark and the extracted watermark. And w
(
i
,
j
) is set to 1 if it is watermark bit 1; otherwise, it is set to −1. Likewise for w
~
(
i
,
j
). The PSNRs of the three watermarked images are 33.30 dB, 29.05 dB, and 30.59 dB, respectively. For brevity, only the Lena image is shown. Figure 6(a) shows that in the unattacked watermarked image, no visual difference exists at all compared with Figure 2(b). The extracted logo image shown in Figure 6(b) with NC
=
1.0 implies that the extracted watermark is exactly the same as the original watermark.(a) Watermarked Lena image, PSNR = 33.30 dB. (b) Extracted watermark logo, NC = 1.0.
(a)
(b)Now, various classic image-processing operations, including JPEG compression, median filtering, mean filtering, sharping, blurring, noising, cropping, and scaling, are simulated to investigate the robustness of the proposed watermarking method. JPEG is one of the most frequently used image compression formats. The JPEG quality factor is a number between 0 and 100. When decreasing the quality factor, the image compression ratio increases, whereas the quality of the resulting image is significantly reduced. Table1 lists the results of applying various JPEG quality factors to the test images. The proposed method can detect the existence of a watermark even for quality factor equal to 15. And the values of NC still exceed 0.49 for the three images. For other nongeometric attacks, such as median filters, mean filters, sharpening, and blurring, the resulting images are blurred or sharpened at the edge and so forth. The extracted watermarks are illustrated in Table 2. Here, both the median and mean filters are applied with masks of size 3 × 3, 5 × 5 and 7 × 7, respectively. As we can see, the proposed method is very robust against these non-geometric attacks and most of the extracted logo images are only slightly contaminated.Table 1
Extracted watermarks (EW) and NCs after attacked by JPEG compression with the quality factors (QF) 15, 25, 35, 45, 55, 65, 75, and 85 on Lena, Barbara, and Peppers.
QF
15
25
35
45
55
65
75
85
Lena
EW
NC
0.6837
0.7656
0.8257
0.8969
0.9957
0.9995
1.0000
1.0000
Barbara
EW
NC
0.6320
0.6792
0.7510
0.8060
0.9529
0.9653
0.9882
0.9956
Peppers
EW
NC
0.4950
0.5752
0.6438
0.7336
0.9070
0.9241
0.9442
0.9529Table 2
Extracted watermarks (EW) and NCs after attacked by median filter (3
×
3, 5
×
5, 7
×
7), mean filter (3
×
3, 5
×
5, 7
×
7), sharpening, and blurring of the three images: Lena, Barbara, and Peppers.
Median filter
Mean filter
Sharpening
Blurring
3
×
3
5
×
5
7
×
7
3
×
3
5
×
5
7
×
7
Lena
EW
NC
0.9937
0.9421
0.8593
0.9764
0.8832
0.7648
0.9872
0.9847
Barbara
EW
NC
0.9966
0.9502
0.8641
0.9796
0.8837
0.7561
0.9957
0.9900
Peppers
EW
NC
0.9780
0.9288
0.8456
0.9437
0.8392
0.7111
0.9675
0.9629The results of noising and some common geometric attacks, for example, rotation, scaling and, cropping, are illustrated in Table3. The Gaussian noise variation is varied from 5 to 15 and the step size is 5. As shown, the proposed method can effectively resist the attacks and all of the extracted watermarks could be clearly recognized. The attack of scaling is performed by downsampling a watermarked color image by factor 2 in both row and column directions. Since the image is shrunk from size 512 × 512 to 256 × 256, all range blocks are then contracted from 4 × 4 to 2 × 2 and {
R
~
u
}
u
=
1
n should be calculated in a 2 × 2 block. For the clopping attack in our test, three types, namely, Type I, Type II, and Type III, are considered. In Type I, the left-top of an image of quarter size is cut away (i.e., 75% is remained), as shown in Figure 7(a); in Type II, the positions of the left-top and the right-bottom of the remained subimage are (31,471) and (81,461), respectively. In other words, the remaining region is about 64%, as shown in Figure 7(b); in Type III, two rectangular regions are removed and the remaining part is about 79%, as shown in Figure 7(c). In practical use, the position of the clipped block is usually needed to be located, especially for the case of Type II. Similar to the method in [42], it can be easily achieved by moving the clipped block point by point from the top-left of watermarked image and calculating the correlation coefficient. Clearly, the position of the clipped block should be located at the position where the correlation coefficient is maximum (theoretically, it equals 1 if without any other attacks). Then, in order to facilitate obtaining the subwatermark of the clipped block correctly, the vacant region is filled up with 0 (black). Hence, the size of the patched color image is still 512 × 512. Finally, the watermark extraction procedure is performed and the NC value of the watermark is calculated, as described in Section 4. The results are also listed in Table 3. It is worth noticing that the NC value is closely related with the size of clipped block: smaller size of the clipped block generally means smaller NC value. So, a more reasonable method for detecting the existence of a watermark in the clipped block is only computing the NC value of the sub-watermark of the clipped region (it is almost 1 in theory).Table 3
Extracted watermarks (EW) and NCs after attacked by Gaussian noise added fromσ
=
5 to 10, and to 15, scaling with factor 2, and various cropping to the original size of the three images.
Gaussian noise
Cropping (Figure7)
Scaling(factor 2)
σ
=
5
σ
=
10
σ
=
15
I
II
III
Lena
EW
NC
0.9803
0.8225
0.6276
0.6997
0.6075
0.7957
0.9633
Barbara
EW
NC
0.9148
0.7429
0.5657
0.7086
0.5800
0.7463
0.9767
Peppers
EW
NC
0.9010
0.7024
0.5280
0.6959
0.5665
0.7396
0.9480Attacked watermarked Lena image by various croppings.
(a)
Type I
(b)
Type II
(c)
Type IIIWe next compare the proposed method to three traditional methods: Tsui et al. [15], Kutter et al. [12] and Cox et al.’s [5] methods using the Lena image. The results are shown in Table 4. In the comparisons, all the methods still use the panda as the test binary logo image, but the size becomes 64 × 64, which can be obtained by downsampling the original 128 × 128 logo image. In our proposed method, the logo is needed to be expanded to 128 × 128 size by filling up with 0 on its three neighboring regions: left, bottom, and left-bottom, before it is embedded to the Lena image during the embedding procedure. Correspondingly, at the end of the extracting process, the logo is obtained by clipping the extracted logo image on the left-top with the size of 64 × 64. As shown in Table 4, the proposed method generally outperforms the other three methods for various attacks.Table 4
Comparing the proposed method with Tsui at al. [15], Kutter et al. [12] and Cox at al. [5] methods.
Attacks
Tsui et al. [15]
Kutter et al. [12]
Cox et al. [5]
Proposed
Attack free
1.0
0.9476
0.9957
1.0
Median filter (3
×
3)
0.9877
0.8750
0.9146
0.9936
JPEG
10
0.4237
N/A
0.6889
0.7001
50
0.9302
0.3504
0.9396
0.9401
Gaussian noise (σ
=
20)
0.5038
0.4788
0.4516
0.5124
Scaling (factor 2)
0.8743
0.8500
0.8460
0.9633
Sharpening
0.9781
0.8893
0.9405
0.9872
Bluring
0.9650
0.8956
0.9463
0.9847
Cropping
0.6981
0.6330
0.5954
0.6990


## 6. Conclusion

In this work, we have developed a fractal color image watermarking method and assessed its performance. As we know, the main objectives of watermarking are to achieve a good robustness against attacks and retain high image quality as well. In the proposed method, we consider a pixel as a 3-D vector and anRGB version of orthogonalization fractal coding is performed in RGB space. In order to obtain higher image quality, instead of using three independent linear functions in classic fractal color coding, we utilize a general form of fractal affine transform by using the range block mean vector as the luminance offset and a 3 × 3 matrix as contrast scaling. In terms of the image quality measured by PSNR, the proposed fractal color coding significantly outperforms the traditional one. It is worth noting that, since the compression ratio is not the main point for watermarking, we do not discuss the quantization of the fractal parameters. On the other hand, we also show that the orthogonalization fractal color decoding is a mean vector-invariant iteration. Hence, the range block mean vector is a good place for embedding the watermark. For the sake of consistency with the human visual system and ensuring the watermark invisibility as well as possible, we further implement the hiding procedure in the CIE L
a
*
b
* space and incorporate a JND scheme. Our experiments show that the proposed watermarking has good robustness against various distortions such as JPEG compression, median filtering, and geometric distortion such as scaling and cropping, as well as with an imperceptible change in image quality.



---

*Source: 638174-2014-03-02.xml*