eVision Python API
Loading...
Searching...
No Matches
eVision.ESpotDetector Class Reference

eVision.ESpotDetector is dedicated to the detection of spots, particles and scratches on images. More...

Public Member Functions

None __init__ (self)
 Constructs an eVision.ESpotDetector with default configuration.
None __init__ (self, eVision.ESpotDetector other)
 Copy constructor for eVision.ESpotDetector.
None Load (self, str path)
 Loads the eVision.ESpotDetector.
None Load (self, eVision.ESerializer|None serializer)
 Loads the eVision.ESpotDetector.
None Save (self, str path)
 Saves the eVision.ESpotDetector.
None Save (self, eVision.ESerializer|None serializer)
 Saves the eVision.ESpotDetector.
None GetParticleDetectionParameters (self, eVision.EParticleDetectionParameters parameters)
 Gets the particle detection parameters.
None GetScratchDetectionParameters (self, eVision.EScratchDetectionParameters parameters)
 Gets the scratch detection parameters.
int Detect (self, eVision.EROIBW8 sourceImage)
 Performs the spot detection in the given eVision.EROIBW8.
int Detect (self, eVision.EROIBW8 sourceImage, eVision.ERegion region)
 Performs the spot detection in the given eVision.EROIBW8.
int Detect (self, eVision.EROIBW8 sourceImage, eVision.EFrame frame)
 Performs the spot detection in the given eVision.EROIBW8.
int Detect (self, eVision.EROIBW8 sourceImage, eVision.ERegion region, eVision.EFrame frame)
 Performs the spot detection in the given eVision.EROIBW8.
None GenerateSegmentationMap (self, eVision.EImageBW8 map)
 Returns the last computed segmentation map.
None Draw (self, eVision.EDrawAdapter|None drawAdapter, eVision.ERGBColor color, float zoomX, float zoomY, float panX, float panY)
 Draw the eVision.ESpotDetector.
None Draw (self, eVision.EDrawAdapter|None drawAdapter, eVision.ERGBColor color, float zoomX, float zoomY, float panX)
 Draw the eVision.ESpotDetector.
None Draw (self, eVision.EDrawAdapter|None drawAdapter, eVision.ERGBColor color, float zoomX, float zoomY)
 Draw the eVision.ESpotDetector.
None Draw (self, eVision.EDrawAdapter|None drawAdapter, eVision.ERGBColor color, float zoomX)
 Draw the eVision.ESpotDetector.
None Draw (self, eVision.EDrawAdapter|None drawAdapter, eVision.ERGBColor color)
 Draw the eVision.ESpotDetector.
None Draw (self, eVision.EDrawAdapter|None drawAdapter)
 Draw the eVision.ESpotDetector.
int AddDetectedSpotsToDLProject (self, str projectPath, int roiExtension, str imageName, int noDefectSamples, str noDefectLabel)
 To be called after eVision.ESpotDetector.Detect to add the detected spots to a new or existing EDeepLearningProject.
int AddDetectedSpotsToDLProject (self, str projectPath, int roiExtension, str imageName, int noDefectSamples)
 To be called after eVision.ESpotDetector.Detect to add the detected spots to a new or existing EDeepLearningProject.
int AddDetectedSpotsToDLProject (self, str projectPath, int roiExtension, str imageName)
 To be called after eVision.ESpotDetector.Detect to add the detected spots to a new or existing EDeepLearningProject.
int AddDetectedSpotsToDLProject (self, str projectPath, int roiExtension)
 To be called after eVision.ESpotDetector.Detect to add the detected spots to a new or existing EDeepLearningProject.
int AddDetectedSpotsToDLProject (self, str projectPath)
 To be called after eVision.ESpotDetector.Detect to add the detected spots to a new or existing EDeepLearningProject.
None UnsetDLClassifier (self)
 Disable the usage of the Deep Learning classifier.
bool IsDLClassifierSet (self)
 Returns True if a classifier has been loaded.

