Rapid and Blind Watermarking Approach of the 3D Objects Using QR Code Images for Securing Copyright

Watermarking techniques in a wide range of digital media was utilized as a host cover to hide or embed a piece of information message in such a way that it is invisible to a human observer. This study aims to develop an enhanced rapid and blind method for producing a watermarked 3D object using QR code images with high imperceptibility and transparency. The proposed method is based on the spatial domain, and it starts with converting the 3D object triangles from the three-dimensional Cartesian coordinate system to the two-dimensional coordinates domain using the corresponding transformation matrix. Then, it applies a direct modification on the third vertex point of each triangle. Each triangle's coordinates in the 3D object can be used to embed one pixel from the QR code image. In the extraction process, the QR code pixels can be successfully extracted without the need for the original image. The imperceptibly and the transparency performances of the proposed watermarking algorithm were evaluated using Euclidean distance, Manhattan distance, cosine distance, and the correlation distance values. The proposed method was tested under various filtering attacks, such as rotation, scaling, and translation. The proposed watermarking method improved the robustness and visibility of extracting the QR code image. The results reveal that the proposed watermarking method yields watermarked 3D objects with excellent execution time, imperceptibility, and robustness to common filtering attacks.


Introduction
Digital watermarking has been proven effective for protecting digital media. It has recently gained considerable research interest. e watermarking process aims to embed secret data such that the resulting object is not greatly distorted. Also, the embedded watermark bits should resist malicious attacks to protect and/or verify the object ownership. Although the 3D objects are widely available and important, there are a few existing watermarking techniques. erefore, the copyright of the 3D object needs more requesting to push research towards developing protection techniques. e various watermarking methods for 3D objects can be classified according to the embedding domains such as the spatial domain [1][2][3], the spectral domain [4,5], and the transform domain [6,7].
A mesh of a 3D object is a collection of polygonal facets that can be entirely described by two kinds of information: the geometry information describes the 3D positions (coordinates) of all its vertices, while the topology information provides the adjacency relations between the different elements [8,9]. Considering these two attributes, watermark information can be added by modifying either of them [10]. Hence, they are usually called embedding primitives. Upon embedding, the quantity of the primitive is modified, typically by a very small amount, so that the watermarked model can still be used normally in any of its intended applications. Moreover, the watermark bits can be any stream of data to identify the owner while the Quick Response code (QR code) image stores data efficiently and has strong error correction capability [11,12].
For document protection, in [13], Arkah et al. presented a color document watermarking technique based on embedding a QR code image into a document. e proposed method gets the document signature and information about the embedding and generates multi-QR codes to watermark the color document. e main contribution of the implemented prototype is to protect the color document against alteration and tampering. Moreover, in [14], Cardamone et al. proposed a nonblind watermarking method of documents for digital rights protection. e proposed method is using the QR code image that contains a signed ID of the user, and then it embeds the QR code image into the third level of the approximation coefficients from the discrete wavelet transform. On the other hand, in [15], Peng et al. generated a 3D QR code which is computed from their 2D counterpart. e 3D QR code has a special structure and is designed to be embedded in 3D shapes. e resultant QR code is 3D printable structures on any curved surface using homogeneous material.
In [16], Rosales-Roldan et al. presented three-color image watermarking techniques based on the singular value decomposition (SVD), discrete wavelet transform (DWT), and discrete cosine transform (DCT) which are used in the QR code image for authentication. e proposed methods apply Arnold permutation into the QR code image to prove the security. us, the proposed method uses the transformed luminance channel (Y) of the Y C b C r color space to embed the QR code image using the Quantization Index Modulation (QIM). In the same context, in [17], Patvardhan et al. presented a color image watermarking method that employs a combination between the discrete wavelet transform (DWT) and the singular value decomposition (SVD) for embedding the QR code image in a Y C b C r color space. e advantages of the proposed method are resistance to common attacks and providing good imperceptibility. Furthermore, in [18], Ran presented a QR code watermarking technique based on embedding the QR code itself in the spatial domain. e proposed method uses MD5 encryption and the logistic chaotic mapping algorithms to directly embed the watermark information into the original QR code image.
In [19], Chow et al. proposed a watermarking method for digital images using the QR code images and based on the discrete wavelet transform (DWT) and the discrete cosine transform (DCT). e proposed method decomposed the cover image using the discrete wavelet transform after it applied the discrete cosine transform on each block of the cover image. e QR code image was transformed using Arnold transform to increase security. en two pseudorandom number sequences are generated to embed the QR code information in the DCT block of the cover image. e main idea of the proposed watermarking method benefits from the QR code structure that is inherent in the error correction to improve the robustness of the watermarking against attacks. Based on the discrete wavelet transform, in [20], Abdul et al. proposed a blind watermarking technique for images using the QR code.
In this paper, we are developing an enhanced rapid and blind method for producing a watermarked 3D object using QR code images with high imperceptibility and transparency. is paper is organized as follows. Section 2 discusses materials and methods used for the 3D object watermarking method and related procedures. e proposed watermarking method is described in Section 3. Section 4 presents the analysis and discussion of the experimental results. Finally, conclusions are summarized in Section 5.

