CN114063703A - Data synchronization method and device, data processing equipment and storage medium - Google Patents

Data synchronization method and device, data processing equipment and storage medium Download PDF

Info

Publication number
CN114063703A
CN114063703A CN202111188273.XA CN202111188273A CN114063703A CN 114063703 A CN114063703 A CN 114063703A CN 202111188273 A CN202111188273 A CN 202111188273A CN 114063703 A CN114063703 A CN 114063703A
Authority
CN
China
Prior art keywords
data
synchronized
sensor
devices
time parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111188273.XA
Other languages
Chinese (zh)
Inventor
李红华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orbbec Inc
Original Assignee
Orbbec Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Orbbec Inc filed Critical Orbbec Inc
Priority to CN202111188273.XA priority Critical patent/CN114063703A/en
Publication of CN114063703A publication Critical patent/CN114063703A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/14Time supervision arrangements, e.g. real time clock
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/251Fusion techniques of input or preprocessed data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10048Infrared image

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

The application is applicable to the field of data processing, and provides a data synchronization method, a data synchronization device, data processing equipment and a storage medium. The data synchronization method specifically comprises the following steps: acquiring data to be synchronized sent by a plurality of devices to be synchronized respectively, and acquiring a time parameter of each data to be synchronized; acquiring a time parameter mapping relation between each piece of data to be synchronized; and performing data synchronization on the data to be synchronized respectively sent by the multiple devices to be synchronized based on the time parameter mapping relation and the time parameter of each data to be synchronized. The embodiment of the application can avoid the problem of inaccurate data synchronization caused by different clock sources of different devices.

Description

