You are on page 1of 86

A Thesis

Submitted to Informatics Institute for Postgraduate Studies at


the Iraqi Commission for Computers and Informatics as a
partial fulfillment of the requirements for the degree of
Master of Science in Computer Science
By
WISSAM S. AL-RASHIED
Supervised by
Republic Of Iraq
Ministry of Higher Education
And Scientific Research
Iraqi Commission for Computers and
informatics
Informatics Institute for
Postgraduate Studies
Dr. JANE J. STEPHAN
2006 1427
Watermark technique
based on wavelet
transformation and
moments features
Supervisor's Certification
I certify that this thesis entitled "New Technique for
Image Protection" was prepared under my supervision at the
Informatics Institute for Postgraduate Studied of Iraqi
Commission for Computers and Informatics as a partial
fulfillment of the requirements for the degree of Master of
Science in Computer Science.
Signature:
Name: Dr. Jane J. Stephan.
Date:
Acknowledgement
Praise be to God for His grace on me to finish this research.
I would like to express my deepest gratitude and appreciation to my
supervisor Dr. Jane J. Stephan for her valuable advice, guidance,
cooperation during the course of this work, and for many things to list.
I am deeply indebted to Dean of the Informatics Institute of
Postgraduate Studies.
I would like to express my greatest thanks to my family, my dear
mother, my sisters and my brother for their helping and encouragement
me to complete this work, for everything they have done to me.
Finally, I would like to thank all my friends for their support and
help.
ABSTRACT
Watermarking is the process that embeds data called a watermark,
tag or label into a multimedia object such that watermark can be
detected or extracted later to make an assertion about the object.
Watermarks of varying degrees of visibility are added to presentation
media as a guarantee of authenticity, quality, ownership and source. In
general, any watermarking scheme consists of three parts, the encoder
(insertion algorithm), the decoder, and the comparator (verification or
extraction or detection algorithm).
In this thesis, a method is suggested to embed a watermark in an
image file using the moments calculations and wavelet transform. The
watermarking scheme was suggested to be watermark invisible without
any effect on the visual quality of the image that is watermarked. The
moment calculation is used for analysis of the relation between the
original image and the watermark image. The moments value will be
embedded into the decomposed image after applying the Haar wavelet
transformation in order to determine the best coefficients to hide the
moments stream. Also, the thresholding calculation is used to help in the
selection of the coefficients.
The main advantage of the proposed watermark scheme is the
ability to avoid the effect of many types of attacks such as reflection,
scaling, resizing, because the moments calculation is unaffected with
these type of attack. On other hand using wavelet transform with the
thresholding calculation increase the robustness of the watermark
because the selection coefficients depends on the PSNR (Peck Signal to
Noise Ratio) and MSE (Mean Square Error) quality measure.



