$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
This section first proposes an FP matching method for tourism images combining SURF and an improved ORB algorithm to improve the robustness of FP matching. Then, the study proposes an AR tourism 3D registration technique based on improved HM to enhance the fusion effect between virtual information and the real world. The experiments were conducted using publicly available image datasets. Specifically, the Oxford Visual Geometry Group (VGG) dataset was utilized, which includes image sequences with variations in scale, blur, illumination, and viewpoint, and is widely adopted for evaluating feature matching and registration algorithms in computer vision. No ethical committee approval was required for the use of this publicly available dataset.
Combining SURF and an improved ORB algorithm for FP matching in tourism images
With the booming development of the tourism industry, the demand for AR technology in automated tourism services is increasing. ORB algorithm is an efficient FP detection and description algorithm. AR technology has been widely used19. However, in the process of FP matching tourism images, the existing ORB algorithm suffers from defects such as poor robustness to scale changes, low feature matching accuracy, and being time-consuming20. To increase the accuracy and robustness of matching, this study proposes a robust feature matching method integrating SURF with an improved ORB algorithm. To achieve scale invariance, the input image undergoes Gaussian filtering and pyramid construction. The SURF algorithm detects scale-invariant FPs, with orientations determined via wavelet responses. The feature quality is improved by refining the initial points using the Harris corner criterion and retaining the most distinctive ones. The Lucas-Kanade optical flow method tracks features across frames, and the RANSAC algorithm eliminates mismatched points. The methodological gap addressed here is not merely the sequential application of SURF and ORB, but a novel hybridization strategy designed to overcome the specific limitations of standard hybrids in complex tourism environments. Unlike conventional SURF-ORB approaches, which use SURF for detection and then apply an ORB descriptor directly, the present method introduces two critical enhancements. First, the orientation of each FP localized by SURF is recalculated using its wavelet response. This provides a more robust directional estimate than SURF alone using the standard Haar-wavelet-based method. Second, and more importantly, the initial SURF points are not used directly. Instead, they are rigorously refined using the Harris corner criterion to filter out non-distinctive points with low responses located in flat regions or along edges.
Image preprocessing
In the preprocessing stage of tourism images, the study extracts the features from grayscale images. To further characterize the local features of the image, the study uses the gradient component to identify and classify the image21. Equation (1) demonstrated its expression.
(1)
In Equation (1) I(x,y) denotes the pixel value of the image at coordinate (x,y).
denotes the gradient vector of the image at (x,y).
and
display the partial derivatives of the image in the x and y directions, respectively. T denotes the transpose of the gradient vector.
Feature point detection
After recognizing the image by gradient components, the study uses features from the accelerated segments test (FAST) in the ORB algorithm to detect the FPs of the image. Moreover, the FPs are violently matched using the binary robust independent elementary features (BRIEF) description algorithm22. The schematic of feature detection and matching of this algorithm is shown in Figure 1.

Figure 1: Schematic diagram of feature matching between the FAST algorithm feature detection and the BRIEF description algorithm. Please click here to view a larger version of this figure.
Figure 1 illustrates the feature detection process of the FAST and BRIEF algorithms. Figure 1A is a schematic diagram of feature detection using the FAST algorithm. A 16 pixel circular template is used to compare brightness around the central pixel for rapid detection of corner features in the image. Figure 1B is a schematic diagram of feature matching in the BRIEF algorithm. By selecting several pairs of pixels around the feature points for grayscale comparison, binary descriptors are generated, and brute force matching is used to achieve the correspondence of feature points between two images. The enhancement involves the initial utilization of the Gaussian filtering method, which serves to smooth the image and mitigate high-frequency noise. Subsequently, the down-sampling method is employed to reduce the spatial resolution of the image, thereby reducing the computational complexity while preserving the image's primary features. The study employs an image pyramid construction method, leveraging the aforementioned two techniques to ensure that image FPs exhibit scale-invariance properties23. The expression for smoothing the image by a low-pass Gaussian filter is shown in Equation (2).
(2)
In Equation (2), ge(x,y) denotes the Gaussian filter function. e is the standard deviation (SD) of the Gaussian function. exp denotes the exponential function. The image pyramid constructed by Gaussian filtering is shown schematically in Figure 2.

