


Ищу статью EfficientPose (Groos et al., 2021).Подтянy полный PDF статьи с arXiv.Теперь подтяну Springer-страницу для деталей по архитектуре.Получил полный текст статьи и все ключевые таблицы из GitHub README. Приступаю к анализу.

---

# Глубокий анализ: EfficientPose — Scalable single-person pose estimation

## 1. МЕТАДАННЫЕ

| Поле                      | Значение                                                                                                                                                                                                                   |
| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Оригинальное название** | EfficientPose: Scalable single-person pose estimation                                                                                                                                                                      |
| **Перевод**               | EfficientPose: масштабируемая оценка позы для одного человека                                                                                                                                                              |
| **Авторы**                | Daniel Groos, Heri Ramampiaro, Espen A. F. Ihlen                                                                                                                                                                           |
| **Аффилиации**            | Department of Neuromedicine and Movement Science + Department of Computer Science, Norwegian University of Science and Technology (NTNU), Trondheim, Norway                                                                |
| **Год публикации**        | Published 06 November 2020; Volume 51, pages 2518-2533, (2021)                                                                                                                                                             |
| **arXiv история**         | v1: 25 Apr 2020; v2: 4 Dec 2020                                                                                                                                                                                            |
| **Venue**                 | **Applied Intelligence** (Springer)                                                                                                                                                                                        |
| **Venue tier**            | **Q1 (Scimago, 2024) / Q2 (некоторые рейтинги)** — Applied Intelligence — рецензируемый журнал Springer с IF ~5.3 (2024). Не топ-tier (типа TPAMI/IJCV), но peer-reviewed Q1 journal.                                      |
| **DOI**                   | [10.1007/s10489-020-01918-7](https://doi.org/10.1007/s10489-020-01918-7); arXiv: [2004.12186](https://arxiv.org/abs/2004.12186)                                                                                            |
| **Цитирований**           | **100 citations, 16k accesses, 7 Altmetric** (по Springer на момент анализа)                                                                                                                                               |
| **Код / веса**            | **[github.com/daniegr/EfficientPose](https://github.com/daniegr/EfficientPose)** — 233 stars, 37 forks; **Apache 2.0**; реализации в Keras / TensorFlow / TFLite / PyTorch; pretrained weights для всех 8 вариантов модели |
| **Open Access**           | ✅ Да — [Springer Open Access](https://link.springer.com/article/10.1007/s10489-020-01918-7)                                                                                                                                |

**[МОЙ КОММЕНТАРИЙ]** Это **самая академически качественная** из разобранных edge pose estimation работ: peer-reviewed Q1 journal, open access, полностью открытый код в 4 фреймворках, 100 цитирований. Аффилиация авторов с **Department of Neuromedicine and Movement Science** — это особенно ценно для нас: они подходят к задаче с медицинской/movement-science перспективы, что близко к нашему фитнес-домену.

---

## 2. КЛЮЧЕВАЯ ИДЕЯ (Core Contribution)

EfficientPose решает проблему отсутствия публично доступных pose estimators, которые одновременно (a) точны, (b) вычислительно эффективны и (c) масштабируемы под разные computational budgets. Авторы предлагают **семейство из 8 моделей** (EfficientPose RT/RT Lite/I/I Lite/II/II Lite/III/IV), построенных по принципу **compound scaling** (Tan & Le, EfficientNet-2019), переработав архитектуру OpenPose: (1) **EfficientNet-backbone** с pretrained ImageNet весами вместо VGG-19; (2) **cross-resolution feature extraction** — два параллельных backbone на разных разрешениях; (3) **Mobile DenseNet detection blocks** на основе MBConv6 + Squeeze-and-Excitation + E-swish активации; (4) **bilinear upscaling** через transposed convolutions для повышения output resolution с 46×46 OpenPose до desired разрешения. Главная гипотеза: «family of scalable models that can suit various demands, enabling a trade-off between accuracy and efficiency across diverse application constraints».

**[МОЙ КОММЕНТАРИЙ]** Архитектурная новизна **умеренная**: composition of EfficientNet + MBConv + DenseNet + PAF — все известные компоненты. Но (а) **семейство моделей с явным compound scaling** — концептуально полезно для нашего проекта: можно выбрать right operating point под наш hardware budget; (б) **clinical/movement-science framing** — единственная из разобранных edge-моделей, которая явно ставит цель «markerless movement analysis в клинических и спортивных применениях».

---

## 3. АРХИТЕКТУРА И МЕТОД

### 3.1. Тип подхода

|Аспект|Классификация|
|---|---|
|**Размерность**|2D (16 MPII keypoints: top of head, upper neck, shoulders, elbows, wrists, thorax, pelvis, hips, knees, ankles)|
|**Стратегия**|**Top-down single-person** (по дизайну, но «EfficientPose incorporates part affinity fields, which would enable... multi-person HPE in a bottom-up manner» — потенциал для bottom-up)|
|**Регрессия**|**Heatmap-based** (с Part Affinity Fields для skeleton estimation + 2 passes confidence map heatmaps)|
|**Темпоральность**|**Per-frame** (нет temporal модуля)|
|**Backbone**|**EfficientNet (B0-B7)** scalable; для Lite-вариантов — **EfficientNet-Lite** (без SE, ReLU6 вместо E-swish)|

### 3.2. Описание архитектуры

**Pipeline (single-person, общий вид):**

```
Input image (high resolution H×W)
     │
     ├──────────────────┐
     │                  ▼
     │           AvgPool 2× → low-res (H/2 × W/2)
     │                  │
     ▼                  ▼
EfficientNet-Bφ       EfficientNet-B(ψ<φ)
high-level            low-level
(blocks 1-3)          (blocks 1-2)
     │                  │
     ▼                  ▼
   features            features
(C maps)              (C' maps)
     │                  │
     └────────┬─────────┘
              ▼
       Concatenate
   (cross-resolution features)
              │
              ▼
┌─────────────────────────────────────┐
│ Detection block 1 (Mobile DenseNet) │
│ → 1×1 conv                          │
│ → output: Part Affinity Fields (5a) │
└─────────────────────────────────────┘
              │
              ▼
┌─────────────────────────────────────┐
│ Detection block 2 (Mobile DenseNet) │
│ → 1×1 conv                          │
│ → output: Confidence maps coarse(5b)│
└─────────────────────────────────────┘
              │
              ▼
┌─────────────────────────────────────┐
│ Detection block 3 (Mobile DenseNet) │
│ → 1×1 conv                          │
│ → output: Confidence maps fine (5c) │
└─────────────────────────────────────┘
              │
              ▼
3× ConvTranspose (4×4, stride 2)
       (8× upscaling, bilinear)
              │
              ▼
Output: 16 keypoint heatmaps (high resolution)
              │
              ▼
argmax + sub-pixel refinement
              │
              ▼
16 keypoints (x, y)
```

**Mobile DenseNet (детально):**

- Состоит из **3 последовательных E-MBConv6(K×K, B, S)** операций
- Каждый E-MBConv6:
    - kernel size 5×5
    - expansion ratio = 6 (вместо стандартных 6 в MBConv2)
    - E-swish активация (вместо обычного swish), β=1.25
    - Squeeze-and-Excitation модуль
    - First 1×1 conv генерирует число feature maps relative to OUTPUT B вместо INPUT M (B ≤ M, экономия памяти)
    - stride S=1 (без downsampling в детекторе)
    - B = C (равно ширине high-level backbone)
- Output: 3C feature maps на блок
- Внутри блока — residual connections (DenseNet-style)

**Compound scaling** (формулы 1-3 из статьи): $$(\alpha \cdot \beta^2 \cdot \gamma^2)^{\phi} \approx 2^{\phi}$$ $$\alpha = 1.2, \beta = 1.1, \gamma = 1.15$$ $$D = \lfloor \alpha^{\phi} + 0.5 \rfloor$$

где $\phi$ — model scale ($\phi \in [0, 7]$), $D$ — число Mobile DenseNets в каждом detection block, $\alpha$/$\beta$/$\gamma$ — coefficients для depth/width/resolution.

**EfficientPose Lite модификации (для edge deployment):**

- EfficientNet backbones заменены на EfficientNet Lite
- Parallel feature extraction и cross-resolution features удалены
- Squeeze-and-excitation модули удалены
- E-swish активации заменены на ReLU6

**Размер модели и compute (полная таблица из GitHub):**

|Модель|Resolution|Params|FLOPs|Backbone scale|
|---|---|---|---|---|
|EfficientPose RT Lite|224×224|**0.40M**|0.86G|EfficientNet-Lite scaled|
|EfficientPose RT|224×224|0.46M|0.87G|B0-style|
|EfficientPose I Lite|256×256|0.59M|1.54G|—|
|EfficientPose I|256×256|0.72M|1.67G|B1-style|
|EfficientPose II Lite|368×368|1.46M|7.25G|—|
|EfficientPose II|368×368|1.73M|7.70G|B2-style|
|EfficientPose III|480×480|3.23M|23.35G|B3/B4-style|
|EfficientPose IV|600×600|6.56M|72.89G|B6/B7-style|
|**OpenPose (baseline)**|368×368|25.94M|160.36G|VGG-19|

### 3.3. Визуальные материалы из статьи

|#|Рисунок/Таблица|Содержание|Что даёт|
|---|---|---|---|
|**Fig. 1**|OpenPose архитектура|VGG-19 + 4 PAF passes + 2 confidence map passes; output 46×46|Baseline для сравнения|
|**Fig. 2**|EfficientPose архитектура|«1a) high-resolution and 1b) low-resolution inputs, 2a) high-level and 2b) low-level EfficientNet backbones combined into 3) cross-resolution features, 4) Mobile DenseNet detection blocks, 1+2 passes for estimation of part affinity fields (5a) and confidence maps (5b and 5c), and 6) bilinear upscaling»|Главная архитектурная диаграмма|
|**Fig. 3**|Composition of MBConvs|5 типов MBConv (a-e), включая E-MBConv6 с E-swish|Building blocks для Mobile DenseNets|
|**Fig. 4**|MPII single-person challenge|(a) примеры изображений, (b) определение PCKh@τ метрики|Иллюстрация датасета и метрики|
|**Fig. 5**|Training progression|EfficientPose II vs OpenPose mean error|EfficientPose сходится на 200 эпох, OpenPose требует до 400 эпох|
|**Table 1**|EfficientNet backbone composition|Архитектура первых 3 блоков B0-B7|Деталь backbone scaling|
|**Table 2**|Variants of EfficientPose|Параметры compound scaling (resolution × width × depth) для каждого варианта|Конкретизация семейства моделей|
|**Table 3**|EfficientPose vs OpenPose на MPII val|Главная сравнительная таблица — см. ниже||
|**Table 4**|State-of-the-art на MPII test|EfficientPose IV vs другие SOTA|См. ниже|
|**Table 5**|Accuracy vs число эпох|EfficientPose II vs OpenPose convergence|Speed of convergence|
|**Table 6**|Component analysis (Appendix A)|Ablation cross-resolution и upscaling|Изоляция вклада компонентов|

