---
title: "PhysCap: Physically Plausible Monocular 3D Motion Capture in Real Time"
title_ru: "PhysCap: Физически правдоподобный захват движения из монокулярной видеозаписи в реальном времени"
authors: [Shimada, Golyanik, Xu, Pérez, Theobalt]
year: 2020
venue: "SIGGRAPH Asia"
venue_tier: "A*"
doi: "2008.08880"
tags: [physics_aware, motion_capture, real_time, physics_simulation, monocular]
relevance_to_smartrep: 3
direction: "🅲"
---

# PhysCap: Физически корректный захват движения в реальном времени

## TL;DR (≤3 предложения)

PhysCap комбинирует нейросетевую оценку позы с физическим симулятором: нейросеть предлагает "желаемую позу", физический симулятор применяет силы для её достижения с соблюдением физических ограничений (гравитация, контакт, инерция). Работает в реальном времени (~25fps). Для SmartRep: демонстрирует что physics + neural network возможно real-time, но с важными оговорками по сложности.

## Проблема

Нейросетевые pose estimators игнорируют физику: результирующие позы могут иметь foot skating, пронизывать поверхность, нарушать законы инерции. Физически корректный MoCap традиционно требует маркеров или дорогих офлайн методов.

## Гипотеза / вклад

- **Neural-physical loop:** нейросеть оценивает pose target → PD controller вычисляет joint torques → симулятор применяет физику → следующая поза.
- **Real-time physics:** упрощённый rigid body симулятор работает достаточно быстро для 25fps.
- **Foot contact:** явная классификация foot contact → переключение между динамикой и кинематикой.

## Метод

Два компонента:

1. **Pose estimator** (VNect-based): моно-видео → 3D pose prediction $\hat{\mathbf{q}}$.

2. **Physical controller:** PD-контроллер в симуляторе (PhysX/Bullet):

$$\tau_i = k_p (\hat{q}_i - q_i) - k_d \dot{q}_i$$

Симулятор применяет $\tau$ → новые $q_i, \dot{q}_i$ → физически корректная поза.

Foot contact classifier: активирует/деактивирует constraint для ступней.

### Архитектура (Mermaid)

```
Monocular video → Pose estimator → target pose q̂
                         ↓
            PD controller: τ = kp(q̂-q) - kd·q̇
                         ↓
            Physics simulator (rigid body, gravity, contact)
                         ↓
            Physically plausible pose q_physics
```

## Датасеты

| Датасет | Метрика | PhysCap | VNect |
|---|---|---|---|
| Human3.6M | MPJPE (mm) | 67.7 | 80.5 |
| TotalCapture | MPJPE (mm) | 73.2 | 97.6 |
| Real sequences | Foot skating (subjective) | Eliminated | Present |

## Сравнение с SOTA

Значительно уменьшает физические артефакты vs чисто нейросетевых методов. MPJPE конкурентоспособен при дополнительном преимуществе физической корректности.

## Ограничения / слабости

- Зависит от качества pose estimator: если исходная поза сильно ошибочна, симулятор не исправит.
- Упрощённая физика (нет деформаций, упрощённые контакты) ограничивает точность.
- Сложная интеграция физического симулятора в mobile pipeline.
- PhysX/Bullet — не мобильные библиотеки.

## Релевантность SmartRep

- **Принцип для 🅲:** PhysCap показывает, что physics-in-the-loop возможен real-time при разумной упрощении. Для SmartRep: не полный симулятор, а learned physics-check (нейросеть-верификатор биомеханики) как замена.
- **Foot contact идея:** классификация контакта ступней с полом обязательна для приседаний (heel rise = ошибка техники) и становой тяги. PhysCap даёт методологию.
- **Pipeline шаблон:** neural → physical verification — архитектурный паттерн для SmartRep.

## Gap для нас

PhysCap требует physics simulator — не работает на мобильном. **Ниша SmartRep:** Learned Physics Check — небольшая нейросеть (<1M параметров), обученная предсказывать "физически невозможно" (бинарный флаг) для каждого кадра позы, как дистиллят PhysCap-знаний без симулятора на инференсе.

## Код / данные

- Repo: vcai.mpi-inf.mpg.de/projects/PhysCap/ (не публичный)
- Pretrained: нет

## Цитата (BibTeX)

```bibtex
@article{shimada2020physcap,
  title={PhysCap: Physically Plausible Monocular 3D Motion Capture in Real Time},
  author={Shimada, Soshi and Golyanik, Vladislav and Xu, Weipeng and P{\'e}rez, Patrick and Theobalt, Christian},
  journal={ACM Transactions on Graphics (SIGGRAPH Asia)},
  year={2020}
}
```
