Time processing method and device, electronic equipment, storage medium and program product
By acquiring the motion information set from the information acquisition module and determining the time synchronization information, the problem of low time synchronization efficiency in the information acquisition system is solved, and high-precision time alignment is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING YOUZHUJU NETWORK TECH CO LTD
- Filing Date
- 2024-10-21
- Publication Date
- 2026-04-21
AI Technical Summary
Existing technologies require software or hardware modifications to adapt to different information acquisition systems when performing time synchronization, resulting in low time synchronization efficiency.
By acquiring the motion information of the first and second acquisition modules within a preset time period, a motion set is determined, and time synchronization information is determined based on the motion set, achieving high-precision time alignment for multiple objects and avoiding software or hardware adaptation modifications to the acquisition modules.
It achieves high-precision time alignment for multiple objects, improves time synchronization efficiency, reduces external dependencies, and simplifies the implementation process.
Smart Images

Figure CN121900582A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of computer processing technology, and more particularly to a time processing method, apparatus, electronic device, storage medium, and program product. Background Technology
[0002] With the development of information processing technology, the requirements for data processing accuracy are becoming increasingly stringent. In some data analysis scenarios, two different information acquisition systems are used to collect object data of the same subject, so as to combine the object data collected by different information acquisition systems for multi-dimensional analysis of the subject. However, in practical applications, because the time information used by different information acquisition systems when collecting object data may be inaccurate, inaccurate analysis results may occur when data from the same point in time needs to be analyzed.
[0003] In related technologies, network time synchronization technology or external signal triggering is usually used to align the time of different information acquisition systems. However, such methods require adaptation and modification of the original program of the information acquisition system, or rely on external devices, which is relatively complex, time-consuming and labor-intensive, and affects the time synchronization efficiency. Summary of the Invention
[0004] This disclosure provides a time processing method, apparatus, electronic device, storage medium, and program product, which solves the technical problem of low time synchronization efficiency caused by the need to adapt and modify the software or hardware when synchronizing the time of different information acquisition systems. It can achieve high-precision alignment of the time of multiple objects and achieve the effect of time processing.
[0005] In a first aspect, embodiments of this disclosure provide a time processing method, the method comprising:
[0006] The first acquisition module acquires first motion information of the target object at multiple first time points within a preset time period, and determines a first motion set based on the first motion information; wherein, the first motion set is used to record the target motion state of the target object at multiple first time points;
[0007] The second motion information of the target object collected by the second acquisition module at multiple second time points within a preset time period is obtained, and a second motion set is determined based on the second motion information; wherein, the first motion set is used to record the target motion state of the target object at multiple second time points;
[0008] The time synchronization information corresponding to the first acquisition module and the second acquisition module is determined based on the first motion set and the second motion set.
[0009] Secondly, embodiments of this disclosure also provide a time processing apparatus, the apparatus comprising:
[0010] The first motion set acquisition module is used to acquire first motion information of the target object collected by the first acquisition module at multiple first time points within a preset time period, and determine a first motion set based on the first motion information; wherein, the first motion set is used to record the target motion state of the target object at multiple first time points;
[0011] The first motion set acquisition module is used to acquire the second motion information of the target object collected by the second acquisition module at multiple second time points within a preset time period, and determine the second motion set based on the second motion information; wherein, the first motion set is used to record the target motion state of the target object at multiple second time points;
[0012] The time synchronization information determination module is used to determine the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the first motion set and the second motion set.
[0013] Thirdly, embodiments of this disclosure also provide an electronic device, the electronic device comprising:
[0014] One or more processors;
[0015] Storage device for storing one or more programs.
[0016] When the one or more programs are executed by the one or more processors, the one or more processors implement the time processing method as described in any of the embodiments of this disclosure.
[0017] Fourthly, embodiments of this disclosure also provide a storage medium containing computer-executable instructions, which, when executed by a computer processor, are used to perform any of the time processing methods described in the embodiments of this disclosure.
[0018] Fifthly, embodiments of this disclosure also provide a computer program product, including a computer program that, when executed by a processor, implements the time processing method as described in any of the embodiments of this disclosure.
[0019] The technical solution of this disclosure involves acquiring first motion information of a target object collected by a first acquisition module at multiple first time points within a preset time period, and determining a first motion set based on the first motion information. Since the first motion set records the target motion state of the target object at multiple first time points, it can acquire time-series data of the target motion state of the target object collected under the timing mode of the first acquisition module. Similarly, by acquiring second motion information of the target object collected by a second acquisition module at multiple second time points within a preset time period, and determining a second motion set based on the second motion information, it can also acquire time-series data of the target object collected under the timing mode of the second acquisition module. The timing data of the target's motion state can be obtained by acquiring the motion information of the same object through the first and second acquisition modules. Since the motion of the target object at a specific point in time is deterministic and independent of the acquisition modules, the time synchronization information corresponding to the first and second acquisition modules can be determined based on the first and second motion sets. The time synchronization information corresponding to each acquisition module can be determined by leveraging the differences between the time points corresponding to the target motion state in each motion set. This achieves high-precision alignment of the time of multiple objects. Compared with related technologies, this approach eliminates the need for software or hardware adaptation modifications to the first and second acquisition modules, reduces external dependencies, and is faster and more efficient, while achieving precise time synchronization. Attached Figure Description
[0020] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0021] Figure 1 A flowchart illustrating a time processing method provided in an embodiment of this disclosure;
[0022] Figure 2 A flowchart illustrating another time processing method provided in an embodiment of this disclosure;
[0023] Figure 3a A schematic diagram illustrating the overlap of data between a first motion set and a second motion set after time compensation based on a reference compensation time, provided for an embodiment of the present disclosure, in a time processing method for an embodiment of the present disclosure.
[0024] Figure 3bA schematic diagram illustrating the overlap of data between the first motion set and the second motion set after time compensation based on a reference compensation time, provided for another time processing method for embodiments of this disclosure.
[0025] Figure 4 This is a schematic diagram of the structure of a time processing device provided in an embodiment of the present disclosure;
[0026] Figure 5 This is a schematic diagram of the structure of an electronic device for implementing a time processing method, provided in an embodiment of the present disclosure. Detailed Implementation
[0027] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0028] It should be understood that the steps described in the method embodiments of this disclosure may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this disclosure is not limited in this respect.
[0029] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0030] It should be noted that the concepts of "first" and "second" mentioned in this disclosure are used only to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.
[0031] It should be noted that the terms "a" and "a plurality of" used in this disclosure are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0032] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
[0033] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this disclosure in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained.
[0034] For example, upon receiving a user's active request, a prompt message is sent to the user to explicitly inform them that the requested operation will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the software or hardware, such as the electronic device, application, server, or storage medium performing the operations of this disclosed technical solution, based on the prompt message.
[0035] As an optional but non-limiting implementation, in response to a user's active request, sending a prompt message to the user can be done via a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose whether to "agree" or "disagree" to provide personal information to the electronic device.
[0036] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure.
[0037] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and related provisions.
[0038] Figure 1 This is a flowchart illustrating a time processing method provided in an embodiment of this disclosure. This embodiment is applicable to scenarios where the times of multiple objects need to be aligned. The method can be executed by a time processing device, which can be implemented in software and / or hardware. Optionally, it can be implemented using an electronic device, such as a mobile terminal, a PC, or a server. Figure 1 As shown, the method in this embodiment may specifically include:
[0039] S110. Obtain the first motion information of the target object collected by the first acquisition module at multiple first time points within a preset time period, and determine the first motion set based on the first motion information; wherein, the first motion set is used to record the target motion state of the target object at multiple first time points.
[0040] The first acquisition module is used to collect motion information of the target object. The target object is the object whose motion information needs to be collected. Within a preset time period, the target object will generate corresponding motion over time, and the first acquisition module can collect, process, and record this motion information.
[0041] The first time point refers to the time corresponding to when the first acquisition module collects the motion information of the target object. Within a preset time period, there will be multiple first time points, each with its own corresponding first motion information. The first motion information can be used to reflect the specific motion of the target object at the first time point, and the first motion information may include at least one of the following: motion amplitude information, posture information, velocity information, and position information.
[0042] Specifically, after acquiring the first motion information of the target object collected by the first acquisition module at multiple first time points within a preset time period, a first motion set can be determined based on the obtained first motion information. The first motion set can be used to record the target motion state of the target object at multiple first time points. The target motion state can be used to distinguish the motion changes of the target object at different time points. The target motion state is the motion state information of key interest in the first motion information. The target motion state includes a first motion state and a second motion state, where the first motion state is different from the second motion state. For example, if the first motion state is the state when the target object is stationary, then the second motion state can be the state when the target object is in motion, or it can be called a non-stationary state.
[0043] As an optional but non-limiting implementation, the first motion information may include first pose information. Here, pose information refers to the position and orientation information of the target object. In this case, determining the first motion set based on the first motion information includes: determining the target motion state corresponding to the target object at a first time point based on the first pose information of the target object at multiple consecutive first time points, and constructing the first motion set based on the multiple target motion states and the first time points corresponding to the target motion states.
[0044] The first pose information refers to the pose information of the target object determined by the first acquisition module. The target motion state in the first motion set refers to the target motion state of the target object at the first time point determined by the first acquisition module. Each target motion state in the first motion set has a one-to-one correspondence with each first time point. Based on the first pose information of the target object acquired at multiple consecutive first time points, the target motion state of the target object at the first time point can be determined, and the first motion set can be constructed based on multiple target motion states and the first time points corresponding to the target motion states. The motion set can be in the form of "time point + target motion state" data, or it can be in the form of a graph presented in the form of a square wave, or it can be in the form of a data table. For example, the first motion set can be a sequence of target motion states arranged in chronological order of the first time points.
[0045] S120. Obtain the second motion information of the target object collected by the second acquisition module at multiple second time points within a preset time period, and determine the second motion set based on the second motion information; wherein, the second motion set is used to record the target motion state of the target object at multiple second time points.
[0046] The second acquisition module is different from the first acquisition module and can also be used to acquire motion information of the target object. The second time point represents the time corresponding to when the second acquisition module acquires the motion information of the target object. Similarly, within a preset time period, there will be multiple second time points, each with its own corresponding second motion information. The second motion information reflects the specific motion of the target object at the second time point and may include at least one of the following: motion amplitude information, posture information, velocity information, and position information.
[0047] Specifically, after acquiring the second motion information of the target object collected by the second acquisition module at multiple second time points within a preset time period, a second motion set can be determined based on the obtained second motion information. The second motion set can be used to record the target object's motion state at multiple second time points. The second motion set reflects the correlation between multiple second time points and their corresponding target motion states.
[0048] As an optional but non-limiting implementation, the second motion information includes second pose information. Further, determining the second motion set based on the second motion information includes: determining the second target motion state corresponding to the target object at a second time point based on the second pose information of the target object at multiple consecutive second time points, and constructing the second motion set based on the multiple second target motion states and the second time points corresponding to the second target motion states.
[0049] The second pose information refers to the pose information of the target object determined by the second acquisition module. The target motion state in the second motion set is the target motion state of the target object at the second time point as determined by the second acquisition module. Each target motion state in the second motion set has a one-to-one correspondence with each second time point. Based on the second pose information of the target object acquired at multiple consecutive second time points, the second target motion state of the target object at the second time point can be determined, and the second motion set can be constructed based on multiple second target motion states and the second time points corresponding to the second target motion states.
[0050] As an optional but non-limiting implementation, the target object includes a target robot. The first acquisition module includes a motion capture module installed on the target robot. The second acquisition module includes a motion capture module independent of the target robot.
[0051] For example, if the target object is a target robot, the first acquisition module can be a motion capture module on the target robot's own system capable of acquiring robot motion information. For instance, this motion capture module can be a module composed of pose sensors, force sensors, etc., within the robot system. The second acquisition module can be a motion capture module in the motion capture system capable of acquiring robot motion information. The motion capture system is independent of the target robot. For example, the motion capture system can be a system composed of a series of camera devices used to capture and process the motion of the target robot. In this case, the motion capture module can be an acquisition module on one of the camera devices.
[0052] In layman's terms, the first acquisition module can be the robot's own motion capture system, and the second acquisition module can be an external motion capture system used to capture the target robot's motion information. The motion information of the target robot collected by both the robot's own motion capture system and the external motion capture system within the same time period can be aligned for the same motion information over time.
[0053] It should be noted that in this embodiment, the first acquisition module differs from the second acquisition module. Both modules are capable of acquiring motion information of the same target object within the same preset time period. The first acquisition module and the second acquisition module can be acquisition modules on different subjects, or they can be two different acquisition modules on the same subject. The key is that the two acquisition modules are different modules acquiring motion information of the same target object, and the data sources they obtain are different.
[0054] As an optional but non-limiting implementation, the timing methods between the first and second time points can be the same or different. If the timing methods between the first and second time points are different, the acquired first and / or second time points can be converted based on a preset timing method.
[0055] Specifically, in real-world scenarios, the first and second acquisition modules may record their respective time points using different timing methods. For example, the first acquisition module might record absolute time information, such as 10:20:01 AM, 10:20:02 AM, or 10:20:03 AM on October 21, 2024; while the second acquisition module might record relative time information, such as the 1st, 2nd, and 3rd second after the second acquisition module starts. To address this, the acquired first and / or second time points can be converted based on a preset timing method, ensuring that their respective time points correspond to the same timing method. This facilitates the processing and use of the time information in subsequent solutions. Preferably, a unified time standard can be used as the preset timing method to convert the first and / or second time points into absolute times.
[0056] S130. Determine the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the first motion set and the second motion set.
[0057] The time synchronization information can be used to eliminate the time discrepancy between the first acquisition module and the second acquisition module.
[0058] Since the first and second acquisition modules record motion information of the same target object within the same preset time period, although there may be discrepancies in the recorded time information and the times may not be aligned, their first and second motion sets should at least encompass a portion of the same target object's identical motion information. Therefore, the first and second motion sets can be used to determine time synchronization information. Based on this time synchronization information, the acquisition information from the first and second acquisition modules can be synchronized, achieving time alignment for multiple objects and ensuring that the data from both modules at the same time are aligned.
[0059] Specifically, the time synchronization information corresponding to the first acquisition module and the second acquisition module can be determined by combining the deviation between the target motion states in the first motion set and the second motion set, as well as the first time point and the second time point corresponding to the target motion state.
[0060] As an optional but non-limiting implementation of this disclosure, the difference between each first time point and the second time point can be calculated to obtain multiple possible synchronization times for the first and second acquisition modules, i.e., reference compensation times. Furthermore, each reference compensation time can be used to compensate for either the first or second time point, and the total state difference between the target motion states at the same moment in the first and second motion sets after time compensation based on the reference compensation time can be determined to measure the time compensation effect. Then, the time synchronization information corresponding to the first and second acquisition modules is determined based on the total state difference corresponding to each reference compensation time.
[0061] The technical solution of this disclosure involves acquiring first motion information of a target object collected by a first acquisition module at multiple first time points within a preset time period, and determining a first motion set based on the first motion information. Since the first motion set records the target motion state of the target object at multiple first time points, it can acquire time-series data of the target motion state of the target object collected under the timing mode of the first acquisition module. Similarly, by acquiring second motion information of the target object collected by a second acquisition module at multiple second time points within a preset time period, and determining a second motion set based on the second motion information, it can also acquire time-series data of the target object collected under the timing mode of the second acquisition module. The timing data of the target's motion state can be obtained by acquiring the motion information of the same object through the first and second acquisition modules. Since the motion of the target object at a specific point in time is deterministic and independent of the acquisition modules, the time synchronization information corresponding to the first and second acquisition modules can be determined based on the first and second motion sets. The time synchronization information corresponding to each acquisition module can be determined by leveraging the differences between the time points corresponding to the target motion state in each motion set. This achieves high-precision alignment of the time of multiple objects. Compared with related technologies, this approach eliminates the need for software or hardware adaptation modifications to the first and second acquisition modules, reduces external dependencies, and is faster and more efficient, while achieving precise time synchronization.
[0062] Figure 2This is a flowchart illustrating another time processing method provided in this embodiment. Based on the above embodiments, this embodiment further refines the determination of time synchronization information corresponding to the first acquisition module and the second acquisition module according to the first motion set and the second motion set. Optionally, determining the time synchronization information corresponding to the first acquisition module and the second acquisition module according to the first motion set and the second motion set includes: determining multiple reference compensation times corresponding to the first acquisition module and the second acquisition module based on the target motion states in the first motion set and the second motion set; determining the total state difference between the multiple target motion states in the first motion set and the second motion set under each reference compensation time; and determining the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the total state difference corresponding to the multiple reference compensation times. For detailed implementation, please refer to the description of this embodiment. Technical features that are the same as or similar to those in the foregoing embodiments will not be repeated here. Figure 2 As shown, the method in this embodiment may specifically include:
[0063] S210. Obtain the first motion information of the target object collected by the first acquisition module at multiple first time points within a preset time period, and determine the first motion set based on the first motion information; wherein, the first motion set is used to record the target motion state of the target object at multiple first time points.
[0064] S220. Obtain the second motion information of the target object collected by the second acquisition module at multiple second time points within a preset time period, and determine the second motion set based on the second motion information; wherein, the second motion set is used to record the target motion state of the target object at multiple second time points.
[0065] S230. Determine multiple reference compensation times corresponding to the first acquisition module and the second acquisition module based on the target motion state in the first motion set and the second motion set.
[0066] The reference compensation time represents the potential time difference between the first and second acquisition modules. Based on the reference compensation time, synchronization time information for aligning the time information of the first and second acquisition modules can be determined.
[0067] It is understandable that the motion state of a target object at the same point in time should be unique. In other words, when the first and second acquisition modules are synchronized, the target motion state in the first motion set and the target motion state in the second motion set should be consistent. Since there is a time difference between the first and second acquisition modules, it is necessary to find the first and second time points corresponding to the same moment. Therefore, the possible time difference between the first and second time points can be determined by the target motion states in the first and second motion sets, i.e., the reference compensation time corresponding to the first and second acquisition modules.
[0068] As an optional but non-limiting implementation, determining multiple reference compensation times corresponding to the first acquisition module and the second acquisition module based on the target motion states in the first motion set and the second motion set may include: determining a first target state in the multiple target motion states of the first motion set and a second target state in the multiple target motion states of the second motion set based on the change information of the target motion state of the target object; and determining multiple reference compensation times based on a first time point corresponding to the first target state and a second time point corresponding to the second target state.
[0069] The target motion state change information reflects how the target object's motion state at the current time point has changed relative to its motion state at the previous time point. This change information includes: a change from a first motion state to a second motion state, and / or a change from a second motion state to a first motion state.
[0070] Specifically, for the first set of motions, based on the change information of the target object's motion state, the target motion state that has changed relative to the previous first time point in the first set of motions can be determined as the first target state. For example, the first set of motions includes first time points a1, a2, a3, a4, and a5. If the target motion state at time a1 is the first motion state, and the target motion state at time a2 is the second motion state, it can be seen that the target motion state at time a2 has changed compared to the target motion state at time a1. Therefore, the target motion state at time a2 (that is, the second motion state at time a2) can be determined as the first target state.
[0071] Similarly, for the second set of motions, based on the changes in the target object's motion state, the target motion state that has changed relative to the previous second time point can be determined as the second target state. For a detailed explanation of this principle, please refer to the description above; it will not be elaborated upon here.
[0072] It should be noted that the first target state and the second target state essentially reflect the portion of the target motion state in their respective motion sets that has undergone the same change as the target motion state at the previous time point.
[0073] Since the first time point corresponding to the first target state and the second time point corresponding to the second target state both essentially reflect the key time points when the motion state of the target object changes, by focusing on the differences between these key time points, we can determine the time difference between the two in terms of time information, that is, determine the reference compensation time, and then achieve time alignment between the two based on the reference compensation time.
[0074] Specifically, after determining the first target state, the first time point corresponding to the first target state can be determined based on the first set of motions. Similarly, after determining the second target state, the second time point corresponding to the second target state can be determined based on the second set of motions. By combining each pair of these first and second time points and calculating the difference, multiple reference compensation times can be determined.
[0075] As an optional but non-limiting implementation, determining the first target state among multiple target motion states in the first motion set based on the change information of the target object's target motion state may include: for a single target motion state in the first motion set, if the target motion state is the first motion state and the target motion state at the previous first time point is the second motion state, determining the target motion state as the first target state; and / or, for a single target motion state in the first motion set, if the target motion state is the second motion state and the target motion state at the previous first time point is the first motion state, determining the target motion state as the first target state. Using this technical solution, a subset of target motion states with significant characteristics can be determined from the first and second motion sets to determine the reference compensation time, saving data computation and improving the time synchronization efficiency of the first and second acquisition modules.
[0076] Specifically, for a single target motion state in the first motion set, if the target motion state is a first motion state and the target motion state corresponding to the preceding first time point adjacent to the first time point of that target motion state is a second motion state, then that target motion state is determined as the first target state. For example, in the first motion set, if the target motion state corresponding to the first time point a2 is the first motion state, and the target motion state corresponding to the preceding first time point a1 adjacent to that first time point a2 is the second motion state, then the target motion state corresponding to the first time point a2 is determined as the first target state.
[0077] And / or, for a single target motion state in the first motion set, if the target motion state is a second motion state and the target motion state corresponding to the preceding first time point adjacent to the first time point corresponding to the target motion state is also a first motion state, then the target motion state is determined as the first target state. For example, in the first motion set, if the target motion state corresponding to the first time point a4 is the second motion state, and the target motion state corresponding to the preceding first time point a3 adjacent to the first time point a4 is the first motion state, then the target motion state corresponding to the first time point a4 is determined as the first target state.
[0078] As an optional but non-limiting implementation, determining multiple reference compensation times based on the first time point corresponding to the first target state and the second time point corresponding to the second target state may include: performing subtraction processing on the first time point corresponding to each first target state and the second time point corresponding to each second target state under a preset timing method to obtain multiple reference compensation times.
[0079] Specifically, there may be multiple first target states that meet the requirements for the first set of motions, and there may also be multiple second target states that meet the requirements for the second set of motions. Simultaneously, the first time point corresponding to the first target state and the second time point corresponding to the second target state essentially reflect the key time points at which the motion state of the target object changes. Therefore, by focusing on the differences between these key time points, the time difference in time information between the two can be determined, that is, the reference compensation time can be determined, and time alignment between the two can be achieved based on the reference compensation time. Specifically, for a given first target state, the first time point corresponding to that first target state can be subtracted from the second time point corresponding to each second target state under a preset timing method to obtain multiple reference compensation times. Similarly, for each first target state, the same processing operation is performed between the first time point and the second time point corresponding to each second target state to obtain multiple reference compensation times.
[0080] For example, suppose there are three first target states determined based on the first motion set, with corresponding first time points a1, a3, and a4, and three second target states determined based on the second motion set, with corresponding second time points b2, b3, and b4, then the differences between a1, a3, a4 and b2, b3, and b4 can be performed to obtain multiple reference compensation times. Specifically, first, the time differences between a1 and b2, b3, and b4 are calculated, resulting in time differences of (a1-b2), (a1-b3), (a1-b4), (b2-a1), (b3-a1), and (b4-a1). Then, the time differences between a3 and b2, b3, and b4 are calculated, resulting in time differences of (a3-b2), (a3-b3), (a3-b4), (b2-a3), (b3-a3), and (b4-a3). Finally, the time differences between a4 and b2, b3, and b4 are calculated, resulting in time differences of (a4-b2), (a4-b3), (a4-b4), (b2-a4), (b3-a4), and (b4-a4). All of these calculated time differences are used as reference compensation times, resulting in 18 reference compensation times.
[0081] It should be noted that the difference between the first time point corresponding to each first target state and the second time point corresponding to each second target state is performed to iterate through and subtract the "first time point corresponding to the first target state" and the "second time point corresponding to the second target state" to obtain a more comprehensive reference compensation time.
[0082] S240. Determine the total state difference between multiple target motion states in the first motion set and the second motion set at each reference compensation time.
[0083] The total state difference reflects the total difference between the motion states of the target object acquired by the first acquisition module and the second acquisition module at the same moment after time alignment. The larger the total state difference, the more the motion information of the target object acquired by the two modules deviates and the lower the degree of overlap; the smaller the total state difference, the closer the motion information of the target object acquired by the two modules is and the higher the degree of overlap.
[0084] Specifically, taking one reference compensation time as an example, after determining the reference compensation time, the time information in the first motion set or the second motion set can be compensated based on the reference compensation time. Subsequently, the total state difference between multiple target motion states corresponding to the same moment in the two motion sets after compensation can be determined. By analogy, the total state difference corresponding to each reference compensation time can be determined.
[0085] As an optional but non-limiting implementation, determining the total state difference between multiple target motion states in the first motion set and the second motion set at each reference compensation time may include: for each reference compensation time, performing time compensation on the first time point or the second time point according to the reference compensation time; determining two target motion states corresponding to the same time from the first motion set and the second motion set according to the compensated first time point or the second time point; and determining the total state difference corresponding to the reference compensation time based on the two target motion states corresponding to the same time.
[0086] Specifically, regarding a reference compensation time, after determining the reference compensation time, time compensation can be performed on each first time point or each second time point based on this reference compensation time. The aim is to ensure that the time information of each first time point and each second time point corresponds consistently under the same timing method after time compensation, achieving time alignment. Similarly, the same time compensation operation is performed for each reference compensation time to verify which reference compensation time correctly synchronizes the first and second acquisition modules (the truly aligned time), i.e., the time synchronization information. After time compensation, it is equivalent to aligning the two times using the reference compensation time. Then, based on the compensated first or second time point, the two target motion states corresponding to the same moment can be determined from the first and second motion sets, respectively.
[0087] For example, taking the compensation of 0.5s for each of the original first time points as an example, assuming that the original first time points are a1, a2, a3, a4, a5, and the original second time points are b1, b2, b3, b4, b5, the first time points after time compensation are (a1+0.5), (a2+0.5), (a3+0.5), (a4+0.5), (a4+0.5). Then, find the same time points for (a1+0.5), (a2+0.5), (a3+0.5), (a4+0.5), (a4+0.5) and b1, b2, b3, b4, b5, that is, determine the first time point and the second time point corresponding to the same moment. For example, we can find the same time points as (a1+0.5), (a2+0.5), (a3+0.5), (a4+0.5), and (a4+0.5) from b1, b2, b3, b4, and b5 respectively.
[0088] It should be noted that for each compensated first time point, only a portion of the first time points may coincide with a portion of the second time points, meaning they correspond to the same moment. However, some first time points may not coincide with any second time point. For example, the first time point (a1+0.5) may not coincide with any second time point, but the first time point (a2+0.5) and the second time point b1 are the same moment, and the first time point (a3+0.5) and the second time point b2 are the same moment, and so on. For these identical moments, the corresponding two target motion states can be determined from the first motion set and the second motion set, respectively. For example, the target motion state corresponding to the first time point (a2+0.5) can be determined from the first motion set, and the target motion state corresponding to the second time point b1 can be determined from the second motion set. This process can be repeated to determine the two target motion states corresponding to each identical moment.
[0089] Under a reference compensation time, after time compensation is performed on the original first time point or the original second time point, it is possible that only a portion of the time points can correspond to the same moment. For each set of first and second time points that can correspond to the corresponding moment, the state difference quantity corresponding to each same moment can be determined. Subsequently, the total state difference quantity formed by all points that can correspond to the same moment under the reference compensation time can be determined.
[0090] As an optional but non-limiting implementation, the total state difference amount corresponding to the reference compensation time is determined based on the two target motion states corresponding to the same time, including: determining the instantaneous state difference amount based on the target motion states at the first time point and the second time point corresponding to the same time, and determining the total state difference amount corresponding to the reference compensation time based on the instantaneous state difference amounts at multiple times.
[0091] Specifically, for each identical moment, after determining the motion states of the two targets corresponding to that identical moment, the instantaneous state difference can be determined based on the differences between the two target motion states. By analogy, the instantaneous state difference corresponding to each of the multiple identical moments can be determined. Then, by adding them together, the total state difference corresponding to the reference compensation time can be determined.
[0092] For example, taking the determination of two identical moments as an example, where the first time point (a2+0.5) and the second time point b1 are the same moment, and the first time point (a3+0.5) and the second time point b2 are the same moment, the instantaneous state difference is determined as W1 at the first identical moment; and as W2 at the second identical moment. The final total state difference is then W1+W2. The instantaneous state differences W1 and W2 can be determined by judging whether the corresponding motion states of the two targets are the same. For example, for ease of calculation, when the two target motion states are the same, the instantaneous state difference corresponding to the two target motion states can be recorded as a first value; when the two target motion states are different, the instantaneous state difference corresponding to the two target motion states can be recorded as a second value. Specifically, if the two target motion states are the same, the instantaneous state difference is recorded as 0; if the two target motion states are different, the instantaneous state difference is recorded as 1.
[0093] It should be noted that in determining the total state difference, the total state difference should be determined for each reference compensation time, and the same processing operation should be performed for each reference compensation time. For example, if there are 5 determined reference compensation times, then there will also be 5 determined total state differences.
[0094] S250. Determine the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the total state difference corresponding to multiple reference compensation times.
[0095] As an optional but non-limiting implementation, determining the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the total state difference corresponding to multiple reference compensation times may include: determining a first total number of target motion states included in the first motion set and the second motion set, and a second total number of target motion states at the same time; determining candidate compensation times from multiple reference compensation times based on the first total number and the second total number; and determining the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the total state difference corresponding to multiple candidate compensation times.
[0096] After time compensation, the target motion states in the first and second motion sets may overlap. It's important to note that when the overlap is high, the total state difference corresponding to the candidate compensation time is usually small. However, this doesn't mean that a small total state difference necessarily indicates a successful synchronization time. The proportion of overlapping target motion states within the total number of target motion states also reflects the reliability of the corresponding reference compensation time. For example, if only 15% of the data from the first and second acquisition modules overlaps after time compensation at a certain reference compensation time, then this reference compensation time is unreliable and actually exacerbates the data discrepancies. Such a reference compensation time should not be retained.
[0097] In practical applications, when the total state difference corresponding to the reference compensation time is small, it is usually as follows: Figure 3a The first and second motion sets shown contain a large number of target motion states that occur at the same time and have a high degree of overlap, as well as situations where the target motion states overlap significantly. Figure 3b The first and second motion sets shown depict only a small number of target motion states occurring at the same time. For example... Figure 3a As shown, the solid black lines represent the target motion states at multiple first time points of the first motion set, and the dashed red lines represent the target motion states at multiple second time points of the second motion set. It can be seen that the solid black lines and the dashed red lines largely overlap, which indicates that in... Figure 3a Under the corresponding reference compensation time, most of the data of the first motion set and the second motion set can be made to overlap, which indicates that the reference compensation time is reliable.
[0098] like Figure 3b As shown, the black solid lines represent the target motion states at multiple first time points of the first motion set, and the red dashed lines represent the target motion states at multiple second time points of the second motion set. It can be seen that the black solid lines and red dashed lines overlap only slightly, indicating that only a small number of target motion states exist at the same time. This also means that in... Figure 3b Under the corresponding reference compensation time, only a very small portion of the data in the first motion set and the second motion set can be made to overlap, and the vast majority of the data cannot be taken into account. Although the total state difference corresponding to this reference compensation time is small, using this reference compensation time makes the deviation between the data more serious, thus indicating that this reference compensation time is unreliable.
[0099] Specifically, for the details of one of the reference compensation times, the first total number of target motion states included in the first motion set and the second motion set can be determined, and the second total number of target motion states at the same time can be determined. Then, a candidate compensation time can be determined from multiple reference compensation times based on the ratio between the first total number and the second total number.
[0100] As an optional but non-limiting implementation, a candidate compensation time is determined from multiple reference compensation times based on a first total quantity and a second total quantity, including: if the ratio of the second total quantity to the first total quantity exceeds a preset ratio threshold, then the corresponding reference compensation time is determined as a candidate compensation time.
[0101] The preset ratio threshold can be set based on actual needs. For example, it can be set to 50% or 75%. If the ratio of the second total quantity to the first total quantity exceeds the preset ratio threshold, it indicates that the data overlap is high. The reference compensation time may be the synchronization time of the first acquisition module and the second acquisition module.
[0102] Specifically, the reference compensation time corresponding to the total state difference with the smallest difference among multiple candidate compensation times can be determined as the time synchronization information for the first and second acquisition modules. The candidate compensation time with the smallest total state difference indicates the highest data overlap, and therefore, the reference compensation time corresponding to that candidate compensation time can be determined as the time synchronization information for the first and second acquisition modules.
[0103] The solution of this embodiment determines multiple reference compensation times corresponding to the first and second acquisition modules based on the target motion states in the first and second motion sets to obtain multiple reference times that may be used to synchronize the first and second acquisition modules. Then, by determining the total state difference between the multiple target motion states in the first and second motion sets at each reference compensation time, the overall difference between the individual target motion states in the first and second motion sets after compensation based on the reference compensation time can be determined, thus obtaining a quantitative indicator to measure whether the first and second acquisition modules are synchronized in time. Furthermore, by determining the time synchronization information corresponding to the second acquisition module based on the total state difference corresponding to the multiple reference compensation times, the actual synchronization time of the second acquisition module and the second acquisition module can be determined from the reference compensation time using the total state difference corresponding to each reference compensation time, thereby achieving accurate determination of the synchronization time information of the first and second acquisition modules.
[0104] Figure 4This is a schematic diagram of the structure of a time processing device provided in an embodiment of the present disclosure, as shown below. Figure 4 As shown, the device includes a first motion set acquisition module 410, a second motion set acquisition module 420, and a time synchronization information determination module 430. The first motion set acquisition module 410 is used to acquire first motion information of a target object collected by a first acquisition module at multiple first time points within a preset time period, and determine a first motion set based on the first motion information; wherein the first motion set is used to record the target motion state of the target object at multiple first time points. The second motion set acquisition module 420 is used to acquire second motion information of the target object collected by a second acquisition module at multiple second time points within a preset time period, and determine a second motion set based on the second motion information; wherein the second motion set is used to record the target motion state of the target object at multiple second time points. The time synchronization information determination module 430 is used to determine the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the first motion set and the second motion set.
[0105] The technical solution of this embodiment involves a first motion set acquisition module 410 acquiring first motion information of a target object collected by a first acquisition module at multiple first time points within a preset time period, and determining a first motion set based on the first motion information. Since the first motion set records the target motion state of the target object at multiple first time points, it can acquire time-series data of the target motion state of the target object collected under the timing mode of the first acquisition module. Then, a second motion set acquisition module 420 acquires second motion information of the target object collected by a second acquisition module at multiple second time points within a preset time period, and determines a second motion set based on the second motion information. Similarly, since the second motion set records the target motion state of the target object at multiple second time points, it can acquire time-series data of the target motion state of the target object collected under the timing mode of the second acquisition module. The time-series data of the target motion state of the target object is collected, that is, the motion information of the same object can be collected by the first acquisition module and the second acquisition module. Since the motion of the target object at a specific point in time is determined and independent of the acquisition module, the synchronization information determination module 430 can determine the time synchronization information corresponding to the first acquisition module and the second acquisition module according to the first motion set and the second motion set. By using the differences between the time points corresponding to the target motion state in each motion set, the time synchronization information corresponding to each acquisition module can be determined, thereby achieving high-precision alignment of the time of multiple objects. Compared with the implementation methods of related technologies, there is no need to adapt or modify the software or hardware of the first acquisition module and the second acquisition module, reducing external dependencies, making it faster and more efficient to implement, and achieving the effect of accurate time synchronization.
[0106] Based on any optional technical solution in the embodiments of this disclosure, the time synchronization information determination module 430 may include: a reference compensation time determination submodule, a total state difference determination submodule, and a time synchronization information determination submodule. The reference compensation time determination submodule is used to determine multiple reference compensation times corresponding to the first acquisition module and the second acquisition module based on the target motion states in the first motion set and the second motion set; the total state difference determination submodule is used to determine the total state difference between the multiple target motion states in the first motion set and the second motion set at each reference compensation time; and the time synchronization information determination submodule is used to determine the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the total state difference corresponding to the multiple reference compensation times.
[0107] Based on any optional technical solution in the embodiments of this disclosure, the reference compensation time determination submodule may include a target state determination unit and a reference compensation time determination unit. The target state determination unit is used to determine a first target state among multiple target motion states in the first motion set and a second target state among multiple target motion states in the second motion set, based on the change information of the target motion state of the target object. The reference compensation time determination unit is used to determine multiple reference compensation times based on the first time point corresponding to the first target state and the second time point corresponding to the second target state.
[0108] Based on any optional technical solution in the embodiments of this disclosure, the target state determination unit can be specifically used for: for a single target motion state in the first motion set, if the target motion state is the first motion state and the target motion state at the previous first time point of the target motion state is the second motion state, determining the target motion state as the first target state; and / or, for a single target motion state in the first motion set, if the target motion state is the second motion state and the target motion state at the previous first time point of the target motion state is the first motion state, determining the target motion state as the first target state.
[0109] Based on any optional technical solution in the embodiments of this disclosure, the reference compensation time determination unit can be specifically used to: perform subtraction processing on the first time point corresponding to each first target state and the second time point corresponding to each second target state under a preset timing mode to obtain multiple reference compensation times.
[0110] Based on any optional technical solution in the embodiments of this disclosure, the total state difference determination submodule may include: a time compensation unit, a target motion state determination unit, and a total state difference determination unit. The time compensation unit is used to perform time compensation on the first time point or the second time point according to the reference compensation time for each of the reference compensation times; the target motion state determination unit is used to determine two target motion states corresponding to the same time from the first motion set and the second motion set based on the compensated first time point or the second time point; and the total state difference determination unit is used to determine the total state difference corresponding to the reference compensation time based on the two target motion states corresponding to the same time.
[0111] Based on any optional technical solution in the embodiments of this disclosure, the total state difference determination unit is specifically used to: determine the instantaneous state difference based on the target motion state corresponding to the first time point and the second time point at the same time, and determine the total state difference corresponding to the reference compensation time based on the instantaneous state difference at multiple times at the same time.
[0112] Based on any optional technical solution in the embodiments of this disclosure, the time synchronization information determination submodule includes: a candidate compensation time determination unit and a time synchronization information determination unit. The candidate compensation time determination unit is used to determine a first total number of the target motion states included in the first motion set and the second motion set, and a second total number of the target motion states at the same time, and to determine candidate compensation times from a plurality of reference compensation times based on the first total number and the second total number; the time synchronization information determination unit is used to determine the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the total state difference amount corresponding to the plurality of candidate compensation times.
[0113] Based on any optional technical solution in the embodiments of this disclosure, the first motion information includes first pose information; the first motion set acquisition module 410 can be specifically used to: determine the target motion state of the target object at the first time point according to the first pose information of the target object at multiple consecutive first time points, and construct a first motion set according to the multiple first time points and the target motion state corresponding to the first time point.
[0114] Based on any optional technical solution in the embodiments of this disclosure, the target object includes a target robot; the first acquisition module includes a motion capture module disposed on the target robot; the second acquisition module includes a motion capture module independent of the target robot.
[0115] The live streaming processing apparatus provided in this disclosure can execute the live streaming processing method provided in any embodiment of this disclosure, and has the corresponding functional modules and beneficial effects for executing the live streaming processing method.
[0116] It is worth noting that the various units and modules included in the above-mentioned device are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be realized; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the protection scope of the embodiments of this disclosure.
[0117] The following is for reference. Figure 5 The diagram illustrates a structural schematic of an electronic device (e.g., a terminal device or a server) 500 suitable for implementing embodiments of the present disclosure. The terminal device in the embodiments of the present disclosure may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 5 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.
[0118] like Figure 5 As shown, the electronic device 500 may include a processing unit (e.g., a central processing unit, a graphics processor, etc.) 501, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 502 or a program loaded from a storage device 508 into a random access memory (RAM) 503. The RAM 503 also stores various programs and data required for the operation of the electronic device 500. The processing unit 501, ROM 502, and RAM 503 are interconnected via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.
[0119] Typically, the following devices can be connected to I / O interface 505: input devices 506 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 507 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 508 including, for example, magnetic tapes, hard disks, etc.; and communication devices 509. Communication device 509 allows electronic device 500 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 5 An electronic device 500 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.
[0120] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 509, or installed from a storage device 508, or installed from a ROM 502. When the computer program is executed by the processing device 501, it performs the functions defined in the methods of embodiments of this disclosure.
[0121] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
[0122] The electronic device provided in this disclosure and the time processing method provided in the above embodiments belong to the same inventive concept. Technical details not described in detail in this disclosure can be found in the above embodiments, and this embodiment has the same beneficial effects as the above embodiments.
[0123] This disclosure provides a computer storage medium storing a computer program that, when executed by a processor, implements the time processing method provided in the above embodiments.
[0124] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0125] According to one or more embodiments of this disclosure, [Example 1] provides a time processing method, including: acquiring first motion information of a target object collected by a first acquisition module at multiple first time points within a preset time period, and determining a first motion set based on the first motion information; wherein the first motion set is used to record the target motion state of the target object at multiple first time points; acquiring second motion information of the target object collected by a second acquisition module at multiple second time points within a preset time period, and determining a second motion set based on the second motion information; wherein the second motion set is used to record the target motion state of the target object at multiple second time points; and determining time synchronization information corresponding to the first acquisition module and the second acquisition module based on the first motion set and the second motion set.
[0126] According to one or more embodiments of this disclosure, [Example 2] provides the method of Example 1, which further includes: optionally, determining the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the first motion set and the second motion set includes: determining a plurality of reference compensation times corresponding to the first acquisition module and the second acquisition module based on the target motion states in the first motion set and the second motion set; determining the total state difference between the plurality of target motion states in the first motion set and the second motion set under each reference compensation time; and determining the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the total state difference corresponding to the plurality of reference compensation times.
[0127] According to one or more embodiments of this disclosure, [Example 3] provides the method of Example 2, which further includes: Optionally, determining multiple reference compensation times corresponding to the first acquisition module and the second acquisition module based on the target motion states in the first motion set and the second motion set includes: determining a first target state among the multiple target motion states in the first motion set and a second target state among the multiple target motion states in the second motion set based on the change information of the target motion state of the target object; and determining multiple reference compensation times based on the first time point corresponding to the first target state and the second time point corresponding to the second target state.
[0128] According to one or more embodiments of this disclosure, [Example 4] provides the method of Example 3, which further includes: optionally, the target motion state includes a first motion state and a second motion state; determining the first target state among the plurality of target motion states of the first motion set based on the change information of the target motion state of the target object includes: for a single target motion state in the first motion set, if the target motion state is the first motion state and the target motion state at the previous first time point of the target motion state is the second motion state, determining the target motion state as the first target state; and / or, for a single target motion state in the first motion set, if the target motion state is the second motion state and the target motion state at the previous first time point of the target motion state is the first motion state, determining the target motion state as the first target state.
[0129] According to one or more embodiments of this disclosure, Example 5 provides the method of Example 3, which further includes: Optionally, determining multiple reference compensation times based on the first time point corresponding to the first target state and the second time point corresponding to the second target state includes: performing subtraction processing on the first time point corresponding to each first target state and the second time point corresponding to each second target state under a preset timing mode to obtain multiple reference compensation times.
[0130] According to one or more embodiments of this disclosure, Example Six provides the method of Example Two, which further includes: Optionally, determining the total state difference between multiple target motion states in the first motion set and the second motion set at each of the reference compensation times includes: for each of the reference compensation times, performing time compensation on the first time point or the second time point according to the reference compensation time; determining two target motion states corresponding to the same time from the first motion set and the second motion set according to the compensated first time point or the second time point; and determining the total state difference corresponding to the reference compensation time according to the two target motion states corresponding to the same time.
[0131] According to one or more embodiments of this disclosure, [Example Seven] provides the method of Example Six, which further includes: optionally, determining the total state difference amount corresponding to the reference compensation time based on two target motion states corresponding to the same time includes: determining the instantaneous state difference amount based on the target motion states corresponding to the first time point and the second time point at the same time, and determining the total state difference amount corresponding to the reference compensation time based on the instantaneous state difference amounts at multiple times at the same time.
[0132] According to one or more embodiments of this disclosure, Example 8 provides the method of Example 2, which further includes: Optionally, determining the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the total state difference amount corresponding to the plurality of reference compensation times includes: determining a first total number of target motion states included in the first motion set and the second motion set and a second total number of target motion states at the same time; determining candidate compensation times from the plurality of reference compensation times based on the first total number and the second total number; and determining the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the total state difference amount corresponding to the plurality of candidate compensation times.
[0133] According to one or more embodiments of this disclosure, Example 9 provides the method of Example 1, which further includes: optionally, the first motion information includes first pose information; the step of determining the first motion set based on the first motion information includes: determining the target motion state of the target object at the first time point based on the first pose information of the target object at a plurality of consecutive first time points, and constructing the first motion set based on the plurality of first time points and the target motion state corresponding to the first time point.
[0134] According to one or more embodiments of this disclosure, Example 10 provides the method of Example 1, which further includes: optionally, the target object includes a target robot; the first acquisition module includes a motion capture module disposed on the target robot; and the second acquisition module includes a motion capture module independent of the target robot.
[0135] According to one or more embodiments of this disclosure, [Example 11] provides a time processing apparatus, including: a first motion set acquisition module, configured to acquire first motion information of a target object collected by a first acquisition module at multiple first time points within a preset time period, and determine a first motion set based on the first motion information; wherein the first motion set is used to record the target motion state of the target object at multiple first time points; a second motion set acquisition module, configured to acquire second motion information of the target object collected by a second acquisition module at multiple second time points within a preset time period, and determine a second motion set based on the second motion information; wherein the second motion set is used to record the target motion state of the target object at multiple second time points; and a time synchronization information determination module, configured to determine time synchronization information corresponding to the first acquisition module and the second acquisition module based on the first motion set and the second motion set.
[0136] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.
[0137] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0138] The aforementioned computer-readable medium carries one or more programs. When the electronic device executes the aforementioned one or more programs, the electronic device causes the following to occur: acquire first motion information of a target object acquired by a first acquisition module at multiple first time points within a preset time period, and determine a first motion set based on the first motion information; wherein the first motion set is used to record the target motion state of the target object at multiple first time points; acquire second motion information of the target object acquired by a second acquisition module at multiple second time points within a preset time period, and determine a second motion set based on the second motion information; wherein the second motion set is used to record the target motion state of the target object at multiple second time points; and determine time synchronization information corresponding to the first acquisition module and the second acquisition module based on the first motion set and the second motion set.
[0139] Computer program code for performing the operations of this disclosure can be written in one or more programming languages or a combination thereof, including but not limited to object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0140] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0141] The units described in the embodiments of this disclosure can be implemented in software or in hardware. The names of modules, submodules, or units do not necessarily limit the module, submodule, or unit itself. For example, the first motion set acquisition module can also be described as "a module for acquiring a first motion set corresponding to the first motion information acquired by the first acquisition module."
[0142] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0143] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0144] The above description is merely a preferred embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features disclosed in this disclosure that have similar functions.
[0145] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in a sequential order. In certain environments, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of this disclosure. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.
[0146] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.
Claims
1. A time processing method, characterized in that, include: The first acquisition module acquires first motion information of the target object at multiple first time points within a preset time period, and determines a first motion set based on the first motion information; wherein, the first motion set is used to record the target motion state of the target object at multiple first time points; The second motion information of the target object collected by the second acquisition module at multiple second time points within a preset time period is obtained, and a second motion set is determined based on the second motion information; wherein, the second motion set is used to record the target motion state of the target object at multiple second time points; The time synchronization information corresponding to the first acquisition module and the second acquisition module is determined based on the first motion set and the second motion set.
2. The time processing method according to claim 1, characterized in that, The step of determining the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the first motion set and the second motion set includes: Based on the target motion state in the first motion set and the second motion set, determine multiple reference compensation times corresponding to the first acquisition module and the second acquisition module; Determine the total state difference between multiple target motion states in the first motion set and the second motion set at each reference compensation time; The time synchronization information corresponding to the first acquisition module and the second acquisition module is determined based on the total state difference corresponding to multiple reference compensation times.
3. The time processing method according to claim 2, characterized in that, The step of determining multiple reference compensation times corresponding to the first acquisition module and the second acquisition module based on the target motion state in the first motion set and the second motion set includes: Based on the change information of the target motion state of the target object, determine the first target state among the multiple target motion states of the first motion set and the second target state among the multiple target motion states of the second motion set; Multiple reference compensation times are determined based on the first time point corresponding to the first target state and the second time point corresponding to the second target state.
4. The time processing method according to claim 3, characterized in that, The target motion state includes a first motion state and a second motion state; determining the first target state among multiple target motion states in the first motion set based on the change information of the target motion state of the target object includes: For a single target motion state in the first motion set, if the target motion state is the first motion state and the target motion state at the previous first time point is the second motion state, the target motion state is determined as the first target state; and / or, For a single target motion state in the first motion set, if the target motion state is the second motion state and the target motion state at the first time point preceding the target motion state is the first motion state, the target motion state is determined as the first target state.
5. The time processing method according to claim 3, characterized in that, The step of determining multiple reference compensation times based on the first time point corresponding to the first target state and the second time point corresponding to the second target state includes: The first time point corresponding to each first target state and the second time point corresponding to each second target state are subtracted under a preset timing method to obtain multiple reference compensation times.
6. The time processing method according to claim 2, characterized in that, The step of determining the total state difference between multiple target motion states in the first motion set and the second motion set at each reference compensation time includes: For each of the reference compensation times, time compensation is performed on the first time point or the second time point according to the reference compensation time; Based on the compensated first or second time point, determine the two target motion states corresponding to the same time from the first motion set and the second motion set; The total state difference corresponding to the reference compensation time is determined based on the two target motion states corresponding to the same time.
7. The time processing method according to claim 6, characterized in that, The step of determining the total state difference corresponding to the reference compensation time based on two target motion states corresponding to the same time includes: The instantaneous state difference is determined based on the target motion state corresponding to the first time point and the second time point at the same time, and the total state difference corresponding to the reference compensation time is determined based on the instantaneous state difference at multiple times at the same time.
8. The time processing method according to claim 2, characterized in that, The step of determining the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the total state difference corresponding to multiple reference compensation times includes: Determine a first total number of the target motion states included in the first motion set and the second motion set, and a second total number of the target motion states at the same time. Based on the first total number and the second total number, determine a candidate compensation time from a plurality of reference compensation times. The time synchronization information corresponding to the first acquisition module and the second acquisition module is determined based on the total state difference corresponding to the multiple candidate compensation times.
9. The time processing method according to claim 1, characterized in that, The first motion information includes first pose information; determining the first motion set based on the first motion information includes: The target motion state of the target object at the first time point is determined based on the first pose information of the target object at multiple consecutive first time points, and a first motion set is constructed based on the multiple first time points and the target motion state corresponding to the first time point.
10. The time processing method according to claim 1, characterized in that, The target object includes a target robot; the first acquisition module includes a motion capture module disposed on the target robot; the second acquisition module includes a motion capture module independent of the target robot.
11. A time processing device, characterized in that, include: The first motion set acquisition module is used to acquire the first motion information of the target object collected by the first acquisition module at multiple first time points within a preset time period, and determine the first motion set based on the first motion information; wherein, the first motion set is used to record the target motion state of the target object at multiple first time points; The second motion set acquisition module is used to acquire the second motion information of the target object collected by the second acquisition module at multiple second time points within a preset time period, and to determine the second motion set based on the second motion information; wherein, the second motion set is used to record the target motion state of the target object at multiple second time points; The time synchronization information determination module is used to determine the time synchronization information corresponding to the first acquisition module and the second acquisition module based on the first motion set and the second motion set.
12. An electronic device, characterized in that, The electronic device includes: One or more processors; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the time processing method as described in any one of claims 1-10.
13. A storage medium containing computer-executable instructions, characterized in that, The computer-executable instructions, when executed by a computer processor, are used to perform the time processing method as described in any one of claims 1-10.
14. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the time processing method as described in any one of claims 1-10.