Motion analysis and correction methods, systems, and storage media for aerobics training

By extracting image elements from aerobics training videos and generating classification functions and key point feature values, the problem of complex and inaccurate motion recognition in existing technologies is solved, achieving efficient and accurate motion correction and improving the training effect of aerobics.

CN119649455BActive Publication Date: 2025-12-02ZHENGZHOU UNIV +1
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411729896.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-29
Publication Date
2025-12-02
Estimated Expiration
2044-11-29

AI Technical Summary

Technical Problem

Existing technologies struggle to effectively identify and correct training movements in online aerobics training, and fail to effectively eliminate the influence of objects other than the human body in the training video, resulting in complex and inaccurate movement recognition.

Method used

By extracting training images from aerobics training videos, classifying each image element, removing image elements of the preset category, and using the classification function and key point feature values ​​of the image elements to generate correction suggestions, the training movements are identified and corrected.

Benefits of technology

It enables efficient and accurate identification and correction of training movements in aerobics training videos, simplifies the movement analysis process, and improves training effectiveness.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119649455B_ABST
    Figure CN119649455B_ABST
Patent Text Reader

Abstract

This invention belongs to the field of aerobics movement correction technology, specifically relating to a method, system, and storage medium for movement analysis and correction in aerobics training. The method includes: S1, a preprocessing module acquires training videos, extracts all training images from the training videos, and determines the category of each image element based on the function value of the classification function corresponding to each image element; S2, the preprocessing module removes image elements of preset categories from the training images, and a comparison module determines the training image corresponding to each standard image; S3, the comparison module detects several key points of the human body in each standard image and the corresponding training image, extracts the feature values ​​of the key points, and combines the feature values ​​of the key points into a feature sequence; S4, the analysis module generates correction suggestions for the training image corresponding to each standard image. This invention can generate correction suggestions for aerobics movements.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of aerobics movement correction technology, specifically relating to a movement analysis and correction method, system, and storage medium for aerobics training. Background Technology

[0002] Currently, aerobics is becoming increasingly popular as a fitness activity. However, people usually practice aerobics offline under the guidance of a teacher, which is costly. Therefore, there is a need for a new way to practice aerobics online. By analyzing aerobics training videos, problems in the training movements can be automatically identified, and then corrective suggestions can be provided.

[0003] A similar prior art is Chinese patent application CN113065505A, which provides a method and system for rapid body movement recognition. The method includes: selecting a body movement discrimination joint point among human joint points to establish a simplified human joint model; using the joint angle parameter and joint vertical height parameter in the simplified human joint model as movement discrimination parameters; establishing a human central projection coordinate system for obtaining movement discrimination parameters, using a body movement discrimination joint point in the simplified human joint model as the origin; establishing a movement recognition model based on the variation characteristics of the movement discrimination parameters corresponding to the body movement; continuously acquiring movement image frames; obtaining movement discrimination parameters from the human central projection coordinate system based on the movement image frames; and using the movement recognition model to realize specific movement recognition based on the obtained movement discrimination parameters. However, this patent application does not consider excluding the influence of objects other than the human body in the image frames when recognizing movements from the image frames. Furthermore, a similar prior art exists in Chinese patent application CN110490034A, which provides a motion analysis device, a motion analysis method, a recording medium, and a motion analysis system. The motion analysis device includes: an acquisition unit that acquires multiple motion information representing the actions of multiple subjects; a classification unit that classifies the multiple motion information into any one of multiple groups; and an analysis unit that analyzes the subjects' actions based on the motion information classified into any one of the multiple groups. Each of the multiple motion information pieces includes skeletal information representing the positions of multiple body parts associated with the skeleton of the multiple subjects. The classification unit uses the skeletal information contained in each of the multiple motion information pieces to classify the multiple motion information pieces. However, the motion analysis method in this patent application is relatively complex. Summary of the Invention

[0004] This invention extracts all training images from aerobics training videos, classifies each image element in all training images into categories, removes image elements of preset categories from all training images, compares each standard image with all the removed training images, determines the training image corresponding to each standard image, and generates correction suggestions for the training image corresponding to each standard image.

[0005] To achieve the aforementioned objectives, this invention provides the following method for motion analysis and correction in aerobics training, which mainly includes the following steps:

[0006] S1. The preprocessing module acquires the training video and extracts all the training images from the training video. At each time, a preset number of training images are selected from all the training images. Based on the image element values ​​of all image elements in the preset number of training images, a classification function for each image element is generated. The category of each image element is determined according to the function value of the classification function corresponding to each image element.

[0007] S2. For each training image, the preprocessing module removes image elements of a preset category from the training image, and the comparison module obtains several standard images, compares each standard image with all the training images after the removal process, and determines the training image corresponding to each standard image.

[0008] S3. The comparison module detects several human key points in each standard image and the corresponding training image. The several human key points include head feature points, shoulder feature points, elbow feature points, wrist feature points, hip feature points, knee feature points, and ankle feature points. The module extracts feature values ​​including position, direction, and velocity of the several human key points and combines the feature values ​​of the several human key points into a feature sequence.

[0009] S4. The analysis module analyzes the feature sequence of each standard image and the feature sequence of the training image corresponding to each standard image to identify several human key points in the training image corresponding to each standard image that deviate from the different human key points in each standard image, and generates correction suggestions for the training image corresponding to each standard image.

[0010] As a preferred embodiment of the present invention, a classification function for each image element is generated based on the image element values ​​of all image elements in a preset number of training images, comprising the following steps:

[0011] S111. For each training image with the same coordinates, a preset number of image elements are used to obtain the first image element value component, the second image element value component, and the third image element value component for each image element.

