A model training method, analysis method and system for image steganalysis
By combining the natural image dataset and the steganographic image dataset with auxiliary task dataset and using fusion loss for neural network model training, the problem of poor generalization ability of deep learning steganographic analysis model is solved, and the accuracy of feature extraction and recognition of the model is improved.
Patent Information
- Application Number
- CN202410709811.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-03
- Publication Date
- 2025-04-22
- Estimated Expiration
- 2044-06-03
AI Technical Summary
In the prior art, the steganographic analysis model based on deep learning faces the problems of low signal strength, variable patterns and difficult to capture during the training process, resulting in the model's dependence on the data set, poor generalization ability, and easy to overfit.
By obtaining the natural image data set, the steganography image data set, the auxiliary task image data set 1 and the auxiliary task image data set 2, add labels and input the initial neural network model including the feature extraction backbone network, the main task classification network and the auxiliary task classification network, perform steganography operation recognition and auxiliary operation recognition after extracting the features. The model is updated by integrating the losses when executing the main classification task and the auxiliary classification task, and finally obtaining the image steganography analysis model.
The feature extraction and generalization capabilities of the image steganography analysis model are improved, the accuracy of the steganography operation recognition results of the image to be analyzed is enhanced, and the phenomenon of model overfitting is avoided.
Smart Images

