# A Termination Criterion for Probabilistic Point Clouds Registration
## 4 Results  
In Figure 2 we plotted the three termination criteria while aligning two point clouds from the Stanford Bunny dataset [27]. The starting transformation between the two clouds is a rotation of 45\({}^{\circ}\) around the vertical axis. On the x-axis we have the number of the iteration, while on the y-axis we can find--the number of successful steps of the \"inner\" optimization problem, the initial and final cost of the \"inner\" optimization problem, the cost drop (i.e., the difference between the two previous values), the Mean Squared Error w.r.t. the previous iteration, the Mean Squared Error w.r.t. the ground truth and the discrete derivatives of the last three variables. We plotted also the discrete derivatives because they clearly show when a variable is not changing anymore: when the derivative becomes zero, the value of a variable has stabilized. Figure 2: Plots of various termination criteria and their derivative for two point clouds from the Stanford Bunny dataset. We can see that both the cost drop and the MSE w.r.t. the previous iteration have a very similar trend to the MSE w.r.t. the ground truth. Most important, the three values stabilizes more or less at the same iteration. This is particularly obvious if we compare the discrete derivatives: they become almost zero more or less at the same time. Although the MSE w.r.t. to the ground truth keeps decreasing for a few iterations after the other two values stabilizes, its effect on the quality of the result is negligible. This becomes obvious looking at Figure 3, where we have two point clouds, one aligned using a predefined very large number of iterations, the second one using the cost drop as stopping criterion. We can seen that they overlap almost perfectly. The difference between the errors with respect to the ground truth of the two alignments is less than one tenth of the resolution of the point clouds, thus can be considered definitely negligible. Other experiments on the same datasets yielded similar results. Instead, the number of successful steps oscillates greatly and appears to be not correlated to the MSE w.r.t. the ground truth. For these reasons it was discarded. In Figures 4a,b we show a pair of point clouds from the Bremen Dataset [28], to which we applied, respectively, a small rotation and a small translation. The results obtained on these data are shown in Figures 5a,b. In these plots, and in the followings, we will not show the derivatives for space reasons. We can see that the cost drop stabilizes more or less when also the MSE w.r.t. the previous iteration stabilizes, that is, when the cloud has already been moved to the right solution (future adjustments are negligible compared to the resolution of the point cloud). Considering the results, there seems to be no strong reason to choose the MSE w.r.t. the previous iteration over the cost drop as termination criterion. However, it has to be considered that the MSE has to be specifically calculated after each iteration and is relatively computationally intensive, since the whole source point clouds has to be traversed. This is not a computationally expensive operation _per se_ but, on the other hand, the relative cost drop is very fast to compute. Indeed, while solving an optimization problem we already calculate the absolute cost drop, since it is used as termination criterion of the inner loop by the optimization algorithm. Thus, calculating the relative cost drop requires only few more operations--it comes practically for free. For this reason we have chosen to use the cost drop as termination criterion--it is very fast to compute and is as good as the Mean Squared Error. We performed experiments also with clouds that the PPCR algorithm was not able to align properly. The reason is that we wanted to discover whether the termination criteria were able to stop the algorithm early enough, so that computational time is not wasted.