A pose prediction method and system for a flight simulation visual system

CN122887994APending Publication Date: 2026-10-09CHINA SOUTHERN TECHNOLOGY (GUANGDONG HENGQIN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611372820.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-09-07
Publication Date
2026-10-09

AI Technical Summary

Technical Problem

[0006]本发明的目的在于提供一种飞行模拟视景系统的位姿预测方法及系统,用以解决现有技术中在飞行模拟主机数据频率、视景刷新频率及数据链时延不一致,且异常冲击、持续机动、高频振动及外部位姿调整等状态并存时,预测位姿容易产生过冲、抖动、历史基准失配或位置姿态不同步的技术问题

Benefits of technology

本发明公开了一种飞行模拟视景系统的位姿预测方法及系统,将飞机位置转换为地心地固三维位置向量,将飞机姿态转换为单位四元数,并使位置和姿态共用同一预测目标时刻,位置预测和姿态预测在时间参数上保持一致,能够减少不同时间相位的位置分量和姿态分量组合进入视景输出的情况。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122887994A_ABST
    Figure CN122887994A_ABST
Patent Text Reader

Abstract

The present application relates to the data processing technical field of flight simulation visual system, disclose a kind of pose prediction method and system of flight simulation visual system, including receiving the state data sent by flight simulation host, aircraft position and attitude are converted into geocentric three-dimensional position vector and unit quaternion respectively, and determine the common prediction target time;Window attitude is processed with the same hemisphere and three-dimensional rotation group cut space logarithm mapping, construct sliding window;Adjacent observation frame actual increment is compared with the physical increment estimated by aircraft system motion quantity, when meeting the external pose adjustment condition, migrate historical sample;Robust quadratic fitting is carried out to sliding window, and trend score is generated based on residual sequence, current residual is decomposed into trend residual and texture residual, after executing differentiated back-annotation and energy restriction, it is synthesized with the extrapolation result of smooth trend state, output the prediction pose verified by pairing effectiveness.The present application can improve the continuity and time consistency of pose prediction.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data processing technology for flight simulation visual systems, and specifically to a pose prediction method and system for flight simulation visual systems. Background Technology

[0002] A flight simulation visual system typically includes a flight simulator host, data processing middleware, and an image generation system. The flight simulator host transmits aircraft position, attitude, and related physical state data at a fixed frequency, while the image generation system generates the visual display according to the display refresh cycle. Due to the time difference between state data transmission, data transmission, data processing, and image rendering, the visual system needs to obtain position and attitude data that matches the displayed image at the moment of rendering.

[0003] Existing solutions typically perform linear position interpolation and spherical attitude interpolation between adjacent historical packets, or use ordinary least squares, Kalman filtering, low-pass filtering, and first- or second-order polynomials to extrapolate future poses. Interpolation methods are mainly suitable for data completion between two historical sampling times, but they are difficult to actively compensate for display lag introduced by the data chain and rendering chain. Ordinary extrapolation is easily affected by abnormal frames, runway turbulence, or transient impacts, leading to overshoot in the prediction results or screen jitter. Kalman filtering requires the establishment of relatively accurate state and noise models, and parameter tuning is difficult when the model mismatch occurs. When directly fitting Euler angles, numerical jumps may occur near the angular period boundaries.

[0004] Furthermore, current engineering implementations typically employ three methods to handle the fitting residuals: discarding all, retaining all, or stacking them at a fixed ratio. Discarding all residuals filters out the true offsets caused by crosswinds, slope, or continuous maneuvering, as well as necessary ground motion texture; retaining all or stacking residuals at a fixed ratio may introduce transient shocks and random jitter into future predictions. After manual position shifts, heading adjustments, or repositioning, historical samples and current observations may no longer be on the same motion reference. Directly clearing the history will result in the loss of existing velocity and angular velocity trends; continuing to use the original history can easily lead to image pullback. Accumulating duplicate or invalid samples under conditions such as freezes, collisions, and transmission delay tests will also contaminate the recovered prediction window.

[0005] Therefore, this application provides a pose prediction method and system for a flight simulation visual system to solve the above-mentioned technical problems. Summary of the Invention

[0006] The purpose of this invention is to provide a pose prediction method and system for a flight simulation visual system, in order to solve the technical problems in the prior art where the flight simulation host data frequency, visual refresh frequency and data link delay are inconsistent, and when abnormal impact, continuous maneuver, high-frequency vibration and external pose adjustment coexist, the predicted pose is prone to overshoot, jitter, historical reference mismatch or position and attitude asynchrony.

[0007] To address the aforementioned technical problems, this invention provides a pose prediction method for a flight simulation visual system, comprising: The system receives state data sent by the flight simulation host, converts the aircraft position and attitude into a three-dimensional position vector and a unit quaternion, respectively, and determines the target prediction time shared by position and attitude based on the observation time and the unified prediction lead. Using the latest effective observation attitude as the rotation origin, the window attitude is processed by the same hemisphere and the three-dimensional rotation group tangent space logarithmic mapping to obtain the rotation vector, and the geocentric three-dimensional position vector and the rotation vector are written into the sliding window; Before robust fitting, the actual increment of adjacent observation frames is compared with the physical increment of the estimated motion of the machine system. Based on the comparison results, external pose adjustment is determined, and historical samples within the sliding window are migrated when the external pose adjustment conditions are met. A robust quadratic fitting weighted by the three-dimensional residual magnitude is performed on the sliding window to obtain a smooth trend state and a residual sequence. A trend score is generated based on the average offset ratio, directional consistency and short-term and long-term mean alignment of the residual sequence. The current residual is decomposed into trend residual and texture residual. Based on the trend score, differential backinjection and energy constraint are performed on the trend residual and the texture residual. The result is synthesized with the extrapolation result of the smooth trend state at the prediction target time, and the predicted pose is output after the validity of the position and pose pair is verified.

[0008] In some specific embodiments, determining the target prediction time shared by position and attitude based on the observation time and the unified prediction lead further includes: Read the frame number or timestamp, aircraft position and aircraft attitude from the status data, and determine the current observation time; The offline-calibrated unified prediction lead is added to the current observation time to obtain the predicted target time; When the unified prediction lead exceeds the preset lead range, the unified prediction lead is clipped to the preset lead range, and the clipped unified prediction lead is determined as a time parameter shared by position extrapolation and attitude extrapolation.

[0009] In some specific embodiments, the window pose is processed by the same hemisphere and the three-dimensional rotation group tangent space logarithmic mapping to obtain the rotation vector, further including: Compare the inner product of the unit quaternion in the window with the latest valid observation attitude; When the inner product is non-negative, retain the corresponding unit quaternion; when the inner product is negative, take the opposite of the corresponding unit quaternion. The processed unit quaternion is combined with the inverse rotation of the latest effective observation attitude and then a three-dimensional rotation group tangent space logarithmic mapping is performed to obtain a rotation vector whose modulus represents the actual rotation angle. When the modulus of adjacent rotation increments exceeds a preset rotation increment threshold, the window quality flag is recorded.

[0010] In some specific embodiments, a robust quadratic fitting weighted by the three-dimensional residual magnitude is performed on the sliding window to obtain a smooth trend state and a residual sequence, further including: Using the latest observation time as the time origin, a secondary motion model is established for each three-dimensional sample within the sliding window; The common sample weights are determined based on the relationship between the three-dimensional residual modulus and the preset robust threshold, and the common sample weights are applied simultaneously to the three coordinate components of the same sample. The position coefficients and rotation vector coefficients are solved by iterative reweighted least squares with a fixed number of iterations, and the smooth trend state is formed based on the function values ​​and analytical derivatives of the position coefficients and rotation vector coefficients at the observation time. The residual sequence is determined based on the difference between the current observation data and the smoothed trend state.

[0011] In some specific embodiments, generating a trend score based on the average offset percentage, directional consistency, and short-term long-term mean alignment of the residual sequence further includes: Short-term and long-term window residuals are selected from the position residual sequence and the rotation residual sequence, respectively, and the short-term average offset, long-term average offset, short-term residual energy, and directional consistency of adjacent non-zero residuals are calculated. The average offset percentage is formed based on the ratio between the short-term average offset modulus and the short-term residual energy, and the short-term and long-term mean alignment is formed based on the directional relationship between the short-term average offset and the long-term average offset. When the number of short-term samples is insufficient or the short-term residual energy does not meet the preset energy condition, the trend score is determined to be zero. When the preset energy condition is met, a smooth step mapping is performed on the average offset ratio, the directional consistency, and the short-term and long-term mean alignment, respectively. The mapping value of the directional consistency and the mapping value of the short-term and long-term mean alignment are weighted and combined, and the mapping value of the average offset ratio and the weighted combination result are multiplied to generate the trend score.

[0012] In some specific embodiments, the current residual is decomposed into a trend residual and a texture residual, and differential backinjection and energy limiting are performed on the trend residual and the texture residual based on the trend score, further including: The short-term average offset of the corresponding residual sequence is determined as the trend residual, and the texture residual is determined based on the difference between the current residual and the short-term average offset. The back-injection weight of the trend residual is determined based on the trend score, and the back-injection weight of the texture residual is determined to be inversely related to the trend score. The trend residual is weighted by combining the injection weight of the trend residual and the preset trend gain, and the texture residual is weighted by combining the injection weight of the texture residual and the preset texture gain, and the residual injection amount is synthesized. The energy-limited residual reinjection amount is obtained by limiting the amplitude of the residual reinjection amount based on the short-term residual energy.

[0013] In some specific embodiments, comparing the actual increment of adjacent observation frames with the physical increment of the estimated system motion, and determining the external pose adjustment based on the comparison result, further includes: Read the position and attitude differences between adjacent observation frames; The physical position increment is estimated based on the system linear velocity, system linear acceleration and corresponding observed attitude; Estimating physical rotation increments based on system angular velocity and system angular acceleration; The position inconsistency quantity is obtained based on the difference between the position difference and the physical position increment. The inverse rotation of the physical rotation increment is combined with the attitude difference and then a three-dimensional rotation group tangent space logarithmic mapping is performed to obtain the rotation inconsistency quantity. When the position inconsistency meets the preset position jump condition, or the rotation inconsistency meets the preset rotation jump condition and the machine system angular velocity does not explain the attitude difference of the preset ratio, it is determined that the external pose adjustment condition is met.

[0014] In some specific embodiments, migrating historical samples within the sliding window further includes: The position migration amount is formed based on the difference between the current observation position and the historical position at the end of the sliding window, and the attitude migration amount is formed based on the rotation difference between the current observation attitude and the historical attitude at the end of the sliding window. The frame number migration is formed based on the difference between the current frame number and the historical frame number at the end of the sliding window, and the time migration is formed based on the difference between the current observation time and the historical time at the end of the sliding window. The position migration amount is superimposed on each historical position within the sliding window, the pose migration amount is applied to each historical pose within the sliding window, and the frame number and time of the historical sample are updated based on the frame number migration amount and the time migration amount, respectively.

[0015] In some specific embodiments, it also includes: When the prediction enable configuration is disabled or the transmission delay test flag is valid, clear the prediction history and output the current true observation position and current true observation attitude in pairs. When the relocation flag is valid, the original prediction history is cleared, and a new historical starting point is established based on the current actual observation position and the current actual observation attitude. When the freeze flag or collision flag is valid, repeated observations are not continuously written into the prediction history. Existing input history is migrated based on the current position difference, rotation difference, frame number difference, and time difference, and the most recently validated paired outputs are maintained. The predicted pose is output when both the predicted position and the predicted pose pass the finite value check and the stage validity check. If either check fails, the currently available pair of results is output.

[0016] Based on the same concept, the present invention also provides a pose prediction system for a flight simulation visual system, comprising: The access conversion module is configured to receive status data sent by the flight simulator host, convert the aircraft position and attitude into a geocentric three-dimensional position vector and a unit quaternion, respectively, and determine the prediction target time shared by position and attitude based on the observation time and the unified prediction lead. The window construction module is configured to take the latest effective observation attitude as the rotation origin, obtain the rotation vector by processing the window attitude in the same hemisphere and the logarithmic mapping of the three-dimensional rotation group tangent space, and write the geocentric three-dimensional position vector and the rotation vector into the sliding window. The baseline migration module is configured to compare the actual increment of adjacent observation frames with the physical increment of the estimated motion of the machine system before robust fitting, determine the external pose adjustment based on the comparison result, and migrate the historical samples within the sliding window when the external pose adjustment conditions are met. The robust fitting and trend scoring module is configured to perform robust quadratic fitting weighted by the three-dimensional residual magnitude on the sliding window to obtain a smooth trend state and residual sequence, and generate a trend score based on the average offset ratio, directional consistency and short-term and long-term mean alignment of the residual sequence. The residual backinjection and pose synthesis module is configured to decompose the current residual into trend residual and texture residual, perform differential backinjection and energy constraint on the trend residual and texture residual based on the trend score, and synthesize with the extrapolation result of the smooth trend state at the prediction target time, and output the predicted pose that has passed the position and pose pair validity verification.

[0017] Compared with existing technologies, its advantages are as follows: This invention discloses a pose prediction method and system for a flight simulation visual system. It converts the aircraft position into a three-dimensional position vector with the ground as the center and the aircraft attitude into a unit quaternion, and makes the position and attitude share the same prediction target time. The position prediction and attitude prediction are consistent in terms of time parameters, which can reduce the situation where position components and attitude components with different time phases are combined and enter the visual output.

[0018] Using the latest effective observation attitude as the rotation origin, the window attitude is processed by the same hemisphere and the logarithmic mapping of the three-dimensional rotation group tangent space is performed, and a rotation vector with the modulus retaining the actual rotation angle is obtained. The attitude sample can participate in the sliding window processing in the form of a locally continuous three-dimensional vector, which can reduce the risk of numerical jump when directly fitting the angular periodic boundary.

[0019] Robust quadratic fitting weighted by the three-dimensional residual modulus is performed on the three-dimensional position vector of the Earth's core and the three-dimensional rotation group tangent space rotation vector, respectively. The common sample weights are simultaneously applied to the three coordinate components of the same sample. The influence of the impact sample on the three-dimensional motion trend is bounded, and the smooth trend state can provide continuous input for extrapolation of the same target time.

[0020] The average offset percentage, directional consistency, and short-term and long-term mean alignment are extracted from the position residual sequence and rotation residual sequence, and a trend score is generated. The residual processing can distinguish between continuous offset components and rapidly changing components based on the direction and energy distribution of the residuals in the short-term and long-term windows, reducing the problem of insufficient adaptability to different motion states when using a single residual retention ratio.

[0021] The current residual is decomposed into trend residual and texture residual, and differential backinjection and energy constraint are performed on the trend residual and texture residual based on the trend score. When the trend score is high, the effect of continuous unidirectional residual on the prediction result can be improved. When the trend score is low, the transmission of transient shock and random jitter to future pose can be restricted. The prediction output can form a continuous adjustment between preserving the necessary motion texture and suppressing overshoot.

[0022] Before robust fitting, the actual increment of adjacent observation frames is compared with the physical increment estimated by the motion of the machine system. When the external pose adjustment conditions are met, historical samples within the sliding window are migrated. The baseline changes caused by manual position offset, heading adjustment or repositioning can be processed before entering the fitting process. The motion trend in the historical samples can continue to participate in the prediction under the updated baseline.

[0023] Under the states of prediction on / off, transmission delay test, relocation, freeze, and collision, the system performs actions such as clearing prediction history, establishing a new historical starting point, migrating existing input history, or maintaining the most recently verified paired outputs, and performs paired validity checks on prediction position and prediction attitude. This can reduce the number of invalid samples, duplicate samples, or single-component prediction results entering the visual output link. Attached Figure Description

[0024] Other features, objects, and advantages of this application will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings: Figure 1 This is a flowchart illustrating some specific embodiments of the pose prediction method for a flight simulation visual system according to the present invention; Figure 2 This is a schematic diagram of the pose prediction system of a flight simulation visual system according to some specific embodiments of the present invention. Detailed Implementation

[0025] To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0026] The terminology used in the embodiments of this application is for the purpose of describing particular embodiments only and is not intended to limit the application. The singular forms "a," "the," and "the" as used in the embodiments of this application are also intended to include the plural forms, unless the context clearly indicates otherwise, and "multiple" generally includes at least two.

