Ultralytics YOLO27:

Визуализация архитектур YOLO с помощью YAML2ModelGraph#

YAML2ModelGraph — это инструмент сообщества, который преобразует YAML-файлы моделей Ultralytics YOLO в SVG-диаграммы архитектуры. Он помогает документировать пользовательские модели или изучать структуру их backbone, neck и head.

Single-head YOLO architecture rendered by YAML2ModelGraph Multi-head YOLO architecture rendered by YAML2ModelGraph

Установка#

Клонируй проект и установи его зависимость PyYAML:

git clone https://github.com/WangQvQ/YAML2ModelGraph.git
cd YAML2ModelGraph
pip install pyyaml

Использование#

Сгенерируй диаграмму на основе включённого примера YOLO26:

python main.py examples/yolo26.yaml output.svg

Используй --head multi, чтобы отображать отдельные узлы head для каждого масштаба, или выбери одну из включённых тем:

python main.py examples/yolo26.yaml output.svg --head multi --theme paper_ryb

Доступны темы paper, paper_ryb, candy, dark, ocean, retro, blueprint, forest и journal. Для сгенерированного SVG не требуется установка Graphviz.

Метаданные узлов#

Измени DISPLAY_CONFIG в main.py YAML2ModelGraph, чтобы выбрать сведения, отображаемые в каждом узле:

DISPLAY_CONFIG = {
    "show_channels": True,
    "show_repeats": True,
    "show_stride": True,
    "show_args": False,
}

Имена пользовательских модулей YAML отображаются автоматически. Цвета тем, формы и типографика настраиваются в themes.py этого инструмента.

Ограничения#

YAML2ModelGraph специально выравнивает стандартные узлы head Detect. Другие узлы head для задач, такие как OBB, Pose и Segment, в настоящее время отображаются как универсальные узлы в полосе neck. Актуальные сведения о поддержке и использовании см. в репозитории YAML2ModelGraph.

Часто задаваемые вопросы#

  • Да. Любой YAML-файл модели Ultralytics, который следует формату слоев [from, repeats, module, args], визуализируется, а имена пользовательских модулей отображаются как общие узлы. Информацию о формате смотри в руководстве по конфигурации YAML-файлов моделей.

  • Нет. Инструмент напрямую записывает SVG и зависит только от PyYAML.

  • Только стандартные головы Detect. Головы OBB, Pose и Segment отрисовываются как общие узлы полосы шеи; текущую поддержку проверяй в репозитории YAML2ModelGraph.

Комментарии