eVision .NET API
Loading...
Searching...
No Matches
eVision.Easy3D.ELaserLineExtractor Class Reference

Manages a laser line extraction context. More...

Inheritance diagram for eVision.Easy3D.ELaserLineExtractor:
Collaboration diagram for eVision.Easy3D.ELaserLineExtractor:

Public Member Functions

 ELaserLineExtractor (int frameWidth, int frameHeight, int numFramesPerMap, float zResolution)
 Creates an ELaserLineExtractor object.
 ELaserLineExtractor (int frameWidth, int frameHeight, int numFramesPerMap)
 Creates an ELaserLineExtractor object.
 ELaserLineExtractor (eVision.Easy3D.ELaserLineExtractor other)
 Creates an ELaserLineExtractor object.
bool ExtractProfileFromFrame (eVision.EROIBW8 frame)
 Extracts a profile from a frame and adds it to the current depth map.
void Save (string file)
 Save the ELaserLineExtractor configuration. The settings are saved but the profiles aren't.
void Save (eVision.ESerializer serializer)
 Save the ELaserLineExtractor configuration. The settings are saved but the profiles aren't.
void Load (string file)
 Load the ELaserLineExtractor configuration. The settings are loaded and the profiles are discarded.
void Load (eVision.ESerializer serializer)
 Load the ELaserLineExtractor configuration. The settings are loaded and the profiles are discarded.
void SetSmoothingParameters (int param0, int param1, int param2)
 Sets the parameters of the smoothing kernel.
void DrawLastProfile (eVision.EDrawAdapter drawAdapter, float zoomX, float zoomY, float panX, float panY)
 Draws the last extracted profile.
void DrawLastProfile (eVision.EDrawAdapter drawAdapter, float zoomX, float zoomY, float panX)
 Draws the last extracted profile.
void DrawLastProfile (eVision.EDrawAdapter drawAdapter, float zoomX, float zoomY)
 Draws the last extracted profile.
void DrawLastProfile (eVision.EDrawAdapter drawAdapter, float zoomX)
 Draws the last extracted profile.
void DrawLastProfile (eVision.EDrawAdapter drawAdapter)
 Draws the last extracted profile.

Static Public Member Functions

static void DrawProfile (eVision.EDrawAdapter drawAdapter, int frameWidth, int frameHeight, float[] profile, float zoomX, float zoomY, float panX, float panY)
 Draws a profile.
static void DrawProfile (eVision.EDrawAdapter drawAdapter, int frameWidth, int frameHeight, float[] profile, float zoomX, float zoomY, float panX)
 Draws a profile.
static void DrawProfile (eVision.EDrawAdapter drawAdapter, int frameWidth, int frameHeight, float[] profile, float zoomX, float zoomY)
 Draws a profile.
static void DrawProfile (eVision.EDrawAdapter drawAdapter, int frameWidth, int frameHeight, float[] profile, float zoomX)
 Draws a profile.
static void DrawProfile (eVision.EDrawAdapter drawAdapter, int frameWidth, int frameHeight, float[] profile)
 Draws a profile.

Properties

int FrameWidth [get]
 Width of the frames from which the profiles are extracted.
int FrameHeight [get]
 Height of the frames from which the profiles are extracted.
int NumFramesPerMap [get]
 Number of frames from which the profiles are be extracted.
float ZResolution [get]
 Z resolution of the extracted profile.
int NumExtractedProfile [get]
 Number of extracted profiles.
float[] Profile [get]
 Returns the last extracted profile.
int AnalysisThreshold [get, set]
 Analysis threshold. Set this value to eliminate noise.
eVision.Easy3D.EMaximumAnalysisMode AnalysisMode [get, set]
 Analysis mode.
bool EnableSmoothing [get, set]
 Enables or disables grayscale profile smoothing before extraction.
int SmoothingParameter0 [get, set]
 Smoothing parameter 0.
int SmoothingParameter1 [get, set]
 Smoothing parameter 1.
int SmoothingParameter2 [get, set]
 Smoothing parameter 2.
eVision.Easy3D.EDepthMap16 DepthMap [get]
 Returns the current depth map.

Detailed Description

Manages a laser line extraction context.

License(s): Easy3DLaserLine

Constructor & Destructor Documentation

◆ ELaserLineExtractor() [1/3]

eVision.Easy3D.ELaserLineExtractor.ELaserLineExtractor ( int frameWidth,
int frameHeight,
int numFramesPerMap,
float zResolution )

Creates an ELaserLineExtractor object.

Parameters
frameWidthWidth of the frames from which the profiles will be extracted.
frameHeightHeight of the frames from which the profiles will be extracted.
numFramesPerMapNumber of frames (and thus profiles) to be used per depth map. Each extracted profile create a line in the depth map.
zResolutionOptional parameter for the Z resolution of the extracted profile.

With a value of 0, the resolution will be automatically calculated to maximize the sub-pixel accuracy.

◆ ELaserLineExtractor() [2/3]

