System and method for simulating human movement
First Claim
1. A computerized method for simulating movement of a physical object, the method performed by logic encoded in one or more non-transitory tangible media when executed by a computer, the method comprising:
- storing a plurality of sets of data in a tangible memory, each set of data indicative of a measured movement of a first physical object having a first joint, each set of data describing an empirical overall change from an empirical start point to an empirical end point, each set of data recording an empirical curve of an empirical angular profile, the empirical angular profile comprising a first axis representing an angle and a second axis representing time, the empirical curve representing movement of the first joint through the angle with respect to time;
storing a desired start point and a desired end point of a desired overall change for a desired movement of a second joint of a second joint of a second physical object in the memory, the first physical object different from the second physical object, the second joint comparable to the first joint, the empirical overall change different from the desired overall change;
comparing the desired movement to the sets of data;
selecting, based on the comparison, a set of data that is representative of the desired movement of the second joint to yield a selected set of data;
superimposing the empirical curve on the desired movement of the second joint from the desired start point to the desired end point in order to;
determine a first change in angular position of the first joint of the first physical object associated with the selected set of data, the first change in angular position defining angular rotation of the first joint about an axis through the first joint;
determine a percentage representing a fraction of the first change over the empirical overall change of the selected set of data;
determine a second change in angular position of a second joint based on the percentage and the desired overall change between the desired start point to the desired end point, the second change determined from the percentage of the desired overall change; and
displaying a simulation of the desired movement of the second physical object on a tangible output device in accordance with the established second change.
7 Assignments
0 Petitions
Accused Products
Abstract
According to one embodiment of the invention, a computerized method for simulating human movement includes storing a plurality of sets of data, in which each set of data is indicative of a measured movement of a first human, receiving a start point and an end point for a desired movement of a second human, and comparing the desired movement to the stored sets of data. The method further includes selecting, based on the comparison, a stored set of data that is representative of the desired movement and simulating the desired movement based on the start point, the end point, and the relative change in position of a first joint associated with the selected set of data from an empirical start point to an empirical end point.
28 Citations
22 Claims
-
1. A computerized method for simulating movement of a physical object, the method performed by logic encoded in one or more non-transitory tangible media when executed by a computer, the method comprising:
-
storing a plurality of sets of data in a tangible memory, each set of data indicative of a measured movement of a first physical object having a first joint, each set of data describing an empirical overall change from an empirical start point to an empirical end point, each set of data recording an empirical curve of an empirical angular profile, the empirical angular profile comprising a first axis representing an angle and a second axis representing time, the empirical curve representing movement of the first joint through the angle with respect to time; storing a desired start point and a desired end point of a desired overall change for a desired movement of a second joint of a second joint of a second physical object in the memory, the first physical object different from the second physical object, the second joint comparable to the first joint, the empirical overall change different from the desired overall change; comparing the desired movement to the sets of data; selecting, based on the comparison, a set of data that is representative of the desired movement of the second joint to yield a selected set of data; superimposing the empirical curve on the desired movement of the second joint from the desired start point to the desired end point in order to; determine a first change in angular position of the first joint of the first physical object associated with the selected set of data, the first change in angular position defining angular rotation of the first joint about an axis through the first joint; determine a percentage representing a fraction of the first change over the empirical overall change of the selected set of data; determine a second change in angular position of a second joint based on the percentage and the desired overall change between the desired start point to the desired end point, the second change determined from the percentage of the desired overall change; and displaying a simulation of the desired movement of the second physical object on a tangible output device in accordance with the established second change. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 22)
-
-
9. One or more non-transitory computer readable tangible media encoded with logic configured to simulate movement of a physical object, the logic, when executed by a computer, operable to perform the following steps:
-
store a plurality of sets of data in a tangible memory, each set of data indicative of a measured movement of a first physical object having a first joint, each set of data describing an empirical overall change from an empirical start point to an empirical end point, each set of data recording an empirical curve of an empirical angular profile, the empirical angular profile comprising a first axis representing an angle and a second axis representing time, the empirical curve representing movement of the first joint through the angle with respect to time; store a desired start point and a desired end point of a desired overall change for a desired movement of a second joint of a second physical object in the memory, the first physical object different from the second physical object, the second joint comparable to the first joint, the empirical overall change different from the desired overall change; compare the desired movement to the sets of data; select, based on the comparison, a set of data that is representative of the desired movement of the second joint to yield a selected set of data, the selected set of data having a plurality of empirical points comprising an empirical start point and an empirical end point; superimpose the empirical curve on the desired movement of the second joint from the desired start point to the desired end point in order to; identify the first joint of the first physical object associated with the selected set of data; identify in the selected set of data, a plurality of first changes in angular positions of the first joint at a plurality of respective times during a time period of movement of the first joint from an empirical start point to an empirical end point, the plurality of first changes in the angular positions of the first joint defining angular rotation of the first joint about an axis through the first joint; determine a plurality of percentages, a percentage representing a fraction of a first change over the empirical overall change of the selected set of data; determine, for each respective time a second change in angular position of the second joint based on the plurality of percentages and the desired overall change between the desired start point and the desired end point, the second change determined from the percentage of the desired overall change; apply, for each respective time, the second change in angular position to a point between the desired start point and the desired end point of the desired movement; and display a simulation of the desired overall change of the second physical object on a tangible output device in accordance with the second change. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A computerized method for simulating movement of a physical object, the method performed by logic encoded in one or more non-transitory tangible media when executed by a computer, the method comprising:
-
storing a plurality of sets of data in a tangible memory, each set of data indicative of a measured movement of a first physical object having a first joint, each set of data describing an empirical overall change from an empirical start point to an empirical end point, each set of data recording an empirical curve of an empirical angular profile, the empirical angular profile comprising a first axis representing an angle and a second axis representing time, the empirical curve representing movement of the first joint through the angle with respect to time; storing a desired start point and a desired end point of a desired overall change for a desired movement of a second joint of a second physical object in the memory, the first physical object different from the second physical object, the second joint comparable to the first joint, the empirical overall change different from the desired overall change; comparing the desired movement to the sets of data; selecting, based on the comparison, a set of data that is representative of the desired movement of the second joint to yield a selected set of data, the selected set of data having a plurality of empirical points comprising an empirical start point and an empirical end point; identifying the first joint of the first physical object associated with the selected set of data; superimposing the empirical curve on the desired movement of the second joint from the desired start point to the desired end point in order to; identify in the selected set of data, a plurality of first changes in angular positions of the first joint at a plurality of respective times during a time period of movement of the first joint from the empirical start point to the empirical end point, the plurality of first changes in angular positions of the first joint defining angular rotation of the first joint about an axis through the first joint; determine a plurality of percentages, a percentage representing a fraction of a first change over the empirical overall change of the selected set of data; determine, for each respective time a second change in angular position of the second joint based on the plurality of percentages and the desired overall change between the desired start point and the desired end point, the second change determined from the percentage of the desired overall change; and displaying a simulation on a tangible output device by displaying, for each respective time, a point between the desired start point and the desired end point of the desired movement of the second physical object in accordance with the determined second change. - View Dependent Claims (16, 17, 18, 19, 20)
-
-
21. A computerized method for simulating movement of a physical object, the method performed by logic encoded in one or more non-transitory tangible media when executed by a computer, the method comprising:
-
storing a plurality of sets of data in a tangible memory, each set of data indicative of a measured movement of a first physical object having a first joint, each set of data describing an empirical overall change from an empirical start point to an empirical end point, each set of data recording an empirical curve of an empirical angular profile, the empirical angular profile comprising a first axis representing an angle and a second axis representing time, the empirical curve representing movement of the first joint through the angle with respect to time; storing a desired start point and a desired end point of a desired overall change for a desired movement of a second joint of a second physical object in the memory, the first physical object different from the second physical object, the second joint comparable to the first joint, the empirical overall change different from the desired overall change; comparing the desired movement to the sets of data; selecting, based on the comparison, a set of data that is representative of the desired movement of the second joint to yield a selected set of data; superimposing the empirical curve on the desired movement of the second joint from the desired start point to the desired end point in order to; determine a first change in position of the first joint of the first physical object associated with the selected set of data; determine a percentage representing a fraction of the first change over the empirical overall change of the selected set of data; determine a second change in position of the second joint based on the percentage and the desired overall change between the desired start point and the desired end point, the second change determined from the percentage of the desired overall change; and displaying a simulation of the desired movement of the second physical object on a tangible output device in accordance with the established second change.
-
Specification