Marine visual SLAM pose estimation method, device, computer equipment and storage medium

By identifying the target in the offshore visual SLAM system, extracting ORB feature points and matching and error optimization on keyframes, the problem of feature point matching instability caused by periodic motion of the sea surface is solved, and the accuracy of pose estimation is improved.

CN119006769BActive Publication Date: 2025-03-25SECOND INST OF OCEANOGRAPHY MNR
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411493167.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-24
Publication Date
2025-03-25
Estimated Expiration
2044-10-24

AI Technical Summary

Technical Problem

When using the SLAM method to perform target estimation at sea, periodic motion of the sea surface leads to low stability of feature point matching, affecting the accuracy of pose estimation.

Method used

By identifying the target from the video to be measured, the ORB feature point set is extracted, and feature point matching and tracking failure detection is performed on the keyframe. If tracking fails, use the new feature point to combine the target feature point for pose estimation and reprojection error optimization.

Benefits of technology

It improves the accuracy of position estimation, solves the shaking problem caused by periodic motion of the sea surface, and enhances the stability of feature point matching.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119006769B_ABST
    Figure CN119006769B_ABST
Patent Text Reader

Abstract

The embodiment of the present invention discloses a method, device, computer equipment and storage medium for marine visual SLAM pose estimation. The method includes: obtaining a video to be measured; inputting the video to be measured into a target recognition model for target recognition; extracting ORB features from target area information to obtain a target feature point set; selecting a key frame and extracting the ORB features corresponding to the key frame to obtain a new feature point set; judging whether feature point tracking failure occurs; if so, performing pose estimation and reprojection error optimization based on the new feature point set combined with the target feature point set. By implementing the method of the embodiment of the present invention, the problem of low stability of feature point matching caused by the shaking problem caused by the periodic motion of the sea surface can be solved, and the accuracy of pose estimation can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a distance measurement method, and more specifically to a method, a device, a computer device and a storage medium for estimating a position and posture of a marine visual SLAM. Background Art

[0002] With the continuous development of autonomous navigation unmanned reconnaissance systems, high-precision carrier positioning and target ranging have become a crucial part of the engineering measurement process, such as in the process of measuring the distance of offshore targets. Traditional active ranging technologies such as laser ranging, ultrasonic ranging and radar ranging, although they perform well in some aspects, are highly sensitive to the environment, have poor concealment, and cannot effectively identify the target type. In contrast, visual ranging technology can circumvent the above problems and facilitate accurate identification of target types by obtaining rich image information. As a typical visual SLAM method, the ORB-SLAM (Simultaneous Localization and Mapping) system shows good accuracy, stability and real-time performance in static environments. The system is mainly composed of three parallel threads: visual tracking, local mapping and closed-loop detection.

[0003] With the advancement of technology, ORB-SLAM has been improved and expanded in many aspects. For example, the introduction of SLAM solutions for point-line feature fusion, ORB-SLAM2 and VINS-Fusion systems in dynamic environments have improved the robustness and applicability of the system in different scenarios; moreover, with the rise of deep learning technology, DSP-SLAM based on deep learning semantic segmentation technology and ORB-SLAM3 and YOLOR combined with target detection models have further expanded the application capabilities of SLAM systems in complex environments.

[0004] However, when the SLAM method is used for target pose estimation at sea, as the camera moves during shooting, part of the scene will leave the shooting range, causing the previously matched and tracked feature points to gradually disappear. The shaking caused by wind and waves on the sea surface will accelerate the disappearance of the tracked feature points. In other words, sudden turns or jitters will cause the video information to change too quickly, thereby affecting the stability of feature point matching and, in turn, the accuracy of pose estimation.

[0005] Therefore, it is necessary to design a new method to solve the problem of low stability of feature point matching caused by the periodic movement of the sea surface, so as to improve the accuracy of pose estimation. Summary of the invention

[0006] The purpose of the present invention is to overcome the defects of the prior art and provide a method, device, computer equipment and storage medium for marine visual SLAM pose estimation.

[0007] To achieve the above object, the present invention adopts the following technical scheme: a method for estimating a position and posture of a marine visual SLAM, comprising:

[0008] Get the video to be measured;

[0009] Inputting the to-be-measured distance video into a target recognition model for target recognition to obtain target area information;

[0010] Extracting ORB features from the target area information to obtain a target feature point set;

[0011] Select key frames and extract the ORB features corresponding to the key frames to obtain a new feature point set;

[0012] Determine whether feature point tracking failure occurs;

[0013] If feature point tracking fails, pose estimation and reprojection error optimization are performed based on the new feature point set combined with the target feature point set to obtain pose information;

[0014] Output the pose information.

[0015] A further technical solution is: the target recognition model is obtained by training the YOLOv5 network using marine images with ship labels as a sample set.

[0016] A further technical solution is: after determining whether feature point tracking failure occurs, the method includes:

[0017] If feature point tracking failure does not occur, pose estimation is performed based on the target feature point set to obtain pose information.

[0018] A further technical solution is: extracting ORB features from the target area information to obtain a target feature point set, including:

[0019] Extracting ORB features from target area information of the previous frame image to obtain a first set;

[0020] Extracting ORB features from target area information of the next frame image to obtain a second set;

[0021] The distance between the feature points of the first set and the second set is calculated by using the Hamming distance matching method to obtain the Hamming distance of each feature point;

[0022] Performing bidirectional matching and screening on the first set and the second set to obtain matching feature points;

[0023] Sorting the matching feature points according to the Hamming distance to obtain a sorting result;

[0024] The matching feature points whose value is not greater than a set threshold in the sorting results are screened to obtain a target feature point set.

[0025] A further technical solution is: the step of selecting a key frame and extracting the ORB features corresponding to the key frame to obtain a new feature point set includes:

[0026] Determine an initial key frame, and perform ORB feature extraction to obtain a first extraction result;

[0027] Determine the second key frame according to the preset time and feature point number conditions, and perform ORB feature extraction to obtain a second extraction result;

[0028] Determine the third key frame according to the preset time and feature point number conditions, and perform ORB feature extraction to obtain a third extraction result;

[0029] A new feature point set is determined according to the first extraction result, the second extraction result and the third extraction result.

[0030] A further technical solution is: performing pose estimation and reprojection error optimization based on the new feature point set combined with the target feature point set to obtain pose information, including:

[0031] Matching the new feature point set with the target feature point set to update the target feature point set;

[0032] The position and posture matrix is ​​calculated using the least square method according to the target feature point set to obtain the position and posture information.

[0033] The present invention also provides a marine visual SLAM pose estimation device, comprising:

[0034] A video acquisition unit, used to acquire the video to be measured;

[0035] An identification unit, used for inputting the to-be-measured distance video into a target identification model for target identification to obtain target area information;

[0036] An extraction unit, used to extract ORB features from the target area information to obtain a target feature point set;

[0037] A selection unit is used to select a key frame and extract the ORB feature corresponding to the key frame to obtain a new feature point set;

[0038] A judgment unit, used to judge whether feature point tracking failure occurs;

[0039] A posture calculation unit, used for performing posture estimation and reprojection error optimization based on the new feature point set combined with the target feature point set to obtain posture information if feature point tracking fails;

[0040] An output unit is used to output the posture information.

[0041] Its further technical solution is: also includes:

[0042] The pose estimation unit is used to perform pose estimation according to the target feature point set to obtain pose information if feature point tracking failure does not occur.

[0043] The present invention further provides a computer device, which includes a memory and a processor. The memory stores a computer program, and the processor implements the above method when executing the computer program.

[0044] The present invention also provides a storage medium, wherein the storage medium stores a computer program, and the computer program implements the above method when executed by a processor.

[0045] Compared with the prior art, the present invention has the following beneficial effects: the present invention identifies the target from the video to be measured, extracts the ORB feature point set, and then performs feature point matching on the key frame and detects tracking failure. If the tracking fails, the new feature points are used in combination with the target feature points to perform pose estimation and error optimization, thereby solving the problem of low stability of feature point matching caused by the periodic motion of the sea surface, and improving the accuracy of pose estimation.

[0046] The present invention is further described below in conjunction with the accompanying drawings and specific embodiments. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying any creative work.

[0048] Figure 1 A schematic diagram of an application scenario of the marine visual SLAM pose estimation method provided by an embodiment of the present invention;

[0049] Figure 2 A schematic diagram of a flow chart of a method for marine visual SLAM pose estimation provided by an embodiment of the present invention;

[0050] Figure 3 A schematic diagram of a sub-process of a method for marine visual SLAM pose estimation provided by an embodiment of the present invention;

[0051] Figure 4 A schematic diagram of a sub-process of a method for marine visual SLAM pose estimation provided by an embodiment of the present invention;

[0052] Figure 5 A schematic diagram of a sub-process of a method for marine visual SLAM pose estimation provided by an embodiment of the present invention;

[0053] Figure 6 A schematic block diagram of a marine visual SLAM pose estimation device provided by an embodiment of the present invention;

[0054] Figure 7 A schematic block diagram of a computer device provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0055] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0056] It should be understood that when used in this specification and the appended claims, the terms "include" and "comprises" indicate the presence of described features, integers, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or combinations thereof.

[0057] It should also be understood that the terms used in this specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. As used in the specification of the present invention and the appended claims, unless the context clearly indicates otherwise, the singular forms "a", "an" and "the" are intended to include plural forms.

[0058] It should be further understood that the term "and / or" used in the present description and the appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.

[0059] See also Figure 1 and Figure 2 , Figure 1 A schematic diagram of an application scenario of the marine visual SLAM pose estimation method provided in an embodiment of the present invention. Figure 2A schematic flow chart of a method for marine visual SLAM pose estimation provided by an embodiment of the present invention. The method for marine visual SLAM pose estimation is applied in a server. The server interacts with a camera and a terminal for data, and in combination with a deep learning method, extracts feature point information of stable objects in a video taken by a camera in a directionally manner, limits the extraction range, so as to improve the quality and effectiveness of the feature points, and in the process of positioning and mapping, can reserve feature information when the video information changes rapidly, and select key frames in combination with local map optimization, so as to improve the stability and global consistency of the system, and improve the construction effect of the positioning trajectory map.

[0060] Figure 2 FIG. 1 is a flow chart of a method for estimating a marine visual SLAM pose according to an embodiment of the present invention. Figure 2 As shown, the method includes the following steps S110 to S200.

[0061] S110: Obtain the video to be measured.

[0062] In this embodiment, the video to be measured is a video at sea shot by a camera.

[0063] S120: Input the to-be-measured distance video into a target recognition model for target recognition to obtain target area information.

[0064] In this embodiment, the target area information refers to the boundary box of the target and the corresponding position information.

[0065] Specifically, the target recognition model is obtained by training the YOLOv5 network using sea images with ship labels as sample sets.

[0066] Marine videos usually contain vast ocean waters and distant backgrounds, and their feature point extraction tasks are affected by the dynamics of the ocean environment, such as the movement of the ship and free wind and waves, which cause the water body information to change continuously. At the same time, the video also contains distant background information, which is not beneficial for target positioning. Therefore, the model of this embodiment combines the deep learning method to extract the feature point information of stable objects in a directional manner and limit the extraction range to improve the quality and effectiveness of the feature points.

[0067] In this embodiment, the main advantage of using the YOLO algorithm is its fast detection and recognition speed. The enhanced version can process up to 45 FPS on the GPU, while the fast version can process up to 155 FPS. YOLO divides the entire input image into a fixed number of grid cells, usually (S \times S). Each grid cell is responsible for predicting the area that may contain the target; for each grid cell, the YOLO model predicts multiple bounding boxes, each of which contains the location and category information of the target, as well as a confidence score indicating whether the target is contained in the bounding box and its accuracy; YOLO uses a single neural network to simultaneously predict the location and category of the bounding box. Each bounding box has a confidence score that measures the model's confidence in whether the bounding box contains the target; after detecting the target, a set threshold is used to filter out bounding boxes with confidence higher than the threshold to reduce the false detection rate; in order to eliminate overlapping bounding boxes, the NMS method is used to retain the bounding box with the highest confidence and remove other bounding boxes that overlap with it to obtain the final target detection result.

[0068] The target recognition model was built based on the YOLOv5 model, and its excellent detection speed and accuracy were used to detect ship targets in real time. When the camera moves relative to the target, the horizontal movement will affect the position information of the target in the recognition frame, while the forward and backward movement of the camera will affect the size of the target in the recognition frame; specifically, the workflow of the target recognition model is as follows: divide the input image into (S \times S) grid cells; predict multiple bounding boxes for each grid cell, including the target's position coordinates, category label, and confidence score; filter out high-confidence target bounding boxes according to the preset confidence threshold; use the NMS method to eliminate overlapping bounding boxes and retain the bounding box with the highest confidence as the final target detection result.

[0069] This end-to-end object detection algorithm is particularly suitable for real-time application scenarios that require high efficiency and high accuracy, such as video analysis and surveillance systems on mobile devices.

[0070] S130: Extract ORB features from the target area information to obtain a target feature point set.

[0071] In this embodiment, the target feature point set refers to a set consisting of feature points of ships, etc. in the target area of ​​each frame image.

[0072] In one embodiment, see Figure 3 , the above-mentioned step S130 may include steps S131~S136.

[0073] S131 . Extract ORB features from target region information of a previous frame image to obtain a first set.

[0074] In this embodiment, the first set refers to feature points corresponding to the target area information of the previous frame image.

[0075] S132: Extract ORB features from the target area information of the next frame image to obtain a second set.

[0076] In this embodiment, the second set refers to feature points corresponding to the target area information of the next frame of image.

[0077] By comparing the ORB features in the previous and next two frames, continuous tracking of the target can be achieved and the position and movement of the target between different frames can be identified; the first set and the second set provide target feature point information in time sequence, which can be used for subsequent motion estimation and trajectory prediction.

[0078] S133 , calculating the distance between the feature points of the first set and the second set by using a Hamming distance matching method to obtain the Hamming distance of each feature point.

[0079] In this embodiment, the Hamming distance between each pair of feature points in the first set and the second set is calculated to quantify the similarity between them; the Hamming distance is used as a similarity measure of feature descriptors to effectively match corresponding feature points in the two sets.

[0080] S134: Perform bidirectional matching and screening on the first set and the second set to obtain matching feature points.

[0081] In this embodiment, through the bidirectional matching and screening process, it is confirmed which feature points match each other in the two sets, so as to obtain the most reliable matching feature points.

[0082] Through two-way verification, the mismatching caused by the similarity error of feature descriptors can be effectively reduced, and the accuracy and reliability of tracking can be improved.

[0083] S135 , sorting the matching feature points according to the Hamming distance to obtain a sorting result.

[0084] In this embodiment, the sorting result refers to the result obtained by sorting the matching feature points in a descending order or a descending order according to the Hamming distance.

[0085] Specifically, the matching feature points are sorted according to their Hamming distances, so that more accurate target feature point selection can be performed later based on the sorting results.

[0086] Ranking can help identify the best matches and provide a basis for further filtering by similarity level.

[0087] S136: Filter the matching feature points in the sorting results that are not greater than a set threshold to obtain a target feature point set.

[0088] In this embodiment, according to a preset Hamming distance threshold, matching feature points that meet the conditions are screened out to form a final target feature point set.

[0089] By setting the threshold, unreasonable or low-confidence matches can be effectively filtered out to ensure that the final output target feature point set is of high quality and reliability.

[0090] In general, this ORB feature-based target tracking method achieves stable tracking of the target in continuous frames by gradually extracting, matching, and filtering feature points. It is suitable for visual application scenarios that require real-time performance and accuracy.

[0091] In this embodiment, when processing stable target areas such as ships, islands, ports, etc. in the video, these areas usually provide more stable feature points compared to the sea surface with frequently changing surface texture. First, the ORB feature descriptor is used to extract the feature point set of the target area in each frame of the image, such as ; Wherein, set A represents the feature point set of target A in the previous frame image. Set F represents the set of all feature points in the next frame image, which contains the target feature set extracted by the YoloV network.

[0092] The next step is to describe the similarity of each feature point in F with all feature points in set A by calculating the Hamming distance. Feature point pairs with smaller Hamming distances are considered candidates for successful matching. Here, d1 represents the closest Hamming distance, and d2 represents the next closest Hamming distance. If their ratio is less than the set threshold k, the feature point ei and the nearest neighbor fi are considered to be matched successfully.

[0093] Through two-way matching screening, it is ensured that each feature point ei in set A finds a unique and corresponding feature point fi in set F, and at the same time, it is ensured that each feature point fi in set F finds a unique and corresponding feature point ei in set A. Only when this correspondence is confirmed, it is considered a correct match, otherwise it is judged as a wrong match and removed.

[0094] The successfully matched feature point pairs are sorted by Hamming distance, and the feature point pairs with the minimum Hamming distance are obtained. If the Hamming distance of some feature point pairs exceeds the preset minimum Hamming distance multiple, they are considered as mismatches and removed, and further screening is continued.

[0095] Finally, an empirical threshold is set. If a feature point appears in enough feature point pairs and has a close position in consecutive frames and accumulated for enough frames, it will be added to the target feature point set to improve the stability and accuracy of target tracking.

[0096] This method uses ORB features and Hamming distance, combined with bidirectional matching and threshold screening, to achieve continuous tracking of targets in videos. It is suitable for application scenarios that require efficient and accurate real-time image processing.

[0097] S140: Select a key frame, and extract the ORB features corresponding to the key frame to obtain a new feature point set.

[0098] In this embodiment, the new feature point set refers to a set consisting of feature points extracted from the newly selected key frame.

[0099] In one embodiment, see Figure 4 , the above-mentioned step S140 may include steps S141~S144.

[0100] S141. Determine an initial key frame and perform ORB feature extraction to obtain a first extraction result.

[0101] In this embodiment, the first extraction result refers to a set of features corresponding to the initial key frame.

[0102] Specifically, an initial key frame is first selected from the video sequence. Key frames are usually selected as relatively static or stable frames in the video, because these frames usually contain clear feature points, and ORB feature extraction can effectively extract feature points and their descriptors from them.

[0103] Selecting a stable initial keyframe helps ensure that the extracted feature points have a certain stability and accuracy, which is very important for subsequent feature matching and tracking; by selecting a static or relatively stable frame as the initial keyframe, the computational complexity in subsequent processing can be reduced, because these frames usually require fewer feature points to be extracted, thereby speeding up feature extraction.