eVision.Easy3D.ELaserLineExtractor.ELaserLineExtractor ( int frameWidth,
int frameHeight,
int numFramesPerMap )

Creates an ELaserLineExtractor object.

Parameters
frameWidthWidth of the frames from which the profiles will be extracted.
frameHeightHeight of the frames from which the profiles will be extracted.
numFramesPerMapNumber of frames (and thus profiles) to be used per depth map. Each extracted profile create a line in the depth map.

◆ ELaserLineExtractor() [3/3]

eVision.Easy3D.ELaserLineExtractor.ELaserLineExtractor ( eVision.Easy3D.ELaserLineExtractor other)

Creates an ELaserLineExtractor object.

Parameters
otherThe object that should be copied

Member Function Documentation

◆ DrawLastProfile() [1/5]

void eVision.Easy3D.ELaserLineExtractor.DrawLastProfile ( eVision.EDrawAdapter drawAdapter)

Draws the last extracted profile.

Parameters
drawAdapterDraw adapter.

◆ DrawLastProfile() [2/5]

void eVision.Easy3D.ELaserLineExtractor.DrawLastProfile ( eVision.EDrawAdapter drawAdapter,
float zoomX )

Draws the last extracted profile.

Parameters
drawAdapterDraw adapter.
zoomXHorizontal zooming factor.

◆ DrawLastProfile() [3/5]

void eVision.Easy3D.ELaserLineExtractor.DrawLastProfile ( eVision.EDrawAdapter drawAdapter,
float zoomX,
float zoomY )

Draws the last extracted profile.

Parameters
drawAdapterDraw adapter.
zoomXHorizontal zooming factor.
zoomYVertical zooming factor. If set to 0, the horizontal zooming factor will be used for isotropic zooming.

◆ DrawLastProfile() [4/5]

void eVision.Easy3D.ELaserLineExtractor.DrawLastProfile ( eVision.EDrawAdapter drawAdapter,
float zoomX,
float zoomY,
float panX )

Draws the last extracted profile.

Parameters
drawAdapterDraw adapter.
zoomXHorizontal zooming factor.
zoomYVertical zooming factor. If set to 0, the horizontal zooming factor will be used for isotropic zooming.
panXHorizontal panning value expressed in pixels. By default, no panning occurs.

◆ DrawLastProfile() [5/5]

void eVision.Easy3D.ELaserLineExtractor.DrawLastProfile ( eVision.EDrawAdapter drawAdapter,
float zoomX,
float zoomY,
float panX,
float panY )

Draws the last extracted profile.

Parameters
drawAdapterDraw adapter.
zoomXHorizontal zooming factor.
zoomYVertical zooming factor. If set to 0, the horizontal zooming factor will be used for isotropic zooming.
panXHorizontal panning value expressed in pixels. By default, no panning occurs.
panYVertical panning value expressed in pixels. By default, no panning occurs.

◆ DrawProfile() [1/5]

void eVision.Easy3D.ELaserLineExtractor.DrawProfile ( eVision.EDrawAdapter drawAdapter,
int frameWidth,
int frameHeight,
float[] profile )
static

Draws a profile.

Parameters
drawAdapterDraw adapter.
frameWidthWidth of the frame used to extract the profile
frameHeightHeight of the frame used to extract the profile
profileExtracted profile

◆ DrawProfile() [2/5]

void eVision.Easy3D.ELaserLineExtractor.DrawProfile ( eVision.EDrawAdapter drawAdapter,
int frameWidth,
int frameHeight,
float[] profile,
float zoomX )
static

Draws a profile.

Parameters
drawAdapterDraw adapter.
frameWidthWidth of the frame used to extract the profile
frameHeightHeight of the frame used to extract the profile
profileExtracted profile
zoomXHorizontal zooming factor.

◆ DrawProfile() [3/5]

void eVision.Easy3D.ELaserLineExtractor.DrawProfile ( eVision.EDrawAdapter drawAdapter,
int frameWidth,
int frameHeight,
float[] profile,
float zoomX,
float zoomY )
static

Draws a profile.

Parameters
drawAdapterDraw adapter.
frameWidthWidth of the frame used to extract the profile
frameHeightHeight of the frame used to extract the profile
profileExtracted profile
zoomXHorizontal zooming factor.
zoomYVertical zooming factor. If set to 0, the horizontal zooming factor will be used for isotropic zooming.

◆ DrawProfile() [4/5]

void eVision.Easy3D.ELaserLineExtractor.DrawProfile ( eVision.EDrawAdapter drawAdapter,
int frameWidth,
int frameHeight,
float[] profile,
float zoomX,
float zoomY,
float panX )
static

Draws a profile.

Parameters
drawAdapterDraw adapter.
frameWidthWidth of the frame used to extract the profile
frameHeightHeight of the frame used to extract the profile
profileExtracted profile
zoomXHorizontal zooming factor.
zoomYVertical zooming factor. If set to 0, the horizontal zooming factor will be used for isotropic zooming.
panXHorizontal panning value expressed in pixels. By default, no panning occurs.

