Centroidal Voronoi Tessellation with Applications in Image and Mesh Processing

Centroidal Voronoi tessellation (CVT) is a clustering technique by partitioning a set of discrete data points into non-overlapping clusters, where the generators of the tessellations are also the centroids of the corresponding Voronoi regions. It has been a powerful tool in many applications ranging from data analysis, numerical partial differential equations, and geometric modeling. In order to extend its applications in both image and mesh processing, in this thesis we present: (a) a harmonic edge-weighted CVT (HEWCVT) based algorithm for image segmentation and adaptive superpixel generation; (b) two algorithms for surface segmentation and polycube construction via the harmonic boundary-enhanced CVT (HBECVT); (c) a feature-aligned surface parameterization algorithm using Loop subdivision and secondary Laplace operator (SLO); and (d) a CVT based 3D image segmentation algorithm for tetrahedral/hexahedral meshing and quality improvement using anisotropic diffusion flow. First, we develop the HEWCVT model for image segmentation by introducing a harmonic form of clustering energy which combines the image intensity with cluster boundary information. Compared to other CVT-based methods, the HEWCVT algorithm can not only overcome the sensitivity to the seed point initialization and noise, but also improve the accuracy and stability of clustering results, as verified in several types of images. We then present an adaptive superpixel generation algorithm based on HEWCVT. First, an innovative initial seed sampling method based on quadtree decomposition is introduced, and the image is divided into small adaptive segments according to a density function. Then, the local HEWCVT algorithm is applied to generate adaptive superpixels. We then develop CVT-based surface segmentation algorithms for polycube construction and hexahedral mesh generation. Given a smooth surface triangle mesh, we segment triangles into six clusters in the surface normal space while satisfying the constraints of polycube construction. A bijective mapping between the input mesh and polycube surfaces is then built via a planar domain parameterization. Inspired by the HEWCVT model for iv image segmentation, we develop the HBECVT method by including local neighbouring information in the energy function. Improving upon the classic CVT method, the HBECVT algorithm can not only overcome the sensitivity to the initialization and noise, but also improve the segmentation results and the resulting polycubes by reducing non-monotone boundaries. Based on the constructed polycube, we then generate quality all-hexahedral (all-hex) meshes. Uniform all-hex meshes and volumetric T-meshes can be obtained through the octree subdivision and mapping. We can also generate adaptive all-hex meshes by extracting the dual mesh from a hybrid octree, which consists of polyhedral cells and each grid point is always shared by eight cells. As a follow-up, we develop a new two-step surface segmentation scheme for polycube construction using generalized CVTs. In the first step, eigenfunctions of the SLO are coupled with the HBECVT model to classify vertices of the surface into several components based on concave creases and convex ridges of an object. Neighbouring vertex information is incorporated into the clustering energy function to avoid over-segmentation, jaggy boundaries and noise effect. For each segmented component, in the second step we apply the skeleton information to define local coordinates and include them into the HBECVT model to further segment it into several patches, which are revised using predefined geometric constraints for valid polycube construction. Our skeleton-based CVT algorithm is suitable for slim cylindrical objects and can reduce unnecessary singularities with compact polycube structures. Based on the constructed polycubes, we generate quality all-hex meshes and volumetric T-meshes via parametric mapping. However, the computation of the above SLO eigenfunctions utilizes quadrilateral control meshes with Catmull-Clark basis functions, which limits its application on triangle meshes. To address this issue, we calculate the eigenfunctions of SLO on triangle meshes by using Loop subdivision basis functions. Multiple modes are used for CVT-based surface segmentation and boundaries of the segmented regions are extracted as the feature lines which contain concave creases and convex ridges. For each boundary edge, its two adjacent triangles are