Training Report

Published on March 2017 | Categories: Documents | Downloads: 27 | Comments: 0 | Views: 179
of 42
Download PDF   Embed   Report

Comments

Content

CHAPTER 1 INTRODUCTION 1.1 GENERAL
In recent years, the distribution of works of art, including pictures, music, video and textual documents, has become easier. With the widespread and increasing use of the Internet, digital forms of these media (still images, audio, video, text) are easily accessible. This is clearly advantageous, in that it is easier to market and sell one's works of art. However, this same property threatens copyright protection. Digital documents are easy to copy and distribute, allowing for pirating. There are a number of methods for protecting ownership. One of these is known as digital watermarking. The history of watermark dates back to the 13th century. Watermarks were used to indicate the paper brand and the mill that produced it in Italy. By the 18th century watermarks began to be used as anticounterfeiting measures on money and other documents and in 1995 interest in digital watermarking began to mushroom. Intense research has been carried out in this field for the past few years which has led to the discovery of various algorithms. Throughout this report some of these techniques are discussed and one such technique is implemented. Information hiding can be mainly divided into three processes-cryptography, stenography and watermarks. Cryptography is the process of converting information to an unintelligible form so that only the authorized person with the key can decipher it. As many advances were made in the field of communication it became rather simple to decrypt a cipher text. Hence more sophisticated methods were designed to offer better security than what cryptography could offer. This led to the discovery of stenography and watermarking. Stenography is the process of hiding information over a cover object such that the hidden information cannot be perceived by the user. Thus even the existence of secret information is not known to the attacker. Watermarking is closely related to stenography, but in watermarking the hidden information is usually related to the cover object. Hence it is mainly used for copyright protection and owner authentication. A digital watermark is a digital signal or pattern inserted into digital content. The digital content could be a still image, an audio clip, a video clip, a text document, or
1

some form of digital data that the creator or owner would like to protect. The main purpose of the watermark is to identify who the owner of the digital data is, but it can also identify the intended recipient.

1.2 PROJECT GOAL
The goal of the project is to construct an introductory tutorial on the subject of watermarking, mainly focused on embedding image (digital) data in digital images. Additionally, the tutorial walks through a watermarking program code and examples.

1.3 MOTIVATION
The primary reason for selecting watermarking among the list of possible project topics was due to the unfamiliarity of the word that twigged an interest in the subject. Another motivation for researching the topic was after reading an online article in the USA Today titled “Terror groups hide behind Web encryption” that claims terrorists and, in particular, Osama bin Laden and the al-Qaida network, may be using steganography and watermarking to communicate with each other in planning

terrorist attacks. It is thought that images with hidden messages are placed on bulletin boards or dead drops for other terrorists to pick up and retrieve hidden messages. Moreover looking at the currency notes and finding Gandhi ji’s image on left side too, raised the interest of studying and working on the project.

2

CHAPTER 2 COMPANY PROFILE 2.1 INTRODUCTION

DUCAT TECHNOLOGIES (A-43 & A-52, Sector-16, Noida-201301, (U.P.) INDIA) is one of the leading global providers of Information Technology Services and Business Solutions. Its vision is to achieve global IT services leadership in providing value-added high quality IT solutions to their clients in selected horizontal and vertical segments, by combining technology skills, domain expertise, process focus and a commitment to long-term client relationships. It has vast experience in system and application development projects, across all major software platforms and environments.It has major software competency centres throughout National Capital Region (NCR), with its professionals employed on onsite as well as offshore projects. It spends a significant part of its revenue on training, ensuring that its employees are constantly updated on new technologies and skills. Committed to quality, it adds value to client businesses through well-established and structured methodologies, tools and techniques. DUCAT TECHNOLOGIES is AN ISO 9001:2000 certified Company. SOLUTION LANDSCAPE Services: Application Development and Maintenance, Infrastructure Management Services Competency Centres: Enterprises Application Solution, Quality Assurance, Embedded Technologies. SERVICES Application Development & Maintenance DUCAT TECHNOLOGIES is a recognized leader in the offshore industry with core competency in Application Development and Maintenance (ADM) services on a Fixed Price, SLA Model.

3

Application Development Services DUCAT TECHNOLOGIES delivers sophisticated application development

methodologies and highly effective Prototype-driven Iterative and Incremental Application Development approaches. These include: Product Development Customised Development New Application Development Rapid Application Development EMBEDDED SOFTWARE Embedded Technology Solutions practice focuses on development of software that embedded into products like cameras, handsets, PDAs, ovens, printers, scanners, POS devices, DVDs and MP3 players, play stations, vehicle and car controllers, elevator controllers, blood analyzers and others. The solutions developed involve deep expertise in Real-Time Operating Systems (RTOS) based boards, device drivers, middleware integration, modeling & simulation tools. has successfully supported world leading Fortune 1000 companies, tool and real-time software vendors, and tier1 OEMs with long relationships for services like research & evaluation, design & development, sustenance & maintenance and QA & testing. OFFSHORE DEVELOPMENT CENTRES The DUCAT TECHNOLOGIES Offshore model goes beyond simply executing software development projects from our offshore facilities. The ODC as opposed to a mere offshore 'projects' approach, serves as a virtual and seamless extension of information system facilities for our customers. The DUCAT TECHNOLOGIES ODC model is geared towards providing better flexibility and scalability options for our customers. Specifically the ODCs offer: An exclusive facility with higher degree of physical and network security. Customized business continuity and disaster recovery plans. Provision of more efficient infrastructure and dedicated resources. Retention of customer specific Business, Process, and Architecture knowledge thru a set of key long-term resources. Flexible programming pool to meet the ever-changing technology needs. Option to augment and reduce resources to meet the sudden and unplanned peaks
4

and troughs in resource requirements. Joint Program Management with customer to ensure commitment to the engagement. Commercial arrangement T&M or Fixed Price SLA based under a broad master Services Agreement.

2.2 COURSES OFFERED BY DUCAT:JAVA TECHNOLOGY DATA WAREHOUSING MICROSOFT TECHNOLOGY VLSI TECHNOLOGY PHP & PHP++ SYSTEM ADOBE FLEX-3.0 CAD COURSES SE-PD (PERSONALITY DEV.) COMPUTING IBM MAINFRAME WEB/GRAPHICS/ANIMATION RED HAT LINUX(6.0) / RCVA I-PHONE HR GENERALIST APACHE HADOOP ERP ORACLE PLC SCADA MATLAB ANDROID C & C++ LANGUAGE CLOUD SAS SQT SEO NETWORKING EMBEDDED

5

2.3 FLOW CHART OF THE PROCESS AT THE ORGANISATION

6

CHAPTER 3 IDENTIFICATION OF PROJECT 3.1 INTRODUCTION
Digital watermarking is the process of inserting a digital signal or pattern (indicative of the owner of the content) into digital content. The signal known as a watermark, can be used later to identify the owner of the work, to authenticate the content, and to trace illegal copies of the work. Watermarks of varying degrees of obtrusiveness are added to presentation media as a guarantee of authenticity, quality, ownership, and source. To be effective in its purpose, a watermark should adhere to a few requirements. In particular, it should be robust, and transparent. The media of focus in this paper is the still image. There are a variety of image watermarking techniques, falling into 2 main categories, depending on in which domain the watermark is constructed. Digital Watermarking contains the modules: * Text on images * Image on image Digital watermarking is a technology for embedding various types of information in digital content. In general, information for protecting copyrights and proving the validity of data is embedded as a watermark. A digital watermark is a digital signal or pattern inserted into digital content. The digital content could be a still image, an audio clip, a video clip, a text document, or some form of digital data that the creator or owner would like to protect. The main purpose of the watermark is to identify who the owner of the digital data is, but it can also identify the intended recipient. Digital watermarks are added to images or audio data in such a way that they are invisible or inaudible by human eye or ear. Furthermore, they can be embedded in content with a variety of file formats. Digital watermarking is the content protection method for the multimedia era. To be effective in the protection of the ownership of intellectual property, the invisibly watermarked document should satisfy several criteria: 1. The watermark must be difficult or impossible to remove, at least without visibly degrading the original image.

7

2. The watermark must survive image modifications that are common to typical image-processing applications (e.g., scaling, color requantization, dithering, cropping, and image compression). 3. An invisible watermark should be imperceptible so as not to affect the experience of viewing the image. 4. For some invisible watermarking applications, watermarks should be readily detectable by the proper authorities, even if imperceptible to the average observer. Such decidability without requiring the recovery of property and subsequent prosecution. Stenography is the process of hiding information over a cover object such that the hidden information cannot be perceived by the user. Watermarking is closely related to steganography, but in watermarking the hidden information is usually related to the cover object. Hence it is mainly used for copyright protection and owner authentication. Figure explains how watermarking is derived from steganography.

Fig.3.1 Types of Steganography

3.2 PRINCIPAL OF WATER MARKING
A watermarking system is usually divided into three distinct steps, embedding, attack and detection. In embedding, an algorithm accepts the host and the data to be embedded and produces a watermarked signal. The watermarked signal is then transmitted or stored, usually transmitted to another person. If this person makes a

8

modification, this is called an attack. There are many possible attacks. Detection is an algorithm which is applied to the attacked signal to attempt to extract the watermark from it. If the signal was not modified during transmission, then the watermark is still present and it can be extracted. watermarking process. Figure shows the basic block diagram of

Fig 3.2 Watermarking block diagram

9

CHAPTER 4 IMPLEMENTATION DETAIL 4.1 DIGITAL IMAGE PROCESSING
Image processing involves changing the nature of an image in order to either 1. Improve its pictorial information for human interpretation, 2. Render it more suitable for autonomous machine perception We shall be concerned with digital image processing , which involves using a computer to change the nature of a digital image . It is necessary to realize that these two aspects represent two separate but equally important aspects of image processing. A procedure which satisfies condition(1) a procedure whi ch makes an image “look better” -may be the very worst procedure for satisfying condition (2). Humans like their images to be sharp, clear and detailed; machines prefer their images to be simple and uncluttered. Examples include:     Enhancing the edges of an image to make it appear sharper. Removing “noise” from an image; noise being random errors in the image. Removing motion blur from an image. Obtaining the edges of an image.