[0027] It should be understood that the term "and / or" used in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.

[0028] It should be understood that although the terms first, second, third, etc., may be used in the embodiments of this application for description, these descriptions should not be limited to these terms. These terms are only used to distinguish the descriptions. For example, first may also be referred to as second without departing from the scope of the embodiments of this application, and similarly, second may also be referred to as first.

[0029] Depending on the context, the words “if” or “suppose” as used here can be interpreted as “when” or “in response to determination” or “in response to detection.” Similarly, depending on the context, the phrases “if determination” or “if detection (of the stated condition or event)” can be interpreted as “when determination” or “in response to determination” or “when detection (of the stated condition or event)” or “in response to detection (of the stated condition or event).”

[0030] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that an article or device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such an article or device. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the article or device that includes said element.

[0031] It should be noted that any symbols and / or numbers present in the specification that are not marked in the accompanying drawings are not reference numerals.

[0032] Reference Figure 1 A pose prediction method for a flight simulation visual system, comprising: S101 receives the status data sent by the flight simulator host, converts the aircraft position and attitude into a three-dimensional position vector and a unit quaternion respectively, and determines the prediction target time shared by position and attitude based on the observation time and the unified prediction lead. S102, using the latest effective observation attitude as the rotation origin, the window attitude is processed by the same hemisphere and the three-dimensional rotation group tangent space logarithmic mapping to obtain the rotation vector, and the geocentric three-dimensional position vector and the rotation vector are written into the sliding window; S103, before robust fitting, compare the actual increment of adjacent observation frames with the physical increment of the estimated motion of the machine system, determine the external pose adjustment based on the comparison result, and migrate the historical samples in the sliding window when the external pose adjustment conditions are met. S104, Perform robust quadratic fitting weighted by the three-dimensional residual modulus on the sliding window to obtain a smooth trend state and residual sequence, and generate a trend score based on the average offset ratio, directional consistency and short-term and long-term mean alignment of the residual sequence. S105, decompose the current residual into trend residual and texture residual, perform differential backinjection and energy constraint on the trend residual and texture residual based on the trend score, and synthesize with the extrapolation result of the smooth trend state at the prediction target time, and output the predicted pose that has passed the position and pose pair validity verification.