Data synchronization method and device, data processing equipment and storage medium
Technical Field
The present application belongs to the field of data processing, and in particular, to a data synchronization method, apparatus, data processing device, and storage medium.
Background
Data synchronization refers to aligning data acquired by different devices in time so that the data processing device can analyze the data acquired by different devices at the same time conveniently.
At present, data synchronization among multiple devices generally adopts a mode that one device sends a synchronization signal to other devices, so that each device collects data at the same time. However, in practical applications, different devices often use respective clock sources, which results in that each device asynchronously performs data acquisition, data cannot be accurately synchronized, and accuracy of the data processing device is reduced when performing subsequent data fusion or data analysis.
Disclosure of Invention
Embodiments of the present application provide a data synchronization method, an apparatus, a data processing device, and a storage medium, which can avoid the problem of inaccurate data synchronization caused by different clock sources of different devices.
A first aspect of an embodiment of the present application provides a data synchronization method, including:
acquiring data to be synchronized sent by a plurality of devices to be synchronized respectively, and acquiring a time parameter of each data to be synchronized;
acquiring a time parameter mapping relation between each piece of data to be synchronized;
and performing data synchronization on the data to be synchronized respectively sent by the multiple devices to be synchronized based on the time parameter mapping relation and the time parameter of each data to be synchronized.
A second aspect of the embodiments of the present application provides a data synchronization apparatus, including:
the device comprises a first acquisition unit, a second acquisition unit and a synchronization unit, wherein the first acquisition unit is used for acquiring data to be synchronized which are respectively sent by a plurality of devices to be synchronized and acquiring a time parameter of each data to be synchronized;
the second acquisition unit is used for acquiring a time parameter mapping relation between each piece of data to be synchronized;
and the data synchronization unit is used for carrying out data synchronization on the data to be synchronized which are respectively sent by the plurality of devices to be synchronized based on the time parameter mapping relation and the time parameter of each data to be synchronized.
A third aspect of the embodiments of the present application provides a data processing apparatus, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor implements the steps of the above method when executing the computer program.
A fourth aspect of the embodiments of the present application provides a computer-readable storage medium, which stores a computer program, and when the computer program is executed by a processor, the computer program implements the steps of the above method.
A fifth aspect of embodiments of the present application provides a computer program product, which when run on a data processing apparatus causes the data processing apparatus to perform the steps of the method.
In the embodiment of the application, the data to be synchronized sent by the multiple devices to be synchronized respectively, the time parameter of each data to be synchronized, and the time parameter mapping relationship between each data to be synchronized are obtained, so that the data to be synchronized sent by the multiple devices to be synchronized respectively are subjected to data synchronization based on the time parameter mapping relationship and the time parameter of each data to be synchronized, the data to be synchronized can be aligned by using the time parameter mapping relationship, the problem of data synchronization inaccuracy caused by different clock sources of different devices is avoided, and the result accuracy of subsequent data fusion or data analysis is higher.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the embodiments or the prior art descriptions will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
Fig. 1 is a schematic flow chart illustrating an implementation of a data synchronization method according to an embodiment of the present application;
FIG. 2 is a schematic diagram of interaction between a device to be synchronized and a data processing device according to an embodiment of the present application;
fig. 3 is a schematic diagram of a specific implementation flow for acquiring a time parameter of each to-be-synchronized data according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a data synchronization apparatus according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of a data processing device according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application. All other embodiments, which can be derived by a person skilled in the art from the embodiments of the present application without making any creative effort, shall be protected by the present application.
Data synchronization refers to aligning data acquired by different devices in time so that the data processing device can analyze the data acquired by different devices at the same time conveniently.
At present, data synchronization among multiple devices generally adopts a mode that one device sends a synchronization signal to other devices, so that each device collects data at the same time. However, in practical applications, different devices often use respective clock sources, which results in that each device asynchronously performs data acquisition, data cannot be accurately synchronized, and accuracy of the data processing device is reduced when performing subsequent data fusion or data analysis.
In order to explain the technical means of the present application, the following description will be given by way of specific examples.
Fig. 1 shows a schematic implementation flow diagram of a data synchronization method provided in an embodiment of the present application, where the method may be applied to a data processing device, and the data processing device may be a device for performing data fusion or data analysis, and may also be any device for acquiring data. The method can be suitable for the situation that the accuracy of data synchronization needs to be improved.
Specifically, the data synchronization method may include the following steps S101 to S103.
Step S101, acquiring data to be synchronized sent by a plurality of devices to be synchronized respectively, and acquiring a time parameter of each data to be synchronized.
The device to be synchronized may be a device for data acquisition. The data to be synchronized is data acquired by each device to be synchronized. In some embodiments of the present application, the data to be synchronized may refer to sensor data, i.e., data collected by sensors of the device to be synchronized.
It should be noted that, the number of the devices to be synchronized and the type of the data collected by each device to be synchronized are not limited in the present application.
In practical application, a worker can set a specific number of devices to be synchronized according to requirements, and configure different sensors for each device to be synchronized, so that each device to be synchronized acquires corresponding sensor data and transmits the sensor data to the data processing device. Each device to be synchronized includes a single sensor or a plurality of sensors, for example, the number of devices to be synchronized may be two, where a first device to be synchronized may include an Infrared (IR) camera, an RGB camera, and a depth camera, and the acquired data to be synchronized includes an IR image, an RGB image, and a depth image. The second device to be synchronized may include an RGB camera and a lidar, and the acquired data to be synchronized includes an RGB image and point cloud data. The process of synchronization includes that each frame of sensor data collected by multiple sensors in a single device needs to be synchronized, and each frame of sensor data output by multiple devices to a data processing device needs to be synchronized. Further, the data processing device may perform fusion or data analysis with multiple sensor data of multiple same frames.
In some embodiments of the present application, the data processing device may actively send a data acquisition command to each device to be synchronized, and trigger each device to be synchronized to perform data acquisition, so that each device to be synchronized feeds back acquired data to be synchronized to the data processing device according to the data acquisition command. In further embodiments of the present application, the data processing device may also passively receive data to be synchronized that is periodically uploaded by the device to be synchronized.
In order to synchronize data to be synchronized, which are respectively sent by a plurality of devices to be synchronized, in an embodiment of the present application, the data processing device further needs to obtain a time parameter of each data to be synchronized.
The time parameter of the data to be synchronized can represent the timestamp of the data to be synchronized acquired by the equipment to be synchronized. In some embodiments of the present application, the device to be synchronized may acquire time parameters of the data to be synchronized while acquiring the data to be synchronized, and combine each data to be synchronized and the corresponding time parameter into a data frame to be sent to the data processing device.
Step S102, acquiring a time parameter mapping relation between each piece of data to be synchronized.
The time parameter mapping relationship is used for representing a difference between a time parameter of a certain data to be synchronized and a time parameter of another data to be synchronized, that is, representing a time difference between times of acquiring different data to be synchronized.
In an embodiment of the application, the data processing device may determine a time parameter mapping relationship between each piece of data to be synchronized based on a time parameter of each piece of data to be synchronized; the time parameter mapping relationship among the multiple devices can also be obtained by pre-detecting the multiple devices to be synchronized, and the time parameter mapping relationship among each data to be synchronized is obtained based on the time parameter mapping relationship among the multiple devices.
Step S103, data synchronization is carried out on the data to be synchronized sent by the multiple devices to be synchronized respectively based on the time parameter mapping relation and the time parameter of each data to be synchronized.
In an embodiment of the application, based on the time parameter mapping relationship and the time parameter of each piece of data to be synchronized, the data processing device may calculate a relative relationship between the time parameters of other pieces of data to be synchronized and the time parameter of the piece of data to be synchronized, with the time parameter of a piece of data to be synchronized as a reference, and further determine the piece of data to be synchronized acquired at the same time, thereby implementing data synchronization on the pieces of data to be synchronized, which are respectively sent by the pieces of data to be synchronized.
In the embodiment of the application, the data to be synchronized sent by the multiple devices to be synchronized respectively, the time parameter of each data to be synchronized, and the time parameter mapping relationship between each data to be synchronized are obtained, so that the data to be synchronized sent by the multiple devices to be synchronized respectively are subjected to data synchronization based on the time parameter mapping relationship and the time parameter of each data to be synchronized, the data to be synchronized can be aligned by using the time parameter mapping relationship, the problem of data synchronization inaccuracy caused by different clock sources of different devices is avoided, and the result accuracy of subsequent data fusion or data analysis is higher.
In some embodiments of the present application, the plurality of devices to be synchronized may include a master device and a slave device, the data processing device may select any one of the plurality of devices to be synchronized as the master device according to an actual situation, and the other devices to be synchronized except the master device are referred to as slave devices.
Through interaction with the master device, the data processing device can control acquisition of sensor data in the master device, and meanwhile, the master device controls the sensors of other slave devices to acquire the sensor data.
Specifically, the obtaining of the data to be synchronized sent by the multiple devices to be synchronized respectively may specifically include: and sending a data acquisition command to the multiple devices to be synchronized, and receiving sensor data respectively sent by the multiple devices to be synchronized.
The data acquisition command is used for indicating the master device to acquire and send sensor data of the master device to the data processing device, indicating the slave device to acquire and send sensor data of the master device and the slave device to the data processing device, and indicating the master device to send trigger signals to the sensor of the master device and the sensor of the slave device.
The Trigger (Trigger) signal is used to instruct the sensor of the master device to acquire sensor data of the master device, and instruct the sensor of the slave device to acquire sensor data of the slave device. In some embodiments of the present application, the master device may send the Trigger signal to each sensor of the master device and the slave device at a preset sending frequency.
Specifically, fig. 2 shows an interaction diagram between a device to be synchronized and a data processing device provided by the present application. Each device to be synchronized comprises a System On Chip (SOC) processor for processing data and at least one sensor for acquiring data; the data processing apparatus may include an Application Processor (MAP); the data processing equipment is used for sending a command to each device to be synchronized, receiving data transmitted by each device to be synchronized and processing the data, and the SOC processor in each device to be synchronized is used for receiving the command to trigger the sensor to acquire the data and receiving the corresponding sensor data. Each device to be synchronized may be connected to the data processing device through a Universal Serial Bus (USB) Interface, a Mobile Industry Processor Interface (MIPI), or another Interface.
In some embodiments of the present application, the data processing device may send a data acquisition command to a plurality of devices to be synchronized. The master device generates Trigger signals after receiving the data acquisition command, and then sends the Trigger signals to each sensor of the master device and each sensor of the slave device at a preset sending frequency. And after each sensor receives the Trigger signal, immediately acquiring sensor data and sending the sensor data to corresponding equipment to be synchronized. Therefore, the frequency of the sensor data can be consistent with the sending frequency of the Trigger signal.
In some embodiments of the present application, if a target device in a plurality of devices to be synchronized includes a plurality of sensors, the plurality of sensors of the target device will acquire sensor data when receiving a trigger signal. The target device refers to a device which comprises a plurality of sensors in a plurality of devices to be synchronized.
Accordingly, the data processing device may receive sensor data respectively collected by a plurality of sensors transmitted by the target device. Based on this, the data processing device may receive sensor data collected by different sensors from the same device to be synchronized. Meanwhile, the time points of the trigger signals received by the sensors of the same device to be synchronized are basically the same, so that the time points of the sensor data generated by the sensors of the same device to be synchronized are almost synchronized.
Further, as shown in fig. 2, a common counter may be further included in addition to the data processing device and the device to be synchronized, and the counter may be configured to update a real-time count value of the counter according to a transmission frequency of the trigger signal.
Specifically, the master device may send the Trigger signal to the counter at the same sending frequency, and at this time, the Trigger signal may be used as a Trigger source of the counter. And after the counter receives a Trigger signal, the real-time count value is increased by 1. Therefore, the update frequency of the counter can be kept consistent with the sending frequency of the Trigger signal.
At this time, as shown in fig. 3, the above-mentioned obtaining of the time parameter of each data to be synchronized may include the following steps S301 to S302.
Step S301, acquiring a real-time count value of a counter when a sensor of each device to be synchronized in a plurality of devices to be synchronized acquires sensor data.
Specifically, each device to be synchronized may generate an interrupt signal when acquiring the respective sensor data, where the interrupt signal is used to instruct the device to be synchronized, which acquires the sensor data, to acquire the real-time count value of the counter.
At this time, each device to be synchronized may combine the real-time count value as a timestamp with the acquired sensor data to generate a data frame including the timestamp, and transmit the data frame including the timestamp to the data processing device.
It should be noted that, if a certain device to be synchronized includes a plurality of sensors, the device to be synchronized may obtain real-time count values corresponding to sensor data acquired by different sensors respectively.
Step S302, taking the real-time counting value of the counter when the sensor data is collected as the time parameter of the sensor data.
In some embodiments of the present application, the data processing device may acquire real-time count values corresponding to the sensor data respectively transmitted by the plurality of devices to be synchronized, and use the real-time count values of the counter when the sensor data is acquired as the time parameter of the sensor data. Because the real-time count value can represent the acquisition moment of this sensor data, also can represent that sensor data is gathered when sending Trigger signal the several times, consequently, regard real-time count value as the timestamp, data processing equipment can carry out data synchronization based on the timestamp.
Specifically, in some embodiments of the present application, the time parameter mapping relationship may refer to a count value of a real-time count value corresponding to each sensor data. Correspondingly, the data processing device may perform data synchronization on the data to be synchronized respectively sent by the multiple devices to be synchronized based on the count value of each real-time count value and the real-time count value corresponding to each sensor data.
More specifically, the data processing device may combine sensor data corresponding to real-time count values having the same count value size into a data set acquired at the same time, that is, combine different sensor data of the same timestamp into a synchronous data structure. Therefore, in practical applications, when a frame loss occurs in a certain sensor, that is, the sensor does not transmit sensor data to the SOC processor in a current frame, if a conventional method of stamping a timestamp on each sensor is used to determine synchronous data, because there is a difference between times of arrival of each sensor data at the SOC processor, the data processing device may synchronize the sensor data of a next frame with other data to be synchronized as the sensor data of the current frame, which may cause synchronization misalignment. In the scheme, even if frame loss occurs, the data processing equipment only causes the condition that data is lack in a certain data set and the whole synchronous data is not staggered even if the frame loss occurs because the data processing equipment takes the size of the counting value as a judgment basis.
In the embodiment of the application, data synchronization is carried out through the real-time counting value of the counter, data synchronization is not needed according to clock sources of different devices, and the problem of inaccurate data synchronization caused by different clock sources of different devices can be solved. Meanwhile, the real-time counting value is updated according to the sending frequency of the Trigger signal, and the data processing equipment can align the data of each sensor to a time axis formed by the sending time of the Trigger signal, so that the data processing equipment can complete data synchronization only by comparing the counting value of the real-time counting value without performing complicated judgment and calculation, and the efficiency of data synchronization is improved while the precision of data synchronization is ensured.
In other embodiments of the present application, the time parameter may also be a system time of the device to be synchronized, which acquires the data to be synchronized. Correspondingly, the time parameter mapping relationship may also be a system time difference between a plurality of devices to be synchronized.
Specifically, before performing data synchronization, the data processing device may respectively read a current system timestamp of each device to be synchronized, and calculate a system time difference between the multiple devices to be synchronized based on the current system timestamp of each device to be synchronized.
Then, the data processing device may perform data synchronization on the data to be synchronized respectively sent by the multiple devices to be synchronized based on the system time difference and the system time corresponding to each data to be synchronized.
The method for acquiring the data to be synchronized can refer to the foregoing description, which is not repeated herein.
In some embodiments of the application, the data processing device may use the system time corresponding to a certain sensor data as a reference, align the system times corresponding to other sensor data to the reference by using the system time difference, and then determine the sensor data acquired at the same time through the aligned system time, thereby implementing data synchronization on the data to be synchronized respectively sent by the multiple devices to be synchronized.
It should be noted that, for simplicity of description, the foregoing method embodiments are described as a series of acts or combination of acts, but those skilled in the art will recognize that the present application is not limited by the order of acts, as some steps may, in accordance with the present application, occur in other orders.
Fig. 4 is a schematic structural diagram of a data synchronization apparatus 400 according to an embodiment of the present disclosure, where the data synchronization apparatus 400 is configured on a data processing device.
Specifically, the data synchronization apparatus 400 may include:
a first obtaining unit 401, configured to obtain data to be synchronized sent by multiple devices to be synchronized respectively, and obtain a time parameter of each of the data to be synchronized;
a second obtaining unit 402, configured to obtain a time parameter mapping relationship between each of the data to be synchronized;
a data synchronization unit 403, configured to perform data synchronization on the data to be synchronized respectively sent by the multiple devices to be synchronized, based on the time parameter mapping relationship and the time parameter of each piece of data to be synchronized.
In some embodiments of the present application, the plurality of devices to be synchronized may include a master device and a slave device, and the data to be synchronized is sensor data; correspondingly, the first obtaining unit 401 may specifically be configured to: sending a data acquisition command to the plurality of devices to be synchronized, wherein the data acquisition command is used for instructing the master device to acquire and send sensor data of the master device to the data processing device, instructing the slave device to acquire and send sensor data of the slave device to the data processing device, and instructing a processor of the master device to send trigger signals to a sensor of the master device and a sensor of the slave device, and the trigger signals are used for instructing the sensor of the master device to acquire the sensor data of the master device and instructing the sensor of the slave device to acquire the sensor data of the slave device; and receiving sensor data respectively transmitted by the plurality of devices to be synchronized.
In some embodiments of the present application, the first obtaining unit 401 may specifically be configured to: acquiring a real-time count value of a counter when a sensor of each device to be synchronized in the plurality of devices to be synchronized acquires the sensor data, wherein the counter is used for updating the real-time count value of the counter according to the sending frequency of the trigger signal; and taking the real-time count value of the counter when the sensor data is acquired as the time parameter of the sensor data.
In some embodiments of the present application, the time parameter mapping relationship may be a count value of a real-time count value corresponding to each sensor data; accordingly, the data synchronization unit 403 may be specifically configured to: and performing data synchronization on the data to be synchronized sent by the multiple devices to be synchronized respectively based on the size of the count value and the real-time count value corresponding to each sensor data.
In some embodiments of the present application, the multiple devices to be synchronized may generate an interrupt signal when acquiring respective sensor data, where the interrupt signal may be used to instruct the devices to be synchronized, which acquire the sensor data, to acquire a real-time count value of the counter; correspondingly, the first obtaining unit 401 may specifically be configured to: and acquiring real-time count values which are respectively sent by the plurality of devices to be synchronized and correspond to the sensor data.
In some embodiments of the present application, the target device in the multiple devices to be synchronized may include multiple sensors, and each sensor in the multiple sensors acquires sensor data when receiving a trigger signal; correspondingly, the first obtaining unit 401 may specifically be configured to: and receiving sensor data respectively collected by the plurality of sensors and transmitted by the target equipment.
In some embodiments of the present application, the time parameter is a system time of a device to be synchronized, where the device to be synchronized acquires data to be synchronized; the time parameter mapping relation is a system time difference among a plurality of devices to be synchronized; the data synchronization unit 403 may be specifically configured to: and performing data synchronization on the data to be synchronized sent by the multiple devices to be synchronized respectively based on the system time difference and the system time corresponding to each data to be synchronized.
It should be noted that, for convenience and simplicity of description, the specific working process of the data synchronization apparatus 400 may refer to the corresponding process of the method described in fig. 1 to fig. 3, and is not described herein again.
Fig. 5 is a schematic diagram of a data processing apparatus according to an embodiment of the present application. The data processing device 5 may include: a processor 50, a memory 51 and a computer program 52, such as a data synchronization program, stored in said memory 51 and operable on said processor 50. The processor 50, when executing the computer program 52, implements the steps in the above-described embodiments of the data synchronization method, such as the steps S101 to S103 shown in fig. 1. Alternatively, the processor 50 executes the computer program 52 to implement the functions of the modules/units in the device embodiments, such as the first acquiring unit 401, the second acquiring unit 402 and the data synchronizing unit 403 shown in fig. 4.
The computer program may be divided into one or more modules/units, which are stored in the memory 51 and executed by the processor 50 to accomplish the present application. The one or more modules/units may be a series of computer program instruction segments capable of performing certain functions, which are used to describe the execution of the computer program in the data processing device.
For example, the computer program may be divided into: the device comprises a first acquisition unit, a second acquisition unit and a data synchronization unit. The specific functions of each unit are as follows: the device comprises a first acquisition unit, a second acquisition unit and a synchronization unit, wherein the first acquisition unit is used for acquiring data to be synchronized which are respectively sent by a plurality of devices to be synchronized and acquiring a time parameter of each data to be synchronized; the second acquisition unit is used for acquiring a time parameter mapping relation between each piece of data to be synchronized; and the data synchronization unit is used for carrying out data synchronization on the data to be synchronized which are respectively sent by the plurality of devices to be synchronized based on the time parameter mapping relation and the time parameter of each data to be synchronized.
The data processing device may include, but is not limited to, a processor 50, a memory 51. Those skilled in the art will appreciate that fig. 5 is merely an example of a data processing device and is not limiting of a data processing device, and may include more or fewer components than shown, or some components may be combined, or different components, e.g., the data processing device may also include input output devices, network access devices, buses, etc.
The Processor 50 may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory 51 may be an internal storage unit of the data processing device, such as a hard disk or a memory of the data processing device. The memory 51 may also be an external storage device of the data processing apparatus, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like, provided on the data processing apparatus. Further, the memory 51 may also include both an internal storage unit and an external storage device of the data processing device. The memory 51 is used for storing the computer programs and other programs and data required by the data processing device. The memory 51 may also be used to temporarily store data that has been output or is to be output.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-mentioned functions. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the system may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to the related descriptions of other embodiments for parts that are not described or illustrated in a certain embodiment.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus/data processing device and method may be implemented in other ways. For example, the above-described apparatus/data processing device embodiments are merely illustrative, and for example, the division of the modules or units is only one logical division, and there may be other divisions when actually implemented, for example, multiple units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated modules/units, if implemented in the form of software functional units and sold or used as separate products, may be stored in a computer readable storage medium. Based on such understanding, all or part of the flow in the method of the embodiments described above can be realized by a computer program, which can be stored in a computer-readable storage medium and can realize the steps of the embodiments of the methods described above when the computer program is executed by a processor. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, usb disk, removable hard disk, magnetic disk, optical disk, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution medium, and the like. It should be noted that the computer readable medium may contain content that is subject to appropriate increase or decrease as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer readable media does not include electrical carrier signals and telecommunications signals as is required by legislation and patent practice.
The above-mentioned embodiments are only used for illustrating the technical solutions of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present application and are intended to be included within the scope of the present application.

Claims (10)

1. A method of data synchronization, comprising:
acquiring data to be synchronized sent by a plurality of devices to be synchronized respectively, and acquiring a time parameter of each data to be synchronized;
acquiring a time parameter mapping relation between each piece of data to be synchronized;
and performing data synchronization on the data to be synchronized respectively sent by the multiple devices to be synchronized based on the time parameter mapping relation and the time parameter of each data to be synchronized.
2. The data synchronization method according to claim 1, wherein the data synchronization method is applied to a data processing device, the plurality of devices to be synchronized include a master device and a slave device, and the data to be synchronized is sensor data;
the acquiring data to be synchronized sent by a plurality of devices to be synchronized respectively comprises:
the data processing equipment sends data acquisition commands to the plurality of equipment to be synchronized, the data acquisition commands are used for instructing the master equipment to acquire and send sensor data of the master equipment to the data processing equipment, instructing the slave equipment to acquire and send sensor data of the slave equipment to the data processing equipment, and
instructing a processor of the master device to send a trigger signal to a sensor of the master device and a sensor of the slave device, wherein the trigger signal is used for instructing the sensor of the master device to acquire sensor data of the master device and instructing the sensor of the slave device to acquire sensor data of the slave device;
the data processing device receives sensor data respectively transmitted by the plurality of devices to be synchronized.
3. The data synchronization method according to claim 2, wherein the obtaining of the time parameter of each of the data to be synchronized comprises:
acquiring a real-time count value of a counter when a sensor of each device to be synchronized in the plurality of devices to be synchronized acquires the sensor data, wherein the counter is used for updating the real-time count value of the counter according to the sending frequency of the trigger signal;
and taking the real-time count value of the counter when the sensor data is acquired as the time parameter of the sensor data.
4. The data synchronization method according to claim 3, wherein the time parameter mapping relationship is a count value of a real-time count value corresponding to each of the sensor data;
the data synchronization of the data to be synchronized sent by the multiple devices to be synchronized respectively based on the time parameter mapping relationship and the time parameter of each data to be synchronized includes:
and performing data synchronization on the data to be synchronized sent by the multiple devices to be synchronized respectively based on the size of the count value and the real-time count value corresponding to each sensor data.
5. The data synchronization method according to claim 3, wherein the plurality of devices to be synchronized generate an interrupt signal when acquiring respective sensor data, and the interrupt signal is used for instructing the devices to be synchronized, which acquire the sensor data, to acquire a real-time count value of the counter;
the acquiring a real-time count value of a counter when a sensor of each device to be synchronized in the plurality of devices to be synchronized acquires the sensor data includes:
and acquiring real-time count values which are respectively sent by the plurality of devices to be synchronized and correspond to the sensor data.
6. The data synchronization method according to any one of claims 2 to 5, wherein the target device of the plurality of devices to be synchronized comprises a plurality of sensors, and each sensor of the plurality of sensors collects sensor data when receiving the trigger signal;
in the step of receiving sensor data respectively transmitted by the plurality of devices to be synchronized, receiving the sensor data transmitted by the target device includes:
and receiving sensor data respectively collected by the plurality of sensors and transmitted by the target equipment.
7. The data synchronization method according to claim 1 or 2, wherein the time parameter is a system time of the device to be synchronized, which acquires the data to be synchronized; the time parameter mapping relation is the system time difference among the multiple devices to be synchronized;
the data synchronization of the data to be synchronized sent by the multiple devices to be synchronized respectively based on the time parameter mapping relationship and the time parameter of each data to be synchronized includes:
and performing data synchronization on the data to be synchronized sent by the multiple devices to be synchronized respectively based on the system time difference and the system time corresponding to each data to be synchronized.
8. A data synchronization apparatus, comprising:
the device comprises a first acquisition unit, a second acquisition unit and a synchronization unit, wherein the first acquisition unit is used for acquiring data to be synchronized which are respectively sent by a plurality of devices to be synchronized and acquiring a time parameter of each data to be synchronized;
the second acquisition unit is used for acquiring a time parameter mapping relation between each piece of data to be synchronized;
and the data synchronization unit is used for carrying out data synchronization on the data to be synchronized which are respectively sent by the plurality of devices to be synchronized based on the time parameter mapping relation and the time parameter of each data to be synchronized.
9. A data processing device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that the steps of the method according to any of claims 1 to 7 are implemented when the computer program is executed by the processor.
10. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 7.
CN202111188273.XA 2021-10-12 2021-10-12 Data synchronization method and device, data processing equipment and storage medium Pending CN114063703A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111188273.XA CN114063703A (en) 2021-10-12 2021-10-12 Data synchronization method and device, data processing equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111188273.XA CN114063703A (en) 2021-10-12 2021-10-12 Data synchronization method and device, data processing equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114063703A true CN114063703A (en) 2022-02-18