[0012] S112. Regarding a preset number of image elements, the first difference between the first image element value component of the previous image element and the first image element value component of the next image element is calculated sequentially. A specific first difference is determined from the first difference between the preset number and one number. The second difference between the second image element value component of the previous image element and the second image element value component of the next image element is calculated sequentially. A specific second difference is determined from the second difference between the preset number and one number. The third difference between the third image element value component of the previous image element and the third image element value component of the next image element is calculated sequentially. A specific third difference is determined from the third difference between the preset number and one number.

[0013] S113. Calculate a first representative value based on a specific first difference, calculate a second representative value based on a specific second difference, calculate a third representative value based on a specific third difference, and for each image element in a preset number of image elements, generate a first intermediate function based on the first image element value component and the first representative value, generate a second intermediate function based on the second image element value component and the second representative value, generate a third intermediate function based on the third image element value component and the third representative value, multiply the first intermediate function, the second intermediate function, and the third intermediate function to obtain a sub-classification function, and add the sub-classification functions corresponding to the preset number of image elements to obtain the classification function corresponding to the preset number of image elements.

[0014] As a preferred embodiment of the present invention, determining the category of each image element based on the function value of the classification function corresponding to each image element includes: classifying the image element into a first category when the function value of the classification function corresponding to the image element is less than a first threshold; classifying the image element into a second category when the function value of the classification function corresponding to the image element is greater than a second threshold; and classifying the image element into a third category when the function value of the classification function corresponding to the image element is greater than or equal to the first threshold and less than or equal to the second threshold.

[0015] As a preferred embodiment of the present invention, after determining the category of each image element based on the function value of the classification function corresponding to each image element, the following steps are further included:

[0016] S121. Using the same segmentation method, a preset number of training images are divided into several training image regions. Each time, based on the preset number of training image regions at the same position in the preset number of training images, the difference between the number of image elements belonging to the first category in the next training image region and the number of image elements belonging to the first category in the previous training image region is calculated. The first value and the second value are determined according to the difference between the preset number and the number of images belonging to the third category in the next training image region and the number of image elements belonging to the third category in the previous training image region are calculated. The third value and the fourth value are determined according to the difference between the preset number and the number of images belonging to the third category in the next training image region.

[0017] S122. For a preset number of training image regions, determine the range of values ​​for a first contrast value and a range of values ​​for a second contrast value. The first contrast value is greater than or equal to the product of the first value minus the second value and the preset ratio, and less than or equal to the product of the first value plus the second value and the preset ratio. The second contrast value is greater than or equal to the product of the third value minus the fourth value and the preset ratio, and less than or equal to the product of the third value plus the fourth value and the preset ratio.

[0018] As a preferred embodiment of the present invention, after determining the values ​​of the first contrast value and the second contrast value for a preset number of training image regions, the following steps are further included:

[0019] S1221. In a preset number of training image regions, calculate the difference between the first number of image elements belonging to the first category in the next training image region and the first number of image elements belonging to the first category in the previous training image region, and at the same time calculate the difference between the second number of image elements belonging to the third category in the next training image region and the second number of image elements belonging to the third category in the previous training image region.

[0020] S1222. Determine whether the difference of the first number is within the range of the first comparison value. If not, update the first threshold. If yes, keep the first threshold. Determine whether the difference of the second number is within the range of the second comparison value. If not, update the second threshold. If yes, keep the second threshold. If neither the first nor the second threshold is updated, continue with S1224. Otherwise, continue with S1223.

[0021] S1223, Reclassify the category to which each image element in the next training image region belongs, and jump to S1221;

[0022] S1224, Update the next training image region, and jump to S1221.

[0023] As a preferred embodiment of the present invention, each standard image is compared with all the training images after the removal process to determine the training image corresponding to each standard image, including the following steps:

[0024] S211. Determine several image elements in the standard image, and several standard image blocks with the coordinates of the several image elements as the central coordinates. In each training image after removal processing, find several training image blocks corresponding to the several standard image blocks, and record the central coordinates of the several training image blocks.

[0025] S212. For each training image block in each training image after removal processing, determine whether the center coordinate of the training image block is close to the center coordinate of the standard image block corresponding to the training image block. If yes, increase the preset recording value by 1; otherwise, keep the recording value.

[0026] S213. For each training image that has undergone the removal process, calculate the result value of the record value corresponding to the training image divided by the total number of training image blocks in the training image. Among the several training images corresponding to the result value that is greater than the first result value threshold, determine the training image corresponding to the largest result value as the training image corresponding to the standard image.

[0027] As a preferred embodiment of the present invention, the method further includes the following steps: comparing each standard image with all the training images after the removal process to determine the training image corresponding to each standard image.

[0028] S221. Determine several image elements in the standard image, and several standard image blocks with the coordinates of the several image elements as the central coordinates. In each training image after removal processing, find several training image blocks that correspond to the several standard image blocks.

[0029] S222. For each training image block in each removed training image, calculate the similarity value between the training image block and the standard image block corresponding to the training image block, and based on the similarity values ​​corresponding to all training image blocks in each removed training image, determine the first importance value and the second importance value, and calculate the result value obtained by dividing the first importance value by the second importance value.

[0030] S223. Based on all the training images that have undergone the removal process, among the several training images corresponding to the result values ​​that are greater than the second result value threshold, the training image corresponding to the largest result value is determined as the training image corresponding to the standard image.

[0031] This invention also provides a motion analysis and correction system for aerobics training, comprising the following modules:

[0032] The preprocessing module is used to acquire training videos, extract all training images from the training videos, select a preset number of training images from all the training images each time, generate a classification function for each image element based on the image element values ​​of all image elements in the preset number of training images, determine the category of each image element based on the function value of the classification function corresponding to each image element, and remove image elements of a preset category from the training images for each training image.

[0033] The comparison module is used to acquire several standard images, compare each standard image with all the training images after the removal process, and determine the training image corresponding to each standard image. It is also used to detect several human key points in each standard image and the training image corresponding to each standard image. The several human key points include the head, shoulder, elbow, wrist, hip, knee, and ankle. The module extracts feature values ​​including position, orientation, and velocity of the several human key points and combines the feature values ​​of the several human key points into a feature sequence.

