Flight simulator eye point data compensation method and system

By establishing a shared memory area in the flight simulator system and using lightweight LSTM for differentiated prediction compensation, the real-time and accuracy issues of the flight simulator eyepoint data are solved, the fluency and realism of the visual system are improved, and the needs of high-fidelity training are met.

CN120804612AActive Publication Date: 2025-10-17CHINA SOUTHERN TECHNOLOGY (GUANGDONG HENGQIN) CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202511307693.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-15
Publication Date
2025-10-17
Estimated Expiration
2045-09-15

AI Technical Summary

Technical Problem

In the existing technology, the real-time performance and accuracy of the eye point data of the flight simulator are poor, resulting in unstable compensation effect of the visual system under different flight conditions. In particular, the prediction error is large when the aircraft attitude changes drastically, which cannot meet the requirements of high-fidelity training.

Method used

By establishing a shared memory area in the flight simulator system, using the frame ID as the update state variable, and combining the first-in-first-out storage mechanism, it is ensured that the eyepoint data sending module obtains the latest data. The aircraft attitude mode is determined according to the conditions set by the instructor station and the airspeed and ground speed data. Linear interpolation or lightweight LSTM is used for differentiated prediction compensation to adapt to the stable and maneuvering modes respectively.

Benefits of technology

The real-time and reliability of eyepoint data have been improved, ensuring the smoothness and authenticity of the visual system and meeting the needs of high-fidelity pilot training. In particular, the accuracy of prediction compensation in maneuvering mode has been significantly improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120804612A_ABST
    Figure CN120804612A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of eye point data compensation, provides a compensation method and system for eye point data of a flight simulator, and solves the problems of poor real-time performance and low accuracy of the eye point data in flight simulation. The method comprises the steps that a shared memory area is established between a simulation logic processing module and an eye point data sending module of the flight simulator, the area comprises an update state quantity in a frame ID form and a first-in first-out shared eye point data area, and the simulation logic processing module updates the frame ID after completing one-frame attitude calculation; the eye point data sending module obtains latest eye point data through the position corresponding to the latest frame ID; then, the aircraft attitude mode is judged to be in a static, stable or maneuvering state in combination with a teacher platform setting condition and airspeed and ground speed data; and finally, according to linear interpolation for a stationary mode and pre-training lightweight LSTM for a maneuvering mode, performing prediction compensation on latest eye point data to obtain compensated data. The real-time performance and the accuracy of the eye point data in flight simulation are improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of eye point data compensation, and particularly relates to a flight simulator eye point data compensation method and system. BACKGROUND

[0002] The flight simulator is a key device for pilot training, and its visual system needs to acquire and present pilot eye point position data in real time to reproduce the visual angle change in real flight. This requires that the eye point data can be quickly updated and accurately fill the gap when the data is delayed during transmission to ensure the smoothness and authenticity of the visual angle switching in training and meet the high restoration training requirements.

[0003] At present, for the processing and sending of eye point data, fixed frequency continuous data acquisition is often used. In the data transmission link, if it is found that the current frame data is not updated in time, the predicted value is calculated according to the linear change rule of the past three to five frame data to fill the delay and maintain the continuity of data output.

[0004] In this scheme, the running period of data acquisition and simulation logic does not match, which can easily cause the data sending and the actual simulation state to be out of synchronization. When the attitude of the plane changes smoothly, the prediction result is relatively ideal, but when the attitude changes dramatically, the deviation between the linear prediction and the actual change is enlarged. At the same time, the compensation method is fixed and does not adjust with different motion states in the flight process, which leads to insufficient stability of the compensation effect in the scenes of static, smooth flight, and maneuvering flight. SUMMARY

[0005] The present application provides a flight simulator eye point data compensation method and system to solve the problems of poor real-time performance and low accuracy of eye point data in flight simulation in the prior art.

[0006] To solve the above technical problems, in a first aspect, the present application provides a flight simulator eye point data compensation method, comprising: establishing a shared memory area between a simulation logic processing module and an eye point data sending module in a flight simulator system, the shared memory area including an update state quantity and a shared eye point data area, the update state quantity being an identity document (ID), the frame ID being updated by the simulation logic processing module after completing one frame of attitude calculation to obtain the latest frame ID, the shared eye point data area adopting a first-in-first-out storage mechanism, new data replacing the earliest data when the storage amount reaches a preset upper limit, and the eye point data sending module acquiring the latest eye point data by reading the storage position corresponding to the latest frame ID in the shared eye point data area; determine, based on the latest eye point data and the latest frame ID, in combination with instructor station setting conditions, airspeed data, and ground speed data in the flight simulator system, that the current attitude mode of the aircraft is a static state or a motion state, the motion state including a smooth mode and a maneuver mode; In a case where the attitude mode is the smooth mode, the latest eye point data is predicted and compensated using linear interpolation, or in a case where the attitude mode is the maneuver mode, the latest eye point data is predicted and compensated using a pre-trained lightweight Long Short-Term Memory (LSTM) to obtain corresponding compensated data.

[0007] In a second aspect, the present application provides a flight simulator eye point data compensation system, comprising: A establishing module is configured to establish a shared memory area between a simulation logic processing module and an eye point data sending module in a flight simulator system, the shared memory area comprising an update state quantity and a shared eye point data area, the update state quantity being a frame ID, the simulation logic processing module updating the frame ID after completing one frame of attitude calculation to obtain a latest frame ID, the shared eye point data area adopting a first-in-first-out storage mechanism, new data replacing the earliest data when the storage amount reaches a preset upper limit, and the eye point data sending module obtaining the latest eye point data by reading a storage position corresponding to the latest frame ID in the shared eye point data area; A determining module is configured to determine, based on the latest eye point data and the latest frame ID, in combination with instructor station setting conditions, airspeed data, and ground speed data in the flight simulator system, that the current attitude mode of the aircraft is a static state or a motion state, the motion state including a smooth mode and a maneuver mode; A compensating module is configured to, in a case where the attitude mode is the smooth mode, predict and compensate the latest eye point data using linear interpolation, or in a case where the attitude mode is the maneuver mode, predict and compensate the latest eye point data using a pre-trained lightweight LSTM to obtain corresponding compensated data.

[0008] In a third aspect, the present application provides an electronic device, comprising: a memory configured to store a computer program; a processor configured to execute the computer program to implement the steps of the flight simulator eye point data compensation method according to the first aspect.

[0009] In a fourth aspect, the present application provides a computer readable storage medium, the computer readable storage medium storing a computer program, the computer program being executable by a processor to implement the steps of the flight simulator eye point data compensation method according to the first aspect.

[0010] The technical scheme provided by the application has the following beneficial effects: The application realizes efficient synchronization of the simulation logic processing module and the eye point data sending module by taking the frame ID as the update state quantity, ensures that the eye point data sending module can obtain the latest data in time, and effectively avoids data buffer overflow and reduces data loss or repeated reading through the storage mechanism and the coverage rule, thereby improving the real-time performance and reliability of data interaction. In combination with the instructor station setting condition, airspeed and ground speed data, the static state, stable mode and maneuvering mode of the aircraft can be accurately distinguished, thereby providing a targeted basis for subsequent prediction compensation, matching the compensation strategy with the actual motion state of the aircraft, and improving the effectiveness of the compensation. Linear interpolation is adopted for the stable mode to ensure the real-time performance of the compensation, and lightweight LSTM is adopted for the maneuvering mode to better capture the complex change rule, and the differential compensation strategy in the two modes improves the accuracy of prediction compensation while ensuring the processing efficiency, thereby ensuring the continuity of the eye point data.

[0011] Further, in the maneuvering mode, when the pre-trained lightweight LSTM is used for prediction compensation, the historical eye point data and the corresponding attitude information are first obtained, the change amount of the historical eye point data and the attitude information are input into the input layer of the LSTM, the time sequence dependency relationship is extracted through two hidden layers, the change amount of the eye point data is predicted by the output layer, and finally the change amount is added to the latest eye point data to obtain the compensated data.

[0012] Moreover, the method extracts the time sequence dependency relationship of the historical data through the lightweight LSTM, can effectively capture the complex change characteristics of the eye point data in the maneuvering mode, makes the predicted change amount of the eye point data more in line with the actual situation, and significantly improves the prediction compensation accuracy in the maneuvering mode after the change amount is combined with the latest eye point data, and the design of the lightweight LSTM also ensures the efficiency of the processing process.

[0013] These aspects or other aspects of the application will be more apparent in the following description of the embodiments. BRIEF DESCRIPTION OF DRAWINGS

[0014] In order to more clearly illustrate the technical solutions in the embodiments of the application or the prior art, the following will briefly introduce the drawings needed to be used in the embodiment or prior art description. Obviously, the drawings in the following description are some embodiments of the application, and those skilled in the art can also obtain other drawings according to these drawings without creative labor.

[0015] Figure 1 A flowchart of a flight simulator eye point data compensation method provided by the embodiment of the application; Figure 2A simulation module provided by an embodiment of the present application and a data sending module relationship schematic diagram; Figure 3 A specific implementation schematic diagram of a flight simulator eye point data compensation method provided by an embodiment of the present application; Figure 4 Another specific implementation schematic diagram of a flight simulator eye point data compensation method provided by an embodiment of the present application; Figure 5 A collaborative compensation flowchart of a flight simulator eye point data compensation method provided by an embodiment of the present application; Figure 6 A predicted eye point data process diagram of a flight simulator eye point data compensation method provided by an embodiment of the present application; Figure 7 A structure schematic diagram of a flight simulator eye point data compensation system provided by an embodiment of the present application. DETAILED DESCRIPTION

[0016] In the eye point data processing of the flight simulator, the existing scheme has obvious deficiencies: the data collection rhythm does not match the operation rhythm of the flight simulation, which is easy to cause the data sending and the actual flight state to be out of synchronization; when the attitude of the aircraft changes gently, the linear prediction based on the past several frames of data is acceptable, but when the attitude changes dramatically, the linear prediction is difficult to keep up with the actual change, and the error will increase significantly; at the same time, the compensation method is fixed and will not be adjusted according to whether the aircraft is stationary, steady flight or doing maneuvering action and other different states, which makes the data compensation effect not stable enough in various flight scenes.

[0017] In view of these problems, the present application provides a flight simulator eye point data compensation method, which solves the data out-of-synchronization problem through shared memory and frame ID; with the help of a lightweight LSTM model, the prediction accuracy in the maneuvering state is improved, and the error in the dramatic attitude change is reduced; through a differentiated compensation strategy, different flight states are adapted, the stability of the compensation effect is enhanced, and the visual presentation of the flight simulation is more smooth and real, meeting the high restoration degree training demand.

