11 Information Hiding for Spatial and Geographical Data
255
This scheme works on a block basis, thus the original cover is divided into a series
of n × n blocks, the SVD is applied to each block, and then the secret message bits
are embedded in some elements of the resulting orthogonal matrix U. It could be
a good practice to embed the secret message only in a few u i j elements in order to
address the invisibility issue. In particular, the elements of the first rows and columns
are not used for embedding, as changing them may introduce noticeable distortions
in the stego image. Figure 11.6 illustrates this approach for a block of size 8; the
gray elements remain unchanged, the central portion represents the elements of U
where the secret message is embedded according to (11.8), while the other elements
(those marked with ‘−’ ) are updated according to the rule that the new matrix U
should be orthogonal. In fact, let U i
denote the ith column of the matrix U
, then
according to the orthogonality rule it is required that U i
ΔU j
δ i j . In the example
shown in Fig.11.6, the orthogonality rule is satisfied if:
U 1
ΔU 3
= 0
U 2
ΔU 3
= 0
U 1
ΔU 4
= 0
U 2
ΔU 4
= 0
U 3
ΔU 4
= 0
and so on, until the lower entries in U 5
, . . . , U 8
are determined. Then, the matrix U
is orthogonal and the stego image is obtained according to (11.9).
Advantages of this approach are its simplicity and the embedding capacity. However, it could be found that it is a very difficult task to have a unique SVD of a given
matrix. This requirement is not valid when singular values are not pairwise distinct,
or they differ slightly. Then, the basic algorithm can be extended by forcing the
−
u
u
u
u
u
u
u
u
u
u
u
u
u
24
25
26
27
34
33
35
36
43
44
45
53
54
63
u
U
23
U
U
1
2
8
. . . .
− − − − − −
−
−
−
−
−
−
u
− − − − −
−
−
−
−
− − −
−
−
Fig. 11.6. SVD unitary embedding, block size = 8
Précédent

- 248/317

Suivant