## Description

**Existing System:**

Digital image watermarking is one such technology that has been developed to protect digital images from illegal manipulations. In this author has discussed digital image watermarking algorithms which are based on the discrete wavelet transform have been widely recognized to be more prevalent than others. This is due to the wavelets excellent spatial localization, frequency spread, and multi-resolution characteristics, which are similar to the theoretical models of the human visual system.

Majority of the watermarking algorithms focuses software based approach as an offline processing (i.e. the authentication and copy right protection is happening in captured and stored data values) whereas the hardware based watermarking happens in real time with a custom designed circuitry. Also the software based approach needs a specific processor to run a high level mnemonics code for watermarking algorithms. So the area, speed and power optimization is not possible in software implementation unlike hardware based watermarking.

**Disadvantages:**

- Embedded capacity is less

**Proposed System:**

**Weighted median Prediction:**

In the weighted median operation, the four sets of pixels, base pixel, first neighbor pixel, second neighbor pixel and the third neighbor pixel values are determined first. For every four pixels the first one is to be considered as the base pixel and the pixel left to it is considered to be the third neighbor pixel. Similarly the pixels below the base pixel in the left side are considered as second neighbor and the pixel in diagonal side is marked as first neighbor pixel. The entire process of identification of the three sets of pixels is shown in the Fig-1.

Here the base pixel, first set pixel, second set pixel and the third set pixel values are marked by the label name as ‘0-basepixels’, ‘1-first set pixels’, ‘2-second set pixels’, ‘3-thirs set pixels’ respectively.

For the above 2 X 2 image block calculating the median values using the weighted median as follows

WM ({167,168,240,255}.{1,1,1,1}) =median (167,168,240,255) = 204. In a similar manner the weighted median is calculated for all the three sets of pixels with their corresponding weights. For the first set of median calculation the weight function is {1,1,1,1}.Similarly the weight functions {1,2,1,2} and {2,1,2,1} are used for the median calculation of pixel sets second and third respectively. Finally the calculated median value is replaced in the corresponding value of the pixels.

**Watermarking in Image**

In the watermarking process first the median values of the three sets of the pixels are calculated and replaced by its value. Then the error difference between the original image and median processed image is calculated using the integer transform in equation-1.

E = P’- P; (1)

Those pixels having error difference closest to zero are used to hide the watermark secret data its. For the entire watermarking process we adopt a threshold value (m) associated with each error difference. For those pixels if the error difference is less than or equal to threshold (i.e. |E|<=m) we can hide a secret bit by multiplying the error difference by a factor k (k is considered as 2 here) and adding with the secret data bit. Similarly for those pixels whose predicted values are greater than the error difference (i.e. |E||>m) a constant shifting of magnitude by a factor of (m+1) is carried out uniformly.

**Data path for watermarking**

The watermarking Data path unit consists of two memories (ram or rom) of size host image and secret data. Then a predictor circuit consists of buffer to predict the three sets of pixels along with base pixels. After the predictor circuit median calculator, data path contains a comparator circuit to carry out the sorting operation in ascending order of the pixel intensities to find the median values. Then the difference in error between the original and median predicted value is calculated using a sub tractor circuit. Finally the watermark secret data bits are added to the host using an adder circuit.

**Data path for extraction**

The same data path structure is used for the data extraction process with a slight difference. The difference is the adder circuit is replaced by shifter circuit to retrieve the secret hidden in the host content. Here also a predictor circuit consists of buffer to predict the three sets of pixels along with base pixels. Then comparator based circuit is used to calculated the weighted median operation followed by subtract or circuit to find the error difference. Once again a shifter circuit is used to separate the watermark content from the predicted median watermarked content and restore the original data as such.

**Advantages:**

- Embedded capacity is high

**Software implementation:**

- Modelsim
- Xilinx ISE