eVision C++ API 26.10.0-beta.2.dev
Loading...
Searching...
No Matches
eVision::Easy3D::E3DObjectExtractor Class Reference

E3DObjectExtractor is used to extract 3D objects from a ZMap. More...

#include <eVision/Easy3D/Easy3DObject/E3DObjectExtractor.h>

Collaboration diagram for eVision::Easy3D::E3DObjectExtractor:

Public Member Functions

 E3DObjectExtractor ()
 Constructs an E3DObjectExtractor with default (invalid) values.
 E3DObjectExtractor (const eVision::Easy3D::E3DObjectExtractor &other)
 Copy constructor for E3DObjectExtractor.
virtual ~E3DObjectExtractor () throw ()
eVision::Easy3D::E3DObjectExtractor & operator= (const eVision::Easy3D::E3DObjectExtractor &other)
 Assignment operator.
bool operator== (const eVision::Easy3D::E3DObjectExtractor &other) const
 Comparison operator.
void Load (const std::string &path)
 Load the E3DObjectExtractor. The given ESerializer must have been created for reading.
void Load (eVision::ESerializer *serializer)
 Load the E3DObjectExtractor. The given ESerializer must have been created for reading.
void Save (const std::string &path)
 Save the E3DObjectExtractor. The given ESerializer must have been created for writing.
void Save (eVision::ESerializer *serializer)
 Save the E3DObjectExtractor. The given ESerializer must have been created for writing.
void SetComputeFeature (eVision::Easy3D::E3DObjectFeature feature, bool enable)
 Sets true if the feature should computed by the extractor, false otherwise.
void UnsetAllComputeFeatures ()
 Disables all features to be computed by the extractor.
void SetAllComputeFeatures ()
 Enables all features to be computed by the extractor.
bool GetComputeFeature (eVision::Easy3D::E3DObjectFeature feature) const
 Returns true or false depending if the feature should be computed by the extractor.
void SetLengthRange (const eVision::EFloatRange &lengthRange)
 The extraction object length range in metric units. Length is the largest dimension of the object, expressed the ZMap coordinate system.
const eVision::EFloatRange & GetLengthRange () const
 The extraction object length range in metric units. Length is the largest dimension of the object, expressed the ZMap coordinate system.
void SetWidthRange (const eVision::EFloatRange &widthRange)
 The extraction object width range in metric units. Width is the smallest dimension of the object, expressed the ZMap coordinate system.
const eVision::EFloatRange & GetWidthRange () const
 The extraction object width range in metric units. Width is the smallest dimension of the object, expressed the ZMap coordinate system.
void SetLocalHeightRange (const eVision::EFloatRange &localHeightRange)
 The extraction object local height range in metric units. Local height is the dimension of the object along the normal of the base plane. For a height based on the ZMap origin, use E3DObjectExtractor::SetLocalHeightRange.
const eVision::EFloatRange & GetLocalHeightRange () const
 The extraction object local height range in metric units. Local height is the dimension of the object along the normal of the base plane. For a height based on the ZMap origin, use E3DObjectExtractor::SetLocalHeightRange.
void SetReferenceHeightRange (const eVision::EFloatRange &referenceHeightRange)
 The extraction object reference height range in metric units. Reference height is the dimension of the object along the ZMap Z axis from ZMap origin. For a height based on the object base plane, use E3DObjectExtractor::SetReferenceHeightRange.
const eVision::EFloatRange & GetReferenceHeightRange () const
 The extraction object reference height range in metric units. Reference height is the dimension of the object along the ZMap Z axis from ZMap origin. For a height based on the object base plane, use E3DObjectExtractor::SetReferenceHeightRange.
void SetAspectRatioRange (const eVision::EFloatRange &arRange)
 The extraction 2D aspect ratio range. The aspect ratio is the smallest dimension divided by the largest dimension, its value is always between 0 and 1. The smaller the ratio, the more elongated the object is. A value of 1 means a perfectly square object (length=width).
const eVision::EFloatRange & GetAspectRatioRange () const
 The extraction 2D aspect ratio range. The aspect ratio is the smallest dimension divided by the largest dimension, its value is always between 0 and 1. The smaller the ratio, the more elongated the object is. A value of 1 means a perfectly square object (length=width).
void SetOrientationRange (const eVision::EFloatRange &orientationRange)
 The allowed angle range of the oriented 2D rectangle region. This is the angle of the longest axis (the length of the object), in counter clockwise direction, from the horizontal axis. Valid values are between -90 and +90 degrees (or -Pi/2 and Pi/2 if angle unit is radians).
const eVision::EFloatRange & GetOrientationRange () const
 The allowed angle range of the oriented 2D rectangle region. This is the angle of the longest axis (the length of the object), in counter clockwise direction, from the horizontal axis. Valid values are between -90 and +90 degrees (or -Pi/2 and Pi/2 if angle unit is radians).
void SetLocalTiltRange (const eVision::EFloatRange &tiltRange)
 The allowed angle range of the object local tilt. This is the angle between the base plane and the object plane. A value of 0 means that the object top surface is parallel to its base. Valid values are between 0 and +90 degrees (or 0 and Pi/2 if angle unit is radians).
const eVision::EFloatRange & GetLocalTiltRange () const
 The allowed angle range of the object local tilt. This is the angle between the base plane and the object plane. A value of 0 means that the object top surface is parallel to its base. Valid values are between 0 and +90 degrees (or 0 and Pi/2 if angle unit is radians).
void SetReferenceTiltRange (const eVision::EFloatRange &tiltRange)
 The allowed angle range of the object reference tilt. This is the angle between the object plane and the ZMap Z Axis. A value of 0 means that the object top surface is parallel to the ZMap XY plane. Valid values are between 0 and +90 degrees (or 0 and Pi/2 if angle unit is radians).
const eVision::EFloatRange & GetReferenceTiltRange () const
 The allowed angle range of the object reference tilt. This is the angle between the object plane and the ZMap Z Axis. A value of 0 means that the object top surface is parallel to the ZMap XY plane. Valid values are between 0 and +90 degrees (or 0 and Pi/2 if angle unit is radians).
void SetAreaRange (const eVision::EFloatRange &areaRange)
 The allowed area range for the objects. Area is expressed in the metric coordinate system. E.g, if the ZMap space is in mm, the area is in mm2.
const eVision::EFloatRange & GetAreaRange () const
 The allowed area range for the objects. Area is expressed in the metric coordinate system. E.g, if the ZMap space is in mm, the area is in mm2.
void SetVolumeRange (const eVision::EFloatRange &volumeRange)
 The allowed volume range for the objects. Volume is expressed in the metric coordinate system. E.g, if the ZMap space is in mm, the volume is in mm3.
const eVision::EFloatRange & GetVolumeRange () const
 The allowed volume range for the objects. Volume is expressed in the metric coordinate system. E.g, if the ZMap space is in mm, the volume is in mm3.
void SetOverlappedObject (bool state)
 Enable or disable the extraction of overlapped objects.
bool GetOverlappedObject () const
 Enable or disable the extraction of overlapped objects.
void SetOverlappedAreaRatio (float ratio)
 Set or Get the object area ratio applicable when the overlapped mode is enabled. The area ratio defines the minimum area difference between 2 extracted objects that overlap. E.g with a value of 4, the top object must have an area at least 4 times smaller than the bottom object (or the bottom object must have an area at least 4 times bigger than the top object).
float GetOverlappedAreaRatio () const
 Set or Get the object area ratio applicable when the overlapped mode is enabled. The area ratio defines the minimum area difference between 2 extracted objects that overlap. E.g with a value of 4, the top object must have an area at least 4 times smaller than the bottom object (or the bottom object must have an area at least 4 times bigger than the top object).
void SetOverlappedHeightDifference (float difference)
 Set or Get the object height difference applicable when the overlapped mode is enabled. That value defines the minimum height difference between 2 overlapped objects.
float GetOverlappedHeightDifference () const
 Set or Get the object height difference applicable when the overlapped mode is enabled. That value defines the minimum height difference between 2 overlapped objects.
void SetExtractionSensitivity (float sensitivity)
 Set or Get the extraction sensitivity. The sensitivity ranges from 0 (minimum sensitivity) to 1 (maximum sensitivity). With high sensitivity, the library tries to extract object that are mixed with their surrounding. Low sensitivity values tend to ignore faint objects. The default sensitivity value is 0.6.
float GetExtractionSensitivity () const
 Set or Get the extraction sensitivity. The sensitivity ranges from 0 (minimum sensitivity) to 1 (maximum sensitivity). With high sensitivity, the library tries to extract object that are mixed with their surrounding. Low sensitivity values tend to ignore faint objects. The default sensitivity value is 0.6.
void SetContourReinforce (bool state)
 When contour reinforcement is enable, a filter is applied to the input image to detect and enhance the frontiers between objects. That option is interesting when objects to extract are in contact. The default state is false (OFF).
bool GetContourReinforce () const
 When contour reinforcement is enable, a filter is applied to the input image to detect and enhance the frontiers between objects. That option is interesting when objects to extract are in contact. The default state is false (OFF).
