Claims Analysis
Total Claims: 36
Claim 1
Independent Claim
141 words
A method of constructing from a set of basis motions for a graphical object, animation motions and transitions between said animation motions, such basis motions optimized through application of motion algebra, the method comprising: selecting for the graphical object, a computer object model that represents motion capabilities of the graphical object; applying motion algebra to constrain and minimize the complexity of the set of basis motions; applying the computer object model to the set of basis motions to create a processed set of basis motions in conformity with the computer object model; selecting two or more individual basis motions from said processed set of basis motions to create an initial composite motion; generating a set of motion transitions between the selected basis motions; and assembling a final composite motion from the initial composite motion and the generated set of motion transitions.
Claim 2
Independent Claim
141 words
A method of constructing from a set of basis motions for a graphical object, animation motions and transitions between said animation motions, such basis motions optimized through application of motion algebra, the method comprising: selecting for the graphical object, a computer object model that represents motion capabilities of the graphical object; applying motion algebra to constrain and minimize the complexity of the set of basis motions; applying the computer object model to the set of basis motions to create a processed set of basis motions in conformity with the computer object model; selecting two or more individual basis motions from said processed set of basis motions to create an initial composite motion; generating a set of motion transitions between the selected basis motions; and assembling a final composite motion from the initial composite motion and the generated set of motion transitions.
Claim 3
Dependent Claim
20 words
A computer readable medium having stored therein instructions capable of causing a computer to perform the method of claim 1.
Claim 4
Dependent Claim
72 words
The method of claim 1 where the basis motions in the set of basis motions are represented by common degrees of freedom, the computer object model includes fewer degrees of freedom than the common degrees of freedom representing the basis motions, and applying the computer object model to the set of basis motions creates said processed set of basis motions with the same degrees of freedom included in the computer object model.
Claim 5
Dependent Claim
69 words
The method of claim 1 where the graphical object is represented by a plurality of moveable joints each with a characteristic motion, the joints interconnecting a plurality of body segments and each of the joints having pre-selected degrees of freedom in the computer object model corresponding to the characteristic motion, the processed set of basis motions including for each joint only the pre-selected degrees of freedom for the joint.
Claim 6
Dependent Claim
63 words
The method of claim 1 where the initial and final composite motions are constructed using a motion algebra having optimized motion primitives and motion operations which operate on said optimized motion primitives, the optimized motion primitives including time-based motion intervals, optimized motion degrees of freedom and optimized motion units, and the motion operations including set operations, function operations, and insert and delete operations.
Claim 7
Dependent Claim
58 words
The method of claim 5 where the time-based motion intervals include a list of scalar motion functions defined over a time interval, the optimized degrees of freedom include a subset of the degrees of freedom values of the graphical object over the time interval, and the optimized motion units include an array of the optimized degrees of freedom.
Claim 8
Dependent Claim
29 words
The method of claim 5 where the set operations include intersection, undefine and composition, and the function operations include affine transformation operations, clip operations, clip-in-place operations and concatenate operations.
Claim 9
Dependent Claim
158 words
The method of claim 1 where the computer object model of the graphical object includes a root position, a trunk, and a plurality of appendages connected to said trunk, each appendage having at least one segment coupled at a joint that is moveable, at least one of said appendages being a supporting appendage that supports said trunk and at least one of said appendages being a non-supporting appendage that does not support said trunk, the method further comprising: generating a first set of optimized motion transition data for the root position with a kinematic optimization process; generating a second set of optimized motion transition data for the supporting appendage with an inverse kinematics optimization process; generating a third set of optimized motion transition data for the non-supporting appendage with a spacetime constraints optimization process; and combining the first, second and third sets of motion transition data to generate the set of motion transitions between the selected basis motions.
Claim 10
Dependent Claim
95 words
The method of claim 1 where the computer object model for the graphical object includes plural segments coupled at joints that are moveable with plural degrees of freedom, at least selected ones of the joints being moveable in fewer than all the degrees of freedom, the set of basis motions including joint data corresponding to the degrees of freedom, and the applying the computer object model to the set of basis motions to create a processed set of basis motions includes removing joint data for degrees of freedom within which each joint is not moveable.
Claim 11
Dependent Claim
19 words
The method of claim 1 where the final composite motion includes visually smooth transitions between the selected basis motions.
Claim 12
Independent Claim
102 words
A method of constructing from a set of basis motions for a graphical object optimized animation motions and transitions between said animation motions, such basis motions optimized through application of motion algebra, the method comprising: selecting two or more individual basis motions from a set of raw basis motions to create an initial composite motion; applying motion algebra to constrain and minimize the complexity of the set of basis motions; generating a set of optimized motion transitions between the selected basis motions; and assembling a final optimized composite motion from the initial composite motion and the generated set of optimized motion transitions.
Claim 13
Independent Claim
102 words
A method of constructing from a set of basis motions for a graphical object optimized animation motions and transitions between said animation motions, such basis motions optimized through application of motion algebra, the method comprising: selecting two or more individual basis motions from a set of raw basis motions to create an initial composite motion; applying motion algebra to constrain and minimize the complexity of the set of basis motions; generating a set of optimized motion transitions between the selected basis motions; and assembling a final optimized composite motion from the initial composite motion and the generated set of optimized motion transitions.
Claim 14
Dependent Claim
35 words
The method of claim 11 where generating a set of optimized motion transitions between the selected basis motions includes using a kinematic optimization process, an inverse kinematic optimization process, and a spacetime constraints optimization process.
Claim 15
Dependent Claim
18 words
The method of claim 11 where the set of raw basis motions includes generally cyclic raw basis motions.
Claim 16
Independent Claim
273 words
A method of smoothly transitioning between plural cyclic motion intervals by reducing cyclic discontinuity error in an animation motion for a graphical object, the animation motion including one or more cyclic basis motions, where each of said cyclic basis motions includes a set of cyclic motion data points for a time interval T, the method comprising: allowing a user to select a first grouping of generally cyclic motion data points with a beginning and ending data point for a first time interval from a basis motion included in the animation motion; selecting a second grouping of generally cyclic motion data points over a second time interval, the second grouping of generally cyclic motion data points including cyclic motion data points preceding the beginning data point of first time interval, and cyclic motion data points succeeding the beginning data point of the first time interval; selecting a third grouping of generally cyclic motion data points over a third time interval, the third grouping of generally cyclic motion data points including cyclic motion data points preceding the end data point of first time interval, and cyclic motion data points succeeding the end data point of the first time interval; determining a minimum cyclic discontinuity error for the first grouping of generally cyclic motion data points with the second and third groupings of generally cyclic motion data points by determining a minimum difference between at least two of the groupings of data points; and distributing the determined minimum cyclic discontinuity error over the first grouping of cyclic motion data points for the first time interval so that transitions between the plural cyclic motion intervals are smoothed.
Claim 17
Independent Claim
273 words
A method of smoothly transitioning between plural cyclic motion intervals by reducing cyclic discontinuity error in an animation motion for a graphical object, the animation motion including one or more cyclic basis motions, where each of said cyclic basis motions includes a set of cyclic motion data points for a time interval T, the method comprising: allowing a user to select a first grouping of generally cyclic motion data points with a beginning and ending data point for a first time interval from a basis motion included in the animation motion; selecting a second grouping of generally cyclic motion data points over a second time interval, the second grouping of generally cyclic motion data points including cyclic motion data points preceding the beginning data point of first time interval, and cyclic motion data points succeeding the beginning data point of the first time interval; selecting a third grouping of generally cyclic motion data points over a third time interval, the third grouping of generally cyclic motion data points including cyclic motion data points preceding the end data point of first time interval, and cyclic motion data points succeeding the end data point of the first time interval; determining a minimum cyclic discontinuity error for the first grouping of generally cyclic motion data points with the second and third groupings of generally cyclic motion data points by determining a minimum difference between at least two of the groupings of data points; and distributing the determined minimum cyclic discontinuity error over the first grouping of cyclic motion data points for the first time interval so that transitions between the plural cyclic motion intervals are smoothed.
Claim 18
Dependent Claim
21 words
A computer readable medium having stored therein computer programming instructions for causing a computer to perform the method of claim 14.
Claim 19
Dependent Claim
29 words
The method of claim 14 where the first grouping of generally cyclic motion data points for the first time interval includes at least one cycle of generally cyclic motion.
Claim 20
Dependent Claim
51 words
The method of claim 14 where N-number of generally cyclic motion data points are included in the first grouping of generally cyclic motion data points and selecting the second grouping of generally cyclic motion data points over the second time interval includes selecting less than N-number of generally cyclic data points.
Claim 21
Dependent Claim
50 words
The method of claim 14 where N-number of generally cyclic motion data points are included in the first grouping of generally cyclic motion data points and selecting the third grouping of cyclic motion data points over the third time interval includes selecting less than N-number of generally cyclic data points.
Claim 22
Dependent Claim
159 words
The method of claim 14 where each generally cyclic motion data point in the selected second and third groupings of generally cyclic motion data points step includes position information of the graphical object at a selected time and determining a minimum cyclic discontinuity error with the selected second and third groupings of generally cyclic motion data points includes: computing a time derivative for each cyclic motion data point in the selected second grouping of generally cyclic motion data points; computing a time derivative for each cyclic motion data point in the selected third grouping of generally cyclic motion data points; comparing the computed time derivatives for the second grouping of generally cyclic motion data points to the computed time derivatives for the third grouping of generally cyclic motion data points to identify a pair of cyclic motion data point time derivatives from the second and third groupings of generally cyclic motion data points with a minimum difference between them.
Claim 23
Dependent Claim
24 words
The method of claim 19 where computing time derivatives includes computing the first and second time derivatives for each generally cyclic motion data point.
Claim 24
Dependent Claim
115 words
The method of claim 14 where distributing the determined minimum cyclic discontinuity error over the first grouping of generally cyclic motion data points for the first time interval includes: adding a proportional fraction of the determined minimum cyclic discontinuity error to each generally cyclic motion data point in the selected first grouping of cyclic motion data points for the first time interval to create an initial set of reduced discontinuity error cyclic motion data points for the first time interval; and approximating a final set of reduced discontinuity error cyclic motion data points for the first time interval from the initial set of reduced discontinuity error cyclic motion data points with a motion approximation process.
Claim 25
Dependent Claim
34 words
The method of claim 21 where the motion approximation process includes fitting a least squares cyclic B-spline approximation between the cyclic motion data points in the first set of generally cyclic motion data points.
Claim 26
Independent Claim
162 words
A method of constructing an optimized computer object model for a graphical object from a general computer object model that includes plural body segments coupled at segment joints that are moveable with plural degrees of freedom, at least selected ones of the segment joints being moveable in fewer than all the degrees of freedom, the method comprising: (a) identifying a segment joint moveable in fewer than all the degrees of freedom; (b) removing joint data corresponding to the degrees of freedom in which the segment joint is not moveable; (c) repeating steps (a)-(b) until joint data corresponding to the degrees of freedom in which each segment joint is not moveable has been removed; wherein the optimized computer object model includes the segment joints for a human body model with 44 degrees of freedom, in which at least one such segment joint is moveable in 3 angular degrees of freedom, and another such joint is not moveable in 3 angular degrees of freedom.
Claim 27
Independent Claim
162 words
A method of constructing an optimized computer object model for a graphical object from a general computer object model that includes plural body segments coupled at segment joints that are moveable with plural degrees of freedom, at least selected ones of the segment joints being moveable in fewer than all the degrees of freedom, the method comprising: (a) identifying a segment joint moveable in fewer than all the degrees of freedom; (b) removing joint data corresponding to the degrees of freedom in which the segment joint is not moveable; (c) repeating steps (a)-(b) until joint data corresponding to the degrees of freedom in which each segment joint is not moveable has been removed; wherein the optimized computer object model includes the segment joints for a human body model with 44 degrees of freedom, in which at least one such segment joint is moveable in 3 angular degrees of freedom, and another such joint is not moveable in 3 angular degrees of freedom.
Claim 28
Dependent Claim
16 words
A method according to claim 23, wherein the optimized human body model includes a root position.
Claim 29
Dependent Claim
23 words
The method of claim 24 where the root position is defined by 3 angular degrees of freedom and 3 positional degrees of freedom.
Claim 30
Independent Claim
158 words
A method of constructing from a set of optimized basis motions for a graphical object, animation motions and smooth transitions between said animation motions, where at least one of said optimized basis motions is a generally cyclic basis motion, the method comprising: selecting a first optimized basis motion from the set of optimized basis motions; selecting a second optimized basis motion from the set of optimized basis motions where the second optimized basis motion is a generally cyclic basis motion; generating a third optimized basis motion from the second basis motion by reducing cyclic discontinuity errors in the second optimized basis motion, where reduction of discontinuity errors includes applying motion algebra to determine a minimum difference between the first and second optimized basis motions; generating a set of motion transitions between the first and third optimized basis motions; and assembling a composite motion from the first and third optimized composite motions and the generated set of motion transitions.
Claim 31
Independent Claim
158 words
A method of constructing from a set of optimized basis motions for a graphical object, animation motions and smooth transitions between said animation motions, where at least one of said optimized basis motions is a generally cyclic basis motion, the method comprising: selecting a first optimized basis motion from the set of optimized basis motions; selecting a second optimized basis motion from the set of optimized basis motions where the second optimized basis motion is a generally cyclic basis motion; generating a third optimized basis motion from the second basis motion by reducing cyclic discontinuity errors in the second optimized basis motion, where reduction of discontinuity errors includes applying motion algebra to determine a minimum difference between the first and second optimized basis motions; generating a set of motion transitions between the first and third optimized basis motions; and assembling a composite motion from the first and third optimized composite motions and the generated set of motion transitions.
Claim 32
Dependent Claim
218 words
The method of claim 26 where the optimized cyclic basis motion includes a set of generally cyclic motion data points for a time interval T, further comprising: allowing a user to select a first grouping of generally cyclic motion data points with a beginning and ending data point for a first time interval from a basis motion included in the animation motion; selecting a second grouping of generally cyclic motion data points over a second time interval, the second grouping of generally cyclic motion data points including cyclic motion data points preceding the beginning data point of first time interval, and cyclic motion data points succeeding the beginning data point of the first time interval; selecting a third grouping of generally cyclic motion data points over a third time interval, the third grouping of generally cyclic motion data points including cyclic motion data points preceding the end data point of first time interval, and cyclic motion data points succeeding the end data point of the first time interval; determining a minimum cyclic discontinuity error for the first grouping of generally cyclic motion data points with the second and third groupings of generally cyclic motion data points; and distributing the determined minimum cyclic discontinuity error over the first grouping of cyclic motion data points for the first time interval.
Claim 33
Dependent Claim
132 words
The method of claim 26 where the graphical object includes a root position, a trunk, a plurality of appendages connected to said trunk, each appendage having a plurality of segments coupled at joints, at least one of said appendages a non-supporting appendage which is not supporting said trunk, and at least one of said appendages a supporting appendage which is supporting said trunk, the method further comprising: generating a first set of optimized motion data for the root position over a time interval; generating a second set of optimized motion data for the non-supporting appendage over the time interval; generating a third set of optimized motion data for the supporting appendage over the time interval; and assembling said first, second and third sets of optimized data to create an optimized motion transition.
Claim 34
Independent Claim
100 words
A method of constructing from a set of basis motions for a graphical object, animation motions and transitions between said animation motions, the method comprising: selecting two individual basis motions from a set of basis motions, where one such individual basis motion is a generally cyclic basis motion with reduced cyclic discontinuity error; generating a set of motion transitions between the selected basis motions by applying motion algebra to such basis motions so as to determine a smooth transition between such basis motions; and assembling a composite motion from the generated set of motion transitions and the selected basis motions.
Claim 35
Independent Claim
100 words
A method of constructing from a set of basis motions for a graphical object, animation motions and transitions between said animation motions, the method comprising: selecting two individual basis motions from a set of basis motions, where one such individual basis motion is a generally cyclic basis motion with reduced cyclic discontinuity error; generating a set of motion transitions between the selected basis motions by applying motion algebra to such basis motions so as to determine a smooth transition between such basis motions; and assembling a composite motion from the generated set of motion transitions and the selected basis motions.
Claim 36
Dependent Claim
35 words
The method of claim 29 where the generally cyclic basis motion with reduced discontinuity error is created by distributing a determined minimum cyclic discontinuity error over all data points comprising the generally cyclic basis motion.