Patent Publication Number: US-10314536-B2

Title: Method and system for delivering biomechanical feedback to human and object motion

Description:
FIELD OF THE INVENTION 
     This disclosure relates to a method and system for delivering biomechanical feedback to human and object motions. 
     BACKGROUND OF INVENTION 
     Systems capable of delivering human and object motion currently exist but are typically very sophisticated and expensive. As well, the format of the feedback provided by these systems varies considerably. Typically, there are no exhaustive methods and systems to deliver biomechanical feedback across multiple platforms and entities consistently. For example, optical motion capture is currently used in motion capture studios and sports technology companies to analyze humans and objects. These motion capture laboratories and studios focus on biomechanical research of human subjects to analyze performance, recovery, and injury risk identifiers, amongst others. Many biomechanical researchers develop proprietary software and processing algorithms to extract kinematic and kinetic measures of human and object motion. The application of physics engines to extract these metrics are based on the precision and location of retro-reflective markers on bony anatomical landmarks of the body and objects. Feedback is usually given in highly technical formats that often leave the test-subject unaware of the true underlying biomechanical flaw and fail to address corrective exercises, drills, and training regimens to improve performance and recovery, and reduce the risk of injury. As well, when and if prescriptive feedback is given, there are few methods to assess compliance with such feedback and there are few systems available for appropriate re-evaluation of the human subject and object. 
     Accordingly, a need exists for a system that provides biomechanical feedback in a format which is usable by an actor/athlete to improve their performance and reduce their risk of injury and that is supported by statistical relationship models, interactive platforms, and more advanced hardware platforms. 
     Wearable technology is becoming a primary means of assessing human and object motion. This technology is based upon embedding sensor technology in wearable garments. An example of such use is the ability to extract data from one or more on miniaturized accelerometers and gyroscopes for the purpose of reconstructing three-dimensional motion, however, there are limitations to the precision and accuracy of wearable technology that often misleads users with information that is not supported by statistical models. Wearable technology also does not provide comprehensive motion detection of all body and object segments, and, thus, does not allow for extensive prescriptive feedback to improve performance and recovery, and, thereby, reduce the risk of injury. Wearable technology is often wirelessly interfaced with mobile devices to compute kinematics and kinetics, and to display biomechanical feedback in single sessions. That said, there is no cross-platform continuity to keep users engaged, and few methods to monitor compliance and deliver significant feedback. 
     Accordingly, a further need exists for a system that incorporates advanced physics engine capabilities, advanced hardware processing and sensor technology, and interactive interfaces to produce meaningful data usable by an actor/athlete to improve their performance and reduce their risk of injury. 
     SUMMARY OF THE INVENTION 
     Disclosed is a method and system to deliver biomechanical feedback to subjects. The system utilizes three major elements: (1) multiple hardware data capture devices, including optical motion capture, inertial measurement units, infrared scanning devices, and two-dimensional RGB consecutive image capture devices, (2) a cross-platform compatible physics engine compatible with optical motion capture, inertial measurement units, infrared scanning devices, and two-dimensional RGB consecutive image capture devices, and (3) interactive platforms and user-interfaces to deliver real-time feedback to motions of humans and any objects in their possession and proximity. 
     The first element, a cross-platform compatible physics engine, imports data captured from a variety of hardware devices. Data imported from the hardware devices are then fed through kinematics and kinetics algorithms to extract desired biomechanical data. Data is then compiled by the physics engine across multiple subjects and across multiple sessions of a single subject. The physics engine also computes mechanical equivalencies to allow compatibility across hardware platforms. Mechanical equivalencies include correlating database data to injury and performance statistics, correlating discrete kinematics and kinetics of a body to discrete kinematics and kinetics of objects, principal component analysis to correlate time-series data of the body to objects, comparison of subject and object data to compiled databases, and extraction of prescriptive feedback based on all mechanical equivalencies 
     The second element, the hardware data capture devices, may comprise a variety of peripheral devices that collect two-dimensional or three-dimensional motion data of subject or object. In one embodiment, such peripheral devices may comprise (1) optical motion capture devices to collect three-dimensional positional data on reflective markers placed on the body and/or an object, (2) inertial measurement units with gyroscopes and accelerometers placed on the body, on an object, or in garments, to collect three-dimensional translation and rotation motion data of object(s) or segment(s) of the subjects body, (3) infrared scanning devices, such as the Microsoft Kinect or Google Tango, to capture three-dimensional point clouds of movement data and incorporate skeletal and object tracking algorithms to extract three-dimensional joint and object positions, and (4) Red Green Blue (RGB) two-dimensional consecutive image capture devices to collect movement images and to incorporate skeletal and object tracking algorithms to extract three-dimensional joint and object positions and kinematics. 
     The hardware data capture devices of the second element may further comprise wearable sensor technology which utilizes motion sensing hardware embedded in wearable garments to compute human and object motion. The wearable technology may be coupled the physics engine and interactive interface to offer prescriptive feedback to flaws identified in the subject&#39;s and object&#39;s motion. Such feedback may be based on an exhaustive body of object motion correlations made during biomechanical research, and be provided to the user via the interactive interface. 
     The third element, the interactive interface, utilizes information generated by the physics engine to create a user-interface that displays data to the user. This interactive interface may be implemented in variety of forms such as mobile device screens (iOS/Android), Web-Based interfaces (HTML), Heads-Up-Displays (VR/AR Headsets), and Windows/OSX static formats (spreadsheets, PDF&#39;s, etc.). The interactive interface has the capability of feeding information to the user, as well as the ability to collect information from the user for the purpose of monitoring compliance and monitoring usability of the interface. The interactive platform may be utilized to provide to the user insight gathered from biomechanical research and marker-based motion capture methods. Such interactive platforms will be able to offer prescriptive feedback based on motion data gathered from either the wearable technology, or the motion sensing mechanism built into the interactive platform and enable compliance monitoring and continuous engagement across a suite of wearable technology methods. Information may be stored on a back-end storage server and also exported to the physic engine and to one or more of the hardware devices. 
     According to one aspect of the disclosure, system for providing prescriptive feedback based on motion of a human subject or object comprises: A) a hardware engine for gathering data about the motion of a subject or object, B) a physics engine operatively coupled to the hardware engine and configured for processing the gathered motion data and correlating the processed motion data with previously stored biomechanical data representing idealized motion models, and C) an interactive interface operatively coupled to the data gathering devices and the physics engine and configured for providing prescriptive feedback on flaws identified in the subject&#39;s or object&#39;s motion. 
     According to another aspect of the disclosure, a method for providing prescriptive feedback based on motion of a human subject or object comprises: A) gathering data about the motion of a subject or object, B) processing the gathered motion data and correlating the processed motion data with previously stored biomechanical data representing idealized motion models, and C) providing prescriptive feedback on flaws identified in the subject&#39;s or object&#39;s motion. In one embodiment method further comprises D) enabling compliance monitoring of the motion of the subject and/or object. 
     According to yet another aspect of the disclosure, a method for offering prescriptive feedback based on motion of a human subject and/or objects comprises: A) gathering motion data from either a wearable garment or device having motion sensing hardware embedded therein or from a motion sensing mechanism built into the interactive platform, B) processing motion data, C) correlating the process motion data with previously stored biomechanical data representing idealized motion models, and D) providing prescriptive feedback on flaws identified in the subject&#39;s and object&#39;s motion based on the motion data gathered from either the wearable technology or interactive platform. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The present disclosure is illustratively shown and described with reference to the accompanying drawing in which: 
         FIG. 1  illustrates conceptually a system for delivering biomechanical feedback to human and object motion; 
         FIG. 2  illustrates conceptually a method of the system for delivering biomechanical feedback to human and object motion and the interaction of the physics engine; 
         FIG. 3  illustrates conceptually a method of the system for delivering biomechanical feedback to human and object motion by use of an interactive engine; 
         FIG. 4A-B  illustrate conceptually a method of the system for delivering biomechanical feedback to human and object motion by use of hardware engines; 
         FIGS. 5A-D  illustrate conceptually specific marker sets used in the method of biomechanical research and its relation to optical motion capture; 
         FIGS. 6A-H  illustrate conceptually embodiments of wearable technology in accordance with the disclosure; 
         FIG. 7  illustrates conceptually a diagram of an exemplary computer architecture in accordance with the present disclosure; and 
         FIG. 8  illustrates conceptually a diagram of an exemplary network topology in which the system may be implemented in accordance with the present disclosure. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     The present disclosure will be more completely understood through the following description, which should be read in conjunction with the drawings. In this description, like numbers refer to similar elements within various embodiments of the present disclosure. The skilled artisan will readily appreciate that the methods, apparatus and systems described herein are merely exemplary and that variations can be made without departing from the spirit and scope of the disclosure. 
     Is used herein, the term “engine” means one or more elements, whether implemented in hardware, software, firmware, or any combination thereof, capable of performing any function described herein, including a collection of such elements which collaboratively perform functions wholly or partially, serially or in parallel, synchronously or asynchronously, remotely or locally, regardless of data formats or protocols. 
     Referring to  FIG. 1 , a system for providing biomechanical feedback comprises a physics engine  100 , a hardware engine  102 , and an interactive engine  101  to deliver biomechanical feedback on human or object motion. As used herein, hardware engine  102  may comprise one or a plurality of hardware/software devices which function collectively or individually to achieve the described functionality. Similarly, as used herein, interactive engine  101  may comprise one or a plurality of hardware/software devices which function collectively or individually to achieve the described functionality, typically receiving data from or providing data to a subject. 
     Physics engine  100  functions as a cross-platform compatible method to transform raw three-dimensional data captured from various hardware data collection devices into usable biomechanical feedback.  FIG. 2  illustrates conceptually an exemplary process flow of the physics engine  100 . First, the physics engine  100  is initialized, typically to a startup state with default parameters, as illustrated by process block  200 . The physics engine  100  imports, either in a push or a pull manner over any network infrastructure, wireless or otherwise, either two-dimensional or three-dimensional datasets from the hardware engine  102 , as illustrated by process block  201 . In one embodiment, hardware engine  102  may comprise individually or collectively any of optical motion capture device  212 , inertial measurement units  213 , infrared from point scanning devices  214 , and image capture devices  215 . Data imported from these devices is provided to physics engine  100  which performs one or more algorithmic processes to compute kinematics and kinetics of the human body and objects, as illustrated by process block  202 . 
     An pseudocode example of the type of kinematic and kinetic algorithmic computations performed by physics engine  11  on data from optical motion capture device  212 , infrared scanning devices  214  and image and video capture devices  215 , is as follows:
         Define a multisegment or single segment biomechanics model comprising bilateral and/or unilateral segments, such as the hands, forearms, upper arms, upper trunk, neck, head, pelvis, upper thighs, lower shanks, feet, and any objects used in the proximity   Define long-axis unit vectors of the body or object segments in the model using three-dimensional XYZ marker data   Define Planar-axis unit vectors of each of the above segments   Compute a cross product of the long and planar axes to determine the third unit vector of each segment   Compute the cross product of the third unit-vector and the long-axis unit vector to create three orthonormal unit vectors for each segment in the model   Compute angular velocity vectors of each model segment using a derivative method of unit vectors of each segment   Compute relative joint angles (in euler and polar coordinate systems) using each segment&#39;s set of unit vectors   Define human mass model using subject weight and height and anthropometrics of body segments to calculate mass moments of inertia about each segment, and center of mass locations   Compute accelerations of each marker and of each segment center of mass using a five-point central difference filter   Compute angular accelerations of each model segment using a five point central difference filter of angular velocity   Compute an inverse dynamics model of motion using angular velocity components of each segment, angular acceleration components of each segment, and linear acceleration components of each segment&#39;s center of mass   Event detection algorithms are used to determine points of interest during a particular motion   Kinematics and Kinetic values are extracted at points of interest (examples of kinematics and kinetic values are peak angular velocity of the pelvis segment during a sport motion (in meters per second), or shoulder rotation at foot contact during a throwing motion (in degrees)       

     To compute kinematics and kinetics from inertial measurement units  213 , the following steps are undertaken:
         Raw sensor data is fused together using an axis-angle integration method.
           A rotation matrix of the sensor is initialized using the gravity vector during a still point (Gravity can also be detected when there is no still point by measuring integration offset after the axis-angle method is completed)   Angular rate data from the gyroscope is integrated into a rotation matrix at each sample during the motion   Each rotation matrix from each sample is multiplied consecutively to the initialized rotation matrix in a body-fixed method   Acceleration data is transformed into the global frame using the rotation matrix computed from the angular rate data   Gravity is subtracted from the rotated acceleration data in the global reference frame   Rotated acceleration data is integrated into velocity and position of the sensor and/or any point on a rigid body to which the sensor is attached   
           Raw acceleration and angular rate data is transformed into the inertial reference frame at the center of mass of the segment or object to which the sensor is attached   All processed data is rotated by an offset error that may exist in a system   All rotated and inertial data is filtered using a fourth order low pass filter   Inertial reference frame acceleration data and angular rate data are fed into an open-chain inverse dynamics kinetic model to solve for reaction forces and torques about vertices within a human or object mass model defined by anthropometrics, height, weight, or lookup tables of object properties   Event detection algorithms are used to determine points of interest during a particular motion (An example of an event detection algorithm in baseball pitching encompases the generation of Principal Components of a historical dataset (training data). When a given buffer of data in a hardware device meets the criteria of fitting the principal components, an event (such as a pitch) is detected. Event detection is used to prevent undesired motion from being detected in a given application).   Kinematics and Kinetic values are extracted at points of interest from integrated positions, velocities, accelerations, angular rates, and reaction force and torque data.       

     The above identified process for the computation of kinematics and kinetics data are repeated for multiple trials of a subject&#39;s or object&#39;s motion and compiled in a memory or database, as illustrated by process block  203 . In one embodiment, similar computed kinematics and kinetics data are compiled across multiple subjects and stored for further analysis, as also illustrated by process block  203 . Physics engine  100  then provides relevant portions of the compiled kinematics and kinetics data to mechanical equivalency models, as illustrated by process block  204 . As part of this process, physics engine  100  correlates the compiled data to performance and injury data, as illustrated by process block  300 . Discrete data are correlated to performance and injury data by way of person correlations and Bayesian mixed regression to eliminate non-contributing factors. Physics engine  100  further correlates discrete kinematics and kinetics data of the body to discrete kinematics and kinetics of the object or other body segments, as illustrated by process block  302 . Discrete body data are correlated other discrete body and object data  302  in a similar method to  300  by way of person correlations and Bayesian mixed regression. Also as part of this process, physics engine  100  correlates time-series data of the body to time-series data of other body parts or objects using principal component analysis, as illustrated by process block  303 . Time-series segment data are reduced to multiple, e.g. over 80, principal components. The reduced components are then correlated to principal components of other body or object segments and are used to extract additional motion given raw data from one or more body segments. Discrete and time-series data are compared to a database of motion, as illustrated by process block  305 , by use of averages and standard deviations of data across multiple subjects. Based upon relationships established during process blocks  300 ,  302 ,  303 ,  305 , physics engine  100  further extracts prescriptive feedback using correlation models and the subject&#39;s/object&#39;s motion, as illustrated by process block  304 . After the prescriptive feedback information is gathered by the physics engine  100 , the prescriptive feedback is exported to interactive engine  101 , as illustrated by process block  205 , and presented to the subject/object in a matter that facilitates altering the mechanics in a way that leads to increased performance or reduced risk of injury. 
       FIG. 3  illustrates the process flow performed by the interactive engine  101 . After any initialization of the interactive engine  101 , information is acquired from the physics engine  100 , as illustrated by process block  206 , either manually, or with automated API&#39;s in either a push or pull protocol. Such information is then stored on back end servers and databases, as illustrated by process block  207 , in a logical manner for reference. Next, the information acquired from physics engine  100  is displayed through user interfaces, as illustrated by process block  208 . Interactive engine  101  may display the information acquired from physics engine  100  through any of mobile devices (iOS/Android)  306 , spreadsheets  307 , web-based interfaces (HTML)  308 , and virtual and/or augmented reality heads-up displays  309 , as illustrated by process block  208 . After such information is displayed, the interactive engine  101  has the further capability to monitor compliance and usability information through the various interface components of interactive engine  101 , as illustrated by process block  209 , by storing compliance information entered by a user or collected by one of the data collection devices comprising hardware engine  102 . Any acquired compliance information may be exported to either the hardware engine  102  and/or physics engine  100 , as applicable, to form a continuous feedback loop, as illustrated by process block  210 , and as illustrated in  FIG. 1 . 
       FIGS. 4A-B  illustrate the process flow performed by the hardware engine  102 . For the optical motion capture devices  212 , third party software is utilized to calibrate multiple, e.g. up to 16, near infrared cameras around a centralized volume space, as illustrated by process block  310 . Retro-reflective markers are then placed on the subject and/or object as seen in  FIGS. 5A-D . Data are recorded with devices  212  and transmitted using an Ethernet bus connected to a computer. The calibrated XYZ positions of each marker in the capture volume are recorded into a binary encoded file, as illustrated by process block  312 . After collection, the acquired data are exported to the physics engine  102 , for example using Windows/OSX devices, for processing, as illustrated by process block  313 . For the inertial measurement devices  213 , accelerometers and gyroscopes are calibrated and interfaced with a microcontroller capable of interfacing with any of memory, e.g. RAM or FLASH, and Bluetooth chipsets by internal firmware operations that control the hardware, as illustrated by process block  314 . Inertial measurement units are placed on points of interest, such as body segments or objects, as illustrated by process block  315 . Six axes of data, in addition to time samples, may be recorded continuously. Upon the trigger of a customized event (event detection), as illustrated by process block  316 , data are stored in RAM and/or FLASH memory for later analysis, as illustrated by process block  317 . Data are simultaneously compressed using principal component analysis, similar as previously described with reference to process block  303 , as illustrated by process block  318 . Data are then exported to a physics engine  100 , with, for example, Bluetooth low energy SDK processes on mobile devices (iOS/Android), as illustrated by process block  319 . For the infrared scanning devices  214 , a scanning laser is calibrated alongside on-board inertial measurement units that may include accelerometers and gyroscopes, or other positional measurement units, such as Red Green Blue (RGB) video or known environmental conditions, as illustrated by process block  320 . XYZ point cloud data of human and object motion is then captured, as illustrated by process block  321 , and stored to local memory. Simultaneously, a local skeletal and object tracking algorithm is implemented to track three-dimensional joint and object positions, as illustrated by process block  322 . The local skeletal and object tracking algorithm may be implemented using known anthropometrics of the human, or known information from the object, alongside edge filtering techniques to identify points of interest on a human or object. Skeletal and object data are then also stored in memory, as illustrated by process block  323 , and are exported to a physics engine  100  by, for example, Android/iOS devices. For the image and video capture devices  215 , consecutive two-dimensional RGB images and videos of human object motion are captured, as illustrated by process block  325 . A local skeleton and object tracking algorithm is then used to extract joint and object positions similar as previously described with reference to process block to  322 , as illustrated by process block  326 . Skeletal and object positional data are then stored to memory, as illustrated by process block  327 , and are exported to physics engine  100 , by for example, mobile devices (iOS/Android), as illustrated by process block  328 . 
     As seen in  FIG. 5A-D , markerset  300  comprise a full body markerset  400  and various object markersets, including baseball/softball bat markerset  401 , golf clubs markerset  402 , tennis racket markerset  403 , and other objects that interact with a human body.  FIG. 5A  illustrates conceptually a full body markerset  400  comprises markers attached to bony anatomical landmarks, including, but not limited to: front of the head, back of the head, right side of the head, left side of the head, the T2 vertebrate, the T8 vertebrate, the Xiphoid process of the sternum, the left and right sternoclavicular joints, the Acromioclavicular joint of both shoulders, the middle of the bicep of the upper arms, the lateral and medial epicondyle of both humeruses, middle of the forearms, the medial and lateral styloid processes of both wrists, the tip of the third metacarpal in both hands, the right and left posterior superior iliac spines, the right and left anterior superior iliac spines, the right and left greater trochanters, the middle of both thighs, the medial and lateral epicondyles of the femurs, the right calf, the medial and lateral malleouleses of the ankles, the tip of the third metatarsal of both feet, and the tip of the calcaneous in both feet. 
       FIG. 5B  illustrates conceptually a markerset  401  with five markers attached to a hypothetical baseball bat in the following locations: knob of bat, above the handle of the bat, at the center of mass of the bat, at the tip of the bat forming a line between the knob and center of mass, and on the posterior side of the bat at the tip. 
       FIG. 5C  illustrates conceptually a markerset  402  with five markers attached to a hypothetical golf club at the following locations: at the base of the handle, above the handle, at the center of mass, at the base of the club, and at the tip of the clubface to form a direct line of the clubface angle. 
       FIG. 5D  illustrates conceptually a markerset  403  with five markers are placed on a hypothetical tennis racket at the following locations: at the base of the handle, at the intersection of the handle and the racket head, on the left and right sides of the racket head, and at the tip of the racket head. 
     Referring to  FIGS. 6A-H , wearable technology  102 , they comprise in embodiments any of a plurality of garments  800 , which may be made of any material including spandex, Lycra, polyester, in combination with cotton, silk or any other wearable material, to assist with the acquisition of motion data from human subjects and/or accompanying objects. Various embodiments of such garments are described in greater detail below. Each garment  800  comprises multiple data-gathering mechanisms  801 , such as MEMS/IMU hardware, which can which can record and transmit motion data wirelessly to an iOS/Android phone or other network enabled device  802 . Software applications, such as those available from Diamond Kinetics, Pittsburgh, Pa. may be utilized to compute kinematics from MEMS/IMU hardware. 
     In one embodiment, the mThrow sleeve garment  803 , as illustrated in  FIG. 6A , is coupled with motion sensors  801  to monitor workload and performance. The mThrow sleeve garment  803  is worn on the throwing arm during practices, games, or rehab sessions. Data may be collected throughout workouts and is transmitted wirelessly to an iOS/Android phone or other network enabled device. In such embodiment, garment  803  may comprise  801  a six axis accelerometer/gyroscope IMU that interfaces wirelessly via Bluetooth or other protocol with a mobile device  802 , such as an iOS/Android smartphone. Software applications, either executing on the network enabled device or remotely accessible via a network, perform the functions to interact with the physics engine  100  and interactive engine  101 . Such existing functions include computation of throwing forearm motion, kinetic solutions of elbow reaction forces and torques, algorithmic calculation of throwing workload during game/practice/season/career, pitch and throw counting functions, computation of arm and ball speed, and trends for the use of performance and injury forecasting. Principal component analysis of sensor data will also allow for mechanical equivalence models to be created that extract additional segment data that is not directly measured by the sensors. 
     In another embodiment, the mThrow Pro garment  804 , as illustrated in  FIG. 6B , is a comprehensive throwing analysis platform designed to allow athletes of all ages and skill level to receive a full-body biomechanical analysis of their throwing mechanics. Data is gathered with four motion sensors. mThrow Pro garment  804  can be worn during games or practices, and is coupled with interactive applications to provide useful feedback. In such embodiment, garment  804  may comprise  801  multiple six axis accelerometer/gyroscope IMU&#39;s that interfaces wirelessly via Bluetooth or other protocol with a mobile device  802 , such as an iOS/Android smartphone. Software applications, either executing on the network enabled device or remotely accessible via a network, perform the functions to interact with the physics engine  100  and interactive engine  101 . Such existing functions include computation of throwing forearm, upper arm, pelvis, and upper trunk biomechanical motion, kinetic solution of elbow and shoulder reaction forces and torques, algorithmic calculation of throwing workload during game/practice/season/career, pitch and throw counting functions, computation of ball and arm speed, computation of kinetic chain velocities and accelerations of the pelvis, upper trunk, upper arm, and forearm and their associated temporal reference, and trends for the use of performance and injury forecasting. Principal component analysis of sensor data will also allow for mechanical equivalence models to be created that extract additional segment data that is not directly measured by the sensors. 
     In another embodiment, the mRun ACL Sleeve garment  806 , as illustrated in  FIG. 6C , is coupled with motion sensors  801  and EMG muscle activity sensors  805  to detect injury risk factors and workload in athletic movements such as running, sprinting, cutting, and jumping. The mRun ACL Sleeve garment  806  can be used on the field of play during games, practice, or training. The mRun ACL Sleeve garment  806  may comprise  801  a six axis accelerometer/gyroscope IMU and  805  two EMG sensors on the quadriceps and hamstrings that interfaces wirelessly via Bluetooth or other protocol with a mobile device  802 , such as an iOS/Android smartphone. Software applications, either executing on the network enabled device or remotely accessible via a network, perform the functions to interact with the physics engine  100  and interactive engine  101 . Such existing functions include computation of lower extremity kinematics, muscle firing activity, and algorithmic computation of movement workload during game/practice/season/career, and trends for the use of performance and injury forecasting. Principal component analysis of sensor data will also allow for mechanical equivalence models to be created that extract additional segment data that is not directly measured by the sensors. 
     In another embodiment, the mRun ACL Leggings Pro garment  807 , as illustrated in  FIG. 6D , give athletes in any sport the ability to reduce their risk of injury and enhance performance. Garment  807  is a comprehensive movement analysis platform that captures ACL injury risk. The mRun ACL Leggings Pro garment  807  uses motion sensors  801  and muscle activity sensors  805  to monitor the entire lower body during any movement. mRun ACL Leggings Pro garment  808  may be used during any training platform to allow athletes to undergo an ACL risk screening. In such embodiment, garment  808  may comprise  801  two six axis accelerometer/gyroscope IMU&#39;sand  805  six EMG sensors on the quadriceps, hamstrings, and gluteus medius that interfaces wirelessly via Bluetooth or other protocol with a mobile device  802 , such as an iOS/Android smartphone. Software applications, either executing on the network enabled device or remotely accessible via a network, perform the functions to interact with the physics engine  100  and interactive engine  101 . Such existing functions include computation of full lower extremity kinematics and kinetics, computation of full lower extremity muscle firing activity, algorithmic computation of movement workload during game/practice/season/career, and the use of performance and injury forecasting. Principal component analysis of sensor data will also allow for mechanical equivalence models to be created that extract additional segment data that is not directly measured by the sensors. 
     In another embodiment, the SmartSocks garment  809 , as illustrated in  FIG. 6E , can be used in any sport to monitor feet movement, running patterns, and weight distribution. Coupled with force sensor arrays and motion sensors, the SmartSocks garment  810  can interface with any of the garments disclosed herein to provide a more comprehensive experience. In such embodiment, garment  810  may comprise  801  a six axis accelerometer/gyroscope IMU that interfaces wirelessly via Bluetooth or other protocol with a mobile device  802 , such as an iOS/Android smartphone. Software applications, either executing on the network enabled device or remotely accessible via a network, perform the functions to interact with the physics engine  100  and interactive engine  101 . Additional sensor technology is to include  810  cardiac sensor for heart rate and respiration rate measurement,  811  blood oxygenation sensor,  812  sweat and hydration sensors,  813  global positioning system sensors for on field movement monitoring, and  814  force sensor arrays for weight distribution and lower extremity kinetic computations. Together, these elements will allow for in depth analysis of player workload during practice and games, while offering performance alerts in the form of dashboards for forecasting performance and injury. The embodiment  809  will also have the capability to pair sensor data with  800   804   806   807 . 
     In another embodiment, the mSense device  801 , as illustrated in  FIG. 6F , comprises  801  motion sensors,  810  cardiac heart and breathing monitors,  811  oxygen sensors,  812  sweat and hydration sensors, and  813  GPS to monitor team members during gameplay, practice, and training sessions. The mSense device  801  is designed for the competitive individual as well as for coaches to monitor their entire team and embeds in on to any garment and interfaces wirelessly with your phone  802  with a user interface in the form of dashboards to monitor player workload. In such embodiment, device  801  may comprise of a six axis accelerometer/gyroscope IMU that interfaces wirelessly via Bluetooth or other protocol with  802  a mobile device, such as an iOS/Android smartphone. Software applications, either executing on the network enabled device or remotely accessible via a network, perform the functions to interact with the physics engine  100  and interactive engine  101 . 
     In another embodiment, the mSwing glove garment  816 , as illustrated in  FIG. 6G , is coupled with motion sensors  801  to monitor workload and performance of swinging motions such as but not limited to golf swings, baseball batting swings, softball batting swings, tennis swings, and lacrosse swings. The mSwing glove garment  816  is worn on the dominant and/or non-dominant arm during practices, games, or rehab sessions. Data may be collected throughout workouts and is transmitted wirelessly to an iOS/Android phone or other network enabled device. In such embodiment, garment  816  may comprise  801  a six axis accelerometer/gyroscope IMU that interfaces wirelessly via Bluetooth or other protocol with a mobile device  802 , such as an iOS/Android smartphone. Software applications, either executing on the network enabled device or remotely accessible via a network, perform the functions to interact with the physics engine  100  and interactive engine  101 . Such existing functions include computation of held object motion, kinetic solutions of wrist reaction forces and torques, algorithmic calculation of swinging workload during game/practice/season/career, swing counting functions, computation of held object speed, kinematics and temporal measures, and trends for the use of performance and injury forecasting. Principal component analysis of sensor data will also allow for mechanical equivalence models to be created that extract additional segment data that is not directly measured by the sensors. 
     In another embodiment, the mBand wristband garment  817 , as illustrated in  FIG. 6H , is coupled with motion sensors  801  to monitor workload and performance of swinging motions such as but not limited to golf swings, baseball batting swings, softball batting swings, tennis swings, and lacrosse swings. The mBand wristband garment  817  is worn on the dominant and/or non-dominant arm during practices, games, or rehab sessions. Data may be collected throughout workouts and is transmitted wirelessly to an iOS/Android phone or other network enabled device. In such embodiment, garment  817  may comprise  801  a six axis accelerometer/gyroscope IMU that interfaces wirelessly via Bluetooth or other protocol with a mobile device  802 , such as an iOS/Android smartphone. Software applications, either executing on the network enabled device or remotely accessible via a network, perform the functions to interact with the physics engine  100  and interactive engine  101 . Such existing functions include computation of held object motion, kinetic solutions of wrist reaction forces and torques, algorithmic calculation of swinging workload during game/practice/season/career, swing counting functions, computation of held object speed, kinematics and temporal measures, and trends for the use of performance and injury forecasting. Principal component analysis of sensor data will also allow for mechanical equivalence models to be created that extract additional segment data that is not directly measured by the sensors. 
     The previously described physics engine  100  and the processes or functions performed thereby may be implemented with computer program code executing under the control of an operating system and running on one or more primary hardware platforms as described with reference to  FIG. 7 . Referring to  FIG. 7 , a computer system  500  comprises a central processing unit  502  (CPU), a system memory  530 , including one or both of a random access memory  532  (RAM) and a read-only memory  534  (ROM), and a system bus  510  that couples the system memory  530  to the CPU  502 . An input/output system containing the basic routines that help to transfer information between elements within the computer architecture  500 , such as during startup, can be stored in the ROM  534 . The computer architecture  500  may further include a mass storage device  520  for storing an operating system  522 , software, data, and various program modules  600 , associated with an application  580  which may include functionality described herein with reference to any of physics engine  100 , hardware engine  102  or interactive engine  100 , one or any combination thereof which are executable by a special-purpose application, such as analytics engine  524 . 
     The mass storage device  520  may be connected to the CPU  502  through a mass storage controller (not illustrated) connected to the bus  510 . The mass storage device  520  and its associated computer-readable media can provide non-volatile storage for the computer architecture  500 . Although the description of computer-readable media contained herein refers to a mass storage device, such as a hard disk or CD-ROM drive, it should be appreciated by those skilled in the art that computer-readable media can be any available computer storage media that can be accessed by the computer architecture  500 . 
     By way of example, and not limitation, computer-readable media may include volatile and non-volatile, removable and non-removable media implemented in any method or technology for the non-transitory storage of information such as computer-readable instructions, data structures, program modules or other data. For example, computer-readable media includes, but is not limited to, RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, digital versatile disks (DVD), HD-DVD, BLU-RAY, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer architecture  500 . 
     According to various embodiments, the computer architecture  500  may operate in a networked environment using logical connections to remote physical or virtual entities through a network such as the network  599 . The computer architecture  500  may connect to the network  599  through a network interface unit  504  connected to the bus  510 . It will be appreciated that the network interface unit  504  may also be utilized to connect to other types of networks and remote computer systems. The computer architecture  500  may also include an input/output controller for receiving and processing input from a number of other devices, including a keyboard, mouse, or electronic stylus (not illustrated). Similarly, an input/output controller may provide output to a video display  506 , a printer, or other type of output device. A graphics processor unit  525  may also be connected to the bus  510 . 
     As mentioned briefly above, a number of program modules and data files may be stored in the mass storage device  520  and RAM  532  of the computer architecture  500 , including an operating system  522  suitable for controlling the operation of a networked desktop, laptop, server computer, or other computing environment. The mass storage device  520 , ROM  534 , and RAM  532  may also store one or more program modules. In particular, the mass storage device  520 , the ROM  534 , and the RAM  532  may store the engine  524  for execution by the CPU  502 . The engine  524  can include software components for implementing portions of the processes described herein. The mass storage device  520 , the ROM  534 , and the RAM  532  may also store other types of program modules. 
     Software modules, such as the various modules within the engine  524  may be associated with the system memory  530 , the mass storage device  520 , or otherwise. According to embodiments, the analytics engine  524  may be stored on the network  599  and executed by any computer within the network  599 . Databases  572  and  575 , which may be used to store any of the acquired or processed data or idealized models, and/or kinematics and kinetic data described herein, such databases being coupled remotely to network  599  and network interface  504 . 
     The software modules may include software instructions that, when loaded into the CPU  502  and executed, transform a general-purpose computing system into a special-purpose computing system customized to facilitate all, or part of, the techniques disclosed herein. As detailed throughout this description, the program modules may provide various tools or techniques by which the computer architecture  500  may participate within the overall systems or operating environments using the components, logic flows, and/or data structures discussed herein. 
     The CPU  502  may be constructed from any number of transistors or other circuit elements, which may individually or collectively assume any number of states. More specifically, the CPU  502  may operate as a state machine or finite-state machine. Such a machine may be transformed to a second machine, or specific machine by loading executable instructions contained within the program modules. These computer-executable instructions may transform the CPU  502  by specifying how the CPU  502  transitions between states, thereby transforming the transistors or other circuit elements constituting the CPU  502  from a first machine to a second machine, wherein the second machine may be specifically configured to manage the generation of indices. The states of either machine may also be transformed by receiving input from one or more user input devices associated with the input/output controller, the network interface unit  504 , other peripherals, other interfaces, or one or more users or other actors. Either machine may also transform states, or various physical characteristics of various output devices such as printers, speakers, video displays, or otherwise. 
     Encoding of executable computer program code modules may also transform the physical structure of the storage media. The specific transformation of physical structure may depend on various factors, in different implementations of this description. Examples of such factors may include, but are not limited to: the technology used to implement the storage media, whether the storage media are characterized as primary or secondary storage, and the like. For example, if the storage media are implemented as semiconductor-based memory, the program modules may transform the physical state of the system memory  530  when the software is encoded therein. For example, the software may transform the state of transistors, capacitors, or other discrete circuit elements constituting the system memory  530 . 
     As another example, the storage media may be implemented using magnetic or optical technology. In such implementations, the program modules may transform the physical state of magnetic or optical media, when the software is encoded therein. These transformations may include altering the magnetic characteristics of particular locations within given magnetic media. These transformations may also include altering the physical features or characteristics of particular locations within given optical media, to change the optical characteristics of those locations. It should be appreciated that various other transformations of physical media are possible without departing from the scope of and spirit of the present description. 
       FIG. 8  illustrates conceptually a network topology in which the components of the disclosed system may be implemented. Any of the engines  100 ,  102  or  103  and the data processing systems  110 ,  113 A-C,  112 - 118 , illustrated in the network topology of  FIG. 8  may be implemented with a processing architecture similar to that illustrated in  FIG. 7 , including any of a desktop computer, laptop computer, tablet computer or smart phone/personal digital assistant device such as an iPhone or android operating system based device. Note that any of the systems illustrated in  FIG. 8  may be interoperably connected either through a wide area network (WAN)  125  or local area network (LAN)  115  or both, or any hybrid combination thereof using known network infrastructure and components, protocols, and/or topologies. For example, any of devices  212 - 215  may be connected to hardware engine  102  either through a physical network physically or wirelessly, or any combination thereof. Similarly any of devices  306 - 309  may be coupled to interface engine  103  either through a physical network or wirelessly, or any combination thereof. Similarly any of engines  100 ,  102 ,  103  may be connected either via WAN  125  or LAN  115 , any portion of which may be wireless connection between respective network nodes, the entirety of the system being indicated as system  110 . Systems  112 - 118  may comprise additional databases more users capable of interacting remotely with system  110 . 
     The reader can appreciate that the various systems and elements and methods described herein enables delivery of near real-time feedback to motions of human subjects and any objects in their possession and proximity. 
     Although the various embodiments of the system and techniques disclosed herein have been described with reference to specific sports and/or garments related to such activities, it will be obvious to those reasonably skilled in the art that modifications to the systems and processes disclosed herein may occur, without departing from the true spirit and scope of the disclosure. For example, any type of wearable garment which is capable of transmitting motion data useful for analysis may be utilized with the systems and techniques described herein. Further, notwithstanding the network implementation described, any existing or future network or communications infrastructure technologies may be utilized, including any combination of public and private networks. In addition, although specific algorithmic flow diagrams or data structures may have been illustrated, these are for exemplary purposes only, other processes which achieve the same functions or utilized different data structures or formats are contemplated to be within the scope of the concepts described herein. As such, the exemplary embodiments described herein are for illustrative purposes and are not meant to be limiting