A method, apparatus and device for analyzing a motion state of a target object

By reconstructing the position points of multiple frames of images during badminton, determining and correcting the initial motion range, and combining the actual situation to perform trajectory fitting and landing point prediction, the problem of the inability to accurately analyze the badminton motion state in existing technologies is solved, and higher accuracy in trajectory fitting and landing point prediction is achieved.

CN119722918BActive Publication Date: 2026-05-22FUZHOU SHANWEI ZHIXING TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
FUZHOU SHANWEI ZHIXING TECH CO LTD
Filing Date
2024-10-30
Publication Date
2026-05-22

AI Technical Summary

Technical Problem

In existing technologies, high-speed cameras are expensive, while ordinary cameras have low frame rates and low resolution, making it impossible to accurately fit the flight trajectory and landing point of the badminton shuttlecock, and thus impossible to accurately analyze the state of the badminton shuttlecock's motion.

Method used

The location of the target object is reconstructed based on multiple frames of images captured by a camera. The initial motion range is determined and corrected. Trajectory fitting and landing point prediction are performed in combination with the actual situation. Position information is accurately extracted using multiple frames of images, and parameters are gradually adjusted to improve the accuracy of trajectory fitting and landing point prediction.

Benefits of technology

Even with errors, it can accurately track the movement of the target object, improving the accuracy of trajectory fitting and landing point prediction, and enabling accurate analysis of the target object's motion state.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119722918B_ABST
    Figure CN119722918B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of computer vision, and discloses a target object motion state analysis method, device and equipment, the method comprising the following steps: reconstructing based on multiple images shot by a camera during target object motion to obtain multiple position points; determining an initial motion interval of the target object based on a preset starting point and a preset landing point; correcting the initial motion interval to obtain a target motion interval; performing trajectory fitting based on the target motion interval to obtain a flight trajectory; and performing prediction based on the flight trajectory to obtain a predicted landing point. The application preliminarily determines the initial motion interval by extracting the position information of the target object, thereby obtaining an accurate target motion interval; the flight trajectory is obtained by performing trajectory fitting based on the target motion interval, which is helpful for intuitively understanding the motion state of the target object; the landing point of the target object is predicted based on the trajectory, and the accuracy of trajectory fitting and landing point prediction is improved, so that accurate analysis of the motion state of the target object is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computer vision technology, and specifically to a method, apparatus, and device for analyzing the motion state of a target object. Background Technology

[0002] With the continuous development of sports, Hawk-Eye challenges in sporting events have become an important tool for maintaining fairness. Taking badminton as an example, Hawk-Eye challenges can distinguish the flight path and landing point of a high-speed shuttlecock. Furthermore, during athletes' daily training, acquiring the shuttlecock's flight trajectory and landing point allows for analysis and guidance of individual athletes' abilities. Therefore, how to fit the shuttlecock's flight trajectory and predict its landing point is a problem that needs to be solved.

[0003] Currently, multiple cameras are typically used to film athletes during matches or training. Based on the captured footage of the shuttlecock's flight, its position is calculated, its trajectory is fitted, and its landing point is determined. However, high-speed cameras are expensive, while ordinary cameras, due to their low frame rate and low resolution, cannot reconstruct the shuttlecock's position in every frame. This results in an inability to accurately fit the flight trajectory and predict the landing point, thus hindering accurate analysis of the shuttlecock's motion. Summary of the Invention

[0004] In view of this, the present invention provides a method, apparatus and device for analyzing the motion state of a target object, so as to solve the problem of being unable to accurately analyze the motion state of a target object.

[0005] In a first aspect, the present invention provides a method for analyzing the motion state of a target object, the method comprising:

[0006] Reconstruction is performed based on multiple frames of images captured by the camera during the movement of the target object, resulting in multiple position points of the target object. Each position point is represented by the three-dimensional coordinates of the target object in a coordinate system with the long side of the field as the horizontal axis and the short side as the vertical axis, and the time point. The multiple position points of the target object are arranged in chronological order of the time points.

[0007] The initial movement range of the target object is determined based on the preset start point and preset landing point among multiple location points of the target object;

[0008] The initial motion range of the target object is corrected to obtain the target motion range of the target object;

[0009] The flight trajectory of the target object is obtained by fitting the target motion range of the target object.

[0010] Based on the flight trajectory of the target object, the predicted landing point of the target object is obtained.

[0011] The motion state analysis method for a target object provided in this invention accurately extracts the position information of the target object from multiple frames of images, and preliminarily determines the initial motion range of the target object based on a preset start point and landing point. This is then corrected based on actual conditions. This method can obtain an accurate target motion range even when there is some error in the initial motion range, thus enabling continuous tracking of the target object's motion. Trajectory fitting is performed based on the target motion range to obtain an accurate flight trajectory of the target object, which helps to intuitively understand the target object's motion state. Prediction based on the fitted trajectory can more accurately predict the target object's landing point, improving the accuracy of trajectory fitting and landing point prediction, thereby achieving accurate analysis of the target object's motion state.

[0012] In one optional implementation, the initial movement range of the target object is determined based on a preset start point and a preset landing point among multiple location points of the target object, including:

[0013] From multiple locations of the target object, the preset start point, the location between the preset start point and the preset landing point, and the preset landing point are determined as the initial location points;

[0014] Determine the first position point corresponding to the minimum x-coordinate and the second position point corresponding to the maximum x-coordinate from the initial position points;

[0015] Decrease the x-coordinate of the first position point by a preset step size until the flight direction of the target object changes, and obtain the third position point;

[0016] The horizontal coordinate of the second position point is increased by a preset step size until the flight direction of the target object changes, thus obtaining the fourth position point.

[0017] From the multiple position points of the target object, the third position point, all position points between the third and fourth position points, and the fourth position point are determined as the initial movement range of the target object.

[0018] The motion state analysis method for a target object provided in this invention determines the initial position point from multiple position points of the target object based on a preset start point and a preset landing point, reducing unnecessary data processing. From the initially selected initial position points, the method finds the first position point corresponding to the minimum horizontal coordinate and the second position point corresponding to the maximum horizontal coordinate. By decreasing the horizontal coordinate of the first position point and increasing the horizontal coordinate of the second position point, the range of position points is expanded, thereby obtaining the complete motion range of the target object more accurately. This helps improve the accuracy of the overall analysis and makes subsequent trajectory fitting and landing point prediction more reliable.

[0019] In one optional implementation, the initial motion range of the target object is corrected to obtain the target motion range of the target object, including:

[0020] Project all position points in the initial motion range of the target object to obtain multiple projection points;

[0021] For any two projection points among multiple projection points, determine the number of projection points within a preset range of the line based on the other projection points besides the two projection points.

[0022] The line with the most corresponding projection points among all the lines formed by multiple projection points is taken as the target line.

[0023] Among the multiple projection points corresponding to all positions in the initial motion range, projection points that are not within the preset range of the target line are identified as outlier projection points.

[0024] Outlier projection points are removed from multiple projection points, and the removed projection points are restored to obtain the target motion range of the target object.

[0025] The motion state analysis method for a target object provided in this invention analyzes the motion state of a target object by projecting all position points in the initial motion interval onto a plane to obtain multiple projection points, which facilitates subsequent geometric processing and calculation. For any two projection points forming a straight line, the number of projection points within a preset range of the line is determined, and the line with the most projection points is selected as the target line, which best represents the distribution trend of most projection points. Outlier projection points that are not within the preset range of the target line are identified and removed, resulting in a target motion interval that better fits the actual motion trend of the target object, thereby more accurately fitting the motion trajectory of the target object.

