Data processing method, system, tracking device and storage medium

By deploying clustering algorithms and filters on tracking devices, the problem of large data transmission and high computational volume of miniaturized wireless tracking devices is solved, and efficient marking point center determination and data transmission are achieved to meet the needs of miniaturized and lightweight systems.

CN120147678BActive Publication Date: 2025-07-29ZHEJIANG UNIV +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510605608.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-05-12
Publication Date
2025-07-29
Estimated Expiration
2045-05-12

AI Technical Summary

Technical Problem

The tracking equipment of the miniaturized and lightweight wireless tracking scanning system cannot determine the center of the marking point in the image data, resulting in large data transmission and high PC computing. The existing improved methods are high in power consumption and large equipment size, so they cannot adapt to the miniaturized and lightweight system.

Method used

Deploy clustering algorithms and filters on the tracking device, cluster by acquiring the connected domain of the image, reduce the amount of data transmission, and use electronic devices to analyze and update the clustering algorithm parameters to predict the center of the marking point, avoiding the transmission of miscellaneous and invalid points.

Benefits of technology

It reduces the amount of data transmission and calculation, improves the identification accuracy and tracking efficiency of scanning equipment, reduces equipment costs, and is adapted to a miniaturized and lightweight system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120147678B_ABST
    Figure CN120147678B_ABST
Patent Text Reader

Abstract

The present application provides a data processing method, system, tracking device, and storage medium. The method includes: obtaining a plurality of first connected components of a first image at a first moment; clustering the plurality of first connected components based on a preset clustering algorithm to obtain a first clustering result; sending a first target cluster to an electronic device and receiving first cluster information fed back by the electronic device; updating parameters of the clustering algorithm based on the first cluster information; clustering second connected components of a second image collected at a second moment by using the updated clustering algorithm to obtain a second clustering result; predicting a second target cluster in the second clustering result based on the first cluster information and a preset filter; and sending a landmark sub-image corresponding to the second target cluster to the electronic device. The above method can reduce the data transmission volume of the tracking device and improve the processing efficiency of scanned data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of three-dimensional scanning, and particularly to a data processing method, system, tracking device, and storage medium. Background Art

[0002] Due to the limitations of the miniaturized, lightweight wireless tracking scanning system in terms of power consumption, volume, and heat dissipation capacity, its tracking device cannot determine the center of the landmark point in the image data. The tracking device needs to transmit the image data to the computer (Personal Computer, PC) side, and the PC side analyzes the image data to determine the center of the landmark point. The image data transmitted by the tracking device usually contains a large number of invalid points and noise points, increasing the data transmission volume and the computing amount of the PC side.

[0003] To solve the above problems, the tracking device calculates the center of the landmark point locally, reducing the amount of data transmitted to the PC side and improving the scanning frame rate. However, limited by the low-power and lightweight design, the tracking device cannot deploy a high-computing power processor. At present, the template matching algorithm deployed in the tracking device is not sensitive enough to the scale and rotation changes of the target, and cannot ensure the calculation accuracy of the center of the landmark point. In addition, to solve the problem that the tracking device cannot deploy a high-computing power processor, the commonly used method is to improve the hardware structure of the tracking device. Such improvement methods have high power consumption and large device volume, and cannot be adapted to the miniaturized, lightweight wireless tracking scanning system. Summary of the Invention

[0004] Embodiments of this application disclose a data processing method, system, tracking device, and storage medium, which solve the technical problems of large data transmission volume during the interaction between the tracking device and the PC side and high computing power on the PC side.

[0005] The present application provides a data processing method, which is applied to a tracking device. The method includes: obtaining a plurality of first connected components of a first image at a first moment, where the first image is an image generated by the tracking device collecting a fiducial point of a scanning device, and the plurality of first connected components are determined based on pixel points corresponding to the fiducial point on the first image; clustering the plurality of first connected components based on a preset clustering algorithm to obtain a first clustering result, where the first clustering result includes a first target cluster; sending the first target cluster to an electronic device and receiving first cluster information fed back by the electronic device, where the first cluster information is generated by the electronic device after analyzing the first target cluster; updating parameters of the clustering algorithm based on the first cluster information; clustering second connected components of a second image collected at a second moment later than the first moment by using the updated clustering algorithm to obtain a second clustering result; predicting a second target cluster in the second clustering result based on the first cluster information and a preset filter; and sending a sub-image of the fiducial point corresponding to the second target cluster to the electronic device.

[0006] In some embodiments of the present application, clustering the plurality of first connected components based on a preset clustering algorithm to obtain a first clustering result includes: dividing a plurality of candidate clusters based on pixel positions of each first connected component in the first image; and determining the first target cluster from the plurality of candidate clusters based on the number of first connected components in each candidate cluster and the relative relationship between the first connected components in each candidate cluster.