◆ DrawProfile() [5/5]

void eVision.Easy3D.ELaserLineExtractor.DrawProfile ( eVision.EDrawAdapter drawAdapter,
int frameWidth,
int frameHeight,
float[] profile,
float zoomX,
float zoomY,
float panX,
float panY )
static

Draws a profile.

Parameters
drawAdapterDraw adapter.
frameWidthWidth of the frame used to extract the profile
frameHeightHeight of the frame used to extract the profile
profileExtracted profile
zoomXHorizontal zooming factor.
zoomYVertical zooming factor. If set to 0, the horizontal zooming factor will be used for isotropic zooming.
panXHorizontal panning value expressed in pixels. By default, no panning occurs.
panYVertical panning value expressed in pixels. By default, no panning occurs.

◆ ExtractProfileFromFrame()

bool eVision.Easy3D.ELaserLineExtractor.ExtractProfileFromFrame ( eVision.EROIBW8 frame)

Extracts a profile from a frame and adds it to the current depth map.

Returns true if the depth map is complete and ready for further processing.

Parameters
frameFrame from which the profile will be extracted.

◆ Load() [1/2]

void eVision.Easy3D.ELaserLineExtractor.Load ( eVision.ESerializer serializer)

Load the ELaserLineExtractor configuration. The settings are loaded and the profiles are discarded.

Parameters
serializerSerializer. Must be in read mode.

◆ Load() [2/2]

void eVision.Easy3D.ELaserLineExtractor.Load ( string file)

Load the ELaserLineExtractor configuration. The settings are loaded and the profiles are discarded.

Parameters
fileFile path.

◆ Save() [1/2]

void eVision.Easy3D.ELaserLineExtractor.Save ( eVision.ESerializer serializer)

Save the ELaserLineExtractor configuration. The settings are saved but the profiles aren't.

Parameters
serializerSerializer. Must be in write mode.

◆ Save() [2/2]

void eVision.Easy3D.ELaserLineExtractor.Save ( string file)

Save the ELaserLineExtractor configuration. The settings are saved but the profiles aren't.

Parameters
fileFile path.

◆ SetSmoothingParameters()

void eVision.Easy3D.ELaserLineExtractor.SetSmoothingParameters ( int param0,
int param1,
int param2 )

Sets the parameters of the smoothing kernel.

Parameters
param0First kernel parameter.
param1Second kernel parameter.
param2Third kernel parameter.

If enabled, the smoothing will be performed using the following formula: f[i] = (f[i-1] * param0) + (f[i] * param1) + (f[i+1] * param2).

Property Documentation

◆ AnalysisMode

eVision.Easy3D.EMaximumAnalysisMode eVision.Easy3D.ELaserLineExtractor.AnalysisMode
getset

Analysis mode.

◆ AnalysisThreshold

int eVision.Easy3D.ELaserLineExtractor.AnalysisThreshold
getset

Analysis threshold. Set this value to eliminate noise.

In the center of gravity (COG) analysis mode, this threshold is used to discriminate peaks and should be set accordingly.

◆ DepthMap

eVision.Easy3D.EDepthMap16 eVision.Easy3D.ELaserLineExtractor.DepthMap
get

Returns the current depth map.

Should be called only when the previous call to ExtractProfileFromFrame() returned true. Otherwise, the depth map returned will be incomplete.

◆ EnableSmoothing

bool eVision.Easy3D.ELaserLineExtractor.EnableSmoothing
getset

Enables or disables grayscale profile smoothing before extraction.

◆ FrameHeight

int eVision.Easy3D.ELaserLineExtractor.FrameHeight
get

Height of the frames from which the profiles are extracted.

◆ FrameWidth

int eVision.Easy3D.ELaserLineExtractor.FrameWidth
get

Width of the frames from which the profiles are extracted.

◆ NumExtractedProfile

int eVision.Easy3D.ELaserLineExtractor.NumExtractedProfile
get

Number of extracted profiles.

◆ NumFramesPerMap

int eVision.Easy3D.ELaserLineExtractor.NumFramesPerMap
get

Number of frames from which the profiles are be extracted.

◆ Profile

float [] eVision.Easy3D.ELaserLineExtractor.Profile
get

Returns the last extracted profile.

If a point could not be extracted, its value will be set to FLOAT_MAX.

◆ SmoothingParameter0

int eVision.Easy3D.ELaserLineExtractor.SmoothingParameter0
getset

Smoothing parameter 0.

◆ SmoothingParameter1

int eVision.Easy3D.ELaserLineExtractor.SmoothingParameter1
getset

Smoothing parameter 1.

◆ SmoothingParameter2

int eVision.Easy3D.ELaserLineExtractor.SmoothingParameter2
getset

Smoothing parameter 2.

◆ ZResolution

float eVision.Easy3D.ELaserLineExtractor.ZResolution
get

Z resolution of the extracted profile.

With a value of 0, the resolution will be automatically calculated to maximize the sub-pixel accuracy.