Image steganography method based on SE-ResNet

By introducing SE-ResNet and SE modules into the image steganography method, the B-channel characteristics of the image are optimized, solving the problems of insufficient steganography capacity and invisibility in the existing technology, and achieving a more efficient and secure image steganography effect. .

CN114170061BActive Publication Date: 2025-01-21XIAN UNIV OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111401977.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-19
Publication Date
2025-01-21
Estimated Expiration
2041-11-19

AI Technical Summary

Technical Problem

The existing image steganography methods have shortcomings in terms of steganography capacity and invisibility, making it difficult to effectively hide secret information, and steganography information is easily detected.

Method used

The image steganography method based on SE-ResNet is used to perform feature extraction and cascade operations on the B channel of the carrier image, and combine the SE module to optimize the weight of the channel features to generate a steganographic image, and extract secret information through the decoding network.

Benefits of technology

The capacity and invisibility of image steganography are improved, making the embedded secret information difficult to detect, and enhancing the steganographic security of the image.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114170061B_ABST
    Figure CN114170061B_ABST
Patent Text Reader

Abstract

The present invention discloses an image steganography method based on SE-ResNet, which specifically comprises the following steps: Step 1, obtaining a secret image M emb and carrier image I cover Channel B I cover‑B ; Step 2, the secret image M obtained in step 1 emb and carrier image I cover Channel B I cover‑B Input them into the encoding network respectively to obtain the cascaded feature map; Step 3, the cascaded feature map obtained in Step 2 is passed through 3 SE-ResNet blocks and 2 convolutional layers to obtain the B channel I of the final stego image stego‑B ; Step 4, obtain the stego-image I according to the result obtained in step 3 stego ; Step 5, extract the secret image M ext The present invention improves the image steganography capacity and enhances the image invisibility, making it difficult for secret information to be detected.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the technical field of image processing and relates to an image steganography method based on SE-ResNet. Background Art

[0002] Steganography is to hide secret information in multimedia data to achieve the purpose of concealed communication. The advantage is that ordinary people do not know that secret communication is happening, thus achieving higher security. From the perspective of the embedding position of secret information, traditional steganography algorithms are divided into two categories: spatial domain steganography algorithm and transform domain steganography algorithm. The simplest and most representative spatial domain steganography algorithm is the least significant bit (LSB) algorithm, which first preprocesses the secret information into a binary number, and then replaces the binary secret information with the least significant bit of each pixel in the carrier image to achieve the purpose of hiding the secret information. The transform domain steganography algorithm mainly transforms the carrier image in a specific way and then embeds the secret information into the transform domain coefficient. Compared with the spatial domain steganography algorithm, the embedding and extraction process of the transform domain steganography algorithm is more complicated. In recent years, with the continuous development of deep learning technology, steganography based on deep learning has received more and more attention. There are many steganography algorithms based on deep learning, and the present invention is also implemented based on deep learning.

[0003] The SE in SE-ResNet stands for Squeeze-and-Excitation, which means feature compression and excitation. SE is a new image recognition structure announced by the autonomous driving company Momenta in 2017. It models the correlation between feature channels, strengthens the features of important channels, and weakens the features of unimportant channels, that is, strengthens the important features to improve accuracy. SE-ResNet adds the SE module to ResNet. Summary of the invention

[0004] The purpose of the present invention is to provide an image steganography method based on SE-ResNet, which improves the image steganography capacity and enhances the invisibility of the image, making the secret information difficult to be detected.

[0005] The technical solution adopted by the present invention is an image steganography method based on SE-ResNet, which specifically includes the following steps:

[0006] Step 1, get the secret image , the secret image Perform channel separation to obtain three images after separation: B channel image, R channel image and G channel image. The B channel image is the carrier image. Channel B I cover-B ;

[0007] Step 2: The secret image obtained in step 1 and carrier image Channel B I cover-B Input them into the encoding network respectively to obtain the cascaded feature map;

