
YAML

```
---
title: "Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recognition"
title_ru: "Пространственно-временные графовые сверточные сети для распознавания действий по скелету"
authors: [Yan, Xiong, Lin]
year: 2018
venue: "AAAI"
venue_tier: "A*"
doi: "arXiv:1801.07455"
tags: [skeleton_gcn, motion_representation, biomech]
relevance_to_smartrep: 3
params: "~3.1M"
flops: "~16.2 GFLOPs"
---
```

# Пространственно-временные графовые сверточные сети для распознавания действий по скелету

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

Статья предлагает фундаментальную архитектуру ST-GCN — первую модель, которая применяет графовые свертки напрямую к последовательностям координат суставов (скелетам). Модель формирует единый пространственно-временной граф, где узлами являются суставы, а ребрами — анатомические кости и временные связи между кадрами. На момент публикации получен state-of-the-art результат на крупнейших датасетах Kinetics и NTU-RGB+D.

## Проблема

До этой статьи методы распознавания действий по скелетам опирались либо на ручное конструирование признаков (hand-crafted features), либо на трансформацию 3D-координат в псевдо-изображения (сетки) для подачи в обычные CNN/RNN. Такие подходы разрушают естественную топологию человеческого тела и ограничивают способность моделей выучивать сложные пространственно-временные зависимости между су конечностями.

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

- **Графовое представление:** Впервые предложено моделировать последовательности скелетов как единый пространственно-временной граф, где ребра делятся на пространственные (кости) и временные (траектория одного сустава).
    
- **Партиционирование соседей (Spatial Configuration Partitioning):** Предложена стратегия разделения соседних узлов графа на 3 группы (корень, центростремительные, центробежные), что позволяет свертке учитывать направление физического движения.
    
- **Отказ от ручных признаков:** Создана end-to-end архитектура, способная автоматически извлекать паттерны напрямую из сырых координат `(X, Y, Z, Confidence)`.
    

## Метод (Temporal Modeling)

Архитектура состоит из 9 блоков ST-GCN, каждый из которых включает пространственную и временную свертки, за которыми следует Global Average Pooling и Softmax.

1. **Как кодируется пространственная информация (spatial)?** Пространственный граф строится на основе естественной анатомической связности тела. Для агрегации признаков используется стратегия партиционирования: соседи каждого узла (сустава) делятся на три подмножества:
    
    - _Root_: сам узел.
        
    - _Centripetal_: узлы, расположенные ближе к центру тяжести тела (отвечают за стабильность).
        
    - _Centrifugal_: узлы, расположенные дальше от центра тяжести (отвечают за подвижность, например, кисти рук).
        
        Для каждого подмножества выучиваются свои веса.
        
2. **Как моделируется время (temporal: GCN, Attention, 1D/3D Conv, SSM)?**
    
    Время моделируется через временные ребра, соединяющие один и тот же сустав в смежных кадрах. Поверх этого применяется стандартная 1D свертка (temporal 1D Conv) с фиксированным размером окна $K_t \times 1$ вдоль временной оси $T$.
    
3. **Как объединяются признаки?**
    
    Используется последовательное (alternating) применение: сначала графовая свертка по пространству кадра, затем 1D свертка по времени для каждого узла. Выходы нормализуются (Batch Normalization) и проходят через ReLU.
    

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

Модель достаточно компактна по памяти (**~3.1M параметров**), но тяжеловесна по вычислениям — **~16.2 GFLOPs** на одно видео. Основная доля вычислений приходится на временные свертки с большим окном. В оригинальном виде (без квантизации) модель трудно запустить в real-time на смартфонах, хотя она пригодна для Jetson Orin/Nano. Методы дистилляции или сжатия в статье не применяются, так как цель авторов — доказать жизнеспособность концепции.

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

|**Датасет**|**Домен (Спорт/Общее)**|**Метрика (Top-1)**|**Результат модели**|
|---|---|---|---|
|NTU RGB+D 60|Общее|Cross-Subject|81.5%|
|NTU RGB+D 60|Общее|Cross-View|88.3%|
|Kinetics-400|Общее|Top-1 / Top-5|30.7% / 52.8%|

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

На момент публикации модель значительно превосходила все предыдущие подходы (Feature Encoding, Deep LSTM, PA-LSTM, Temporal Conv). На Kinetics (крупнейшем на тот момент датасете) ST-GCN превзошла предыдущий лучший метод (Feature Enc) более чем на 11% по Top-1 Accuracy за счет сохранения физической топологии скелета.

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

- **Фиксированная топология:** Граф основан строго на анатомии. Модель с трудом захватывает неявные зависимости (например, движение противоположных рук при ходьбе), так как расстояние между ними в графе велико.
    
- **Глобальная классификация:** Требует на вход обрезанный клип (например, 300 кадров) и выдает один класс. Не умеет работать с длинными неразмеченными потоками в реальном времени.
    
- **Одинаковые веса для разных суставов:** Не используется механизм Attention, чтобы выделить наиболее важные для конкретного действия суставы.
    

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

Базовая архитектура для понимания `skeleton_gcn`. Мы можем позаимствовать логику разделения суставов (центростремительные/центробежные) для построения собственного легкого экстрактора пространственных признаков. Однако, использовать всю архитектуру целиком нецелесообразно из-за её вычислительной стоимости и ограничений.

## Gap для нас

- **Игнорируется сегментация специфичных силовых фаз:** Модель обучена выдавать один "глобальный" лейбл на видео, она не умеет сегментировать концентрику/эксцентрику/паузу.
    
- **Модель только классифицирует, но не оценивает технику:** Отсутствует AQA (Action Quality Assessment). Модель не может отличить "верное" выполнение сгибания рук от "неверного", если оба классифицируются как "сгибание рук".
    
- **Модель слишком тяжелая:** Отсутствует оптимизация или дистилляция в edge-модель (требуется снижение GFLOPs хотя бы в 3-5 раз для комфортного мобильного инференса).
    

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

- Развитие топологии графа: [[2s-AGCN]], [[CTR-GCN]].
    
- Альтернативные подходы: [[PoseConv3D]] (возврат к псевдо-изображениям с 3D CNN), [[VideoMAE]].
    

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

- Repo: [https://github.com/yysijie/st-gcn](https://github.com/yysijie/st-gcn) (также интегрировано во многие фреймворки, например, MMAction2).
    
- Pretrained: Да.
    
- Отношение к нашим данным: Работает с 2D или 3D координатами суставов, не требует RGB. Идеально стыкуется с выходом YOLO-Pose или MediaPipe в нашем пайплайне.
    

## Цитата (BibTeX)

Code snippet

```
@inproceedings{yan2018spatial,
  title={Spatial temporal graph convolutional networks for skeleton-based action recognition},
  author={Yan, Sijie and Xiong, Yuanjun and Lin, Dahua},
  booktitle={Thirty-second AAAI conference on artificial intelligence},
  year={2018}
}
```