- See also
- python.workflows.qltAccuracyPoint
Aim of module
Performs absolute accuracy checks for entire flight blocks w.r.t. to single (ground) check points.
General description
The resulting error metrics are provided as histogram and spread sheets, deviations maps (color coded raster maps), and point shape files storing error metrics as additional attributes. For each check point, the neighbouring points of the flight block are queried serving as input for normals estimation. The orthogonal distance w.r.t to the best fitting planes are stored together with the standard deviation of the plane fit. The orthogonal distances are subsequently statistically analysed and postprocessed (rasterized, colorized, exported as a point shape file).
- See also
- Script documentation
The script provides two modes of calculating the deviations w.r.t. the control points (-cptFile):
-
perpendicular distance to a best fitting plane estimated from the neighbouring points of the point cloud: This is the more accuracte, but also the computationally more expensive mode. The following workflow applies: First, the control point file is imported to ODM. For each control point the neighour point in the point cloud dataset (-i,-inFile) are queried based on the search radius defined for plane/normal estimation (cf. qltAccuracy.cfg configuration file). Then the control points and neighbour points are merged to a single ODM and for each control point a best fitting plane is estimated via ....
-
vertical distances to a given Digital Surface Model (-dsm):
The following table contains a list of all involved modules and their default storage location:
Parameter description
-cptFile text file, directory or check point file
Type : Path
Remark : mandatory
Description: Either the name of an ASCII file (extension .txt) containing the names of the check point files (one file per line) or an expression using wildcards to specify the respective data sets are accepted as Input.
-dsm DSM/DSM-sigma0 raster files in GDAL supported file format.
Type : Path
Remark : optional
Description: If set, the check point offsets are calculated as vertical distances from the DSM rather than as point-to-plane distances derived from the point cloud via plane fitting. The first path denotes the DSM (i.e. elevations) and an optional second path denotes the corresponding sigma (std.dev.) raster. If the latter is available, the std.dev. is reported along with the offsets for each check point.
Common Package/Script Options
Settings concerning the general options for (package) scripts.
-infile input text file, directory or strip file
Type : Path
Remark : mandatory
Description: As input either the name of an ASCII file (extension .txt) containing the names of the data files (one file per line) or an expression using wildcards to specify the respective data sets are accepted.
-outfile output directory or settings file (.txt)
Type : Path
Remark : optional
Description: Specifies the directory where the final results are stored. If not specified, the results are created in the current working directory.
-tempdir temporary directory
Type : Path
Remark : optional, default: current directory
Description: Specifies the directory where all intermediate results are stored. If not specified, a TEMP subdirectory is created in the current working directory. Additional subdirectories (one per involved module) are created.
-cfg Path to configuration file
Type : Path
Remark : optional, default: $OPALS_ROOT/cfg/qltAccuracyPoint.cfg
Description: The name of a configuration file containing all relevant calculation parameters is expected. If not specified, the default cfg files as provided by the OPALS distribution are used.
-projectDir project directory
Type : Path
Remark : optional, default: current directory
Description: The default project directory is the current working directory, but can be easily changed by this parameter. All path parameters, if not specified as absolute paths, are interpreted relative to the project directory.
-skipIfExists skip processing if result already exists
Type : Boolean
Remark : optional, default: True
Description: Skip processing if result already exists. In order to re-run current script it is useful to repeat the processing only if the respective output does not already exist. This allows for incremental processing of large projects.
possible input | evaluates to |
1, true, yes, Boolean(True), True | Boolean(True) |
0, false, no, Boolean(False), False | Boolean(False) |
-distribute determine how many local processes should be used
Type : String
Remark : optional
Description: according to the number chosen as the value, independent processes are being started to parallelise (parts of) the program and therefore enhance the runtime.
Logging Options
Settings concerning the verbosity level of logging.
-fileLogLevel Log level in the logfile
Type : LogLevel
Remark : optional, default: info
-screenLogLevel Log level on screen
Type : LogLevel
Remark : optional, default: info
-logger Logger
Type : Logger
Remark : optional
Description: Logger is usually provided by the opals framework.The user may provide their own logger object, but it has to function in the same way as the opals Logger.
Examples
The data used in the following examples can be found in the $OPALS_ROOT/demo/
directory.
opals qltAccuracyPoint -i
strip??.odm -cptFile cpt.txt -t
temp -o QC\acc -skipIfExists 0