Family

ID=80234324

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111188273.XA Pending CN114063703A (en) 2021-10-12 2021-10-12 Data synchronization method and device, data processing equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114063703A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115442520A (en) * 2022-08-05 2022-12-06 珠海普罗米修斯视觉技术有限公司 Image shooting method, image processing method and shooting system
CN116339201A (en) * 2023-03-17 2023-06-27 上海智引信息科技有限公司 Data collaborative collection method, device, system and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180198545A1 (en) * 2017-01-10 2018-07-12 Infineon Technologies Ag Synchronization mechanism for high speed sensor interface
CN109905194A (en) * 2019-02-21 2019-06-18 初速度(苏州)科技有限公司 A kind of vehicle-mounted terminal system and synchronization data obtaining method, device
CN110493744A (en) * 2019-08-20 2019-11-22 郑州大学 A kind of synchronous data sampling method and system of master-slave radio sensor
CN111368172A (en) * 2020-02-28 2020-07-03 深圳市通用互联科技有限责任公司 Sensor data processing method and device, computer equipment and storage medium
US10809760B1 (en) * 2018-10-29 2020-10-20 Facebook, Inc. Headset clock synchronization
CN111983948A (en) * 2020-07-07 2020-11-24 宝能(广州)汽车研究院有限公司 Multi-sensor data synchronization method and equipment thereof
CN112865902A (en) * 2020-12-24 2021-05-28 深兰人工智能(深圳)有限公司 Data acquisition and time synchronization method and device, electronic equipment and storage medium
CN113311905A (en) * 2020-02-26 2021-08-27 初速度(苏州)科技有限公司 Data processing system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180198545A1 (en) * 2017-01-10 2018-07-12 Infineon Technologies Ag Synchronization mechanism for high speed sensor interface
US10809760B1 (en) * 2018-10-29 2020-10-20 Facebook, Inc. Headset clock synchronization
CN109905194A (en) * 2019-02-21 2019-06-18 初速度(苏州)科技有限公司 A kind of vehicle-mounted terminal system and synchronization data obtaining method, device
CN110493744A (en) * 2019-08-20 2019-11-22 郑州大学 A kind of synchronous data sampling method and system of master-slave radio sensor
CN113311905A (en) * 2020-02-26 2021-08-27 初速度(苏州)科技有限公司 Data processing system
CN111368172A (en) * 2020-02-28 2020-07-03 深圳市通用互联科技有限责任公司 Sensor data processing method and device, computer equipment and storage medium
CN111983948A (en) * 2020-07-07 2020-11-24 宝能(广州)汽车研究院有限公司 Multi-sensor data synchronization method and equipment thereof
CN112865902A (en) * 2020-12-24 2021-05-28 深兰人工智能(深圳)有限公司 Data acquisition and time synchronization method and device, electronic equipment and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王晶;罗丹;: "基于LXI总线的数据采集系统数据同步方法研究", 电子测试, no. 08 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115442520A (en) * 2022-08-05 2022-12-06 珠海普罗米修斯视觉技术有限公司 Image shooting method, image processing method and shooting system
CN116339201A (en) * 2023-03-17 2023-06-27 上海智引信息科技有限公司 Data collaborative collection method, device, system and storage medium
CN116339201B (en) * 2023-03-17 2024-04-19 上海智引信息科技有限公司 Data collaborative collection method, device, system and storage medium

