Data processing method, storage medium and computer equipment

By acquiring the original sensing data and generating virtual sensing data for time synchronization and error compensation, the delay problem caused by insufficient computing power of the computing platform is solved, real-time and accurate output of the data is achieved, and the impact of error is reduced.

CN119166293APending Publication Date: 2024-12-20SHENZHEN DEEPROUTE AI CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410945483.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-07-15
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

The delay caused by insufficient computing power of computing platforms is difficult to process, affecting the downstream application of data, and the existing technology lacks effective processing methods.

Method used

By obtaining the original sensing data and corresponding timestamps, virtual sensing data is generated, delay error compensation is performed, and compensation sensing data is output, time synchronization and error compensation are realized to generate more accurate and reliable data.

Benefits of technology

The sensing data is output in real time, accurately and stably, reducing error problems caused by delays, and ensuring the good operation of downstream applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119166293A_ABST
    Figure CN119166293A_ABST
Patent Text Reader

Abstract

The invention discloses a data processing method, a storage medium and computer equipment. The data processing method comprises the following steps: acquiring original sensing data and a corresponding first timestamp; processing original sensing data based on the first timestamp to generate virtual sensing data; and performing delay error compensation on the virtual sensing data, and outputting compensation sensing data. By means of the method, the sensing data of the delay condition caused by insufficient computing power of a computing platform can be processed, the reliability and real-time effectiveness of the data can be improved, and normal operation of downstream applications of the sensing data is guaranteed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing technology, and in particular to a data processing method, a storage medium and a computer device. Background Art

[0002] With the development of the Internet of Everything, more and more data needs to be processed, and the demand for computing power on computing platforms has also increased. When the computing power of a computing platform is insufficient, some tasks are usually processed first, and the rest are delayed or not processed. As a result, some computing delays or errors will inevitably occur for some data, which will have an adverse impact on downstream applications of the data.

[0003] Existing methods for reducing computing delays usually focus on fixed-time delays, such as differences in the time systems of different sensors and physical delays in data transmission. However, there is a lack of comprehensive processing methods for abnormal delays caused by insufficient computing power on the computing platform, making them difficult to handle effectively. Summary of the invention

[0004] This application mainly provides a data processing method, storage medium and computer equipment, aiming to solve the problem of difficult-to-handle delays caused by insufficient computing power of the computing platform.

[0005] In order to solve the above technical problems, the technical solution adopted by the present application is: to provide a data processing method. The data processing method includes: obtaining original sensor data and a corresponding first timestamp; processing the original sensor data based on the first timestamp to generate virtual sensor data; performing delay error compensation on the virtual sensor data, and outputting compensated sensor data.

[0006] In some embodiments, the first timestamp is a timing timestamp, and there is no delay in the generation of the first timestamp; the processing of the original sensor data based on the first timestamp to generate virtual sensor data includes: judging whether there is a delay in the original sensor data based on the first timestamp; if it is confirmed that the original sensor data is delayed, outputting first virtual sensor data, wherein the first virtual sensor data is used to virtually delay the original sensor data; if it is confirmed that there is no delay in the original sensor data, time synchronization is performed to output second virtual sensor data, wherein the second sensor data is used to virtualize the original sensor data and sensor data that has not been virtualized before the original sensor data.

[0007] In some embodiments, determining whether there is a delay in the original sensor data based on the first timestamp includes: performing a difference operation on the first timestamp corresponding to the original sensor data of the processed frame and the second timestamp corresponding to the sensor data of the previous frame; if the difference is greater than a preset threshold, confirming that there is no delay in the original sensor data of the processed frame; if the difference is not greater than the preset threshold, confirming that there is a delay in the original sensor data of the processed frame.

[0008] In some embodiments, if it is confirmed that the original sensor data has a delay, the first virtual sensor data is output, including: using the original sensor data as the first virtual sensor data; and using the sum of the second timestamp and a preset timestamp interval value as the third timestamp corresponding to the first virtual sensor data.

