# An Innovative Information Hiding Scheme Based on Block-Wise Pixel Reordering
## 3 Proposed Scheme
### Data Hiding
9: & Convert decimal index \(indx\) to binary secret bits & \((indx)_{10}=(sm_{0}\ \|\ \ sm_{1}\ \|\ \ \cdots\ \|\ \ sm_{insm-1})_{2}\). & Append secret bits to \(RSM\). & END & END
10: & Export \(RSM\). ```

**Algorithm 2**Data Extraction. #### 3.5.2 Image Recovery

If a receiver has an encryption key \(k_{e}\), a recovered image with high visual quality can be obtained. The marked image \(I_{m}\) is converted into a pixel stream first. Depending on the size of a pixel-block \(n\) and the number of blocks \(m\) in a block-group received, the marked pixel stream is broken into pixel-blocks and block-groups. The pixels in each pixel-block form a codeword, and a codeword table \(T\) is created for each block-group of the marked image by using these codewords. We can extract the original pixel-blocks' indices by extracting the values from the LSBs of pixels in pixel-blocks and recover the pixel values by using the encryption key \(k_{e}\). Algorithm 3 goes through the recovery steps in more detail. ## 4 Experimental Results

In this section, we conducted experiments on an Intel(R) Core(TM) i5-9500 CPU utilizing the MATLAB environment, version 2017a, within the Windows PC operating system, in order to assess the performance of the proposed solution and compare it with some state-of-the-art (SOTA) schemes. We evaluated the performance of the proposed data hiding scheme through experimental analysis. A binary data stream \(S\), generated by a random number generator, was employed as the secret information. The two key factors that we pay attention during data hiding are good visual quality and high embedding quantity. To keep the visual quality means that the recovered images look as similar to the original cover images as possible. To efficiently measure the embedding quantity, embedding capacity (EC) is calculated, representing the total number of bits that the proposed scheme could embed in the image. With the evolution of data hiding techniques, numerous metrics have been utilized to assess the visual quality of the restored images. The commonly employed metrics include Peak Signal-to-Noise Ratio (PSNR) and Structural Similarity Index (SSIM). The calculation formulas are provided below:

\[\text{MSE}=\frac{1}{W\times H}\sum_{i=1}^{W}\sum_{j=1}^{H}\left(O_{i,j}-R_{i,j} \right)^{2}, \tag{9}\]

\[\text{PSNR}=10 log_{10}\frac{\left(255\right)^{2}}{\text{MSE}}(\text{dB}), \tag{10}\]

\[\text{SSIM}= \frac{\left(2\mu_{O}\mu_{D}+c_{1}\right)\left(2\sigma_{OD}+c_{2} \right)}{\left[\left(\mu_{O}\right)^{2}+\left(\mu_{D}\right)^{2}+c_{1}\right] \left[\left(\sigma_{O}\right)^{2}+\left(\sigma_{D}\right)^{2}+c_{2}\right]}, \tag{11}\]

where \(W\) and \(H\) represent the width and height of the images, and \(O_{i,j}\) and \(R_{i,j}\) denote the pixel values at position \((i,j)\) for the cover image and the restored image. \(\mu\) represents the mean value used as an estimate for luminance; \(\sigma\) is the standard deviation used as an estimate of contrast; \(\sigma_{OD}\) denotes the covariance between the original image \(O\) andthe restored image \(R\) and serves as a metric for structural similarity; \(c_{1}\), and \(c_{2}\) are two constants close to zero. A higher PSNR value indicates less distortion caused by the hidden data. Typically, PSNR values exceeding 30 dB suggest image distortion imperceptible to the human eye. SSIM combines three factors--luminance, contrast, and structure--to assess the similarity between two images. The SSIM range is from \(-1\) to \(1\). As the value of SSIM approaches \(1\), it demonstrates a higher degree of similarity between the two images. At the same time, information entropy is selected to test the security of the encrypted image, that is, the randomness of the image histogram is calculated by the following method:

\[\text{entropy}=\sum_{pi=0}^{255}P(pi)\text{log}\,\frac{1}{P(pi)}, \tag{12}\]

where _pi_ represents the image pixel value between 0 and 255, and \(P(pi)\) is the probability of the image pixel value _pi_ occurring.