[0008] Step 3: Pass the cascade feature map obtained in step 2 through 3 SE-ResNet blocks and 2 convolutional layers to obtain the B channel of the final stego image. ;

[0009] Step 4: Channel B of the steganographic image obtained in step 3 Combine the R channel and G channel of the carrier image in step 1 to obtain the stego image ;

[0010] Step 5: Take the stego image obtained in step 4 Channel separation is performed to obtain three images: the B channel image of the steganographic image, the R channel image of the steganographic image, and the G channel image of the steganographic image; the B channel image of the steganographic image is input into the decoding network to extract the secret image M ext .

[0011] The present invention is also characterized in that:

[0012] The specific process of step 1 is:

[0013] Step 1.1, download the CIFAR10, ImageNet, PASCAL-VOC2012 and LFW datasets from the Internet respectively;

[0014] Step 1.2: Unify the image size of the dataset in step 1.1 to H×W; select n grayscale images and n color images respectively to form n pairs of images, where the grayscale image with a size of H×W is the secret image. ; Separate the 3-channel color image of size H×W into B channel image, R channel image and G channel image, where the B channel image is the carrier image Channel B I cover-B .

[0015] The specific process of step 2 is:

[0016] Step 2.1: The grayscale secret image M of size H×W obtained in step 1.2 is emb Input into the Guest network branch of the encoding network to extract features and obtain a feature map;

[0017] Step 2.2: Transform the H×W-sized carrier image B channel I obtained in step 1.2 cover-BThe input is sent to the Host network branch of the encoding network for feature extraction. After each two convolutional layers and ReLU layers, the M of the Guest network branch is emb Feature map and Host network branch I cover-B The feature map is cascaded, that is, the features extracted by the Guest network branch are superimposed on the features extracted by the Host network branch to obtain a cascaded feature map.

[0018] The specific process of step 3 is:

[0019] The host network branch passes the obtained cascade feature map through 3 SE-ResNet blocks and 2 convolutional layers to obtain the B channel of the final stego image. ;

[0020] The loss function of the encoding network is shown in the following formula (1):

[0021] (1);

[0022] Where L E represents the loss function of the encoding network, I cover-B represents the B channel of the carrier image, represents the parameters in the encoding network, represents the secret image to be embedded; Represents the carrier image The B channel and secret image The output after the encoding network is That is, the B channel of the stego-image.

[0023] The specific process of step 5 is:

[0024] Step 5.1: Obtain the steganographic image I obtained in step 4 stego Channel separation, separated into B, G and R channels, the B channel I of the obtained steganographic image stego-B .

[0025] Step 5.2: The steganographic image I obtained in step 5.1 stego-B Input into the decoding network, after 3 SE-ResNet blocks and 2 convolutional layers, the secret image M is extracted. ext :

[0026] The loss function of the decoding network is shown in the following formula (2):

[0027] (2);

[0028] in represents the loss function of the decoding network, represents the B channel of the stego-image, represents the parameters in the decoding network, represents the secret image to be embedded; Representing a stego-image The output of the B channel after the decoding network is M ext That is, the secret image extracted by the decoding network;

[0029] The loss function of the entire model is shown in the following formula (3):

[0030] (3);

[0031] Where, L E represents the loss function of the encoding network, L D Represents the loss function of the decoding network.

[0032] The beneficial effects of the present invention are as follows:

[0033] 1. Compared with some traditional steganographic methods, the method of the present invention has an increased steganographic capacity. The invisibility of the carrier image is enhanced, and the embedded secret information is not easily detected. The invisibility is enhanced because the method selects the B channel of the carrier image to embed the secret information. The human eye is not sensitive to the information embedded in the B channel, so it is not easily detected.

[0034] 2. Since this method is based on SE-ResNet, this module assigns different weights to each channel in the process of processing the cascade feature graphs of the Guest network branch and the Host network branch, allowing the network to focus on important features, suppress unimportant features, and optimize weights. BRIEF DESCRIPTION OF THE DRAWINGS

[0035] Figure 1 It is a coding network structure diagram based on the SE-ResNet steganography method of the present invention;

