zero_crossingzero_crossingZeroCrossingZeroCrossingzero_crossing (Operator)

Name

zero_crossingzero_crossingZeroCrossingZeroCrossingzero_crossing — Extract zero crossings from an image.

Signature

zero_crossing(Image : RegionCrossing : : )

Herror zero_crossing(const Hobject Image, Hobject* RegionCrossing)

Herror T_zero_crossing(const Hobject Image, Hobject* RegionCrossing)

void ZeroCrossing(const HObject& Image, HObject* RegionCrossing)

HRegion HImage::ZeroCrossing() const

static void HOperatorSet.ZeroCrossing(HObject image, out HObject regionCrossing)

HRegion HImage.ZeroCrossing()

def zero_crossing(image: HObject) -> HObject

Description

zero_crossingzero_crossingZeroCrossingZeroCrossingZeroCrossingzero_crossing returns the zero crossings of the input image as a region. A pixel is accepted as a zero crossing if its gray value (in ImageImageImageImageimageimage) is zero, or if at least one of its neighbors of the 4-neighborhood has a different sign.

This operator is intended to be used after edge operators returning the second derivative of the image (e.g., laplace_of_gausslaplace_of_gaussLaplaceOfGaussLaplaceOfGaussLaplaceOfGausslaplace_of_gauss), which were possibly followed by a smoothing operator. In this case, the zero crossings are (candidates for) edges.

Execution Information

Parameters

ImageImageImageImageimageimage (input_object)  singlechannelimage(-array) objectHImageHObjectHImageHobject (int1 / int2 / int4 / real)

Input image.

RegionCrossingRegionCrossingRegionCrossingRegionCrossingregionCrossingregion_crossing (output_object)  region(-array) objectHRegionHObjectHRegionHobject *

Zero crossings.

Result

zero_crossingzero_crossingZeroCrossingZeroCrossingZeroCrossingzero_crossing usually returns the value 2 (H_MSG_TRUE). If necessary, an exception is raised.

Possible Predecessors

laplacelaplaceLaplaceLaplaceLaplacelaplace, laplace_of_gausslaplace_of_gaussLaplaceOfGaussLaplaceOfGaussLaplaceOfGausslaplace_of_gauss, derivate_gaussderivate_gaussDerivateGaussDerivateGaussDerivateGaussderivate_gauss

Possible Successors

connectionconnectionConnectionConnectionConnectionconnection, skeletonskeletonSkeletonSkeletonSkeletonskeleton, boundaryboundaryBoundaryBoundaryBoundaryboundary, select_shapeselect_shapeSelectShapeSelectShapeSelectShapeselect_shape, fill_upfill_upFillUpFillUpFillUpfill_up

Alternatives

thresholdthresholdThresholdThresholdThresholdthreshold, dual_thresholddual_thresholdDualThresholdDualThresholdDualThresholddual_threshold, zero_crossing_sub_pixzero_crossing_sub_pixZeroCrossingSubPixZeroCrossingSubPixZeroCrossingSubPixzero_crossing_sub_pix

Module

Foundation