File size: 3,332 Bytes
06a8036
 
 
 
 
 
95d983b
 
06a8036
 
 
 
95d983b
 
 
 
 
06a8036
 
8f49763
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7ae43e9
8f49763
 
 
 
 
 
 
 
 
 
 
 
 
 
7ae43e9
 
8f49763
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
---
title: SYNTAX-Video Inference
emoji: 🫀
colorFrom: indigo
colorTo: blue
sdk: gradio
sdk_version: 5.49.1
python_version: '3.11'
app_file: app.py
pinned: false
license: apache-2.0
tags:
- medical-imaging
- video
- pytorch
- dicom
- cardiology
---

# 🫀 SYNTAX-Video — Multi-study Inference

**SYNTAX-Video** — это интерфейс для автоматической оценки **SYNTAX-score** по видеозаписям коронарной ангиографии.
Модель анализирует DICOM-файлы левой и правой коронарной артерии, вычисляя вклад каждой и итоговый суммарный показатель.

---

## 🚀 Возможности

* Загрузка исследований в формате **DICOM**
* Поддержка **многомодельного ансамбля** (усреднение только по моделям)
* Обработка **нескольких клипов** одной артерии как единой последовательности
* Интерфейс для **множественных исследований** в одном сеансе
* Автоматическое определение весов модели (`weights/left`, `weights/right`)

---

## 🧭 Как использовать

1. Укажите **ID исследования** и при необходимости краткое **описание**.
2. Загрузите **DICOM-файлы** для **левой** и/или **правой** артерии.
3. Нажмите **“Add study”**, затем **“Run inference”**.
4. Результаты отобразятся в виде JSON-структуры с:

   * предсказаниями по каждой модели,
   * средним значением для каждой артерии,
   * суммарным SYNTAX-score,
   * пометкой «High-risk» при превышении порога.

---

## ⚙️ Технические детали

* **Backbone:** `r3d_18` (torchvision)
* **Head:** `lstm_mean` (возможно использование других вариантов: GRU, mean, BERT-head и др.)
* **Формат входа:** `(1, S, C, T, H, W)` — пакет клипов одной артерии
* **Нормализация:** стандарт ImageNet
* **Усреднение:** только по моделям ансамбля (без усреднения по клипам внутри исследования)
* **Пороговые значения:**

  * левая артерия ≥ 15
  * правая артерия ≥ 5
  * общее исследование ≥ 22

---

## 🧩 Структура проекта

```
configs/
 └── default.yaml         # Основная конфигурация
src/syntax_pred/
 ├── model.py             # Архитектура и загрузка весов
 ├── preprocess.py        # Обработка DICOM и трансформации
 ├── data.py              # Минималистичный датасет для инференса
 ├── utils.py             # Поддержка: выбор устройства, поиск весов
app.py                    # Gradio-интерфейс
```