[0036] Figure 2 It is a decoding network structure diagram based on the SE-ResNet steganography method of the present invention;

[0037] Figure 3 It is the SE-ResNet module in the encoding network structure diagram and the decoding network structure diagram of the SE-ResNet steganography method of the present invention;

[0038] Figure 4 It is the SE module in the SE-ResNet module in the encoding network structure diagram and the decoding network structure diagram of the SE-ResNet steganography method of the present invention;

[0039] Figure 5 (a) is a carrier image; Figure 5 (b) is a secret image to be embedded; Figure 5 (c) is a synthesized stego image; Figure 5 (d) is a secret image extracted by using a decoding network based on the SE-ResNet steganography method of the present invention. DETAILED DESCRIPTION

[0040] The present invention is described in detail below with reference to the accompanying drawings and specific embodiments.

[0041] The present invention is based on the SE-ResNet steganography method, such as Figure 1 As shown, Represents a color carrier image, I cover-B Represents the B channel of the color carrier image, I cover-R and I cover-G Respectively represent the R channel and G channel of the carrier image, represents the B channel of the stego-image, Represents a steganographic image. The specific process is: The Guest network branch of the input encoding network is composed of 7 convolutional layers, each of which is composed of conv convolution operation and ReLU activation function. Convolution operation extracts features, and ReLu activation operation performs nonlinear mapping. At the same time, the B channel I of the carrier image is cover-B Input the Host network branch of the encoding network. The first 7 layers of the Host network branch are constructed in the same way as the Guest network branch, and are also composed of 7 convolutional layers, each of which is composed of conv convolution operations and ReLU activation functions. The first, third, fifth, and seventh layers of the Guest network branch are cascaded with the first, third, fifth, and seventh layers of the Host network branch, respectively, that is, the features extracted by the gray secret image branch are superimposed on the features extracted by the color carrier image branch. The last five layers of the Host network branch are composed of 3 SE-ResNet blocks and 2 convolutional layers. The 11th convolution layer is also composed of conv convolution operations and ReLU activation functions. The convolution kernel size of the last convolution layer is 1×1, the number of channels is also 1, and there is no ReLU activation function. Finally, the B channel of the steganographic image is obtained. . The R channel (I cover-R )、G channel(I cover-G ) and the B channel of the stego-image ( ) to obtain the final stego image .

[0042] The specific steps are as follows:

[0043] Step 1: Get the carrier image and secret images .

[0044] Step 1.1, download the CIFAR10, ImageNet, PASCAL-VOC2012 and LFW datasets from the Internet respectively;

[0045] Step 1.2: Unify the image size (H×W) of the dataset in step 1.1. Select n grayscale images and n color images respectively to form n pairs of images, where the grayscale image with size H×W is the secret image we want to obtain. . Separate the 3-channel color image of size H×W into B channel image, R channel image and G channel image, where the B channel image is the carrier image we want to obtain B channel (I cover-B ).

[0046] Step 2: Obtain the feature map after the Guest network branch and the Host network branch in the encoding network are cascaded.

[0047] Step 2.1: The grayscale secret image M of size H×W obtained in step 1.2 is emb The input is sent to the Guest network branch of the encoding network for feature extraction to obtain a feature map. The Guest network branch consists of seven convolutional layers, and each convolutional layer consists of a convolution operation conv and a ReLU activation function.

[0048] Step 2.2: The B channel I of the H×W size carrier image obtained in step 1.2 is cover-B Input the encoding network into the Host network branch for feature extraction. The first seven layers of the Host network branch are the same as those of the Guest network branch, consisting of convolution operations and ReLU activation functions, and the first, third, fifth, and seventh layers of the Host network branch are concatenated with the corresponding layers of the Guest network branch. That is, the M of the Guest network branch is emb Feature map and Host network branch I cover-B The feature map is concatenated to obtain the feature map after the guest network branch and the host network branch in the encoding network are concatenated.