[0026] In one optional implementation, trajectory fitting is performed based on the target motion range of the target object to obtain the flight trajectory of the target object, including:

[0027] The highest point in the target motion range of the target object is taken as the air resistance dividing point, and the number of points between the air resistance dividing point and the point with the largest horizontal coordinate is determined.

[0028] If the number of position points is less than the preset number, the air resistance boundary point and the number of position points are re-determined in descending order of position point height until the number of position points is greater than the preset number, and the target air resistance boundary point is obtained.

[0029] Project all points located between the target air resistance boundary point and the point with the largest x-coordinate to obtain multiple fitted projection points;

[0030] For any two fitted projection points, based on the other fitted projection points among all fitted projection points excluding the two fitted projection points, determine the average distance from the other fitted projection points to the straight line formed by the two fitted projection points.

[0031] The line with the smallest average distance among all the lines formed by multiple fitted projection points is taken as the projection line.

[0032] The flight trajectory of the target object is obtained by trajectory matching based on the projected straight line.

[0033] The motion state analysis method for the target object provided in this embodiment of the invention ensures sufficient position points for fitting by gradually adjusting the air resistance boundary point. By selecting the straight line with the smallest average distance as the projection line, it can better capture the motion trend of the target object and further improve the accuracy of the trajectory. The method of gradual adjustment and verification ensures the rationality of the flight trajectory and enhances the reliability of the entire analysis process.

[0034] In one optional implementation, trajectory matching is performed based on the projected straight line to obtain the flight trajectory of the target object, including:

[0035] Based on the target air resistance boundary point, the location of the next time point after the target air resistance boundary point, and the time interval between the target air resistance boundary point and the next time point, the estimated flight speed and estimated flight pitch angle of the target object are determined.

[0036] Determine the estimated air resistance;

[0037] Based on the estimated flight speed, estimated flight pitch angle, estimated air resistance, and the target air resistance boundary point, the motion state of the target object at the next time point is determined. The motion state includes the position, flight speed, and flight acceleration.

[0038] Repeat the above process of determining the motion state of the target object at the next time point until the height corresponding to the position point in the motion state of the target object is less than the preset threshold to obtain the simulated trajectory.

[0039] By changing the estimated flight speed and estimated flight pitch angle, the process of obtaining the simulated trajectory described above is repeated to obtain multiple simulated trajectories;

[0040] For any simulated trajectory, all position points between the target air resistance boundary point and the position point with the largest x-coordinate are matched with the simulated trajectory at time points to obtain matching point pairs, and the number of matching point pairs that meet the distance condition and the average distance are determined.

[0041] If the number of maximum matching point pairs corresponding to multiple simulated trajectories is less than half the number of all position points between the target air resistance boundary point and the position point with the largest abscissa, the estimated air resistance is changed, and the process returns to the step of determining the motion state of the target object at the next time point based on the estimated flight speed, estimated flight pitch angle, estimated air resistance, and the target air resistance boundary point, until the number of maximum matching point pairs is greater than half the number of all position points between the target air resistance boundary point and the position point with the largest abscissa. The simulated trajectory with the smallest average distance among at least one simulated trajectory with the maximum number of matching point pairs is determined as the flight trajectory of the target object.

[0042] The motion state analysis method for the target object provided in this invention can gradually approximate the actual flight trajectory by iteratively optimizing the estimated flight speed, estimated flight pitch angle, and estimated air resistance. In each iteration, by adjusting the parameters and recalculating the simulated trajectory, and by selecting the trajectory with the maximum number of matching point pairs and the smallest average distance through time point matching and distance condition filtering, the error is further reduced and the reliability and accuracy of trajectory fitting are improved.

[0043] In an optional implementation, before determining the estimated flight speed and estimated flight pitch angle of the target object based on the target air resistance threshold, the position of the next time point after the target air resistance threshold, and the time interval between the target air resistance threshold and the position of the next time point, the method further includes:

[0044] Using the projected straight line as the horizontal axis and the projection point of the target air resistance boundary point as the origin of the horizontal axis, the coordinates of all position points located between the target air resistance boundary point and the position point with the largest horizontal coordinate are transformed to obtain the two-dimensional coordinates of all position points.

[0045] The motion state analysis method for target objects provided in this invention reduces computational complexity and improves computational efficiency by uniformly transforming all position points into a two-dimensional coordinate system to obtain two-dimensional coordinates.

[0046] In one optional implementation, the predicted landing point of the target object is obtained by predicting its flight trajectory, including:

[0047] Based on the last and second-to-last positions in the target object's flight trajectory, the predicted landing point of the target object is obtained.

[0048] The motion state analysis method for a target object provided in this embodiment of the invention can accurately predict the landing point of the target object by considering that the last two position points can represent the changes before and after the landing point.

[0049] In one alternative implementation, the method further includes:

[0050] Based on the preset landing point and the predicted landing point, the confidence level of the predicted landing point is determined.

[0051] The motion state analysis method for a target object provided in this embodiment of the invention determines the confidence level of the predicted landing point by combining the preset landing point among multiple reconstructed location points of the target object with the predicted landing point, thereby evaluating the accuracy of trajectory fitting and landing point prediction.

[0052] In a second aspect, the present invention provides a motion state analysis device for a target object, the device comprising:

[0053] The reconstruction module is used to reconstruct multiple positions of the target object based on multiple frames of images captured by the camera during the movement of the target object. Each position is represented by the three-dimensional coordinates of the target object in a coordinate system with the long side of the field as the horizontal axis and the short side as the vertical axis, and the time point.

[0054] The first determining module is used to determine the initial movement range of the target object based on a preset start point and a preset landing point among multiple position points of the target object;

[0055] The correction module is used to correct the initial motion range of the target object to obtain the target motion range of the target object;

[0056] The fitting module is used to fit the trajectory based on the target motion range of the target object to obtain the flight trajectory of the target object.

[0057] The prediction module is used to predict the target object's landing point based on its flight trajectory.

[0058] Thirdly, the present invention provides a computer device, including: a memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, and the processor executing the computer instructions to perform the motion state analysis method of the target object described in the first aspect or any corresponding embodiment.

[0059] Fourthly, the present invention provides a computer-readable storage medium storing computer instructions for causing a computer to execute the motion state analysis method of the target object described in the first aspect or any corresponding embodiment. Attached Figure Description

[0060] To more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0061] Figure 1 This is a flowchart illustrating the motion state analysis method for a target object according to an embodiment of the present invention;

[0062] Figure 2 This is a schematic diagram illustrating an application scenario of the motion state analysis method for a target object according to an embodiment of the present invention;

[0063] Figure 3 This is a structural block diagram of a motion state analysis device for a target object according to an embodiment of the present invention;

[0064] Figure 4 This is a schematic diagram of the hardware structure of a computer device according to an embodiment of the present invention. Detailed Implementation

[0065] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0066] Taking a badminton shuttlecock as an example, this invention analyzes the shuttlecock's motion state, including its flight trajectory and landing point, to provide support for analyzing and guiding athletes' individual abilities and for scenarios such as Eagle Eye challenges. Currently, multiple cameras are typically used to capture footage of the shuttlecock's flight, calculate its position, fit its flight trajectory, and determine its landing point. However, high-speed cameras are expensive, while ordinary cameras, due to their low frame rate and low resolution, cannot reconstruct the shuttlecock's position in each frame, resulting in an inaccurate fit of the flight trajectory and an inability to accurately predict the landing point, thus hindering accurate analysis of the shuttlecock's motion state. The motion state analysis method for a target object provided in this invention obtains an accurate target motion range even with a certain degree of error, enabling continuous tracking of the target object's motion and obtaining an accurate flight trajectory. This facilitates an intuitive understanding of the target object's motion state. Based on the fitted trajectory, predictions can more accurately predict the target object's landing point, improving the accuracy of trajectory fitting and landing point prediction, thereby achieving accurate analysis of the target object's motion state.

