Advertisement

Spectral-based mesh segmentation

  • Daniel Mejia
  • Oscar Ruiz-SalgueroEmail author
  • Carlos A. Cadavid
Original Paper

Abstract

In design and manufacturing, mesh segmentation is required for FACE construction in boundary representation (B-Rep), which in turn is central for feature-based design, machining, parametric CAD and reverse engineering, among others. Although mesh segmentation is dictated by geometry and topology, this article focuses on the topological aspect (graph spectrum), as we consider that this tool has not been fully exploited. We pre-process the mesh to obtain a edge-length homogeneous triangle set and its Graph Laplacian is calculated. We then produce a monotonically increasing permutation of the Fiedler vector (2nd eigenvector of Graph Laplacian) for encoding the connectivity among part feature sub-meshes. Within the mutated vector, discontinuities larger than a threshold (interactively set by a human) determine the partition of the original mesh. We present tests of our method on large complex meshes, which show results which mostly adjust to B-Rep FACE partition. The achieved segmentations properly locate most manufacturing features, although it requires human interaction to avoid over segmentation. Future work includes an iterative application of this algorithm to progressively sever features of the mesh left from previous sub-mesh removals.

Keywords

Fiedler vector Mesh Laplacian Mesh segmentation  Spectral analysis 

Abbreviations

\({\varvec{M}}\)

Triangular mesh of a connected 2-manifold embedded in \({\mathbb {R}}^3\) composed by the set of points \(X = \{x_1,x_2,\ldots ,x_n\}\) and the set of triangles \({\mathcal {T}} = \{\tau _1,\tau _2,\ldots ,\tau _p\}\).

\({\varvec{E}}\)

Set of the edges \(\{e_1,e_2,\ldots ,e_n\}\) of all the triangles \({\mathcal {T}}\) describing the connectivity of M.

\({\varvec{G}}\)

Graph representation of M consisting of the pair (XE).

\({\varvec{W}}\)

Weighted adjacency matrix of G of size \(n \times n\).

\({\varvec{D}}\)

\(n \times n\) diagonal matrix where \(D_{ii}\) is equal to the degree (weighted neighborhood size) of the vertex \(x_i\).

\({\varvec{L}}\)

Laplacian matrix of G defined as \(L = D-W\).

\(\lambda _i\)

\(i^{\hbox {th}}\) eigenvalue of the matrix L (sorted in ascending order).

\({\varvec{u_i}}\)

Corresponding eigenvector of \(\lambda _i\).