Properties

 EnableAlignment = property(_EnableAlignment__getter, _EnableAlignment__setter)
 Enables or disables the optional alignment process.
 AlignmentArea = property(_AlignmentArea__getter, _AlignmentArea__setter)
 Sets/Gets an initial estimate of the rectangle on which spots will be detected in the image.
 AlignmentTolerance = property(_AlignmentTolerance__getter, _AlignmentTolerance__setter)
 Sets/Gets the tolerance around the initial estimate of the alignment area, in pixels.
 GuardBand = property(_GuardBand__getter, _GuardBand__setter)
 Sets/Gets the eVision.EGuardBand.
 EnableParticleDetection = property(_EnableParticleDetection__getter, _EnableParticleDetection__setter)
 Sets/Gets the particle detection processing.
 EnableScratchDetection = property(_EnableScratchDetection__getter, _EnableScratchDetection__setter)
 Sets/Gets the scratch detection processing.
 ParticleDetectionParameters = property(None, _ParticleDetectionParameters__setter)
 Sets the particle detection parameters.
 ScratchDetectionParameters = property(None, _ScratchDetectionParameters__setter)
 Sets the scratch detection parameters.
 Spots = property(_Spots__getter, None)
 Gets the spots detected by a previous call to eVision.ESpotDetector.Detect.
 NumSpots = property(_NumSpots__getter, None)
 Gets the number of spots detected by a previous call to eVision.ESpotDetector.Detect.
 SourceROI = property(_SourceROI__getter, None)
 Gets the last used Region Of Interest, after optionnal alignment and guard band clipping.
 DLClassifierPath = property(_DLClassifierPath__getter, _DLClassifierPath__setter)
 Opens a DL classifier and use it to classify all further detected spots.
 DLExecutionSettings = property(_DLExecutionSettings__getter, _DLExecutionSettings__setter)
 Controls the execution settings of the DL Classifier.

Detailed Description

eVision.ESpotDetector is dedicated to the detection of spots, particles and scratches on images.

It is especially efficient at detecting faint contaminations on noisy surface images. It produces a list of eVision.ESpot objects.

Remarks:

License(s): EasySpotDetector

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

Constructor & Destructor Documentation

◆ __init__() [1/2]

None eVision.ESpotDetector.__init__ ( self)

Constructs an eVision.ESpotDetector with default configuration.

◆ __init__() [2/2]

None eVision.ESpotDetector.__init__ ( self,
eVision.ESpotDetector other )

Copy constructor for eVision.ESpotDetector.

Parameters
otherThe other eVision.ESpotDetector that we will copy into this one.

Member Function Documentation

◆ AddDetectedSpotsToDLProject() [1/5]

int eVision.ESpotDetector.AddDetectedSpotsToDLProject ( self,
str projectPath )

To be called after eVision.ESpotDetector.Detect to add the detected spots to a new or existing EDeepLearningProject.

This method returns the number of spots added.

The image used by eVision.ESpotDetector.Detect is copied to a subdirectory 'Images' of the project file and linked in the project. All detected spots are added to the project as ROI of the image, with the label depending on the spot type ('Particle' or 'Scratch'). Optional parameter roiExtension can be used to increase the ROI size by a pixel amount. It could help the deep learning inference to have a 'context' around the ROI. Automatic image names are generated unless the parameter imageName is set. All images must have a different name. The optional parameter noDefectSamples sets the number of extra ROIs added to the project representing areas without defect. The label of these defects are given by parameter noDefectLabel.

Parameters
projectPathThe path to the Deep Learning project (usually a file with edlproject extension).

◆ AddDetectedSpotsToDLProject() [2/5]

int eVision.ESpotDetector.AddDetectedSpotsToDLProject ( self,
str projectPath,
int roiExtension )

To be called after eVision.ESpotDetector.Detect to add the detected spots to a new or existing EDeepLearningProject.

This method returns the number of spots added.

The image used by eVision.ESpotDetector.Detect is copied to a subdirectory 'Images' of the project file and linked in the project. All detected spots are added to the project as ROI of the image, with the label depending on the spot type ('Particle' or 'Scratch'). Optional parameter roiExtension can be used to increase the ROI size by a pixel amount. It could help the deep learning inference to have a 'context' around the ROI. Automatic image names are generated unless the parameter imageName is set. All images must have a different name. The optional parameter noDefectSamples sets the number of extra ROIs added to the project representing areas without defect. The label of these defects are given by parameter noDefectLabel.

Parameters
projectPathThe path to the Deep Learning project (usually a file with edlproject extension).
roiExtensionThe ROI extension in pixels. Default value is 5.

◆ AddDetectedSpotsToDLProject() [3/5]

int eVision.ESpotDetector.AddDetectedSpotsToDLProject ( self,
str projectPath,
int roiExtension,
str imageName )

To be called after eVision.ESpotDetector.Detect to add the detected spots to a new or existing EDeepLearningProject.

