Pixel Value Differencing Steganography

Pixel Value Differencing Steganography

DOI: 10.4018/978-1-5225-7516-0.ch003
OnDemand PDF Download:
No Current Special Offers


In this chapter, the author describes the different categories of pixel value differencing (PVD) techniques and their performances. The main goal in PVD technique is to find the pixel value difference. If it is large, hide the larger number of bits; otherwise, hide the lesser number of bits. The traditional PVD techniques operates on 2, 4, and 8 pixel blocks to calculate the pixel value difference and then take the embedding decision. The traditional PVD techniques use a range table to decide the embedding capacity in a block. The adaptive PVD techniques do not use any range table and calculate the embedding capacity dynamically for every block based on the pixel values of that block. Most of the traditional PVD techniques are attacked by pixel difference histogram (PDH) analysis, but adaptive PVD techniques are tolerant to PDH analysis.
Chapter Preview

Traditional Pvd

One Way PVD

Wu & Tsai (2003) discovered a new paradigm, i.e. “edge regions of an image can hide a greater number of bits as compared to smooth regions”. They came up with a steganographic algorithm known as PVD. The embedding algorithm in PVD is as described below.

The pixels of the image are raster scanned and a pair of adjacent pixels (978-1-5225-7516-0.ch003.m01, 978-1-5225-7516-0.ch003.m02) are termed as a block. For such a block the difference value 978-1-5225-7516-0.ch003.m03 = (978-1-5225-7516-0.ch003.m04- 978-1-5225-7516-0.ch003.m05) is found. A range table like Table 1 is considered. This d value belongs to one of the ranges 978-1-5225-7516-0.ch003.m06 whose width is 978-1-5225-7516-0.ch003.m07 = (978-1-5225-7516-0.ch003.m08 . Here, 978-1-5225-7516-0.ch003.m09 and 978-1-5225-7516-0.ch003.m10 are the lower and upper bounds of the range 978-1-5225-7516-0.ch003.m11. The number of bits that can be hidden in this block is 978-1-5225-7516-0.ch003.m12. Now 978-1-5225-7516-0.ch003.m13 bits of data are taken from the binary data stream and converted to decimal value b. The new difference value is calculated by hiding b in this block as in Eq. (1).

978-1-5225-7516-0.ch003.m14= 978-1-5225-7516-0.ch003.m15(1)

Now 978-1-5225-7516-0.ch003.m16 = 978-1-5225-7516-0.ch003.m17- d is calculated. If d is an odd number the stego block is 978-1-5225-7516-0.ch003.m18. If d is an even number the stego block is 978-1-5225-7516-0.ch003.m19.

The extraction algorithm is as below. The pixels of the stego-image are raster scanned and a pair of adjacent pixels (978-1-5225-7516-0.ch003.m20, 978-1-5225-7516-0.ch003.m21) are termed as a block. For such a block the difference value 978-1-5225-7516-0.ch003.m22 = (978-1-5225-7516-0.ch003.m23-978-1-5225-7516-0.ch003.m24). The same range table i.e. Table 1 is considered. This d value belongs to one of the ranges 978-1-5225-7516-0.ch003.m25 whose width is 978-1-5225-7516-0.ch003.m26 = (978-1-5225-7516-0.ch003.m27. Here, 978-1-5225-7516-0.ch003.m28 and 978-1-5225-7516-0.ch003.m29 are the lower and upper bounds of the range 978-1-5225-7516-0.ch003.m30.The number of bits that can be extracted from this block is 978-1-5225-7516-0.ch003.m31. An example of embedding is as shown in Figure 1. The block is (50, 65). The difference value is 15; it lies in the range {8, 23}. So lower bound is 8 and n value is 4. Suppose the four bits of data to be hidden is 1010, its decimal value is 10. As d ≥ 0, the new value of difference, 978-1-5225-7516-0.ch003.m32=8+10 =18. Now m=978-1-5225-7516-0.ch003.m33-d=3. As d is odd the new value for the block is 978-1-5225-7516-0.ch003.m34 = (48, 66).

Table 1.
The range table
RangeWidthNo. of Bits
978-1-5225-7516-0.ch003.m35 Є {0, 7}978-1-5225-7516-0.ch003.m36= 8978-1-5225-7516-0.ch003.m37=3
978-1-5225-7516-0.ch003.m38 Є {8, 15}978-1-5225-7516-0.ch003.m39= 8978-1-5225-7516-0.ch003.m40=3
978-1-5225-7516-0.ch003.m41 Є {16, 31}978-1-5225-7516-0.ch003.m42= 16978-1-5225-7516-0.ch003.m43=4
978-1-5225-7516-0.ch003.m44 Є {32, 63}978-1-5225-7516-0.ch003.m45= 32978-1-5225-7516-0.ch003.m46=5
978-1-5225-7516-0.ch003.m47 Є {64, 127}978-1-5225-7516-0.ch003.m48= 64978-1-5225-7516-0.ch003.m49=6
978-1-5225-7516-0.ch003.m50 Є {128, 255}978-1-5225-7516-0.ch003.m51= 128978-1-5225-7516-0.ch003.m52=7
Figure 1.

Example of PVD


As per the observation by Zhang and Wang (Zhang & Wang, 2004) this PVD technique is detected by PDH analysis. In PDH of stego-images the zig-zg nature is observed.

Chang et al. (2008) and Lee et al. (2012) extended this PVD idea into 2×2 pixel blocks to improve upon the performance. But they did not prove that their techniques qualify through PDH analysis. Balasubramanian et al. (2014) proposed octonary PVD to improve the performance further and to qualify from PDH analysis.

Complete Chapter List

Search this Book: