Rapid scene matching and positioning method for unmanned aerial vehicle in large-range scene

By generating feature descriptor sub-database offline and introducing secondary scene adaptation areas, combined with visual location recognition algorithm, the problem of low calculation speed and insufficient robustness of the drone scene matching method in large-scale scenarios is solved, and more efficient and accurate positioning navigation.

CN119251455AActive Publication Date: 2025-01-03NANJING UNIV OF AERONAUTICS & ASTRONAUTICS

Patent Information

Application Number
CN202411047988.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-07-31
Publication Date
2025-01-03
Estimated Expiration
2044-07-31

AI Technical Summary

Technical Problem

In large-scale scenarios, the drone scene matching method has low calculation speed and insufficient robustness. The traditional feature extraction algorithm is sensitive to image differences, resulting in insufficient real-time and accuracy.

Method used

By generating a feature description sub-database offline and introducing a secondary scene adaptation area, the calculation amount is reduced, and the visual location recognition algorithm is used to quickly retrieve the correct secondary scene adaptation area when matching fails, improving system robustness.

Benefits of technology

It significantly improves the calculation speed and robustness of drone scene matching, reduces the probability of mismatch, saves storage space, and corrects mismatch with VPR algorithm through semantic segmentation, improving the positioning accuracy of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119251455A_ABST
    Figure CN119251455A_ABST
Patent Text Reader

Abstract

The invention discloses a rapid scene matching and positioning method for an unmanned aerial vehicle in a large-range scene. The method comprises the following steps: making a data set, and training a semantic segmentation algorithm; generating image retrieval vectors and feature descriptors for different blocks by using a visual location recognition algorithm and a feature extraction algorithm, and making a base map database; in the flight process of the unmanned aerial vehicle, image data shot by the unmanned aerial vehicle in real time are sent to a semantic segmentation algorithm to generate a segmentation result image, a visual location recognition algorithm and a database are used for calculating similarity to obtain a coarse positioning area, and then features are extracted from the real-time image and are matched with a feature database to achieve fine matching. And finally obtaining geographic coordinates according to geographic mapping in the base map. The method effectively solves the problems that the unmanned aerial vehicle is difficult to quickly and initially position in a large scene range in a denial environment and is difficult to reposition after matching fails, and improves the reliability that the unmanned aerial vehicle can execute a scene matching task in various extremely challenging environments.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to scene matching technology and unmanned aerial vehicle navigation technology, and in particular to a scene matching navigation method based on fast feature matching. Background Art

[0002] With the rapid development of drone technology and chips, the application of drones equipped with embedded computing platforms in military, civil, scientific research and other fields has gradually increased, and the rapid navigation of drones is a basic prerequisite for achieving other tasks. However, due to the increasing complexity of applications, they often need to work in situations where there is no GNSS signal or the GNSS signal is unreliable, which requires the use of other sensors to achieve the positioning and navigation of drones. Among them, using image matching technology to achieve positioning and navigation is a more feasible solution, but in large-scale image data navigation tasks in large scenes, a lot of time will be consumed in data preprocessing and repeated feature extraction. At the same time, because traditional feature extraction algorithms are sensitive to differences in the image itself, there is a problem of low robustness, and they are insufficient in real-time and accuracy. Therefore, improving the calculation speed, accuracy and robustness of scene matching methods is the main work direction of current researchers.

[0003] Aiming at the problems that the scene matching method has low calculation speed and low robustness in a large-scale scene, the present invention proposes a method for rapid scene matching positioning of unmanned aerial vehicles in a large-scale scene. Summary of the invention

[0004] In order to address the deficiencies of the above-mentioned prior art, the present invention aims to provide a method for rapid scene matching and positioning of UAVs in a large-scale scenario, which reduces the amount of calculation by generating a feature descriptor database offline and introducing a secondary scene adaptation area; in the event of a matching failure, a visual place recognition algorithm is used to quickly retrieve the correct secondary scene adaptation area to improve the robustness of the system.

[0005] The present application achieves the above-mentioned effects through the following technical solutions: a method for rapid scene matching and positioning of unmanned aerial vehicles in a large-scale scene, the method comprising the following steps:

[0006] S1 uses drones to obtain real aerial images of the target area, projects and corrects them, synthesizes them into a large scene range base map, and constructs a dataset;

[0007] S2 builds a semantic segmentation model, and fine-tunes the pre-trained semantic segmentation model according to the data set; uses the visual place recognition VPR algorithm to process the large scene base map in blocks to generate a block recognition vector database; uses the feature extraction algorithm to process the large scene base map in blocks to generate a block matching feature database;

[0008] The S3 airborne computing platform obtains the real-time image from the airborne camera and uses the secondary scene adaptation area generation algorithm to generate the secondary scene adaptation area according to the real-time image from the airborne camera.

[0009] S4 uses a precise matching algorithm to perform pixel-level precise matching on the real-time image of the onboard camera and outputs the precise matching pixel coordinates;

[0010] S5 uses the pixel coordinate to geographic coordinate mapping algorithm to calculate the geographic coordinates of the center pixel coordinates of the real-time image of the drone's onboard camera, and the air pressure information to generate NMEA format GNSS information.

[0011] Furthermore, the S1 is specifically:

[0012] S11 defines the flight area and uses commercial drones to perform overlapping traversal flights over the target area;

[0013] S12 inputs the obtained overlapping drone images into ArcGIS software for projection correction, generates a TIFF format large scene range base map with geographic coordinate information, and generates a TFW file based on the geographic information of the image;

[0014] S13 crops and annotates the obtained base map to construct a segmentation data set.

[0015] Furthermore, the S2 is specifically:

[0016] S21 fine-tunes the pre-trained semantic segmentation network according to the segmentation data set to obtain fine-tuned training weights;

[0017] S22 uses the fine-tuned semantic segmentation network to infer the cropped base image to obtain a semantic segmentation mask;

[0018] S23 inputs the obtained segmentation mask into the VPR algorithm to generate a block retrieval vector library;

[0019] S24 sends the cropped large scene range base map to the feature extraction algorithm to obtain the matching features of each block and generate a matching feature library.

[0020] Furthermore, the S3 is specifically:

[0021] S31 determines whether the matching result of the previous frame is reliable;

[0022] If the matching result of the previous frame is reliable, jump to S33 in step S32; if the matching result of the previous frame is unreliable, jump to S34;

[0023] S33 takes the block area where the coordinates of the previous frame matching result are located as the central block of the secondary scene adaptation area, and expands it into an N×N block with this block as the center as the secondary scene adaptation area, and directly enters S4;

[0024] S34 sends the current frame image to the semantic segmentation model to obtain a segmentation mask;

[0025] S35 inputs the segmentation mask into the VPR algorithm to obtain the retrieved vector;

[0026] S36 calculates the cosine similarity between the retrieved vector and each vector in the retrieval vector library. The cosine similarity formula is as follows:

[0027]

[0028] Wherein, vector A is the searched vector, vector B is the vector in the search vector library, A·B is the dot product of vector A and vector B, ‖A‖ and ‖B‖ are the Euclidean norms of vector A and vector B respectively;

[0029] S37: The block with the highest similarity is used as the central block of the secondary scene adaptation area, and the central block of the secondary scene adaptation area is expanded into N×N blocks as the secondary scene adaptation area, and then the process goes to S4.

[0030] Furthermore, the S4 is specifically:

[0031] S41 uses a feature extraction algorithm to extract features from the current frame image;

[0032] S42 obtains the features of each block from the matching feature database according to the range of the secondary scene adaptation area, and merges the feature vector queues of each block into a complete feature vector queue;

[0033] S43 uses a precise matching algorithm to match the feature vector queue of the current frame image with the feature vector queue of the secondary scene adaptation area;

[0034] S44 uses the RANSAC algorithm to remove mismatched points from matched point pairs;

[0035] S45 calculates the homography transformation matrix H, obtains the transformation matrix of the current frame image and the base map, and obtains the position of the center coordinates of the current frame image in the base map. The relationship between the homography transformation matrix and the mapping coordinate point pair is shown in the following formula:

[0036]

[0037] Where (x′, y′) is the mapping point coordinate of the feature point (x, y), and H is the homography matrix;

[0038] S46 calculates the pixel coordinates of the center coordinates of the current frame in the base map using the homography matrix.

[0039] Furthermore, the S5 is specifically:

[0040] S51 reads the mapping relationship between the image space and the geographic space in the TFW file generated in S12;

[0041] S52 calculates the geographic coordinates of the center pixel coordinates according to the mapping relationship, and the calculation formula is as follows:

[0042] x′=Ax+By+C

[0043] y′=Dx+Ey+F

[0044] Where x' is the geographic X coordinate corresponding to the pixel, y' is the geographic Y coordinate corresponding to the pixel, x is the pixel coordinate, y is the pixel coordinate, A is the pixel resolution in the X direction, D and B are the translation and rotation coefficients, E is the pixel resolution in the Y direction, C is the X coordinate of the pixel center in the upper left corner of the grid map, and F is the Y coordinate of the pixel center in the upper left corner of the grid map;

[0045] S53 calculates the atmospheric pressure and generates GNSS sentence information in NMEA format. The atmospheric pressure uses the hypsometric formula, which is as follows:

[0046]

[0047] Where P0 is the standard atmospheric pressure, which is 101.325 kPa; P is the actual measured atmospheric pressure, in kPa; T is the actual measured temperature, in °C. This formula considers both temperature and pressure to calculate the altitude.

[0048] Compared with the prior art, the present invention has the following advantages:

[0049] (1) The present invention uses an offline method to extract matching features of a large base map, which greatly reduces the amount of real-time calculations. At the same time, there is no need to store the original base map on the computing platform, saving storage space.

[0050] (2) The present invention uses the secondary scene adaptation area as a buffer zone to match the real-time image, which reduces the amount of calculation and the probability of mismatching.

[0051] (3) The present invention uses the VPR algorithm to correct the matching algorithm when a mismatch occurs, thereby improving the robustness of the system.

[0052] (4) The feature extraction algorithm of the present invention can also be replaced, and deep learning methods can also be used for feature extraction. BRIEF DESCRIPTION OF THE DRAWINGS

[0053] Figure 1 A flowchart of the method for rapid scene matching and positioning of UAVs in large-scale scenes;

[0054] Figure 2 Schematic diagram of SIFT feature storage data structure;

[0055] Figure 3 This is a schematic diagram of the secondary scene adaptation area;

[0056] Figure 4 Generate a secondary scene adaptation area flow chart for applying the VPR algorithm;

[0057] Figure 5 This is a schematic diagram of the client and server structure in the precise matching algorithm;

[0058] Figure 6 Schematic diagram of image matching. DETAILED DESCRIPTION

[0059] In order to better illustrate the technical details of the present invention, the present invention is further described below in conjunction with the accompanying drawings.

[0060] The present invention proposes a method for rapid scene matching and positioning of unmanned aerial vehicles in a large-scale scenario, which reduces the amount of calculation by generating a feature descriptor database offline and introducing a secondary scene adaptation area. In the event of matching failure, semantic segmentation and VPR algorithm are used to quickly retrieve the correct secondary scene adaptation area to improve the robustness of the system.

[0061] Specifically, the present invention provides a method for fast scene matching and positioning of unmanned aerial vehicles in a large-scale scene, such as Figure 1 As shown, the following steps are included:

[0062] S1 first uses a drone to obtain real aerial images of the target area, corrects and synthesizes them into a large scene range base map, and constructs a dataset;

[0063] S11, define the flight area range, and use commercial drones to perform traversal flights over the target area with overlapping areas;

[0064] S12, inputting the obtained overlapping drone images into ArcGIS software for projection correction, synthesizing and generating a base map with geographic coordinate information;

[0065] S13, crop the obtained base map without overlap, and the crop size is 1024×1024; randomly select 100 cropped images (which can be adjusted according to the difficulty of the task) for annotation, and divide them into training set and test set according to the ratio of 0.85:0.15;

[0066] S2 builds a semantic segmentation model, fine-tunes the pre-trained semantic segmentation model according to the data set, and uses the Visual Place Recognition (VPR) algorithm and feature extraction algorithm to process the base map to generate a base map database;

[0067] S21, build the ISDNet semantic segmentation network and select pre-trained weights according to the scene content. Use the dataset created in the previous step to fine-tune the built semantic segmentation network and obtain the fine-tuned training weights;

[0068] S22, use the semantic segmentation network with fine-tuned parameters to infer all the cropped images to obtain semantic segmentation masks;

[0069] S23, build the VPR algorithm: AnyLoc, select the corresponding pre-trained weights according to the scene content, input the segmentation mask obtained in the previous step into AnyLoc, infer the vector and save it according to the image number, and generate a block retrieval vector library. The input image here can be larger than 1024×1024, but if the image is too large, it is easy to have insufficient computing resources. When the input image is larger than 1024×1024, the model will automatically maintain the proportion and downsample the input image to a maximum side size of 1024. Therefore, when subsequently calculating and generating real-time image retrieval vectors in real time, the spatial resolution of the input image should be as close as possible to the spatial resolution when building the block retrieval vector library, or when building the block retrieval vector library, the spatial resolution should be close to the spatial resolution of the task;

[0070] S24, the cropped image is sent to the feature extraction algorithm to obtain the matching features of each block and generate a matching feature library. Since the subsequent generation of the secondary scene adaptation area needs to balance reliability and calculation speed, the cropped image size here needs to satisfy the following formula to ensure that the secondary scene adaptation area completely contains the camera framing range.

[0071]

[0072] Where s represents the pixel size of the cropped image, GSD S It represents the ground truth distance corresponding to each pixel of the base map when extracting features from the base map. a represents the ground truth distance corresponding to one pixel of the camera image when extracting features from the camera image. The units are both cm.

[0073] This step uses the GPU version of SIFT as an example. This example uses PopSIFT as the feature extraction algorithm library and feature matching algorithm library. The API provided by this library is used to process images. Since feature descriptors need to be saved intermediately, the code for saving feature descriptors from the GPU is added.

[0074] In this step, the feature descriptor needs to be stored in a specific format. In this example, SIFT features are used as an example. Figure 2 As shown, each block feature is saved in txt text format, and its name should be the pixel coordinates of the block (0,0) coordinates in the map. The first line of text contains the total number of feature descriptors of the current block, and each subsequent line represents a feature descriptor. As shown in the figure, the first line is 916, which means there are 916 lines of feature descriptors. The first two floating-point numbers in each line of feature descriptors are the coordinates of the feature point in the base map, the third floating-point number is the sigma scale information, and the following 128 floating-point numbers are the 128-dimensional feature vectors of SIFT features. In this example, a space is used as the separator for each number;

[0075] S3 uses the secondary scene adaptation area generation algorithm to generate the secondary scene adaptation area based on the previous result and the current frame content for better matching. It is worth noting that the previous part is the offline database preparation part, and the subsequent parts are all real-time calculation parts.

[0076] S31 determines whether the matching result of the previous frame is reliable according to whether the matching logarithm result of the previous frame exceeds the set threshold. The threshold is an empirical value. After a large number of experiments, this example is set to 20 to achieve a balance between accuracy and speed. Note that the matching logarithm should be the logarithm after eliminating the wrong matching points;

[0077] If the matching result of the previous frame is reliable in S32, since the drone will not perform large-scale instantaneous maneuvers, it can be considered that the last matching coordinates can be directly used as the reference point of the secondary scene adaptation area without executing the VPR algorithm to find the reference point again, so jump to S33; if the matching result of the previous frame is unreliable, the matching coordinate points may have a large-scale drift, and it is necessary to find the reference point again, so jump to S34;

[0078] S33 compares the previous frame matching result with the previous frame secondary scene adaptation area update threshold, and decides whether to update the secondary scene adaptation area according to whether it exceeds the threshold. Figure 3 As shown in the figure, Δl is the updating threshold of the secondary scene adaptation area, which should satisfy the following formula.

[0079] △l×GSD s <V max ×T max

[0080] In the formula, GSD S Indicates the ground truth distance corresponding to each pixel of the base map when extracting features from the base map, in cm, V max is the maximum flight speed of the drone, in cm / s, T max It is the time period for the system to process one frame, in seconds.

[0081] When Δy is less than Δl, the update mechanism is triggered, and the block area where the coordinates of the previous frame matching result are located is used as the central block of the secondary scene adaptation area, and the block is expanded as the center as follows: Figure 3 The 3×3 block shown is used as a secondary scene adaptation area and enters S4;

[0082] S34 downsamples or upsamples the current frame image so that the current frame GSD is close to the base image GSD, and sends it to the semantic segmentation model for inference to generate a segmentation mask. The specific process is as follows: Figure 4 As shown, the upper part is the offline calculation part, which is used to form a retrieval vector library, and the lower part is the real-time calculation part, that is, the process from S34 to S37;

[0083] S35 inputs the segmentation mask into the AnyLoc algorithm to generate a searched vector;

[0084] S36 calculates the cosine similarity between the retrieved vector and each vector in the retrieval vector library. The cosine similarity formula is as follows:

[0085]

[0086] Where A·B is the dot product of vector A and vector B, ‖A‖ and ‖B‖ are the Euclidean norms (i.e., the lengths of the vectors) of vector A and vector B, respectively.

[0087] S37 is similar to S33. The center coordinates of the block with the highest similarity are used as reference coordinates to determine whether they exceed the update threshold. If they exceed the update threshold, the block is used as the center block of the secondary scene adaptation area, and the block is expanded as follows: Figure 3 The 3×3 block shown is used as a secondary scene adaptation area and enters S4;

[0088] S4 uses a precise matching algorithm to perform pixel-level precise matching of optical images and output precise matching pixel coordinates. This example divides the algorithm into two processes, the client and the server. Each process uses multi-threading to implement tasks. The client is mainly responsible for feature extraction and feature matching, and the server is mainly responsible for reading and combining features in the secondary adaptation area, converting coordinate systems, and outputting geographic coordinates. The specific process structure is as follows: Figure 5 As shown;

[0089] In the S41 example, the client obtains the current frame image from the camera stream, and then uses the Popsift algorithm to call CUDA to extract features from the current image output to obtain the feature descriptor. In order to balance speed and accuracy, this example sets the upper limit of feature point extraction for this image to 2048;

[0090] The S42 server uses a thread pool to read the features of each block from the matching feature database according to the range of the secondary scene adaptation area, and merges the feature vector queues of each block into a complete feature vector queue, and transmits it to the client via TCP / IP. In this example, you can choose to deploy the client and server on the same embedded development board or on different development boards. The client program must run on a development board that supports CUDA, but there is no requirement for the server. It should be noted that if different development boards are used, the two development boards need to be connected via a network cable and a gateway needs to be set up. At this time, the network transmission speed may become a bottleneck. In addition, in this example, the client uses the SIFT algorithm to extract features. It is also possible to use a deep learning-based method to extract and match features. You only need to replace the client program and modify the server code slightly. This example mainly uses SIFT features as the main illustrative example;

[0091] S43 The client receives the feature vector queue generated by the server, and calls the GPU-accelerated BF matching algorithm in Popsift to match the current frame features with the secondary scene adaptation area features, and obtains a set of matching point pairs without eliminating the wrong matching points;

[0092] The S44 client uses the RANSAC algorithm to remove mismatched points from the matched point pairs;

[0093] The S45 client calculates the homography transformation matrix H by eliminating the point pairs after mismatching points, and obtains the transformation matrix between the current frame image and the base map. The relationship between the homography transformation matrix and the mapping coordinate point pairs is shown in the following formula:

[0094]

[0095] Where (x′, y′) is the coordinate of the mapping point of the feature point (x, y), and H is the homography matrix, which can be calculated using 4 or more feature matching point pairs. This example uses the findHomography() function in the OpenCV library to calculate the matrix. The more point pairs are input, the higher the accuracy. The matching diagram is shown in the figure. Figure 6 As shown, the green lines are matching point pairs, and the blue boxes are the specific positions of the left image in the right image;

[0096] S46 The client uses the pixel coordinates of the center point of the current frame in the current frame image to obtain the pixel coordinates of the center coordinates of the current frame image in the base map by left-multiplying the homography matrix. The client packages the coordinates and sends them to the server to process the next frame image.

[0097] S5 uses the pixel coordinate to geographic coordinate mapping algorithm to calculate the geographic coordinates of the center pixel coordinate mapping of the drone image, and the air pressure information to generate NMEA format GNSS information.

[0098] S51 reads the mapping relationship between the image space and the geographic space in the TFW file to obtain the geographic information of the base map, which includes the following 6 data:

[0099] 1 The resolution scale of one pixel in the map unit in the X direction.

[0100] 2 Translation amount.

[0101] 3Rotation amount. (angle)

[0102] 4 The negative value of the Y resolution scale in the Y direction for one pixel in the map unit.

[0103] 5 The X coordinate of pixel 0,0 (upper left).

[0104] 6 The Y coordinate of pixel 0,0 (upper left).

[0105] S52 calculates the geographic coordinates of the center pixel coordinates according to the mapping relationship, and the calculation formula is as follows:

[0106] x′=Ax+By+C

[0107] y′=Dx+Ey+F

[0108] Where x' is the geographic X coordinate corresponding to the pixel, y' is the geographic Y coordinate corresponding to the pixel, x is the pixel coordinate, y is the pixel coordinate, A is the pixel resolution in the X direction, D and B are the translation and rotation coefficients, E is the pixel resolution in the Y direction, C is the X coordinate of the pixel center in the upper left corner of the grid map, and F is the Y coordinate of the pixel center in the upper left corner of the grid map;

[0109] S53 calculates the atmospheric pressure and generates GNSS sentence information in NMEA format. The atmospheric pressure uses the hypsometric formula, which is as follows:

[0110]

[0111] In the formula, P0 is the standard atmospheric pressure, which is 101.325 kPa; P is the actual measured atmospheric pressure, in kPa; T is the actual measured temperature, in °C. T+273.15 is the conversion of degrees Celsius to Kelvin. This formula considers both temperature and pressure to calculate altitude.

[0112] Finally, the server transmits the generated GNSS sentence to the flight controller through the serial port. The specific sentence is as follows:

[0113] $GNRMC,095025.654,A,3200.15746,N,11836.81634,E,15.143,236.50,030624,,,A*7 A$GNGGA,095025.654,3200.1575,N,11836.8163,E,1,12,1.50,115.1,M,81.4,M,,*76

[0114] This statement is output through logging in the experiment and complies with the NMEA format. The flight controller used in this example only needs RMC and GGA statements to recognize it, so this statement can be recognized and received by the flight controller normally.

[0115] The above is a detailed introduction to the method for rapid scene matching and positioning of unmanned aerial vehicles in a large range of scenes provided by the present invention. The principle and implementation method of the technology are explained through specific examples. These examples are only used to assist in understanding the core concepts of the technology. It should be emphasized that for professionals in this technical field, the technology can be appropriately adjusted and optimized without violating the basic concept of the technology. These adjustments and optimizations also fall within the scope of protection of the claims of the present invention.

Claims

1. A method for fast scene matching and positioning of unmanned aerial vehicles in a large-scale scene, characterized in that: The method comprises the following steps: S1 uses drones to obtain real aerial images of the target area, projects and corrects them, synthesizes them into a large scene range base map, and constructs a dataset; S2 builds a semantic segmentation model, and fine-tunes the pre-trained semantic segmentation model according to the data set; uses the visual place recognition VPR algorithm to process the large scene base map in blocks to generate a block recognition vector database; uses the feature extraction algorithm to process the large scene base map in blocks to generate a block matching feature database; The S3 airborne computing platform obtains the real-time image from the airborne camera and uses the secondary scene adaptation area generation algorithm to generate the secondary scene adaptation area according to the real-time image from the airborne camera. S4 uses a precise matching algorithm to perform pixel-level precise matching on the real-time image of the onboard camera and outputs the precise matching pixel coordinates; S5 uses the pixel coordinate to geographic coordinate mapping algorithm to calculate the geographic coordinates of the center pixel coordinates of the real-time image of the drone's onboard camera, and the air pressure information to generate NMEA format GNSS information.

2. The method for fast scene matching and positioning of unmanned aerial vehicles in a large-scale scene according to claim 1 is characterized in that: The S1 is specifically: S11 defines the flight area and uses commercial drones to perform overlapping traversal flights over the target area; S12 inputs the obtained overlapping drone images into ArcGIS software for projection correction, generates a TIFF format large scene range base map with geographic coordinate information, and generates a TFW file based on the geographic information of the image; S13 crops and annotates the obtained base map to construct a segmentation data set.

3. The method for fast scene matching and positioning of unmanned aerial vehicles in a large-scale scene according to claim 1 is characterized in that: The S2 is specifically: S21 fine-tunes the pre-trained semantic segmentation network according to the segmentation data set to obtain fine-tuned training weights; S22 uses the fine-tuned semantic segmentation network to infer the cropped base image to obtain a semantic segmentation mask; S23 inputs the obtained segmentation mask into the VPR algorithm to generate a block retrieval vector library; S24 sends the cropped large scene range base map to the feature extraction algorithm to obtain the matching features of each block and generate a matching feature library.

