Photogrammetric Point Cloud Processing

Point Clouds generated through photogrammetric methods (such as Dense Image Mapping) have different characteristics than traditional airborne laser scanner systems or “normal” LIDAR point clouds. ┬áSpecifically, the data is very dense, which can negativity impact processing time, and the data is also very noisy, which can cause the normal classification routines to err. The echo information and surface roughness are not as useful with ground classification with photogrammetric point clouds, so we need to take a different approach to deal with these differences than we do with normal LIDAR data. Starting with TerraScan 016.022 for CONNECT edition the following workflow is now recommended.

Workflow

  1. Classify Isolated Points
  2. Classify Potential Surface (Classify Surface Routine)
  3. Smoothen Potential Surface
  4. Thin Potential Surface
  5. Classify Tentative Surface (Hard Surface Routine)
  6. Classify Ground (Ground Routine)
  7. Conduct above ground point classification process

This process can also be useful for processing point clouds gathered by low-end LIDAR hardware, which could have the similar issues of noisy data.

TS_1800_Photogrammetric Point Cloud Processing

Macros

01_isolated_hard_ground.mac

[TerraScan macro]
Version=015.001
Description=Isolated, ground
Author=
ByLine=0
ByScanner=0
SlaveCanRun=1
AnotherComputerCanRun=1
CanBeDistributed=1

FnScanClassifyClass(9999,1,0)
FnScanClassifyIsolated("1",7,2,"1",0.50,0)
FnScanDeleteClass(7,0)
FnScanClassifySurface("1",8,0.080,0)
FnScanSmoothenXyz("8",0.100,"",0)
FnScanThinPoints("8",16,2,0.100,0.100,0)
FnScanClassifyHard("8",6,0.030,20.00,4.0,0.10,4.0,0)
FnScanClassifyGround("6",2,"2",1,80.0,88.00,4.00,1.40,-1,5.0,0,2.0,0)

02_height_groups.mac

[TerraScan macro]
Version=015.001
Description=Height from ground & grouping
Author=
ByLine=0
ByScanner=0
SlaveCanRun=1
AnotherComputerCanRun=1
CanBeDistributed=1

FnScanClassifyClass(8,3,0)
FnScanClassifyClass(6,3,0)
FnScanDistClass("Any","2")
FnScanClassifyDistance("3",4,0.300,2.000,0)
FnScanClassifyDistance("3",5,2.000,9999.000,0)
FnScanAssignGroups("4-5",0,50,0,-1,0.250,10.0,2.50,-1,4.00,30,-1,20)
FnGrpClassifyBest(3,"4-5",0.250,255,6,12,9,13,14,10,18,17,0)

 

Share

GeoCue Group Support

GeoCue Group Support has written 525 articles

Leave a Reply