OPTIMIZED MULTIPLE DESCRIPTION SCALAR QUANTIZATION BASED 3D MESH CODING M. Oguz Bici 1, Gozde Bozdagi Akar 1, Andrey Norkin 2 and Atanas Gotchev 2 1 Middle East Technical University, Ankara, Turkey 2 Department of Signal Processing, Tampere University of Technology, Tampere, Finland. ABSTRACT In this paper, we propose a Multiple Description Coding (MDC) scheme for 3D models represented by triangular meshes. The objective of MDC is to encode a source into multiple bitstreams, called descriptions, supporting multiple quality levels of decoding. The proposed scheme is based on multiresolution geometry compression achieved by using wavelet transform and modified SPIHT algorithm. We obtain multiple descriptions by applying Multiple Description Scalar Quantization (MDSQ) to wavelet coefficients. Our aim is to minimize expected distortion at the decoder side. Therefore we optimize the index assignment parameters of MDSQ for a given description loss probability and bit budget constraint. Experimental results show that the proposed algorithm achieves better expected quality compared to single description coding. 1. INTRODUCTION Today, 3D models represented by polygonal meshes are used in various multimedia applications such as computer game, animation, and simulation applications. To maintain a convincing level of realism, many applications require highly detailed complex models. With increasing popularity of such models but limited network bandwidth, it is critical to compress 3D mesh data efficiently. Several algorithms are found in the literature for efficient mesh coding and we refer to [1] and [2] for detailed surveys. However, there are only few studies which address the network losses that affect the decoded model quality. In a typical network, packets may be lost due to congestion and buffer overflow bringing the necessity for an error resilient coding scheme. A solution to combat losses is Multiple Description Coding (MDC). MDC is a well known coding method in literature which generates independent multiple bitstreams (or multiple descriptions) from input data and these multiple bitstreams are stored or transmitted separately. Input data can be approximated with a chosen distortion when any one of the description is received and receiving more than one description reduces the distortion. Since descriptions are independent from each other, decoding of a description does not depend on having any other description, which makes MDC more advantageous compared to error protected layered coding especially at high error rates. In the literature, there are several works that propose MDC of 3D s. In [3] multiple descriptions are generated by splitting mesh geometry into submeshes and including whole connectivity in each description. In [4], multiple description scalar quantization (MDSQ) is applied to wavelet coefficients of a multiresolution compression scheme. The obtained two sets of coefficients are then independently compressed by the SPIHT coder. In these MDC schemes, descriptions are created with heuristic methods and no optimum solutions are proposed with respect to bit budget and loss rate. There are other works which do not use MDSQ for MDC of 3D meshes. In [5], wavelet coefficient trees obtained by Progressive Geometry Compression (PGC) [6] algorithm are partitioned into multiple descriptions. Each set of trees is independently coded with SPIHT. In [7], multiple descriptions are obtained by protecting embedded bitstream generated by PGC algorithm with forward error correction (FEC). In these methods, optimizations with respect to bit budget and description loss rate are reported. In this paper, we propose a multiple description 3D geometry coding method which is based on the previous work using multiple description scalar quantization (MDSQ) [4]. The main idea of applying MDSQ to wavelet coefficients is preserved in this work. However as mentioned earlier, the previous work employs no optimization with respect to channel bandwidth and loss rate. In this work, for a given bit budget and description loss probability, we try to find the optimal MDSQ parameters to minimize expected distortion. The rest of the paper is organized as follows.in Section 2 and 3, we briefly review progressive mesh coding and MDSQ that our algorithm is based on. In Section 4, we present our algorithm with problem definition and the proposed solution. Finally, in Section 5 and 6, we present numerical results and conclusions, respectively. 2. PROGRESSIVE GEOMETRY COMPRESSION Our algorithm is based on PGC scheme [6]. PGC is a progressive compression scheme for arbitrary topology, highly detailed and densely sampled meshes arising from geometry scanning. The original model in PGC is remeshed to have a semi-regular structure which allows subdivision based wavelet transform. The obtained semi-regular mesh undergoes a loop-based or butterfly-based wavelet decom-
position to produce a coarsest level mesh and wavelet coefficients [6]. Since coarsest level connectivity is irregular, it is coded by Touma and Gotsman (TG) coder [8]. Zero-trees consisting of wavelet coefficients are coded with SPIHT [9] algorithm. For improved progressivity, a predetermined number of bit-planes of the coarsest level geometry can be transmitted initially with the coarsest level connectivity and refinement bit-planes can be transmitted as the SPIHT coder descends a given bit-plane of wavelet coefficients [6]. 3. MULTIPLE DESCRIPTION SCALAR QUANTIZATION In Multiple Description Coding (MDC), a source is coded into multiple independent bitstreams, called descriptions. The reason why the descriptions are called independent is that each description can be decoded alone to approximate original source, i.e. a description does not depend on any other description to be decoded. Additionally, when more than one descriptions are combined, they can be decoded together to give a better approximation of source. In this paper, we concentrate on MDC of 3D meshes with two descriptions. The system can be viewed as the two descriptions are transmitted from two separate channels and each channel has a probability of being off. We call this probability as the descriptions loss rate. If the receiver receives from both channels, it uses central decoder and the distortion of decoded model is called central distortion. If it receives from only one channel, then it uses side decoder to generate an approximation of the model from the available description. The distortion in this case is called the side distortion. The central distortion is lower than the side distortion unless the descriptions are replicas of the original source. The MDC method in our work is based on Multiple Description Scalar Quantization (MDSQ) which was first proposed by Vaishampayan [10] as a practical solution. Design of MDSQs can be viewed as creating two coarse side quantizers with acceptable distortions when used alone and one finer central quantizer which is obtained by combining two coarse side quantizers. Actually MDSQ implementation consists of a central quantization with regular joint cells followed by an index assignment operation to create side quantizers. The index assignment is often represented by an index assignment matrix. Elements of the matrix are indices of central quantization cells and the column and row indices are the side quantizers cells. Therefore cells of side quantizers consist of union of corresponding central quantizer cells and depending on the matrix these side quantizer cells are usually union of disjoint intervals. In an MDSQ system, number of side quantizer cells and number of diagonals in index assignment matrix are the two parameters to adjust bitrate and distortion of central and side descriptions. As an extreme case, when number of diagonals is 1, index assignment matrix consists of only main diagonal and both of the side descriptions are same as central description which causes maximum redundancy but minimum side distortions. As number of diagonals increases, redundancy decreases causing more side distortion but central distortion decreases as it is quantized with more source symbols. Reader is referred to [10] for detailed information about MDSQ. 4. PROPOSED METHOD In our proposed system, the input mesh which is remeshed initially undergoes a wavelet decomposition with M levels. Then we quantize the coefficients in each level using same quantization level parameter, Q. In this way, each level has different number of quantized symbols or central bins according to its dynamic range. For a chosen Q, the number of central bins and therefore central distortion are fixed. Then we apply index assignment according to index assignment vector, I A = [I 1 I 2...I M ] T whose elements correspond to number of diagonals used in MDSQ matrix for each level. The outcome of index assignment is two quantized sets of wavelet coefficients which are to be coded by SPIHT and transmitted independently. The encoder and decoder diagrams are shown in Figures 1 and 2 Input Mesh Loss rate Bit budget Coded Wavelet Coefficients Wavelet Coefficients REMESHING & WAVELET TRANSFORM Description 1 Optimization Optimal MDSQ parameters MDSQ SPIHT SPIHT Coarsest level connectivity and geometry data Figure 1. The encoder scheme. INV SPIHT Coarsest level connectivity and geometry data Description 2 Coded Wavelet Coefficients INV SPIHT Side 1 Central Side 2 Figure 2. The decoder scheme. Description 1 Description 2 Side 1 Central Side 2 In the overall system, the parameters Q and I A should be optimized for a given description loss probability and bit budget. More formally, we can state problem definition as follows: Let D 0 denote central distortion and D 1, D 2 denote side distortions for descriptions 1 and 2. While D 0 depends on only Q, D 1 and D 2 depend on both Q and I A. Let the number of bits spent to compress side descriptions be denoted by B1 and B2. If B is the bit budget and P is the description loss probability, we can calculate the expected distortion, E{D}, as:
E{D} = P 2 D φ +P(1 P)D 2 +(1 P)PD 1 +(1 P) 2 D 0 (1) where D φ denotes the distortion in case neither of the descriptions is received. Since D 1 D 2, we can rewrite the Eq. 1 as E{D} P 2 D φ + 2(1 P)PD 1 + (1 P) 2 D 0 (2) Finally, observing that P and D φ are constants, we can define our cost to minimized as J(Q,I A ) = 2(1 P)PD 1 (Q,I A )+(1 P) 2 D 0 (Q) (3) In summary, the optimization problem in this work can be stated as: For a given 3D model, P and B, minimize J(Q,I A ) with respect to Q andi A such that the bit budget condition B 1 + B 2 B is satisfied. In order to approximate optimal solution, we first discretize Q values to have finite number of candidates. Then for each optimal candidate of Q values, we search for the optimal I A vector and calculate its cost. Among the candidates of Q values, the one with lowest cost and corresponding I A vector is decided as the optimal parameters for the problem. The optimization of I A for a given Q value is performed by exhaustive search. In the future work, we plan to employ more efficient optimization algorithms. Figure 3. Expected distortions for different description loss probabilities (P ) when the bit budget is 10000 bytes. 5. RESULTS In this section, we present simulation results for test model Bunny. The reconstruction distortion is relative L 2 error, which is calculated with Metro tool [12]. Relative error is calculated by dividing L 2 distance to the original mesh bounding box diagonal. The distortions in the figures are given in PSNR scale where PSNR = log 10 peak/d, peak is the bounding box diagonal, and d is the L 2 error. When all descriptions are lost and no reconstruction is possible, we calculate the distortion as the L 2 distance between the surface of the original mesh and a single point with coordinates (0, 0, 0). In the experiments, we model the system with two independent channels over which the coded descriptions are transmitted. The two channels have the same probability of being down or equivalently the probability of losing a description (P ). Total size of two descriptions is set to the given bit budget (B bits). We compare our proposed method to two schemes. In the first scheme, we encode the 3D mesh with B/2 bits and transmit same bitstream from the channels. In the second scheme, we encode with B bits and transmit first B/2 from one channel and transmit the remaining B/2 bits from the other channel. We label our method and the two schemes as, and respectively. In Figures 3 and 4, we simulate expected distortion performance for varying P values when the bit budgets 80 Figure 4. Expected distortions for different description loss probabilities (P ) when the bit budget is 000 bytes.
are set to 10000 bytes and 000 bytes respectively. In Figures 5 and 6, we fix P to 2% and 6% and observe the expected distortion performance for varying bit budgets. 65 55 45 5 10 15 Bit budget (KBytes) Figure 5. Expected distortions for different bit budgets when description loss probabilities (P ) is 2%. 55 45 35 5 10 15 Bit budget (KBytes) Figure 6. Expected distortions for different bit budgets when description loss probabilities (P ) is 6%. In the figures, one can see that the proposed algorithm outperforms the other two schemes. However, it is seen that the performance improvement decreases as P increases. This is due to the fact that the no reconstruction error D φ in Eq. 1 has a large magnitude and it gets dominant in expected distortion value as P increases. Therefore we also present central and side distortions for various P values in Fig. 7. 6. CONCLUSIONS AND FUTURE WORK In this paper, we have presented an MDSQ based MDC scheme for 3D meshes. Compared to prior work in [4], MDSQ index assignment parameters are optimized with respect to description loss probability and bit budget. Experimental results show that better expected distortion is (Side & Central) (Side) (Side) (Central) (Central) 10 Figure 7. Side and Central distortions for different description loss probabilities (P ) when the bit budget is 10000 bytes. achieved for various description loss probabilities compared to single description coding and repetition of same description cases. Therefore in transmission scenarios with two independent channels, the proposed method is preferable to be used. One disadvantage of the proposed method is it requires considerable offline processing during computation of many distortion points to optimize MDSQ parameters. The future work will concentrate on decreasing computation complexity and design of MDSQ schemes with more than two descriptions. 7. ACKNOWLEDGEMENTS This work is supported by EC within FP6 under Grant 511568 with the acronym 3DTV. It is also partially supported by the Academy of Finland, project No. 213462 (Finnish Centre of Excellence program (06-11)) and The Scientific and Technological Research Council of Turkey (TUBITAK). Bunny model is courtesy of Stanford. We would like to thank Andrei Khodakovsky for PGC software 8. REFERENCES [1] P. Alliez and C. Gotsman, Recent advances in compression of 3D meshes, in Proc. Symposium on Multiresolution in Geometric ing, 03. [2] J. Peng, C.-S. Kim, and C.-C. J. Kuo, Technologies for 3D mesh compression: A survey, Journal of Visual Communication and Image Representation, vol. 16, pp. 688 733, Dec. 05. [3] P. Jaromersky, X. Wu, Y. Chiang, and N. Memon, Multiple-description geometry compression for networked interactive 3D graphics, in Proc. ICIG 04, Dec. 04, pp. 468 471. [4] M. O. Bici and G. Bozdagi Akar, Multiple description scalar quantization based 3D mesh coding,
in Proc. IEEE Int. Conf. Image Processing, Atlanta, US, Oct. 06, pp. 553 556. [5] A. Norkin, M. O. Bici, G. Bozdagi Akar, A. Gotchev, and J. Astola, Wavelet-based multiple description coding of 3-D geometry, in VCIP 07, Proc. SPIE, San-Jose, US, Jan. 07, vol. 68, pp. 682I 1 682I 10. [6] A. Khodakovsky, P. Schröder, and W. Sweldens, Progressive geometry compression, in Siggraph 00, Computer Graphics Proceedings, 00, pp. 271 278. [7] M. O. Bici, A. Norkin, G. Bozdagi Akar, A. Gotchev, and J. Astola, Multiple description coding of 3D geometry with forward error correction codes, in Proc. 3DTV-CON 07, Kos, Greece, May 07. [8] C. Touma and C. Gotsman, Triangle mesh compression, in Proc. Graphics Interface, Vancouver, BC, Canada, Jun. 1998. [9] A. Said and W. Pearlman, A new, fast, and efficient image codec based on set partitioning in hierarchical trees, IEEE Trans. Circuits Syst. Video Technol., vol. 6, no. 3, pp. 243 2, June 1996. [10] V. Vaishampayan, Design of multiple description scalar quantizers, IEEE Trans. Inform. Theory, vol. 39, no. 3, pp. 821 834, May 1993. [11] E. Riskin, Optimum bit allocation via generalized BFOS algorithm, IEEE Trans. Inform. Theory, vol. 37, pp. 0 02, March 1991. [12] P. Cignoni, C. Rocchini, and R. Scopigno, Metro: Measuring error on simplified surfaces, Computer Graphics Forum, vol. 17, pp. 167 174, 1998.