Download scripts/summarize_results.py from Benxelua/Detector: direct link, hf CLI and curl.
- Browser
- Download file 946 Bytes
-
https://huggingface.co/Benxelua/Detector/resolve/main/scripts/summarize_results.py
- Command line
-
hf download hf://Benxelua/Detector/scripts/summarize_results.py
-
curl -L -o summarize_results.py https://huggingface.co/Benxelua/Detector/resolve/main/scripts/summarize_results.py
946 Bytes
| #!/usr/bin/env python3 | |
| from __future__ import annotations | |
| import argparse,csv,json | |
| from pathlib import Path | |
| def main(): | |
| p=argparse.ArgumentParser(); p.add_argument("--outputs",type=Path,required=True); p.add_argument("--csv",type=Path,required=True); a=p.parse_args() | |
| rows=[] | |
| for family in ("rtdetr","fasterrcnn","ssdlite"): | |
| for domain in ("D_B","D_L"): | |
| root=a.outputs/family/domain; test=root/"test_metrics.json"; meta=root/"run_metadata.json" | |
| if test.exists() and meta.exists(): | |
| metrics=json.loads(test.read_text()); m=json.loads(meta.read_text()); rows.append({"detector":family,"training_domain":domain,"params":m["params"],**{f"{k}_{s}":v for k,x in metrics.items() for s,v in x.items()}}) | |
| fields=sorted({k for r in rows for k in r}); a.csv.parent.mkdir(parents=True,exist_ok=True) | |
| with a.csv.open("w",newline="") as f: w=csv.DictWriter(f,fieldnames=fields);w.writeheader();w.writerows(rows) | |
| if __name__=="__main__":main() | |