diff --git a/bbox_2d.py b/bbox_2d.py index 4da8cb51db3ab9ae2d50ad3e1941548a45b25398..c8513ae7ee994af979c4282d559ffb1eb52c69ef 100644 --- a/bbox_2d.py +++ b/bbox_2d.py @@ -31,17 +31,17 @@ def generate_2d_bbox(data_name, Nb_camera, Nb_world): if data[i]['id'] == 4: cont1 += 1 bbox = bbox_2d(data[i]) - np.savetxt(f'{data_name}/Bbox/banana1/{p}.txt', np.array(bbox).reshape((1, 4))) # save + np.savetxt(f'{data_name}/Generated/Bbox/banana1/{p}.txt', np.array(bbox).reshape((1, 4))) # save elif data[i]['id'] == 5: cont2 += 1 bbox = bbox_2d(data[i]) - np.savetxt(f'{data_name}/Bbox/orange2/{p}.txt', np.array(bbox).reshape((1, 4))) # save + np.savetxt(f'{data_name}/Generated/Bbox/orange2/{p}.txt', np.array(bbox).reshape((1, 4))) # save elif data[i]['id'] == 6: cont3 += 1 bbox = bbox_2d(data[i]) - np.savetxt(f'{data_name}/Bbox/pear2/{p}.txt', np.array(bbox).reshape((1, 4))) # save + np.savetxt(f'{data_name}/Generated/Bbox/pear2/{p}.txt', np.array(bbox).reshape((1, 4))) # save else: continue diff --git a/bbox_3d.py b/bbox_3d.py index ce904d133bc47a5d1c067c07459daa582b2ef47a..7f0241b9cda2fb86e15eebb807005ae0a26a1525 100644 --- a/bbox_3d.py +++ b/bbox_3d.py @@ -23,6 +23,6 @@ def generate_3d_bbox(data_name): for key, val in objs.items(): ext = [x / 2 for x in val] bbox = get_bbox(ext) - np.savetxt(f'{data_name}/Bbox/{key}_bbox_3d.txt', bbox) + np.savetxt(f'{data_name}/Generated/Bbox/{key}_bbox_3d.txt', bbox) # print(ext) diff --git a/fps_alg.py b/fps_alg.py index 1ba47529e55094f0d36c438685ec96831946b4e5..6ab1870191ebaf7a61a1355ef614309ed94092f3 100644 --- a/fps_alg.py +++ b/fps_alg.py @@ -167,21 +167,21 @@ def generate_fps(data_name, camera, Nb_camera, Nb_world, list_objects, vis=False # Read the point cloud for obj in list_objects: obj_id = 1 - point_cloud = f'{data_name}/Models/{obj}/{obj.lower()}.ply' + point_cloud = f'{data_name}/Generated/Models/{obj}/{obj.lower()}.ply' pcd = o3d.io.read_point_cloud(point_cloud) print("pcd", pcd) fps_points = apply_fps(pcd, 200) - np.savetxt(f'{data_name}/FPS/{obj}_fps_3d.txt', fps_points) + np.savetxt(f'{data_name}/Generated/FPS/{obj}_fps_3d.txt', fps_points) for i in range(1, Nb_camera*Nb_world +1): - path = Path(f'{data_name}/Pose_transformed/{obj}/{i}.npy') + path = Path(f'{data_name}/Generated/Pose_transformed/{obj}/{i}.npy') if path.is_file(): img = image.imread(f"{data_name}/RGB/{i}.png") - pose = np.load(f'{data_name}/Pose_transformed/{obj}/{i}.npy') + pose = np.load(f'{data_name}/Generated/Pose_transformed/{obj}/{i}.npy') R_exp = pose[0:3, 0:3] tVec = pose[0:3, 3] @@ -199,6 +199,6 @@ def generate_fps(data_name, camera, Nb_camera, Nb_world, list_objects, vis=False out[0][ind] = point[0][0] / img.shape[1] out[0][ind + 1] = point[0][1] / img.shape[0] ind += 2 - np.savetxt(f'{data_name}/FPS/{obj}/{i}.txt', out) + np.savetxt(f'{data_name}/Generated/FPS/{obj}/{i}.txt', out) print("stop") obj_id += 1 diff --git a/instance_mask.py b/instance_mask.py index f4429bc87a9dedd5f35be5aa89727982f803afa2..6e7b7e2056c9d76c1b582eb20f931a6c0550d380 100644 --- a/instance_mask.py +++ b/instance_mask.py @@ -131,5 +131,6 @@ def generate_instance_mask(data_name, Nb_camera, Nb_world): instance_img = instance(img, id) print("instance_img[308][817] : ", instance_img[308][817]) - cv2.imwrite(f"{data_name}/Instance_Mask/{key}/{k}.png", 255*instance_img) + + cv2.imwrite(f"{data_name}/Generated/Instance_Mask/{key}/{k}.png", 255*instance_img) diff --git a/main.py b/main.py index 4e8a37f6801c7c6e2033524001c85f6022bb373f..f62320abd6b79515c64d11865f0248d23c74d679 100644 --- a/main.py +++ b/main.py @@ -19,12 +19,12 @@ def generate_folders(name): for f in folders: is_exist = os.path.exists(f"{name}/{f}") if not is_exist: - if f not in ["Instance_Mask", "Models", "Pose_transformed", "Bbox", "FPS"]: + if f not in ["RGB_Gen", "Instance_Mask", "Models", "Pose_transformed", "Bbox", "FPS"]: os.mkdir(f"{name}/{f}") else: - os.makedirs(f"{name}/{f}/banana1") - os.makedirs(f"{name}/{f}/orange2") - os.makedirs(f"{name}/{f}/pear2") + os.makedirs(f"{name}/Generated/{f}/banana1") + os.makedirs(f"{name}/Generated/{f}/orange2") + os.makedirs(f"{name}/Generated/{f}/pear2") @@ -189,8 +189,6 @@ if __name__ == '__main__': # futur parameters : - - Categories = [] # to read Nb_instance = 1 Occ_target = 0.5 @@ -202,18 +200,12 @@ if __name__ == '__main__': dataset_src = "/media/gduret/DATA/dataset/s2rg/Fruits_all_medium/data" - catergories_instance_array_id_to_cat, catergories_instance_array_cat_to_id = compute_categories_id(dataset_src, 1) - - - choice = "low" data_options = {"high": "ground_truth_rgb", "low": "ground_truth_depth"} - - dataset_type = data_options[choice] compute_id_good_occ(dataset_src, 1, 1, dataset_type, "1_926000000", catergories_instance_array_id_to_cat, catergories_instance_array_cat_to_id, Occ_target) @@ -224,7 +216,7 @@ if __name__ == '__main__': list_obj = ["banana1", "orange2", "pear2"] for obj in list_obj: src_bbox = f"Models/{obj}/{obj.lower()}.ply" - dst_bbox = f"{dataset_name}/Models/{obj}/{obj.lower()}.ply" + dst_bbox = f"{dataset_name}/Generated/Models/{obj}/{obj.lower()}.ply" shutil.copy(src_bbox, dst_bbox) if choice == 'high': @@ -236,7 +228,7 @@ if __name__ == '__main__': [0.0, 1086.5054444841007, 360.5], [0.0, 0.0, 1.0]]) - np.savetxt(f'{dataset_name}/camera_{choice}.txt', camera) + np.savetxt(f'{dataset_name}/Generated/camera_{choice}.txt', camera) # frame = "1_600000000" frame = "1_926000000" @@ -244,10 +236,8 @@ if __name__ == '__main__': Nb_world = 2 reform_data(dataset_src, dataset_name, dataset_type, frame, Nb_camera, Nb_world) - - transform_pose(dataset_name, Nb_camera, Nb_world, Occ_target) generate_2d_bbox(dataset_name, Nb_camera, Nb_world) generate_instance_mask(dataset_name, Nb_camera, Nb_world) - generate_fps(dataset_name, camera, Nb_camera, Nb_world, list_obj, True) + generate_fps(dataset_name, camera, Nb_camera, Nb_world, list_obj, False) #generate_3d_bbox(dataset_name) diff --git a/pose.py b/pose.py index 0e4b6c258543bf3a22d44e3b25a7e6726fd5a13a..4f0293e529d1908cab06e52ddeaebf406abc7b09 100644 --- a/pose.py +++ b/pose.py @@ -113,7 +113,7 @@ def transform_pose(data_name, Nb_camera, Nb_world, occ_target): T_exp = transformation @ xyz T_exp = np.array(T_exp) num_arr = np.c_[R_exp, T_exp[0]] - np.save(f'{data_name}/Pose_transformed/banana1/{p}.npy', num_arr) # save + np.save(f'{data_name}/Generated/Pose_transformed/banana1/{p}.npy', num_arr) # save elif len(catergories_occ_array['orange2']) == 1 and data[k]['id'] == catergories_occ_array['orange2'][0]: cont2 += 1 @@ -126,7 +126,7 @@ def transform_pose(data_name, Nb_camera, Nb_world, occ_target): T_exp = transformation @ xyz T_exp = np.array(T_exp) num_arr = np.c_[R_exp, T_exp[0]] - np.save(f'{data_name}/Pose_transformed/orange2/{p}.npy', num_arr) # save + np.save(f'{data_name}/Generated/Pose_transformed/orange2/{p}.npy', num_arr) # save elif len(catergories_occ_array['pear2']) == 1 and data[k]['id'] == catergories_occ_array['pear2'][0]: cont3 += 1 @@ -139,7 +139,7 @@ def transform_pose(data_name, Nb_camera, Nb_world, occ_target): T_exp = transformation @ xyz T_exp = np.array(T_exp) num_arr = np.c_[R_exp, T_exp[0]] - np.save(f'{data_name}/Pose_transformed/pear2/{p}.npy', num_arr) # save + np.save(f'{data_name}/Generated/Pose_transformed/pear2/{p}.npy', num_arr) # save else: continue print(cont1, cont2, cont3)