[0034] The analysis module is used to analyze the feature sequences of each standard image and the feature sequences of the corresponding training images to identify several human key points in the training images corresponding to each standard image that deviate from the different human key points in each standard image, and to generate correction suggestions for the training images corresponding to each standard image.

[0035] The present invention also provides a storage medium storing program instructions, wherein the program instructions, when executed, control the device where the storage medium is located to perform any of the methods described above.

[0036] Compared with the prior art, the beneficial effects of the present invention are at least as follows:

[0037] In this invention, firstly, the preprocessing module acquires the training video and extracts all training images from it. Each time, a preset number of training images are selected from all the training images, and the category of each image element is determined based on the function value of the classification function corresponding to each image element. Secondly, for each training image, the preprocessing module removes image elements of a preset category from the training image, and the comparison module obtains several standard images. Each standard image is compared with all the training images after the removal process to determine the training image corresponding to each standard image. Thirdly, the comparison module detects several human key points in each standard image and the training image corresponding to each standard image, extracts the feature values ​​of each human key point, and forms a feature sequence from the feature values ​​of the several human key points. Finally, the analysis module analyzes several human key points in the training image corresponding to each standard image that deviate from the different human key points in each standard image, and generates correction suggestions for the training image corresponding to each standard image. This invention can automatically generate corrective suggestions for aerobics movements. Furthermore, this invention categorizes each image element in all training images and removes image elements of preset categories from all training images. This eliminates the influence of objects other than the human body in the training images when recognizing movements from the training images. In addition, this invention compares the standard image with all the training images after the removal process and finds the training image that is most similar to the standard image, which can easily and efficiently identify movements in the training images. Attached Figure Description

[0038] Figure 1 This is a flowchart of the motion analysis and correction method for aerobics training according to the present invention;

[0039] Figure 2 This is a structural diagram of the motion analysis and correction system for aerobics training according to the present invention. Detailed Implementation

[0040] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.

[0041] It is understood that the terms "first," "second," etc., used in this application may be used herein to describe various elements, but unless otherwise specified, these elements are not limited by these terms. These terms are used only to distinguish one element from another. For example, without departing from the scope of this application, a first script may be referred to as a second script, and similarly, a second script may be referred to as a first script.

[0042] For reference Figure 1 As shown, this invention provides a motion analysis and correction method for aerobics training, which is implemented by performing the following main steps:

[0043] S1. The preprocessing module acquires the training video and extracts all the training images from the training video. At each time, a preset number of training images are selected from all the training images. Based on the image element values ​​of all image elements in the preset number of training images, a classification function for each image element is generated. The category of each image element is determined according to the function value of the classification function corresponding to each image element.

[0044] S2. For each training image, the preprocessing module removes image elements of a preset category from the training image, and the comparison module obtains several standard images, compares each standard image with all the training images after the removal process, and determines the training image corresponding to each standard image.

[0045] S3. The comparison module detects several human key points in each standard image and the corresponding training image. The several human key points include head feature points, shoulder feature points, elbow feature points, wrist feature points, hip feature points, knee feature points, and ankle feature points. The module extracts feature values ​​including position, direction, and velocity of the several human key points and combines the feature values ​​of the several human key points into a feature sequence.

[0046] S4. The analysis module analyzes the feature sequence of each standard image and the feature sequence of the training image corresponding to each standard image to identify several human key points in the training image corresponding to each standard image that deviate from the different human key points in each standard image, and generates correction suggestions for the training image corresponding to each standard image.

[0047] Specifically, in S1, the preprocessing module extracts all the training images that make up the training video based on the acquired aerobics training video. Each time, the preprocessing module selects a preset number of training images from all the training images and classifies all the image elements in the preset number of training images. The preset number of training images selected by the preprocessing module is different each time. Of course, if the number of unselected training images is less than the preset number, only those unselected training images can be selected. Here, we will use one processing operation of the preprocessing module as an example. After selecting the preset number of training images, the preprocessing module generates a classification function for each image element based on the image element values ​​of all the image elements in the preset number of training images. Based on the function value of the classification function corresponding to each image element, the category of each image element is determined. The specific process will be described below. In S2, the preprocessing module removes image elements of a preset category from each training image. These preset categories will be described below. Based on this, the comparison module obtains several standard images and compares each standard image with all the training images after the removal process. It determines the training image corresponding to each standard image. It's important to note that the training image corresponding to a standard image is the one most similar to the standard image; the actions in the standard image and the actions in the corresponding training image are considered identical. Furthermore, since several standard images have been preprocessed, they do not contain image elements of the preset category. In S3, the processing performed by the comparison module on a single standard image is explained. The comparison module detects several human keypoints in both the standard image and the corresponding training image. These keypoints include head, shoulder, elbow, wrist, hip, knee, and ankle features. It extracts feature values, including position, orientation, and velocity, from each keypoint and then combines these feature values ​​into a feature sequence. In S4, the processing performed by the analysis module on a standard image is explained. Based on the feature sequence of the standard image and the feature sequence of the training image corresponding to the standard image, the analysis module analyzes several human key points in the training image corresponding to the standard image that deviate from the standard image and generates correction suggestions for the training image corresponding to the standard image. The deviations include positional deviation, orientation deviation, and velocity deviation.

[0048] Using the methods described above, problems in aerobics movements can be identified simply by watching aerobics training videos, providing corrective suggestions and thus enhancing the training effect of aerobics.

[0049] Furthermore, a classification function for each image element is generated based on the image element values ​​of all image elements in a preset number of training images, including the following steps:

[0050] S111. For each training image with the same coordinates, a preset number of image elements are used to obtain the first image element value component, the second image element value component, and the third image element value component for each image element.

