Helios++
Helios software for LiDAR simulations
|
Public Member Functions | |
DetailedPlane ()=default | |
Default plane constructor. | |
DetailedPlane (vector< T > centroid, vector< T > orthonormal, T scatter=0, T curvature=0) | |
Build a detailed plane with given centroid, orthonormal and scatter (plane attributes) More... | |
DetailedPlane (vector< T > centroid, vector< T > orthonormal, T scatter=0, T curvature=0, T sum=0, T omnivariance=0, T entropy=0, T verticality=0, T horizontality=0, T linearity=0, T planarity=0, T sphericity=0, vector< T > angularVerticality=vector< T >(0), vector< T > verticalMoments=vector< T >(0), vector< T > absoluteMoments=vector< T >(0)) | |
Build a detailed plane with all attributes. More... | |
![]() | |
Plane ()=default | |
Default plane constructor. | |
Plane (vector< T > centroid, vector< T > orthonormal, T scatter=0, T curvature=0) | |
Build a plane with given centroid, orthonormal and scatter. More... | |
Public Attributes | |
T | sum |
Sum of eigenvalues or singular values coming from plane fitting process. More... | |
T | omnivariance |
Omnivariance from eigenvalues or singular values. More... | |
T | entropy |
Entropy from eigenvalues or singular values. More... | |
T | verticality |
Verticality defining planes from \(\mathbb{R}^{3}\). More... | |
T | horizontality |
Horizontality defining planes from \(\mathbb{R}^{3}\). More... | |
T | linearity |
Linearity defining planes from \(\mathbb{R}^{3}\). More... | |
T | planarity |
Planarity defining planes from \(\mathbb{R}^{3}\). More... | |
T | sphericity |
Sphericity defining the plane. More... | |
vector< T > | angularVerticality |
Two angular verticalities. More... | |
vector< T > | verticalMoments |
Two vertical moments. More... | |
vector< T > | absoluteMoments |
Absolute moments of order 1 and 2 for each eigen or singular vector defining the plane. More... | |
![]() | |
vector< T > | centroid |
Coordinates for plane centroid. | |
vector< T > | orthonormal |
Plane orthonormal vector. | |
T | scatter |
When the plane has been obtained through fitting to a sample, scatter will quantify variation with respect to elements in the sample. More... | |
T | curvature |
When the plane has been obtained through fitting to a sample, curvature is defined by expression: More... | |
|
inline |
Build a detailed plane with given centroid, orthonormal and scatter (plane attributes)
|
inline |
Build a detailed plane with all attributes.
vector<T> SurfaceInspector::maths::DetailedPlane< T >::absoluteMoments |
Absolute moments of order 1 and 2 for each eigen or singular vector defining the plane.
Let \(n\) be the number of neighbors, \(c\) be the centroid and \(k\) be the moment. In this case \(k \in {1, 2}\). So absolute moments can be defined by following expression:
\[ \frac{1}{n}\left| \sum_{i=1}^{n}{\langle{p_{i}-c, e_{j}}\rangle^{k}} \right| \]
Where \(e_{j}\) is the jth eigen or singular vector
vector<T> SurfaceInspector::maths::DetailedPlane< T >::angularVerticality |
Two angular verticalities.
\[ V_{1} = \left|\frac{\pi}{2} - \textrm{angle}(e_{1},e_{z})\right| \]
\[ V_{2} = \left|\frac{\pi}{2} - \textrm{angle}(e_{2},e_{z})\right| \]
Where \(e_{z}=(0, 0, 1)\) for the 3D case
T SurfaceInspector::maths::DetailedPlane< T >::entropy |
Entropy from eigenvalues or singular values.
\[ -\sum_{i=1}^{n}{\lambda_{i}\ln(\lambda_{i})} \]
T SurfaceInspector::maths::DetailedPlane< T >::horizontality |
Horizontality defining planes from \(\mathbb{R}^{3}\).
Let \(\hat{v}\) be the plane othonormal
\[ |(v_{3}| \]
T SurfaceInspector::maths::DetailedPlane< T >::linearity |
Linearity defining planes from \(\mathbb{R}^{3}\).
Let \(\lambda_{1}\) be the minimum eigen value or singular value and \(\lambda_{n}\) be the maximum eigen value or singular value, so for \(\mathbb{R}^{3}, \lambda_{n}=\lambda_{3}\)
\[ \frac{\lambda_{n}-\lambda_{2}}{\lambda_{n}} \]
T SurfaceInspector::maths::DetailedPlane< T >::omnivariance |
Omnivariance from eigenvalues or singular values.
\[ \prod_{i=1}^{n}\left({\lambda_{i}}\right)^{\frac{1}{n}} \]
T SurfaceInspector::maths::DetailedPlane< T >::planarity |
Planarity defining planes from \(\mathbb{R}^{3}\).
Let \(\lambda_{1}\) be the minimum eigen value or singular value and \lambda_{n} be the maximum eigen value or singular value, so for \(\mathbb{R}^{3}, \lambda_{n}=\lambda_{3}\)
\[ \frac{\lambda_{2}-\lambda_{1}}{\lambda_{n}} \]
T SurfaceInspector::maths::DetailedPlane< T >::sphericity |
Sphericity defining the plane.
Let \(\lambda_{1}\) be the minimum eigen value or singular value and \(\lambda_{n}\) be the maximum eigen value or singular value, so for \(\mathbb{R}^{3}, \lambda_{n}=\lambda_{3}\)
\[ \frac{\lambda_{1}}{\lambda_{n}} \]
T SurfaceInspector::maths::DetailedPlane< T >::sum |
Sum of eigenvalues or singular values coming from plane fitting process.
\[ \sum_{i=1}^{n}{\lambda_{i}} \]
T SurfaceInspector::maths::DetailedPlane< T >::verticality |
Verticality defining planes from \(\mathbb{R}^{3}\).
Let \(\hat{v}\) be the plane orthonormal
\[ ||(v_{1}, v_{2})|| \]
vector<T> SurfaceInspector::maths::DetailedPlane< T >::verticalMoments |
Two vertical moments.
Let \(n\) be the number of neighbors, \(c\) be the centroid and \(k\) be the moment. In this case \(k \in {1, 2}\). So vertical moments can be defined by following expression:
\[ \frac{1}{n} \sum_{i=1}^{n}{\langle{p_{i}-c, e_{z}}\rangle^{k}} \]
Where \(e_{z}=(0, 0, 1)\) for the 3D case