Skeleton Model Update via FABRIK with Natural Joint Constraints
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing Forward and Backward Reaching Inverse Kinematics (FABRIK) computing method for determining the posture of a skeleton model often results in joints not being bent in natural directions, fails to accurately reflect hand rotation information, and causes distortion in overall postures, particularly around junctions of the skeleton model.
Innovation Solution
The proposed solution involves a skeleton model update apparatus and method that includes posture data acquisition, initial position determination, and rotation identification sections to improve the determination of the skeleton model's posture by executing Forward and Backward Reaching Inverse Kinematics computing, ensuring joints are bent naturally and accurately reflecting hand rotations, while preventing overall posture distortion.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If FABRIK computing is used to determine skeleton model posture, then the algorithm is simple and easy to implement, but joints are not bent in natural directions and impossible postures are determined
Solution Approach 1:
The patent modifies the FABRIK algorithm by introducing a natural direction constraint parameter that limits joint rotation to biologically plausible ranges. This parameter change ensures joints bend naturally while maintaining the overall simplicity of the inverse kinematics approach.
Solution Approach 2:
The patent implements feedback by checking whether determined joint angles exceed natural rotation ranges and correcting them accordingly. This feedback mechanism prevents impossible postures while preserving the computational efficiency of the original FABRIK method.
2Ease of operation
If independent forward reaching phase processing is executed for each target node, then each node can be processed separately, but overall postures around junctions get greatly distorted
Solution Approach 1:
The patent segments the skeleton model into node groups based on their distance from junctions. Nodes within the same group are processed together through coordinated forward reaching phase processing, preventing distortion at junctions while maintaining independent processing capability for different body regions.
Solution Approach 2:
The patent merges the processing of multiple target nodes into coordinated groups, particularly those near junctions. This combining approach ensures that joint movements are synchronized across connected body parts, preventing the distortion that occurs when nodes are processed independently.
3Productivity
If FABRIK computing determines posture based on target node position only, then computation is efficient, but hand rotation information about axis rotation is not reflected
Solution Approach 1:
The patent performs preliminary extraction of rotation information from tracker data before the main FABRIK computation. This preliminary action captures hand rotation details about axis rotation, which are then integrated into the posture determination, preserving information that would otherwise be lost.
Solution Approach 2:
The patent introduces an intermediary step that processes tracker rotation data and converts it into constraints for the FABRIK computation. This intermediary mechanism efficiently incorporates hand rotation information without significantly increasing computational complexity.
Data Source
AI summary
A posture data acquisition section acquires posture data indicating a posture of a target node included in a skeleton model of a tree structure. An initial position determination section determines a position to which the target node is to move on the basis of the position data. The initial position determination section determines an initial position of a parent node of the target node in Forward and Backward Reaching Inverse Kinematics (FABRIK) computing on the basis of the position to which the target node is to move and a given posture of the skeleton model. A posture update section updates a posture of the skeleton model by executing the FABRIK computing including determination of a new position of the parent node on the basis of the position to which the target node is to move and the initial position of the parent node.


