# Research on Rapid and Accurate 3D Reconstruction Algorithms Based on Multi-View Images
## 3 Materials and Methods
### Principles of the Enhanced Feature Matching Algorithm
#### 3.2.1 Scale-Invariant Feature Transform (SIFT) Feature Point Detection  
The objective of feature extraction focuses on identifying highly repeatable and distinguishable key points, followed by generating corresponding feature descriptors. High repeatability ensures that detected key points can be recognized across overlapping images. Meanwhile, high distinguishability guarantees the accurate matching of these key points in other overlapping images. This study utilizes the scale-invariant feature transform (SIFT) algorithm [19] for the feature extraction of multi-view images. The algorithm developed by [PERSON] employs a local feature detection method, searching for key points across various scale spaces and extracting each key point's position, scale, and rotation invariants. SIFT features demonstrate invariance to changes in scale, rotation, and brightness while maintaining robustness against variations in viewpoint, affine transformations, and noise.  
The SIFT algorithm introduces the concept of scale space for matching images across different scales. It constructs a Gaussian pyramid using a Gaussian blur function. To detect stable key points in the scale space, Gaussian difference kernels of varying scales are employed, convolving them with the image to generate the Difference of Gaussian (DOG) scale space. The scale space \(L(x,y,\sigma)\) of the input two-dimensional image \(I(x,y)\) can be represented as follows:  
\[L(x,y,\sigma)=G(x,y,\sigma)\times I(x,y) \tag{5}\]  
\(G(x,y,\sigma)\) represents the Gaussian filter function as follows:  
\[G(x,y,\sigma)=\frac{1}{2\pi\sigma^{2}}e^{-\frac{(x-m/2)^{2}+(y-m/2)^{2}}{2 \sigma^{2}}} \tag{6}\]  
Figure 3: Camera calibration schematic.  
In the formula above, \(\sigma\) denotes the scale coordinates, and \((x,y)\) signifies the pixel coordinate values of the image. Images of varying scales are obtained via a down-sampling method. The SIFT algorithm employs the Difference of the Gaussian method during the extremum detection process as follows:  
\[\begin{split} D(x,y,\sigma)&=(G(x,y,k\sigma)-G(x,y, \sigma))\times I(x,y)\\ &=L(x,y,k\sigma)-L(x,y,\sigma)\end{split} \tag{7}\]  
In the generated Gaussian difference pyramid, each sampling point is compared with 26 feature points in the same layer and in layers above and below. When a sampling point corresponds to either the maximum or minimum of these detection points, it qualifies as a feature point. The scale-space Difference of Gaussian (DOG) function undergoes curve fitting to enhance feature point stability and improve noise resistance. This process eliminates low-contrast feature points and unstable edge points, allowing for the precise localization of feature points in both position and scale. To ensure the uniqueness of each feature point's descriptor, a reference direction is assigned to each extremum point based on the image's local features. The formulas for calculating the gradient and direction of the feature point \((x,y)\) are as follows:  
\[m(x,y)=\sqrt{\left(L(x+1,y)-L(x-1,y)\right)^{2}+\left(L(x,y+1)-L(x,y-1)\right) ^{2}} \tag{8}\]  
\[\theta(x,y)=\tan^{-1}\left(\frac{L(x,y+1)-L(x,y-1)}{L(x+1,y)-L(x-1,y)}\right) \tag{9}\]