Figure CN118747813B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of image steganography technology, and in particular to a model training method, an analysis method and a system for image steganalysis. Background Art
[0002] Steganalysis detects hidden information in image data in social networks or cloud storage, which is conducive to timely discovering and preventing the spread of illegal information, maintaining the security and stability of cyberspace, and protecting the legitimate rights and interests of users. It plays an important role in the field of network security.
[0003] In the prior art, all steganalysis tasks based on deep learning belong to single-task learning. By training the steganalysis data set separately and continuously optimizing during the training process to minimize the training loss, the optimal model of the steganalysis task is finally obtained. However, as a subtle and imperceptible weak signal, the steganalysis signal makes the deep learning model face many difficulties in the training process. These difficulties mainly stem from the characteristics of the steganalysis signal, including low signal strength, variable patterns and difficulty in capturing, which leads to the deep learning model's excessive dependence on the data set and poor generalization ability. At the same time, when dealing with steganalysis tasks, deep learning models usually require a large amount of labeled data for training. However, in actual applications, the acquisition of labeled data is limited, which leads to the deep learning model's easy overfitting during the training process and weak generalization ability. In addition, the weak signal characteristics of the steganalysis signal make it difficult for the deep learning model to capture effective information when extracting features, further exacerbating the model's dependence on the data set. Summary of the invention
[0004] In view of this, the embodiments of the present invention provide a model training method, an analysis method and a system for image steganalysis to eliminate or improve one or more defects existing in the prior art, and solve the problem of poor steganalysis capability and generalization capability of the steganalysis model in the prior art.
[0005] One aspect of the present invention provides an image steganalysis model training method, the method comprising the following steps:
[0006] Acquire a training sample set, the training sample set comprising a natural image data set, a stego image data set obtained by performing a stego operation on the natural image data set, an auxiliary task image data set 1 obtained by performing an auxiliary operation on the natural image data set, and an auxiliary task image data set 2 obtained by performing a stego operation on the auxiliary task image data set 1, and add labels indicating whether the samples in the training sample set have undergone a stego operation, whether the samples have undergone an auxiliary operation, and a stego rate interval; wherein the auxiliary operation comprises fuzzy filtering, sharpening and / or steganalysis quantification, the fuzzy filtered and sharpened training sample set uses the natural image data set, the stego image data set, the auxiliary task image data set 1, and the auxiliary task image data set 2, and the stegoanalysis quantification training sample set uses the natural image data set and the stego image data set;
[0007] Acquire an initial neural network model, the initial neural network model comprising a feature extraction backbone network, a main task classification network and an auxiliary task classification network; the feature extraction backbone network extracts features using samples in the training sample set as input, inputs the extracted features into the main task classification network to perform a main classification task of identifying whether a steganographic operation exists, and inputs the extracted features into the auxiliary task classification network to perform an auxiliary classification task of identifying whether an auxiliary operation exists;
[0008] A main task loss is constructed for the main classification task, an auxiliary task loss is constructed for the auxiliary classification task, and the main task loss and the auxiliary task loss are weightedly summed to obtain a fusion loss. With the goal of minimizing the fusion loss, the training sample set is used to update the parameters of the initial neural network model until convergence, and the updated feature extraction backbone network and the main task classification network are constructed as an image steganalysis model.
[0009] In some embodiments, the feature extraction backbone network adopts the SRNet model.
[0010] In some embodiments, the SRNet model includes a first type of layer structure, a second type of layer structure, a third type of layer structure, and a fourth type of layer structure that are arranged continuously;
[0011] The first type of layer structure includes a first convolutional layer, a first batch of normalization layers and a nonlinear activation function layer that are arranged in succession;
[0012] The second type of layer structure includes the first type of layer structure, the second convolutional layer and the second batch of normalized layers which are arranged continuously; wherein the input of the second type of layer structure is output after establishing a residual short connection with the output of the second batch of normalized layers;
[0013] The third type of layer structure includes the first type of layer structure, the third convolution layer, the third batch normalization layer and the first average pooling layer that are arranged continuously; wherein the input of the third type of layer structure is output after establishing a residual short connection with the output of the third batch normalization layer, and the residual short connection includes a fourth convolution layer and a fourth batch normalization layer that are arranged continuously;
[0014] The fourth type of layer structure includes the first type of layer structure, a fifth convolutional layer, a fifth batch normalization layer and a second average pooling layer which are arranged continuously.
[0015] In some embodiments, both the main task classification network and the auxiliary task classification network use a continuously arranged full connection layer and a softmax function layer to predict the probability of each category in the classification task.
[0016] In some embodiments, the fusion loss is calculated as:
[0017] L total =∑ i w i L i ;
[0018] Among them, L i represents the i-th task loss in the main classification task and the auxiliary task, w i represents the weight of the i-th task loss in the main classification task and the auxiliary classification task, the loss weight of the main classification task is set to 0.9, and the loss weight of the auxiliary classification task is set to 0.1.
[0019] In some embodiments, labels are added to samples in the training sample set.
[0020] When the auxiliary operation is blur filtering and sharpening, adding labels indicating whether the samples in the training sample set have undergone the steganographic operation and the auxiliary operation includes:
[0021] Using a first label to indicate whether the sample in the training sample set has been subjected to a steganographic operation, 1 indicates that the sample in the training sample set has been subjected to a steganographic operation, and 0 indicates that the sample in the training sample set has not been subjected to a steganographic operation;
[0022] A second label is used to indicate whether the samples in the training sample set have been subjected to an auxiliary operation, 1 indicates that the samples in the training sample set have been subjected to an auxiliary operation, and 0 indicates that the samples in the training sample set have not been subjected to an auxiliary operation;
[0023] When the auxiliary operation is steganalysis quantification, adding a label indicating whether the sample in the training sample set has undergone a steganalysis operation and a label for determining a steganalysis rate range includes:
[0024] A third label is used to indicate whether the samples in the training sample set have been subjected to a steganographic operation, 1 indicates that the samples in the training sample set have been subjected to a steganographic operation, and 0 indicates that the samples in the training sample set have not been subjected to a steganographic operation;
[0025] The fourth label is used to determine the interval of the sample steganography rate in the training sample set, 1 indicates that the sample in the training sample set has a high steganography rate, 2 indicates that the sample in the training sample set has the second highest steganography rate, 3 indicates that the sample in the training sample set has the second lowest steganography rate, and 4 indicates that the sample in the training sample set has a low steganography rate.
[0026] On the other hand, the present invention also provides an image steganalysis method, the method comprising the following steps:
[0027] Acquire an image to be analyzed;
[0028] The image to be analyzed is input into the image steganalysis model in the above-mentioned image steganalysis model training method, and a classification recognition result of whether the image to be analyzed has a steganalysis operation is output.
[0029] On the other hand, the present invention also provides an image steganalysis system, comprising a processor, a memory and a computer program / instruction stored in the memory, wherein the processor is used to execute the computer program / instruction, and when the computer program / instruction is executed, the system implements the steps of the above method.
[0030] On the other hand, the present invention also provides a computer-readable storage medium having a computer program stored thereon, characterized in that the program implements the steps of the above method when executed by a processor.
[0031] On the other hand, the present invention further provides a computer program product, comprising a computer program / instruction, characterized in that the computer program / instruction implements the steps of the above method when executed by a processor.
[0032] The beneficial effects of the present invention are at least:
[0033] In the model training method, analysis method and system of image steganalysis of the present invention, labels are added to a natural image data set, a steganalysis image data set, an auxiliary task image data set one and an auxiliary task image data set two and input into an initial neural network model including a feature extraction backbone network, a main task classification network and an auxiliary task classification network, after extracting features, steganalysis operation recognition and auxiliary operation recognition are performed, and the parameters of the above-mentioned initialized neural network model are updated by fusing the losses when performing the main classification task and the auxiliary task, and finally an image steganalysis model of a backbone network for performing feature extraction and a main task classification network for steganalysis is obtained, and an image to be analyzed is input into the image steganalysis model to obtain an identification result of whether the image to be analyzed has a steganalysis operation, thereby improving the feature extraction capability and generalization capability of the image steganalysis model and improving the accuracy of the analysis result of the image to be analyzed.
[0034] Furthermore, the feature extraction backbone network of the present invention adopts the SRNet model. The residual short connections in the SRNet model can enable the extracted features to be transmitted across layers, so that the features can flow smoothly between different layers, accelerate the training process and avoid the disappearance of gradients during the training process, thereby maintaining the stable performance of the SRNet model.
[0035] Additional advantages, purposes, and features of the present invention will be described in part in the following description, and will become apparent to those skilled in the art after studying the following, or may be learned from the practice of the present invention. The purposes and other advantages of the present invention may be achieved and obtained by the structures specifically indicated in the specification and the accompanying drawings.
[0036] Those skilled in the art will appreciate that the objectives and advantages that can be achieved with the present invention are not limited to the above specific description, and the above and other objectives that can be achieved by the present invention will be more clearly understood from the following detailed description. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] The drawings described herein are used to provide a further understanding of the present invention, constitute a part of the present application, and do not constitute a limitation of the present invention. In the drawings:
[0038] Figure 1 The figure is a flowchart of the image steganalysis model training method according to an embodiment of the present invention.
[0039] Figure 2 It is a structural diagram of the image steganalysis model training method described in one embodiment of the present invention. DETAILED DESCRIPTION
[0040] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the embodiments and the accompanying drawings. Here, the illustrative embodiments of the present invention and their descriptions are used to explain the present invention, but are not intended to limit the present invention.
[0041] It should also be noted that, in order to avoid obscuring the present invention due to unnecessary details, only structures and / or processing steps closely related to the solutions according to the present invention are shown in the accompanying drawings, while other details that are not closely related to the present invention are omitted.
[0042] It should be emphasized that the term “include / comprises” when used herein refers to the presence of features, elements, steps or components, but does not exclude the presence or addition of one or more other features, elements, steps or components.
[0043] It should also be noted that, unless otherwise specified, the term “connection” herein may refer not only to a direct connection but also to an indirect connection involving an intermediate.
[0044] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. In the accompanying drawings, the same reference numerals represent the same or similar components, or the same or similar steps.
[0045] In the prior art, all steganalysis tasks based on deep learning belong to single-task learning. By training the steganalysis data set separately and continuously optimizing during the training process to minimize the training loss, the optimal model of the steganalysis task is finally obtained. However, due to the low signal strength, variable patterns and difficulty in capturing the steganalysis signal, the deep learning model is too dependent on the data set and has poor generalization ability. The present invention proposes a model training method, analysis method and system for image steganalysis, which adds labels to a natural image data set, a steganalysis image data set, an auxiliary task image data set one and an auxiliary task image data set two, and inputs them into an initial neural network model including a feature extraction backbone network, a main task classification network and an auxiliary task classification network. The feature extraction backbone network is used as the training set, and the main task classification network is used as the classification network. The backbone network adopts the SRNet model. The residual short connection in the SRNet model can realize cross-layer transmission of the extracted features and realize smooth flow of features between different layers. After extracting the features, steganalysis operation recognition and auxiliary operation recognition are performed. The parameters of the above-mentioned initialized neural network model are updated by fusing the losses when performing the main classification task and the auxiliary classification task, and finally an image steganalysis model of a backbone network for performing feature extraction and a main task classification network for steganalysis is obtained. After the image to be analyzed is input into the image steganalysis model, an identification result of whether the image to be analyzed has a steganalysis operation is obtained, thereby improving the feature extraction ability and generalization ability of the image steganalysis model, and improving the accuracy of identifying the result of the image to be analyzed.
[0046] Figure 1The figure is a flow chart of a method for training an image steganalysis model according to an embodiment of the present invention. Specifically, the present application provides a method for training an image steganalysis model, and the method comprises the following steps S101 to S103:
[0047] Step S101: obtaining a training sample set, the training sample set including a natural image data set, a stego image data set obtained by performing a stego operation on the natural image data set, an auxiliary task image data set 1 obtained by performing an auxiliary operation on the natural image data set, and an auxiliary task image data set 2 obtained by performing a stego operation on the auxiliary task image data set 1, adding labels indicating whether the samples in the training sample set have undergone a stego operation, whether the samples have undergone an auxiliary operation, and a stego rate interval; wherein the auxiliary operation includes fuzzy filtering, sharpening and / or steganalysis quantification, the training sample set for fuzzy filtering and sharpening uses the natural image data set, the stego image data set, the auxiliary task image data set 1, and the auxiliary task image data set 2, and the training sample set for stegoanalysis quantification uses the natural image data set and the stego image data set.
[0048] Step S102: Obtain an initial neural network model, which includes a feature extraction backbone network, a main task classification network and an auxiliary task classification network; the feature extraction backbone network extracts features using samples in the training sample set as input, inputs the extracted features into the main task classification network to perform a main classification task of identifying whether a steganographic operation exists, and inputs the extracted features into the auxiliary task classification network to perform an auxiliary classification task of identifying whether an auxiliary operation exists.
[0049] Step S103: construct the main task loss for the main classification task, construct the auxiliary task loss for the auxiliary classification task, and perform weighted sum calculation on the main task loss and the auxiliary task loss to obtain the fusion loss; with the goal of minimizing the fusion loss, use the training sample set to update the parameters of the initial neural network model until convergence, and construct the updated feature extraction backbone network and the main task classification network into an image steganalysis model.
[0050] In step S101, the auxiliary classification task is a task with a strong correlation with the steganalysis of the main classification task and a small difference in convergence speed, including but not limited to fuzzy filtering, sharpening and quantitative steganalysis. Since both the steganalysis classification task and the auxiliary classification task destroy the correlation of the image pixels, the auxiliary classification task makes the initial neural network model focus on the area after the steganalysis operation. Since the main classification task and the auxiliary classification task share the SRNet model of feature extraction, the main classification task also focuses on the area after the steganalysis operation, so that the initial neural network model focuses on the area after the steganalysis operation and excludes other interference, thereby enhancing the ability of steganalysis. Through experimental analysis, fuzzy filtering is the best when used as an auxiliary task. When fuzzy filtering is selected as an auxiliary task, the initial neural network model can achieve the best effect when performing feature extraction, main classification tasks and auxiliary classification tasks. The filter kernel used in the present invention is a small size of 3×3, which is conducive to reducing the number of parameters and the complexity of calculation. The natural data set contains 10,000 pictures. When using pictures, Matl The imresize function in ab scales the image, reducing the original size of 512×512 to 256×256, reducing the complexity of the feature extraction process to improve the efficiency of subsequent feature extraction, while maintaining the original ratio and image quality of the image. The natural image dataset, the steganographic image dataset, the auxiliary task image dataset 1 and the auxiliary task image dataset 2 divide each dataset into a training set, a validation set and a test set in a ratio of 6:2:2. The purpose of dividing the training set, the sample set and the test set is to prevent the model from overfitting. The training set is used to fit the model and train the classification model. The fitted and trained model is used to predict the validation set data and obtain the accuracy of the predicted results. The model parameters are adjusted through the verification results of the validation set to obtain the optimal model and make a preliminary evaluation of the ability of the optimal model. After obtaining the optimal model, the test set is used to predict the optimal model, measure the performance, classification ability and generalization ability of the optimal model, and obtain the steganalysis ability and generalization ability of the steganalysis model.
[0051] Furthermore, in some embodiments, when the auxiliary operation is blur filtering and sharpening, adding labels indicating whether the samples in the training sample set have undergone the steganographic operation and the auxiliary operation includes:
[0052] The first label is used to indicate whether the samples in the training sample set have been subjected to a steganographic operation. 1 indicates that the samples in the training sample set have been subjected to a steganographic operation, and 0 indicates that the samples in the training sample set have not been subjected to a steganographic operation.
[0053] The second label is used to indicate whether the samples in the training sample set have undergone auxiliary operations, 1 indicates that the samples in the training sample set have undergone auxiliary operations, and 0 indicates that the samples in the training sample set have not undergone auxiliary operations.
[0054] When the auxiliary operation is steganalysis quantification, labels indicating whether the samples in the training sample set have undergone steganalysis and labels for determining the steganalysis rate range are added, including:
[0055] The third label is used to indicate whether the samples in the training sample set have been subjected to a steganographic operation. 1 indicates that the samples in the training sample set have been subjected to a steganographic operation, and 0 indicates that the samples in the training sample set have not been subjected to a steganographic operation.
[0056] The fourth label is used to determine the interval of the sample steganography rate in the training sample set. 1 indicates that the sample in the training sample set has a high steganography rate, 2 indicates that the sample in the training sample set has the second highest steganography rate, 3 indicates that the sample in the training sample set has the second lowest steganography rate, and 4 indicates that the sample in the training sample set has a low steganography rate.
[0057] Specifically, when the auxiliary operation is fuzzy filtering and sharpening, the sample includes a first label for identifying whether a steganalysis operation has been performed and a second label for identifying whether an auxiliary operation has been performed. When the auxiliary operation is quantitative steganalysis, the sample includes a third label for identifying whether a steganalysis operation has been performed and a fourth label for determining a steganalysis rate interval, wherein the steganalysis rate interval is divided into four intervals: (0, 0.4], (0.4, 0.6], (0.6, 1.0], and (1.0, 3.0]. Adding labels means adding annotation information to the data set. The annotation information is artificially generated and is used to indicate the category or feature of each sample in the data set. The labels can learn the features and rules of the data for accurate prediction and classification.
[0058] In step S102, after the backbone network performs feature extraction, the extracted features are input into the main task classification network and the auxiliary task classification network. The main classification task identifies whether the sample has undergone a filtering operation. The extracted features are noise residual features of the image in the sample. In some embodiments, the feature extraction backbone network adopts the SRNet model. In some embodiments, the SRNet model includes a first-class layer structure, a second-class layer structure, a third-class layer structure, and a fourth-class layer structure that are continuously arranged.
[0059] The first type of layer structure includes the first convolutional layer, the first batch of normalization layers and non-linear activation function layers that are set consecutively.
[0060] The second type of layer structure includes the first type of layer structure, the second convolutional layer and the second batch of normalization layers which are arranged continuously; wherein the input of the second type of layer structure is output after establishing a residual short connection with the output of the second batch of normalization layers.
[0061] The third type of layer structure includes the first type of layer structure, the third convolutional layer, the third batch normalization layer and the first average pooling layer that are arranged continuously; wherein, the input of the third type of layer structure is output after a residual short connection is established with the output of the third batch normalization layer, and the residual short connection includes a fourth convolutional layer and a fourth batch normalization layer that are arranged continuously.
[0062] The fourth type of layer structure includes the first type of layer structure, the fifth convolution layer, the fifth batch normalization layer, and the second average pooling layer, which are arranged continuously.
[0063] Specifically, the first 12 layers of the SRNet model are used for feature extraction. The SRNet model is used for image super-resolution tasks and is usually implemented using convolutional neural networks (CNN) or generative adversarial networks (GAN). The SRNet model is divided into 4 types of layer structures and 3 functional modules. The first functional module is the 1st-2nd layer, which performs operations of the first type of layer structure, including convolution (Conv), batch normalization (BN), and nonlinear activation (ReLU). The second functional module is the 3rd-7th layer, which performs operations of the second type of layer structure and performs convolution and batch normalization on the output results of the first layer. It can also skip convolution and batch normalization and directly connect the output results of the first layer to the output results of the second layer. The third functional module is the 8th-11th layer, which performs operations of the third type of layer structure and performs two line operations on the output results of the first layer. The first line Line operations include convolution and batch normalization. The second line operation includes convolution, batch normalization and average pooling (Avg.pooling). The fourth type of layer structure operation includes convolution, batch normalization and average pooling after the output of the first layer. The 12th layer simplifies the feature map of size 16×16 into a feature vector by calculating the statistical moment of the feature map, retains important features and removes redundant information, improves the efficiency of data processing and improves the effect of data processing. After feature mapping, it is sent to the classifier and classified and recognized through the softmax function. Commonly used dimensionality reduction methods include principal component analysis (PCA), linear discriminant analysis (LDA) and autoencoder. Dimensionality reduction is also conducive to simplifying the calculation and processing process of subsequent samples, while reducing the storage space during sample feature extraction and processing.
[0064] Furthermore, there is a difference between the first average pooling layer and the second average pooling layer. The second average pooling layer performs global pooling, uses convolution to gradually extract features, and batch normalization to enhance and change features. At the same time, it accelerates the training process of the initial neural network model and improves the generalization ability of the model to stabilize the data input. Models with good generalization ability can still make appropriate predictions and decisions for untrained data, which has a significant impact on the usability of the model. The introduction of nonlinear activation functions can improve the nonlinear fitting ability of the initialized neural network and enhance the model's performance. Average pooling suppresses noise and reduces the amount of calculation while enhancing the content of the image itself, so that the SRNet model pays more attention to the overall characteristics of the entire sample, making feature extraction and analysis more robust.
[0065] Furthermore, layers 3-7 and layers 8-11 include residual short connections. In some embodiments, the residual short connections in the SRNet model can enable the extracted features to be transmitted across layers; specifically, the residual short connections can directly connect the input end to a deeper layer, so that the input end or the extracted features can skip certain layers and be directly transmitted to a deeper layer, so that information can flow smoothly between different layers of the SRNet model of the backbone network, avoiding the problem of gradient vanishing in the SRNet model during training. Gradient vanishing is a phenomenon in which the gradient gradually decreases until it approaches zero when information is transmitted between layers, which will affect the model's learning of effective feature representations and affect the training effect. The residual short connections enable the SRNet model to use the features extracted by the previous layers, reduce the workload of re-learning all layers to accelerate the training process, and enable the SRNet model to maintain stable performance as the number of network layers increases. Methods for alleviating gradient vanishing include using nonlinear activation functions and normalization methods.
[0066] In some embodiments, both the main task classification network and the auxiliary task classification network use a continuously set fully connected layer and a softmax function layer to predict the probability of each category in the classification task.
[0067] Specifically, the fully connected layer is used for classification tasks, converting the outputs of the convolution layer and the pooling layer into classification results. The functions performed by the fully connected layer include: feature integration, classification decision, parameter learning and nonlinear modeling. The fully connected layer integrates the features of the convolution layer and the pooling layer into a form that can be used for decision-making and classification, and passes the integrated features to the activation function to generate scores for two categories, one after the steganographic operation and the other after the auxiliary operation. The softmax function is used to convert the scores into probabilities of the two categories, and the score data is normalized into a value between 0 and 1 as a probability distribution. The parameters are adjusted through backpropagation and gradient descent during the training process. The fully connected layer contains activation parameters for learning complex data relationships, and the nonlinear activation function is used to introduce nonlinear properties.
[0068] In step S103, the noise residual feature is measured by the loss function, and the parameters of the initial neural network model are optimized by minimizing the loss function. The loss function for initializing the neural network parameters is a fusion loss including the main task loss and the auxiliary task loss. In some embodiments, the calculation formula of the fusion loss is:
[0069] L total =∑ i w i L i ;
[0070] Among them, L i represents the i-th task loss in the main classification task and the auxiliary classification task, w irepresents the weight of the i-th task loss in the main classification task and the auxiliary classification task. The loss weight of the main classification task is set to 0.9, and the loss weight of the auxiliary classification task is set to 0.1.
[0071] Furthermore, the steganalysis model is the main classification task. The method of setting different main classification task weights and auxiliary classification task weights is adopted to highlight the importance of the main classification task and ensure that the steganalysis recognition performance of the main classification task is improved during the training process. Common parameter updating methods include stochastic gradient descent and batch gradient descent. Common optimization algorithms include gradient descent, conjugate gradient method and Bayesian optimization. When the parameters of the initial neural network model are gradually adjusted during the updating process so that the value of the fusion loss decreases and tends to be stable, it is converged. The parameter update ends when the parameters of the initial neural network model converge.
[0072] On the other hand, the present invention also provides an image steganalysis method, which comprises the following steps S201-S202:
[0073] Step S201: Acquire an image to be analyzed.
[0074] Step S202: input the image to be analyzed into the image steganalysis model in the above-mentioned image steganalysis model training method, and output a classification and recognition result of whether the image to be analyzed has a steganalysis operation.
[0075] Specifically, the image steganalysis model performs steganalysis of feature extraction tasks and main classification tasks, which is different from the tasks performed by the initial neural network model. It does not perform auxiliary classification tasks. After the image to be analyzed is input into the trained image steganalysis model, a classification and recognition result of whether the image to be analyzed has undergone a steganalysis operation can be obtained. The image steganalysis model is used to improve the accuracy of steganalysis and the trained image steganalysis model has high generalization ability.
[0076] On the other hand, the present invention also provides an image steganalysis system, comprising a processor and a memory, wherein the memory stores computer instructions, and the processor is used to execute the computer instructions stored in the memory. When the computer instructions are executed by the processor, the system implements the steps of the above method.
[0077] On the other hand, the present invention further provides a computer-readable storage medium having a computer program stored thereon, which implements the steps of the above method when executed by a processor.
[0078] On the other hand, the present invention also provides a computer program product, comprising a computer program / instruction, characterized in that the computer program / instruction implements the steps of the above method when executed by a processor.
[0079] The present invention is described below in conjunction with a specific embodiment:
[0080] Figure 2 The present invention adopts a hard parameter sharing structure, uses SRNet as the backbone network, uses the first 12 layers of SRNet to extract features, and then divides the learning into two tasks: the main classification task and the auxiliary classification task, wherein the main classification task is steganalysis.
[0081] 1. Extract the noise residual module.
[0082] The 1st to 7th layers responsible for extracting noise residuals are the key part of SRNet; since average pooling is equivalent to a low-pass filter, it suppresses the steganographic noise signal while enhancing the content of the image itself. This feature is beneficial to traditional computer vision classification but has a negative impact on steganalysis. Therefore, in order to retain the stegographic signal as much as possible, unpooled feature maps are used on the first part of the input in SRNet.
[0083] Among them, the 1st and 2nd layers perform convolution operations, BN batch normalization operations and non-linear activation in sequence, and do not contain any residual short connections or pooling. The purpose of the first two layers is to reduce the feature map from 64 dimensions to 16 dimensions to save memory.
[0084] Layers 3-7 are the core components of the model. They gradually extract noise residual features from the input image through convolution. These convolutional layers can learn feature representations at different levels, thereby capturing more subtle and complex forms of steganographic operations. In addition to feature extraction, this part also enhances and transforms features through batch normalization operations. Batch normalization operations can accelerate the training process of the model and improve the generalization ability of the model. By normalizing the features of each batch of data, each layer of the model can receive more stable and consistent inputs. Residual short connections are an important feature of this part of the design. Residual short connections allow some layers of the model to skip some layers and directly connect the input to deeper layers, ensuring the smooth flow of information in the network, allowing the model to more effectively utilize the features extracted by the previous layer, rather than relying entirely on the re-learning of subsequent layers, accelerating the training process and improving the performance of the model, preventing gradient disappearance and adapting to complex task environments.
[0085] 2. Reduce the feature map dimension module.
[0086] The 8th to 11th layers further process and compress the features extracted by the 1st to 7th layers through convolution and batch normalization operations. These operations help to extract more critical and compact information from the original features so that subsequent classifiers can better utilize these extracted important features. The residual short connections in the 8th to 11th layers allow some layers of the model to skip some layers and directly connect the input or partially processed features to the deeper layers, ensuring that information can flow more smoothly between different layers of the network, which helps the model avoid the problem of gradient disappearance during training and enables deep features to be more effectively utilized. Through residual short connections, the model can reuse the features extracted by the previous layers instead of relying entirely on the re-learning of subsequent layers, which is conducive to accelerating the training process and improving the performance of the model. At the same time, due to the existence of residual short connections, the model can maintain relatively stable performance even when the number of network layers increases, which helps prevent the model from degenerating or performance degradation during training.
[0087] In the 12th layer, the 512 feature maps of size 16×16 are simplified to a 512-dimensional feature vector by calculating the statistical moment of each 16×16 feature map, making the learned features more refined.
[0088] 3. Classification module.
[0089] After feature extraction, a valid feature vector is obtained, which can be used to determine the category of the image. The main classification task and the auxiliary classification task use classifiers with the same structure. For the input features, the softmax function is used after the fully connected layer to obtain the probability of the predicted category.
[0090] 4. Loss fusion module.
[0091] Different from conventional multi-task learning, this study takes steganalysis as the main task, so it is not reasonable to adopt the same loss calculation method. The importance of the main task should be highlighted in the weight of the loss function. For the weight adjustment of multi-task loss, the weighted sum of each loss function is generally used as the final loss function:
[0092] L total =∑ i w i L i ;
[0093] The loss weight of the main classification task steganalysis is set to 0.9, and the loss weight of the auxiliary classification task is set to 0.1. This ensures that during the training process, the performance of the auxiliary task will not be improved but the performance of the main classification task will not be improved.
[0094] 5. Auxiliary task selection:
[0095] In order to avoid the negative transfer phenomenon, auxiliary tasks with strong task relevance and little difference in convergence speed are selected, such as fuzzy filtering, sharpening, quantitative steganalysis and other tasks; through experimental data analysis, fuzzy filtering (filter kernel size is 3x3) is finally selected as the auxiliary task with the best effect.
[0096] 6. Image steganalysis model training method.
[0097] 6.1 Dataset Design
[0098] (1) Natural dataset: The Bossbase 1.01 dataset contains 10,000 512×512 images. When using it, the imresize function in Matlab is used to scale the images and adjust the original size of 512×512 images to 256×256.
[0099] (2) Steganalysis dataset: The natural image dataset is subjected to steganographic operation to generate a steganographic dataset.
[0100] (3) Filtered dataset: generated by performing 3x3 mean filtering on natural images.
[0101] (4) Filtered steganographic dataset: Based on the natural image, a 3x3 filtering operation is first performed and then the corresponding steganographic operation is performed.
[0102] The above four data sets are divided into training set, validation set and test set in the ratio of 6:2:2.
[0103] 6.2 Label processing.
[0104] Each image has two labels, which represent the judgment of the main classification task and the auxiliary classification task respectively. Specifically, for a certain image in the data set, when the auxiliary operation is blur filtering and sharpening, the first label is used to identify the main classification task, to determine whether the image has undergone a steganalysis operation. If it has undergone a steganalysis operation, it is marked as 1, and if it has not undergone a steganalysis operation, it is marked as 0; the second label is used to identify the auxiliary classification task, to determine whether the image has undergone an auxiliary operation. If it has undergone an auxiliary operation, it is marked as 1, and if it has not undergone an auxiliary operation, it is marked as 0; when the auxiliary operation is steganalysis quantitative analysis, the third label is used to identify the main classification task, to determine whether the image has undergone a steganalysis operation, and if it has undergone a steganalysis operation, it is marked as 1, and if it has not undergone a steganalysis operation, it is marked as 0. The auxiliary classification task is marked as 1 if the image has undergone a steganographic operation, and marked as 0 if it has not undergone a steganographic operation. The fourth label is used to identify the auxiliary classification task, and to determine which steganographic rate interval the image belongs to. If the image belongs to a high steganographic rate, it is marked as 1, if the image belongs to the second highest steganographic rate, it is marked as 2, if the image belongs to the second lowest steganographic rate, it is marked as 3, and if the image belongs to a low steganographic rate, it is marked as 4. Since the auxiliary operation, like the steganographic operation, destroys the correlation of image pixels, the auxiliary classification task makes the model pay more attention to the steganographic area. Since the main classification task and the auxiliary classification task share the feature extraction network, the main classification task also pays more attention to the steganographic area, so that the model focuses on the steganographic area and excludes other interference, thereby enhancing the performance of the main classification task.
[0105] 6.3 Model training
[0106] The data set is input into the model for training. After the network backbone extracts features, both the main classification task and the auxiliary classification task output classification results. The weighted sum of their respective losses is taken as the total loss and the parameters are updated and optimized.
[0107] In summary, the present invention provides an image steganalysis model training method, an analysis method and a system, wherein labels are added to a natural image dataset, a steganalysis image dataset, an auxiliary task image dataset one and an auxiliary task image dataset two and input into an initial neural network model including a feature extraction backbone network, a main task classification network and an auxiliary task classification network, and after extracting features, steganalysis operation recognition and auxiliary operation recognition are performed, and the parameters of the above-mentioned initialized neural network model are updated by fusing the losses when performing the main classification task and the auxiliary classification task, and finally an image steganalysis model of a backbone network for performing feature extraction and a main task classification network for steganalysis is obtained, and an image to be analyzed is input into the image steganalysis model to obtain an identification result of whether the image to be analyzed has a steganalysis operation, thereby improving the feature extraction capability and generalization capability of the image steganalysis model, and improving the accuracy of the analysis result of the image to be analyzed.
[0108] Furthermore, the feature extraction backbone network of the present invention adopts the SRNet model. The residual short connections in the SRNet model can enable the extracted features to be transmitted across layers, so that the features can flow smoothly between different layers, accelerate the training process and avoid the disappearance of gradients during the training process, thereby maintaining the stable performance of the SRNet model.
[0109] An embodiment of the present invention further provides a computer device, which may include a processor and a memory, wherein the processor and the memory may be connected via a bus or in other ways.
[0110] The processor may be a central processing unit (CPU). The processor may also be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or a combination of the above chips.
[0111] The memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs, non-transitory computer executable programs and modules, such as the program instructions / modules corresponding to the key shielding method of the vehicle-mounted display device in the embodiment of the present invention. The processor executes various functional applications and data processing of the processor by running the non-transitory software programs, instructions and modules stored in the memory.
[0112] The memory may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created by the processor, etc. In addition, the memory may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other non-volatile solid-state storage device. In some embodiments, the memory may optionally include a memory remotely arranged relative to the processor, and these remote memories may be connected to the processor via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0113] The one or more modules are stored in the memory, and when executed by the processor, the method described in this embodiment is performed.
[0114] The embodiment of the present invention also provides a computer-readable storage medium on which a computer program is stored, and when the computer program is executed by a processor, the steps of the aforementioned edge computing server deployment method are implemented. The computer-readable storage medium can be a tangible storage medium, such as a random access memory (RAM), a memory, a read-only memory (ROM), an electrically programmable ROM, an electrically erasable programmable ROM, a register, a floppy disk, a hard disk, a removable storage disk, a CD-ROM, or any other form of storage medium known in the technical field.
[0115] It should be understood by those skilled in the art that the exemplary components, systems and methods described in conjunction with the embodiments disclosed herein can be implemented in hardware, software or a combination of the two. Whether it is performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention. When implemented in hardware, it can be, for example, an electronic circuit, an application specific integrated circuit (ASIC), appropriate firmware, a plug-in, a function card, etc. When implemented in software, the elements of the present invention are programs or code segments used to perform the required tasks. The program or code segment can be stored in a machine-readable medium, or transmitted on a transmission medium or a communication link via a data signal carried in a carrier.
[0116] It should be clear that the present invention is not limited to the specific configuration and processing described above and shown in the figures. For the sake of simplicity, a detailed description of the known method is omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of the present invention is not limited to the specific steps described and shown, and those skilled in the art can make various changes, modifications and additions, or change the order between the steps after understanding the spirit of the present invention.
[0117] In the present invention, features described and / or illustrated for one embodiment may be used in the same or similar manner in one or more other embodiments, and / or combined with features of other embodiments or replace features of other embodiments.
[0118] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the embodiments of the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.
Claims
1. A method for training an image steganalysis model, characterized in that: The method comprises the following steps: A training sample set is obtained, wherein the training sample set includes a natural image data set, a stego image data set obtained by performing a steganalysis operation on the natural image data set, an auxiliary task image data set 1 obtained by performing an auxiliary operation on the natural image data set, and an auxiliary task image data set 2 obtained by performing a steganalysis operation on the auxiliary task image data set 1, and labels are added to the samples in the training sample set to indicate whether the steganalysis operation has been performed, whether the auxiliary operation has been performed, and whether the steganalysis rate interval has been performed; wherein the auxiliary operation includes fuzzy filtering, sharpening and / or steganalysis quantification, the training sample set for fuzzy filtering and sharpening uses the natural image data set, the stego image data set, the auxiliary task image data set 1, and the auxiliary task image data set 2, and the training sample set for steganalysis quantification uses the natural image data set and the stego image data set; wherein the steganalysis quantification is to perform steganalysis by adopting an interval quantification method, obtain a stego area by judging the stegolysis rate interval, and perform steganalysis; when the auxiliary operation is the steganalysis quantification, the sample includes a third label for identifying whether the stegolysis operation has been performed and a fourth label for judging the stegolysis rate interval; Acquire an initial neural network model, the initial neural network model comprising a feature extraction backbone network, a main task classification network and an auxiliary task classification network; the feature extraction backbone network extracts features using samples in the training sample set as input, inputs the extracted features into the main task classification network to perform a main classification task of identifying whether a steganographic operation exists, and inputs the extracted features into the auxiliary task classification network to perform an auxiliary classification task of identifying whether an auxiliary operation exists; A main task loss is constructed for the main classification task, an auxiliary task loss is constructed for the auxiliary classification task, and the main task loss and the auxiliary task loss are weightedly summed to obtain a fusion loss. With the goal of minimizing the fusion loss, the training sample set is used to update the parameters of the initial neural network model until convergence, and the updated feature extraction backbone network and the main task classification network are constructed as an image steganalysis model.
2. The image steganalysis model training method according to claim 1, characterized in that: The feature extraction backbone network adopts the SRNet model.
3. The image steganalysis model training method according to claim 2, characterized in that: The SRNet model includes a first type of layer structure, a second type of layer structure, a third type of layer structure and a fourth type of layer structure that are continuously arranged; The first type of layer structure includes a first convolutional layer, a first batch of normalization layers and a nonlinear activation function layer that are arranged in succession; The second type of layer structure includes the first type of layer structure, the second convolutional layer and the second batch of normalized layers which are arranged continuously; wherein the input of the second type of layer structure is output after establishing a residual short connection with the output of the second batch of normalized layers; The third type of layer structure includes the first type of layer structure, the third convolution layer, the third batch normalization layer and the first average pooling layer that are arranged continuously; wherein the input of the third type of layer structure is output after establishing a residual short connection with the output of the third batch normalization layer, and the residual short connection includes a fourth convolution layer and a fourth batch normalization layer that are arranged continuously; The fourth type of layer structure includes the first type of layer structure, a fifth convolutional layer, a fifth batch normalization layer and a second average pooling layer which are arranged continuously.
4. The image steganalysis model training method according to claim 3, characterized in that: The main task classification network and the auxiliary task classification network both use a continuously set full connection layer and a softmax function layer to predict the probability of each category in the classification task.
5. The image steganalysis model training method according to claim 4, characterized in that: The calculation formula of the fusion loss is: L total =∑ i w i L i ; Among them, L i represents the i-th task loss in the main classification task and the auxiliary classification task, w i represents the weight of the i-th task loss in the main classification task and the auxiliary classification task, the loss weight of the main classification task is set to 0.9, and the loss weight of the auxiliary classification task is set to 0.
1.
6. The image steganalysis model training method according to claim 5, characterized in that: When the auxiliary operation is blur filtering and sharpening, adding labels indicating whether the samples in the training sample set have undergone the steganographic operation and the auxiliary operation includes: Using a first label to indicate whether the sample in the training sample set has been subjected to a steganographic operation, 1 indicates that the sample in the training sample set has been subjected to a steganographic operation, and 0 indicates that the sample in the training sample set has not been subjected to a steganographic operation; A second label is used to indicate whether the samples in the training sample set have been subjected to an auxiliary operation, 1 indicates that the samples in the training sample set have been subjected to an auxiliary operation, and 0 indicates that the samples in the training sample set have not been subjected to an auxiliary operation; When the auxiliary operation is steganalysis quantification, adding a label indicating whether the sample in the training sample set has undergone a steganalysis operation and a label for determining a steganalysis rate range includes: A third label is used to indicate whether the samples in the training sample set have been subjected to a steganographic operation, 1 indicates that the samples in the training sample set have been subjected to a steganographic operation, and 0 indicates that the samples in the training sample set have not been subjected to a steganographic operation; The fourth label is used to determine the interval of the sample steganography rate in the training sample set, 1 indicates that the sample in the training sample set has a high steganography rate, 2 indicates that the sample in the training sample set has the second highest steganography rate, 3 indicates that the sample in the training sample set has the second lowest steganography rate, and 4 indicates that the sample in the training sample set has a low steganography rate.
7. An image steganalysis method, characterized in that: The method comprises the following steps Acquire an image to be analyzed; The image to be analyzed is input into the image steganalysis model in the image steganalysis model training method according to any one of claims 1 to 6, and a classification recognition result of whether the image to be analyzed has a steganalysis operation is output.
8. An image steganalysis system, comprising a processor, a memory, and a computer program / instruction stored in the memory, characterized in that: The processor is used to execute the computer program / instructions, and when the computer program / instructions are executed, the system implements the steps of the method according to any one of claims 1 to 7.
9. A computer-readable storage medium having a computer program / instruction stored thereon, characterized in that: When the computer program / instructions are executed by a processor, the steps of the method as claimed in any one of claims 1 to 7 are implemented.
10. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Image steganalysis method with unknown embedding rate
CN110648269A
General audio steganalysis method based on convolutional neural network and multi-task learning
CN111768803A