Ciphertext domain reversible data hiding method based on progressive convolutional neural network predictor
Through the combination of the progressive convolutional neural network predictor and the median edge predictor, a two-stage embedding model is adopted to solve the problem of insufficient embedding capacity and recovery quality of texture complex images in the existing technology, and efficient data embedding and losslessness are achieved Recovery improves image embed capacity and security.
Patent Information
- Application Number
- CN202411251677.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-06
- Publication Date
- 2024-12-17
AI Technical Summary
Existing reversible data hiding methods are difficult to meet actual needs when facing images with complex textures, especially in application scenarios that require high fidelity.
Using the ciphertext domain reversible data hiding method based on the progressive convolutional neural network predictor, the data embedding capacity is improved by multiple image prediction and two-stage embedding model, and combined with the median edge predictor to achieve Lossless recovery of images.
It significantly improves the embedding capacity and recovery quality of images, and can restore the original image losslessly after extracting secret information, providing strong support for privacy protection and data security.
Smart Images

Figure CN119155407A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of information security and privacy protection, and is a ciphertext domain reversible data hiding method based on a progressive convolutional neural network predictor, which is applied to the fields of data integrity verification, privacy protection, copyright protection, etc. Background Art
[0002] With the rapid development of information technology, digital images have played an important role in people's lives due to their rich and colorful expressions. However, these images often contain personal privacy or even confidential information. Therefore, how to protect the privacy information has become a concern for many computer researchers, and data hiding technology is an important part of it. Data hiding is a technology that embeds some additional information without occupying additional storage resources, and is widely used in copyright protection, integrity verification, access control and other fields. However, in some quality-sensitive fields, the receiver needs to completely restore the original image, so reversible data hiding technology came into being.
[0003] Reversible data hiding is an information hiding technique that allows data to be embedded in digital media (such as images, audio, video) and the original carrier to be fully restored after the embedded data is extracted. This technique is particularly useful in scenarios where data integrity must be maintained, such as medical images, legal documents, and other applications that require high fidelity.
[0004] Existing reversible data hiding methods mainly include difference expansion, histogram shift and prediction error expansion. Although these methods can achieve lossless embedding and recovery of data to a certain extent, they still have certain limitations in terms of embedding capacity, security and image quality. Especially when facing images with complex textures, the embedding capacity and recovery quality of existing methods are difficult to meet actual needs. Summary of the invention
[0005] The purpose of the present invention is to provide a reversible data hiding method in the ciphertext domain based on a progressive convolutional neural network predictor, which embeds secret data through multiple image predictions and a two-stage embedding model, not only realizing efficient data embedding and lossless recovery of images, but also greatly improving the embedding capacity of images.
[0006] To achieve the above object, the technical solution adopted by the present invention is as follows:
[0007] The present invention provides a ciphertext domain reversible data hiding method based on a progressive convolutional neural network predictor, comprising:
[0008] Preprocess the original image to obtain the preprocessed image I 1 ,I 2 ,I3 and I 4 ;
[0009] Image I 1 ,I 2 ,I 3 As the input of the progressive convolutional neural network predictor, the predicted image PI is obtained 4 , then image I 1 ,I 2 As input, we get the predicted image PI 3 , and then image I 1 As input, we get the predicted image PI 2 Finally, the median edge predictor is used to predict the image I 1 Perform self-prediction to obtain the predicted image PI 1 ;
[0010] According to the preprocessed image I 1 ,I 2 ,I 3 and I 4 , and the predicted image PI 1 ,PI 2 ,PI 3 and PI 4 , generate the prediction error ex of the original image;
[0011] A two-stage embedding model is used to first embed the image I 1 ,I 2 ,I 3 and I 4 Encrypt, and then embed the secret data in the encrypted image to obtain the secret image SI 1 、SI 2 、SI 3 and SI 4 ;
[0012] The encrypted image SI 1 、SI 2 、SI 3 and SI 4 Merge to obtain the final encrypted image SI;
[0013] Perform secret data extraction and image recovery based on the final encrypted image;
[0014] Furthermore, it also includes:
[0015] The original image is divided into 2*2 blocks, and the upper left corner pixel of each block constitutes the sub-image I 1 , the lower right corner pixel of each block constitutes sub-image I 2 , the lower left corner pixel of each block constitutes sub-image I 3, the upper right corner pixel of each block constitutes sub-image I 4 ;
[0016] Furthermore, the prediction error ex of the original image is generated, including:
[0017] Predicted image PI 1 ,PI 2 ,PI 3 and PI 4 The pixels in the predicted image and the pixels in the original image are in one-to-one correspondence. Take a pixel px in the predicted image and its corresponding original pixel x, convert them into 8-bit binary form respectively, and subtract them to get the prediction error ex (-256≤ex≤256). Image I 2 ,I 3 and I 4 The prediction error is ex cnn , image I 1 The prediction error is ex med , the prediction errors of all pixels constitute the prediction error ex of the original image;
[0018] Furthermore, secret data is embedded into the encrypted image, including:
[0019] Using stream encryption algorithm to encrypt image I 1 ,I 2 ,I 3 and I 4 Encryption is performed;
[0020] According to the prediction error ex of the original image, the prediction error information is converted into binary, and then the original image is compressed using a bit plane compression method to make room for embedding the secret data and obtain the auxiliary information Auxi of the image;
[0021] Using the two-stage embedding model, after the encrypted image I 1 ,I 2 ,I 3 and I 4 Embed secret data in to obtain a secret image SI;
[0022] Furthermore, it also includes:
[0023] Image I 1 In the image I 2 ,I 3 and I 4 After being predicted, the secret data is first embedded in the image I 2 ,I 3 and I 4 When the secret data can be fully embedded in image I 2 ,I 3 and I4 If the image is in the middle, the second stage of secret data embedding is not performed; otherwise, the remaining secret data is embedded into the image I 1 middle;
[0024] Further, the bit plane sorting method and the bit plane compression method include:
[0025] After the bit planes are divided into blocks, the 8 bit planes of the prediction error are reordered in order from high to low. The bit planes are divided into sub-blocks of size 2×2, and then the bit planes are reordered according to four reordering types. The four reordering types are: intra-block row traversal and inter-block row traversal, intra-block row traversal and inter-block column traversal, intra-block column traversal and inter-block row traversal, intra-block column traversal and inter-block column traversal. Define the length of a segment of the same character bit string extracted from the bit plane bit stream after reordering as L. Then, set the coefficient L fix (L fix =4). Then, according to the size of L, decide to use a suitable compression coding method to compress the bit plane bit stream;
[0026] Furthermore, embedding of auxiliary information and secret data includes:
[0027] If a bit plane can be compressed, that is, the length of the compressed bit stream is less than the length of the original bit stream, the first bit of the bit plane is set to 1, otherwise it is set to 0. Then, the type of bit plane sorting is recorded in the second and third bits of the bit plane that can be compressed. Then, the eight compressed bit plane bit streams are connected to generate a new multi-MSB bit plane and the auxiliary information is recorded at the head position, and the multi-LSB bit plane is reserved and filled with 0. After the auxiliary information is embedded, the secret data is embedded at the end in the same way;
[0028] Furthermore, the extracting and recovering of secret data in the final encrypted image includes:
[0029] Preprocess the final encrypted image SI to obtain the preprocessed image SI 1 、SI 2 、SI 3 and SI 4 ;
[0030] According to the auxiliary information from the image SI 1 The secret data is extracted from the image, and then the compressed bit stream is restored to obtain the original image I through self-prediction and prediction error. 1 ;
[0031] According to the auxiliary information from the image SI 2 、SI 3 and SI 4The secret data is extracted from the image, and then the compressed bit stream is restored. The original image I is obtained by sequentially predicting it through the progressive convolutional neural network predictor and combining the prediction error. 2 ,I 3 and I 4 ;
[0032] Combine the two parts of secret data to get the original secret data, and transform image I 1 ,I 2 ,I 3 and I 4 Merge to get the original image;
[0033] Furthermore, the final encrypted image SI is preprocessed, including:
[0034] The original image is divided into 2*2 blocks, and the upper left corner pixel of each block constitutes the sub-image I 1 , the lower right corner pixel of each block constitutes sub-image I 2 , the lower left corner pixel of each block constitutes sub-image I 3 , the upper right corner pixel of each block constitutes sub-image I 4 ;
[0035] Further, the extraction of auxiliary information and secret data includes:
[0036] Obtain auxiliary information at the header of the bitstream and extract the image block size and coefficient L based on the auxiliary information fix , then obtain the length of the secret data embedded in the image and extract the secret data, and then determine whether the bit plane is compressed and the type of bit plane sorting according to the flag bit of each bit plane, and restore the compressed bit stream;
[0037] Further, the original image is restored, including:
[0038] The encrypted image is decrypted using a stream encryption algorithm, and then the pixel value representation is converted from binary to decimal, and then the median edge predictor and the progressive convolutional neural network predictor are used to predict the I 1 ,I 2 ,I 3 and I 4 Predictions are made sequentially and the original image is obtained by combining the prediction errors;
[0039] The beneficial effects achieved by the present invention are:
[0040] The present invention proposes a reversible data hiding method in the ciphertext domain based on a progressive convolutional neural network predictor. By using a progressive convolutional neural network predictor and a median edge predictor to make two predictions, and using a two-stage embedding model to embed secret data, this method makes full use of the correlation between pixels, improves the data embedding capacity, and makes the embedding process more flexible. The use of a progressive convolutional neural network significantly improves the prediction accuracy of the image. This innovative method can not only restore the original image losslessly after extracting secret information, but also improve the embedding capacity of the image, providing strong support for privacy protection and data security. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] Figure 1 is the original Lena image in the embodiment of the present invention;
[0042] Figure 2 is a secret data embedding flow chart in an embodiment of the present invention;
[0043] Figure 3 is a structural diagram of a progressive convolutional neural network predictor in an embodiment of the present invention;
[0044] Figure 4 is a flow chart of secret data extraction and image recovery in an embodiment of the present invention;
[0045] Figure 5 is a Lena image with secret data embedded therein in an embodiment of the present invention;
[0046] Figure 6 3 is a pixel value distribution diagram of the original image and the encrypted image of the Lena image in the embodiment of the present invention. DETAILED DESCRIPTION
[0047] The present invention is further described below. The following examples are only used to more clearly illustrate the technical solution of the present invention, and are not intended to limit the protection scope of the present invention.
[0048] The embodiment of the present invention provides a ciphertext domain reversible data hiding method based on a progressive convolutional neural network predictor, comprising the following steps:
[0049] (1) Image preprocessing: Preprocess the original image to obtain the preprocessed image I 1 ,I 2 ,I 3 and I 4 The specific implementation process is to divide the original image into 2*2 blocks, and the upper left corner pixel of each block constitutes the sub-image I 1 , the lower right corner pixel of each block constitutes sub-image I 2 , the lower left corner pixel of each block constitutes sub-image I 3, the upper right corner pixel of each block constitutes sub-image I 4 .
[0050] (2) Image prediction:
[0051] Image I 1 ,I 2 ,I 3 As the input of the progressive convolutional neural network predictor, the predicted image PI is obtained 4 , then image I 1 ,I 2 As input, we get the predicted image PI 3 , and then image I 1 As input, we get the predicted image PI 2 Finally, the median edge predictor is used to predict the image I 1 Perform self-prediction to obtain the predicted image PI 1 .
[0052] (3) Generation of prediction error:
[0053] Predicted image PI 1 ,PI 2 ,PI 3 and PI 4 The pixels in the predicted image and the pixels in the original image are in one-to-one correspondence. Take a pixel px in the predicted image and its corresponding original pixel x, convert them into 8-bit binary form respectively, and subtract them to get the prediction error ex (-256≤ex≤256). Image I 2 ,I 3 and I 4 The prediction error is ex cnn , image I 1 The prediction error is ex med , the prediction errors of all pixels constitute the prediction error ex of the original image.
[0054] (4) Generation of auxiliary information:
[0055] If a bit plane can be compressed, that is, the length of the compressed bit stream is less than the length of the original bit stream, the first bit of the bit plane is set to 1, otherwise it is set to 0. Then, the type of bit plane sorting is recorded in the second and third bits of the bit plane that can be compressed. Then, the eight compressed bit plane bit streams are connected to generate a new multi-MSB bit plane and the auxiliary information is recorded at the head position, and the multi-LSB bit plane is reserved and filled with 0. After the auxiliary information is embedded, the secret data is embedded at the end in the same way.
[0056] (5) Image encryption:
[0057] Before embedding secret data, the image is encrypted using a stream encryption algorithm, and then the secret data is embedded.
[0058] (6) Embedding of auxiliary information and secret data:
[0059] Using the two-stage embedding model, after the encrypted image I 1 ,I 2 ,I 3 and I 4 Embed secret data in to obtain the secret image SI. Image I 1 In the image I 2 ,I 3 and I 4 After being predicted, the secret data is first embedded in the image I 2 ,I 3 and I 4 When the secret data can be fully embedded in image I 2 ,I 3 and I 4 If the image is in the middle, the second stage of secret data embedding is not performed; otherwise, the remaining secret data is embedded into the image I 1 middle.
[0060] (7) Generation of encrypted images:
[0061] The encrypted image SI 1 、SI 2 、SI 3 and SI 4 The effective pixel values in the image are reintegrated into an image to obtain the final encrypted image SI.
[0062] (8) Extract secret data and restore image based on the final secret image SI:
[0063] Preprocess the final encrypted image SI to obtain the preprocessed image SI 1 、SI 2 、SI 3 and SI 4 .
[0064] Obtain auxiliary information at the header of the bitstream and extract the image block size and coefficient L based on the auxiliary information fix , then obtain the length of the secret data embedded in the image and extract the secret data, and then determine whether the bit plane is compressed and the type of bit plane sorting based on the flag bit of each bit plane, and restore the compressed bit stream.
[0065] The encrypted image is decrypted using a stream encryption algorithm, and then the pixel value representation is converted from binary to decimal, and then the median edge predictor and the progressive convolutional neural network predictor are used to predict the I 1 ,I 2 ,I 3 and I 4 The predictions are performed sequentially and the prediction errors are combined to obtain the original image.
[0066] In the embodiment of the present invention, the image prediction step specifically includes the following process:
[0067] (2.1) First stage prediction: image I 1 ,I 2 ,I 3 As the input of the progressive convolutional neural network predictor, the predicted image PI is obtained 4 , then image I 1 ,I 2 As input, we get the predicted image PI 3 , and then image I 1 As input, we get the predicted image PI 2 The progressive convolutional neural network predictor is proposed in the method of the present invention. The overall network framework is as follows: Figure 3 As shown in Figure 2, the progressive convolutional neural network predictor consists of three parts: feature extraction module, image prediction module and reconstruction module.
[0068] (2.2) The training parameters, training environment, and dataset of the progressive convolutional neural network predictor are shown below.
[0069] Running Environment: The proposed progressive convolutional neural network predictor is trained on an Intel Core i7 CPU (4.60GHz) with 32GB RAM and an NVIDIA 3090 GPU.
[0070] Dataset: We randomly select 3000 images from ImageNet as the training set and 500 images as the validation set.
[0071] Image preprocessing: The images in the training set and validation set need to be converted into grayscale images with a size of 512×512.
[0072] Training: We use the back-propagation algorithm to optimize our proposed progressive convolutional neural network predictor. For gradient descent, we use the Adam optimizer with a learning rate of 10 -3 , weight decay is 10 -3 , using default hyperparameters. The activation function uses ELU, and the loss function is as follows:
[0073]
[0074] Where p represents the number of training images, I i is the i-th image I, is the corresponding predicted image. ω is the weight of the predictor. The model was trained for 160 rounds with a batch size of 8.
[0075] (2.3) Second stage prediction: image I 1 As the input of the median edge predictor, the predicted image PI is obtained 1 .
[0076] For image I 1 , the median edge predictor will scan row by row to predict the pixel value. The specific pixel value prediction formula is as follows:
[0077]
[0078] Among them, x 1 、x 2 and x 3 They are the pixels in the upper left corner, upper right corner and lower left corner of the 2*2 block, px med It is the pixel value of the lower right corner pixel of the image after being predicted by the median edge predictor.
[0079] In the embodiment of the present invention, the generation of the prediction error specifically includes the following process:
[0080] Measure image PI 1 ,PI 2 ,PI 3 and PI 4 The pixels in the predicted image and the pixels in the original image are in one-to-one correspondence. Take a pixel px in the predicted image and its corresponding original pixel x, convert them into 8-bit binary form respectively, and subtract them to get the prediction error ex (-256≤ex≤256). Image I 2 ,I 3 and I 4 The prediction error is ex cnn , image I 1 The prediction error is ex med , the prediction errors of all pixels constitute the prediction error ex of the original image. The formula for calculating the prediction error is as follows:
[0081] ex=x-px
[0082] In the embodiment of the present invention, performing image encryption includes:
[0083] (5.1) Generate a random matrix based on the key: Select the encryption key K en, use a one-dimensional Logistic chaotic map to generate an m×n random matrix of the same size as the original image for encrypting image I. The elements in this matrix are random integers between 0 and 255.
[0084] (5.2) Binary conversion: Convert the elements in the random matrix into 8-bit binary form. The specific conversion formula is as follows:
[0085]
[0086] Among them B k (i,j ) represents pixel I (i,j) The value of the kth bit in the binary form of .
[0087] (5.3) Image encryption: The image is encrypted using a generated random matrix. The specific encryption formula is as follows:
[0088]
[0089] in Indicates the exclusive OR operation, E k (i,j) is the encrypted binary sequence obtained. Finally, the binary form is converted into a pixel matrix to obtain the encrypted image.
[0090] In the embodiment of the present invention, embedding the auxiliary information and the secret data includes:
[0091] (6.1) The first stage of data embedding: The first stage is the encrypted image I 2 ,I 3 and I 4 Embed data in it. If a bit plane can be compressed, that is, the length of the compressed bit stream is less than the length of the original bit stream, the first bit of the bit plane is set to 1, otherwise it is set to 0. Then, the type of bit plane sorting is recorded in the second and third bits of the bit plane that can be compressed. Then, the eight compressed bit plane bit streams are connected to generate a new multi-MSB bit plane and the auxiliary information is recorded at the header position, and the multi-LSB bit plane is reserved and filled with 0. After the auxiliary information is embedded, the secret data is embedded at the end in the same way.
[0092] (6.2) Second stage data embedding: The second stage is the encrypted image I 1 The data is embedded in the compressed bit stream. First, determine whether the length of the compressed bit stream is less than the length of the original bit stream. After embedding the auxiliary information, the secret data is embedded in the remaining space. The embedding process uses the same method as the first stage, both of which use the method of freeing up the embedding space first to embed information.
[0093] In the embodiment of the present invention, extracting and recovering the hidden secret data includes:
[0094] (8.1) Secret data extraction: Get auxiliary information at the header of the bitstream and extract the image block size and coefficient L based on the auxiliary information fix , then obtain the length of the secret data embedded in the image and extract the secret data, and then determine whether the bit plane is compressed and the type of bit plane sorting based on the flag bit of each bit plane, and restore the compressed bit stream.
[0095] (8.2) Restoration of the original image: The restoration of the original image is performed after the secret data is extracted. The secret image is decrypted using a stream encryption algorithm, and then the pixel value representation is converted from binary to decimal. The median edge predictor and the progressive convolutional neural network predictor are used to predict the I 1 ,I 2 ,I 3 and I 4 The predictions are performed sequentially and the prediction errors are combined to obtain the original image.
[0096] Implementation examples:
[0097] like Figure 1 As shown, this specific example uses Pycharm software for simulation experiments. The original image uses a standard test grayscale image Lena with a size of 512×512. Each pixel of the image consists of 8 bits. The Lena image is embedded with secret information. The specific process is as follows:
[0098] (1) Image preprocessing: Preprocess the original image to obtain the preprocessed image I 1 ,I 2 ,I 3 and I 4 The specific implementation process is to divide the original image into 2*2 blocks, and the upper left corner pixel of each block constitutes the sub-image I 1 , the lower right corner pixel of each block constitutes sub-image I 2 , the lower left corner pixel of each block constitutes sub-image I 3 , the upper right corner pixel of each block constitutes sub-image I 4 .
[0099] (2) Image prediction:
[0100] Image I 1 ,I 2 ,I 3 As the input of the progressive convolutional neural network predictor, the predicted image PI is obtained 4 , then image I 1 ,I 2As input, we get the predicted image PI 3 , and then image I 1 As input, we get the predicted image PI 2 Finally, the median edge predictor is used to predict the image I 1 Perform self-prediction to obtain the predicted image PI 1 .
[0101] (3) Generation of prediction error:
[0102] Predicted image PI 1 ,PI 2 ,PI 3 and PI 4 The pixels in the predicted image and the pixels in the original image are in one-to-one correspondence. Take a pixel px in the predicted image and its corresponding original pixel x, convert them into 8-bit binary form respectively, and subtract them to get the prediction error ex (-256≤ex≤256). Image I 2 ,I 3 and I 4 The prediction error is ex cnn , image I 1 The prediction error is ex med , the prediction errors of all pixels constitute the prediction error ex of the original image.
[0103] (4) Generation of auxiliary information:
[0104] If a bit plane can be compressed, that is, the length of the compressed bit stream is less than the length of the original bit stream, the first bit of the bit plane is set to 1, otherwise it is set to 0. Then, the type of bit plane sorting is recorded in the second and third bits of the bit plane that can be compressed. Then, the eight compressed bit plane bit streams are connected to generate a new multi-MSB bit plane and the auxiliary information is recorded at the head position, and the multi-LSB bit plane is reserved and filled with 0. After the auxiliary information is embedded, the secret data is embedded at the end in the same way.
[0105] (5) Image encryption
[0106] Before embedding secret data, the image is encrypted using a stream encryption algorithm, and then the secret data is embedded.
[0107] (6) Embedding of auxiliary information and secret data:
[0108] Using the two-stage embedding model, after the encrypted image I 1 ,I 2 ,I 3 and I 4 Embed secret data in to obtain the secret image SI. Image I 1 In the image I2 ,I 3 and I 4 After being predicted, the secret data is first embedded in the image I 2 ,I 3 and I 4 When the secret data can be fully embedded in image I 2 ,I 3 and I 4 If the image is in the middle, the second stage of secret data embedding is not performed; otherwise, the remaining secret data is embedded into the image I 1 middle.
[0109] (7) Generation of encrypted images:
[0110] The encrypted image SI 1 、SI 2 、SI 3 and SI 4 The effective pixel values in Lena are re-integrated into an image to obtain the final encrypted image SI. In the embodiment of the present invention, the encrypted image obtained after Lena embeds the secret data is as follows: Figure 5 shown.
[0111] (8) Extract and recover hidden secret data:
[0112] Preprocess the final encrypted image SI to obtain the preprocessed image SI 1 、SI 2 、SI 3 and SI 4 .
[0113] Obtain auxiliary information at the header of the bitstream and extract the image block size and coefficient L based on the auxiliary information fix , then obtain the length of the secret data embedded in the image and extract the secret data, and then determine whether the bit plane is compressed and the type of bit plane sorting based on the flag bit of each bit plane, and restore the compressed bit stream.
[0114] The encrypted image is decrypted using a stream encryption algorithm, and then the pixel value representation is converted from binary to decimal, and then the median edge predictor and the progressive convolutional neural network predictor are used to predict the I 1 ,I 2 ,I 3 and I 4 The predictions are performed sequentially and the prediction errors are combined to obtain the original image.
[0115] Finally, the embedded capacity comparison and security analysis are carried out:
[0116] The correlation between adjacent pixels affects the embedding capacity of the image. In the method of the present invention, a progressive convolutional neural network predictor with better prediction performance is used in conjunction with a median edge predictor to predict pixel values, and a two-stage embedding model is designed, which significantly improves the embedding capacity of the image. On the Lena image, the embedding capacity can reach 3.255bpp.
[0117] In order to evaluate the safety of the method of the present invention, the pixel value distribution of the Lena image at different stages was calculated in the simulation experiment. Figure 6 As shown in the experimental results, it can be seen that the pixel values of the encrypted image are evenly distributed, which shows that the method of the present invention has high security.
Claims
1. A reversible data hiding method in ciphertext domain based on a progressive convolutional neural network predictor, characterized in that: include: Divide the original image into 2*2 blocks and divide the original image into four sub-images I 1 ,I 2 ,I 3 and I 4 ; Image I 1 ,I 2 ,I 3 As the input of the progressive convolutional neural network predictor, the predicted image PI is obtained 4 , then image I 1 ,I 2 As input, we get the predicted image PI 3 , and then image I 1 As input, we get the predicted image PI 2 Finally, the median edge predictor is used to predict the image I 1 Perform self-prediction to obtain the predicted image PI 1 ; According to the four sub-images I of the original image 1 ,I 2 ,I 3 and I 4 , and the predicted image PI 1 ,PI 2 ,PI 3 and PI 4 , generate the prediction error ex of the original image; A two-stage embedding model is used to first embed the image I 1 ,I 2 ,I 3 and I 4 Encrypt and then convert the encrypted image SI 1 、SI 2 、SI 3 and SI 4 The secret information is then embedded into the encrypted secret image to obtain the final secret image SI; the secret data is extracted and the image is restored based on the final secret image SI.
2. The method for reversible data hiding in ciphertext domain based on progressive convolutional neural network predictor according to claim 1, characterized in that: Also includes: The original image is divided into 2*2 blocks, and the upper left corner pixel of each block constitutes the sub-image I 1 , the lower right corner pixel of each block constitutes sub-image I 2 , the lower left corner pixel of each block constitutes sub-image I 3 , the upper right corner pixel of each block constitutes sub-image I 4 .
3. The method for reversible data hiding in ciphertext domain based on a progressive convolutional neural network predictor according to claim 2, characterized in that: Generate the prediction error ex of the original image, including: Predicted image PI 1 ,PI 2 ,PI 3 and PI 4 The pixels in the predicted image and the pixels in the original image are in one-to-one correspondence. Take a pixel px in the predicted image and its corresponding original pixel x, convert them into 8-bit binary form respectively, and subtract them to get the prediction error ex (-256≤ex≤256). Image I 2 ,I 3 and I 4 The prediction error is ex cnn , image I 1 The prediction error is ex med , the prediction errors of all pixels constitute the prediction error ex of the original image.
4. The method for reversible data hiding in ciphertext domain based on progressive convolutional neural network predictor according to claim 3, characterized in that: Embed secret data into the encrypted image, including: Using stream encryption algorithm to encrypt image I 1 ,I 2 ,I 3 and I 4 Encryption is performed; According to the prediction error ex of the original image, the prediction error information is converted into binary, and then the original image is compressed using the bit plane compression method to make room for the embedding of the secret data and obtain the auxiliary information Auxi of the image Using the two-stage embedding model, after the encrypted image I 1 ,I 2 ,I 3 and I 4 Embed secret data in and obtain the secret image SI.
5. The method for reversible data hiding in ciphertext domain based on progressive convolutional neural network predictor according to claim 4, characterized in that: Image I 1 In the image I 2 ,I 3 and I 4 After being predicted, the secret data is first embedded in the image I 2 ,I 3 and I 4 When the secret data can be fully embedded in image I 2 ,I 3 and I 4 When the second stage secret data is not embedded; Otherwise, the remaining secret data is embedded into the image I1.
6. The method for reversible data hiding in ciphertext domain based on progressive convolutional neural network predictor according to claim 5, characterized in that: The bit plane sorting method comprises: After the bit planes are divided into blocks, the 8 bit planes of the prediction error are reordered in order from high to low. The bit planes are divided into sub-blocks of size 2×2, and then the bit planes are reordered according to four reordering types. The four reordering types are: intra-block row traversal and inter-block row traversal, intra-block row traversal and inter-block column traversal, intra-block column traversal and inter-block row traversal, intra-block column traversal and inter-block column traversal.
7. The method for reversible data hiding in ciphertext domain based on progressive convolutional neural network predictor according to claim 6, characterized in that: The bit plane compression method comprises: Define the length of a segment of the same character bit string extracted from the reordered bit plane bit stream as L. Then, set the coefficient L fix (L fix =4). Then, according to the size of L, the appropriate compression coding method is used to compress the bit plane bit stream. There are two coding methods as follows: if L<4, the compressed code is prefixed with L pre and infix L mid Composition, among which L pre =0,L mid The length of the bitstream starting from the current position after the bit plane is intercepted and reordered is L fix binary characters; if L ≥ 4, the compressed code is prefixed by L pre 、Infix L mid and the suffix L tai Composition, among which L pre Depend on Consists of consecutive 1s and a final 0, L pre The value of is given by the formula Composition, L tai The value is 0 or 1 (if the bit stream is all 1, then L tai is 1, otherwise it is 0).
8. The method for reversible data hiding in ciphertext domain based on progressive convolutional neural network predictor according to claim 7, characterized in that: Embed auxiliary information and secret data, including: If a bit plane can be compressed, that is, the length of the compressed bit stream is less than the length of the original bit stream, the first bit of the bit plane is set to 1, otherwise it is set to 0. Then, the type of bit plane sorting is recorded in the second and third bits of the bit plane that can be compressed. Then, the eight compressed bit plane bit streams are connected to generate a new multi-MSB bit plane and the auxiliary information is recorded at the head position, and the multi-LSB bit plane is reserved and filled with 0. After the auxiliary information is embedded, the secret data is embedded at the end in the same way.
9. The method for reversible data hiding in ciphertext domain based on progressive convolutional neural network predictor according to claim 8, characterized in that: The secret data extraction and image recovery according to the final secret image include: Preprocess the final encrypted image SI to obtain the preprocessed image SI 1 、SI 2 、SI 3 and SI 4 ; According to the auxiliary information from the image SI 1 The secret data is extracted from the image, and then the compressed bit stream is restored to obtain the original image I through self-prediction and prediction error. 1 ; According to the auxiliary information from the image SI 2 、SI 3 and SI 4 The secret data is extracted from the image, and then the compressed bit stream is restored. The original image I is obtained by sequentially predicting it through the progressive convolutional neural network predictor and combining the prediction error. 2 ,I 3 and I 4 ; Combine the two parts of secret data to get the original secret data, and transform image I 1 ,I 2 ,I 3 and I 4 Merge to get the original image.
10. The method for reversible data hiding in ciphertext domain based on progressive convolutional neural network predictor according to claim 9, characterized in that: Extraction of auxiliary information, secret data and restoration of original images, including: Obtain auxiliary information at the header of the bitstream and extract the image block size and coefficient L based on the auxiliary information fix , then obtain the length of the image embedded secret data and extract the secret data, and then determine whether the bit plane is compressed and the type of bit plane sorting according to the flag bit of each bit plane, and restore the compressed bit stream. The encrypted image is decrypted using a stream encryption algorithm, and then the pixel value representation is converted from binary to decimal, and then the median edge predictor and the progressive convolutional neural network predictor are used to predict the I 1 ,I 2 ,I 3 and I 4 The predictions are performed sequentially and the prediction errors are combined to obtain the original image.
