Skip to main content
`Ctrl`+`K`
scipy.ndimage.

# watershed_ift

scipy.ndimage.watershed_ift(input, markers, structure=None, output=None)

  Apply watershed from markers using image foresting transform algorithm.

  Parameters:
    input array_like

      Input.

    markers array_like

      Markers are points within each watershed that form the beginning of the process. Negative markers are considered background markers which are processed after the other markers.

    structure structure element, optional

      A structuring element defining the connectivity of the object can be provided. If None, an element is generated with a squared connectivity equal to one.

    output ndarray, optional

      An output array can optionally be provided. The same shape as input.

  Returns:
    watershed_ift ndarray

      Output. Same shape as input.

  Notes

  Array API Standard Support

  `watershed_ift` has experimental support for Python Array API Standard compatible backends in addition to NumPy. Please consider testing these features by setting an environment variable `SCIPY_ARRAY_API=1` and providing CuPy, PyTorch, JAX, or Dask arrays as array arguments. The following combinations of backend and device (or other capability) are supported.

  Library | CPU | GPU
  --- | --- | ---
  NumPy | ✅ | n/a
  CuPy | n/a | ✅
  PyTorch | ✅ | ⛔
  JAX | ⚠️ no JIT | ⛔
  Dask | ⚠️ computes graph | n/a

  See Support for the array API standard for more information.

  References

  [1]

  A.X. Falcao, J. Stolfi and R. de Alencar Lotufo, “The image foresting transform: theory, algorithms, and applications”, Pattern Analysis and Machine Intelligence, vol. 26, pp. 19-29, 2004.