diff --git a/configs/local/view_generate_config.yaml b/configs/local/view_generate_config.yaml index e2f8779..b58d672 100644 --- a/configs/local/view_generate_config.yaml +++ b/configs/local/view_generate_config.yaml @@ -7,12 +7,12 @@ runner: name: debug root_dir: experiments generate: - port: 5004 - from: 0 - to: 1 # -1 means all - object_dir: H:\\AI\\Datasets\\scaled_object_box_meshes - table_model_path: "H:\\AI\\Datasets\\table.obj" - output_dir: C:\\Document\\Local Project\\nbv_rec\\nbv_reconstruction\\temp + port: 5002 + from: 600 + to: -1 # -1 means all + object_dir: /media/hofee/data/data/object_meshes_part1 + table_model_path: "/media/hofee/data/data/others/table.obj" + output_dir: /media/hofee/repository/data_part_1 binocular_vision: true plane_size: 10 max_views: 512 diff --git a/preprocess/preprocessor.py b/preprocess/preprocessor.py index ad8b166..26175b8 100644 --- a/preprocess/preprocessor.py +++ b/preprocess/preprocessor.py @@ -87,8 +87,8 @@ def get_scan_points_indices(scan_points, mask, display_table_mask_label, cam_int def save_scene_data(root, scene, scene_idx=0, scene_total=1,file_type="txt"): ''' configuration ''' - target_mask_label = (0, 255, 0, 255) - display_table_mask_label=(0, 0, 255, 255) + target_mask_label = (0, 255, 0) + display_table_mask_label=(0, 0, 255) random_downsample_N = 32768 voxel_size=0.003 filter_degree = 75 @@ -158,7 +158,7 @@ def save_scene_data(root, scene, scene_idx=0, scene_total=1,file_type="txt"): if __name__ == "__main__": #root = "/media/hofee/repository/new_data_with_normal" - root = r"C:\\Document\\Local Project\\nbv_rec\\nbv_reconstruction\\temp" + root = r"/media/hofee/repository/data_part_1" # list_path = r"/media/hofee/repository/full_list.txt" # scene_list = [] @@ -167,8 +167,7 @@ if __name__ == "__main__": # scene_list.append(line.strip()) scene_list = os.listdir(root) from_idx = 0 # 1000 - to_idx = 1 # 1500 - print(scene_list) + to_idx = 600 # 1500 cnt = 0 @@ -176,6 +175,10 @@ if __name__ == "__main__": total = to_idx - from_idx for scene in scene_list[from_idx:to_idx]: start = time.time() + if os.path.exists(os.path.join(root, scene, "scan_points.txt")): + print(f"Scene {scene} has been processed") + cnt+=1 + continue save_scene_data(root, scene, cnt, total, file_type="npy") cnt+=1 end = time.time() diff --git a/runners/view_generator.py b/runners/view_generator.py index 2e28c44..634ccbf 100644 --- a/runners/view_generator.py +++ b/runners/view_generator.py @@ -9,7 +9,7 @@ class ViewGenerator(Runner): self.config_path = config_path def run(self): - result = subprocess.run(['blender', '-b', '-P', '../blender/run_blender.py', '--', self.config_path]) + result = subprocess.run(['/home/hofee/blender-4.0.2-linux-x64/blender', '-b', '-P', '../blender/run_blender.py', '--', self.config_path]) print() def create_experiment(self, backup_name=None): diff --git a/utils/data_load.py b/utils/data_load.py index c98347e..83204c4 100644 --- a/utils/data_load.py +++ b/utils/data_load.py @@ -29,8 +29,8 @@ class DataLoadUtil: # 读取 EXR 文件中的每个通道并转化为浮点数数组 img_data = [] for channel in float_channels: - channel_data = exr_file.channel(channel, Imath.PixelType(Imath.PixelType.FLOAT)) - img_data.append(np.frombuffer(channel_data, dtype=np.float32).reshape((height, width))) + 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) @@ -141,8 +141,8 @@ class DataLoadUtil: if binocular and not left_only: def clean_mask(mask_image): - green = [0, 255, 0, 255] - red = [255, 0, 0, 255] + green = [0, 255, 0] + red = [255, 0, 0] threshold = 2 mask_image = np.where( np.abs(mask_image - green) <= threshold, green, mask_image