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 RDHED for managing ciphertext data.
In recent years, some existing RDHED 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 RDHED 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 nonoverlapping 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.
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 RDHED 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 datahider 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 RDHED 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 atartoftheart 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 RDHED
[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 twotier RDHED 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 multiMSB 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 stateoftheart methods, we improves the embedding capacity and the quality of recovered mesh, and realizes errorfree extraction of the data.
The main contributions of this paper are as follows:
1) The MultiMSB 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.
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 preprocessing, 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 highquality 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.
Iia Preprocessing
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,f…f) 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.








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)  
…  …  …  …  …  …  … 
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 [133]. 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 bitlength 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 09999, and the required storage bit length is 16.
IiB 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.
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 2MSB and 3MSB 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.
IiC Encryption
The original 3D mesh is encrypted by an encryption key Ke. After the vertex coordinates are preprocessed, 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 pesudorandom 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.
IiD Data hiding
To prevent additional data from being detected, the data hiding key Kw is used to encrypt the tobeembedded data. Sender first calculates “embedded” set C and embed the data into the “embedded” vertex without prediction errors. Finally, the nMSB 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.
IiE 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:
IiE1 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.
IiE2 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 MultiMSB 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 ringprediction 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 nMSB of embeddable vertices.
IiE3 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 
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 stateoftheart 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 ^{1}^{1}1http://shape.cs.princeton.edu/benchmark/index.cgi. and those in OBJ format from The Stanford 3D Scanning Repository^{2}^{2}2http://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 stateoftheart 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 signaltonoise 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.
Iiia 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.
IiiB Geometric and Visual Quality
Hausdorff distance and signaltonoise 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,a…a) and B=(b,b…b), 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 signaltonoise 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 tradeoff 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.
IiiC Performance Comparison
The performance of the proposed framework is compared with the stateoftheart [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 RDHED methods.
Test meshes  Methods 



SNR 

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 
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 MultiMSBs 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 errorfree extraction of data.
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 





SNR 


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 
Iv Conclusions
In this paper, We proposed an method of RDHED using integer mapping and MultiMSB prediction for encrypted 3D mesh models. Proposed method highlights not only feasible and efficient RDHED in 3D meshes also a balance between capacity and distortion. The MultiMSB of “embedded” vertex is replaced by additional data. Then, due to the spatial correlation of the original mesh, recipient can perfectly predict the MultiMSB of the “embedded” vertex by the MultiMSB of the adjacent vertices around the “embedded” vertex. The MultiMSB embedding strategy was adopted to improve the embedding capacity, and high quality recovered mesh can be obtained by using ringprediction 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 stateoftheart 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.
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 generalizedlsb 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 histogramshiftingbased 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 predictionbased 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 distortionfree 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 threedimensional predictionerror 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 pvqcompressed 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(68), 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)
Comments
There are no comments yet.