Files
grant_kachalka_Egor/SmartRep/0_prompts/Промпт для pose estimation mesh recovery biomech-aware статей.md
2026-05-04 09:49:45 +03:00

19 KiB
Raw Blame History

Структурные решения для pose_method-промпта (что отличает от A и B):

  1. Direction по умолчанию НЕ нулевой. Pose papers почти всегда 🅱 (биомех-aware pose), но иногда чисто backbone-роль для 🅲. По умолчанию — 🅱, явное обоснование требуется только если иначе.
  2. Ключевое различие в разделе 4. Pose papers оцениваются метриками положений и углов (MPJPE / PA-MPJPE / PVE / joint angle error), а не классификации. Дополнительная ось — физическая правдоподобность (jitter, foot sliding, penetration), которую AQA/SSL-шаблоны не покрывают.
  3. Body model — обязательное поле. SMPL / SMPL-X / SMPL+H / GHUM / STAR / mesh-free / только joints. От этого зависит, получим ли мы углы в суставах (нужны для 🅱) или только координаты.
  4. Камера и калибровка — обязательное поле. Многие SOTA-pose требуют known intrinsics или weak perspective с предположениями, которые не выполняются в зале с телефоном.
  5. Athletic / extreme pose evaluation — отдельная подсекция. Большинство pose-методов оценены на H36M (everyday actions); их деградация на глубоких приседах / арках жима — главный риск для нас. Если этой проверки нет, фиксируем явно.
  6. Stability across reps — отдельный пункт. Jitter в pose может быть ошибочно интерпретирован downstream-головой как изменение техники между повторами. Это уникальная для periodic-задач проблема, в общих pose-papers её обычно не меряют.
  7. Раздел 6 — pose-specific релевантность. Не «применим ли AQA-метод» и не «годится ли как pretraining», а «можно ли вообще получить из этого pose-выхода стабильные joint angles на штанговом видео с окклюзиями».

📑 Дополнения к тег-словарю для pose-papers

# Выход
joint_regression, smpl_fitting, smplx_fitting, ghum_fitting, mesh_recovery, 
ik_solver, dense_pose, 2d_pose, 3d_pose

# Камера и сцена
single_view, multi_view, monocular, multi_camera, known_intrinsics, in_the_wild

# Приоры
physics_aware, biomech_aware, kinematic_prior, temporal_prior, contact_aware

# Обучение pose
synthetic_pretraining, weak_supervision, pseudo_labels

📝 ВАРИАНТ C — Промпт для pose estimation / mesh recovery / biomech-aware статей

ПРОМПТ ДЛЯ АНАЛИЗА POSE-СТАТЬИ (paper_type: pose_method)

Ты — старший научный рецензент с экспертизой в 2D/3D human pose estimation, 
parametric body models (SMPL/SMPL-X/GHUM), inverse kinematics и 
biomechanics-aware pose. Твоя задача — подготовить разбор статьи для 
проекта SmartRep как кандидата на pose-стадию pipeline'а перед AQA/error-головой.

ВАЖНО-1: если статья ЯВНО про AQA / fine-grained errors / scoring движений 
— ОСТАНОВИСЬ и сообщи: «AQA-типа, рекомендую AQA-промпт». Pose-выход в AQA-статьях 
обычно вспомогательный.

ВАЖНО-2: если статья про чистый SSL pretraining без явного pose-output 
(joint coords / SMPL params / mesh) — ОСТАНОВИСЬ и переключись на 
SSL-backbone промпт.

ВАЖНО-3: для нашей задачи критичны три риска, которые нужно явно 
проверить в каждой pose-статье: 
  (a) деградация на атлетических / экстремальных позах, 
  (b) поведение при окклюзии (штанга закрывает кисти/плечи), 
  (c) jitter между фреймами в периодических движениях. 
Если статья не отвечает на какой-то из трёх — фиксируй как «НЕ ОЦЕНИВАЕТСЯ» 
и переноси в Gap.

### 1. МЕТАДАННЫЕ (YAML)

