CN109919821B - Embedding and extracting method of three-dimensional digital model double blind watermark and storage medium - Google Patents

Embedding and extracting method of three-dimensional digital model double blind watermark and storage medium Download PDF

Info

Publication number
CN109919821B
CN109919821B CN201711322951.0A CN201711322951A CN109919821B CN 109919821 B CN109919821 B CN 109919821B CN 201711322951 A CN201711322951 A CN 201711322951A CN 109919821 B CN109919821 B CN 109919821B
Authority
CN
China
Prior art keywords
vertex
watermark
ring neighbor
ring
digital model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711322951.0A
Other languages
Chinese (zh)
Other versions
CN109919821A (en
Inventor
何文奇
王启垒
彭翔
刘晓利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Esun Display Co ltd
Shenzhen University
Original Assignee
Shenzhen Esun Display Co ltd
Shenzhen University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Esun Display Co ltd, Shenzhen University filed Critical Shenzhen Esun Display Co ltd
Priority to CN201711322951.0A priority Critical patent/CN109919821B/en
Priority to PCT/CN2018/099080 priority patent/WO2019114290A1/en
Publication of CN109919821A publication Critical patent/CN109919821A/en
Application granted granted Critical
Publication of CN109919821B publication Critical patent/CN109919821B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Processing Or Creating Images (AREA)

Abstract

The invention provides a method for embedding and extracting a three-dimensional digital model double blind watermark and a storage medium, wherein the embedding method comprises the following steps: screening a first type of vertexes from the three-dimensional digital model according to a first watermark embedding condition; acquiring the characteristic attribute of a pixel point of a two-dimensional image used as a first heavy watermark; adjusting the position of the corresponding first type vertex in the three-dimensional digital model according to the characteristic attribute of the pixel point; screening second type vertexes which accord with preset conditions from the adjusted three-dimensional digital model; selecting the two-ring neighbor vertex which meets the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; acquiring a watermark numerical value sequence used as a second watermark; the sequence of watermark values comprises watermark values at respective digits; when the selected positions of the two-ring neighbor vertices corresponding to the digits do not match the watermark value at the corresponding digits, the positions of the two-ring neighbor vertices corresponding to the digits are adjusted to match the watermark value.

Description

Embedding and extracting method of three-dimensional digital model double blind watermark and storage medium
Technical Field
The invention relates to the technical field of three-dimensional digital model watermarks, in particular to a method for embedding and extracting a three-dimensional digital model double blind watermark and a storage medium.
Background
With the development of three-dimensional imaging technology, especially with the development of computer graphics, virtual reality, 3D games, 3D presentations, etc., three-dimensional digital models are becoming an important form of digital media. The behaviors of illegal occupation, embezzlement, modification, propagation and the like aiming at the three-dimensional digital model are more and more, so that the intellectual property protection of the three-dimensional digital model is urgent. The three-dimensional digital model watermarking technology is an important technical means for protecting intellectual property rights of three-dimensional digital models. The three-dimensional digital model watermark can be divided into blind watermark and non-blind watermark according to whether the original model is needed during watermark detection, the former does not need, and under the condition of the existing three-dimensional digital model retrieval technology, the blind watermark technology has practical application value. The three-dimensional digital model watermark is divided into a detectable watermark, a readable watermark and a visual watermark according to the content. The detection result of the detectable watermark is a binary sequence consisting of 0 or 1, the detection result of the readable watermark is a character string, and the detection result of the visible watermark is an image.
Compared with image watermarks, audio watermarks and video watermarks, the three-dimensional digital model watermarks have different carriers. The vertexes of the three-dimensional digital model are irregularly sampled and have no determined arrangement sequence, so that no direct mathematical tool is used for processing the three-dimensional digital model, and the watermark embedding difficulty is high. The three-dimensional digital model blind watermark can be extracted by means of resampling and realignment, and the three-dimensional digital model blind watermark depends on a watermark carrier to extract the watermark, so that the embedding difficulty and the extraction difficulty of the three-dimensional digital model blind watermark are higher, which is one of the reasons that most three-dimensional digital model watermarks adopt the non-blind watermark. Although the research of the blind watermark of the three-dimensional digital model is difficult under the current three-dimensional digital model retrieval technical condition, the method has important practical application value. With the continuous development of watermark technology, more and more attack modes aiming at watermarks exist, and how to ensure the robustness of resisting the attacks under the condition of ensuring the invisibility of the watermarks is still a difficult research point. The existing three-dimensional digital model watermark is difficult to exist or be correctly detected after being attacked by various attack modes, so that the robustness of resisting the attack is low.
Disclosure of Invention
Based on this, it is necessary to provide a method for embedding and extracting a dual blind watermark in a three-dimensional digital model and a storage medium for solving the technical problem that the existing blind watermark in a three-dimensional digital model has low robustness.
A method for embedding a three-dimensional digital model double blind watermark, the method comprising:
acquiring a three-dimensional digital model;
screening a first type of vertexes from the three-dimensional digital model according to a first heavy watermark embedding condition;
acquiring the characteristic attribute of a pixel point of a two-dimensional image used as a first heavy watermark;
adjusting the position of the corresponding first class vertex in the three-dimensional digital model according to the characteristic attribute of the pixel point;
screening second type vertexes which accord with preset conditions from the adjusted three-dimensional digital model; the preset condition comprises the first watermark embedding condition;
selecting the two-ring neighbor vertex which meets the embedding condition of the second watermark from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first heavy watermark embedding condition;
acquiring a watermark numerical value sequence used as a second watermark; the sequence of watermark values comprises watermark values at respective digits;
when the position of the selected vertex of the two-ring neighbor corresponding to the digit does not match the watermark value at the corresponding digit, the position of the vertex of the two-ring neighbor corresponding to the digit is adjusted to match the watermark value.
An apparatus for embedding a three-dimensional digital model double blind watermark, the apparatus comprising:
the acquisition module is used for acquiring a three-dimensional digital model;
the screening module is used for screening the first type of vertexes from the three-dimensional digital model according to the first heavy watermark embedding condition;
the acquisition module is also used for acquiring the characteristic attribute of the pixel point of the two-dimensional image used as the first heavy watermark;
the first watermark embedding module is used for adjusting the positions of the corresponding first type vertexes in the three-dimensional digital model according to the characteristic attributes of the pixel points;
the screening module is also used for screening second type vertexes which accord with preset conditions from the adjusted three-dimensional digital model; the preset condition comprises the first watermark embedding condition;
the screening module is also used for selecting the two-ring neighbor vertex meeting the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first heavy watermark embedding condition;
the acquisition module is also used for acquiring a watermark numerical value sequence used as a second watermark; the sequence of watermark values comprises watermark values at respective digits;
and the second repeated watermark embedding module is used for adjusting the positions of the vertexes of the two ring neighbors corresponding to the digits to be matched with the watermark value when the positions of the vertexes of the two ring neighbors corresponding to the digits are not matched with the watermark value at the corresponding digits.
A computer device comprising a memory and a processor, the memory storing a computer program which, when executed by the processor, causes the processor to perform the steps of a method of embedding a three-dimensional digital model double blind watermark.
A computer-readable storage medium, storing a computer program which, when executed by a processor, causes the processor to perform the steps of a method of embedding a three-dimensional digital model double blind watermark.
According to the embedding method of the double blind watermarks of the three-dimensional digital model, the computer equipment and the storage medium, the position of the screened first-class vertex is correspondingly adjusted according to the pixel point characteristics of the two-dimensional image used as the first heavy watermark, and the first heavy watermark is embedded into the three-dimensional digital model. And for the three-dimensional digital model embedded with the first watermark, screening out two ring neighbor vertexes serving as vertexes embedded with the second watermark, and correspondingly adjusting the positions of the screened two ring neighbor vertexes according to the corresponding relation between the screened two ring neighbor vertexes and the watermark numerical sequence serving as the second watermark so as to embed the second watermark into the three-dimensional digital model, thereby embedding the double blind watermark into the three-dimensional digital model and improving the robustness of the watermark in the three-dimensional digital model. And through the constraint limitation of the embedding condition of the second watermark, the first watermark and the second watermark which are embedded in the three-dimensional digital model are independent and do not interfere with each other, and the robustness of the watermark is further improved.
A method for extracting a three-dimensional digital model double blind watermark comprises the following steps:
acquiring a three-dimensional digital model;
screening a first type of vertexes from the three-dimensional digital model according to a first heavy watermark embedding condition;
determining the characteristic attribute of the corresponding pixel point according to the position of the first class vertex;
restoring a two-dimensional image used as a first heavy watermark according to the characteristic attribute of the pixel point;
screening second type vertexes which accord with preset conditions from the three-dimensional digital model; the preset condition comprises the first watermark embedding condition;
selecting the two-ring neighbor vertex which meets the embedding condition of the second watermark from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first heavy watermark embedding condition;
and restoring a watermark numerical value sequence used as a second watermark according to the watermark value matched with the position of the selected vertex of the two-ring neighbor and the corresponding digit of the selected vertex of the two-ring neighbor.
An apparatus for extracting a three-dimensional digital model double blind watermark, the apparatus comprising:
the acquisition module is used for acquiring a three-dimensional digital model;
the screening module is used for screening the first type of vertexes from the three-dimensional digital model according to the first heavy watermark embedding condition;
the first watermark extraction module is used for determining the characteristic attribute of the corresponding pixel point according to the position of the first vertex;
the first watermark extraction module is used for restoring a two-dimensional image used as a first watermark according to the characteristic attribute of the pixel point;
the screening module is also used for screening second type vertexes which accord with preset conditions from the three-dimensional digital model; the preset condition comprises the first watermark embedding condition;
the screening module is also used for selecting the two-ring neighbor vertex meeting the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first heavy watermark embedding condition;
and the second repeated watermark extraction module is used for restoring a watermark numerical value sequence used as a second repeated watermark according to the watermark value matched with the position of the selected vertex of the two-ring neighbor and the corresponding digit of the selected vertex of the two-ring neighbor.
A computer device comprising a memory and a processor, the memory storing a computer program which, when executed by the processor, causes the processor to perform the steps of a method of extraction of a three-dimensional digital model double blind watermark.
A computer-readable storage medium, storing a computer program which, when executed by a processor, causes the processor to perform the steps of a method of extracting a three-dimensional digital model double blind watermark.
According to the method for extracting the double blind watermarks of the three-dimensional digital model, the computer equipment and the storage medium, the corresponding first-class vertexes and the second-class vertexes are respectively screened out from the three-dimensional digital model according to the first watermark embedding condition and the preset condition, the two-dimensional image is restored according to the screened first-class vertexes, and the first watermark is extracted from the three-dimensional digital model. And screening the two-ring neighbor vertexes which accord with the embedding condition of the second watermark from the screened second-class vertexes, and restoring the corresponding watermark numerical value sequence according to the screened two-ring neighbor vertexes, namely extracting the second watermark from the three-dimensional digital model, thereby realizing the extraction of the double watermark and improving the robustness of the watermark in the three-dimensional digital model. In the double watermark extraction process, the watermark extraction process is mutually independent, and the three-dimensional digital model without the embedded watermark is not involved, so that the attack resistance robustness of the embedded watermark in the three-dimensional digital model is further improved.
Drawings
FIG. 1 is a schematic diagram showing an internal configuration of a computer device according to an embodiment;
FIG. 2 is a flowchart illustrating a method for embedding a double blind watermark in a three-dimensional digital model according to an embodiment;
FIG. 3 is a flowchart illustrating a method for embedding a double blind watermark in a three-dimensional digital model according to another embodiment;
FIG. 4 is a flowchart illustrating a method for extracting a double blind watermark from a three-dimensional digital model according to an embodiment;
fig. 5 is a schematic flowchart of a method for extracting a double blind watermark from a three-dimensional digital model in another embodiment;
FIG. 6 is a flowchart illustrating a method for embedding and extracting a double blind watermark in a three-dimensional digital model according to an embodiment;
FIG. 7 is a block diagram of an apparatus for embedding a double blind watermark in a three-dimensional digital model according to an embodiment;
FIG. 8 is a block diagram of an apparatus for extracting a double blind watermark from a three-dimensional digital model according to an embodiment;
fig. 9 is a block diagram of an apparatus for extracting a three-dimensional digital model double blind watermark in another embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
As shown in FIG. 1, in one embodiment, a schematic diagram of the internal structure of a computer device is provided. The computer device includes a processor and a memory connected by a system bus. Wherein the memory includes a non-volatile storage medium and an internal memory. The computer program is stored in the memory of the computer device, and when being executed by the processor, the computer program can enable the processor to realize a method for embedding and extracting the double blind watermark of the three-dimensional digital model. The internal memory of the computer device provides an environment for running the computer program in the nonvolatile storage medium. The processor is used to provide computing and control capabilities to support the operation of the entire computer device. The computer device may also include a network interface, an input device, and a display screen. The network interface of the computer device is used for carrying out network communication with the outside, such as receiving a three-dimensional digital model, a two-dimensional image or a watermark value sequence. The display screen of the computer equipment can be a liquid crystal display screen or an electronic ink display screen, and the input device can be a touch layer covered on the display screen, a button, a track ball or a touch pad arranged on the shell of the computer equipment, and an external keyboard, a touch pad or a mouse. The display screen of the computer device may be used to display the three-dimensional digital model before and after the embedding of the watermark, as well as the two-dimensional image used as the first re-watermark. The input means of the computer device may be used to input a sequence of watermark values for use as a secondary watermark, and a trigger action instruction to embed or extract the watermark.
Those skilled in the art will appreciate that the architecture shown in fig. 1 is merely a block diagram of some of the structures associated with the disclosed aspects and is not intended to limit the computing devices to which the disclosed aspects apply, as particular computing devices may include more or less components than those shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, as shown in fig. 2, a method for embedding a three-dimensional digital model double blind watermark is provided. The present embodiment is illustrated by applying the method to the computer apparatus in fig. 1 described above. The method specifically comprises the following steps:
s202, acquiring a three-dimensional digital model.
The three-dimensional digital model is a three-dimensional model formed by connecting a plurality of vertexes. The three-dimensional digital model may be obtained by scanning a three-dimensional object, or may be obtained by three-dimensional modeling according to data parameters. Specifically, the computer device may retrieve the three-dimensional digital model from local storage, and may also retrieve the three-dimensional digital model from other computer devices or storage devices.
S204, screening the first type of vertexes from the three-dimensional digital model according to the first watermark embedding condition.
The watermark is information added in the carrier and is used for realizing copyright protection of the carrier. The first watermark is used to distinguish other watermark information embedded in the carrier. The first watermark embedding condition is used for screening vertices capable of embedding the first watermark. The first watermark embedding condition may specifically be a preset condition for screening a first type of vertex used for embedding the first watermark from the three-dimensional digital model. The first class of vertices represent vertices that satisfy a first heavy watermark embedding condition for distinguishing from other vertices that do not satisfy the condition. The first type of vertices may in particular be vertices of a three-dimensional digital model used for embedding the first heavy watermark.
Specifically, the computer device acquires a three-dimensional digital model, screens first-class vertexes from the acquired three-dimensional digital model according to a preset first watermark embedding condition, the screened first-class vertexes conform to the first watermark embedding condition, and the screened first-class vertexes are used as vertexes for embedding the first watermark.
In one embodiment, a computer device obtains a three-dimensional digital model, obtains first watermark embedding conditions for screening first-class vertices from the three-dimensional digital model, and screens corresponding first-class vertices from the three-dimensional digital model according to the obtained first watermark embedding conditions.
And S206, acquiring the characteristic attribute of the pixel point of the two-dimensional image used as the first watermark.
The two-dimensional image is a planar image containing no depth information. The two-dimensional image may specifically be a binary image, for example, a binary image whose content is a letter. The pixel characteristic attribute is used for representing the attribute characteristic of the pixel. The pixel point feature attribute may be a post attribute corresponding to each pixel point in the two-dimensional image. The pixel characteristic attributes may include a row index value, a column index value, and a corresponding pixel value of the pixel. The row-column index value is used for representing the row and the column of the pixel point in the two-dimensional image.
Specifically, the computer device acquires a two-dimensional image, preprocesses the acquired two-dimensional image, and acquires pixel point characteristic attributes of each pixel point of the preprocessed two-dimensional image. The acquired two-dimensional image is used as a first re-watermark embedded in the three-dimensional digital model. And the computer equipment embeds the corresponding two-dimensional image into the three-dimensional digital model according to the obtained characteristic attribute of the pixel point.
In one embodiment, a computer device may acquire a two-dimensional image of a preset size. The order and source in which the computer device obtains the three-dimensional digital model and the two-dimensional image is not limited.
And S208, adjusting the position of the corresponding first-class vertex in the three-dimensional digital model according to the characteristic attribute of the pixel point.
Wherein each vertex in the three-dimensional digital model has a relative position relationship. And in the global coordinate system corresponding to the three-dimensional digital model, each vertex in the three-dimensional digital model has a determined position.
Specifically, the computer device acquires a first-class vertex meeting a first watermark embedding condition and a pixel point characteristic attribute of the two-dimensional image serving as the first watermark, and determines a first-class vertex corresponding to each pixel point of the two-dimensional image according to the acquired first-class vertex and the pixel point characteristic attribute of the two-dimensional image. And the computer equipment adjusts the position of the first vertex corresponding to the pixel point according to the characteristic attribute of the pixel point in the three-dimensional digital model so as to embed the two-dimensional image into the three-dimensional digital model as a first watermark.
In one embodiment, the computer device determines a first-class vertex corresponding to each pixel point in the two-dimensional image according to the acquired plurality of first-class vertices and the pixel point characteristic attribute of each pixel point in the two-dimensional image. When the number of the acquired first-class vertexes is larger than the number of the pixel points of the two-dimensional image, the first-class vertexes corresponding to the pixel points in the two-dimensional image are adjusted in position according to the corresponding characteristic attributes of the pixel points, and the positions of the first-class vertexes which are not determined to be in corresponding relation with the pixel points in the two-dimensional image are kept unchanged. The characteristic attributes of the pixel points of the two-dimensional image are respectively embedded into the corresponding first-class vertexes in the three-dimensional digital model.
S210, screening second type vertexes which accord with preset conditions from the adjusted three-dimensional digital model; the preset condition is included in the first watermark embedding condition.
And the second type of vertex represents a vertex meeting the preset condition and is used for distinguishing other vertexes which do not meet the preset condition. The preset condition is a preset condition for screening vertices. The preset condition is included in the first watermark embedding condition, and indicates that the preset condition includes relatively few screening conditions, so that the second type of vertex includes the first type of vertex.
Specifically, the computer device embeds the acquired two-dimensional image into the three-dimensional digital model as a first heavy watermark by adjusting the position of the first vertex, thereby obtaining the three-dimensional digital model embedded with the first heavy watermark. And the computer equipment acquires a preset condition for screening the second vertex, screens the second vertex which meets the preset condition from the three-dimensional digital model embedded with the first heavy watermark, and the screened second vertex comprises the first vertex embedded with the first heavy watermark in the three-dimensional digital model.
S212, selecting the two-ring neighbor vertex meeting the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; and the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to the vertex referred to when the first class vertex is screened according to the first watermark embedding condition.
Wherein, the two-ring neighbor vertex is a vertex connected with the corresponding vertex through one-ring neighbor vertex of the vertex. A ring of neighbor vertices is a vertex that is directly connected to a vertex. The one-ring neighbor vertex and the two-ring neighbor vertex are both vertices in the three-dimensional digital model, the one-ring neighbor vertex and the two-ring neighbor vertex are relative concepts, and the one-ring neighbor vertex and the two-ring neighbor vertex also have respective one-ring neighbor vertex and two-ring neighbor vertex. Each vertex may have a plurality of one-ring neighbor vertices and a plurality of two-ring neighbor vertices. And the vertex referenced when the first type of vertex is screened according to the first watermark embedding condition is a ring of neighbor vertices of the screened first type of vertex.
Specifically, the computer device acquires a second watermark embedding condition, selects a two-ring neighbor vertex meeting the second watermark embedding condition from two-ring neighbor vertices of a second type of vertex meeting a preset condition according to the acquired second watermark embedding condition, and uses the selected two-ring neighbor vertex as a vertex for embedding the second watermark. And by the constraint limitation of the embedding condition of the second watermark, the computer equipment selects the two-ring neighbor vertex from the two-ring neighbor vertices of the second type of vertex, wherein the two-ring neighbor vertex does not belong to the first type of vertex embedded with the first watermark or the one-ring neighbor vertex not belonging to the first type of vertex embedded with the first watermark.
S214, acquiring a watermark numerical value sequence used as a second watermark; the sequence of watermark values includes the watermark value at each digit.
The watermark numerical value sequence is a sequence formed by orderly arranging and combining a plurality of numerical values. The watermark value sequence may be a sequence of binary values, or may be a sequence of other binary values. The watermark value sequence may be a binary sequence, for example, "10001101", or a sequence of other values, for example, "36636633". The position in the sequence of values that make up the sequence of watermark values is called a digit, which corresponds to the value at the digit. The values constituting the sequence of watermark values may be referred to as watermark values in this application.
Specifically, the computer device obtains a watermark value sequence, and the obtained watermark value sequence is used as a second watermark for embedding the three-dimensional digital model embedded with the first watermark. The computer equipment can acquire the watermark numerical value sequence from a local storage, can also acquire the watermark numerical value sequence from other storage equipment, and can also generate a corresponding watermark numerical value sequence according to the watermark numerical value sequence generation instruction.
In one embodiment, the computer device determines a corresponding relationship between the picked two-ring neighbor vertices and each digit in the watermark value sequence according to the picked two-ring neighbor vertices meeting the second watermark embedding condition and the obtained watermark value sequence, so as to embed the watermark value sequence into the three-dimensional digital model as the second watermark according to the determined corresponding relationship.
S216, when the position of the vertex of the two-ring neighbor corresponding to the digit selected is not matched with the watermark value at the corresponding digit, the position of the vertex of the two-ring neighbor corresponding to the digit is adjusted to be matched with the watermark value.
Specifically, the computer device obtains the position of the selected vertex of the two-ring neighbor, and determines the corresponding digit of the selected vertex of the two-ring neighbor and the watermark value of the digit according to the corresponding relation between the selected vertex of the two-ring neighbor and the digits of the obtained watermark value sequence. And matching the acquired positions of the vertexes of the two ring neighbors with the watermark values of the digits corresponding to the vertexes of the two ring neighbors in the watermark value sequence, and when the positions of the vertexes of the two ring neighbors are not matched with the watermark values corresponding to the vertexes of the two ring neighbors, correspondingly adjusting the vertexes of the two ring neighbors according to the digits corresponding to the vertexes of the two ring neighbors so as to enable the positions of the vertexes of the two ring neighbors after adjustment to be matched with the watermark values of the corresponding digits.
According to the embedding method of the double blind watermarks of the three-dimensional digital model, the position of the screened first-class vertex is correspondingly adjusted according to the pixel point characteristics of the two-dimensional image used as the first heavy watermark, and the first heavy watermark is embedded into the three-dimensional digital model. And for the three-dimensional digital model embedded with the first watermark, screening out two ring neighbor vertexes serving as vertexes embedded with the second watermark, and correspondingly adjusting the positions of the screened two ring neighbor vertexes according to the corresponding relation between the screened two ring neighbor vertexes and the watermark numerical sequence serving as the second watermark so as to embed the second watermark into the three-dimensional digital model, thereby embedding the double blind watermark into the three-dimensional digital model and improving the robustness of the watermark in the three-dimensional digital model. And through the constraint limitation of the embedding condition of the second watermark, the first watermark and the second watermark which are embedded in the three-dimensional digital model are independent and do not interfere with each other, and the robustness of the watermark is further improved.
In an embodiment, in the method for embedding a double blind watermark in a three-dimensional digital model, step S204 includes: respectively and correspondingly calculating a ring neighbor center of mass point of each vertex according to a ring neighbor vertex of each vertex in the three-dimensional digital model; and screening first type vertexes which accord with preset conditions and are not neighbor vertexes mutually from the three-dimensional digital model according to the ring neighbor vertexes of each vertex and the ring neighbor centroid points of each vertex.
Wherein a ring neighbor centroid point is a centroid point of a ring neighbor vertex of the vertex. The one-ring neighbor centroid point may specifically be a centroid point calculated from a plurality of one-ring neighbor vertices of the vertex. The neighbor vertices are used to represent two adjacent vertices. The preset condition is a preset condition for screening vertices.
Specifically, for each vertex in the acquired three-dimensional digital model, the computer device calculates a ring neighbor centroid point of each vertex according to a ring neighbor vertex of the vertex, and screens the first type of vertex from the three-dimensional digital model according to the ring neighbor vertex of each vertex and the calculated ring neighbor centroid point. The first type of vertexes screened from the three-dimensional digital model by the computer equipment meet preset conditions, and the screened first type of vertexes are not adjacent vertexes.
In one embodiment, the computer device establishes a global coordinate system for the acquired three-dimensional digital model, and obtains coordinate values of each vertex in the three-dimensional digital model in the global coordinate system, wherein the acquired coordinate values comprise an abscissa (X), an ordinate (Y) and an ordinate (Z). For each vertex in the three-dimensional digital model, the computer equipment respectively obtains the total number of the one-ring neighbor vertices of each vertex and the respective coordinate values of the multiple one-ring neighbor vertices of the vertex, correspondingly sums the obtained coordinate values of the one-ring neighbor vertices belonging to the same vertex respectively, and then averages the summed coordinate values according to the total number of the corresponding one-ring neighbor vertices, thereby obtaining the coordinate value of the one-ring neighbor centroid point of the vertex.
In the above embodiment, according to a ring of neighboring vertices of each vertex and a corresponding ring of neighboring centroid points, a first class of vertices for embedding the first heavy watermark is screened from the three-dimensional digital model, and the screened first class of vertices satisfy a preset condition and are not neighbor vertices, so that the first class of vertices for embedding the first heavy watermark are independent of each other, and thus the robustness of the first heavy watermark is improved.
In one embodiment, the step of screening the first type of vertices that meet the preset condition and are not neighbor vertices includes: respectively calculating two normal vectors of a ring neighbor centroid point according to two normal vector calculation modes according to a ring neighbor centroid point and a ring neighbor vertex of each vertex in the three-dimensional digital model; selecting a first type of vertex from the three-dimensional digital model; the ratio of the maximum value to the minimum value of the distance between the ring neighbor vertex of the selected first-class vertex and the ring neighbor centroid point is smaller than a preset ratio threshold, the normal vector included angle between two normal vectors of the ring neighbor centroid point of the selected first-class vertex is larger than a preset included angle threshold, and the selected first-class vertices are not neighbor vertices.
The normal vector of a point may be an average of normal vectors of the surfaces to which the point belongs. The preset ratio threshold is a preset threshold for comparison with the distance ratio, say 4. The preset included angle threshold is a threshold preset for comparing with the included angle of two normal vectors, so as to screen the vertex meeting the condition, for example, 0.1.
Specifically, for each vertex in the three-dimensional digital model, the computer device calculates a ring neighbor centroid point of the corresponding vertex according to a ring neighbor vertex of each vertex, and calculates two normal vectors of the ring neighbor centroid point of each vertex according to two normal vector calculation methods according to the ring neighbor vertex and the ring neighbor centroid point of each vertex. And the computer equipment selects a first type of vertex which meets the first watermark embedding condition from the three-dimensional digital model according to a ring neighbor vertex and a ring neighbor centroid point of each vertex and two normal vectors of the ring neighbor centroid point.
Further, the first type of vertex screened by the computer equipment simultaneously meets three conditions:
(1) the ratio of the maximum value to the minimum value of the distance between the ring neighbor vertex and the ring neighbor centroid point of the first type vertex is smaller than a preset ratio threshold.
(2) And the normal vector included angle between two normal vectors of a ring of adjacent centroid points of the first type of vertex is greater than a preset included angle threshold value.
(3) The first type of vertex is not a neighbor vertex.
When the computer device screens the first type of vertexes which simultaneously satisfy the three conditions from the three-dimensional digital model, the first type of vertexes can be screened according to any combination sequence, for example, the vertexes which satisfy the condition (1) can be selected firstly, then the vertexes which satisfy the condition (2) can be selected from the selected vertexes, and finally the vertexes which are not mutually adjacent vertexes can be screened from the selected vertexes to serve as the screened first type of vertexes.
In one embodiment, the three-dimensional digital model M may be expressed as M ═ V without considering the attribute information of each vertex in the three-dimensional digital modelm,KmIn which VmM-1 represents a vertex set of the three-dimensional digital model M, M represents the number of vertices, KmIs a set of topological connections between each vertex and each vertex of M, set KmThe elements in (1) may include 3 types: vertex ViEdge E ═ i }, edge Ei,jPlane F, { i, j }, plane Fi,j,kI, j, k. If the edge { i, j }. belongs to KmVertices { i } and { j } are then mutually called neighbor vertices. A ring neighbor vertex for vertex { i } may be defined as N1(i)={j|{i,j}∈KmTwo-ring neighbor vertex N of vertex { i }2(i) Is a ring of neighbor vertices N1(i) One ring of neighbors of the vertex.
For the three-dimensional digital model M, the computer device bases on each vertex ViOne-ring neighbor vertex N of1(i) Respectively calculating corresponding one-ring neighbor centroid points ZiThen a ring is adjacent to the centroid point ZiAnd correspond to the same vertex ViEach one-ring neighbor vertex N of1(i) Connecting to obtain multiple neighboring centroid points ZiTriangles with common vertices, denoted T (Z)i) The number of triangles is marked as N. The normal vector of the triangle obtained is marked as nijUsing the normal vector N of the N trianglesijAs a ring of neighboring centroid points ZiNormal vector n ofe. The specific calculation formula is as follows:
Figure BDA0001505111030000121
then respectively calculating T (Z)i) Area S of each triangleijFrom the normal vector n of each triangleijAnd the triangular area SijAnother normal vector n is calculated by squaringtThe specific calculation formula is as follows:
Figure BDA0001505111030000122
separately calculating V corresponding to each vertexiEach one-ring neighbor vertex N of1(i) And a ring of neighboring centroid points ZiThe distances between them, constitute the corresponding set of distances l (i). Selecting L from three-dimensional digital model by computer equipmentmax(i)/Lmin(i) Vertices less than a predetermined ratio threshold, wherein Lmax(i) And Lmin(i) Respectively representing the maximum and minimum values in the set of distances.
Further, the computer device calculates each vertex V selected separatelyiOne-ring neighbor centroid point Z ofiTwo normal vectors neAnd ntThe normal vector angle phi between them. And selecting the vertexes with the normal vector included angle phi larger than a preset included angle threshold value from the selected vertexes. The preset included angle threshold is self-defined according to needs. And the computer equipment eliminates the vertexes which are mutually adjacent vertexes from the selected vertexes, and screens the vertexes which are not mutually adjacent vertexes as the first type of vertexes.
In the above-described embodiment, the first watermark embedding condition is specifically divided into three conditions, and the first-class vertices serving as the embedded first watermark are screened from the three-dimensional digital model based on the three conditions. The first-class vertexes are screened based on the three conditions, so that the invisibility of the watermark embedded in the first-class vertexes is ensured, the watermark embedding accuracy is improved, the watermark embedding ambiguity is effectively avoided, and the watermark robustness is improved.
In an embodiment, the method for embedding a double blind watermark in a three-dimensional digital model further includes: the second-class vertexes corresponding to the selected two-ring neighbor vertexes exist, and the selected two-ring neighbor vertexes are only connected with two one-ring neighbor vertexes of the corresponding second-class vertexes; in a triangle formed by the selected two-ring neighbor vertexes and the two one-ring neighbor vertexes, the base angles of the two one-ring neighbor vertexes are acute angles; selecting a normal vector included angle of a centroid point of a first ring neighbor of the vertexes of the two ring neighbors to be smaller than a preset included angle threshold value; and selecting normal vector included angles of the centroid points of the ring neighbors of the two ring neighbor vertexes, which are smaller than a preset included angle threshold value.
Specifically, the computer device screens out second-class vertexes meeting preset conditions from the three-dimensional digital model embedded with the first heavy watermark, wherein the screened second-class vertexes comprise the first-class vertexes embedded with the first heavy watermark. And the computer equipment selects the two-ring neighbor vertex which meets the second watermark embedding condition from the two-ring neighbor vertices of the screened second type of vertex. The selected two-ring neighbor vertex simultaneously satisfies the following four conditions:
(1) the two-ring neighbor vertices are connected only with two one-ring neighbor vertices of the corresponding second-class vertex. Wherein the two-ring neighbor vertex is a two-ring neighbor vertex of the second type of vertex.
(2) In a triangle formed by the two adjacent vertexes of the two rings and the two adjacent vertexes of the one ring, the base angles of the two adjacent vertexes of the one ring are acute angles.
(3) And the normal vector included angle of the centroid point of one ring of neighbors at the vertex of the two rings of neighbors is smaller than a preset included angle threshold value. Wherein, a ring neighbor centroid point of the two-ring neighbor vertex is a ring neighbor centroid point calculated according to a ring neighbor vertex of the two-ring neighbor vertex.
(4) And the normal vector included angle of the centroid point of each ring neighbor of the two ring neighbor vertexes is smaller than a preset included angle threshold value.
In the embodiment, the two-ring neighbor vertexes used for embedding the second watermark are screened based on the preset condition and the second watermark embedding condition, so that the embedding invariance of partial vertexes in the three-dimensional digital model as the watermark is kept unchanged, and the robustness of the embedded watermark is improved. And the first watermark and the second watermark embedded in the three-dimensional digital model are independent and do not interfere with each other through the constraint limitation of the embedding condition of the second watermark, so that the robustness of the watermarks is further improved.
In an embodiment, the method for embedding a double blind watermark in a three-dimensional digital model further includes: dividing a preset angle range into a plurality of angle groups; the number of the angle groups is equal to the total number of the digits of the watermark numerical value sequence; each angle group respectively corresponds to each digit of the watermark numerical value sequence; determining the digit corresponding to the two-ring neighbor vertex in the watermark numerical sequence according to the angle group of the vertex angle of the second type vertex in a triangle formed by the second type vertex corresponding to the selected two-ring neighbor vertex and two one-ring neighbor vertices connecting the two-ring neighbor vertex and the second type vertex; and determining the watermark values corresponding to the vertexes of the two-ring neighbors according to the digits of the watermark numerical value sequence.
The preset angle range is a preset angle range. The preset angle range may specifically be (0, pi). The angle group is used to represent an angle range composed of a plurality of angle values.
Specifically, the computer device obtains a preset angle range and the total number of digits of the obtained watermark numerical sequence, divides the obtained preset angle range into a plurality of angle groups according to the total number of digits of the watermark numerical sequence, obtains the number of the angle groups equal to the total number of digits of the watermark numerical sequence, and respectively establishes a one-to-one correspondence relationship between each angle group and each digit of the watermark numerical sequence. In the three-dimensional digital model, the computer device obtains the angle of the vertex angle of the second type vertex in a triangle formed by two one-ring neighbor vertexes connected between the selected two-ring neighbor vertexes and the corresponding second type vertex and the second type vertex, and judges the angle group to which the obtained angle belongs.
Further, the computer device determines the corresponding relation between the second type vertex and the digits in the watermark numerical value sequence according to the angle group to which the vertex angle where the second type vertex is located belongs and the corresponding relation between the angle group and each digit in the watermark numerical value sequence, so as to determine the corresponding relation between the second type vertex and the two-ring neighbor vertex of the second type vertex in the watermark numerical value sequence. And determining the two-ring neighbor vertex corresponding to the digit of the watermark numerical sequence, wherein the two-ring neighbor vertex accords with the second watermark embedding condition and is connected with the second type of vertex through the two one-ring neighbor vertices forming the triangle. And the computer equipment respectively determines the watermark values corresponding to the selected two-ring neighbor vertexes according to the corresponding relation between the digits in the watermark numerical value sequence and the selected two-ring neighbor vertexes so as to correspondingly adjust the positions of the corresponding two-ring neighbor vertexes according to the corresponding relation.
In one embodiment, each second-class vertex in the three-dimensional digital model and two ring-neighbor vertices in the second-class vertex, which meet the second watermark embedding condition, and two ring-neighbor vertices connecting the second-class vertex and the two ring-neighbor vertices form a corresponding subunit. In each subunit, two triangles are formed by the second-class vertex and the two-ring neighbor vertex and the two one-ring neighbor vertices respectively. And according to the vertex angle of the second vertex in each subunit, dividing the subunits into a plurality of unit groups with the number equal to the total number of digits in the watermark numerical sequence, and respectively determining the corresponding relation between the plurality of unit groups and each digit in the watermark numerical sequence according to the second watermark by determining the angle group to which the vertex angle of the second vertex in the divided triangle belongs. Each sub-element within each group of elements corresponds to the same digit in the sequence of watermark values, with the same watermark value embedded for the two-ring neighbor vertices within each group of elements.
In one embodiment, the total number of digits of the watermark value sequence is w, the vertex angle range where the second type vertex in each subunit is located is (a pi, b pi), the vertex angle range is divided into w groups, and each group corresponds to an angle range of w
Figure BDA0001505111030000151
In the above embodiment, by obtaining the angle groups whose number is equal to the total number of the digits of the watermark numerical sequence, in the triangle formed by the second vertex and the two one-ring neighbor vertices connecting the second vertex and the corresponding two-ring neighbor vertex conforming to the second watermark embedding condition, the numerical values corresponding to the corresponding two-ring neighbor vertices are determined according to the angle group to which the vertex where the second vertex is located belongs, so as to correspondingly adjust the positions of the corresponding two-ring neighbor vertices according to the determined numerical values, thereby embedding the watermark numerical sequence into the three-dimensional digital model in order, and ensuring the order and accuracy of watermark embedding.
In an embodiment, in the method for embedding a double blind watermark in a three-dimensional digital model, step S216 includes: determining the numerical value corresponding to the vertex of the two-ring neighbor according to the projection position of the selected vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor; the first ring neighbor edge is a connecting line of two first ring neighbor vertexes corresponding to the two second ring neighbor vertexes; the first ring neighbor vertex is a first ring neighbor vertex which is connected with the second ring neighbor vertex and the corresponding second type vertex; when the value corresponding to the vertex of the two-ring neighbor is not equal to the watermark value, determining the projection position of the adjusted vertex of the two-ring neighbor on the edge of the one-ring neighbor according to the watermark value, and correspondingly adjusting the position of the vertex of the two-ring neighbor according to the projection position.
The projection position is used for representing the corresponding position when the vertex of the two-ring neighbor is projected on the edge of the one-ring neighbor. Specifically, the computer device selects two-ring neighbor vertices meeting the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertices, and uses a connecting line of two one-ring neighbor vertices connected between the second type of vertices and the selected two-ring neighbor vertices as one-ring neighbor edges of the second type of vertices corresponding to the two-ring neighbor vertices. And the computer equipment projects the selected two-ring neighbor vertex on the corresponding one-ring neighbor edge to obtain a corresponding projection position, and respectively determines the respective corresponding numerical values of the selected two-ring neighbor vertex according to the projection position. And the computer equipment respectively compares the numerical value corresponding to each selected two-ring neighbor vertex with the corresponding watermark value according to the corresponding relation between the selected two-ring neighbor vertex and the watermark value in the watermark numerical value sequence, correspondingly adjusts the projection position of the two-ring neighbor vertex on the corresponding one-ring neighbor side according to the watermark value when the numerical value is not equal to the corresponding watermark value, and correspondingly adjusts the position of the corresponding two-ring neighbor vertex according to the adjusted projection position.
In one embodiment, when the numerical value of the vertex of the two-ring neighbor is not equal to the corresponding watermark value, the computer device replaces the numerical value corresponding to the vertex of the two-ring neighbor with the watermark value corresponding to the vertex of the two-ring neighbor, adjusts the projection position of the vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor according to the replaced numerical value, and correspondingly adjusts the position of the vertex of the two-ring neighbor in the three-dimensional digital model according to the adjusted projection position.
In one embodiment, the computer device determines whether the position of the corresponding two-ring neighbor vertex needs to be adjusted and the adjusted position according to the selected watermark value corresponding to the two-ring neighbor vertex and whether the projection position of the two-ring neighbor vertex on the one-ring neighbor edge meets the preset matching condition. When the watermark value corresponding to the two-ring neighbor vertex and the projection position of the two-ring neighbor vertex on the one-ring neighbor edge meet the preset matching condition, the position of the two-ring neighbor vertex is kept unchanged, when the watermark value does not meet the preset matching condition, the projection position of the corresponding two-ring neighbor vertex on the one-ring neighbor edge is adjusted to the preset projection position according to the watermark value, and then the position of the two-ring neighbor vertex is correspondingly adjusted according to the preset projection position.
In one embodiment, the watermark value corresponding to the vertex D of the neighbor of the two rings is denoted by α, which may be 0 or 1. Two one-ring neighbor vertexes are respectively represented by A and C, one-ring neighbor side formed by connecting lines between A and C is recorded as AC, and the projection position of the two-ring neighbor vertex D projected on the one-ring neighbor side AC is recorded as B. If the watermark value alpha and the projection position B corresponding to the vertex D of the two-ring neighbor satisfy the formula at the same time:
Figure BDA0001505111030000171
or
Figure BDA0001505111030000172
The position of the two-ring neighbor vertex D is kept unchanged. If the watermark value alpha and the projection position B corresponding to the vertex D of the two-ring neighbor satisfy the formula at the same time:
Figure BDA0001505111030000173
or
Figure BDA0001505111030000174
And correspondingly adjusting the positions of the two-ring neighbor vertexes D respectively, so that the projection positions B of the adjusted two-ring neighbor vertexes D projected on a ring neighbor edge AC respectively satisfy the formula:
Figure BDA0001505111030000175
or
Figure BDA0001505111030000176
The position adjustment process of the vertex D of the specific two-ring neighbor is as follows: determining the position of the projection position B according to a formula which is correspondingly determined by the projection position B of the adjusted two-ring neighbor vertex D on the one-ring neighbor edge AC, determining a projection plane which is vertical to the one-ring neighbor edge AC according to the determined projection position B and the one-ring neighbor edge AC, projecting the corresponding two-ring neighbor vertex D to the projection plane, obtaining a corresponding projection position in the projection plane, and taking the obtained projection position as the position of the adjusted two-ring neighbor vertex D.
In the above embodiment, according to the correspondence between the projection positions of the two-ring neighbor vertices on the corresponding one-ring neighbor edges and the watermark values corresponding to the two-ring neighbor vertices in the watermark value sequence, the two-ring neighbor vertices whose positions need to be adjusted and the positions of the adjusted two-ring neighbor vertices are determined, and the positions of the corresponding two-ring neighbor vertices are correspondingly adjusted, so that the watermark value sequence is embedded into the three-dimensional digital model in order.
In one embodiment, the step of obtaining the pixel point characteristic attribute of the two-dimensional image used as the first heavy watermark comprises: acquiring a two-dimensional image used as a first heavy watermark; transforming the two-dimensional image into a frequency spectrum domain to obtain a corresponding frequency spectrum matrix; taking an absolute value of the frequency spectrum matrix; and scrambling the frequency spectrum matrix after the absolute value is taken according to a preset scrambling condition to obtain the pixel point characteristic attribute of the two-dimensional image corresponding to the frequency spectrum matrix.
The frequency spectrum domain is used for representing a transform domain corresponding to the space domain represented by the pixel points. The spectral domain may particularly be a transform domain representing information in frequency and amplitude. The spectral matrix is used to represent a two-dimensional matrix in the spectral domain. Taking the absolute value is used to change the negative value of the spectrum matrix to a positive value of the same magnitude.
Specifically, the computer device obtains a two-dimensional image used as a first watermark embedded in the three-dimensional digital model, transforms the obtained two-dimensional image into a frequency spectrum domain according to a preset transformation mode to obtain a corresponding frequency spectrum matrix, takes an absolute value of the obtained frequency spectrum matrix, scrambles the frequency spectrum matrix after taking the absolute value according to a preset scrambling condition, and obtains a pixel point characteristic attribute of the two-dimensional image corresponding to the frequency spectrum matrix.
In one embodiment, the computer device performs two-dimensional discrete cosine transform on the acquired two-dimensional image to obtain a corresponding frequency spectrum matrix, and then performs Arnold scrambling on the frequency spectrum matrix with the absolute value taken to obtain a pixel characteristic attribute of each pixel of the corresponding two-dimensional image.
In one embodiment, the computer device obtains a two-dimensional image S with a size w1 × w2, performs two-dimensional discrete cosine transform on the two-dimensional image, and records the transformed two-dimensional image as S1, where the transform formula is as follows:
Figure BDA0001505111030000181
(u=0,1,...,w1-1;v=0,1,...,w2-1)
Figure BDA0001505111030000182
Figure BDA0001505111030000183
wherein x and y represent spatial coordinate values, i.e. row-column index values of the two-dimensional image S. u and v represent spectral domain coordinate values, i.e., row-column index values of the transformed two-dimensional image S1.
In the above embodiment, the two-dimensional image used as the first heavy watermark is preprocessed, and the preprocessed two-dimensional image is embedded into the three-dimensional digital model, so that the robustness of the watermark is improved, and each pixel point in the frequency spectrum matrix obtained by transformation contains all information of the corresponding two-dimensional image, so that the robustness of the watermark is further improved.
In an embodiment, the method for embedding a double blind watermark in a three-dimensional digital model further includes: acquiring two normal vectors and a normal vector included angle between the two normal vectors, which are respectively calculated according to two normal vector calculation modes, of a ring of neighbor centroid points of the first-class vertexes; determining pixel points corresponding to the first-class vertexes in the two-dimensional image according to normal vector included angles of a ring of neighboring centroid points of the first-class vertexes and the characteristic attributes of the pixel points of the two-dimensional image; respectively establishing respective local spherical coordinate systems of the first class vertexes according to two normal vectors of a ring neighbor centroid point and a ring neighbor centroid point of the first class vertex; determining the spherical coordinate values of the first type vertexes in the respective local spherical coordinate systems of the first type vertexes; step S208 includes: respectively encoding the row and column index value of each pixel point in the two-dimensional image into corresponding angle values according to preset encoding conditions, and obtaining the characteristic attribute of the encoded pixel points; and in the three-dimensional digital model, adjusting the spherical coordinate value of the corresponding first-class vertex according to the coded pixel point characteristic attribute.
The local spherical coordinate system is a spherical coordinate system established in a local range. The local spherical coordinate system may specifically be a spherical coordinate system established corresponding to each vertex in the three-dimensional digital model. The spherical coordinate values are used for representing the positions of the vertexes in the corresponding local spherical coordinate systems. The ball coordinate values may specifically include two angle values and a distance value. The two angle values may be angle values formed by a connecting line between the vertex and the origin and the vertical axis and the horizontal axis, respectively, and the distance value may be a ratio of a distance between the vertex and the origin to a mean value of distances between the vertex and a ring of neighboring vertices of the vertex. The pixel points are basic units constituting a two-dimensional image. The pixel point values are the values of the respective pixel points in the two-dimensional image. The pixel characteristic attributes may include a row index value, a column index value, and a pixel point value of the pixel. The angle value is a value representing an angular form. The preset encoding condition is a condition preset for changing the row and column index value to the corresponding angle value.
Specifically, the computer device screens out first-class vertexes which accord with a first watermark embedding condition, obtains corresponding one-ring neighbor centroid points according to one-ring neighbor vertexes of each first-class vertex, respectively calculates two normal vectors of the one-ring neighbor centroid points according to two normal vector calculation modes, and calculates a normal vector included angle between the two normal vectors. And the computer equipment determines the first-class vertexes corresponding to the pixel points in the two-dimensional image according to the size of the normal vector included angle of the adjacent centroid points of the first-class vertexes and the size of the pixel value of each pixel point in the two-dimensional image. The computer equipment can respectively establish a one-to-one corresponding relation according to the sequence of the normal vector included angles of the centroid points of the adjacent rings from small to large or from large to small and the sequence of the pixel values of the pixel points from large to small or from small to large, so as to determine the corresponding relation between the pixel points and the first type of vertexes.
Further, for each first-class vertex, the computer device establishes a local spherical coordinate system of the corresponding first-class vertex by taking a ring of neighboring centroid points of the first-class vertex as an origin, taking a normal vector of the ring of neighboring centroid points as a vertical axis, and taking a projection of another normal vector of the ring of neighboring centroid points in a plane determined by the origin and the vertical coordinate as a horizontal axis, and determines spherical coordinate values of the first-class vertex in the respective local spherical coordinate systems. The computer equipment acquires a two-dimensional image used as a first watermark, transforms the two-dimensional image to acquire a corresponding frequency spectrum matrix, scrambles the frequency spectrum matrix with an absolute value, respectively codes a row index value and a column index value of each pixel point of the scrambled two-dimensional image into corresponding angle values according to preset coding conditions, and acquires the characteristic attribute of the pixel point after each pixel point is coded. And determining the corresponding relation between the characteristic attribute of the pixel point after the pixel point is coded and the spherical coordinate value of the first type vertex according to the corresponding relation between the pixel point in the two-dimensional image and the first type vertex. And in the three-dimensional digital model, replacing the spherical coordinate value of the first vertex with the corresponding pixel point characteristic attribute. And correspondingly adjusting the position of the first vertex according to the ball coordinate value after the first vertex is replaced.
In one embodiment, for each vertex of the first type V in the three-dimensional digital model MiOne-ring neighbor centroid point Z ofiRespectively calculating corresponding normal vectors neAnd ntAnd a normal vector angle phi between the two normal vectors. And obtaining the characteristic attribute (W1, W2, I) of the encoded pixel point for each pixel point in the two-dimensional image. And determining the corresponding relation between the first vertex and the pixel point according to the normal vector included angle phi and the characteristic attribute (W1, W2, I) of the pixel point. Computer equipment neighbors center of mass point Z by a ringiAs origin, normal vector neAs the vertical coordinate (Z axis) of the spherical coordinate system, the normal vector ntIn a ring adjacent to the centre of mass point ZiSum normal vector neDetermining projection in plane, taking projection vector obtained by projection as horizontal axis (X axis), and establishing vertex V of first classiThe local spherical coordinate system. Obtaining vertices V of the first typeiBall coordinate values in corresponding local ball coordinate systems
Figure BDA0001505111030000201
Vertex V of the first kindiBall coordinate value of
Figure BDA0001505111030000202
And replacing the corresponding pixel point characteristic attributes (W1, W2, I). According to the first class of vertex ViThe replaced spherical coordinate values (W1, W2, I) are calculated to obtain a first vertex ViThe first vertex V is set in the coordinate value of the global coordinate system corresponding to the three-dimensional digital modeliAdjusting to the position corresponding to the coordinate value.
Wherein each vertex V of the first type in the three-dimensional digital modeliSolving the customized calculation formula of the ball coordinate values in the respective local ball coordinate systems, wherein the specific calculation formula is as follows:
r=sqrt((x-x0)2+(y-y0)2+(z-z0)2)/ρ
θ=arccos(z-z0|/r)
Figure BDA0001505111030000203
wherein x, y and z respectively represent the first vertex type ViCoordinate values in a global spherical coordinate system. x is the number of0、y0And z0Respectively representing first type vertexes ViOne-ring neighbor centroid point Z ofiCoordinate values in a global spherical coordinate system. ρ is the first vertex ViTo a vertex V of the first kindiOne-ring neighbor vertex N of1(i) The mean of the distances between.
In one embodiment, the row index value w1 of each pixel point in the transformed two-dimensional image S1iAnd a column index value w2iRespectively coding the angle values W1 according to preset coding conditionsiAnd W2iAcquiring each pixel point after encoding (w 1)i,w2i) Characteristic attribute of pixel point (W1)i,W2i,Ii). Wherein, IiIs a pixel point (w 1)i,w2i) Pixel point values of (2). Taking into account invisibility of embedded watermarks, λ1The value may be set to 0.5, λ2The value can be set to any value between 0.25 and 0.4, λ3The value may be set to 1. The preset encoding conditions are as follows:
Figure BDA0001505111030000211
Figure BDA0001505111030000212
in the above embodiment, the embedding order of embedding the first watermark and the watermark information embedded in each first-class vertex are determined according to the normal vector included angle of the one-ring neighbor centroid point of the first-class vertex and the characteristic attribute of each pixel point after encoding in the two-dimensional image, and the corresponding watermark information is embedded in the three-dimensional digital model by correspondingly adjusting the position of the first-class vertex, so that the order of watermark embedding and the invisibility of embedded watermark are ensured, and the robustness of the watermark is improved.
In a specific embodiment, as shown in fig. 3, a method for embedding a three-dimensional digital model double blind watermark is provided. The method comprises the following steps:
s302, acquiring a three-dimensional digital model.
S304, screening the first type of vertexes from the three-dimensional digital model according to the first watermark embedding condition.
S306, respectively establishing a local spherical coordinate system of each first type vertex; and determining the spherical coordinate values of the first type of vertexes in the local spherical coordinate systems of the first type of vertexes.
S308, acquiring a two-dimensional image used as a first heavy watermark; transforming the two-dimensional image into a frequency spectrum domain to obtain a corresponding frequency spectrum matrix; taking an absolute value of the frequency spectrum matrix; and scrambling the frequency spectrum matrix after the absolute value is taken according to a preset scrambling condition to obtain the pixel point characteristic attribute of the two-dimensional image corresponding to the frequency spectrum matrix.
S310, respectively coding the row and column index values of each pixel point in the two-dimensional image into corresponding angle values according to preset coding conditions, and obtaining the characteristic attribute of the coded pixel points.
S312, two normal vectors and a normal vector included angle between the two normal vectors are obtained by respectively calculating the mass center point of the neighbor of the first-class vertex according to two normal vector calculation modes.
And S314, determining pixel points corresponding to the first-class vertexes in the two-dimensional image according to the normal vector included angle of the first-class vertexes and the pixel point characteristic attributes of the two-dimensional image.
And S316, in the three-dimensional digital model, adjusting the corresponding spherical coordinate value of the first vertex according to the coded pixel point characteristic attribute to obtain an adjusted three-dimensional digital model, namely the three-dimensional digital model embedded with the first heavy watermark.
And S318, screening the second type of vertexes which accord with the preset conditions from the adjusted three-dimensional digital model.
S320, selecting the two-ring neighbor vertex meeting the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; and the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to the vertex referred to when the first class vertex is screened according to the first watermark embedding condition.
S322, acquiring a watermark numerical value sequence used as a second watermark; the sequence of watermark values includes the watermark value at each digit.
S324, dividing a preset angle range into a plurality of angle groups; determining the digit corresponding to the two-ring neighbor vertex in the watermark numerical sequence according to the angle group of the vertex angle of the second type vertex in a triangle formed by the second type vertex corresponding to the selected two-ring neighbor vertex and two one-ring neighbor vertices connecting the two-ring neighbor vertex and the second type vertex; and determining the watermark values corresponding to the vertexes of the two-ring neighbors according to the digits of the watermark numerical value sequence.
S326, determining the corresponding numerical value of the vertex of the two-ring neighbor according to the projection position of the selected vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor.
And S328, when the numerical value corresponding to the vertex of the two-ring neighbor is not equal to the watermark value, determining the projection position of the adjusted vertex of the two-ring neighbor on the edge of the one-ring neighbor according to the watermark value, and correspondingly adjusting the position of the vertex of the two-ring neighbor according to the projection position to obtain the three-dimensional digital model embedded with the second watermark.
In the above embodiment, two watermarks are sequentially embedded in the three-dimensional digital model, the embedded first watermark is a preprocessed two-dimensional image, and the embedded second watermark is a watermark numerical sequence, so that the robustness of the watermark is improved. And respectively screening the vertexes embedded with the two watermarks by multiple screening conditions, so that the vertexes embedded with the first and second watermarks are independent from each other, and the robustness of the watermarks is further improved.
In one embodiment, as shown in fig. 4, a method for extracting a three-dimensional digital model double blind watermark is provided. The present embodiment is illustrated by applying the method to the computer apparatus in fig. 1 described above. The method specifically comprises the following steps:
s402, acquiring a three-dimensional digital model.
Specifically, the computer device acquires the three-dimensional digital model, and extracts the watermark from the acquired three-dimensional digital model according to a preset watermark extraction mode so as to determine whether the watermark is embedded in the three-dimensional digital model.
S404, screening the first type of vertexes from the three-dimensional digital model according to the first watermark embedding condition.
Specifically, the computer device obtains a first watermark embedding condition, screens first-class vertexes from the obtained three-dimensional digital model according to the first watermark embedding condition, and the screened first-class vertexes meet the first watermark embedding condition. And the screened first-class vertexes are vertexes which are possibly embedded with the first heavy watermark in the three-dimensional digital model.
In one embodiment, for the acquired three-dimensional digital model, the computer device calculates a ring neighbor centroid point of each vertex according to a ring neighbor vertex of each vertex, and calculates two normal vectors of the ring neighbor centroid point of each vertex according to two normal vector calculation methods according to the ring neighbor vertex and the ring neighbor centroid point of each vertex. And selecting a first type of vertex which meets the first watermark embedding condition from the three-dimensional digital model according to a ring neighbor vertex and a ring neighbor centroid point of each vertex and two normal vectors of the ring neighbor centroid point.
Further, the screened first-type vertexes simultaneously satisfy the following three conditions: the ratio of the maximum value to the minimum value of the distance between the first-class vertex and the first-ring neighbor centroid point is smaller than a preset ratio threshold; secondly, the included angle of the normal vectors between the two normal vectors of the centroidal points of the adjacent rings of the first-class vertexes is larger than a preset included angle threshold value; thirdly, the first type of vertex is not a neighbor vertex. And the preset ratio threshold and the preset included angle threshold can be respectively equal to the preset values when the first watermark is embedded.
S406, determining the corresponding pixel point characteristic attribute according to the position of the first-class vertex.
Specifically, the computer device obtains the position of each screened first-class vertex, determines a pixel point corresponding to each first-class vertex, and determines the pixel point characteristic attribute of each pixel point according to the determined corresponding relation.
In one embodiment, the computer device obtains a sphere coordinate value of each first type vertex in a respective local sphere coordinate system, obtains a two-dimensional matrix with a preset size, determines a corresponding relation between each pixel point in the two-dimensional matrix and each first type vertex according to the two-dimensional matrix and the sphere coordinate value of each first type vertex, and determines a pixel point characteristic attribute of a pixel point according to the sphere coordinate value of each first type vertex. Wherein the preset size of the two-dimensional matrix is consistent with the size of the two-dimensional image used as the first watermark.
And S408, restoring the two-dimensional image used as the first watermark according to the characteristic attribute of the pixel point.
Specifically, the computer device respectively obtains the pixel point characteristic attributes of corresponding pixel points in the two-dimensional matrix according to the position of each first-class vertex, restores corresponding two-dimensional images according to the pixel point characteristic attributes of each pixel point, and uses the obtained two-dimensional images as the extracted first watermark.
In one embodiment, the computer device restores the two-dimensional image with the determined pixel point characteristic attribute of each pixel point to a corresponding two-dimensional image according to a preset restoring mode, and the restored two-dimensional image is used as a first watermark embedded into the three-dimensional digital model.
S410, screening second type vertexes which accord with preset conditions from the three-dimensional digital model; the preset condition is included in the first watermark embedding condition.
Specifically, the computer device acquires the three-dimensional digital model, and screens second-class vertexes which meet preset conditions from the acquired three-dimensional digital model. The screened second type of vertexes simultaneously meet the following two conditions: the ratio of the maximum value to the minimum value of the distance between the one-ring neighbor vertex and the one-ring neighbor centroid point of the second type vertex is smaller than a preset ratio threshold; and secondly, the included angle of the normal vectors between the two normal vectors of the adjacent centroid points of the ring of the second type of vertexes is larger than the preset included angle threshold value. The preset conditions for screening the second type of vertexes include the first watermark embedding conditions, and the screened second type of vertexes include the first type of vertexes. And when the preset condition is consistent with the condition for screening the second type of vertexes when the second watermark is embedded.
In one embodiment, the three-dimensional digital model of the second type of vertex screened by the computer device may be the three-dimensional digital model from which the first heavy watermark is extracted, or the three-dimensional digital model from which the first heavy watermark has not been extracted.
S412, selecting the two-ring neighbor vertex meeting the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; and the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to the vertex referred to when the first class vertex is screened according to the first watermark embedding condition.
Specifically, the computer device screens out second type vertexes which meet preset conditions from the three-dimensional digital model, selects two ring neighbor vertexes which meet second watermark embedding conditions from two ring neighbor vertexes of the screened second type vertexes according to the second watermark embedding conditions, and uses the selected two ring neighbor vertexes as vertexes for embedding the second watermark. The selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a one-ring neighbor vertex of the first class vertex referenced in the screening of the first class vertex.
Further, the selected two-ring neighbor vertices simultaneously satisfy the following four conditions: one is that the two-ring neighbor vertex is connected with only two one-ring neighbor vertices of the corresponding second type vertex, wherein the two-ring neighbor vertex is the two-ring neighbor vertex of the second type vertex; in a triangle formed by the two adjacent vertexes of the two rings and the two adjacent vertexes of the one ring, the base angles of the two adjacent vertexes of the one ring are acute angles; thirdly, the normal vector included angle of a ring neighbor centroid point of the two ring neighbor vertex is smaller than a preset included angle threshold value, wherein the ring neighbor centroid point of the two ring neighbor vertex is a ring neighbor centroid point calculated according to the ring neighbor vertex of the two ring neighbor vertex; and fourthly, the normal vector included angle of the centroid point of each ring neighbor of the vertex of the two ring neighbors is smaller than a preset included angle threshold value.
And S414, restoring the watermark numerical value sequence used as the second watermark according to the watermark value matched with the position of the selected vertex of the two-ring neighbor and the corresponding digit of the selected vertex of the two-ring neighbor.
Specifically, the computer device selects two-ring neighbor vertices meeting the second watermark embedding condition from two-ring neighbor vertices of the second type of vertices, obtains the position of each selected two-ring neighbor vertex, and determines the digit corresponding to each two-ring neighbor vertex in the watermark value sequence and the watermark value of the corresponding digit respectively. And restoring the corresponding watermark numerical value sequence according to the corresponding relation between the digit and the watermark value, wherein the restored watermark numerical value sequence is used as a second watermark extracted from the three-dimensional digital model.
In one embodiment, the order of extracting the first and second heavy watermarks from the three-dimensional digital model by the computer device is not limited, and only any one of the double watermarks may be extracted as needed.
According to the method for extracting the double blind watermarks of the three-dimensional digital model, corresponding first-class vertexes and second-class vertexes are respectively screened out from the three-dimensional digital model according to the first watermark embedding condition and the preset condition, and the two-dimensional image is restored according to the screened first-class vertexes, namely the first watermark is extracted from the three-dimensional digital model. And screening the two-ring neighbor vertexes which accord with the embedding condition of the second watermark from the screened second-class vertexes, and restoring the corresponding watermark numerical value sequence according to the screened two-ring neighbor vertexes, namely extracting the second watermark from the three-dimensional digital model, thereby realizing the extraction of the double watermark and improving the robustness of the watermark in the three-dimensional digital model. In the double watermark extraction process, the watermark extraction process is mutually independent, and the three-dimensional digital model without the embedded watermark is not involved, so that the attack resistance robustness of the embedded watermark in the three-dimensional digital model is further improved.
In one embodiment, step S406 includes: establishing respective local spherical coordinate systems of the first type of vertexes; acquiring spherical coordinate values of the first type of vertexes in respective local spherical coordinate systems; the ball coordinate values include two angle values and a distance value; respectively coding two angle values of the first type of vertex according to a preset reverse coding condition to obtain corresponding vertex attribute values; acquiring a two-dimensional matrix with a preset size; the two-dimensional matrix is a zero matrix; determining pixel points corresponding to the first class vertexes in the two-dimensional matrix according to the vertex attribute values corresponding to the first class vertexes and the row-column index values of the two-dimensional matrix; and replacing the pixel point value of the pixel point corresponding to the first-class vertex with the distance value of the corresponding first-class vertex to obtain the characteristic attribute of the pixel point of the replaced two-dimensional matrix.
And the preset anti-coding condition is used for coding the angle value into a corresponding vertex attribute value. The preset inverse coding condition corresponds to the preset coding condition when the first watermark is embedded, and the preset inverse coding condition and the preset coding condition are inverse processes. The vertex attribute value is used for representing the coordinate value after the first type vertex is coded. The pixel points are basic units forming a two-dimensional matrix. A zero matrix is a matrix where the pixels are all zero.
Specifically, for each first-class vertex in the three-dimensional digital model, the computer device acquires a corresponding ring neighbor centroid point according to a ring neighbor vertex of each first-class vertex, establishes a corresponding local spherical coordinate system according to the ring neighbor vertex and the ring neighbor centroid point of each first-class vertex, and acquires a spherical coordinate value of each first-class vertex in the respective local spherical coordinate system. The local spherical coordinate system takes a ring of adjacent centroid points of the first-class vertex as an origin, one normal vector of the ring of adjacent centroid points as a vertical axis, and the projection of the other normal vector of the ring of adjacent centroid points in a plane determined by the origin and the vertical coordinate as a horizontal axis. The acquired spherical coordinate values comprise an angle value formed by a connecting line between the first-class vertex and the origin and the vertical axis, an angle value formed by the connecting line and the horizontal axis, and a distance ratio obtained by comparing two distances, wherein the two distances are respectively the distance between the first-class vertex and the origin and the mean value of the distances between the first-class vertex and a ring neighbor vertex.
And further, respectively coding two angle values in the spherical coordinate values of each first type vertex according to a preset reverse coding condition to obtain corresponding vertex attribute values, wherein the obtained vertex attribute values are used for obtaining the pixel point characteristic attributes of corresponding pixel points. The computer equipment acquires a two-dimensional matrix with a preset size, and each pixel point of the acquired two-dimensional matrix is zero. And the computer equipment respectively compares the two angle values after each first type vertex is coded with the row and column index values of all the pixel points in the two-dimensional matrix, so that the pixel points corresponding to the first type vertices in the two-dimensional matrix are determined. And replacing the pixel point value of each pixel point in the two-dimensional matrix with the distance value of the first-class vertex according to the corresponding relation between the pixel point and the first-class vertex.
In one embodiment, for each first type vertex in the three-dimensional digital model, the computer device encodes the angle value of each first type vertex according to a preset anti-coding condition, and the distance value is kept unchanged to obtain a corresponding vertex attribute value. And the computer equipment makes difference between the two angle values after each first type vertex is coded and the row and column index values of the pixel points respectively. And when the difference values are respectively smaller than the corresponding preset threshold values, establishing the corresponding relation between the first-class vertexes and the pixel points, and replacing the pixel point values of the pixel points with the distance values of the first-class vertexes. If the corresponding relation between the pixel point in the two-dimensional matrix and any first vertex in the three-dimensional digital model is not established, keeping the pixel point value of the pixel point unchanged at a zero value.
In one embodiment, for three-dimensional digital model M, computer device filters vertices V of a first typeiThe value of the spherical coordinate is
Figure BDA0001505111030000271
Coding according to preset inverse coding condition
Figure BDA0001505111030000272
And theta, obtaining coded
Figure BDA0001505111030000273
And θ, denoted as Ψ and Θ, to obtain corresponding first-class vertex-encoded vertex attribute values. The preset anti-coding conditions are as follows:
Figure BDA0001505111030000274
Figure BDA0001505111030000275
the obtained two-dimensional matrix is recorded as W, the characteristic attribute of the pixel point of each pixel point is recorded as (W1, W2,0), and W1 and W2 are the row and column index values corresponding to the pixel points respectively. Psi and theta of the vertex of the first type are compared with w1 and w2 of the pixel point respectively, and when the following conditions are met simultaneously, the value of the pixel point 0 is replaced by r of the vertex of the first type. The conditions are as follows:
|w1-Ψ|<λ1&|w2-Θ|<λ2
where λ 1 and λ 2 are two preset thresholds of comparison.
In the above embodiment, for the first-class vertex that may be embedded with the first heavy watermark, the corresponding spherical coordinate value is obtained in the respective local spherical coordinate system, the corresponding relationship between the first-class vertex and the pixel in the two-dimensional matrix is determined according to the encoded spherical coordinate value, so as to determine the pixel attribute feature of each pixel in the two-dimensional matrix, and the corresponding two-dimensional image is restored according to the pixel attribute feature, so that the two-dimensional image used as the first heavy watermark is extracted from the three-dimensional digital model.
In one embodiment, step S408 includes: scrambling the replaced two-dimensional matrix according to a preset reverse scrambling condition; acquiring a two-dimensional coefficient matrix with the same size as the two-dimensional matrix; and performing dot multiplication on the two-dimensional matrix and the two-dimensional coefficient matrix, and transforming the two-dimensional matrix subjected to dot multiplication with the two-dimensional coefficient matrix into a space domain to obtain a two-dimensional image used as the first watermark.
And the preset reverse scrambling condition is used for scrambling the position of each pixel point in the two-dimensional matrix. The preset anti-scrambling condition corresponds to a preset scrambling condition for scrambling the two-dimensional image when the first watermark is embedded. The two-dimensional coefficient matrix may be an identity matrix with positive and negative coefficients. The two-dimensional coefficient matrix may specifically be a two-dimensional matrix composed of positive 1 and negative 1. The dot multiplication is to multiply the pixel points at the corresponding positions in the two-dimensional matrixes correspondingly.
Specifically, the computer device correspondingly replaces the pixel point value of the corresponding pixel point in the two-dimensional matrix according to the distance value of the first-class vertex to obtain a replaced two-dimensional matrix, and scrambles the replaced two-dimensional matrix according to a preset reverse scrambling condition. The computer device obtains a two-dimensional coefficient matrix of equal size to the two-dimensional matrix. The two-dimensional coefficient matrix is a coefficient matrix of a spectrum matrix obtained when a two-dimensional image used as a first watermark is transformed to a spectrum domain in the process of embedding the two-dimensional coefficient matrix into the first watermark. And the computer equipment performs dot multiplication on the scrambled two-dimensional matrix and the obtained two-dimensional coefficient matrix, and transforms the two-dimensional matrix subjected to dot multiplication with the two-dimensional coefficient matrix to a space domain to obtain a two-dimensional image used as the first watermark.
In one embodiment, the computer device Arold scrambles the two-dimensional matrix after replacing the pixel point values. The method for scrambling the two-dimensional image comprises the steps of embedding a first heavy watermark into the two-dimensional image, and conducting a scrambling operation on the two-dimensional image to obtain a random scrambling mode. The computer device acquires a two-dimensional image used as a first watermark, transforms the acquired two-dimensional image into a spectral domain, takes a coefficient matrix of the acquired spectral matrix as a two-dimensional coefficient matrix, and dot-multiplies the two-dimensional coefficient matrix by the scrambled two-dimensional matrix. And performing two-dimensional inverse discrete cosine transform on the two-dimensional matrix subjected to point multiplication to restore a corresponding two-dimensional image, and taking the restored two-dimensional image as a first watermark extracted from the three-dimensional digital model. The dot-multiplied two-dimensional matrix is denoted as S2, and the two-dimensional matrix after the two-dimensional inverse discrete cosine transform is denoted as S0. The transformation formula of the two-dimensional inverse discrete cosine transform is as follows:
Figure BDA0001505111030000281
(u=0,1,...,w1-1;v=0,1,...,w2-1)
Figure BDA0001505111030000282
Figure BDA0001505111030000283
in the above-described embodiment, the two-dimensional matrix of replacement pixel point values is processed to restore the two-dimensional image embedded in the three-dimensional digital model according to the reverse process of preprocessing the two-dimensional image used as the first re-watermark.
In an embodiment, the method for extracting the double blind watermark of the three-dimensional digital model further includes: determining the numerical value corresponding to the vertex of the two-ring neighbor according to the projection position of the selected vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor; and taking the numerical value as the watermark value of the digit corresponding to the vertex of the two-ring neighbor in the watermark numerical value sequence.
Specifically, the computer device screens second-class vertexes which meet preset conditions from the three-dimensional digital model, and selects two-ring neighbor vertexes which meet second watermark embedding conditions from two-ring neighbor vertexes in the screened second-class vertexes. The computer equipment projects the selected two-ring neighbor vertex on the corresponding one-ring neighbor edge to obtain the projection position of the two-ring neighbor vertex on the corresponding one-ring neighbor edge, and determines the value corresponding to the two-ring neighbor vertex according to the projection position.
Further, the computer device divides the preset angle range into angle groups of which the number is equal to the total number of digits of the watermark numerical sequence, and each angle group corresponds to each digit of the watermark numerical sequence. In the three-dimensional digital model, the computer device obtains the angle of the vertex angle of the second type vertex in a triangle formed by two one-ring neighbor vertexes connected between the selected two-ring neighbor vertexes and the corresponding second type vertex and the second type vertex, and judges the angle group to which the obtained angle belongs. And the computer equipment determines the corresponding relation between the second type vertex and the digits in the watermark numerical value sequence according to the angle group to which the vertex angle where the second type vertex is located belongs and the corresponding relation between the angle group and each digit in the watermark numerical value sequence. And the computer equipment takes the value of each second type vertex as the watermark value of the corresponding digit according to the corresponding relation between the second type vertex and the digit in the watermark value sequence, so that the watermark value sequence is restored.
In one embodiment, two one-ring neighbor vertices connected between the second-type vertex and the two-ring neighbor vertex D are respectively denoted by a and C, one-ring neighbor edge formed by a connecting line between a and C is denoted by AC, and a projection position of the two-ring neighbor vertex D projected on the one-ring neighbor edge AC is denoted by B. And determining whether the second watermark is embedded in the corresponding two-ring neighbor vertex D or not and the embedded watermark value alpha according to the projection position B. When the projection position B corresponding to the two-ring neighbor vertex D meets the following condition, the watermark is embedded into the two-ring neighbor vertex D, and the embedded watermark value alpha is 0.
Figure BDA0001505111030000291
When the projection position B corresponding to the two-ring neighbor vertex D meets the following condition, the watermark is embedded into the two-ring neighbor vertex D, and the embedded watermark value alpha is 1.
Figure BDA0001505111030000292
For the three-dimensional digital model M, the second type vertex V screened out by the computer equipmentiOne-ring neighbor vertex N of1(i) Respectively calculating corresponding one-ring neighbor centroid points Zi
In one embodiment, the correspondence between each second-type vertex in the three-dimensional digital model and each digit in the sequence of watermark values is determined in the same manner as the correspondence is determined when the second watermark is embedded.
In the above embodiment, the corresponding numerical value is determined according to the projection position of the second type vertex on the corresponding one-ring neighbor edge, and the numerical value corresponding to each second type vertex is used as the watermark value of the corresponding numerical position in the watermark numerical value sequence, so as to extract the second watermark from the three-dimensional digital model.
In one embodiment, step S414 includes: in the watermark numerical sequence, determining the watermark value of the digit corresponding to the vertex of the two-ring neighbor according to the selected vertex of the two-ring neighbor; accumulating and calculating the watermark value of each digit determined according to the vertex of the two-ring neighbor in the watermark value sequence and the total number corresponding to the watermark value; and when more than one watermark value is corresponding to the digit in the watermark value sequence, screening the watermark value with the maximum total number as the watermark value of the digit to obtain the watermark value sequence used as the second watermark.
Specifically, the computer device determines the corresponding relation between each second-class vertex in the three-dimensional digital model and each digit in the watermark numerical value sequence, each digit in the watermark numerical value sequence can correspond to one or more second-class vertices, determines the watermark value of the corresponding digit according to each second-class vertex based on the corresponding relation between the second-class vertices and the digits, and accumulatively calculates the determined watermark value of the corresponding digit and the total number of the watermark values. And for each digit in the watermark numerical sequence, when the watermark value of the digit determined according to the corresponding second-class vertex is more than one, screening the watermark value with the maximum total number as the watermark value of the corresponding digit, and obtaining the watermark numerical sequence used as a second watermark.
In one embodiment, the watermark value sequence may be a binary sequence, the watermark value of each digit in the watermark value sequence may be 0 or 1, the computer device determines the watermark value of each digit according to the corresponding second-type vertex, and calculates the total number of each watermark value of each digit, the total number of the watermark values 0 corresponding to the digit i is denoted as sum (0), and the total number of the watermark values 1 is denoted as sum (1). And comparing the sizes of sum (0) and sum (1) at the position of the digit i, and taking the watermark value with the larger total number as the watermark value of the digit i.
In the above embodiment, the watermark value of the corresponding digit in the watermark numerical sequence is determined according to each second-class vertex in the three-dimensional digital model, and when more than one watermark value corresponds to each digit, the accuracy of the restored watermark numerical sequence is improved by selecting the watermark value with the largest total number as the watermark value of the corresponding digit, and the accuracy of extracting the second watermark is correspondingly improved, so that the robustness of the watermark against attack is improved.
In an embodiment, the method for extracting the double blind watermark of the three-dimensional digital model further includes: acquiring a verification image for verifying the first watermark; calculating the correlation degree of the restored two-dimensional image and the verification image; when the correlation degree is larger than a first preset correlation degree threshold value, judging that a first re-watermark is embedded in the three-dimensional digital model; and/or, obtaining a verification sequence for verifying the second watermark; calculating the correlation degree of the restored watermark numerical value sequence and the verification sequence; and when the correlation degree is larger than a second preset correlation degree threshold value, judging that a second watermark is embedded in the three-dimensional digital model.
Wherein the verification image is a two-dimensional image used to verify the validity of the extracted first re-watermark. The verification image may specifically be a two-dimensional image embedded in the three-dimensional digital model as the first watermark. The verification sequence is a sequence of watermark values used to verify the validity of the extracted second watermark. The verification sequence may specifically be a verification sequence for embedding as a second watermark in the three-dimensional digital model. Correlation is used to indicate how similar two images or two sequences of watermark values are compared. The correlation may specifically be any value between 0 and 1, where a correlation of 1 indicates that the correlation is completely the same, and a correlation of 0 indicates that the correlation is completely different. The first preset correlation threshold and the second preset correlation threshold are preset and used for being compared with the correlation to judge whether the corresponding watermark is embedded in the three-dimensional digital model or not and whether the extracted watermark is the originally embedded watermark or not.
Specifically, the computer device extracts and restores a two-dimensional image from a three-dimensional digital model, takes the two-dimensional image as an extracted first watermark, acquires a verification image for verifying the extracted first watermark, calculates a correlation degree between the verification image and the restored two-dimensional image, compares the calculated correlation degree with a first preset correlation degree threshold value, and determines that the two-dimensional image used as the first watermark is embedded in the three-dimensional digital model when the correlation degree is greater than the first preset correlation degree threshold value.
Further, the computer device extracts and restores the watermark value sequence from the three-dimensional digital model, takes the watermark value sequence as the extracted second watermark, obtains a verification sequence for verifying the extracted second watermark, calculates the correlation degree between the verification sequence and the restored watermark value sequence, compares the calculated correlation degree with a second preset correlation degree threshold value, and determines that the watermark value sequence used as the second watermark is embedded in the three-dimensional digital model when the correlation degree is greater than the second preset correlation degree threshold value.
It is worth mentioning that the computer device may only extract the two-dimensional image used as the first re-watermark or the sequence of watermark values used as the second re-watermark from the three-dimensional digital model and calculate the correlation between the acquired two-dimensional image or sequence of watermark values and the corresponding verification image or verification sequence. And comparing the calculated correlation with a corresponding first preset correlation threshold or a corresponding second preset correlation threshold, and when the correlation is greater than the first preset correlation threshold or the second preset correlation threshold, indicating that the first watermark or the second watermark is embedded in the three-dimensional digital model, thereby effectively proving the copyright ownership of the three-dimensional digital model. By setting a correlation threshold value and comparing the correlation with the calculated correlation, the judgment error caused by incomplete watermark extraction in the embedded three-dimensional digital model due to various watermark attack methods can be effectively avoided. When any one of the two watermarks is extracted from the three-dimensional digital model by the computer equipment, the watermark can be judged to be embedded in the three-dimensional digital model, and the robustness of resisting the watermark attack in the three-dimensional digital model is further improved.
The computer device may also simultaneously extract a two-dimensional image used as a first watermark and a watermark value sequence used as a second watermark from the three-dimensional digital model, and calculate the correlation between the acquired two-dimensional image and watermark value sequence and the corresponding verification image and verification sequence, respectively. And comparing the correlation degrees obtained by respective calculation with a corresponding first preset correlation degree threshold value and a corresponding second preset correlation degree threshold value, and when the correlation degree corresponding to the two-dimensional image is greater than the first preset correlation degree threshold value and the correlation degree corresponding to the watermark numerical sequence is greater than the second preset correlation degree threshold value, indicating that the first watermark and the second watermark are embedded in the three-dimensional digital model, thereby effectively proving the copyright ownership of the three-dimensional digital model. When the two watermarks are extracted, the fact that the two watermarks are embedded into the three-dimensional digital model is judged, so that copyright attribution of the three-dimensional digital model is determined, and accuracy of copyright attribution determination can be guaranteed.
In the above embodiment, the correlation between the extracted first watermark and/or second watermark and the corresponding verification image or verification sequence is calculated, and whether the watermark is embedded in the three-dimensional digital model and the embedded watermark information are determined according to the comparison between the calculated correlation and the corresponding correlation threshold, and the correlation threshold is set to ensure the accuracy of the determination.
In one embodiment, as illustrated in fig. 5, a method for extracting a three-dimensional digital model double blind watermark is provided. The method comprises the following steps:
and S502, acquiring a three-dimensional digital model.
S504, screening the first type of vertexes from the three-dimensional digital model according to the first watermark embedding condition.
S506, establishing a local spherical coordinate system of each first type vertex; acquiring spherical coordinate values of the first type of vertexes in respective local spherical coordinate systems; the ball coordinate values include two angle values and a distance value; and respectively coding the two angle values of the first type of vertex according to a preset reverse coding condition to obtain corresponding vertex attribute values.
S508, acquiring a two-dimensional matrix with a preset size; the obtained two-dimensional matrix is a zero matrix; and determining pixel points corresponding to the first class vertex in the two-dimensional matrix according to the vertex attribute value corresponding to the first class vertex and the row and column index value of the two-dimensional matrix.
S510, replacing the pixel point value of the pixel point corresponding to the first-class vertex with the distance value of the corresponding first-class vertex, and obtaining the pixel point characteristic attribute of the replaced two-dimensional matrix.
And S512, scrambling the replaced two-dimensional matrix according to a preset reverse scrambling condition.
S514, acquiring a two-dimensional coefficient matrix with the same size as the two-dimensional matrix; and performing dot multiplication on the two-dimensional matrix and the two-dimensional coefficient matrix, and transforming the two-dimensional matrix subjected to dot multiplication with the two-dimensional coefficient matrix into a space domain to obtain a two-dimensional image used as the first watermark.
S516, acquiring a verification image for verifying the first watermark; calculating the correlation degree of the restored two-dimensional image and the verification image; and when the correlation degree is larger than a first preset correlation degree threshold value, judging that a first re-watermark is embedded in the three-dimensional digital model.
S518, screening second-class vertexes which accord with preset conditions from the three-dimensional digital model; the preset condition is included in the first watermark embedding condition.
S520, selecting the two-ring neighbor vertex meeting the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; and the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to the vertex referred to when the first class vertex is screened according to the first watermark embedding condition.
S522, determining the corresponding numerical value of the vertex of the two-ring neighbor according to the projection position of the selected vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor; and taking the numerical value as the watermark value of the digit corresponding to the vertex of the two-ring neighbor in the watermark numerical value sequence.
S524, in the watermark numerical value sequence, determining the watermark value of the digit corresponding to the vertex of the two-ring neighbor according to the selected vertex of the two-ring neighbor; and accumulating and calculating the watermark value of each digit determined according to the vertex of the two-ring neighbor in the watermark value sequence and the total number corresponding to the watermark value.
S526, when the number of the watermark values corresponding to the digits in the watermark value sequence is more than one, screening the watermark value with the largest total number as the watermark value of the digits, and obtaining the watermark value sequence used as the second watermark.
S528, acquiring a verification sequence for verifying the second watermark; calculating the correlation degree of the restored watermark numerical value sequence and the verification sequence; and when the correlation degree is larger than a second preset correlation degree threshold value, judging that a second watermark is embedded in the three-dimensional digital model.
It should be noted that the order of extracting the first and second heavy watermarks from the three-dimensional digital model is not limited, and the first and second heavy watermarks may be extracted in parallel, or any one of the first and second heavy watermarks may be extracted first, and then the other heavy watermark is extracted based on the extraction of the first heavy watermark.
In the above embodiment, the watermark is extracted from the three-dimensional digital model, the correlation degree is calculated with the corresponding verification image or verification sequence, and whether the watermark is embedded in the corresponding three-dimensional digital model and the content of the embedded watermark are determined according to the correlation degree.
In a specific embodiment, as shown in fig. 6, a method for embedding and extracting a three-dimensional digital model double blind watermark is provided. In the method, double watermarks are embedded in a three-dimensional digital model and then extracted respectively. Wherein a is a two-dimensional image used as a first watermark; b is a two-dimensional image after preprocessing; c is a three-dimensional digital model which is not embedded with the watermark; d is a three-dimensional digital model embedded with the first heavy watermark; e is a sequence of watermark values used as a second watermark; f is a three-dimensional digital model embedded with a second double watermark, namely the three-dimensional digital model embedded with the double watermark; g is a second watermark extracted from the three-dimensional digital model; h is the first watermark extracted from the three-dimensional digital model.
In one embodiment, as shown in fig. 7, a three-dimensional digital model double blind watermark embedding apparatus 700 is provided. Referring to fig. 7, the apparatus 700 for embedding a three-dimensional digital model double blind watermark includes: an obtaining module 701, a screening module 702, a first watermark embedding module 703 and a second watermark embedding module 704.
An obtaining module 701, configured to obtain a three-dimensional digital model.
And the screening module 702 is used for screening the first type of vertexes from the three-dimensional digital model according to the first watermark embedding condition.
The obtaining module 701 is further configured to obtain a pixel characteristic attribute of the two-dimensional image used as the first watermark.
And a first watermark embedding module 703, configured to adjust positions of the first type of vertices in the three-dimensional digital model according to the pixel point feature attributes.
The screening module 702 is further configured to screen a second type of vertex that meets a preset condition from the adjusted three-dimensional digital model; the preset condition is included in the first watermark embedding condition.
The screening module 702 is further configured to select a dual-ring neighbor vertex meeting the second watermark embedding condition from the dual-ring neighbor vertices of the second type of vertex; and the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to the vertex referred to when the first class vertex is screened according to the first watermark embedding condition.
An obtaining module 701, further configured to obtain a watermark value sequence used as a second watermark; the sequence of watermark values includes the watermark value at each digit.
A second re-watermark embedding module 704 for adjusting the positions of the vertices of the two-ring neighbors corresponding to the digits to match the watermark value when the positions of the chosen vertices of the two-ring neighbors corresponding to the digits do not match the watermark value at the corresponding digits.
According to the embedding device for the double blind watermarks of the three-dimensional digital model, the position of the screened first-class vertex is correspondingly adjusted according to the pixel point characteristics of the two-dimensional image used as the first heavy watermark, and the first heavy watermark is embedded into the three-dimensional digital model. And for the three-dimensional digital model embedded with the first watermark, screening out two ring neighbor vertexes serving as vertexes embedded with the second watermark, and correspondingly adjusting the positions of the screened two ring neighbor vertexes according to the corresponding relation between the screened two ring neighbor vertexes and the watermark numerical sequence serving as the second watermark so as to embed the second watermark into the three-dimensional digital model, thereby embedding the double blind watermark into the three-dimensional digital model and improving the robustness of the watermark in the three-dimensional digital model. And through the constraint limitation of the embedding condition of the second watermark, the first watermark and the second watermark which are embedded in the three-dimensional digital model are independent and do not interfere with each other, and the robustness of the watermark is further improved.
In one embodiment, the screening module 702 is further configured to respectively and correspondingly calculate a ring of neighbor centroid points of each vertex according to a ring of neighbor vertices of each vertex in the three-dimensional digital model; and screening first type vertexes which accord with preset conditions and are not neighbor vertexes mutually from the three-dimensional digital model according to the ring neighbor vertexes of each vertex and the ring neighbor centroid points of each vertex.
In the above embodiment, according to a ring of neighboring vertices of each vertex and a corresponding ring of neighboring centroid points, a first class of vertices for embedding the first heavy watermark is screened from the three-dimensional digital model, and the screened first class of vertices satisfy a preset condition and are not neighbor vertices, so that the first class of vertices for embedding the first heavy watermark are independent of each other, and thus the robustness of the first heavy watermark is improved.
In one embodiment, the screening module 702 is further configured to calculate two normal vectors of a ring-neighboring centroid point according to two normal vector calculation manners, based on a ring-neighboring centroid point and a ring-neighboring vertex of each vertex in the three-dimensional digital model; selecting a first type of vertex from the three-dimensional digital model; the ratio of the maximum value to the minimum value of the distance between the ring neighbor vertex of the selected first-class vertex and the ring neighbor centroid point is smaller than a preset ratio threshold, the normal vector included angle between two normal vectors of the ring neighbor centroid point of the selected first-class vertex is larger than a preset included angle threshold, and the selected first-class vertices are not neighbor vertices.
In the above-described embodiment, the first watermark embedding condition is specifically divided into three conditions, and the first-class vertices serving as the embedded first watermark are screened from the three-dimensional digital model based on the three conditions. The first-class vertexes are screened based on the three conditions, so that the invisibility of the watermark embedded in the first-class vertexes is ensured, the watermark embedding accuracy is improved, the watermark embedding ambiguity is effectively avoided, and the watermark robustness is improved.
In one embodiment, there is a second type of vertex in the second type of vertex corresponding to the selected two-ring neighbor vertex, and the selected two-ring neighbor vertex is connected with only two one-ring neighbor vertices of the corresponding second type of vertex; in a triangle formed by the selected two-ring neighbor vertexes and the two one-ring neighbor vertexes, the base angles of the two one-ring neighbor vertexes are acute angles; selecting a normal vector included angle of a centroid point of a first ring neighbor of the vertexes of the two ring neighbors to be smaller than a preset included angle threshold value; and selecting normal vector included angles of the centroid points of the ring neighbors of the two ring neighbor vertexes, which are smaller than a preset included angle threshold value.
In the embodiment, the two-ring neighbor vertexes used for embedding the second watermark are screened based on the preset condition and the second watermark embedding condition, so that the embedding invariance of partial vertexes in the three-dimensional digital model as the watermark is kept unchanged, and the robustness of the embedded watermark is improved. And the first watermark and the second watermark embedded in the three-dimensional digital model are independent and do not interfere with each other through the constraint limitation of the embedding condition of the second watermark, so that the robustness of the watermarks is further improved.
In one embodiment, the second watermark embedding module 704 is further configured to divide the preset angle range into a plurality of angle groups; the number of the angle groups is equal to the total number of the digits of the watermark numerical value sequence; each angle group respectively corresponds to each digit of the watermark numerical value sequence; determining the digit corresponding to the two-ring neighbor vertex in the watermark numerical sequence according to the angle group of the vertex angle of the second type vertex in a triangle formed by the second type vertex corresponding to the selected two-ring neighbor vertex and two one-ring neighbor vertices connecting the two-ring neighbor vertex and the second type vertex; and determining the watermark values corresponding to the vertexes of the two-ring neighbors according to the digits of the watermark numerical value sequence.
In the above embodiment, by obtaining the angle groups with the number equal to the total number of the digits of the watermark numerical sequence, in the triangle formed by the second type vertex and the two one-ring neighbor vertices connecting the second type vertex and the corresponding two-ring neighbor vertex conforming to the second watermark embedding condition, the watermark values corresponding to the two-ring neighbor vertices are determined according to the angle group to which the vertex where the second type vertex is located belongs, so as to correspondingly adjust the positions of the corresponding two-ring neighbor vertices according to the determined watermark values, thereby embedding the watermark numerical sequence into the three-dimensional digital model in order, and ensuring the order and accuracy of watermark embedding.
In one embodiment, the second watermark embedding module 704 is further configured to determine a value corresponding to the vertex of the two-ring neighbor according to the projection position of the selected vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor; the first ring neighbor edge is a connecting line of two first ring neighbor vertexes corresponding to the two second ring neighbor vertexes; the first ring neighbor vertex is a first ring neighbor vertex which is connected with the second ring neighbor vertex and the corresponding second type vertex; when the value corresponding to the vertex of the two-ring neighbor is not equal to the watermark value, determining the projection position of the adjusted vertex of the two-ring neighbor on the edge of the one-ring neighbor according to the watermark value, and correspondingly adjusting the position of the vertex of the two-ring neighbor according to the projection position.
In the above embodiment, according to the correspondence between the projection positions of the two-ring neighbor vertices on the corresponding one-ring neighbor edges and the watermark values corresponding to the two-ring neighbor vertices in the watermark value sequence, the two-ring neighbor vertices whose positions need to be adjusted and the positions of the adjusted two-ring neighbor vertices are determined, and the positions of the corresponding two-ring neighbor vertices are correspondingly adjusted, so that the watermark value sequence is embedded into the three-dimensional digital model in order.
In one embodiment, the obtaining module 701 is further configured to obtain a two-dimensional image used as a first re-watermark; transforming the two-dimensional image into a frequency spectrum domain to obtain a corresponding frequency spectrum matrix; taking an absolute value of the frequency spectrum matrix; and scrambling the frequency spectrum matrix after the absolute value is taken according to a preset scrambling condition to obtain the pixel point characteristic attribute of the two-dimensional image corresponding to the frequency spectrum matrix.
In the above embodiment, the two-dimensional image used as the first heavy watermark is preprocessed, and the preprocessed two-dimensional image is embedded into the three-dimensional digital model, so that the robustness of the watermark is improved, and each pixel point in the frequency spectrum matrix obtained by transformation contains all information of the corresponding two-dimensional image, so that the robustness of the watermark is further improved.
In one embodiment, the first watermark embedding module 703 is further configured to obtain two normal vectors and a normal vector included angle between the two normal vectors, which are obtained by respectively calculating a ring of neighbor centroid points of the first-class vertex according to two normal vector calculation modes; determining pixel points corresponding to the first-class vertexes in the two-dimensional image according to normal vector included angles of a ring of neighboring centroid points of the first-class vertexes and the characteristic attributes of the pixel points of the two-dimensional image; respectively establishing respective local spherical coordinate systems of the first class vertexes according to two normal vectors of a ring neighbor centroid point and a ring neighbor centroid point of the first class vertex; determining the spherical coordinate values of the first type vertexes in the respective local spherical coordinate systems of the first type vertexes; respectively encoding the row and column index value of each pixel point in the two-dimensional image into corresponding angle values according to preset encoding conditions, and obtaining the characteristic attribute of the encoded pixel points; and in the three-dimensional digital model, adjusting the spherical coordinate value of the corresponding first-class vertex according to the coded pixel point characteristic attribute.
In the above embodiment, the embedding order of embedding the first watermark and the watermark information embedded in each first-class vertex are determined according to the normal vector included angle of the one-ring neighbor centroid point of the first-class vertex and the characteristic attribute of each pixel point after encoding in the two-dimensional image, and the corresponding watermark information is embedded in the three-dimensional digital model by correspondingly adjusting the position of the first-class vertex, so that the order of watermark embedding and the invisibility of embedded watermark are ensured, and the robustness of the watermark is improved.
As shown in fig. 8, in one embodiment, an apparatus 800 for extracting a three-dimensional digital model double blind watermark is provided. Referring to fig. 8, the apparatus 800 for extracting a three-dimensional digital model double blind watermark includes: an acquisition module 801, a screening module 802, a first watermark extraction module 803 and a second watermark extraction module 804.
An obtaining module 801, configured to obtain a three-dimensional digital model.
And a screening module 802, configured to screen the first type of vertices from the three-dimensional digital model according to the first watermark embedding condition.
And the first heavy watermark extraction module 803 is configured to determine a corresponding pixel point feature attribute according to the position of the first-class vertex.
The first re-watermark extracting module 803 is further configured to restore a two-dimensional image used as a first re-watermark according to the pixel point feature attribute.
The screening module 802 is further configured to screen a second type of vertex meeting a preset condition from the three-dimensional digital model; the preset condition is included in the first watermark embedding condition.
The screening module 802 is further configured to select a dual-ring neighbor vertex meeting a second watermark embedding condition from the dual-ring neighbor vertices of the second type of vertex; and the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to the vertex which is referred to when the first class vertex is screened according to the first watermark embedding condition.
And a second watermark repeating extracting module 804, configured to restore a watermark value sequence used as a second watermark according to the watermark value matched with the position of the picked vertex of the two-ring neighbor and the corresponding digit of the picked vertex of the two-ring neighbor.
According to the device for extracting the double blind watermarks of the three-dimensional digital model, the corresponding first-class vertexes and the corresponding second-class vertexes are respectively screened out from the three-dimensional digital model according to the first-class watermark embedding condition and the preset condition, and the two-dimensional image is restored according to the screened first-class vertexes, namely the first heavy watermark is extracted from the three-dimensional digital model. And screening the two-ring neighbor vertexes which accord with the embedding condition of the second watermark from the screened second-class vertexes, and restoring the corresponding watermark numerical value sequence according to the screened two-ring neighbor vertexes, namely extracting the second watermark from the three-dimensional digital model, thereby realizing the extraction of the double watermark and improving the robustness of the watermark in the three-dimensional digital model. In the double watermark extraction process, the watermark extraction process is mutually independent, and the three-dimensional digital model without the embedded watermark is not involved, so that the attack resistance robustness of the embedded watermark in the three-dimensional digital model is further improved.
In one embodiment, the first heavy watermark extraction module 803 is further configured to establish respective local spherical coordinate systems of the first type vertices; acquiring spherical coordinate values of the first type of vertexes in respective local spherical coordinate systems; the ball coordinate values include two angle values and a distance value; respectively coding two angle values of the first type of vertex according to a preset reverse coding condition to obtain corresponding vertex attribute values; acquiring a two-dimensional matrix with a preset size; the two-dimensional matrix is a zero matrix; determining pixel points corresponding to the first class vertexes in the two-dimensional matrix according to the vertex attribute values corresponding to the first class vertexes and the row-column index values of the two-dimensional matrix; and replacing the pixel point value of the pixel point corresponding to the first-class vertex with the distance value of the corresponding first-class vertex to obtain the characteristic attribute of the pixel point of the replaced two-dimensional matrix.
In the above embodiment, for the first-class vertex that may be embedded with the first heavy watermark, the corresponding spherical coordinate value is obtained in the respective local spherical coordinate system, the corresponding relationship between the first-class vertex and the pixel in the two-dimensional matrix is determined according to the encoded spherical coordinate value, so as to determine the pixel attribute feature of each pixel in the two-dimensional matrix, and the corresponding two-dimensional image is restored according to the pixel attribute feature, so that the two-dimensional image used as the first heavy watermark is extracted from the three-dimensional digital model.
In an embodiment, the first heavy watermark extraction module 803 is further configured to scramble the replaced two-dimensional matrix according to a preset inverse scrambling condition; acquiring a two-dimensional coefficient matrix with the same size as the two-dimensional matrix; and performing dot multiplication on the two-dimensional matrix and the two-dimensional coefficient matrix, and transforming the two-dimensional matrix subjected to dot multiplication with the two-dimensional coefficient matrix into a space domain to obtain a two-dimensional image used as the first watermark.
In the above-described embodiment, the two-dimensional matrix of replacement pixel point values is processed to restore the two-dimensional image embedded in the three-dimensional digital model according to the reverse process of preprocessing the two-dimensional image used as the first re-watermark.
In an embodiment, the second watermark extracting module 804 is further configured to determine a value corresponding to the vertex of the two-ring neighbor according to the projection position of the selected vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor; and taking the numerical value as the watermark value of the digit corresponding to the vertex of the two-ring neighbor in the watermark numerical value sequence.
In the above embodiment, the corresponding numerical value is determined according to the projection position of the second type vertex on the corresponding one-ring neighbor edge, and the numerical value corresponding to each second type vertex is used as the watermark value of the corresponding numerical position in the watermark numerical value sequence, so as to extract the second watermark from the three-dimensional digital model.
In one embodiment, the second re-watermark extraction module 804 is further configured to determine, in the watermark value sequence, a watermark value corresponding to a digit of the vertex of the two-ring neighbor according to the selected vertex of the two-ring neighbor; accumulating and calculating the watermark value of each digit determined according to the vertex of the two-ring neighbor in the watermark value sequence and the total number corresponding to the watermark value; and when more than one watermark value is corresponding to the digit in the watermark value sequence, screening the watermark value with the maximum total number as the watermark value of the digit to obtain the watermark value sequence used as the second watermark.
In the above embodiment, the watermark value of the corresponding digit in the watermark numerical sequence is determined according to each second-class vertex in the three-dimensional digital model, and when more than one watermark value corresponds to each digit, the accuracy of the restored watermark numerical sequence is improved by selecting the watermark value with the largest total number as the watermark value of the corresponding digit, and the accuracy of extracting the second watermark is correspondingly improved, so that the robustness of the watermark against attack is improved.
As shown in fig. 9, in an embodiment, the apparatus 800 for extracting a three-dimensional digital model double blind watermark further includes: a verification module 805.
A verification module 805 configured to obtain a verification image for verifying the first watermark; calculating the correlation degree of the restored two-dimensional image and the verification image; when the correlation degree is larger than a first preset correlation degree threshold value, judging that a first re-watermark is embedded in the three-dimensional digital model; and/or, obtaining a verification sequence for verifying the second watermark; calculating the correlation degree of the restored watermark numerical value sequence and the verification sequence; and when the correlation degree is larger than a second preset correlation degree threshold value, judging that a second watermark is embedded in the three-dimensional digital model.
In the above embodiment, the correlation between the extracted first watermark and/or second watermark and the corresponding verification image or verification sequence is calculated, and whether the watermark is embedded in the three-dimensional digital model and the embedded watermark information are determined according to the comparison between the calculated correlation and the corresponding correlation threshold, and the correlation threshold is set to ensure the accuracy of the determination.
A computer device comprising a memory and a processor, the memory storing a computer program that, when executed by the processor, causes the processor to perform the steps of: acquiring a three-dimensional digital model; screening a first type of vertexes from the three-dimensional digital model according to a first watermark embedding condition; acquiring the characteristic attribute of a pixel point of a two-dimensional image used as a first heavy watermark; adjusting the position of the corresponding first type vertex in the three-dimensional digital model according to the characteristic attribute of the pixel point; screening second type vertexes which accord with preset conditions from the adjusted three-dimensional digital model; the preset condition comprises a first watermark embedding condition; selecting the two-ring neighbor vertex which meets the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first watermark embedding condition; acquiring a watermark numerical value sequence used as a second watermark; the sequence of watermark values comprises watermark values at respective digits; when the selected positions of the two-ring neighbor vertices corresponding to the digits do not match the watermark value at the corresponding digits, the positions of the two-ring neighbor vertices corresponding to the digits are adjusted to match the watermark value.
In one embodiment, screening the first type of vertices from the three-dimensional digital model according to the first re-watermark embedding condition comprises: respectively and correspondingly calculating a ring neighbor center of mass point of each vertex according to a ring neighbor vertex of each vertex in the three-dimensional digital model; and screening first type vertexes which accord with preset conditions and are not neighbor vertexes mutually from the three-dimensional digital model according to the ring neighbor vertexes of each vertex and the ring neighbor centroid points of each vertex.
In one embodiment, the screening of the first type of vertices that meet the preset condition and are not neighbors to each other includes: respectively calculating two normal vectors of a ring neighbor centroid point according to two normal vector calculation modes according to a ring neighbor centroid point and a ring neighbor vertex of each vertex in the three-dimensional digital model; selecting a first type of vertex from the three-dimensional digital model; the ratio of the maximum value to the minimum value of the distance between the ring neighbor vertex of the selected first-class vertex and the ring neighbor centroid point is smaller than a preset ratio threshold, the normal vector included angle between two normal vectors of the ring neighbor centroid point of the selected first-class vertex is larger than a preset included angle threshold, and the selected first-class vertices are not neighbor vertices.
In one embodiment, there is a second type of vertex in the second type of vertex corresponding to the selected two-ring neighbor vertex, and the selected two-ring neighbor vertex is connected with only two one-ring neighbor vertices of the corresponding second type of vertex; in a triangle formed by the selected two-ring neighbor vertexes and the two one-ring neighbor vertexes, the base angles of the two one-ring neighbor vertexes are acute angles; selecting a normal vector included angle of a centroid point of a first ring neighbor of the vertexes of the two ring neighbors to be smaller than a preset included angle threshold value; and selecting normal vector included angles of the centroid points of the ring neighbors of the two ring neighbor vertexes, which are smaller than a preset included angle threshold value.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of: dividing a preset angle range into a plurality of angle groups; the number of the angle groups is equal to the total number of the digits of the watermark numerical value sequence; each angle group respectively corresponds to each digit of the watermark numerical value sequence; determining the digit corresponding to the two-ring neighbor vertex in the watermark numerical sequence according to the angle group of the vertex angle of the second type vertex in a triangle formed by the second type vertex corresponding to the selected two-ring neighbor vertex and two one-ring neighbor vertices connecting the two-ring neighbor vertex and the second type vertex; and determining the watermark values corresponding to the vertexes of the two-ring neighbors according to the digits of the watermark numerical value sequence.
In one embodiment, when the selected position of the vertex of the two-ring neighbor corresponding to the digit does not match the watermark value at the corresponding digit, adjusting the position of the vertex of the two-ring neighbor corresponding to the digit to match the watermark value comprises: determining the numerical value corresponding to the vertex of the two-ring neighbor according to the projection position of the selected vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor; the first ring neighbor edge is a connecting line of two first ring neighbor vertexes corresponding to the two second ring neighbor vertexes; the first ring neighbor vertex is a first ring neighbor vertex which is connected with the second ring neighbor vertex and the corresponding second type vertex; and when the numerical value corresponding to the vertex of the two-ring neighbor is not equal to the numerical value, determining the projection position of the adjusted vertex of the two-ring neighbor on the edge of the one-ring neighbor according to the watermark value, and correspondingly adjusting the position of the vertex of the two-ring neighbor according to the projection position.
In one embodiment, the step of obtaining the pixel point characteristic attribute of the two-dimensional image used as the first heavy watermark includes: acquiring a two-dimensional image used as a first heavy watermark; transforming the two-dimensional image into a frequency spectrum domain to obtain a corresponding frequency spectrum matrix; taking an absolute value of the frequency spectrum matrix; and scrambling the frequency spectrum matrix after the absolute value is taken according to a preset scrambling condition to obtain the pixel point characteristic attribute of the two-dimensional image corresponding to the frequency spectrum matrix.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of: acquiring two normal vectors and a normal vector included angle between the two normal vectors, which are respectively calculated according to two normal vector calculation modes, of a ring of neighbor centroid points of the first-class vertexes; determining pixel points corresponding to the first-class vertexes in the two-dimensional image according to normal vector included angles of a ring of neighboring centroid points of the first-class vertexes and the characteristic attributes of the pixel points of the two-dimensional image; respectively establishing respective local spherical coordinate systems of the first class vertexes according to two normal vectors of a ring neighbor centroid point and a ring neighbor centroid point of the first class vertex; determining the spherical coordinate values of the first type vertexes in the respective local spherical coordinate systems of the first type vertexes; the pixel point characteristic attribute comprises a row and column numerical value and a corresponding pixel point value; adjusting the position of the corresponding first type vertex in the three-dimensional digital model according to the characteristic attribute of the pixel point comprises the following steps: respectively encoding the row and column numerical values of each pixel point in the two-dimensional image into corresponding angle values according to preset encoding conditions, and obtaining the characteristic attribute of the encoded pixel points; and in the three-dimensional digital model, adjusting the spherical coordinate value of the corresponding first-class vertex according to the coded pixel point characteristic attribute.
The computer equipment correspondingly adjusts the positions of the screened first class vertexes according to the pixel point characteristics of the two-dimensional image used as the first watermark, and embeds the first watermark into the three-dimensional digital model. And for the three-dimensional digital model embedded with the first watermark, screening out two ring neighbor vertexes serving as vertexes embedded with the second watermark, and correspondingly adjusting the positions of the screened two ring neighbor vertexes according to the corresponding relation between the screened two ring neighbor vertexes and the watermark numerical sequence serving as the second watermark so as to embed the second watermark into the three-dimensional digital model, thereby embedding the double blind watermark into the three-dimensional digital model and improving the robustness of the watermark in the three-dimensional digital model. And through the constraint limitation of the embedding condition of the second watermark, the first watermark and the second watermark which are embedded in the three-dimensional digital model are independent and do not interfere with each other, and the robustness of the watermark is further improved.
A computer device comprising a memory and a processor, the memory storing a computer program that, when executed by the processor, causes the processor to perform the steps of: acquiring a three-dimensional digital model; screening a first type of vertexes from the three-dimensional digital model according to a first watermark embedding condition; acquiring the characteristic attribute of a pixel point of a two-dimensional image used as a first heavy watermark; adjusting the position of the corresponding first type vertex in the three-dimensional digital model according to the characteristic attribute of the pixel point; screening second type vertexes which accord with preset conditions from the adjusted three-dimensional digital model; the preset condition comprises a first watermark embedding condition; selecting the two-ring neighbor vertex which meets the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first watermark embedding condition; acquiring a watermark numerical value sequence used as a second watermark; the sequence of watermark values comprises watermark values at respective digits; when the selected positions of the two-ring neighbor vertices corresponding to the digits do not match the watermark value at the corresponding digits, the positions of the two-ring neighbor vertices corresponding to the digits are adjusted to match the watermark value.
In one embodiment, screening the first type of vertices from the three-dimensional digital model according to the first re-watermark embedding condition comprises: respectively and correspondingly calculating a ring neighbor center of mass point of each vertex according to a ring neighbor vertex of each vertex in the three-dimensional digital model; and screening first type vertexes which accord with preset conditions and are not neighbor vertexes mutually from the three-dimensional digital model according to the ring neighbor vertexes of each vertex and the ring neighbor centroid points of each vertex.
In one embodiment, the screening of the first type of vertices that meet the preset condition and are not neighbors to each other includes: respectively calculating two normal vectors of a ring neighbor centroid point according to two normal vector calculation modes according to a ring neighbor centroid point and a ring neighbor vertex of each vertex in the three-dimensional digital model; selecting a first type of vertex from the three-dimensional digital model; the ratio of the maximum value to the minimum value of the distance between the ring neighbor vertex of the selected first-class vertex and the ring neighbor centroid point is smaller than a preset ratio threshold, the normal vector included angle between two normal vectors of the ring neighbor centroid point of the selected first-class vertex is larger than a preset included angle threshold, and the selected first-class vertices are not neighbor vertices.
In one embodiment, there is a second type of vertex in the second type of vertex corresponding to the selected two-ring neighbor vertex, and the selected two-ring neighbor vertex is connected with only two one-ring neighbor vertices of the corresponding second type of vertex; in a triangle formed by the selected two-ring neighbor vertexes and the two one-ring neighbor vertexes, the base angles of the two one-ring neighbor vertexes are acute angles; selecting a normal vector included angle of a centroid point of a first ring neighbor of the vertexes of the two ring neighbors to be smaller than a preset included angle threshold value; and selecting normal vector included angles of the centroid points of the ring neighbors of the two ring neighbor vertexes, which are smaller than a preset included angle threshold value.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of: dividing a preset angle range into a plurality of angle groups; the number of the angle groups is equal to the total number of the digits of the watermark numerical value sequence; each angle group respectively corresponds to each digit of the watermark numerical value sequence; determining the digit corresponding to the two-ring neighbor vertex in the watermark numerical sequence according to the angle group of the vertex angle of the second type vertex in a triangle formed by the second type vertex corresponding to the selected two-ring neighbor vertex and two one-ring neighbor vertices connecting the two-ring neighbor vertex and the second type vertex; and determining the watermark values corresponding to the vertexes of the two-ring neighbors according to the digits of the watermark numerical value sequence.
In one embodiment, when the selected position of the vertex of the two-ring neighbor corresponding to the digit does not match the watermark value at the corresponding digit, adjusting the position of the vertex of the two-ring neighbor corresponding to the digit to match the watermark value comprises: determining the numerical value corresponding to the vertex of the two-ring neighbor according to the projection position of the selected vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor; the first ring neighbor edge is a connecting line of two first ring neighbor vertexes corresponding to the two second ring neighbor vertexes; the first ring neighbor vertex is a first ring neighbor vertex which is connected with the second ring neighbor vertex and the corresponding second type vertex; and when the numerical value corresponding to the vertex of the two-ring neighbor is not equal to the numerical value, determining the projection position of the adjusted vertex of the two-ring neighbor on the edge of the one-ring neighbor according to the watermark value, and correspondingly adjusting the position of the vertex of the two-ring neighbor according to the projection position.
In one embodiment, the step of obtaining the pixel point characteristic attribute of the two-dimensional image used as the first heavy watermark includes: acquiring a two-dimensional image used as a first heavy watermark; transforming the two-dimensional image into a frequency spectrum domain to obtain a corresponding frequency spectrum matrix; taking an absolute value of the frequency spectrum matrix; and scrambling the frequency spectrum matrix after the absolute value is taken according to a preset scrambling condition to obtain the pixel point characteristic attribute of the two-dimensional image corresponding to the frequency spectrum matrix.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of: acquiring two normal vectors and a normal vector included angle between the two normal vectors, which are respectively calculated according to two normal vector calculation modes, of a ring of neighbor centroid points of the first-class vertexes; determining pixel points corresponding to the first-class vertexes in the two-dimensional image according to normal vector included angles of a ring of neighboring centroid points of the first-class vertexes and the characteristic attributes of the pixel points of the two-dimensional image; respectively establishing respective local spherical coordinate systems of the first class vertexes according to two normal vectors of a ring neighbor centroid point and a ring neighbor centroid point of the first class vertex; determining the spherical coordinate values of the first type vertexes in the respective local spherical coordinate systems of the first type vertexes; the pixel point characteristic attribute comprises a row and column numerical value and a corresponding pixel point value; adjusting the position of the corresponding first type vertex in the three-dimensional digital model according to the characteristic attribute of the pixel point comprises the following steps: respectively encoding the row and column numerical values of each pixel point in the two-dimensional image into corresponding angle values according to preset encoding conditions, and obtaining the characteristic attribute of the encoded pixel points; and in the three-dimensional digital model, adjusting the spherical coordinate value of the corresponding first-class vertex according to the coded pixel point characteristic attribute.
The computer device respectively screens out corresponding first-class vertexes and second-class vertexes from the three-dimensional digital model according to the first watermark embedding condition and the preset condition, restores the two-dimensional image according to the screened first-class vertexes, and extracts the first watermark from the three-dimensional digital model. And screening the two-ring neighbor vertexes which accord with the embedding condition of the second watermark from the screened second-class vertexes, and restoring the corresponding watermark numerical value sequence according to the screened two-ring neighbor vertexes, namely extracting the second watermark from the three-dimensional digital model, thereby realizing the extraction of the double watermark and improving the robustness of the watermark in the three-dimensional digital model. In the double watermark extraction process, the watermark extraction process is mutually independent, and the three-dimensional digital model without the embedded watermark is not involved, so that the attack resistance robustness of the embedded watermark in the three-dimensional digital model is further improved.
A computer-readable storage medium storing a computer program which, when executed by a processor, causes the processor to perform the steps of: acquiring a three-dimensional digital model; screening a first type of vertexes from the three-dimensional digital model according to a first watermark embedding condition; acquiring the characteristic attribute of a pixel point of a two-dimensional image used as a first heavy watermark; adjusting the position of the corresponding first type vertex in the three-dimensional digital model according to the characteristic attribute of the pixel point; screening second type vertexes which accord with preset conditions from the adjusted three-dimensional digital model; the preset condition comprises a first watermark embedding condition; selecting the two-ring neighbor vertex which meets the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first watermark embedding condition; acquiring a watermark numerical value sequence used as a second watermark; the sequence of watermark values comprises watermark values at respective digits; when the selected positions of the two-ring neighbor vertices corresponding to the digits do not match the watermark value at the corresponding digits, the positions of the two-ring neighbor vertices corresponding to the digits are adjusted to match the watermark value.
In one embodiment, screening the first type of vertices from the three-dimensional digital model according to the first re-watermark embedding condition comprises: respectively and correspondingly calculating a ring neighbor center of mass point of each vertex according to a ring neighbor vertex of each vertex in the three-dimensional digital model; and screening first type vertexes which accord with preset conditions and are not neighbor vertexes mutually from the three-dimensional digital model according to the ring neighbor vertexes of each vertex and the ring neighbor centroid points of each vertex.
In one embodiment, the screening of the first type of vertices that meet the preset condition and are not neighbors to each other includes: respectively calculating two normal vectors of a ring neighbor centroid point according to two normal vector calculation modes according to a ring neighbor centroid point and a ring neighbor vertex of each vertex in the three-dimensional digital model; selecting a first type of vertex from the three-dimensional digital model; the ratio of the maximum value to the minimum value of the distance between the ring neighbor vertex of the selected first-class vertex and the ring neighbor centroid point is smaller than a preset ratio threshold, the normal vector included angle between two normal vectors of the ring neighbor centroid point of the selected first-class vertex is larger than a preset included angle threshold, and the selected first-class vertices are not neighbor vertices.
In one embodiment, there is a second type of vertex in the second type of vertex corresponding to the selected two-ring neighbor vertex, and the selected two-ring neighbor vertex is connected with only two one-ring neighbor vertices of the corresponding second type of vertex; in a triangle formed by the selected two-ring neighbor vertexes and the two one-ring neighbor vertexes, the base angles of the two one-ring neighbor vertexes are acute angles; selecting a normal vector included angle of a centroid point of a first ring neighbor of the vertexes of the two ring neighbors to be smaller than a preset included angle threshold value; and selecting normal vector included angles of the centroid points of the ring neighbors of the two ring neighbor vertexes, which are smaller than a preset included angle threshold value.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of: dividing a preset angle range into a plurality of angle groups; the number of the angle groups is equal to the total number of the digits of the watermark numerical value sequence; each angle group respectively corresponds to each digit of the watermark numerical value sequence; determining the digit corresponding to the two-ring neighbor vertex in the watermark numerical sequence according to the angle group of the vertex angle of the second type vertex in a triangle formed by the second type vertex corresponding to the selected two-ring neighbor vertex and two one-ring neighbor vertices connecting the two-ring neighbor vertex and the second type vertex; and determining the watermark values corresponding to the vertexes of the two-ring neighbors according to the digits of the watermark numerical value sequence.
In one embodiment, when the selected position of the vertex of the two-ring neighbor corresponding to the digit does not match the watermark value at the corresponding digit, adjusting the position of the vertex of the two-ring neighbor corresponding to the digit to match the watermark value comprises: determining the numerical value corresponding to the vertex of the two-ring neighbor according to the projection position of the selected vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor; the first ring neighbor edge is a connecting line of two first ring neighbor vertexes corresponding to the two second ring neighbor vertexes; the first ring neighbor vertex is a first ring neighbor vertex which is connected with the second ring neighbor vertex and the corresponding second type vertex; and when the numerical value corresponding to the vertex of the two-ring neighbor is not equal to the numerical value, determining the projection position of the adjusted vertex of the two-ring neighbor on the edge of the one-ring neighbor according to the watermark value, and correspondingly adjusting the position of the vertex of the two-ring neighbor according to the projection position.
In one embodiment, the step of obtaining the pixel point characteristic attribute of the two-dimensional image used as the first heavy watermark includes: acquiring a two-dimensional image used as a first heavy watermark; transforming the two-dimensional image into a frequency spectrum domain to obtain a corresponding frequency spectrum matrix; taking an absolute value of the frequency spectrum matrix; and scrambling the frequency spectrum matrix after the absolute value is taken according to a preset scrambling condition to obtain the pixel point characteristic attribute of the two-dimensional image corresponding to the frequency spectrum matrix.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of: acquiring two normal vectors and a normal vector included angle between the two normal vectors, which are respectively calculated according to two normal vector calculation modes, of a ring of neighbor centroid points of the first-class vertexes; determining pixel points corresponding to the first-class vertexes in the two-dimensional image according to normal vector included angles of a ring of neighboring centroid points of the first-class vertexes and the characteristic attributes of the pixel points of the two-dimensional image; respectively establishing respective local spherical coordinate systems of the first class vertexes according to two normal vectors of a ring neighbor centroid point and a ring neighbor centroid point of the first class vertex; determining the spherical coordinate values of the first type vertexes in the respective local spherical coordinate systems of the first type vertexes; the pixel point characteristic attribute comprises a row and column numerical value and a corresponding pixel point value; adjusting the position of the corresponding first type vertex in the three-dimensional digital model according to the characteristic attribute of the pixel point comprises the following steps: respectively encoding the row and column numerical values of each pixel point in the two-dimensional image into corresponding angle values according to preset encoding conditions, and obtaining the characteristic attribute of the encoded pixel points; and in the three-dimensional digital model, adjusting the spherical coordinate value of the corresponding first-class vertex according to the coded pixel point characteristic attribute.
The computer-readable storage medium embeds the first watermark in the three-dimensional digital model by correspondingly adjusting the position of the screened first vertex according to the pixel point characteristics of the two-dimensional image used as the first watermark. And for the three-dimensional digital model embedded with the first watermark, screening out two ring neighbor vertexes serving as vertexes embedded with the second watermark, and correspondingly adjusting the positions of the screened two ring neighbor vertexes according to the corresponding relation between the screened two ring neighbor vertexes and the watermark numerical sequence serving as the second watermark so as to embed the second watermark into the three-dimensional digital model, thereby embedding the double blind watermark into the three-dimensional digital model and improving the robustness of the watermark in the three-dimensional digital model. And through the constraint limitation of the embedding condition of the second watermark, the first watermark and the second watermark which are embedded in the three-dimensional digital model are independent and do not interfere with each other, and the robustness of the watermark is further improved.
A computer-readable storage medium storing a computer program which, when executed by a processor, causes the processor to perform the steps of: acquiring a three-dimensional digital model; screening a first type of vertexes from the three-dimensional digital model according to a first heavy watermark embedding condition; determining the characteristic attribute of the corresponding pixel point according to the position of the first class vertex; restoring a two-dimensional image used as a first heavy watermark according to the characteristic attribute of the pixel point; screening second type vertexes which accord with preset conditions from the three-dimensional digital model; the preset condition comprises the first watermark embedding condition; selecting the two-ring neighbor vertex which meets the embedding condition of the second watermark from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first heavy watermark embedding condition; and restoring a watermark numerical value sequence used as a second watermark according to the watermark value matched with the position of the selected vertex of the two-ring neighbor and the corresponding digit of the selected vertex of the two-ring neighbor.
In an embodiment, the determining the corresponding pixel point feature attribute according to the position of the first type vertex includes: establishing respective local spherical coordinate systems of the first type of vertexes; acquiring the spherical coordinate values of the first type of vertexes in respective local spherical coordinate systems; the ball coordinate values include two angle values and a distance value; respectively coding the two angle values of the first type of vertex according to a preset inverse coding condition to obtain corresponding vertex attribute values; acquiring a two-dimensional matrix with a preset size; the two-dimensional matrix is a zero matrix; determining pixel points corresponding to the first class vertexes in the two-dimensional matrix according to the vertex attribute values corresponding to the first class vertexes and the row and column values of the two-dimensional matrix; and replacing the pixel point value of the pixel point corresponding to the first-class vertex with the corresponding distance value of the first-class vertex to obtain the pixel point characteristic attribute of the replaced two-dimensional matrix.
In one embodiment, the restoring the two-dimensional image used as the first re-watermark according to the pixel point characteristic attribute includes: scrambling the replaced two-dimensional matrix according to a preset reverse scrambling condition; acquiring a two-dimensional coefficient matrix with the same size as the two-dimensional matrix; and performing dot multiplication on the two-dimensional matrix and the two-dimensional coefficient matrix, and transforming the two-dimensional matrix subjected to dot multiplication with the two-dimensional coefficient matrix into a space domain to obtain a two-dimensional image used as a first watermark.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of: determining the numerical value corresponding to the vertex of the two-ring neighbor according to the selected projection position of the vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor; and taking the numerical value as the watermark value of the digit corresponding to the vertex of the two-ring neighbor in the watermark numerical value sequence.
In one embodiment, the restoring the watermark value sequence used as the second watermark according to the watermark value matched with the position of the picked vertex of the two-ring neighbor and the corresponding digit of the picked vertex of the two-ring neighbor includes: in the watermark numerical value sequence, determining the watermark value of the digit corresponding to the vertex of the two-ring neighbor according to the selected vertex of the two-ring neighbor; accumulating and calculating the watermark value of each digit determined according to the vertex of the two-ring neighbor in the watermark numerical value sequence and the total number corresponding to the numerical value; and when the number of the watermark values corresponding to the digits in the watermark value sequence is more than one, screening the watermark value with the maximum total number as the watermark value of the digit to obtain the watermark value sequence used as a second watermark.
In one embodiment, the computer program, when executed by the processor, causes the processor to perform the steps of: acquiring a verification image for verifying the first watermark; calculating the correlation degree of the restored two-dimensional image and the verification image; when the correlation degree is larger than a first preset correlation degree threshold value, judging that the first heavy watermark is embedded in the three-dimensional digital model; and/or, obtaining a verification sequence for verifying the second watermark; calculating the correlation degree of the restored watermark numerical value sequence and the verification sequence; and when the correlation degree is larger than a second preset correlation degree threshold value, judging that the second watermark is embedded in the three-dimensional digital model.
The computer readable storage medium screens out corresponding first-class vertexes and second-class vertexes from the three-dimensional digital model according to the first watermark embedding condition and the preset condition, and restores the two-dimensional image according to the screened first-class vertexes, namely, extracts the first watermark from the three-dimensional digital model. And screening the two-ring neighbor vertexes which accord with the embedding condition of the second watermark from the screened second-class vertexes, and restoring the corresponding watermark numerical value sequence according to the screened two-ring neighbor vertexes, namely extracting the second watermark from the three-dimensional digital model, thereby realizing the extraction of the double watermark and improving the robustness of the watermark in the three-dimensional digital model. In the double watermark extraction process, the watermark extraction process is mutually independent, and the three-dimensional digital model without the embedded watermark is not involved, so that the attack resistance robustness of the embedded watermark in the three-dimensional digital model is further improved.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by a computer program, which can be stored in a non-volatile computer-readable storage medium, and can include the processes of the embodiments of the methods described above when the program is executed. Any reference to memory, storage, database, or other medium used in the embodiments provided herein may include non-volatile and/or volatile memory, among others. Non-volatile memory can include read-only memory (ROM), Programmable ROM (PROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDRSDRAM), Enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), Rambus Direct RAM (RDRAM), direct bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
The steps in the above method embodiments are not limited to the execution sequence, and may be arbitrarily adjusted, so that for the sake of brevity, all possible permutations and combinations of the steps in the above method embodiments are not described, however, as long as there is no contradiction between all permutations and combinations of the steps, the scope of the description should be considered as the scope of the present specification.
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present invention, and the description thereof is more specific and detailed, but not construed as limiting the scope of the present invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the inventive concept, which falls within the scope of the present invention. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (18)

