A scoliosis three-dimensional reconstruction control method and system

By filtering and dynamic analysis of human motion capture data, combined with three-dimensional simulation model and least squares calibration, the problems of unsmooth spine curve and insufficient dynamic adjustment in the existing technology are solved, and 3D with high precision and dynamic adaptability are achieved Scoliosis model generation.

CN119048687BActive Publication Date: 2025-02-18SHANDONG MAIHE ADDITIVE MFG CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411495762.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-25
Publication Date
2025-02-18
Estimated Expiration
2044-10-25

AI Technical Summary

Technical Problem

The existing technology has noise and jitter problems when processing human motion capture data, resulting in the generated spinal curve not being smooth enough, affecting the accuracy and visualization of three-dimensional reconstruction, and lacking an effective dynamic adjustment mechanism, which cannot promptly reflect the individual's movement process. Spinal morphology changes.

Method used

By obtaining human body tracking data, filtering is performed to eliminate noise, obtain motion state, and using a three-dimensional simulated human body model to analyze dynamic changes, calculate dynamic adjustment factors, determine key nodes as control points, calculate interpolation points of spinal curves, and generate continuous Spine curves, finally calibrated by least squares method of 3D spine model.

Benefits of technology

It realizes a more realistic reflection of the spinal morphology of an individual in a moving state, improves the dynamic adaptability and accuracy of the model, and the generated 3D scoliosis model is highly consistent with the actual morphology, improving the degree of automation and generation speed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119048687B_ABST
    Figure CN119048687B_ABST
Patent Text Reader

Abstract

The present invention provides a scoliosis three-dimensional reconstruction control method and system, which relates to the technical field of data processing, and the method comprises: obtaining the motion state of an individual according to smooth joint point data; analyzing the dynamic changes of the spine under the motion state according to a three-dimensional simulation human body model to obtain a dynamic adjustment factor; determining the corresponding key joint points as control points from the smooth joint point data; calculating the interpolation points of the spinal curve according to the control points and the dynamic adjustment factor; generating a continuous spinal curve through the interpolation points of the spinal curve; establishing an initial 3D spinal model according to the physiological structure and morphological characteristics of the human spine; and automatically calibrating the initial 3D spinal model to the continuous spinal curve using the least square method to obtain a final 3D scoliosis model. The present invention can more realistically reflect the spinal morphology of an individual under motion state, and improves the dynamic adaptability of the model.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of data processing, and in particular to a three-dimensional reconstruction control method and system for scoliosis. Background Art

[0002] Traditional scoliosis 3D reconstruction methods are usually based on medical imaging data, such as X-rays, CT or MRI, which provide high accuracy but have disadvantages such as radiation exposure, high cost and inability to monitor in real time. Therefore, in recent years, methods for scoliosis 3D reconstruction based on radiation-free, low-cost and real-time tracking human motion capture data have gradually attracted attention.

[0003] However, this type of method still has some defects in data processing, mainly including the following points:

[0004] For example, the raw joint point data obtained directly from the human motion capture device often contains a lot of noise and jitter, which will cause the generated spine curve to be not smooth enough, thus affecting the accuracy and visualization of 3D reconstruction.

[0005] Some existing methods lack effective dynamic adjustment mechanisms when dealing with dynamically changing spinal morphology, which means that when the spinal morphology of an individual changes during exercise, the reconstructed model may not be able to accurately reflect these changes in a timely manner. Summary of the invention

[0006] The technical problem to be solved by the present invention is to provide a three-dimensional reconstruction control method and system for scoliosis, which can more realistically reflect the spinal morphology of an individual in motion and improve the dynamic adaptability of the model.

[0007] In order to solve the above technical problems, the technical solution of the present invention is as follows:

[0008] In a first aspect, a scoliosis three-dimensional reconstruction control method is provided, the method comprising:

[0009] Obtain human body tracking data, including the three-dimensional coordinate information of each joint point;

[0010] Filter the human body tracking data to obtain smooth joint point data;

[0011] According to the smoothed joint point data, the individual's motion state is obtained;

[0012] According to the three-dimensional simulation human body model, the dynamic changes of the spine in motion are analyzed to obtain the dynamic adjustment factor;

[0013] From the smoothed joint point data, determine the corresponding key joint points as control points;

[0014] Calculate the interpolation points of the spinal curve based on the control points and the dynamic adjustment factors;

[0015] A continuous spine curve is generated through the interpolation points of the spine curve;

[0016] According to the physiological structure and morphological characteristics of the human spine, an initial 3D spine model is established;

[0017] The initial 3D spine model was automatically calibrated to the continuous spine curve using the least squares method to obtain the final 3D scoliosis model.

[0018] Furthermore, the human body tracking data is filtered to obtain smooth joint point data, including:

[0019] Determine the window size L and standard deviation of the Gaussian filter;

[0020] According to the window size L, create a one-dimensional array to store the data points in the window;

[0021] According to the standard deviation, calculate the weight of the Gaussian filter;

[0022] For a given joint point time series data, traverse from the first data point to the last data point. For the currently traversed data point, take it as the center point of the window, and select the (L-1) / 2 data points before and after it to fill in the window.

[0023] According to the weight of the Gaussian filter, each data point in the window is weighted, and the weighted sum is divided by the sum of the weights to obtain the filtered value of the center point of the current window;

[0024] The calculated filtered value replaces the data point at the corresponding position in the original sequence, slides the window forward by one data point until the entire joint point time series is traversed, and saves the filtered joint point time series as smoothed joint point data.

[0025] Furthermore, according to the three-dimensional simulated human body model, the dynamic changes of the spine in the motion state are analyzed to obtain dynamic adjustment factors, including:

