High capacity reversible data hiding with interpolation and adaptive embedding

A new Interpolation based Reversible Data Hiding (IRDH) scheme is reported in this paper. For different applications of an IRDH scheme to the digital image, video, multimedia, big-data and biological data, the embedding capacity requirement usually varies. Disregarding this important consideration, existing IRDH schemes do not offer a better embedding rate-distortion performance for varying size payloads. To attain this varying capacity requirement with our proposed adaptive embedding, we formulate a capacity control parameter and propose to utilize it to determine a minimum set of embeddable bits in a pixel. Additionally, we use a logical (or bit-wise) correlation between the embeddable pixel and estimated versions of an embedded pixel. Thereby, while a higher range between an upper and lower limit of the embedding capacity is maintained, a given capacity requirement within that limit is also attained with a better-embedded image quality. Computational modeling of all new processes of the scheme is presented, and performance of the scheme is evaluated with a set of popular test-images. Experimental results of our proposed scheme compared to the prominent IRDH schemes have recorded a significantly better-embedding rate-distortion performance.

Recently, interpolation-based RDH (IRDH) schemes are being studied for a better rate-distortion performance [13][14][15][23][24][25][26][27]. We will briefly review those schemes in Section State of the IRDH schemes showing that their development mainly focuses on the improvement of two underlying processes: (i) computation of interpolated pixels and (ii) embedding of payload. For computing interpolated pixels, the parabolic interpolation (PI) offers better image quality so far [13][14][15]. For embedding, interpolated pixels of an input image are generally used, keeping the original pixels untouched, which is desirable in the military and medical image applications.
Additionally, while a better visual quality of the embedded images can be obtained with the existing IRDH schemes, a varying embedding capacity requirement (i.e., varying size payloads) is yet to be considered. For different multi-disciplinary applications of an RDH scheme, the payload size usually varies. It is generally assumed that embedding will continue for the last bit of payload within the capacity limit that may result in non-uniform distortion in the embedded image [28]. Thus the best possible image quality for embedding varying size payloads cannot always be ensured. This embedding problem of varying size payload can be addressed using adaptive embedding, which again poses three main challenges: (i) defining a universal capacity control parameter to deterministically allocate room for payload bits, (ii) keeping dynamic range of the embedding capacity possibly 'higher' to attain the varying capacity requirement of a target application, and (iii) maintaining a uniform distribution of the embeddable bits for minimum possible distortion resulting in a better rate-distortion performance.
As a first step to tackle the above challenges, we employed a capacity control parameter in [14,15] that deterministically selects a set of bit-planes for embedding original or complement form of payload bits. For tracking these versions of the embedded data (i.e., original or complement), a flag bit was introduced. The PI technique in [13] was simplified for efficiently computing an interpolated image in [14,15]. While a high dynamic range of embedding capacity was obtained with our initially developed schemes [14,15], the capacity can be further increased if the use of flag bits can be avoided. It means, one more payload-bit can be embedded replacing a flag bit in a pixel with improved embedded image quality.
Therefore, as a primary contribution of this paper (see Section Scope of improvement for more details), we present a new adaptive IRDH scheme. We use the simplified PI technique (SPI) [15] for up-sampling an input image (Section Image up-sampling). An adaptive embedding with a capacity control parameter is more formally defined and employed for embedding of varying size payloads (Section Proposed adaptive embedding). We utilize a logical (or bitwise) correlation between the embeddable pixel and estimated versions of an embedded pixel to avoid the use of any flag bit. This scheme is thus envisaged to have a significantly betterembedding rate-distortion performance (Section Results and analysis) and would create a new paradigm in adaptive IRDH research for different multi-disciplinary applications.
an input image is directly up-sampled (using interpolation) for embedding (see Section Modeling our proposed IRDH scheme and Fig 1), where interpolated pixels are used in different ways to achieve a better rate-distortion performance, which is discussed in the sections below.

