Back to Aurora Vision Library website

You are here: Start » Function Reference » Computer Vision » Template Matching » LocateMultipleObjects_Edges_Deprecated

LocateMultipleObjects_Edges_Deprecated


Header: AVL.h
Namespace: avl
Module: MatchingPro

Finds all occurrences of a predefined template on an image by comparing object edges.

Applications: Detection of multiple objects whose outlines are sharp and rigid. Often one of the first filters in a program.

Syntax

void avl::LocateMultipleObjects_Edges_Deprecated
(
	const avl::Image& inImage,
	atl::Optional<const avl::Region&> inSearchRegion,
	const avl::EdgeModel& inEdgeModel,
	int inMinPyramidLevel,
	atl::Optional<int> inMaxPyramidLevel,
	float inEdgeThreshold,
	avl::EdgePolarityMode::Type inEdgePolarityMode,
	avl::EdgeNoiseLevel::Type inEdgeNoiseLevel,
	bool inIgnoreBoundaryObjects,
	float inMinScore,
	float inMinDistance,
	atl::Array<avl::Object2D>& outObjects,
	atl::Optional<atl::Array<atl::Array<avl::Path>>&> outObjectEdges = atl::NIL,
	atl::Optional<int&> outPyramidHeight = atl::NIL,
	atl::Array<avl::Image>& diagEdgePyramid,
	atl::Array<avl::Image>& diagMatchPyramid,
	atl::Array<atl::Array<float> >& diagScores
)

Parameters

Name Type Range Default Description
Input value inImage const Image& Image on which object occurrences will be searched
Input value inSearchRegion Optional<const Region&> NIL Region of possible object centers
Input value inEdgeModel const EdgeModel& Model of objects to be searched
Input value inMinPyramidLevel int 0 - 12 0 Defines the lowest pyramid level at which object position is still refined
Input value inMaxPyramidLevel Optional<int> 0 - 12 3 Defines the total number of reduced resolution levels that can be used to speed up computations
Input value inEdgeThreshold float 0.01 - 10.0f Minimum strength of edges used for matching with the model
Input value inEdgePolarityMode EdgePolarityMode::Type MatchStrictly Defines how edges with reversed polarity will contribute to the object score
Input value inEdgeNoiseLevel EdgeNoiseLevel::Type High Defines how much noise the objects edges have
Input value inIgnoreBoundaryObjects bool False Flag indicating whether objects crossing image boundary should be ignored or not
Input value inMinScore float 0.0 - 1.0 0.7f Minimum score of object candidates accepted at each pyramid level
Input value inMinDistance float 0.0 - 10.0f Minimum distance between two found objects
Output value outObjects Array<Object2D>& Found objects
Output value outObjectEdges Optional<Array<Array<Path>>&> NIL Model edges of the found objects
Output value outPyramidHeight Optional<int&> NIL Highest pyramid level used to speed up computations
Diagnostic input diagEdgePyramid Array<Image>& Image edges used for matching at each pyramid level
Diagnostic input diagMatchPyramid Array<Image>& Candidate object locations found at each pyramid level
Diagnostic input diagScores Array<Array<float> >& Scores of the found objects at each pyramid level

Optional Outputs

The computation of following outputs can be switched off by passing value atl::NIL to these parameters: outObjectEdges, outPyramidHeight.

Read more about Optional Outputs.

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.