[0009] In some embodiments, if it is confirmed that there is no delay in the original sensor data, time synchronization is performed to output the second virtual sensor data, including: generating K second virtual sensor data between the second timestamp and the first timestamp based on the rounded value K of the divisor between the difference and the preset timestamp interval value; setting the fourth timestamp of the last second virtual sensor data to be synchronized with the first timestamp, and when the K value is greater than 1, setting the timestamp interval of each adjacent second virtual sensor data to the preset timestamp interval value; setting the second virtual sensor data to be consistent with the original sensor data.

[0010] In some embodiments, the delay error compensation of the virtual sensor data and the output of compensated sensor data include: in response to receiving real sensor data with a fifth timestamp, calculating an error compensation value of the real sensor data for the first virtual sensor data or the second virtual sensor data of the fifth timestamp; and error compensating the first virtual sensor data or the second virtual sensor data of the processing frame based on the error compensation value to obtain the compensated sensor data.

[0011] In some embodiments, acquiring the raw sensor data and the corresponding first timestamp includes: acquiring the raw sensor data in response to receiving a data acquisition instruction triggered at a preset time interval.

[0012] In some embodiments, the raw sensor data is inertial measurement data provided by an inertial measurement unit, and the data processing method is used to process the inertial measurement data.

[0013] In order to solve the above technical problems, another technical solution adopted by the present application is: to provide a storage medium on which program data is stored, characterized in that the program data implements the steps of the above data processing method when executed by a processor.

[0014] To solve the above technical problems, another technical solution adopted in the present application is: to provide a computer device, which includes a processor and a memory connected to each other, the memory stores a computer program, and when the processor executes the computer program, the steps of the data processing method as described above are implemented.

[0015] The beneficial effects of the present application are as follows: Different from the prior art, the present application discloses a data processing method, a storage medium and a computer device. The present application processes the acquired original sensor data to generate virtual sensor data at different times and performs time synchronization, inserts virtual data corresponding to the timestamp moment of the missing sensor data due to delay, and then performs error compensation on the virtualized virtual sensor data to obtain more accurate and reliable virtual sensor data, which can output sensor data to downstream applications in real time, accurately and stably, so as to reduce the error problem caused by delay, which is conducive to reducing data anomalies caused by error factors and ensuring the smooth operation of downstream applications. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the prior art descriptions are briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative work, among which:

[0017] Figure 1 It is a flowchart of an embodiment of a data processing method provided by the present application;

[0018] Figure 2 yes Figure 1 A schematic flow chart of an embodiment of step 20 in the embodiment;

[0019] Figure 3 yes Figure 2 A schematic flow chart of an embodiment of step 21 in the embodiment;

[0020] Figure 4 yes Figure 2 A schematic flow chart of an embodiment of step 22 in the embodiment;

[0021] Figure 5 yes Figure 2 A schematic flow chart of an embodiment of step 23 in the embodiment;

[0022] Figure 6 yes Figure 1 A schematic flow chart of an embodiment of step 30 in the embodiment;

[0023] Figure 7 It is a structural schematic diagram of an embodiment of a storage medium provided by the present application;

[0024] Figure 8 It is a structural diagram of an embodiment of a computer device provided by the present application. DETAILED DESCRIPTION

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

[0026] The terms "first", "second", "third" in the embodiments of the present application are only used for descriptive purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of indicated technical features. Thus, the feature defined as "first", "second", "third" can expressly or implicitly include at least one of the features. In the description of the present application, the meaning of "multiple" is at least two, such as two, three, etc., unless otherwise clearly and specifically limited. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device comprising a series of steps or units is not limited to the listed steps or units, but optionally also includes steps or units that are not listed, or optionally also includes other steps or units inherent to these processes, methods, products or devices.

[0027] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0028] This application provides a data processing method, see Figure 1 , Figure 1 1 is a flow chart of an embodiment of a data processing method provided by the present application, the data processing method comprising:

[0029] Step 10: Obtain the original sensor data and the corresponding first timestamp.

[0030] Sensor data refers to data from various sensors, such as data obtained by converting the collected physical quantities through temperature sensors, speed sensors, and pressure sensors. Raw sensor data refers to sensor data directly collected by the sensor and not processed by an algorithm. The data processing method of this scheme is a method for processing the raw sensor data. Raw sensor data usually has a corresponding first timestamp, which is a timing timestamp generated during the process of timing triggering the collection and acquisition of raw sensor data or timing triggering the outbound output of the raw sensor data. There is a definite timing relationship and a definite timestamp interval between each first timestamp. The first timestamp corresponds to the raw sensor data, and there is no delay in the generation of the first timestamp. The delay can be judged later based on the first timestamp.

[0031] After the sensor is turned on, its raw sensor data is usually sent out at a fixed frequency or time interval, and the timestamps of each raw sensor data are usually linearly incremented at equal intervals. For example, if the sensor collects data at a frequency of 100Hz and generates sensor data, there will be a 10ms timestamp interval, and then the sensor data is output every 10ms. When the transmission system is stable, the delay caused by the difference in system time or the physical delay of data transmission is usually a fixed time delay. By measuring these fixed delays and adaptively adjusting the corresponding timestamps, the impact caused by these delays can be overcome.

[0032] However, due to the limited computing power and transmission capacity for processing sensor data, as well as fluctuations caused by the instability of the transmission system, there are often delays of irregular time. Due to the rapid growth of big data business, the computing platform has higher and higher requirements for the central processing unit (CPU) and graphics processing unit (GPU). When the computing power of the computing platform is insufficient, the system will give priority to certain tasks, while tasks with lower priority will be delayed or not processed, which may cause longer irregular delays. The subsequent processing of this type of raw sensor data with irregular delays is the processing of this type of raw sensor data.

[0033] Optionally, the raw sensor data is inertial measurement data provided by an inertial measurement unit, and the data processing method is used to process the inertial measurement data.

[0034] An inertial measurement unit (IMU) is a device used to measure and detect the linear acceleration and angular velocity of an object in three-dimensional space. By integrating the acceleration and angular velocity, the velocity and displacement information of the object can be obtained, and then the posture and position information of the object can be calculated. It is widely used in emerging technologies such as intelligent vehicle systems, drones, and robots. Inertial measurement data is the sensor data obtained by the inertial measurement unit. By subsequently processing the inertial measurement data, the vehicle posture and position information of the corresponding object can be obtained more accurately and stably.

[0035] Optionally, obtaining the original sensor data and the corresponding first timestamp includes:

[0036] Step 11: In response to receiving a data acquisition instruction triggered at a preset time interval, acquiring raw sensor data and a corresponding first timestamp.

[0037] As mentioned above, the delay caused by insufficient computing power of the computing platform is not fixed, and data may be missed or delayed for a long time, which greatly affects the subsequent execution of related computing services. If you have to wait for the data to be received before making a decision, the processing of the subsequent accumulated data also requires a lot of computing power, which leads to the lack of immediacy, delays or interruptions. Therefore, for such problems, you can use the method of timed acquisition to obtain data based on a preset frequency or preset time interval, receive all the acquired raw sensor data, and then compensate for the delayed data to obtain more accurate and effective compensated sensor data, which will not cause interruption problems and has better stability and reliability.

[0038] Step 20: Process the original sensor data based on the first timestamp to generate virtual sensor data.

[0039] After a raw sensor data acquisition step, one or more raw sensor data may be acquired, or no raw sensor data may be acquired. The acquired raw data can be processed according to the first timestamp, for example, sorted according to the first timestamp, and the raw sensor data can be distinguished according to the first timestamp. The first timestamp in this solution is mainly used to determine whether a delay occurs, and then process the delayed data to generate virtual sensor data corresponding to the delayed timestamp moment. The virtual sensor data is data that has not yet been determined and is used to supplement the delayed sensor data. The virtual sensor data is difficult to completely and correctly reflect the correct sensor data at the moment, but by supplementing the virtual sensor data and continuously optimizing its generation method, the virtual sensor data can be made closer to the real sensor data at the corresponding time. When faced with accumulated data, the error accumulation caused by the corresponding delay can be effectively avoided.

