Separable Reversible Data Hiding Based on Integer Mapping and Multi-MSB Prediction for Encrypted 3D Mesh Models

08/07/2019 ∙ by Zhaoxia Yin, et al. ∙ 0

Reversible data hiding in encrypted domain (RDH-ED) has received tremendous attention from the research community because data can be embedded into cover media without exposing it to the third party data hider and the cover media can be losslessly recovered after the extraction of the embedded data. Although, in recent years, extensive studies have been carried out about images based RDH-ED, little attention is paid to RDH-ED in 3D meshes due to its complex data structure and irregular geometry. In this paper, we propose a separable RDH-ED method for 3D meshes based on integer mapping and Multi-MSB (multiplication most significant bit) prediction. The proposed method divides all the vertices of the mesh into the "embedded" set and "reference" set, and maps decimals of the vertex into integers. Then, we calculate the Multi-MSB prediction errors for the vertices of the "embedded" set and a bit-stream encryption technique will be executed. Finally, additional data is embedded by replacing the Multi-MSB of the encrypted vertex coordinates. According to different permissions, recipient can obtain the original plaintext meshes, additional data or both. Experimental results show that the proposed method has higher embedding capacity and higher quality of the recovered meshes compared to the state-of-art methods.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Reversible data hiding (RDH) allows to embed additional data into cover media in a way that the cover media can be losslessly restored after the extraction of embedded data. In recent years, RDH has been extensively studied by the research community [1, 2, 3, 4, 5, 6, 7, 8]. The existing RDH schemes can be mainly divided into three categories: lossless compression, difference expansion(DE) and histogram shifting(HS). Image lossless compression [1, 2] extracts some features of the original image for lossless compression, and additional data is embedded into the reserved space left by lossless compression. Lossless compression based RDH schemes offer low embedding capacity. To improve the embedding capacity, difference expansion (DE) [3, 4, 5] and histogram shifting (HS) [6, 7, 8] based RDH methods emerged.

With third party cloud paradigm and privacy preserving applications, the demand for privacy protection is increasing. The combination of encryption and RDH technologies play a crucial role in privacy protection. In order to store or share files securely using third party services, the content owner will use encryption technology to transform the original content into unreadable ciphertext before transmission, and then data hider will embed data into ciphertext for data management, authentication and ownership protection. At the same time, recipient want to be able to recover the original content losslessly after decryption and data extraction. Such privacy preserving scenarios trigger RDH-ED for managing ciphertext data.

In recent years, some existing RDH-ED algorithms for embedding additional data into encrypted carriers have been proposed, which can be classified into two categories: vacating room after encryption (VRAE) 

[9, 10, 11] and reserving room before encryption (RRBE) [12, 13]. Zhang [9]

first proposed the RDH-ED method, which embedded additional data by modifying the pixels of encrypted images and extracted data by using pixel correlation of original images. The original encrypted image is divided into non-overlapping blocks and embedded data by flipping the three least significant bits (LSB) of half of the pixels in each block. Due to the spatial correlation of the image, the original image block is much smoother than the modified image block, so the recipient used a smoothness estimation function to estimate the texture complexity of each block for data extraction and image restoration. However, the quality of restored image and the accuracy of data extraction are still not very satisfactory.

Fig. 1: The framework of RDHED methods based on 3D mesh models.

In the method mentioned above, data extraction and images recovery are carried out at the same time. In order to separate data extraction from image recovery, Zhang [10] proposed a separable RDH-ED scheme based on LSB compression. This scheme realizes that additional data can be extracted directly from embedding room and images can be restored without data extraction. After that, Qian et al. [11] proposed a scheme that uses stream cipher to encrypt the original images. The data-hider compresses a series of selected bits taken from the encrypted images to make room for additional data. If the recipient has the embedding key and the encryption key, then the additional data can be extracted correctly and original images can be perfectly restored using distributed source coding.

Compared with VRAE algorithms, RRBE algorithms have better performance in reducing data extraction errors and restoring original images. Ma et al. [12] proposed to reserve room for data embedding before encryption. Ma et al.’s method can guarantee that there are no errors in data extraction and image recovery. Most recently, Puteaux et al. [13] proposed a RDH-ED scheme in which data hider embeds additional data into the pixels of encrypted images through MSB substitution. The recipient can extract additional data from the MSB plane of the encrypted images. After decryption, the recipient used correlation between adjacent pixels, and reconstructs the original images through MSB prediction.

