Posture detection method, device, equipment and storage medium

Through the comprehensive utilization of multidimensional motion data and pose voting methods, the problems of inaccurate and insufficient robustness of the pose estimation of visual positioning are solved, and higher positioning accuracy and reliability are achieved.

CN119741374APending Publication Date: 2025-04-01GUANGDONG HUITIAN AEROSPACE TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411859707.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-16
Publication Date
2025-04-01

AI Technical Summary

Technical Problem

The problem of inaccurate pose estimation and insufficient robustness due to noise and complex environments in visual positioning.

Method used

By obtaining the multi-dimensional motion data of the aircraft, including data collected by the inertia measurement unit, navigation satellite system and image acquisition equipment, performing posture calculations, determining multiple posture initial values, and filtering out the target posture initial values ​​through posture voting.

Benefits of technology

Eliminate the limitations of a single sensor and a single algorithm, improve the accuracy and robustness of pose estimation, reduce resource consumption, and effectively deal with visual degradation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119741374A_ABST
    Figure CN119741374A_ABST
Patent Text Reader

Abstract

The present application discloses a posture detection method, device, equipment and storage medium, and discloses a posture detection method, including: obtaining multi-dimensional motion data of an aircraft, the multi-dimensional motion data including: first motion data collected by an inertial measurement unit, second motion data collected by a navigation satellite system and at least one item in an image frame sequence collected by an image acquisition device; performing posture calculation of the aircraft according to the multi-dimensional motion data, and determining multiple posture initial values; performing posture voting on multiple posture initial values, and determining the target posture initial value of the aircraft from multiple posture initial values ​​according to the voting results. Through the above-mentioned method, the limitations of the present application of a single sensor and a single algorithm are eliminated, and at the same time, the target posture initial value is used as the initial value of the subsequent nonlinear optimization, which further accelerates the convergence speed and accuracy of the nonlinear optimization, reduces resource consumption, and can effectively deal with visual degradation, and improve the accuracy and reliability of positioning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to pose detection methods, apparatus, devices and storage media. Background Technology

[0002] Visual localization is a crucial problem in computer vision, its core being the estimation of camera position and orientation using visual feature points. Theoretically, a small number of visual feature point pairs are sufficient to determine the relative positional relationship between two cameras. However, in practical applications, due to observation noise, relying solely on a small number of feature points often fails to yield stable and accurate results. Therefore, optimization and filtering methods have become two mainstream approaches for solving visual localization problems. However, in practical applications, sensor noise, limitations of feature point extraction algorithms, and the dynamic characteristics of the observed object introduce a significant amount of non-normally distributed noise, which is difficult to completely eliminate using traditional nonlinear optimization methods. This adds additional challenges to visual localization, severely impacting its accuracy and robustness.

[0003] The above content is only used to help understand the technical solution of this application and does not represent an admission that the above content is prior art. Summary of the Invention

[0004] The main objective of this application is to provide a pose detection method, apparatus, device, and storage medium, which aims to solve the technical problems of inaccurate pose estimation and insufficient robustness in visual positioning caused by noise and complex environments.

[0005] To achieve the above objectives, this application proposes a pose detection method, the method comprising:

[0006] Acquire multidimensional motion data of the aircraft, the multidimensional motion data including at least one of the following: first motion data collected by the inertial measurement unit, second motion data collected by the navigation satellite system, and image frame sequence collected by the image acquisition device;

[0007] The aircraft's pose is calculated based on the multidimensional motion data to determine multiple initial pose values;

[0008] A pose vote is performed on multiple initial pose values, and the target pose initial value of the aircraft is determined from among the multiple initial pose values ​​based on the voting results.

[0009] In one embodiment, the step of calculating the aircraft's pose based on the multidimensional motion data and determining multiple initial pose values ​​includes:

[0010] Based on the first motion data, perform integral calculations to determine the initial value of the first pose;

[0011] Based on the first motion data and the second motion data, the pose is calculated to determine the initial value of the second pose.

[0012] The pose is calculated based on the image frame sequence, the first motion data, and the historical pose initial values ​​of adjacent historical moments to determine the third pose initial value.

[0013] Based on the first motion data and the motion information of adjacent historical moments, the pose is calculated to determine the initial value of the fourth pose.

[0014] The pose is calculated based on the image frame sequence and the target visual observation algorithm to determine the initial value of the fifth pose.

[0015] In one embodiment, the step of calculating the pose based on the image frame sequence, the first motion data, and the historical pose initial values ​​of adjacent time points to determine the third pose initial value includes:

[0016] Feature point matching is performed on adjacent image frames in the image frame sequence to obtain multiple matching pairs;

[0017] Feature point filtering is performed on each matching point pair to obtain multiple target feature point pairs;

[0018] The angular velocity data corresponding to the adjacent image frames are determined based on the first motion data.

[0019] The relative attitude transformation of the aircraft is determined based on the angular velocity data and multiple target feature points;

[0020] The pose is calculated based on the adjacent pose transformations and the historical pose initial values ​​of adjacent historical moments to determine the third pose initial value.

[0021] In one embodiment, the step of calculating the pose based on the first motion data and the motion information of adjacent historical moments to determine the initial value of the fourth pose includes:

[0022] The rotation update information at the current observation time is determined based on the angular velocity data in the first motion data;

[0023] The historical motion speed is determined based on the motion information of adjacent historical moments;

[0024] The relative attitude transformation of the aircraft is determined based on the historical motion velocity and the rotation update information;

[0025] The pose is calculated based on the adjacent pose transformations and the historical pose initial values ​​of adjacent historical moments to determine the fourth pose initial value.

[0026] In one embodiment, the step of calculating the pose based on the image frame sequence and the target visual observation algorithm to determine the initial value of the fifth pose includes:

[0027] Feature point matching is performed on adjacent image frames in the image frame sequence to obtain multiple matching pairs;

[0028] Based on the target consistency algorithm in the target visual observation algorithm, feature points are filtered for each matching point pair to obtain multiple target feature point pairs;

[0029] The relative pose transformation of the aircraft is determined by performing pose calculations based on the target perspective problem algorithm and multiple target feature point pairs in the target visual observation algorithm.