**[МОЙ КОММЕНТАРИЙ]** Визуальные материалы **высокого качества**: подробная архитектурная диаграмма, illustrating MBConv-варианты, training curves. Это контрастирует с MovePose и MoveNet, где визуализаций гораздо меньше.

### 3.4. Математическая формализация

Помимо compound scaling formulas (приведены выше), статья описывает:

**PCKh@τ метрика** (для оценки): $$\text{PCKh@}\tau = \frac{1}{N} \sum_{i=1}^{N} \mathbb{1}\left[|p_i^{pred} - p_i^{gt}|_2 < \tau \cdot l\right]$$

где $l = 0.6 \cdot d$, $d$ — диагональ head bounding box, $\tau \in {0.5, 0.1}$ (стандартный и строгий).

**Loss function:** Mean Squared Error (MSE) между предсказанными heatmaps и target heatmaps: $$\mathcal{L} = \sum_{t=1}^{T} \sum_{c=1}^{C} |S_t^c - S_t^{c*}|_2^2$$

где $T$ — число detection passes (3 у EfficientPose, 6 у OpenPose), $C$ — число каналов (PAF + heatmaps), $S^c$ — predicted, $S^{c*}$ — target. (Стандартный OpenPose-style MSE loss; в статье явно не приведён, но по контексту это он.)

**Sub-pixel refinement** (стандартный для heatmap): $$\hat{p}_k = \arg\max_{(x,y)} H_k(x, y) + \nabla H_k$$

(статья **НЕ ОПИСЫВАЕТ** конкретный sub-pixel refinement; используется multi-scale testing для финальной точности.)

**[МОЙ КОММЕНТАРИЙ]** Математика бедная: только compound scaling formulas и PCKh — оба заимствованы. Loss function явно не записан, специфичные training details вынесены в Appendix B.

### 3.5. Ключевые технические решения