According to the the atart-of-the-art methods introduced above, RDH algorithms for images have been extensively studied for many years, but these algorithms cannot be directly applied to other cover media, such as text, audio, video, and 3D models. Because of the wide range of applications of 3D models (mesh models or point cloud models) and its large intrinsic capacity, 3D models are considered potential cover carriers for RDH. However, research on RDH technology using 3D models as cover media is still in initial stage. Therefore, the study of 3D models is a very valuable topic. According to literature, existing RDH methods of 3D models are mainly divided into four domains: spatial domain, transform domain, compressed domain and encrypted domain.

Spatial domain RDH methods [14, 15, 16] embedded additional data into 3D models by slightly modifying vertex coordinates. Transform domain RDH methods [17] embedded additional data into the transformation coefficients of the models. Compressed domain RDH methods [18, 19]

use vector quantization(VQ) for compressing the vertices of 3D models and then embedded data into compressed meodels stream. To our best of knowledge, there are only two papers on 3D meshes based RDH-ED 

[20] [21]. Fig.1 shouws the framework of RDHED methods using 3D models as cover media precisely. Jiang et al. [20] mapped vertex coordinates of 3D meshes to integers using scaling and quantization and then obtain the encrypted meshes. Additional data is embedded by flipping several LSBs of the encrypted coordinates. At the recipient side, the marked encrypted mesh is firstly decrypted and then realizes data extraction and mesh reconstruction by using the designed smoothing measure function. Jiang et al. [20] is an inseparable scheme, i.e. meshes decryption and data extraction are carried out at the same time. [20] has the disadvantages of low embedding capacity, poor reconstruction meshes quality and larger errors in data extraction. In [21], a two-tier RDH-ED method for 3D meshes using homomorphic Paillier cryptosystem is proposed, which is suitable for cloud data management. Due to the large ciphertext expansion and high computational complexity of the Paillier cryptosystem,  [21] is not efficient in practice.

In this paper, We took disadvantages of [20] [21] into account and proposed a separable reversible data hiding based on integer mapping and multi-MSB prediction for encrypted 3D meshes. Our method first maps signed floating vertex coordinates values to integer values, analyzes and finds out the vertex index information with prediction error in the original 3D mesh as auxiliary information, and then uses stream cipher to encrypt the original 3D mesh. According to different permissions, recipient can obtain the original plaintext mesh, additional data or both. Compared with state-of-the-art methods, we improves the embedding capacity and the quality of recovered mesh, and realizes error-free extraction of the data.

The main contributions of this paper are as follows:

1) The Multi-MSB embedding strategy was adopted to improve the embedding capacity.

2) The proposed method can obtain high quality recovered mesh by ring -prediction, and the data extraction and mesh recovery are separable and error- free.

The rest of this paper is organized as follows: Section II introduces the proposed method. Section III presents the analysis of experimental results. Section IV concludes this paper and descibe the future work.

Fig. 2: Framework of the Proposed Method.

Ii Proposed method

In this paper, our goal is to hide additional data in 3D mesh by slightly modifying the mesh vertices without changing the mesh topology, while allowing the recipient to correctly extract additional data and perfectly recover the original mesh. The method consists of pre-processing, prediction error detection, encryption, data hiding, data extraction and mesh recovery. Fig. 2 illustrates framework of the proposed method.

First, the sender analyzes the original 3D mesh to find the vertex index number information with prediction error and records it as auxiliary information. Then, the sender uses the encryption key Ke to encrypt the original mesh to get the encrypted 3D mesh . In the data embedding stage, additional data is embedded into the encrypted mesh to obtain the marked encrypted mesh . After the mesh encryption and data embedding stage, the sender sends the encrypted auxiliary information along with as supplementary data. There are three cases for the recipient. Case 1: For the recipient has only the data hiding key , the recipient can extract additional data from . Case 2: For the recipient has only the encryption key , a high-quality recovered mesh can be obtained. Case 3: For the recipient with encryption and data hiding keys , the recipient can extract the data and recover the original mesh.

Ii-a Pre-processing

3D mesh models are represented in various file formats such as OFF, PLY, OBJ, etc. The 3D mesh is composed of vertices data and faces data. Vertices data include coordinates data of vertices represented as V= {v 1iN} , where the vertex is represented as v=(v,v,v), and N is the number of vertices. Note that each coordinate v ¡ 1 and jx,y,z. F=(f,ff) represent faces sequence when we traverse the faces data, where f=(v,v,v), is the number of faces. We take a local region of a “Cow” mesh for illustration in Fig. 3, and the corresponding file format is shown in Table I.