[0040] Optionally, see Figure 2 , processing the original sensor data based on the first timestamp to generate virtual sensor data can be performed as follows:

[0041] Step 21: Determine whether there is a delay in the original sensing data based on the first timestamp.

[0042] The first timestamp is a kind of reaction time data. When the sensor is relatively reliable, the interval between each first timestamp is certain, which can be used to determine whether the timing and time interval of processing the original tactile data are correct. Therefore, it can be determined whether the original sensor data is delayed based on the first timestamp.

[0043] Optionally, see Figure 3 , based on the first timestamp, to determine whether the original sensor data has a delay, the following steps can be performed:

[0044] Step 211: performing a difference operation on a first timestamp corresponding to the original sensing data of the processing frame and a second timestamp corresponding to the sensing data of the previous frame.

[0045] Step 212: If the difference is greater than the preset threshold, it is confirmed that there is no delay in the raw sensing data of the processed frame.

[0046] Step 213: If the difference is not greater than the preset threshold, it is determined that there is a delay in the raw sensing data of the processing frame.

[0047] The processing frame is a frame of raw sensor data currently being processed, and the previous frame sensor data is the data processed at the time of the previous frame of the raw sensor data. Its corresponding second timestamp is the latest frame before the raw sensor data of the processing frame is processed. The difference between the timestamps of the raw sensor data of the processing frame and the second timestamp of the previous frame sensor data can be determined based on the difference between the timestamps of the two, thereby determining whether there is a delay.

[0048] The previous frame sensor data may be a frame of sensor data obtained by receiving the original sensor data at the previous frame moment, or may be virtual sensor data or compensated sensor data obtained by processing the previous acquired original sensor data. The second timestamp is the timestamp corresponding to the previous frame sensor data. Accordingly, the second timestamp may be the corresponding real timestamp of the previous frame original sensor data, or may be the timestamp of the virtual sensor data obtained by the subsequent corresponding virtual steps in the processing frame of the previous original sensor data, or may be the timestamp of the compensated sensor data obtained by the subsequent corresponding compensation steps in the processing frame of the previous original sensor data. These second timestamps are obtained based on receiving or virtualizing, compensating, and other steps of the first timestamp of the previous original sensor data, and it is easy to calculate the difference between the first timestamp and the second timestamp.

[0049] The preset threshold is a pre-set value, which is usually less than or equal to the delay between two frames during normal reception. When the difference is greater than the preset threshold, it usually means that the timestamp of the original sensor data of the processed frame is much larger than the timestamp of the data processed in the previous frame, and is closer to or confirmed as the data that should be received at the current moment, and is more timely, so it is considered that there is no delay. When the difference is less than the preset threshold, it usually means that the timestamp of the original data of the processed frame is smaller or even negative than the timestamp of the data processed in the previous frame, which means that it is more deviated from the data that should be received at the current moment, and it is considered to be delayed data.

[0050] For example, the sensor sends 1 at the first moment, 2 at the second moment, and 3 at the third moment, and the interval between the three moments is 10ms. If the preset threshold is set to 5ms, 1 is obtained at the corresponding moment of the first moment on the processing side, and 3 and 2 are obtained in sequence at the corresponding moment of the third moment. Then, if 1 is the previous frame sensing data of 3, the difference obtained is 20ms, so it is judged that there is no delay in the 3 obtained at the corresponding moment of the third moment. After the processing described in the following steps, a virtual data can be created at the corresponding moment of the second moment. After processing, the 3 obtained at the corresponding moment of the third moment is still the data of the latest frame. Therefore, the previous frame sensing data of 3 being 2, the difference between the two is -10ms, indicating that there is a delay in the 2 obtained at the third moment. For another example, in the above example, only 2 is obtained at the corresponding moment of the third moment, so the difference obtained is 10ms and it is temporarily judged that there is no delay, and the subsequent steps are further processed.

[0051] The judgment of the delay is not an absolute judgment of the delay, but it can effectively judge whether the delay is more serious or the delay is reduced, and make a basic judgment, which needs to be further processed through subsequent steps to effectively reduce the impact of these delays. Through this step, it is possible to better judge whether there is a delay based on the trend of data changes, and then better handle the delay or the situation where there is no delay temporarily.

[0052] Step 22: If it is confirmed that the original sensor data is delayed, the first virtual sensor data is output, wherein the first virtual sensor data is used to virtually delay the original sensor data.

[0053] When there is a delay in the original sensor data, it usually means that there is at least one frame without corresponding sensor data, so it is necessary to virtualize the delayed data that has not been obtained to obtain the first virtual sensor data.

[0054] Optionally, if it is confirmed that the original sensor data has a delay, the first virtual sensor data is output, which can be performed according to the following steps:

[0055] Step 221: Use the original sensor data as the first virtual sensor data.

[0056] Step 222: taking the sum of the second timestamp and the preset timestamp interval value as the third timestamp corresponding to the first virtual sensor data.

[0057] In the case of a delay, the original sensor data of the current processing frame is the real sensor data of a previous moment, rather than the original sensor data corresponding to the processing frame at the corresponding moment. However, it is still necessary to output valid sensor data at the processing frame at the corresponding moment, so the original sensor data can be used as the virtual sensor data of the next frame after the preset time interval value of the previous frame. Since this step is performed frame by frame, the first timestamp corresponding to the original sensor data with a delay usually has virtualized the corresponding virtual sensor data. Therefore, the error can be calculated by the original sensor data and the virtual sensor data at the original corresponding timestamp, and then the virtualized first virtual sensor data can be compensated, so as to further improve the accuracy and reliability of the first virtual sensor data, and then output the compensated sensor data at the corresponding moment.

[0058] For example, in a series of sensor data processing, A1, A2, A3 and A4 are sent from the first to the fourth moments respectively, A1 is processed at the corresponding moment of the first moment, A3 is processed at the corresponding moment of the third moment, and according to the following description Figure 5The step generates the second virtual sensor data B2 mentioned later at the corresponding moment of the second moment, and A2 is collected at the fourth moment, then the first virtual sensor data B4 is generated at the corresponding moment of the fourth moment, and then the error compensation value is calculated based on A2 and B2, and then B4 is compensated, and finally the compensated sensor data C4 is output at the fourth moment.

[0059] By processing the delayed output, the processed data of the time frame corresponding to the current moment can be generated in time, and more accurate and reliable compensated sensing data of the current frame can be obtained through compensation in subsequent steps. The first virtual sensing data uses the timestamp required by the latest frame and the original sensing data used for compensation as its corresponding data content, which is conducive to ensuring the real-time validity of the data and reducing the impact of delay on the data, and provides a data basis for subsequent error compensation.

[0060] Step 23: If it is confirmed that there is no delay in the original sensor data, time synchronization is performed to output second virtual sensor data, wherein the second sensor data is used to virtualize the original sensor data and sensor data that has not been virtualized before the original sensor data.

[0061] In the absence of delay, the original sensor data of the current processing frame, that is, the sensor data corresponding to the current moment, can better reflect the real-time status of a certain value. However, in practice, there will be some parameters that require accumulated data to be defined, and since the non-delay judgment is based on a large timestamp interval before it, there may be some data that is temporarily missing due to delay before the original sensor data, which will cause a large error in the accumulated data. For example, the acceleration can be determined from the data of the inertial measurement unit, but the accumulated speed cannot be directly determined. For example, in three consecutive time periods, the speed value of the acceleration integration in the first time period is 10, the speed value of the acceleration integration in the second time period is -20, and the speed value of the acceleration integration in the third time period is 10. Then, after three time periods, the actual speed has not changed. If the data in the second time period is delayed, it may be considered that the speed has increased by 20, resulting in an inappropriate corresponding speed adjustment strategy. In actual application scenarios, it may cause a large loss. Therefore, in the absence of delay, the original sensor data of the processed frame still needs to be compensated to a certain extent later. Therefore, the original sensor data without delay can also be used as virtual sensor data, and the sensor data that has not been virtualized before can be virtualized for subsequent error compensation.

[0062] Optionally, see Figure 5 If it is confirmed that there is no delay in the original sensor data, time synchronization is performed to output the second virtual sensor data, which can be performed as follows:

[0063] Step 231: Generate K second virtual sensor data between the second timestamp and the first timestamp based on a rounded value K of a divisor between the difference value and a preset timestamp interval value.

[0064] Step 232: setting the fourth timestamp of the last second virtual sensor data to be synchronized with the first timestamp, and when the K value is greater than 1, setting the timestamp interval of each adjacent second virtual sensor data to a preset timestamp interval value.

[0065] Step 233: Set the second virtual sensor data to be consistent with the original sensor data.

[0066] When judging that there is no delay, there may be data between the aforementioned first timestamp and the second timestamp that has not been accumulated due to the previous delay, so the above method can be used to judge the second virtual sensor data that needs to be supplemented between them, and synchronize the corresponding time and sensor data. For example, in a series of sensor data processing processes, A1, A2, A3 and A4 are sent from the first to the fourth moments respectively, A1 is processed at the corresponding moment of the first moment, A4 is received at the corresponding moment of the fourth moment, and it is believed that A4 has no delay, but in fact there are data at the second and third moments before A4 that have not been obtained. The corresponding second virtual data B2 and B3 can be determined by this method, and A4 can be synchronized to the second virtual data B4, and then B2, B3 and B4 are compensated accordingly through error compensation.

[0067] The K value can usually be approximated to an integer when the sensor performance is relatively stable. The specific virtual sensor data that can be generated can be determined by rounding. When K is less than 1, only the original sensor data is virtualized. When it is greater than 1, K-1 second virtual sensor data need to be interpolated. The second virtual sensor data is set to be consistent with the original sensor data because the analog quantity corresponding to the sensor data usually changes continuously and is pushed forward from the timestamp of the second virtual sensor data virtualized from the original sensor data. Therefore, the actual situation may be closer to the original sensor data, which is also conducive to the consistency of error compensation of these data later.

[0068] Through this step, time synchronization of data is performed based on the undelayed original sensor data to obtain one or more virtual sensor data, thereby realizing the supplement and virtualization of sensor data, ensuring the validity and reliability of the data, and guaranteeing the cumulative effect of the data, which is conducive to improving the accuracy and stability of the data and also lays a data foundation for subsequent error compensation.

[0069] Step 30: Perform delay error compensation on the virtual sensing data and output compensated sensing data.

[0070] After the above steps, since the first virtual sensor data and the second virtual sensor data generated by virtual and time synchronization are virtual and have no corresponding real sensor data to verify, there will still be errors, so it is necessary to compensate for these existing errors. There are many ways to compensate for errors, such as making the data smoother through averaging algorithms and filter methods, improving the rationality of data through neural network algorithms and machine learning algorithms, optimizing the continuity of data through interpolation and fitting algorithms, or through targeted methods for different sensor data, etc., through error compensation, more accurate, reasonable and continuous data are obtained, and the compensated sensor data obtained after compensation is output to downstream applications in a timely and stable manner, thereby ensuring the good operation of downstream applications.

[0071] Optionally, see Figure 6 , delay error compensation is performed on virtual sensor data, and compensated sensor data is output, which can be performed as follows:

[0072] Step 31: In response to receiving the real sensor data of the fifth timestamp, calculating an error compensation value of the real sensor data to the first virtual sensor data or the second virtual sensor data of the fifth timestamp.

[0073] Step 32: Perform error compensation on the first virtual sensor data or the second virtual sensor data of the processing frame based on the error compensation value to obtain compensated sensor data.

[0074] The fifth timestamp is the aforementioned timestamp for which there is corresponding first virtual sensor data or second virtual sensor data. The real sensor data of the fifth timestamp is the delayed sensor data, which is the real value of the sensor data at the corresponding moment. The corresponding error compensation value can be obtained through the real sensor data and the virtual sensor data at the corresponding moment. The error compensation value can be the difference between the values ​​calculated based on the cumulative amount, the differential amount or other specific algorithms. In addition to being used to compensate for the native data of the sensor, the data associated with the native data can also be compensated by the corresponding algorithm. According to the error compensation value, the virtual sensor data of the current processing frame can be compensated, so as to obtain more accurate and reliable compensated sensor data.

[0075] Taking the acceleration measurement data of the inertial measurement unit as an example, the real acceleration at the first moment is 100, while the virtual acceleration at the first moment is 90, and the virtual acceleration at the second moment is 120. Then the error compensation value is the integral difference between the real acceleration and the virtual acceleration at the first moment, and the error compensation is the addition of the virtual acceleration data at the second moment and the difference. That is, the error compensation value is -10, and the final output compensated acceleration data is 110. Due to the cumulative amount of acceleration, that is, the change in speed is obtained by integrating over time, and the speed is then integrated to obtain the cumulative change in distance and position. If there is an error in the corresponding acceleration, there will be insufficiency in the acceleration and speed in the subsequent process. Subsequently, based on the integral value of the acceleration from the first moment to the second moment, acceleration processing can be performed, and the corresponding position information can also be corrected in time according to the position change caused by the integral of the speed change.

[0076] The error compensation method proposed in this solution is a targeted and effective error compensation method. It can be selected and adjusted according to actual needs and can be combined with the corresponding integral, differential or data generated by different targeted algorithms for more diverse data compensation. It has better flexibility and practicality, effectively improves the accuracy and stability of the data, and ensures the real-time effectiveness of the data. This solution has broad application prospects in the data processing of various sensors such as inertial measurement units, global positioning systems, cameras, etc. It also has good adaptability to different types of sensor data, effectively improves the real-time, accuracy and stability of sensor data, and can provide stable and reliable data support for related downstream applications.

[0077] See also Figure 7 , Figure 7 It is a structural diagram of an embodiment of the storage medium provided by the present application.

[0078] The storage medium 40 stores program data 41. When the program data 41 is executed by the processor, the following is achieved: Figures 1 to 6 The data processing method described.

[0079] The program data 41 is stored in a storage medium 40, and includes a number of instructions for enabling a network device (such as a router, a personal computer, a server, or other network device) or a processor to execute all or part of the steps of the method described in each embodiment of the present application.

[0080] Optionally, the storage medium 40 may be a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, an optical disk, or other medium that can store the program data 41 .

[0081] See also Figure 8 , Figure 8It is a structural schematic diagram of an embodiment of a computer device provided by the present application.

[0082] The computer device 50 includes a processor 52 and a memory 51 connected to each other. The memory 51 stores a computer program. When the processor 52 executes the computer program, the following is achieved: Figures 1 to 6 The data processing method described herein. The memory 51 may include the storage medium 40, or may be other independently developed memory.

[0083] Different from the prior art, the present application discloses a data processing method, storage medium and computer device. By processing the acquired original sensor data to generate virtual sensor data at different times and performing time synchronization, virtual data corresponding to the timestamp of the missing sensor data caused by the delay is inserted, and then the virtual sensor data is error compensated to obtain more accurate and reliable virtual sensor data, which can output sensor data to downstream applications in real time, accurately and stably, so as to reduce the error problem caused by the delay, which is conducive to reducing the data anomaly caused by the error factor and ensuring the good operation of downstream applications.

