A three-dimensional model identification method and system based on 3D watermark
By embedding and modulating the 3D watermark of copyright information in the three-dimensional model and reconstructing the watermark extraction coordinate system using the coordinate system correction factor, the problem of watermark feature distortion in the copyright protection of three-dimensional models is solved, and the accurate extraction and credible verification of copyright information are achieved.
Patent Information
- Application Number
- CN202510947482.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-10
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2045-07-10
AI Technical Summary
Existing technologies in copyright protection of three-dimensional models find it difficult to effectively deal with the complexity of model data structures, especially the distortion of watermark features caused by geometric deformation and topological adjustment during transmission and rendering, which increases the difficulty of watermark extraction and affects the reliability of copyright protection.
By embedding a 3D watermark containing the creator's digital signature and copyright registration number into the vertex data of the original model of a 3D digital asset, a hash operation is used to generate a binary watermark sequence, which is then combined with discrete cosine transform for frequency domain modulation to ensure the watermark's covert embedding and deformation resistance. Furthermore, by calculating geometric deformation parameters to generate coordinate system correction factors, the watermark extraction coordinate system is reconstructed to achieve accurate watermark extraction.
It achieves robust embedding, precise extraction and trusted verification of copyright information of three-dimensional digital assets, reduces the risk of watermark extraction failure due to model deformation, and improves the reliability and accuracy of copyright protection.
Smart Images

