Ultralytics YOLO27:
Get Started

YAML2ModelGraphでYOLOのアーキテクチャを可視化#

YAML2ModelGraphは、Ultralytics YOLOのモデルYAMLファイルをSVGアーキテクチャ図に変換するコミュニティツールです。カスタムモデルのドキュメント作成や、バックボーン、ネック、ヘッドの構造確認に役立ちます。

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を使用すると、スケールごとに個別のヘッドノードを描画できます。または、同梱のテーマから選択できます。

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のインストールは不要です。

ノードのメタデータ#

YAML2ModelGraphのmain.pyにあるDISPLAY_CONFIGを編集して、各ノードに表示する詳細情報を選択します。

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

カスタムYAMLモジュール名は自動的に描画されます。テーマの色、形状、タイポグラフィは、ツールのthemes.pyで設定します。

制限事項#

YAML2ModelGraphは標準のDetectヘッドを特別に配置します。Segment、Pose、OBBなどの他のタスクヘッドは、現在、汎用的なネックレーンノードとして描画されます。現在の対応状況と使用方法については、YAML2ModelGraphリポジトリをご覧ください。

よくある質問#

  • はい。[from, repeats, module, args]レイヤー形式に従うUltralyticsモデルのYAMLであれば描画でき、カスタムモジュール名は汎用ノードとして表示されます。形式については、モデルYAML設定ガイドをご覧ください。

  • いいえ。このツールはSVGを直接出力し、依存関係はPyYAMLのみです。

  • 標準のDetectヘッドのみです。Segment、Pose、OBBのヘッドは汎用的なネックレーンノードとして描画されます。現在の対応状況については、YAML2ModelGraphリポジトリをご確認ください。

コントリビューター

コメント