1. A method for embedding a three-dimensional digital model double blind watermark, the method comprising:
acquiring a three-dimensional digital model;
screening a first type of vertexes from the three-dimensional digital model according to a first heavy watermark embedding condition;
acquiring the characteristic attribute of a pixel point of a two-dimensional image used as a first heavy watermark;
adjusting the position of the corresponding first class vertex in the three-dimensional digital model according to the characteristic attribute of the pixel point;
screening second type vertexes which accord with preset conditions from the adjusted three-dimensional digital model; the preset condition comprises the first watermark embedding condition;
selecting the two-ring neighbor vertex which meets the embedding condition of the second watermark from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first heavy watermark embedding condition; the two-ring neighbor vertex is a vertex connected with the corresponding vertex through one-ring neighbor vertex of the vertex; the vertex of the ring neighbor is the vertex directly connected with the vertex;
acquiring a watermark numerical value sequence used as a second watermark; the sequence of watermark values comprises watermark values at respective digits;
when the position of the selected vertex of the two-ring neighbor corresponding to the digit does not match the watermark value at the corresponding digit, the position of the vertex of the two-ring neighbor corresponding to the digit is adjusted to match the watermark value.
2. The method of claim 1, wherein the step of screening the first type of vertices from the three-dimensional digital model according to the first watermark embedding condition comprises:
respectively and correspondingly calculating a ring neighbor center of mass point of each vertex according to a ring neighbor vertex of each vertex in the three-dimensional digital model;
and screening first-class vertexes which accord with preset conditions and are not neighbor vertexes mutually from the three-dimensional digital model according to the ring neighbor vertex of each vertex and the ring neighbor centroid point of each vertex.
3. The method according to claim 2, wherein the screening vertices of the first type that meet the predetermined condition and are not neighbors of each other comprises:
respectively calculating two normal vectors of the one-ring neighbor centroid point according to the one-ring neighbor centroid point and the one-ring neighbor vertex of each vertex in the three-dimensional digital model in two normal vector calculation modes;
selecting a first type of vertex from the three-dimensional digital model; the ratio of the maximum value to the minimum value of the distance between the ring neighbor vertex of the selected first-class vertex and the ring neighbor centroid point is smaller than a preset ratio threshold, the normal vector included angle between two normal vectors of the ring neighbor centroid point of the selected first-class vertex is larger than a preset included angle threshold, and the selected first-class vertices are not neighbor vertices.
4. The method of claim 3, wherein there is a second class of vertices in the second class of vertices corresponding to the selected two-ring neighbor vertices, and the selected two-ring neighbor vertices are connected to only two one-ring neighbor vertices of the corresponding second class of vertices;
in a triangle formed by the selected two adjacent vertexes of the two rings and the two adjacent vertexes of the one ring, the base angles of the two adjacent vertexes of the one ring are acute angles;
selecting a normal vector included angle of a centroid point of one ring of neighbors at the vertex of the two ring neighbors to be smaller than the preset included angle threshold value;
and selecting a normal vector included angle of a ring neighbor centroid point of each ring neighbor vertex of the two ring neighbor vertices to be smaller than the preset included angle threshold value.
5. The method of claim 4, further comprising:
dividing a preset angle range into a plurality of angle groups; the number of the angle groups is equal to the total number of the digits of the watermark numerical value sequence; each angle group corresponds to each digit of the watermark numerical value sequence;
determining digits corresponding to the two-ring neighbor vertexes in the watermark numerical value sequence according to the angle group of the vertex angle where the second type vertex is located in a triangle formed by the two one-ring neighbor vertexes corresponding to the selected two-ring neighbor vertex and connecting the two-ring neighbor vertexes with the second type vertex;
and determining the watermark values corresponding to the vertexes of the two-ring neighbors according to the digits of the watermark numerical value sequence.
6. The method of claim 5, wherein adjusting the position of the vertex of the corresponding two-ring neighbor of the digit to match the watermark value when the position of the selected vertex of the corresponding two-ring neighbor of the digit does not match the watermark value at the corresponding digit comprises:
determining the numerical value corresponding to the vertex of the two-ring neighbor according to the selected projection position of the vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor; the first-ring neighbor edge is a connecting line of two first-ring neighbor vertexes corresponding to the two-ring neighbor vertexes; the first ring neighbor vertex is a ring neighbor vertex connecting the two ring neighbor vertices and the corresponding second class vertex;
when the value corresponding to the vertex of the two-ring neighbor is not equal to the watermark value, determining the projection position of the adjusted vertex of the two-ring neighbor on the edge of the one-ring neighbor according to the watermark value, and correspondingly adjusting the position of the vertex of the two-ring neighbor according to the projection position.
7. The method according to any one of claims 1 to 6, wherein the step of obtaining pixel point characteristic attributes of the two-dimensional image used as the first re-watermark comprises:
acquiring a two-dimensional image used as a first heavy watermark;
transforming the two-dimensional image into a frequency spectrum domain to obtain a corresponding frequency spectrum matrix;
taking an absolute value of the spectrum matrix;
and scrambling the frequency spectrum matrix after the absolute value is taken according to a preset scrambling condition to obtain the pixel point characteristic attribute of the two-dimensional image corresponding to the frequency spectrum matrix.
8. The method of any one of claims 1 to 6, further comprising:
acquiring two normal vectors and a normal vector included angle between the two normal vectors, which are respectively calculated according to two normal vector calculation modes, of a ring of neighbor centroid points of the first-class vertexes;
determining pixel points corresponding to the first-class vertexes in the two-dimensional image according to the normal vector included angle of the first-class vertex neighboring centroid points and the pixel point characteristic attributes of the two-dimensional image;
respectively establishing a local spherical coordinate system of each first-class vertex according to a ring neighbor centroid point of the first-class vertex and two normal vectors of the ring neighbor centroid point;
determining the spherical coordinate values of the first type of vertexes in the local spherical coordinate systems of the first type of vertexes respectively;
the pixel point characteristic attribute comprises a row and column index value and a corresponding pixel point value; the step of adjusting the position of the corresponding first vertex in the three-dimensional digital model according to the pixel point characteristic attribute comprises the following steps:
respectively encoding the row and column index value of each pixel point in the two-dimensional image into corresponding angle values according to preset encoding conditions, and obtaining the characteristic attribute of the encoded pixel points;
and in the three-dimensional digital model, adjusting the spherical coordinate value of the corresponding first-class vertex according to the coded pixel point characteristic attribute.
9. A method for extracting a three-dimensional digital model double blind watermark comprises the following steps:
acquiring a three-dimensional digital model;
screening a first type of vertexes from the three-dimensional digital model according to a first heavy watermark embedding condition;
determining the characteristic attribute of the corresponding pixel point according to the position of the first class vertex;
restoring a two-dimensional image used as a first heavy watermark according to the characteristic attribute of the pixel point;
screening second type vertexes which accord with preset conditions from the three-dimensional digital model; the preset condition comprises the first watermark embedding condition;
selecting the two-ring neighbor vertex which meets the embedding condition of the second watermark from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first heavy watermark embedding condition; the two-ring neighbor vertex is a vertex connected with the corresponding vertex through one-ring neighbor vertex of the vertex; the vertex of the ring neighbor is the vertex directly connected with the vertex;
and restoring a watermark numerical value sequence used as a second watermark according to the watermark value matched with the position of the selected vertex of the two-ring neighbor and the corresponding digit of the selected vertex of the two-ring neighbor.
10. The method of claim 9, wherein said step of determining the corresponding pixel point feature attributes according to the locations of said vertices of the first type comprises:
establishing respective local spherical coordinate systems of the first type of vertexes;
acquiring the spherical coordinate values of the first type of vertexes in respective local spherical coordinate systems; the ball coordinate values include two angle values and a distance value; respectively coding the two angle values of the first type of vertex according to a preset inverse coding condition to obtain corresponding vertex attribute values;
acquiring a two-dimensional matrix with a preset size; the two-dimensional matrix is a zero matrix;
determining pixel points corresponding to the first class vertex in the two-dimensional matrix according to the vertex attribute value corresponding to the first class vertex and the row and column index value of the two-dimensional matrix;
and replacing the pixel point value of the pixel point corresponding to the first-class vertex with the corresponding distance value of the first-class vertex to obtain the pixel point characteristic attribute of the replaced two-dimensional matrix.
11. The method according to claim 10, wherein the step of restoring the two-dimensional image used as the first re-watermark according to the pixel point feature attributes comprises:
scrambling the replaced two-dimensional matrix according to a preset reverse scrambling condition;
acquiring a two-dimensional coefficient matrix with the same size as the two-dimensional matrix;
and performing dot multiplication on the two-dimensional matrix and the two-dimensional coefficient matrix, and transforming the two-dimensional matrix subjected to dot multiplication with the two-dimensional coefficient matrix into a space domain to obtain a two-dimensional image used as a first watermark.
12. The method of claim 9, further comprising:
determining the numerical value corresponding to the vertex of the two-ring neighbor according to the selected projection position of the vertex of the two-ring neighbor on the corresponding edge of the one-ring neighbor;
and taking the numerical value as the watermark value of the digit corresponding to the vertex of the two-ring neighbor in the watermark numerical value sequence.
13. The method of claim 12,
the restoring the watermark numerical value sequence used as the second watermark according to the watermark value matched with the position of the picked two-ring neighbor vertex and the corresponding digit of the picked two-ring neighbor vertex comprises the following steps:
in the watermark numerical value sequence, determining the watermark value of the digit corresponding to the vertex of the two-ring neighbor according to the selected vertex of the two-ring neighbor;
accumulating and calculating the watermark value of each digit determined according to the vertex of the two-ring neighbor in the watermark numerical sequence and the total number corresponding to the watermark value;
and when the number of the watermark values corresponding to the digits in the watermark value sequence is more than one, screening the watermark value with the maximum total number as the watermark value of the digit to obtain the watermark value sequence used as a second watermark.
14. The method of claim 9, further comprising:
acquiring a verification image for verifying the first watermark;
calculating the correlation degree of the restored two-dimensional image and the verification image;
when the correlation degree is larger than a first preset correlation degree threshold value, judging that the first heavy watermark is embedded in the three-dimensional digital model;
and/or the presence of a gas in the gas,
obtaining a verification sequence for verifying the second watermark;
calculating the correlation degree of the restored watermark numerical value sequence and the verification sequence;
and when the correlation degree is larger than a second preset correlation degree threshold value, judging that the second watermark is embedded in the three-dimensional digital model.
15. An apparatus for embedding a three-dimensional digital model double blind watermark, the apparatus comprising:
the acquisition module is used for acquiring a three-dimensional digital model;
the screening module is used for screening the first type of vertexes from the three-dimensional digital model according to the first heavy watermark embedding condition;
the acquisition module is also used for acquiring the characteristic attribute of the pixel point of the two-dimensional image used as the first heavy watermark;
the first watermark embedding module is used for adjusting the positions of the corresponding first type vertexes in the three-dimensional digital model according to the characteristic attributes of the pixel points;
the screening module is also used for screening second type vertexes which accord with preset conditions from the adjusted three-dimensional digital model; the preset condition comprises the first watermark embedding condition;
the screening module is also used for selecting the two-ring neighbor vertex meeting the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first heavy watermark embedding condition; the two-ring neighbor vertex is a vertex connected with the corresponding vertex through one-ring neighbor vertex of the vertex; the vertex of the ring neighbor is the vertex directly connected with the vertex;
the acquisition module is also used for acquiring a watermark numerical value sequence used as a second watermark; the sequence of watermark values comprises watermark values at respective digits;
and the second repeated watermark embedding module is used for adjusting the positions of the vertexes of the two ring neighbors corresponding to the digits to be matched with the watermark value when the positions of the vertexes of the two ring neighbors corresponding to the digits are not matched with the watermark value at the corresponding digits.
16. An apparatus for extracting a three-dimensional digital model double blind watermark, the apparatus comprising:
the acquisition module is used for acquiring a three-dimensional digital model;
the screening module is used for screening the first type of vertexes from the three-dimensional digital model according to the first heavy watermark embedding condition;
the first watermark extraction module is used for determining the characteristic attribute of the corresponding pixel point according to the position of the first vertex;
the first watermark extraction module is also used for restoring a two-dimensional image used as a first watermark according to the characteristic attribute of the pixel point;
the screening module is also used for screening second type vertexes which accord with preset conditions from the three-dimensional digital model; the preset condition comprises the first watermark embedding condition;
the screening module is also used for selecting the two-ring neighbor vertex meeting the second watermark embedding condition from the two-ring neighbor vertices of the second type of vertex; the selected two-ring neighbor vertex does not belong to the first class vertex and does not belong to a vertex which is referred to when the first class vertex is screened according to the first heavy watermark embedding condition; the two-ring neighbor vertex is a vertex connected with the corresponding vertex through one-ring neighbor vertex of the vertex; the vertex of the ring neighbor is the vertex directly connected with the vertex;
and the second repeated watermark extraction module is used for restoring a watermark numerical value sequence used as a second repeated watermark according to the watermark value matched with the position of the selected vertex of the two-ring neighbor and the corresponding digit of the selected vertex of the two-ring neighbor.
17. A computer device comprising a memory and a processor, the memory storing a computer program that, when executed by the processor, causes the processor to perform the steps of the method of any one of claims 1 to 14.
18. A computer-readable storage medium, storing a computer program which, when executed by a processor, causes the processor to perform the steps of the method of any one of claims 1 to 14.
CN201711322951.0A 2017-12-12 2017-12-12 Embedding and extracting method of three-dimensional digital model double blind watermark and storage medium Active CN109919821B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201711322951.0A CN109919821B (en) 2017-12-12 2017-12-12 Embedding and extracting method of three-dimensional digital model double blind watermark and storage medium
PCT/CN2018/099080 WO2019114290A1 (en) 2017-12-12 2018-08-07 Embedding method for three-dimensional digital model dual layer blind watermark, extracting method for three-dimensional digital model dual layer blind watermark, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711322951.0A CN109919821B (en) 2017-12-12 2017-12-12 Embedding and extracting method of three-dimensional digital model double blind watermark and storage medium