Interpolation techniques
Different interpolation techniques have been employed for up-sampling the cover image during embedding. For example, neighbor mean interpolation (NMI) [23], interpolation by neighboring pixels (INP) [25], enhanced neighbor mean interpolation (ENMI) [27] and parabolic interpolation (PI) [13] are a few that showed great promises for IRDH schemes. Additionally, bilinear interpolation (BI) and nearest neighbor interpolation (NNI) are two basic interpolation techniques that have not been employed in IRDH schemes, but they are used to compare the performance of interpolation in IRDH schemes (for example, see [13,29]).
The NMI technique [23] computes an interpolated pixel as the average of the nearest original pixels. For the horizontal or vertical neighborhood, two nearest pixels are considered and for the diagonal neighborhood, three nearest pixels are considered. Thereby, a 2 × 2 block of an input image is up-sampled to a size of 3 × 3 containing five interpolated pixels. While this technique offers reasonably good up-sampled image quality, a better quality up-sampled image can be obtained by redefining the neighborhood and interpolated pixels for computing the final interpolated pixels as reported in IRDH schemes with INP [25] and ENMI [27].
However, for further improvement of the interpolated image quality, PI has later been introduced in an IRDH scheme [13]. With a set of three known pixels (i.e., original pixels), two unknown pixels are computed as such an original image block of size 1 × 3 is up-sampled to a block of size 1 × 5. To obtain an up-sampled pixel a weighted average of its all possible interpolated values and other nearest neighborhood pixels (that are not considered for interpolation) is used. This computation continues for all overlapping blocks of original pixels with separate consideration of interpolated pixels in the image border. With a relatively higher computational complexity, this technique produces the best quality interpolated image so far.
We have therefore simplified the PI technique of Zhang et al. [14] using only non-overlapping image blocks. To avoid the inter-block visual artifact, we also improved that simplified technique later in [15] with overlapping blocks, where an interpolated pixel in a block is computed once in each direction (i.e., horizontal, vertical and diagonal) (see Section Modeling our proposed IRDH scheme). Whereas, in Zhang et al.'s PI technique, as mentioned above, multiple versions of each interpolated pixel are computed to get a closer estimate. Thus, our simplified PI [15] (that we call SPI technique in what follows) significantly reduces the computational complexity of Zhang et al.'s PI technique to obtain similar embedded image quality. This will be demonstrated in terms of run-time and embedded image quality with some new results in Section Results and analysis. A minimal working example of our SPI technique is illustrated in Section A working example.