[0033] To provide a clearer explanation, the steps in the embodiments of the present invention are described in detail below: S101 receives the status data sent by the flight simulator host, converts the aircraft position and attitude into a three-dimensional position vector and a unit quaternion respectively, and determines the prediction target time shared by position and attitude based on the observation time and the unified prediction lead. Furthermore, the frame number or timestamp, aircraft position, and aircraft attitude are read from the status data, and the current observation time is determined; The offline-calibrated unified prediction lead is added to the current observation time to obtain the predicted target time; When the unified prediction lead exceeds the preset lead range, the unified prediction lead is clipped to the preset lead range, and the clipped unified prediction lead is determined as a time parameter shared by position extrapolation and attitude extrapolation.

[0034] In this embodiment, the flight simulator continuously transmits status data at a preset transmission frequency. Each frame of status data includes at least a frame number or timestamp, the aircraft's latitude, longitude, and altitude, and the aircraft's attitude. The status data may also include aircraft system linear velocity, aircraft system linear acceleration, aircraft system angular velocity, aircraft system angular acceleration, prediction activation configuration, transmission delay test flag, relocation flag, freeze flag, and collision flag. The frame number is used to determine the sample order, the timestamp is used to calculate the time interval between adjacent observation frames, the aircraft position is used to form a position sliding window, the aircraft attitude is used to form an attitude sliding window, and the aircraft system motion is used for subsequent external attitude adjustment recognition.

[0035] For received frames, integrity checks can be performed. When the frame number is missing but the timestamp exists, the timestamp is used as the sorting criterion; when the timestamp is missing but the frame numbers are consecutive, the observation time is supplemented by the local reception time; when the aircraft position or aircraft attitude is missing, the current frame is not written into the prediction window, and the current frame is handed over to the basic output processing chain for pairwise validity judgment.

[0036] The aircraft's position can be represented by longitude, latitude, and altitude, or by coordinates within the flight simulator. When the aircraft's position is a longitude, latitude, and altitude coordinate, it is converted into a three-dimensional position vector denoted as [vector]. This transformation uses Earth ellipsoid parameters as the basis, mapping longitude, latitude, and altitude to three-dimensional rectangular coordinates, and the output is... As a sample of the positional sliding window.

[0037] Aircraft attitude can be represented by Euler angles, direction cosine matrices, or quaternions. When the aircraft attitude is represented by Euler angles or direction cosine matrices, it is converted into a unit quaternion. The unit quaternion is normalized so that the quaternion modulus meets the preset finite value condition.

[0038] The observation time is recorded as The unified forecast lead time is denoted as The predicted target time is denoted as The predicted target time can be expressed as: ; in, Indicates the current observation time. This indicates a unified forecast lead time. This indicates the predicted target time when both position and attitude are shared.

[0039] The unified prediction lead can be obtained offline by calibrating the data transmission frequency, data buffer latency, and total scene rendering latency. In this embodiment, the example value of the unified prediction lead is... The preset lead time range is to The example values ​​above are used to illustrate one time configuration in the current implementation. Other implementations can determine the corresponding parameters based on specific data transmission frequency, data link latency, and view refresh conditions.

[0040] Position extrapolation and attitude extrapolation in the same frame use the same prediction target time, so that position prediction and attitude prediction share the same time phase. The final predicted pose is composed of position components and attitude components at the same target time.

[0041] When the unified prediction lead is less than the lower limit of the preset lead range, the unified prediction lead is trimmed to the lower limit; when the unified prediction lead is greater than the upper limit of the preset lead range, the unified prediction lead is trimmed to the upper limit; when the unified prediction lead is within the preset lead range, the current unified prediction lead is retained. The trimmed unified prediction lead is used as a time parameter shared by position extrapolation and attitude extrapolation.

[0042] When the configuration file does not provide a uniform forecast lead time, the system default configuration value can be used, for example... When in transmission delay test state, the prediction history can be cleared and the current true observations can be output in pairs according to special state processing logic.

[0043] In other implementations, the unified prediction lead can be estimated online based on one-way timestamps, round-trip times, buffer depth, and view refresh cycles. During online estimation, the reception time difference, rendering submission time, and buffer queue depth of the most recent frames can be converted into latency estimates. Upper and lower bound clipping is then applied to these latency estimates to obtain the unified prediction lead for the same frame's position and attitude. The online estimation method still provides the same prediction target time to both the position processing chain and the attitude processing chain simultaneously, maintaining consistency in subsequent data processing relationships.

[0044] S102, using the latest effective observation attitude as the rotation origin, the window attitude is processed by the same hemisphere and the three-dimensional rotation group tangent space logarithmic mapping to obtain the rotation vector, and the geocentric three-dimensional position vector and the rotation vector are written into the sliding window; Furthermore, the unit quaternion in the window is compared with the latest valid observation attitude by performing an inner product comparison; When the inner product is non-negative, retain the corresponding unit quaternion; when the inner product is negative, take the opposite of the corresponding unit quaternion. The processed unit quaternion is combined with the inverse rotation of the latest effective observation attitude and then a three-dimensional rotation group tangent space logarithmic mapping is performed to obtain a rotation vector whose modulus represents the actual rotation angle. When the modulus of adjacent rotation increments exceeds a preset rotation increment threshold, the window quality flag is recorded.

[0045] The latest valid observation attitude is recorded as The latest valid observation attitude can be taken as the unit quaternion with the latest time in the current window that has passed the finite value check.

[0046] For any unit quaternion in the window ,calculate and Quaternion inner product Due to quaternions and Representing the same 3D rotation, the same hemispherical processing is obtained through symbol selection. Equivalent quaternions in the same hemisphere provide continuous local pose samples for subsequent logarithmic mapping.

[0047] when: season: ; when: season: ; in, This represents the unit quaternion after processing with the same hemisphere.

[0048] when Not a finite value, or When the normalized modulus is lower than the preset effective threshold, the corresponding attitude sample is excluded from the effective samples of the attitude sliding window, and an invalid attitude sample flag is recorded. When the number of effective attitudes in the window is insufficient, robust quadratic fitting can be temporarily suspended, and the currently available pairwise results can be output by pairwise validity verification.

[0049] The processed unit quaternion is combined with the latest valid observation attitude to form a relative quaternion: ; Perform a three-dimensional rotational group-tangent space logarithmic mapping on relative quaternions: ; when It can be represented as a rotation axis and rotation angle hour: ; in, Indicates the unit axis of rotation. Indicates the rotation angle. Represents a three-dimensional rotation vector. Rotation vector It is not normalized to a unit vector, and its magnitude retains the actual rotation angle.

[0050] To restore the corresponding posture, you can use: ; in, This represents the exponential mapping from a rotated vector to a unit quaternion. This represents the logarithmic mapping from a unit quaternion to a rotation vector.

[0051] It can also calculate the attitude increment between two adjacent frames after processing in the same hemisphere. When the magnitude of adjacent rotation increments exceeds a preset rotation increment threshold, a rotation increment anomaly flag is recorded. In this embodiment, the preset rotation increment threshold can be... This anomaly flag is used to characterize window quality and participate in boundary processing; sample validity is determined by the corresponding validity conditions.

[0052] When adjacent rotation angles approach the principal branch boundary of the logarithmic mapping of the three-dimensional rotation group, and the relocation flag or external pose adjustment condition is valid, historical reference migration or historical reconstruction can be performed so that the attitude sample still enters the sliding window in the form of a local rotation vector when crossing the heading angle period boundary.

[0053] The position sliding window contains multiple geocentric and geosolid three-dimensional position vectors. and the observation time The attitude sliding window contains multiple rotation vectors. and the observation time The position sliding window and the attitude sliding window are aligned according to the same frame number or timestamp.

[0054] When the position sample is valid but the pose sample is invalid, or the pose sample is valid but the position sample is invalid, the current frame is not directly output as a complete predicted pose sample, and the output result is determined by pairwise validity judgment.

[0055] In other implementations, a mapping from the direction cosine matrix to the Lie algebra vector can be used instead of the quaternion logarithmic mapping. The latest valid observation attitude is still used as the origin of rotation. The window attitude is converted into a relative rotation to form a three-dimensional rotation vector, which is then written into the attitude sliding window. Under this alternative method, the data processing relationships for subsequent robust fitting, residual statistics, residual backinjection, and pose synthesis remain consistent.

[0056] S103, before robust fitting, compare the actual increment of adjacent observation frames with the physical increment of the estimated motion of the machine system, determine the external pose adjustment based on the comparison result, and migrate the historical samples in the sliding window when the external pose adjustment conditions are met. Furthermore, the position and attitude differences between adjacent observation frames are read; The physical position increment is estimated based on the system linear velocity, system linear acceleration and corresponding observed attitude; Estimating physical rotation increments based on system angular velocity and system angular acceleration; The position inconsistency quantity is obtained based on the difference between the position difference and the physical position increment. The inverse rotation of the physical rotation increment is combined with the attitude difference and then a three-dimensional rotation group tangent space logarithmic mapping is performed to obtain the rotation inconsistency quantity. When the position inconsistency meets the preset position jump condition, or the rotation inconsistency meets the preset rotation jump condition and the machine system angular velocity does not explain the attitude difference of the preset ratio, it is determined that the external pose adjustment condition is met.

[0057] In some specific embodiments, migrating the historical samples within the sliding window includes: The position migration amount is formed based on the difference between the current observation position and the historical position at the end of the sliding window, and the attitude migration amount is formed based on the rotation difference between the current observation attitude and the historical attitude at the end of the sliding window. The frame number migration is formed based on the difference between the current frame number and the historical frame number at the end of the sliding window, and the time migration is formed based on the difference between the current observation time and the historical time at the end of the sliding window. The position migration amount is superimposed on each historical position within the sliding window, the pose migration amount is applied to each historical pose within the sliding window, and the frame number and time of the historical sample are updated based on the frame number migration amount and the time migration amount, respectively.

[0058] In this embodiment, the adjacent observation frame can be the current frame. and the previous valid frame The positional difference is denoted as: ; The attitude difference is denoted as: ; in, and All are three-dimensional position vectors of the Earth's core and solid state. and All are unit quaternions. Position difference represents the actual position change given by the observation data, and attitude difference represents the actual rotation change given by the observation data.

[0059] If the current valid frame does not exist, the external pose adjustment judgment will not be triggered. The current frame will be processed according to the window initialization or normal window entry method.

[0060] When two adjacent frames both have system linear velocity and At that time, the linear velocity of the machine system can be converted to geocentric and Earth-fixed coordinates through the corresponding attitude, and thus obtained... and The physical location increment is estimated using trapezoidal integrals: ; in, Represents a unit quaternion The resulting rotation matrix, This indicates the time interval between adjacent observation frames.

[0061] When the current frame has system linear velocity And machine system linear acceleration At the same time, it can also be based on: ; Estimate the physical location increment.

[0062] For the rotation component, when two adjacent frames both have the system angular velocity and At this time, the physical rotation vector increment can be obtained using trapezoidal integral: ; When the current frame has the machine system angular velocity Angular acceleration of the machine system In such cases, the following can also be used: ; in, Always represents the time interval between adjacent observation frames, and the uniform prediction lead used for target time extrapolation. Distinguish between them.

[0063] The physical rotation increment can be expressed as: ; The system angular velocity and system angular acceleration here come from the flight simulator host state data. They are different from the data sources and calculation time points of the tangential space rotational velocity and tangential space rotational acceleration obtained later by the rotational vector motion model. The former is used for external pose adjustment recognition, while the latter is used for extrapolation to predict the target time.

[0064] The inconsistency in position is denoted as: ; Rotational inconsistency is denoted as: ; in, Indicates a quantity with inconsistent positions. This represents the rotational inconsistency. The magnitude of the positional inconsistency is used to determine whether the actual observed positional change can be explained by the system's motion, while the magnitude of the rotational inconsistency is used to determine whether the actual observed rotational change can be explained by the system's angular motion.

[0065] In this embodiment, the position inconsistency threshold can be taken as... The rotation inconsistency threshold can be taken as... The above thresholds can be calibrated based on the model, sampling frequency, and observation noise scale.

[0066] When the position inconsistency meets the preset position jump condition, it is determined that the external pose adjustment condition is met.

[0067] When the rotational inconsistency meets the preset rotational jump condition, the system's angular velocity is further assessed to determine its ability to explain the attitude difference. When the system's angular velocity does not explain a preset proportion of the attitude difference, the external attitude adjustment condition is determined to be met. When the system's angular velocity explains a preset proportion of the attitude difference, the rotational jump determination triggered by the rotational inconsistency is suppressed to reduce the probability that normal large-scale maneuvers are judged as external attitude adjustments.

[0068] The attitude difference of the system angular velocity interpretation preset ratio can include: forming an interpreted rotation amount based on the system angular velocity within the time interval between adjacent observation frames; determining the actual rotation amount based on the attitude difference and comparing the relationship between the interpreted rotation amount and the actual rotation amount; when the interpreted rotation amount reaches the actual rotation amount of the preset ratio, determining the attitude difference of the system angular velocity interpretation preset ratio, and suppressing the triggering of the rotation inconsistency amount on the external part attitude adjustment conditions.

[0069] For example, the system angular velocity can be integrated over the time interval between adjacent observation frames to form an explanatory rotation, and the magnitude of the explanatory rotation can be extracted. In this embodiment, when the magnitude of the explanatory rotation reaches the magnitude of the actual rotation... When the above conditions are met, it can be determined that the machine system's angular velocity can explain the attitude difference of the preset ratio.

[0070] In a further implementation, the rotation axis directions corresponding to the explained rotation amount and attitude difference of the actual rotation amount can be extracted, and the included angle between the two rotation axis directions can be compared. When the magnitude of the explained rotation amount reaches a preset ratio and the included angle between the two rotation axis directions meets a preset angle condition, rotation jump judgment can be suppressed; when the explained rotation amount is insufficient or the rotation axis direction deviation exceeds the preset angle condition, the triggering effect of the rotation inconsistency amount on external attitude adjustment conditions can be retained. This further judgment method is applicable to scenarios where normal high angular velocity maneuvers and external manual heading adjustments may occur simultaneously.

[0071] When the external pose adjustment conditions are met, the accumulated valid motion history is retained, and the historical samples within the sliding window are migrated.

[0072] Location migration amount is denoted as: ; in, This indicates the historical position at the end of the sliding window.

[0073] The pose shift can be denoted as: ; in, This indicates the historical pose of the end of the sliding window.

[0074] The frame number migration amount is denoted as: ; The time migration amount is denoted as: ; in, Indicates the current frame number. Indicates the historical frame number at the end of the sliding window. Indicates the current observation time. This indicates the historical time at the end of the sliding window.

[0075] For each historical position within the sliding window implement: ; For each historical stance Apply attitude shift parameters, for example, by performing: ; When the system adopts other consistent rotational combination directions, it can also adopt rotational combination relationships consistent with the system attitude definition.

