Posture diagnosis system based on joint position information and joint angle information

The posture diagnosis system objectively analyzes joint positions and angles using a motion capture sensor and machine learning to provide comprehensive whole-body posture evaluation and correction feedback.

KR103037474B1Active Publication Date: 2026-10-30한국신체정보(주)
5 Cites 0 Cited by

Patent Information

Application Number
KR1020250160376
Authority / Receiving Office
KR · KR
Patent Type
Patents
Current Assignee / Owner
Filing Date
2025-10-30
Publication Date
2026-10-30
Estimated Expiration
2045-10-30

AI Technical Summary

Technical Problem

Existing technologies for diagnosing human posture are limited in comprehensively evaluating whole-body posture due to difficulties in accurately detecting joint positions, processing raw sensor data, and comparing joint angles with normal standards, often relying on subjective expert judgment and lacking automation in data processing.

Method used

A posture diagnosis system that uses a motion capture sensor to detect joint positions, preprocesses data to remove noise, calculates joint angles, and compares them with normal posture references, incorporating machine learning to provide objective and automated whole-body posture analysis.

Benefits of technology

Enables systematic and objective posture analysis, identifying abnormalities without expert subjectivity, and providing real-time feedback for correction, applicable to medical rehabilitation, sports training, and occupational assessment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 112025121207183-PAT00046_ABST
    Figure 112025121207183-PAT00046_ABST
Patent Text Reader

Abstract

The present invention relates to a posture diagnosis system based on joint position information and joint angle information. The problem to be solved is to comprehensively process position information of multiple joints and angle information between joints to quantitatively and objectively analyze the user's whole-body posture, and then precisely determine whether there are postural abnormalities at the local and whole-body levels through comparison with a standard for normal posture. For example, a joint position information acquisition unit that detects the position of a user's body joints through a motion capture sensor and acquires joint position information expressed as two-dimensional or three-dimensional coordinate values; a joint angle information calculation unit that calculates joint angle information based on the joint position information; and a posture diagnosis unit that determines whether there is an abnormal posture for each part of the user by comparing the joint position information and the joint angle information with stored normal posture reference information.
Need to check novelty before this filing date? Find Prior Art

Description

Technology Field

[0001] An embodiment of the present invention relates to a technology for diagnosing a user's posture based on the joint positions and joint angles of the human body. More specifically, it relates to a posture diagnosis system that processes data collected from an image sensor or a motion recognition sensor to extract joint position coordinates, calculates vectors and angles between joints based on these coordinates, and then compares them with reference information for a normal posture to analyze and determine whether there is an abnormality in the user's posture. Background Technology

[0002] Techniques for evaluating and diagnosing human posture have long been treated as important research topics in the fields of medicine, rehabilitation, and exercise science. Traditionally, the mainstream approach involved experts, such as doctors, physical therapists, and trainers, visually observing the posture of patients or users to determine if there were any issues; however, this approach can lead to varying diagnostic results depending on the expert's proficiency, experience, and subjective judgment.

[0003] In addition, auxiliary analysis using photos or videos has been attempted, but since this is based on static images at a specific point in time, it is difficult to analyze continuous motion changes over time, and there may be limitations in quantitatively calculating position and angle information of each joint.

[0004] To overcome these limitations, various sensor-based technologies have been introduced. For example, infrared cameras, depth sensors, and IMUs (Inertial Measurement Units) can be utilized to estimate the positions of major joints in the human body, and based on this, systems for evaluating body alignment can be developed. In particular, motion capture technology has been commercialized in the gaming industry and used to recognize user movements in real time, while some rehabilitation medical devices can apply technology that tracks the movement of specific joints to evaluate the range of motion.

[0005] However, since most of these technologies are often used only locally to measure the movement of specific joints or are limited to entertainment purposes, there may be limitations in comprehensive posture diagnosis at the whole-body level.

[0006] Furthermore, existing sensor-based posture measurement technologies have various inherent problems in the process of obtaining human joint position data. For instance, raw sensor data often contains noise, making accurate joint position detection difficult, and accurately isolating the human body in complex background environments may not be easy.

[0007] Furthermore, even if joint positions are detected, the reliability of the results may be low because the process of converting them into vectors and angles and comparing them with normal posture standards has not been specifically established. In particular, existing technologies have not sufficiently supported functions such as the analysis of multiple joint combinations required for overall posture evaluation or the tracking of continuous motion changes along the time axis.

[0008] Ultimately, conventional technologies are often limited to static image analysis or simple motion recognition, and have not reached the level of technical completeness required to diagnose whole-body posture by quantitatively calculating joint position and angle information and comparing it with normal standards.

[0009] Furthermore, issues regarding the insufficient automation of data processing, which leads to reliance on expert interpretation or inconsistencies in results, are continuously being raised. Prior art literature

[0010] Registered Patent Publication No. 10-1656940 (Registration Date: September 06, 2016) The problem to be solved

[0011] An embodiment of the present invention provides a posture diagnosis system based on joint position information and joint angle information that can quantitatively and objectively analyze a user's whole-body posture by comprehensively processing position information of multiple joints and angle information between joints, and then precisely determine whether there are postural abnormalities at the local and whole-body levels through comparison with a standard for normal posture. means of solving the problem

[0012] A posture diagnosis system based on joint position information and joint angle information according to an embodiment of the present invention includes: a joint position information acquisition unit that detects the position of a user's body joint through a motion capture sensor and acquires joint position information expressed as two-dimensional or three-dimensional coordinate values; a joint angle information calculation unit that calculates joint angle information based on the joint position information; and a posture diagnosis unit that determines whether there is an abnormal posture for each part of the user by comparing the joint position information and the joint angle information with stored normal posture reference information.

[0013] Additionally, it may further include a region-specific posture evaluation unit that evaluates local posture characteristics by analyzing the joint position information and joint angle information for at least one of the cervical spine, thoracic spine, lumbar spine, pelvis, shoulder, elbow, wrist, hip joint, knee, and ankle.

[0014] In addition, the above-mentioned posture evaluation unit for each body part can evaluate the alignment of the cervical spine by analyzing the anterior tilt angle and joint angle of the cervical spine, evaluate the curvature of the thoracic spine by analyzing the flexion angle, extension angle, and anterior-posterior-left-right tilt of the thoracic spine, evaluate the alignment of the lumbar spine by analyzing the lordosis angle and anterior-posterior-left-right tilt of the lumbar spine, evaluate the balance of the pelvis by analyzing the anterior-posterior tilt angle and the difference in anterior-posterior-left-right tilt of the pelvis, evaluate the asymmetry of the shoulder by analyzing the height angle and symmetry of the left and right shoulder joints of the shoulder, evaluate the alignment of the elbow by analyzing the flexion and extension, and inversion and valgus angles of the elbow, evaluate the alignment of the wrist by analyzing the flexion and extension, and adduction and abduction of the wrist, evaluate the alignment of the hip joint by analyzing the flexion and extension, and internal and external rotation of the hip joint, evaluate the alignment of the knee joint by analyzing the inversion and valgus angles and flexion and extension of the knee, and evaluate the alignment of the foot by analyzing the flexion and extension, adduction and abduction angles of the ankle.

[0015] Additionally, it may further include a motion pattern analysis unit that analyzes a series of motion sequences to process changes in multiple joint angle information along a time axis using statistical or pattern recognition techniques, and evaluates at least one of motion repeatability, balance of left and right joints, and symmetry of joint movement based on the processing results.

[0016] In addition, it may further include a learning-based discrimination unit that trains a machine learning or deep learning model with normal posture reference information or user-specific measurement data as a training dataset, and uses the trained model to determine whether new joint position information and joint angle information are normal, or dynamically updates customized normal criteria according to user characteristics.

[0017] Additionally, the joint position information acquisition unit may include: a joint position preprocessing unit that preprocesses raw data acquired from the motion capture sensor to remove noise, separates the background from the human body, and searches for joint position candidates; a coordinate matching unit that converts the data processed by the joint position preprocessing unit into a reference coordinate system; a joint point recognition unit that recognizes human body joint position points based on the coordinate data converted by the coordinate matching unit; and a skeleton forming unit that forms a skeleton structure by connecting the joint points recognized by the joint point recognition unit.

