# Digital Image Steganography Using LSB Substitution, PVD, and EMD

Authors: Anita Pradhan; K. Raja Sekhar; Gandharba Swain
Journal: Mathematical Problems in Engineering
 (2018)

---

## Abstract

To protect from pixel difference histogram (PDH) analysis andRS analysis, two hybrid image steganography techniques by appropriate combination of LSB substitution, pixel value differencing (PVD), and exploiting modification directions (EMD) have been proposed in this paper. The cover image is traversed in raster scan order and partitioned into blocks. The first technique operates on 2 × 2 pixel blocks and the second technique operates on 3 × 3 pixel blocks. For each block, the average pixel value difference, d, is calculated. If d value is greater than 15, the block is in an edge area, so a combination of LSB substitution and PVD is applied. If d value is less than or equal to 15, the block is in a smooth area, so a combination of LSB substitution and EMD is applied. Each of these two techniques exists in two variants (Type 1 and Type 2) with respect to two different range tables. The hiding capacities and PSNR of both the techniques are found to be improved. The results from experiments prove that PDH analysis andRS analysis cannot detect these proposed techniques.


---

## Body

## 1. Introduction

The fundamental principle of a steganography technique is to hide the secret data in image, audio, or video files [1]. Data can be hidden in images using spatial domain or frequency domain. LSB substitution is the most common technique of data hiding in spatial domain. But it can be easily detected byRS analysis [2]. To augment security in LSB substitution techniques, some precautionary measures need to be taken. The LSB planes that will carry the secret data can be selected based upon the bit pattern hidden in neighboring pixels [3]. The bits from one or more LSB planes of the pixels can be joined together to make an array. The binary data bits can be concealed in this array at appropriate portions to minimize distortion and to improve the security [4]. The PVD steganography is another familiar data hiding technique [5]. This technique exploits the smooth areas to hide lesser number of secret bits and edge areas to hide more number of secret bits. Many variants of PVD technique have been found in literature. A technique of Khodaei and Faez uses both LSB and PVD concepts [6]. It possesses higher hiding capacity and lesser distortion. The problem in the PVD techniques is that they are attacked by pixel difference histogram (PDH) analysis. One mechanism that addresses this problem is the adaptive range table [7, 8]. Instead of a fixed range table for all the pixels, it can be varied for every pixel. Even the number of LSB bits to be hidden in different pixels can be varied based on the smoothness of the block into which the pixel belongs to [9], so that security can be improved.Zhang and Wang [10] proposed exploiting modification direction (EMD) steganography. The principal goal in it is that a group of secret bits be converted to a digit in (2n+1)-ary notational system, where n is the size of pixel block. This secret digit could be hidden in the pixel block by adding ±1 to only one pixel. In this technique, the hiding capacity is not good. The hiding capacity has been improved in two-stage technique in [11] and 8-ary technique in [12]. Lee et al. [13] proposed EMD technique using pixel segmentation. In a pair of pixels, each pixel is segmented into two segments. The MSB segments of the two pixels together is called the vector of coordinates (VCA) and the LSB segments of the two pixels together are called vector modification area (VMA). The bits of VCA decide about embedding. Jung and Yoo [14] proposed an EMD technique in a block of one pixel to increase the hiding capacity. The EMD technique based on diamond encoding also could improve the hiding capacity [15]. Joo et al.’s EMD technique using modulus function preserved the pixel difference histogram [16]. Kim et al. [17] has proposed two EMD techniques, namely, EMD-2 and 2-EMD. In EMD-2 technique at most two pixels are modified and in 2-EMD technique, two consecutive EMDs are used. Both these techniques achieve higher hiding capacity. Wang et al. [18] said that a number of pixel groups could be combined to derive more number of embedding directions, so that distortion can be reduced. Kieu and Chang’s [19] EMD technique used eight modification directions. It fully exploited all modification directions and measured the hiding capacity and distortion for different values of the parameter, s. Wang et al.’s [20] EMD technique combined multiple groups to hide the data according to a designed switch map, so that the hiding capacity can be increased and distortion can be decreased. Fu et al. [21] used EMD and multilayer embedding mechanism with histogram shifting to achieve reversibility. Kim [22] advanced the EMD technique using basis vector, and 2n+x-1-ary notational system, where n and x are user defined values. Shen and Huang [23] made the hiding capacity of a block adaptive by using PVD with EMD. This PVD with EMD technique provides higher hiding capacity and better PSNR. To improve upon the security keys are used to generate pseudo random numbers, which can be used to find the embedding locations [24].It is found that Shen and Huang’s [23] PVD with EMD technique is detectable by PDH analysis. To advance further in this paper we judiciously combined LSB substitution, PVD, and EMD techniques to protect against PDH analysis and to possess larger hiding capacity without sacrificing the PSNR. There are two techniques proposed, the first technique is designed using 2 × 2 pixel blocks and the second technique is designed using 3 × 3 pixel blocks.


