code: def _gaussian(
      size=3,
      sigma=0.25,
      amplitude=1,
      normalize=False,
      width=None,
      height=None,
      sigma_horz=None,
      sigma_vert=None,
      mean_horz=0.5,
      mean_vert=0.5,
  ):
      """Generate a guassian kernel.
  
      Args:
          size (int): The size of the kernel if the width or height are not specified
          sigma (float): Standard deviation of the kernel if sigma_horz or sigma_vert are not specified
          amplitude: The scale of the kernel
          normalize: If True, the kernel will be normalized such as values will sum to one
          width (int, optional): The width of the kernel
          height (int, optional): The height of the kernel
          sigma_horz (float, optional): Horizontal standard deviation of the kernel
          sigma_vert (float, optional): Vertical standard deviation of the kernel
          mean_horz (float): Horizontal mean of the kernel
          mean_vert (float): Vertical mean of the kernel
  
      Returns:
          np.array: The computed gaussian kernel
      """
      # handle some defaults
      if width is None:
          width = size
      if height is None:
          height = size
      if sigma_horz is None:
          sigma_horz = sigma
      if sigma_vert is None:
          sigma_vert = sigma
      center_x = mean_horz * width + 0.5
      center_y = mean_vert * height + 0.5
      gauss = np.empty((height, width), dtype=np.float32)
      # generate kernel
      for i in range(height):
          for j in range(width):
              gauss[i][j] = amplitude * math.exp(
                  -(
                      math.pow(
                          (j + 1 - center_x) / (sigma_horz * width), 2
                      )
                      / 2.0
                      + math.pow(
                          (i + 1 - center_y) / (sigma_vert * height), 2
                      )
                      / 2.0
                  )
              )
      if normalize:
          gauss = gauss / np.sum(gauss)
  
      return gauss
  
imports: import numpy
  import math
  import cv2
label_desc: Use image node_id 1 for calling a global function with example usage: _gaussian(size, sigma, amplitude, normalize, width, height, sigma_horz, sigma_vert, mean_horz, mean_vert) and returns: gauss