*3.1. Shape Representation and Registration Problems*

This section provides the basic concepts of representation and registration of shapes. Let a shape *V* be *V* = {*v<sup>i</sup>* <sup>|</sup>*v<sup>i</sup>* <sup>∈</sup> <sup>R</sup><sup>3</sup> , *i* = 0, . . . , *n* − 1}, which contains *n* of vertices. If *V<sup>s</sup>* and *V<sup>t</sup>* are source and target shapes, respectively, the registration problem is to find an optimal transformation that minimizes the dissimilarity between the shapes. Here, an arbitrary transformation *T* maps the source shape *V<sup>s</sup>* to the target shape *V<sup>t</sup>* . Through the optimization process, the optimal transformation parameters *x* ∗ minimize disparity measure as follows:

$$\mathbf{x}^\* = \arg\min\_{\mathbf{x}} d(T(\mathbf{x}) \circ V\_{\mathbf{s}}, V\_t). \tag{1}$$

The transformation *T* is a mapping such that

$$T: V\_s \to \tilde{V} = V\_s + \mathcal{U}(V\_{s\prime}x)\_{\prime} \tag{2}$$

where *V*¯ is the deformed shape, *x* are the local deformation parameters, and *U*(*V*, *x*) is a vertex-wise mapping.

The shape transformation *T* may be represented through the modification of a coarse cage mesh that envelops the source shape. Let a region Ω bound the shape *V<sup>s</sup>* in 3D. The sub-region Ω*<sup>r</sup>* is a sub-divisions of Ω, where Ω = S <sup>∀</sup>*<sup>r</sup>* <sup>Ω</sup>*<sup>r</sup>* and <sup>Ω</sup>*<sup>i</sup>* <sup>∩</sup> <sup>Ω</sup>*<sup>j</sup>* <sup>=</sup> <sup>∅</sup>, *<sup>i</sup>* <sup>6</sup><sup>=</sup> *<sup>j</sup>*. If we create the *<sup>m</sup>* <sup>×</sup> *<sup>m</sup>* <sup>×</sup> *<sup>m</sup>* regular lattice grid on the region <sup>Ω</sup>, the sub-divisions of <sup>Ω</sup> contain (*<sup>m</sup>* − <sup>1</sup>) 3 control vertices and *m*<sup>3</sup> sub-regions. Hereby, the sub-region Ω*<sup>r</sup>* is defined as an 8-point cuboid. The eight corner points of Ω*<sup>r</sup>* are given as *P<sup>r</sup>* = {*p<sup>i</sup>* <sup>|</sup>*p<sup>i</sup>* <sup>∈</sup> <sup>R</sup><sup>3</sup> , *i* = 0, . . . , 7}. The linear combination of cage control points and their local coordinates represent the vertices of the shape *V<sup>s</sup>* . If the vertex *<sup>v</sup>* ⊂ <sup>Ω</sup>*<sup>r</sup>* , then the representation of the vertex by the sub-region control point is given as below:

$$v = F(v; P\_r) = \sum\_{i=0}^{7} \varphi\_i(v) p\_{i\prime} \tag{3}$$

where *φ<sup>i</sup>* is a trilinear shape function for assigning local coordinates, such as

$$\begin{aligned} \varphi\_0(v\_{\mathcal{X}}, v\_y, v\_z) &= (1 - v\_{\mathcal{X}})(1 - v\_y)(1 - v\_z)/8 \\ \varphi\_1(v\_{\mathcal{X}}, v\_y, v\_z) &= (1 + v\_{\mathcal{X}})(1 - v\_y)(1 - v\_z)/8 \\ \varphi\_2(v\_{\mathcal{X}}, v\_y, v\_z) &= (1 + v\_{\mathcal{X}})(1 + v\_y)(1 - v\_z)/8 \\ \varphi\_3(v\_{\mathcal{X}}, v\_y, v\_z) &= (1 - v\_{\mathcal{X}})(1 + v\_y)(1 - v\_z)/8 \\ \varphi\_4(v\_{\mathcal{X}}, v\_y, v\_z) &= (1 - v\_{\mathcal{X}})(1 - v\_y)(1 + v\_z)/8 \\ \varphi\_5(v\_{\mathcal{X}}, v\_y, v\_z) &= (1 + v\_{\mathcal{X}})(1 - v\_y)(1 + v\_z)/8 \\ \varphi\_6(v\_{\mathcal{X}}, v\_y, v\_z) &= (1 + v\_{\mathcal{X}})(1 + v\_y)(1 + v\_z)/8 \\ \varphi\_7(v\_{\mathcal{X}}, v\_y, v\_z) &= (1 - v\_{\mathcal{X}})(1 + v\_y)(1 + v\_z)/8. \end{aligned}$$

From the previous definition of a cage representation, the motion of vertex *v* in the direction *v*¯ is given as follows:

$$\begin{aligned} \mu(v, P\_r) &= \sigma - v \\ &= \sum\_{i=0}^7 \varrho\_i(v)(p\_i + \partial p\_i) - \sum\_{i=0}^7 \varrho\_i(v)p\_i \\ &= \sum\_{i=0}^7 \varrho\_i(v)\partial p\_{i\prime} \end{aligned}$$

where *u*(*v*, *x*) is the motion of vertex *v* and *∂p<sup>i</sup>* is the motion of control point *p<sup>i</sup>* . Therefore, the shape deformation is only dependent on the change of control points, as shown in Figure 4. Therefore, the parameter of the cage representation of the transformation *T* is given as follows:

$$\mathfrak{x} = \{\partial p\_i | \partial p\_i \in \mathbb{R}^3, i = 0, \dots, 7\}. \tag{5}$$

**Figure 4.** Hierarchical registration with different deformation depths. (**a**–**c**) Level 1; (**d**–**f**) Level 2 registration. (**a**,**d**) show cage partitioning at different levels. (**b**,**e**) show correspondence searching, while (**c**,**e**) show the gradient descent-based deformation update.
