mirror of
https://github.com/nerfstudio-project/nerfstudio.git
synced 2026-11-12 19:04:03 +08:00
77 lines
3.0 KiB
Python
77 lines
3.0 KiB
Python
import os
|
|
from os import makedirs
|
|
from html4vision import Col, imagetable
|
|
import argparse
|
|
import json
|
|
|
|
|
|
if __name__ == "__main__":
|
|
parser = argparse.ArgumentParser()
|
|
parser.add_argument('--gt_dir', type=str, default='/mnt/data/nerfstudio_ds/real_data/coffeeroom_1102H/GT/GT_exr')
|
|
parser.add_argument('--gt_render_dir', type=str, default='/mnt/data/nerfstudio_ds/real_data/coffeeroom_1102H/GT/GT_exr_renders')
|
|
parser.add_argument('--pandora_dir', type=str, default='/mnt/data/nerfstudio_ds/real_data/coffeeroom_1102H/metrics/images/pandora_cam_opt_on_lin')
|
|
parser.add_argument('--pandora_render_dir', type=str, default='/mnt/data/nerfstudio_ds/real_data/coffeeroom_1102H/metrics/images/pandora_cam_opt_on_lin_renders')
|
|
parser.add_argument('--out_dir', type=str, default='/mnt/data/nerfstudio_ds/real_data/coffeeroom_1102H')
|
|
parser.add_argument("--name", type=str, required=True, default="unaligned", help="Name of the method, used for naming output directories")
|
|
args = parser.parse_args()
|
|
|
|
results_json = os.path.join(args.out_dir, 'metrics/results_table')
|
|
results_json = os.path.join(results_json, args.name + '_results.json')
|
|
with open(results_json, 'r') as file:
|
|
metrics = json.load(file)
|
|
img_keys = metrics[args.name].keys() - ['mean']
|
|
|
|
gt = []
|
|
gt_render = []
|
|
out = []
|
|
out_render = []
|
|
|
|
mse = []
|
|
si_rmse = []
|
|
psnr = []
|
|
angular = []
|
|
|
|
for key in img_keys:
|
|
img_name = key.replace('exr', 'png')
|
|
|
|
mse.append(metrics[args.name][key]['mse'])
|
|
si_rmse.append(metrics[args.name][key]['si_rmse'])
|
|
psnr.append(metrics[args.name][key]['psnr'])
|
|
angular.append(metrics[args.name][key]['angular'])
|
|
|
|
gt.append( os.path.join(args.gt_dir, img_name) )
|
|
gt_render.append( os.path.join(args.gt_render_dir, img_name) )
|
|
out.append( os.path.join(args.pandora_dir, img_name) )
|
|
out_render.append( os.path.join(args.pandora_render_dir, img_name) )
|
|
|
|
cols = [
|
|
Col('text', 'Name', list(img_keys)), # Col('id1', 'ID'), # 1-based indexing
|
|
Col('img', 'GT Pano', gt),
|
|
Col('img', 'GT Render', gt_render),
|
|
Col('img', 'Pandora Output', out),
|
|
Col('img', 'Pandora Render', out_render),
|
|
Col('text', 'MSE', mse),
|
|
Col('text', 'si-RMSE', si_rmse),
|
|
Col('text', 'PSNR', psnr),
|
|
Col('text', 'Angular', angular),
|
|
]
|
|
|
|
|
|
# imagetable(cols, os.path.join(args.out_dir, 'results_' + args.name + '_index.html'), 'Pandora outputs', pathrep=(args.out_dir, './'),
|
|
# imscale=0.1,
|
|
# sort_style='materialize',
|
|
# sortable=True,
|
|
# zebra=True,
|
|
# sticky_header=True,
|
|
# overlay_toggle=True
|
|
# )
|
|
|
|
imagetable(cols, os.path.join(args.out_dir, 'results_' + args.name + '_index.html'), 'Pandora outputs', pathrep=(args.out_dir, './'),
|
|
sort_style='materialize',
|
|
imsize=(300, 300),
|
|
hori_center_img=True,
|
|
sortable=True,
|
|
zebra=True,
|
|
sticky_header=True,
|
|
overlay_toggle=True
|
|
) |