protected void performThresholding(float threshLow, float threshHigh, ImageUInt8 output) { if (hysteresisPts != null) { hysteresisPts.process(suppressed, direction, threshLow, threshHigh); // if there is an output image write the contour to it if (output != null) { ImageMiscOps.fill(output, 0); for (EdgeContour e : hysteresisPts.getContours()) { for (EdgeSegment s : e.segments) for (Point2D_I32 p : s.points) output.unsafe_set(p.x, p.y, 1); } } } else { hysteresisMark.process(suppressed, direction, threshLow, threshHigh, output); } }
public List<EdgeContour> getContours() { return hysteresisPts.getContours(); }