## 2. The Proposed Technique 1 (LSB + PVD + EMD in 2 × 2 Pixel Blocks)

### 2.1. The Embedding Procedure

Step 1.
The image is traversed in raster scan order and partitioned into nonoverlapping blocks of size 2 × 2. A sample block is shown in Figure1(a).Figure 1
(a) Cover pixel block, (b) stego block, and (c) stego block used for extraction.
(a) (b) (c)Step 2.
For every block the average pixel value difference,d=1/3∑i=13Pc-Pi, is computed. If d is greater than 15, then the block is said to be an edge area; otherwise, it is a smooth area.Step 3.
In an edge area embedding is done using LSB substitution and PVD.Step 4.
In a smooth area embedding is done using LSB substitution and EMD.The LSB + PVD Embedding Approach. The first LSB of pixel Pc is substituted by bit 1, to act as an indicator during extraction. The other 2 LSBs are substituted by 2 data bits. A new value of this pixel pc′ is obtained. Suppose, the decimal value of the three LSBs of pc′ is s1 and the decimal value of the three LSBs of Pc is i1. A difference value df1=i1-s1 is calculated and pc′ is optimized by(1)pc′=pc′+23,ifdf1>23-1,0≤pc′+23≤255pc′-23,ifdf1<-23-1,0≤pc′-23≤255pc′,otherwiseNow calculate three difference values, di=pc′-pi for i=1,2,3. It falls into one of the ranges in range table. Based on the range of di, the number of bits to be hidden (ni) can be decided. Table 1 can be referred to as Type 1 and Table 2 can be referred to as Type 2. Now convert each ni bits of confidential data to its decimal value dsi for i=1,2,3. Then compute the new value for this difference as di′=li+dsi for i=1,2,3. Now for each pi where i=1,2,3, calculate two new values pi′′=pc′-di′ and pi′′′=pc′+di′. Select one of these two values as pi′ by applying(2)pi′=pi′′,ifpi-pi′′<pi-pi′′′,0≤pi′′≤255pi′′′,otherwiseTable 1
Range table (Type 1).
Range,{li,ui} R 1 = 0,7 R 2 = 8,15 R 3 = { 16,31 } R 4 = 32,63 R 5 = 64,127 R 6 = 128,255 No of bits to be hidden,ni 3 3 3 3 4 4Table 2
Range table (Type 2).
Range,{li,ui} R 1 = { 0,7 } R 2 = { 8,15 } R 3 = { 16,31 } R 4 = { 32,63 } R 5 = { 64,127 } R 6 = { 128,255 } No of bits to be hidden,ni 3 3 4 5 6 6The LSB + EMD Embedding Approach. The first LSB bit of pixel pc is substituted by bit 0, which can act as an indicator during extraction. The other two LSBs of pc are substituted by two data bits. Thus, a new value pc′ of the pixel pc is obtained. Suppose, the decimal value of the three LSBs of pc′ is s1 and the decimal value of the three LSBs of Pc is i1. A difference value df1=i1-s1 is calculated and pc′ is optimized by (1).Suppose we denote the remaining pixels (p1, p2, p3) by a name pk, where k=1,2,3. Now apply EMD for each pk as follows. Each pk has to hide 2 bits of data. The decimal equivalent of the two data bits is mk. Now select x from {-3,-2,-1,0} and calculate pk′′=pk+x such that the condition (pk′′mod⁡4=mk) satisfies. Similarly select x from {1,2,3} and calculate pk′′′=pk+x such that the condition (pk′′′mod⁡4=mk) satisfies. If for all the three values in list {1,2,3}, the condition (pk′′′mod⁡4=mk) does not satisfy, then set pk′′′=-10. Now calculate the stego value pk′ for pk by (3).(3)pk′=pk′′,ifpk′′′<0orpk′′′>255,0≤pk′′≤255or0≤pk′′,pk′′′≤255,pk-pk′′≤pk-pk′′′pk′′′,ifpk′′<0orpk′′>255,0≤pk′′′≤255or0≤pk′′,pk′′′≤255,pk-pk′′′≤pk-pk′′Thus, Figure 1(b) represents the stego-pixel block.


