code: def bbox_from_mask(mask):
      """Create bounding box from binary mask (fast version)
  
      Args:
          mask (numpy.ndarray): binary mask.
  
      Returns:
          tuple: A bounding box tuple `(x_min, y_min, x_max, y_max)`.
  
      """
      rows = np.any(mask, axis=1)
      if not rows.any():
          return -1, -1, -1, -1
      cols = np.any(mask, axis=0)
      y_min, y_max = np.where(rows)[0][[0, -1]]
      x_min, x_max = np.where(cols)[0][[0, -1]]
      return x_min, y_min, x_max + 1, y_max + 1
  
imports: from __future__ import division
  from typing import Optional, Sequence, Union
  from warnings import warn
  import cv2
  import numpy
  import skimage
  from albumentations import random_utils
  from albumentations.augmentations.utils import MAX_VALUES_BY_DTYPE, _maybe_process_in_chunks, clip, clipped, ensure_contiguous, is_grayscale_image, is_rgb_image, non_rgb_warning, preserve_channel_dim, preserve_shape
label_desc: Use image node_id 46 for calling a global function with example usage: bbox_from_mask(mask) and returns: x_min,  y_min,  unknown,  unknown, unknown,  unknown,  unknown,  unknown