Cryptography Reference
In-Depth Information
are generally very close. That is, their difference d could be very small in
most cases. It is possible to provide i bits for placing the hidden data by left
shifting d by i bits. This done by expanding d to its 2 i times while keeping
the induced distortions an acceptable level. Suppose the expanded difference
carrying i hidden bits is denoted as d
2
, the watermarked elements x
1 and x
could be calculated by d
and m via Eqn. (6.6). Difference expansion has the
following properties when used for reversible data hiding:
1) The cover data should be integers for using difference expansion.
2) The total error (d −d) induced by expansion will be shared by two elements
x 1 and x 2 .
3) Highly correlated cover data is recommended for data hiding because
higher correlation generally means lower distortions and higher capacity.
Correlation of Coordinates and an Outline of the Scheme
Difference expansion is appropriate for hiding data in the cover data with a
high correlation. A natural image is always highly correlated because most
adjacent pixels have similar values. This is grayscales or colors, for example.
A vector map is composed of a sequence of the coordinates of the vertices.
Due to the density of the vertices, the positions of two adjacent vertices are
usually very close and the differences between their coordinates are very small.
Consequently, coordinate sequence can also be considered as having high cor-
relation. In the following scheme, the raw coordinates of the cover map are
taken as the cover data for hiding data by difference expansion. The algorithm
begins with the division of the original map in which every two adjacent ver-
tices are grouped into a vertex pair. An embedding condition is then used
to judge whether a certain pair is suitable for hiding data by difference ex-
pansion. For all suitable pairs, the hidden bits are embedded by expanding
the differences of coordinates. Otherwise, the hidden bits are embedded by
replacing the Least Significant Bit (LSB) of the differences.
Map Division and Embedding Condition
1. Map Division
Generally, the coordinates of a vector map are floating-point numbers with a
fixed precision. In order to perform difference expansion, all coordinates are
firstly transformed to integers by multiplying 10 p where p is the number of
digits after the decimal point. Then the original map is divided into groups.
Each group contains two adjacent vertices. For example, supposing a map
object (polyline or polygon) is composed by verticesv 1 ,v 2 ,v 3 ,v 4 ,, then
the divided object should be(v 1 ,v 2 ), (v 3 ,v 4 ),. Repeat the procedure for
all map objects (except points), the original map can be divided into N vertex
pairs which can be denoted as
v 1 ,v 2
x 1 ,y 1
x 2 ,y 2
=
,
;
i∈[1,N]
Search WWH ::




Custom Search