[0067] According to an embodiment of the present invention, a method for analyzing the motion state of a target object is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0068] This embodiment provides a method for analyzing the motion state of a target object, which can be used in electronic devices. Figure 1 This is a flowchart of a motion state analysis method for a target object according to an embodiment of the present invention, such as... Figure 1 As shown, the process includes the following steps:

[0069] Step S101 involves reconstructing multiple position points of the target object based on multiple frames captured by the camera during the object's movement. Each position point is represented by the target object's three-dimensional coordinates and time point in a coordinate system with the longer side of the field as the horizontal axis and the shorter side as the vertical axis. The multiple position points of the target object are arranged in chronological order according to their time points. Specifically, Figure 2 This is a schematic diagram illustrating an application scenario of the motion state analysis method for a target object according to an embodiment of the present invention, such as... Figure 2 As shown, this embodiment of the invention uses a badminton shuttlecock as an example. Multiple cameras can be installed within the badminton court to capture images as the user hits the shuttlecock. An existing object detection model is used to identify the two-dimensional position of the shuttlecock in each frame of the image. Then, an existing three-dimensional reconstruction algorithm is used to convert the two-dimensional position of the shuttlecock into three-dimensional coordinates, thus obtaining the position point of the shuttlecock in each frame of the image. Any position point can be represented by (x, y, z, t), where (x, y, z) represents the three-dimensional coordinates of the shuttlecock in a coordinate system with the longer side of the badminton court as the horizontal axis and the shorter side as the vertical axis, and t represents the time point when the image was captured.

[0070] Step S102: Based on the preset start point and preset landing point among multiple position points of the target object, determine the initial movement range of the target object. Specifically, the preset start point and preset landing point are the hitting point and landing point of a single shot selected by the user from multiple position points. Assume user A and user B are playing badminton. User A serves first, user B hits after receiving the shuttlecock, user A hits again after receiving the shuttlecock, user B misses the shuttlecock, and the shuttlecock lands directly. The process from user A's last hit to the shuttlecock landing directly is considered one shot. Since this embodiment of the invention is used to analyze the motion state of the badminton shuttlecock, that is, to determine the flight trajectory and landing point of the shuttlecock, and for landing point prediction, since there is no landing point during the process where both users can receive the shuttlecock, the user can directly select the hitting point and landing point of the last shot to analyze the flight trajectory and final landing point of the shuttlecock in the last shot. Based on the preset start point and preset landing point of the last shot selected by the user, the initial movement range of the badminton shuttlecock is determined.

[0071] Step S103: Correct the initial motion range of the target object to obtain the target motion range of the target object. Specifically, due to reasons such as the user not seeing clearly, the ball being obscured, or the camera being blurry, the preset start point and preset landing point selected by the user may be inaccurate, and the initial motion range determined thus will also have errors. Therefore, the initial motion range can be corrected to obtain the accurate target motion range of the badminton shuttlecock, which helps to improve the accuracy of the overall analysis and makes the subsequent trajectory fitting and landing point prediction more reliable.

[0072] Step S104: Perform trajectory fitting based on the target motion range of the target object to obtain the flight trajectory of the target object. Specifically, since the target motion range is composed of multiple discrete position points, trajectory fitting is required based on the target motion range to obtain a flight trajectory that represents the complete and continuous motion process of the badminton shuttlecock.

[0073] Step S105: Based on the flight trajectory of the target object, a prediction is made to obtain the predicted landing point of the target object. Specifically, the flight trajectory of the shuttlecock in the last shot has been obtained through the above steps. Based on this flight trajectory, which can represent the movement trend of the shuttlecock, the final landing point of the shuttlecock is predicted.

[0074] The motion state analysis method for a target object provided in this invention accurately extracts the position information of the target object from multiple frames of images, and preliminarily determines the initial motion range of the target object based on a preset start point and landing point. This is then corrected based on actual conditions. This method can obtain an accurate target motion range even when there is some error in the initial motion range, thus enabling continuous tracking of the target object's motion. Trajectory fitting is performed based on the target motion range to obtain an accurate flight trajectory of the target object, which helps to intuitively understand the target object's motion state. Prediction based on the fitted trajectory can more accurately predict the target object's landing point, improving the accuracy of trajectory fitting and landing point prediction, thereby achieving accurate analysis of the target object's motion state.

[0075] This embodiment provides a method for analyzing the motion state of a target object, which can be used in the aforementioned electronic device. The method specifically includes the following steps:

[0076] Step S201: Reconstruct multiple position points of the target object based on multiple frames of images captured by the camera during the target object's movement. Each position point is represented by the target object's three-dimensional coordinates and time point in a coordinate system with the longer side of the field as the horizontal axis and the shorter side as the vertical axis. The multiple position points of the target object are arranged in chronological order. For details, please refer to... Figure 1 Step S101 of the illustrated embodiment will not be described again here.

[0077] Step S202: Determine the initial movement range of the target object based on the preset start point and preset landing point among multiple position points of the target object.

[0078] Specifically, step S202 includes:

[0079] Step S2021: From multiple position points of the target object, determine the preset start point, the position point between the preset start point and the preset landing point, and the preset landing point as the initial position points. Specifically, assuming the user selects the Lth position point as the preset start point and the Rth position point as the preset landing point, the position point between the Lth and Rth position points, the Lth position point, and the Rth position point from the multiple position points of the badminton shuttlecock obtained in step S201 are jointly determined as the initial position points. Since the multiple position points of the badminton shuttlecock are arranged in chronological order, it actually determines the position point between the time point of the Lth position point and the time point of the Rth position point. At the same time, combining the Lth and Rth position points ensures that the obtained initial position points belong to the same racket.

[0080] Step S2022: Determine the first position point corresponding to the minimum x-coordinate and the second position point corresponding to the maximum x-coordinate from the initial position points. Specifically, determine the first position point with the minimum x-coordinate from the initial positions, which is the position point closest to one side of the badminton court boundary. At the same time, determine the second position point with the maximum x-coordinate, which is the position point closest to the other side of the badminton court boundary.

[0081] Step S2023: Decrease the x-coordinate of the first position point by a preset step size until the flight direction of the target object changes, thus obtaining the third position point. Specifically, since users may have errors when selecting the preset start point and preset landing point—for example, the preset start point may not be the actual hitting point of the badminton shuttlecock, or the preset landing point may not be the actual landing point—and the flight direction of the badminton shuttlecock changes before and after hitting and landing, based on this characteristic, the boundary can be expanded according to the two position points closest to the left and right boundaries to determine the position point where the flight direction changes. First, assuming the first position point is closest to the left boundary, the boundary of the first position point is expanded. The x-coordinate of the first position point is 20, and the preset step size is 1. The x-coordinate of the first position point is gradually decreased. When the x-coordinate is 19, the position points with x-coordinates of 19 and 21 are determined from the multiple position points of the badminton shuttlecock. The first vector formed by the position point with x-coordinate 19 and the first position point, and the second vector formed by the first position point and the position point with x-coordinate 21 are determined. If the directions of the first and second vectors are not the same, the shuttlecock's flight direction is considered to have changed before and after the first position point, and this first position point is determined as the third position point. If the directions of the first and second vectors are the same, the x-coordinate of the first position point is decreased, and the above process is repeated until the third position point where the flight direction has changed is obtained.