Fig. 3: Cow Mesh.
Index of
vertex
x-axis
coordinate
y-axis
coordinate
z-axis
coordinate
coordinates
Index
of face
Elements in
each face
1 v v v (0.180757, 0.034214, 0.193897) 1 (1,2,8)
2 v v v (0.118210, 0.059086, 0.189724) 2 (7,8,1)
3 v v v (0.092150, 0.029539, 0.197267) 3 (5,7,1)
4 v v v (0.137215, 0.043615, 0.201492) 4 (1,5,4)
5 v v v (0.136288, 0.065522, 0.187564) 5 (3,4,1)
6 v v v (0.160892, 0.015154, 0.200969) 6 (2,1,3)
20 v v v (0.082017, 0.026986, 0.253443) 20 (20,19,23)
21 v v v (0.026661, 0.037672, 0.246828) 21 (21,20,34)
TABLE I: File format for Fig. 2.

We can perform lossy compression of vertex coordinates according to the recommendation of [22]. According to the different precision , the corresponding integer value is between 0 and , where [1-33]. Normalizing floating point coordinates v to integer coordinates as

(1)

Where is the ith vertex, jx,y,z, v is the original set of floating point vertices and is the set of integer vertices.

Recipient can convert the processed integer coordinates to floating point coordinates by Eq. (2).

(2)

is an important parameter for determining the lossless restory recovery of the mesh. The value of corresponds to the bit-length of integer coordinates as

(3)

Different correspond to different bitlength , which means that affect the quality of the recovery mesh and the time cost of each stage, including encryption, data embedding, data extraction and mesh recovery. For example, for floating point vertex v = (-0.202018, -0.0740184, 0.288808) and m = 4, the corresponding integer coordinates are = (-2020, -7400, 2888). The integer range of is 0-9999, and the required storage bit length is 16.

Ii-B Prediction Error Detection

The “embedded” set C is used to embed additional data, and the “reference” set R is used to recover the mesh without modifying the vertices during the whole process. The sender traverses all the vertices in faces data in ascending order, and calculate “embedded” set C and “reference” set R according to topological information between vertices. Sender traverses the first vertex in the face data and adds this vertex to C, find its adjacent vertices and add them to R. As shown in Fig. 3, when traversing the Cow’s faces sequence, sender first traverses to a vertex numbered 1, and add this vertex to C. Then, sender traverses the faces sequence to find the faces containing 1, and in this way sender find 2, 3, 4, 5, 7, 8 as its adjacent vertices, and then all the adjacent vertices numbered 2, 3, 4, 5, 7, 8 are added to R. Finally, we test whether the vertices in the C have prediction error and the maximum embedding length of the embeddable vertices. The vertices with prediction errors are not used for data embedding.

Fig. 4: An example of prediction error detection test on cow mesh.

An example shows that when the is 6, the process of selecting the maximum embedding length without prediction error is as follows: We predict each bit of the prediction coordinates in the order of reference coordinates from MSB to LSB until a certain bit has prediction error. As shown in Fig. 4, the coordinates of an “embedded” vertex numbered 1 has the MSB 0. Sender counts the number of 0 and 1 occurrences of the MSB of the “reference” vertex coordinates numbered 2, 3, 4, 5, 7, 8. if the number of 0s is greater than or equal to the number of 1s, the MSB of the “embedded” vertex coordinates numbered 1 is predicted to be 0. Then, the prediction of 2-MSB and 3-MSB were counted until the maximum embedding length was found. According to Fig. 4, it can be found that the prediction error occurred in the bit prediction when embedding length =17. Therefore, it can be concluded that the maximum embedding length was 16 of coordinates when the was 6 on the cow test mesh. The maximum embedding length of vertex coordinate is calculated as . Similarly, we calculate the maximum embedding length of vertex coordinate , axis and . At this time, the maximum embedding length of this vertex is min,,. In the data embedding stage, the final maximum embedding length of the embedded vertex is the maximum embedding length of all vertex coordinates.

After the prediction error detection of the -axis, -axis and -axis coordinates of the vertex coordinates, if we get 1, we call vertex numbered 1 as the “embedded” vertex without prediction error in C. Otherwise, the vertex index information will be recorded as auxiliary information. The sender sends auxiliary information together with marked encrypted mesh to recipient.

Ii-C Encryption

