Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

1 Introduction

In the realm of spinal surgery, ultrasound (US) is an attractive imaging modality for image-guided interventions because it is non-invasive, produces no radiation, offers real-time acquisition and has low costs. However, the registration of US intra-operative scans with respect to (w.r.t.) pre-operative scans (e.g. computerised tomography, CT) is challenging because of the limited depth of field, low resolution and reduced signal-to-noise ratio of US scans.

Among the proposed strategies for US to CT registration, the methods based on the unscented Kalman filter (UKF) have proven to effectively handle datasets with incomplete and noisy data. However, the UKF-based methods require a good initial alignment between the CT and US datasets to perform accurate registrations.

In this work, we implement a registration algorithm that addresses the problem of producing a good initial guess of the registration parameters by means of a principal component analysis (PCA) of the point clouds. This good initial guess enables the robust functioning of UKF, unviable otherwise. Our registration algorithm refines the registration parameters obtained from the PCA by implementing an UKF with a modified batch-based point inclusion strategy for its iterations. The proposed algorithm was tested systematically with simulated data, considering scenarios with partial scans of the vertebra and with outlier points coming from adjacent vertebrae, which were not addressed in other works based on the use of the UKF. In all cases, the proposed method obtained remarkable results.

1.1 Related Work

Several methods have been proposed to register CT and US volumes. On one hand, intensity-based methods are interesting because segmentation of the CT and US datasets is avoided. Methods of Lang et al. [1] and Gill et al. [2] are based on the US simulation of the CT volume. Then, the acquired and simulated US are registered by maximizing an intensity similarity metric between them. These methods are able to register datasets with initial misalignments up to 20 mm. In order to avoid US volume reconstruction, Yan et al. [3] propose a method to register a group of US slices to a CT volume. However, such method requires that the initial misalignments between the datasets are smaller than 15 mm to work properly. To overcome limitations of previous approaches, Hacihaliloglu et al. [4] present a method that projects, by using three-dimensional (3D) Radon transform, and aligns local phase-based bone features in the projective space. The quantitative evaluation of such method (initial misalignments of the datasets between \({\pm }30\) mm and \({\pm }15^\circ \)) proves its accuracy. A general limitation of the reviewed methods is their computational complexity, which impedes their real-time use.

On the other hand, real-time US to CT registration is usually based on point-based registration methods, such as the iterative closest point (ICP) algorithm [5]. In this line of work, Ungi et al. [6] present an algorithm based on the pairing of manually defined landmarks in the CT and US data by using a simplified version of the ICP algorithm. The ICP method, however, is vulnerable to outlier points in the datasets, only accounts for isotropic Gaussian noise on both datasets and it requires a good initial registration guess.

To improve upon ICP, methods based on the Kalman filter have been proposed for registration of point clouds carrying anisotropic noise. In the work of Moghari and Abolmaesumi [7], an UKF-based registration method that is more accurate and robust than the ICP is presented. However, the UKF robustness sharply decreases with low quality (misalignment beyond \(30^\circ \) or 30 mm) in the initially guessed registration. In the work of Talib et al. [8], a linear Kalman filter (LKF) is used to register coplanar points of US snapshots as they are acquired from the patient. The LKF shows good accuracy and response times in the registration if the initial registration guess has misalignments under \(5^\circ \) and 20 mm [8].

Although methods in the works of Moghari and Abolmaesumi [7] and Talib et al. [8] require a good initial alignment between the datasets, such works do not report any action to overcome such an obstacle. In response to the mentioned limitations, we present a complete registration algorithm composed of two stages: (1) a coarse registration stage based on PCA, capable of correcting large misalignments between the CT and US datasets, and (2) a fast fine registration stage based on the UKF, which refines the initial guess from PCA.

2 Materials and Methods

2.1 Registration Problem