[0082] Step S2024: Increase the x-coordinate of the second position point by a preset step size until the flight direction of the target object changes, obtaining the fourth position point. Specifically, assuming the second position point is closest to the right boundary, extend the boundary as described in step S2023 to obtain the fourth position point. Based on the characteristic that the flight direction of the badminton shuttlecock changes before and after being hit and landing, extend the boundary through steps S2023 and S2024 to obtain the third and fourth position points. However, during the flight of the badminton shuttlecock, factors such as wind speed, spin, and gravity also affect its flight direction. Using the third or fourth position point as the final landing point is not accurate. Therefore, it is necessary to accurately obtain the flight trajectory of the badminton shuttlecock to more accurately predict its landing point.

[0083] Step S2025: From the multiple position points of the target object, the third position point, all position points between the third and fourth position points, and the fourth position point itself are determined as the initial motion range of the target object. Specifically, since the flight direction of the badminton shuttlecock changes between the third and fourth position points, it is assumed that the third position point is the hitting point of the shuttlecock, and the fourth position point is the landing point of the shuttlecock. All position points between the third and fourth position points are collectively considered as the initial motion range of the shuttlecock. Optionally, the third position point can also be assumed to be the landing point, and the fourth position point to be the hitting point. By determining the initial position points, unnecessary data processing is reduced. From the initially selected initial position points, the first position point corresponding to the minimum horizontal coordinate and the second position point corresponding to the maximum horizontal coordinate are found. Boundary expansion is performed based on the first and second position points, thereby obtaining the complete motion range of the target object more accurately. This helps improve the accuracy of the overall analysis and makes subsequent trajectory fitting and landing point prediction more reliable.

[0084] Step S203: Correct the initial motion range of the target object to obtain the target motion range of the target object.

[0085] Specifically, step S203 includes:

[0086] Step S2031 involves projecting all position points within the initial motion range of the target object to obtain multiple projection points. Specifically, all position points within the initial motion range are projected onto a plane to obtain multiple projection points, which facilitates subsequent geometric processing and calculations.

[0087] Step S2032: For a straight line formed by any two projection points among multiple projection points, determine the number of projection points within a preset range of the straight line based on the other projection points besides the two projection points. Specifically, for any projection point other than the two projection points forming the straight line, calculate the distance from the projection point to the straight line. If the distance is less than 10cm, then the projection point is within the preset range of the straight line. Here, 10cm is merely an example and not a limitation. Through the above process, the distance to each projection point other than the two projection points forming the straight line can be calculated and judged, thereby determining the number of projection points within the preset range of the straight line.

[0088] Step S2033: The line with the most corresponding projection points among all the lines formed by multiple projection points is taken as the target line. Specifically, if any two projection points can form a line, then multiple projection points can produce multiple lines. Based on the number of projection points within a preset range of each line obtained in step S2032 above, the line with the most projection points is taken as the target line, which best represents the distribution trend of most projection points and indicates the main direction of badminton movement.

[0089] Step S2034: Among the multiple projection points corresponding to all the position points in the initial motion interval, the projection points not within the preset range of the target line are determined as outlier projection points. Specifically, the outlier projection points are not within the preset range of the target line, that is, they are not consistent with the main motion direction of the badminton, and there may be relatively large errors.

[0090] Step S2035: Remove the outlier projection points from the multiple projection points, and restore the projection points after removal to obtain the target motion interval of the target object. Specifically, since there may be relatively large errors in the outlier projection points, it is necessary to remove them and restore the projection points after removal to obtain a target motion interval that better fits the actual motion trend of the badminton, so as to more accurately fit the motion trajectory of the target object.

[0091] Step S204: Based on the target motion interval of the target object, perform trajectory fitting to obtain the flight trajectory of the target object.

[0092] Specifically, the above Step S204 includes:

[0093] Step S2041: Take the position point with the highest height in the target motion interval of the target object as the air resistance demarcation point, and determine the number of position points between the air resistance demarcation point and the position point with the largest abscissa. Specifically, assume that there is an air resistance demarcation point during the motion of one shot. The air resistance coefficient k1 is constant before the moment corresponding to this air resistance demarcation point, and the air resistance coefficient k2 is constant after this moment. Generally speaking, k1 < k2, and this demarcation moment will come after the badminton flight speed is lower than a certain threshold. Assume that the position point with the earliest time point in the target motion interval is the Mth position point, and the position point with the latest time point is the Nth position point. Since the embodiment of the present invention needs to predict the landing point of the badminton, and the flight trajectory between the Mth position point and the position point corresponding to the air resistance demarcation point will not land, so Step S204 only elaborates on the fitting of the flight trajectory between the position point corresponding to the air resistance demarcation point and the Nth position point. First, assume that the position point with the highest height in the target motion interval is the air resistance demarcation point. Since the abscissa of the badminton will change with time during flight, that is, the position point with the largest abscissa is the same as the position point with the latest time point, that is, the position point with the largest abscissa is also the Nth position point. Determine the number of position points between the position point corresponding to the air resistance demarcation point and the Nth position point from all the position points in the target motion interval.

[0094] Step S2042: If the number of position points is less than a preset number, the air resistance boundary point and the number of position points are re-determined in descending order of position point height until the number of position points exceeds the preset number, thus obtaining the target air resistance boundary point. Specifically, assuming the preset number is 5 and the number of position points is 4, the number of position points in the latter half of the boundary time is too small to fit the data, so the air resistance boundary point needs to be adjusted. During adjustment, the position points are arranged in descending order of height until the number of position points between the position point corresponding to the air resistance boundary point and the Nth position point exceeds the preset number, thus obtaining the target air resistance boundary point. This ensures that there are enough position points for trajectory fitting, improving the reliability and accuracy of trajectory fitting. Optionally, the target air resistance boundary point can be represented by the Kth position point.

[0095] Step S2043 involves projecting all position points located between the target air resistance boundary point and the position point with the largest x-coordinate to obtain multiple fitted projection points. Specifically, based on steps S2041 and S2042, the target air resistance boundary point is determined. Due to the Earth's rotation, the badminton shuttlecock will deflect clockwise during its flight in the Northern Hemisphere. Therefore, it is necessary to refit a trajectory that conforms to the actual situation using the position points between the Kth and Nth position points. First, the position points used for trajectory fitting are projected to obtain fitted projection points, which facilitates subsequent calculations.

[0096] Step S2044: For any two fitted projection points, based on all fitted projection points other than the two fitted projection points, determine the average distance from the other fitted projection points to the straight line formed by the two fitted projection points. Specifically, make any two fitted projection points form a straight line. For any fitted projection point other than the two fitted projection points, determine the distance between that fitted projection point and the straight line. By determining the distance of each other fitted projection point, obtain the average distance.

[0097] Step S2045: Among all the straight lines formed by multiple fitted projection points, the line with the smallest average distance is taken as the projection line. Specifically, multiple fitted projection points can form multiple straight lines. Step S2044 can obtain the average distance corresponding to each straight line. The line with the smallest average distance is taken as the projection line, representing the flight direction of the badminton shuttlecock.

[0098] Step S2046: Perform trajectory matching based on the projected straight line to obtain the flight trajectory of the target object. Specifically, match the projected straight line with the reconstructed position points of the badminton shuttlecock to further accurately obtain its flight trajectory.

[0099] In some optional implementations, step S2046 above includes:

