Source code for giant.image_processing.edge_detection
from enum import Enum, auto
import giant.image_processing.edge_detection.edge_detector_base as edge_detector_base
import giant.image_processing.edge_detection.pixel_edge_detector as pixel_edge_detector
import giant.image_processing.edge_detection.pae_subpixel_edge_detector as pae_subpixel_edge_detector
import giant.image_processing.edge_detection.zernike_ramp_edge_detector as zernike_ramp_edge_detector
from giant.image_processing.edge_detection.edge_detector_base import EdgeDetector
from giant.image_processing.edge_detection.pixel_edge_detector import PixelEdgeDetector
from giant.image_processing.edge_detection.pae_subpixel_edge_detector import PAESubpixelEdgeDetector, PAESubpixelEdgeDetectorOptions
from giant.image_processing.edge_detection.zernike_ramp_edge_detector import ZernikeRampEdgeDetector, ZernikeRampEdgeDetectorOptions
__all__ = ["PixelEdgeDetector",
"PAESubpixelEdgeDetector", "PAESubpixelEdgeDetectorOptions",
"ZernikeRampEdgeDetector", "ZernikeRampEdgeDetectorOptions"]
[docs]
class EdgeDetectionMethods(Enum):
"""
An enum specifying the available edge detection techniques
"""
PIXEL_EDGE_DETECTOR = auto()
"""
Detect edges to pixel level accuracy
"""
PAE_SUBPIXEL_EDGE_DETECTOR = auto()
"""
Detect edges to subpixel level accuracy using the Partial Area Effect method.
See https://www.researchgate.net/publication/233397974_Accurate_Subpixel_Edge_Location_based_on_Partial_Area_Effect for more details
"""
ZERNIKE_RAMP_EDGE_DETECTOR = auto()
"""
Detect edges to subpixel level accuracy using the Zernike Ramp method.
See https://arc.aiaa.org/doi/full/10.2514/1.A33692?mobileUi=0 for more details
"""
CUSTOM_DETECTOR = auto()
"""
Detect edges with a custom, user implemented detector.
See the :class:`.EdgeDetector` abstract base class for the required interface.
"""