-
Notifications
You must be signed in to change notification settings - Fork 22
Expand file tree
/
Copy patheval.sh
More file actions
127 lines (104 loc) · 3.3 KB
/
eval.sh
File metadata and controls
127 lines (104 loc) · 3.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
#!/usr/bin/env bash
set -e
SCENE_ID=$1
DATA_ROOT=$2
CKPT_DIR=$3
MODE=$4 # KB, BEAP, or PH
ITERS_NUM=30000
STEP_EVAL=0.0015
FOVMOD_EVAL=2.0
DATASET_DIR=$2/$1
OUTPUT_DIR=$3/$1
echo "Scene: $SCENE_ID"
echo "Mode: $MODE"
if [ "$MODE" = "BEAP" ]; then
BEAP_DIR_EVAL=beap_fov_${FOVMOD_EVAL}_step_${STEP_EVAL}
EVAL_MASK_FN=fov_${FOVMOD_EVAL}_step_${STEP_EVAL}_mask.png
python data/scnt/scnt_kb2beap.py --path ${DATASET_DIR} --dst ${BEAP_DIR_EVAL} --step ${STEP_EVAL} --fov_mod ${FOVMOD_EVAL} --mask_dst ${EVAL_MASK_FN}
echo "Rendering BEAP space"
python render.py \
-m ${OUTPUT_DIR} \
-s ${DATASET_DIR} \
--iteration ${ITERS_NUM} \
--camera_model FISHEYE \
--render_model ${MODE} \
--skip_train \
--sample_step ${STEP_EVAL} \
--fov_mod ${FOVMOD_EVAL} \
--train_test_exp \
--mask_path ${DATASET_DIR}/${BEAP_DIR_EVAL}/${EVAL_MASK_FN} \
--near_threshold 0.2
echo "Wrapping back to origianal space for evaluation"
python data/scnt/scnt_raymap_dac.py \
--path ${DATA_ROOT} \
--scenes ${SCENE_ID}
python data/scnt/scnt_beap2kb.py --path ${DATASET_DIR} \
--src ${OUTPUT_DIR}/test/ours_${ITERS_NUM}/gt \
--dst ${OUTPUT_DIR}/test/ours_${ITERS_NUM}/gt_remap \
--step ${STEP_EVAL} --fov_mod ${FOVMOD_EVAL} --gridmap_restrict
python data/scnt/scnt_beap2kb.py --path ${DATASET_DIR} \
--src ${OUTPUT_DIR}/test/ours_${ITERS_NUM}/renders \
--dst ${OUTPUT_DIR}/test/ours_${ITERS_NUM}/renders_remap \
--step ${STEP_EVAL} --fov_mod ${FOVMOD_EVAL} --gridmap_restrict
python metrics.py \
--block_mask \
-m ${OUTPUT_DIR} --use_remap \
--iters ${ITERS_NUM}
elif [ "$MODE" = "KB" ]; then
echo "Rendering KB fisheye"
DIST_SCALING=1.0 # set DIST_SCALING as 0 to render EQ
FOCAL_SCALING=1.0
MIRR_SHIFT=0.0
echo "== Generating ray map =="
python data/scnt/scnt_raymap.py \
--path ${DATA_ROOT} \
--scenes ${SCENE_ID} \
--distortion_scaling ${DIST_SCALING} \
--focal_scaling ${FOCAL_SCALING} \
--mirror_shift ${MIRR_SHIFT}
echo "== Rendering =="
python render.py \
-m ${OUTPUT_DIR} \
-s ${DATASET_DIR} \
--iteration ${ITERS_NUM} \
--camera_model FISHEYE \
--render_model ${MODE} \
--skip_train \
--sample_step ${STEP_EVAL} \
--fov_mod ${FOVMOD_EVAL} \
--train_test_exp \
--raymap_path ${DATASET_DIR}/raymap_fisheye.npy \
--distortion_scaling ${DIST_SCALING} \
--focal_scaling ${FOCAL_SCALING} \
--mirror_shift ${MIRR_SHIFT}
echo "== Evaluating metrics =="
python metrics.py \
-m ${OUTPUT_DIR} \
--block_mask \
--iters ${ITERS_NUM} \
--custom_gt ${CKPT_DIR}/${SCENE_ID}/test/ours_${ITERS_NUM}/gt
elif [ "$MODE" = "PH" ]; then
echo "Rendering Pinhole"
FOCAL_SCALING=1.0
echo "== Rendering =="
python render.py \
-m ${OUTPUT_DIR} \
-s ${DATASET_DIR} \
--iteration ${ITERS_NUM} \
--camera_model FISHEYE \
--render_model ${MODE} \
--skip_train \
--sample_step ${STEP_EVAL} \
--fov_mod ${FOVMOD_EVAL} \
--train_test_exp \
--focal_scaling ${FOCAL_SCALING}
echo "== Evaluating metrics =="
python metrics.py \
-m ${OUTPUT_DIR} \
--block_mask \
--iters ${ITERS_NUM} \
--custom_gt ${CKPT_DIR}/${SCENE_ID}/test/ours_${ITERS_NUM}/gt
else
echo "Unknown MODE: $MODE"
exit 1
fi