[0100] Step a1: Using the projected line as the horizontal axis and the projection point of the target air resistance boundary point as the origin of the horizontal axis, perform coordinate transformation on all position points located between the target air resistance boundary point and the position point with the largest horizontal coordinate to obtain the two-dimensional coordinates corresponding to all position points. Specifically, using the projected line obtained in the above steps as the horizontal axis of the new coordinate system, and the projection point of the target air resistance boundary point as the origin of the new coordinate system, correspondingly, using the direction perpendicular to the projected line as the vertical axis of the new coordinate system, perform coordinate transformation on the position points between the Kth position point and the Nth position point in the new coordinate system, converting the three-dimensional coordinates into two-dimensional coordinates. Thus, any position point between the Kth position point and the Nth position point can be represented by two-dimensional coordinates and a time point.

[0101] Step a2: Based on the target air resistance threshold, the position of the next time point after the target air resistance threshold, and the time interval between the target air resistance threshold and the next time point, determine the estimated flight speed and estimated flight pitch angle of the target object. Specifically, based on the two-dimensional coordinates of the Kth position point and the two-dimensional coordinates of the (K+1)th position point, determine the displacement and time interval between the two position points. Based on the displacement and time interval, determine the estimated flight speed and estimated flight pitch angle.

[0102] Step a3: Determine the estimated air resistance. Specifically, the user can set the estimated air resistance themselves.

[0103] Step a4: Based on the estimated flight speed, estimated flight pitch angle, estimated air resistance, and the target air resistance boundary point, determine the motion state of the target object at the next time point. The motion state includes position, flight speed, and flight acceleration. Specifically, using the following formula (1), based on the estimated flight speed, flight pitch angle, and air resistance, starting from the Kth position point corresponding to the target air resistance boundary point, calculate the motion state of the (K+1)th position point, which is the motion state at the next time point after the time point corresponding to the target air resistance boundary point. Optionally, the flight pitch angle can help determine the direction of the flight acceleration.

[0104]

[0105] Among them, X t X represents the position of the badminton shuttlecock at time t; t+1 This represents the position of the badminton shuttlecock at time t+1; v t a represents the speed of the shuttlecock at time t; t The value of a represents the acceleration of the badminton shuttlecock at time t; T represents the time interval between time t and time t+1; a t+1 The value represents the acceleration of the badminton shuttlecock at time t+1; k represents the estimated air resistance; and g represents the acceleration due to gravity.

[0106] Step a5: Repeat the above process of determining the motion state of the target object at the next time point until the height corresponding to the position point in the motion state of the target object is less than the preset threshold, and obtain the simulated trajectory. Specifically, the motion state of the badminton shuttlecock at each time point can be obtained by using the above formula (1), starting from the Kth position point corresponding to the target air resistance boundary point. When the height of the position point calculated in a certain time is less than 0, the motion state of the badminton shuttlecock at each time point is taken as a simulated trajectory.

[0107] Step a6: Change the estimated flight speed and estimated flight pitch angle, and repeat the process of obtaining the simulated trajectory to obtain multiple simulated trajectories. Specifically, by changing the estimated flight speed and estimated flight pitch angle and repeating steps a4 and a5, different simulated trajectories of the badminton shuttlecock can be obtained.

[0108] Step a7: For any simulated trajectory, all position points between the target air resistance boundary point and the position point with the largest abscissa are matched with the simulated trajectory at specific times to obtain matching point pairs. The number of matching point pairs that meet the distance condition and the average distance are then determined. Specifically, the position points between the Kth and Nth position points are matched with any simulated trajectory, representing two position points at the same time point as a matching point pair. It is determined whether any matching point pair meets the distance condition, thereby determining the number of matching point pairs that meet the distance condition. This distance condition can be that the distance difference between the two position points in a matching point pair is less than 5 cm. Simultaneously, the Euclidean distance between the two position points in each matching point pair that meets the distance condition is calculated, thereby obtaining the average distance of all matching point pairs that meet the distance condition. Optionally, other distance calculation methods can also be used to calculate the average distance of matching point pairs; this embodiment of the invention does not limit this.

[0109] Step a8: If the number of maximum matching point pairs corresponding to multiple simulated trajectories is less than half the number of all position points between the target air resistance boundary point and the position point with the largest horizontal coordinate, change the estimated air resistance and return to the step of determining the motion state of the target object at the next time point based on the estimated flight speed, estimated flight pitch angle, estimated air resistance, and the target air resistance boundary point. This process continues until the number of maximum matching point pairs is greater than half the number of all position points between the target air resistance boundary point and the position point with the largest horizontal coordinate. The simulated trajectory with the smallest average distance among at least one simulated trajectory with the maximum number of matching point pairs is determined as the flight trajectory of the target object. Specifically, the simulated trajectory with the most matching points is determined from multiple simulated trajectories. It is then determined whether the number of matching point pairs is less than half the number of position points between the Kth position point and the Nth position point. If it is less, the estimated air resistance set in step a3 is considered unreasonable and needs to be adjusted. Based on the adjusted estimated air resistance, the process returns to step a4 to redetermine multiple simulated trajectories until the number of matching point pairs meets the requirements. Since there may be more than one simulated trajectory among multiple simulated trajectories that has the most matching point pairs and meets the above requirements, the simulated trajectory with the smallest average distance is taken as the final flight trajectory of the badminton shuttlecock. By iteratively optimizing the estimated flight speed, estimated flight pitch angle, and estimated air resistance, the actual flight trajectory can be gradually approximated. In each iteration, by adjusting the parameters and recalculating the simulated trajectory, and by filtering through time point matching and distance conditions, the trajectory with the largest number of matching point pairs and the smallest average distance is selected, further reducing errors and improving the reliability and accuracy of trajectory fitting.

[0110] In some optional implementations, step S204 only fits the flight trajectory between the target air resistance boundary point and the position point with the largest x-coordinate. If it is necessary to fit the flight trajectory between the position point with the smallest x-coordinate and the target air resistance boundary point, step S204 can be referred to. However, the simulation termination condition in step a5 is changed to the time point corresponding to the target air resistance boundary point. At the same time, the range of estimated air resistance is larger, and the distance condition for matching point pairs is more relaxed. The requirement for the number of matching point pairs in step a8 can be adjusted to be greater than one-quarter of the number of position points between the position point with the smallest x-coordinate and the target air resistance boundary.

[0111] Step S205: Based on the flight trajectory of the target object, a prediction is made to obtain the predicted landing point of the target object.

[0112] Specifically, step S205 includes:

[0113] Step S2051: Based on the last and second-to-last positions in the target object's flight trajectory, obtain the predicted landing point of the target object. Specifically, based on a straight line formed by the last and second-to-last positions, the intersection of this line and the ground, i.e., the coordinate obtained by substituting z=0 into the coordinates of this line, is used as the predicted landing point of the badminton shuttlecock.

[0114] In some alternative implementations, for extreme cases, such as when all simulated trajectories in step a8 do not meet the requirement for the number of matching point pairs, an accurate flight trajectory cannot be obtained. If it is still necessary to predict the landing point of the shuttlecock, the following two methods can be used for prediction. The first method is to use the trajectory of the shuttlecock bouncing on the ground to predict the landing point of the shuttlecock in reverse. A normal shuttlecock flight trajectory will only have one ascent and one descent. If an additional ascent and descent occurs in a low-altitude area, it can be considered as a bounce. In the case of a high-speed smash, the camera may not be able to capture the position of the shuttlecock, resulting in serious loss of reconstruction results. In this case, the landing point can be predicted in reverse using the bounce trajectory. The motion state of the shuttlecock during the bounce process can be referred to the above formula (1), but the gravitational acceleration needs to be reversed to simulate and deduce the motion state of the shuttlecock, and then predict the landing point. It should be noted that the shuttlecock may bounce multiple times, and the first bounce should be selected for calculation. The second method is to use a quadratic function to fit the landing point of the shuttlecock. If the reconstructed position of the shuttlecock is severely incomplete and discontinuous, then neither steps S201 to S205 nor the first method can yield a trajectory fitting result. In this case, we can only consider the existence of the air resistance coefficient in the horizontal direction, and assume that the shuttlecock has different constant accelerations during its ascent and descent in the vertical direction. Thus, we can consider the motion of the shuttlecock on the x-axis and z-axis respectively. As long as we know the starting point, ending point and time difference in the reconstructed shuttlecock result, we can solve for the initial velocity of the shuttlecock and fit the flight trajectory using a quadratic function equation. First, consider the x-axis, where the velocity in the x-axis direction is the positive root of the following equation (2).