[0049] Step 3, get the B channel of the stego image ( ).

[0050] Step 3.1: After the concatenation operation of the corresponding convolutional layers of the Host network branch and the Guest network branch in step 2.2, the Guest network branch does not perform any operation. Then, the Host network branch inputs the obtained concatenated feature map into the three SE-ResNet modules.

[0051] Step 3.1.1, the structure of SE-ResNet module is as follows Figure 3 The SE-ResNet module is a ResNet module with an SE module added. The structure of the SE module is as follows: Figure 4 As shown, Figure 4 W1 and W2 in the formula represent Figure 3 There are two fully connected (FC) operations in , where F represents a real number and S represents the learned weights. Figure 3 The Gpooling operation in is equivalent to Figure 4 F sq Operation, that is, the global average pooling operation; FC, ReLU, FC and Sigmoid operations are equivalent to Figure 4 F ex Operation, which consists of two fully connected layers forming a Bottleneck structure to model the correlation between channels and output the same number of weights as the input features. We first use a fully connected layer (FC) to reduce the feature dimension to 1 / 16 of the input (1×1×C / 16, C represents the number of channels), and then after ReLu activation, it is raised back to the original dimension (1×1×C, C represents the number of channels) through a fully connected layer (FC). The advantages of doing this over directly using a fully connected layer are: 1) It has more nonlinearity and can better fit the complex correlations between channels; 2) It greatly reduces the number of parameters and calculations. Then, a normalized weight between 0 and 1 is obtained through a gate of an activation function (Sigmoid); the Scale operation is equivalent to Figure 4 F scale Operation, the normalized weight is added to the features of each channel. Figure 4 The size of the feature map U (Feature Map) in is ; F sq That is, the Squeeze operation performs global average pooling on the feature map U, and obtains Feature map of size; F ex That is, the Excitation operation uses a fully connected network to perform a nonlinear transformation on the result after Squeeze; F scale That is, use the result obtained by Excitation as the weight and multiply it by the input feature of the corresponding channel, which is channel weighting; finally, we get a weighted feature map with different weights for each channel Based on the SE block, a quick connection is added to alleviate the vanishing gradient. Figure 3 As shown, the feature map M is combined with Figure 4 Final results of the SE module The skip connection is then passed through the ReLU activation function to obtain the final feature map N.

[0052] The specific operation of global average pooling is: perform global average pooling on the feature map of each channel, convert a two-dimensional feature map into a real number, recorded as Z c , the mathematical expression is shown in (4):

[0053] (4);

[0054] Where H and W represent the height and width of the input image, respectively, and u c represents a feature map with C channels, F sq Represents the global average pooling operation on the feature map U, and U(i,j) represents the pixel in the i-th row and j-th column of the feature map U.

[0055] The specific operation of Excitation is: different excitations are generated for each real number through two fully connected layers, where W1 represents the first fully connected operation, reducing the number of channels from C dimensions to C / 16 dimensions. W2 represents the second fully connected operation, restoring the number of channels to C dimensions. Finally, S is obtained through Sigmoid function mapping, and the mathematical expression is shown in (5):

[0056] (5);

[0057] Where W1 and W2 represent the first and second fully connected operations respectively, δ represents the ReLU activation layer, Represents the Sigmoid function mapping, Z represents the real number after pooling, and S represents the learned weight.

[0058] F scale The specific operation is: weight the S weight output in (5) according to the channel to achieve the purpose of the channel attention mechanism. The mathematical expression is shown in (6):

[0059] (6);

[0060] In the formula, U represents the feature map with C channels. s c Represents the learned weights ( s c is the weighted value after weight S is added), where c represents the number of channels.

[0061] Step 3.2, after step 3.1, the concatenated feature map is input into three SE-ResNet modules, and then passes through two convolutional layers to obtain the B channel of the stego image ( ). Among them, the 11th convolution layer is composed of conv operation and ReLU operation. The convolution kernel size of the 12th (last layer) convolution is 1×1, the channel is 1, and there is no ReLU operation, and the B channel of the steganographic image is obtained ( ).