[0026] Identify key indicators used to describe dynamic changes in the spine;

[0027] Extracting the time-varying motion trajectory of the spine from the motion data;

[0028] For each key indicator, calculate its change during the exercise;

[0029] Set a benchmark value for each key indicator and calculate the deviation between the actual value of each key indicator in motion and the benchmark value;

[0030] According to the deviations of all key indicators, a comprehensive evaluation result is obtained by weighted summation;

[0031] Based on the comprehensive evaluation results, the dynamic adjustment factor reflecting the degree of dynamic change of the spine in motion is calculated.

[0032] Furthermore, based on the deviations of all key indicators, a comprehensive evaluation result is obtained by weighted summation, including:

[0033] Based on the deviations of all key indicators, To obtain comprehensive evaluation results ;

[0034] in, is a logarithmic function; Is a summation symbol, which means to accumulate the weighted deviations of all evaluation indicators. represents the total number of indicators; It is Evaluation indicators in time The weight of It is the deviation Take the square root of the absolute value of Indicates Deviation of an indicator.

[0035] Furthermore, based on the comprehensive evaluation results, the dynamic adjustment factor reflecting the dynamic change degree of the spine in motion is calculated, including:

[0036] According to the comprehensive evaluation results, Calculate the dynamic adjustment factor that reflects the dynamic changes of the spine in motion ;

[0037] in, is a scaling factor that compares the current comprehensive evaluation results Compared with the baseline state The logarithm of ; is an environmental sensitivity adjustment factor, where It represents the environmental sensitivity index from 0 to 10.

[0038] Furthermore, the control points include the center points of the cervical spine, thoracic spine, and lumbar spine regions.

[0039] Furthermore, based on the control points and the dynamic adjustment factors, the interpolation points of the spinal curve are calculated, including:

[0040] Between adjacent control points, Initially define the shape of the spinal curve, where are the coordinates of the interpolation points; is a parameter indicating the position of the interpolation, with a value ranging from 0 to 1; and Respectively represent and control points;

[0041] The dynamic adjustment factor is used as a parameter to adjust the shape of the initially defined spinal curve to obtain an adjusted interpolation point, wherein the calculation formula of the adjusted interpolation point is:

[0042] ;

[0043] in, ; , and is the adjustment parameter; Indicates the adjusted The coordinates of the interpolation points;

[0044] Set the step size of the interpolation points on the spine curve;

[0045] According to the shape of the initially defined spine curve and the adjusted interpolation points, according to the set step size of the interpolation points on the spine curve, Calculate the interpolation points of the spine curve, where , Indicates the set step size; Indicates the number of interpolation points; is an integer index, indicating the sequence number of the current interpolation point; The final calculated The coordinates of the interpolation points; According to the interpolation parameters The calculated coordinates of the adjusted interpolation points.

[0046] In a second aspect, a scoliosis three-dimensional reconstruction control system includes:

[0047] An acquisition module is used to acquire human body tracking data, including the three-dimensional coordinate information of each joint point;

[0048] A filtering module is used to filter the human body tracking data to obtain smooth joint point data;

[0049] The adjustment module is used to obtain the individual's motion state based on the smoothed joint point data; and to analyze the dynamic changes of the spine under the motion state based on the three-dimensional simulated human body model to obtain the dynamic adjustment factor;

[0050] A determination module is used to determine the corresponding key joint points as control points from the smooth joint point data; calculate the interpolation points of the spinal curve according to the control points and the dynamic adjustment factors; and generate a continuous spinal curve through the interpolation points of the spinal curve;

[0051] The processing module is used to establish an initial 3D spine model according to the physiological structure and morphological characteristics of the human spine; the initial 3D spine model is automatically calibrated to the continuous spine curve using the least squares method to obtain the final 3D scoliosis model.

[0052] According to a third aspect, a computing device includes:

[0053] one or more processors;

[0054] The storage device is used to store one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the method described.

[0055] In a fourth aspect, a computer-readable storage medium stores a program, and when the program is executed by a processor, the method described is implemented.

[0056] The above scheme of the present invention includes at least the following beneficial effects.

[0057] By acquiring human body tracking data and filtering the data, smooth joint point data can be obtained, effectively eliminating noise and outliers in the original data.

[0058] This method not only considers the static structure of the spine, but also analyzes and adjusts the shape of the spine curve in real time by introducing dynamic adjustment factors. This enables the reconstructed 3D scoliosis model to more realistically reflect the spinal morphology of an individual in motion, improving the dynamic adaptability of the model.

[0059] By automatically calibrating the initial 3D spine model to a continuous spine curve using the least squares method, the method can generate a 3D scoliosis model that is highly consistent with the individual's actual spine morphology. The scoliosis three-dimensional reconstruction control process provided by the method has a high degree of automation and can quickly generate an accurate 3D scoliosis model. BRIEF DESCRIPTION OF THE DRAWINGS

[0060] Figure 1 It is a flow chart of a scoliosis three-dimensional reconstruction control method provided by an embodiment of the present invention.

[0061] Figure 2 It is a schematic diagram of a scoliosis three-dimensional reconstruction control system provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0062] The exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided to enable a more thorough understanding of the present disclosure and to fully convey the scope of the present disclosure to those skilled in the art.

[0063] like Figure 1 As shown, an embodiment of the present invention provides a scoliosis three-dimensional reconstruction control method, the method comprising the following steps:

[0064] Step 11, obtaining human body tracking data, including three-dimensional coordinate information of each joint point;

[0065] Step 12, filtering the human body tracking data to obtain smooth joint point data;

[0066] Step 13, obtaining the individual's motion state based on the smoothed joint point data;

[0067] Step 14, analyzing the dynamic changes of the spine in the motion state according to the three-dimensional simulated human body model to obtain a dynamic adjustment factor;

[0068] Step 15, determining corresponding key joint points as control points from the smoothed joint point data;

[0069] Step 16, calculating the interpolation points of the spinal curve according to the control points and the dynamic adjustment factors;

[0070] Step 17, generating a continuous spine curve through the interpolation points of the spine curve;

[0071] Step 18, establishing an initial 3D spine model according to the physiological structure and morphological characteristics of the human spine;

[0072] Step 19, using the least square method, the initial 3D spine model is automatically calibrated to the continuous spine curve to obtain the final 3D scoliosis model.

[0073] In the embodiment of the present invention, step 11, by capturing the three-dimensional coordinate information of each joint point of the human body, the authenticity and reliability of the scoliosis model are ensured. Step 12, filtering processing can remove noise and outliers in the original data, making the joint point data smoother, improving the accuracy of subsequent analysis and the stability of the model. Step 13, by analyzing the smooth joint point data, the individual's motion state, including posture, action, etc., can be accurately obtained. Step 14, using a three-dimensional simulation human body model, the spine changes of a real human body in motion can be simulated, and dynamic adjustment factors are obtained by analyzing these changes, so that the subsequent generation of the spine curve is more in line with the actual situation. Step 15, by determining the key joint points as control points, the generation process of the spine curve can be simplified, and at the same time, it is ensured that the generated spine curve can accurately reflect the scoliosis of the spine. Step 16, combining the control points and the dynamic adjustment factors to calculate the interpolation points can make the generated spine curve smoother and in line with the actual spine curvature, improving the accuracy and visualization of the model. Step 17, the continuous spine curve generated by the interpolation points can fully display the scoliosis of the spine. Step 18: The initial 3D spine model established based on the physiological structure and morphological characteristics of the human spine can truly reflect the basic structure and morphology of the spine, providing a reliable reference for subsequent model calibration. Step 19: Automatic calibration can make the initial 3D spine model fit the continuous spine curve more closely, thereby obtaining an accurate and realistic 3D scoliosis model.

[0074] In a preferred embodiment of the present invention, the above step 11, obtaining human body tracking data, including three-dimensional coordinate information of each joint point, may include:

[0075] The depth camera captures the movements of the tracked person in real time, and generates dynamic data of the joints through the skeleton tracking algorithm. At the same time, the timestamp is recorded to ensure the time synchronization of the data; the collected raw data is checked in real time or offline, and invalid or erroneous data segments caused by occlusion, camera shake or other interference are identified and removed; for data with inconsistent timestamps, the time synchronization algorithm is applied to adjust to ensure that the data of all related nodes are aligned in time; the real-time depth image stream is captured from the depth camera; the necessary preprocessing operations such as denoising and contrast enhancement are performed on the depth image to improve the image quality; the background subtraction or foreground segmentation technology is applied to separate the human body from the background, which can be achieved by comparing the depth value method; the pre-trained feature detection model is loaded, such as the joint point detection model based on the convolutional neural network (CNN), and the pre-processed human body area image is input into the deep learning model. The joint points are input into the feature detection model, and the model will output the position coordinates of each joint point in the image, such as the head, neck, shoulder, elbow, wrist, hip, knee and ankle; the joint point positions output by the feature detection algorithm are mapped from the image coordinate space to the actual three-dimensional space coordinates, which requires coordinate transformation according to the intrinsic and extrinsic parameters of the depth camera, involving camera calibration and distortion correction; using the identified joint point positions, the overall posture of the human body is calculated through the posture estimation algorithm. The posture estimation algorithm can be a rule-based method, such as inferring the posture through the relative position relationship between the joint points; it can also be a more complex learning model, such as a posture estimation model based on a graph convolutional network (GCN) or a recurrent neural network (RNN); the angles between the joints are calculated, such as the bending angles of the elbow and knee joints, and the rotation angles of the shoulders and hips.

[0076] In a preferred embodiment of the present invention, the above step 12, filtering the human body tracking data to obtain smooth joint point data, may include:

[0077] Step 121, determining the window size L and standard deviation of the Gaussian filter, specifically includes: analyzing the time series data of the joint points to be processed to understand the degree of fluctuation of the data, the noise level and the expected smoothing effect; determining the required degree of smoothing according to the application requirements. For example, if the noise in the data is large, a larger window and standard deviation may be required to reduce the noise; if you want to retain more data details, you can choose a smaller window and standard deviation; set an initial window size L according to the data characteristics and smoothing requirements; usually, L will be set to an odd number so that there is a clear center point, for example, you can start from L = 3, 5, 7, etc.; similarly, according to the data and requirements, set an initial standard deviation, the standard deviation determines the width of the Gaussian function, you can start from 1 and adjust it according to the effect; use the set window size L and standard deviation to implement the Gaussian filtering algorithm, including steps such as calculating Gaussian weights and applying sliding windows; apply the implemented Gaussian filtering algorithm to a part of the time series data of the joint points to observe the effect after filtering; according to the filtered data, evaluate whether the smoothing effect meets the requirements. Check whether the noise is effectively reduced while retaining enough data details; if the filtering effect is not ideal, adjust the window size L and standard deviation values ​​until a satisfactory parameter combination is found; after multiple experiments and adjustments, record the window size L and standard deviation values ​​that achieve the best filtering effect;

[0078] Step 122, based on the window size L, creates a one-dimensional array to store the data points in the window, specifically including: creating a one-dimensional array (or list) with a length of L to store the data points in the current window, the array will be updated as the filtering process proceeds, and always contains the currently processed data point and its adjacent (L-1) data points; during the filtering process, the array will act as a sliding window and move along the time series data; for each new center point data, the content in the array will be updated to reflect the data status in the current window;

[0079] Step 123, calculate the weight of the Gaussian filter according to the standard deviation, wherein the calculation formula of the weight of the Gaussian filter is:

[0080] ;

[0081] in, and are the coefficients of the second and third order moments, respectively, reflecting the skewness and kurtosis of the data; represents standard deviation; Is the offset relative to the center of the window, calculated from - arrive , where L is the size of the window; represents the base of natural logarithms;

[0082] Step 124, for the given joint point time series data, traverse from the first data point to the last data point, take the currently traversed data point as the center point of the window, and select the (L-1) / 2 data points before and after it to fill in the window, specifically including:

[0083] Create an empty array (or list) window of length L to store the data points in the current window; set an index variable currentIndex with an initial value of 0 to track the currently traversed data points; traverse the joint point time series data:

[0084] Use a loop starting from currentIndex = 0 until currentIndex = N - 1 (N is the total number of data points). Fill the window:

[0085] a. Calculate the starting index startIndex and ending index endIndex of the window:

[0086] startIndex=max(0, currentIndex-(L-1) / 2);

[0087] endIndex=min(N-1, currentIndex+ (L-1) / 2);

[0088] The max and min functions are used here to ensure that the index does not exceed the data range.

[0089] b. According to the calculated startIndex and endIndex, select the corresponding data points from the joint point time series data jointData and fill them into the empty array (or list) window. If startIndex is greater than 0, it means that there are enough data points on the left side of the window and it is filled normally. If startIndex is equal to 0, it means that the left side of the window is close to the data boundary and requires special processing (such as filling with fixed values, mirroring, etc.). Similarly, handle the situation where the right side of the window is close to the data boundary. Process the center data point of the window:

[0090] At this time, the middle position in the empty array (or list) window (index is (L-1) / 2) corresponds to the currently traversed data point jointData[currentIndex]. Execute the core calculation steps of Gaussian filtering, such as weighted summation, etc. (see the subsequent steps for details). After completing the processing of the current window, increase currentIndex by 1 and prepare to process the next data point until the entire joint point time series data jointData is traversed;

[0091] Step 125, weighting each data point in the window according to the weight of the Gaussian filter, dividing the weighted sum by the sum of the weights, and obtaining the filtered value of the center point of the current window, specifically including:

[0092] Set a variable weightedSum to store the result of weighted summation, with an initial value of 0; set a variable totalWeight to store the weight sum, with an initial value of 0 (although the weights are usually normalized, this step can still be used to verify or handle unnormalized cases); use a loop to traverse each data point window[i] in the window and the corresponding weight weights[i], where i traverses from 0 to L-1. In each loop, perform the following operations:

[0093] a. Calculate the weighted value of the current data point: weightedValue = window[i] × weights[i].

[0094] b. Add the weighted values ​​to weightedSum:

[0095] weightedSum , =weightedSum+weightedValue;

[0096] c. At the same time, add the weight to totalWeight: totalWeight , =totalWeight+weights[i]. Calculate the filtered value:

[0097] If the weights are not normalized, you need to divide the weighted sum by the sum of the weights to get the filtered value: filteredValue = weightedSum , / totalWeight , .

[0098] If the weights are normalized (i.e., the sum of the weights is 1), then the weighted sum is directly the filtered value: filteredValue = weightedSum , . Assign the calculated filteredValue to the result position corresponding to the center point of the current window, which means replacing the value of the corresponding position in the original data sequence. The filtered value filteredValue of the center point of the current window.

[0099] Step 126, replacing the data point at the corresponding position in the original sequence with the calculated filtered value, sliding the window forward by one data point until the entire joint point time series is traversed, and saving the filtered joint point time series as smoothed joint point data, specifically includes:

[0100] The original joint point time series data originalData, a list or array containing N data points. The filtered value filteredValue, the filtered value of the center point of the current window calculated for each window. The window size L is used to determine the range of the sliding window. Initialization index:

[0101] Set an index variable currentIndex with an initial value of 0 to track the current data point position (i.e. the center position of the window). Traverse and replace data:

[0102] Use a loop, starting from currentIndex = (L-1) / 2 (because the center of the window corresponds to this index), until currentIndex = N-1-(L-1) / 2 (to ensure that the window does not exceed the data range). In each loop, do the following:

[0103] a. Replace the data point corresponding to currentIndex in originalData with the filteredValue calculated in the previous step.

[0104] b. Increase currentIndex by 1 and prepare to process the next data point (i.e. slide the window forward one data point). After the above traversal and replacement operations, the data points at the corresponding positions in originalData have been replaced by the filtered values. You can choose to save the replaced originalData as a new list or array as the filtered joint point time series data, or you can modify it directly on the original array.

[0105] In an embodiment of the present invention, step 121, reasonably setting the window size and standard deviation is the key to the filtering effect. The window size determines the smoothness of the filter, while the standard deviation affects the distribution of the Gaussian weight. Through this step, the parameters of the filter can be adjusted according to actual needs to achieve the best smoothing effect. Step 122, by creating an array of a fixed size to store the data points in the window, the sliding window operation can be conveniently performed, thereby realizing the traversal processing of the entire time series data. Step 123, the weight of the Gaussian filter determines the importance of each data point in the filtering process. Through this step, a reasonable weight distribution can be calculated based on the standard deviation, so that the data points closer to the center of the window contribute more to the filtering result, thereby achieving a smoothing effect. Step 124, this step implements the specific operation of the sliding window. By traversing the entire time series data and treating each data point as the center point of the window, it can be ensured that each data point is equally considered in the filtering process, thereby obtaining a more accurate and smooth filtering result. Step 125, by performing weighted summation on each data point in the window and dividing by the weight sum for normalization, the filtered value of the center point of the current window can be obtained. This value integrates the information of all data points in the window and performs reasonable weighting processing according to the Gaussian weight, thereby achieving a smoothing effect on the data. Step 126, by replacing the corresponding data points in the original sequence with the filtered values, a new, smoothed joint point time series can be obtained, which is more stable and continuous, and reduces the noise and jitter in the original data.

[0106] In a preferred embodiment of the present invention, the above step 13, obtaining the motion state of the individual according to the smoothed joint point data, may include:

[0107] Features related to the motion state are extracted from the smooth joint point data. These features include the position of the joint point, velocity (rate of change of the joint point position), acceleration (rate of change of velocity), etc. For the position feature, the coordinate value of the joint point can be used directly, while the velocity and acceleration features need to be obtained by calculating the difference between adjacent data points.

[0108] The entire time series data is divided into shorter segments or windows as needed, which helps to analyze the motion state of different time periods, especially when the motion state may change. Segmentation can be based on time (for example, data per second as a segment) or based on the characteristics of the data (for example, a new segment starts when a change in motion state is detected). Using the extracted features, the motion state corresponding to each data segment is identified, for example, the motion state changes between consecutive data segments are analyzed to detect state transition points, which mark the moment when the individual transitions from one motion state to another; the identified motion state is post-processed to eliminate possible noise or misclassification. For example, a smoothing filter can be applied to reduce the frequent switching of state labels, and the accuracy of the recognition results can be verified by comparing with the true label (if available), and calculating indicators such as accuracy and recall rate; the individual's motion state sequence, that is, the motion state label corresponding to each data segment or time point (such as "walking", "running", "jumping", etc.).

[0109] In a preferred embodiment of the present invention, the above step 14, analyzing the dynamic changes of the spine in the motion state according to the three-dimensional simulated human body model to obtain the dynamic adjustment factor, may include:

[0110] Step 141, determining key indicators for describing dynamic changes of the spine;

[0111] Step 142, extracting the time-varying motion trajectory of the spine from the motion data, specifically includes: collecting three-dimensional motion data including spinal motion, the data coming from a motion capture system, medical imaging technology or other sensor equipment; preprocessing the collected data, including denoising, smoothing and coordinate system conversion, etc., to ensure the accuracy and consistency of the data; setting identification points or markers for each spinal segment (cervical, thoracic, lumbar) in the three-dimensional data, these identification points can be set manually, and a tracking algorithm is used to ensure that the identification points of each segment can be continuously and accurately tracked during the entire motion process; for each time frame, the three-dimensional spatial coordinates (x, y, z) of each spinal segment identification point are recorded; the spatial position information of each segment that changes with time is integrated to form continuous motion trajectory data, and interpolation methods (such as linear interpolation) can be used to fill the existing data gaps to ensure the continuity and smoothness of the motion trajectory.

[0112] Step 143, for each key indicator, calculate its change during the movement process, specifically including: according to a preset list of key indicators (such as spinal flexion angle, torsion angle, etc.), automatically identify and extract data of corresponding indicators from the motion trajectory data; according to the timestamp or frame number of the motion trajectory data, automatically divide different time points or movement stages, and the division of these time points or movement stages is based on preset rules (such as equal time intervals). For each key indicator, calculate its change based on the division of time points or movement stages. For example, for the spinal flexion angle, the angle difference between adjacent time points is calculated as the change, and other statistics are calculated as needed, such as the maximum change (the difference between the maximum and minimum values ​​of a certain indicator during the entire movement process), the average change rate (the average change of a certain indicator per unit time), etc. After the calculation is completed, the change data and related statistical results are stored in the specified location;

[0113] Step 144, setting a reference value for each key indicator, and calculating the deviation between the actual value of each key indicator in the motion state and the reference value, specifically includes:

[0114] Collect the spinal dynamic data of normal people or specific people (such as healthy adults, athletes of the same age group, etc.) under the same or similar motion state, analyze these data, determine the typical value or average value of each key indicator under normal motion state, set these typical values ​​or average values ​​as the benchmark value of the corresponding key indicator, and the benchmark value is a specific value; extract the actual value of the key indicator corresponding to the benchmark value from the spinal dynamic data of the individual to be analyzed; for each key indicator, calculate the deviation between its actual value and the benchmark value, for example, the deviation can be obtained by subtracting the benchmark value from the actual value;

[0115] Step 145, according to the deviations of all key indicators, a comprehensive evaluation result is obtained by weighted summation;

[0116] Step 146, based on the comprehensive evaluation result, a dynamic adjustment factor reflecting the degree of dynamic change of the spine in the motion state is calculated.

[0117] In an embodiment of the present invention, step 141, by clarifying key indicators, the dynamic changes of the spine can be analyzed in a targeted manner, unnecessary data processing and analysis can be avoided, thereby improving the analysis efficiency and accuracy. These key indicators include the bending angle, torsion angle, range of motion, speed, acceleration, etc. of the spine, which can fully reflect the state of the spine in motion. Step 142, extracting the motion trajectory can intuitively show the dynamic changes of the spine during motion, which helps to find abnormal or irregular motion patterns. Step 143, by calculating the change amount, the degree of change of each key indicator of the spine during motion can be quantified, so as to more accurately evaluate the dynamic performance of the spine. Step 144, setting a baseline value and calculating the deviation can help identify whether the spine deviates from the normal range in the motion state, so as to timely discover potential problems. Step 145, by comprehensively considering the deviations of all key indicators in a weighted summation manner, a comprehensive evaluation result that fully reflects the degree of dynamic change of the spine can be obtained. This method can balance the importance between different indicators, avoid the one-sidedness of a single indicator, and improve the accuracy and reliability of the evaluation. Step 146, the dynamic adjustment factor can intuitively reflect the degree of dynamic change of the spine in the motion state.

[0118] In a preferred embodiment of the present invention, the above step 145, based on the deviations of all key indicators, obtains a comprehensive evaluation result by weighted summation, including:

[0119] Step 1451, based on the deviations of all key indicators, To obtain comprehensive evaluation results ;

[0120] in, is a logarithmic function; Is a summation symbol, which means to accumulate the weighted deviations of all evaluation indicators. represents the total number of indicators; It is Evaluation indicators in time The weight of It is the deviation Take the square root of the absolute value of Indicates Deviation of an indicator.

[0121] In the embodiment of the present invention, the method considers multiple key indicators rather than just a single indicator, thereby enabling a more comprehensive assessment of the dynamic performance of the spine. This comprehensive assessment helps to identify potential problems and imbalances. This method can weight different indicators according to their importance and time points. This weighting can more accurately reflect the relative importance of each indicator in the overall evaluation, thereby improving the accuracy and reliability of the evaluation. Taking the square root of the deviation helps smooth out the effects of extreme values, making the estimate more robust. At the same time, taking the absolute value ensures that whether the deviation is positive or negative, it is correctly included in the estimate. The introduction of helps convert the weighted summation result into a numerical value that is easier to interpret and compare. The logarithmic function can compress the data range, making the evaluation results of different individuals or different time points more comparable.

[0122] In a preferred embodiment of the present invention, the above step 146, based on the comprehensive evaluation result, calculates the dynamic adjustment factor reflecting the dynamic change degree of the spine in the motion state, including:

[0123] Step 1461, based on the comprehensive evaluation results, Calculate the dynamic adjustment factor that reflects the dynamic changes of the spine in motion ;

[0124] in, is a scaling factor that compares the current comprehensive evaluation results Compared with the baseline state The logarithm of ; is an environmental sensitivity adjustment factor, where It represents the environmental sensitivity index from 0 to 10.

[0125] In the embodiment of the present invention, the dynamic adjustment factor F can reflect the dynamic change degree of the spine in the motion state in real time. This helps to more accurately capture the behavior characteristics of the spine in different motion states and environmental conditions. , the current comprehensive evaluation result S and the baseline state This processing method can more sensitively capture the changes in the dynamic performance of the spine, making the dynamic adjustment factor F more responsive and accurate. Environmental sensitivity adjustment factor The introduction of the dynamic adjustment factor F can be adjusted according to different environmental sensitivity indexes. This helps to consider the influence of external environmental factors when evaluating the dynamic performance of the spine, and improves the applicability and flexibility of the evaluation. The dynamic adjustment factor F expresses the degree of dynamic change of the spine in motion in the form of specific numerical values, which is convenient for quantitative analysis and comparison. This quantitative expression helps to more objectively evaluate the health status and sports performance of the spine. Among them, the calculation formula of the environmental sensitivity index can be:

[0126] ;

[0127] in, Indicates temperature (unit: Celsius); Indicates humidity (unit: percentage); Indicates the motion load (e.g., acceleration, etc.); and Respectively represent the minimum and maximum values ​​of temperature; and Respectively represent the minimum and maximum values ​​of humidity; The maximum value of the exercise load (which can be a certain maximum exercise intensity value, such as acceleration, etc.); , and is the weight.

[0128] In another preferred embodiment of the present invention, the above step 15, determining the corresponding key joint points as control points from the smoothed joint point data, may include:

[0129] Step 151, determining the key areas of concern, namely the cervical spine, thoracic spine and lumbar spine areas, the selection of these areas should be based on medical or biomechanical standards to ensure that the selected control points can accurately reflect the dynamic changes of the spine;

[0130] Step 152, for each key region (cervical spine, thoracic spine, lumbar spine), define a method for calculating the center point, specifically: calculate the average position of all relevant nodes in the region as the center point, which can be achieved by weighted averaging the coordinates of each joint point, where the weight can be set according to the importance or reliability of the joint point;

[0131] Step 153, calculate the center point position for each key area respectively. For time series data, this means that the center point position needs to be calculated at each time point to obtain the dynamic change trajectory of the center point, and the calculated center point position is output as the control point data. Through the above steps, step 15 can accurately determine the corresponding key joint point as the control point from the smooth joint point data.

[0132] In a preferred embodiment of the present invention, the control points include the center points of the cervical spine, thoracic spine, and lumbar spine regions; the above step 16, calculating the interpolation points of the spinal curve according to the control points and the dynamic adjustment factors, may include:

[0133] Step 161, between adjacent control points, Initially define the shape of the spinal curve, where are the coordinates of the interpolation points; is a parameter indicating the position of the interpolation, with a value ranging from 0 to 1; and Respectively represent and control points;

[0134] Step 162, using the dynamic adjustment factor as a parameter, the initially defined spinal curve is adjusted in shape to obtain an adjusted interpolation point, wherein the calculation formula of the adjusted interpolation point is:

[0135] ;

[0136] in, ; , and is the adjustment parameter; Indicates the adjusted The coordinates of the interpolation points;

[0137] Step 163, setting the step size of the interpolation points on the spine curve;

[0138] Step 164, based on the shape of the initially defined spine curve and the adjusted interpolation points, according to the set step length of the interpolation points on the spine curve, Calculate the interpolation points of the spine curve, where , Indicates the set step size; Indicates the number of interpolation points; is an integer index, indicating the sequence number of the current interpolation point; The final calculated The coordinates of the interpolation points; According to the interpolation parameters The calculated coordinates of the adjusted interpolation points.

