## 2 Materials and Methods
### The IMMS Analytical Measurement Principle
From the methodological point of view, the fundamental step is to make an appropriate subdivision of the whole point cloud into a lot of (\(n\)) \"virtual single static scans\", with each one considering a certain TLS localization. Without doubt, such clouds have geometrical discrepancies due to the above-described errors: nevertheless, these are minimized by analytical procedures generally based on the well-known iterative closest point (ICP) algorithm, that is, by suitably reducing the distance between ideal surfaces from these \(n\) clouds. A noteworthy SLAM/ICP procedure was proposed for robot relocalization in 2007 by [PERSON] et al. [PERSON] et al. (2007): in this article, the expression \"6D SLAM\", or the more general \"6 DOF SLAM\" reported in others, refers to the six degrees of freedom of the instantaneous TLS position and attitude. These values, also called \"6D pose\", expressed in Equation (1) as position \(\mathbf{r}_{tls}^{gcs}\), and rotation angles embedded in \(\mathbf{R}_{tls}^{gcs}\), from now on will be rewritten as \(\mathbf{t}\) and \(\mathbf{R}\) as in [PERSON] et al. (2007). The procedure consists of the next steps:  
1. Rough estimation of the six TLS degrees of freedom for any epoch, from the odometry data: this is always possible for a robot, while for an IMMS these estimations have to be made from INS data. 2. Heuristic computations based on octree representation of the \(n\) scans and estimation of the best translation and rotation matching the couples of octrees, so as to improve the 6D poses given in step 1. 3. Fine registration using the ICP approach for all \(n\) scans and not for only two scans as is customary; this is the crucial step in the procedure, in which the following cost (error) function has to be minimized ([PERSON], 1998; 5): \[E=\sum_{j\to k}\sum_{i}\bigl{|}\mathbf{R}_{j}\mathbf{m}_{i}+\mathbf{t}_{j}-(\mathbf{R}_{k}\mathbf{ m}_{i}+\mathbf{t}_{k})\bigr{|}^{2}\] (2) in order to enable the calculation of the best \(\mathbf{t}_{j(k)}\) and \(\mathbf{R}_{j(k)}\) values for each scan on the base of tuples \(\mathbf{m}_{j},\ \mathbf{m}_{k}\) of corresponding points in an adequate overlapping area. 4. If applicable, the closure of the loop of scans enables the distribution of the incremental residual error accumulated with the subsequent scans, that is, the first and last cloud do not correspond exactly: the computed \(\mathbf{\Delta t}\) and \(\mathbf{\Delta R}\) are distributed with a method similar to that used in the adjustment of closed polygonals. 5. Final refinement of the whole model using a global relaxation method called \"simultaneous matching\", which enables the residual alignment error to be diffused equally among the scans. Of course, the systems on the market can implement SLAM/ICP procedures which may be different from the ones reported above, and the efficiency and robustness of the specific algorithm implemented in the processing software are nevertheless of great importance. On the other hand, although the positioning errors are strongly reduced by the SLAM/ICP procedures, recalling the application ([PERSON] et al., 2007) of the error propagation law from Equation (1), the accuracy of the final IMMS cloud definitely depends on the instrumental accuracy, mainly of the TLS distance meter, but also of the INS accelerometers/gyroscopes and the GNSS receiver, especially when using low-cost sensors. By taking into account both software and hardware configurations, different IMMSs with similar sensors can deliver very dissimilar results in terms of correctness and accuracy. Furthermore, even a trivial operational aspect such as the way the system is moved (slowly or quickly, above all when turned) influences the results: for instance, if the walking speed is halved, the cloud resolution, namely the points available for the ICP-based correction, is more or less doubled.