

---

## title: "TransRAC: Encoding Multi-scale Temporal Correlation with Transformers for Repetitive Action Counting" title_ru: "TransRAC: Кодирование многомасштабной временной корреляции с помощью трансформеров для подсчета повторяющихся действий" authors: [Hu, Xu, Shi, Mian, Xiao] year: 2022 venue: "CVPR" venue_tier: "A*" doi: "10.1109/CVPR52688.2022.01869" tags: [rep_counting, video_transformer, motion_representation, edge, aqa] relevance_to_smartrep: 5 params: "~33M" flops: "~25.6 GFLOPs (на сегмент)"

# TransRAC: Кодирование многомасштабной временной корреляции с помощью трансформеров для подсчета повторяющихся действий

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

Статья представляет TransRAC — архитектуру на основе трансформеров, которая значительно улучшает точность подсчета повторений за счет введения модуля многомасштабной временной корреляции (MTC). В отличие от RepNet, модель строит многослойные корреляционные карты, которые затем обрабатываются трансформером для захвата долгосрочных зависимостей. Метод установил новый SOTA на датасетах Countix и UCFRep, особенно в сценариях с переменным темпом движения.

## Проблема

Авторы решают проблему «многомасштабности» повторений: одно и то же упражнение может выполняться с разной скоростью, а циклы могут иметь разную длительность внутри одного видео. Традиционные методы (как RepNet) часто ограничены фиксированным временным окном или локальными свертками, что не позволяет эффективно сопоставлять кадры, разнесенные далеко во времени, или адаптироваться к резким изменениям ритма.

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

- **Multi-scale Temporal Correlation (MTC):** Предложен механизм построения пирамиды временных корреляций, что позволяет модели «видеть» повторы на разных частотах одновременно.
    
- **Transformer-based Counting:** Впервые предложено использовать Transformer Encoder для регрессии плотности повторений (density map) на основе карт самоподобия.
    
- **Индуктивное смещение времени:** Трансформер позволяет выучивать глобальный контекст видео, что делает модель устойчивой к кратковременным окклюзиям и шуму.
    

## Метод (Temporal Modeling)

1. **Как кодируется пространственная информация (spatial)?**
    
    Используется 2D CNN (обычно **ResNet-50**) для извлечения визуальных признаков каждого кадра. На выходе получается последовательность векторов признаков $f \in \mathbb{R}^{T \times C}$.
    
2. **Как моделируется время (temporal: GCN, Attention, 1D/3D Conv, SSM)?**
    
    Используется гибридный подход:
    
    - **MTC Module:** Вычисляет корреляционные матрицы $N \times N$ на нескольких масштабах (через разное временное разрешение или dilation).
        
    - **Transformer Encoder:** Полученные корреляционные карты (после проекции) подаются в стандартные блоки трансформера. Механизм **Self-Attention** позволяет сопоставлять каждый временной шаг со всеми остальными, выявляя периодические паттерны независимо от их локальной связности.
        
3. **Как объединяются признаки?**
    
    Модель предсказывает пофреймовую «плотность повторений» (repetition density). Сумма значений по всей временной оси дает итоговое количество циклов.
    

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

Для проекта SmartRep модель в оригинальном исполнении **избыточна**:

- **Params:** ~33M.
    
- **Complexity:** Основное узкое место — вычисление $O(N^2)$ корреляций и последующий трансформер. На сегменте в 64 кадра это допустимо, но при росте окна до 256+ кадров сложность растет квадратично.
    
- **Edge-адаптация:** Для Jetson Orin NX потребуется замена ResNet-50 на нашу **SOFIA (DCN)** и, возможно, замена стандартного Attention на **Mamba (SSM)** для достижения линейной сложности при сохранении глобального контекста.
    

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

|**Датасет**|**Домен**|**Метрика**|**Результат модели**|
|---|---|---|---|
|Countix|Общее (фитнес/быт)|OBO (Off-By-One)|0.912|
|Countix|Общее|MAE|0.39|
|UCFRep|Спорт/Общее|OBO|0.985|

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

TransRAC превосходит [[RepNet]] на ~2-4% по метрике OBO на сложных датасетах. Основной выигрыш наблюдается в видео с «нестационарными» повторами (где атлет ускоряется или замедляется в процессе), так как многомасштабный модуль корреляции лучше подстраивается под изменение периода.

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

- **Требовательность к данным:** Трансформеры требуют больше данных для обучения, чем CNN-аналоги.
    
- **Границы циклов:** Как и RepNet, модель может ошибаться на 0.5–1 повторение, если видео обрывается на середине фазы.
    
- **Отсутствие биомеханики:** Модель считает «визуальное сходство», не понимая, что в приседании важен угол в колене, а не просто повторяющаяся картинка.
    

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

**Оценка: 5.** Это прямая конкурентная архитектура для нашего модуля подсчета.

- **Заимствование:** Идея многомасштабных корреляций (MTC) крайне полезна для упражнений с длинными фазами (напр. становая тяга).
    
- **Применение:** Использование трансформера/Mamba для регрессии плотности (density) вместо прямой классификации периода кажется более стабильным подходом для SmartRep.
    

## Gap для нас

- **Backbone Efficiency:** TransRAC не оптимизирован под Edge. Наша ниша — внедрить аналогичную MTC-логику в **MambaVision** с линейной сложностью.
    
- **Phase Segmentation:** Статья не выделяет фазы **эксцентрики** и **концентрики**. Она считает «цикл целиком». Для анализа техники нам нужно разделить выход плотности на две составляющие.
    
- **AQA Integration:** Модель не умеет отличать «плохое» повторение от «хорошего». В SmartRep мы должны подавать признаки из такого временного модуля в классификатор ошибок.
    

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

- Прямой предшественник: [[RepNet]].
    
- Скелетная альтернатива: [[PoseRAC]].
    
- Архитектурная база: [[ViT]], [[TimeSformer]].
    

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

- Repo: [https://github.com/huxu033/TransRAC](https://www.google.com/search?q=https://github.com/huxu033/TransRAC&authuser=1)
    
- Pretrained: Да.
    
- Отношение к нашим данным: Работает с RGB. В SmartRep мы можем подавать на вход MTC-модуля признаки из **SOFIA**, обученной на скелетах.
    

## Цитата (BibTeX)

Code snippet

```
@inproceedings{hu2022transrac,
  title={Transrac: Encoding multi-scale temporal correlation with transformers for repetitive action counting},
  author={Hu, Xu and Xu, Jianglong and Shi, Chenchen and Mian, Ajmal and Xiao, Zhen},
  booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
  pages={19013--19022},
  year={2022}
}
```

---

**Критическое замечание:** Модуль MTC — это именно то, что нам нужно добавить поверх нашего бэкбона SOFIA. Это позволит модели считать повторения даже при экстремально медленном темпе (Time-to-Under-Tension тренировки).

**Следующий шаг:** Изучить [[PoseRAC]], чтобы увидеть, как подобные идеи переносятся на чистые скелеты.