Pattern Recognition 43 (2010) 267--279 Contents lists available at ScienceDirect Pattern Recognition journal homepage: www.elsevier.com/locate/pr A novel 3D mesh compression using mesh segmentation with multiple principal plane analysis Shyi-Chyi Cheng a, , Chen-Tsung Kuo b,c , Da-Chun Wu b a Department of Computer Science and Engineering, National Taiwan Ocean University, 2 Pei-Ning Road, Keelung 202, Taiwan b Institute of Engineering Science and Technology, National Kaohsiung First University of Science and Technology, 1 University Road, Yenchao, Kaohsiung 824, Taiwan c Department of Information Management, Longcyuan Veterans Hospital, VAC, Executive Yuan, 1 Anping Lane 1 Jhaosheng Road, Pingtung 912, Taiwan ARTICLE INFO ABSTRACT Article history: Received 24 July 2007 Received in revised form 20 May 2009 Accepted 26 May 2009 Keywords: 3D mesh Compression Segmentation Principle plane analysis k-means clustering This paper proposes a novel scheme for 3D model compression based on mesh segmentation using mul- tiple principal plane analysis. This algorithm first performs a mesh segmentation scheme, based on fusion of the well-known k-means clustering and the proposed principal plane analysis to separate the input 3D mesh into a set of disjointed polygonal regions. The boundary indexing scheme for the whole object is created by assembling local regions. Finally, the current work proposes a triangle traversal scheme to encode the connectivity and geometry information simultaneously for every patch under the guidance of the boundary indexing scheme. Simulation results demonstrate that the proposed algorithm obtains good performance in terms of compression rate and reconstruction quality. © 2009 Elsevier Ltd. All rights reserved. 1. Introduction In recent years, three-dimensional (3D) mesh models have been widely used in geographical databases, manufacturing assemblies, virtual reality for entertainment applications, or other interactive applications. These models are often represented as complex trian- gular meshes, which may have thousands or even millions of ver- tices and polygons. All of these applications require large storage, computer power and access over bandwidth-limited links. Thus, it is essential to compress the 3D models efficiently. Since Deering [1] first introduced the concept of generalized triangular mesh compres- sion, many algorithms categorized as lossless or lossy, single-rate or progressive, and single resolution or multi-resolution, have been proposed to compress 3D meshes [1–18]. A good review on 3D mesh compression technology can be found in [12,13]. Compared with the lossy 3D mesh coding, a lossless technique re- constructs mesh data identical to the original. Many applications use lossless data compression, such as in executable code, word process- ing files, etc. To compare single-rate coding with progressive coding, single-rate coding focuses on saving the bandwidth between CPU and the graphic card; however, progressive compression of 3D meshes provides multiple resolutions for transmitting complex meshes over networks with limited bandwidth. Early research conducted Corresponding author. E-mail addresses: csc@mail.ntou.edu.tw (S.-C. Cheng), dcwu@ccms.nkfust.edu.tw (C.-T. Kuo), jmskuo@mail.vhlc.gov.tw (D.-C. Wu). 0031-3203/$ - see front matter © 2009 Elsevier Ltd. All rights reserved. doi:10.1016/j.patcog.2009.05.016 single-rate coding on 3D mesh compression. Chow [2] presented an algorithm to efficiently produce generalized triangle meshes. His meshifying algorithms and variable compression method achieved compression ratios higher than Deering's method [1]. Touma et al. [3] proposed the valence-driven approach that records the degree of each vertex along a spiraling vertex tree. Progressive mesh com- pression has been also intensively researched, since it enables the decoder to reconstruct 3D models continuously from coarse to fine levels-of-details (LODs) [4–8]. The Edgebreaker method proposed by Rossignac [9] can handle manifold meshes with multiple boundary loops and handles. Gumhold et al. [10] improved this connectivity upper bound to 3.522 bpv. Triangle mesh compression has been the focus of much study. This representation contains two kinds of information: geometry and connectivity. Geometry coding describes vertex coordinates in the 3D space, and connectivity coding describes how to connect these posi- tions. The connectivity compression problem has been well studied, with many existing methods [12,13] achieving bit-rates of less than two bits per triangle for the connectivity portion of a mesh [11]. Less effort has gone into geometry compression, often simply performed by prediction coding and quantization [14]. Recently, researchers have proposed other geometry compression techniques, including wavelet transform [15], spectral compression [16], and kd tree or octree decomposition [17]. Although the performance of these 3D mesh compression techniques achieving bit-rates between 1 and 2 bytes per vertex is good, the output bit stream remains large for complex objects with high numbers of vertices and triangles. Thus, developing effective compression techniques for the vertex data to