The original 3D mesh is encrypted by an encryption key Ke. After the vertex coordinates are pre-processed, the sender uses Eq. (4) to translate the integer coordinates to binary.

(4)

where is a floor function and and , the of the coordinate can be obtained by Eq. (3).

The sender uses a stream cipher function to generate pesudo-random bits , and encrypts the bitstream of the original 3D mesh to get the encrypted coordinate binary stream .

(5)

where stands for exclusive OR.

We can get the encrypted integral mesh using Eq. (6)

(6)

where are the integral value of coordinates.

Ii-D Data hiding

To prevent additional data from being detected, the data hiding key Kw is used to encrypt the to-be-embedded data. Sender first calculates “embedded” set C and embed the data into the “embedded” vertex without prediction errors. Finally, the n-MSB of x, y, and z coordinate values are substituted by bit. That is to say, each vertex in “embedded” set C can be embedded with 3 bits using Eq. (7). After data embedding stage, sender gets the encrypted mesh with additional data, i.e., marked encrypted mesh .

(7)

Where s is additional data and , is embedding length and 1 , vC is the vertex after preprocessing and encryption, v is the vertex of marked encrypted mesh.

Fig. 5: Test Meshes: (a) Beetle, (b) Muchroom, (c) Mannequin, (d) Elephant.

Ii-E Data Extraction and Mesh Recovery

After receiving the marked encrypted mesh , since our method is separable, the recipient can use the data hiding key to extract the additional data and use the encryption key to recover the original mesh separately. There are three cases which are as follows:

Ii-E1 Extraction with only Data Hiding Key

In case 1, the -MSB is extracted from the vertex coordinates of “embedded” set C without prediction errors, and then the corresponding plaintext additional data is obtained by using the data hiding key Kw.

(8)

where v C is vertex of the marked encrypted mesh.

Ii-E2 Mesh Recovery with only Encryption Key

In case 2, the recipient can recover the marked encrypted mesh to get the original mesh . The original mesh is recovered in two steps : mesh decryption and Multi-MSB prediction recovery.

The pseudorandom bits are generated by the encryption key , and used to perform xor function with to decrypt the marked encrypted mesh .

(9)

Where is the binary stream of the marked encrypted mesh, is the binary stream of the decrypted mesh with additional data and =0, 1…-1.

After decrypting the mesh, the vertex coordinates of R have been recovered. However, in the data embedding stage, the -MSB of the coordinates of the set of vertices in C is replaced by the additional data. After the mesh is decrypted, due to the spatial correlation of the original mesh, recipient can predict the -MSB of the “embedded” vertex by the -MSB of the adjacent vertices around the “embedded” vertex. The use of adjacent reference coordinates to predict embedded vertex coordinates is called ring- prediction. That is to say, recipient can obtain high quality recovered mesh by using ring-prediction in the recovery stage. As for Fig. 4, the coordinate values of adjacent vertices 2, 3, 4, 5, 7 and 8 have been correctly restored after decryption. Based on their -MSB values, the -MSB of vertex numbered 1 are predicted to be 0 or 1. For example, when predicting the MSB of v, we count the MSB of coordinates of vertex index numbers 2, 3, 4, 5, 6. If the highest bit 0 occurs more than or equal to the number of times 1 occurs, then the MSB of v is predicted to be 0. Using the same prediction method, recipient can correctly recover n-MSB of embeddable vertices.

Ii-E3 Extraction and Mesh Recovery with Both Keys

In case 3, if the recipient has both the data hiding key and the encryption key , the recipient can extract the additional data and recover the original 3D mesh perfectly. Note that data extraction step needs to be performed before mesh restoration.

