07 Wisam
07 Wisam
07 Wisam
1
,
2
, as the following
(3.1)
(3.2)
(3.3)
(3.7)
2. Properties of Low Order Moments
The low order moment values represent well-known[11],[18] fundamental
geometric properties of a distribution or body. To illustrate these properties and
show their applicability to object representation, consider the moments of
distribution function that is binary and continuous.
a. Zeroth Order Moments
The definition of the zeroth order moment, M00, of the distribution, f(x,y)
represents the total mass of the given distribution function or image f(x,y). When
computed for a binary image of a segmented object, the zeroth moment represents
the total object area [11],[18].
b. First Order Moments
The two first order moments, M10 and M01, are used to locate the center of mass
of the object. They are defined as follows:
(3.4)
(3.5)
(3.6)
(3.8)
(3.9)
(3.1
The center of mass defines a unique location with respect to the object that
may be used as a reference point to describe the position of the object within the
field of view, If an object is positioned such that its center of mass is coincident
3. Image Description using Moments
With the origin of the field of view (mean of x and y), then the moments
computed for that object are referred to as central moments are shown on latter.
c. Second Order Moments
The second order moments M02, M11, and M20 may be used to determine several
useful object features, and these are called moments of inertia (mean square value
or average energy ).
3.2.2.Orthogonal Moments [7,21,22]
Orthogonal moments are capable of reducing the information redundancy
that exists in conventional moments. Teague has suggested the notion of
orthogonal complex moments to reconstruct images. He suggested the use of
Zernike moments. There exist other orthogonal moments such as Legendre
moments, which are based on the use of Legendre polynomials.
1. Zernike Moments (ZM)
Zernike polynomials[27-28] are orthogonal set over unit circle and are widely used
in the analysis of optical systems. Recently, they were used in shape
reconstruction and suggested for shape recognition.
A set of orthogonal functions with simple rotation properties and with weight
function unity are the well-known Zernike polynomials which will be denoted by
V
nl
(x,y). They represent a set of complex polynomials which form a complete
orthogonal set only over the interior of the unit circle, i.e.
The form of these Zernike polynomials in polar coordinates is
n: positive integer or zero; i.e. n = 0,1,2, . . . ,.
l: positive integer subject to constraints n l even, l n s
R: length of vector from origin to (x, y) pixel, i.e.
|: angle between the vector r and the x- axis in counterclockwise direction.
Rnl(r): real valued radial polynomial defined as
The real valued radial polynomial could be written as:
where:
3.2.3 Legendre Moments (LM) [7, 21]
The Legendre moments are defined as
in a digital Form[17]
where (p+q) is the order , p,q = 0,1,2, . . . ,. The Legendre polynomials
{ P
p
(x)} are a complete orthogonal basis set on the interval [-1,1]:
The nth-order Legendre polynomial[18] are defined by
or more simply
where the Legendre coefficients, Cnk, are given by
3.2.4 Regular Geometrical Moment Invariants ( RMI ) [8, 10]
The two dimensional moments of an image that have a gray function f(x,y) are given by:
The moments of f(x,y) translated by an amount (a, b) are defined by
or, in digital images we could rewrite the last Equation as:
This may be expressed in terms of the original moments of f(x, y) by
It is also called normalization against translation, which is usually achieved by
translating the image to its centroid. These moments are called central moments.
The position of the centroid ( x, y ) may be determined from the regular moments
by
Thus, the central moments mpq can be computed from Equation (3.1) by
(3.1)
(3.2)
(3.3)
(3.4)
(3.5)
(3.6)
substituting a x = - and b y = - as
Or,
The moments of f(x, y) after a scale change by a factor b are defined
by[3],[17]
This may be expressed in terms of the original moments of f(x, y) by
The so called scale normalization, may be achieved by setting M00 to 1. For
binary image or gray-level image with a mean gray level of 1, this is
corresponding to scaling the area of the image segment to 1[3]. The scale factor
that achieves this normalization is
A slightly different scheme is used by Dudani et al[16]. The radius of gyration is
normalized to 1 by using the following scale factor (variance normalization).
where m02 and m20 are central moments as defined by Equation (7). So the
final Equation for scale normalization is (normalization with area):
(3.7)
(3.8)
(3.9)
(3.10)
(3.11)
(3.12)
or, normalized with variance as:
Thus the scale-invariant central moments can then be normalized by the
area as follows:
where
or, normalized with variance as follows;
where
The moments of f(x,y) after rotation by an angle q about the origin are defined
by[3],[12]
in digital images;
Hu defines seven values computed from central moments through
(3.13)
(3.14)
(3.15)
(3.16)
(3.17)
(3.18)
(3.19)
order three, that are invariant to object scale, position, and orientation. In terms of
the central moments, the seven moment invariants are given by
The functions M1 M7 were used in moments calculations of the watermark
effect on the cover image.
3.3 Introduction to Wavelet
(3.20)
(3.21)
(3.22)
(3.23)
(3. 24)
(3.25)
Wavelet transforms are a relatively new concept. There is a push toward the
use of wavelets in signal processing and analysis in place of (or in addition to) the
Discrete Cosine Transform (DCT), which is used in the JPEG standard for image
compression. Recently, many algorithms have been proposed to use wavelets for
image compression. The techniques that are currently being used in working with
images can be generalized for use with wavelet transforms. There are numerous
applications for wavelets, and the uses of wavelets in signal processing seem to be
endless. [32,33]
Steganography essentially means "covered writing". In implementing
steganography, the data is to be hidden in the image so that the visual quality of
the image must be not perceptively affected. Because the emphasis is on "security
by obscurity," we can make the simplifying assumption that the image is not going
to be processed. Thus the method for hiding data in the images does not need to be
robust.
On the other hand, the goal of digital watermarking is to hide a watermark
(some sort of identification data) within the image, so that it is not perceptually
visible to the human eye, but also so that it is robust enough to withstand the
various kinds of transformations.
Visual communication is becoming increasingly important with applications
in several areas such as, digital television transmission, teleconferencing,
multimedia communications, transmission and storage of remote sensing images,
image/video databases, educational and business documents, archiving medical
images, etc. Since digital images and video data are inherently voluminous,
efficient data compression techniques are essential for their archival and
transmission. [32]
In wavelet-based image coding, the coding performance depends on the
choice of wavelets. Several wavelets, which provide suboptimal coding
performance, are found.
Generally, a wavelet providing optimal performance for the whole image is
selected. However, a few cases have been reported where spatially adapted
filterbanks were employed.
3.4 Introduction To Haar Transforms[31,32,33]
The Haar transform is one of the simplest transforms in wavelet
mathematics. The Haar transform uses square pulses to approximate the original
function. The basis functions for Haar wavelets at some level all look like a unit
pulse shifted along the x-axis.
The basis functions are called scales in wavelet terminology. To get from
the lower resolution space back to the higher resolution space, , wavelet can be
used, or the functions that span the space that contains the information we have
discarded in moving from one resolution to another. The wavelet can be expressed
as a linear combination of the basis vectors for the higher detail space, since it lies
inside the higher resolution space, which is spanned by those basis functions.[3]
While this definition is actually pretty simple in terms of the abstract equations
that come about when studying wavelet transformations, it still seems esoteric and
complex to those uninitiated in higher level mathematics.
The 1D Haar Transform works on a set of 4 pixels. The transformation of a
set of pixels:
is
where e = (a+b)/2 and f = (c+d)/2.
The inverse transformation is:
Generalizing it to two dimensions, we take the 1D Haar transform first
along the rows, then along the columns of the image. If the width or height is not
multiples of 4, then the borders are ignored in the transform.
This transform is to be relatively ineffective in steganography. The Haar
transform generalized to two dimensions allows more data to be stored in a regular
image.
The 2D Haar Transform also works on a set of 4 pixels, but is considered
"2D" because there is additional processing on a 2 x 2 block after the initial row
and column transformations are completed. The transformation of a set of pixels
is:
is
Again, borders for an image with width or height that are not multiplies of four are
ignored.
As in the 1D transform, the transformation is generalized to two dimensions,
first along the rows, then along the columns. Additionally, after this computation
is complete, we need to work on the upper left-hand corner (2 x 2 pixels) of each 4
x 4 block.
Becomes .
The same computation is done for the second row of pixels, and then again
for each column of this 2 x 2 block.
The inverse is first computed for each group of 4 x 4 pixels. To do this, we take
the inverse for the first two columns in the 2 x 2 block, then take the inverse for
the first two rows in the 2 x 2 block. The inverse is:
for the E and F shown above.
Finally, the inverse is taken for each group of 4 pixels; first by columns,
then by rows, as follows:
, for the A, B, C, and D above.
These transforms are used in wavelet-based steganography. The amount of
data that can be hidden in an image depends upon the number of "low" coefficients
generated by the transform.
3.5 Wavelet based Image Decomposition
Wavelets are functions of limited duration and having average value of zero.
These are generated from the single function by dilations and translations[18,31]
The definition of wavelets as dilates of one function means that high frequency
wavelets correspond to a<1 or narrow width, while low frequency wavelets have
a>1 or wider width.
Daubechies was the first to discover that the discrete time filters can be
iterated and under certain regularity conditions will lead to continuous-time
wavelets.
Since digital image is a discrete signal, wavelet based image decomposition
can be implemented using discrete time filters. There are a number of ways, in
which wavelet transform may be used to decompose a signal into various
subbands such as uniform decomposition, octave-band decomposition, adaptive or
wavelet packet decomposition etc.
In the octave-band decomposition, first pass each row of image through
analysis filter bank (h0, g0)(h for high pass filter, and g for low pass filter) and
down sampled to get the transformed image, which contains the average value and
detailed coefficients along each row. These transformed rows will be treated as if
they were themselves an image and the same process is applied to each column
(as shown in Fig.(3.2)). This transformation process results in 4-band (LL, LH,
HL, HH) decomposition of an image [34].
(3.26)
To further decompose the resulting image, we repeat this process recursively
on the LL-sub band containing averages in both directions. This decomposition
provides sub images corresponding to different resolution levels (as shown in
Fig.(3.3)). At the decoder (as shown in Fig (3.4)), the sub band signals are
decoded, up sampled and passed through a bank of synthesis filters (h1, g1) and
properly summed up to yield the reconstructed image. Fig.(3.5) shows an example
of applying the filter on the house image.
For extensive evaluation of the algorithm and to compare the three different
filters presented in this thesis, algorithm is applied to a number of natural images
with each of these filters at four different resolution levels.
Fig.(3.2) One stage in multi-scale image decomposition
Fig.(3.5) The result of decomposition operation
Fig.(3.3) Continue
Fig.(3. 4) One stage in multi scale image reconstruction
Fig. (3.3) the decomposed image technique and results
The two-dimensional Haar transform discussed above was generalized for
an arbitrary number of decompositions. Whereas the two-dimensional transform
works on a 4 x 4 block of pixels, the L
th
level decomposition works on a 2
n
x 2
m
image. Any odd pixels on the borders are ignored. For each pair of pixels, the
average is stored in the first half of the row or column, and the difference is stored
in the second half of the row or column. Again, we take the transform in two
directions - first along each row, then along each column. After this step, we have
stored all the averages in the upper left-hand quadrant of the image (as shown in
Fig.(3.6)):[35,36]
Fig.(3.5 ) The Haar Decomposition Direction
The same decomposition on the upper left-hand quadrant up to L times can
be done , where L is log
2
(min (height, width)). The assumption here is that the
most "important" pixels get stored in the top left quadrant of each level of
decomposition, and the "details" are pushed into the other three quadrants.
3.6 Wavelet Threshold Calculations
The main property of wavelet transform is that regions of little variation in
original data manifest themselves as small or zero elements in the wavelet-
transformed version. Hence, The wavelet Transform of the image contains a large
number of detail coefficients, which are very small in magnitude. By fixing a
nonnegative threshold, we can reset these small coefficients to zero resulting in a
very sparse matrix [37]. Very sparse matrices are easier to store and transmit than
ordinary matrices of the same size. Moreover, the image constructed from the
thresholded data gives visually acceptable results.
A nonuniform thresholding technique is used in this research for compressing
the image. It involves two steps. First, the threshold value is computed separately
for each sub band by finding the mean () and standard deviation () of the
absolute intensity levels of non-zero pixels in the corresponding sub band. If the
is greater than then the threshold value is set to (2*), otherwise, it is set to (-
). Second, thresholding is applied to each sub band except LL sub band removing
all detail coefficients whose absolute intensity values are less than the threshold
value. [38]
In the case of lossy compression, the reconstructed image is only an
approximation to the original. Although many performance parameters exist for
quantifying image quality, it is most commonly expressed in terms of peak signal
to noise ratio (PSNR), which is defined as follows.
where is the mean squared error(MSE) given by [39]
where x[i,j]is the original image with dimensions MN and is the reconstructed
image. The x[i,j]n larger PSNR values correspond to good image quality. [21]
(3.27)
(3.28)
Chapter Four
Design and Implementation
Of The Proposed System
Chapter Four
Design and Implementation
Of The Proposed System
4.1 Introduction
The main aim of this research (explained in chapter one) is to design and
implement of information watermarking system by which the secret watermark is
inserted into the cover image, using the wavelet transform to increase the
protection of the transfer images between sender and receiver.
In this chapter, the design and implementation of the designed system will
be explained. Also, the wavelet decomposed, thresholding, and all important
algorithms and results are also explained and illustrated.
4.2 Proposed System Design
These research aspects of image protection deal mainly with
experimentation on where to hide the secret signs into a cover image and how
much data can be successfully hidden without visual distortion.
In this proposed system, we suggest techniques to hide secret image in the
least significant bits locations of Haar wavelet transforms coefficients.
The watermark is a string of character which will convert to the image by
sending the string as a picture to the clipboard of the windows and capture it from
the clipboard. The cover image will be decomposed by the Haar wavelet filter to
reduce the size of the image and to take the important image details. Then the
proposed system will calculate the moments values between the cover image and
the watermark image. The moments vales will be embedded into the cover image
by select the wavelet coefficients that under the thresholding value. The threshold
value will be calculated depending on the standard deviation of the decomposed
image.
The proposed system is called Hiding Secret Watermark In Image System
(HSWIS). HSWIS is divided into the following parts:
1. Loading images and watermark into proposed system.
2. Wavelet Decomposing.
3. Moments calculation.
4. Hiding watermark during wavelet compression
5. Hidden Watermark Extraction
6. Statistical Calculations
The block diagram of the proposed system is as shown in Fig.(4.1), while the
flow chart of proposed system is as shown in Fig.(4.2).
Start
Loading
images
Hiding
Operation
Extraction
Operation
Moment
s
Yes Yes
No
No No
No
Load watermark
and cover images
Wavelet
Decomposed
Moments
calculation
Hiding watermark
into image
Extract Secret
Image
Hiding
Save Image
Display the
watermark result
Fig.(4.1) The block diagram of proposed system
4.2.1 Loading Images into the Proposed System:
This part of proposed system is designed to load the cover image into the
proposed system buffer and display it in the viewer areas.
The proposed system will start loading operation by displaying the open
dialog for making user to choose the cover image. The select image will be read
from the disk to a temp buffer in memory.
The algorithm of this part is:
Exit
Fig.(4.2) The Flowchart Of the Proposed System
Loading images algorithm
Input: image name
Output: image data in memory, image picture in viewer.
Step 1: display open dialog.
Step 2: load the images into memory.
Step 3: split image color into RGB arrays.
Step 4: display image in the proposed system viewer.
Step 5: end.
While the watermark string will be loaded to the proposed system by read
the input string from the user. This string will be sent to windows clipboard. The
proposed system reads the string as image from the clipboard of the windows. The
windows have the ability to save the contents of the windows into two formats:
image format, and text format. The proposed system will send watermark in text
mode, and read iit in image format. The conversion of watermark string is to
complete the moments calculation between the two images (cover image and
watermark image).
The proposed system will start loading operation by displaying the window
for making user write his/her watermark string. The algorithm of this part is:
Loading watermark algorithm
Input: string.
Output: Watermark image.
Step 1:Display watermark writing window.
Step 2:Input the user watermark string.
Step 3:Send watermark string to windows clipboard.
Step 4:Load the watermark from the windows clipboard as image.
Step 5:Display watermark image in the proposed system viewer.
Step 6:End.
4.2.2 Wavelet Decomposition
The proposed system prepares to operate the wavelet pre-calculation. This
function of proposed system is used to calculate the PSNR and MSE for the cover
image by using the decomposition of wavelet.
The decomposition operation is discussed in chapter three (section 3.5). The
job of this function is useful to the next function of proposed system. The result of
this function is used to calculate the threshold and compare it with PSNR and
MSE after hiding operation. The algorithm of this function is as shown below:
Input: color image
Output: PSNR and MSE
Step 1: Read color image array.
Step 2: Do wavelet decomposition technique using decompose
algorithm.
Step 3: Calculate the PSNR and MSE values between each level by
applying eqns.(3.14) and (3.15).
Step 4: Save results.
Step 5: End.
Wavelet Decomposed Algorithm
Input: Cover image.
Output: Decomposed cover image.
Step 1: Load the cover image.
Step 2: Split the cover image color into Red, Green, and Blue arrays.
Step 3: Apply the Haar filter (described in section 3.5) on the each color
array.
Step 4: Repeat the step 3 on the load the low frequency region until level
three.
Step 5: Mix the red, green, and blue color to display the decomposed image.
Step 6: Display the decomposed image.
Step 7: Save the decomposed cover image.
Step 8: End.
4.2.3 Moment Calculations
This function of the proposed system is used to calculate the moments
values between the decomposed cover image and the watermark image. The
proposed system will apply the seven equations of moments values (described in
chapter three section 3.2.4). The moment values (M1 to M7) are used to describe
the relation between the pixels of the watermark image and the decomposed
image. These values will be used as a watermark for protection of the cover image.
The algorithm of moment calculation is as fallows:
Moments Calculation Algorithm
Input: Decomposed Cover Image and Watermark Image.
Output: Moments values.
Step 1: Load the decomposed image.
Step 2: Load the watermark image.
Step 3:Calculate the moments values using the equations (3.18),(3.19)..,(3.25).
Step 4: Display the moments values.
Step 5: End.
4.2.4 Hiding Image during Wavelet Transform
The adding information into decompose regions of image will not affect the
cover image calculation due to the thresholding operation.
In this method, the secret image will decompose using the wavelet
decomposition techniques into 3- levels. The cover image is also decomposed into
3-levels. Then the proposed system will convert the resulted moments values of
secret watermark image into a binary stream of bits. Before determining the
location of hiding the moments values, the threshold of determining the
coefficients must be calculated.
In the recent years there has been a fair amount of research on wavelet
thresholding and threshold selection for signal de-noising [13,15,16], because
wavelet provides an appropriate basis for separating noisy signal from the image
signal. The motivation is that as the wavelet transform is good at energy
compaction, the small coefficients are more likely due to noise and large
coefficient due to important signal features [8]. These small coefficients can be
thresholded without affecting the significant features of the image.
Thresholding is a simple non-linear technique, which operates on one
wavelet coefficient at a time. In its most basic form, each coefficient is thresholded
by comparing against threshold, if the coefficient is smaller than threshold, set to
zero; otherwise it is kept or modified.
Replacing the small noisy coefficients by zero and inverse wavelet
transform on the result may lead to reconstruction with the essential signal
characteristics and with less noise.
There are many researches on finding thresholds, however few are
specifically designed for images. In this proposed system, a near optimal threshold
estimation technique for hiding the moments values in the decomposed cover
image is proposed which is subband dependent i.e. the parameters for computing
the threshold are estimated from the observed data, one set for each subband.
The simple description of computing the various parameters used to
calculate the threshold value (TN) are shown below, which is adaptive to different
subband characteristics.
where, the scale parameter is computed once for each scale using the following
equation:
L
k
is the length of the subband at k
th
scale.
2
is the noise variance, which is
estimated from the subband LL1, using the formula [7][13]:
and y is the standard deviation of the subband under consideration.
After calculation the threshold T
N
, the hiding will be by using the LSB (the
second and third bits of the image byte color) in the coefficients above the
threshold (T
N)
. The hiding operation of the moments stream will be done in LLL1
level.
(4.1)
(4.2)
(4.3)
The idea of this hiding technique is to hide the moments stream bits into low
frequencies coefficients, because the low frequencies will have the energy of
image and convergent to gather while the high frequencies have divergent
coefficients.
After completing hiding the parts of moments stream bits into the cover
image, the proposed system completes the compression and decompression of
cover image. Then the proposed system will calculate the PSNR and MSE values
to detect the overall changing in the image after hiding operation. From this
result, we have two conditions to accept the hiding operation or refuse it. The
PSNR and MSE values, if the PSNR is high the hiding operation will be accepted
else refuse it. Also, if the MSE is low the operation will be accepted else refuse it.
The algorithm of hiding moments into cover image is shown below:
Input: moments stream bits and cover image
Output: Watermarked Image with Moments values.
Step 1: Read color image array.
Step 2: Convert the moments values into a bit stream.
Step 3: Do wavelet decomposition technique on the cover image.
Step 4: Calculate the threshold of the decomposed image by using the
following eqations (4.1), (4.2), and (4.3).
Step 4: Hide the moments stream into low frequencies level using the
LSB hiding technique.
Step 6: Calculate the PSNR and MSE values
Step 7: If PSNR High and MSE is low then goto step 8.
Else Refused the hiding operation and Goto step1
Step 8: Complete wavelet compression and reconstruction
Step 5: Display results.
Step 6: End.
4.2.7 Secret Watermark Extraction
After the hiding operation completely, the user can save the result image
into same name or to another name as the user wants. When the user needs to
extract the hidden watermark, the user will use the wavelet transform to
decompose the image into 3-levels. Then calculate the threshold value (as
described in section 4.2.5), then extract the LSB or the last two bits from parts of
decomposed image.
The resulted bits will convert to byte and the moments values are
reconfigured. After this step, the proposed system will ask user to enter the
watermark string, then the proposed system will convert the user watermark into
the image. The proposed system will calculate the moments values between the
watermarked image and the user watermark image. Then the proposed system will
display the comparison results, if the two moments values (extracted and
calculated) are equal or close together by 95% as similarity ratio, then proposed
system will accept the user watermark and display message of correct watermark,
else the proposed system refuses user watermark and displays the incorrect
watermark. The algorithm of this function is as shown below:
Input: : Watermarked Image .
Output: Watermark decision.
Step 1: Read color image array.
Step 2: Do wavelet decomposition technique on the image and
calculated the threshold T
N
.
Step 3: Extract the bits of moments values from last two bits or LSB.
Step 4: Reconstruct the moments values.
Step 5: Load the user watermark string.
Step 6: convert the user watermark into the image.
Step 7: Calculate the moments between the user watermark and
watermarked image.
Step 8: if user moments values = extracted moments value or similar by
95% then display the message "watermark is correct"
Else
Display message" Watermark is not correct".
Step 9: End.
4.2.8 Statistical Calculations:
The watermarked image resulted from the hiding operation will be checked
by the re-calculation of the PSNR and MSE. Depending on the resulted values of
PSNR and MSE the user can refuse or accept the watermarked image.
4.3 The Proposed System Implementation
The proposed system is designed to protect the image file by using the
secret watermark string and moments calculations. The watermark string will
convert to image to extract the moments values of the effect of the image on the
watermark. These moment values will be used as watermark sign for protection of
the image. The hiding operation will depend on selected coefficients of the
decomposed image using the Wavelet transform.
The proposed system is built by using the Microsoft Visual Basic version
6.0 language on Pentium IV personal computer. The outlines of proposed system
are as shown in Fig.(4.3):
Fig.(4.3) The Proposed system outlines
The main screen of proposed system is as shown in Fig.(4.4).
4.3.1 File Menu
This menu is used to load the original image, load watermark, save result
image, and exit from the proposed system program.
Load Cover Image
Fig.(4.4) The main screen of proposed system
System
File Watermarking Extraction Help
Load cover
Load
Watermark
Save Image
Exit
About
Moments
Calculation
This submenu is used to load the cover image. When this submenu is used,
the proposed system will display the open dialog to choose the cover image from
the user. After choosing the image, proposed system will load the image into
viewer area of it by using the loading images algorithm. Fig.(4.5) shows the
loading image dialog. Fig.(4.6) shows the loaded image.
Fig.(4.5) The Open Dialog Screen.
Fig.(4.6) The Loaded Image.
Load Watermark String
This submenu is used to load the watermark string. When one chooses this
submenu, the proposed system will display the watermark conversion window to
convert the watermark string into watermark image. Fig.(4.7) shows the loaded
watermark string.
(a) The Watermark String.
(b) Watermark Image.
Fig.(4.7) Watermark String.
Save Image
This submenu is used to save the resulting image in the user computer.
Fig.(4.9) shows the Save Dialog that is used to save the resulting image. The
proposed system is able to save resulting image in BMP, GIF, or JPEG image file
format
Fig.(4.9) The Save image dialog.
Exit Submenu
This submenu is used to exit from the proposed system
3.4.2 Moments Calculation Menu
This menu is used to calculate the moments between the watermark image
and the original image. Before calculation of the moments values, the proposed
system will decompose the original image to three levels by using Haar wavelet
transform. Then proposed system will calculate the moments by applying the
moments calculation algorithm. Fig.(4.8) shows the result of moments calculation.
Fig.(4.8) The Moments Results.
4.3.3 Watermarking Menu
This menu is used to hide the watermark moments in the selected
coefficients of the original image. The operation of this menu is described in
hiding watermark algorithm. The results of this menu is as shown in Fig.(4.9) and
Fig.(4.10).
Fig.(4.9) The results of the watermarking operation.
Fig.(4.10) The Watermarked Image.
4.3.4 Extraction Menu
This menu is used to check the correctness of inputting watermark string.
The proposed system will extract the embedded moments values in the
watermarked image. Then it calculates the moments values of the inputting
watermark string after conversion the inputting watermark into image and
calculates the moments between them. Finally, the proposed system will compare
between the resulting moments with the extracted moments values to display
message tells the user the correct or incorrect inputting watermark. Figs.(4.11) and
(4.12) show the results of the exrraction operation.
Fig.(4.11) The Extracted Watermark operation result (not correct).
Fig.(4.12) The Extracted Watermark operation result (correct).
4.3.5 About Menu
This menu is used to display information about the proposed system.
Fig.(4.13) shows the about window.
Fig.(4.13) The About Window.
4.4 The Proposed System Results
The proposed methods is tested on the about 5o samples of (BMP, JPEG,
and GIF) file format image types. The PSNR and MSE measures were used to
show the effect of watermarking operation on the image. Table (4.1) shows the
final results of PSNR and MSE of the 50 image files. From this table, the
watermarking technique results are different in effect on the BMP, JPEG, and GIF
image files. The BMP files are less effected than GIF files on the watermarking
technique, while the JPEG has high effect on the PSNR and MSE values.
Table (4.1) The Results Of Proposed System Over 50 Samples of Image Files
Watermark results
Image
Name
PSNR MSE
1.bmp 34.1 1.8
2.jpg 32.6 1.2
3.bmp 33.3 1.2
4.bmp 34.5 2.3
5.bmp 32.3 2.1
6.gif 31.9 3.2
7.bmp 33.4 3.3
8.jpg 32.5 3.2
9.jpg 40.3 4.1
10.bmp 37.7 4.2
11.bmp 34.6 2.4
12.jpg 35.3 3.3
13.bmp 34.2 3.2
14.jpg 31.1 3.5
15.bmp 30.2 3.9
16.bmp 28.3 3.8
17.bmp 28.3 3.1
18.bmp 29.6 3.1
19.gif 33.6 2.9
20.jpg 32.4 3.2
21.bmp 30.2 2.6
22.bmp 32.6 3.0
23.bmp 33.4 3.1
24.bmp 34.1 3.2
25.jpg 29.3 4.7
26.jpg 29.5 3.6
27.jpg 26.1 3.5
28.bmp 27.5 2.1
29.jpg 31.4 2.4
30.bmp 30.2 2.6
31.bmp 29.3 3.3
32.bmp 32.2 3.6
33.gif 26.4 3.4
34.bmp 27.6 2.2
35.jpg 29.4 3.5
36.jpg 29.1 3.1
37.gif 28.4 4.2
38.bmp 29.3 3.5
39.gif 29.6 2.6
40.gif 30.2 2.4
41.gif 34.3 2.3
42.bmp 34.4 2.1
43.bmp 33.2 2.6
44.bmp 40.6 4.1
45.bmp 31.3 3.3
46.bmp 30.4 3.5
47.gif 42.1 4.5
48.gif 29.2 3.2
49.jpg 29.6 3.2
50.jpg 37.2 3.1
Chapter Five
Conclusions and Suggestions
For Future Work
Chapter Five
Conclusions and Suggestions
For Future Work
5.1 Conclusions
The number of applications of wavelets continues to increase.
Steganography and watermarking are just a few of those applications.
Steganography in the wavelet domain looks very promising. The perceptual
differences of images trivially modified in the Haar wavelet coefficients are almost
nonexistent. The amount of data that can be hidden is potentially up to a quarter of
the size of the original image, depending on the image.
The aim of this proposed system is to hide the secret watermark in cover
image without any sense changing in visual quality of the cover image as much as
possible by using the wavelet transform and decomposition and moment
calculations.
The proposed hiding methods depend on the quality of measurements of the
cover image. These quality measurements are useful to keep the visual quality of
image. The most quality measurements used are (PSNR and MSE). These
measurements are used to accept or refuse the result of proposed system hiding
method. This proposed system provides implementation of a wavelet based image
decomposition technique combined with a simple thresholding scheme.
The main conclusions from implementation of the proposed system are:
1. The proposed system is efficient to watermark most types of secret images as
JPEG, GIF, and BMP file format.
2. The Haar filter is better to hide more data.
3. The Moments calculations give the watermark more robustness due to
resistance of these techniques to many attacks like the rotation, scaling and
shifting.
4. Reducing the watermark string to seven moment numbers increases the security
of watermark and reduces the space of hiding.
5. The location of embedding watermark is selected by using the threshold
with respect to the PSNR and MSE quality measured will reduce the effect
of hiding on the visual quality of the watermarked image.
8. Not all coefficients in decomposed image can be used to hide watermark,
because some coefficients are very sensitive to change (adding or reducing).
5.2 Suggestions for Future Work
There are some suggestions for future work which can be taken to
improvement proposed system. These are:
1. Improvement of proposed system to complete the JPEG2000 steps for
saving the watermarked image in JPEG200 file format.
2. The proposed system should be improved to deals with other types of
moments.
3. Developing the proposed system to reconstruct the watermark image from
the extracted moments.
4. Developing the proposed system to deal with multi-wavelet techniques to
improve the hiding result.
5. Developing proposed system to deal with other quality measurements.
6. The proposed system to deal with other decomposed filters.
7. Developing the proposed system should be investigated to deal with the
powerful encryption methods such as RSA, DES..etc.
8. The proposed system should be further enhanced to deal with new
techniques for hiding images.
References
References
[1]Cox, Ingemar J., Joe Kilian, Tom Leighton, Talal Shamoon, "Secure Spread
Spectrum Watermarking techniques for Multimedia", IEEE Transactions on
Image Processing, 2003.
[2] Johnson, Neil F., Sushil Jajodia, "Exploring Steganography: Seeing the
Unseen", IEEE Computer, 26-34, 1998.
[3] Morimoto, Norishige, Walter Bender, Daniel Gruhl "Techniques for data
hiding", Media Laboratory, 2002.
[4] M. Antonini, M. Barlaud, P. Mathieu, and I. Daubechies, Image Coding using
Wavelet Transform, IEEE Trans. Image Processing, vol. 1 No. 2, pp. 205-
220, April 1992.
[5] M. B. Martin and A. E. Bell, New image compression techniques using
multiwavelets and multiwavelet packets, IEEE Trans. Image prcessing,
vol. 10, No. 4, pp. 500-510, April 2001.
[6] M. Vattereli and J. Kovacevic, "Wavelets and Subband Coding for
Images", Englewood Cliffs, NJ, Prentice Hall, 2001.
[7] Khotanzad, A. and Y. H. Hong, Invariant Image Recognition by
Zernike Moments, IEEE Transactions on Pattern Analysis and
Machine Intelligence, 8, 4, pp. 489-497, 1990.
[8] Kim, H. and J. Kim, Region-based Shape Descriptor Invariant to
Rotation, Scale and Translation, Signal Processing: Image
Communication, 16, pp. 87-93, 2000.
[9] Mukundan, R., S. H. Ong, and P. A. Lee, Discrete vs. Continuous
Orthogonal Moments for Image Analysis, in Proceedings of the
2001 International Conference on Imaging Science, System and
Technology, 2001.
[10] Teague, M. R., Image Analysis via the General Theory of Moments,
Journal of Optical Society of America, 70, 8, pp. 920-930, 1999.
[11] O. Egger, P. Fleury, T. Ebrahimi and M. Kunt, High-performance
compression of visual information-A tutorial review, in Proc. IEEE, vol.
87, no. 6, June 2000.
[12] F. Hartung and M. Kutter, Multimedia Watermarking Techniques,
Proc .of IEEE, vol. 86, no. 6, June 2001, pp. 1079-1107.
[13] M. Swanson, M. Kobayashi, and A. Tewfik, Multimedia Data
Embedding and Watermarking Technologies, Proc. of IEEE, June
2000.
[14] R.J. Anderson and F. Peticolas, On the Limit of Steganography,
IEEE J. Select. Areas Comm., vol. 16, May 1999, pp. 474-481.
[15] A. Shizaki, J. Tanimoto, M. Iwata, A Digital Image Watermarking
Scheme Withstanding Malicious Attacks, IEICE Trans.
Fundamentals, vol. E-83-A, no. 10, Oct. 2000, pp. 2015-2022.
[16] Tewfik J. and Nero A., "Fundamentals of Wavelets: Theory, Algorithms, and
Applications", John Wiley & Sons, 2002.
[17] Caglar F. G., A. Z. Averbuch and J. Stromberg, Fast adaptive Wavelet
Packet Image Compression, IEEE Trans. Image prcessing, vol. 9, No.
1, pp. 792-800, May 2001.
[18] Ramchandran U. I, T. D. DeRose and D. H. Salesin, Wavelets for
computer graphics: a primer, part III, IEEE Computer Graphics and
Applications, vol. 15, No. 3, pp. 76-84, May 2003.
[19] Hue A., I. J. Cox, and J. A. Bloom, Watermarking in the real world:
An application to DVD Using Moments Analysizing. In Dittmann et
al. [147], pp. 71-76.
[20] Mamistvalov L. and F. Algregtsen, Fast and Exact Computation of
Moments Using Discrete Greens Theorem, in Proceedings of the
IEEE International Conference on Image Processing, 2000.
[21] Zernike A., Predrag Pejnovi, and Srdjan Stankovi "On Two-
Dimensional Shape Recognition Using Moment Invariants", Facta
Universitatis Series: Electronics And Energetics Vol. 12, No.1
(1999), 103-119 Udc 621.391
[22] M.R. Teaque," Image analysis via the general theory of moments", J.
Opt. Soc. Am., Vol. 70, No. 8, August 2002.
[23] J. C. Benaloh, Verifiable Secret-Ballot Elections. Ph.D. thesis, Yale
University, New Haven, 1998, YALEU/DCS/TR-561.
[24] G. W. Braudaway, K. A. Magerlein, and F. Mintzer, Protecting
publicly-available images with a visible image watermark.IEICE
Trans., pp. 126-133, 2002.
[25] I. J. Cox and M. L. Miller, A review of watermarking and the
importance of perceptual modeling., Rogowitz and Pappas, May
2002.
[26] C. I. Podilchuk and W. Zeng, Digital image watermarking using
visual models. , Rogowitz and Pappas, pp. 100-111,2002.
[27] D. Kundur and D. Hatzinakos, Digital watermarking using
multiresolution wavelet decomposition., In International Conference
on Acoustic, Speech and Signal Processing (ICASP), vol. 5, pp. 2969-
2972, IEEE, Seattle, Washington, U.S.A., May 1999.
[28] G. Nicchiotti and E. Ottaviano, Non-invertible statistical wavelet
watermarking., In 9th European Signal ProcessingConference
(EUSIPCO'98), pp. 2289-2292, Island of Rhodes, Greece, 8-11 Sep.
1999, ISBN 960-7620-05-4.
[29] R. B. Wolfgang and E. J. Delp, A watermarking technique for digital
imagery: further studies. In International Conference on Imaging,
Systems, and Technology, pp. 279-287, IEEE, Las Vegas, Nevada,
U.S.A., 30 Jun.-3 Jul. 2001.
[30] F. Hartung and B. Girod, Watermarking of uncompressed and
compressed video. Signal Processing, vol. 66, no. 3, pp. 283-301,
May 2002.
[31] A. Herrigel, J. J. K. fiO Ruanaidh, H. Petersen, S. Pereira, and T. Pun,
Secure copyright protection techniques for digital images usin
moments analysis. In Aucsmith, pp. 169-190,2002.
[32] M. D. Swanson, B. Zu, and A. H. Tewfik, Robust data hiding
techniques for images. In 14th Digital Signal Processing Workshop
(DSP 96), pp. 37-40, IEEE, Loen, Norway, Sep. 2004.
[33] T. Kalker, New Watermark Estimation Through Wavelet Detector
Observation, Philips Research Eindhoven, Netherland, preprint
2003.
[34] T. Kalker, J. P. Linnartz, and M. van Dijk, Watermark estimation
through wavelet analysis, Proc. of the ICIP, Chicago, Oct 1999.
[35] J. P. Linnartz and M. van Dijk, Analysis of the Wavelet sensitivity
attack against electronic watermarks in images, Proc. of the
Workshop on Information Hiding, Portland, April 2001.
[36] J. R. Smith and B. O. Comiskey, Modulation and information hiding
in images using Wavelet thresholding." In Anderson [5], pp. 207-226,
2001.
[37] W. Bender, D. Gruhl, N. Morimoto, and A. Lu, Wavelet Thresholding
Techniques for data hiding. I.B.M. Systems Journal , vol. 35, no. 3 &
4, pp. 313-336, 2003.
[38] J. Fridrich, Methods for Detecting Changes in Digital Images, Proc.
of The 6th IEEE International Workshop on Intelligent Signal
Processing and Communication Systems (ISPACS'98), Melbourne,
Australia, November 2002.
[39] S. Katzenbeisser, F.A.P. Petitcolas, Information Hiding Techniques
for Steganography and Digital Watermarking", Aetech House, Boston
London, 2000
[40] F. A. P. Petitcolas, R. J. Anderson, and M. G. Kuhn, Attacks on
copyright marking systems." In Aucsmith [148], pp. 218-238, 2002.
[41] S. Craver, N. Memon, B.-L. Yeo, and M. M. Yeung, Can invisible
watermark resolve rightful ownerships?" In Sethin and Jain [149], pp.
310-321, ISBN 0-8194-2433-1.
[42] Wang, J. Z., G. Wiederhold, O. Firschein, and S. X. Wei, Content-
based Image Indexing and Searching Using Daubechies Wavelets,
in Proceedings of the Fourth Forum on Research and Technology
Advances in Digital Libraries, 2001.
.
1427 2006
.. .,,,,
_.... ..,. _.... ,,..:.
.,:..,..: .,..... .,... ..,,
... ..... .,:..,..: .,.. .,
!!! !! !!!! !!! !!! ! ! !!! !!! !!!! !! !! !!!!!!! ! ! !!! !!! !!!! !! !!!!! ! !! ! !!!! !!! !! !!! !!!! !!
!! ! !!!!!! !! !!!!! ! !!! ! ! ! !! ! !! ! !!!!! !!! !!! ! ! !!! !!! !!!! !!!! !! ! ! !! !!!!! ! !!! ! ! ! !!!! !
! ! !! ! !! ! ! ! !! !! !! !! ! ! ! ! ! !! ! !! ! ! !! !!! ! ! !! ! ! !! ! ! !!!!! ! ! ! ! ! ! !!! ! ! ! ! !! ! ! !!! ! !! !!!!
! ! ! ! !!!!!!!! ! !! ! ! ! !! ! ! !! ! ! ! ! !! !! ! ! ! ! ! ! ! !! !! !! !! !! ! !!! ! ! !!! ! !! ! ! !! !! !! !!! ! !! !!! ! !!
!!!!!! ! ! ! ! !!!!!! ! !! ! !! ! ! !!! ! ! ! !! !! ! ! !! ! ! ! ! !! !!! ! ! ! !! ! ! ! !! ! !! !!! !! ! !!! ! ! !! ! !
! ! !!! ! ! !!!! !!!!! ! !!!!!!!! !! !!!! ! ! !!!! !! ! !! !! !! !! !!! ! !!! ! ! !!
!!! !!!! !!! !! ! !! ! ! !! !! !! ! ! !!! ! !! !!!! ! !! !!! ! ! ! !! ! ! ! ! !!!! ! !! !!! ! !!! ! !!! ! !!
!!! !!!! !!!! !!! !! !! ! !!! !! ! ! !!! !! ! !! !!!! ! !! ! ! ! ! !! !!! ! ! ! !!! !!!!! !!!!! !!!! !!! ! ! !!! !!! !!!!
!! !!! ! ! !!! !!!! !! ! !!!! ! !!! ! !! ! ! !!! !!!! ! !! ! !!! ! ! !!! ! !! !!! !! ! !! ! !! ! ! ! !! ! !! ! ! ! ! ! !
!! ! !! ! ! !!! !! ! !! !! !! !!!!! !!!!!!! !! !!! !!!! !!! ! !!! !!! ! !!!! !!! !! ! !!!!!!!! !! ! !!!!! !! !! !!!! !
!! ! ! ! !!! !! ! ! !! ! ! !!! ! !!! ! !! ! !!!!! !!!!!!!!!! !!! !! !!!! !!! !! !! ! !! ! !!!!!!!! !!!! !!!!!! ! ! !
! ! ! !!! ! ! ! !!!! !!! !! ! ! !! ! ! !!! !! !!! ! ! !!!! !! !! !! !! !! !! ! ! !!! !!! ! ! ! !! !!!! ! !! ! ! ! !! !!! ! !! !
! ! !!!! !!!!!!!! !!!! ! !!!! !! !! !!! ! ! !! !! !!! !! !!! !
!!!!!!!!!!!!!!!!! ! ! ! ! !! !! ! ! ! !! !! ! ! !!! ! ! !!! !!! !! !!! !! !!!!! !! !! ! !! ! !! !! !!!! !!! ! ! !!!!! ! ! ! ! ! !!! ! !!!
!!!! ! ! !!!! ! !!!! !! !!!!!!!!!!!!!!!! ! ! !! ! !! !! ! ! !! ! ! !! ! !!!! !! ! !!!!!! ! !!!!!! ! !!! !! ! !!!! !! ! ! !! !! !!! !! ! !!!!! !!
!!!!!!!!!!! ! !!!! ! !! !!!! !!!!!!!! !!!! !!!!!! ! ! !! !! ! !!!! ! !! !!!!! !! ! ! ! !! !! ! ! !!!!!!!! ! ! !!! !!!! !!!!! !!! !!
!!!!!!!!!!!!!!! ! ! !!!!! ! !!!!!!! ! ! !! !! ! ! !! ! ! !!! ! ! !!! !! ! ! !!!! !!! !!! ! ! !!! !!! !!!! !!! !!!!!!! !!! !!! ! ! PSNR !!
!! ! ! !! !! MSE !! !!! ! !! ! !!
!!!! ! ! !!!!! ! !!! !!! !! !!!! !! ! ! ! !! ! MS Visual Basic !! !!! ! ! ! !!! !!! !!! ! !!!!!!!
!! ! !!! !! ! MS Windows XP !
Watermark technique based on wavelet transformation and
moments features