[0104] S142: Determine a second key frame according to preset time and feature point number conditions, and perform ORB feature extraction to obtain a second extraction result.

[0105] In this embodiment, the second extraction result refers to a set of feature points corresponding to the target area of ​​the second key frame.

[0106] The second frame is selected as the key frame according to preset conditions (such as time interval or change in the number of feature points), and ORB feature extraction is performed.

[0107] Selecting the second frame with an appropriate interval as the key frame helps to improve the visual coverage in the video sequence because it can more comprehensively capture the different perspectives and postures of the target or scene; by selecting key frames in different frames, a variety of feature points can be obtained, which helps to improve the robustness and accuracy of subsequent feature matching.

[0108] Specifically, the preset time and feature point number conditions include that the time interval with the first frame key frame is not less than 1s, and the number of points where the feature points in the target area match the first extraction result is not less than L1, where 1s and L1 can be set according to actual conditions. In other embodiments, they can be set to other values.

[0109] S143: Determine a third key frame according to preset time and feature point number conditions, and perform ORB feature extraction to obtain a third extraction result.

[0110] In this embodiment, the third extraction result refers to the feature points corresponding to the target area of ​​the third key frame.

[0111] The first extraction result, the second extraction result and the third extraction result may be extracted according to step S130.

[0112] S144: Determine a new feature point set according to the first extraction result, the second extraction result, and the third extraction result.

[0113] In this embodiment, the new feature point set is a set consisting of feature points that match the first extraction result, the second extraction result, and the third extraction result.

[0114] In this embodiment, after ORB feature extraction, key frames K1, K2, and K3 that meet the set conditions are selected, and the selected key frame images are subjected to target extraction and feature point sets are established to ensure that there are still L1 and L2 corresponding feature points between the feature point sets. The first key frame K1 is set as the global calculation coordinate system, and the matching feature points between K1, K2, and K3 are screened by RANSAC to calculate the pose changes between them; based on the essential matrix E (K1 and K3), the rotation matrix R and translation matrix T of K3 relative to the global coordinates are obtained; using the obtained pose change matrix and the corresponding feature points, triangulation is performed to obtain the three-dimensional coordinates of the feature points, thereby inferring the pose change of K3 relative to K2. In these three key frames, the reprojection error is constructed by the projection position of the scene point in the image.

[0115] Specifically, as the camera moves during the shooting process, part of the scene will leave the shooting range, causing the previously matched and tracked feature points to gradually disappear. The shaking caused by wind and waves on the sea surface will accelerate the disappearance of the tracked feature points, and the amplitude of the shaking is negatively correlated with the tracked feature points. When the number of feature points decreases to a certain extent (exceeding a set threshold), a new key frame needs to be selected. When selecting key frames, it is necessary to ensure a reasonable spacing, because too dense key frames will reduce the program running speed and affect the accuracy of depth estimation. Therefore, when selecting key frames, the camera's motion changes must be large enough. The first frame is selected as the initial key frame K1, and feature points are extracted from this frame image, which is set as the first extraction result L0. When selecting the second frame K2, ensure that there are a sufficient number of matching feature points L1 between it and K1; similarly, when selecting the third frame K3, ensure that there are at least L2 matching points between it and K2.

[0116] First, according to preset conditions (which may be time intervals or changes in the number of feature points), three key frames K1, K2, and K3 are selected, and feature point sets are extracted from their images; selecting key frames that meet the conditions helps improve the stability and efficiency of the system, because these frames usually provide good viewing angles and feature point distribution, making subsequent pose calculations and three-dimensional reconstruction more reliable and accurate.

[0117] Next, the RANSAC algorithm is used to filter out the matching feature points between K1, K2, and K3, and then the pose changes between them, namely the rotation matrix R and the translation matrix T, are calculated.

[0118] The RANSAC algorithm can effectively remove feature points with large matching errors, improve the robustness and accuracy of pose calculation, and ensure that the calculated pose changes can reflect the actual camera motion.

[0119] Secondly, the relative position of K3 relative to the global coordinates is calculated using the essential matrix E. This step usually involves mathematical methods such as SVD decomposition and quaternion conversion. Specifically, the R and T matrices of K3 relative to K2 are solved based on the position of the 3D point in K2 and the R and T matrices of K3.

[0120] The intrinsic matrix E provides an accurate representation that converts the motion between cameras into translation and rotation, thereby effectively mapping the matching of feature points into 3D space.

[0121] Again, the obtained pose transformation matrix is ​​used in combination with the feature points matched in the three key frames to perform triangulation to calculate the three-dimensional coordinates of the feature points.

[0122] Triangulation is a method of deriving the true spatial position of feature points from their positions observed from multiple perspectives, providing accurate spatial geometric information between key frames.

[0123] Finally, the calculated 3D scene points are projected back to the image plane of each key frame, and the reprojection error is calculated as the basis for optimization. The reprojection error is the error used to control the change of posture, which is the comparison between the coordinates in the reverse frame obtained by calculating the 3D coordinates of the scene point + R, T and the actual coordinates in the frame.

[0124] Reprojection error is an important indicator for evaluating the quality of 3D reconstruction. By minimizing the reprojection error, the accuracy of camera pose estimation and 3D point cloud reconstruction can be optimized.

[0125] The stability and accuracy of pose estimation can be improved by selecting multi-frame key frames and matching feature points. The RANSAC algorithm can effectively deal with errors and outliers in feature point matching and improve the robustness of the system. The three-dimensional coordinates of feature points are obtained through triangulation to achieve accurate modeling of the scene geometry. The quality of camera pose and three-dimensional point cloud reconstruction is further improved through reprojection error optimization.

[0126] S150: Determine whether feature point tracking failure occurs.

[0127] In this embodiment, if a new image frame, such as a re-input image frame, the feature points extracted after target area recognition cannot be successfully matched with the target feature point set, or the re-input image frame does not have a target area, that is, there are no feature points, then it can be considered that the currently tracked target has been lost and feature point tracking has failed. Therefore, it is necessary to match the feature points corresponding to the key frame re-extracted above with the target feature point set to update the target feature point set, thereby deleting the feature points corresponding to the lost key frame.

[0128] When the sea surface shakes or other factors cause the match to be lost, that is, when the feature point tracking fails, the feature points in the newly selected key frame are matched with the previously constructed target feature point set. As long as the similarity of each feature point in the chain is not less than the similarity threshold, that is, the similarity between the matched feature points and the target feature point set is ensured to be higher than the similarity threshold, the quality of the feature points in the key frame and the matching accuracy are guaranteed.

[0129] Each time a frame of image is input, it is necessary to judge whether it is a key frame. A key frame is usually a frame selected when the motion or scene changes significantly, and is used for subsequent pose estimation; the principle of whether it can become a key frame is to first determine the initial key frame, and determine the second frame key frame and the third frame key frame according to step S140, that is, the image that meets the preset time and feature point number conditions can become a key frame. For the selected key frame, the initial estimate of the pose change is calculated, and the initial estimate of the three-dimensional scene point is obtained by the triangulation calculation method. Specifically, the initial estimate of the pose change is set to 0 or a similar value, and the initial value is optimized by the least squares optimization method based on the reprojection error; the selected key frame is added to the running window, and the reprojection error is calculated. The reprojection error refers to the difference between the three-dimensional scene point projected onto the image plane by the estimated camera pose and the feature point actually observed. By optimizing the initial pose estimate, that is, the initial estimate of the pose change, the reprojection error is minimized to improve the accuracy and stability of the pose estimation. When the reprojection error is less than a certain threshold, the pose information can be returned directly. This pose estimation cycle describes the calculation of the position and pose matrix using the least squares method.

[0130] The jitter at sea and the periodic jitter at the sea surface may cause the map tracking to be lost. The jitter at sea may result in fewer matching points or even no matching points. To address the shaking problem caused by the periodic movement of the sea surface, the relocation frame set in this embodiment, that is, the selected key frame, needs to meet the following conditions: The time interval between two key frames does not exceed 1 second. The number of feature points in the target area of ​​the two key frames is not less than L1.

[0131] The accuracy of pose estimation can be significantly improved through reprojection error optimization, because it can effectively correct the error of pose estimation, especially in dynamic environments or scenes with large changes in lighting. Setting the repositioning frame interval to no more than 1 second can quickly respond and reposition in situations such as sea surface jitter, thereby ensuring the real-time and robustness of the system. Automatically determining key frames and performing reprojection error optimization reduces the need for manual intervention and improves the automation processing capability and efficiency of the entire system.

[0132] In summary, this method can provide accurate and stable position and attitude information by effectively handling challenges such as marine jitter, and is suitable for application fields that require high-precision positioning and motion tracking, such as drone navigation, augmented reality, and virtual reality.

[0133] S160: If feature point tracking fails, perform pose estimation and reprojection error optimization based on the new feature point set in combination with the target feature point set to obtain pose information.

[0134] In this embodiment, the pose information refers to the position and orientation of the feature point relative to the global calculation coordinate system.

[0135] In one embodiment, see Figure 5 , the above-mentioned step S160 may include steps S161~S162.

[0136] S161. Match the new feature point set with the target feature point set to update the target feature point set.

[0137] In this embodiment, only feature points whose similarity with the target feature point set is not less than a set threshold can be retained. If the similarity between some feature points in the target feature point set and some feature points in the new feature point set is less than the threshold, the feature points in the target feature point set can be deleted, thereby filtering out redundant key frames to form a target feature point set.

[0138] Specifically, the set of feature points detected in the new frame is matched with the set of target feature points. The target feature point set here is a set of feature points that has been optimized before and is used as the basis for subsequent pose calculations. For each feature point in the new frame, its similarity with each feature point in the target feature point set is calculated. Only when the similarity between a new feature point and a target feature point is not less than the set threshold, it is retained in the target feature point set. This ensures that only high-quality feature points are retained, thereby improving the accuracy and stability of subsequent pose estimation. If the similarity between a target feature point and a new feature point is lower than the threshold, then the target feature point may no longer represent the current scene or become invalid due to motion or environmental changes, so it can be deleted from the target feature point set. This screening process helps to reduce the redundancy and noise of the feature point set, making pose estimation more accurate and efficient.

[0139] S162. Calculate the position and posture matrix using the least square method according to the target feature point set to obtain position and posture information.

[0140] In this embodiment, the least squares method (or other optimization methods) is used to calculate the position and attitude information of the camera based on the target feature point set. This step is achieved by projecting the 3D scene points onto the image plane and comparing them with the actual observed feature points. By optimizing the camera's pose, the reprojection error can be minimized, thereby obtaining an accurate camera pose.

[0141] Specifically, by screening and retaining feature points with high similarity, the interference of low-quality or irrelevant feature points in pose estimation can be avoided, thereby improving the accuracy of pose estimation. When using the least squares method to optimize pose, the new feature point information is combined to quickly adjust the position and posture of the camera in a dynamic environment, maintaining the real-time and stability of the system. The entire process is based on automated feature point matching and optimization algorithms, which reduces the need for manual intervention and improves the efficiency and reliability of the system.

[0142] In summary, the performance of the visual positioning system is effectively improved through intelligent matching of feature points and optimization of posture, making it more suitable for precise positioning tasks in complex environments.

[0143] S170: Output the posture information.

[0144] S180. If feature point tracking failure does not occur, perform pose estimation based on the target feature point set to obtain pose information, and execute step S170.

[0145] In this embodiment, the pose of the camera or sensor can be estimated using geometric relationships (such as an essential matrix, a fundamental matrix, or a homography matrix, etc.) or optimization methods (such as PnP problem solving). This process determines the position and orientation of the camera in the world coordinate system by solving the rotation and translation information of the camera; after the pose estimation, the estimated pose is usually optimized to improve accuracy and stability. This may include using filters (such as extended Kalman filters) or optimization algorithms (such as nonlinear least squares) to integrate additional sensor data (such as IMU, GNSS (Global Navigation Satellite System)) or further improve the estimated pose information.

[0146] By matching feature points from multiple perspectives, the accuracy and robustness of pose estimation can be improved, and relatively accurate estimates can be maintained even when some feature points are blocked or mismatched. Many feature point extraction and matching algorithms have high computational efficiency and can perform pose estimation in real time or near real time, which is suitable for application scenarios that require fast feedback, such as unmanned driving and robot navigation. By fusing information provided by multiple sensors (such as vision, IMU, GNSS, etc.), the reliability and adaptability of the system in different environments and conditions can be improved.

[0147] In general, pose estimation based on a set of target feature points is an effective method that is widely used in fields such as SLAM (simultaneous localization and mapping), attitude estimation, and navigation, providing key positioning and navigation capabilities for robots and automated systems.

[0148] In this embodiment, during simultaneous positioning and mapping, sudden turns or jitters can cause the video information to change too quickly, thereby affecting the stability of feature point matching. Especially in marine environments, to meet this challenge, this application designs a key frame optimization method for marine environments, such as steps S140 to S160, which can reserve feature information when video information changes rapidly, and combine local map optimization for key frame selection to improve the stability and global consistency of the system and improve the construction effect of the positioning trajectory map.

[0149] In view of the dynamic changes and distant background in the marine environment, a more adaptable feature extraction algorithm is used, such as the ORB feature suitable for wide field of view and changing background. In addition, a multi-scale feature extraction strategy can be combined to cope with the change of target scale and distant background. In view of the motion changes of marine targets, a motion estimation method combined with inertial navigation (such as IMU) data can be used to enhance the ability to accurately track the change of target pose. At the same time, the target feature point set is updated in real time, and the new feature point set is applied in time for pose estimation and optimization when tracking fails. Integrating GNSS information and other environmental perception data (such as marine meteorological information, underwater sonar data, etc.) can improve the accuracy and stability of pose estimation, especially during long-term ocean movement. Establishing a real-time feedback and closed-loop control mechanism can adjust and optimize the feature extraction and pose estimation algorithms in real time according to the real-time ranging results to adapt to complex marine environmental conditions.

[0150] In summary, by optimizing feature point extraction, enhancing motion estimation and tracking algorithms, and integrating multi-source information for status update, the stability and accuracy of the simultaneous positioning and mapping system in the marine environment can be significantly improved.

[0151] The above-mentioned marine visual SLAM pose estimation method extracts a set of ORB feature points by identifying the target from the video to be measured, and then performs feature point matching on the key frame and detects tracking failure. If tracking fails, new feature points are used in combination with target feature points for pose estimation and error optimization, which can solve the problem of low stability of feature point matching caused by the periodic motion of the sea surface, and improve the accuracy of pose estimation.

[0152] Figure 6 is a schematic block diagram of a marine visual SLAM pose estimation device 300 provided by an embodiment of the present invention. Figure 6 As shown, corresponding to the above marine visual SLAM pose estimation method, the present invention also provides a marine visual SLAM pose estimation device 300. The marine visual SLAM pose estimation device 300 includes a unit for executing the above marine visual SLAM pose estimation method, and the device can be configured in a server. Specifically, please refer to Figure 6The marine visual SLAM pose estimation device 300 includes a video acquisition unit 301, a recognition unit 302, an extraction unit 303, a selection unit 304, a judgment unit 305, a pose calculation unit 306 and an output unit 307.

[0153] The video acquisition unit 301 is used to acquire the video to be measured; the recognition unit 302 is used to input the video to be measured into the target recognition model for target recognition to obtain target area information; the extraction unit 303 is used to extract ORB features from the target area information to obtain a target feature point set; the selection unit 304 is used to select key frames and extract ORB features corresponding to the key frames to obtain a new feature point set; the judgment unit 305 is used to judge whether feature point tracking failure occurs; the posture calculation unit 306 is used to perform posture estimation and reprojection error optimization based on the new feature point set combined with the target feature point set if feature point tracking failure occurs to obtain posture information; the output unit 307 is used to output the posture information.

[0154] In one embodiment, the marine visual SLAM pose estimation device 300 further includes a pose estimation unit 310, which is used to perform pose estimation based on the target feature point set to obtain pose information if feature point tracking failure does not occur.

[0155] In one embodiment, the extracting unit 303 includes a first set determining subunit, a second set determining subunit, a distance calculating subunit, a bidirectional matching subunit, a sorting subunit, and a screening subunit.

[0156] The first set determination subunit is used to extract ORB features from the target area information of the previous frame image to obtain the first set; the second set determination subunit is used to extract ORB features from the target area information of the next frame image to obtain the second set; the distance calculation subunit is used to calculate the distance between the feature points of the first set and the second set by using the Hamming distance matching method to obtain the Hamming distance of each feature point; the bidirectional matching subunit is used to perform bidirectional matching and screening on the first set and the second set to obtain matching feature points; the sorting subunit is used to sort the matching feature points according to the Hamming distance to obtain a sorting result; the screening subunit is used to screen the matching feature points in the sorting result that are not greater than a set threshold to obtain a target feature point set.

[0157] In one embodiment, the selection unit 304 includes an initial determination subunit, a second key frame determination subunit, a third key frame determination subunit, and a new set determination subunit.

[0158] The initial determination subunit is used to determine the initial key frame and perform ORB feature extraction to obtain a first extraction result; the second key frame determination subunit is used to determine the second key frame according to preset time and feature point number conditions, and perform ORB feature extraction to obtain a second extraction result; the third key frame determination subunit is used to determine the third key frame according to preset time and feature point number conditions, and perform ORB feature extraction to obtain a third extraction result; the new set determination subunit is used to determine a new feature point set based on the first extraction result, the second extraction result and the third extraction result.

[0159] In one embodiment, the posture calculation unit 306 includes a matching subunit and a matrix calculation subunit.

[0160] A matching subunit is used to match the new feature point set with the target feature point set to update the target feature point set; a matrix calculation subunit is used to calculate the position and posture matrix according to the target feature point set using the least squares method to obtain the position and posture information.

[0161] It should be noted that technicians in the relevant field can clearly understand that the specific implementation process of the above-mentioned marine visual SLAM pose estimation device 300 and each unit can refer to the corresponding description in the aforementioned method embodiment, and for the convenience and conciseness of the description, it will not be repeated here.

[0162] The above-mentioned marine visual SLAM pose estimation device 300 can be implemented in the form of a computer program, which can be used in Figure 7 Runs on the computer device shown.

[0163] See also Figure 7 , Figure 7 5 is a schematic block diagram of a computer device provided in an embodiment of the present application. The computer device 500 may be a server, wherein the server may be an independent server or a server cluster composed of multiple servers.

[0164] See also Figure 7 The computer device 500 includes a processor 502 , a memory and a network interface 505 connected via a system bus 501 , wherein the memory may include a non-volatile storage medium 503 and an internal memory 504 .

[0165] The non-volatile storage medium 503 can store an operating system 5031 and a computer program 5032. The computer program 5032 includes program instructions, and when the program instructions are executed, the processor 502 can execute a marine visual SLAM pose estimation method.

[0166] The processor 502 is used to provide computing and control capabilities to support the operation of the entire computer device 500 .

[0167] The internal memory 504 provides an environment for the operation of the computer program 5032 in the non-volatile storage medium 503. When the computer program 5032 is executed by the processor 502, the processor 502 can execute a marine visual SLAM pose estimation method.

[0168] The network interface 505 is used to communicate with other devices over the network. Figure 7 The structure shown in the figure is merely a block diagram of a portion of the structure related to the solution of the present application, and does not constitute a limitation on the computer device 500 to which the solution of the present application is applied. The specific computer device 500 may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0169] The processor 502 is used to run the computer program 5032 stored in the memory to implement the following steps:

[0170] Acquire a video to be measured; input the video to be measured into a target recognition model for target recognition to obtain target area information; extract ORB features from the target area information to obtain a target feature point set; select a key frame and extract the ORB features corresponding to the key frame to obtain a new feature point set; determine whether feature point tracking failure occurs; if feature point tracking failure occurs, perform pose estimation and reprojection error optimization based on the new feature point set combined with the target feature point set to obtain pose information; and output the pose information.

[0171] The target recognition model is obtained by training the YOLOv5 network using sea images with ship labels as sample sets.

[0172] In one embodiment, after implementing the step of determining whether feature point tracking failure occurs, the processor 502 further implements the following steps:

[0173] If feature point tracking failure does not occur, pose estimation is performed based on the target feature point set to obtain pose information.

[0174] In one embodiment, when the processor 502 implements the step of extracting ORB features from the target area information to obtain a target feature point set, the processor 502 specifically implements the following steps:

[0175] Extract ORB features from target area information of a previous frame image to obtain a first set; extract ORB features from target area information of a next frame image to obtain a second set; calculate the distance between feature points of the first set and the second set by Hamming distance matching to obtain the Hamming distance of each feature point; perform bidirectional matching and screening on the first set and the second set to obtain matching feature points; sort the matching feature points according to the Hamming distance to obtain a sorting result; screen the matching feature points in the sorting result that are not greater than a set threshold to obtain a target feature point set.

[0176] In one embodiment, when the processor 502 implements the step of selecting a key frame and extracting the ORB feature corresponding to the key frame to obtain a new feature point set, the processor 502 specifically implements the following steps:

[0177] Determine an initial key frame and perform ORB feature extraction to obtain a first extraction result; determine a second key frame according to preset time and feature point number conditions, and perform ORB feature extraction to obtain a second extraction result; determine a third key frame according to preset time and feature point number conditions, and perform ORB feature extraction to obtain a third extraction result; determine a new feature point set based on the first extraction result, the second extraction result and the third extraction result.

[0178] In one embodiment, when the processor 502 implements the step of performing pose estimation and reprojection error optimization according to the new feature point set combined with the target feature point set to obtain pose information, the processor 502 specifically implements the following steps:

[0179] The new feature point set is matched with the target feature point set to update the target feature point set; and a position and posture matrix is ​​calculated using a least square method according to the target feature point set to obtain position and posture information.

[0180] It should be understood that in the embodiment of the present application, the processor 502 may be a central processing unit (CPU), and the processor 502 may also be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Among them, the general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.

[0181] It can be understood by those skilled in the art that all or part of the processes in the method for implementing the above embodiment can be completed by instructing the relevant hardware through a computer program. The computer program includes program instructions, and the computer program can be stored in a storage medium, which is a computer-readable storage medium. The program instructions are executed by at least one processor in the computer system to implement the process steps of the embodiment of the above method.

[0182] Therefore, the present invention also provides a storage medium. The storage medium may be a computer-readable storage medium. The storage medium stores a computer program, wherein when the computer program is executed by a processor, the processor executes the following steps:

[0183] Acquire a video to be measured; input the video to be measured into a target recognition model for target recognition to obtain target area information; extract ORB features from the target area information to obtain a target feature point set; select a key frame and extract the ORB features corresponding to the key frame to obtain a new feature point set; determine whether feature point tracking failure occurs; if feature point tracking failure occurs, perform pose estimation and reprojection error optimization based on the new feature point set combined with the target feature point set to obtain pose information; and output the pose information.

[0184] The target recognition model is obtained by training the YOLOv5 network using sea images with ship labels as sample sets.

[0185] In one embodiment, after executing the computer program to implement the step of determining whether feature point tracking failure occurs, the processor further implements the following steps:

[0186] If feature point tracking failure does not occur, pose estimation is performed based on the target feature point set to obtain pose information.

[0187] In one embodiment, when the processor executes the computer program to implement the step of extracting ORB features from the target area information to obtain a target feature point set, the processor specifically implements the following steps:

[0188] Extract ORB features from target area information of a previous frame image to obtain a first set; extract ORB features from target area information of a next frame image to obtain a second set; calculate the distance between feature points of the first set and the second set by Hamming distance matching to obtain the Hamming distance of each feature point; perform bidirectional matching and screening on the first set and the second set to obtain matching feature points; sort the matching feature points according to the Hamming distance to obtain a sorting result; screen the matching feature points in the sorting result that are not greater than a set threshold to obtain a target feature point set.

[0189] In one embodiment, when the processor executes the computer program to implement the step of selecting key frames and extracting ORB features corresponding to the key frames to obtain a new feature point set, the processor specifically implements the following steps:

[0190] Determine an initial key frame and perform ORB feature extraction to obtain a first extraction result; determine a second key frame according to preset time and feature point number conditions, and perform ORB feature extraction to obtain a second extraction result; determine a third key frame according to preset time and feature point number conditions, and perform ORB feature extraction to obtain a third extraction result; determine a new feature point set based on the first extraction result, the second extraction result and the third extraction result.

[0191] In one embodiment, when the processor executes the computer program to implement the step of performing pose estimation and reprojection error optimization according to the new feature point set combined with the target feature point set to obtain pose information, the processor specifically implements the following steps:

[0192] The new feature point set is matched with the target feature point set to update the target feature point set; and a position and posture matrix is ​​calculated using a least square method according to the target feature point set to obtain position and posture information.

[0193] The storage medium may be a USB flash drive, a mobile hard disk, a read-only memory (ROM), a magnetic disk, or an optical disk, etc., which are computer-readable storage media that can store program codes.

[0194] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in terms of function in the above description. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.

[0195] In the several embodiments provided by the present invention, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of each unit is only a logical function division, and there may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed.

[0196] The steps in the method of the embodiment of the present invention can be adjusted in order, combined and deleted according to actual needs. The units in the device of the embodiment of the present invention can be combined, divided and deleted according to actual needs. In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0197] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a storage medium. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, terminal, or network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention.

[0198] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed by the present invention, and these modifications or replacements should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention shall be based on the protection scope of the claims.

Claims

1. A method for estimating a pose of a marine visual SLAM, characterized in that: include: Get the video to be measured; Inputting the to-be-measured distance video into a target recognition model for target recognition to obtain target area information; Extracting ORB features from the target area information to obtain a target feature point set; Select key frames and extract the ORB features corresponding to the key frames to obtain a new feature point set; Determine whether feature point tracking failure occurs; If feature point tracking fails, pose estimation and reprojection error optimization are performed based on the new feature point set combined with the target feature point set to obtain pose information; Outputting the posture information; The step of extracting ORB features from the target area information to obtain a target feature point set includes: Extracting ORB features from target area information of the previous frame image to obtain a first set; Extracting ORB features from target area information of the next frame image to obtain a second set; The distance between the feature points of the first set and the second set is calculated by using the Hamming distance matching method to obtain the Hamming distance of each feature point; Performing bidirectional matching and screening on the first set and the second set to obtain matching feature points; Sorting the matching feature points according to the Hamming distance to obtain a sorting result; Filtering the matching feature points in the sorting results that are not greater than a set threshold to obtain a target feature point set; The step of selecting a key frame and extracting the ORB features corresponding to the key frame to obtain a new feature point set includes: Determine an initial key frame, and perform ORB feature extraction to obtain a first extraction result; Determine the second key frame according to the preset time and feature point number conditions, and perform ORB feature extraction to obtain a second extraction result; Determine the third key frame according to the preset time and feature point number conditions, and perform ORB feature extraction to obtain a third extraction result; Determine a new feature point set according to the first extraction result, the second extraction result and the third extraction result; The first frame is selected as the initial key frame K1, and feature points are extracted from the frame image and set as the first extraction result L0; when the second key frame K2 is selected, it is ensured that there are a sufficient number of matching feature points L1 between it and the initial key frame K1; similarly, when the third key frame K3 is selected, it is ensured that there are at least L2 matching points between it and the initial key frame K2.

2. The marine visual SLAM pose estimation method according to claim 1, wherein The target recognition model is obtained by training the YOLOv5 network using marine images with ship labels as sample sets.

3. The marine visual SLAM pose estimation method according to claim 1, wherein The determining whether feature point tracking failure occurs includes: If feature point tracking failure does not occur, pose estimation is performed based on the target feature point set to obtain pose information.

4. The marine visual SLAM pose estimation method according to claim 1, wherein The performing pose estimation and reprojection error optimization according to the new feature point set combined with the target feature point set to obtain pose information includes: Matching the new feature point set with the target feature point set to update the target feature point set; The position and posture matrix is ​​calculated using the least square method according to the target feature point set to obtain the position and posture information.

5. A marine visual SLAM pose estimation device, characterized in that: include: A video acquisition unit, used to acquire the video to be measured; An identification unit, used for inputting the to-be-measured distance video into a target identification model for target identification to obtain target area information; An extraction unit, used to extract ORB features from the target area information to obtain a target feature point set; A selection unit is used to select a key frame and extract the ORB feature corresponding to the key frame to obtain a new feature point set; A judgment unit, used to judge whether feature point tracking failure occurs; A posture calculation unit, used for performing posture estimation and reprojection error optimization based on the new feature point set combined with the target feature point set to obtain posture information if feature point tracking fails; An output unit, used for outputting the posture information; The step of extracting ORB features from the target area information to obtain a target feature point set includes: Extracting ORB features from target area information of the previous frame image to obtain a first set; Extracting ORB features from target area information of the next frame image to obtain a second set; The distance between the feature points of the first set and the second set is calculated by using the Hamming distance matching method to obtain the Hamming distance of each feature point; Performing bidirectional matching and screening on the first set and the second set to obtain matching feature points; Sorting the matching feature points according to the Hamming distance to obtain a sorting result; Filtering the matching feature points in the sorting results that are not greater than a set threshold to obtain a target feature point set; The step of selecting a key frame and extracting the ORB features corresponding to the key frame to obtain a new feature point set includes: Determine an initial key frame, and perform ORB feature extraction to obtain a first extraction result; Determine the second key frame according to the preset time and feature point number conditions, and perform ORB feature extraction to obtain a second extraction result; Determine the third key frame according to the preset time and feature point number conditions, and perform ORB feature extraction to obtain a third extraction result; Determine a new feature point set according to the first extraction result, the second extraction result and the third extraction result; The first frame is selected as the initial key frame K1, and feature points are extracted from the frame image and set as the first extraction result L0; when the second key frame K2 is selected, it is ensured that there are a sufficient number of matching feature points L1 between it and the initial key frame K1; similarly, when the third key frame K3 is selected, it is ensured that there are at least L2 matching points between it and the initial key frame K2.

6. The marine visual SLAM pose estimation device according to claim 5, characterized in that: Also includes: The pose estimation unit is used to perform pose estimation according to the target feature point set to obtain pose information if feature point tracking failure does not occur.

7. A computer device, characterized in that: The computer device comprises a memory and a processor, the memory stores a computer program, and the processor implements the method according to any one of claims 1 to 4 when executing the computer program.

8. A storage medium, characterized in that: The storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 4 is implemented.

Citation Information

Patent Citations

  • Stable motion tracking method and stable motion tracking device based on integration of simple camera and IMU (inertial measurement unit) of smart cellphone

    CN105953796A

  • Method, system and device for generating instant positioning and map construction

    CN110634150A