Compass (plugin)

From CloudCompareWiki
Revision as of 10:07, 28 August 2017 by Sam (talk | contribs) (→‎Introduction)
Jump to navigation Jump to search

Introduction

Compass is a structural geology toolbox for the interpretation and analysis of virtual outcrop models. It can be used to digitise and measure both exposed surfaces and intersection traces of fractures, bedding, cleavages or other foliations and lineations. The plugin comprises three tools, one for measuring surfaces, one for traces and one for lineations. These roughly correspond to the functionality of a good field geologist (armed with a trusty compass and notebook), but require less beer and sunscreen. They are described in detail below.


Compass GUI showing the available modes, customizable cost functions and option for data export.

Plane Tool: Measure surface orientations

The plane tool is used to measure the orientations of fully exposed planar structures, such as joint or bedding surfaces. It integrates an interactive circular point selection tool with least-squares plane fitting to interactively estimate local surface orientations in point clouds. When it is activated, a red circle is shown in the 3D window. On picking a point in the virtual outcrop model (left-click), a plane is fitted to all points sitting within the circle, giving an orientation estimate. The circle radius can be changed with ctrl-scroll weel. Note that for this to work correctly, Cloud Compare needs to be using orthographic projection (Display->Toggle Centered Perspective).

Trace Tool: Digitise and measure traces and contacts

The trace tool allows rapid computer-assisted digitisation of fracture traces and lithological contacts. It uses a least-cost path algorithm to 'follow' fracture traces and contacts between user defined start and end points. To use, select the tool and then left click the start and end of a fracture you would like to digitise/measure. The tool will then try to find a fracture trace that links these points. Generally this works remarkably well, though if the desired result is not achieved, intermediate 'waypoints' can be added (also using left click) to modify the trace. To finish a segment click 'Accept' (green tick).


Schematic showing the least-cost path approach to trace detection in a point cloud implemented in the ccCompass plugin.


The results of this tool depend on the cost function used by the least-cost path algorithm. A variety of these have been implemented, and can be activated by clicking the algorithm dropdown (settings icon). Note that cost functions can be used simultaneously. The different cost functions that have been implemented are:

  • Darkness [default] - traces follow dark points in the cloud. This is good for fracture traces defined by shadow.
  • Lightness - traces follow light points in the cloud. This is good for light-coloured structures such as veins.
  • RGB - traces avoid colour contrasts, following points with a similar colour to the start and end points.
  • Curvature - traces follow points on ridges and valleys. This can be good for fracture traces with high relief but can be slow and sensitive to noise. For better performance, use the Curvature and Scalar fields\Gaussian filter tools to create a scalar field which highlights areas of high curvature, then use the Inverse Scalar Field cost function.
  • Gradient - traces follow colour boundaries such as lithological contacts. Note that this can be slow and is very sensitive to noise. For better performance, use the Scalar fields\Gradient tool and Inverse Scalar Field cost function as described above.
  • Distance - traces take the shortest path. I'm not sure what this is good for.
  • Scalar Field - traces follow low values in the active (displayed) scalar field. Use this to implement custom cost functions.
  • Inverse Scalar Field - traces follow high values in the active (displayed) scalar field. Use this to implement custom cost functions.

When using this tool it is important to note that its performance (i.e. speed) scales with trace length. Hence, it can be used with large point clouds if trace lengths are kept small (though long traces can be quickly digitised as multiple segments). Asking the tool to find long traces may result in system crashes.

A plane is fitted to each trace (using least squares) when it is finalized (green tick or space key), providing an estimate of the structure orientation. Unfortunately, in some situations the best-fit plane does not provide a robust estimate of structure orientation, particularly in low relief. To help avoid these issues, planes deriving from traces which are co-linear or within 10° of the average surface orientation along the trace (if point normals have been calculated). Further details on the automatic vetting process can be found at [1].

Plane fitting can be enabled/disabled in the algorithm menu (settings icon).

Lineation Tool: Measure lineations

This tool measures the trend and plunge of a (straight) line between two points. Left-click selects points (as above).

Exporting data

Interpretation generated using this tool is represented internally by Cloud Compare as planes and polygons, and so can be natively stored in CC's .bin files. For ease of use, a save tool has also been included. This tool exports plane and trace data to .csv files, from which data can be easily imported into other software packages for further analysis. Polylines created by the Trace and Lineation tools can also be exported as shapefiles through the normal Save dialog in Cloud Compare.

Further Reading and Citation

If you found this tool useful, please cite Thiele et al., 2017. The publication also contains a more detailed description of the methods employed by this plugin.

Thiele, S. T., Grose, L., Samsu, A., Micklethwaite, S., Vollgger, S. A., and Cruden, A. R.: Rapid, semi-automatic fracture and contact mapping for point clouds, images and geophysical data, Solid Earth Discuss., https://doi.org/10.5194/se-2017-83, in review, 2017

Further information on the automatic vetting process for structural orientation estimates can be found in:

[1] Thiele, ST., Micklethwaite, S., Bourke, P., Verrall, M., Kovesi, P., 2015, Insights into the mechanics of en-échelon sigmoidal vein formation using ultra-high resolution photogrammetry and computed tomography, Journal of Structural Geology, Volume 77, Pages 27-44, ISSN 0191-8141, http://dx.doi.org/10.1016/j.jsg.2015.05.006.