Image steganography method and system in digital human animation data
Patent Information
- Application Number
- CN202611095963.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-23
- Publication Date
- 2026-08-18
AI Technical Summary
(1)数据较为脆弱:在现有的动画捕捉数据隐写动画捕捉数据中,只考虑了简单的攻击形式,即小范围的噪音叠加,并未考虑其他动画领域中常见的攻击形式
本申请提供了一种数字人动画数据中的图像隐写方法及系统,通过对原始彩色图像数据和原始数字人动画数据预处理以及专门设计的图像通道拼接,使神经网络能够高效处理彩色图像与动画数据的匹配嵌入,解决了现有技术无法在数字人动画中隐写彩色图像的问题;通过将动画轨道关闭攻击和动画轨道修改攻击加入损失函数,与编码网络和解码网络进行联合训练,有效提升了模型对常见动画攻击的抵抗能力,实现了隐写后数字人动画在传输后仍能高保真恢复彩色秘密图像的鲁棒性。
Smart Images

Figure CN122597150A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of image information hiding, and in particular to an image steganography method and system for digital human animation data. Background Technology
[0002] Steganography is a technique that hides secret information in a media in an invisible way. It generally consists of two stages: the first stage is the steganography stage, where the sender steganizes the secret information into the media, and the steganized media has a certain degree of concealment, making it difficult for others to discover the hidden data; the second stage is the extraction stage, where the receiver extracts the secret information from the steganized media and tries to recover the original embedded secret information. This technology is often used in copyright protection, intellectual property rights identification, and other fields, and has broad application value and prospects.
[0003] In the field of steganography for digital human animations, methods can be broadly categorized into traditional approaches and deep learning-based methods. Traditional methods primarily rely on authors manually designing embedding patterns and selecting embedding locations. Existing techniques propose a method for steganographically embedding character data (ASCII) into digital human animations, which utilizes certain rules to find redundant locations in the digital human animation space to embed secret information bits. On the deep learning-based side, existing techniques propose a method that uses convolutional neural networks to steganographically embed one digital human animation within another. This method uses two convolutional neural networks and pooling layers to generate the carrier and extract the secret, and it supports digital human animations of different sizes for both the carrier and the secret.
[0004] However, the two existing methods for steganography in digital human animation have the following drawbacks: (1) Data is relatively fragile: In the existing animation capture data steganography, only simple attack forms, namely small-scale noise superposition, are considered, without considering other common attack forms in the animation field. In addition, the existing technology requires to distinguish between attack and non-attack conditions during training, and users need to manually switch model weights when facing different scenarios. These design features make the data steganography in the animation capture data of the existing technology relatively fragile.
[0005] (2) Unable to steg color images in digital human animation data: Due to the limitations of the network framework capacity and pooling layer design of existing technologies, the performance of steging color images in digital human animation data is poor. The recovered secret images are prone to stretching, noise and other defects. Furthermore, the animation normalization method fails to consider the characteristics between digital human animation tracks. These design limitations make it impossible for existing technologies to directly steg color images in digital human animation data.
[0006] In summary, there is an urgent need for an image steganography method and system in digital human animation data to solve the problems of the vulnerability of existing technologies in embedding data in common attacks in the animation field and the inability to embed color images in digital human animation data. Summary of the Invention
[0007] The purpose of this application is to provide a method and system for image steganography in digital human animation data, so as to achieve robust steganography of color images in digital human animation.
[0008] To achieve the above objectives, this application provides the following solution: In a first aspect, this application provides an image steganography method for digital human animation data, including: Acquire raw color image data and raw digital human animation data; The original color image is preprocessed to obtain preprocessed secret data; The original digital human animation data is preprocessed to obtain preprocessed carrier data; The preprocessed secret data and the preprocessed carrier data are spliced together to obtain spliced data; The spliced data is encoded using an encoding network to obtain a dense carrier. Based on the decoding network, the secret data is extracted from the encrypted carrier. Calculate the encoding loss based on the preprocessed carrier data and the dense carrier; Calculate the decoding loss based on the preprocessed secret data and the extracted secret data; A loss function is constructed based on encoding loss, decoding loss, and at least one attack loss. Based on the loss function, the encoding network and the decoding network are trained until the loss function tends to converge, then the training is stopped, and the trained encoding network and decoding network are obtained. The target color image data and target digital human animation data are preprocessed and stitched together to obtain the target stitched data; The target splicing data is encoded based on the trained encoding network to obtain the target-densified carrier; The target dense carrier is subjected to inverse preprocessing to obtain the recovered digital human animation data; Based on the trained decoding network, the recovered digital human animation data is secretly extracted to obtain the target secret data; The target secret data is subjected to inverse preprocessing to obtain a reconstructed target color image.
[0009] Secondly, this application provides an image steganography system for digital human animation data, comprising: The image acquisition module is used to acquire raw color image data and raw digital human animation data; The original color image preprocessing module is used to preprocess the original color image to obtain preprocessed secret data; The original digital human animation data preprocessing module is used to preprocess the original digital human animation data to obtain preprocessed carrier data; The splicing module is used to splice the preprocessed secret data and the preprocessed carrier data to obtain spliced data; An encoding module is used to encode the spliced data based on an encoding network to obtain a dense carrier; A decoding module is used to extract secrets from the encrypted carrier based on a decoding network to obtain the extracted secret data. The coding loss calculation module is used to calculate the coding loss based on the preprocessed carrier data and the dense carrier. The decoding loss calculation module is used to calculate the decoding loss based on the preprocessed secret data and the extracted secret data; The loss function building module is used to construct a loss function based on encoding loss, decoding loss, and at least one attack loss. The training module is used to train the encoding network and the decoding network based on the loss function until the loss function tends to converge, then the training stops, and the trained encoding network and decoding network are obtained. The target stitching module is used to preprocess and stitch together the target color image data and the target digital human animation data to obtain the target stitched data; The target encoding module is used to encode the target splicing data based on the trained encoding network to obtain the target-densified carrier; The target-dense carrier inverse preprocessing module is used to perform inverse preprocessing on the target-dense carrier to obtain the recovered digital human animation data; The target secret data extraction module is used to extract secrets from the recovered digital human animation data based on the trained decoding network to obtain target secret data. The reconstruction module is used to perform inverse preprocessing on the target secret data to obtain a reconstructed target color image.
[0010] According to the specific embodiments provided in this application, this application has the following technical effects: This application provides a method and system for image steganography in digital human animation data. By preprocessing the original color image data and the original digital human animation data and stitching together specially designed image channels, the neural network can efficiently process the matching and embedding of color images and animation data, solving the problem that existing technologies cannot steganographically embed color images in digital human animations. By adding animation track closure attacks and animation track modification attacks to the loss function and jointly training it with the encoding and decoding networks, the model's resistance to common animation attacks is effectively improved, achieving robustness in restoring the color secret image with high fidelity after transmission of the steganographically embedded digital human animation. Attached Figure Description
[0011] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0012] Figure 1 This is a flowchart illustrating the image steganography method in digital human animation data in the embodiments of this application; Figure 2 This is a schematic diagram of the encoding network structure and encoding of the image steganography method in digital human animation data in the embodiments of this application; Figure 3 This is a decoding network structure and decoding diagram of the image steganography method in digital human animation data in the embodiments of this application. Detailed Implementation
[0013] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0014] To make the above-mentioned objectives, features and advantages of this application more apparent and understandable, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0015] like Figure 1 As shown, an image steganography method for digital human animation data is provided, including the following steps: S1: Acquire raw color image data and raw digital human animation data.
[0016] S2: Preprocess the original color image to obtain preprocessed secret data. This preprocessing of the original color image can be used... The function representation specifically includes the following steps: S201: First, crop the height and width of the original color image, and then perform feature separation to obtain red channel data, green channel data and blue channel data; S202: Calculate the gray channel data based on the red channel data, green channel data, and blue channel data; the calculation formula is as follows: ; in, This is gray channel data. This is data from the red channel. For green channel data, This is data from the blue channel.
[0017] S203: Concatenate the red channel data, green channel data, blue channel data, and gray channel data in sequence into a block matrix, denoted as... .
[0018] S204: Downsample the block matrix to obtain preprocessed secret data.
[0019] In a specific embodiment, the block matrix is downsampled using a bilinear downsampling function with a multiplier of two to obtain the preprocessed secret data. The calculation formula is as follows: ; in, For preprocessed secret data, This represents the preprocessing function for the original color image. For the original color image, This indicates downsampling.
[0020] S3: Preprocess the original digital human animation data to obtain preprocessed carrier data.
[0021] Because different digital art design software programs have their own unique formats, and the storage file formats of raw digital human animation data are not standardized, preprocessing is required. This preprocessing of raw digital human animation data can be achieved using... The function representation specifically includes the following steps: S301: The raw digital human animation data is converted into a unified SMPL-X 322 format using a data converter, resulting in a unified matrix; the expression is as follows: ; in, For a unified matrix, Represents the unified matrix of the first Line 1 The elements of the column represent animation tracks, and the column coordinates represent animation frames; the number of animation tracks is... The number of animation time frames is .
[0022] The aforementioned unified matrix in the SMPL-X 322 format includes animation tracks for digital human expressions, limbs, shapes, fingers, etc. Among them, the animation expressing limb rotation consists of three consecutive tracks. The data of these three tracks form a three-dimensional vector on the time frame. The direction of the vector represents the direction of rotation, and the magnitude of the vector represents the rotation angle. For the expression and shape tracks, they consist of a floating-point track, which expresses the parameter magnitude on the time frame.
[0023] S302: Based on the minimum-maximum normalization algorithm, for the unified matrix Normalization is performed to obtain normalized data. .
[0024] In a specific embodiment, for a unified matrix The elements in the matrix are obtained by first grouping the unified matrix along the animation track dimension using the normalization function. Then, within each group, the min-max normalization algorithm is used, calculated as follows: ; in, For normalized data elements, Represents the matrix of the first Line 1 The data in the column, It is the first The smallest element in the set of data. It is the first The largest element in the group of data, It is a local minimum constant.
[0025] After normalization, the normalized data elements The range is Range, normalized data elements Together they form the normalized data , denoted as: .
[0026] S303: Determine whether the capacity of the carrier of the normalized data is sufficient to hold the preprocessed secret data; If so, then the normalized data As preprocessed carrier data; If not, replace the original color image.
[0027] In a specific embodiment, the steganography method of this application involves steganographically writing each row of the original color image into the corresponding track of the carrier. Therefore, the carrier data and the secret data are required to satisfy the following: and If the carrier data If the image is too small, steganography cannot be completed, and the user needs to replace it with the secret image, i.e., the original color image. If the carrier... If the size is too small, the carrier capacity can be increased by linear interpolation along the time frame dimension, and this can be continued until... .
[0028] If the carrier capacity itself is sufficient to meet the needs of the embedding operation, then time will be used as a metric. The data is used for information embedding.
[0029] The preprocessing process in step S3 above can be expressed as follows: ; in, For preprocessed carrier data, This represents the preprocessing function for the raw digital human animation data. It is the original digital human animation data, and also a unified matrix in the unified SMPL-X 322 format.
[0030] S4: Concatenate the preprocessed secret data and the preprocessed carrier data to obtain the concatenated data; the expression is as follows: ; in, To splice the data, This indicates feature splicing.
[0031] S5: Encode the spliced data based on the coding network to obtain a dense carrier.
[0032] like Figure 2 As shown, the encoding network includes a first downsampled convolutional layer, a second downsampled convolutional layer, a third downsampled convolutional layer, a first upsampled concatenation layer, a second upsampled concatenation layer, an end-upsampled transposed convolutional layer, a first smoothed convolutional layer, and a second smoothed convolutional layer connected in sequence.
[0033] In a specific embodiment, each downsampling convolutional layer includes three operations: downsampling convolution, normalization, and activation. The downsampling convolution uses a size of [size missing]. The convolution kernel, size is The fill size and step size are convolution function Defined as Then use The function is normalized, and finally used. The function is activated. Each downsampling convolutional layer reduces the size of the feature map by half in both the width and height dimensions, as shown in the following expression: ; in, Indicates input, such as Figure 2 splicing data in First downsampling convolution result Second downsampling convolution result ; This represents the output that corresponds one-to-one with the above inputs, such as when the input is concatenated data. The first downsampling convolution result corresponding to the time When the input is the first downsampled convolution result The second downsampling convolution result corresponding to the time And when the input is the result of the second downsampled convolution. The third downsampling convolution result corresponding to the time The input and output are feature maps of different sizes and dimensions.
[0034] In a specific embodiment, each upsampling concatenation layer includes an upsampling transposed convolutional layer and a dimension concatenation layer. The upsampling transposed convolutional layer includes three operations: upsampling transposed convolution, normalization, and activation; wherein, the upsampling and downsampling transposed convolutions use a size of [missing information]. The convolution kernel, size is The fill size and step size are transpose convolution function Defined as Then use The function is normalized, and finally used. The function is activated. The dimension concatenation layer is used to concatenate the results of downsampled convolutions in the same dimension after upsampled transposed convolutions, thus concatenating them along the feature dimension. Each upsampling concatenation layer doubles the width and height of the feature map, as shown in the following expression: ; in, Indicates input, such as Figure 2 The third downsampling convolution result The result of splicing with the first upsampling ; This represents the output that corresponds one-to-one with the above inputs, such as when the input is the result of the third downsampling convolution. The first upsampling stitching result corresponding to the time And when the input is the first upsampled splicing result The second upsampling stitching result corresponding to the time .
[0035] Each smooth convolutional layer includes three operations: smooth convolution, normalization, and activation. The size used for smooth convolution is [size missing]. The convolution kernel, size is The fill size and step size are convolution function Defined as Then use The function is normalized, and finally used. The activation function is applied, and the last layer uses the sigmoid function, which fixes the output range of the neural network within a certain range. The specific expression is as follows: ; in, For input, such as Figure 2 Upsampled transposed convolution results and the first smooth convolution result ; The output corresponds one-to-one with the above inputs, such as when the input is an upsampled transposed convolution result. The first smooth convolution result corresponding to the time And when the input is the result of the first smooth convolution. The second smooth convolution result corresponding to the time The input and output data maintain the same shape and size, but the feature size may be changed.
[0036] The terminal upsampled transposed convolutional layer is identical to the upsampled transposed convolutional layer, consisting of three operations: upsampled transposed convolution, normalization, and activation. Its input is the concatenated result of the second upsampled layer. Its output is the corresponding end-upsampled transposed convolution result. .
[0037] Based on the above principles, the following is adopted: Figure 2 The encoding network encodes the spliced data to obtain a dense carrier, including the following steps: The first downsampling convolutional layer concatenates the data. Perform downsampling convolution to obtain the first downsampling convolution result. ; The expression is: .
[0038] The second downsampling convolutional layer applies the result of the first downsampling convolution. Perform downsampling convolution to obtain the second downsampling convolution result. .
[0039] The third downsampling convolution layer applies the result of the second downsampling convolution. Perform downsampling convolution to obtain the third downsampling convolution result. .
[0040] The first upsampling concatenation layer performs a convolution on the third downsampling layer. Perform upsampling transpose convolution to obtain the first upsampling transpose convolution result. ; and the first upsampled transposed convolution result Second downsampling convolution result The feature dimensions are concatenated to obtain the first upsampling concatenation result. The expression is: .
[0041] The second upsampling layer stitches the results of the first upsampling layer. Perform upsampling transpose convolution to obtain the second upsampling transpose convolution result; then combine the second upsampling transpose convolution result with the first downsampling convolution result. By concatenating the feature dimensions, a second upsampling concatenation result is obtained. ; The concatenation result of the terminal upsampling transposed convolutional layer and the second upsampling Perform an end-upsampled transposed convolution to obtain the end-upsampled transposed convolution result. ; The first smoothing convolutional layer upsamples and transposes the convolution result at the end. Perform smooth convolution to obtain the first smooth convolution result. ; The second smoothing convolution layer applies the result of the first smoothing convolution. Perform a smooth convolution to obtain the second smooth convolution result; the expression is: The second smooth convolution result That is, a dense carrier.
[0042] Therefore, the encoding process of step S5 above can be represented as: ,in, This refers to the encoding operations of the encoding network. The encoding network in this application extracts features of different scales from the input through upsampling transposed convolutional layers and downsampling convolutional layers, thereby enhancing the network's performance and capacity. Furthermore, the smoothing convolutional layer further improves the quality of the steganographic carrier based on the characteristics of digital human animation.
[0043] S6: Based on the decoding network, the secret carrier is extracted to obtain the extracted secret data.
[0044] like Figure 3 As shown, the decoding network includes a first main convolutional layer, a second main convolutional layer, a third main convolutional layer, a fourth main convolutional layer, a fifth main convolutional layer, and a sixth main convolutional layer connected in sequence.
[0045] In a specific embodiment, each main convolutional layer All operations include three layers: convolution, normalization, and activation. The convolution operation uses a size of [size missing]. The convolution kernel, size is The fill size and step size are convolution function Defined as Then use The function is normalized, and finally used. The function is activated, and its last layer is the Sigmoid function, with the specific expression as follows: ; in, For input, such as Figure 3 Dense carrier in First principal convolution result Second principal convolution result Third principal convolution result Fourth principal convolution result and the fifth principal convolution result ; The output corresponds one-to-one with the above inputs, such as the result of the first primary convolution. Second principal convolution result Third principal convolution result Fourth principal convolution result Fifth principal convolution result and the results of the sixth principal convolution The input and output data maintain the same shape and size, but the feature size may be changed.
[0046] Based on the above principles, the following is adopted: Figure 3 The decoding network decodes the encrypted carrier to obtain the extracted secret data, including the following steps: The first primary convolutional layer is used to process dense carriers. Perform the primary convolution to obtain the first primary convolution result. The expression is: .
[0047] The second primary convolutional layer is used to process the results of the first primary convolution. Perform the primary convolution to obtain the result of the second primary convolution. ; The third primary convolutional layer is used to process the results of the second primary convolution. Perform the primary convolution to obtain the third primary convolution result. ; The fourth main convolutional layer is used to process the results of the third main convolution. Perform the primary convolution to obtain the fourth primary convolution result. ; The fifth main convolutional layer is used to process the results of the fourth main convolution. Perform the primary convolution to obtain the fifth primary convolution result. ; The sixth primary convolutional layer is used to process the results of the fifth primary convolution. Perform the primary convolution to obtain the sixth primary convolution result; the expression is: The sixth principal convolution result This refers to secret data.
[0048] Therefore, the decoding process in step S6 above can be expressed as: ,in, This describes the decoding operation of the decoding network. The encoding network in this application extracts features of different scales from the input through upsampling transposed convolutional layers and downsampling convolutional layers, enhancing the network's performance and capacity. Furthermore, the smoothing convolutional layer further improves the quality of the steganographic carrier based on the characteristics of digital human animation.
[0049] S7: Calculate the coding loss based on the preprocessed carrier data and the dense carrier. The expression for the coding loss is: in, For encoding loss, It is the F2 norm of the matrix. For preprocessed carrier data, As a dense carrier, For the amount of data carried, The number of animation time frames. This represents the number of animation tracks.
[0050] When encoding loss When the value approaches zero, the generated dense vector is considered to be of high quality and similar to the original vector. This formula is used to guide the coding network in generating dense vectors and affects the parameter learning of the coding network.
[0051] S8: Calculate the decoding loss based on the preprocessed secret data and the extracted secret data. The expression for the decoding loss is: in, For decoding loss, For preprocessed secret data, For the extracted secret data, For secret data volume, The width of the preprocessed secret data (in pixels). The height of the preprocessed secret data (in pixels); When decoding loss When the value approaches zero, the secret data extracted from the secret carrier is considered to be of high quality and similar to the original secret. This formula is used to guide the decoding network in reconstructing the secret, and also affects the parameter learning of both the encoding and decoding networks.
[0052] S9: Construct a loss function based on encoding loss, decoding loss, and at least one attack loss.
[0053] In a specific embodiment, in order to improve the robustness of carrier steganography, this application simulates two differentiable attacks common in the animation field.
[0054] The first type of attack is an animation track shutdown attack, which randomly selects from a densely packed carrier. orbits (of which) exist Within the scope), put all of them in The numerical values in a dimension are set to zero to simulate an attacker shutting down a track. This attack is common in scenarios where a digital human model is being migrated but a specific track is not required. For example, if the digital human does not currently have an expression track, the attacker shuts down the expression track. This type of attack is defined as the first attack. Function representation.
[0055] The second type of attack is an animation track modification attack, which, like the first type, randomly selects from a encrypted carrier. There are 10 tracks, and a random number is generated on each track. and add it to In terms of dimensionality, this attack is commonly seen when attackers migrate animations and fix clipping issues caused by inconsistent digital human sizes. This type of attack is defined as a second attack. Function representation.
[0056] The expression for the loss from the first attack mentioned above is: ; in, As the first attack loss, To decode the network, For the first attack; The expression for the loss from the second attack mentioned above is: ; in, Losses due to the second attack. This is the second attack; Therefore, based on the encoding loss from step S7, the decoding loss from step S8, and the aforementioned attack loss, a loss function is constructed. The expression for this loss function is: ; in, Indicates the total loss. For encoding loss, For decoding loss, As the first attack loss, Losses due to the second attack. , Both are hyperparameters of two real number fields.
[0057] In the above formula, hyperparameters Hyperparameters affect the performance balance between encoding and decoding networks. It affects the ability to resist attacks. When When, then the encoding loss With a larger proportion of [something], the performance of the encoded network after training may be slightly better than that of the decoded network. When, then decoding loss With a larger proportion of [something], the performance of the decoder network after training may be slightly better than that of the encoder network. When [something]... At that time, the encoding loss and decoding loss have equal weight in the total loss. Due to hyperparameters... The gradient affects the model's secret extraction performance against both types of attacks, so it should not be too large. During training, the gradient should first consider the performance of the encoding and decoding networks, and then consider the performance when facing attacks. This will make the model more stable during training.
[0058] S10: Based on the loss function, train the encoder and decoder networks until the loss function tends to converge, then stop training and obtain the trained encoder and decoder networks.
[0059] In a specific embodiment, the parameters of the coding network are defined as follows: The parameters of the decoding network are In the training process based on gradient descent, this application uses the Adam (Adaptive Moment Estimation) algorithm, which performs the following operations in each round of parameter learning: Algorithm: Parameter Update enter: and Output: Updated parameters and (1) ; (2) ; (3) ; (4) ; (5) Calculate the total loss value; (6) Backpropagation to solve for the gradient; (7) Update parameters using the Adam optimizer , .
[0060] in, Secret data following the first attack. This is secret data following a second attack.
[0061] S11: Preprocess and stitch together the target color image data and the target digital human animation data to obtain the target stitched data.
[0062] S12: Encode the target splicing data based on the trained encoding network to obtain the target-containing carrier.
[0063] S13: Perform inverse preprocessing on the target dense carrier to obtain the recovered digital human animation data; this inverse preprocessing of the target dense carrier can be used... The function representation specifically includes the following steps: S1301: For targets containing dense carriers Perform inverse normalization to obtain the inverse normalized data. The calculation formula is as follows: ; in, For the data elements after inverse normalization, corresponding to the first... The first row of data Data in column positions, For the target dense carrier No. Line 1 Data elements at column positions, For step S301, a unified matrix is formed. The Middle The largest element in the group of data, For the unified matrix in step S301 No. The smallest element in the set of data. It is the minimum constant. The number of animation time frames. The number of animation tracks; Finally, the data elements after inverse normalization Together they form inverse normalized data , denoted as: .
[0064] S1302: Based on the data converter, the inverse normalized data is processed... The data is converted into recovered digital human animation data in a format recognizable by digital human animation software.
[0065] S14: Based on the trained decoding network, the recovered digital human animation data is secretly extracted to obtain the target secret data.
[0066] S15: Perform inverse preprocessing on the target secret data to obtain a reconstructed color image of the target. This inverse preprocessing of the target secret data can be used... The function representation specifically includes the following steps: S1501: Recover the red channel data, green channel data, and blue channel data from the target secret data; S1502: Concatenate the recovered red channel data, green channel data, and blue channel data to obtain the concatenated channel data, denoted as: ; in, For the recovered red channel data, For the recovered green channel data, For the recovered blue channel data, This indicates a feature dimension concatenation operation.
[0067] S1503: Upsample the stitched channel data to obtain the reconstructed target color image. The expression is: in, That is, the reconstructed target color image. This represents the upsampling function.
[0068] This application also provides an image steganography system for digital human animation data, including: The image acquisition module is used to acquire raw color image data and raw digital human animation data; The original color image preprocessing module is used to preprocess the original color image to obtain preprocessed secret data; The raw digital human animation data preprocessing module is used to preprocess the raw digital human animation data to obtain preprocessed carrier data; The splicing module is used to splice the preprocessed secret data and the preprocessed carrier data to obtain spliced data; The encoding module is used to encode the spliced data based on the encoding network to obtain a dense carrier; The decoding module is used to extract secrets from a encrypted carrier based on a decoding network, thereby obtaining the extracted secret data. The coding loss calculation module is used to calculate the coding loss based on the preprocessed carrier data and the dense carrier. The decoding loss calculation module is used to calculate the decoding loss based on the preprocessed secret data and the extracted secret data; The loss function building module is used to construct a loss function based on encoding loss, decoding loss, and at least one attack loss. The training module is used to train the encoder and decoder networks based on the loss function until the loss function tends to converge, at which point training stops and the trained encoder and decoder networks are obtained. The target stitching module is used to preprocess and stitch together the target color image data and the target digital human animation data to obtain the target stitched data; The target encoding module is used to encode the target splicing data based on the trained encoding network to obtain the target-containing carrier; The target-dense carrier inverse preprocessing module is used to perform inverse preprocessing on the target-dense carrier to obtain the recovered digital human animation data; The target secret data extraction module is used to extract secrets from the recovered digital human animation data based on the trained decoding network to obtain the target secret data; The reconstruction module is used to perform inverse preprocessing on the target secret data to obtain a reconstructed color image of the target.
[0069] This document uses specific examples to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the methods and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. In summary, the content of this specification should not be construed as a limitation of this application.
Claims
1. A method for image steganography in digital human animation data, characterized in that, The image steganography method in the digital human animation data includes: Acquire raw color image data and raw digital human animation data; The original color image is preprocessed to obtain preprocessed secret data; The original digital human animation data is preprocessed to obtain preprocessed carrier data; The preprocessed secret data and the preprocessed carrier data are spliced together to obtain spliced data; The spliced data is encoded using an encoding network to obtain a dense carrier. Based on the decoding network, the secret data is extracted from the encrypted carrier. Calculate the encoding loss based on the preprocessed carrier data and the dense carrier; Calculate the decoding loss based on the preprocessed secret data and the extracted secret data; A loss function is constructed based on encoding loss, decoding loss, and at least one attack loss. Based on the loss function, the encoding network and the decoding network are trained until the loss function tends to converge, then the training is stopped, and the trained encoding network and decoding network are obtained. The target color image data and target digital human animation data are preprocessed and stitched together to obtain the target stitched data; The target splicing data is encoded based on the trained encoding network to obtain the target-densified carrier; The target dense carrier is subjected to inverse preprocessing to obtain the recovered digital human animation data; Based on the trained decoding network, the recovered digital human animation data is secretly extracted to obtain the target secret data; The target secret data is subjected to inverse preprocessing to obtain a reconstructed target color image.
2. The image steganography method in digital human animation data according to claim 1, characterized in that, The original color image is preprocessed to obtain preprocessed secret data; specifically, the following steps are included: The original color image is subjected to feature separation to obtain red channel data, green channel data and blue channel data; Based on the red channel data, green channel data, and blue channel data, calculate the gray channel data; The red channel data, green channel data, blue channel data, and gray channel data are sequentially concatenated into a block matrix; The block matrix is downsampled to obtain preprocessed secret data.
3. The image steganography method in digital human animation data according to claim 1, characterized in that, The original digital human animation data is preprocessed to obtain preprocessed carrier data; specifically, this includes the following steps: The original digital human animation data is converted by a data converter to obtain a unified matrix; the row coordinates of the unified matrix represent the animation track, and the column coordinates represent the animation time frame. The unified matrix is normalized based on the minimum-maximum normalization algorithm to obtain normalized data; Determine whether the carrier capacity of the normalized data is sufficient to accommodate the preprocessed secret data; If so, the normalized data will be used as the preprocessed carrier data; If not, replace the original color image.
4. The image steganography method in digital human animation data according to claim 1, characterized in that, The encoding network includes a first downsampled convolutional layer, a second downsampled convolutional layer, a third downsampled convolutional layer, a first upsampled concatenation layer, a second upsampled concatenation layer, an end-upsampled transposed convolutional layer, a first smoothed convolutional layer, and a second smoothed convolutional layer connected in sequence. The first downsampling convolutional layer is used to perform downsampling convolution on the concatenated data to obtain the first downsampling convolution result; The second downsampling convolutional layer is used to perform downsampling convolution on the first downsampling convolution result to obtain the second downsampling convolution result; The third downsampling convolutional layer is used to perform downsampling convolution on the second downsampling convolution result to obtain the third downsampling convolution result; The first upsampling concatenation layer is used to perform upsampling transpose convolution on the third downsampling convolution result to obtain the first upsampling transpose convolution result; and the first upsampling transpose convolution result and the second downsampling convolution result are concatenated by feature dimension to obtain the first upsampling concatenation result; The second upsampling concatenation layer is used to perform upsampling transpose convolution on the first upsampling concatenation result to obtain the second upsampling transpose convolution result; and concatenate the second upsampling transpose convolution result and the first downsampling convolution result by feature dimension to obtain the second upsampling concatenation result; The terminal upsampling transposed convolutional layer is used to perform terminal upsampling transposed convolution on the second upsampling concatenation result to obtain the terminal upsampling transposed convolution result; The first smooth convolutional layer is used to perform smooth convolution on the end upsampled transposed convolution result to obtain the first smooth convolution result; The second smooth convolutional layer is used to perform smooth convolution on the first smooth convolution result to obtain the second smooth convolution result; the second smooth convolution result is the dense carrier.
5. The image steganography method in digital human animation data according to claim 1, characterized in that, The decoding network includes a first main convolutional layer, a second main convolutional layer, a third main convolutional layer, a fourth main convolutional layer, a fifth main convolutional layer, and a sixth main convolutional layer connected in sequence. The first primary convolutional layer is used to perform primary convolution on the dense carrier to obtain the first primary convolution result; The second primary convolutional layer is used to perform a primary convolution on the result of the first primary convolution to obtain the second primary convolution result; The third primary convolutional layer is used to perform a primary convolution on the result of the second primary convolution to obtain the third primary convolution result; The fourth primary convolutional layer is used to perform a primary convolution on the result of the third primary convolution to obtain the fourth primary convolution result; The fifth primary convolutional layer is used to perform a primary convolution on the result of the fourth primary convolution to obtain the fifth primary convolution result; The sixth primary convolutional layer is used to perform a primary convolution on the result of the fifth primary convolution to obtain the sixth primary convolution result; the sixth primary convolution result is the secret data.
6. The image steganography method in digital human animation data according to claim 1, characterized in that, The expression for the loss function is: ; in, Indicates the total loss. For encoding loss, For decoding loss, As the first attack loss, Losses due to the second attack. , Both are hyperparameters of two real number fields.
7. The image steganography method in digital human animation data according to claim 6, characterized in that, The expression for the encoding loss is: ; in, For encoding loss, It is the F2 norm of the matrix. For preprocessed carrier data, As a dense carrier, For the amount of data carried, The number of animation time frames. The number of animation tracks; The expression for the decoding loss is: ; in, For decoding loss, For preprocessed secret data, For the extracted secret data, For secret data volume, The width of the preprocessed secret data (in pixels). The height of the preprocessed secret data (in pixels); The expression for the loss of the first attack is: ; in, As the first attack loss, To decode the network, For the first attack; The expression for the second attack loss is: ; in, Losses due to the second attack. This is the second attack.
8. The image steganography method in digital human animation data according to claim 1, characterized in that, The target dense carrier is subjected to inverse preprocessing to obtain the recovered digital human animation data; specifically, the following steps are included: The target dense carrier is inversely normalized to obtain the inversely normalized data; The data converter transforms the inversely normalized data into recovered digital human animation data; the recovered digital human animation data is in a format recognizable by digital human animation software.
9. The image steganography method in digital human animation data according to claim 1, characterized in that, The target secret data is preprocessed in reverse to obtain a reconstructed target color image; Specifically, the following steps are included: Recover the red channel data, green channel data, and blue channel data from the target secret data; The recovered red channel data, green channel data, and blue channel data are concatenated to obtain concatenated channel data. The spliced channel data is upsampled to obtain the reconstructed target color image.
10. An image steganography system for digital human animation data, characterized in that, The image steganography system in the digital human animation data includes: The image acquisition module is used to acquire raw color image data and raw digital human animation data; The original color image preprocessing module is used to preprocess the original color image to obtain preprocessed secret data; The original digital human animation data preprocessing module is used to preprocess the original digital human animation data to obtain preprocessed carrier data; The splicing module is used to splice the preprocessed secret data and the preprocessed carrier data to obtain spliced data; An encoding module is used to encode the spliced data based on an encoding network to obtain a dense carrier; A decoding module is used to extract secrets from the encrypted carrier based on a decoding network to obtain the extracted secret data. The coding loss calculation module is used to calculate the coding loss based on the preprocessed carrier data and the dense carrier. The decoding loss calculation module is used to calculate the decoding loss based on the preprocessed secret data and the extracted secret data; The loss function building module is used to construct a loss function based on encoding loss, decoding loss, and at least one attack loss. The training module is used to train the encoding network and the decoding network based on the loss function until the loss function tends to converge, then the training stops, and the trained encoding network and decoding network are obtained. The target stitching module is used to preprocess and stitch together the target color image data and the target digital human animation data to obtain the target stitched data; The target encoding module is used to encode the target splicing data based on the trained encoding network to obtain the target-densified carrier; The target-dense carrier inverse preprocessing module is used to perform inverse preprocessing on the target-dense carrier to obtain the recovered digital human animation data; The target secret data extraction module is used to extract secrets from the recovered digital human animation data based on the trained decoding network to obtain target secret data. The reconstruction module is used to perform inverse preprocessing on the target secret data to obtain a reconstructed target color image.