Ultralytics YOLO27:

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

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

利用可能なテーマには、paperpaper_rybcandydarkoceanretroblueprintforest、およびjournalがあります。生成されたSVGにはGraphvizのインストールは必要ありません。

ノードメタデータ#

各ノードに表示する詳細を選択するには、YAML2ModelGraphのmain.pyDISPLAY_CONFIGを編集します。

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

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

制限事項#

YAML2ModelGraphは、標準のDetectヘッドを特別に位置合わせします。OBBPoseSegmentなどの他のタスクヘッドは、現在、汎用的なネックレーンノードとしてレンダリングされます。現在のサポート状況と使用方法の詳細については、YAML2ModelGraphリポジトリを参照してください。

FAQ#

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

  • いいえ。このツールはSVGを直接書き出し、PyYAMLのみに依存します。

  • 標準のDetectヘッドのみです。OBBPose、およびSegmentのヘッドは汎用のネックレーンノードとして描画されます。現在のサポート状況についてはYAML2ModelGraph repositoryをご確認ください。

コメント