算法艺术创作
algorithmic-art
通过代码和可调参数创作生成艺术与交互式视觉效果。
visualization【设计与创意】Plot PPO reward logs and compose GIFs from saved frame images.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Use this sub-skill when the user wants to plot training rewards, compare multiple runs, compose a GIF from saved frames, inspect the CSV log schema, or understand why a plotting or GIF step failed.
Do not use this sub-skill for training-loop changes or pretrained checkpoint evaluation. Route those tasks to the sibling sub-skills. Route low-level PPO class behavior to the root API reference.
PPO_logs/<env_name>/PPO_<env_name>_log_<run_num>.csv schema.Check the log or frame layout first. Use the bundled helpers from this sub-skill directory:
python scripts/plot_training_logs.py --help
python scripts/make_training_gif.py --help
Plot logs from one environment. If your logs live in the default layout, point the helper at the environment name and log root. The helper will discover the run CSVs and write a PNG into the figure directory.
Compose a GIF from frames. The GIF helper expects an ordered set of JPEG or PNG frames, usually already saved by a separate render step.
Keep frame capture separate from composition. Environment rendering depends on Gym, Roboschool, or another environment backend. GIF composition only needs Pillow and image files.
Safe checks for this sub-skill should stay small and deterministic:
python scripts/plot_training_logs.py --help
python scripts/make_training_gif.py --help
python -m py_compile scripts/plot_training_logs.py scripts/make_training_gif.py
A tiny CSV or tiny image fixture is enough to verify the helpers. Do not default to a live environment render unless the user explicitly needs that dependency-bound path.