data hiding using image interpolation

of 38 /38

Author: vikrant-arya

Post on 08-Sep-2014




4 download

Embed Size (px)


Data Hiding using some some technique.Which I have explain in presentation.


  • INTRODUCTION Interpolation is the process of determining the values of a function at positions lying between its samples. It achieves this process by fitting a continuous function through the discrete input samples. This permits input values to be evaluated at arbitrary positions in the input, not just those defined at the sample points.
  • Image interpolation occurs in all digital photos at some stage whether this be in bayer demosaicing or in photo enlargement. It happens anytime you resize or remap (distort) your image from one pixel grid to another. Image resizing is necessary when you need to increase or decrease the total number of pixels, whereas remapping can occur under a wider variety of scenarios: correcting for lens distortion, changing perspective, and rotating an image.
  • CONCEPT Interpolation works by using known data to estimate values at unknown points. For example: if you wanted to know the temperature at noon, but only measured it at 11AM and 1PM, you could estimate its value by performing a linear interpolation:
  • If you had an additional measurement at 11:30AM, you could see that the bulk of the temperature rise occurred before noon, and could use this additional data point to perform a quadratic interpolation:
  • IMAGE RESIZE EXAMPLE Original 183% 2d interpolation before after No interpolation
  • Unlike air temperature fluctuations and the ideal gradient above, pixel values can change far more abruptly from one location to the next. As with the temperature example, the more you know about the surrounding pixels, the better the interpolation will become.
  • IMAGE ROTATION EXAMPLE Interpolation also occurs each time you rotate or distort an image. The previous example was misleading because it is one which interpolators are particularly good at. This next example shows how image detail can be lost quite rapidly: ORIGINAL 45 rotation 90 Rotation (Lossless) 2 X 45 Rotatio ns 6 X 15 Rotations
  • The 90 rotation is lossless because no pixel ever has to be repositioned onto the border between two pixels (and therefore divided). Note how most of the detail is lost in just the first rotation, although the image continues to deteriorate with successive rotations. The above results use what is called a "bicubic" algorithm, and show significant deterioration. .
  • TYPES OF INTERPOLATION ALGORITHMS Common interpolation algorithms can be grouped into two categories: adaptive and non-adaptive. Adaptive methods change depending on what they are interpolating (sharp edges vs. smooth texture). whereas non-adaptive methods treat all pixels equally.
  • Non-adaptive algorithms include: nearest neighbor, bilinear, bicubic, spline, sinc, lanczos and others. Depending on their complexity, these use anywhere from 0 to 256 (or more) adjacent pixels when interpolating. The more adjacent pixels they include, the more accurate they can become, but this comes at the expense of much longer processing time.
  • Adaptive algorithms include many proprietary algorithms in licensed software such as: Qimage, PhotoZoom Pro, Genuine Fractals and others. Many of these apply a different version of their algorithm (on a pixel-by-pixel basis).
  • NEAREST NEIGHBOR INTERPOLATION Nearest neighbor is the most basic and requires the least processing time of all the interpolation algorithms because it only considers one pixel the closest one to the interpolated point. This has the effect of simply making each pixel bigger. It suffers from aliasing effects on enlarging or reducing images.
  • BILINEAR INTERPOLATION Bilinear interpolation considers the closest 2x2 neighborhood of known pixel values surrounding the unknown pixel. It then takes a weighted average of these 4 pixels to arrive at its final interpolated value. This results in much smoother looking images than nearest neighbor. But blurr & it requires 3-4 times higher computation.
  • The above diagram is for a case when all known pixel distances are equal, so the interpolated value is simply their sum divided by four.
  • BICUBIC INTERPOLATION Bicubic goes one step beyond bilinear by considering the closest 4x4 neighborhood of known pixels for a total of 16 pixels. Since these are at various distances from the unknown pixel, closer pixels are given a higher weighting in the calculation. Bicubic produces noticeably sharper images than the previous two methods, and is perhaps the ideal combination of processing time and output quality. For this reason it is a standard in many image editing programs (including Adobe Photoshop), printer drivers and in-camera interpolation.
  • Example bicubic :
  • NEIGHBOR MEAN INTERPOLATION Proposed by jung and yoo in 2009. It uses neighboring pixel values to calculate the mean and then the calculated mean value is inserted in to a pixel that has not been allocated yet. Complexity is high when number of referenced pixel is higher.
  • On the pixel p(i,j) the output pixel p(i,j) is defined as: where p(i,j) denotes the pixel in original image and m,n=0,1..127 and K is Scaling factor usually assigned 2. otherwise)/3,)1,('),1('1)-j1,-(p(i n2j1,m2iifj))/2,,1(ip'j)1,-(i(p' 1n2jm,2iif))/2,1j(i,p'1)-j(i,(p' n2jm,2iifj),p(i, j)(i,p' jipjip
  • The proposed neighbor mean interpolation
  • 46 112 210 90 46 79 112 128 84 101 210 150 90 84)/312879(46(1,1)p' 128210)/2(46(1,0)p' 79112)/246((0,1)p' 46p(0,0)(0,0)p' interpolation otherwise)/3,)1,('),1('1)-j1,-(p(i n2j1,m2iifj))/2,,1(ip'j)1,-(i(p' 1n2jm,2iif))/2,1j(i,p'1)-j(i,(p' n2jm,2iifj),p(i, j)(i,p' jipjip Neighbor Mean Interpolation
  • the neighbor mean interpolation is similar to bilinear interpolation, but this method has less blurring and greater image resolution. DATA HIDING Data hiding conceals the existence of secret data while cryptography protects the contents of message. Message may be scattered randomly throughout cover image or straight inserted. Methods : LSB insertion, Masking, Filtering, Transformations , Reversible data hiding
  • PROPOSED DATA HIDING METHOD This method utilizes the resulting images(cover) of the neighbor mean interpolation method. The sequence of data hiding can be zig-zag ,left to right and upper to down direction.
  • Before Secret data is embedded the host image is partitioned in to four-pixel, non overlapping, consecutive blocks by zigzag scanning as shown below :
  • For every four non-overlapping consecutive pixel values i.e., p(i,j) p(i+1,j) p(i,j+1) and p(i+1,j+1), the corresponding stego image pixel values are p(i,j) p(i+1,j) p(i,j+1) and p(i+1,j+1) respectively. Here we have embed data in to three pixel except for p(i,j) pixel. STEPS INVOLVED IN DATA HIDING : 1. First we get a scaling up image by using neighbor mean interpolation method.
  • Then for every four non overlapping consecutive pixel values a difference value d is calculated as: d = p(K . x +, K .y + ) p(K .x , K .y) Where 0x, y127 , value is 0 or 1, respectively. The number of bits, say n, which can be embedded in this pixel, is calculated by N = ln|d|.
  • A sub stream with n bits in the embedding data is selected and converted to integer value b. Then, a stego image pixel p(i,j) is computed as follows. p(i,j) = p(i,j) + b.
  • DATA EXTRACTION PROCESS : 1. In the extraction process the stego image is also partitioned in to 2 x 2 non overlapping consecutive blocks 2. Then b is calculated as follows : Where x,y=0,1,..127 and k is defined as two .
  • . After the secret data is extracted we can convert value of b to be a binary form and concatenate to the secret bit stream. Proposed data hiding method :
  • EXAMPLE : 46 112 210 90 46 79 112 128 84 101 210 150 90 84)/312879(46(1,1)p' 128210)/2(46(1,0)p' 79112)/246((0,1)p' 46p(0,0)(0,0)p' interpolation otherwise)/3,)1,('),1('1)-j1,-(p(i n2j1,m2iifj))/2,,1(ip'j)1,-(i(p' 1n2jm,2iif))/2,1j(i,p'1)-j(i,(p' n2jm,2iifj),p(i, j)(i,p' jipjip Neighbor Mean Interpolation
  • EMBEDDING OF SECRET BIT : 46 79 112 128 84 101 210 150 90 46 98 112 150 89 101 210 150 90 538log 682log 533log 384684 8246128 3346-79 d 2 2 2 n Embed secret bit Cover image Stego image 5)00101( 22)010110( 19(10011) b 2 2 2 89584(1,1)p' 15022128(1,0)p' 981979(0,1)p' 20001011001101011BitsSecret d = p(K . x +, K .y + ) p(K .x , K .y)
  • 2 2 2 )00101(5210)/3112(4689 )010110(22210)/2(46150 )10011(19112)/2(46-98 b 538log 682log 533log 384684 8246128 3346-79 d 2 2 2 n 46 98 112 150 89 101 210 150 90 46 79 112 128 84 101 210 150 90 Stego image Cover image Recover Extract 20001011001101011BitsSecret RECOVERY OF SECRET DATA
  • IMPROVED DATA HIDING METHOD Proposed in 2011 seventh international conference on Intelligent information hiding and multimedia signal processing. The weakness of jung and yoos method is that pixel extended from the original image have to be recomputed before extracting the secret data. The algorithm of the new proposed method is as follows : 1. Utilize the neighbor mean interpolation to create a cover image. 2. Divide the cover image from left to right, top to down, to form 2x2 non-overlapping blocks.
  • 3. In each block, pixels p(i,j), p(i,j+1), p(i+1,j) and p(i+1,j+1) are renamed as p0, p1, p2, p3, respectively. Then, we made these four pixels into three groups(p0, p1), (p0, p2), and (p0, p3).The differences di =pi-p0, i=1, 2, 3. The capacity ni of the pixel pairs are computed by eq : 4 Selecting the number of bits from the secret bit stream and then convert it to decimal form b. the new difference is computed by
  • 5. The corresponding pixel are computed by equation : 6.Repeat steps 3-5 in predefined order, top to down and left to right, until all secret data is embedded or blocks are exhausted.
  • EXTRACTING THE DATA : Apply the hiding algorithm step 2 and 3 to the stego image we can get new difference and number of bits embedded with in the pixel. Then the secret data can be extracted using the eq. According to the number of bits embedded the extracted secret data b can be translated to the binary digit which became a part of the secret data stream.
  • REFERENCES : http:// http://