One alternative is Fusion. It is a free software for LiDAR processing and visualization.
I would do this in two steps:
- Convert the LiDAR xyz'.txt' files to '.las' with
- Filter out ground returns* outliers using the '.las' file, with
*from you comment under simplexios's answer I'm assuming the LiDAR data are only ground points..
Here is one example showing how to process the data.
- Install Fusion (place it at top hierarchy, right under directory C:).
- Open Fusion's Main Screen.
- Click "Tools", choose "Data conversion", and then: "Import Generic ASCII LIDAR data...".
- Browse you Ascii ".txt" file. Save it as: ".importparam" extension.
- Install Notepad++. Save notepad++ ".txt" file as ".bat" (batch file).
Let's suppose now:
- Fusion is installed at the following directory: c:\Fusion;
- both the ASCII ".txt" and ".importparam" files are stored in: c:\LIDAR;
- the name of the files above are: "project.txt" and "project.importparam";
- the output (".las") filename will be "project.las".
- the output file with the point cloud without outliers will be "ground_filtered.las".
This is the syntax of Fusion's ASCIIIMPORT program command:
ASCIIImport [switches] ParamFile InputFile [OutputFile]
Using examples above, write the following code in Notepad++:
c:\Fusion\Asciiimport las/ c:\LIDAR\project.importparam c:\LIDAR\project.txt c:\LIDAR\project.las
Save the Notepad++ ".bat" file, before running it. Press F5 to execute it.
Now, use the
GroundFilter command line. It will apply the algorithm of Kraus and Pfeifer (1998) that will remove the ground returns outliers.
The syntax of GroundFilter is:
GroundFilter [switches] outputfile cellsize datafile1 datafile2
Using the 'project.las' file, type the following command:
c:\Fusion\GroundFilter c:\LIDAR\ground_filtered.las 5 c:\LIDAR\project.las
Note that GroundFilter allows using more than one input file (datafile), which is your case.
Here I used a cell size of 5 (meters or feet). Tweak the cell size value according to the point cloud return density.
There are other algorithms to classify ground returns and also filter out ground outliers.
Here is an answer which shows how to use the Multiscale Curvature Classification (MCC) algorithm from Evans and Hudak (2007).