[0018] Additionally, the joint angle information calculation unit calculates a first vector (v1) by connecting adjacent first joint coordinates and second joint coordinates using the joint position information, and calculates a second vector (v2) by connecting adjacent second joint coordinates and third joint coordinates; a vector generation unit that performs an inner product operation between the first vector (v1) and the second vector (v2) calculated by the vector generation unit ( It may include: a joint angle calculation unit that calculates joint angle information by performing ); a joint angle recording unit that accumulates the joint angle information calculated by the joint angle calculation unit in a time series and stores it in a database, and provides at least one of basic data for trend analysis of joint angle changes, variability evaluation of joint angle values, and motion pattern recognition according to joint movement patterns based on the stored time series data; and a trend and variability analysis unit that stores the joint position information and the joint angle information in a time series and analyzes trend changes by comparing the stored data with past data.

[0019] In addition, the posture diagnosis unit compares the joint position information and the joint angle information with normal posture reference information to obtain an error value for each joint angle information ( A posture error calculation unit that calculates ); an error value calculated by the posture error calculation unit and a threshold value ( Compared to ) It may include a posture abnormality determination unit that determines a posture abnormality of the corresponding joint in the case of; and a posture result output unit that outputs the result determined by the posture abnormality determination unit visually or numerically.

[0020] Additionally, the posture diagnosis unit may further include a posture correction guidance unit that provides real-time feedback to the user by generating at least one of a customized correction guidance message reflecting the difference between the user's current posture and normal posture based on the result determined by the posture abnormality determination unit, a visual correction guide on a skeleton model or video screen, a visual message of muscles, and a warning signal when the angle deviates from a reference angle range. Effects of the invention

[0021] According to the present invention, by calculating joint position and joint angle information through sensor-based data and mathematically quantifying the user's posture, it is possible to determine whether there is a posture abnormality based on consistent criteria in a systematic manner, without relying on the subjective judgment of an expert.

[0022] Furthermore, it is not limited to localized evaluation at the individual joint level but can analyze the alignment of the entire body or identify patterns in continuous motion sequences, making it applicable to various fields such as medical rehabilitation, sports training, and occupational posture assessment.

[0023] In addition, by accumulating and analyzing joint angle information over time, trends in the user's posture changes can be tracked, enabling the provision of long-term correction, preventive care, and customized feedback. Brief explanation of the drawing

[0024] FIG. 1 is a schematic diagram showing the hardware-based configuration and overall operation process of a posture diagnosis system based on joint position information and joint angle information according to an embodiment of the present invention. FIG. 2 is a block diagram showing the overall configuration of a posture diagnosis system based on joint position information and joint angle information according to an embodiment of the present invention. FIG. 3 is a block diagram showing the detailed configuration of a joint position information acquisition unit according to an embodiment of the present invention. FIG. 4 is an exemplary drawing showing 3D information of a joint according to an embodiment of the present invention. FIG. 5 is a diagram illustrating an exemplary classification of postures according to an embodiment of the present invention. FIG. 6 is a diagram exemplarily showing the plane and axis of the human body according to an embodiment of the present invention. FIG. 7 is a block diagram showing the detailed configuration of a joint angle information calculation unit according to an embodiment of the present invention. FIGS. 8 to 11 are drawings exemplarily showing the reference axes (XYZ) and measurement points of the body according to an embodiment of the present invention. FIG. 12 is a diagram exemplarily showing the posture diagnosis results according to the present embodiment. FIG. 13 is a block diagram showing the detailed configuration of a posture diagnosis unit according to an embodiment of the present invention. Figure 14 is a table summarizing the areas to be evaluated, the abnormal postures that can be evaluated, the measurement angles, and the diagnostic criteria from a medical perspective. Specific details for implementing the invention

[0025] The terms used in this specification will be briefly explained, and the invention will be described in detail.

[0026] The terms used in this invention have been selected based on currently widely used general terms, taking into account their functions within the invention; however, these terms may vary depending on the intent of those skilled in the art, case law, the emergence of new technologies, etc. Additionally, in specific cases, terms have been arbitrarily selected by the applicant, and in such cases, their meanings will be described in detail in the relevant description of the invention. Therefore, the terms used in this invention should be defined not merely by their names, but based on their meanings and the overall content of the invention.

[0027] When a part of a specification is described as "comprising" a certain component, this means that, unless specifically stated otherwise, it does not exclude other components but may include additional components. Furthermore, terms such as "...part" or "module" as used in the specification refer to a unit that processes at least one function or operation, and this may be implemented in hardware or software, or as a combination of hardware and software.

[0028] Embodiments of the present invention are described below with reference to the attached drawings so that those skilled in the art can easily implement them. However, the present invention may be embodied in various different forms and is not limited to the embodiments described herein. Furthermore, in order to clearly explain the present invention in the drawings, parts unrelated to the explanation have been omitted, and similar parts throughout the specification are denoted by similar reference numerals.

[0029] FIG. 1 is a schematic diagram showing the hardware-based configuration and overall operation process of a posture diagnosis system based on joint position information and joint angle information according to an embodiment of the present invention.

[0030] Referring to FIG. 1, a posture diagnosis system (1000) based on joint position information and joint angle information according to an embodiment of the present invention can operate in a network environment in which the motion capture sensor (10), edge processing terminal (20), analysis learning server (30) and user terminal (40) are organically connected to each other.

[0031] The motion capture sensor (10) can acquire movements occurring in the user's body in the form of video and sensor data. The motion capture sensor (10) can be implemented, for example, as an RGB camera, an infrared camera, a depth camera, a stereo vision camera, or an Inertial Measurement Unit (IMU) module, and in some cases, may be implemented in a hybrid form combining these sensors. This motion capture sensor (10) can collect and transmit raw data including the positions of the user's major joints in real time.

[0032] The edge processing terminal (20) can receive raw data transmitted from the motion capture sensor (10) and perform preprocessing immediately. The edge processing terminal (20) can be implemented, for example, as a small workstation equipped with a GPU, a high-performance embedded board (NVIDIA Jetson, Google Coral, etc.), or a mini server based on a general-purpose CPU. This terminal can generate joint position information by performing operations such as noise removal, coordinate alignment, joint point recognition, and skeleton structure formation, and then calculate a vector by connecting adjacent joint coordinates and derive joint angle information through operations between vectors, and this process can be optimized to enable real-time processing.

[0033] The analysis learning server (30) can collect joint position information and joint angle information calculated from the edge processing terminal (20), store them in a time series, and then perform trend analysis, variability evaluation, and motion pattern analysis based on the accumulated data. The analysis learning server (30) can be implemented as a cloud server, data center server, or on-premise workstation equipped with a high-performance CPU and GPU, and can manage multiple user data by linking with a large-scale database. In addition, the analysis learning server (30) can generate user-customized diagnostic results by training a machine learning or deep learning-based model to update normal posture reference data and performing determination on new input values.

[0034] The above user terminal (40) can receive results transmitted from the analysis learning server (30) and visually display or provide feedback. This user terminal (40) can be implemented as a smartphone, tablet, laptop, desktop PC, or wearable display device, and can output posture correction guidance messages, visual guides, warning signals, etc. through a screen interface. In addition, the user terminal (40) can operate as an interface for the user to execute a new measurement request or view past data.

[0035] The motion capture sensor (10), edge processing terminal (20), analysis learning server (30), and user terminal (40) described above are interconnected via a wired / wireless network (e.g., Wi-Fi, 5G, Ethernet). To minimize data transmission latency, the edge processing terminal (20) and the motion capture sensor (10) are connected via a short-range network, and the edge processing terminal (20) and the analysis learning server (30) can be connected remotely via a security protocol. The user terminal (40) can access the analysis learning server (30) or the edge processing terminal (20) to receive result data in real time, and, if necessary, can receive long-term data management and customized feedback through a cloud-based server.

