## 2 Methods and Materials
### Non-Destructive Testing (NDT) Techniques
Key Point Verification in 2D Images: Each key point in the 2D image was checked to determine if it falls within the bounding box representing part of an object. If it does, this key point was associated with that object. 3. Grouping of Key Points Across Multiple Images: When the same key point was visible in multiple images or on different parts of the object, these key points were grouped together, creating a \"set\" of similar detections. 4. Estimation of 3D Locations: Once key points were grouped, their 3D spatial positions were analysed to estimate the location of each object. 5. Application of Mean Shift Clustering for Precision: To refine the estimated location of each object, mean shift clustering was applied. This technique identified areas with high concentrations of key points, indicating the most probable 3D location of the object. 6. Confirmation of Object Position through Maxima Identification: Areas where key points densely cluster (known as maxima) provide high confidence that an object is located within that specific 3D space. The researchers used frame-mAP and video-mAP metrics to evaluate the results quantitatively. The system detected existing fasteners with a frame-mAP of 92.1% and missing fasteners with a frame-mAP of 31%. At the video level, the method achieved an average precision of 86.4% for existing fasteners and 0% for missing fasteners. The low performance in detecting missing fasteners was primarily due to their small size, which the model was unable to detect, as well as the limited and inadequate dataset available for training the model. Particular attention should be given to the most commonly used open-source photogrammetric software solutions, including COLMAP, OpenMVG + OpenMVS, and Alice-Vision. While these solutions are generally reliable and robust, they may, in some cases, produce results that lack completeness and accuracy. In this context, [PERSON] et al. [68] conducted a comprehensive review and evaluation to compare these three open-source image-based 3D reconstruction pipelines, assessing their reliability and performance on large and extensive datasets. Table 4 compares the capabilities of the three 3D reconstruction pipelines: COLMAP, OpenMVG, and AliceVision. These tools follow similar steps in the 3D reconstruction process; however, each one has unique features. 1. Key Point Extraction: All three tools use the SIFT algorithm to detect key points in images. Additionally, AliceVision supports AKAZE, providing flexibility for different types of image features. 2. Key Point Matching: This step aligns similar points between images. COLMAP offers a variety of methods, including exhaustive, sequential, vocabulary tree, spatial matching, and a transitive option. OpenMVG uses brute force and approximate nearest neighbour (ANN) matching, while AliceVision relies on ANN and cascade hashing for faster matching. 3. Geometric Verification: All tools support verifying geometric relationships using homography estimation (using 4 points), relative pose estimation (using 5 points), and fundamental matrix estimation (using 7-8 points). AliceVision also includes an additional homography growing method for a more robust verification. 4. Incremental Bundle Adjustment: In the image resection and triangulation phase, COLMAP and OpenMVG both use P3P, DLT, and EPNP algorithms. AliceVision simplifies this step with just PnP and DLT, which are standard approaches for pose estimation and triangulation. 5. Global Bundle Adjustment: All three tools use the CERES solver to optimise the 3D model by adjusting camera poses and point positions. 6. Dense Point Cloud Generation: COLMAP and OpenMVG both use a patch-based stereo method to generate a dense point cloud. AliceVision, however, uses semi-global matching, a different approach that balances detail and processing speed. The study [68] primarily examined image orientation (SfM) and dense reconstruction (MVS) result using indicators like the number of successfully oriented images, reprojection error, and cloud-to-cloud (C2C) distance to ground truth data.