LIDAR_COMPARE

The LIDAR_COMPARE command supports the functionality of the Compare Point Cloud, Lidar QC tool and the Find Duplicate Lidar tools. You can identify Lidar points that are different between 2 sets of point clouds or compare the elevations from loaded Lidar point clouds to loaded 3D control points. You can also adjust the Lidar points to match the control points. This command also supports deletion of duplicate points. The following parameters are supported by the command:

  • FILENAME - filename or description of loaded layer(s) of Lidar point clouds to compare to control point(s). This parameter can be listed more than once to specify multiple input files, like FILENAME="FILENAME_1" FILENAME="FILENAME_2". If not specified all loaded Lidar clouds will be used.
  • FILENAME2 - if provided, a comparison between the two sets of point clouds is done. The FILENAME2 parameter specifies the filename or description of loaded layer(s) of Lidar point clouds to compare to the layer(s) specified with the FILENAME parameter. This parameter can be listed more than once to specify multiple input files, like FILENAME2="FILENAME_1" FILENAME2="FILENAME_2".
  • POINT_FILENAME - filename or description of loaded layer(s) with the 3D control point features. If not specified all loaded 3D point features will be used.
  • REPORT_FILENAME - if specified, the name of the text file (CSV format) to save a report to with each control point listed, along with information about the elevation difference at the point, the overall RMSE in meters, and a text reporting of the difference metrics. When recording the Lidar QC tool with the Script Builder, the REPORT_FILENAME parameter will be added and automatically filled with the specified filepath if a report file was specified.
  • LAYER_DESC - specifies the description to use for the layer created when comparing point clouds. The new layer will contain the points that are different.
  • MAX_SEARCH_BIN_MULT - If comparing point clouds, this specifies the maximum distance a point in the FILENAME2 cloud(s) can be from a point in the FILENAME cloud(s) before it is considered a new point. If comparing to control points, this specifies the maximum distance from each control point to look for Lidar to get the Lidar point cloud height. This is a multiple of the native point spacing of the cloud. A negative value indicates the distance in meters (like MAX_SEARCH_BIN_MULT=-0.5 for a 0.5m search distance).
  • MAX_POINT_COUNT - specifies the maximum number of points to consider in the point cloud for getting the height at each location. A value of 0 means that only the search distance is considered. Otherwise, to just consider the 3 nearest points within the search radius, use MAX_POINT_COUNT=3.
  • FIT_POINTS - if FIT_POINTS=YES is provided, the elevation of the Lidar points will be adjusted to match the control point elevations. When recording the Lidar QC tool with the Script Builder, FIT_POINTS=YES will be added if “Fit Lidar to Control Points” was run.
  • COMPARE_BOTH_DIRS - if COMPARE_BOTH_DIRS=YES is provided, it will enable the option to "Include Points From Both Point Cloud Sets Not In the Other" which enables the Reference to Source comparison to be generated in addition to the Source to Reference comparison.
  • DIFFERENCE_REPORT_WINDOWS - if DIFFERENCE_REPORT_WINDOW =YES is provided, it will enable the creation of a Difference Report that will open in 3 windows
  • DELETE_ORIGINALS - when set with the DELETE_DUPLICATES option also enabled, any points found in multiple input point clouds will be removed, leaving just the points that are different between the two point clouds.
  • DELETE_DUPLICATES - if set, Lidar points with the same 3D location (and optionally equal additional attributes specified with the DUPLICATE_ATTR parameter) are marked as deleted
  • DUPLICATE_ATTR - specifies the name of a Lidar attribute that must match to be considered a duplicate. Multiple instances of the parameter can be provided. Without this parameter, DELETE_DUPLICATES deletes all duplicates with the same XYZ values. The following values are recognized:
    • CLASS - classification code
    • GPS_TIME - timestamp
    • INTENSITY - intensity
    • RETURN_NUM - return number
    • RETURN_CNT - number of returns
    • SOURCE_ID - point source ID

    .

SAMPLE

This script will compare and adjust loaded lidar to loaded vector point features, and generate a comparison report in the same folder as the script:

LIDAR_COMPARE REPORT_FILENAME="%SCRIPT_FOLDER%report.csv" FIT_POINTS=YES

An example script to delete duplicates with the same XYZ location, intensity, and GPS time looks like:

LIDAR_COMPARE DELETE_DUPLICATES=YES DUPLICATE_ATTR="INTENSITY" DUPLICATE_ATTR="GPS_TIME"

Example script that compares two point clouds to find changes and saves them to a new changed points layer

LIDAR_COMPARE FILENAME="Augusta Original" FILENAME2="Augusta Modified" MAX_DIST="0.1" LAYER_DESC="Changed Points"