Publications (2)

Publication Number Publication Date
CN109919821A CN109919821A (en) 2019-06-21
CN109919821B true CN109919821B (en) 2020-12-25

Family

ID=66819518

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711322951.0A Active CN109919821B (en) 2017-12-12 2017-12-12 Embedding and extracting method of three-dimensional digital model double blind watermark and storage medium

Country Status (2)

Country Link
CN (1) CN109919821B (en)
WO (1) WO2019114290A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117575880B (en) * 2024-01-16 2024-04-12 四川数盾科技有限公司 Blind watermark embedding/extracting method and system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853484A (en) * 2010-05-21 2010-10-06 天津大学 Construction method and detection method for three-dimensional mesh non-embedded robust watermark
CN102622721A (en) * 2012-03-06 2012-08-01 福建师范大学 Three-dimensional grid model blind-watermarking method based on depth image mapping
CN103116871A (en) * 2013-01-29 2013-05-22 福建师范大学 Embedding method and extracting method for double fragile digital watermarks with robustness
CN106709855A (en) * 2017-03-28 2017-05-24 西安理工大学 3D model watermarking method based on Beamlet line feature positioning

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100940451B1 (en) * 2008-02-25 2010-02-04 주식회사 마크애니 Apparatus for watermarking 3d mesh model using spherical surface parameter technique and method thereof
CN101393635B (en) * 2008-10-27 2011-08-10 华为技术有限公司 Watermark information embedding, extracting method and processing system
CN101533508B (en) * 2009-03-23 2011-09-07 福建师范大学 Dual digital watermark method of three-dimensional grid model
CN101833743A (en) * 2010-04-01 2010-09-15 杭州电子科技大学 Image based three-dimensional grid model blind watermarking method
US20120230396A1 (en) * 2011-03-11 2012-09-13 Mitsubishi Electric Research Laboratories, Inc. Method for Embedding Decoding Information in Quantized Transform Coefficients
CN102521825B (en) * 2011-11-16 2014-01-29 宁波大学 Three-dimensional image quality objective evaluation method based on zero watermark
CN103996163B (en) * 2014-05-29 2017-09-05 深圳大学 A kind of digital watermark embedding, extracting method, insertion, extraction element and system
CN104036448B (en) * 2014-06-12 2017-02-15 上海理工大学 Digital watermark algorithm for three-dimensional model
CN104318505A (en) * 2014-09-30 2015-01-28 杭州电子科技大学 Three-dimensional mesh model blind watermarking method based on image discrete cosine transformation
CN106485642B (en) * 2016-09-30 2019-05-24 北京交通大学 The method of visible watermark is embedded in three-dimensional grid model

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853484A (en) * 2010-05-21 2010-10-06 天津大学 Construction method and detection method for three-dimensional mesh non-embedded robust watermark
CN102622721A (en) * 2012-03-06 2012-08-01 福建师范大学 Three-dimensional grid model blind-watermarking method based on depth image mapping
CN103116871A (en) * 2013-01-29 2013-05-22 福建师范大学 Embedding method and extracting method for double fragile digital watermarks with robustness
CN106709855A (en) * 2017-03-28 2017-05-24 西安理工大学 3D model watermarking method based on Beamlet line feature positioning

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于顶点统计特征的三维网格模型盲水印算法;钱逸 等;《计算机辅助设计与图形学学报》;20150915(第9期);1661-1668 *

