Skip to main content
Log in

Representation of Surfaces with Normal Cycles and Application to Surface Registration

  • Published:
Journal of Mathematical Imaging and Vision Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19

Similar content being viewed by others

References

  1. Allard, W.: On the first variation of a varifold. Ann. Math. 95(3), 417–491 (1972)

    Article  MathSciNet  MATH  Google Scholar 

  2. Almgren, F.: Plateau’s Problem: An Invitation to Varifold Geometry. Mathematical Library, Amsterdam (1966)

    MATH  Google Scholar 

  3. 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)

    Article  MathSciNet  MATH  Google Scholar 

  4. Aronszajn, N.: Theory of reproducing kernels. Trans. Am. Math. Soc. 68, 337–404 (1950)

    Article  MathSciNet  MATH  Google Scholar 

  5. Buet, B., Leonardi, G.P., Masnou, S.: A varifold approach to surface approximation. Arch. Ration. Mech. Anal. 226(2), 639–694 (2017)

    Article  MathSciNet  MATH  Google Scholar 

  6. Carmeli, C., De Vito, E., Toigo, A., Umanit, V.: Vector valued reproducing kernel Hilbert spaces and universality. arXiv:0807.1659 [math] (2008)

  7. 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

  8. 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

  9. 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)

  10. 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)

  11. Charon, N., Trouvé, A.: The varifold representation of nonoriented shapes for diffeomorphic registration. SIAM J. Imaging Sci. 6(4), 2547–2580 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  12. Chazal, F., Cohen-Steiner, D., Lieutier, A., Thibert, B.: Stability of curvature measures. CoRR arXiv:0812.1390 (2008)

  13. 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

    MATH  Google Scholar 

  14. 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

  15. Cohen-Steiner, D., Morvan, J.M.: Restricted Delaunay triangulations and normal cycle. In: SoCG’03 (2003)

  16. 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

    Article  MathSciNet  MATH  Google Scholar 

  17. 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)

    Article  Google Scholar 

  18. 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

    Article  Google Scholar 

  19. Durrleman, S., Allassonnière, S., Joshi, S.: Sparse adaptive parameterization of variability in image ensembles. Int. J. Comput. Vis. 101(1), 161–183 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  20. 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)

    Article  Google Scholar 

  21. 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)

    Article  Google Scholar 

  22. Federer, H.: Curvature measures. Trans. Am. Math. Soc. 93, 418–491 (1959)

    Article  MathSciNet  MATH  Google Scholar 

  23. Federer, H.: Geometric Measure Theory. Springer, Berlin (1969)

    MATH  Google Scholar 

  24. Federer, H., Fleming, W.: Normal and integral currents. Ann. Math. 72, 458–520 (1960)

    Article  MathSciNet  MATH  Google Scholar 

  25. Feydy, J., Charlier, B., Vialard, F.X., Peyré, G.: Optimal transport for diffeomorphic registration. In: MICCAI 2017, Proceedings of MICCAI 2017, Quebec, Canada (2017)

  26. 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)

  27. 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

    Article  Google Scholar 

  28. Grenander, U., Miller, M.I.: Computational anatomy: an emerging discipline. Q. Appl. Math. LVI(4), 617–694 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  29. 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

    Article  Google Scholar 

  30. 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)

  31. 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)

    Article  Google Scholar 

  32. 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)

    Article  Google Scholar 

  33. 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

    Article  MathSciNet  MATH  Google Scholar 

  34. 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

    Article  Google Scholar 

  35. Miller, M.I., Trouvé, A., Younes, L.: Geodesic shooting for computational anatomy. J. Math. Imaging Vis. 24(2), 209–228 (2006)

    Article  MathSciNet  Google Scholar 

  36. Morvan, J.M.: Generalized Curvatures. Springer, Berlin (2008)

    Book  MATH  Google Scholar 

  37. 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)

  38. Pennec, X.: Intrinsic statistics on Riemannian manifolds: basic tools for geometric measurements. J. Math. Imaging Vis. 25(1), 127–154 (2006)

    Article  MathSciNet  Google Scholar 

  39. 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)

    Article  Google Scholar 

  40. 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)

    Article  MathSciNet  MATH  Google Scholar 

  41. 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)

    Article  Google Scholar 

  42. Roussillon, P.: Modèle de cycles normaux pour l’analyse des dformations. Ph.D. thesis, Université Paris Descartes (2017)

  43. Roussillon, P., Glaunès, J.: Kernel metrics on normal cycles and application to curve matching. SIAM J. Imaging Sci. 9, 1991–2038 (2016)

    Article  MathSciNet  MATH  Google Scholar 

  44. Roussillon, P., Glaunès, J.: Surface matching using normal cycles. In: GSI’17: Geometric Science Information, 2017, Paris (2017)

  45. 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)

    Article  Google Scholar 

  46. Thäle, C.: 50 years sets with positive reach, a survey. Surv. Math. Appl. 3, 125–165 (2008)

    MathSciNet  MATH  Google Scholar 

  47. 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)

    Google Scholar 

  48. 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

    Article  Google Scholar 

  49. Younès, L.: Shapes and Diffeomorphisms. Springer, Berlin (2010)

    Book  MATH  Google Scholar 

  50. Zähle, M.: Integral and current representation of Federer’s curvature measure. Arch. Maths. 23, 557–567 (1986)

    Article  MathSciNet  MATH  Google Scholar 

  51. Zähle, M.: Curvatures and currents for unions of set with positive reach. Geom. Dedicata 23, 155–171 (1987)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Pierre Roussillon.

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:

$$\begin{aligned} \begin{aligned}&k_p(x,y)\int _{S_1}\int _{S_2}k_n(u,v)\\&\quad \left\langle \tau _{{{\mathscr {N}}}_C}(x,u),\tau _{{{\mathscr {N}}}_C}(y,v)\right\rangle \mathrm{d}{\mathscr {H}}^2(u)\mathrm{d}{\mathscr {H}}^2(v) \\&\qquad = k_p(x,y)\left\langle \int _{S_1}\underbrace{\tau _{{{\mathscr {N}}}_C}(x,u)}_{= u \text { for the spherical part}}\mathrm{d}{\mathscr {H}}^2(u)\right. \\&\qquad \quad \left. {\int _{S_2}\tau _{{{\mathscr {N}}}_C}(y,v)\mathrm{d}{\mathscr {H}}^2(v)}\right\rangle \\&\qquad = k_p(x,y)\left\langle \int _{S_1}u \mathrm{d}{\mathscr {H}}^2(u),\int _{S_2}v \mathrm{d}{\mathscr {H}}^2(v)\right\rangle \end{aligned} \end{aligned}$$

If we focus on portion of sphere, one can show that if

$$\begin{aligned} S_1 = \left\{ \begin{pmatrix} s\theta _u c\varphi _u\\ s\theta _u s\varphi _u\\ c\theta _u \end{pmatrix} \bigg | \theta _u \in [0,\pi ], \, \varphi _u \in [0,\varphi _0]\right\} \end{aligned}$$

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:

$$\begin{aligned}&\left\langle {x \times \Big ([s.] -\sum [{\hbox {h.s}}] + \sum [{\hbox {p.s}}]\Big )}y\right. \\&\quad \left. \times \Big ([s.] - \sum [{\hbox {h.s}}] + \sum [{\hbox {p.s}}] \Big )\right\rangle _{W'} \end{aligned}$$

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:

$$\begin{aligned} \left\langle N(C)^\mathrm{sph},N(S)^\mathrm{sph}\right\rangle _{W'} = \left\langle N(\partial C),N(\partial S)\right\rangle _{W'} \end{aligned}$$

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].

Fig. 20
figure 20

Decomposition of the normal bundle for two triangles with a common edge. In this figure, the two normal bundles of the open triangles appear. Then, we add (only once) the normal bundle of the open edge (the red cylinder and the two green half spheres). Then, we add (only once) the normal bundle of the vertices of the edge (the two green spheres) (Color figure online)

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):

$$\begin{aligned}&\left\langle HCyl_1,HCyl _2\right\rangle _{W'}\simeq k_p\Big (\frac{a+b}{2},\frac{c+d}{2}\Big )\left\langle b-a,d-c\right\rangle \\&\qquad \times \int _{S_{b-a,\alpha }^{\perp ,+}}\int _{S_{d-c,\beta }^\perp ,+}\left\langle \frac{b-a}{|b-a|} \times u ,\frac{d-c}{|d-c|} \times v\right\rangle \\&\qquad \mathrm{d}{\mathscr {H}}^1(u)\mathrm{d}{\mathscr {H}}^1(v)\\&\quad \simeq k_p\Big (\frac{a+b}{2},\frac{c+d}{2}\Big )\left\langle b-a,d-c\right\rangle \\&\quad \quad \times \left\langle \frac{b-a}{|b-a|} \times \int _{S_{b-a,\alpha }^{\perp ,+}} u \mathrm{d}{\mathscr {H}}^1(u) \frac{d-c}{|d-c|}\right. \\&\left. \quad \times \int _{S_{d-c,\beta }^\perp ,+} v \mathrm{d}{\mathscr {H}}^1(v) \right\rangle \\&\quad \simeq \frac{\pi ^2}{4} k_p\Big (\frac{a+b}{2},\frac{c+d}{2}\Big )\left\langle {b-a}{d-c}\right\rangle \\&\quad \left\langle \frac{b-a}{|b-a|} \times \alpha ,\frac{d-c}{|d-c|} \times \beta \right\rangle \end{aligned}$$

In a triangle T, [ab] corresponds to an edge and \(\alpha \) corresponds to a unitary vector orthogonal to [ab], 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

(21)

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:

$$\begin{aligned}&\left\langle N(\partial {{\mathscr {T}}}),N(\partial {{\mathscr {T}}}')\right\rangle _{W'}\nonumber \\&\quad {=} \frac{\pi ^2}{4}\sum _{x_k \in \partial {{\mathscr {T}}}} \sum _{y_l \in \partial {{\mathscr {T}}}'} k_p(x_k,y_l)\left\langle A_k,B_l\right\rangle \nonumber \\ \end{aligned}$$
(22)

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

$$\begin{aligned}&\left\langle N(T)^\mathrm{pln},N(T')^\mathrm{pln}\right\rangle _{W'}\\&\quad \simeq 4 \sum _{i = 1}^N\sum _{j = 1}^M|T_i| |T_j'|k_p(c_i,c'_{j}) \left\langle n_{T_i}, n_{T'_j}\right\rangle ^2. \end{aligned}$$

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:

$$\begin{aligned} \int _{S_1}\int _{S_2}\left\langle u,v\right\rangle ^2 \mathrm{d}u\mathrm{d}v \end{aligned}$$

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:

$$\begin{aligned} S_1 = \left\{ \begin{pmatrix} \sin \theta _u\cos \varphi _u \\ \sin \theta _u\sin \varphi _u \\ \cos \theta _u \end{pmatrix} \, \Big \vert \, \theta _u \in [0, \pi ], \varphi _u \in [0,\varphi _1] \right\} \end{aligned}$$

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:

$$\begin{aligned}&\int _{S_1}\left\langle u,v\right\rangle ^2 \mathrm{d}u = \int _0^\pi \int _0^{\varphi _1}\left\langle \begin{pmatrix} \sin \theta _u\cos \varphi _u \\ \sin \theta _u\sin \varphi _u \\ \cos \theta _u \end{pmatrix},\begin{pmatrix} v_1 \\ v_2 \\ v_3 \end{pmatrix}\right\rangle ^2\\&\quad \sin \theta _u\mathrm{d}\theta _u\mathrm{d}\varphi _u \end{aligned}$$

which can be made explicit using the fact that

$$\begin{aligned}&\int _0^\pi \sin ^3\theta _u \mathrm{d}\theta _u = \frac{4}{3}, \, \int _0^\pi \sin ^2\theta _u\cos \theta _u\mathrm{d}\theta _u = 0,\\&\int _0^\pi \sin \theta _u \cos ^2\theta _u \mathrm{d}\theta _u =\frac{2}{3}. \end{aligned}$$

Integrating first with respect to \(\theta _u\) and then to \(\varphi _u\), we end up with:

$$\begin{aligned} \int _{S_1}\left\langle u,v\right\rangle ^2 \mathrm{d}u= & {} \frac{2}{3}\varphi _1 + \frac{1}{3}(v_1^2 - v_2^2)\sin (2\varphi _1)\\&+\, \frac{4}{3}v_1v_2\sin ^2(\varphi _1). \end{aligned}$$

The quantity of interest is now:

$$\begin{aligned} \begin{aligned} \int _{S_1}\int _{S_2}\left\langle u,v\right\rangle ^2 \mathrm{d}u\mathrm{d}v&= \int _{S_2} \Big [ \frac{2}{3}\varphi _1 + \frac{1}{3}(v_1^2 - v_2^2)\sin (2\varphi _1) \\&\quad +\, \frac{4}{3}v_1v_2\sin ^2(\varphi _1) \Big ]\mathrm{d}v \end{aligned} \end{aligned}$$

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

$$\begin{aligned} S_2' = \left\{ \begin{pmatrix} \sin \theta _v\cos \varphi _v \\ \sin \theta _v\sin \varphi _v \\ \cos \theta _v \end{pmatrix} \, \Big \vert \, \theta _v \in [0, \pi ], \varphi _v \in [0,\varphi _2] \right\} \end{aligned}$$

We have:

$$\begin{aligned} \begin{aligned}&\int _{S_2}(v_1^2 - v_2^2)\mathrm{d}v = \int _{S_2} \left( \left\langle v,e_1\right\rangle ^2 - \left\langle v,e_2\right\rangle ^2 \right) \mathrm{d}v\\&= \int _{R S_2} \left( \left\langle R^{-1}v,e_1\right\rangle ^2 - \left\langle R^{-1}v,e_2\right\rangle ^2 \right) \mathrm{d}v\\&=\int _0^\pi \int _0^{\varphi _2} \left( \left\langle \begin{pmatrix} \sin \theta _v\cos \varphi _v \\ \sin \theta _v\sin \varphi _v \\ \cos \theta _v \end{pmatrix},Re_1\right\rangle ^2 - \left\langle \begin{pmatrix} \sin \theta _v\cos \varphi _v \\ \sin \theta _v\sin \varphi _v \\ \cos \theta _v \end{pmatrix},Re_2\right\rangle ^2 \right) \\&\quad \times \sin \theta _v\mathrm{d}\theta _v\mathrm{d}\varphi _v\\ \end{aligned} \end{aligned}$$

This computation is similar to the one of \(\int _{S_1}\left\langle u,v\right\rangle ^2 \mathrm{d}u\) and we obtain:

$$\begin{aligned} \int _{S_2}(v_1^2 - v_2^2)\mathrm{d}v= & {} \frac{1}{3} \left[ r_{11}^2 - r_{12}^2 + r_{22}^2 - r_{21}^2 \right] \sin (2\varphi _2) \\&+\,\frac{4}{3} \left[ r_{11}r_{21} - r_{12}r_{22} \right] \sin ^2(\varphi _2) \end{aligned}$$

where \(R = (r_{ij})_{1 \le i,j \le 3}\). The same reasoning for the term \(v_1v_2\) leads to

$$\begin{aligned} \begin{aligned} \int _{S_2}v_1v_2 \mathrm{d}v&= \int _0^\pi \int _0^{\varphi _2}\left\langle v,Re_1\right\rangle \left\langle v,Re_2\right\rangle \mathrm{d}v. \\&= \frac{1}{3} \left[ r_{11}r_{12}-r_{21}r_{22} \right] \sin (2\varphi _2) \\&\quad + \frac{2}{3} \left[ r_{11}r_{22}+r_{12}r_{21} \right] \sin ^2(\varphi _2) \end{aligned} \end{aligned}$$

Finally, if we combine all the terms, we obtain:

$$\begin{aligned} \begin{aligned}&\int _{S_1}\int _{S_2}\left\langle u,v\right\rangle ^2\mathrm{d}u\mathrm{d}v \\&\quad = \frac{4}{3}\varphi _1\varphi _2 + \frac{1}{9} \left[ r_{11}^2 - r_{12}^2 + r_{22}^2 - r_{21}^2 \right] \sin (2\varphi _1) \sin (2\varphi _2) \\&\qquad +\,\frac{4}{9}\left[ r_{11}r_{21} + r_{12}r_{22} \right] \sin (2\varphi _1)\sin ^2(\varphi _2) \\&\qquad + \,\frac{4}{9} \left[ r_{11}r_{12}-r_{21}r_{22} \right] \sin ^2(\varphi _1)\sin (2\varphi _2) \\&\qquad +\,\frac{8}{9} \left[ r_{11}r_{22}+r_{12}r_{21} \right] \sin ^2(\varphi _1)\sin ^2(\varphi _2) \end{aligned} \end{aligned}$$
(23)

with

$$\begin{aligned} r_{11}= & {} \left\langle e_1,f_1\right\rangle \\ r_{21}= & {} \left\langle e_1,f_2\right\rangle = \left\langle e_1,\frac{1}{\sin \varphi _2}(f_{\varphi _2}-\cos \varphi _2 f_1)\right\rangle \\ r_{12}= & {} \left\langle e_2,f_1\right\rangle = \left\langle \frac{1}{\sin \varphi _1}(e_{\varphi _1}-\cos \varphi _1 e_1),f_1\right\rangle \\ r_{22}= & {} \left\langle e_2,f_2\right\rangle = \left\langle {\frac{1}{\sin \varphi _1}(e_{\varphi _1}-\cos \varphi _1 e_1)}\right. \\&\left. {\frac{1}{\sin \varphi _2}(f_{\varphi _2}-\cos \varphi _2 f_1)}\right\rangle \\ \end{aligned}$$

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

$$\begin{aligned} \left\langle x \times \Big ([s.] -\sum [{\hbox {h.s}}] + \sum [{\hbox {p.s}}]\Big ) \right. \\ \left. y \times \Big ([s.] - \sum [{\hbox {h.s}}] + \sum [{\hbox {p.s}}] \Big )\right\rangle _{W'} \end{aligned}$$

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:

$$\begin{aligned} \begin{aligned}&\left\langle N({{\mathscr {T}}})^\mathrm{sph},N({{\mathscr {T}}}')^\mathrm{sph}\right\rangle _{W'} \\&\quad = \frac{4}{3}\sum _{k = 1}^{N_v}\sum _{l = 1}^{M_v}k_p(x_k,y_l)G_{{\mathscr {T}}}(x_k)G_{{{\mathscr {T}}}'}(y_l)\\&\quad \quad + \text {second-order spherical terms} \end{aligned} \end{aligned}$$

where

$$\begin{aligned} \left\{ \begin{aligned} G_{{\mathscr {T}}}(x_k)&= \Big [\pi (2-n_{x_k}+N_{x_k}) - \sum _{i = 1}^{N_{x_k}}\varphi _{i,x_k}\Big ]\\ G_{{{\mathscr {T}}}'}(y_l)&= \Big [\pi (2-m_{y_l}+N_{y_l}) -\sum _{j = 1}^{M_{y_k}}\varphi _{j,y_l}\Big ] \end{aligned} \right. \end{aligned}$$

and where the second-order spherical terms appear when considering the crossed terms

$$\begin{aligned} \begin{aligned}&\frac{1}{9} \left[ r_{11}^2 - r_{12}^2 + r_{22}^2 - r_{21}^2 \right] \sin (2\varphi _1) \sin (2\varphi _2) \\&+\frac{4}{9}\left[ r_{11}r_{21} + r_{12}r_{22} \right] \sin (2\varphi _1)\sin ^2(\varphi _2) \\&+ \frac{4}{9} \left[ r_{11}r_{12}-r_{21}r_{22} \right] \sin ^2(\varphi _1)\sin (2\varphi _2) \\&+\frac{8}{9} \left[ r_{11}r_{22}+r_{12}r_{21} \right] \sin ^2(\varphi _1)\sin ^2(\varphi _2) \end{aligned} \end{aligned}$$

we do not explicit these second-order terms since we still not have a satisfying implementation of this metric.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

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

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10851-019-00888-x

Keywords

Navigation