---
title: "PhysDiff: Physics-Guided Human Motion Diffusion Model"
title_ru: "PhysDiff: Диффузионная модель движения человека с физическими ограничениями"
authors: [Yuan, Song, Iqbal, Vahdat, Kautz]
year: 2023
venue: "ICCV"
venue_tier: "A*"
doi: "2212.02500"
tags: [physics_aware, diffusion_model, motion_generation, physics_simulation, generative]
relevance_to_smartrep: 3
direction: "🅲"
---

# PhysDiff: Диффузионная модель движения с физическими ограничениями

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

PhysDiff интегрирует физический симулятор непосредственно в процесс диффузии: на каждом шаге denoising step диффузионная модель предсказывает motion, затем физический симулятор "проецирует" его на физически реалистичное пространство. Такая joint optimization обеспечивает генерацию движений без артефактов (foot skating, floor penetration) при сохранении качества диффузионного sampling. Для SmartRep: способ генерации физически корректных синтетических данных упражнений для augmentation.

## Проблема

Диффузионные модели движения (MDM, MotionDiffuse) генерируют плавные движения, но без физических ограничений — foot skating, penetration, нереалистичная инерция. Добавление физики в post-processing теряет согласованность с диффузионным distribution.

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

- **Physics projection в denoising loop:** каждый denoising step $x_{t-1} = \text{Denoise}(x_t) → x_{t-1}^{phys} = \text{PhysProject}(x_{t-1})$.
- **Learned physics guidance:** physics projection дифференцируем через trained PhysNet — не реальный симулятор на каждом шаге.
- **Contact-aware generation:** явное моделирование foot contact как управляющей переменной.

## Метод

DDPM denoising с physics projection:

$$\mathbf{x}_{t-1}^{phys} = \mathcal{P}_{phys}(\hat{\mathbf{x}}_0(x_t))$$

где $\hat{\mathbf{x}}_0$ — predicted clean motion, $\mathcal{P}_{phys}$ — physics projection (learned or simulated).

Physics projection steps:
1. Foot contact classification
2. Forward kinematics → world positions
3. Physics constraint satisfaction (IK + gravity)

Loss = диффузионный $\mathcal{L}_{diff}$ + $\lambda \mathcal{L}_{physics}$ (penetration, skating, energy).

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

```
Noise x_T → Denoising step → x̂₀
                                 ↓
             Physics projection P_phys(x̂₀) → x₀_phys
                                 ↓
             Next denoising step uses x₀_phys as guidance
                                 ↓
            ... (T steps) ... → Final motion (physically plausible)
```

## Датасеты

| Датасет | Метрика | PhysDiff | MDM |
|---|---|---|---|
| HumanML3D | FID ↓ | 0.144 | 0.544 |
| HumanML3D | Foot skating ↓ | 1.2% | 8.3% |
| HumanML3D | Floor penetration ↓ | 0.3% | 2.1% |

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

Значительно улучшает физические метрики при конкурентоспособном FID. Foot skating -85% vs MDM.

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

- Диффузионный sampling медленный (N=1000 шагов) — не real-time.
- Требует physics simulator при обучении physics guidance.
- Генерация общих движений, не fitness-специфичных.
- Conditioning на физические constraints требует специальных GT.

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

- **Synthetic data generation 🅲:** PhysDiff → физически реалистичные синтетические повторы упражнений для аугментации обучающего датасета. Сгенерировать 10000 правильных/ошибочных приседаний без реальной записи.
- **Anomaly proxy:** физически неправдоподобное движение = motion с high physics loss → отклонение от PhysDiff distribution = аномалия техники.
- **Conditioning на exercise:** text-conditioned PhysDiff ("barbell back squat") → exercise-specific generation.

## Gap для нас

PhysDiff не специфичен для упражнений и медленный. **Ниша SmartRep:** Exercise-PhysDiff — fine-tune PhysDiff на нашем корпусе упражнений + conditioning на биомеханические параметры (depth of squat, knee angle). Генерация синтетических "ошибочных техник" для training AQA head — data augmentation без реальной разметки ошибок.

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

- Repo: github.com/xuelin-chen/physdiff (условно)
- Pretrained: нет публичных для fitness

## Цитата (BibTeX)

```bibtex
@inproceedings{yuan2023physdiff,
  title={PhysDiff: Physics-Guided Human Motion Diffusion Model},
  author={Yuan, Ye and Song, Jiaming and Iqbal, Umar and Vahdat, Arash and Kautz, Jan},
  booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision},
  year={2023}
}
```