### 2.2. The Extraction Procedure

Step 1.
The stego image is traversed in raster scan order and partitioned into nonoverlapping blocks of size 2 × 2. Figure1(c) represents a sample 2 × 2 stego-pixel block.Step 2.
The LSB bit ofpc∗ is checked, if it is 1, then for this block the extraction procedure of LSB + PVD approach is used as follows. The next two LSBs of pc∗ are extracted. Furthermore, the di∗=pc∗-pi∗ and si∗=di∗-li for i=1,2,3 are calculated, where di∗ belongs to the range Ri and li is the lower bound of this range. Now each of these si∗ is converted to ni binary bits, where ni is the value corresponding to the same range Ri of di∗. Note that the same range table (Table 1 or Table 2) which was used during embedding should be used during extraction.Step 3.
If the LSB bit ofpc∗ is 0, then for this block the extraction procedure of LSB + EMD is applied as follows. The next two LSBs of pc∗ are extracted. For all the remaining pixels (p1∗, p2∗, p3∗) the decimal equivalent of the embedded bits, mk, is calculated as mk=pk∗mod⁡4, for k=1,2,3. Now each mk is converted to 2 binary bits.


## 2.1. The Embedding Procedure

Step 1.
The image is traversed in raster scan order and partitioned into nonoverlapping blocks of size 2 × 2. A sample block is shown in Figure1(a).Figure 1
(a) Cover pixel block, (b) stego block, and (c) stego block used for extraction.
(a) (b) (c)Step 2.
For every block the average pixel value difference,d=1/3∑i=13Pc-Pi, is computed. If d is greater than 15, then the block is said to be an edge area; otherwise, it is a smooth area.Step 3.
In an edge area embedding is done using LSB substitution and PVD.Step 4.
In a smooth area embedding is done using LSB substitution and EMD.The LSB + PVD Embedding Approach. The first LSB of pixel Pc is substituted by bit 1, to act as an indicator during extraction. The other 2 LSBs are substituted by 2 data bits. A new value of this pixel pc′ is obtained. Suppose, the decimal value of the three LSBs of pc′ is s1 and the decimal value of the three LSBs of Pc is i1. A difference value df1=i1-s1 is calculated and pc′ is optimized by(1)pc′=pc′+23,ifdf1>23-1,0≤pc′+23≤255pc′-23,ifdf1<-23-1,0≤pc′-23≤255pc′,otherwiseNow calculate three difference values, di=pc′-pi for i=1,2,3. It falls into one of the ranges in range table. Based on the range of di, the number of bits to be hidden (ni) can be decided. Table 1 can be referred to as Type 1 and Table 2 can be referred to as Type 2. Now convert each ni bits of confidential data to its decimal value dsi for i=1,2,3. Then compute the new value for this difference as di′=li+dsi for i=1,2,3. Now for each pi where i=1,2,3, calculate two new values pi′′=pc′-di′ and pi′′′=pc′+di′. Select one of these two values as pi′ by applying(2)pi′=pi′′,ifpi-pi′′<pi-pi′′′,0≤pi′′≤255pi′′′,otherwiseTable 1
Range table (Type 1).
Range,{li,ui} R 1 = 0,7 R 2 = 8,15 R 3 = { 16,31 } R 4 = 32,63 R 5 = 64,127 R 6 = 128,255 No of bits to be hidden,ni 3 3 3 3 4 4Table 2
Range table (Type 2).
Range,{li,ui} R 1 = { 0,7 } R 2 = { 8,15 } R 3 = { 16,31 } R 4 = { 32,63 } R 5 = { 64,127 } R 6 = { 128,255 } No of bits to be hidden,ni 3 3 4 5 6 6The LSB + EMD Embedding Approach. The first LSB bit of pixel pc is substituted by bit 0, which can act as an indicator during extraction. The other two LSBs of pc are substituted by two data bits. Thus, a new value pc′ of the pixel pc is obtained. Suppose, the decimal value of the three LSBs of pc′ is s1 and the decimal value of the three LSBs of Pc is i1. A difference value df1=i1-s1 is calculated and pc′ is optimized by (1).Suppose we denote the remaining pixels (p1, p2, p3) by a name pk, where k=1,2,3. Now apply EMD for each pk as follows. Each pk has to hide 2 bits of data. The decimal equivalent of the two data bits is mk. Now select x from {-3,-2,-1,0} and calculate pk′′=pk+x such that the condition (pk′′mod⁡4=mk) satisfies. Similarly select x from {1,2,3} and calculate pk′′′=pk+x such that the condition (pk′′′mod⁡4=mk) satisfies. If for all the three values in list {1,2,3}, the condition (pk′′′mod⁡4=mk) does not satisfy, then set pk′′′=-10. Now calculate the stego value pk′ for pk by (3).(3)pk′=pk′′,ifpk′′′<0orpk′′′>255,0≤pk′′≤255or0≤pk′′,pk′′′≤255,pk-pk′′≤pk-pk′′′pk′′′,ifpk′′<0orpk′′>255,0≤pk′′′≤255or0≤pk′′,pk′′′≤255,pk-pk′′′≤pk-pk′′Thus, Figure 1(b) represents the stego-pixel block.


