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 저장소를 참조하세요.