VTBench / examples /get_result.py
huaweilin's picture
update
14ce5a9
import os
import pandas as pd
root_dir = "./"
model_name_mapping = {
"flowmo_lo": "FlowMo Lo",
"flowmo_hi": "FlowMo Hi",
"gpt4o": "GPT-4o",
"janus_pro_1b": "Janus Pro 1B/7B",
"llamagen-ds8": "LlamaGen ds8",
"llamagen-ds16": "LlamaGen ds16",
"llamagen-ds16-t2i": "LlamaGen ds16 T2I",
"maskbit_16bit": "MaskBiT 16bit",
"maskbit_18bit": "MaskBiT 18bit",
"open_magvit2": "OpenMagViT",
"titok_b64": "Titok-b64",
"titok_bl64": "Titok-bl64",
"titok_s128": "Titok-s128",
"titok_bl128": "Titok-bl128",
"titok_l32": "Titok-l32",
"titok_sl256": "Titok-sl256",
"var_256": "VAR-256",
"var_512": "VAR-512",
"SD3.5L": "SD3.5L",
"FLUX.1-dev": "FLUX.1-dev",
"infinity_d32": "Infinity-d32",
"infinity_d64": "Infinity-d64",
"chameleon": "Chameleon",
"bsqvit": "BSQ-VIT",
}
output_order = [
"FlowMo Lo",
"FlowMo Hi",
"MaskBiT 16bit",
"MaskBiT 18bit",
"Titok-l32",
"Titok-b64",
"Titok-s128",
"Titok-bl64",
"Titok-bl128",
"Titok-sl256",
"OpenMagViT",
"LlamaGen ds8",
"BSQ-VIT",
"VAR-256",
"Janus Pro 1B/7B",
"Chameleon",
"LlamaGen ds16",
"LlamaGen ds16 T2I",
"VAR-512",
"Infinity-d32",
"Infinity-d64",
"SD3.5L",
"FLUX.1-dev",
"GPT-4o",
]
for dataset_name in os.listdir(root_dir):
dataset_path = os.path.join(root_dir, dataset_name)
if not os.path.isdir(dataset_path):
continue
results = {}
for model_dir in os.listdir(dataset_path):
model_path = os.path.join(dataset_path, model_dir)
result_file = os.path.join(model_path, "result.txt")
if os.path.isfile(result_file):
with open(result_file, "r", encoding="utf-8") as f:
lines = f.readlines()
if len(lines) >= 2:
metrics_line = lines[-2].strip()
values_line = lines[-1].strip()
metrics = metrics_line.split()
values = values_line.split()
mapped_name = model_name_mapping.get(model_dir, model_dir)
results[mapped_name] = values
if results:
header = "\t".join(metrics)
print(f"{dataset_name}\t{header}")
for model_name in output_order:
if model_name in results:
values = results[model_name]
print(f"{model_name}\t" + "\t".join(values))
else:
print(f"{model_name}\t" + "no result")
print()