Method and system for large-capacity image steganography and recovery based on invertible neural networks

11908037 ยท 2024-02-20

Assignee

Inventors

Cpc classification

International classification

Abstract

The present disclosure provides a method and system for large-capacity image steganography and recovery based on an invertible neural networks. The method is intended to embed one or more hidden images into a single host image, and recover all the hidden images from a stego image. The method designs an image steganography model that supports bidirectional mapping. The model includes cascaded invertible modules containing a host branch and a hidden branch. A hidden image is embedded into a host image through forward mapping to form a stego image, and the host image and the hidden image are separated and recovered from the single stego image through reverse mapping.

Claims

1. A method for large-capacity image steganography and recovery based on an invertible neural networks, wherein an invertible neural networks model that supports bidirectional mapping is configured to complete tasks of embedding hidden images into a host image and recovering the hidden images from a stego image, and the invertible neural networks model comprises cascaded invertible modules containing a host branch and a hidden branch, the method comprising the following steps: a first part: embedding hidden images a. inputting the host image and the hidden image: importing one or more hidden images and a selected host image into a forward mapping input end of the invertible neural networks model as forward inputs; b. embedding image features: embedding feature information of the hidden image into the host image through the forward mapping of the invertible neural networks; and c. generating a stego image: taking forward output of a host branch of the invertible neural networks as the stego image, and specifying forward output of a hidden branch as a constant matrix containing no effective information; a second part: recovering the hidden images d. inputting the stego image: importing the stego image and the constant matrix obtained in step c into a reverse mapping input end of the invertible neural networks model as reverse inputs; e. separating the image features: separating features of the host image and the hidden image from the stego image through the reverse mapping of the invertible neural networks; and f. recovering the hidden image: taking reverse output of the host branch of the invertible neural networks as a recovered host image, and reverse output of the hidden branch as a recovered hidden image.

2. The method for large-capacity image steganography and recovery based on an invertible neural networks according to claim 1, wherein all learnable parameters are shared for the forward mapping and the reverse mapping of the invertible neural networks model.

3. A method for large-capacity image steganography based on an invertible neural networks, wherein the method for large-capacity image steganography is implemented based on the invertible neural networks, the invertible neural networks comprises invertible modules, the invertible module comprises a host branch and a hidden branch, and the method for large-capacity image steganography comprises: inputting a host image and a hidden image; embedding feature information of the hidden image into the host image through forward mapping of the invertible neural networks; forwardly outputting a stego image by utilizing the host branch of the invertible neural networks, wherein the stego image is an image obtained by embedding the feature information of the hidden image into the host image; and forwardly outputting a constant matrix by utilizing the hidden branch of the invertible neural networks, wherein the constant matrix does not contain effective information of the hidden image.

4. The method for large-capacity image steganography based on an invertible neural networks according to claim 3, wherein there are a plurality of the invertible modules in the invertible neural networks which are cascaded, and the invertible neural networks comprising the plurality of the invertible modules simultaneously completes steganography process of a plurality of the hidden images.

5. A method for large-capacity image recovery based on an invertible neural networks, wherein the method for large-capacity image recovery is applied to the method for large-capacity image steganography according to any one of claim 4, the method for large-capacity image recovery is implemented based on the invertible neural networks, the invertible neural networks comprises invertible modules which comprises a host branch and a hidden branch, and the method for large-capacity image recovery comprises: inputting a stego image and a constant matrix, wherein the stego image is an image obtained by embedding feature information of a hidden image into a host image; and the constant matrix does not contain effective information of the hidden image; separating features of the hidden image and the host image from the stego image through reverse mapping of the invertible neural networks; reversely outputting a recovered host image by utilizing a host branch of the invertible neural networks; and reversely outputting a recovered hidden image by utilizing a hidden branch of the invertible neural networks.

6. The method for large-capacity image recovery based on an invertible neural networks according to claim 5, wherein there are a plurality of the invertible modules in the invertible neural networks which are cascaded, and the invertible neural networks comprising the plurality of the invertible modules simultaneously completes recovery process of a plurality of the hidden images.

