Watermarking 3D polygonal Meshes in the Mesh spectral Domain

Source: Internet
Author: User

this week, I read an article Ryutarou Ohbuchi In this paper, a watermark is added to the grid frequency domain. For the grid, there is no transformation like DCT in the frequency domain, so it is very important to use what amount to simulate the coefficients in the traditional frequency domain. in this paper, the watermark algorithm is embedded in the transformation domain of a given 3D polygon Mesh, and the spectral analysis of the grid is presented in this paper. At the same time,the shape of the3D polygon mesh is defined by its point connection relationship and vertex coordinates.

In this paper, the embedding of watermark is realized by changing the spectral coefficients of grids. First, the original mesh is transformed into the frequency domain, then the frequency domain coefficients are modified, the watermark information is embedded, and the model of embedding watermark is obtained by inverse transformation from the frequency domain to the airspace.

First, introduce the frequency domain of the grid

The computational grid spectrum involves the eigenvalue decomposition of the Laplace matrix. A sequence of eigenvalues and corresponding eigenvector sequences are generated from the decomposition of eigenvalue values. The small eigenvalues correspond to the low frequencies in the spatial frequency, and the large eigenvalues correspond to the high frequencies in the spatial frequency. The characteristic vectors and low frequency coefficients corresponding to the small eigenvalues represent the global shape features, while the characteristic vectors and high frequency coefficients corresponding to the large eigenvalues represent local or detail shape features. Projecting a point in the airspace in the model to a normalized eigenvector will generate the mesh frequency coefficients for that vertex. In this paper, the combined Laplace matrix, the Kirchhoff matrix K, is used to replace the original Laplace matrix.

Kirchhoff Matrix K defined as follows:

K = D–a

D : The diagonal matrix, its elements Dii = di that represents the node I the degree,

A : The adjacency matrix of a polygon mesh whose elements AIJ defined as follows:

(1)

One hasNpolygon mesh of verticesMwill produce an x Nsize ofKMatrix, its eigenvalue decomposition will produceNa characteristic valueλIand theNaNdimension feature VectorWI, (1≤i≤n). In the original grid, the firstIeach component of a vertexVi =(XI,Yi,Zi) (1≤i≤n) is projected separately into sectionIa normalized eigenvectoreion, that isei = wi/| | wi| |. (i.e.eiis aWIvector of units).

through the above steps producedNfrequency coefficients of a gridri = (rs,i, rt,i, Ru,i), (1≤i≤n). subscripts,Tand theurepresents the orthogonal axis in the grid frequency domain, corresponding to the spatial axisx,yand theZ. In order to reverse the transformation from the frequency domain to the spatial domain, it is necessary toeiwith theRImultiply and sum, the specific conversion formula is as follows:

(2)

Watermark Generation

As mentioned above, the watermark embedding is realized by changing the grid spectral coefficients. Each frequency coefficient has three frequency axes s,t and u, which are modulated by three components of the frequency coefficients to complete the embedding of the watermark.

the data embedded in this article is a m the bit vector of the dimension a = (a1,a2,..., am), . Each bit AJ times the chip rate C gets the watermark signal vector b = (b1,b2,..., BMC) , and The total length of B is MC

Bi = AJ, j.c ≤i < (j+1). C (3)

(Note: My understanding of this conversion is that each bit of the sequence that was intended to be embedded is repeatedly embeddedC(chip rate) times, for example,m = 5,C = 3, the original sequence isA =(11001), the pass-through conversion becomesB =(111,111, the, the,111), it is also explained that the same bit is repeated in the embeddedCtimes can increase watermark to resist random price adjustment noise attack)

will be b converted to B ' , , the conversion rule is

( 4 )

Watermark Embedding

Next you can consider embedding the watermark in action. First, the s axis for example watermark embedding. Assume is the first grid embedded in the watermark. i a spectrum coefficient of s pi Span style= "font-family: the song Body;" >∈ {1,-1} is by key kw α (α> 0) i After embedding the watermark, the spectral coefficients are calculated as follows:

( 5 )

in the process of watermark extraction, it is necessary to use the key used in the watermark embedding process, that is, the seed value of the pseudo-random number is the same. Therefore, the distribution of the key can be done by means of equal-public-key encryption.

in the spectrum of T shafts and u The axes are performed as above to generate a series of spectral coefficients for embedding watermarks, using the formula above ( 2 The coordinate of the vertex in the airspace can be obtained by inverse transformation of the spectral coefficients, so that a polygon mesh with embedded watermark is obtained.

watermark extraction

cover-mesh stego-mesh cover-mesh M stego-mesh mˆ -----

In order to align two meshes, use the grid before 5 (lowest frequency) spectral coefficients to roughly reconstruct the shape of a mesh. The reconstructed shape is then used to obtain a 3 x 3 covariance matrix, which computes a series of eigenvectors. The two meshes are aligned by comparing the eigenvectors computed by two shapes.

The aligned meshes are respectively decomposed by eigenvalue to obtain the respective spectral coefficients. Wherein,M decomposition to get rsi,m^ decomposition to get rsi^, calculated.

calculates the sum of coefficients on three frequency axes QJ

( 6 )

used in the above-described Pi consistent with embedding. Also, assuming that the vertex coordinates in the m^ can be ignored, then

( 7 )

where the value of qj is {αc,-αc}. because α and the C always positive, simple test QJ symbol to restore the original information bit sequence AJ

AJ = sign (QJ)

sign in the above style takes the symbolic function. The formula in this article (4) can be converted to get the original information bit sequence bi.

Optimization: Mesh Segmentation

eigenvalue decomposition works well for meshes with only hundreds of vertices, but when the grid size becomes larger, such as the number of vertices is 10^4 ~ 10^7 , there are two problems with the previous method: First, the time to compute the decomposition of eigenvalue is much larger than the embedding time of the watermark, and the stability of the decomposition value becomes more and more problematic . .

so 10^4 ~ 10^7 Span style= "font-family: Microsoft Jacob Black;" > You need to split the original mesh into small sub-grids vertex ),

Grid Segmentation has an additional benefit. The watermark information is embedded in the sub-grid repeatedly, can resist such attacks as mesh cutting, so long as the deleted mesh retains at least one of the previously divided sub-grids, the watermark information can be extracted from it.

in this paper, a simple mesh segmentation is implemented. First, The feature points are selected manually toapproximate the central location of the intended sub-grid, and the feature points are approximately evenly distributed across the grid. Each sub-grid gradually expands the area along the feature points based on the connection relationship between the mesh vertices. When the original mesh is completely split, the sub-grid stops growing.

Grid spectrum analysis is done in each sub-grid, ignoring the connection of vertices on the sub-grid boundary. The meshing and extraction phases of the grid require the same sub-meshing, so the feature points used in the original mesh need to be saved.

Other supplements

since the lowest frequency is used in the watermark extraction phase 5 frequency coefficients for grid alignment, so when embedding watermarks, watermarks are not embedded in all frequency coefficients and can only be embedded in n–5 a high frequency coefficient.

Watermarking 3D polygonal Meshes in the Mesh spectral Domain

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.