trait FeatureExtractor extends (PreprocessedImage, Point[_3D], TriangleMesh[_3D], PointId) => Option[DenseVector[Double]] with HasIOMetadata

Linear Supertypes
HasIOMetadata, (PreprocessedImage, Point[_3D], TriangleMesh[_3D], PointId) => Option[DenseVector[Double]], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. FeatureExtractor
  2. HasIOMetadata
  3. Function4
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Abstract Value Members

  1. abstract def apply(image: PreprocessedImage, featurePoint: Point[_3D], mesh: TriangleMesh[_3D], profilePointId: PointId): Option[DenseVector[Double]]

    Actually extracts features from an image.

    Actually extracts features from an image. The image and featurePoint arguments are arguably necessary for all feature extractor implementations. The additional two parameters (mesh and point id) are passed in because the feature extractor might need that information. For instance, the NormalDirectionFeatureExtractor needs that information to determine the "spatial orientation" of the line on which the image points to be examined have to lie.

    image

    the image to extract features in

    featurePoint

    the point in space to extract features at

    mesh

    a mesh instance in correspondence with the image

    profilePointId

    a point id on the mesh, corresponding to a profiled point id.

    Definition Classes
    FeatureExtractor → Function4
  2. abstract def featurePoints(mesh: TriangleMesh[_3D], profilePointId: PointId, featurePoint: Point[_3D]): Option[IndexedSeq[Point[_3D]]]

    Return the points at which feature components are extracted for a given mesh and point.

    Return the points at which feature components are extracted for a given mesh and point. This is mainly intended for visualization, and only really makes sense if there exists a one-to-one correspondence between such points and the actual feature components returned by the apply().

    In other words: if a particular implementation uses a method for determining features where there is no correspondence between the feature components and particular points, the method should return None. Otherwise, it should return Some(IndexedSeq(...)), where the length of the sequence matches the length of the feature vector.

    For the difference between profilePointId and featurePoint, see the documentation of the apply method.

    mesh

    the mesh to determine the feature points for

    profilePointId

    the profile point id to determine the feature points for

    featurePoint

    the actual point in space where the features are to be extracted

    returns

    a sequence of points, or None if there is no sensible correspondence between feature and points, as outlined above.

  3. abstract def ioMetadata: IOMetadata
    Definition Classes
    HasIOMetadata

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  6. def curried: (PreprocessedImage) => (Point[_3D]) => (TriangleMesh[_3D]) => (PointId) => Option[DenseVector[Double]]
    Definition Classes
    Function4
    Annotations
    @unspecialized()
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  10. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  16. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  17. def toString(): String
    Definition Classes
    Function4 → AnyRef → Any
  18. def tupled: ((PreprocessedImage, Point[_3D], TriangleMesh[_3D], PointId)) => Option[DenseVector[Double]]
    Definition Classes
    Function4
    Annotations
    @unspecialized()
  19. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  20. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  21. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from HasIOMetadata

Inherited from (PreprocessedImage, Point[_3D], TriangleMesh[_3D], PointId) => Option[DenseVector[Double]]

Inherited from AnyRef

Inherited from Any

Ungrouped