To the Graduate Council: I am submitting herewith a thesis written by ...
To the Graduate Council: I am submitting herewith a thesis written by ...
To the Graduate Council: I am submitting herewith a thesis written by ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Chapter 4: Algorithm Overview 43implementation of Guillaume’s algorithm [Guillaume, 2004]. He presents a moreefficient algorithm for <strong>the</strong> decomposition of 3D arbitrary triangle meshes into surfacepatches. The algorithm is based on <strong>the</strong> curvature tensor field analysis and presents twodistinct complementary steps: a region-based segmentation, which decomposes <strong>the</strong>object into known and near constant curvature patches and a boundary rectificationbased on curvature tensor directions, which correct boundaries <strong>by</strong> suppressing <strong>the</strong>irartifacts and discontinuities.We <strong>the</strong>n analyze each surface patch individually to compute <strong>the</strong> CVM, which is <strong>the</strong>entropy of curvature. We compute <strong>the</strong> Gaussian curvature on each of those surfacepatches. The kernel density of <strong>the</strong> Gaussian curvature is estimated. We optimize <strong>the</strong>bandwidth of <strong>the</strong> kernel density using <strong>the</strong> plug-in method to ensure stability in <strong>the</strong>resolution normalized entropy. This log scale measure from <strong>the</strong> curvature density is<strong>the</strong> curvature variation measure (CVM). We <strong>the</strong>n combine <strong>the</strong> surface connectivityinformation and <strong>the</strong> curvature variation measure into a single graph representation.We call our CVM algorithm a curvature-based approach because <strong>the</strong> segmentation and<strong>the</strong> description require computation of curvature. (Curvedness is a function ofprincipal curvatures.) However, <strong>the</strong> surface variation measure that we describe is notinvariant to scale. We would like to emphasize that our algorithm can be used fordescribing occluded scenes as well but at <strong>the</strong> cost of partial graph matching if we haveto attempt object recognition.4.2 Building Blocks of <strong>the</strong> CVM algorithmAs background, we first present a brief overview of surface curvature in <strong>the</strong> importantcontext of differential geometry. We in particular deal with curvature of a surface inSection 4.2.1 because we have assumed that curvature intrinsically describes <strong>the</strong> localshape of that surface. The differential geometry section helps us understand curvatureestimation on triangle meshes. We present a brief survey on curvature estimationtechniques in Section 4.2.2 and <strong>the</strong>n discuss <strong>the</strong> <strong>the</strong>ory behind <strong>the</strong> o<strong>the</strong>r buildingblocks of <strong>the</strong> algorithm in Section 4.2.3 and Section 4.2.4.4.2.1 Differential Geometry of Curves and SurfacesFirst, let us consider <strong>the</strong> continuous case for 2D curves. Using [Carmo, 1976], wearbitrarily define a planar curve α: I R 2 par<strong>am</strong>eterized <strong>by</strong> arc length s such that wehave α(s). We carefully choose, without loss of generality, this par<strong>am</strong>eterization suchthat <strong>the</strong> vector field T = α’ has unit length. With this construction, <strong>the</strong> derivative T’ =α" measures <strong>the</strong> way <strong>the</strong> curve is turning in R 2 and we term T’ <strong>the</strong> curvature vectorfield. Since T’ is always orthogonal to T, that is normal to, we can write that T’=κN