[0036] Accordingly, the posture diagnosis system (1000) based on joint position information and joint angle information can precisely diagnose the user's posture and suggest directions for improvement through a series of processes in which raw data is collected through a motion capture sensor (10), joint positions and angles are calculated at an edge processing terminal (20), long-term data management and learning-based discrimination are performed at an analysis learning server (30), and results are fed back through a user terminal (40). This entire motion process can be implemented in a scalable manner in various environments and application fields.

[0037] Below, the detailed configuration of the posture diagnosis system based on joint position information and joint angle information is described in more detail with reference to the attached drawings.

[0038] FIG. 2 is a block diagram showing the overall configuration of a posture diagnosis system based on joint position information and joint angle information according to an embodiment of the present invention; FIG. 3 is a block diagram showing the detailed configuration of a joint position information acquisition unit according to an embodiment of the present invention; FIG. 4 is an exemplary drawing showing 3D information of a joint according to an embodiment of the present invention; FIG. 5 is an exemplary drawing showing the classification of posture according to an embodiment of the present invention; FIG. 6 is an exemplary drawing showing the plane and axis of a human body according to an embodiment of the present invention; FIG. 7 is a block diagram showing the detailed configuration of a joint angle information calculation unit according to an embodiment of the present invention; FIG. 8 to FIG. 11 are exemplary drawings showing the reference axes (XYZ) and measurement points of a body according to an embodiment of the present invention; FIG. 12 is an exemplary drawing showing the posture diagnosis results according to the present embodiment; FIG. 13 is a block diagram showing the detailed configuration of a posture diagnosis unit according to an embodiment of the present invention; FIG. 14 is a table summarizing the evaluation target area, evaluable abnormal posture, measurement angle, and diagnosis criteria from a medical perspective (evaluation target area, evaluable abnormal posture, measurement angle, and diagnosis criteria summarized from a medical perspective).

[0039] Referring to FIG. 2, a posture diagnosis system (1000) based on joint position information and joint angle information according to an embodiment of the present invention may include at least one of a joint position information acquisition unit (100), a joint angle information calculation unit (200), a posture evaluation unit by part (300), a posture diagnosis unit (400), a motion pattern analysis unit (500), and a learning-based discrimination unit (600).

[0040] The joint position information acquisition unit (100) can acquire joint position information expressed as 2D or 3D coordinate values ​​by detecting the position of the user's body joints through a motion capture sensor (10).

[0041] More specifically, the joint position information acquisition unit (100) can detect the position of a user's body joints based on image data, depth data, or inertial data collected from a motion capture sensor (10), and can generate joint position information by converting the detected result into a 2D or 3D coordinate value. The joint position information acquisition unit (100) can accumulate time-series joint position information corresponding to changes in the user's motion by processing continuous frames along a time axis.

[0042] In addition, the joint position information acquisition unit (100) can convert pixel coordinates of an image plane into 3D spatial coordinates using camera intrinsic and extrinsic parameters, in addition to 2D coordinate-based processing, if depth information exists. For example, given pixel coordinates (u, v), depth 'd', and intrinsic parameters (fx, fy, cx, cy), camera coordinate system points (X, Y, Z) can be restored in the form of 'X = (u - cx)·d / fx', 'Y = (v - cy)·d / fy', and 'Z = d', and can be mapped to a reference coordinate system in the form of Xworld = 'R·Xcamera + t' by applying extrinsic parameters (R, t).

[0043] For example, in a single RGB camera environment, 3D joint coordinates can be estimated by detecting 2D joint keypoints and applying a learned 2D-to-3D lifting model, and in a depth camera environment, 3D joint coordinates can be calculated directly using pixel-unit depth. In a multi-camera environment, the joint position information acquisition unit (100) can calculate 3D joint coordinates based on triangulation by applying stereo alignment or multi-view geometry.

[0044] The joint position information acquisition unit (100) according to the present embodiment may be hardware-linked with a motion capture sensor (10) including an RGB camera, an infrared camera, a depth camera (e.g., Time-of-Flight), a stereo camera, or an IMU module in a single or multiple manner. The joint position information acquisition unit (100) may software-link with frame synchronization, timestamp management, application of sensor-specific calibration parameters (internal and external parameters), and data stream buffering to ensure input quality so that subsequent processing steps operate stably.

[0045] As shown in FIG. 3, the joint position information acquisition unit (100) may include at least one of a joint position preprocessing unit (110), a coordinate matching unit (120), a joint point recognition unit (130), and a skeleton forming unit (140).

[0046] The above joint position preprocessing unit (110) can preprocess raw data obtained from the motion capture sensor (10) to remove noise, separate the background from the human body, and search for joint position candidates.

[0047] More specifically, the joint position preprocessing unit (110) can receive raw data acquired from the motion capture sensor (10) as input, suppress noise, separate the background from the human body, and perform a refinement procedure to efficiently search for joint position candidates. The joint position preprocessing unit (110) according to the present embodiment may apply at least one of a Gaussian filter, a moving average filter, or a bilateral filter to reduce high-frequency noise included in the image signal.

[0048] Additionally, the joint position preprocessing unit (110) can stably extract the human body contour by applying at least one of depth threshold-based masking, region connectivity-based labeling, and morphological operations (erosion / dilation) when depth data is present. At this time, the joint position preprocessing unit (110) can separate the human body region by applying at least one of background subtraction, color / brightness feature-based segmentation, and a human body detection premodel (e.g., HOG+SVM, learning-based detector) when only RGB data is present.

[0049] Additionally, the joint position preprocessing unit (110) can generate heatmap-based keypoint candidates during the joint candidate search stage and select valid candidates by extracting local maxima from the joint-specific probability heatmap output by the convolutional neural network. Additionally, the joint position preprocessing unit (110) can simply apply a prediction stage of a first-order delay filter or a Kalman filter to suppress abrupt changes in candidates by utilizing temporal continuity between frames.

[0050] The above coordinate matching unit (120) can convert the data processed by the joint position preprocessing unit (110) into a reference coordinate system.

[0051] More specifically, the coordinate matching unit (120) can perform coordinate transformation to consistently align candidate coordinate data transmitted from the joint position preprocessing unit (110) to a reference coordinate system. The coordinate matching unit (120) can apply a homogeneous coordinate system representation and a transformation matrix to eliminate coordinate system differences arising from different sensor or camera settings.

[0052] For example, the coordinate matching unit (120) can construct a reference coordinate system in the form P = T·p by applying a 4x4 transformation matrix T to the raw coordinates p = [x, y, z, 1]. The coordinate matching unit (120) can perform rigid transformation or affine transformation estimation to estimate external parameters (R, t) in a multi-sensor fusion environment, as well as correction using the intrinsic parameters of a single camera. The coordinate matching unit (120) can calculate R, t through a least-squares-based closed-form solution or SVD-based matching when a set of corresponding points {(pi, Pi)} exists.

[0053] Additionally, the coordinate matching unit (120) can perform time axis alignment to stabilize the coordinate system between frames, and, for example, can match the temporal alignment of the joint candidate sequence by utilizing NTP / PTP synchronization information or sensor timestamps. Even in an environment where only 2D input exists, the coordinate matching unit (120) can prepare data using normalized image coordinates so that the joint point recognition unit (130) can subsequently compare and select candidates based on consistent criteria.

[0054] Additionally, the coordinate matching unit (120) can define one reference camera in a multi-camera arrangement and map the remaining camera coordinates to the reference camera coordinates so that all joint candidates are compared and merged on the same standard. Consequently, this coordinate matching unit (120) can ensure coordinate consistency so that the joint point recognition unit (130) can reduce false detections and increase reliability.

[0055] The joint point recognition unit (130) can recognize human joint position points based on coordinate data converted from the coordinate matching unit (120).

[0056] More specifically, the joint point recognition unit (130) receives coordinate data converted by the coordinate matching unit (120) and joint candidate information as input, and can finally determine major joint points (e.g., head, neck, shoulder, elbow, wrist, chest indicator point, pelvic indicator point, hip joint, knee, ankle, toes, etc.) according to human anatomical definitions. The joint point recognition unit (130) according to the present embodiment can perform an optimization or learning-based procedure that comprehensively considers the reliability, spatial arrangement, and topological connectivity possibilities of the candidates for each joint.

[0057] For example, the joint point recognition unit (130) can combine mutually consistent sets of joints by utilizing a joint-specific heatmap output from a deep learning-based 2D keypoint detection (e.g., OpenPose series, HRNet series) and Part Affinity Fields representing joint-joint connection relationships. The joint point recognition unit (130) can fuse the estimate of time point 't' and the observation of time point 't+1' by applying a Kalman filter or a particle filter for inter-frame tracking stabilization, and the joint point recognition unit (130) can reduce noise sensitivity by applying weight reduction to joints with high observation uncertainty.

[0058] Additionally, the joint point recognition unit (130) can remove abnormal candidates by checking geometric consistency in an environment where three-dimensional coordinates are available. For example, it can detect a sudden reversal of vector directions between adjacent joints or an unrealistic arrangement with respect to the human body axis and exclude them from the set of candidates, and for joints where data loss has occurred temporarily, it can generate a temporary estimate by interpolating using the position of adjacent joints and a joint motion model.

[0059] For example, the joint point recognition unit (130) can filter out false detections by using a normal upper limb movement pattern in which the ‘elbow’ maintains a specific range angle on the line segment of the ‘shoulder-wrist’ line in the ‘shoulder-elbow-wrist’ line.

[0060] These joint point recognition units (130) can finally calculate the coordinates and reliability of all joint points and transmit them to the skeleton forming unit (140).

[0061] The above skeleton forming part (140) can form a skeleton structure by connecting joint points recognized by the joint point recognition part (130).

[0062] More specifically, the skeleton forming unit (140) can define a plurality of joint points determined by the joint point recognition unit (130) as nodes and define human anatomical connection information as edges to form a skeleton structure, and can generate a data structure in the form of a tree or a general graph by reflecting the hierarchical connections of the upper and lower limbs and the trunk.

[0063] For example, the skeleton forming part (140) is adjacent joint point and Given, the vector connecting the two joints can be defined. Here, adjacent joint points represents the coordinates of the i-th joint, where Xi represents the x-axis coordinate of the i-th joint, Yi represents the y-axis coordinate of the i-th joint, and Zi represents the z-axis coordinate of the i-th joint. Also, adjacent joint points represents the coordinates of the j-th joint, where Xj represents the x-axis coordinate, Yj represents the y-axis coordinate, and Zj represents the z-axis coordinate. A vector connecting these two joints can mean a vector having direction and magnitude pointing from the i-th joint to the j-th joint, and this is component-wise It can be calculated as.

[0064] This skeleton forming unit (140) can provide a mathematical basis for calculating joint angles through dot product operations in the joint angle calculation unit (220) by updating this set of vectors every frame. Additionally, the skeleton forming unit (140) can define vectors in an image coordinate system in an environment where only 2D data exists, and define vectors in a spatial coordinate system in an environment where 3D data exists, thereby maintaining and managing the skeleton in a form suitable for application scenarios.

[0065] For example, the skeleton forming unit (140) can establish a connection of ‘neck-shoulder-elbow-wrist’ for the upper limbs, a connection of ‘pelvic indicator-hip joint-knee-ankle-toes’ for the lower limbs, and a connection of ‘thoracic indicator-lumbar indicator-pelvic indicator’ for the trunk. The skeleton forming unit (140) continuously matches joint IDs to maintain topological consistency of the skeleton between frames, and the skeleton forming unit (140) can maintain connections by interpolation using previous and subsequent frame information for frames where a temporary omission of joint points has occurred.

[0066] Additionally, the skeleton forming unit (140) can update the skeleton to track changes in two vectors defined as 'shoulder-elbow-wrist' in an arm-raising motion along the time axis, and provide the result of this update as an input to the joint angle calculation step.

[0067] In this way, the skeleton forming unit (140) can reliably supply structured joint connection information necessary for time-series analysis of joint angles, motion pattern recognition, and posture diagnosis.

[0068] The above joint angle information calculation unit (200) can calculate a plurality of vectors based on joint position information and calculate joint angle information by performing operations between the calculated vectors.

[0069] More specifically, the joint angle information calculation unit (200) receives a plurality of joint coordinates expressed as joint position information as input, defines a vector connecting adjacent pairs of joints, and calculates joint angle information related to flexion, extension, adduction, abduction, etc. of each joint through operations between the defined plurality of vectors. Additionally, the joint angle information calculation unit (200) processes joint position information that is continuously updated over time to calculate joint angles for each frame, and accumulates the time series of calculated joint angles to provide as basic data for subsequent analysis, comparison, and learning-based discrimination.

[0070] The joint angle information calculation unit (200) according to the present embodiment may be configured in software as a modular pipeline for vector generation, angle calculation, time series accumulation, statistical calculation, event marking, etc. Additionally, the joint angle information calculation unit (200) may perform real-time computation in an edge processing environment equipped with a CPU and a GPU or NPU, and transmit time series data to an analysis learning server via a network to perform long-term storage and post-processing.

[0071] As shown in FIG. 7, this joint angle information calculation unit (200) may include at least one of a vector generation unit (210), a joint angle calculation unit (220), a joint angle recording unit (230), and a trend and fluctuation analysis unit (240).

[0072] The above vector generation unit (210) can calculate a first vector (v1) by connecting adjacent first joint coordinates and second joint coordinates using joint position information, and can calculate a second vector (v2) by connecting adjacent second joint coordinates and third joint coordinates.

[0073] More specifically, the vector generation unit (210) can calculate a vector representing the direction and strength between adjacent joints using the joint coordinates included in the joint position information. For example, the first joint coordinates , second joint coordinates , third joint coordinates Define as, and the first vector , the second vector It can be calculated as.

[0074] In addition, the vector generation unit (210) in an environment where a two-dimensional coordinate system is given By defining it as such, vectors can be calculated in the same way. At this time, the vector generation unit (210) can ensure consistency between frames by performing operations on data for which the alignment of the coordinate system is completed.

[0075] Additionally, the vector generation unit (210) matches the same joint index for consecutive frames 't' and 't+1'. It can be generated in a time series and provided as input to the subsequent angle calculation step.

[0076] Additionally, the vector generation unit (210) may detect frames in which very small vectors occur for numerical stability and apply a policy to hold or interpolate the frames. For example, it may receive joint estimation reliability scores together and limit or correct vector generation for joint connections where the reliability is below a threshold.

[0077] The above joint angle calculation unit (220) performs an inner product operation between the first vector (v1) and the second vector (v2) calculated in the vector generation unit (210). Joint angle information can be calculated by performing ).

[0078] More specifically, the joint angle calculation unit (220) can calculate joint angle information using the geometric relationship between the first vector (v1) and the second vector (v2) calculated by the vector generation unit (210), and an angle calculation formula using the dot product of the two vectors ( The corresponding angle can be calculated by applying ). Here, v1·v2 is the dot product of the two vectors It can be calculated as, represents the magnitude of vector vk, and It can be calculated as follows. The joint angle calculation unit (220) can set the z component to 0 for 2D inputs and apply the same formula.

[0079] Additionally, the joint angle calculation unit (220) can prevent calculation errors by clipping fractional values ​​to the range [-1,1] for numerical stability and then applying arc cosine. At this time, the joint angle calculation unit (220) converts the angle calculated in radians into degrees. The joint angle calculation unit (220) can apply at least one of a moving average, an exponentially weighted moving average (EWMA), and a Savitzky-Golay filter to reduce observation noise and smooth out the inter-frame variation of the angle.

[0080] For example, two vectors forming the upper arm and trunk can be defined in shoulder abduction motion, and a time series of θ calculated for each frame can be generated to record indicators such as maximum range of motion, average posture angle, and the rate of exceeding a specific threshold interval, and the same procedure can be applied to both joints to provide pairs of angle time series for left-right symmetry analysis.