4. The method for fast scene matching and positioning of unmanned aerial vehicles in a large-scale scene according to claim 1 is characterized in that: The S3 is specifically: S31 determines whether the matching result of the previous frame is reliable; If the matching result of the previous frame is reliable, jump to S33 in step S32; if the matching result of the previous frame is unreliable, jump to S34; S33 takes the block area where the coordinates of the previous frame matching result are located as the central block of the secondary scene adaptation area, and expands it into an N×N block with this block as the center as the secondary scene adaptation area, and directly enters S4; S34 sends the current frame image to the semantic segmentation model to obtain a segmentation mask; S35 inputs the segmentation mask into the VPR algorithm to obtain the retrieved vector; S36 calculates the cosine similarity between the retrieved vector and each vector in the retrieval vector library. The cosine similarity formula is as follows: Wherein, vector A is the searched vector, vector B is the vector in the search vector library, A·B is the dot product of vector A and vector B, ‖A‖ and ‖B‖ are the Euclidean norms of vector A and vector B respectively; S37: The block with the highest similarity is used as the central block of the secondary scene adaptation area, and the central block of the secondary scene adaptation area is expanded into N×N blocks as the secondary scene adaptation area, and then the process goes to S4.

5. The method for fast scene matching and positioning of unmanned aerial vehicles in a large-scale scene according to claim 1, characterized in that: The S4 is specifically: S41 uses a feature extraction algorithm to extract features from the current frame image; S42 obtains the features of each block from the matching feature database according to the range of the secondary scene adaptation area, and merges the feature vector queues of each block into a complete feature vector queue; S43 uses a precise matching algorithm to match the feature vector queue of the current frame image with the feature vector queue of the secondary scene adaptation area; S44 uses the RANSAC algorithm to remove mismatched points from matched point pairs; S45 calculates the homography transformation matrix H, obtains the transformation matrix of the current frame image and the base map, and obtains the position of the center coordinates of the current frame image in the base map. The relationship between the homography transformation matrix and the mapping coordinate point pair is shown in the following formula: Where (x′, y′) is the mapping point coordinate of the feature point (x, y), and H is the homography matrix; S46 calculates the pixel coordinates of the center coordinates of the current frame in the base map using the homography matrix.

6. The method for fast scene matching and positioning of unmanned aerial vehicles in a large-scale scene according to claim 1, characterized in that: The S5 is specifically: S51 reads the mapping relationship between the image space and the geographic space in the TFW file generated in S12; S52 calculates the geographic coordinates of the center pixel coordinates according to the mapping relationship, and the calculation formula is as follows: x′=Ax+By+C y′=Dx+Ey+F Where x' is the geographic X coordinate corresponding to the pixel, y' is the geographic Y coordinate corresponding to the pixel, x is the pixel coordinate, y is the pixel coordinate, A is the pixel resolution in the X direction, D and B are the translation and rotation coefficients, E is the pixel resolution in the Y direction, C is the X coordinate of the pixel center in the upper left corner of the grid map, and F is the Y coordinate of the pixel center in the upper left corner of the grid map; S53 calculates the atmospheric pressure and generates GNSS sentence information in NMEA format. The atmospheric pressure uses the hypsometric formula, which is as follows: Where P0 is the standard atmospheric pressure, which is 101.325 kPa; P is the actual measured atmospheric pressure, in kPa; T is the actual measured temperature, in °C.

Citation Information

Patent Citations

  • Scene matching navigation method and device based on convolutional neural network

    CN114199250A

  • Navigation and positioning method for unmanned aerial vehicle

    CN114509070A

  • High-altitude unmanned aerial vehicle sparse feature region matching and positioning method

    CN115690617A

  • Method and device for rapidly positioning absolute position of unmanned aerial vehicle based on environmental semantic information

    CN117036461A

  • Scene matching method based on unmanned aerial vehicle image and satellite map in denial environment

    CN118053010A

Cited By

  • Unmanned system scene matching and positioning method in area denial scene

    CN120833504A

  • Scene matching and localization method for unmanned systems in area denial scenarios

    CN120833504B

  • Scene relocation and target regression method and system in dynamic scene of unmanned aerial vehicle

    CN122336268A