```yaml
title: "<оригинальный заголовок>"
title_ru: "<перевод>"
short_name: "<canonical акроним>"
authors: [<фамилии>]
year: <YYYY>
venue: "<conference/journal>"
venue_tier: "<A*/A/B/Q1/Q2>"
doi: "<link>"
code: "<github>"
paper_type: "pose_method"   # обязательно
tags: [<из фикс. словаря, минимум 4 — обязательны: тип выхода, body model, камера, парадигма обучения>]
relevance_to_smartrep: <1-5>
direction: "<🅰 / 🅱 / 🅲>"   # default 🅱 для pose. Если иначе — обоснуй в TL;DR.
status: "reviewed"
```

### 2. CORE CONTRIBUTION (TL;DR)

3 предложения. **Первое** — какую pose-задачу решает: 2D keypoints / 3D joints 
(absolute / root-relative) / SMPL parameters / full mesh; single-view 
или multi-view; в реальном времени или offline. **Второе** — основной механизм 
(regression / optimization-based fitting / IK / hybrid). **Третье** — обоснование 
`direction` (🅱 если pose-метод, 🅲 если синтетический pretraining backbone, 🅰 если 
включает явный biomech error head).

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

- **Выход модели:** {2D-keypoints / 3D-joints / SMPL θ,β / SMPL-X / mesh vertices 
  / dense correspondences}. **Обязательно укажи, есть ли joint angles на выходе** 
  (или их нужно вычислять самостоятельно).
- **Body model:** SMPL / SMPL-X / SMPL+H / GHUM / STAR / skeleton-only / none. 
  Версия (neutral / gendered), число вершин, число суставов.
- **Pipeline:**
  - Backbone (ResNet / HRNet / ViT / Mamba / GCN);
  - Голова (regression / heatmap / parametric / IK / optimization);
  - Если optimization-based — solver (LBFGS / Adam) и сколько итераций.
- **Камера:**
  - Модель: weak perspective / full perspective / orthographic;
  - Требуются ли known intrinsics (focal length, principal point)?
  - Калибровка: автоматическая / нужна заранее / отсутствует.
- **Кинематические и физические приоры:**
  - Joint limits (анатомические границы углов)?
  - Bone length constraints?
  - Temporal smoothness?
  - Contact / penetration / foot sliding?
  - Physics simulation в loop?
- **Loss-функции в LaTeX** ($\mathcal{L} = \dots$) с разбором по слагаемым: 
  3D joint loss, 2D reprojection, SMPL params, regularization, biomech priors.
- **Mermaid-диаграмма:** Image / Video → Backbone → {Heatmaps / Features} → 
  {Regression / IK / Optimization} → {Joints / SMPL / Mesh}.

### 4. POSE-ЭКСПЕРИМЕНТЫ

- **Training datasets:** H36M, MPI-INF-3DHP, 3DPW, AMASS, AGORA, BEDLAM, 
  COCO, MPII, собственные. Полностью / частично / только pretraining?
- **Evaluation datasets:** H36M, 3DPW, EMDB, AGORA-test, ASPset (athletic), 
  SportsPose, fitness-specific. **Особо отметь, есть ли out-of-distribution 
  атлетический бенчмарк.**
- **Pose metrics (обязательно):**
  - MPJPE (mean per joint position error, mm)
  - PA-MPJPE (Procrustes-aligned, mm) — снимает absolute scale/rotation
  - PVE / MPVPE (per-vertex error, для mesh-методов)
  - PCK @ threshold (Percentage of Correct Keypoints)
  - Joint angle error (degrees, per-joint) — **редкая, но критичная для нас метрика**
- **Stability / temporal metrics (если есть):**
  - Jitter / acceleration error
  - Foot sliding (mm)
  - Smoothness (e.g., MPJPE first-derivative)
- **Robustness тесты (если есть):**
  - Окклюзия: synthetic mask-out, real occlusion datasets (3DOH, OCHuman);
  - Cropping / truncation;
  - Adversarial / compression artifacts.
- **Athletic / extreme pose evaluation:** делается ли отдельная оценка на 
  глубоких приседах, мостах, инверсиях, олимпийских позициях? Если нет — 
  это серьёзный риск, явно фиксируй.
