Getting Started

This section introduces MOtoNMS architecture and how to setup the software on your computer.

Architecture Overview

MOtoNMS separates data processing from configuration of the execution. This guarantees high configurability, flexibility, and a user friendly toolbox not requiring a deep confidence with MATLAB for its use.

MOtoNMS has three main processing steps (Fig. 24- orange boxes): (1) C3D2MAT, (2) Data Processing, and (3) Static Elaboration. Briefly, the objectives of each blocks are:

  • C3D2MAT: retrieves data from the C3D input files and store them in organized MATLAB structures;
  • Data Processing: works on dynamic trials processing markers trajectories, ground reaction forces, and EMG signals and produces OpenSim files (.trc and .mot format);
  • Static Elaboration: processes static trials, computes joint centers, and stores markers trajectories in the corresponding .trc file.

MOtoNMS configuration goes through user-friendly MATLAB interfaces (Fig. 24- blue boxes), that create the following three XML configuration files with the input parameters for the processing steps (Fig. 24):

All the files are encoded using the XML language. We have chosen this language for its suitability in encoding information. While XML files are easily readable but their editing might be complex, therefore MOtoNMS provides user-friendly MATLAB interfaces that creates these configuration files according to the proper semantic. Indeed, XML files must respect the syntax of a grammar defined in XML Schema (XSD) files (see Appendix B: Validation of Setup and Configuration Files for details on XML files validation).

../_images/overview.png

Figure 24: MOtoNMS overview schema

Supported Applications: OpenSim and CEINMS

MOtoNMS has been design to support different output file formats and several musculoskeletal applications. Current version of MOtoNMS already supports OpenSim (https://simtk.org/home/opensim) and CEINMS (https://simtk.org/home/ceinms).

MOtoNMS processes data collected with different gait instrumentations and produces input files for OpenSim (.trc and .mot, standard OpenSim file formats). When available, EMG signals are also processed and can be exported in several formats (.mot, OpenSim motion, .sto, OpenSim Storage, and .txt, plain text format) compatible with the CEINMS toolbox (https://simtk.org/home/ceinms) and easily usable also by other applications.

Installation

Download

MOtoNMS is released under the GNU General Public Licence v.3or any later version. An archive of the latest release is available at the project webpage at the SimTk.org website (https://simtk.org/home/motonms/). We also provided a set of dataset to play with. If you are interested in collaborate with the development,the software repository is available in GitHub: https://github.com/RehabEngGroup/MOtoNMS.

Requirements

MOtoNMS is implemented in MATLAB and runs on the major operating systems (Windows, Linux, MacOS X). It works with MATLAB R2009a and later versions.

MOtoNMS requires one of the following software for the C3D2MAT part:

You also need to add the correct BTK folder to the path of MATLAB. Type the command help btk in the MATLAB’s command window to verify that BTK is loaded in MATLAB. You should see the main documentation for the BTK toolbox. If this is not the case, check the path that you added to the list of the directories loaded by MATLAB to register the BTK toolbox.

You can choose to install either C3Dserver or BTK. According to your choice, you must use the corresponding C3D2MAT implementation, with C3Dserver (C3D2MAT_c3dserver) or with BTK (C3D2MAT_btk).

Laboratory requirements:

  • Data collected with a motion capture and force plate system must be labeled and then exported as a C3D file, which is the input format for MOtoNMS. Markers labels MUST not include spaces (e.g. ‘LLM’ and not ‘L LM’) and duplicates of marker labels are NOT acceptable in the same markerset.