[0084] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the storage medium embodiment and the electronic device embodiment, since they are basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0085] The present application can be used in many general or special computing system environments or configurations, such as personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronic devices, network PCs, minicomputers, mainframe computers, distributed computing environments including any of the above systems or devices, etc.

[0086] In the several embodiments provided in this application, it should be understood that the disclosed method storage medium and computer device can be implemented in other ways. For example, the device implementation described above is only illustrative, for example, the division of the modules or units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed.

[0087] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0088] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0089] The above descriptions are merely embodiments of the present application and are not intended to limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present application.

Claims

1. A data processing method, characterized in that: include: Obtaining raw sensor data and a corresponding first timestamp; Processing the raw sensor data based on the first timestamp to generate virtual sensor data; Delay error compensation is performed on the virtual sensing data, and compensated sensing data is output.

2. The data processing method according to claim 1, characterized in that: The first timestamp is a timing timestamp, and there is no delay in generating the first timestamp; The processing of the original sensor data based on the first timestamp to generate virtual sensor data includes: determining whether the raw sensor data has a delay based on the first timestamp; If it is confirmed that the original sensor data is delayed, outputting first virtual sensor data, wherein the first virtual sensor data is used to virtually detect the delayed original sensor data; If it is confirmed that there is no delay in the original sensor data, time synchronization is performed to output second virtual sensor data, wherein the second sensor data is used to virtualize the original sensor data and sensor data that has not been virtualized before the original sensor data.

3. The data transmission method according to claim 2, characterized in that: The determining, based on the first timestamp, whether the raw sensing data has a delay includes: Performing a difference operation on the first timestamp corresponding to the original sensor data of the processing frame and the second timestamp corresponding to the sensor data of the previous frame; If the difference is greater than a preset threshold, confirming that there is no delay in the raw sensing data of the processing frame; If the difference is not greater than the preset threshold, it is confirmed that there is a delay in processing the raw sensing data of the frame.

4. The data processing method according to claim 3, characterized in that: If it is confirmed that the original sensor data has a delay, outputting first virtual sensor data includes: Using the original sensor data as the first virtual sensor data; The sum of the second timestamp and a preset timestamp interval value is used as the third timestamp corresponding to the first virtual sensor data.

5. The data processing method according to claim 4, characterized in that: If it is confirmed that there is no delay in the original sensor data, time synchronization is performed to output second virtual sensor data, including: Generate K pieces of the second virtual sensor data between the second timestamp and the first timestamp based on a rounded value K of a divisor between the difference and the preset timestamp interval value; Setting the fourth timestamp of the last second virtual sensor data to be synchronized with the first timestamp, and when the K value is greater than 1, setting the timestamp interval of each adjacent second virtual sensor data to the preset timestamp interval value; The second virtual sensor data is set to be consistent with the original sensor data.

6. The data processing method according to claim 5, characterized in that: The step of performing delay error compensation on the virtual sensing data and outputting compensated sensing data comprises: In response to receiving the real sensor data of the fifth timestamp, calculating an error compensation value of the real sensor data to the first virtual sensor data or the second virtual sensor data of the fifth timestamp; Error compensation is performed on the first virtual sensor data or the second virtual sensor data of the processing frame based on the error compensation value to obtain the compensated sensor data.

7. The data processing method according to claim 1, characterized in that: The obtaining of the original sensor data and the corresponding first timestamp includes: In response to receiving a data acquisition instruction triggered at a preset time interval, the raw sensor data and the corresponding first timestamp are acquired.

8. The data processing method according to claim 1, characterized in that: The raw sensor data is inertial measurement data provided by an inertial measurement unit, and the data processing method is used to process the inertial measurement data.

9. A storage medium having program data stored thereon, characterized in that: When the program data is executed by a processor, the steps of the data processing method according to any one of claims 1 to 8 are implemented.

10. A computer device, characterized in that: The method comprises a processor and a memory connected to each other, wherein the memory stores a computer program, and when the processor executes the computer program, the steps of the data processing method according to any one of claims 1 to 8 are implemented.