Also Published As

Publication number Publication date
WO2019114290A1 (en) 2019-06-20
CN109919821A (en) 2019-06-21

Similar Documents

Publication Publication Date Title
Simitopoulos et al. Robust image watermarking based on generalized radon transformations
US7817817B2 (en) Method for concealing data in curves of an image
Lee et al. Vector watermarking scheme for GIS vector map management
Wang et al. A high capacity reversible data hiding method for 2D vector maps based on virtual coordinates
CN102156955B (en) Robust reversible watermark embedding and extracting method based on histogram neighborhood
Abdelhakim et al. Fragile watermarking for image tamper detection and localization with effective recovery capability using K-means clustering
CN111968027A (en) Robust color image zero watermarking method based on SURF and DCT features
CN110659651A (en) Tampering positioning reversible image watermarking method based on SIFT
CN113658032A (en) Image watermark encryption and decryption method and system based on deep learning and image processing
CN108335256B (en) Three-dimensional blind watermark embedding and extracting detection method and device under local spherical coordinate system
Abubahia et al. A clustering approach for protecting GIS vector data
Wang et al. RST invariant reversible watermarking for 2D vector map
Bhuiyan et al. An improved image steganography algorithm based on PVD
CN109461110B (en) Method and device for determining traceability information of picture
CN109919821B (en) Embedding and extracting method of three-dimensional digital model double blind watermark and storage medium
Zope-Chaudhari et al. Copyright protection of vector data using vector watermark
Dadkhah et al. Efficient digital image authentication and tamper localization technique using 3lsb watermarking
Wang et al. RST invariant fragile watermarking for 2D vector map authentication
Vybornova et al. Method for Vector Map Protection based on using of a Watermark Image as a Secondary Carrier.
Molaei et al. A blind fragile watermarking method for 3D models based on geometric properties of triangles
CN114862646B (en) Watermark embedding and extracting method and system for vector tile anti-splicing
Kang et al. Robust spherical panorama image watermarking against viewpoint desynchronization
Abbas et al. Digital vector map watermarking: Applications, techniques and attacks
KR100944488B1 (en) Watermark Inserting Method to Vector data for using Azimuth Information and Watermark Detecting Method to the same
CN114387167A (en) Robust image steganography method for resisting interpolation scaling attack

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant