From 287983277ac2f54d65921b47cb8f168c12930ee7 Mon Sep 17 00:00:00 2001 From: hofee Date: Fri, 1 Nov 2024 22:51:16 +0000 Subject: [PATCH] global: debug inference --- core/seq_dataset.py | 3 +++ runners/inferencer.py | 7 +++++++ utils/data_load.py | 2 -- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/core/seq_dataset.py b/core/seq_dataset.py index db39cbd..1c129bc 100644 --- a/core/seq_dataset.py +++ b/core/seq_dataset.py @@ -49,6 +49,9 @@ class SeqReconstructionDataset(BaseDataset): scene_name = line.strip() scene_name_list.append(scene_name) return scene_name_list + + def get_scene_name_list(self): + return self.scene_name_list def get_datalist(self): datalist = [] diff --git a/runners/inferencer.py b/runners/inferencer.py index f5a8f89..797f47e 100644 --- a/runners/inferencer.py +++ b/runners/inferencer.py @@ -68,9 +68,16 @@ class Inferencer(Runner): test_set_name = test_set.get_name() total=int(len(test_set)) + scene_name_list = test_set.get_scene_name_list() for i in range(total): + scene_name = scene_name_list[i] + inference_result_path = os.path.join(self.output_dir, test_set_name, f"{scene_name}.pkl") + if os.path.exists(inference_result_path): + Log.info(f"Inference result already exists for scene: {scene_name}") + continue data = test_set.__getitem__(i) status_manager.set_progress("inference", "inferencer", f"Batch[{test_set_name}]", i+1, total) + scene_name = data["scene_name"] output = self.predict_sequence(data) self.save_inference_result(test_set_name, data["scene_name"], output) diff --git a/utils/data_load.py b/utils/data_load.py index 6e2052e..7a93fba 100644 --- a/utils/data_load.py +++ b/utils/data_load.py @@ -24,8 +24,6 @@ class DataLoadUtil: for channel in float_channels: channel_data = exr_file.channel(channel) img_data.append(np.frombuffer(channel_data, dtype=np.float16).reshape((height, width))) - - # 将各通道组合成一个 (height, width, 3) 的 RGB 图像 img = np.stack(img_data, axis=-1) return img