Back to FabImage Library website
You are here: Start » Function Reference » Computer Vision » Template Matching » LocateMultipleObjects_Edges_Deprecated
LocateMultipleObjects_Edges_Deprecated
Header: | FIL.h |
---|---|
Namespace: | fil |
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 fil::LocateMultipleObjects_Edges_Deprecated ( const fil::Image& inImage, ftl::Optional<const fil::Region&> inSearchRegion, const fil::EdgeModel& inEdgeModel, int inMinPyramidLevel, ftl::Optional<int> inMaxPyramidLevel, float inEdgeThreshold, fil::EdgePolarityMode::Type inEdgePolarityMode, fil::EdgeNoiseLevel::Type inEdgeNoiseLevel, bool inIgnoreBoundaryObjects, float inMinScore, float inMinDistance, ftl::Array<fil::Object2D>& outObjects, ftl::Optional<ftl::Array<ftl::Array<fil::Path>>&> outObjectEdges = ftl::NIL, ftl::Optional<int&> outPyramidHeight = ftl::NIL, ftl::Array<fil::Image>& diagEdgePyramid, ftl::Array<fil::Image>& diagMatchPyramid, ftl::Array<ftl::Array<float> >& diagScores )
Parameters
Name | Type | Range | Default | Description | |
---|---|---|---|---|---|
inImage | const Image& | Image on which object occurrences will be searched | |||
inSearchRegion | Optional<const Region&> | NIL | Region of possible object centers | ||
inEdgeModel | const EdgeModel& | Model of objects to be searched | |||
inMinPyramidLevel | int | 0 - 12 | 0 | Defines the lowest pyramid level at which object position is still refined | |
inMaxPyramidLevel | Optional<int> | 0 - 12 | 3 | Defines the total number of reduced resolution levels that can be used to speed up computations | |
inEdgeThreshold | float | 0.01 - | 10.0f | Minimum strength of edges used for matching with the model | |
inEdgePolarityMode | EdgePolarityMode::Type | MatchStrictly | Defines how edges with reversed polarity will contribute to the object score | ||
inEdgeNoiseLevel | EdgeNoiseLevel::Type | High | Defines how much noise the objects edges have | ||
inIgnoreBoundaryObjects | bool | False | Flag indicating whether objects crossing image boundary should be ignored or not | ||
inMinScore | float | 0.0 - 1.0 | 0.7f | Minimum score of object candidates accepted at each pyramid level | |
inMinDistance | float | 0.0 - | 10.0f | Minimum distance between two found objects | |
outObjects | Array<Object2D>& | Found objects | |||
outObjectEdges | Optional<Array<Array<Path>>&> | NIL | Model edges of the found objects | ||
outPyramidHeight | Optional<int&> | NIL | Highest pyramid level used to speed up computations | ||
diagEdgePyramid | Array<Image>& | Image edges used for matching at each pyramid level | |||
diagMatchPyramid | Array<Image>& | Candidate object locations found at each pyramid level | |||
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 ftl::NIL
to these parameters: outObjectEdges, outPyramidHeight.
Read more about Optional Outputs.
Hardware Acceleration
This operation supports automatic parallelization for multicore and multiprocessor systems.