Back to FabImage Library website
You are here: Start » Function Reference » Computer Vision » Template Matching » CreateEdgeModel2

CreateEdgeModel2
Header: | FIL.h |
---|---|
Namespace: | fil |
Module: | MatchingPro |
Creates a model for edge-based template matching.
Applications: Dynamic creation of models in the runtime environment (normally they are created interactively in Studio).
Syntax
C++
C#
void fil::CreateEdgeModel2 ( const fil::Image& inImage, ftl::Optional<const fil::Region&> inTemplateRegion, ftl::Optional<const fil::Rectangle2D&> inReferenceFrame, int inMinPyramidLevel, ftl::Optional<int> inMaxPyramidLevel, float inSmoothingStdDev, float inEdgeThreshold, float inEdgeHysteresis, float inMinAngle, float inMaxAngle, float inAnglePrecision, float inMinScale, float inMaxScale, float inScalePrecision, float inEdgeCompleteness, ftl::Conditional<fil::EdgeModel2>& outEdgeModel, ftl::Optional<ftl::Conditional<fil::Point2D>&> outEdgeModelPoint = ftl::NIL, ftl::Optional<ftl::Conditional<ftl::Array<fil::Path>>&> outEdges = ftl::NIL, ftl::Conditional<ftl::Array<fil::Image> >& diagEdgePyramid )
Parameters
Name | Type | Range | Default | Description | |
---|---|---|---|---|---|
![]() |
inImage | const Image& | Image from which model will be extracted | ||
![]() |
inTemplateRegion | Optional<const Region&> | NIL | Region of the image from which model will be extracted | |
![]() |
inReferenceFrame | Optional<const Rectangle2D&> | NIL | Exact position of the model object in the image | |
![]() |
inMinPyramidLevel | int | 0 - 12 | 1 | Defines the number of reduced resolution levels dynamically created during model creation |
![]() |
inMaxPyramidLevel | Optional<int> | 0 - 12 | NIL | Defines the number of reduced resolution levels used to speed up computations |
![]() |
inSmoothingStdDev | float | 0.0 - ![]() |
0.0f | Standard deviation of the gaussian smoothing applied before edge extraction |
![]() |
inEdgeThreshold | float | 0.0 - ![]() |
35.0f | Higher threshold for edge magnitude |
![]() |
inEdgeHysteresis | float | 0.0 - ![]() |
15.0f | Threshold hysteresis value for edge magnitude |
![]() |
inMinAngle | float | -180.0f | Start of range of possible rotations | |
![]() |
inMaxAngle | float | 180.0f | End of range of possible rotations | |
![]() |
inAnglePrecision | float | 0.001 - 10.0 | 1.0f | Defines angular resolution of the matching process |
![]() |
inMinScale | float | 0.0 - ![]() |
1.0f | Start of range of possible scales |
![]() |
inMaxScale | float | 0.0 - ![]() |
1.0f | End of range of possible scales |
![]() |
inScalePrecision | float | 0.001 - 10.0 | 1.0f | Defines scale resolution of the matching process |
![]() |
inEdgeCompleteness | float | 0.01 - 1.0 | 1.0f | Determines what fraction of the edges will be present in the created model |
![]() |
outEdgeModel | Conditional<EdgeModel2>& | Created model that can be used by LocateMultipleObjects_Edges | ||
![]() |
outEdgeModelPoint | Optional<Conditional<Point2D>&> | NIL | The middle point of the created model | |
![]() |
outEdges | Optional<Conditional<Array<Path>>&> | NIL | Visualization of the model edges found at the original resolution | |
![]() |
diagEdgePyramid | Conditional<Array<Image> >& | Visualization of the edges found at different resolution levels |
Optional Outputs
The computation of following outputs can be switched off by passing value ftl::NIL
to these parameters: outEdgeModelPoint, outEdges.
Read more about Optional Outputs.
Hardware Acceleration
This operation supports automatic parallelization for multicore and multiprocessor systems.