[0030] The pose is calculated based on the adjacent pose transformations and the historical pose initial values ​​of adjacent historical moments to determine the fifth pose initial value.

[0031] In one embodiment, the step of performing pose voting on multiple initial pose values ​​and determining the target initial pose value of the aircraft from the multiple initial pose values ​​based on the voting results includes:

[0032] Perform reprojection calculations on each initial pose value to determine the reprojection position corresponding to each initial pose value;

[0033] The error is calculated based on the reprojection position and the actual detection position corresponding to each initial pose value to determine the reprojection error corresponding to each initial pose value.

[0034] The target pose initial value of the aircraft is determined from multiple pose initial values ​​based on the reprojection error corresponding to each pose initial value.

[0035] In one embodiment, the step of determining the target pose initial value of the aircraft from multiple pose initial values ​​based on the reprojection error corresponding to each pose initial value includes:

[0036] The reprojection errors corresponding to each initial pose value are sorted, and the candidate initial pose value is determined from multiple initial pose values ​​based on the sorting results.

[0037] When the detection method for the candidate pose initial value is a visual detection method, at least one comparison pose initial value is determined from multiple pose initial values ​​according to the detection method of each pose initial value.

[0038] Calculate the initial value difference between the initial value of the compared pose and the initial value of the candidate pose;

[0039] When the initial value difference is less than a preset threshold, the target pose initial value of the aircraft is determined based on the candidate pose initial value.

[0040] In addition, to achieve the above objectives, this application also proposes a pose detection device, which includes: an acquisition module for acquiring multidimensional motion data of an aircraft, wherein the multidimensional motion data includes at least one of the following: first motion data collected by an inertial measurement unit, second motion data collected by a navigation satellite system, and an image frame sequence collected by an image acquisition device;

[0041] The calculation module is used to calculate the aircraft's pose based on the multidimensional motion data and determine multiple initial pose values.

[0042] The voting module is used to vote on multiple initial pose values ​​and determine the target initial pose value of the aircraft from among the multiple initial pose values ​​based on the voting results.

[0043] In addition, to achieve the above objectives, this application also proposes a pose detection device, the device comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the pose detection method described above.

[0044] In addition, to achieve the above objectives, this application also proposes a storage medium, which is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of the pose detection method described above.

[0045] In addition, to achieve the above objectives, this application also provides a computer program product, which includes a computer program that, when executed by a processor, implements the steps of the pose detection method described above.

[0046] This application provides a pose detection method. The method acquires multidimensional motion data of an aircraft, including at least one of the following: first motion data collected by an inertial measurement unit, second motion data collected by a navigation satellite system, and an image frame sequence collected by an image acquisition device. The method calculates the aircraft's pose based on the multidimensional motion data to determine multiple initial pose values. A pose vote is performed on these initial pose values, and a target initial pose value is determined from among them based on the voting results. By constructing initial pose values ​​for the aircraft based on multidimensional motion data collected by multiple sensors, and voting on these initial pose values ​​to select the most accurate initial pose value as the target initial pose value, this method eliminates the limitations of using a single sensor and a single algorithm. Furthermore, the target initial pose value serves as the initial value for subsequent nonlinear optimization, further accelerating the convergence speed and accuracy of the nonlinear optimization, reducing resource consumption, and effectively addressing visual degradation, thereby improving the accuracy, reliability, and quality of positioning and visual observation. Attached Figure Description

[0047] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0048] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0049] Figure 1 This is a flowchart illustrating an embodiment of the pose detection method of this application.

[0050] Figure 2 This is a flowchart illustrating Embodiment 2 of the pose detection method of this application;

[0051] Figure 3 A simplified flowchart of Embodiment 2 of this application;

[0052] Figure 4 This is a schematic diagram of the module structure of the pose detection device according to an embodiment of this application;

[0053] Figure 5 This is a schematic diagram of the device structure of the hardware operating environment involved in the pose detection method in the embodiments of this application.

[0054] The purpose, features, and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0055] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.

[0056] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.

[0057] The main solution of this application embodiment is: to acquire multi-dimensional motion data of the aircraft, the multi-dimensional motion data including at least one of the following: first motion data collected by the inertial measurement unit, second motion data collected by the navigation satellite system, and image frame sequence collected by the image acquisition device; to calculate the pose of the aircraft based on the multi-dimensional motion data and determine multiple initial pose values; to vote on the multiple initial pose values ​​and determine the target initial pose value of the aircraft from the multiple initial pose values ​​based on the voting result.

[0058] The core of visual localization is visual feature points, which can be understood as visual observation. Theoretically, eight pairs of visual feature points are sufficient to solve the relative positional relationship between two cameras. However, to cope with observation noise, optimization and filtering methods have emerged, which are currently the two mainstream approaches in visual localization algorithms. But the noise in visual observation depends not only on the sensor itself (system noise) and is limited by feature point extraction algorithms, but also on noise related to the properties of the observed object (such as the object's motion, material, texture, etc.). This noise often does not follow a normal distribution, making it difficult to eliminate through nonlinear optimization.

[0059] This application integrates information from IMU (Inertial Measurement Unit) and GNSS (Global Navigation Satellite System) to minimize the influence of external factors, improve the quality of visual observation, and detect visual degradation (such as extremely small parallax, insufficient number of feature points, and large-scale dynamic feature points, where accurate pose and scene information cannot be obtained by vision alone). Simultaneously, mathematical models (algorithms) of different sensor combinations are used to construct camera poses, and finally, the accuracy of different poses is measured by filtered visual observations.

[0060] This application constructs initial pose values ​​for an aircraft based on multidimensional motion data collected by multiple sensors, and selects the most accurate initial pose value as the target pose initial value of the aircraft through voting among multiple initial pose values. This eliminates the limitations of a single sensor and a single algorithm. At the same time, the target pose initial value is used as the initial value for subsequent nonlinear optimization, which further accelerates the convergence speed and accuracy of nonlinear optimization, reduces resource consumption, and can effectively cope with visual degradation, thereby improving the accuracy and reliability of positioning and the quality of visual observation.

[0061] It should be noted that the executing entity in this embodiment can be a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or an electronic device or pose detection device capable of performing the above functions. The following description uses a pose detection device as an example to illustrate this embodiment and the subsequent embodiments.

[0062] Based on this, embodiments of this application provide a pose detection method, referring to... Figure 1 , Figure 1 This is a flowchart illustrating the first embodiment of the pose detection method of this application.

[0063] In this embodiment, the pose detection method includes steps S10 to S30:

[0064] Step S10: Obtain multidimensional motion data of the aircraft. The multidimensional motion data includes at least one of the following: first motion data collected by the inertial measurement unit, second motion data collected by the navigation satellite system, and image frame sequence collected by the image acquisition device.

[0065] It should be noted that during the aircraft's movement, multiple sensors will be used to observe its motion for positioning and other tasks. These sensors include, but are not limited to, IMU, GNSS, and image acquisition devices. In this embodiment, the navigation satellite system refers to GNSS; the image acquisition device refers to a binocular camera, but it can also be other devices capable of acquiring images of the aircraft. This embodiment does not impose any limitations on this.

[0066] It is understood that an IMU (Integrated Measurement Unit) includes, but is not limited to, accelerometers, gyroscopes, and magnetometers, capable of providing high-frequency attitude angle and acceleration information. The first motion data (i.e., IMU data) includes, but is not limited to, the aircraft's angular velocity, linear acceleration, and magnetic field strength. The second motion data includes, but is not limited to, the aircraft's absolute position, instantaneous velocity vector, and time information. An image frame sequence contains a series of continuous images acquired by an image acquisition device; each image is called a frame. Multiple frames in the image frame sequence contain the aircraft, and the aircraft's attitude changes can be estimated through the image frame sequence.

[0067] Step S20: Calculate the aircraft's pose based on the multidimensional motion data to determine multiple initial pose values.

[0068] It should be noted that, based on one item of multidimensional motion data, multiple initial pose values ​​of the aircraft at the current observation time can be obtained through different algorithms / models and combined with different information; or, based on the combination of two items of multidimensional motion data, multiple initial pose values ​​can be obtained through corresponding algorithms / models. For example, integrating the first motion data between two adjacent image frames can yield six degrees of freedom inter-frame pose initial values, which, combined with the aircraft's pose initial value at the previous observation time, can yield the aircraft's pose initial value at the current observation time; based on the Two-Point-Ransac algorithm (two-point random sample consensus algorithm), filtering feature points of two adjacent image frames in the image frame sequence, and combining them with the angular velocity in the first motion data, the relative pose transformation between the two adjacent image frames can be output, which, combined with the aircraft's pose initial value at the previous observation time, can yield the aircraft's pose initial value at the current observation time; based on the Two-Point-Ransac algorithm, integrating the ... multiple initial pose values ​​of the aircraft can be obtained; based on the Two-Point-Ransac algorithm, integrating the feature points of two adjacent image frames in the image frame sequence, multiple initial pose values ​​of the aircraft can be obtained, which can yield the aircraft's pose initial value at the current observation time; based on the Two-Point-Ransac algorithm, integrating the feature points of two adjacent image frames in the image frame sequence, multiple initial pose values ​​of the aircraft can be obtained, which can yield the aircraft's pose initial value at the current observation time; based on the Two-Point-Ransac algorithm, integrating the feature points of two adjacent image frames in the image frame sequence, multiple initial pose values ​​of the aircraft can be obtained, which can Feature points from adjacent image frames are filtered. Based on the filtered feature points, and combined with PNP (Perspective-n-Point) algorithm, the initial pose value of six degrees of freedom can be obtained. Combined with the initial pose value of the aircraft at the previous observation time, the initial pose value of the aircraft at the current observation time can be obtained. Based on the uniform motion model of IMU integration, the rotation of three degrees of freedom is provided by the first motion data. The relative displacement of the aircraft is derived by the velocity at the previous observation time. Combined with the initial pose value of the aircraft at the previous observation time, the initial pose value of the aircraft at the current observation time can be obtained. The initial pose value of the aircraft at the current observation time is provided by filtering the second motion data and the first motion data.

[0069] In this embodiment, the aforementioned methods can all yield corresponding initial pose values, and the initial pose value of the aircraft at the current observation time can also be calculated using other methods. In this embodiment, by calculating the aircraft's pose based on multidimensional motion data, at least two initial pose values ​​of the aircraft can be obtained. This embodiment does not limit the specific method used to obtain the corresponding initial pose values, nor does it limit the number of initial pose values ​​that can be obtained. The initial pose value includes the aircraft's position information and attitude information. However, to avoid unstable degradation of the initial pose values ​​provided by vision, when a visually detected initial pose value exists, it is preferable to also have initial pose values ​​obtained through other detection methods besides vision, such as initial pose values ​​obtained through the first motion data detection, to lay the foundation for subsequent initial pose value characterization.

[0070] Step S30: Perform pose voting on multiple initial pose values, and determine the target pose initial value of the aircraft from among the multiple initial pose values ​​based on the voting results.

[0071] It should be noted that when multiple initial pose values ​​exist, for each initial pose value, the known 3D feature points are projected onto the current image frame, and the difference between the actual detection position and the predicted position of these feature points is calculated to obtain the reprojection error corresponding to each initial pose value. In this embodiment, the smaller the reprojection error, the closer the initial pose value is to the true value.

[0072] It is understandable that, among the multiple initial pose values, the initial pose value with the smallest reprojection error is selected as the target pose initial value of the aircraft. At the same time, if the target pose initial value is obtained by detecting the image frame sequence, the difference between the target pose initial value and the pose initial value obtained by detecting the first motion data is less than a set threshold.

[0073] In this embodiment, in addition to the methods described above, other methods can be used for initial pose voting, such as weighted averaging of initial pose values ​​to obtain the final target initial pose value. Furthermore, the various initial pose detection methods involved in this embodiment can be calculated using filtering to further improve the accuracy of the results.

[0074] In one feasible implementation, step S30 may include steps A11 to A13:

[0075] Step A11: Perform reprojection calculations on each initial pose value to determine the reprojection position corresponding to each initial pose value.

[0076] It should be noted that, for each initial pose value, the rotation matrix and translation vector in the initial pose value are used to project the known 3D feature points into the current image frame, converting the 3D feature points into 2D points in the image coordinate system, thereby obtaining the reprojection position of each 3D feature point in the current image frame.

[0077] Step A12: Calculate the error based on the reprojection position corresponding to each initial pose value and the actual detection position corresponding to each initial pose value, and determine the reprojection error corresponding to each initial pose value.

[0078] It should be noted that the actual detection position refers to the known 3D feature points used to calculate the reprojection position. In the current image frame, the corresponding 2D feature point positions are directly extracted using a feature point detection algorithm. For each initial pose value, the distance difference between the reprojection position and the actual detection position is calculated to obtain the reprojection error corresponding to the initial pose value. In this embodiment, the error calculation method includes, but is not limited to, Euclidean distance, root mean square of reprojection error, and other calculation methods; this embodiment does not impose any limitations on these methods.

[0079] Step A13: Determine the target pose initial value of the aircraft from multiple pose initial values ​​based on the reprojection error corresponding to each pose initial value.

[0080] It should be noted that, based on the reprojection error corresponding to each initial pose value, the initial pose value that is closest to the actual situation is selected as the final target pose initial value.

[0081] In one feasible implementation, step A13 may include steps B11 to B13:

[0082] Step B11: Sort the reprojection errors corresponding to each initial pose value, and determine the candidate initial pose value from multiple initial pose values ​​based on the sorting results.

[0083] It should be noted that when there are multiple initial pose values, the reprojection error corresponding to each initial pose value is sorted to obtain the sorting result. The sorting can be in descending order or in ascending order, and this embodiment does not limit this.

[0084] Understandably, after sorting, the initial pose value with the smallest reprojection error is selected as the candidate initial pose value. If the candidate initial pose value is not obtained through image frame sequence detection, i.e., it is obtained through any of the following methods, then the candidate initial pose value is used as the target initial pose value of the aircraft: Integrating the first motion data between two adjacent image frames to obtain a six-degree-of-freedom inter-frame pose initial value, and combining it with the aircraft's pose initial value at the previous observation time to obtain the aircraft's pose initial value at the current observation time; Using a uniform motion model based on IMU integration, providing three degrees of freedom rotation through the first motion data, deriving the relative displacement of the aircraft through the velocity at the previous observation time, and combining it with the aircraft's pose initial value at the previous observation time to obtain the aircraft's pose initial value at the current observation time; Using filtered second motion data and first motion data to provide the aircraft's pose initial value at the current observation time.

[0085] Step B12: When the detection method of the candidate pose initial value is visual detection, at least one comparison pose initial value is determined from multiple pose initial values ​​according to the detection method of each pose initial value.

[0086] It should be noted that if the candidate pose difference is obtained through any of the following methods, the detection method for determining the initial pose value is a visual detection method: Based on the Two-Point-Ransac algorithm, feature points of two adjacent image frames in the image frame sequence are filtered, and combined with the angular velocity in the first motion data, the relative pose transformation between the two adjacent image frames is output. Combined with the initial pose value of the aircraft at the previous observation time, the initial pose value of the aircraft at the current observation time is obtained; Based on the Two-Point-Ransac algorithm, feature points of two adjacent image frames in the image frame sequence are filtered, and based on the filtered feature points, combined with PNP (Perspective-n-Point), the initial pose value of six degrees of freedom can be obtained. Combined with the initial pose value of the aircraft at the previous observation time, the initial pose value of the aircraft at the current observation time can be obtained.

[0087] It is understandable that if the detection method for the candidate initial pose value is a visual detection method, then according to the detection method of each initial pose value, the initial pose value obtained by the first motion data detection method is selected from multiple initial pose values, and this initial pose value is used as the comparison initial pose value. In this embodiment, the first motion data detection method includes any of the following methods: integrating the first motion data between two adjacent image frames to obtain a six-degree-of-freedom inter-frame initial pose value, and combining it with the initial pose value of the aircraft at the previous observation time to obtain the initial pose value of the aircraft at the current observation time; or using a uniform motion model based on IMU integration, providing a three-degree-of-freedom rotation through the first motion data, deriving the relative displacement of the aircraft through the velocity at the previous observation time, and combining it with the initial pose value of the aircraft at the previous observation time to obtain the initial pose value of the aircraft at the current observation time.

[0088] Step B13: Calculate the initial value difference between the initial value of the comparison pose and the initial value of the candidate pose.

[0089] Step B14: When the initial value difference is less than a preset threshold, determine the target pose initial value of the aircraft based on the candidate pose initial value.

[0090] It should be noted that the initial value difference between the initial value of the comparison pose and the initial value of the candidate pose is calculated. If the initial value difference is less than a preset threshold, the initial value of the candidate pose is used as the target pose initial value of the aircraft. When there are multiple comparison pose initial values, if the initial value difference between the initial value of the candidate pose and each comparison pose initial value is less than the preset threshold, the initial value of the candidate pose is used as the target pose initial value of the aircraft, thereby avoiding the occurrence of unstable degradation of the pose initial value provided by vision.

[0091] It is understandable that if the difference between the initial value of the candidate pose and the initial value of the compared pose is not less than a preset threshold, the candidate pose initial value will be filtered out and the process will re-enter steps B11 to B14 until the target pose initial value of the aircraft is obtained.

[0092] This embodiment provides a pose detection method. This embodiment acquires multi-dimensional motion data of an aircraft, including at least one of the following: first motion data collected by an inertial measurement unit, second motion data collected by a navigation satellite system, and an image frame sequence collected by an image acquisition device. The method calculates the aircraft's pose based on the multi-dimensional motion data to determine multiple initial pose values. A pose vote is then performed on these multiple initial pose values, and the target initial pose value of the aircraft is determined from among them based on the voting results. Through this method, initial pose values ​​of the aircraft are constructed based on multi-dimensional motion data collected by multiple sensors, and the most accurate initial pose value is selected as the target initial pose value by voting on these multiple initial pose values. This eliminates the limitations of using a single sensor and a single algorithm. Furthermore, the target initial pose value serves as the initial value for subsequent nonlinear optimization, further accelerating the convergence speed and accuracy of the nonlinear optimization, reducing resource consumption, and effectively addressing visual degradation, thereby improving the accuracy, reliability, and quality of positioning and visual observation.

[0093] Based on the first embodiment of this application, in the second embodiment of this application, the content that is the same as or similar to that in the first embodiment described above can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 2 Step S20, the pose detection method further includes steps S21 to S25:

[0094] Step S21: Perform integral calculation based on the first motion data to determine the initial value of the first pose.

[0095] It should be noted that by integrating the angular velocity data provided by the first motion data, the rotational change (i.e., the rotation matrix R) from the previous observation time to the current time is obtained; by integrating the acceleration data provided by the first motion data, the relative displacement and velocity changes are obtained. The rotation matrix R, relative displacement, and velocity changes are applied to the initial pose value of the previous observation time to obtain the initial pose value of the current observation time. In this embodiment, the previous observation time is the acquisition time corresponding to the previous image frame adjacent to the current image frame, and the current image frame is the image frame acquired at the current observation time.

[0096] Step S22: Perform pose calculation based on the first motion data and the second motion data to determine the initial value of the second pose.

[0097] It should be noted that extended Kalman filtering (EKF), unscented Kalman filtering (UKF), or other multi-sensor fusion algorithms are used to combine the high-frequency attitude and acceleration information provided by the first motion data with the absolute position and velocity information provided by the second motion data. The weights are dynamically adjusted by the filter, taking into account the importance of the old and new information, and correcting the accumulated error of the first motion data, thereby providing a more stable and accurate pose estimation. Finally, based on the output initial absolute pose value containing six degrees of freedom, the initial second pose value of the aircraft at the current observation time is obtained.

[0098] Step S23: Perform pose calculation based on the image frame sequence, the first motion data, and the historical pose initial values ​​of adjacent historical moments to determine the third pose initial value.

[0099] It should be noted that "historical adjacent moments" refers to the acquisition moment corresponding to the previous image frame adjacent to the current image frame, i.e., the previous observation moment, and "historical initial pose value" refers to the initial pose value at the previous observation moment. In this embodiment, feature points of two adjacent image frames in the image frame sequence are filtered based on the Two-Point-Ransac algorithm (two-point random sample consensus algorithm). Combined with the angular velocity in the first motion data, the relative pose transformation between the two adjacent image frames is output. Combined with the initial pose value of the aircraft at the previous observation moment, the third initial pose value of the aircraft at the current observation moment is obtained.

[0100] In one feasible implementation, step S23 may further include steps C11 to C15:

[0101] Step C11: Feature point matching is performed on adjacent image frames in the image frame sequence to obtain multiple matching pairs.

[0102] It should be noted that adjacent image frames include the current image frame acquired at the current observation time and the previous image frame adjacent to the current image frame. Feature points are detected in the current image frame and the previous image frame, and matching algorithms (such as the FLANN algorithm and the BFMatcher algorithm) are used to find possible correspondences between the two image frames, thereby obtaining multiple matching pairs.

[0103] Step C12: Feature point filtering is performed on each matching point pair to obtain multiple target feature point pairs.

[0104] It should be noted that the Two-Point-Ransac algorithm is used to select the most reliable interior points from all matching pairs and remove outliers, thereby obtaining multiple target feature point pairs.

[0105] Step C13: Determine the angular velocity data corresponding to the adjacent image frames based on the first motion data.

[0106] It should be noted that since the first motion data contains IMU data corresponding to multiple observation times, the first motion data is filtered to obtain the angular velocity data corresponding to adjacent image frames.

[0107] Step C14: Determine the relative attitude transformation of the aircraft based on the angular velocity data and multiple target feature point pairs.

[0108] It should be noted that the mean of the angular velocity data is calculated and multiplied by time to obtain the rotation matrix R from the previous observation time to the current observation time. Then, using the target feature points, the feature points of the previous image frame are projected onto the current image frame through the rotation matrix. At this point, the feature points of the previous image frame and the matching feature points of the current image frame differ only in translation. The translation change t is then obtained by iteratively solving using RANSAC. In this embodiment, the relative pose transformation includes the rotation matrix R and the translation change t from the previous observation time to the current observation time.

[0109] Step C15: Perform pose calculation based on the adjacent pose transformations and the historical pose initial values ​​of adjacent historical moments to determine the third pose initial value.

[0110] It should be noted that the relative pose transformation is applied to the historical pose initial value to obtain the third pose initial value of the aircraft at the current observation time.

[0111] Step S24: Perform pose calculation based on the first motion data and the motion information of adjacent historical moments to determine the initial value of the fourth pose.

[0112] It should be noted that motion information includes, but is not limited to, parameters such as the aircraft's position, velocity, and acceleration, which can be obtained through IMU, GNSS, and other methods. This embodiment does not impose any limitations on this. In this embodiment, a uniform motion model based on IMU integration provides three degrees of freedom rotation through the first motion data, derives the aircraft's relative displacement through the velocity at the previous observation time, and combines the initial pose value of the aircraft at the previous observation time to obtain the initial pose value of the aircraft at the current observation time.

[0113] In one feasible implementation, step S24 may further include steps D11 to D14:

[0114] Step D11: Determine the rotation update information at the current observation time based on the angular velocity data in the first motion data.

[0115] Step D12: Determine the historical motion speed based on the motion information of adjacent historical moments.

[0116] Step D13: Determine the relative attitude transformation of the aircraft based on the historical motion speed and the rotation update information.

[0117] Step D14: Perform pose calculation based on the adjacent pose transformations and the historical pose initial values ​​of adjacent historical moments to determine the fourth pose initial value.

[0118] It should be noted that integrating the angular velocity data provided by the first motion data yields the rotational transformation from the previous observation time to the current observation time. In this embodiment, the rotational update information at the current observation time refers to the rotational transformation from the previous observation time to the current observation time.

[0119] Understandably, motion information from adjacent historical moments is extracted to determine the historical velocity at the previous observation moment, and then transformed according to rotation update information to obtain the velocity at the current observation moment. The relative displacement can be calculated using the velocity vector at the current observation moment and the time interval. In this embodiment, relative pose transformation refers to the relative displacement from the previous observation moment to the current observation moment. The time interval refers to the interval between the previous observation moment and the current observation moment.

[0120] In the specific implementation, the relative pose transformation is applied to the historical pose initial value to obtain the fourth pose initial value of the aircraft at the current observation time.

[0121] Step S25: Perform pose calculation based on the image frame sequence and target visual observation algorithm to determine the initial value of the fifth pose.

[0122] It should be noted that in this embodiment, the target visual observation algorithm includes the Two-Point-Ransac algorithm and the PNP algorithm. Based on the Two-Point-Ransac algorithm, feature points of two adjacent image frames in the image frame sequence are filtered. Based on the filtered feature points, combined with PNP (Perspective-n-Point), the initial pose value of six degrees of freedom can be obtained. Combined with the initial pose value of the aircraft at the previous observation time, the initial pose value of the aircraft at the current observation time can be obtained.

[0123] In one feasible implementation, step S25 may further include steps E11 to E14:

[0124] Step E11: Feature point matching is performed on adjacent image frames in the image frame sequence to obtain multiple matching pairs.

[0125] It should be noted that adjacent image frames include the current image frame acquired at the current observation time and the previous image frame adjacent to the current image frame. Feature points are detected in the current image frame and the previous image frame, and matching algorithms (such as the FLANN algorithm and the BFMatcher algorithm) are used to find possible correspondences between the two image frames, thereby obtaining multiple matching pairs.

[0126] Step E12: Based on the target consistency algorithm in the target visual observation algorithm, feature points are filtered for each matching point pair to obtain multiple target feature point pairs.

[0127] It should be noted that in this embodiment, the target consistency algorithm refers to the Two-Point-Ransac algorithm. The Two-Point-Ransac algorithm filters out the most reliable interior points from all matching pairs and removes outliers, thereby obtaining multiple target feature point pairs.

[0128] Step E13: Based on the target perspective problem algorithm in the target visual observation algorithm and multiple target feature point pairs, perform pose calculation to determine the relative pose transformation of the aircraft.

[0129] It should be noted that in this embodiment, the target view algorithm refers to the PNP algorithm. Using the PNP algorithm, the absolute pose (including rotation and translation) of the image acquisition device is calculated based on multiple selected target feature point pairs, and combined with the absolute pose of the image acquisition device at the previous observation time, so as to obtain the relative pose transformation of the aircraft from the previous observation time to the current observation time.

[0130] Step E14: Perform pose calculation based on the adjacent pose transformations and the historical pose initial values ​​of adjacent historical moments to determine the fifth pose initial value.

[0131] It should be noted that the relative pose transformation between the previous observation time and the current observation time is applied to the historical pose initial value to obtain the fifth pose initial value of the aircraft at the current observation time.

[0132] This embodiment provides a pose detection method. This embodiment determines a first initial pose value by performing integral calculation based on the first motion data; determines a second initial pose value by performing pose calculation based on the first and second motion data; determines a third initial pose value by performing pose calculation based on the image frame sequence, the first motion data, and historical initial pose values ​​from adjacent time points; determines a fourth initial pose value by performing pose calculation based on the first motion data and motion information from adjacent time points; and determines a fifth initial pose value by performing pose calculation based on the image frame sequence and a target visual observation algorithm. Through the above methods, initial pose values ​​detected using different methods can be accurately obtained.

[0133] For example, to help understand the implementation flow of the pose detection method obtained by combining this embodiment with the above-described embodiments one / two, please refer to... Figure 3 , Figure 3 A simplified flowchart of a pose detection method is provided, specifically: 1. Front-end sensors (IMU, GNSS, stereo camera) input the corresponding acquired data. 2. Integrate the IMU data between two image frames to obtain the initial pose value of six degrees of freedom between frames, and combine it with the initial pose value of the previous observation time to obtain the initial pose value of the current time. 3. Filter feature points based on the Two-Point-Ransac algorithm. This process also outputs the pose transformation between two frames, and combines it with the initial pose value of the previous observation time to obtain the initial pose value of the current time. Specifically, the mean IMU angular velocity multiplied by time obtains the rotation matrix R between the previous and current frames. Then, the feature points of the previous frame are projected onto the current frame through the rotation matrix R. At this point, the difference between the feature points of the previous frame and the matching feature points of the current frame is a translation t. The translation t is then obtained by iteratively solving using RANSAC. 4. After feature point selection using the Two-Point-Ransac algorithm, the observed PnP is calculated to obtain the initial pose value for six degrees of freedom. This initial pose value is then combined with the initial pose value from the previous observation to obtain the initial pose value for the current time. 5. A uniform motion model based on IMU integration is used. The IMU provides three degrees of freedom for rotation. The relative displacement is derived from the velocity of the previous frame and combined with the initial pose value from the previous observation to obtain the initial pose value for the current time. 6. GNSS and IMU-based filtering provides the initial pose value for six degrees of freedom. 7. The pose values ​​obtained in steps 2-6 are voted on. The selection criteria are: minimum reprojection error. Since the initial pose value provided by vision is subject to unstable degradation, if the visual initial value differs significantly from the initial values ​​from the IMU and uniform motion model, it will not be selected, even if the reprojection error is small.

[0134] The method described in this embodiment is not only applicable to indirect VO / VSLAM (e.g., visual orientation based on feature points), but can also be extended to direct VO / VSLAM (e.g., pixel intensity based). Direct VO / VSLAM constructs an optimization problem based on pixel intensity differences. Since it can theoretically utilize almost all the pixels in each image, its problem size is much larger than that of the indirect method. Good initial values ​​can help more complex optimization problems converge quickly.

[0135] The approach presented in this embodiment offers the following advantages: 1. The fusion of multiple sensors and algorithms eliminates the limitations of a single sensor or algorithm. 2. Even with multiple algorithms, the execution time and space consumption of each algorithm are within a controllable range, and the advantages provided by a good initial value far outweigh the resource consumption. 3. The selection of observations further accelerates the convergence speed and accuracy of nonlinear optimization. 4. Simultaneously, as the core observation, if visual degradation occurs, this algorithm can accurately identify it using multiple sensors. This allows for adjustments to subsequent nonlinear optimization, such as the weighting of visual factors and the method of marginalization.

[0136] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the pose detection method of this application. Any simple transformations based on this technical concept are all within the protection scope of this application.

[0137] This application also provides a pose detection device, please refer to... Figure 4 The pose detection device includes:

[0138] The acquisition module 10 is used to acquire multidimensional motion data of the aircraft, which includes at least one of the following: first motion data acquired by the inertial measurement unit, second motion data acquired by the navigation satellite system, and image frame sequence acquired by the image acquisition device.

[0139] The calculation module 20 is used to calculate the aircraft's pose based on the multidimensional motion data and determine multiple initial pose values.

[0140] The voting module 30 is used to vote on multiple initial pose values ​​and determine the target initial pose value of the aircraft from among the multiple initial pose values ​​based on the voting results.

[0141] Optionally, the computing module 20 is further configured to:

[0142] The first initial pose value is determined by integral calculation based on the first motion data; the second initial pose value is determined by pose calculation based on the first motion data and the second motion data; the third initial pose value is determined by pose calculation based on the image frame sequence, the first motion data, and historical initial pose values ​​at adjacent historical moments; the fourth initial pose value is determined by pose calculation based on the first motion data and motion information at adjacent historical moments; and the fifth initial pose value is determined by pose calculation based on the image frame sequence and the target visual observation algorithm.

[0143] Optionally, the computing module 20 is further configured to:

[0144] Feature point matching is performed on adjacent image frames in the image frame sequence to obtain multiple matching pairs; feature point filtering is performed on each matching pair to obtain multiple target feature point pairs; angular velocity data corresponding to the adjacent image frames is determined based on the first motion data; the relative pose transformation of the aircraft is determined based on the angular velocity data and multiple target feature point pairs; pose calculation is performed based on the adjacent pose transformation and the historical pose initial values ​​of the historical adjacent moments to determine the third pose initial value.

[0145] Optionally, the computing module 20 is further configured to:

[0146] The rotation update information for the current observation time is determined based on the angular velocity data in the first motion data; the historical motion velocity is determined based on the motion information of the historical adjacent time; the relative pose transformation of the aircraft is determined based on the historical motion velocity and the rotation update information; the pose is calculated based on the adjacent pose transformation and the historical pose initial value of the historical adjacent time to determine the fourth pose initial value.

[0147] Optionally, the computing module 20 is further configured to:

[0148] Feature point matching is performed on adjacent image frames in the image frame sequence to obtain multiple matching pairs; feature point filtering is performed on each matching point pair according to the target consistency algorithm in the target visual observation algorithm to obtain multiple target feature point pairs; pose calculation is performed according to the target viewpoint problem algorithm in the target visual observation algorithm and multiple target feature point pairs to determine the relative pose transformation of the aircraft; pose calculation is performed according to the adjacent pose transformation and the historical pose initial value of the historical adjacent time to determine the fifth pose initial value.

[0149] Optionally, the voting module 30 is further configured to:

[0150] Reprojection calculations are performed on each initial pose value to determine the reprojection position corresponding to each initial pose value; error calculations are performed based on the reprojection position and the actual detection position corresponding to each initial pose value to determine the reprojection error corresponding to each initial pose value; and the target pose initial value of the aircraft is determined from multiple initial pose values ​​based on the reprojection error corresponding to each initial pose value.

[0151] Optionally, the voting module 30 is further configured to:

[0152] The reprojection errors corresponding to each initial pose value are sorted, and a candidate initial pose value is determined from multiple initial pose values ​​based on the sorting results. When the detection method of the candidate initial pose value is a visual detection method, at least one comparison initial pose value is determined from multiple initial pose values ​​according to the detection method of each initial pose value. The initial value difference between the comparison initial pose value and the candidate initial pose value is calculated. When the initial value difference is less than a preset threshold, the target initial pose value of the aircraft is determined according to the candidate initial pose value.

[0153] The pose detection device provided in this application, employing the pose detection method described in the above embodiments, can solve the technical problems of inaccurate pose estimation and insufficient robustness in visual positioning caused by noise and complex environments. Compared with the prior art, the beneficial effects of the pose detection device provided in this application are the same as those of the pose detection method provided in the above embodiments, and other technical features in the pose detection device are the same as those disclosed in the methods of the above embodiments, and will not be repeated here.

[0154] This application provides a pose detection device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the pose detection method in the first embodiment described above.

[0155] The following is for reference. Figure 5 The diagram illustrates a structural schematic of a pose detection device suitable for implementing embodiments of this application. The pose detection device in the embodiments of this application may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Description), PMPs (Portable Media Players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 5 The pose detection device shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.

[0156] like Figure 5As shown, the pose detection device may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage device 1003 into a random access memory (RAM) 1004. The RAM 1004 also stores various programs and data required for the operation of the pose detection device. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touchscreen, touchpad, keyboard, mouse, image sensor, microphone, accelerometer, gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; storage devices 1003 including, for example, magnetic tape, hard disk, etc.; and communication devices 1009. The communication device 1009 allows the pose detection device to communicate wirelessly or wiredly with other devices to exchange data. Although pose detection devices with various systems are shown in the figures, it should be understood that it is not required to implement or possess all of the systems shown. More or fewer systems may be implemented alternatively.

[0157] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.

[0158] The pose detection device provided in this application, employing the pose detection method described in the above embodiments, can solve the technical problems of inaccurate pose estimation and insufficient robustness in visual positioning caused by noise and complex environments. Compared with the prior art, the beneficial effects of the pose detection device provided in this application are the same as those of the pose detection method provided in the above embodiments, and other technical features of this pose detection device are the same as those disclosed in the previous embodiment method, and will not be repeated here.

[0159] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.

[0160] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

[0161] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, the computer-readable program instructions being used to execute the pose detection method in the above embodiments.

[0162] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.

[0163] The aforementioned computer-readable storage medium may be included in the pose detection device; or it may exist independently and not be assembled into the pose detection device.

[0164] The aforementioned computer-readable storage medium carries one or more programs. When the one or more programs are executed by the pose detection device, the pose detection device causes the following: to acquire multidimensional motion data of the aircraft, the multidimensional motion data including at least one of: first motion data collected by the inertial measurement unit, second motion data collected by the navigation satellite system, and image frame sequences collected by the image acquisition device; to calculate the pose of the aircraft based on the multidimensional motion data, and determine multiple initial pose values; to vote on the multiple initial pose values, and to determine the target initial pose value of the aircraft from the multiple initial pose values ​​based on the voting result.

[0165] Computer program code for performing the operations of this application can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a Local Area Network (LAN) or a Wide Area Network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0166] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0167] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.