[0018] In order for those skilled in the art to better understand the present application, the present application will be further described in detail below in combination with the drawings and specific embodiments. Obviously, the described embodiments are only part of the embodiments of the present application, not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor fall within the scope of protection of the present application.

[0019] The core of the present application is to provide a flight simulator eye point data compensation method, and a flowchart of one specific implementation method of the present application is as follows Figure 1As shown, the method comprises: Step 101: Establishing a shared memory region between a simulation logic processing module and an eye point data sending module in a flight simulator system, the shared memory region comprising an update state quantity and a shared eye point data area, the update state quantity being a frame ID, the simulation logic processing module updating the frame ID after completing a frame of attitude calculation to obtain a latest frame ID, the shared eye point data area adopting a first-in-first-out storage mechanism, new data replacing the earliest data when the storage reaches a preset upper limit, and the eye point data sending module acquiring the latest eye point data by reading a storage position corresponding to the latest frame ID in the shared eye point data area.

[0020] In step 101, the shared memory region is a shared memory space for data interaction between the two modules, and comprises two parts: an update state quantity and a shared eye point data area. The update state quantity, i.e. the frame ID, is an identifier, which is updated by the simulation logic processing module after completing a frame of attitude calculation, and is used to inform the eye point data sending module of new attitude data. The shared eye point data area is a region for storing eye point data, and adopts a first-in-first-out storage mechanism, i.e. when the stored data reaches a preset maximum capacity, new data replaces the earliest stored data. The simulation logic processing module is a module responsible for calculating the attitude of an aircraft in the flight simulator, and calculates and updates the attitude data of the aircraft in real time according to the flight state. The latest frame ID is the frame identifier updated by the simulation logic processing module, and is used to locate the latest eye point data. The eye point data sending module is a module responsible for sending the pilot's viewpoint position data (i.e. eye point data) to the visual system, and the eye point refers to the position of the pilot's viewpoint, with the WGS-84 coordinate system as the reference system. The latest eye point data is the eye point data corresponding to the latest frame ID in the shared eye point data area, and is the latest data required by the eye point data sending module.

[0021] In the embodiments of the present application, first, a shared memory region is created in the flight simulator system for the simulation logic processing module and the eye point data sending module, and the region comprises a frame ID for identifying data update and a shared eye point data area for storing eye point data. Then, after completing a frame of aircraft attitude calculation, the simulation logic processing module updates the frame ID (for example, increases the value by 1), and writes the newly calculated eye point data into the shared eye point data area; when the shared eye point data area is full, the newly written data replaces the earliest stored data. The eye point data sending module knows whether there is new eye point data by paying attention to the change of the frame ID in real time, and once the frame ID is updated, finds the corresponding storage position in the shared eye point data area through the latest frame ID, and reads the latest eye point data therefrom.

[0022] For example, when the flight simulator starts training, the system first establishes a shared memory area, in which the frame ID is initially set to 0, and the shared eye point data area is pre-stored with 100 frames of data. The simulation logic processing module starts to calculate the attitude of the aircraft, after completing the first frame calculation, updates the frame ID to 1, and writes the eye point data at this time (corresponding to a set of coordinates in the WGS-84 coordinate system) into the shared eye point data area; after completing the second frame calculation, the frame ID is updated to 2, and the new eye point data is written; when the 101st frame is calculated, the shared eye point data area has been full of 100 frames, and the new data replaces the data of the 1st frame. The eye point data sending module monitors the frame ID in real time, and when it is found that the frame ID changes from 1 to 2, the position corresponding to the frame ID 2 in the shared eye point data area is read to obtain the latest eye point data.

[0023] Step 102: Based on the latest eye point data and the latest frame ID, in combination with the instructor station setting conditions, airspeed data, and ground speed data in the flight simulator system, it is determined that the current attitude mode of the aircraft is a static state or a motion state, and the motion state includes a smooth mode and a maneuver mode.

[0024] In step 102, the instructor station setting conditions are the settings on the instructor operating station in the flight simulator, including frozen states (such as flight freezing, total freezing, at which time the attitude of the aircraft remains unchanged; position freezing, height freezing, and heading freezing, corresponding to the unchanged latitude, altitude, and heading of the aircraft, respectively). The airspeed data is the movement speed of the aircraft relative to the surrounding air, and the ground speed data is the movement speed of the aircraft relative to the ground. The attitude mode is divided into a static state (the aircraft does not move) and a motion state, and the motion state includes a smooth mode (the attitude of the aircraft changes gently) and a maneuver mode (the attitude of the aircraft changes dramatically).

[0025] In the embodiments of the present application, first, the eye point data sending module obtains the latest eye point data, the latest frame ID, and the instructor station setting conditions, airspeed data, and ground speed data. Then, according to the instructor station setting conditions, if it is in the flight freezing or total freezing state, it is directly determined as a static state; if it is not in these two frozen states, it is checked whether the airspeed data and the ground speed data are both less than a pre-set static threshold value, if yes, it is determined as a static state; if not, it is further checked whether it is in the position freezing, height freezing, or heading freezing state, if yes, it is determined as a static state. If none of the above conditions is met, in combination with the historical eye point data (such as the past 8 frames) corresponding to the latest frame ID, the change amount of each dimension (longitude, latitude, height, pitch angle, etc.) is calculated, and then the variance of these change amounts is calculated; if the variances of all dimensions are less than a pre-set smooth mode threshold value, it is determined as a smooth mode; if the variance of at least one dimension is greater than or equal to a pre-set maneuver mode threshold value, it is determined as a maneuver mode.

[0026] For example, in the scenario of step 101, the eye point data sending module obtains the latest eye point data (coordinates corresponding to frame ID2), the latest frame ID2, and the instructor station is not in the flight freeze or total freeze state, the airspeed data and the ground speed data are greater than the static threshold (the threshold is set according to the simulation training requirement, and is used to distinguish static and motion), and is not in the position, height, and heading freeze state. At this time, the module calls the past 8 frames of eye point data (including frame ID2), calculates the change amount of longitude, latitude, height, and pitch angle between each frame, and then calculates the variance of these change amounts respectively. After calculation, the variances of all dimensions are less than the preset smooth mode threshold (the threshold is set according to the attitude change characteristics in the smooth flight), so it is determined that the current aircraft attitude mode is the smooth mode.

[0027] Step 103: in the case where the attitude mode is the smooth mode, the latest eye point data is predicted and compensated by using linear interpolation, or in the case where the attitude mode is the maneuver mode, the latest eye point data is predicted and compensated by using a pre-trained lightweight LSTM, to obtain corresponding compensated data.

[0028] In step 103, linear interpolation is a method of predicting future data based on the linear change rule of historical data, which is used here to predict eye point data in the smooth mode. The lightweight LSTM is a simplified long short-term memory network that retains the ability to process time series data and is more efficient in calculation, and is used to predict eye point data in the maneuver mode. The compensated data is the eye point data after prediction and compensation processing, which is used to send to the visual system.

[0029] In the embodiment of the present application, if step 102 determines the smooth mode, the eye point data sending module extracts the latest frame of eye point data (including position coordinates and attitude angles) and the previous frame of eye point data from the shared eye point data area, calculates the position coordinate difference and the attitude angle difference between the two, and then adds these differences to the position coordinates and attitude angles of the latest frame respectively to obtain the predicted position coordinates and attitude angles, which are combined to obtain the compensated data. If it is determined to be the maneuver mode, the module inputs the change amount of historical eye point data and the corresponding attitude information into the pre-trained lightweight LSTM, and the model outputs the predicted eye point data change amount, and then adds the change amount to the latest eye point data to obtain the compensated data.

[0030] For example, in the smooth mode scenario of the receiving step 102, the eye point data sending module extracts the latest eye point data (position coordinates (x2, y2, z2), attitude angles (θ2, ψ2, φ2)) of frame ID2 and the previous frame data (position coordinates (x1, y1, z1), attitude angles (θ1, ψ1, φ1)) of frame ID1 from the shared eye point data area. Calculate the position coordinate difference Δx = x2 - x1, Δy = y2 - y1, Δz = z2 - z1, and the attitude angle difference Δθ = θ2 - θ1, Δψ = ψ2 - ψ1, Δφ = φ2 - φ1. Add these differences to the latest data respectively to obtain the predicted position coordinates (x2 + Δx, y2 + Δy, z2 + Δz) and the predicted attitude angles (θ2 + Δθ, ψ2 + Δψ, φ2 + Δφ), which are combined to obtain the compensated data for sending to the visual system.

[0031] By establishing a shared memory area, the eye point data sending module can efficiently obtain the latest data, solving the problem of data asynchronization. By multi-dimensional judgment of the aircraft attitude mode, accurate basis is provided for the compensation strategy. According to different modes, corresponding compensation methods are adopted, which ensures real-time performance in smooth mode and improves prediction accuracy in maneuver mode. The three work together to make the eye point data transmission of the flight simulator smoother and the compensation more accurate, effectively improving the realism of the visual system presentation and meeting the demand of pilots for high restoration degree.

[0032] In order to further improve the accuracy of eye point data prediction compensation in the maneuver mode, in some embodiments, step 103: in the case where the attitude mode is the maneuver mode, a pre-trained lightweight LSTM is used to predict and compensate the latest eye point data, comprising: Step 201: obtain historical eye point data and corresponding attitude information, input the change amount of the historical eye point data and the corresponding attitude information into the input layer of the lightweight LSTM, extract the time sequence dependency relationship from the data processed by the input layer through the first hidden layer of the lightweight LSTM to obtain the first hidden layer processed data, and extract the time sequence dependency relationship from the first hidden layer processed data through the second hidden layer of the lightweight LSTM to obtain the second hidden layer processed data.

[0033] In step 201, the historical eye point data refers to the pilot's eye point position data recorded in the past period of time, including the coordinate information corresponding to different time points. The attitude information refers to the aircraft flight state data corresponding to the eye point data, such as flight speed, tilt angle, etc. The change amount of the historical eye point data refers to the difference between the eye point data of adjacent two time points. The input layer is the part of the lightweight LSTM receiving data. The first hidden layer and the second hidden layer are the parts of the lightweight LSTM processing data internally, used to extract the correlation law changing with time in the data. The time series dependency relationship refers to the connection between the previous and subsequent time points when the data changes with time. The data processed by the first hidden layer is the information extracted by the first hidden layer. The data processed by the second hidden layer is the information further extracted by the second hidden layer.

