Skip to main content

A motion capture marker data visualization and editing tool

Project description

MStudio

License: MIT
A comprehensive toolkit for editing and managing 2D and 3D markers in motion capture and biomechanical studies. Designed to be compatible with Pose2Sim, and Sports2D, providing seamless integration for marker data processing and analysis.

Note: This is an initial release. Automated tests are minimal and only basic smoke tests are included. More comprehensive tests will be added in future updates.


📦 Installation

Step 1. Create a virtual environment using Anaconda (recommended):

conda create -n mstudio python=3.10 -y
conda activate mstudio

Step 2. Install MStudio from PyPI:

pip install mstudio

From source:

git clone https://github.com/hunminkim98/MStudio.git
cd MStudio
pip install .

🚀 Quick Start

The Easiest Way to Run MStudio (Recommended!)

Just open your terminal and run:

mstudio

That's it! This is the safest way to launch the app.

Heads up! If you try to run main.py directly (like python MStudio/main.py), you might get an error like: ModuleNotFoundError: No module named 'MStudio' To avoid this, always use the command above from the root folder.


Want to Run main.py Directly?

If you're actively developing and want to quickly test changes, you can add these lines at the very top of MStudio/main.py:

import sys, os
sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))

Now you can run:

python MStudio/main.py

📚 Documentation & Support


Features

🎯 3D Marker Visualization

  • Interactive 3D viewport with real-time marker display

  • Customizable marker colors and sizes (TODO)

  • Toggle marker labels visibility

  • Coordinate system switching (Z-up/Y-up)

  • Zoom and pan controls

🦴 Skeleton

  • Multiple pre-defined skeleton models:

    • BODY_25B
    • BODY_25
    • BODY_135
    • BLAZEPOSE
    • HALPE (26/68/136)
    • COCO (17/133)
    • MPII
  • Toggle skeleton visibility

  • Color-coded connections for outlier detection

📊 Data Analysis Tools

  • Marker trajectory visualization
  • Multi-axis coordinate plots
  • Frame-by-frame navigation
  • Timeline scrubbing with time/frame display modes
  • Outlier detection and highlighting
  • Analysis Mode:
    • Activate via the "Analysis" button.
    • Left-click markers in the 3D view to select up to 3 markers.
    • Visualize Euclidean distance (m) between 2 selected markers directly in the 3D view.
    • Visualize joint angle (°) formed by 3 selected markers (using the second selected marker as the vertex) directly in the 3D view.
    • Selected markers are highlighted (green, thicker) for clear identification.

🔧 Data Processing

  • Multiple filtering options:
    • Butterworth filter
    • Butterworth on speed
    • Median filter
  • Customizable filter parameters
  • Pattern-based marker interpolation
  • Interactive data selection and editing

💾 File Operations

  • Import TRC/C3D files
  • Export to TRC/C3D files
  • Original data preservation

Future Enhancements / TODO

  • Add skeleton lines for trunk.
  • Drag and select multiple markers (requires changing left-click logic).
  • Choose the view by clicking the plane (inspired by OpenSim GUI).
  • Customize marker size, color, and opacity.
  • Add an arc for visualizing the range of motion.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mstudio-0.1.2.tar.gz (58.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mstudio-0.1.2-py3-none-any.whl (69.2 kB view details)

Uploaded Python 3

File details

Details for the file mstudio-0.1.2.tar.gz.

File metadata

  • Download URL: mstudio-0.1.2.tar.gz
  • Upload date:
  • Size: 58.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.11.4 Windows/10

File hashes

Hashes for mstudio-0.1.2.tar.gz
Algorithm Hash digest
SHA256 a2ce6d332f114cb74e439d5dd4d77831604f90e506647ff5cb026a46f77f8b2d
MD5 a591d87e80b547a2f1723e44ca516e2b
BLAKE2b-256 2dfa8c53135ebf2916c00c7579ee88b0c438bedf05f4beb0fa21170cd16f1fdd

See more details on using hashes here.

File details

Details for the file mstudio-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: mstudio-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 69.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.11.4 Windows/10

File hashes

Hashes for mstudio-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 145306a352c9865c78b76610b6ec6754d0d14e6d334b33fc3ea36e9eb831ddd3
MD5 c87c37b1d019835e558edf934f990d7d
BLAKE2b-256 05f125ffef6ba11c4007d9eb3bbb02c3f9fa20f52d707008c50a4880027ec6c3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page