Meshes m/n 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 32
Beetle 2 0.98 1.97 3.03 3.57 3.70 1.78 0.06 0.02 - - - - - - - - - - - -
3 0.98 1.97 2.96 3.94 4.93 5.92 6.90 7.74 7.59 6.64 1.13 0.10 0.03 0.04 0 0 - - - -
4 0.98 1.97 2.96 3.87 4.70 5.08 4.01 0.19 0.05 0 0 0 0 0 0 0 0 - - -
5 0.98 1.97 2.96 3.95 4.94 5.93 6.92 7.91 8.90 9.89 10.88 11.87 12.86 13.85 14.84 16.51 0 0 0 0
6 0.98 1.97 2.96 3.95 4.94 5.93 6.92 7.91 8.90 9.89 10.88 11.87 12.86 13.64 13.11 10.97 1.65 0.38 0 0
7 0.98 1.97 2.96 3.95 4.94 5.93 6.92 7.91 8.90 9.68 10.28 9.98 7.30 0.34 0.04 0 0 0 0 0
8 0.98 1.97 2.96 3.95 4.94 5.93 6.80 7.31 6.72 3.76 0.10 0.03 0 0 0 0 0 0 0 0
9 0.98 1.97 2.96 3.87 4.31 4.29 1.06 0.12 0 0 0 0 0 0 0 0 0 0 0 0
Muchroom 2 1.11 1.91 1.79 1.27 0.53 0.07 0 0 - - - - - - - - - - - -
3 1.11 2.23 3.34 4.46 5.57 6.69 5.76 3.39 0.71 0.13 0 0 0 0 0 0 - - - -
4 1.11 2.23 3.14 3.23 1.65 0.23 0.09 0 0 0 0 0 0 0 0 0 - - - -
5 1.11 2.23 3.34 4.46 5.57 6.69 7.80 8.92 10.03 11.15 12.26 13.38 14.49 15.61 16.72 15.71 10.38 5.25 1.51 0
6 1.11 2.23 3.34 4.46 5.57 6.69 7.80 8.92 10.03 11.15 12.26 13.38 10.87 6.13 1.39 0.21 0 0 0 0
7 1.11 2.23 3.34 4.46 5.57 6.69 7.80 8.92 9.43 7.96 3.65 0.47 0.17 0 0 0 0 0 0 0
8 1.11 2.23 3.34 4.46 5.57 5.57 4.27 2.54 0.83 0 0 0 0 0 0 0 0 0 0 0
9 1.11 2.23 2.58 1.80 0.79 0.23 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Mannequin 2 0.94 1.64 1.42 0.89 0.21 0.04 0 0 - - - - - - - - - - - -
3 0.94 1.89 2.83 3.78 4.73 5.38 5.10 3.19 1.07 0.21 0 0 0 0 0 0 - - - -
4 0.94 1.83 2.37 2.07 1.05 0.12 0 0 0 0 0 0 0 0 0 0 - - - -
5 0.94 1.89 2.83 3.78 4.73 5.67 6.62 7.57 8.51 9.46 10.40 11.35 12.30 13.24 13.66 12.7 5.38 0.66 0 0
6 0.94 1.89 2.83 3.78 4.73 5.67 6.62 7.57 8.51 9.46 10.40 10.85 9.65 6.08 1.89 0.11 0 0 0 0
7 0.94 1.89 2.83 3.78 4.73 5.67 6.62 7.28 6.93 5.18 2.08 0.50 0.09 0 0 0 0 0 0 0
8 0.94 1.89 2.83 3.78 4.59 4.92 3.18 1.51 0.31 0 0 0 0 0 0 0 0 0 0 0
9 0.94 1.79 2.12 1.51 0.49 0.04 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Elephant 2 1.02 2.04 3.05 3.98 4.76 5.24 5.07 2.44 - - - - - - - - - - - -
3 1.02 2.04 3.06 4.08 5.10 6.12 7.14 8.07 8.82 9.32 9.16 7.93 1.47 0.09 0.001 0 - - - -
4 1.02 2.04 3.06 4.07 5.01 5.80 6.32 6.28 4.81 0.28 0.02 0 0 0 0 0 0 0 0 -
5 1.02 2.04 3.06 4.08 5.10 6.13 7.15 8.17 9.19 10.21 11.24 12.26 13.28 14.30 15.32 16.34 17.29 17.92 18.12 0
6 1.02 2.04 3.06 4.08 5.10 6.13 7.15 8.17 9.19 10.21 11.24 12.26 13.28 14.30 15.32 16.34 17.29 17.92 18.12 0
7 1.02 2.04 3.06 4.08 5.10 6.13 7.15 8.17 9.19 10.21 11.24 12.26 13.28 14.14 14.71 14.92 14.17 11.88 2.40 0
8 1.02 2.04 3.06 4.08 5.10 6.13 7.11 7.98 8.62 8.81 8.20 4.35 0.15 0.02 0 0 0 0 0 0
9 1.02 2.04 3.06 4.05 4.92 5.62 5.95 5.52 1.35 0.07 0 0 0 0 0 0 0 0 0 0
TABLE II: The embedding capacity of the tested meshes on different and embedding length .

Iii Experimental Results and Discussion

