Patent US6088042A successfully refreshed from Google Patents.
← Back to Patent Explorer
US6088042A Expired / Lapsed US ⏱️ 0.0 years remaining

Interactive motion data animation system

Assignee: SOVOZ Inc
•
Filing: 1997-03-31
•
Granted: 2000-07-11
•
Expires: 2017-03-31
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Recorded motion data is combined with interactive control techniques to manipulate the animation of articulated figures. The methods enable computer animated characters to produce fully interactive goal-directed behaviors, such as bipedal walking, through simultaneous satisfaction of position, alignment, posture, balance, obstacle avoidance, and joint limitation constraints while retaining qualitative characteristics of the original non-interactive motion data. Goal-based motion primitives, called synergies, are used to coordinate sets of joint movements that attempt to satisfy each of the above constraints. Non-interactive motion capture and keyframe data, representing examples of desired character movements, are accommodated in the present animation system in three ways: 1) direct approach--non-interactive motion data used directly to specify desired body posture synergy goals as a function of time, 2) hybrid approach--non-interactive motion data and program control commands blended to specify elements of desired position, alignment and/or balance synergy goals as a function of time, and 3) template approach--non-interactive motion data used to auto-tune adjustable parameters, enabling program control commands to generate fully interactive movements that qualitatively resemble the non-interactive motion data. The disclosed methods allow libraries of pre-configured goal-directed behaviors, such as reaching, sitting, walking, jumping, etc., to be constructed and used to animate a wide variety of characters.

Inventors

  • 👤 David A Handelman
  • 👤 Stephen H Lane
  • 👤 Vijaykumar Gullapalli

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 11:01
CPC Classifications
G; G06; G06T; G06T13/00; G06T13/20; G06T13/40

Claims Analysis