[0034] In the embodiments of the present application, first, the past eye point data and the corresponding aircraft flight state data are collected, and the difference between the eye point data of adjacent time points is calculated. These differences and the flight state data are input to the input layer of the lightweight LSTM; the input layer passes these data to the first hidden layer, and the first hidden layer finds the correlation law changing with time from these data to obtain processed information; then, the information processed by the first hidden layer is passed to the second hidden layer, and the second hidden layer further extracts these information to find deeper correlation law changing with time to obtain the final processed information.

[0035] Step 202: transmitting the data processed by the second hidden layer to the output layer of the lightweight LSTM, and the output layer predicts and outputs the eye point data change amount value based on the data processed by the second hidden layer.

[0036] In step 202, the output layer is the part of the lightweight LSTM outputting the prediction result. The eye point data change amount value refers to the change size of the next time point eye point data relative to the current time point predicted by the model.

[0037] In the embodiments of the present application, the information processed by the second hidden layer is passed to the output layer, and the output layer predicts the change of the next time point eye point data according to these information and outputs the change size.

[0038] Step 203: adding the latest eye point data and the eye point data change amount value to obtain the corresponding compensated data.

[0039] In the embodiments of the present application, the latest eye point data at the current time point is added to the eye point data change amount value predicted by the output layer to obtain the eye point data after compensation, which is used to send to the visual system.

[0040] The following is a specific example: In the training of the flight simulator, the previous scene is taken over, and when the frame ID is updated to 3, the aircraft enters a maneuver mode such as a rapid turn. At this time, the eye point data sending module first acquires the eye point data of the past 8 frames, including the position coordinates (x2, y2, z2) and attitude angles (θ2, ψ2, φ2) of frame ID 2, and the position coordinates (x3, y3, z3) and attitude angles (θ3, ψ3, φ3) of frame ID 3, and corresponding attitude information such as turn speed and tilt angle. Then the change amount of the historical eye point data, that is, the coordinate and angle difference between adjacent frames, such as Δx3 = x3 - x2, Δy3 = y3 - y2, Δz3 = z3 - z2, Δθ3 = θ3 - θ2, Δψ3 = ψ3 - ψ2, and Δφ3 = φ3 - φ2, is calculated. These change amounts are obtained by subtracting the previous frame data from the next frame data. Then the change amounts and the corresponding attitude information are input into the input layer of the pre-trained lightweight LSTM. This model can process time-varying data and is simple to calculate. The input layer transmits the data to the first hidden layer, and the first hidden layer finds the time-varying correlation from the data, such as the trend of coordinate and angle change during turning, to obtain the first hidden layer processed data. Then the first hidden layer processed data is transmitted to the second hidden layer, and the second hidden layer further refines more detailed rules, such as the subtle relationship when combined with the change of turn speed, to obtain the second hidden layer processed data. Then the second hidden layer processed data is transmitted to the output layer, and the output layer predicts the eye point data change amount of the next frame, that is, frame ID 4, such as predicted Δx4, Δy4, Δz4, Δθ4, Δψ4, and Δφ4. These predicted change amounts are obtained by the model according to the historical rules. Finally, the latest eye point data position coordinates (x3, y3, z3) and attitude angles (θ3, ψ3, φ3) of frame ID 3 are added to these predicted change amounts to obtain the compensated data position coordinates (x3 + Δx4, y3 + Δy4, z3 + Δz4) and attitude angles (θ3 + Δθ4, ψ3 + Δψ4, φ3 + Δφ4). This compensated data is sent to the visual system, so that the visual angle change in the actual flight is presented.

[0041] In the embodiments of the present application, the time-varying correlation in the historical data is refined by the lightweight LSTM, which can more accurately predict the change of eye point data in the maneuver mode. The compensated data obtained by combining the latest eye point data is more consistent with the visual angle change in the actual flight, ensuring the smoothness and authenticity of the visual system presentation, and improving the effect of flight simulation training.

[0042] To further improve the precision of the lightweight LSTM in extracting time series dependency relationship in the mobile mode, in some embodiments, step 201: the first hidden layer includes a first forget gate for filtering information, a first input gate for including information, and a first output gate for generating output, and the second hidden layer includes a second forget gate for filtering information, a second input gate for including information, and a second output gate for generating output. The first hidden layer of the lightweight LSTM extracts time series dependency relationship from the processed data of the input layer to obtain first hidden layer processed data, and the second hidden layer of the lightweight LSTM extracts time series dependency relationship from the first hidden layer processed data to obtain second hidden layer processed data, including: Step 301: Calculate the first forget weight matrix based on the processed data of the input layer and the output result of the first output gate at the last time through the first forget gate, and take the information corresponding to the forget weight greater than or equal to the preset weight threshold in the first forget weight matrix as the first time to be reserved historical time series information.

[0043] In step 301, the information type filtered by the first forget gate of the first hidden layer includes the differential amount of historical eye point data (such as the longitude change amount Δx, the latitude change amount Δy, the height change amount Δz of the eye point position in the three-dimensional space, and the pitch angle change amount Δθ, the roll angle change amount Δψ, the heading angle change amount Δφ of the attitude angle) and related attitude information (such as the change characteristics of airspeed and ground speed associated with these differential amounts, and the parameter change characteristics under the instructor station setting condition, etc.). These filtered information is directly related to "historical eye point data" and is derived from historical eye point data and its derived change information. The first forget gate retains valuable historical information for current time series dependency relationship extraction by filtering these information from historical eye point data, and eliminates redundant or irrelevant historical data to capture time series regularity based on effective information of historical eye point data. The first forget gate is part of the first hidden layer for filtering historical information, and its role is to determine which past information needs to be retained. The output result of the first output gate at the last time is the information output by the output gate of the first hidden layer at the last time point. The first forget weight matrix is a matrix for measuring the importance of different historical information, and each value in the matrix represents the priority of the corresponding information. The preset weight threshold is a set standard for determining which information is important enough to be retained. The first time to be reserved historical time series information is the past data change information that is considered important and needs to be retained after being filtered by the first forget gate.

[0044] In the embodiment of the present application, the first forgetting gate receives the processed data of the input layer and the output result of the previous moment of the first output gate, generates a first forgetting weight matrix by calculation, each value in the matrix corresponds to the importance of a historical information; then the corresponding information with the value greater than or equal to the preset weight threshold in the matrix is selected as the first historical time sequence information to be reserved, which is the past data connection that needs to be focused on in subsequent processing.

[0045] Step 302: Through the first input gate, the first historical time sequence information to be reserved and the output result of the previous moment of the first output gate are taken as the first to be updated data, the first input weight of the current moment is calculated based on the first to be updated data, and the first to be updated data is updated according to the first input weight to obtain the first updated data.

[0046] In step 302, the first input gate is the part of the first hidden layer for updating information, and its function is to include new important information in the processing. The first to be updated data is the information that needs to be updated, including the first historical time sequence information to be reserved and the output result of the previous moment of the first output gate. The first input weight is a value for measuring the update priority of each part of information in the to be updated data. The first updated data is the information updated by the first input gate according to the input weight.

[0047] In the embodiment of the present application, the first input gate integrates the first historical time sequence information to be reserved and the output result of the previous moment of the first output gate into the first to be updated data, calculates the first input weight of the current moment based on these data, and then adjusts and updates the first to be updated data according to the weight to retain more important information to obtain the first updated data.

[0048] Step 303: Through the first output gate, the first output weight of the current moment is calculated based on the first updated data, and the first hidden layer processed data is generated based on the first output weight.

[0049] In step 303, the first output gate is the part of the first hidden layer for generating output information; the first output weight is a value for measuring the output priority of each part of information in the first updated data.

[0050] In an embodiment of the present application, the first output gate receives the first updated data, calculates the first output weight at the current moment, and then extracts important information from the first updated data according to the weight, generating data processed by the first hidden layer. This data contains the time series dependencies refined by the first hidden layer. The specific process is as follows: first, the first updated data (i.e., the cell state after being filtered by the first forget gate and updated by the first input gate) is processed by the tanh activation function, its value is mapped to the range of [-1, 1], and the activated cell state vector is obtained; then, the activated cell state vector is element-wise multiplied by the first output weight (processed by the sigmoid activation function, with a value range of [0, 1]), retaining the information at the higher weight positions and filtering out the redundant information at the lower weight positions, ultimately obtaining the data processed by the first hidden layer. For example, in aircraft maneuvering mode, the pitch angle changes Δθ in the eight historical eyepoint data frames are 1.2°, 1.5°, 2.0°, 2.8°, 3.2°, 2.9°, 3.5°, and 4.0°, respectively. After the first update, the data after tanh activation is [0.55, 0.62, 0.73, 0.85, 0.89, 0.87, 0.92, 0.95]. The first output weights (calculated through sigmoid activation) are [0.3, 0.4, 0.5, 0.7, 0.8, 0.75, 0.9, 0.95]. Element-wise multiplication yields the data processed by the first hidden layer [0.165, 0.248, 0.365, 0.595, 0.712, 0.652, 0.828, 0.902], highlighting the recent large Δθ changes.

[0051] Step 304: Calculate a second forgetting weight matrix through the second forgetting gate based on the data processed by the first hidden layer and the output result of the second output gate at the previous moment, and use the information corresponding to the forgetting weights greater than or equal to the preset weight threshold in the second forgetting weight matrix as the historical time series information to be retained for the second time.

[0052] In step 304, the second forget gate is used in the second hidden layer to filter information again. The output of the second output gate at the previous moment is the information output by the output gate of the second hidden layer at the previous time point. The second forget weight matrix measures the importance of information processed by the first hidden layer. The historical time series information to be retained for the second time is the time series information that has been processed for the first time and is deemed important and needs to be retained after being filtered by the second forget gate.

[0053] In the embodiment of the present application, the second forgetting gate receives the processed data of the first hidden layer and the output result of the previous moment of the second output gate, calculates a second forgetting weight matrix, and then picks out the corresponding information with a value greater than or equal to a preset weight threshold in the matrix as the second historical time sequence information to be reserved, which is more refined past data connection.

[0054] Step 305: Through the second input gate, the second historical time sequence information to be reserved and the output result of the previous moment of the second output gate are taken as second to-be-updated data, the second input weight of the current moment is calculated based on the second to-be-updated data, and the to-be-updated data is updated according to the second input weight to obtain second updated data.

[0055] In step 305, the second input gate is a part of the second hidden layer for updating information again. The second to-be-updated data is information that needs to be updated twice, including the second historical time sequence information to be reserved and the output result of the previous moment of the second output gate. The second input weight is a value for measuring the update priority of each part of information in the second to-be-updated data. The second updated data is information updated by the second input gate according to the input weight.

[0056] In the embodiment of the present application, the second input gate integrates the second historical time sequence information to be reserved and the output result of the previous moment of the second output gate into the second to-be-updated data, calculates the second input weight of the current moment based on these data, and then adjusts and updates the second to-be-updated data according to the weight to obtain the second updated data.

[0057] Step 306: Through the second output gate, the second output weight of the current moment is calculated based on the second updated data, and the processed data of the second hidden layer is generated based on the second output weight.

[0058] In step 306, the second output gate is a part of the second hidden layer for generating final output information. The second output weight is a value for measuring the output priority of each part of information in the second updated data. The processed data of the second hidden layer is the time sequence dependence relationship information finally output by the second hidden layer after two refinements.

[0059] In the embodiments of the present application, the second output gate receives the second updated data, calculates the second output weight at the current time, and then extracts the most important information from the second updated data according to the weight, to generate the second hidden layer processed data, which contains the most core time series dependence relationship. The specific process is as follows: first, the second updated data (cell state after being filtered by the second forgetting gate and updated by the second input gate) is processed by a tanh activation function to map to the range [-1, 1] to obtain an activated cell state vector; then, the vector is multiplied element by element with the second output weight (sigmoid activation, range [0, 1]) to retain the key information, to obtain the second hidden layer processed data. Example: based on the first hidden layer processed data [0.165, 0.248, 0.365, 0.595, 0.712, 0.652, 0.828, 0.902] described above, the second updated data after tanh activation is [0.16, 0.24, 0.36, 0.58, 0.70, 0.64, 0.82, 0.89], and the second output weight (sigmoid activation) is [0.2, 0.3, 0.4, 0.6, 0.8, 0.7, 0.9, 0.95], and after element by element multiplication, the second hidden layer processed data [0.032, 0.072, 0.144, 0.348, 0.56, 0.448, 0.738, 0.845] is obtained, and further filtering out the more recent trend information that is more critical to predicting the next frame Δθ.

[0060] The following is a specific example: In the training of the flight simulator, the previous scene is taken over, and when the frame ID is 3, the aircraft is in a rapid turning maneuver mode. The first hidden layer and the second hidden layer of the lightweight LSTM begin to process the data. First, the first forgetting gate receives the processed information of the input layer, which includes the change amount of the eye point data in the adjacent frames in the past 8 frames (such as Δx3=x3-x2, Δθ3=θ3-θ2, etc., which are obtained by subtracting the previous frame data from the next frame data) and the corresponding turning speed, tilt angle and other attitude information, and also receives the output result of the first output gate at the previous time (when processing frame ID2 to frame ID3). The first forgetting gate generates a first forgetting weight matrix by calculation, and each value in the matrix corresponds to the importance of an information. The weight corresponding to the angle change amount Δθ3 and the associated information of the turning speed from frame ID2 to frame ID3 is higher than the preset weight threshold (which is set according to the recognition requirements of key information in the maneuver mode during model training), and these information are selected as the first historical time sequence information to be preserved. Then, the first input gate integrates the first historical time sequence information to be preserved and the output result of the first output gate at the previous time into the first data to be updated, and calculates the first input weight based on these data. The higher weight is the associated part of the angle change and the turning speed, and the first updated data is obtained after updating according to this weight, which highlights the association rule of the two. Then, the first output gate calculates the first output weight based on the first updated data, extracts the most critical trend information of the angle change with the turning speed, and generates the processed data of the first hidden layer. After that, the second forgetting gate receives the processed data of the first hidden layer and the output result of the second output gate at the previous time, and generates a second forgetting weight matrix. The weight corresponding to the information that the angle change rate increases with the turning speed exceeds the preset threshold, and is selected as the second historical time sequence information to be preserved. The second input gate integrates these information and the output result of the second output gate at the previous time into the second data to be updated, and updates to obtain the second updated data after calculating the second input weight, which further strengthens the dynamic connection of the two. Finally, the second output gate calculates the second output weight based on the second updated data, extracts the most core time-varying rule between the angle change and the turning speed, and generates the processed data of the second hidden layer, which provides accurate rule basis for the subsequent output layer to predict the eye point data change amount Δx4, Δθ4, etc. of frame ID4.

[0061] In the embodiments of the present application, by step-by-step screening, updating and refining information through the forgetting gate, the input gate and the output gate of the two hidden layers, irrelevant information can be peeled off layer by layer, the most critical dependent relationship in the time sequence is preserved and strengthened, the capture of the eye point data change rule by the lightweight LSTM in the maneuver mode is more accurate, more reliable basis is provided for subsequent prediction compensation, and the accuracy of the compensation data is improved.

[0062] To accurately determine the current attitude mode of the aircraft, and to provide a reliable basis for subsequent prediction compensation, in some embodiments, step 102: based on the latest eye point data, the latest frame ID, combined with the instructor station setting conditions in the flight simulator system, airspeed data, and ground speed data, determine the current attitude mode of the aircraft as a static state or a motion state, the motion state includes: Step 401: Extract the frozen state of the instructor station and the parameter frozen setting state of the instructor station from the instructor station setting conditions, the frozen state includes the flight frozen state and the total frozen state, and the parameter frozen setting state includes the position frozen state, the height frozen state and the heading frozen state.

[0063] In step 401, the frozen state is the state of the instructor station setting that keeps the attitude of the aircraft unchanged, including the flight frozen state (the aircraft is stopped as a whole) and the total frozen state (all state parameters of the aircraft are fixed). The parameter frozen setting state is the setting that keeps the specific parameters of the aircraft unchanged, including the position frozen state (the latitude and longitude of the aircraft are fixed), the height frozen state (the height of the aircraft is fixed), and the heading frozen state (the flight direction of the aircraft is fixed).

[0064] In the embodiments of the present application, the frozen state and the parameter frozen setting state are extracted from the settings of the instructor station, which clearly indicates the current control mode of the instructor station on the aircraft, and provides an initial basis for subsequent attitude determination.

[0065] Step 402: When the instructor station is in the flight frozen state or the total frozen state, determine that the current attitude mode of the aircraft is a static state.

[0066] In step 402, the flight frozen state refers to the state of the instructor station setting that stops all movements of the aircraft. The total frozen state refers to the state of the instructor station setting that fixes all parameters of the aircraft unchanged.

[0067] In the embodiments of the present application, if it is detected that the instructor station is in the flight frozen state or the total frozen state, it indicates that the aircraft is forcibly fixed, and the current aircraft is directly determined to be in a static state.

[0068] Step 403: When the instructor station is not in the flight frozen state and not in the total frozen state, determine whether the values of the airspeed data and the ground speed data are less than the corresponding preset static threshold value, if yes, determine that the current attitude mode of the aircraft is a static state.

[0069] In step 403, not in the state means release. The preset static threshold value is a standard value for distinguishing whether the aircraft is static, which is set according to the definition of "static" in the simulator training.

[0070] In the embodiments of the present application, when the instructor station is not in the flight freeze or total freeze state, the airspeed data and the ground speed data are compared with the respective preset static threshold; if both are less than the preset static threshold, it indicates that the aircraft is actually not moving, and is determined to be in a static state.

[0071] Step 404: If the value of the airspeed data or the value of the ground speed data is not less than the corresponding preset static threshold, and the instructor station is in the position freeze state, the height freeze state or the heading freeze state, it is determined that the current attitude mode of the aircraft is a static state.

[0072] In the embodiments of the present application, if the airspeed data or the ground speed data is not less than the corresponding preset static threshold, but it is detected that the instructor station is in the position freeze, height freeze or heading freeze state, it indicates that the key parameters of the aircraft are fixed, and the overall movement is limited, and it is determined to be in a static state.

[0073] Step 405: If the instructor station is not in the position freeze state, not in the height freeze state and not in the heading freeze state, the current attitude mode of the aircraft is determined to be in a smooth mode or a maneuvering mode based on the latest eye point data and the latest frame ID.

[0074] In the embodiments of the present application, if the instructor station is not in any parameter freeze state, it indicates that the aircraft can move freely, at this time, the latest eye point data and the latest frame ID are combined to retrieve historical eye point data (such as the past 8 frames), the change amount of adjacent frame eye point data is calculated, and then the variance of the change amount is calculated (small variance indicates slow change, and large variance indicates rapid change); according to the comparison of the variance with the preset smooth mode threshold and the maneuvering mode threshold, the aircraft is determined to be in a smooth mode or a maneuvering mode.

[0075] The following is a specific example: In the training of the flight simulator, after the previous scene is accepted, when the frame ID is updated to 5, the eye point data sending module starts to determine the current attitude mode of the aircraft. The system extracts the frozen state and the parameter frozen setting state from the instructor station setting condition, finds that the instructor station is in the flight frozen state at this time, and directly determines that the current attitude mode of the aircraft is the static state according to the determination rule. Subsequently, the instructor releases the flight frozen state and the total frozen state, and the system enters the next step of judgment, obtains the airspeed data and the ground speed data at this time, compares the two with the preset static threshold (the threshold is set according to the training requirements of the simulator, and is used to distinguish static and motion, for example, 0.00001 m / s), and finds that the values of the airspeed data and the ground speed data are less than the threshold, so it is determined that the current aircraft is still in the static state. After a period of time, the aircraft starts to move slowly, and the value of the airspeed data exceeds the corresponding preset static threshold. At this time, the system checks the parameter frozen setting state of the instructor station, finds that the instructor sets the position frozen state, and determines that the current attitude mode of the aircraft is the static state. After a while, the instructor releases the position frozen state, the height frozen state and the heading frozen state, and the system retrieves the eye point data of the past 8 frames (frame ID5 to frame ID12) based on the latest eye point data (pilot eye point position data corresponding to frame ID12) and the latest frame ID12, calculates the change amount of longitude, latitude, height and pitch angle between each frame (for example, the longitude change amount is the longitude of the next frame minus the longitude of the previous frame), and then calculates the variance of these change amounts (the variance is calculated by the average value of the square of the difference between each change amount and the average value of the change amount). The variances of the change amounts of each dimension are all 0.015, and the preset smooth mode threshold is 0.02 (the threshold is set according to the attitude change characteristics in smooth flight). Since the variances of each dimension are less than the preset smooth mode threshold, it is determined that the current attitude mode of the aircraft is the smooth mode.

[0076] In the embodiments of the present application, through hierarchical extraction of the instructor station state, combination of airspeed and ground speed judgment, and correlation of historical eye point data change characteristics, multi-dimensional accurate determination of the attitude mode of the aircraft is realized, the distinction between static, smooth and maneuvering states is ensured to be accurate, a reliable foundation is provided for subsequent targeted prediction and compensation, and the effectiveness of the overall method is improved.

[0077] In order to more accurately distinguish the smooth mode and the maneuvering mode of the aircraft and provide accurate basis for subsequent compensation strategies, in some embodiments, step 405: determining that the current attitude mode of the aircraft is the smooth mode or the maneuvering mode based on the latest eye point data and the latest frame ID, comprises: Step 501: establishing a structure array for storing historical eye point data, the capacity of the structure array being a preset number, and the historical eye point data including eye point data of the past preset number of frames.

[0078] In step 501, the structure array is a structure for sequentially storing multiple groups of data, each group of data corresponding to one frame of eye point data, which can be conveniently read and processed in sequence; and the preset number is a frame number of historical data to be stored in advance.

[0079] In the embodiment of the present application, a structure array is first created, the capacity of the array is set as the preset number, and the array is used to store eye point data of the past preset number of frames, so as to prepare data for subsequent calculation of data changes and determination of modes.

[0080] In step 502, the storage index of the latest eye point data in the structure array is determined according to the latest frame ID, and the latest eye point data is stored in the position corresponding to the storage index.

[0081] In step 502, the storage index is a specific storage position number in the structure array, which is used to determine in which position of the array the latest data should be stored.

[0082] In the embodiment of the present application, the storage index of the latest eye point data in the array is obtained by calculation (for example, by taking the remainder of the latest frame ID divided by the preset number of the structure array), and then the latest eye point data is stored in the position corresponding to the index, so as to ensure that the data is stored in time sequence and can cover the earliest data.

[0083] In step 503, the change amount of the historical eye point data stored in the structure array is calculated, and the change amount includes the coordinate change amount of the eye point position in the three-dimensional space and the attitude angle change amount.

[0084] In step 503, the change amount refers to the difference between two adjacent frames of eye point data; the coordinate change amount of the eye point position in the three-dimensional space refers to the difference in longitude, latitude and height between adjacent frames; and the attitude angle change amount refers to the difference in pitch angle, roll angle and heading angle between adjacent frames.

[0085] In the embodiment of the present application, the stored historical eye point data is taken out from the structure array, two adjacent frames of data are found in time sequence, and the difference in three-dimensional coordinates (longitude, latitude and height) and the difference in attitude angles (pitch angle, roll angle and heading angle) are calculated respectively, so as to obtain the change amount in each dimension.

[0086] In step 504, the variance of the change amount in each dimension in the structure array is calculated for the change amount in each dimension.

[0087] In step 504, the dimension refers to different categories of coordinates and angles, such as longitude, latitude, pitch angle, etc., which are different dimensions. The variance is an index for measuring the fluctuation degree of a group of data, and the smaller the fluctuation and the more concentrated the data, the smaller the variance, and vice versa.

[0088] In the embodiments of the present application, for each dimension (such as the longitude change amount, the latitude change amount, etc.), all the change amounts in the dimension are taken as a group of data, and the variance of the group of data is calculated to reflect the smoothness of the data change in the dimension.

[0089] Step 505: When the variances of the change amounts in each dimension are all less than a preset smooth mode threshold, it is determined that the motion state is in a smooth mode; when the variance of the change amount in at least one dimension is greater than or equal to a preset maneuver mode threshold, it is determined that the motion state is in a maneuver mode.

[0090] In step 505, the preset smooth mode threshold is a criterion for judging whether the data change is smooth, and the variance less than the value indicates that the change is smooth. The preset maneuver mode threshold is a criterion for judging whether the data change is violent, and the variance greater than or equal to the value indicates that the change is violent.

[0091] In the embodiments of the present application, the variance of each dimension is compared with the preset smooth mode threshold and the preset maneuver mode threshold respectively: if the variances of all dimensions are less than the preset smooth mode threshold, it is determined that the overall change is smooth, and the smooth mode is determined; if the variance of at least one dimension is greater than or equal to the preset maneuver mode threshold, it is determined that there is a violent change, and the maneuver mode is determined.

[0092] The following is a specific example: In the training of a flight simulator, the previous scene is taken over, and when the frame ID is updated to 15, the system starts to determine the attitude mode based on the latest eye point data and the latest frame ID 15. First, an array of structures with a capacity of 8 is established to store the eye point data of the past 8 frames, and then the storage index is calculated according to the latest frame ID 15 and the array capacity 8, and the remainder obtained by dividing 15 by 8 is 7, and the latest eye point data corresponding to the frame ID 15 is stored in the position of the array index 7, at this time the array stores the eye point data from frame ID 8 to frame ID 15. Then the change amounts of these historical eye point data are calculated, and the adjacent frame data is taken in time sequence, such as the longitude change amount of frame ID 14 to frame ID 15 is 0.1 (the longitude of frame ID 15 minus the longitude of frame ID 14), the latitude change amount is 0.08, the pitch angle change amount is 2 degrees, and so on to obtain the change amounts of each dimension of all adjacent frames. Then the variance of each dimension change amount is calculated, and the variance is calculated by the average of the square of the difference between each change amount and the average value of the change amount in the dimension. The variance of the longitude change amount is 0.0005, the variance of the latitude change amount is 0.0003, the variance of the pitch angle change amount is 1.0, and the variances of other dimensions are all less than 0.02. Since the preset smooth mode threshold is 0.02 and the preset maneuver mode threshold is 0.5, and the variance of the pitch angle change amount 1.0 is greater than the preset maneuver mode threshold, it is determined that the current attitude mode of the aircraft is a maneuver mode.

[0093] In the embodiments of the present application, by structuring the stored historical data, calculating the variation and variance, the smoothness of the attitude change of the aircraft can be objectively reflected, and the smooth mode and the maneuvering mode can be accurately distinguished by combining the threshold comparison, thereby providing a reliable basis for selecting a compensation strategy according to different modes, and improving the accuracy and reliability of the attitude determination.

[0094] In order to further improve the pertinence and efficiency of the calculation of the variation of the historical eye point data and ensure that only the key dimensions that are not frozen are concerned, in some embodiments, step 503: calculating the variation of the historical eye point data stored in the structure array, comprises: Step 601: determining the dimensions for which the variation of the historical eye point data needs to be calculated based on the parameter freeze setting state: if in the position freeze state, skipping the calculation of the variation of the longitude and latitude, if in the height freeze state, skipping the calculation of the variation of the height, if in the heading freeze state, skipping the calculation of the variation of the heading angle.

[0095] In the embodiments of the present application, the parameter freeze setting state of the instructor station is first checked, if in the position freeze state, the longitude and latitude will not change, so the calculation of the variation of the longitude and latitude is skipped, if in the height freeze state, the height will not change, so the calculation of the variation of the height is skipped, if in the heading freeze state, the heading angle will not change, so the calculation of the variation of the heading angle is skipped, and for the dimensions that are not frozen, the dimensions for which the variation needs to be calculated are determined.

[0096] Step 602: for the unfrozen dimensions, the difference between the historical eye point data of two consecutive frames in time sequence is calculated to obtain a plurality of continuous variation values.

[0097] In step 602, the unfrozen dimensions refer to the eye point data categories that are not frozen by the instructor station. The difference is the result of subtracting the previous frame data from the next frame data. The continuous variation value is the difference value of all adjacent frame pairs calculated for each unfrozen dimension.

[0098] In the embodiments of the present application, for the determined unfrozen dimensions, the historical eye point data arranged in time sequence is taken out from the structure array, two consecutive frames of data are found in sequence, the next frame data is subtracted from the previous frame data, the difference value of each adjacent frame pair is obtained, and these difference values are the plurality of continuous variation values of the dimension.

[0099] Step 603: the plurality of continuous variation values of each unfrozen dimension are arranged in time sequence to form a variation value sequence, and the variation value sequence is the variation of the corresponding unfrozen dimension.

[0100] In step 603, the sequence of change values is a sequence formed by arranging the plurality of continuous change values of the same unfrozen dimension in time sequence. The change amount corresponding to the unfrozen dimension refers to this sequence, which is used to reflect the change of the dimension over time.

[0101] In the embodiment of the present application, for each unfrozen dimension, the plurality of continuous change values calculated are arranged in time sequence of their corresponding adjacent frame pairs to form a sequence, and this sequence is the change amount of the unfrozen dimension.

[0102] In step 604, the change amounts of all unfrozen dimensions are combined to form the change amount of the historical eye point data.

[0103] In the embodiment of the present application, the obtained sequence of change values of each unfrozen dimension is integrated together to form a set containing the change of all unfrozen dimensions, and this set is the change amount of the historical eye point data stored in the structure array.

[0104] The following is a specific example: In the training of the flight simulator, the scene before is taken over, when the frame ID is 15, the system calculates the change amount of the historical eye point data in the structure array (storing the eye point data of frame ID 8 to frame ID 15). First, the parameter freeze setting state of the instructor station is checked, and it is found that it is in the position freeze state. According to the rules, the calculation of the change amounts of longitude and latitude is skipped, and it is determined that the dimensions to be calculated are height, pitch angle, roll angle and heading angle. For these unfrozen dimensions, the difference values are calculated in time sequence by taking the continuous adjacent two frame data, for example, the height difference value is calculated by subtracting the height of frame ID 8 from the height of frame ID 9, the next difference value is calculated by subtracting the height of frame ID 9 from the height of frame ID 10, and so on. For the pitch angle, the difference value of frame ID 14 to frame ID 15 is 2 degrees (obtained by subtracting the pitch angle of frame ID 14 from the pitch angle of frame ID 15), and the difference values of other adjacent frames are obtained in the same way. The plurality of continuous change values of each unfrozen dimension are arranged in time sequence, such as the change value sequence of height [5, 6, 5, 7, 6, 8, 7], and the change value sequence of pitch angle [1, 1.5, 2, 1.8, 2, 1.9, 2], to form the change amount corresponding to each dimension. Finally, the change value sequences of height, pitch angle, roll angle and heading angle are combined to form the change amount of the historical eye point data in the structure array.

[0105] In the embodiment of the present application, by selecting the dimensions to be calculated according to the parameter freeze state, the invalid calculation of fixed parameters is avoided, and the efficiency of change amount calculation is improved. At the same time, the change value sequence is arranged by dimension to ensure that the change amount can accurately reflect the actual changed dimension, and provide a more targeted data basis for subsequent attitude mode judgment.

[0106] In order to quickly and accurately predict and compensate the eye point data in the smooth mode, and ensure the continuity of the visual system, in some embodiments, step 103: when the posture mode is the smooth mode, the latest eye point data is predicted and compensated by linear interpolation, comprising: Step 701: extract the latest one frame of eye point data and the previous one frame of eye point data from the shared eye point data area, wherein the latest one frame of eye point data is the latest eye point data, the latest one frame of eye point data comprises corresponding first coordinate data and first angle data, and the previous one frame of eye point data comprises corresponding second coordinate data and second angle data.