[0076] Perform the following steps for the frame number and time of the historical samples respectively: ; as well as: ; After the migration is completed, the position, orientation, frame number, and time are moved to the current baseline, allowing historical samples to continue to participate in subsequent robust fitting and preserving the linear motion trend and tangent space rotation trend that have been formed within the window.

[0077] In other implementations, state re-benchmarking or local history reconstruction can be used instead of global migration. State re-benchmarking transforms historical samples within the sliding window to local coordinates based on the current observation before regenerating window samples; local history reconstruction retains the most recent valid samples and discards samples far from the current benchmark. These alternative methods still generate position samples and rotation vector samples that can be used for robust fitting.

[0078] S104, Perform robust quadratic fitting weighted by the three-dimensional residual modulus on the sliding window to obtain a smooth trend state and residual sequence, and generate a trend score based on the average offset ratio, directional consistency and short-term and long-term mean alignment of the residual sequence. Furthermore, using the latest observation time as the time origin, a secondary motion model is established for each three-dimensional sample within the sliding window; The common sample weights are determined based on the relationship between the three-dimensional residual modulus and the preset robust threshold, and the common sample weights are applied simultaneously to the three coordinate components of the same sample. The position coefficients and rotation vector coefficients are solved by iterative reweighted least squares with a fixed number of iterations, and the smooth trend state is formed based on the function values ​​and analytical derivatives of the position coefficients and rotation vector coefficients at the observation time. The residual sequence is determined based on the difference between the current observation data and the smoothed trend state.

[0079] In some specific embodiments, generating a trend score based on the average offset percentage, directional consistency, and short-term long-term mean alignment of the residual sequence includes: Short-term and long-term window residuals are selected from the position residual sequence and the rotation residual sequence, respectively, and the short-term average offset, long-term average offset, short-term residual energy, and directional consistency of adjacent non-zero residuals are calculated. The average offset percentage is formed based on the ratio between the short-term average offset modulus and the short-term residual energy, and the short-term and long-term mean alignment is formed based on the directional relationship between the short-term average offset and the long-term average offset. When the number of short-term samples is insufficient or the short-term residual energy does not meet the preset energy condition, the trend score is determined to be zero. When the preset energy condition is met, a smooth step mapping is performed on the average offset ratio, the directional consistency, and the short-term and long-term mean alignment, respectively. The mapping value of the directional consistency and the mapping value of the short-term and long-term mean alignment are weighted and combined, and the mapping value of the average offset ratio and the weighted combination result are multiplied to generate the trend score.

[0080] In this embodiment, three-dimensional sample sequences are established for both the position sliding window and the rotation vector sliding window. Any three-dimensional sample sequence is denoted as... ,in It can be the three-dimensional position vector of the Earth's core and solid surface. It can also be a three-dimensional rotation vector. .

[0081] Based on the latest observation time Let the origin of time be defined as: ; The quadratic motion model can be represented as: ; in, , and All are three-dimensional coefficient vectors.

[0082] For position sequences This represents the position function value at the current moment. This represents the first-order analytic derivative of the position. This represents the second-order analytic derivative of the position; for a sequence of rotated vectors, This represents the value of the rotation vector function at the current moment. Indicates the rotational velocity of the tangent space. It represents the tangential space rotational acceleration.

[0083] The three-dimensional residual of each sample is represented as: ; in, Indicates the first The residuals of a three-dimensional sample.

[0084] A robust weighting function is used to calculate the weights of common samples. Taking Huber's robust weighting as an example... when: hour: ; when: hour: ; in, Indicates the first The common sample weights of each sample. This indicates a preset robust threshold.

[0085] Location sequences can employ location-robust thresholds. Rotation vector sequences can be subjected to rotation robust thresholds. In this embodiment, the position robustness threshold... Example value Rotational robustness threshold Example value .

[0086] Common sample weights are applied simultaneously to all three coordinate components of the same 3D sample, preventing one coordinate component from being individually weighted while other coordinate components participate in the fitting with normal weights. When a 3D sample has a non-finite value, that 3D sample is excluded from the current fitting sample, and the window quality flag is recorded.

[0087] The coefficient matrices for the position sequence and rotation vector sequence are solved separately. The solution process employs a fixed number of iterative reweighted least squares operations, which are performed in a fixed manner in this embodiment. This is the second iteration. A fixed number of iterations ensures that the computation time in the real-time data chain is deterministic.

[0088] In this embodiment, the minimum number of position sequences that can be used is... One sample, at most can be used For each sample, the rotated vector sequence can use the same window length. When the number of valid samples is less than the preset minimum number of samples, a flag indicating that the fit has not been formed is recorded, and the currently available result is selected through pairwise validity verification.

[0089] After the position sequence is fitted, the smooth trend position can be obtained based on the position quadratic motion model. linear velocity and linear acceleration .

[0090] After fitting the rotation vector sequence, a smooth trend rotation vector can be obtained. , tangential space rotation speed tangential space rotational acceleration .

[0091] A smooth trend can be represented as: ; in, Indicates a smooth trend posture. Indicates the latest valid observation attitude. This represents a smooth trend rotation vector.

[0092] The smooth trend state includes the smooth trend position, the smooth trend posture, and the motion amount obtained by the corresponding motion model.

[0093] The residual at the current position can be expressed as: ; in, Indicates the residual at the current position. Indicates the current observation position. Indicates the position of the smoothed trend.

[0094] The current rotational residual can be expressed as: ; in, Indicates the current rotational residual. Indicates a smooth trend posture. This indicates the current observation attitude after processing with the same hemisphere.

[0095] Position residuals are written to the position residual sequence, and rotation residuals are written to the rotation residual sequence. The residual sequences are maintained according to frame number or timestamp and are used to extract short-term and long-term statistics.

[0096] In other implementations, Huber weights can be replaced with Tukey weights, Cauchy weights, or other bounded influence robust estimation weights. The alternative weighting function still takes the three-dimensional residual modulus as input and forms common sample weights.

[0097] The quadratic motion model can also be replaced by a first-order polynomial, a cubic polynomial, a piecewise polynomial, or other motion models with analytic state derivatives. Alternative motion models need to be able to generate the current function value, the current first derivative, and optionally the second derivative, for extrapolation at the target time.

[0098] For any positional residual sequence or rotational residual sequence We select short-term and long-term windows respectively. The length of the short-term window is denoted as... The long-term window length is denoted as In this embodiment, the short-term window length Example value Long-term window length Example value .

[0099] The short-term average offset can be expressed as: ; The long-term mean offset can be expressed as: ; in, Indicates the short-term average deviation. Indicates the long-term average offset. This indicates the number of residual samples in the short-run window. This indicates the number of residual samples in the long-term window. Represents the first element in the corresponding residual sequence. One residual.

[0100] This embodiment uses the root mean square (RMS) method to determine the short-term residual energy: ; in, Represents short-term residual energy. Indicates the first The magnitude of each residual. The short-term residual energy of the positional residual sequence and the rotational residual sequence are calculated according to the same root mean square relation.

[0101] In other implementations, the short-term residual energy can be determined using the average residual modulus or other statistics that can characterize the scale of the residual amplitude, and the corresponding energy threshold and energy limit parameters can be recalibrated according to the energy definition adopted.

[0102] The directional consistency of adjacent non-zero residuals is used to describe whether short-term residuals change continuously along similar directions. For adjacent residuals within a short-term window... and When both moduli are greater than a preset non-zero threshold, their direction cosines can be calculated. Let... This is the set of indices corresponding to two adjacent residuals that are both valid non-zero residuals. The number of indexes in the index set.

[0103] Consistency of direction It can be represented as: ; in, Indicates directional consistency. When the number of valid pairs... At that time, the direction will be consistent. It is determined to be a zero value.

[0104] Average offset percentage It can be represented as: ; in, Indicates the average offset percentage. This represents the short-term residual energy. When the short-term residual energy... When it approaches zero, the average offset percentage will be... It is determined to be a zero value.

[0105] alignment of short-term and long-term means It can be represented as: ; in, This indicates the alignment between short-term and long-term means. When the short-term mean shifts... or long-term average offset When the modulus is close to zero, align the short-term and long-term means. It is determined to be a zero value.

[0106] The average offset percentage describes the proportion of short-term residual energy that exhibits continuous offset; directional consistency describes the degree of consistency in the direction of short-term residuals; and short-term long-term mean alignment describes the degree of alignment between the short-term and long-term mean directions.

