core

make_snake(double[, : :1] img, double[, : :1] egrad, double[, : :1] init_pts, int[: :1] delta, double band_penalty, double alpha, double lambda1, int use_band_energy)

Execute the adaptive snake (active contour) algorithm.

Parameters:
  • img (ndarray) – The input image as a 2D NumPy array of doubles.

  • egrad (ndarray) – The external (gradient) energy data as a 2D NumPy array.

  • init_pts (ndarray) – Initial anchor points for the snake (N x 2 array).

  • delta (ndarray) – Search region values for each snaxel (1D array of ints).

  • band_penalty (float) – Penalty value for band energy optimization.

  • alpha (float) – Elasticity parameter (beta is calculated as 1 - alpha).

  • lambda1 (float) – Weighting for energy components (lambda2 is 1 - lambda1).

  • use_band_energy (int) – Integer (0 or 1) to toggle band energy optimization.

Returns:

(snake_pts, snake_energy, internal_energy, external_energy)

Return type:

tuple