Figure CN120472122B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of digital watermarking, and in particular to a three-dimensional model identification method and system based on 3D watermarking. Background Art
[0002] As an important means of copyright protection, digital watermarking technology faces unique challenges in its applicability to three-dimensional models. Current mainstream frequency-domain watermarking algorithms are mostly designed based on image / video characteristics. When migrating to three-dimensional models, they must cope with the complexity of the model data structure. For example, during transmission and rendering, some three-dimensional models may undergo geometric deformation operations such as mesh simplification and smoothing, or be affected by topological adjustments such as re-meshing and vertex reordering. Affine transformations such as rotation and scaling cannot be ruled out. These factors may cause a certain degree of distortion in watermark features, thereby increasing the difficulty of watermark extraction and affecting its reliability in copyright protection.
[0003] Existing methods generally pay insufficient attention to the impact of the rendering pipeline on vertex position offsets caused by operations such as LOD optimization and normal map baking. Directly using the original coordinate system for watermark extraction can lead to mismatching of frequency domain coefficients due to model deformation, affecting the accuracy of watermark recovery and potentially compromising copyright verification. Summary of the Invention
[0004] The technical problem to be solved by the present invention is to provide a three-dimensional model authentication method and system based on 3D watermark, which realizes the robust embedding, accurate extraction and credible verification of three-dimensional digital asset copyright information.
[0005] In order to solve the above technical problems, the technical solutions of the present invention are as follows:
[0006] In a first aspect, a 3D model authentication method based on 3D watermarking is provided, the method comprising:
[0007] Step 1: Embed a 3D watermark containing copyright information into the vertex data of the original model of the 3D digital asset. The copyright information includes the creator's digital signature and copyright registration number.
[0008] Step 2: In response to the user's authentication request for the target three-dimensional digital asset, obtain current model data of the target three-dimensional digital asset;
[0009] Step 3: Determine three non-collinear preset spatial position points in the current model data to form a set of spatial position points; construct continuous spatial partitions based on the set of spatial position points, and calculate the geometric deformation parameters of each partition after the model is rendered and optimized;
[0010] Step 4: Generate a coordinate system correction factor based on the geometric deformation parameters, and use the correction factor to reconstruct the watermark extraction coordinate system to extract the 3D watermark information from the resampled vertex data;
[0011] Step 5: Compare the 3D watermark information with the copyright registration information recorded in the blockchain. If the digital signature and copyright registration number match, the target three-dimensional digital asset is determined to be a copyrighted asset.
[0012] Furthermore, a 3D watermark containing copyright information is embedded in the vertex data of the original model of the three-dimensional digital asset. The copyright information includes the creator's digital signature and copyright registration number, including:
[0013] Based on the creator's digital signature and copyright registration number, a binary watermark sequence is generated through hash operation;
[0014] Performing a discrete cosine transform on the vertex coordinate sequence of the original model of the three-dimensional digital asset to obtain a frequency domain coefficient matrix containing low-frequency, medium-frequency, and high-frequency coefficients;
[0015] Extracting a mid-band coefficient subset from the frequency domain coefficient matrix based on a preset frequency band indexing rule;
[0016] According to the value of the binary watermark sequence, an amplitude adjustment operation is performed on the mid-frequency band coefficient subset to generate a modulated frequency domain coefficient matrix;
[0017] Perform inverse discrete cosine transform on the modulated frequency domain coefficient matrix to reconstruct the vertex coordinate data containing the watermark;
[0018] The three-dimensional mesh model is reconstructed based on the vertex coordinate data containing the watermark to obtain the original model of the three-dimensional digital asset embedded with the watermark.
[0019] Furthermore, in response to a user's authentication request for a target three-dimensional digital asset, obtaining current model data of the target three-dimensional digital asset includes:
[0020] Parse the model file to be identified to obtain the initial vertex coordinate set and facet connection relationship;
[0021] Based on the topological structure of the original model embedded with the watermark, the topological consistency of the patch connection relationship is verified and the topologically valid patch connection relationship is output;
[0022] Affine transformation normalization processing is performed on the initial vertex coordinate set to obtain a standardized vertex coordinate set, and the topologically valid patch connection relationship is combined with the standardized vertex coordinate set to generate current model data of the target three-dimensional digital asset.
[0023] Furthermore, three non-collinear preset spatial position points are determined in the current model data to form a set of spatial position points; continuous spatial partitions are constructed based on the set of spatial position points, and geometric deformation parameters of each partition after the model is rendered and optimized are calculated, including:
[0024] Based on the standardized vertex coordinate set, the distribution entropy value of the surface normal vector of the current model is calculated, and three non-collinear vertices that meet the preset distance threshold are selected as spatial position points to generate a set of spatial position points;
[0025] Establish a spatial reference coordinate system with the first vertex as the coordinate origin, the vector from the first vertex to the second vertex as the X-axis, and the normal vector of the vector from the first vertex to the third vertex projected on the XY plane as the Z-axis;
[0026] In the spatial reference coordinate system, the current model surface is divided into hexahedral grid partitions of uniform size;
[0027] Apply the preset rendering optimization operation to each mesh partition and calculate the position offset vector of each partition vertex before and after rendering optimization;
[0028] The mean modulus of the offset vectors of each partition is counted as the deformation mean, and the variance of the modulus is counted as the deformation variance to generate the geometric deformation parameters.
[0029] Furthermore, based on the standardized vertex coordinate set, the distribution entropy value of the surface normal vector of the current model is calculated, and three non-collinear vertices that meet the preset distance threshold are selected as spatial position points to generate a set of spatial position points, including:
[0030] Based on the standardized vertex coordinate set, the normal vector of each vertex is calculated to generate a normal vector data set;
[0031] According to the normal vector dataset, the distribution of the number of normal vectors in the 20×10 grid cells of the spherical coordinate system is statistically analyzed;
[0032] Based on the quantity distribution, the entropy value of the normal vector distribution of each grid cell is calculated to generate an entropy value dataset;
[0033] Select the vertex with the largest entropy value from the entropy value data set as the first vertex; calculate the vertex with the largest Euclidean distance to the first vertex based on the standardized vertex coordinate set as the second vertex;
[0034] Construct a reference plane based on the first vertex and the second vertex, and select vertices that satisfy the conditions that the distance between the first vertex and the second vertex is greater than a preset distance threshold;
[0035] Calculate the vertical distance between each vertex in the candidate vertex set and the reference plane, and select the vertex with the largest vertical distance as the third vertex;
[0036] Verify that the Euclidean distances between the first vertex, the second vertex, and the third vertex are all greater than a preset distance threshold, and output a set of spatial position points consisting of the three vertices.
[0037] Furthermore, a coordinate system correction factor is generated according to the geometric deformation parameters, and the watermark extraction coordinate system is reconstructed using the correction factor to extract the 3D watermark information from the resampled vertex data, including:
[0038] Based on the deformation mean and deformation variance in the geometric deformation parameters, the deformation stability factor of each spatial grid partition is calculated;
[0039] Taking the deformation stability factor as input, a three-dimensional coordinate correction field is generated through radial basis function interpolation;
[0040] The three-dimensional coordinate system correction field is used as input to reconstruct the watermark extraction coordinate system, including correcting the direction of the basis vectors of the original coordinate system and establishing a deformation-invariant spatial parameterized representation;
[0041] Based on the reconstructed watermark extraction coordinate system, an adaptive resampling operation is performed on the standardized vertex coordinate set to generate a resampled vertex data set;
[0042] According to the resampled vertex data set, a partitioned discrete cosine transform operation is performed to obtain a frequency domain coefficient matrix, and the mid-frequency band coefficient with the same index as that when the watermark is embedded is extracted from the frequency domain coefficient matrix;
[0043] The mid-frequency band coefficients are amplitude normalized and the normalized amplitude is input into the preset amplitude-bit mapping rule. If the amplitude is greater than or equal to 0.7 times, the maximum amplitude is recorded as 1; if the amplitude is less than or equal to 0.3 times, the maximum amplitude is recorded as 0. Finally, the binary watermark sequence is generated by decoding;
[0044] The binary watermark sequences of all spatial grid partitions are combined to generate 3D watermark information.
[0045] Furthermore, the 3D watermark information is compared with the copyright registration information recorded in the blockchain. If the digital signature and copyright registration number match, the target three-dimensional digital asset is determined to be a copyrighted asset, including:
[0046] Separate the creator's digital signature field and the copyright registration number field from the 3D watermark information;
[0047] Accessing a preset blockchain copyright registration node, submitting the copyright registration number field for query, and obtaining the registered copyright information associated with the copyright registration number field, wherein the registered copyright information includes the registered creator's digital signature;
[0048] Perform string matching and comparison on the creator's digital signature field and the creator's digital signature in the registered copyright information. When the creator's digital signature field is consistent with the creator's digital signature in the registered copyright information, and the copyright registration number field is consistent with the copyright registration number field used in the query, the copyright of the target three-dimensional digital asset is determined to be valid.
[0049] In a second aspect, a 3D model authentication system based on 3D watermarking includes:
[0050] A watermark embedding module, configured to embed a 3D watermark containing copyright information into the vertex data of the original model of the 3D digital asset, wherein the copyright information includes the creator's digital signature and copyright registration number;
[0051] A data acquisition module, configured to respond to a user's request for identification of a target three-dimensional digital asset and acquire current model data of the target three-dimensional digital asset;
[0052] The deformation calculation module is used to determine three non-collinear preset spatial position points in the current model data to form a spatial position point set, construct spatial partitions, and calculate the geometric deformation parameters of each partition after the current model is rendered and optimized;
[0053] The watermark extraction module is used to generate a coordinate system correction factor based on the geometric deformation parameters, reconstruct the watermark extraction coordinate system using the correction factor, and extract the 3D watermark information from the resampled vertex data;
[0054] The copyright determination module is used to compare the 3D watermark information with the copyright registration information recorded in the blockchain. If the digital signature and copyright registration number match, the target three-dimensional digital asset is determined to be a copyright-valid asset, thus achieving the final determination of the validity of the digital asset copyright.
[0055] According to a third aspect, a computing device includes:
[0056] one or more processors;
[0057] The storage device is used to store one or more programs, and when the one or more programs are executed by the one or more processors, the one or more processors implement the method.
[0058] In a fourth aspect, a computer-readable storage medium stores a program, which implements the method when executed by a processor.
[0059] The above solution of the present invention includes at least the following beneficial effects:
[0060] Copyright information is embedded in the frequency domain to avoid direct modification of the model geometry and ensure model usability. Mid-band modulation enhances deformation resistance, allowing the watermark to be stably extracted even after mesh simplification and scaling. The model's topological consistency is verified and coordinates are normalized to eliminate tampered or damaged data. The coordinate system and scale are unified to provide a standardized data foundation for identification and avoid errors caused by format differences. Feature points are selected based on the entropy value of the normal vector to construct a coordinate system. The deformation parameters (mean and variance) of each partition are quantified, and a correction field is generated through radial basis function interpolation. Verification is then performed to adaptively compensate for vertex offsets caused by rendering optimization, resolving the problem of watermark extraction failure caused by coordinate system mismatch in traditional methods.
[0061] Reconstructing the coordinate system combined with adaptive resampling allows for dense sampling in areas of intense deformation to preserve detail. Partitioned discrete cosine transforms and fixed-band indexing ensure that the extracted watermark features precisely correspond to those used during embedding. Amplitude normalization filters noise and improves decoding accuracy. Integrating blockchain evidence storage, leveraging its decentralized and tamper-proof nature, enables trusted evidence storage and public verification of copyright information. BRIEF DESCRIPTION OF THE DRAWINGS
[0062] Figure 1 It is a flow chart of a 3D model identification method based on 3D watermark provided by an embodiment of the present invention.
[0063] Figure 2 This is a schematic diagram of a three-dimensional model identification system based on 3D watermarking provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0064] Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although exemplary embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. Rather, these embodiments are provided to enable a more thorough understanding of the present disclosure and to fully convey the scope of the present disclosure to those skilled in the art.
[0065] like Figure 1 As shown, an embodiment of the present invention provides a 3D model authentication method based on 3D watermark, the method comprising the following steps:
[0066] Step 1: Embed a 3D watermark containing copyright information into the vertex data of the original model of the 3D digital asset. The copyright information includes the creator's digital signature and copyright registration number.
[0067] Step 2: In response to the user's authentication request for the target three-dimensional digital asset, obtain current model data of the target three-dimensional digital asset;
[0068] Step 3: Determine three non-collinear preset spatial position points in the current model data to form a set of spatial position points; construct continuous spatial partitions based on the set of spatial position points, and calculate the geometric deformation parameters of each partition after the model is rendered and optimized;
[0069] Step 4: Generate a coordinate system correction factor based on the geometric deformation parameters, and use the correction factor to reconstruct the watermark extraction coordinate system to extract the 3D watermark information from the resampled vertex data;
[0070] Step 5: Compare the 3D watermark information with the copyright registration information recorded in the blockchain. If the digital signature and copyright registration number match, the target three-dimensional digital asset is determined to be a copyrighted asset.
[0071] In an embodiment of the present invention, a 3D watermark containing the creator's digital signature and copyright registration number is embedded in the vertex data of the original model of a three-dimensional digital asset. A hash operation is used to generate a binary watermark sequence, which is then combined with a discrete cosine transform for frequency domain modulation. This method not only achieves the concealed embedding of copyright information but also avoids damage to the geometric structure and topological relationships of the 3D model. Three non-collinear preset spatial locations are determined within the current model data to construct spatial partitions and calculate geometric deformation parameters. Feature points are selected based on the entropy of the normal vector distribution, accurately capturing key features of the model surface. A spatial reference coordinate system is established to divide the mesh into partitions, and the geometric deformation (mean and variance) of each partition after rendering optimization is quantified, accurately describing the deformation of the model during processing.
[0072] Generating coordinate system correction factors based on geometric deformation parameters and reconstructing the watermark extraction coordinate system can effectively compensate for the impact of geometric deformation of the model caused by operations such as rendering optimization on watermark extraction, solving the frequency domain coefficient mismatch problem caused by inconsistent coordinate systems in traditional methods. Adaptive resampling and partitioned discrete cosine transform operations, combined with preset amplitude-bit mapping rules to decode the watermark, achieve accurate extraction of watermark information under complex deformation conditions, improving the success rate and integrity of watermark extraction. The extracted 3D watermark information is compared with the copyright registration information recorded on the blockchain, leveraging the decentralized and tamper-proof characteristics of blockchain technology to ensure the authenticity and authority of the copyright registration information. By strictly comparing digital signatures and copyright registration numbers, reliable verification of the copyright of three-dimensional digital assets is achieved.
[0073] In a preferred embodiment of the present invention, in step 1, a 3D watermark containing copyright information is embedded in the vertex data of the original model of the 3D digital asset. The copyright information includes the creator's digital signature and copyright registration number, and may include:
[0074] Step 100, generating a binary watermark sequence through hash operation based on the creator's digital signature and copyright registration number;
[0075] Step 101: Perform discrete cosine transform on the vertex coordinate sequence of the original model of the three-dimensional digital asset to obtain a frequency domain coefficient matrix containing low-frequency, medium-frequency, and high-frequency coefficients;
[0076] Step 102: extracting a mid-band coefficient subset from the frequency domain coefficient matrix based on a preset frequency band index rule;
[0077] Step 103: performing an amplitude adjustment operation on the mid-frequency band coefficient subset according to the value of the binary watermark sequence to generate a modulated frequency domain coefficient matrix;
[0078] Step 104, performing inverse discrete cosine transform on the modulated frequency domain coefficient matrix to reconstruct vertex coordinate data containing the watermark;
[0079] Step 105 : reconstructing a three-dimensional mesh model based on the vertex coordinate data containing the watermark to obtain an original model of the three-dimensional digital asset embedded with the watermark.
[0080] In an embodiment of the present invention, the creator's digital signature (such as the string "Creator_001") and the copyright registration number (such as "CN20250601001") are concatenated into a complete string (such as "Creator_001CN20250601001"), and the concatenated string is operated through a hash algorithm such as SHA-256 to generate a binary sequence (such as a bit stream composed of 0s and 1s) of a fixed length (such as 256 bits), and output a binary watermark sequence (for example, "1010010101...") that uniquely maps the original copyright information.
[0081] Step 101: Based on the original model vertex coordinate sequence (e.g., the three-dimensional coordinate point set (x1, y1, z1), (x2, y2, z2), ..., (xn, yn, zn)), the x, y, and z coordinates of each vertex are expanded into a one-dimensional sequence (e.g., the X-coordinate sequence [x1, x2, ..., xn]). A DCT transform is independently performed on each one-dimensional coordinate sequence, converting the spatial domain signal into a frequency domain coefficient matrix. Low-frequency coefficients are concentrated in the upper left corner of the matrix, representing the overall shape of the model; mid-frequency coefficients are distributed in the middle of the matrix, representing the model's detailed features; and high-frequency coefficients are concentrated in the lower right corner, representing model noise or subtle details. The frequency domain coefficient matrix corresponding to the three-dimensional coordinates (e.g., DCTX, DCTY, DCTZ) is output. Each matrix contains low-, mid-, and high-frequency coefficients.
[0082] Step 102: Based on the frequency domain coefficient matrix (using DCTX for the X coordinate as an example), and the preset frequency band indexing rule (e.g., defining the mid-band as the coefficients in the 20% to 80% frequency range in the matrix), locate the mid-band coefficients in the matrix (e.g., row index i∈[m / 5, 4m / 5], column index j∈[n / 5, 4n / 5], where m and n are the matrix dimensions) according to the frequency band indexing rule (e.g., sorting by frequency from low to high and selecting the middle 60% of the coefficients). Extract the mid-band coefficients at the corresponding positions from the frequency domain coefficient matrix to form a submatrix (e.g., DCTX_mid), and output the subset of mid-band coefficients for each coordinate component (e.g., DCTX_mid, DCTY_mid, DCTZ_mid).
[0083] Step 103: Take the binary watermark sequence (length L) and the IF band coefficient subset (using DCTX_mid as an example, assuming it contains L coefficients). Iterate over each bit of the binary watermark sequence (e.g., bit k bk, where bk∈{0,1}). Perform amplitude adjustment on each corresponding IF coefficient ck: If bk=1, increase the amplitude of ck by a fixed ratio (e.g., ck×1.2); if bk=0, decrease the amplitude of ck by a fixed ratio (e.g., ck×0.8). Generate a modulated IF band coefficient submatrix (e.g., DCTX_mid_mod), and output the modulated frequency domain coefficient submatrix carrying the watermark information (each coordinate component is processed separately).
[0084] Step 104: Modulate the frequency domain coefficient matrix (replace the modulated mid-frequency band coefficient sub-matrix with the corresponding position of the original matrix, such as filling DCTX_mid_mod into the mid-frequency band area of DCTX). Perform an IDCT transform on the frequency domain coefficient matrix of each coordinate component, convert the frequency domain signal back to the spatial domain, and obtain a watermarked vertex coordinate sequence (such as [x1′, x2′, …, xn′]). Output the vertex coordinate data embedded with the watermark (a three-dimensional coordinate point set (x1′, y1′, z1′), (x2′, y2′, z2′), …, (xn′, yn′, zn′)).
[0085] Step 105: Re-associate the watermarked vertex coordinate data with the original model's topological structure (e.g., facet connectivity, vertex index list) based on the watermarked vertex coordinate data to generate a new three-dimensional mesh model (with the vertex positions embedded with the watermark, but the topological connectivity remains unchanged). Output the original three-dimensional digital asset model embedded with the watermark.
[0086] Copyright information is embedded into the model's mid-frequency coefficients through frequency domain modulation technology, avoiding direct modification of vertex coordinates or topological structures, ensuring that the model's geometry is consistent with the original version and not affecting normal use. The mid-frequency band coefficients are highly resistant to conventional geometric deformations (such as mesh simplification and smoothing), and the watermark information can still be stably retained after the model undergoes operations such as rendering optimization, reducing the risk of extraction failure. A hash operation generates a binary watermark sequence, achieving a one-way mapping of copyright information. If the model is illegally tampered with, the watermark will not match the original hash value during extraction, effectively detecting content tampering. The frequency domain processing framework based on discrete cosine transform is compatible with different types of 3D models (such as .obj and .stl formats), improving the versatility and scalability of the method. The model is reconstructed through inverse transformation to ensure that the watermark embedding process is a lossless operation. The original model data can be reversely restored through the same process (the original watermark sequence must be retained), meeting the evidence backtracking requirements in copyright disputes.
[0087] In a preferred embodiment of the present invention, the above step 2, in response to the user's authentication request for the target three-dimensional digital asset, obtaining the current model data of the target three-dimensional digital asset, may include:
[0088] Step 200: Parse the model file to be identified to obtain the initial vertex coordinate set and facet connection relationship;
[0089] Step 201: Based on the topological structure of the original model embedded with the watermark, verify the topological consistency of the patch connection relationship and output a topologically valid patch connection relationship;
[0090] Step 202 : Perform affine transformation normalization processing on the initial vertex coordinate set to obtain a standardized vertex coordinate set, and combine the topologically valid patch connection relationship with the standardized vertex coordinate set to generate current model data of the target three-dimensional digital asset.
[0091] In an embodiment of the present invention, a three-dimensional digital asset model file to be authenticated, such as an .obj or .fbx format file, is received from a user. The file header is read to identify key identifiers that record vertex coordinates and facet connection relationships. In the vertex coordinate acquisition step, the three-dimensional coordinate values recorded in the file are extracted one by one in sequence. Each set of x, y, and z coordinates corresponds to a vertex in the model, and an initial vertex coordinate set is eventually formed. For example, the coordinate values (1, 2, 3), (4, 5, 6), etc. recorded in sequence in the file will be organized into a coordinate list containing all vertices. For facet connection relationships, the part of the file that describes the facets is parsed to extract the vertex index information corresponding to each facet. For example, a triangular facet may be composed of vertex indices 0, 1, and 2. The system records these indices in sequence to form a complete facet connection relationship list, which is used to describe the topological structure of the model.
[0092] Step 201, call the topological structure data of the original model that has been embedded with the watermark as a reference standard. Compare the facet connection relationship of the model to be identified with the original model item by item. First, check whether the number of facets is the same. If the number is inconsistent, it means that the model may have undergone illegal modification or data corruption. Then, carefully check the vertex index of each facet to ensure that the index order is consistent with the original model (reasonable circular arrangement is allowed, such as the original is [0, 1, 2], and the model to be identified is [1, 2, 0], which is also considered valid). At the same time, check whether there is a situation where the vertex index exceeds the total number of vertices. If so, the facet is determined to be invalid. After the above inspection, all faces that do not match the original topological structure are eliminated, and only the facet connection relationship with the correct topological structure is retained to obtain a topologically valid data result.
[0093] In step 202, affine transformation normalization processing is performed on the obtained initial vertex coordinate set. The first step is a translation operation, which calculates the mean of all vertex coordinates to obtain the center of mass position of the model. Then the x, y, and z coordinates of each vertex are respectively subtracted from the coordinate values corresponding to the center of mass, thereby moving the center of mass of the model to the coordinate origin. The second step is a scaling operation, which calculates the distance from all vertices to the origin and finds the maximum distance value. The x, y, and z coordinates of each vertex are divided by this maximum distance value so that the entire model is scaled to the unit sphere, and all vertex coordinates are normalized to the [-1, 1] interval. After completing the vertex coordinate normalization, the topologically valid facet connection relationship is integrated with the standardized vertex coordinate set to form a complete and standardized set of current model data for the target three-dimensional digital asset.
[0094] Directly parsing model files to obtain underlying data bypasses potential data errors introduced by third-party rendering engines, ensuring that the data used for identification truly reflects the model's original state. Topological consistency verification quickly identifies illegal model modifications, data loss, or format corruption, preventing erroneous identification results. Removing invalid topological data and normalizing coordinates reduces interference during model transfer and modification, lowering the risk of identification errors due to data confusion and enhancing the reliability of identification results.
[0095] In a preferred embodiment of the present invention, step 3, determining three non-collinear preset spatial position points in the current model data to form a set of spatial position points; constructing continuous spatial partitions based on the set of spatial position points, and calculating geometric deformation parameters of each partition after the model is subjected to the rendering optimization operation, may include:
[0096] Step 300 calculates the distribution entropy of the surface normal vector of the current model based on the normalized vertex coordinate set, and selects three non-collinear vertices that meet a preset distance threshold as spatial position points to generate a set of spatial position points, specifically including:
[0097] Step 3010, calculating the normal vector of each vertex based on the normalized vertex coordinate set to generate a normal vector data set;
[0098] Step 3011: Count the number and proportion of normal vectors in a 20×10 grid cell in the spherical coordinate system based on the normal vector dataset;
[0099] Step 3012: Calculate the entropy value of the normal vector distribution of each grid cell based on the number percentage distribution to generate an entropy value data set;
[0100] Step 3013: Select the vertex with the largest entropy value from the entropy value data set as the first vertex; calculate the vertex with the largest Euclidean distance to the first vertex based on the normalized vertex coordinate set as the second vertex;
[0101] Step 3014: construct a reference plane based on the first vertex and the second vertex, and select vertices that meet the conditions that the distance between the first vertex is greater than a preset distance threshold and the distance between the second vertex is greater than a preset distance threshold;
[0102] Step 3015, calculating the vertical distance between each vertex in the candidate vertex set and the reference plane, and selecting the vertex with the largest vertical distance as the third vertex;
[0103] Step 3016: Verify that the Euclidean distances between the first vertex, the second vertex, and the third vertex are all greater than a preset distance threshold, and output a set of spatial position points consisting of the three vertices.
[0104] Step 301: Establish a spatial reference coordinate system with the first vertex as the coordinate origin, the vector from the first vertex to the second vertex as the X-axis, and the normal vector of the projection of the vector from the first vertex to the third vertex on the XY plane as the Z-axis.
[0105] Step 302 , dividing the current model surface into hexahedral grid partitions of uniform size in a spatial reference coordinate system;
[0106] Step 303: Apply a preset rendering optimization operation to each mesh partition and calculate the position offset vector of each partition vertex before and after the rendering optimization.
[0107] In step 304 , the mean modulus of the offset vectors of each partition is counted as the deformation mean, and the variance of the modulus is counted as the deformation variance to generate geometric deformation parameters.
[0108] In an embodiment of the present invention, starting with a set of vertex coordinates that have been standardized, a normal vector is calculated for each vertex. Taking a triangular mesh model as an example, for a vertex, the triangular facets directly connected to it are first found. Assuming that the vertex is associated with three triangular facets, the vectors of the two adjacent sides of each triangle are taken (for example, for a certain triangle, the vectors corresponding to sides AB and AC are taken), and the normal vector of each triangular facet is calculated by vector cross multiplication (the direction of the cross multiplication result follows the right-hand rule). Since a vertex may be shared by multiple triangles, the normal vectors of these adjacent triangular facets are weighted averaged—the weight ranges from 0.1 to 1.0, specifically determined by the area of the triangle (the larger the area, the higher the weight, for example, the triangle with the largest area has a weight of 1.0, the triangle with the second smallest area has a weight of 0.6, and the triangle with the smallest area has a weight of 0.3). Finally, a unique normal vector for the vertex is obtained. This process is repeated to generate normal vectors for all vertices in the standardized vertex coordinate set, forming a normal vector data set.
[0109] Step 3011, divide the spherical coordinate system into 20 rows and 10 columns of grid cells, and construct a three-dimensional space grid similar to the division of the earth's longitude and latitude lines. Then, traverse the normal vector data set to determine which grid cell the direction of each normal vector finally falls into. For example, if the angle range of the direction of a normal vector in the spherical coordinate system corresponds to the grid cell of the 3rd row and the 5th column, the normal vector is counted in this cell. After the statistics are completed, calculate the proportion of the number of normal vectors in each grid cell to the total number of normal vectors. Assuming there are a total of 1000 normal vectors and there are 50 in a certain grid cell, the number of this cell accounts for 5%, and so on, to form a complete number proportion distribution data.
[0110] Step 3012, based on the distribution of the number of normal vectors of each grid cell obtained in the previous step, calculate the entropy value of the normal vector distribution of each grid cell. The entropy value is used to measure the degree of disorder or uncertainty of the normal vector distribution within the cell: the more uniform the normal vector distribution within the cell, the higher the entropy value; conversely, if the normal vectors are concentrated in a few directions, the entropy value is lower. For each grid cell, the corresponding entropy value will be obtained based on its number percentage data through a calculation logic similar to information entropy (for example, if the number of normal vectors in a cell is , then the entropy value is calculated as − ), and finally generate a dataset containing the entropy values of all grid cells.
[0111] Step 3013, find the grid unit with the largest entropy value (for example, the unit with an entropy value of 2.8) from the entropy data set. The normal vector distribution in this unit is the most complex, corresponding to the area with rich changes in the geometric features of the model surface. Select a vertex in this unit as the first vertex. After determining the first vertex, calculate the straight-line distance (i.e., Euclidean distance) between all other vertices and the first vertex in the standardized vertex coordinate set. For example, for vertex P and the first vertex O, find the vertex farthest from the first vertex by calculating the square root of the sum of the squares of the difference in the coordinates of the two points, and determine it as the second vertex to ensure that the two points are sufficiently dispersed in space (for example, if the coordinates of the first vertex are (0, 0, 0) and the coordinates of the farthest vertex are (8, 6, 0), then the Euclidean distance is 10 units).
[0112] Step 3014, construct a reference plane based on the coordinates of the first vertex and the second vertex. Specifically, starting from the first vertex, connect the second vertex to form a vector V1, and then select another non-collinear direction (such as using the calculated normal vector information) to form a vector V2, and use these two vectors to form a plane. Next, traverse all the vertices in the standardized vertex coordinate set to determine whether the distance from each vertex to the first vertex and the second vertex is greater than a preset distance threshold (the value range is 0.1 to 0.3 times the size of the model after normalization, for example, the diagonal length of the bounding box after model normalization is 20, and the threshold can be set to 5). Only vertices that meet both distance conditions will be included in the candidate vertex set, and vertices that are too close, may cause three points to be collinear, or cannot effectively represent the spatial features of the model will be excluded.
[0113] Step 3015: For each vertex in the candidate vertex set, calculate its perpendicular distance to the reference plane. Specifically, draw a perpendicular line from the vertex to the reference plane and measure the distance between the vertex and the foot of the perpendicular (for example, if the vertex coordinates are (3, 4, 5) and the reference plane equation is Ax+By+Cz+D=0, then the perpendicular distance is , where the value range is 0.2 to 0.5 times the normalized model size). By comparing the vertical distances of all candidate vertices, the vertex with the largest distance is selected as the third vertex (for example, the vertex with a maximum vertical distance of 8 units). This vertex is spatially distinct from the first two vertices, ensuring that the three points are not collinear and fully reflect the spatial distribution characteristics of the model.
[0114] Step 3016 calculates the linear distance (Euclidean distance) between each of the first, second, and third vertices and compares it to a preset distance threshold (same as step 3014, ranging from 0.1 to 0.3 times the normalized model size). Only when the distance between any two of these three vertices exceeds the preset threshold are the three points considered qualified, and the set of spatial locations formed by these three vertices is output. If any distance does not meet the requirement, the process returns to filter the vertices again.
[0115] In step 301, the first vertex is determined as the coordinate origin, and the direction from the first vertex to the second vertex is set as the positive direction of the X-axis. To determine the direction of the Z-axis, first calculate the vector from the first vertex to the third vertex. This vector is then projected onto the plane containing the X-axis (i.e., the XY plane) to obtain the projection vector. The normal vector of this projection vector is then calculated (using the principle of vector cross multiplication to find the direction perpendicular to the projection vector and in accordance with the right-hand rule in space) to determine the positive direction of the Z-axis. Finally, according to the right-hand rule (the thumb of the right hand points to the X-axis, the index finger points to the Z-axis, and the middle finger points to the Y-axis), the positive direction of the Y-axis is determined, thereby constructing a spatial reference coordinate system suitable for the current model.
[0116] In step 302, the current model surface is partitioned within the established spatial reference coordinate system according to pre-defined dimensions (e.g., each hexahedron has a side length of 0.05 to 0.1 times the diagonal length of the model's normalized bounding box; for example, if the diagonal length is 20, the side length is set to 1 or 2 units). Starting from one end of the model, the model surface is divided into uniformly sized hexahedral mesh partitions along the X, Y, and Z axes. During the partitioning process, the model's actual geometry is adapted to ensure that each hexahedral mesh fits snugly to the model surface and that the entire model surface is fully covered by these mesh partitions.
[0117] In step 303, preset rendering optimization operations are applied to each partitioned mesh, such as mesh simplification (reducing the number of triangular facets in the mesh while retaining key geometric features, typically by 30% to 70% of the original number of facets) and smoothing (adjusting vertex positions to make the model surface smoother, with 1 to 5 smoothing iterations). Before the operation, the original coordinates of each vertex in the partition are recorded; after the operation is complete, the new coordinates of the vertex are recorded again. By subtracting the original coordinates from the new vertex coordinates, each vertex's position offset vector is obtained. This vector intuitively reflects the displacement change of the vertex during the rendering optimization process (for example, the offset vector modulus is typically between 0 and 0.5 units in length, depending on the degree of deformation).
[0118] In step 304, for each mesh partition, the position offset vectors of all vertices within the partition are collected and their moduli are calculated. The average of all moduli is calculated as the deformation mean for that partition (ranging from 0 to 0.3 units). Simultaneously, the variance of the moduli is calculated to measure the dispersion of vertex deformation within the partition (ranging from 0 to 0.1). These two parameters—the deformation mean and the deformation variance—are used to generate geometric deformation parameters that describe the geometric deformation of each mesh partition.
[0119] Spatial points are selected based on the entropy of the normal vector distribution, prioritizing vertices in areas with complex geometric features on the model's surface to ensure that the selected points effectively represent the model's spatial characteristics. A spatial reference coordinate system is constructed based on three non-collinear and well-spaced points, ensuring that the coordinate system conforms to the model's geometry and reduces interference caused by changes in the model's pose. Meshing the model surface and calculating the mean and variance of the deformation allows for detailed quantification of the model's geometric changes during rendering optimization, distinguishing the degree of deformation in different regions and providing accurate data support for coordinate system calibration during watermark extraction. Preset distance thresholds and multiple filtering mechanisms prevent the selection of collinear or closely spaced vertices, enhancing the method's resilience to local model deformation and ensuring accurate watermark extraction even after complex model processing. Uniform meshing and standardized deformation calculation methods make geometric deformation comparable across models, or within the same model under different states, facilitating the establishment of universal copyright authentication standards and improving the applicability of the authentication method.
[0120] In a preferred embodiment of the present invention, step 4, generating a coordinate system correction factor based on the geometric deformation parameter, reconstructing the watermark extraction coordinate system using the correction factor, and extracting the 3D watermark information from the resampled vertex data, may include:
[0121] Step 400: Calculate the deformation stability factor of each spatial grid partition based on the deformation mean and deformation variance in the geometric deformation parameters;
[0122] Step 401: Using the deformation stability factor as input, a three-dimensional coordinate system correction field is generated by radial basis function interpolation.
[0123] Step 402: Using the three-dimensional coordinate system correction field as input, reconstructing the watermark extraction coordinate system, including correcting the direction of the basis vectors of the original coordinate system and establishing a deformation-invariant spatial parameterized representation;
[0124] Step 403: Based on the reconstructed watermark extraction coordinate system, an adaptive resampling operation is performed on the normalized vertex coordinate set to generate a resampled vertex data set;
[0125] Step 404: Perform a partitioned discrete cosine transform operation based on the resampled vertex data set to obtain a frequency domain coefficient matrix, and extract the mid-frequency band coefficient with the same index as that during watermark embedding from the frequency domain coefficient matrix;
[0126] Step 405: Normalize the amplitude of the mid-frequency band coefficients and input the normalized amplitude into the preset amplitude-bit mapping rule. If the amplitude is greater than or equal to 0.7 times, the maximum amplitude is recorded as 1; if the amplitude is less than or equal to 0.3 times, the maximum amplitude is recorded as 0. Finally, decode to generate a binary watermark sequence.
[0127] Step 406: Combine the binary watermark sequences of all spatial grid partitions to generate 3D watermark information.
[0128] In this embodiment of the present invention, for each spatial grid partition, the deformation mean (reflecting the average deformation degree) and deformation variance (reflecting the degree of deformation dispersion) of its geometric deformation parameters are obtained. The deformation stability factor is calculated using the following logic:
[0129] Set the deformation mean weight to w1 and the deformation variance weight to w2, and w1+w2=1, take w1=0.4, w2=0.6 (to highlight the impact of variance on stability); stability factor = w1×(1-deformation mean)+w2×(1-deformation variance). The larger the stability factor, the smaller the partition deformation and the higher the stability.
[0130] Step 401: Take the deformation stability factors of all spatial grid partitions as input nodes and use the radial basis function (RBF) interpolation method to generate a continuous three-dimensional coordinate system correction field:
[0131] Use Gaussian function ,in is a shape parameter, with a value range of 0.1~0.5 (adjusted according to the model size, with a larger value for a small-size model). This is the Euclidean distance between the current calculation point and the interpolation base point (e.g., the center of a grid partition). The center of each partition is used as an interpolation node, and the node value is the stability factor for that partition. The influence of each node on any point in space is calculated using a Gaussian function, and the resulting superposition generates the correction field data for the entire 3D space (each point corresponds to a 3D correction vector).
[0132] Step 402: Based on the three-dimensional coordinate system correction field, the original spatial reference coordinate system is adjusted as follows:
[0133] Using the correction vectors at each point in the correction field, local rotations and translations are applied to the X, Y, and Z axes of the original coordinate system. For example, if the correction vector for a region is (0.1, -0.05, 0), the X-axis of that region will be adjusted positively by 0.1 units, and the Y-axis will be adjusted negatively by 0.05 units. The model surface is mapped from a Cartesian coordinate system to a spherical coordinate system or parametric UV space. The correction field is used to establish a coordinate mapping relationship before and after the deformation, ensuring that the parametric representation of the same geometric feature remains consistent before and after the deformation (for example, the angular coordinates of the vertex in the spherical coordinate system remain unchanged).
[0134] Step 403: Perform density adaptive resampling on the normalized vertex coordinate set in the reconstructed watermark extraction coordinate system:
[0135] In areas with low deformation stability factors (e.g., stability factors less than 0.5), increase the sampling point density (e.g., the original sampling interval is 1 unit, adjusted to 0.5 units) to preserve details;
[0136] In areas with high stability factors (e.g., stability factors greater than 0.8), the sampling point density is reduced (the sampling interval is adjusted to 1.5 units) to reduce the amount of calculation.
[0137] New vertex coordinates are generated through interpolation algorithms (such as cubic spline interpolation) to ensure that the resampled vertex dataset can reflect the model deformation while maintaining the feature integrity of the watermark embedding area.
[0138] Step 404: partition and block the resampled vertex dataset (consistent with the grid partitioning during watermark embedding). Perform the following operations on each partition:
[0139] Expand the x, y, and z coordinates of the vertices in the partition into one-dimensional sequences (such as the X coordinate sequence ). Perform a discrete cosine transform on each one-dimensional coordinate sequence to obtain a frequency domain coefficient matrix (containing low, medium, and high frequency coefficients). According to the frequency band index rule recorded during watermark embedding (such as selecting the frequency range of 20% to 80% in the coefficient matrix), extract the subset of mid-band coefficients at the same position as during embedding (for example, extract the coefficients of rows 3 to 12 during embedding, and use the same row index when extracting).
[0140] Step 405: Scale the amplitude range of the extracted mid-frequency band coefficients to the interval [0, 1]. For example, if the amplitude range of a coefficient is [-5, 3], the normalized value is (x+5)÷8; if the normalized amplitude is ≥0.7, it is mapped to binary "1"; if the normalized amplitude is ≤0.3, it is mapped to binary "0";
[0141] Amplitudes between 0.3 and 0.7 (considered as noise or invalid data) are ignored or corrected through neighborhood interpolation. The mid-band coefficients of each partition are decoded into a binary sequence (such as "1010") according to the above rules to ensure that the length is consistent with the binary watermark sequence during embedding.
[0142] In step 406, according to the traversal order of the spatial grid partitions (e.g., from the negative direction to the positive direction of the X-axis, the negative direction to the positive direction of the Y-axis, and the negative direction to the positive direction of the Z-axis), the binary watermark sequences of each partition are sequentially spliced together to generate complete 3D watermark information (e.g., the partition sequences "1010" and "0101" are combined into "10100101").
[0143] A stability factor is calculated by combining the mean and variance of the deformation, and combined with RBF interpolation to generate a continuous correction field. This effectively compensates for nonlinear deformations of the model during rendering optimization, allowing the watermark extraction coordinate system to adapt to model geometry changes and improve deformation resistance. The reconstructed watermark extraction coordinate system uses basis vector correction and parameterized representation to ensure a one-to-one correspondence between frequency domain coefficients and their spatial locations at the time of embedding, resolving the problem of watermark feature misalignment caused by coordinate system mismatch in traditional methods. Adaptive resampling based on the stability factor balances computational efficiency with detail preservation, avoiding watermark information loss due to insufficient sampling. Partitioned DCT and a fixed-band indexing strategy ensure that the extracted mid-frequency band coefficients are consistent with the feature locations at the time of embedding. Amplitude normalization and threshold mapping rules effectively filter out noise interference and improve the accuracy of binary sequence decoding. The standardized process from coordinate system reconstruction to watermark combination is compatible with various types of 3D model deformations (such as mesh simplification and affine transformation), forming a unified watermark extraction framework.
[0144] In a preferred embodiment of the present invention, step 5, comparing the 3D watermark information with the copyright registration information recorded in the blockchain, and determining that the target 3D digital asset is a copyrighted asset if the digital signature and the copyright registration number match, may include:
[0145] Step 500, separating the creator digital signature field and the copyright registration number field from the 3D watermark information;
[0146] Step 501: Access a preset blockchain copyright registration node, submit the copyright registration number field for query, and obtain the registered copyright information associated with the copyright registration number field, wherein the registered copyright information includes the registered creator's digital signature;
[0147] Step 502, perform string matching comparison on the creator digital signature field and the creator digital signature in the registered copyright information. When the creator digital signature field is consistent with the creator digital signature in the registered copyright information, and the copyright registration number field is consistent with the copyright registration number field used in the query, it is determined that the copyright of the target three-dimensional digital asset is valid.
[0148] In an embodiment of the present invention, the extracted 3D watermark information (in the form of a binary sequence or string) is first parsed, and the creator's digital signature field and the copyright registration number field are separated according to preset formatting rules. Formatting rules: For example, the first 128 bits of the watermark information are the digital signature, and the last 64 bits are the copyright registration number (or separated by a specific delimiter such as "#"). The watermark is truncated to a fixed length or split by delimiters, for example, extracting the digital signature from bits 1 to 128 of the binary sequence and the copyright registration number from bits 129 to 192, and converting them into readable strings (e.g., ASCII or UTF-8 encoding).
[0149] Step 501: Access a preset blockchain copyright registration node (such as Ethereum or consortium blockchain node) through a network interface and perform the following operations:
[0150] The separated copyright registration number field is used as a query key to initiate a query request to the blockchain smart contract. The smart contract searches the blockchain ledger based on the copyright registration number and returns the associated registered copyright information, including the registered creator's digital signature, registration time, owner information, etc.
[0151] Step 502 is to double-verify the separated watermark information and the registration information returned by the blockchain:
[0152] Digital signature comparison: Perform a character-by-character string match between the creator's digital signature field in the watermark and the creator_signature field returned by the blockchain (for example, compare "Creator_001_Sign" with "0xabc123..." to see if they are completely consistent).
[0153] Copyright registration number comparison: Check whether the copyright registration number field in the watermark is consistent with the registration number used during the query (for example, ensure that the extracted "CN20250601001" is the same as the registration number submitted for the query to avoid tampering).
[0154] If both comparisons pass, the output is "Copyright is valid"; if any one does not match (such as inconsistent digital signatures or registration numbers), the output is "Copyright is invalid" or "Tampering has occurred".
[0155] Leveraging the blockchain's immutable and distributed storage characteristics, this system ensures the authenticity and authority of copyright registration information, mitigates the risk of local database tampering, and provides irrefutable copyright evidence. Through fixed field separation and string matching mechanisms, watermark information is rapidly verified against on-chain data. Verification of both the digital signature and copyright registration number provides a double layer of security. Even if the watermark information is partially damaged (e.g., a field is missing due to model deformation), the remaining fields can still be independently verified, enhancing the reliability of the authentication results. Supporting mainstream blockchain platforms (such as Ethereum and Fabric), it seamlessly integrates with existing copyright registration systems.
[0156] like Figure 2 As shown, an embodiment of the present invention further provides a 3D model authentication system based on 3D watermark, comprising:
[0157] A watermark embedding module, configured to embed a 3D watermark containing copyright information into the vertex data of the original model of the 3D digital asset, wherein the copyright information includes the creator's digital signature and copyright registration number;
[0158] A data acquisition module, configured to respond to a user's request for identification of a target three-dimensional digital asset and acquire current model data of the target three-dimensional digital asset;
[0159] The deformation calculation module is used to determine three non-collinear preset spatial position points in the current model data to form a spatial position point set, construct spatial partitions, and calculate the geometric deformation parameters of each partition after the current model is rendered and optimized;
[0160] The watermark extraction module is used to generate a coordinate system correction factor based on the geometric deformation parameters, reconstruct the watermark extraction coordinate system using the correction factor, and extract the 3D watermark information from the resampled vertex data;
[0161] The copyright determination module is used to compare the 3D watermark information with the copyright registration information recorded in the blockchain. If the digital signature and copyright registration number match, the target three-dimensional digital asset is determined to be a copyright-valid asset, thus achieving the final determination of the validity of the digital asset copyright.
[0162] It should be noted that this system is a system corresponding to the above method, and all implementation methods in the above method embodiment are applicable to this embodiment and can achieve the same technical effects.
[0163] An embodiment of the present invention further provides a computing device comprising: a processor and a memory storing a computer program, wherein the computer program, when executed by the processor, performs the above-described method. All implementations in the above-described method embodiments are applicable to this embodiment and can achieve the same technical effects.
[0164] The embodiment of the present invention further provides a computer-readable storage medium storing instructions, which, when executed on a computer, causes the computer to execute the above-described method. All implementations in the above-described method embodiment are applicable to this embodiment and can achieve the same technical effects.
[0165] The above is a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present invention. These improvements and modifications should also be regarded as within the scope of protection of the present invention.
Claims
1. A 3D model identification method based on 3D watermark, characterized in that: The method comprises: Step 1: Embed a 3D watermark containing copyright information into the vertex data of the original model of the 3D digital asset. The copyright information includes the creator's digital signature and copyright registration number. Step 2: In response to the user's authentication request for the target three-dimensional digital asset, obtain current model data of the target three-dimensional digital asset; Step 3: Determine three non-collinear preset spatial position points in the current model data to form a set of spatial position points; construct continuous spatial partitions based on the set of spatial position points, and calculate the geometric deformation parameters of each partition after the model is rendered and optimized; Step 4: Generate a coordinate system correction factor based on the geometric deformation parameters, and use the correction factor to reconstruct the watermark extraction coordinate system to extract the 3D watermark information from the resampled vertex data; Step 5: Compare the 3D watermark information with the copyright registration information recorded in the blockchain. If the digital signature and copyright registration number match, the target three-dimensional digital asset is determined to be a copyrighted asset.
2. The 3D model identification method based on 3D watermark according to claim 1, characterized in that: A 3D watermark containing copyright information is embedded in the vertex data of the original model of the 3D digital asset. The copyright information includes the creator's digital signature and copyright registration number, including: Based on the creator's digital signature and copyright registration number, a binary watermark sequence is generated through hash operation; Performing a discrete cosine transform on the vertex coordinate sequence of the original model of the three-dimensional digital asset to obtain a frequency domain coefficient matrix containing low-frequency, medium-frequency, and high-frequency coefficients; Extracting a mid-band coefficient subset from the frequency domain coefficient matrix based on a preset frequency band indexing rule; According to the value of the binary watermark sequence, an amplitude adjustment operation is performed on the mid-frequency band coefficient subset to generate a modulated frequency domain coefficient matrix; Perform inverse discrete cosine transform on the modulated frequency domain coefficient matrix to reconstruct the vertex coordinate data containing the watermark; The three-dimensional mesh model is reconstructed based on the vertex coordinate data containing the watermark to obtain the original model of the three-dimensional digital asset embedded with the watermark.
3. The 3D model identification method based on 3D watermark according to claim 2, characterized in that: In response to a user's authentication request for a target three-dimensional digital asset, obtaining current model data of the target three-dimensional digital asset includes: Parse the model file to be identified to obtain the initial vertex coordinate set and facet connection relationship; Based on the topological structure of the original model embedded with the watermark, the topological consistency of the patch connection relationship is verified and the topologically valid patch connection relationship is output; Affine transformation normalization processing is performed on the initial vertex coordinate set to obtain a standardized vertex coordinate set, and the topologically valid patch connection relationship is combined with the standardized vertex coordinate set to generate current model data of the target three-dimensional digital asset.
4. The 3D model identification method based on 3D watermark according to claim 3, characterized in that: Determine three non-collinear preset spatial position points in the current model data to form a set of spatial position points; Construct continuous spatial partitions based on a set of spatial location points, and calculate the geometric deformation parameters of each partition after the model is rendered and optimized, including: Based on the standardized vertex coordinate set, the distribution entropy value of the surface normal vector of the current model is calculated, and three non-collinear vertices that meet the preset distance threshold are selected as spatial position points to generate a set of spatial position points; Establish a spatial reference coordinate system with the first vertex as the coordinate origin, the vector from the first vertex to the second vertex as the X-axis, and the normal vector of the vector from the first vertex to the third vertex projected on the XY plane as the Z-axis; In the spatial reference coordinate system, the current model surface is divided into hexahedral grid partitions of uniform size; Apply the preset rendering optimization operation to each mesh partition and calculate the position offset vector of each partition vertex before and after rendering optimization; The mean modulus of the offset vectors of each partition is counted as the deformation mean, and the variance of the modulus is counted as the deformation variance to generate the geometric deformation parameters.
5. The 3D model identification method based on 3D watermark according to claim 4, characterized in that: Based on the standardized vertex coordinate set, the distribution entropy value of the surface normal vector of the current model is calculated, and three non-collinear vertices that meet the preset distance threshold are selected as spatial position points to generate a set of spatial position points, including: Based on the standardized vertex coordinate set, the normal vector of each vertex is calculated to generate a normal vector data set; According to the normal vector dataset, the distribution of the number of normal vectors in the 20×10 grid cells of the spherical coordinate system is statistically analyzed; Based on the quantity distribution, the entropy value of the normal vector distribution of each grid cell is calculated to generate an entropy value dataset; Select the vertex with the largest entropy value from the entropy value data set as the first vertex; calculate the vertex with the largest Euclidean distance to the first vertex based on the standardized vertex coordinate set as the second vertex; Construct a reference plane based on the first vertex and the second vertex, and select vertices that satisfy the conditions that the distance between the first vertex and the second vertex is greater than a preset distance threshold; Calculate the vertical distance between each vertex in the candidate vertex set and the reference plane, and select the vertex with the largest vertical distance as the third vertex; Verify that the Euclidean distances between the first vertex, the second vertex, and the third vertex are all greater than a preset distance threshold, and output a set of spatial position points consisting of the three vertices.
6. The 3D model identification method based on 3D watermark according to claim 5, characterized in that: Generate a coordinate system correction factor based on the geometric deformation parameters, and use the correction factor to reconstruct the watermark extraction coordinate system to extract the 3D watermark information from the resampled vertex data, including: Based on the deformation mean and deformation variance in the geometric deformation parameters, the deformation stability factor of each spatial grid partition is calculated; Taking the deformation stability factor as input, a three-dimensional coordinate correction field is generated through radial basis function interpolation; The three-dimensional coordinate system correction field is used as input to reconstruct the watermark extraction coordinate system, including correcting the direction of the basis vectors of the original coordinate system and establishing a deformation-invariant spatial parameterized representation; Based on the reconstructed watermark extraction coordinate system, an adaptive resampling operation is performed on the standardized vertex coordinate set to generate a resampled vertex data set; According to the resampled vertex data set, a partitioned discrete cosine transform operation is performed to obtain a frequency domain coefficient matrix, and the mid-frequency band coefficient with the same index as that when the watermark is embedded is extracted from the frequency domain coefficient matrix; The mid-frequency band coefficients are amplitude normalized and the normalized amplitude is input into the preset amplitude-bit mapping rule. If the amplitude is greater than or equal to 0.7 times, the maximum amplitude is recorded as 1; if the amplitude is less than or equal to 0.3 times, the maximum amplitude is recorded as 0. Finally, the binary watermark sequence is generated by decoding; The binary watermark sequences of all spatial grid partitions are combined to generate 3D watermark information.
7. The 3D model identification method based on 3D watermark according to claim 6, characterized in that: The 3D watermark information is compared with the copyright registration information recorded in the blockchain. If the digital signature and copyright registration number match, the target 3D digital asset is determined to be a copyrighted asset, including: Separate the creator's digital signature field and the copyright registration number field from the 3D watermark information; Accessing a preset blockchain copyright registration node, submitting the copyright registration number field for query, and obtaining the registered copyright information associated with the copyright registration number field, wherein the registered copyright information includes the registered creator's digital signature; Perform string matching and comparison on the creator's digital signature field and the creator's digital signature in the registered copyright information. When the creator's digital signature field is consistent with the creator's digital signature in the registered copyright information, and the copyright registration number field is consistent with the copyright registration number field used in the query, the copyright of the target three-dimensional digital asset is determined to be valid.
8. A 3D model authentication system based on 3D watermark, the system implementing the method according to any one of claims 1 to 7, characterized in that: include: A watermark embedding module, configured to embed a 3D watermark containing copyright information into the vertex data of the original model of the 3D digital asset, wherein the copyright information includes the creator's digital signature and copyright registration number; A data acquisition module, configured to respond to a user's request for identification of a target three-dimensional digital asset and acquire current model data of the target three-dimensional digital asset; The deformation calculation module is used to determine three non-collinear preset spatial position points in the current model data to form a spatial position point set, construct spatial partitions, and calculate the geometric deformation parameters of each partition after the current model is rendered and optimized; The watermark extraction module is used to generate a coordinate system correction factor based on the geometric deformation parameters, reconstruct the watermark extraction coordinate system using the correction factor, and extract the 3D watermark information from the resampled vertex data; The copyright determination module is used to compare the 3D watermark information with the copyright registration information recorded in the blockchain. If the digital signature and copyright registration number match, the target three-dimensional digital asset is determined to be a copyright-valid asset, thus achieving the final determination of the validity of the digital asset copyright.
9. A computing device, characterized in that include: one or more processors; A storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a program, which, when executed by a processor, implements the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Method for embedding and detecting watermark based on vertex distribution feature digital three-dimensional model
CN103049877A
Three-dimension mesh model copyright verification method
CN104408338A