[0107] Define a smooth step function Smooth step mappings are applied to the average offset percentage, directional consistency, and alignment of short-term and long-term means, respectively: ; ; ; in, The mapping value represents the percentage of average offset. The mapping value represents the consistency of direction. This represents the mapping value indicating the alignment between short-term and long-term means.

[0108] Trend scores can be expressed as: ; in, Indicates trend score, This means that the input values ​​are limited to a preset scoring range. In this embodiment, the preset scoring range is: to .

[0109] Therefore, the mapping values ​​of directional consistency and short-term and long-term mean alignment are weighted and combined so that the mapping value of the average offset ratio is multiplied by the weighted combination result, and the result is limited to a preset scoring range.

[0110] When the number of short-term samples is less than 2, the trend score can be set to zero. In this embodiment, when the location residual energy is less than 0.03m, the trend score corresponding to the location residual sequence is set to zero; when the rotation residual energy is less than 0.003rad, the trend score corresponding to the rotation residual sequence is set to zero.

[0111] The above thresholds and window lengths are applicable to The example configuration of the data chain can be calibrated based on the sampling rate and residual distribution. The position residual sequence forms the position trend score, and the rotated residual sequence forms the rotated trend score, which are used for residual backinjection processing of the position component and the rotated component, respectively.

[0112] In other implementations, short-term and long-term statistics can be replaced with equivalent multi-scale time-domain statistics, frequency-domain statistics, or wavelet features. The alternative statistical methods still generate intermediate quantities that characterize the degree of sustained offset, short-term directional consistency, and cross-scale directional alignment, and map these intermediate quantities to trend scores.

[0113] S105, decompose the current residual into trend residual and texture residual, perform differential backinjection and energy constraint on the trend residual and texture residual based on the trend score, and synthesize with the extrapolation result of the smooth trend state at the prediction target time, and output the predicted pose that has passed the position and pose pair validity verification.

[0114] Furthermore, the short-term average offset of the corresponding residual sequence is determined as the trend residual, and the texture residual is determined based on the difference between the current residual and the short-term average offset. The back-injection weight of the trend residual is determined based on the trend score, and the back-injection weight of the texture residual is determined to be inversely related to the trend score. The trend residual is weighted by combining the injection weight of the trend residual and the preset trend gain, and the texture residual is weighted by combining the injection weight of the texture residual and the preset texture gain, and the residual injection amount is synthesized. Based on the amplitude of the residual reinjection amount limited by the short-term residual energy, the energy-limited residual reinjection amount is obtained; The energy-limited residual back-injection amount is combined with the extrapolation result of the smoothed trend state at the prediction target time to output the predicted pose that has been validated by the pairwise validity of position and attitude.

[0115] In this embodiment, for the position residual sequence, the current position residual is The short-term average deviation is The trend residual can be expressed as: ; Texture residuals can be represented as: ; in, Indicates the positional trend residual. This indicates the location texture residual.

[0116] For the rotated residual sequence, the current rotated residual is The short-term average deviation is The trend residual can be expressed as: ; Texture residuals can be represented as: ; in, Represents the rotational trend residual. This represents the residual of the rotated texture.

[0117] Trend residuals are used to characterize systematic offsets that remain in the same direction over several frames, such as crosswinds, slope, and continuous maneuvering. Texture residuals are used to characterize high-frequency components that change rapidly around the short-term average offset, such as runway micro-vibrations and minor bumps.

[0118] The back-injection weights of trend residuals are determined based on trend scores, and the back-injection weights of texture residuals, which are inversely related to trend scores, are also determined. When the trend score increases, the back-injection effect of trend residuals is increased and the back-injection effect of texture residuals is decreased; when the trend score decreases, the back-injection effect of trend residuals is decreased and the back-injection effect of texture residuals is increased accordingly.

[0119] The location residual reinjection amount can be expressed as: ; in, Indicates the amount of location residual reinjection. Indicates location trend score, Indicates positional trend gain. This indicates the positional texture gain.

[0120] Rotational residual reinjection volume can be expressed as: ; in, This indicates the amount of rotational residual reinjection. Indicates the rotation trend score. Indicates rotational trend gain. This indicates the rotation texture gain.

[0121] In this embodiment, the position trend gain can be taken as... The position texture gain can be taken as... The rotation trend gain can be taken as... The rotation texture gain can be taken as... The above gain is an exemplary configuration and can be calibrated according to the visual system response range and residual scale.

[0122] Short-term residual energy is used to limit the amplitude of residual reinjection. Location residual reinjection can establish a location energy cap: ; in, This indicates the upper limit of energy for the location residual reinjection volume. Indicates the position clipping factor. This represents the short-term residual energy at the location.

[0123] when: At that time, the location residual reinjection amount is scaled to: ; when: hour: ; in, This indicates the location residual reinjection amount after energy limitation.

[0124] The amount of spin residual reinjection can establish an upper limit for spin energy: ; in, This indicates the upper limit of energy for the rotational residual reinjection volume. Indicates the rotation cropping factor. This represents the short-term residual energy of the rotation.

[0125] When the length of the rotational residual re-injection exceeds the upper limit of rotational energy, the rotational residual re-injection is scaled proportionally; when the length of the rotational residual re-injection does not exceed the upper limit of rotational energy, the rotational residual re-injection is retained.

[0126] In this embodiment, the energy upper limit can also be set to a preset multiple of the short-term residual energy, for example: ; The numerical values ​​are used to illustrate the energy constraint relationship. Other implementations can set corresponding energy upper limits based on the residual scale.

[0127] When the energy limit is zero, or the residual back-injection amount is not a finite value, the energy-limited residual back-injection amount can be set as a zero vector.

[0128] In other implementations, a low-amplitude hysteresis processing can be applied to the trend score before residual backinjection. For example, when the trend score of the previous frame is higher than the current trend score and the difference between the two is less than a preset hysteresis range, the trend score of the previous frame can be retained; when the current trend score crosses a preset range of change, it is updated to the current trend score. Hysteresis processing is used to reduce frequent changes in the trend score near the critical value, and to maintain consistency in the data processing relationship between the trend residual, texture residual, and energy limit.

[0129] The predicted position of the target at that time can be represented as: ; in, Indicates the predicted location. Indicates the position of the smoothed trend. Indicates linear velocity. Indicates linear acceleration. This indicates a unified forecast lead time. This indicates the location residual reinjection amount after energy limitation.

[0130] For the rotation component, a smoothed trend rotation extrapolation for the predicted target time is formed based on the smoothed trend rotation vector, tangent space rotation velocity, and tangent space rotation acceleration. This smoothed trend rotation extrapolation and the energy-limited rotational residual back-injection are then subjected to exponential mapping and combined with rotation to obtain the predicted attitude. ; in, Indicates the predicted attitude. Indicates the latest valid observation attitude. Represents a smooth trend rotation vector. Indicates the rotational velocity of the tangent space. Represents the tangential space rotational acceleration. This indicates a unified forecast lead time. This indicates the amount of energy-limited rotating residual reinjection.

[0131] Predicted pose is determined by predicted position. and predicted posture Composed of the same predicted target time. .

[0132] In some specific embodiments, the method further includes special state handling and pairwise validity verification.

[0133] When prediction is enabled but disabled or transmission delay test flag is active, the prediction history is cleared and the current true observation position and current true observation attitude are output in pairs. The position sliding window, attitude sliding window, position residual sequence, and rotation residual sequence can be cleared, preventing duplicate or special frames from entering the prediction history during transmission delay test. After resuming normal operation, historical samples can be accumulated again from new valid observations.

[0134] When the relocation flag is valid, the original prediction history is cleared, and a new historical starting point is established with the current true observation position and the current true observation attitude. The current true observation position can be converted into a geocentric 3D position vector, and the current true observation attitude can be converted into a unit quaternion and used as the new latest valid observation attitude. The first frame after relocation can directly output the current true observation in pairs, and subsequent frames gradually accumulate to form the predicted pose after meeting the sample number required for robust fitting.

[0135] When the freeze flag or collision flag is active, the existing input history is migrated based on the current position difference, rotation difference, frame number difference, and time difference, while maintaining the most recently validated paired output. The migration method can employ the aforementioned position migration amount, attitude migration amount, frame number migration amount, and time migration amount. After the freeze flag or collision flag is deactivated, normal prediction resumes from the next valid observation; when the number of valid samples is insufficient, the current true observation or the most recently validated paired result can be temporarily output.