int Extract (const eVision::Easy3D::EZMap8 &zMap)
 Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.
int Extract (const eVision::Easy3D::EZMap8 &zMap, eVision::ERegion &region)
 Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.
int Extract (const eVision::Easy3D::EZMap16 &zMap)
 Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.
int Extract (const eVision::Easy3D::EZMap16 &zMap, eVision::ERegion &region)
 Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.
int Extract (const eVision::Easy3D::EZMap32f &zMap)
 Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.
int Extract (const eVision::Easy3D::EZMap32f &zMap, eVision::ERegion &region)
 Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.
int Extract (const eVision::Easy3D::EZMap *zMap)
 Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.
int Extract (const eVision::Easy3D::EZMap *zMap, eVision::ERegion &region)
 Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.
std::vector< eVision::Easy3D::E3DObject > GetObjects () const
 Returns the list of extracted objects. The objects are sorted from smallest area to largest area.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::Easy3D::E3DObjectFeature feature, const eVision::ERGBColor &color, float zoomX, float zoomY, float panX, float panY) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::Easy3D::E3DObjectFeature feature, const eVision::ERGBColor &color, float zoomX, float zoomY, float panX) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::Easy3D::E3DObjectFeature feature, const eVision::ERGBColor &color, float zoomX, float zoomY) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::Easy3D::E3DObjectFeature feature, const eVision::ERGBColor &color, float zoomX) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::Easy3D::E3DObjectFeature feature, const eVision::ERGBColor &color) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void Draw (eVision::EDrawAdapter *graphicContext, eVision::Easy3D::E3DObjectFeature feature) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void Draw (HDC graphicContext, eVision::Easy3D::E3DObjectFeature feature, const eVision::ERGBColor &color, float zoomX, float zoomY, float panX, float panY) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void Draw (HDC graphicContext, eVision::Easy3D::E3DObjectFeature feature, const eVision::ERGBColor &color, float zoomX, float zoomY, float panX) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void Draw (HDC graphicContext, eVision::Easy3D::E3DObjectFeature feature, const eVision::ERGBColor &color, float zoomX, float zoomY) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void Draw (HDC graphicContext, eVision::Easy3D::E3DObjectFeature feature, const eVision::ERGBColor &color, float zoomX) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void Draw (HDC graphicContext, eVision::Easy3D::E3DObjectFeature feature, const eVision::ERGBColor &color) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void Draw (HDC graphicContext, eVision::Easy3D::E3DObjectFeature feature) const
 Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.
void AddToMesh (eVision::Easy3D::E3DObjectFeature feature, eVision::Easy3D::EMesh &mesh) const
 For all extracted objects, adds a 3D representation (in the form of a list of triangles) of the given feature to the given mesh. If the feature is not defined for the E3DObject, this method has no effect.
eVision::ERegion GetObjectsMask () const
 Gets the ERegion composed of all the objects ZMap pixels.
eVision::ERegion GetBackgroundMask () const
 Gets the ERegion composed of background ZMap pixels (where there is not object).
 E3DObjectExtractor (CppWrapperInternal::InternalConstructor)

Public Attributes

CppWrapperInternal::WrappedClass wrappedClass_

Detailed Description

E3DObjectExtractor is used to extract 3D objects from a ZMap.

License(s): Easy3DObject

Constructor & Destructor Documentation

◆ E3DObjectExtractor() [1/3]

eVision::Easy3D::E3DObjectExtractor::E3DObjectExtractor ( )

Constructs an E3DObjectExtractor with default (invalid) values.

◆ E3DObjectExtractor() [2/3]

eVision::Easy3D::E3DObjectExtractor::E3DObjectExtractor ( const eVision::Easy3D::E3DObjectExtractor & other)

Copy constructor for E3DObjectExtractor.

Parameters
otherThe other E3DObjectExtractor that we will copy into this one.

◆ ~E3DObjectExtractor()

eVision::Easy3D::E3DObjectExtractor::~E3DObjectExtractor ( )
throw ( )
virtual

◆ E3DObjectExtractor() [3/3]

eVision::Easy3D::E3DObjectExtractor::E3DObjectExtractor ( CppWrapperInternal::InternalConstructor )

Member Function Documentation

◆ AddToMesh()

void eVision::Easy3D::E3DObjectExtractor::AddToMesh ( eVision::Easy3D::E3DObjectFeature feature,
eVision::Easy3D::EMesh & mesh ) const

For all extracted objects, adds a 3D representation (in the form of a list of triangles) of the given feature to the given mesh. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
featureThe feature to draw, only 3D features are supported.
meshThe mesh to add the graphics for.