The registration problem consists in the statistical estimation of a rigid transformation \(\mathbf {T} (\mathbf {R},\mathbf {t})\) which brings the CT point cloud (\(\mathbf {Y} \in \mathbb {R}^{3\times N}\)) and the US points cloud (\(\mathbf {U} \in \mathbb {R}^{3\times M}\)) into alignment. \(\mathbf {R}\) represents a rotation matrix (belonging to the special orthogonal SO(3) group) parameterized by Euler angles \(\left[ \theta _{x},\theta _{y},\theta _{z}\right] \) and \({\mathbf {t}\,{=}\,\left[ t_x,t_y,t_z\right] ^T}\) is translation vector. Then, the registration problem can be stated as finding \(\mathbf {R}\) and \(\mathbf {t}\) such that the cost function f is minimized:

$$\begin{aligned} f = \sum _{i=1}^{M}{\Big ||\mathbf {c}_i-(\mathbf {R}{\mathbf {u}_i}+\mathbf {t})\Big ||}, \end{aligned}$$
(1)

where points \(\mathbf {c}_i \in \mathbf {Y}\) and points \(\mathbf {u}_i \in \mathbf {U}\). Points \(\mathbf {c}_i\) are computed as \(\mathbf {c}_i\,{=}\,\Psi (\mathbf {Y},\mathbf {R}{\mathbf {u}_i}+\mathbf {t})\) where function \(\mathbf {c}\,{=}\,\Psi (\mathbf {A},\mathbf {b})\) finds the point \(\mathbf {c}\) in set \(\mathbf {A}\) that presents the minimum Euclidean distance to point \(\mathbf {b}\). Notice that the CT and US scans: 1. do not sample the same object points, 2. do not have the same sizes, 3. do not completely sample the interest subset, 4. do not only sample the interest subset and may include points from adjacent objects.

2.2 Registration by Using PCA and Kalman Filters

The workflow of the implemented registration algorithm is shown in Fig. 1(a). In the PCA-based registration, the parameters of a coarse registration transformation \(\mathbf {T}^{0}\) are estimated, and then, point cloud \(\mathbf {U}\) is transformed as \(\mathbf {T}^{0}\mathbf {U}\). In the UKF-based registration (Fig. 1(b)), point cloud \(\mathbf {T}^{0}\mathbf {U}\) is incrementally transformed as \(\mathbf {T}^{j}\mathbf {T}^{j-1}\dots \mathbf {T}^{1} \mathbf {T}^{0} \mathbf {U}\,{=}\,\mathbf {T}^{e} \mathbf {U}\) where \(\mathbf {T}^{j}\) is the transformation estimated in iteration j of the UKF. \(\mathbf {T}^{e}(\mathbf {R}^e,\mathbf {t}^{e})\) minimizes (1).

Coarse Registration Using PCA. A pre-requisite for PCA-based registration is the fact (indeed present in vertebrae cases) that object protrusions and asymmetries exist, which guide the alignment.

Fig. 1.
figure 1

(a) Workflow of the implemented registration algorithm. (b) Workflow of the UKF-based registration.

Since point clouds \(\mathbf {Y}\) and \(\mathbf {U}\) sample enough common neighborhoods in the object, we propose to initialize the registration procedure by aligning the principal axes of data sets \(\mathbf {Y}\) and \(\mathbf {U}\). Let \(\mathbf {V}\) and \(\mathbf {W}\) be \(3 \times 3\in SO(3)\) matrices containing the principal axes (eigenvectors) of point sets \(\mathbf {Y}\) and \(\mathbf {U}\), respectively. \(\mathbf {V}\) and \(\mathbf {W}\) are obtained by singular value decomposition (SVD) of the covariance matrices of their respective point clouds [9]. \(\mathbf {V}\) and \(\mathbf {W}\) have their orthogonal column vectors sorted in order of descending variance, with determinant \({+}1\) enforced. \(\mathbf {R}\) is given by:

$$\begin{aligned} \mathbf {R} = \mathbf {V}\mathbf {W}^{T}. \end{aligned}$$
(2)

The translation vector \(\mathbf {t}\) is determined by the distance between the centroid of dataset \(\mathbf {Y}\) and the rotated centroid of dataset \(\mathbf {U}\):

$$\begin{aligned} \mathbf {t} = \mathbf {c}_\mathrm {Y} - \mathbf {R}\mathbf {c}_\mathrm {U}, \end{aligned}$$
(3)

where \(\mathbf {c}_\mathrm {Y}\) and \(\mathbf {c}_\mathrm {U}\) are the centroids of \(\mathbf {Y}\) and \(\mathbf {U}\) respectively.

PCA determines the direction of each principal axis of the data but allows sign ambiguity. Therefore, the sign of eigenvectors in \(\mathbf {W}\) is set so the distance between the point clouds \(\mathbf {T}^{0}\mathbf {U}\) and \(\mathbf {Y}\) is minimized. The resulting misalignment between \(\mathbf {Y}\) and \(\mathbf {T}^{0} \mathbf {U}\) is deterministic and is independent of any rigid transformation applied on \(\mathbf {Y}\) or \(\mathbf {U}\).

Fine Registration Using the Unscented Kalman Filter. The implemented UKF formulation is a variant of the one presented in the work of Moghari and Abolmaesumi [7]. To register point clouds \(\mathbf {Y}\) and \(\mathbf {U}\) using the UKF, points in \(\mathbf {U}\) and \(\mathbf {Y}\) are regarded as inputs and outputs, respectively, of a multiple-input and multiple-output (MIMO) system. The non-linear system state vector is then \(\mathbf {x}\,{=}\,\left[ \theta _{x},\theta _{y},\theta _{z},t_x,t_y,t_z\right] ^T\), which builds transformation matrix \(\mathbf {T}(\mathbf {R},\mathbf {t})\) (Eq. 1). The UFK is comprised by the prediction and correction steps of the estimates of \(\mathbf {x}\) (Fig. 1(b)). The a priori and maximum a posteriori estimates of \(\mathbf {x}\) in iteration j are denoted as \(^{-}\hat{\mathbf {x}}^{j}\)(predicted) and \(\hat{\mathbf {x}}^{j}\)(corrected), respectively.

Prediction of \(\hat{\mathbf {x}}\): In this step, a prediction of the values of the system variables is performed and with such prediction the outputs of the MIMO system are also predicted for a given set of inputs. In the prediction step, the fact that \(\mathbf {U}\) is transformed incrementally is considered. Let the state of \(\mathbf {U}\) in iteration j of the UKF be denoted by \(\mathbf {U}^e\), where \(\mathbf {U}^{e}\,{=}\,\mathbf {T}^{e}\mathbf {U}\,{=}\,\mathbf {T}^{j}\mathbf {T}^{j-1}\ldots \mathbf {T}^{0}\mathbf {U}\). This means that initial matrices \(\mathbf {T}^{j}\) represent relatively large transformations, but, as more iterations are completed, matrices \(\mathbf {T}^{j}\) represent transformations similar to the identity matrix (\(\mathbf {I}\)). Following this rationale, a reasonable guess of the transformation to be applied in iteration \(j+1\) is the one applied in iteration j. Then, the prediction \(^{-}\hat{\mathbf {x}}^{j+1}\) is computed as per (4):

$$\begin{aligned} ^{-}\hat{\mathbf {x}}^{j+1}=\hat{\mathbf {x}}^{j} (\forall j\ge 1). \end{aligned}$$
(4)

Notice that the input for the fine registration method is the transformed dataset \(\mathbf {T}^{0} \mathbf {U}\), which is closely aligned with \(\mathbf {Y}\). Therefore, \(\hat{\mathbf {x}}^{0}\) (which may represent a large transformation) is not used to predict \(^{-}\hat{\mathbf {x}}^{1}\). Instead, \(^{-}\hat{\mathbf {x}}^{1}\) is initialized such that it represents the identity matrix (\(\mathbf {I}\)), as proposed in the work of Moghari and Abolmaesumi [7].

Let \(\mathbf {u}^{j+1}\,{=}\,\left[ \mathbf {u}_1^T,\mathbf {u}_2^T,\ldots ,\mathbf {u}_m^T\right] ^T\,{=}\,\left[ x_1,y_1,z_1,x_2,y_2,z_2,\ldots ,x_m,y_m,z_m\right] ^T\) be a vector (with size \(3m\,{\times }\,1\)) containing the (xyz) coordinates of points \(\in \mathbf {U}^{e}\) concatenated vertically, which are used to estimate \(\hat{\mathbf {x}}^{j+1}\). To achieve a smooth behavior of the filter, \(\mathbf {u}^{j+1}\) is populated keeping a set of points from \(\mathbf {U}^{e}\) previously used in the registration, but adding a new set of points not used before in the estimation of the state vector \(\hat{\mathbf {x}}\).

For each point \(\mathbf {u}_i\,{\in }\,\mathbf {u}^{j+1}\) a prediction (\(^{-}\hat{\mathbf {y}}_i\)) of its corresponding point in dataset \(\mathbf {Y}\) is computed as per (5), where \(\mathbf {x}_{\theta }\,{=}\,\left[ \theta _{x},\theta _{y},\theta _{z}\right] ^T\) and \(\mathbf {x}_{t}\,{=}\,\left[ t_x,t_y,t_z\right] ^T\). The vector containing the coordinates of the predicted \(^{-}\hat{\mathbf {y}}_i\) points is \(^{-}\hat{\mathbf {y}}^{j+1}\,{=}\,\left[ ^{-}\hat{\mathbf {y}}_1^T,\ldots ,^{-}\hat{\mathbf {y}}_m^T\right] ^T\):

$$\begin{aligned} ^{-}\hat{\mathbf {y}}_{i}=\mathbf {R}(^{-}\hat{\mathbf {x}}^{j+1}_{\theta })\mathbf {u}_i + ^{-}\mathbf {x}^{j+1}_t. \end{aligned}$$
(5)

Correction of \(\hat{\mathbf {x}}\): The correction of \(\hat{\mathbf {x}}\) is based on the minimization of the distances between the predicted \(^{-}\hat{\mathbf {y}}_{i}\) (5) and the observed \(\mathbf {y}_i\) points (\(\mathbf {y}_i \in \mathbf {Y}\)) that correspond to points \(\mathbf {u}_i\). The points \(\mathbf {y}_i\) are defined as the observed correspondences in \(\mathbf {Y}\) to points \(\mathbf {u}_i\). The points \(\mathbf {y}_i\) are the ones that present the minimum Euclidean distance to the points \(\mathbf {u}_i\) transformed by (5), and therefore, points \({\mathbf {y}}_{i}\) are computed as \(\mathbf {y}_i\,{=}\, \Psi \left( \mathbf {Y},^{-}\hat{\mathbf {y}}_{i}\right) \). The vector containing the observed correspondences \(\mathbf {y}_i\) is \(\mathbf {y}^{j+1}\,{=}\,\left[ \mathbf {y}_1^T,\ldots ,\mathbf {y}_m^T\right] ^T\). Then, \(\hat{\mathbf {x}}\) is corrected as per (6), where \(\mathbf {K}^{j+1}\,{\in }\,\mathbb {R}^{6 \times 3m}\) is the Kalman gain matrix. \(\mathbf {K}\) and the covariance matrices of the noise and state vector are computed as proposed by Moghari and Abolmaesumi [7]:

$$\begin{aligned} \hat{\mathbf {x}}^{j+1}=^{-}\hat{\mathbf {x}}^{j+1}+\mathbf {K}^{j+1}(\mathbf {y}^{j+1}-^{-}\hat{\mathbf {y}}^{j+1}). \end{aligned}$$
(6)

Finally, \(\mathbf {T}^{j+1}\) is assembled with the estimated variables in \(\hat{\mathbf {x}}^{j+1}\) and it is applied to dataset \(\mathbf {U}^{e}\), \(\mathbf {U}^{e}\,{=}\,\mathbf {T}^{j+1}\mathbf {U}^{e}\). The prediction and correction steps are repeated until convergence is achieved. Notice that the fact that this algorithm registers point batches \(\mathbf {y}_i\) and \(\mathbf {u}_i\), which contain m points, does not imply that point clouds \(\mathbf {U}\) and \(\mathbf {Y}\) must have the same size.

In contrast to the UKF formulation in the work of Moghari and Abolmaesumi [7], the size of \(\mathbf {u}^{j+1}\) remains constant (batches of points of size \(3m\,{\times }\,1\)). In the work of Moghari and Abolmaesumi [7] a point from \(\mathbf {U}^{e}\) is added to \(\mathbf {u}^{j+1}\) in each iteration j until convergence is achieved or all points in \(\mathbf {U}^{e}\) have been added to \(\mathbf {u}^{j+1}\). Notice that Moghari and Abolmaesumi [7] the inversion of matrices with size \(3m\,{\times }\,3m\), with m increasing in each iteration, is required, which becomes computationally expensive as more iterations are completed [8].

Fig. 2.
figure 2

(a) Typical anatomy of a lumbar vertebra. (b) US views to scan it defined in the work of Chin et al. [10]: paramedian sagittal (PS) transverse process view (top left), PS articular process view (top right), PS oblique view (bottom left), transverse spinous process view (bottom centre) and transverse interlaminar view (bottom right).

2.3 Evaluation of the Performance of the Registration Algorithm

The performance of our implemented registration algorithm is assessed in the following clinical scenarios:

  1. 1.

    Base-Case: When a reasonable quality US scan \(\mathbf {U}\) of only the target vertebra is available.

  2. 2.

    Incomplete US-Scans: When specific regions of the target vertebra do not appear in \(\mathbf {U}\).

  3. 3.

    Outliers: When regions belonging to adjacent vertebrae appear in \(\mathbf {U}\).

The datasets \(\mathbf {U}\) belonging to the mentioned scenarios are generated following the protocol to US-scan lumbar vertebrae proposed in the work of Chin et al. [10]. The various regions of the vertebra (Fig. 2(a)) are scanned from five basic views (Fig. 2(b): 1. paramedian sagittal (PS) transverse process view, 2. PS articular process view, 3. PS oblique view, 4. transverse spinous process view, and 5. transverse interlaminar view.

Then, the datasets \(\mathbf {U}\) are created by intentionally failing (or not) in scanning the vertebra in the specified views of the protocol. Table 1 defines the notation that specify the failures in the US acquisition protocol.

The scope of our investigation reaches vertebra vs. vertebra registration. We do not seek to register groups of vertebrae. Notice that algorithms for multiple-vertebra registration must deal with the relative movement among vertebrae as the patient changes position in CT and US acquisition. Besides, in this work we assume that the vertebra to be registered has been correctly selected in the CT and US volumes by the medical staff.

Datasets Production. The assessment datasets are generated as follows:

  1. (a)

    A surface model of the vertebra is obtained from a CT scan. We have used the spine surface model available in the work of Lasso et al. [11].

  2. (b)

    The PLUS software [11] is used to simulate an US scan of (a).

  3. (c)

    Volume reconstruction and segmentation are effected to produce an US vertebra surface model from (b).

  4. (d)

    Datasets \(\mathbf {Y}\) and \(\mathbf {U}\) are populated by vertices of (a) and (c), respectively.

  5. (e)

    Datasets \(\mathbf {U}\) are generated such that they have complete alignment with \(\mathbf {Y}\).

  6. (f)

    True correspondences between points in \(\mathbf {U}\) and \(\mathbf {Y}\) are known beforehand.

Note that, despite that a surface model is extracted from the CT scan, dataset \(\mathbf {Y}\) only consists of the model’s vertices and not of its surface patches. Thus, all registrations are performed between pairs of point clouds.

Table 1. Notation of failures in the US acquisition protocol.

Registration Accuracy. The accuracy of the registration is estimated with the mean target registration error (mTRE) as per (7):

$$\begin{aligned} \mathrm {mTRE}=\sqrt{\frac{1}{n}\sum _{i=1}^{n}[\mathbf {y}_i-\mathbf {u}_i]^T[\mathbf {y}_i-\mathbf {u}_i]}, \end{aligned}$$
(7)

with \(\mathbf {u}_i\) and \(\mathbf {y}_i\) being true corresponding points in \(\mathbf {U}\) and \(\mathbf {Y}\), respectively, unused during registration. Successful registrations have mTRE \(\le 2\) mm. The success rate (SR) percentage is computed as: SR \(=\) (number of successful registrations/total number of trials) \(\cdot \) 100.

Table 2. Summary of failures in the image acquisition protocol of datasets 0–12 (notation is defined in Table 1).

Base-Case Scenario. In this case, a full compliance with the US acquisition protocol is achieved, which generates dataset 0 in Table 2. The region of interest (ROI) of the US scan excludes neighboring vertebrae (Fig. 3). Arbitrary known transformations \(\mathbf {Q}\) (translation components in \([-90, 90]\) mm, Euler angles in \([-180, 180]\) degrees) are generated randomly and are applied to \(\mathbf {U}\) to test the performance of the registration algorithm. The translation and rotation magnitudes of \(\mathbf {Q}\) are chosen to represent worst-case initial misalignments between \(\mathbf {U}\) and \(\mathbf {Y}\) of clinical scenarios. One hundred (100) runs with UKF alone and additional 100 runs with UKF plus PCA pre-processing are executed.

Incomplete US-Scans Scenario. In this case (datasets 1 to 12), the US scans lack one or more views of the US acquisition protocol. Table 2 specifies the fault (x \(=\) “missing” or roman number index of the defect as in Table 1). Grey rows indicate critically low geometric similarity between \(\mathbf {U}\) and \(\mathbf {Y}\) (e.g. Fig. 3). The scenario tests the robustness of the algorithm w.r.t. low quality datasets. Transformation matrices \(\mathbf {Q}\) are applied to \(\mathbf {U}\) as in the Base-Case. Each dataset was used in 20 trials.

Outliers Scenario. This case (datasets 13–15) has complete US scans but including portions of neighbouring vertebrae (outliers, Fig. 4). The ratio from the number of outlier points to the target vertebra number of points are 0.10, 0.15 and 0.20 for datasets 13, 14 and 15 respectively. Transformation matrices \(\mathbf {Q}\) are applied to \(\mathbf {U}\) as in the Base-Case. Each dataset was used in 40 trials.

Fig. 3.
figure 3

Partial US scan datasets (blue point clouds) and reference CT surface model. From left to right: datasets 0 (Base Case), 3, 5 and 8. (Color figure online)

Fig. 4.
figure 4

US scan datasets with outliers (blue point clouds) and reference CT surface model. From left to right: datasets 13, 14 and 15. (Color figure online)

3 Results

Base-Case Scenario. Registration with the UKF alone has a success rate of only 7 %, demonstrating that the Kalman filter alone is unable to handle large initial misalignments. Registration using our PCA pre-processing has a success rate of \(100\,\%\) (dataset 0 in Table 3), which shows the robustness given by the PCA-based algorithm. For this case, it is clear that the PCA-based method is capable of bringing \(\mathbf {U}\) and \(\mathbf {Y}\) into a coarse alignment within the convergence region of the UKF-based method. The quality of the alignment between \(\mathbf {Y}\) and \(\mathbf {T}^{0}\mathbf {U}\) (i.e. after the PCA-based registration) is central to the success of our method. The minimum misalignment between \(\mathbf {Y}\) and \(\mathbf {T}^{0}\mathbf {U}\) is limited by the deviations of the principal axes of \(\mathbf {U}\) w.r.t. the principal axes of \(\mathbf {Y}\) (Table 4), which depend on the geometrical similarity between \(\mathbf {Y}\) and \(\mathbf {U}\). Requirements for a high geometrical similarity are: 1. that the ROI defined in the CT data is in agreement with the expected depth of the US scan (i.e. including the vertebral processes and pedicles but leaving out most of the vertebral body), and 2. that the majority of anatomical features sampled in \(\mathbf {Y}\) are also included in \(\mathbf {U}\).

Table 3. Results of the evaluation of the registration algorithm.

Incomplete US Scans Scenario. Table 3 shows the registration results for datasets 1 to 12, which correspond to the incomplete US scans (Table 2). These results show that 8 out of the 12 cases obtained a full success rate (\(100\,\%\)) with all cases obtaining a mTRE below 1 mm. Datasets 3, 5, 8 and 9 obtained a success rate of \(0\,\%\). Table 4 shows that the 4 failed registration cases coincide with higher angular deviations between the principal components of \(\mathbf {Y}\) and \(\mathbf {U}\), which reflect low degree of similarity between \(\mathbf {Y}\) and \(\mathbf {U}\) and produce poor PCA-based registrations. Sine qua non conditions for registration are (a) the various scans sample conspicuous object features, and (b) salient object features appear in both scans, so unambiguous correspondence permits to span the embedding space \(\mathbb {R}^n\) (in this case, \(\mathbb {R}^3\)). In our algorithm, these preconditions dictate the existence of transverse and articular vertebrae processes in scans \(\mathbf {U}\) and \(\mathbf {Y}\). None of the successfully registered datasets has a deviation larger than \(20^\circ \), which seems to be a tolerable amount to be effectively corrected by the UKF-based algorithm.

Notice that because of the deterministic nature of the PCA, registration trials of the same dataset \(\mathbf {U}\) are always coarsely aligned in the same way to \(\mathbf {Y}\). Datasets \(\mathbf {U}\) that are poorly aligned by the PCA are likely to be inaccurately registered by the UKF-based method because the UKF requires small misalignments between \(\mathbf {Y}\) and \(\mathbf {T}^0\mathbf {U}\) in order to work properly.

Table 4. Deviation (degrees) of the principal axes of the US datasets w.r.t. the reference CT dataset.

Outliers Scenario. As in the Incomplete US Scans Scenario, if dataset \(\mathbf {U}\) contains too many points from adjacent vertebrae, deviations of its principal axes lead to poor PCA-based registrations. For datasets 13–15, the deviation of the principal axes remained in an adequate range and successful registrations were performed. However, mTRE increased compared to the previously studied scenarios. Notice that, if outlier points are included in \(\mathbf {u}^j\), the UKF-based registration estimates a suboptimal transformation \(\mathbf {T}^{j}\), reducing the efficiency and precision of the algorithm.

4 Conclusions

This article presents a two-stage registration algorithm for US and CT 3D point clouds of the vertebrae, which is based on a coarse registration using PCA followed by a fine registration using the Unscented Kalman filter. The PCA-based coarse registration is deterministic and can handle large misalignments between the datasets, as long as both datasets have an appropriate degree of geometrical similarity. In contrast to other UKF-based registration approaches, our algorithm produces an initial alignment between the datasets which is suitable to be improved by the UKF.

The algorithm evaluation was performed in the following scenarios: (a) when an US scan of reasonable quality of the vertebra is available (base-case), (b) when specific regions of the target vertebra are absent in the US scan, and (c) when regions belonging to adjacent vertebrae appear in the US scan. Results show that the proposed algorithm is able to register datasets with initial rotational misalignments within the range \([-180,180]\) degrees and translational offsets in the range \([-90,90]\) mm. In the base-case scenario, the registration based on the UKF alone presents a success rate of \(7\,\%\). By adding the PCA-based coarse pre-registration, the success rate improves to 100 %, which demonstrates the robustness added by the PCA-based algorithm. The mTRE of successful registrations are: 0.7646 mm in the base-case scenario, 0.8094 mm for incomplete datasets and 1.088 mm for datasets with outliers.