[0136] The pairwise validity check examines both the predicted position and the predicted attitude. The predicted position can satisfy the finite value condition, the coordinate range condition, and the stage validity condition; the predicted attitude can satisfy the finite value condition, the unit quaternion modulus condition, and the stage validity condition.

[0137] When both the predicted position and predicted pose pass the finite value check and the stage validity check, the output is the predicted pose, consisting of the predicted position and predicted pose. If either the predicted position or the predicted pose fails the check, the output is selected from the currently available pair of results.

[0138] The currently available paired results can be the current actual observed pose, the most recently verified predicted pose, or the historical starting pose established after relocation.

[0139] Intermediate results used for verification can also be recorded at the output. Recording triggers can include external pose adjustment conditions being met, trend scores exceeding preset recording thresholds, pairwise validity verification failing, or special status flags being valid.

[0140] Record fields may include frame number, timestamp, target prediction time, unified prediction lead, position inconsistency, rotation inconsistency, trend score, residual backinjection magnitude, energy limit, prediction position limit flag, prediction attitude limit flag, and final output selection flag. Records can be written to a local state cache, runtime log, or debug interface. These records are used for implementation of checks and result verification, ensuring consistency with the main pose prediction process.

[0141] The following description uses specific examples to illustrate this embodiment.

[0142] In an exemplary runtime frame, the flight simulator host uses... Sending status data, current frame number is Observation time for The latitude, longitude, and altitude have been converted into a three-dimensional position vector of the Earth's core and solidity. The attitude has been converted to a unit quaternion. Unified forecast lead time Configured as Therefore, the predicted target time is: ; The current frame also carries the machine system's linear velocity, linear acceleration, angular velocity, and angular acceleration. Prediction enabled configuration is valid, transmission delay test flag is invalid, relocation flag is invalid, freeze flag is invalid, and collision flag is invalid.

[0143] by As the latest effective observation attitude Each historical quaternion in the window All with Perform inner product comparison. When the inner product of a certain history quaternion is... When the product of the two historical quaternions is 1, take the opposite of the corresponding quaternion; when the inner product of the two historical quaternions is 1, take the opposite of the corresponding quaternion. When the original quaternion is retained, the processed unit quaternion is compared with... After combining, a logarithmic mapping is performed to obtain the rotation vector. Location samples and rotation vector Write to the sliding window according to the timestamp.

[0144] Read the position difference between the current frame and the previous valid frame, and obtain the corresponding physical position increment based on the machine's system motion. For example, when: ; Less than If the position inconsistency threshold is not met and the rotation inconsistency amount does not meet the rotation jump condition, the current historical benchmark is maintained.

[0145] When the position of another frame is inconsistent, the magnitude reaches When the position inconsistency meets the preset position jump condition, it is determined that the external pose adjustment condition is met, and the position migration amount, attitude migration amount, frame number migration amount and time migration amount are calculated to migrate the historical samples within the sliding window.

[0146] The position sliding window can contain A valid 3D position sample, the rotation vector sliding window can contain [number] samples. A valid three-dimensional rotation vector sample. Established using the latest observation time as the time origin: ; When the three-dimensional residual modulus of a sample at a certain location is The position robustness threshold is At that time, the corresponding public sample weights are: ; The common sample weights are applied simultaneously to the three coordinate components of the sample at that location.

[0147] Fixed execution After multiple iterations of weighted least squares, the smoothed trend position, linear velocity and linear acceleration, as well as the smoothed trend rotation vector, tangent space rotation velocity and tangent space rotation acceleration, can be obtained, and the current position residual and the current rotation residual can be determined.

[0148] The short-term window for location residuals can take 5 samples, and the long-term window can take 24 samples. For example, if the short-term average offset magnitude is 0.018m and the short-term residual energy is 0.03m, then the average offset percentage is: ; Consistency of direction The alignment between short-term and long-term means is 0.62. It is 0.75.

[0149] Based on the smooth step mapping relationship, the mapping value of the average offset percentage is: ; because The mapping value of direction consistency is greater than the upper limit of 0.55 for smooth step mapping with greater than the direction consistency value. ;because The mapping value of the short-term and long-term mean alignment is greater than the upper limit of 0.7 for the smooth step mapping. .

[0150] Therefore, the location trend score is: ; When the number of short-term samples of the rotated residual is less than 2, the rotation trend score is set to zero.

[0151] The short-term average offset is determined as the trend residual, and the texture residual is determined based on the difference between the current residual and the short-term average offset.

[0152] In this example, the position trend gain is 0.8, the position texture gain is 0.6, and the position trend residual is: ; The positional texture residual is: ; The location residual reinjection amount is approximately: ; The modulus of the positional residual reinjection is approximately: ; Based on the example configuration where the energy cap is 1.2 times the short-term residual energy, the location energy cap is: ; because: ; The location residual injection amount did not exceed the location energy limit, so the location residual injection amount was retained and used to predict the location synthesis at the target time.

[0153] The energy-constrained positional residual backinjection is combined with the extrapolated result of the smoothed trend position at the target prediction time. The rotation component uses the same residual classification, differentiated backinjection, and energy constraint methods, and forms the predicted attitude through a three-dimensional rotation group exponential mapping.

[0154] When both the predicted position and the predicted pose pass the finite value check and the stage validity check, the predicted pose consisting of the predicted position and the predicted pose is output; when either check fails, the currently available pair of results is output to avoid forming a pose combination that is out of sync with the position and pose.

[0155] For the purpose of simplicity, the method steps disclosed in the above embodiments are described as a series of actions. However, those skilled in the art should understand that the embodiments of the present invention are not limited to the described order of actions, because according to the embodiments of the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily essential to the embodiments of the present invention.

[0156] like Figure 2 As shown, the present invention also provides a pose prediction system for a flight simulation visual system, comprising: The access conversion module 201 is configured to receive status data sent by the flight simulation host, convert the aircraft position and attitude into a geocentric three-dimensional position vector and a unit quaternion, respectively, and determine the prediction target time shared by position and attitude based on the observation time and the unified prediction lead. The window construction module 202 is configured to take the latest effective observation attitude as the rotation origin, process the window attitude through the same hemisphere and logarithmic mapping of the three-dimensional rotation group tangent space to obtain the rotation vector, and write the geocentric three-dimensional position vector and the rotation vector into the sliding window. The baseline migration module 203 is configured to compare the actual increment of adjacent observation frames with the physical increment of the estimated motion of the machine system before robust fitting, determine the external pose adjustment based on the comparison result, and migrate the historical samples within the sliding window when the external pose adjustment conditions are met. The robust fitting and trend scoring module 204 is configured to perform robust quadratic fitting weighted by the three-dimensional residual modulus on the sliding window to obtain a smooth trend state and residual sequence, and generate a trend score based on the average offset ratio, directional consistency and short-term and long-term mean alignment of the residual sequence. The residual backinjection and pose synthesis module 205 is configured to decompose the current residual into trend residual and texture residual, perform differential backinjection and energy constraint on the trend residual and texture residual based on the trend score, and synthesize with the extrapolation result of the smooth trend state at the prediction target time, and output the predicted pose that has passed the position and pose pair validity verification.

[0157] It is worth noting that although only some basic functional modules are disclosed in the embodiments of this invention, it does not mean that the composition of this system is limited to the above-mentioned basic functional modules. On the contrary, based on the above-mentioned basic functional modules, those skilled in the art can arbitrarily add one or more functional modules in combination with existing technology to form an infinite number of embodiments or technical solutions. That is to say, this system is open rather than closed. The fact that this embodiment only discloses a few basic functional modules should not be considered as the scope of protection of this invention being limited to the disclosed basic functional modules. At the same time, for the convenience of description, the above devices are described separately according to their functions as various units and modules. Of course, in implementing this invention, the functions of each unit and module can be implemented in one or more software and / or hardware.

[0158] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. A pose prediction method for a flight simulation visual system, characterized in that, include: The system receives state data sent by the flight simulation host, converts the aircraft position and attitude into a three-dimensional position vector and a unit quaternion, respectively, and determines the target prediction time shared by position and attitude based on the observation time and the unified prediction lead. Using the latest effective observation attitude as the rotation origin, the window attitude is processed by the same hemisphere and the three-dimensional rotation group tangent space logarithmic mapping to obtain the rotation vector, and the geocentric three-dimensional position vector and the rotation vector are written into the sliding window; Before robust fitting, the actual increment of adjacent observation frames is compared with the physical increment of the estimated motion of the machine system. Based on the comparison results, external pose adjustment is determined, and historical samples within the sliding window are migrated when the external pose adjustment conditions are met. A robust quadratic fitting weighted by the three-dimensional residual magnitude is performed on the sliding window to obtain a smooth trend state and a residual sequence. A trend score is generated based on the average offset ratio, directional consistency and short-term and long-term mean alignment of the residual sequence. The current residual is decomposed into trend residual and texture residual. Based on the trend score, differential backinjection and energy constraint are performed on the trend residual and the texture residual. The result is synthesized with the extrapolation result of the smooth trend state at the prediction target time, and the predicted pose is output after the validity of the position and pose pair is verified.

2. The pose prediction method for a flight simulation visual system according to claim 1, characterized in that, The predicted target time, which is shared by position and attitude, is determined based on the observation time and the unified prediction lead, and further includes: Read the frame number or timestamp, aircraft position and aircraft attitude from the status data, and determine the current observation time; The offline-calibrated unified prediction lead is added to the current observation time to obtain the predicted target time; When the unified prediction lead exceeds the preset lead range, the unified prediction lead is clipped to the preset lead range, and the clipped unified prediction lead is determined as a time parameter shared by position extrapolation and attitude extrapolation.

3. The pose prediction method for a flight simulation visual system according to claim 1, characterized in that, The window pose is processed using the same hemisphere and a logarithmic mapping of the three-dimensional rotation group tangent space to obtain the rotation vector, which further includes: Compare the unit quaternion in the window with the inner product of the latest valid observation attitude; When the inner product is non-negative, retain the corresponding unit quaternion; when the inner product is negative, take the opposite of the corresponding unit quaternion. The processed unit quaternion is combined with the inverse rotation of the latest effective observation attitude and then a three-dimensional rotation group tangent space logarithmic mapping is performed to obtain a rotation vector whose modulus represents the actual rotation angle. When the modulus of adjacent rotation increments exceeds a preset rotation increment threshold, the window quality flag is recorded.

4. The pose prediction method for a flight simulation visual system according to claim 1, characterized in that, Perform robust quadratic fitting weighted by the three-dimensional residual magnitude on the sliding window to obtain a smooth trend state and residual sequence, further including: Using the latest observation time as the time origin, a secondary motion model is established for each three-dimensional sample within the sliding window; The common sample weights are determined based on the relationship between the three-dimensional residual modulus and the preset robust threshold, and the common sample weights are applied simultaneously to the three coordinate components of the same sample. The position coefficients and rotation vector coefficients are solved by iterative reweighted least squares with a fixed number of iterations, and the smooth trend state is formed based on the function values ​​and analytical derivatives of the position coefficients and rotation vector coefficients at the observation time. The residual sequence is determined based on the difference between the current observation data and the smoothed trend state.

5. The pose prediction method for a flight simulation visual system according to claim 1, characterized in that, A trend score is generated based on the average offset percentage, directional consistency, and short-term and long-term mean alignment of the residual sequence, further including: Short-term and long-term window residuals are selected from the position residual sequence and the rotation residual sequence, respectively, and the short-term average offset, long-term average offset, short-term residual energy, and directional consistency of adjacent non-zero residuals are calculated. The average offset percentage is formed based on the ratio between the short-term average offset modulus and the short-term residual energy, and the short-term and long-term mean alignment is formed based on the directional relationship between the short-term average offset and the long-term average offset. When the number of short-term samples is insufficient or the short-term residual energy does not meet the preset energy condition, the trend score is determined to be zero. When the preset energy condition is met, a smooth step mapping is performed on the average offset ratio, the directional consistency, and the short-term and long-term mean alignment, respectively. The mapping value of the directional consistency and the mapping value of the short-term and long-term mean alignment are weighted and combined, and the mapping value of the average offset ratio and the weighted combination result are multiplied to generate the trend score.

6. The pose prediction method for a flight simulation visual system according to claim 1, characterized in that, The current residual is decomposed into trend residual and texture residual. Based on the trend score, differential backinjection and energy limiting are performed on the trend residual and the texture residual, further including: The short-term average offset of the corresponding residual sequence is determined as the trend residual, and the texture residual is determined based on the difference between the current residual and the short-term average offset. The back-injection weight of the trend residual is determined based on the trend score, and the back-injection weight of the texture residual is determined to be inversely related to the trend score. The trend residual is weighted by combining the injection weight of the trend residual and the preset trend gain, and the texture residual is weighted by combining the injection weight of the texture residual and the preset texture gain, and the residual injection amount is synthesized. The energy-limited residual reinjection amount is obtained by limiting the amplitude of the residual reinjection amount based on the short-term residual energy.

7. The pose prediction method for a flight simulation visual system according to claim 1, characterized in that, Compare the actual increment of adjacent observation frames with the physical increment of the estimated system motion, and determine the external pose adjustment based on the comparison results, further including: Read the position and attitude differences between adjacent observation frames; The physical position increment is estimated based on the system linear velocity, system linear acceleration and corresponding observed attitude; Estimating physical rotation increments based on system angular velocity and system angular acceleration; The position inconsistency quantity is obtained based on the difference between the position difference and the physical position increment. The inverse rotation of the physical rotation increment is combined with the attitude difference and then a three-dimensional rotation group tangent space logarithmic mapping is performed to obtain the rotation inconsistency quantity. When the position inconsistency meets the preset position jump condition, or the rotation inconsistency meets the preset rotation jump condition and the machine system angular velocity does not explain the attitude difference of the preset ratio, it is determined that the external pose adjustment condition is met.

8. The pose prediction method for a flight simulation visual system according to claim 1, characterized in that, Migrating historical samples within the sliding window further includes: The position migration amount is formed based on the difference between the current observation position and the historical position at the end of the sliding window, and the attitude migration amount is formed based on the rotation difference between the current observation attitude and the historical attitude at the end of the sliding window. The frame number migration is formed based on the difference between the current frame number and the historical frame number at the end of the sliding window, and the time migration is formed based on the difference between the current observation time and the historical time at the end of the sliding window. The position migration amount is superimposed on each historical position within the sliding window, the pose migration amount is applied to each historical pose within the sliding window, and the frame number and time of the historical sample are updated based on the frame number migration amount and the time migration amount, respectively.

9. The pose prediction method for a flight simulation visual system according to claim 1, characterized in that, Also includes: When the prediction enable configuration is disabled or the transmission delay test flag is valid, clear the prediction history and output the current true observation position and current true observation attitude in pairs. When the relocation flag is valid, the original prediction history is cleared, and a new historical starting point is established based on the current actual observation position and the current actual observation attitude. When the freeze flag or collision flag is valid, repeated observations are not continuously written into the prediction history. Existing input history is migrated based on the current position difference, rotation difference, frame number difference, and time difference, and the most recently validated paired outputs are maintained. The predicted pose is output when both the predicted position and the predicted pose pass the finite value check and the stage validity check. If either check fails, the currently available pair of results is output.

10. A pose prediction system for a flight simulation visual system, characterized in that, include: The access conversion module is configured to receive status data sent by the flight simulator host, convert the aircraft position and attitude into a geocentric three-dimensional position vector and a unit quaternion, respectively, and determine the prediction target time shared by position and attitude based on the observation time and the unified prediction lead. The window construction module is configured to take the latest effective observation attitude as the rotation origin, obtain the rotation vector by processing the window attitude in the same hemisphere and the logarithmic mapping of the three-dimensional rotation group tangent space, and write the geocentric three-dimensional position vector and the rotation vector into the sliding window. The baseline migration module is configured to compare the actual increment of adjacent observation frames with the physical increment of the estimated motion of the machine system before robust fitting, determine the external pose adjustment based on the comparison result, and migrate the historical samples within the sliding window when the external pose adjustment conditions are met. The robust fitting and trend scoring module is configured to perform robust quadratic fitting weighted by the three-dimensional residual magnitude on the sliding window to obtain a smooth trend state and residual sequence, and generate a trend score based on the average offset ratio, directional consistency and short-term and long-term mean alignment of the residual sequence. The residual backinjection and pose synthesis module is configured to decompose the current residual into trend residual and texture residual, perform differential backinjection and energy constraint on the trend residual and texture residual based on the trend score, and synthesize with the extrapolation result of the smooth trend state at the prediction target time, and output the predicted pose that has passed the position and pose pair validity verification.