In this section, the reversibility and embedding capacity of the improved method are analyzed, and the results are compared with the state-of-the-art methods [20] [21]. As shown in Fig. 5, four standard meshes: Beetle, Mushroom, Mannequin, Elephant. Two datasets: 1815 meshes with off format from The Princeton Shape Retrieval and Analysis Group 111http://shape.cs.princeton.edu/benchmark/index.cgi. and those in OBJ format from The Stanford 3D Scanning Repository222http://graphics.stanford.edu/data/3Dscanrep/.

were used to test performance. The key indicator is embedding rate (ER) presented by bpv (bits per vertex). We analyze the embedding capacity of proposed method and compare with the state-of-the-art methods in section A. The data embedding process causes distortion to the original mesh models, which cannot be observed by the naked eye. Hausdorff distance and signal-to-noise ratio (SNR) are used to evaluate the reversibility of the method in section B. The additional data embedded is a randomly generated 0/1 sequence.

Iii-a Embedding Capacity

The embedding rate is measured by the number of bits per vertex (bpv), which is the ratio of the number of embedded bits to the number of vertices in the mesh model. This section mainly analyzes the influence of m and embedding length n on the embedding capacity. For “Beetle”, Table II showes that when m =5 and the n=16, the maximum embedding rate is 16.51bpv. Similarly, when m=5 and n=15, the maximum embedding rate of Mushroom is 16.72 bpv; when m=5 and n=15, the maximum embedding rate of Mannequin is 13.66 bpv; when m=5 and n=18, the maximum embedding rate of Elephant is 18.12 bpv. Therefore, the maximum embedding rate of Beetle is 16.51 bpv, Muchroom is 16.72 bpv, Mannequin is 13.66 bpv and Elephant is 18.12 bpv.

Fig. 6: Results of four test meshes on different accuracy m under maximum embedding capacity. (a) Hausdorff distance, (b) SNR.

Iii-B Geometric and Visual Quality

Hausdorff distance and signal-to-noise ratio (SNR) can be used to measure the geometric distortion of the meshes. Hausdorff distance is a measure describing the similarity between two sets of points, which is a definition of the distance between two sets of points. Assuming there are two sets of A=(a,aa) and B=(b,bb), the Hausdorff distance between these two sets of points is defined as:

(10)
(11)
(12)

Where is the distance between point a of set A and point b of set B (such as L2), p and q are the number of elements in the set.

The geometrical distortion of a mesh after adding some noise to the mesh content can be measured by the the signal-to-noise ratio (SNR), which is defined as follows: SNR=

(13)

Where ,, are the average of the mesh coordinates, v ,v ,v are the original coordinates, g, g, g are the modified mesh coordinates value, is the number of vertices.

The value of is a trade-off between the quality of the recovered mesh and the computational overhead of the process. In the case of maximum embedding capacity, we tested Hausdorff distance and SNR between the original mesh and recovered mesh with change of . When m is 1, the decimal retention accuracy is too low, resulting in poor quality of the recovered mesh, which is not suitable for most application scenarios and has no practical significance. Therefore, we varied from 2 to 9 to calculated the Hausdorff distance and SNR between original and recovered mesh and observe the phenomenon.

As shown in Fig. 6, the Hausdorff distance decreases linearly with the increase of m, while the SNR increases linearly, indicating that the quality of the recovered mesh becomes higher with the increase of m. We can observe that m=4 balances the quality of the recovered meshes and the overhead time. Therefore, we choose m=4 for experiments and Fig. 8. shows experimental results, demonstrating the visual effects of the original mesh at different stages of the proposed method. However, the naked eye cannot notice the difference between the original and recovered mesh due to the reason that the recipient with encryption key can prefectly recover the original mesh. That is, the proposed method doesnot introduce perceptual distortion.

Iii-C Performance Comparison

The performance of the proposed framework is compared with the state-of-the-art [20] and [21], this part gives the performance compasision in terms of bpv, Hausdorff distance and SNR . As shown in Fig. 7(a), the maximum embedding rate obtained by the improved method is significantly higher than that obtained methods in [20] and [21]. Moreover, in order to reduce the influence caused by the random selection of the test meshes, we test the performance of embedding capacity on the The Princeton Shape Retrieval and Analysis Group datasets. Fig. 7(b) shows that the proposed method has higher embedding capacity compared to the existing RDH-ED methods.

