MCPcopy Create free account
hub / github.com/IRMVLab/SemGauss-SLAM / eval

Function eval

utils/eval_utils.py:172–550  ·  view source on GitHub ↗
(config, dataset, final_params, num_frames, eval_dir, sil_thres,
         mapping_iters, add_new_gaussians, eval_every=1, save_frames=True)

Source from the content-addressed store, hash-verified

170 progress_bar.update(every_i)
171
172def eval(config, dataset, final_params, num_frames, eval_dir, sil_thres,
173 mapping_iters, add_new_gaussians, eval_every=1, save_frames=True):
174 print("Evaluating Final Parameters ...")
175 psnr_list = []
176 rmse_list = []
177 l1_list = []
178 lpips_list = []
179 ssim_list = []
180 mIou_list = []
181 miou_eval_list = []
182 pixAcc_list = []
183 pixAcc_eval_list = []
184
185 if save_frames:
186 render_rgb_dir = os.path.join(eval_dir, "rendered_rgb")
187 os.makedirs(render_rgb_dir, exist_ok=True)
188 render_depth_dir = os.path.join(eval_dir, "rendered_depth")
189 os.makedirs(render_depth_dir, exist_ok=True)
190 render_semantic_dir = os.path.join(eval_dir, "rendered_semantic")
191 os.makedirs(render_semantic_dir, exist_ok=True)
192 rgb_dir = os.path.join(eval_dir, "gt_rgb")
193 os.makedirs(rgb_dir, exist_ok=True)
194 depth_dir = os.path.join(eval_dir, "gt_depth")
195 os.makedirs(depth_dir, exist_ok=True)
196 semantic_dir = os.path.join(eval_dir, "gt_semantic")
197 os.makedirs(semantic_dir, exist_ok=True)
198 feature_dir = os.path.join(eval_dir, "feature")
199 os.makedirs(feature_dir, exist_ok=True)
200 mesh_dir = os.path.join(eval_dir, "mesh")
201 os.makedirs(mesh_dir, exist_ok=True)
202
203
204 gt_w2c_list = []
205 seg_net = Segmentation(config)
206
207 ##pre for mesh
208 pose_folder = os.path.join(config['data']['basedir'], config['data']['sequence'])
209 pose_path = os.path.join(pose_folder, "traj.txt")
210 with open(pose_path, "r") as f:
211 pose_lines = f.readlines()
212 first_pose_line = pose_lines[0]
213 first_pose_c2w = np.array(list(map(float, first_pose_line.split()))).reshape(4, 4)
214 first_pose_c2w = torch.from_numpy(first_pose_c2w).float()
215 first_pose_w2c = np.linalg.inv(first_pose_c2w.cpu().numpy())
216
217 # _, _, _, _, first_gt_pose = dataset[0]
218 # first_pose_w2c = np.linalg.inv(first_gt_pose.cpu().numpy())
219 # print("herh2", first_pose_w2c)
220
221 cam_cfg = load_dataset_config(config["data"]["gradslam_data_cfg"])
222 W = cam_cfg["camera_params"]["image_width"] - 2 * cam_cfg["camera_params"]["crop_edge"]
223 H = cam_cfg["camera_params"]["image_height"]- 2 * cam_cfg["camera_params"]["crop_edge"]
224 fx = cam_cfg["camera_params"]["fx"]
225 fy = cam_cfg["camera_params"]["fy"]
226 cx = cam_cfg["camera_params"]["cx"]
227 cy = cam_cfg["camera_params"]["cy"]
228
229 scale = 1.0

Callers 1

dense_semantic_slamFunction · 0.90

Calls 15

set_mode_get_semanticMethod · 0.95
updateMethod · 0.95
getMethod · 0.95
SegmentationClass · 0.90
load_dataset_configFunction · 0.90
setup_cameraFunction · 0.90
transform_to_frameFunction · 0.90
calc_psnrFunction · 0.90
SegmentationMetricClass · 0.90
build_rotationFunction · 0.90

Tested by

no test coverage detected