Motion posture determination method and device, electronic equipment and storage medium
By collecting point clouds at the start of an athlete's movement, dividing the object and field sets, and using the point cloud data to determine the start time and posture of the movement, the problems of image quality and sensor interference in underwater shooting are solved, and efficient and accurate movement posture analysis is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-05
- Publication Date
- 2026-03-03
AI Technical Summary
In existing technologies for athlete motion analysis, especially in underwater shooting scenarios, image quality is affected by water refraction or turbidity, leading to a decrease in the accuracy of motion analysis. At the same time, sensors interfere with athlete movements and exhibit lag.
By collecting point clouds from the time an athlete enters the sports field until the start of the sport, the target object and the field point cloud set are divided. The distance between the point with the smallest target dimension value in the object point cloud set and the field plane is used to determine the start time of the sport. The sport posture is determined by fitting the angle of the line segment, thus achieving real-time and accurate sport posture analysis.
It improves the timeliness and accuracy of motion posture analysis, avoids image quality and sensor interference, and achieves accurate capture of the start moment of motion and real-time judgment of posture.
Smart Images

Figure CN121600599A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of artificial intelligence technology, and more particularly to the field of computer vision technology, specifically to methods, devices, electronic devices, and storage media for determining motion posture. Background Technology
[0002] During athlete training or competition, the athlete's movements, speed, and other parameters can be analyzed, and the results can be used as a basis for measuring the athlete's competitive state or improving the athlete's competitive technique.
[0003] Therefore, efficiently and accurately capturing the core moments of athletes' key technical movements has become crucial for accurately analyzing athletes' competitive state. Summary of the Invention
[0004] This disclosure provides a method, apparatus, electronic device, and storage medium for determining motion posture.
[0005] According to one aspect of this disclosure, a method for determining motion posture is provided, comprising: dividing a first point cloud to be processed into a first object point cloud set representing the target object and a field point cloud set representing the sports field, based on the attributes of the target object; wherein the first point cloud to be processed is collected at any time during the period from when the target object enters the sports field to when it begins to move; in response to determining that the distance between the point with the smallest target dimension value in the first object point cloud set and the target plane is less than a first predetermined threshold, determining the collection time of the first point cloud to be processed as the motion start time of the target object; wherein the target plane is obtained by plane segmentation using the field point cloud set; determining the motion posture of the target object at the motion start time based on the angle of the fitted line segment of the first object point cloud set relative to the target plane; the fitted line segment is obtained by linear fitting using the first object point cloud set.
[0006] According to another aspect of this disclosure, a motion posture determination device is provided, including a division module, a comparison module, and a determination module.
[0007] The segmentation module is used to divide the first point cloud to be processed into a first object point cloud set representing the target object and a field point cloud set representing the sports field based on the attributes of the target object; wherein, the first point cloud to be processed is collected at any time during the period from when the target object enters the sports field to when it starts exercising.
[0008] The comparison module is used to determine the acquisition time of the first point cloud to be processed as the motion start time of the target object in response to the determination that the distance between the point with the smallest target dimension value in the first object point cloud set and the target plane is less than a first predetermined threshold; wherein, the target plane is obtained by plane segmentation using the field point cloud set.
[0009] The determination module is used to determine the motion posture of the target object at the start of motion based on the angle of the fitted line segment of the first object point cloud set relative to the target plane; the fitted line segment is obtained by linear fitting using the first object point cloud set.
[0010] According to another aspect of this disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the method described above.
[0011] According to another aspect of this disclosure, a non-transitory computer-readable storage medium is provided storing computer instructions, wherein the computer instructions are used to cause the computer to perform the methods described above.
[0012] According to another aspect of this disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements the method described above.
[0013] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0014] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:
[0015] Figure 1 This illustration schematically shows an exemplary system architecture to which motion posture determination methods and apparatus can be applied according to embodiments of the present disclosure;
[0016] Figure 2 A flowchart illustrating a motion attitude determination method according to an embodiment of the present disclosure is shown schematically.
[0017] Figure 3 This schematically illustrates a point cloud partitioning based on the size of a target object according to an embodiment of the present disclosure;
[0018] Figure 4 This illustration schematically shows a diagram of classifying a segmented point cloud according to an embodiment of the present disclosure;
[0019] Figure 5 A schematic diagram illustrating the determination of the start time of motion according to an embodiment of the present disclosure is shown.
[0020] Figure 6 A schematic diagram illustrating the determination of an action state according to an embodiment of the present disclosure is shown.
[0021] Figure 7 A schematic diagram illustrating the determination of motion speed according to an embodiment of the present disclosure is shown.
[0022] Figure 8 A schematic diagram illustrating a target generation strategy based on an embodiment of the present disclosure is provided.
[0023] Figure 9 A block diagram of a motion attitude determination device according to an embodiment of the present disclosure is schematically shown; and
[0024] Figure 10 A block diagram of an electronic device suitable for implementing a motion attitude determination method according to an embodiment of the present disclosure is shown schematically. Detailed Implementation
[0025] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.
[0026] In related examples, multi-angle high-speed image acquisition equipment is typically used to capture athletes' movements. Then, image processing algorithms such as target detection are used to analyze the athletes' movements. The accuracy of motion analysis in this method depends on image quality. For water sports, especially in underwater shooting scenarios, the refraction or turbidity of the water can affect image quality, thus affecting the accuracy of the motion analysis results.
[0027] Related examples include installing sensors on athletes to record their movement trajectories and then analyzing those trajectories. However, wearable sensors can affect an athlete's performance and thus the accuracy of the motion analysis results.
[0028] In addition, both of the above methods can only be used to analyze motion after the athlete has completed the exercise, which results in a time lag.
[0029] In view of this, the embodiments of this disclosure utilize point clouds collected at any moment during the period from when the target object enters the sports field to when it begins to move. The point clouds are then divided to determine the object point cloud set and the field point cloud set. The distance between the point with the smallest target dimension value in the object point cloud set and the plane containing the field point cloud set is used to accurately determine the starting moment of the target object's movement, thus accurately capturing the instant of movement initiation. Simultaneously, the angle between the fitted line segment of the object point cloud set at the start of movement and the plane containing the field point cloud set is determined as the target object's movement posture at the start of movement. Compared to related examples, using point cloud data for movement posture analysis further improves the timeliness and accuracy of movement posture analysis without interfering with the normal movement of the target object.
[0030] Figure 1 The illustration schematically shows an exemplary system architecture for applying motion posture determination methods and apparatus according to embodiments of the present disclosure.
[0031] It is important to note that Figure 1 The examples shown are merely examples of system architectures that can be applied to the embodiments of this disclosure, to help those skilled in the art understand the technical content of this disclosure, but do not mean that the embodiments of this disclosure cannot be used in other devices, systems, environments, or scenarios. For example, in another embodiment, an exemplary system architecture to which the motion posture determination method and apparatus can be applied may include a terminal device, but the terminal device can implement the motion posture determination method and apparatus provided by the embodiments of this disclosure without interacting with the server.
[0032] like Figure 1 As shown, the system architecture 100 according to this embodiment may include a point cloud acquisition device 101, a terminal device 102, a network 103, and a server 104. The network 103 serves as a medium for providing a communication link between the point cloud acquisition device 101, the terminal device 102, and the server 104. The network 103 may include various connection types, such as wired and / or wireless communication links, etc.
[0033] The point cloud acquisition device 101 can acquire point clouds of the target object at any time during the period from entering the sports field to starting the movement, and then transmit the acquired point cloud to the terminal device 102 or a server via the network 103. The terminal device 102 can be equipped with various communication client applications, such as data analysis applications, knowledge reading applications, web browser applications, search applications, instant messaging tools, email clients, and / or social media platform software (for example only).
[0034] Terminal device 102 can be various electronic devices with a display screen and support web browsing, including but not limited to smartphones, tablets, laptops, and desktop computers.
[0035] Server 104 can be a server that provides various services, such as a backend management server that supports the content browsed by the user using terminal device 101 (for example only). The backend management server can analyze and process data such as received user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal device.
[0036] It should be noted that the motion posture determination method provided in this embodiment can generally be executed by the terminal device 102. Accordingly, the motion posture determination device provided in this embodiment can also be disposed in the terminal device 102.
[0037] Alternatively, the motion posture determination method provided in this embodiment can generally be executed by server 104. Correspondingly, the motion posture determination device provided in this embodiment can generally be located in server 104. The motion posture determination method provided in this embodiment can also be executed by a server or server cluster that is different from server 104 and capable of communicating with terminal device 102 and / or server 104. Correspondingly, the motion posture determination device provided in this embodiment can also be located in a server or server cluster that is different from server 104 and capable of communicating with terminal device 102 and / or server 104.
[0038] For example, when a target object enters a motion scene and begins to move, the point cloud acquisition device 101 acquires point clouds of the target object at any time during the period from entering the motion field to starting to move. The acquired point cloud is then sent to the server 104, which processes the point cloud to determine the target object's start time and motion posture at the start of the motion. Alternatively, a server or server cluster capable of communicating with the point cloud acquisition device 101 and / or the server 104 can process the point cloud and ultimately determine the target object's start time and motion posture at the start of the motion.
[0039] It should be understood that Figure 1 The number of point cloud acquisition devices, terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.
[0040] In the technical solution disclosed herein, the collection, storage, use, processing, transmission, provision, disclosure, and application of user personal information comply with the provisions of relevant laws and regulations, necessary confidentiality measures have been taken, and there is no violation of public order and good morals.
[0041] In the technical solution disclosed herein, the user's authorization or consent is obtained before acquiring or collecting the user's personal information.
[0042] Figure 2 A flowchart illustrating a motion posture determination method according to an embodiment of the present disclosure is shown schematically.
[0043] like Figure 2 As shown, the method 200 includes operations S210 to S230.
[0044] In operation S210, based on the attributes of the target object, the first point cloud to be processed is divided into a first object point cloud set for representing the target object and a field point cloud set for representing the sports field.
[0045] In operation S220, in response to determining that the distance between the point with the smallest target dimension value in the first object point cloud set and the target plane is less than a first predetermined threshold, the acquisition time of the first point cloud to be processed is determined as the motion start time of the target object.
[0046] In operation S230, the motion posture of the target object at the start of motion is determined based on the angle of the fitted line segment of the first object point cloud set relative to the target plane.
[0047] According to embodiments of this disclosure, the target object can be an athlete exercising in a sports field. The sport can be a water-based sport, such as swimming. Attributes of the target object can include the athlete's height, weight, etc. In embodiments of this disclosure, the sports field can be a swimming pool. The first point cloud to be processed is collected at any time during the period from when the target object enters the sports field to when it begins exercising. For example, any point cloud acquisition device can be used to collect point clouds from the moment the target object enters the sports field, so that the point clouds collected at each time moment can be processed to achieve real-time analysis of the target object's motion posture.
[0048] For water sports, environmental factors such as lighting and water refraction can increase noise in point clouds. Therefore, considering the impact of environmental factors on point clouds, denoising can be performed on the first point cloud to be processed to further improve the accuracy of motion posture analysis. For example, by statistically analyzing the average distance between each point in the first point cloud and its neighboring points, a global distance threshold is determined based on the mean and standard deviation of all average distances in the entire point cloud. Then, when the average neighborhood distance of any point is determined to be greater than the global distance threshold, that point is treated as an outlier and deleted, thereby achieving denoising of the first point cloud.
[0049] After denoising the first point cloud to be processed, the first point cloud to be processed may include at least two point cloud sets: a first object point cloud set for representing the target object and a field point cloud set for representing the sports field.
[0050] For example: Since the volume of the target object is smaller than the volume of the pool, the point cloud sets can be classified by calculating the volume of the smallest cube that can enclose each point cloud set. The point cloud set with the smaller volume is determined as the first object point cloud set, and the point cloud set with the larger volume is determined as the field point cloud set.
[0051] A point cloud is a collection of data points representing the shape of an object or the external surface of space in a three-dimensional coordinate system. The position of each point in the three-dimensional coordinate system can be represented as a three-dimensional vector, which can include the following three directional dimensions: the X-direction can represent the direction parallel to the track in a sports field, such as the direction of a swimming lane in a pool. The Z-direction can represent the direction perpendicular to the track and located on the plane of the sports field, such as the direction perpendicular to a swimming lane. The Y-direction can represent the direction perpendicular to the plane of the sports field, such as the direction perpendicular to the plane of the pool.
[0052] When an athlete jumps into the pool from the starting block and touches the water, the distance between the lowest point of the athlete's body and the water surface is minimized. Therefore, the absolute value of the Y-axis dimension can be used as the target dimension value, and the lowest point of the athlete's body can be represented as the point with the smallest target dimension value in the first object point cloud set. The target plane is obtained by using the field point cloud set for planar segmentation, and this target plane can represent the plane where the water surface in the pool is located in the actual scene.
[0053] When the distance between the point with the smallest target dimension value in the first object point cloud set and the target plane is less than a first predetermined threshold (which can be set according to actual needs, for example, 0.01m), it can be determined that the athlete jumps into the pool from the starting platform and contacts the water surface. Therefore, the acquisition time of the first point cloud to be processed can be determined as the starting time of the target object's movement, i.e., the moment the athlete enters the water. This achieves accurate determination of the target object's movement starting time through real-time analysis of the point cloud, further improving the timeliness of data analysis compared to related examples.
[0054] When an athlete jumps into a swimming pool, to reduce the impact of the water surface on the athlete's body and to minimize water resistance, the athlete's body forms a near-straight line upon entry. Therefore, a fitted line segment can be obtained by linear fitting using a first object point cloud set. Based on the angle of this fitted line segment relative to the target plane, the motion posture of the target object at the start of the motion can be determined. This motion posture characterizes the entry angle of the target object at the start of the motion.
[0055] For example, the entry angle can be calculated by using the dot product of the direction vector of the fitted line segment and the normal vector of the target plane.
[0056] This embodiment utilizes point clouds collected at any moment during the period from when the target object enters the sports field to when it begins to move. The point clouds are divided to determine an object point cloud set and a field point cloud set. The distance between the point with the smallest target dimension value in the object point cloud set and the plane containing the field point cloud set is used to accurately determine the starting moment of the target object's movement, enabling precise capture of the instantaneous start of movement. Simultaneously, the angle between the fitted line segment of the object point cloud set at the start of movement and the plane containing the field point cloud set is determined as the target object's motion posture at the start of movement. Compared to related examples, using point cloud data for motion posture analysis further improves the timeliness and accuracy of motion posture analysis without interfering with the normal movement of the target object.
[0057] According to embodiments of this disclosure, dividing a first point cloud to be processed into a first object point cloud set representing the target object and a field point cloud set representing the sports field based on the attributes of the target object may include the following operations: dividing the first point cloud to be processed into at least two point cloud sets based on the attributes of the target object; and determining the first object point cloud set and the field point cloud set from the at least two point cloud sets by comparing and analyzing the at least two point cloud sets.
[0058] For example, if the first point cloud to be processed is divided into two point cloud sets, the size of the smallest cube that can enclose the target object can be pre-calculated based on attributes such as the target object's height and weight. This smallest cube can be called a 3D bounding box. Then, points whose distance between any two points in the first point cloud to be processed is within the axial dimension of this 3D bounding box can be used as points in the first object point cloud set. The other point cloud set in the first point cloud to be processed is determined as the sports field point cloud set.
[0059] For example, if the first point cloud to be processed is divided into more than two point cloud sets, at least two point cloud sets can be obtained by performing Euclidean clustering on the first point cloud to be processed. Since the athlete's spatial position is above the pool surface before entering the water, the 3D bounding boxes of the two point cloud sets can be calculated separately. By comparing the positions of the geometric centers of the 3D bounding boxes of the two point cloud sets, which can also be represented as three-dimensional coordinates, and whose three dimensions are the same as those used to represent point clouds as described above, the point cloud set with the highest target dimension value in the three-dimensional coordinates used to represent the geometric center can be determined as the first object point cloud set, and the point cloud set with the lowest target dimension value can be determined as the sports field point cloud set.
[0060] By dividing the point cloud and comparing and analyzing at least two point cloud sets, the impact of small point cloud clusters or scattered points in the first point cloud to be processed on the accuracy of attitude analysis can be reduced. This allows for the creation of a first object point cloud set that can be used to characterize the true shape of the target object and a motion field point cloud set that can be used to characterize the motion scene for the structure.
[0061] In water-based motion scenarios, scattered points or small point cloud clusters generated by water reflection increase the difficulty of dividing the point cloud set. Therefore, embodiments of this disclosure divide the first point cloud to be processed into at least two point cloud sets based on the attributes of the target object. This can include the following operations: determining a first threshold and a second threshold based on the attributes of the target object; merging the first point and the second point in response to determining that the distance between a first point in the first point cloud to be processed and a second point in the first point cloud to be processed is less than the first threshold, to obtain a first initial point cloud set; and merging the multiple first initial point cloud sets in response to determining that the distance between a third point in the first point cloud to be processed and any point in any of the multiple first initial point cloud sets is less than the second threshold, and merging the third point with the second initial point cloud set to obtain a point cloud set.
[0062] According to embodiments of this disclosure, a first threshold m indicates the density of the point cloud set. For example, m can be set to 50 mm. The first threshold can be adjusted according to the average density of the point cloud acquired by the point cloud acquisition device. For example, when the point cloud is sparse, the second threshold can be greater than 50 mm. When the point cloud is dense, the second threshold can be less than 50 mm. The second threshold t indicates the size of the point cloud set. For example, t can be set to 1000 mm. The second threshold can be adjusted according to the actual height and weight of the target object.
[0063] Figure 3 A schematic diagram illustrating the division of a point cloud according to the size of a target object according to an embodiment of the present disclosure is shown.
[0064] like Figure 3 As shown, a point cloud set list can be initialized, initially empty. Then, all points in the first point cloud to be processed are traversed. Then, when it is determined that the distance between points P2 and P3 in the first point cloud to be processed is less than m, points P2 and P3 can be merged into point cloud set 301; that is, the coordinates of points P2 and P3 can be added to the point cloud set list used to represent point cloud set 301. Since the distance between point P1 in the first point cloud to be processed and all points in the first point cloud set 301 is greater than m, it can be determined that point P1 is an outlier and cannot be included in point cloud set 301.
[0065] When the distance between point P3 and all points in point cloud sets 301 and 302 is less than t, point cloud sets 301 and 302 can be merged to form a new point cloud set; that is, the point cloud set list used to represent point cloud set 301 and the point cloud set list used to represent point cloud set 302 can be merged. When the distance between P1 and all points in each point cloud set is not less than t, P1 can be identified as an outlier.
[0066] When updating the point cloud set list, the maximum distance between points in each point cloud set list can be saved. Based on this maximum distance, it can be determined whether the next point to be traversed can be merged. In this way, the first point cloud to be processed can be divided into at least two point cloud sets, which can filter out smaller point cloud clusters or scattered points in the first point cloud to be processed, and retain the point cloud set that can reflect the true structure of the target object and the sports field.
[0067] In swimming, athletes' bodies are on the surface of the water before entering the water. Therefore, point cloud sets can be classified by comparing the target dimension values of each point in at least two point cloud sets.
[0068] In this embodiment of the disclosure, at least two point cloud sets include: a first point cloud set and a second point cloud set. Determining a first object point cloud set and a site point cloud set from the at least two point cloud sets through comparative analysis may include the following operations: determining a first target point from the first point cloud set by comparing the target dimension values of each point in the first point cloud set; determining a second target point from the second point cloud set by comparing the target dimension values of each point in the second point cloud set; determining the first point cloud set as the first object point cloud set and the second point cloud set as the site point cloud set in response to determining that the target dimension value of the first target point is greater than the target dimension value of the second target point; and determining the second point cloud set as the first object point cloud set and the first point cloud set as the site point cloud set in response to determining that the target dimension value of the first target point is less than the target dimension value of the second target point.
[0069] Figure 4 The illustration shows a schematic diagram of classifying a segmented point cloud according to an embodiment of the present disclosure.
[0070] like Figure 4As shown, in this embodiment 400, firstly, by comparing the target dimension values of each point in the point cloud set G1410, a target point Pa 411 is determined from the point cloud set G1410. This target point Pa 411 is the first target point, and the target dimension value of the first target point is greater than the target dimension values of other points in the first point cloud set besides the first target point. The target dimension value represents the absolute value of the coordinate in the three-dimensional coordinate system perpendicular to the plane where the sports field is located. Then, by comparing the target dimension values of each point in the point cloud set G2420, a target point Pb 421 is determined from the point cloud set G2420. This target point Pb 421 is the second target point, and the target dimension value of the second target point is greater than the target dimension values of other points in the second point cloud set besides the second target point.
[0071] Next, operation S410 is executed to determine whether the target dimension value of target point Pa 411 is greater than the target dimension value of target point Pb 421. If so, operation S411 is executed to determine that point cloud set G1410 is the object point cloud set and point cloud set G2420 is the site point cloud set. If not, operation S412 is executed to determine that point cloud set G1410 is the site point cloud set and point cloud set G2420 is the object point cloud set.
[0072] Based on the relative positional relationship between the target object and the motion field at the start of the motion, the point cloud sets can be quickly classified by comparing the target dimension value of the point with the highest target dimension value in each point cloud set, thereby further improving the efficiency of motion attitude analysis using point clouds.
[0073] According to embodiments of this disclosure, in response to determining that the distance between the point with the smallest target dimension value in the first object point cloud set and the target plane is less than a first predetermined threshold, the acquisition time of the first point cloud to be processed is determined as the motion start time of the target object. This may include the following operations: performing principal component analysis on the first object point cloud set based on a predetermined point cloud coordinate system to obtain a first geometric model; determining a third target point from the first geometric model; and in response to determining that the distance between the third target point and the target plane is less than the first predetermined threshold, the acquisition time of the first point cloud to be processed is determined as the motion start time.
[0074] According to embodiments of this disclosure, the predetermined point cloud coordinate system may be the three-dimensional coordinate system described in the preceding embodiments.
[0075] For example, the first geometric model can represent the smallest cube that can enclose the first object point cloud set. For instance, the center point of the first object point cloud set can be calculated, and then all points in the first object point cloud set can be translated along a predetermined direction so that the center point is located at the origin of a predetermined point cloud coordinate system, thus centering the first object point cloud set. Then, principal component analysis is used to process the centered first object point cloud set to obtain its oriented bounding box, i.e., the first geometric model. The first geometric model indicates the spatial position and shape of the target object at the time of acquisition of the first point cloud to be processed.
[0076] According to embodiments of this disclosure, the target plane is obtained by plane segmentation using a set of site location clouds. The purpose of plane segmentation is to find a plane that can accommodate the maximum number of points in the set of site location clouds.
[0077] The specific implementation of plane segmentation is detailed below: Based on the distance between points in the field location cloud set, linear fitting is performed on each point in the field location cloud set to obtain at least two line segments; the following operations are performed iteratively to obtain multiple initial planes: at least three points are randomly determined from at least two line segments; an initial plane is randomly generated based on at least three points; a fourth target point is determined from the field location cloud set; a target initial plane is determined from the multiple initial planes based on the fourth target point; and a plane fitting is performed based on the fourth target point related to the target initial plane to obtain the target plane.
[0078] According to an embodiment of this disclosure, the distance between the fourth target point and the initial plane is less than a second predetermined threshold.
[0079] According to embodiments of this disclosure, the number of fourth target points in the target initial plane is greater than the number of fourth target points in other initial planes besides the target initial plane.
[0080] For example, for a swimming venue, the venue location cloud can show the pool and the lanes floating above it, which are typically parallel. Therefore, a linear fit is performed on each point in the venue location cloud, resulting in at least two parallel line segments. Then, an initial plane can be randomly generated using the principle that three points determine a plane. Based on the distances from each point in the venue location cloud to the initial plane, a target initial plane that can accommodate the most fourth target points is determined. Finally, a target plane is generated by fitting a plane to the fourth target points accommodated by this target initial plane.
[0081] Due to the effects of water reflection or refraction, the point cloud aggregate may contain outliers located outside the initial plane. This embodiment of the present disclosure continuously iterates to determine a plane that can accommodate more point clouds, reducing the impact of outliers on plane segmentation and further improving the accuracy of determining the target plane.
[0082] Figure 5 A schematic diagram illustrating the determination of the start time of motion according to an embodiment of the present disclosure is shown.
[0083] like Figure 5 As shown, in this embodiment 500, the point with the smallest target dimension value in the first geometric model 521 can be determined as the third target point Pt, that is: the target dimension value of the third target point in the predetermined point cloud coordinate system is less than the target dimension values of other points in the first geometric model except for the third target point.
[0084] Then, by comparing the distance d between the third target point Pt and the target plane 522 with the first predetermined threshold, it is determined whether the moment when the first point cloud to be processed is collected is the moment of motion start.
[0085] For example, when the distance d between the third target point Pt and the target plane 522 is greater than the first predetermined threshold, it indicates that the target object is still in the air above the pool. At this time, the point cloud to be processed at the next acquisition moment can be divided and distance judged until it is determined that the distance d between the third target point Pt and the target plane 522 in the point cloud to be processed at a certain acquisition moment is less than the first predetermined threshold. This acquisition moment can be determined as the starting moment of the target object's movement, that is, the moment of entry into the water.
[0086] Since the first geometric model indicates the spatial position and shape of the target object at the time of acquisition of the first point cloud to be processed, the first geometric model is obtained by performing principal component analysis on the first object point cloud set. The point with the smallest target dimension value in the first geometric model is used for judgment. This not only enables the determination of the motion start time using the real-time spatial position and shape of the target object, but also reduces the amount of data to be compared during the judgment, further improving the data processing efficiency of real-time analysis of motion posture.
[0087] Figure 6 A schematic diagram illustrating the determination of an operational state according to an embodiment of the present disclosure is shown.
[0088] like Figure 6 As shown in this embodiment 600, the target object's body forms an almost straight line upon entering the water. Therefore, a fitted line segment representing the target object's motion posture can be obtained by linearly fitting the first object point cloud set. For example, line segment AB in the first geometric model 521 represents the fitted line segment obtained by linearly fitting the first object point cloud set.
[0089] Then, the angle α between the line segment AB and the target plane 522 can be determined as the water entry angle of the target object at the start of its movement.
[0090] For example, the entry angle can be calculated by using the dot product of the direction vector of line segment AB and the normal vector of the target plane 522.
[0091] In addition to motion posture, embodiments of this disclosure can also determine the motion speed of the target object at the moment of motion initiation.
[0092] For example: acquiring a second point cloud to be processed and a point cloud acquisition frame rate; extracting a second object point cloud set from the second point cloud to be processed to represent the target object; performing principal component analysis on the second object point cloud set based on a predetermined point cloud coordinate system to obtain a second geometric model; and processing the first geometric model, the second geometric model, and the acquisition frame rate to obtain the motion speed.
[0093] According to embodiments of this disclosure, the second point cloud to be processed is acquired at a time adjacent to the start time of motion. This adjacent time can refer to the time before or after the start time of motion.
[0094] According to embodiments of this disclosure, the second geometric model indicates the spatial location and shape of the target object at the time of acquisition of the second point cloud to be processed. The second geometric model can also be an oriented bounding box of the second object point cloud set. The data processing procedure for obtaining the second geometric model by performing principal component analysis on the second object point cloud set is the same as the data processing procedure for obtaining the first geometric model by performing principal component analysis on the first object point cloud set, and will not be described in detail here.
[0095] For example, the displacement difference between the point with the lowest target dimension value in the first geometric model and the point with the lowest target dimension value in the second geometric model can be used as the distance the target object has traveled from the adjacent time point to the start of the motion. Then, the product of this travel distance and the acquisition frame rate is determined as the motion velocity of the target object at the start of the motion.
[0096] In some embodiments, processing the first geometric model, the second geometric model, and the acquisition frame rate to obtain the motion speed may include the following operations: determining a first geometric center in the first geometric model; determining a second geometric center in the second geometric model; obtaining the target displacement of the target object at the start of the motion based on the distance between the first geometric center and the second geometric center; and obtaining the motion speed based on the target displacement and the acquisition frame rate.
[0097] Figure 7 A schematic diagram illustrating the determination of motion speed according to an embodiment of the present disclosure is shown.
[0098] like Figure 7 As shown, in this embodiment 700, time T can be the starting time of motion, and point Gc2 can represent the first geometric center in the first geometric model 642. Time T-1 can be a time adjacent to the starting time of motion, and point Gc1 can represent the second geometric center in the second geometric model 641.
[0099] Next, the target displacement of the object at time T can be obtained by calculating the distance between the first and second geometric centers. Finally, the product of the target displacement and the acquisition frame rate is determined as the motion velocity.
[0100] By combining the geometric models that can characterize the spatial position and shape of the target object at adjacent time points with the acquisition frame rate, the motion velocity is obtained, which further improves the accuracy of motion velocity analysis and the data processing efficiency of real-time motion posture analysis.
[0101] The purpose of motion posture analysis can be used to help athletes improve their athletic skills. Therefore, embodiments of this disclosure may also include the following operations: acquiring a target image corresponding to the start of the motion; performing three-dimensional reconstruction of the joints of the target object in the target image to obtain the torso position of the target object; determining the reconstructed motion posture of the target object at the start of the motion based on the angle of the torso position relative to the horizontal direction; and using a large model to generate a target strategy for adjusting the motion posture based on the reconstructed motion posture and the motion posture.
[0102] Figure 8 The illustration shows a schematic diagram of a target generation strategy that combines reconstructed motion pose according to an embodiment of the present disclosure.
[0103] like Figure 8 As shown in this embodiment 800, firstly, the image 801 at the start of the movement can be input into a three-dimensional reconstruction network to obtain the spatial position matrix of each joint of the target object. Each dimension in this spatial position matrix corresponds to a joint node of the target object. Data of the dimension related to the torso position can be extracted from the spatial position matrix to obtain the torso position 802 of the target object. Then, since the water level in a swimming pool is generally horizontal, the reconstructed motion posture 803 of the target object at the start of the movement can be determined based on the angle of the torso position relative to the horizontal direction.
[0104] Then, the reconstructed motion posture 803 and the motion state 811 obtained based on the point cloud 810 at the start of the motion are input into the large model. Alternatively, descriptive text or images of a predetermined entry posture that meets the requirements of a swimming competition can be input into the large model so that the large model can generate a target strategy 820 for adjusting the motion posture by comparing the target object's motion posture, the reconstructed motion posture, and the predetermined entry posture.
[0105] Combining the reconstructed motion pose obtained from image 3D reconstruction and the motion pose obtained from point cloud processing can reduce the interference of redundant factors in the motion pose analysis results on the large model, and further improve the accuracy of the target generation strategy of the large model.
[0106] Figure 9 A block diagram of a motion attitude determination device according to an embodiment of the present disclosure is shown schematically.
[0107] like Figure 9 As shown, the motion attitude determination device 900 may include a division module 910, a comparison module 920, and a determination module 930.
[0108] The segmentation module 910 is used to segment the first point cloud to be processed according to the attributes of the target object to obtain a first object point cloud set representing the target object and a field point cloud set representing the sports field; wherein, the first point cloud to be processed is collected at any time during the period from when the target object enters the sports field to when it starts exercising.
[0109] The comparison module 920 is used to determine the acquisition time of the first point cloud to be processed as the motion start time of the target object in response to the determination that the distance between the point with the smallest target dimension value in the first object point cloud set and the target plane is less than a first predetermined threshold; wherein, the target plane is obtained by plane segmentation using the field point cloud set.
[0110] The determination module 930 is used to determine the motion posture of the target object at the moment of motion initiation based on the angle of the fitted line segment of the first object point cloud set relative to the target plane; the fitted line segment is obtained by linear fitting using the first object point cloud set.
[0111] According to an embodiment of this disclosure, the partitioning module 910 may include a partitioning submodule and an analysis submodule.
[0112] The partitioning submodule is used to divide the first point cloud to be processed into at least two point cloud sets based on the attributes of the target object.
[0113] The analysis submodule is used to determine the first object point cloud set and the field point cloud set from at least two point cloud sets by performing comparative analysis on at least two point cloud sets.
[0114] According to embodiments of this disclosure, the sub-module division includes: a first determining unit, a first merging unit, and a second merging unit.
[0115] The first determining unit is used to determine a first threshold and a second threshold based on the attributes of the target object; the second threshold indicates the size of the point cloud set; and the first threshold indicates the density of the point cloud set.
[0116] The first merging unit is configured to merge the first point and the second point in the first point cloud to be processed in response to determining that the distance between the first point and the second point in the first point cloud to be processed is less than a first threshold, thereby obtaining a first initial point cloud set.
[0117] The second merging unit is used to merge the multiple first initial point cloud sets and merge the third point with the second initial point cloud set in response to determining that the distance between the third point in the first point cloud to be processed and any point in the multiple first initial point cloud sets is less than a second threshold, thereby obtaining a point cloud set.
[0118] According to embodiments of this disclosure, at least two point cloud sets include: a first point cloud set and a second point cloud set. The analysis submodule may include: a first comparison unit, a second comparison unit, a second determination unit, and a third determination unit.
[0119] The first comparison unit is used to determine the first target point from the first point cloud set by comparing the target dimension values of each point in the first point cloud set; wherein the target dimension value of the first target point is greater than the target dimension values of other points in the first point cloud set besides the first target point.
[0120] The second comparison unit is used to determine the second target point from the second point cloud set by comparing the target dimension values of each point in the second point cloud set; wherein the target dimension value of the second target point is greater than the target dimension values of other points in the second point cloud set besides the second target point.
[0121] The second determining unit is configured to determine the first point cloud set as the first object point cloud set and the second point cloud set as the field point cloud set in response to determining that the target dimension value of the first target point is greater than the target dimension value of the second target point.
[0122] The third determining unit is used to determine the second point cloud set as the first object point cloud set and the first point cloud set as the field point cloud set in response to determining that the target dimension value of the first target point is less than the target dimension value of the second target point.
[0123] According to embodiments of this disclosure, the comparison module 920 may include: a principal component analysis submodule, a first determination submodule, and a second determination submodule.
[0124] The principal component analysis submodule is used to perform principal component analysis on the first object point cloud set based on a predetermined point cloud coordinate system to obtain a first geometric model; wherein, the first geometric model indicates the spatial position and shape of the target object at the time of acquisition of the first point cloud to be processed.
[0125] The first determining submodule is used to determine a third target point from the first geometric model; wherein the target dimension value of the third target point in the predetermined point cloud coordinate system is less than the target dimension values of other points in the first geometric model other than the third target point.
[0126] The second determining submodule is used to determine the acquisition time of the first point cloud to be processed as the motion start time in response to determining that the distance between the third target point and the target plane is less than the first predetermined threshold.
[0127] According to embodiments of this disclosure, the comparison module 920 may further include: a first fitting submodule, a loop submodule, and a second fitting submodule.
[0128] The first fitting submodule is used to perform linear fitting on each point in the field location cloud set based on the distance between each point in the field location cloud set, so as to obtain at least two line segments.
[0129] The loop submodule is used to repeatedly perform the following operations to obtain multiple initial planes: randomly determine at least three points from at least two line segments; randomly generate an initial plane based on the at least three points; determine a fourth target point from the set of field point clouds; the distance between the fourth target point and the initial plane is less than a second predetermined threshold; determine a target initial plane from the multiple initial planes based on the fourth target point; the number of fourth target points in the target initial plane is greater than the number of fourth target points in other initial planes besides the target initial plane.
[0130] The second fitting submodule is used to perform plane fitting based on the fourth target point related to the initial target plane to obtain the target plane.
[0131] According to embodiments of this disclosure, the motion posture determination device 900 may further include a first acquisition module, a reconstruction module, a reconstructed motion posture determination module, and a strategy generation module.
[0132] The first acquisition module is used to acquire the target image corresponding to the start time of the motion.
[0133] The reconstruction module is used to perform three-dimensional reconstruction of the joints of the target object in the target image to obtain the position of the target object's torso.
[0134] The reconstructed motion posture determination module is used to determine the reconstructed motion posture of the target object at the moment of motion initiation based on the angle of the torso position relative to the horizontal direction.
[0135] The policy generation module is used to generate target policies for adjusting motion postures based on the reconstructed motion postures and the motion postures from the large model.
[0136] According to embodiments of this disclosure, the motion posture determination device 900 may further include: a second acquisition module, an extraction module, an analysis module, and a speed determination module.
[0137] The second acquisition module is used to acquire the second point cloud to be processed and the point cloud acquisition frame rate; the second point cloud to be processed is acquired at a time adjacent to the start time of the motion;
[0138] The extraction module is used to extract a second object point cloud set for representing the target object from the second point cloud to be processed;
[0139] The analysis module is used to perform principal component analysis on the point cloud set of the second object based on a predetermined point cloud coordinate system to obtain a second geometric model; wherein, the second geometric model indicates the spatial position and shape of the target object at the time of acquisition of the second point cloud to be processed; and
[0140] The speed determination module is used to process the first geometric model, the second geometric model, and the acquisition frame rate to obtain the motion speed.
[0141] According to embodiments of this disclosure, the velocity determination module includes a first determination submodule, a second determination submodule, a displacement calculation submodule, and a velocity calculation submodule.
[0142] The first determining submodule is used to determine the first geometric center in the first geometric model.
[0143] The second determining submodule is used to determine the second geometric center in the second geometric model.
[0144] The displacement calculation submodule is used to obtain the target displacement of the target object at the start of the motion based on the distance between the first geometric center and the second geometric center.
[0145] The velocity calculation submodule is used to obtain the motion velocity based on the target displacement and the acquisition frame rate.
[0146] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.
[0147] According to an embodiment of the present disclosure, an electronic device includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the methods described above.
[0148] According to embodiments of the present disclosure, a non-transitory computer-readable storage medium stores computer instructions, wherein the computer instructions are used to cause a computer to perform the methods described above.
[0149] According to an embodiment of this disclosure, a computer program product includes a computer program that, when executed by a processor, implements the method described above.
[0150] Figure 10 A schematic block diagram of an example electronic device 1000 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0151] like Figure 10 As shown, device 1000 includes a computing unit 1001, which can perform various appropriate actions and processes according to a computer program stored in read-only memory (ROM) 1002 or a computer program loaded into random access memory (RAM) 1003 from storage unit 1008. The RAM 1003 may also store various programs and data required for the operation of device 1000. The computing unit 1001, ROM 1002, and RAM 1003 are interconnected via bus 1004. Input / output (I / O) interface 1005 is also connected to bus 1004.
[0152] Multiple components in device 1000 are connected to I / O interface 1005, including: input unit 1006, such as keyboard, mouse, etc.; output unit 1007, such as various types of monitors, speakers, etc.; storage unit 1008, such as disk, optical disk, etc.; and communication unit 1009, such as network card, modem, wireless transceiver, etc. Communication unit 1009 allows device 1000 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0153] The computing unit 1001 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 1001 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 1001 performs the various methods and processes described above, such as motion attitude determination methods. For example, in some embodiments, the motion attitude determination method may be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 1008. In some embodiments, part or all of the computer program may be loaded and / or installed on device 1000 via ROM 1002 and / or communication unit 1009. When the computer program is loaded into RAM 1003 and executed by the computing unit 1001, one or more steps of the motion attitude determination method described above may be performed. Alternatively, in other embodiments, the computing unit 1001 may be configured to perform a motion attitude determination method by any other suitable means (e.g., by means of firmware).
[0154] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0155] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0156] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0157] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0158] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.
[0159] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, distributed system servers, or servers incorporating blockchain technology.
[0160] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.
[0161] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.
Claims
1. A method for determining motion posture, comprising: Based on the attributes of the target object, the first point cloud to be processed is divided into a first object point cloud set to represent the target object and a field point cloud set to represent the sports field; wherein, the first point cloud to be processed is collected at any time during the period from when the target object enters the sports field to when it starts exercising; In response to determining that the distance between the point with the smallest target dimension value in the first object point cloud set and the target plane is less than a first predetermined threshold, the acquisition time of the first point cloud to be processed is determined as the motion start time of the target object; wherein, the target plane is obtained by plane segmentation using the field point cloud set; and The motion posture of the target object at the start of the motion is determined based on the angle of the fitted line segment of the first object point cloud set relative to the target plane; the fitted line segment is obtained by linear fitting using the first object point cloud set.
2. The method according to claim 1, wherein, The step of dividing the first point cloud to be processed into a first object point cloud set representing the target object and a field point cloud set representing the sports field, based on the attributes of the target object, includes: Based on the attributes of the target object, the first point cloud to be processed is divided into at least two point cloud sets; and By comparing and analyzing the at least two point cloud sets, the first object point cloud set and the field point cloud set are determined from the at least two point cloud sets.
3. The method according to claim 2, wherein, The step of dividing the first point cloud to be processed into at least two point cloud sets based on the attributes of the target object includes: A first threshold and a second threshold are determined based on the attributes of the target object; wherein the first threshold indicates the density of the point cloud set; and the second threshold indicates the size of the point cloud set. In response to determining that the distance between a first point in the first point cloud to be processed and a second point in the first point cloud to be processed is less than a first threshold, the first point and the second point are merged to obtain a first initial point cloud set; and In response to determining that the distance between a third point in the first point cloud to be processed and any point in any of the plurality of first initial point cloud sets is less than a second threshold, the plurality of first initial point cloud sets are merged, and the third point is merged with the second initial point cloud set to obtain the point cloud set.
4. The method according to claim 2, wherein, The at least two point cloud sets include: a first point cloud set and a second point cloud set; The step of determining the first object point cloud set and the site point cloud set from the at least two point cloud sets through comparative analysis includes: A first target point is determined from the first point cloud by comparing the target dimension values of each point in the first point cloud; wherein the target dimension value of the first target point is greater than the target dimension values of all other points in the first point cloud except for the first target point. A second target point is determined from the second point cloud by comparing the target dimension values of each point in the second point cloud; wherein the target dimension value of the second target point is greater than the target dimension values of all other points in the second point cloud except for the second target point. In response to determining that the target dimension value of the first target point is greater than the target dimension value of the second target point, the first point cloud set is determined to be a first object point cloud set, and the second point cloud set is determined to be a field point cloud set; and In response to determining that the target dimension value of the first target point is less than the target dimension value of the second target point, the second point cloud set is determined to be the first object point cloud set, and the first point cloud set is determined to be the field point cloud set.
5. The method according to any one of claims 1-4, wherein, The step of determining the acquisition time of the first point cloud to be processed as the motion start time of the target object in response to determining that the distance between the point with the smallest target dimension value in the first object point cloud set and the target plane is less than a first predetermined threshold includes: Based on a predetermined point cloud coordinate system, principal component analysis is performed on the first object point cloud set to obtain a first geometric model; wherein, the first geometric model indicates the spatial position and shape of the target object at the time of acquisition of the first point cloud to be processed; A third target point is determined from the first geometric model; wherein the target dimension value of the third target point in the predetermined point cloud coordinate system is less than the target dimension values of other points in the first geometric model other than the third target point. In response to determining that the distance between the third target point and the target plane is less than the first predetermined threshold, the acquisition time of the first point cloud to be processed is determined as the motion start time.
6. The method according to claim 5, wherein the step of determining the acquisition time of the first point cloud to be processed as the motion start time of the target object in response to determining that the distance between the point with the smallest target dimension value in the first object point cloud set and the target plane is less than a first predetermined threshold further includes: Based on the distance between points in the field location cloud set, a linear fit is performed on each point in the field location cloud set to obtain at least two line segments; Repeat the following operations to obtain multiple initial planes: At least three points are randomly determined from the at least two line segments; An initial plane is randomly generated based on the at least three points; A fourth target point is determined from the set of location points; the distance between the fourth target point and the initial plane is less than a second predetermined threshold. Based on the fourth target point, a target initial plane is determined from the plurality of initial planes; the number of fourth target points in the target initial plane is greater than the number of fourth target points in other initial planes besides the target initial plane; and The target plane is obtained by performing plane fitting based on the fourth target point associated with the initial target plane.
7. The method according to claim 6, further comprising: Obtain the target image corresponding to the start time of the motion; The joints of the target object in the target image are reconstructed in three dimensions to obtain the torso position of the target object; Based on the angle of the torso position relative to the horizontal direction, the reconstructed motion posture of the target object at the moment of motion initiation is determined; as well as A target strategy for adjusting the motion posture is generated based on the reconstructed motion posture and the motion posture using a large model.
8. The method according to any one of claims 1-7, further comprising: Obtain the second point cloud to be processed and the point cloud acquisition frame rate; The second point cloud to be processed was acquired at a time adjacent to the start time of the motion; Extract a second object point cloud set to characterize the target object from the second point cloud to be processed; Based on a predetermined point cloud coordinate system, principal component analysis is performed on the second object point cloud set to obtain a second geometric model; wherein, the second geometric model indicates the spatial position and shape of the target object at the time of acquisition of the second point cloud to be processed; as well as The motion speed is obtained by processing the first geometric model, the second geometric model, and the acquisition frame rate.
9. The method according to claim 8, wherein, The process of processing the first geometric model, the second geometric model, and the acquisition frame rate to obtain the motion speed includes: Determine the first geometric center in the first geometric model; Determine the second geometric center in the second geometric model; Based on the distance between the first geometric center and the second geometric center, the target displacement of the target object at the start of the motion is obtained; and The motion speed is obtained based on the target displacement and the acquisition frame rate.
10. A motion posture determination device, comprising: The segmentation module is used to divide the first point cloud to be processed into a first object point cloud set representing the target object and a field point cloud set representing the sports field based on the attributes of the target object; wherein, the first point cloud to be processed is collected at any time during the period from when the target object enters the sports field to when it starts exercising; The comparison module is configured to determine the acquisition time of the first point cloud to be processed as the motion start time of the target object in response to determining that the distance between the point with the smallest target dimension value in the first object point cloud set and the target plane is less than a first predetermined threshold; wherein the target plane is obtained by plane segmentation using the field point cloud set; and The determination module is used to determine the motion posture of the target object at the moment of motion initiation based on the angle of the fitted line segment of the first object point cloud set relative to the target plane; the fitted line segment is obtained by linear fitting using the first object point cloud set.
11. An electronic device, comprising: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-9.
12. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-9.
13. A computer program product comprising a computer program that, when executed by a processor, implements the method according to any one of claims 1-9.