A digital image can be considered as a large array of discrete dots, each of which has a brightness associated with i t . T h e s e d o t s a r e c a l l e d picture elements, o r m o r e s i m p l y pixels. T h e p i x e l s s u r r o u n d i n g a g i v e n pixel constitute its neighbourhood.

Fig 4.1 Pixels, with neighbourhood

10

4.1.1 ASPECTS OF IMAGE PROCESSING It is convenient to subdivide different image processing algorithms into broad subclasses. There are different algorithms for different tasks and problems, and often we would like to distinguish the nature of the task at hand. IMAGE ENHANCEMENT This refers to processing an image so that the result is more suitable for a particular application. Examples include:     sharpening or de-blurring an out of focus image, highlighting edges improving image contrast, or brightening an image, removing noise.

IMAGE RESTORATION This may be considered as reversing the da mage done to an i m a g e b y a known cause, for example:    removing of blur caused by linear motion, removal of optical distortions, Removing periodic interference.

IMAGE SEGMENTATION This  involves subdividing an image into constituent parts, or isolating

certain aspects of an image: finding lines, circles, or particular shapes in an image, in an aerial photograph, identifying cars, trees, buildings, or roads.



4.1.2 DIFFERENT TYPES OF IMAGE FORMATS
JPEG/JFIF JPEG is a compression method. JPEG-compressed images are usually stored in the JFIF file format. JPEG compression is (in most cases) lossy compression. The JPEG/JFIF filename extension is JPG or JPEG. Nearly every digital camera can save images in the JPEG/JFIF format, which supports 8-bit grayscale images and 24-bit color images (8 bits each for red, green, and blue). JPEG applies lossy compression to images, which can result in a significant reduction of the file size

11

Exif The Exif format is a file standard similar to the JFIF format with TIFF extensions; it is incorporated in the JPEG-writing software used in most cameras. TIFF The TIFF (Tagged Image File Format) format is a flexible format that normally saves 8 bits or 16 bits per colour (red, green, blue) for 24-bit and 48-bit totals, respectively, usually using either the TIFF or TIF filename extension. TIFF's flexibility can be both an advantage and disadvantage, since a reader that reads every type of TIFF file does not exist. TIFFs can be lossy and lossless; some offer relatively good lossless compression for bi-level (black& white) images. GIF GIF (Graphics Interchange Format) is limited to an 8-bit palette, or 256 colors. This makes the GIF format suitable for storing graphics with relatively few colors such as simple diagrams, shapes, logos and cartoon style images. The GIF format supports animation and is still widely used to provide image animation effects. It also uses a lossless compression that is more effective when large areas have a single color, and ineffective for detailed images. BMP The BMP file format (Windows bitmap) handles graphics files within the Microsoft Windows OS. Typically, BMP files are uncompressed, hence they are large; the advantage is their simplicity and wide acceptance in Windows programs. PNG The PNG (Portable Network Graphics) file format was created as the free, opensource successor to GIF. The PNG file format supports 8 bit paletted images (with optional transparency for all palette colours) and 24 bit true colour (16 million colours) or 48 bit true colour with and without alpha channel - while GIF supports only 256 colours and a single transparent colour. Compared to JPEG, PNG excels when the image has large, uniformly coloured areas. Thus lossless PNG format is best suited for pictures still under edition - and the lossy formats, like JPEG, are best for the final distribution of photographic images, because in this case JPG files are usually smaller than PNG files.

12

4.1.3 TYPES OF DIGITAL IMAGES
There are four basic types of images: BINARY Each pixel is just black or white. Since there are only two possible values for each pixel, w e o n l y n e e d o n e b i t p e r p i x e l . S u c h i m a g e s c a n t h e r e f o r e b e v e r y e f f i c i e n t i n t e r m s o f storage. Images for which a binary representation may be suitable include text (printed or handwriting), fingerprints, or architectural plans.

Fig 4.2 A binary image

GREYSCALE E a c h p i x e l i s a s h a d e o f g r e y, n o r m a l l y f r o m 0 (black) to 255 ( w h i t e ) . T h i s r a n g e means that each pixel can be represented by eight bits, or exactly one byte. This is a very natural range for image file handling. Other greyscale ranges are used, but generally they area power of 2. Such images arise in medicine (X-rays), images of printed works, and indeed 256 different grey levels are sufficient for the re cognition of most natural objects.

13

Fig 4.3 A grey scale image

TRUE COLOUR OR RGB Here each pixel has a particular colour; that colour being described by the amount of red, green and blue in it. If each of these components has a range 0-255, this gives a t o t a l o f 2 5 5 3 = 1 6 , 7 7 7 , 2 1 6 different possible colours in the image. This is enough colours for any image. Since the total number of bits required for each pixel is 24, such images are also called 24-bit colour images. Such an image may be considered as consisting of a “stack” of three matrices; representing the red, green and blue values for each pixel. This means that for every pixel there correspond three values.

14

Fig 4.4 A true colour image

