Watermarking using K-means

From MeliWiki
Revision as of 10:53, 3 June 2010 by Georgio (Talk | contribs) (Introduction)

Jump to: navigation, search

Introduction

General information about watermarking

Watermarking is the process of inserting, into a signal, image, video, or other media, either information which is ideally irremovable or information whose removal or alteration is detectable. Watermarks can be classified into two categories, namely visible (such as a logotype) and invisible. One of the main goals of watermarking is authentication and copyright protection.

For copyright protection, the watermark should be difficult to remove. Such watermarks are called robust. An owner can claim ownership if it can be proved that his or her watermark is present in a signal, image or video. Robust watermarks are supposed to be resistant to common media manipulations. For instance, for the case of images, a robust watermark should not be affected by operations, such as rotation, zooming, scaling, blurring, corruption by reasonable levels of noise, and partial cropping, among others, since they retain discernable image content.

For authentication, watermarks should be relatively easily corruptible by manipulation of the media in which they are embedded. Such watermarks are called semi-fragile. Media can be identified as been corrupted or non-authentic, if the inserted watermarks have been removed or significantly altered.


Watermarking techniques

Several watermarking techniques have been proposed in the literature [1]-[5]. Next, the discussion will concentrate on invisible image watermarking. In general, image watermarks can be embedded directly in the image or in a transformed version of the image. An example of a simple watermarking technique is presented next.

An image <math>\mathbf{X}</math> of size <math>M \times N</math> consists of a total of <math>MN</math> pixels. For grayscale images, each pixel can take one of 256 different values, from 0 to 255, where 0 indentifies a black pixel, 255 represents a white pixel, and values between 0 and 255 represent different levels of gray. Since <math>256 = 2^8</math>, a total of 8 bits are needed to express each pixel in binary form, as shown in the table next for a few examples. In the binary representation, the rightmost bit is the least significant.


Table 1: Example of pixel values and corresponding binary representation
Pixel Value Binary Representation
0 00000000
10 00001010
51 00110011
128 10000000
153 10011001
255 11111111