◆ Draw() [1/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( eVision::EDrawAdapter * graphicContext,
eVision::Easy3D::E3DObjectFeature feature ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.

Drawing is done in the device context associated to the desired window.

◆ Draw() [2/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( eVision::EDrawAdapter * graphicContext,
eVision::Easy3D::E3DObjectFeature feature,
const eVision::ERGBColor & color ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.
colorThe color in which to draw the feature (optional).

Drawing is done in the device context associated to the desired window.

◆ Draw() [3/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( eVision::EDrawAdapter * graphicContext,
eVision::Easy3D::E3DObjectFeature feature,
const eVision::ERGBColor & color,
float zoomX ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.
colorThe color in which to draw the feature (optional).
zoomXHorizontal zooming factor. By default, true scale is used.

Drawing is done in the device context associated to the desired window.

◆ Draw() [4/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( eVision::EDrawAdapter * graphicContext,
eVision::Easy3D::E3DObjectFeature feature,
const eVision::ERGBColor & color,
float zoomX,
float zoomY ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.
colorThe color in which to draw the feature (optional).
zoomXHorizontal zooming factor. By default, true scale is used.
zoomYVertical zooming factor. If set to 0 (default), the horizontal zooming factor is used instead, so as to provide isotropic zooming.

Drawing is done in the device context associated to the desired window.

◆ Draw() [5/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( eVision::EDrawAdapter * graphicContext,
eVision::Easy3D::E3DObjectFeature feature,
const eVision::ERGBColor & color,
float zoomX,
float zoomY,
float panX ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.
colorThe color in which to draw the feature (optional).
zoomXHorizontal zooming factor. By default, true scale is used.
zoomYVertical zooming factor. If set to 0 (default), the horizontal zooming factor is used instead, so as to provide isotropic zooming.
panXHorizontal panning value expressed in pixels. By default, no panning occurs.

Drawing is done in the device context associated to the desired window.

◆ Draw() [6/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( eVision::EDrawAdapter * graphicContext,
eVision::Easy3D::E3DObjectFeature feature,
const eVision::ERGBColor & color,
float zoomX,
float zoomY,
float panX,
float panY ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.
colorThe color in which to draw the feature (optional).
zoomXHorizontal zooming factor. By default, true scale is used.
zoomYVertical zooming factor. If set to 0 (default), the horizontal zooming factor is used instead, so as to provide isotropic zooming.
panXHorizontal panning value expressed in pixels. By default, no panning occurs.
panYVertical panning value expressed in pixels. By default, no panning occurs.

Drawing is done in the device context associated to the desired window.

◆ Draw() [7/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( HDC graphicContext,
eVision::Easy3D::E3DObjectFeature feature ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.

Drawing is done in the device context associated to the desired window.

Deprecated

Use the overload taking an EDrawAdapter by using an instance of EWindowsDrawAdapter.

Deprecated in version 23.12. Scheduled to be removed in version 27.6.

◆ Draw() [8/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( HDC graphicContext,
eVision::Easy3D::E3DObjectFeature feature,
const eVision::ERGBColor & color ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.
colorThe color in which to draw the feature (optional).

Drawing is done in the device context associated to the desired window.

Deprecated

Use the overload taking an EDrawAdapter by using an instance of EWindowsDrawAdapter.

Deprecated in version 23.12. Scheduled to be removed in version 27.6.

◆ Draw() [9/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( HDC graphicContext,
eVision::Easy3D::E3DObjectFeature feature,
const eVision::ERGBColor & color,
float zoomX ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.
colorThe color in which to draw the feature (optional).
zoomXHorizontal zooming factor. By default, true scale is used.

Drawing is done in the device context associated to the desired window.

Deprecated

Use the overload taking an EDrawAdapter by using an instance of EWindowsDrawAdapter.

Deprecated in version 23.12. Scheduled to be removed in version 27.6.

◆ Draw() [10/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( HDC graphicContext,
eVision::Easy3D::E3DObjectFeature feature,
const eVision::ERGBColor & color,
float zoomX,
float zoomY ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.
colorThe color in which to draw the feature (optional).
zoomXHorizontal zooming factor. By default, true scale is used.
zoomYVertical zooming factor. If set to 0 (default), the horizontal zooming factor is used instead, so as to provide isotropic zooming.

Drawing is done in the device context associated to the desired window.

Deprecated

Use the overload taking an EDrawAdapter by using an instance of EWindowsDrawAdapter.

Deprecated in version 23.12. Scheduled to be removed in version 27.6.

◆ Draw() [11/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( HDC graphicContext,
eVision::Easy3D::E3DObjectFeature feature,
const eVision::ERGBColor & color,
float zoomX,
float zoomY,
float panX ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.
colorThe color in which to draw the feature (optional).
zoomXHorizontal zooming factor. By default, true scale is used.
zoomYVertical zooming factor. If set to 0 (default), the horizontal zooming factor is used instead, so as to provide isotropic zooming.
panXHorizontal panning value expressed in pixels. By default, no panning occurs.

Drawing is done in the device context associated to the desired window.

Deprecated

Use the overload taking an EDrawAdapter by using an instance of EWindowsDrawAdapter.

Deprecated in version 23.12. Scheduled to be removed in version 27.6.

◆ Draw() [12/12]

void eVision::Easy3D::E3DObjectExtractor::Draw ( HDC graphicContext,
eVision::Easy3D::E3DObjectFeature feature,
const eVision::ERGBColor & color,
float zoomX,
float zoomY,
float panX,
float panY ) const

Draws the specified feature of all extracted objects in the given graphic context. If the feature is not defined for the E3DObject, this method has no effect.

Parameters
graphicContextGraphic context on which to draw.
featureThe feature to draw.
colorThe color in which to draw the feature (optional).
zoomXHorizontal zooming factor. By default, true scale is used.
zoomYVertical zooming factor. If set to 0 (default), the horizontal zooming factor is used instead, so as to provide isotropic zooming.
panXHorizontal panning value expressed in pixels. By default, no panning occurs.
panYVertical panning value expressed in pixels. By default, no panning occurs.

Drawing is done in the device context associated to the desired window.

Deprecated

Use the overload taking an EDrawAdapter by using an instance of EWindowsDrawAdapter.

Deprecated in version 23.12. Scheduled to be removed in version 27.6.

◆ Extract() [1/8]

int eVision::Easy3D::E3DObjectExtractor::Extract ( const eVision::Easy3D::EZMap * zMap)

Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.

Parameters
zMapThe source ZMap.

◆ Extract() [2/8]

int eVision::Easy3D::E3DObjectExtractor::Extract ( const eVision::Easy3D::EZMap * zMap,
eVision::ERegion & region )

Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.

Parameters
zMapThe source ZMap.
regionThe region of interest, only pixels inside the given region are considered for object extraction.

◆ Extract() [3/8]

int eVision::Easy3D::E3DObjectExtractor::Extract ( const eVision::Easy3D::EZMap16 & zMap)

Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.

Parameters
zMapThe source ZMap.

◆ Extract() [4/8]

int eVision::Easy3D::E3DObjectExtractor::Extract ( const eVision::Easy3D::EZMap16 & zMap,
eVision::ERegion & region )

Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.

Parameters
zMapThe source ZMap.
regionThe region of interest, only pixels inside the given region are considered for object extraction.

◆ Extract() [5/8]

int eVision::Easy3D::E3DObjectExtractor::Extract ( const eVision::Easy3D::EZMap32f & zMap)

Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.

Parameters
zMapThe source ZMap.

◆ Extract() [6/8]

int eVision::Easy3D::E3DObjectExtractor::Extract ( const eVision::Easy3D::EZMap32f & zMap,
eVision::ERegion & region )

Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.

Parameters
zMapThe source ZMap.
regionThe region of interest, only pixels inside the given region are considered for object extraction.

◆ Extract() [7/8]

int eVision::Easy3D::E3DObjectExtractor::Extract ( const eVision::Easy3D::EZMap8 & zMap)

Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.

Parameters
zMapThe source ZMap.

◆ Extract() [8/8]

int eVision::Easy3D::E3DObjectExtractor::Extract ( const eVision::Easy3D::EZMap8 & zMap,
eVision::ERegion & region )

Processes the ZMap and extracts a list of 3D objects matching the criteria. Returns the number of extracted objects.

Parameters
zMapThe source ZMap.
regionThe region of interest, only pixels inside the given region are considered for object extraction.

◆ GetAreaRange()

const eVision::EFloatRange & eVision::Easy3D::E3DObjectExtractor::GetAreaRange ( ) const

The allowed area range for the objects. Area is expressed in the metric coordinate system. E.g, if the ZMap space is in mm, the area is in mm2.

◆ GetAspectRatioRange()

const eVision::EFloatRange & eVision::Easy3D::E3DObjectExtractor::GetAspectRatioRange ( ) const

The extraction 2D aspect ratio range. The aspect ratio is the smallest dimension divided by the largest dimension, its value is always between 0 and 1. The smaller the ratio, the more elongated the object is. A value of 1 means a perfectly square object (length=width).

◆ GetBackgroundMask()

eVision::ERegion eVision::Easy3D::E3DObjectExtractor::GetBackgroundMask ( ) const

Gets the ERegion composed of background ZMap pixels (where there is not object).

◆ GetComputeFeature()

bool eVision::Easy3D::E3DObjectExtractor::GetComputeFeature ( eVision::Easy3D::E3DObjectFeature feature) const

Returns true or false depending if the feature should be computed by the extractor.

Parameters
featureThe feature that is computed or not.

◆ GetContourReinforce()

bool eVision::Easy3D::E3DObjectExtractor::GetContourReinforce ( ) const

When contour reinforcement is enable, a filter is applied to the input image to detect and enhance the frontiers between objects. That option is interesting when objects to extract are in contact. The default state is false (OFF).

◆ GetExtractionSensitivity()

float eVision::Easy3D::E3DObjectExtractor::GetExtractionSensitivity ( ) const

Set or Get the extraction sensitivity. The sensitivity ranges from 0 (minimum sensitivity) to 1 (maximum sensitivity). With high sensitivity, the library tries to extract object that are mixed with their surrounding. Low sensitivity values tend to ignore faint objects. The default sensitivity value is 0.6.

◆ GetLengthRange()

const eVision::EFloatRange & eVision::Easy3D::E3DObjectExtractor::GetLengthRange ( ) const

The extraction object length range in metric units. Length is the largest dimension of the object, expressed the ZMap coordinate system.

◆ GetLocalHeightRange()

const eVision::EFloatRange & eVision::Easy3D::E3DObjectExtractor::GetLocalHeightRange ( ) const

The extraction object local height range in metric units. Local height is the dimension of the object along the normal of the base plane. For a height based on the ZMap origin, use E3DObjectExtractor::SetLocalHeightRange.

◆ GetLocalTiltRange()

const eVision::EFloatRange & eVision::Easy3D::E3DObjectExtractor::GetLocalTiltRange ( ) const

The allowed angle range of the object local tilt. This is the angle between the base plane and the object plane. A value of 0 means that the object top surface is parallel to its base. Valid values are between 0 and +90 degrees (or 0 and Pi/2 if angle unit is radians).

◆ GetObjects()

std::vector< eVision::Easy3D::E3DObject > eVision::Easy3D::E3DObjectExtractor::GetObjects ( ) const

Returns the list of extracted objects. The objects are sorted from smallest area to largest area.

◆ GetObjectsMask()

eVision::ERegion eVision::Easy3D::E3DObjectExtractor::GetObjectsMask ( ) const

Gets the ERegion composed of all the objects ZMap pixels.

◆ GetOrientationRange()

const eVision::EFloatRange & eVision::Easy3D::E3DObjectExtractor::GetOrientationRange ( ) const

The allowed angle range of the oriented 2D rectangle region. This is the angle of the longest axis (the length of the object), in counter clockwise direction, from the horizontal axis. Valid values are between -90 and +90 degrees (or -Pi/2 and Pi/2 if angle unit is radians).

◆ GetOverlappedAreaRatio()

float eVision::Easy3D::E3DObjectExtractor::GetOverlappedAreaRatio ( ) const

Set or Get the object area ratio applicable when the overlapped mode is enabled. The area ratio defines the minimum area difference between 2 extracted objects that overlap. E.g with a value of 4, the top object must have an area at least 4 times smaller than the bottom object (or the bottom object must have an area at least 4 times bigger than the top object).

See E3DObjectExtractor::SetOverlappedObject

◆ GetOverlappedHeightDifference()

float eVision::Easy3D::E3DObjectExtractor::GetOverlappedHeightDifference ( ) const

Set or Get the object height difference applicable when the overlapped mode is enabled. That value defines the minimum height difference between 2 overlapped objects.

See E3DObjectExtractor::SetOverlappedObject

◆ GetOverlappedObject()

bool eVision::Easy3D::E3DObjectExtractor::GetOverlappedObject ( ) const

Enable or disable the extraction of overlapped objects.

See E3DObjectExtractor::SetOverlappedAreaRatio and E3DObjectExtractor::SetOverlappedHeightDifference

◆ GetReferenceHeightRange()

const eVision::EFloatRange & eVision::Easy3D::E3DObjectExtractor::GetReferenceHeightRange ( ) const

The extraction object reference height range in metric units. Reference height is the dimension of the object along the ZMap Z axis from ZMap origin. For a height based on the object base plane, use E3DObjectExtractor::SetReferenceHeightRange.

◆ GetReferenceTiltRange()

const eVision::EFloatRange & eVision::Easy3D::E3DObjectExtractor::GetReferenceTiltRange ( ) const

The allowed angle range of the object reference tilt. This is the angle between the object plane and the ZMap Z Axis. A value of 0 means that the object top surface is parallel to the ZMap XY plane. Valid values are between 0 and +90 degrees (or 0 and Pi/2 if angle unit is radians).

◆ GetVolumeRange()

const eVision::EFloatRange & eVision::Easy3D::E3DObjectExtractor::GetVolumeRange ( ) const

The allowed volume range for the objects. Volume is expressed in the metric coordinate system. E.g, if the ZMap space is in mm, the volume is in mm3.

◆ GetWidthRange()

const eVision::EFloatRange & eVision::Easy3D::E3DObjectExtractor::GetWidthRange ( ) const

The extraction object width range in metric units. Width is the smallest dimension of the object, expressed the ZMap coordinate system.

◆ Load() [1/2]

void eVision::Easy3D::E3DObjectExtractor::Load ( const std::string & path)

Load the E3DObjectExtractor. The given ESerializer must have been created for reading.

Parameters
pathThe file path.

◆ Load() [2/2]

void eVision::Easy3D::E3DObjectExtractor::Load ( eVision::ESerializer * serializer)

Load the E3DObjectExtractor. The given ESerializer must have been created for reading.

Parameters
serializerThe serializer.

◆ operator=()

eVision::Easy3D::E3DObjectExtractor & eVision::Easy3D::E3DObjectExtractor::operator= ( const eVision::Easy3D::E3DObjectExtractor & other)

Assignment operator.

Parameters
otherThe other E3DObjectExtractor that we will copy into this one.

◆ operator==()

bool eVision::Easy3D::E3DObjectExtractor::operator== ( const eVision::Easy3D::E3DObjectExtractor & other) const

Comparison operator.

Parameters
otherThe other object.

◆ Save() [1/2]

void eVision::Easy3D::E3DObjectExtractor::Save ( const std::string & path)

Save the E3DObjectExtractor. The given ESerializer must have been created for writing.

Parameters
pathThe file path.

◆ Save() [2/2]

void eVision::Easy3D::E3DObjectExtractor::Save ( eVision::ESerializer * serializer)

Save the E3DObjectExtractor. The given ESerializer must have been created for writing.

Parameters
serializerThe ESerializer object that is written to.

◆ SetAllComputeFeatures()

void eVision::Easy3D::E3DObjectExtractor::SetAllComputeFeatures ( )

Enables all features to be computed by the extractor.

◆ SetAreaRange()

void eVision::Easy3D::E3DObjectExtractor::SetAreaRange ( const eVision::EFloatRange & areaRange)

The allowed area range for the objects. Area is expressed in the metric coordinate system. E.g, if the ZMap space is in mm, the area is in mm2.

Parameters
areaRangeThe object area range.

◆ SetAspectRatioRange()

void eVision::Easy3D::E3DObjectExtractor::SetAspectRatioRange ( const eVision::EFloatRange & arRange)

The extraction 2D aspect ratio range. The aspect ratio is the smallest dimension divided by the largest dimension, its value is always between 0 and 1. The smaller the ratio, the more elongated the object is. A value of 1 means a perfectly square object (length=width).

Parameters
arRangeThe object aspect ratio range in [0,1].

◆ SetComputeFeature()

void eVision::Easy3D::E3DObjectExtractor::SetComputeFeature ( eVision::Easy3D::E3DObjectFeature feature,
bool enable )

Sets true if the feature should computed by the extractor, false otherwise.

Parameters
featureA feature from E3DObjectFeature.
enableA bool to choose whether to enable or disable a feature.

◆ SetContourReinforce()

void eVision::Easy3D::E3DObjectExtractor::SetContourReinforce ( bool state)

When contour reinforcement is enable, a filter is applied to the input image to detect and enhance the frontiers between objects. That option is interesting when objects to extract are in contact. The default state is false (OFF).

Parameters
stateThe state of the contour reinforcement filter.

◆ SetExtractionSensitivity()

void eVision::Easy3D::E3DObjectExtractor::SetExtractionSensitivity ( float sensitivity)

Set or Get the extraction sensitivity. The sensitivity ranges from 0 (minimum sensitivity) to 1 (maximum sensitivity). With high sensitivity, the library tries to extract object that are mixed with their surrounding. Low sensitivity values tend to ignore faint objects. The default sensitivity value is 0.6.

Parameters
sensitivityThe object extraction sensitivity.

◆ SetLengthRange()

void eVision::Easy3D::E3DObjectExtractor::SetLengthRange ( const eVision::EFloatRange & lengthRange)

The extraction object length range in metric units. Length is the largest dimension of the object, expressed the ZMap coordinate system.

Parameters
lengthRangeThe object length range in metric units.

◆ SetLocalHeightRange()

void eVision::Easy3D::E3DObjectExtractor::SetLocalHeightRange ( const eVision::EFloatRange & localHeightRange)

The extraction object local height range in metric units. Local height is the dimension of the object along the normal of the base plane. For a height based on the ZMap origin, use E3DObjectExtractor::SetLocalHeightRange.

Parameters
localHeightRangeThe object local height range in metric units.

◆ SetLocalTiltRange()

void eVision::Easy3D::E3DObjectExtractor::SetLocalTiltRange ( const eVision::EFloatRange & tiltRange)

The allowed angle range of the object local tilt. This is the angle between the base plane and the object plane. A value of 0 means that the object top surface is parallel to its base. Valid values are between 0 and +90 degrees (or 0 and Pi/2 if angle unit is radians).

Parameters
tiltRangeThe object local tilt range.

◆ SetOrientationRange()

void eVision::Easy3D::E3DObjectExtractor::SetOrientationRange ( const eVision::EFloatRange & orientationRange)

The allowed angle range of the oriented 2D rectangle region. This is the angle of the longest axis (the length of the object), in counter clockwise direction, from the horizontal axis. Valid values are between -90 and +90 degrees (or -Pi/2 and Pi/2 if angle unit is radians).

Parameters
orientationRangeThe object orientation range.

◆ SetOverlappedAreaRatio()

void eVision::Easy3D::E3DObjectExtractor::SetOverlappedAreaRatio ( float ratio)

Set or Get the object area ratio applicable when the overlapped mode is enabled. The area ratio defines the minimum area difference between 2 extracted objects that overlap. E.g with a value of 4, the top object must have an area at least 4 times smaller than the bottom object (or the bottom object must have an area at least 4 times bigger than the top object).

Parameters
ratioThe ratio of the areas of 2 overlapped objects, must be greater than 1.

See E3DObjectExtractor::SetOverlappedObject

◆ SetOverlappedHeightDifference()

void eVision::Easy3D::E3DObjectExtractor::SetOverlappedHeightDifference ( float difference)

Set or Get the object height difference applicable when the overlapped mode is enabled. That value defines the minimum height difference between 2 overlapped objects.

Parameters
differenceThe height difference of 2 overlapped objects, must be greater than 0.

See E3DObjectExtractor::SetOverlappedObject

◆ SetOverlappedObject()

void eVision::Easy3D::E3DObjectExtractor::SetOverlappedObject ( bool state)

Enable or disable the extraction of overlapped objects.

Parameters
stateThe status of the overlapped extraction.

See E3DObjectExtractor::SetOverlappedAreaRatio and E3DObjectExtractor::SetOverlappedHeightDifference

◆ SetReferenceHeightRange()

void eVision::Easy3D::E3DObjectExtractor::SetReferenceHeightRange ( const eVision::EFloatRange & referenceHeightRange)

The extraction object reference height range in metric units. Reference height is the dimension of the object along the ZMap Z axis from ZMap origin. For a height based on the object base plane, use E3DObjectExtractor::SetReferenceHeightRange.

Parameters
referenceHeightRangeThe object reference height range in metric units.

◆ SetReferenceTiltRange()

void eVision::Easy3D::E3DObjectExtractor::SetReferenceTiltRange ( const eVision::EFloatRange & tiltRange)

The allowed angle range of the object reference tilt. This is the angle between the object plane and the ZMap Z Axis. A value of 0 means that the object top surface is parallel to the ZMap XY plane. Valid values are between 0 and +90 degrees (or 0 and Pi/2 if angle unit is radians).

Parameters
tiltRangeThe object reference tilt range.

◆ SetVolumeRange()

void eVision::Easy3D::E3DObjectExtractor::SetVolumeRange ( const eVision::EFloatRange & volumeRange)

The allowed volume range for the objects. Volume is expressed in the metric coordinate system. E.g, if the ZMap space is in mm, the volume is in mm3.

Parameters
volumeRangeThe object volume range.

◆ SetWidthRange()

void eVision::Easy3D::E3DObjectExtractor::SetWidthRange ( const eVision::EFloatRange & widthRange)

The extraction object width range in metric units. Width is the smallest dimension of the object, expressed the ZMap coordinate system.

Parameters
widthRangeThe object width range in metric units.

◆ UnsetAllComputeFeatures()

void eVision::Easy3D::E3DObjectExtractor::UnsetAllComputeFeatures ( )

Disables all features to be computed by the extractor.

Member Data Documentation

◆ wrappedClass_

CppWrapperInternal::WrappedClass eVision::Easy3D::E3DObjectExtractor::wrappedClass_