A Novel Diffeomorphic Model for Image Registration and Its Algorithm
 716 Downloads
Abstract
In this work, we investigate image registration by mapping one image to another in a variational framework and focus on both model robustness and solver efficiency. We first propose a new variational model with a special regularizer, based on the quasiconformal theory, which can guarantee that the registration map is diffeomorphic. It is well known that when the deformation is large, many variational models including the popular diffusion model cannot ensure diffeomorphism. One common observation is that the fidelity error appears small while the obtained transform is incorrect by way of mesh folding. However, direct reformulation from the Beltrami framework does not lead to effective models; our new regularizer is constructed based on this framework and added to the diffusion model to get a new model, which can achieve diffeomorphism. However, the idea is applicable to a wide class of models. We then propose an iterative method to solve the resulting nonlinear optimization problem and prove the convergence of the method. Numerical experiments can demonstrate that the new model can not only get a diffeomorphic registration even when the deformation is large, but also possess the accuracy in comparing with the currently best models.
Keywords
Image registration Diffeomorphic Beltrami coefficient Optimization Gauss–Newton schemeMathematics Subject Classification
65D 65M 65K 68U 68W1 Introduction
Image registration is to find a transformation to map the corresponding image data, which are taken at different times, from different sensors, or from different viewpoints, for the purpose of telling the difference or merging information. Nowadays, image registration is widely used in many areas, such as computer vision, biological imaging, remote sensing and medical imaging [6, 21, 26, 32, 36, 38, 40, 47, 57].
In reality, according to the specific application, image registration can be classified into two categories: monomodal registration and multimodal registration. For multimodal registration, finding a suitable distance measure is the most essential step [22, 35, 36, 47, 57]. The idea of this paper will be applicable to multimodal registration framework, but we focus on the monomodal registration in this work.
In dealing with the monomodal registration, there are many choices of a data fidelity term [33] and a common approach for computing this transformation is to use the sum of squared differences (SSD) to measure the difference between the reference image R and the deformed template image T [11]. However, minimization of SSD alone in image registration is an illposed problem in the sense of Hadamard since it may have many solutions. In order to overcome this difficulty, regularization is indispensable [38, 52]. However, the choice of the regularization term, which needs some prior information about physical properties and helps to avoid the local minima, depends on the specific application.
All registration models are nonlinear but they can be classified into two main categories according to the way deformation mapping is represented: linear registration and nonlinear registration. In linear registration, the deformation model is linear and global, including rotation, translation, shearing and scaling [11, 38]. Although the computation speed of a linear model is fast since it contains few variables, it is commonly used as the preregistration for starting a more sophisticated model. This is mainly because linear models can not accommodate the local details (differences). In contrast, nonlinear registration models inspired by physical processes of transformations [47] such as the elastic model [5], fluid model [9], diffusion model [16], TV (total variation) model [19], MTV (modified TV) model [12], linear curvature model [17, 18], mean curvature model [14], Gaussian curvature model [27] and total fractionalorder variation model [56] are proposed to account for localized variation in details, by allowing many degrees of freedom. The particular freeform deformation models based on Bsplines lying between the above two types possess simplicity, smoothness, efficiency and ability to describe local deformation with few degrees of freedom [44, 45, 47]. For relatively small deformation, all models can be effective, but for large deformation, not all models are effective and in particular few models can guarantee a onetoone mapping unless one fine tunes the coupling parameters to reduce the deformation magnitude allowed (since the mapping quality is perfect if deformation is zero) which in turn loses the ability of modelling large deformation.
Over the last decade, more and more researchers have focused on diffeomorphic image registration where folding measured by the local invertibility quantity \(\det (J_{\mathbf{y }})\) is reduced or avoided. Here, \(\mathbf{y }\) denotes the transformation in the registration model and \(\det (J_{\mathbf{y }})\) is the Jacobian determinant of \(\mathbf{y }\). Under desired assumptions, obtaining a onetoone mapping is a natural choice as reviewed in [47].
In 2004, Haber and Modersitzki [23] proposed an image registration model imposing volume preserving constraints, by ensuring \(\det (J_{\mathbf{y }})\) is close to 1. Although volume preservation is very important in some applications where some underlying (e.g. anatomical) structure is known to be incompressible [47], it is not required or reasonable in others. In a later work, the same authors [25] relaxed the constraint to allow \(\det (J_{\mathbf{y }})\) to lie in a specific interval. Yanovsky et al. [55] applied the symmetric Kullback–Leibler distance to quantify \(\det (J_\mathbf{y })\) to achieve a diffeomorphic mapping. Burger et al. [7] designed a volume penalty term that ensured that shrinkage and growth had the same cost in their variational functional. The constrained hierarchical parametric approach [41] ensures that the mapping is globally onetoone and thus preserves topology in the deformed image. Sdika [46] introduced a regularizer to penalize the noninvertible transformation. In [51], Vercauteren et al. proposed an efficient nonparametric diffeomorphic image registration algorithm based on Thirion’s demons algorithm [49]. In addition, a framework called large deformation diffeomorphic metric mapping (LDDMM) can generate the diffeomorphic transformation for image registration [3, 15, 37, 50]. An entirely different framework proposed by Lam and Lui [30] obtains diffeomorphic registrations by constraining Beltrami coefficients of a quasiconformal map \({\varvec{f}}=y_1({\mathbf{x }} )+ {\varvec{i}}y_2({\mathbf{x }})\), instead of controlling the map \(\mathbf{y }({\mathbf{x }} )\) directly.

We propose a new Beltrami coefficientbased regularizer that is explicitly expressed in terms of \(\det (J_{\mathbf{y }})\). This establishes a link between the Beltrami coefficient of the transformation and the quantity \(\det (J_{\mathbf{y }})\).

An effective, iterative scheme is presented and numerical experimental results show that the new registration model has a good performance and produces a diffeomorphic mapping while remaining competitive to the stateoftheart models from nonBeltrami frameworks.
The rest of the paper is organized as follows. Section 2 briefly reviews the basic mathematical formulation of image registration modelling, several typical regularization terms and how to get a diffeomorphic transformation for image registration. In Sect. 3, we propose a new regularizer and a new registration model. The effective discretization and numerical scheme are discussed in Sect. 4. Numerical experiment results are shown in Sect. 5, and finally a summary is concluded in Sect. 6.
2 Preliminaries, Regularization and Diffeomorphic Transformation
In general, image registration aims to compare, in space \(\mathbb {R}^{d}\), two or more images or image sequences in a video. In this work, we consider the case of a pair of images \(T, R:\Omega \subset \mathbb {R}^{d}\rightarrow \mathbb {R}\) and \(d = 2\). Here by convention, R is the Reference image and T is the (moving) Template image.
2.1 Data Fidelity
2.2 Regularization

Firstorder regularizers involving \(\nabla \mathbf{u }\) or \(\nabla \cdot \mathbf{u }\). The diffusion regularizer [16] and the TV regularizer [19] are wellknown firstorder regularizers. The former one aims to control smoothness of the displacement and the latter one can preserve the discontinuity.

Fractionalorder regularizer \(\nabla ^\alpha \mathbf{u }\) with \(\alpha \in (1,2)\). In [56], a fractionalorder regularizer is used for image registration. Because the fractionalorder regularizer is a global regularizer, its implementation must explore the structured Toeplitz matrices. This regularizer can not only produce accurate and smooth solutions but also allow for a large rigid alignment [56].

Secondorder regularizers involving \(\nabla ^2 \mathbf{u }\) or \(\nabla \cdot (\nabla \mathbf{u }/\nabla \mathbf{u })\). These include the linear curvature regularizer [17, 18], mean curvature regularizer [14] and Gaussian curvature regularizer [27].
However, as with other models reviewed in the three categories, the obtained solution \(\mathbf{u }\) or \(\mathbf{y }\) is mathematically correct but often incorrect physically. This is due to no guarantee of mesh nonfolding which is measured by \(\det (J_{\mathbf{y }})>0\), i.e. a positive determinant of the local Jacobian matrix \(J_\mathbf{y }\) of the transform \(\mathbf{y }\).
2.3 Models of Diffeomorphic Transformation
2.3.1 Volume Control
2.3.2 Slack Constraint
2.3.3 Unbiased Transform
2.3.4 Balance of Shrinkage and Growth
2.3.5 LDDMM Framework
2.3.6 Beltrami Indirect Control
In 2014, Lam and Lui [30] presented a novel approach in a Beltrami framework to obtain diffeomorphic registrations with large deformations using landmark and intensity information via quasiconformal maps. Before introducing this model, we first describe some basic theories about quasiconformal map and Beltrami coefficient.
A quasiconformal map is a homeomorphism (i.e. onetoone) and its firstorder approximation takes small circles to small ellipses of bounded eccentricity [20]. As a special case, \(\mu =0\) means that the map f is holomorphic and conformal, characterized by \(f_{ {\bar{z}}}=0\) or \(y_1, y_2\) satisfying the Cauchy–Riemann equations \((y_1)_{x_1} = (y_2)_{x_2}, \ (y_1)_{x_2} = (y_2)_{x_1}\).
 (1)
\(\mu = \mu ( \mathbf{y })\);
 (2)
\( \mathbf{y }(p_{j})=q_{j}\) for \(1\le j\le m\) (Landmark constraints);
 (3)
\(\Vert \mu ( \mathbf{y })\Vert _{\infty }<1\) (bijectivity),
Thus, instead of controlling the Jacobian determinant of the transformation directly, controlling Beltrami coefficient is also a good alternative providing the same but indirect control. However, since their algorithm [30] has to deal with two main unknowns (the transformation \(\mathbf y \) and its Beltrami coefficient \(\mu \)) and one auxiliary unknown (the coefficient \(\nu \)) in a nonconvex formulation, the increased cost, practical implementation and convergence are real issues; for challenging problems, one cannot observe convergence and therefore the full capability of the model is not realized.
We are motivated to reduce the unknowns and simplify their algorithm. Our solution is to reformulate the problem in the space of the primary variable \({\mathbf{y }}\) or \(\mathbf{u}\), not in the transformed space of variables \(\mu , \nu \). We make use of the explicit formula of \(\mu =\mu ({\mathbf{y }})\). Working with primal mapping \({\mathbf{y }}\) enables us to introduce the advantages of minimizing a Beltrami coefficient to the above reviewed variational framework (2), effectively unifying the two frameworks.
Hence, we propose a new regularizerbased Beltrami coefficient and, in the numerical part, we can find that it is easy to be implemented. Moreover, the reformulated control regularizer can potentially be applied to a large class of variational models.
3 The Proposed Image Registration Model
In this section, we aim to present a new regularizer based on Beltrami coefficient, which can help to get a diffeomorphic transformation. Then combining the new regularizer with the diffusion model, we present a novel model. Of course, combining with other models may be studied as well since the idea is the same.
For more details about quasiconformal theory, the readers can refer to [1, 20, 31].
3.1 New Regularizer
Remark
Our new regularizer has two advantages: one is that the obtained transformation \(\mathbf y \) do not need to possess \(\det (J_\mathbf{y })\rightarrow 1\); the other one is that we only compute the transformation and do not need to compute its Beltrami coefficient and introduce another auxiliary unknown as [30]. In addition, from the numerical experiments, we can see that our new regularizer is easy to implement and obtain accurate and diffeomorphic transformations.
3.2 The Proposed Model
Remark
From (9) and (17), we see that the QCHR model focuses on obtaining a smooth Beltrami coefficient and our model focuses on the diffeomorphic transformation itself. There are major differences between the regularizer in QCHR model and our new regularizer: the former is characterized by the Beltrami coefficient \(\mu \) directly and gradient of this Beltrami coefficient \(\mu \), while the latter is characterized by the Beltrami coefficient indirectly in terms of the transformation \(\mathbf y \) and the gradient of \(\mathbf u \). Since \(\mathbf y =\mathbf x + \mathbf u \) is our desired transformation, our direct regularizers such as \(\nabla \mathbf u ^2\) make more sense than indirect regularizers such as \(\nabla \mu ^2\).

\(\phi (v) =\phi _2(v)= \frac{v}{(v1)^{2}}\): balance \(\mu (f)\) between 0 and 1 as \(\phi _2(v)=\phi _2(1/v)\);

\(\phi (v) =\phi _3(v)=\frac{v^2}{(v1)^{2}}\): encourage \(\mu (f)\rightarrow 0\) and \(\mu (f)\not =1\);

\({\phi }'_{1}(v)=\frac{2}{(v1)^{3}}\) and \({\phi }''_{1}(v)=\frac{6}{(v1)^{4}}\);

\({\phi }'_{2}(v)=\frac{v+1}{(v1)^{2}}\) and \({\phi }''_{2}(v)=\frac{2v+4}{(v1)^4}\);

\({\phi }'_{3}(v)=\frac{2v}{(v1)^{3}}\) and \({\phi }''_{3}(v)=\frac{4v+2}{(v1)^4}\)
Remark
For the existence or uniqueness of a solution of (18), this is out of the scope of the present work and will be considered in our forthcoming work.
4 The Numerical Algorithm
In this section, we will present a numerical algorithm to solve model (18). We choose the discretize—optimize approach. Directly discretizing this variational model gives rise to a finitedimensional optimization problem. Then we use optimization methods to solve this resulting problem.
4.1 Discretization
4.1.1 Discretization of Term 1 in (18)
4.1.2 Discretization of Term 2 in (18)
Remark
Note that here the matrix A is the discretized gradient matrix. So \(A^{T}GA\) is the discretized Laplace matrix.
4.1.3 Discretization of Term 3 in (18)
For simplicity, denote \(\mu ( \mathbf{y }) =\mu ( \mathbf{x } +\mathbf u )\) by \(\mu ( \mathbf{u })\). From (18), note that \(\phi (\mu ( \mathbf{u })^{2})\) involves only firstorder derivatives and all \(\mathbf{u }^{i,j}\) are available at vertex pixels. Thus it is convenient first to obtain approximations at all cell centres (e.g. at \(V_5\) in Fig. 2) and second to use local linear elements to facilitate firstorder derivatives. We shall divide each cell (Fig. 2) into 4 triangles. In each triangle, we construct two linear interpolation functions to approximate the \(u_{1}\) and \(u_{2}\). Consequently, all partial derivatives are locally constants or \(\phi (\mu ( \mathbf{u })^{2})\) is constant in each triangle.
Remark
According to the definition of \(\phi \) and \(\vec {\mathbf{r }}(U)_{\ell } \ge 0\), each component of \({\varvec{\phi }}(\vec {\mathbf{r }}(U))\) is nonnegative and differentiable.
4.2 Optimization Method for the Discretized Problem (29)
In the numerical implementation, we choose line search method to solve the resulting unconstrained optimization problem (29). In order to guarantee the search direction is a descent direction, we employ the Gauss–Newton direction as the standard direction involving nondefinite Hessians does not generate a descent direction. Otherwise, using a Gauss–Newton approach presents two advantages: one is that we do not need to compute the secondorder term and it can save computation time; the other one is that this Gauss–Newton matrix is more important than the second term, either because of small secondorder derivatives or because of small residuals [42].
Next, we will investigate the details about the approximated Hessian \(H(U^{i})\), step length \(\theta _{i}\), stopping criteria and multilevel strategy.
4.2.1 Approximated Hessian H
We consider each of the three terms in J(U) from (29) separately.
Remark
Evaluation of the deformed template image T must involve interpolation because \(\tilde{\mathbf{U }}\) do not in general correspond to pixel points; in our implementation, as with [39], we use Bsplines interpolation to get \(\vec T(\tilde{\mathbf{U }})\).
Secondly, for the discretized diffusion regularizer \(\frac{\alpha h^{2}}{2} U^{T}A^{T}GAU\),
4.2.2 Search Direction
4.2.3 Step Length
4.2.4 Stopping Criteria
 (1.a)
\(\Vert J( U^{i+1})J( U^{i})\Vert \le \tau _{J}(1+\Vert J( U^{0})\Vert )\),
 (1.b)
\(\Vert \mathbf{y }^{i+1}\mathbf{y }^{i}\Vert \le \tau _{W}(1+\Vert \mathbf{y }^{0}\Vert )\),
 (1.c)
\(\Vert d_{J}\Vert \le \tau _{G}(1+\Vert J( U^{0})\Vert )\),
 (2)
\(\Vert d_{J}\Vert \le \) eps,
 (3)
\(i \ge \) MaxIter.
Next, we discuss the global convergence result of Algorithm 2 for our reformulated problem (29). Firstly, we review some relevant theorem.
Theorem 1
Remark
In the above discretization leading to (29), we do not need to introduce the boundary condition. However, for theory purpose, in the following, we will prove our convergence result under the Dirichlet boundary condition (namely, the boundary is fixed) and this condition is needed to prove the symmetric positive definite (SPD) property of the approximated Hessians. In practical implementation, such a condition is not required as confirmed by experiments.
In addition, define an important set \({\mathcal {X}}:=\{U \  \ \vec {\mathbf{r }}(U)_{\ell }\le 1\epsilon , 1 \le \ell \le 4n^{2}\}\) for small \(\epsilon \). So \(U\in {\mathcal {X}}\) means that the transformation is diffeomorphic. Under the suitable \(\beta \), we assume that each \(U^{i}\) generated by Algorithm 2 is in the \({\mathcal {X}}\).
Secondly we stage a simple lemma that is needed shortly for studying \(H^i\).
Lemma 2
Let a matrix be comprised of 3 submatrices \(H = H_{1}+H_{2}+H_{3}\). If \(H_{1}\) and \(H_{2}\) are symmetric positive semidefinite and \(H_{3}\) is SPD, then H is SPD with \(\lambda _{h_{3}}\le \lambda _{h}\), where \(\lambda _{h_{3}}\) and \(\lambda _{h}\) are the minimum eigenvalues of \(H_{3}\) and H separately.
Proof
Theorem 3
Proof
It suffices to show that Algorithm 2 satisfies the requirements of Theorem 1. Recall \(\vec {\mathbf{r }}(U)\) and we can see that it is continuous. Here, we use the Dirichlet boundary condition and we can assume that \(\Vert U\Vert \) is bounded. Then \(\vec {\mathbf{r }}(U)\) is a continuous mapping from a compact set to \(\mathbb {R}^{4n^{2}\times 1}\) and \(\vec {\mathbf{r }}(U)\) is proper. So for some small \(\epsilon >0\), \({\mathcal {X}}\) is compact.
Firstly, we show that in \({\mathcal {X}}\), \(d_{J}\) of (29) is Lipschitz continuous. When \(\phi =\phi _{1},\phi _{2}\) or \(\phi _{3}\), the term \({\varvec{\phi }}(\vec {\mathbf{r }}(U))e^{T}\) in the (29) is twice continuously differentiable with respect to \(U \in {\mathcal {X}}\). In addition, T and R are twice continuously differentiable. So (29) is twice continuously differentiable with respect to \(U \in {\mathcal {X}}\) and \(d_{J}\) is Lipschitz continuous.
Secondly, we show that in \({\mathcal {X}}\), \(H^{i}={\hat{H}}^{i}_{1}+ H^{i}_{2}+{\hat{H}}^{i}_{3}\) is SPD. By the construction of \(\hat{H}^{i}_{1}\) and \({\hat{H}}^{i}_{3}\), they are symmetric positive semidefinite. \(H^{i}_{2}\) is symmetric positive definite under the Dirichlet boundary condition. Consequently \(H^{i}\) is SPD.
Finally, we can find that (29) has lower bound 0. So by applying Theorem 1, we finish the proof. \(\square \)
4.3 Multilevel Strategy
In practice, we employ the multilevel strategy. We firstly coarsen the template T and the reference R by L levels. Here, we set \(T_{L} = T\) and \(R_{L} = R\) in the finest level and \(T_{1}\) and \(R_{1}\) in the coarsest level. Then we can obtain \(U_{1}\) by solving our model (18) on the coarsest level. In order to give a good initial guess for the finer level, we adopt an interpolation operator on \(U_{1}\) to obtain \(U_{2}^{0}\) as the initial guess for the next level. We repeat this process and get the final registration on the finest level. A multilevel strategy has several advantages: in the coarse level, only important patterns can be considered and it is a standard technique used in order to avoid getting trapped in a meaningless local minimum; the computational speed is very fast because of less variables than on the fine level; the solution on the coarse level can be a good initial guess for the fine level.
5 Numerical Results
 (1)

Which choice of \(\phi \) is the best for our model (18)?
 (2)

We wish to compare with the current stateoftheart methods (with codes listed for readers’ benefit) in the literature for good diffeomorphic mapping:
 (a)
Hyperelastic Model [7]: code from http://www.siam.org/books/fa06/
 (b)
LDDMM [37]: code from https://github.com/C4IR/FAIR.m/tree/master/addons/LagLDDMM
 (c)
Diffeomorphic Demons (DDemons) [51]: code from http://www.insightjournal.org/browse/publication/154
 (d)
QCHR [30]; code provided by the author Dr. Kam Chu Lam.
 3).

Most importantly, we like to test and highlight the advantages of our new model.
 (i)
 Re_SSD (the relative Sum of Squared Differences) which is given by$$\begin{aligned} \mathrm{Re}\_\mathrm{SSD} = \frac{\Vert T(\mathbf{y })R\Vert ^2}{\Vert TR\Vert ^2}; \end{aligned}$$(49)
 (ii)

\(\min \det (J_{\mathbf{y }})\) and \(\max \det (J_{\mathbf{y }})\) that are the minimum and the maximum of the Jacobian determinant of this transformation;
 (iii)
 Jaccard similarity coefficient (JSC) as defined bywhere \(DT_{r}\) and \(R_{r}\) represent, respectively, the segmented regions of interest (e.g. certain image feature such as an organ) in the deformed template (after registration) and the reference. Hence, JSC is the ratio of the intersection of \(DT_{r}\) and \(R_{r}\) to the union of \(DT_{r}\) and \(R_{r}\) [29]. JSC = 1 shows that a perfect alignment of the segmentation boundary and JSC = 0 indicates that the segmented regions have no overlap after registration. Before computing JSC, in the first three examples below, we have employed a segmentation algorithm to segment the main features in both T and R but for the 4th example, the segmentation was manually done for both T and R.$$\begin{aligned} \mathrm{JSC} = \frac{DT_{r}\cap R_{r}}{DT_{r}\cup R_{r}}, \end{aligned}$$(50)
5.1 Example 1—Improvement Over the Diffusion Model
In this example, we test a pair of real medical images, Xray Hands of resolution \(128 \times 128\). Figure 3a, b shows the template and the reference. We compare our model with the diffusion model and study the improvement over it. In implementation, for both models, we use a fivestep multilevel strategy.
We conduct two experiments using different parameters:
i) Fixed parameters. Our first choice uses fixed parameters. For New 1–3, we set \(\beta =7\), \(\beta =1\) and \(\beta =9\), respectively, and fix \(\alpha =2\). To be fair, we also choose \(\alpha =2\) for the diffusion model. In this case, Fig. 3 shows the deformed templates \(T(\mathbf{y })\) from 4 models. From it, we can see that all four models can produce visually satisfactory results. To differentiate them, we have to check the quantitative measures from Table 1. We can notice that the transformation obtained by the diffusion model is nondiffeomorphic due to \(\min \det (J_{\mathbf{y }}) <0\) (i.e. mesh folded, though visually pleasing and the Re_SSD is small). Figure 4 illustrates the transform \(\mathbf{y }=\mathbf{x } + \mathbf{u }\) locally at its folding point. In contrast, our New 1–3 can generate diffeomorphic transformations.
ii) Optimized parameters. The second choice uses the finetuned parameters for the diffusion model. We tested \(\alpha \in [1,500]\) and found the smallest \(\alpha =430\) with which the diffusion model generates a diffeomorphic transformation. Then for our model, we also set \(\alpha =430\) (which is not optimized in order to favour the former) and set \(\beta =5\) for New 1–3 (to test the robustness of our model). Table 1 shows the detailed results for this second test. From it, we can see that the Re_SSD and JSC of our model are similar to the diffusion model. And the transformations obtained by New 1–3 are all diffeomorphic while the diffusion model is only diffeomorphic with the help of an optimized \(\alpha \). This shows that our model possesses the robustness (in the sense of not requiring optimized \(\alpha \)) with the help of a positive \(\beta \).
Test example 1—Comparison of the new model (New 1–3) with the diffusion model based a fixed \(\alpha \) and an optimized \(\alpha \) for the latter
Resolution  Re_SSD (%)  \(\min \det (J_{\mathbf{y }})\)  \(\max \det (J_{\mathbf{y }})\)  JSC (%)  Time (s)  

First Test \(\alpha =2\)  
New 1  \(128\times 128\)  1.84  0.0032  20.1582  99.35  38.34 
New 2  \(128\times 128\)  1.25  0.0003  33.2404  99.54  30.66 
New 3  \(128\times 128\)  1.63  0.0014  28.1372  99.26  21.86 
Diffusion model  \(128\times 128\)  0.90  \(\) 36.7964  72.2924  98.41  13.42 
Second test \(\alpha =430\)  
New 1  \(128\times 128\)  7.83  0.1337  4.8247  98.28  3.16 
New 2  \(128\times 128\)  7.80  0.1300  4.8364  98.28  3.24 
New 3  \(128\times 128\)  7.78  0.1260  4.8472  98.36  3.03 
Diffusion model  \(128\times 128\)  7.75  0.0066  4.8278  98.30  1.08 
5.2 Example 2—Test of Large Deformation and Comparison of Models
As known, if the underlying deformation is small, it is generally believed that most models can deliver diffeomorphic transformations. This belief is true if one keeps increasing \(\alpha \), which in turn compromises the registration quality by resulting in an increase in Re_SSD (as seen in 2 tests of \(\alpha \) in Example 1 where the larger \(\alpha =430\) achieves diffeomorphism for diffusion with a worse Re_SSD value).
Following our stated strategy for choosing the parameter for our model, we set \(\beta =80, 120, 100\) for New 1–3, respectively, and fix \(\alpha =70\). To be consistent, we also set \(\alpha =70\) for the diffusion model. For the hyperelastic model, LDDMM and QCHR, we set, respectively, \(\{\alpha _{l}=100, \alpha _{s}=0, \alpha _{v}=18\}\), \(\alpha =400\) and \(\{\alpha =0.1,\beta =1\}\) as used in the literature [7, 30, 37] for the same example. For the parameters of DDemons, we tried to optimize the parameters \(\{\sigma _{s},\sigma _{g}\}\) in the domain \([0.5,5]\times [0.5,5]\) and took the optimal choice \(\{\sigma _{s}=1.5,\sigma _{g}=3.5\}\).
We now present the comparative results. Figure 5c–j shows that except for the diffusion model, all the other models can produce the accepted registered results. Especially, our model and LDDMM are slightly better than the hyperelastic model, DDemons and QCHR. It is pleasing to see that the new model produces equally good results for this challenging example. From Table 2, we see that our New 1–3, hyperelastic model, LDDMM, DDemons and QCHR produce \(\min \det (J_{\mathbf{y }})>0\), i.e. the transformations obtained by these five models are diffeomorphic but the diffusion model fails again with \(\min \det (J_{\mathbf{y }})<0\).
Because New 1–3 are motivated by the QCHR model, we now discuss the results about these two types of models. On the one hand, according to Table 2, we can find that our model takes less time. This is because, as we have mentioned, the algorithm for QCHR needs to solve alternatively two subproblems (including several linear systems) in each iteration. Its convergence cannot be guaranteed. However, our model only needs to solve one linear system in each iteration. In addition, we employ the Gauss–Newton method which can be superlinearly convergent under the appropriate conditions. As we have also remarked, the QCHR algorithm can have convergence problems. This is now illustrated in Fig. 6 where we plot the relative residual of our model (New 3) and the relative residual of QCHR. We observe that New 3 decreases to below \(10^{2}\) though not monotonically, but the relative residual of QCHR does not decrease and is over 0.1.
Test example 2—Comparison of the new model (New 1–3) with 5 other models
Resolution  Re_SSD (%)  \(\min \det (J_{\mathbf{y }})\)  max det\((J_\mathbf{y })\)  JSC (%)  Time (s)  

New 1  \(128\times 128\)  0.06  0.0042  22.4  95.57  7.00 
New 2  \(128\times 128\)  0.07  0.0012  19.5  95.84  10.10 
New 3  \(128\times 128\)  0.06  0.0034  22.6  95.37  3.93 
Hyperelastic Model  \(128\times 128\)  0.81  0.2426  5.9  94.84  1.84 
LDDMM  \(128\times 128\)  0.06  0.1175  12.0  96.00  9.16 
DDemons  \(128\times 128\)  1.71  \(1.3\times 10^{7}\)  8.2  92.69  57.27 
QCHR Model  \(128\times 128\)  7.69  0.0255  57.4  85.36  141.86 
Diffusion Model  \(128\times 128\)  1.25  \(10.1612\)  162.5  94.21  0.31 
5.3 Example 3—Comparison of Models for a Challenging Test
Here, we illustrate the fact that area preservation between images can become unnecessary and trying to enforce it (as in the hyperelastic model) can fail to register an image. We choose the particular template and reference images, as shown in Fig. 7a, b, having significantly different areas in their main features—here the area of ’Disc’ is much larger than ’C’. The resolution of the images is \(512 \times 512\). We test the performance of New 1–3 and other models. In this example, we use a sevenstep multilevel strategy for New 1–3, the hyperelastic model and the diffusion model. For LDDMM and QCHR, we use a fivestep multilevel strategy. We use a single level for DDemons (since multilevels do not help).
In choosing the parameters for all the models to register this example, we first follow our strategy to set \(\beta =250, 50, 100\) for New 1–3, respectively, and fix \(\alpha =50\). To be consistent, we also set \(\alpha =50\) for the diffusion model. For the hyperelastic model, we also set \(\alpha _{l} = 50\) because it contains the diffusion term, and take \(\alpha _{s}=0\). For the third parameter \(\alpha _{v}\) in the hyperelastic model, we test it in the range [55, 150] and choose its optimal value \(\alpha _{v}=75\). For LDDMM and QCHR, we set the default value \(\alpha =400\) and \(\{\alpha =0.1,\beta =1\}\) as the previous example. For the parameters of DDemons, we test the parameters \(\{\sigma _{s},\sigma _{g}\}\) in the domain \([0.5,5]\times [0.5,5]\) and choose its optimal choice \(\{\sigma _{s}=2,\sigma _{g}=5\}\). Hence we would expect the hyperelastic model and DDemons to perform well.

The badly deformed template generated by our New 1 shows that the model lacks robustness;

The hyperelastic model, though producing a diffeomorphic transform, fails (despite using an optimized parameter) because this model including a regularization term \((\det (J_\mathbf{y })1)^{4}/(\det (J_\mathbf{y }))^{2}\) tends to preserve area. If we do not optimize parameters for the hyperelastic model, our tests show that its results are even worse.

In the previous example, we have pointed out that QCHR needs more computing time and, from Table 3, we see that the time for QCHR is about 20 times as long as our New 3;

The DDemons is trapped in a local minimum and its cpu time is also excessive (\(>5000\) s). We also try to apply a multilevel strategy to DDemons, but for this example the result is not satisfied. The Re_SSD, JSC and cpu time of our New 3 are all slightly better than the second best LDDMM;

Both Tables 2 and 3 show that the diffusion model produces solutions having a negative Jacobian (folding) which might be viewed nonphysical; this model is included only for reference.
Example 3—Comparison of the new model (New 1–3) with 5 other models
Resolution  Re_SSD (%)  \(\min \det (J_{\mathbf{y }})\)  \(\max \det (J_{\mathbf{y }})\)  JSC (%)  Time (s)  

New 1  \(512\times 512\)  3.06  0.0328  38.2272  78.93  402.87 
New 2  \(512\times 512\)  0.08  0.0035  64.4950  97.84  281.95 
New 3  \(512\times 512\)  0.07  0.0064  60.1743  97.82  202.17 
Hyperelastic model  \(512\times 512\)  3.85  0.4895  7.0781  75.49  46.16 
LDDMM  \(512\times 512\)  0.41  0.0184  40.2544  95.05  218.32 
DDemons  \(512\times 512\)  2.83  \(9.6\times 10^{6}\)  34.8529  80.56  \(>5000\) 
QCHR model  \(512\times 512\)  2.03  0.0207  4.4744  84.24  4716.7 
Diffusion model  \(512\times 512\)  0.52  \(38.8337\)  286.3411  94.68  5.52 
We now give 2 remarks on comparing New 3 (or New 2) and QCHR. As remarked, QCHR regularizes the Beltrami coefficient only and the landmarks supplied to QCHR can severely affect the results while our model regularizes the deformation rather than Beltrami coefficient. Both points can be further tested below.
Comparison of smoothness measures for solutions obtained by New 3 and QCHR. The Beltrami coefficient \(\mu \) obtained by QCHR is smoother than New 3 and the displacement \(\mathbf u \) obtained by New 3 is smoother than QCHR
\(\Vert \nabla \mathbf u \Vert _{L^{2}}\)  \(\Vert \mu (\mathbf y )\Vert _{L^{2}}\)  \(\Vert \nabla \mu (\mathbf y )\Vert _{L^{2}}\)  Re_SSD  

Example 2  
QCHR with 16 pairs of landmarks  2.1099  0.6930  0.2782  4.90% 
New 3  1.6155  0.5024  0.2800  0.06% 
Example 3  
QCHR with 20 pairs of landmarks  1.5366  0.5853  0.0868  2.03% 
New 3  1.3913  0.3352  0.1090  0.07% 
(ii). On the second point, we now illustrate the importance of landmarks for QCHR although for other problems the model can yield good results without any landmarks. Figure 8 shows three sets of increasing number of landmarks for Examples 2–3. We observe that more landmarks lead to better results in terms of JSC values.
As a final comparison of New 3 with LDDMM and QCHR, Fig. 9 plots the magnitudes of the Jacobian determinants of their transformations. It can be seen that New 3 and LDDMM give a similar pattern but both are different from QCHR.
5.4 Example 4—Comparison of the New Model with Other Models
In the final test, we test a pair of anonymized CT images in resolution \(512 \times 512\) from the Royal Liverpool University Hospital. Figure 10a, b shows the template and the reference. The template was taken in September 2016 and the reference was taken in May 2016. We want to compare the changes of our interested regions of abdominal aortic aneurysm with stents inserted inside them (with cross sections shown as two while ‘circles’ in images in Fig. 10a, b) during these 4 months. In addition, the interested region is used to compute JSC. The small white region on top of the images helps us to identify the correct slice to compare.
Here, following the previous example, we use the same multilevel strategy: a sevenstep multilevel strategy for our model, the hyperelastic model and the diffusion model, a fivestep multilevel strategy for LDDMM and QCHR and a onestep multilevel strategy for DDemons.
Following our strategy for choosing the parameter of our model, we set \(\alpha =20\) and set \(\beta =100, 40, 75\) with New 1–3, respectively. For the diffusion model and LDDMM, we test \(\alpha \) from [100, 2000] and set the optimal value 1300 and 500 ,respectively. For the hyperelastic model, we set \(\{\alpha _{l}=20, \alpha _{s}=0, \alpha _{v}=50\}\). We use the default value \(\{\alpha =0.1,\beta =1\}\) for QCHR. For the parameters of DDemons, we test the parameters \(\{\sigma _{s},\sigma _{g}\}\) in the domain \([0.5,5]\times [0.5,5]\) and choose \(\{\sigma _{s}=4,\sigma _{g}=4.5\}\).
Example 4—Comparison of New 1–3 with 5 other models
Resolution  Re_SSD (%)  \(\min \det (J_{\mathbf{y }})\)  \(\max \det (J_{\mathbf{y }})\)  JSC (%)  

New 1  \(512\times 512\)  4.75  0.0124  52.6802  94.19 
New 2  \(512\times 512\)  3.49  0.0068  46.6383  94.39 
New 3  \(512\times 512\)  3.47  0.0051  49.9309  95.34 
Hyperelastic model  \(512\times 512\)  4.44  0.4181  3.6192  93.51 
LDDMM  \(512\times 512\)  5.18  0.0319  20.8164  93.79 
DDemons  \(512\times 512\)  18.89  0.1846  2.6309  87.40 
QCHR model  \(512\times 512\)  26.71  0.0481  16.2555  85.68 
Diffusion model  \(512\times 512\)  10.02  0.0342  7.3450  93.65 
Remark
According to the above four examples, our New 1 is not robust while New 2–3 can both generate accurate and diffeomorphic transformations. However, we recommend New 3 as the first choice because of the least computing time and the best quality, and New 2 as the second choice.
We also test these four examples with the Dirichlet boundary condition. Similar results for Examples 1 and 4 are obtained. However, for Examples 2 and 3, the transformations would be different since the boundary is better modelled by the Neumann’s condition.
6 Conclusions
Controlling mesh folding is a key issue in image registration models to ensure local invertibility. Many existing models either do not impose any further controls on the underlying transformation beyond smoothness (so potentially generating unrealistic or nonphysical transforms or mapping) or impose a direct (often strongly biased e.g. towards area or volume preservation) control on some explicit function of the measure \(\det (J_{\mathbf{y }})\). This paper introduces a novel, unbiased and robust regularizer which is reformulated from Beltrami coefficient framework to ensure a diffeomorphic transformation. Moreover, we find that a direct approach (our New 1) from this Beltrami reformulation provides an alternative but less competitive method but further refinements (especially our New 3) of this new regularizer can give rise to more robust models than the existing methods. We highly recommend our model New 3, i.e. (18) with \(\phi =\phi _3\).
In designing optimization methods for solving the resulting highly nonlinear variational model, we give a suitable approximation of the exact Hessian matrix which is necessary to derive a convergent iterative method. Our test results can show that the new model (New 1–3, especially New 3) is competitive with the stateoftheart models. The main advantage lies in robustness. Our future work will include extensions to 3D problems, multimodality models and development of faster iterative solvers.
References
 1.L. V. Ahlfors and C. J. Earle, Lectures on Quasiconformal Mappings, van Nostrand Princeton, 1966Google Scholar
 2.Barrett, R., Berry, M.W., Chan, T.F., Demmel, J., Donato, J., Dongarra, J., Eijkhout, V., Pozo, R., Romine, C., Van der Vorst, H.: Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods, vol. 43. SIAM, Philadelphia (1994)CrossRefzbMATHGoogle Scholar
 3.Beg, M.F., Miller, M.I., Trouvé, A., Younes, L.: Computing large deformation metric mappings via geodesic flows of diffeomorphisms. Int. J. Comput. Vis. 61, 139–157 (2005)CrossRefGoogle Scholar
 4.Bers, L.: Quasiconformal mappings, with applications to differential equations, function theory and topology. Bull. Am. Math. Soc. 83, 1083–1100 (1977)MathSciNetCrossRefzbMATHGoogle Scholar
 5.Broit, C.: Optimal Registration of Deformed Images, Ph.D. thesis, University of Pennsylvania, USA, (1981)Google Scholar
 6.Brown, L.G.: A survey of image registration techniques. ACM Comput. Surv. 24, 325–376 (1992)CrossRefGoogle Scholar
 7.Burger, M., Modersitzki, J., Ruthotto, L.: A hyperelastic regularization energy for image registration. SIAM J. Sci. Comput. 35, 132–148 (2013)MathSciNetCrossRefzbMATHGoogle Scholar
 8.Chen, Y., Ye, X.: Inverse consistent deformable image registration. in The Legacy of Alladi Ramakrishnan in the Mathematical Sciences, Springer, pp. 419–440 (2010)Google Scholar
 9.Christensen, G. E.: Deformable shape models for anatomy, Ph.D. thesis, Washington University Saint Louis, USA, (1994)Google Scholar
 10.Christensen, G.E., Rabbitt, R.D., Miller, M.I.: Deformable templates using large deformation kinematics. IEEE Trans. Image Process. 5, 1435–1447 (1996)CrossRefGoogle Scholar
 11.Chumchob, N., Chen, K.: A robust affine image registration method. Int. J. Numer. Anal. Model. 6, 311–334 (2009)MathSciNetzbMATHGoogle Scholar
 12.Chumchob, N., Chen, K.: A variational approach for discontinuitypreserving image registration, EastWest Journal of Mathematics, pp. 266–282 (2010)Google Scholar
 13.Chumchob, N., Chen, K.: A robust multigrid approach for variational image registration models. J. Comput. Appl. Math. 236, 653–674 (2011)MathSciNetCrossRefzbMATHGoogle Scholar
 14.Chumchob, N., Chen, K., Brito, C.: A fourthorder variational image registration model and its fast multigrid algorithm. Multiscale Model. Simul. 9, 89–128 (2011)MathSciNetCrossRefzbMATHGoogle Scholar
 15.Dupuis, P., Grenander, U., Miller, M. I.: Variational problems on flows of diffeomorphisms for image matching, Quarterly of applied mathematics, pp. 587–600 (1998)Google Scholar
 16.Fischer, B., Modersitzki, J.: Fast diffusion registration. Contemp. Math. 313, 117–128 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
 17.Fischer, B., Modersitzki, J.: Curvature based image registration. J. Math. Imaging Vis. 18, 81–85 (2003)MathSciNetCrossRefzbMATHGoogle Scholar
 18.Fischer, B., Modersitzki, J.: A unified approach to fast image registration and a new curvature based registration technique. Linear Algebra Appl. 380, 107–124 (2004)MathSciNetCrossRefzbMATHGoogle Scholar
 19.FrohnSchauf, C., Henn, S., Witsch, K.: Multigrid based total variation image registration. Comput. Vis. Sci. 11, 101–113 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
 20.Gardiner, F.P., Lakic, N.: Quasiconformal Teichmüller Theory, vol. 76. American Mathematical Society, Providence (2000)zbMATHGoogle Scholar
 21.Goshtasby, A.A.: 2D and 3D Image Registration: for Medical, Remote Sensing, and Industrial Applications. Wiley, Hoboken (2005)Google Scholar
 22.Goshtasby, A.A.: Image Registration: Principles Tools and Methods. Springer, Berlin (2012)CrossRefzbMATHGoogle Scholar
 23.Haber, E., Modersitzki, J.: Numerical methods for volume preserving image registration. Inverse Probl. 20, 1621 (2004)MathSciNetCrossRefzbMATHGoogle Scholar
 24.Haber, E., Modersitzki, J.: Intensity gradient based registration and fusion of multimodal images. In: Medical image computing and computerassisted interventionMICCAI. Springer, Berlin. pp. 726–733 (2006)Google Scholar
 25.Haber, E., Modersitzki, J.: Image registration with guaranteed displacement regularity. Int. J. Comput. Vis. 71, 361–372 (2007)CrossRefGoogle Scholar
 26.Hill, D.L.G., Batchelor, P.G., Holden, M., Hawkes, D.J.: Medical image registration. Phys. Med. Biol. 46, R1–45 (2001)CrossRefGoogle Scholar
 27.Ibrahim, M., Chen, K., BritoLoeza, C.: A novel variational model for image registration using Gaussian curvature. Geom. Imaging Comput. 1, 417–446 (2014)MathSciNetCrossRefzbMATHGoogle Scholar
 28.Kelley, C.T.: Iterative Methods for Pptimization. SIAM, Philadelphia (1999)CrossRefGoogle Scholar
 29.Klein, A., Andersson, J., Ardekani, B.A., Ashburner, J., Avants, B., Chiang, M.C., Christensen, G.E., Collins, D.L., Gee, J., Hellier, P., et al.: Evaluation of 14 nonlinear deformation algorithms applied to human brain mri registration. Neuroimage 46, 786–802 (2009)CrossRefGoogle Scholar
 30.Lam, K.C., Lui, L.M.: Landmarkand intensitybased registration with large deformations via quasiconformal maps. SIAM J. Imaging Sci. 7, 2364–2392 (2014)MathSciNetCrossRefzbMATHGoogle Scholar
 31.Lehto, O., Virtanen, K.I.: Quasiconformal Mappings in the Plane, vol. 126. Springer, New York (1973)CrossRefzbMATHGoogle Scholar
 32.Lester, H., Arridge, S.R.: A survey of hierarchical nonlinear medical image registration. Pattern Recognit. 32, 129–149 (1999)CrossRefGoogle Scholar
 33.Liu, M. Z.: Total Bregman divergence, a robust divergence measure, and its applications. Ph.D. thesis, University of Florida, USA. ISBN: 9781267377838, (2011)Google Scholar
 34.Lui, L.M., Lam, K.C., Wong, T.W., Gu, X.: Texture map and video compression using beltrami representation. SIAM J. Imaging Sci. 6, 1880–1902 (2013)MathSciNetCrossRefzbMATHGoogle Scholar
 35.Maes, F., Collignon, A., Vandermeulen, D., Marchal, G., Suetens, P.: Multimodality image registration by maximization of mutual information. IEEE Trans. Med. Imaging 16, 187–198 (1997)CrossRefGoogle Scholar
 36.Maintz, J.A., Viergever, M.A.: A survey of medical image registration. Med. Image Anal. 2, 1–36 (1998)CrossRefGoogle Scholar
 37.Mang, A., Ruthotto, L.: A Lagrangian Gauss–Newton–Krylov solver for mass and intensitypreserving diffeomorphic image registration. SIAM J. Sci. Comput. 39, B860–B885 (2017)MathSciNetCrossRefzbMATHGoogle Scholar
 38.Modersitzki, J.: Numerical Methods For Image Registration. Oxford University Press, Oxford (2004)zbMATHGoogle Scholar
 39.Modersitzki, J.: FAIR: Flexible Algorithms for Image Registration. SIAM, Philadelphia (2009)CrossRefzbMATHGoogle Scholar
 40.Mohamed, A., Zacharaki, E.I., Shen, D., Davatzikos, C.: Deformable registration of brain tumor images via a statistical model of tumorinduced deformation. Med. Image Anal. 10, 752–763 (2006)CrossRefGoogle Scholar
 41.Musse, O., Heitz, F., Armspach, J.P.: Topology preserving deformable image matching using constrained hierarchical parametric models. IEEE Trans. Image Process. 10, 1081–1093 (2001)CrossRefzbMATHGoogle Scholar
 42.Nocedal, J., Wright, S.: Numerical Optimization. Springer, Berlin (2006)zbMATHGoogle Scholar
 43.Paige, C.C., Saunders, M.A.: Solution of sparse indefinite systems of linear equations. SIAM J. Numer. Anal. 12, 617–629 (1975)MathSciNetCrossRefzbMATHGoogle Scholar
 44.Rohlfing, T., Maurer Jr., C.R., Bluemke, D.A., Jacobs, M.A.: Volumepreserving nonrigid registration of mr breast images using freeform deformation with an incompressibility constraint. IEEE Trans. Med. Imaging 22, 730–741 (2003)CrossRefGoogle Scholar
 45.Rueckert, D., Sonoda, L.I., Hayes, C., Hill, D.L., Leach, M.O., Hawkes, D.J.: Nonrigid registration using freeform deformations: application to breast MR images. IEEE Trans. Med. Imaging 18, 712–721 (1999)CrossRefGoogle Scholar
 46.Sdika, M.: A fast nonrigid image registration with constraints on the Jacobian using large scale constrained optimization. IEEE Trans. Med. Imaging 27, 271–281 (2008)CrossRefGoogle Scholar
 47.Sotiras, A., Davatzikos, C., Paragios, N.: Deformable medical image registration: a survey. IEEE Trans. Med. Imaging 32, 1153–1190 (2013)CrossRefGoogle Scholar
 48.Sun, W., Yuan, Y.X.: Optimization Theory and Methods: Nonlinear Programming, vol. 1. Springer, Berlin (2006)zbMATHGoogle Scholar
 49.Thirion, J.P.: Image matching as a diffusion process: an analogy with Maxwell’s demons. Med. Image Anal. 2, 243–260 (1998)CrossRefGoogle Scholar
 50.Trouvé, A.: Diffeomorphisms groups and pattern matching in image analysis. Int. J. Comput. Vis. 28, 213–221 (1998)CrossRefGoogle Scholar
 51.Vercauteren, T., Pennec, X., Perchant, A., Ayache, N.: Diffeomorphic demons: efficient nonparametric image registration. NeuroImage 45, S61–S72 (2009)CrossRefGoogle Scholar
 52.Vogel, C.R.: Computational Methods for Inverse Problems. SIAM, Philadelphia (2002)CrossRefzbMATHGoogle Scholar
 53.Weickert, J., Romeny, B., Viergever, M.: Efficient and reliable schemes for nonlinear diffusion filtering. IEEE Trans. Image Process. 7, 398–410 (1998)CrossRefGoogle Scholar
 54.Yang, X., Pei, J. H., Shi, J. L.: Inverse consistent nonrigid image registration based on robust point set matching, BioMedical Engineering OnLine, 13 (2014)Google Scholar
 55.Yanovsky, I., Thompson, P., Osher, S., Leow, A.: Large deformation unbiased diffeomorphic nonlinear image registration: theory and implementation. In: IEEE conference CVPR’ 2007 (see also UCLA CAM Report 0671), 71 (2007)Google Scholar
 56.Zhang, J., Chen, K.: Variational image registration by a total fractionalorder variation model. J. Comput. Phys. 293, 442–461 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
 57.Zitova, B., Flusser, J.: Image registration methods: a survey. Image Vis. Comput. 21, 977–1000 (2003)CrossRefGoogle Scholar
Copyright information
Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.