Fig. 7: Test Meshes: (a) Comparison of maximal enbedding rates of test meshes between our method and state-of-the-art methods, (b)Average embedding capacity on a data set.
Test meshes Methods
Embedding
Rate (bpv)
Embedding
Capacity (bit)
Hausdorff
distance
SNR
Data error
percent
Separable
Beetle [20] 0.35 348 9.9000 43.00 36.78 NO
[21] 6.00 5928 0.0820 90.8471 0 NO
Proposed 16.51 16312 0.0086 96.20 0 YES
Muchroom [20] 0.45 106 10.1000 47.91 32.08 NO
[21] 6.00 1356 0.0640 100.0923 0 NO
Proposed 13.66 3087 0.0081 102.25 0 YES
Mannequin [20] 0.34 146 9.3000 52.47 45.21 NO
[21] 6.00 2568 0.0728 100.0923 0 NO
Proposed 16.20 6934 0.0040 130.92 0 YES
Elephant [20] 0.34 8582 0.1100 41.50 4.94 NO
[21] 6.00 149730 0.0848 90.8037 0 NO
Proposed 18.12 452185 0.0086 95.97 0 YES
TABLE III: Proposed method compared with the state-of-the-art methods on the four test meshes.

We compare geometric quality of the proposed method with [20]and [21]. Table III showed that method [21] and [20] are an inseparable scheme, i.e. mesh models decryption and data extraction are carried out at the same time. In the data extraction stage, the Jiang et al.’s  [20] first decrypts the marked encrypted mesh, and then uses the spatial correlation to predict the least significant bits (LSB) of embedded vertex coordinates to recovery the original mesh. In order to improve the shortcoming of the error rate in data extraction is large of  [20], because MSB prediction is more accurate than LSB prediction during the decoding phase, our method can directly extract additional data from the Multi-MSBs of coordinates of encrypted vertices without any error in “embedded” set. Table III showes that the proposed separable method compared with  [20] [21] not only improve the embedding capacity, but also obtain a higher quality recovery mesh and achieve error-free extraction of data.

Fig. 8: Illustrative examples showing the appearance of the mesh of each phase : (a)Original mesh, (b)Encrypted mesh, (c) Marked encrypted mesh, (d)Recovered mesh.

We performed experiments aimed at dense meshes consisting of tens of millions or hundreds of millions of triangles, which are widely used in 3D printing. We randomly selected three dense meshes in .ply consisting of tens of millions or hundreds of millions of triangle from the The Stanford 3D Scanning Repository to test the performance of our method, which are shown in Fig. 9. Experimental results of dense meshes listed in Table IV illustrate that the embedding rate is fairly high and the data extraction error rate is zero. The experiments shows the applicability and effectiveness of the proposed method to dense meshes.

Meshes
Number of
vertices
Number of
faces
Embedding
Rate (bpv)
Embedding
Capacity (bit)
Hausdorff
distance
SNR
Data error
percent
Dragon 871414 437645 17.3890 15153018 0.0086 101.1375 0
Armadillo 172974 345944 14.8133 2562315 0.0004 104.1417 0
Happyvrip 543652 1087716 19.6532 10684501 0.0008 100.4581 0
TABLE IV: Performance of reversible data hiding in dense meshes..

Iv Conclusions

In this paper, We proposed an method of RDH-ED using integer mapping and Multi-MSB prediction for encrypted 3D mesh models. Proposed method highlights not only feasible and efficient RDH-ED in 3D meshes also a balance between capacity and distortion. The Multi-MSB of “embedded” vertex is replaced by additional data. Then, due to the spatial correlation of the original mesh, recipient can perfectly predict the Multi-MSB of the “embedded” vertex by the Multi-MSB of the adjacent vertices around the “embedded” vertex. The Multi-MSB embedding strategy was adopted to improve the embedding capacity, and high quality recovered mesh can be obtained by using ring-prediction in the recovery stage. The recipient can use the data hiding key to extract the data from encrypted domain and use the encryption key to recover the original mesh separately. Experiments show that our method has higher embedding capacity and higher quality recovery mesh compared with the state-of-the-art methods.

For future work, as the selection of the “embedded” set is limited by the connectivity of the mesh, it’s embedding capacity is not very ideal. We will design a more effective method for selecting the “embedded” set to improve embedding capacity.

Fig. 9: Dense meshes: (a) Dragon, (b) Armadillo, (c) Happyvrip.

Acknowledgment

This research work is partly supported by National Natural Science Foundation of China (61872003, 61860206004).

References

  • [1] Fridrich, J., Goljan, M., Du, R.: Lossless data embedding for all image formats. In: Security and Watermarking of Multimedia Contents IV. vol. 4675, pp. 572–583. International Society for Optics and Photonics (2002)
  • [2] Celik, M.U., Sharma, G., Tekalp, A.M., Saber, E.: Lossless generalized-lsb data embedding. IEEE transactions on image processing 14(2), 253–266 (2005)
  • [3] Tian, J.: Reversible data embedding using a difference expansion. IEEE transactions on circuits and systems for video technology 13(8), 890–896 (2003)
  • [4] Hu, Y., Lee, H.K., Chen, K., Li, J.: Difference expansion based reversible data hiding using two embedding directions. IEEE Transactions on Multimedia 10(8), 1500–1512 (2008)
  • [5] Alattar, A.M.: Reversible watermark using the difference expansion of a generalized integer transform. IEEE transactions on image processing 13(8), 1147–1156 (2004)
  • [6] Li, X., Zhang, W., Gui, X., Yang, B.: Efficient reversible data hiding based on multiple histograms modifcation. IEEE Transactions on Information Forensics and Security 10(9), 2016–2027 (2015)
  • [7] Li, X., Li, B., Yang, B., Zeng, T.: General framework to histogram-shifting-based reversible data hiding. IEEE Transactions on image processing 22(6), 2181–2191 (2013)
  • [8] Wang, J., Ni, J., Zhang, X., Shi, Y.Q.: Rate and distortion optimization for reversible data hiding using multiple histogram shifting. IEEE transactions on cybernetics 47(2), 315–326 (2016)
  • [9] Zhang, X.: Reversible data hiding in encrypted image. IEEE signal processing letters 18(4), 255–258 (2011)
  • [10] Zhang, X.: Separable reversible data hiding in encrypted image. IEEE transactions on information forensics and security 7(2), 826–832 (2011)
  • [11] Qian, Z., Zhang, X.: Reversible data hiding in encrypted images with distributed source encoding. IEEE Transactions on Circuits and Systems for Video Technology 26(4), 636–646 (2015)
  • [12] Ma, K., Zhang, W., Zhao, X., Yu, N., Li, F.: Reversible data hiding in encrypted images by reserving room before encryption. IEEE Transactions on information forensics and security 8(3), 553–562 (2013)
  • [13] Puteaux, P., Puech, W.: An efcient msb prediction-based method for highcapacity reversible data hiding in encrypted images. IEEE Transactions on Information Forensics and Security 13(7), 1670–1681 (2018)
  • [14] Wu, H.T., Cheung, Y.m.: A reversible data hiding approach to mesh authentication. In: Proceedings of the 2005 IEEE/WIC/ACM International Conference on Web Intelligence. pp. 774–777. IEEE Computer Society (2005)
  • [15] Tsai, Y.Y.: A distortion-free data hiding scheme for triangular meshes based on recursive subdivision. Advances in Multimedia 2016, 1–10 (2016)
  • [16] Jiang, R., Zhang, W., Hou, D., Wang, H., Yu, N.: Reversible data hiding for 3d mesh models with three-dimensional prediction-error histogram modifcation. Multimedia Tools and Applications 77(5), 5263–5280 (2018)
  • [17] Luo, H., Lu, Z.m., Pan, J.s.: A reversible data hiding scheme for 3d point cloud model. In: 2006 IEEE International Symposium on Signal Processing and Information Technology. pp. 863–867. IEEE (2006)
  • [18] Sun, Z., Lu, Z.M., Li, Z.: Reversible data hiding for 3d meshes in the pvq-compressed domain. In: 2006 international conference on intelligent information hiding and multimedia. pp. 593–596. IEEE (2006)
  • [19] Lee, H., Dikici, Ç., Lavoué, G., Dupont, F.: Joint reversible watermarking and progressive compression of 3d meshes. The Visual Computer 27(6-8), 781–792 (2011)
  • [20] Jiang, R., Zhou, H., Zhang, W., Yu, N.: Reversible data hiding in encrypted threedimensional mesh models. IEEE Transactions on Multimedia 20(1), 55–67 (2017)
  • [21] Shah, M., Zhang, W., Hu, H., Zhou, H., Mahmood, T.: Homomorphic encryptionbased reversible data hiding for 3d mesh models. Arabian Journal for Science and Engineering 43(12), 8145–8157 (2018)
  • [22] Deering, M.: Geometry compression. In: Proceedings of the 22nd annual conference on Computer graphics and interactive techniques. pp. 13–20. Citeseer (1995)