We start to test our GJSD estimator with synthetic data for both single model and multi-model estimation, and then demonstrate the application of our methods in a real robotic task, indoor plane estimation. All the results of synthetic data processing are obtained on an Intel Quad Core 2.4 GHz CPU, 4 GB RAM and the real robotic task is operated on an Intel Mobile Core i7 2720QM CPU, 8 GB RAM laptop connected with a Microsoft Kinect.
Easy case: one model estimation
We first compare the speed of GJSD, RANSAC [1], MDPE [6], QMDPE [6] and pbM [7] to demonstrate the time complexity. Therefore, in this experiment only a single model will be estimated from a synthetic dataset. Note that we do not consider the RHA [8], J-linkage [15] and KF [13] methods in this experiment because all of them are originally designed for estimating multiple models. Note that each line in this experiment contains 100 inliers corrupted with Gaussian noise of standard deviation \( \sigma =0.02 \), which is high relative to the range of the whole dataset (i.e. [0 1] [0 1]). The outlier rate considers both gross outliers as well as pseudo outliers which actually are inliers for the other models. The times in the test do not take the random sampling procedure into account because all methods apply the same random sampling with replication and have same number (1,000) of sampling. It costs 0.174(s) in average (measured using Matlab clock function). All the methods are coded in Matlab except for pbM which is coded in C++. Every method is tested 20 times and average processing time is recorded. From Table 1, we notice that GJSD is slower than RANSAC but significantly faster than kernel-based methods since we do not run any kernel smoothing or residual sorting algorithms which have high computational cost.
Table 1 The comparison of time complexity for various methods (all times in seconds)
The comparison of breakdown points among various methods is also interesting. From Fig. 4 we can observe that, given the correct scale of inlier error, RANSAC can provide correct estimation results and begins to break down at approximate 92 % outliers. Meanwhile, GJSD almost has the same breakdown points without the requirement of inlier scale. LMedS can only tolerate approximate 50 % outliers because it does not truncate the loss function. We also notice that the performance of RANSAC drops quickly when the outlier rate is more than 92 %, in contrast, even at relatively high outlier rate (\(>\)95 % ), GJSD is still, loosely speaking, able to correctly estimate 80 % of the models out of 20 times.
Although RANSAC and GJSD start to break down at the same place, the incorrect estimations after the breakdown points of these two methods are significantly different as displayed in Fig. 5c. We see that RANSAC obtains completely wrong estimation of the model and meanwhile GJSD gives an incorrect estimation closely and parallel to the true model. This “slightly” wrong estimation result somehow is still useful in many practical applications and might be refined using some explicit restrictions (e.g. a plane estimation result can be refined with recognized objects which are supported by the plane).
Challenging case: multi-model with high outlier rate
In this section, all the input data are contaminated with more than 90 % outliers and relatively high inlier noise (\( \sigma =0.01 \)). Figure 6 illustrates the convergence of lbest PSO in different line fitting problems.
For each line estimation result, we define \( \omega \!=\!\{\omega _1, \ldots , \omega _Q\}, \tilde{\omega }=\{\tilde{\omega }_1, \ldots , \tilde{\omega }_{Q^{\prime }}\} \), respectively, to be the true and estimated lines’ parameters, where \( \Vert \omega _q \Vert =1\) and \( \Vert \tilde{\omega }_{q^{\prime }} \Vert =1\). Thus the error metrics between the estimated and true model is calculated as \(\varepsilon =\Vert \omega _q - \tilde{\omega }_{q^{\prime }}\Vert /\sqrt{2}\). Also note that this error is measured only when the numbers of the model are correctly estimated, in other words, the incorrect estimation of the number of structures is not taken into account since we believe that this type of the error makes the system to produce the meaningless results thus the error measurement in this case is not necessary anymore. To measure the error of multiple line estimation results, the average error of \(\bar{\varepsilon }\) is computed as,
$$\begin{aligned} \begin{aligned}&\bar{\varepsilon }= \sum \limits _{i=1}^{Q}\varepsilon _i/Q \\&\varepsilon _i=\Vert \omega _i - \tilde{\omega }_{i^{\prime }}\Vert /\sqrt{2} \end{aligned} \end{aligned}$$
(6)
Results of multi-model fitting for the presented scheme in comparison to the state of th art Kernel Fitting (KF) [13] and J-Linkage [15] are shown in Figs. 7, 8.
Figure 7 shows the results of line fitting using KF, J-Linkage and the proposed approach. The results have been obtained for estimating an inclined line and a ‘W’ shape case (4 models); the outlier rates are 91.7 and 93.7 % for the single and multi-model cases. The inlier noise rate is 0.02. For KF the parameter step size \( h \) is fixed at 100.
Figure 8 compares the convergence rate of the presented PSO-based framework with the Kernel fitting method [13]. Analogous to Fig. 7, results have been presented for regression of a single model (inclined line) as well as for a multiple model scenario (shape of W in Fig. 9). It can be seen that the time taken for convergence is much higher for the KF in relation to the proposed framework. It was also been seen that while the time for convergence grows exponentially with the outlier rate in the case of the KF, it grows much slower for the PSO framework.
Discussion
Our experimental results demonstrate the superior performance in terms of better accuracy and stability under various challenging configurations (high outlier rats and inlier noise scale), whilst no prior information such as number of the models, inlier noise scale and outlier rate has been provided before hand. The main reason of this superiority of our method is that the models we attempt to estimate are not determined by the sampling from the minimal set of inliers but by the particles traversing in the solution parametric space. The advantage of this setup can be considered in two different points of the views, (1) even with no initial particles are generated from the minimal set of inliers (very often in high outlier rate case), the particles which are close to the true models in the parametric space will also hold the relatively better fitness value, thereby attracting the neighbouring particles to approach themselves and search this area together. This is the main reason that the proposed method provides the superior performance when the outlier rate is high. (2) When true models have been discovered by particles either during the initial step or after several traversing, these models with better fitness value could attract the neighbouring particles to approach themselves and search the nearby area together, thus the more accurate models might be discovered by the traversing of these particles in this niche. Usually, these more accurate models can only be determined by the inliers that are less disturbed due to the inlier noise. If only sampling of inliers can generate the correct models (this is probably most case in the aforementioned algorithms such as RANSAC family and J-linkage), obviously the chances of finding these models are much less than the proposed method which attempts to search the nearby area of the approximately correct models. This can explain why our method has the better accuracy in the case of the inlier noise scale increasing.
Influence of non-uniform outliers
As we mentioned in Sect. 2, we assume a uniform distribution of all the data points to produce the so-called ideal uniform dataset and compare the two residual distributions calculated based on this dataset and the real experimental dataset. Although in practice the dense point cloud and its bounding contour can be obtained with diverse de-noising and delineation techniques, investigation of the performance of our method under the condition of non-uniform outliers also presents an interesting avenue as addressed here.
To this end, non-uniform outliers have been generated by constraining the space of the outlier data points and residual distributions estimated using such a distribution. The effect of this constriction of the space is to shift the center of the ideal distribution along with a minimal change in the shape of the distribution. As it is shown in Fig. 10, even with the non-uniformly distributed outliers, the correct hypotheses can still generate reasonably higher GJSD value than that generated by the wrong hypotheses, which indicates that the differences between residual distributions of the correct hypothesis with the ideal uniform dataset and with the real dataset, is greater than the differences generated by the wrong hypothesis. As expected, it can be seen that these differences are not as obvious as in the case of uniformly distributed outliers. This effect is especially noticeable when the space of the wrong hypothesis is mutually disjoint to the restricted space of the outlier distribution [sub-figure (c) in Fig. 10]. However, since all hypotheses are generated using random sampling of the real data points (including outliers), the likelihood of generation of such hypotheses is not high. In summary, it can be seen that even with non-uniform distribution of outliers the GJSD-based hypothesis validation metric successfully detects the correct hypothesis.
Real data test
We mount a Microsoft Kinect camera on a Pioneer P3-DX mobile robot (1.2 m height) to acquire the RGB-D data. One challenging scene, which is typical for robotic search tasks, is demonstrated in Fig. 11. The robust regression task for our robot vision system is the estimation of multiple planes in the current scene in limited time.
Figure 11 shows multi-model plane fitting using the lbest PSO framework and GJSD estimator on real data. The point cloud captured from RGB-D sensor is firstly down-sampled to 2,000 for decreasing the computational complexity. Then the multiple plane models are estimated using the proposed method, wherein the ideal residual distribution is generated using the normally distributed points in the bounding box of point cloud. All the points are back-projected to one of the estimated plane which is the closest to the specific point. The estimated planes without significant number of projected inliers are then removed from the final result. The detected planes are represented in terms of different colors for the constituent data points.