|Категория|Приём|Эффект|
|---|---|---|
|**Архитектурный**|EfficientNet backbone (с pretrained ImageNet весами)|Foundation для compound scaling|
|**Архитектурный**|**Cross-resolution feature extraction** (high + low resolution параллельно)|Multi-scale features при низком overhead|
|**Архитектурный**|**Mobile DenseNet detection blocks** (MBConv6 + SE + E-swish)|Параметрная эффективность DenseNets + computational эффективность MBConv|
|**Архитектурный**|Modification of MBConv6: first 1×1 conv generates B feature maps (relative to output) instead of M (input)|Reduced memory and latency|
|**Архитектурный**|**Bilinear upscaling** через 3 transposed convolutions (4×4, stride 2, 8× total)|Повышение output resolution с 46×46 до требуемого|
|**Архитектурный**|Reduced detection passes: 1 PAF + 2 heatmap (vs OpenPose's 4+2)|Меньше compute|
|**Training**|SGD with momentum + cyclical learning rates|Быстрая convergence (200 epochs vs OpenPose 400+)|
|**Augmentation**|Random horizontal flipping, scaling (0.75-1.25), rotation (±45°)|Стандартный набор|
|**Inference**|Multi-scale testing|Прирост точности (но удорожание inference)|
|**Compound scaling**|$\alpha=1.2, \beta=1.1, \gamma=1.15$ для depth/width/resolution|Семейство 8 моделей|
|**Lite optimizations**|EfficientNet-Lite + удаление SE + удаление cross-resolution + ReLU6|Edge-deployment-ready варианты|
|**Inference frameworks**|Keras, TensorFlow, TFLite, PyTorch (с QNNPACK для ARM)|Multi-framework support|
|**NEPRMENИЕ:**|NAS, distillation, INT8 quantization|Упоминается как future work, но не реализовано в статье|

**[МОЙ КОММЕНТАРИЙ]** Authors честно указывают, что quantization и distillation — направления для future work. Это **серьёзный пробел** — без INT8/FP16 mobile latency для моделей этой сложности будет высоким.

---

## 4. ЭКСПЕРИМЕНТАЛЬНАЯ ЧАСТЬ

### 4.1. Датасеты

|Датасет|Размер (train/val/test)|Тип|Разрешение|Домен|Public?|
|---|---|---|---|---|---|
|**MPII Human Pose**|29K train+val (26K train / 3K val); test attempts ограничены|2D, 16 keypoints|разное|«mainly healthy adults in a wide range of different outdoor and indoor everyday activities and situations, such as **sports, fitness exercises, housekeeping activities**, and public events»|✅|

**[МОЙ КОММЕНТАРИЙ]** **Только один датасет — MPII!** Это серьёзный пробел. Нет COCO результатов, нет cross-dataset generalization. С другой стороны, MPII включает **«sports, fitness exercises»** в составе training images — это ближе к нашему домену, чем чистый COCO. Однако качество fitness samples в MPII скромное.

### 4.2. Метрики

|Категория|Используется?|Детали|
|---|---|---|
|**PCKh@0.5**|✅|Standard MPII metric|
|**PCKh@0.1**|✅ **(важно)**|«stricter PCKh@10 metric for assessing models' ability to yield highly precise keypoint estimates» — единственная edge-модель, которая использует строгую метрику!|
|**PCK@0.05/0.2**|❌|—|
|**OKS-mAP (COCO)**|❌|Не оценивается|
|**MPJPE / PA-MPJPE**|❌|Метод 2D|
|**NME**|❌|—|
|**MAE / RMSE по углам суставов**|❌ **(critical gap)**|—|
|**MPJVE / MPJAE (jitter)**|❌|—|
|**FLOPs**|✅|По всем моделям|
|**Params (M)**|✅|По всем моделям|
|**Inference Time**|❌ **(нет mobile/CPU latency!)**|Только GPU training; inference benchmarks отсутствуют|
|**Energy / power**|❌|—|
|**Cross-dataset generalization**|❌|Только MPII|
|**Occlusion accuracy**|❌|Не оценивается explicitly|

**Критически:** ❌ **нет валидации на фитнес-датасетах** (хотя MPII содержит fitness кадры); ❌ **нет угловых метрик**; ✅ **PCKh@0.1 — строгая координатная метрика**, что **значительно лучше**, чем PCK@0.2 у BlazePose; ❌ **нет mobile latency benchmark**!

### 4.3. Сравнительная таблица результатов

#### Главная таблица (из GitHub README — full version of Table 3)

|Модель|Resolution|Params (M)|FLOPs (G)|PCKh@50 (val)|PCKh@10 (val)|PCKh@50 (test)|PCKh@10 (test)|
|---|---|:-:|:-:|:-:|:-:|:-:|:-:|
|EfficientPose RT Lite|224×224|**0.40**|0.86|80.6|23.1|—|—|
|**EfficientPose RT**|224×224|0.46|0.87|82.9|23.6|84.8|24.2|
|EfficientPose I Lite|256×256|0.59|1.54|83.7|27.7|—|—|
|EfficientPose I|256×256|0.72|1.67|85.2|26.5|—|—|
|EfficientPose II Lite|368×368|1.46|7.25|87.1|30.8|—|—|
|EfficientPose II|368×368|1.73|7.70|88.2|30.2|—|—|
|EfficientPose III|480×480|3.23|23.35|89.5|30.9|—|—|
|**EfficientPose IV**|600×600|6.56|72.89|**89.8**|**35.6**|**91.2**|**36.0**|
|**OpenPose** (baseline)|368×368|25.94|160.36|87.6|22.8|88.8|22.5|

**Жирным** — лучшее в столбце.

**Ключевые сравнения с OpenPose:**

|Аспект|OpenPose|EfficientPose IV|Преимущество|
|---|---|---|---|
|Params|25.94M|6.56M|**4× меньше**|
|FLOPs|160.36G|72.89G|**2.2× меньше**|
|PCKh@0.5 (val)|87.6|89.8|**+2.2 пункта**|
|PCKh@0.1 (val)|22.8|35.6|**+12.9 пунктов!**|

|Аспект|OpenPose|EfficientPose RT|Преимущество|
|---|---|---|---|
|Params|25.94M|0.46M|**56× меньше**|
|FLOPs|160.36G|0.87G|**184× меньше**|
|PCKh@0.5 (val)|87.6|82.9|-4.7 пункта (худше)|
|PCKh@0.1 (val)|22.8|23.6|**+0.8 пункта** (даже лучше!)|

**[МОЙ КОММЕНТАРИЙ — критический разбор]**:

1. **Прирост на PCKh@0.1 у RT (-) поразителен**: даже самая лёгкая RT-модель **превосходит OpenPose по строгой метрике** при 184× меньшем compute. Это поддерживает заявление авторов о higher precision.
    
2. **EfficientPose IV — SOTA на MPII test для моделей <10M params**: 91.2 PCKh@50 / 36.0 PCKh@10 — действительно конкурентно в 2020 году.
    
3. **Compound scaling работает**: переход RT → IV даёт монотонное улучшение по обеим метрикам.
    
4. **Lite-варианты имеют небольшую potential деградацию точности** vs non-Lite: например, RT vs RT Lite — потеря 2.3 PCKh@50 (82.9 → 80.6). Это ожидаемо.
    
5. **Сравнения нечестны для нашего use case**:
    
    - Все сравниваются на **MPII**, не на COCO — мы не знаем, как EfficientPose себя ведёт на современных бенчмарках
    - **Latency на CPU/mobile не измерялась** — мы не знаем, реально ли это «edge-ready»
    - **Нет сравнения с современниками 2020-2021** (BlazePose, MoveNet, Lite-HRNet) — только OpenPose
6. **Главный вопрос для нас:** при 0.86 GFLOPs (RT Lite), будет ли модель работать <10 ms на Snapdragon 8 Gen 2? Грубая оценка: 0.86 GFLOPs / 50 GFLOPS Snapdragon CPU ≈ 17 ms (без квантизации). С INT8 — возможно ~6-8 ms. Это **в пределах нашего бюджета**, но **в статье нет прямого замера**.
    

#### State-of-the-art сравнение (Table 4, MPII test)

EfficientPose IV (6.56M params, 91.2 PCKh@50) был SOTA в 2020 для **<10M params** категории. Современные SOTA на MPII (HRNet-W48 + DARK, ViTPose-H) достигают 94+ PCKh@0.5, но при 50-300M params.

### 4.4. Ablation Study

**Component analysis (Appendix A) — реконструкция по тексту:**

В статье указывается, что **cross-resolution features и upscaling** — два ключевых компонента, дающих основной прирост на PCKh@10. Конкретные числа в таблице 6 (Appendix A) не воспроизведены в основной части, но из текста:

- Cross-resolution features: дают «improved performance on PCKh@10»
- Upscaling: «57% relative improvement in PCKh@10 on single-person MPII» в сумме с cross-resolution features

**Что НЕ аблировано:**

- ❌ Эффект E-swish vs Swish vs ReLU6
- ❌ Эффект Squeeze-and-Excitation отдельно
- ❌ Эффект числа Mobile DenseNets
- ❌ Эффект числа detection passes (1 PAF + 2 heatmap vs OpenPose 4+2)
- ❌ Эффект MBConv kernel size (5×5 vs 3×3 vs 7×7)
- ❌ Эффект EfficientNet backbone scale (B0 vs B1 vs B2)

**[МОЙ КОММЕНТАРИЙ]** Ablations есть, но полностью вынесены в Appendix A (который я не могу прочитать через web fetch). Из основного текста видны только декларативные утверждения. Это **умеренный пробел**, но лучше, чем у MovePose.

---

## 5. RESULTS & DISCUSSION

### 5.1. Основные выводы

1. **EfficientPose IV достигает SOTA на MPII test для моделей <10M params** (91.2 PCKh@50 / 36.0 PCKh@10).
2. **Compound scaling работает для pose estimation** — монотонное улучшение от RT к IV.
3. **MBConv + E-swish + cross-resolution features значительно повышают PCKh@10** — критическую метрику для высокоточных применений.
4. **EfficientPose обучается за 200 эпох**, тогда как OpenPose требует 400+ эпох — это ~2× speedup при обучении.
5. **EfficientPose RT — 460K params, <1 GFLOP** — обещает edge-deployment, **но без явных mobile benchmarks**.
6. **Контринтуитивный результат**: даже самая маленькая RT-модель **обходит OpenPose по PCKh@10** при 184× меньшем compute.

### 5.2. Качественный анализ

- В статье присутствуют качественные примеры на MPII test (Figure 4a)
- **Failure cases систематически НЕ ОБСУЖДАЮТСЯ**
- В Discussion авторы указывают на ограничения:
    - «careful consideration must be taken» для children/infants
    - «less natural environments (e.g., movement science laboratories or hospital settings)» требуют fine-tuning

**[МОЙ КОММЕНТАРИЙ]** Авторы из Department of Neuromedicine **сами осознают** проблему transfer to clinical/sport домены и предлагают **fine-tuning** как решение. Это совпадает с нашим направлением 🅰.

### 5.3. Edge-готовность (специально для SmartRep)

|Параметр|Значение в статье|Соответствие SmartRep|
|---|---|---|
|Hardware (test platform)|Только NVIDIA Tesla V100 GPU для обучения; mobile/CPU benchmarks **отсутствуют**|❌ Нет mobile/CPU замеров|
|Latency per frame|**НЕ УКАЗАНО для CPU/mobile**|❌ Главный пробел статьи|
|FPS|Декларативно «real-time on edge devices», без чисел|❌|
|Model size|**0.4-6.56 MB params** (FP32: ×4 = 1.6-26.2 MB)|✅ Все варианты <30 MB|
|FLOPs|0.86-72.89 GFLOPs (RT Lite — IV)|✅ RT/RT Lite/I — в пределах bug; II/III/IV — слишком много|
|Quantization support|TFLite формат предоставлен, но INT8 quantization упомянута только как future work|⚠️ Поддерживается через TFLite, но не валидировано|
|Mobile/embedded benchmarks|PINTO_model_zoo: «Model quantization (OpenVINO, TFLite, TensorFlow.js, TensorRT, Core ML, and ONNX)» — третье-party реализация|⚠️ Через сообщество, не от авторов|

**Вывод:** **EfficientPose RT/RT Lite — потенциально подходящие** под наш bandwidth (0.86 GFLOPs), но **отсутствие direct mobile latency benchmarks** делает невозможным прямое сравнение. Нужно профилировать самостоятельно.

---

## 6. ПРЕИМУЩЕСТВА ПОДХОДА

**Архитектурные:**

- **Семейство из 8 моделей** — можно выбрать optimal point для нашего hardware
- **Compound scaling** — концептуально элегантный подход
- **Cross-resolution features** — multi-scale без heavy parallel branches HRNet
- **MBConv + SE** — параметрная эффективность
- **Bilinear upscaling** — высокое output разрешение для precision-demanding applications

**В обучении:**

- **Быстрая convergence** (200 эпох vs OpenPose 400+)
- **Cyclical learning rates** + SGD with momentum — простой и устойчивый
- **EfficientNet ImageNet pretraining** — robust foundation

**Практические:**

- ✅ **Open Access journal paper** в Q1
- ✅ **Apache 2.0 лицензия**
- ✅ **Полный open-source код в 4 фреймворках** (Keras, TF, TFLite, PyTorch)
- ✅ **Pretrained веса для всех 8 вариантов**
- ✅ **TFLite готовый формат** для mobile
- ✅ **Сторонние quantizations** в PINTO_model_zoo (OpenVINO, ONNX, Core ML, TensorRT)
- ✅ **Clinical/movement science framing** — authors из Department of Neuromedicine
- ✅ **PCKh@0.1** — строгая precision-метрика, важная для нашего use case
- ✅ **Recommended use** в `track.py`: «Ensure there is only one person present», «full body of the person is clearly visible», «occupying a sufficient portion of the camera view» — это **точно наш сценарий тренировки**

**По метрикам:**

- SOTA на MPII test для моделей <10M params в 2020
- +12.9 пунктов PCKh@0.1 vs OpenPose (EfficientPose IV)
- Превосходство по PCKh@0.1 даже у самой лёгкой RT модели

---

## 7. НЕДОСТАТКИ И ОГРАНИЧЕНИЯ

**Архитектурные / методологические:**

1. **Базируется на устаревшей OpenPose-парадигме** (PAF + heatmaps + multiple passes); современные подходы (SimCC, regression-based) не рассматривались
2. **Heatmap-based** → требует sub-pixel refinement, output upsampling — дорогое
3. **Per-frame** — нет temporal модуля
4. **16 keypoints (MPII topology)** — нет foot keypoints, нет hand keypoints
5. **Only static input resolution** — каждая модель имеет фиксированное разрешение

**Экспериментальные пробелы:** 6. **ОТСУТСТВУЕТ MOBILE LATENCY BENCHMARK** — главный пробел для edge-paper! 7. **Только MPII** — нет COCO, нет cross-dataset 8. **Не сравнивается с современниками** (BlazePose, Lite-HRNet, MoveNet) — только OpenPose как baseline 9. **Нет угловых метрик** 10. **Нет occlusion-specific анализа** 11. **Нет energy/battery measurements** 12. **Ablations поверхностные** в основном тексте (детально только в Appendix A) 13. **NAS, distillation, quantization упомянуты только как future work** 14. **Нет COCO-SinglePerson сравнения с MoveNet/BlazePose** (но: статья от апреля 2020, MoveNet вышел в мае 2021 — авторы не могли с ним сравниться)

**Что авторы не обсудили:** 15. **Реальное mobile inference latency** 16. **Performance под INT8 квантизацией** 17. **Fitness/exercise specific evaluation** 18. **Snapdragon / Apple A-series benchmarks** 19. **Multi-person scenario** (упомянуто как future work)

**Проблемы при переносе в фитнес-домен:** 20. **MPII training set ограничен** для fitness exercises (содержит, но не доминирует) 21. **16 MPII keypoints** недостаточны для оценки техники приседаний (нужны foot keypoints) 22. **Без temporal smoothing** будет jitter на видео тренировок 23. **PAF — overkill для single-person use case** (PAF designed для multi-person grouping); вычислительно избыточно

**Возрастные ограничения работы:** 24. **2020 год** — устарела относительно SimCC (2022), RTMPose (2023). Современные edge-модели работают в той же нише с лучшими результатами.

---

## 8. РЕЛЕВАНТНОСТЬ ДЛЯ SMARTREP

|Аспект|Оценка|Комментарий|
|---|:-:|---|
|Edge-готовность (<10 мс, <30 МБ)|**3**|RT/RT Lite перспективны (0.86 GFLOPs, 0.4M params, ~1.6 MB FP32) — теоретически подходят; **но direct mobile latency benchmarks отсутствуют**|
|Точность по угловым метрикам|**2**|Нет угловых метрик; PCKh@0.1 — лучшая координатная метрика среди edge моделей, но это всё ещё координатная|
|Устойчивость к самоокклюзии|**2**|Не оценивается quantitatively; guidelines: «Avoid that the subject is occluded by other objects, even partial occlusion is discouraged» — авторы признают слабость|
|Работа с нестандартными позами|**3**|MPII содержит fitness/sports activities (включая yoga); single-person guideline ограничивает scenarios|
|Темпоральная стабильность|**1**|Per-frame, нет temporal модуля|
|Применимость к циклическим движениям|**1**|Нет periodicity priors|
|Валидация на фитнес-датасетах|**2**|MPII содержит fitness exercises как часть, но нет dedicated fitness validation|
|Робастность к truncation|**2**|«full body of the person is clearly visible» — guideline исключает truncation|
|Возможность fine-tuning|**5**|Открытый код, веса, training pipeline в Keras/PyTorch; «trait of rapid convergence suggests that exploring the use of transfer learning on the EfficientPose models on other HPE data could provide interesting results» — авторы сами рекомендуют fine-tuning|
|Доступность кода и весов|**5**|Полный repo, 4 фреймворка, pretrained веса, Apache 2.0, активно поддерживается|

**Итоговая релевантность для SmartRep: 4/5** (как кандидат для **fine-tuning на наших фитнес-данных**; но не как ready baseline).

### Конкретные элементы для заимствования

|Элемент|Что переносить|Модификации|Риски|
|---|---|---|---|
|**EfficientPose RT / RT Lite**|Готовая edge-модель с открытыми весами|Fine-tune на нашем фитнес-датасете|Не верифицирован mobile latency на Snapdragon 8 Gen 2|
|**EfficientNet backbone**|EfficientNet-B0/B1 как backbone для нашей модели|Можно заменить на MobileNetV3 или EfficientNet-Lite|Стандартная библиотека|
|**Cross-resolution feature extraction**|Концепция dual-resolution branches|Адаптировать под нашу resolution|Удваивает compute backbone — может быть избыточным|
|**Mobile DenseNet (MBConv6 + SE + E-swish)**|Detection block pattern|Использовать как замена обычным conv-блокам|Sequential MBConvs — slow на mobile inference|
|**Compound scaling**|Метод scaling architecture|Применить к нашей architecture для семейства моделей|Универсально применимо|
|**Bilinear upscaling через 3 transposed convolutions**|Pattern для high-resolution output|Применить, если используем heatmap-based head|3 transposed convolutions добавляют latency|
|**Cyclical learning rate + SGD with momentum**|Training recipe|Прямо применимо|Простой и устойчивый|
|**PCKh@0.1 как метрика**|Использовать строгую precision метрику в нашей оценке|Аналог OKS@0.5 для COCO topology|Ничего не меняет|
|**Lite optimizations recipe**|Удаление SE, замена E-swish на ReLU6, EfficientNet-Lite backbone|Применить к нашей архитектуре, если изначально heavy|Потеря 2-3 PCKh — нужно тестировать|
|**TFLite конверсия pipeline**|Готовый процесс в репозитории|Можно использовать напрямую|—|

### Привязка к направлениям новизны (🅰/🅱/🅲)

- **🅰 (fitness fine-tuning + edge):** **СИЛЬНО ПОДДЕРЖИВАЕТ** — авторы **прямо предлагают fine-tuning** для clinical/sport scenarios. EfficientPose RT — отличный кандидат для fine-tuning на нашем фитнес-датасете. **Это main applicable model для нашего проекта.**
- **🅱 (temporal-aware для циклических):** **НЕ поддерживает** — per-frame модель. Можно добавить temporal модуль поверх.
- **🅲 (биомеханическая регуляризация):** **НЕ поддерживает** — нет anatomical constraints. Можно добавить как regularization.

**Особо важная цитата для нашего проекта**: «EfficientPose tackles single-person HPE with an improved degree of precision compared to the commonly adopted OpenPose network» — и далее: «EfficientPose will provide an important foundation for the next-generation markerless movement analysis». Авторы явно нацеливаются на наш application domain.

---

## 9. СВЯЗЬ С ДРУГИМИ РАБОТАМИ

**Прямо использует:**

- **EfficientNet** (Tan & Le, ICML 2019) — backbone и compound scaling principle
- **OpenPose** (Cao et al., 2019) — архитектурная база (PAF + heatmaps)
- **MobileNetV2** (Sandler et al., 2018) — MBConv блоки
- **Squeeze-and-Excitation** (Hu et al., 2018) — attention в MBConv
- **DenseNet** (Huang et al., 2017) — connectivity pattern
- **MnasNet** (Tan et al., 2019) — оптимальный MBConv6 (5×5, expansion 6)
- **Cyclical Learning Rates** (Smith, 2017) — training schedule

**Расширяется в:**

- Сторонние quantizations в [PINTO_model_zoo](https://github.com/PINTO0309/PINTO_model_zoo/tree/main/084_EfficientPose) (community work)
- Сторонняя [TensorFlow.js implementation](https://github.com/vladmandic/efficientpose) (community work)

**Прямо сравнивается:**

- ✅ **OpenPose** (extensive comparison)
- ✅ **State-of-the-art методы на MPII** (Table 4)

**НЕ сравнивается с (важные пропуски):**

- ❌ **BlazePose** (вышел в июне 2020, EfficientPose v2 — декабрь 2020 — могли бы сравниться)
- ❌ **MoveNet** (вышел в мае 2021, EfficientPose опубликован тоже в апреле 2021 — слишком близко по времени)
- ❌ **Lite-HRNet** (Yu et al., CVPR 2021)
- ❌ **HRNet** (Sun et al., CVPR 2019) на small backbone variants

**Связь с фитнес-работами:**

- **Прямая декларация** клинико-спортивного применения в abstract и discussion
- **MPII содержит fitness exercises** (но не dedicated)
- Authors из движенческого факультета (Department of Neuromedicine and Movement Science)

---

## 10. КРИТИЧЕСКАЯ ОЦЕНКА (Peer-Review)

|Критерий|Оценка|Комментарий|
|---|:-:|---|
|Новизна|**6/10**|Composition известных приёмов, но **compound scaling for pose estimation** — действительно новое применение; cross-resolution features — умеренно новое|
|Техническая глубина|**7/10**|Подробные описания архитектуры, формулы scaling, MBConv-варианты. Loss functions явно не записаны|
|Экспериментальная строгость|**6/10**|Тщательное сравнение с OpenPose; ablations есть в Appendix A; **но только один датасет (MPII)**, нет mobile benchmarks, нет сравнения с современниками 2020|
|Ясность изложения|**8/10**|Хорошая структура, понятные диаграммы, хорошо мотивированные design choices|
|Воспроизводимость|**9/10**|Полный open-source код в 4 фреймворках, pretrained веса, training procedure описан в Appendix B; **отлично!**|
|Значимость для community|**8/10**|100 цитирований за ~5 лет, активное использование в clinical/sport contexts; существенная impact для academic open-source pose estimation|
|Релевантность edge-deployment|**5/10**|Lite-варианты есть и компактны, но **ОТСУТСТВУЕТ direct mobile latency validation** — серьёзная критическая слабость|

**Общая оценка:** **Accept** для Applied Intelligence (Q1 journal); **Weak Accept** для CVPR-tier venue. Статья методологически зрелая и open-source, но устарела относительно современных edge моделей (2023-2024).

**[МОЙ КОММЕНТАРИЙ]** Это **самая профессионально выполненная** из четырёх разобранных edge статей: peer-reviewed Q1 journal, open access, full open-source pipeline, активный maintenance, clinical framing. Главные слабости — устаревшая OpenPose-парадигма и отсутствие mobile latency benchmarks.

---

## 11. КЛЮЧЕВЫЕ ВЫВОДЫ

1. **Главный вклад:** семейство из 8 масштабируемых OpenPose-derived моделей (EfficientPose RT/I/II/III/IV + Lite-варианты), построенных на EfficientNet backbone с compound scaling, cross-resolution features и Mobile DenseNet detection blocks; SOTA на MPII test для моделей <10M params в 2020 году.
    
2. **Самое сильное техническое решение:** **compound scaling pattern для pose estimation** — позволяет flexibly выбирать operating point под hardware budget; **cross-resolution features** для эффективной multi-scale обработки.
    
3. **Главный недостаток:** **полное отсутствие mobile latency benchmarks** — ключевой критики для статьи, позиционирующей себя как «edge-ready». Также — устаревшая OpenPose-парадигма (PAF + multi-pass heatmaps), которая в 2024 уступает SimCC и regression-based подходам.
    
4. **Самый полезный элемент для SmartRep:**
    
    - **EfficientPose RT с открытыми весами** — прямой кандидат для fine-tuning на нашем фитнес-датасете (компонент: **готовая модель + веса**)
    - **Compound scaling principle** — для построения нашего семейства моделей под разные mobile chips (компонент: **architecture scaling methodology**)
    - **Mobile DenseNet building block** — пример edge-friendly detection block (компонент: **block design**)
    - **Cross-resolution feature extraction** — концепция multi-scale без heavy parallel branches (компонент: **feature extractor**)
    - **Cyclical learning rate + SGD recipe** — простой и эффективный training pipeline (компонент: **training procedure**)
    - **PCKh@0.1 metric** — пример строгой precision метрики, важной для нашего use case (компонент: **evaluation methodology**)
5. **Изучить дополнительно:**
    
    - **Appendix A** (component analysis) и **Appendix B** (optimization procedure) полной статьи
    - **PINTO_model_zoo** quantized версии (OpenVINO, TFLite, Core ML)
    - Реальные **mobile benchmarks** EfficientPose RT — нужно профилировать самим
    - **EfficientNet-Lite** specification для понимания Lite-вариантов
    - **Использование EfficientPose в реальных clinical/sport applications** — посмотреть citing papers
6. **Приоритет для нашего исследования:** **ВЫСОКИЙ** — единственная из разобранных edge моделей с (a) полностью открытым обучающим pipeline, (b) прямой clinical/sport ориентацией авторов, (c) семейством моделей разного размера. **EfficientPose RT — серьёзный кандидат для baseline** с возможностью fine-tuning. Однако для **production** возможно стоит выбрать более современные SimCC-based архитектуры (RTMPose).
    
7. **Связанные статьи, которые стоит прочитать следом:**
    
    - **EfficientNet** (Tan & Le, ICML 2019) — для понимания compound scaling
    - **OpenPose** (Cao et al., TPAMI 2019) — архитектурная база
    - **RTMPose** (Jiang et al., 2023) — современный конкурент с лучшими mobile benchmarks
    - **Lite-HRNet** (Yu et al., CVPR 2021) — параллельная academic edge линия
    - **MnasNet** (Tan et al., CVPR 2019) — оригинал MBConv6 design
    - **Fast Human Pose Estimation** (Zhang et al., CVPR 2019) — distillation для pose, упомянутый в discussion как future direction
    - Любая работа от Daniel Groos о применении EfficientPose в clinical/sport контексте — например, его последующие работы о infant motion analysis

---

## ИТОГОВАЯ КАРТОЧКА (для Obsidian-vault)

````markdown
---
title: "EfficientPose: Scalable single-person pose estimation"
title_ru: "EfficientPose: масштабируемая оценка позы для одного человека"
authors: [Groos, Ramampiaro, Ihlen]
year: 2021
venue: "Applied Intelligence (Springer)"
venue_tier: "Q1"
doi: "10.1007/s10489-020-01918-7; arXiv:2004.12186"
tags: [pose_estimation, edge, validation]
pose_dim: "2d"
strategy: "top_down"
backbone: "EfficientNet-Bφ + Cross-resolution + Mobile DenseNet (MBConv6+SE+E-swish)"
params_M: 0.46 # EfficientPose RT (вариант для edge); другие варианты: 0.40 (RT Lite) - 6.56 (IV)
flops_G: 0.87 # EfficientPose RT; другие варианты: 0.86 (RT Lite) - 72.89 (IV)
latency_ms: null # НЕ ИЗМЕРЯЛОСЬ В СТАТЬЕ для CPU/mobile! Только Tesla V100 GPU для обучения
hw_tested: "NVIDIA Tesla V100 GPU (только обучение); inference benchmarks отсутствуют"
relevance_to_smartrep: 4
direction: "A"
priority: "HIGH"
---

# EfficientPose: масштабируемая оценка позы для одного человека

## TL;DR
EfficientPose — peer-reviewed open-source семейство 8 single-person 2D pose estimation моделей от группы NTNU (Norwegian University of Science and Technology), опубликованное в Applied Intelligence (Q1 Springer journal) в 2021 году. Архитектурно — модернизация OpenPose с EfficientNet backbones, cross-resolution feature extraction, Mobile DenseNet detection blocks (MBConv6+SE+E-swish) и compound scaling по EfficientNet-принципу; даёт семейство от EfficientPose RT (0.46M params, 0.87 GFLOPs) до EfficientPose IV (6.56M params, 72.89 GFLOPs, SOTA на MPII test для моделей <10M). Главные плюсы: полностью открытый pipeline (Apache 2.0, 4 фреймворка, pretrained веса для всех вариантов), clinical/sport ориентация авторов, явная рекомендация fine-tuning для domain adaptation; главные минусы: отсутствие mobile latency benchmarks, устаревшая OpenPose-парадигма, валидация только на MPII.

## Проблема
Большинство pose estimators — либо тяжёлые (HRNet, OpenPose с 25-58M params), либо узкоспециализированные (BlazePose с приватным кодом). Нет публично доступного семейства моделей, позволяющего гибко выбирать operating point между accuracy и speed под разные edge devices, особенно для precision-demanding clinical/sport applications.

## Гипотеза / вклад
- Compound scaling (depth × width × resolution) из EfficientNet применим к pose estimation и даёт семейство масштабируемых моделей.
- EfficientNet backbone + MBConv6 detection blocks обеспечивают значительно лучший accuracy/efficiency trade-off, чем VGG-19 + plain conv blocks в OpenPose.
- Cross-resolution feature extraction даёт multi-scale benefits при низком overhead.
- Bilinear upscaling output heatmaps значительно улучшает PCKh@10 (high-precision метрику).

## Метод
Top-down single-person pipeline: input image → параллельные high-res и low-res branches с EfficientNet-Bφ и EfficientNet-B(ψ<φ) backbones → concat (cross-resolution features) → 3 detection passes (1 PAF + 2 confidence map heatmaps), каждый с Mobile DenseNet block (3× E-MBConv6 5×5 + SE + E-swish) → 3 transposed convolutions для 8× bilinear upscaling → 16 MPII keypoints. Compound scaling по формуле α^φ для depth, β^φ для width, γ^φ для resolution с α=1.2, β=1.1, γ=1.15. Lite-варианты убирают SE и cross-resolution для edge deployment. Тренировка: SGD с momentum + cyclical learning rates на 200 эпох, аугментации (flip, scale 0.75-1.25, rotation ±45°).

## Датасеты
| Датасет | Размер | Метрика | Результат |
|---|---|---|---|
| MPII Train+Val | 29K (26K/3K) | training | — |
| MPII Val | 3K | PCKh@50/PCKh@10 | EfficientPose RT: 82.9/23.6; EfficientPose IV: 89.8/35.6 |
| MPII Test | restricted | PCKh@50/PCKh@10 | EfficientPose RT: 84.8/24.2; EfficientPose IV: **91.2/36.0** (SOTA для <10M params) |

## Сравнение с SOTA
**Vs OpenPose (на MPII val):** EfficientPose IV — 6.56M params vs 25.94M (4× меньше), 72.89 GFLOPs vs 160.36 (2.2× меньше), 89.8 PCKh@50 vs 87.6 (+2.2 пункта), 35.6 PCKh@10 vs 22.8 (**+12.9 пунктов**). EfficientPose RT — даже самая лёгкая модель (0.46M params, 0.87 GFLOPs) превосходит OpenPose на PCKh@10 (+0.8). **Не сравнивается с BlazePose, MoveNet, Lite-HRNet, MovePose** — все более молодые, чем EfficientPose v1 (апрель 2020), но BlazePose (июнь 2020) мог бы быть включён в финальную версию (декабрь 2020).

## Edge-метрики
| Параметр | Значение | hw |
|---|---|---|
| Latency | **НЕ ИЗМЕРЯЛОСЬ** для CPU/mobile! | — |
| FPS | Декларативно «real-time on edge devices» | — |
| Params (RT Lite — IV) | 0.40M — 6.56M | — |
| FLOPs (RT Lite — IV) | 0.86G — 72.89G | — |
| Model size (FP32) | ~1.6 MB — ~26 MB | — |
| Quantization support | TFLite формат готов; INT8 — future work | — |

## Ограничения / слабости
- **Отсутствуют mobile latency benchmarks** — главный пробел для edge-paper
- Только MPII (нет COCO, нет cross-dataset)
- Не сравнивается с современниками (BlazePose, Lite-HRNet, MoveNet, RTMPose)
- Базируется на OpenPose-парадигме (устарела относительно SimCC/regression подходов 2022+)
- Per-frame, без temporal модуля
- 16 MPII keypoints (без foot/hand keypoints)
- Heatmap-based с upscaling — дорогое post-processing
- Нет угловых метрик
- Нет occlusion/truncation analysis
- NAS, distillation, INT8 quantization упомянуты только как future work
- Recommended use в track.py: «Avoid even partial occlusion» — авторы признают слабость

## Релевантность SmartRep
**Заимствовать:** (1) **EfficientPose RT с открытыми весами как baseline** — fine-tune на нашем фитнес-датасете (авторы прямо рекомендуют этот подход); (2) **compound scaling principle** для построения нашего семейства моделей под разные mobile chips; (3) **Mobile DenseNet block design** как edge-friendly detection block; (4) **PCKh@0.1 metric** — строгая precision-метрика для нашей оценки; (5) **cyclical learning rate + SGD recipe** для обучения. **Сравниваться:** обязательно как с peer-reviewed academic edge baseline в нашей таблице; единственная edge-модель с прямой clinical/movement-science ориентацией.

## Gap для нас
- **При этом не валидируется на фитнес-датасетах с MoCap (Fit3D, MM-Fit)** — наш ключевой gap.
- **При этом не валидируется по угловым метрикам (MAE/RMSE по joint angles)** — наш ключевой gap для SmartRep.
- **При этом не измеряется mobile/CPU latency** — главный пробел самой статьи; невозможно подтвердить «edge-ready» status.
- **При этом не использует INT8/FP16 квантизацию** — только future work.
- **При этом не сравнивается с современниками 2020-2024** (BlazePose, MoveNet, RTMPose, Lite-HRNet, MovePose).
- **При этом не предсказывает foot keypoints** (только 16 MPII, без heel/big toe) — критично для оценки техники приседаний.
- **При этом не использует periodicity priors** для циклических движений.
- **При этом не использует биомеханические constraints** на углы суставов.
- **При этом не работает в multi-person сценарии** (декларируется как future work через PAF).
- **При этом не показывает робастность к occlusion и truncation** — авторы explicitly предупреждают избегать этих условий.

## Ссылки на связанные статьи
- [[EfficientNet - Tan Le ICML 2019]] (фундамент: backbone + compound scaling)
- [[OpenPose - Cao TPAMI 2019]] (архитектурная база)
- [[BlazePose - 2020]] (параллельная edge-линия, не сравнивается)
- [[MoveNet - 2021]] (не сравнивается, появился позже)
- [[MovePose - Yu ICANN 2024]] (modern competitor, использует SimCC)
- [[RTMPose - Jiang 2023]] (modern SOTA edge с SimCC)
- [[Lite-HRNet - Yu CVPR 2021]] (academic edge baseline)
- [[MobileNetV2 - Sandler CVPR 2018]] (MBConv blocks)
- [[MnasNet - Tan CVPR 2019]] (MBConv6 5×5 expansion 6)
- [[Squeeze-and-Excitation - Hu CVPR 2018]] (attention в MBConv)

## Код / данные
- Repo: **https://github.com/daniegr/EfficientPose** (233 stars, Apache 2.0)
- Pretrained: ✅ Все 8 вариантов в Keras / TensorFlow / TFLite / PyTorch
- Quantized (community): https://github.com/PINTO0309/PINTO_model_zoo/tree/main/084_EfficientPose
- TF.js: https://github.com/vladmandic/efficientpose
- Датасет: MPII (public)

## BibTeX
```bibtex
@article{groos2021efficientpose,
  title     = {{EfficientPose}: Scalable single-person pose estimation},
  author    = {Groos, Daniel and Ramampiaro, Heri and Ihlen, Espen A. F.},
  journal   = {Applied Intelligence},
  volume    = {51},
  number    = {4},
  pages     = {2518--2533},
  year      = {2021},
  publisher = {Springer},
  doi       = {10.1007/s10489-020-01918-7},
  note      = {Open Access; arXiv:2004.12186; code at https://github.com/daniegr/EfficientPose}
}
````

```

---

**[МОЙ КОММЕНТАРИЙ — итоговый]** EfficientPose — четвёртая из разобранных edge pose estimation моделей. Подытожу позиционирование среди разобранных:

| Аспект | BlazePose (2020) | MoveNet (2021) | EfficientPose (2021) | MovePose (2024) |
|---|---|---|---|---|
| **Venue** | CVPR Workshop | TF Blog | **Q1 Journal (Applied Intelligence)** | ICANN B |
| **Peer review** | Workshop-light | Нет | **Полное rigorous** | B-tier |
| **Open source** | ✅ MediaPipe | ✅ TFLite | ✅ **4 фреймворка + community ports** | ❌ Декларация без репозитория |
| **Family of models** | 2 (Lite, Full) | 2 (Lightning, Thunder) | **8 (RT/I/II/III/IV + Lite)** | 2 (MovePose, MovePose Lite) |
| **Backbone paradigm** | Custom CNN | MobileNetV2+FPN | **EfficientNet+compound scaling** | MobileNet+U-Net |
| **Head** | Heatmap-supervised regression | 4-head CenterNet | **Heatmap (OpenPose-style)** | SimCC |
| **Strategy** | Top-down (face detector) | Bottom-up | **Top-down single-person** | Top-down (external detector) |
| **Keypoints** | 33 (extended) | 17 (COCO) | 16 (MPII) | 17 (COCO) |
| **Mobile latency benchmark** | ✅ 33ms (Pixel 2) | ✅ 25-90ms (Pixel 5) | ❌ **НЕТ!** | ✅ 90ms (Snapdragon 8+ Gen 1) |
| **Fitness validation** | Demos only | Active eval (89-95% mAP) | MPII contains some fitness, no dedicated | Нет |
| **Strict precision metric** | PCK@0.2 only | OKS-mAP only | **PCKh@0.1** ✅ | OKS-mAP only |
| **Clinical/sport framing** | Нет | Нет | ✅ **Да (Department of Neuromedicine)** | Декларативно |
| **Compound scaling** | Нет | Нет | ✅ **Да** | Нет |
| **INT8 quantization** | ✅ Готовая | ✅ Готовая | ⚠️ TFLite готов, INT8 - future | ❌ Не упомянуто |

**Ранжирование для SmartRep** (с учётом всех 4 моделей):

1. **MoveNet** — лучший выбор, если приоритет: фитнес-обучение + готовые INT8 + GPU/NNAPI delegates
2. **EfficientPose RT** — лучший выбор для **fine-tuning approach** (открытый pipeline + clinical framing + рекомендация авторов на transfer learning)
3. **BlazePose** — лучший выбор, если нужны 33 keypoints (с кистями/стопами)
4. **MovePose** — академический интерес (SimCC), но не для production

**Стратегические рекомендации для SmartRep на основе разбора всех 4 моделей:**

1. **Baseline ensemble:** в нашей benchmark-таблице должны быть все 4 модели (BlazePose, MoveNet Lightning, EfficientPose RT, MovePose), плюс RTMPose как современный SOTA.

2. **Fine-tuning кандидаты:** **EfficientPose RT** — самый перспективный (открытый код + clinical framing + быстрая convergence). Альтернатива — MoveNet Lightning (с осторожностью, т.к. training pipeline закрыт).

3. **Архитектурные принципы для нашей собственной модели:**
   - **Compound scaling** (от EfficientPose) — для семейства моделей под разные мобильные процессоры
   - **SimCC head** (от MovePose / RTMPose) — вместо heatmap для скорости и precision
   - **MobileNet/EfficientNet-Lite backbone** — стандарт edge
   - **Active-style фитнес-датасет** (от MoveNet) — собрать собственный
   - **Non-linear temporal filter** (от MoveNet) — для jitter suppression
   - **PCKh@0.1 + угловые метрики** (от EfficientPose + наш domain) — оценочная methodology

4. **Главный gap, который остаётся открытым** после всех 4 моделей: **angular accuracy на фитнес-движениях vs MoCap**. Ни одна из 4 разобранных edge-моделей не валидируется по угловым метрикам на фитнес-датасете с MoCap. **Это окно для нашей оригинальной работы.**

**Следующий приоритет для разбора:** **RTMPose** (Jiang et al., arXiv:2303.07399, 2023) — обязательно как **современный SOTA** в edge-нише с rigorous mobile benchmarks (Snapdragon 865), peer-reviewed (хотя preprint), полным MMPose-кодом, и **прямым сравнением** с BlazePose / MoveNet. После RTMPose литобзор по edge-моделям будет в основном закрыт, и можно переходить к **3D lifting моделям** (MotionBERT, VideoPose3D) или **фитнес-специфичным датасетам и работам** (Fit3D, exercise quality assessment).
```