Abstract
In this paper, we present a framework for computing dissimilarities between surfaces which is based on the mathematical model of normal cycle from geometric measure theory. This model allows to take into account all the curvature information of the surface without explicitly computing it. By defining kernel metrics on normal cycles, we define explicit distances between surfaces that are sensitive to curvature. This mathematical framework also has the advantage of encompassing both continuous and discrete surfaces (triangulated surfaces). We then use this distance as a data attachment term for shape matching, using the large deformation diffeomorphic metric mapping for modelling deformations. We also present an efficient numerical implementation of this problem in PyTorch, using the KeOps library, which allows both the use of auto-differentiation tools and a parallelization of GPU calculations without memory overflow. We show that this method can be scalable on data up to a million points, and we present several examples on surfaces, comparing the results with those obtained with the similar varifold framework.
Similar content being viewed by others
References
Allard, W.: On the first variation of a varifold. Ann. Math. 95(3), 417–491 (1972)
Almgren, F.: Plateau’s Problem: An Invitation to Varifold Geometry. Mathematical Library, Amsterdam (1966)
Arguillère, S., Trélat, E., Trouvé, A., Younès, L.: Shape deformation analysis from the optimal control viewpoint. J. Math. Pures Appl. 104(1), 139–178 (2015)
Aronszajn, N.: Theory of reproducing kernels. Trans. Am. Math. Soc. 68, 337–404 (1950)
Buet, B., Leonardi, G.P., Masnou, S.: A varifold approach to surface approximation. Arch. Ration. Mech. Anal. 226(2), 639–694 (2017)
Carmeli, C., De Vito, E., Toigo, A., Umanit, V.: Vector valued reproducing kernel Hilbert spaces and universality. arXiv:0807.1659 [math] (2008)
Charlier, B., Charon, N., Trouvé, A.: The fshape framework for the variability analysis of functional shapes. In: Foundations of Computational Mathematics, pp. 1–71 (2015). https://doi.org/10.1007/s10208-015-9288-2
Charlier, B., Feydy, J., Glaunès, J.: Kernel operations on the GPU, with autodiff, without memory overflows. http://www.kernel-operations.io/. Accessed 21 Dec 2018
Charlier, B., Feydy, J., Glaunès, J.: KeOps: Calcul rapide sur GPU dans les espaces à noyaux. In: Proceedings of Journées de Statistique de la SFdS. Paris, France (2018)
Charon, N.: Analysis of geometric and functionnal shapes with extension of currents. Application to registration and atlas estimation. Ph.D. thesis, École Normale Supérieure de Cachan (2013)
Charon, N., Trouvé, A.: The varifold representation of nonoriented shapes for diffeomorphic registration. SIAM J. Imaging Sci. 6(4), 2547–2580 (2013)
Chazal, F., Cohen-Steiner, D., Lieutier, A., Thibert, B.: Stability of curvature measures. CoRR arXiv:0812.1390 (2008)
Chazal, F., Cohen-Steiner, D., Lieutier, A., Thibert, B.: Stability of curvature measures. Comput. Graph. Forum (2009). https://doi.org/10.1111/j.1467-8659.2009.01525.x
Cignoni, P., Callieri, M., Corsini, M., Dellepiane, M., Ganovelli, F., Ranzuglia, G.: MeshLab: an open-source mesh processing tool. In: Scarano, V., Chiara, R.D., Erra, U. (eds.) Eurographics Italian Chapter Conference. The Eurographics Association (2008). https://doi.org/10.2312/LocalChapterEvents/ItalChap/ItalianChapConf2008/129-136
Cohen-Steiner, D., Morvan, J.M.: Restricted Delaunay triangulations and normal cycle. In: SoCG’03 (2003)
Cohen-Steiner, D., Morvan, J.M.: Second fundamental measure of geometric sets and local approximation of curvatures. J. Differ. Geom. 74(3), 363–394 (2006). https://doi.org/10.4310/jdg/1175266231
Csernansky, J., Wang, L., Swank, J., Miller, J., Gado, M., McKeel, D., Miller, M., Morris, J.: Preclinical detection of Alzheimer’s disease: hippocampal shape and volume predict dementia onset in the elderly. NeuroImage 25(3), 783–792 (2005)
Csernansky, J.G., Wang, L., Joshi, S.C., Ratnanather, J.T., Miller, M.I.: Computational anatomy and neuropsychiatric disease: probabilistic assessment of variation and statistical inference of group difference, hemispheric asymmetry, and time-dependent change. NeuroImage 23(Supplement 1), S56–S68 (2004). Mathematics in Brain Imaging
Durrleman, S., Allassonnière, S., Joshi, S.: Sparse adaptive parameterization of variability in image ensembles. Int. J. Comput. Vis. 101(1), 161–183 (2013)
Durrleman, S., Fillard, P., Pennec, X., Trouvé, A., Ayache, N.: Registration, atlas estimation and variability analysis of white matter fiber bundles modeled as currents. NeuroImage 55(3), 1073–1090 (2011)
Durrleman, S., Prastawa, M., Charon, N., Korenberg, J.R., Joshi, S., Gerig, G., Trouvé, A.: Morphometry of anatomical shape complexes with dense deformations and sparse parameters. NeuroImage 101, 35–49 (2014)
Federer, H.: Curvature measures. Trans. Am. Math. Soc. 93, 418–491 (1959)
Federer, H.: Geometric Measure Theory. Springer, Berlin (1969)
Federer, H., Fleming, W.: Normal and integral currents. Ann. Math. 72, 458–520 (1960)
Feydy, J., Charlier, B., Vialard, F.X., Peyré, G.: Optimal transport for diffeomorphic registration. In: MICCAI 2017, Proceedings of MICCAI 2017, Quebec, Canada (2017)
Glaunès, J.: Transport par difféomorphismes de points, de mesures et de courants pour la comparaison de formes et l’anatomie numérique. Ph.D. thesis, Université Paris 13 (2005)
Glaunès, J., Qiu, A., Miller, M., Younes, L.: Large deformation diffeomorphic metric curve mapping. Int. J. Comput. Vis. 80(3), 317–336 (2008). https://doi.org/10.1007/s11263-008-0141-9
Grenander, U., Miller, M.I.: Computational anatomy: an emerging discipline. Q. Appl. Math. LVI(4), 617–694 (1998)
Helm, P.A., Younes, L., Beg, M.F., Ennis, D.B., Leclercq, C., Faris, O.P., McVeigh, E., Kass, D., Miller, M.I., Winslow, R.L.: Evidence of structural remodeling in the dyssynchronous failing heart. Circ. Res. 98(1), 125–132 (2006). https://doi.org/10.1161/01.RES.0000199396.30688.eb
Kaltenmark, I., Charlier, B., Charon, N.: A general framework for curve and surface comparison and registration with oriented varifolds. In: The IEEE Conference on Computer Vision and Pattern Recognition (CVPR) (2017)
Lee, S., Charon, N., Charlier, B., Popuri, K., Lebed, E., Sarunic, M.V., Trouvé, A., Beg, M.F.: Atlas-based shape analysis and classification of retinal optical coherence tomography images using the functional shape (fshape) framework. Med. Image Anal. 35, 570–581 (2017)
Lee, S., Heisler, M.L., Popuri, K., Charon, N., Charlier, B., Trouvé, A., Mackenzie, P.J., Sarunic, M.V., Beg, M.F.: Age and glaucoma-related characteristics in retinal nerve fiber layer and choroid: localized morphometrics and visualization using functional shapes registration. Front. Neurosci. 11, 381 (2017)
Liu, D.C., Nocedal, J.: On the limited memory BFGS method for large scale optimization. Math. Program. 45(1–3), 503–528 (1989). https://doi.org/10.1007/BF01589116
Mansi, T., Voigt, I., Leonardi, B., Pennec, X., Durrleman, S., Sermesant, M., Delingette, H., Taylor, A.M., Boudjemline, Y., Pongiglione, G., Ayache, N.: A statistical model for quantification and prediction of cardiac remodelling: application to tetralogy of fallot. IEEE Trans. Med. Imaging 30(9), 1605–1616 (2011). https://doi.org/10.1109/TMI.2011.2135375
Miller, M.I., Trouvé, A., Younes, L.: Geodesic shooting for computational anatomy. J. Math. Imaging Vis. 24(2), 209–228 (2006)
Morvan, J.M.: Generalized Curvatures. Springer, Berlin (2008)
Paszke, A., Gross, S., Chintala, S., Chanan, G., Yang, E., DeVito, Z., Lin, Z., Desmaison, A., Antiga, L., Lerer, A.: Automatic differentiation in pytorch. In: NIPS-W (2017)
Pennec, X.: Intrinsic statistics on Riemannian manifolds: basic tools for geometric measurements. J. Math. Imaging Vis. 25(1), 127–154 (2006)
Qiu, A., Younes, L., Miller, M.I., Csernansky, J.G.: Parallel transport in diffeomorphisms distinguishes the time-dependent pattern of hippocampal surface deformation due to healthy aging and the dementia of the Alzheimer’s type. NeuroImage 40(1), 68–76 (2008)
Rataj, J., Zähle, M.: Curvatures and currents for unions of sets with positive reach, II. Ann. Global Anal. Geom. 20(1), 1–21 (2001)
Rekik, I., Li, G., Lin, W., Shen, D.: Multidirectional and topography-based dynamic-scale varifold representations with application to matching developing cortical surfaces. NeuroImage 135, 152–162 (2016)
Roussillon, P.: Modèle de cycles normaux pour l’analyse des dformations. Ph.D. thesis, Université Paris Descartes (2017)
Roussillon, P., Glaunès, J.: Kernel metrics on normal cycles and application to curve matching. SIAM J. Imaging Sci. 9, 1991–2038 (2016)
Roussillon, P., Glaunès, J.: Surface matching using normal cycles. In: GSI’17: Geometric Science Information, 2017, Paris (2017)
Tang, X., Holland, D., Dale, A.M., Younes, L., Miller, M.I.: for the Alzheimer’s disease neuroimaging initiative: shape abnormalities of subcortical and ventricular structures in mild cognitive impairment and Alzheimer’s disease: detecting, quantifying, and predicting. Hum. Brain Mapp. 35(8), 3701–3725 (2014)
Thäle, C.: 50 years sets with positive reach, a survey. Surv. Math. Appl. 3, 125–165 (2008)
Vaillant, M., Glaunès, J.: Surface matching via currents. In: Christensen, G.E., Sonka, M. (eds.) Information Processing in Medical Imaging, no. 3565 in Lecture Notes in Computer Science, pp. 381–392. Springer, Berlin (2005)
Wang, L., Beg, F., Ratnanather, T., Ceritoglu, C., Younes, L., Morris, J.C., Csernansky, J.G., Miller, M.I.: Large deformation diffeomorphism and momentum based hippocampal shape discrimination in dementia of the Alzheimer type. IEEE Trans. Med. Imaging 26(4), 462–470 (2007). https://doi.org/10.1109/TMI.2006.887380
Younès, L.: Shapes and Diffeomorphisms. Springer, Berlin (2010)
Zähle, M.: Integral and current representation of Federer’s curvature measure. Arch. Maths. 23, 557–567 (1986)
Zähle, M.: Curvatures and currents for unions of set with positive reach. Geom. Dedicata 23, 155–171 (1987)
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendices
Discrete Scalar Product with the Constant Kernel
1.1 Discrete Surfaces
For discrete surfaces, and with the constant normal kernel, it can be easily seen that the planar part is not involved. The scalar product of normal cycles above vertices (i.e. the spherical scalar product) involves terms as:
If we focus on portion of sphere, one can show that if
is a portion of sphere, then \(\int _{S_1} u \mathrm{d}{\mathscr {H}}^2(u) = \pi \sin \big (\varphi _0/2\big ) \begin{pmatrix} \cos (\varphi _0/2)\\ \sin (\varphi _0/2) \\ 0 \end{pmatrix}\). Note that we retrieve the half sphere with \(\varphi _0 = \pi \) and the total sphere with \(\varphi _0 = 2\pi \). Now, taking into account the orientation, we have to compute for the spherical part:
where s stands for sphere, \({\hbox {h.s}}\) for half sphere and \({\hbox {p.s}}\) for portion of spheres. In fact, one can show that for a given vertex, summing the contributions of the sphere, the half spheres (associated with the edges), and the portion of spheres (associated with the triangles), then the spherical part vanishes for a vertex that is not in the border. Moreover, we have the following equality:
and thus, the spherical part is exactly the scalar product of the curves associated with the border, scalar product that has been computed in [43].
Now let us focus on the cylindrical part. Using expression (8), with \(k_n = 1\), one can see that the scalar product involving a full cylinder is null, and thus, only the half cylinders remains. Consider thus the scalar product between two half cylinders. If we denote \(HCyl_1 = [a,b] \times S_{b-a}^{\perp }\), \(HCyl_2 = [c,d] \times S_{d-c}^{\perp }\) two half cylinders (where \(S_{b-a,\alpha }^{\perp +} =\Big \{ u \in {\mathbb {S}}^2 | \left\langle u,b-a\right\rangle = 0, \left\langle u,\alpha \right\rangle \ge 0 \Big \}\) is a half circle), we compute the scalar product in \(W'\) between these two half cylinders. With the approximations of (8):
In a triangle T, [a, b] corresponds to an edge and \(\alpha \) corresponds to a unitary vector orthogonal to [a, b], in the plane defined by the triangle and oriented in the interior of the triangle. Finally, if we consider two triangulations \({{\mathscr {T}}}\) and \({{\mathscr {T}}}'\), with a decomposition of the unit normal bundle as in Fig. 20, we have
where \(n_{T_i,f_i}\) is the normal vector of the triangle \(T_i\) such that \(n_{T_i, f_i} \times f_i\) is oriented inward for the triangle T.
For the boundary, \(\left\langle N(\partial {{\mathscr {T}}}),N(\partial {{\mathscr {T}}}')\right\rangle _{W'}\), we can show similarly that:
where \(A_k = \sum _{i}f_i^k/|f_i^k|\) is the sum of the normalized edges of the boundary with \(x_k\) as vertex, and oriented outward from \(x_k\).
Discrete Scalar Product with Linear Normal Kernel
We can show that only the planar and the spherical parts are involved in this scalar product. For the planar part, we have already seen that
In this appendix, we want to compute explicitly the spherical scalar product for normal cycles, with the linear normal kernel. The generic expression involved is the following integral:
where \(S_1\) and \(S_2\) are two portions of spheres (that may be the whole sphere, half sphere) with no assumption on the relative position of one sphere compared to the other.
To compute this expression, without loss of generality, we can suppose that \(S_1\) is parametrized as follows:
where \(\varphi _1\) is the aperture angle of the portion of sphere (\(\varphi _1 = 2\pi \) for a whole sphere, and \(\pi \) for a half sphere). Suppose that \(v = \begin{pmatrix} v_1 \\ v_2 \\ v_3 \end{pmatrix}\), then:
which can be made explicit using the fact that
Integrating first with respect to \(\theta _u\) and then to \(\varphi _u\), we end up with:
The quantity of interest is now:
The main limitation is that we do not have an obvious parameterization of \(S_2\) since there is no assumption on the relative disposition of \(S_1\) and \(S_2\). Suppose now that R is the rotation which brings \(S_2\) to \(S_2'\), where
We have:
This computation is similar to the one of \(\int _{S_1}\left\langle u,v\right\rangle ^2 \mathrm{d}u\) and we obtain:
where \(R = (r_{ij})_{1 \le i,j \le 3}\). The same reasoning for the term \(v_1v_2\) leads to
Finally, if we combine all the terms, we obtain:
with
Note 8
Expression (23) simplifies greatly when one of the involved sphere is a half sphere or a sphere. Indeed, all the terms with a sinus vanish, and it remains: \(\int _{S_1}\int _{S_2}\left\langle u,v\right\rangle ^2\mathrm{d}u\mathrm{d}v = \frac{4}{3}\varphi _1\varphi _2\).
Note 9
Note that this computation is useful to compute the scalar product between portions of sphere in the triangulation. For an implementation, remember that the portion of sphere is not defined by the edges of the triangles, say \(e_1\), \(e_2\), but by the orthogonals: \(-e_2^{\perp }, e_1^\perp \).
Now, if we are given two triangulated meshes, we will express one part of the spherical scalar product: at two vertex x and y, as we have done for the constant normal kernel, we need to compute
If we use the previous expressions of \(\int _{S_1}\int _{S_2}\left\langle u,v\right\rangle ^2 \mathrm{d}u\mathrm{d}v\), ad gathering all the terms \(4/3\varphi _1\varphi _2\), we end up with:
where
and where the second-order spherical terms appear when considering the crossed terms
we do not explicit these second-order terms since we still not have a satisfying implementation of this metric.
Rights and permissions
About this article
Cite this article
Roussillon, P., Glaunès, J.A. Representation of Surfaces with Normal Cycles and Application to Surface Registration. J Math Imaging Vis 61, 1069–1095 (2019). https://doi.org/10.1007/s10851-019-00888-x
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10851-019-00888-x