Object motion trail extraction method and device, computer equipment and medium
In multi-object tracking detection, the trajectory points of the target object are accurately screened out by using the trajectory endpoints and target screening area methods, solving the problems of trajectory points interruption and interleaving, and achieving efficient and accurate trajectory extraction.
Patent Information
- Application Number
- CN202510814233.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-18
- Publication Date
- 2025-07-18
- Estimated Expiration
- 2045-06-18
AI Technical Summary
The prior art cannot accurately and effectively extract the trajectories of each target object in multi-object tracking detection, especially in the case of limited equipment capabilities or special scenarios, when the trajectory points are interrupted and interlaced, traditional methods cannot be effectively correlated.
By obtaining the sampling time of multiple track points, determining the track endpoint as the query point, filtering out the next track point belonging to the target object based on the sampling time relationship of the track points in the target filter area, and determining the moving trajectory of the target object iteratively.
The effective and accurate extraction of the target object trajectory is achieved, the calculation amount is reduced, real-time is improved, and the problems of trajectory points are solved.
Smart Images

Figure CN120336362A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of target tracking and detection, and specifically to a method, device, computer device and medium for extracting the movement trajectory of an object. Background Art
[0002] In the field of target tracking and detection, for the tracking and detection of a single target, the movement characteristics of the observed target object can be combined, and multi-level hypothesis testing can be used to perform recursive iteration strictly according to the time gradient to associate the trajectory points of the same target object at different times to obtain the entire movement trajectory. For the tracking and detection of multiple targets, a situation where multiple trajectories are mixed together is obtained. In theory, the trajectories of each target can still be extracted separately based on the mutual differences in the movement characteristics between the target objects.
[0003] However, sometimes, due to limited device capabilities or being restricted by special scenarios, only the position information of one target object can be randomly obtained at the same sampling moment, that is, one trajectory point is obtained, which results in the trajectory points of each target object being discontinuous and interleaved in the time series. Due to the existence of observation errors, traditional methods often cannot accurately and effectively extract the trajectories of each target object. Summary of the Invention
[0004] In view of this, this application provides a method, device, computer device and medium for extracting the movement trajectory of an object to solve the problem that the trajectories of each target object cannot be accurately and effectively extracted.
[0005] In a first aspect, this application provides a method for extracting the movement trajectory of an object, including: obtaining a plurality of trajectory points, where the sampling moments of the plurality of trajectory points are different and correspond to a plurality of target objects; using the sampling moments of the plurality of trajectory points to determine the trajectory endpoints corresponding to the first target object from the plurality of trajectory points; taking the trajectory endpoints as the current query points, and determining a target screening area centered on the current query points; based on the magnitude relationship between the sampling moments of the trajectory points within the target screening area and the sampling moment of the current query points, determining the next trajectory point belonging to the first target object; updating the next trajectory point as the current query point, determining the trajectory points belonging to the first target object, and obtaining the movement trajectory of the first target object.
[0006] In the method for extracting the object motion trajectory of the present application, according to the sampling times of multiple trajectory points, the trajectory endpoints corresponding to the first target object are determined from the multiple trajectory points; the trajectory endpoints are used as the current query points, and a target screening area is determined with the current query point as the center; for the trajectory points within the target screening area, the next trajectory point of the first target object is accurately screened out by using the magnitude relationship between its sampling time and the sampling time of the current query point; then the next trajectory point is updated as the current query point to continue to determine the target screening area, that is, the target screening area is continued to be determined with the next trajectory point as the center, and the trajectory points belonging to the first target object are iteratively determined from the multiple trajectory points in a loop, so as to obtain the motion trajectory of the first target object. This solution screens the trajectory points belonging to the first target object through the target screening area, realizes the effective and accurate extraction of the trajectory of the target object, can greatly reduce the calculation amount of target trajectory tracking and improve the real-time performance, and further solves the problem that the trajectories of each target object cannot be accurately and effectively extracted.
[0007] In an optional implementation manner, the trajectory endpoint is the trajectory starting point or the trajectory ending point; determining the trajectory endpoint corresponding to the first target object from the multiple trajectory points includes: if the trajectory endpoint is the trajectory starting point, determining the trajectory point with the earliest sampling time as the trajectory endpoint; if the trajectory endpoint is the trajectory ending point, determining the trajectory point with the latest sampling time as the trajectory endpoint.
[0008] Determining the trajectory point with the earliest sampling time as the trajectory endpoint or determining the trajectory point with the latest sampling time as the trajectory endpoint can efficiently and quickly determine the trajectory endpoint, and can further reduce the calculation amount and improve the real-time performance.
[0009] In an optional implementation manner, determining the target screening area with the current query point as the center includes: obtaining the preset motion speed of the first target object; determining the target step length by using the attribute characteristics of the preset motion speed; and determining the target screening area by spreading the target step length outward with the current query point as the center.
[0010] Combining the attribute characteristics of the preset motion speed of the first target object to determine the target step length makes the determined target step length more reasonable; then combining the target step length to spread the target step length outward with the current query point as the center to determine the target screening area makes the determined target screening area more reasonable, that is, it will not cause the next trajectory point of the first target object not to be within the target screening area due to the too small target screening area; nor will it cause too many trajectory points to fall into the target screening area due to the too large target screening area, making it impossible to accurately determine the next trajectory point of the first target object.
[0011] In an alternative embodiment, determining the next trajectory point belonging to the first target object based on the magnitude relationship between the sampling time of the trajectory points within the target screening region and the sampling time of the current query point includes: determining the time difference between the sampling time of the trajectory points within the target screening region and the sampling time of the current query point to obtain a plurality of time differences; determining the trajectory point within the target screening region corresponding to the smallest time difference as the candidate trajectory point; and using the time gradient direction between the sampling time of the candidate trajectory point and the sampling time of the current query point to determine the next trajectory point belonging to the first target object.
[0012] By screening the trajectory point with the smallest time difference as the candidate trajectory point, it can ensure that the current query point and the next trajectory point are closely connected in the time series, avoiding situations such as trajectory breakage or incorrect matching due to too large a time interval; using the time gradient direction (i.e., the order of sampling times) to further determine whether the candidate trajectory point is the next trajectory point of the first target object can ensure that the trajectory points extend in the increasing or decreasing direction of time, and further accurately and reasonably determine the next trajectory point.
[0013] In an alternative embodiment, the trajectory endpoint is the trajectory start point or the trajectory end point; using the time gradient direction between the sampling time of the candidate trajectory point and the sampling time of the current query point to determine the next trajectory point belonging to the first target object includes: if the trajectory endpoint is the trajectory start point and the sampling time of the candidate trajectory point is later than the sampling time of the current query point, then determining the candidate trajectory point as the next trajectory point of the first target object; if the trajectory endpoint is the trajectory end point and the sampling time of the candidate trajectory point is earlier than the sampling time of the current query point, then determining the candidate trajectory point as the next trajectory point of the first target object.
[0014] Using the time gradient direction between the sampling time of the candidate trajectory point and the sampling time of the current query point can further accurately and reasonably determine the next trajectory point, avoiding associating the trajectory points of other target objects with the motion trajectory of the first target object.
[0015] In an alternative embodiment, the trajectory endpoint is the trajectory start point or the trajectory end point; updating the next trajectory point to the current query point and determining the trajectory points belonging to the first target object to obtain the motion trajectory of the first target object includes: updating the next trajectory point to the current query point and continuing to determine the target screening area centered on the current query point; if the trajectory endpoint is the trajectory start point and there are trajectory points in the target screening area whose sampling times are all earlier than the sampling time of the current query point, then determining the current query point as the trajectory end point to obtain the motion trajectory of the first target object; if the trajectory endpoint is the trajectory end point and there are trajectory points in the target screening area whose sampling times are all later than the sampling time of the current query point, then determining the current query point as the trajectory start point to obtain the motion trajectory of the first target object.
[0016] In the case where the trajectory endpoint is the trajectory start point, if the sampling times of the trajectory points in the target screening area are all earlier than the sampling time of the current query point, it indicates that there are no trajectory points among the current multiple trajectory points whose sampling times are later than the sampling time of the current query point. Thus, it is possible to efficiently and quickly determine that the current query point is the trajectory end point of the first target object. In the case where the trajectory endpoint is the trajectory end point, if the sampling times of the trajectory points in the target screening area are all later than the sampling time of the current query point, it indicates that there are no trajectory points among the current multiple trajectory points whose sampling times are earlier than the sampling time of the current query point. Thus, it is possible to efficiently and quickly determine that the current query point is the trajectory start point of the first target object.
[0017] In an alternative embodiment, after updating the next trajectory point to the current query point, determining the trajectory points belonging to the first target object, and obtaining the motion trajectory of the first target object, the method further includes: determining whether there are multiple remaining trajectory points among the multiple trajectory points, where the remaining trajectory points are the trajectory points other than those on the motion trajectory of the first target object; if there are multiple remaining trajectory points, then using the sampling times of the multiple remaining trajectory points to determine the trajectory endpoints of the second target object from the multiple remaining trajectory points; updating the second target object to the first target object and entering the step of using the trajectory endpoint as the current query point and determining the target screening area centered on the current query point.
[0018] After obtaining the motion trajectory of the first target object, if there are remaining trajectory points among the multiple trajectory points, then continue to iterate the foregoing steps, that is, continue to use the target screening area to screen the trajectory points belonging to the second target object to obtain the motion trajectory of the second target object. That is, through cyclic iteration, until all the trajectory points are extracted, thereby obtaining the motion trajectories of multiple target objects, and further solving the problem of being unable to accurately and effectively extract the trajectories of each target object.
[0019] In a second aspect, the present application provides an apparatus for extracting an object motion trajectory, including: an acquisition module configured to acquire a plurality of trajectory points, where the sampling times of the plurality of trajectory points are different and correspond to a plurality of target objects; a first determination module configured to determine, using the sampling times of the plurality of trajectory points, the trajectory endpoints corresponding to a first target object from the plurality of trajectory points; a second determination module configured to use the trajectory endpoints as current query points and determine a target screening region centered on the current query points; a third determination module configured to determine, based on the magnitude relationship between the sampling times of the trajectory points within the target screening region and the sampling times of the current query points, the next trajectory point belonging to the first target object; and a fourth determination module configured to update the next trajectory point as the current query point, determine the trajectory points belonging to the first target object, and obtain the motion trajectory of the first target object.
[0020] In a third aspect, the present application provides a computer device, including: a memory and a processor, where the memory and the processor are communicatively connected to each other, and the memory stores computer instructions, and the processor executes the computer instructions to execute the method for extracting an object motion trajectory according to the first aspect or any corresponding embodiment thereof.
[0021] In a fourth aspect, the present application provides a computer-readable storage medium having computer instructions stored thereon, and the computer instructions are used to cause a computer to execute the method for extracting an object motion trajectory according to the first aspect or any corresponding embodiment thereof.
[0022] In a fifth aspect, the present application provides a computer program product including computer instructions, and the computer instructions are used to cause a computer to execute the method for extracting an object motion trajectory according to the first aspect or any corresponding embodiment thereof. Description of the Drawings
[0023] In order to more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the following will briefly introduce the drawings required for use in the description of the specific embodiments or the prior art. Obviously, the drawings in the following description are some embodiments of the present invention, and those of ordinary skill in the art can also obtain other drawings based on these drawings without creative efforts.
[0024] Figure 1 is a flowchart of a method for extracting an object motion trajectory according to an embodiment of the present application; Figure 2 is a schematic diagram of determining candidate trajectory points according to an embodiment of the present application; Figure 3 is another schematic diagram of determining candidate trajectory points according to an embodiment of the present application; Figure 4It is a schematic diagram for determining the motion trajectory of a first target object according to an embodiment of the present application; Figure 5 It is a schematic flowchart of another method for extracting the motion trajectory of an object according to an embodiment of the present application; Figure 6 It is a schematic flowchart of yet another method for extracting the motion trajectory of an object according to an embodiment of the present application; Figure 7 It is a schematic diagram of the motion trajectories of four aircraft according to an embodiment of the present application; Figure 8 It is a schematic diagram of multiple trajectory points obtained by sampling the motion trajectories of four aircraft according to an embodiment of the present application; Figure 9 It is a schematic diagram after adding perturbations to multiple trajectory points according to an embodiment of the present application; Figure 10 It is a schematic diagram for determining the trajectory endpoints of four aircraft according to an embodiment of the present application; Figure 11 It is a schematic diagram of the motion trajectories of four aircraft obtained by using the method for extracting the motion trajectory of an object of the present application; Figure 12 It is a schematic diagram of the motion trajectories of four aircraft obtained by using a traditional method; Figure 13 It is a structural block diagram of an apparatus for extracting the motion trajectory of an object according to an embodiment of the present application; Figure 14 It is a schematic diagram of the hardware structure of a computer device provided by an embodiment of the present application. Detailed implementation manners
[0025] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the described embodiments are some, but not all, of the embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.
[0026] In the field of target tracking and detection, such as for aircraft or ships, the target flight path in an ideal situation should be a straight line or a smooth curve. Due to the existence of observation errors, the actual positions of the target object at each sampling moment will deviate from the theoretical positions. Thus, for the tracking and detection of a single target, the motion characteristics of the observed target object can be combined, and a multi-level hypothesis testing method can be adopted to perform recursive iteration strictly according to the time gradient, associate the trajectory points of the same target object at different moments, and thus obtain the entire motion trajectory of the target object.
[0027] Currently, multi-object tracking and detection methods mostly exist in the simultaneous observation process of multiple objects, that is, the position information of all target objects in the field of view is obtained by observation at the same sampling moment, and trajectory tracking is carried out simultaneously. Each trajectory is continuous in time. Thus, in theory, each trajectory can still be extracted based on the mutual difference of the motion characteristics between the target objects respectively.
[0028] However, sometimes, due to the limited capabilities of the observation equipment or being restricted by special scenarios, only the position information of one target object can be randomly obtained at the same sampling moment, that is, only one trajectory point of a target object can be obtained. This results in the trajectory points of each target object being discontinuous and interleaved in the time series. Traditional trajectory tracking and association methods based on velocity consistency are only applicable to trajectories with continuous time series and are not applicable to interleaved trajectories in time series. On the other hand, when there is geographical position interleaving between the trajectories, due to the existence of observation errors, traditional methods often cannot accurately and effectively extract the trajectories of each target object.
[0029] In view of this, the present application proposes a method, device, computer device and medium for extracting the motion trajectory of an object. The method includes: obtaining a plurality of trajectory points, the sampling moments of the plurality of trajectory points are different and correspond to a plurality of target objects; using the sampling moments of the plurality of trajectory points to determine the trajectory endpoints corresponding to the first target object from the plurality of trajectory points; taking the trajectory endpoints as the current query points, and determining a target screening area centered on the current query points; based on the magnitude relationship between the sampling moment of the trajectory points within the target screening area and the sampling moment of the current query points, determining the next trajectory point belonging to the first target object; updating the next trajectory point as the current query point, determining the trajectory points belonging to the first target object, and obtaining the motion trajectory of the first target object.
[0030] In the method for extracting the motion trajectory of an object in the present application, according to the sampling moments of the plurality of trajectory points, the trajectory endpoints corresponding to the first target object are determined from the plurality of trajectory points; taking the trajectory endpoints as the current query points, a target screening area is determined centered on the current query points; for the trajectory points within the target screening area, by using the magnitude relationship between their sampling moments and the sampling moment of the current query points, the next trajectory point of the first target object is accurately screened out; then the next trajectory point is updated as the current query point to continue to determine the target screening area, that is, the target screening area is continued to be determined centered on the next trajectory point, and the trajectory points belonging to the first target object are determined from the plurality of trajectory points through cyclic iteration, so as to obtain the motion trajectory of the first target object. This solution screens the trajectory points belonging to the first target object through the target screening area, realizes the effective and accurate extraction of the trajectory of the target object, can reduce the computational amount of target trajectory tracking and improve the real-time performance, and thus solves the problem that the trajectories of each target object cannot be accurately and effectively extracted.
[0031] It should be noted that the application scenarios described in the embodiments of the present application above are for more clearly illustrating the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided by the embodiments of the present application. Those of ordinary skill in the art can know that with the emergence of new application scenarios, the technical solutions provided by the embodiments of the present application are also applicable to similar technical problems. The method for extracting the object motion trajectory provided by the embodiments of the present application can be applied to various application scenarios that require separating and extracting the trajectory of a target object.
[0032] According to the embodiments of the present application, an embodiment of a method for extracting an object motion trajectory is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. And although the logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in a different order than here.
[0033] In this embodiment, a method for extracting an object motion trajectory is provided, which can be used in computer devices, for example, servers, trajectory point sampling devices, various edge devices corresponding to the trajectory point sampling devices, and other devices. Figure 1 It is a flowchart of the method for extracting an object motion trajectory according to the embodiments of the present application, as Figure 1 shown, and this process includes the following steps: Step S102, obtain a plurality of trajectory points, where the sampling times of the plurality of trajectory points are different and correspond to a plurality of target objects.
[0034] A trajectory point can be the spatial position of an object at a certain specific moment during the movement process. From a mathematical perspective, it can be a coordinate point on the object's motion trajectory (that is, the curve or straight line formed by connecting all trajectory points), usually represented by a three-dimensional coordinate system (x, y, z) or a two-dimensional coordinate system (x, y). From a physical meaning perspective, each trajectory point corresponds to the position of the object at a certain moment and reflects the instantaneous state of the object's motion.
[0035] For the acquisition of a plurality of trajectory points, in practical applications, a trajectory point sampling device or various edge devices corresponding to the trajectory point sampling device can sample a plurality of target objects to obtain a plurality of trajectory points. In simulation experiments, a plurality of trajectory points can also be randomly generated through a normal distribution.
[0036] As shown above, due to limited device capabilities or being restricted by special scenarios, only the position information of one target object can be randomly obtained at the same sampling moment, that is, one trajectory point is obtained. For example, at the first sampling moment, the trajectory point of the first target object is sampled, at the second sampling moment, the trajectory point of the first target object is sampled, at the third sampling moment, the trajectory point of the second target object is sampled, and at the fourth sampling moment, the trajectory point of the third target object is sampled. In this way, multiple trajectory points that are discontinuous and interleaved in the time series can be obtained.
[0037] Step S104: Using the sampling moments of multiple trajectory points, determine the trajectory endpoints corresponding to the first target object from the multiple trajectory points.
[0038] The sampling moment of a trajectory point is used to record the time point when this trajectory point is sampled. Among them, the sampling moments of each trajectory point can be set artificially or randomly generated by the system, and the sampling time intervals between any two adjacent trajectory points can be the same or different.
[0039] It should be understood that the first target object can be the target object whose motion trajectory is first extracted. This first target object can be the target object corresponding to the first sampled trajectory point. For example, continuing with the previous example, the first target object can be the first target object sampled at the first sampling moment.
[0040] The trajectory endpoint can be the boundary point of the motion trajectory of the first target object in the time dimension. This trajectory endpoint can be the starting point of the trajectory or the ending point of the trajectory. Among them, the starting point of the trajectory can be the first trajectory point of the first target object within the observation or analysis time period, corresponding to the earliest sampling moment; the ending point of the trajectory can be the last trajectory point of the first target object within the observation or analysis time period, corresponding to the latest sampling moment.
[0041] Step S106: Take the trajectory endpoint as the current query point, and determine the target screening area with the current query point as the center.
[0042] There are various ways to determine the target screening area with the current query point as the center. For example, a target screening area with a fixed shape can be defined through mathematical formulas or geometric models, and this fixed shape can be a circle, a rectangle, a polygon, etc. Another example is to divide the space into regular grids (such as grids, hexagonal grids), and determine the target screening area through the grid where the current query point is located and its adjacent grids.
[0043] It should be understood that this target screening area can be a planar area in two-dimensional space and a spatial area in three-dimensional space.
[0044] Step S108: Determine the next trajectory point belonging to the first target object based on the magnitude relationship between the sampling time of the trajectory points within the target screening area and the sampling time of the current query point.
[0045] The next trajectory point of the first target object can be the next trajectory point adjacent to the current query point in terms of position. Subsequently, the next trajectory point adjacent to the next trajectory point can be determined using the next trajectory point. In this way, through multiple loop iterations, multiple next trajectory points of the first target object can be obtained.
[0046] Due to reasons such as multi-trajectory interleaving and large positioning errors, there are often multiple optional trajectory points within the target screening area centered on the current query point. These optional trajectory points may come from other target objects or trajectory points separated by multiple sampling times. Thus, based on the principle that the time gradient of adjacent trajectory points on the same motion trajectory is the smallest, the next trajectory point can be screened out. For example, compare the sampling time of the current query point with the sampling times of the trajectory points within the target screening area one by one. If the trajectory endpoint is the starting point of the trajectory, then determine the trajectory point corresponding to the sampling time that is later than and closest to the sampling time of the current query point as the next trajectory point. If the trajectory endpoint is the ending point of the trajectory, then determine the trajectory point corresponding to the sampling time that is earlier than and closest to the sampling time of the current query point as the next trajectory point.
[0047] Step S110: Update the next trajectory point to the current query point, determine the trajectory points belonging to the first target object, and obtain the motion trajectory of the first target object.
[0048] The motion trajectory of the first target object can be a sequence of position changes of the first target object over a period of time, usually composed of a series of trajectory points arranged in chronological order. These trajectory points can reflect the movement path and motion characteristics of the first target object in space.
[0049] After updating the next trajectory point to the current query point, it is possible to enter the step of determining the target screening area centered on the current query point. In this way, through loop iterations, multiple next trajectory points of the first target object can be determined until another trajectory endpoint of the first target object is determined again. In this way, through the two trajectory endpoints and multiple next trajectory points between the two trajectory endpoints, the motion trajectory of the first target object can be formed.
[0050] The method for extracting the motion trajectory of an object provided in this application determines the trajectory endpoints corresponding to the first target object from multiple trajectory points according to the sampling times of the multiple trajectory points; uses the trajectory endpoints as the current query points, and determines a target screening area centered on the current query points; for the trajectory points within the target screening area, accurately screens out the next trajectory point of the first target object by using the magnitude relationship between its sampling time and the sampling time of the current query point; then updates the next trajectory point as the current query point and continues to determine the target screening area, that is, continues to determine the target screening area centered on the next trajectory point, and circularly iterates to determine all the trajectory points belonging to the first target object from the multiple trajectory points, so as to obtain the motion trajectory of the first target object. This solution screens the trajectory points belonging to the first target object through the target screening area, realizes the effective and accurate extraction of the trajectory of the target object, can reduce the calculation amount of target trajectory tracking and improve the real-time performance, and thus solves the problem that the trajectories of each target object cannot be accurately and effectively extracted.
[0051] When performing tracking detection on the first target object, it is necessary to first determine the trajectory endpoints of the first target object, and then determine the next trajectory point adjacent to the trajectory endpoints. In this way, through circular iteration, the motion trajectory of the first target object is determined. For the trajectory endpoints of the first target object, they can be the starting point of the trajectory of the first target object or the ending point of the trajectory of the first target object. Based on this situation, in some optional implementation manners, determining the trajectory endpoints corresponding to the first target object from multiple trajectory points includes: if the trajectory endpoint is the starting point of the trajectory, determining the trajectory point with the earliest sampling time as the trajectory endpoint; if the trajectory endpoint is the ending point of the trajectory, determining the trajectory point with the latest sampling time as the trajectory endpoint.
[0052] In the above implementation manner, determining the trajectory point with the earliest sampling time as the trajectory endpoint or determining the trajectory point with the latest sampling time as the trajectory endpoint can efficiently and quickly determine the trajectory endpoints, and can further reduce the calculation amount and improve the real-time performance.
[0053] As shown above, the first target object can be the first target object sampled at the first sampling moment. Then, by determining the trajectory endpoint of the first target object as the trajectory point with the earliest sampling moment or the trajectory point with the latest sampling moment, the trajectory endpoint of the first target object can be accurately determined. After extracting the trajectory of the first target object, continue to determine the trajectory endpoint of the second target object as the trajectory point with the earliest sampling moment or the trajectory point with the latest sampling moment from the remaining trajectory points. In this way, the trajectory points of the second target object can also be accurately and quickly determined. Thus, according to the principle of extending in the time gradient direction, when tracking the trajectory of each target object, the trajectory point with the highest or lowest time dimension among the current trajectory points can be selected as the trajectory endpoint of the target object.
[0054] In some alternative embodiments, a target screening region is determined centered on the current query point, including: obtaining the preset motion speed of the first target object; determining the target step size using the attribute characteristics of the preset motion speed; and spreading the target step size outward centered on the current query point to determine the target screening region.
[0055] There are various implementation manners for determining the target step size using the attribute characteristics of the preset motion speed. For example, for less computational amount, the moving distance of the preset motion speed of the first target object per unit time can be directly determined as the target step size. For another example, considering the existence of positioning errors, it should be ensured that the next trajectory point on this motion trajectory is within the target screening range. Due to the reason of interleaved observations, the time interval between adjacent trajectory points on the same motion trajectory cannot be guaranteed. Therefore, the range of the target screening region needs to be appropriately expanded. Since this solution determines the next trajectory point based on the time nearest neighbor principle, even a larger target screening region will not increase the probability of false association. Therefore, the target step size can be determined by combining the preset motion speed and the observation error.
[0056] Optionally, as Figure 2 and Figure 3 shown, the current query point can be used as the center of the circle, and the target step size can be used as the radius to spread the target step size outward to obtain a circular target screening region. Since the circle itself has geometric symmetry, determining the circular target screening region can improve the accuracy and computational efficiency of determining the next trajectory point of the first target object.
[0057] Combined with the attribute characteristics of the preset motion speed of the first target object, determine the target step size to make the determined target step size more reasonable; then combined with the target step size, expand the target step size outward with the current query point as the center to determine the target screening area, so that the determined target screening area is more reasonable, and it will not cause the next trajectory point of the first target object not to be within the target screening area due to the too small target screening area; nor will it cause too many trajectory points to fall into the target screening area due to the too large target screening area, making it impossible to accurately determine the next trajectory point of the first target object.
[0058] In some alternative embodiments, based on the magnitude relationship between the sampling times of the trajectory points within the target screening area and the sampling time of the current query point, determining the next trajectory point belonging to the first target object includes: determining the time differences between the sampling times of the trajectory points within the target screening area and the sampling time of the current query point to obtain a plurality of time differences; determining the trajectory point within the target screening area corresponding to the smallest time difference as the candidate trajectory point; and using the time gradient direction between the sampling time of the candidate trajectory point and the sampling time of the current query point to determine the next trajectory point belonging to the first target object.
[0059] Optionally, the time gradient direction can be the time increasing direction or the time decreasing direction.
[0060] By screening the trajectory point with the smallest time difference as the candidate trajectory point, this can ensure the tight connection between the current query point and the next trajectory point in the time series, avoiding situations such as trajectory breakage or incorrect matching due to too large a time interval; using the time gradient direction (i.e., the order of sampling times) to further determine whether the candidate trajectory point is the next trajectory point of the first target object can ensure that the trajectory points extend in the time increasing direction or the time decreasing direction, and further accurately and reasonably determine the next trajectory point.
[0061] In some alternative embodiments, the trajectory endpoint is the trajectory starting point or the trajectory ending point; using the time gradient direction between the sampling time of the candidate trajectory point and the sampling time of the current query point to determine the next trajectory point belonging to the first target object includes: if the trajectory endpoint is the trajectory starting point and the sampling time of the candidate trajectory point is later than the sampling time of the current query point, then determining the candidate trajectory point as the next trajectory point of the first target object; if the trajectory endpoint is the trajectory ending point and the sampling time of the candidate trajectory point is earlier than the sampling time of the current query point, then determining the candidate trajectory point as the next trajectory point of the first target object.
[0062] Such as Figure 2As shown, when the trajectory endpoint is the trajectory starting point, the sampling time of the next trajectory point must be later than the sampling time of the current query point. Based on this, the sampling time of the candidate trajectory point and the sampling time of the current query point are in the direction of increasing time.
[0063] As Figure 3 shown, when the trajectory endpoint is the trajectory ending point, the sampling time of the next trajectory point must be earlier than the sampling time of the current query point. Based on this, the sampling time of the candidate trajectory point and the sampling time of the current query point are in the direction of decreasing time.
[0064] In the above embodiments, by using the time gradient direction between the sampling time of the candidate trajectory point and the sampling time of the current query point, the next trajectory point can be determined more accurately and reasonably, avoiding associating the trajectory points of other target objects with the motion trajectory of the first target object.
[0065] In some optional embodiments, the trajectory endpoint is the trajectory starting point or the trajectory ending point; updating the next trajectory point to the current query point and determining the trajectory points belonging to the first target object to obtain the motion trajectory of the first target object includes: updating the next trajectory point to the current query point and continuing to determine the target screening area centered on the current query point; if the trajectory endpoint is the trajectory starting point and there are trajectory points in the target screening area whose sampling times are all earlier than the sampling time of the current query point, then determining the current query point as the trajectory ending point to obtain the motion trajectory of the first target object; if the trajectory endpoint is the trajectory ending point and there are trajectory points in the target screening area whose sampling times are all later than the sampling time of the current query point, then determining the current query point as the trajectory starting point to obtain the motion trajectory of the first target object.
[0066] When the trajectory endpoint is the trajectory starting point, if the sampling times of the trajectory points in the target screening area are all earlier than the sampling time of the current query point, it indicates that there are no trajectory points later than the sampling time of the current query point among the current multiple trajectory points. In this way, the current query point can be efficiently and quickly determined as the trajectory ending point of the first target object.
[0067] When the trajectory endpoint is the trajectory ending point, if the sampling times of the trajectory points in the target screening area are all later than the sampling time of the current query point, it indicates that there are no trajectory points earlier than the sampling time of the current query point among the current multiple trajectory points. In this way, the current query point can be efficiently and quickly determined as the trajectory starting point of the first target object.
[0068] As Figure 4As shown, after determining the trajectory starting point, trajectory ending point, and multiple next trajectory points between the trajectory starting point and the trajectory ending point that belong to the first target object, and connecting the trajectory starting point, multiple next trajectory points, and the trajectory ending point in the increasing direction of time, the motion trajectory of the first target object can be obtained.
[0069] In this embodiment, a method for extracting the motion trajectory of an object is provided, which can be used in computer devices, such as servers, trajectory point sampling devices, various edge devices corresponding to the trajectory point sampling devices, and other devices. Figure 5 It is a flowchart of the method for extracting the motion trajectory of an object according to an embodiment of the present application, as Figure 5 shown, and the process includes the following steps: Step S502, obtain multiple trajectory points. The sampling times of the multiple trajectory points are different and correspond to multiple target objects. For details, please refer to Figure 1 Step S102 of the embodiment shown, which will not be elaborated here.
[0070] Step S504, use the sampling times of the multiple trajectory points to determine the trajectory endpoints corresponding to the first target object from the multiple trajectory points. For details, please refer to Figure 1 Step S104 of the embodiment shown, which will not be elaborated here.
[0071] Step S506, use the trajectory endpoints as the current query points, and determine the target screening area centered on the current query points. For details, please refer to Figure 1 Step S106 of the embodiment shown, which will not be elaborated here.
[0072] Step S508, based on the magnitude relationship between the sampling times of the trajectory points within the target screening area and the sampling time of the current query point, determine the next trajectory points that belong to the first target object. For details, please refer to Figure 1 Step S108 of the embodiment shown, which will not be elaborated here.
[0073] Step S510, update the next trajectory points as the current query points, determine the trajectory points that belong to the first target object, and obtain the motion trajectory of the first target object. For details, please refer to Figure 1 Step S110 of the embodiment shown, which will not be elaborated here.
[0074] Step S512, determine whether there are multiple remaining trajectory points among the multiple trajectory points. The remaining trajectory points are the trajectory points other than those on the motion trajectory of the first target object.
[0075] There can be many ways to determine whether there are multiple remaining trajectory points among multiple trajectory points. For example, by using preset screening conditions to screen the identification information of each trajectory point to determine whether there are multiple remaining trajectory points among multiple trajectory points. Another example is to determine whether a trajectory point belongs to the motion trajectory of a first target object to determine whether there are multiple remaining trajectory points among multiple trajectory points.
[0076] Step S514, if there are multiple remaining trajectory points, then use the sampling times of the multiple remaining trajectory points to determine the trajectory endpoints of the second target object from the multiple remaining trajectory points.
[0077] If there are no multiple remaining trajectory points, it indicates that all the multiple trajectory points have been determined, that is, the trajectories of all target objects have been separated.
[0078] Step S516, update the second target object to the first target object, and enter the step of using the trajectory endpoints as the current query points and determining the target screening area centered on the current query points.
[0079] After obtaining the motion trajectory of the first target object, if there are remaining trajectory points among the multiple trajectory points, continue to iterate the foregoing steps, that is, continue to use the target screening area to screen the trajectory points belonging to the second target object to obtain the motion trajectory of the second target object. That is, through cyclic iteration, until all the trajectory points are extracted, so as to obtain the motion trajectories of multiple target objects, thereby solving the problem of being unable to accurately and effectively extract the trajectories of each target object.
[0080] It should be understood that when there are two or more target objects corresponding to the multiple trajectory points, there can be multiple second target objects.
[0081] The method for extracting the motion trajectory of an object provided in this embodiment determines the trajectory endpoints corresponding to the first target object from multiple trajectory points according to the sampling times of the multiple trajectory points; uses the trajectory endpoints as the current query points, and determines a target screening area centered on the current query points; for the trajectory points within the target screening area, accurately screens out the next trajectory point of the first target object by using the magnitude relationship between its sampling time and the sampling time of the current query point; then updates the next trajectory point as the current query point and continues to determine the target screening area, that is, continues to determine the target screening area centered on the next trajectory point, and iteratively determines all the trajectory points belonging to the first target object from the multiple trajectory points through cyclic iteration, so as to obtain the motion trajectory of the first target object; after obtaining the motion trajectory of the first target object, determines whether there are remaining trajectory points, and if there are remaining trajectory points, continues the above steps, and extracts the trajectories of multiple target objects through multiple cyclic iterations. This solution screens the trajectory points belonging to the first target object through the target screening area, realizes the effective and accurate extraction of the trajectory of the target object, can reduce the computational amount of target trajectory tracking and improve real-time performance, and thus solves the problem that the trajectories of each target object cannot be accurately and effectively extracted.
[0082] For the convenience of understanding the method for extracting the motion trajectory of an object of the present application, as Figure 6 shown, the embodiment of the present application also provides a schematic flowchart of a method for extracting the motion trajectory of an object. The schematic flowchart includes steps S601 to S608.
[0083] Step S601, in the process of extracting the motion trajectory of the first target object, determines the trajectory endpoints from multiple trajectory points by using the sampling times of the multiple trajectory points. The trajectory endpoints can be the starting point of the trajectory of the first target object or the ending point of the trajectory of the first target object.
[0084] Step S602, determines the target step size in combination with the preset motion speed and observation error of the target object.
[0085] Step S603, uses the trajectory endpoints as the current query points, and spreads the target step size outward centered on the current query points to determine the target screening area.
[0086] Step S604, determines the next trajectory point by using the target screening area. That is, determines the next trajectory point by using the magnitude relationship between the sampling times of the trajectory points within the target screening area and the sampling time of the current query point.
[0087] Step S605: Determine whether there are trajectory points that meet the predetermined conditions within the target screening area. If there are trajectory points that meet the predetermined conditions within the target screening area, then determine such a trajectory point as the next trajectory point and execute Step S606; if there are no trajectory points that meet the predetermined conditions within the target screening area, then execute Step S607. Among them, the predetermined conditions are as follows: if the trajectory endpoint is the trajectory starting point, there is a trajectory point within the target screening area with the smallest difference from the sampling time of the current query point and conforming to the time increasing direction; if the trajectory endpoint is the trajectory ending point, there is a trajectory point within the target screening area with the smallest difference from the sampling time of the current query point and conforming to the time decreasing direction.
[0088] Step S606: Update the next trajectory point as the current query point.
[0089] Step S607: Determine the current query point as the trajectory starting point or the trajectory ending point.
[0090] Step S608: Determine whether there are remaining trajectory points among the multiple trajectory points. If there are remaining trajectory points among the multiple trajectory points, then execute Step S601; if there are no remaining trajectory points among the multiple trajectory points, then end.
[0091] To facilitate the understanding of the method for extracting the object motion trajectory of the present application, the method for extracting the object motion trajectory of the present application will be further introduced below by taking the extraction of the motion trajectories of multiple aircraft through simulation experiments as an example.
[0092] As Figure 7 shown, the motion trajectories of 4 aircraft obtained through simulation are shown, and each motion trajectory consists of 125 trajectory points, and the 4 aircraft are all moving at the same altitude. For such motion trajectories, through the sampling method at an interval of 1 second, the motion trajectories of the 4 aircraft are sampled to obtain multiple trajectory points of staggered observation as shown in Figure 8 shown. Then, after adding random perturbations to the trajectory points using the normal distribution as shown in Figure 8 shown, multiple trajectory points as shown in Figure 9 are obtained, where 0 in it is used to represent the mean value, and 0.002 is used to represent the variance. Extracting the motion trajectory from the trajectory points after adding random perturbations can make the extraction method of the present application have higher robustness. The specific steps include: The first step: Analyze through the trajectory points as shown in Figure 9 shown, and take the trajectory point at the most end of the sampling time among the multiple trajectory points as the trajectory endpoint, specifically as shown in Figure 10As shown in the figure. After extracting the motion trajectory of the first aircraft, continue to select the trajectory point at the very end of the sampling time among the remaining trajectory points to start the extraction of the next round of motion trajectory.
[0093] Second step: Determine the target step size according to the preset motion speed and observation error of the observed aircraft. For example, the target step size of the aircraft can be 0.02 degrees. It should be understood that when the target step size is in units of degree, coordinate conversion can be performed on the target step size to obtain the corresponding actual distance.
[0094] Third step: Determine the next trajectory point in the target screening area: Due to reasons such as multi-trajectory point interleaving and large positioning errors, there are often multiple selectable trajectory points within the target screening area centered on the current query point. These trajectory points may come from other aircraft or trajectory points separated by multiple sampling times. However, based on the principle that the time gradient of adjacent trajectory points on the same motion trajectory is the smallest, the next trajectory point can be screened out, and thus the entire motion trajectory can be obtained.
[0095] According to the method for extracting the object motion trajectory of the present application, multiple trajectory points as Figure 9 shown are extracted to obtain the motion trajectory extraction result as Figure 11 shown. The result obtained by the traditional method is as Figure 12 shown. Table 1 is a comparison table of the mis-association rates of the two methods. It can be seen from Table 1 that the present application can accurately separate the motion trajectories of each target object from multiple trajectory points with time interleaving, and the mis-association rate is much lower than that of the traditional method. Among them, the mis-association rate is the ratio of the mis-associated trajectory points to the total number of trajectory points in the trajectory tracking result.
[0096] Table 1 Comparison of mis-association rates of two methods
[0097] In this embodiment, an apparatus for extracting an object motion trajectory is further provided. This apparatus is used to implement the above-mentioned embodiments and preferred implementation manners, and those that have been described will not be repeated. As used hereinafter, the term "module" can be a combination of software and / or hardware that can achieve a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, implementation in hardware, or a combination of software and hardware is also possible and contemplated.
[0098] This embodiment provides an apparatus for extracting an object motion trajectory, as Figure 13 shown. The apparatus includes an acquisition module 1310, a first determination module 1320, a second determination module 1330, a third determination module 1340, and a fourth determination module 1350.
[0099] An acquisition module 1310, configured to acquire a plurality of trajectory points, where the sampling times of the plurality of trajectory points are different and correspond to a plurality of target objects; A first determination module 1320, configured to determine, from the plurality of trajectory points, the trajectory endpoints corresponding to the first target object by using the sampling times of the plurality of trajectory points; A second determination module 1330, configured to use the trajectory endpoints as the current query points, and determine a target screening area centered on the current query points; A third determination module 1340, configured to determine the next trajectory point belonging to the first target object based on the magnitude relationship between the sampling times of the trajectory points within the target screening area and the sampling time of the current query point; A fourth determination module 1350, configured to update the next trajectory point as the current query point, determine the trajectory points belonging to the first target object, and obtain the motion trajectory of the first target object.
[0100] In some alternative embodiments, the trajectory endpoints are the trajectory start points or the trajectory end points; the first determination module is further configured to, if the trajectory endpoints are the trajectory start points, determine the trajectory points with the earliest sampling times as the trajectory endpoints; if the trajectory endpoints are the trajectory end points, determine the trajectory points with the latest sampling times as the trajectory endpoints.
[0101] In some alternative embodiments, the second determination module is further configured to obtain the preset motion speed of the first target object; determine a target step size by using the attribute characteristics of the preset motion speed; and expand the target step size outward centered on the current query point to determine the target screening area.
[0102] In some alternative embodiments, the third determination module is further configured to determine the time differences between the sampling times of the trajectory points within the target screening area and the sampling time of the current query point to obtain a plurality of time differences; determine the trajectory points within the target screening area corresponding to the smallest time difference as candidate trajectory points; and determine the next trajectory point belonging to the first target object by using the time gradient direction between the sampling times of the candidate trajectory points and the sampling time of the current query point.
[0103] In some alternative embodiments, the trajectory endpoints are the trajectory start points or the trajectory end points; the third determination module is further configured to, if the trajectory endpoints are the trajectory start points and the sampling time of the candidate trajectory points is later than the sampling time of the current query point, determine the candidate trajectory points as the next trajectory points of the first target object; if the trajectory endpoints are the trajectory end points and the sampling time of the candidate trajectory points is earlier than the sampling time of the current query point, determine the candidate trajectory points as the next trajectory points of the first target object.
[0104] In some alternative embodiments, the trajectory endpoint is the trajectory start point or the trajectory end point; the fourth determination module is further configured to update the next trajectory point to the current query point, and continue to determine the target screening area centered on the current query point; if the trajectory endpoint is the trajectory start point, and there are trajectory points within the target screening area whose sampling times are all earlier than the sampling time of the current query point, then determine the current query point as the trajectory end point to obtain the motion trajectory of the first target object; if the trajectory endpoint is the trajectory end point, and there are trajectory points within the target screening area whose sampling times are all later than the sampling time of the current query point, then determine the current query point as the trajectory start point to obtain the motion trajectory of the first target object.
[0105] In some alternative embodiments, the apparatus further includes a fifth determination module, a sixth determination module, and a seventh determination module, wherein the fifth determination module is configured to determine whether there are multiple remaining trajectory points among the multiple trajectory points, and the remaining trajectory points are the trajectory points other than those on the motion trajectory of the first target object; the sixth determination module is configured to, if there are multiple remaining trajectory points, use the sampling times of the multiple remaining trajectory points to determine the trajectory endpoint of the second target object from the multiple remaining trajectory points; the seventh determination module is configured to update the second target object to the first target object, and enter the step of using the trajectory endpoint as the current query point and determining the target screening area centered on the current query point.
[0106] The apparatus for extracting the object motion trajectory provided by the present application determines the trajectory endpoint corresponding to the first target object from multiple trajectory points according to the sampling times of the multiple trajectory points; uses the trajectory endpoint as the current query point and determines the target screening area centered on the current query point; for the trajectory points within the target screening area, accurately screens out the next trajectory point of the first target object by using the magnitude relationship between its sampling time and the sampling time of the current query point; then updates the next trajectory point to the current query point and continues to determine the target screening area, that is, continues to determine the target screening area centered on the next trajectory point, and iteratively determines all the trajectory points belonging to the first target object from the multiple trajectory points in a loop, so as to obtain the motion trajectory of the first target object. This solution screens the trajectory points belonging to the first target object through the target screening area, realizes the effective and accurate extraction of the trajectory of the target object, can reduce the calculation amount of target trajectory tracking and improve the real-time performance, and further solves the problem that the trajectories of each target object cannot be accurately and effectively extracted.
[0107] The further function descriptions of the above-mentioned various modules and units are the same as those in the corresponding embodiments above, and will not be elaborated here.
[0108] The device for extracting the object motion trajectory in this embodiment is presented in the form of functional units. Here, the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and a memory that execute one or more software or fixed programs, and / or other devices that can provide the above functions.
[0109] An embodiment of the present invention further provides a computer device. Please refer to Figure 14 , Figure 14 which is a schematic structural diagram of a computer device provided by an alternative embodiment of the present application. As shown in Figure 14 , the computer device includes: one or more processors 1410, a memory 1420, and an interface for connecting each component, including a high-speed interface and a low-speed interface. Each component communicates with each other using different buses and can be installed on a common motherboard or installed in other ways as needed. The processor can process instructions executed within the computer device, including instructions stored in the memory or on the memory to display graphical information of the GUI on an external input / output device (such as a display device coupled to the interface). In some alternative embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple computer devices can be connected, and each device provides some necessary operations (such as a server array, a set of blade servers, or a multi-processor system). Figure 14 In
[0110] Processor 1410 can be a central processing unit, a network processor, or a combination thereof. Among them, processor 1410 can further include a hardware chip. The above hardware chip can be an application specific integrated circuit, a programmable logic device, or a combination thereof. The above programmable logic device can be a complex programmable logic device, a field programmable gate array, a general array logic, or any combination thereof.
[0111] Among them, the memory 1420 stores instructions executable by at least one processor 1410, so that the at least one processor 1410 executes the method shown in the above embodiment.
[0112] The memory 1420 may include a program storage area and a data storage area. The program storage area may store an operating system and application programs required for at least one function. The data storage area may store data created according to the use of the computer device, etc. In addition, the memory 1420 may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, a flash memory device, or other non-transitory solid-state storage devices. In some alternative embodiments, the memory 1420 may optionally include a memory remotely located relative to the processor 1410, and these remote memories may be connected to the computer device through a network. Examples of the above-mentioned network include but are not limited to the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0113] The memory 1420 may include volatile memory, such as random access memory; the memory may also include non-volatile memory, such as flash memory, a hard disk, or a solid-state drive; the memory 1420 may also include a combination of the above types of memory.
[0114] The computer device further includes an input device 1430 and an output device 1440. The processor 1410, the memory 1420, the input device 1430, and the output device 1440 may be connected through a bus or other means. Figure 14 Taking connection through a bus as an example.
[0115] The input device 1430 may receive input digital or character information, and generate key signal inputs related to the user settings and function controls of the computer device, such as a touch screen, a keypad, a mouse, a trackpad, a touchpad, a pointing stick, one or more mouse buttons, a trackball, a joystick, etc. The output device 1440 may include a display device, an auxiliary lighting device (e.g., an LED), and a haptic feedback device (e.g., a vibration motor), etc. The above-mentioned display device includes but is not limited to a liquid crystal display, a light-emitting diode, a display, and a plasma display. In some alternative embodiments, the display device may be a touch screen.
[0116] Embodiments of the present application also provide a computer-readable storage medium. The method according to the embodiments of the present invention can be implemented in hardware, firmware, or be implemented as computer code that can be recorded on a storage medium, or be implemented as computer code that is originally stored in a remote storage medium or a non-transitory machine-readable storage medium and downloaded through a network and will be stored in a local storage medium, so that the method described herein can be stored as such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only memory, a random access memory, a flash memory, a hard disk, or a solid-state drive, etc.; further, the storage medium can also include a combination of the above-mentioned types of memories. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code, and when the software or computer code is accessed and executed by the computer, the processor, or the hardware, the method shown in the above embodiments is implemented.
[0117] A part of the present application can be applied as a computer program product, for example, computer program instructions, which, when executed by a computer, can call or provide the method and / or technical solution according to the present invention through the operation of the computer. Those skilled in the art should be able to understand that the forms in which computer program instructions exist in a computer-readable medium include, but are not limited to, source files, executable files, installation package files, etc. Correspondingly, the ways in which computer program instructions are executed by a computer include, but are not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Herein, the computer-readable medium can be any available computer-readable storage medium or communication medium accessible to the computer.
[0118] Although the embodiments of the present invention have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of the present invention, and such modifications and variations all fall within the scope defined by the appended claims.
Claims
1. A method for extracting the motion trajectory of an object, characterized in that, Including: Obtain a plurality of trajectory points, where the sampling times of the plurality of trajectory points are different and correspond to a plurality of target objects; Using the sampling times of the plurality of trajectory points, determine the trajectory endpoints corresponding to the first target object from the plurality of trajectory points; Use the trajectory endpoints as the current query points, and determine a target screening area centered on the current query points; Based on the magnitude relationship between the sampling times of the trajectory points within the target screening area and the sampling time of the current query point, determine the next trajectory point belonging to the first target object; Update the next trajectory point as the current query point, determine the trajectory points belonging to the first target object, and obtain the motion trajectory of the first target object.
2. The method according to claim 1, wherein The trajectory endpoints are the trajectory start points or the trajectory end points; Determining the trajectory endpoints corresponding to the first target object from the plurality of trajectory points includes: If the trajectory endpoint is the trajectory start point, then determine the trajectory point with the earliest sampling time as the trajectory endpoint; If the trajectory endpoint is the trajectory end point, then determine the trajectory point with the latest sampling time as the trajectory endpoint.
3. The method according to claim 1, wherein Determining a target screening area centered on the current query point includes: Obtain the preset motion speed of the first target object; Using the attribute characteristics of the preset motion speed, determine the target step size; Diffuse the target step size outward centered on the current query point to determine the target screening area.
4. The method according to claim 1, wherein Based on the magnitude relationship between the sampling times of the trajectory points within the target screening area and the sampling time of the current query point, determining the next trajectory point belonging to the first target object includes: Determine the time differences between the sampling times of the trajectory points within the target screening area and the sampling time of the current query point to obtain a plurality of the time differences; Determine the trajectory point within the target screening area corresponding to the smallest time difference as the candidate trajectory point; Using the time gradient direction between the sampling time of the candidate trajectory point and the sampling time of the current query point, determine the next trajectory point belonging to the first target object.
5. The method according to claim 4, wherein The trajectory endpoints are the trajectory start points or the trajectory end points; Using the time gradient direction between the sampling time of the candidate trajectory point and the sampling time of the current query point, determining the next trajectory point belonging to the first target object includes: If the trajectory endpoint is the trajectory start point and the sampling time of the candidate trajectory point is later than the sampling time of the current query point, then determine the candidate trajectory point as the next trajectory point of the first target object; If the trajectory endpoint is the trajectory end point and the sampling time of the candidate trajectory point is earlier than the sampling time of the current query point, then determine the candidate trajectory point as the next trajectory point of the first target object.
6. The method according to claim 1, wherein The trajectory endpoints are the trajectory start points or the trajectory end points; Updating the next trajectory point as the current query point, determining the trajectory points belonging to the first target object, and obtaining the motion trajectory of the first target object includes: Update the next trajectory point to the current query point, and continue to determine the target screening area centered on the current query point; If the trajectory endpoint is the starting point of the trajectory, and there are trajectory points within the target screening area whose sampling times are all earlier than the sampling time of the current query point, then determine the current query point as the ending point of the trajectory, and obtain the motion trajectory of the first target object; If the trajectory endpoint is the ending point of the trajectory, and there are trajectory points within the target screening area whose sampling times are all later than the sampling time of the current query point, then determine the current query point as the starting point of the trajectory, and obtain the motion trajectory of the first target object.
7. The method according to claim 1, wherein After updating the next trajectory point to the current query point, determining the trajectory points belonging to the first target object, and obtaining the motion trajectory of the first target object, the method further includes: Determine whether there are multiple remaining trajectory points among the multiple trajectory points, where the remaining trajectory points are the trajectory points other than those on the motion trajectory of the first target object; If there are multiple remaining trajectory points, then use the sampling times of the multiple remaining trajectory points to determine the trajectory endpoints of the second target object from the multiple remaining trajectory points; Update the second target object to the first target object, and enter the step of using the trajectory endpoint as the current query point and determining the target screening area centered on the current query point.
8. An apparatus for extracting the motion trajectory of an object, characterized in that, Comprising: An acquisition module, configured to acquire multiple trajectory points, where the sampling times of the multiple trajectory points are different and correspond to multiple target objects; A first determination module, configured to use the sampling times of the multiple trajectory points to determine the trajectory endpoints corresponding to the first target object from the multiple trajectory points; A second determination module, configured to use the trajectory endpoint as the current query point and determine the target screening area centered on the current query point; A third determination module, configured to determine the next trajectory point belonging to the first target object based on the magnitude relationship between the sampling time of the trajectory points within the target screening area and the sampling time of the current query point; A fourth determination module, configured to update the next trajectory point to the current query point, determine the trajectory points belonging to the first target object, and obtain the motion trajectory of the first target object.
9. A computer device, characterized in that, Comprising: A memory and a processor, where the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the computer instructions to execute the method for extracting the motion trajectory of an object according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, Computer instructions are stored on the computer-readable storage medium, and the computer instructions are used to cause a computer to execute the method for extracting the motion trajectory of an object according to any one of claims 1 to 7.
Citation Information
Patent Citations
Method for implementing wireless sensor network query, and data return method
CN101321184A
Track extracting method and system
CN104462273A
Multi-trajectory drawing method and device
CN105589875A
Cluster-analysis-based de-noising method and apparatus for trajectory
CN106650771A
Method and device for matching track points acquired by positioning system into map
CN106767851A