Tracking data optimization model training method and optimization method, device, equipment and medium
By constructing a simulation data set and training an optimization model, the problem of the positioning accuracy of the optical tracking equipment in virtual shooting is solved, and efficient denoising optimization is achieved, and positioning accuracy and stability are improved.
Patent Information
- Application Number
- CN202411930393.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-25
- Publication Date
- 2025-04-25
- Estimated Expiration
- 2044-12-25
AI Technical Summary
In virtual shooting, the positioning accuracy of the optical tracking device to the camera position is disturbed by the environment, resulting in the loss of noise and information, and it is difficult for existing filtering methods to effectively denoise.
A method of training for tracking data optimization model is proposed. By constructing a simulation data set, the original simulation tracking data with randomly extracted and added noise, the initial optimization model is trained, and the model parameters are adjusted to obtain a high-precision tracking data optimization model.
It realizes efficient and accurate denoising optimization of data collected by the tracking equipment, and improves the accuracy and stability of object positioning.
Smart Images

Figure CN119884740A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of artificial intelligence, and in particular to a tracking data optimization model training method and optimization method, device, equipment and medium. Background Art
[0002] In virtual shooting, in order to achieve the combination of virtual and real scenes, it is necessary to know the spatial position and posture of the shooting camera in real time, and drive the virtual camera in the virtual scene accordingly. This kind of camera tracking is generally achieved through some optical tracking devices (common optical tracking devices include OptiTrack, Mosys, etc.), which can calculate the spatial position and rotation of specific light points or photosensitive elements. In actual use, the light point or photosensitive element can be fixed together with the camera to indirectly obtain the camera's posture. The positioning accuracy of the camera's posture will directly affect the actual shooting effect. However, due to the complexity of film and television shooting scenes and lighting environments, the tracking and positioning of the light points or photosensitive elements on the camera by these optical tracking devices is easily affected by the environment, resulting in serious noise or even loss of the camera's posture data, affecting normal shooting.
[0003] At present, filtering methods are usually used to denoise time series data such as continuously collected posture data. Common filtering methods include but are not limited to: moving average filter, exponential moving average, Kalman filter, etc. However, such filtering methods are prone to information loss in the process of processing time series data (for example, moving average filtering will lose low-frequency information in the data), or there are specific assumptions about the noise distribution in the data (for example, Kalman filtering assumes that the noise follows a Gaussian distribution), or there will be a large lag. In the virtual shooting scene, since the reasons that interfere with the tracking and positioning of the optical tracking device are complex and difficult to locate, the noise distribution of the posture in the tracking data is also complex and changeable and difficult to estimate. The general filtering method cannot play a denoising role, but will cause the loss of necessary information. Summary of the invention
[0004] In view of this, the present disclosure proposes a tracking data optimization model training method and optimization method, device, equipment and medium, which can use the trained tracking data optimization model to denoise and optimize the tracking data collected by the tracking device, thereby improving the accuracy and stability of object tracking and positioning.
[0005] According to one aspect of the present disclosure, a tracking data optimization model training method is provided, comprising: randomly extracting n groups of original simulated tracking data from a pre-constructed simulation data set, wherein the simulation data set includes a plurality of simulated motion trajectories, each simulated motion trajectory includes a plurality of groups of original simulated tracking data generated by simulating the object motion of a specified object; a single group of original simulated tracking data includes original simulated pose data of the object center of the specified object and original simulated position data of m observation points set on the object surface, where n and m are positive integers; by randomly adding noise to each group of original simulated tracking data in the n groups of original simulated tracking data, n groups of noise-containing simulated tracking data are obtained; the n groups of noise-containing simulated tracking data are input into an initial optimization model to obtain n groups of optimized simulated tracking data output by the initial optimization model, each group of optimized simulated tracking data includes optimized simulated pose data corresponding to the object center and optimized simulated position data corresponding to each observation point; according to the loss between the n groups of optimized simulated tracking data and the n groups of original simulated tracking data, the model parameters of the initial optimization model are adjusted to obtain a trained tracking data optimization model, and the tracking data optimization model is used to optimize the tracking data of the specified object actually collected by a tracking device.
[0006] In a possible implementation, the method of randomly adding noise to each group of original simulated tracking data in the n groups of original simulated tracking data to obtain n groups of noisy noise simulated tracking data includes: randomly adding noise to the original simulated position data of each observation point in each group of original simulated tracking data to obtain the noise simulated position data of each observation point corresponding to each group; determining the noise simulated pose data of the object center corresponding to each group according to the noise simulated position data of each observation point corresponding to each group; and obtaining the n groups of noise simulated tracking data based on the noise simulated position data of each observation point corresponding to each group and the noise simulated pose data of the object center corresponding to each group.
[0007] In a possible implementation, the randomly adding noise to the original simulated position data of each observation point in each group of original simulated tracking data in the n groups of original simulated tracking data includes at least one of the following processing: for the original simulated position data of the ith observation point in the xth group of original simulated tracking data, adding noise of random amplitude to the original simulated position data of the ith observation point according to a specified first probability, or randomly removing the original simulated position data of the ith observation point according to the first probability, wherein 1≤i≤m, 1≤x≤n; for j groups of original simulated tracking data arranged consecutively in the n groups of original simulated tracking data, adding noise of the same amplitude to j original simulated position data of the same observation point in the j groups of original simulated tracking data according to a specified second probability, j<n.
[0008] In a possible implementation, the construction process of any simulated motion trajectory in the simulated data set includes: randomly generating a total number of groups and determining the group numbers arranged in order under the total number of groups, wherein the total number of groups represents the total number of original simulated tracking data in the simulated motion trajectory to be generated; randomly generating a key number of groups, and randomly determining each key group number under the key number of groups from the group numbers arranged in order under the total number of groups, wherein the key number of groups is less than the total number of groups; randomly generating original simulated pose data corresponding to the center of the object for each key group number, and for any remaining group number other than the key group number, interpolating the original simulated pose data of the two key group numbers closest to the remaining group number to obtain the original simulated pose data of the center of the object corresponding to the remaining group number; determining the original simulated position data of the m observation points corresponding to each group number according to the original simulated pose data of the center of the object corresponding to each group number under the total number of groups and the relative position relationship of the m observation points on the surface of the object relative to the center of the object; and obtaining the simulated motion trajectory based on the original simulated pose data of the center of the object corresponding to each group number under the total number of groups and the original simulated position data of the m observation points corresponding to each group number.
[0009] In a possible implementation, the randomly extracting n groups of original simulated tracking data from a pre-constructed simulated data set includes: randomly extracting n simulated motion trajectories from the simulated data set, and randomly extracting a group of original simulated tracking data from each of the n simulated motion trajectories to obtain n groups of original simulated tracking data.
[0010] In a possible implementation, adjusting the model parameters of the initial optimization model according to the loss between the n groups of optimized simulation tracking data and the n groups of original simulation tracking data includes: determining, according to the n groups of optimized simulation tracking data and the n groups of original simulation tracking data, a first distance loss between the original simulation position data corresponding to the object center and the optimized simulation position data, a cosine distance loss between the original simulation posture data corresponding to the object center and the optimized simulation posture data, and a second distance loss between the original simulation position data corresponding to each observation point and the optimized simulation position data; determining a first smoothness loss, a second smoothness loss, and a third smoothness loss based on the n groups of optimized simulation tracking data, wherein the first smoothness loss includes the smoothness of the n optimized simulation position data corresponding to the object center, the second smoothness loss includes the smoothness of the n optimized simulation posture data corresponding to the object center, and the third smoothness loss includes the smoothness of the n optimized simulation position data corresponding to each observation point; adjusting the model parameters of the initial optimization model according to the first distance loss, the cosine distance loss, the second distance loss, the first smoothness loss, the second smoothness loss, and the third smoothness loss.
[0011] In a possible implementation, adjusting the model parameters of the initial optimization model according to the first distance loss, the cosine distance loss, the second distance loss, the first smoothness loss, the second smoothness loss, and the third smoothness loss includes: determining, according to the n groups of original simulated tracking data, a first degree of change corresponding to the original simulated position data corresponding to the center of the object, a second degree of change corresponding to the original simulated posture data corresponding to the center of the object, and a third degree of change corresponding to the original simulated position data corresponding to each observation point; determining a weight coefficient according to the first distance loss, the cosine distance loss, the second distance loss, the first degree of change, the second degree of change, and the third degree of change; weighting the first smoothness loss, the second smoothness loss, and the third smoothness loss based on the weight coefficient to obtain a weighted first smoothness loss, a weighted second smoothness loss, and a weighted third smoothness loss; adjusting the model parameters of the initial optimization model according to the first distance loss, the cosine distance loss, the second distance loss, the weighted first smoothness loss, the weighted second smoothness loss, and the weighted third smoothness loss.
[0012] According to another aspect of the present disclosure, there is provided an object tracking data optimization method, comprising: acquiring n groups of tracking data continuously collected by a tracking device, the n groups of tracking data comprising a currently collected group of tracking data and n-1 groups of tracking data collected historically, the tracking data comprising the pose data of the object center of a specified object tracked by the tracking device and the position data of m observation points set on the surface of the object, where n and m are positive integers; optimizing the n groups of tracking data using a trained tracking data optimization model to obtain n groups of optimized target tracking data; wherein the tracking data optimization model is trained using the training method; and determining the target pose data corresponding to the currently collected group of tracking data in the n groups of target tracking data as the current positioning pose of the specified object.
[0013] According to another aspect of the present disclosure, a tracking data optimization model training device is provided, comprising: an extraction module, for randomly extracting n groups of original simulated tracking data from a pre-constructed simulation data set, wherein the simulation data set includes a plurality of simulated motion trajectories, each simulated motion trajectory includes a plurality of groups of original simulated tracking data generated by simulating the object motion of a specified object; a single group of original simulated tracking data includes original simulated pose data of the object center of the specified object and original simulated position data of m observation points set on the surface of the object, where n and m are positive integers; and a noise adding module, for randomly adding noise to each group of original simulated tracking data in the n groups of original simulated tracking data. , obtaining n groups of noise-simulated tracking data with noise; an optimization module, used to input the n groups of noise-simulated tracking data into the initial optimization model, to obtain n groups of optimized simulation tracking data output by the initial optimization model, each group of optimized simulation tracking data includes optimized simulation pose data corresponding to the object center and optimized simulation position data corresponding to each observation point; a parameter adjustment module, used to adjust the model parameters of the initial optimization model according to the loss between the n groups of optimized simulation tracking data and the n groups of original simulation tracking data, so as to obtain a trained tracking data optimization model, wherein the tracking data optimization model is used to optimize the tracking data of the specified object actually collected by the tracking device.
[0014] According to another aspect of the present disclosure, an object tracking data optimization device is provided, including: an acquisition module, used to acquire n groups of tracking data continuously collected by a tracking device, the n groups of tracking data include a currently collected group of tracking data and n-1 groups of tracking data collected historically, the tracking data include the pose data of the object center of a specified object tracked by the tracking device and the position data of m observation points set on the surface of the object, n and m are positive integers; a data optimization module, used to optimize the n groups of tracking data using a trained tracking data optimization model to obtain n groups of optimized target tracking data; wherein the tracking data optimization model is trained using the training method; a positioning module, used to determine the target pose data corresponding to the currently collected group of tracking data among the n groups of target tracking data as the current positioning pose of the specified object.
[0015] According to another aspect of the present disclosure, an electronic device is provided, comprising: a processor; and a memory for storing processor-executable instructions; wherein the processor is configured to implement the above method when executing the instructions stored in the memory.
[0016] According to another aspect of the present disclosure, a non-volatile computer-readable storage medium is provided, on which computer program instructions are stored, wherein the computer program instructions implement the above method when executed by a processor.
[0017] According to another aspect of the present disclosure, a computer program product is provided, including a computer-readable code, or a non-volatile computer-readable storage medium carrying the computer-readable code. When the computer-readable code runs in a processor of an electronic device, the processor in the electronic device executes the above method.
[0018] According to various aspects of the present disclosure, by constructing original simulated tracking data and adding noise to the original simulated tracking data, and then using the noisy simulated tracking data to train an initial optimization model, a trained tracking data optimization model with higher accuracy and stability can be obtained. The tracking data optimization model can then be used to achieve efficient and accurate optimization and denoising of the tracking data actually collected by the tracking device, thereby improving the positioning accuracy and stability of the object's posture.
[0019] Further features and aspects of the present disclosure will become apparent from the following detailed description of exemplary embodiments with reference to the attached drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate exemplary embodiments, features, and aspects of the disclosure and, together with the description, serve to explain the principles of the disclosure.
[0021] Figure 1 A flowchart of a tracking data optimization model training method according to an embodiment of the present disclosure is shown.
[0022] Figure 2 A schematic diagram showing original simulated pose data of the center of an object under a total number of groups according to an embodiment of the present disclosure.
[0023] Figure 3 A schematic diagram showing a simulated motion trajectory according to an embodiment of the present disclosure is shown.
[0024] Figure 4 A schematic diagram showing n groups of original simulation tracking data according to an embodiment of the present disclosure is shown.
[0025] Figure 5 A schematic diagram showing n groups of noise simulation tracking data according to an embodiment of the present disclosure is shown.
[0026] Figure 6 A schematic diagram of a network structure of an initial optimization model according to an embodiment of the present disclosure is shown.
[0027] Figure 7 A block diagram of a tracking data optimization model training device according to an embodiment of the present disclosure is shown.
[0028] Figure 8 A block diagram of an electronic device 1900 according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0029] Various exemplary embodiments, features and aspects of the present disclosure will be described in detail below with reference to the accompanying drawings. The same reference numerals in the accompanying drawings represent elements with the same or similar functions. Although various aspects of the embodiments are shown in the accompanying drawings, the drawings are not necessarily drawn to scale unless otherwise specified.
[0030] The word “exemplary” is used exclusively herein to mean “serving as an example, example, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.
[0031] The term "and / or" herein is only a description of the association relationship of associated objects, indicating that there may be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the term "at least one" herein represents any combination of at least two of any one or more of a plurality of. For example, including at least one of A, B, and C can represent any one or more elements selected from the set consisting of A, B, and C. In the description of the present disclosure, "plurality" means two or more, unless otherwise clearly and specifically defined.
[0032] It should be understood that the terms "first", "second", etc. in the claims, specifications and drawings of the present disclosure are used to distinguish different objects rather than to describe a specific order. The terms "include" and "comprise" used in the specifications and claims of the present disclosure indicate the presence of the described features, wholes, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or their collections.
[0033] In addition, in order to better illustrate the present disclosure, numerous specific details are given in the following specific embodiments. It should be understood by those skilled in the art that the present disclosure can also be implemented without certain specific details. In some examples, methods, means, components and circuits well known to those skilled in the art are not described in detail in order to highlight the subject matter of the present disclosure.
[0034] In order to better understand the solutions of the embodiments of the present disclosure, relevant terms and concepts that may be involved in the embodiments of the present disclosure are first introduced below.
[0035] (1) Time series models are a type of deep learning model specifically designed to process time series data, such as Long Short-Term Memory (LSTM), Transformer, and Recurrent Neural Network (RNN). These models use deep learning methods to capture complex patterns and dependencies in time series data, thereby performing tasks such as prediction, classification, and anomaly detection.
[0036] (2) An optical tracking device is a technical device used to track the position and motion of an object. It usually uses optical sensors and cameras to accurately measure the three-dimensional position and motion state of the tracked object, such as OptiTrack (a motion capture system), Mosys (an optical camera tracking system), etc.
[0037] (3) Pose refers to the position and orientation of an object in three-dimensional space. Pose includes the position of the object (such as the coordinates of the camera center in the world coordinate system) and the attitude of the object (such as the direction of the camera optical axis in the world coordinate system). Pose is usually described by six parameters: three translation parameters (x, y, z) represent the position, and three rotation parameters represent the orientation (for example, it can be represented by Euler angles, rotation matrices, or quaternions).
[0038] As mentioned above, film and television shooting scenes and lighting environments are very complex, and the tracking and positioning functions of these optical tracking devices are easily disturbed by the environment, which may cause serious noise or even loss of the pose data of the tracked camera, affecting normal shooting. In order to improve the accuracy and stability of the pose data and ensure that the position of the real camera can be restored in various complex environments, the present disclosure proposes a tracking data optimization model training method and an object tracking data optimization method, which can be applied to the denoising optimization of the camera pose in virtual shooting. A tracking data optimization model is trained by using simulated noise data. The tracking data optimization model can use the timing information and observation point characteristics in the tracking data to optimize the tracking data collected by the optical tracking device (i.e., denoising and other post-processing), which can significantly improve the accuracy and stability of object positioning in actual use.
[0039] The training method and optimization method of the embodiment of the present disclosure can be deployed on various terminal devices through software or hardware modification. The terminal device involved in the embodiment of the present disclosure may refer to a device with a wireless connection function and / or a wired connection function. The wireless connection function refers to the ability to connect to other devices through wireless connection methods such as wifi and Bluetooth. The terminal device involved in the embodiment of the present disclosure may also communicate with other devices through a wired connection function. The terminal device involved in the embodiment of the present disclosure may be a touch screen, a non-touch screen, or a screenless terminal device. The touch screen terminal device can be controlled by clicking and sliding on the display screen with a finger or a stylus. The non-touch screen device can be connected to an input device such as a mouse, a keyboard, a touch panel, and the terminal device is controlled through the input device. For example, the device without a screen may be a Bluetooth speaker without a screen. For example, the terminal device of the present application may include but is not limited to a user equipment (UE), a mobile device, a mobile terminal, a handheld device, a tablet computer, a laptop computer, a palmtop computer, a computing device, etc.
[0040] The training method and optimization method of the embodiment of the present disclosure can also be deployed on a server, which can be located in the cloud or locally, and can be a physical device or a virtual device, such as a virtual machine, a container, etc., and has a wireless communication function, wherein the wireless communication function can be set in the chip (system) or other parts or components of the server. It can refer to a device with a wireless connection function, and the wireless connection function refers to the ability to connect to other servers or terminal devices through wireless connection methods such as Wi-Fi and Bluetooth. The server involved in the embodiment of the present disclosure may also have the function of communicating through a wired connection. For example, the server of the embodiment of the present disclosure can be located in the cloud, communicate with the terminal device, receive the optical tracking device sent by the terminal device to continuously collect n groups of tracking data of the specified object, and use the optimization method deployed on the server based on the n groups of tracking data to obtain the current positioning posture of the specified object, and return it to the terminal device, so as to display the current positioning posture of the specified object to the user in the terminal device.
[0041] The following Figures 1 to 6 The tracking data optimization model training method provided in the embodiment of the present disclosure is introduced in detail.
[0042] Figure 1 FIG. 1 is a flowchart of a tracking data optimization model training method according to an embodiment of the present disclosure. Figure 1 As shown, the method includes: step S11 to step S14.
[0043] In step S11, n groups of original simulated tracking data are randomly extracted from a pre-constructed simulation data set, wherein the simulation data set includes multiple simulated motion trajectories, each simulated motion trajectory includes multiple groups of original simulated tracking data generated by simulating the object motion of a specified object; a single group of original simulated tracking data includes original simulated pose data of the object center of the specified object and original simulated position data of m observation points set on the surface of the object, and n and m are positive integers.
[0044] Among them, the specified object can be an object to be tracked and located, for example, a real camera in a virtual shooting scene, a real human body in a motion capture scene, etc., which is not limited by the embodiments of the present disclosure. As described above, when an optical tracking device is used to track and locate an object, a specific light-emitting point or photosensitive element is set on the surface of the object, and the spatial position and rotation of the specific light-emitting point or photosensitive element are calculated to indirectly calculate the position and posture of the center of the object (that is, the center of mass of the object). Therefore, the light-emitting points or photosensitive elements set on the surface of the object are also the observation points set on the surface of the object. It should be understood that those skilled in the art do not limit the position, number, type, etc. of the observation points set on the surface of the object.
[0045] It is understandable that training a model requires a large amount of data. Although real noise data can be obtained in actual situations, it is difficult to obtain the real value corresponding to the noise data. Therefore, the embodiment of the present disclosure uses simulated tracking data to train the model, that is, a large amount of rich simulated tracking data is used to approximate the real data distribution. Specifically, the construction process of any simulated motion trajectory in the simulated data set includes:
[0046] Step S111, randomly generating a total number of groups, and determining group numbers arranged in order under the total number of groups, the total number of groups representing the total number of original simulated tracking data in the simulated motion trajectory to be generated;
[0047] Step S112, randomly generating a key group number, and randomly determining each key group number under the key group number from the group numbers arranged in order under the total group number, the key group number being less than the total group number;
[0048] Step S113, randomly generating original simulated pose data corresponding to the center of the object for each key group number, and for any remaining group number other than the key group number, interpolating the original simulated pose data of the two key group numbers closest to the remaining group number, to obtain the original simulated pose data of the center of the object corresponding to the remaining group number;
[0049] Step S114, determining the original simulated position data of the m observation points corresponding to each group number according to the original simulated pose data of the object center corresponding to each group number under the total number of groups and the relative position relationship of the m observation points on the object surface relative to the object center;
[0050] Step S115, obtaining a simulated motion trajectory based on the original simulated pose data of the object center corresponding to each group number under the total number of groups and the original simulated position data of the m observation points corresponding to each group number.
[0051] Among them, randomly generating the total number of groups is equivalent to randomly generating the length of the simulated motion trajectory, which is conducive to generating rich and diverse simulated motion trajectories; among them, the group numbers arranged in order under the total number of groups are determined, that is, how many group numbers are generated according to the total number of groups, so as to use the group numbers to generate the original simulated tracking data arranged in order on a simulated motion trajectory. For example, if the total number of groups is 1000, the group numbers arranged in order under the total number of groups 1000 can be: 1, 2, 3, ..., 1000. That is, they can be sorted from small to large according to the group numbers. A group number corresponds to a group of original simulated tracking data in a simulated motion trajectory, representing a node on a trajectory, and the group number can be used to indicate the order of the generated original simulated tracking data.
[0052] Among them, randomly generating a key group number less than the total group number and randomly determining each key group number under the key group number from the group numbers arranged in order under the total group number is equivalent to randomly selecting certain group numbers as key group numbers. For example, the key group number can be 100, so 100 group numbers can be randomly determined from the above 1, 2, 3, ..., 1000 as key group numbers. Then, the original simulation pose data can be randomly generated for each key group number, that is, the position and posture (that is, orientation, rotation) of the center of the object are randomly generated for each key group number, and the original simulation pose data can also be generated for the first group number, which is equivalent to giving the initial pose to the simulated motion trajectory, so as to generate the original simulation pose data of the remaining group numbers using the interpolation algorithm later. It should be understood that those skilled in the art can use any known random algorithm in the art to realize the random generation of the total number of groups, the key number of groups and the original simulation pose data, and the embodiments of the present disclosure are not limited to this.
[0053] Among them, the original simulation pose data corresponding to each key group number is known, and the interpolation algorithms known in the art, such as linear interpolation, quadratic interpolation, spline interpolation and other interpolation algorithms, can be used to interpolate the original simulation pose data of the two key group numbers closest to each remaining group number (that is, non-key group numbers other than the key group number) to obtain the original simulation pose data of the object center corresponding to each remaining group number. For example, if 1 and 10 are key group numbers, then the 8 remaining group numbers "2, 3, 4, 5, 6, 7, 8, 9" between 1 and 10 can be interpolated according to the original simulation pose data of key group numbers 1 and 10. The interpolation method can be randomly selected from the above-mentioned linear interpolation, quadratic interpolation, spline interpolation and other interpolation algorithms to obtain the original simulation pose data of each of the remaining group numbers in the 8 remaining group numbers, namely "2, 3, 4, 5, 6, 7, 8, 9", thereby obtaining the original simulation pose data of the object center corresponding to each group number under the total group number, which is equivalent to simulating the continuous object motion of the specified object. Alternatively, interpolation may not be used, and the original simulated pose data corresponding to the center of the object may be randomly generated for each group number under the total number of groups. This embodiment of the present disclosure is not limited to this.
[0054] It should be understood that if the positions of the m observation points on the surface of the object are fixed, then the relative positional relationship of each observation point relative to the center of the object is known, and then the original simulated positional data of the m observation points corresponding to each group number can be determined based on the original simulated pose data of the center of the object corresponding to each group number under the total number of groups and the relative positional relationship of the m observation points on the surface of the object relative to the center of the object. For example, the original simulated positional data of each observation point in the m observation points corresponding to the group number "1" can be calculated based on the original simulated pose data of the center of the object corresponding to the group number "1", that is, the first group of original simulated tracking data is obtained, and so on, 1000 groups of original simulated tracking data arranged in sequence can be obtained for 1000 group numbers. Among them, considering that the posture (that is, rotation) of the object center of a rigid object (such as a camera) is the same as that of each point on the surface of the object, therefore, the original simulated pose data of the center of the object is known, and the original simulated positional data of each observation point can be mainly determined.
[0055] For example, Figure 2 A schematic diagram showing the original simulated pose data of the object center under a total number of groups, that is, Figure 2 The trajectory shown can represent the motion trajectory of the center of the object. Figure 3 A schematic diagram of a simulated motion trajectory is shown, wherein: Figure 3 The red dot represents the position of the center of the object, and the blue dot represents the position of multiple observation points on the surface of the object, which is equivalent to Figure 2 The original simulated position data of each observation point are generated based on the original simulated pose data of the center of the object shown, and multiple groups of original simulated tracking data arranged in sequence on the simulated motion trajectory are obtained.
[0056] It should be understood that through the above steps S111 to S115, a large number of simulated motion trajectories can be constructed to form a simulated data set to train the initial optimization model; wherein, randomly extracting n groups of original simulated tracking data from the pre-constructed simulated data set may include, for example: randomly extracting a simulated motion trajectory from the simulated data set, and then randomly extracting n groups of original simulated tracking data from the simulated motion trajectory; or, randomly extracting n simulated motion trajectories from the simulated data set, and then randomly extracting a group of original simulated tracking data from the n simulated motion trajectories to obtain n groups of original simulated tracking data. This method can make the extracted n groups of original simulated tracking data more random and rich, which is conducive to improving the data optimization accuracy of the trained model. Of course, one or more groups of original simulated tracking data can also be randomly extracted from different simulated motion trajectories in the simulated data set to form n groups of original simulated tracking data, and this is not limited to the embodiments of the present disclosure. Among them, the n groups of original simulated tracking data randomly selected from the simulated data set can be arranged in the order of extraction, or can be arranged from small to large according to the group number of each group of original simulated tracking data on the simulated motion trajectory to which they belong, etc., and the embodiments of the present disclosure are not limited to this.
[0057] Optionally, after generating the total number of groups and the group numbers under the total number of groups, and generating the key number of groups and the key group numbers, the original simulated position data of m observation points can be randomly generated for each key group number, and then based on the original simulated position data of the m observation points corresponding to each key group number, the original simulated position data of the m observation points corresponding to the remaining group numbers can be calculated by interpolation, that is, the original simulated position data of the m observation points corresponding to each group number under the total number of groups are obtained, and then based on the original simulated position data of the m observation points corresponding to each group number, the original simulated pose data of the object center corresponding to each group number can be calculated.
[0058] In step S12, noise is randomly added to each of the n groups of original simulated tracking data to obtain n groups of noisy simulated tracking data.
[0059] In practical applications, a noise algorithm known in the art, such as Gaussian noise, can be used to randomly add noise to each of n groups of original simulated tracking data to obtain n groups of noisy simulated tracking data, which is not limited to this embodiment of the present disclosure.
[0060] It should be understood that the original simulated tracking data generated in step S11 is original simulated tracking data without noise, and the richness of the noise determines the denoising effect of the model after training. Therefore, it is necessary to generate multiple types of noise data for each original simulated tracking data to be used as the input of the training model. Therefore, the embodiment of the present disclosure provides a method for generating noise simulated tracking data, which can make the noise in the generated n groups of noise simulated tracking data richer and more in line with the noise situation generated by the optical tracking device under the influence of the environment in actual situations. Specifically, in a possible implementation method, the above step S12, by randomly adding noise to each group of original simulated tracking data in the n groups of original simulated tracking data, obtains n groups of noise simulated tracking data with noise, including:
[0061] Step S121, randomly adding noise to the original simulated position data of each observation point in each group of original simulated tracking data in n groups of original simulated tracking data, so as to obtain noise simulated position data of each observation point corresponding to each group;
[0062] Step S122, determining the noise simulation pose data of the object center corresponding to each group according to the noise simulation position data of each observation point corresponding to each group;
[0063] Step S123, based on each group of noise simulation position data of each corresponding observation point and each group of noise simulation posture data of the object center, n groups of noise simulation tracking data are obtained.
[0064] In a possible implementation, in step S121, randomly adding noise to the original simulated position data of each observation point in each group of n groups of original simulated tracking data includes at least one of the following processes:
[0065] Step S1211, for the original simulated position data of the i-th observation point in the x-th group of original simulated tracking data, adding noise of random amplitude to the original simulated position data of the i-th observation point according to a specified first probability, or randomly removing the original simulated position data of the i-th observation point according to the first probability, wherein 1≤i≤m, 1≤x≤n;
[0066] Step S1212 , for j groups of original simulated tracking data arranged consecutively in the n groups of original simulated tracking data, adding noise of the same amplitude to j original simulated position data of the same observation point in the j groups of original simulated tracking data according to a specified second probability, j<n.
[0067] The above step S1211 can be understood as randomly adding noise (such as Gaussian noise of random amplitude) of random magnitude (i.e., random size) to each observation point in each group of original simulated tracking data according to the specified first probability, and the direction of the noise can be the direction of movement from the current group (i.e., the current node) to the next group (i.e., the next node). Or, the original simulated position data of the observation point can be removed according to the first probability, so as to simulate the noise in the single frame tracking data collected by the optical tracking device under the influence of the environment in the actual situation (such as the position data of a certain observation point is not collected or the collected position data is erroneous), so that the generated noise simulated position data can be more in line with the noise situation in the actual situation. Among them, the first probability represents the probability of whether to add noise to the original simulated position data of the i-th observation point, or represents the probability of whether to remove the original simulated position data of the i-th observation point, which can be a probability customized by a technician in this field according to the actual situation, and the embodiment of the present disclosure is not limited to this.
[0068] The above step S1212 can be understood as adding noise of the same amplitude (same size) (such as Gaussian noise of the same amplitude) to the j original simulated position data of the same observation point in the j groups of original simulated tracking data according to the specified second probability for each observation point in the partially continuous j groups of original simulated tracking data in the n groups of original simulated tracking data. The direction of the noise can be the direction of movement from the current group (i.e., the current node) to the next group (i.e., the next node). In this way, it can simulate the situation in which the quality of the tracking data continuously collected by the optical tracking device in a certain period of time in the actual situation is poor, so that several consecutive frames of tracking data have continuous noise of the same amplitude, so that the generated noise simulation position data can be more in line with the noise situation in the actual situation. Among them, the second probability represents the probability of adding noise of the same amplitude to the j original simulated position data of the same observation point in the j groups of original simulated tracking data, which can be a probability customized by a technician in this field according to the actual situation, and the embodiment of the present disclosure does not limit this.
[0069] In step S122, the noise simulation position data of each observation point corresponding to each group is known, and the noise simulation pose data of the center of the object corresponding to each group is determined, which is equivalent to calculating the pose of the center of the object (that is, the center of mass of the object) at different times (that is, finding the translation matrix and rotation matrix of the center of the object) by knowing the spatial positions of multiple points on the surface of the object at different times. In practical applications, a point cloud configuration algorithm (kabsch algorithm) known in the art can be used to specifically implement the determination of the noise simulation pose data of the center of the object corresponding to each group according to the noise simulation position data of each observation point corresponding to each group. For example, a group of m observation points The noise simulation position data can be used as a point cloud, and the position of the center of mass corresponding to each group of point clouds (that is, the center point of the object) can be calculated according to the position of each observation point in each point cloud, and then the displacement vector of each observation point in each group of point clouds relative to the center of mass is calculated, and then the displacement vector of the center of mass is used to calculate the covariance matrix of the center of mass, and then the covariance matrix of the center of mass is subjected to singular value decomposition (that is, SVD decomposition), and then the rotation matrix is calculated based on the matrix after the singular value decomposition, so as to obtain the noise simulation pose data of the center of the object.
[0070] Of course, those skilled in the art may also adopt other related technologies known in the art to determine the noise simulation posture data of each group of object centers corresponding to each group based on the noise simulation position data of each observation point corresponding to each group, and the embodiments of the present disclosure are not limited to this.
[0071] It should be understood that the noise simulation position data of each observation point corresponding to each group in n known groups and the noise simulation posture data of the object center corresponding to each group can constitute n groups of noise simulation tracking data, wherein a group of noise simulation tracking data includes the noise simulation position data of each observation point on the object surface and the noise simulation posture data of the object center calculated based on the noise simulation position data of each observation point.
[0072] In the embodiments of the present disclosure, when adding noise to the simulated tracking data, noise is added to the simulated position data of the observation points, and the pose data corresponding to the center of the object (that is, noise simulated pose data) is inferred using the noise simulated position data of the observation points after the addition of noise. Compared with directly adding noise to the original simulated tracking data, the noise in the generated n groups of noise simulated tracking data can be made closer to the actual noise situation.
[0073] For example, Figure 4 A schematic diagram of the trajectory of n sets of original simulated tracking data is shown, where the red point represents the position of the center of the object and the blue point represents the position of each observation point on the surface of the object. Figure 4 The n groups of original simulated tracking data shown in the figure are added with noise according to the above steps S121 to S122, and the result can be obtained. Figure 5A schematic diagram of n sets of noise simulation tracking data is shown.
[0074] In step S13, n groups of noise simulation tracking data are input into the initial optimization model to obtain n groups of optimized simulation tracking data output by the initial optimization model, each group of optimized simulation tracking data includes optimized simulation pose data corresponding to the center of the object and optimized simulation position data corresponding to each observation point.
[0075] In practical applications, the initial optimization model may adopt a deep learning model known in the art. Specifically, the initial optimization model may include a time series model known in the art, so that the time series model can be used to better process object tracking data with time series characteristics, and can effectively remove more and more complex noise in the object tracking data. The embodiments of the present disclosure do not limit the specific network structure of the initial optimization model. For example, Figure 6 A schematic diagram of the network structure of an initial optimization model is shown, such as Figure 6 As shown in the figure, MLP represents the fully connected layer, Encoder can be any time series model, the model input Pos represents the n noise simulated position data of the object center, the input AngleAxis represents the n noise simulated posture data of the object center, and the input MarkerPos represents the n noise simulated position data of each of the m observation points; the model output Pos represents the n optimized simulated position data of the object center, the output AngleAxis represents the n optimized simulated posture data of the object center, and the output MarkerPos represents the n optimized simulated position data of each of the m observation points.
[0076] Among them, n sets of noise simulation tracking data are input into the initial optimization model, and n sets of optimized simulation tracking data output by the initial optimization model are obtained, that is, the initial optimization model inputs n sets of noise simulation tracking data, and outputs n sets of optimized simulation tracking data after optimization (that is, after denoising). In this way, the model is made 1:1 input and output, which can produce smaller delays.
[0077] In step S14, according to the loss between n groups of optimized simulated tracking data and n groups of original simulated tracking data, the model parameters of the initial optimization model are adjusted to obtain a trained tracking data optimization model, which is used to optimize the tracking data of the specified object actually collected by the tracking device.
[0078] In practical applications, based on n groups of optimized simulated tracking data and n groups of original simulated tracking data, the first distance loss between each group of optimized simulated position data of the object center output by the calculation model and a corresponding group of original simulated position data of the object center (that is, the true value of the object center position, or the position of the object without noise) can be calculated, the cosine distance loss between each group of optimized simulated posture data of the object center output by the calculation model and a corresponding group of original simulated posture data of the object center (that is, the true value of the object center posture, or the posture of the object without noise) can be calculated, and the second distance loss between each group of optimized simulated position data of each observation point output by the calculation model and a corresponding group of original simulated position data of each observation point (that is, the true value of the position of each observation point, or the position of each observation point without noise) can be calculated; then, based on the above-mentioned first distance loss, cosine distance loss and second distance loss, parameter adjustment methods such as back propagation and gradient descent can be used to adjust the parameters of the initial optimization model to train a tracking data optimization model.
[0079] Among them, those skilled in the art can adopt distance calculation methods known in the art, such as Euclidean distance, to calculate the distance between two positions, and, for example, can adopt cosine similarity to calculate the cosine distance between two postures (that is, cosine similarity between two postures), which is not limited to the embodiments of the present disclosure.
[0080] Considering that the above-mentioned use of the precision loss (i.e., the first distance loss, the cosine distance loss, and the second distance loss) determined by the n groups of optimized simulated tracking data and the n groups of original simulated tracking data to train the initial optimization model is equivalent to supervised training of the precision of the initial optimization model output (i.e., the closeness of the model output data to the real data), although the data output by the model can be made more accurate, the data smoothness of the model output may be lower, that is, the data output by the model may fluctuate greatly. In order to make the data output by the model smoother and more stable, in a possible implementation method, the above-mentioned step S14, according to the loss between the n groups of optimized simulated tracking data and the n groups of original simulated tracking data, adjusts the model parameters of the initial optimization model, including:
[0081] Step S141, determining, based on n groups of optimized simulated tracking data and n groups of original simulated tracking data, a first distance loss between the original simulated position data corresponding to the center of the object and the optimized simulated position data, a cosine distance loss between the original simulated posture data corresponding to the center of the object and the optimized simulated posture data, and a second distance loss between the original simulated position data corresponding to each observation point and the optimized simulated position data;
[0082] Step S142, based on the n groups of optimized simulated tracking data, determining a first smoothness loss, a second smoothness loss and a third smoothness loss, wherein the first smoothness loss includes the smoothness of the n optimized simulated position data corresponding to the center of the object, the second smoothness loss includes the smoothness of the n optimized simulated posture data corresponding to the center of the object, and the third smoothness loss includes the smoothness of the n optimized simulated position data corresponding to each observation point;
[0083] Step S143, adjusting the model parameters of the initial optimization model according to the first distance loss, the cosine distance loss, the second distance loss, the first smoothness loss, the second smoothness loss and the third smoothness loss.
[0084] Among them, the first distance loss may include the average of the first distances between the n original simulated position data corresponding to the center of the object and the n optimized simulated position data, the cosine distance loss may include the average of the cosine distances between the n original simulated posture data corresponding to the center of the object and the n optimized simulated posture data, and the second distance loss corresponding to any observation point may include the average of the second distances between the n original simulated position data corresponding to any observation point and the n optimized simulated position data. Exemplarily, there are 8 observation points, and 128 groups of original simulated tracking data and corresponding 128 groups of optimized simulated tracking data. Then, the first distance between the original simulated position data of the object center in the first group of original simulated tracking data and the optimized simulated position data of the object center in the first group of optimized simulated tracking data can be calculated, the cosine distance between the original simulated posture data of the object center in the first group of original simulated tracking data and the optimized simulated position data of the object center in the first group of optimized simulated tracking data can be calculated, and the original simulated position data of each observation point in the 8 observation points in the first group of original simulated tracking data and the first group of optimized The second distance between the optimized simulated position data of each observation point in the simulated tracking data is calculated. Eight second distances are calculated for eight observation points in one set of data. By analogy, 128 first distances and 128 cosine distances of the center of the object corresponding to 128 sets of data, as well as 128 second distances corresponding to each of the eight observation points, can be obtained. Then, the average of the 128 first distances can be calculated to obtain the first distance loss, the average of the 128 cosine distances can be calculated to obtain the cosine distance loss, and the average of the 128 second distances corresponding to each of the eight observation points can be calculated to obtain the eight second distance losses corresponding to the eight observation points. That is, the first distance loss L p It can be expressed as formula (1), cosine distance loss L a It can be expressed as formula (2), the second distance loss L of the i-th observation point pi It can be expressed as formula (3).
[0085]
[0086] Among them, T c,x represents the original simulated position data of the center of the object in the x-th set of original simulated tracking data, represents the optimized simulated position data of the center of the object in the x-th set of optimized simulated tracking data, Represents T c,x and The distance between them, 1≤x≤n.
[0087]
[0088] Among them, R c,x represents the original simulated pose data of the center of the object in the xth group of original simulated tracking data, represents the optimized simulated pose data of the object center in the xth group of optimized simulated tracking data, Represents T c,x and The cosine distance between them, 1≤x≤n.
[0089]
[0090] Among them, T i,x represents the original simulated position data of the ith observation point in the xth set of original simulated tracking data, represents the optimized simulated position data of the i-th observation point in the x-th set of optimized simulated tracking data, Represents T c,x and The distance between them, 1≤x≤n, 1≤i≤m.
[0091] In step S142, the degree of smoothness (i.e., the degree of drastic change) can be measured by the L2 norm between the first-order derivative and the second-order derivative. Thus, n groups of optimized simulated tracking data are known, that is, n optimized simulated position data and n optimized simulated posture data of the object center and n optimized simulated position data of each observation point are known, so that the change curve of the n optimized simulated position data of the object center and the change curve of the n optimized simulated posture data can be obtained, and the change curve of the n optimized simulated position data of each observation point can be obtained. Thus, the first-order derivative and the second-order derivative of the change curve of the n optimized simulated position data of the object center and each observation point can be calculated respectively, which is equivalent to calculating the speed and acceleration of the position change of the object center and each observation point, and, The first-order derivative and the second-order derivative of the change curve of the n optimized simulated posture data at the center of the object are calculated respectively, which is equivalent to calculating the angular velocity and angular acceleration of the change of the posture of the center of the object; then, the L2 norm between the first-order derivative and the second-order derivative of the n optimized simulated position data corresponding to the center of the object can be calculated to obtain the first smoothness loss, the L2 norm between the first-order derivative and the second-order derivative of the n optimized simulated posture data corresponding to the center of the object can be calculated to obtain the second smoothness loss, and the L2 norm between the first-order derivative and the second-order derivative of the n optimized simulated position data corresponding to each observation point can be calculated to obtain the third smoothness loss, and the third smoothness loss includes the L2 norm between the first-order derivative and the second-order derivative of the n optimized simulated position data corresponding to each observation point in the n observation points. The above use of the L2 norm between the first-order derivative and the second-order derivative to measure the smoothness of the data is a possible implementation method provided by the embodiment of the present disclosure. For example, the variance, covariance, etc. can also be used to measure the smoothness, and the embodiment of the present disclosure is not limited to this.
[0092] In step S143, a model parameter adjustment method known in the art, such as back propagation and gradient descent algorithm, can be used to adjust the model parameters of the initial optimization model according to the first distance loss, cosine distance loss, second distance loss, first smoothness loss, second smoothness loss and third smoothness loss, which is not limited in the embodiment of the present disclosure. In this way, not only can the trained tracking data optimization model have a higher output accuracy, but also the smoothness and stability of the output data of the trained model can be effectively improved.
[0093] Considering that the smoothness loss (i.e., the first smoothness loss, the second smoothness loss, and the third smoothness loss) and the precision loss (i.e., the first distance loss, the cosine distance loss, and the second distance loss) are relative, the precision loss decreases while the smoothness loss may increase (i.e., the higher the precision of the model output data, the lower the smoothness of the output data), and vice versa, the precision loss increases while the smoothness may decrease (i.e., the lower the precision of the model output data, the higher the smoothness of the output data). In order to make the trained model smooth and stable without losing excessive information (i.e., maintaining a certain precision), a dynamic weight coefficient can be used to balance the precision loss and smoothness loss during the iterative training process. Specifically, in a possible implementation, the above step S143 adjusts the model parameters of the initial optimization model according to the first distance loss, the cosine distance loss, the second distance loss, the first smoothness loss, the second smoothness loss, and the third smoothness loss, including:
[0094] Step S1431, determining, based on n groups of original simulated tracking data, a first degree of change corresponding to the original simulated position data corresponding to the center of the object, a second degree of change corresponding to the original simulated posture data corresponding to the center of the object, and a third degree of change corresponding to the original simulated position data corresponding to each observation point;
[0095] Step S1432, determining a weight coefficient according to the first distance loss, the cosine distance loss, the second distance loss, the first degree of change, the second degree of change, and the third degree of change;
[0096] Step S1433, weighting the first smoothness loss, the second smoothness loss, and the third smoothness loss based on the weight coefficient to obtain a weighted first smoothness loss, a weighted second smoothness loss, and a weighted third smoothness loss;
[0097] Step S1434, adjusting the model parameters of the initial optimization model according to the first distance loss, the cosine distance loss, the second distance loss, the weighted first smoothness loss, the weighted second smoothness loss, and the weighted third smoothness loss.
[0098] In step S1431, the first degree of change corresponding to the original simulated position data corresponding to the object center may include the difference between the maximum original simulated position data and the minimum original simulated position data of the object center in the n groups of original simulated tracking data, the second degree of change corresponding to the original simulated posture data corresponding to the object center may include the difference between the maximum original simulated posture data and the minimum original simulated posture data of the object center in the n groups of original simulated tracking data, and the third degree of change corresponding to the original simulated position data corresponding to each observation point includes the difference between the maximum original simulated position data and the minimum original simulated position data of each observation point in the n groups of original simulated tracking data.
[0099] In step S1432, for example, formula (4) may be used to determine the weight coefficient γ according to the first distance loss, the cosine distance loss, the second distance loss, the first degree of change, the second degree of change, and the third degree of change:
[0100]
[0101] Among them, P range Represents the first degree of change, A range represents the second degree of change, Represents the third degree of change corresponding to the i-th observation point.
[0102] In step S1433, for example, the weight coefficient γ can be multiplied with the first smoothness loss, the second smoothness loss, and the third smoothness loss to obtain a weighted first smoothness loss, a weighted second smoothness loss, and a weighted third smoothness loss. By using the weight coefficient to weight the first smoothness loss, the second smoothness loss, and the third smoothness loss, the weights of the smoothness loss and the precision loss in the model training can be balanced, which is conducive to making the trained model have both good smoothness and output precision.
[0103] In step S1434, the model parameter adjustment methods known in the art, such as back propagation and gradient descent algorithms, can be used to adjust the model parameters of the initial optimization model according to the first distance loss, cosine distance loss, second distance loss, weighted first smoothness loss, weighted second smoothness loss, and weighted third smoothness loss, which are not limited in the embodiments of the present disclosure. In this way, not only can the trained tracking data optimization model have a higher output accuracy, but also the smoothness and stability of the output data of the trained model can be effectively improved.
[0104] Optionally, the total loss Loss can be calculated according to the first distance loss, the cosine distance loss, the second distance loss, the weighted first smoothness loss, the weighted second smoothness loss and the weighted third smoothness loss by formula (5), and then the total loss Loss is used to adjust the model parameters of the initial optimization model.
[0105]
[0106] Among them, L s represents the sum of the first smoothness loss, the second smoothness loss and the third smoothness loss, L s*γ is equivalent to the sum of the weighted first smoothness loss, the weighted second smoothness loss and the weighted third smoothness loss, that is, a common weight γ is added to the first smoothness loss, the second smoothness loss and the third smoothness loss.
[0107] It should be understood that the training process of the above-mentioned steps S11 to S14 in the embodiment of the present disclosure can be iteratively executed for multiple rounds to iteratively train the initial optimization model until the preset training end conditions are reached, for example, the number of iterations reaches the specified number of rounds, the loss has converged or is set to 0, etc., to obtain a trained tracking data optimization model, and then the trained tracking data optimization model can be used to optimize the tracking data of the specified object actually collected by the tracking device (such as an optical tracking device or other device that can track the position and posture of the object) (that is, post-processing such as denoising), so as to obtain a better noise optimization effect of the tracking data.
[0108] According to the training method of the embodiment of the present disclosure, by constructing original simulated tracking data and adding noise to the original simulated tracking data, and then using the noisy simulated tracking data to train the initial optimization model, a trained tracking data optimization model with higher accuracy and stability can be obtained. Furthermore, the tracking data optimization model can be used to achieve efficient and accurate optimization and denoising of the tracking data actually collected by the tracking device, thereby improving the positioning accuracy and stability of the object's posture.
[0109] According to the training method of the embodiment of the present disclosure, the tracking data optimization model constructed and trained by the timing model is used to optimize the posture data collected by the optical tracking device. Compared with the filtering method, more and more complex types of noise can be removed, and the noise distribution can be adjusted according to the actual usage scenario. Moreover, because the model has a 1:1 input and output, a smaller delay can be generated; and, by constructing a simulated data set, the total data length of the simulated motion trajectory in the data set can exceed 600 hours, the data volume is large, the richness is high, and the various motion trajectories that may exist in a specified object (such as a camera) in a real scene are well covered. Therefore, the tracking data optimization model trained with this data set can have better generalization on real data.
[0110] According to the training method of the embodiment of the present disclosure, when adding noise to the original simulated tracking data, the original simulated position data of the observation point is added with noise, and the pose corresponding to the center of the object is inferred using the noise simulated position data of the observation point after adding noise, so that the generated noise pose data can be closer to the actual noise situation. And, when training the initial optimization model, both the accuracy of the model output (the degree of closeness between the model output data and the real data) and the smoothness of the model output (i.e., the velocity and acceleration of the model output position, and the angular velocity and angular acceleration of the output posture, etc.) are supervised, and a dynamic weight system is used to balance the two losses of smoothness loss and precision loss, so that the trained tracking data optimization model can be stable without losing too much precision.
[0111] Based on the tracking data optimization model trained by the training method proposed in the above embodiment of the present disclosure, the embodiment of the present disclosure further provides an object tracking data optimization method, which includes:
[0112] Step S21, obtaining n sets of tracking data continuously collected by the tracking device, wherein the n sets of tracking data include a set of tracking data currently collected and n-1 sets of tracking data collected historically, and the tracking data include the pose data of the object center of the specified object tracked by the tracking device and the position data of m observation points set on the surface of the object, where n and m are positive integers;
[0113] Step S22, optimizing the n groups of tracking data using the trained tracking data optimization model to obtain the optimized n groups of target tracking data; wherein the tracking data optimization model is obtained by training using the training method;
[0114] Step S23, determining the target posture data corresponding to a set of tracking data currently collected among the n sets of target tracking data as the current positioning posture of the designated object.
[0115] For example, assuming that the tracking data optimization model inputs 128 groups of tracking data at one time, that is, n is 128. After starting the tracking device (such as an optical tracking device or other device that can track the position of an object) to track the specified object, the tracking data is continuously acquired until 128 groups (that is, 128 frames) are reached. The 128th group of tracking data is the currently collected group of tracking data, and the 1st to 128th groups of tracking data are the 127 groups of tracking data collected historically. Then, the 1st to 128th groups of tracking data can be input into the tracking data optimization model to obtain the optimized 1st to 128th groups of target tracking data. Then, the current positioning position of the specified object is the optimized 128th group of target tracking data. The target pose data of the object center in the target tracking data (that is, the target pose data corresponding to the currently collected set of tracking data); after obtaining the 129th set of tracking data currently collected by the optical tracking device, the 2nd to 129th sets of tracking data can be input into the tracking data optimization model to obtain the optimized 2nd to 129th sets of target tracking data, and the current positioning pose of the specified object is the target pose data of the object center in the optimized 129th set of target tracking data, and so on. The tracking data collected by the optical tracking device can be optimized in real time to obtain more accurate and stable target tracking data, thereby improving the positioning accuracy and stability of the object pose.
[0116] In practical applications, considering that the optimized position data of the observation point may be useless for the actual application scenario, that is, the user may only need to obtain the optimized pose data of the object center, therefore, the branch network used to generate the optimized position data of the observation point can be removed from the output layer of the trained tracking data optimization model. That is, after obtaining the trained tracking data optimization model through the above training method, the network structure of the tracking data optimization model can also be adjusted so that the model directly outputs the optimized target pose data of the object center. For example, the model inputs 128 sets of tracking data and outputs 128 sets of target pose data of the object center. This can help improve the model processing efficiency.
[0117] According to the optimization method of the embodiment of the present disclosure, by utilizing the tracking data optimization model trained by the training method of the above-mentioned embodiment of the present disclosure, the time-series tracking data collected in real time by the tracking device is denoised and optimized, so that a real-time and high-precision positioning posture of the specified object can be obtained, thereby improving the accuracy and stability of object positioning.
[0118] Figure 7 A block diagram of a tracking data optimization model training device according to an embodiment of the present disclosure is shown as follows: Figure 7 As shown, the device comprises:
[0119] The extraction module 701 is used to randomly extract n groups of original simulated tracking data from a pre-constructed simulated data set, wherein the simulated data set includes multiple simulated motion trajectories, each simulated motion trajectory includes multiple groups of original simulated tracking data generated by simulating the object motion of a specified object; a single group of original simulated tracking data includes original simulated pose data of the object center of the specified object and original simulated position data of m observation points set on the surface of the object, where n and m are positive integers;
[0120] A noise adding module 702 is used to randomly add noise to each group of original simulated tracking data in the n groups of original simulated tracking data to obtain n groups of noise-containing simulated tracking data;
[0121] The optimization module 703 is used to input the n groups of noise simulation tracking data into the initial optimization model to obtain n groups of optimized simulation tracking data output by the initial optimization model, each group of optimized simulation tracking data includes optimized simulation pose data corresponding to the center of the object and optimized simulation position data corresponding to each observation point;
[0122] The parameter adjustment module 704 is used to adjust the model parameters of the initial optimization model according to the loss between the n groups of optimized simulated tracking data and the n groups of original simulated tracking data to obtain a trained tracking data optimization model, and the tracking data optimization model is used to optimize the tracking data of the specified object actually collected by the tracking device.
[0123] In a possible implementation, the method of randomly adding noise to each group of original simulated tracking data in the n groups of original simulated tracking data to obtain n groups of noisy noise simulated tracking data includes: randomly adding noise to the original simulated position data of each observation point in each group of original simulated tracking data to obtain the noise simulated position data of each observation point corresponding to each group; determining the noise simulated pose data of the object center corresponding to each group according to the noise simulated position data of each observation point corresponding to each group; and obtaining the n groups of noise simulated tracking data based on the noise simulated position data of each observation point corresponding to each group and the noise simulated pose data of the object center corresponding to each group.
[0124] In a possible implementation, the randomly adding noise to the original simulated position data of each observation point in each group of original simulated tracking data in the n groups of original simulated tracking data includes at least one of the following processing: for the original simulated position data of the ith observation point in the xth group of original simulated tracking data, adding noise of random amplitude to the original simulated position data of the ith observation point according to a specified first probability, or randomly removing the original simulated position data of the ith observation point according to the first probability, wherein 1≤i≤m, 1≤x≤n; for j groups of original simulated tracking data arranged consecutively in the n groups of original simulated tracking data, adding noise of the same amplitude to j original simulated position data of the same observation point in the j groups of original simulated tracking data according to a specified second probability, j<n.
[0125] In a possible implementation, the construction process of any simulated motion trajectory in the simulated data set includes: randomly generating a total number of groups and determining the group numbers arranged in order under the total number of groups, wherein the total number of groups represents the total number of original simulated tracking data in the simulated motion trajectory to be generated; randomly generating a key number of groups, and randomly determining each key group number under the key number of groups from the group numbers arranged in order under the total number of groups, wherein the key number of groups is less than the total number of groups; randomly generating original simulated pose data corresponding to the center of the object for each key group number, and for any remaining group number other than the key group number, interpolating the original simulated pose data of the two key group numbers closest to the remaining group number to obtain the original simulated pose data of the center of the object corresponding to the remaining group number; determining the original simulated position data of the m observation points corresponding to each group number according to the original simulated pose data of the center of the object corresponding to each group number under the total number of groups and the relative position relationship of the m observation points on the surface of the object relative to the center of the object; and obtaining the simulated motion trajectory based on the original simulated pose data of the center of the object corresponding to each group number under the total number of groups and the original simulated position data of the m observation points corresponding to each group number.
[0126] In a possible implementation, the randomly extracting n groups of original simulated tracking data from a pre-constructed simulated data set includes: randomly extracting n simulated motion trajectories from the simulated data set, and randomly extracting a group of original simulated tracking data from each of the n simulated motion trajectories to obtain n groups of original simulated tracking data.
[0127] In a possible implementation, adjusting the model parameters of the initial optimization model according to the loss between the n groups of optimized simulation tracking data and the n groups of original simulation tracking data includes: determining, according to the n groups of optimized simulation tracking data and the n groups of original simulation tracking data, a first distance loss between the original simulation position data corresponding to the object center and the optimized simulation position data, a cosine distance loss between the original simulation posture data corresponding to the object center and the optimized simulation posture data, and a second distance loss between the original simulation position data corresponding to each observation point and the optimized simulation position data; determining a first smoothness loss, a second smoothness loss, and a third smoothness loss based on the n groups of optimized simulation tracking data, wherein the first smoothness loss includes the smoothness of the n optimized simulation position data corresponding to the object center, the second smoothness loss includes the smoothness of the n optimized simulation posture data corresponding to the object center, and the third smoothness loss includes the smoothness of the n optimized simulation position data corresponding to each observation point; adjusting the model parameters of the initial optimization model according to the first distance loss, the cosine distance loss, the second distance loss, the first smoothness loss, the second smoothness loss, and the third smoothness loss.
[0128] In a possible implementation, adjusting the model parameters of the initial optimization model according to the first distance loss, the cosine distance loss, the second distance loss, the first smoothness loss, the second smoothness loss, and the third smoothness loss includes: determining, according to the n groups of original simulated tracking data, a first degree of change corresponding to the original simulated position data corresponding to the center of the object, a second degree of change corresponding to the original simulated posture data corresponding to the center of the object, and a third degree of change corresponding to the original simulated position data corresponding to each observation point; determining a weight coefficient according to the first distance loss, the cosine distance loss, the second distance loss, the first degree of change, the second degree of change, and the third degree of change; weighting the first smoothness loss, the second smoothness loss, and the third smoothness loss based on the weight coefficient to obtain a weighted first smoothness loss, a weighted second smoothness loss, and a weighted third smoothness loss; adjusting the model parameters of the initial optimization model according to the first distance loss, the cosine distance loss, the second distance loss, the weighted first smoothness loss, the weighted second smoothness loss, and the weighted third smoothness loss.
[0129] According to the device of the embodiment of the present disclosure, by constructing original simulated tracking data and adding noise to the original simulated tracking data, and then using the noisy simulated tracking data to train the initial optimization model, a trained tracking data optimization model with higher accuracy and stability can be obtained. Then, the tracking data optimization model can be used to achieve efficient and accurate optimization and denoising of the tracking data actually collected by the optical tracking device, thereby improving the positioning accuracy and stability of the object's posture.
[0130] Based on the training method provided in the above embodiment of the present disclosure, the embodiment of the present disclosure further provides an object tracking data optimization device, including:
[0131] An acquisition module, used to acquire n sets of tracking data continuously collected by a tracking device, wherein the n sets of tracking data include a set of tracking data currently collected and n-1 sets of tracking data collected historically, and the tracking data include the pose data of the object center of the specified object tracked by the tracking device and the position data of m observation points set on the surface of the object, where n and m are positive integers;
[0132] A data optimization module, used to optimize the n sets of tracking data using the trained tracking data optimization model to obtain the optimized n sets of target tracking data; wherein the tracking data optimization model is trained using the training method;
[0133] The positioning module is used to determine the target posture data corresponding to the currently collected set of tracking data among the n sets of target tracking data as the current positioning posture of the designated object.
[0134] According to the optimization device of the embodiment of the present disclosure, by utilizing the tracking data optimization model trained by the training method of the above-mentioned embodiment of the present disclosure, the time-series tracking data collected in real time by the optical tracking device is denoised and optimized, so that the real-time and high-precision positioning posture of the specified object can be obtained, thereby improving the accuracy and stability of object positioning.
[0135] In some embodiments, the functions or modules included in the device provided by the embodiments of the present disclosure can be used to execute the method described in the above method embodiments. The specific implementation can refer to the description of the above method embodiments, and for the sake of brevity, it will not be repeated here.
[0136] The embodiment of the present disclosure also provides a computer-readable storage medium on which computer program instructions are stored, and the computer program instructions implement the above method when executed by a processor. The computer-readable storage medium can be a volatile or non-volatile computer-readable storage medium.
[0137] An embodiment of the present disclosure further proposes an electronic device, comprising: a processor; and a memory for storing instructions executable by the processor; wherein the processor is configured to implement the above method when executing the instructions stored in the memory.
[0138] The embodiments of the present disclosure also provide a computer program product, including a computer-readable code, or a non-volatile computer-readable storage medium carrying the computer-readable code. When the computer-readable code runs in a processor of an electronic device, the processor in the electronic device executes the above method.
[0139] Figure 8 1 is a block diagram of an electronic device 1900 according to an embodiment of the present disclosure. For example, the electronic device 1900 may be provided as a server or a terminal device. Figure 8 , the electronic device 1900 includes a processing component 1922, which further includes one or more processors, and a memory resource represented by a memory 1932 for storing instructions executable by the processing component 1922, such as an application. The application stored in the memory 1932 may include one or more modules, each corresponding to a set of instructions. In addition, the processing component 1922 is configured to execute instructions to perform the above method.
[0140] The electronic device 1900 may also include a power supply component 1926 configured to perform power management of the electronic device 1900, a wired or wireless network interface 1950 configured to connect the electronic device 1900 to a network, and an input / output interface 1958 (I / O interface). The electronic device 1900 may operate based on an operating system stored in the memory 1932, such as Windows Server 2003. TM , Mac OS X TM , Unix TM ,Linux TM , FreeBSD TM or similar.
[0141] In an exemplary embodiment, a non-volatile computer-readable storage medium is also provided, such as a memory 1932 including computer program instructions, which can be executed by the processing component 1922 of the electronic device 1900 to perform the above method.
[0142] The present disclosure may be a system, a method and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for causing a processor to implement various aspects of the present disclosure.
[0143] A computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples of computer-readable storage media (a non-exhaustive list) include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device, such as a punch card or a raised structure in a groove on which instructions are stored, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium is not to be interpreted as a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse through a fiber optic cable), or an electrical signal transmitted through a wire.
[0144] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.
[0145] The computer program instructions for performing the operation of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages, such as Smalltalk, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. Computer-readable program instructions may be executed completely on a user's computer, partially on a user's computer, as an independent software package, partially on a user's computer, partially on a remote computer, or completely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider to connect via the Internet). In some embodiments, an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), may be customized by utilizing the state information of the computer-readable program instructions, and the electronic circuit may execute the computer-readable program instructions, thereby realizing various aspects of the present disclosure.
[0146] Various aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of the methods, devices (systems) and computer program products according to the embodiments of the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.
[0147] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processor of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0148] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0149] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of the module, program segment or instruction includes one or more executable instructions for realizing the specified logical function. In some alternative implementations, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs the specified function or action, or can be implemented with a combination of special hardware and computer instructions.
[0150] The embodiments of the present disclosure have been described above, and the above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and changes will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The selection of terms used herein is intended to best explain the principles of the embodiments, practical applications, or technical improvements in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein.
Claims
1. A tracking data optimization model training method, characterized in that: include: Randomly extracting n groups of original simulated tracking data from a pre-constructed simulated data set, wherein the simulated data set includes a plurality of simulated motion trajectories, each simulated motion trajectory includes a plurality of groups of original simulated tracking data generated by simulating the object motion of a specified object; a single group of original simulated tracking data includes original simulated pose data of an object center of the specified object and original simulated position data of m observation points set on the surface of the object, where n and m are positive integers; By randomly adding noise to each group of original simulated tracking data in the n groups of original simulated tracking data, n groups of noise-containing simulated tracking data are obtained; Inputting the n groups of noise simulation tracking data into the initial optimization model to obtain n groups of optimized simulation tracking data output by the initial optimization model, each group of optimized simulation tracking data includes optimized simulation pose data corresponding to the center of the object and optimized simulation position data corresponding to each observation point; According to the loss between the n groups of optimized simulated tracking data and the n groups of original simulated tracking data, the model parameters of the initial optimization model are adjusted to obtain a trained tracking data optimization model, and the tracking data optimization model is used to optimize the tracking data of the specified object actually collected by the tracking device.
2. The method according to claim 1, characterized in that The method of randomly adding noise to each of the n groups of original simulated tracking data to obtain n groups of noise-containing simulated tracking data includes: By randomly adding noise to the original simulated position data of each observation point in each group of the n groups of original simulated tracking data, the noise simulated position data of each observation point corresponding to each group is obtained; Determine the noise simulation pose data of the center of the object corresponding to each group according to the noise simulation position data of each observation point corresponding to each group; Based on each group of corresponding noise simulation position data of each observation point and each group of corresponding noise simulation posture data of the object center, the n groups of noise simulation tracking data are obtained.
3. The method according to claim 2, characterized in that The randomly adding noise to the original simulated position data of each observation point in each group of original simulated tracking data in the n groups of original simulated tracking data comprises at least one of the following processes: For the original simulated position data of the ith observation point in the xth group of original simulated tracking data, adding noise of random amplitude to the original simulated position data of the ith observation point according to a specified first probability, or randomly removing the original simulated position data of the ith observation point according to the first probability, wherein 1≤i≤m, 1≤x≤n; For j groups of original simulated tracking data that are arranged consecutively in the n groups of original simulated tracking data, noise of the same amplitude is added to j original simulated position data of the same observation point in the j groups of original simulated tracking data according to a specified second probability, where j<n.
4. The method according to claim 1, characterized in that The process of constructing any simulated motion trajectory in the simulated data set includes: Randomly generate a total number of groups, and determine the group numbers arranged in order under the total number of groups, wherein the total number of groups represents the total number of original simulated tracking data in the simulated motion trajectory to be generated; Randomly generate a key group number, and randomly determine each key group number under the key group number from the group numbers arranged in order under the total group number, the key group number being less than the total group number; For each key group number, the original simulated pose data corresponding to the center of the object is randomly generated, and for any remaining group number other than the key group number, the original simulated pose data of the two key group numbers closest to the remaining group number are interpolated to obtain the original simulated pose data of the center of the object corresponding to the remaining group number; Determine the original simulated position data of the m observation points corresponding to each group number according to the original simulated pose data of the center of the object corresponding to each group number under the total number of groups and the relative position relationship of the m observation points on the surface of the object relative to the center of the object; Based on the original simulated pose data of the object center corresponding to each group number under the total number of groups and the original simulated position data of the m observation points corresponding to each group number, a simulated motion trajectory is obtained.
5. The method according to claim 1 or 4, characterized in that: The method randomly extracts n groups of original simulated tracking data from the pre-constructed simulated data set, including: N simulated motion trajectories are randomly extracted from the simulated data set, and a group of original simulated tracking data is randomly extracted from the n simulated motion trajectories respectively, to obtain n groups of original simulated tracking data.
6. The method according to claim 1, characterized in that The adjusting the model parameters of the initial optimization model according to the loss between the n groups of optimized simulation tracking data and the n groups of original simulation tracking data includes: Determine, according to the n groups of optimized simulated tracking data and the n groups of original simulated tracking data, a first distance loss between the original simulated position data corresponding to the center of the object and the optimized simulated position data, a cosine distance loss between the original simulated posture data corresponding to the center of the object and the optimized simulated posture data, and a second distance loss between the original simulated position data corresponding to each observation point and the optimized simulated position data; Based on the n groups of optimized simulated tracking data, determine a first smoothness loss, a second smoothness loss and a third smoothness loss, wherein the first smoothness loss includes the smoothness of the n optimized simulated position data corresponding to the center of the object, the second smoothness loss includes the smoothness of the n optimized simulated posture data corresponding to the center of the object, and the third smoothness loss includes the smoothness of the n optimized simulated position data corresponding to each observation point; The model parameters of the initial optimization model are adjusted according to the first distance loss, the cosine distance loss, the second distance loss, the first smoothness loss, the second smoothness loss, and the third smoothness loss.
7. The method according to claim 6, characterized in that The adjusting the model parameters of the initial optimization model according to the first distance loss, the cosine distance loss, the second distance loss, the first smoothness loss, the second smoothness loss and the third smoothness loss comprises: Determine, based on the n groups of original simulated tracking data, a first degree of change corresponding to the original simulated position data corresponding to the center of the object, a second degree of change corresponding to the original simulated posture data corresponding to the center of the object, and a third degree of change corresponding to the original simulated position data corresponding to each observation point; Determining a weight coefficient according to the first distance loss, the cosine distance loss, the second distance loss, the first degree of change, the second degree of change, and the third degree of change; Performing weighted processing on the first smoothness loss, the second smoothness loss, and the third smoothness loss based on the weight coefficient to obtain a weighted first smoothness loss, a weighted second smoothness loss, and a weighted third smoothness loss; The model parameters of the initial optimization model are adjusted according to the first distance loss, the cosine distance loss, the second distance loss, the weighted first smoothness loss, the weighted second smoothness loss, and the weighted third smoothness loss.
8. A method for optimizing object tracking data, characterized in that: include: Obtain n sets of tracking data continuously collected by the tracking device, wherein the n sets of tracking data include a set of tracking data currently collected and n-1 sets of tracking data collected historically, wherein the tracking data include the pose data of the object center of the specified object tracked by the tracking device and the position data of m observation points set on the surface of the object, where n and m are positive integers; Optimizing the n sets of tracking data using the trained tracking data optimization model to obtain optimized n sets of target tracking data; wherein the tracking data optimization model is trained using the training method according to any one of claims 1 to 7; The target posture data corresponding to the currently collected set of tracking data among the n sets of target tracking data is determined as the current positioning posture of the designated object.
9. A tracking data optimization model training device, characterized in that: include: An extraction module is used to randomly extract n groups of original simulated tracking data from a pre-constructed simulated data set, wherein the simulated data set includes a plurality of simulated motion trajectories, each simulated motion trajectory includes a plurality of groups of original simulated tracking data generated by simulating the object motion of a specified object; a single group of original simulated tracking data includes original simulated pose data of the object center of the specified object and original simulated position data of m observation points set on the surface of the object, where n and m are positive integers; A noise adding module is used to randomly add noise to each group of original simulated tracking data in the n groups of original simulated tracking data to obtain n groups of noise-containing simulated tracking data; An optimization module, used for inputting the n groups of noise simulation tracking data into the initial optimization model to obtain n groups of optimized simulation tracking data output by the initial optimization model, each group of optimized simulation tracking data including optimized simulation pose data corresponding to the center of the object and optimized simulation position data corresponding to each observation point; A parameter adjustment module is used to adjust the model parameters of the initial optimization model according to the loss between the n groups of optimized simulated tracking data and the n groups of original simulated tracking data to obtain a trained tracking data optimization model, wherein the tracking data optimization model is used to optimize the tracking data of the specified object actually collected by the tracking device.
10. An object tracking data optimization device, characterized in that: include: An acquisition module, used to acquire n sets of tracking data continuously collected by a tracking device, wherein the n sets of tracking data include a set of tracking data currently collected and n-1 sets of tracking data collected historically, and the tracking data include the pose data of the object center of the specified object tracked by the tracking device and the position data of m observation points set on the surface of the object, where n and m are positive integers; A data optimization module, used to optimize the n sets of tracking data using a trained tracking data optimization model to obtain optimized n sets of target tracking data; wherein the tracking data optimization model is trained using the training method according to any one of claims 1 to 7; The positioning module is used to determine the target posture data corresponding to the currently collected set of tracking data among the n sets of target tracking data as the current positioning posture of the designated object.
11. An electronic device, characterized in that: include: processor; a memory for storing processor-executable instructions; The processor is configured to implement the method described in any one of claims 1 to 8 when executing the instructions stored in the memory.
12. A non-volatile computer-readable storage medium having computer program instructions stored thereon, characterized in that: When the computer program instructions are executed by a processor, the method according to any one of claims 1 to 8 is implemented.
Citation Information
Patent Citations
Apparatus and method for generating de-noising model
CN116250018A
High-definition rendering restoration system based on digital twinning L5-level simulation
CN116416386A
Data distillation method based on artificial intelligence and related equipment
CN116503608A
Diffusion model-based counterfeit human body posture video authentic identification method and device
CN117975110A
Animal attitude estimation method, system and device based on diffusion model and attention mechanism
CN118247844A