Figure 2: Schematic diagram of the image pyramid constructed by Gaussian filtering. Please click here to view a larger version of this figure.
Figure 2 shows the image pyramid structure, where multiple images of lower resolution are gradually generated by Gaussian filtering and downsampling. Among them, the Gaussian filter reduces the high-frequency noise in the image by blurring it via a convolution operation. As a visual checkpoint during this preprocessing stage, the generated image pyramid can be displayed. It should be noted that each level of the pyramid presents a progressively lower resolution of the original image. There is a noticeable increase in blurriness and a reduction in fine details due to the applied Gaussian filtering and downsampling. To enhance the efficacy of identifying the FPs in an image, the study employs a SURF algorithm for localizing these FPs in the image. This method involves quantifying the surrounding region of the FP and leveraging the wavelet response to ascertain the direction of the FP. Due to the existence of duplicated and invalid FPs extracted by SURF, their excessive number will reduce the recognition speed of target image (TI) features. Therefore, the study utilizes the Harris angle point detection algorithm to identify the optimal image FPs24. Equation (3) displays the algorithm's angular response value.
(3)
In Equation (3), H denotes the Harris matrix. u(x,y) denotes the weight function of the window. Ix and Iy denote the size of the gray value (GV) of the pixel point. A denotes the response value of the Harris angle. det H and traceH denote the determinant and trace of the Harris matrix, respectively. k denotes the coefficient value. The schematic of the direction of the FPs selected by the SURF algorithm and the sliding window of the Harris angle detection algorithm are shown in Figure 3.

Figure 3: Schematic diagram of SURF algorithm, FP selection, and sliding window for the Harris corner detection algorithm. Please click here to view a larger version of this figure.
Figure 3 shows the composition of the SURF algorithm for detecting FPs in an image. Figure 3A shows the schematic diagram of feature point direction selection in the SURF algorithm. By calculating the main direction of Haar wavelet response in the feature point neighborhood, the rotation invariant direction of the feature point is determined, usually represented intuitively by arrows or directional line segments. Figure 3B is a schematic diagram of the Harris corner detection algorithm's sliding window, showing the movement process of the window within the image area. Corner points are detected by calculating the grayscale changes of pixels within the window, and areas with high response values are identified as corner points.
Feature matching
Subsequent to detecting image FPs, the study utilizes the LK OF method to track the detected image FPs. This method calculates the motion between neighboring image frames by tracking the movement of FPs in the image to achieve FP matching in the video sequence. The LK OF method needs to satisfy the assumptions of constant pixel GV, small motion, and region motion consistency when calculating the motion between adjacent image frames25. The Lucas-Kanade method is strategically adopted considering its computational efficiency, which is crucial for real-time AR tourism applications. Its assumptions are mitigated within the specific context. The high frame rate of video capture generally ensures small inter-frame displacements, which satisfies the requirement of small motion. While absolute brightness constancy is ideal, the short tracking window between consecutive frames minimizes severe violations. Most importantly, the subsequent RANSAC algorithm robustly handles potential tracking errors arising from assumption violations by filtering outliers. Thus, LK serves as an efficient initial tracker whose output is rigorously validated, making it suitable for a real-time system, in which balancing speed and robustness is essential. According to the assumption of constant pixel GV, the expression is shown in Equation (4).
(4)
In Equation (4), I(x,y,t) denotes the pixel GV of the image at position (x,y) at the moment t . Ix and Ix denote the displacement of the pixel in the x and y directions, respectively. i and j denote the OF components of the pixel point. Ix, Iy, and It denote the difference of the image in the x, y and t directions, respectively. The assumption of regional motion consistency is calculated in Equation (5).
(5)
In Equation (5), Itb denotes the partial derivative of the b th pixel point in the domain in the time direction t . v x v denotes the size of the selected domain area. b denotes all pixel points within the domain. In conclusion, the present study employs the BRIEF descriptor to match the tracked FPs and the RANSAC algorithm to reject the FPs that are mistracked by the ORB. This combination of methods serves to enhance the robustness of feature matching26. Figure 4 exhibits the schematic diagram of the LK OF method.

Figure 4: Schematic diagram of the LK OF method. Please click here to view a larger version of this figure.
Figure 4 shows the implementation process of LK streaming optical hair, which uses an iterative optimization method for FP displacement between adjacent frames. For qualitative validation of the feature matching algorithm, the matched FPs between the template and test images can be visually overlaid. Correctly matched point pairs are typically connected by green lines or marked with green indicators. Conversely, the RANSAC algorithm can display outliers with red markers. This provides an immediate visual assessment of matching robustness and accuracy before quantitative analysis. The study employs the RANSAC algorithm to compute the HM of the corresponding FPs in the image, thereby eliminating those that are not correctly matched. The FPs that are accurately matched are then retained. In this case, the HM and the scale parameter expression of the RANSAC algorithm are shown in Equation (6).
(6)
In Equation (6), M denotes the HM. m denotes the element in the matrix M. S denotes the scale parameter. (x,y) and (x',y') denote the FP locations of the template image and the test image, respectively. Subsequent to acquiring the coordinates of the FPs of the test image, the study undertakes a comparative analysis of the distances between them and the matched FPs. Equation (7) illustrates that it also updates the number of iterations and determines the number of interior points.
E = log(1 - c)/log(1 - ηn) (7)
In Equation (7), E is the iterations. c denotes the confidence level. η denotes the proportion of interior points. n is the quantity of samples. Then the expression for the SD of the iteration E is shown in Equation (8).
(8)
In Equation (8), Sd(E) denotes the SD. The improvement of the ORB algorithm described above is shown to provide a high-quality feature matching basis for the subsequent 3D registration technology. This improvement shows higher accuracy and robustness in complex scenes. Some of these scenes include scale change, light change, and occlusion.
The pseudocode for improved ORB with SURF and enhanced homography for AR tourism is as follows.
Algorithm 1: Improved ORB with SURF and Enhanced Homography for AR Tourism
Input: Tourism image sequence I, 3D virtual model M
Output: Rendered AR scene with virtual object registered
// Step 1: Image Preprocessing
1: I_gray ← ConvertToGrayscale(I)
2: I_smooth ← GaussianBlur(I_gray, kernel=5×5, σ=1.2)
3: Pyramid ← BuildImagePyramid(I_smooth, levels=4, scale=1.2)
// Step 2: Feature Point Detection
4: keypoints_SURF ← SURF_Detect(Pyramid, HessianThreshold=1000)
5: for each kp in keypoints_SURF do
6: orientation ← ComputeWaveletResponse(kp)
7: end for
8: keypoints_Harris ← HarrisCornerFilter(keypoints_SURF, k=0.04)
9: descriptors ← ImprovedORB_Describe(keypoints_Harris)
// Step 3: Feature Matching
10: keypoints_tracked ← LucasKanadeOpticalFlow(keypoints_Harris, window=15×15)
11: matches ← BruteForceMatcher(descriptors)
12: inliers, H ← RANSAC(matches, maxIterations=2000, reprojThreshold=3.0)
// Step 4: 3D Registration with Improved Homography
13: H_improved ← ComputeImprovedHomography(inliers, camera_intrinsics)
14: R, t ← DecomposeHomography(H_improved)
15: pose ← ComposeCameraPose(R, t)// Step 5: AR Rendering
16: virtual_object ← Load3DModel(M)
17: scene_rendered ← OpenGL_Render(virtual_object, pose, background=I)
18: return scene_rendered
AR tourism 3D registration technique based on improved HM
After accurately matching the features of tourism images through the FP matching method, it needs to be further applied to AR technology. 3D registration technology is a foundational technology for the realization of AR systems. It calculates the camera's pose information in the real world through the projection of a target tourism image. This enables accurate matching and fusion of virtual objects and real scenes27. The HM can map the virtual object to the real world from the user's perspective, which enhances the fusion effect between virtual information and the real world. Furthermore, it can solve the problem of registering the virtual reality when the logo is partially obscured. However, the registration efficiency of HM in the actual 3D registration technology is low, and it leads to virtual object misalignment, which leads to the instability of virtual objects28. Therefore, this study proposes a 3D registration technique based on an improved HM. Using accurate FP pairs from Phase 1, enhanced HM is computed via a virtual-to-real object back-calculation method that incorporates camera intrinsics. This method effectively addresses the low registration efficiency and virtual object misalignment of traditional methods in dynamic scenes. The matrix is decomposed into a rotation matrix and a translation vector to define the camera pose. The OpenGL rendering engine precisely projects 3D virtual models into the live video stream based on pose parameters. Texture mapping and lighting models ensure physically consistent fusion.
3D registration and visualization
For the realization of the 3D registration technique, the study first needs to build a pinhole imaging model to map the 3D real world to a 2D image. The expression of this model is displayed in Equation (9).
(9)
In Equation (9), X , Y , and O denote the three axes of the camera CS. (x,y,f) denotes the coordinate vector. f denotes the focal length (FL). λ denotes the scale factor. As demonstrated in Figure 5, the current study examines the imaging properties of the pinhole camera by using the transformation relationship between the image CS and the camera CS.

