Ultralytics YOLO27 :

Visualiser les architectures YOLO avec YAML2ModelGraph#

YAML2ModelGraph est un outil communautaire qui convertit les fichiers YAML des modèles Ultralytics YOLO en diagrammes d’architecture SVG. Il peut t’aider à documenter des modèles personnalisés ou à examiner la structure de leur backbone, de leur neck et de leur head.

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

Installation#

Clone le projet et installe sa dépendance PyYAML :

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

Utilisation#

Génère un diagramme à partir de l’exemple YOLO26 inclus :

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

Utilise --head multi pour dessiner des nœuds head distincts pour chaque échelle, ou sélectionne l’un des thèmes inclus :

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

Les thèmes disponibles incluent paper, paper_ryb, candy, dark, ocean, retro, blueprint, forest et journal. Le SVG généré ne nécessite aucune installation de Graphviz.

Métadonnées des nœuds#

Modifie DISPLAY_CONFIG dans le main.py de YAML2ModelGraph pour choisir les détails qui apparaissent dans chaque nœud :

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

Les noms de modules YAML personnalisés sont rendus automatiquement. Les couleurs, les formes et la typographie du thème sont configurées dans le themes.py de l’outil.

Limites#

YAML2ModelGraph aligne spécialement les têtes Detect standard. Les autres têtes de tâche, telles que OBB, Pose et Segment, sont actuellement rendues sous forme de nœuds génériques dans la voie du neck. Consulte le dépôt YAML2ModelGraph pour connaître les fonctionnalités prises en charge et les détails d’utilisation actuels.

FAQ#

  • Oui. Tout fichier YAML de modèle Ultralytics qui respecte le format de couche [from, repeats, module, args] s'affiche, et les noms de modules personnalisés sont dessinés sous forme de nœuds génériques. Consulte le model YAML configuration guide pour connaître le format.

  • Non. L'outil écrit directement au format SVG et dépend uniquement de PyYAML.

  • Seules les têtes Detect standard le sont. Les têtes OBB, Pose et Segment sont dessinées sous forme de nœuds génériques de voie de col ; consulte le YAML2ModelGraph repository pour connaître la prise en charge actuelle.

Commentaires