[0007] In some embodiments of the present application, based on pixel positions of each first connected component in the first image, a plurality of candidate clusters are divided by using one or more of the following methods, including: determining a first target domain based on the acquisition order of each first connected component; taking first connected components located within a neighborhood of the first target domain as a second target domain, dividing the first target domain and the second target domain into the same candidate cluster, and setting the same cluster number for the first target domain and the second target domain; taking first connected components not within a neighborhood of any first connected component as a third target domain, dividing the third target domain into other candidate clusters, and setting a corresponding cluster number for the third target domain; taking first connected components located within neighborhoods of a plurality of first connected components as a fourth target domain, dividing the fourth target domain and the plurality of first connected components into the same candidate cluster, and updating the cluster numbers corresponding to the plurality of first connected components, setting the same cluster number for the fourth target domain and the plurality of first connected components; where the cluster numbers corresponding to each candidate cluster are all different.

[0008] In some embodiments of the present application, predicting the second target cluster in the second clustering result based on the first cluster information and a preset filter includes: determining a state vector, an observation vector, a first state estimation matrix, and a first mean square error matrix corresponding to the first image based on the first cluster information; predicting a second state estimation matrix corresponding to the second image based on the first state estimation matrix and a preset state transition matrix; predicting a second mean square error matrix corresponding to the second image based on the first mean square error matrix, the state transition matrix, and a process noise covariance matrix; determining a Kalman gain matrix based on the second mean square error matrix, an observation matrix, and a measurement noise covariance matrix; determining a state update matrix based on the second state estimation matrix, the Kalman gain matrix, the observation vector, and the observation matrix; and determining the second target cluster from multiple clusters in the second clustering result based on the state update matrix.

[0009] In some embodiments of the present application, the method further includes: determining a third mean square error matrix based on the Kalman gain matrix, the observation matrix, and the second mean square error matrix, where the third mean square error matrix is used to update the mean square error matrix corresponding to the image collected at the third moment.

[0010] In some embodiments of the present application, updating the parameters of the clustering algorithm based on the first cluster information includes: updating a neighborhood radius based on the depth information in the first cluster information, where the neighborhood radius is used to determine the neighborhood range of the clustering algorithm.

[0011] In some embodiments of the present application, after sending the landmark sub - graph corresponding to the second target cluster to the electronic device, the method further includes: receiving second cluster information generated after the electronic device analyzes the second target cluster; updating the parameters of the clustering algorithm based on the second cluster information; clustering the third connected region of the third image at the third moment using the updated clustering algorithm to obtain a third clustering result, where the third moment is later than the second moment; predicting a third target cluster in the third clustering result based on the second cluster information and the filter; and sending the landmark sub - graph corresponding to the third target cluster to the electronic device.

[0012] An embodiment of the present application further provides a data processing system. The data processing system includes: a tracking device, configured to obtain a plurality of first connected components of a first image at a first moment, where the first image is an image generated by the tracking device collecting a fiducial point of a scanning device, and the plurality of first connected components are determined based on pixel points corresponding to the fiducial point on the first image; clustering the plurality of first connected components based on a preset clustering algorithm to obtain a first clustering result, where the first clustering result includes a first target cluster; sending the first target cluster to an electronic device; the electronic device is configured to receive the first target cluster, analyze the first target cluster to obtain first cluster information; send the first cluster information to the tracking device; the tracking device is further configured to receive the first cluster information fed back by the electronic device; update parameters of the clustering algorithm based on the first cluster information; cluster second connected components of a second image collected at a second moment using the updated clustering algorithm to obtain a second clustering result, where the second moment is later than the first moment; predict a second target cluster in the second clustering result based on the first cluster information and a preset filter; send a sub-image of the fiducial point corresponding to the second target cluster to the electronic device.

[0013] The present application also provides a tracking device. The tracking device includes a processor and a memory. When the processor executes a computer program stored in the memory, the data processing method described above is implemented.

[0014] The present application also provides a computer-readable storage medium. A computer program is stored on the computer-readable storage medium. When the computer program is executed by a processor, the data processing method described above is implemented.

[0015] In the data processing method provided by the present application, by obtaining a plurality of first connected components of a first image at a first moment, pixel points corresponding to a plurality of fiducial points can be aggregated in one area, which can reduce the data complexity and calculation amount to a certain extent. Clustering the plurality of first connected components based on a preset clustering algorithm and sending the first target cluster in the first clustering result to an electronic device enables the electronic device to analyze the first target cluster to obtain first cluster information. By using the first cluster information analyzed by the electronic device, the tracking device can obtain the first cluster information of the first target cluster without deploying a high-computing-power processor. The tracking device updates the parameters of the clustering algorithm based on the first cluster information to improve the clustering accuracy of the clustering algorithm. On the basis of updating the parameters of the clustering algorithm, a second target cluster in the second clustering result obtained based on the updated clustering algorithm is predicted using a filter, and a sub-image of the fiducial point corresponding to the second target cluster is sent to the electronic device. It can avoid the tracking device from transmitting noise points and invalid points to the electronic device, improving the computing efficiency of the electronic device and the data transmission efficiency of the tracking device. It can improve the recognition accuracy and tracking efficiency of the scanning device to a certain extent. Brief Description of the Drawings

[0016] Figure 1 It is a schematic structural diagram of a data processing system provided by an embodiment of the present application.

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

[0018] Figure 3 It is a schematic diagram of a first connected region provided by an embodiment of the present application.

[0019] Figure 4 It is a schematic diagram of a first connected region provided by another embodiment of the present application.

[0020] Figure 5 It is a schematic diagram of a first clustering result provided by an embodiment of the present application. Detailed Description of the Embodiments

[0021] For ease of understanding, some explanations of concepts related to the embodiments of the present application are exemplarily given for reference.

[0022] It should be noted that in the present application, "at least one" means one or more, and "a plurality" means two or more than two. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B may represent: A exists alone, A and B exist simultaneously, and B exists alone, where A and B may be singular or plural. The terms "first", "second", "third", "fourth", etc. (if any) in the specification, claims and drawings of the present application are used to distinguish similar objects, rather than to describe a specific order or sequence.

[0023] Due to the limitations of the miniaturized and lightweight wireless tracking scanning system in terms of power consumption, volume and heat dissipation capacity, its tracking device cannot determine the center of the landmark point in the image data. The tracking device needs to transmit the image data to the computer (Personal Computer, PC) side, and analyze the image data through the PC side to determine the center of the landmark point. The image data transmitted by the tracking device usually has a large number of invalid points and noise points, increasing the data transmission volume and the computational amount of the PC side.

[0024] In the related art, the tracking device reduces the amount of data transmitted to the PC side and improves the scanning frame rate by calculating the center of the fiducial point locally. However, limited by the low-power and lightweight design, the tracking device cannot deploy a high-computing-power processor. At present, the template matching algorithm deployed in the tracking device is not very sensitive to the scale and rotation changes of the target, and cannot ensure the calculation accuracy of the center of the fiducial point. In addition, to solve the problem that the tracking device cannot deploy a high-computing-power processor, the commonly adopted method is to improve the hardware structure of the tracking device. Such improvement methods have high power consumption and large device volume, and cannot be adapted to the miniaturized and lightweight wireless tracking scanning system.

[0025] To solve the above problems, the embodiments of the present application propose a data processing method, system, tracking device, and storage medium. In the embodiments of the present application, by deploying a clustering algorithm and a filter on the tracking device, it is possible to reduce the problem of a large amount of data transmission during the interaction between the tracking device and the PC side without deploying a high-computing-power processor on the tracking device, and it can also ensure that the transmission of key data (such as the connected domain corresponding to the fiducial point of the scanning device) is not missed. In addition, since the amount of data transmitted is small, the computing efficiency of the electronic device side can also be improved. First, the structure of the data processing system of the present application will be described below.

[0026] Figure 1 is a schematic structural diagram of the data processing system provided by the embodiments of the present application. As Figure 1 shown, the data processing system includes a tracking device 10, an electronic device 20, and a scanning device 30. Among them, the embodiments of the present application do not limit the number of the tracking device 10 and the scanning device 30. In addition, the tracking device 10 and the scanning device 30 can be two independently operating devices that can achieve communication connection, or can be two sub-devices belonging to the same device (for example, a tracking scanner). They can operate in cooperation after being assembled, or can operate independently after being disassembled. The present application does not limit the device form, operation mode, etc. of the tracking device 10 and the scanning device 30.

[0027] The tracking device 10 includes a photographing device 110, a Field-Programmable Gate Array (FPGA) 120, and a System-on-Chip (SOC) 130.

[0028] The imaging device 110 can be one or more. For example, the imaging device 110 can be a binocular camera, or multiple cameras in a binocular camera. The present application does not limit the form of the imaging device 110 on the tracking device 10. The imaging device 110 is used to record the pose of the scanning device 30 and capture images of the device frame points of the scanning device 30. If the object to be measured is pasted with fiducial points, the imaging device 110 can also capture images of the fiducial points of the object to be measured, and the tracking device 10 will send the images of the device frame points or fiducial points to the electronic device 20.

[0029] The FPGA 120 is used to process the images collected by the imaging device 110, and a clustering algorithm and a filter are deployed in the embodiments of the present application.

[0030] The SOC 130 is used to coordinate the data transmission between the FPGA 120 and the electronic device 20. It can run an operating system and a communication protocol stack, and send data accurately and stably to the electronic device 20 through interfaces such as Ethernet.

[0031] The electronic device 20 can be a device with communication functions such as a laptop computer, a tablet computer, a server, a Programmable Logic Controller (PLC), and a Human-Machine Interface (HMI) with touch input function, or it can be a virtual machine or a device simulated through an emulator. The electronic device 20 is used to receive the data sent by the tracking device 10 and the scanning device 30, and calculate the data.

[0032] The scanning device 30 can include a scanning head, and there are multiple fiducial points on the scanning head. The fiducial points are also called reflective identification points / reflective fiducial points (Marker). The scanning device 30 can scan objects of various shapes and materials, and can also be used to locate and calibrate the pose and movement of the scanning head during the scanning process to ensure the scanning effect. The number of scanning heads in a scanning device 30 can be one or more, and the present application does not limit the number of scanning heads.

[0033] In some embodiments of the present application, the tracking device 10 collects relevant data of the scanning device 30 through the imaging device 110, processes the relevant data through the built-in example algorithm and filter, and then transmits it to the electronic device 20. The electronic device 20 sends the result after analyzing the transmitted data to the tracking device 10, so that the tracking device 10 can reduce the data transmission volume based on the result fed back by the electronic device 20 in the case of ensuring that the transmitted data contains key data.

[0034] The illustration Figure 1This is only an example of a data processing system and does not constitute a limitation on the data processing system. It may include more or fewer components than those shown in the figure, or combine certain components, or have different components. In one example, the data processing system may further include input / output devices, network access devices, and power supplies, etc. In another example, the electronic device 20 in the data processing system can interact with multiple tracking devices 10 simultaneously, and the multiple tracking devices 10 can also track multiple scanning devices 30. The embodiments of the present application do not limit the number of tracking devices 10 and scanning devices 30 in the data processing system.

[0035] Figure 2 is a flowchart of the data processing method provided by the embodiments of the present application, which is applied to a tracking device (such as Figure 1 tracking device 10). According to different requirements, the order of steps in this flowchart can be changed, and some steps can be omitted.

[0036] Step S201: Obtain multiple first connected components of the first image at the first moment.

[0037] In some embodiments of the present application, the first moment may be the moment when the tracking device acquires the first image through the photographing device. According to the connected regions generated by aggregating multiple pixel points on the image, the connected components can be determined. For example, Figure 3 each white dot (the region corresponding to a pixel value of 255 pixels (Pixel)) shown in the figure is taken as a connected component. In the embodiments of the present application, during the process of acquiring the first image, the fiducial points on the tracking and scanning device generate the first image. At least one pixel point corresponding to each fiducial point is formed on the first image. In the case where each fiducial point in the first image is not associated, the region where at least one pixel point corresponding to each fiducial point is located is recorded as a first connected component. For example, Figure 3 a white dot shown in the figure is a first connected component, which is aggregated based on at least one pixel point of the fiducial point on the first image.

[0038] In addition, during the scanning process of the tracker, other fiducial points, reflective noise points, etc. in the camera frame may also be collected. Such collected points generally refer to non-target markers or interferences that may be accidentally collected within the range of the camera sensor (i.e., the imaging area) except for the target tracking points. Such points may increase the data transmission volume of the tracking device and increase the computing pressure on the electronic device.

[0039] Step S202: Cluster the multiple first connected components based on a preset clustering algorithm to obtain a first clustering result.

[0040] In some embodiments of the present application, the clustering algorithm may be one or more of the Density-Based Spatial Clustering of Applications with Noise (DBSCAN) algorithm, the Ordering Points To Identify the Clustering Structure (OPTICS) algorithm, the Hierarchical Density-Based Spatial Clustering and Applications with Noise (HDBSCAN) algorithm, and the Density-Based Clustering (DENCLUE) algorithm. Taking the DBSCAN clustering algorithm as an example, the process of clustering multiple first connected regions to obtain a first clustering result is described below.

