YAML2ModelGraphでYOLOのアーキテクチャを可視化する#
YAML2ModelGraphは、Ultralytics YOLOのモデルYAMLファイルを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のインストールは必要ありません。
ノードのメタデータ#
YAML2ModelGraphのmain.pyにあるDISPLAY_CONFIGを編集して、各ノードに表示する詳細を選択します:
DISPLAY_CONFIG = {
"show_channels": True,
"show_repeats": True,
"show_stride": True,
"show_args": False,
}カスタムYAMLモジュール名は自動的にレンダリングされます。テーマの色、形状、タイポグラフィは、ツールのthemes.pyで設定します。
制限事項#
YAML2ModelGraphは、標準のDetectヘッドを特別に整列させます。OBB、Pose、Segmentなどの他のタスクヘッドは、現在汎用的なネックレーンノードとしてレンダリングされます。現在のサポート状況と使用方法の詳細については、YAML2ModelGraph repositoryを参照してください。