Figure 5: Pinhole imaging model and the relationship between spatial points and planar projection points. Please click here to view a larger version of this figure.
Figure 5 shows the basic structure of pinhole imaging. Figure 5A is a schematic diagram of the pinhole imaging model, which describes the basic geometric structure of projecting a three-dimensional scene onto a two-dimensional imaging plane through a small hole at the center of the camera, reflecting the principles of ray propagation and perspective projection. Figure 5B further illustrates the process of projecting spatial points onto the corresponding points on the imaging plane through the camera center, clarifying the proportional relationship between focal length, image point coordinates, and object point coordinates. After constructing the pinhole imaging model, the study further employs the HM to construct the relationship mapping between the template and the real scene images under camera capture. It is assumed that the feature matching points of two images I1 and I2 are in the same plane. The plane needs to satisfy the expression shown in Equation (10).
NZ P + d = 0 (10)
In Equation (10), P denotes the plane. N denotes the normal vector of the plane P. d denotes the distance from the plane P to the origin. Z denotes the translation vector. For rotations and translations, the study uses the singular value decomposition method for their extraction. The expression is shown in Equation (11)29.
(11)
In Equation (11), p1 and p2 denote the pixel coordinates of the feature matching point pairs of shadows in images I1 and I2 , respectively. r1 and r2 denote the scaling factors of the pixel points in images I1 and I2 , respectively. K denotes the internal reference matrix of the camera. R denotes the rotation matrix. The HM has high computational complexity and is prone to the problem of FP matching error. Therefore, the study improves it by using the virtual and real object inverse calculation method30. The improved HM expression is displayed in Equation (12).
(12)
In Equation (12), M' denotes the improved HM. fx and fy denote the FLs of the camera along the X and Y -axis, respectively. u and v denote the principal point coordinates. γ denotes the skew parameter. The physical transformation of the method is shown in Equation (13).
(13)
In Equation (13), T' denotes the physical transformation matrix. tx, ty and to denote the rotation components of the three coordinate axes. [R|Z] denotes the transformation matrix of the world and camera CS. In the implementation of AR technology, the expression of the mapping between the template and the image of the real traveling scene is shown in Equation (14).
(14)
In Equation (14), Is and Id denote the points on the reference and TIs, respectively. The study further calculates the alignment accuracy of the improved HM to investigate the alignment effectiveness of the method, as expressed in Equation (15).
(15)
In Equation (15), Pre(M') denotes the alignment accuracy of the improved HM. (xa,ya,oa) denotes the actual FPs. (xb,yb,ob) denotes the aligned FPs. n denotes the number of groups of matched points. Figure 6 displays the mapping between the schematic diagram and the photos of the upgraded HM.

Figure 6: Mapping relationship of images and the schematic diagram of the improved HM. Please click here to view a larger version of this figure.
As illustrated in Figure 6, there is a clear correspondence between the template image and the TI. Following the application of the improved HM, a key visual checkpoint involves the warping and alignment of the template image onto the target scene image. The edges of the projected template should closely align with the corresponding features in the TI. During the final AR rendering, visually inspect the virtual 3D model to ensure it is persistently and accurately anchored to the correct position and orientation in the real-world scene. There should be no noticeable jitter or misalignment as the camera perspective changes.
The study demonstrates the mapping of the template image through an enhanced but-for influence matrix. To achieve real-time interaction between virtual objects and actual tourism sceneries, the study uses the OpenGL technology to render 3D models for the construction of the AR tourism system. The technique first sets up the OpenGL context, loads the 3D model of the virtual tourist elements, and computes with texture mapping and lighting. Then, the real-time video stream captured by the camera is used as a background to provide a reference for rendering virtual objects. Virtual objects are accurately superimposed into the real world using an HM, which renders the virtual objects in the correct position and orientation to blend them with the real-world scene. In the AR tourism system, in which the video is captured through the OpenCV library for the real-time video of the tour31. Image processing uses an optimized ORB algorithm to identify and match features in video frames. In the 3D registration module, the study uses an improved HM to fuse virtual and reality. The final output and interaction are displayed through OpenGL technology. The implementation process of AR tour technology is illustrated in Figure 7, which demonstrates the overall implementation process of AR tour technology. Figure 7 presents the system implementation flowchart of the AR tourism technology. After system startup, the real-time video stream is first captured via the camera, from which the target image is extracted. The process then enters the feature processing stage, sequentially performing feature point extraction and description to construct image features. If the feature point matching is successful, the system proceeds to the 3D tracking registration phase, where camera pose parameters are calculated. This is combined with 3D models from the virtual material library to achieve virtual-real fusion, and the final fused AR effect is displayed to the user in real-time. If the matching fails, the RANSAC algorithm is employed to eliminate mismatched points, and the feature processing stage is re-entered to ensure system stability and robustness. The entire process forms a complete closed loop from image acquisition and feature processing to 3D registration, virtual-real fusion, and interactive display, illustrating the technical pathway for AR tourism systems to achieve real-time, stable virtual-real fusion in dynamic scenes.

Figure 7: Schematic diagram of the implementation process of AR tourism technology. Please click here to view a larger version of this figure.
Experimental setup and materials
To ensure the reproducibility of the experiments, the hardware specifications, software environment, and datasets used in this study are explicitly listed in Table 1.
| Category | Item | Specification / Version |
| Hardware | Camera | Logitech C920 HD Pro Webcam |
| Computer Processor | AMD Ryzen 7 3700X 8-Core Processor |
| Computer Memory | 32 GB RAM |
| Operating System | Windows 10 (64-bit) |
| Software and Libraries | Programming Language | C++ |
| Development Environment | Microsoft Visual Studio 2019 |
| Computer Vision Library | OpenCV 4.5.1 |
| Graphics API | OpenGL 4.6 |
| Simulation Platform | Visual Studio Simulation Tools |
| Dataset | Primary Dataset | Oxford Dataset |
Table 1: Experimental setup: hardware, software, and dataset specifications.
In OpenCV, the Gaussian blur is applied using the GaussianBlur() function. The image pyramid is constructed using buildPyramid(). The SURF detector is initialized with SURF.create(), setting the Hessian threshold to 400. The Harris corner response is computed using cornerHarris(), and non-maximum suppression is subsequently applied to filter the keypoints. The LK optical flow is computed using the calcOpticalFlowPyrLK() function, which implements the pyramidal Lucas-Kanade method. The findHomography() function is utilized for homography estimation, with the method flag set to RANSAC to leverage the specified reprojection threshold. The resulting HM is then used with perspectiveTransform() to validate inlier points. In the OpenGL rendering pipeline, the HM is converted to a camera pose and set using glLoadMatrix(). The 3D virtual models are loaded as .obj files and rendered using standard OpenGL transformation commands (glTranslate, glRotate). The real-time video feed from OpenCV is passed to OpenGL as a texture using glTexImage2D() to achieve the final AR overlay. The key parameters for the algorithms used in this study are explicitly defined in Table 2.
| Algorithm / Component | Parameter | Value |
| Gaussian Filter | Kernel size | 5 × 5 pixels |
| Standard deviation | 1.2 |
| LK Optical Flow | Window size | 15 × 15 pixels |
| RANSAC | Maximum iterations | 2000 |
| Reprojection threshold | 3.0 pixels |
| ORB feature detector | Maximum number of features | 1000 |
| Scale factor (Pyramid) | 1.2 |
| Number of pyramid levels | 4 |
| SURF feature detector | Hessian threshold | 1000 |
| Harris corner detector | Aperture size | 3 |
| k-value | 0.04 |
Table 2: Key algorithm parameters for reproducibility.