[0107] In step 701, the latest one frame of eye point data, i.e. the latest eye point data, is the latest pilot eye point position data at the current time, including first coordinate data (longitude, latitude and height in WGS-84 coordinate system) and first angle data (pitch angle, roll angle and heading angle). The previous one frame of eye point data is the data of the latest eye point data at the previous time, including second coordinate data (corresponding longitude, latitude and height) and second angle data (corresponding pitch angle, roll angle and heading angle).

[0108] In the embodiments of the present application, the eye point data corresponding to the latest frame ID is found from the shared eye point data area as the latest one frame of eye point data, and the eye point data corresponding to the previous frame of the frame ID is found as the previous one frame of eye point data, and their coordinate data and angle data are extracted respectively to prepare for subsequent calculation.

[0109] Step 702: based on the first coordinate data, the first angle data, the second coordinate data and the second angle data, calculate the position coordinate difference value and the attitude angle difference value between the latest one frame of eye point data and the previous one frame of eye point data.

[0110] In step 702, the position coordinate difference value is the difference between the latest one frame of eye point data and the previous one frame of eye point data in coordinate, including longitude difference value, latitude difference value and height difference value. The attitude angle difference value is the difference between the two in angle, including pitch angle difference value, roll angle difference value and heading angle difference value.

[0111] In the embodiments of the present application, the longitude difference value is obtained by subtracting the longitude in the second coordinate data from the longitude in the first coordinate data, and the latitude difference value and the height difference value are calculated in the same way; the pitch angle difference value is obtained by subtracting the pitch angle in the second angle data from the pitch angle in the first angle data, and the roll angle difference value and the heading angle difference value are calculated in the same way, so as to obtain all the position coordinate difference values and the attitude angle difference values.

[0112] Step 703: superimpose the position coordinate difference value to the first coordinate data to obtain the predicted position coordinate.

[0113] In step 703, the predicted position coordinates are the next frame of eye point position coordinates predicted based on the coordinates of the latest eye point data and the position coordinate difference value, including the predicted longitude, latitude, and height.

[0114] In the embodiment of the present application, the obtained longitude difference value is added to the longitude of the first coordinate data to obtain the predicted longitude; similarly, the latitude difference value is added to the latitude of the first coordinate data to obtain the predicted latitude; and the height difference value is added to the height of the first coordinate data to obtain the predicted height, and the three predicted values are combined into the predicted position coordinates.

[0115] Step 704: Add the attitude angle difference value to the first angle data to obtain the predicted attitude angle.

[0116] In step 704, the predicted attitude angle is the next frame of eye point attitude angle predicted based on the angle of the latest eye point data and the attitude angle difference value, including the predicted pitch angle, roll angle, and heading angle.

[0117] In the embodiment of the present application, the obtained pitch angle difference value is added to the pitch angle of the first angle data to obtain the predicted pitch angle; similarly, the roll angle difference value is added to the roll angle of the first angle data to obtain the predicted roll angle; and the heading angle difference value is added to the heading angle of the first angle data to obtain the predicted heading angle, and the three predicted values are combined into the predicted attitude angle.

[0118] Step 705: Combine the predicted position coordinates and the predicted attitude angle as the compensated data.

[0119] In the embodiment of the present application, the obtained predicted position coordinates and the obtained predicted attitude angle are integrated together to form complete compensated data for subsequent presentation of the view system.

[0120] The following is a specific example: In the training of the flight simulator, when the frame ID is updated to 3 and it is determined that the mode is stable, the eye point data sending module extracts the latest frame eye point data of frame ID 3 from the shared eye point data area, that is, the latest eye point data of frame ID 3, the first coordinate data of which is (x3, y3, z3) (corresponding to longitude, latitude and height in the WGS-84 coordinate system), and the first angle data is (θ3, ψ3, φ3) (corresponding to the pitch angle, roll angle and heading angle), and the eye point data of the previous frame, that is, frame ID 2, is extracted, the second coordinate data of which is (x2, y2, z2), and the second angle data is (θ2, ψ2, φ2). Based on these data, the position coordinate difference value is calculated, wherein Δx = x3-x2 (the longitude of frame ID 3 is subtracted from the longitude of frame ID 2), Δy = y3-y2 (the latitude of frame ID 3 is subtracted from the latitude of frame ID 2), and Δz = z3-z2 (the height of frame ID 3 is subtracted from the height of frame ID 2); the attitude angle difference value is calculated, wherein Δθ = θ3-θ2 (the pitch angle of frame ID 3 is subtracted from the pitch angle of frame ID 2), Δψ = ψ3-ψ2 (the roll angle of frame ID 3 is subtracted from the roll angle of frame ID 2), and Δφ = φ3-φ2 (the heading angle of frame ID 3 is subtracted from the heading angle of frame ID 2). The position coordinate difference value is superimposed on the first coordinate data to obtain the predicted position coordinate (x3+Δx, y3+Δy, z3+Δz); the attitude angle difference value is superimposed on the first angle data to obtain the predicted attitude angle (θ3+Δθ, ψ3+Δψ, φ3+Δφ). The predicted position coordinate and the predicted attitude angle are combined to obtain the compensated data, which is used to send to the visual system.

[0121] In the embodiments of the present application, the difference value of the adjacent two frames of data is predicted and compensated by linear interpolation, the calculation process is simple and efficient, the prediction result in the stable mode can be quickly obtained, the real-time and continuity of the eye point data are ensured, the change of the visual angle presented by the visual system conforms to the actual situation of the stable flight, and the smoothness of the simulation training is improved.

[0122] The present application specifically illustrates: 1. Shared memory establishment of the simulation logic processing module and the eye point data sending module: in order to realize the real-time acquisition of the simulation logic data update state of the eye point data sending module, support the further processing and sending of the current frame eye point data, and establish the shared memory structure as shown in Figure 2 The update state quantity is as shown in Figure 2As shown in FIG. 6, the update state quantity (frame ID) is used for the simulation logic processing module to update the current attitude calculation result. Specifically, the simulation logic processing module changes the state update quantity after completing one update cycle of attitude calculation, for example, adding 1 to the value or setting a specific flag bit. The eye point data sending module can know in time whether the simulation logic processing module has completed new attitude calculation by monitoring the change of the update state quantity in real time, so as to decide whether to acquire and process the current frame eye point data. This way makes the eye point data sending module not need to continuously occupy system resources for full data query, but only need to pay attention to the change of the state quantity, effectively improving the efficiency and real-time performance of data acquisition. Figure 2 As shown in FIG. 7, when the eye point data of the simulation logic processing module is updated, the new eye point data is written into the shared data area. The eye point data area adopts a first-in-first-out storage mechanism, and when the data storage reaches the upper limit of the data area capacity, the new data will overwrite the earliest written data. The eye point data sending module acquires the latest data from the eye point data area, and the specific acquisition method is to always read the data position corresponding to the eye point data of the latest frame ID written in the eye point data area, so as to ensure that the latest eye point data is acquired. This simulated ring structure can effectively solve the problem of data buffer overflow, and at the same time ensure that the eye point data sending module acquires the latest valid data in an efficient way, avoiding the problems of data loss and repeated reading.

[0123] 2. Differentiated multi-dimensional judgment of the current attitude mode of the aircraft: when the data sending module acquires the current update state quantity and compares and judges to acquire the current eye point data, in order to ensure the real-time performance and correctness of data processing, the current attitude of the aircraft is judged in a differentiated manner from multiple dimensions such as the condition set by the instructor station, airspeed and ground speed, and attitude data differential quantity, as shown in FIG. 8. Figure 3 1) Stationary state judgment: Since the eye point position compensation is not needed when the aircraft is in a stationary state during training, the current eye point stationary state is first judged, and the steps include: a. Acquiring the condition combined with the frozen state of the instructor station, when the instructor station is in flight frozen or total frozen, the eye point is in a stationary state, and no compensation is needed; b. When the instructor station is in an unfrozen state, further judge the airspeed and ground speed, when the airspeed and ground speed values are less than a certain threshold, the current aircraft is judged to be in a stationary state. Figure 3As shown in the middle, the instructor station flight freeze or total freeze state signal is a Boolean signal, when the signal is true, it indicates that the instructor station is in a frozen state, at this time the aircraft attitude should be kept unchanged. On this basis, the airspeed and ground speed values of the aircraft are obtained, when the airspeed and ground speed values are less than the preset static threshold (for example 0.00001 m / s), it is determined that the aircraft is in a static state of un-freezing. In the static state, the eye point data does not change, there is no need to perform complex motion mode determination and prediction compensation, and the eye point data of the current frame ID can be directly used for processing and sending. 2) Motion mode determination: when it is judged that the current aircraft is in a non-static state, the motion mode of the current aircraft is further judged, first, the set conditions of the instructor station are judged: a) obtain the current instructor station set conditions, whether the position, height, heading and speed freeze are activated: the position freeze indicates that when the position freeze is activated, the current aircraft latitude and longitude will not change, the change is mainly in other attitude parameters. The height freeze indicates that when the height freeze is activated, the current aircraft height will not change, the change is mainly in other attitude parameters. The heading freeze indicates that when the heading freeze is activated, the current aircraft heading will not change, the change is mainly in other attitude parameters b) on the basis of obtaining different set conditions of the instructor station, six different dimensional attitude parameters are determined and processed. The differential quantity variance analysis of the historical 8 frame eye point data is used for the determination of the current motion mode. For example Figure 4As shown in FIG. 1, first, an array of structures with a capacity of 8 is established, and the index of the current frame data in the array of structures is obtained according to the current frame number modulo 8, and then saved to the corresponding position for storing historical eye point data. The differential quantity of eye point data can be the coordinate change quantity (longitude, latitude, height Δx, Δy, Δz) of the eye point position in the three-dimensional space and the change quantity of the attitude angle (change quantity of the pitch angle, roll angle, and heading angle Δθ, Δψ, Δφ). For each dimension of the differential quantity, the variance of the historical data in the structure is calculated. The variance reflects the fluctuation degree of the data, and a smaller variance indicates a smooth change of the data, corresponding to a smooth motion mode; a larger variance indicates a larger fluctuation of the data, corresponding to a maneuvering motion mode. The specific determination rule is: when the variances of the differential quantities of each dimension are all less than a preset smooth mode threshold, it is determined that the smooth mode; when the variance of the differential quantity of one dimension is greater than or equal to the preset maneuvering mode threshold, the dimension is determined as the maneuvering mode. At the same time, since the change of the eye point view angle caused by the update of the coordinate quantity is smaller than the change of the eye point view angle caused by the change of the attitude angle, further threshold determination is made on the variances of the differential quantities of the six different dimensions of attitude parameters, wherein the variance threshold of the longitude, latitude, and height is λ1, the threshold of the pitch angle is λp, the threshold of the roll angle is λr, and the threshold of the heading angle is λh. The variance threshold of the longitude, latitude, and height is greater than the variance threshold of the pitch angle, roll angle, and heading angle. Through this differential analysis method of the variances of the attitude data of different dimensions, the current motion mode can be accurately determined in real time according to the change of the historical data, which provides a basis for subsequent prediction compensation. The historical differential quantity is the change quantity of the historical eye point data.

[0124] 3. Linear interpolation and light LSTM collaborative compensation: on the basis of obtaining the current eye point data update state and the attitude mode, linear interpolation and light LSTM are combined to predict and compensate the eye point data required to be sent at present, Figure 5 for the whole process of prediction compensation. Whether compensation is needed is determined: as shown in FIG. 2, when the frame ID is changed (that is, the simulation logic processing module completes the attitude calculation of one update period), the current eye point data is obtained. If no new frame ID change signal is received within a specified time (for example, one frame period), it is indicated that the eye point data can not be updated in time, and prediction compensation is needed at this time to ensure the continuity and real-time performance of the sent eye point data. Figure 5 As shown in FIG. 3, whether the eye point position prediction compensation is needed is determined according to the current eye point data update state. Specifically, when the frame ID is changed (that is, the simulation logic processing module completes the attitude calculation of one update period), the current eye point data is obtained. If no new frame ID change signal is received within a specified time (for example, one frame period), it is indicated that the eye point data can not be updated in time, and prediction compensation is needed at this time to ensure the continuity and real-time performance of the sent eye point data. Figure 5 As shown in FIG. 4, whether the current aircraft attitude is a smooth mode or a maneuvering mode is determined, and the specific determination method is as described in the motion mode determination. When the aircraft attitude is in the smooth mode, as shown in FIG. 5, the linear interpolation is used to predict and compensate the eye point data required to be sent at present. Figure 5As shown in , linear interpolation is used for compensation prediction. The linear interpolation method is based on the position and posture information of the eye point data of the past two frames. It is assumed that the change of the eye point data follows a linear law during the smooth movement. Taking the eye point position coordinates as an example, let the eye point position of the nth frame be (x n ,y n ,z n ), the eye point position of the n-1 frame is (x n-1 ,y n-1 ,z n-1 ), then the predicted position (x n+1 ,y n+1 ,z n+1 )for: For the prediction of attitude angle, the same linear interpolation method is used. This method is simple to calculate and can quickly obtain the prediction results, meeting the real-time requirements in the stable mode. Maneuvering mode compensation: When the aircraft attitude is in maneuvering mode, such as Figure 6 As shown in , lightweight LSTM is used for prediction compensation. Based on the traditional LSTM network, lightweight LSTM simplifies the network structure, reduces the number of neurons and network layers to reduce computational complexity, while retaining the advantages of LSTM in processing time series data. Specifically, the lightweight LSTM network contains 1 input layer, 2 hidden layers and 1 output layer. The input layer receives the differential components and related posture information of the historical eye point data. The hidden layer uses a forget gate, input gate and output gate structure to capture the long-term dependencies in the time series. The output layer outputs the predicted differential components of the eye point data. By training the lightweight LSTM model, it can learn the complex change patterns of the eye point data under the maneuvering mode, thereby achieving more accurate prediction compensation. The LSTM prediction hierarchy relationship is shown as follows: Figure 6 In practical applications, the lightweight LSTM model is trained using eyepoint data from a period of time. After training, the model can quickly generate prediction results based on current and historical eyepoint data, meeting the prediction accuracy requirements in maneuvering mode.

[0125] The specific implementation method is as follows: 1. Shared memory establishment step: When the simulation system starts, the system kernel allocates a fixed-size memory space as a shared memory area. The simulation logic processing module and the eyepoint data sending module are connected to the shared memory area through the shared memory interface provided by the operating system. The simulation logic processing module creates a data frame ID and an eyepoint data area in the shared memory, where the data frame ID is initialized to 0. The frame ID is also the update state quantity. The eyepoint data area is set with an appropriate capacity according to actual needs, for example, it can store 100 frames of eyepoint data. 2. Attitude mode determination step: The eyepoint data sending module monitors the data frame ID in the shared memory in real time and compares it with the local data frame ID. When a change in the data frame ID is detected, the latest eyepoint data is obtained from the annular eyepoint data area. The instructor station freeze status signal and the aircraft airspeed value are obtained. If the freeze status is true or the airspeed is less than the stationary threshold, the aircraft is determined to be in a stationary state and the attitude determination process ends. If the aircraft is not stationary: 1) Enter the instructor station condition setting judgment process: When the instructor station sets position freeze, the longitude and latitude do not change, and no compensation is required. When the instructor station sets altitude freeze, the altitude does not change, and no compensation is required. When the instructor station sets heading freeze, the heading does not change, and no compensation is required. When the instructor station sets speed freeze, the speed does not change. Under these conditions, if the pitch, roll, and heading angles are in a stable mode, the longitude and latitude and altitude changes can be determined to be in a stable mode. 2) Based on the instructor station and condition settings, the differential values ​​of the historical eight frames of eyepoint data are collected, and the variance of the differential values ​​in each dimension is calculated. The current motion mode is determined as stable or maneuvering based on the comparison of the variance with the preset threshold. 3. Prediction compensation step: When predictive compensation is required, the aircraft's current attitude mode is first determined. If it is in a stable mode, a linear interpolation method is used to calculate the predicted eyepoint position and attitude based on the eyepoint data of the previous two frames. If the mode is maneuvering, the historical eyepoint data is fed into a trained lightweight LSTM model to obtain the predicted eyepoint data differentials, thereby obtaining the predicted eyepoint position and posture. The predicted eyepoint data is processed and transmitted to meet real-time requirements. The historical eyepoint data differentials represent the change in the historical eyepoint data used in this application. The predicted eyepoint data differentials represent the compensated data used in this application.

[0126] This application specifically has the following key points and effects: The technical key points specifically include: a cross-module low-delay data interaction mechanism, a multi-dimensional attitude mode determination method, and a double-strategy collaborative algorithm. Among them, the cross-module low-delay data interaction mechanism includes shared memory + state quantity trigger and eye point data area design. The shared memory + state quantity trigger specifically refers to realizing direct interaction of data between modules through memory sharing, taking frame ID as a state quantity state to replace the polling mechanism, reducing the data update sensing delay to the memory access level, and significantly reducing the CPU load. The eye point data area design specifically refers to realizing lock-free concurrent reading and writing by using an analog queue structure, solving the frame loss problem in a high-frequency update scenario through independent decoupling between reading and writing threads, and ensuring data real-time performance and integrity. The multi-dimensional attitude mode determination method includes double static state verification, multi-dimensional composite determination, and eye point time sequence historical data dynamic feature analysis. The double static state verification specifically refers to fusing the instructor station frozen signal and the airspeed differential threshold determination logic, eliminating false positives caused by a single criterion, and achieving 100% accurate identification of the static state. The multi-dimensional composite determination specifically refers to setting conditions based on the instructor station and combining the characteristics of longitude, latitude, altitude, and pitch, roll, and heading angle two types of parameters to further analyze the compensation process of different dimensional parameters. The eye point time sequence historical data dynamic feature analysis specifically refers to variance calculation based on historical eye point differential quantities, dynamically distinguishing between smooth and maneuvering motion modes, adapting to the motion characteristics of different scenarios, and improving the determination robustness. The double-strategy collaborative algorithm includes smooth mode, maneuvering mode, and mode-driven dynamic switching. Among them, the smooth mode specifically refers to using linear interpolation (O(1) complexity) to meet the real-time requirements of the system. The maneuvering mode specifically refers to a light-weight LSTM network capturing non-linear motion characteristics, achieving high-precision prediction in each cycle (60% reduction in parameter size compared to traditional models). The mode-driven dynamic switching specifically refers to automatically selecting a compensation strategy according to the real-time motion mode, balancing calculation efficiency and prediction accuracy, and avoiding waste of computing power or insufficient accuracy.

[0127] The technical effects of the present application are as follows: through shared memory state quantity trigger and eye point data area design, lock-free synchronization between modules is realized, data update delay is reduced to the memory access level, there is no frame loss in high-frequency scenarios, and reliability is improved by 95%. By fusing the frozen state and the airspeed threshold determination static state, analyzing the current parameters of different dimensions based on the instructor station condition setting, and combining the eye point time sequence historical data variance analysis motion mode, noise interference is eliminated, smooth / maneuvering scenarios are dynamically distinguished, and the determination robustness is improved by 30%. The smooth mode uses linear interpolation (O(1) complexity) to ensure real-time performance, and the maneuvering mode uses a light-weight LSTM to capture non-linear characteristics, reducing the parameter size by 60% to achieve fast prediction.

[0128] Figure 7 A specific implementation structure diagram of a flight simulator eye point data compensation system provided by an embodiment of the present application is shown in Figure 7 The system can include: The establishing module 71 is configured to establish a shared memory region between the simulation logic processing module and the eye point data sending module in the flight simulator system, the shared memory region including an update state quantity and a shared eye point data area, the update state quantity being a frame ID, the simulation logic processing module updating the frame ID after completing a frame of attitude calculation to obtain a latest frame ID, the shared eye point data area adopting a first-in-first-out storage mechanism, new data replacing the earliest data when the storage quantity reaches a preset upper limit, and the eye point data sending module obtaining the latest eye point data by reading a storage position corresponding to the latest frame ID in the shared eye point data area.

[0129] The determining module 72 is configured to determine, based on the latest eye point data and the latest frame ID, in combination with a instructor station setting condition, airspeed data, and ground speed data in the flight simulator system, whether a current attitude mode of the aircraft is a static state or a motion state, the motion state including a steady mode and a maneuver mode.

[0130] The compensation module 73 is configured to, when the attitude mode is the steady mode, perform a linear interpolation on the latest eye point data for predictive compensation, or, when the attitude mode is the maneuver mode, perform a pre-trained lightweight LSTM on the latest eye point data for predictive compensation to obtain corresponding compensated data.

[0131] The flight simulator eye point data compensation system according to the embodiments of the present application is used to implement the flight simulator eye point data compensation method described above, and thus the specific implementation of the flight simulator eye point data compensation system can be seen from the foregoing embodiments of the flight simulator eye point data compensation method, and the specific implementation can be referred to the description of the corresponding embodiments, which will not be repeated here.