[0139] In the embodiment of the present invention, by introducing the dynamic adjustment factor F, the method can flexibly adjust the shape of the spinal curve according to the actual situation. This makes the interpolation point not only based on the position of the control point, but also takes into account the dynamic changes of the spine in motion, thereby more accurately reflecting the actual shape of the spine. Adjusting the shape of the initially defined spine curve can improve the calculation accuracy of the interpolation points. , and , the curvature and shape of the curve can be finely controlled to adapt to the spinal morphology of different individuals and motion states. In step 163, the step size of the interpolation points on the spinal curve is set, so that the distribution density and calculation accuracy of the interpolation points can be adjusted according to needs. A smaller step size can provide denser interpolation points to capture more details of the spinal curve; while a larger step size can reduce the amount of calculation and improve processing efficiency. Through the formula ,This method can efficiently calculate the interpolation points of the spinal curve. This calculation method avoids the complex iterative process and directly uses the adjusted interpolation point formula and the set step size to generate the final interpolation point coordinates, thereby improving the calculation efficiency.

[0140] In another preferred embodiment of the present invention, the above step 17, generating a continuous spine curve through the interpolation points of the spine curve, may include:

[0141] All the spinal curve interpolation points calculated in step 16 are sorted in order of their positions on the spine to ensure the continuity between the points; using the sorted interpolation points, a continuous and smooth spinal curve is generated through curve fitting technology (such as B-spline curve, Bezier curve, etc.), which can accurately pass through or approximate all the interpolation points.

[0142] In another preferred embodiment of the present invention, step 18, establishing an initial 3D spine model according to the physiological structure and morphological characteristics of the human spine, may include:

[0143] Collect and refer to the physiological structure data of the human spine, including the length, diameter, and bending angle of each spinal segment; collect and organize the physiological structure data of the spine, including the length, diameter, and relative angle between each spinal segment; convert these data into a format acceptable to 3D modeling software, such as CSV, TXT, or a specific model format (such as OBJ, FBX, etc.) for import; open 3D modeling software (such as Blender, 3ds Max, etc.) and create a new project file; in the 3D modeling software, use basic body tools (such as cylinders, cubes, etc.) to approximate the various segments of the spine; according to the imported spinal physiological structure data, adjust the size (length and diameter) of these basic bodies to match the actual spinal segments; place these basic bodies in the physiological arrangement order of the spine to ensure that their relative positions are correct; use the carving tools or editing mode in the 3D modeling software to carve details on the basic model to better simulate the physiological structure of the spine, and add physiological features of the spine, such as spinous processes, transverse processes, etc. as needed, and adjust the bending angle of the spinal segment to reflect the natural curvature of the spine.

[0144] Assign appropriate materials to the spine model to simulate the texture of real skin, bones, etc.; check the geometric structure of the model to ensure that there are no redundant vertices, faces or overlapping parts; perform necessary optimization on the model, such as reducing the number of vertices, merging similar vertices, etc., to improve the rendering efficiency of the model; export the optimized model to a common 3D model format (such as OBJ, FBX, etc.) for use in other software or platforms.

[0145] In another preferred embodiment of the present invention, step 19, using the least square method to automatically calibrate the initial 3D spine model to the continuous spine curve to obtain the final 3D scoliosis model, may include:

[0146] The continuous spine curve generated in step 17 is used as the target curve for calibration, and a calibration error metric is determined, such as the sum or square sum of distances from points on the spine model to the target curve.

[0147] The least squares method is used to optimize the alignment between the initial 3D spine model and the target curve, which involves adjusting the parameters of the spine model (such as position, rotation angle, and scaling factor) to minimize the calibration error. The optimization can be performed in an iterative manner, and each iteration adjusts the parameters of the spine model according to the current calibration error until a satisfactory calibration effect is achieved or the preset upper limit of the number of iterations is reached.

[0148] The calibrated 3D spine model is verified to ensure its consistency with the actual spine morphology, and the verified and adjusted calibration results are output as the final 3D scoliosis model, which can accurately reflect the scoliosis condition of the subject.

[0149] like Figure 2 As shown, the embodiment of the present invention further provides a scoliosis three-dimensional reconstruction control system 20, comprising:

[0150] An acquisition module 21 is used to acquire human body tracking data, including three-dimensional coordinate information of each joint point;

[0151] A filtering module 22, used for filtering the human body tracking data to obtain smooth joint point data;

[0152] The adjustment module 23 is used to obtain the individual's motion state according to the smoothed joint point data; and to analyze the dynamic changes of the spine under the motion state according to the three-dimensional simulated human body model to obtain a dynamic adjustment factor;

[0153] The determination module 24 is used to determine the corresponding key joint points as control points from the smooth joint point data; calculate the interpolation points of the spinal curve according to the control points and the dynamic adjustment factors; and generate a continuous spinal curve through the interpolation points of the spinal curve;

[0154] The processing module 25 is used to establish an initial 3D spine model according to the physiological structure and morphological characteristics of the human spine; and to automatically calibrate the initial 3D spine model to a continuous spine curve using the least squares method to obtain a final 3D scoliosis model.

[0155] It should be noted that the system is a system corresponding to the above method, and all implementation methods in the above method embodiment are applicable to this embodiment and can achieve the same technical effect.

[0156] The embodiment of the present invention further provides a computing device, comprising: a processor, a memory storing a computer program, wherein when the computer program is executed by the processor, the method described above is executed. All implementations in the above method embodiment are applicable to this embodiment and can achieve the same technical effect.

