Визуализация архитектур YOLO с помощью YAML2ModelGraph#
YAML2ModelGraph — инструмент сообщества, который преобразует YAML-файлы моделей Ultralytics YOLO в SVG-диаграммы архитектуры. Он помогает документировать пользовательские модели или изучать структуру их магистрали, шеи и головы.
Установка#
Клонируй проект и установи зависимость 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, чтобы отобразить отдельные узлы головы для каждого масштаба, или выбери одну из встроенных тем:
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 специально выравнивает стандартные головы Detect. Другие головы задач, например Segment, Pose и OBB, сейчас отображаются как типовые узлы в полосе шеи. Актуальную информацию о поддержке и использовании смотри в репозитории YAML2ModelGraph.
Часто задаваемые вопросы#
Да. Отображаются любые YAML-файлы моделей Ultralytics, соответствующие формату слоёв
[from, repeats, module, args], а пользовательские названия модулей отображаются как типовые узлы. Описание формата смотри в руководстве по настройке YAML моделей.Нет. Инструмент напрямую создаёт SVG и зависит только от PyYAML.
Только у стандартных голов
Detect. ГоловыSegment,PoseиOBBотображаются как типовые узлы в полосе шеи; актуальную информацию о поддержке смотри в репозитории YAML2ModelGraph.