This method returns the number of spots added.

The image used by eVision.ESpotDetector.Detect is copied to a subdirectory 'Images' of the project file and linked in the project. All detected spots are added to the project as ROI of the image, with the label depending on the spot type ('Particle' or 'Scratch'). Optional parameter roiExtension can be used to increase the ROI size by a pixel amount. It could help the deep learning inference to have a 'context' around the ROI. Automatic image names are generated unless the parameter imageName is set. All images must have a different name. The optional parameter noDefectSamples sets the number of extra ROIs added to the project representing areas without defect. The label of these defects are given by parameter noDefectLabel.

Parameters
projectPathThe path to the Deep Learning project (usually a file with edlproject extension).
roiExtensionThe ROI extension in pixels. Default value is 5.
imageNameOverride the default image name.

◆ AddDetectedSpotsToDLProject() [4/5]

int eVision.ESpotDetector.AddDetectedSpotsToDLProject ( self,
str projectPath,
int roiExtension,
str imageName,
int noDefectSamples )

To be called after eVision.ESpotDetector.Detect to add the detected spots to a new or existing EDeepLearningProject.

This method returns the number of spots added.

The image used by eVision.ESpotDetector.Detect is copied to a subdirectory 'Images' of the project file and linked in the project. All detected spots are added to the project as ROI of the image, with the label depending on the spot type ('Particle' or 'Scratch'). Optional parameter roiExtension can be used to increase the ROI size by a pixel amount. It could help the deep learning inference to have a 'context' around the ROI. Automatic image names are generated unless the parameter imageName is set. All images must have a different name. The optional parameter noDefectSamples sets the number of extra ROIs added to the project representing areas without defect. The label of these defects are given by parameter noDefectLabel.

Parameters
projectPathThe path to the Deep Learning project (usually a file with edlproject extension).
roiExtensionThe ROI extension in pixels. Default value is 5.
imageNameOverride the default image name.
noDefectSamplesNumber of extra ROI to be created to represent areas without defect. Default value is 0.

◆ AddDetectedSpotsToDLProject() [5/5]

int eVision.ESpotDetector.AddDetectedSpotsToDLProject ( self,
str projectPath,
int roiExtension,
str imageName,
int noDefectSamples,
str noDefectLabel )

To be called after eVision.ESpotDetector.Detect to add the detected spots to a new or existing EDeepLearningProject.

This method returns the number of spots added.

The image used by eVision.ESpotDetector.Detect is copied to a subdirectory 'Images' of the project file and linked in the project. All detected spots are added to the project as ROI of the image, with the label depending on the spot type ('Particle' or 'Scratch'). Optional parameter roiExtension can be used to increase the ROI size by a pixel amount. It could help the deep learning inference to have a 'context' around the ROI. Automatic image names are generated unless the parameter imageName is set. All images must have a different name. The optional parameter noDefectSamples sets the number of extra ROIs added to the project representing areas without defect. The label of these defects are given by parameter noDefectLabel.

Parameters
projectPathThe path to the Deep Learning project (usually a file with edlproject extension).
roiExtensionThe ROI extension in pixels. Default value is 5.
imageNameOverride the default image name.
noDefectSamplesNumber of extra ROI to be created to represent areas without defect. Default value is 0.
noDefectLabelThe label for the extra ROI (if noDefectSamples>0). Default value is 'NotADefect'.

◆ Detect() [1/4]

int eVision.ESpotDetector.Detect ( self,
eVision.EROIBW8 sourceImage )

Performs the spot detection in the given eVision.EROIBW8.

It returns the number of spot detected. Use eVision.ESpotDetector.Spots the retrieve the list of detected spots.

Parameters
sourceImageThe image in which the spots are detected.

◆ Detect() [2/4]

int eVision.ESpotDetector.Detect ( self,
eVision.EROIBW8 sourceImage,
eVision.EFrame frame )

Performs the spot detection in the given eVision.EROIBW8.

It returns the number of spot detected. Use eVision.ESpotDetector.Spots the retrieve the list of detected spots.

Parameters
sourceImageThe image in which the spots are detected.
frameReference frame of the input region

◆ Detect() [3/4]

int eVision.ESpotDetector.Detect ( self,
eVision.EROIBW8 sourceImage,
eVision.ERegion region )

Performs the spot detection in the given eVision.EROIBW8.

It returns the number of spot detected. Use eVision.ESpotDetector.Spots the retrieve the list of detected spots.

Parameters
sourceImageThe image in which the spots are detected.
regionThe region on which the image is processed.

◆ Detect() [4/4]

int eVision.ESpotDetector.Detect ( self,
eVision.EROIBW8 sourceImage,
eVision.ERegion region,
eVision.EFrame frame )

Performs the spot detection in the given eVision.EROIBW8.

It returns the number of spot detected. Use eVision.ESpotDetector.Spots the retrieve the list of detected spots.

Parameters
sourceImageThe image in which the spots are detected.
regionThe region on which the image is processed.
frameReference frame of the input region

◆ Draw() [1/6]

None eVision.ESpotDetector.Draw ( self,
eVision.EDrawAdapter | None drawAdapter )

Draw the eVision.ESpotDetector.

Parameters
drawAdaptereVision.EDrawAdapter that will be used to draw.

◆ Draw() [2/6]

None eVision.ESpotDetector.Draw ( self,
eVision.EDrawAdapter | None drawAdapter,
eVision.ERGBColor color )

Draw the eVision.ESpotDetector.

Parameters
drawAdaptereVision.EDrawAdapter that will be used to draw.
colorColor of the drawn rectangle.

◆ Draw() [3/6]

None eVision.ESpotDetector.Draw ( self,
eVision.EDrawAdapter | None drawAdapter,
eVision.ERGBColor color,
float zoomX )

Draw the eVision.ESpotDetector.

Parameters
drawAdaptereVision.EDrawAdapter that will be used to draw.
colorColor of the drawn rectangle.
zoomXHorizontal zooming factor. By default, true scale is used.

◆ Draw() [4/6]

None eVision.ESpotDetector.Draw ( self,
eVision.EDrawAdapter | None drawAdapter,
eVision.ERGBColor color,
float zoomX,
float zoomY )

Draw the eVision.ESpotDetector.

Parameters
drawAdaptereVision.EDrawAdapter that will be used to draw.
colorColor of the drawn rectangle.
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.

◆ Draw() [5/6]

None eVision.ESpotDetector.Draw ( self,
eVision.EDrawAdapter | None drawAdapter,
eVision.ERGBColor color,
float zoomX,
float zoomY,
float panX )

Draw the eVision.ESpotDetector.

Parameters
drawAdaptereVision.EDrawAdapter that will be used to draw.
colorColor of the drawn rectangle.
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.

◆ Draw() [6/6]

None eVision.ESpotDetector.Draw ( self,
eVision.EDrawAdapter | None drawAdapter,
eVision.ERGBColor color,
float zoomX,
float zoomY,
float panX,
float panY )

Draw the eVision.ESpotDetector.

Parameters
drawAdaptereVision.EDrawAdapter that will be used to draw.
colorColor of the drawn rectangle.
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.

◆ GenerateSegmentationMap()

None eVision.ESpotDetector.GenerateSegmentationMap ( self,
eVision.EImageBW8 map )

Returns the last computed segmentation map.

Parameters
mapThe destination image for the segmentation map.

◆ GetParticleDetectionParameters()

None eVision.ESpotDetector.GetParticleDetectionParameters ( self,
eVision.EParticleDetectionParameters parameters )

Gets the particle detection parameters.

Parameters
parametersFrom eVision.EParticleDetectionParameters.

◆ GetScratchDetectionParameters()

None eVision.ESpotDetector.GetScratchDetectionParameters ( self,
eVision.EScratchDetectionParameters parameters )

Gets the scratch detection parameters.

Parameters
parametersFrom eVision.EScratchDetectionParameters.

◆ IsDLClassifierSet()

bool eVision.ESpotDetector.IsDLClassifierSet ( self)

Returns True if a classifier has been loaded.

See also eVision.ESpotDetector.DLClassifierPath and eVision.ESpotDetector.UnsetDLClassifier.

◆ Load() [1/2]

None eVision.ESpotDetector.Load ( self,
eVision.ESerializer | None serializer )

Loads the eVision.ESpotDetector.

The given eVision.ESerializer must have been created for reading.

Parameters
serializerThe serializer.

◆ Load() [2/2]

None eVision.ESpotDetector.Load ( self,
str path )

Loads the eVision.ESpotDetector.

The given eVision.ESerializer must have been created for reading.

Parameters
pathThe file path.

◆ Save() [1/2]

None eVision.ESpotDetector.Save ( self,
eVision.ESerializer | None serializer )

Saves the eVision.ESpotDetector.

The given eVision.ESerializer must have been created for writing.

Parameters
serializerThe eVision.ESerializer object that is written to.

◆ Save() [2/2]

None eVision.ESpotDetector.Save ( self,
str path )

Saves the eVision.ESpotDetector.

The given eVision.ESerializer must have been created for writing.

Parameters
pathThe file path.

◆ UnsetDLClassifier()

None eVision.ESpotDetector.UnsetDLClassifier ( self)

Disable the usage of the Deep Learning classifier.

See also eVision.ESpotDetector.DLClassifierPath and eVision.ESpotDetector.IsDLClassifierSet.

Property Documentation

◆ AlignmentArea

eVision.ESpotDetector.AlignmentArea = property(_AlignmentArea__getter, _AlignmentArea__setter)
static

Sets/Gets an initial estimate of the rectangle on which spots will be detected in the image.

The alignment process is enabled with eVision.ESpotDetector.EnableAlignment. To perform the alignment, a tolerance must be set as well, see eVision.ESpotDetector.AlignmentTolerance.

◆ AlignmentTolerance

eVision.ESpotDetector.AlignmentTolerance = property(_AlignmentTolerance__getter, _AlignmentTolerance__setter)
static

Sets/Gets the tolerance around the initial estimate of the alignment area, in pixels.

The default is 100 pixels. See also eVision.ESpotDetector.AlignmentArea.

◆ DLClassifierPath

eVision.ESpotDetector.DLClassifierPath = property(_DLClassifierPath__getter, _DLClassifierPath__setter)
static

Opens a DL classifier and use it to classify all further detected spots.

The resulting class is stored in eVision.ESpot. Use eVision.ESpotDetector.UnsetDLClassifier to remove the Deep Learning classification. Setting a Deep Learning Classifier triggers an initialization of the model. The initialization can take a few milliseconds to several minutes depending on the engine and device selected.

◆ DLExecutionSettings

eVision.ESpotDetector.DLExecutionSettings = property(_DLExecutionSettings__getter, _DLExecutionSettings__setter)
static

Controls the execution settings of the DL Classifier.

Set the class eVision.EasyDeepLearning.EDeepLearningExecutionSettings to choose between engines, devices and other inference parameters. Changing the execution settings triggers an initialization of the deep learning model. The initialization can take a few milliseconds to several minutes depending on the engine and device selected.

◆ EnableAlignment

eVision.ESpotDetector.EnableAlignment = property(_EnableAlignment__getter, _EnableAlignment__setter)
static

Enables or disables the optional alignment process.

The alignment area and the tolerance must be set as well, see eVision.ESpotDetector.AlignmentArea and eVision.ESpotDetector.AlignmentTolerance.

◆ EnableParticleDetection

eVision.ESpotDetector.EnableParticleDetection = property(_EnableParticleDetection__getter, _EnableParticleDetection__setter)
static

Sets/Gets the particle detection processing.

◆ EnableScratchDetection

eVision.ESpotDetector.EnableScratchDetection = property(_EnableScratchDetection__getter, _EnableScratchDetection__setter)
static

Sets/Gets the scratch detection processing.

◆ GuardBand

eVision.ESpotDetector.GuardBand = property(_GuardBand__getter, _GuardBand__setter)
static

Sets/Gets the eVision.EGuardBand.

◆ NumSpots

eVision.ESpotDetector.NumSpots = property(_NumSpots__getter, None)
static

Gets the number of spots detected by a previous call to eVision.ESpotDetector.Detect.

◆ ParticleDetectionParameters

eVision.ESpotDetector.ParticleDetectionParameters = property(None, _ParticleDetectionParameters__setter)
static

Sets the particle detection parameters.

◆ ScratchDetectionParameters

eVision.ESpotDetector.ScratchDetectionParameters = property(None, _ScratchDetectionParameters__setter)
static

Sets the scratch detection parameters.

◆ SourceROI

eVision.ESpotDetector.SourceROI = property(_SourceROI__getter, None)
static

Gets the last used Region Of Interest, after optionnal alignment and guard band clipping.

No image is attached to that eVision.EROIBW8. See also eVision.ESpotDetector.EnableAlignment and eVision.ESpotDetector.GuardBand.

◆ Spots

eVision.ESpotDetector.Spots = property(_Spots__getter, None)
static

Gets the spots detected by a previous call to eVision.ESpotDetector.Detect.