7. A system for large-capacity image recovery based on an invertible neural networks, wherein the system for large-capacity image recovery is applied to the system for large-capacity image steganography according to any one of claim 6, the system for large-capacity image recovery is implemented based on the invertible neural networks, and the invertible neural networks comprises invertible modules which comprises a host branch and a hidden branch, the system for large-capacity image recovery comprising: an input module, configured to input a stego image and a constant matrix, wherein the stego image is an image obtained by embedding feature information of a hidden image into a host image, and the constant matrix does not contain effective information of the hidden image; an information separation module, configured to separate features of the hidden image and the host image from the stego image through reverse mapping of the invertible neural networks; a host image output module, configured to reversely output a recovered host image by utilizing a host branch of the invertible neural networks; and a hidden image output module, configured to reversely output a recovered hidden image by utilizing a hidden branch of the invertible neural networks.

8. The system for large-capacity image recovery based on an invertible neural networks according to claim 7, wherein there are the plurality of the invertible modules in the invertible neural networks which are cascaded, and the invertible neural networks comprising the plurality of the invertible modules simultaneously completes recovery process of the plurality of the hidden images.

9. A system for large-capacity image recovery based on an invertible neural networks, wherein the system for large-capacity image recovery is applied to the system for large-capacity image steganography according to any one of claim 5, the system for large-capacity image recovery is implemented based on the invertible neural networks, and the invertible neural networks comprises invertible modules which comprises a host branch and a hidden branch, the system for large-capacity image recovery comprising: an input module, configured to input a stego image and a constant matrix, wherein the stego image is an image obtained by embedding feature information of a hidden image into a host image, and the constant matrix does not contain effective information of the hidden image; an information separation module, configured to separate features of the hidden image and the host image from the stego image through reverse mapping of the invertible neural networks; a host image output module, configured to reversely output a recovered host image by utilizing a host branch of the invertible neural networks; and a hidden image output module, configured to reversely output a recovered hidden image by utilizing a hidden branch of the invertible neural networks.

10. The system for large-capacity image recovery based on an invertible neural networks according to claim 9, wherein there are the plurality of the invertible modules in the invertible neural networks which are cascaded, and the invertible neural networks comprising the plurality of the invertible modules simultaneously completes recovery process of the plurality of the hidden images.

11. A method for large-capacity image recovery based on an invertible neural networks, wherein the method for large-capacity image recovery is applied to the method for large-capacity image steganography according to any one of claim 3, the method for large-capacity image recovery is implemented based on the invertible neural networks, the invertible neural networks comprises invertible modules which comprises a host branch and a hidden branch, and the method for large-capacity image recovery comprises: inputting a stego image and a constant matrix, wherein the stego image is an image obtained by embedding feature information of a hidden image into a host image; and the constant matrix does not contain effective information of the hidden image; separating features of the hidden image and the host image from the stego image through reverse mapping of the invertible neural networks; reversely outputting a recovered host image by utilizing a host branch of the invertible neural networks; and reversely outputting a recovered hidden image by utilizing a hidden branch of the invertible neural networks.

12. The method for large-capacity image recovery based on an invertible neural networks according to claim 11, wherein there are a plurality of the invertible modules in the invertible neural networks which are cascaded, and the invertible neural networks comprising the plurality of the invertible modules simultaneously completes recovery process of a plurality of the hidden images.

13. A system for large-capacity image steganography based on an invertible neural networks, wherein the system for large-capacity image steganography is implemented based on the invertible neural networks, the invertible neural networks comprises invertible modules, and the invertible module comprises a host branch and a hidden branch, the system for large-capacity image steganography comprising: an input module, configured to input a host image and a hidden image; an information embedding module, configured to embed feature information of the hidden image into the host image through forward mapping of the invertible neural networks; a stego image output module, configured to forwardly output a stego image by utilizing the host branch of the invertible neural networks, wherein the stego image is an image obtained by embedding the feature information of the hidden image into the host image; and a constant matrix output module, configured to forwardly output a constant matrix by utilizing the hidden branch of the invertible neural networks, wherein the constant matrix does not contain effective information of the hidden image.

