diff --git a/CHANGELOG.md b/CHANGELOG.md index 50cbe0ef..3cb8f6f8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,9 @@ # CHANGELOG -## 3.5.1 +## 3.6.0 +- Migrate to model "20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0". + +### 3.5.1 - Run CICD operations for all branches prefixed with "staging-" ## 3.5.0 diff --git a/package_metadata.yaml b/package_metadata.yaml index 2a511fcf..e6f0e165 100644 --- a/package_metadata.yaml +++ b/package_metadata.yaml @@ -1,4 +1,4 @@ -__version__: "3.5.1" +__version__: "3.6.0" __name__: "myria3d" __url__: "https://github.com/IGNF/myria3d" __description__: "Deep Learning for the Semantic Segmentation of Aerial Lidar Point Clouds" diff --git a/run.py b/run.py index 341a99ee..256dcee3 100755 --- a/run.py +++ b/run.py @@ -22,8 +22,10 @@ TASK_NAME_DETECTION_STRING = "task.task_name=" DEFAULT_DIRECTORY = "trained_model_assets/" -DEFAULT_CONFIG_FILE = "proto151_V2.0_epoch_100_Myria3DV3.1.0_predict_config_V3.5.0.yaml" -DEFAULT_CHECKPOINT = "proto151_V2.0_epoch_100_Myria3DV3.1.0.ckpt" +DEFAULT_CONFIG_FILE = ( + "20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0_predict_config_V3.6.0.yaml" +) +DEFAULT_CHECKPOINT = "20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0.ckpt" DEFAULT_ENV = "placeholder.env" diff --git a/trained_model_assets/proto151_V2.0_epoch_100_Myria3DV3.1.0.ckpt b/trained_model_assets/20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0.ckpt similarity index 61% rename from trained_model_assets/proto151_V2.0_epoch_100_Myria3DV3.1.0.ckpt rename to trained_model_assets/20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0.ckpt index e1bbdf46..9db16e96 100644 Binary files a/trained_model_assets/proto151_V2.0_epoch_100_Myria3DV3.1.0.ckpt and b/trained_model_assets/20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0.ckpt differ diff --git a/trained_model_assets/proto151_V2.0_epoch_100_Myria3DV3.1.0_predict_config_V3.5.0.yaml b/trained_model_assets/20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0_predict_config_V3.6.0.yaml similarity index 91% rename from trained_model_assets/proto151_V2.0_epoch_100_Myria3DV3.1.0_predict_config_V3.5.0.yaml rename to trained_model_assets/20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0_predict_config_V3.6.0.yaml index 2f75e0b9..c62b8e92 100644 --- a/trained_model_assets/proto151_V2.0_epoch_100_Myria3DV3.1.0_predict_config_V3.5.0.yaml +++ b/trained_model_assets/20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0_predict_config_V3.6.0.yaml @@ -5,20 +5,15 @@ print_config: true ignore_warnings: true trainer: _target_: pytorch_lightning.Trainer - gpus: - - 0 - - 1 - min_epochs: 100 - max_epochs: 150 + gpus: 0 + min_epochs: 300 + max_epochs: 400 log_every_n_steps: 1 weights_summary: null progress_bar_refresh_rate: 1 auto_lr_find: false num_sanity_val_steps: 2 accumulate_grad_batches: 3 - strategy: ddp - accelerator: gpu - num_processes: 2 datamodule: transforms: preparations: @@ -118,9 +113,10 @@ datamodule: preparations_predict_list: '${oc.dict.values: datamodule.transforms.preparations.predict}' normalizations_list: '${oc.dict.values: datamodule.transforms.normalizations}' _target_: myria3d.pctl.datamodule.hdf5.HDF5LidarDataModule - data_dir: null - split_csv_path: null - hdf5_file_path: /var/data/cgaydon/data/20220607_151_dalles_proto.myria3d-V2.4.hdf5 + data_dir: /mnt/store-lidarhd/projet-LHD/IA/PACASAM-SHARED-WORKSPACE/CGaydon/20230930_60k_basic_targetted/data/ + epsg: null + split_csv_path: /mnt/store-lidarhd/projet-LHD/IA/PACASAM-SHARED-WORKSPACE/CGaydon/20230930_60k_basic_targetted/data/split.csv + hdf5_file_path: /var/data/CGaydon/myria3d_datasets/20230930_60k_basic_targetted.hdf5 points_pre_transform: _target_: functools.partial _args_: @@ -136,35 +132,16 @@ datamodule: subtile_overlap_predict: ${predict.subtile_overlap} batch_size: 10 num_workers: 3 - prefetch_factor: 3 + prefetch_factor: 2 dataset_description: _convert_: all classification_preprocessing_dict: 3: 5 4: 5 - 160: 64 - 161: 64 - 162: 64 0: 1 - 7: 1 - 46: 1 - 47: 1 - 48: 1 - 49: 1 - 50: 1 - 51: 1 - 52: 1 - 53: 1 - 54: 1 - 55: 1 - 56: 1 - 57: 1 - 58: 1 - 66: 1 - 67: 1 - 77: 1 - 155: 1 - 204: 1 + 66: 65 + 100: 1 + 101: 1 classification_dict: 1: unclassified 2: ground @@ -173,14 +150,6 @@ dataset_description: 9: water 17: bridge 64: lasting_above - class_weights: - - 0.25 - - 0.1 - - 0.1 - - 0.5 - - 2.0 - - 2.0 - - 2.0 d_in: 9 num_classes: 7 callbacks: @@ -227,9 +196,11 @@ model: patience: 20 cooldown: 5 verbose: true + min_lr: 0.001 criterion: _target_: torch.nn.CrossEntropyLoss label_smoothing: 0.0 + ignore_index: 65 _target_: myria3d.models.model.Model d_in: ${dataset_description.d_in} num_classes: ${dataset_description.num_classes} @@ -258,7 +229,7 @@ logger: api_key: ${oc.env:COMET_API_TOKEN} workspace: ${oc.env:COMET_WORKSPACE} project_name: ${oc.env:COMET_PROJECT_NAME} - experiment_name: '[V3.0.2-BS10xMAX40000pts] RandLaNet_base_run_FR_pyg_randla_net_NoRS' + experiment_name: 20230930_60k_basic_targetted auto_log_co2: false disabled: false task: @@ -266,9 +237,9 @@ task: predict: src_las: /path/to/input.las output_dir: /path/to/output_dir/ - ckpt_path: trained_model_assets/proto151_V2.0_epoch_100_Myria3DV3.1.0.ckpt - subtile_overlap: 0 + ckpt_path: trained_model_assets/20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0.ckpt gpus: 0 + subtile_overlap: 0 interpolator: _target_: myria3d.models.interpolation.Interpolator interpolation_k: 10