[0062] The purpose of the encoding network is to make the carrier image And the encoded stego image The pixel-by-pixel loss function is similar to the mean square error loss function, also known as the MSE loss function. It represents the mean of the sum of squares of the difference between the predicted value and the true value. Since the amount of calculation after the derivative of the MSE loss function is not large and the code implementation is simple, the present invention selects MSE as the loss function for encoding network training. The loss function is designed as shown in the following formula (7):

[0063] (7);

[0064] Where L E represents the loss function of the encoding network, I cover-B represents the B channel of the carrier image, represents the parameters in the encoding network, Represents the secret image to be embedded. Represents the carrier image The B channel and secret image The output after the encoding network is Represents the B channel of the stego-image.

[0065] Step 4: Get the stego image I stego .

[0066] The B channel of the steganagraph image obtained in step 3.2 With carrier image I cover The R channel and G channel of the steganographic image I are combined to obtain the steganographic image I stego .

[0067] Step 5: Extract the secret image M from the decoding network ext .

[0068] Step 5.1: Obtain the steganographic image I obtained in step 4 stego Channel separation, separated into B, G and R channels.

[0069] Step 5.2: The B channel (I stego-B ) is input into the decoding network, such as Figure 2As shown in the figure, it is the network structure diagram of the decoding network. The decoding network is divided into 5 layers in total. The first 3 layers are composed of SE-ResNet modules. The structure of the SE-ResNet module here is the same as that of the SE-ResNet module in the encoding network. The last 2 layers are composed of convolutional layers, among which the 4th layer is composed of convolution operation conv and ReLU activation function. The last layer only has convolution operation conv without ReLU activation function, the convolution kernel size is 1×1, and the channel is 1. Finally, the secret image M is extracted. ext .

[0070] The purpose of the decoding network is to make the embedded secret information and the secret information M extracted by the decoding network ext The pixel-by-pixel loss function is the mean square error loss function, also known as the MSE loss function. It represents the mean of the sum of squares of the difference between the predicted value and the true value. Since the amount of calculation after the derivative of the MSE loss function is not large and the code implementation is simple, the present invention selects MSE as the loss function during the decoding network training. The loss function of the decoding network is shown in the following formula (8):

[0071] (8);

[0072] Where L D represents the loss function of the decoding network, represents the B channel of the stego-image, represents the parameters in the decoding network, Represents the secret image to be embedded. Representing a stego-image The output of the B channel after the decoding network, that is, M ext represents the secret image extracted by the decoding network.

[0073] The loss function of the entire model is shown in the following formula (3):

[0074] (3);

[0075] Where, L E represents the loss function of the encoding network, L D Represents the loss function of the decoding network.

[0076] As shown in Figure 5: the present invention tests the above-mentioned SE-ResNet-based steganographic network, Figure 5 (a) is the carrier image; Figure 5 (b) is the secret image to be embedded; Figure 5 (c) is the synthesized steganographic image; Figure 5 (d) is the secret image extracted by the decoding network. By observing Figures 5 (a) and 5 (c), it can be found that the carrier image and the steganographic image are highly similar; by observing Figures 5 (b) and 5 (d), it can be found that the secret image before embedding and the secret image extracted after embedding are highly similar.

Claims