[0168] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the above-described pose detection method. This solves the technical problems of inaccurate pose estimation and insufficient robustness in visual positioning caused by noise and complex environments. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the pose detection method provided in the above embodiments, and will not be repeated here.

[0169] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the pose detection method described above.

[0170] The computer program product provided in this application can solve the technical problems of inaccurate pose estimation and insufficient robustness in visual positioning caused by noise and complex environments. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as those of the pose detection method provided in the above embodiments, and will not be repeated here.

[0171] The above description is only a part of the embodiments of this application and does not limit the patent scope of this application. All equivalent structural transformations made under the technical concept of this application and using the contents of the specification and drawings of this application, or direct / indirect applications in other related technical fields, are included in the patent protection scope of this application.

Claims

1. A posture detection method, characterized in that: The posture detection method comprises: Acquire multi-dimensional motion data of the aircraft, wherein the multi-dimensional motion data includes at least one of first motion data acquired by an inertial measurement unit, second motion data acquired by a navigation satellite system, and an image frame sequence acquired by an image acquisition device; Calculate the position and attitude of the aircraft according to the multi-dimensional motion data to determine multiple initial values ​​of the position and attitude; A posture vote is performed on the multiple posture initial values, and a target posture initial value of the aircraft is determined from the multiple posture initial values ​​according to the voting result.

2. The method according to claim 1, characterized in that The step of calculating the position and posture of the aircraft according to the multi-dimensional motion data and determining a plurality of initial values ​​of the position and posture comprises: Performing integral calculation according to the first motion data to determine the first initial value of the posture; Performing posture calculation according to the first motion data and the second motion data to determine an initial value of a second posture; Performing posture calculation according to the image frame sequence, the first motion data, and historical posture initial values ​​at historical adjacent moments to determine a third posture initial value; Performing posture calculation based on the first motion data and motion information at historical adjacent moments to determine a fourth posture initial value; The pose calculation is performed according to the image frame sequence and the target visual observation algorithm to determine the fifth pose initial value.

3. The method according to claim 2, characterized in that The step of performing posture calculation according to the image frame sequence, the first motion data and the historical posture initial values ​​at historical adjacent moments to determine the third posture initial value comprises: Performing feature point matching on adjacent image frames in the image frame sequence to obtain a plurality of matching pairs; Perform feature point screening on each matching point pair to obtain multiple target feature point pairs; Determine angular velocity data corresponding to the adjacent image frames according to the first motion data; Determine the relative position and posture transformation of the aircraft according to the angular velocity data and a plurality of target feature point pairs; The posture calculation is performed according to the adjacent posture transformations and the historical posture initial values ​​at the historical adjacent moments to determine a third posture initial value.