Contents
Subject
Page
Chapter One: Introduction.
1.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 What is Watermark? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 History of Watermarking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 Image File Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.5 Steganography vs. Watermarking . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.6 Image Moments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.7 Wavelet Transform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.8 Related Work. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.9 Aim of the Thesis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.10 Thesis Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Chapter Two: Watermarking Concept.
2.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 Importance of Digital Watermarking. . . . . . . . . . . . . . . . . . . . . . 10
2.3 Basic Watermarking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.4 Watermarking Terminology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.5 Water Marking Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.6 Watermarking Applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.7 Properties of Watermarking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.8 Watermarking attacks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.9 Some Significant Known Attacks. . . . . . . . . . . . . . . . . . . . . . . . . 19
Chapter Three: Moments and Wavelet for Image Analysis.
3.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2 Moments Descriptor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2.1 Geometric Moments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.2 Orthogonal Moments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.2.3 Legendre Moments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.2.4 Regular Geometrical Moments Invariants (RMI) . . . . . 31
3.3 Introduction to Wavelet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.4 Introduction to Haar Transformation. . . . . . . . . . . . . . . . . . . . . . . 36
3.5 Wavelet based Image Decomposition. . . . . . . . . . . . . . . . . . . . . . 38
3.6 Wavelet Threshold Calculation. . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Chapter Four: Design and Implementation of the Proposed
System.
4.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.2 Proposed System Design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.2.1 Loading Image into the Proposed System. . . . . . . . . . . . . 48
4.2.2 Wavelet Decomposition. . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2.3 Moment Calculation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.2.4 Hiding Image during Wavelet Transform. . . . . . . . . . . . . . 52
4.2.5 Secret Watermark Extraction. . . . . . . . . . . . . . . . . . . . . . . 55
4.2.6 Statistical Calculation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.3 The Proposed system Implementation. . . . . . . . . . . . . . . . . . . . . . 57
4.3.1 File Menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.3.2 Moments calculation Menu. . . . . . . . . . . . . . . . . . . . . . . . . 61
4.3.3 Watermarking menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.3.4 Extraction Menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.3.5 About Menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Chapter Five: Conclusions and Suggestions for Future Work.
5.1 Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.2 Suggestions for Future Work. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
References 71
List of Figures
Figure No. Figure Title Page
2.1 Generic Digital Watermark Embedding Scheme . . . . . . . 12
2.2 Generic Digital Watermark Extracting Scheme . . . . . . . . 12
3.1 Classification of Moments Invariants . . . . . . . . . . . . . . . 24
3.2 One stage in Multi-scale Image Decomposition . . . . . . . 40
3.3 The Decomposed Image Technique and results . . . . . . . 41
3.4 One stage in Multi-scale Image Reconstruction . . . . . . . 41
3.5 The Haar Decomposition Direction . . . . . . . . . . . . . . . . 41
4.1 The Block Diagram of Proposed System . . . . . . . . . . . 46
4.2 The flowchart of the Proposed System . . . . . . . . . . . . . 47
4.3 The Proposed System Outlines . . . . . . . . . . . . . . . . . . . 57
4.4 The Main Screen of Proposed System . . . . . . . . . . . . . . 58
4.5 The Open dialog Screen . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.6 The Loaded Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.7 Water Mark string . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.9 The save Image Dialog . . . . . . . . . . . . . . . . . . . . . . . . . 61
Chapter One
Introduction
Chapter One
Introduction
1.1 Introduction:
The rapid development of multimedia and Internet allows for wide
distribution of digital media data. It can become more and easier to edit, modify
and duplicate digital information.
A digital library provides users with on-line access to digitized news
articles, books, and other information. In this environment a user may easily
redistribute this digital information on built-in boards and mailing lists unless this
problem is "solved", few publishers or others will place valuable information in
these digital libraries.[1]
Information hiding is a field of information security, and it includes
methods of hiding the existence of information itself in a variety of media (text,
images, sound, and other digital representation code).[2]
Generally, steganography and digital watermarking are two types of
information hiding.
Steganography is the art of hiding and transmitting data through apparently
innocuous carriers in an effort to conceal the existence of the data, the word
steganography literally means covered or hidden writing as derived from Greek.
Digital watermarking means embedding information into multimedia data
that should be imperceptible but unremovable.
1.2 What is Watermark?
Watermarking is a method in computer security by which identifiers of
sources or copyright owners of digital or analog signals are embedded into the
respective signals themselves in order to keep track of where a signal comes from
or who the copyright owners are. Thus, watermarking is for copyright protection
of electronic content, predominantly, digital content. The signal carrying the
content before a watermark is embedded is sometimes called the cover-signal, and
the piece of data carrying the copyright ID (and other optional information) is
called the watermark. The term watermark dates back to the 13th century when
paper makers used traditional watermarks to differentiate their products from each
other. Thus, traditional watermarks serve as authentication tags of print media,
while electronic watermarks serve as copyright tags of the content itself.[3]
1.3 History of Watermarking [3,4]
Although the art of paper making was invented in China over a thousand
years ago, paper watermarks did not appear until about 1282, in Italy. The marks
were made by adding thin wire patterns to the paper molds. The paper would be
slightly thinner where the wire was and hence more transparent.
The meaning and purpose of the earliest watermarks are uncertain. They
may have been used for practical functions such as identifying the molds on which
sheets of papers were made, or as trademarks to identify the papermaker. On the
other hand, they may have represented mystical signs, or might simply have
served as decoration.
By eighteenth century watermarks on paper made in Europe and America
had become more clearly utilitarian. They were used as trademarks, to record the
date the paper was manufactured and to indicate the size of original sheets.
It was also begun to used as anti counterfeiting measures on money and
other documents.
In 1988, Komatsu and Tominaga are said to have first used the term digital
watermark. Still, was probably not until the early 1990 that the term digital
watermarking really came into vogue.
Since 1995 digital watermarking has gained a lot of attention and has
evolved very fast and there are a lot of topics open for further research. In the late
of 1990s several companies were established to market watermarking products.
1.4 Image File Types
The onset of computer technology and the Internet has given new life to
watermarking and the creative methods with which it is employed. Computer-
based steganographic and watermarking techniques introduce changes to digital
carriers to embed information foreign to the native carriers. Since 1995, interest in
steganographic methods and tools as applied to digital media has exploded.[3,5]
Many file types make suitable carriers of hidden messages. These file
formats include JPEG, BMP, MP3, WAV, MPEG, TIFF, GIF, MIDI, and AVI.
Even Windows executable files (EXE) can contain hidden messages. Hiding
information in an executable works in the same space that a virus would hide
itself.
1.5 Steganography vs. Watermarking
Steganography is not the same as cryptography. In cryptography, the
structure of a message is changed to render it meaningless and unintelligible
unless the decryption key is available. Cryptography makes no attempt to disguise
or hide the encoded message while, steganography does not alter the structure of
the secret message, but hides it inside a cover. It is possible to combine the
techniques by encrypting a message using cryptography and then hiding the
encrypted message using steganography. The resulting stego-image can be
transmitted without revealing that secret information is being exchanged.
Furthermore, even if an attacker were to defeat the steganographic technique and
detect the message from the stego-image, he would still require the cryptographic
decoding key to decipher the encrypted message.[3,5,6]
Both Steganography and Watermarking describe techniques that are used to
imperceptibly convey information by embedding it into the cover data. There are
many differences between Steganography and digital Watermarking as shown in
Table (1.1). [4]
Table (1.1) Comparison between Steganography and Digital Watermark
Steganography Digital Watermarking
Steganography conceals a message
where hidden message is the object of
the communication.
Digital Watermarking extends
some information that may be
considered attributes of the cover
such as copyright.
Steganography tools hide large blocks
of information.
Watermarking tools place less
information in digital data.
It is invisible to the human eye, and
must not be known.
It is not always to be hidden as
some system use visible, but most
system use invisible.
Steganographic communication are
usually point-to point or one to many
Watermarking techniques are
usually one to many points.
Steganography system just hides any
information.
It is associated to the digital object.
Concerned with detection of hiding
message, it is not robust against
modification.
Concerns potential removal by a
pirate, it is more robust to attacks.
1.6 Image Moments
We now consider one of the major factors causing performance degradation
when simply using resized images in a Nearest Neighbour Pixel classifier. Slight
variations (e.g. a small rotation) can change a lot of pixels, and thus create a large
shift in Euclidean Distance.
It might be better to find features of the word that are invariant to some of these
transformations, and use these as a feature vector.
The Centroid moments can be thought of as being the centre of mass of an image.
For a town name, if each of the foreground pixels is considered to have an equal
mass, the Centroid can find by calculating the position of the centre of mass of this
system.
Moments are widely used in point based global object recognition and alignment.
For example, affine moments invariants [7],[8] and global affine transformation
correlation [9] have been proposed for recognition, and cross-weighted moment
invariants [10] for alignment and recognition.
Moments of an image can be thought of as the decomposition of the image
into a series of numbers that describe the distribution of the image function. This is
similar to a cloud of datapoints being split into a set of components through.
1.7 Wavelet Transform
A Wavelet transformation converts data from the spatial into the frequency
domain and then stores each component with a corresponding matching resolution
scale [3]. Wavelets are used to represent different levels of detail. The Haar
wavelet is one of the simplest wavelet transforms. Various compression
techniques have been studied before, but wavelets have shown to be more efficient
than many other methods. Using the Haar wavelet transform, these huge data sets
are transformed to considerably smaller representations, which are then
transmitted over the network at higher speeds.
1.8 Related Works:
The term Watermark, relating to digital images, first appeared in 1993,
when Tirkel et al. [11] presented two techniques to hide data into images based
into modifications of Least Significant Bits (LSB) of the pixel values. Regarding
the domain in which information is embedded in the image; watermarking
techniques can be classified as spatial domain or frequency domain techniques.
- E. Koch & J. Zhao [12] present a hidden label approach for identifying the
ownership and distribution of multimedia information (image or video data) in
digital networked environment. A method using a JPEG model based,
frequency hopped, randomly sequenced pulse position modulated code
(RSPPMC) is described. This method supports robustness of embedded labels
against several damaging possibilities such as lossy data compression, low pass
filtering and/or color space conversion.
Tewfik, et al. [13] have proposed a technique to find the best wavelet basis
by maximizing the L
2
-norm of the wavelet approximated signal. Also, Caglar, et
al. [14] have proposed techniques for designing wavelets, which are optimal in the
statistical sense. The complexity of these algorithms increases considerably with
the filter order.
- The performance of wavelet-based coding also depends on the wavelet
decomposition structure. Ramchandran, et al. [18] have proposed a technique,
based on Lagrangian optimization, to find the best basis subtree. This technique
minimizes the global distortion for a given bit-rate. However, this algorithm is
computationally expensive.
For moments related works are:
The original work on moment invariants was done by Hu [19]. He derived
equations for seven quantities invariant to rotation, translation and scaling. These
quantities were calculated by combining moments of the image. Since then there
has been a lot of work on both deriving different types of invariants, and using
invariant moments for image recognition. Some examples include:
in addition to deriving moment invariants, Hu [19] gives an example of their use
in the recognition of Latin characters, but concluded more invariants were needed
to achieve acceptable performance.
Mamistvalov made some corrections to Hus work [20], and also generalizes this
work to the n-dimensional case .
Zernike [21] introduces a set of complex polynomials that forms a complete
orthogonal set over the interior of a unit circle. Teague [22] then introduces the
idea of projecting the image function onto orthogonal polynomials. Teague also
describes the projection of the image function onto the Zernike basis set
mentioned above to produce Zernike moments. These are invariant with respect to
rotation. In comparison, Hu moments are not orthogonal, so there is redundancy in
the information they capture.
Flusser and Suk [7] derive a new set of moment invariants that were
invariant under affine (linear) transformations. They can therefore handle
character and word slant, but not non-linear distortion such as rotation.
1.9 Aim of The Thesis:
The aim of this thesis is to design and implement an image protection
system using the watermark technique. The proposed system will use the
watermark string as a mark converted to the image for extracting the moments
features between the original decomposed image (decomposed by using Haar
wavelet transform) and the watermark string. The moments values will be
embedded into the original image as a protect mark.
The use of the wavelet transformation (features and characteristics) and
thresholding helps to determine the best positions for hiding the moments values
in the original decomposed image. Also, the positions to hide data of secret image
into host image should be selected to yield as best as possible measurements of
quality of image.
1.10 Thesis Outline:
The thesis consists of five chapters, these are:
The first chapter is an introduction to the subject.
Chapter two, covers the theoretical background about watermarking,
including the importance of digital watermarking, watermarking terminology,
watermarking types, properties, and applications, watermark attacks and finally
some significant known attacks.
Chapter three, gives theoretical background about moments calculations:
types, features, and characteristics. Also, this chapter discusses the wavelet
transform theory and method.
Chapter Four describes the design and implementation of the proposed
system and how it works.
Finally chapter five contains the conclusions and some suggestions for
future work.
Chapter Two
Watermarking Concepts
Chapter Two
Watermarking Concepts
Introduction
The digital representation of multimedia documents has become very
popular in last decade .the success of digital technology is largely due to the
capabilities of efficient transmission, storage and perfect copying. However,
especially the last feature leads to serve problems because unauthorized copying is
also simplified. One approach to combat this problem is to mark a digital
document such that a copyright can be proven or the distribution path can be
traced.
Watermarking has been considered for many copy prevention and copyright protection
applications. In copy prevention, the watermark may be used to inform software or hardware
devices that copying should be restricted. In copyright protection, the watermark may be used
to identify the copyright holder and ensure proper payment of royalties.
Although copy prevention and copyright protection have been major driving
forces behind research in the watermarking field, there are a number of other
applications for which watermarking has been used or suggested. [14, 16]
Importance of Digital Watermarking
The sudden increase in watermarking interest is most likely due to the
increase in concern over copyright protection of content. The Internet is an
excellent distribution system for digital media because it is inexpensive, eliminates
warehousing ad stock, and delivery is almost instantaneous. However content
owners also see a high risk of piracy.
The first technology content owners turn to is cryptography. Cryptography
can protect content in transit, but once decrypted, then the content has no further
protection. Thus, there is a strong need for an alternative or complement to
cryptography:
Watermarking has the potential to fulfill this need because it places
information within the content where it is never removed during normal usage.
Watermarking is distinguished from other techniques in three importance
ways. First, watermarks are imperceptible. Second, watermarks are inseparable
from the works in which they are embedded. Finally, watermarks undergo the
same transformation as the works. These three attributes that make watermarking
invaluable for certain applications. [4]
Basic Watermarking Principles
All watermarking methods share the same generic building blocks: a
watermark embedding system and a watermark recovery system. Figure (2.1)
shows the generic watermark embedding process. [3]
The input to the scheme is the watermark, the original digital object and an
optional public or secret key. The watermark can be of any nature such as a
number, text, or an image [3]. The goal of the secret key is to make the watermark
robust against removal or replacement. Ideally the watermark can neither be read
nor removed without knowing this key. In some applications, the key is known by
anyone: it is called unrestricted (public watermark). The output of the
watermarking scheme is the watermarked object. [16]
Watermarked Object
Original Object O
Digital
Watermarking
Watermark w
Secret /public
key K
The generic watermark recovery process is depicted in Figure (2.2). Inputs
to the scheme are the watermarked object, the secret or public key, and depending
on the method, the original object and/or the original watermark[23].
Watermarking Terminology:
Several names have been coined for watermarking techniques. The terms
are often confused, and therefore it is necessary to clarify the differences:
1. Visible Watermark: are visual patterns, which are inserted into or overlaid on
images (video, text,). Visible digital watermarks are designed to be persistent in
viewing, printing or subsequent retransmission or dissemination. They are more
overt means of discouraging theft and unauthorized use both by reducing the
commercial value of a document and making it obvious to the criminally inclined
that the documents ownership has been definitively established .[3,12]
Figure (2.1) Generic digital watermark embedding scheme
Watermark
Detection
Watermark or Confidence Measure Object
Watermark W and /Or
Original Object
Test Object O
Secret /public
key K
Figure (2.2) Generic digital watermark embedding scheme
2. Invisible Watermarks: are designed to be imperceptible under normal viewing (or
listening) conditions, this type increase the likelihood of prosecution after the theft
has occurred. These watermarks should therefore not be detectable to thieves.
Otherwise they would try to remove it, however they should be easily detectable
and removable by authorized users.[12,17]
3. Fingerprinting and Labeling: are terms that denote special applications of
watermarking. Fingerprinting means watermarking where the embedded
information is either a unique code specifying the author or originator of the cover-
data, or a unique code out of a series of codes specifying the recipient of the data.
Labeling means watermarking where the embedded data may contain any
information of interest. [3]
4. Bitstream Watermarking: is sometimes used for watermarking of compressed data,
for example compressed video. [1]
Watermarking Types: [3, 14, 23, 29]
Three types of watermarking systems can be identified. Their difference is in
the nature of inputs and outputs.
1. Private Watermarking (also called non blind watermarking) systems
require at least the original data. A private watermark is one embedded
using a secret key. The key acts as a selection channel, engineering
robustness through the secrecy of this information.
2. Semiprivate Watermarking (or semiblind watermarking) potential
applications of semiprivate watermarking are to prove ownership, copy
control in applications such as digital versatile (video) disc (DVD).
3. Public Watermarking (referred to as blind or oblivious watermarking)
remains the most challenging problem since it requires neither the secret
original nor the embedded watermark. Indeed such system really extracts
bits of information (the watermark) from the marked object.
Watermarking Applications:
Watermarking can be used in a wide variety of applications. We will describe
several applications that can be implemented with watermarking:
1. Broadcasting Monitoring :
Watermarking is an obvious alternative method of coding identification
information for active monitoring .It has the advantage of existing within the
content itself, rather than exploiting a particular segment of the broadcast signal,
and is therefore completely compatible with the installed base of broadcast
equipment, including both digital and analog transmission. There is also a concern,
especially on the part of content creators, that the watermark may degrade the
visual or audio quality of the work. [4]
2. Owner Identification :
Because watermark can be made both imperceptible and inseparable from the
work that contains them, they are likely to be superior to text for owner
identification. If users of works are supplied with watermark detectors, they should
be able to identify the owner of a watermarked work, even after the work has been
modified in ways that would remove a textual copyright notice. [14, 6]
3. Proof Of Ownership :
Today, the modern digital watermark is a wide spread method that makes a
published work unique so that it can be identified automatically. To achieve the
level of security required for proof of ownership, it is probably necessary to
restrict the availability of the detector. When an adversary does not have a detector
and with the help of an unsuspicious mark, removal of a watermark can be made
extremely difficult and pirates can easily and inexpensively be caught and
sentenced. [25, 14]
4. Transaction Tracking :
In this application of watermarking, the watermark records one or more
transactions that have taken place in the history of the copy of a work in which it is
embedded. In literature on transaction tracking, the person responsible for misuse
of a work is sometimes referred as a traitor, whereas a person who receives the
work from a traitor is a pirate. [3, 4]
5. Content Authentication :
In authentication applications, the objective is to detect modifications of the
data. An exact authentication system seeks to verify that a work has not been
changed at all. This can be achieved by a low-level robustness method called
fragile watermarks. A selective authentication system seeks to verify that a work
has not been modified by any of a predefined set of illegitimate distortions, the
approach designed to do this is called semi-fragile watermarks.
Properties of Watermarking:
Watermarking systems can be characterized by a number of properties. The
relative importance of each property is dependent on the requirement of the
application and the role the watermark will play. some of these properties are
embedding effectiveness, transparency, fidelity, data payload, blind or informed
detection, false positive rate, robustness, security, key, and cost.
1. Transparency:
Refers to whether the watermark is perceptible or imperceptible to a human.
Imperceptible watermarks are used such that the content appears the same after the
watermarking process has been applied. Alternatively, perceptible watermarks are
intentionally left visible-- to some degree--to the human sensory organ. [5]
2. Embedding Effectiveness:
A watermarking work is a work that when input to a detector results in
appositive detection .with this definition of watermarked works, the effectiveness
of a watermarking system is the probability that the output of the embedder will be
watermarked. [4]
3. Fidelity:
In general, the fidelity of a watermarking system refers to the perceptual
similarity between the original and watermarked versions of the cover work. [4]
4. Data Payload:
Data pay load refers to the number of bits a watermark encodes within a unit
of time or within a work. [14]
5. Blind Or Informed Detection:
Informed detector refers to a detector that requires access to the original,
unwatermarked work. This term can also refer to detectors that require only some
information derived from the original work. [16]
6. False Positive Rate:
A false positive is the detection of a watermark in a work that does not
actually contain one. When we talk of the false positive we expect the watermark
to occur in a given number of runs of the detector. [14]
7. Robustness:
Robustness refers to the ability to detect the watermark after common signal
processing operations. Not all watermarking applications require robustness to all
possible signal processing operations. Rather, a watermark need only survive the
common signal processing operations likely to occur between the time of
embedding and the time of detection. Clearly this is application dependent. [3, 14]
8. Security:
A security of a watermark refers to its ability to resist hostile attacks. A
hostile attack is any process specifically intended to thwart the watermark purpose.
This is a description of how easy it is to intentionally remove a watermark
referred to as an attack. These attacks refer to deletion, modification or burying of
the watermark in another illicit one. In the case of imperceptible watermarks, this
usually requires knowledge of embedding algorithm used. [18]
9. keys:
Watermark algorithms can be designed to use secret keys in a manner similar
to that in spread spectrum. Ideally, it should not be possible to detect the presence
of a watermark in a work without knowledge of the key even if the watermarking
algorithm is known. It is often desirable to use both forms of keys in a
watermarking system. That is, messages are first encrypted using one key, and
then embedded using a different key. [26]
10.Cost:
The economics of deploying watermark embedders and detectors can be
extremely complicated and depends on the business models involved. From a
technological point of view, the principal issues of concern are the speed with
which embedding and detection must be performed and the number of embedders
and detectors that must be deployed. Other issues include whether the detectors
and embedders are to be implemented as special-purpose hardware devices or as
software applications. In general, the more numerous a device needs to be for a
given application the less it must cost. [27]
Watermarking attacks:
Watermarking attack is the art to remove or disable the watermark. An
attacker wants to eliminate (or degrade) the effectiveness of the content owners
mark, which was inserted to protect the owners claims, and control the
watermarked content.
The types of attacks fall into three broad categories: [28]
- Unauthorized removal: a form of attack in which an adversary, who should
not be permitted to remove watermarks, nevertheless succeeds in removing
one. This can take the form of either a masking attack or an elimination
attack.
- Unauthorized embedding: a form of attack in which an adversary, who should
not be permitted to embed valid watermarks, nevertheless succeeds in
embedding one.
- Unauthorized detection: a form of attack in which an adversary, who should
not be permitted to detect and/or decode watermark, nevertheless succeeds in
detecting or decoding one.
- Unauthorized removal and embedding are referred to as active attacks
because these attacks modify the cover work. Unauthorized detection does
not modify the cover work and is therefore referred to as a passive attack.
Some Significant Known Attacks: [28, 29]
There are a number of known attacks on the security of watermarking
systems.
1 Scrambling Attacks: is a system level attack in which the samples of a work
are scrambled prior to presentation to a watermark detector and then
subsequently descrambled. The degree of scrambling necessary depends on the
detection strategy. The only constraint is that the scrambling be invertible or
near invertible. A near invertible or lossy scrambling attack should result in a
work that is perceptually similar to the watermarked work.
A well-known scrambling attack is the mosaic attack, in which an image is broken
into many small rectangular patches, each too small for reliable watermark
detection. More general scrambling attacks require the receiver of the pirated
works to obtain a descrambling device or program.
2 Pathological Distortions: any process that maintains the fidelity of the work
could be used by an adversary to circumvent the detector by masking or
eliminating the watermark. The two most common pathological distortions are:
* Synchronization Attacks.
* Linear Filtering and Noise Removal Attacks.
* Copy Attacks: A copy attack occurs when an adversary copies a watermark
from one work to another. It is form of unauthorized embedding. There is a
particular method that implement copy attack. It depends on being able to obtain a
reasonable approximation of the original work. However, depending on the
watermarking algorithms, there can be other ways of performing a copy attack that
do not involve reconstructing the original. A possible approach to countering copy
attacks is to use cryptographic signatures that link the watermark to the cover
work.
* Ambiguity attacks: Ambiguity attacks create the appearance that a watermark
has been embedded in a work when in fact no such embedding has taken place. An
adversary can use this attack to claim ownership of a distributed work or even the
original work. As such ambiguity attacks can be considered a form of
unauthorized embedding.
* Ambiguity attacks with informed detection:
The Ambiguity attack works against systems that use an informed detector.
The adversary defines his fake watermark to be randomly generated reference
pattern. He then subtracts this pattern from the watermarked work that the original
has distributed, to create his fake original.
Thus, a situation is created in which both the original owner and the adversary can
make equal claims of ownership.
Chapter Three
Moments and Wavelet for Images
Analysis
Chapter Three
Moments and Wavelet for Images Analysis
3.1 Introduction
In general, moments describe numeric quantities at some distance from a
reference point or axis[15]. The operation of the image feature vector extraction by
moments is one of the common techniques used these days, where each moment
order has different information for the same image. These moments are also
divided into orthogonal (e.g. Zernike and Legendre), non orthogonal such as
Regular moments, and Complex moments. The theory of moments provides an
interesting and sometimes useful alternative for series expansions for representing
objects and shapes[30].
The use of moments for image analysis is straightforward if we consider a
color or gray level image segment as a two-dimensional density distribution
function. In this way, moments may be used to characterize an image segment and
extract properties that have analogies in statistics[15].
Operations such as rotation, translation, scaling, and reflection may exist for each
image. They are also called transformations. These transformations cause changes
for each order of image moments. The solutions were introduced to keep the
moments constant or invariants, which are called moment invariants.
3.2 Moment Descriptors
Moment descriptors (moment invariants) are used in many pattern
recognition applications.[16,31] The idea of using moments in shape recognition
gained prominence in 1961, when Hu[19] derived a set of invariants using the
theory of algebraic invariants[8].
Image or shape feature invariants remain unchanged if that image or shape
undergoes any combination of the following changes:-
1. Change of size ( Scale )
2. Change of position ( Translation )
3. Change of orientation ( Rotation )
4. Reflection
The moment invariants are very useful way for extracting features from two-
dimensional images[13].
The moment invariants can be subdivided into skew and true moment
invariants, where the skew moment invariants are invariant under change of size,
translation, and rotation only but the true moment invariants are invariant under all
of the previous changes including reflection. The diagram in Fig. (3.1) shows the
categorization of the moment invariants.
Fig. (3.1) Classification of Moment Invariants
Hu describes how fundamental transformations such as translation, rotation,
and scale change could be achieved with the moment image representation.[32] He
introduces the concept of moment invariants, which are nonlinear absolute
combinations of moment values ( Regular Moments ) that are invariant to image
rotation[ 9,10,1]. His observations are based on the theories of algebraic invariants
which deal with the properties of certain classes of algebraic expressions that
remain invariant under general linear transformations.
3.2.1 Geometric Moments [7,8,9,10]
1. Regular Moments (RM)
The definition of the Regular moments RM has the form of the projection of
the f(x,y) function onto the nominal x
p
y
q
. Unfortunately, the basis set xpyq is not
orthogonal.
Regular moments have by far been the most popular type of moments[3].
Similar to definition of moments from classical mechanics, the two dimension (p +
q)
th
order moments of an image irradiance ( continuous image intensity function )
f(x , y) are defined by[3],[12],[18],[23],[24],[32] :

where:
p , q = 0, 1, 2,
The two-dimensional moment for a (M N ) discretized image, f(x ,y), i.e.
the digital images, the integrals are replaced by summations and Mpq becomes
The characteristic function of f(x,y) is defined as its conjugate Fourier
transform[1],[11].
where F(
1
,
2
) is a continuous function and may be expanded as a power series in

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

You might also like