1. Image steganography method based on SE-ResNet, characterized by: The specific steps include: Step 1, get the secret image , the secret image Perform channel separation to obtain three images after separation: B channel image, R channel image and G channel image. The B channel image is the carrier image. Channel B I cover-B ; Step 2: The secret image obtained in step 1 and carrier image Channel B I cover-B Input them into the encoding network respectively to obtain the cascaded feature map; The specific process of step 2 is: Step 2.1: Transform the grayscale secret image M of size H×W into emb Input into the Guest network branch of the encoding network to extract features and obtain a feature map; The Guest network branch consists of 7 convolutional layers, each of which consists of a conv convolution operation and a ReLU activation function; the conv convolution operation extracts features, and the ReLu activation operation performs nonlinear mapping; Step 2.2: transform the H×W sized carrier image B channel I cover-B The input is sent to the Host network branch of the encoding network for feature extraction; and after each two convolutional layers and ReLU layers, the M of the Guest network branch is emb Feature map and Host network branch I cover-B The feature graph is cascaded, that is, the features extracted by the guest network branch are superimposed on the features extracted by the host network branch to obtain a cascaded feature graph; The first 7 layers of the Host network branch are the same as those of the Guest network branch, and are also composed of 7 convolutional layers, each of which is composed of conv convolution operations and ReLU activation functions; the first, third, fifth, and seventh layers of the Guest network branch are cascaded with the first, third, fifth, and seventh layers of the Host network branch, respectively, that is, the features extracted by the grayscale secret image branch are superimposed on the features extracted by the color carrier image branch; the last five layers of the Host network branch are composed of 3 SE-ResNet blocks and 2 convolutional layers; the 11th convolution layer is also composed of conv convolution operations and ReLU activation functions, and the convolution kernel size of the last convolution layer is 1×1, the number of channels is also 1, and there is no ReLU activation function; Step 3: Pass the cascade feature map obtained in step 2 through 3 SE-ResNet blocks and 2 convolutional layers to obtain the B channel of the final stego image. ; Step 4: Channel B of the steganographic image obtained in step 3 Combine the R channel and G channel of the carrier image in step 1 to obtain the stego image ; Step 5: Take the stego image obtained in step 4 Channel separation is performed to obtain three images: the B channel image of the steganographic image, the R channel image of the steganographic image, and the G channel image of the steganographic image; the B channel image of the steganographic image is input into the decoding network to extract the secret image M ext .

2. The image steganography method based on SE-ResNet according to claim 1, characterized in that: The specific process of step 1 is as follows: Step 1.1, download the CIFAR10, ImageNet, PASCAL-VOC2012 and LFW datasets from the Internet respectively; Step 1.2: Unify the image size of the dataset in step 1.1 to H×W; select n grayscale images and n color images respectively to form n pairs of images, where the grayscale image with a size of H×W is the secret image. ; Separate the 3-channel color image of size H×W into B channel image, R channel image and G channel image, where the B channel image is the carrier image Channel B I cover-B .

3. The image steganography method based on SE-ResNet according to claim 2, characterized in that: The specific process of step 3 is as follows: The host network branch passes the obtained cascade feature map through 3 SE-ResNet blocks and 2 convolutional layers to obtain the B channel of the final stego image. ; The loss function of the encoding network is shown in the following formula (1): (1); Among them, L E represents the loss function of the encoding network, I cover-B represents the B channel of the carrier image, represents the parameters in the encoding network, represents the secret image to be embedded; Represents the carrier image The B channel and secret image The output after the encoding network is That is, the B channel of the stego image; where MSE is the loss function of the mean square error.

4. The image steganography method based on SE-ResNet according to claim 3, characterized in that: The specific process of step 5 is as follows: Step 5.1: Obtain the steganographic image I obtained in step 4 stego Channel separation, separated into B, G and R channels, the B channel I of the obtained steganographic image stego-B ; Step 5.2: The steganographic image I obtained in step 5.1 stego-B Input into the decoding network, after 3 SE-ResNet blocks and 2 convolutional layers, the secret image M is extracted. ext : The loss function of the decoding network is shown in the following formula (2): (2); in, represents the loss function of the decoding network, represents the B channel of the stego-image, represents the parameters in the decoding network, represents the secret image to be embedded; Representing a stego-image The output of the B channel after the decoding network is M ext That is, the secret image extracted by the decoding network; The loss function of the entire model is shown in the following formula (3): (3); Where, L E represents the loss function of the encoding network, L D Represents the loss function of the decoding network.

Citation Information

Patent Citations

  • Invisible image steganography based on generative adversarial network

    CN109587372A

  • JPEG image steganalysis method based on channel space attention mechanism

    CN112862655A