14. The system for large-capacity image steganography based on an invertible neural networks according to claim 13, wherein there are a plurality of the invertible modules in the invertible neural networks which are cascaded, and the invertible neural networks comprising the plurality of the invertible modules simultaneously completes steganography process of a plurality of the hidden images.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) The present disclosure will be explained in detail with reference to the accompanying drawings.

(2) FIG. 1 is a schematic flow chart of image steganography and recovery according to the present disclosure;

(3) FIG. 2 is a schematic diagram of a model of an invertible neural networks designed according to the present disclosure;

(4) FIG. 3 is a schematic diagram of a model of a sub-block of DenseBlock utilized in the present disclosure;

(5) FIG. 4 is a schematic diagram of effect comparison between the present disclosure and a benchmark method;

(6) FIG. 5 is a graph of change in value of Peak Signal to Noise Ratio (PSNR) when 1 to 5 images are hidden according to the present disclosure; and

(7) FIG. 6 is a schematic diagram of effects when 3 to 5 images are hidden according to the present disclosure.

DETAILED DESCRIPTION OF THE EMBODIMENTS

(8) The technical solutions of the embodiments of the present disclosure are described in detail below with reference to the accompanying drawings of the embodiments of the present disclosure. Apparently, the described embodiments are merely a part rather than all of the embodiments of the present disclosure. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present disclosure without creative labor should fall within the protection scope of the present disclosure.

(9) FIG. 1 is a flow chart of image steganography and recovery. The general steps of image steganography and recovery shown in the figure include: determining a host image and hidden images, embedding the hidden images into the host image and obtaining a stego image similar to the host image through an image steganography process, and then reconstructing the stego image with hidden information through a hidden image recovery process to obtain all the hidden images.

(10) FIG. 2 shows a structure of a model of an invertible neural networks. A method for large-capacity image steganography and recovery based on the invertible neural networks includes: a. inputting the host image and the hidden images: importing a 3(n+1)HW tensor composed of an HW host image x.sub.ho and n (n1) hidden images x.sub.hi, of the same size into the invertible neural networks model of forward mapping; b. embedding image features: embedding feature information of the hidden images x.sub.hi into the host image x.sub.ho through forward mapping of the invertible neural networks. An invertible steganography network includes 4n cascaded invertible modules, and each module includes a host branch b.sub.1 and a hidden branch b.sub.2. The input feature tensor divides the channel dimension into two branches and the quantity of feature channels for the branch b.sub.1 is always 3, which is the same as the quantity of channels for the input host image; and the quantity of feature channels for the hidden branch b.sub.2 is 3n, which is the same as the quantity of channels for the hidden images. For the l-th invertible module, input is [b.sub.1.sup.l, b.sub.2.sup.l] and output is [b.sub.1.sup.l+1, b.sub.2.sup.l+1] for forward mapping. A corresponding calculation method is shown in formula (1):

(11) b 1 l + 1 = b 1 l + ( b 2 l ) ( 1 ) b 2 l + 1 = b 2 l exp ( ( b 1 l + 1 ) ) + ( b 1 l + 1 ) where (.Math.), (.Math.), (.Math.) can be any functions including a convolutional neural networks, which are all 5 layers of densely connected DenseBlock modules, the quantities of output channels at the first four layers are all 32, as shown in FIG. 3. For the module (.Math.), input C_in of DenseBlock is equal to the quantity of channels of the host branch b.sub.1 of the invertible network, and output C_out is equal to the quantity of channels of the hidden branch b.sub.2. For the modules (.Math.) and (.Math.), the case is the opposite. FIG. 2 is a schematic diagram of calculation of an invertible module, where an exponential operation exp(.Math.) of a function (.Math.) is omitted. c. generating a stego image: taking 3HW forward output of the host branch b.sub.1 of the invertible network as a stego image y.sub.co and making the stego image similar to the host image x.sub.ho, and specifying forward output .sub.z of the hidden branch b.sub.2 as a 3nHW constant matrix y.sub.z without effective information during training, because both input and output of each invertible module are 3(n+1)HW tensors. During actual application, only the synthesized stego image yeo is reserved and transmitted. d. inputting the stego image: at a receiving end, importing the received stego image y.sub.co and the 3nHW constant matrix y.sub.z into the invertible neural networks model of reverse mapping, where y.sub.z is a fitting target of the output .sub.z in step c, is an arbitrary constant matrix that is set in advance, and must be consistent in step c and step d. e. separating the image features: separating features of the host image and the hidden image from in the stego image through reverse mapping of the invertible module. For the l-th invertible module, input is [b.sub.1.sup.l+1, b.sub.2.sup.l+1] and output is [b.sub.1.sup.l, b.sub.2.sup.l] for the reverse mapping. A calculation method is shown in formula (2):

