code: def median(image, size=5, voxelspacing=None, mask=slice(None)):
      """
      Computes the multi-dimensional median filter and returns the resulting values per
      voxel.
  
      Optionally a binary mask can be supplied to select the voxels for which the feature
      should be extracted.
  
      Parameters
      ----------
      image : array_like or list/tuple of array_like
          A single image or a list/tuple of images (for multi-spectral case).
      size : number or sequence of numbers
          Size of the structuring element. Can be given given for each axis as a sequence,
          or as a single number, in which case it is equal for all axes. Note that the
          voxel spacing of the image is taken into account, the given values are treated
          as mm.
      voxelspacing : sequence of floats
          The side-length of each voxel.
      mask : array_like
          A binary mask for the image.
  
      Returns
      -------
      median : ndarray
          Multi-dimesnional median filtered version of the input images.
  
      """
      return _extract_feature(
          _extract_median,
          image,
          mask,
          size=size,
          voxelspacing=voxelspacing,
      )
  
imports: import numpy
  from scipy.ndimage import gaussian_filter, median_filter
  from scipy.ndimage import gaussian_gradient_magnitude
  from scipy.interpolate.interpolate import interp1d
  from scipy.ndimage import distance_transform_edt
  from scipy.ndimage._ni_support import _get_output
  from .utilities import join
  from ..core import ArgumentError
  from ..filter import sum_filter
label_desc: Use image node_id 9 for calling a global function with example usage: median(image, size, voxelspacing, mask) and returns: _extract_feature