\({\varvec{u'_2}}\)

Second eigenvector of L sorted in ascending order.

\({\varvec{V}}\)

Indices of the vertices of G in concordance with \({\varvec{u'_2}}\) (re-labeling).

\({\varvec{d}}\)

Second differences of \({\varvec{u'_2}}\) with respect to V.

\({\varvec{d'}}\)

Filtered version of d.

\({\varvec{t_i}}\)

\(i^{\hbox {th}}\) local maximum of the set of all local maxima of \(d'\) sorted in descending order.

\({\varvec{{\mathcal {M}}}}\)

A connected and oriented Riemannian 2-manifold embedded in \({\mathbb {R}}^3\).

\({\varvec{\frac{\partial }{\partial y^i}}}\)

Tangent vectors defining a local coordinate system at a point \(p \in {\mathcal {M}}\).

\({\varvec{g}}\)

Metric tensor which defines an inner product on \({\mathcal {M}}\) where \(g_{ij}\) is the local inner product between the coordinates \({\varvec{\frac{\partial }{\partial y^i}}}\) and \({\varvec{\frac{\partial }{\partial y^j}}}\) at a point \(p \in {\mathcal {M}}\).

\({\varvec{\nabla }}\)

Gradient operator acting on the surface defined by \({\mathcal {M}}\).

div

Divergence operator acting on the surface defined by \({\mathcal {M}}\).

\({\varvec{\varDelta }}\)

Laplace-Beltrami operator on manifolds defined as \(\varDelta = -(\hbox {div} \circ \nabla )\).

Notes

Acknowledgments

The box, gears and pliers datasets were taken from the Princeton benchmark [40]. The iron, sheep, horse and elephant datasets were scanned at Laboratorio de CAD CAM CAE at Universidad EAFIT (Colombia).

References

  1. 1.
    Vasilakis, A.A., Fudos, I.: Pose partitioning for multi-resolution segmentation of arbitrary mesh animations. Comput. Graph. Forum 33(2), 293–302 (2014). doi: 10.1111/cgf.12327 CrossRefGoogle Scholar
  2. 2.
    Arcila, R., Cagniart, C., Hétroy, F., Boyer, E., Dupont, F.: Segmentation of temporal mesh sequences into rigidly moving components. Graph. Models 75(1), 10–22 (2013). doi: 10.1016/j.gmod.2012.10.004 CrossRefGoogle Scholar
  3. 3.
    Pal, P.: Fast freeform hybrid reconstruction with manual mesh segmentation. Int. J. Adv. Manuf. Technol. 63(9–12), 1205–1215 (2012). doi: 10.1007/s00170-012-3986-6 CrossRefGoogle Scholar
  4. 4.
    Miao, Y.W., Feng, J.Q., Xiao, C.X., Peng, Q.S., Forrest, A.: Differentials-based segmentation and parameterization for point-sampled surfaces. J. Comput. Sci. Technol. 22(5), 749–760 (2007). doi: 10.1007/s11390-007-9088-5 CrossRefGoogle Scholar
  5. 5.
    Luo, G., Cordier, F., Seo, H.: Compression of 3d mesh sequences by temporal segmentation. Comput. Anim. Virtual Worlds 24(3–4), 365–375 (2013). doi: 10.1002/cav.1522 CrossRefGoogle Scholar
  6. 6.
    Cheng, S.C., Kuo, C.T., Wu, D.C.: A novel 3d mesh compression using mesh segmentation with multiple principal plane analysis. Pattern Recognit. 43(1), 267–279 (2010). doi: 10.1016/j.patcog.2009.05.016 CrossRefzbMATHGoogle Scholar
  7. 7.
    Yi, B., Liu, Z., Tan, J., Cheng, F., Duan, G., Liu, L.: Shape recognition of cad models via iterative slippage analysis. Comput. Aided Des. 55, 13–25 (2014). doi: 10.1016/j.cad.2014.04.008 CrossRefGoogle Scholar
  8. 8.
    Tao, S., Huang, Z., Ma, L., Guo, S., Wang, S., Xie, Y.: Partial retrieval of cad models based on local surface region decomposition. Comput. Aided Des. 45(11), 1239–1252 (2013). doi: 10.1016/j.cad.2013.05.008 CrossRefGoogle Scholar
  9. 9.
    Wang, H., Lu, T., Au, O.K.C., Tai, C.L.: Spectral 3d mesh segmentation with a novel single segmentation field. Graph. Models 76(5), 440–456 (2014). doi: 10.1016/j.gmod.2014.04.009 CrossRefGoogle Scholar
  10. 10.
    Wang, L., Dong, M.: Multi-level low-rank approximation-based spectral clustering for image segmentation. Pattern Recognit. Lett. 33(16), 2206–2215 (2012). doi: 10.1016/j.patrec.2012.07.024 CrossRefGoogle Scholar
  11. 11.
    Wang, X., Wu, Z., Luo, P., Wu, H.: An image segmentation method combining L1-sparse reconstruction with spectral clustering. Procedia Eng. 29, 1387–1391 (2012). doi: 10.1016/j.proeng.2012.01.145
  12. 12.
    Miao, Y., Feng, J., Wang, J., Jin, X.: User-controllable mesh segmentation using shape harmonic signature. Progress Nat. Sci. 19(4), 471–478 (2009). doi: 10.1016/j.pnsc.2008.06.024 CrossRefGoogle Scholar
  13. 13.
    Reuter, M., Biasotti, S., Giorgi, D., Patanè, G., Spagnuolo, M.: Discrete Laplace - Beltrami operators for shape analysis and segmentation. Comput. Graph. 33(3), 381–390 (2009). doi: 10.1016/j.cag.2009.03.005
  14. 14.
    Tsuchie, S., Hosino, T., Higashi, M.: High-quality vertex clustering for surface mesh segmentation using student-t mixture model. Comput. Aided Des. 46, 69–78 (2014). doi: 10.1016/j.cad.2013.08.019
  15. 15.
    Wang, J., Yu, Z.: Surface feature based mesh segmentation. Comput. Graph. 35(3), 661–667 (2011). doi: 10.1016/j.cag.2011.03.016
  16. 16.
    Yan, D.M., Wang, W., Liu, Y., Yang, Z.: Variational mesh segmentation via quadric surface fitting. Comput. Aided Des. 44(11), 1072–1082 (2012). doi: 10.1016/j.cad.2012.04.005 CrossRefGoogle Scholar
  17. 17.
    Golovinskiy, A., Funkhouser, T.: Randomized cuts for 3d mesh analysis. ACM Trans. Graph. 27(5), 145:1–145:12 (2008). doi: 10.1145/1409060.1409098 CrossRefGoogle Scholar
  18. 18.
    de Castro, P.M.M., de Lima, L.A.P., Lucena, F.L.A.: Invariances of single curved manifolds applied to mesh segmentation. Comput. Graph. 38, 399–409 (2014). doi: 10.1016/j.cag.2013.12.002 CrossRefGoogle Scholar
  19. 19.
    Liu, X., Zhang, J., Liu, R., Li, B., Wang, J., Cao, J.: Low-rank 3d mesh segmentation and labeling with structure guiding. Comput. Graph. 46, 99–109 (2015). doi: 10.1016/j.cag.2014.09.019 CrossRefGoogle Scholar
  20. 20.
    Lv, J., Chen, X., Huang, J., Bao, H.: Semi-supervised mesh segmentation and labeling. Comput. Graph. Forum 31(7), 2241–2248 (2012). doi: 10.1111/j.1467-8659.2012.03217.x CrossRefGoogle Scholar
  21. 21.
    Kalogerakis, E., Hertzmann, A., Singh, K.: Learning 3d mesh segmentation and labeling. ACM Trans. Graph. 29(4), 102:1–102:12 (2010). doi: 10.1145/1778765.1778839 CrossRefGoogle Scholar
  22. 22.
    Eppstein, D., Goodrich, M.T., Kim, E., Tamstorf, R.: Motorcycle graphs: Canonical quad mesh partitioning. In: Proceedings of the Symposium on Geometry Processing, SGP ’08, pp. 1477–1486. Eurographics Association, Aire-la-Ville, Switzerland, Switzerland (2008)Google Scholar
  23. 23.
    Gunpinar, E., Moriguchi, M., Suzuki, H., Ohtake, Y.: Motorcycle graph enumeration from quadrilateral meshes for reverse engineering. Comput. Aided Des. 55, 64–80 (2014). doi: 10.1016/j.cad.2014.05.007 CrossRefGoogle Scholar
  24. 24.
    Gunpinar, E., Suzuki, H., Ohtake, Y., Moriguchi, M.: Generation of bi-monotone patches from quadrilateral mesh for reverse engineering. Comput. Aided Des. 45(2), 440–450 (2013). doi: 10.1016/j.cad.2012.10.027
  25. 25.
    Brown, S., Morse, B., Barrett, W.: Interactive part selection for mesh and point models using hierarchical graph-cut partitioning. In: Proceedings of Graphics Interface 2009, GI ’09, pp. 23–30. Canadian Information Processing Society, Toronto, Ont., Canada (2009)Google Scholar
  26. 26.
    Berretti, S., Bimbo, A.D., Pala, P.: 3d mesh decomposition using reeb graphs. Image Vis. Comput. 27(10), 1540–1554 (2009). doi: 10.1016/j.imavis.2009.02.004. Special Section: Computer Vision Methods for Ambient IntelligenceCrossRefGoogle Scholar
  27. 27.
    Tierny, J., Vandeborre, J.P., Daoudi, M.: Topology driven 3d mesh hierarchical segmentation. In: Shape Modeling and Applications, 2007. SMI ’07. IEEE International Conference on, pp. 215–220 (2007). doi: 10.1109/SMI.2007.38
  28. 28.
    Patane, G., Spagnuolo, M., Falcidieno, B.: Reeb graph computation based on a minimal contouring. In: Shape Modeling and Applications, 2008. SMI 2008. IEEE International Conference on, pp. 73–82 (2008). doi: 10.1109/SMI.2008.4547953
  29. 29.
    Gunpinar, E., Moriguchi, M., Suzuki, H., Ohtake, Y.: Feature-aware partitions from the motorcycle graph. Comput. Aided Des. 47, 85–95 (2014). doi: 10.1016/j.cad.2013.09.003 CrossRefGoogle Scholar
  30. 30.
    Zhang, J., Zheng, J., Wu, C., Cai, J.: Variational mesh decomposition. ACM Trans. Graph. 31(3), 21:1–21:14 (2012). doi: 10.1145/2167076.2167079 CrossRefGoogle Scholar
  31. 31.
    Zheng, Y., Tai, C.L.: Mesh decomposition with cross-boundary brushes. Comput. Graph. Forum 29(2), 527–535 (2010). doi: 10.1111/j.1467-8659.2009.01622.x CrossRefGoogle Scholar
  32. 32.
    Zou, B.J., Liu, S.J., Liao, S.H., Ding, X., Liang, Y.: Interactive tooth partition of dental mesh base on tooth-target harmonic field. Comput. Biol. Med. 56, 132–144 (2015). doi: 10.1016/j.compbiomed.2014.10.013 CrossRefGoogle Scholar
  33. 33.
    Fang, Y., Sun, M., Kim, M., Ramani, K.: Heat-mapping: A robust approach toward perceptually consistent mesh segmentation. In: Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on, pp. 2145–2152 (2011). doi: 10.1109/CVPR.2011.5995695
  34. 34.
    Gebal, K., Bærentzen, J.A., Aanæs, H., Larsen, R.: Shape analysis using the auto diffusion function. In: Proceedings of the Symposium on Geometry Processing, SGP ’09, pp. 1405–1413. Eurographics Association, Aire-la-Ville, Switzerland, Switzerland (2009)Google Scholar
  35. 35.
    de Abreu, N.M.M.: Old and new results on algebraic connectivity of graphs. Linear Algebra Appl. 423(1), 53–73 (2007). doi: 10.1016/j.laa.2006.08.017 MathSciNetCrossRefzbMATHGoogle Scholar
  36. 36.
    Spielman, D.A., Teng, S.H.: Spectral partitioning works: Planar graphs and finite element meshes. Linear Algebra Appl. 421(2–3), 284–305 (2007). doi: 10.1016/j.laa.2006.07.020. Special Issue in honor of Miroslav Fiedler
  37. 37.
    Rosemberg, S.: The Laplacian on a Riemannian Manifold. Cambridge University Press, United Kingdom (1997)Google Scholar
  38. 38.
    Dziuk, G.: Finite elements for the beltrami operator on arbitrary surfaces. In: S. Hildebrandt, R. Leis (eds.) Partial Differential Equations and Calculus of Variations, Lecture Notes in Mathematics, vol. 1357, pp. 142–155. Springer Berlin Heidelberg (1988). doi: 10.1007/BFb0082865
  39. 39.
    Lehoucq, R., Sorensen, D., Yang, C.: ARPACK Users’ Guide. Soc. Ind. Appl. Math.(1998). doi: 10.1137/1.9780898719628
  40. 40.
    Chen, X., Golovinskiy, A., Funkhouser, T.: A benchmark for 3d mesh segmentation. ACM Trans. Graph. 28(3), 73:1–73:12 (2009). doi: 10.1145/1531326.1531379 CrossRefGoogle Scholar

Copyright information

© Springer-Verlag France 2016

Authors and Affiliations

  • Daniel Mejia
    • 1
  • Oscar Ruiz-Salguero
    • 1
    Email author
  • Carlos A. Cadavid
    • 1
  1. 1.Laboratorio de CAD CAM CAEUniversidad EAFITMedellinColombia

Personalised recommendations