(12) b 2 l = ( b 2 l + 1 - ( b 1 l + 1 ) ) exp ( - ( b 1 l + 1 ) ) ( 2 ) b 1 l = b 1 l + 1 - ( b 2 l ) where (.Math.), (.Math.), (.Math.) are the same as the functions in formula (1). For the convolutional neural networks, they have the same network structures and model parameters. f. recovering the hidden image: taking reverse output of the host branch b.sub.1 of the invertible network as a recovered host image {circumflex over (x)}.sub.ho, and reverse output of the hidden branch b.sub.2 as a recovered hidden image {circumflex over (x)}.sub.hi.

(13) With reference to FIG. 2, a structure of the model of an invertible neural networks is shown. When the model is trained, four items {y.sub.co, .sub.z, {circumflex over (x)}.sub.ho, {circumflex over (x)}.sub.hi} are generated after the above steps a to f, and are used with {X.sub.ho, Y.sub.z, X.sub.ho, X.sub.hi} respectively to calculate minimum absolute value deviations, that is, L1 loss, and then the parameters of convolutional layers of the sub-blocks (.Math.), (.Math.), (.Math.) are updated. During testing and application, the model directly loads trained parameters and performs the above steps a to f.

(14) In Table 1, the method proposed by Shumeet Baluja's paper Hiding images within images in TPAMI in 2020 for hiding one or two images of the same size is taken as a benchmark method. Average PSNR and Structural Similarity (SSIM) values of test images obtained by this method and the benchmark method based on data sets ImageNet and Paris StreetView are compared. It shows that when hiding one image (h.sub.1) and two images (h.sub.2), this method gains a great improvement compared with the benchmark method.

(15) TABLE-US-00001 TABLE 1 ImageNet Paris StreetView Stego Recovered Stego Recovered Method image hidden image image hidden image Method of present 38.05/.954 38.38/.955 40.49/.980 43.33/.991 disclosure h.sub.1 Benchmark 36.02/.946 32.75/.933 36.80/.986 39.03/.984 method h1 Method of present 36.86/.945 32.21/.920 39.14/.971 39.05/.982 disclosure h2 Benchmark 30.18/.919 29.17/.898 37.14/.978 34.73/.964 method h2

(16) With reference to FIG. 4, a visualization comparison between the method in the present disclosure and the benchmark method when hiding one or two images is illustrated. The method for image steganography and recovery based on an invertible neural networks in the present disclosure can obtain stego images of high quality and recovered hidden images at the same time, making an error (magnified by 50 times in the figure) between the synthesized image and the original image smaller. Herein, the smaller the error, the darker the image.

(17) Referring to FIG. 5, the PSNR values of stego images and recovered hidden images when hiding 1 to 5 images are given. Although the quality of the generated and recovered images decreases with the increase of steganography capacity, even if five images with the same size as the host image are hidden, the PSNR value of a stego image synthesized by this method is still greater than 35 dB, and the average PSNR value of all recovered hidden images is still greater than 31 dB.

(18) Referring to FIG. 6, the visualization results of this method when hiding 3 to 5 images are shown, where the first row is original input images, and the second row is stego images generated or hidden images recovered by this method. This method can still achieve satisfactory results even when hiding multiple images, further improving the capacity of the image steganography.

(19) The embodiments of the present disclosure are described in detail above with reference to the accompanying drawings, but the present disclosure is not limited to the above embodiments. Within the scope of knowledge possessed by those of ordinary skill in the art, various variations can also be made without departing from the spirit of the present disclosure.