4. The method according to claim 2, characterized in that The step of performing posture calculation according to the first motion data and the motion information of the historical adjacent moments to determine the fourth posture initial value comprises: Determine the rotation update information at the current observation moment according to the angular velocity data in the first motion data; Determining a historical motion speed according to the motion information of the historical adjacent moments; Determine the relative position and posture transformation of the aircraft according to the historical motion speed and the rotation update information; Perform posture calculation based on the adjacent posture transformations and the historical posture initial values ​​at the historical adjacent moments to determine a fourth posture initial value.

5. The method according to claim 2, characterized in that The step of performing posture calculation according to the image frame sequence and the target visual observation algorithm to determine the fifth posture initial value comprises: Performing feature point matching on adjacent image frames in the image frame sequence to obtain a plurality of matching pairs; According to the target consistency algorithm in the target visual observation algorithm, feature points of each matching point pair are screened to obtain multiple target feature point pairs; Performing pose calculations based on the target perspective problem algorithm in the target visual observation algorithm and multiple target feature point pairs to determine the relative pose transformation of the aircraft; Perform posture calculation based on the adjacent posture transformations and the historical posture initial values ​​at the historical adjacent moments to determine a fifth posture initial value.

6. The method according to any one of claims 1 to 5, characterized in that The step of voting on a plurality of initial posture values ​​and determining a target initial posture value of the aircraft from among the plurality of initial posture values ​​according to the voting result comprises: Reproject the initial values ​​of each pose respectively to determine the reprojection position corresponding to the initial values ​​of each pose; The error is calculated based on the reprojection position corresponding to each initial value of each pose and the actual detection position corresponding to each initial value of each pose, and the reprojection error corresponding to each initial value of each pose is determined; The target initial posture value of the aircraft is determined from a plurality of initial posture values ​​according to the reprojection error corresponding to each initial posture value.