[0132] The present application also provides an electronic device, including a memory for storing a computer program, and a processor for executing the computer program to implement the steps of the flight simulator eye point data compensation method described above.

[0133] The present application also provides a computer readable storage medium having a computer program stored thereon, the computer program being executed by a processor to implement the steps of the flight simulator eye point data compensation method described above.

[0134] In an exemplary embodiment, the computer readable storage medium described above can include, but is not limited to, a U disk, a read-only memory, a random access memory, a mobile hard disk, a magnetic disk or an optical disk, and various media that can store computer programs.

[0135] An embodiment of the present invention further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps of any of the above-mentioned flight simulator eyepoint data compensation method embodiments are implemented.

[0136] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.

[0137] The above describes in detail the flight simulator eyepoint data compensation method, system, electronic device, and storage medium provided by this application. This document uses specific examples to illustrate the principles and implementation methods of this application. The description of the above examples is intended only to facilitate understanding of the method and core concepts of this application. It should be noted that those skilled in the art may make various improvements and modifications to this application without departing from the principles of this application, and such improvements and modifications also fall within the scope of protection of this application.

Claims

1. A method for compensating eye point data of a flight simulator, characterized in that: include: Establishing a shared memory area between a simulation logic processing module and an eyepoint data sending module in a flight simulator system, wherein the shared memory area includes an update state quantity and a shared eyepoint data area, wherein the update state quantity is a frame ID. After the simulation logic processing module completes a frame posture calculation, the frame ID is updated to obtain the latest frame ID. The shared eyepoint data area adopts a first-in-first-out storage mechanism. When the storage capacity reaches a preset upper limit, new data overwrites the oldest data. The eyepoint data sending module obtains the latest eyepoint data by reading the storage location corresponding to the latest frame ID in the shared eyepoint data area. Based on the latest eyepoint data and the latest frame ID, combined with instructor station settings, airspeed data, and groundspeed data in the flight simulator system, determining whether the aircraft's current attitude mode is a stationary state or a moving state, where the moving state includes a stationary mode and a maneuvering mode; When the posture mode is a stable mode, linear interpolation is used to predict and compensate the latest eye point data, or when the posture mode is a maneuvering mode, a pre-trained lightweight LSTM is used to predict and compensate the latest eye point data to obtain corresponding compensated data.

2. The method for compensating eye point data of a flight simulator according to claim 1, wherein: When the posture mode is the maneuvering mode, using a pre-trained lightweight LSTM to predict and compensate the latest eye point data includes: Obtaining historical eyepoint data and corresponding posture information, inputting the change in the historical eyepoint data and the corresponding posture information into the input layer of the lightweight LSTM, extracting a time series dependency from the data processed by the input layer through a first hidden layer of the lightweight LSTM to obtain data processed by the first hidden layer, and extracting a time series dependency from the data processed by the first hidden layer through a second hidden layer of the lightweight LSTM to obtain data processed by the second hidden layer; The data processed by the second hidden layer is transmitted to the output layer of the lightweight LSTM, and the output layer predicts and outputs the eye point data change value based on the data processed by the second hidden layer; The latest eye point data and the eye point data change value are added to obtain corresponding compensated data.

3. The method for compensating eye point data of a flight simulator according to claim 2, wherein: The first hidden layer comprises a first forget gate for filtering information, a first input gate for incorporating information, and a first output gate for generating output, and the second hidden layer comprises a second forget gate for filtering information, a second input gate for incorporating information, and a second output gate for generating output; Extracting a time series dependency from the data processed by the input layer through the first hidden layer of the lightweight LSTM to obtain data processed by the first hidden layer, and extracting a time series dependency from the data processed by the first hidden layer through the second hidden layer of the lightweight LSTM to obtain data processed by the second hidden layer, including: Calculating a first forgetting weight matrix based on the data processed by the input layer and the output result of the first output gate at a previous moment through the first forgetting gate, and using information corresponding to forgetting weights greater than or equal to a preset weight threshold in the first forgetting weight matrix as historical time series information to be retained for the first time; Using the first historical time series information to be retained and the output result of the first output gate at a previous moment as first data to be updated through the first input gate, calculating a first input weight at a current moment based on the first data to be updated, and updating the first data to be updated according to the first input weight to obtain first updated data; Calculating a first output weight at a current moment based on the first updated data through the first output gate, and generating data processed by the first hidden layer based on the first output weight; Calculating a second forgetting weight matrix based on the data processed by the first hidden layer and the output result of the second output gate at the previous moment through the second forgetting gate, and using information corresponding to forgetting weights greater than or equal to a preset weight threshold in the second forgetting weight matrix as the historical time series information to be retained for the second time; Using the second historical time series information to be retained and the output result of the second output gate at the previous moment as second data to be updated through the second input gate, calculating a second input weight at the current moment based on the second data to be updated, and updating the data to be updated according to the second input weight to obtain second updated data; The second output weight at the current moment is calculated based on the second updated data through the second output gate, and the data processed by the second hidden layer is generated based on the second output weight.

4. The method for compensating eye point data of a flight simulator according to claim 1, wherein: The determination of whether the aircraft's current attitude mode is a stationary state or a moving state based on the latest eyepoint data and the latest frame ID, combined with instructor station setting conditions, airspeed data, and ground speed data in the flight simulator system, wherein the moving state includes a stationary mode and a maneuvering mode, includes: Extracting the instructor station freeze state and the instructor station parameter freeze setting state from the instructor station setting conditions, wherein the freeze state includes a flight freeze state and a total freeze state, and the parameter freeze setting state includes a position freeze state, an altitude freeze state, and a heading freeze state; When the instructor station is in the flight freeze state or the total freeze state, determining that the current attitude mode of the aircraft is a stationary state; When the instructor station is not in the flight freeze state and is not in the total freeze state, determining whether the values ​​of the airspeed data and the ground speed data are both less than corresponding preset stationary thresholds, and if so, determining that the current attitude mode of the aircraft is a stationary state; When the value of the airspeed data or the value of the ground speed data is not less than the corresponding preset stationary threshold, if the instructor station is in the position freeze state, the altitude freeze state, or the heading freeze state, determining that the current attitude mode of the aircraft is a stationary state; If the instructor station is not in the position freeze state, the altitude freeze state, and the heading freeze state, the current attitude mode of the aircraft is determined to be a stable mode or a maneuvering mode based on the latest eye point data and the latest frame ID.

5. The flight simulator eye point data compensation method according to claim 4, characterized in that: The determining, based on the latest eyepoint data and the latest frame ID, whether the current attitude mode of the aircraft is a stable mode or a maneuvering mode includes: Establishing a structure array for storing historical eyepoint data, wherein the capacity of the structure array is a preset number, and the historical eyepoint data includes eyepoint data of a preset number of frames in the past; Determine a storage index of the latest eyepoint data in the structure array according to the latest frame ID, and store the latest eyepoint data in a position corresponding to the storage index; Calculating the variation of the historical eye point data stored in the structure array, the variation including the variation of the coordinates of the eye point position in the three-dimensional space and the variation of the posture angle; For each dimension change, calculate the variance of the dimension change in the structure array; When the variance of the change amount in each dimension is less than the preset stable mode threshold, the motion state is determined to be stable mode. When the variance of the change amount in at least one dimension is greater than or equal to the preset maneuvering mode threshold, the motion state is determined to be maneuvering mode.

6. The method for compensating eye point data of a flight simulator according to claim 5, characterized in that: The calculating of the change in the historical eyepoint data stored in the structure array includes: Based on the parameter freeze setting state, determining the dimension for which the change in the historical eyepoint data needs to be calculated: if the position is frozen, skipping the calculation of the change in longitude and latitude; if the altitude is frozen, skipping the calculation of the change in altitude; if the heading is frozen, skipping the calculation of the change in heading angle; For the unfrozen dimensions, the difference between the historical eye point data of two consecutive frames is calculated in chronological order to obtain multiple continuous change values; Combining multiple continuous change values ​​of each unfrozen dimension into a change value sequence in chronological order, wherein the change value sequence is the change amount of the corresponding unfrozen dimension; Combine the changes of all unfrozen dimensions to form the changes of historical eyepoint data.

7. The flight simulator eye point data compensation method according to claim 1, characterized in that: When the posture mode is a stable mode, using linear interpolation to predict and compensate the latest eye point data includes: Extracting the latest frame of eyepoint data and the previous frame of eyepoint data from the shared eyepoint data area, wherein the latest frame of eyepoint data is the latest eyepoint data, the latest frame of eyepoint data includes corresponding first coordinate data and first angle data, and the previous frame of eyepoint data includes corresponding second coordinate data and second angle data; Calculating a position coordinate difference and a posture angle difference between the latest frame of eye point data and the previous frame of eye point data based on the first coordinate data, the first angle data, the second coordinate data, and the second angle data; Superimposing the position coordinate difference onto the first coordinate data to obtain the predicted position coordinate; Adding the attitude angle difference to the first angle data to obtain a predicted attitude angle; The predicted position coordinates and the predicted attitude angle are combined as compensated data.

8. A flight simulator eye point data compensation system, characterized in that: include: An establishment module is used to establish a shared memory area between the simulation logic processing module and the eyepoint data sending module in the flight simulator system. The shared memory area includes an update state quantity and a shared eyepoint data area. The update state quantity is a frame ID. After the simulation logic processing module completes a frame posture calculation, the frame ID is updated to obtain the latest frame ID. The shared eyepoint data area adopts a first-in-first-out storage mechanism. When the storage capacity reaches a preset upper limit, new data overwrites the oldest data. The eyepoint data sending module obtains the latest eyepoint data by reading the storage location corresponding to the latest frame ID in the shared eyepoint data area. a determination module configured to determine, based on the latest eyepoint data and the latest frame ID, in combination with instructor station settings, airspeed data, and groundspeed data in the flight simulator system, whether the aircraft's current attitude mode is a stationary state or a moving state, where the moving state includes a stationary mode and a maneuvering mode; The compensation module is used to predict and compensate the latest eye point data using linear interpolation when the posture mode is a stable mode, or to predict and compensate the latest eye point data using a pre-trained lightweight LSTM when the posture mode is a maneuvering mode, to obtain corresponding compensated data.

Citation Information

Patent Citations

  • Flight attitude control method based on inertial navigation technology

    CN119781520A

  • Automatic detection method and device for mold penetration and coplanar defects of visual system

    CN120179566A

  • Motion vector selection method in motion compensation prediction

    JP2003111085A