{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "ca19cafd",
   "metadata": {},
   "source": [
    "\n",
    "# Современные архитектуры для обнаружения объектов: компактный обзор по статьям ResearchGate (2024–2026)\n",
    "\n",
    "## Цель\n",
    "Сделать короткий, но технически содержательный обзор современных архитектур object detection по нескольким отраслям: **медицина, транспорт, безопасность, подводные изображения, спутниковые/remote sensing и бытовые сцены**.\n",
    "\n",
    "## Выбранные статьи (ResearchGate)\n",
    "- MedYOLO: A Medical Image Object Detection Framework: https://www.researchgate.net/publication/381242087_MedYOLO_A_Medical_Image_Object_Detection_Framework\n",
    "- CTS-YOLO: Real-Time Object Detection Algorithm Based on Improved YOLO11 in Complex Traffic Scenarios: https://www.researchgate.net/publication/393475594_CTS-YOLO_Real-Time_Object_Detection_Algorithm_Based_on_Improved_YOLO11_in_Complex_Traffic_Scenarios\n",
    "- YOLO-GTWDNet: a lightweight YOLOv8 network with GhostNet backbone and transformer neck to detect handheld weapons for smart city applications: https://www.researchgate.net/publication/382738348_YOLO-GTWDNet_a_lightweight_YOLOv8_network_with_GhostNet_backbone_and_transformer_neck_to_detect_handheld_weapons_for_smart_city_applications\n",
    "- Underwater Object Detection Based on Improved YOLOv8: https://www.researchgate.net/publication/390216231_Underwater_Object_Detection_Based_on_Improved_YOLOv8\n",
    "- Object Detection for Remote Sensing Based on the Enhanced YOLOv8 with WBiFPN: https://www.researchgate.net/publication/385339406_Object_Detection_for_Remote_Sensing_Based_on_the_Enhanced_YOLOv8_with_WBiFPN\n",
    "- Research on Indoor Object Detection and Scene Recognition Algorithm Based on Apriori Algorithm and Mobile-EFSSD Model: https://www.researchgate.net/publication/394469877_Research_on_Indoor_Object_Detection_and_Scene_Recognition_Algorithm_Based_on_Apriori_Algorithm_and_Mobile-EFSSD_Model\n",
    "\n",
    "> **Примечание.** Не у всех публикаций на ResearchGate открыт полный текст. Поэтому обзор ниже основан на доступных **аннотациях, publisher preview, figure captions и описаниях архитектур**, без выдумывания скрытых деталей.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a1283444",
   "metadata": {},
   "source": [
    "\n",
    "## 1. Что объединяет современные архитектуры\n",
    "\n",
    "Новые detector-архитектуры почти никогда не меняют задачу целиком; они **точечно усиливают слабые места классических детекторов**:\n",
    "- улучшают **multi-scale fusion** для мелких объектов;\n",
    "- добавляют **attention / transformer / state-space / prior modules** для сложного фона и окклюзий;\n",
    "- облегчают backbone/neck для edge-устройств;\n",
    "- адаптируют detector под **специальный тип входа**: 3D-томограммы, underwater-изображения, remote sensing, indoor clutter.\n",
    "\n",
    "Иными словами, современный тренд — это не «полностью новая парадигма», а **специализированная модификация сильного базового детектора** под конкретный домен.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e401e8f7",
   "metadata": {},
   "source": [
    "\n",
    "## 2. Краткий обзор по отраслям\n",
    "\n",
    "### 2.1. Медицина — **MedYOLO**\n",
    "**Идея.** MedYOLO переносит логику семейства YOLO в **3D medical imaging**. Вместо обычных 2D RGB-изображений модель работает с **NIfTI-объёмами**, то есть с нативными CT/MR-данными.\n",
    "\n",
    "**Что важно в архитектуре**\n",
    "- база — логика **YOLOv5**, но полностью переписанная под **3D-вход**;\n",
    "- входной формат — **NIfTI**, с отдельной нормализацией для CT и MR;\n",
    "- детекция выполняется **one-shot**, без sliding-window по всему объёму;\n",
    "- предусмотрены варианты **S / M / L**, как у 2D YOLO;\n",
    "- часть стандартных аугментаций и зависимостей 2D-пайплайна удалена, потому что они плохо переносятся на 3D.\n",
    "\n",
    "**Почему это ново**\n",
    "Классические YOLO/Faster R-CNN/DETR изначально заточены под 2D-фотографии. MedYOLO ценен не «новым блоком внимания», а **нативной 3D-адаптацией детектора**, что снижает потребность в voxel-accurate segmentation и уменьшает стоимость разметки.\n",
    "\n",
    "**Качество**\n",
    "По доступным данным модель достигала **mAP@0.5 = 0.861** на BRaTS, **0.715** на abdominal CT и **0.995** на heart CT, но проваливалась на очень мелких/редких структурах (LIDC).  \n",
    "**Вывод:** сильна на **средних и крупных 3D-структурах**, но слабее на очень малых объектах.\n",
    "\n",
    "---\n",
    "\n",
    "### 2.2. Транспорт — **CTS-YOLO**\n",
    "**Идея.** Это улучшение **YOLO11n** для сложных traffic-сцен: туман, плохое освещение, блюр, окклюзии и много мелких объектов.\n",
    "\n",
    "**Ключевые модули**\n",
    "- **iRMA detection layer** — слой для small-object detection, объединяющий **EMA-attention** и **inverted residual**;\n",
    "- **SaEPPF** — channel-aware multi-scale pooling;\n",
    "- **SAC3k2** — модуль динамического multi-scale fusion;\n",
    "- **Inner-ShapeloU** — регрессия bbox с учётом формы объекта.\n",
    "\n",
    "**Почему это ново**\n",
    "Вместо простого роста backbone модель усиливает именно то, что критично для дорожных сцен: **малые объекты + искажённые условия наблюдения + эффективный real-time inference**.\n",
    "\n",
    "**Качество**\n",
    "По описанию статьи прирост составил **+7.8 п.п. mAP@50** на BDD100K и **+3.2 п.п.** на KITTI относительно baseline; заявлена скорость порядка **137 FPS**.  \n",
    "**Вывод:** архитектура удачна там, где классический YOLO начинает терять мелкие и частично закрытые объекты.\n",
    "\n",
    "---\n",
    "\n",
    "### 2.3. Безопасность — **YOLO-GTWDNet**\n",
    "**Идея.** Детекция оружия в CCTV/видеопотоке требует одновременно **лёгкой** и **точной** модели. YOLO-GTWDNet решает это через облегчение backbone и усиление neck.\n",
    "\n",
    "**Ключевые модули**\n",
    "- **GhostNet backbone** — уменьшает число параметров и вычислений;\n",
    "- **C3TR neck** — C3-модуль с transformer-блоком, усиливающий глобальный контекст;\n",
    "- базовая постановка остаётся YOLOv8-like, то есть single-stage real-time detector.\n",
    "\n",
    "**Почему это ново**\n",
    "Для security-задач проблема не только в accuracy, но и в том, что оружие часто:\n",
    "- маленькое;\n",
    "- частично перекрыто рукой/телом;\n",
    "- плохо освещено;\n",
    "- должно детектироваться на edge-устройствах.\n",
    "\n",
    "Поэтому сочетание **GhostNet + transformer neck** здесь логично: первый модуль экономит вычисления, второй добавляет контекст.\n",
    "\n",
    "**Качество**\n",
    "В статье заявлено превосходство над state-of-the-art на датасете **Weapon7**, без акцента на радикально новую парадигму.  \n",
    "**Вывод:** это хороший пример **доменной оптимизации YOLOv8**, а не замены YOLO на другой класс моделей.\n",
    "\n",
    "---\n",
    "\n",
    "### 2.4. Подводные изображения — **Improved YOLOv8 for Underwater Detection**\n",
    "**Идея.** Под водой detector страдает от низкого контраста, цветовых искажений, мутности, плотных скоплений объектов и мелких целей. Поэтому архитектура строится как «улучшенный YOLOv8 + preprocessing + attention + deformable features».\n",
    "\n",
    "**Ключевые модули**\n",
    "- **CLAHE** как preprocessing для повышения локального контраста;\n",
    "- **GhostNetV2 backbone** для облегчения сети;\n",
    "- **Coordinate Attention** для акцентирования пространственно-канальных зависимостей;\n",
    "- **DCNv4** для более гибкого выделения деформированных и плохо видимых объектов.\n",
    "\n",
    "**Почему это ново**\n",
    "Подводная сцена ломает многие стандартные предположения обычного detector-а. Здесь важен не только backbone, но и вся цепочка: **предобработка → robust feature extraction → attention → flexible convolution**.\n",
    "\n",
    "**Качество**\n",
    "По доступному описанию: **Precision = 82.35%**, **Recall = 80.98%**, **mAP@0.5 = 86.21%**, при этом вычислительная сложность примерно на **15.1% ниже**, чем у базового YOLOv8s.  \n",
    "**Вывод:** хороший пример того, как **domain-specific preprocessing** даёт прирост не хуже, чем очередной «новый attention».\n",
    "\n",
    "---\n",
    "\n",
    "### 2.5. Спутниковые и remote sensing изображения — **Enhanced YOLOv8 with WBiFPN**\n",
    "**Идея.** В remote sensing главная проблема — **очень разные масштабы объектов**, мелкие цели и плотные сцены. Поэтому основная работа идёт в neck и loss.\n",
    "\n",
    "**Ключевые модули**\n",
    "- **WBiFPN** — weighted bidirectional feature pyramid network для более сильного multi-scale fusion;\n",
    "- **MHSA + EMA attention** в backbone/neck;\n",
    "- замена стандартного **C2f** на более лёгкий **C2f_Faster**;\n",
    "- замена **CIoU** на **SIoU** для лучшей bbox-регрессии.\n",
    "\n",
    "**Почему это ново**\n",
    "Вместо «сделать backbone больше» авторы усиливают именно **fusion и bbox regression**, что особенно важно для маленьких и плотно расположенных объектов на аэро- и спутниковых снимках.\n",
    "\n",
    "**Вывод:** это очень типичный и сильный современный паттерн для remote sensing:  \n",
    "**легче backbone + сильнее neck + умнее loss**.\n",
    "\n",
    "---\n",
    "\n",
    "### 2.6. Бытовые сцены / домашняя реабилитация — **Mobile-EFSSD**\n",
    "**Идея.** Для indoor-сцен важны не только детекция объектов, но и стабильность при clutter/occlusion и возможность работы на умеренных ресурсах.\n",
    "\n",
    "**Ключевые модули**\n",
    "- **MobileNetV3 + ECA attention** в backbone;\n",
    "- **FPN** для fusion multi-scale feature maps;\n",
    "- модифицированная локализационная loss;\n",
    "- **focal loss** вместо стандартной confidence loss;\n",
    "- сверху добавляется блок scene recognition на основе **Apriori + Naive Bayes**, но detector-часть — именно Mobile-EFSSD.\n",
    "\n",
    "**Почему это ново**\n",
    "Это не attempt «победить COCO любой ценой», а практическая архитектура для **indoor visual understanding**: лёгкий detector, устойчивый к перекрытиям, плюс использование **структурных priors** сцены.\n",
    "\n",
    "**Качество**\n",
    "По доступным данным на ADE20K/родственных indoor-наборах модель показывает **лучший accuracy–speed trade-off**; в расширенном описании фигурируют значения порядка **82.7% AP** для object detection и высокая устойчивость scene recognition.  \n",
    "**Вывод:** для бытовых сцен сильнее всего работают не самые большие модели, а **компактные архитектуры с хорошим multi-scale fusion и prior-aware post-processing**.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0f2fe9a3",
   "metadata": {},
   "source": [
    "\n",
    "## 3. Сильные и слабые стороны архитектур\n",
    "\n",
    "| Архитектура | Сильные стороны | Слабые стороны |\n",
    "|---|---|---|\n",
    "| **MedYOLO** | Нативный 3D-вход, меньше затрат на разметку, хорошо работает на средних/крупных структурах | Тяжелее 2D-моделей, хуже на очень маленьких и редких объектах |\n",
    "| **CTS-YOLO** | Сильна на small/occluded traffic objects, сохраняет real-time, улучшает bbox regression | Всё ещё YOLO-подобная 2D-схема, чувствительна к качеству domain data |\n",
    "| **YOLO-GTWDNet** | Лёгкая, подходит для edge-security, transformer neck добавляет контекст | Узкоспециализирована; при сильном domain shift возможна просадка |\n",
    "| **Improved YOLOv8 (underwater)** | Хорошо учитывает деградации воды, сочетает preprocessing и lightweight design | Требует доменной настройки; вне underwater-сцен часть модулей теряет смысл |\n",
    "| **Enhanced YOLOv8 + WBiFPN** | Сильный multi-scale fusion, лучше для tiny/dense targets на aerial images | Усложнение neck и attention повышает инженерную сложность |\n",
    "| **Mobile-EFSSD** | Хороший accuracy–speed balance, пригодна для indoor clutter и умеренного железа | Обычно слабее тяжёлых top-tier detector-ов на универсальных benchmark-ах |\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bf7f873e",
   "metadata": {},
   "source": [
    "\n",
    "## 4. Сравнение с классическими методами\n",
    "\n",
    "### Классический YOLO\n",
    "**Плюсы:** очень быстрый, прост в развёртывании, хорошо подходит для real-time 2D detection.  \n",
    "**Минусы:** без доменной адаптации хуже переносится на 3D medical, underwater, remote sensing small objects и cluttered indoor scenes.\n",
    "\n",
    "### Faster R-CNN\n",
    "**Плюсы:** часто силён по локализации и на небольших специализированных наборах; удобен, когда скорость не критична.  \n",
    "**Минусы:** двухстадийность делает его тяжелее; для edge и видеоаналитики обычно проигрывает современным lightweight YOLO-производным.\n",
    "\n",
    "### DETR\n",
    "**Плюсы:** глобальное set-based предсказание, отсутствие классического anchor engineering и NMS-логики у многих вариантов.  \n",
    "**Минусы:** часто требует больше данных и более сложного обучения; для маленьких объектов, плотных сцен и embedded-развёртывания доменные YOLO-модификации нередко оказываются практичнее.\n",
    "\n",
    "### Общий вывод по сравнению\n",
    "Новые архитектуры дают наибольший прирост **не просто потому, что они “новее”**, а потому что:\n",
    "1. учитывают **структуру домена**;\n",
    "2. усиливают именно **узкое бутылочное горлышко** задачи;\n",
    "3. балансируют **accuracy / FPS / parameters**, а не оптимизируют только одну метрику.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a6acfc24",
   "metadata": {},
   "source": [
    "\n",
    "## 5. Где новые архитектуры дают наибольший прирост качества\n",
    "\n",
    "- **Медицина:** когда вход 3D, а voxel-level segmentation слишком дорога. Здесь **MedYOLO** может быть полезнее классического 2D YOLO и часто практичнее тяжёлых segmentation-пайплайнов.\n",
    "- **Транспорт:** при **малых объектах, окклюзиях, плохой погоде и real-time ограничениях**. Здесь выигрывают архитектуры типа **CTS-YOLO**.\n",
    "- **Безопасность:** когда detector должен работать **на edge** и искать небольшие опасные объекты в сложном фоне. Здесь полезны **Ghost/attention/transformer-гибриды**.\n",
    "- **Подводные изображения:** при низком контрасте и оптических искажениях; максимальный выигрыш дают модели, где объединены **preprocessing + attention + flexible conv**.\n",
    "- **Спутниковые изображения:** когда объекты мелкие, плотные и многошкальные; максимальный прирост дают **BiFPN/WBiFPN + attention + улучшенная bbox-loss**.\n",
    "- **Бытовые сцены:** если важны одновременно **скорость, устойчивость к clutter и ограниченные вычисления**; здесь часто выигрывают **MobileNet/SSD/YOLO-гибриды**, а не тяжёлые универсальные detector-ы.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "fa2c7538",
   "metadata": {},
   "source": [
    "\n",
    "## 6. Примеры использования найденных решений\n",
    "\n",
    "Ниже не «готовый reproduction-код статей», а **короткие схематические примеры**, показывающие, как такие решения обычно применяются на практике.\n",
    "\n",
    "### 6.1. MedYOLO: 3D medical detection\n",
    "```python\n",
    "# Псевдокод: NIfTI -> 3D detector\n",
    "volume = load_nifti(\"scan.nii.gz\")\n",
    "volume = normalize_ct_or_mr(volume)\n",
    "\n",
    "model = MedYOLO3D(size=\"M\")  # small / medium / large\n",
    "pred_boxes = model(volume)   # 3D bounding boxes\n",
    "```\n",
    "\n",
    "### 6.2. CTS-YOLO: транспорт / сложные дорожные сцены\n",
    "```python\n",
    "# Псевдокод: YOLO11n + iRMA + SaEPPF + SAC3k2 + Inner-ShapeloU\n",
    "model = CTSYOLO(backbone=\"yolo11n\")\n",
    "model.train(data=\"bdd100k.yaml\", imgsz=640, epochs=100)\n",
    "metrics = model.val()\n",
    "```\n",
    "\n",
    "### 6.3. YOLO-GTWDNet: безопасность / оружие\n",
    "```python\n",
    "# Псевдокод: YOLOv8 + GhostNet backbone + C3TR neck\n",
    "model = WeaponDetector(\n",
    "    backbone=\"GhostNet\",\n",
    "    neck=\"C3TR\",\n",
    "    detector=\"YOLOv8\"\n",
    ")\n",
    "model.train(data=\"weapon7.yaml\")\n",
    "```\n",
    "\n",
    "### 6.4. Underwater Improved YOLOv8\n",
    "```python\n",
    "# Псевдокод: preprocessing + lightweight backbone + attention + deformable conv\n",
    "img = clahe_enhance(img)\n",
    "model = UnderwaterYOLOv8(\n",
    "    backbone=\"GhostNetV2\",\n",
    "    attention=\"CoordinateAttention\",\n",
    "    conv=\"DCNv4\"\n",
    ")\n",
    "pred = model(img)\n",
    "```\n",
    "\n",
    "### 6.5. Enhanced YOLOv8 + WBiFPN for remote sensing\n",
    "```python\n",
    "# Псевдокод: усиленный neck и bbox-loss\n",
    "model = RemoteSensingYOLOv8(\n",
    "    neck=\"WBiFPN\",\n",
    "    attention=[\"MHSA\", \"EMA\"],\n",
    "    c2f=\"C2f_Faster\",\n",
    "    box_loss=\"SIoU\"\n",
    ")\n",
    "```\n",
    "\n",
    "### 6.6. Mobile-EFSSD for indoor scenes\n",
    "```python\n",
    "# Псевдокод: лёгкий indoor detector\n",
    "model = MobileEFSSD(\n",
    "    backbone=\"MobileNetV3+ECA\",\n",
    "    neck=\"FPN\",\n",
    "    conf_loss=\"FocalLoss\"\n",
    ")\n",
    "boxes = model(image)\n",
    "scene = naive_bayes_from_detected_objects(boxes)\n",
    "```\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "09856d5b",
   "metadata": {},
   "source": [
    "\n",
    "## 7. Итоговые выводы\n",
    "\n",
    "1. **Наиболее современные практические detector-архитектуры — это не замена YOLO, а его доменные модификации.**  \n",
    "   Почти все сильные статьи используют уже известный detector-скелет и усиливают его через attention, lightweight backbone, multi-scale fusion, loss engineering и domain-specific preprocessing.\n",
    "\n",
    "2. **Главный фактор успеха — соответствие архитектуры типу данных.**  \n",
    "   Для 3D medical лучше работает нативная 3D-логика; для underwater — визуальная предобработка и деформируемые признаки; для remote sensing — усиленный pyramid fusion; для security/indoor — lightweight design.\n",
    "\n",
    "3. **По сравнению с Faster R-CNN и DETR новые решения чаще выигрывают в прикладных сценариях, где критичны latency, edge deployment и domain shift.**  \n",
    "   Faster R-CNN остаётся сильным по точности локализации, DETR — по глобальному reasoning, но специализированные современные YOLO-производные обычно практичнее в реальных отраслевых задачах.\n",
    "\n",
    "4. **Максимальный прирост новые архитектуры дают не на “обычных” изображениях COCO-типа, а там, где классический detector нарушает свои предположения:**  \n",
    "   3D-томограммы, мутная вода, спутниковая мультишкальность, cluttered indoor scenes, малые/частично закрытые цели в транспорте и безопасности.\n",
    "\n",
    "Итого: **наиболее перспективный путь развития object detection сегодня — не универсально “самая умная” архитектура, а компактная специализированная модель, которая точно знает, какие именно слабые места данного домена нужно компенсировать.**\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "name": "python",
   "version": "3.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
