Back to FabImage Deep Learning website

You are here: Start » Computer Vision » Deep Learning » DL_ClassifyObject

DL_ClassifyObject


Header: FILDL.h
Namespace: fil
Module: DL_CO

Executes a Classify Object model on a single input image.

Syntax

C++
C#
 
void fil::DL_ClassifyObject
(
	const fil::Image& inImage,
	ftl::Optional<const fil::Rectangle2D&> inRoi,
	ftl::Optional<const fil::CoordinateSystem2D&> inRoiAlignment,
	const fil::ClassifyObjectModelId& inModelId,
	const bool inCreateHeatmap,
	ftl::Array<fil::ClassConfidence>& outConfidences,
	ftl::String& outClassName,
	int& outClassIndex,
	float& outScore,
	fil::Heatmap& outRelevanceHeatmap,
	ftl::Optional<fil::Rectangle2D&> outAlignedRoi = ftl::NIL
)

Parameters

Name Type Default Description
Input value inImage const Image& Input image
Input value inRoi Optional<const Rectangle2D&> NIL Limits the area where a classified object is located
Input value inRoiAlignment Optional<const CoordinateSystem2D&> NIL
Input value inModelId const ClassifyObjectModelId& Identifier of a Classify Object model
Input value inCreateHeatmap const bool False Enables creating a relevance heatmap at the expense of extended execution time
Output value outConfidences Array<ClassConfidence>& Returns confidences for all classes
Output value outClassName String& Returns the name of the class with the highest confidence
Output value outClassIndex int& Returns the index of the class with the highest confidence
Output value outScore float& Returns the value of the highest confidence
Output value outRelevanceHeatmap Heatmap& Returns the heatmap indicating how strong specific parts of image influenced the classification result
Output value outAlignedRoi Optional<Rectangle2D&> NIL Input roi after the transformation

Requirements

For input inImage only pixel formats are supported: 1⨯uint8, 3⨯uint8.

Read more about pixel formats in Image documentation.

Optional Outputs

The computation of following outputs can be switched off by passing value ftl::NIL to these parameters: outAlignedRoi.

Read more about Optional Outputs.

Hints

  • It is recommended that the deep learning model is deployed with DL_ClassifyObject_Deploy first and connected through the inModelId input.
  • If one decides not to use DL_ClassifyObject_Deploy, then the model will be loaded in the first iteration. It will take up to several seconds.

Remarks

This filter should not be executed along with running Deep Learning Service as it may result in degraded performance or even out-of-memory errors.

Errors

List of possible exceptions:

Error type Description
DomainError Empty image in DL_ClassifyObject.
DomainError Empty inRoi in { {$Name$$} }.
DomainError Not supported inImage pixel format in DL_ClassifyObject. Supported formats: 1xUInt8, 3xUInt8.

See Also

  • Models for Deep Learning may be created using FabImage Deep Learning Editor or using Training Api (C++ based API Training is available in 5.3 and older versions only).

    For more information, see Machine Vision Guide.