[0081] This allows for the calculation of angles between desired joints, such as the shoulder and pelvis, and the shoulder and ankle, as well as symmetrical joints. Additionally, the joint angle calculation unit (220) can simultaneously track the angles of left and right symmetrical parts, such as left and right ears, left and right eyes, left and right shoulders, left and right elbows, left and right wrists, left and right pelvis, left and right knees, and left and right ankles, to check the left-right balance state. For example, the degree of left-right balance of the lower body can be evaluated based on the angle between the left and right pelvises, the tilt balance of the upper body can be evaluated based on the angle between the left and right shoulders, and the shoulder alignment state and the tilt balance of the upper body can be analyzed together based on the angle between the elbows.

[0082] The joint angle recording unit (230) can accumulate joint angle information calculated by the joint angle calculation unit (220) in a time series and store it in a database, and can provide at least one of basic data for trend analysis of joint angle changes, evaluation of variability of joint angle values, and recognition of motion patterns according to joint movement patterns based on the stored time series data.

[0083] More specifically, the joint angle recording unit (230) can accumulate joint angle information calculated by the joint angle calculation unit (220) in time series units and store it in a database, and can ensure the reproducibility of subsequent analysis by including a joint identifier, frame index or timestamp, angle value, reliability, preprocessing / filtering metadata, etc. in the storage schema.

[0084] These joint angle recording units (230) can provide at least one of basic data for trend analysis of joint angle changes based on stored time series data, evaluation of variability of joint angle values, and recognition of motion patterns according to joint movement patterns.

[0085] To this end, the joint angle recording unit (230) is the angle at time t Using t, the rate of change of angle (velocity) Defined as, and the rate of change of velocity (acceleration) Dynamic characteristics can be calculated by defining it as.

[0086] In addition, the joint angle recording unit (230) is for evaluating variability, the interval average and interval standard deviation The stability or vibration of the angle can be quantified by calculating it.

[0087] Additionally, the joint angle recording unit (230) uses an exponentially weighted moving average to check long-term trends. can calculate.

[0088] The above trend and fluctuation analysis unit (240) can store joint position information and joint angle information in a time series and analyze trend changes by comparing the stored data with past data.

[0089] More specifically, the trend and fluctuation analysis unit (240) can store joint position information and joint angle information in a time series and analyze trend changes by comparing the stored data with past data, and can calculate the average, median, quantile, and volatility index by period by querying the time series stored in the joint angle recording unit (230) and quantify the difference from the past baseline.

[0090] Additionally, the trend and fluctuation analysis unit (240) can detect structural changes in posture changes by applying at least one of cumulative sum (CUSUM), moving window mean-variance comparison, and Bayesian change point detection for change detection, and can calculate interval features of the angle time series (e.g., maximum / minimum, rising / falling slope, periodicity indicator) for motion pattern recognition, or estimate the repetition period through frequency domain analysis as needed.

[0091] For example, changes in repeatability, balance, and symmetry can be evaluated by comparing the phase relationships of the hip, knee, and ankle angles in a time-series manner during continuous motion such as walking. The trend and fluctuation analysis unit (240) can generate the analysis results as summary metadata and transmit it to a user terminal (30) or a higher-level discrimination module.

[0092] Additionally, the trend and fluctuation analysis unit (240) may apply at least one of missing interval interpolation and outlier mitigation (e.g., Winsorizing, robust average) to ensure data quality, and may record the parameters and version information used for the reproducibility of the analysis pipeline along with the results.

[0093] The above-mentioned posture evaluation unit (300) for each body part can evaluate local posture characteristics by analyzing joint position information and joint angle information for at least one body part among the cervical spine, thoracic spine, lumbar spine, pelvis, shoulder, elbow, wrist, hip joint, knee, and ankle. At this time, the posture evaluation unit (300) for each body part can calculate at least one of anterior-posterior inclination angle, lordosis and kyphosis angle, flexion and extension angle, varus angle, valgus angle, left and right shoulder height and angle, and rotation angle for each of the cervical spine, thoracic spine, lumbar spine, pelvis, shoulder, elbow, wrist, hip joint, knee, and ankle.

[0094] More specifically, the posture evaluation unit (300) receives joint position information and joint angle information as input, logically divides the body into sets of parts including the cervical spine, thoracic spine, lumbar spine, pelvis, shoulder, and knee, and then selects joint angle sequences and joint direction vectors corresponding to each part to calculate characteristic indicators for each part, calculates at least one of anterior inclination angle, curvature index, anterior-posterior tilt index, varus / valgus angle index, flexion-extension angle, adduction-abduction angle, rotation angle, and left-right symmetry index for each part, and evaluates local posture characteristics at the part unit by comparing the calculated indicators with stored normal posture reference information.

[0095] This type of posture evaluation unit (300) can divide the user's body into several parts and then analyze what characteristics each part has as it moves.

[0096] First, the posture evaluation unit (300) for each part can determine how much the angle between joints changes over time and how much the part is bent or curved. For example, for parts that naturally have a curve, such as the neck (cervical spine) or lower back (lumbar spine), the amount of change in the angle can be directly linked to the curvature characteristics.

[0097] Additionally, the posture evaluation unit (300) for each body part can also calculate how much a specific body part is tilted. To do this, the tilted angle can be calculated by comparing a vector representing the direction of the body part with a preset reference axis (e.g., a vertical axis or a horizontal axis). For example, if the pelvis or shoulder is tilted to one side, the direction vector of this body part will show a large difference from the reference axis, and the tilt can be calculated to be that much larger.

[0098] For example, left-right tilt can be determined by calculating the angle between the pelvis and the shoulders using the pelvis as a reference point. Another example involves calculating the angle between the pelvis and shoulders based on the ankles to check the angles and tilt of each body part simultaneously. Additionally, the tilt of the head can be determined by calculating the angle of the head based on the shoulders, and the direction of head rotation can be identified by calculating the angles of both ears. This method allows for a more precise evaluation of the entire body's tilt and alignment status by directly calculating the angles of each body part, rather than relying on differences in distance or length between them.

[0099] In addition, the posture evaluation unit (300) for each body part can also evaluate left-right symmetry. That is, by comparing the joint angles corresponding to the left and right sides, the difference between the two values ​​is defined as asymmetry. If this difference is small, it can be evaluated that symmetry is well maintained, and if the difference is large, it can be evaluated that the posture is skewed to one side. For example, if the angles of the left shoulder and the right shoulder are different, it can be seen that the shoulder is raised or lowered to one side.

[0100] Additionally, the posture evaluation unit (300) can determine whether there is an forward tilt such as a turtle neck by calculating the forward tilt angle for the cervical spine, check for excessive kyphosis by analyzing the flexion and extension angles and the anterior-posterior and left-right tilts for the thoracic spine, and evaluate the degree of lordosis by analyzing the lordosis angle and the anterior-posterior and left-right tilts for the lumbar spine. In addition, it can evaluate the pelvic alignment state by analyzing the anterior-posterior tilt angle and the difference in anterior-posterior and left-right tilts for the pelvis, evaluate whether there is shoulder imbalance by analyzing the left-right height angle and symmetry for the shoulder, evaluate the alignment state of the elbow by analyzing the flexion and extension, inversion and valgus angles of the elbow, evaluate the alignment state of the wrist by analyzing the flexion and extension, adduction and abduction of the wrist, evaluate the alignment state of the hip joint by evaluating the flexion and extension, internal rotation and external rotation of the hip joint, determine the alignment state of the knee by calculating the flexion and extension, inversion and valgus angles for the knee, and evaluate the alignment state of the foot by evaluating the flexion, extension, adduction and abduction of the ankle.

[0101] Additionally, the posture evaluation unit (300) for each body part can clearly define a reference point, a reference axis, and a measurement point to calculate joint angles. The reference point may be one of the joints of the skeleton or an arbitrarily determined location, the reference axis may be set to one of the X, Y, or Z axes from the reference point, and the measurement point may be the coordinates of the joint to be evaluated. At this time, the displacement between the reference point P and the measurement point P₁ can be defined as a vector and expressed as (xn, y, z), and through this, the total displacement and displacement in each axis direction can be calculated. Furthermore, a method of calculating angles based on the XY, YZ, and XZ planes can also be applied.

[0102] Through this calculation process, the posture evaluation unit (300) for each part can determine whether there is anterior cervical tilt based on the x-axis, analyze knee inversion or valgus angle based on the y-axis or z-axis, and analyze whether there is pelvic tilt based on the z-axis or y-axis. That is, various evaluations of actual joint angles and human body movements can be quantitatively performed through an angle calculation formula based on the axis.

[0103] The above-mentioned posture evaluation unit (300) can determine whether each part is within the normal range or has an abnormality by comparing the calculated anterior-posterior inclination angle, lordosis and kyphosis angle, flexion and extension angle, varus and valgus angle, adduction and abduction angle, rotation angle, left-right height difference, and symmetry index with a normal posture standard. In addition, by clearly managing the input values ​​or definitions used in the calculation process, consistency of the algorithm can be guaranteed so that the same result is always obtained when the same data is input.

[0104] Finally, the posture evaluation unit (300) for each body part can apply these analysis results to various movements or situations. For example, it can be applied not only to a standing posture but also to walking, sitting, or specific exercise movements, and the results can be presented as visual displays or numerical values ​​to help the user intuitively understand and interpret them.

[0105] For example, referring to Fig. 12, the human body can be divided into sections such as the ankle, knee, pelvis, and sternum, and posture can be evaluated by comparing the angles between each section. First, the angle between the ankle and the knee, i.e., the lower leg angle, is calculated, and by comparing this to the angle between the knee and the pelvis, i.e., the femoral angle, the degree to which the knee or pelvis is tilted forward, backward, or left and right can be determined. The results calculated in this way can serve as a basis for determining left-right imbalance in the knee or pelvis indicated in the drawing.

[0106] In addition, by comparing the upper body angle between the pelvis and the sternum based on the femoral angle between the knee and the pelvis, the degree of forward, backward, or left-right movement of the upper body or the femur can be determined, and this can be used to analyze postural abnormalities such as whole-body tilt, left-right shoulder imbalance, lateral flexion of the neck, and rotation of the joints as illustrated in Fig. 12.

[0107] In addition, referring to Fig. 12, relative and absolute imbalances can be identified together to quantitatively evaluate the left-right balance of the body. For example, relative imbalance can be identified by setting one joint or specific part among paired corresponding parts (e.g., eyes, ears, shoulders, sternum, pelvis, knees, ankles) as a reference point and comparing the difference in angle with the opposite part. Furthermore, the degree of deviation from the center can be analyzed by comparing the tilt or rotational direction of the left and right joints relative to the body's centerline. Additionally, absolute imbalance can be determined by setting an arbitrary feature point at the center of the body or at the center of the left-right plum lines and comparing the directional angles of the left and right joints. Through this analysis, the alignment and balance of the entire body can be comprehensively evaluated, focusing on changes in the angular relationship between parts.

[0108] Accordingly, the posture evaluation unit (300) can numerically evaluate local posture characteristics such as the angle of each part, whole body tilt, head and rotation of each part, left-right front-back imbalance of the pelvis, left-right front-back imbalance of the knees, left-right front-back imbalance of the ankles, and whether there is rotation of each part by comparing the angle of each part's joint and part in order, lower leg angle, thigh angle, and upper body angle.

[0109] Additionally, the posture evaluation unit (300) for each body part can calculate a rotation angle to quantitatively calculate the relative rotation relationship of major body parts, such as the head, shoulders, and pelvis, as well as the face and shoulder rotations shown in FIG. 12. More specifically, the posture evaluation unit (300) can determine whether the face is rotated by using the head center point (e.g., the tip of the nose or the center point connecting both ears) as a reference point, defining the line connecting the left and right shoulder center points as a reference axis, and then calculating the rotation angle between the head direction vector and the reference axis. At this time, the face direction vector can be defined as a vector between the eye center point or the tip of the nose and the head center point, and the rotation angle can be calculated using the formula 'θ = arccos((v₁·v₂) / (|v₁||v₂|))' by using the dot product of the two vectors. If the calculated rotation angle exceeds the reference range, it can be determined that the user's head is rotated to the left or right.

[0110] In addition, the posture evaluation unit (300) for each body part can analyze the sequential relationship of rotation between body parts, including not only shoulder rotation but also pelvic rotation, upper body rotation, and lower body rotation. To this end, a vector connecting the left shoulder joint point and the right shoulder joint point, or a vector connecting the left pelvic point and the right pelvic point, can be defined, and the angle formed by this vector with the front reference plane of the body (e.g., YZ plane) can be calculated. At this time, the rotation angle can be calculated using the dot product of the plane normal vector n and the shoulder vector s as 'φ = arccos((n·s) / (|n||s|))', and if the calculated angle exceeds a reference value (e.g., within 5°), it can be determined that the corresponding body part has rotated in one direction, either left or right. As illustrated in FIG. 12, this rotation angle analysis can numerically express whether there is a relative discrepancy between the face direction and the shoulder direction, or between the shoulder and the pelvis, thereby allowing for more precise determination of upper body torsion or left-right asymmetry.

[0111] Additionally, the posture evaluation unit (300) can accumulate the calculated rotation angles as time-series data to calculate the average rotational bias, rotational stability index, or left-right rotational symmetry in a specific posture, and can determine whether there is a rotation-related posture abnormality by comparing these results with normal posture reference information. For example, if the difference between the rotation angles of the face, shoulders, and pelvis exceeds a certain threshold, it can be classified as an abnormal posture pattern in which the upper body and head rotate in different directions. The result can be displayed on a user terminal by displaying the head and shoulders in different colors on the screen or by visualizing the direction of rotation with an arrow.

[0112] The posture evaluation unit (300) for each part according to the present embodiment may be composed of an input mapping module, an indicator calculation module, a reference comparison module, and a quality control module in software, and may be executed in at least one of real-time processing and batch processing while operating on an edge processing terminal or an analysis learning server in hardware. The posture evaluation unit (300) may exclude frames with low reliability or apply interpolation rules through the quality control module, and record the application history as metadata to ensure the reproducibility of the results.

[0113] The posture diagnosis unit (400) can determine whether there is an abnormality in the user's posture by comparing joint position information and joint angle information with stored normal posture reference information.

[0114] More specifically, the posture diagnosis unit (400) receives the user's joint position information and joint angle information as input, and can evaluate whether the user's current posture matches the normal posture by comparing the input data with normal posture reference information. In addition, the posture diagnosis unit (400) can determine whether there is a posture abnormality by storing the normal posture reference information in memory and comparing it with the input real-time data, and can precisely diagnose the user's posture characteristics by analyzing not only static movements but also dynamic movements including joint movements over time.

[0115] To this end, the posture diagnosis unit (400) may include at least one of a posture error calculation unit (410), a posture abnormality determination unit (420), a posture result output unit (430), and a posture correction guide unit (440), as shown in FIG. 13.

[0116] The posture error calculation unit (410) compares joint position information and joint angle information with normal posture reference information to calculate an error value for each joint angle information ( ) can be produced.

[0117] More specifically, the posture error calculation unit (410) measures the user's joint angle values It is called the joint angle based on the normal posture. When this is the case, the difference between the two values ​​is the error value If defined as, this This can be represented as such. These error values ​​are indicators that quantify the difference in posture occurring at each joint unit; in static postures, they represent the difference at a single point in time, and in dynamic movements, they can evaluate the error of the entire movement by calculating the difference at each point in time of the time series data. The posture error calculation unit (410) can accumulate or average these error values ​​along the time axis to expand them into a posture error scale by part or by the whole body. In this way, the posture error calculation unit (410) can quantitatively measure the difference between the normal posture and the actual posture.

[0118] The above posture abnormality determination unit (420) uses the error value calculated by the posture error calculation unit (410) as a threshold value ( Compared to ) In this case, it can be determined as an abnormality in the posture of the corresponding joint.

[0119] More specifically, the posture abnormality determination unit (420) is the error value calculated by the posture error calculation unit (410). The absolute value of the preset threshold It can be compared with. That is, In this case, the relevant joint area is determined to be outside the normal range and can be identified as a postural abnormality. Here, the threshold represents an acceptable error range for a specific joint and may be set to a fixed value or may be dynamically adjusted according to user-specific data or statistical distribution. The posture abnormality detection unit (420) can quickly determine whether there is an abnormality for each joint or part in this way.

[0120] The above posture result output unit (430) can output the results determined by the posture abnormality determination unit (420) visually or numerically.

[0121] More specifically, the posture result output unit (430) can output the results determined by the posture abnormality determination unit (420) in a visual or numerical format to convey to a user or system operator. The posture result output unit (430) can display the posture abnormality areas on a skeleton-shaped human body model in a graphical user interface by changing colors or highlighting, and as a numerical output, it can present the error value for each joint and whether it exceeds a threshold value as a table or numerical indicator.

[0122] Additionally, the posture result output unit (430) can display the increased and decreased parts in color.

[0123] For example, if the upper body is tilted to the left, the left side can be marked as a reduced area, and the opposite side as an increased area. Additionally, if forward head posture is detected, the front of the neck can be marked as a reduced area, and the back of the neck as an increased area. As another example, the problematic area of ​​the current posture can be displayed in red on the user terminal screen, or areas where the error value is within the standard range can be displayed in green to facilitate immediate understanding.

[0124] The posture correction guide unit (440) can provide real-time feedback to the user by generating at least one of a customized correction guide message reflecting the difference between the user's current posture and normal posture based on the result determined by the posture abnormality determination unit (420), a visual correction guide on a skeleton model or video screen, and a warning signal when the angle deviates from the reference angle range.

[0125] More specifically, the posture correction guide (440) can intuitively inform the user of the difference between the current posture and the normal posture and suggest a correction method based on the results determined by the posture abnormality determination unit (420). At this time, the posture correction guide (440) can provide a correction guidance message in text form, highlight the incorrect parts through a skeleton model and present a vector to be moved in the correct direction as an arrow, or output a visual correction guide that outputs the direction of movement as an arrow, etc.

[0126] Additionally, the posture correction guide (440) can induce real-time correction in the user by generating a warning sound when a specific joint angle deviates from the reference range or by providing tactile feedback such as a vibration signal. Other examples include displaying the names or images of muscles to improve posture, or providing guidance on areas that require stretching and areas that require exercise.

[0127] In addition, the posture correction guide (440) can provide an optimal correction plan for each individual by reflecting the user's customized data, and can continuously improve the quality of the correction guidance by updating the normal posture standard database.

[0128] For example, when the user rolls their shoulders excessively forward, the shoulder area on the screen can be displayed in red and a guidance message saying "Straighten your shoulders back" can be displayed. In this way, the posture correction guidance unit (440) can provide a function for guiding actual correction beyond simple judgment.

[0129] The motion pattern analysis unit (500) analyzes a series of motion sequences and processes changes in multiple joint angle information along a time axis using statistical or pattern recognition techniques, and can evaluate at least one of motion repeatability, balance of left and right joints, and symmetry of joint movement based on the processing results.

[0130] More specifically, the motion pattern analysis unit (500) receives as input multiple joint angle information collected continuously along the time axis according to the user's motion sequence, and analyzes this time series data to extract high-dimensional features such as the repeatability of the motion, the balance of left and right joints, and the symmetry of the joint movement. This motion pattern analysis unit (500) can go beyond simply evaluating joint angles at a single point in time and comprehensively evaluate the regularity of the motion pattern and signs of abnormalities by considering the entire trend of changes in joint angles over time.

[0131] Additionally, the motion pattern analysis unit (500) can evaluate how consistently the user's motion is repeated by applying statistical techniques to calculate the mean, variance, standard deviation, periodicity indicator, etc. of the time-series joint angle data. For example, when the user performs the same motion multiple times, the maximum joint angle and minimum joint angle for each motion cycle can be compared, and if the deviation is small, it can be determined that the motion repeatability is high.

[0132] Additionally, the motion pattern analysis unit (500) can analyze the balance of motion by applying a pattern recognition technique to compare left and right joint data. For example, the left-right balance can be quantitatively evaluated by comparing the angle changes of the left knee joint and the right knee joint in a time series and calculating the correlation coefficient between the two curves. In this process, the motion pattern analysis unit (500) can ensure that the left-right comparison is consistent by utilizing coordinate values ​​normalized in a reference coordinate system.

[0133] Additionally, the motion pattern analysis unit (500) can measure the phase difference of the left and right joint angle changes to analyze the symmetry of joint movement. The smaller the phase difference, the more the left-right symmetry is maintained, and conversely, if the phase difference widens significantly, it can be determined that motion imbalance or a biased usage pattern of a specific part has occurred. At this time, the motion pattern analysis unit (500) can apply a time-frequency analysis technique to compare the periodic components of left and right movements, or analyze whether the time series data is synchronized through a signal processing algorithm. For example, when analyzing walking motion, the left and right walking symmetry can be evaluated by recording the knee angle changes of the left and right legs as a time series and calculating the difference in period and amplitude. In addition, in the motion of swinging the arms alternately, the balance of the upper limbs can be determined by analyzing the range of motion and period of the left and right shoulder and elbow joints.

[0134] Additionally, the motion pattern analysis unit (500) can express the analysis results as quantified indicators or visual patterns so that they can be utilized by other modules. For example, the motion repeatability indicator can be calculated as the number of times the motion is performed and the angle deviation over a certain period, the balance indicator can be calculated as the distribution of differences in left and right joint angles, and the symmetry indicator can be summarized as phase difference or correlation coefficient. These results can be utilized for subsequent correction guidance or long-term monitoring.

[0135] The above-mentioned learning-based discrimination unit (600) can train a machine learning or deep learning model with normal posture reference information or user-specific measurement data as a training dataset, and use the trained model to determine whether new joint position information and joint angle information are normal, or dynamically update customized normal criteria according to the characteristics of the user.

[0136] More specifically, the learning-based discrimination unit (600) can train a machine learning or deep learning model by configuring normal posture reference information or user-specific measurement data as a training dataset, and by training the model using a dataset containing various posture states and whether the state is normal, it can automatically determine whether new input data is within the normal range when given.

[0137] Additionally, the learning-based discrimination unit (600) can receive new joint position information and joint angle information using a trained model and determine whether the value falls within the normal posture range. In this process, the learning-based discrimination unit (600) can determine not only whether there is an abnormality at the individual joint level, but also complex posture patterns formed by the combination of multiple joints. Accordingly, the learning-based discrimination unit (600) can effectively determine whether a static motion is normal as well as a dynamic motion sequence.

[0138] Additionally, the learning-based discrimination unit (600) can dynamically update the normal criteria customized for each user. That is, while using criteria based on a general standard database as the initial value, it can be corrected to a standard value that reflects individual characteristics by accumulating repeated measurement data of a specific user. In this process, the learning-based discrimination unit (600) can apply online learning techniques or incremental learning techniques to update model parameters whenever new data is received. For example, it can receive walking motion data and compare it with a normal walking pattern, and through the learned model, if the difference in left-right balance or joint range of motion exceeds a threshold value, it can be determined as abnormal walking. Accordingly, the learning-based discrimination unit (600) can improve the accuracy of discrimination by reflecting changes in the user's posture characteristics over time.

[0139] In addition, the learning-based discrimination unit (600) can calculate a normal range optimized for a specific user by correcting the normal posture standard based on motion data collected by the specific user over a long period of time.

[0140] Additionally, the learning-based discrimination unit (600) can output a discrimination result as at least one of a probability value, a confidence index, and a normal / abnormal label. In this case, if the discrimination confidence is calculated to be low, it may be configured to require additional data or undergo an auxiliary evaluation process, and such discrimination result may be transmitted to a detailed diagnosis unit or a correction guidance unit to be reflected in a subsequent feedback process.

[0141] The learning-based discrimination unit (600) according to the present embodiment can apply various algorithms such as a supervised learning-based classification model, a time series analysis model, a recurrent neural network, and a convolutional neural network.

[0142] According to the present embodiment, the position of a user's body joints is precisely detected, and based on this, the joint angle is calculated and compared with reference information for a normal posture, thereby allowing the user's posture state to be evaluated quantitatively and objectively. As a result, posture evaluation, which previously relied on visual observation or subjective judgment, can be performed based on data, thereby significantly improving reliability and reproducibility.

[0143] Furthermore, by accumulating and analyzing joint position and angle information in a time-series manner, it is possible to comprehensively identify not only the postural state at a single point in time but also movement patterns, trends, and variability over time. Accordingly, by quantitatively analyzing the regularity of repetitive movements, left-right balance, and symmetry of joint movements, it is possible to provide an in-depth diagnosis of the user's overall exercise habits and physical functions.

[0144] In addition, it can automatically detect postural abnormalities and provide the results in visual or numerical formats, allowing users to easily recognize their own posture problems. Furthermore, by providing personalized correction guidance messages, visual guides, and warning signals in real time, users can receive immediate feedback, which can encourage them to quickly correct their incorrect posture.

[0145] In addition, machine learning or deep learning techniques can be applied to learn user-specific data, and normal standards reflecting individual characteristics can be dynamically updated. Through this, user-customized posture assessment and correction functions can be provided, and continuous improvement and optimization can be achieved through the accumulation of long-term data.

[0146] Therefore, this system helps general users maintain proper posture habits in daily life, serves as a professional posture correction and performance enhancement tool for athletes and rehabilitation patients, and supports precise posture analysis and evaluation of treatment effectiveness in the medical and healthcare fields. Consequently, this system can provide a wide range of benefits, from user health management and improved exercise efficiency to injury prevention and rehabilitation treatment.

[0147] The above description is merely one embodiment for implementing a posture diagnosis system based on joint position information and joint angle information according to the present invention. The present invention is not limited to the above embodiment, and the technical spirit of the present invention extends to the scope in which various modifications can be made by anyone with ordinary knowledge in the field to which the invention belongs, without departing from the gist of the invention as claimed in the following patent claims. Explanation of the symbols

[0148] 1000: Posture diagnosis system based on joint position and joint angle information 100: Joint position information acquisition unit 110: Joint position preprocessing unit 120: Coordinate alignment part 130: Joint point recognition unit 140: Skeleton formation part 200: Joint Angle Information Calculation Unit 210: Vector generation section 220: Joint Angle Calculation Unit 230: Joint Angle Recorder 240: Trend and Fluctuation Analysis Section 300: Body Part Posture Evaluation Section 400: Posture Diagnosis Unit 410: Attitude Error Calculation Unit 420: Posture Abnormality Detection Unit 430: Attitude Result Output Section 440: Posture Correction Guide 500: Motion Pattern Analysis Unit 600: Learning-based discriminator 10: Motion capture sensor 20: Edge processing terminal 30: User terminal 40: Analytics learning server

Claims

Claim 1 A joint position information acquisition unit that detects the position of a user's body joints through a motion capture sensor and acquires joint position information expressed as 2D or 3D coordinate values; a joint angle information calculation unit that calculates joint angle information based on the joint position information, accumulates and stores the joint position information and the joint angle information as time-series data in chronological order, and analyzes trend changes or fluctuation characteristics regarding changes in joint angles by comparing the stored time-series data with past data; and a posture diagnosis unit that determines whether there is a posture abnormality in each part of the user by comparing the joint position information and the joint angle information with stored normal posture reference information, wherein the joint angle information calculation unit includes a vector generation unit that calculates a first vector (v1) by connecting adjacent first joint coordinates and second joint coordinates using the joint position information, and calculates a second vector (v2) by connecting adjacent second joint coordinates and third joint coordinates; and a dot product operation between the first vector (v1) and the second vector (v2) calculated by the vector generation unit ( A joint angle calculation unit that calculates joint angle information by performing ); a joint angle recording unit that accumulates the joint angle information calculated by the joint angle calculation unit in a time series and stores it in a database, and provides at least one of basic data for trend analysis of joint angle changes, variability evaluation of joint angle values, and motion pattern recognition according to joint movement patterns based on the stored time series data; and a trend and variability analysis unit that stores the joint position information and the joint angle information in a time series and analyzes trend changes by comparing the stored data with past data, wherein the trend and variability analysis unit queries the time series stored in the joint angle recording unit to calculate period-specific averages, medians, quantiles, and variability indicators, quantifies the difference from past baselines, and detects structural changes in posture changes by applying at least one of cumulative sum (CUSUM), moving window mean-variance comparison, and Bayesian change point detection. Claim 2 A posture diagnosis system based on joint position information and joint angle information according to claim 1, further comprising a region-specific posture evaluation unit that evaluates local posture characteristics by analyzing the joint position information and joint angle information for at least one region among the cervical spine, thoracic spine, lumbar spine, pelvis, shoulder, elbow, wrist, hip joint, knee, and ankle. Claim 3 In claim 2, the posture evaluation unit for each body part is characterized by evaluating the alignment of the cervical spine by analyzing the anterior tilt angle and joint angle for the cervical spine, evaluating the curvature of the thoracic spine by analyzing the flexion angle, extension angle, and anterior-posterior-left-right tilt for the thoracic spine, evaluating the alignment of the lumbar spine by analyzing the lordosis angle and anterior-posterior-left-right tilt for the lumbar spine, evaluating the balance of the pelvis by analyzing the anterior-posterior tilt angle and the difference in anterior-posterior-left-right tilt for the pelvis, evaluating the asymmetry of the shoulder by analyzing the height angle and symmetry of the left and right shoulder joints for the shoulder, evaluating the alignment of the elbow by analyzing the flexion and extension, inversion angle, and valgus angle of the elbow, evaluating the alignment of the wrist by analyzing the flexion and extension, adduction and abduction of the wrist, evaluating the alignment of the hip joint by analyzing the flexion and extension, internal rotation and external rotation of the hip joint, evaluating the alignment of the knee joint by analyzing the inversion angle, valgus angle, and flexion and extension for the knee, and evaluating the alignment of the foot by analyzing the flexion and extension, adduction and abduction angles for the ankle. Posture diagnosis system based on joint position information and joint angle information. Claim 4 A posture diagnosis system based on joint position information and joint angle information according to claim 1, wherein the joint position information acquisition unit comprises: a joint position preprocessing unit that preprocesses raw data acquired from the motion capture sensor to remove noise, separates the background from the human body, and searches for joint position candidates; a coordinate matching unit that converts the data processed by the joint position preprocessing unit into a reference coordinate system; a joint point recognition unit that recognizes human body joint position points based on the coordinate data converted by the coordinate matching unit; and a skeleton forming unit that forms a skeleton structure by connecting the joint points recognized by the joint point recognition unit. Claim 5 delete Claim 6 In claim 1, the posture diagnosis unit compares the joint position information and the joint angle information with normal posture reference information and the error value for each joint angle information ( A posture error calculation unit that calculates ); an error value calculated by the posture error calculation unit and a threshold value ( Compared to ) A posture diagnosis system based on joint position information and joint angle information, characterized by including: a posture abnormality determination unit that determines a posture abnormality of the corresponding joint in the case of; and a posture result output unit that outputs the result determined by the posture abnormality determination unit visually or numerically. Claim 7 A posture diagnosis system based on joint position information and joint angle information according to claim 6, wherein the posture diagnosis unit further comprises a posture correction guidance unit that provides real-time feedback to the user by generating at least one of a customized correction guidance message reflecting the difference between the user's current posture and normal posture based on the result determined by the posture abnormality determination unit, a visual correction guide on a skeleton model or video screen, a visual message of muscles, and a warning signal when the angle deviates from a reference angle range.

Citation Information

Patent Citations

  • System and method for estimating musculoskeletal disorders based on the estimated pose

    KR1020240043540A

  • Apparatus and method for detecting posture and determining accuracy

    KR1020240155404A

  • Apparatus and method for quantitatively analyzing and evaluating posture to train exercise by repetitive motion

    KR1020220042666A

  • Abnormal posture detection method of abnormal posture detection system to prevent musculoskeletal disorders

    KR1020240026778A

  • Exercise posture measuring device and exercise posture measuring method

    KR1020250028109A