- **SOTA-таблица:** воспроизведи ключевую.
- **Ablation:** какие компоненты критичны, какие — косметические.

### 5. EDGE FEASIBILITY (для SmartRep)

| Параметр | Значение |
|---|---|
| Параметры (M) | <число / НЕ УКАЗАНО> |
| GFLOPs / image | <число / НЕ УКАЗАНО> |
| Latency + железо | <число + device / НЕ УКАЗАНО> |
| FPS на видео | <число / НЕ УКАЗАНО> |
| Optimization-loop на инференсе | <да/нет, сколько итераций> |
| Известные intrinsics / калибровка нужна на инференсе | <да/нет> |
| Квантизация / дистилляция | <обсуждается?> |
| Mobile / edge deployment | <да/нет/не обсуждается> |

**Качественный fallback (если ≥4 НЕ УКАЗАНО):** оценка `lightweight / medium / 
heavy / unknown` + мотивация. Особо отметь два killer-фактора для edge: 
(i) optimization-loop на инференсе (даже 510 итераций LBFGS убивают real-time), 
(ii) требование известных intrinsics (в зале с произвольным телефоном — 
несбыточная роскошь).

### 6. РЕЛЕВАНТНОСТЬ ДЛЯ SMARTREP (pose-pipeline применимость)

- **Атлетический domain transfer:** обучен ли метод на чём-то кроме H36M-style 
  бытовых движений? Если нет — насколько сильно деградирует на глубоких 
  приседах, плотном бенче, тяге с округлой спиной (можно судить по 
  атлетическим бенчмаркам или их отсутствию).
- **Barbell-occlusion устойчивость:** при наличии гриф закрывает кисти, 
  предплечья, иногда плечи и подбородок. Метод оценен на real occlusion? 
  Какова деградация MPJPE при mask-out 3050% видимости?
- **Углы vs координаты:** даёт ли метод joint angles на выходе напрямую 
  (через SMPL θ или явный IK), или только координаты, из которых углы 
  считаются постфактум (с накоплением ошибки)? Для направления 🅱 первое 
  принципиально важно.
- **Body-shape нормализация:** даёт ли β-параметры SMPL (или эквивалент)? 
  Без них одинаковый угол в колене на разных телах = разная биомеханика.
- **Камерные требования:**
  - Монокуляр side-view (наш случай) поддерживается?
  - Нужна ли калибровка intrinsics?
  - Нужен ли ground-plane?
- **Темпоральная стабильность:** есть ли явный smoothing / temporal prior? 
  Какой jitter на статичной части движения (нижняя точка приседа)?
- **Совместимость с downstream AQA-головой (направление 🅰):** pose-выход 
  стабилен и плотен по фреймам? Дискретизация по времени совпадает с 
  частотой нашего видео (≥30 FPS)?
- **Real-time бюджет:** успевает ли в наш taraget (~30 FPS на mobile)?

### 7. GAP ДЛЯ НАС (НИША НОВИЗНЫ — самое важное поле)

24 конкретных гэпа в формате:
- **Гэп N:** [что не делает или плохо делает статья] → [как это становится 
  новизной SmartRep].

Типичные формы для pose-papers:
- Не оценен на атлетических позах → ввести silver-standard атлетический 
  бенчмарк + бенч-дека-присед domain adaptation.
- Не оценена устойчивость к barbell-occlusion → ввести синтетический 
  barbell-mask augmentation + бенч.
- Optimization-loop на инференсе делает edge невозможным → дистилляция 
  в feedforward student.
- Joint angles только постфактум → явная angle-regression head поверх 
  pose-backbone.
- Нет temporal prior → cycle-aware smoothing для периодических движений.

### 8. ВЫВОД ДЛЯ ЛИТОБЗОРА

- Приоритет: **ВЫСОКИЙ / СРЕДНИЙ / НИЗКИЙ** + одна строка обоснования.
- Место в SmartRep-pipeline: какой компонент (pose backbone / SMPL-fitting 
  step / biomech feature extractor / baseline для сравнения).
- Прямой вклад в направления: обычно 🅱 ненулевой, 🅰 косвенный (pose 
  как вход), 🅲 нулевой. Если иначе — обоснуй.
- 35 связанных статей для следующего разбора с краткой ремаркой почему.

---

ИНСТРУКЦИИ AI:
- Не выдумывай данные. «НЕ УКАЗАНО» / «НЕ ОЦЕНИВАЕТСЯ» — допустимые ответы.
- Особо аккуратно с интерпретацией МPJPE: это среднее по 1417 суставам, 
  а ошибки на extremities (запястья, лодыжки) часто в 23× выше; если 
  per-joint breakdown есть — обязательно его процитируй.
- Если в статье есть только PA-MPJPE без MPJPE — это сигнал, что absolute 
  pose плохой; явно отметь.
- Разделяй факты и [КОММЕНТАРИЙ РЕЦЕНЗЕНТА].
- Формулы — LaTeX.
- Перед финальным артефактом — короткий блок структурных решений.
- После артефакта — мета-комментарий о работе шаблона.

🧭 Обновлённый селектор (с учётом всех трёх шаблонов)

Признаки в abstract / methods Шаблон
Spearman / Kendall / AUROC / per-error F1 / regression head на оценку движения A (AQA)
Named error taxonomy (butt-wink, hitch, valgus и т.п.) A (AQA)
Reconstruction error / distance-to-prototype как anomaly score A (AQA)
MPJPE / PA-MPJPE / PVE / SMPL-fitting / IK / mesh recovery C (pose)
Joint angles / biomech priors / kinematic constraints как первичный выход C (pose)
Pretext task (masked / contrastive / cycle / pred coding) + linear/finetune eval на классификации B (SSL backbone)
Linear eval / KNN на NTU/Kinetics/ImageNet с Top-1 как главной метрикой B (SSL backbone)
Гибрид: pose + AQA в одной статье (как AIFit) C primary, A secondary; в frontmatter paper_type: hybrid, два direction-тега
Гибрид: SSL pretraining + downstream pose B primary, C secondary
Dataset paper (sampling protocol / annotation methodology — главное) существующий 14-секционный dataset-шаблон

Мета-комментарий

Что специфично для C по сравнению с A и B:

  • Три «hard checkpoints» (атлетические позы, окклюзия, jitter) вынесены в верхнюю часть промпта, чтобы AI явно их искал, а не упускал в потоке стандартных pose-метрик.
  • Раздел 5 расширен двумя edge-killer полями (optimization loop, intrinsics requirement) — без них pose-метод можно ошибочно классифицировать как edge-friendly по числу параметров.
  • Раздел 6 разворачивает «применимость» через монокуляр-side-view-фильтр SmartRep, а не через generic pose-quality.

Что закрыто полным трио A/B/C:

  • Spearman/AUROC больше не появляются автоматически в SSL- и pose-карточках (где их нет).
  • MPJPE/PA-MPJPE больше не появляются в AQA- и SSL-карточках.
  • direction без default во всех трёх (B и C переопределяют через «обычно X, но обоснуй»).
  • Edge fallback унифицирован.

Что ещё в очереди (не сейчас, но имеет смысл записать):

  • Возможный четвёртый шаблон synthesis_method (для NeRF / 3DGS / SMPL-rendering / data augmentation статей) — тебе он может понадобиться при разборе FLEX и пайплайнов синтеза тренировочных данных. Решать стоит после FLEX-карточки, чтобы понять, лезет ли FLEX в существующие или нужен отдельный.
  • Миграция старых карточек: добавить paper_type в frontmatter Fit3D / FLAG3D / Fitness-AQA / H36M / AIFit. Это пять минут ручной работы или один прогон через скрипт.

Прагматичный следующий шаг: прогнать новый pose_method-промпт на AIFit. У тебя уже есть AIFit-карточка по старому общему шаблону — это даст прямую A/B-проверку, что именно прибавляет специализированный pose-промпт. Если ОК — запускаем?