[0157] The embodiment of the present invention also provides a computer-readable storage medium storing instructions, which, when executed on a computer, enable the computer to execute the method described above. All implementations in the above method embodiment are applicable to this embodiment and can achieve the same technical effect.

[0158] The above is a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present invention. These improvements and modifications should also be regarded as the scope of protection of the present invention.

Claims

1. A scoliosis three-dimensional reconstruction control method, characterized in that: The method comprises: Obtain human body tracking data, including the three-dimensional coordinate information of each joint point; Filter the human body tracking data to obtain smooth joint point data; According to the smoothed joint point data, the individual's motion state is obtained; According to the three-dimensional simulation human body model, the dynamic changes of the spine in motion are analyzed to obtain the dynamic adjustment factor; From the smoothed joint point data, determine the corresponding key joint points as control points; Calculate the interpolation points of the spinal curve according to the control points and the dynamic adjustment factors; A continuous spine curve is generated through the interpolation points of the spine curve; According to the physiological structure and morphological characteristics of the human spine, an initial 3D spine model is established; The initial 3D spine model is automatically calibrated to the continuous spine curve using the least squares method to obtain the final 3D scoliosis model; Filter the human body tracking data to obtain smooth joint point data, including: Determine the window size L and standard deviation of the Gaussian filter; According to the window size L, create a one-dimensional array to store the data points in the window; According to the standard deviation, calculate the weight of the Gaussian filter; For a given joint point time series data, traverse from the first data point to the last data point. For the currently traversed data point, take it as the center point of the window, and select the (L-1) / 2 data points before and after it to fill in the window. According to the weight of the Gaussian filter, each data point in the window is weighted, and the weighted sum is divided by the sum of the weights to obtain the filtered value of the center point of the current window; The calculated filtered value replaces the data point at the corresponding position in the original sequence, slides the window forward by one data point until the entire joint point time series is traversed, and saves the filtered joint point time series as smoothed joint point data; According to the three-dimensional simulation human body model, the dynamic changes of the spine in motion are analyzed to obtain dynamic adjustment factors, including: Identify key indicators used to describe dynamic changes in the spine; Extracting the time-varying motion trajectory of the spine from the motion data; For each key indicator, calculate its change during the exercise; Set a benchmark value for each key indicator and calculate the deviation between the actual value of each key indicator in motion and the benchmark value; According to the deviations of all key indicators, a comprehensive evaluation result is obtained by weighted summation; Based on the comprehensive evaluation results, the dynamic adjustment factor reflecting the dynamic change degree of the spine in motion is calculated; Based on the deviations of all key indicators, a comprehensive evaluation result is obtained by weighted summation, including: Based on the deviations of all key indicators, To obtain comprehensive evaluation results ; in, is a logarithmic function; Is a summation symbol, which means to accumulate the weighted deviations of all evaluation indicators. represents the total number of indicators; It is Evaluation indicators in time The weight of It is the deviation Take the square root of the absolute value of; Indicates Deviation of an indicator; Based on the comprehensive evaluation results, the dynamic adjustment factor reflecting the dynamic change degree of the spine in motion is calculated, including: According to the comprehensive evaluation results, Calculate the dynamic adjustment factor that reflects the dynamic changes of the spine in motion ; in, is a scaling factor that compares the current comprehensive evaluation results Compared with the baseline state The logarithm of ; is an environmental sensitivity adjustment factor, where It represents the environmental sensitivity index from 0 to 10; The control points include the center points of the cervical, thoracic, and lumbar regions; based on the control points and dynamic adjustment factors, the interpolation points of the spinal curve are calculated, including: Between adjacent control points, Initially define the shape of the spinal curve, where are the coordinates of the interpolation points; is a parameter indicating the position of the interpolation, with a value ranging from 0 to 1; Respectively represent and control points; The dynamic adjustment factor is used as a parameter to adjust the shape of the initially defined spinal curve to obtain an adjusted interpolation point, wherein the calculation formula of the adjusted interpolation point is: ; in, ; is the adjustment parameter; Indicates the adjusted The coordinates of the interpolation points; Set the step size of the interpolation points on the spine curve; According to the shape of the initially defined spine curve and the adjusted interpolation points, according to the set step size of the interpolation points on the spine curve, Calculate the interpolation points of the spine curve, where , Indicates the set step size; Indicates the number of interpolation points; is an integer index, indicating the sequence number of the current interpolation point; The final calculated The coordinates of the interpolation points; According to the interpolation parameters The calculated coordinates of the adjusted interpolation points.

2. A scoliosis three-dimensional reconstruction control system, characterized in that: Applied in the method as claimed in claim 1, comprising: An acquisition module is used to acquire human body tracking data, including the three-dimensional coordinate information of each joint point; A filtering module is used to filter the human body tracking data to obtain smooth joint point data; The adjustment module is used to obtain the individual's motion state based on the smoothed joint point data; and to analyze the dynamic changes of the spine under the motion state based on the three-dimensional simulated human body model to obtain the dynamic adjustment factor; A determination module is used to determine the corresponding key joint points as control points from the smooth joint point data; calculate the interpolation points of the spinal curve according to the control points and the dynamic adjustment factors; and generate a continuous spinal curve through the interpolation points of the spinal curve; The processing module is used to establish an initial 3D spine model according to the physiological structure and morphological characteristics of the human spine; the initial 3D spine model is automatically calibrated to the continuous spine curve using the least squares method to obtain the final 3D scoliosis model.

Citation Information

Patent Citations

  • Spine three-dimensional dynamic reconstruction method and system

    CN116524124A

  • Garden ecological environment intelligent detection method and device

    CN116754498A