[0041] In some embodiments of the present application, during the process of the tracking device collecting the first image, the pixel positions of the first connected region in the first image are obtained. Since the first connected region is aggregated based on multiple pixel points, the pixel positions can be calculated based on the edge features of the first connected region. Specifically, the coordinates of the key features are selected from the coordinates of the edge features of the first connected region, and the centroid coordinates calculated based on the coordinates of the key features are used as the pixel positions of the first connected region. Taking the calculation of the pixel positions of one first connected region as an example. As Figure 4 shown, the coordinates of the edge features of the first connected region are obtained, and the coordinates of the key features are selected (such as Figure 4 the coordinates corresponding to points a1, a2, a3, and a4 in

[0042] After determining the pixel positions, multiple candidate clusters can be divided based on the pixel positions. Among them, each candidate cluster is a set of multiple density-connected data points (pixel points), and the density of the points in the candidate cluster is greater than a preset density threshold. The candidate clusters with a density less than the preset density threshold are called noise points or boundary points. Specifically, the division of multiple candidate clusters can be performed in one or more of the following ways: Determine the first target domain based on the acquisition order of each first connected component. For example, the first acquired connected component can be called the first target domain. Determine the neighborhood range of the first target domain based on a preset neighborhood radius. Based on this neighborhood range, the first connected component located within the neighborhood of the first target domain is used as the second target domain. And the first target domain and the second target domain are divided into the same candidate cluster. In one example, assuming that the cluster number 1 is set for the first target domain, after determining the existence of the second target domain, the same cluster number can be set for the candidate cluster where the first target domain and the second target domain are located, such as cluster number 1 or other unused cluster numbers.

[0043] The first connected component that is not within the neighborhood of any first connected component is used as the third target domain, and the third target domain is divided into other candidate clusters, and a corresponding cluster number is set for the third target domain, and this cluster number is an unused cluster number.

[0044] The first connected component that is located within the neighborhoods of multiple first connected components is used as the fourth target domain, and the fourth target domain and the multiple first connected components are divided into the same candidate cluster. Update the cluster numbers corresponding to the multiple first connected components, and set the same cluster number for the fourth target domain and the multiple first connected components. In one example, a candidate cluster A includes the first target domain and the second target domain, and the corresponding cluster number is 1. A candidate cluster B includes the third target domain, and the corresponding cluster number is 3. If there is a fourth target domain that belongs to both the neighborhood of the first target domain or the second target domain and the neighborhood of the third target domain, then the first target domain, the second target domain, the third target domain, and the fourth target domain are divided into the same candidate cluster. Then the cluster number of this candidate cluster can be 1, or 3, or other unused cluster numbers. Among them, the cluster numbers of each candidate cluster are different and can be randomly set without overlap, and this application does not limit this.

[0045] In some embodiments of this application, after dividing multiple candidate clusters, since each cluster is a set of multiple connected data points, the density of the data points in the cluster is greater than a preset density threshold. The clusters with a density less than the preset density threshold are called noise points or boundary points. In the embodiments of this application, in order to simplify the process of the clustering algorithm, all points are regarded as core points or boundary points during the division of candidate clusters. Among them, a core point refers to a point with no less than a preset number of points within the neighborhood radius; a boundary point refers to a point with less than a preset number of points within the neighborhood radius and located within the neighborhood of a core point; a noise point can be a point that belongs neither to a core point nor to a boundary point.

[0046] Based on the above simplified process, corresponding cluster numbers may also be assigned to noise points. To reduce the amount of data transmission between the tracking device and the electronic device, the tracking device may determine a first target cluster from multiple candidate clusters based on the number of first connected regions in each candidate cluster and the relative relationship between the first connected regions in each candidate cluster. Specifically, candidate clusters with the number of first connected regions less than a preset number are deleted. Based on the relative relationship between the first connected regions in each candidate cluster, the distribution of the first connected regions is determined. If the distribution of the first connected regions does not meet the preset distribution, the candidate clusters that do not meet the preset distribution are deleted. In one example, the preset distribution is an elliptical distribution, and candidate clusters that do not belong to the elliptical distribution are deleted. The following will be combined with Figure 5 Describe the first clustering result.

[0047] As Figure 5 shown, 7 candidate clusters are divided, and the corresponding cluster numbers include: Cluster 1 to Cluster 7. Assume that the preset number is 5, then Cluster 2, Cluster 3, Cluster 4, Cluster 6, and Cluster 7 can be filtered out based on the preset number. Since the distribution of the first connected regions of Cluster 5 does not belong to the elliptical distribution, Cluster 5 can be filtered out. Therefore, among the multiple candidate clusters as Figure 5 shown, Cluster 1 can be used as the first target cluster. As Figure 5 shown is only an example. In the actual application process, there may be multiple first target clusters. The number of first target clusters is subject to actual screening.

[0048] Step S203: Send the first target cluster to the electronic device and receive the first cluster information fed back by the electronic device.

[0049] In some embodiments of the present application, after determining the first target cluster, the tracking device may send the first target cluster to the electronic device through the SOC. In the electronic device, target parameters may be pre-deployed, and the target parameters may be the spherical rack characteristic parameters corresponding to the scanning head of the scanning device. After receiving the first target cluster, the electronic device compares the characteristic parameters corresponding to the first target cluster with the target parameters, so as to perform secondary screening on the first target cluster by using the electronic device. After comparison, the first target cluster that matches the target parameters successfully is determined, and the first cluster information corresponding to the first target cluster is generated. The first cluster information may include the pixel position of the first target cluster, the cluster number of the first target cluster, depth information, etc.

[0050] The tracking device receives the first cluster information fed back by the electronic device to complete the positioning and locking of the first target cluster.

[0051] Step S204: Update the parameters of the clustering algorithm based on the first cluster information.

[0052] In some embodiments of the present application, the clustering algorithm depends on the neighborhood radius and neighborhood range during the process of dividing clusters. To further improve the accuracy of the clustering algorithm, the neighborhood radius can be updated based on the depth information in the first cluster information, and the updated clustering algorithm is obtained. The updated clustering algorithm is determined based on the first image collected at the first moment, and the updated clustering algorithm can be used to analyze the second image collected at the second moment.

[0053] Step S205: Cluster the second connected components of the second image collected at the second moment by using the updated clustering algorithm to obtain a second clustering result.

[0054] In some embodiments of the present application, multiple second connected components corresponding to the second image collected at the second moment are obtained, and the updated clustering algorithm is used to cluster the multiple second connected components to obtain a second clustering result. Among them, the generation method of the second clustering result is the same as that of the first clustering result. Refer to step S202 and will not be elaborated here again.

[0055] Step S206: Predict the second target cluster in the second clustering result based on the first cluster information and a preset filter.

[0056] In some embodiments of the present application, the filter can be a Kalman Filter. The Kalman Filter is an optimal recursive estimation algorithm that real-time estimates state variables (such as position) by fusing a prediction model and actual observation data. The Kalman Filter includes a state prediction model and an observation model.

[0057] Determine the state model and observation model of the Kalman Filter based on the first cluster information. Among them, the state model is expressed by the following formula:

[0058] ;

[0059] In the formula, represents the state vector corresponding to the second image; represents the state vector corresponding to the first image, determined based on the first cluster information; u and v represent the pixel coordinates of the scanning head marker points in the image plane; represents the pixel movement speed; represents the state transition matrix; T represents the exposure period of the shooting device; B represents the control input matrix; the state noise The covariance matrix of is indicating the influence degree of the noise during the state transition process; represents the control input. When there is no external control input, u[n - 1] = 0.

[0060] The observation model is expressed by the following formula:

[0061] ;

[0062] Wherein, represents the observation vector; represents the observation matrix; v n ~ N (0, ) represents the measurement noise covariance matrix, v n covariance , representing the influence of noise in the observation process.

[0063] After determining the state model and the observation model, based on the first cluster of information, obtain the first state estimation matrix and the first mean square error matrix of the first image. Based on the prediction stage of the Kalman filter, based on the first state estimation matrix and the preset state transition matrix, predict the second state estimation matrix corresponding to the second image, which is expressed by the formula as follows:

[0064] ;

[0065] Wherein, represents the second state estimation matrix; represents the state transition matrix; represents the first state estimation matrix.

[0066] Based on the first mean square error matrix, the state transition matrix and the process noise covariance matrix, predict the second mean square error matrix corresponding to the second image, which is expressed by the formula as follows:

[0067] ;

[0068] Wherein, represents the second mean square error matrix; represents the first mean square error matrix; represents the process noise covariance matrix.

[0069] Based on the second mean square error matrix, the observation matrix and the measurement noise covariance matrix, determine the Kalman gain matrix, which is expressed by the formula as follows:

[0070] ;

[0071] Wherein, represents the Kalman gain matrix; R represents the measurement noise covariance matrix.

[0072] Based on the update stage of the Kalman filter, based on the second state estimation matrix, the Kalman gain matrix, the observation vector and the observation matrix, determine the state update matrix, which is expressed by the formula as follows:

[0073] ​​ ;

[0074] In the formula, represents the state update matrix.

[0075] After determining the state update matrix, the second target cluster can be determined from multiple clusters of the second clustering result according to the position indicated by the state update matrix.

[0076] In other embodiments of the present application, in the update stage, the third mean square error matrix of the second image is predicted through the Kalman gain matrix, the observation matrix, and the second mean square error matrix, which is expressed by the formula as follows:

[0077] ;

[0078] In the formula, represents the third mean square error matrix.

[0079] Step S207: Send the sub - map of the landmark points corresponding to the second target cluster to the electronic device.

[0080] In some embodiments of the present application, after the tracking device determines the second target cluster, it sends the sub - map of the landmark points corresponding to the second target cluster to the electronic device. By sending the sub - map of the landmark points corresponding to the second target cluster to the electronic device, the data transmission volume of the tracker can be reduced, and the computing amount of the electronic device can be decreased.

[0081] In other embodiments of the present application, after sending the sub - map of the landmark points corresponding to the second target cluster to the electronic device, the tracking device receives the second cluster information generated after the electronic device analyzes the second target cluster. Based on the second cluster information, the parameters of the clustering algorithm are updated. The tracking device acquires a third image at the third moment. The tracking device updates the parameters of the clustering algorithm based on the second cluster information, and uses the updated clustering algorithm to cluster the third connected domain of the third image to obtain a third clustering result. Based on the second cluster information and the filter, the third target cluster in the third clustering result is predicted, and the sub - map of the landmark points corresponding to the third target cluster is sent to the electronic device. In the embodiments of the present application, by using the cluster information fed back by the electronic device, image windowing can be realized, and the data transmission volume of the tracking device can be reduced.

[0082] Through the above embodiments, by obtaining multiple first connected components of the first image at the first moment, the pixel points corresponding to multiple fiducial points can be aggregated in one area, which can reduce the data complexity and calculation amount to a certain extent. Based on a preset clustering algorithm, the multiple first connected components are clustered, and the first target cluster in the first clustering result is sent to the electronic device, so that the electronic device can analyze the first target cluster to obtain the first cluster information. By using the first cluster information analyzed by the electronic device, the tracking device can obtain the first cluster information of the first target cluster without deploying a high-computing-power processor. The tracking device updates the parameters of the clustering algorithm based on the first cluster information to improve the clustering accuracy of the clustering algorithm. On the basis of updating the parameters of the clustering algorithm, a filter is used to predict the second target cluster in the second clustering result obtained based on the updated clustering algorithm, and the fiducial point sub-image corresponding to the second target cluster is sent to the electronic device. This can avoid the tracking device from transmitting noise points and invalid points to the electronic device, improving the computing efficiency of the electronic device and the data transmission efficiency of the tracking device. To a certain extent, it can improve the recognition accuracy and tracking efficiency of the scanning device.

[0083] In addition, the tracking device can implement image windowing for the nth frame image based on the cluster information corresponding to the (n - 1)th frame fed back by the electronic device. The tracking device reduces the data transmission volume during the transmission process and can ensure that the transmitted data is key data (such as the fiducial point sub-image corresponding to the fiducial points of the scanning head). In addition, the tracking device does not need to deploy sensors with high computing power, reducing the device cost and improving the data processing efficiency.

[0084] An embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored. The computer program includes program instructions, and the method implemented when the program instructions are executed can refer to the methods in the above various embodiments of the present application.

[0085] Among them, the computer-readable storage medium may be the internal memory of the electronic device described in the above embodiments, such as the hard disk or memory of the electronic device. The computer-readable storage medium may also be an external storage device of the electronic device, such as a plug-in hard disk equipped on the electronic device, a Smart Media Card (SMC), a Secure Digital (SD) card, a Flash Card, etc.

[0086] In some embodiments, the computer-readable storage medium may include a storage program area and a storage data area. Among them, the storage program area may store an operating system, application programs required for at least one function, etc.; the storage data area may store data created according to the use of the electronic device.

[0087] In the above embodiments, the descriptions of the various embodiments have their own focuses. For the parts not described in detail or recorded in a certain embodiment, reference may be made to the relevant descriptions of other embodiments.

[0088] Those of ordinary skill in the art will realize that the units and algorithm steps of the examples described in combination with the embodiments disclosed herein can be implemented by electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are executed in hardware or software depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of this application.

[0089] In the embodiments provided in this application, it should be understood that the disclosed device / terminal device and method can be implemented in other ways. For example, the device / terminal device embodiments described above are merely illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed couplings or direct couplings or communication connections to each other can be through some interfaces. The indirect couplings or communication connections of the device or unit can be in electrical, mechanical or other forms.

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

[0091] The above embodiments are only used to illustrate the technical solutions of this application, rather than to limit them; although this application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements for some of the technical features; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A data processing method, applied to a tracking device, characterized in that The method includes: Obtaining a plurality of first connected components of a first image at a first moment, where the first image is an image generated by the tracking device collecting a fiducial point of the scanning device, and the plurality of first connected components are determined based on pixel points corresponding to the fiducial point on the first image; Clustering the plurality of first connected components based on a preset clustering algorithm to obtain a first clustering result, where the first clustering result includes a first target cluster; Sending the first target cluster to the electronic device and receiving first cluster information fed back by the electronic device, where the first cluster information is generated by the electronic device after analyzing the first target cluster; Updating parameters of the clustering algorithm based on the first cluster information; Clustering second connected components of a second image collected at a second moment later than the first moment by using the updated clustering algorithm to obtain a second clustering result; Predicting a second target cluster in the second clustering result based on the first cluster information and a preset filter; Sending a sub-image of the fiducial point corresponding to the second target cluster to the electronic device.

2. The data processing method according to claim 1, wherein The clustering the plurality of first connected components based on a preset clustering algorithm to obtain a first clustering result includes: Dividing a plurality of candidate clusters based on pixel positions of each first connected component in the first image; Determining the first target cluster from the plurality of candidate clusters based on the number of first connected components in each candidate cluster and the relative relationship between the first connected components in each candidate cluster.

3. The data processing method according to claim 2, wherein Dividing a plurality of candidate clusters based on pixel positions of each first connected component in the first image by using one or more of the following methods, including: Determining a first target domain based on the acquisition order of each first connected component; Regarding first connected components located within the neighborhood of the first target domain as a second target domain, dividing the first target domain and the second target domain into the same candidate cluster, and setting the same cluster number for the first target domain and the second target domain; Regarding first connected components not within the neighborhood of any first connected component as a third target domain, dividing the third target domain into other candidate clusters, and setting a corresponding cluster number for the third target domain; Regarding first connected components located within the neighborhood of a plurality of first connected components as a fourth target domain, dividing the fourth target domain and the plurality of first connected components into the same candidate cluster, and updating the cluster numbers corresponding to the plurality of first connected components, and setting the same cluster number for the fourth target domain and the plurality of first connected components; Wherein, the cluster numbers corresponding to each candidate cluster are all different.

4. The data processing method according to claim 1, wherein The predicting a second target cluster in the second clustering result based on the first cluster information and a preset filter includes: Determining a state vector, an observation vector, a first state estimation matrix, and a first mean square error matrix corresponding to the first image based on the first cluster information; Predicting a second state estimation matrix corresponding to the second image based on the first state estimation matrix and a preset state transition matrix; Predicting a second mean square error matrix corresponding to the second image based on the first mean square error matrix, the state transition matrix, and a process noise covariance matrix; Determine a Kalman gain matrix based on the second mean square error matrix, the observation matrix, and the measurement noise covariance matrix; Determine a state update matrix based on the second state estimation matrix, the Kalman gain matrix, the observation vector, and the observation matrix; Determine the second target cluster from multiple clusters of the second clustering result based on the state update matrix; 5. The data processing method according to claim 4, wherein The method further includes: Determine a third mean square error matrix based on the Kalman gain matrix, the observation matrix, and the second mean square error matrix, where the third mean square error matrix is used to update the mean square error matrix corresponding to the image acquired at the third moment; 6. The data processing method according to claim 1, wherein The updating the parameters of the clustering algorithm based on the first cluster information includes: Update the neighborhood radius based on the depth information in the first cluster information, where the neighborhood radius is used to determine the neighborhood range of the clustering algorithm; 7. The data processing method according to claim 1, wherein After sending the sub - graph of the landmark points corresponding to the second target cluster to the electronic device, the method further includes: Receive second cluster information generated after the electronic device analyzes the second target cluster; Update the parameters of the clustering algorithm based on the second cluster information; Cluster the third connected regions of the third image at the third moment using the updated clustering algorithm to obtain a third clustering result, where the third moment is later than the second moment; Predict the third target cluster in the third clustering result based on the second cluster information and the filter; Send the sub - graph of the landmark points corresponding to the third target cluster to the electronic device.

8. A data processing system, characterized in that, The data processing system includes: A tracking device, configured to obtain multiple first connected regions of a first image at a first moment, where the first image is an image acquired by the tracking device by scanning the landmark points of a scanning device, and the multiple first connected regions are determined based on the pixel points corresponding to the landmark points on the first image; cluster the multiple first connected regions using a preset clustering algorithm to obtain a first clustering result, where the first clustering result includes a first target cluster; send the first target cluster to an electronic device; An electronic device, configured to receive the first target cluster, and analyze the first target cluster to obtain first cluster information; send the first cluster information to the tracking device; The tracking device is further configured to receive the first cluster information fed back by the electronic device; update the parameters of the clustering algorithm based on the first cluster information; cluster the second connected regions of a second image acquired at a second moment using the updated clustering algorithm to obtain a second clustering result, where the second moment is later than the first moment; predict the second target cluster in the second clustering result based on the first cluster information and a preset filter; send the sub - graph of the landmark points corresponding to the second target cluster to the electronic device.

9. A tracking device, characterized in that, The tracking device includes a processor and a memory, the memory stores a computer program, and the processor implements the data processing method according to any one of claims 1 to 7 when executing the computer program.

10. A computer-readable storage medium, characterized in that, The computer - readable storage medium stores at least one instruction, and when the at least one instruction is executed by a processor, the data processing method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Human motion capture method

    CN103198492A

  • Helmet pose tracking system and method for IMU-assisted visual feature point capture

    CN115690910A