Materials and Methods
is study aims to watermark the 3D object using a QR code to identify ownership rights of that original 3D object. e proposed method converts the 3D object vertices of the triangle from 3D coordinates to 2D coordinates by using the corresponding transformation matrix. en, the watermarking step will be applied using the 2D coordinates of the triangle vertices and the QR code image pixel. e objective of digital watermarking can be summarized as embedding information into the "cover media" in such a way that the watermarked "Stego media" is perceptually indistinguishable from the original one. Furthermore, a good watermarking algorithm should be robust to removal or modification trials.
is is of great importance especially if the watermark will be used to authenticate the source. Another critical issue with watermarking is how secure it is; in other words, how hard it is to decode the hidden information by an unauthorized user even if the watermarking technique is known.

e QR Code.
e Quick Response code is always abbreviated to QR code which is a barcode that is readable by an imaging device such as a camera and smartphone. e QR code system was originally invented and designed in 1994 by the Japanese company Denso Wave and it was registered as a trademark of the same company [21,22]. Simply, e QR code is a matrix code of two-dimensional barcodes and consists of black squares arranged in a square grid on a white background. Unlike the one-dimensional barcodes that were designed to be scanned by a narrow beam of light, the QR code is scanned by a digital image sensor and then digitally analyzed by a programmed processor. e QR code includes three main distinct squares at the corners to set up the image size normalization, orientation, and angle of viewing. Moreover, the small dots throughout the QR code are then converted to binary numbers and validated with the Reed--Solomon error-correcting algorithm [23] which are encoded as bytes of 8 bits. In practice, QR codes often contain data for a locator, identifier, or tracker that points to a standard URL for a website or application. A QR code uses four standardized encoding modes (numeric: Max. 7,089 characters, alphanumeric: Max. 4,296 characters, byte/binary: Max. 2,953 characters, and kanji: Max. 1,817 characters) to store the amount of data efficiently; extensions may also be used [23].
In this paper, the QR code generator is based on the ZXing (zebra crossing) library [24][25][26]. e QR code generator is software that creates data into a QR code image using the format information of two things: the error correction level and the mask pattern used for the symbol. e mask patterns are specified on a grid that is repeated as necessary to cover the whole symbol and protected from errors with a Bose-Chaudhuri-Hocquenghem (BCH) code and a couple of complete copies are included in each QR pattern. Hence, ZXing is an open-source library project implemented in Java, with ports to other languages which supports generating and decoding of multiformat 1D/2D barcode image processing such as QR code and Data Matrix within images and all files can be imported on the fly from a maven repository or can be downloaded via a command. Figure 1 shows the generated four QR codes of size 69×69 which are used as an embedded image within the 3D objects.

Comparison Methods.
In this study, the imperceptibility and the transparency performance analysis of the proposed watermarking method were evaluated between the original 3D object u and the watermarked object v by four different comparison methods. ese include Euclidean distance, Manhattan distance, cosine distance, and the correlation distance. e Euclidean distance or Euclidean metric is the length measurement of a segment connecting between the two points in either the plane or 3-dimensional space in Euclidean space [27]. erefore, it is the most obvious way of representing the differences between points in two 3D objects. It is given as the following equation: where u x , u y , and u z are the Cartesian coordinates of the original 3D object u. v x , v y , and v z are the Cartesian coordinates of the watermarked object v.
e Manhattan distance, also known as the taxicab metric, is the sum of the absolute differences of Cartesian coordinates between two points [28].
is is known as taxicab distance because the shortest path that the car could take between two intersections has the same distance in taxicab geometry.
e Manhattan distance is given as follows: where u x , u y , and u z are the Cartesian coordinates of the original 3D object u. v x , v y , and v z are the Cartesian coordinates of the watermarked object v.
Mathematically, the Cosine distance is a metric used to measure the cosine of the angle between the two 3D objects of an inner product space which is projected in a multidimensional space [29]. us, it is a judgment of orientation and not magnitude and determines whether the two objects are pointing in roughly the same direction which is given as follows: where u x , u y , and u z are the Cartesian coordinates of the original 3D object u. v x , v y , and v z are the Cartesian coordinates of the watermarked object v. e correlation distance is a statistic that measures the dependence between two 3D objects related to each other which is given as follows [30]: where u x , u y , and u z are the Cartesian coordinates of the original 3D object u. v x , v y , and v z are the Cartesian coordinates of the watermarked object v.

Converting 3D Coordinates to 2D
Coordinates. Let us consider the basic representation of triangle vertices A, B, and C in the 3D object coordinate system. So, there is a plane P defined with three points A(xa, ya, za), B(xb, yb, zb), and C(xc, yc, zc) in the threedimensional Cartesian coordinate system. us, for transforming the 3D coordinates to 2D coordinates and later restore coordinates using the transformation matrix, the first step is to set the A as the origin point of the coordinate system. e next step is to produce a new vector called localz that is perpendicular to both AB and AC using the cross product. en, calculate localx which is the line segment that begins at the origin and ends at B. localy is the cross product between localz and localx. Finally, Figure 2 shows a piece of MATLAB source code to produce the transformation matrix.
Based on the above, the main contributions of this paper are as follows: (1) we introduce a 3D object watermarking method that hides a QR code image into the 3D object vertices; (2) we propose a blind extraction based on the reverse steps of the embedding process to recover the QR code image; (3) we brought evidence that the proposed watermarking method performed across the different 3D objects ensures a minimum shape distortion; (4) we present comprehensive experimentation examining the performance of our method and comparing it with other methods.
Computational Intelligence and Neuroscience 3

The Proposed Method
Assume that the 3D object information is stored in an STL file. is format describes only the surface geometry of a three-dimensional object without any representation of color, texture, or other common model attributes. So, the mathematical representation of the 3D object vertices is defined as Obj ⊆ R 3 . In this study, Figure 3 illustrates a general model overview for the proposed method to watermark the 3D object using a QR code image. Each three vertices' coordinate in the Obj will be used to embed onepixel value from the QR code image. e proposed method starts with converting the Obj triangles from the three-dimensional Cartesian coordinate system to the two-dimensional coordinates domain using the corresponding transformation matrix as mentioned in Section 2. en, the watermarking process will be applied using the 2D coordinates of the vertices, QR code image, and a secret key. e watermarked 3D object will be constructed by the inverse of the modified Obj triangles to 3D coordinates.
3.1. e Watermarking Procedure. In this step, the watermarking process mainly focuses on embedding the QR code image into the 3D object. e proposed method applies a direct modification on the third vertex point of the Obj triangle in the 2D coordinates. Hence, let us assume that the three vertices of the current triangle in the 2D coordinates are A(0, 0), B(x, 0), and C(x, y). ere is a point D(x, 0) located on AB which is the projection of the Point C on AB.
In this paper, the proposed embedding method calculates the point D'(x + Δ, 0) according to the current QR code image pixel to be using the following equation:  where distAB, distAD, and distAD ′ are the Euclidean distance between A, B, and D ′ QRcode refers to the current pixel of the QR code image. An additional parameter β will be used for the embedding which indicates the number of intervals that will be used to divide the line AB distance. For security matter, the embedding process uses a Secret key to generate random permutation numbers such as [31,32] which identified the current index of the Obj vertices. Moreover, to correctly retrieve the QR code image correctly and avoid the overflow problem, a preprocessing step is applied to the QR code image using a small integer value α as the following equation: Finally, the watermarked 3D object Obj' will be produced by restoring the 3D coordinates from the modified two-dimensional coordinates domain using the corresponding transformation matrix. e detailed steps of the watermarking process are listed in Algorithm 1.

e Extraction Procedure.
In the extraction process, the steps carried out in the watermarking process are generally reversed to retrieve the QR code image using the secret key. erefore, the extraction process starts with converting the 3D coordinates of the watermarked 3D object Obj' to 2D coordinates using the transformation matrix. en, calculate the point D'(x', 0) on AB which is perpendicular from C'. In blind manner and using β, the QR code pixel will be calculated using the distance of AB and AD′ according to the following equation: Notice that the secret key is required to identify the index which is the current QR code pixel located. e detailed list of the extraction procedure steps is illustrated in Algorithm 2.

Results and Discussion
is section presents the performance and analysis results of the proposed watermarking and extraction algorithms using Egg [33], Bunny [34], Horse [34], and Cat Figurine [35] standard 3D objects. Table 1 presents the detailed description of the number of vertices and maximum capacity in bytes for each 3D object and the corresponding image size in pixel of the used QR code and its decoded text in bytes as mentioned in Section 2.

Time Performance Results of the Proposed Algorithms.
e proposed algorithms were implemented using Intel(R) Core (TM) i7-4700MQ CPU, 2.40 GHz processor with 8 GB of RAM. Moreover, the MATLAB version R2017b -64 bits was used in coding the implementation. In addition, the parameters α and the secret key for the QR code image adjustment and the random permutation number generator were selected to be 5 and 1987, respectively. Figure 4 records the execution time of the proposed watermarking and extraction process with ß values ranging from 100 to 1000 for each 3D object which was measured in terms of seconds. Clearly, the extraction execution time is less than the watermarking execution time for the same 3D object. us,

Imperceptibly and Transparency Performance Results.
e imperceptibly and the transparency performances of the proposed watermarking algorithm were evaluated using Euclidean distance, Manhattan distance, cosine distance, and the correlation distance values whose details were explained in Section 2. Figure 5 shows the obtained comparison results of the proposed method between the original 3D object and the watermarked 3D object using values of ß between 100 and 1000. e results show that higher values of ß offer a better visual quality of the watermarked 3D object. Input: 3D object (Obj), QR code image, Secret Key, α and β Output: the watermarked 3D object (Obj') (1) Read the 3D object Cartesian coordinate values ⟶ Obj (2) Read QR code image ⟶ QRcode (3) Preprocessing QRcode pixel using the following function: (4) Generate random permutation numbers using the Secret Key⟶ Index   Additionally, Figure 6 illustrates the corresponding resultant values of the Structural Similarity (SSIM) index of the extracted QR code image which is a perceptual metric that quantifies image quality degradation as perceived change in structural information [36] using the following equation: where µx and µy are the local means, and σ 2 x and σ 2 y are the variances of x and y. σ xy is the cross-covariance for images x, y. c 1 Figure 7 shows real samples of extracted QR code images from the 3D models using various values of ß where the extracted QR code images were decoded using ZXing library and the online tool Scan QR code and barcode from IMGonline.com.ua [37].

Robustness Performance Results.
In this subsection, the robustness performance evaluation of the proposed watermarking method is investigated against the common 3D object filtering operations such as rotation, scaling, and translation. To prove the robustness of the proposed watermarking method, the Egg and Bunny watermarked 3D object when β � 500 were affected using the following attacks using open-source system MeshLab (v2016.12): (a) Rotation (with rotation angle � 90°, 180°, and 270°) (b) Scaling (with uniform scaling by 2, 3, and 4) (c) Translation (with XYZ translation by -1, 0.5, and 1) Table 2 illustrates the SSIM results of extracted QR code images after the previous types on the watermarked 3D object attacks. e extracted QR code image qualities are partially degraded after attacks; however it is remaining recognizable Computational Intelligence and Neuroscience and decoded using ZXing library and the online tool Scan QR code and barcode from IMGonline.com.ua. us, the experimental result values prove that the proposed watermarking method maintains almost perfect retrieval of the QR code image and is robust against these attacks.

Comparison with Related Techniques.
e main characteristics of the proposed method are compared with other existing methods to confirm its validity and efficiency. e comparative study is conducted in order to verify the used cover media, the watermark sequence, the embedding space, the domain, and the blindness extraction process between the proposed method and other methods. Table 3 shows a comparison of the recorded details of the related methods. In [13,14,16,17,19], the presented methods were based on embedding the QR code into images based on various domains. On the other hand, in [1,3] the presented methods were based on watermarking the 3D object using a different watermark sequence. Hence in this paper, the proposed 3D     object watermarking method achieves the advantage characteristic of using the QR code as the embedding sequence into the 3D object.

Conclusions
is paper proposes a rapid watermarking method that embeds a QR code image in a 3D object based on the spatial domain.
e proposed method starts with converting the 3D object triangles from the three-dimensional Cartesian coordinate system to the two-dimensional coordinates domain using the corresponding transformation matrix and then applying a direct modification on the third vertex point of each triangle. Each three vertices' coordinate in the 3D object can be used to embed one pixel from the QR code image by using the proposed watermarking algorithm. e extraction algorithm is totally blind based on the secret key and the reverse steps of the embedding process to recover the QR code image. e execution time of the proposed method to embed 225 bytes takes about 0.69 seconds; however, the extraction process takes 0.52 seconds for the same watermark bytes. e imperceptibly and the transparency performances of the proposed watermarking algorithm were evaluated using Euclidean distance, Manhattan distance, cosine distance, and the correlation distance values. e results show that higher values of ß, the division parameter, offer a better visual quality of the watermarked 3D object. e proposed method was tested under various filtering attacks, such as rotation, scaling, and translation. e proposed watermarking method improved the robustness and visibility of extracting the QR code image.
Data Availability e data that support the findings of this study are available from the corresponding author upon reasonable request.

Conflicts of Interest
e authors declare that they have no conflicts of interest to report regarding the present study.  [19] Grayscale image QR code Grayscale DWT-DCT Yes Rosales-Roldan et al. [16] Color image QR code YCbCr SVD-DWT-DCT Yes Patvardhan et al. [17] Color image QR code YCbCr SVD-DWT No Arkah et al. [13] Color document QR code RGB, gray Spatial domain Yes Cardamone et al. [14] Color document QR code RGB, gray DWT No Ran [18] QR code image QR code Binary image Spatial domain Yes Jiang et al. [3] 3D