DetectEdges
Extracts a binary image of pixel-precise continuous edges.
Applications:Consistent detection of pixels that belong to contours of variable or unpredictable shape, e.g. screw thread outline or a custom piece of textile.
Syntax
C++
Python
def DetectEdges( inImage: Image, outEdgesImage: Image, /, *, inRoi: Region | None = None, inEdgeFilter: EdgeFilter = EdgeFilter.Canny, inStdDevX: float = 2.0, inStdDevY: float | None = None, inEdgeThreshold: float = 15.0, inEdgeHysteresis: float = 5.0, inMaxJoiningDistance: float = 0.0, inMinBlobArea: int = 1, diagGradientMagnitudeImage: Image | None = None ) -> None
Parameters
| Name | Type | Range | Default | Description | |
|---|---|---|---|---|---|
![]() |
inImage | Image | Image from which edges will be extracted | ||
![]() |
inRoi | Region | None | None | Region of the image from which edges will be extracted | |
![]() |
inEdgeFilter | EdgeFilter | EdgeFilter.Canny | Type of edge filter used for computing gradients | |
![]() |
inStdDevX | float | 0.0 - ![]() |
2.0 | Amount of horizontal smoothing used by the edge filter |
![]() |
inStdDevY | float | None | 0.0 - ![]() |
None | Amount of vertical smoothing used by the edge filter (Auto = inStdDevX) |
![]() |
inEdgeThreshold | float | 0.0 - ![]() |
15.0 | Sufficient edge strength; edges of that strength will always be detected |
![]() |
inEdgeHysteresis | float | 0.0 - ![]() |
5.0 | Value by which the edge threshold is decreased for edge points neighboring with sufficiently strong edges |
![]() |
inMaxJoiningDistance | float | 0.0 - ![]() |
0.0 | Maximal distance between edges that can be joined |
![]() |
inMinBlobArea | int | 0 - ![]() |
1 | Minimal area of an edge blob |
![]() |
outEdgesImage | Image | Image of found edges | ||
![]() |
diagGradientMagnitudeImage | Image | None | None | Visualization of the gradient magnitude |
Hardware Acceleration
This operation supports automatic parallelization for multicore and multiprocessor systems.




