Skip to main content
🤖AI-generated documentation curatedAI Generated
This page was drafted by an AI assistant and may contain inaccuracies.
About content generation types
🤖
AI GeneratedPage drafted entirely by AI from codebase or prompt instructions.
(e.g., docs generated from codebase analysis)
← this page
✋→🤖
AI TransformattedHuman provided raw material; AI restructured it into a different format.
(e.g., livestream → blog post, meeting notes → docs)
Human GeneratedPage written entirely by a human author.
(e.g., hand-written tutorial)
More info about content generation types ↗
AI GENERATED DOCS

A robot wrote these docs based on the code in the freemocap/ repo. Expect jank.

We'll get to human curating and cleaning them up "soon"

For now, they are significantly better than nothing, which is the alternative option :)

FreeMoCap

FreeMoCap is a free-and-open-source markerless motion capture system — no reflective markers, no special suits, no expensive hardware. Point USB cameras at a person, record synchronized video, and the software produces 3D skeleton data you can use in Blender, biomechanics analysis, game development, or research.

Architecture at a Glance

FreeMoCap is a stand-alone desktop application with a React/TypeScript frontend (Electron) that talks to a Python backend (FastAPI) over REST and WebSocket. Multiple USB cameras feed synchronized frames into processing pipelines that run state-of-the-art pose detection, multi-view triangulation, and skeleton filtering — all on consumer hardware.

FreeMoCap does not require an internet connection or a login to work (and never will!). We access the internet to download MediaPipe and RTMPose models that SkellyTracker uses, but once they are downloaded FreeMoCap will happily run offline and air-gapped for as long as you care to run it.

CapabilityDescription
Multi-camera recordingSynchronized video from 2+ USB cameras
Realtime 3D skeletonLive 3D pose estimation streamed to the viewport
Camera calibrationAutomatic ChArUco-based intrinsic/extrinsic calibration
Post-processingOffline mocap pipeline with highest-accuracy settings
Blender exportOne-click export to .blend with skeleton mesh, camera frustums, lighting
ExtensibleModular pipeline architecture — swap detectors, filters, exporters

Quick Start

  1. Install: Clone the repo and install dependencies (see Contributing)
  2. Connect cameras: Plug in 2+ USB cameras
  3. Calibrate: Wave a printed ChArUco board in front of the cameras
  4. Record: Press record and perform your movement
  5. Process: Run the mocap pipeline to get 3D skeleton data
  6. Export: Open in Blender or analyze the .npy/.parquet data

Documentation Structure

  • Architecture — How the system works under the hood. Start with the Architecture Overview for the big picture, then drill into the frontend, API boundary, or backend sections.
  • API Notes — Working notes on the evolving API design.
  • Roadmap — What we're building next, pulled live from GitHub issues.