Manufactures and graphical interfaces rendering gait acceleration data in three dimensions
Embodiments represent acceleration along three orthogonal axes at two or more times as a three dimensional plot. Each point in the plot is positioned according to three coordinates, each of which is proportional to the amount of acceleration along one of the orthogonal axes at a moment in time. Some embodiments render the three dimensional plot as a three dimensional article of manufacture in which each point in the plot is represented by a volume of material. Method embodiments include the use of additive manufacturing techniques to fabricate such an article of manufacture. Some embodiments represent the three dimensional plot in two dimensions in a graphical interface. System embodiments may comprise an accelerometer, processor, output device, and a non-transitory computer readable medium storing instructions causing the processor to map points with coordinates proportional to acceleration along the respective axes to a virtual three-dimensional plot and then control the output device to render the plot in two or three dimensions.
This application claims benefit of U.S. provisional application 62/188,802 filed on Jul. 6, 2015, the entire contents of which are herein incorporated by reference.
FIELD OF THE INVENTIONThe current disclosure relates to articles of manufacture, graphical interfaces, methods, and systems for rendering gait acceleration step data in three dimensions.
BACKGROUNDIndividuals move on foot in a variety of ways including walking, running, and ascending or descending stairs or sloped surfaces. Gait may be assessed in terms of a gait cycle, also called a stride. A stride begins when a reference foot (either the left or right) makes contact with the ground and ends when it next contacts the ground. A stride is composed of two steps. A step is the action occurring in the interval from the moment that one foot contacts the ground to the moment when the other foot contacts the ground. A step may be attributed to either the left foot or the right foot, though actions of both feet are necessary to take a step.
Gait analysis has been used not only to document gait abnormalities but also to determine the underlying causes of the abnormalities and, in some cases, to select treatment. Instruments used in conventional gait analysis laboratories detect a variety of measures associated with walking. Some measure the position of the body and limbs while others measure the forces resulting from walking or muscle activation involved in walking. However, these conventional gait analysis instruments may be expensive and cumbersome and may only measure a subject's gait in the laboratory and not during activities of daily living.
Over the past decade, accelerometers have become smaller, less expensive, more accurate, and more energy efficient. An accelerometer may refer to a device that measures either linear or angular acceleration. However, accelerometers measuring angular acceleration may also be referred to as gyroscopes, gyrometers, or simply gyros. An accelerometer may also refer to a device that measures acceleration in more than one direction. Three-axis (triaxial) accelerometers in which the axes are at least approximately orthogonal to one another are now a common feature in devices ranging from smartphones to fitness trackers.
Fitness trackers may estimate quantities of physical activity such as step count, calories burned, or distance traveled. However, such quantitative measures provide little information about gait quality. Viewing acceleration data as a signal (in which the x-axis represents time and the y-axis represents the quantity of acceleration) may provide some insight as to gait quality. For signal graphs however, viewers may find it difficult to compare the acceleration data from one step to that of another. Comparing steps in a signal graph requires the viewer to determine boundaries between steps and mentally superimpose the acceleration signal of one step over that of another. Such divisions and superimpositions are mentally taxing. Viewing acceleration signals from multiple axes further compounds the effort required to compare one step to another.
Additive manufacturing (also called “three dimensional printing” or “3D printing”) encompasses a variety of techniques used to manufacture objects in three-dimensions using automated, computer-controlled processes. In some types of additive manufacturing, a three dimensional printer (also referred to as an additive manufacturing device) deposits a series of layers. Each layer has a specified shape composed of small, point-like deposits, each of which is placed on a plane according to two coordinates. The deposits forming each layer adhere to the deposits of the layer below it. The number of layers and/or height of each layer effectively act as a third coordinate allowing for the placement of the point-like deposits at precise positions in space. Additive manufacturing may be used to fabricate objects from a variety of materials.
SUMMARYEmbodiments may represent acceleration along three orthogonal axes at two or more times as a three dimensional plot. Each point in the plot may be positioned according to three coordinates, each of which is proportional to the amount of acceleration along one of the orthogonal axes at a moment in time. Some embodiments render the three dimensional plot as a three dimensional article of manufacture in which each point in the plot is represented by a volume of material. Method embodiments include the use of additive manufacturing techniques to fabricate such an article of manufacture. Some embodiments represent the three dimensional plot in two dimensions in a graphical interface using techniques of visual perspective to create the impression of a third dimension. System embodiments comprise an accelerometer, processor, output device, and a non-transitory computer readable medium storing instructions causing the processor to map points with coordinates proportional to acceleration along the respective axes to a virtual three-dimensional plot and then direct the output device to render the plot in two or three dimensions.
Embodiments described herein represent acceleration along three orthogonal axes at two or more times as a three dimensional plot. Each point in the plot may be positioned according to three coordinates, each of which is proportional to the amount of acceleration along one of the orthogonal axes at a first moment in time. Each point in the plot may be coupled, either physically or visually, to at least an adjacent point. The adjacent point is positioned according to coordinates proportional to acceleration readings along the three orthogonal axes at a second time. Except for the first and last points in the plot, each point is coupled to two adjacent points, one of which may be positioned according to acceleration at the next previously sampled time and the other positioned according to the next subsequently sampled time.
Because none of the axes of the plot represents time, the plot may be viewed as being time independent. To the extent that similar acceleration patterns occur from one stride to the next, the patterns may align irrespective of step duration. Using this time independent representation, there is no need to choose arbitrary boundaries between the steps. Additionally, there is no need to scale the duration of one step so that its acceleration patterns align with those of another. If the accelerometer generates acceleration readings at a fixed frequency, slower movements shown in a time-independent plot will manifest as points that are more densely clustered and vice versa.
Embodiments may include a solid, three dimensional manufacture comprising a model of the three dimensional plot. The points in the plot may not be true geometric points with zero dimension but are representative of such points and may be composed of some volume of material. In some embodiments, the points are close enough to one another relative to the size of the material representing each point that the pieces of material representing the points touch or overlap one another. In some embodiments, the points are far enough from one another relative to the size of the material representing each point that the pieces of material representing the points do not touch or overlap one another and may be connected by some volume of material in a shape representing a line segment or curve.
The manufactures shown in
Models of three dimensional plots may be composed of a variety of materials and be fabricated using a variety of techniques. Some method embodiments use additive manufacturing devices and techniques to precisely position material representing each point of an acceleration plot in space and couple the material to material representing adjacent points.
Overhangs—portions of the manufacture that do not rest on a lower layer or the platform (510)—present a technical challenge to creating manufactures fabricated using three dimensional printers. Some embodiments of the method support overhangs of the manufacture (300) with a support base made from a soluble material that does not become part of the final manufacture (300). In some embodiments, volumes of the soluble support base are deposited by one of the extruders (e.g. 521) while volumes of the non-soluble material forming the manufacture (300) are deposited by the other extruder (e.g. 522). At a specified height, the extruder depositing non-soluble material (e.g. 521) deposits the first layer of the overhang on top of the soluble base that has been built up, layer on layer, by the other extruder (e.g. 522). After the three dimensional printer (500) has completed the topmost layer of the manufacture (300), the resulting structure may be exposed to a solvent that dissolves the soluble support structure leaving an overhang that is now coupled to and supported by the non-soluble structure.
Some embodiments represent three-dimensional step plots on a two dimensional surface such as a display monitor, printed page, or surface such as a projection screen or wall upon which the image is projected. Such two-dimensional representations may use techniques of perspective to create the impression of a three dimensions on a two-dimensional surface. Some embodiments show a series of perspective drawings animating the 3D plot and creating the impression that the 3D plot is changing orientation.
Differences between the acceleration patterns of walking and running become readily apparent when plotted as in
Some embodiments analyze accelerometer data corresponding to steps taken by a user wearing the accelerometer and, based at least in part on the analysis, identify a characteristic of the user. Characteristics of the user may include, for example, the type of step activity (walking, running, climbing stairs, etc.), disease state, degree of health, diagnoses, location, or the identity of the user.
In order to assess the user's steps, a number of technical challenges emerge. One such challenge is to determine how the accelerometer is oriented relative to its surroundings and relative to the user to which it is attached. If the accelerometer is attached to the user in a particular orientation, the orientation of the accelerometer to its surroundings may be inferred. For example, if the accelerometer is clipped to the shirt-front of a user and the user is standing and walking in an upright position, one may infer that the z-axis is approximately vertical and approximately parallel to the user's anteroposterior axis. Correspondingly, the other two axes should be approximately parallel to the user's dorsoventral and lateral axes. However, such inferences are prone to error. Clothing can shift, the attachment to the clothing can slip, and the user may bend forward or backward or otherwise move in a position that is not perfectly upright. Such sources of error invite better methods of orienting accelerometers with multiple axes.
Gravity acts as a constant acceleration in one direction. The force of gravity may serve to orient acceleration readings relative to physical surroundings. Some embodiments having triaxial accelerometers use algorithms that process acceleration readings to determine the direction of gravity relative to three accelerometer axes. Of those embodiments, some may further calculate the amount of acceleration in the direction of gravity.
In some embodiments, a computer reorients acceleration vectors so that one component of each reoriented acceleration vector is in the direction of gravitational pull. The computer's processor receives readings from a triaxial accelerometer. Each of the readings corresponds to an acceleration vector having three components. Each of the three components represents a quantity of acceleration along one of three orthogonal axes (x, y, and z). The computer determines a non-zero acceleration vector (u) using readings generated when the accelerometer is at rest and determines {circumflex over (x)} which is the unit vector in the positive x axis direction. The computer then virtually rotates the components of one or more readings about the z axis into the yz plane by calculating the cross product of u and g (Earth's gravity reference) to yield n, calculating the sine of angle n{circumflex over (x)} using the cross product of n and {circumflex over (x)}, calculating the cosine of angle n{circumflex over (x)} using the dot product of n and {circumflex over (x)}, and constructing a rotation matrix Rz using the sine of angle n{circumflex over (x)} and the cosine of angle n{circumflex over (x)}. Then, the computer virtually rotates the components of the one or more readings about the x axis by calculating the sine of angle ug using the cross product of u and g, calculating the cosine of angle ug using the dot product of u and g, and constructing a rotation matrix Rz using the sine of angle ug and the cosine of angle ug. Finally, the computer multiplies components of the one or more readings by the inverse of Rz to reverse the original rotation operation. Using method embodiments such as those described above, several acceleration vectors may be rotated in one calculation, assuming they share the same nonzero acceleration vector (i.e. the same gravity vector with respect to the device), thus greatly reducing needed calculation time.
In some circumstances, it may be useful to know the orientation of the accelerometer axes relative to the user wearing the accelerometer. Some embodiments use algorithms to determine the orientation of the three axes relative to the user's anteroposterior, dorsoventral, and lateral axes. The user's dorsoventral axis, lateral axis, anteroposterior axis, and the axis parallel to the force of gravity are referred to herein, collectively, as adjusted axes. Some embodiments use algorithms to calculate the amount of acceleration in the direction of one or more of the adjusted axes based at least in part on acceleration readings from three orthogonal accelerometer axes.
While the force of gravity may be useful to determine the accelerometer's orientation, it may also obscure acceleration caused by physical activity. Thus, some embodiments use algorithms to remove the portion of acceleration caused by gravity from one or more accelerometer axes or adjusted axes.
Some embodiments compare sets of accelerometer data collected during individual steps to one another as at least part of determining a characteristic of the user. Steps, however, may vary in their duration. Thus, some embodiments scale the duration of one or more steps to match the duration of a second step or other fixed period of time. Because each foot may generate acceleration patterns that are distinct from the other, some embodiments compare strides. A stride is a series of two contiguous steps, one made by the right foot and one made by the left.
Some embodiments analyze accelerometer data in the frequency domain. For example, some embodiments may use one or more Fourier transforms to break an acceleration signal into a number of component frequencies. The amplitude of each of the component frequencies, in comparison to the amplitudes of the other component frequencies, may indicate the relative importance of a particular frequency. A graph showing the amplitudes of the frequency components of a signal may be referred to as a frequency spectrum. Some embodiments use frequency spectra as indicators of the characteristic of the user. Embodiments may use various filters to reduce noise in the data. For example, some embodiments may use one or more low pass filters to remove aberrant high frequency noise.
Accelerometer data may also be used to estimate the movement and location of the user. Velocity may be represented as the integral of acceleration and position may be represented as the integral of velocity. Given that accelerometers generate discrete data readings, the Riemann sum of the accelerometer readings yields an approximation of the user's velocity in the direction in which acceleration is measured. For accelerometers with multiple axes, the user's velocity in each of the axis directions may be approximated. In one embodiment, a two-axis accelerometer is attached to a user with one of the axes approximately parallel to the user's dorsoventral axis and a second axis approximately parallel to the user's lateral axis. The user's position walking on a flat surface may then be estimated using a double Riemann sum of the acceleration readings in each directions. The previous embodiment is limited in that it may work best if the user stays in the same orientation without pivoting. A second embodiment accounts for user pivots by adding a gyrometer that measures angular acceleration around either the user's anteroposterior axis or an axis parallel to the force of gravity. (If the user is standing upright, the user's anteroposterior axis would be expected to be approximately parallel to the force of gravity.) A third embodiment adds a third linear axis orthogonal to the other two axes to estimate the user's velocity in the vertical direction. Yet another embodiment uses a triaxial accelerometer measuring linear acceleration along three orthogonal axes and angular acceleration around each of the axes to account for tilt.
When combined with information about the user's starting position, information about the user's velocity can be used to estimate the user's location. Multiplying the user's velocity by the time the user was at a particular velocity yields a distance in a particular direction. As discussed above, distance traveled may be calculated on one or more axes and input of angular acceleration may be used to account for tilt. Estimated distance traveled along two or more orthogonal axes may be used to calculate the user's position relative to a starting point.
Methods such as those described above may be performed by a system. Systems may include an accelerometer measuring acceleration along one or more axes. The acceleration measured may be linear or angular. Accelerometers measuring angular acceleration may also be referred to as gyroscopes, gyrometers, or gyros. Some accelerometers may additionally contain a magnetometer that orients acceleration readings relative to a magnetic field such as Earth's magnetic field. A so-called “9-axis accelerometer” contains a tri-axial accelerometer measuring linear acceleration along three orthogonal axes, angular acceleration around each of the orthogonal axes, and orientation relative to a magnetic field. A 9-axis accelerometer may also be referred to as an inertial measurement unit (IMU). The accelerometer may be attached to a user to measure the user's gait acceleration and may be housed in a portable device.
The accelerometer may be communicatively coupled to a processor. The processor may include one or more processing units (i.e. processors communicatively coupled to one another). The processor may be communicatively coupled to and execute instructions stored on a computer readable data storage (CRDS) (also referred to herein as a non-transitory computer-readable medium). The instructions may cause the processor to, for example, render a three dimensional plot of gait acceleration or identify a characteristic of the user. The CRDS may also store information from the accelerometer and processor outputs as it executes the instructions stored on the CRDS and/or processes stored readings from the accelerometer. Embodiments of the CRDS may include random access memory (RAM) and various types of non-volatile memory including, but not limited to, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), and/or electrically erasable programmable read-only memory (EEPROM). Embodiments of the CRDS may include magnetic storage (such as hard drives, floppy disks, and magnetic tape) and/or optical storage (such as CDs and DVDs).
Systems may also include an output device for presenting three dimensional acceleration plots or communicating the characteristic of the user. Output devices for presenting a three dimensional plot may include a three dimensional printer for fabricating a manufacture comprising a representation of a three dimensional plot. Three dimensional plots may also be presented in two dimensions on output devices including a display monitor, an image projector, or a printer for printing images on a page. Output devices for communicating a characteristic of a user may include, for example, a display monitor, image projector, printer, audio speaker, or tactile output. Output devices may include means for communicating with other devices or networks. For example, output devices may include various types of electromagnetic transmitters or receivers. Some embodiments may comprise input devices such as key pads or touch screens on which the user may enter information related to gait acceleration data or instructions influencing outputs.
For embodiments requiring time measurement, there are a number of potential time-measuring means. If the accelerometer generates readings at regular time intervals, the number of accelerometer readings may be used to measure the passage of time. Processors typically perform calculations on a regular time cycle and thus present another means for measuring time. Alternatively, a separate time-measuring device may be used. Examples of alternative time measuring devices include electric clocks such as quartz clocks, synchronous clocks, and radio-controlled clocks that are wirelessly synchronized with a time standard such as an atomic clock.
System components such as those described above may require a source of electrical power. Possible sources include various types of batteries as well as devices that collect ambient energy such as sunlight (e.g. photo-voltaic cells), body heat, and body motion. Components of a system that do not need to be mobile may use power from a commercial grid.
Components of the system may be communicatively coupled to other components. The processor, for instance, may receive information from the accelerometer, send information and/or instructions to the output device, and both send and receive information from the CRDS. These communications may be made with or without physical connections such as wires. Any of the communications may be accomplished wirelessly using signal types including radio and infrared. Common wireless communication protocols include Bluetooth (IEEE 802.15), Wi-Fi (IEEE 802.11), cellular communication protocols, and infrared data association protocols. Embodiments using wireless communications may include components such as transmitters and receivers. Systems may also communicate with other devices or networks, for example a personal computer or the Internet. In some embodiments, the user receives and/or sends information from the device through an Internet web site instead of or in addition to a user interface.
The above description is neither exclusive nor exhaustive and is intended neither to describe all possible embodiments (also called “examples”) nor to limit the scope of the claims. Embodiments may include elements in addition to those in the described embodiments and, in some cases, may contain only a subset of the elements described in a particular embodiment. Embodiments may contain any combination of elements in the described embodiments in addition to elements not expressly described. As used herein, the articles “a” and “an” may include one or more than one of the noun modified by either without respect to other uses of phrases such as “one or more” or “at least one.” The word “or” is used inclusively unless specified otherwise. Terms such as “first,” “second,” “third” and so forth are used as labels to distinguish elements and do not indicate sequential order unless otherwise indicated. In addition to the embodiments described above, embodiments of the invention include any that would fall within the scope of the Claims, below.
Claims
1. A method of manufacturing a model of a three dimensional acceleration plot using an additive manufacturing device, the method comprising:
- measuring a magnitude of acceleration using an accelerometer coupled to a user while the user is taking one or more steps, and;
- using an additive manufacturing device to manufacture a model representing points in a three dimensional plot, each of the points represented by a volume of material, the model comprising n volumes of material and in which:
- x indicates an order of each volume of material in a sequence, the sequence beginning with 1 and ending with n;
- except for a first volume of material each xth volume of material is coupled to an (x−1)th volume of material;
- except for an nth volume of material, each Xth volume of material is coupled to an (x+1)th volume of material;
- each xth volume of material is positioned according to an xth set of three coordinates;
- each coordinate of the xth set of three coordinates is proportional to a magnitude of acceleration along one of three orthogonal axes at an Xth time;
- each xth time occurs between an (x−1)th time and an (x+1)th time; and
- the model appears as depicted in FIG. 2.
2. The method of claim 1 in which at least one of the three orthogonal axes is an adjusted axis.
3. The method of claim 1 in which the nth volume of material is coupled to the first volume of material.
4. The method of claim 1 in which the first time occurs during a first instance of a reference foot of the user contacting a ground and the nth time occurs during a second instance of the reference foot of the user contacting the ground.
5. The method of claim 1 in which each xth time is a relative time within a gait cycle and the magnitude of acceleration along each of the three orthogonal axes at each xth time represents an aggregate measure of acceleration at two or more instances of the relative time.
6. A method of manufacturing a model of a three dimensional acceleration plot using an additive manufacturing device, the method comprising:
- measuring a magnitude of acceleration using an accelerometer coupled to a user while the user is taking one or more steps, and;
- using an additive manufacturing device to manufacture a model representing points in a three dimensional plot, each of the points represented by a volume of material, the model comprising n volumes of material and in which:
- x indicates an order of each volume of material in a sequence, the sequence beginning with 1 and ending with n;
- except for a first volume of material each xth volume of material is coupled to an (x−1)th volume of material;
- except for an nth volume of material, each Xth volume of material is coupled to an (x+1)th volume of material;
- each xth volume of material is positioned according to an xth set of three coordinates;
- each coordinate of the xth set of three coordinates is proportional to a magnitude of acceleration along one of three orthogonal axes at an Xth time;
- each xth time occurs between an (x−1)th time and an (x+1)th time; and
- the model appears as depicted in FIG. 3.
7. The method of claim 6 in which the nth volume of material is coupled to the first volume of material.
8. The method of claim 6 in which the first time occurs during a first instance of a reference foot of the user contacting a ground and the nth time occurs during a second instance of the reference foot of the user contacting the ground.
9. The method of claim 6 in which each xth time is a relative time within a gait cycle and the magnitude of acceleration along each of the three orthogonal axes at each xth time represents an aggregate measure of acceleration at two or more instances of the relative time.
10. A method of manufacturing a model of a three dimensional acceleration plot using an additive manufacturing device, the method comprising:
- measuring a magnitude of acceleration using an accelerometer coupled to a user while the user is taking one or more steps, and;
- using an additive manufacturing device to manufacture a model representing points in a three dimensional plot, each of the points represented by a volume of material, the model comprising n volumes of material and in which:
- x indicates an order of each volume of material in a sequence, the sequence beginning with 1 and ending with n;
- except for a first volume of material each xth volume of material is coupled to an (x−1)1 volume of material;
- except for an nth volume of material, each Xth volume of material is coupled to an (x+1)1 volume of material;
- each xth volume of material is positioned according to an xth set of three coordinates;
- each coordinate of the xth set of three coordinates is proportional to a magnitude of acceleration along one of three orthogonal axes at an Xth time;
- each xth time occurs between an (x−1)th time and an (x+1)1 time; and
- the model appears as depicted in FIG. 4.
11. The method of claim 10 in which the first time occurs during a first instance of a reference foot of the user contacting a ground and the nth time occurs during a second instance of the reference foot of the user contacting the ground.
12. The method of claim 10 in which each xth time is a relative time within a gait cycle and the magnitude of acceleration along each of the three orthogonal axes at each xth time represents an aggregate measure of acceleration at two or more instances of the relative time.
7145461 | December 5, 2006 | Lehrman et al. |
WO 2015066718 | May 2015 | WO |
- “List of Physical Visualizations and Related Artifacts,” Nov. 19, 2014, as retrieved from http://dataphys.org/list/3d-social-networks/.
- Bouten, C.V.C. et al., “Effects of placement and orientation of body-fixed accelerometers on the assessment of energy expenditure during walking,” Medical & Biological Engineering & Computing, Jan. 1997, pp. 50-56, vol. 35.
- Axelsson, Patrik and Mikael Norrlof, “Method to Estimate the Position and Orientation of a Triaxial Accelerometer Mounted to an Industrial Manipulator,” 10th International IFAC Symposium on Robot Control, Dubrovnik, Croatia, 2012.
- Botero, J.S., V.W. Hernandez, and E. Fernandez, “Orientation of a Triaxial Accelerometer using a Homogeneous Transformation matrix and Kalman Filters,” International Journal of Smart Sensing and Intelligent Systems, vol. 7, No. 4, pp. 1631-1646, Dec. 2014.
- Igoe, Tom, “How to Locate (almost) Anything,” Making Things Talk: Practical Methods for Connecting Physical Objects, O'Reilly, 2007, pp. 291-298.
Type: Grant
Filed: Jun 27, 2016
Date of Patent: Mar 5, 2019
Assignee: Savvysherpa, Inc. (Minnetonka, MN)
Inventor: Sara Ehlert Taylor (Cambridge, MA)
Primary Examiner: Ian A Rummel
Application Number: 15/193,310