2.1. Ratio Invariance of DWT-CSVD Coefficients
The frequency transformation is implemented in the polyline which can be donated as with an edge set and a vertex set , where , . A polygon can be expressed as a closed polyline.
The proposed ratio invariance of DWT–CSVD transformation coefficients refers to the property that the ratio of the singular values, which are obtained from the CSVD algorithm performed on the low- and high-frequency coefficients of 2-level Haar wavelet-based DWT, is invariant under rotation, scaling, and translation (RST) operations. Details of the invariance are as follows: firstly, the complex sequence
is constructed from vertex set
according to Equation (1):
Then, the complex sequence is transformed by Haar wavelet-based DWT to obtain the multi-resolution representations: and , where is the low-frequency coefficient, also known as the approximate component which includes most energy of the original vertexes, and is the high-frequency coefficient, also known as the detail component, which includes little energy. After that, perform Haar wavelet-based DWT on to obtain the multi-resolution representations of : and , where is the approximate component of and is the detail component of .
Based on
and
, the complex matrixes
and
are constructed, respectively. The CSVD algorithms performed on
and
are shown in Equations (2) and (3).
where
and
represent the unitary matrix consisting of the left and right singular vectors, respectively.
is the Hermite matrix of
, and
is the singular value matrix. Because
is a one-dimensional matrix, after CSVD, the singular value matrix,
, has only one element, i.e., the singular value
. Equation (3) follows the same principle as Equation (2). Finally, the ratio
of the DWT–CSVD transformation coefficients can be calculated by Equation (4) after acquiring the singular values of
and
.
The ratio will keep invariant, after the original vertexes are attacked by RST. The invariance outlined above will be proved theoretically by the following:
First, the one-dimensional Haar wavelet-based DWT can be expressed by the form of matrix
(
is an even number), which is shown in Equation (5) [
30]:
The following is an expression for the transformation of the original signal using Haar wavelet-based DWT:
where
and
denote the approximate component and detail component, respectively.
When the original vertexes are translated along the x-direction by
and along the y-direction by
, there is
From the above equations, as can be seen, the detail component is unaffected when the original vertexes are translated. On this basis, it is straightforward to prove that the approximate and detail components of the 2-level DWT are invariant when the original signal is translated. Clearly, the ratio of the singular values will not change.
When the original vertexes are scaling by
, there is:
It shows that both the approximate component and detail component are
times the original value. The following analyze the characteristics of the singular values. The singular value for a complex matrix
can be used to calculate Equations (11) and (12).
where
is an operation of obtaining the determinant,
is the eigenvalue of matrix
,
is a unit matrix, and
is the singular value of
. In case of the matrix
, there is:
where
is the singular value of
. After scaling, the singular value is also scaled by the scaling ratio. The ratio of the singular values of the approximate component and detail component is identical to the original ratio since both the approximate component and detail component are scaled by the same ratio when the original vertexes are scaled.
When the original signal is rotated by
, there is:
Based on Equations (11) and (12), the singular values of the aforesaid approximate component and detail component are as follows:
where
and
are the singular values of the above approximate component and detail component, respectively. When performing the same option on the original approximate component and detail component, the singular values acquired are equal to the singular values above. Additionally, the ratios of the singular values are constant.
Since the ratio of the singular values of the approximate component and detail component is not altered by RST attacks, it is robust and provides a theoretical basis for digital watermarking algorithms for vector geographic data.
2.2. Watermark Information Generation
The watermark used in this paper is a binary image.
Figure 1a shows a sample of a binary image with a size of
bits, and
Figure 1b,c are the watermark index and watermark bits at the corresponding positions of the watermark image.
To enhance the security of the watermark, it is necessary to scramble the watermark using the Arnold transformation before embedding the watermark [
31]. Arnold transformation, also called cat mapping which is proposed by Russian mathematician V.I. Arnold [
32], works by mapping the original pixel position
to a new position
. Arnold transformation is now generalized by introducing two parameters a and b, as shown in Equation (18) [
33].
where
is the size of the watermark image and
is the modulo operation,
. The parameters
a and
b can be used as a secret key for watermark detection.
Inverse Arnold scrambling transformation can be expressed as:
To improve the recognition of the watermark information, the original watermark bits are mapped to new values according to Equation (20):
where
is the original watermark bit and
is the mapped bit. Obviously, the mapping process is reversible.
The final watermark information is created by combining watermark indexes with a specified fixed “length” and mapped watermark bits in order to ensure watermark synchronization. The “length” of the watermark index is the total number of digits, including the “0” value at the beginning. For example, suppose the fixed “length” is set to 3, the watermark index 16 will be expressed as “016” and suppose the fixed “length” is set to 4, the watermark index 16 will be expressed as “0016”. Take the watermark image in
Figure 1 as the original watermark, the final watermark information is shown in
Figure 2 when the fixed “length” is set to 3.