

YAML

```
---
title: "Revisiting Skeleton-based Action Recognition: A Pose-based 3D Convolutional Network"
title_ru: "Пересмотр распознавания действий по скелету: 3D-сверточная сеть на основе поз (PoseConv3D)"
authors: [Duan, Zhao, Chen, Lin, Pang]
year: 2022
venue: "CVPR"
venue_tier: "A*"
doi: "10.1109/CVPR52688.2022.00311"
tags: [temporal_cnn, motion_representation, aqa, biomech, edge]
relevance_to_smartrep: 4
params: "~4.1M (Light-version / SlowOnly-tiny)"
flops: "~1.5-5.0 GFLOPs (в зависимости от разрешения heatmap)"
---
```


# Пересмотр распознавания действий по скелету: 3D-сверточная сеть на основе поз

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

Статья предлагает PoseConv3D — альтернативу доминирующим GCN-подходам, используя 3D-CNN поверх стека 2D-карт теплоты (heatmaps) суставов. Модель достигает SOTA-результатов за счет лучшей робастности к шуму координат и способности эффективно обрабатывать групповые действия. Главное преимущество — возможность использовать зрелую инфраструктуру и предобученные веса классических 3D-видеомоделей для данных скелета.

## Проблема

GCN-модели (ST-GCN, CTR-GCN и др.) крайне чувствительны к качеству входных координат: небольшая ошибка детектора позы (jitter) ведет к резкому падению точности. Кроме того, GCN плохо масштабируются на видео с несколькими людьми (требуют сложной агрегации графов) и имеют низкое пространственное разрешение, что мешает захвату тонких биомеханических нюансов.

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

- **Смена парадигмы:** Предложено представлять скелет не как граф векторов, а как 3D-объем (тензор) $K \times T \times H \times W$, где $K$ — количество суставов.
    
- **Робастность:** Доказано, что свертка по heatmap-ам более устойчива к ошибкам локализации суставов, чем работа с "сырыми" точками $(x, y)$.
    
- **Унификация:** PoseConv3D позволяет легко объединять данные скелета с RGB-потоком в рамках одной архитектуры (напр., SlowFast).
    
- **Эффективность:** Модель показывает высокую точность даже при низком пространственном разрешении (напр., 56x56), что критично для производительности.
    

## Метод (Temporal Modeling)

1. **Как кодируется пространственная информация (spatial)?**
    
    Координаты суставов преобразуются в 2D-карты теплоты (Joint Heatmaps). Вместо одной точки сустав представляется как Гауссово пятно. Все суставы кадра суммируются в тензор размера $K \times H \times W$. Это сохраняет пространственные отношения и относительные расстояния в привычном для CNN виде.
    
2. **Как моделируется время (temporal: GCN, Attention, 1D/3D Conv, SSM)?**
    
    Используются **3D-свертки (3D Conv)**. Кадры тепловых карт стакаются вдоль временной оси $T$. Модель применяет пространственно-временные фильтры (например, архитектура SlowOnly), которые одновременно извлекают и динамику движения, и изменение поз.
    
3. **Как объединяются признаки?**
    
    Потоки суставов (joints) и конечностей (limbs) могут обрабатываться параллельно и объединяться на уровне логитов (Late Fusion). Также PoseConv3D легко интегрируется как дополнительная модальность в мультимодальные сети.
    

## Вычислительная сложность и Edge-потенциал

Хотя 3D-свертки обычно считаются тяжелыми, PoseConv3D работает с очень малым числом входных каналов (17-25 суставов вместо 3 каналов RGB) и низким разрешением. Версия на базе **SlowOnly-tiny** имеет всего **~4.1M параметров**, что сопоставимо с GCN. Основная нагрузка для Edge — генерация самих heatmap-ов. Если использовать оптимизированные тензорные операции, модель пригодна для Jetson Orin или современных мобильных NPU.

## Датасеты и метрики

|**Датасет**|**Домен (Спорт/Общее)**|**Метрика (Top-1)**|**Результат модели**|
|---|---|---|---|
|NTU RGB+D 120|Общее|Cross-Subject|86.9%|
|Kinetics-400|Общее|Top-1 (Skeleton)|44.7%|
|FineGym|**Спорт (Гимнастика)**|Mean Class Acc|95.3%|

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

PoseConv3D превосходит GCN-лидеров (InfoGCN, CTR-GCN) на сложных датасетах, таких как Kinetics-400, где данные позы сильно зашумлены. На спортивном датасете FineGym модель показала преимущество в захвате быстрых, сложных движений за счет использования 3D-фильтров вместо разделенных пространственно-временных сверток.

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

- **Генерация Heatmap:** Требует дополнительных вычислений на GPU для отрисовки карт из координат, что может "съесть" выигрыш в скорости инференса.
    
- **Фиксированное разрешение:** В отличие от GCN, работающих с любыми координатами, PoseConv3D привязана к сетке $H \times W$.
    
- **Длинные последовательности:** 3D-CNN имеют ограниченное временное окно, что затрудняет анализ упражнений, длящихся более 5-10 секунд без разреженного сэмплирования.
    

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

Это ключевая статья для нас в плане **выбора представления данных**. Если наши детекторы (YOLO-Pose) выдают зашумленные данные, переход от координат к heatmap-ам (PoseConv3D стиль) может радикально повысить стабильность анализа техники. Архитектура SlowOnly из статьи отлично ложится на задачу классификации фаз, так как 3D-свертки хорошо "чувствуют" ускорения, важные для биомеханики.

## Gap для нас

- **Подсчет повторений:** PoseConv3D — это классификатор. В ней нет встроенного механизма Rep Counting (напр., корреляционных марок или рекуррентности).
    
- **Сегментация фаз:** Хотя 3D CNN можно адаптировать для пофреймового вывода, в статье решается только классификация целого клипа. Нам нужно "разрезать" признаки по времени для выделения эксцентрики/концентрики.
    
- **Edge Deployment:** Авторы не приводят замеров на мобильных устройствах/Jetson, фокусируясь на точности на серверных GPU.
    

## Ссылки на связанные статьи в литобзоре

- Базовые GCN (которые критикуются): [[ST-GCN]], [[CTR-GCN]].
    
- Видео-трансформеры (следующий шаг): [[VideoMAE]], [[ViViT]].
    
- Релевантно по AQA: [[FineGym]] (датасет).
    

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

- Repo: [https://github.com/open-mmlab/mmskeleton](https://github.com/open-mmlab/mmskeleton) (в составе MMAction2).
    
- Pretrained: Да (на Kinetics-400, NTU).
    
- Отношение к нашим данным: Требует 2D-координаты скелета. На входе формирует псевдо-изображение, что позволяет использовать стандартные CV-оптимизаторы (TensorRT).
    

## Цитата (BibTeX)

Code snippet

```
@inproceedings{duan2022revisiting,
  title={Revisiting skeleton-based action recognition: A pose-based 3d convolutional network},
  author={Duan, Haodong and Zhao, Yue and Chen, Kai and Lin, Dahua and Pang, Jiangmiao},
  booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
  pages={310--320},
  year={2022}
}
```