Exercise 3: Classify by Machine Learning
LiDAR360 provides a Machine Learning (ML) approach to point cloud classification. The ML classification tool makes use of a random forest method for determining individual point classifications based on a statistical model of user-defined feature types. In this portion of the tutorial the classified point cloud generated in Exercise 2 will be used to train a ML model and that will then be used to classify the remaining points found in the file the training data was subset out of.
Use the subset sample generated in Exercise 2 as training sample for this exercise, or use the TrainingSample.LiData dataset in SampleData folder as training sample.
Machine Learning Classification
1 Click Classify > Classify By Machine Learning.
1.1 Select CityRGB.LiData as input point cloud to classify.
1.2 Select All classes, except for Ground, as From Class.
1.3 Select the training sample as Training Files.
1.4 Select all classes except for Ground as Training Class.
1.5 Save Model as a .vcm training model file, which can also be used directly in other LiDAR360 classification tasks that employ the Classify by Trained ML Model tool.
1.6 Click OK to run the classification.
After the Machine Learning classification process has completed the majority of land cover will be classified correctly. However, some points will be misclassifications and a large number of points will remain as Unclassified. To improve the final results additional post-processing steps must be taken.
In the classification result above, some rooftops are not classified as Building correctly, such as the areas marked in blue below:
Use the interactive classification tools and workflow introduced in Exercise 2 of this tutorial to re-classify these points into Building.
Classify by Height Above Ground
The points that remain as unclassified points after the ML Classification tool has been run mainly represent low vegetation types such as grasses or uneven bare land surfaces. Points that represent vegetation lying above the ground can be roughly separately using information about each points height above nearby ground class points. Therefore, we will use the Classify by Height Above Ground tool to classify both bare land and low vegetation.
1 Click Display > Class Setting Options. Default classes such as Ground and Building are listed in the Class List. The Reserved records can be used for customized classes.
2 Double-click on Reserved16, and rename it to Bare land. Click OK to save.
3 Click Classify > Classify by Height Above Ground.
3.1 Only check CityRGB.LiData as input data. Uncheck the training sample dataset.
3.2 Select UnClassifed as From Class and then select 16-Bare land as the To Class.
3.3 Set Min Height to be 0m, and Max Height to be 0.2 m.
3.4 Click OK to run the tool.
4 Click Classify > Classify by Height Above Ground.
4.1 Only check CityRGB.LiData as input data.
4.2 Select UnClassifed as From Class, and select 3-Low Vegetation as To Class.
4.3 Set Min Height to be 0.2m, and Max Height to be 1.5m.
4.4 Click OK to run the tool.