Embedding techniques based on interpolation
We now briefly discuss the use of interpolation techniques in IRDH schemes. The main uses of interpolation are found for (i) computing prediction errors (PEE-based schemes [30][31][32]), (ii) computing embeddable bits (DLE-based schemes [23][24][25]), and (iii) a combination of both [27]. An IRDH scheme with PEE computes the predicted errors from the cover image and interpolated image, and the secret data are embedded by modifying the predicted errors in a subset of original pixels. Here, reversibility of these schemes depends on the PEE process. In contrast, an IRDH scheme with DLE embeds secret data only in the interpolated pixels by replacing their LSBs, keeping the original pixels untouched. This embedding is particularly useful in applications like medical and military imaging, where minimum changes in the cover images (i.e., original pixels) are usually restricted [29,[33][34][35][36][37].
The DLE-based schemes are relatively simple and offer better user access control than the other IRDH schemes mentioned above. This means that while the secret data may be extracted by an authorized user (i.e., who has the privilege to obtain the embedded data), the cover image may be independently restored by any user who wants to see it original. For this purpose, a suitable cryptographic tool with private or public keys may be employed for encrypting payload, which is beyond the scope of this paper. In summary, IRDH schemes with DLE have several advantages over its counterpart as noted below: • embedding and extraction processes are relatively simple • a location map is not usually required • embedded image being up-sampled provides a higher spatial resolution • the original pixels remain untouched (required in some military and medical applications) • instant recovery of the cover image (with or without extraction of the embedded data) by down-sampling • a better user access control to the embedded data and cover image, and • a relatively higher embedding capacity with reasonably better image quality.
Although a combination of the DLE and PEE techniques in IRDH scheme has also been reported in [27] to offer a better image quality and higher embedding capacity, the above advantage of the DLE-based schemes may no longer exist. That type of IRDH scheme thus can be semi-reversible (i.e., the embedded data can be completely extracted, while the original image can be partially recovered), and the original pixels cannot also be preserved intact in the embedded image. In this paper, we, therefore, limit our focus to the development of a DLEbased IRDH scheme.
A recent DLE based IRDH scheme reported in [29] introduced Base-3 conversion of the embeddable data bits and demonstrated an improved rate-distortion performance with the embedding of a large size payload, which includes location maps for complete extraction of the embedded data. Although those location maps are compressed and embedded along with the base-converted secret data, this essentially reduces the effective embedding capacity of the scheme [38]. This also means that with any suitable compression and/or base-conversion of payloads may also improve the embedding capacity of other existing IRDH schemes including our scheme presented in this paper, which is left beyond the scope of this paper and mentioned in Section Conclusion.
Other prominent DLE-based IRDH schemes [13,23,25] also improved interpolated image quality for high embedding capacity requiring no location map and compression technique. However, they do not account for any varying capacity requirement, which leaves a room for improvement of the IRDH scheme for embedding varying size payload. Therefore, in this paper, we develop and present a new IRDH scheme for high capacity adaptive data hiding. Technical details of the proposed scheme are discussed in Section Modeling our proposed IRDH scheme for the envisaged improvements noted in the section below.

Scope of improvement
The current state of the IRDH schemes, as discussed above, demands a suitable adaptive embedding process that is computationally efficient and offers a better rate-distortion performance, particularly for varying embedding capacity requirements. Our research presented in this paper thus contributes to the development of an adaptive IRDH scheme as follows.
• An SPI technique is developed for efficient up-sampling of the input image.
• A capacity control parameter is formulated and employed in developing a new adaptive embedding process to deterministically allocate the room for embedding.
• A better-embedded image quality is ensured with a closer estimate of the embeddable pixel.
• Computational models of all key processes of the proposed IRDH scheme are developed.
• Rate-distortion performance of the proposed IRDH scheme is evaluated, analyzed and validated with the prominent IRDH schemes [13,23,25] and our earlier scheme [15].
The early result of our work with the SPI technique has been presented in [14,15], as discussed in Section Image up-sampling. For embedding, we employed a capacity control parameter in [14,15] to allocate the room for embedding. To minimize embedding distortion, we computed a closer estimate of the embeddable pixels using either the original or the complement of the payload bits. To track the versions of the embedded bits, we used a flag bit. However, the embedding capacity of those schemes can further be improved if an additional bit can be embedded in place of the flag bit.
In this paper, we investigate for the use of a logical (i.e. bit-wise) correlation between the embeddable pixels and two versions (i.e., original and complement) of embedded pixels. Thereby, the use of flag-bit can be avoided to embed one more payload bit in every place of flag-bits, which would significantly increase the embedding capacity with no additional embedding distortion (see Section Modeling our proposed IRDH scheme). We thus develop a new adaptive IRDH scheme for varying size payload embedding with the best possible embedded image quality. We formulate the capacity control parameter more formally and present the simplified up-sampling, new embedding and extraction processes with their algorithmic details in Section Modeling our proposed IRDH scheme. Moreover, we analyze the performance of our schemes with new results by comparing it with the IRDH schemes in [13,15,23,25] (see Section Results and analysis).

Modeling our proposed IRDH scheme
A general framework of our proposed IRDH scheme is presented in Fig 1. Three main processes of the scheme (i.e., image up-sampling, embedding, and extraction) are modeled and discussed in this section below. We adopt the general notation of the data hiding framework from [10,39], which is summarized in Table 1. We also differentiate between the embeddable and interpolated pixels as such the embeddable pixels are a sub-set of interpolated pixels, where the payload is embedded in. The other interpolated pixels (i.e., the last three interpolated pixels, see the last paragraph of Section Proposed adaptive embedding) are used to carry any side information required to execute the extraction and recovery processes.

Image up-sampling
We present here a general framework of PI first followed by its use in modeling SPI technique for up-sampling an input image. Let us consider a set of 5 consecutive pixels, {y i }: where L is the bit-depth of the given Table 1. Key nomenclature for our proposed IRDH framework.

Notation
Term  (5) n em number of embeddable bits of y as in Eq (6) y i , y i,j y of i th or (i, j) th position in 1D or 2D array, respectively, which also applies to y 0 y 0 an embedded pixel image. This is illustrated in Fig 2. With this setting, the known pixels are {y i }: i 2 {1, 3, 5} and the other two are the up-sampled pixels, i.e., {y i }: i 2 {2, 4} that are unknown and will be computed using PI.
For computing the unknown pixels, y 2 and y 4 , a set of three parabolic equations of the form a.i 2 + b.i + c = y i are obtained with the three known pixels as in Eq (1). The coefficients, a, b, and c are then obtained from the solution of these equations, which are used to compute the y 2 and y 4 as in Eq (2). This computation will be applied in each directional block (i.e., horizontal, vertical and diagonal) and is repeated for all blocks to compute an interpolated image. This SPI-based up-sampling is modeled with the function interp(�) in Algorithm 1.   Each directional block contains five consecutive pixels, where the 1st, 3rd and 5th pixels are the original, and the 2nd and 4th pixels are the newly inserted zero pixels, whose values are to be computed using Eqs (1) and (2)

Proposed adaptive embedding
We model here our proposed embedding such that it can adaptively embed the payload into the LSBs of the embeddable pixels. For this, we first formulate a capacity control parameter, T in Eq (3) for adaptive embedding, i.e., to attain any varying embedding capacity requirement. In general, T is a predefined number of unchanged MSBs. So, the lesser is the value of T, the greater are the number of embeddable LSBs, and so is the embedding capacity. However, with a higher capacity requirement, embedding distortion is usually higher. So, a maximum possible value of T is required as such the capacity requirement, γ is attained with the best possible embedded image quality. We model the process of computing T in Algorithm 3, where T lies in the range [1, L − 1]. For different values of T, the embedding capacity, E c is computed in Step 10 of Algorithm 3 using Eq (4a), which is the total number of embeddable bits, i.e., ∑n em for all y 2 C − I as per Eq (6). Algorithm 3. c.parameter (C, data, F) ⊳ N 1 is the total pixels with two embeddable LSBs as per Eq (6) 4 for all y 2 C − I do ⊳ for all embeddable pixels in C 5 n bitlength(y) ⊳ returns bit-length of y using Eq (5) 6 if n � 1 + T then Algorithm 3 illustrates that with the initialized T = L − 1 (i.e., the largest value of T), E c is computed to verify if the embedding capacity requirement, γ is attained. If not, the value of T is further decreased and this process continues until Eq (4b) is satisfied. We note here that, with the lowest value of T (i.e., T = 1), the capacity condition in Eq (4b) may not be fulfilled for some large size payload, γ. This means that the payload size may sometimes exceed the maximum embedding capacity. While this condition may also be true for other RDH schemes, we leave an option to reconsider the up-sampling factor, F to increase the number of embeddable pixels. However, we here illustrate a case of our IRDH scheme with F = 2, which may be increased for a higher embedding capacity requirement with a higher size interpolated (or cover) image.
Once T is obtained for a capacity requirement, γ, the embedding process is invoked for embedding given payload bits. The proposed embedding is modeled in Algorithm 2. The algorithm takes C, data, F and T as a set of inputs and returns the embedded image, I em . For example, with a given embeddable pixel y 2 C − I the bit length, n is calculated by the function bitlength(�) using Eq (5). The number of embeddable LSBs, n em is then computed according to the condition given in Eq (6) by the function getnem(�). Now, n em -number of LSBs of y is compared with the n em -bit data, d and its complement, � d using a bit-wise XOR operation. Thus, their logical differences, X d and X � d are computed, respectively. These X d and X � d are compared according to the condition given in Eq (7) to choose the final embedded pixel, y 0 either from y d or y � d. (Here, y d and y � d are the two versions of embedded pixel computed using substituteLSB(�); the first version replaces the LSBs of y with the d, and the second one replaces the same with � d.) In other words, jX d j � jX � dj means that embeddable pixel version, y d is closer to y. So, the embedded pixel, y 0 would take the value of y d ; otherwise, the embedded pixel would be y � d. Continuing this embedding for all embeddable pixels, an embedded image, I em is obtained.
Reversible data hiding with interpolation For a blind operation of the recovery and extraction processes, the value of F and T are to be stored as side information in the I em such that the cover image can completely be recovered and the embedded data are exactly extracted from I em . For this, the last three interpolated pixels are excluded for embedding. In each of these pixels, two bits of the 6-bit side information (the first 3-bits are for F and the rest 3-bits are for T) are embedded so that the receiver can extract these bits to execute the extraction and recovery processes. The other interpolated pixels used for payload embedding are defined as the embeddable pixels in Algorithm 2 and 4. So, without loss of generality, we omit the embedding and extraction of F and T in the algorithms assuming that this pre-processing can be employed later for a practical application scenario.

Proposed payload extraction with image recovery
Once the embedded image is sent to the receiver as showed in Fig 1, extraction of the embedded payload bits and recovery of the original image takes place. The data extraction with image recovery of our IRDH scheme is modeled in Algorithm 4. The original image, I can be restored instantly by down-sampling the embedded image, I em (i.e., discarding the embedded pixels) and the embedded payload can be blindly extracted from the I em . Once the original image, I is restored, the interpolated image, C is reconstructed using interp(�). Now, for all embedded pixels y 0 2 I em − I, the bit length, n of y 0 and the number of embedded bits, n em in y 0 are calculated using bitlength(�) and getnem(�) as per Eqs (8) and (6), respectively. Now, n em -number of LSBs of y 0 2 I em − I and corresponding y 2 C − I are extracted as b and p, respectively using getLSB(�). Then b and p are compared using a bit-wise XOR operation to determine if the set of embedded bits is equal to b or its complement, � b as per Eq (9). These operations are stated in Steps 13-22 of Algorithm 4. Therefore, all the extracted payload-bits, d are concatenated by append(�) to reconstruct the payload, D (which should be the same as the embedded payload, data).

A working example
We now briefly explain a minimal working example for our proposed IRDH scheme. As illustrated in Fig 4, an input image of size 3 × 3 is up-sampled to an image of size 6 × 6 using our SPI technique with F = 2 (see Algorithm 1). The up-sampling process is initialized with the interleaving zero columns and zero rows in the input image as in Fig 4(b). The darker pixels in the figure represent the original pixels and these pixels are kept unchanged. A directional block of five pixels is considered in all possible horizontal, vertical and diagonal directions to compute two unknown pixels from three known pixels as mentioned in Section Image upsampling. For a minimal working example, we explain here the first horizontal block, where the three known pixels are y 1 = 152, y 3 = 161 and y 5 = 192 and the unknown pixels are y 2 and y 4 . We initialize the up-sampling process for the unknown pixels, y 2 and y 4 with zeros, which are to be replaced by the respective interpolated values. We derive the set of three parabolic equations as in Eq (1) for the known three pixels, and solve those equations to obtain the coefficients, a = 2.75, b = −6.5 and c = 155.75. With the values of the coefficients, we now compute the unknown pixel values using Eq (2), i.e., y 2 = 153.75 = 154 and y 4 = 173.75 = 174, where the values are rounded up to the nearest integer numbers. This process of obtaining two interpolated pixels from three known pixels continues for all the directional blocks to obtain the final interpolated image with necessary padding as illustrated in Fig 4(c).
We now illustrate the process of our proposed adaptive embedding. The payload, a pseudorandom binary data (e.g., 1101100111011010011110111110101000011010001 . . .) is embedded into the embeddable pixels (white colored cells in the figure) and the embedded image is presented in Fig 4(d). The embedding process, for example, is now illustrated with T = 5 in Fig 5. Let us consider the first embeddable pixel, y = (154) 10 = (10011010) 2 . The bit-length of y is n = 8, thus from Eq 6, we get the number of embeddable bits, n em = n − T = (8-5) = 3. The set of the three embeddable LSBs of y is p = 010. On the other hand, 3 bit of payload, d = 110. This set of payload bits, d is embedded in the embeddable LSBs of y, either in its original form (i.e. d = 110) or in complement form (i.e. � d ¼ 001). Now, the two versions of an embedded pixel, y d and y � d can be obtained by substituting d or � d respectively, for the set of embeddable LSBs, p. To select the final embedded pixel, we utilize a bit-wise correlation of p and d. We then compute the value, X d = 4 using bit-wise XOR operation of p and d, and X � d ¼ 3 using bit-wise XOR of p and � d. According to Eq 7, since jX d j > jX � d, replacement of the LSBs, p = 010 with the complement of data bits, � d ¼ 001 (i.e., y � d version of the embedded pixel) would cause minimum embedding distortion to the embeddable pixel, y. So, we obtain the final embedded pixel, 10 . On the other hand, in extraction, the original image can be exactly recovered by simply discarding the embedded pixels from the embedded image. Applying the reverse process of embedding, we can also completely extract the embedded payload from the embedded pixels as explained in Section Proposed payload extraction with image recovery.

Results and analysis
This section presents the experimental results and analysis of our proposed IRDH scheme. In Section Computational efficiency of our SPI technique, we analyze the computational efficiency of our SPI technique, and in Section Rate-distortion performance of the proposed scheme, the embedding rate-distortion performance of our IRDH scheme is analyzed and validated by comparing it with some prominent IRDH schemes [13,23,25] and also with our previous scheme [15]. The experiment is carried out for a set of standard USC-SIPI grayscale test-images [40] of size 256 × 256. As mentioned in Section Image up-sampling, we have used a factor, F = 2, for up-sampling the original test images to a size of 512 × 512. The visual quality of the interpolated and embedded images are evaluated in terms of PSNR (peak signal to noise ratio) in dB and SSIM (structural similarity), two popular image quality metrics. Embedding rate and capacity are expressed in terms of bpp (bit per pixel) and the total number of embedded bits respectively. MATLAB R2016b with a 1.3 GHz Intel Core i5 CPU of 4 GB memory is used for all necessary implementations.
The PSNR values for the embedded images are computed in terms of mean square error (MSE) as given in Eqs (10) and (11). Here, y i,j and y 0 i;j are the pixel values of position (i, j) in an interpolated image and its embedded version, both of size FM × FN, respectively. Besides, SSIM values are computed using Eq (12), where μ y and μ y 0 are the average values of y i,j and y 0 i;j , and s 2 y and s 2 y 0 are the variance of y i,j and y 0 i;j , respectively;σ y,y 0 is the covariance of y i,j and y 0 i;j ; and c 1 = (k 1 L) 2 and c 2 = (k 2 L) 2 are two regularization constants for the 2 L − 1 dynamic range of the pixel values and a set of small constants, k 1 and k 2 [41]. Here, L is the bit-depth of the images.  Table 2

Rate-distortion performance of the proposed scheme
We observe that the embedded images by our scheme remain visually imperceptible compared to the interpolated images. Fig 6 illustrates the visual quality of interpolated and embedded versions of Boat, Goldhill and Lena images for different values of the capacity controlling parameter, T. Although this comparison is shown here only for a few sample test images, similar visual quality is also obtained for the other test images. A quantitative illustration of the rate-distortion performance is presented in Tables 3 and 4 in terms of PSNR (in dB), SSIM and embedding capacity (in total bits and bpp). As illustrated in Tables 3 and 4, our proposed scheme offers a relatively better-embedded image quality (i.e., the higher values of PSNR and SSIM) that gradually increases with the lower embedding rates and higher values of T. This is because, as mentioned in Section Proposed adaptive embedding, number of embeddable bits decreases (and respective embedded  Reversible data hiding with interpolation  [13] Embedding with flag [15] Embedding without flag (proposed)

T = 3 T = 4 T = 5 T = 6 T = 3 T = 4 T = 5 T = 6
Airfield image quality improves), while T increases. Thus, a trade-off between the image quality and embedding rate is made with the adaptively chosen value of T, as explained in Algorithm 3, to obtain the best possible image quality for a given capacity requirement. Moreover, for similar embedding rates with a suitable value of T, our scheme is also observed to generate a better quality embedded image compared to that obtained by the schemes in [13,15,23,25]. Particularly, unlike the schemes in [14] and [15], our scheme is modeled in Section Modeling our proposed IRDH scheme to avoid the use of flag bit. One more payload bit is rather embedded replacing the flag-bit in each embeddable pixel. This improvement of embedding rate and capacity with a better or almost similar embedded image quality becomes evident, while it is compared to [15] for the same values of T as in Figs 7 and 8. For example, with T = 4, our previous scheme [15] can embed up to 460611 bit payload with 1.76 bbp in Lena image, while the PSNR is 35.38 dB and SSIM is 0.6818; whereas, 656654 bit payload (2.51 bpp) with a better image quality (i.e., PSNR of 41.52 dB and SSIM of 0.8327) are embedded in our proposed scheme for the same value of T. This means that for a given value of T, our scheme achieves a higher embedding rate with improved image quality compared to the scheme in [15].
For the higher embedding capacity requirement (i.e., lower values of T), our proposed scheme also demonstrates a better rate-distortion performance than the scheme in [15]. For instance, with T = 5 and Lena image, our proposed scheme embeds total 491740 bits with 1.88 bpp, PSNR of 46.88 dB and SSIM of 0.9352. In contrast, with T = 4 and Lena image, the scheme in [15] can embed total 460611 bits of payload with 1.78 bpp, PSNR of 35.38 dB and SSIM of 0.6818, which are lower than the proposed scheme. This trend of improvement is also evident for the other test images in Fig 7. Statistically, the scheme in [15] achieves an average maximum capacity ranging from 291 Kb to 666 Kb, PSNR from 45.43 dB to 29.40 dB and SSIM from 0.96 to 0.65 for T = [3,6]. In contrast, the average embedding capacity of our proposed scheme varies in the dynamic range from 393 Kb to 861 Kb payload (i.e., 1.50 bpp to 3.29 bpp) for the same range of the capacity control parameter, with PSNR and SSIM values ranging from 35.37 dB to 47.61 dB and 0.811 to 0.982, respectively. With T = 5, for example, this improvement is recorded with 53.9% higher embedding capacity, 13.67% higher PSNR, and 5.93% higher SSIM, which are illustrated for the all considered values of T in Fig 8. This suggests that our proposed scheme offers both the higher dynamic range of embedding capacity and better-embedded image quality for a given capacity requirement.
Nevertheless, our proposed scheme also outperforms the prominent IRDH schemes in [13,23,25] for the individual test images in Tables 3 and 4. These improvements become more apparent in the average performance given in Table 5 and Fig 8. For example, Table 5 demonstrates that Zhang et al.'s scheme [13] offers the best embedding rate-distortion performance among the schemes in [13,23,25], which can embed an average size payload of 585 Kb (or embedding rate of 2.234 bpp) with PSNR of 26.55 dB and SSIM of 0.898. For our proposed scheme, considering its closer embedding rate to that of Zhang et al.'s scheme, we see that an embedding rate of 2.551 bpp (total 668 Kb) is obtained with a better PSNR of 41.42 dB and SSIM of 0.9158 for T = 4. Thus with T = 4, our proposed scheme offers 14% higher embedding rate with 56% and 2% better PSNR and SSIM, respectively. Moreover, we also note that the requirement of either a higher capacity or a better image quality can be attained with a lower or higher value of T, respectively for our proposed IRDH scheme.
In summary, considering the computational efficiency and rate-distortion performance, our proposed IRDH scheme outperforms the existing IRDH schemes [13,15,23,25]. For example, compared to our earlier scheme [15] (which is also better than the other three schemes, see Fig 8), the embedding capacity improvements are recorded 29%, 40%, 53% and 35% higher with 20%, 16.9%, 13.6% and 4.8% higher PSNR and 24.7%, 12.9%, 5.9% and 2.24% higher SSIM for T = 3, 4, 5 and 6, respectively. Thereby, the proposed scheme has demonstrated that it can effectively embed varying size payloads with the higher embedding rate and better image quality using a suitable capacity control parameter. Reversible data hiding with interpolation

Conclusion
A new adaptive IRDH scheme is presented and its computational efficiency and rate-distortion performance are analyzed in this paper for varying size of payloads. We have developed the SPI technique and utilized it for computing interpolated pixels. We have defined the capacity condition for adaptive embedding and formulated a capacity control parameter to attain that condition. Embedding process is modeled to utilize the logical correlation between the embeddable pixel and estimated versions of an embedded pixel to increase the embedding capacity. Extraction is modeled to blindly extract the embedded payload and to completely recover the original image, where these two processes were kept mutually independent to ensure a better user control in an application scenario.
Experimental results have substantiated that our proposed scheme can effectively embed varying size payload with a significantly higher embedding rate and better image quality compared to the prominent IRDH schemes. Embedding is carried out only in the interpolated pixels that would also minimize any possible concern of erratically modifying the input image and thus the proposed scheme could be useful in the military and medical image applications. With the adoption of suitable base conversion and compression techniques, the embedding capacity of the proposed IRDH scheme, however, may be further improved in the future.
Supporting information S1 File. Sample MATLAB scripts. The given MATLAB scripts execute the proposed scheme with a set of given inputs, and write the statistical performance (in a Microsoft Excel file) and output images of the scheme.