[0115]

[0116] Among them, T p X represents the time difference between the start and end points; p k represents the displacement distance between the starting point and the ending point. p This indicates the preset air resistance; empirical values ​​are generally 0.03 and 0.003. F This indicates the initial velocity.

[0117] Next, consider the z-axis. The vertical component of the initial shuttlecock velocity is the positive root of equation (3). It should be noted that equation (3) may not have a real solution. Two possible solutions can be obtained by substituting two empirical values: U = 12, D = 6 and U = 11, D = 9. Here, U represents the acceleration of the shuttlecock as it rises, and D represents the acceleration of the shuttlecock as it falls. Taking the lowest point when the shuttlecock first enters the descent state as the endpoint and the other points as the starting points, calculate 0, 1, 2, or 4 possible initial velocities for each possible starting point using equation (3), as well as the corresponding velocities upon reaching the endpoint. Starting from the endpoint, using the initial velocities calculated above, calculate several possible landing points of the shuttlecock using a constant air resistance.

[0118]

[0119] Where U represents the acceleration of the shuttlecock as it rises; D represents the acceleration of the shuttlecock as it falls; T p The time difference between the start and end points; Z represents the net distance the shuttlecock travels during its descent; v F This indicates the initial velocity.

[0120] Generally, the estimated landing points obtained from the above process should be concentrated within a very small range. However, outliers may sometimes appear due to data anomalies. Enumerate each estimated landing point as a center and determine the number of other estimated landing points located within a 0.5m radius of that center. Select the estimated landing point corresponding to the center with the largest number of such points, filter out points outside the radius, and calculate the average position of the remaining estimated landing points as the final output predicted landing point.

[0121] Step S206: Based on the preset landing point and the predicted landing point, determine the confidence level of the predicted landing point. Specifically, the actual landing point of the badminton shuttlecock should be located within an ellipse centered on the predicted landing point. The maximum error between the user-selected preset landing point and the predicted landing point obtained in steps S201 to S205 is calculated in both the direction of the shuttlecock's movement and the direction perpendicular to the direction of movement. Within the range of the maximum error, the shuttlecock should satisfy a two-dimensional normal distribution with ρ = -0.5. The sum of the probabilities of the overlapping region between this normal distribution and a circle with radius R centered on the predicted landing point is calculated, which is the confidence level. Optionally, R can be 3cm or 5cm; this is just an example and is not a limitation. More specifically, multiple reconstructed position points of the shuttlecock are matched with the flight trajectory fitted in step S204, and the error vector between each pair of successfully matched position points is calculated. Matching can be performed according to time points or other indicators; this embodiment of the invention does not impose any limitations on this. Each error vector is decomposed into a component in the direction of movement and a component perpendicular to the direction of movement. The component with the largest absolute value in the forward direction is taken as the maximum error, and the average of the absolute values ​​of all components is taken as the variance of the two-dimensional ecological distribution in the forward direction. Then, the projected distance of each reconstructed location point in the direction perpendicular to the forward direction is calculated, and the projected distance with the largest absolute value among all projected distances is taken as the maximum error in the direction perpendicular to the forward direction. The average of the absolute values ​​of all projected distances is taken as the variance of the two-dimensional ecological distribution in the direction perpendicular to the forward direction.

[0122] In some alternative implementations, for the second method described above, that is, when using a quadratic function to fit the landing point of the badminton shuttlecock, the average landing point can be calculated based on multiple possible landing points, and the frequency of possible landing points within a radius R centered on the average landing point can be determined, and this frequency can be used as the confidence level.

[0123] The motion state analysis method for a target object provided in this invention accurately extracts the position information of the target object from multiple frames of images, and preliminarily determines the initial motion range of the target object based on a preset start point and landing point. This is then corrected based on actual conditions. This method can obtain an accurate target motion range even when there is some error in the initial motion range, thus enabling continuous tracking of the target object's motion. Trajectory fitting is performed based on the target motion range to obtain an accurate flight trajectory of the target object, which helps to intuitively understand the target object's motion state. Prediction based on the fitted trajectory can more accurately predict the target object's landing point, improving the accuracy of trajectory fitting and landing point prediction, thereby achieving accurate analysis of the target object's motion state.

[0124] This embodiment also provides a motion state analysis device for a target object, which is used to implement the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can refer to a combination of software and / or hardware that performs a predetermined function. Although the device described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0125] This embodiment provides a motion state analysis device for a target object, such as... Figure 3 As shown, it includes:

[0126] The reconstruction module 301 is used to reconstruct multiple positions of the target object based on multiple frames of images captured by the camera during the movement of the target object. Each position is represented by the three-dimensional coordinates of the target object in a coordinate system with the long side of the field as the horizontal axis and the short side as the vertical axis, and the time point.

[0127] The first determining module 302 is used to determine the initial movement range of the target object based on the preset start point and preset landing point among multiple position points of the target object.

[0128] The correction module 303 is used to correct the initial motion range of the target object to obtain the target motion range of the target object.

[0129] The fitting module 304 is used to perform trajectory fitting based on the target motion range of the target object to obtain the flight trajectory of the target object.

[0130] The prediction module 305 is used to predict the target object's landing point based on the target object's flight trajectory.

[0131] In some alternative implementations, the first determining module 302 includes:

[0132] The first determining unit is used to determine the preset starting point, the position point located between the preset starting point and the preset landing point, and the preset landing point as the initial position points from multiple position points of the target object.

[0133] The second determining unit is used to determine the first position point corresponding to the minimum horizontal coordinate and the second position point corresponding to the maximum horizontal coordinate from the initial position points.

[0134] The first adjustment unit is used to decrease the horizontal coordinate corresponding to the first position point by a preset step size until the flight direction of the target object changes, thus obtaining the third position point.

[0135] The second adjustment unit is used to increase the horizontal coordinate of the second position point by a preset step size until the flight direction of the target object changes, thus obtaining the fourth position point.

[0136] The third determining unit is used to determine the third position point, all position points between the third position point and the fourth position point, and the fourth position point as the initial motion range of the target object from multiple position points of the target object.

[0137] In some alternative implementations, the correction module 303 includes:

[0138] The first projection unit is used to project all position points in the initial motion range of the target object to obtain multiple projection points.

[0139] The fourth determining unit is used to determine the number of projection points within a preset range of the line formed by any two projection points among a plurality of projection points, based on the other projection points besides the two projection points.

[0140] The fifth determining unit is used to select the line with the most corresponding projection points among all the lines formed by multiple projection points as the target line.

[0141] The sixth determining unit is used to determine the projection points that are not within the preset range of the target straight line as outlier projection points among the multiple projection points corresponding to all position points in the initial motion interval.

[0142] The elimination unit is used to remove outlier projection points from multiple projection points, restore the removed projection points, and obtain the target motion range of the target object.

[0143] In some alternative implementations, the fitting module 304 includes:

[0144] The seventh determining unit is used to determine the number of position points between the highest position point in the target motion range of the target object and the position point with the largest horizontal coordinate, taking the highest position point as the air resistance dividing point.

[0145] The eighth determining unit is used to redetermine the air resistance boundary point and the number of position points in descending order of position point height when the number of position points is less than the preset number, until the number of position points is greater than the preset number, and thus obtain the target air resistance boundary point.

[0146] The second projection unit is used to project all position points located between the target air resistance boundary point and the position point with the largest horizontal coordinate, to obtain multiple fitted projection points.

[0147] The ninth determining unit is used to determine, for any two fitted projection points, the average distance from the other fitted projection points to the straight line formed by the two fitted projection points, based on the other fitted projection points among all fitted projection points excluding the two fitted projection points.

[0148] The tenth determining unit is used to select the line with the smallest average distance among all the lines formed by multiple fitted projection points as the projection line.

[0149] The matching unit is used to perform trajectory matching based on the projected straight line to obtain the flight trajectory of the target object.

[0150] In some alternative implementations, the matching unit includes:

[0151] The first determining sub-unit is used to determine the estimated flight speed and estimated flight pitch angle of the target object based on the target air resistance boundary point, the position point of the next time point of the target air resistance boundary point, and the time interval between the target air resistance boundary point and the position point of the next time point.

[0152] The second determining sub-unit is used to determine the estimated air resistance.

[0153] The third determining sub-unit is used to determine the motion state of the target object at the next time point based on the estimated flight speed, estimated flight pitch angle, estimated air resistance, and the target air resistance boundary point. The motion state includes the position point, flight speed, and flight acceleration.

[0154] The fourth determining subunit is used to repeat the process of determining the motion state of the target object at the next time point until the height corresponding to the position point in the motion state of the target object is less than the preset threshold, thus obtaining the simulated trajectory.

[0155] The unit is changed to alter the estimated flight speed and estimated flight pitch angle. The process of obtaining the simulated trajectory described above is repeated to obtain multiple simulated trajectories.

[0156] The matching sub-unit is used to match all position points between the target air resistance boundary point and the position point with the largest x-coordinate with the simulated trajectory in time for any simulated trajectory, obtain matching point pairs, and determine the number of matching point pairs that meet the distance condition and the average distance.

[0157] The fifth determining subunit is used to change the estimated air resistance and return to the step of determining the motion state of the target object at the next time point based on the estimated flight speed, estimated flight pitch angle, estimated air resistance, and the target air resistance boundary point when the number of maximum matching point pairs corresponding to multiple simulated trajectories is less than half the number of all position points between the target air resistance boundary point and the position point with the largest abscissa. This process continues until the number of maximum matching point pairs is greater than half the number of all position points between the target air resistance boundary point and the position point with the largest abscissa. The simulated trajectory with the smallest average distance among at least one simulated trajectory with the maximum number of matching point pairs is determined as the flight trajectory of the target object.

[0158] In some alternative embodiments, prior to the first determined subunit, the device further includes:

[0159] The conversion module is used to perform coordinate transformation on all position points located between the target air resistance boundary point and the position point with the largest horizontal coordinate, using the projected straight line as the horizontal axis and the projection point of the target air resistance boundary point as the origin of the horizontal axis, to obtain the two-dimensional coordinates of all position points.

[0160] In some alternative implementations, the prediction module 305 includes:

[0161] The prediction unit is used to obtain the predicted landing point of the target object based on the last and second-to-last positions in the target object's flight trajectory.

[0162] In some alternative embodiments, the device further includes:

[0163] The second determining module is used to determine the confidence level of the predicted landing point based on the preset landing point and the predicted landing point.

[0164] Further functional descriptions of the above modules and units are the same as those in the corresponding embodiments described above, and will not be repeated here.

[0165] In this embodiment, the motion state analysis device for the target object is presented in the form of a functional unit. Here, a unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that execute one or more software or fixed programs, and / or other devices that can provide the above functions.

[0166] This invention also provides a computer device having the above-described features. Figure 3 The device for analyzing the motion state of the target object shown.

[0167] Please see Figure 4 , Figure 4 This is a schematic diagram of the structure of a computer device provided in an optional embodiment of the present invention, such as... Figure 4As shown, the computer device includes one or more processors 10, memory 20, and interfaces for connecting the components, including high-speed interfaces and low-speed interfaces. The components communicate with each other via different buses and can be mounted on a common motherboard or otherwise installed as needed. The processors can process instructions executed within the computer device, including instructions stored in or on memory to display graphical information of a GUI on external input / output devices (such as display devices coupled to the interfaces). In some alternative implementations, multiple processors and / or multiple buses can be used with multiple memories and multiple memory modules, if desired. Similarly, multiple computer devices can be connected, each providing some of the necessary operations (e.g., as a server array, a group of blade servers, or a multiprocessor system). Figure 4 Take a processor 10 as an example.

[0168] Processor 10 may be a central processing unit, a network processor, or a combination thereof. Processor 10 may further include a hardware chip. The hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The programmable logic device may be a complex programmable logic device (CAMP), a field-programmable gate array (FPGA), a general-purpose array logic (GDA), or any combination thereof.

[0169] The memory 20 stores instructions executable by at least one processor 10 to cause the at least one processor 10 to perform the method shown in the above embodiments.

[0170] The memory 20 may include a program storage area and a data storage area. The program storage area may store the operating system and applications required for at least one function; the data storage area may store data created based on the use of the computer device. Furthermore, the memory 20 may include high-speed random access memory and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some alternative embodiments, the memory 20 may optionally include memory remotely located relative to the processor 10, and these remote memories may be connected to the computer device via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.

[0171] The memory 20 may include volatile memory, such as random access memory; the memory may also include non-volatile memory, such as flash memory, hard disk or solid-state drive; the memory 20 may also include a combination of the above types of memory.

[0172] The computer device also includes an input device 30 and an output device 40. The processor 10, memory 20, input device 30, and output device 40 can be connected via a bus or other means. Figure 4 Taking the example of a connection between China and Israel via a bus.

[0173] Input device 30 can receive input numerical or character information, and generate key signal inputs related to user settings and function control of the computer device, such as a touchscreen, keypad, mouse, trackpad, touchpad, joystick, one or more mouse buttons, trackball, joystick, etc. Output device 40 may include display devices, auxiliary lighting devices (e.g., LEDs), and haptic feedback devices (e.g., vibration motors). The aforementioned display devices include, but are not limited to, liquid crystal displays, light-emitting diodes, displays, and plasma displays. In some alternative embodiments, the display device may be a touchscreen.

[0174] This invention also provides a computer-readable storage medium. The methods described above according to embodiments of the invention can be implemented in hardware or firmware, or implemented as computer code that can be recorded on a storage medium, or implemented as computer code downloaded via a network and originally stored on a remote storage medium or a non-transitory machine-readable storage medium and then stored on a local storage medium. Thus, the methods described herein can be processed by software stored on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. The storage medium can be a magnetic disk, optical disk, read-only memory, random access memory, flash memory, hard disk, or solid-state drive, etc.; further, the storage medium can also include combinations of the above types of memory. It is understood that computers, processors, microprocessor controllers, or programmable hardware include storage components capable of storing or receiving software or computer code, which, when accessed and executed by the computer, processor, or hardware, implements the methods shown in the above embodiments.

[0175] A portion of this invention can be applied as a computer program product, such as computer program instructions, which, when executed by a computer, can invoke or provide the methods and / or technical solutions according to the invention through the operation of the computer. Those skilled in the art will 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 executing the instructions, or the computer compiling the instructions and then executing the corresponding compiled program, or the computer reading and executing the instructions, or the computer reading and installing the instructions and then executing the corresponding installed program. Here, the computer-readable medium can be any available computer-readable storage medium or communication medium accessible to a computer.

[0176] Although embodiments of the 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 invention, and all such modifications and variations fall within the scope defined by the invention.

Claims

1. A method for analyzing the motion state of a target object, characterized in that, The method includes: Based on the reconstruction of multiple frames of images captured by the camera during the movement of the target object, multiple position points of the target object are obtained. Each position point is represented by the three-dimensional coordinates of the target object in a coordinate system with the long side of the field as the horizontal axis and the short side as the vertical axis and the time point. The multiple position points of the target object are arranged in chronological order of the time points. Based on the preset start point and preset landing point among multiple location points of the target object, the initial movement range of the target object is determined; The initial motion range of the target object is corrected to obtain the target motion range of the target object; The flight trajectory of the target object is obtained by fitting the trajectory of the target object within the target motion range; Based on the flight trajectory of the target object, the predicted landing point of the target object is obtained; The step of correcting the initial motion range of the target object to obtain the target motion range of the target object includes: Project all position points in the initial motion range of the target object to obtain multiple projection points; For any two projection points among the plurality of projection points, the number of projection points within a preset range of the line is determined based on the other projection points besides the two projection points. The line with the most corresponding projection points among all the lines formed by the multiple projection points is taken as the target line. Among the multiple projection points corresponding to all position points in the initial motion interval, the projection points that are not within the preset range of the target straight line are determined as outlier projection points. The outlier projection points are removed from the plurality of projection points, and the removed projection points are restored to obtain the target motion range of the target object.

2. The method according to claim 1, characterized in that, The step of determining the initial movement range of the target object based on a preset start point and a preset landing point among multiple location points of the target object includes: From multiple location points of the target object, the preset start point, the location point between the preset start point and the preset landing point, and the preset landing point are determined as initial location points; From the initial position points, determine the first position point corresponding to the minimum x-coordinate and the second position point corresponding to the maximum x-coordinate; Decrease the x-coordinate of the first position point by a preset step size until the flight direction of the target object changes, and obtain the third position point; The horizontal coordinate of the second position point is increased by a preset step size until the flight direction of the target object changes, thus obtaining the fourth position point. From the multiple position points of the target object, the third position point, all position points located between the third position point and the fourth position point, and the fourth position point are determined as the initial movement range of the target object.

3. The method according to claim 1, characterized in that, The process of fitting the trajectory based on the target motion range of the target object to obtain the flight trajectory of the target object includes: The highest point in the target motion range of the target object is taken as the air resistance dividing point, and the number of points located between the air resistance dividing point and the point with the largest horizontal coordinate is determined. If the number of position points is less than the preset number, the air resistance boundary point and the number of position points are re-determined in descending order of position point height until the number of position points is greater than the preset number, and the target air resistance boundary point is obtained. Project all points located between the target air resistance boundary point and the point with the largest horizontal coordinate to obtain multiple fitted projection points; For any two fitted projection points, based on the other fitted projection points among all fitted projection points other than the two fitted projection points, determine the average distance from the other fitted projection points to the straight line formed by the two fitted projection points. The line with the smallest average distance among all the lines formed by the multiple fitted projection points is taken as the projection line. The flight trajectory of the target object is obtained by trajectory matching based on the projected straight line.

4. The method according to claim 3, characterized in that, The process of obtaining the flight trajectory of the target object by trajectory matching based on the projected straight line includes: Based on the target air resistance boundary point, the position point of the next time point of the target air resistance boundary point, and the time interval between the target air resistance boundary point and the position point of the next time point, the estimated flight speed and estimated flight pitch angle of the target object are determined. Determine the estimated air resistance; Based on the estimated flight speed, the estimated flight pitch angle, the estimated air resistance, and the target air resistance boundary point, the motion state of the target object at the next time point is determined, and the motion state includes the position point, flight speed, and flight acceleration. Repeat the above process of determining the motion state of the target object at the next time point until the height corresponding to the position point in the motion state of the target object is less than the preset threshold to obtain the simulated trajectory. By changing the estimated flight speed and the estimated flight pitch angle, the process of obtaining the simulated trajectory described above is repeated to obtain multiple simulated trajectories; For any simulated trajectory, all position points between the target air resistance boundary point and the position point with the largest x-coordinate are matched with the simulated trajectory at time points to obtain matching point pairs, and the number of matching point pairs that meet the distance condition and the average distance are determined. If the number of maximum matching point pairs corresponding to the multiple simulated trajectories is less than half the number of all position points located between the target air resistance boundary point and the position point with the largest horizontal coordinate, the estimated air resistance is changed, and the process returns to the step of determining the motion state of the target object at the next time point based on the estimated flight speed, the estimated flight pitch angle, the estimated air resistance, and the target air resistance boundary point, until the number of maximum matching point pairs is greater than half the number of all position points located between the target air resistance boundary point and the position point with the largest horizontal coordinate. The simulated trajectory with the smallest average distance among at least one simulated trajectory with the maximum number of matching point pairs is determined as the flight trajectory of the target object.

5. The method according to claim 4, characterized in that, Before determining the estimated flight speed and estimated flight pitch angle of the target object based on the target air resistance boundary point, the position point of the next time point of the target air resistance boundary point, and the time interval between the target air resistance boundary point and the position point of the next time point, the method further includes: Using the projected straight line as the horizontal axis and the projection point of the target air resistance boundary point as the origin of the horizontal axis, the coordinates of all position points located between the target air resistance boundary point and the position point with the largest horizontal coordinate are transformed to obtain the two-dimensional coordinates of all position points.

6. The method according to claim 1, characterized in that, The step of predicting the predicted landing point of the target object based on its flight trajectory includes: Based on the last and second-to-last positions in the flight trajectory of the target object, the predicted landing point of the target object is obtained.

7. The method according to claim 1, characterized in that, The method further includes: Based on the preset landing point and the predicted landing point, the confidence level of the predicted landing point is determined.

8. A motion state analysis device for a target object, characterized in that, The device includes: The reconstruction module is used to reconstruct multiple positions of the target object based on multiple frames of images captured by the camera during the movement of the target object. Each position is represented by the three-dimensional coordinates of the target object in a coordinate system with the long side of the field as the horizontal axis and the short side as the vertical axis and the time point. The multiple position points of the target object are arranged in chronological order of the time points. The first determining module is used to determine the initial movement range of the target object based on a preset start point and a preset landing point among multiple position points of the target object; The correction module is used to correct the initial motion range of the target object to obtain the target motion range of the target object; The fitting module is used to perform trajectory fitting based on the target motion range of the target object to obtain the flight trajectory of the target object; The prediction module is used to predict the target object's landing point based on its flight trajectory. The correction module includes: The first projection unit is used to project all position points in the initial motion range of the target object to obtain multiple projection points; The fourth determining unit is used to determine the number of projection points within a preset range of the straight line formed by any two projection points among the plurality of projection points, based on other projection points besides the two projection points. The fifth determining unit is used to select the line with the most corresponding projection points among all the lines formed by the plurality of projection points as the target line; The sixth determining unit is used to determine, among the multiple projection points corresponding to all position points in the initial motion interval, projection points that are not within a preset range of the target straight line as outlier projection points. The elimination unit is used to eliminate the outlier projection points from the plurality of projection points, restore the eliminated projection points, and obtain the target motion range of the target object.

9. A computer device, characterized in that, include: A memory and a processor are interconnected, the memory stores computer instructions, and the processor executes the computer instructions to perform the motion state analysis method of the target object according to any one of claims 1 to 7.