18
A. S. Al-Fahoum & M. Yaser International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 248 Reversible Data Hiding Using Contrast Enhancement Approach A. S. Al-Fahoum Hijjawi Faculty for Eng. Tech./Biomedical Sys. & Inform. Eng. Dept. [email protected] Yarmouk University Irbid,21163,Jordan M. Yaser [email protected] Hijjawi Faculty for Eng. Tech./Biomedical Sys. & Inform. Eng. Dept. Yarmouk University Irbid,21163,Jordan Abstract Reverse Data Hiding is a technique used to hide the object's data details. This technique is used to ensure the security and to protect the integrity of the object from any modification by preventing intended and unintended changes. Digital watermarking is a key ingredient to multimedia protection. However, most existing techniques distort the original content as a side effect of image protection. As a way to overcome such distortion, reversible data embedding has recently been introduced and is growing rapidly. In reversible data embedding, the original content can be completely restored after the removal of the watermark. Therefore, it is very practical to protect legal, medical, or other important imagery. In this paper a novel removable (lossless) data hiding technique is proposed. This technique is based on the histogram modification to produce extra space for embedding, and the redundancy in digital images is exploited to achieve a very high embedding capacity. This method has been applied to various standard images. The experimental results have demonstrated a promising outcome and the proposed technique achieved satisfactory and stable performance both on embedding capacity and visual quality. The proposed method capacity is up to 129K bits with PSNR between 42-45dB. The performance is hence better than most exiting reversible data hiding algorithms. Keywords: Reversible Data Hiding, Histogram, Stenography, Performance, Watermarking. 1. INTRODUCTION As multimedia becomes an important form of information exchange, a large number of digital products are created and transmitted via the Internet. One of the characteristics of digital products is that they are very easy to create, to store, to duplicate, to transmit, and to modify. These results in a serious problem because unauthorized use, copy, or modify of the products will also become very easy. How to protect the products in various aspects presents a problem that challenges the academia and the business. Several technologies have been proposed for intellectual property right (IPR) protection [1]. One is encryption. However, conventional encryption and copy protection mechanisms do not fully solve this issue in some applications. Recently, data hiding (watermarking) is proposed as a hopeful method for authentication, fingerprint, security, data mining, and copyright protection [2]. In general, the watermarking algorithm attempts to imperceptibly embed one signal into another. However, even if the presence of the watermark is imperceptible, the embedding process usually introduces irreversible degradation of the original media. The distortion might be very slight, but zooming in on the image to emphasis the details would result in visual perception below what’s acceptable [2-9]. Image data hiding represents a class of processes used to embed the data of secret image into another image which is defined as cover images [10]. The hidden data usually can be a string of

Reversible Data Hiding Using Contrast Enhancement Approach

Embed Size (px)

Citation preview

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 248

Reversible Data Hiding Using Contrast Enhancement Approach

A. S. Al-Fahoum Hijjawi Faculty for Eng. Tech./Biomedical Sys. & Inform. Eng. Dept. [email protected] Yarmouk University Irbid,21163,Jordan

M. Yaser [email protected] Hijjawi Faculty for Eng. Tech./Biomedical Sys. & Inform. Eng. Dept. Yarmouk University Irbid,21163,Jordan

Abstract

Reverse Data Hiding is a technique used to hide the object's data details. This technique is used to ensure the security and to protect the integrity of the object from any modification by preventing intended and unintended changes. Digital watermarking is a key ingredient to multimedia protection. However, most existing techniques distort the original content as a side effect of image protection. As a way to overcome such distortion, reversible data embedding has recently been introduced and is growing rapidly. In reversible data embedding, the original content can be completely restored after the removal of the watermark. Therefore, it is very practical to protect legal, medical, or other important imagery. In this paper a novel removable (lossless) data hiding technique is proposed. This technique is based on the histogram modification to produce extra space for embedding, and the redundancy in digital images is exploited to achieve a very high embedding capacity. This method has been applied to various standard images. The experimental results have demonstrated a promising outcome and the proposed technique achieved satisfactory and stable performance both on embedding capacity and visual quality. The proposed method capacity is up to 129K bits with PSNR between 42-45dB. The performance is hence better than most exiting reversible data hiding algorithms. Keywords: Reversible Data Hiding, Histogram, Stenography, Performance, Watermarking.

1. INTRODUCTION

As multimedia becomes an important form of information exchange, a large number of digital products are created and transmitted via the Internet. One of the characteristics of digital products is that they are very easy to create, to store, to duplicate, to transmit, and to modify. These results in a serious problem because unauthorized use, copy, or modify of the products will also become very easy. How to protect the products in various aspects presents a problem that challenges the academia and the business. Several technologies have been proposed for intellectual property right (IPR) protection [1]. One is encryption. However, conventional encryption and copy protection mechanisms do not fully solve this issue in some applications. Recently, data hiding (watermarking) is proposed as a hopeful method for authentication, fingerprint, security, data mining, and copyright protection [2]. In general, the watermarking algorithm attempts to imperceptibly embed one signal into another. However, even if the presence of the watermark is imperceptible, the embedding process usually introduces irreversible degradation of the original media. The distortion might be very slight, but zooming in on the image to emphasis the details would result in visual perception below what’s acceptable [2-9]. Image data hiding represents a class of processes used to embed the data of secret image into another image which is defined as cover images [10]. The hidden data usually can be a string of

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 249

binary bits (e.g., digital signature), a logo image, identification (ID) number, or any information that is useful [11]. In these approaches, the embedding process should be reversible [5]. In other words it is possible to completely restore the product content to its original state after watermark removal [4-9]. The basic requirements for a reversible data embedding technique can be summarized as follows: 1. Reversibility: Tian [10] has defined reversibility as “one can remove the embedded data to restore the original image.” It is the most important and essential property for reversible data embedding algorithms. 2. Capacity: The capacity for data embedding should be as large as possible. Too small payload size will restrict the range of application. The capacity is one of the important factors for measuring the performance of the algorithm. 3. Fidelity: Watermarking techniques characterized with high capacity might lead to low fidelity. The perceptual quality of the watermarked image should not be degraded severely after watermark embedding, although the original content is supposed to be restored completely. 4. Robustness: The embedded data can be retrieved if some irreversible distortions took place [12]. The techniques should be as robust as possible against common image processing operations. Recently, reversible data embedding techniques have drawn more and more interest. Existing methods can be classified according to the techniques associated with restoration. Some of the approaches rely on lossless compression to exploit the redundant space created by the compression operation. The space thus created is used for data embedding and for preserving the original pixel values [13-22]. Fridrich [17] proposed a reversible watermarking system that losslessly compresses a full least-significant-bit plane. The compressed result is combined with the authentication code and the payload to produce the watermark, which is further encrypted for security considerations. The encrypted watermark is then embedded into the original image by replacing the least-significant-bit plane. Their method meets the requirements of reversibility and blind authentication, but the capacity is very limited (around 100 bits/image) and varies according to the characteristics of the image. Fridrich also developed a number of extended techniques for uncompressed images such as BMP or TIFF format, compressed images such as JPEG, and video such as MPEG-2. Celik et. el. [18] made some improvement on Fridrich’s method to produce higher capacity and lower distortion on the image. The original image is quantized and the quantization residual is obtained by an L-level scalar quantization function. The residual is then losslessly compressed in order to create a room for the payload. The compressed residual and the payload data are then combined and embedded into the quantized image via G-LSB modification. The capacity depends on the characteristics of the host image i.e. images with many smooth regions will have larger capacity than those with irregular textures producing the same degree of fidelity. The resulting embedding capacity is about 1 and 0.17 bits/pixel for the best and the worst cases, respectively. In general, the capacity with regard to compression-based algorithms depends on the nature of the image and is restricted to the performance of lossless compression techniques. In Kalker et. el. [20] the theoretical capacity bounds for reversible data embedding based on lossless compression was proven. As wavelet transform becomes very popular, some techniques used it to map integers to integers so that the basic property of reversibility can be achieved. Such special techniques are referred to as integer wavelet transform, which is used by many researchers to produce high embedding capacity [21]-[22]. Tian [10] used the integer Haar wavelet transform as a reversible transform and used difference expansion to create extra capacity for data embedding. As the pair of neighboring pixels of a natural image is usually highly correlated, the intensity difference between them is usually very small. Hence, Tian developed a method for creating high embedding capacity and applied it to the difference values of pairs of pixels of the host image. The resulting embedding capacity is 0.5 bits/pixel for the best case. One

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 250

of the drawbacks of Tian’s approaches is that the original LSB of the difference values and the location map should also be embedded as part from the payload into the original image, thus also taking up the capacity since the pure payload is decreased due to the inserted information that is considered vital for image restoration. To circumvent, the location map is compressed before embedding. Invertible data hiding technques utilized spatial and transform domains for maintaining good fidelity and higher payloads. Several techniques are applied with considerable improvements and shortcomings [21]-[33]. Xuan [21] for example used the integer wavelet transform to avoid the round-off error in forward and inverse translation procedures. Since lossless compression on the original wavelet coefficients is performed to create the embedding space, the capacity is only as high as 0.35 bits/pixel. Such a shortcoming is resolved by various high capacity lossless data embedding methods. Lin et. el. [34] used the coefficients varieties of Discrete Cosine Transformation (DCT) of an image by dividing the image into several bands and embedded the high frequency band with the secret data. Their DCT approach is based on integer mapping. The DCT coefficient distribution was very close to a Gaussian distribution with zero mean. Accordingly, they used the histogram shifting approach to shift the positive and negative coefficient around the zero to the right and left respectively leaving a space to the hidden data. However, if the marked image is loosely compressed high frequency details cannot be obtained leading to losing the hidden data. Most existing watermarking techniques distort the original content as a side effect of image protection. To solve this problem, new technique using histogram statistics is proposed. Histogram manipulation techniques are evolved techniques that provided promising outcomes [7]. Techniques based on lossless compression or integer wavelet transform embed the original values concerning the host image to restore the exact original content. Such a problem may also be solved by histogram manipulation. De Vleeschouwer [15] used the method of patchwork histogram rotation, which is based on the concept of circular image histogram. The image is portioned into a given number of blocks. Each block is subdivided into 2 subsets A & B that are mapped into a unit circle. The two vectors that are related for A & B are computed. Embedding of the message bits can be released by rotation of both vectors in opposite ways. By slightly modifying the distribution of the pixel values of an image, the watermarked image is very similar to the original. As only one bit of the message is associated with a block, the capacity of their algorithm is very limited and depends on the number of blocks allocated in the image. In [35] the histogram shifting techniques was used by using the prediction to explore the similarity of neighborhood pixels in the image and then hide the secret data by using the residual histogram of the predicted error, also they increased the hiding capacity using overlapping between the peak and zero pairs. Hong et. el. [36] proposed an extension to [35] by employing set of basic pixels to predict the value of non basic pixels. This improves the prediction accuracy and increases the payload. The image quality was maintained by using a threshold to select the low variance blocks only. Chang et. el. [37] used an absolute difference technique of the neighboring pixels to determine whether the pixel is embedded or not. If the absolute difference is higher than the threshold then the pixel remains unchanged to achieve high image quality. Zhicheng [4] utilized the redundancy of the image histogram and slightly modified the pixel values to embed the data. The algorithm is simple and efficient and can keep high visual quality for all images with a PSNR value guaranteed to be higher than 48 dB. However, the capacity only equals to the peak of the image histogram and is about 0.05 bits/pixel in average. Furthermore, their approach is not general enough for every image; namely, the performance of the algorithm varies from image to image. However, those previously proposed algorithms that are based on histogram manipulation are usually limited in the embedding capacity but they have an advantage that the original values about the host image need not necessarily be embedded into the host image [22]-[33]. This paper proposes a novel reversible data embedding method using histogram statistics to improve the embedding capacity and fidelity. The method enables exact recovery of

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 251

the original host image, achieves very high embedding capacity, and keeps the reversible distortion very low.

2. METHODOLOGY In this work, a novel reversible data embedding algorithm using contrast stretching is proposed. The contrast stretching technique is used instead of lossless compression to explore the redundancy in the image histogram and to create greater embedding space. In addition, such a technique is designed to reversibly embed the payload into the image histograms without embedding the original values concerning the host image. In addition, the proposed technique achieved satisfactory and stable performance both on embedding capacity and visual quality. Figure 1 and 2 respectively summarizes the proposed algorithm. Figure.1 shows a schematic diagram of the proposed reversible data embedding system that will be applied to the output image obtained using Zhicheng's method. First, the output image from zhicheng's method, Io, is divided into equally, non-overlapping blocks, which are the inputs to the system. And then, the system computes the histogram statistics, Ho, of each image block, which includes the gray level with the most counts and the number of pixels used to calculate the histogram. The contrast of the histogram of each image block is then stretched to create an extra embedding space, with the reverse-aid information A produced as well. The watermark W thus consists of the data payload and the reverse-aid. Finally, the watermark is embedded into the generated space in the stretched image, Is, producing the watermarked image, Iw.

FIGURE 1: The Embedding Process of the Removable Data Using Proposed Method.

The data extraction and restoration process of the removable data embedding using proposed method is illustrated in Figure.2. The restoration process starts with the division of the received image I'w into equally sized NxN blocks. Next, the system computes the histogram statistics, H'w, of each image block and extracts the watermark, W'. During restoration, the embedded watermark is removed from the received image, thus restoring it to its original state.

FIGURE 2: The Data Extraction and Restoration Process of the Removable Data Embedding using

Proposed Method.

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 252

2.1 Zhicheng's Method [4] Zhicheng et. el. utilized the redundancy of the image histogram and slightly modified the pixel values to embed the data. The algorithm is simple and efficient. Therefore, it can keep high visual quality for all images with a PSNR value guaranteed to be higher than 48 dB. However, the capacity only equals to the peak of the image histogram and is about 0.05 bits/pixel. This capacity belongs to the range of (5K-80K) bits for a 512x512x8 grayscale image. Furthermore, their approach cannot be generalized since the capacity variation is very high and may change dramatically from image to image.

2.1.1 An Embedding Algorithm Procedure The "lena" image is used as an example to illustrate this algorithm. For a given grayscale image, say lena image (512x512x8), its histogram is first generated as shown in figure 3.

FIGURE 3: Lena Original Histogram.

An illustration of the Embedding Algorithm Using an Example With One Zero Point and One Peak Point is summarized as follows: In the histogram, we first find a zero point, and then a peak point. A zero point corresponds to the grayscale value which has zero frequency and belongs to the image domain, e.g., h(255) as shown in Figure 3 . A peak point corresponds to the grayscale value which has the maximum number of repeated pixels within the given image, e.g., h(154) as shown in Figure 3. To illustrate the principle of the algorithm,and for the sake of notational simplicity, only one zero point and one peak point are used in this example. The objective of finding the peak point is to increase the embedding capacity to be as large as possible since in this algorithm, as shown below, the number of bits that can be embedded into an image equals to the number of pixels which are associated with the peak point. The whole image is scanned in a sequential order, say, row-by-row, from top to bottom, or, column-by-column, from left to right. The grayscale value of pixels between 155 (including 155) and 254 (including 254) is incremented by “1.” This step is equivalent to shifting the range of the histogram, [155 254], to the right-hand side by 1unit, leaving the grayscale value 155 empty as shown in Figure 4.

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 253

FIGURE 4: Lena Histogram after Shifting.

Now, the whole image is scanned once again in the same sequential order. Once a pixel with grayscale value of 154 is encountered, we check the to-be-embedded data sequence. If the corresponding to-be-embedded bit in the sequence is binary “1”, the pixel value is incremented by 1. Otherwise, the pixel value remains intact.(For illustration purposes, it is preferred to present the embedding algorithm in these three steps only.) The above three steps complete the data embedding process. Now we can observe that the data embedding capacity of this algorithm, when only one pair of zero and peak points is used, equals to the number of pixels that assume the grayscale value of the peak point as mentioned above. The histogram of the marked Lena image is plotted in Figure 5. It is noteworthy that the peak at 154, which was shown in Figure 3 is no longer the peak value in Figure 5.

FIGURE 5: Lena Histogram after Zhicheng's et. el. Method.

In very rare cases, the zero point is not able to be found in a histogram. In such situations, the minimum point is used instead of the zero point. Then, the gray value and the coordinates of the minimum point are recorded as an overhead part of the embedded data. This book-keeping information will be used later to recover the minimum point data retrieval. If there are multiple pairs of zero points and peak points, it is possible to further increase the payload by adding complexity to this algorithm.

2.1.2 Data Extraction Procedure Only the simple case of one pair of minimum point and maximum point is described here because, as shown above, the general cases of multiple pairs of maximum and minimum points can be decomposed as a few one pair cases. Assuming the grayscale value of the maximum point and the minimum points are a and b, respectively. Without loss of generality, assume a<b. The marked image is of size (MxN), and

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 254

each pixel grayscale value x belongs to the interval between [0,255] (assuming 8 bit pixel representation). The next step is to scan the marked image in the same sequential order as that used in the embedding procedure. If a pixel with its grayscale value (a+1) is encountered, a bit “1” is extracted. If a pixel with its value (a) is encountered, a bit “0” is extracted. Scan the image again, for any pixel whose grayscale value between [a,b], the pixel value is subtracted by 1. If there is overhead bookkeeping information found in the extracted data, set the pixel grayscale value (whose coordinate (i,j) is saved in the overhead) as b. In this way, the original image can be recovered without any distortion, but the total capacity is limited to the sum of peaks count that is used in embedding process which will not be able to give a capacity more than 0.05 bpp. To improve the capacity of this algorithm, the next section proposes an enhancement method that will provide better results compared to this method. 2.2 Contrast Stretching Contrast stretching is one of the histogram manipulation techniques. It tries to extend the narrow range of image pixel values over a wider range. It is often used to improve the image quality by stretching the range of intensity values such that the image contrast could be enhanced. Contrast enhancement will produce a histogram which contains many gaps. These gaps represent a missing set of pixels of particular intensity values. This additional created empty space would be used for data embedding. Figure 6 illustrates the proposed method of contrast enhancement for reversible data embedding. In this method, every intensity value in the original histogram is stretched to a position either to the left or to the right of the peak value, hence creating the missing intensity values. As large gaps of missing intensity values together could produce a downgraded look; the width of a gap is defined as one grayscale value in this work. The embedding process is implemented as fowllows: the image block is scanned pixel by pixel. The pixel values associated with the histogram peak are kept intact for reversibility. The rest may be selected to embed the watermark. If the current watermark bit is “1,” the pixel value is added or subtracted by 1, otherwise, they are kept intact. For example, Figures 6.a and 6.b show the original and stretched histograms of an image block, respectively. Pixels with gray level 57 are selected for embedding and gray level 58 is a missing intensity value. While scanning the image block, if the watermark bit is “1,” the value 57 of the current pixel is incremented by 1, whereas if the watermark bit is “0,” nothing is done. Figure 6.c shows the histogram after embedding the watermark. The total number of pixels of gray levels 57 and 58 is equal to the number of pixels of gray level 60 in the original histogram. The embedding capacity in this image block is the number of selected pixels, i.e., the number of pixels of gray levels 60, 61, 62, 64 and 65.

(a) (b) (c)

FIGURE 6: Removable data embedding by contrast stretching: (a) original histogram of the image block, (b)

stretched histogram, (c) histogram after embedding.

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 255

Let m be the image block of size N×N and m(i, j) denotes the original pixel value at position (i, j), where 0 ≤ i, j ≤ N–1. The contrast stretching is defined as

