diff --git a/autoware_ml/configs/detection3d/dataset/t4dataset/j6gen2_base.py b/autoware_ml/configs/detection3d/dataset/t4dataset/j6gen2_base.py index cc3a86d3e..f51488899 100644 --- a/autoware_ml/configs/detection3d/dataset/t4dataset/j6gen2_base.py +++ b/autoware_ml/configs/detection3d/dataset/t4dataset/j6gen2_base.py @@ -33,8 +33,8 @@ ] dataset_test_groups = { - "largebus": ("t4dataset_largebus_infos_test.pkl", False), - "j6gen2": ("t4dataset_j6gen2_infos_test.pkl", False), + # "largebus": ("t4dataset_largebus_infos_test.pkl", False), + # "j6gen2": ("t4dataset_j6gen2_infos_test.pkl", False), "j6gen2_base": ("t4dataset_j6gen2_base_infos_test.pkl", True), } diff --git a/autoware_ml/configs/detection3d/dataset/t4dataset/jpntaxi_base.py b/autoware_ml/configs/detection3d/dataset/t4dataset/jpntaxi_base.py index 28ba4ab33..628a7fda7 100644 --- a/autoware_ml/configs/detection3d/dataset/t4dataset/jpntaxi_base.py +++ b/autoware_ml/configs/detection3d/dataset/t4dataset/jpntaxi_base.py @@ -18,8 +18,8 @@ # dataset scene setting dataset_test_groups = { - "jpntaxi_gen2": ("t4dataset_jpntaxi_gen2_infos_test.pkl", False), - "jpntaxi_base": ("t4dataset_jpntaxi_base_infos_test.pkl", True), + "jpntaxi_gen2": ("t4dataset_jpntaxi_gen2_infos_test.pkl", True), + # "jpntaxi_base": ("t4dataset_jpntaxi_base_infos_test.pkl", True), } dataset_version_list = [ diff --git a/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_base_amp.py b/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_base_amp.py index 3af2c9590..ee0a21741 100644 --- a/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_base_amp.py +++ b/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_base_amp.py @@ -42,7 +42,7 @@ # user setting data_root = "data/t4dataset/" -info_directory_path = "info/user_name/" +info_directory_path = "info/kokseang_2_6_1/" train_gpu_size = 8 train_batch_size = 16 test_batch_size = 2 @@ -50,7 +50,7 @@ val_interval = 5 max_epochs = 50 -experiment_group_name = "centerpoint/base/" + _base_.dataset_type +experiment_group_name = "centerpoint_2.6.1/base/" + _base_.dataset_type experiment_name = "second_secfpn_8xb16_121m_base_amp" work_dir = "work_dirs/" + experiment_group_name + "/" + experiment_name @@ -353,7 +353,8 @@ # learning rate # Since mmengine doesn't support OneCycleMomentum yet, we use CosineAnnealing from the default configs -lr = 0.0003 +# 0.0003 * sqrt(2) = 0.0004242 +lr = 0.00042 t_max = 15 param_scheduler = [ # learning rate scheduler @@ -439,13 +440,13 @@ dict(type="LocalVisBackend"), dict(type="TensorboardVisBackend"), # Update info accordingly - dict( - type="SafeMLflowVisBackend", - exp_name="(UserName) CenterPoint", - run_name="CenterPoint base", - tracking_uri="http://localhost:5000", - artifact_suffix=(), - ), + # dict( + # type="SafeMLflowVisBackend", + # exp_name="(UserName) CenterPoint", + # run_name="CenterPoint base", + # tracking_uri="http://localhost:5000", + # artifact_suffix=(), + # ), ] visualizer = dict(type="Det3DLocalVisualizer", vis_backends=vis_backends, name="visualizer") diff --git a/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_j6gen2_base_amp.py b/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_j6gen2_base_amp.py index 281d133d7..9bf980292 100644 --- a/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_j6gen2_base_amp.py +++ b/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_j6gen2_base_amp.py @@ -42,7 +42,7 @@ # user setting data_root = "data/t4dataset/" -info_directory_path = "info/user_name/" +info_directory_path = "info/kokseang_2_6_1/" train_gpu_size = 8 train_batch_size = 16 test_batch_size = 2 @@ -50,7 +50,7 @@ val_interval = 1 max_epochs = 30 -experiment_group_name = "centerpoint/j6gen2_base/" + _base_.dataset_type +experiment_group_name = "centerpoint_2.6.2/j6gen2_base/" + _base_.dataset_type experiment_name = "second_secfpn_8xb16_121m_j6gen2_base_amp" work_dir = "work_dirs/" + experiment_group_name + "/" + experiment_name @@ -352,7 +352,8 @@ randomness = dict(seed=0, diff_rank_seed=False, deterministic=True) -lr = 3e-4 +# 0.0003 * sqrt(2) = 0.0004242 +lr = 0.00042 param_scheduler = [ # learning rate scheduler # During the first (max_epochs * 0.3) epochs, learning rate increases from 0 to lr * 10 @@ -437,13 +438,13 @@ dict(type="LocalVisBackend"), dict(type="TensorboardVisBackend"), # Update info accordingly - dict( - type="SafeMLflowVisBackend", - exp_name="(UserName) CenterPoint", - run_name="CenterPoint base", - tracking_uri="http://localhost:5000", - artifact_suffix=(), - ), + # dict( + # type="SafeMLflowVisBackend", + # exp_name="(UserName) CenterPoint", + # run_name="CenterPoint base", + # tracking_uri="http://localhost:5000", + # artifact_suffix=(), + # ), ] visualizer = dict(type="Det3DLocalVisualizer", vis_backends=vis_backends, name="visualizer") @@ -459,6 +460,6 @@ ] # Update the load_from path accordingly -load_from = "" +load_from = "work_dirs/centerpoint_2.6.1/base/T4Dataset/second_secfpn_8xb16_121m_base_amp_rfs/epoch_49.pth" activation_checkpointing = ["pts_backbone"] diff --git a/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_jpntaxi_base_amp.py b/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_jpntaxi_base_amp.py index 5e7aa3992..08e4027b4 100644 --- a/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_jpntaxi_base_amp.py +++ b/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_jpntaxi_base_amp.py @@ -42,7 +42,7 @@ # user setting data_root = "data/t4dataset/" -info_directory_path = "info/user_name/" +info_directory_path = "info/kokseang_2_6_1/" train_gpu_size = 8 train_batch_size = 16 test_batch_size = 2 @@ -50,7 +50,7 @@ val_interval = 1 max_epochs = 30 -experiment_group_name = "centerpoint/jpntaxi_base/" + _base_.dataset_type +experiment_group_name = "centerpoint_2.6.2/jpntaxi_base/" + _base_.dataset_type experiment_name = "second_secfpn_8xb16_121m_jpntaxi_base_amp" work_dir = "work_dirs/" + experiment_group_name + "/" + experiment_name @@ -81,9 +81,9 @@ ), dict( type="GlobalRotScaleTrans", - rot_range=[-1.571, 1.571], - scale_ratio_range=[0.80, 1.20], - translation_std=[1.0, 1.0, 0.2], + scale_ratio_range=[0.95, 1.05], + rot_range=[-0.78539816, 0.78539816], + translation_std=[0.5, 0.5, 0.2], ), dict(type="PointsRangeFilter", point_cloud_range=point_cloud_range), dict(type="ObjectRangeFilter", point_cloud_range=point_cloud_range), @@ -356,7 +356,8 @@ randomness = dict(seed=0, diff_rank_seed=False, deterministic=True) -lr = 3e-4 +# 0.0003 * sqrt(2) = 0.0004242 +lr = 0.00042 param_scheduler = [ # learning rate scheduler # During the first (max_epochs * 0.3) epochs, learning rate increases from 0 to lr * 10 @@ -441,13 +442,13 @@ dict(type="LocalVisBackend"), dict(type="TensorboardVisBackend"), # Update info accordingly - dict( - type="SafeMLflowVisBackend", - exp_name="(UserName) CenterPoint", - run_name="CenterPoint base", - tracking_uri="http://localhost:5000", - artifact_suffix=(), - ), + # dict( + # type="SafeMLflowVisBackend", + # exp_name="(UserName) CenterPoint", + # run_name="CenterPoint base", + # tracking_uri="http://localhost:5000", + # artifact_suffix=(), + # ), ] visualizer = dict(type="Det3DLocalVisualizer", vis_backends=vis_backends, name="visualizer") @@ -463,6 +464,7 @@ ] # Update the load_from path accordingly -load_from = "" +# load_from = "" +load_from = "work_dirs/centerpoint_2.6.1/base/T4Dataset/second_secfpn_8xb16_121m_base_amp_rfs/epoch_49.pth" activation_checkpointing = ["pts_backbone"] diff --git a/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_jpntaxi_base_amp_rfs.py b/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_jpntaxi_base_amp_rfs.py index 33841a787..d86cfea2d 100644 --- a/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_jpntaxi_base_amp_rfs.py +++ b/projects/CenterPoint/configs/t4dataset/Centerpoint/second_secfpn_8xb16_121m_jpntaxi_base_amp_rfs.py @@ -3,7 +3,7 @@ ] # user setting -experiment_name = "second_secfpn_8xb16_121m_jpntaxi_base_amp_rfs" +experiment_name = "second_secfpn_8xb16_121m_jpntaxi_base_amp_rfs_less_rotation_1e-3_lr" work_dir = "work_dirs/" + _base_.experiment_group_name + "/" + experiment_name train_frame_object_sampler = dict( diff --git a/tools/detection3d/t4dataset_converters/t4converter.py b/tools/detection3d/t4dataset_converters/t4converter.py index 842b0f458..ccc88b2d1 100644 --- a/tools/detection3d/t4dataset_converters/t4converter.py +++ b/tools/detection3d/t4dataset_converters/t4converter.py @@ -627,6 +627,10 @@ def get_lidarseg_annotations( if not hasattr(t4, "lidarseg") or not t4.lidarseg: return dict() + if sd_record.info_filename is None: + print(f"sample {lidar_token} doesn't have lidar info_filename") + return dict() + assert i < len(t4.lidarseg), "Index exceeds number of lidarseg records!" assert t4.lidarseg[i].sample_data_token == lidar_token, "Sample data token mismatch!" return dict(