INDEXED Most colour images only have a small subset of the more than sixteen million possible colours. For convenience of storage and file handling, the image has an associated colour map, or colour palette, w h i c h i s s i m p l y a l i s t o f a l l t h e c o l o u r s u s e d i n t h a t i m a g e . E a c h p i x e l h a s a value which does not give its colour (as for an RGB image), but an index to the colour in the map. It is convenient if an image has colours or less, for then the index values will only require one byte each to store. Some image file formats (for example, GIF), allow only colours or fewer in each image, for precisely this reason.

15

Fig 4.5 An indexed colour image

4.2 DIGITAL WATERMARKING
Digital watermarking is the process of inserting a digital signal or pattern (indicative of the owner of the content) into digital content. The signal, known as a watermark, can be used later to identify the owner of the work, to authenticate the content, and to trace illegal copies of the work. Watermarks of varying degrees of obtrusiveness are added to presentation media as a guarantee of authenticity, quality, ownership, and source. To be effective in its purpose, a watermark should adhere to a few requirements. In particular, it should be robust, and transparent. Robustness requires that it be able to survive any alterations or distortions that the watermarked content may undergo, including intentional attacks to remove the watermark, and common signal processing alterations used to make the data more efficient to store and transmit. This is so that afterwards, the owner can still be identified. Transparency requires a watermark to be imperceptible so that it does not affect the quality of the content, and makes detection, and therefore removal, by pirates less possible. The media of focus in this paper is the still image. There are a variety of image watermarking techniques, falling into 2 main categories, depending on in which domain the watermark is constructed: the spatial domain (producing spatial watermarks) and the frequency domain (producing spectral watermarks). The effectiveness of a watermark is improved when the technique exploits known properties of the human visual system. These are known as perceptually based

16

watermarking techniques. Within this category, the class of image-adaptive watermarks proves most effective. In conclusion, image watermarking techniques that take advantage of properties of the human visual system, and the characteristics of the image create the most robust and transparent watermarks.

4.2.1 THE DIGITAL WATERMARK
Digital watermarking is a technology for embedding various types of information in digital content. In general, information for protecting copyrights and proving the validity of data is embedded as a watermark. A digital watermark is a digital signal or pattern inserted into digital content. The digital content could be a still image, an audio clip, a video clip, a text document, or some form of digital data that the creator or owner would like to protect. The main purpose of the watermark is to identify who the owner of the digital data is, but it can also identify the intended recipient. Why do we need to embed such information in digital content using digital watermark technology? The Internet boom is one of the reasons. It has become easy to connect to the Internet from home computers and obtain or provide various information using the World Wide Web (WWW). All the information handled on the Internet is provided as digital content. Such digital content can be easily copied in a way that makes the new file indistinguishable from the original. Then the content can be reproduced in large quantities. For example, if paper bank notes or stock certificates could be easily copied and used, trust in their authenticity would greatly be reduced, resulting in a big loss. To prevent this, currencies and stock certificates contain watermarks. These watermarks are one of the methods for preventing counterfeit and illegal use. Digital watermarks apply a similar method to digital content. Watermarked content can prove its origin, thereby protecting copyright. A watermark also discourages piracy by silently and psychologically deterring criminals from making illegal copies.

4.2.2 PRINCIPAL OF DIGITAL WATERMARKS A watermark on a bank note has a different transparency than the rest of the note when a light is shined on it. However, this method is useless in the digital world.

17

Currently there are various techniques for embedding digital watermarks. Basically, they all digitally write desired information directly onto images or audio data in such a manner that the images or audio data are not damaged. Embedding a watermark should not result in a significant increase or reduction in the original data. Digital watermarks are added to images or audio data in such a way that they are invisible or inaudible Ñ unidentifiable by human eye or ear. Furthermore, they can be embedded in content with a variety of file formats. Digital watermarking is the content protection method for the multimedia era.

4.3 THE IMPORTANCE OF DIGITAL WATERMARKS
The Internet has provided worldwide publishing opportunities to creators of various works, including writers, photographers, musicians and artists. However, these same opportunities provide ease of access to these works, which has resulted in pirating. It is easy to duplicate audio and visual files, and is therefore probable that duplication on the Internet occurs without the rightful owners' permission. An example of an area where copyright protection needs to be enforced is in the online music industry. The Recording Industry Association of America (RIAA) says that the value of illegal copies of music that are distributed over the Internet could reach $2 billion a year. Digital watermarking is being recognized as a way for improving this situation. RIAA reports that "record labels see watermarking as a crucial piece of the copy protection system, whether their music is released over the Internet or on DVD-Audio". They are of the opinion that any encryption system can be broken, sooner or later, and that digital watermarking is needed to indicate who the culprit is. Another scenario in which the enforcement of copyright is needed is in newsgathering. When digital cameras are used to snapshot an event, the images must be watermarked as they are captured. This is so that later, image's origin and content can be verified. This suggests that there are many applications that could require image watermarking, including Internet imaging, digital libraries, digital cameras, medical imaging, image and video databases, surveillance imaging, video-on-demand systems, and satellite-delivered video.

18

4.4 DIGITAL WATERMARK TYPES AND TERMS
Watermarks can be visible or invisible:  Visible watermarks are designed to be easily perceived by a viewer (or listener). They clearly identify the owner of the digital data, but should not detract from the content of the data.  Invisible watermarks are designed to be imperceptible under normal viewing (or listening) conditions; more of the current research focuses on this type of watermark than the visible type. Both of these types of watermarks are useful in deterring theft, but they achieve this in different ways. Visible watermarks give an immediate indication of who the owner of the digital work is, and data watermarked with visible watermarks are not of as much usefulness to a potential pirate (because the watermark is visible). Invisible watermarks, on the other hand, 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 by the owners. WATERMARK CAN BE FURTHUR CLASSIFIED AS:  A fragile watermark is embedded in digital data to for the purpose of detecting any changes that have been made to the content of the data. They achieve this because they are distorted, or "broken", easily. Fragile watermarks are applicable in image authentication systems.   Semi-fragile watermarks detect any changes above a user-specified threshold. Robust watermarks are designed to survive "moderate to severe signal processing attacks". Watermarks for images can further be classified into spatial or spectrum watermarks, depending on how they are constructed:  Spatial watermarks are created in the spatial domain of the image, and are embedded directly into the pixels of the image. These usually produce images of high quality, but are not robust to the common image alterations.

19



Spectral (or transform-based) watermarks are incorporated into the image's transform coefficients. The inverse-transformed coefficients form the watermarked data.

Perceptual watermarks are invisible watermarks constructed from techniques that use models of the human visual system to adapt the strength of the watermark to the image content. The most effective of these watermarks are known as imageadaptive watermarks. Finally, blind watermarking techniques are techniques that are able to detect the watermark in a watermarked digital item without use of the original digital item.

4.5 EFFECTIVE DIGITAL WATERMARKS
4.5.1 Features of a Good Watermark

The following are features of a good watermark: 1. It should be difficult or impossible to remove a digital watermark without noticeably degrading the watermarked content. This is to ensure that the copyright information cannot be removed. 2. The watermark should be robust. This means that it should remain in the content after various types of manipulations, both intentional (known as attacks on the watermark) and unintentional (alterations that the digital data item would undergo regardless of whether it contains a watermark or not). These are described below. If the watermark is a fragile watermark, however, it should not remain in the digital data after attacks on it, but should be able to survive certain other alterations (as in the case of images, where it should be able to survive the common image alteration of cropping). 3. The watermark should be perceptually invisible, or transparent. That is, it should be imperceptible (if it is of the invisible type). Embedding the watermark signal in the digital data produces alterations, and these should not degrade the perceived quality of the data. Larger alterations are more robust, and are easier to detect with certainty, but result in greater degradation of the data. 4. It should be easy for the owner or a proper authority to readily detect the watermark. "Such decodability without requiring the original, unwatermarked [digital document or] image would be necessary for efficient recovery of property and subsequent prosecution".
20

Further properties that enhance the effectiveness of a watermarking technique, but which are not requirements are: 5. Hybrid watermarking refers to the embedding of a number of different watermarks in the same digital carrier signal. Hybrid watermarking allows intellectual property rights (IPR) protection, data authentication and data item tracing all in one go. 6. Watermark key: it is beneficial to have a key associated with each watermark that can be used in the production, embedding, and detection of the watermark. It should be a private key, because then if the algorithms to produce, embed and detect the watermark are publicly known, without the key, it is difficult to know what the watermark signal is. The key indicates the owner of the data. It is of interest to identify the properties of a digital data item (the carrier signal) that assist in watermarking: 1. It should have a high level of redundancy. This is so that it can carry a more robust watermark without the watermark being noticed. (A more robust watermark usually requires a larger number of alterations to the carrier signal). 2. It must tolerate at least small, well-defined modifications without changing its semantics.

4.6 PROJECT REQUIREMENTS
4.6.1 Hardware Specification Processor Primary Storage (RAM) Monitor Secondary Storage Key Board Mouse 4.6.2 Software Specification Operating System Design Tools : Windows 2000, Windows 7,Windows 8 : MATLAB R2009 and higher version : Intel Core i3 or its eqivalent : 2GB or Higher : 15” or higher : 160GB or above : Standard 102/104 Keys : Standard PS/2

21

4.7 SOFTWARE DESCRIPTION

MATLAB (matrix laboratory) is a numerical computing environment and fourthgeneration programming language. plotting Developed by MathWorks, data, MATLAB

allows matrix manipulations,

of functions and

implementation

of algorithms, creation of user interfaces, and interfacing with programs written in other languages, including C, C++, Java, and Fortran. Although MATLAB is intended primarily for numerical computing, an optional toolbox uses the MUPAD symbolic engine, allowing access to symbolic

computing capabilities. An additional package, Simulink, adds graphical multidomain simulation and Model-Based Design for dynamic and embedded systems. In 2004, MATLAB had around one million users across industry and academia. MATLAB users come from various backgrounds of engineering, science, and economics. MATLAB is widely used in academic and research institutions as well as industrial enterprises. Key Features


High-level language for numerical computation, visualization, and application development

 

Interactive environment for iterative exploration, design, and problem solving Mathematical functions for linear algebra, statistics, Fourier analysis, filtering, optimization, numerical integration, and solving ordinary differential equations

 

Built-in graphics for visualizing data and tools for creating custom plots Development tools for improving code quality and maintainability and maximizing performance
22

 

Tools for building applications with custom graphical interfaces Functions for integrating MATLAB based algorithms with external applications and languages such as C, Java, .NET, and Microsoft® Excel®

4.8 IMPLEMENTATION
 We first start our project on MATLAB by making a desired GUI. The GUI is made with the help of various inbuilt buttons and fonts and then the figure thus completely made which constitutes our GUI.

Fig 4.6 How to make GUI



After the completion of the GUI, the project can be implemented in two ways as: 1. Image on image 2. Text on image

4.8.1 IMAGE ON IMAGE
23

In case of image on image watermarking if the data file to be retrieved is an image, the provider can embed a watermark for protection purposes. The process allows tolerance to some change, while still maintaining an association with the original image file. Researchers have also developed techniques that embed components of the image within the image. This can help identify portions of the image that may contain unauthorized changes and even help in recovering some of the lost data. Digital watermarking is an easy way of providing image copyright protection. Digital watermark can be a text or picture added to digital image with special image watermarking software or with graphics editors like MS Paint.

Fig 4.7 After browsing original and watermarking image The figure

clearly shows that GUI provides the facility to browse both the original and

watermarking image. After browsing image appears on the screen and further we can continue with watermarking by pressing on the start button.

24

Fig 4.8 8 bit planes of original image

In digital image processing we study that whenever we break a grey image into the bit planes it gets split into 8 bit planes. The figure clearly reflects 8 bit planes.

fig 4.9 8 bit planes of watermarking image

25

Fig 4.10 GUI with water marked image showing water marking

After the start button is pressed, the desired code or programming runs and hence produces the watermarked image on the final tag as shown in the figure.

fig 4.11 Changing the visibility factor by 4.

After changing the visibility factor it proves that watermarking image was hidden behind the original image thus proving watermarking.
26

fig 4.12 Changing the visibility factor by 8.

After changing the visibility factor to 8 it brings the watermarking image completely in front.

4.8.2 TEXT ON IMAGE In case of text on image invisible watermarking, the information is invisible in the picture or video. Typically, the information is text or a logo which identifies the owner of the media. The image on the right has a invisible watermark. The watermark pattern is a graphic provided by you: it can be a logo, text or anything else than can be expressed in a bitmap. Watermarking is applied as derivatives are created. The watermarks are part of the image and cannot be easily removed. (They can be cropped out or Photoshop'ed away, of course, just like anything else in an image).

27

Fig 4.13 Watermarking of Text

In watermarking of text on image the GUI asks the user to enter the text as a input dialogue box.

fig 4.14 Appearance of text after entering in the dialogue box

28

Fig 4.15 Watermarking of text

In the above figure the watermarking of text has been done. The text gets hidden behing the original image and it cannot be seen with the help of visibility factor button as text cannot be broken into 8 bit planes.

4.8.3 OTHER EXAMPLES OF WATERMARKING

Fig 4.16 watermarking on currency

One can find photograph or imprint of Gandhi ji on Indian currency on left side. This is also due to watermarking and is known as visible watermarking.
29

Fig 4.17 image on image visible watermarking

In this figure the girl’s image is also watermarked on the left hand side of the original image. This is also an example of visible watermarking.

Fig 4.18 text on image visible watermarking

In this image the text (love) is watermarked on original image and hence this is also an example of visible watermarking.

30

4.9 ATTACKS ON WATERMARKS           

Lossy Compression: Many compression schemes like JPEG and MPEG can potentially degrade the data’s quality through irretrievable loss of data. Geometric Distortions: include such operations as rotation, translation, scaling and cropping. Common Signal Processing Operations: They include the followings. D/A conversion, A/D conversion Resampling, Requantization, Recompression Linear filtering such as high pass and low pass filtering. Addition of a constant offset to the pixel values Local exchange of pixels other intentional attacks: Printing and Rescanning Watermarking of watermarked image (rewatermarking)

4.10 DIGITAL WATERMARKING APPLICATIONS

Digital watermarking is rapid evolving field, this section identifies digital watermarking applications and provides an overview of digital watermarking capabilities and useful benefits to customers. The various applications are:

1. 2. 3. 4. 5.

Authentication Broadcast Monitoring Copy Prevention Forensic Tracking E-Commerce/Linking

AUTHENTICATION Authentication identifies if content has been altered or falsified. For example digital watermarking can verify authenticity and identify counterfeiting as a second layer of

31

security for encrypted content. The presence of digital watermark and/or continuity of watermark can help ensure that the content has not been altered.

BROADCAST MONITORING Broadcast content is embedded wit a unique identifier, and optionally, distributor information. Detectors are placed at popular markets, where broadcasts are received and processed, resulting in reports to be sent to the owner. COPY PREVENTION Copy prevention helps the digital watermarks to identify whether the content can be copied. It guards against unauthorized duplication.

FORENSIC TRACKING Forensic tracking locates the source of the content. The key advantage of digital watermarking is that it enables tracking of the content to where it leaves an authorized path. E-COMMERCE/LINKING The digital watermarking enables the user to purchase or access information about the content, related content, or items with in the content.

4.11 WATERMARKING SOFTWARE&SREVICES

1. Alpha-Tec: watermarking software for copyright protection and infringement tracking. 2. Digimarc: For document verification, copyright protection, embedded messages and more. 3. Stegnosign: For creating, embedding and detecting watermarks. 4. Signum: Allow digital fingerprints to be embedded into grahics, audio, video etc. 5. MediaSec: Provide software for various media types, partial encryption, and internet tracking.

32

CHAPTER 5 RESULTS AND DISCUSSION
Thus, using Matlab, two types of watermarking schemes are implemented. One is image on image and one is text on image both using invisible watermarking. Digital watermarks have been used in the last few years to protect the ownership of digital data. Various techniques developed make use of the human audio-visual system. Legitimate business and webmasters have nothing to fear from copyright law or new form of on-line enforcement technology found in digital watermarks and tracking services. By using audio files and images only when they have obtained permission of the appropriate owner, webmasters should be free to continue making their sites audio visually appealing. Digital watermarking allows an individual to add hidden copyright notices or other verification messages on image and documents. This is mostly useful for computer painters, designers and banner makers, who send their works to a customer through the Internet for evaluation.

33

REFRENCES
1. Electronics For You 2. www.ewatrmark.com 3. www.altavita.com 4. www.digitalwatermarking.com 5. R.C.Gonzalez Digital and R.E.Woods, Processing, SonsInc., 1994 9. R. Schyndel, A. Tirkel, and C. Osborne, “A Digital Watermark,” Proc. IEEE Int. Conf. on Image Processing, Nov. 1994, vol. II, 10. Jain, Anil K. Fundamentals of Digital Image Processing. New York NY,

Image

Addison-Wesley Publishing company, Inc., 2009 6. A.K.Jain, Fundamentals of Digital Image Processing, Prentice-Hall of India Pvt. Ltd., 1995. 7. http://en.wikipedia.org/wiki/Image _file_formats 8. Gregory A. Baxes. Digital

Englewood Cliffs, NJ: Prentice Hall, 1989. pp. 150-153. 11. N. Ahmed, T. Natarajan, and K. R. Rao. 1974. On image

processing and a discrete cosine transform. IEEE Transactions on Computers C-23(1): 90-93. 12. http://www.inst.eecsberkeley.edu/ ~cs150/documents/ITU656.doc

Image Processing: Principles and Applications . John Wiley &

34

APPENDIX The Program Code
function varargout = watermarking(varargin) % WATERMARKING MATLAB code for watermarking.fig % WATERMARKING, by itself, creates a new WATERMARKING or raises the existing % singleton*. % % H = WATERMARKING returns the handle to a new WATERMARKING or the handle to % the existing singleton*. % % WATERMARKING('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in WATERMARKING.M with the given input arguments. % % WATERMARKING('Property','Value',...) creates a new WATERMARKING or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before watermarking_OpeningFcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to watermarking_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help watermarking % Last Modified by GUIDE v2.5 10-Jul-2013 13:29:51 % Begin initialization code - DO NOT gui_Singleton = 1; gui_State = struct('gui_Name', 'gui_Singleton', 'gui_OpeningFcn', @watermarking_OpeningFcn, ... 'gui_OutputFcn', @watermarking_OutputFcn, ... 'gui_LayoutFcn',
35

EDIT mfilename, ... gui_Singleton, ...

[] , ...

'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before watermarking is made visible. function watermarking_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to watermarking (see VARARGIN) % Choose default command line output for watermarking handles.output = hObject; set(handles.text6,'Visible','Off') axes(handles.ORIGINAL); axis off axes(handles.MODIFIED); axis off axes(handles.FINAL); axis off set(handles.image,'Enable','off') set(handles.text,'Enable','off') set(handles.start,'Enable','off') set(handles.vf,'Enable','off') % Update handles structure guidata(hObject, handles); % UIWAIT makes watermarking wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = watermarking_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure
36

% eventdata of MATLAB % handles GUIDATA)

reserved - to be defined in a future version structure with handles and user data (see

% Get default command line output from handles structure varargout{1} = handles.output; % --- Executes on button press in start. function start_Callback(hObject, eventdata, handles) % hObject handle to start (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) if(handles.x==0) %watertxt(handles.im,handles.msg) axes(handles.FINAL) imshow(im) handles.out=im; else [z,bps]=waterimg(handles.im,handles.imge); axes(handles.FINAL) imshow(z) handles.out=z; handles.bps=bps; end set(handles.vf,'Enable','on') guidata(hObject,handles);

% --- Executes on button press in image. function image_Callback(hObject, eventdata, handles) % hObject handle to image (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) handles.x=1; [file1, path1]=uigetfile({'.*'},'Select an Image File') img=[path1,file1]; handles.imge=imread(img); axes(handles.MODIFIED) imshow(handles.imge) set(handles.text,'Enable','off') set(handles.start,'Enable','on')
37

guidata(hObject,handles) % --- Executes on button press in text. function text_Callback(hObject, eventdata, handles) % hObject handle to text (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) handles.x=0; guidata(hObject,handles) prompt = {'Enter the Text'}; dlg_title = 'TEXT'; num_lines = 1; def = {'hsv'}; answer = inputdlg(prompt,dlg_title,num_lines,def); handles.msg=answer{1}; set(handles.image,'Enable','off') set(handles.start,'Enable','on') set(handles.text6,'Visible','on') set(handles.text6,'String',handles.msg) axes(handles.MODIFIED); cla axis off guidata(hObject,handles) % --- Executes on slider movement. function visibility_Callback(hObject, eventdata, handles) % hObject handle to visibility (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'Value') returns position of slider % get(hObject,'Min') and get(hObject,'Max') to determine range of slider % --- Executes during object creation, after setting all properties. function visibility_CreateFcn(hObject, eventdata, handles) % hObject handle to visibility (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called

38

% Hint: slider controls usually have a light gray background. if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 .9 .9]); end % --- Executes on button press in exit. function exit_Callback(hObject, eventdata, handles) % hObject handle to exit (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close(watermarking); % --- Executes on button press in browseorg. function browseorg_Callback(hObject, eventdata, handles) % hObject handle to browseorg (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) set(handles.image,'Enable','on') set(handles.text,'Enable','on') [file, path]=uigetfile({'.*'},'Select an Image File') imp=[path,file]; handles.im=imread(imp); axes(handles.ORIGINAL) imshow(handles.im) guidata(hObject,handles) % --- Executes on selection change in vf. function vf_Callback(hObject, eventdata, handles) % hObject handle to vf (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) val=get(hObject,'Value'); bps=handles.bps; P8=bps{1}; P7=bps{2}; P6=bps{3}; P5=bps{4}; PP8=bps{5}; PP7=bps{6}; PP6=bps{7}; PP5=bps{8}; % B4=bitshift(C8,4);B3=bitshift(C7,4);B2=bitshift(C6,4);B1= bitshift(C5,4); switch val case 2 F8=PP5*2^0;
39

F7=P8*2^7; F6=P7*2^6; F5=P6*2^5; F4=P5*2^4; F3=PP8*2^3; F2=PP7*2^2; F1=PP6*2^1; z=F1+F2+F3+F4+F5+F6+F7+F8; axes(handles.FINAL) imshow(z) case 3 F8=PP5*2^1; F7=P8*2^0; F6=P7*2^7; F5=P6*2^6; F4=P5*2^5; F3=PP8*2^4; F2=PP7*2^3; F1=PP6*2^2; z=F1+F2+F3+F4+F5+F6+F7+F8; axes(handles.FINAL) imshow(z) case 4 F8=PP5*2^2; F7=P8*2^1; F6=P7*2^0; F5=P6*2^7; F4=P5*2^6; F3=PP8*2^5; F2=PP7*2^4; F1=PP6*2^3; z=F1+F2+F3+F4+F5+F6+F7+F8; axes(handles.FINAL) imshow(z) case 5 F8=PP5*2^3; F7=P8*2^2; F6=P7*2^1; F5=P6*2^0; F4=P5*2^7; F3=PP8*2^6; F2=PP7*2^5; F1=PP6*2^4; z=F1+F2+F3+F4+F5+F6+F7+F8; axes(handles.FINAL) imshow(z) case 6 F8=PP5*2^7; F7=P8*2^3; F6=P7*2^2; F5=P6*2^1;
40

% % % % % % % % % % %

F4=P5*2^0; F3=PP8*2^4; F2=PP7*2^5; F1=PP6*2^6; z=F1+F2+F3+F4+F5+F6+F7+F8; axes(handles.FINAL) imshow(z) case 7 F8=PP5*2^4; F7=P8*2^4; F6=P7*2^3; F5=P6*2^2; F4=P5*2^1; F3=PP8*2^5; F2=PP7*2^6; F1=PP6*2^7; z=F1+F2+F3+F4+F5+F6+F7+F8; axes(handles.FINAL) imshow(z) case 8 F8=PP5*2^4; F7=P8*2^2; F6=P7*2^1; F5=P6*2^0; F4=P5*2^3; F3=PP8*2^6; F2=PP7*2^7; F1=PP6*2^5; z=F1+F2+F3+F4+F5+F6+F7+F8; axes(handles.FINAL) imshow(z) case 9 F4=bitshift(B4,1); F3=bitshift(B3,1); F2=bitshift(B2,1); F1=bitshift(B1,1); F8=bitshift(B8,1); F7=bitshift(B7,1); F6=bitshift(B6,1); F5=bitshift(B5,1); z=F1+F2+F3+F4+F5+F6+F7+F8; axes(handles.FINAL) imshow(z) F8=PP5*2^4; F7=P8*2^3; F6=P7*2^2; F5=P6*2^1; F4=P5*2^0; F3=PP8*2^7; F2=PP7*2^6; F1=PP6*2^5;
41

z=F1+F2+F3+F4+F5+F6+F7+F8; axes(handles.FINAL) imshow(z) end % Hints: contents = cellstr(get(hObject,'String')) returns vf contents as cell array % contents{get(hObject,'Value')} returns selected item from vf % --- Executes during object creation, after setting all properties. function vf_CreateFcn(hObject, eventdata, handles) % hObject handle to vf (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

42

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close