## 2.2. The Extraction Procedure

Step 1.
The stego image is traversed in raster scan order and partitioned into nonoverlapping blocks of size 2 × 2. Figure1(c) represents a sample 2 × 2 stego-pixel block.Step 2.
The LSB bit ofpc∗ is checked, if it is 1, then for this block the extraction procedure of LSB + PVD approach is used as follows. The next two LSBs of pc∗ are extracted. Furthermore, the di∗=pc∗-pi∗ and si∗=di∗-li for i=1,2,3 are calculated, where di∗ belongs to the range Ri and li is the lower bound of this range. Now each of these si∗ is converted to ni binary bits, where ni is the value corresponding to the same range Ri of di∗. Note that the same range table (Table 1 or Table 2) which was used during embedding should be used during extraction.Step 3.
If the LSB bit ofpc∗ is 0, then for this block the extraction procedure of LSB + EMD is applied as follows. The next two LSBs of pc∗ are extracted. For all the remaining pixels (p1∗, p2∗, p3∗) the decimal equivalent of the embedded bits, mk, is calculated as mk=pk∗mod⁡4, for k=1,2,3. Now each mk is converted to 2 binary bits.


## 3. The Proposed Technique 2 (LSB + PVD + EMD in 3 × 3 Pixel Blocks)

### 3.1. The Embedding Procedure

Step 1.
The image is traversed in raster scan order and partitioned into nonoverlapping blocks of size 3 × 3. A sample block is shown in Figure2(a).Figure 2
(a) Cover pixel block, (b) stego block, and (c) stego block used for extraction.
(a) (b) (c)Step 2.
An average pixel value difference,d=1/8∑i=18Pc-Pi, is calculated.Step 3.
Ifd value is greater than 15, then a combination of LSB substitution and PVD is applied.Step 4.
Ifd value is less than or equal to 15, then a combination of LSB substitution and EMD is applied.The LSB + PVD Embedding Approach. In the central pixel, Pc 3 LSBs are substituted by 3 data bits. A new value of the central pixel is found. Say it is pc′. In pixel p8 the first LSB is substituted by bit 1, which will be used as indicator during extraction procedure. The other two LSBs in it are substituted by two data bits. After substituting, three LSBs, suppose the new value of pixel p8 is p8′. The decimal value of the three LSBs of pc′ is s1 and the decimal value of three LSBs of Pc is i1. Similarly, the decimal value of three LSBs of p8′ is s2 and the decimal value of three LSBs of p8 is i2. Now calculate the differences df1 and df2 as, df1=i1-s1 and df2=i2-s2. Now optimize the values of pc′ and p8′ using (1) and (4), respectively. (4)p8′=p8′+23,ifdf2>23-1,0≤p8′+23≤255p8′-23,ifdf2<-23-1,0≤p8′-23≤255p8′,otherwiseNow calculate seven difference values,di=pc′-pi for i=1,2,…,7. These difference values lie in one of the ranges of the range table. Table 1 can be chosen as Type 1 or Table 2 can be chosen as Type 2. Based on the range of di, the number of bits to be hidden (ni) can be decided from the range table.Now convert eachni bits of confidential data to its decimal value dsi for i=1,2,…,7. Then compute the new values for the seven differences as di′=li+dsi for i=1,2,…,7. Now for each pi where i=1,2,…,7, calculate two new values pi′′=pc′-di′ and pi′′′=pc′+di′. Select one of these two values as pi′ by applying (2). This pi′ is the stego value of pi.The LSB + EMD Embedding Approach. The first LSB of pixel p8 is substituted by 0 and the next two LSBs are substituted by two data bits. After embedding, say it is p8′. The decimal value of the three LSBs of p8′ is s2 and the decimal value of three LSBs of p8 is i2. Now calculate the difference df2 as df2=i2-s2. Now optimize the value of p8′ using (4).Suppose we denote the remaining pixels (p1,p2,p3,p4,p5,p6,p7,pc) by a name pk, where k=1,2,3,4,5,6,7,c. Now apply EMD for each pk as follows. Each pk has to hide 2 bits of data. The decimal equivalent of the two data bits is mk. Now select x from {-3,-2,-1,0} and calculate pk′′=pk+x such that the condition (pk′′mod⁡4=mk) satisfies. Similarly select x from {1,2,3} and calculate pk′′′=pk+x such that the condition (pk′′′mod⁡4=mk) satisfies. If for all the three values in list {1,2,3}, the condition (pk′′′mod⁡4=mk) does not satisfy, then set pk′′′=-10. Now calculate pk′ by (3). This pk′ is the stego value of pk.Thus, Figure2(b) represents the stego-pixel block.