7. The method according to claim 6, characterized in that The step of determining the target initial posture value of the aircraft from a plurality of initial posture values ​​according to the reprojection error corresponding to each initial posture value comprises: Sorting the reprojection errors corresponding to each pose initial value, and determining a pose initial value to be selected from multiple pose initial values ​​based on the sorting result; When the detection method of the to-be-selected posture initial value is a visual detection method, determining at least one comparison posture initial value from a plurality of posture initial values ​​according to the detection method of each posture initial value; Calculating the initial value difference between the initial value of the compared posture and the initial value of the selected posture; When the initial value difference is less than a preset threshold, the target posture initial value of the aircraft is determined according to the candidate posture initial value.

8. A posture detection device, characterized in that: The posture detection device comprises: An acquisition module, used to acquire multi-dimensional motion data of the aircraft, wherein the multi-dimensional motion data includes at least one of: first motion data acquired by an inertial measurement unit, second motion data acquired by a navigation satellite system, and an image frame sequence acquired by an image acquisition device; A calculation module, used to calculate the position and posture of the aircraft according to the multi-dimensional motion data, and determine multiple initial values ​​of the position and posture; The voting module is used to perform posture voting on multiple posture initial values, and determine the target posture initial value of the aircraft from the multiple posture initial values ​​according to the voting results.

9. A posture detection device, characterized in that: The posture detection device includes: a memory, a processor, and a posture detection program stored in the memory and executable on the processor, wherein the posture detection program is configured to implement the posture detection method according to any one of claims 1 to 7.

10. A storage medium, characterized in that: The storage medium stores a posture detection program, and when the posture detection program is executed by the processor, it implements the posture detection method as described in any one of claims 1 to 7.