[0051] S112. Regarding a preset number of image elements, the first difference between the first image element value component of the previous image element and the first image element value component of the next image element is calculated sequentially. A specific first difference is determined from the first difference between the preset number and one number. The second difference between the second image element value component of the previous image element and the second image element value component of the next image element is calculated sequentially. A specific second difference is determined from the second difference between the preset number and one number. The third difference between the third image element value component of the previous image element and the third image element value component of the next image element is calculated sequentially. A specific third difference is determined from the third difference between the preset number and one number.

[0052] S113. Calculate a first representative value based on a specific first difference, calculate a second representative value based on a specific second difference, calculate a third representative value based on a specific third difference, and for each image element in a preset number of image elements, generate a first intermediate function based on the first image element value component and the first representative value, generate a second intermediate function based on the second image element value component and the second representative value, generate a third intermediate function based on the third image element value component and the third representative value, multiply the first intermediate function, the second intermediate function, and the third intermediate function to obtain a sub-classification function, and add the sub-classification functions corresponding to the preset number of image elements to obtain the classification function corresponding to the preset number of image elements.

[0053] Specifically, this section describes how to generate a classification function for each image element in a preset number of training images. In S111, a preset number of image elements with the same coordinates in the preset number of training images are determined. The determination process includes: establishing an image coordinate system on the preset number of training images, determining the image elements at the same coordinates in the preset number of image coordinate systems, and after determining the preset number of image elements, obtaining the first image element value component, the second image element value component, and the third image element value component for each image element. The first image element value component can be a Red value, the second image element value component can be a Green value, and the third image element value component can be a Blue value. In S112, based on a preset number of image elements, the first difference between the first image element value component of the previous image element and the first image element value component of the next image element is calculated sequentially. For ease of understanding, for example, the first difference between the first image element value component of the first image element and the first image element value component of the second image element is calculated, then the first difference between the first image element value component of the second image element and the first image element value component of the third image element is calculated, and so on, until the preset number minus one number of first differences is obtained. It should be noted that the calculation of the first difference actually involves first calculating the difference between the two values, then calculating the absolute value of the difference, and finally determining a specific first difference from the preset number minus one number of first differences. This specific first difference can be the preset number minus one. The middle value of the first difference of the number of elements is calculated, and the second difference between the second image element value component of the previous image element and the second image element value component of the next image element is calculated sequentially. A specific second difference is determined from the second difference of the preset number minus one number. The calculation method of the second difference is the same as that of the first difference. The specific second difference can be the middle value of the second difference of the preset number minus one number. The third difference between the third image element value component of the previous image element and the third image element value component of the next image element is calculated sequentially. A specific third difference is determined from the third difference of the preset number minus one number. The calculation method of the third difference is the same as that of the first difference. The specific third difference can be the middle value of the third difference of the preset number minus one number.In S113, a first representative value is calculated based on a specific first difference. The calculation process includes first calculating the product of 0.68 and the square root of 2, then dividing the specific first difference by the product. A second representative value is calculated based on a specific second difference, and a third representative value is calculated based on a specific third difference. The calculation processes for the second and third representative values ​​are similar to those for the first representative value. Then, for each image element in a preset number of image elements, a first intermediate function is generated based on the first image element value component and the first representative value. The first intermediate function can be Normal. The distribution function uses the expectation and variance of the first image element value component and the first representative value, respectively. Similarly, a second intermediate function is generated based on the second image element value component and the second representative value of the image element, and a third intermediate function is generated based on the third image element value component and the third representative value of the image element. Then, the first intermediate function, the second intermediate function, and the third intermediate function are multiplied to obtain a sub-classification function. After a preset number of image elements have corresponding sub-classification functions, the sub-classification functions corresponding to the preset number of image elements are added together to obtain the classification function corresponding to the preset number of image elements. That is, the classification functions corresponding to the preset number of image elements are the same. After that, S111 to S113 are repeated until each image element in the preset number of training images has a corresponding classification function.

[0054] Furthermore, determining the category of each image element based on the function value of the classification function corresponding to each image element includes: classifying the image element into the first category when the function value of the classification function corresponding to the image element is less than a first threshold; classifying the image element into the second category when the function value of the classification function corresponding to the image element is greater than a second threshold; and classifying the image element into the third category when the function value of the classification function corresponding to the image element is greater than or equal to the first threshold and less than or equal to the second threshold.

[0055] Specifically, the method for generating a classification function for each image element in all training images has been introduced above. Here, we will take classifying a single image element as an example. The first image element value component of the image element is input as a variable into all the first intermediate functions of the classification function; the second image element value component is input as a variable into all the second intermediate functions; and the third image element value component is input as a variable into all the third intermediate functions, thus obtaining the function value of the classification function. According to the properties of the classification function, if there are many image element values ​​in other training images that are close to the image element's value, the classification function... The function value of the classification function will be larger if the numerical value is less than the first threshold, and smaller if the numerical value is less than the second threshold. Therefore, if the function value of the classification function is less than the first threshold, the image element is classified into the first category, which corresponds to human images. If the function value of the classification function is greater than the second threshold, the image element is classified into the second category, which corresponds to images of objects other than humans, such as stationary objects. If the function value of the classification function is greater than or equal to the first threshold and less than or equal to the second threshold, the image element is classified into the third category, where the specific image to be classified is uncertain. Using this method, we can initially classify each image element into its corresponding category.

[0056] Furthermore, after determining the category of each image element based on the function value of the classification function corresponding to each image element, the following steps are also included:

[0057] S121. Using the same segmentation method, a preset number of training images are divided into several training image regions. Each time, based on the preset number of training image regions at the same position in the preset number of training images, the difference between the number of image elements belonging to the first category in the next training image region and the number of image elements belonging to the first category in the previous training image region is calculated. The first value and the second value are determined according to the difference between the preset number and the number of images belonging to the third category in the next training image region and the number of image elements belonging to the third category in the previous training image region are calculated. The third value and the fourth value are determined according to the difference between the preset number and the number of images belonging to the third category in the next training image region.

[0058] S122. For a preset number of training image regions, determine the range of values ​​for a first contrast value and a range of values ​​for a second contrast value. The first contrast value is greater than or equal to the product of the first value minus the second value and the preset ratio, and less than or equal to the product of the first value plus the second value and the preset ratio. The second contrast value is greater than or equal to the product of the third value minus the fourth value and the preset ratio, and less than or equal to the product of the third value plus the fourth value and the preset ratio.

[0059] Specifically, as described above, a preliminary classification has been performed for each image element in a preset number of training images. To ensure the accuracy of the category corresponding to each image element, a further classification is required for each image element in the preset number of training images. Before introducing this process, the preparatory work for this process needs to be described. In S121, the preset number of training images are divided into several training image regions using the same segmentation method. For ease of understanding, for example, each training image is divided into four equal training image regions, including the training image region in the upper left corner, the training image region in the lower left corner, the training image region in the upper right corner, and the training image region in the lower right corner. Then, for the preset number of training image regions at the same position in the preset number of training images, the range of the first contrast value and the range of the second contrast value are determined. This explanation uses a single determination process as an example. It involves determining a predetermined number of training image regions at the same location within a predetermined number of training images. For ease of understanding, for instance, determining a predetermined number of training image regions in the upper left corner of a predetermined number of training images. After determining the predetermined number of training image regions, the difference between the number of image elements belonging to the first category in the next training image region and the number of image elements belonging to the first category in the previous training image region is calculated. For ease of understanding, for instance, the difference between the number of image elements belonging to the first category in the second training image region and the number of image elements belonging to the first category in the first training image region is calculated. The process is repeated for the third training image region. The difference between the number of image elements in the first training image region and the number of image elements belonging to the first category in the second training image region is calculated, and so on, to obtain a difference of a preset number minus one number. The first value and the second value are determined based on the difference of the preset number minus one number. The first value can be calculated using the formula for calculating the μ value, and the second value can be calculated using the formula for calculating the σ value. The difference between the number of image elements belonging to the third category in the next training image region and the number of image elements belonging to the third category in the previous training image region is calculated. The third value and the fourth value are determined based on the difference of the preset number minus one number. The calculation methods for the third value and the fourth value are similar to the calculation methods for the first value and the second value, respectively. In S122, for a preset number of training image regions, the range of values ​​for the first contrast value and the range of values ​​for the second contrast value are determined. The first contrast value is greater than or equal to the product of the first value minus the second value and the preset ratio, and less than or equal to the product of the first value plus the second value and the preset ratio. The second contrast value is greater than or equal to the product of the third value minus the fourth value and the preset ratio, and less than or equal to the product of the third value plus the fourth value and the preset ratio. It should be noted that the preset ratio is a value greater than or equal to zero and less than one.

[0060] Furthermore, after determining the values ​​of the first contrast value and the second contrast value for a preset number of training image regions, the following steps are also included:

[0061] S1221. In a preset number of training image regions, calculate the difference between the first number of image elements belonging to the first category in the next training image region and the first number of image elements belonging to the first category in the previous training image region, and at the same time calculate the difference between the second number of image elements belonging to the third category in the next training image region and the second number of image elements belonging to the third category in the previous training image region.

[0062] S1222. Determine whether the difference of the first number is within the range of the first comparison value. If not, update the first threshold. If yes, keep the first threshold. Determine whether the difference of the second number is within the range of the second comparison value. If not, update the second threshold. If yes, keep the second threshold. If neither the first nor the second threshold is updated, continue with S1224. Otherwise, continue with S1223.

[0063] S1223, Reclassify the category of each image element in the next training image region, then jump to S1221;

[0064] S1224, Update the next training image region and jump to S1221.

[0065] Specifically, the preset number of training images have already been divided into several training image regions, and the process of determining the first and second contrast values ​​has been explained based on the preset number of training image regions in the upper left corner of the preset number of training images. For ease of understanding, this section will further explain how to further classify each image element in these preset number of training image regions. In S1221, within the preset number of training image regions, the difference between the first number of image elements belonging to the first category in the next training image region and the first number of image elements belonging to the first category in the previous training image region is calculated. Simultaneously, the difference between the second number of image elements belonging to the third category in the next training image region and the second number of image elements belonging to the third category in the previous training image region is calculated. For ease of understanding, the next training image region at this time is called the second training image region, and the previous training image region at this time is called the first training image region. In S1222, it is determined whether the first numerical difference is within the range of the first comparison value. If not, the first threshold is updated. The update process includes: if the first numerical difference is less than the minimum value of the range of the first comparison value, the first threshold is adaptively increased; if the first numerical difference is greater than the maximum value of the range of the first comparison value, the first threshold is adaptively decreased; if yes, the first threshold remains unchanged. At the same time, it is determined whether the second numerical difference is within the range of the second comparison value. If not, the second threshold is updated. The update process includes: if the second numerical difference is less than the minimum value of the range of the second comparison value, the second threshold is adaptively increased; if the second numerical difference is greater than the maximum value of the range of the second comparison value, the second threshold is adaptively decreased; if yes, the second threshold remains unchanged. After all the determination processes are completed, if neither the first nor the second threshold has been updated, then S1224 continues; otherwise, that is, if the first and second thresholds are updated individually or simultaneously, then S1223 continues.To facilitate understanding, continuing with the example above, let's first assume that neither the first nor the second threshold has been updated. Then, we jump to S1224, where the next training image region is updated to the third training image region. We then jump to S1221. Next, let's assume that both the first and second thresholds are updated simultaneously. Then, we jump to S1223. Since both thresholds have been updated, the category of each image element in the next training image region is reclassified based on the updated thresholds. The next training image region is still the second training image region. We then jump to S1221. Continuing, let's assume that in S1222, neither the first nor the second threshold has been updated. Then, we jump to S1224. Note that at this point, based on the updated thresholds, we need to reclassify the category of each image element in all other training image regions besides the first and second training image regions. The next training image region is now updated to the third training image region. We then jump to S1221. It's important to note that the termination condition for this method is that it's no longer possible to update the next training image region in S1224. The above methods can ensure the accuracy of the classification of image elements.

[0066] Furthermore, the preset category refers to the second category.

[0067] Furthermore, each standard image is compared with all the training images after the removal process to determine the training image corresponding to each standard image, including the following steps:

[0068] S211. Determine several image elements in the standard image, and several standard image blocks with the coordinates of the several image elements as the central coordinates. In each training image after removal processing, find several training image blocks corresponding to the several standard image blocks, and record the central coordinates of the several training image blocks.

[0069] S212. For each training image block in each training image after removal processing, determine whether the center coordinate of the training image block is close to the center coordinate of the standard image block corresponding to the training image block. If yes, increase the preset recording value by 1; otherwise, keep the recording value.

[0070] S213. For each training image that has undergone the removal process, calculate the result value of the record value corresponding to the training image divided by the total number of training image blocks in the training image. Among the several training images corresponding to the result value that is greater than the first result value threshold, determine the training image corresponding to the largest result value as the training image corresponding to the standard image.

[0071] Specifically, as mentioned above, image elements belonging to the second category have been removed from all training images. Building upon this, we will now describe how to find the training image corresponding to each standard image. In S211, several image elements are determined in the standard images. It's important to note that these image elements have a certain degree of uniqueness. Simultaneously, several standard image blocks are determined with the coordinates of these image elements as their central coordinates. Furthermore, in each training image after the removal process, several training image blocks corresponding to these standard image blocks are searched. This correspondence can be understood as the standard image blocks and training image blocks having a certain degree of similarity. The central coordinates of these training image blocks are recorded; these central coordinates are the coordinates of the central image element within the training image block. In S212, for each training image block in each training image after the removal process, it is determined whether the central coordinates of the training image block are close to the central coordinates of the corresponding standard image block. If so, a preset recorded value is incremented by 1. It's important to note that the initial value of the recorded value is zero. If not, the recorded value remains unchanged. In S213, for each training image that has undergone the removal process, the result value of the record value corresponding to the training image divided by the total number of training image blocks in the training image is calculated. Then, among the several training images corresponding to the result value that is greater than the first result value threshold, the training image corresponding to the largest result value is determined as the training image corresponding to the standard image. The training image corresponding to the standard image refers to the training image that is most similar to the standard image.

[0072] Furthermore, comparing each standard image with all the training images after the removal process to determine the training image corresponding to each standard image also includes the following steps:

[0073] S221. Determine several image elements in the standard image, and several standard image blocks with the coordinates of the several image elements as the central coordinates. In each training image after removal processing, find several training image blocks that correspond to the several standard image blocks.

[0074] S222. For each training image block in each removed training image, calculate the similarity value between the training image block and the standard image block corresponding to the training image block, and based on the similarity values ​​corresponding to all training image blocks in each removed training image, determine the first importance value and the second importance value, and calculate the result value obtained by dividing the first importance value by the second importance value.

[0075] S223. Based on all the training images that have undergone the removal process, among the several training images corresponding to the result values ​​that are greater than the second result value threshold, the training image corresponding to the largest result value is determined as the training image corresponding to the standard image.

[0076] Specifically, another method for finding the training image corresponding to each standard image is introduced here. In S221, several image elements are determined in the standard image, as well as several standard image patches centered on the coordinates of these image elements. These image elements also possess a certain degree of uniqueness. Furthermore, in each removed training image, several training image patches corresponding to the standard image patches are found. This correspondence can also be understood as the standard image patches and training image patches having a certain degree of similarity. In S222, for each training image patch in each removed training image, the similarity value between the training image patch and its corresponding standard image patch is calculated. A larger similarity value indicates greater similarity. Then, based on the similarity values ​​corresponding to all training image patches in each removed training image, a first importance value and a second importance value are determined. The first importance value can be calculated using the formula for μ, and the second importance value can be calculated using σ. 2 The value is calculated using the formula, and the result obtained by dividing the first importance value by the second importance value is also calculated. In S223, based on all the training images that have undergone the removal process, among the several training images corresponding to the result values ​​that are greater than the second result value threshold, the training image corresponding to the largest result value is determined as the training image corresponding to the standard image. The training image corresponding to the standard image also refers to the training image that is most similar to the standard image.

[0077] According to another aspect of the embodiments of the present invention, reference is made to... Figure 2 As shown, a motion analysis and correction system for aerobics training is also provided, including a preprocessing module, a comparison module, and an analysis module, to implement the motion analysis and correction method for aerobics training as described above.

[0078] The specific functions of each module are as follows:

[0079] The preprocessing module is used to acquire training videos, extract all training images from the training videos, select a preset number of training images from all the training images each time, generate a classification function for each image element based on the image element values ​​of all image elements in the preset number of training images, determine the category of each image element based on the function value of the classification function corresponding to each image element, and remove image elements of a preset category from the training images for each training image.

[0080] The comparison module is used to acquire several standard images, compare each standard image with all the training images after the removal process, and determine the training image corresponding to each standard image. It is also used to detect several human key points in each standard image and the training image corresponding to each standard image. The several human key points include head feature points, shoulder feature points, elbow feature points, wrist feature points, hip feature points, knee feature points, and ankle feature points. The module extracts feature values ​​including position, direction, and velocity of the several human key points and combines the feature values ​​of the several human key points into a feature sequence.

[0081] The analysis module is used to analyze the feature sequences of each standard image and the feature sequences of the corresponding training images to identify several human key points in the training images corresponding to each standard image that deviate from the different human key points in each standard image, and to generate correction suggestions for the training images corresponding to each standard image.

[0082] According to another aspect of the present invention, a storage medium is also provided, which stores program instructions, wherein the program instructions, when executed, control the device where the storage medium is located to perform any of the methods described above.

[0083] It should be understood that although the steps in the flowcharts of the various embodiments of the present invention are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the various embodiments may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least a portion of the sub-steps or stages of other steps.

[0084] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and RAMbus dynamic RAM (RDRAM), etc.

[0085] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0086] The above-described embodiments are merely illustrative of several implementations of the present invention, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of the present invention, and these modifications and improvements all fall within the scope of protection of the present invention. Therefore, the scope of protection of this patent should be determined by the appended claims.

[0087] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A method for motion analysis and correction in aerobics training, characterized in that, The method includes the following steps: S1. The preprocessing module acquires the training video and extracts all the training images from the training video. At each time, a preset number of training images are selected from all the training images. Based on the image element values ​​of all image elements in the preset number of training images, a classification function for each image element is generated. The category of each image element is determined according to the function value of the classification function corresponding to each image element. S2. For each training image, the preprocessing module removes image elements of a preset category from the training image, and the comparison module obtains several standard images, compares each standard image with all the training images after the removal process, and determines the training image corresponding to each standard image. S3. The comparison module detects several human key points in each standard image and the corresponding training image. The several human key points include head feature points, shoulder feature points, elbow feature points, wrist feature points, hip feature points, knee feature points, and ankle feature points. The module extracts feature values ​​including position, direction, and velocity of the several human key points and combines the feature values ​​of the several human key points into a feature sequence. S4. The analysis module analyzes the feature sequence of each standard image and the feature sequence of the training image corresponding to each standard image to identify several human key points in the training image corresponding to each standard image that deviate from the different human key points in each standard image, and generates correction suggestions for the training image corresponding to each standard image. The classification function for each image element is generated based on the image element values ​​of all image elements in a preset number of training images, including the following steps: S111. For each training image with the same coordinates, a preset number of image elements are used to obtain the first image element value component, the second image element value component, and the third image element value component for each image element. S112. Regarding a preset number of image elements, the first difference between the first image element value component of the previous image element and the first image element value component of the next image element is calculated sequentially. A specific first difference is determined from the first difference between the preset number and one number. The second difference between the second image element value component of the previous image element and the second image element value component of the next image element is calculated sequentially. A specific second difference is determined from the second difference between the preset number and one number. The third difference between the third image element value component of the previous image element and the third image element value component of the next image element is calculated sequentially. A specific third difference is determined from the third difference between the preset number and one number. S113. Calculate a first representative value based on a specific first difference, calculate a second representative value based on a specific second difference, calculate a third representative value based on a specific third difference, and for each image element in a preset number of image elements, generate a first intermediate function based on the first image element value component and the first representative value of the image element, generate a second intermediate function based on the second image element value component and the second representative value of the image element, generate a third intermediate function based on the third image element value component and the third representative value of the image element, multiply the first intermediate function, the second intermediate function, and the third intermediate function to obtain a sub-classification function, and add the sub-classification functions corresponding to the preset number of image elements to obtain the classification function corresponding to the preset number of image elements; Determining the category of each image element based on the function value of the classification function corresponding to each image element includes: classifying the image element into the first category when the function value of the classification function corresponding to the image element is less than the first threshold; classifying the image element into the second category when the function value of the classification function corresponding to the image element is greater than the second threshold; and classifying the image element into the third category when the function value of the classification function corresponding to the image element is greater than or equal to the first threshold and less than or equal to the second threshold. The preset category is the second category; Each standard image is compared with all the training images after the removal process to determine the corresponding training image for each standard image, including the following steps: S211. Determine several image elements in the standard image, and several standard image blocks with the coordinates of the several image elements as the central coordinates. In each training image after removal processing, find several training image blocks corresponding to the several standard image blocks, and record the central coordinates of the several training image blocks. S212. For each training image block in each training image after removal processing, determine whether the center coordinate of the training image block is close to the center coordinate of the standard image block corresponding to the training image block. If yes, increase the preset recording value by 1; otherwise, keep the recording value. S213. For each training image that has undergone the removal process, calculate the result value of the record value corresponding to the training image divided by the total number of training image blocks in the training image. Among the several training images corresponding to the result value that is greater than the first result value threshold, determine the training image corresponding to the largest result value as the training image corresponding to the standard image.

2. The method according to claim 1, characterized in that, After determining the category of each image element based on the function value of the classification function corresponding to each image element, the following steps are also included: S121. Using the same segmentation method, a preset number of training images are divided into several training image regions. Each time, based on the preset number of training image regions at the same position in the preset number of training images, the difference between the number of image elements belonging to the first category in the next training image region and the number of image elements belonging to the first category in the previous training image region is calculated. The first value and the second value are determined according to the difference between the preset number and the number of images belonging to the third category in the next training image region and the number of image elements belonging to the third category in the previous training image region are calculated. The third value and the fourth value are determined according to the difference between the preset number and the number of images belonging to the third category in the next training image region. S122. For a preset number of training image regions, determine the range of values ​​for a first contrast value and a range of values ​​for a second contrast value. The first contrast value is greater than or equal to the product of the first value minus the second value and the preset ratio, and less than or equal to the product of the first value plus the second value and the preset ratio. The second contrast value is greater than or equal to the product of the third value minus the fourth value and the preset ratio, and less than or equal to the product of the third value plus the fourth value and the preset ratio.

3. The method according to claim 2, characterized in that, After determining the values ​​of the first contrast value and the second contrast value for a preset number of training image regions, the following steps are also included: S1221. In a preset number of training image regions, calculate the difference between the first number of image elements belonging to the first category in the next training image region and the first number of image elements belonging to the first category in the previous training image region, and at the same time calculate the difference between the second number of image elements belonging to the third category in the next training image region and the second number of image elements belonging to the third category in the previous training image region. S1222. Determine whether the difference of the first number is within the range of the first comparison value. If not, update the first threshold. If yes, keep the first threshold. Determine whether the difference of the second number is within the range of the second comparison value. If not, update the second threshold. If yes, keep the second threshold. If neither the first nor the second threshold is updated, continue with S1224. Otherwise, continue with S1223. S1223, Reclassify the category to which each image element in the next training image region belongs, and jump to S1221; S1224, Update the next training image region, and jump to S1221.

4. The method according to claim 1, characterized in that, Each standard image is compared with all the training images after the removal process to determine the corresponding training image for each standard image. This process also includes the following steps: S221. Determine several image elements in the standard image, and several standard image blocks with the coordinates of the several image elements as the central coordinates. In each training image after removal processing, find several training image blocks that correspond to the several standard image blocks. S222. For each training image block in each removed training image, calculate the similarity value between the training image block and the standard image block corresponding to the training image block, and based on the similarity values ​​corresponding to all training image blocks in each removed training image, determine the first importance value and the second importance value, and calculate the result value obtained by dividing the first importance value by the second importance value. S223. Based on all the training images that have undergone the removal process, among the several training images corresponding to the result values ​​that are greater than the second result value threshold, the training image corresponding to the largest result value is determined as the training image corresponding to the standard image.

5. A motion analysis and correction system for aerobics training, used to implement the method described in any one of claims 1-4, characterized in that, Includes the following modules: The preprocessing module is used to acquire training videos, extract all training images from the training videos, select a preset number of training images from all the training images each time, generate a classification function for each image element based on the image element values ​​of all image elements in the preset number of training images, and determine the category of each image element based on the function value of the classification function corresponding to each image element. And it is used to remove image elements of a preset category from each training image; The classification function for each image element is generated based on the image element values ​​of all image elements in a preset number of training images, including: S111, for each preset number of image elements with the same coordinates in a preset number of training images, obtaining the first image element value component, the second image element value component, and the third image element value component for each image element; S112, for the preset number of image elements, sequentially calculating the first difference between the first image element value component of the previous image element and the first image element value component of the next image element, determining a specific first difference from the first difference of the preset number minus one number, and sequentially calculating the second difference between the second image element value component of the previous image element and the second image element value component of the next image element, determining a specific second difference from the second difference of the preset number minus one number, and also sequentially calculating the third image element value of the previous image element. The third difference between the prime value component and the third image element value component of the next image element is determined from the third difference of a preset number minus one number; S113, a first representative value is calculated based on the specific first difference, a second representative value is calculated based on the specific second difference, a third representative value is calculated based on the specific third difference, and for each image element in the preset number of image elements, a first intermediate function is generated based on the first image element value component and the first representative value of the image element, a second intermediate function is generated based on the second image element value component and the second representative value of the image element, and a third intermediate function is generated based on the third image element value component and the third representative value of the image element. The first intermediate function, the second intermediate function, and the third intermediate function are multiplied together to obtain a sub-classification function, and the sub-classification functions corresponding to the preset number of image elements are added together to obtain the classification function corresponding to the preset number of image elements; Determining the category of each image element based on the function value of the classification function corresponding to each image element includes: classifying the image element into the first category if the function value of the classification function corresponding to the image element is less than a first threshold; classifying the image element into the second category if the function value of the classification function corresponding to the image element is greater than a second threshold; and classifying the image element into the third category if the function value of the classification function corresponding to the image element is greater than or equal to the first threshold and less than or equal to the second threshold; wherein, the preset category is the second category; The comparison module is used to acquire several standard images, compare each standard image with all the training images after the removal process, and determine the training image corresponding to each standard image. It is also used to detect several human key points in each standard image and the training image corresponding to each standard image. The several human key points include the head, shoulder, elbow, wrist, hip, knee, and ankle. The module extracts feature values ​​including position, orientation, and velocity of the several human key points and combines the feature values ​​of the several human key points into a feature sequence. The process involves comparing each standard image with all the training images after removal processing to determine the training image corresponding to each standard image, including: S211, identifying several image elements in the standard image and several standard image blocks with the coordinates of the image elements as their center coordinates, and finding several training image blocks corresponding to the several standard image blocks in each training image after removal processing, and recording the center coordinates of the several training image blocks; S212, for each training image block in each training image after removal processing, determining whether the center coordinates of the training image block are close to the center coordinates of the standard image block corresponding to the training image block. If yes, incrementing the preset recorded value by 1; otherwise, keeping the recorded value; S213, for each training image after removal processing, calculating the recorded value corresponding to the training image divided by the total number of training image blocks in the training image, and among the several training images corresponding to the result value greater than the first result value threshold, determining the training image corresponding to the standard image as the training image corresponding to the standard image. The analysis module is used to analyze the feature sequences of each standard image and the feature sequences of the corresponding training images to identify several human key points in the training images corresponding to each standard image that deviate from the different human key points in each standard image, and to generate correction suggestions for the training images corresponding to each standard image.

6. A storage medium, characterized in that, The storage medium stores program instructions, wherein when the program instructions are executed, they control the device where the storage medium is located to perform the method described in any one of claims 1 to 4.

Citation Information

Patent Citations

  • Motion analysis apparatus, motion analysis method, recording medium, and motion analysis system

    CN110490034A

  • Method and system for quickly identifying body actions

    CN113065505A

  • Fitness action correction method and electronic equipment

    CN112237730A

  • Human body three-dimensional key point prediction method and device and electronic equipment

    CN112966574A