### 3.2. The Extraction Procedure

Step 1.
The stego image is traversed in raster scan order and partitioned into nonoverlapping blocks of size 3 × 3. Figure2(c) represents a sample 3 × 3 stego-pixel block.Step 2.
The LSB bit ofp8∗ is checked, if it is 1 then for this block the extraction procedure of LSB + PVD approach is used as follows. The three LSBs of pc∗ and next two LSBs of p8∗ are extracted. Furthermore, the di∗=pc∗-pi∗ and si∗=di∗-li for i=1,2,3,…,7 are calculated, where di∗ belongs to the range Ri and li is the lower bound of this range. Now each of these si∗ is converted to ni binary bits, where ni is the value corresponding to the same range Ri of di∗. Note that the same range table (Table 1 or Table 2) which was used during embedding should be used during extraction.Step 3.
If the LSB bit ofp8∗ is 0, then for this block the extraction procedure of LSB + EMD is applied as follows. The next two LSBs of p8∗ are extracted. For all the remaining pixels (p1∗,p2∗,p3∗,p4∗,p5∗,p6∗,p7∗,pc∗), the decimal equivalent of the embedded bits, mk is calculated as mk=pk∗mod⁡4, for k=1,2,3,4,5,6,7,c. Now each mk is converted to 2 binary bits.


## 3.1. The Embedding Procedure

Step 1.
The image is traversed in raster scan order and partitioned into nonoverlapping blocks of size 3 × 3. A sample block is shown in Figure2(a).Figure 2
(a) Cover pixel block, (b) stego block, and (c) stego block used for extraction.
(a) (b) (c)Step 2.
An average pixel value difference,d=1/8∑i=18Pc-Pi, is calculated.Step 3.
Ifd value is greater than 15, then a combination of LSB substitution and PVD is applied.Step 4.
Ifd value is less than or equal to 15, then a combination of LSB substitution and EMD is applied.The LSB + PVD Embedding Approach. In the central pixel, Pc 3 LSBs are substituted by 3 data bits. A new value of the central pixel is found. Say it is pc′. In pixel p8 the first LSB is substituted by bit 1, which will be used as indicator during extraction procedure. The other two LSBs in it are substituted by two data bits. After substituting, three LSBs, suppose the new value of pixel p8 is p8′. The decimal value of the three LSBs of pc′ is s1 and the decimal value of three LSBs of Pc is i1. Similarly, the decimal value of three LSBs of p8′ is s2 and the decimal value of three LSBs of p8 is i2. Now calculate the differences df1 and df2 as, df1=i1-s1 and df2=i2-s2. Now optimize the values of pc′ and p8′ using (1) and (4), respectively. (4)p8′=p8′+23,ifdf2>23-1,0≤p8′+23≤255p8′-23,ifdf2<-23-1,0≤p8′-23≤255p8′,otherwiseNow calculate seven difference values,di=pc′-pi for i=1,2,…,7. These difference values lie in one of the ranges of the range table. Table 1 can be chosen as Type 1 or Table 2 can be chosen as Type 2. Based on the range of di, the number of bits to be hidden (ni) can be decided from the range table.Now convert eachni bits of confidential data to its decimal value dsi for i=1,2,…,7. Then compute the new values for the seven differences as di′=li+dsi for i=1,2,…,7. Now for each pi where i=1,2,…,7, calculate two new values pi′′=pc′-di′ and pi′′′=pc′+di′. Select one of these two values as pi′ by applying (2). This pi′ is the stego value of pi.The LSB + EMD Embedding Approach. The first LSB of pixel p8 is substituted by 0 and the next two LSBs are substituted by two data bits. After embedding, say it is p8′. The decimal value of the three LSBs of p8′ is s2 and the decimal value of three LSBs of p8 is i2. Now calculate the difference df2 as df2=i2-s2. Now optimize the value of p8′ using (4).Suppose we denote the remaining pixels (p1,p2,p3,p4,p5,p6,p7,pc) by a name pk, where k=1,2,3,4,5,6,7,c. Now apply EMD for each pk as follows. Each pk has to hide 2 bits of data. The decimal equivalent of the two data bits is mk. Now select x from {-3,-2,-1,0} and calculate pk′′=pk+x such that the condition (pk′′mod⁡4=mk) satisfies. Similarly select x from {1,2,3} and calculate pk′′′=pk+x such that the condition (pk′′′mod⁡4=mk) satisfies. If for all the three values in list {1,2,3}, the condition (pk′′′mod⁡4=mk) does not satisfy, then set pk′′′=-10. Now calculate pk′ by (3). This pk′ is the stego value of pk.Thus, Figure2(b) represents the stego-pixel block.


