# Quality Analysis of 3D Point Cloud Using Low-Cost Spherical Camera for Underpass Mapping
## 2 Materials and Methods
### 3D Reconstruction  
#### 2.5.1 SFM-MVS  
As mentioned in Section 2.4.2, in this study, the main software used for 3D reconstruction and point cloud generation from the optical camera images was Agisoft Metashape.v2.1. The reconstruction process was conducted on a specific PC (GPU device: NVIDIA GeForce 930 Mx--3 computing units @901 MHz, 2047 MB, CUDA, Mainz, Germany). The first step was to import the processed images into the software. As the second step, the relative orientation was obtained through the complete SFM-MVS workflow described in [1]. Key points and tie points were consequently identified on every image and matched between the overlapping parts of the images. The camera locations were estimated and finally the sparse 3D point cloud (with the alignment settings shown in Table 5) was successfully generated. The software used the Brown camera calibration model introduced in [7] with all eleven fisheye camera parameters during the alignment process. The alignment was set to high-accuracy mode, in which the software worked with the original sizes of the \begin{table}
\begin{tabular}{c c c c c c} \hline \hline \multirow{2}{*}{**Calibration Parameters**} & \multirow{2}{*}{\begin{tabular}{c} **X3** \\ **(Front Lens)** \\ \end{tabular} } & \multirow{2}{*}{\begin{tabular}{c} **X3** \\ **(Rear Lens)** \\ \end{tabular} } & \multirow{2}{*}{\begin{tabular}{c} **X3** \\ **(Front Lens)** \\ \end{tabular} } & \multirow{2}{*}{\
\begin{tabular}{c} **X2** \\ **(Rear Lens)** \\ \end{tabular} } & \multirow{2}{*}{
\begin{tabular}{c} **D800** \\ **(Rear Lens)** \\ \end{tabular} } \\ \hline F (Focal length, pix) & \(1554.8544\) & \(1555.5011\) & \(848.4453\) & \(848.1613\) & \(2150.0099\) \\ \hline cx (principal point offset in X axis, pix) & \(-2.4490\) & \(-1.0948\) & \(-8.2083\) & \(-0.4822\) & \(-14.8078\) \\ \hline cy (principal point offset in Y axis, pix) & \(20.4959\) & \(24.6478\) & \(3.7923\) & \(-0.2146\) & \(-3.1103\) \\ \hline K1 (radial distortion, pix) & \(0.0726\) & \(0.0893\) & \(0.0515\) & \(0.0465\) & \(-0.0357\) \\ \hline K2 (radial distortion, pix) & \(0.0017\) & \(-0.0424\) & \(-0.0103\) & \(0.0018\) & \(-0.0124\) \\ \hline K3 (radial distortion, pix) & \(-0.0246\) & \(0.0230\) & \(0.0052\) & \(-0.0058\) & \(0.0316\) \\ \hline K4 (radial distortion, pix) & \(0.0107\) & \(-0.0067\) & \(-0.0042\) & \(-0.0003\) & \(-0.0236\) \\ \hline B1 (non-orthogonality, pix) & \(-0.5308\) & \(-0.7564\) & \(-0.8797\) & \(-0.8279\) & \(3.2830\) \\ \hline B2 (non-orthogonality, pix) & \(1.2574\) & \(1.7960\) & \(0.0991\) & \(0.0945\) & \(0\) \\ \hline P1 (tangential distortion, pix) & \(-0.0007\) & \(-0.0007\) & \(4.8196\times 10^{-5}\) & \(-0.0002\) & \(-0.0001\) \\ \hline P2 (tangential distortion, pix) & \(-0.0007\) & \(-0.0016\) & \(-0.0005\) & \(-0.0006\) & \(-0.0010\) \\ \hline \hline \end{tabular}
\end{table} 
Table 4: The calibration parameters for spherical and DSLR sensor units are defined in pixels for all values. Figure 7: The process of chessboard camera calibration involves the use of datasets (**a**) and camera orientation (**b**), which are repeated for both the Insta360 One X3 and DSLR cameras (fisheye and normal lenses). photos [7]. The imported calibrated parameters from two different solutions were used to determine the optimal relative orientation results. The first solution was to create a project file (called \"chunk\" in the software) corresponding to each lens and calibration file. Therefore, the 3D point cloud from each lens's images was reconstructed separately. After the dense matching step, it was possible to join the chunks (related to the front-side images and rear-side images) together based on the ground control points and the camera position (in fact, every corresponding front-side image and rear-side image was captured in the same position). The second solution, however, was to import all the front-side and rear-side images of each camera in a single chunk and use the Metashape splitting camera option to join each image to the corresponding calibration file.