Total Claims: 48
Claim 1
Independent Claim 243 words
A method for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respective limbs of said character figure, said method further responsive to an input goal to animate said character subject to at least one constraint, said method comprising: storing a representation of each of said first plurality of joints in said memory; storing a representation of each of said plurality of links in said memory; storing a representation of the respective positions of said first plurality of joints and said plurality of links in said memory; computing, responsive to said stored motion data, a first set of motions derived from said stored motion data for each of said first plurality of joints respectively; computing, responsive to said input goal, a second set of motions subject to said constraint for each of said first plurality of joints respectively; combining said first set of motions with said second set of motions to form a combined set motions; modifying said stored representation of the positions of said first plurality of joints and said plurality of links in said memory using said combined set of motions; and rendering said stored representation of said links as the limbs of said character figure in said video image memory.
Claim 2
Independent Claim 243 words
A method for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respective limbs of said character figure, said method further responsive to an input goal to animate said character subject to at least one constraint, said method comprising: storing a representation of each of said first plurality of joints in said memory; storing a representation of each of said plurality of links in said memory; storing a representation of the respective positions of said first plurality of joints and said plurality of links in said memory; computing, responsive to said stored motion data, a first set of motions derived from said stored motion data for each of said first plurality of joints respectively; computing, responsive to said input goal, a second set of motions subject to said constraint for each of said first plurality of joints respectively; combining said first set of motions with said second set of motions to form a combined set motions; modifying said stored representation of the positions of said first plurality of joints and said plurality of links in said memory using said combined set of motions; and rendering said stored representation of said links as the limbs of said character figure in said video image memory.
Claim 3
Dependent Claim 130 words
A method in accordance with claim 1, further including: computing, responsive to said stored motion data, a third set of motions derived from said stored motion data for each of said first plurality of joints respectively, wherein said stored motion data includes at least first and second motion sequences, said third set of motions being computed from said first and second motion sequences to smoothly blend said first motion sequence into said second motion sequence; combining said third set of motions with said combined first set of motions and said second set of motions to form a second combined set motions; and modifying said stored representation of the positions of said first plurality of joints and said plurality of links in said memory using said second combined set of motions.
Claim 4
Dependent Claim 29 words
A method in accordance with claim 2, wherein said third set of motions is computed by fitting a curve between said first motion sequence and said second motion sequence.
Claim 5
Dependent Claim 33 words
A method in accordance with claim 2, wherein said third set of motions is computed by fitting a curve between said first motion sequence to a predetermined fixed position of said character figure.
Claim 6
Dependent Claim 12 words
A method in accordance with claim 1, wherein said constraint is position.
Claim 7
Dependent Claim 12 words
A method in accordance with claim 1, wherein said constraint is alignment.
Claim 8
Dependent Claim 13 words
A method in accordance with claim 1, wherein said constraint is obstacle avoidance.
Claim 9
Dependent Claim 12 words
A method in accordance with claim 1, wherein said constraint is balance.
Claim 10
Dependent Claim 12 words
A method in accordance with claim 1, wherein said constraint is posture.
Claim 11
Dependent Claim 212 words
In an interactive method for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respective limbs of said character figure, said method further responsive to an input goal to animate said character subject to at least one constraint, wherein said interactive method for animating said character figure has at least one adjustable motion parameter, a method for adjusting said adjustable motion parameter in accordance with said stored data, said method comprising: calculating a value of said adjustable motion parameter from said stored motion data; using said calculated value of said adjustable motion parameter in said interactive method for animating a character figure to generate interactive motion data; comparing said stored motion data to said interactive motion data; quantifying the error between said stored motion data and said interactive motion data; comparing said error to a predetermined error value; and modifying said calculated value of said adjustable motion parameter if said error is greater than said predetermined error value; whereby said adjustable motion parameter is adjusted in accordance with said stored motion data.
Claim 12
Dependent Claim 212 words
In an interactive method for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respective limbs of said character figure, said method further responsive to an input goal to animate said character subject to at least one constraint, wherein said interactive method for animating said character figure has at least one adjustable motion parameter, a method for adjusting said adjustable motion parameter in accordance with said stored data, said method comprising: calculating a value of said adjustable motion parameter from said stored motion data; using said calculated value of said adjustable motion parameter in said interactive method for animating a character figure to generate interactive motion data; comparing said stored motion data to said interactive motion data; quantifying the error between said stored motion data and said interactive motion data; comparing said error to a predetermined error value; and modifying said calculated value of said adjustable motion parameter if said error is greater than said predetermined error value; whereby said adjustable motion parameter is adjusted in accordance with said stored motion data.
Claim 13
Dependent Claim 58 words
A method in accordance with claim 10, wherein said interactive method for animating a character figure includes the step of generating said interactive motion data from at least one synergy, wherein a synergy is a process which produces a set of joint angle movements subject to said constraint, which joint angle movements attempt to satisfy an input goal.
Claim 14
Dependent Claim 15 words
A method in accordance with claim 11, wherein said adjustable parameter is a synergy gain.
Claim 15
Dependent Claim 15 words
A method in accordance with claim 11, wherein said adjustable parameter is a synergy strength.
Claim 16
Dependent Claim 245 words
In an interactive method for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respect limbs of said character figure, said method further responsive to an input goal to animate said character subject to at least one constraint, wherein said interactive method for animating said character figure has at least one adjustable motion parameter, a method for adjusting said adjustable motion parameter in accordance with said stored data, said method comprising: calculating stored motion joint angle commands from said stored motion data; determining a stored input goal from said stored motion data; generating interactive motion data using said stored input goal in said interactive method, wherein said interactive method uses at least one synergy, wherein a synergy is a process which produces a set of interactive joint angle movements subject to said constraint, which interactive joint angle movements attempt to satisfy said stored input goal; calculating the error between said stored motion joint angle commands and said interactive joint angle commands; comparing said error to a predetermined error value; and modifying at least one parameter of said interactive method if said error is greater than said predetermined error value; whereby said parameter of said interactive method is adjusted in accordance with said stored motion data.
Claim 17
Dependent Claim 245 words
In an interactive method for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respect limbs of said character figure, said method further responsive to an input goal to animate said character subject to at least one constraint, wherein said interactive method for animating said character figure has at least one adjustable motion parameter, a method for adjusting said adjustable motion parameter in accordance with said stored data, said method comprising: calculating stored motion joint angle commands from said stored motion data; determining a stored input goal from said stored motion data; generating interactive motion data using said stored input goal in said interactive method, wherein said interactive method uses at least one synergy, wherein a synergy is a process which produces a set of interactive joint angle movements subject to said constraint, which interactive joint angle movements attempt to satisfy said stored input goal; calculating the error between said stored motion joint angle commands and said interactive joint angle commands; comparing said error to a predetermined error value; and modifying at least one parameter of said interactive method if said error is greater than said predetermined error value; whereby said parameter of said interactive method is adjusted in accordance with said stored motion data.
Claim 18
Dependent Claim 15 words
A method in accordance with claim 14, wherein said adjustable parameter is a synergy gain.
Claim 19
Dependent Claim 15 words
A method in accordance with claim 14, wherein said adjustable parameter is a synergy strength.
Claim 20
Dependent Claim 12 words
A method in accordance with claim 14, wherein said constraint is position.
Claim 21
Dependent Claim 12 words
A method in accordance with claim 14, wherein said constraint is alignment.
Claim 22
Dependent Claim 13 words
A method in accordance with claim 14, wherein said constraint is obstacle avoidance.
Claim 23
Dependent Claim 12 words
A method in accordance with claim 14, wherein said constraint is balance.
Claim 24
Dependent Claim 12 words
A method in accordance with claim 14, wherein said constraint is posture.
Claim 25
Independent Claim 259 words
An apparatus for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respective limbs of said character figure, said apparatus further responsive to an input goal to animate said character subject to at least one constraint, said apparatus comprising: means for storing a representation of each of said first plurality of joints in said memory; means for storing a representation of each of said plurality of links in said memory; means for storing a representation of the respective positions of said first plurality of joints and said plurality of links in said memory; means for computing, responsive to said stored motion data, a first set of motions derived from said stored motion data for each of said first plurality of joints respectively; means for computing, responsive to said input goal, a second set of motions subject to said constraint for each of said first plurality of joints respectively; means for combining said first set of motions with said second set of motions to form a combined set motions; means for modifying said stored representation of the positions of said first plurality of joints and said plurality of links in said memory using said combined set of motions; and means for rendering said stored representation of said links as the limbs of said character figure in said video image memory.
Claim 26
Independent Claim 259 words
An apparatus for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respective limbs of said character figure, said apparatus further responsive to an input goal to animate said character subject to at least one constraint, said apparatus comprising: means for storing a representation of each of said first plurality of joints in said memory; means for storing a representation of each of said plurality of links in said memory; means for storing a representation of the respective positions of said first plurality of joints and said plurality of links in said memory; means for computing, responsive to said stored motion data, a first set of motions derived from said stored motion data for each of said first plurality of joints respectively; means for computing, responsive to said input goal, a second set of motions subject to said constraint for each of said first plurality of joints respectively; means for combining said first set of motions with said second set of motions to form a combined set motions; means for modifying said stored representation of the positions of said first plurality of joints and said plurality of links in said memory using said combined set of motions; and means for rendering said stored representation of said links as the limbs of said character figure in said video image memory.
Claim 27
Dependent Claim 136 words
An apparatus in accordance with claim 22, further including: means for computing, responsive to said stored motion data, a third set of motions derived from said stored motion data for each of said first plurality of joints respectively, wherein said stored motion data includes at least first and second motion sequences, said third set of motions being computed from said first and second motion sequences to smoothly blend said first motion sequence into said second motion sequence; means for combining said third set of motions with said combined first set of motions and said second set of motions to form a second combined set motions; and means for modifying said stored representation of the positions of said first plurality of joints and said plurality of links in said memory using said second combined set of motions.
Claim 28
Dependent Claim 29 words
An apparatus in accordance with claim 23, wherein said third set of motions is computed by fitting a curve between said first motion sequence and said second motion sequence.
Claim 29
Dependent Claim 33 words
An apparatus in accordance with claim 23, wherein said third set of motions is computed by fitting a curve between said first motion sequence to a predetermined fixed position of said character figure.
Claim 30
Dependent Claim 12 words
An apparatus in accordance with claim 22, wherein said constraint is position.
Claim 31
Dependent Claim 12 words
An apparatus in accordance with claim 22, wherein said constraint is alignment.
Claim 32
Dependent Claim 13 words
An apparatus in accordance with claim 22, wherein said constraint is obstacle avoidance.
Claim 33
Dependent Claim 12 words
An apparatus in accordance with claim 22, wherein said constraint is balance.
Claim 34
Dependent Claim 12 words
An apparatus in accordance with claim 22, wherein said constraint is posture.
Claim 35
Dependent Claim 224 words
In an interactive apparatus for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respective limbs of said character figure, said apparatus further responsive to an input goal to animate said character subject to at least one constraint, wherein said interactive apparatus for animating said character figure has at least one adjustable motion parameter, an apparatus for adjusting said adjustable motion parameter in accordance with said stored data, said apparatus comprising: means for calculating a value of said adjustable motion parameter from said stored motion data; means for using said calculated value of said adjustable motion parameter in said interactive apparatus for animating a character figure to generate interactive motion data; means for comparing said stored motion data to said interactive motion data; means for quantifying the error between said stored motion data and said interactive motion data; means for comparing said error to a predetermined error value; and means for modifying said calculated value of said adjustable motion parameter if said error is greater than said predetermined error value; whereby said adjustable motion parameter is adjusted in accordance with said stored motion data.
Claim 36
Dependent Claim 224 words
In an interactive apparatus for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respective limbs of said character figure, said apparatus further responsive to an input goal to animate said character subject to at least one constraint, wherein said interactive apparatus for animating said character figure has at least one adjustable motion parameter, an apparatus for adjusting said adjustable motion parameter in accordance with said stored data, said apparatus comprising: means for calculating a value of said adjustable motion parameter from said stored motion data; means for using said calculated value of said adjustable motion parameter in said interactive apparatus for animating a character figure to generate interactive motion data; means for comparing said stored motion data to said interactive motion data; means for quantifying the error between said stored motion data and said interactive motion data; means for comparing said error to a predetermined error value; and means for modifying said calculated value of said adjustable motion parameter if said error is greater than said predetermined error value; whereby said adjustable motion parameter is adjusted in accordance with said stored motion data.
Claim 37
Dependent Claim 58 words
An apparatus in accordance with claim 31, wherein said interactive apparatus for animating a character figure includes the means for generating said interactive motion data from at least one synergy, wherein a synergy is a process which produces a set of joint angle movements subject to said constraint, which joint angle movements attempt to satisfy an input goal.
Claim 38
Dependent Claim 15 words
An apparatus in accordance with claim 32, wherein said adjustable parameter is a synergy gain.
Claim 39
Dependent Claim 15 words
An apparatus in accordance with claim 32, wherein said adjustable parameter is a synergy strength.
Claim 40
Dependent Claim 257 words
In an interactive apparatus for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respective limbs of said character figure, said apparatus further responsive to an input goal to animate said character subject to at least one constraint, wherein said interactive apparatus for animating said character figure has at least one adjustable motion parameter, an apparatus for adjusting said adjustable motion parameter in accordance with said stored data, said apparatus comprising: means for calculating stored motion joint angle commands from said stored motion data; means for determining a stored input goal from said stored motion data; means for generating interactive motion data using said stored input goal in said interactive apparatus, wherein said interactive apparatus uses at least one synergy, wherein a synergy is a process which produces a set of interactive joint angle movements subject to said constraint, which interactive joint angle movements attempt to satisfy said stored input goal; means for calculating the error between said stored motion joint angle commands and said interactive joint angle commands; means for comparing said error to a predetermined error value; and means for modifying at least one parameter of said interactive apparatus if said error is greater than said predetermined error value; whereby said parameter of said interactive apparatus is adjusted in accordance with said stored motion data.
Claim 41
Dependent Claim 257 words
In an interactive apparatus for animating a character figure in a video image memory responsive to stored motion data, said character figure being represented in said memory as having a first plurality of joints and a plurality of links coupled between respective pairs of said first plurality of joints, said plurality of links representing respective limbs of said character figure, said apparatus further responsive to an input goal to animate said character subject to at least one constraint, wherein said interactive apparatus for animating said character figure has at least one adjustable motion parameter, an apparatus for adjusting said adjustable motion parameter in accordance with said stored data, said apparatus comprising: means for calculating stored motion joint angle commands from said stored motion data; means for determining a stored input goal from said stored motion data; means for generating interactive motion data using said stored input goal in said interactive apparatus, wherein said interactive apparatus uses at least one synergy, wherein a synergy is a process which produces a set of interactive joint angle movements subject to said constraint, which interactive joint angle movements attempt to satisfy said stored input goal; means for calculating the error between said stored motion joint angle commands and said interactive joint angle commands; means for comparing said error to a predetermined error value; and means for modifying at least one parameter of said interactive apparatus if said error is greater than said predetermined error value; whereby said parameter of said interactive apparatus is adjusted in accordance with said stored motion data.
Claim 42
Dependent Claim 15 words
An apparatus in accordance with claim 35, wherein said adjustable parameter is a synergy gain.
Claim 43
Dependent Claim 15 words
An apparatus in accordance with claim 35, wherein said adjustable parameter is a synergy strength.
Claim 44
Dependent Claim 12 words
An apparatus in accordance with claim 35, wherein said constraint is position.
Claim 45
Dependent Claim 12 words
An apparatus in accordance with claim 35, wherein said constraint is alignment.
Claim 46
Dependent Claim 13 words
An apparatus in accordance with claim 35, wherein said constraint is obstacle avoidance.
Claim 47
Dependent Claim 12 words
An apparatus in accordance with claim 35, wherein said constraint is balance.
Claim 48
Dependent Claim 12 words
An apparatus in accordance with claim 35, wherein said constraint is posture.

References Cited (Backward Citations)

US4600919A Cited
US4600919B1 Cited
US5214758A Cited
US5623482A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-07-11 2004-01-10 2004-07-11 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-07-11 2008-01-10 2008-07-11 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-07-11 2012-01-10 2012-07-11 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag