Update README.md
Browse files
README.md
CHANGED
|
@@ -69,8 +69,7 @@ The Lidar HD is an ambitious initiative that aim to obtain a 3D description of t
|
|
| 69 |
While the model could be applied to other types of point clouds, [Lidar HD](https://geoservices.ign.fr/lidarhd) data have specific geometric specifications. Furthermore, the training data was colorized
|
| 70 |
with very-high-definition aerial images from the ([BD ORTHO®](https://geoservices.ign.fr/bdortho)), which have their own spatial and radiometric specifications. Consequently, the model's prediction would improve for aerial lidar point clouds with similar densities and colorimetries than the original ones.
|
| 71 |
|
| 72 |
-
**_Data preprocessing_**:
|
| 73 |
-
For inference, the same preprocessing should be used (refer to the inference configuration and to the code repository).
|
| 74 |
|
| 75 |
**_Multi-domain model_**: The FRACTAL dataset used for training covers 5 spatial domains from 5 southern regions of metropolitan France.
|
| 76 |
The 250 km² of data in FRACTAL were sampled from an original 17440 km² area, and cover a wide diversity of landscapes and scenes.
|
|
@@ -95,17 +94,45 @@ For convenience and scalable model deployment, Myria3D comes with a Dockerfile.
|
|
| 95 |
|
| 96 |
## Training Details
|
| 97 |
|
|
|
|
|
|
|
|
|
|
| 98 |
### Training Data
|
| 99 |
|
|
|
|
|
|
|
| 100 |
|
| 101 |
### Training Procedure
|
| 102 |
|
| 103 |
#### Preprocessing
|
| 104 |
|
| 105 |
-
|
|
|
|
| 106 |
|
| 107 |
#### Training Hyperparameters
|
| 108 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 109 |
|
| 110 |
#### Speeds, Sizes, Times
|
| 111 |
|
|
|
|
| 69 |
While the model could be applied to other types of point clouds, [Lidar HD](https://geoservices.ign.fr/lidarhd) data have specific geometric specifications. Furthermore, the training data was colorized
|
| 70 |
with very-high-definition aerial images from the ([BD ORTHO®](https://geoservices.ign.fr/bdortho)), which have their own spatial and radiometric specifications. Consequently, the model's prediction would improve for aerial lidar point clouds with similar densities and colorimetries than the original ones.
|
| 71 |
|
| 72 |
+
**_Data preprocessing_**: ?? keep ?
|
|
|
|
| 73 |
|
| 74 |
**_Multi-domain model_**: The FRACTAL dataset used for training covers 5 spatial domains from 5 southern regions of metropolitan France.
|
| 75 |
The 250 km² of data in FRACTAL were sampled from an original 17440 km² area, and cover a wide diversity of landscapes and scenes.
|
|
|
|
| 94 |
|
| 95 |
## Training Details
|
| 96 |
|
| 97 |
+
The data comes from the Lidar HD program, more specifically from acquisition areas that underwent automated classification followed by manual correction (so-called "optimized Lidar HD").
|
| 98 |
+
It meets the quality requirements of the Lidar HD program, which accepts a controlled level of classification errors for each semantic class.
|
| 99 |
+
|
| 100 |
### Training Data
|
| 101 |
|
| 102 |
+
80,000 point cloud patches of 50 x 50 meters were used to train the **FRACTAL-LidarHD_7cl_randlanet** model.
|
| 103 |
+
10,000 additional patches were used for model validation.
|
| 104 |
|
| 105 |
### Training Procedure
|
| 106 |
|
| 107 |
#### Preprocessing
|
| 108 |
|
| 109 |
+
Point clouds were preprocessed for training with point subsampling, filtering of artefacts points, on-the-fly creation of colorimetric features, and normalization of features and coordinates.
|
| 110 |
+
For inference, a preprocessing as close as possible should be used. Refer to the inference configuration file, and to the Myria3D code repository (V3.8).
|
| 111 |
|
| 112 |
#### Training Hyperparameters
|
| 113 |
+
* Model architecture: RandLa-Net (implemented with the Pytorch-Geometric framework in [Myria3D](https://github.com/IGNF/myria3d/blob/main/myria3d/models/modules/pyg_randla_net.py))
|
| 114 |
+
* Augmentation :
|
| 115 |
+
* VerticalFlip(p=0.5)
|
| 116 |
+
* HorizontalFlip(p=0.5)
|
| 117 |
+
* Features:
|
| 118 |
+
* Lidar: x, y, z, echo number (1-based numbering), number of echos, reflectance (a.k.a intensity)
|
| 119 |
+
* Colors:
|
| 120 |
+
* Original: RGB + Near-Infrared (colorization from aerial images by vertical pixel-point alignement)
|
| 121 |
+
* Derived: average color = (R+G+B)/3 and NDVI.
|
| 122 |
+
* Input preprocessing:
|
| 123 |
+
* grid sampling: 0.25 m
|
| 124 |
+
* random sampling: 40,000 (if higher)
|
| 125 |
+
* horizontal normalization: mean xy substraction
|
| 126 |
+
* vertical normalization: min z substraction
|
| 127 |
+
* coordinates normalization: 25 meters division
|
| 128 |
+
* occlusion: nullify color channels if echo_number > 1
|
| 129 |
+
*
|
| 130 |
+
* Batch size: 10
|
| 131 |
+
* Number of epochs : 100 (min) - 150 (max)
|
| 132 |
+
* Early stopping : patience 6 and val_loss as monitor criterium
|
| 133 |
+
* Optimizer : Adam
|
| 134 |
+
* Schaeduler : mode = "min", factor = 0.5, patience = 20, cooldown = 5
|
| 135 |
+
* Learning rate : 0.004
|
| 136 |
|
| 137 |
#### Speeds, Sizes, Times
|
| 138 |
|