pjimpjim −) ,(2 = ] −) ,([+= *2 p j) (i,m', (1)

where m'(i, j) is the pixel value at i,j position after stretching and p is the gray level value with the highest count of pixels in the block's histogram. A threshold value τ is used to balance between the shift widths and the number of selected gray levels for embedding. In Figure 6.a, the pixels with gray values of 61, 62, 64 and 65 are selected to embed the watermark, therefore τ is selected to be 2. The original pixel values that satisfy p− τ ≤ b(i, j) ≤ p+ τ are mapped to the output value using the contrast stretching function in equation 1. Thus the range of [p−2× τ, p+2× τ] is called the embedding area. Other pixel values will be shifted to the right or left by τ levels. This means

ττ +≤≤= pj)b(i, -p if , p-j)b(i,*2j)(i,b'(2)

ττ −<= pj)b(i, if , -j)b(i,j)(i,b' (3)

ττ +>+= pj)b(i, if , j)b(i,j)(i,b' (4)

As grayscale values are bounded to the interval [0, 255], then 0 ≤ b'(i, j) ≤ 255, which is equivalent to 0 ≤ 2×b(i, j)–p ≤ 255. To overcome the over/underflow problems (the range of shifted pixel values to be less than 0 or greater than 255) and the extreme value problem (if intensity value 0 or 255 exists, there is no room for stretching). Accordingly, extra condtions should be applied to avoid such problems. The pixel values in an image block must satisfy the following condition:

255)/2 +(< < pb j)(i, p/2(5)

Considering the threshold, the pixel values violating condition (3) might not cause any problem if they satisfy another constraint:

255< < ττ - j)(i, b (6)

In the cases where the value in an image block satisfies equation (5) & (6) , then it could be stretched via equations (2) ,(3) & (4); otherwise, the following equations are used instead without causing the over flow or underflow problem:

+ ≤ ≤= 21 ),( -p if , p-j)b(i,*2j)(i,b' εε pjib(7)

−< , = 1 ),( -j)b(i,j)(i,b' ετ pjibif(8)

+> , += 2 ),( j)b(i,j)(i,b' ετ pjiifb(9)

where 1ε and 2ε

are the numbers of empty bins in the histogram from 0 to the minimum gray level and from the maximum gray level to 255, respectively. The range of

]×2+ ,×2 21 εε p-[pis also called the embedding area. In addition, the number of the gray

levels to be stretched will be the number of the missing intensity values clustered at one end of

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 256

the histogram. If the range of grayscale values in the histogram covers the full possible set of values, straightforward contrast stretching will achieve nothing; in other words, the histogram should have at least one gap on the left or right side of the peak in order to provide room for stretching. Usually, the pixel values in an image block spread only within a small range so that they could be stretched. 2.3 Reversible Data Embedding The reversible data embedding algorithm can be summarized in the following steps: The original image is divided into equally-sized (N×N), non-overlapping image blocks, and N is set to be less than 16 such that the full-coverage problem is avoided. The histogram statistics is computed for each image block, including the gray level with the most counts, p, and the number of pixels. If there is more than one peak in a block, the peak is defined as the one with greater gray level. Figure 7 shows one sample for a block histogram before stretching.

FIGURE 7: A Sample of Block Histogram before Stretching.

Contrast stretching is performed on each image block to create extra embedding space. Figure 8 shows the histogram of a block after contrast stretching.

FIGURE 8: Block Histogram after Stretching.

Each block is divided into two sets of pixels, L (left of the histogram) and R (right of the histogram), according to the pixel values being less or greater than p. In some exceptional cases, if the peak is the minimum or maximum gray level, this block is only divided into R or L accordingly. If all of the pixels in the block have the same value, this block is discarded. The watermark is embedded into the created space after contrast stretching and the watermarked image is obtained. The data embedding starts with scanning the pixel values, and pixel values in the embedding area are modified by either adding or subtracting one bit:

p j) (i,b' if 1,-j) (i,b' j) (i,'b' >=(10)

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 257

p j) (i,b' if 1,j) (i,b' j) (i,'b' <+=(11)

Where b"(i, j) denotes the pixel value after data embedding. Figure 9 shows the block histogram after data embedding.

FIGURE 9: Block Histogram after Data Embedding.

2.4 Data Extraction and Image Restoration To extract the watermark and restore the original image, the steps below are followed. The received image is divided into image blocks by the same size N×N, followed by finding the peak of the histogram of each block. The watermark extraction starts with pixel scanning, and is extracted by

mod pj)(i,'b' 2k +=w(12)

where kw is the watermarked image bit.

The image restorer implements the difference translation according to the pixel value in L { b(i,j)<p } or R { b(i,j)>p}. For pixel values in the embedding area, then they are restored by the floor operation:

2

pj)(i,b"j)b(i,

+=

(13)

For the pixels which are not in the embedding area, the pixels in L are restored by

+= τ j) (i,b" j) b(i, (14)

and the pixels in R are restored by

= τ - j) (i,b" j) b(i, (15)

The new overall image histogram is created and the Zhicheng's restoration procedure shown above in 2. 1 is executed .The embedded watermark is extracted and removed from the received image. Thus the original state of the image is restored without any kind of losses.

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 258

3. EXPERIMENTAL RESULTS The proposed algorithm has been implemented and tested on various 512×512 standard grayscale images, including F-16, Peppers, Lena, Barbara, Boat, and Baboon. The selected images range from very smooth images (as F-16) to very rough images (as Baboon). The payload data are created from a pseudo random number generator. The relationship between the block size and the performance of the proposed algorithm is important. Whereas increasing the block size does not dramatically increase the capacity and a larger block size leads to lower image quality as shown in figure10. Since each image block is stretched individually without considering the distribution of adjacent blocks. The block effects are apparent and the image quality is degraded. For this reason, in this work the 4x4 image blocks is chosen, and τ is chosen as 2 to get a higher quantitative quality (PSNR) and to avoid any degradation that could affect the visual quality.

FIGURE10: The Effect of Different Block Size in Terms of Image Quality Versus Capacity.

In all conducted experiments, the PSNR of the all marked images is found to be above 42.01 dB. This cannot be theoretically proven, since in this algorithm, there are two shifting processes: one at the whole image intensity level; and the other at the block intensity level. Therefore, it is hard to find the real relation between these two shifting processes due to the possibility of having some kind of overlapping. In other words, the shift that may happen for the peaks at the image level can be adjusted during any contrast stretching for the block intensities. This reason leads to the conclusion that the PSNR may vary from image to image and block to block. However, this will make it very hard to theoretically calculate the exact range. Accordingly, the PSNR is calculated for each marked image independently. The proposed reversible data hiding algorithm has been applied to many typical grayscale images. Figure 11 shows the original and marked Lena image (512x512x8), respectively. Figure 12 shows the histogram of the original and marked Lena image (512x512x8).The measured PSNR is found to be 44.39 dB.

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 259

(a).Lena Original.

(b).Lena Marked (PSNR=44.39 dB)

FIGURE11: Lena Image.

(a). The Original Lena Histogram.

(b). The Final Histogram for Marked Lena Image.

FIGURE12: Lena Histograms.

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 260

The payload in Lena image is equal to the summation of counts for the maximum two peaks at the whole image histogram level plus the counts for the two peaks around the peak of each block which is equal to 5460 bits (Zhicheng's algorithm)+ 24098 bits (proposed algorithm)=29558 bits. Figure 13 shows the experimental results for airplane. The pure payload is equal to 60,279. The measured PSNR is found to be 43.68 dB. To demonstrate the efficacy of the proposed technique, the technique is applied on several images to investigate its influence on the values of both PSNR and Pay load. The results are shown in Table.1. Overall comparison between the existing reversible marking techniques and the proposed technique in terms of pure payload and the PSNR is presented in Table .2.

(a) Original.

(b) Marked (PSNR=43,68dB) FIGURE 13: Air Plane Image.

. Images

(512x512x8) PSNR of marked image (dB)

Capacity (bits)

Lena 44.39 29,558

Airplane 43.68 60,279

Baboon 42.01 19,998

House 42.91 37,239

Sail boat 43.21 34,124

Boat 43.59 41,106

Barbara 43.89 20,864

Blood 44.74 129

TABLE 1: Experimental Results for the Proposed Algorithm.

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 261

Methods

Pure payload in a 512x512x8 image (bits)

PSNR of marked image

(dB) Zhicheng's[4] 5k-80k 48.2

Macq and Deweyand[12]

<2046

Not mentioned

Vleeschouwer's[15] <4096 <35

Honsinger's[16] <1024 Not mentioned

Fridrich's [17] 1024 Not mentioned

Celik's[18] 15k-143k 38

Xuan's[21] 15k-94k 24-36

Goljan's[24] 3k-41k 39

Proposed 20k-129k 42-45

TABLE 2: The Comparative Evaluation between the Proposed Algorithm and 8 Reversible Methods.

Table 3 shows the comparison between other reversible watermarking methods and the proposed method applied on two typically different images: Lena and baboon.

Method Baboon

(512x512x8) Lena (512x512x8)

Pure payload

(bits)

PSNR (dB)

Pure payload

(bits)

PSNR

(dB)

Zhicheng's[4] 5,421 48.2 5,460 48.2

Macq and Deweyand[12]

<2046

Not

mentioned

<2046

Not

mentioned

Vleeschouwer's[15] 1024 29 1024 30

Honsinger's[16] <1024 Not mentioned

<1024 Not mentioned

Fridrich's[17] 1024 Not mentioned

1024 Not mentioned

Celik's[18] 15,176 38 74,600 38

Xuan's[21] 14,916 32.8 85,507 36.6

Goljan's[24] 2,905 39 24,108 39

Proposed 19,998 42.0 29,558 44.4

TABLE 3: Comparison between other reversible marking methods and the proposed method on two typically different images: Lena and baboon.

Table 4 shows the comparison between the proposed method and zhicheng's method for the same images.

Images

(512x512x8) PSNR of marked

image (dB)

Zhicheng's methods Capacity

(bits)

Proposed methods Capacity

(bits) Lena 44.39 5,460 29,558

Airplane 43.68 16,171 60,279

Baboon 42.01 5,421 19,998

House 42.91 14,310 37,239

Sail boat 43.21 7,310 34,124

TABLE 4: Experimental Summery Results for Both Zhicheng's Method and the Proposed Method.

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 262

4. DISCUSSION Tables 1-4 show the superiority of the proposed algorithm and it is robustness against payload variations. Moreover it shows the ability of the proposed algorithm to achieve higher quantitative and qualitative quality measures. The proposed algorithm satisfied the highest pay load with an acceptable PSNR. Moreover, the computational load of the proposed algorithm is easily implemented in real time without any need for external added processors. This light computational load with its high payload capacity makes this algorithm very promising. The algorithm doen't need to apply any transform such as discrete cosine transform (DCT), discrete wavelet transform (DWT), and fast Fourier transform (FFT). All the processing is taking place in the spatial domain. The required processing mainly lies on generating histogram, determining minimum and maximum (and possibly sub minimum and sub maximum) points, scanning pixels, and adding or subtracting pixel grayscale values by one in the spatial domain. Hence, the execution time of the algorithm is rather short. The reversible data embedding based on contrast stretching –that applied to the output image of zhicheng's method- creates extra space by translation of the image pixel values from a narrow range to a wider range. In addition, this technique preserves the reversibility by enforcing the peak intact in the block histogram. The experimental results demonstrated a promising outcome and it is obvious that contrast stretching method that applied to the output image from Zhicheng's method produces high and stable embedding capacity as well as fidelity. However, some limitations of the proposed method should be discussed. The embedded watermark has a bit length of |A| (Reverse-Aid) +|P| (Payload) and the total embedding capacity will be |Counts of the maximum two peaks at whole histogram level| (Zhicheng's method) +|Counts of four peaks around maximum peak at the block level | (Contrast stretching method). To successfully embed data into the host image, the following conditions must hold: |A|+|P| ≤ |Zhicheng's method| + |Contrast Stretching method|, thus the payload size is bounded by

|Α|| | + | |= - stretchingContrast method sZhicheng' |P| (16)

The extended size of the payload capacity is due to the Contrast Stretching. However, the value of the capacity depends also on the type of the image probability distribution and the histogram of individual blocks. The embedding capacity increases if the distribution is more or less Gaussian distribution. This is because most pixel values are located around the peak. It should be noted also that the size of A must be less than or equal to the size of the capacity provided by Zhicheng's and Contrast Stretching method's. Otherwise, the data embedding process cannot be performed. However, it is worth mentioning that the ability of the algorithm to be unsuccessful in embedding data is almost rare when natural images are used. This is because the probability of having an extreme value distribution is very low. Furthermore, the capacity might be very small if the distribution of image intensity is extreme. This kind of images is not suitable for data embedding.

5. CONCLUSION In this paper, a novel and fully reversible data embedding algorithm for digital images is proposed. The new algorithm utilizes the simplicity and efficiency of reversible data embedding algorithms and enhances their payload capacity. The histogram contrast stretching is proposed to enhance Zhicheng's method to produce extra space for data embedding without affecting the quality of restoration process. In addition, the performance both on embedding capacity and visual quality is satisfactory and stable. For extremely important images, such as those used in medical, legal or military environment, the technique is very useful. The proposed reversible data hiding technique is able to embed about 129kb into a 512 x512x 8 grayscale image while guaranteeing the PSNR of the marked image versus the original image to be above 42 dB. In addition, this algorithm can be applied to virtually all types of images. In fact, it has been successfully applied to many frequently used images with better capacity and high

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 263

visual quality. Further analysis and modifications may lead to provide a better trade in between visual quality and payload capacity. Future work will concentrate on reversible data hiding schemes that will utilize variations in frequency contents of the image features. The image will be decomposed into several different frequencies, and the low amplitude frequency components will be embedded with secret data. A multilevel histogram shifting can be used to improve capacity and fidelity of the new technique.

6. Acknowledgement The authors would like to acknowledge the support and help provided by both Yarmouk University Research Council and Hijjawi Foundation.

7. REFERENCES

[1]. G.Braudway, K. Magerlin. And F. Mintezer. "protecting publicity available images with a visual image watermark," Proc. SPIE: optical security and Counterfeit Deterrence Techniques, Vol. 2659. pp.126-133, 1996.

[2]. B.Macq and J.Quisquater. "Cryptology for Digital TV broadcasting," Proc. Of IEEE. Vol. 83. No.6, pp 944-957, June 1995.

[3]. W. Zeng, “Digital watermarking and data hiding: technologies and applications,” in Proc. Int.

Conf. Inf. Syst., Anal. Synth., vol. 3, pp. 223–229, , 1998. [4]. N. Zhichenge, ,Y. Q. Shi,N. Ansari, and W. Su,“ Reversible Data Hiding” IEEE Transactions

on circuits and systems for video technology, vol.16, No. 3, March 2006.

[5]. J. Cox, J. Kilian, T. Leighton, and T. Shamoon, “Secure spread spectrum watermarking for multimedia,” IEEE Trans. Image Process., vol. 6, no. 12, pp. 1673–1687, Dec. 1997.

[6]. Z. Tirkel, C. F. Osborne, and R. G. Van Schyndel, “Image watermarking a spread spectrum application,” in Proc. IEEE 4th Int. Symp. Spread Spectrum Techn. Applicat., vol. 2, pp. 785–789, Sep. 1996.

[7]. A. van Leest, M. van der Veen, and F. Bruekers, “Reversible Image Watermarking,” in Proc. Int. Conf. Image Processing, Vol. 2, pp. 731−734, 2003.

[8]. J. Huang and Y. Q. Shi, “An adaptive image watermarking scheme based on visual masking,” Electron. Lett., vol. 34, no. 8, pp. 748–750, 1998.

[9]. J. Huang, Y. Q. Shi, and Y. Shi, “Embedding image watermarks in DC component,” IEEE Trans. Circuits Syst.: Video Technol., vol. 10, no. 6, pp. 974–979, Sep. 2000.

[10]. J. Tian, “Reversible Data Embedding Using a Difference Expansion,” IEEE Trans. Circuits and Systems for Video Technology, Vol. 13, No. 8, pp. 890−896, 2003.

[11]. J. Irvine and D. Harle, Data Communications and Networks: An Engineering Approach. New York: Wiley, 2002.

[12]. B. Macq and F. Deweyand, “Trusted headers for medical images,” presented at the DFG VIII-D II Watermarking Workshop, Erlangen, Germany, Oct. 1999.

[13]. M. M. Yeung and F. C. Mintzer, “Invisible watermarking for image verification,” Electron. Imag., vol. 7, no. 3, pp. 578–591, Jul. 1998.

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 264

[14]. B. Chen and G. W. Wornell, “Quantization index modulation: a class of provably good methods for digital watermarking and information embedding,” IEEE Trans. Inf. Theory, vol. 47, no. 4, pp. 1423–1443, May 2001.

[15]. C. De Vleeschouwer, J. F. Delaigle, and B. Macq, “Circular interpretation on histogram for reversible watermarking,” in IEEE Int. Multimedia Signal Process. Workshop, France, pp. 345–350, Oct. 2001.

[16]. C. W. Honsinger, P. Jones, M. Rabbani, and J. C. Stoffel, “Lossless Recovery of an Original Image Containing Embedded Data,” U.S. Patent 6 278 791 B1, Aug. 21, 2001.

[17]. J. Fridrich, M. Goljan, and R. Du, “Invertible authentication,” in Proc. SPIE Security Watermarking Multimedia Contents, San Jose, CA, pp. 197–208, Jan. 2001,.

[18]. M. U. Celik, G. Sharma, A. M. Tekalp, and E. Saber, “Reversible data hiding,” in Proc. IEEE Int. Conf. Image Process., vol. 2, Sep. 2002, pp. 157–160.

[19]. F. Perez-Gonzlez and F. Balado, “Quantized projection data hiding,” in Proc. IEEE Int. Conf. Image Process., vol. 2, pp. 889–892, Sep. 2002.

[20]. T. Kalker, and F.M.J Willems, “Capacity Bounds and Code Constructions for Reversible Data-Hiding,” in Proc. Electronic Imaging, Security, and Watermarking of Multimedia Contents V, 2003.

[21]. G. Xuan, J. Zhu, J. Chen, Y. Q. Shi, Z. Ni, and W. Su, “Distortion less data hiding based on integer wavelet transform,” IEE Electron. Lett., vol. 38, no. 25, pp. 1646–1648, Dec. 2002.

[22]. W. Bender, D. Gruhl, N. Morimoto, and A. Lu, “Techniques for data hiding,” IBM Syst. J., vol. 35, no. 3–4, pp. 313–336, 1996.

[23]. Y. Q. Shi, Z. Ni, D. Zou, and C. Liang, “Lossless data hiding: fundamentals, algorithms and applications,” in IEEE Int. Symp. Circuits Syst., Vancouver, Canada, pp. 33–36, May 2004.

[24]. M. Goljan, J. Fridrich, and R. Du, “Distortion-free data embedding,” in Proc. 4th Inf. Hiding Workshop, Pittsburgh, PA, pp. 27–41, , Apr. 2001.

[25]. R. Calderbank, I. Daubechies, W. Sweldens, and B. Yeo, “Wavelet transforms that map integers to integers,” Appl. Comput. Harmonic Anal., vol. 5, no. 3, pp. 332–369, 1998.

[26]. Daubechies and W. Sweldens, “Factoring wavelet transforms into lifting steps,” J. Fourier Anal. Appl., vol. 4, pp. 247–269, 1998.

[27]. Park, J. Y., Lim, J. H., Kim, G. S. and Won, C.S. “Invertible Semi-Fragile Watermarking Algorithm Distinguishing MPEG-2 Compression from Malicious Manipulation,” in Proc. Int. Conf. Consumer Electronics (ICCE ’02), pp.18−19, 2002.

[28]. Yang, Y. and Bao, F. “An Invertible Watermarking Scheme for Authentication of Electronic Clinical Brain Atlas,” in Proc. IEEE Int. Conf. Acoustics, Speech, and Signal Processing (ICASSP '03), Vol. 3, pp. 533−536, 2003.

[29]. Zou D., Wu, C. W., Xuan, G. and Shi, Y.Q. “A Content-Based Image Authentication System with Lossless Data Hiding,” in Proc. Int. Conf. Multimedia and Expo (ICME '03), Vol. 2, pp. 213−216, 2003.

[30]. P. Roos, M. A. Viegerver, M.C.A Van Dijke, and J. A. Peters, “Reversible Intraframe of Medical Images,” IEEE Trans. Medical Image, Vol. 7, pp. 328−336, 1998.

A. S. Al-Fahoum & M. Yaser

International Journal of Image Processing (IJIP), Volume (7) : Issue (3) : 2013 265

[31]. J. Y.Park, J. H. Lim, G.S. Kim, and C. S. Won, “Invertible Semi-Fragile Watermarking Algorithm Distinguishing MPEG-2 Compression from Malicious Manipulation,” in Proc. Int. Conf. Consumer Electronics (ICCE ’02), pp.18−19, 2002.

[32]. X. Luo, Q. Cheng, and J. Tan, “A Lossless Data Embedding Scheme for Medical Images in Application of E-Diagnosis,” in Proc. IEEE 25th Annual Int. Conf. Engineering in Medicine and Biology Society, Vol. 1, pp. 852−855, 2003.

[33]. C. T. Hsu and J. L. Wu: Hidden Digital Watermarks in Images, IEEE Transactions on Image Processing,,58-68, 1999.

[34]. Y. K. Lin " High capacity reversible data hiding scheme based upon discrete cosine Transformation" , The Journal of System and Software, vol:85(10), pp:2395-2404, 2012.

[35]. P. Tsai, Y. ChenHu, , H.L. Yeh, "Reversible image hiding scheme using predictive coding and histogram shifting" Signal Processing , pp: 1129-1143, 2009.

[36]. W. Hong, T. S. Chen, " A local variance-controlled reversible data hiding method using prediction and histogram-shifting" The Journal of System and Software,vol. 83 (12), pp: 2653-2663, 2010.

[37]. Ch. Ch. Chang, Y. H. Huang, H. Y. Tsai, and Ch. Qin," Prediction-based reversible data hiding using the difference of neighboring pixels" International Journal of Electronics and Communication (AEU),vol. 66. issue 9, pp:758:766, 2012.