## 3.2. The Extraction Procedure

Step 1.
The stego image is traversed in raster scan order and partitioned into nonoverlapping blocks of size 3 × 3. Figure2(c) represents a sample 3 × 3 stego-pixel block.Step 2.
The LSB bit ofp8∗ is checked, if it is 1 then for this block the extraction procedure of LSB + PVD approach is used as follows. The three LSBs of pc∗ and next two LSBs of p8∗ are extracted. Furthermore, the di∗=pc∗-pi∗ and si∗=di∗-li for i=1,2,3,…,7 are calculated, where di∗ belongs to the range Ri and li is the lower bound of this range. Now each of these si∗ is converted to ni binary bits, where ni is the value corresponding to the same range Ri of di∗. Note that the same range table (Table 1 or Table 2) which was used during embedding should be used during extraction.Step 3.
If the LSB bit ofp8∗ is 0, then for this block the extraction procedure of LSB + EMD is applied as follows. The next two LSBs of p8∗ are extracted. For all the remaining pixels (p1∗,p2∗,p3∗,p4∗,p5∗,p6∗,p7∗,pc∗), the decimal equivalent of the embedded bits, mk is calculated as mk=pk∗mod⁡4, for k=1,2,3,4,5,6,7,c. Now each mk is converted to 2 binary bits.


## 4. Results and Discussion

The implementation work is done using MATLAB tool and with the RGB color images. The data hiding is performed in Red, Green, and Blue planes separately. It can also be applied on gray scale images. Experiments are done with many images. Few samples are shown here. Figure3 represents four original samples. Figures 4 and 5 are their stego samples for Type 1 and Type 2 of technique 1, respectively. Figures 6 and 7 are the stego samples for Type 1 and Type 2 of technique 2, respectively. Each stego image has hidden 700000 (seven lakhs) bits of secret data. These stego images look innocuous and no distortion is observable.Figure 3
Original images.
(a)
Lena (b)
Baboon (c)
Boat (d)
PotFigure 4
Stego images of technique 1 (Type 1).Figure 5
Stego images of technique 1 (Type 2).Figure 6
Stego images of technique 2 (Type 1).Figure 7
Stego images of technique 2 (Type 2).In Table3 the results of Wu and Tsai’s PVD technique and Shen and Huang’s [23] PVD + EMD technique are given. In Tables 4 and 5, the results of the proposed technique 1 and technique 2 respectively, are given. These results are comprised of four parameters, (i) hiding capacity [1], (ii) bits per byte (BPB) [8], (iii) PSNR [1], and (iv) quality index, Q [6].Table 3
Results of existing techniques.
Images512 × 512 × 3 Wu and Tsai [5] Shen and Huang [23] PSNR Capacity Q BPB PSNR Capacity Q BPB Lena 43.67 1232606 0.999 1.56 38.01 1223062 0.998 1.55 Baboon 38.40 1403491 0.998 1.78 40.14 1343274 0.999 1.70 Peppers 43.13 1174751 0.999 1.49 41.57 1226139 0.999 1.55 Jet 43.97 1220544 0.999 1.55 43.35 1212350 0.999 1.54 Boat 41.33 1278971 0.999 1.62 41.35 1264742 0.999 1.60 House 41.27 1256404 0.999 1.59 41.75 1242081 0.999 1.57 Pot 44.01 1163700 0.999 1.47 43.38 1195641 0.999 1.52  Average 42.25 1247209 0.999 1.57 41.36 1243898 0.999 1.58Table 4
Results of proposed technique 1.
Images512 × 512 × 3 Proposed 3 PVD + 3 LSB + EMD (Type 1) Proposed 3 PVD + 3 LSB + EMD (Type 2) PSNR Capacity Q BPB PSNR Capacity Q BPB Lena 44.45 1631063 0.999 2.07 41.33 1687353 0.999 2.15 Baboon 34.85 1898778 0.997 2.41 32.54 2237194 0.994 2.84 Peppers 40.26 1635779 0.999 2.08 38.73 1693901 0.999 2.15 Jet 42.88 1637898 0.999 2.08 42.04 1702029 0.999 2.16 Boat 38.50 1708242 0.999 2.17 36.09 1840256 0.998 2.34 House 40.23 1691500 0.999 2.15 39.18 1808544 0.998 2.30 Pot 46.35 1599030 0.999 2.03 42.80 1622565 0.999 2.06 Average 41.07 1686041 0.999 2.14 38.95 1798834 0.998 2.28Table 5
Results of proposed technique 2.
Images512 × 512 × 3 Proposed 7 PVD + 3 LSB + EMD (Type 1) Proposed 7 PVD + 3 LSB + EMD (Type 2) PSNR Capacity Q BPB PSNR Capacity Q BPB Lena 44.98 1639022 0.999 2.09 41.26 1690031 0.999 2.15 Baboon 34.67 1987328 0.996 2.54 32.49 2338643 0.994 2.98 Peppers 38.14 1640887 0.998 2.09 34.70 1693278 0.997 2.16 Jet 43.00 1647786 0.999 2.10 40.46 1709098 0.998 2.18 Boat 37.76 1740611 0.998 2.22 34.36 1873870 0.997 2.39 House 40.12 1724458 0.998 2.20 38.79 1841047 0.998 2.35 Pot 43.28 1596123 0.999 2.04 38.80 1617011 0.999 2.06 Average 40.28 1710888 0.998 2.18 37.26 1823282 0.998 2.32It can be found from Tables3, 4, and 5 that the hiding capacity and BPB of proposed technique 1 (Type 1 and Type 2) and technique 2 (Type 1 and Type 2) are significantly enhanced as compared to that of Wu and Tsai and Shen and Huang’s techniques. Furthermore, the PSNR of the proposed technique 1 (Type 1 and Type 2) and technique 2 (Type 1 and Type 2) are nearly equal to that of Wu and Tsai and Shen and Huang’s techniques.Furthermore, the average performance of the proposed techniques is compared with that of Kieu and Chang’s [19] technique. The average BPB and PSNR for the proposed two techniques is as given in Table 6. Similarly the BPB and PSNR of Kieu and Chang’s technique for different values of the parameter s is as given in Table 7. By observing Table 6 we can find that in the proposed techniques with BPB values 2.14, 2.18, 2.28, and 2.32, the PSNR values are 41.07, 40.28, 38.95, and 37.26, respectively. By observing Table 7 we can find that in the Kieu and Chang’s technique with BPB values 1, 2, 3, and 4, the PSNR values are 52.39, 46.74, 40.82, and 34.82, respectively. Thus, the PSNR and BPB values of Kieu and Chang’s technique (for s=6, BPB = 2.5, and PSNR = 43.29) are slightly better than that of the proposed techniques (BPB = 2.32, and PSNR = 41.07). But there is no experimental evidence that Kieu and Chang’s technique is undetectable by PDH analysis andRS analysis. The proposed techniques are undetectable by PDH analysis; it is experimentally proved in Figures 9 and 10. It is also proved in Figures 11 and 12 that the proposed techniques are undetectable byRS analysis. PSNR and BPB are not only the measuring parameters; security analysis is also another parameter to be taken into consideration while judging the merit of a steganography technique.Table 6
Average results of proposed techniques.
Type BPB PSNR Proposed 3 PVD + 3 LSB + EMD (Type 1) 2.14 41.07 Proposed 7 PVD + 3 LSB + EMD (Type 1) 2.18 40.28 Proposed 3 PVD + 3 LSB + EMD (Type 2) 2.28 38.95 Proposed 7 PVD + 3 LSB + EMD (Type 2) 2.32 37.26Table 7
Average results of Kieu and Chang’s technique [19].
S value BPB PSNR 2 1 52.39 3 1.5 49.89 4 2 46.74 6 2.5 43.29 8 3 40.82 12 3.5 37.31 16 4 34.82 23 4.5 31.69Now let us come to security analysis. The PDH analysis diagrams clearly reveal the step effects in Shen and Huang’s technique, Figures8(a) and 8(b). Wu and Tsai’s technique is also detected by PDH analysis, proved in [25]. But for the proposed techniques, Figures 9(a)–9(d) and Figures 10(a)–10(d), the step effects are not observable.Figure 8
PDH analysis for Shen and Huang’s technique.
(a)
Shen and Huang (b)
Shen and HuangFigure 9
PDH analysis for proposed technique 1 (Type 1 and Type 2).
(a)
Proposed 3 PVD + 3 LSB + EMD (Type 1) (b)
Proposed 3 PVD + 3 LSB + EMD (Type 2) (c)
Proposed 3 PVD + 3 LSB + EMD (Type 1) (d)
Proposed 3 PVD + 3 LSB + EMD (Type 2)Figure 10
PDH analysis for proposed technique 2 (Type 1 and Type 2).
(a)
Proposed 7 PVD + 3 LSB + EMD (Type 1) (b)
Proposed 7 PVD + 3 LSB + EMD (Type 2) (c)
Proposed 7 PVD + 3 LSB + EMD (Type 1) (d)
Proposed 7 PVD + 3 LSB + EMD (Type 2)Figure 11
RS analysis for Proposed technique 1 (Type 1 and Type 2).
(a)
Lena (Type 1) (b)
Baboon (Type 1) (c)
Lena (Type 2) (d)
Baboon (Type 2)Figure 12
RS analysis of Proposed for proposed technique 2 (Type 1 and Type 2).
(a)
Lena (Type 1) (b)
Baboon (Type 1) (c)
Lena (Type 2) (d)
Baboon (Type 2)We can observe theRS analysis curves of the proposed technique 1 in Figure 11. In Lena image there is bigger number of smooth blocks, but in Baboon image there is bigger number of edge blocks. For Baboon image curves for Rm and R-m are linear and nearly parallel to each other. Similarly, curves for Sm and S-m are linear and nearly parallel to each other. Hence, the relation Rm≅R-m>Sm≅S-m is strongly satisfied. For Lena image curve for Rm is linear and the curve for R-m is slightly diverging from it. Similarly, curves for Sm are linear and the curve for S-m is slightly diverging from it. Hence, the relation Rm≅R-m>Sm≅S-m is weakly satisfied for Lena image. Figure 12 represents theRS analysis for technique 2. In all the four cases, the graphs for Rm and R-m are linear and nearly overlap with one another, and the graphs for Sm and S-m are linear and nearly overlap with one another. Hence, the relation Rm≅R-m>Sm≅S-m is strongly satisfied. Hence, it can be concluded thatRS analysis cannot detect the proposed steganography techniques.


## 5. Conclusion

Shen and Huang proposed PVD in connection with EMD to achieve greater hiding capacity and higher PSNR. But it is found to be detectable by pixel difference histogram analysis. To fix this problem, a combination of LSB substitution, PVD, and EMD is proposed in this paper. The proposed technique 1 and technique 2 operate on 2 × 2 and 3 × 3 pixel blocks, respectively, by calculating the average of the pixel value differences. Based on this average value, either PVD or EMD is applied in combination with LSB. Both the techniques give higher hiding capacity compared to that of Shen and Huang’s technique. The recorded PSNR values are also as good as that of Shen and Huang’s technique. If we compare between the two proposed techniques, then Type 1 of technique 1 is good for PSNR and Type 2 of technique 2 is good for hiding capacity. It has also been proved that the proposed techniques are not detectable byRS analysis.



---

*Source: 1804953-2018-09-05.xml*