BnB optimization.** With (\[costrtim\]-\[costub\]), we have the BnB search for globally optimal rotation, of which the pseudo code is listed in Algorithm \[bnb1\]. Note that the main idea of BnB is to prune the solution space $\mathbb{A}$ when its upper bound $\overline{E}(\mathbb{A})$ is smaller than the current best estimates $E^*$. Therefore, if we have a fast solution to initialize a good $E^*$, most solution spaces can be pruned at early stage, significantly improving the search efficiency. To implement this idea, we use RANSAC [@jiao20192] to generate a rough initial $E^*$. In addition, we introduce a heuristics to balance the global optimality and the efficiency. The best $M$ estimated $\alpha$ during RANSAC is utilized to initialize $M$ subsets among $[-\pi,\pi]$. Each subset centers at each estimated $\alpha$ with a width $w$. When $w$ is large, global optimality is emphasized and vice versa. Another implementation trick is to store the respective inliers when evaluating (\[costlb\]) on each subset $\mathbb{A}$. When $\mathbb{A}$ is further divided into smaller subsets, only the stored inliers within $\mathbb{A}$ are evaluated, instead of all constraints, saving lots of computational cost. These techniques are all shown to accelerate the search in the experimental ablation study without drop of accuracy.