Similar Documents

Publication Publication Date Title
CN114063703A (en) Data synchronization method and device, data processing equipment and storage medium
US20180003822A1 (en) Environmental sensing device and information acquiring method applied to environmental sensing device
CN111585682B (en) Sensor time synchronization method and device and terminal equipment
EP3432463B1 (en) Motor control system, motor control device, program and recording medium
CN103199980B (en) Synchronisation control means, Apparatus and system
CN101815177B (en) Synchronous displaying device, synchronous displaying method and superposition splice displaying system
CN107014381B (en) PLD, DSP, integrated navigation system, data processing method and device
US20120185212A1 (en) Method and system for preparing sensor output data of a sensor assembly for further processing in at least one application and/or by at least one algorithm
CN107948515A (en) A kind of camera synchronous method and device, binocular camera
CN107798039B (en) Data synchronization method and device
US20230066703A1 (en) Method for estimating structural vibration in real time
CN112633749A (en) Staff working time counting method, system and medium based on face recognition
CN111130674B (en) Synchronous signal acquisition method for automobile electronic control unit, electronic equipment, server and storage medium
CN108601080B (en) Time synchronization signal transmission method and device based on wireless communication
CN111679714B (en) Cross-chip signal synchronization method and device and chip
US9882705B2 (en) Communication apparatus, communication method, and computer readable medium using propagation delay for time synchronization
CN112511259A (en) Intelligent terminal clock management method and device, storage medium and terminal equipment
CN109660310B (en) Clock synchronization method and device, computing equipment and computer storage medium
CN114006672B (en) Vehicle-mounted multi-sensor data synchronous acquisition method and system
CN110572234A (en) Method for realizing clock synchronization based on serial port, intelligent terminal and storage medium
CN108737001B (en) Data processing method and related equipment
CN115866154A (en) Time delay measuring method, device and system of vehicle-mounted multi-camera system and automobile
CN104360639A (en) VME user-defined bus-based real-time synchronous grating ruler data reading method for multiple motion control cards
CN115102453A (en) Position control system and method
EP3696626B1 (en) Communication system, communication method, and program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination